王祝

摘 要:多旋翼無人機的飛行控制是當前無人機研究領域的一個熱點,目前的控制設計多采用Matlab/Smiulink進行數值仿真驗證,仿真環境中較少考慮機載設備的作用。而在無人機原型開發過程中,又多采用現場調試的方法,但這種方法不利于實現控制算法及參數的快速更改。為提高對飛行控制算法的開發效率,文章設計并實現了一種多旋翼無人機可視化半實物仿真平臺。實現飛行俯仰、滾轉角、偏航角的控制;基于LabVIEW完成3D顯示,人機交互界面和數據動態顯示;完成了基于LabVIEW飛行姿態控制的仿真平臺的研制,實現了飛行姿態控制仿真演示和飛行姿態控制半開放仿真設計,實現效果達到預期實驗設計目標。
關鍵詞:多旋翼飛行器;虛擬儀器;LabVIEW;半實物仿真;3D顯示
1 概述
隨著航空技術的進步,飛機從客車、火車、輪船等交通運輸工具中脫穎而出,逐漸成為我們不可或缺的日常交通工具之一,并成為國際間運輸的主要交通工具。數據顯示,飛機承擔著大部分的國際客運及貨運任務,分別占據國際客運、貨運總數的60%和70%以上,是完成國際間運輸的重要運輸方式。此外,飛機具有更舒適、安全的特點。飛機在飛行時,受到自然環境的影響和阻礙相對較小,在航班的增減上也更為靈活,可以根據客流量、貨物量的變化及時作出調整。但是,飛機和其他交通工具一樣,同樣存在安全上的問題。飛機的事故多發在起飛和降落的過程當中,在這兩個階段,飛機容易出現因故障而導致失速的現象,這些事故對生命和財產都造成了巨大的損失,因此,改善、解決這一問題成為了當前的重要任務之一。為解決這一問題,自轉旋翼機應運而生。旋翼飛機是一種旋翼航空器,這種航空器利用旋翼自轉產生的動力來提供飛機所需的升力,在此過程中旋翼借助前飛時產生的相對氣流完成自轉;而動螺旋槳則由發動機帶動,直接為旋翼機提供前進力。
文章將在分析飛機飛行時涉及到的運動原理作出分析,并從靜態指針和動態指針兩個方面對穩態誤差、上升時間、超調量進行確定,此外建設簡化模型,對控制系統進行探討。
2 旋翼飛行的基本原理
旋翼飛機同時具有旋翼和一副螺旋槳,這副螺旋槳呈水平放置狀態,為旋翼飛機提供前進的動力。這種飛行器介于飛機和直升機之間,它的旋翼和發動機系統不相連,旋翼的轉動靠的是飛機飛行時產生的氣流而非發動機,前方的氣流使旋翼轉動,從而產生升力;這個過程類似于風車的轉動,旋翼系統只在預旋時靠自身的力量旋轉,而后全憑空氣的作用力來實現旋轉。與之相反的,直升機的旋翼與發動機系統是相連的,能一并提供直升機飛行時需要的升力與動力,類似于電扇的運轉。旋翼飛機的旋翼是自轉式的,這使得旋翼飛機受到扭矩的影響較小,所以通常只需裝上尾翼控制飛機的飛行即可。旋翼在旋翼機的飛行中提供了絕大部分甚至全部的升力,固定機翼在此機種飛行時則呈現了可有可無的狀態。
3 MatLab與LabVIEW的比較
3.1 MatLab介紹
MatLab是面向科學與工程計算的高級語言。是由Mathworks公司推出的一種以矩陣為基本編程單元的程序語言。其編程效率、可移植性和可讀性都明顯高于其他高級語言。它是一套高性能的數值計算可視化軟件。由于該軟件具有豐富的控制理論、容易使用和矩陣運算功能強與CAD應用程序集等特點,MATLAB已成為國際控制領域內最流行的控制系統的計算機輔助設計軟件。
3.2 LabVIEW圖形化編程語言介紹
LabVIEW(Laboratory Virtual Instruments Engineering Workbench)是美國 NI公司(National Instrument Company)推出的一種基于G語言(Graphics Language,圖形化編程語言)的虛擬儀器軟件開發工具。它為不熟悉文本語言編程的設計者在測控領域建立計算機儀器系統——虛擬儀器,提供了一個便捷、輕松的圖形化設計環境。LabVIEW具有強大儀器驅動和實驗儀器圖形顯示,LabVIEW使用的是科學家和工程師們所熟悉的術語,還使用了很易于識別的構造G語言的圖形符號,即使具有很少編程經驗的人也能學會使用LabVIEW,圖形化程序設計編程簡單、直觀、開發效率高,如果你好好使用LabVIEW,你就會發現他幾乎包含了所有測控技術中需要用到的模塊,而這些模塊如果自己編寫是極其費力的。另外,大部分人現在涉及的gpib開發估計也僅僅是數據采集部分而已,但是一個完整的測控系統,數據采集僅僅是開始,更重要的數據后處理,這里,LabVIEW就更加顯得功能強大了。
3.3 MatLab與LabVIEW比拼
LabVIEW又稱為G編程語言,是一種基于非文本的圖形編程語言,LabVIEW借助圖形符號來描述程序,從而完成編程。LabVIEW具有強大儀器驅動和實驗儀器圖形顯示,LabVIEW不僅使用了工程師、科學家們熟悉的術語,還運用了易于識別的構造G語言的圖形符號,便于編程經驗少的人學習、使用,圖形化程序設計編程簡單、直觀、開發效率高,若運用得好LabVIEW,就會發現它幾乎包含了所有測控技術中需要用到的模塊,而這些模塊如果自己編寫是及其費力的,另外,大部分人現在涉及的gpib開發估計也僅僅是數據采集部分而已,但是一個完整的測控系統,數據采集僅僅是開始,更重要的數據后處理,這里,LabVIEW就更加顯得功能強大了。
4 飛行器控制設計與實現
4.1 程序設計
對于實時仿真,可以在LabVIEW中使用3D畫面來形象地反映飛機的飛行狀態。主要程序及顯示結果見圖1和圖2。
圖1飛行器外形創建主程序圖
4.2 飛行姿態控制
這里主要采用基于修正的PID算法,因為設計不同,控制器開放程度不一樣,具體設計不做詳細講解,控制選擇如圖3所示。
(1)仿真運行。打開“控制界面”應用程序,保留默認設置,如圖3所示。俯仰、滾轉參數選擇原參數,航向控制選擇程序化控制。把搖桿開關撥到“運行”一邊,仿真開始。其中控制器PID參數可調,可以通過仿真平臺學習PID參數整定方法,直觀看到整定效果。可看到飛行畫面中的飛機開始相對地面運動,鍵盤上的“Insert”和“Delete”鍵可調節觀察遠近;“Home”和“End”鍵可使觀察點繞飛行器水平轉動;“PageUp”和“PageDown”鍵可使觀察點繞飛機垂直轉動。
(2)采用鍵盤控制可觀察俯仰、滾轉角、偏航角控制效果。開始仿真后,鍵盤上的“↑”和“↓”方向鍵分別用來增大和減小俯仰角的設定值,也可以在“設定值”欄中輸入俯仰角的具體角度。“航向控制選擇”下拉列表改選為“手動控制”,鍵盤上的“←”和“→”方向鍵分別用來增大和減小滾轉角的設定值,同理也可以在“設定值”欄中輸入滾轉角的具體角度。“航向控制”選擇下拉列表改回“程序化控制”鍵盤上的“D”和“A”字母鍵分別用來增大和減小偏航角的設定值,同理也可以在“設定值”欄中輸入偏航角的具體角度。
5 結束語
文章是基于2014年貴州省教育廳教育科學規劃立項課題的青年課題《基于智能小車及多旋翼飛行器設計的電子信息類專業項目式教學研究》完成的,在部分師生已對此項設計進行嘗試運行并取得成功的前提下,并得到學校領導的幫助,以及相關基金的資助,正準備引入項目式教學中,利用此項設計完善學校的實驗教學。這種新的教學方法不僅能讓更多學生參與其中,還能將學生取得的優秀成果運用到實驗室的建設工作上,為今后的教學和學生實踐提供參考和開設新的實驗項目,使得實驗資源得到充分利用。
參考文獻
[1]王國華,矯振偉,黃海珍,等.Labview軟件在熱分析實驗中的應用[J].實驗技術與管理,2007.
[2]查曉春,黃愛華.自動控制原理課程的Matlab輔助教學[J].實驗技術與管理,2007.
[3]吳森堂,費玉華.飛行控制系統[M].北京:北京航空航天大學出版社,2005.