王興偉,陳 浩,師 普,史金炆,劉 煜
(中國石油大學(華東) 山東 青島 266580)
針對地圖構建的問題,現在一些陸地機器人已經實現,但只能構建二維地圖,對于機器人的控制,目前也只限于人工控制,一旦失去通信信號,將無法實現對機器人的有效控制,除此之外,傳統救援機器人由于缺少多機器人間的協同性,救援效率不高。現階段,災后救援機器人控制方式單一(人工控制),且環境信息采集能力較弱,對于災后完全陌生的環境不具備自定位和導航功能。災害發生后,若不能及時的獲得災區環境內部情況,就不能實時的展開有效的救援以及疏散工作。本系統提出的通過多機器人編隊式互聯來實現及時定位與環境地圖構建的方案,能有效地開展救援工作與環境信息的采集。結合雙目視覺,人工智能等技術,在災后現場第一時間自主的進行地圖構建和救援準備工作。
本系統在實現受災環境的地圖構建時:由機器人從一個未知點開始移動,利用激光測距雷達發射電磁波,當電磁波遇到阻礙就會反射回來,通過記錄電磁波往返的時間,根據電磁波在介質中的傳播速度從而計算出機器人到障礙物的距離,同時將障礙物標記為路標點,然后根據機器人與路標點之間的相對位置和里程計的讀數估計出機器人自身和路標點的位置,構成全局坐標系,機器人繼續運動,進行路標識別和自身定位,最終構建出完整的路標地圖。
里程計和激光測距雷達放置在密封殼內,從而完成機器人的定位和誤差校正;使用超遠距離傳輸模塊Xbeepro進行數據傳輸,確保數據的可靠性。樹莓派控制器安裝在密封殼內主板上,內部移植ROS操作系統實現完整SLAM。現有SLAM算法的實現是在MATLAB仿真軟件的環境下實現的,本作品在樹莓派上安裝Ubuntu系統,再將ROS機器人操作系統移植到Ubuntu系統中,調用ROS中相應的功能包實現仿真。并將SLAM算法移植到ROS中,對機器人電機轉速進行控制,處理傳感器測得的數據信息,實現對機器人的實際控制,最終構建特征地圖,實現完整的SLAM過程。
地圖信息采集上,通過在樹莓派系統上移植機器人控制操作系統的方法,實現對機器人的運動控制,配合激光測距雷達、里程計等,采用SLAM技術(全稱即時定位與地圖構建),實現機器人自主導航和地圖構建功能。同時實現地圖構建數據的處理、存儲與傳輸,救援人員可在遠程手持設備上查看地圖和圖像,便于開展救援決策、發送指揮指令,機器人搭載的聲光報警設備可引導被困人員撤離。
我們所采用的SLAM技術是智能機器人的基礎技術,解決機器人自主導航過程中的三個問題:“我在哪”,“到哪去”和“怎么去”。機器人通過應周圍環境,定位自己,構建地圖,尋找目標點,規劃行駛路線。現有的機器人的定位方法大體可以分為三種:相對定位,絕對定位和組合定位。相對定位是依靠機器人自身的感應器進行的定位,絕對定位是依靠外界發來的定位信息對自己進行定位,組合定位是相對定位和絕對定位一起進行綜合定位。在作品功能實現的過程中,我們對機器人運動模型公式進行了改進。
外部傳感器通過觀測周圍的環境,解析觀測信息,來對自己進行定位。某個環境特征相對于機器人自己的位置信息為Z(k),則公式1所示:

其中xi和yi是某個環境特征位置的坐標,xvy(k)和xvx(k)為機器人的位置坐標。
內部傳感器通過感應機器人的運動信息來定位,下圖為機器人的運動模型,設當前時刻為i,下一時刻的時間就是i+1。那么相對應的當前位置的橫坐標為x(i),縱坐標為y(i),面向角為θ(i),下一時刻的位置為橫坐標為x(i+1),縱坐標為y(i+1),面向角為θ(i+1)。感應器測得的位移數據橫坐標為△x(i),縱坐標為△y(i),面向角為△θ(i),最后的是感應器測量時的誤差。

公式2就是機器人運動過程中通過自身感應器通過之前的位置信息和測得的移動信息對當前的位置信息進行推算的公式,即為運動模型公式。

圖1 基于SLAM技術的地圖構建流程圖
系統能夠實現災后環境的地圖構建,并且標定出被救援目標的位置,為救援人員進場搜救奠定基礎。是通過在樹莓派嵌入式環境上移植ROS機器人操作系統,同時搭載激光雷達與攝像頭等多種傳感器配合來實現的。
這里我們采用的算法核心是擴展卡爾曼濾波器(EKF)。它用于結合信息估計機器人準確位置,選取的特征一般稱作地標。EKF在這個過程中將持續不斷的估計周圍環境中機器人位置和地標位置。

圖2 EKFSLAM算法的MATLAB仿真圖
測距單元的輸出表示的距離是機器人與最近的障礙物的距離。機器人自身位置的一個估計可以通過對機器人輪胎運行圈數的估計得到,由此得到的數據可以被看作EKF的初值。在確定完需要提取的特征后,需要從測距單元獲得的信息中準確的提取出為救援人員進入所提供的特征。我們通過在實驗中驗證如何從激光雷達得到的信息中提取有效特征得出結論。兩種典型的特征提取方法,Spike方法和RANSAC方法會產生適合適合環境條件的結果。
SLAM過程的目標就是利用環境信息構建環境地圖,在此基礎上更新機器人的位置姿態實現機器人定位。對環境信息進行特征提取,與已知地圖進行特征匹配,當機器人再次運動時進行再次觀測,進行特征點更新。這些特征被稱為路標,根據路標點可靠地估計機器人的位置信息。不斷進行循環迭代,逐步減小誤差,完成傳感器網絡的組網和地圖構建。
本系統通過及時定位與地圖構建(SLAM)來為救援人員進入災區制定路線,可以自行規避路途中遇到的障礙物,進而到達救援現場的指定位置并營救被困人員,極大地縮短了救援時間。同時不需要采用交流電,可以應付各類復雜狀況。本系統還具有普適性,對比系統封閉的現階段救援產品,我們可以根據需求隨時搭載各種所需要的傳感器進行工作。因此,此地圖構建系統可以應用于各類自然災害現場,如火災、地震災害等現場的探測及救援,同時可以作為探險救援隊的裝備來推廣。