跳至主要內容
機器人 Physical AI FORTE MuJoCo 工程

與 Codex Astra 打造機器手臂:我們的機器人開發實務

Akash Verma - VoicePing
與 Codex Astra 打造機器手臂。淺藍色藍圖背景上,滑動底座上的 FORTE 型手臂,位於開門的印表機與顯示數位分身的筆電旁。
印表機操作構想:操作門、進入工作區域並返回。實機運作仍待驗證。
本文內容

3D 印表機可以在沒有人守在旁邊的情況下列印零件,但打開機箱門、接續下一個實體步驟,仍然需要人手。我們正在改造 FORTE 這套開放式機器手臂設計,研究如何補上這段流程,並以 Codex Astra 協助開發機構、模擬與檢查工具。

第一個目標是讓手臂能進入印表機內部。長期而言,我們也想探索與伺服器等其他設備的實體互動。先從一項完整、可量測的任務開始,才能清楚評估進展。

實用的手臂必須完成整項任務

到達印表機內部的一個點,只是操作印表機的一部分。手臂還必須開關門、避開機箱、退出,並讓設備準備好進行下一步。適合某個動作的底座位置,可能會妨礙另一個動作。

我們的原型結合六關節手臂、夾爪與實驗用滑動底座。目前已調整 CAD、模擬進入印表機的動作序列,並列印首批零件。完成組裝、通電後實際操作印表機的手臂,仍是接下來的目標。 以下實驗用來判斷哪些設計值得製作,以及下一步必須量測什麼。

商用機器手臂:Universal Robots、Franka 與 UFACTORY

商用平台展現了不同的物體操作方法。OpenArm 則提供開放硬體選項,也是我們討論自製或採購時的參考。

Universal Robots 提供的 e-Series 手臂 UR7e-920 產品繪圖。

整合完整任務

Universal Robots e-Series

具備工具 I/O、力感測及豐富相容零件生態系的精巧生產用手臂。

研究觀察: 除了手臂,夾爪、治具與設備介面同樣重要。

圖片:Universal Robots
製造商圖片中,兩台 Franka Research 3 手臂展示靈巧操作。

理解接觸

Franka Research 3

七個具扭矩感測的關節,以及用於底層控制與量測的1 kHz 介面。

研究觀察: 接觸研究需要可觀測的力與精確控制介面。

圖片:Franka Robotics
UFACTORY 的 xArm 7 示意圖,顯示七個關節與活動範圍。

使用軟體介面

UFACTORY xArm 7

七軸手臂,提供 Python/C++ SDK、ROS/ROS 2 套件及相容夾爪與直線軸配件。

研究觀察: 確認預定實驗實際需要哪些介面。

圖片:UFACTORY
WowRobo 的 OpenArm 2 雙臂平台,兩支手臂安裝於中央支架。

以開放硬體為基礎

OpenArm 2

可透過製造合作夥伴購買組裝成品的開放式雙臂平台,配置與支援依供應商而異。

研究觀察: 區分實驗彈性與組裝、適用性驗證所需的工作。

圖片:WowRobo

製造商圖片與規格於 2026 年 9 月 24 日確認。研究觀察是我們的分析,並非實機使用後的比較結果。

購買平台可以減少機械整合工作。自製 FORTE 讓我們能調整纜線路徑、安裝結構與幾何形狀,同時也要自行掌握其運作特性。這個取捨適合本次實驗,但不能據此認定自製手臂是更好的生產用途選擇。

我們在機器人市場中的角色

成熟的機器人公司已經提供性能出色的手臂、控制器與自動化平台。我們希望在應用層有所貢獻:把機器人的能力轉化成日常作業中實用的工具,從 3D 印表機操作開始,再延伸到與其他設備互動。

我們追求容易調整、兼顧成本的自動化。透過開放硬體、AI 輔助工程設計與任務專用軟體,讓機器人更容易配合周遭的工作。FORTE 是初期的嘗試,幫助我們理解如何讓這類系統在實務上有用、容易維護,並符合成本效益。

系統如何組合

規劃中的硬體路徑是 主機 → 微控制器與馬達驅動器 → 手臂與夾爪。滑動底座增加第二個工作位置。實際量測零件配合、關節反應與接觸,將有助於校正模型。

三層概念圖:軟體規劃軌跡,微控制器與馬達驅動器發出指令,關節傳動與夾爪的分解圖呈現機械零件。
軟體定義動作,電子系統驅動致動器,傳動機構與夾爪再將動作轉成實體互動。此圖為零件構成的概念示意。

