以下、図面を参照しながら本発明の実施形態について詳解する。
A.脚式移動ロボットの機械的構成
図1及び図2には本発明の実施に供される「人間形」又は「人間型」の脚式移動ロボットが直立している様子を前方及び後方の各々から眺望した様子を示している。図示の通り、脚式移動ロボットは、胴体部と、頭部と、左右の上肢部と、脚式移動を行う左右2足の下肢部とで構成され、例えば胴体に内蔵されている制御部(図示しない)により機体の動作を統括的にコントロールするようになっている。
左右各々の下肢は、大腿部と、膝関節と、脛部と、足首と、足平とで構成され、股関節によって体幹部の略最下端にて連結されている。また、左右各々の上肢は、上腕と、肘関節と、前腕とで構成され、肩関節によって体幹部の上方の左右各側縁にて連結されている。また、頭部は、首関節によって体幹部の略最上端中央に連結されている。
制御部は、この脚式移動ロボットを構成する各関節アクチュエータの駆動制御や各センサ(後述)などからの外部入力を処理するコントローラ(主制御部)や、電源回路その他の周辺機器類を搭載した筐体である。制御部は、その他、遠隔操作用の通信インターフェースや通信装置を含んでいてもよい。ここで言う、関節アクチュエータの駆動制御には、関節角の角度位置制御や角速度制御、角加速度の他に、アクチュエータのサーボ・ゲインのコントロール、粘性のコントロールを含むものとする。
このように構成された脚式移動ロボットは、制御部による全身協調的な動作制御により、2足歩行を実現することができる。かかる2足歩行は、一般に、以下に示す各動作期間に分割される歩行周期を繰り返すことによって行なわれる。すなわち、
(1)右脚を持ち上げた、左脚による単脚支持期
(2)右足が接地した両脚支持期
(3)左脚を持ち上げた、右脚による単脚支持期
(4)左足が接地した両脚支持期
脚式移動ロボットにおける歩行制御は、あらかじめ下肢の目標軌道を計画し、上記の各期間において計画軌道の修正を行なうことによって実現される。すなわち、両脚支持期では、下肢軌道の修正を停止して、計画軌道に対する総修正量を用いて腰の高さを一定値で修正する。また、単脚支持期では、修正を受けた脚の足首と腰との相対位置関係を計画軌道に復帰させるように修正軌道を生成する。
歩行動作の軌道修正を始めとして、機体の姿勢安定制御には、一般に、ZMPを歩行の安定度判別の規範として用いる。すなわち、ZMPに対する偏差を小さくするための位置、速度、及び加速度が連続となるように、5次多項式を用いた補間計算により行なう。ZMPによる安定度判別規範は、歩行系から路面には重力と慣性力、並びにこれらのモーメントが路面から歩行系への反作用としての床反力並びに床反力モーメントとバランスするという「ダランベールの原理」に基づく。力学的推論の帰結として、足底接地点と路面の形成する支持多角形の内側にピッチ軸及びロール軸モーメントがゼロとなるZMPが存在する(前述)。
図3には、この脚式移動ロボットが具備する関節自由度の構成例を模式的に示している。同図に示すように、脚式移動ロボットは、2本の腕部と頭部1を含む上肢と、移動動作を実現する2本の脚部からなる下肢と、上肢と下肢とを連結する体幹部とで構成された、複数の肢を備えた構造体である。
頭部を支持する首関節(Neck)は、首関節ヨー軸1と、第1及び第2の首関節ピッチ軸2A及び2Bと、首関節ロール軸3という4自由度を有している。
また、各腕部は、その自由度として、肩(Shoulder)における肩関節ピッチ軸4と、肩関節ロール軸5と、上腕ヨー軸6、肘(Elbow)における肘関節ピッチ軸7と、手首(Wrist)における手首関節ヨー軸8と、手部とで構成される。手部は、実際には、複数本の指を含む多関節・多自由度構造体である。
また、体幹部(Trunk)は、体幹ピッチ軸9と、体幹ロール軸10という2自由度を有する。
また、下肢を構成する各々の脚部は、股関節(Hip)における股関節ヨー軸11と、股関節ピッチ軸12と、股関節ロール軸13と、膝(Knee)における膝関節ピッチ軸14と、足首(Ankle)における足首関節ピッチ軸15と、足首関節ロール軸16と、足部とで構成される。
左右の股関節を繋ぐ骨盤に相当する腰部付近の部位のことを、「基体」と呼ぶ。基体は、質量操作量が大きいことから、脚式移動ロボットの姿勢安定性制御における重要な制御目標点となる。
B.脚式移動ロボットの制御システム構成
図4には、脚式移動ロボット100の制御システム構成を模式的に示している。同図に示すように、脚式移動ロボット100は、ヒトの四肢を表現した各機構ユニット30、40、50R/L、60R/Lと、各機構ユニット間の協調動作を実現するための適応制御を行なう制御ユニット80とで構成される(但し、R及びLの各々は、右及び左をそれぞれ示す接尾辞である。以下同様)。
脚式移動ロボット100全体の動作は、制御ユニット80によって統括的に制御される。制御ユニット80は、CPU(Central Processing Unit)やメモリなどの主要回路コンポーネント(図示しない)で構成される主制御部81と、電源回路やロボット100の各構成要素とのデータやコマンドの授受を行なうインターフェース(いずれも図示しない)などを含んだ周辺回路82とで構成される。
本発明を実現する上で、この制御ユニット80の設置場所は特に限定されない。図4に示す例では体幹部ユニット40に搭載されているが、頭部ユニット30に搭載してもよい。あるいは、脚式移動ロボット100外に制御ユニット80を配備して、脚式移動ロボット100の機体とは有線若しくは無線で交信するようにしてもよい。
図3に示した脚式移動ロボット100内の各関節自由度は、それぞれに対応するモータ又はその他のタイプのアクチュエータによって実現される。すなわち、頭部ユニット30には、首関節ヨー軸1、第1及び第2の首関節ピッチ軸2A及び2B、首関節ロール軸3の各々を表現する首関節ヨー軸アクチュエータA1、第1及び第2の首関節ピッチ軸アクチュエータA2A、A2B、首関節ロール軸アクチュエータA3がそれぞれ配設されている。
また、体幹部ユニット40には、体幹ピッチ軸9、体幹ロール軸10の各々を表現する体幹ピッチ軸アクチュエータA9、体幹ロール軸アクチュエータA10が配備されている。
また、腕部ユニット50R/Lは、上腕ユニット51R/Lと、肘関節ユニット52R/Lと、前腕ユニット53R/Lに細分化されるが、肩関節ピッチ軸4、肩関節ロール軸5、上腕ヨー軸6、肘関節ピッチ軸7、手首関節ヨー軸8の各々の自由度を表現する肩関節ピッチ軸アクチュエータA4、肩関節ロール軸アクチュエータA5、上腕ヨー軸アクチュエータA6、肘関節ピッチ軸アクチュエータA7、手首関節ヨー軸アクチュエータA8が配設されている。
また、脚部ユニット60R/Lは、大腿部ユニット61R/Lと、膝ユニット62R/Lと、脛部ユニット63R/Lに細分化されるが、股関節ヨー軸11、股関節ピッチ軸12、股関節ロール軸13、膝関節ピッチ軸14、足首関節ピッチ軸15、足首関節ロール軸16の各々の自由度を表現する股関節ヨー軸アクチュエータA11、股関節ピッチ軸アクチュエータA12、股関節ロール軸アクチュエータA13、膝関節ピッチ軸アクチュエータA14、足首関節ピッチ軸アクチュエータA15、足首関節ロール軸アクチュエータA16が配設されている。
各関節に用いられるアクチュエータA1、A2、A3…は、より好ましくは、ギア直結型で且つサーボ制御系をワンチップ化してモータ・ユニット内に搭載したタイプの小型ACサーボ・アクチュエータで構成することができる。この種のACサーボ・アクチュエータに関しては、例えば本出願人に既に譲渡されている特開2000−299970号公報(特願平11−33386号明細書)に開示されている。
頭部ユニット30、体幹部ユニット40、腕部ユニット50、各脚部ユニット60などの各機構ユニット毎に、アクチュエータ駆動制御用の副制御部35、45、55、65が配設されている。
機体の体幹部40には、加速度センサ95と姿勢センサ96が配設されている。加速度センサ95は、X、Y、Z各軸方向に配置する。機体の腰部に加速度センサ95を配設することによって、質量操作量が大きな部位である腰部すなわち基体を制御目標点として設定して、その位置における姿勢や加速度を直接計測して、ZMPに基づく姿勢安定制御を行なうことができる。
また、各脚部60R並びに60Lには、接地確認センサ91及び92と、加速度センサ93及び94がそれぞれ配設されている。接地確認センサ91及び92は、例えば足底に圧力センサを装着することにより構成され、床反力の有無により足底が着床したか否かを検出することができる。また、加速度センサ93及び94は、少なくともX及びYの各軸方向に配置する。左右の足部に加速度センサ93及び94を配設することにより、ZMP位置に最も近い足部で直接ZMP方程式を組み立てることができる。
質量操作量が大きな部位である腰部にのみ加速度センサを配置した場合、腰部すなわち基体のみが直接的な制御目標点になり、足部の状態は、この制御目標点の計算結果を基に相対的に算出しなければならず、足部と路面との間では以下の条件を満たすことが、前提となってしまう。
(1)路面はどんな力やトルクが作用しても動くことがない。
(2)路面での並進に対する摩擦係数は充分に大きく、滑りが生じない。
これに対し、本実施形態では、路面との接触部位である足部にZMPと力を直接する反力センサ・システム(床反力センサなど)を配備するとともに、制御に用いるローカル座標とその座標を直接的に計測するための加速度センサを配設する。この結果、ZMP位置に最も近い足部で直接ZMP釣合い方程式を組み立てることができ、上述したような前提条件に依存しない、より厳密な姿勢安定制御を高速で実現することができる。この結果、力やトルクが作用すると路面が動いてしまう砂利上や毛足の長い絨毯上や、並進の摩擦係数が充分に確保できずに滑りが生じ易い住居のタイルなどであっても、機体の安定歩行(運動)を保証することができる。
主制御部80は、各センサ91〜96の出力に応答して制御目標をダイナミックに補正することができる。より具体的には、副制御部35、45、55、65の各々に対してそれぞれ適応的な制御を行ない、脚式移動ロボット100の上肢、体幹、及び下肢が協調して駆動する全身運動パターンを実現する。
ロボット100の機体上での全身運動は、足部運動、ZMP軌道、体幹運動、上肢運動、腰部高さなどを設定するとともに、これらの設定内容に従った動作を指示するコマンドを各副制御部35、45、55、65に転送する。そして、各々の副制御部35、45…では、主制御部81からの受信コマンドを解釈して、各アクチュエータA1、A2、A3…に対して駆動制御信号を出力する。ZMPは、歩行中の床反力によるモーメントがゼロとなる床面上の点のことであり、ここで言う「ZMP軌道」とは、例えばロボット100の歩行動作期間中にZMPが動く軌跡を意味する。
C.アクチュエータ特性の制御
C−1.アクチュエータの動作速度、機械的受動性
脚式移動ロボットの機体を、略平行な関節自由度を持つ複数の関節軸を長さ方向に連結した多リンク構造体として捉えることができる。歩行動作や、転倒動作、床上姿勢からの起き上がり動作などの各脚式動作の途上では、この多リンク構造体の着床部位と床面がなすリンク状態が開リンク状態と閉リンク状態との間で数回切り替わる。
本出願人に既に譲渡されている特願2001−233691号明細書には、外界や作業対象に対して、閉リンク状態と開リンク状態の繰り替え動作を高速に行なう脚式移動ロボットについて開示されている。すなわち、1以上の回転型関節(1関節当り2自由度以上備えていてもよい)で構成される肢を持つロボットにおいて、各肢に動的閉合誤差を除去するに最低限必要な受動自由度(減速機のバックラッシュなど)を配し、さらに各肢の可動範囲を適切に管理する。たとえ、関節部を駆動するアクチュエータがトルク情報を取得する手段を持たない場合であっても、閉リンク状態と開リンク状態の高速切替え動作を安定に実現する。このような閉リンク状態と開リンク状態の高速切替え動作は、2足歩行ロボットにおいて、腰部基準座標に近い部位にバックラッシュ量が少ないギアードモータを配置する一方、手先・足先に近い部位にバックラッシュ量が多いギアードモータを配置し最適な特性を得ることにより実現し、ロボットのデザインを最適化することができる。
また、ロボットを最適化する第2の方法として、各関節軸アクチュエータにおける位置サーボ補償器の開ループ・ゲインを任意に調整することで、位置エラー偏差量を制御する。すなわち、バックラッシュ量が均一の場合にはサーボ・ゲインの大小によるサーボ偏差をバックラッシュ量に見立て、それを制御することで、動的閉合誤差を除去するための受動自由度を得ることができる。
本実施形態では、後者の最適化方法をさらに拡張し、サーボ制御器の比例ゲインだけでなく位相補償要素も関節各部位で調整する。
図5には、アクチュエータのサーボ制御器の構成を示している。同図に示すように、サーボ制御器は、直列補償の比例ゲインKと位相補償要素C(s)という2つの制御要素を持ち、比例ゲインだけでなく位相補償要素も関節各部位で調整する。また、図6には、図5に示したモータと減速機についての伝達関数表現モデルのゲイン及び位相の周波数特性を示している。
ここで、位相補償要素は以下の式で表される。但し、n、mは任意の自然数であり、また、ai、biは任意の実数であり、状態変数を表現した場合はフィードバック・ゲインに相当する。また、sはラプラス演算子である。
また、モータと減速器の伝達関数表現モデルG(s)は以下の式で表される。但し、Kはモータ・ゲインであり、Jはモータの慣性モーメントであり、Dはモータの粘性抵抗係数である。
まず、図5に示したサーボ制御器において、位相補償型制御の設計例として位相補償帯域を任意に選択する例(位相補償量が一定で周波数帯域を任意に選ぶ)について、図7を参照しながら説明する。同図において、
(1)C(s)−1:1.0〜100Hzの帯域で約+5.6dBのゲイン増幅、約+18degの位相進みを与えている。
(2)C(s)−2:0.1〜10Hzの帯域で約+5.6dBのゲイン増幅、約+18degの位相進みを与えている。
(3)C(s)−3:10〜1kHzの帯域で約+5.6dBのゲイン増幅、約+18degの位相進みを与えている。
このように、位相補償を施す周波数帯域を任意に選択することで、アクチュエータの周波数特性を自在に設定することができる。したがって、このようなアクチュエータで構成されるロボットの関節軸は、機体の姿勢や動作の局面に応じて、周波数特性を動的に調整することができる。
なお、図7に示す例では、位相進み補償の例を示したが、位相遅れ補償場合も同様に任意の周波数帯域で任意の位相遅れ量を設定することができる。
次いで、図5に示したサーボ制御器において、位相補償型制御の設計例として位相補償を施す量を任意に選択する例(周波数帯域が一定で位相補償量を任意に選ぶ)について、図8を参照しながら説明する。同図において、
(4)C(s)−4:4.0〜70Hzの帯域で約+3.5dBのゲイン増幅、約+12degの位相進みを与えている。
(5)C(s)−5:2.0〜70Hzの帯域で約+5.6dBのゲイン増幅、約+18degの位相進みを与えている。
(6)C(s)−6:1.0〜70Hzの帯域で約+6.5dBのゲイン増幅、約+21degの位相進みを与えている。
このように、位相補償を施す量を任意に選択することで、アクチュエータの周波数特性を自在に設定することができる。したがって、このようなアクチュエータで構成されるロボットの関節軸は、機体の姿勢や動作の局面に応じて、周波数特性を動的に調整することができる。
なお、図8に示す例では、位相進み補償の例を示したが、位相遅れ補償の場合も同様に任意の周波数帯域で任意の位相遅れ量を設定することができる。
次いで、図5に示したサーボ制御器において、Kで示した直列補償ゲインの大小を変更する制御器の設計例について、図9を参照しながら説明する。同図は、図9において、Kを±3dBだけ上下させたことに相当する。図示の通り、直列補償ゲインの大小も任意に設定することができる。
図7〜図9に示した内容をロボットの関節軸駆動用のアクチュエータに適用するためには、これらの制御器を構成するパラメータを動的又は静的に変更するための通信プロトコルを実装する。これによって、ロボットの各関節軸にさまざまな特性を与えることができる。
次いで、これらの特性を備えたアクチュエータのサーボ制御器を実装したときのアクチュエータの特性について説明する。
図10には、図7に示したように位相補償量が一定で周波数帯域を任意に選ぶようにアクチュエータのサーボ制御器を実装したときの開ループ特性を示している。
(1)C(s)−1:1.0〜100Hzの帯域で約+5.6dBのゲイン増幅、約+18degの位相進みを与える。これによって、全体的にゲインが高めとなるので、位置決め精度と追従性がよくなるが、エネルギ・ロスとなり易い。また、負荷が大きくなると不安定になる可能性がある。
(2)C(s)−2:0.1〜10Hzの帯域で約+5.6dBのゲイン増幅、約+18degの位相進みを与える。この場合、C(s)−1とC(s)−2の中間的な特性を持つ。
(3)C(s)−3:10〜1kHzの帯域で約+5.6dBのゲイン増幅、約+18degの位相進みを与える。この場合、高域でのみ位相進み補償をしていることになるので、ゆっくりした動作時にはあまり効果が見られないが、走る、飛ぶ、踊るといった速い動作には効果がある。
このように、位相補償を施す周波数帯域を任意に選択することで、アクチュエータの周波数特性を自在に設定することができる。したがって、このようなアクチュエータで構成されるロボットの関節軸は、機体の姿勢や動作の局面に応じて、周波数特性を動的に調整することができる。
また、図11には、図10に示したうち高域でのみ位相進み補償を施した例C(s)−3においてさらに直列補償ゲインの制御を採り入れた様子を示している。この場合、図5に示した例と同様に、同位相においてゲインが上下する。
図10に示した例では、位相補償例C(s)−3ではゆっくりした動作時にはあまり効果が見られないが、図11に示すように、低周波数帯域においてゲインを増やすことにより、低周波数帯域での制御偏差を少なくすることができる。この結果、ゆっくりした動作時でも指令値に対して少ない遅れで応答することが可能となる。
これらをまとめると、まず、アクチュエータの位置制御系の開ループ特性に対し、図12に示すように、全体で高いゲインとし、高域で位相進み量を小さくするような特性に設定することにより、支持脚などの位置精度が必要な部位や関節を硬くして、コンプライアンスをなくすことができる。
これに対し、アクチュエータの位置制御系の開ループ特性に対し、図13に示すように、低域で低ゲインとし、中高域で位相進み量を大きくするような特性に設定することにより、遊脚などの位置精度よりも高速応答が必要な関節部位や、関節にコンプライアンスが必要なときに適合した特性を得ることができる。
以上、アクチュエータのサーボ制御器においてサーボ制御器の比例ゲインだけでなく、位相補償要素も関節各部位で調整するメカニズムについて説明してきた。これによって、安定且つ高効率な動作を実現するには局所的に力を増減させることや関節各部位のコンプライアンス(機械的受動性)を増減させることが可能となる。
例えば、位置制御系として関節各軸の動作を捉えたときは高ゲイン且つ高帯域なサーボ制御器を使って、制御偏差が少なくなるように制御した方がよいが、力学モデルとして捉えたときはポテンシャル・エネルギや運動エネルギの作用を考慮してゲインを低くしたり位相補償している周波数帯を上下させたりすることも同時に行なうとよい。
C−2.アクチュエータ・モータの粘性抵抗
上記のC−1項で説明したようなアクチュエータの動作速度や動作時の機械的受動性という特性に加え、アクチュエータの粘性抵抗を可変に制御するという方式を採り入れることができる。
例えば、コイルへの供給電流を制御して所定の磁束分布を形成することにより回転トルクを発生させるタイプのモータは、一般に、コイル端子を電源電圧に接続する第1のトランジスタ・スイッチ群と、コイル端子を接地する第2のトランジスタ・スイッチ群からなるスイッチング動作回路をPWM制御により駆動することによって、コイル電流を制御し、所望のトルク又は回転位置、回転速度などを得るようになっている。
ここで、モータ・コイルが非通電の期間においてオープン状態となるタイミングにおいて、モータ・コイルに通電された電流(厳密には電荷)が抜けてしまうため、トルクのロスになる。またコギングによるトルクむらの影響を受け易くなる。
このような場合、モータ・コイルが非通電の期間においても、コイルがオープン状態とならない短絡(ショート)状態を形成することにより、モータ・コイルに通電された電流(厳密には電荷)が抜けないようにすることができる。このとき、モータのコイルには、永久磁石側からの磁束密度により逆起電力が発生する。この逆起電力により、モータの回転方向の逆方向に力が作用するので、外力による回転に対する粘性抵抗を作り出すことができ、ブレーキに類似した効果を得ることができる。このようなモータへの粘性抵抗により、トルク・ロスがなくコギングによるトルクむらの影響が軽減される。
一方、モータの非通電時において、このようなコイルの短絡状態を形成した場合、上述したように、モータに一種の粘性抵抗を与えることができるが、このようなモータをロボットに使用した場合、コイル・ショートによるブレーキの影響のため、コンプライアンス(機械的受動性)がなくなってしまうという問題を招来する。
そこで、モータ・コイルの非通電時におけるコイルのオープン状態と短絡状態の期間の比率を、所望の機械的特性に応じて調整することにより、モータ・コイルがオープン状態となるタイミングにおけるモータ・コイルに通電された電流(厳密には電荷)が抜けてしまうことによるトルクのロスやコギングによるトルクむらの問題と、モータ・コイルの非通電時におけるコイル・ショートによるブレーキの影響のためコンプライアンス(機械的受動性)がなくなるという問題を、ともに解決することができる。
ここで、モータ・コイルの通電及び非通電状態の比率はPWM制御により実現することができるが、さらに、モータ・コイルの非通電状態におけるコイルのオープン状態と短絡状態の期間の比率も、同様にPWM制御を用いて実現することができる。
図14には、コイル電流の制御メカニズムを適用したDCモータにおけるコイル電流供給用の電流制御回路の等価回路についての構成例を示している。
同図に示す電流制御回路は、フルブリッジ構成であり、pnp型のトランジスタA'とnpn型のトランジスタAを順方向接続した回路と、同じくpnp型のトランジスタB'とnpn型のトランジスタBを順方向接続した回路を電源電圧VccとグランドGNDの間に並列接続し、さらにトランジスタA'及びAの中間点とトランジスタB'及びBの中間点を固定子の単相コイルで接続している。
トランジスタA'及びBをオンにするとともに、トランジスタA及びB'をオフにすることによって、モータ・コイルには、図示の矢印方向の電流Imが流れる。また、トランジスタA'及びBをオフにすることによって、コイルはオープン状態となって、電流Imは流れなくなる。また、トランジスタA'及びBをオフにするとともに、トランジスタA'及びB'をオンにすることによって、モータ・コイルは短絡(ショート)状態となる。
PWM制御論理回路は、図示しない中央制御部からの電流軸電流指令(又はトルク指令)に基づいてコイルへの電流指令を生成し、これら電流指令に基づいて各トランジスタをPWM方式にてスイッチング制御する。すなわち、トランジスタA'及びBをオンにするとともにトランジスタA及びB'をオフにしてコイル電流Imを流す通電期間と、トランジスタA'及びBをオフにしてコイルを非通電にする非通電期間を交互に生成する。
本実施形態では、さらにPWM制御論理回路が出力する各トランジスタA及びA'、並びB及びB'をオン/オフ動作を制御する制御信号を付加論理により切り替える付加論理回路が配設されている。
図15には、付加論理回路の具体的な回路構成を示している。付加論理回路は、PWM制御論理回路から出力されるBRAKE_PWM制御信号に基づいて、PWM制御論理回路が出力する信号A0及びA0'、並びB0及びB0'のオン/オフ動作を制御する制御論理を付加論理により切り替える。これによって、モータ・コイルの非通電状態におけるコイルのオープン状態と短絡状態の切替動作を行なう。
PWM制御論理回路からのトランジスタA'制御用の信号A0'とトランジスタB0'制御用の信号B0'の論理積と、トランジスタA制御用の信号A0とトランジスタB制御用の信号B0の排他的論理和がとられ、さらにこれらの論理演算値の論理積を反転したものがBRAKE_PWM制御信号の反転信号と論理和される。この論理和の結果を元の各トランジスタ制御用信号との間で論理積を取ったものが、最終的なそれぞれのトランジスタ制御用信号となる。
付加論理回路は、BRAKE_PWM制御信号がハイ・レベルが入力されると、コイル非通電時にコイルを短絡させるようにトランジスタ制御用信号を切り替える。通常のコイル非通電時において、PWM制御論理回路からは、制御信号A0'及びB0'をハイ、A0及びB0をローにするトランジスタ制御用信号が出力される。これに対し、付加論理回路は、ハイ・レベルのBRAKE_PWM制御信号が入力されると、ハイ状態のA1'及びB1'をローに転じて、コイルの短絡状態を形成する。
一方、付加論理回路は、BRAKE_PWM制御信号がロー状態のときには、コイル非通電時において、PWM制御論理回路からのトランジスタ制御用信号をそのまま出力するので、非通電時におけるコイルはオープン状態となる。
図16には、PWM制御により所定のデューティ比を持つBRAKE_PWM制御信号が入力されたときの、付加論理回路の各トランジスタ制御用信号についての出力特性を、コイル電流波形特性及びトルク出力特性とともに示している。
コイル非通電時にコイルを短絡状態にすると、過渡応答により、コイル電流がゼロに戻るまでの時間が長くなるが、コイルをオープン状態にするとその時間は短くなる。コイル非通電時の過渡応答特性は、BRAKE_PWM制御信号のデューティ比に従って、これらの特性が混合されたものとなる。
したがって、同図に示すように、コイル通電とコイル短絡というスイッチング動作を繰り返した場合、コイル非通電時にコイル電流がゼロに戻る前に次の通電が開始される。このときのコイルの最大電流は、コイル通電及び非通電の動作の度に逐次上昇していくが、その上昇傾向はデューティ比すなわちBRAKE_PWM制御信号がハイ・レベルとなる比率にほぼ比例する。同様に、コイル電流の実効値は図示の通り徐々に増加していくことになるが、その上昇傾向はデューティ比すなわちBRAKE_PWM制御信号がハイ・レベルとなる比率にほぼ比例する。
また、モータの出力トルクTは、コイル電流にモータのトルク定数Ktを乗じた値となるので(T=Kt・I)、同図からも判るように、コイル通電及び非通電を繰り返したとき、コイル電流の増大に伴って、モータ・トルクの実効値は増大していく。したがって、モータ・コイルが非通電時に短絡状態となることにより、モータ・コイルに通電された電流(厳密には電荷)が抜けてしまうことがなくなり、トルクのロスがなくなる。また、コギングによるトルクむらの影響を受けにくくなる。
コイル通電及び非通電を繰り返したときの上昇傾向は、BRAKE_PWM制御信号のデューティ比すなわち同制御信号がハイ・レベルとなる比率にほぼ比例する。モータ・トルクの出力が上昇していく特性が、モータの粘性係数に相当する。言い換えれば、BRAKE_PWM制御信号のデューティ比によってモータの粘性抵抗を動的に制御することが可能である。
モータの非通電時において、このようなコイルの短絡状態を形成した場合、上述したように、モータに一種の粘性抵抗を与えることができる。一方、このようなモータをロボットに使用した場合、コイル・ショートによるブレーキの影響のため、コンプライアンス(機械的受動性)がなくなってしまうという問題を招来する。
そこで、PWM制御論理回路は、付加論理回路に入力するBRAKE_PWM制御信号をPWM制御することにより、モータ・コイルの非通電状態におけるコイルのオープン状態と短絡状態の期間の比率を制御する。
モータ・コイルの非通電状態におけるコイルのオープン状態と短絡状態の期間をPWM制御した場合、そのコイル電流の特性は、コイル非通電時にコイルをオープン状態にしたときのコイル電流の過渡応答特性とコイルを短絡状態にしたときのコイル電流の過渡応答特性の特性がデューティ比に応じて混合されたものとなる。
このようにPWM制御論理回路が付加論理回路へ供給するBRAKE_PWM制御信号のデューティ比をPWM制御することにより、モータ・コイルの非通電時におけるコイルのオープン状態と短絡状態の期間の比率を、所望の機械的特性に応じて調整することができる。
したがって、モータ・コイルがオープン状態となるタイミングにおけるモータ・コイルに通電された電流(厳密には電荷)が抜けてしまうことによるトルクのロスやコギングによるトルクむらの問題と、モータ・コイルの非通電時におけるコイル・ショートによるブレーキの影響のためコンプライアンス(機械的受動性)がなくなるという問題を、ともに解決することができる。
また、上述したように、BRAKE_PWM制御信号のデューティ比によってモータの粘性抵抗を動的に制御することが可能である。その制御の関係を図17に示している。同図において、粘性抵抗は、粘性係数[mN−m・s/rad]と動作時の回転角速度[rad/s]の積で表される。
図17中Aで示される領域では、モータ特性上で最大となる粘性係数に相当し、図示の例では0.9mN−m・s/radである。この領域にアクチュエータ特性を設定すると、関節の粘性が大きくなる。この結果、コンプライアンスは得られなくなるが、外部からの振動などの外乱に対してロバストな制御特性を実現することができる。
一方、図17中Bで示される領域は、モータ特性上の最大値に対し3分の1以下となる粘性係数に相当し、図示の例では0.15mN−m・s/radである。この領域にアクチュエータ特性を設定すると、関節の粘性が小さくなる。この結果、外乱に対して弱くなるが、機械的受動性(コンプライアンス)を得ることができる。
なお、コンプライアンスを得るための領域Bとしては、基本的にはモータ特性上の最大値以下であればよいが、図示の通り、0.3〜0.8mN−m・s/rad辺りの傾きが急峻な部分では温度などの環境変化の影響を受け易く、コントロールが難しくなる。このため、上述したようにモータ特性上の最大値に対し3分の1以下で傾きが緩やかとなる領域を機械的受動性領域に設定することが妥当であると思料され、また本発明者らによる実験により立証されている。
なお、上記の説明ではDCモータを例にとって説明したが、3相モータやその他のコイルへの供給電流を制御して所定の磁束分布を形成することにより回転トルクを発生させるタイプのモータにおいても同様に、非通電時のモータ・コイルを間歇的にオープン状態及び短絡状態に切り替えることによって、モータの所望の粘性抵抗を得ることができる。
C−3.脚式移動ロボットへの適用
次いで、本実施形態に係るアクチュエータのサーボ制御器の特性制御、並びにアクチュエータ自体の特性制御のメカニズムを各関節部位に適用した2足歩行の脚式移動ロボットについて説明する。
上述したように、アクチュエータのサーボ制御器において、比例ゲインと位相補償要素を調整することにより、ロボットの関節各部位において必要な位置決め精度、機械的受動性(コンプライアンス)、動作速度を任意に設定することができる。また、アクチュエータ・モータのコイルへの非通電時においてコイルを間歇的に短絡状態又はオープン状態に切り替えることによって、モータの粘性抵抗を調整し振動などの外乱に対するロバスト性を変更することができる。
さらに、これらアクチュエータのサーボ制御器におけるゲイン及び位相補償制御とアクチュエータ・モータの粘性抵抗の制御とを組み合わせることによって、位置決め精度が重要な部分に適用することができるアクチュエータの周波数特性、あるいは高速応答性とコンプライアンスが重要となる部分に適用することができるアクチュエータの周波数特性を得ることができる。
位置決め精度が重要な部分に適用することができるアクチュエータの周波数特性は、図12に示した通りである。この場合、サーボ制御器の比例ゲインを大きくとって、系全体のゲインを大きくし、低周波数帯域までゲインを取れるようにする。また、周波数特性を同図に示すように高域で位相進み量が小さくなるようにし、高速応答性にはあまり寄与しないが安定性を保証できるようにする。また、モータの粘性抵抗を大きくし、振動などの外乱にもロバストになるようにする。要言すれば、図示の特性は、位置決め精度を優先して振動などの外乱にもロバストな特性である。
また、高速応答性とコンプライアンスが重要となる部分に適用することができるアクチュエータの周波数特性は、図13に示した通りである。この場合、比例ゲインを小さくして、系全体のゲインを小さくすることで、低周波数帯域のゲインを小さくし、機械的受動性(コンプライアンス)を得易くする。また、周波数特性を同図に示すように中高域で位相進み量が大きくなるようにし、高速応答性を得るようにする。また、モータの粘性抵抗を小さくし、機械的受動性(コンプライアンス)を得易いようにする。要言すれば、図示の特性は、機械的受動性(コンプライアンス)と高速応答性を優先した特性である。
図1〜3に示した脚式移動ロボットの関節自由度は、上述したサーボ制御器を備えたアクチュエータによって実現される。各関節部位において使用されるアクチュエータのゲイン・位相補償特性の基本的な制御例について、以下に詳解する。
(1)首部分に適用されるアクチュエータの特性
首部分では、位置決め精度を優先させるため、比例ゲインを高く設定する。また、動作速度を保持しつつ、比例ゲインを上げた分の安定性を損なわないように、位相進み量を少なく設定する。また、胴体より下の部分の動作時に発生する振動外乱に対してロバスト性を得るため、関節の粘性抵抗を大きく設定する。
(2)肩・肘部分に適用されるアクチュエータの特性
歩行やダンスなどの連続動作を行なうときは、位置決め特性よりも機械的受動性が高くなるような特性をアクチュエータに与える。動作に受動性を持たせるため、関節の粘性抵抗を小さくする。また、動作に受動性を持たせるとともに、エネルギ消費量を減らすため、比例ゲインを低く設定する。また、動作速度を大きくするため、中高域で位相進み量を大きく設定する。動作によっては振り子のように往復運動を行なうだけのときもある。そのときは、関節の粘性抵抗と比例ゲインを最小にして機械的受動性(コンプライアンス)を得るようにし、力学的なエネルギを動作のために用い易くする。
一方、物を押したり引っ張ったりするなどの力を使う動作を行なうときには、負荷トルク値により、位置決め精度優先の特性と、機械的受動性の特性を動的に入れ替えるように制御する。負荷トルク値に対してさらに力を発生させたいときは比例ゲインを高く、関節の粘性抵抗を大きくする。
また、負荷トルク値に対して定負荷となるように倣わせる動作をする場合には、上位からの位置指令値による調整に加え、アクチュエータ内部トルク・センサで検知した負荷トルクに応じて比例ゲインを低く、関節の粘性抵抗を小さくして、機械的受動性(コンプライアンス)を得るようにする。
(3)体幹部分に適用されるアクチュエータの特性
自分自身の動作による振動外乱にロバスト性を得るため、関節の粘性抵抗を大きくする。あるいは、位置決め精度を優先させるため、比例ゲインを高く設定する。あるいは、動作速度を保持しつつ比例ゲインを上げた分の安定性を損なわないように、位相進み量を少なく設定する。
(4)股関節部分に適用されるアクチュエータの特性
自分自身の動作による振動外乱にロバスト性を得るため、関節の粘性抵抗を大きくする。あるいは、位置決め精度を優先させるため、比例ゲインを高く設定する。あるいは、動作速度を保持しつつ比例ゲインを上げた分の安定性を損なわないように、位相進み量を少なく設定する。
(5)膝部分に適用されるアクチュエータの特性
遊脚時及び着床瞬間時においては、位置決め精度よりも機械的受動性が高くなるような特性に制御する。動作に受動性を持たせるため、関節の粘性抵抗を小さくする。また、動作に受動性を持たせるとともにエネルギ消費量を減らすため、比例ゲインを低く設定する。また、動作速度を大きくするため、中高域で位相進み量を大きく設定する。
一方、支持脚時においては、機械的受動性よりも位置決め精度が高くなるような特性に制御する。自分自身の動作による振動外乱にロバスト性を得るため、関節の粘性抵抗を大きくする。あるいは、位置決め精度を優先させるため、比例ゲインを高く設定する。あるいは、動作速度を保持しつつ比例ゲインを上げた分の安定性を損なわないように、位相進み量を少なく設定する。
(6)足首部分に適用されるアクチュエータの特性
遊脚時及び着床瞬間時においては、位置決め精度よりも機械的受動性が高くなるような特性に制御する。足首部分着床による衝撃を緩和するため、関節粘性を小さく設定し、機械的受動性(コンプライアンス)を得るようにする。また、足首部分着床による衝撃を緩和するため、比例ゲインを低く設定し、機械的受動性(コンプライアンス)を得るようにする。また、動作速度を大きくとるため、中高域で位相進み量を大きく設定する。
一方、支持脚時において、足首部分の発生トルクを大きくとり、且つ自分自身の動作による振動外乱にロバスト性を得るため、関節の粘性抵抗を大きくとる。また、足首部分の位置決め精度を向上させるため、比例ゲインを高く設定する。また、動作速度を保持しつつ、比例ゲインを上げた分の安定性を損なわないように位相進み量を少なく設定する。
ここで、ロボットの動作段階に応じて関節アクチュエータの特性を切り替えることによる効果を、歩行動作を例にとって説明する。
図18には、脚式移動ロボットが歩行動作を行なう様子を段階毎に示している。同図に示す例では、歩行動作はA〜Gの7段階に区分され、歩行動作を継続するときは、この順番で歩容を繰り返し実行するようになっている。
(1)肩〜腕の部分
A〜Gで示すロボットの歩行動作中では、ロボットの基準座標のヨー軸回りの回転モーメントを補償するために、腕を振る動作を行なう。この腕を振る動作は、肩ピッチ軸を中心にした周期的な振り子運動になる。
このような場合、動作初期に与えたトルクによって腕を振り上げるので、位置エネルギを得る。この位置エネルギは、腕を振り下ろすときには、エネルギ保存則により運動エネルギとなる。つまり、動作初期に与えたトルクで発生する位置エネルギは、振り子が降りる原理に従って、運動エネルギに変換されるというエネルギ変換が繰り返される。
このような性質を積極的に利用すると、ロボットが位置制御に追従するために発生するトルク(すなわち、エネルギ消費)に力学的エネルギを加えることができるので、ロボット全体のエネルギ消費を節約することができる。
具体的には、腕部分の運動エネルギが最大になるときに腕の主要部分(例えば、肩ピッチ軸、肘ピッチ軸など)が瞬間的にトルクを発生する。このときに関節の粘性抵抗が大きいと、動作中の損失が大きくなるのでよろしくない。また、粘性抵抗が小さくても、動作中の損失はゼロにはならないので、その損失分を補充する意味でも、瞬間的にトルクを発生させる必要がある。
これらを1サーボ制御で実現するには、開ループ特性で低周波数帯域のゲインが低く、且つ、中高域で位相補償量を大きくしてゲインが高くなっている系が適している。これに加えて、粘性抵抗の制御により、モータの粘性係数を実現可能な最小値に設定することで、動作中のエネルギ損失を少なくすることが好ましい。
図13に示すアクチュエータの周波数特性は、このようなサーボ制御及びモータの粘性抵抗制御を実現するものである。したがって、歩行動作中の腕の動作に関わる関節部位のアクチュエータは、同図に示す特性に設定すればよい。
(2)脚の部分
A〜Gで示すロボットの歩行動作中では、ZMP規範の姿勢制御に則って脚の歩容を生成する。この脚の動作は、両脚支持期と、片足が支持脚で他の片足が遊脚となる片足支持期の繰り返しとなる。
支持脚又は遊脚に関わらず、ロール軸方向はZMP軌道に追従するため、一サーボ制御系の高い位置決め精度が要求される。これはつまり、開ループ特性において、全周波数帯域において高ゲインであることが求められる。
支持脚の各関節のピッチ軸は、ZMP軌道に追従するため、高い位置決め精度が要求される。同時に、振動などの外乱に対してロバストであることが求められる。したがって、これら2つの要求を満たすためには、支持脚の各関節のピッチ軸は、図12に示す、サーボ制御器の比例ゲインを大きくとって、系全体のゲインを大きくし、低周波数帯域までゲインを取れるような特性が適している。また、モータの粘性抵抗を大きく設定することが適している。
一方、遊脚時の膝ピッチ軸や足首ピッチ軸は、腕部と同様に、振り上げと振り下ろしの動作を交互に行なう。したがって、関節の粘性抵抗が小さいことが好ましい。同時に、開ループ特性において、低周波数帯域で低ゲイン、中高域で位相補償量を大きくして高ゲインとなる、図13に示す特性が適している。
また、着床瞬間の足首ピッチ軸関節は、高い周波数の衝撃外乱が加わる。このときには、高周波数帯域での応答性が確保されていることが望ましい。また、このときには、低周波数帯域でのゲインが低いことが望ましい。同時に、関節粘性抵抗が小さいことが望ましい。したがって、着床瞬間の足首ピッチ軸関節は、図13に示す特性が適している。
D.脚式移動ロボットの姿勢安定制御
次いで、本実施形態に係る脚式移動ロボット100における、脚式作業時における姿勢安定化処理、すなわち足部、腰、体幹、下肢運動などからなる全身協調運動実行時における姿勢の安定化処理の手順について説明する。
姿勢安定制御には、ZMPを姿勢安定制御に用いる。本実施形態では、ロボットの機体上の制御目標点として質量操作量が最大となる部位、例えば腰部若しくは基体をローカル座標原点に設定する。そして、この制御目標点に加速度センサなどの計測手段を配置して、その位置における姿勢や加速度を直接計測して、ZMPに基づく姿勢安定制御を行なう。さらに路面との接触部位である足部に加速度センサを配備することにより、制御に用いるローカル座標とその座標を直接的に計測して、ZMP位置に最も近い足部で直接ZMP方程式を組み立てる。
D−1.ZMP方程式の導入
本実施形態に係る脚式移動ロボット100は、無限すなわち連続的な質点の集合体である。但し、ここでは有限数で離散的な質点からなる近似モデルに置き換えることによって、安定化処理のための計算量を削減するようにしている。より具体的には物理的には図3に示す多関節自由度構成を具備する脚式移動ロボット100を、図19に示すように多質点近似モデルに置き換えて取り扱う。図示の近似モデルは、線形且つ非干渉の多質点近似モデルである。
図19において、O−XYZ座標系は絶対座標系におけるロール、ピッチ、ヨー各軸を表し、また、O'−X'Y'Z'座標系はロボット100とともに動く運動座標系におけるロール、ピッチ、ヨー各軸を表している。但し、図中におけるパラメータの意味は以下の通りである。また、ダッシュ(´)付きの記号は運動座標系を記述するものと理解されたい。
図19に示す多質点モデルでは、iはi番目に与えられた質点を表す添え字であり、miはi番目の質点の質量、ri'はi番目の質点の位置ベクトル(但し運動座標系)を表すものとする。本実施形態に係る脚式移動ロボット100の機体重心は腰部付近に存在する。すなわち、腰部は、質量操作量が最大となる質点であり、図19では、その質量はmh、その位置ベクトル(但し運動座標系)はr'h(r'hx,r'hy,r'hz)とする。また、機体のZMPの位置ベクトル(但し運動座標系)をr'zmp(r'zmpx,r'zmpy,r'zmpz)とする。なお、腰部情報における各回転角(θhx,θhy,θhz)は、脚式移動ロボット100における腰部の姿勢すなわちロール、ピッチ、ヨー軸の回転を規定する。
世界座標系O−XYZは絶対座標系であり、不変である。本実施形態に係る脚式移動ロボット100は、腰部と両脚の足部にそれぞれ加速度センサ93、94、96が配置されており、これらセンサ出力により腰部並びに立脚それぞれと世界座標系の相対位置ベクトルrqが直接検出される。これに対し、運動座標系すなわち機体のローカル座標系はO−X’Y’Z’は、ロボットともに動く。
機体のZMP方程式は、制御目標点において印加される各モーメントの釣合い関係を記述したものである。図19に示したように、機体を多数の質点miで表わし、これらを制御目標点とした場合、すべての制御目標点miにおいて印加されるモーメントの総和を求める式がZMP方程式である。
世界座標系(O−XYZ)で記述された機体のZMP方程式、並びに機体のローカル座標系(O−X’Y’Z’)はそれぞれ以下の通りとなる。
上式は、各質点miにおいて印加された加速度成分により生成されるZMP回り(半径ri−rzmp)のモーメントの総和と、各質点miに印加された外力モーメントMiの総和と、外力Fkにより生成されるZMP回り(k番目の外力Fkの作用点をskとする)のモーメントの総和が釣り合うということを記述している。
このZMP釣合い方程式は、総モーメント補償量すなわちモーメント・エラー成分Tを含んでいる。このモーメント・エラーをゼロ又は所定の許容範囲内に抑えることによって、機体の姿勢安定性が維持される。言い換えれば、モーメント・エラーをゼロ又は許容値以下となるように機体運動(足部運動や上半身の各部位の軌道)を修正することが、ZMPを安定度判別規範とした姿勢安定制御の本質である。
本実施形態では、腰部と左右の足部にそれぞれが配設されているので、これらの制御目標点における加速度計測結果を用いて直接的に且つ高精度に上記のZMP釣合い方程式を導出することができる。この結果、高速でより厳密な姿勢安定制御を実現することができる。
本実施形態では、路面との接触部位である足部足底に加速度センサ加速度センサ96、93及び94を設けていることから、世界座標系に対する実ロボットのローカル座標系を設定し、その原点としての足部足底を求め、ZMP釣合い方程式を直接的に導き出すことができる。さらに、腰部を始めとして質量操作量が大きな制御目標点にも加速度センサを配置することで、これら制御目標点毎のZMP回りのモーメント量を、加速度センサ出力値を用いて直接的に導き出すことができる。
ここで、制御対象としての実ロボットは移動体装置であることから、各制御目標点における世界座標上の位置ベクトルを求めることは難しい。その代案として、ローカル座標上における制御目標点の位置ベクトルは、逆キネマティクス演算など比較的容易な計算方法により求まる。そこで、機体のローカル座標系(O−X’Y’Z’)で記述された後者のZMP釣合い方程式を用いて実際の姿勢安定化処理を行なうようにすればよい。
ZMP軌道を正確に世界座標系で計測することがロボットに搭載された状態検出器では困難であることから、一般には、世界座標系に固定された外部計測器が必要となり、ロボット単体での行動(歩行など)が不可能となる。これに対し、接地部に加重センサを配置してZMP軌道を計測することにより、ローカル座標でZMP軌道を正確且つ直接的に得ることができる。且つ、ローカル座標原点付近に加速度センサを配置することにより、高速運動において支配的となる情報を直接的に計測することができる。このような理由により、本実施形態では、ローカル座標系でのZMP釣合い方程式を用いている。
D−2.全身協調型の姿勢安定制御
図20には、脚式移動ロボット100において、ZMPを安定度判別規範に用いて安定歩行可能な機体運動を生成するための処理手順をフローチャートの形式で示している。但し、以下の説明では、図19に示すような線形・非干渉多質点近似モデルを用いて脚式移動ロボット100の各関節位置や動作を記述するものとする。
まず、足部などの接地部位における運動の設定を行なう(ステップS1)。足部運動は、2以上の機体のポーズを時系列的に連結されてなるモーション・データである。モーション・データは、例えば、モーション編集装置などを利用してあらかじめ作成・編集されたデータであり、足部の各関節角の変位を表わした関節空間情報と、関節位置を表わしたデカルト空間情報で構成される。
次いで、設定された足部などの接地部位における運動を基にZMP安定領域を算出する(ステップS2)。あるいは、部位グループ毎に設定された優先順位付きの希望軌道(ステップS14:後述)を基に、ZMP安定領域を算出する。なお、床運動や逆立ち運動など、ロボットが路面と接地する点が足底でない場合には、足底以外の接地点と路面とが形成する支持多角形に基づいてZMP安定領域を算出する。
ZMPは、機体に印加されるモーメントがゼロとなる点であり(前述)、基本的には足底接地点と路面の形成する支持多角形の内側に存在する。ZMP安定領域は、この支持多角形のさらに内側に設定された領域であり、該領域にZMPを収容させることによって機体を高度に安定した状態にすることができる。
そして、足部運動とZMP安定領域を基に、足部運動中におけるZMP軌道を設定する(ステップS3)。但し、床運動や逆立ち運動など、ロボットが路面と接地する点が足底でない場合には、足底以外の接地点と路面とが形成する支持多角形に基づいてZMP軌道を設定する。
また、機体の各部位については、腰部、体幹部、上肢、頭部などのようにグループ設定する(ステップS11)。
図21には、機体の部位グループを設定した例を示している。同図に示す例では、腰部、体幹部、右腕部、頭部、左腕部、左脚部、右脚部の順に1〜7部の各部位グループが設定されている。各部位グループは、複数の質点で構成されている。質点の設定方法は、設計者のマニュアル入力であっても、所定の規則に従った自動生成のいずれであっても構わない(例えば、関節アクチュエータなど、質量操作量の大きな箇所が質点として設定される)。i番目の部位の質点の数をniとすると、i番目の部位グループ(i部)の総質量miは下式の通りとなる。
そして、各部位グループ毎に希望軌道を設定する(ステップS12)。機体の各部位グループについての希望軌道の設定は、例えばモーション編集装置を利用してオフラインで行なわれる。
次いで、各部位のグループ設定の調整(再グルーピング)を行ない(ステップS13)、さらにこれらグループに対して優先順位を与える(ステップS14)。ここで言う優先順位とは、機体の姿勢安定制御のため処理演算に投入する順位のことであり、例えば質量操作量若しくはモーメント操作量に応じて割り振られる。この結果、機体の各部位についての優先順位付き希望軌道群が出来上がる。なお、このときに、各部位の接続条件(ローカル座標接続、特定部位の世界座標位置固定接続、特定部位の世界座標姿勢接続など)も設定する。また、優先順位は、時間tにおいて変化させるようにしてもよい。
また、各部位についての優先順位は、質量操作量若しくはモーメント操作量以外に、あらかじめ立案されている行動計画を参照して決定される。例えば、歩行を始めとする脚式動作を行なっているときには接地している足部の軌道を修正することはできないので、接地している足部により低い優先順位を与える。また、物をつかむ手は軌道を修正できないので、より低い優先順位を与える。また、狭い通路を横向きで歩いている場合には、腰の軌道を修正すると壁に衝突する可能性が高いので、より低い優先順位を与える。
また、機体の各部位グループ毎に、モーメント補償に利用できる質量を算出しておく(ステップS15)。図21に示した例では、右脚が支持脚となり右足部にZMP位置PZMPが存在することから、各部位グループにおいてモーメント補償に利用できる質量Miは以下の通りとなる。
1部すなわち腰部は、腰部自体の他、支持している体幹部、右腕部、頭部、左腕部をモーメント補償に利用することができる。また、2部すなわち体幹部は、体幹部自体の他、支持している右腕部、頭部、左腕部をモーメント補償に利用することができる。また、3〜6部すなわち右腕部、頭部、左腕部、並びに遊脚としての左脚部は、他に支持している部位グループがないことから、それぞれ自部位のみがモーメント補償に利用することができる質量となる。また、立脚としての7部すなわち右脚部は、すべての部位グループを支持していることから、機体のすべての部位の質量の合計M7をモーメント補償に利用することができる。この場合の質量M7の重心位置は、足部ではなく機体の重心位置に相当する(図22を参照のこと)。
そして、足部などの接地部位の運動と、ZMP軌道、並びに機体の各部位グループ毎の希望軌道群を基に、ステップS14により設定された優先順位に従って、各部位グループの運動パターンを姿勢安定化処理に投入する。
この姿勢安定化処理では、まず、処理変数iに初期値1を代入する(ステップS20)。そして、すべての部位グループに目標軌道を設定した場合における、目標ZMP上でのモーメント量すなわち総モーメント補償量Ωを算出する(ステップS21)。総モーメント補償量Ωには、すべての部位グループの目標ZMP上でのモーメント量の総和に、上式で同定された未知外力モーメントと未知外力が既知項として加えられる。
さらに目標軌道が算出されていない部位については、希望軌道を用いる。
次いで、ステップS15において算出された当該部位iのモーメント補償に利用できる質量Miを用いて、その絶対モーメント補償量係数αiを設定し(ステップS22)、当該部位グループiにおけるモーメント補償量Ωiを算出する(ステップS23)。
次いで、算出されたi番目の部位のモーメント補償量Ωiを用いて、i部に関するZMP方程式(E1)を導出する(ステップS24)。
ここで、上記のZMP方程式は、未知変数が非常に多いため解析的にも数値計算的にも解を求めることは困難である。そこで、i番目の部位のモーメント補償に利用できる質量の希望重心軌道rMiを既知変数に、i番目の部位のモーメント補償に利用できる質量の希望重心軌道に対する変更量ΔrMiを未知変数とする以下の近似ZMP方程式(E2)を導出することにした。但し、rMiは、i番目の部位グループにおけるモーメント補償に利用できる質量Miの重心の位置ベクトルである。
そして、まず、この近似ZMP方程式を解くことで、i番目の部位のモーメント補償に利用できる質量の希望重心軌道に対する変更量ΔrMiを算出し、i番目の部位のモーメント補償に利用できる質量の目標重心軌道を下式により算出する。
なお、回転関節により各リンクが連結されている脚式移動ロボットの場合、上式(E2)は一般にZ方向の運動を共有するため、非線形で干渉のある2階微分方程式となり、解析的に求めることは困難である。そこで、以下に示すようにZ方向の運動を共有しないものとし、式(E2)の線形・非干渉化を行なう。
そして、i番目の部位のモーメント補償に利用できる質量の目標重心軌道の近似解を算出し、この近似解から算出できるi番目の部位の各質点riの変更量Δriを厳密ZMP方程式としての式(E1)に代入し、モーメント誤差を求め、この誤差の符号を反転したものを線形・非干渉化を行なった式(E2)の右辺に蓄積し、再び近似解を求めるという操作を、誤差が所定の許容値以下になるまで繰り返すことで当該部位のモーメント補償運動を算出するこができる(ステップS25)。このようにして、優先順位が先頭からi番目までの部位についての目標軌道を得ることができる。
なお、i番目の部位のモーメント補償に利用できる質量の目標重心軌道の近似解からi番目の部位の各質点の軌道を算出するには、i番目の任意の部位に操作点を配置し、その並進位置(X,Y,Z)若しくは回転角度(θx,θy,θz)を未知変数とする重心ベクトルC(X,Y,Z,θx,θy,θz)を導出し、この重心ベクトルC(X,Y,Z,θx,θy,θz)を未知変数として左辺に、質量Miの重心の位置ベクトルrMiを既知変数として右辺に配置した方程式C(X,Y,Z,θx,θy,θz)=riMiを導出し、この方程式の解を数値探索法などを用いて算出したり、解析的に求めたりすることで、i番目の部位の各質点の軌道を決定することができる。
このような処理をすべての部位グループについて行なうことにより、安定運動(例えば歩行)が可能な全身運動パターンが生成される。
腰部と左右の足部にそれぞれ加速度センサ96、93及び94が配設されているので、これらの制御目標点における加速度計測結果を用いて直接的に且つ高精度に上記のZMP釣合い方程式を導出することができる(前述)。この結果、図20に示すような処理手順に従ってZMP安定度判別規範に基づく姿勢安定制御を高速でより厳密に実行することができる。
E.脚式移動ロボットの転倒オペレーション
前項Dで説明したように、本実施形態に係る脚式移動ロボット100は、基本的には、ZMP安定度判別規範に基づいて、歩行時やその他の立脚作業時における姿勢安定制御を行ない、機体の転倒という事態の発生を最小限に抑えるようにしている。
しかしながら、万一転倒を避けられなくなった場合には、機体へのダメージを極力防止するような動作パターンからなる転倒動作を行なうことにする。例えば、前述したZMP釣合い方程式において、過大な外力F又は外力モーメントMが機体に印加された場合、機体動作のみによってモーメント・エラー成分Tをキャンセルことができなくなり、姿勢の安定性を維持できなくなる。
図23には、本実施形態に係る脚式移動ロボット100における脚式作業中の機体の動作制御の概略的な処理手順をフローチャートの形式で示している。
機体動作中は、左右の足部に配設した接地確認(床反力)センサ91及び92、加速度センサ93及び94、腰部に配設した加速度センサ96のセンサ出力を用いて、ZMP釣合い方程式(前述)を立てて、足部の接地位置を常に計算する(ステップS31)。
例えば、機体に外力が印加されたとき、次の足部の接地位置を計画することができるかどうか、すなわち足部の行動計画によって外力によるモーメント・エラーを解消することができるかどうかを判別する(ステップS32)。足部の設置位置を計画可能か否かは、脚部の各関節の可動角、各関節アクチュエータのトルク、関節力、角速度、角加速度などを考慮して判断する。勿論、外力が加わったときに、次の一歩だけでなく、数歩にまたがる脚式動作によりモーメント・エラーを解消するようにしてもよい。
このとき、足部の計画が可能であれば、歩行やその他の脚式動作を継続する(ステップS33)。
他方、過大な外力又は外力モーメントが機体に印加されたために、足部の計画が不可能になった場合には、脚式移動ロボット100は転倒動作を開始する(ステップS34)。
図1〜図2に示すような直立歩行型の脚式ロボットの場合、重心位置が高いことから、転倒時に不用意に床面に落下すると、ロボット自体、あるいは転倒により衝突する相手側にも致命的な損傷を与えてしまう危険がある。そこで、本実施形態では、転倒前に計画されている機体の軌道からZMP支持多角形が最小となるような姿勢に組み替えて、所定の転倒動作を実行する。基本的には、以下に示す2つの方針を基に転倒動作を探索していく。
(1)機体の支持多角形の面積Sの時間t当たりの変化量ΔS/Δtを最小にする。
(2)床面落下時における支持多角形が最大となるようにする。
このような転倒方法をとることにより、落下時に床面から受ける衝撃を全身に分散させることにより、ダメージを最小限に抑えることができる。
図24には、本実施形態に係る脚式移動ロボット100が足部の計画不能により転倒動作を行なうための処理手順をフローチャートの形式で示している。転倒動作は、上述した基本方針に従って、高さ方向に連結された肩関節ピッチ軸4、体幹ピッチ軸9、股関節ピッチ軸12、膝関節ピッチ軸14を同期協調的に駆動させることによって実現される。このような処理手順は、実際には主制御部81において所定の機体動作制御プログラムを実行して、各部を駆動制御することによって実現される。
まず、機体の着床部位で構成される支持多角形の面積Sの時間t当たりの変化量ΔS/Δtを最小にするリンクを探索する(ステップS41)。
次いで、ステップS41により選択されたリンクで変化量ΔS/Δtを最小にする該リンクの目標着床点を探索する(ステップS42)。
次いで、先行ステップにより選択されたリンクを該目標着床点に着床することが、機体ハードウェアの制約上(各関節の可動角、各関節アクチュエータのトルク、関節力、角速度、角加速度など)、実行可能かどうかを判別する(ステップS43)。
先行ステップにより選択されたリンクを該目標着床点に着床することが不可能であると判定された場合には、時間の変化量Δtを所定地だけ増分してから(ステップS44)、ステップS41に戻って、リンクの再選択、並びに該リンクの目標着床点の再設定を行なう。
一方、先行ステップにより選択されたリンクを該目標着床点に着床することが可能である場合には、選択されたリンクを該目標着床点に着床する(ステップS45)。
次いで、機体の位置エネルギが最小かどうか、すなわち転倒動作が完了したかどうかを判別する(ステップS46)。
機体の位置エネルギがまだ最小ではない場合には、時間の変化量Δtをさらに所定地だけ増分して(ステップS47)、支持多角形を拡大するように次の目標着床点を設定する(ステップS48)。
次いで、選択されたリンクを該目標着床点に着床することが、機体ハードウェアの制約上(各関節の可動角、各関節アクチュエータのトルク、関節力、角速度、角加速度など)、実行可能かどうかを判別する(ステップS49)。
先行ステップにより選択されたリンクを該目標着床点に着床することが不可能であると判定された場合には、ステップS41に戻って、リンクの再選択、並びに該リンクの目標着床点の再設定を行なう。
一方、先行ステップにより選択されたリンクを該目標着床点に着床することが可能である場合には、ステップS45に進んで、選択されたリンクを該目標着床点に着床する。
そして、機体の位置エネルギが最小になると(ステップS46)、機体の床面への着床が完了したことになるので、本処理ルーチン全体を終了する。
E−1.仰向け姿勢への転倒動作
図25には、脚式移動ロボット100を肩関節ピッチ軸4、体幹ピッチ軸9、股関節ピッチ軸12、膝関節ピッチ軸14などの高さ方向に連結された略平行な複数の関節軸からなるリンク構造体としてモデル化して、各関節ピッチ軸を同期強調的に駆動させて仰向け姿勢に向かって転倒していく動作を示している。
ロボットは、リンク構造体のリンク端である足底のみで立位しているとする(図25(1))。
このとき、外力又は外力モーメントの印加により、ZMP釣合い方程式のモーメント・エラー項Tをキャンセルできなくなり、足底のみで形成するZMP安定領域の外にZMPが逸脱したことに応答して、ZMPを支持多角形に維持したまま転倒動作を開始する。
転倒動作では、まず、機体の着床部位で構成される支持多角形の面積Sの時間t当たりの変化量ΔS/Δtを最小にするリンクを探索するとともに、手先を含むリンクで変化量ΔS/Δtを最小にするような手先の目標着床点を探索する。そして、選択されたリンクを目標着床点に着床することが機体ハードウェアの制約上(各関節の可動角、各関節アクチュエータのトルク、関節力、角速度、角加速度など)、実行可能かどうかを判別する。
機体ハードウェア上実行可能である場合には、既に着床している足底リンクに加え、他のリンクが着床する。そして、これら着床リンクで形成される最小支持多角形内にZMPを移動する(図25(2))。
次いで、機体ハードウェアが許容する限り、着床点を移動して、支持多角形を拡大していく(図25(3))。
そして、各関節の可動角、各関節アクチュエータのトルク、関節力、角速度、角加速度など機体ハードウェアの制約から、もはや着床点を移動することができなくなると、今度は、着床中のリンクに挟まれている離床リンクを着床することができるかどうかを判別する。
機体ハードウェア上、着床リンク間の離床リンクを着床することが可能である場合には、これらを着床して、着床リンク数を増やす(図25(4))。
さらに、機体ハードウェアが許容する限り、着床点を移動して、支持多角形を拡大していく(図25(5))。
そして最後に、高さ方向に連結された略平行な複数の関節軸からなるリンク構造体の一端側から1以上のリンクと、他端がわから2以上のリンクを離床させて、且つ、それらの中間に位置するリンクを1以上着床させ、さらに足部を着床させた状態で、ZMPを支持多角形内に維持しながら、支持多角形が最大となる姿勢を形成する。この姿勢において、機体の位置エネルギが最小であれば、転倒動作は完了である。
図26〜図31には、実機が立位姿勢から仰向け姿勢に転倒していく様子を示している。各図に示す例では、機体の前方から外力を受けて後ろ向きに転倒動作を行なう様子を示しているが、A〜Fの6段階に分けて動作状況を捉えることができる。
脚式移動ロボットの機体は、略平行な関節自由度を持つ複数の関節軸を長さ方向に連結した多リンク構造体で構成されるが、仰向け姿勢への転倒動作の途上では、この多リンク構造体の着床部位と床面がなすリンク状態が開リンク状態と閉リンク状態との間で切り替わる。図32には、立ち姿勢時において、両脚支持により両脚と床面とで閉リンク系を構成している様子を示している。また、図33には、立ち姿勢時において、単脚支持により両脚と床面で開リンクを構成している様子を示している。
本実施形態では、転倒の段階毎に、リンク状態の切り替わりに応じて、各関節を駆動するためのアクチュエータを、硬い関節特性、柔らかい関節特性、その中間の関節特性に適宜切り替えることにより、適応的な転倒動作を実現する。ここで、硬い関節特性は、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定することと定義する。
また、中間の関節特性は、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定することと定義する。また、柔らかい関節特性は、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定することと定義する。
(A)転倒前の両脚支持の状態
両脚支持の状態は、姿勢制御されている状態であり、下肢と床面で閉リンク系を構成している(図26を参照のこと)。
このとき、左右両脚部のすべての関節部位のアクチュエータを、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、支持脚は高速な応答性を持ちつつ、硬い特性時以上且つ柔らかい特性時以下のコンプライアンスを得ることで、柔らかい特性時以上且つ硬い特性時以下の位置精度を持ち、閉リンク状態の安定動作に寄与する。
また、首ロール・ピッチ・ヨーや他の関節部位は、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。そして、転倒動作を制御する際の規範となるΔS/Δtの量を制御するための主成分となる関節の位置決め精度が確保され、動作の安定性が増す。
(B)転倒動作の開始(閉リンク状態)
姿勢センサの出力に基づいて、機体が転倒し始めたことを検知することができる。転倒の初期では、まだ下肢と床面で閉リンク系を構成している(図27を参照のこと)。転倒に至る外力・衝撃を受け、衝撃を最小限にするための転倒動作を開始する。
このとき、左右の腿ロール及びピッチなど安定領域制御に関わる関節部位のアクチュエータを、中間の関節特性のまま、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、支持脚は高速な応答性を持ちつつ、硬い特性時以上且つ柔らかい特性時以下のコンプライアンスを得ることで、柔らかい特性時以上且つ硬い特性時以下の位置精度を持ち、閉リンク状態の安定動作に寄与する。
一方、左右の足首ロール軸、足首ピッチ軸、膝ピッチ軸など位置エネルギ制御に関わる関節部位では、高速応答性とコンプライアンスが重要となる。そこで、これらの関節部位のアクチュエータを、柔らかい関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定する。
また、首ロール・ピッチ・ヨーや他の関節部位は、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。この結果、転倒動作を制御する際の規範となるΔS/Δtの量を制御するための主成分となる関節の位置決め精度が確保され、動作の安定性が増す。
(C)転倒動作の進行(開リンク状態)
転倒動作が進行すると、支持脚が離床し、機体全体で開リンクを構成する(図28を参照のこと)。例えば、足底の力センサ(又は接触センサなど)の出力により、足底が浮いて開リンクとなったことを検知することができる。
この場合、左右両脚のすべての関節部位が位置エネルギ制御に関わるので、高速応答性とコンプライアンスが重要となる。そこで、脚のすべての関節部位のアクチュエータを、柔らかい関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定する。
また、首ロール・ピッチ・ヨーや他の関節部位は、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。この結果、転倒動作を制御する際の規範となるΔS/Δtの量を制御するための主成分となる関節の位置決め精度が確保され、動作の安定性が増す。
(D)着床瞬間
転倒の結果、機体が着床し、機体全体で閉リンク系を構成する(図29を参照のこと)。例えば、姿勢センサや加速度センサの出力を用いて、着床の衝撃を検知することができる。このとき、床面から受ける外力・衝撃を最小限にするための動作を開始する。
この場合、左右両脚のすべての関節部位が位置エネルギ制御に関わるので、コンプライアンスが重要となる。そこで、脚のすべての関節部位のアクチュエータを、柔らかい関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定する。これによって、柔らかい系になるため、機体全体に加わる衝撃を緩和することができる。
また、首ロール・ピッチ・ヨーの各関節部位は、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになり、着床の瞬間に頭部を床面から浮かせる動作を生成し、制御部など重要な部品を搭載した頭部を床面との衝突によるダメージから守ることができる。
また、他の関節部位は、柔らかい関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定する。これによって、柔らかい系になるため、機体全体に加わる衝撃を緩和することができる。
(E)全体着床
機体の着床動作が進行すると、機体全体が着床し、機体全体で閉リンク系を構成する(図30を参照のこと)。例えば、姿勢センサを用いて衝撃による振動が終ったことを検知することができる。
この場合、左右両脚のすべての関節部位が位置エネルギ制御に関わるので、コンプライアンスが重要となる。そこで、脚のすべての関節部位のアクチュエータを、柔らかい関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定する。これによって、柔らかい系になるため、機体全体に加わる衝撃を緩和することができる。
また、首ロール・ピッチ・ヨーや他の関節部位は、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
(F)転倒後の定常姿勢
機体全体で閉リンク系を構成している(図31を参照のこと)。このとき、姿勢センサを用いて衝撃による振動が終り、一定時間(例えば1秒)経過し、新たに衝撃などがないことを以って、当該状態を確認することができる。
このとき、左右両脚部のすべての関節部位のアクチュエータを、柔らかい関節特性から中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、支持脚は高速な応答性を持ちつつ、硬い特性時以上かつ柔らかい特性時以下のコンプライアンスを得ることで位置精度を増し、起き上がり動作など転倒からの復帰動作に備える。
また、首ロール・ピッチ・ヨーや他の関節部位は、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
E−2.うつ伏せ姿勢への転倒動作
図34には、脚式移動ロボット100が肩関節ピッチ軸4、体幹ピッチ軸9、股関節ピッチ軸12、膝関節ピッチ軸14などの高さ方向に連結された略平行な複数の関節軸からなるリンク構造体としてモデル化して、各関節ピッチ軸を同期強調的に駆動させてうつ伏せ姿勢に向かって転倒していく動作を示している。
ロボットは、リンク構造体のリンク端である足底のみで立位しているとする(図34(1))。
このとき、外力又は外力モーメントの印加により、ZMP釣合い方程式のモーメント・エラー項Tをキャンセルできなくなり、足底のみで形成するZMP安定領域の外にZMPが逸脱したことに応答して、ZMPを支持多角形に維持したまま転倒動作を開始する。
転倒動作では、まず、機体の着床部位で構成される支持多角形の面積Sの時間t当たりの変化量ΔS/Δtを最小にするリンクを探索するとともに、手先を含むリンクで変化量ΔS/Δtを最小にするような手先の目標着床点を探索する。そして、選択されたリンクを目標着床点に着床することが機体ハードウェアの制約上(各関節の可動角、各関節アクチュエータのトルク、関節力、角速度、角加速度など)、実行可能かどうかを判別する。
機体ハードウェア上実行可能である場合には、既に着床している足底リンクに加え、他のリンクが着床する。そして、これら着床リンクで形成される最小支持多角形内にZMPを移動する(図34(2))。
次いで、機体ハードウェアが許容する限り、着床点を移動して、支持多角形を拡大していく(図34(3))。
そして、各関節の可動角、各関節アクチュエータのトルク、関節力、角速度、角加速度など機体ハードウェアの制約から、もはや着床点を移動することができなくなると、今度は、着床中のリンクに挟まれている離床リンクを着床することができるかどうかを判別する。
機体ハードウェア上、着床リンク間の離床リンクを着床することが可能である場合には、これらを着床して、着床リンク数を増やす(図34(4))。
さらに、機体ハードウェアが許容する限り、着床点を移動して、支持多角形を拡大していく(図34(5))。
そして最後に、高さ方向に連結された略平行な複数の関節軸からなるリンク構造体の一端側から1以上のリンクと、他端側から2以上のリンクを離床させて、且つ、それらの中間に位置するリンクを1以上着床させ、さらに足部を着床させた状態で、ZMPを支持多角形内に維持しながら、支持多角形が最大となる姿勢を形成する。この姿勢において、機体の位置エネルギが最小であれば、転倒動作は完了である。
図35〜39には、実機が立位姿勢からうつ伏せ姿勢に転倒していく様子を示している。同図に示す例では、機体の後方から外力を受けて後ろ向きに転倒動作を行なう様子を示しているが、A〜Dの5段階に分けて動作状況を捉えることができる。
脚式移動ロボットの機体は、略平行な関節自由度を持つ複数の関節軸を長さ方向に連結した多リンク構造体で構成されるが。転倒動作の途上では、この多リンク構造体の着床部位と床面がなすリンク状態が開リンク状態と閉リンク状態との間で切り替わる(同上)。そして、転倒の段階毎に、リンク状態の切り替わりに応じて、各関節を駆動するためのアクチュエータを、硬い関節特性、柔らかい関節特性、その中間の関節特性に適宜切り替えることにより、適応的な転倒動作を実現する。
(A)転倒前の両脚支持の状態
両脚支持の状態は、姿勢制御されている状態であり、下肢と床面で閉リンク系を構成している(図35を参照のこと)。
このとき、左右両脚部のすべての関節部位のアクチュエータを、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、支持脚は高速な応答性を持ちつつ、硬い特性時以上且つ柔らかい特性時以下のコンプライアンスを得ることで、柔らかい特性時以上且つ硬い特性時以下の位置精度を持ち、閉リンク状態の安定動作に寄与する。
また、首ロール・ピッチ・ヨーや、左右の肘ピッチ、その他の関節部位は、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。この結果、転倒動作を制御する際の規範となるΔS/Δtの量を制御するための主成分となる関節の位置決め精度が確保され、動作の安定性が増す。
(B)転倒動作の開始(閉リンク状態)
姿勢センサの出力に基づいて、機体が転倒し始めたことを検知することができる。転倒の初期では、まだ下肢と床面で閉リンク系を構成している(図36を参照のこと)。転倒に至る外力・衝撃を受け、衝撃を最小限にするための転倒動作を開始する。
このとき、左右の腿ロール及びピッチなど安定領域制御に関わる関節部位のアクチュエータを、中間の関節特性のまま、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、支持脚は高速な応答性を持ちつつ、硬い特性時以上且つ柔らかい特性時以下のコンプライアンスを得ることで、柔らかい特性時以上且つ硬い特性時以下の位置精度を持ち、閉リンク状態の安定動作に寄与する。
一方、左右の足首ロール軸、足首ピッチ軸、膝ピッチ軸など位置エネルギ制御に関わる関節部位では、高速応答性とコンプライアンスが重要となる。そこで、これらの関節部位のアクチュエータを、柔らかい関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定する。
また、着床時に左右の腕を着いて導体に加わる衝撃を干渉するために、左右の肘ピッチの関節部位アクチュエータを柔らかい関節特性にしておき、着床時の衝撃吸収に備える。
また、首ロール・ピッチ・ヨーの関節部位のアクチュエータを、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。この結果、転倒動作を制御する際の規範となるΔS/Δtの量を制御するための主成分となる関節の位置決め精度が確保され、動作の安定性が増す。
また、その他の関節部位は、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、硬い関節特性のときよりも支持脚は位置精度を落とすが、高速な応答性とコンプライアンスを得て、転倒に備える。
(C)転倒動作の進行(開リンク状態)
転倒動作が進行すると、支持脚が離床し、機体全体で開リンクを構成する(図37を参照のこと)。例えば、足底の力センサ(又は接触センサなど)の出力により、足底が浮いて開リンクとなったことを検知することができる。
この場合、左右両脚のすべての関節部位が位置エネルギ制御に関わるので、高速応答性とコンプライアンスが重要となる。そこで、脚のすべての関節部位のアクチュエータを、柔らかい関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定する。
また、着床時に左右の腕を着いて導体に加わる衝撃を干渉するために、左右の肘ピッチの関節部位アクチュエータを柔らかい関節特性にしておき、着床時の衝撃吸収に備える。
また、首ロール・ピッチ・ヨーの関節部位のアクチュエータを、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。そして、転倒動作を制御する際の規範となるΔS/Δtの量を制御するための主成分となる関節の位置決め精度が確保され、動作の安定性が増す。
また、その他の関節部位は、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、硬い関節特性のときよりも支持脚は位置精度を落とすが、高速な応答性とコンプライアンスを得て、転倒に備える
(D)着床瞬間
転倒の結果、機体が着床し、機体全体で閉リンク系を構成する(図38を参照のこと)。例えば、姿勢センサや加速度センサの出力を用いて、着床の衝撃を検知することができる。このとき、床面から受ける外力・衝撃を最小限にするための動作を開始する。
この場合、左右両脚のすべての関節部位が位置エネルギ制御に関わるので、コンプライアンスが重要となる。そこで、脚のすべての関節部位のアクチュエータを、柔らかい関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定する。これによって、柔らかい系になるため、機体全体に加わる衝撃を緩和することができる。
また、着床時に左右の腕を着いて導体に加わる衝撃を干渉するために、左右の肘ピッチの関節部位アクチュエータを柔らかい関節特性にしておき、着床時の衝撃吸収を行なう。
また、首ロール・ピッチ・ヨーの各関節部位は、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになり、着床の瞬間に頭部を床面から浮かせる動作を生成し、制御部など重要な部品を搭載した頭部を床面との衝突によるダメージから守ることができる。
また、他の関節部位は、柔らかい関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定する。これによって、柔らかい系になるため、機体全体に加わる衝撃を緩和することができる。
(E)転倒後の定常姿勢
機体全体で閉リンク系を構成している(図39を参照のこと)。このとき、姿勢センサを用いて衝撃による振動が終り、一定時間(例は1秒)経過し、新たに衝撃などがないことを以って、当該状態を確認することができる。
このとき、左右両脚部のすべての関節部位のアクチュエータを、柔らかい関節特性から中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、支持脚は速応性を持ちつつ、硬い特性時以上且つ柔らかい特性時以下のコンプライアンスを得ることで、柔らかい特性時以上且つ硬い特性時以下の位置精度を持ち、閉リンク状態の安定動作に寄与する。
また、左右の肘ピッチや、首ロール・ピッチ・ヨー、他の関節部位は、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
F.床上姿勢からの起き上がりオペレーション
仰向け姿勢やうつ伏せ姿勢などの床上姿勢からの起動を行なうため、あるいは、転倒時に自律的に起き上がって作業を再開する、という作業の自己完結性を得るために、脚式移動ロボット100は、起き上がりオペレーションを実現することが必要である。
このとき、無計画的な軌道により起き上がろうとすると、過大な外力モーメントが印加され、関節アクチュエータが高出力トルクを必要とする。この結果、モータの大型化が必要となり、その分だけ消費電力が増大してしまう。また、機体の重量が増すとともに製造コストが高騰してしまう。重量の増大によりさらに起き上がり動作が困難になる。あるいは、起き上がり動作の過程で発生する外力モーメントにより姿勢の安定性を維持することができず、そもそも起き上がることができない、という事態もあり得る。
そこで、本実施形態では、脚式移動ロボット100は、外力モーメントが最小となる動作パターンよりなる起き上がり動作を行なうこととした。これは、ZMP支持多角形が最小となるような姿勢を時系列的に組み合わせることによって、実現することができる。
また、本実施形態に係る脚式移動ロボット100は、肩関節ピッチ軸4、体幹ピッチ軸9、股関節ピッチ軸12、膝関節ピッチ軸14のように(図3を参照のこと)、高さ方向に複数のピッチ軸が直列的(但し横方向から眺めた場合)に連結されたリンク構造体である。そこで、これら複数の関節ピッチ軸4〜14を所定のシーケンスで同期協調的に駆動して、ZMP支持多角形が最小となるような動作パターンによる起き上がり動作を実現することとした。
F−1.基本仰向け姿勢からの起き上がりオペレーション
図40には、本実施形態に係る脚式移動ロボット100が肩関節ピッチ軸4、体幹ピッチ軸9、股関節ピッチ軸12、膝関節ピッチ軸14を同期強調的に駆動させて起き上がり動作を行なうための処理手順をフローチャートの形式で示している。このような処理手順は、実際には主制御部81において所定の機体動作制御プログラムを実行して、各部を駆動制御することによって実現される。
また、図41には、本実施形態に係る脚式移動ロボット100が肩関節ピッチ軸4、体幹ピッチ軸9、股関節ピッチ軸12、膝関節ピッチ軸14を同期強調的に駆動させて仰向け姿勢から起き上がり動作を行なう様子を、関節リンク・モデルで示している。但し、図示のリンク構造体において、体幹関節と股関節を連結するリンクに機体全体の重心位置が設定されており、このリンクを以下では「重心リンク」と呼ぶことにする。尚、「重心リンク」は狭義には上記のような定義で用いるが、広義には機体全体の重心位置が存在するリンクであればよい。例えば、体幹軸を持たないような機体においては、機体全体の重心が位置する体幹先端などを含むリンクがこれに該当する。また、図42には、実機が仰向け姿勢から起き上がっていく様子を示している。
以下、図40に示したフローチャートを参照しながら、基本仰向け姿勢からの機体の起き上がりオペレーションについて説明する。
まず、床上姿勢において、位置エネルギの最も小さい姿勢を探索する(ステップS51)。これは、基本仰向け姿勢に相当し、図41(1)及び図42(A)に示すように、起き上がり動作に使用する肩関節ピッチ軸4、体幹ピッチ軸9、股関節ピッチ軸12、膝関節ピッチ軸14をそれぞれ連結するリンクはすべて接床している。このとき、位置エネルギの最も小さい姿勢をとることにより、路面の傾斜や形状を計測して、起き上がり動作が可能かどうかを確認することができる。
この基本仰向け姿勢において、接床リンクが形成する接地多角形内で、最も狭い支持多角形を探索する(ステップS52)。このとき、機体の一端側から少なくとも2以上のリンクを離床させたときの、ZMP軌道が計画可能かどうかを判定する。ZMPの計画可能性は、リンク構造体の可動角、リンクを接続する各関節アクチュエータのトルク、関節力、角速度、角加速度などを考慮して判断することができる。
次いで、接地多角形のうち、最も狭い支持多角形に関与しない2以上のリンクを離床する(ステップS53)。
ステップS53は、図41(2)に相当する。実機上では、体幹関節と股関節を連結する重心リンクを含む下半身側が支持多角形として抽出され、それ以外の肩関節から体幹関節に至る2以上のリンクを支持多角形に関与しないリンクとして離床する。まず、図42(B)に示すように左右の両腕部を持ち上げてから、体幹関節ピッチ軸アクチュエータA9の駆動により、図42(C)に示すように上体起こしを行なっている。腕部を先に持ち上げておくことにより、モーメントを小さくして、必要な最大トルクを低減することができる。
次いで、一端側から1以上の離床リンクを屈曲させてリンク端の端部を着床させて、より狭い接地多角形を形成する(ステップS54)。
ステップS54は、図21(3)及び図42(D)に相当する。実機上では、肩関節を含む2以上のリンクが離床している状態で、肩関節ピッチ軸で屈曲させて、そのリンク端の端部である手先を接床させる。そして、手先を機体重心位置である体幹ピッチ軸側に徐々に近づけていくことによって、元の床上姿勢よりも狭い接地多角形を形成する。
このときの実機では、左右の肩関節ロール軸A5の駆動により、左右の腕部を真横に広げた後、上腕ヨー軸A6の駆動により腕部の向きを一旦180度回転させてから、肩関節ピッチ軸A4の駆動により、腕部を徐々に降下させていく。そして、手先を着床することによって、より狭い接地多角形を形成する。
このように新しい接地多角形を形成すると、接地多角形にZMPを設定することができるかどうかをチェックする(ステップS55)。これは、リンク構造体の可動角、リンクを接続する各関節アクチュエータのトルク、関節力、角速度、角加速度などを考慮して判断する。そして、ZMPを接地多角形に移動して、新たな支持多角形を形成する(ステップS56)。
ここで、支持多角形が充分狭くなったか否かを判断する(ステップS57)。この判断は、体幹ピッチ軸と股関節ピッチ軸を連結する重心リンクを離床可能であるか、若しくは、図42(E)に示すように、足部だけで形成できるZMP安定領域内にZMPを移動させることができるかどうかを、リンク構造体の可動角、リンクを接続する各関節アクチュエータのトルク、関節力、角速度、角加速度などを考慮して判断する。
まだ支持多角形が充分狭いとは言えない場合には、着床点を移動して支持多角形を小さくした後(ステップS60)、ステップS52に戻って、より狭い支持多角形の形成を再試行する。そして、接床リンクが形成する接地多角形内で、最も狭い支持多角形を探索する(ステップS52)。今度は、機体の他端側から少なくとも2以上のリンクを離床させたときの、ZMPが計画可能かどうかを判定する。ZMPの計画可能性は、リンク構造体の可動角、リンクを接続する各関節アクチュエータのトルク、関節力、角速度、角加速度などを考慮して判断することができる。
次いで、接床多角形のうち、最も狭い支持多角形に関与しない2以上のリンクを離床する(ステップS53)。これは、図41(4)〜(5)に相当する。実機上では、膝関節ピッチ軸を含む他端側から連続する2以上のリンクを支持多角形に関与しないリンクとして離床する。そして、一端側から1以上の離床リンクを屈曲させてリンク端の端部を着床させて、より狭い接地多角形を形成する(ステップS54)。このとき、実機は、まず、右脚の股関節ピッチ軸A12の駆動により右脚を持ち上げてから、その膝関節アクチュエータA14の駆動により右脚を屈曲させて、その足底を着床する。次いで、脚の股関節ピッチ軸A12の駆動により右脚を持ち上げてから、その膝関節アクチュエータA14の駆動により左脚を屈曲させて、その足底を着床する。このようにして、足底を機体重心位置である股関節ピッチ軸12側に徐々に近づけていくことによって、元の床上姿勢よりも狭い接地多角形を形成することができる。
このように新しい接地多角形を形成すると、接地多角形にZMPを設定することができるかどうかをチェックする(ステップS55)。これは、リンク構造体の可動角、リンクを接続する各関節アクチュエータのトルク、関節力、角速度、角加速度などを考慮して判断する。そして、ZMPを接地多角形に移動して、新たな支持多角形を形成する(ステップS56)。
ここで、支持多角形が充分狭くなったか否かを再び判断する(ステップS57)。この判断は、体幹ピッチ軸と股関節ピッチ軸を連結する重心リンクを離床可能であるか、若しくは足部だけで形成できるZMP安定領域内にZMPを移動させることができるかどうかを、リンク構造体の可動角、リンクを接続する各関節アクチュエータのトルク、関節力、角速度、角加速度などを考慮して判断する。図42(F)に示す実機の姿勢では、充分狭い支持多角形が形成されていると判断される。支持多角形を縮小する際の腕の角度に関しては、肩の軸から床面方向に下ろした垂線と腕の中心軸がなす角度は、トルク量に基づく所定角度内であることが望ましい。
そして、機体の支持多角形が充分に狭くなったことに応答して、支持多角形の両リンク端の端部を接床した状態で前記重心リンクを離床し、両リンク端の着床リンクによって形成される支持多角形内にZMPを維持しながら、支持多角形を形成する両リンク端の端部の間隔を縮めて、ZMPを前記リンク構造体の他端側に移動させていく(ステップS58)。これは、図41(6)〜(7)に相当する。実機上では、図42(G)〜(H)に示すように、接地多角形の両リンク端の端部としての手先及び足底を接床した状態で体幹ピッチ軸及び股関節ピッチ軸を連結した前記重心リンクを離床し、さらに、手先及び足底の間隔を徐々に縮めていき、ZMPを足底に向かって移動させていく。
そして、前記リンク構造体の他端から第2の所定数以下の接床リンクのみで形成される接地多角形内にZMPが突入したことに応答して、ZMPを該接地多角形内に収容したまま前記リンク構造体の一端側から第1の所定数以上のリンクを離床して、該離床リンクを長さ方向に伸展することによって、起き上がり動作を完結させる(ステップS59)。これは、図41(8)に相当する。
実機上では、図42(H)〜(I)に示すように、足底で構成される接地多角形内にZMPが突入したことに応答して、ZMPを該接地多角形内に収容したまま、肩ピッチ軸4から膝ピッチ軸14に至までのリンクを離床して、離床リンクを長さ方向に伸展することによって、起き上がり動作を完結させる。
起き上がりの最終段階である、離床リンクを長さ方向に伸展する際には、質量操作量のより大きな膝関節ピッチ軸を積極的に使用して動作することが、機体動作上の効率がよい。
なお、ステップS53において、最も小さい支持多角形に関与しない2以上のリンクを離床することができない場合には、最大の支持多角形より内側の2以上の着床リンクを離床することを試みる(ステップS61)。
ステップS61を実行できない場合には、起き上がり動作を中止する。また、ステップS61を成功裏に実行することができる場合には、さらに、着床点を移動させて、支持多角形をさらに小さくする(ステップS62)。
ステップS62を実行できない場合には、起き上がり動作を中止する。また、ステップS62を成功裏に実行することができる場合には、足部で形成できる安定領域にZMPを移動することができるかどうかをチェックする(ステップS63)。この安定領域内にZMPを移動することができない場合には、ステップS61に戻って、支持多角形を小さくするための同様の処理を繰り返し実行する。また、この安定領域内にZMPを移動させることができた場合には、ステップS58に進んで、基本姿勢への復帰動作を行なう。
以下では、仰向けの床上姿勢からの起き上がり動作を、A〜Jの10段階に分けて、図43〜図52を参照しながら説明する。
脚式移動ロボットの機体は、略平行な関節自由度を持つ複数の関節軸を長さ方向に連結した多リンク構造体で構成されるが、仰向け姿勢からの起き上がり動作の途上では、この多リンク構造体の着床部位と床面がなすリンク状態が開リンク状態と閉リンク状態との間で切り替わる。そして、起き上がりの段階毎に、リンク状態の切り替わりに応じて、各関節を駆動するためのアクチュエータを、硬い関節特性、柔らかい関節特性、その中間の関節特性に適宜切り替えることにより、適応的な起き上がり動作を実現する。
(A)仰向けの基本姿勢
姿勢制御されている状態であり、下肢、腰、体幹部が床面に対して閉リンク系を構成している(図43を参照のこと)。
脚式移動ロボットは、ZMP支持多角形が最小となるような動作パターンにより仰向け姿勢からの起き上がり動作を行なうが、図42を参照しながら説明したように、左右の腕を接床させながら最小となるZMP支持多角形を探索する。このため、起き上がり動作に備えて、左右の肩ピッチ、肩ロール、肘ピッチなどの腕部の駆動に関連する関節部位のアクチュエータを硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
また、左右の下肢の関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、支持脚は高速な応答性を持ちつつ、硬い特性時以上且つ柔らかい特性時以下のコンプライアンスを得ることで、柔らかい特性時以上且つ硬い特性時以下の位置精度を持ち、閉リンク状態の安定動作に寄与する。
また、上記以外の関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
(B)両腕を上方向に上げる
体幹関節と股関節を連結する重心リンクを含む下半身側が支持多角形として抽出され、それ以外の肩関節から体幹関節に至る2以上のリンクを支持多角形に関与しないリンクとして離床する。この場合、下肢、腰、体幹部が床面に対して閉リンク系を構成している(図44を参照のこと)。
このとき、肩ヨー軸、肘ピッチ軸など離床動作に関わる関節部位では、より狭い接地多角形を形成するために接床するまでの期間中、位置決め精度が重要となるので、これらの関節部位のアクチュエータを、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。
また、左右の下肢の関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性を維持する。
また、上記以外の関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性を維持する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
(C)両腕と体幹の相対角度を保持しながら体幹を起こす
左右の両腕部を持ち上げてから、上体起こしを行なう。この場合、下肢部が床面に対して閉リンク系を構成する(図45を参照のこと)。姿勢センサと自身の関節角度情報を用いて自身の姿勢を検知する。腕部を先に持ち上げておくことにより、モーメントを小さくして、必要な最大トルクを低減することができる。
これ以後、左右の両腕は接床へ向かうので、これらの関節部位のアクチュエータを、柔らかい関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定し、コンプライアンスを得易くする。
また、左右の下肢の関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性を維持する。
また、上記以外の関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
(D)両腕を後方に移動させる
肩関節を含む2以上のリンクが離床している状態で、肩関節ピッチ軸で屈曲させて、そのリンク端の端部である手先を接床させる。そして、手先を機体重心位置である体幹ピッチ軸側に徐々に近づけていくことによって、元の床上姿勢よりも狭い接地多角形を形成する。この結果、腕、体幹、腰、下肢部が床面に対して閉リンク系を構成した状態となる(図46を参照のこと)。姿勢センサと自身の関節角度情報を用いて腕先接地を確認することができる。
このとき、左右の肩ピッチ、肩ヨー、肘ピッチなどの起き上がり動作に関わる関節部位では、より狭い接地多角形を形成するために接床するまでの期間中、速応性とコンプライアンスが重要となるので、これらの関節部位のアクチュエータを、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、支持脚は高速な応答性を持ちつつ、硬い特性時以上且つ柔らかい特性時以下のコンプライアンスを得ることで位置精度を増し、次の動作に備える。
また、左右の下肢の各関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、高速な応答性を持ちつつ、硬い特性時以上且つ柔らかい特性時以下のコンプライアンスを得ることで、柔らかい特性時以上且つ硬い特性時以下の位置精度を持ち、閉リンク状態の安定動作に寄与する。
また、上記以外の関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に維持する。
(E)右脚の膝を曲げて足底を体幹に近づける
支持多角形を十分狭くするために、脚部だけで形成できるZMP安定領域内にZMPを移動させる。腕部、体幹、腰、左下肢部が床面に対して閉リンク系を構成する(図47を参照のこと)。姿勢センサと自身の関節角度情報を用いて遊脚となることを確認することができる。
このとき、右脚は遊脚に転じる。そして、右腿ロールや右腿ピッチなどの離床動作に関わる各関節部位では、より狭い接地多角形を形成するために接床するまでの期間中、高速応答性とコンプライアンスが重要となるので、これらの関節部位のアクチュエータを、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ中高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
また、右足首ロール、右足首ピッチなどは接床へ向かうので、これらの関節部位のアクチュエータを、柔らかい関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定し、コンプライアンスを得易くする。
また、この段階では動作しない左脚、並びに上記以外の関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に維持する。
(F)右脚の膝を曲げて足底を体幹に近づける
支持多角形を十分狭くするために、脚部だけで形成できるZMP安定領域内にZMPを移動させる。腕部、体幹、腰、右下肢部が床面に対して閉リンク系を構成する(図48を参照のこと)。姿勢センサと自身の関節角度情報を用いて遊脚となることを確認することができる。
このとき、右脚は支持脚に、左脚は遊脚に転じる。そして、左腿ロールや左腿ピッチなどの離床動作に関わる各関節部位では、より狭い接地多角形を形成するために接床するまでの期間中、高速応答性とコンプライアンスが重要となるので、これらの関節部位のアクチュエータを、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
また、左足首ロール、左足首ピッチなどは接床へ向かうので、これらの関節部位のアクチュエータを、柔らかい関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定し、コンプライアンスを得易くする。
また、この段階では動作しない左脚の関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、左脚は高速応答が可能になるとともに、コンプライアンスを得る。また、モータの粘性が高くなる。
また、上記以外の関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に維持する。
(G)両足の脚底が体幹に近づいた5点支持の状態にする
充分狭い支持多角形が形成されている姿勢であり、腕、体幹、腰、下肢部が床面に対して閉リンク系を構成する(図49を参照のこと)。姿勢センサ、自身の関節角度情報、足底の力センサ(又は接触センサ)を用いて自身の姿勢(接地状態)からこの状態を確認することができる。
このとき、足首ロール軸及び足首ピッチ軸など最も狭い支持多角形を探索する動作を行なう関節部位のアクチュエータを、柔らかい関節特性から中間の関節特性に戻す。この結果、高速応答性を維持しながら、コンプライアンスを得る。また、モータの粘性が高くなる。
また、上記以外の関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に維持する。
(H)脚・体幹・肩を使い、腕と脚の4点支持の状態になって起き上がる
接地多角形の両リンク端の端部としての手先及び足底を接床した状態で体幹ピッチ軸及び股関節ピッチ軸を連結した前記重心リンクを離床し、さらに、手先及び足底の間隔を徐々に縮めていき、ZMPを足底に向かって移動させていく。腕、体幹、腰、下肢部が床面に対して閉リンク系を構成する(図50を参照のこと)。姿勢センサ、自身の関節角度情報、足底の力センサ(又は接触センサ)を用いて自身の姿勢(接地状態)からこの状態を確認することができる。
このとき、足首ロール、足首ピッチなどの着床した関節部位では、より狭い接地多角形を形成するために、高速応答性とコンプライアンスが重要となるので、これらの関節部位のアクチュエータを、柔らかい関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定する。
また、肩ピッチ、肩ロール、膝ピッチなどの支持多角形を狭めていく動作に関わる関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に維持して、高速な応答性を持ちつつ、硬い特性時以上且つ柔らかい特性時以下のコンプライアンスを得ることで、柔らかい特性時以上且つ硬い特性時以下の位置精度を持ち、閉リンク状態の安定動作に寄与する。
また、上記以外の関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
(I)腕を離床させ、脚で2点支持の状態にする
足底で構成される接地多角形内にZMPが突入したことに応答して、ZMPを該接地多角形内に収容したまま、肩ピッチ軸4から膝ピッチ軸14に至までのリンクを離床して、離床リンクを長さ方向に伸展する。この場合、腰、下肢部が床面に対して閉リンク系を構成する(図51を参照のこと)。姿勢センサ、自身の関節角度情報、足底の力センサ(又は接触センサ)を用いて自身の姿勢(接地状態)からこの状態を確認することができる。
このとき、伸展動作と2点支持状態での姿勢安定制御を強化するために、足首ロール、足首ピッチの各関節部位のアクチュエータを、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定し、高速な応答性を持ちつつ、硬い特性時以上且つ柔らかい特性時以下のコンプライアンスを得ることで位置精度を増し、次の動作に備える。
また、肩ピッチ、肩ロール、肘ピッチなど左右の腕部の各関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
また、上記以外の関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に維持する。
(J)基本姿勢に移行する
基本的な立ち姿勢で姿勢制御されている状態であり、腰、下肢部が床面に対して閉リンク系を構成する(図52を参照のこと)。
このとき、足首ロール、足首ピッチの各関節部位のアクチュエータを、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に維持し、高速な応答性を持ちつつ、硬い特性時以上且つ柔らかい特性時以下のコンプライアンスを得ることで、柔らかい特性時以上且つ硬い特性時以下の位置精度を持ち、閉リンク状態の安定動作に寄与する。
また、肩ピッチ、肩ロール、肘ピッチなど左右の腕部の各関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に維持し、位置決め精度を優先して、振動などの外乱にもロバストにする。
また、上記以外の関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に維持する。
以上説明してきたように、機体が仰向け姿勢から起き上がり動作を行なう際、アクチュエータの特性を図12に示すように低域ゲインを大きく、位相進み量を小さく、関節の粘性抵抗を大きくするように設定することで、高精度な位置決めが可能となる。したがって、(A)〜(J)の全般で、動作制御の精度が向上するので、支持多角形の大きさの精度を確保することができる。
また、アクチュエータの特性を図13に示すように低域ゲインを小さく、位相進み量を大きく、関節の粘性抵抗を小さくするように設定することで、該当する関節部位に機械的受動性(コンプライアンス)と高速応答性を与えることができる。したがって、(B)〜(D)、(E)〜(G)、(H)〜(I)の状態遷移のときに、腕や脚の動作や着床動作が円滑になるとともにエネルギ消費を少なくすることができる。
F−2.基本うつ伏せ姿勢からの起き上がりオペレーション
図53には、本実施形態に係る脚式移動ロボット100が肩関節ピッチ軸4、体幹ピッチ軸9、股関節ピッチ軸12、膝関節ピッチ軸14を同期強調的に駆動させて起き上がり動作を行なう様子を、関節リンク・モデルで示している。
本実施形態に係る脚式移動ロボット100は、基本的には、仰向け姿勢から起き上がる場合と同様に、図40にフローチャートの形式で示した処理手順に従って、うつ伏せ姿勢からも起き上がることができる。以下、図40に示したフローチャートを参照しながら、基本うつ伏せ姿勢からの機体の起き上がりオペレーションについて説明する。
まず、床上姿勢において、位置エネルギの最も小さい姿勢をとる(ステップS51)。これは、基本うつ伏せ姿勢に相当し、図53(1)及び図54(A)に示すように、起き上がり動作に使用する肩関節ピッチ軸4、体幹ピッチ軸9、股関節ピッチ軸12、膝関節ピッチ軸14をそれぞれ連結するリンクはすべて接床している。
この基本うつ伏せ姿勢において、接床リンクが形成する接地多角形内で、最も狭い支持多角形を探索する(ステップS52)。このとき、機体の一端側から少なくとも2以上のリンクを離床させたときの、ZMPが計画可能かどうかを判定する。ZMPの計画可能性は、リンク構造体の可動角、リンクを接続する各関節アクチュエータのトルク、関節力、角速度、角加速度などを考慮して判断することができる。
次いで、接地多角形のうち、最も狭い支持多角形に関与しない2以上のリンクを離床する(ステップS53)。ステップS53は、図53(2)に相当する。実機上では、体幹関節と股関節を連結する重心リンクを含む下半身側が支持多角形として抽出され、それ以外の肩関節から体幹関節に至る2以上のリンクを支持多角形に関与しないリンクとして離床する。まず、左右の両腕部の肩ロール軸アクチュエータA5を作動させて、床面に摺って肩ロール軸回りに略90度だけ旋回させ、次いで、上腕ヨー軸アクチュエータA6を作動させて、各腕部を上腕ヨー軸回りに略180度だけ回転させる。そして、図54(B)に示すようにさらに肩ロール軸アクチュエータA5を作動させて、摺って肩ロール軸回りに略90度だけ旋回させて、図54(C)に示すように左右の腕部を頭部の側面まで移動する。
次いで、一端側から1以上の離床リンクを屈曲させてリンク端の端部を着床させて、より狭い接地多角形を形成する(ステップS54)。ステップS54は、図53(3)並びに図54(D)に相当する。
そして、新しい接地多角形を形成すると、接地多角形にZMPを設定することができるかどうかをチェックする(ステップS55)。これは、リンク構造体の可動角、リンクを接続する各関節アクチュエータのトルク、関節力、角速度、角加速度などを考慮して判断する。そして、ZMPを接地多角形に移動して、新たな支持多角形を形成する(ステップS56)。実機上では、図54(D)に示すように、肘ピッチ軸7を固定させて、左右の腕部を真直ぐ伸ばしたままの状態で、今度は肩ピッチ軸アクチュエータA4、体幹ピッチ軸アクチュエータA9、股関節ピッチ軸A12、並びに膝関節ピッチ軸アクチュエータA14を作動させて、手先と左右の両膝が接地した閉リンク姿勢からなる支持多角形を形成する。
まだ支持多角形が充分狭いとは言えない場合には、着床点を移動して支持多角形を小さくする(ステップS60)。実機上では、図54(E)に示すように、左右の腕部をまっすぐに保ったまま、手先を他方の着床点である足底側に徐々に近づけていくことによって、より狭い支持多角形を形成していく。
ここで、支持多角形が充分狭くなったか否かを判断する(ステップS57)。この判断は、体幹ピッチ軸と股関節ピッチ軸を連結する重心リンクを離床可能であるか、若しくは、足部だけで形成できるZMP安定領域内にZMPを移動させることができるかどうかを、リンク構造体の可動角、リンクを接続する各関節アクチュエータのトルク、関節力、角速度、角加速度などを考慮して判断する。
そして、機体の支持多角形が充分に狭くなったことに応答して両リンク端の着床リンクによって形成される支持多角形内にZMPを維持しながら、支持多角形を形成する両リンク端の端部の間隔を縮めて、ZMPを前記リンク構造体の他端側に移動させていく(ステップS58)。これは、図53(6)〜(7)に相当する。実機上では、図54(D)〜(E)に示すように、接地多角形の両リンク端の端部としての手先及び足底を接床した状態で、さらに手先及び足底の間隔を徐々に縮めていき、ZMPを足底に向かって移動させていく。
そして、前記リンク構造体の他端から第2の所定数以下の接床リンクのみで形成される接地多角形内にZMPが突入したことに応答して、ZMPを該接地多角形内に収容したまま前記リンク構造体の一端側から第1の所定数以上のリンクを離床して、該離床リンクを長さ方向に伸展することによって、起き上がり動作を完結させる(ステップS59)。これは、図53(8)に相当する。
実機上では、図54(E)〜(F)に示すように、足底で構成される接地多角形内にZMPが突入したことに応答して、ZMPを該接地多角形内に収容したまま、肩ピッチ軸4から膝ピッチ軸14に至までのリンクを離床して、離床リンクを長さ方向に伸展することによって、起き上がり動作を完結させる。
起き上がりの最終段階である、離床リンクを長さ方向に伸展する際には、質量操作量のより大きな膝関節ピッチ軸を積極的に使用して動作することが、機体動作上の効率がよい。
以下では、仰向けの床上姿勢からの起き上がり動作を、A〜Gの7段階に分けて、図55〜図61を参照しながら説明する。
脚式移動ロボットの機体は、略平行な関節自由度を持つ複数の関節軸を長さ方向に連結した多リンク構造体で構成されるが、うつ伏せ姿勢からの起き上がり動作の途上では、この多リンク構造体の着床部位と床面がなすリンク状態が開リンク状態と閉リンク状態との間で切り替わる。そして、起き上がりの段階毎に、リンク状態の切り替わりに応じて、各関節を駆動するためのアクチュエータを、硬い関節特性、柔らかい関節特性、その中間の関節特性に適宜切り替えることにより、適応的な起き上がり動作を実現する。
(A)うつ伏せの基本姿勢
姿勢制御されている状態であり、下肢、腰、体幹部が床面に対して閉リンク系を構成している(図55を参照のこと)。
脚式移動ロボットは、ZMP支持多角形が最小となるような動作パターンにより仰向け姿勢からの起き上がり動作を行なうが、図53を参照しながら説明したように、左右の腕を接床させながら最小となるZMP支持多角形を探索する。このため、起き上がり動作に備えて、左右の肩ピッチ、肩ロール、肘ピッチなどの腕部の駆動に関連する関節部位のアクチュエータを硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
また、左右の下肢の関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、高速な応答性を持ちつつ、硬い特性時以上且つ柔らかい特性時以下のコンプライアンスを得ることで、柔らかい特性時以上且つ硬い特性時以下の位置精度を持ち、閉リンク状態の安定動作に寄与する。
また、体幹ロールや体幹ピッチ、上記以外の関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
(B)両腕を頭上方向に向けて横側から動かす
体幹関節と股関節を連結する重心リンクを含む下半身側が支持多角形として抽出され、それ以外の肩関節から体幹関節に至る2以上のリンクを支持多角形に関与しないリンクとして離床する。そして、肩ロール軸アクチュエータA5を作動させて、摺って肩ロール軸回りに略90度だけ旋回させて、各腕部を頭部の側面まで移動する。この場合、下肢、腰、体幹部が床面に対して閉リンク系を構成している(図56を参照のこと)。但し、両腕は接地していない。
このとき、肩ヨー軸、肩ロール軸、肩ピッチ軸など離床・旋回動作に関わる関節部位では、より狭い接地多角形を形成するために接床するまでの期間中、位置決め精度が重要となるので、これらの関節部位のアクチュエータを、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。
また、左右の下肢の関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性を維持する。
また、体幹ロールや体幹ピッチ、上記以外の関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性を維持する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
(C)両腕を頭上方向に上げる
左右の両腕部を頭部の側面まで移動する。大腿、腰、体幹、上肢部が床面に対して閉リンク系を構成する(図57を参照のこと)。姿勢センサと自身の関節角度情報を用いて自身の姿勢(接地状態)からこの状態を確認することができる。
このとき、左右の両脚は遊脚に転じる。そして、足首ロール、足首ピッチなどの関節部位では、より狭い接地多角形を形成するために、高速応答性とコンプライアンスが重要となるので、これらの関節部位のアクチュエータを、柔らかい関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Bに示すモータ特性の最大値の3分の1に設定する。
また、左右の肩ピッチ、肩ロール、肩ヨー、腿ロール、腿ピッチ、膝ピッチなどの支持多角形を狭めていく動作に関わる関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に維持して、高速な応答性とコンプライアンスを得て、次の動作に備える。
また、体幹ロールや体幹ピッチ、上記以外の関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性を維持する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
(D)両腕を使って4点支持の状態にし、ZMPを足の接地面に近づける
肘ピッチ軸7を固定させて、左右の腕部を真直ぐ伸ばしたままの状態で、今度は肩ピッチ軸アクチュエータA4、体幹ピッチ軸アクチュエータA9、股関節ピッチ軸A12、並びに膝関節ピッチ軸アクチュエータA14を作動させて、手先と左右の両膝が接地した閉リンク姿勢からなるより狭い接地多角形を形成する。下肢、腰、体幹、上肢部が床面に対して閉リンク系を構成する(図58を参照のこと)。姿勢センサ、自身の関節角度情報、足底の力センサ(又は接触センサ)を用いて、自身の姿勢(接地状態)からこの状態を確認することができる。
このとき、体幹ロールや体幹ピッチ、左右の肩ピッチ、肩ロール、肩ヨー、腿ロール、腿ピッチ、膝ピッチなど最も狭い支持多角形を探索する動作を行なう関節部位のアクチュエータを、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に維持して、高速な応答性を持ちつつ、硬い特性時以上且つ柔らかい特性時以下のコンプライアンスを得ることで、柔らかい特性時以上且つ硬い特性時以下の位置精度を持ち、閉リンク状態の安定動作に寄与する。
また、上記以外の関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性を維持する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
(E)ZMPが足の接地面で構成される支持多角形内に入るように姿勢制御する
右の腕部をまっすぐに保ったまま、手先を他方の着床点である足底側に徐々に近づけていくことによって、より狭い支持多角形を形成し、足部だけで形成できるZMP安定領域内にZMPを移動させることができるようにする。下肢、腰、体幹、上肢部が床面に対して閉リンク系を構成する(図59を参照のこと)。
このとき、体幹ロールや体幹ピッチ、左右の肩ピッチ、肩ロール、肩ヨー、腿ロール、腿ピッチ、膝ピッチなど最も狭い支持多角形を探索する動作を行なう関節部位のアクチュエータを、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に維持して、高速な応答性を持ちつつ、硬い特性時以上且つ柔らかい特性時以下のコンプライアンスを得ることで、柔らかい特性時以上且つ硬い特性時以下の位置精度を持ち、閉リンク状態の安定動作に寄与する。
また、上記以外の関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性を維持する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
(F)両腕を離床し2点支持の状態にする
接地多角形の両リンク端の端部としての手先及び足底を接床した状態で、さらに手先及び足底の間隔を徐々に縮めていき、ZMPを足底に向かって移動させていく。そして、足底で構成される接地多角形内にZMPが突入したことに応答して、ZMPを該接地多角形内に収容したまま、肩ピッチ軸4から膝ピッチ軸14に至までのリンクを離床して、離床リンクを長さ方向に伸展することによって、起き上がり動作を完結させる。左右の下肢が床面に対して閉リンク系を構成する(図60を参照のこと)。姿勢センサ、自身の関節角度情報、足底の力センサ(又は接触センサ)を用いて自身の姿勢(接地状態)からこの状態を確認することができる。
このとき、左右の足首ロール、足首ピッチでは、基体を起こしていく動作に倣わせるために、高速応答性とコンプライアンスが重要となるので、この関節部位のアクチュエータを、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値にする。この結果、左右の足首は、高速応答が可能になるとともに、コンプライアンスを得る。また、モータの粘性が高くなる。
また、左右の肩ピッチ、肩ロール、肘ピッチなどの腕部の駆動に関連する関節部位のアクチュエータを硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
また、左右の下肢の関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に維持する。
また、体幹ロールや体幹ピッチ、上記以外の関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
(G)基本姿勢に移行する
基本的な立ち姿勢で姿勢制御されている状態であり、左右の下肢が床面に対して閉リンク系を構成する(図61を参照のこと)。姿勢センサ、自身の関節角度情報、足底の力センサ(又は接触センサ)を用いて自身の姿勢(接地状態)からこの状態を確認することができる。
このとき、肩ヨー軸、肩ピッチ軸などの関節部位では、位置決め精度が重要となるので、これらの関節部位のアクチュエータを、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性の最大値に設定する。
また、左右の下肢の関節部位のアクチュエータは、中間の関節特性、すなわち、アクチュエータ・モータのサーボ特性を図13に示したように低域で低ゲインで且つ中高域における位相進み量を大きくするとともに、モータの粘性を図17Aに示すモータ特性を維持する。
また、体幹ロールや体幹ピッチ、上記以外の関節部位のアクチュエータは、硬い関節特性、すなわち、アクチュエータ・モータのサーボ特性を図12に示したように全帯域で高ゲインで且つ高域における位相進み量を小さくするとともに、モータの粘性を図17Aに示すモータ特性を維持する。この結果、位置決め精度を優先して、振動などの外乱にもロバストになる。
以上説明してきたように、機体がうつ伏せ姿勢から起き上がり動作を行なう際、アクチュエータの特性を図12に示すように低域ゲインを大きく、位相進み量を小さく、関節の粘性抵抗を大きくするように設定することで、高精度な位置決めが可能となる。したがって、(A)〜(G)の全般で、動作制御の精度が向上するので、支持多角形の大きさの精度を確保することができる。
また、アクチュエータの特性を図13に示すように低域ゲインを小さく、位相進み量を大きく、関節の粘性抵抗を小さくするように設定することで、該当する関節部位に機械的受動性(コンプライアンス)と高速応答性を与えることができる。したがって、(A)〜(B)、(C)〜(E)、(F)〜(G)の状態遷移のときに、腕や脚の動作や着床動作が円滑になるとともにエネルギ消費を少なくすることができる。