孫海
機器人同時定位與制圖—SLAM(Simultaneous Localization and Mapping)與傳感器緊密相關,具有精度高、速度快、效率高的激光雷達在實現倉儲搬運機器人自主運動的相關算法中得到廣泛的應用。本文詳細介紹三角測量的原理并利用該原理實現對激光測距傳感器的制作,結合旋轉舵機,對低成本激光測距雷達的實現。根據SLAM系統結構,研究特征直線提取,著重研究激光三角測量算法,并對激光測距雷達的同時定位與地圖構建系統進行仿真實驗。
【關鍵詞】Kiva系統 搬運機器人 SLAM 三角測量法 擴展卡 爾曼濾波
倉儲搬運機器人作業顛覆傳統電商物流中心作業“人找貨、人找貨位”模式,通過作業計劃調動機器人,實現“貨找人、貨位找人”的模式,整個物流中心庫區無人化。激光雷達與其他的測距傳感器相比有著速度快、精度高的特點,因而,激光雷達在機器人的運動中得到了廣泛的應用。SLAM問題的技術關鍵是在地圖未知的情況下,機器人利用外部環境的掃描數據確定自身的位姿以及實現對地圖的建立,主要的內容包括:特征提取、地圖建立、自主定位。本文主要圍繞倉儲搬運機器人,針對激光SLAM問題展開研究,設計了一個倉儲搬運機器人激光SLAM系統,在倉庫未知環境中機器人利用自身裝載的激光雷達和運動實現SLAM。
1 低成本激光測距原理
1.1 激光測距法
根據激光測距傳感器在進行數據采集時所采用的原理不同而進行劃分,可以分為激光脈沖法測距傳感器、激光相位法測距傳感器以及激光三角測距法傳感器。
(1)激光脈沖法測距:激光脈沖法測距傳感器通過對激光脈沖的時間差檢測實現距離的測量。
(2)激光相位法測距:相位法激光測距技術,是對相關頻率的激光按照一定的規則進行幅度調制,調制后的光波在被檢測的距離之間傳播,經反射后被傳感器接受模塊所接收。這種測量方法需要輔助裝置進行激光的反射,不適合應用于室內機器人。
(3)三角測距激光傳感器:機器人運動時,光電檢測器接受面上光點的位置也相對的發生變化,根據光點的變化以及相關的參數,就可以計算出機器人移動的距離。由于激光發射器發射的光線與物體散射的光線組成了一個三角形,所以這種方法叫做三角測距法。
1.2 三角測距法原理
根據激光發射光束與物體表面垂線的角度不同,可以分為斜射式三角測距以及直射式三角測距兩種方式。斜射式三角測距方式就是激光發射器的發射光線與物體表面不垂直,存在一定傾斜角度。斜射式三角測距激光傳感器的激光路線圖。激光光束經過透鏡聚集成為一條直線光束后,按照與物體表面的垂線成一定的角度方式打在物體的表面,物體表面上的激光光點散射后,經過透鏡聚焦以及對光線的過濾,最后被光電傳感器接收轉化為電信號。
斜射式三角激光測距法以及直射式三角激光測距法都是以非接觸測量方式對距離進行測量,并且都具有精度高、速度快和實時好等特點,斜射式三角測距法要求被測物體的表面具有較好的反射性,對散射光的效果不佳,而直射式三角測距法只能接收探測光線在物體的散射光,要求物體具有較好的散光性。由于直射式激光測距傳感器具有實現簡單、誤差較小、體積緊湊等特點,所以工程上經常采用直射式激光三角法制作激光傳感器。
1.3 結構設計
激光測距雷達的最終目的是為了實現對周圍環境一定角度內障礙物距離的測量。為了實現高精度的數據采集,本文采取的是利用舵機加激光測距傳感器的方式對環境進行掃描,本文采用的是具有四級放大功能的舵機,經過一級級的力量放大,最終使舵機具有15KG的扭矩,完全可以滿足系統承載的需要。
2 激光測距雷達EKL-SLAM
2.1 激光SLAM設計方案
本文所設計的室內機器人使用激光傳雷達實現定位系統的原理圖。本系統使用的是擴展卡爾曼濾波的方式對定位結果進行融合。系統是一個遞歸循環的過程。第一步是位姿的預測,機器人的行走具有高斯誤差運動模型,也就是通過里程計獲得的數據的誤差符合高斯分布,通過對獲取的里程計的數據進行分析計算便可以得到機器人的預測位姿。第二步根據預測的位姿信息,在柵格地圖中找到相匹配的預測觀測值,也就是激光測距雷達即將得到的位姿信息和環境特征。第三步對機器人的觀測值和激光測距雷達所獲得的觀測數據進行匹配,將匹配后的數據進行融合,更新機器人的柵格地圖以及位置信息,最終實現精確定位。
2.2 特征直線提取
激光測距雷達采集到的點是一系列的分散的點,特征直線的提取就是從這些分散的點中有效的提取出直線。在本文的緒論章節介紹了相關的直線提取的 算法——Hough變換和分割迭代。機器人是在倉庫小范圍環境運動需要做大量的掃描數據的特點,本文采用迭代分割法進行特征直線的提取。激光掃描的點是全都是離散的點,離機器人較遠的地方所對應的相鄰掃描點點之間的距離相對比較大。如果對所有的相鄰掃描點采用一個固定的閾值可能會引起分割區域過小的現象,把有效的掃描點當作無效點丟棄,這樣會使有效的地方信息丟失。對整個離散點集進行劃分,所劃分的為區域可以表示為,假設該劃分區域的第一個點是A(x0,y0)最后一個點是C(xn,yn),根據一條直線的確定至少需要兩個點的數學原理,求出這兩個點確定的直線L。依次計算該區域中其他的點到直線L的距離di,并找出di中的最大值dmax。假設B點到直線L的距離為最大值dmax,如果dmax大于所設定的閾值dyu,那么就把這個劃分區域以B為分界點分成(A,........,B)和(B,........,C)兩部分區域。對這兩個劃分依次進行上述處理,直到每一個劃分的所有點到其所對應的直線的距離都小于dyu為止。
通過上述的操作,所有的掃描點被分為了不同的子集,每一個子集都是一條直線。在實際的系統中,誤差是存在的,直線所表示的點不可能全部都在一條直線,線段的擬合就是要求出一條最大可能表示的直線。
2.3 擴展卡爾曼濾波EKF
擴展卡爾曼濾波利用泰勒公式對系統進行線性化,然后使用卡爾曼濾波方法對系統狀態進行遞歸估計,對評估的結果使用測量誤差進行校正,從而使預測結果不斷接近真實值。擴展卡爾曼濾波對系統中的高斯噪聲有很好的去除效果,被廣泛應用于機器人地圖的創建、定位和導航等算法。
機器人通過激光雷達實現SLAM算法的過程涉及到很多的方面內容,主要包括特征直線提取、特征點的生成、地圖的生成、地圖的匹配、坐標的生成。
根據擴展卡爾曼濾波的原理,利用其運動和觀測兩個模型把擴展卡爾曼濾波方法應用到SLAM中。運用循環迭代進行預測、觀測和更新過程來實現基于擴展卡爾曼濾波的同時定位與地圖構建。
3 實驗與分析
3.1 激光雷達測距實驗
用stm32開發板的定時器功能以舵機轉動1°的脈沖控制舵機轉動,為了實驗的簡便性,用stm32控制舵機轉動90次,統計舵機轉過的角度,實驗10次;用實驗室的機器人同樣做角度的轉動試驗,轉動的次數為90次,統計機器人轉過的角度,實驗10次。激光測距雷達實驗采取的方式是每隔10cm移動一次要測量的障礙物,總共移動的次數為15次,測量與障礙物的長度。光電傳感器上的光斑經過灰度質心的提取,獲得的像素點坐標。
在Robot Simulation模擬環境中創建的地圖環境進行直線的迭代你分割實驗。試驗中機器人利用激光測距雷達對環境進行掃描。模擬試驗中機器人轉動的角度為1°,總共得到了376個掃描點。把掃描點進行區域以及點集的劃分形成數據圖。對掃描點按迭代分割算法計算出特征直線,輸出的數據圖可以看到,直線的迭代分割擬合算法能夠準確有效的的從機器人對環境的掃描點中提取出特征直線,達到了本文設計系統的要求。
3.2 激光SLAM的仿真設計
本文使用的模擬系統是 Robot Simulation 實驗平臺,該實驗平臺是一個室內移動機器人仿真系統。Robot Simulation模擬環境是基于 Python 語言設計而成的。Robot Simulation根據Python的特性把機器人進行了封裝,對各種傳感器模塊也進行了封裝留下了接口,根據實驗的需要可以動態的添加所需的傳感器。
實驗中機器人激光測距雷達在機器人每走0.5m進行一次數據的掃描,障礙物的大小設置為大于等于20cm。機器人在位姿為(0,0,0)的時刻建立坐標軸系,以當前機器人運動指向的方向為x軸,以垂直于x軸方向為y軸,建立坐標系,這個坐標系就是全局坐標,機器人利用舵機以1°的夾角進行數據掃描。當機器人運動到環境中的其他位置進行掃描時,以機器人當前運動的方向指向為x軸,以垂直于x軸方向為y軸建立坐標系,經過機器人在室內的掃描,特征地圖的匹配,以及擴展卡爾曼濾波對激光測距雷達以及里程計數據的融合,最終得到有數據的地圖。在上述實驗過程中,室內機器人從初始位置(0,0,0)出發后,激光測距雷達不斷地在運動過程中提取周圍環境信息并結合里程計信息對自身的位姿進行預測和更新,實現本文所設計的算法,也直接證明實驗結果的正確性,并在一定程度上驗證本算法的可靠性。
4 結論
倉儲搬運機器人在未知環境中的同時定位與地圖構建是機器人技術研究領域的一個重要方向,近年來引起了國內外學者的廣泛關注。激光測距雷達由于具精確度高、體積小以及能夠提供準確的環境信息的優勢,被越來越多的應用于機器人同時定位與地圖構建的算法中。本文通過分析機器人同時定位與地圖構建技術的研究現狀,結合項目的實際需求,設計一種室內機器人激光測距同時定位與地圖構建系統,并對其進行仿真測試。
參考文獻
[1]謝蘇俊.激光測距在室內機器人運動中的應用與實現[D].成都信息工程大學,2016.
[2]李群明,熊蓉,褚健.室內自主移動機器人定位方法研究綜述[J].機器人,2003(06).
[3]Michael Bosse,Paul Newman,John Leonard,Seth Teller.Simultaneous Localization and Map Building in Large-Scale Cyclic Environments Using the Atlas Framework. The International Journal of Robotics Research,2004.
[4]趙立軍,孫立寧,李瑞峰,葛連正.室內環境下同步定位與地圖創建改進算法[J].機器人,2009(05).
[5]Hans P. Moraec and Alberto Elfes. High Resolution Maps from wide Angle Sonar[J]. Proceedings of the 1985 IEEE International Conference on Robotics and Automation, St. Louis, March, 1985,pp 116-121.
作者單位
成都信息工程大學軟件工程學院 四川省成都市 610225