目前動作在 MuJoCo 中執行:控制器發出致動器指令,物理引擎計算接觸。Codex Astra 在這個控制迴路之外協助開發。區分各自的角色,才能將失敗動作追溯到幾何結構、控制器或模型假設。

我們如何進行開發

開發分為七個步驟;當測試帶來新的認識,就回到設計階段。

定義目標、選擇硬體、準備工具、與 Codex Astra 設計、模擬測試、改良設計、列印零件,共七個步驟。結果回饋到設計中。
Codex Astra 在工程反覆驗證的過程中,協助我們提出並檢查修改。

定義目標

第一套動作是 開門、伸入、退出、關門,目標週期為 60 秒。直立的手臂必須靠接觸推動沒有動力的門,並避開機箱。空夾爪伸入測試檢查的是可達性;取出列印成品需要另一項物體操作測試。

選擇硬體

FORTE 論文 與公開程式碼儲存庫 提供了可修改的列印結構、纜線傳動與同步帶。我們初期做的一項決定,是在核准 CAD 前確認馬達的確切型號:外框尺寸相同,軸與本體長度仍可能不同。

規劃中的電氣系統將主機筆電連到 Pico 2、馬達驅動器與夾爪伺服馬達。分開訊號與電源路徑,可以更清楚地檢查每個選用零件的角色。

FORTE 電氣概覽:筆電與 USB 傳輸線連到 Pico 2 及訊號介面,控制步進馬達驅動器與夾爪伺服馬達。獨立電源路徑連接含保險絲的 24 V 電源、由停止訊號控制的繼電器、散熱風扇及伺服馬達用 6 V 穩壓器。
規劃中電氣系統的功能概覽。開啟原尺寸圖,即可查看零件標示與電源路徑。

現金支出預算也納入了既有設備的使用。OpenArm 的配置與完成程度不同,但有助於掌握採購方案的費用規模。

自製 · 2026年9月11日計畫

我們的 FORTE 原型

¥145,338

預計現金支出,已四捨五入

單臂;沿用既有工作間設備。

未計入工程人力及重做費用。

採購 · 2026年9月24日確認

OpenArm 2

US$6,500

起售價 · 依計畫匯率約104萬日圓

雙臂產品,能力與配置不同。

需取得包含配置、運費與稅費的日本交付報價。

¥113,126設備 + 工具
¥19,000運送與進口預留費用
¥13,213預備費
以原計畫每美元160日圓估算支出規模,並非即時匯率。FORTE 的精確計畫總額為145,338.16日圓。顯示的日圓金額已四捨五入;兩個平台的配置與完成程度不同。

FORTE 估算沿用現有印表機、筆電與工作間設備,未計入工程人力及重做成本。OpenArm 2 是雙臂產品。參考其起售價與供應商選項 做採購決策時,還需要包含日本交付費用的報價。

查看手臂 CAD 與選用的馬達 (2)
顯示手臂底座、肩部、前臂、腕部與夾爪的零件圖。
手臂的主要機械組件。各介面須配合選用的馬達、軸承與驅動零件。開啟圖面可查看原始解析度。

4 × NEMA17

5 mm 軸;其中一顆為雙出軸馬達。

2 × NEMA23

軸徑不同:8 mm 與6.35 mm。

1顆夾爪伺服馬達

DS3225,270°版本。

已購馬達軸孔 · 安裝 · 間隙
我們採用的馬達配置。僅憑外框尺寸,無法決定軸、安裝與間隙需求。

配置包含四顆 NEMA17 步進馬達、兩顆 NEMA23 步進馬達與一顆夾爪伺服馬達。軸的尺寸決定安裝座與帶輪的配合;硬體介面預計使用 Pico 2 與馬達驅動器。

準備工具

本機環境是配備 128 GiB 記憶體的 Apple M5 Max,使用 Python 3.11。MuJoCo 在 CPU 上計算物理行為,PyTorch 可透過 Apple 的 MPS 後端訓練。學習方塊放置與腳本控制印表機存取這兩條實驗流程,共用同一台機器的獨占執行配置。

了解模擬架構與實驗流程 (1)
本機 macOS 環境CPU 物理運算 · PyTorch 訓練 · 原生檢視器
任務與原始碼快照設定 · 不可變程式碼 · 原始碼雜湊
模擬獨占執行配置受管理工作、研究啟動器與檢視器共用

