胡錦添 舒懷林
(廣州大學機械與電氣工程學院)
四旋翼飛行器是一種四螺旋槳驅動的、可垂直升降的飛行器,這種結構被廣泛用于微小型無人飛行器的設計,具有重要的軍用和民用價值。它同時也具有欠驅動、多變量、強耦合、非線性和不確定等復雜特性。近年來,隨著新型材料、微機電、微慣導以及飛行控制等技術的進步,四旋翼飛行器得到了迅速發展,逐漸成為人們關注的焦點[1]。
Adams軟件是美國MDI公司開發的虛擬樣機分析軟件,它使用交互式圖形環境和零件庫、約束庫、力庫,創建完全參數化的機械系統幾何模型,非常方便地對虛擬機械系統進行靜力學、運動學和動力學分析,更具有開放性的程序結構和多種接口,方便進行二次開發。但是對于控制系統的設計,Adams只能處理一般的簡單控制環節。相比之下,Matlab能夠處理各種復雜的高級控制環節,如智能控制系統。如果能充分發揮兩者的特點,結合在一起使用,這將給復雜機電系統的設計提供一種新方法[2-3]。
本文利用Adams軟件和Matlab軟件,對四旋翼飛行器及其控制系統進行聯合仿真。利用Matlab/Simulink模塊搭建了四旋翼飛行器控制系統的仿真平臺,實現基于Matlab與Adams的四旋翼飛行器的聯合動態仿真,避免了推導四旋翼飛行器的動力學方程的繁瑣過程,提高了四旋翼飛行器設計效率。首先通過三維設計軟件Solidworks建立四旋翼飛行器的實體模型,然后將其導入動力學仿真軟件Adams中,通過Adams的接口模塊Adams/control與Matlab進行數據交換,實現四旋翼飛行器運動學及動力學仿真。
盡管 Adams提供了豐富的建模工具,但直接在Adams中建模還是比較困難。大多數模型是由其它繪圖軟件繪制后再導入到 Adams中,本文選擇Solidworks三維設計軟件建立四旋翼飛行器結構模型。設計的四旋翼飛行器具有1個機架、4個電機和4個旋翼,能實現 10個自由度的回轉運動和平移運動。其三維結構模型如圖1所示。

圖1 四旋翼飛行器三維結構模型
將 Solidworks中創建的四旋翼飛行器結構模型導入到Adams中。首先把Solidworks中的模型文件保存為.X_T(Parasolid)格式,然后導入到Adams中。最后對每個零部件進行屬性編輯,定義質量、材料、轉動慣量等相關屬性[4],經過處理后,虛擬樣機便具有與真實樣機相似的物理特性,可實現 Adams對四旋翼飛行器的運動學及動力學仿真,如圖2所示。

圖2 定義約束后的四旋翼飛行器模型
為了更好地模擬實際系統,要為導入 Adams中的模型定義約束及驅動,包括在4個旋翼處及機架中心處分別定義旋轉約束和球鉸鏈約束,在其它沒有相對運動的零件處定義固定約束[5]。這樣可確定飛行器的各個零件之間的約束關系。同時,在4個旋翼處定義旋轉驅動作為輸入的驅動力矩。為簡化仿真難度,忽略空氣動力學等問題,把4個旋翼的升力簡化為剛性作用力。4個旋翼作用力和力矩可以通過人為設定,或將旋翼的轉速通過函數轉換得到,如表1所示。

表1 旋翼輸入轉速與作用力的轉換
四旋翼飛行器的每個旋翼都由一個直流無刷電機驅動,電機由配套的直流調速器控制,直流調速器的指令由姿態控制器給出。整個四旋翼飛行器控制系統就是一個多輸入多輸出、強耦合的復雜機電系統。
4個電機并行連接,構成同步驅動系統,通過高速I2C串行總線把轉速指令從姿態控制器傳送給各個直流電機調速系統,控制直流無刷電機驅動相應的旋翼;同時,通過三軸陀螺儀與三軸加速度傳感器進行姿態信號反饋,實現全閉環姿態控制。系統總體控制結構如圖3所示。

圖3 四旋翼飛行器控制結構
要實現機械系統與控制系統的聯合仿真,必須先把 Adams中建立的四旋翼飛行器機械子系統導入到Matlab,然后在 Matlab/Simulink中搭建聯合仿真系統。
使用Adams中的Adams/control模塊,設置參數后便自動生成相關文件[6]。通過該模塊可實現Adams與 Matlab之間的數據傳遞。同時,要實現機械系統與控制系統之間的參數傳遞,需要設置參數變量,在Adams中創建7個狀態變量,包括4個控制轉速變量及3個歐拉角變量,如表2所示。

表2 Adams中設置的變量

