0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

機(jī)器人視覺避障的常用傳感器介紹和原理說明

電子工程師 ? 來源:未知 ? 2019-03-09 09:59 ? 次閱讀

避障是指移動機(jī)器人在行走過程中,通過傳感器感知到在其規(guī)劃路線上存在靜態(tài)或動態(tài)障礙物時,按照 一定的算法實時更新路徑,繞過障礙物,最后達(dá)到目標(biāo)點。

避障常用哪些傳感器?

不管是要進(jìn)行導(dǎo)航規(guī)劃還是避障,感知周邊環(huán)境信息是第一步。就避障來說,移動機(jī)器人需要通過傳感器 實時獲取自身周圍障礙物信息,包括尺寸、形狀和位置等信息。避障使用的傳感器多種多樣,各有不同的原理和特點,目前常見的主要有視覺傳感器、激光傳感器、紅外傳感器、超聲波傳感器等。下面我簡單介紹一下這幾種傳感器的基本工作原理。

超聲波

超聲波傳感器的基本原理是測量超聲波的飛行時間,通過d=vt/2測量距離,其中d是距離,v是聲速,t是 飛行時間。由于超聲波在空氣中的速度與溫濕度有關(guān),在比較精確的測量中,需把溫濕度的變化和其它因素考慮進(jìn)去。

上面這個圖就是超聲波傳感器信號的一個示意。通過壓電或靜電變送器產(chǎn)生一個頻率在幾十kHz的超聲波脈沖組成波包,系統(tǒng)檢測高于某閾值的反向聲波,檢測到后使用測量到的飛行時間計算距離。超聲波傳感器一般作用距離較短,普通的有效探測距離都在幾米,但是會有一個幾十毫米左右的最小探測盲區(qū)。由于超聲傳感器的成本低、實現(xiàn)方法簡單、技術(shù)成熟,是移動機(jī)器人中常用的傳感器。超聲波傳感器也有一些缺點,首先看下面這個圖。

因為聲音是錐形傳播的,所以我們實際測到的距離并不是 一個點,而是某個錐形角度范圍內(nèi)最近物體的距離。

另外,超聲波的測量周期較長,比如3米左右的物體,聲波傳輸這么遠(yuǎn)的距離需要約20ms的時間。再者,不同材料對聲波的反射或者吸引是不相同的,還有多個超聲傳感器之間有可能會互相干擾,這都是實際應(yīng)用的過程中需要考慮的。

紅外

一般的紅外測距都是采用三角測距的原理。紅外發(fā)射器按照一定角度發(fā)射紅外光束,遇到物體之后,光會反向回來,檢測到反射光之后,通過結(jié)構(gòu)上的幾何三角關(guān)系,就可以計算出物體距離D。

當(dāng)D的距離足夠近的時候,上圖中L值會相當(dāng)大,如果超過CCD的探測范圍,這時,雖然物體很近,但是傳感器反而看不到了。當(dāng)物體距離D很大時,L值就會很小,測量量精度會變差。因此,常見的紅外傳感器 測量距離都比較近,小于超聲波,同時遠(yuǎn)距離測量也有最小距離的限制。另外,對于透明的或者近似黑體的物體,紅外傳感器是無法檢測距離的。但相對于超聲來說,紅外傳感器具有更高的帶寬。

激光

常見的激光雷達(dá)是基于飛行時間的(ToF,time of flight),通過測量激光的飛行時間來進(jìn)行測距d=ct/2,類似于前面提到的超聲測距公式,其中d是距離,c是光速,t是從發(fā)射到接收的時間間隔。激光雷達(dá)包括發(fā)射器和接收器 ,發(fā)射器用激光照射目標(biāo),接收器接收反向回的光波。機(jī)械式的激光雷達(dá)包括一個帶有鏡子的機(jī)械機(jī)構(gòu),鏡子的旋轉(zhuǎn)使得光束可以覆蓋 一個平面,這樣我們就可以測量到一個平面上的距離信息。