方塊放置學習

  1. Prefect 管理環境Gymnasium ↔ MuJoCo · 腳本示範
  2. HDF5 → PyTorch軌跡 · 訓練 · 儲存策略
  3. 預留模擬試驗策略 + 任務序列器 + 逆向運動學
  4. MLflow + PostgreSQL執行紀錄 · 指標 · 產出檔案參照

印表機存取研究

  1. 設有執行限制的研究啟動器原始碼快照 · 共用執行配置
  2. 接觸控制器 ↔ MuJoCo致動器指令 · 無動力門接觸
  3. 週期評估可達性 · 接觸 · 間隙 · 耗時
  4. 研究產出檔案結果 · 追蹤紀錄 · 重播紀錄
兩條實驗流程共用機器與執行限制。方塊放置策略透過學習取得,印表機動作序列由腳本控制。Codex Astra 在物理迴路之外協助開發。

可重現的執行。 simctl 啟動器會保存原始碼與任務設定的快照。Prefect 工作程序在執行前驗證原始碼雜湊;模擬、訓練與檢視器共用獨占執行配置,並限制記憶體、執行時間、數值運算執行緒數與產出檔案大小。

學習流程。 Gymnasium 封裝 MuJoCo 的重設、觀察、動作與步進介面。腳本控制器將示範記錄成含時間戳記及種子值的 HDF5 軌跡。PyTorch 將 100 筆示範按 80/20 分組,訓練 16 → 128 → 128 → 4 的行為複製網路。輸入正規化只採用訓練組資料,並依驗證損失選擇檢查點。明確的任務序列器與數值逆向運動學,將策略輸出轉成關節動作。

預留的執行試驗用來獨立於訓練損失評估任務表現。以 PostgreSQL 儲存追蹤資料的 MLflow,將參數與指標連結至資料集、檢查點與重播紀錄。

印表機流程。 另一套設有執行限制的啟動器,運行腳本式接觸控制器,並寫出研究結果與重播檔案。它共用執行配置,但不是每次執行都會登錄到 MLflow。致動器指令與 MuJoCo 接觸計算使無動力的門移動;沒有靠門上的馬達或夾爪剛性固定來強制產生結果。

纜線撓曲、背隙與完整的自身碰撞,尚未納入目前模型。FORTE 公開的 CAD 、韌體 及模擬 是上游參考資料;我們整合後的實驗環境仍未公開。

與 Codex Astra 一起設計

我們提供 Codex Astra 具體的機構問題、已購硬體與驗收項目。在腕部設計中,關鍵決定是 把兩個帶輪與纜線路徑放在一起檢查:單一零件看似合理,連成機構後仍可能失效。

從限制條件到可檢查的設計

一起設計相連的機構

檢查零件

實際腕部帶輪 CAD 幾何與纜線固定零件的近照。

纜線出口 + 固定點

成對檢查

透過交叉纜線連接的腕部帶輪與馬達帶輪成對機構的簡化示意圖。須一起考慮纜線出口、固定點與纏繞方向;這不是標註尺寸的製造圖。腕部帶輪馬達帶輪

路徑 + 纏繞方向

  1. 明確條件

    馬達尺寸、纜線路徑與限制條件。

  2. 與 Astra 擬定草案

    CAD 修改與對應的檢查腳本。

  3. 驗證

    工程師檢查配合、負載路徑與操作空間。

以腕部為例,同時檢查幾何與相連機構。開啟 CAD 圖片可查看原始工程圖。

Codex Astra 協助擬定 CAD 修改與檢查腳本。工程師在接受改動前,會檢查配合、負載傳遞路徑與工具操作空間。價值在於縮短從提出改動到實際檢查、測試之間的距離。

在模擬中測試

固定底座完成了十次門操作與伸入循環,每次耗時 58.18 個模擬秒,但只到達假定列印區域內側 20 mm。將底座移近,雖然能伸得更深,卻使完整的門操作循環無法成立。

固定底座 FORTE 手臂伸入模型中印表機的入口附近
固定底座

可操作門,伸入深度有限

測試目標:假定列印區域內側20 mm。

沿直線滑軌移向假定平台中心的 FORTE 手臂
移動底座

第二個工作位置

360 mm 行程讓空夾爪到達假定的平台中心。

不同配置下的實際模擬畫面。兩者皆使用空夾爪,均未示範取出列印成品。

這個取捨促使我們採用 行程 360 mm 的滑動底座:一個位置用來操作門,另一個位置用來進入內部。手臂先折疊再向內移動,到達假定的平台中心後,依相反順序返回。

