JP2006116672A - 2脚ロボットの歩行制御装置および歩行制御方式 - Google Patents

2脚ロボットの歩行制御装置および歩行制御方式 Download PDF

Info

Publication number
JP2006116672A
JP2006116672A JP2004308923A JP2004308923A JP2006116672A JP 2006116672 A JP2006116672 A JP 2006116672A JP 2004308923 A JP2004308923 A JP 2004308923A JP 2004308923 A JP2004308923 A JP 2004308923A JP 2006116672 A JP2006116672 A JP 2006116672A
Authority
JP
Japan
Prior art keywords
walking
joint
control
leg
ankle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004308923A
Other languages
English (en)
Inventor
Soko Gen
相昊 玄
Cho Emura
超 江村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tohoku University NUC
Original Assignee
Tohoku University NUC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tohoku University NUC filed Critical Tohoku University NUC
Priority to JP2004308923A priority Critical patent/JP2006116672A/ja
Publication of JP2006116672A publication Critical patent/JP2006116672A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Manipulator (AREA)

Abstract

【課題】
2脚動歩行ロボットの転倒安定化と歩容生成を同時に解決する歩行制御装置であって、安価なCPUを用いて実時間で動作可能なもの、ならびにその歩行制御方式を提供する。
【解決手段】
本発明による歩行制御装置ならびにその歩行制御方式は、外力に対して受動的に歩行が生成されるように脚の運動を拘束することを特徴とし、とくに股関節部と遊脚の重心とを結ぶ直線が鉛直面となす角度およびその角速度が、支持脚のそれと鏡像関係になるように各関節を駆動した上で、上体の姿勢を目標とする歩行速度に応じて適応的に傾斜させることにより、実時間で安定な歩容を生成することができる。さらに重心がZMPの真上に位置しながら等速前進するように足首を操作することでエネルギー効率を高めることができる。
【選択図】 図20

Description

