文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2016.10.006
中文引用格式: 余單奕,嵇佳輝,郝立果. 四旋翼飛行平臺(tái)控制系統(tǒng)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2016,42(10):29-32.
英文引用格式: Yu Danyi,Ji Jiahui,Hao Liguo. Design of control system for four rotor flight platform[J].Application of Electronic Technique,2016,42(10):29-32.
0 引言
四旋翼飛行平臺(tái)作為一種利用旋翼產(chǎn)生的空氣動(dòng)力來克服自身重力飛行的動(dòng)力裝置模型,飛控人員只需通過操控地面站就能對飛行器進(jìn)行控制,具有成本低、無人化、靈活高效和隱蔽性好等優(yōu)點(diǎn),被廣泛運(yùn)用于軍事、民用和科學(xué)研究領(lǐng)域。本文介紹了一種基于Atmega128單片機(jī)的四旋翼飛行控制系統(tǒng),通過采集三軸加速度和陀螺儀數(shù)據(jù),解算出飛行器的姿態(tài),并通過控制四個(gè)旋翼的轉(zhuǎn)速輸出實(shí)現(xiàn)對飛行平臺(tái)的穩(wěn)定控制。
1 總體方案與飛行原理
1.1 總體設(shè)計(jì)方案
該飛行控制系統(tǒng)主要由主控模塊、無線遙控模塊、MPU6050運(yùn)動(dòng)處理模塊、驅(qū)動(dòng)模塊、電源控制等組成。系統(tǒng)框圖如圖1所示。
主控模塊是系統(tǒng)的數(shù)據(jù)處理核心,運(yùn)動(dòng)處理模塊負(fù)責(zé)采集姿態(tài)數(shù)據(jù),無線遙控模塊進(jìn)行指令發(fā)送,電源控制和驅(qū)動(dòng)模塊控制電機(jī)轉(zhuǎn)速的輸出。
主控模塊由Atmega128單片機(jī)作為核心處理器,通過MPU6050運(yùn)動(dòng)處理模塊采集三軸加速度和陀螺儀數(shù)據(jù),原始數(shù)據(jù)經(jīng)過卡爾曼濾波算法優(yōu)化后就可得到相應(yīng)的歐拉角,即解算獲得了飛行器的姿態(tài)。通過無線遙控模塊將姿態(tài)調(diào)整指令發(fā)送到主控模塊的輸入捕獲端,主控模塊再將采集到的指令與飛行器自身的姿態(tài)數(shù)據(jù)進(jìn)行比對,經(jīng)過PID自動(dòng)控制的反饋調(diào)節(jié),輸出給電源控制和驅(qū)動(dòng)模塊調(diào)控旋翼的轉(zhuǎn)速輸出,最終實(shí)現(xiàn)各種環(huán)境下的穩(wěn)定飛行。
1.2 動(dòng)力學(xué)飛行原理
四旋翼飛行平臺(tái)有六種基本運(yùn)動(dòng)狀態(tài),具有六個(gè)自由度,可以分別沿X軸、Y軸、Z軸平移或旋轉(zhuǎn),屬于欠驅(qū)動(dòng)系統(tǒng)。這六個(gè)自由度的控制均可以通過調(diào)節(jié)不同無刷電機(jī)的轉(zhuǎn)速輸出來實(shí)現(xiàn)。設(shè)作為剛體的飛行器質(zhì)量為m,質(zhì)心為O,作用在飛行器上的合外力矢量為F,M是相對于O點(diǎn)的合外力矩矢量,I為剛體繞坐標(biāo)軸的轉(zhuǎn)動(dòng)慣量。根據(jù)牛頓第二定律,其相對于質(zhì)心的動(dòng)力學(xué)方程在慣性坐標(biāo)系O′XYZ中的投影式為:
根據(jù)對質(zhì)心的動(dòng)量矩定理,飛行器繞質(zhì)心O運(yùn)動(dòng)的姿態(tài)動(dòng)力學(xué)方程在本體坐標(biāo)系OXYZ中的投影式為:
其中第一組的3個(gè)二階微分方程描述了飛行器的3個(gè)質(zhì)心平動(dòng)自由度;另外兩組方程確定了3個(gè)轉(zhuǎn)動(dòng)自由度,描述了飛行器繞質(zhì)心的運(yùn)動(dòng)規(guī)律,即姿態(tài)運(yùn)動(dòng)。聯(lián)立三組方程就得到了剛性六自由度飛行器一般運(yùn)動(dòng)的全部運(yùn)動(dòng)方程。
四旋翼飛行平臺(tái)的四個(gè)螺旋槳分為一組正槳和一組反槳,兩個(gè)相對的槳為一組,當(dāng)四個(gè)電機(jī)旋轉(zhuǎn)時(shí)槳所產(chǎn)生的氣流均向下,由于正槳和反槳的旋轉(zhuǎn)方向相反,飛行器平穩(wěn)飛行時(shí)的陀螺效應(yīng)和空氣動(dòng)力扭矩可以互相抵消。
2 硬件電路的設(shè)計(jì)
2.1 控制系統(tǒng)工作原理及設(shè)計(jì)
系統(tǒng)采用Atmega128單片機(jī)作為主控模塊芯片,通過IIC通信方式將MPU6050運(yùn)動(dòng)處理模塊的六個(gè)數(shù)據(jù)(三軸加速度AD值和三軸角速度AD值)讀出,經(jīng)過姿態(tài)融合后得到飛行器的三個(gè)歐拉角即解算出了當(dāng)前的飛行姿態(tài)。再將輸入捕獲管腳采集到的不同通道的PPM控制指令數(shù)據(jù)與當(dāng)前飛行姿態(tài)數(shù)據(jù)進(jìn)行PID自動(dòng)調(diào)節(jié),最后利用快速PWM輸出功能實(shí)現(xiàn)對多個(gè)無刷電機(jī)驅(qū)動(dòng)器的控制和電源控制。
其中,姿態(tài)融合所采用的就是卡爾曼濾波算法。卡爾曼濾波是一種線性最小方差估計(jì),其算法是遞推的,因此適用于多維隨機(jī)過程的估計(jì),并采用動(dòng)力學(xué)方程即狀態(tài)方程描述被估計(jì)量的動(dòng)態(tài)變化規(guī)律,同時(shí)也適用于非平穩(wěn)過程,其離散型算法可以直接在單片機(jī)上實(shí)現(xiàn)??柭鼮V波理論為一種重要的最優(yōu)估計(jì)理論被廣泛應(yīng)用于組合導(dǎo)航系統(tǒng)的設(shè)計(jì)。
設(shè)tk時(shí)刻的被估計(jì)狀態(tài)Xk受系統(tǒng)噪聲序列Wk-1驅(qū)動(dòng),驅(qū)動(dòng)機(jī)理由下述狀態(tài)方程描述。
對Xk的量測滿足線性關(guān)系,量測方程為:
2.2 PPM信號(hào)采集的工作原理及設(shè)計(jì)
無線遙控模塊采用的是八通道的2.4 GHz無線射頻遙控技術(shù),以無線的方式將油門、方向等指令信號(hào)發(fā)送到主控模塊的單片機(jī)。無線遙控模塊發(fā)出的信號(hào)是PPM信號(hào),而PPM信號(hào)可以理解為多個(gè)PWM信號(hào)的合成。
首先要將PPM信號(hào)分解成多通道PWM信號(hào),一幀PPM信號(hào)的長度為20 ms,而分離出來的PWM信號(hào)脈寬為0~2 ms,變化范圍為1~2 ms之間。因此一幀PPM信號(hào)至多可以包含1個(gè)同步信號(hào)和9個(gè)通道的PWM信號(hào),示波器測試的PPM波形如圖2所示。
本系統(tǒng)采用主控芯片自帶的輸入捕獲功能來對PPM信號(hào)進(jìn)行采集,然后通過CD4051模擬電子開關(guān)將PPM信號(hào)分離成4路PWM信號(hào),輸出控制驅(qū)動(dòng)模塊各個(gè)驅(qū)動(dòng)器改變無刷電機(jī)的轉(zhuǎn)速,從而間接實(shí)現(xiàn)無線遙控模塊對飛行器飛行姿態(tài)的控制。
3 軟件程序的設(shè)計(jì)與分析
3.1 程序框架的設(shè)計(jì)
在系統(tǒng)中,軟件應(yīng)用模塊化設(shè)計(jì)。首先主控模塊對單片機(jī)的功能及其與各模塊的接口進(jìn)行初始化,其次運(yùn)動(dòng)處理模塊對MPU6050的DMP功能進(jìn)行初始化,分為加載固件和刷新數(shù)據(jù)兩部分。MPU6050先調(diào)用內(nèi)部數(shù)據(jù)庫的數(shù)據(jù)進(jìn)行計(jì)算獲得原始數(shù)據(jù),并將此原始數(shù)據(jù)加載到FIFO存儲(chǔ)器里,其中包括四元素數(shù)據(jù)、陀螺儀數(shù)據(jù)和加速度數(shù)據(jù)。單片機(jī)再通過IIC通信方式將MPU6050的數(shù)據(jù)讀出,通過編程輸入的動(dòng)力學(xué)公式計(jì)算出相應(yīng)的歐拉角,即得到飛行器的飛行姿態(tài),之后單片機(jī)通過輸入捕獲功能獲取遙控模塊發(fā)來的PPM信號(hào),將接收到的PPM信號(hào)分離出油門、俯仰、翻滾和偏航數(shù)據(jù),并將這些數(shù)據(jù)與采集到的姿態(tài)數(shù)據(jù)進(jìn)行對比,如存在偏差則通過PID自動(dòng)調(diào)節(jié)來進(jìn)行調(diào)整,調(diào)整過程直到消除這些偏差為止。程序的設(shè)計(jì)流程圖如圖3所示。
3.2 程序控制算法的實(shí)現(xiàn)
本系統(tǒng)采用的控制算法是PID控制。主控模塊需要將無線遙控模塊給定的期望姿態(tài)和運(yùn)動(dòng)處理模塊解算出的實(shí)時(shí)姿態(tài)進(jìn)行比對,當(dāng)存在偏差量時(shí),驅(qū)動(dòng)模塊同時(shí)控制四個(gè)電機(jī)的轉(zhuǎn)速使其快速穩(wěn)定地達(dá)到預(yù)期給定的效果消除偏差,PID控制器結(jié)構(gòu)如圖4所示。
比例系數(shù)P是對系統(tǒng)最直接的調(diào)節(jié),在控制過程中需要提供合適的P值,過大或過小的P值,都將導(dǎo)致系統(tǒng)的不穩(wěn)定,合適的P值應(yīng)該使系統(tǒng)處在一個(gè)等幅震蕩的狀態(tài)。積分系數(shù)I是對過去的控制過程中存在的偏差進(jìn)行積分,只要系統(tǒng)存在控制與期望之間的偏差,積分運(yùn)算就會(huì)一直進(jìn)行下去直到消除偏差。微分系數(shù)D能預(yù)測系統(tǒng)的變化趨勢,從而提前控制以遏制不穩(wěn)定情況的產(chǎn)生。
3.3 上位機(jī)軟件
在軟件調(diào)試的過程中,采用了具有基本收碼、高級(jí)收碼、波形顯示和飛控狀態(tài)顯示等功能的四軸上位機(jī)調(diào)試軟件。計(jì)算機(jī)與單片機(jī)采用串口的通信方式,通過制定好的協(xié)議和波特率便可將數(shù)據(jù)發(fā)送到計(jì)算機(jī),在計(jì)算機(jī)上以三維動(dòng)態(tài)圖的效果顯示出來。在飛控狀態(tài)界面,可以將遙控模塊發(fā)送過來的油門、俯仰角、翻滾角、偏航角的值以柱狀圖的形式進(jìn)行顯示;在波形顯示界面,可以根據(jù)需要將數(shù)據(jù)繪制成多條曲線進(jìn)行對比和分析,上位機(jī)調(diào)試軟件的界面如圖5所示。
將上位機(jī)的波特率設(shè)置為115 200 b/s。每秒鐘可傳輸約10 472幀數(shù)據(jù),可以滿足飛控系統(tǒng)對傳輸率的要求。
4 測試結(jié)果
4.1 加速度、陀螺儀數(shù)據(jù)測試結(jié)果
采用MPU6050的DMP功能求解有關(guān)數(shù)據(jù),通過發(fā)送數(shù)據(jù)到上位機(jī)觀察,得到加速度和陀螺儀數(shù)據(jù),數(shù)據(jù)測試結(jié)果如圖6所示。
4.2 PPM解碼測試與分析
通過程序?qū)⑦b控模塊發(fā)出的PPM信號(hào)進(jìn)行解碼,把各通道數(shù)據(jù)通過串口發(fā)送到上位機(jī)調(diào)試軟件,得到的數(shù)據(jù)如表1所示。在數(shù)據(jù)處理中,PPM解碼的最小值為250,最大值為500,而單片機(jī)的快速PWM輸出功能滿值為255,因此將PPM解碼的變化差值設(shè)計(jì)為250就可以與PWM產(chǎn)生模塊值對應(yīng)。
4.3 飛行姿態(tài)解算測試與分析
對飛行器姿態(tài)解算的準(zhǔn)確性進(jìn)行驗(yàn)證和分析時(shí),分別對繞X軸、Y軸、Z軸旋轉(zhuǎn)產(chǎn)生的翻滾角、俯仰角和偏航角進(jìn)行驗(yàn)證,并測試測量范圍,姿態(tài)解算測試結(jié)果如表2所示。通過表2中的數(shù)據(jù)可知,俯仰角、翻滾角、偏航角的測量范圍均接近正負(fù)180°,解算的數(shù)據(jù)與實(shí)際數(shù)據(jù)存在的偏差較小,滿足本系統(tǒng)的設(shè)計(jì)要求。
5 結(jié)論
從測試結(jié)果來看,各指標(biāo)均達(dá)到了本系統(tǒng)的設(shè)計(jì)要求,可以較為精確地控制四旋翼飛行平臺(tái)的飛行姿態(tài)。使用MPU6050的DMP庫進(jìn)行數(shù)據(jù)的整合納入和標(biāo)準(zhǔn)化細(xì)分,將單片機(jī)從繁重的計(jì)算工作中解放了出來,同時(shí)減少了大量的封裝空間,使系統(tǒng)較好地實(shí)現(xiàn)了實(shí)時(shí)性和穩(wěn)定性,提高了抗干擾能力,達(dá)到了預(yù)期的效果。
參考文獻(xiàn)
[1] 秦永元.卡爾曼濾波與組合導(dǎo)航原理[M].西安:西北工業(yè)大學(xué)出版社,2012.
[2] 何獻(xiàn)忠.位置隨動(dòng)系統(tǒng)軟件控制的研究[J].儀表技術(shù)與傳感器,2010(4):45-47.
[3] 巫華芳.基于三軸陀螺儀傳感器的無線位置伺服算法應(yīng)用[J].儀表技術(shù)與傳感器,2016(1):1002-1841.
[4] 梅碩基.慣性儀器測試及數(shù)據(jù)分析[M].西安:西北工業(yè)大學(xué)出版社,1984.
[5] 以光衢.慣性導(dǎo)航原理[M].北京:航空工業(yè)出版社,1987.
[6] 趙晨,杜勇.四旋翼無人機(jī)在輸電線路巡視中的應(yīng)用[J].湖北電力,2012,36(6):35-36.
[7] 吳東國.基于四旋翼飛行器平臺(tái)的低空遙感技術(shù)在公路環(huán)境調(diào)查中的應(yīng)用[J].公路交通技術(shù),2012(6):137-138.
[8] 蔣慶仙.關(guān)于MEMS慣性傳感器的發(fā)展及在組合導(dǎo)航中的應(yīng)用前景[J].測繪通報(bào),2006(9):5-8.