自主移動機器人概述

從其他多個地方“借來的”覺得需要多看看的東西,與移動機器人相關的論述。

1. 移動機器人入門

移動機器人技術應用

天上飛的,水裏遊的,地上跑的,都可以應用移動機器人領域的技術。
比如說,1、工業機器人:搬運機器人(AGV);2、商用機器人:無人車、無人機、送餐機器人、導覽機器人;3、消費類機器人:掃地機。

移動機器人的核心技術緊緊圍繞着“感知”、“決策”、“執行”這三方面。

關鍵技術一:定位與建圖(slam)
介紹如下(以下大部分摘自“www.slamcn.org”):
SLAM是Simultaneous Localization and Mapping的縮寫,意爲“同時定位與建圖”。它是指運動物體根據傳感器的信息,一邊計算自身位置,一邊構建環境地圖的過程。目前,SLAM的應用領域主要有機器人、虛擬現實和增強現實。其用途包括傳感器自身的定位,以及後續的路徑規劃、場景理解。
隨着傳感器種類和安裝方式的不同,SLAM的實現方式和難度會有很大差異。按傳感器來分,SLAM主要分爲激光、視覺兩大類。其中,激光SLAM研究較早,理論和工程均比較成熟。視覺方案目前(2016)尚處於實驗室研究階段,極少看到實際產品應用。
SLAM研究自1988年提出以來,已經過了近三十年。早期SLAM研究側重於使用濾波器理論,最小化運動體位姿和地圖的路標點的噪聲。21世紀之後,學者們開始借鑑SfM(Structure from Motion)中的方式,以優化理論爲基礎求解SLAM問題。這種方式取得了一定的成就,並且在視覺SLAM領域中取得了主導地位。
激光傳感器:激光傳感器可以直接獲得相對於環境的直接距離信息,從而實現直接相對定位,對於激光傳感器的絕對定位及軌跡優化可以在相對定位的基礎上進行。
視覺傳感器:視覺傳感器很難直接獲得相對於環境的直接距離信息,而必須通過兩幀或多幀圖像來估計自身的位姿變化,再通過累積位姿變化計算當前位置。這種方法更類似於直接用里程計進行定位,即視覺里程計(Visual Odometry)。里程計的測量積分後才相當於激光傳感器直接獲得的定位信息,這就是圖優化SLAM框架中的前端。而後端對定位和位姿軌跡的優化本質上與激光傳感器的優化相同,都基於最優估計的理論框架進行。
關鍵技術二:規劃。
規劃包括路徑規劃和運動規劃。規劃相關的技術發展較爲成熟。
移動機器人常用的路徑規劃算法有A*、D*等;常用的運動規劃有PID、VFF、DWA、PTG等。
關鍵技術三:控制。
關鍵技術四:結構設計、硬件設計。

傳感器

內部傳感器:裝載在機器人身上並且不依賴外部設備的傳感器。可進行自我狀態估計,但終究“當局者迷”。
1.編碼器。2.IMU。3.雷達。4.深度攝像頭(或者RGBD)。5.單目攝像頭。6.雙目攝像頭。7.輔助傳感器:超聲波、紅外、碰撞。
外部傳感器:相對於“內部傳感器”。作爲機器人的觀察信息,起到“旁觀者清”的作用。
1.GPS。2.WiFi。3.藍牙。4.UWB。5.V2X。

算法

定位與建圖:ICP(or CSM)+POSE_GRAPH,粒子濾波、閉環檢測、非線性優化。
規劃:包括路徑規劃和運動規劃。移動機器人規劃方面,很多可以參考借鑑多維機械臂的規劃控制。一方面要充分考慮機器人本身的約束,另一方面要設計合理的評價函數。

2. 移動機器人產品介紹

本篇主要介紹常見的移動機器人

研究目的

