ロボットの全身制御:接触・タスク・運動量・制約

全身制御はロボットの接触点、浮遊台、脚、腕、胴体、姿勢を調整し、複数の作業を動力学やハードウェアの制限に違反せずに実行できるようにします。各肢を独立して指令するのではなく、関節加速度、接触力、位置、トルクなどの共通変数を解決します。

この名前は複数の建築を含んでいます。コントローラは剛体モデルから二次計画を解いたり、階層的なタスク優先順位を用いたり、重心量を追跡したり、学習した全身コマンドを復号したり、これらの層を組み合わせたりすることができます。実際のインターフェースや制約処理の方がラベルよりも重要です。

運動 学と動力学のガイド接触制御の比較とともにこれを読んでください。全身の挙動は状態、接触、アクチュエーターの証拠に依存し、それらを同時に検証する必要があります。

全身制御は連結ロボットの問題を解決します

一方のヒューマノイドの腕を動かすと重心と角運動量が変わります。足の接触はベースへの動きを制限し、体を支えるレンチを作ります。手の接触はもう一つの閉じた鎖制約を加えることができます。これらの行動を独立した共同の軌道として扱うことは、対立やバランスの崩壊を生むことがあります。

全体コントローラーは、共有されたダイナミクスを満たしつつタスクエラーを減らすコマンドを選択します。出力は望ましいジョイント加速度、速度、位置、トルク、またはその組み合わせを下位サーボに伝えることができます。どの層が最終アクチュエータループを閉じるかを明確に示してください。

実験室での全身作業中に協調した腕、脚、胴体を使ったヒューマノイドロボット
ヒューマノイドの作業では、同時に足の接触、バランス、腕の動き、姿勢のコントロールが必要になることがあります。出典: NVIDIA GR00T 全身コントロール。ソースコードライセンス:Apache 2.0;モデルアセットは別々の用語を使います。

状態推定と接触推定が問題を定義します

コントローラーにはジョイント状態、浮動ベースポーズと速度、接触状態、そしてしばしば外部レンチが必要です。IMU、エンコーダー、力センサー、視覚および運動学的接触制約も寄与しています。遅延やフレームエラーは、ソルバーが物理的に誤った接触を強制する原因となることがあります。

すべての計画された足がしっかりと踏み込まれていると仮定するのではなく、接触確率や明確な遷移を持つステートマシンを使いましょう。スリップ、早期衝突、ミスコンタクトを監視してください。遷移中は、コマンドが互換性のないモデル間を飛び越えないように、目的と境界をブレンドします。

入力コントローラーの使用故障モード証拠
基底状態バランスとタスクフレームドリフトまたはレイテンシー外部運動基準
共同国家運動学と限界オフセットノイズまたは速度ノイズエンコーダ検証
接触状態制約選択誤ったサポートや触れ不足力と運動学
接触幾何学摩擦とレンチの境界誤ったノーマルやポリゴンキャリブレーションされた表面モデル
アクチュエータ状態トルクと速度の実現可能性隠れた飽和ドライブテレメトリ

接触制約は実現可能な集合を作り出します

接触を通じた計画と制御には、片側の垂直力、摩擦、運動学的一貫性が必要です。「アンダーアクチュエーテッド・ロボティクス接触」章 では、接触モードが離散的かつ連続的な問題である理由を説明しています。足は床を押すことはできますが、引っ張ることはできません。

近似摩擦円錐やピラミッドは、表面に適した保存系数を用いなければなりません。圧力中心と接触レンチの境界は、足の形状や荷重分布に依存します。推定接触がこれらの境界を破ると、ソルバーは魅力的だが物理的に不可能な命令を返すことがあります。

タスクには優先順位、重さ、公差が必要です

典型的な課題には、立ち足のポーズ、手のポーズ、重心、胴体の向き、視線、そして名目上の姿勢が含まれます。ハード制約は実現可能性を守り、ソフトオブジェクティブはエラーを交換します。重み付け最適化では、単位とスケールが優先順位に影響を与えます。階層最適化では、上位レベルが保持され、下位レベルは残された自由度を活用します。

どの作業がどれだけの収穫が得られるかを記録しましょう。正確な手のポーズは足を安定させることほど重要でない場合があり、工具の作業は向きの精度を要求しつつも、一軸に沿った移動を可能にします。実際の操作を反映した許容差や緩みペナルティを使いましょう。

重心量はバランス運動を要約します

重心と重心運動量は、物体全体の運動を簡潔に記述します。コンタクトレンチは線運動量と角運動量を変化させます。コントローラーは望ましい重心の挙動を追跡でき、全身マッピングによって結果を関節や接点に分配できます。

中心体の制御は全身の制約をなくすわけではありません。ジョイントの限界、自己衝突、スイングフットクリアランス、アクチュエータの性能は依然として重要です。モデル誤差と推定誤差は接触力の不一致を引き起こす可能性があるため、プッシュ、ペイロード変化、アーム運動中の予測支持挙動と測定された支持挙動を比較してください。

5段階ロボット全身制御ソルバースタック
信頼できる全身制御は、状態、接触、制約の品質から始まります。出典:Physical AI Lab。

最適化ベースのWBCは制約を明示的に露出させます

