Blogに戻る

モバイル ALOHA 設定ガイド: ハードウェア,ソフトウェア,最初のタスク

モバイルALOHAコスト:AgileXトレーサース,ViperX300腕,計算 <unk>総BOM ~$32K.プラス$4,500より3つの安価な代替品.ROS2セットアップを完了し,ACTトレーニングウォークパス.

[←ブログ]

モバイルALOHAは,車輪ベースで全身の遠隔操作プラットフォームです.このガイドは,ハードウェアBOMから最初の成功的な模倣学習作業までの完全な設定をカバーします.

モバイルALOHAとは

スターンフォードでトニー・シャオ等によって開発されたモバイルALOHAは,両手式手臂システムを全方向移動基に組み立てることで,オリジナル ALOHA (二手式電動操作のための低コストオープンソースハードウェアシステム) を拡張する. これにより全体の電波操作が可能になります.操作者は両腕とベースを同時に制御し,ドアを開く,車車を押す,移動中にテーブルを掃除する,部屋間のナビゲーションなどの操作とともに移動を必要とする作業を示します.

モバイルALOHAの主要な研究貢献は,様々な静的なALOHAデータと少数のモバイルデモ (わずか50エピソード) で共同訓練がモバイル操作作業に驚くほどよく一般化する政策を生み出すことを示しています. これは高価なモバイルデモをより安価な静態双手データで補完し,最初に見られるよりも実践的なアプローチになります.

モバイルALOHAはロボット学習における最も複製された研究プラットフォームの一つとなっています.複数のラボ,企業,メーカーグループはバリエーションを構築し,オリジナルのハードウェアデザインは完全にオープンソースです.しかし,構築プロセスは論文が示唆するより複雑さを伴う.このガイドは学術出版社が省略する実践的な詳細をカバーしています.

五金材料の書類

Mobile ALOHA システムには,モバイルベース,操作腕 (リーダーとフォロワー),カメラシステム,コンピューティングスタックなど4つのハードウェアが必要である. 2026年の価格を詳細に説明するBOMはこちら.

移動ベース:

  • AgileX Tracer 差異ドライブベース:設定に応じて4,500~5,500ドル.これはオリジナル紙で使用されたプラットフォームです.代替品には,より高い有用荷のためにAgileX Scout Mini ($6,800) または研究級の遠距離測定のためにClearpath Jackal ($20,000+) が含まれています.しかし,Tracer はコスト制限のビルドの標準選択です.
  • 定番のマウントングフレーム (アルミ 挤出 80/20 以降): 材料 料金 300~600ドル,加上 機械加工.フレーム は 手臂 ベース を 固定 し て 移動 プラットフォーム に 固定 し,カメラ と 計算 箱 の マウントング ポイント を 提供 し て なければなりません.

フォローアーム (タスクを実行するロボットアーム):

  • 2x Trossen Robotics ViperX 300 S2 6-DOF 腕:それぞれ4,800ドル,合計9,600ドル.これらはALOHAビルドの標準フォロワー腕です.彼らは位置,速度,および現在の反射 (トーク) を備えたダイナミクセルXM/XHシリーズサーボを使用します.フル拡張で,便荷は750gであり,システムが操作できるオブジェクトの重量を制限します.
  • 2xカスタマイズされたグリッパーセット:それぞれ200~400ドル.標準的なALOHAグリッパーは,ダイナミクセルXL330セルボ付きのシンプルな平行爪グリッパーです. 3Dプリントの指パッドはほとんどの作業に適しています.

リーダー腕 (遠隔操作中に操作者が握っている):

  • 2x Trossen Robotics WidowX 250 S 6-DOF 腕:それぞれ3,100ドル,合計6,200ドル.WidowXはViperXより軽量 (0.53kg) と短距離で,座っているまたは立っている操作者が多時間データ収集セッション中に座ることを快適にします.同じダイナミキセルセルフファミリーは透明なシナマティックマッピングを保証します.
  • リーダー腕の座標: $100~200.移動式プラットフォームの枠に腰の高さで座付けられ,操作者はリーダー腕を握っている間に,プラットフォームの後ろを歩く.

カメラシステム:

  • 2x Intel RealSense D405腕カメラ 合計300ドル フォローアーム腕に搭載され 接近操作の可視性があります
  • 1x Intel RealSense D435 オーバーヘッドカメラ: 350ドル フレームマストに設置され 上から下へ作業場景を表示します
  • カメラマウントとUSBケーブル:100~150ドル

計算:

  • オンボードワークステーション: Intel NUC 13 Pro またはi7,32GB RAM,1TB NVMe SSDの mini-PC等:800-1,200ドル.これはリアルタイムで遠隔操作制御,カメラキャプチャ,データ記録を処理します.GPUは必要ありません.トレーニングはオフラインで行われます.
  • 訓練作業台 (ロボットではなく別): ACT/ディフュージョンポリシートレーニングのためのNVIDIA RTX 4090またはA100を持つデスクトップまたはクラウドインスタンスの任意の.ローカルトレーニングマシンに2,0003,000ドルの予算,または14ドル/時間でクラウドGPUインスタンスを使用する.

