李金鵬 丁玉琳 孫文峰 張心歌
【摘要】:四旋翼無人機由于制造成本低,運動原理簡單,只需通過改變四個電機的轉速即可實現運動控制,具有優良的操控性和機動性,可以在小區域范圍內起飛,盤旋,著陸。因此我們使用一種以STM32 高性能單片機為核心的飛行控制器,采用模塊化設計思想,運用經典的PID 控制方法,實行其平衡控制。
一、引言:
四旋翼飛行器是一種具有4個螺旋槳的飛行器,4個螺旋槳呈十字交叉結構,對稱分布在機體的前、后、左、右4個方向,并且處于同一高度水平面,4個電機對稱安裝在機架末端,機架中央安放飛行控制器,飛行器通過調節四個電機轉速來實現升力的變化,從而控制飛行器完成各種姿態和動作。
四旋翼飛行器只有四個輸入力,同時卻有六個狀態輸出,所以它是一種欠驅動系統。四旋翼飛行器的結構形式如圖1所示,電機1和電機3逆時針旋轉,電機2和電機4順時針旋轉,各個旋翼對機身所施加的反扭矩可以相互抵消。由于飛行器自身的不穩定結構,所以需要一種能夠隨時檢測,不斷調整的控制方法。
二、設計原理:
飛行控制器主要有微控制器、陀螺儀、加速度計、磁力計、氣壓計、GPS、無線通信模塊等組成。飛行器由于安裝、外界干擾、零件之間的不一致等原因會形成飛行器力量不均衡,導致飛行器容易發生側翻。飛行控制器通過各路傳感器獲取實時數據,經過計算求出姿態角,再根據無線接收機收到遙控命令數據進行比較,計算出控制量,對這些控制量進行PID計算,將輸出量轉化為PWM信號,分別控制各個電機轉速,達到想要的姿態和位置。
三、硬件設計:
四旋翼飛行控制系統的微控制器選用目前市場最流行的STM32,具有資源多,計算速度快,價格低廉等優點,傳感器分為陀螺儀、加速度計和羅盤。陀螺儀用于檢測角速度,在生產應用中會引入三軸偏差和零點偏差,所以采用積分推算校準的方法對陀螺儀進行精確校準。加速度計是用于檢測飛行器加速度的傳感器,飛行器在誤差消除方面使用加速度計的測量值對陀螺儀x軸和y軸方向的漂移做參考【1】,對陀螺儀的漂移誤差進行校準。選用MPU6050,大大降低了陀螺儀與加速度計之間對準是產生的誤差,并使用數字低通濾波器,過濾無人機造成的高頻震動,避免了四旋翼的姿態測量誤差,數據之間采用I2C端口連接,由于I2C總線屬于低速通信號總線,根據I2C總線的時序規則,可以在STM32任意兩個模塊實現I2C通信,極大地擴展了I2C總線個數及功能。
四、軟件設計:
4.1系統程序
系統首先完成MCU內部初始化,開始運行STM32處理器用到的外部設備,其中有NVIC中斷處理器、USART串口通信、定時器、時鐘系統、I2C接口;之后是初始化硬件和系統姿態解算,運用模塊化設計。最先的是定時器中斷開啟,通過2.5ms的計時中斷與I2C接口獲得三軸數字羅盤的和MEMS傳感器的測量數據,之后根據傳感器的特點進行濾波,再利用初始校正所得到的校正數據校正讀取的數據,校正完成后,對其做加權平均減少誤差,之后進行地磁數據校準與四元數姿態解算,最后數據融合【2】,輸出校準后的姿態角信息。
4.2 PID控制算法
四旋翼無人機因其結構對稱,將飛行控制系統分成姿態控制系統與位置控制系統,對兩種飛行控制系統分別進行控制設計。但是在通常情況下,飛行姿態會直接影響到無人機的位置,如果把無人機姿態控制器稱為內環控制器,位置控制器稱為外環控制器。首先需要得出四旋翼無人機姿態誤差信號也就是當前獲取到的姿態角與期望值的姿態角的差值,之后再通過串級PID控制算法得出各個電機的調整量,將調整量信號傳遞給四個旋轉的電機,通過改變四個電機的轉速來實現控制整個系統的姿態,使得姿態誤差始終趨向最小,最終形成雙極閉環回路控制系統【3】,控制系統結構如圖2所示。
五、總結:
本文主要論述了四旋翼的飛行原理和控制方式,實現了四旋翼飛行器的硬件、軟件的設計要求,四旋翼雖然達到了設計的要求,但仍有許多問題需要解決:PID的參數需要經過多次實驗調整,飛行器適應能力差,穩定性需要提高,使能夠具備自主起飛、巡航、偵察的能力。
【參考文獻】
【1】鄒佳池.羅盤和加速計校正方法.微信公眾號“知控制”.
【2】吳濤,戈惠梅,顧志華.四軸無人飛行器控制系統設計[J],河南科技,2014.
【3】陳自力.無人機-嵌入式控制[M].北京:國防工業出版社,2015.
基金項目:西北民族大學電氣工程學院“雙E”大學生科研創新項目資助
(項目編號:201842509)