新發(fā)地來勢洶洶的疫情,再次牽動著全國人民的心,我們要保持信心,保持警惕,打贏這場防疫戰(zhàn)!而機(jī)器人的加入,必然是錦上添花。在隔離區(qū),機(jī)器人實現(xiàn)了無接觸配送,保障了隔離區(qū)內(nèi)人員的生活。在醫(yī)院感染區(qū),移動機(jī)器人可以代替醫(yī)護(hù)人員進(jìn)入感染區(qū)執(zhí)行消毒,看護(hù),體溫測量,清潔等工作,減少了醫(yī)護(hù)人員的感染風(fēng)險。在居民社區(qū),機(jī)器人實現(xiàn)了防疫宣傳、外來人口登記,保障了疫情期間人們的正常生活……
這些功能的實現(xiàn),都離不開機(jī)器人的智能移動能力。在之前的文章中,我們提到過底盤對移動機(jī)器人的意義,能夠幫助廠家快速集成,實現(xiàn)落地應(yīng)用。
今天,我們不聊底盤,我們來說說導(dǎo)航技術(shù),因為導(dǎo)航搞不好,移動也白搭,底盤就失去了價值,沒有任何實用性。
大家都知道,自主定位導(dǎo)航包含了定位、建圖與路徑規(guī)劃。說到定位導(dǎo)航,必然會聯(lián)想到SLAM,但SLAM只是完成定位與地圖創(chuàng)建這兩件事,它并不完全等同于自主定位導(dǎo)航。
定位
不管你有沒有地圖,在前往目的地前,你肯定要知道自己的定位,機(jī)器人也是如此。只不過,我們定位靠眼睛,機(jī)器人則靠“激光雷達(dá)”。
▲激光雷達(dá)掃描輪廓數(shù)據(jù)
這就是激光雷達(dá)獲取的周圍環(huán)境信息,也就是我們所說的點云,它能反映機(jī)器人所在環(huán)境中“眼睛”能看到的一個部分。
建圖
我們身處陌生的環(huán)境時,導(dǎo)航軟件和戶外地圖成為我們找路最有利的工具,服務(wù)機(jī)器人和人類一樣也需要依靠地圖來感知外部的環(huán)境,通過算法與傳感器差異的不同機(jī)器人會采取不同的地圖描述形式。
SLAM建圖主要有三個過程:
(1)預(yù)處理:對雷達(dá)形成的點云原始數(shù)據(jù)進(jìn)行優(yōu)化,剔除一些有問題的數(shù)據(jù),或者進(jìn)行濾波。
(2)匹配:把當(dāng)前這一局部環(huán)境的點云數(shù)據(jù)在已經(jīng)建立的地圖上尋找對應(yīng)的位置,進(jìn)行匹配。
(3)地圖融合:將來自激光雷達(dá)的新一輪數(shù)據(jù)拼接到原始地圖當(dāng)中,最終完成地圖的更新。
▲地圖預(yù)處理、匹配和融合的過程
目前,柵格地圖是機(jī)器人使用最廣泛的地圖存儲方式。
柵格地圖就是把環(huán)境劃分成一系列柵格,其中每一柵格給定一個可能值,表示該柵格被占據(jù)的概率,其中每個“像素”則表示了實際環(huán)境中存在障礙物的概率分布。
▲ 柵格地圖的形成
這個過程聽起來其實并不復(fù)雜,但是還是會遇到很多未知問題。比如建圖閉環(huán),如果匹配的算法不足夠優(yōu)秀,又或者是環(huán)境中遇到長直走廊、大場景建圖干擾時,機(jī)器人繞著環(huán)境走一圈后,可能會發(fā)現(xiàn)原本應(yīng)該閉合的一個環(huán)形走廊斷開了。
▲ 環(huán)形走廊閉合斷開
早在19年初,思嵐科技就已經(jīng)推出了SLAM 3.0系統(tǒng)來應(yīng)對這種問題,當(dāng)機(jī)器人運動到已經(jīng)探索過的原環(huán)境時, SLAM 3.0可依賴內(nèi)部的拓?fù)鋱D進(jìn)行主動式的閉環(huán)檢測。當(dāng)發(fā)現(xiàn)了新的閉環(huán)信息后,SLAM 3.0使用Bundle Adjuestment(BA)等算法對原先的位姿拓?fù)涞貓D進(jìn)行修正(即進(jìn)行圖優(yōu)化),從而能有效的進(jìn)行閉環(huán)后地圖的修正,實現(xiàn)更加可靠的環(huán)境建圖。
▲閉環(huán)修正
路徑規(guī)劃與運動控制
當(dāng)定位和建圖搞定之后,下一個就要解決移動的問題了,即目標(biāo)點A到B之間的導(dǎo)航規(guī)劃能力。
路徑規(guī)劃分為:全局規(guī)劃和局部規(guī)劃。
全局規(guī)劃:是最上層的運動規(guī)劃邏輯,它按照機(jī)器人預(yù)先記錄的環(huán)境地圖并結(jié)合機(jī)器人當(dāng)前位姿以及任務(wù)目標(biāo)點的位置,在地圖上找到前往目標(biāo)點最快捷的路徑。
局部規(guī)劃:當(dāng)環(huán)境出現(xiàn)變化或者上層規(guī)劃的路徑不利于機(jī)器人實際行走的時候(比如機(jī)器人無法按照規(guī)劃的路徑完成特定轉(zhuǎn)彎半徑的轉(zhuǎn)向),局部路徑規(guī)劃將做出微調(diào)。
▲分層級的運動規(guī)劃框架以及對應(yīng)輸出數(shù)據(jù)
這兩個層次的規(guī)劃模塊協(xié)同工作,機(jī)器人就可以很好的實現(xiàn)從A點到B點的智能移動了。不過實際工作環(huán)境下,上述配置還不夠。因為運動規(guī)劃的過程中還包含靜態(tài)地圖和動態(tài)地圖兩種情況。
A*算法
A*(A-Star)算法是一種靜態(tài)路網(wǎng)中求解最短路徑最有效的直接搜索方法,也是解決許多搜索問題的有效算法。算法中的距離估算值與實際值越接近,最終搜索速度越快。但是,A*算法同樣也可用于動態(tài)路徑規(guī)劃當(dāng)中,只是當(dāng)環(huán)境發(fā)生變化時,需要重新規(guī)劃路線。
D*算法
D*算法是目前的一種主流算法,最大優(yōu)點是不需要預(yù)先探明地圖,機(jī)器人可以和人一樣,即使在未知環(huán)境中,也可以展開行動,隨著機(jī)器人不斷探索,路徑也會時刻調(diào)整。
上述的幾種算法都是目前絕大部分機(jī)器人所需要的路徑規(guī)劃算法,能夠讓機(jī)器人跟人一樣智能,快速規(guī)劃A到B點的最短路徑,并在遇到障礙物的時候知道如何處理。但掃地機(jī)器人作為最早出現(xiàn)在消費市場的服務(wù)機(jī)器人之一,它需要的路徑規(guī)劃算法有點不一樣。
所以,針對不同場景應(yīng)用的機(jī)器人,自主定位導(dǎo)航技術(shù)還需要不斷升級更新,足以支撐更多場景應(yīng)用。只有導(dǎo)航技術(shù)做好了,機(jī)器人整體才能有一個質(zhì)的飛躍,機(jī)器人從0-1的布局才能越來越快。
編輯:hfy
-
機(jī)器人
+關(guān)注
關(guān)注
210文章
28105瀏覽量
205853 -
移動機(jī)器人
+關(guān)注
關(guān)注
2文章
755瀏覽量
33528 -
導(dǎo)航技術(shù)
+關(guān)注
關(guān)注
0文章
32瀏覽量
9576
發(fā)布評論請先 登錄
相關(guān)推薦
評論