隨著物聯網不斷革新,機器視覺、人工智慧(AI)、機器學習(ML)、深度學習(DL)和無線感測器等技術之進步,正加速工業4.0時代的到來,智慧製造已成未來趨勢,可加速產業效率並降低總體成本。
機器人系統是複雜的猛獸,需要精心挑選的機械、電子及編程零件的組合。設計人員在撰寫程式碼之前,必須仔細閱讀規格表,判斷哪些機械組件有機會達成最終目標。機器人藉由感測器理解周遭世界,然後依賴對應演算法移動到理想的位置,而不僅是程式碼指示的位置。
設計人員在證明概念之後,需要進行更多測試才能逐步微調構想。測試是另一個複雜且艱鉅的流程,需測量和分析相對於設計人員看見和想要的事物,機器人「看到」的又是什麼。
本文旨在強調設計人員為機器人設計感測器系統時應考慮的議題,同時探討如何在這過程中獲得信心。具體來說,其包括感測器限定條件及感測器選擇、關鍵績效指標、建立測試計畫、設定測試環境,以及資料分析範例。本文會使用掃地機器人的例子來說明流程,這些原則適用於任何執行地面工作的機器人。
取得正確感測器
在為機器人選擇正確的零件時,選擇感測器是十分關鍵的步驟。用於機器人決策的資料,決定機器人看到的內容。若資料未正確反映出真實世界,機器人必定會做出怪異行為,因此不妨考慮滾輪式掃地機器人的感測需求。首先需了解導航系統共分成以下三大類型:
.隨機走動
這類機器人會使用近接感測器和防撞感測器,以最隨機的方式在環境中遊走。它們最終會涵蓋特定區域,但必須在剩餘電量仍足以回到充電站時停止清潔,否則會有電池耗盡的風險,然而如何返回充電站則是挑戰。此類方案便宜但效率低。
.智慧走動
這類機器人的目標是要透過智慧方式採用滾輪編碼器、慣性量測單元 (IMU)和光流感測器的組合,改善使用者體驗並延長電池續航力。透過更聰明的路線模式進行清潔,找到返回位於另一個房間的充電站,這樣能讓機器人做得更好,使用者體驗更佳。
.完整對應(SLAM)
SLAM機器人添加LiDAR感測器或廣角攝影機以對應其所在環境,並在極為複雜的區域內導航。這些感測器組件使硬體成本增加,因為需要更強大的處理器來處理資料。必要時機器人仍可能會回頭採用智慧走動策略,以因應黑暗或毫無特徵的區域。
IMU、滾輪編碼器和光流感測器在智慧走動和SLAM系統中,都能明顯發揮作用。接下來本文將深入了解這些功能的作用,以及如何進行最佳化。
透過航位推算降低誤差
所有智慧走動導航技巧的關鍵在於航位推算,聽起來讓人卻步,但這只是藉由測量一段時間內的速度與方向,以估算機器人相對於起始點的位置。此處的根本問題在於估算位置必然會偏離實際位置,因為長期下來會累積些許測量與估算誤差,如圖1所示,因為航位推算不會使用任何絕對參考點,所以如何將位置誤差的增率降到最低,是極其重要的一環。本文將回顧一些相關的感測器,以找出誤差來源。
滾輪編碼器特性
滾輪編碼器使用光學或磁性機制來測量機器人滾輪(前進與後退)的旋轉。這些感測器會以「度」記錄每個滾輪旋轉的最小單位量,刻度經過滾輪圓周上已知距離的校正,對應到在地面移動的距離。刻度解析度越高,就能越精確測量滾輪的移動距離,如圖2所示。
但是機器人滾輪會滑動與滑移,其動作有時會像機器人卡在障礙物上一樣明顯,有時甚至發生在人們沒注意的情況下。在某些表面上如髒污的地板或較厚的地毯,滾輪在每次旋轉時都會持續稍微打滑,彷彿在沙丘上行走。機器人在工作時可能會跨越各種表面,因此能適應各種狀況,有助於提升整體準確度,如圖3所示。
慣性測量單元感測器特性
維持正確的行進方向是遵循期望路徑的關鍵要素,可透過滾輪編碼器計算行進方向,但由於上述滑動的可能影響,計算出的並不一定都是最準確的,較好的來源是慣性測量單元。
IMU本身包含加速儀和陀螺儀,有時也包含額外的磁力計。它們具備關鍵組件,能提供數位化的慣性運動和行進方向。加速儀會追蹤線性加速的力道,當不移動時,便是重力的方向,有助於提供長期方位測量。陀螺儀可追蹤角速度,產生短期方位測量。磁力計會測量其周圍的磁場,並據此提供長期方位,在比較慣性感測器時,應考慮以下特性:
.陀螺儀偏差/零速率偏移(ZRO)
.加速儀偏差/零重力偏移(ZGO)
.陀螺儀刻度
.震動因素
.感測器雜訊
.感測器速率與量化
.熱滯現象
.軸性能差
在這些之中,最能影響感測器準確度的就是陀螺儀刻度、陀螺儀偏差和加速儀偏差。陀螺儀刻度是陀螺儀輸出相對於其動作的倍數誤差。舉例來說,若刻度誤差為1%,那麼陀螺儀每轉動100度,就會偏差1度(101°或99°)。對於任何執行地面工作的機器人,這會影響行進方向,因為它認知的是陀螺儀的讀數。抵消旋轉有助於將誤差降到最低。抵消旋轉是往曾經進行的相反方向旋轉,例如順時針轉動認知+180度,就往回轉動認知-180度。機器人未抵消旋轉的次數越多,刻度誤差就會加成。
陀螺儀偏差或零速率偏移為感測器靜止時所看到的角速率(理想情況為0)。但由於角位置由角速率積分決定,任何偏移誤差都會導致行進方向誤差不斷增加;任何角度誤差都會沿著機器人的路徑擴大,因而產生放大的位置誤差。掃地機器人的角度誤差(θ)造成的位置誤差(δ)不斷增加,如圖4所示。
加速儀偏差(或零重力偏移)與ZRO的原理類似。這是裝置靜止時的潛在加速讀數(理想情況下相當於重力)。加速儀輸出偏移會導致俯仰和翻滾誤差。這些偏移可能會影響整體方位計算,對於磁力計而言,則會影響傾斜補償。
理論上,線性加速可用於計算速率(積分)與位置(雙重積分),但即使是來自偏差與雜訊的小誤差,也可能導致積分後的速率與位置值在短時間內呈現指數成長。
光流感測器特性
光流感測器會追蹤機器人底下的地板移動,提供2D速度估計值,如圖5所示,這和電腦滑鼠的技術相同,但範圍較大,可照亮地板、偵測表面上的微小特徵並測量它們的移動。
觀察地板的好處在於感測器能追蹤機器人的移動,不受滾輪打滑影響。另一方面,認知到的某特徵動作,是地板與感測器之間速度和距離兩者的函數,想像遠端的電線桿移動的速度遠比路邊的電線桿要慢得多。若未準確校正此距離,或在使用期間有所變化,測量準確度將會受到影響。例如若表面比預期更接近感測器、例如從磁磚移到地毯,測量速度可能會高於實際速度。
光流測量也可能會受到地板表面類型的影響。某些非常平滑或深色的地板可能沒有足夠的追蹤特徵,因此測量結果可能完全錯誤。部分光流感測器具有多種照明模式,例如LED或雷射,每種模式各有其優缺點,可以根據所在表面採取最適合的類型,但必須知道何時該進行切換。
航位推算感測器融合
這些感測器有正常運作的時候,但也可能會有一個或多個感測器性能發生問題。感測器融合是一種在每個時刻選擇依賴哪些感測器資料的程序,以及如何結合其資訊以獲得更精確的整體狀態評估。例如可以比較從每個感測器得出的速率估計值,以便在操作時自行校正光流測量的刻度。如此一來,不需要原廠校正,也能讓系統適應多變的操作環境。
經過光流校正之後,可以繼續使用每個感測器篩選後的測量結果,評估光流和滾輪編碼器的資料品質。要判斷何時該信任運作正常的感測器資料,以及何時該拒絕運作失準的感測器資料,這些品質估計是重要關鍵。
感測器特性影響機器人應用
選擇感測器時,其中一個策略是根據資料表中列出的最大值和最小值,選擇落在所需容差範圍內的感測器。但最好能全面檢視感測器特性並找出這些異常狀況,以更加了解如何面對或避免這些狀況發生。
將感測器負面特性納入考量的最佳作法,就是透過資料來研究這些特性,一個理想的系統需要多種功能來協助感測器分析。這需要大量的資料收集和獨特的位置排列、操作模式、溫度等,才能呈現本文所討論的感測器品質特性。這套自動化資料收集系統需要:
.具有統計意義的感測器數目
.可跟這些感測器溝通的自訂式PCB
.依以下參數反覆排列組合,包含位置、操作模式、溫度、濕度、磁場
.資料收集與分析工具
.用於記錄資料的外部儲存裝置
排列可說是此系統最難設定的部分。利用精密三軸穩定器可進行單軸旋轉。將單軸穩定器與另一單軸穩定器呈垂直方向放置,即可進行完整的三軸動作。操作模式可透過每個PCB處理器的通訊進行變更。將這些主機板和三軸穩定器放入溫控室,即可同時修改溫度。環境模擬室可能會因濕度而使這些電路板非自然老化,而亥姆霍茲線圈(Helmholtz Coil)可用來改變磁場,新增電腦執行這些系統、記錄資料,並使用軟體進行分析,就能擁有完整的感測器特性分析系統。
儘管系統的設定十分複雜,但測試結果卻能提供超越任何技術資料的深入見解。舉例來說,若重新檢視ZRO特性,可在所有經過測試的感測器之間看到它和溫度的關係,如圖6所示。
上方資料中的每一行描述溫度變化如何影響單一感測器的ZRO(所有感測器都是相同機型)。每個感測器的表現會因溫度變化而有所不同,有些正向,有些則是負向,有些則較不受溫度影響,但這些全都會造成範圍不一的效果。
使用其他參數如偏移、增益、歪斜、旋轉、雜訊、非線性度,搭配各種不同溫度、電壓、老化和模式條件,可收集相同程度的詳細資料。其中一些效果可建模和補償,部分效果會造成限制,決定了系統的性能極限。必須根據外部因素,如成本與整合,仔細權衡感測器特性,才能為機器人應用做出最佳選擇。
演算法協助機器人發揮效能
在挑選感測器並組成系統之後,必須進行測試驗證導航演算法,並確保一致的高性能。對於執行地面工作的機器人,其定位演算法必須準確追蹤其位置,而其他演算法則可協助其發揮更大的功能。專為導航設計的演算法,以及執行機器人預定目標的演算法,如果缺乏適當的方向便毫無意義。
此原則適用於所有執行地面工作的機器人,尤其是需要涵蓋完整面積才能完成工作的清潔機器人。其對應越準確,就能越快完成工作。接待機器人可以快速引導訪客前往正確的地點,不會有任何意外發生。藉由大型倉庫機器人的精確移動,客戶能更快速且大批量取得產品。
由於滾輪式機器人通常會直線移動,因此行進方向準確度和行進方向漂移是可改善的強力指標。不過行進方向只是問題的一部分。行進方向是機器人前進的部分,但最後到達的位置最重要,測量軌跡誤差有助了解狀態估算的準確度。
依規格進行測量
決定測量行進方向和軌跡誤差後,現在需要實際情況來比較機器人的輸出。在追蹤動作的情況下,本文透過紅外線攝影系統找到彈性、準確性和精確度。這跟世界各地電影動作拍攝和機器人實驗室所採用的技術相同,如圖7所示。
實際模擬測試環境
為確保機器人能成功運作,最好能在類似預期部署環境的條件下進行測試,無論是模擬倉庫、模擬醫院或模擬起居室。環境會因放置物品的位置、走廊的長度、地板、磁場和溫度的變化而有所不同,確保測試環境能涵蓋這些類型的變化,以打造出信賴度更高、更穩定的解決方案。
有公司如CEVA的掃地機器人,根據國際標準在模擬客廳進行測試,這套較具體的標準包含多種家具、地板、斜坡、路障、牆壁等要求,藉由這組障礙和設定,可以針對使用期間會看到的相同情境,收集行進方向和軌跡資料,如圖8所示。
測試必須反映真實情境
慣性感測器會受到溫度變化的影響,而這些影響會導致行進方向的誤差,最終使用案例的環境在特定溫度範圍內會有所不同。此外,當自動機器人進入現實世界時,它們會在測試環境以外的地方遇到問題,例如人類或動物會撞到它,因此所需的路徑可能比起模型充滿更多障礙。
測試必須反映這些情境才能保持穩定性,反覆運算的次數越多,整體的樣貌就越完整,進而能將演算法到調整到更好,測試計畫的範例,包括下列測試:
.基準:在測試環境的預期範圍內改變溫度
.凸起:增加突發的方向改變或位移以模擬意外凸起
.障礙:增加物體數量和干擾
.壽命:增加測試執行次數,以模擬在工業環境中使用
在理想情況下,應在多個測試平台上多次執行這些測試,盡可能收集資料並提升工作的信心度。若要測試整個機器人,顯然更加昂貴也更複雜。本文將重點放在感測器,測試同一部機器人上的多個感測器,盡可能取得最多的資料,如此一來,就能利用多個感測器追蹤真實情況,以深入了解基本及外在因素如何影響性能。
透過測試提高準確度
缺乏適當分析,資料便無法發揮作用,但若經過仔細篩選,就能最佳化機器人的追蹤性能。舉例來說,本文的測試計畫能發現機器人認知到的行進方向,以多快速度偏離動作擷取系統測量到的行進方向。如果只用幾個數字,例如每次試驗結束時的行進方向差異,摘要表示行進方向準確度,可能就會錯過寶貴的深入解析,因為有時可能誤差很大,而這些誤差隨後會被其他的大誤差抵銷,或許會得到僅短暫出現一次意外的良好結果。
因此,本文會在每個時間點,例如在滾動15秒的範圍內檢查誤差的增率,同時將此視為個別的資料點。接著,以累積分布函數(CDF)為每次試驗繪出這些誤差增加的分布,如下方範例所示。查看繪圖中的左邊線條,可以清楚比較中等性能、最壞情況或其他百分位數並找出離群值(Outlier),如圖9所示。這有助判斷哪些感測器和演算法的行進方向偏移量低於其他情況,並示範如何調整數值以獲得更高的準確度。本文會在檢視軌跡誤差時,如圖10所示,執行類似的分析,測量方法如圖11所示:
1.絕對誤差會獨立比較偵測與實際軌道的終點,這可在漫長時間推移中,看到行進方向和距離誤差的累積。
2.相對誤差會將兩個資料組調整為在每個測量範圍內的起點相同,如此可隔離先前誤差的累積,以及因行進方向誤差而增加的誤差。
3.各測量範圍開始時,重新定向相對誤差會造成位移和旋轉差異,可隔離每單位距離增加的整體誤差與先前累積的誤差。這是識別軌跡誤差來源最佳指標,在重新導向的相對誤差中會顯示為熱點。
簡化感測器降低機器人複雜性
機器越複雜,整體各部分所需的了解也越深。確保能為機器人取得最佳的感測器,做出正確的測試計畫、收集資料,以及在分析中找出洞見。
有公司如CEVA研發具備各類特性的感測器融合解決方案,其動態校正演算法可即時在不同溫度下處理ZRO和ZGO;陀螺儀可透過各個裝置上的校正演算法修正刻度;互動式校正演算法能將感測器的偏差降到最低,在機器人應用中,大幅減少低成本感測器的漂移。
更進一步,可使用Scout機器人航位推算產品,其融合滾輪編碼器、光流感測器和IMU之間的資料。來自Scout的這項融合,也會利用其他感測器的資訊交叉校正每個感測器。比起光流感測器或滾輪本身,Scout的軌跡精確度高出5到10倍。其感測器簡化複雜性,為OEM提供簡單介面,藉由專業的技術滿足感測器需求。
(本文作者為CEVA高級營銷專員)