<menuitem id="3fdxt"></menuitem>

<var id="3fdxt"></var><cite id="3fdxt"><i id="3fdxt"><address id="3fdxt"></address></i></cite>
<address id="3fdxt"><ins id="3fdxt"><ruby id="3fdxt"></ruby></ins></address>
<var id="3fdxt"></var>
<progress id="3fdxt"></progress>
<th id="3fdxt"></th><var id="3fdxt"></var>
<cite id="3fdxt"><span id="3fdxt"><address id="3fdxt"></address></span></cite>
<menuitem id="3fdxt"><span id="3fdxt"></span></menuitem>
<progress id="3fdxt"></progress>
<cite id="3fdxt"><span id="3fdxt"></span></cite>
廣告合作等您加入0571-87759920

企訊案例專題專欄評測焦點市場時事訪談智慧家居

從傳感器到算法原理 機器人避障還存在哪些問題

技術交流2018年09月30日 09:28來源: 機器人網
  避障是指移動機器人在行走過程中,通過傳感器感知到在其規劃路線上存在靜態或動態障礙物時,按照 一定的算法實時更新路徑,繞過障礙物,后達到目標點。
 
  避障常用哪些傳感器
 
  不管是要進行導航規劃還是避障,感知周邊環境信息是步。就避障來說,移動機器人需要通過傳感器 實時獲取自身周圍障礙物信息,包括尺寸、形狀和位置等信息。避障使用的傳感器多種多樣,各有不同的原理和特點,目前常見的主要有視覺傳感器、激光傳感器、紅外傳感器、超聲波傳感器等。下面我簡單介紹一下這幾種傳感器的基本工作原理。
 
  超聲波
 
  超聲波傳感器的基本原理是測量超聲波的飛行時間,通過d=vt/2測量距離,其中d是距離,v是聲速,t是 飛行時間。由于超聲波在空氣中的速度與溫濕度有關,在比較的測量中,需把溫濕度的變化和其它因素考慮進去。
 
  上面這個圖就是超聲波傳感器信號的一個示意。通過壓電或靜電變送器產生一個頻率在幾十kHz的超聲波脈沖組成波包,系統檢測高于某閾值的反向聲波,檢測到后使用測量到的飛行時間計算距離。超聲波傳感器一般作用距離較短,普通的有效探測距離都在幾米,但是會有一個幾十毫米左右的小探測盲區。由于超聲傳感器的成本低、實現方法簡單、技術成熟,是移動機器人中常用的傳感器。超聲波傳感器也有一些缺點,首先看下面這個圖。
 
  因為聲音是錐形傳播的,所以我們實際測到的距離并不是 一個點,而是某個錐形角度范圍內近物體的距離。
 
  另外,超聲波的測量周期較長,比如3米左右的物體,聲波傳輸這么遠的距離需要約20ms的時間。再者,不同材料對聲波的反射或者吸引是不相同的,還有多個超聲傳感器之間有可能會互相干擾,這都是實際應用的過程中需要考慮的。
 
  紅外
 
  一般的紅外測距都是采用三角測距的原理。紅外發射器按照一定角度發射紅外光束,遇到物體之后,光會反向回來,檢測到反射光之后,通過結構上的幾何三角關系,就可以計算出物體距離D。
 
  當D的距離足夠近的時候,上圖中L值會相當大,如果超過CCD的探測范圍,這時,雖然物體很近,但是傳感器反而看不到了。當物體距離D很大時,L值就會很小,測量量精度會變差。因此,常見的紅外傳感器 測量距離都比較近,小于超聲波,同時遠距離測量也有小距離的限制。另外,對于透明的或者近似黑體的物體,紅外傳感器是無法檢測距離的。但相對于超聲來說,紅外傳感器具有更高的帶寬。
 
  激光
 
  常見的激光雷達是基于飛行時間的(ToF,time of flight),通過測量激光的飛行時間來進行測距d=ct/2,類似于前面提到的超聲測距公式,其中d是距離,c是光速,t是從發射到接收的時間間隔。激光雷達包括發射器和接收器 ,發射器用激光照射目標,接收器接收反向回的光波。機械式的激光雷達包括一個帶有鏡子的機械機構,鏡子的旋轉使得光束可以覆蓋 一個平面,這樣我們就可以測量到一個平面上的距離信息。
 
  對飛行時間的測量也有不同的方法,比如使用脈沖激光,然后類似前面講的超聲方案,直接測量占用的時間,但因為光速遠高于聲速,需要非常高精度的時間測量元件,所以非常昂貴;另一種發射調頻后的連續激光波,通過測量接收到的反射波之間的差頻來測量時間。
 
  圖一
 
  圖二
 
  比較簡單的方案是測量反射光的相移,傳感器以已知的頻率發射一定幅度的調制光,并測量發射和反向信號之間的相移,如上圖一。調制信號的波長為lamda=c/f,其中c是光速,f是調制頻率,測量到發射和反射光束之間的相移差theta之后,距離可由lamda*theta/4pi計算得到,如上圖二。
 
  激光雷達的測量距離可以達到幾十米甚至上百米,角度分辨率高,通常可以達到零點幾度,測距的精度也高。但測量距離的置信度會反比于接收信號幅度的平方,因此,黑體或者遠距離的物體距離測量不會像光亮的、近距離的物體那么好的估計。并且,對于透明材料,比如玻璃,激光雷達就無能為力了。還有,由于結構的復雜、器件成本高,激光雷達的成本也很高。
 
  一些低端的激光雷達會采用三角測距的方案進行測距。但這時它們的量程會受到限制,一般幾米以內,并且精度相對低一些,但用于室內低速環境的SLAM或者在室外環境只用于避障的話,效果還是不錯的。
 
  視覺
 
  常用的計算機視覺方案也有很多種, 比如雙目視覺,基于TOF的深度相機,基于結構光的深度相機等。深度相機可以同時獲得RGB圖和深度圖,不管是基于TOF還是結構光,在室外強光環境下效果都并不太理想,因為它們都是需要主動發光的。像基于結構光的深度相機,發射出的光會生成相對隨機但又固定的斑點圖樣,這些光斑打在物體上后,因為與攝像頭距離不同,被攝像頭捕捉到的位置也不相同,之后先計算拍到的圖的斑點與標定的標準圖案在不同位置的偏移,利用攝像頭位置、傳感器大小等參數就可以計算出物體與攝像頭的距離。而我們目前的E巡機器人主要是工作在室外環境,主動光源會受到太陽光等條件的很大影響,所以雙目視覺這種被動視覺方案更適合,因此我們采用的視覺方案是基于雙目視覺的。
 
  雙目視覺的測距本質上也是三角測距法,由于兩個攝像頭的位置不同,就像我們人的兩只眼睛一樣,看到的物體不一樣。兩個攝像頭看到的同一個點P,在成像的時候會有不同的像素位置,此時通過三角測距就可以測出這個點的距離。與結構光方法不同的是,結構光計算的點是主動發出的、已知確定的,而雙目算法計算的點一般是利用算法抓取到的圖像特征,如SIFT或SURF特征等,這樣通過特征計算出來的是稀疏圖。
 
  要做良好的避障,稀疏圖還是不太夠的,我們需要獲得的是稠密的點云圖,整個場景的深度信息。稠密匹配的算法大致可以分為兩類,局部算法和全局算法。局部算法使用像素局部的信息來計算其深度,而全局算法采用圖像中的所有信息進行計算。一般來說,局部算法的速度更快,但全局算法的精度更高。
 
  這兩類各有很多種不同方式的具體算法實現。能過它們的輸出我們可以估算出整個場景中的深度信息,這個深度信息可以幫助我們尋找地圖場景中的可行走區域以及障礙物。整個的輸出類似于激光雷達輸出的3D點云圖,但是相比來講得到信息會更豐富,視覺同激光相比優點是價格低很多,缺點也比較明顯,測量精度要差 一些,對計算能力的要求也高很多。當然,這個精度差是相對的,在實用的過程中是完全足夠的,并且我們目前的算法在我們的平臺NVIDIA TK1和TX1上是可以做到實時運行。
 
  KITTI采集的圖
 
  實際輸出的深度圖,不同的顏色代表不同的距離
 
  在實際應用的過程中,我們從攝像頭讀取到的是連續的視頻幀流,我們還可以通過這些幀來估計場景中 目標物體的運動,給它們建立運動模型,估計和預測它們的運動方向、運動速度,這對我們實際行走、避障規劃是很有用的。
 
  以上幾種是常見的幾種傳感器 ,各有其優點和缺點,在真正實際應用的過程中,一般是綜合配置使用多種不同的傳感器 ,以大化保證在各種不同的應用和環境條件下,機器人都能正確感知到障礙物信息。我們公司的E巡機器人的避障方案就是以雙目視覺為主,再輔助以多種其他傳感器,保證機器人周邊360度空間立體范圍內的障礙物都能被有效偵測到,保證機器人行走的安全性。
 
  避障常用算法原理
 
  在講避障算法之前,我們假定機器人已經有了一個導航規劃算法對自己的運動進行規劃,并按照規劃的路徑行走。避障算法的任務就是在機器人執行正常行走任務的時候,由于傳感器的輸入感知到了障礙物的存在,實時地更新目標軌跡,繞過障礙物。
 
  Bug算法知乎用戶無方表示
 
  Bug算法應該是簡單的一種避障算法了,它的基本思想是在發現障礙后,圍著檢測到的障礙物輪廓行走,從而繞開它。Bug算法目前有很多變種, 比如Bug1算法,機器人首先完全地圍繞物體,然后從距目標短距離的點離開。Bug1算法的效率很低,但可以保證機器人達到目標。
 
  Bug1算法示例
 
  改進后的Bug2算法中,機器人開始時會跟蹤物體的輪廓,但不會完全圍繞物體一圈,當機器人可以直接移動至目標時,就可以直接從障礙分離,這樣可以達到比較短的機器人行走總路徑。
 
  Bug2算法示例
 
  除此之外,Bug算法還有很多其他的變種, 比如正切Bug算法等等。在許多簡單的場景中,Bug算法是實現起來比較容易和方便的,但是它們并沒有考慮到機器人的動力學等限制,因此在更復雜的實際環境中就不是那么可靠好用了。
 
  勢場法(PFM)
 
  實際上,勢場法不僅僅可以用來避障,還可以用來進行路徑的規劃。勢場法把機器人處理在勢場下的 一個點,隨著勢場而移動,目標表現為低谷值,即對機器人的吸引力,而障礙物扮演的勢場中的一個高峰,即斥力,所有這些力迭加于機器人身上,平滑地引導機器人走向目標,同時避免碰撞已知的障礙物。當機器人移動過程中檢測新的障礙物,則需要更新勢場并重新規劃。
 
  上面這個圖是勢場比較典型的示例圖,上的圖a左上角是出發點,右下角是目標點,中間三個方塊是障礙物。中間的圖b就是等勢位圖,圖中的每條連續的線就代表了一個等勢位的一條線,然后虛線表示的在整個勢場里面所規劃出來的一條路徑,我們的機器人是沿著勢場所指向的那個方向一直行走,可以看見它會繞過這個比較高的障礙物。下面的圖,即我們整個目標的吸引力還有我們所有障礙物產生的斥力終形成的一個勢場效果圖,可以看到機器人從左上角的出發點出發,一路沿著勢場下降的方向達到終的目標點,而每個障礙物勢場表現出在很高的平臺,所以,它規劃出來的路徑是不會從這個障礙物上面走的。
 
  一種擴展的方法在基本的勢場上附加了了另外兩個勢場:轉運勢場和任務勢場。它們額外考慮了由于機器人本身運動方向、運動速度等狀態和障礙物之間的相互影響。
 
  轉動勢場考慮了障礙與機器人的相對方位,當機器人朝著障礙物行走時,增加斥力, 而當平行于物體行走時,因為很明顯并不會撞到障礙物,則減小斥力。任務勢場則排除了那些根據當前機器人速度不會對近期勢能造成影響的障礙,因此允許規劃出 一條更為平滑的軌跡。
 
  另外還有諧波勢場法等其他改進方法。勢場法在理論上有諸多局限性, 比如局部小點問題,或者震蕩性的問題,但實際應用過程中效果還是不錯的,實現起來也比較容易。
 
  向量場直方圖(VFH)
 
  它執行過程中針對移動機器人當前周邊環境創建了一個基于極坐標表示的局部地圖,這個局部使用柵格圖的表示方法,會被近的一些傳感器數據所更新。VFH算法產生的極坐標直方圖如圖所示:
 


 

  圖中x軸是以機器人為中心感知到的障礙物的角度,y軸表示在該方向存在障礙物的概率大小p。實際應用的過程中會根據這個直方圖首先辨識出允許機器人通過的足夠大的所有空隙,然后對所有這些空隙計算其代價函數,終選擇具有低代價函數的通路通過。
 
  代價函數受三個因素影響: 目標方向、機器人當前方向、之前選擇的方向,終生成的代價是這三個因素的加權值,通過調節不同的權重可以調整機器人的選擇偏好。VFH算法也有其他的擴展和改進,比如在VFH+算法中,就考慮了機器人運動學的限制。由于實際底層運動結構的不同,機器的實際運動能力是受限的,比如汽車結構,就不能隨心所欲地原地轉向等。VFH+算法會考慮障礙物對機器人實際運動能力下軌跡的阻擋效應,屏蔽掉那些雖然沒有被障礙物占據但由于其阻擋實際無法達到的運動軌跡。我們的E巡機器人采用的是兩輪差動驅動的運動形式,運動非常靈活,實際應用較少受到這些因素的影響。
 
  具體可以看 一下這個圖示:
 


 

  類似這樣傳統的避障方法還有很多,除此之外,還有許多其他的智能避障技術,比如神經網絡、模糊邏輯等。
 
  神經網絡方法對機器人從初始位置到目標位置的整個行走路徑進行訓練建模,應用的時候,神經網絡的輸入為之前機器人的位姿和速度以及傳感器的輸 入,輸出期望的下一目標或運動方向。
 
  模糊邏輯方法核心是模糊控制器,需要將專家的知識或操作人員的經驗寫成多條模糊邏輯語句,以此控制機器人的避障過程。 比如這樣的模糊邏輯:條,若右前方較遠處檢測到障礙物,則稍向左轉;第 二條,若右前方較近處檢測到障礙物,則減速并向左轉更多角度;等等。
 
  避障過程中存在哪些問題
 
  傳感器失效
 
  從原理上來講,沒有哪個傳感器是的,比方說機器人面前是一塊完全透明的玻璃,那么采用紅外、激光雷達或視覺的方案,就可能因為這個光線直接穿過玻璃導致檢測失敗,這時候就需要超聲波這樣的傳感器來進行障礙物的偵測。所以我們在真正應用的過程中,肯定都需要采取多種傳感器的結合,對不同傳感器采集到的數據進行一個交叉驗證,以及信息的融合,保證機器人能夠穩定可靠的工作。
 
  除此之外也有其他模式可能導致傳感器失效,比如超聲波測距,一般需要超聲陣列,而陣列之間的傳感器如果同時工作的話,會容易互相產生干擾,傳感器A發射的光波反射回來被傳感器B接收,導致測量結果出現錯誤,但是如果按照順序一個個工作,由于超聲波傳感器采樣的周期相對比較長,會減慢整個采集的速度,對實時避障造成影響,這就要求從硬件的結構到算法都必須設計好,盡可能提高采樣速度,減少傳感器之間的串擾。
 
  還有比如說,機器人如果需要運動的話,一般都需要電機和驅動器,它們在工作過程中都會產生電容兼容性的問題,有可能會導致傳感器采集出現錯誤,尤其是模擬的傳感器,所以在實現過程中要把電機驅動器等設備、傳感器的采集部分,以及電源通信部分保持隔離,保證整個系統是能夠正常工作的。
 
  算法設計
 
  在剛剛提到的幾個算法,很多在設計的時候都并沒有完善考慮到整個移動機器人本身運動學模型和動力學模型,這樣的算法規劃出來的軌跡有可能在運動學上是實現不了的,有可能在運動學上可以實現,但是控制起來非常困難,比如剛剛提到的如果一臺機器人的底盤是汽車的結構,就不能隨心所欲地原地轉向,或者哪怕這個機器人是可以原地轉向,但是如果一下子做一個很大的機動的話,我們的整個電機是執行不出來的。所以在設計的時候,就要優化好機器人本身的結構和控制,設計避障方案的時候,也要考慮到可行性的問題。
 
  然后在整個算法的架構設計的時候,我們要考慮到為了避讓或者是避免傷人或者傷了機器人本身,在執行工作的時候,避障是優先級比較高的任務,甚至是zui高的任務,并且自身運行的優先級zui高,對機器人的控制優先級也要zui高,同時這個算法實現起來速度要足夠快,這樣才能滿足我們實時性的要求。
 
  總之,在我看來,避障在某種程度上可以看做機器人在自主導航規劃的一種特殊情況,相比整體全局的導航,它對實時性和可靠性的要求更高一些,然后,局部性和動態性是它的一個特點,這是我們在設計整個機器人硬件軟件架構時一定要注意的。
 
  讀者提問:
 
  多機協同的避障策略有哪些?
 
  多機協同避障策略在整個SLAM方向上都還是一個在鉆研的熱點領域,單純就避障來說,目前的方案是,當有兩個或多個機器人協同工作的時候,每個機器人會在一個局部各自維護一個相對的動態地圖,所有機器人共享一個相對靜態的地圖,而對于單個機器人來說,它們會各自維護一個更加動態的地圖,這樣當兩個機器人接近一個位置時,它們會將它們維護的動態地圖合并起來。
 
  這樣子有什么好處呢,比如視覺只能看到前方一個方向,這時候跟后面機器人的動態地圖合并之后,就能看到前后整個局部的動態信息,然后完成避障。
 
  多機協同的關鍵在于,兩個局部地圖之間的分享,就是它們分別在整個相對靜態的全局地圖上是有一小塊一個窗口的位置,到這兩個窗口可能融合的話,會把它們融合在一起,同時去指導兩個機器人的避障。在具體實現過程中,也要考慮整個信息傳輸的問題,如果是自己本身的局部地圖,由于都是本機的運算,速度一般都比較快,如果是兩個機器人協作的話,就要考慮到傳輸的延時,以及帶寬的問題。
 
  避障有無標準的測試標準和指標?
 
  目前就我所了解業界并沒有什么統一的測試標準和指標,我們目前測試的時候會考慮這些指標,比如在單個障礙物或是多個障礙物,障礙物是靜態的或動態的情況下避障效果如何,以及實際規劃出的路徑度如何,還有這個軌跡是否平滑,符合我們觀感的效果。
 
  當然,這個重要的指標我覺得應該避障是否失敗就是成功率的問題,要保證這個避障不管是碰到靜態的或者是動態的物體,然后那個物體不管是什么材質,比如說如果是動態的人,我們穿什么樣的衣服會不會對整個避障功能造成影響,另外就是不同的環境又會有什么樣的影響,比如光線充足或暗淡。對于避障來說,成功率才是為關鍵的。