本発明は人間型ロボット等の2脚ロボットにおける、実時間で安定な歩容を生成する歩行制御装置に関するものである。
既存の脚式移動ロボットの機構と制御については「ロボット工学ハンドブック」(日本ロボット学会編)などに詳しいが、本発明に関連する歩行制御法に関して以下に述べる。脚式移動ロボット、とりわけ足平の面積が少ないため動的安定化が必要不可欠な歩行ロボット(以下、動歩行ロボットと略す)における従来の歩行制御法は、以下のように2つにわかれている。
第1は目標歩容の生成問題である。ここで目標歩容とは、ある望ましい歩行を達成するような関節角度目標値を始めとする幾何学的な座標ないしは速度の目標軌道(必ずしも時間軌道ではなく、あるパラメータでパラメトライズされた目標軌道も含む)、ならびに、ある望ましい歩行を行う動力学モデルも含んでいる。
いかなる移動ロボットも地点追従などの何らかの移動目標の達成が目的であるが、動歩行ロボットの場合、転倒しないことが前提となる。この両者の要求を最も簡単に満たす歩容設計方法が、ZMP規範を用いる方法である。これは、オンラインであれオフラインであれ、まず基本的にZMPが支持多角形内に入るような目標ZMP軌道を与え、その上で移動目標を達成するための重心や他の軌道を算出することで目標歩容を得るというものである(例えば、下記の非特許文献を参照)。ZMP規範さえ満たされていれば、ワールド座標系で設計された目標軌道に追従することは、関節サーボの問題に還元できる。
第2は、上記で生成された歩容に実機を追従せしめる安定化制御である。目標歩容で想定している理想的な環境において、実機を目標軌道に追従させる技術はサーボ技術の範疇であって本発明で論じる問題ではない。問題は、未知の外乱やモデル化誤差が存在する場合にも、ロボット自ら現在の状態を検出し、転倒を回避しつつ本来の移動目標を達成することである。
これに対する従来の技術は、転倒回避を達成するように目標歩容ないしは目標モデルダイナミクスを修正して実機をこれに追従させることに集約される。実施上、目標歩容を修正する代わりに実機上で何らかの反射的な修正動作を行うことも、目標歩容を修正することと等価であるので、これに含まれる。
この安定化制御をさらに詳しく見ると次の二つの手法に大別できる。1つは、目標歩容からの摂動モデル(主に線形モデル)を記述し、適当な局所フィードバック(線形フィードバック)を施すもの、もう1つはZMPと重心に着目した大局的なモデルに安定化制御を施し、その閉ループダイナミクスないしは安定解そのものを目標歩容とすること。とくに、下記に示した特許文献では、目標ZMPを操作することによって(支持多角形外でも可)姿勢を復元する技術が提案されているが、これは後者の手法に属する。安定領域は前者よりも後者の方が広く、この方法により目標歩容に収束する安定な歩行に成功している。
高西: 上体の運動によりモーメントを補償する2足歩行ロボット, 日本ロボット学会誌, Vol. 11. No. 3, pp. 348-353, 1993 特開平05−337849号
以上に説明した従来技術を用いて制御装置を構成することは容易ではない。第1に、安定な目標歩容を設計し、それをメモリに記憶するプロセスが必要であること、第2に、高速なコンピュータを搭載したロボットでなければ、実時間で目標歩容を修正し、実機の関節駆動を実施することは困難であることである。
このように作業コストと計算コストを増加させているのは最初の歩容設計にある。歩容設計の問題とは、移動目標と転倒安定化に制御問題を分けた点である。本来、動歩行ロボットは本質的に転倒するダイナミクスを具備しており、歩行とは言い換えれば転倒に到る過程で、すなわち「倒れこみ」の連続的な接続である。
歩行が動歩行である限り、その歩容には必ず倒れこみが加わっているにも関わらず、従来の歩行制御方式は、最初に設計した目標歩容で想定していない変位を外乱とみなし、変位を無くす制御により初期の歩容に復帰するという思想に立っているので、目標歩容とは別に転倒安定化プロセスや目標歩容の修正プロセスが必要になり、制御装置が複雑になっている。
歩行ロボットの制御においては、倒れこみを安定に継続することによって移動を達成することが本質であり、この戦略に従えば、目標歩容は設計者が予め与えるものではなく、制御則から自然に発現すべきものである。
このように、安定化を行うことと歩容を自然に生成することを同時に解決する歩行制御装置であって、安価なCPUを用いて実時間で動作可能なものを提供することが本発明の目的である。
本発明の歩行制御装置は、脚ロボットに搭載する制御装置であって、以下の特徴を有するものである。
1)本発明の歩行制御装置は、外力に対して受動的に歩行が生成されるように脚の運動を拘束することを特徴とする。とくに股関節部と遊脚の重心とを結ぶ直線が鉛直面となす角度およびその角速度が、支持脚のそれと鏡像関係になるように各関節を駆動することを特徴とする。
2)本発明の歩行制御装置は、上体の傾斜角を目標歩行速度などの移動目標に応じて自動調整することを特徴とする。
3)本発明の歩行制御装置は、とくに足平を有する脚ロボットに適用する場合、重心とZMPを結んだ直線が垂直を保ったまま等速で移動するように、足首トルクを発生することを特徴とする。
4)本発明の歩行制御装置は、とくに足平を有する脚ロボットに適用する場合、ZMPが足平の爪先に移動したときに重心または腰高さを一定に保つように足首トルクを発生することを特徴とする。
5)本発明の歩行制御装置は、以上1)−4)を達成する制御入力(関節トルク)を実機のセンサ情報に基づいて算出し、その制御入力をそのまま実機に適用する直接制御部と、制御入力を一旦制御装置内部の動力学モデルに適用し、モデルの出力である関節角度や角速度を目標値として実機の関節駆動制御を行う間接制御部の、一方または両方を備える
ことを特徴とする。
1)本発明によれば、目標ZMPを含めた目標歩容の設計を全く必要とせず、任意の歩幅と歩行速度で歩行が可能となる。制御パラメータは歩幅のみであるため、面倒なパラメータチューニングは必要ない。
2)本発明によれば、目標歩容を持たず、しかも制御則が非常に簡単であるため、安価なマイコンに実装可能である。
3)本発明によれば、対称歩行制御により、外力あるいは上体の傾斜に対して受動的に歩容が生成されるため、外乱に対して本質的にロバストな転倒安定性を有する。
4)倒れこみによって歩行速度制御を行っているため、転倒に寄与する外乱は推進エネルギーとして利用可能である。このような外力に対する受動性は対人・対物安全性において極めて価値が高い。
5)以上の1)から4)の効果は足平の有無に関わらず有効であるため、得られる歩容は、公知技術である、いわゆる「ZMP規範」に拘束されない。
以下、本発明の実施の形態について図面を参照しながら説明する。まず、本発明の実施に必要な基本原理について述べる。
1.上体の傾斜を用いた最適移動の原理
図1のような車輪付倒立振子を考える。車輪の速度をVx、振子の傾きをφとする。無損失の場合、同図(A)のように重心は常にZMPの真上に位置しながら、等速運動を行う。ここでいうZMPとは、総モーメントが零になる床上の点であり(前述の非特許文献の定義による)、支持点を原点としてその位置が数1式で定義される。
ここで XG と ZG は重心の支持点からの距離で、gは重力加速度である。この計算によりZMPが足平あるいは支持多角形から出るかどうかは意に介さない。
等速運動を行うとき振子は転倒しない。ところが外乱などによって定常的にエネルギー損失がある場合、速度を維持するために加速方向にエネルギーを補償する必要がある。そのためには、同図(B)のように重心をZMPから前方にずらせば良く、ずれの大きさが補償エネルギーの投入量を決定する。どれだけずらせばよいかという問題は振子の傾斜を使って下記のように適応的に解くことができる。
まず、数2式のように、目標水平速度Vxdと現在の水平速度Vxを比較してそれに比例した値を振子の目標角φdとする。ここでKvは適当な正の速度ゲインである。そして、この目標角度を一定に保つように台車の車輪にトルクを加えるだけでよい(例えばPDフィードバックを用いる)。
これにより、損失分のエネルギーを補償しつつ目標速度を維持でき、振子の傾斜は自立的に調整される。傾斜を保つために車輪に常にトルクが加えられており、定常状態でも常にエネルギーが系に入力されていることに注意する。エネルギー損失が無い場合、上体が傾斜したままだと車輪は加速するが、エネルギー損失がある場合は加速エネルギーと損失エネルギーがバランスするのである。結局、移動速度は漸近的に一定値に収束し、エネルギー最適な移動を得る。
2.対称歩行制御
以上は車輪付の倒立振子の話であったが、車輪の転がりは脚の歩みと考えて、上記最適移動原理を脚ロボットに適用することができる。まず、車輪を無数の脚で近似するか、または脚先に車輪の半径と同じ円弧状の足平を取り付けたモデルを考えると、車輪が転がるように連続的に足を踏み出すことができれば、上体を傾斜させながら等速で移動できることが直感的にわかる。
本発明で取り扱う2脚動歩行ロボットの基本モデルは、上記円弧状の足平の半径をどんどん小さくしていき、極端に点接地にしたものと考えることができる。この点接地の脚が次々と歩む様子は、いわば、角張った車輪またはサイコロが転がることに似ている。もはや重心がZMPの常に真上に位置しながら等速水平移動することはできず、1歩毎に必ず加減速を伴うことになる。
そこで、車輪移動と全く同じ移動原理を適用するために、エネルギー損失が無い場合に脚部が等速移動するように制御する。等速移動を行うためには、1歩当たりの正味歩行速度が零になるような接地方法をとれば良い。つまり、加減速の1歩当たりの積分値が零になるような歩みである。
さらに、車輪とは異なり、脚移動ロボットの場合、転倒という問題が付随する。ここで転倒とは、静止あるいは歩行中に地面との適切な接地関係を(不本意に)失うことで、静止あるいは歩行を継続できないような状況を指す。
そこで、転倒安定性を保証するような歩みが必要となる。この二つの要求を最も効果的に実現するのが、本制御装置の重要な構成要素である「対称歩行制御」である。対称歩行制御とは簡単に言えば、「遊脚重心角」の回転運動を支持脚のそれに対称拘束し、少なくとも着地時には遊脚長が支持脚長と一致するように制御することである。
図2のような簡単な2脚ロボットモデルを例にとって示す。図2において、鉛直面に対する支持脚の角度はθ1である。遊脚重心角とは、股関節と遊脚の重心とを結ぶ直線の鉛直面に対する角度で、図2では遊脚重心角θcは遊脚それ自身の角度θ2と一致しているが、回転関節型の遊脚では図3のように脚自体の角度とは異なる。
対称歩行制御は、数3式の対称拘束条件を、数4式なる支持脚切替条件のもとで実現するものである。
ここで θswは支持脚交換時の切替角で、数5式を満たす。
今後、数3式と数4式を合わせて対称歩行制御と呼ぶ。本制御の元では数6式の速度拘束条件も満たされることになることに注意されたい。ただし、ω1とωcはそれぞれθ1とθcの時間微分である。
遊脚長が支持脚長と同じ場合、遊脚の足先が地面と接してしまうので、適切に引き込む必要がある。ただし、着地時には支持脚長に一致させる。これにより、着地角と離陸角が常に対称となる。
切替角を常に一定(つまり歩幅一定)にすることは対称歩行制御の本質ではないが、定常歩行の場合を想定して便宜上切替角を一定値とする。
対称歩行制御により、ロボットは転倒しなくなる。図4は対称歩行制御を行ったときの支持脚の相平面(角度 - 角速度)における解軌道を描いたものである。この例で初期値(θ1(0), ω1(0))は左上の(-0.3, 1.5)であり、切替角は0.3に設定している。
上体姿勢が常に垂直になるように制御する場合、図4の細い実線で示したような解軌道となる。もし解が切替角度と分離枝(原点をクロスしている二つの1点鎖線)に囲まれた領域 II に入れば、 運動の方向が反転した後、解は領域 IVに入る。逆も同様である。一旦この反転現象が起れば、その後の解軌道は領域 II と領域 IVに完全に捕らえられ、最終的に極限集合: L+ = (θsw , 0) ∪ (-θsw , 0) に収束することになる。
状態が L+ に近くなればなるほど、 無数の切替が生じる。そのようなロジックが無限回起ろうとも、物理的にはロボットは運動エネルギーを徐々に失い、最終的に切替角×2だけ脚を開いた両脚支持の状態で停止することになる。実際には着地衝突以外にも摩擦な
どの損失があるため、収束は非常に早い。
また、現実にはありえないが、仮に着地衝突などのエネルギー損失が全くない場合、ロボットは与えられた初期エネルギーレベルを有する対称な周期軌道を描く。図4で言えば、初期値を通る太い点線である。
これは天体物理学などで公知なBirkhoff可逆系における対称軌道である。簡単に説明すると、これは単一の自律力学系における渦心点まわりの中心多様体付近の流れに相当し(通常の振子運動を想像されたい)、初期値に応じて無数に存在しうる孤立していない周期軌道に似ており、ハイブリッド系特有の周期軌道である。本発明では対称軌道に対応して「対称歩容」と呼ぶ。
この対称歩容は、着地衝突によって奪われる損失エネルギーを上体の傾斜によって補償することで達成できる。つまり、図5に示すような上体を有する2脚ロボットを考えると、任意の目標速度を有する対称歩容を得るための制御則は、数7式のように、目標速度と現在速度を比較してそれに比例した値を上体の目標角とし、この目標角度を一定に保つように支持脚側のトルクを与えるだけでよい。
車輪の場合と同じく、上体の傾斜により重心のZMPに対する平衡がくずれ、その非平衡状態を維持するために常にエネルギーが系に入力されていることに注意する。上体の傾斜は着地衝突による損失エネルギーとバランスするまで増減する。なお、目標速度を零として上式を適用すると、上体の姿勢を常に零に保つよりも早く静止状態に収束することが出来る。
以上のメカニズムにより、歩行は大域的に漸近安定となる。ここでの歩行安定性は天体物理学などでいうところの軌道安定性と同義と考えても良い。歩行安定性が「大域的」であるとは、いかなる初期値から出発した解も安定であることである。なお、大域的安定に対する局所的安定とは、ある近傍でのみ安定であることである。事前に計画された目標歩容を忠実に追従させるために、目標歩容の周りで構築した摂動モデルに基づいた制御系を組むと、閉ループ系は基本的に局所的安定となり得るが、大域的安定には決してなり得ない。
脚移動ロボットにおいて、移動目標は停止あるいは目標速度での歩行であるので、これらを大域的に安定化することは、定常状態における歩容のみならず、静止・歩行間の過渡状態における歩容までも解に含むことになる。つまり、再三述べるように、過渡状態も含めて、歩容をわざわざ設計する必要はなく、地面との適切に接地状態を持ついかなる初期状態からでも静止や歩行を行うことができる。
さらにこの大域的安定性はすなわち外乱ロバスト性を意味する。外乱は推進エネルギーに転用することができる。例えば静止しているロボットの上体を押したとき、加えられた運動エネルギーを目標エネルギーとするように上体を傾斜させれば、押された速度で歩行することができる。逆に、歩行中に不意に壁に衝突したとき一気に運動エネルギーが失われるが、目標軌道をそもそももたないので、そこで外乱にまかせて安全に停止することもできれば、再び目標速度に追従すべく、歩き始めることもできる。このように外力に対して受動的な移動制御は対人・対物安全性において極めて価値が高い。
3.足首トルクの利用
さらに足首トルクが利用できる場合、本制御装置により、対称歩行制御を行いつつZMPと重心の位置関係や加減速をより有効に制御することが可能である。
図6に示すような足平を有する倒立振子モデルを用いて、まず、片足支持期における足首の利用について述べる。これは対称歩行制御の「零ダイナミクス」を示したモデルである。ここで零ダイナミクスとは、拘束条件が達成されているときに系が持つダイナミクスを指す公知の用語である。
両脚の対称条件(数3式)が満たされ、上体の傾斜加速度が収束しているとき、零ダイナミクスは数8式で表される。ここで MGとJG はそれぞれ全体の質量と重心まわりの慣性モーメントで、LG は重心から踵までの距離である。gは重力加速度で、τ0は足首トルクである。
この式からわかるように、この倒立振子の挙動は足首トルクによって制御することが可能である。足首トルクを用いることはZMPを操作することと等価である。
ZMPを制御するということは全体のシステムの接地点代表点を制御することに等しい。
どのようなZMPの推移が最適であるかという問題に対する本発明の回答は着地時の衝突最小化にある。ZMPが次の着地点に近ければ近いほど着地衝突と着地時のエネルギー損失が少なくなることは容易に示すことができる。したがって、なるべくエネルギーを消費せずにZMPを前方に進められればそれが最適解となる。
そこで、本発明では足首トルクを数9式のように与える。
すると数8式の重力項が消え、ω1 は一定となることがわかる。このことは θ1 > 0 の領域では常に重心がZMPの真上に位置しながら等速で真横に移動することを意味する(図7の(B)、(C))。
本制御則によりZMPは爪先に達するまで単調増加する。なお、上体の加速が存在するとき零ダイナミクスは数8式とは多少異なるが、加速は収束すると考えてよいので、とくにそれを考慮して足首を駆動する必要性はない。
なお、数9式の形から、足首トルクは簡単な線形バネで置き換えることができる (図 8)。バネ力はバネ定数Kとバネ変位δlを用いて数10式で表せる。
バネ変位は、laをモーメントアームの長さとして数11式のようになる。
したがって、バネによって足首に発生するトルクは数12式となる。
数12式と数9式を比べることにより、極端に大きくないθ1の範囲であれば、K = MG LG g / la2のバネ定数を持つ線形バネを選ぶことにより、数9式とほぼ同じ足首トルクを発生できることがわかる。ただし、ちょうどθ1 < 0のときにはバネ力が生じないように、バネのセットポイント(図8のフックの位置)を調整する必要がある。
このようにZMPが爪先に向かって移動するが、対称歩行制御の切替角θswと足平の長さd1との関係によって、その後、次の2つの場合が考えられる。
1)の場合、ZMPが爪先に到達する以前に遊脚の着地を迎えることになるので問題ない。一方、2)の場合、ZMPが爪先に到達したとき、重心はZMPよりも前に進むため、平衡がくずれ、ロボットは重力モーメントに従って爪先周りに回転することになる。このとき、踵が浮き上がらないように足首トルクを弱めることはせっかく前方に推移したZMPがまた後方に戻ることになるため非効率であり、そもそも足首を用いる意味が無い。
ではどのように足首を駆動するかという問題が生じる。本発明においては、重心ないしは腰の高さを一定に保つよう足首を駆動する。なぜなら、定常歩行において着地時の重心高さは常に一定であるからである(図7の(A)、(C)、(D)の重心マークを貫通する1点鎖線)。
図7の(C)のように、ZMPが爪先に達した段階で既に重心高さが着地時の高さまで落ちているので、これ以上重心が下に下がらないように保持するわけである(PDフィードバックなどで可能)。
足首の制御トルクは数13式のようになる。ここでZdは目標重心高さであるが、ZMPが爪先に達したときの重心高さを代入する。また、重心の位置を監視することが困難な場合、質量が多く分布している腰の位置を見ても良い。
以上により、図7の(A)、(C)、(D)で示すように着地角は常に離陸角と対称となる。なお、バネで足首アクチュエータを置き換える場合、数9式と等価なトルクを発生させるために、バネのセットポイントをアクティブに駆動する必要があるが、実用的には数13式を厳密に発生する必要はなく、重心高さをある程度保持できる程度のトルクを発生していれば良い。
また、これは足首を持たないモデルの、接地期後半におけるZMPと重心の位置関係がなす倒立振子と同様の加速効果をもたらす。どの速度まで加速させるかは、どの地点で遊脚を着地させるかによる。既に踵が浮き上がっており、かつ、腰高さが一定であるため、数4式を満たす切替角で着地することはもはやできない。
そこで、踵が浮いたときは対称歩行制御の対称条件を放棄し、遊脚股関節をフリーにして自然に遊脚の踵が着くまで待つ方法と、必要な速度が得られる時間をほぼ推定できるので、その時間で着地するように遊脚股関節を駆動する方法がある。いずれにしてもエネルギーの制御は上体の傾斜で自律的に調整されるので、脚部で厳密にエネルギーの制御を行わなくても良い。後の実施例2では遊脚の膝関節がフリーであるので、前者の方法を用いている。
以上は片脚支持期における制御手法であったが、次に、両脚支持期における足首の利用について述べる。両脚支持期における足首トルクの利用目的は、これまで上体の傾斜を保持することでエネルギー補償を行っていた股関節アクチュエータの消費パワーを軽減することであり、必ずしも必要というわけではない。駆動方法は至って簡単で、単に支持脚角速度が所望の値になるまで、トルクを加えるだけでよい。
最も簡単な方法は一定トルクを加えることであろう。進行方向側にある脚の足首トルクを加えれば減速、後方にある脚の足首を使えば加速となる。この際、膝関節を有するモデルの場合は対称歩行制御を常にアクティブにしておくことが望ましい。両脚がなす閉リンク機構の恩恵により、後の実施例2で見るように、遊脚の膝関節がフリーであっても問題なくエネルギーを補償することができる。膝関節がないモデルでは対称条件を満たすことができないのでこの限りではない。
4.第1実施例
図9のような足平を持たない2脚ロボットを制御対象に取り上げ、第1実施例を説明する。
このロボットは股関節部の回転自由度と脚を伸縮させる伸縮自由度を持っており、合計4自由度のモデルである。各関節は低減速比の電気サーボモータによって駆動される。モ
ータには簡易なサーボアンプが接続されており、電流制御が可能であるとする。センサとしては各関節のエンコーダと上体部にジャイロと傾斜系が取り付けられており、他に接地を検出するための簡単なOn/Offスイッチが脚先に取り付けられている。
座標系は図10に定義されている。脚は伸縮型なので重心は常に脚中心にあると考えてよい。なお、脚にはバネがついているが、これはモータトルクをアシストするためのもので、制御則には何ら影響を及ぼさない。
支持脚の角度をθ1, 遊脚の角度をθ2, 上体の姿勢角をθ3とする。
また、支持脚の長さをr1, 遊脚の長さをr2とする。支持脚と遊脚の股関節トルクをそれぞれ、τ1、τ2とし、脚の推力をそれぞれ、f1、f2とする。
図11に第1実施例のブロック図を示す。本図を用いて制御装置の動作を説明する。
同図右側にある「状態観測部」は、各種センサから上体の傾斜や脚の長さや角度を算出する。
左側にある「歩行速度制御部」は上体の傾斜目標角θ3dを歩行速度の目標値からの誤差に応じて数14式のように決定する。ここで Vxd は目標速度制御であり、Vxmeanは1歩毎の平均速度, Kv は歩行速度ゲインである。
平均値を用いるのは計測が困難な歩行速度を確実に捕らえるためである。これは一歩毎に姿勢目標値を更新することになるが、用途によっては平均値を用いず現在値を直接用いて常に更新しても良い。
さらにゲイン Kv は歩行速度に応じて変化させるほうが追従性が良いため、数15式のように可変にしても良い。
数15
同図中央に位置するのは「対称歩行制御部」であり、遊脚重心角の目標値θ2dが算出され(重心角はθ2そのもの)、次いでPD制御によって遊脚トルクτ2が決定する。
ここで分岐スイッチ(SW1)は遊脚の角度を監視し、目標値を数16式のように切り替える。この二つ目の目標値は、切替角度で遊脚のスイングを停止することで(「待ち」を入れる)、遊脚の着地を確実にするためのものである。理想的にはロボットは対称条件が厳密に満たされたときに着地が可能であるが、サーボ誤差がある場合にはうまく着地できないことがあるからである。
最後に、ブロック下側にあるのは「脚長制御部」である。支持脚の長さr1は、ある適当な目標値r1dに保たれる。一方、遊脚の長さ r2 は遊脚が地面に躓かないように制御される。ここでは遊脚長の目標値r2dを θ2 に関係付けている。具体的には、図に示すように折れ線の関係を持たせている。
以上説明した状態観測部および3つの制御部が単一のタイマータスクの下でリアルタイムに実行されるようCPUにプログラムされている。
本実施例の効果を示すために、本制御装置のプログラムを用いた速度制御のシミュレーション例を掲載した。シミュレーションは実機パラメータと地面との衝突モデルを反映した十分精密なものである。
静止状態から目標速度に到達するシミュレーション結果を図12に示す。右上のグラフは歩行速度の時間変化を示しており、ロボットは最初静止していることがわかる。速度目標値を1 m/s に設定した結果、徐々に上体を傾斜させながら前進する。左上のグラフは上体の姿勢角、支持脚および遊脚の角度の時間変化を示したグラフである。1歩目の最初、一瞬後ろに加速しているが、上体の傾斜の恩恵により、1歩目の途中で前方に方向転換していることがわかる。左下のグラフは股関節トルクのグラフである。右下のグラフはエネルギーの時間変化である。
歩行速度の増加に伴って1歩あたりに要する時間が減少しているが、これは歩幅一定歩行の当然の結果である。歩行速度が目標値に近づくに従って, 一旦は前に傾斜した上体の姿勢が徐々に回復してある一定値に収束する様子がわかる。この最終的に収束した傾斜が、着地衝突による損失エネルギーをちょうどキャンセルできるだけの傾斜となっているのである。損失エネルギーは右下のグラフで言うと、垂直に落ちている個所である。この損失エネルギーが制御によって1歩ごとに回復されている。エネルギーバランスはいかなるリミットサイクルの発生要件でもある。このようにして、望ましい歩行速度を通過する漸近安定な歩容を得ることができる。
本シミュレーションに対応するスティック線図を図13に示す。見やすくするために上体と右足だけが描かれている(淡い太線)。図には重心(四角い点)および、重心とZMPを結んだ直線も記されている(細くて濃い線)。同図ではロボットは左から右に向かって前進している。最初傾斜させた上体の姿勢が回復している様子がわかる。
力学的に明らかであるが、図からもわかるように、上体を前傾させようとしたときにZMPは支持点より後方に推移し、逆に傾斜を維持しようとして上体を起こそうとしているときはZMPは支持点よりやや前方に推移する。再度注意しておくが、本発明でいうZMPはあくまでも数1式によって計算されたものであって、実際の床反力の代表点ではない。
次に、静止状態から可変の速度目標値に追従するシミュレーション結果を図14に示す
。ここで歩行速度は+0.5 m/sから -0.5m/s, そしてまた +0.5 m/sに切り替えているが、およそ2歩程度で目標値に追従していることがわかる。
目標速度への整定時間であるが、これはロボットが発生可能な加速度に依存する。上体の傾斜に限界があるように、加速には限界があるからである。上体の実効最大傾斜は±π/2であり、このときエネルギーの最大変化を得ることができる。また、股関節から上体の重心までの距離が長いほど、より多くのエネルギー変化を得ることができる。
なお、切り替え角 θswが大きいほど,より多くのエネルギー変化率を得ることができるが、同時に着地衝突も大きくなり、定常歩行速度偏差も大きくなる。衝突によるエネルギー損失量と傾斜によるエネルギー変化量は陽に解けるので、θsw とθ3dの最適な関係式を得ることは容易である。
本シミュレーションに対応するスティック線図を図15に示す。ロボットが前進と後退を繰り返している様子がわかる。
次に、実機を忠実に再現したシミュレータに歩行制御装置を接続し、ハードウェアインループ(HIL)の手法で制御装置の性能を評価した。最も過酷な評価として、外乱に対するロバスト性について調査した実験結果のアニメーションを図16に、対応する時間グラフを図17に示す。
本実験においては、ロボットシミュレーションモデルは、最初目標速度0.5 m/sの定常歩行を行い、途中で突然壁に衝突する設定になっている。アニメーションからわかるように、壁のせいでロボットは大きな外乱を受ける。しかしこの大きな外乱に対してもロボットは転倒せず、単に停止するだけである。この様子は図17左下の歩行速度の時間変化を見れば明らかである。同図において9.23 秒で壁からインパクトを受ける。そして歩行速度は減少し、12.5 秒あたりで零に収束してロボットは止まる。しかし目標速度は依然 0.5 m/s に固定されているので上体を傾斜させようとするトルクは常に出力されている。その結果、速度は零であるが、支持脚は地面と滑りながら動いている(左上の角度変化)。いずれ対称歩行制御の切替角に到達して支持脚が交換される。そして壁が取り除かれるとロボットはまた歩き出す。
これは対称歩行制御の強力な受動性を示している。
受動性は対人・対物安全制御においてとくに重要である。さらに、たとえば歩行速度を零に設定した場合、未知の外乱に対してもロボットは停止することもできる。その整定時間は外乱の大きさに依存する。外乱を歩行の推進エネルギーとして利用することもできる。
5.第2実施例
図18に示すような足平と膝関節を有する2脚ロボットを制御対象に取り上げ、第2実施例を説明する。本ロボットは人間を平面に投影したようなモデルである。股関節、膝、足首に回転自由度を有しており、合計6自由度のモデルであるが、膝は過進展防止用ロック機構を有するフリージョイントとなっており、義足のような高効率な脚の振り出しを想定している。その他のハードウェア構成は第1実施例に出てきたロボットと同じである。
ロボットの座標系を図19に定義する。支持脚の足平の角度をθ0, 脚の角度を θ1とする。遊脚の上腿角度をθ2, 下腿角度をθ3とする。そして上体の傾斜角をθ4とする。支持脚と遊脚の股関節トルクをそれぞれ、τ1、 τ2とし、支持脚足首トルクをτ0とする。
図20に第2実施例のブロック図を示す。右足接地の場合のみ示した。左足接地の場合も同様である。第1実施例と比較するとわかるように、新たに足首トルクによるZMP制御部が追加され、対称歩行制御部の最終段が修正されている。また、脚長制御部はなくなっている(受動膝関節による)。
ブロック図中央にある「対称歩行制御部」では、遊脚重心角の目標値θcdが算出され、次いでPD制御によって遊脚股関節トルクτ2が決定される。ここで最初の分岐スイッチ(SW1)は遊脚の重心角を監視し、目標値を数17式のように切り替える。意味は第1実施例で述べたので省略する。
二つ目の分岐スイッチ(SW2)はZMPが爪先に来たときに遊脚をフリーにするためのものである。本発明では数9式の足首トルク制御を作用しているため、ZMPが爪先に来たどうかの判定は、数18式の関数の零クロスを監視すればよい。LGはほとんど変化しないので、支持脚角度θ1だけ見ても良い。
最後に、ブロック下部にあるZMP制御部は、数9式と数13式の足首トルクを用いてZMPを制御する部分である。分岐スイッチ(SW3)はSW2と同様、支持脚角度に応じて足首トルクを切り替えるために用いる。
以上説明した状態観測部および3つの制御部が単一のタイマータスクの下でリアルタイムに実行されるよう、制御装置のCPUがプログラムされている。
2つの典型的なシミュレーション結果を示す。図21は上体の目標姿勢θ4dを零にした場合、図22は0.1に設定した場合の歩行シミュレーションの結果である。それぞれの上段のグラフは支持脚角度と遊脚重心角、上体の姿勢角を示したグラフであり、中段のグラフは歩行速度のグラフ、下段はエネルギー変化を示したグラフである。上段のグラフから支持脚の角度と遊脚重心角が対称に制御されていることがわかる。
図23と図24に対応するスティック線図を示す。ZMPと重心の軌道も示してある。両者ともリミットサイクルに収束しているが、前者は足首のみ、後者は上体の傾斜も使ってエネルギーの回復を行っているため収束先の歩行速度が異なる。ZMPが爪先にきたところで遊脚を完全にフリーにしているので(図20のSW2)、着地角も異なる。歩行速度が速いほど着地角も大きくなっている。
本発明は2次元平面内の動歩行ロボットの制御に限らず、3次元ロボットの動歩行制御にも有効なものである。
本発明に係る歩行制御方法ならびに制御装置は、人間型の2脚ロボットの歩行制御のみならず、歩行支援装置や人間型以外の脚ロボット、例えば人間や物を運搬する脚移動ロボット、の制御等に広く用いることができる。
また本発明によって製造された歩行制御装置は、実時間制御可能な装置として実生活での展開が期待できる。
車輪付倒立振子の最適移動原理の説明図である。 簡単な2脚ロボットの説明図である。 回転関節を有する2脚ロボットにおける遊脚重心の説明図である。 図2のモデルに対称歩行制御を施したときの支持脚の相平面(角度 - 角速度)における解軌道を示した図である。 上体を有する2脚ロボットにおける対称歩行制御による移動を説明した図である。 足平を有する脚ロボットの対称歩行制御による零ダイナミクスを説明した図である。 足首トルクによるZMPおよび重心位置の制御方法を示した図である。 アクチュエータをバネに置き換えて等価な足首トルクを発生する原理図である。 第1実施例で対象とする足平を持たない2脚ロボットのCADモデルと写真である。 第1実施例で対象とする足平を持たない2脚ロボットの座標の定義図である。 第1実施例の制御ブロック図である。 第1実施例の「定値」速度追従制御のシミュレーション結果を示すグラフである。 第1実施例の「定値」速度追従制御のシミュレーション結果を示すスティック線図である。 第1実施例の「可変」速度追従制御のシミュレーション結果を示すグラフである。 第1実施例の「可変」速度追従制御のシミュレーション結果を示すスティック線図である。 第1実施例のHIL実験における外乱ロバスト性テスト結果を示すアニメーションである。 第1実施例のHIL実験における外乱ロバスト性テスト結果を示すグラフである。 第2実施例で対象とする足平と膝関節を有する2脚ロボットの写真である。 第2実施例で対象とする足平と膝関節を有する2脚ロボットの座標の定義図である。 第2実施例の制御ブロック図である。 第2実施例において上体の傾斜「無し」のシミュレーション結果を示すグラフである。 第2実施例において上体傾斜「有り」のシミュレーション結果を示すグラフである。 第2実施例において上体傾斜「有り」のシミュレーション結果を示すスティック線図である。 第2実施例において上体傾斜「有り」のシミュレーション結果を示すスティック線図である。

