(57)【要約】【課題】  足先センサを用いずに、安定した歩行を行う脚式ロボットとその歩行制御方法を提供する。【解決手段】  体幹と、体幹に対して揺動可能に連結されている脚リンクと、目標とする足先運動の経時的変化を記述する足先歩容データを記憶している手段２１０と、目標足先位置の変化に追従する目標ＺＭＰを実現する目標とする体幹運動の経時的変化を記述する体幹歩容データを記憶している手段２１０と、実際の体幹運動を検出する体幹運動検出手段２１８，２２０と、目標とする体幹運動と実際の体幹運動の偏差を算出する偏差算出手段３１２と、算出された偏差から所定の伝達関数に基づいて補正量を求める補正量算出手段３０８と、求められた補正量に基づいて目標とする体幹運動を記述するデータを補正する補正手段３０６とを備えている。【選択図】  図３
2008229845.tif 000002
【特許請求の範囲】
【請求項１】
体幹と、体幹に対して揺動可能に連結されている脚リンクと、
目標とする足先運動の経時的変化を記述する足先歩容データの記憶手段と、
目標足先運動の変化に追従して歩行を可能とする目標とする体幹運動の経時的変化を記述する体幹歩容データの記憶手段と、
実際の体幹運動を検出する体幹運動検出手段と、
目標とする体幹運動と実際の体幹運動の偏差を算出する偏差算出手段と、
算出された偏差から所定の伝達関数に基づいて補正量を求め、その補正量に基づいて体幹歩容データ記憶手段に記憶されている体幹歩容データを補正する補正手段、
を備えている脚式ロボット。
【請求項２】
前記偏差算出手段が、目標とする体幹加速度と実際の体幹加速度の偏差を算出することを特徴とする請求項１の脚式ロボット。
【請求項３】
前記補正手段が、加速度偏差から計算される外乱力と所定の伝達関数に基づいて補正量を求めることを特徴とする請求項２の脚式ロボット。
【請求項４】
前記伝達関数が、比例要素を含むことを特徴とする請求項３の脚式ロボット。
【請求項５】
前記伝達関数が、１次遅れ要素および／または２次遅れ要素を含むことを特徴とする請求項４の脚式ロボット。
【請求項６】
前記補正手段が、加速度偏差に基づいて補正した目標体幹位置と実際の体幹位置の偏差にフィードバック処理を施した量を加算することによって目標体幹位置をさらに補正することを特徴とする請求項３〜５のいずれかの脚式ロボット。
【請求項７】
目標とする足先運動の経時的変化を記述する足先歩容データを記憶する工程と、
目標足先運動の変化に追従して歩行を可能とする目標とする体幹運動の経時的変化を記述する体幹歩容データを記憶する工程と、
実際の体幹運動を検出する工程と、
目標とする体幹運動と実際の体幹運動の偏差を算出する工程と、
算出された偏差から所定の伝達関数に基づいて補正量を求め、その補正量に基づいて記憶されている体幹歩容データを補正し、補正された体幹歩容データをロボットの関節角群計算装置に指示する工程と、
を備えている脚式ロボットの歩行制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、体幹（胴部）に対して脚リンクが揺動可能に連結されている機械（脚式ロボットの機械系）を制御して歩行させる技術に関する。詳しくは、予期せぬ外乱力が作用しても、安定して歩行しつづけられる脚式ロボットとその歩行制御方法に関する。
【背景技術】
【０００２】
左足リンクと体幹と右足リンクの相対的姿勢を変化させることによって歩行する脚式ロボットが開発されている。
脚式ロボットが歩行するためには、左足先と体幹と右足先の運動を指示するデータを必要とする。そのうちの体幹位置は、足先位置に対して適当な値である必要があり、その値が適当でなければロボットは転倒してしまう。
脚式ロボットが転倒しない体幹位置を得るためには、ロボットのダイナミクスを考慮に入れた複雑な計算を必要とする。その計算過程は大略下記のものである。
（１）ロボットの左足先と右足先の位置を指示する経時的データを指定する。
（２）足先位置を考慮してロボットのＺＭＰが存在しなければならない位置を指定する。ＺＭＰ（zero moment point）は、ロボットに作用する重力や床反力や慣性力の合力のモーメントがゼロになる床上の点をいう。ＺＭＰが接地脚の足平内にあればロボットは転倒しない。逆にいうと、ロボットが転倒しないためには、ＺＭＰが接地脚の足平内になければならない。そこで接地脚の足先位置を考慮し、下記の関係を満たす目標ＺＭＰを指定する。即ち、一方の脚リンク（例えば左脚）が遊脚になっている間は接地脚（右脚）の足平内に存在し、その一方の脚（左脚）が接地して両足接地状態になった時に新たに接地した脚（左脚）の足平内に向けて移動開始し、それまでに接地していた脚（右脚）が遊脚となる前に新たに接地した脚（左脚）の足平内に移動し終えるＺＭＰを指定する。このようにして指定されたＺＭＰは、目標ＺＭＰと呼ばれる。実際のＺＭＰが目標ＺＭＰのとおりに移動すれば、ロボットは転倒することなく歩行しつづける。
（３）足先位置の変化とそれに追従して変化する目標ＺＭＰが指定されると、体幹位置の経時的変化を仮定してロボットのダイナミクスを計算する。計算する時点で、足先軌道が指定されているために、ロボットの体幹位置を仮定するとロボットの姿勢が決まる。ロボットの姿勢が決まると、その姿勢におけるＺＭＰの位置を計算することが可能となる。ＺＭＰの位置を計算するためには、静的な要素に加えて、ロボットに作用する慣性力の影響を織り込まなければならない。仮定した体幹位置の経時的変化を計算に含めることで、ロボットのダイナミクスまで考慮してＺＭＰの位置を計算することが可能となる。体幹位置の経時的変化（体幹軌道）を仮定するとＺＭＰの位置を計算することができることから、目標ＺＭＰに一致するＺＭＰを実現する体幹軌道（体幹位置の経時的変化）を探求することができる。
上記によって探求された体幹位置の経時的変化を示すデータを体幹歩容データといい、もともと指定されている足先位置の経時的変化を示すデータを足先歩容データといい、両者を総称して歩容データという。歩容データに従ってロボットが歩行すれば、実際のＺＭＰが目標ＺＭＰに一致し、ロボットは転倒せずに歩行しつづけることができる。
歩容データは、時間に対する位置の変化で与えられるが、位置と速度と加速度は関連しており、そのうちの一つの量から他の量を計算することができるために、位置でも速度でも加速度でもよい。本明細書では、歩容データが、位置・速度・加速度のいずれかで記述されるために、運動を記述するデータということにする。
目標ＺＭＰに一致するＺＭＰをもたらす体幹運動を算出する手法は、目標足先運動の変化に追従してロボットが歩行しつづけることを可能とする目標体幹運動の経時的変化を算出する手法の典型例であり、それには限られない。一般的にいうと、脚式ロボットは、体幹と体幹に対して揺動可能に連結されている脚リンクを備えており、目標とする足先運動の経時的変化を記述する足先歩容データが指示されると、目標足先運動の変化に追従して歩行しつづけることを可能とする目標体幹運動の経時的変化を記述する体幹歩容データを算出し、指示された足先歩容データと算出された体幹歩容データを用いて歩行する。算出される体幹歩容データには、体幹位置に関するデータの他、体幹の傾斜角度に関するデータまで算出することがある（体幹の傾斜角度については所定のパターンに従うとしておけば、体幹傾斜角度まで算出する必要がないことがある）。体幹の位置や傾斜角度に関するデータは、位置や角度自体であったり、その変化速度であったり、その加速度であったりする。
【０００３】
ロボットに予期せぬ外乱力が作用することがある。路面の予期せぬ凹凸によって予期せぬ外乱力が作用することもあるし、ロボットに外界から押したり引いたりする外力が加えられることもある。ロボットの構造上のたわみや、ロボットの関節のガタや、ロボットの応答遅れ等に起因して歩容データから外れれば、予期せぬ外乱力が作用したのと同じことになる。
予期せぬ外乱力が作用すると、ロボットがバランスを崩す場合がある。そこで、特許文献１に記載の歩行制御装置が提案されている。
特許文献１に記載の歩行制御装置では、ロボットに作用する床反力あるいは床反力モーメントを測定してＺＭＰ位置を実測する。実測されたＺＭＰ位置を目標ＺＭＰ位置と比較し、その偏差を両足平の目標位置や姿勢へフィードバックすることで歩行の安定化をはかっている。
【特許文献１】特開平５−３０５５７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載の歩行制御装置では、床反力あるいは床反力モーメントの検出が必須であり、床反力あるいは床反力モーメントを検出するために、右脚および左脚の足先近傍に６軸力センサ等の高性能な力センサを搭載する必要がある。
６軸力センサ等の高性能な力センサは高価である。また足先はロボットの歩行に伴って着地衝撃荷重が繰り返し作用する部位であり、足先近傍へセンサを搭載すると、衝撃荷重によってセンサが故障しやすい。足先に搭載されている力センサが故障すると、ロボットは歩行を続けることができない。また足先に力センサを搭載する場合、力センサから演算部へ信号を伝達するために多くの部品を必要とする。部品のどれかひとつでも故障した場合には、力センサからの信号が演算部へ正しく伝達されなくなり、結果として力センサが機能しない状態となる。
このような背景から、脚式ロボットの製造コストを下げて信頼性を向上させるためには、足先に力センサを搭載する必要をなくし、より簡易な構成で歩行の安定をはかる技術が必要とされる。
本発明は上記のような従来技術の問題点を解決するために創作されたものであり、足先に力センサを搭載しないでも安定して歩行しつづけることができる脚式ロボットとそのための歩行制御方法を提供する。
【課題を解決するための手段】
【０００５】
本発明で創作された脚式ロボットは、体幹と、体幹に対して揺動可能に連結されている脚リンクを備えている。さらに、目標とする足先運動の経時的変化を記述する足先歩容データの記憶手段と、目標とする体幹運動の経時的変化を記述する体幹歩容データの記憶手段を備えている。目標とする体幹運動は、目標とする足先運動の変化に追従して歩行しつづけることを可能とする関係に設定されている。例えば、実際のＺＭＰを目標足先位置の変化に追従する目標ＺＭＰに一致させる体幹運動が記憶されている。
本発明ロボットは、さらに、実際の体幹運動を検出する体幹運動検出手段と、目標とする体幹運動と実際の体幹運動の偏差を算出する偏差算出手段を備えている。さらに、算出された偏差から所定の伝達関数に基づいて補正量を求め、その補正量に基づいて体幹歩容データ記憶手段に記憶されている体幹歩容データを補正する補正手段を備えている。
【０００６】
本発明を歩行制御方法として理解することも可能である。本発明の歩行制御方法では、目標とする足先運動の経時的変化を記述する足先歩容データを記憶する工程と、目標とする体幹運動の経時的変化を記述する体幹歩容データを記憶する工程を実施する。目標とする体幹運動は、目標とする足先運動の変化に追従して歩行しつづけることを可能とする関係に設定されている。例えば、実際のＺＭＰを目標足先位置の変化に追従する目標ＺＭＰに一致させる体幹運動が記憶される。
本発明の歩行制御方法では、実際の体幹運動を検出する工程と、目標とする体幹運動と実際の体幹運動の偏差を算出する工程を備えている。さらに、算出された偏差から所定の伝達関数に基づいて補正量を求め、その補正量に基づいて体幹歩容データを補正し、補正された体幹歩容データをロボットの関節角を計算する装置に指示する工程を実施する。ロボットにはロボットが備えている関節毎に関節角を計算する装置が用意されている。
【０００７】
上記の脚式ロボットとその歩行制御方法では、ロボットの実際の体幹運動をモニタリングし、目標とする体幹運動との偏差から、目標とする体幹運動を記述する体幹歩容データの補正量を求める。体幹運動が直接にフィードバック制御されることから、体幹運動が安定化する。ロボットはバランスを崩すことなく、安定して歩行しつづけることができる。
実験によって、実際の体幹運動をモニタリングしてフィードバック制御することによって、ＺＭＰ位置を実測してフィードバック制御しなくても、歩行しつづけられることが確認されている。外乱力等が作用しても歩行しつづけられることが確認されている。
この制御方式によると、ＺＭＰ位置を実測する必要がなく、そのための力センサを必要としない。信頼性の高い歩行ロボットを安価に実現することができる。
【０００８】
偏差算出手段が、目標とする体幹加速度と実際の体幹加速度との偏差を算出することが好ましい。この場合、加速度の偏差から、ロボットに作用した予期せぬ外乱力の大きさを計算することができる。そこで外乱力を補償するだけの力をロボットに発揮させるのに必要な目標体幹運動の補正量を計算することが可能となる。補正量算出過程では、加速度偏差から計算される外乱力と所定の伝達関数に基づいて補正量を求める。
計算された補正量で補正された目標体幹運動をロボットに指示すると、ロボットは外乱力の影響を補償しながら歩行を続けることができる。比較的容易に体幹に加速度センサを搭載することができることから、この方式は非常に実際的である。
【０００９】
加速度偏差から伝達関数を利用して目標体幹位置の補正量を計算する場合には、伝達関数が比例要素を含むことが好ましい。この場合、実際の体幹位置が目標体幹位置からずれた場合に、そのずれに比例する補正量が計算され、結果的には目標体幹位置に向けてバネで引き寄せる現象が得られる。
伝達関数が比例要素の他に、１次遅れ要素または２次遅れ要素あるいはその双方を含むことがさらに好ましい。この場合、実際の体幹位置が目標体幹位置からずれた場合に、位置のずれの変化速度および／または加速度に比例する補正量が計算され、結果的には目標体幹位置に向けて収束させる現象が得られる。
【００１０】
実際の体幹位置が検出できる場合には、加速度偏差に基づいて補正した目標体幹位置と実際の体幹位置の偏差にフィードバック処理を施した量を加算することによって目標体幹位置をさらに補正することが好ましい。
この場合、ロボットが不整地を歩行してロボットの全体が傾斜しても、実際の体幹位置を目標体幹位置にフィードバック制御することができ、簡単な機構でロボットが不整地を安定して歩行できるようになる。
【発明の効果】
【００１１】
この発明によると、足先に力センサを用いずに、安定して歩行しつづける脚式ロボットを実現することができる。安価に信頼性の高い脚式ロボットを実現することができる。
【発明を実施するための最良の形態】
【００１２】
（実施例１）
図１に示すロボット６は、右脚が接地している間に左脚を遊脚として軌道７のように移動させ、左脚が接地すると今度は右脚を遊脚として軌道８のように移動させ、以下同様に、左脚を遊脚として軌道９のように移動させ、次には右脚を遊脚として軌道１０のように移動させて歩行を続ける。
ロボット６が歩行を続けるためには、足先基準点Ｌ，Ｒの軌道７，８，９，１０を記述する足先軌道データや、腕先軌道データや、体幹１２の基準点Ｗの軌道を記述する体幹軌道データで構成される歩容データが必要とされる。足先軌道データはオペレータが指定する。腕先軌道データは足先軌道データに対応して計算される。体幹軌道データは、ロボットの力学モデルを用いて計算されるＺＭＰ軌道が目標ＺＭＰ軌道に一致する関係に設定される。
ロボット６の歩行を制御するために、ロボット６の体幹１２にコンピュータ装置１４が搭載されている。コンピュータ装置１４は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスク等を有する。コンピュータ装置１４のハードウェア構成は汎用のコンピュータと同じであり、説明は省略する。コンピュータ装置１４は歩容データを記憶しており、それに基づいてロボット６の関節群を制御する。
本実施例では、図１に示すように、ロボット６の歩行方向をｘ軸とし、体側方向をｙ軸とし、高さ方向をｚ軸とする。
【００１３】
図２は、コンピュータ装置１４の機能をブロック化して示す図である。図２に示す要素のうち、ロボットの機械系２１６および体幹加速度センサ２１８を除いた部分がコンピュータ装置１４の構成要素である。コンピュータ装置１４は、全体が物理的に１つの装置に含まれていてもよいし、物理的に分離された装置ごとに分けて収容されていてもよい。
【００１４】
歩容データ記憶装置２１０には、予め計算されたロボット６の歩容データが記憶されている。歩容データとは、腕先軌道データ（腕先歩容データ）、足先軌道データ（足先歩容データ）と体幹軌道データ（体幹歩容データ）のことをいう。予め記憶されている歩容データのうち、腕先軌道データと足先軌道データは、関節角群計算装置２１２へ直接に入力される。体幹歩容データは、体幹歩容データ補正演算部２２２へ入力され、ロボット６の歩行に伴いその都度補正され、補正された体幹軌道を示すデータが関節角群計算装置２１２へ入力される。
【００１５】
関節角群計算装置２１２は、入力された歩容データに基づいて、いわゆる逆キネマティクスを解くことでロボット６の各関節角θ１（ｔ）、θ２（ｔ）、θ３（ｔ）、・・・を計算する。計算された関節角群データは、アクチュエータ制御部２１４に入力される。
【００１６】
アクチュエータ制御部２１４は、図１のロボット６の関節群を回転させるアクチュエータ群を制御する。アクチュエータ群はロボットの機械系２１６に存在している。アクチュエータ群を制御すると、ロボット６の関節角を計算された関節角に調整できる。ロボット６は歩容データに従って歩行する。
【００１７】
体幹１２には体幹加速度センサ２１８が搭載されており、体幹のｘ方向（歩行方向）とｙ方向（体側方向）とｚ方向（高さ方向）の加速度を検出する。体幹加速度計算装置２２０は、体幹加速度センサ２１８で検出された実際の体幹加速度ａｘｒ、ａｙｒ、ａｚｒを体幹歩容データ補正演算部２２２へ出力する。
【００１８】
体幹歩容データ補正演算部２２２は、歩容データ記憶装置２１０に記憶されている体幹軌道データ（体幹歩容データ）と、体幹加速度計算装置２２０で計算されたロボットの実際の体幹加速度に基づいて、体幹軌道データの補正を行う。体幹軌道データの補正の詳細については後述する。補正された体幹軌道データは、関節角群計算装置２１２へ入力される。
【００１９】
図３は、体幹歩容データ補正演算部２２２の詳細を示したブロック線図である。図３では図示の明瞭化のために、ｘ方向の事象のみを図示している。ｙ方向とｚ方向についても同様である。足先軌道データと腕先軌道データは、補正されないで直接に関節角群計算装置２１２に指示される。
体幹歩容データ補正演算部２２２では、歩容データ記憶装置２１０に記憶されている体幹歩容データが示す目標体幹位置ｘｏ、ｙｏ、ｚｏ（それぞれは経時的に変化する）を、時間に関して二階微分演算を行う装置３０４によって、目標体幹加速度ａｘｏ、ａｙｏ、ａｚｏを算出する。
偏差演算装置３１２では、実際の体幹加速度ａｘｒ、ａｙｒ、ａｚｒから、目標体幹加速度ａｘｏ、ａｙｏ、ａｚｏを減じて、加速度偏差Δａｘ、Δａｙ、Δａｚを算出する。
外乱力算出装置３１０は、算出された加速度偏差Δａｘ、Δａｙ、Δａｚに、ロボットの質量Ｍを乗じることによって、ロボットに作用したと推定される外乱力Ｄｒｘ、Ｄｒｙ、Ｄｒｚの大きさを算出する。ロボットの関節等にガタがあったり、制御に応答遅れがあったり、外界から外力が加わると、実際の体幹加速度が目標とする体幹加速度にならず、予期せぬ外乱力によって加速度偏差Δａｘ、Δａｙ、Δａｚが生じる。加速度偏差Δａｘ、Δａｙ、Δａｚから、ロボットに作用した外乱力Ｄｒｘ、Ｄｒｙ、Ｄｒｚの大きさを算出することができる。
【００２０】
目標補正量算出装置３０８は、算出された外乱力Ｄｒｘ、Ｄｒｙ、Ｄｒｚを入力し、伝達関数１／Ｇ（ｓ）に基づいて、目標体幹位置の補正量ｘｄ、ｙｄ、ｚｄを求める。伝達関数１／Ｇ（ｓ）は、２次の項の係数をＭｉ、１次の項の係数をＣｉ、０次の項の係数をＫｉとする遅れ要素からなる。Ｍｉ、Ｃｉ、Ｋｉは所望のパラメータであり、予め指定されている。目標補正量算出装置３０８の処理は、たとえばｘ方向について、
Ｄｒｘ＝Ｍｉ・ｘｄ（２）＋Ｃｉ・ｘｄ（１）＋Ｋｉ・ｘｄ（０）
の微分方程式を解いてｘｄを求めることに相当する。ここで、（２）は時間に関する２階微分を示し、（１）は時間に関する１階微分を示し、（０）はｘｄ自身を示す。
なお補正量ｘｄの符号のとり方によっては、
−Ｄｒｘ＝Ｍｉ・ｘｄ（２）＋Ｃｉ・ｘｄ（１）＋Ｋｉ・ｘｄ（０）
と表現する方が正しいこともある。
【００２１】
目標体幹位置補正装置３０６は、歩容データ記憶装置２１０に記憶されている補正前の目標体幹位置ｘｏ、ｙｏ、ｚｏに、補正量ｘｄ、ｙｄ、ｚｄを加算して、補正後の目標体幹位置ｘｒｅｆ、ｙｒｅｆ、ｚｒｅｆを算出し、関節角群計算装置２１２へ指示する。
【００２２】
上記した目標体幹軌道データを補正する制御則がもたらす作用を説明する。
図４はロボットの力学モデルを示す。体幹１２が目標体幹位置にあるときの体幹を４０２で示し、目標体幹位置から外れたときの体幹を４０４で示す。
図４の（１）式はロボットの一般的な運動方程式を示す。Ｆは体幹に作用する全外力、Ｍは体幹の質量、ａは体幹の加速度を示す。
体幹には歩行に適切な理想軌道（目標軌道）が存在する。目標軌道は、ロボットに外乱力が作用しない限り、目標ＺＭＰに一致するＺＭＰを実現する体幹軌道である。
（２）式は目標体幹軌道に沿って運動するロボットの体幹４０２の運動方程式を示す。Ｆｏは体幹４０２に作用する全外力、ａｏは体幹４０２の目標加速度を示す。
Ｆｏは目標体幹軌道を運動するときに体幹４０２に作用する全外力であり、ロボットが理想的な歩行をする状態で脚リンクから体幹に作用する内力およびロボットの体幹に作用する重力の合力である。
実際の体幹の運動は、予測できない路面の凹凸や、ロボットの構造上のたわみなど、外乱力の影響を受けるため、目標体幹軌道のとおりに制御することは困難である。実際の体幹の運動を実軌道と呼ぶ。
（３）式は実軌道に沿って運動するロボットの体幹４０４の運動方程式を示す。Ｆｒは体幹４０４に作用する全外力、ａｒは体幹４０４の実際の加速度を示す。
（４）式はロボットの体幹に作用する外乱力の推定式を示す。Ｄｒはロボットに作用する外乱力が体幹の運動に及ぼす影響を、体幹の重心に作用する外力で表現した外乱力を示す。Ｆｏは目標体幹軌道を運動するときに体幹に作用する全外力であり、ロボットが理想的な歩行をする状態で脚リンクから体幹に作用する内力およびロボットの体幹に作用する重力の合力である。Ｆｒは実軌道を運動する体幹に作用している全外力であり、ロボットが理想的な歩行をする状態で脚リンクから体幹に作用する内力、ロボットの体幹に作用する重力と外乱力の合力である。したがって、ＦｒとＦｏの差をとることによって、体幹に作用する外乱力Ｄｒを推定することができる。
（５）（６）式は、実施例で用いる目標体幹位置の補正量ｘｄを算出する式を示す。伝達関数Ｇ（ｓ）は、図５に示す「ばね−質点―ダンパ系」を記述している。
【００２３】
図５は、目標体幹位置を補正することによって、理想軌道へ復帰させる力がロボットの体幹に加わる関係を、模式的に示した図である。
補正前の目標体幹位置５１０は、目標ＺＭＰに一致するＺＭＰを実現する理想的な体幹位置である。
実際には、外乱力Ｄｒが作用したために、実際の体幹位置５１２は目標体幹位置５１０からずれている。
補正後の目標とする体幹位置５０６は、補正前の目標体幹位置５１０からｘｄだけ離れた点である。
目標体幹位置を（６）で補正すると、補正後の目標体幹位置５０６と補正前の目標体幹位置５１０がばね定数Ｋｉのばね５０２と、減衰係数Ｃｉのダンパ５０８を介して結合され、補正後の目標体幹位置５０６に質量Ｍｉの質点５０４を有し、実際の体幹位置５１２に外乱力Ｄｒが作用しているという「ばね−質点―ダンパ系」と等価なものとなる。「ばね−質点−ダンパ系」の伝達関数１／Ｇ（ｓ）が、２次の項の係数Ｍｉ、１次の項の係数Ｃｉ、０次の項の係数Ｋｉで示される遅れ要素を含んでおり、急激な変動をする外乱力に対して目標体幹位置に復帰させる復帰力を発揮させるとともに、急激な位置変動を抑制するショックアブゾーバーの役割を果たす。
０次の係数Ｋｉは、外乱力Ｄｒに比例する目標体幹位置の補正量を導出する。１次の係数Ｃｉは外乱力Ｄｒの１次遅れ要素に比例する目標体幹位置の補正量を導出する。２次の係数Ｍｉは、外乱力Ｄｒの２次遅れ要素に比例する目標体幹位置の補正量を導出する。
このうち、比例要素の係数Ｋｉは不可欠であるが、１次遅れ要素の係数Ｃｉと２次遅れ要素の係数Ｍｉの一方又は双方を省略することができる。１次遅れ要素の係数Ｃｉと２次遅れ要素の係数Ｍｉの一方又は双方をゼロにしても、ロボットは安定して歩行しつづけることが確認されている。
【００２４】
図６に目標体幹運動を補正する効果を模式的に示す。
図６（ａ）は、目標体幹運動の補正を行わないロボットが歩行する様子を示す。外乱力Ｄｒが体幹に作用すると、ロボットの体幹位置６０２は外乱力Ｄｒに追従して理想軌道から外れる。外乱力が急激な変化をする場合には、実際の体幹運動も急激に変化するため、歩行は不安定になる。
図６（ｂ）は、目標体幹運動を補正するロボットが歩行する様子を示す。ロボットに外乱力Ｄｒが作用すると、外乱力Ｄｒが作用した方向と反対側に目標体幹位置をｘｄだけ補正する。その結果、質量Ｍｉの質点を加速度ｘｄ（２）で反対側に運動させたのと同じ力を発生させる。ロボットには、質量Ｍｉの質点との間を、ばね定数Ｋｉのばね５０２と減衰係数Ｃｉのダンパ５０８を介して結合し、質量Ｍｉの質点を距離ｘｄだけ離したときと同様の力が作用する。この力が外乱力Ｄｒを補償する。ロボットの体幹位置は、目標体幹位置に向かって復帰する。補正前の目標体幹位置に接近すると、補正量ｘｄも小さくなる。ロボットの実際の体幹位置は、目標体幹位置を補正することによって、補正前の目標体幹位置に復帰する。
ロボットの動力学特性の面からみると、遅れ要素６１０を介して外乱力Ｄｒを補償することとなり、バネとショックアブゾーバーを利用して、ロボットを目標位置６０６の近傍に維持することに相当する。
等価な力学系から明らかに、本実施例の制御技術によると、外乱力を補償するための制御から急激な変動が除去されており、限られた能力のアクチェエータで対応することができる。ロボットは、急激に変動することなく、目標とする体幹軌道によく追従することができる。実際にテストしてみると、ロボットの体幹が安定して歩行することを確認することができる。観測する者は、安心してロボットが歩行する様子を観測することができる。
【００２５】
図７はロボット６の歩行制御方法の処理手順を示す。
ステップＳ２では、目標とする足先位置、腕先位置と体幹位置の経時的変化を記述する歩容データを歩容データ記憶装置２１０に記憶する。
ステップＳ４で、ロボットは歩行を開始する。歩行を開始すると、ロボット６はステップＳ８以下を繰返して実行する。すなわち、所定時間（Δｔ）ごとにステップＳ８からステップＳ１６の処理を繰返し実行する。
ステップＳ８では、目標とする体幹運動と実際の体幹運動との差に基づいて、ロボットの歩行が安定するように、目標とする体幹運動を記述するデータ（体幹歩容データ）を補正する。ステップＳ８で行う処理の詳細は後述する。
ステップＳ１２では、歩容データ記憶装置２１０に記憶されている足先軌道データおよび腕先軌道データと、ステップＳ８で補正された体幹軌道データを、関節角群計算装置２１４に入力する。
ステップＳ１４では、関節角群計算装置２１２によって、入力された歩容データに基づいて、ロボット６の各関節の関節角を計算する。計算された関節角群データは、ロボットのアクチュエータ制御部２１４に指示される。アクチュエータ制御部２１４は、ロボット６の各関節を回転させるアクチュエータ群を制御する。これにより、ロボット６の関節角が計算値に調整される。
すでに述べたように、ステップＳ８からステップＳ１６の処理は、所定時間（時間間隔Δｔ）ごとに繰り返し実行される（ステップＳ６）。
【００２６】
図８はステップＳ８の体幹歩容データ補正演算の処理手順を詳細に示す。
ステップＳ２２では、歩容データ記憶装置２１０に記憶されている体幹歩容データから、目標とする体幹加速度を算出する。
ステップＳ２４では、体幹加速度センサ２１８の検出値を取り込む。
ステップＳ２６では、体幹加速度計算装置２２０によって、体幹加速度センサ２１８の検出値から実際の体幹加速度を求める。
ステップＳ２８では、偏差演算装置３１２によって、目標とする体幹加速度と実際の体幹加速度との偏差を求める。
ステップＳ３０では、外乱力算出装置３１０によって、算出された加速度偏差からその加速度偏差をもたらした外乱力Ｄｒの大きさを求める。
ステップＳ３２では、目標補正量算出装置３０８によって、外乱力Ｄｒの大きさと伝達関数１／Ｇ（ｓ）に基づいて、体幹位置補正量を算出する。
ステップＳ３４では、補正装置３０６によって、歩容データ記憶装置２１０に記憶されている補正前の目標体幹位置に体幹位置補正量を加えて、補正後の目標体幹位置を算出し、関節角群計算装置２１２へ指示する。
【００２７】
コンピュータ装置１４の一部ないし全部をロボット外に搭載することもできる。例えば歩容データ記憶装置２１０と体幹歩容データ補正演算部２２２をロボット外におくことができる。この場合には、ロボットで検出された実際の体幹加速度を無線あるいは有線信号で体幹歩容データ補正演算部２２２に送り、補正された歩容データを無線あるいは有線信号でロボットに送る。関節角群計算装置２１２をもロボット外に搭載してもよい。計算された関節角データを有線または無線信号でアクチュエータ制御部２１４へ伝達する。
本実施例の歩行ロボットは、足先に力センサがなくても、外乱力に抗して体幹を安定させて歩行しつづける。
上記では、体幹の傾斜角度については予定されている変化パターンに従って変化するものとしている。体幹歩容データは、体幹の傾斜角度が予定されている変化パターンに従って変化したときに、実際ＺＭＰを目標ＺＭＰに一致させる体幹位置に関するデータのみを含んでいる。これに対して、実際ＺＭＰを目標ＺＭＰに一致させる「体幹位置と体幹傾斜角度」を算出し、これを体幹歩容データとしておいてもよい。
体幹傾斜角度については、予定されている変化パターンであることもあれば、算出された変化パターンであることもあるが、いずれにしても目標とする体幹傾斜角度の経時的変化を示すデータが与えられている。ここでいう体幹傾斜角度は、ｘ軸回りの傾斜角度とｙ軸回りの傾斜角度を言う。
本発明の技術は、体幹位置のみならず体幹角度についても有効である。目標体幹角度の時間に関する２階微分値（角加速度）と実際体幹角度の角加速度の偏差を算出し、その偏差に比例する角度と、偏差の一次微分に比例する角度、偏差の二次微分に比例する角度を算出し、それらから目標体幹角度の補正量を計算するようにすれば、外乱力の影響によって体幹角度が目標体幹角度からずれることを補償することができる。本発明は、体幹位置や体幹傾斜角度等の体幹の位置と姿勢に関する運動に関して一般的に適用することができる。
【００２８】
（実施例２）
ロボットが、体幹位置を検出する装置を搭載していることがある。例えばジャイロを搭載していれば、実際の体幹加速度のみならず実際の体幹位置まで検出することができる。ＧＰＳ計測センサを搭載していても、実際の体幹位置を検出することができる。体幹加速度を積分することによって体幹速度を求め、さらに積分することによって体幹位置を検出することもできる。
ロボットが実際の体幹位置を検出することができる場合、フィードバック制御ループを活用することができる。フィードバック制御ループを活用すると、ロボットが不整地を歩行したためにロボットが全体として傾斜する場合にも対応することが可能となる。以下では実施例２の説明を行うが、実施例１と相違する点のみを説明する。
図９は、実施例２のロボットのコンピュータ装置の機能をブロック化して示しており、体幹歩容データ補正演算部２２４には、実際の体幹加速度と実際の体幹位置の双方が入力される。
図１０は、体幹歩容データ補正演算部２２４の詳細を示したブロック線図である。図３では図示の明瞭化のために、ｘ方向の事象のみを図示している。ｙ方向とｚ方向についても同様である。
体幹位置センサ９０４がロボットに搭載されているために、実際の体幹位置が計測される。体幹加速度計算装置２２０は、実際の体幹位置を時間に関して二階微分し、実際の体幹加速度を求める。求められた体幹加速度に基づいて実施例１と同様の処理が実行され、加速度偏差に基づいた補正量ｘｄが計算される。
補正前の目標体幹位置ｘｏを加速度偏差に基づいた補正量ｘｄで補正した補正後の目標体幹位置ｘｏ＋ｘｄは、偏差算出装置９０６に入力され、実際の体幹位置ｘｒとの偏差ｘｏ＋ｘｄ−ｘｒが計算される。体幹位置の偏差ｘｏ＋ｘｄ−ｘｒは、フィードバック処理ブロック９０８に入力され、伝達関数Ｃ（ｓ）を用いて処理される。偏差ｘｏ＋ｘｄ−ｘｒを伝達関数Ｃ（ｓ）を用いて処理した値Ｃ（ｓ）（ｘｏ＋ｘｄ−ｘｒ）は、加速度偏差に基づいた補正量で補正した目標体幹位置ｘｏ＋ｘｄに加えられることによって、目標体幹位置をさらに補正する。最終的に補正された目標体幹位置は、ｘｏ＋ｘｄ＋Ｃ（ｓ）（ｘｏ＋ｘｄ−ｘｒ）に補正される。
図１１は、実施例２の体幹歩容データ補正演算の処理手順を示したものである。
ステップＳ５４では、体幹位置センサ９０４の検出値を取り込む。
ステップＳ５６では、体幹位置センサ９０４の検出値から、実際の体幹位置と、実際の体幹加速度を検出する。
ステップＳ５８では、補正前の目標体幹位置ｘｏを加速度偏差に基づいた補正量ｘｄで補正した目標体幹位置ｘｏ＋ｘｄと、実際の体幹位置ｘｒとの偏差ｘｏ＋ｘｄ−ｘｒを計算する。
ステップＳ６０では、それに伝達関数Ｃ（ｓ）を処理して、フィードバック処理量Ｃ（ｓ）（ｘｏ＋ｘｄ−ｘｒ）を計算する。
ステップＳ６２では、関節角群計算装置に指示する目標体幹位置ｘｒｅｆを、ｘｏ＋ｘｄ＋Ｃ（ｓ）（ｘｏ＋ｘｄ−ｘｒ）に補正する。
【００２９】
実施例２に示す脚式ロボットは、偏差ｘｏ＋ｘｄ−ｘｒを計算し、その偏差が小さくなる側にフィードバック制御することから、ロボットが不整地を歩行してロボットが全体として傾斜する場合でも、目標体幹位置に向けてフィードバック制御することができる。
体幹位置センサは、体幹の傾斜角を実測するジャイロであってもよい。ジャイロで体幹の実際の姿勢角が判明すると、接地脚の足平中心から体幹の重心までの距離Ｒを乗じることによって、接地脚の足平中心に対する体幹位置を実測することができる。
【００３０】
以上、本発明の実施形態について詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。例えば、歩容データには、時間と位置で経時的変化を記述する実施例を紹介したが、時間と速度、あるいは時間と加速度の関係で、足先や腕先や体幹の運動の経時的変化を記述してもよい。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合わせによって技術的有用性を発揮するものであり、出願時請求項記載の組合わせに限定されるものではない。また、本明細書または図面に例示した技術は複数の目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである
【図面の簡単な説明】
【００３１】
【図１】脚式移動ロボットの歩行の概略を示す図。
【図２】実施例１のコンピュータ装置の機能をブロック化して示す図。
【図３】実施例１の体幹歩容データ補正演算部の機能をブロック化して示す図。
【図４】体幹の力学モデルを示す図。
【図５】体幹に作用する理想軌道への復元力を模式的に示す図。
【図６】目標体幹運動の補正が体幹の運動にもたらす効果を模式的に示す図。
【図７】実施例１のロボットの歩行制御方法の処理手順を示す図。
【図８】実施例１の体幹歩容データの補正演算の処理手順を示す図。
【図９】実施例２のコンピュータ装置の機能をブロック化して示す図。
【図１０】実施例２の体幹歩容データ補正演算部の機能をブロック化して示す図。
【図１１】実施例２の体幹歩容データの補正演算の処理手順を示す図。
【符号の説明】
【００３２】
６・・・脚式ロボット
７，８，９，１０・・・足先軌道
１２・・・体幹
１４・・・コンピュータ装置
２１０・・・歩容データ記憶装置
２１２・・・関節角群計算装置
２１４・・・アクチュエータ制御部
２１６・・・ロボットの機械系
２１８・・・体幹加速度センサ
２２０・・・体幹加速度計算装置
２２２・・・体幹歩容データ補正演算部
３０４・・・二階微分演算装置
３０６，９０７・・・補正装置
３０８・・・目標補正量算出装置
３１０・・・外乱力算出装置
３１２，９０６・・・偏差演算装置
４０２・・・目標軌道に沿って運動するロボットの体幹
４０４・・・実軌道に沿って運動するロボットの体幹
５０２・・・ばね
５０４・・・質点
５０６，６０４・・・補正後の体幹位置
５０８・・・ダンパ
５１０，６０６・・・理想的な体幹位置
５１２・・・実際の体幹位置
６０２・・・補正を行わない場合の体幹位置
６０８・・・外乱力作用点
６１０・・・遅れ要素
９０４・・・体幹位置計測センサ
９０８・・・フィードバック処理ブロック
【図１】
2008229845.tif 000003
【図２】
2008229845.tif 000004
【図３】
2008229845.tif 000005
【図４】
2008229845.tif 000006
【図５】
2008229845.tif 000007
【図６】
2008229845.tif 000008
【図７】
2008229845.tif 000009
【図８】
2008229845.tif 000010
【図９】
2008229845.tif 000011
【図１０】
2008229845.tif 000012
【図１１】
2008229845.tif 000013
【手続補正書】
【提出日】平成20年7月4日(2008.7.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
体幹と、体幹に対して揺動可能に連結されている脚リンクと、目標とする足先運動の経時的変化を記述する足先歩容データの記憶手段と、目標足先運動の変化に追従して歩行を可能とする目標とする体幹運動の経時的変化を記述する体幹歩容データの記憶手段を備えており、足先歩容データと体幹歩容データに従って歩行動作を行う脚式ロボットであって、
実際の体幹の加速度を検出する体幹加速度検出手段と、
体幹歩容データから目標とする体幹の加速度を取得する体幹加速度取得手段と、
目標とする体幹加速度と実際の体幹加速度の偏差を算出する加速度偏差算出手段と、
体幹加速度の偏差を補償するための体幹運動に関する補正量を求め、その補正量に基づいて体幹歩容データを補正する補正手段を備えている脚式ロボット。
【請求項２】
前記補正手段が、二次遅れ要素を含む伝達関数を用いて、体幹加速度の偏差から補正量を算出する請求項１の脚式ロボット。
【請求項３】
実際の体幹の位置を検出する体幹位置検出手段と、
前記補正手段によって補正された体幹歩容データから補正後の目標とする体幹位置を取得する体幹位置取得手段と、
補正後の目標とする体幹位置と実際の体幹位置の偏差を算出する位置偏差算出手段と、
体幹位置の偏差を補償するための体幹運動に関する第２の補正量を求め、その第２の補正量に基づいて体幹歩容データをさらに補正する第２補正手段を備えている請求項１または２の脚式ロボット。
【請求項４】
目標とする足先運動の経時的変化を記述する足先歩容データを記憶する工程と、
目標足先運動の変化に追従して歩行を可能とする目標とする体幹運動の経時的変化を記述する体幹歩容データを記憶する工程と、
足先歩容データと体幹歩容データに従って歩行動作を行っている間に、
（１）実際の体幹の加速度を検出する工程と、
（２）体幹歩容データから目標とする体幹の加速度を取得する工程と、
（３）目標とする体幹加速度と実際の体幹加速度の偏差を算出する工程と、
（４）体幹加速度の偏差を補償するための体幹運動に関する補正量を求める工程と、
（５）補正量に基づいて体幹歩容データを補正する工程を備えている脚式ロボットの歩行制御方法。
【請求項５】
前記補正量を求める工程において、二次遅れ要素を含む伝達関数を用いて、体幹加速度の偏差から補正量を計算する請求項４の脚式ロボットの歩行制御方法。
【請求項６】
足先歩容データと体幹歩容データに従って歩行動作を行っている間に、さらに
（６）実際の体幹の位置を検出する工程と、
（７）補正された体幹歩容データから補正後の目標とする体幹位置を取得する工程と、
（８）補正後の目標とする体幹位置と実際の体幹位置の偏差を算出する工程と、
（９）体幹位置の偏差を補償するための体幹運動に関する第２の補正量を求める工程と、
（１０）第２の補正量に基づいて体幹歩容データをさらに補正する工程を備えている請求項４または５の脚式ロボットの歩行制御方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
本発明で創作された脚式ロボットは、体幹と、体幹に対して揺動可能に連結されている脚リンクを備えている。さらに、目標とする足先運動の経時的変化を記述する足先歩容データの記憶手段と、目標とする体幹運動の経時的変化を記述する体幹歩容データの記憶手段を備えている。目標とする体幹運動は、目標とする足先運動の変化に追従して歩行し続けることを可能とする関係に設定されている。例えば、実際のＺＭＰを目標足先位置の変化に追従する目標ＺＭＰに一致させる体幹運動が記憶されている。
本発明のロボットは、さらに、実際の体幹の加速度を検出する体幹加速度検出手段と、体幹歩容データから目標とする体幹の加速度を取得する体幹加速度取得手段と、目標とする体幹加速度と実際の体幹加速度の偏差を算出する加速度偏差算出手段と、体幹加速度の偏差を補償するための体幹運動に関する補正量を求め、その補正量に基づいて体幹歩容データを補正する補正手段を備えている。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
本発明を歩行制御方法として理解することも可能である。本発明の歩行制御方法では、目標とする足先運動の経時的変化を記述する足先歩容データを記憶する工程と、目標とする体幹運動の経時的変化を記述する体幹歩容データを記憶する工程を実施する。目標とする体幹運動は、目標とする足先運動の変化に追従して歩行し続けることを可能とする関係に設定されている。例えば、実際のＺＭＰを目標足先位置の変化に追従する目標ＺＭＰに一致させる体幹運動が記憶される。
本発明の歩行制御方法では、足先歩容データと体幹歩容データに従って歩行動作を行っている間に、（１）実際の体幹の加速度を検出する工程と、（２）体幹歩容データから目標とする体幹の加速度を取得する工程と、（３）目標とする体幹加速度と実際の体幹加速度の偏差を算出する工程と、（４）体幹加速度の偏差を補償するための体幹運動に関する補正量を求める工程と、（５）補正量に基づいて体幹歩容データを補正する工程を実施する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
上記の脚式ロボットとその歩行制御方法では、ロボットの実際の体幹加速度をモニタリングし、目標とする体幹加速度との偏差から、目標とする体幹運動を記述する体幹歩容データの補正量を求める。体幹運動が直接にフィードバック制御されることから、体幹運動が安定化する。ロボットはバランスを崩すことなく、安定して歩行し続けることができる。
実験によって、実際の体幹加速度をモニタリングしてフィードバック制御することによって、ＺＭＰ位置を実測してフィードバック制御しなくても、歩行し続けられることが確認されている。外乱力等が作用しても歩行し続けられることが確認されている。
この制御方式によると、ＺＭＰ位置を実測する必要がなく、そのための力センサを必要としない。信頼性の高い歩行ロボットを安価に実現することができる。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
上記の脚式ロボットとその歩行制御方法では、目標とする体幹加速度と実際の体幹加速度との偏差を補償するための体幹運動に関する補正量を求める。体幹加速度の偏差は、ロボットに作用した予期せぬ外乱力の大きさに応じたものであるから、体幹加速度の偏差を補償するような補正量を求めることは、外乱力を補償するだけの力をロボットに発揮させるのに必要な目標体幹運動の補正量を計算することに相当する。
計算された補正量で補正された目標体幹運動をロボットに指示すると、ロボットは外乱力の影響を補償しながら歩行を続けることができる。比較的容易に体幹に加速度センサを搭載することができることから、この方式は非常に実際的である。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
上記の脚式ロボットとその歩行制御方法では、体幹運動の補正量を算出する際に、二次遅れ要素を含む伝達関数を用いて、体幹加速度の偏差から補正量を算出することが好ましい。このような補正量を用いると、実際の体幹加速度と目標とする体幹加速度の偏差を仮想的なバネとダンパが吸収して、目標足先運動の変化に追従して歩行を可能とする目標体幹運動の経時的変化に徐々に収束していくような体幹運動が実現される。この場合、ロボットの実際の体幹運動を急激に変化させることがないので、歩行を不安定にすることなく、目標足先運動の変化に追従して歩行を可能とする目標体幹運動に復帰させることができる。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
上記の脚式ロボットは、実際の体幹の位置を検出する体幹位置検出手段と、前記補正手段によって補正された体幹歩容データから補正後の目標とする体幹位置を取得する体幹位置取得手段と、補正後の目標とする体幹位置と実際の体幹位置の偏差を算出する位置偏差算出手段と、体幹位置の偏差を補償するための体幹運動に関する第２の補正量を求め、その第２の補正量に基づいて体幹歩容データをさらに補正する第２補正手段を備えていることが好ましい。
上記の歩行制御方法では、足先歩容データと体幹歩容データに従って歩行動作を行っている間に、さらに（６）実際の体幹の位置を検出する工程と、（７）補正された体幹歩容データから補正後の目標とする体幹位置を取得する工程と、（８）補正後の目標とする体幹位置と実際の体幹位置の偏差を算出する工程と、（９）体幹位置の偏差を補償するための体幹運動に関する第２の補正量を求める工程と、（１０）第２の補正量に基づいて体幹歩容データをさらに補正する工程を実施することが好ましい。
このような脚式ロボットおよびその歩行制御方法によれば、ロボットが不整地を歩行してロボットの全体が傾斜しても、実際の体幹位置を目標体幹位置にフィードバック制御することができ、簡単な機構でロボットが不整地を安定して歩行できるようになる。