総コストの分割

Category Cost Range
Mobile base (AgileX Tracer) $4,500-5,500
Follower arms (2x ViperX 300 S2) $9,600
Leader arms (2x WidowX 250 S) $6,200
Grippers and mounting $700-1,200
Camera system (3x RealSense) $950-1,100
Onboard compute $800-1,200
Frame, cables, misc hardware $500-800
Total (robot only) $23,250-25,600
Training workstation (separate) $2,000-3,000
Total (complete system) $25,250-28,600

これは,一台のモバイルALOHAシステムをゼロから構築する総コストである.スタンフォード紙は,その特定の構成のために約3万2千ドルを引用した.この違いは,2026年のコンポーネント価格と,上級の構成よりもベーストラサーを使用することを反映している. 操作者によるデータ収集労働は含まれていないことに注意してください. これは,模倣学習プロジェクトにおける支配的な継続コストです.

ソフトウェアスタック: ROS2, ACT,そしてLeRobot

Mobile ALOHAソフトウェアスタックには3つの層があり,それぞれが特定の役割を持っています.

**リアルタイム制御層 (ROS2 Humble Ubuntu 22.04).**低レベルの制御はROS2ノードとして実行されます. 各腕にダイナミクセルドライバノード,AgileXプラットフォームにベースドライバノード,RealSenseカメラにカメラドライバノードがあります. 重要な要件は,すべてのノードが同期化時計 (ChronyまたはPTPを使用) を共有し,リーダーからフォロワーコマンドループが50Hzで10 ms未満の遅延で実行することである.Interbotix ROS2ドライバパッケージはアームドライバを提供し,AgileX ROS2パッケージはベースドライバを提供します.

テレオペレーションとレコーディングレイヤ. レコーディングノードは,すべての共同状態トピックとカメラ画像トピックにサインアップし,共有時計とタイムスタンプし,HDF5ファイルに同期エピソードを書きます. 各エピソードには:50Hzで14DOF関節位置 (7腕あたり) ,14DOF関節速度,グリッパー開口,30fpsで3カメラストリーム,ベース速度コマンド,エピソードメタデータ (タスクラベル,成功フラッグ,オペレーター ID) が含まれています.Hugging FaceのLeRobotは,この同期を正しく処理するALOHA型のハードウェアのための標準化されたレコーディングスクリプトを提供します.

トレーニング層 (オフライン,トレーニングワークステーション). ACT(Action Chunking with Transformers) は,ALOHAデータのための標準訓練アルゴリズムです. ACTは,動作予測のために,CVAE (条件変異自動エンコード) を搭載したトランスフォーマーエンコード・デコーダーアーキテクチャを使用して,現在の観測から将来のアクションの1つの部分 (通常は100時間ステップ) を予測します. 訓練は200エピソードのデータセットのRTX 4090で4~8時間かかります.LeRobotはACT,Difusion Policy,TDMPC2のデフォルトで訓練パイプラインを合理的に提供します.

学ぶ の 最初 の 任務

難易度順に 作業を始める.それぞれが次の作業に必要なスキル を 培う.

タスク1:固定式双手引き渡り. ロボットは,一つの腕で物体を拾い,もう一方の腕に渡します.ベースは静止のままです.これは,ベース動きの複雑さを追加せずに双手調整と調整を検証します.ターゲット:50回の示例,最初のトレーニングランで政策の成功率60〜70%です.

**タスク2:テーブルバスリング (テーブルを掃除する).**ロボットがテーブルから物体を拾い上げて,ロボットプラットフォームのゴミ箱に置く.その後,落札地点へ移動します.これは操作とともにベース動きを導入します.コートレーニング技術はここで重要です. 移动デモ50台を,200-300台静的な双手示例で引き渡し作業から増やします. 目標: 50 件のモバイルデモとコートレーニングデータ,50~60%の成功率

タスク3:ドアを開く. 扉に近づき,ハンドルを握り,ベース運動を調整しながら引っ張って押す.これは全体の調整を示した定律的なモバイルALOHAタスクです.ドアが揺るがしている間にベースが腕と同期的に移動する必要があります.これはテーブルバスリングよりもかなり困難です. 目標:100回のデモで 初期成功率は40~50%

タスク4:物体を人間に渡す. ロボットは,人間にナビゲートして,腕を伸ばし,物体を握ると解放する.これは人間の存在を検知し,解放のタイミングを要求する.ターゲット: 75回の示例で,人間の位置が異なる. 45~55%の成功率.

設定の常識の誤り