Claims (7)

  1. 2脚歩行の制御において、外力に対して受動的に歩行が生成されるように脚の運動を拘束すると共に、股関節部と遊脚の重心とを結ぶ直線が鉛直面となす角度およびその角速度が、支持脚のそれと鏡像関係になるように各関節を駆動するよう制御することを特徴とする歩行制御方法。
  2. 2脚歩行の制御においてロボットにおいて上体の傾斜角を目標歩行速度などの移動目標に応じて自動調整することを特徴とする請求項1記載の歩行制御方法。
  3. 足平を有する2脚ロボットにおいて、前記重心と総モーメントが零になる床上の点ZMPを結んだ直線が垂直を保ったまま等速で移動するように、足首トルクを発生することを特徴とする請求項1乃至3記載の歩行制御方法。
  4. 足平を有する2脚ロボットにおいて、総モーメントが零になる床上の点ZMPが足平の爪先に移動したときに前記重心または腰高さを一定に保つように足首トルクを発生することを特徴とする請求項1乃至3記載歩行制御方法。
  5. 2脚歩行の制御装置であって、歩行面に対して股関節より上部に配置される上体部と前記上体部と脚部との間にあり、回動可能な股関節部と、前記股関節部と歩行面との間に配置される2本の脚部と、前記脚部には前記股関節部側より膝関節部および足首関節部を配し、前記足首関節部と歩行面との間に足平を配し、前記各関節部に配した角度センサと、前記各角度センサの出力情報に基づき前記各関節部に与える制御入力を計算し前記各関節駆動部に出力する直接制御部を備え、請求項1乃至4記載の歩行制御方式を行う事を特徴とする歩行制御装置。
  6. 2脚歩行の制御装置であって、歩行面に対して股関節より上部に配置される上体部と前記上体部と脚部との間にあり、回動可能な股関節部と、前記股関節部と歩行面との間に配置される2本の脚部と、前記脚部には前記股関節部側より膝関節部および足首関節部を配し、前記足首関節部と歩行面との間に足平を配し、前記各関節部に配した角度センサと、前記各角度センサの出力情報に基づき前記各関節部に与える制御入力を計算し、一旦制御装置内部の動力学モデルに適用し、該動力学モデルの出力である関節角度や角速度を目標値として前記関節の駆動制御を行う制御入力を生成する関節制御部を備え、請求項1乃至4記載の歩行制御方式を行う事を特徴とする歩行制御装置。
  7. 前記直接制御部あるいは間接制御部の一方、または両方を備えたことを特徴とする請求項5乃至6記載の歩行制御装置。