@中國安防展覽網AFzhan

掃一掃,官方微博互動多

微信號:AFzhan

掃一掃,安防訊息盡收眼底

點擊這里給我發消息 全年征稿 / 資訊合作 聯系郵箱:[email protected]


  • ①凡本網注明"來源:中國安防展覽網"的所有作品,版權均屬于中國安防展覽網,轉載請必須注明
    中國安防展覽網。違反者本網將追究相關法律責任。
  • ②企業發布的公司新聞、技術文章、資料下載等內容,如涉及侵權、違規遭投訴的,一律由發布企業
    自行承擔責任,本網有權刪除內容并追溯責任。
  • ③本網轉載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或證實其內
    容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網站或個人從本網轉載時,
    必須保留本網注明的作品來源,并自負版權等法律責任。
  • ④如涉及作品內容、版權等問題,請在作品發表之日起一周內與本網聯系,否則視為放棄相關權利。

免費注冊后,你可以
了解安防行業更多資訊
查看安防行業供求信息
凸顯安防行業自身價值

馬上注冊會員

想快速被買家找到嗎
只需要發布一條商機,
被買家找到的機會高達
90%!還等什么?

馬上發布信息

高端訪談

更多
  • 劉雙廣:車聯網深度布局 謀差異化突圍
  • 力安科技董事長謝永濤:做“智慧消防”領路人
  • 智慧城市十年百位大咖訪談之徐明副主任:智慧城市頂層設計應“四規合一”
  • 江干區“在線警務”背后那些你不知道的事
  • 物聯網 AI開啟門禁發展新時代
  • 海康威視AI Cloud從概念到全面落地如何奏響?
  • 打造中國存儲國際品牌 江波龍重磅出擊2018北京安博會
  • ZNV力維董事長徐明:先活下去 再談未來
  • 深醒科技專訪:什么樣的人臉識別才?
  • 電子期刊

    更多

    專題推薦

    更多

    返回首頁
    牛图片
    <menuitem id="3fdxt"></menuitem>

    <var id="3fdxt"></var><cite id="3fdxt"><i id="3fdxt"><address id="3fdxt"></address></i></cite>
    <address id="3fdxt"><ins id="3fdxt"><ruby id="3fdxt"></ruby></ins></address>
    <var id="3fdxt"></var>
    <progress id="3fdxt"></progress>
    <th id="3fdxt"></th><var id="3fdxt"></var>
    <cite id="3fdxt"><span id="3fdxt"><address id="3fdxt"></address></span></cite>
    <menuitem id="3fdxt"><span id="3fdxt"></span></menuitem>
    <progress id="3fdxt"></progress>
    <cite id="3fdxt"><span id="3fdxt"></span></cite>
    <menuitem id="3fdxt"></menuitem>

    <var id="3fdxt"></var><cite id="3fdxt"><i id="3fdxt"><address id="3fdxt"></address></i></cite>
    <address id="3fdxt"><ins id="3fdxt"><ruby id="3fdxt"></ruby></ins></address>
    <var id="3fdxt"></var>
    <progress id="3fdxt"></progress>
    <th id="3fdxt"></th><var id="3fdxt"></var>
    <cite id="3fdxt"><span id="3fdxt"><address id="3fdxt"></address></span></cite>
    <menuitem id="3fdxt"><span id="3fdxt"></span></menuitem>
    <progress id="3fdxt"></progress>
    <cite id="3fdxt"><span id="3fdxt"></span></cite>