唐小軍,郭昱津,王道波,謝建國
(1.南京航空航天大學自動化學院,南京 210016;2.中電集團第二十八研究所,南京 210007)
因傳統構型涵道無人飛行器具有氣動效率低、航程與航時有限、前/側向飛行速度小等缺點,需研究開發一種新型涵道無人飛行器。本研究所設計的新型飛行器將固定翼飛機前飛速度快和垂直起降等特性組合,具備低速和高速相組合的飛行器特性,不僅使用方便,能夠執行多種飛行任務,對地形環境適應性強,使用效能高,而且結構緊湊、體積小、使用安全,可以應用于偵查、監視,有著重要的應用價值[1-3]。
飛行控制系統是一種具有高性能的自動飛行控制、自主導航、任務管理的綜合系統,通常由傳感器、飛行控制計算機及其機載軟件、執行機構。飛行控制計算機將傳感器和執行機構聯成一個整體,共同構成閉環的飛行控制系統。飛行控制計算機通過機載飛行控制軟件處理傳感器數據,實現控制律、管理任務設備、實現自主飛行,并完成相應的任務[4-5]。飛行控制軟件作為飛行控制系統的核心,就顯得尤為重要。因此設計一套相應的飛行控制軟件具有重要的意義。
運用模塊化設計方法,按功能將軟件劃分為若干模塊,區分各模塊之間的關系與邏輯順序。所設計的飛行控制系統軟件總體結構如圖1所示,基于此結構圖開發了機載飛行控制軟件與地面遙控遙測軟件。

圖1 飛行控制系統軟件總體結構
飛行控制計算機核心處理器選用Infineon公司的XC167-CI的單片機處理器,該處理器支持基于C語言的程序設計,在涵道飛行器飛行控制軟件的開發過程中,選用與硬件相匹配的TASKING編程開發環境,該應用程序安裝在PC機上,按照飛行控制軟件的功能需求和任務劃分編寫程序代碼,然后進行編譯和調試。
機載飛行控制軟件采用模塊化結構設計。飛行控制軟件按功能可分為4個部分,如圖2所示,分別為傳感器信號采集模塊、控制律解算模塊、執行機構的指令信號輸出模塊以及無線數據通信模塊。為了提高了程序的可維護性和可移植性,將每個模塊獨立封裝。當某個模塊性能和參數需要調整時,只需配置相應的模塊即可[6]。

圖2 飛行控制系統軟件總體結構
1)傳感器信號采集模塊
涵道飛行器飛行控制時需要獲得涵道飛行器的飛行姿態、航向、角速率、位置等信號和涵道螺旋槳轉速等飛行狀態信息。飛行狀態信息是通過IMU和GPS傳感器模塊獲得的,該模塊通過RS232串口與飛行控制計算機進行通訊。涵道螺旋槳轉速經信號均為脈沖信號,并進行數字轉換后得到相應的轉速值,涵道螺旋槳轉速測量只在地面試驗時進行測量,在實際飛行中可不進行反饋。在傳感器數據采集模塊中IMU和GPS傳感器使用中斷方式接收,涵道螺旋槳轉速測量也通過中斷的方式接收,中斷流程圖可在圖3中體現。

圖3 中斷響應和定時器查詢方式數據采集流程
2)飛行控制律解算模塊
涵道飛行器飛行控制軟件的核心是控制律的解算,該模塊主要完成傳感器信號采集模塊和無線通訊模塊采集的數據的處理,然后解析飛行控制指令,解算導航信息以及根據飛行控制律解算各通道的控制量。涵道飛行器飛行控制軟件設定控制律解算模塊的調用時間間隔為20 ms。
自主模式下的指令解析中,將無線通訊模塊獲得的指令解析為對應到涵道飛行器的不同任務指令,例如前飛、爬升、下滑、定高以及轉彎等,再將控制指令進行換算為涵道飛行器的高度指令、速度指令以及姿態角指令,最后根據相應控制回路的控制律解算得到縱向操縱、橫向操縱、航向操縱和涵道螺旋槳轉速操縱的操作量[7]。操縱手的遙控指令解析為桿量,直接疊加到各通道的操縱量上。
3)控制量到舵機輸出的解算模塊
控制量到舵機輸出的解算模塊的調用時間跟控制律解算模塊相同,由定時器觸發,每隔20 ms將控制律解算模塊得到的各通道操作量輸出給舵機驅動模塊,舵機驅動模塊將控制信號經功率放大后驅動舵機運動,驅動涵道飛行器的相關執行機構隨之動作。
4)無線數據通信模塊
無線數據通信模塊一方面負責接收地面遙控遙測系統向機載飛行控制系統發送的飛行指令信號,同時將飛行控制計算機收集的飛行狀態信息通過無線數字電臺發送到地面遙控遙測系統。飛行控制計算機接收遙控遙測系統的指令信號通過串口的中斷查詢方式實現,當設置的串口緩沖區滿時觸發串口中斷,程序自動跳到數據接收模塊中繼續運行,當接收模塊運行結束時退出中斷。發送方式為定時發送,發送周期定為100 ms。如圖3為中斷響應和定時器查詢方式數據采集流程圖。
涵道飛行器控制系統工作原理為:通過數據采集傳感器測量飛行器當前狀態的實時數據,飛行控制計算機接收狀態信息并結合當前飛行任務進行控制律解算,求得當前控制指令信號并輸出PWM信號到轉速控制電機與各電動舵機控制舵面,最后完成涵道飛行器飛行動作的改變,涵道飛行器飛行控制軟件工作流程如圖4所示。
初始化模塊中主要完成飛行控制計算機各模塊的初始化工作,包括系統時鐘、定時器、中斷、串口和PWM等模塊,以及開啟定時器;傳感器信號采集模塊的主要功能與任務是在每個采樣周期內對IMU、GPS等傳感器的實時輸出數據進行采集和保存;控制量解算模塊中,根據已設計的飛行控制律,結合涵道飛行器飛行狀態采集模塊收集的實時數據和解算出的飛行指令信息,計算得出涵道飛行器各通道的控制量[8];飛行控制計算機將舵機控制信號PWM信號經輸出隔離后輸出到各執行機構,驅動相應的涵道螺旋槳和舵機的舵面運動。