以 12 倍速播放完整模擬序列,影片長 16 秒,對應 190.02 個模擬秒。空夾爪到達假定的平台中心;並未示範取出列印成品。

改良設計

滑動底座讓手臂能伸得更深,但完整週期需要 190.02 個模擬秒,超過 60 秒的目標。

移動底座週期

190.02 s模擬週期時間

60秒目標

到達中心 · 未達時間要求

≈61 s折疊 / 展開
≈48 s開門 / 關門
≈46 s進入 / 退出
滑動底座增加伸入深度,但完整序列超過60秒目標。各階段的近似耗時,有助於找出下一輪改良重點。

折疊、門操作與接近路徑占了大部分時間。只提高滑軌速度,無法解決大部分延遲。取樣得到的約 0.45 mm 間隙也需要實際公差檢查,而且模擬滑軌是最新 CAD 之前的設計。將動作轉移到硬體前,必須先解決這兩點。

列印零件

我們先列印轉台,再用 Bambu Studio 準備其他零件。凹刻識別碼能讓外觀相似的列印件更容易對應組裝文件。

在 Bambu Studio 中排列的含識別碼手臂零件
列印準備

識別每個零件

零件識別碼讓各部件對應組裝文件。

CAD 零件上凹刻識別碼的近照
零件識別

將識別碼刻入零件

離開列印平台後,凹刻文字仍留在零件上。

凹刻識別碼有助於在組裝時辨認零件。切片軟體畫面顯示了嵌入幾何結構的文字。

剩餘批次包含 35 種設計、37 個零件。依選用的 PLA 設定檔,預估需要 1.60 kg、80 小時 49 分鐘。提早確認軸承座配合與緊固件操作空間,可避免小小的配合誤差造成又一次長時間列印。

透過模擬研究不同條件

模擬讓我們能在改動硬體之前,一次檢驗一項假設。針對進入印表機的任務,後續實驗計畫改變三類條件:

  • 幾何: 改變底座位置、門的開啟幅度與目標位置,找出無法到達或間隙不足的條件。
  • 接觸: 改變門的阻力與摩擦,測試夾爪能否維持有效接觸。
  • 位置不確定性: 擾動估計的目標位置與關節位置,找出依賴不切實際精確度的動作。

我們會先固定控制器,記錄完成情況、非預期接觸與耗時,並保留未見過的條件組合做評估。接著以實際量測設定合理的變動範圍。

已完成的學習實驗範圍較小。透過從示範學習動作的行為複製,一個邊長 30 mm、質量 20 g 的方塊在 100 次預留試驗中成功放置,平均誤差為 4.45 mm。起始位置在水平方向變動 ±8 mm。這項實驗採用精確的模擬器狀態與較早的手臂模型,沒有使用攝影機或學習型印表機操作策略。

以 2 倍速播放完整的學習型放置過程,影片長 14 秒:將方塊放入 10 mm 容許誤差內,並保持穩定兩個模擬秒。更廣泛的接觸與感知變化,仍待未來實驗。

方塊結果驗證了這些條件下的小型學習與評估流程,尚未證明系統能穩健應對門接觸或感知誤差。擴大測試後,才能了解哪些失敗需要機構修改、控制器調整或更多示範。

我們想研究的問題

從模擬走向實機測試

下一個里程碑是完成組裝,並通電測試個別動作。嘗試完整的進出循環前,需要量測關節反應、纜線張力、印表機幾何與門的阻力。

尚待解答的工程問題

哪些量測能讓模擬器更準確地預測實體行為? 我們計畫讓同一套印表機存取控制器,分別在初始模擬器與校正後模型中執行,再將兩者的預測與預留的實機試驗比較。固定任務與控制器,有助於釐清校正本身的價值。

我們會比較週期完成情況、非預期接觸與耗時的預測和觀測結果。接著,在相同調整預算下,分別於兩個模型中開發控制器,並在相同條件下比較實機完成情況與人員介入。如此能區分預測改善與控制改善,也能檢驗更快的動作是否仍然可靠。

新夥伴可以投入的工作

機構設計、接觸控制、模擬校正與感知都有具體工作待完成。我們正在尋找能把改動提案連結到可重複實驗與可量測成果的夥伴。查看 VoicePing 工程職缺 。

分享這篇文章

一起製作、測試與學習

了解 VoicePing 的工程職缺,以及團隊正在探索的研究問題。

影片
0:00 0:00