梁勇東 黃市生 曾志彬 吳國洪
(1.東莞理工學院機械工程學院,廣東東莞523000;2.東莞市橫瀝模具科技產(chǎn)業(yè)發(fā)展有限公司,廣東東莞523000)
無人機作為一種新工具,能很好地代替人去執(zhí)行任務,如送快遞、偵查監(jiān)測等[1],人們希望無人機在執(zhí)行任務時能夠自我保護,因此自動避障技術成為了無人機領域發(fā)展的熱點[2]。然而,現(xiàn)有的很多無人機避障范圍是固定的,且該固定的避障距離一般在3 m以上,但避障距離被設定為固定值給飛行器的使用環(huán)境帶來了局限性,例如不能在小于避障范圍的環(huán)境中正常工作,否則在這些環(huán)境中飛行器的某兩個相對方向的避障效應會造成飛行不穩(wěn)定。針對以上不足,本文提出了一種可自動調(diào)節(jié)避障范圍的無人機及其工作方法,將從機構設計方面與工作方法方面進行闡述。
本文所設計的無人機是一種四旋翼飛行器[3],采用三層平臺的設計方式,由下往上為第一層平臺、第二層平臺、第三層平臺。無人機的機架呈“十”字樣式,四個電機和螺旋槳分別設置在四個機臂軸的末端,構成四旋翼飛行器。PIX4飛控設置在第二層平臺的上表面中心。pwm轉ppm模塊、接收機、ARM單片機設置在第三層平臺的上表面,激光測距傳感器設置在第一層平臺的前后左右四個方向。
接收機的通道一(CH1)至通道八(CH8)的信號線分別與pwm轉ppm模塊的PA4、PA5、PB10~PB14、PA8電連接;ARM單片機特指具有五個串口的ARM單片機;4個激光測距傳感器的TX、RX接口分別與ARM單片機的USART_RX2~USART_RX5、USART_TX2~USART_TX5接口電連接,進行串口通信,ARM單片機采集四個方向的測距信息;pwm轉ppm模塊的USART_TX2、USART_RX2分別與ARM單片機的USART_RX1、USART_TX1接口電連接,進行串口通信,ARM單片機將四個方向的測距信息整理為數(shù)組comdata形式發(fā)送給pwm轉ppm模塊;pwm轉ppm模塊的ppm信號輸出引腳與PIX4飛控的ppm信號輸入引腳電連接,進行模擬信號的傳輸。
基于pwm轉ppm模塊,讀取來自接收機的第一通道和第二通道的pwm值,第一通道記為pwm_analog0(其影響左右方向),第二通道記為pwm_analog1(其影響前后方向),并與相應的通道的基準值(1 400)比較?;鶞手凳侵革w行器在定點懸停時某一通道的穩(wěn)定值,如果飛行器往某一方向飛行,飛行器在該方向上的脈沖值會相對基準值發(fā)生偏差變化,變大或變小發(fā)生于飛行方向的相對性之間。
工作方法主要為一種比例算法,原理式為:
其中,BZ代表避障距離;MC代表脈沖值,即MC=pwm_analog0或pwm_analog1,與飛行速度有關;|MC-1 400|max代表某一時刻脈沖量最大差值,用最大絕對值表示,該值越大,說明飛行器在某一方向的飛行速度越大;當飛行器往某個方向飛行時,脈沖量會相對基準值1 400變化,考慮其他方向存在脈沖量的波動情況,因此要選擇脈沖量最大差值。
工作方法的具體步驟為:
(1)先計算pwm_analog0-1 400和pwm_analog1-1 400的絕 對值,即|pwm_analog0-1 400|和|pwm_analog0-1 400|,然后對兩者進行比較,擇取其中較大值,并初步選定了方向,若|pwm_analog0-1 400|>|pwm_analog1-1 400|,說明飛行方向為左右方向中的其一;若|pwm_analog0-1 400|<|pwm_analog1-1 400|,說明飛行方向為前后方向中的其一。
(2)通過比例運算BZ=(|MC-1 400|max)/6,即可實現(xiàn)飛行器根據(jù)飛行速度自動調(diào)節(jié)避障距離;提高飛行速度,避障距離自動增大,以保證足夠的避障距離,避免高速飛行時發(fā)生避障距離不足的現(xiàn)象;降低飛行速度,避障距離自動減小,使得飛行器可以緩慢通過一些狹窄的環(huán)境。
(3)在(1)的基礎上,進一步地判斷MC與1 400之間的大小,即可確定需要調(diào)節(jié)避障范圍的具體方向。例如,某一時刻通過程序運算獲知|pwm_analog0-1 400|>|pwm_analog1-1 400|,并且pwm_analog0<1 400,說明飛行器正在以某一速度向左飛行,該飛行速度的大小由脈沖量與基準值之間的差值決定。
(4)加設BZ1(左方向的避障距離)、BZ2(右方向的避障距離)、BZ3(前方向的避障距離)和BZ4(后方向的避障距離)四個變量,當飛行器往某一方向飛行時,在該飛行方向上需要與之飛行速度匹配的避障距離,而其他三個方向上無需該匹配性,直接保持最小避障距離即可。因此,在程序中的運算方法為(假定飛行器正在向前飛):BZ3=BZ(與飛行速度匹配的避障距離),BZ1=BZ2=BZ4=30(最小避障距離)。
(5)步驟(1)和(2)可以使得四個方向的避障范圍都能同比例地自動增大或減小,此為避障模式一;步驟(1)至(4)可以只改變飛行方向上的避障距離,卻讓其他三個方向保持最小避障距離,此為避障模式二。兩種模式之間的切換可通過地面站的二位開關進行,該二位開關通過無線連接接收機的第七通道,事先設定好外部中斷觸發(fā)對應的中斷處理程序,每隔一段時間讀取開關對應第七通道的狀態(tài)值,從而判斷開關的切換情況,進而通過中斷處理程序切換兩種避障模式。
本文所做的工作總結如下:第一,根據(jù)目標功能設計了無人機機構;第二,根據(jù)功能要求設計了無人機的工作方法。所達到的效果是,提高無人機的飛行速度,其避障范圍也相應增大;降低無人機的飛行速度,其避障范圍也相應減小,使得無人機對飛行環(huán)境有了更高的適應性,解決了某些無人機因避障距離固定且較大而不能在狹窄環(huán)境中正常工作的問題。