作者 / 彭華廈、易鑫,湖南工業大學電氣與信息工程學院基金項目:地方高校國家級大學生創新創業訓練計劃項目 項目編號:201511535004
?
基于AVR通用多旋翼避障系統的設計
作者 / 彭華廈、易鑫,湖南工業大學電氣與信息工程學院
基金項目:地方高校國家級大學生創新創業訓練計劃項目 項目編號:201511535004
提出一種基于AVR芯片的多旋翼通用避障系統設計方法和具體實現方案。避障系統采用ATMEGA2560-16AU芯片作為主控制器,通過I/O中斷方式讀取遙控信號,保證了控制階段與避障階段的實時性。文中介紹了系統硬件規劃,并給出多旋翼避障的程序設計流程,通過實驗證明,通用避障系統性能優良,為多旋翼自主飛行提供了一個可靠的思路。
多旋翼無人機;自主避障;系統設計;超聲波
隨著科技進步和低空領域的開放,多旋翼無人機將會在軍事與民用領域具備廣泛的運用前景。近年來,國內外各大研究機構都對多旋翼無人機展開了研究,多旋翼無人機得到了迅速的發展。多旋翼無人機可用于軍事治安、環境監控、災害勘察等領域。但由于應用環境復雜,因而實現多旋翼飛行中自主避障具備重要意義。然而在多旋翼無人機避障過程中要涉及到無人機飛行器環境感知,控制信號讀取,控制信號輸出等相關控制運算,因此對控制器提出了一定的要求。
現有的多旋翼無人機避障系統多基于STM32與飛行控制系統耦合為一個整體,對于此類多旋翼避障系統其控制周期內需要完成數據采集、數據處理、控制運算、控制輸出,極高的運算負載在一定程度上影響了系統的可靠性[1]。本文通過設計一種通用多旋翼避障系統,針對性的解決了這種問題。系統采用了一片ATMEGA2560-16AU芯片作為主控制器,與飛行控制器隔離開來,單獨處理避障程序,同時控制飛控,完成多旋翼無人機的避障過程。
■1.1 系統設計
通用多旋翼無人機避障系統較為簡明,系統需要三大模塊:測距模塊、單片機模塊、電源模塊。為達到多旋翼避障無人機的避障要求,同時還需要進行一定的避障算法編寫。
為滿足以上自主避障系統要求,避障系統的硬件部分就要進行一定的篩選,若要得到很好的避障效果,控制器的反應速度,測距響應時間都是極為重要的考慮因素,為了實現較為良好的避障效果,本文選用了高性能的AVR單片機芯片,實時性較強的超聲波測距傳感器,以及供電模塊。系統結構圖如圖1所示。

圖1 系統結構圖
■1.2 硬件選型
主控芯片:主控芯片選用了ATMEGA2560-16AU芯片作為主控制器,ATMEGA2560-16AU作為8位AVR處理器,具有16MHz的運行速度,56路數字I/O接口,其中14路PWM接口,16 路模擬輸入接口,4 路 UART 接口,6 路外部中斷,4 路串口通信,4 路 SPI 通信接口, 支持I2C 通信,串口通信,SPI 通信,有3.3V 和5V 兩種電源接口,適用于大量I/O接口設計和 PWM 需求[2]。
超聲波測距模塊:選用了HC-SR04超聲波測距模塊,HC-SR04具有優秀的測距性能(2cm-450cm) ,精度為0.2cm,自動標定與障礙物的距離,無需人工干預。模塊采用TRIG I/O口觸發測距,AVR觸發測距前發送2μs低電平,再發送10μs高電平,超聲波模塊發送8個40kHz的方波,有信號返回時則通過ECHO I/O輸出一個高電平,電平持續時間即為超聲波的往返時間。高電平持續時間除以58即可測得多旋翼與障礙物的距離。
電源模塊:在本電源方案中采用LM317集成穩壓芯片的方案,LM317是固定集成穩壓器芯片,對外圍電路進行一定的改進設計,可以達到大范圍的輸出電壓調整,不僅能滿足一般小功率設備對直流電源的要求,還能滿足教學上各種綜合實驗的需要,是各類電子技術及相關專業開展綜合整機線路設計的理想器件之一[3]。
本系統基于AVR編寫軟件平臺進行開發,采用C語言進行編程實現,主要分為遙控接收機信號讀取、超聲波測距、避障算法的三部分軟件設計。其總體流程圖如圖2所示。
■2.1 接收機信號讀取
主控芯片對接收機信號的讀取實時性要求較高,故采用了中斷方式讀取接收機信號的方式,這種方式減少了主控芯片的運算量,提高了實時性。信號讀取流程圖如圖3所示。
■2.2 超聲波測距
超聲波測距部分為保持實時性采用了輪詢模式,保證了實時獲取環境數據。其測距流程如圖4所示。

