JOVANA
Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

感知接觸與距離:力、觸覺、雷射雷達、深度與聲納

巡覽那些向外探測的感測器:感受接觸力、測量物體的遠近,甚至從衛星讀取位置。

觸覺:力與接觸

在本主題前面,我們認識了機器人的「內耳」——那些報告自身關節與運動的感測器。它們是本體感受的:向內觀察。本篇要講的恰恰相反,是向外觀察世界的外感受感測器。其中最親密的一種就是觸覺。當機器人的手壓住某物時,它壓得有多用力?是快把雞蛋捏碎了,還是雞蛋正從指間滑走?

最重要的那個裝在手腕處:力/力矩感測器。想像在機器人手臂與手之間擰著一個小圓餅,它一次測量六個數字——沿三個方向(X、Y、Z)的推或拉,以及繞這三個軸的扭轉。這六個數字合起來,描述了外部世界推搡這隻手的所有方式。如果機器人把銷釘插進孔裡卻卡住了,手腕會感到側向力,控制器便可微微擺動去找到孔口——就像你感覺鑰匙在鎖裡卡住一樣。

更貼近「皮膚」的是觸覺感測器——鋪在指尖或手掌上的一格格微小壓力點,就像機器人皮膚上一塊低解析度的觸控螢幕。手腕感測器報告的是一個總的合力,而觸覺墊報告的是一張小地圖:手指哪個部位在接觸、壓力的形狀如何、那壓力是否在滑動(這是物體即將滑脫的徵兆)。這就是「知道手被推了」與「確切知道硬幣落在手掌何處」之間的差別。

用光看見距離

觸覺只能告訴你已經壓著的東西。要提前規劃,機器人需要從遠處測量距離——而我們最快的信使就是光。最經典的光學測距器是雷射雷達(LiDAR,光探測與測距)。它發出一束短暫的雷射脈衝,等待反射彈回,並對這一來回計時。光每奈秒大約走三十公分,所以計時器必須非常精確,但其原理不過是一種用光做成的回聲:越近的表面,回聲來得越早。

一束脈衝只測量一個方向。要描繪整個房間,雷射雷達會掃動光束——旋轉,或在場景上快速掃掠——每秒進行成千上萬次測量。結果是一團點雲:一群三維的點,每一個都是雷射擊中真實表面的位置。把一台旋轉雷射雷達立在走廊裡,點雲便勾勒出牆壁、門洞、一個走過的人——一副忠實的幾何骨架,沒有顏色、沒有標籤,只有形狀。

相機給出的恰好相反:色彩豐富,卻通常沒有距離。RGB-D/深度相機彌補了這一點。「RGB」是普通的彩色影像;「D」是附在每一個像素上的深度值,於是畫面裡的每個點都同時說明它有多遠。有些深度相機投射一片不可見的紅外點陣,觀察它在近處表面上如何扭曲;有些像逐像素的微型雷射雷達那樣為自己的光計時;還有些用兩個鏡頭做三角測量,與立體視覺同理,也正是你兩隻眼睛用的把戲。回報是一團帶顏色的點雲:形狀與外觀兼備,正好用來發現並抓取桌上的物體。

用聲音測距,用衛星定位

光並不是機器人能用的唯一回聲。樸素的超音波(聲納)感測器發出一聲我們聽不見的高頻啁啾,再聆聽回聲並計時——正是蝙蝠尋找飛蛾的方式,也是汽車倒車雷達在牆越來越近時嗶嗶聲越來越急的方式。聲音比光大約慢一百萬倍,這在這裡其實是一份饋贈:一來一回耗時以毫秒計而非奈秒,於是電路可以又便宜又簡單。一個聲納只值幾枚硬幣,耗電極少,能可靠地回答「兩公尺內有沒有東西?」——只是它說不出精確形狀,只能給出前方物體的大致距離。

觸覺、光與聲音都在回答「那東西離我多遠?」。但室外機器人面對的是另一個問題:「我在地球上的什麼地方?」這就是GNSS/GPS的工作。頭頂上一群衛星,每一顆都廣播著時間和自己的位置。接收器同時聽到好幾顆,再根據每個訊號到達所花時間的細微差別,解算出自己在地球上的位置——就像靠幾座遠處教堂鐘聲傳到耳邊的時間長短,推算出你站在何處。

普通 GPS 把你定位到幾公尺之內——對一台決定自己在哪條街上的配送車足夠了,對在兩條線之間停車卻毫無用處。加上額外的校正(一種稱為 RTK 的技術),GNSS 可銳化到幾公分,正因如此自動駕駛汽車和田間測繪的農業機器人都依賴它。代價是衛星訊號微弱,需要開闊的天空視野,於是 GNSS 在室內、隧道裡、高樓之間會失明——而那恰恰是你希望雷射雷達和相機接手的地方。

為任務選對感官

沒有哪種向外看的感測器樣樣在行;每一種都有寫進其物理原理裡的盲點。了解這些盲點,等於完成了設計機器人的一半。玻璃是著名的陷阱:雷射雷達的雷射會直接穿過窗戶,或在鏡子上反彈,於是機器人「看到」的是後面的房間,而非眼前的玻璃。霧、雨、塵也會散射雷射,把點雲抹糊。明亮的陽光則能淹沒深度相機微弱的紅外點陣,正因如此,那些在室內表現驚豔的相機,在正午的露臺上常常半盲。

  1. 室內,近處需要形狀與顏色(例如從桌上挑揀物體):選 RGB-D 深度相機。
  2. 室外或大空間,需要遠距離與精確幾何(例如汽車或測繪機器人):選雷射雷達。
  3. 只需一種便宜的「附近有東西嗎?」的保險桿式感知(例如掃地機器人避牆):幾個超音波聲納就夠了。
  4. 需要輕柔抓取或憑感覺裝配(例如插入插頭):用手腕力/力矩感測器,再配觸覺墊做精細接觸。
  5. 在開闊天空下需要知道身處地球何方(例如配送車或農用拖拉機):用 GNSS/GPS,若需公分級則加 RTK。

更深一層的道理是:你很少只選一種。因為每種感測器都以自己的方式失靈,機器人便把它們組合起來,讓一種感測器去補另一種的盲點——聲納抓住雷射雷達漏掉的玻璃門,相機補上雷射雷達缺的顏色,當 GPS 在隧道裡掉線時車輪編碼器繼續撐著。把這些資料流融合成一幅可信的圖景,本身就是一門手藝,叫做感測器融合,也正是本主題接下來幾篇要去的方向。