JP2004308923A 2004-10-22 2004-10-22 2脚ロボットの歩行制御装置および歩行制御方式 Pending JP2006116672A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004308923A JP2006116672A (ja) 2004-10-22 2004-10-22 2脚ロボットの歩行制御装置および歩行制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004308923A JP2006116672A (ja) 2004-10-22 2004-10-22 2脚ロボットの歩行制御装置および歩行制御方式

Publications (1)

Publication Number Publication Date
JP2006116672A true JP2006116672A (ja) 2006-05-11

Family

ID=36535032

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004308923A Pending JP2006116672A (ja) 2004-10-22 2004-10-22 2脚ロボットの歩行制御装置および歩行制御方式

Country Status (1)

Country Link
JP (1) JP2006116672A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006132330A1 (ja) * 2005-06-08 2006-12-14 Nagoya Institute Of Technology 脚式移動体の平衡点安定化装置
JP2014518774A (ja) * 2011-03-21 2014-08-07 本田技研工業株式会社 ロボット制御方法および記憶媒体
WO2018097419A3 (ko) * 2016-11-22 2018-08-02 한국과학기술연구원 이족 보행 로봇의 안정된 보행 제어를 위해 단순화된 로봇의 모델링 방법
CN112536796A (zh) * 2020-11-23 2021-03-23 深圳市优必选科技股份有限公司 机器人控制方法、装置、计算机可读存储介质及机器人
JP2021059011A (ja) * 2016-12-13 2021-04-15 ボストン ダイナミクス,インコーポレイテッド 動的バランスを使用する脚ロボットに対する全身マニピュレーション
CN112743509A (zh) * 2019-10-31 2021-05-04 精工爱普生株式会社 控制方法和计算装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006132330A1 (ja) * 2005-06-08 2006-12-14 Nagoya Institute Of Technology 脚式移動体の平衡点安定化装置
US8024070B2 (en) 2005-06-08 2011-09-20 Nagoya Institute Of Technology Passive walking legged robot
JP2014518774A (ja) * 2011-03-21 2014-08-07 本田技研工業株式会社 ロボット制御方法および記憶媒体
WO2018097419A3 (ko) * 2016-11-22 2018-08-02 한국과학기술연구원 이족 보행 로봇의 안정된 보행 제어를 위해 단순화된 로봇의 모델링 방법
US11253993B2 (en) 2016-11-22 2022-02-22 Korea Institute Of Science And Technology Method for modeling robot simplified for stable walking control of bipedal robot
JP2021059011A (ja) * 2016-12-13 2021-04-15 ボストン ダイナミクス,インコーポレイテッド 動的バランスを使用する脚ロボットに対する全身マニピュレーション
US11667343B2 (en) 2016-12-13 2023-06-06 Boston Dynamics, Inc. Whole body manipulation on a legged robot using dynamic balance
CN112743509A (zh) * 2019-10-31 2021-05-04 精工爱普生株式会社 控制方法和计算装置
CN112743509B (zh) * 2019-10-31 2023-11-03 精工爱普生株式会社 控制方法和计算装置
CN112536796A (zh) * 2020-11-23 2021-03-23 深圳市优必选科技股份有限公司 机器人控制方法、装置、计算机可读存储介质及机器人
CN112536796B (zh) * 2020-11-23 2024-03-15 深圳市优必选科技股份有限公司 机器人控制方法、装置、计算机可读存储介质及机器人