對飛行時間的測量也有不同的方法,比如使用脈沖激光,然后類似前面講的超聲方案,直接測量占用的時間,但因為光速遠(yuǎn)高于聲速,需要非常高精度的時間測量元件,所以非常昂貴;另一種發(fā)射調(diào)頻后的連續(xù)激光波,通過測量接收到的反射波之間的差頻來測量時間。

圖一

圖二

比較簡單的方案是測量反射光的相移,傳感器以已知的頻率發(fā)射一定幅度的調(diào)制光,并測量發(fā)射和反向信號之間的相移,如上圖一。調(diào)制信號的波長為lamda=c/f,其中c是光速,f是調(diào)制頻率,測量到發(fā)射和反射光束之間的相移差theta之后,距離可由lamda*theta/4pi計算得到,如上圖二。

激光雷達(dá)的測量距離可以達(dá)到幾十米甚至上百米,角度分辨率高,通??梢赃_(dá)到零點幾度,測距的精度也高。但測量距離的置信度會反比于接收信號幅度的平方,因此,黑體或者遠(yuǎn)距離的物體距離測量不會像光亮的、近距離的物體那么好的估計。并且,對于透明材料,比如玻璃,激光雷達(dá)就無能為力了。還有,由于結(jié)構(gòu)的復(fù)雜、器件成本高,激光雷達(dá)的成本也很高。

一些低端的激光雷達(dá)會采用三角測距的方案進(jìn)行測距。但這時它們的量程會受到限制,一般幾米以內(nèi),并且精度相對低一些,但用于室內(nèi)低速環(huán)境的SLAM或者在室外環(huán)境只用于避障的話,效果還是不錯的。

視覺

常用的計算機(jī)視覺方案也有很多種, 比如雙目視覺,基于TOF的深度相機(jī),基于結(jié)構(gòu)光的深度相機(jī)等。深度相機(jī)可以同時獲得RGB圖和深度圖,不管是基于TOF還是結(jié)構(gòu)光,在室外強(qiáng)光環(huán)境下效果都并不太理想,因為它們都是需要主動發(fā)光的。

像基于結(jié)構(gòu)光的深度相機(jī),發(fā)射出的光會生成相對隨機(jī)但又固定的斑點圖樣,這些光斑打在物體上后,因為與攝像頭距離不同,被攝像頭捕捉到的位置也不相同,之后先計算拍到的圖的斑點與標(biāo)定的標(biāo)準(zhǔn)圖案在不同位置的偏移,利用攝像頭位置、傳感器大小等參數(shù)就可以計算出物體與攝像頭的距離。而我們目前的E巡機(jī)器人主要是工作在室外環(huán)境,主動光源會受到太陽光等條件的很大影響,所以雙目視覺這種被動視覺方案更適合,因此我們采用的視覺方案是基于雙目視覺的。

雙目視覺的測距本質(zhì)上也是三角測距法,由于兩個攝像頭的位置不同,就像我們?nèi)说膬芍谎劬σ粯樱吹降奈矬w不一樣。兩個攝像頭看到的同一個點P,在成像的時候會有不同的像素位置,此時通過三角測距就可以測出這個點的距離。與結(jié)構(gòu)光方法不同的是,結(jié)構(gòu)光計算的點是主動發(fā)出的、已知確定的,而雙目算法計算的點一般是利用算法抓取到的圖像特征,如SIFT或SURF特征等,這樣通過特征計算出來的是稀疏圖。

要做良好的避障,稀疏圖還是不太夠的,我們需要獲得的是稠密的點云圖,整個場景的深度信息。稠密匹配的算法大致可以分為兩類,局部算法和全局算法。局部算法使用像素局部的信息來計算其深度,而全局算法采用圖像中的所有信息進(jìn)行計算。一般來說,局部算法的速度更快,但全局算法的精度更高。

這兩類各有很多種不同方式的具體算法實現(xiàn)。能過它們的輸出我們可以估算出整個場景中的深度信息,這個深度信息可以幫助我們尋找地圖場景中的可行走區(qū)域以及障礙物。整個的輸出類似于激光雷達(dá)輸出的3D點云圖,但是相比來講得到信息會更豐富,視覺同激光相比優(yōu)點是價格低很多,缺點也比較明顯,測量精度要差 一些,對計算能力的要求也高很多。當(dāng)然,這個精度差是相對的,在實用的過程中是完全足夠的,并且我們目前的算法在我們的平臺NVIDIA TK1和TX1上是可以做到實時運行。