圖2 系統流程圖

圖3 信號讀取流程圖

圖4 超聲波測距流程圖
■2.3 避障算法
多旋翼完成避障過程中避障算法顯得較為重要,采用合理的避障算法能有效的提升整套系統的質量。
在控制系統工程中通常采用比例積分微分控制算法(PID)PID調節在各控制工程中應用廣泛,具有較為完善的調節器功能,通常較為穩定可靠,但本系統作為通用多旋翼避障系統,多旋翼無人機飛控系統本身就具有PID控制算法,因此在本系統中并不適用。應選用較為調節迅速,簡單穩定可靠的調節算法。在多旋翼避障系統中追求反應迅速,避免出現滯待現象,故采用了控制工程中較為常用的比例調節(P)算法。即多旋翼避障系統控制輸出信號C(t)能成規律地反應環境參數ε。即:
C(t)=I(t)±(Kp×ε)
其中I(t)為輸入參數,kp為比例系數。公式中正負符號由避障方向決定。
等量帶入避障系統算法中即:
Outpwm=Inpwm±(Kp×ual)(1)
其中:ual=Kd-d(2)
其中Kd為設定避障觸發值,d為當前與障礙物的距離。依據公式(1)、(2)可推導得出避障算法公式為:
Outpwm=Inpwm±(Kp-d)×Kp
推導公式后只需給定其避障反應值Kd,與比例定值Kp即可。
依據公式給定多旋翼飛行軌跡向前,設Onpwm=1600,給定避障響應距離Kd=130cm,變量為與障礙物距離d,比例定值Kp為4進行分析。分析圖如圖5所示。
由分析可知,該控制規律簡單有效,可用于通用多旋翼避障系統當中。避障子程序流程圖如圖6所示。

圖5 測試分析圖

圖6 避障子程序流程圖
為了保證系統具有可行性以及良好的避障效果,選用了六旋翼無人機進行了實驗室環境測試,如圖7所示。
依據測試結果表明,通用多旋翼避障系統能實現預期設定目標,控制多旋翼成功避開障礙物,試驗過程中系統保持了良好的穩定性以及較為優秀的反應速度,距離與反應時間如圖8所示。

圖7 避障測試

圖8 距離與反應時間折線圖
本文提出一種通用多旋翼避障系統的設計方案,從硬件與軟件部分說明了設計方案以及過程,試驗結果表明該通用多旋翼避障系統具有較好的穩定性,能夠成功感知周圍環境并控制多旋翼無人機躲避障礙物,達到了預期要求,為多旋翼無人機自主飛行奠定了一定的基礎。
* [1]袁安富,徐金琦,王偉,馬浩. 基于雙STM32多旋翼無人機控制系統設計[J]. 電子技術應用,2013,11:136-138.
* [2]牛犇,朱文章,沈漢鑫,沈亞鋒,張帆,謝立寅. 基于ATme ga2560的多傳感器紅外遙控智能LED控制器[J]. 照明工程學報,2015,05:37-41.
* [3]安玉,傅興華,吳有林. LM317可調式集成穩壓電源的設計[J].遵義師范學院學報,2008,06:57-58+61.