任何產品的問世旨在幫助人類減輕勞動強度、節約成本,提升幸福感,移動機器人也不例外,它代替人類從事繁重、重複、危險、惡劣的環境,主要應用在物流倉儲搬運、醫療、監視、檢測等領域,配合其他傳感器和配套工具可以完成更多更復雜的功能。

面臨現狀

目前工廠實際應用的AGV大多需要預定路徑,依靠電磁,磁帶,視覺二維碼實現導航,但他們各自都有明顯的缺陷,電磁,磁帶都需要進行場地施工,後期產品線更新都需要重新施工,週期長且投資大;而二維碼雖然沒有那麼麻煩但是得定期進行清理,維護,更換產品線也得重新鋪設二維碼.
自主定位導航是AGV的發展趨勢,也是目前各大公司、高校研究的重點,目前自主定位導航也日漸成熟,主要有激光SLAM和視覺SLAM,但是兩者各有其短板,激光SLAM穩定性好、可靠性高、測量距離遠、精度高(一般3-5cm,加輔助定位可達到±1cm),但對黑色表面、玻璃、鏡面、單一長距離環境會失效,最主要是成本昂貴;視覺SLAM測量範圍廣、獲取信息完整,但處理數據量大、實時性差,且受環境影響大(如光照);實際應用中會配合起來,還要輔以超聲波、IMU(慣性測量單元)、里程計等傳感器,但大多數公司超聲波只是裝飾品,並沒有使用,因爲他會和激光雷達發生干涉.
工廠對AGV需求其實蠻旺盛的,很多公司也在考慮使用AGV來替代人力,但是有兩個核心問題擺在面前,一是造價昂貴,主要在激光雷達上,一臺AGV可能雷達成本就要2-3萬,而企業對AGV的整機價格在5萬左右;二是技術問題,自主導航算法還不是很完善,有些環境會失效;三是是相關配套設備,企業不可能只要個整機AGV,還要有配套自動回充、貨架、貨櫃、調度系統(對接他們WMS倉庫管理系統),而絕大數公司都沒有能力提供全套產品及服務,只要這兩個核心問題解決了自主定位導航AGV纔會在工廠普及。

常見產品

Turtlebot
提到移動機器人就不得不介紹Turtlebot,作爲移動機器人入門級產品,幾乎每個研究移動機器人的都是從他開始的,同時學習資料也是最豐富的;Turtlebot提供基礎的硬件架構和移動平臺,以及基於ROS的開源操作系統,編程開發者只需要依據平臺提供的各種接口就可以實現需要的功能(機器人定位、SLAM建圖、導航、跟隨等功能)。

Turtlebot2
平臺標配有微軟Kinect相機,安裝激光雷達後,可以實現基於ROS的視覺SLAM、激光SLAM;同時可以自由選配充電樁。

Turtlebot3
Turtlebot3代最大不同是所有零件都需要自己組裝,並且標配2D平面激光雷達和單板機

Clearpath Robotics
加拿大clearpath公司產品主要針對高校和科研所,提供各類室外移動平臺,搭載不同傳感器可以實現自主導航、移動偵查、移動抓取等功能
Husky A200 990x670x390mm,最大負載75Kg,最大速度1m/s
最經典的室外移動平臺,被各大高校和研究所熟知,搭載視覺相機、激光雷達、GPS等傳感器

Jackal
入門級小型室外移動平臺,508x430x250mm,最大負載20Kg,最大速度2m/s,四輪差速驅動,全地形使用

Ridgeback
主要用於室內移動平臺,960x793x296mm,最大負載100Kg,最大速度1.1m/s,基於激光雷達可實現自主移動、避障、路徑規劃

Ridgeback
Heron M300
主要用於水上機器人移動,1.35x0.98x0.32m,最大負載10Kg,最大速度1.7m/s

Warthog
水陸兩棲移動機器人 1.52x1.38x0.83m,最大負載272Kg,最大速度18Km/h(陸地),4Km/h(水面)