これがRCSVが初めてモバイル ALOHAシステムを構築するラボで 最も頻繁に見られる間違いです

  • ** 脱出リーダー腕重力補償.** 重力補償なしでは,リーダー腕は操作者に重く感じます.操作者の疲労は30分後に開始され,データ品質はひどく低下します.重力補償モードではDynamixel電流の制限を30〜50%に設定します.様々な姿勢でリーダー腕を握ることでテストします.ほとんど重力のない感じがします.
  • *WiFiはリーダー・フォロワー通信のために使用されます.**WiFiを通じてリーダー・フォロワー制御ループをルーティングすると,20~100 msの変数遅延が導入されます.システムが遅いと感じられ,オペレーターは過度に補償され,ジラキなデモを生成します.オンボードコンピュータでUSBからダイナミクセルへの直接接続を使用します.リーダーとフォロワー腕は同じ物理マシンでなければなりません.
  • **カメラ同期を無視する.**腕のカメラとオーバーヘッドカメラが同期されていない場合,記録された観測には時間誤差が含まれます.30fpsでは,2フレーム誤差は66 msで,迅速な操作に重要です.ハードウェアトリガー同期を使用します (RealSense マルチカメラ同期モジュール,$50) またはデータロード中に最小タイムスタンプベースの調整.
  • 静態作業中にベースをロックしない. 移動式示範を拡張するために操作のみデータ (共同訓練方法) を収集している場合は,ベースモーターブレーキを起動するか,ソフトウェアの速度制限を使用してベースが漂流するのを防ぐ.静態収集中にベース漂流は,有用な移動情報を提供せずにデータセットに騒音を追加します.
  • ケーブル管理不足. 緩いケーブルは家具に引っかかって,動き中に腕の関節に引っかかって,エピソード中に時々断絶される.エピソード中途半端に断絶されたカメラは,全エピソードを壊す.すべての移動するケーブルにケーブルチェーンや螺旋巻きを使用し,各集集セッションの開始時にケーブルルーティングを確認する.
  • 不一致なタスク定義でデータを収集する. "テーブルを清掃する"は曖昧すぎる. "A位置から青いカップを拾って灰色の箱に放す"は十分に具体的です.タスクラベル内の不一致な示例はポリシーを混乱させる.単一のエピソードを収集する前にタスク仕様文書を書いてください.

ステップバイ・ステップ 集会ガイド

このセクションは物理的な組み立て順序をカバーします ロボットハードウェアの経験がある場合は,組み立てのために2-3日分の予算,またはこれが最初の組み立てである場合は,4~5日分の予算です.

ステップ1:ベースプラットフォームの準備 (2~4時間). AgileX トラッサーの箱を解き,すべてのコンポーネントをパッケージリストにチェックしてください.再開する前にバッテリーを完全に充電してください (4~6時間空から). AgileX診断ツールを実行して,フラット表面にトラッサーを設置し,全方向移動を確認してください.一般的な問題は,ROS2ドライバーが動作する前に更新する必要があるファームウェアを持つトラッサーです. 実行する前に AgileX GitHub リポジトリから最新のファームウェアをフラッシュします

**ステップ2:マウントフレームの構築 (4~8時間).**スタンフォード ALOHA CAD図に指定された次元にアルミニウム挤出 (80/20シリーズ10またはそれと同等) を切る.フレームには3つの重要なマウント表面があります.両腕ベースプレート (左,右,中央から中央までの距離40cm) と,上部カメラのための垂直マスト. 腕の座標面は1mm以内にコプラナーでなければならない.組み立て時に機械のレベルを使用する.すべてのフレームボルトを8-12Nmにトークする.トークが不足しているボルトは腕の動き中にフレームを柔軟させる.これはデータ品質を低下させる変異性動力オフセットを導入する.

ステップ3:フォローアームのインストール (3~4時間/アーム). 各ViperX 300 S2を提供されたM6ボルトを使用してベースプレートに設置する.トークル6Nm.U2D2 (USB-to-Dynamixel アダプター) をアームのダイザーチェーンセルボバスに接続する.アームの7つのセルボス (6アームの関節 + 1グリッパー) の通信を確認するためにDynamixel Wizardを実行する. セルボが応答しない場合は,各コネクタの松散なコネクタを TTL ワイヤリングで確認してください.各セルボをポジション・ କରେント (マルチターン) コントロールモードに設定します.PID 獲得をトロッセンが推奨するデフォルトに設定します.

ステップ4:リーダー腕の設置 (2~3時間/腕). 各WidowX 250 Sをリード腕の支柱に腰の高さで設置する.リーダー腕は,操作者がプラットフォームの後ろで歩いている間に快適に保持できるように配置する必要があります.典型的な固定高度:地面から90~100cm.重力補償のために,リード腕のサーボを電流ベースポジションモードで設定します. 快適な動作のために ローンの限界を 40% に設定します 重力補償をテストします 各リーダー腕を様々な姿勢で解放します およそ静止で 30秒間に 5度以下を漂流します

