(57)【要約】【課題】ロボットの剛性を下げることなく、チューニングプロセスを簡単化できる制御技術を提供する。【解決手段】歩行ロボット８４は、左足先６２と腰１と右足先３２の位置を経時的に指示する歩容データに従って、左脚リンク４７と腰１と右脚リンク１７の相対位置関係を変化させて歩行する。歩行ロボット８４は、歩容データから、左脚リンク４７と腰１と右脚リンク１７で構成される機械系に存在する複数の関節の各関節角を計算する関節角群計算手段と、各関節の関節角を関節角群計算手段で計算された関節角に調整するアクチュエータと、遊脚の足先３２、６２が着地したことを検出する手段３０、６０と、着地検出手段０、６０により検出した着地タイミングが目標値よりも早い場合に、足先３２、６２の高さ方向の速度を遅らせるように歩容データを補正する手段とを備えている。【選択図】  図１
2005052896.tif 000002
【特許請求の範囲】
【請求項１】
左足先と腰と右足先の位置を経時的に指示する歩容データに従って、左脚リンクと腰と右脚リンクの相対位置関係を変化させて歩行するロボットであり、
歩容データから、左脚リンクと腰と右脚リンクで構成される機械系に存在する複数の関節の各関節角を計算する関節角群計算手段と、
各関節の関節角を関節角群計算手段で計算された関節角に調整するアクチュエータと、
遊脚の足先が着地したことを検出する手段と、
着地検出手段により検出した着地タイミングが目標値よりも早い場合に、足先高さ方向の速度を遅らせるように歩容データを補正する手段とを備える歩行ロボット。
【請求項２】
歩容データの高さ方向の補正量が、他の足先が床を離れるまでの間にゼロに復帰することを特徴とする請求項１に記載の歩行ロボット。
【請求項３】
歩行ロボットの足先が着地するタイミングと目標タイミングを比較する工程と、
そのタイミングが目標値よりも早い場合に、着地した足先位置を示す歩容データをその足先高さ方向の速度を遅らせるように補正する工程と、
補正された歩容データをロボットに指示することによってロボットを歩行させる工程とを備える歩行ロボットの制御方法。
【請求項４】
左足先と腰と右足先の位置を経時的に指示する歩容データを補正するプログラムであり、コンピュータに下記の処理、即ち、
左足先が着地したタイミングが目標値よりも早い場合に、左足先の位置を示す歩容データを左足先の高さ方向の速度が遅くなるように補正する処理と、
右足先が着地したタイミングが目標値よりも早い場合に、右足先の位置を示す歩容データを右足先の高さ方向の速度が遅くなるように補正する処理とを実行させる歩容データの補正プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】本発明は、歩行ロボットに関するものである。詳しくは、左脚リンクと腰と右脚リンクから構成される機械系を備え、その機械系に存在する複数の関節を利用して左脚リンクと腰と右脚リンクの相対位置関係を変化させることによって歩行するロボットの制御技術に関するものである。
【０００２】
【従来の技術】左脚リンクと腰と右脚リンクの相対位置関係を変化させて歩行するロボットが開発されている。通常、このようなロボットは、腰と左上腿が左股関節によって接続され、左上腿と左下腿が左膝関節によって接続され、左下腿と左足先が左足首関節によって接続されている。また、腰と右上腿が右股関節によって接続され、右上腿と右下腿が右膝関節によって接続され、右下腿と右足先が右足首関節によって接続されている。左脚リンクと腰と右脚リンクで構成される機械系には複数の関節が存在しており、その関節を利用して左脚リンクと腰と右脚リンクの相対位置関係を変化させる。
左脚リンクと腰と右脚リンクの相対位置関係を制御するために、歩容データが用いられる。歩容データは、左足先と腰と右足先の位置を指示するデータを経時的に記憶している。歩行ロボットは、歩容データに従って、左脚リンクと腰と右脚リンクの相対位置関係を経時的に変化させることによって歩行する。
【０００３】
歩容データは、左脚リンクと腰と右脚リンクの相対位置関係の変化を想定して作成される。具体的は、左脚リンクと右脚リンクの両足先が着地している状態から、一方の脚リンクの足先を上昇させながら前方に移動させ、次いで前方に移動させながら下降させることによって遊脚の足先を一歩進めて着地させる移動軌跡を記述する歩容データを作成する。遊脚となる足を左右交互に切換えながら、上記の相対位置関係の変化を繰り返す歩容データを用意することによって、歩行ロボットは歩行を続ける。
【０００４】
ロボットは、それ自身の重量によって構成部材が撓むことが避けられない。構成部材が撓むと、遊脚リンク（着地していない脚リンク）の足先の高さは、歩容データが指示するよりも下がってしまう。遊脚リンクの足先高さが歩容データが指示するよりも下がってしまうと、図１１に示されているように、歩容データが想定しているのよりも早いタイミングで足先が着地してしまう。すなわち、歩容データの上ではまだ着地しておらず、足先を下降させている途中で、足先が着地してしまう。遊脚リンクを下降させている途中で足先が着地してしまうと、ロボットは着地した後も着地脚リンクの足先を下降させつづけようとする。このため、結果的には、着地脚の足先が床を蹴って腰を持ち上げる動作となってしまう。着地後に着地脚をさらに伸ばすと（歩容データの上ではまだ着地していないので足を伸ばして着地させようとしている）、着地した足先が床を蹴る動作が現われ、着地衝撃が大きくなってしまう。着地衝撃が大きくなるとロボットの歩行動作が不安定になる。ロボットの高速歩行が妨げられる。
【０００５】
特許文献１や特許文献２には、着地衝撃を緩和する技術が記載されている。特許文献１には、足先にバネ機構を設けて着地衝撃を緩和する技術が開示されている。特許文献２には、足先に床反力検出手段を設け、検出された床反力を用いてロボットの歩行を制御して着地衝撃を緩和する技術が開示されている。
【０００６】
【特許文献１】
特開平５−３０５５８４号公報
【特許文献２】
特開平１１−３００６６０号公報
【０００７】
【発明が解決しようとする課題】足先にバネ機構を設けることによって着地衝撃を緩和しようとすると、立脚中のロボットの姿勢が不安定になってしまう。
検出された床反力を用いてロボットの歩行を制御する技術では、その制御係数を最適に調整するチューニングプロセスに時間と労力がかかる。ロボット毎にチューニングする必要があり、大変に面倒である。
そこで、本発明では、ロボットの剛性を下げることなく、チューニングプロセスを簡単化できる制御技術を創作した。
【０００８】
【課題を解決するための手段と作用】請求項１に記載の歩行ロボットは、左足先と腰と右足先の位置を経時的に指示する歩容データに従って、左脚リンクと腰と右脚リンクの相対位置関係を変化させて歩行するロボットであり、歩容データから、左脚リンクと腰と右脚リンクで構成される機械系に存在する複数の関節の各関節角を計算する関節角群計算手段と、各関節の関節角を関節角群計算手段で計算された関節角に調整するアクチュエータと、遊脚の足先が着地したことを検出する手段と、着地検出手段により検出した着地タイミングが目標値よりも早い場合に、足先高さ方向の速度を遅らせるように歩容データを補正する手段とを備えている。
上記の歩行ロボットでは、着地検出手段により検出した着地タイミングが目標値よりも早い場合に、足先高さ方向の速度を遅らせるように歩容データを補正する。遊脚リンクを下降させている途中で足先が着地してしまうと、着地脚をさらに伸ばす（歩容データの上ではまだ着地していないので足を伸ばして着地させようとしている）速度を減速させる。着地脚をさらに伸ばす速度を減速させると、着地脚が床を蹴る動作が抑制され、歩行ロボットの着地衝撃が緩和される。
【０００９】
請求項１に記載の歩行ロボットにおいて、歩容データの高さ方向の補正量が、他の足先が床を離れるまでの間にゼロに復帰することが好ましい（請求項２）。
着地脚の高さを補正したままにしておくと、着地脚を伸ばさないままに他方の足を持ち上げることになってしまい、歩容データが指示する歩行姿勢を維持できなくなってしまう。それを抑制するためには、歩容データの補正量（特に着地脚の足先の高さを指示する値の補正量）を他の足先が床を離れるまでの間にゼロに復帰させることが好ましい。すると、他の足先が床を離れるときには、歩容データが想定する姿勢に戻って歩行する。歩容データの補正量が蓄積され、歩行ロボットが次第にしゃがみ込んでしまうのが防止される。
【００１０】
請求項３の歩行ロボットの制御方法は、歩行ロボットの足先が着地するタイミングと目標タイミングを比較する工程と、そのタイミングが目標値よりも早い場合に、着地した足先位置を示す歩容データをその足先高さ方向の速度を遅らせるように補正する工程と、補正された歩容データをロボットに指示することによってロボットを歩行させる工程とを備えている。
上記の歩行ロボットの制御方法によれば、足先が着地するタイミングが目標値よりも早い場合に、着地した足先位置を示す歩容データをその足先高さ方向の速度を遅らせるように補正する。よって、歩行ロボットの着地衝撃が緩和される。
【００１１】
上記の制御方法を実施するには、歩容データを補正するプログラムが必要である。請求項４に記載の歩容データの補正プログラムは、コンピュータに下記の処理、即ち、左足先が着地したタイミングが目標値よりも早い場合に、左足先の位置を示す歩容データを左足先の高さ方向の速度が遅くなるように補正する処理と、右足先が着地したタイミングが目標値よりも早い場合に、右足先の位置を示す歩容データを右足先の高さ方向の速度が遅くなるように補正する処理とを実行させる。
このプログラムによると、足先が着地したタイミングが目標値よりも早い場合に、足先高さ方向の速度が遅くなるように歩容データが補正される。よって、歩行ロボットの着地衝撃が緩和される。
【００１２】
【発明の実施の形態】後述する実施例の主要な特徴を記載する。
（形態１）  足先に設けられている力センサによって、足先が着地したことを検出する。
【００１３】
【実施例】図１は、左脚リンク４７と腰１と右脚リンク１７から構成される機械系を備えた２足歩行ロボット８４の機械的構成を示す。
左脚リンク４７は、左上腿４８と左膝関節５０と左下腿５２と左足首関節５８と左足先６２を備える。左膝関節５０はピッチ軸ｙの回りの関節角が可変であり、左足首関節５８はピッチ軸ｙの回りの関節角とロール軸ｘの回りの関節角が可変である。図１では、図示の明瞭化のために、関節角を変えるアクチュエータによって関節が代表されている。例えば参照番号５０は、膝関節と膝関節の関節角を変えるアクチュエータに共通的に用いられる。参照番号５４は、足首関節５８のピッチ軸ｙの回りの関節角を変えるアクチュエータであり、参照番号５６は、ロール軸ｘの回りの関節角を変えるアクチュエータである。左足先６２には、左足先６２と床との間で作用する力、この場合、ロール軸ｘ方向の力と、ピッチ軸ｙ方向の力と、重力線ｚ方向の力と、ロール軸ｘ回りのモーメントと、ピッチ軸ｙ回りのモーメントと、重力線ｚ回りのモーメントを計測する６軸力センサ６０が取り付けられている
【００１４】
左右の脚リンク１７，４７は左右対称であり、右脚リンク１７は、右上腿１８と右膝関節２０と右下腿２２と右足首関節２８と右足先３２を備える。右膝関節２０は、ピッチ軸ｙの回りの関節角が可変である。右足首関節２８はピッチ軸ｙの回りの関節角を変えるアクチュエータ２４とロール軸ｘの回りの関節角を変えるアクチュエータ２６を備えている。右足先３２にも、６軸力センサ３０が取り付けられている。
腰１は、腰プレート８と腰柱４を備えており、両者の間には腰関節６が設けられている。腰柱４には、腰柱４のピッチ軸ｙの回りの傾斜角とロール軸ｘ回りの傾斜角と重力線ｚ軸回りの回転角を計測するジャイロ２が固定されている。腰柱４のピッチ軸ｙの回りの傾斜角とロール軸ｘの回りの傾斜角は、腰関節６が回転しても影響を受けない。
【００１５】
左脚リンク４７と腰１は、左股関節４６で接続されている。左股関節４６は、重力線ｚ軸の回りの関節角を変えるアクチュエータ４０と、ピッチ軸ｙの回りの関節角を変えるアクチュエータ４２と、ロール軸ｘの回りの関節角を変えるアクチュエータ４４を備えている。右脚リンク１７と腰１は、右股関節１６で接続されている。右股関節１６は、重力線ｚ軸の回りの関節角を変えるアクチュエータ１０と、ピッチ軸ｙの回りの関節角を変えるアクチュエータ１２と、ロール軸ｘの回りの関節角を変えるアクチュエータ１４を備えている。
【００１６】
図１の機械系で歩行する場合には、結果として歩行した結果が得られるように、左脚リンク４７と腰１と右脚リンク１７の相対位置関係を変化させなければならない。
このために、左足先６２と腰１と右足先３２の位置と姿勢を経時的に指示する歩容データが利用される。図２に示すように、歩容データは、ロボットが活動する空間の座標を定めるグローバル座標系において、左足先６２と腰１と右足先３２の位置と姿勢を指示する。左足先６２と腰１と右足先３２の位置を指示するために、左足先６２には基準点Ｌ０が定められており、右足先３２には基準点Ｒ０が定められており、腰１には基準点Ｗ０が定められている。左足先６２と腰１と右足先３２の姿勢を指示するために、左足先６２に垂直なベクトルＬが想定されており、右足先３２に垂直なベクトルＲが想定されており、腰柱４に沿って伸びるベクトルＷが想定されている。
【００１７】
図２に示すように、歩容データは、グローバル座標系において、左足先６２の基準点Ｌ０のｘ、ｙ、ｚ座標、右足先３２の基準点Ｒ０のｘ、ｙ、ｚ座標、腰１の基準点Ｗ０のｘ、ｙ、ｚ座標を指示する。また、左足先６２に垂直なベクトルＬのピッチ角Ｌαと、ロール角Ｌβと、ヨー角Ｌγを指示し、右足先３２に垂直なベクトルＲのピッチ角Ｒαと、ロール角Ｒβと、ヨー角Ｒγを指示し、腰柱４に沿って伸びるベクトルＷのピッチ角Ｗαと、ロール角Ｗβと、ヨー角Ｗγを指示する。図３に示すように、歩容データは、左足先６２と腰１と右足先３２の位置と姿勢を指示するデータを経時的（ｔ１、ｔ２、ｔ３・・・）に記憶している。経時的に変化する左足先６２と腰１と右足先３２の位置と姿勢を指示する歩容データに従って、左脚リンク４７と腰１と右脚リンク１７の相対位置関係を経時的に変化させることによってロボット８４は歩行する。
【００１８】
ロボットは、図４に示すように、左足先６２と腰１と右足先３２の位置と姿勢を指示する歩容データを入力して、左股関節４６のｚ軸回りの関節角とｙ軸回りの関節角とｘ軸回りの関節角と、左膝関節５０のｙ軸回りの関節角と、左足首関節５８のｙ軸回りの関節角とｘ軸回りの関節角と、右股関節１６のｚ軸回りの関節角とｙ軸回りの関節角とｘ軸回りの関節角と、右膝関節２０のｙ軸回りの関節角と、右足首関節２８のｙ軸回りの関節角とｘ軸回りの関節角を計算し、それぞれの関節角を変化させるアクチュエータ４０，４２，４４，５０，５４，５６，１０，１２，１４，２０，２４，２６の回転角を計算する関節角群計算手段７０を備えている。関節角群計算手段７０は、逆キネマティクスを解いて関節角群を計算する。関節角群計算手段７０は、ロボットの歩行動作とリアルタイムで関節角群を計算する。関節角群計算手段７０は、ロボットの外に配置し、計算された関節角群を無線または有線でロボットに送信して指示するものであってもよい。
【００１９】
歩容データは、予めオフラインで作成しておいてロボットにティーチングしておいてもよい。あるいは、ロボットを動作させながらリアルタイムで歩容データを作成することもできる。ロボットの動作を観測しながらジョイスティック等を操作してロボットの次の動作を指定することによって歩容データを作成することもできる。この場合、リアルタイムで作成された歩容データを無線または有線でロボットに送信し、ロボット内に搭載されている関節角群計算手段７０で関節角群をリアルタイムで計算する。あるいは、ロボット外に配置された関節角群計算手段７０で計算した関節角群を無線または有線でリアルタイムにロボットに送信してもよい。
【００２０】
ロボットに撓みがなければ、各アクチュエータを計算された回転角に調整することで、ロボットは歩容データで指示されたとおりに姿勢を変えて歩行するはずである。
しかしながら実際にはロボットは撓む。ロボットの撓み量は、種々の条件で変化する（例えば、ロボットが速く歩くと、上下方向に作用する力が大きくなるので、撓み量は大きくなる。例えば、ロボットが重いものを持つと、撓み量は大きくなる）。ロボットが撓むと、遊脚の足先の実際の高さは、歩容データが指示する高さよりも低くなる。遊脚の足先が下がってしまうと、足先は歩容データ上で遊脚が着地すると想定しているタイミングよりも早いタイミングで着地してしまう。即ち、歩容データでは遊脚の足先を下降させて着地させることを意図している途中に着地してしまう。遊脚の足先を下降させている動作の途中で遊脚の足先が着地すると、着地した後もロボットは腰１に対して遊脚の足先を下降させつづけることから、結果としては着地した脚の足先が床を蹴ってしまう。着地脚が床を蹴ると、着地時の衝撃が大きくなってロボットの動作が不安定になる。そのため、高速で歩行できないという問題が生じてしまう。また外観上は着地時に床を２回踏むように見え、違和感をもたらしている。
【００２１】
図５の（１）は補正前の歩容データの左足先６２の高さの経時的変化を示し、（２）は補正前の歩容データの右足先３２の高さの経時的変化を模式的に示している。着地してから次に床から離れるまでの間は、一定の高さに維持されるように指示している。床に着地している足先の高さは変化しないはずであることに対応している。歩容データが想定しているタイミングで実際に着地すれば、着地後にさらに着地脚を伸ばすために、その着地脚が床を蹴る動作は生じないはずである。
ロボットに撓みがなければ、各アクチュエータを計算された回転角に調整することで、ロボットは歩容データで指示されたとおりに姿勢を変えて歩行するはずである。しかしながらロボットは実際には撓むために、実際の足先の高さは、図５（１）（２）の歩容データが示すものからずれる。具体的には、遊脚の実際の足先高さが下方に移動し、歩容データが指示するほどには足先が持ち上げられない。それが着地タイミングをずらし、着地衝撃を大きなものにする。
【００２２】
それに対処するために、歩容データの補正手段８０が設けられている。図６は、補正手段８０と、それの周辺装置との接続状態を示している。補正手段８０には、補正前の歩容データが入力される。補正手段８０は、６軸力センサ３０、６０からの検出値に基づいて補正前の歩容データを補正し、補正後の歩容データを出力する。補正手段８０による歩容データの具体的な補正内容については、後述にて詳細に説明する。
補正手段８０で補正された歩容データは、制御手段８２に指令値として入力される。計測手段８８は、ロボット８４の現在の状態を示す値（現在値）を把握し、それを制御手段８２に出力する。制御手段８２は、補正手段８０からの指令値と、計測手段８８からの現在値を比較し、制御用の指令値に必要な補正を施す。そして制御手段８２は、必要な補正が施された指令値を関節角群計算手段７０に出力する。関節角群計算手段７０は、各アクチュエータの回転角、あるいは角速度を計算して各関節のアクチュエータ８６を制御する。制御手段８２は、いわゆる倒立振子モデルやならい制御モデルを利用して予期せぬ床の凹凸等の影響を吸収し、ロボット８４の転倒を防止する。
【００２３】
図７は、補正手段８０によって処理される補正処理のフローチャートである。この補正処理は、図３に示されている時間（ｔ１、ｔ２、ｔ３・・・）毎に実行される。補正処理の最初の処理Ｓ１２では、補正前の歩容データ（図５の（１）、（２））から、左脚立脚、両脚立脚、右脚立脚の別を判別する。左脚立脚とは、左脚のみが着地している状態（すなわち、右脚が遊脚である状態）である。両脚立脚とは、左脚と右脚が着地している状態である。右脚立脚とは、右脚のみが着地している状態（すなわち、左脚が遊脚である状態）である。ロボットは、左脚立脚、両脚立脚、右脚立脚、両脚立脚の状態を順番に繰り返すことによって歩行する。Ｓ１２では、具体的には、図５の歩容データの左足先６２と右足先３２の床に対する高さから、左脚立脚、両脚立脚、右脚立脚のいずれの状態であるかを判別する。
【００２４】
図８は、補正前の歩容データと、補正手段８０によって補正され後の歩容データを示している。図８の実線は補正前の歩容データであり、点線は補正された部分を示している。図７の補正処理のＳ１２において左脚立脚であると判別されるのは、例えば、図８でタイミングＡとして示されている時である。タイミングＡでは、左足先６２が着地しており、右足先３２は床から離れている。すなわち、左脚立脚の状態である。Ｓ１２において左脚立脚であると判別された場合には、Ｓ１４が実行される。なお、６軸力センサ３０、６０の検出値から、左脚立脚、両脚立脚、右脚立脚の別を判別することもできる。
Ｓ１４では、右足先３２が着地したか否かが判別される。この判別は、具体的には、右足先３２の６軸力センサ３０によって検出された力が所定値以上（例えば、ロボット８４の体重の１０％）の場合に右足先３２が着地したとする。タイミングＡでは、右足先３２は空中にあるので、当然ながら６軸力センサ３０によって所定値以上の力は検出されない。このため、Ｓ１４においてＮＯと判別されてリターンし、Ｓ１２の処理が再び実行される。
【００２５】
タイミングＡからさらに時間が経過すると、右足先３２は床に着地する。右足先３２が着地すると、Ｓ１４においてＹＥＳと判別され、Ｓ１５が行われる。Ｓ１５では、右足先３２が歩容データが指示しているタイミングよりも早く着地したか否かが判別される。Ｓ１５で右足先３２が歩容データが指示しているタイミングよりも早く着地していないと判別された場合（ＮＯの場合）には、リターンしてＳ１２以降の処理が再び実行される。Ｓ１５で右足先３２が歩容データが指示しているタイミングよりも早く着地したと判別された場合（ＹＥＳの場合）には、Ｓ１６に移行する。
図９は、図８の補正前の歩容データと補正後の歩容データについて、補正する部分を拡大して図示している。図９に示されているように、この時をタイミングＢとする。タイミングＢでは、ロボット８４が撓んでいるので、右足先３２は補正前の歩容データが指示するタイミングよりも早く着地してしまっている。右足先３２が着地すると、６軸力センサ３０が所定値以上の力を検出する。なお、足先の着地の検出は、足先の裏に設けた着地センサで行うようにしてもよい。
【００２６】
Ｓ１６では、歩容データの右足先３２の指示値が補正される。具体的には、右足先３２が着地したタイミングＢ以降、足先３２が腰１から遠ざかる速度を遅くする（足先３２の高さ方向の速度を遅くする）。遅くされた速度は一定値になる。このため、図８においては、補正された部分の歩容データは直線で示される。歩容データの補正量は、その後に左足先６２が床から離れる時（タイミングＣ）でゼロになる。すなわち、両脚立脚中に左脚リンク４７を伸ばし、タイミングＣの時点で補正前の歩容データが指示する高さに戻す。右足先３２が着地すると瞬時に右足先３２を腰１から遠ざける速度を遅くすると、右足先３２が床を蹴ってしまう動作が抑制される。よって、右足３２が着地することによる衝撃を緩和することができる。また、歩容データの補正量が左足先６２が床を離れるタイミングでゼロになると、ロボット８４は、それ以降歩容データが想定する姿勢に戻って歩行する。このため、歩行の継続に従って補正量が蓄積され、ロボット８４が次第にしゃがみ込んでしまうのが防止される。歩容データの補正量をゼロにするのは、必ずしも他方の足先６２、３２が床を離れるタイミングに限られない。図１０の線Ｅのように、他の足先６２、３２が床を離れるよりも前（タイミングＣよりも前）に、歩容データの補正量をゼロにすることもできる。
【００２７】
図１０の線Ｄのように、右足先３２が着地すると、右足先３２を腰１から遠ざける速度をゼロあるいはそれに近い値にし、その後に速度を早くして補正したカーブが補正前の歩容データと重なったタイミングで速度をゼロにするようにしてもよい。このようにすると、右足先３２の着地時の衝撃をより緩和できる。
Ｓ１６を行ってから、リターンして再びＳ１２を実行する。
Ｓ１２で右脚立脚であると判別された場合には、左足先６２に係るＳ１８以降の処理が行われるが、それらの処理は上述した右足先３２に係るＳ１４、Ｓ１６の処理と同様なので、これ以上の説明は省略する。
【００２８】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時の請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【００２９】
【発明の効果】本発明によると、歩行ロボットの機械系が撓んで予定しているよりも早期に足先が着地するために、足先が床を蹴ってしまう現象が抑制され、着地衝撃を緩和することができる。また、足先が床を２度踏むように見えることもなくなる。よって、ロボットの自然な姿勢による高速歩行が可能になる。
【図面の簡単な説明】
【図１】実施例に係るロボットの機械的構成図。
【図２】実施例に係る歩容データが用いる基準点と基準ベクトルの説明図。
【図３】実施例に係る歩容データの内容の模式図。
【図４】実施例に係る関節角群計算手段の入出力の説明図。
【図５】実施例に係る補正前の歩容データ。
【図６】実施例に係る制御系のブロック図。
【図７】実施例に係る補正処理のフローチャート。
【図８】実施例に係る補正前と補正後の歩容データ。
【図９】実施例に係る補正前と補正後の歩容データの細部説明図。
【図１０】補正前と補正後の歩容データの細部説明図（変形例）。
【図１１】ロボットの撓みの説明図。
【符号の説明】
４：腰柱
６：腰関節
１６、４６：股関節
２０、５０：膝関節
２８、５８：足首関節
３０、６０：６軸力関節
７０：関節角群計算手段
８０：補正手段
８２：制御手段
８４：ロボット
【図１】
2005052896.tif 000003
【図２】
2005052896.tif 000004
【図３】
2005052896.tif 000005
【図４】
2005052896.tif 000006
【図５】
2005052896.tif 000007
【図６】
2005052896.tif 000008
【図７】
2005052896.tif 000009
【図８】
2005052896.tif 000010
【図９】
2005052896.tif 000011
【図１０】
2005052896.tif 000012
【図１１】
2005052896.tif 000013