西北民族大學電氣工程學院 鄧二偉
多旋翼自主飛行器
西北民族大學電氣工程學院 鄧二偉
【摘要】本系統(tǒng)提出了以R5F100LEA作為主控板的四旋翼飛行器。選用六軸運動組件MPU6050、電子羅盤HMC5883L 及氣壓計MS5611 等傳感器對飛行器姿態(tài)數(shù)據(jù)進行實時采集,結(jié)合卡爾曼濾波對姿態(tài)數(shù)據(jù)進行數(shù)據(jù)融合。采用PID 來實現(xiàn)四個電機的轉(zhuǎn)速控制。飛行器可實現(xiàn)航向、懸停等多種功能的控制,飛到指定位置并完成航拍。
【關(guān)鍵詞】多旋翼飛行器;PID;卡爾曼濾波
1.1 系統(tǒng)的總體設計
本系統(tǒng)主要由核心控制模塊、傳感器單元、電機驅(qū)動、電源模塊組成,系統(tǒng)總體框圖如圖1所示 ,通過下圖可以看到:由核心處理器檢測傳感器單元的狀態(tài),從而得到飛機的四軸的加速度和角速度,從而結(jié)算出四軸的姿態(tài)角度(包括俯仰角,橫滾角和偏航角)。通過stm32模擬遙控器的變量(即油門,偏航,左右,前后)并通過串口發(fā)送個瑞薩套件,最后通過PID控制算法得到所需加到四個電機的PWM的值,從而讓四軸在空中完成一系列的任務。本系統(tǒng)功能的實現(xiàn)是需要電源供電來提供能量的,它就是我們控制系統(tǒng)的“心臟”,而核心控制器就是“大腦”,從而電機也就是我們的“四肢”,傳感器單元也就是我們的“感官。
1.2 控制系統(tǒng)的論證與選擇
方案一:選用飛控(STM32)來采集數(shù)據(jù)和處理數(shù)據(jù)并控制電機,運用瑞薩開發(fā)套件中的RL78/G13板來模擬遙控器輸入信號,兩芯片之間通過串口通信。
方案二:本系統(tǒng)選用瑞薩開發(fā)套件中的RL78/G13板來采集和處理數(shù)據(jù)并控制電機,STM32來模擬遙控器,兩芯片之間通過串口通信。
經(jīng)分析,方案一使用了飛控,但是對于內(nèi)部的編程的理解不夠深入,在不使用遙控器的情況下,使用瑞薩模擬遙控器和飛控進行通信變得困難。方案二所有程序都需要移植,對于飛行器飛行調(diào)試時更加得心應手,節(jié)省了大量的調(diào)試時間。因此設計選用了第二套方案。
2.1 硬件電路的分析
核心控制器的功能包括傳感器數(shù)據(jù)的采集、對數(shù)據(jù)的融合、濾波處理、姿態(tài)解算、PID算法的實現(xiàn)、PWM輸出等。由于四旋翼要求姿態(tài)解算和更新必須足夠快速,以跟上空中四旋翼姿態(tài)的迅速變化,而且程序中也有大量的計算,所以對單片機的處理性能要求較高。傳統(tǒng)的8位單片機已經(jīng)不能滿足控制需求。經(jīng)過綜合考慮,選用了瑞薩開發(fā)套件中的開發(fā)板和微控制器STM32單片機,該單片機屬于STM32家族,基于Coterx-M3內(nèi)核,使用8M晶振,經(jīng)過內(nèi)部倍頻電路,主頻最高可以達到72MHz,擁有64KB的Flash存儲容量,4個通用定時器和2個高級定時器,可以進行PWM輸入捕獲和PWM輸出,2 個I2C接口和3個SPI接口,用于接收瑞薩傳輸?shù)臄?shù)據(jù)和控制電機的輸出,工作電壓為3.3V。
2.2 電源模塊的分析
在本次設計中,對供電系統(tǒng)的要求特別高,如果供電不嚴謹,將會導致整個系統(tǒng)不穩(wěn)定,特別是對于一些傳感器模塊。本設計采用2200毫安的飛行器專用電池給各個模塊供電,使用LM2596可調(diào)降壓模塊帶數(shù)顯電壓表顯示穩(wěn)壓電源模塊進行穩(wěn)壓,并制作相應的電路,產(chǎn)生3.3V電源對傳感器單元、核心控制模塊供電,電調(diào)直接使用飛機電源。
2.3 傳感器模塊的分析
本設計采用的是MPU6050,MS5611,HMC5833這三塊傳感器。MPU6050是6軸傳感器包括三軸的加速度,三軸的陀螺儀。HMC5883是磁阻傳感器(也就是磁羅盤),它可以檢測到3軸的磁場的大小,從而推出磁角。MS5611是氣壓計,它能夠測得四軸的所處位置的大氣壓,從而得到四軸的角度。三軸陀螺儀測量橫滾、傾斜、航偏三個軸的姿態(tài)角速度,經(jīng)過積分,可以得到姿態(tài)角度,同時三個姿態(tài)角速度也用于串級PID控制器中的內(nèi)環(huán)速度反饋;三軸加速度計輸出重力加速度和四旋翼本身加速度沿著橫滾、傾斜和航偏三個運動方向的分量,經(jīng)過計算可以得到橫滾角、傾斜角和航偏角三個姿態(tài);三軸磁力計測量地磁場在橫滾、傾斜和航偏三個軸的分量,經(jīng)過計算也可以得到三個姿態(tài)角。因為MEMS傳感器的精度比較低,所以程序中要對三個傳感器的數(shù)據(jù)進行融合,才能得到準確的姿態(tài)角。氣壓計用于測量四旋翼的高度。
2.4 電機驅(qū)動模塊
由于無刷電機是功率器件,需要較大的驅(qū)動電流,一般要求驅(qū)動電流為安培級,有時達到幾十安培,而STM32驅(qū)動能力不足以直接驅(qū)動無刷電機,本設計中選用好盈樂天 XRotor 20A。該電調(diào)是多旋翼專用電調(diào),油門響應速度極快,而且對電機有優(yōu)化的固件,電機兼容性很強,自適應能力強,使用起來很簡單。油門信號線為雙絞線,能夠降低信號串擾,而且最高可支持刷新高達600Hz的油門信號線,更關(guān)鍵的是兼容各種飛控,因此本設計采用該電調(diào)。
3.1 模型的搭建
本次設計,我們利用瑞薩開發(fā)板來模擬控制器,利用PWM模型來模擬各種控制信號,因此將
3.2 飛行目標
本次設計對飛行器的姿態(tài)、航向、懸停等多種基本功能進行基本控制,能夠?qū)崿F(xiàn)飛行高度大于30cm,小于120cm的平穩(wěn)飛行,并且實現(xiàn)飛行器的定高。飛行器可以實現(xiàn)固定路線飛行,成功的飛到某一指定位置并完成航拍。
本次設計我們采用X型飛行方案,因此我們需要調(diào)試兩個方面的穩(wěn)定性,一是飛行方向穩(wěn)定性,二是懸浮平衡穩(wěn)定性。首先,對平衡穩(wěn)定性進行調(diào)試。首先將飛行器的其中一軸捆綁在橫木上,要求橫木是圓形的。然后將其搭在木架上,先對一側(cè)進行平衡穩(wěn)定的調(diào)試。電機啟動后,撥動一側(cè),觀察兩點,回復速度和穩(wěn)態(tài),根據(jù)現(xiàn)狀調(diào)整PID參數(shù)的值。然后同上步驟調(diào)整另一側(cè)的平穩(wěn)性。其次是對飛行方向的調(diào)試。
5.1 測試方案
(1)硬件測試;(2)軟件仿真測試;(3)硬件軟件聯(lián)調(diào)。
5.2 硬件測試與儀器
測試條件:1)檢查多次,保證仿真電路和硬件電路必須與系統(tǒng)原理圖完全相同。2)使用萬用表,看各處連線是否正常,是否出現(xiàn)短路與虛焊,確保系統(tǒng)穩(wěn)定。3)運用keil和cubesuit+對程序進行調(diào)試。4)將數(shù)據(jù)燒入芯片中觀察相應現(xiàn)象后使用上位機和數(shù)字示波器觀察相應數(shù)據(jù)和相應輸出波形。5)再次結(jié)合硬件系統(tǒng)的現(xiàn)象,使用keil5 和cubesuit+對程序進行調(diào)試,測試儀器為上位機、數(shù)字示波器和數(shù)字萬用表。
本設計中,選用瑞薩開發(fā)套件中的RL78/G13板作為主控芯片,通過MPU6050、HMC5883、LMS5611 等傳感器采集得到數(shù)據(jù),采用卡爾曼濾波算法求得有效、可靠的角速度數(shù)據(jù),結(jié)合雙閉環(huán)PID 算法,調(diào)控四旋翼飛行器兩組四個電機的旋轉(zhuǎn),最終研制出了四旋翼飛行器,并進行了多次試飛。試飛實驗時其參數(shù)設定為: 姿態(tài)解算的頻率為400 Hz卡爾曼濾波頻率為800 Hz。實驗結(jié)果表明:完成了飛行器的姿態(tài)、航向、懸停等多種基本功能的控制,達到了預期設計目標,同時也為后續(xù)研究提供了一個平臺,也為在此基礎上對系統(tǒng)建模、姿態(tài)解算、互補濾波等方面進行下一步的研究指明了方向。
參考文獻
[1]魏麗文.四旋翼飛行器控制系統(tǒng)設計[D].哈爾濱∶哈爾濱工業(yè)大學,2010.
[2]夏喜旺,杜涵.關(guān)于大角度范圍內(nèi)四元數(shù)與歐拉角轉(zhuǎn)換的思考[J]..導彈與航天運載技術(shù),2012,5(321)∶47-53.
[3]崔錦泰,陳光榮.戴洪德譯.卡爾曼濾波及其實時應用[M].北京∶清華大學出版社,2013.