MiR(Mobile Industrial Robots)
丹麥MIR公司主要生產室內移動平臺,用於倉儲智能搬運,旗下現有MIR100,MIR200,MIR500等系列產品,MIR目前在業內知名度較高,在全球也有大量客戶如波音、聯合利華、愛立信、霍尼韋爾、達能等客戶
MIR100,負載爲100Kg,最大速度1.5m/s向前,0.3m/s向後
MIR200,負載200Kg,最大速度1.1m/s向前,0.3m/s向後
MIR500,最大負載500Kg,最大速度2m/s
MIRHook200,最大特點是提供牽引式推車,提高運輸效率
Kiva無疑是倉儲物流運輸領域最成功的移動機器人,在2012被亞馬遜以7.75億美元收購

KUKA
YouBot麥克納姆輪式全向移動平臺,搭載5軸機械臂,用於研究移動抓取的經典產品,只可惜這款產品停產了,好像是中國強大的模仿能力導致的,本來市場需求量就少

海康威視
阡陌系列產品,負載有300Kg,500Kg,600Kg,1000Kg

快倉科技
快倉科技算得上一家市場定位比較準確的公司,沒有用技術含量更高的完全自主導航技術,而是以視覺二維碼+慣導比較可靠的方式進入市場,穩定後向更加智能的完全自主導航方式轉變,進一步佔領市場,所以快倉產品市場佔有率較高,像京東、天貓、唯品會、大潤發、盒馬鮮生、菜鳥、中國郵政、國藥集團、國家電網等都是其客戶

木木機器人
國家人工智能標準起草單位成員,諾亞醫院物流機器人,主要用在醫療行業

思嵐科技
思嵐科技公司產品以小型激光雷達和服務機器人通用底盤爲主

雲跡
雲跡服務機器人在業內知名度較高,市場佔有率還可以,主要應用在酒店服務機器人,客戶包括蘇州洲際酒店、海口希爾頓酒店、皇冠假日酒店、浙江大酒店、深圳深航國際酒店等酒店

優必選
優必選主要做教育機器人,也做服務機器人如Cruzr,成名於2016年春節聯歡晚會,540臺 Alpha機器人與孫楠同臺表演《心中的英雄》

移動機器人種類繁多,大小公司也是不計其數,諸如馬路創新、極智嘉、歐凱、新松機器人、南江機器人等,很多公司想在這個市場分一杯羹,只是完全自主導航機器人還沒有到爆發期;主要是上面提到的三個問題:一是成本問題;二是技術問題;三是配套問題

3. 當前移動機器人需要突破的瓶頸

下一個階段,看好個人用戶、家庭用戶的機器人。面臨幾個問題:

a. 成本高,售價高

主要是技術人員開發成本高,其次是激光雷達貴,靠譜的視覺模塊貴。

b. 路徑規劃效果差

最直接的感官,各個廠商的宣傳視頻就可以看到,視頻加速播放,如果原速度,機器人移動速度、反應慢的尷尬。

c. 實用功能少

復讀機、大號學習機、鬧鐘、開關燈。這些還沒有吸引人去購買家用機器人的地步。 就算是掃地機器人,碰到汪星人拉肚子,屋裏會被“清潔”成什麼樣子,不堪去想。

4. 三維激光雷達價格

這個問題提的較寬泛,激光雷達有單線、多線之分,還有精度、距離、分辨率、視場角等參數差異,我簡單說下市面上一些主流的激光雷達
激光雷達由於國外起步較早,應用比較成熟,市場基本被國外品牌所壟斷,最近幾年國內也出現了幾款不錯的激光雷達品牌,但整體穩定性還是趕不上國外

國外激光雷達

Velodyne

美國老牌3D激光雷達生產商,知名度很高,產品也很穩定,谷歌的自動駕駛就是用他家的,其主要產品有16線,32線,64線;16線早期價格較高,現在已經批量生產,市場價格在3.5w-4.5w,32線價格在40w左右,64線在80w左右,線束每增加一倍,價格也差不多翻一番,主要是製造難度成幾何倍數增加,並且高線束客戶羣體較少沒有實現量產

