姜永昌
(山東科技大學(xué) 機械電子工程學(xué)院,青島 266590)
本設(shè)計主要由火焰檢測模塊、驅(qū)動模塊、避障模塊、氣體滅火模塊、啟動模塊、藍牙模塊構(gòu)成。機器人啟動后,按照預(yù)訂房間順序,自主尋找房間并依次完成所有房間內(nèi)的滅火任務(wù),滅火時采用舵機控制C02氣體釋放,藍牙將機器人狀態(tài)信息反饋到計算機,實現(xiàn)實時檢測、便于調(diào)試。
本系統(tǒng)采用意法半導(dǎo)體公司生產(chǎn)的STM32F103系列單片機作為主控芯片。該單片機具有運算速度快,內(nèi)部集成多個定時器實現(xiàn)PWM輸出控制直流電機并實現(xiàn)轉(zhuǎn)速編碼器正交解碼反饋,多路高速ADC連續(xù)掃描、DMA提高檢測速率并獨立傳輸、降低主控壓力。
本設(shè)計火焰檢測采用多種傳感器加權(quán)檢測,紫外火焰?zhèn)鞲衅髯鳛橹鱾鞲衅?,紅外火焰?zhèn)鞲衅髯鳛檩o助傳感器。能在減少陽光干擾前提下節(jié)約成本,做到火焰方向精確定位。運動檢測采用漫反射紅外傳感器,電子羅盤、陀螺儀以及灰度傳感器。啟動檢測采用聲音傳感器。
電機驅(qū)動采用東芝公司生產(chǎn)的TB6612驅(qū)動芯片,較常見驅(qū)動芯片,具有體積小,集成化,不需要二極管回流及外加散熱片等優(yōu)點,可以減小機器人體積,使更加靈活。
使用串口通信的通信方式,通過藍牙將機器人運行狀態(tài)反饋到計算機,便于調(diào)試與狀態(tài)監(jiān)測。
根據(jù)規(guī)則,機器人需要通過傳感器檢測,自主避障并尋找軌跡進入房間,進入房間后自主搜尋火焰并撲滅火焰,依次完成多個房間的搜尋任務(wù)并回到起點。機器人運行程序主要由避障算法、尋火算法、滅火算法及位置姿態(tài)算法組成。
通過讀取分布在機器人四周的七個紅外漫反射傳感器的反饋,判斷周圍障礙情況,做到以墻壁為參照,尋找行進軌跡并自主避障。避障檢測包括左主檢測和右主檢測兩套檢測算法,通過合理切換兩套檢測機制,做到機器人在場地的不同位置都可以找到有效的墻壁參照。通過設(shè)定多個判斷條件,準(zhǔn)確判定當(dāng)前位置狀態(tài)及下一步運動狀態(tài)。
紫外火焰?zhèn)鞲衅鲗鹧婀庵泻械腢V紫外線比較敏感,而到達地面的陽光中其含量極少,因此有很好的抗陽光干擾能力,可以提高火焰是否存在的檢測準(zhǔn)確度。考慮到成本,利用紅外火焰?zhèn)鞲衅鱽碜鳛榻咏鹧鏁r的姿態(tài)傳感器使用。本算法利用紫外火焰?zhèn)鞲衅鞔_定火焰方位,然后融合多組紅外火焰?zhèn)鞲衅鞯臄?shù)值進行姿態(tài)調(diào)整。
在火焰方位檢測時,距離火焰遠,紅外檢測誤差大,此時紫外檢測權(quán)值為1。在方位確定后的姿態(tài)調(diào)整前進時,經(jīng)實驗,紅外檢測權(quán)值為0.6,紫外檢測權(quán)值為0.4,效果較好。通過不斷調(diào)整機器人姿態(tài),使機器人能夠正確找到火焰方向并精準(zhǔn)的趨近火焰位置。
在灰度傳感器檢測到火焰外圈地面白線后,控制舵機轉(zhuǎn)動帶動舵盤,經(jīng)桿件將扭力傳遞給與氣瓶閥門連接的摩擦件。通過摩擦力旋開氣瓶閥門,釋放C02氣體進行滅火。同時車身左右擺動,形成扇形的有效滅火區(qū)域,極大的提高了滅火的有效性。
通過讀取車模上安裝的陀螺儀測量的角速度與電子羅盤反饋的方位角,將兩種傳感器數(shù)據(jù)融合,來實現(xiàn)車體旋轉(zhuǎn)角度的精確性。
機器人采用雙電機驅(qū)動,受電機參數(shù)及電流變化影響,兩電機轉(zhuǎn)速必會產(chǎn)生誤差,誤差積累將會使機器人不能直線行走。為去除誤差,采用霍爾轉(zhuǎn)速傳感器反饋轉(zhuǎn)速實現(xiàn)電機轉(zhuǎn)速閉環(huán)。
機器人為靈活搜尋火焰,常采取自身旋轉(zhuǎn),由于場地環(huán)境不同,采用計時旋轉(zhuǎn)時間進而確定旋轉(zhuǎn)角度的方法誤差值很大。而電子羅盤測方位角時經(jīng)常會出現(xiàn)測量角度抖動嚴(yán)重。即使不動,角度也在不停的小范圍內(nèi)變化。而陀螺儀通過測量角速度,積分計算方位角,若信號存在微小的偏差和漂移,經(jīng)過積分運算形成的誤差積累,最終導(dǎo)致電路飽和,信號失真。為減小誤差,采用陀螺儀與電子羅盤雙傳感器融合的方法,最終得出準(zhǔn)確的角度數(shù)據(jù)。
設(shè)在某個時間點t上,電子羅盤值為CompassData(t),陀螺儀值為 GyroData(t),融合后的數(shù)據(jù)為 FuseData(t)。下一個時間點t+Δt時,陀螺儀計算的角度變化為
電子羅盤值為 CompassData(t+Δt),陀螺儀值為 GyroData(t+Δt),融合后的數(shù)據(jù)為 FuseData(t+Δt),他們之間的運算關(guān)系是:
FuzeData(t+Δt)=K×(FuzeData(t)+dangle)+(1-K)×CompassData(t+Δt)
其中K的取值范圍一般為[0.9,1),物理意義就是電子羅盤對陀螺儀的信任程度。在調(diào)用傳感器的初始狀態(tài)T0時間點,F(xiàn)useData(T0)=CompassData(T0)
受傳感器與主控間較長導(dǎo)線的引線寄生電感及環(huán)境電磁干擾影響,傳感器反饋模擬信號經(jīng)單片機片內(nèi)ADC檢測,檢測值波形存在部分高頻諧波,會對火焰方位檢測產(chǎn)生干擾。為盡可能使同一環(huán)境下檢測值波形穩(wěn)定,采用軟、硬件結(jié)合的滑動平均限幅濾波+硬件ADC接口處電容低通濾波,通過雙濾波的方法,使環(huán)境干擾性大大降低。
本文從軟件、硬件、誤差分析等方面對滅火機器人的設(shè)計進行了較為詳細的介紹。經(jīng)測試,發(fā)現(xiàn)在搜尋速度和運行穩(wěn)定性以及滅火方式上都較常規(guī)設(shè)計有明顯優(yōu)勢。
[1] 李圣怡.多傳感器融合理論及在智能制造系統(tǒng)中的應(yīng)用[M].長沙:國防科技大學(xué)出版社,1998.