許奇


摘要:該文對四旋翼飛行器的飛行原理進行了簡單的介紹和分析,并根據其原理進行機械結構上的設計,能讓四旋翼飛行器在空中能夠平穩運行。通過研究設計,利用合適的控制方法能實現對四旋翼飛行器垂直運動、前后運動、側向運動、滾轉運動、俯仰運動、偏航運動共六個自由度的控制,同時驗證了四旋翼飛行器整體系統的硬件和軟件的設計的可行性,使其能通過遙控控制實現平穩地飛行。
關鍵詞:四旋翼無人機;STM32F405;電機控制;飛行原理;卡爾曼濾波
中圖分類號:TP391? ? ? 文獻標識碼:A
文章編號:1009-3044(2021)36-0173-02
開放科學(資源服務)標識碼(OSID):
隨著社會的發展,在越來越多的領域四旋翼無人機有著獨特的優勢,很難找到它的替代品。萬物互聯的大時代正在到來,隨著通信技術、智能控制技術的快速發展,無人機的應用范圍更加寬泛,人們對無人機的使用需求也在日益增加,無人機的消費市場正在迅速打開。不難預見,在未來人們的日常生活中,民用無人機將提供更多的方便和幫助。民用無人機產業鏈正在逐漸完善,規模化生產已基本實現,未來的市場規模巨大,商業價值顯著,也正是因為這樣,對四旋翼無人機的研究具有良好的市場前瞻性。
1 國內外研究現狀
從1907年開始,在國外對多旋翼飛行器的研究就已經出現了萌芽,由于當時的計算機水平和電子技術的水平不高,盡管已經有一些實際的成品被制作出來,但多旋翼飛行器還是沒有得到廣泛的應用。
在21世紀以來,國內外的許多機構和學校都在自己的領域以四旋翼飛行器進行大量的研究和應用,不斷地探索四旋翼飛行器的各種方面的技術和算法,以此來研發出更多能滿足人們需求的四旋翼飛行器,而且由于目前的研究方向主要集中在小型和微型飛行器上面,嵌入式技術作為微電子技術的重要分支也在其中扮演了重要的角色。
隨著硬件制造技術的飛速的發展,四旋翼無人機的微系統、傳感器、處理器芯片以及控制理論等技術迎來了一個全新的時期。硬件材料性能越來越好,集成度也越來越高,價格也越來越便宜,這些特點不僅受到越來越多研究機構以及公司的重視,也使四旋翼無人機成為優良的無人機研制平臺。不光是國內外的重點大學,還有諸多科研機構以及商業公司也都想抓住這次機會,對四旋翼無人機進行深入研發。目前,商用四旋翼直升機模型是研究四旋翼無人機的主要形式,重點研究其中的建模、控制和規劃等環節。
2 系統的硬件設計
硬件總體方案設計如下:
(1)將STM32F407芯片作為主控單元,系統驅動需要+5V的直流電壓;
(2)使用MPU6050姿態傳感器模塊來實時檢測飛行器的飛行姿態;
(3)采用PWM控制信號來控制電機轉速實現飛行器姿態改變;
(4)遙控控制模塊采用的是Microzone航模專用遙控器來發送和接收控制信號。
系統的總體框圖如圖1所示。
AT89C51是單片機入門的一款芯片,其處理速度已遠遠達不到設計要求,就將STC15和STM32兩款芯片作為設計的主控芯片的方案選擇,由于身邊剛好有STC32芯片的設計,就將STM32F405芯片作為本次設計的主控芯片。STM32F405芯片的工作電壓范圍在2.0V~3.6V,具有2個I?C接口,且具有112個快速I/O口,6個通道用于PWM輸出,其運算精度極高,存儲EEPROM容量大,能夠滿足飛行器的實時姿態檢測的數據存儲需求。
本次設計的是四旋翼飛行器,所以選用的是體積小的直流無刷電機。直流電機具有能量耗能低、控制率高、可利用性大的特點,與有刷電機相比,其能量轉換率更高,噪音小,響應速度快,直流無刷電機的雖然價格成本稍高,但是后期的維護成本較小,因此選擇直流無刷電機作為本次設計的電機驅動系統。電機驅動模塊是通過STM32的PWM通道輸出方波脈沖,通過改變占空比來驅動電機,重復頻率為20Hz~50Hz,從而控制電機的轉速,改變飛行姿態。電機驅動模塊的電路原理圖如圖2所示。
3 系統的軟件設計
3.1 軟件系統設計方案
整個軟件的系統設計由單片機主程序、姿態檢測程序、無線通信程序、電機驅動程序組成。飛行器控制軟件的編譯環境是在Keil5上采用C語言進行編寫,其目的是在硬件設計的基礎上,結合軟件編程實現對硬件的驅動,使其實現預想的功能,滿足設計的要求,同時還可以進行控制,對設計進行操作。C語言是目前應用最廣泛。最基礎的計算機語言,使用C語言編寫系統軟件程序能使開發者更容易理解和學習,在需要修改的時候也更方便。在本次系統的設計中,運用到了比較復雜的算法,所以選用C語言進行編寫。在硬件設計階段采用的控制芯片為STM32F405,軟件設計中編程調試的軟件采用的是Keil5的嵌入式集成開發環境。C語言可以很容易在軟件中編程和調試,并且支持SWD實時硬件仿真的調試,因為在課程學習中較為熟悉Keil5軟件,故而選擇該軟件作為本次設計的軟件設計與調試的平臺。
3.2 單片機主程序流程
單片機系統的主程序負責對整體系統的控制和協調其他子程序的實現功能和正常運行。上電后程序開始先對整個系統進行初始化,判斷整個系統是否正常運行。若系統能正常進行,則開始進入程序的主程序循環,不斷采集飛行器實時姿態信號,并與姿態檢測模塊得到的數據相結合,并將這些得到的數據信息存儲起來,以備后面的中斷處理程序使用。初始化完成的是對硬件的初始化、對傳感器模塊的初始化、對軟件系統參數的初始化等。其中MPU6050中包括陀螺儀和加速度計,設置采樣頻率為100Hz,而電機輸出信號的頻率為50Hz,即每檢測到兩次飛行器姿態數據就輸出一次控制信號。
4 結論
本文根據四旋翼飛行器的特點對四旋翼飛行器的控制系統進行設計與研究,提出了基于STM32系列的四旋翼飛行器的研究設計方案,根據設計方案展開對芯片和模塊的論證,以及硬件電路的原理設計和電路板的制作。在實際調試的過程中,發現飛行器懸停不穩定,很容易受到氣流的影響。導致失控,應該再增加氣壓計、磁力計和GPS 模塊等慣性測量模塊來使飛行器能更穩定地飛行,實現定高、定點的功能,同時將傳感器模塊設計得更加合理,以避免干擾產生誤差,影響姿態測量的精度。
參考文獻:
[1] 余莉,顧澤滔,王偉,等.四旋翼無人機的高度控制[J].測控技術,2016,35(1):73-76.
[2] 豐趁得,劉慶元,歐野.MEMS-IMU/GPS/GPRS組合導航方案設計與實現[J].傳感器世界,2016,22(5):24-28.
[3] 潘佳笛.基于雙核CORTEX-M4的MAVs傳感器系統的研究與實現[D].南京:南京信息工程大學,2016.
[4] 王亞丁,徐俊臣,李冠宇,等.基于FreeRTOS系統和LwIP協議棧的網絡通訊[J].電子技術與軟件工程,2016(20):14-15.
[5] 王積翔.四旋翼無人飛行器的飛行姿態控制研究[D].哈爾濱:哈爾濱工程大學,2017.
【通聯編輯:唐一東】