KITTI采集的圖

實際輸出的深度圖,不同的顏色代表不同的距離

在實際應(yīng)用的過程中,我們從攝像頭讀取到的是連續(xù)的視頻幀流,我們還可以通過這些幀來估計場景中 目標(biāo)物體的運動,給它們建立運動模型,估計和預(yù)測它們的運動方向、運動速度,這對我們實際行走、避障規(guī)劃是很有用的。

以上幾種是最常見的幾種傳感器 ,各有其優(yōu)點和缺點,在真正實際應(yīng)用的過程中,一般是綜合配置使用多種不同的傳感器 ,以最大化保證在各種不同的應(yīng)用和環(huán)境條件下,機(jī)器人都能正確感知到障礙物信息。我們公司的E巡機(jī)器人的避障方案就是以雙目視覺為主,再輔助以多種其他傳感器,保證機(jī)器人周邊360度空間立體范圍內(nèi)的障礙物都能被有效偵測到,保證機(jī)器人行走的安全性。

避障常用算法原理

在講避障算法之前,我們假定機(jī)器人已經(jīng)有了一個導(dǎo)航規(guī)劃算法對自己的運動進(jìn)行規(guī)劃,并按照規(guī)劃的路徑行走。避障算法的任務(wù)就是在機(jī)器人執(zhí)行正常行走任務(wù)的時候,由于傳感器的輸入感知到了障礙物的存在,實時地更新目標(biāo)軌跡,繞過障礙物。

Bug算法知乎用戶無方表示

Bug算法應(yīng)該是最簡單的一種避障算法了,它的基本思想是在發(fā)現(xiàn)障礙后,圍著檢測到的障礙物輪廓行走,從而繞開它。Bug算法目前有很多變種, 比如Bug1算法,機(jī)器人首先完全地圍繞物體,然后從距目標(biāo)最短距離的點離開。Bug1算法的效率很低,但可以保證機(jī)器人達(dá)到目標(biāo)。

Bug1算法示例

改進(jìn)后的Bug2算法中,機(jī)器人開始時會跟蹤物體的輪廓,但不會完全圍繞物體一圈,當(dāng)機(jī)器人可以直接移動至目標(biāo)時,就可以直接從障礙分離,這樣可以達(dá)到比較短的機(jī)器人行走總路徑。

Bug2算法示例

除此之外,Bug算法還有很多其他的變種, 比如正切Bug算法等等。在許多簡單的場景中,Bug算法是實現(xiàn)起來比較容易和方便的,但是它們并沒有考慮到機(jī)器人的動力學(xué)等限制,因此在更復(fù)雜的實際環(huán)境中就不是那么可靠好用了。

勢場法(PFM)

實際上,勢場法不僅僅可以用來避障,還可以用來進(jìn)行路徑的規(guī)劃。勢場法把機(jī)器人處理在勢場下的 一個點,隨著勢場而移動,目標(biāo)表現(xiàn)為低谷值,即對機(jī)器人的吸引力,而障礙物扮演的勢場中的一個高峰,即斥力,所有這些力迭加于機(jī)器人身上,平滑地引導(dǎo)機(jī)器人走向目標(biāo),同時避免碰撞已知的障礙物。當(dāng)機(jī)器人移動過程中檢測新的障礙物,則需要更新勢場并重新規(guī)劃。

上面這個圖是勢場比較典型的示例圖,最上的圖a左上角是出發(fā)點,右下角是目標(biāo)點,中間三個方塊是障礙物。中間的圖b就是等勢位圖,圖中的每條連續(xù)的線就代表了一個等勢位的一條線,然后虛線表示的在整個勢場里面所規(guī)劃出來的一條路徑,我們的機(jī)器人是沿著勢場所指向的那個方向一直行走,可以看見它會繞過這個比較高的障礙物。