ステップ5:グリッパー組み立て (グリッパーごとに1~2時間). 配備された部品から並行爪グリッパーや3Dプリントのカスタマイズされた指パッドを組み立て.グリッパーサーボ (Dynamixel XL330) は腕サーボと同じバスに接続します. 固定式グリッパー操作範囲:Dynamixel位置単位で0 (完全に閉じた) から1200 (完全に開いている) までの3Dプリント指パッド (TPU) (柔軟な Filament) で,滑らかな物体への握り付けを向上させる.パッド厚さ:2-3 mm 過剰な変形なしに良好な適合性を提供します.

ステップ6: カメラの設置 (2~3時間). D405 は提供されたまたはカスタマイズされた括弧を使用して,フォローアームの腕に両腕カメラを設置する.D405 は,最小深さ範囲7cm を備えて,近距離操作に適している.握り区を最適に覆うために,腕カメラを握り機平面に対して30-45度下向きに向ける. D435 オーバーヘッドカメラを作業スペースの80120cm上にあるマストに設置.両腕作業スペースをはっきりと眺めるために,縦から4560°を角度を傾け.両腕に沿って15~20cm間隔でケーブルクラップでカメラのUSBケーブルをすべて固定する.

ステップ7:計算装置 (1-2時間). フレームベースプレートにIntel NUCまたはそれと同等装置を設置し,反振動マウント (必須 - ベースモーションは USB接続を緩める振動を送信します).すべての USBデバイスを接続する: 2x U2D2 (フォローアーム), 2x U2D2 (リードアーム), 3x RealSense カメラ, 1x AgileXベース. 十分な帯域幅を確保するために,USB 3.0ハブを搭載する. T3ですべてのデバイスを正しく表すことを確認する.

ROS2ソフトウェアスタックセットアップ

ソフトウェアスタックには,ROS2 Humble のUbuntu 22.04 が必要です.Ubuntu 24.04 やROS2 Iron/Jazzy を使用しないでください.2026 年より新しいバージョンでは,Interbotix パッケージは完全に検証されていません.

ベースOSのインストール:

# Install ROS2 Humble (follow official docs, then):
sudo apt install ros-humble-desktop python3-colcon-common-extensions

# Install Interbotix ROS2 packages for arm control
curl 'https://raw.githubusercontent.com/Interbotix/interbotix_ros_manipulators/main/interbotix_ros_xsarms/install/amd64/xsarm_amd64_install.sh' > xsarm_install.sh
chmod +x xsarm_install.sh && ./xsarm_install.sh -d humble

# Install RealSense SDK and ROS2 wrapper
sudo apt install ros-humble-librealsense2* ros-humble-realsense2-camera

# Install AgileX ROS2 driver
cd ~/colcon_ws/src
git clone https://github.com/agilexrobotics/agx_sdk_ros2.git
cd ~/colcon_ws && colcon build --symlink-install

# Install LeRobot for data recording and training
pip install lerobot

設定と校准:

  • Dynamixel Wizard を使用してすべてのサーボで1M (1000000) にダイナミクセルボードレートを設定します.デフォルトの57600ボードは50Hzの制御に遅すぎます.
  • Servo zero 位置を校正する:各腕を機械的なホーム位置に移動し,エンコードのオフセットを記録する.これらのオフセットは各腕のInterbotix YAML 設定ファイルに表示されます.
  • リーダーとフォロワーマッピングを設定する:各リーダーコア関節は対応するフォロワーコア関節に 1:1 をマッピングする.Interbotix テレオペレーション例ではこのマッピングを箱から外して提供しますが,データを収集する前にすべての7つの関節 (グリッパーを含む) が正しく追跡されていることを確認します.
  • タイムシンクロニズメントを設定:Chronyをインストールし,すべてのノードを同じシステムクロックを使用するように設定します.カメラのタイムスタンプは,クリーンデータのために,コモンストート・ステートタイムスタンプから5ms以内になければなりません. T4を実行して同期を確認します.

カメラの校正手順

カメラの校正はオプションではありません.校正されていないカメラは記録されたデータに空間的誤差をもたらし,政策のパフォーマンスを10~25%低下させます.

**内部の校正:**RealSenseカメラは工場校正を搭載していますが,この校正は時間とともにまたは物理的な影響後,劣化することがあります.RealSense自校正ツールを実行することで内部の校正を確認してください.再投影エラーが0.5ピクセルを超えると,チップ内校正を再実行してください. 詳細を把握するには, 9x6チェッカーボード (25mm 平方メートル) の ROS2 パッケージを 9x6チェッカーボード (25mm 平方メートル) で使用して,カスタム内部の計算を行う.

**外部の校正 (カメラからベースへの変換):**各カメラの位置と方向性はロボットベースフレームとの関係で正確に測定されなければならない.腕時計カメラでは,これは主に腕の前向きの運動学とカメラの座標オフセットによって決定される.カメラの座標オフセットをカリッパーで測定する (位置精度1mm,方向精度2度). オーバーヘッドカメラでは,ロボットベースフレームの既知の位置に配置された ArUco マーカーを使用して,PnP問題を解いて,カメラからベースへの変換を計算します.腕を既知の位置にコマンドして,端エフェクターのカメラ投影が5ピクセル以内に予想されるピクセル位置に一致していることを確認することによって校正を確認します.