SICK

德國西克,主要生產2D單線激光雷達,工業上應用很多,AGV小車基本用他家的,應用較多有:Sick LMS111,Sick TIM561,Sick TIM571等價格在幾萬元

Hokuyo

日本北陽激光雷達以2D單線爲主,在工業應用上也較多,主要型號有:
UST-10LX,UTM-30LX-EW等,價格大多在5W以下

國內激光雷達

速騰聚創

產品在國內應用較多,跟很多公司和高校都有合作,他們官網有很多案例
主要有RS-LiDAR-16、RS-LiDAR-32兩種多線激光雷達,價格分別在3w、13w左右
自動駕駛激光雷達-速騰聚創

禾賽

禾賽出了一款40線激光雷達,說是對標Velodyne64線雷達,最大區別是通過不均勻分佈線束的方法,使其最小角分辨率更小,達到0.33°,但是由於創始人自身問題,產品不禁令人擔憂,其他量產的還有思嵐科技、北科天繪、鐳神智能、北醒光子等國內品牌

5. 也來談語義SLAM/語義地圖

SLAM 現狀

SLAM發展到今天,好些人認爲這已經是個Solved Problem了。然而實際去考察,你會發現這個同時『定位』與『建圖』,在『定位』這端做了很多工作,但『建圖』這端是明顯缺乏的。按照理想中的情況,一個SLAM程序的流程應該是這樣:

  1. 對陌生環境進行一次掃描,建立地圖;
  2. 保存地圖;
  3. 以後運行時,打開這張地圖進行定位。

這基本上是SLAM的最終目標了。但是當你打開一個SLAM程序,你會發現我們只能做完第1步,往往是建完地圖之後,程序退出,所有你建起來的特徵點也好,稠密點雲也好,surfel也好,tsdf也好,好看是好看,基本沒法存下來當作地圖來繼續使用(頂多做個3D模型打印一下)。所以如果要問『SLAM現在做到什麼程度』,我覺得大致上可以這樣回答:

  • 關於第1步,現在我們能做到比較好的實時追蹤和建圖。大部分研究集中在Tracking上面,不過這種方式在無閉環時必定有累計誤差,我個人經驗是在0.5%-1%這個數量級,也許個別方案在個別數據上看起來好一些,不過視覺肯定比激光要差一些,比仔細標定的輪速計也差一些,也比較容易受干擾,但好在是一個獨立的系統,和別的能夠互相補充。有迴環可以消累積誤差,前提是得回來,自動駕駛很多場景是車一直往前開,基本不回去。
  • 關於第2步和第3步,有一些可能的解決方案,但是都不完善。相比來說,激光SLAM在地圖這邊相對統一,通常都是用2D網格和3D點雲來做,與激光數據可以直接比較。視覺地圖就沒那麼直接。很多研究並不奔着『地圖複用』的目的去,通常是做完第1步之後就完全不管了,導致我們現在沒有特別好的視覺地圖可以用。

所以現階段我們還能難說『視覺SLAM已經解決』這樣的話,除非能夠拿出一張可以隨時定位的視覺地圖。這部分的缺失,我認爲是語義SLAM的一個很重要的動機。我們不妨想想,現在有哪些可能用來作爲視覺地圖的東西:
maptype

  • 高精地圖,點雲加人工標。這個一般學校生產不出來,只有公司裏有;
  • Grid map/Occupancy map,適合激光。有RGB-D的時候可以用,純視覺困難;
  • 特徵點地圖,現在SLAM裏主要形式,類似ORB-SLAM2的地圖,容易受光照和場景影響。
  • 點雲/帶標記的點雲,很難用,可能有部分帶半稠密重建的方法可以和點雲地圖做ICP。
  • 物體地圖,以物體實例作爲路標的地圖。
  • 拓撲地圖,以路徑點作爲節點的拓撲圖,可以端到端地訓練圖像到路徑點的映射。

