上傳時間:2012年3月7日 作者:張蓓蕾 夏偉杰 周建江 關鍵詞:嵌入式、PXI

舵機控制是虛擬飛行實驗中的關鍵技術,為滿足測試的實時性要求,文中設計了一套基于Windows RTX環(huán)境下的舵機控制系統(tǒng),通過采集天平、陀螺儀、舵機、光電編碼器信號,分析飛機各主要部件的氣動特性。該控制系統(tǒng)的主要功能包括:舵機控制軟件可以自動完成對舵機的上電及解鎖操作;舵機響應可根據(jù)實際需要作出相應的模式選擇和參數(shù)設置;采集到的數(shù)據(jù)可做到實時界面顯示,用于現(xiàn)場實驗分析。

1 RTX實時模塊

在工業(yè)控制、航空航天等領域,對系統(tǒng)實時性有很高的要求。系統(tǒng)的事件響應如果不確定或超時,就可能會導致系統(tǒng)出錯,甚至崩潰,Windows系統(tǒng)很難滿足實時性的要求。RTX正是應這一要求,利用Windows平臺提供的豐富的設備驅動模型,通過定制硬件抽象層(HAL,Hardw are Abstraction Layer),對Windows系統(tǒng)進行了實時擴展。RTX使得系統(tǒng)具有較強的實時性,能在一個事先定義好的時間限制中對外部或內部的事件進行響應和處理RTX是一個嵌入Windows的獨立實時系統(tǒng),支持在Windows平臺下基于Visual Studio的實時應用程序開發(fā)。RTX給開發(fā)者提供了操作系統(tǒng)和實時性的最佳結合,既可以使用Windows的豐富資源和軟件開發(fā)調試工具,又可以在一個獨立的控制子系統(tǒng)上實現(xiàn)硬實時。RTX Release7.1支持絕大部分的Microsoft操作系統(tǒng),同時支持單處理器(Uniprocessor)、多處理器(Multi-processor)、移動處理器(Mobile Processor)、超線程(Hyper-threading-enabled),以及多核平臺(Multiple-core platform)。

文中基于RTX,在Windows平臺上實現(xiàn)了舵控仿真系統(tǒng)中高確定性和高速反應時間的應用部件和模塊與其它非實時應用部件的正常運行。
2 系統(tǒng)的硬件設計

該系統(tǒng)的構成如圖1所示。硬件系統(tǒng)包括上位機一工業(yè)控制計算、下位機-PXI機箱、位于PXI機箱中的PXI測試板卡、電源和顯示器構成,所有這些部件都組裝在一個雙聯(lián)測試機柜中。PXI測試板卡包括數(shù)字I/O板卡、A/D轉換卡、串口卡、RS422卡和PXI轉PCI套件。


3 軟件設計

為提高Windows下數(shù)據(jù)采集的實時性,又滿足舵機控制實時性的要求,舵機控制采用模塊化的設計,設計分為上下兩層,兩層之間需要共享內存進行數(shù)據(jù)通信。軟件組成的結構體系如圖2所示。


RTX程序開發(fā)平臺選擇VC6.0+Ardence RTX,RTX將開發(fā)環(huán)境直接嵌入到用戶熟悉的VC6.0中,用RTX提供的向導即可生成RTX環(huán)境下的設備驅動和應用程序,大大縮短了開發(fā)周期。RTX和Windows運行在一臺計算機上,也節(jié)省了系統(tǒng)的硬件成本,提高了系統(tǒng)可靠性。

  3.1 上層軟件  在啟動舵機控制程序之前,先要啟動RTX實時環(huán)境,因為底層驅動程序和上層舵機控制程序是同時運行的。軟件的具體操作流程如圖3所示。


  3.2 底層軟件  根據(jù)舵機控制軟件對數(shù)據(jù)采集的實時性要求,首先要對各采集板卡做在RTX下的驅動開發(fā),這是舵機控制系統(tǒng)解決實時性問題的重點和難點。編寫基于RTX的驅動程序,可以通過調用實時應用程序編程接口(RTAPI,Real-Time Applieation Programming Interface)函數(shù)來訪問實時子系統(tǒng)(RTSS,Real-Time Sub-System),并維持其系統(tǒng)的實時性。這樣處理的優(yōu)點是硬件可以通過RTX函數(shù)直接訪問,驅動開發(fā)也更加簡單。

1  2