黃艷虎 覃紅強(qiáng) 吳學(xué)思 李月 李堂明 黃曉鋒
摘?要:無人船在航行中容易受到外界不確定因素的影響造成撞毀、炸機(jī)現(xiàn)象,為了實(shí)現(xiàn)無人船更加快速的避障,提出了一種機(jī)載超聲波陣列結(jié)合卡爾曼濾波算法的方法。首先通過超聲波對障礙物信息進(jìn)行判斷,其次通過卡爾曼濾波算法進(jìn)行誤差修正,最后通過PID控制算法做出避障策略。
關(guān)鍵詞:無人船;避障;超聲波陣列;卡爾曼濾波;PID控制
中圖分類號:TP273文獻(xiàn)標(biāo)識碼:A
無人船作業(yè)中路徑規(guī)劃大部分建立在地圖已知情況下,但在實(shí)際中受動態(tài)環(huán)境影響,預(yù)期的路徑與現(xiàn)場實(shí)況不符合[1],而如何動態(tài)獲取復(fù)雜環(huán)境下的信息實(shí)現(xiàn)快速的避障和再次路徑規(guī)劃成為了無人船執(zhí)行任務(wù)的難點(diǎn)。
1?系統(tǒng)原理概述
1.1?無人船簡介
無人船由上位機(jī)軟件、超聲波陣列、MCU控制器組成。上位機(jī)軟件使無人船與上位機(jī)進(jìn)行交互;超聲波陣列提供障礙物距離信息;MCU控制器協(xié)調(diào)無人船各模塊之間的工作。
1.2?超聲波陣列
圖1?超聲波避障模塊
如圖1所示,超聲波陣列由八個45度角間隔排列的超聲波組成,超聲波模塊的感應(yīng)角度為15度,因此各模塊之間不會形成干擾[2]。
2?邏輯控制與算法實(shí)現(xiàn)
2.1?避障邏輯分析
通過超聲波陣列檢測出每個方向的障礙物距離(每個測量值進(jìn)行一次濾波)。若檢測到左側(cè)和前方有障礙物,船頭向右微轉(zhuǎn)。若檢測到右側(cè)有障礙物,船頭向左微轉(zhuǎn)。
2.2?卡爾曼濾波算法的實(shí)現(xiàn)
卡爾曼濾波是一種以最小均方誤差為準(zhǔn)則從而處理動態(tài)數(shù)據(jù)的有效手段[3-4]。超聲波陣列在檢測過程中易受到溫度、聲波的影響,因此需要建立包含溫度、聲波因子的卡爾曼濾波模型。算法流程如圖2所示:
圖2?卡爾曼濾波流程圖
測試數(shù)據(jù)在濾波之前的方差為0.762476,濾波之后降低到0.048692。
2.3?PID控制及實(shí)現(xiàn)
為滿足無人船避障的響應(yīng)速度、動態(tài)性能指標(biāo),采用了PID控制算法[5]。PID控制流程如圖3所示。
圖3?PID控制流程圖
計(jì)算出u(k),用stm32產(chǎn)生PWM來控制電機(jī)電流大小,進(jìn)而對無人船進(jìn)行方向調(diào)整和控制。
3?結(jié)論
超聲波陣列結(jié)合卡爾曼濾波方法對無人船航行中不確定的因素可以靈活的檢測和誤差修正,從而提高了無人船的避障能力。
參考文獻(xiàn):
[1]孫東平.無人船控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].中國海洋大學(xué),2015.
[2]趙旭峰.基于S3C2410的超聲波測距儀的設(shè)計(jì)[J].硅谷,2010,22:48+43.
[3]謝建,朱建軍.不等式約束卡爾曼濾波的解算及其統(tǒng)計(jì)性質(zhì)[J].測繪與空間地理信息,2009,02:28-31.
[4]王琦,孫華,李偉華,等.卡爾曼濾波在變形監(jiān)測數(shù)據(jù)處理中的應(yīng)用[J].工程地球物理學(xué)報,2009.
[5]樊國平.智能PID控制系統(tǒng)的設(shè)計(jì)與研究[D].浙江工業(yè)大學(xué),2005.
基金項(xiàng)目:國家大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目(面向水面浮游物打撈的自主巡航船設(shè)計(jì),項(xiàng)目編號:201910606139);國家大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目(基于VR技術(shù)的虛擬駕校平臺設(shè)計(jì),項(xiàng)目編號:201910606029);國家大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目(煤礦井下數(shù)據(jù)系統(tǒng)的研究,項(xiàng)目編號:201910606137)
作者簡介:黃艷虎(1991-),男,碩士,助教,研究方向:導(dǎo)航定位與控制。