Drakeのようなツールは、ロボット制御研究で用いられる多体力学や数学的最適化をサポートしています。二次プログラムは、各制御ステップにおける運動、接触、加速度、トルク、関節境界の方程式に従い、作業コストと労力コストを最小化できます。

結果は現在の状態およびモデル化された接触に局所的です。ソルバー時間と数値調整は制御期限に合致しなければなりません。ログステータス、反復数、残差、アクティブ制約。使い古された高エネルギーコマンドを使い回すのではなく、非現実性やタイムアウトに対する有界フォールバックを定義しましょう。

設計の選択利点リスク検証
重み付けタスク単純なトレードオフユニット別優先度スケールスイープ
階層的タスク厳密な優先度高次計算紛争試験
ハードコンタクト境界物理的実現可能性モデルミスマッチ滑りと力の試験
トルク制約アクチュエーター保護保守党の成績テレメトリ比較
スラック変数実現不可能なものは避けましょう隠れた違反スラック閾値アラーム

学習された全身制御は指令インターフェースを変えます

現在の GR00T全体制御リポジトリ は学習されたヒューマノイド制御スタックを示し、別々のソースコードとモデルライセンスを特定しています。学習されたモデルは、コンパクトまたは全身の動作表現を予測し、それを別のコントローラ層によってデコード・実行されることがあります。

視覚・言語・行動モデルを、文書化されたスタックがそうでない限り、生の関節トルクを直接指令すると説明しないでください。観測履歴、アクションレート、デコーダー、低レベルインターフェースおよび安全フィルターを記録します。配布シフト、リカバリー、ドメイン外コマンドを成功したデモンストレーションとは別にテストします。

接触の移行は、安定した姿勢よりも難しいです

足を持ち上げると制約や利用可能な支持レンチが取り除かれます。タッチダウンは不確かなインパクト時間の後に追加されます。手の接触は早めにも遅くも起こります。遷移ロジックは軌跡、フォースランプ、タスク優先度、推定器の状態を不連続性なく調整しなければなりません。

動的動きの前にゆっくりとした転送をテストしてください。表面の高さ、摩擦、タイミングを調整し、衝撃力、スリップ、ベース誤差、コマンド飽和度を測定します。固定された姿勢でバランスを取るコントローラーは、まだしっかりとした歩行や接触による操作性を示していません。

アクチュエータの限界はソルバーに常に表示されなければなりません

ジョイントのトルク、速度、電流、温度、トランスミッションの限界は動作状態によって変化します。最適化装置がトルクが利用できないと仮定すると、下層が飽和し、予測された動力学が誤りになります。レート制限や通信遅延も実行可能なコマンドを形作ります。

可能な限りキャリブレーション済みの出力側リミットを使用し、飽和フィードバックを監視してください。マージンが下がったときにタスクの負担を減らすことで、インテグレーターや最適化の余裕を静かに増やすのを許さないでください。バッテリー電圧、ペイロード、温熱接合、劣化した通信の検証。

タスク、妨害、フォールバック状態の検証

静的姿勢から協調リーチ、接触遷移、移動、外部妨害までのビルドテストを行います。望まれたベース運動量と測定された動き、コンタクトレンチ、作業誤差、摩擦余裕、ジョイント限界、アクチュエータ飽和度、ソルバーの健康状態を比較します。ペイロード、フロア、状態推定量の各バリエーションで繰り返します。

故障テストには、接触喪失、古臭状態、センサーのドロップアウト、最適化タイムアウト、ドライブ故障を含めるべきです。独立した保護機能と作業スペースの制限は依然として必要です。標準条件下で準拠またはバランスが取れているように見えるコントローラーは、自動的に安全機能として検証されたわけではありません。

  • 実際のコマンドインターフェースとフィードバックインターフェースを定義してください。
  • タイムスタンプ、フレーム、接触状態の検証。
  • ハードな制約とソフトタスクの目標を分けましょう。
  • ソルバー、スラック、アクチュエータの飽和度をオンラインで監視してください。
  • 接触遷移と有界フォールバックを明示的にテストしてください。

よくある質問

全身制御はヒューマノイドだけのものなのでしょうか?

いいえ。また、四足歩行者、移動型マニピュレーター、その他のロボットで接触やサブシステムを調整する必要がある場合にも適用されます。

WBCは常にジョイントトルクを出力しますか?

いいえ。スタックによっては、加速度、位置、接触力、トルク、または下位層で解読されたコマンドを出力できます。

タスクの重みと優先順位の違いは何ですか?

重みは目標を一つのコストで取引し、スケールに敏感です。階層的な優先順位は、より上位なタスクを保持し、その後に下位のレベルを最適化します。

学習された方針は接触制約を置き換えることができるのでしょうか?

接触挙動を学習することはありますが、展開には状態検証、アクチュエータ境界、障害検出、リスクに応じた独立した保護が必要です。

白血球検査の際に何を記録しるべきですか?

状態と接触推定、タスクエラー、接点レンチ、コマンド、飽和、ソルバーの状態、タイミング、スラック、フォールバックの遷移を1つの時計で記録できます。

全身制御境界注記

全車制御の信頼性は、その状態、接触、モデル、ソルバータイミング、アクチュエータインターフェースに依存します。独立した保護限界を使用し、ロボット全体に対してノミナル、遷移、乱れ、故障挙動を検証します。