マルチカメラ同期化: インテルマルチカメラ同期ケーブルを使用してRealSense D435とD405カメラを接続 (別々に利用可能,約50ドル). 1台のカメラをマスターと他のカメラをスラブとして設定します. これにより,すべてのカメラがフレームを同時にキャプチャし, अन्यथाカメラストリーム間の30~60 msの緊張を引き起こす時間不調を排除します. ハードウェア同期がなければ データロードパイプラインではタイムスタンプベースのアライナメントを使用する必要があります これは信頼性が低いものです

第一次データ収集:検証作業

真の研究作業を試みる前に,パイプライン全体の終結から終結まで検証するための検証データセットを収集します.

**タスク定義:**テーブルの中央からテニスコ球を拾い,右に30cmの鉢に置く.これは最も簡単な双手作業です.一腕がボールを拾い,もう一方の腕はボールを固定的に保持します.この作業で50回のデモでシステムが80%の成功を達成できない場合は,ハードウェアや校准の問題があり,その問題を処理する前に修正する必要があります.

収集手続き:

  1. 最初の20回のデモ (固定位置の検証) において,テニスのボールを同じ位置に配置する.
  2. 次の30回の示しのために20cm半径内にボール位置を変化させ (位置多様性).
  3. 実験ごとに 15~30秒間のアクティブ・テレオペレーションが必要. ボールが落下され,ボウルが落下され,操作者が 2秒以上で修正動作を行う場合のエピソードを拒絶する.
  4. レロボットの T6 脚本を使ってすべてのデータを記録する: T7

訓練と評価: LeRobot デフォルトを使用して50回のデモでACTを訓練する.トレーニングは1〜2時間以内に単一のRTX 4090で完了する.ポリシーを導入し,訓練中に見られる位置でボールで20回の評価試験を実行する.目標:60%以上の成功率. データの収集前に以下の事項をチェックします. カメラの校正精度,リーダー・フォロワー追跡遅延,タイムスタンプ同期,データ記録の完全性 (フレームが落下されない).

トークスペcifications and Safety (トークスペcifications) と安全性

圧縮ボルトはアルミの外出で糸を剥がす.圧縮ボルトは,動き中にフレームが移動することを可能にします.以下の仕様に従ってください.

Connection Torque (Nm) Notes
Frame extrusion joints (M8) 10-12 Use threadlocker on vibrating joints
Arm base mounting (M6) 6 Check monthly for loosening
Camera mount (M4) 2-3 Easy to strip; use calibrated driver
グリッパー finger pads (M3) 1-1.5 3D-printed parts; low torque to avoid cracking
Base-to-frame (M8) 12-15 Critical for base stability; double-check after first drive test

安全性: ViperX 腕には損傷を引き起こす十分なトークがあります.常にソフトウェアの関節制限 (Interbotix YAML 設定で設定) を適用して,腕がオペレーター,フレーム,または互いに接触するのを防ぐために.初期試験中に速度制限を1.0rad/sに設定し,衝突のない操作を確認した後のみ1.5rad/sに増加します. 緊急停止ボタンを即座に切断する (Dynamixel 電源に接続されたハードウェア電子停止) を実装します.

メンテナンスとトラブルシューティング

定期的なメンテナンスにより データ収集の停電が防げられます

  • **各セッション前 (5分):**ケーブル接続を確認し,カメラフィードを確認し,テストリーダーとフォロワー追跡を3つのポーズで確認し,バッテリーレベルをチェック (最低2時間セッションで40%充電)
  • 週: フレームボルトをすべて緩めるようにチェックする. マイクロファイバー布でカメラレンズを清掃する. 1時間走行後セルボ温度が60C以下であることを確認する (ダイナミクセルウィザードでチェック).収集されたデータを2番目のドライブにバックアップする.
  • 毎月: カメラ外部を再校正する (上部カメラマウンティングは1ヶ月間1〜2mmに漂流する) 結合の耐性性に関するダイナミキルセルボケーブルを検査する.セキュリティパッチが利用可能であればROS2パッケージを更新する.
  • 一般的なトラブルシューティング: セッション中途半端でセルボが応答するのを止めた場合,おそらく過熱した.冷却まで10分待ち.問題が続く場合は,その関節のTTLケーブルを確認してください.カメラフレームが落ちている場合は,USB帯域幅を確認してください.RealSenseの3台のカメラにはUSB 3.0が必要です.USB 2.0ハブを通る場合はフレームが落ちるでしょう.

関連 読書

模倣学習ガイド · ACT vs. Diffusion Policy · ロボットカメラのセットアップ · LeRobot Getting Started · デモ分析費用 · データアノテーションガイド · データサービス

データ記録の設定

データの記録の正しい構成は,収集したデモが実際に使用可能なポリシーを訓練するかどうかを決定します.誤った設定の記録はレビュー中に良好に見えたデータを生成しますが,同期エラー,不正なアクションスペース,または欠けているモードによってトレーニング中に失敗します.

