Divergent Component of Motion
- 別名: DCM, extrapolated center of mass, XCoM
- カテゴリ: Control › Locomotion control
- タグ: bipedal-locomotion, balance, humanoids, legged-robots, reduced-order-models
歩行ロボットの重心ダイナミクスの不安定な部分。位置と速度を 1 つの点にまとめたもので、ロボットのバランスを保つにはこの点を制御しなければならない。
定義
発散運動成分(Divergent component of motion、DCM)は、脚ロボットのバランス制御で使われる量で、重心(CoM)ダイナミクスの不安定な部分を切り出したものを指す。線形倒立振子モデルでは ξ = x + ẋ/ω と定義される。すなわち、重心位置に、その速度を振子の固有振動数 ω = √(g/z) で割ったものを加えた量であり、z は重心高さである。
ダイナミクスを DCM で書くと、2 階の系が 2 つの 1 階の系に分かれる。重心は DCM に引き寄せられ、ẋ = −ω(x − ξ) となり、これは安定である。重心はただ追従する。DCM は圧力中心から遠ざかる向きに押され、ξ̇ = ω(ξ − p) となり、これは不安定である。したがって制御器は、圧力中心や次の着地位置を適切に置くことで DCM を制御下に保ちさえすればよく、重心はおのずとついてくる。
平面の線形倒立振子では、DCM は Pratt らが記述した瞬時キャプチャポイント、すなわちロボットが静止するために踏み出す必要がある点と一致し、また Hof が人のバランス研究で用いた外挿重心とも一致する。Englsberger、Ott、Albu-Schäffer は DCM を 3 次元の二足歩行制御に用い、仮想反発点(virtual repellent point)と拡張重心モーメントピボット(enhanced centroidal moment pivot)を導入して、この定式化が重心の鉛直方向の運動も扱えるようにした。
DCM に基づく制御器は通常、最後の足跡から逆向きに参照 DCM 軌道を計画し、計測された DCM の誤差に対するフィードバックで指令する圧力中心を調整する。1 つの 1 階の量に作用するので、実装も調整も簡単である。
重要な理由
DCM はバランス制御を 1 つの点の操舵に帰着させ、歩行制御器をより単純でロバストにする。また、バランスの直感的な判定も与える。DCM が足の届く範囲や支えられる領域から出たら、ロボットは踏み出さなければ転倒する。
主な用途
- ヒューマノイドロボットのリアルタイム歩行制御
- プッシュリカバリと着地位置の調整
- 外骨格や人の運動研究におけるバランス評価
- 多歩の歩行のための参照軌道生成
実際の使われ方
DCM に基づく歩行を用いるヒューマノイドロボットのチームは、まず足跡を計画し、次に各歩で支持領域を通り、最後の立脚の上で静止して終わる参照 DCM 軌道を計算する。制御周期ごとに、制御器は重心(CoM)の位置と速度を推定し、計測された DCM を計算し、DCM の誤差に比例して目標の圧力中心をずらす。全身制御器がそれを関節トルクに変換する。外骨格やリハビリテーションの研究者は、同じ量を使って、人がバランスを失う寸前にどれだけ近いかを判断する。
よくある誤解
- DCM はロボット上の物理的な点である — 重心(CoM)の位置と速度を組み合わせて計算される量であり、体の外にあることもある
- 重心を直接制御することは DCM を制御することと同じである — DCM は不安定な部分を切り分けるので、それに作用する制御器はバランスをより直接的に扱える
- DCM とキャプチャポイントは無関係な概念である — 平面の線形倒立振子では、瞬時キャプチャポイントと DCM は一致する
知っておくべき人
- ヒューマノイドロボットや二足歩行ロボットの移動を担うエンジニア
- 外骨格やリハビリテーションロボティクスの研究者
- バランスとプッシュリカバリに取り組む制御の研究者
関連技術
- 線形倒立振子(Linear Inverted Pendulum)
- キャプチャポイント(Capture Point)
- ゼロモーメントポイント(Zero Moment Point、ZMP)
- 全身制御(Whole-Body Control)
- モデル予測制御(Model Predictive Control)
関連用語
関連プロジェクト
- Extreme Parkour with Legged Robots: RL system for legged robot parkour trained in under 20 hours
- PACE Sim2Real: Systematic sim-to-real transfer via actuator dynamics identification
- Zeroth Bot: Low-cost 3D-printed humanoid robot platform for sim-to-real reinforcement learning