圖4 涵道飛行器飛行控制軟件工作流程
地面遙控遙測系統的主要目的是對涵道飛行器的飛行狀態和任務設備等進行實時監測與遙控,實時對遙測接收數據進行分析、對比與保存,定時對遙控指令數據進行發送,使得地面監控人員能夠掌握涵道飛行器的飛行狀態并及時切入人工干預控制模式處理涵道飛行器出現的異常情況,以盡最大可能減少甚至避免涵道飛行器的試驗損失,因此要求涵道飛行器遙控遙測系統具有較好的人機界面[9],地面測控系統軟件具體包括以下幾個方面:
1)實時顯示涵道飛行器飛行狀態數據;
2)實時報告涵道飛行器機載設備工作狀況;
3)動態顯示飛行器的飛行姿態以及執行機構狀態;
4)飛行控制指令盤以及存儲飛行數據。
地面遙控遙測軟件是在VC++6.0環境下開發的,采用模塊化設計思想,主要有4個子功能模塊,分別是遙控指令采集與發送模塊、遙測數據接收與處理模塊、界面顯示模塊以及飛行狀態信息的存儲模塊,具體結構如圖5所示。
遙控指令的采集與發送模塊一方面采集USB接口的操縱桿指令,另一方面采集地面人員在遙控遙測軟件界面中輸入的指令或者界面指令盤按鈕指令,該模塊將這些指令經過編碼校驗等處理后通過無線電臺模塊發送給機載飛行控制計算機[10]。

圖5 地面測控系統軟件構成
遙測數據接收與處理模塊接收來自機載飛行控制系統的飛行狀態信息,通過串口中斷接收數據并根據通訊協議解碼得到涵道飛行器的飛行狀態信息。
數據顯示與圖形顯示模塊通過定時中斷的方式刷新顯示界面,定時器中斷每次響應時,地面計算機以數據列表和圖形曲線形式更新當前飛行器狀態信息,包括飛行狀態信息數據、指令盤、預設與實際航跡、姿態與航向二位圖形顯示、操縱桿量與涵道螺旋槳轉速等,所設計的人機交互界面如圖6所示。

圖6 地面測控軟件人機界面
將設計的飛行控制系統軟件應用在新型涵道無人飛行器的飛行控制系統上,展開飛行器的懸停試飛試驗,飛行試驗中平面位移的變化如圖7(a)所示,高度的變化如圖7(b)所示。懸停試飛試驗的結果表明所設計的飛行控制系統軟件合理有效。圖8為該飛行器的外場懸停試飛試驗。

圖7 平面位移與高度的變化曲線

圖8 涵道無人飛行器外場試飛
基于新型涵道無人飛行器的研制要求,開發了一套包括機載飛行控制和地面遙控遙測的飛行控制系統軟件,并應用于涵道飛行器中。該套飛行控制系統軟件通過試驗驗證,達到了預期的目的,滿足了飛行器的性能指標并實現了小體積化。
[1]李建波,高正.涵道風扇空氣動力學特性分析[J].南京航空航天大學學報,2005,37(6):680-684.
[2]郭才根.無人駕駛直升機的應用與現狀[J].中國航空報,2000(7):25-26.
[3]李遠偉,奚伯齊,伊國興,等.涵道式飛行器魯棒控制系統設計[J].哈爾濱工業大學學報,2010,9(14):82-87.
[4]Corey Schumacher,Meir Pachter,Lior Pachter,et.al.Constrained Optimization for UAV Task Assignment[C]//American Control Conference.[S.l.]:[s.n.],2005:1-14.
[5]趙超.單旋翼涵道風扇式無人直升機建模與控制研究[D].南京:南京航空航天大學,2010.
[6]路引,王道波.基于DSP的雙發無人靶機飛控系統設計[J].四川兵工學報,2011,32(12):42-45.
[7]Michael B.Donley,Norton A.Schwartz.United States Air Force Unmanned Aircraft Systems Flight Plan 2009~2047[Z].Headquarters US Air Force,2009:1-82.
[8]吳森堂,費玉華.飛行控制系統[M].北京:北京航空航天大學出版社,2005:8-104.
[9]謝建國.新型涵道無人飛行器飛行控制策略研究[D].南京:南京航空航天大學,2013.
[10]王宏強.旋翼/涵道風扇式無人直升機飛行控制若干問題研究[D].南京:南京航空航天大學,2009.
[11]都基焱,張振.小型無人機飛行控制系統硬件設計[J].兵工自動化,2014(9):64-67.