蘇柳舒,蔣澤輝,張 穎,徐天越,吳 陽
(無錫太湖學院智能裝備工程學院,江蘇無錫 214064)
基于物聯網技術在現代農業領域的應用,智慧農業已經開始興起,相較于傳統農業,智慧農業主要表現在其特有的監控功能系統、監測功能系統、實時圖像與視頻監控功能[1]。其中無人機正是智慧農業的重要工具,為智慧農業提供了有效支撐。與發達國家相比,我國農業裝備技術起步較晚,但是我國對于農用無人機比較重視,涌現出一大批比較好的農用無人機,隨著集約化、大規模生產方式的推廣普及,農用無人機作業已經成為未來病蟲害防治、災害預警的通用手段[2]。
本文設計了基于STM32 單片機的簡易四旋翼無人機,通過PID 算法實現對飛行狀態的姿態調整,實現在遙控狀態下的無人機的自穩飛行,并通過OpenMV 實現農業生產中的自動巡檢及現場圖片收集,最終為林業的實時監管提供科學有效的依據,保障農作物的健康生長[3]。
設計的簡易四旋翼無人機的整體結構,主要包括葉槳保護罩、槳葉、電機、機架等部分。
在調試四軸的時候,摔下來、失控是很常見的,所以設計葉槳保護罩,可以很大程度上減小槳葉、電機報廢的概率,減小經濟損失,避免無人機葉槳損壞降低工作效率。
四旋翼無人機的飛行依賴的是兩對螺旋槳力的抵消,而兩對相反旋轉的槳葉才能抵消作用力,所以四旋翼無人機的槳葉有A、B 之分。兩款槳葉的旋向相反,選用55 mm槳葉,A槳葉安裝在電機2和電機4上,B槳葉安裝在電機1和電機3上。
空心杯電機時本次設計中首個重要部件。當選擇了不合適的電機時會造成電機側向震動大,從而使得槳葉轉動之后產生很大的側向震動,進而會嚴重干擾加速度計,接著引起飛行器的姿態、角度很大的偏差,最終無人機不能垂直飛行。空心杯電機使用SI2302這款MOS管進行驅動。
機架方面,如果采用飛控板和機架隔離的方式,能從一定程度上降低震動的影響,但是這樣會增加重量及成本,所以選擇了PCB 機架,這個方案相對來說可以減輕設計方面的工作量。
四旋翼無人機整體框圖如圖1所示。

圖1 無人機整體框
四旋翼無人機需要用到PID調速,對控制器的運算速度有要求[4],而STM32F103C8T6選用的是LQFP-48封裝,封裝比較大,能降低焊接難度,且價格低廉,研究成本比較低,網上有大量的資料可以提供參考,因此選用STM32F103C8T6作為飛行控制器。
姿態傳感器是由陀螺儀傳感器和加速度傳感器兩個傳感器共同集合而成的一個系統。陀螺儀的原理是一個旋轉物體的旋轉軸所指的方向在不受外力影響時不會改變,通過運用多種方法讀取軸所指示的方向,控制系統在讀取信號后能夠做出相應反饋。采用MPU6050姿態傳感器檢測無人機的狀態。
FBM320 氣壓計采用SiP 封裝技術,成功地將采用MEMS 工藝的氣壓傳感芯片與采用CMOS 工藝的信號處理芯片整合到了同一個封裝內,并且提供了標準I2C 以及SPI 數字信號通信串口,可以和主芯片進行通信。
采用的SI24R1 作為無線收發器芯片,是因為無線發射可以做到7 dB,在發射和接收端都采用陶瓷天線的前提下,可以達到50 m 的通訊距離;且SMA 接口,可方便連接外置天線;價格便宜,性價比高。
使用600 mAh鋰離子電池供電,采用升壓電路使電壓由3.7 V升到5 V,采用降壓電路使電壓由5 V升到3.3 V。是因為在進行供電時,沒有負載的情況下,電機能夠正常啟動,但是當4 個空心杯都安裝上槳葉,在達到全速運轉的情況下,瞬間電池的輸出電業就會被降低到3 V以下,不足以驅動電機。這時候如果直接用電池給LDO供電,那LDO就會失效[5]。
選擇720 空心杯電機,它的能量轉換效率高,起動、制動迅速,響應極快;在推薦運行區域內的高速運轉狀態下,可以方便地對轉速進行靈敏的調節,運行穩定性十分可靠,轉速的波動很小。
視覺部分單獨設計難度較大,所以直接使用OpenMV 視覺模塊。它是基于STM32 的機器視覺模塊,集成了OV7725 攝像頭,這個特點使得它可以很靈活地和其他流行的模塊配合,實現復雜的功能[6]。另外,選用了NRF24L01無線傳輸模塊,利用SPI接口進行圖像的實時傳輸。經過實測,空曠條件下2 M傳輸速率下15 m,1 M傳輸速率30 m,250 K傳輸速率50 m;滿足要求。
四旋翼無人機的飛行控制程序使用基于C 語言的Keil5 編寫,視覺部分的OpenMV 使用基于Python語言的OpenMV IDE編寫。
姿態程序設計主要圍繞FBM320 氣壓計(MEMS傳感器)的數據進行,姿態系統程序的軟件流程圖如圖2所示。
FBM320 氣壓計接收到的數據不可避免會有噪聲,所以姿態調整系統需要對采集到的數據進行濾波處理,之后才能對濾波信號進行姿態解算。
加速度傳感器提取到的信號在與陀螺儀提取到的信號進行結合的時候以低頻信號為主,所以針對這一特性,需要通過均值濾波提高信噪比來優化加速度傳感器接收的數據。
依據控制對象的輸出反饋信號進行糾正的控制方式被稱為閉環控制,當測量值與預期值產生偏差時,通過閉環調節可以得到修正;控制線路通過測量值與理論值的比較,再調節控制線路輸出的信號。PID調節是一種最常用也最簡單、使用最為廣泛的閉環控制算法。有效組合使用這3個控制方法,可以正確高效地修正被控制對象產生的偏差,進而使整個系統平穩有效的運行[7]。
本文從四旋翼的飛行理論入手,結合機器視覺,設計出一套適用于農業生產,能夠實時傳輸飛行畫面的無人機,為后續采用無人機實現植保及病害識別、自動噴藥等做準備。系統中包含了各類傳感元件,并運用了PID調節算法,使得無人機實現飛行時的自穩態調節。選用STM32 作為核心,使用多種傳感器反饋得到無人機的狀態,從而更正各個傳感器的數據,最后采用PID調節算法處理數據,利用電機轉速的改變,實現無人機的各種飛行動作和姿態調節。利用OpenMV 采集圖像數據并通過無線芯片實現圖片傳輸,讓無人機在飛行時能夠擁有圖傳的功能,賦予了無人機基本的視覺能力。

圖2 姿態程序設計流程