所以現在看來室內比較有希望的是後面幾種,自動駕駛主要是高精地圖。

什麼是語義SLAM?

語義SLAM的概念很模糊。你會找到許多帶着『Semantic』字眼,實際上完全不在說同一件事情的論文。比如從圖像到Pose端到端的VO、從分割結果建標記點雲、場景識別、CNN提特徵、CNN做迴環、帶語義標記誤差的BA,等等,都可以叫語義SLAM。

但是從實用層面考慮,我覺得最關鍵的一點是:

用神經網絡幫助SLAM提路標

提路標這件事實際上是傳統SLAM非常不擅長的事情。我們用角點和邊緣,是因爲現在只有角點和邊緣可用。如果現在有個網絡,對任意一張圖片都能正確找到圖片裏的路標,一一對應,非常魯棒,那麼後續的SLAM就是件很簡單的事情。比如現在人臉關鍵點能夠做的非常準、非常魯棒,對各種光照下的人臉我們都能找到那幾十個點, 如果我們能在道路場景或室內場景也能做到這種程度,那SLAM就完全不一樣。然而現在似乎並沒有這種做法,至少還沒流行開來。

那麼就只能退而求其次,用現有的檢測和分割來幫忙提路標。如果已經知道圖像中某個物體屬於一個既定的類別,然後再提角點,就會比針對全圖提角點要好很多。當然,如果能直接提到點,那肯定是提點更好用,檢測和分割都需要一些額外的後續處理。

舉一些上面談到的地圖例子

Mask RCNN, Semantic Fusion,Civil maps, SLAM++

帶標記的點雲是研究最多的,從很早之前就有。它的思路是把分割的結果往RGBD點雲裏投,然後做一個融合,RGBD+室內的場景多一些,室外也有一部分。18年比如ETH有把Mask RCNN結果投到3D中進行Instance推斷然後建圖的,可以達到非常細緻的結果。

再早一點比如牛津的Semantic Fusion,算是比較經典的工作

自動駕駛裏也有這種類型的高精地圖,舉例比如說Civil maps的演示視頻,點雲中有標記車道線和地面箭頭。後面也有帶物體instance的地圖,單純的給點雲上標記的事情其實並沒有太多用途。給激光用,激光ICP通常不考慮標記信息;給視覺用,視覺也沒法直接和點雲去匹配。

所以這種五顏六色的點雲來說,物體級別的地圖會更加有用。這種圖的好處在於物體實際充當了SLAM中的路標的功能,它們的提取和匹配會比傳統的角點更加魯棒。你可以期待不同天氣下都能提到同一個紅綠燈,但你不能期待對於各種天氣下同樣的建築物能提到同樣的角點。

細分下去,這種基於物體的地圖也可以有不同做法。比如室內環境,你可以準備一個3D模型庫,只檢測模型庫內的物體。這種做法在早期的SLAM++和現在的一些論文中都能看到,比如這個就是存了椅子模型的。這個模型更多一些,除了椅子還有很多小物體,能用地圖信息修正檢測結果,並且他們用的是檢測而不是分割。

所以『把物體建出來當地圖路標』其實是一個不錯的思路。剩下的就是看物體有多少類,能不能支持到大多數常見的物體。就自動駕駛來說,有了車道線,你至少就能知道自己在第幾根車道線之間。有了車道線地圖,就能知道自己在地圖上哪兩根車道線之間。類別再豐富一些,能用來定位的東西就更多,覆蓋範圍也就更寬。

這個算是語義SLAM和傳統SLAM中最不同的地方了。

Reference

  1. https://blog.csdn.net/haishaoli/article/details/77924314
  2. https://zhuanlan.zhihu.com/p/39298458
  3. https://www.zhihu.com/question/306309322/answer/556071996
  4. https://www.zhihu.com/question/302215246/answer/532124804
  5. https://zhuanlan.zhihu.com/p/58648284
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章