Similar Documents

Publication Publication Date Title
Mesesan et al. Dynamic walking on compliant and uneven terrain using dcm and passivity-based whole-body control
JP5803039B2 (ja) 移動ロボットの歩行動作の制御方法およびその方法を実装したロボット
JP3269852B2 (ja) 脚式移動ロボットの姿勢安定化制御装置
JP4998506B2 (ja) ロボット制御装置、ロボット制御方法、及び脚式ロボット
KR101985790B1 (ko) 보행 로봇 및 그 제어 방법
Griffin et al. Straight-leg walking through underconstrained whole-body control
EP0965416B1 (en) Attitude controller of legged moving robot
JP4513320B2 (ja) ロボット装置、並びにロボット装置の運動制御方法
JP3672426B2 (ja) 脚式移動ロボットの姿勢制御装置
Yi et al. Online learning of a full body push recovery controller for omnidirectional walking
JP2003326483A (ja) 移動ロボットの姿勢制御装置
JP6682341B2 (ja) 歩行制御方法、歩行制御プログラム及び2足歩行ロボット
US20110172823A1 (en) Robot and control method thereof
Hopkins et al. Design of a compliant bipedal walking controller for the DARPA Robotics Challenge
JP2004223712A (ja) 歩行式ロボット及びその位置移動方法
KR101766755B1 (ko) 보행 로봇 및 그 제어방법
JP2006116672A (ja) 2脚ロボットの歩行制御装置および歩行制御方式
Borovac et al. How to compensate for the disturbances that jeopardize dynamic balance of a humanoid robot?
JP2009107033A (ja) 脚式移動ロボット及びその制御方法
JP2006150567A (ja) ロボットの安定化制御装置
JP6407409B2 (ja) 脚型機構体、歩行ロボット、姿勢制御方法及びプログラム
Song et al. Development of an omnidirectional walking engine for full-sized lightweight humanoid robots
JP2009255231A (ja) 歩行制御装置および歩行制御方法
JP4833121B2 (ja) 脚式ロボットと歩容生成装置と歩容修正装置を備えるシステム
Sim et al. Joint Space Position/Torque Hybrid Control of the Quadruped Robot for Locomotion and Push Reaction