記録周波数. 50 Hz (ALOHAクラスシステムの標準) でコート状態を記録する.カメラフレームは30 fps.フォース・トークセンサーを使用する場合 (オプションだが接触力のある作業に推奨される) は,コート状態周波数に対応するために,データロード中に500 Hz で記録し,50 Hz にダウンサンプルのデータサンプルを採取する.LeRobot のレコーディングスクリプトは,ALOHAハードウェアに設定されたときにデフォルトでこれらの周波数を処理する.

アクションスペース構成. ACTは絶対的な関節位置をアクションとして想定する.各アクションベクトルは14次元である.腕あたり7関節 (6関節 + 1グリッパー).関節位置はラディアンで,グリッパー開口はダイナミクセル位置単位 (0-4095,物理範囲に映射されている) であります. タイムステップ t で記録された動作は,フォロワー腕がタイムステップ t で指示された関節位置に対応することを確認する.この区別は重要である. サーボ追跡遅延は,測定された位置が常に指示された位置にわずかに遅れることを意味します.

エピソードメタデータ. HDF5エピソードファイルには以下のものが含まれます.

  • T8:形 (T,14),d型浮動32 - 各時間ステップで指揮された関節位置
  • T9:形 (T, 14),d型浮動32 -- 測定された関節位置
  • T10:形 (T,14),d型浮動32 -- 測定された関節速度
  • T11:形 (T, 480, 640, 3),d型 uint8 -- オーバーヘッドカメラ
  • T12:形 (T, 480, 640, 3),d型 uint8
  • T13:形 (T, 480, 640, 3),d型 uint8
  • T14:形 (T,14),d型浮動32 - 伺服電流の読み込み (選択的に,接触意識の政策に役立つ)
  • T15:形 (T, 2),d型浮動32 - ベース線形と角速度コマンド
  • 属性:タスク_name (ストリング),成功 (bool),オペレーター_id (ストリング),タイムスタンプ (ISO形式)
# Verify a recorded episode for completeness
import h5py
import numpy as np

def verify_episode(filepath):
    with h5py.File(filepath, 'r') as f:
        T = f['/action'].shape[0]
        checks = {
            'action_shape': f['/action'].shape == (T, 14),
            'qpos_shape': f['/observations/qpos'].shape == (T, 14),
            'images_top': f['/observations/images/top'].shape[0] == T,
            'images_lwrist': f['/observations/images/left_wrist'].shape[0] == T,
            'images_rwrist': f['/observations/images/right_wrist'].shape[0] == T,
            'no_nan_actions': not np.any(np.isnan(f['/action'][:])),
            'joint_limits': np.all(np.abs(f['/action'][:]) < 3.14),
            'episode_length': 50 < T < 3000,  # 1-60 sec at 50Hz
        }
        for check, passed in checks.items():
            status = 'PASS' if passed else 'FAIL'
            print(f'  {check}: {status}')
        return all(checks.values())

記録の誤りがよくある:

  • タイムスタンプ漂移: ソフトウェアタイムスタンプを使用する場合は,ハードウェア同期ではなく,カメラフレームタイムスタンプとコイントステートタイムスタンプがエピソード全体を通して10 ms以内に並列していることを確認してください.長時間エピソードで漂移が蓄積されます.100エピソードごとに同期チェックを実行します.
  • **カメラフレームが落下した:**3台のRealSenseカメラがUSB 3.0ハブを共有しているときに,USB帯域幅の不一致がフレームの落下を引き起こす.カメラフレームのカウントが予想される数値に等しいことを確認する (エピソード_期間 * 30fps +/- 1フレーム).フレームが欠けている場合は,HDF5エピソードには観察アクションペアが間違って調整され,トレーニングを損なう.
  • **グリッパーアクションコードエラー:**グリッパーアクションはトレーニングパイプラインと同じコードを使用しなければならない.ACTは腕の関節と同じ座標空間 (ラディアン等価または正常化 0-1) でグリッパー位置を期待する.記録とトレーニングコーディングの不一致は"ポリシーが機能するがグリッパーが閉じることは決してない"の最も一般的な原因である.

初め の 政策 を 訓練 する

検証データセットを収集した後,LeRobotでACTポリシーを訓練する方法は簡単です.

# Step 1: Push your dataset to HuggingFace Hub (or train locally)
# Assumes data was recorded with LeRobot's record script
python lerobot/scripts/push_dataset_to_hub.py \
  --raw-dir data/aloha_validation \
  --repo-id your-username/aloha-validation \
  --raw-format aloha_hdf5

# Step 2: Train ACT policy
python lerobot/scripts/train.py \
  policy=act \
  dataset_repo_id=your-username/aloha-validation \
  env=aloha \
  training.num_epochs=2000 \
  training.batch_size=8 \
  policy.chunk_size=100 \
  policy.kl_weight=10 \
  policy.n_obs_steps=1 \
  wandb.enable=true

