王翌丞 胡延霖 陳 雄 閻永祿
(防空兵指揮學院1) 鄭州 450052)(蚌埠坦克學院2) 蚌埠 233013)
進入21世紀,隨著微電子技術、信息技術、計算機技術、智能技術、新型材料技術、自動駕駛和信號處理等高新技術的飛躍進步,無人機的使用范圍已從軍事領域拓展到了民用領域,其廣泛的應用價值已經得到了國內外的高度重視,無人機的研制在世界范圍內得到蓬勃發展。
飛行控制系統作為無人機的心臟,其作用尤為重要,無人機各項性能(包括起飛著陸性能、作業飛行性能、飛行安全可靠性能、系統的自動化性和可維護性等)的優劣很大程度上都取決于其飛控系統的設計。無人機半實物仿真是對飛行控制系統研制工作的有力手段,可有效提高飛行控制系統研制質量、縮短研制周期和節省研制費用。本文搭建了基于xPC目標實時仿真開發環境的無人機飛控半實物仿真平臺,為不具備購買昂貴的仿真設備時無人機半實物仿真的實現提供了解決途徑。
xPC半實物仿真目標是Math Works公司提供和發行的一個基于MAT LAB/Real—Time Workshop體系框架的輔助產品,可將Intel80x86/Pentium計算機或PC兼容機轉變為一個實時系統,而且支持許多類型的I/O設備板(包括ISA和PCI兩種類型)。同時MAT LAB還提供了功能強大的S-function(system function)作為Simulink功能模塊的擴展。S-function可以用C語言編寫,由MATLAB提供的mex編譯器編譯成dll文件,供其它高級語言的程序調用,使用方便。它是一種用于產品原型開發、測試和配備實時系統的PC機解決途徑。使用xPC目標,用戶只需安裝相關的軟件、一個編譯器和I/O設備板,就可將一個PC兼容機作為實時系統,來實現控制系統或DSP系統的快速原型化、硬件在回路中的測試和配備實時系統的功能。
xPC目標采用宿主機-目標機的技術途徑,即“雙機”模式,宿主機和目標機可以是不同類型的計算機,其中宿主機用于運行MATLAB/Simulink,而目標PC機則用于執行所生成的代碼,通過以太網絡或串口線連接來實現宿主機和目標機之間的通信。
在xPC目標環境下,用戶可將安裝有MATLAB和Simulink軟件的PC機作為宿主機,用Simulink模塊圖來創建模型并進行非實時的仿真。然后,用Real—Time Work shop代碼生成器和C編譯器來生成可執行代碼,并將其在第二個PC兼容機上實時地運行。圖1顯示了半實物仿真環境中xPC目標的使用情況。

圖1 MAT LAB半實物仿真環境
本文組成的飛行控制系統半實物仿真平臺結構如圖2所示。該仿真平臺由飛行控制計算機、無人機模型、傳感器仿真模塊、發動機仿真模塊、舵機、數據轉換卡和測控界面組成。在半物理仿真過程中,飛行控制計算機主要接收來自地面站的指令,并按相應的控制率控制升降舵機、副翼舵機和仿真的渦噴發動機做出相應的響應,無人機模型實時采集這些信息進行解算,將解算出的數據傳輸到傳感器仿真模塊,飛行控制計算機根據傳感器仿真模塊提供的傳感信息,解算出控制參數使飛機按指令正確平穩的飛行,同時將飛行數據回傳到地面站進行顯示和存儲以便分析,構成完整的閉環飛行系統,數據轉換卡主要用于A/D和D/A轉換,以及數據傳送。系統掛接了真實舵機,更清楚直觀地觀測舵偏角的變化,使半實物仿真可視性更高。

圖2 樣機飛控仿真平臺結構圖
實時仿真部分:無人機動力學和運動學仿真、傳感器仿真、發動機仿真;
實物部分:飛控器、舵機、地面站和數據轉換卡等;
實時仿真部分主要功能有以下幾個方面:
1)實時采樣“飛行控制計算機”控制下輸出的舵面和發動機油門信息,根據無人機的飛機模型,通過數學仿真模擬無人機飛行運動特性。
2)完成無人機的動力學和運動學仿真。動力學仿真:根據飛行控制系統發過來的數據,解算出作用在飛機上的力;運動學仿真則根據飛行動力學方程,解算出飛機的六自由度(俯仰、橫滾、偏航、升降、縱向平移、側向平移)運動信息。
3)運用傳感器特性數學仿真的方法產生垂直陀螺、角速率陀螺、磁航向、高度、GPS等參數。
4)實時執行地面站發給飛控計算機的各個指令,控制飛行仿真過程,并向飛控器實時發送飛行仿真數據。
飛機的運動一般可采用6自由度12狀態非線性剛體運動方程來描述,即六自由度非線性動力學方程組及相應的運動學方程。其通用的非線性數學模型可采用以下方程式來描述:



為了實現基于xPC的實時仿真,需將已有的程序、算法集成到Simulink框圖模型中,RTW是一個基于Simulink的代碼自動生成環境,它能直接從Simulink的模型中產生優化的、可移植的和個性化的代碼,并根據目標配置自動生成多種環境下的程序,從而來實現仿真平臺的最終實現。
依據數學模型,在Simulink中搭建無人機樣機的六自由度模型以便構建實時仿真平臺模型。

圖3 無人機樣機Simulink六自由度模型
如圖3為無人機樣機Simulink六自由度模型,封裝圖內有四個通道輸出即十二個輸出變量,對于不需要的輸出通道Ve,DCM,dω/dt,Ab,在總統圖上分別用Simulink Library中的Terminator模塊加以終止。
該模型完成的主要功能:設定必要的初始值(如飛機質量、飛機初始位置以及初始速度、風速、風角速度等)之后,根據控制輸入向量得到飛機的輸出向量
該模型主要由以下模塊構成:氣動導數插值計算模塊“DDS”;量綱一的滾轉、俯仰、偏航角速度計算模塊“p—,q—,r—”;發動機推力計算模塊;迎角、側滑角、馬赫數計算模塊“Alpha,Beta,Mach”;力和力矩求解模塊“Forces and Moments”;根據力和力矩求解飛機輸出變量的“6DOF(Euler Angles)”模塊。
MATLAB圖形用戶界面是有別于VC界面和Java界面的一種新型界面開發方式。對于熟悉MATLAB而不想編寫大量VC代碼的科研人員來講,MATLAB/GUI無疑是一個最佳選擇,它既能嵌入已有的仿真程序,又能把仿真的圖形化結果以人機交會的動態方式呈現給操作者,從而給人以深刻的影響。
本文使用MAT LAB/GUI建立了仿真平臺人機界面。在該仿真系統中,系統人機界面主要實現以下功能:
1)系統初值的裝定,如風速、風角速度和氣動參數等;
2)飛行參數的實時顯示,如姿態角、經緯度和高度等;
3)對仿真平臺運行狀態的控制。
飛行控制系統的驗證是通過觀察無人機全過程飛行仿真時樣機的飛行軌跡以及相關參數能否達到相應的性能指標。通過地面站設定預定飛行軌跡,按照仿真試驗步驟進行仿真試驗,通過地面站和仿真控制臺觀察飛行航跡以及參數變化曲線。
為了驗證飛行控制系統的性能,設計了一條用于飛行控制系統驗證的飛行航線,航路點設置如表1所示。
該樣機在地面站中的航路裝定圖如圖4所示。
圖5是在仿真環境下測得的無人機樣機全過程飛行航跡曲線圖。
通過全過程飛行仿真試驗表明該仿真平臺運轉良好,符合設計要求,能夠對飛控器的控制率和控制性能進行驗證,對飛控器的定型有重要的意義。
具體內容如下:
1)無人機自主飛行。無人機能按照事先設定的航線,在飛控系統的指引下自主飛行,由仿真曲線可以看出,所設計的飛行控制系統能夠很好的實現自主導航功能;

表1 航路點信息表

2)嵌入式代碼的自動生成。實現了將Simulink模型轉化為能夠在目標機中實時運行的嵌入式代碼;
3)硬件在回路仿真平臺的構建技術。驗證了xPC目標的I/O接口技術以及飛控系統中傳感器、舵機硬件接口的可行性及正確性。
無人機飛行控制系統是無人機系統的最核心部分,關系到無人機的飛行安全、任務的執行等等。因此無人機飛行控制系統的研究與開發是極其重要的,而在開發的過程中,無人機飛行控制系統半實物仿真又是不可缺少的,經過半實物仿真可以最大限度的降低風險,減少費用和縮短周期。
[1]王行仁.飛行實時仿真系統及技術[M].北京:北京航空航天大學出版社,1998,9
[2]康風舉.現代仿真技術與應用[M].北京:國防工業出版社,2006,1
[3]龍利.MATLAB環境下控制系統實時仿真實驗的研究[D].重慶:重慶大學,2005,5
[4]黃永安.MATLAB 7.0/Simulink 6.0建模仿真開發與高級工程應用[M].北京:清華大學出版社,2005
[5]耿通奮.無人機實時仿真與測試系統綜合設計[D].南京:南京航空航天大學碩士學位論文,2003
[6]李顯宏.MAT LAB 7.x界面設計與編譯技巧[M].北京:電子工業出版社,2006
[7]謝仕宏.MAT LAB R2008控制系統動態仿真實例教程[M].北京:化學工業出版社,2009
[8]姜啟源.數學模型[M].北京:高等教育出版社,2002
[9]楊滌.系統實時仿真開發環境與應用[M].北京:清華大學出版社,2002
[10]錢翼稷.空氣動力學[M].北京:北京航空航天大學出版社,2004
[11]李興偉.基于Matlab/xPC Target構建實時仿真系統[J].計算機仿真,2003