最下面的圖,即我們整個目標(biāo)的吸引力還有我們所有障礙物產(chǎn)生的斥力最終形成的一個勢場效果圖,可以看到機(jī)器人從左上角的出發(fā)點出發(fā),一路沿著勢場下降的方向達(dá)到最終的目標(biāo)點,而每個障礙物勢場表現(xiàn)出在很高的平臺,所以,它規(guī)劃出來的路徑是不會從這個障礙物上面走的。

一種擴(kuò)展的方法在基本的勢場上附加了了另外兩個勢場:轉(zhuǎn)運勢場和任務(wù)勢場。它們額外考慮了由于機(jī)器人本身運動方向、運動速度等狀態(tài)和障礙物之間的相互影響。

轉(zhuǎn)動勢場考慮了障礙與機(jī)器人的相對方位,當(dāng)機(jī)器人朝著障礙物行走時,增加斥力, 而當(dāng)平行于物體行走時,因為很明顯并不會撞到障礙物,則減小斥力。任務(wù)勢場則排除了那些根據(jù)當(dāng)前機(jī)器人速度不會對近期勢能造成影響的障礙,因此允許規(guī)劃出 一條更為平滑的軌跡。

另外還有諧波勢場法等其他改進(jìn)方法。勢場法在理論上有諸多局限性, 比如局部最小點問題,或者震蕩性的問題,但實際應(yīng)用過程中效果還是不錯的,實現(xiàn)起來也比較容易。

向量場直方圖(VFH)

它執(zhí)行過程中針對移動機(jī)器人當(dāng)前周邊環(huán)境創(chuàng)建了一個基于極坐標(biāo)表示的局部地圖,這個局部使用柵格圖的表示方法,會被最近的一些傳感器數(shù)據(jù)所更新。VFH算法產(chǎn)生的極坐標(biāo)直方圖如圖所示:

圖中x軸是以機(jī)器人為中心感知到的障礙物的角度,y軸表示在該方向存在障礙物的概率大小p。實際應(yīng)用的過程中會根據(jù)這個直方圖首先辨識出允許機(jī)器人通過的足夠大的所有空隙,然后對所有這些空隙計算其代價函數(shù),最終選擇具有最低代價函數(shù)的通路通過。

代價函數(shù)受三個因素影響: 目標(biāo)方向、機(jī)器人當(dāng)前方向、之前選擇的方向,最終生成的代價是這三個因素的加權(quán)值,通過調(diào)節(jié)不同的權(quán)重可以調(diào)整機(jī)器人的選擇偏好。VFH算法也有其他的擴(kuò)展和改進(jìn),比如在VFH+算法中,就考慮了機(jī)器人運動學(xué)的限制。由于實際底層運動結(jié)構(gòu)的不同,機(jī)器的實際運動能力是受限的,比如汽車結(jié)構(gòu),就不能隨心所欲地原地轉(zhuǎn)向等。VFH+算法會考慮障礙物對機(jī)器人實際運動能力下軌跡的阻擋效應(yīng),屏蔽掉那些雖然沒有被障礙物占據(jù)但由于其阻擋實際無法達(dá)到的運動軌跡。我們的E巡機(jī)器人采用的是兩輪差動驅(qū)動的運動形式,運動非常靈活,實際應(yīng)用較少受到這些因素的影響。

具體可以看 一下這個圖示:

類似這樣傳統(tǒng)的避障方法還有很多,除此之外,還有許多其他的智能避障技術(shù),比如神經(jīng)網(wǎng)絡(luò)、模糊邏輯等。

神經(jīng)網(wǎng)絡(luò)方法對機(jī)器人從初始位置到目標(biāo)位置的整個行走路徑進(jìn)行訓(xùn)練建模,應(yīng)用的時候,神經(jīng)網(wǎng)絡(luò)的輸 入為之前機(jī)器人的位姿和速度以及傳感器的輸 入,輸出期望的下一目標(biāo)或運動方向。