# Step 3: Evaluate on the real robot
python lerobot/scripts/control_robot.py record \
  --robot-path lerobot/configs/robot/aloha.yaml \
  --fps 50 \
  --policy-path outputs/train/act_aloha_validation/checkpoints/last/pretrained_model \
  --warmup-time-s 2 \
  --episode-time-s 30 \
  --num-episodes 20

最も重要なハイパーパラメータのトレーニング:

  • T16: 100 の将来の時間ステップ (2 秒50 Hz) を予測する.より大きなブロックは複合エラーを軽減するが,示範を通して作業軌道を一貫して行う必要がある. 100 から始め,政策が振動した場合,50 に減らします.
  • T17: CVAEの規則化を制御する.より高い値 (50-100) は,より平滑だが,より精密な動作を生む.より低い値 (1-5) は,より鋭い動作を生むが,リスクモードが崩壊する.最初の作業で[1, 5, 10, 50] を掃描する.
  • T18: RTX 4090 で単体GPU の訓練 の 標準.より 迅速 な 収束 を 目的 に 80 GB VRAM を 備える A100 を 使用 する 場合,16-32 に 増加 する.
  • T19: ACTは通常 1000~1500年代を左右する.検証損失を観察する. 200+年代を過ぎた場合は,トレーニングが完了します.

予期される訓練指標: 行動MSE損失は最初の500年代間に ~0.01 から ~0.001 に減少し,その後漸進的に ~0.0005 に収束する.損失が0.005 以降に減少しない場合,データ品質の問題 (不一致な示例,誤った時間スタンプ) をチェックする. KL差分損失は1-5ナッツで安定する. CVAEが単調モードに崩壊します.

拡大: 検証 から 研究 任務 まで

検証作業 (テニスボールピックアンドプレイス) が成功すると,より複雑な作業に自信を持ってスケールすることができます.スケールするための主要な原則:

  • 多様性を増やし,量だけではありません. 200回の展示で異なるオブジェクト位置 (5cm格格が作業場全体で) と 3-5種類のオブジェクトが,固定位置に単一のオブジェクトを搭載した500回の展示よりもより良い方針を訓練します.開始前に多様性目標の周りに収集プロトコルを設計します.
  • モバイルタスクのコートレーニングを使用する. 50100のモバイルデモを収集し,トレーニング中に200500の静的双手作業デモと組み合わせる.静的なデータは操作技巧を教え,モバイルデータはベース調整を教え.LeRobotはデータセットのリストを受け入れ, T20パラメータを通じてマルチデータセットトレーニングをサポートします.
  • 段階ごとに成功を監視する. 作業が複数の段階 (アプローチ,把握,輸送,場所) を構成する場合は,失敗が起きた場所を追跡する.
  • **リターンのための予算.**典型的なサイクルは:50個のデモを収集し,訓練し,評価し,故障モードを特定し,それらの故障をターゲットとする50個のデモを収集し,リターンします.タスクごとに予算 3-5回の収集訓練サイクル.RCSVの管理されたデータ収集サービスはこのリターンサイクルを加速することができます. 詳細については [データサービス] ページを参照してください パイロットコレクションの価格は2,500ドルから始まります

訓練の 失敗 を 解決 する

ACTのポリシーが実際のロボットで動作しない場合,データを再収集する前にこの診断ガイドを使用してください.

Symptom Likely Cause Fix
Robot does not move Action normalization mismatch Verify action stats (mean/std) match between training and deployment config
Arms collide with each other デモンストレーション include a wide range of arm positions; policy interpolates between modes Add joint limit safety checks in deploy script; increase KL weight to 50 to reduce mode averaging
Policy drifts after 2-3 seconds Control frequency mismatch: training at 50Hz, deploying at 30Hz Match --fps between record and deploy commands exactly
グリッパー never closes グリッパー action polarity inverted or normalized incorrectly Check gripper min/max in the YAML config; verify open=0.0, closed=1.0 convention
Works on day 1, fails on day 2 Camera bumped or lighting changed Rigidly mount cameras with Loctite; run calibration check at start of each session
Jerky, oscillating motion near objects Inconsistent operator strategies across demonstrations Use a single operator; filter episodes by trajectory smoothness; increase temporal_agg weight

モバイルベース統合:移動と操作を調整する

モバイルALOHAの"モバイル"は静態ALOHAと比較してかなりの複雑さを追加します.AgileXトレーサース基 (またはトレーサミニ) は全身のテレオペレーション中に双腕と連携する必要があります.

ベーススピード制御. トレーサーベースは,CANバスを通じて50Hzで速度コマンド (線形x,角形z) を受信します.リーダーロボットのベースポジション (オドメトリによって追跡) は速度コマンドにマップします.リーダーの現在の位置とフォロワーベースの位置の間のオフセットは比例速度コマンドを生成します.操作中に最大安全な速度:線形0.3m/s,角形0.5rad/s. これらの範囲を超えると,腕の組成を傾けるか,関節速度制限を超えるリスクがある.

