西安工業(yè)大學(xué) 樊佳瑞 胡心蕊 李 楊 陳涇源
四軸飛行器自動巡航系統(tǒng)
西安工業(yè)大學(xué) 樊佳瑞 胡心蕊 李 楊 陳涇源
本項目主要研究飛行器自主巡航系統(tǒng),裝載此系統(tǒng)后的模型直升機、四軸飛行器、多軸飛行器將會擁有空間定位、低空巡航等功能。它由STM32F407主控模塊、GPS模塊、氣壓計模塊和磁力傳感器模塊構(gòu)成。主控模塊將從GPS模 塊獲得無人機當(dāng)前坐標信息,從氣壓計模塊得到當(dāng)前的飛行高度,從磁力傳感器模塊獲得飛行器的實際角度,最后通過算法最終控制飛行器飛到目標空域,實現(xiàn)自動巡航。
STM32F407單片機;GPS;氣壓計;磁力傳感器;無線電遙控
四軸飛行器也稱四旋翼直升機,通過電力驅(qū)動,遙控指揮其飛行的一種飛行器。四個螺旋槳對稱分布在機體的前后左右,并且處于同一高度平面。四個螺旋槳形狀大小相同,四個電機位于飛行器的支架末端,支架中間位置可安放電池,控制器及其他設(shè)備。四旋翼飛行器可實現(xiàn)垂直,俯仰,滾轉(zhuǎn),偏航,前后及側(cè)向運動,與常規(guī)飛行器相比,結(jié)構(gòu)更加穩(wěn)定,能獲得比普通飛行器更大的上升力,便于控制,工作效率大大提高。具有自動巡航的四旋翼飛行器在軍事和生活方面應(yīng)用廣泛,例如無人機偵察、制導(dǎo)、空中打擊、自動化武器、航拍航測、高壓線巡航、治安防爆、地質(zhì)勘探、林業(yè)部門防火、搶險救災(zāi)、國土資源管理、生態(tài)環(huán)境保護、城鎮(zhèn)規(guī)劃與市政管理等。
整個系統(tǒng)由PC機、航模遙控器、和四軸飛行器組成。研究人員通過PC機上的地面站軟件規(guī)劃巡航路線,并將巡航路徑數(shù)據(jù)下載到自主巡航控制模塊。飛行器在巡航過程中遇到難以處置問題時,可以切換到遙控模式以免發(fā)生危險。四軸飛行器使用11.1V的鋰電池進行供電,從GPS模塊和氣壓計模塊得到飛行器的具體坐標及飛行高度,通過3DR模塊進行數(shù)據(jù)的傳輸,保證了飛行器穩(wěn)定的數(shù)據(jù)傳輸,并將數(shù)據(jù)顯示在PC機上的地面站監(jiān)控軟件上,這樣便可實現(xiàn)了人機交互的時效性和準確性。四軸飛行器的控制系統(tǒng)由STM32F407主控模塊、GPS模塊、氣壓計模塊、磁力傳感器模塊、控制選擇器和APM飛控構(gòu)成,主控模塊將從GPS模塊、氣壓計模塊和磁力傳感器模塊獲得無人機當(dāng)前坐標信息,然后通過控制算法將控制信號傳遞到APM飛控,最終實現(xiàn)飛行器的自主巡航。
以下是功能框架圖:
圖1 系統(tǒng)原理框圖
2.1 自動飛控系統(tǒng)
自主飛控系統(tǒng)功能是在無人操控的狀態(tài)下,控制飛行器在預(yù)設(shè)的坐標點之間巡航。要完成這個功能就需要多個模塊的互相配合,才能完成給定的任務(wù)。系統(tǒng)采用高精度GPS模塊通過串口獲取經(jīng)緯度數(shù)據(jù),在巡航過程中系統(tǒng)需要不斷調(diào)整飛行姿態(tài),所以利用氣壓計采集飛行器的飛行高度,用磁力傳感器獲得飛行器的偏航角,這兩個模塊都是采用I2C驅(qū)動程序與主控芯片進行通信,以下是自動飛控系統(tǒng)的硬件框圖:
圖2 系統(tǒng)硬件框圖
2.2 STM32F407主控模塊
因為控制芯要計算偏航角并進行PID控制,所以對主控芯片的運行速度要求比較高,通過查詢資料最終選擇STM32F407為主控芯片。STM32F407系列基于最新的ARM Cortex M4內(nèi)核,在現(xiàn)有出色的STM32微控制器產(chǎn)品組合中新增了信號處理功能,并提高了運行速度;STM32F405x集成了定時器、3個ADC、2個DAC、串行接口、外存接口、實時時鐘、CRC計算單元和模擬真隨機數(shù)發(fā)生器在內(nèi)的整套先進外設(shè)。
圖3 選擇控制器硬件電路
圖4 GPS模塊硬件電路
2.3 控制選擇器
控制選擇器由CD4053芯片、主控模塊以及必須元器件構(gòu)成。遙控器產(chǎn)生開關(guān)信號,通過接收機產(chǎn)生PWM信號并傳輸?shù)街骺啬K,單片機對PWM信號進行檢測。通過對PWM信號高電平的檢測,得到PWM信號的占空比。當(dāng)占空比大于0.90時單片機輸出高電平,選通CD4053芯片的x通道關(guān)閉y通道,從而實現(xiàn)STM32F407核心控制器對四軸飛行器的控制;當(dāng)占空比小于0.5時單片機輸出低電平,選通CD4053芯片的y通道關(guān)閉x通道,從而實現(xiàn)遙控器對四軸飛行器的控制(見圖3)。
2.4 GPS模塊
四軸飛行器實現(xiàn)自主巡航需要高精度的GPS模塊提供經(jīng)緯度數(shù)據(jù),在考察了市面上的定位芯片后,我們選用的是NEO-7M GPS模塊,它是一個低功耗主芯片的超小外型GPS接收模組,該產(chǎn)品采用了新一代U-blox芯片,超高靈敏度,具備全方位功能,能滿足專業(yè)定位的嚴格要求,串口輸出數(shù)據(jù)用戶使用方便,而且成本較低(見圖4)。
2.5 氣壓計模塊
氣壓計模塊用來測量飛行器的高度,我們選用的是MS5611-o1BA氣壓傳感器,它是由MEAS(瑞士)推出的一款SPI和I2C總線接口的新一代高分辨率氣壓傳感器,分辨率可達到10cm,該傳感器模塊包括一個高線性度的壓力傳感器和一個超低功耗的24位Σ模數(shù)轉(zhuǎn)換器,具有高穩(wěn)定性以及非常低的壓力信號滯后。
圖5 氣壓計硬件電路
圖6
3.1 偏航角計算理論方法
如圖6所示以A點為參考點計算B點的方位角,假設(shè)A點經(jīng)緯度坐標為(Aw,Aj) , B點經(jīng)緯度坐標為(Bw,Bj)。A,B,C表示球面上的三個點及球面上“弧線”在該點處所夾的角。a,b,c表示A,B,C三點的對“弧”兩端點與地心連線所夾的角。
首先使用三面角余弦公式:
將兩點的經(jīng)緯度數(shù)據(jù)帶入得:
由三角函數(shù)得:
地球近似一個球體,所以采用用球面正弦公式:
將已知條件帶入化簡得:
即得偏航角:
3.2 STM32軟件流程圖
智能控制系統(tǒng)的軟件是整個系統(tǒng)中最重要的部分,也是最難的部分。系統(tǒng)在接受到地面站發(fā)送的坐標信息后進行存儲,并用方向余弦算法計算出當(dāng)前位置到目標點的偏航角,自動巡航控制器將控制四軸飛行器起飛,不斷調(diào)整四軸飛行器的飛行高度和偏航角,當(dāng)飛行器的飛行高度達到預(yù)設(shè)值高度,實際偏航角等于計算的理論值時,飛行器開始飛向目標航點,在飛向目標航點的過程中,控制器將會不斷執(zhí)行上述過程調(diào)整飛行器姿態(tài),這樣即使在有風(fēng)力干擾時飛行器也會自行修正航向,大大提高了自主巡航系統(tǒng)的抗干擾性。以下是系統(tǒng)的軟件流程圖:
圖7 STM32F407軟件流程圖
以下是我們對四軸飛行器自主巡航系統(tǒng)的測試結(jié)果:
目標航點坐標飛行器降落點坐標偏差量34.3841040 N 108.9831048 E 34.3841192 N 108.9831367 E 1.2m 34.3853099 N 108.9837671 E 34.3853461 N 108.9837326 E 0.9m 34.3852763 N 108.9831795 E 34.3852895 N 108.9831467 E 1.4m 34.3841509 N 108.9836924 E 34.3841316 N 108.9836593 E 1.0m 34.3846871 N 108.9834092 E 34.3846612 N 108.9834398 E 0.8m
本文說明了四軸飛行器自主巡航系統(tǒng)的軟硬件實現(xiàn)方案。運用模塊化的硬件電路設(shè)計方式,使得本系統(tǒng)具有出色的再開發(fā)性和外擴性。選用STM32F407為主控制器,具有高效的計算能力及多個外設(shè)接口,為四軸提供了一個強大的大腦,羅盤HMC588L,氣壓計MS5611,和NEO-7M GPS,保證飛行器穩(wěn)定飛行;預(yù)設(shè)許多接口,以便再次開發(fā)與拓展。本文設(shè)計的四軸飛行器具有編程步驟容易、便利操縱,穩(wěn)固性好、拓展性強等優(yōu)勢。經(jīng)過實驗,成功完成四軸飛行器固定高度下的自主巡航。
[1]彭軍橋.非共軸式碟形飛行器研究[D].上海大學(xué),P:1-68.
[2]李俊峰,張雄.理論力學(xué)[M].第二版,北京:清華大學(xué)出版社,2010: 213-216.
[3]楊明志,王敏.四旋翼微型飛行器控制系統(tǒng)設(shè)計[J].計算機測量與控制,2008,16(4):485-490.
[4]謝克明.現(xiàn)代控制理論基礎(chǔ)[M].北京大學(xué)出版社,2002.
[5]葉金虎.無刷直流電動機[M].科學(xué)出版社,1982.
[6]周立功等.ARM嵌入式系統(tǒng)基礎(chǔ)教程[M].北京航空航天大學(xué)出版社,2005.
[7]白立群,李成鐵,周劍峰.基于STM32的飛行控制器系統(tǒng)設(shè)計[D].東北大學(xué)秦皇島分校,2013.
[8]劉杰.四軸飛行器的研究與設(shè)計[D].南京郵電大學(xué),2013.
[9]程學(xué)功.四軸飛行器的設(shè)計與研究[D].杭州電子科技大學(xué),2012.
[10]Altug E,Ostrowski J P,Mahony R.Control of a quadrotor helicopter using visual feedback[C].Proceedings of the 2002IEEE International Conference on Robotics & Automation,Washington DC,2002:72-77.
樊佳瑞(1996—),男,甘肅寧縣人,西安工業(yè)大學(xué)電子信息工程學(xué)院本科在讀,主要從事嵌入式系統(tǒng)研究。