Sensorless Force Estimation
- 又稱: sensorless force sensing, external force estimation, model-based force estimation, proprioceptive force estimation, sensorless torque estimation
- 類別: Sensing › Contact & force
- 標籤: force-estimation, proprioception, dynamics, collision-detection, actuator-modeling, compliant-control
以馬達電流、關節狀態與動態模型,而非專用的力感測器,來估測機器人對環境施加或從環境承受的力與力矩。
定義
無感測器力估測(sensorless force estimation)是指在沒有專用力/力矩感測器的情況下,推斷機器人所受接觸力或外部力矩的做法。它利用機器人本來就在量測的訊號,例如馬達電流以及關節位置與速度,再搭配機器人動力學與致動器的模型。估測值是所量測的致動器出力中,模型無法以機器人自身運動、重力與摩擦解釋的那一部分:剩下的任何部分都歸因於外部互動。
基本的推算鏈從馬達電流開始。對電動馬達而言,扭矩透過扭矩常數大致與電流成正比,再經過減速比,便得到近似的關節扭矩。減去剛體動力學模型針對所量測運動預測的扭矩,就能得到外部關節扭矩的估測值。若假設只有單一接觸位置,便可透過機器手臂雅可比矩陣的轉置,把這些扭矩對應成末端執行器上的力。由於從帶雜訊的編碼器資料求出的加速度並不可靠,常見方法會避開加速度:擾動觀測器會對殘差扭矩濾波,而廣義動量觀測器則利用機器人的動量估測外部扭矩,無需對速度微分。
最大的誤差來源通常是致動器,而不是手臂本身。減速機會帶來隨速度、負載、溫度與方向而變的摩擦,還有背隙與扭矩漣波,而高減速比讓外力很難與內部損耗區分開來。這就是為什麼無感測器估測在可回驅的設計上效果最好,例如直驅與準直驅致動器,也是為什麼摩擦識別在任何實作中都占很大一部分。學習而得的模型,例如從馬達訊號預測致動器扭矩或摩擦的神經網路,能捕捉難以寫成式子的效應。
無感測器估測不如經過校正的力/力矩感測器精確,但它較便宜,不會在手腕處增加質量或配線,而且能偵測任何連桿上的接觸,而不只是感測器安裝點的接觸。它廣泛用於碰撞偵測,以及足式機器人的柔順行為。
為何重要
碰撞偵測、柔順互動與接觸密集的操作都需要力的資訊,但力/力矩感測器昂貴、脆弱,而且只能在一個點上量測。無感測器估測讓低成本機器人與足式平台能以既有的硬體獲得可用的接觸感知。
主要應用
- 碰撞偵測 — 發生非預期接觸時讓機器手臂停止或縮回
- 足式機器人 — 從關節扭矩偵測足部接觸並估測地面反作用力
- 低成本機器手臂 — 不需手腕感測器即可實現柔順控制與手動引導
- 手術與醫療機器人 — 在難以裝設感測器之處估測工具的互動力
- 觸覺遠端操作 — 以估測的接觸力為操作者提供力回饋
實際應用
團隊通常會先從無接觸時記錄的動作資料識別機器人的動態與摩擦參數,為每個關節擬合庫侖摩擦與黏滯摩擦,並核對每顆馬達的扭矩常數。接著,他們會在即時控制迴路中執行動量觀測器或擾動觀測器,並將其輸出與參考用的力/力矩感測器或已知重量比較,以校正閾值。在碰撞偵測上,他們會為每個關節設定閾值,既要高到能忽略快速運動時的模型誤差,又要低到能在接觸時迅速停下機器人;在力控制上,他們接受比感測器更低的頻寬與精度,並在機器人升溫後重新檢查摩擦參數。
常見誤解
- 馬達電流直接量測關節扭矩 — 必須先扣除摩擦、齒輪損耗與機器人自身的動態,才能估測外力
- 無感測器估測和力/力矩感測器一樣準確 — 它通常雜訊較多、準確度較低,在使用高減速比減速機與低速時尤其如此
- 它在任何機器人上都同樣有效 — 可回驅、低摩擦的致動器所得的估測遠優於高減速比的致動器
- 關節扭矩估測值能告訴你接觸位置在哪 — 要對應成笛卡兒空間中的力,必須已知或估測接觸位置
誰需要了解
- 打造柔順機器人與協作機器人的控制工程師
- 足式機器人開發者
- 設計低成本機器手臂的團隊
- 從事致動器建模與機器人安全研究的人員
相關技術
- 動量觀測器(Momentum Observer)
- 擾動觀測器(Disturbance Observer)
- 力/力矩感測器(Force/Torque Sensor)
- 準直驅(Quasi Direct Drive)
- 系統識別(System Identification)
- 機器手臂雅可比矩陣(Manipulator Jacobian)
相關術語
相關專案
- Drake: MIT robotics toolbox for model-based dynamics, optimization, and control system design
- MoveIt 2: Motion planning framework for ROS 2 robot arms, with kinematics and collision checking
- DART: C++ physics engine for articulated rigid body dynamics and robotics simulation
- frax: JAX library for fast, differentiable robot kinematics, dynamics and inverse kinematics
- mjfit: Exact convex collision geometry for MuJoCo pegs, holes, threads and gears