模糊邏輯方法核心是模糊控制器,需要將專家的知識或操作人員的經(jīng)驗寫成多條模糊邏輯語句,以此控制機(jī)器人的避障過程。 比如這樣的模糊邏輯:第一條,若右前方較遠(yuǎn)處檢測到障礙物,則稍向左轉(zhuǎn);第 二條,若右前方較近處檢測到障礙物,則減速并向左轉(zhuǎn)更多角度;等等。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 傳感器
    +關(guān)注

    關(guān)注

    2541

    文章

    49945

    瀏覽量

    747439
  • 機(jī)器人
    +關(guān)注

    關(guān)注

    210

    文章

    27838

    瀏覽量

    204566
  • 移動機(jī)器人
    +關(guān)注

    關(guān)注

    2

    文章

    753

    瀏覽量

    33478

原文標(biāo)題:【納博特 | 聚焦】從傳感器到算法原理,機(jī)器人視覺避障原來是這樣的

文章出處:【微信號:gaogongrobot,微信公眾號:高工機(jī)器人】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    移動機(jī)器人技術(shù)與常用傳感器

    移動機(jī)器人智能的一個重要標(biāo)志就是自主導(dǎo)航,而實現(xiàn)機(jī)器人自主導(dǎo)航有個基本要求——。下面讓我們來了解一下移動機(jī)器人
    發(fā)表于 06-15 14:32 ?5313次閱讀

    基于傳感器信息在機(jī)器人方面的應(yīng)用研究

    的關(guān)鍵技術(shù).也是國內(nèi)外智能機(jī)器人近期發(fā)展的一個熱點.其顯著特征是具有傳感器信息反饋.可以實現(xiàn)很好的智能行為。本文主要針對基于傳感器信息的多關(guān)節(jié)機(jī)器人實時
    的頭像 發(fā)表于 04-08 08:51 ?9766次閱讀

    機(jī)器人產(chǎn)品傳感器越多,就越能有效

      激光雷達(dá)作為自動駕駛和機(jī)器人等領(lǐng)域中的重要傳感器,一直扮演著“眼睛”的角色,360°掃描周圍環(huán)境,構(gòu)建厘米級別高精度地圖,為后續(xù)導(dǎo)航做輔助?! 〉绻麅H使用激光雷達(dá)作為唯一的
    發(fā)表于 08-27 15:44

    傳感器越多,越能有效?

    激光雷達(dá)作為自動駕駛和機(jī)器人等領(lǐng)域中的重要傳感器,一直扮演著“眼睛”的角色,360°掃描周圍環(huán)境,構(gòu)建厘米級別高精度地圖,為后續(xù)導(dǎo)航做輔助。  但如果僅使用激光雷達(dá)作為唯一的
    發(fā)表于 08-27 17:19

    解讀機(jī)器人的幾大技術(shù)

    隨著機(jī)器人在工廠、倉庫、酒店、商場、餐廳等環(huán)境中的使用,人們對機(jī)器人的移動能力越為重視,以至于成為一個極為關(guān)鍵且必要的功能。人們希望機(jī)器人
    發(fā)表于 12-12 16:04

    移動機(jī)器人的超聲模糊算法

    超聲傳感器是移動機(jī)器人常用傳感器,但存在幻影的干擾。該文提出多個超聲
    發(fā)表于 06-29 08:19 ?40次下載

    移動機(jī)器人使用的傳感器

    實現(xiàn)與導(dǎo)航的必要條件是環(huán)境感知,在未知或者是部分未知的環(huán)境下需要通過傳感器獲取周圍環(huán)境信息,包括障礙物的尺寸形狀和位置等信息,因此
    發(fā)表于 01-07 11:40 ?1448次閱讀

    深度分析:服務(wù)機(jī)器人紅外傳感器安裝位置

    服務(wù)機(jī)器人在家庭住宅、酒店客房、辦公空間、會所等室內(nèi)空間使用時,都要用到傳感器,通常采用紅外、超聲波、激光雷達(dá)、雙目視覺四種
    發(fā)表于 01-13 09:56 ?4452次閱讀
    深度分析:服務(wù)<b class='flag-5'>機(jī)器人</b>紅外<b class='flag-5'>避</b><b class='flag-5'>障</b><b class='flag-5'>傳感器</b>安裝位置

    設(shè)計雙目視覺移動機(jī)器人的路徑規(guī)劃和系統(tǒng)的研究說明

    ,采用邊界不變矩實現(xiàn)障礙物和目標(biāo)物的區(qū)分,改進(jìn)了經(jīng)典的人工勢場法進(jìn)行路徑的規(guī)劃,根據(jù)模糊控制原理設(shè)計了控制規(guī)則。實際的運行結(jié)果表
    發(fā)表于 08-29 17:03 ?3次下載
    設(shè)計雙目<b class='flag-5'>視覺</b>移動<b class='flag-5'>機(jī)器人</b>的路徑規(guī)劃和<b class='flag-5'>避</b><b class='flag-5'>障</b>系統(tǒng)的研究<b class='flag-5'>說明</b>

    工業(yè)機(jī)器人主要用到了哪些傳感器

    移動機(jī)器人需要通過傳感器實時獲取周圍的障礙物信息,包括尺寸、形狀和位置信息,來實現(xiàn)。使用
    發(fā)表于 10-24 09:35 ?2591次閱讀

    機(jī)器人相關(guān)解決方案的器件研究

    實現(xiàn)與導(dǎo)航的必要條件是環(huán)境感知,在未知或者是部分未知的環(huán)境下需要通過傳感器獲取周圍環(huán)境信息,包括障礙物的尺寸、形狀和位置等信息,因此
    發(fā)表于 11-23 09:35 ?801次閱讀

    使用超聲波傳感器和Arduino構(gòu)建一個機(jī)器人

    我們將使用超聲波傳感器和 Arduino 構(gòu)建一個機(jī)器人。這里使用超聲波傳感器通過計算機(jī)器人
    發(fā)表于 09-08 15:14 ?3131次閱讀
    使用超聲波<b class='flag-5'>傳感器</b>和Arduino構(gòu)建一個<b class='flag-5'>避</b><b class='flag-5'>障</b><b class='flag-5'>機(jī)器人</b>

    使用紅外傳感器機(jī)器人

    電子發(fā)燒友網(wǎng)站提供《使用紅外傳感器機(jī)器人.zip》資料免費下載
    發(fā)表于 11-24 15:03 ?3次下載
    使用紅外<b class='flag-5'>傳感器</b>的<b class='flag-5'>避</b><b class='flag-5'>障</b><b class='flag-5'>機(jī)器人</b>

    常用哪些傳感器?機(jī)器人視覺原來是這樣的

    是指移動機(jī)器人在行走過程中,通過傳感器感知到在其規(guī)劃路線上存在靜態(tài)或動態(tài)障礙物時,按照 一定的算法實時更新路徑,繞過障礙物,最后達(dá)到目標(biāo)點。
    發(fā)表于 07-26 14:47 ?2020次閱讀
    <b class='flag-5'>避</b><b class='flag-5'>障</b><b class='flag-5'>常用</b>哪些<b class='flag-5'>傳感器</b>?<b class='flag-5'>機(jī)器人</b><b class='flag-5'>視覺</b><b class='flag-5'>避</b><b class='flag-5'>障</b>原來是這樣的

    解讀工業(yè)機(jī)器人常用視覺傳感器、激光傳感器、紅外傳感器、超聲波傳感器

    ? 移動機(jī)器人需要通過傳感器實時獲取周圍的障礙物信息,包括尺寸、形狀和位置信息,來實現(xiàn)
    的頭像 發(fā)表于 06-19 17:06 ?852次閱讀
    解讀工業(yè)<b class='flag-5'>機(jī)器人</b><b class='flag-5'>避</b><b class='flag-5'>障</b><b class='flag-5'>常用</b>的<b class='flag-5'>視覺</b><b class='flag-5'>傳感器</b>、激光<b class='flag-5'>傳感器</b>、紅外<b class='flag-5'>傳感器</b>、超聲波<b class='flag-5'>傳感器</b>