Adams可實時地調用控制系統輸出的轉速變量值,并將其作為該時刻的旋翼轉速值;同時,四旋翼飛行器的各個歐拉角變量值又可實時地反饋到控制系統中,如圖4所示,從而構成閉環姿態控制系統,實現精確控制。
在Adams中,定義輸入與輸出變量,4個旋翼的轉速定義為輸入變量,存放 Matlab控制系統輸出的轉速值;歐拉角定義為輸出變量,作為角度反饋輸入到控制系統。此后,Adams/control模塊將生成三個文件[7],用于 Adams與 Matlab之間的數據傳遞。在Matlab的命令行中調用Adams/control模塊,即可顯示聯合仿真系統的7個變量。在Matlab的命令行中輸入命令:adams_sys,即可產生四旋翼飛行器機械子系統模塊,如圖5所示。

圖5 聯合仿真系統的機械子系統
圖5仿真系統所示:機械子系統Adams有4個轉速變量作為輸入,3個角度變量作為輸出。
四旋翼飛行器系統是一個多變量強耦合的機電系統,在進行聯合仿真時將其簡化為線性多變量解耦系統。分別對各個歐拉角,采用PID控制策略進行控制,通過對各個旋翼轉速的控制,實現對整個四旋翼飛行器的姿態控制,使得四旋翼飛行器能夠實現精確的姿態跟蹤。為簡化控制系統,本文只對俯仰角與滾轉角進行控制。4個直流電機調速控制系統(BLDC)同時輸入恒定的6V電壓值,使四旋翼飛行器保持在平穩的水平飛行狀態,分別在BLDC1與BLDC4的前向通道加入 PID控制器并把俯仰角與滾轉角作為反饋輸入,以此組成姿態閉環控制。利用試湊法整定PID 參數如下:PID Controller1:KP=4.1,KI=20,KD=1.05;PID Controller2:KP=3.9,KI=22.3,KD=1.14。聯合仿真姿態控制系統如圖6所示。

圖6 聯合仿真姿態控制系統
為了對四旋翼飛行器聯合仿真系統的性能進行驗證,獨立控制俯仰角及滾轉角,即分別控制X軸及Y軸上的其中一個旋翼的轉速,兩個旋翼同時輸入階躍信號或正弦信號,以便測試系統的響應特性及跟蹤特性,如圖7、圖8所示。

圖7 階躍響應特性曲線

圖8 跟蹤特性曲線
從仿真分析可以看出,當輸入信號為階躍信號時,四旋翼飛行器在較短的響應時間內,超調量小,能夠從當前飛行姿態迅速穩定地調整到指定的飛行姿態,實現對飛行姿態的快速、精確控制。同時在Adams的仿真動畫中可以看出,四旋翼飛行器由初始姿態迅速傾轉到指令給定的姿態,并穩定地保持該姿態不變。當輸入信號為正弦信號時,四旋翼飛行器可以精確地跟蹤給定的正弦指令。由此可以說明設計的姿態控制器可以很好地控制四旋翼飛行器跟蹤給定的姿態變換,使其具有較好的跟蹤特性。
利用聯合仿真系統,可以快速地建立四旋翼飛行器的機械模型與控制系統模型,避免了繁瑣的動力學方程推導過程,降低了設計難度,節省了開發時間。綜合應用Solidworks、Matlab、Adams三個軟件的特點,建立了四旋翼飛行器的機械系統與控制系統,并能同時驗證兩個系統的有效性。這種設計方法對于機電一體化產品的設計顯得非常重要,它保證了機械設計人員與控制系統設計人員能共享同一個數據模型,避免了模型數據的冗余與數據更改的不同步,使產品設計更高效,更高質。通過仿真,驗證了四旋翼飛行器姿態控制器的良好控制效果,仿真過程得到的大量設計參數,可幫助物理樣機與控制系統的改進;通過對設計參數的詳細分析,對各個機械零件及控制算法進行優化,以便得出較優的設計方案。
在后續的研究中,將深入探討低雷諾數條件下旋翼空氣動力學問題[8],使建立機械系統的模擬環境與實際環境更接近。同時,在Matlab/Simulink建立的控制系統中加入智能控制模塊,使四旋翼飛行器的姿態控制更快速,更精確,更穩定。
[1] 李占科,宋筆鋒,宋海龍.微型飛行器的研究現狀及其關鍵技術[J].飛行力學,2003,21(4):1-4.
[2] 何亞銀.基于 ADAMS和 MATLAB的動力學聯合仿真[J].現代機械,2007(5):60-61.
[3] 龔建球,劉守斌.基于Adams和Matlab的自平衡機器人仿真[J].機電工程,2008,25(2):8-10.
[4] MSC Software 公司. Adams 2003/Tire user’s manual[EB/OL].[2002-12-23]. http: // www. mscsoftware. com.
[5] 李增剛.ADAMS入門詳解與實例[M].北京:國防工業出版社,2006.
[6] 陳立平,張云清.機械系統動力學分析及 ADAMS應用教程[M].北京:清華大學出版社,2005:101-132.
[7] 王濤,張會明.基于ADAMS和MATLAB的聯合控制系統的仿真[J].機械工程與自動化, 2005(3): 79-81.
[8] 胡宇群.微型飛行器中的若干動力學問題研究[D].南京:南京航空航天大學,2002.