吳遠盛 陳超 朱帥琦
摘要: 全權限數(shù)字電子控制系統(tǒng)(FADEC)是未來航空發(fā)動機數(shù)字控制系統(tǒng)發(fā)展的方向, 控制軟件是FADEC的核心, 基于模型設計(MBD)是FADEC控制軟件發(fā)展的趨勢。 本文在某型發(fā)動機控制軟件的開發(fā)過程中, 開展了基于MBD的軟件架構設計, 并在系統(tǒng)需求階段進行了模型的開發(fā)和驗證。 最后通過代碼自動生成機制, 將自動生成后的代碼加載到目標機中, 通過硬件在回路仿真驗證, 證明采用基于MBD的軟件開發(fā)能夠?qū)④浖毕莘忾]在開發(fā)過程的前期, 節(jié)約了控制軟件開發(fā)時間, 并在桌面回歸驗證上具有一定的優(yōu)勢。
關鍵詞: FADEC; 控制軟件; MBD; 軟件架構; 桌面驗證; 航空發(fā)動機
中圖分類號: TJ763; V433文獻標識碼: A文章編號: 1673-5048(2018)04-0073-05
0引言
隨著航空產(chǎn)業(yè)的迅速發(fā)展, 對飛行動力系統(tǒng)的要求越來越高。 作為飛機的心臟, 航空發(fā)動機安全有效的工作離不開先進的控制技術, 發(fā)動機性能的充分發(fā)揮主要依靠控制系統(tǒng)來實現(xiàn)和保證[1]。 近年來已日漸成熟的全權限數(shù)字電子控制系統(tǒng)(Full Authority Digital Electronic Control, FADEC)[2-3]具有體積小、 重量輕、 可靠性高、 控制精度高等優(yōu)勢, 其控制軟件易于編寫和修改, 可以實現(xiàn)復雜的控制規(guī)律和許多現(xiàn)代控制算法, 在航空發(fā)動機控制領域占據(jù)越來越重要的地位[4]。
傳統(tǒng)的FADEC嵌入式軟件開發(fā)是以代碼為中心的V模型開發(fā)流程, 以手工編碼為中心, 測試工作的重心出現(xiàn)在開發(fā)階段晚期(集成和系統(tǒng)測試階段), 早期的開發(fā)階段難以驗證和發(fā)現(xiàn)缺陷, 而驗證工作越往后, 需要的工作量越大、 難度越高, 導致軟件交付的周期長、 成本高[5]。
在基于模型的開發(fā)(ModelBased Design, MBD)[6-7]中, 設計人員根據(jù)系統(tǒng)需求建立模型, 并對模型進行仿真測試, 及早發(fā)現(xiàn)其中的缺陷并不斷進行修正和驗證迭代, 最后直接通過模型生成和移植可執(zhí)行的嵌入式代碼。 基于模型的開發(fā)在設計階段就能不斷暴露軟件缺陷并進行封閉, 而且省去了手工編碼和單元測試的工作, 開發(fā)人員將更多精力集中到軟件設計和控制算法優(yōu)化上。
本文在某型發(fā)動機控制軟件的開發(fā)過程中, 采用基于MBD的控制軟件設計, 提供了設計方案, 并在開發(fā)前期根據(jù)系統(tǒng)需求建立模型, 對模型進行仿真測試。 封閉缺陷后, 模型通過MATLAB工具中的Simulink/Code Generation自動生成代碼, 下載到目標機中, 完成整個控制軟件的開發(fā)過程。
1發(fā)動機簡化控制需求
本文描述的控制軟件實現(xiàn)了發(fā)動機控制的主要功能, 包括:
(1) 信號的采集, 包括模擬量、 頻率量、 開關量、 狀態(tài)量的采集;
(2) 故障檢測和處理, 包括極值故障、 斜率故障、 BIT故障、 回路故障和硬件故障檢測, 以及建立相應的故障對策;
(3) 信號標定轉(zhuǎn)換、 表決和濾波;
(4) 發(fā)動機控制功能, 包括主燃油控制、 加力燃油控制、 噴口控制、 導葉角控制、 防消喘控制、 防冰控制、 熱回油控制、 應急放油控制、 液壓泵卸載控制;
(5) 占空比輸出和開關量輸出控制;
(6) 通訊功能, 包括與地面保障設備通訊、 與飛機設備通訊、 控制器通道間通訊;
(7) 歷史數(shù)據(jù)統(tǒng)計和存儲。
2軟件架構設計[8-10]
軟件架構設計遵守如下原則:
(1) 分層原則: 設計的分層層數(shù)不超過4層;
(2) 模塊劃分原則: 采用結(jié)構化和模塊化的設計方法, 劃分關鍵模塊和重要模塊;
(3) 低耦合高內(nèi)聚原則: 模塊之間和程序單元之間的依賴關系應減小到最低程度;
(4) 接口控制原則: MBD與非MBD模塊接口定義需經(jīng)相關人員共同確定并形成基線文檔, 維護過程中出現(xiàn)接口變更時, 提交接口文檔更改申請后, 再更改相應的控制軟件。
根據(jù)軟件架構設計原則, 將本文描述的控制軟件劃分為4層: 硬件操作層OS、 通用層EClib、 手工代碼應用層AS和模型應用層MBD。 各層實現(xiàn)的主要功能如下:
(1) 硬件操作層OS主要實現(xiàn)控制軟件與數(shù)字電子控制器的數(shù)據(jù)交互, 包括從電子控制器中采集原始數(shù)據(jù)給AS層進行數(shù)據(jù)加工處理, 并將AS層邏輯處理后的輸出數(shù)據(jù)通過電子控制器輸出給外部執(zhí)行機構;
(2) 通用層EClib不參與控制, 只向OS和AS層提供通用庫函數(shù);
(3) 手工代碼應用層AS主要實現(xiàn)對OS提供的采集數(shù)據(jù)的加工和處理、 故障診斷并形成相應的故障對策、 發(fā)動機各種狀態(tài)的建立、 防消喘和開關量輸出控制、 歷史數(shù)據(jù)統(tǒng)計和存儲以及通訊功能;
(4) 模型應用層MBD實現(xiàn)發(fā)動機的主要功能, 包括主燃油計算、 加力燃油計算、 噴口控制、 導葉角控制、 占空比控制。
根據(jù)軟件架構設計原則, 本文描述的控制軟件架構設計方案如圖1所示, 每層中的各個子模塊按照功能劃分, 分別實現(xiàn)相應的功能。
3基于系統(tǒng)需求的模型仿真和測試
借助于Matlab/Simulink工具, 基于系統(tǒng)需求搭建完整的閉環(huán)數(shù)字仿真平臺, 見圖2。 各個模塊模擬的功能如下:
(1) PLANE模塊: 用來模擬飛機向發(fā)動機提供的指令信號, 包括油門桿角度、 飛行高度、 馬赫數(shù)等;
(2) EEC模塊: 用來模擬數(shù)字電子控制器的工作, 根據(jù)指令信號和反饋信號, 計算出控制量給定和控制輸出信號, 包括主燃油計算、 加力燃油計算、 風扇導葉角給定值計算、 壓氣機導葉角給定值計算、 噴口面積給定值計算以及各個回路的占空比計算;
(3) ACTUATOR模塊: 用于模擬伺服系統(tǒng)跟隨特性, 采用系統(tǒng)辨識的方法得到相應執(zhí)行機構的簡化模型;
(4) ENGINE模塊: 模擬發(fā)動機真實工作狀態(tài), 根據(jù)執(zhí)行機構模型輸出信號和指令信號, 按照發(fā)動機模型計算出發(fā)動機的輸出信號, 包括轉(zhuǎn)速、 溫度和壓力;
(5) SENSOR模塊: 模擬控制器傳感器采集環(huán)節(jié), 采集執(zhí)行結(jié)構和發(fā)動機輸出信號;
(6) PANEL_CONTRL和ECGM_DISPLAY模塊: 仿真結(jié)果的圖形化顯示。
根據(jù)圖2的閉環(huán)數(shù)字仿真平臺和系統(tǒng)需求, 在前期開展數(shù)字仿真與測試, 針對每條總體需求設計測試用例, 根據(jù)自動測試程序在閉環(huán)數(shù)字仿真平臺上獲得測試結(jié)果, 對其符合性進行測試和迭代, 直至模型的全部功能測試結(jié)果符合系統(tǒng)需求。
4代碼自動生成過程
基于模型的開發(fā)方法中一項核心的技術就是代碼自動生成技術, Simulink/Code Generation是MATLAB一個工具箱, 根據(jù)代碼生成規(guī)則以及代碼生成需求實現(xiàn)定制化和符合性的配置, 隨后選擇所需目標機語言編譯器, 將基于系統(tǒng)需求搭建相應完整的仿真模型自動生成代碼[11-12]。 代碼自動生成的機制和過程如圖3所示。
5硬件在回路驗證
桌面完成MBD功能的仿真測試和缺陷修復后, 通過自動生成工具將生成的代碼和手工代碼進行集成, 可下載到目標機中進行硬件在回路驗證。 硬件在回路仿真環(huán)境圖如圖4所示。
控制軟件分別加載在控制器的A/B通道內(nèi), A/B通道控制軟件通過CCDL總線通訊進行數(shù)據(jù)的交互, 地面檢測裝置、 信號調(diào)理箱和數(shù)字電子控制器通過數(shù)字信號進行數(shù)據(jù)的交互, 飛機通訊模擬軟件通過1394b總線通訊和數(shù)字電子控制器進行總線數(shù)據(jù)的交互。 地面檢測軟件通過獲取油門桿、 高度和馬赫數(shù)等輸入信號運行發(fā)動機模型, 計算出轉(zhuǎn)速、 溫度和壓力信號, 并通過RS-422總線通訊傳給控制器, 上位機軟件通過RS-422總線通訊實時顯示控制軟件的監(jiān)視數(shù)據(jù)和故障信息。
試驗過程: 在該發(fā)動機的飛行包線內(nèi), 控制油門桿識別使發(fā)動機運行在慢車狀態(tài)、 節(jié)流狀態(tài)、 中間狀態(tài)和加力狀態(tài), 其仿真結(jié)果如圖5所示。 可以看出, 整個過程中, 發(fā)動機轉(zhuǎn)子轉(zhuǎn)速、 導葉角和噴口控制變化平穩(wěn), 控制正常。
從整個仿真結(jié)果來看, 無論是動態(tài)過程還是穩(wěn)態(tài)過程, 發(fā)動機各個控制參數(shù)均沒有出現(xiàn)過突的毛刺和激變, 證明通過桌面級的仿真驗證, 確定好相關控制參數(shù)后, 通過自動生成代碼, 即可完成在目標機上的調(diào)試。 和原來在目標機上進行控制性能參數(shù)調(diào)試相比, 大大節(jié)約了調(diào)試時間, 并且可以通過建立實物的數(shù)學模型, 在桌面上進行不斷的性能優(yōu)化迭代。
6結(jié)束語
本文對基于MBD的某型發(fā)動機控制軟件的開發(fā)過程進行了研究, 通過架構設計準則和功能模塊的劃分, 設計了相應的軟件架構, 并在前期基于系統(tǒng)需求開展了建模和仿真驗證工作。 通過RTM自動生成代碼技術, 將生成后的代碼進行集成, 下載到目標機中, 即完成了整個軟件的開發(fā)過程。 驗證結(jié)果表明, 采用基于MBD的軟件開發(fā)模式, 能夠在前期通過桌面級仿真發(fā)現(xiàn)缺陷, 并在桌面上確定和性能相關的控制參數(shù), 避免在目標機中進行相關的調(diào)試工作, 大大節(jié)約了控制軟件開發(fā)時間。
隨著基于MBD的控制軟件開發(fā)應用的不斷深入, 對于模型設計的安全性要求、 模型設計的配置管理要求, 以及如何在桌面上建立更精確的發(fā)動機各個附件的模型, 還需要進一步研究。
參考文獻:
[1] 樊思齊, 李華聰, 樊丁, 等. 航空發(fā)動機控制(下冊)[M]. 西安: 西北工業(yè)大學出版社, 2008: 10-12.
Fan Siqi, Li Huacong, Fan Ding, et al. AeroEngine Control(Part 2)[M]. Xian: Northwestern Polytechnical University Press, 2008: 10-12.(in Chinese)
[2] 任士彬, 孟慶明. 中國發(fā)展航空發(fā)動機FADEC技術的途徑[J]. 航空發(fā)動機, 2010, 36(3): 54-56.
Ren Shibin, Meng Qingming. Development Approach of Aeroengine FADEC Technology in China[J]. Aeroengine, 2010, 36(3): 54-56.(in Chinese)
[3] Skira C A, Dehoff R L, Hall W E, Jr. Design Evaluation and Test of an Electronic, Multivariable Control for the F100 Turbofan Engine[C]∥AGARD Conference Proceedings No.274, Advanced Control Systems for Aircraft Powerplants, Cologne, Germany, 1979.
[4] 石斌. 航空發(fā)動機高可靠性FADEC軟件系統(tǒng)技術研究[D]. 西安: 西北工業(yè)大學, 2004: 15-16.
Shi Bin. Research on High Reliability FADEC Software System of Aeroengine[D]. Xian: Northwestern Polytechnical University, 2004: 15-16.(in Chinese)
[5] 馮亞冬. 適航認證的FADEC軟件自動測試平臺的研究[D]. 上海: 上海交通大學, 2012: 12-13.
Feng Yadong. The Research of FADEC System Control Software Automatic Test Platform Which Is Based on Airworthiness Qualification[D]. Shanghai: Shanghai Jiao Tong University, 2012: 12-13.(in Chinese)
[6] Tamblyn S, Henry J, King E. A ModelBased Design and Testing Approach for Orion GN&C; Flight Software Development[C]∥IEEE Aerospace Conference, Bigsky, Montana, 2010.
[7] 馬恩, 劉富榮, 王鴻鈞. 基于MBD 的商用航空發(fā)動機控制軟件架構設計[J]. 航空計算技術, 2013, 43(6): 95-99.
Ma En, Liu Furong, Wang Hongjun. Architecture Design of Commercial AeroEngine Control System Software[J]. Aeronautical Computing Technique, 2013, 43(6): 95-99.(in Chinese)
[8] 溫昱. 軟件架構設計[M]. 北京: 電子工業(yè)出版社, 2007: 56-58.
Wen Yu. Software Architecture Design[M]. Beijing: Publishing House of Electronics Industry, 2007: 56-58.(in Chinese)
[9] 巴斯 L, 克萊門茨 P, 凱茲曼 R. 軟件架構實踐[M]. 2版. 車立紅, 譯. 北京: 清華大學出版社, 2004: 36-40.
Bass L, Clements P, Kazman R. Software Architecture in Practice[M]. 2nd ed. Translated by Che Lihong. Beijing: Tsinghua University Press, 2004: 36-40.(in Chinese)
[10] 張聞乾, 王琳, 李國玉. 某無人直升機的軟件架構設計[J]. 測控技術, 2010, 29(7): 65-67.
Zhang Wenqian, Wang Lin, Li Guoyu. Software Architecture Design for Unmanned Helicopters Flight Control[J]. Measurement & Control Technology, 2010, 29(7): 65-67.(in Chinese)
[11] 趙彥斌, 鐘再敏. 基于代碼自動生成技術的汽車電子實時控制軟件開發(fā)[J]. 計算機輔助工程, 2008, 17(3): 36-40.
Zhao Yanbin, Zhong Zaimin. Development on Automotive Electronic Real Time Control Software Based on AutoCode Generation Technology[J]. Computer Aided Engineering, 2008, 17(3): 36-40.(in Chinese)
[12] 齊振恒, 孫中杰, 李濤. RTW嵌入式代碼自動生成機制與代碼結(jié)構分析[J]. 計算機測量與控制, 2010, 18(3): 639-642.
Qi Zhenheng, Sun Zhongjie, Li Tao. RTW Embedded Code Auto Generation Mechanism and Code Structure Analysis[J].Comuputer Measurement & Control, 2010, 18(3): 639-642.(in Chinese)
Abstract: Full authority digital electronic control system(FADEC) is the future direction of aeroengine digital control system. Control software is the core of FADEC, and modelbased design(MBD)is the development trend of FADEC control software. In the development process of a certain type of engine control software, the software architecture design based on MBD is carried out, and model is developed and validated in the stage of system demand. By the code automatic generation mechanism, the automatically generated codes are loaded into the target machine. Through the hardware in the loop simulation, it is proved that the software development based on MBD can close down the software defect in the early stage of development process, which saves the time of control software development, and has a certain advantage on the desktop regression verification.
Key words: FADEC; control software; MBD; software architecture; desktop verification; aero engine