調整されたアクション空間. モバイルALOHAの完全なアクション空間は16次元:腕1つ7関節 (14合計) +2基速度コマンド.ACT訓練中に,16次元はすべて共同で予測され,この政策は,調整された全体の動きを学ぶことができます (例えば,手を伸ばしながら前方に傾く). しかし,ベース速度次元は,共通位置とは異なる方法で正常化されるべきである. 彼らの単位と範囲は異なるため,最大安全な速度に基づいてベース速度を [-1, 1]に正常化する.

移動を活用する時* すべての作業は移動から恩恵を受けない. スタティック・バイマン્યુઅલ作業 (テーブルに服を折り畳み,固定作業場で組み立て) は,訓練データに不必要なベース動き騒音を導入しないように,ベースをロックして収集する必要があります. 移動を可能にするのは,作業が本当にそれを要求するときにのみです. 異なる場所から物体を集め,ワークステーション間のナビゲーション,または静的な腕作業空間を超えた物体を到達する.

関連 読書

模倣学習ガイド · ACT対拡散政策 · LeRobot開始 · デモ費用 · データ解析 · データサービス · ロボットレンズ

モバイル ALOHA のカメラ設定

携帯電話のALOHAポリシー品質にとってカメラの配置は極めて重要です.標準設定では3~4台のカメラを使用しており,それぞれがポリシーの視覚理解において特定の役割を果たします.

Camera Position Resolution Role Required?
Top/overhead Center of base frame, 40-60cm above workspace 640x480 @ 30fps Global workspace awareness, object layout Yes (primary)
Left wrist Left arm wrist, pointing at gripper 640x480 @ 30fps Left arm grasp precision, contact detection Recommended
Right wrist Right arm wrist, pointing at gripper 640x480 @ 30fps Right arm grasp precision, contact detection Recommended
Front-facing Base frame front, eye-level 640x480 @ 30fps Navigation awareness, approach planning Optional (mobile tasks only)

USB帯域幅制限: 640x480 30fps (未圧縮 YUYV) で3台のカメラにはUSB帯域幅約1.1GB/sが必要.単一のUSB 3.0ポートは5Gbps (実用的に3.2Gbps) を提供します.各カメラに別々のUSB 3.0コントローラを使用します.単一のUSBハブを共有することでフレームが低下します. T22で,すべてのカメラがデータを収集する前に同時に30fpsを達成することを確認します.

カメラ校正チェックリスト: 設置後,各カメラの内部の部分 (OpenCVチェッカーボード) と外部の部分をロボットベースフレームと比較して校正する. データセットのメタデータの一部として校正を保存する. 固定式スロープの上に糸鎖化合物 (ロクトイト222) を搭載した物理的に安全なカメラ - 3mm のカメラシフトは,そのビューポイントのための以前に収集されたすべてのデータを無効にする. 採集セッションの開始時に,既知の腕配置でカメラのビューを観察することによって,校正を確認する.

自分 の 建設 の 代替 方法

モバイルALOHAシステムを構築するには経験豊富なロボット工学者の24週間,または以前ダイナミキルとROS2の経験のないチームにとって68週間を要します.あなたの主な目標はハードウェアを理解するのではなく,モバイル操作データを収集することです.

UMI (ユニバーサル・マニプレーション・インターフェース): 動作をロボットハードウェアなしで収集するためにGoProカメラの手持ちグリッパーを使用するはるかに安価なアプローチ (2,000~3,000ドル). UMIデモはさまざまなロボット腕に展開する操作ポリシーを訓練することができます. UMIはベースモビリティデータを捕捉することはできませんので,作業に必要な移動を前提とした場合は,モバイルALOHAの代わりではありませんが,操作のみのデータ収集の優れた出発点です.

RCSV管理されたデータ収集: 携帯電話操作データが必要だがハードウェアを構築・維持したくない場合,RCSVはサンフランシスコ施設でモバイルALOHAシステムおよび他の双手プラットフォームを運営しています.当社のオペレーターは全身の遠隔操作作業に訓練されています. 作業仕様とオブジェクトセットを定義します.私たちはLeRobotまたはRLDS形式でデータセットを収集,注釈し,配信します.これはハードウェアビルドを完全に排除し,最初からプロフェッショナルに収集されたデータを提供します.詳細と価格については,当社の [データサービス]T39]を参照してください.

システムレンタル: RCSVの ロボットレンタルプログラム は,毎月レンタルのために完全に組み立て,校正されたモバイル ALOHA システムを提供することができます. これにより,先行ハードウェア投資なしで,自分の環境でデータを収集することができます.レンタル利用性と構成オプションについて議論するために,当社に連絡してください.

ハードウェア 構築 を 跳ね出す

RCSVは管理されたデータ収集のためのモバイル ALOHAおよび他の双手作業システムを運用します.あなたのタスクを定義し,データセットを提供します.ハードウェアビルドは必要ありません.

[データサービスを見る]