iT邦幫忙

2026 iThome 鐵人賽

DAY 16
0
AI Engineering

Physical AI 驗證工程:30 天把機器人模擬變成可檢查的證據系列 第 16

Day 16|機器人手術模擬:器械碰到物體後,推多大力由誰決定?

  • 分享至 

  • xImage
  •  

image
image

S09 剛性替代物上的接觸力上限控制驗證

先講清楚邊界:本篇的「力」來自剛性彈簧替代物的位移換算,不是真實力感測器;5 N 是本實驗登記的工程門檻,不是人體組織的安全標準。

位置控制遇到牆,會發生什麼事?

在空中移動時,我們通常只在乎器械是否到達指定位置。但當器械碰到一個不能再往前的表面,控制器如果仍然命令它繼續前進,位置誤差就會持續存在。

這時候,位置命令可能轉化成越來越大的接觸力。

可以想像一台定速向前推的推車:前方沒有障礙物時,速度命令只是移動;撞到牆以後還繼續加力,系統最後承受多少力,就取決於牆、結構與哪一個限制先發生作用。

所以這一篇的核心問題是:

當器械壓向一個剛性替代物時,控制器能不能在接近目標力的同時,把瞬間峰值限制在預先登記的 5 N 以下?

先做一塊可以量測的「力板」

模擬中的力板不是人體組織,而是一個線性彈簧與阻尼組成的剛性替代模型:

  • 彈簧剛度宣告為 2000 N/m。
  • 阻尼為 20 Ns/m。
  • 接觸力以 F = k × d 計算,其中 d 是力板被壓下的位移。

這個做法很適合驗證控制邏輯,因為力與位移的關係明確。但它沒有組織的黏彈性、破裂、永久變形與速率相依性,因此不能拿來定義臨床安全力值。

宣告 2000 N/m,不代表真的就是 2000 N/m

如果力的數值完全依賴彈簧剛度,那麼剛度本身也必須被驗證。

我用 0.25 kg 與 0.50 kg 兩個質量做差分校正:

  • 0.25 kg 時,下沉 1.1708 mm。
  • 0.50 kg 時,下沉 2.3961 mm。
  • 差分反推剛度為 2001.56 N/m,與宣告值相差約 0.08%。

如果只用單一質量反推,會得到約 2094.6 N/m,偏差約 4.7%。原因是一個約 0.055 mm 的固定偏移會被一起算進去。兩點差分可以把固定偏移消掉,這也是為什麼「多量一個點」有時比把小數位寫得更多更重要。

四個門檻,不能只看最後穩定值

這次的目標力設為 3 N,上限設為 5 N。正式執行前鎖定四個門檻:

指標 正式結果 鎖定門檻 判定
接觸峰值 最高 3.738 N ≤ 5 N 通過
穩態力誤差 最高 0.038 N ≤ 0.5 N 通過
瞬態模型誤差 最高 0.508 N ≤ 1.0 N 通過
接觸中斷事件 0 / 30 0 通過

結果顯示,30 個 seed 的穩態平均力約為 2.995–3.000 N,而最高峰值為 3.738 N,沒有超過 5 N 上限。

最重要的不是最後停在 3 N,而是接觸瞬間也沒有衝破 5 N。因為控制器需要時間發現「碰到了」並作出反應,峰值一定會高於穩態目標。

用一條簡單模型估算瞬間超越量

接觸後的峰值可以先用下式做保守估計:

峰值 ≈ 目標力 + k × 接近速度 × 反應時間

在最差設計條件下,模型估計的瞬間增加量為 1.26 N;各 seed 的預測峰值約 3.646–4.246 N,實際量到約 3.407–3.738 N。模型比實際值高 0.239–0.508 N,仍在登記的 1 N 模型誤差門檻內。

這條式子不是精密接觸力學,而是一張快速預算表:剛度越高、接近越快、反應越慢,峰值就越大。它可以在正式模擬前先找出明顯不合理的參數組合。

沒有上限控制時,力由「誰先擋住」決定

未控制的對照組峰值達到 7.66 N。這不是因為系統想要 7.66 N,而是器械持續追逐一個到不了的位置,直到其他行程或結構限制介入。

這個對照很重要:如果沒有明確的接觸力限制,最後的力可能不是由任務需求決定,而是由機械系統中最先碰到的限制決定。

三次「安靜失敗」比報錯更危險

先導試驗曾遇到三個問題,而且都沒有明顯報錯:

  1. 在當時的模擬器版本中,讀取到的線性關節位置固定為 0,導致換算力永遠是 0;後來改由世界座標變換讀取位移。
  2. 力板與桌面碰撞幾何互相嵌入,造成零值或大幅漂移;後來重新調整幾何。
  3. 忘了把器械尖端球半徑算進初始間距,導致一開始就已經接觸,沒有完整接近歷程;後來修正幾何與防護條件。

這三種錯誤共同說明一件事:模擬器沒有報錯,不代表量測成立。真正的第一步不是調控制器,而是先證明感測值會隨物理狀態合理變化。

這篇證明了什麼,沒有證明什麼?

本篇可以支持的結論是:在剛度約 2000 N/m 的線性剛性替代物、3 N 目標、5 N 工程上限與本篇控制參數下,30 個 seed 的峰值、穩態誤差、模型誤差與接觸維持都通過預先登記的門檻。

本篇不能支持的結論包括:

  • 5 N 不是人體組織或任何臨床情境的安全值。
  • 模擬力板不是實體力感測器,沒有感測器雜訊、漂移與頻寬限制。
  • 模型沒有摩擦、剪力、組織破裂、殘餘變形與重複接觸。
  • 結果只適用於單一法向接觸,不代表複雜手術操作。

今天帶走三件事

  1. 位置控制遇到不可穿透的表面後,問題會變成接觸力控制。
  2. 驗證上限不能只看穩態值,還要看接觸瞬間的峰值。
  3. 力是由位移換算時,必須先驗證位移與剛度;否則後面的控制數字再漂亮也沒有意義。

下一篇,我們從單臂接觸進入雙臂協作。結果會提醒我們:兩個各自能工作的控制器,放在一起不一定會變成一個能工作的系統。


上一篇
Day 15|機器人手術模擬:濾掉手部顫抖,會不會也把操作意圖拖慢?
下一篇
Day 17|機器人手術模擬:24 次成功、6 次失敗:雙臂移交為什麼仍判定不通過?
系列文
Physical AI 驗證工程:30 天把機器人模擬變成可檢查的證據17
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言