曹魯成 何晉 李珂 蘇穎 晉春杰
摘要:四旋翼飛行器具有機(jī)械結(jié)構(gòu)簡單、成本低、事故率低、重量輕等優(yōu)點,因此應(yīng)用前景廣泛。文章以Arduin。Mega2560單片機(jī)為核心控制器設(shè)計一架小型四旋翼飛行器。首先,通過主控制器、慣性測量單元、遙控通信模塊、電源與驅(qū)動模塊完成系統(tǒng)的硬件結(jié)構(gòu)設(shè)計。其次,采用卡爾曼濾波來消除干擾,以及利用四元數(shù)算法解算出飛行姿態(tài)角控制電機(jī)的轉(zhuǎn)速,并通過雙閉環(huán)串級PID控制來調(diào)節(jié)飛行器的平衡性。最后采用C語言編寫控制程序,軟硬件聯(lián)機(jī)調(diào)試并進(jìn)行實地飛行測試。測試結(jié)果證明,四旋翼飛行器可以很好地平穩(wěn)起飛,并且可以完成自穩(wěn)、懸停等運(yùn)作,達(dá)到了設(shè)計目的。
關(guān)鍵詞:四旋翼飛行器;AVR單片機(jī);飛行器設(shè)計;PID參數(shù)設(shè)置;慣性測量單元;飛行測試
中圖分類號:TN911-34;TD368.2
文獻(xiàn)標(biāo)識碼:A
文章編號:1004-373X( 2019) 24-0108-04
0 引言
四旋翼飛行器是一個多功能性的工作系統(tǒng),在無人機(jī)中具有滯空時間長、便攜性好、飛行平穩(wěn)的優(yōu)點。它的用法多種多樣,無論是在軍用還是民用,四旋翼都體現(xiàn)出了其他飛行器無法比擬的優(yōu)點,被社會各行各業(yè)所認(rèn)可,因此四旋翼的利用價值非常高。
四旋翼飛行器的研究可以追溯到20世紀(jì)初,然而當(dāng)時由于機(jī)械結(jié)構(gòu)和控制技術(shù)的掣肘,四旋翼飛行器的發(fā)展相當(dāng)緩慢。近年來隨著微控制技術(shù)、信息技術(shù)、傳感技術(shù)的突破,四旋翼飛行器進(jìn)入快速發(fā)展的階段。國外很多著名的高校和實驗室都開發(fā)出了不同的四旋翼飛行器和控制算法,比如賓夕法尼亞大學(xué)Vijay和他的團(tuán)隊開發(fā)出的微型四旋翼飛行器采用視覺信息測量姿態(tài)融合慣性測量元件,可在復(fù)雜的三維環(huán)境中實現(xiàn)進(jìn)行巡航[1]。
國內(nèi)對四旋翼飛行器的研究正處于方興未艾的階段,和國外相比還有一段不小的距離,但我國已在飛行器上取得過許多良好的成績,無論是在四旋翼飛行器的控制算法上還是在現(xiàn)實應(yīng)用中都取得了斐然的成績。目前國網(wǎng)供電公司在多省運(yùn)用無人機(jī)搭載激光雷達(dá)進(jìn)行輸電線路巡檢工作。
1 四旋翼飛行器的硬件設(shè)計
四旋翼飛行器核心部分是飛行控制系統(tǒng),四旋翼的所有飛行動作都是在飛行控制系統(tǒng)的指令下完成的,是四旋翼的大腦。四旋翼的一套完整控制系統(tǒng)應(yīng)由主控芯片、遙控通信模塊、慣性測量模塊、電源模塊和驅(qū)動模塊組成[2]。四旋翼的整體結(jié)構(gòu)框架如圖1所示。
2 四旋翼飛行器控制器的設(shè)計
2.1 四旋翼姿態(tài)解算
四旋翼的姿態(tài)解算算法實質(zhì)是坐標(biāo)系轉(zhuǎn)化問題,就是如何將飛行器載體坐標(biāo)系轉(zhuǎn)化為地理坐標(biāo)系的問題[3]。式(1)中的α是坐標(biāo)軸旋轉(zhuǎn)的角度,3個余弦分量則是代表在坐標(biāo)系中3個軸上的分量。
從式(2)中可以看出,利用簡單的四則運(yùn)算就可以轉(zhuǎn)化成歐拉角,與單純的歐拉角計算相比,減少了復(fù)雜多次的三角函數(shù)換算,從計算量上來看簡單很多。
2.2 四元數(shù)運(yùn)算流程
四元數(shù)的運(yùn)算流程也是模數(shù)轉(zhuǎn)化的過程,首先把慣性測量單元模塊里取加速度計中沿x,y,z坐標(biāo)軸的16位的數(shù)值,并分別轉(zhuǎn)化為單位為g的沿x,y,z坐標(biāo)軸的矢量力accx,accy,accz,從陀螺儀中讀取3個ADC值,并且將讀取的這3個值轉(zhuǎn)換為單位為度秒的繞3個軸的角速率陀螺儀Wx,Wy,Wz。向量之間的誤差計算是在載體坐標(biāo)系上進(jìn)行的,而速度傳感器的積分誤差同樣也在機(jī)體坐標(biāo)系上的,向量誤差的大小與速度傳感器的積分誤差成正比,它們之間存在一個比例系數(shù),因此可以用加速度計來標(biāo)定速度傳感器積分。同樣對誤差進(jìn)行積分,實際也是進(jìn)行了一次比例控制,將誤差比例后補(bǔ)償?shù)剿俣葌鞲衅魃?,這樣可以得到速度傳感器3個更新后的值Wxint,Wyirit,Wzint,也就是補(bǔ)償零點漂移,速度傳感器3個修正后的值Wxint,Wyint,Wzint用于更新四元數(shù)。把上面得到的四元數(shù)規(guī)范化后,就完成了一次運(yùn)算,然后將此四元數(shù)重新遞歸到開頭。
2.3 卡爾曼濾波及數(shù)據(jù)融合
四旋翼飛行器從慣性測量單元采集姿態(tài)數(shù)據(jù)質(zhì)量對系統(tǒng)的穩(wěn)定性影響很大,而姿態(tài)傳感器易受到來自外界的干擾,故需要對擾動較大姿態(tài)數(shù)據(jù)先進(jìn)行濾波處理??柭鼮V波算法可以預(yù)測處于許多干擾數(shù)據(jù)中的系統(tǒng)下一時刻的系統(tǒng)的動態(tài)??柭鼮V波算法和編程都相對簡單,能實時更新預(yù)處理數(shù)據(jù),因而本文采用卡爾曼濾波算法對采集到的飛行姿態(tài)數(shù)據(jù)進(jìn)行預(yù)測處理,以得到校準(zhǔn)后的飛行的姿態(tài)角嗍。為了整合四旋翼的每個傳感器獲取的信息,以及減少加速度和陀螺儀傳感器受到外界的干擾,所以需要根據(jù)每一個傳感器的特點,組合使用傳感器,來彌補(bǔ)由于傳感器單一性造成采集信息的片面性。
本文采用陀螺儀和加速度計互補(bǔ)的方法,即用陀螺儀采集數(shù)據(jù)來修正加速度計傳感器采集到的數(shù)據(jù)誤差,類似閉環(huán)控制,再把加速度計采集到的姿態(tài)信息進(jìn)行加權(quán)處理,再反饋給陀螺儀,用來修正陀螺儀存在的偏差。
2.4 雙閉環(huán)串級PID控制
簡單的PID控制無法適應(yīng)如此復(fù)雜的飛行環(huán)境,因此本文采用雙閉環(huán)串級PID控制,外環(huán)采用飛行姿態(tài)角PID控制,在內(nèi)環(huán)采用角速度PID控制[5]。
與傳統(tǒng)的PID相比,雙閉環(huán)串級PID的抗干擾能力更強(qiáng),控制系統(tǒng)性能也更加穩(wěn)定。四旋翼飛行器雙閉環(huán)串級PID控制框圖如圖3所示。
2.5 軟件流程
本文選擇基于開源平臺的Arduino Mega 2560最小系統(tǒng)板作為四旋翼的主控制器,通過Arduino IDE進(jìn)行軟件編程與開發(fā),主程序設(shè)計流程圖如圖4所示,中斷包括SPI中斷、串口中斷、定時器中斷、遙控通信中斷。定時器中斷使用定時器完成10 ms中斷,并且要在中斷函數(shù)中完成飛行姿態(tài)傳感器的采樣、算法融合、PID控制器運(yùn)算與實現(xiàn)電機(jī)輸出和數(shù)據(jù)通信等功能[6]。其工作流程圖如圖5所示。
3 四旋翼飛行器飛行實驗及結(jié)果分析
3.1 上位機(jī)軟件
APM飛控的參數(shù)調(diào)試工作、四旋翼飛行數(shù)據(jù)的采集、四旋翼飛行狀態(tài)的監(jiān)控、飛行模式的調(diào)整都離不開上位機(jī)軟件Mission Planner[7]。安裝完成后打開界面如圖6所示。
3.2 PID參數(shù)設(shè)置
PID參數(shù)的調(diào)試對四旋翼的飛行有著舉足輕重的作用,如果PID參數(shù)調(diào)整過大或過小都會對四旋翼產(chǎn)生較大影響,甚至導(dǎo)致四旋翼左右搖擺無法起飛[8]。在對加速度計、羅盤校準(zhǔn)后,開始對PID參數(shù)進(jìn)行整定,為了保證PID參數(shù)的準(zhǔn)確性和操作的安全性,此次調(diào)試在“烤機(jī)”情況下進(jìn)行[9]?!翱緳C(jī)”調(diào)試示意圖如圖7所示。
上述過程都是在上位機(jī)操作下完成的,上位機(jī)軟件可以將修正后的PID參數(shù)燒錄到飛行控制板中,可以進(jìn)一步提高四旋翼的抗干擾能力㈣。
3.3 校準(zhǔn)后的PID數(shù)據(jù)分析
通過翻滾機(jī)身,在上位機(jī)軟件的模擬飛行界面中可以看到滾轉(zhuǎn)角和俯仰角的動態(tài)曲線圖的變化。當(dāng)四旋翼受到擾動時,Mission Planner就可以檢測到飛行器當(dāng)前的歐拉角的信息。
四旋翼歐拉角曲線圖如圖8所示。圖中,綠色曲線為偏航角,紅色曲線為滾轉(zhuǎn)角,在對四旋翼施加一個外界擾動后可以看到曲線的波動,但是可以看到四旋翼很快又趨于原來的穩(wěn)定狀態(tài)。
3.4 實地飛行測試
為了測試四旋翼飛行器的自穩(wěn)特性,本文選擇室外空曠草地進(jìn)行試飛工作,試驗地點選在校醫(yī)院旁空曠草地上,試驗當(dāng)天微風(fēng)。給四旋翼上電后,逐漸調(diào)整飛行器為自穩(wěn)模式,該模式飛行器可以自我調(diào)整平衡,并測試飛行器的定高懸停模式。最后得出結(jié)論,本文設(shè)計的飛行器能穩(wěn)定起飛,并在風(fēng)力的干擾下可以自穩(wěn)[11],如圖9所示。
3.5 實驗結(jié)果分析
由于風(fēng)力不穩(wěn)定,因此外界干擾是動態(tài)的,這樣可以更好地反應(yīng)出四旋翼的平衡性能。圖10展現(xiàn)了本次飛行試驗四旋翼局部姿態(tài)角變化曲線圖。從圖上來看,前3 min是四旋翼準(zhǔn)備起飛階段,由于風(fēng)力的干擾,四旋翼的抖動很大;4-5 min時間段是四旋翼在定點懸停模式,曲線波動很小,證明飛行器的抗干擾能力強(qiáng)。
4 結(jié)語
本文的任務(wù)是設(shè)計一架能夠成功平穩(wěn)的起飛,并且可以實現(xiàn)飛行器自穩(wěn)、懸停、返航等功能的四旋翼飛行器。因為控制算法的實現(xiàn)尤為重要,從慣性測量元件中提取加速度與角速度,利用四元數(shù)法解算出初步的歐拉角,再利用卡爾曼濾波及融合算法對解算后的歐拉角進(jìn)行濾波和融合,消除外界因素對慣性測量元件的影響,得到正確的飛行姿態(tài)角(歐拉角),同時配合雙閉環(huán)串級PID控制算法對四旋翼飛行器進(jìn)行控制。最后利用上位機(jī)軟件進(jìn)行聯(lián)機(jī)調(diào)試。經(jīng)戶外實地飛行測試證明,四旋翼可以很好地平穩(wěn)起飛,并且可以完成自穩(wěn),懸停等動作,達(dá)到了設(shè)計的目的。
注:本文通訊作者為何晉。
參考文獻(xiàn)
[1]高紅,無人機(jī)的多種用途[J]交通與運(yùn)輸,2011,27(5):44-45.GAO Hong. Multipurpose UAV [J]. Traffic and transportation,2011. 27(5):44-45.
[2]杜永博,王欣偉,石航,四旋翼白主飛行器[J]電腦迷:數(shù)碼生活(上旬刊),2013(5):41.
DU Yongbo, WANG Xinwei. SHI Hang. Four- rotor autono- mous aircraft [J]. Computer fans: digital life (Ten-day issue),2013(5):41.
[3]李榮冰,劉建業(yè),賴際舟,等.微小型飛行器慣性組合姿態(tài)確定與航路導(dǎo)航研究[J]航空學(xué)報,2008( z1):178-182.
LI Rongbing, LIU Jianye, LAI Jizhou, et al.Inertial attitudedetermination and air route navigation of micro and small air-craft[J].Acta aerologica sinica. 2008( S1): 178-182.
[4]李瀟,小型四旋翼飛行器發(fā)展研究綜述[J].中國科技博覽,2016(5):376.
LI Xiao. Summary of the development of small four rotor air-craft[J1.China science and technology expo, 2016(5): 376.
[5]吳江,梁敬,陳詩豪,傾轉(zhuǎn)四旋翼無人機(jī)垂直起降階段控制系統(tǒng)研究[J]電子技術(shù)與軟件T程,2016(13):173.
WU Jiang. LIANG Jing, CHEN Shihao. Research on verticaltakeoff and landing phase control system of tilting four-rotorUAV [J]. Electronic technology and software engineering. 2016(13):173.
[6]李堯.四旋翼飛行器控制系統(tǒng)設(shè)計[D].大連:大連理工大學(xué). 2013.
LI Yao. Four-rotor aircraft control system design [D]. Dalian: Dalian University of Technology, 2013.
[7]佚名.慣性測量單元[EB/OL].[2016-03 -28].http://baike.baidu.
com/link? url=lxcfRIBqe03QojZedhf - MgMHaN7PESk4hQUB-Liz_vzKGINpFMIIMlgygV5G057awteDLypkOnFOliyCinUNO-K.Anon. Inertial measurement unit [EB/OL]. [2016-03-28]. http://baike. baidu. com/link? url=lxcfRIBqe03QojZedhf - MgM-HaN7PESk4hQUBLiz_vzKGINpFMIIMlgygV5G057awteDLyp —kOnFOliyCinUNO-K.
[8]盧敬元,曾祥燁,王靜宜,等.四旋翼飛行器的雙回路PID控制器的設(shè)計與實現(xiàn)[J]河北工業(yè)大學(xué)學(xué)報,2016,45(5):16-22.
LU Jingyuan, ZENG Xiangye, WANG Jingyi, et al.Designand implementation of double-loop PID controller for quad-ro-tor aircraftJ]. Journal of Hebei University of Technology,2016. 45(5):16-22.
[9]何嘉繼.四旋翼飛行器建模與控制方法的研究[D].沈陽:東北大學(xué),2012.
HE Jiaji. Research on modeling and control method of four ro-tor aircraft [D]. Shenyang: Northeastern University. 2012.
[10]聶曉華,徐一鳴.面向NSHV目標(biāo)跟蹤的飛行軌跡建模與仿真比較[J]計算機(jī)仿真,2016. 33(3):41-46.
NIE Xiaohua. XU Yiming. Comparison of flight trajectorymodeling and simulation for NSHV target tracking [J]. Comput-er simulation, 2016. 33(3): 41-46.
[11]孟磊,蔣宏,羅俊,等.四旋翼飛行器無刷直流電機(jī)調(diào)速系統(tǒng)的設(shè)計[J]電子設(shè)計工程,2011. 19( 12):140-142.
MENG Lei, JIANG Hong, LUO Jun, et al.Design of BLDCmotor speed regulation system for four rotor aircraft[J]. Elec-tronic design engineering, 2011, 19( 12): 140-142.
作者簡介:曹魯成(1993-),男,回族,山東菏澤人,碩士研究生,主要研究領(lǐng)域為計算機(jī)控制與仿真。
何晉(1965-),男,四川綿陽人,博士,教授,主要研究領(lǐng)域為控制理論與控制工程。
李珂(1994-),男,陜西成陽人,碩士研究生,主要研究領(lǐng)域為控制工程。