基于VxWorks的飛機配電自動(dòng)化主執行軟件研究
先進(jìn)飛機正朝著(zhù)多電、全電方向發(fā)展,供電系統成為了未來(lái)飛機發(fā)展的關(guān)鍵。按照功能飛機供電系統分為電源系統和配電系統兩大部分。先進(jìn)配電系統由電源系統處理機(PSP)、電氣負載管理中心(ELMC)、固態(tài)功率控制器(SSPC)和遠程終端(RT)組成,實(shí)現飛機配電的智能化,其中電源系統處理機是配電系統的核心。
目前我國飛機電源系統仍采用的是集中配電方式。隨著(zhù)航空技術(shù)的迅速發(fā)展,飛機性能有了大幅度提高,用電設備迅速增加,電源功率不斷提高,這種配電方式已經(jīng)不適應,而且嚴重影響了飛機整體性能的提高。
國外一些技術(shù)發(fā)達的國家,如美國、英國、法國等在航空航天領(lǐng)域已普遍使用了分布式配電和負載自動(dòng)管理技術(shù)。美國最近裝備部隊的F-22先進(jìn)飛機就采用了可編程的固態(tài)開(kāi)關(guān)、1553B總線(xiàn)、微處理機和負載自動(dòng)管理技術(shù)。美國在P7-A反潛機上也使用了先進(jìn)配電系統,系統控制功能達到了故障—工作、故障—容錯、故障—保險的容錯等級。我國對該課題的研究起步較晚,但是近來(lái)發(fā)展迅速,1553B數據總線(xiàn)、發(fā)電機控制器、固態(tài)功率控制器和電氣負載管理中心的研究,以及某型飛機的NAMP系統,都是富有成果性的。不過(guò),與世界上技術(shù)先進(jìn)國家相比尚有一定差距,還有很多工作要做。先進(jìn)飛機配電系統可以實(shí)現不中斷供電和容錯供電,提高供電系統的可靠性、維護性、靈活性,對于提高飛機的整體性能有重要的作用,已是第四代戰斗機的必備技術(shù)。 配電系統控制分析
配電系統采用集散控制方式,由具有智能性的PSP、ELMC、RT和GCU(發(fā)電機控制器)來(lái)實(shí)現控制。其中,ELMC監視和控制SSPC,RT監視和控制EMPC(機電式功率控制器)、外部電源、蓄電池以及TRU(變壓整流器)。GCU為發(fā)電機、主交流匯流條提供控制和保護。GCU在功能上是獨立的,并不受PSP控制。PSP完成頂層級的系統控制任務(wù),實(shí)現對配電系統集中管理。各智能終端與PSP通過(guò)MIL-STD-1553B數據總線(xiàn)進(jìn)行通信。
由于受MIL-STD-1553B總線(xiàn)1MBPS位速率的限制,不能采用單一的綜合結構,所以航空電子系統與配電系統控制采用了分層結構。航空電子系統提供配電系統控制所必需的飛行和任務(wù)數據,它采用自己?jiǎn)为毜臄祿偩€(xiàn)。由電源系統處理機 (PSP)擔負航空電子系統和配電系統控制之間的信息傳遞任務(wù)。
根據對飛機配電系統的分析,電源系統處理機軟件可分為下述模塊:
a. 系統控制指令處理模塊
b. 供電系統布局狀態(tài)處理模塊
c. MIL-STD-1553B 數據總線(xiàn)控制模塊
d. 供電系統初始化模塊
e. 電氣系統監控模塊
f. 處理機請求排序模塊
g. 處理機請求處理模塊
由于采用了VxWorks作為操作系統,必須將上述模塊劃分為具體的任務(wù),提交給操作系統,由操作系統來(lái)調度、管理。任務(wù)調度一般采用RM和EDF方式,遵循的原則是:首先,要避免死鎖。引起死鎖的原因主要是資源的競爭,所以要保證資源的合理使用。其次,必須為每個(gè)任務(wù)合理分配CPU使用時(shí)間,對于那些I/O操作多的任務(wù)優(yōu)先級要低一些,運算多的任務(wù)優(yōu)先級要高一些。為保證CPU的充分利用,大量運算歸為一個(gè)任務(wù);功能耦合歸為一個(gè)任務(wù);對于周期時(shí)間,針對不同的頻率處理不同任務(wù)。如果我們在具體分析一個(gè)系統的時(shí)候發(fā)生原則沖突,則要針對具體的系統為每一個(gè)原則設定“權重”,必要的時(shí)候可以通過(guò)計算“權重”來(lái)最終確定如何去劃分任務(wù)。為了系統的穩定和可擴展性,CPU不能全載工作,達到60~70%就可以了。 VxWorks介紹
VxWorks 是Wind River 公司開(kāi)發(fā)的嵌入式實(shí)時(shí)操作系統軟件,為程序員提供了高效的實(shí)時(shí)任務(wù)調度和中斷管理,實(shí)時(shí)的系統資源以及實(shí)時(shí)的任務(wù)間通信。其核心功能主要有微內核,任務(wù)間通信機制,網(wǎng)絡(luò )支持,文件系統和I/O管理,POSIX標準實(shí)時(shí)擴展,以及C++等其它標準支持。目前,VxWorks操作系統已經(jīng)廣泛應用于通信、國防、工業(yè)控制、醫療設備等嵌入式實(shí)時(shí)應用領(lǐng)域。 綜合設計軟件系統有嚴格的層次結構,如圖2所示。
主執行軟件結構圖 這樣做的目的在于明確各個(gè)層面的功能,便于軟件的工程化開(kāi)發(fā)。 硬件構架:包括了處理機和總線(xiàn)接口部件。軟件層對它的要求是適合于嵌入式開(kāi)發(fā)。
BSP:這一層是連接硬件與VxWorks的,其功能是對上層屏蔽硬件操作,實(shí)現系統的配置,驅動(dòng)的集成,硬件的初始化等等,其部分功能類(lèi)似于PC機的BIOS。
VxWorks:這是操作系統層。VxWorks是一款出色的嵌入式實(shí)時(shí)操作系統,該操作系統采用搶占式優(yōu)先級調度,并且根據應用可以配置和裁減以提高系統的效率、可靠性和實(shí)時(shí)性。其功能是對應用軟件提供接口界面,進(jìn)行實(shí)時(shí)任務(wù)調度,系統資源管理等。通過(guò)在Tornado開(kāi)發(fā)環(huán)境下創(chuàng )建Bootable Project 來(lái)定制所需要的VxWorks image。用戶(hù)一般要根據實(shí)際情況,適當地進(jìn)行添加或裁減。
應用軟件:這是用戶(hù)層,關(guān)鍵在于根據飛機的負載特性和優(yōu)先級分布來(lái)合理地劃分任務(wù)。建立有限狀態(tài)機和Petri網(wǎng)都能有效地幫助建立合理的應用程序模型,正確地使用相關(guān)輔助工具可以簡(jiǎn)化建模過(guò)程。
根據開(kāi)發(fā)的需要,應用軟件分為內核軟件和外圍集成軟件兩大塊。其中內核軟件實(shí)現PSP主執行軟件的基本功能,外圍集成軟件實(shí)現參數輸入、顯示等調試過(guò)程的人機界面,所有的外圍模塊通過(guò)內核軟件的指定接口模塊與內核通信。
鑒于數據被各個(gè)任務(wù)頻繁使用,所以建立一個(gè)嵌入式實(shí)時(shí)數據庫來(lái)管理數據是安全而高效的。關(guān)于嵌入式實(shí)時(shí)數據庫的建立,請參閱相關(guān)書(shū)籍。這里只是簡(jiǎn)單的采用內存數據庫來(lái)實(shí)現,目的是消除一般數據庫中I/O操作的時(shí)間不確定性。首先,要為相關(guān)的數據類(lèi)型建立相應的結構體。在該系統中需要為模擬量、狀態(tài)量、數字量、控制量建立數據結構。以數據中的模擬量為例,可定義如下: typedef struct AnalogEntity
{
int ID;
char Name[NAME_LEN];
char U[UNIT_LEN];
int PValue; /*前一周期值*/
float Value; /*模擬量值*/
int State;
int Node;
int Aisle; /* 通道 */
ATIME Time; /* 報警時(shí)間 */
float Uplimit; / * 報警上限 */
float Lowerlimit; /* 報警下限 */
float IncValue; /* 過(guò)載值*/
int ALevel; /* 報警等級 */
int Ratio; / * 比例系數 */
/* 向后兼容 */
float Res;
char Reserve[10];
} ANALOG;
其次,將所有的數據和方法封裝在一起,完成數據庫的定義而得到的數據庫,在這里把它稱(chēng)為數據布局文件。對于本數據庫最重要的是要保證讀寫(xiě)的時(shí)間限制,如果規定時(shí)間內未能完成讀寫(xiě)操作,必須要終止操作,并且回滾到未操作狀態(tài)。
內核軟件的大致任務(wù)為:1553B通信處理任務(wù),電源系統監測任務(wù),與備份PSP通信任務(wù),控制臺處理任務(wù),電源請求與執行任務(wù),外圍模塊通信處理任務(wù),系統自監測任務(wù)等。外圍軟件主要是航空電子模擬任務(wù)、模擬控制臺任務(wù)、綜合顯示任務(wù)。
內核軟件:處理電源請求和執行任務(wù),主要是解飛機負載邏輯方程,從而得出當前的最佳控制方案,將結果通過(guò)1553B總線(xiàn)送給ELMC、RT等控制機構。系統自監測任務(wù)主要是監視當前軟件系統工作情況,防止外界原因使得內部數據不穩定,導致錯誤控制的發(fā)生。外圍軟件主要是模擬PSP的工作環(huán)境和簡(jiǎn)單的人機接口,并不是PSP功能的組成部分。采用外圍模塊通信處理任務(wù)來(lái)管理外圍的任務(wù),可以方便地擴展外圍開(kāi)發(fā)中的模塊,而不影響內核功能,便于軟件的裁減。備份PSP通信任務(wù)通過(guò)RS422與備份PSP通信,達到雙機熱備份。電源系統監測任務(wù)主要是查看電源系統的工作狀態(tài),定期地修改數據布局文件中的狀態(tài)量,得到當前的系統工作情況,對于歷史數據布局文件可以寫(xiě)入歷史數據庫,以備查詢(xún)。另外,任務(wù)之間如果需要同步,可以采用信號量來(lái)實(shí)現。 結語(yǔ)
本文簡(jiǎn)單講述了基于VxWorks的飛機電源系統軟件設計過(guò)程,在實(shí)際應用中還有許多問(wèn)題需要解決。比如考慮到程序用途的特殊性,必須保證程序的正確運行,所以程序的健壯性是研究的另一個(gè)重點(diǎn)。比如,采用程序固化運行、冗余容錯技術(shù)、程序互檢驗等技術(shù)都是為了保證程序準確無(wú)誤地運行。另外,飛機邏輯負載方程庫的建立和求解,以及相應日志文件系統的建立,都是必要的工作。 參考文獻:
1. Fault Tolerant Electrical Power System 裀hase I:Study. AFWAL-TR-86-2084,Boeing Military Airplane Company,May 1986.
2. Fault Tolerant Electrical Power System 裀hase II:Analysis andPreliminaryDesign.AFWAL-TR-86-2084,Boeing Military Airplane Company,May 1986.
3. VxWorks-Programmer’s Guide 5.4,1999 Wind River Systems,INC.
4. VxWorks-User’s Guide 5.4,1999 Wind River Systems,INC.
評論