(57)【要約】２足移動ロボット等のロボット（１）の着地動作で着地する足平（２２）の着地位置・向きを推定すると共に、ロボット（１）の目標足跡経路を設定する。推定された着地位置・向きと目標足跡経路と二基づいて、ロボット（１）の実際の足跡（足平（２２）の着地位置・向きの列）を目標足跡に近づけるように、将来の目標着地位置・向きを決定する。決定した目標着地位置・向きを少なくとも用いてロボット（１）の目標歩容を決定し、その目標歩容に応じてロボット（１）の動作制御を行う。目標着地位置・向きを決定するときには、脚体同士の干渉等のロボット（１）自身の機構的制約条件や、目標ＺＭＰの存在許容範囲の制約条件等を考慮する。
2003090982.tif 000002
【特許請求の範囲】
【請求項１】
複数の脚体のそれぞれの離床動作及びこれに続く着地動作を繰り返すことにより移動する脚式移動ロボットにおいて、
前記ロボットの各回の着地動作により着地した脚体の足平の着地位置及び着地向きを推定する足平着地位置・向き推定手段と、
前記ロボットの目標足跡経路を設定する目標経路設定手段と、
少なくとも前記推定された足平の着地位置及び着地向きと前記目標足跡経路とに基づいて、ロボットの実際の足跡を該目標足跡経路に近づけるようにロボットの次回以降の着地動作のうちの少なくともいずれかの回の着地動作で着地する足平の目標着地向きを決定する足平目標着地向き決定手段と、
前記足平目標着地向き決定手段により決定された目標着地向きを少なくとも用いてロボットの目標歩容を決定する目標歩容決定手段と、
その決定された目標歩容に応じて前記ロボットの動作を制御する動作制御手段とを備えたことを特徴とする脚式移動ロボットの制御装置。
【請求項２】
前記目標着地向きは、鉛直軸回りの向きであり、前記足平着地位置・向き推定手段が推定する着地向きは、少なくとも鉛直軸回りの向きを含むことを特徴とする請求の範囲第１項に記載の脚式移動ロボットの制御装置。
【請求項３】
前記脚式移動ロボットは２本の脚体を備えた２足移動ロボットであり、前記足平目標着地向き決定手段が決定する目標着地向きは、少なくともロボットの次回の着地動作で着地する足平の目標着地向きと次次回の着地動作で着地する足平の目標着地向きとを含み、前記目標歩容決定手段は、前記次回及び次次回の着地動作にそれぞれ対応して前記足平目標着地向き決定手段により決定された前記目標着地向きを少なくとも用いてロボットの次回の着地動作を規定する目標歩容を決定することを特徴とする請求の範囲第１項に記載の脚式移動ロボットの制御装置。
【請求項４】
前記足平目標着地向き決定手段は、少なくとも前記足平着地位置・向き推定手段により推定された足平の着地位置及び着地向きと前記目標足跡経路とに基づいて、前記目標着地向きを決定する足平の目標着地位置を該目標着地向きと共に決定し、前記目標歩容決定手段は、該足平目標着地向き決定手段により決定された目標着地位置及び目標着地向きを用いて前記目標歩容を決定することを特徴とする請求の範囲第１項に記載の脚式移動ロボットの制御装置。
【請求項５】
前記足平目標着地向き決定手段は、少なくとも次回の着地動作を含む所定数回先までの各回の着地動作で着地する足平の鉛直軸回りの目標着地向き及び目標着地位置を少なくとも前記足平着地位置・向き推定手段により推定された前記着地位置及び着地向きと前記目標足跡経路とに基づいて決定する手段であり、前記目標歩容決定手段は、該足平目標着地向き決定手段により決定された前記所定数回先までの各回の着地動作に対応する足平の目標着地位置及び目標着地向きを少なくとも用いて該次回の着地動作を規定する目標歩容を決定する手段であり、前記足平目標着地向き決定手段は、少なくとも次回の着地動作に対応する足平の目標着地位置及び目標着地向きを決定するとき、当該次回の着地動作を行なう脚体と他の脚体との干渉等、ロボット自身の機構的制約条件により定めた自己依存着地許容範囲内に該足平の目標着地位置及び目標着地向きの組を決定することを特徴とする請求の範囲第４項記載の脚式移動ロボットの制御装置。
【請求項６】
前記自己依存着地許容範囲は、前記着地動作により着地した足平に対する、次回の着地動作で着地する足平の相対的な着地許容範囲を規定するものとしてあらかじめ定められたマップ又は演算式に基づいて設定されることを特徴とする請求の範囲第５項に記載の脚式移動ロボットの制御装置。
【請求項７】
前記目標歩容決定手段は、少なくとも前記足平目標着地向き決定手段が決定した目標着地位置及び目標着地向きを用いて前記次回の着地動作を規定する前記目標歩容における目標ＺＭＰを仮決定する手段を備え、前記足平目標着地向き決定手段は、その仮決定された目標ＺＭＰが所定の制限条件を満たさないとき、前記所定数回先までの着地動作のうちの少なくともいずれかの回の着地動作で着地する足平の前記目標着地位置及び目標着地向きのうちの少なくともいずれかを修正することを特徴とする請求の範囲５項に記載の脚式移動ロボットの制御装置。
【請求項８】
前記脚式移動ロボットは２本の脚体を備えた２足移動ロボットであり、前記足平の目標着地位置は、各足平に対して所定の位置関係を有する代表点であって、且つ前記ロボットを左右対称の所定の基準姿勢で起立させたときに各足平に対する当該点が両足平について同一の点となるように各足平に対してあらかじめ定められた代表点の目標位置であり、前記目標足跡経路は、前記代表点が近づくべき経路であることを特徴とする請求の範囲第４項に記載の脚式移動ロボットの制御装置。
【請求項９】
前記代表点は、各足平の踵寄りまたはつま先寄りに設定された点であることを特徴とする請求の範囲８項に記載の脚式移動ロボットの制御装置。
【請求項１０】
複数の脚体のそれぞれの離床動作及びこれに続く着地動作を繰り返すことにより移動する脚式移動ロボットの目標歩容を決定して、該目標歩容に応じて前記ロボットの動作を制御すると共に、少なくとも前記ロボットの各回の着地動作によりロボットの脚体の足平が着地する毎に新たな目標歩容を決定するとき、該目標歩容に続く仮想的な周期的歩容を決定し、その周期的歩容に近づけるように該目標歩容を決定する脚式移動ロボットの制御装置において、
前記ロボットの各回の着地動作により着地した脚体の足平の着地位置及び着地向きを推定する足平着地位置・向き推定手段と、
前記ロボットの目標足跡経路を設定する目標経路設定手段と、
前記ロボットの次回以降の少なくともいずれかの回の着地動作で着地する足平の目標着地位置及び目標着地向きを、最新の目標歩容および該目標歩容に対応する前記周期的歩容の少なくともいずれかと、前記推定された足平の着地位置及び着地向きとに基づいて仮決定する足平目標着地位置・向き仮決定手段と、
その仮決定した目標着地位置及び目標着地向きと前記目標足跡経路とに基づいて、ロボットの実際の足跡を該目標足跡経路に近づけるように前記仮決定した目標着地位置及び目標着地向きの少なくともいずれかを修正する足平目標着地位置・向き修正手段と、
その修正された目標着地位置及び目標着地向きを少なくとも用いてロボットの新たな前記目標歩容を決定する目標歩容決定手段とを備えたことを特徴とする脚式移動ロボットの制御装置。
【請求項１１】
前記目標着地向きは、鉛直軸回りの向きであり、前記足平着地位置・向き推定手段が推定する着地向きは、少なくとも鉛直軸回りの向きを含むことを特徴とする請求の範囲第１０項に記載の脚式移動ロボットの制御装置。
【請求項１２】
前記目標歩容決定手段は、少なくとも前記足平目標着地位置・向き修正手段による修正後の目標着地位置及び目標着地向きを用いて前記新たな目標歩容における目標ＺＭＰを仮決定する手段を備え、前記足平目標着地位置・向き修正手段は、その仮決定された目標ＺＭＰが所定の制限条件を満たさないとき、前記足平目標着地位置・向き仮決定手段により仮決定された、少なくともいずれかの回の着地動作に対応する目標着地位置及び目標着地向きのうちの少なくともいずれかをさらに修正することを特徴とする請求の範囲第１０項に記載の脚式移動ロボットの制御装置。
【請求項１３】
前記脚式移動ロボットは、２本の脚体を備えた２足移動ロボットであり、前記足平の目標着地位置は、各足平に対して所定の位置関係を有する代表点であって、且つ前記ロボットを左右対称の所定の基準姿勢で起立させたときに各足平に対する当該点が両足平について同一の点となるように各足平に対してあらかじめ定められた代表点の目標位置であり、前記目標足跡経路は、前記代表点が近づくべき経路であることを特徴とする請求の範囲第１０項に記載の脚式移動ロボットの制御装置。
【請求項１４】
前記代表点は、各足平の踵寄りまたはつま先寄りに設定された点であることを特徴とする請求の範囲１３項に記載の脚式移動ロボットの制御装置。
【請求項１５】
複数の脚体のそれぞれの離床動作及びこれに続く着床動作を繰り返すことにより移動する脚式移動ロボットにおいて、
前記ロボットの各回の着地動作により着地した脚体の足平の着地位置及び着地向きを推定する足平着地位置・向き推定手段と、
前記ロボットの各回の着地動作により着地する足平の着地位置及び着地向きの組の許容範囲であって、該ロボットが移動する環境条件により定まる環境依存着地許容範囲のうち、少なくとも次回及び次次回を含む所定数回先までの各回の着地動作にそれぞれ対応する複数の環境依存着地許容範囲を設定する足平着地許容範囲設定手段と、
少なくとも前記推定された足平の着地向きと前記足平着地許容範囲設定手段により設定された複数の環境依存着地位置許容範囲とに基づいて、各環境依存着地位置許容範囲を満たすように、前記所定数回先までの各回の着地動作で着地する足平の目標着地位置及び目標着地向きの組を決定する足平目標着地位置・向き決定手段と、
その決定された前記所定回数先までの各回の着地動作に対応する目標着地位置及び目標着地向きを少なくとも用いてロボットの仮想的な周期的歩容を決定し、その決定した仮想的な周期的歩容に近づけるように、少なくとも次回の着地動作を規定するロボットの新たな目標歩容を決定する目標歩容決定手段と、
その決定された新たな目標歩容に応じて前記ロボットの動作を制御する動作制御手段とを備えたことを特徴とする脚式移動ロボットの制御装置。
【請求項１６】
前記目標着地向きは、鉛直軸回りの向きであり、前記足平着地位置・向き推定手段が推定する着地向きは、少なくとも鉛直軸回りの向きを含むことを特徴とする請求の範囲第１５項に記載の脚式移動ロボットの制御装置。
【請求項１７】
前記足平目標着地位置・向き決定手段は、少なくとも次回の着地動作における足平の目標着地位置及び目標着地向きの組を決定するとき、当該着地動作を行なう脚体と他の脚体との干渉等、ロボット自身の機構的制約条件により定めた自己依存着地許容範囲と、前記次回の着地動作に対応する前記環境依存着地許容範囲との両許容範囲の共通範囲内に該足平の目標着地位置及び目標着地向きの組を決定し、前記目標歩容決定手段は、前記仮想的な周期的歩容を決定するために少なくとも当該次回の着地動作で着地する足平の目標着地位置及び目標着地向きを用いることを特徴とする請求の範囲第１５項に記載の脚式移動ロボットの制御装置。
【請求項１８】
前記自己依存着地許容範囲は、前記着地動作により着地した足平に対する、次回の着地動作で着地する足平の相対的な着地許容範囲を規定するものとしてあらかじめ定められたマップ又は演算式に基づいて設定されることを特徴とする請求の範囲第１７項に記載の脚式移動ロボットの制御装置。
【請求項１９】
前記目標歩容決定手段は、少なくとも前記次回の着地動作を規定するロボットの目標歩容における目標ＺＭＰを仮決定する手段を備え、前記足平目標着地位置・向き決定手段は、その仮決定された目標ＺＭＰが所定の制限条件を満たさないとき、前記所定数回先までの着地動作のうちの少なくともいずれかの回の着地動作で着地する足平の前記目標着地位置及び目標着地向きのうちの少なくともいずれかを修正することを特徴とする請求の範囲第１５項に記載の脚式移動ロボットの制御装置。
【請求項２０】
前記脚式移動ロボットは、２本の脚体を備えた２足移動ロボットであり、前記足平の目標着地位置は、前記各足平に対して所定の位置関係を有する代表点であって、且つ前記ロボットを左右対称の所定の基準姿勢で起立させたときに各足平に対する当該点が同一の点となるように各足平に対してあらかじめ設定された代表点の目標位置であることを特徴とする請求の範囲第１５項又は第１７項に記載の脚式移動ロボットの制御装置。
【請求項２１】
前記代表点は、各足平の踵寄りまたはつま先寄りに設定された点であることを特徴とする請求の範囲２０項に記載の脚式移動ロボットの制御装置。
【請求項２２】
複数の脚体のそれぞれの離床動作及びこれに続く着床動作を繰り返すことにより移動する脚式移動ロボットにおいて、
前記ロボットの各回の着地動作により着地した脚体の足平の着地位置及び着地向きを推定する足平着地位置・向き推定手段と、
前記ロボットの各回の着地動作により着地する足平の着地位置及び着地向きの組の許容範囲であって、該ロボットが移動する環境条件により定まる環境依存着地許容範囲のうち、少なくとも次回及び次次回を含む所定数回先までの各回の着地動作にそれぞれ対応する複数の環境依存着地許容範囲を設定する第１着地許容範囲設定手段と、
前記足平着地位置・向き推定手段により推定された各回の着地動作に対応する足平の目標着地位置及び目標着地向きと、次回の着地動作を行う脚体と他の脚体との干渉等、ロボット自身の機構的制約条件とに基づいて、次回の着地動作で着地する足平の着地位置及び着地向きの組に対する自己依存着地許容範囲を設定する第２着地許容範囲設定手段と、
少なくとも前記次回の着地動作に対応して前記第１着地許容範囲設定手段及び第２着地許容範囲設定手段によりそれぞれ設定された環境依存着地許容範囲と自己依存着地許容範囲とに基づいて、それらの両許容範囲の共通範囲内に該次回の着地動作に対応する足平の目標着地位置及び目標着地向きの組を決定する足平目標着地位置・向き決定手段と、
その決定された目標着地位置及び目標着地向きを少なくとも用いて次回の着地動作を規定する目標歩容を決定する目標歩容決定手段と、
その決定された目標歩容に応じてロボットの動作を制御する動作制御手段とを備えたことを特徴とする脚式移動ロボットの制御装置。
【請求項２３】
前記目標着地向きは、鉛直軸回りの向きであり、前記足平着地位置・向き推定手段が推定する着地向きは、少なくとも鉛直軸回りの向きを含むことを特徴とする請求の範囲第２２項に記載の脚式移動ロボットの制御装置。
【請求項２４】
前記足平目標着地位置・向き決定手段は、次回の着地動作に対応する目標着地位置及び目標着地向きを決定した後、その決定した目標着地位置及び目標着地向きと前記ロボットの機構的制約条件とに基づいて次次回の着地動作で着地する足平の着地位置に対する自己依存着地許容範囲を仮決定する手段と、少なくともその仮決定した次次回の着地動作に対応する自己依存着地許容範囲と該次次回の着地動作に対応して前記第１着地許容範囲設定手段が設定した次次回環境依存許容範囲とが共通範囲を持たないとき、該共通範囲を持つように前記次回の着地動作に対応する目標着地位置及び目標着地向きの少なくともいずれかを修正する手段とを備えることを特徴とする請求の範囲第２２項に記載の脚式移動ロボットの制御装置。
【請求項２５】
前記第２着地許容範囲設定手段は、前記着地動作により着地した足平に対する、次回の着地動作で着地する足平の相対的な着地許容範囲を規定するものとしてあらかじめ定められたマップ又は演算式に基づいて前記自己依存着地許容範囲を設定することを特徴とする請求の範囲第２２項に記載の脚式移動ロボットの制御装置。
【請求項２６】
前記脚式移動ロボットは、２本の脚体を備えた２足移動ロボットであり、前記足平の目標着地位置は、前記各足平に対して所定の位置関係を有する点であって、且つ前記ロボットを左右対称の所定の基準姿勢で起立させたときに各足平に対する当該点が両足平について同一の点となるように各足平に対してあらかじめ設定された代表点の位置であることを特徴とする請求の範囲第４項に記載の脚式移動ロボットの制御装置。
【請求項２７】
前記代表点は、各足平の踵寄りまたはつま先寄りに設定された点であることを特徴とする請求の範囲第２６項に記載の脚式移動ロボットの制御装置。
【請求項２８】
複数の脚体のそれぞれの離床動作及びこれに続く着地動作を繰り返すことにより移動する脚式移動ロボットの各回の着地動作により着地する脚体の足平の目標着地位置及び目標着地向きを決定する足跡決定装置であって、
前記ロボットの目標足跡経路を設定する目標経路設定手段を備え、
前記ロボットの各回の着地動作で着地する足平の目標着地位置及び目標着地向きを、少なくとも１つ前の回の着地動作で着地する足平の目標着地位置及び目標着地向きと、前記目標足跡経路とに基づいて決定することを特徴とする脚式移動ロボットの足跡決定装置。
【請求項２９】
前記目標着地向きは、鉛直軸回りの向きであることを特徴とする請求の範囲第２８項に記載の脚式移動ロボットの足跡決定装置。
【請求項３０】
前記ロボットの各回の着地動作で着地する足平の目標着地位置及び目標着地向きを決定するとき、当該着地動作を行なう脚体と他の脚体との干渉等、ロボット自身の機構的制約条件により定めた自己依存着地許容範囲内に当該着地動作で着地する足平の目標着地位置及び目標着地向きの組を決定することを特徴とする請求の範囲第２８項に記載の脚式移動ロボットの足跡決定装置。
【請求項３１】
前記ロボットの任意の第Ｎ回の着地動作で着地する足平の目標着地位置及び目標着地向きを決定するときに用いる前記自己依存着地許容範囲は、第Ｎ−１回の着地動作により着地する足平に対する、第Ｎ回の着地動作で着地する足平の相対的な着地許容範囲を規定するものとしてあらかじめ定められたマップ又は演算式に基づいて設定されることを特徴とする請求の範囲第３０項に記載の脚式移動ロボットの足跡決定装置。
【請求項３２】
前記ロボットの任意の第Ｎ回の着地動作で着地する足平の目標着地位置及び目標着地向きを決定するとき、該第Ｎ回の着地動作を含めて所定数回先の着地動作までの足平の目標着地位置及び目標着地向きを、第Ｎ−１回の着地動作で着地する足平の目標着地位置及び目標着地向きと前記目標足跡経路とに基づいて仮決定する目標着地位置・向き仮決定手段と、
その仮決定した所定数回先の着地動作までの目標着地位置及び目標着地向きを用いて少なくとも前記第Ｎ回の着地動作を規定するロボットの仮目標歩容を決定する仮目標歩容決定手段と、
その決定した仮目標歩容に対応する目標ＺＭＰが所定の制限条件を満たすか否かを判断し、満たさない場合には、前記第Ｎ回の着地動作に係わる足平の目標着地位置及び目標着地向きのうちの少なくともいずれかを修正して、該第Ｎ回の着地動作に係わる足平の目標着地位置及び目標着地向きを決定する目標着地位置・向き修正手段とを備えたことを特徴とする請求の範囲第２８項に記載の脚式移動ロボットの足跡決定装置。
【請求項３３】
前記脚式移動ロボットは、２本の脚体を有する２足移動ロボットであり、前記足平の目標着地位置は、各足平に対して所定の位置関係を有する点であって、且つ前記ロボットを左右対称の所定の基準姿勢で起立させたときに各足平に対する当該点が両足平について同一の点となるように各足平に対してあらかじめ定めた代表点の目標位置であり、前記目標足跡経路は、前記代表点が近づくべき経路であることを特徴とする請求の範囲第２８項に記載の脚式移動ロボットの足跡決定装置。
【請求項３４】
前記代表点は、両足平の踵寄りまたはつま先寄りに設定された点であることを特徴とする請求の範囲３３項に記載の脚式移動ロボットの足跡決定装置。
【請求項３５】
複数の脚体のそれぞれの離床動作及びこれに続く着地動作を繰り返すことにより移動する脚式移動ロボットの各回の着地動作により着地する脚体の足平の目標着地位置及び目標着地向きを決定する足跡決定装置であって、
前記ロボットの各回の着地動作により着地する足平の着地位置及び着地向きの組の許容範囲であって、該ロボットが移動する環境条件により定まる環境依存着地許容範囲を設定する足平着地許容範囲設定手段と、
前記ロボットの各回の着地動作で着地する足平の目標着地位置及び目標着地向きの組を、少なくとも１つ前の回の着地動作で着地する足平の目標着地位置及び目標着地向きと、前記環境依存着地許容範囲とに基づいて決定することを特徴とする脚式移動ロボットの足跡決定装置。
【請求項３６】
前記目標着地向きは、鉛直軸回りの向きであることを特徴とする請求の範囲第３６項に記載の脚式移動ロボットの足跡決定装置。
【請求項３７】
前記ロボットの各回の着地動作で着地する足平の目標着地位置及び目標着地向きを決定するとき、当該着地動作を行なう脚体と他の脚体との干渉等、ロボット自身の機構的制約条件により定めた自己依存着地許容範囲と、当該着地動作で着地する足平に対応する前記環境依存着地許容範囲とに基づいて、両許容範囲の共通範囲内に該足平の目標着地位置及び目標着地向きの組を決定することを特徴とする請求の範囲第３５項に記載の脚式移動ロボットの足跡決定装置。
【請求項３８】
前記ロボットの任意の第Ｎ回の着地動作で着地する足平の目標着地位置及び目標着地向きを決定するときに用いる前記自己依存着地許容範囲は、第Ｎ−１回の着地動作により着地する足平に対する、第Ｎ回の着地動作で着地する足平の相対的な着地許容範囲を規定するものとしてあらかじめ定められたマップ又は演算式に基づいて設定されることを特徴とする請求の範囲第３７項に記載の脚式移動ロボットの足跡決定装置。
【請求項３９】
前記ロボットの任意の第Ｎ回の着地動作で着地する足平の目標着地位置及び目標着地向きを決定するとき、該第Ｎ回の着地動作を含めて所定数回先の着地動作までの足平の目標着地位置及び目標着地向きを、第Ｎ−１回の着地動作で着地する足平の目標着地位置及び目標着地向きと前記所定数回先までの各回の着地動作に対応する前記環境依存着地許容範囲と、該所定数回先までの各回の着地動作に対応する前記自己依存着地許容範囲とに基づいて仮決定する目標着地位置・向き仮決定手段と、
その仮決定した所定数回先の着地動作までの目標着地位置及び目標着地向きを用いて少なくとも前記第Ｎ回の着地動作を規定するロボットの仮目標歩容を決定する仮目標歩容決定手段と、
その決定した仮目標歩容に対応する目標ＺＭＰが所定の制限条件を満たすか否かを判断し、満たさない場合には、前記第Ｎ回の着地動作に係わる足平の目標着地位置及び目標着地向きのうちの少なくともいずれかを修正して、該第Ｎ回の着地動作に係わる足平の目標着地位置及び目標着地向きの組を決定する目標着地位置・向き修正手段とを備えたことを特徴とする請求の範囲第３７項に記載の脚式移動ロボットの足跡決定装置。
【請求項４０】
前記脚式移動ロボットは、２本の脚体を有する２足移動ロボットであり、前記足平の目標着地位置は、各足平に対して所定の位置関係を有する点であって、且つ前記ロボットを左右対称の所定の基準姿勢で起立させたときに各足平に対する当該点が両足平について同一の点となるように各足平に対してあらかじめ定めた代表点の目標位置であることを特徴とする請求の範囲第３５項に記載の脚式移動ロボットの足跡決定装置。
【請求項４１】
前記代表点は、両足平の踵寄りまたはつま先寄りに設定された点であることを特徴とする請求の範囲４０項に記載の脚式移動ロボットの足跡決定装置。
【発明の詳細な説明】
技術分野
本発明は、２足移動ロボット等の脚式移動ロボットに関し、より詳しくは該ロボットの経路誘導（軌道誘導）のための装置に関する。
背景技術
一般に、複数の脚体のそれぞれの離床動作及びこれに続く着地動作を繰り返すことにより移動する脚式移動ロボットでは、特に移動速度が高くなると、脚体を振ることによる反力によって、脚体先端部である足平と床との間の摩擦力が限界となって、足平と床との間で回転滑りが生じたりして、ロボット全体が鉛直軸まわりに姿勢回転して、目標歩容の向きからずれたり、目標経路からずれるという問題があった。
補足すると、上体が常に鉛直姿勢（直立姿勢）を維持して、直線歩行する目標歩容だけが生成されるとは限らない。目標歩容においても、ロボット全体または上体は旋回したり、前後左右に傾いたりする。すなわち、目標歩容においても、ロボットの全体の姿勢回転（または上体等の代表部位の姿勢回転）が存在する。そこで、本明細書において、目標歩容における姿勢回転を目標姿勢回転と呼ぶ。
上述のように、ロボットが目標歩容の向きからずれたり、目標経路からずれるのは、基本的には、実際のロボットの全体の姿勢回転（または上体等の代表部位の姿勢回転）が、前記目標姿勢回転からずれるという現象に起因する。この現象を、厳密に表現するならば、「目標姿勢回転からの摂動」あるいは「姿勢回転摂動」と呼ぶべきであるが、目標姿勢回転と混同する恐れがない場合には、以降、これを「姿勢回転」と省略する。なお、以降、特に、ロボット全体が鉛直軸まわりに姿勢回転して、目標歩容の向きからずれる現象をスピンと呼ぶ。
上記の問題を解決するためには、ロボットの位置と移動方向とを認識しつつ、目標経路からずれないように軌道誘導制御を行なう必要がある。
経路誘導制御としては、ロケット、航空機等の飛行体ならびに無人搬送車の軌道誘導制御が知られている。しかし、これらの制御方式を、脚式移動ロボットにそのまま導入することは困難であった。この理由としては、例えば以下の３つが挙げられる。
第１に、ロボットの上体等の多くの部位は、１歩の間でも、加減速が激しく、その部位の実際の位置や姿勢（向き）を精度良く認識することが困難であった。
第２に、ロボットは、例えば、単に直進するだけでも、動力学的なバランスをとるために、ロボットの代表的部位である上体の位置または姿勢を常に左右に揺すらなくてはならないため、上体の速度と進行方向（移動方向）とが一致しない。また、ロボットは、上体の向きと関係無く自在な方向に移動できるので上体の向きと進行方向も一致するとは限らない。すなわち、上体速度、向きなど、ロボットの瞬間の運動状態を見ただけでは、ロボットが目標経路からずれようとしてているのか否かが判定できなかった。
第３に、姿勢バランスを維持しなければならないこと、ならびにアクチュエータの能力限界を越えてはならないので、急激に歩容を変更することができなかった。例えば、着地直前に着地位置を急激に変更しようとしても、アクチュエータの速度または力が能力を超えそうになって変更できなかったり、あるいは、変更できたとしても、着地後にバランスを崩す恐れがあった。
以上のごとく、単純に、従来の経路誘導技術をロボットに導入することは困難であった。
本発明はかかる背景に鑑みてなされたものであり、ロボットを所要の目標経路に追従させる経路誘導（軌道誘導）を適正に行うことができる脚式移動ロボットの制御装置を提供することを目的とする。
また、飛び石の上や階段などをロボットが移動する場合のように、１歩毎の脚体の着地位置が限定された状況においても、その限定範囲を越えたりすることなく、ロボットを円滑に移動させることができる脚式移動ロボットの制御装置を提供することを目的とする。
また、ロボットの移動前において、あるいはオフラインコンピュータによるシミュレーションにおいて、与られた目標経路や、飛び石等に対応する着地位置の限定範囲を基に一連の脚体の着地位置・向きの列としてのロボットの目標足跡を適正に決定することができる足跡決定装置を提供することを目的とする。
発明の開示
前記目的を達成するために、本発明の脚式移動ロボットの制御装置に係る第１発明は、複数の脚体のそれぞれの離床動作及びこれに続く着地動作を繰り返すことにより移動する脚式移動ロボットにおいて、前記ロボットの各回の着地動作により着地した脚体の足平の着地位置及び着地向きを推定する足平着地位置・向き推定手段と、前記ロボットの目標足跡経路を設定する目標経路設定手段と、少なくとも前記推定された足平の着地位置及び着地向きと前記目標足跡経路とに基づいて、ロボットの実際の足跡を該目標足跡経路に近づけるようにロボットの次回以降の着地動作のうちの少なくともいずれかの回の着地動作で着地する足平の目標着地向きを決定する足平目標着地向き決定手段と、前記足平目標着地向き決定手段により決定された目標着地向きを少なくとも用いてロボットの目標歩容を決定する目標歩容決定手段と、その決定された目標歩容に応じて前記ロボットの動作を制御する動作制御手段とを備えたことを特徴とするものである。
この第１発明は、ロボットの各回の着地動作で着地する脚体の足平の着地位置及び着地向き（以下、単に着地位置・向きということがある）に着目し、その足平の着地位置・向きをロボットの位置および移動向き代表するものとして用いる。その足平の実際の着地位置・向きが推定されると共に、その着地位置・向きの列が表すロボットの足跡の目標たる目標足跡経路が設定される。そして、前記推定された着地位置・向きと目標足跡経路とに基づいて、ロボットの実際の足跡（前記推定される着地位置・向きの列）を目標足跡経路に近づけるように、次回以降の着地動作のうちの少なくともいずれかの回の着地動作で着地する足平の目標着地向きが決定される。つまり、将来のある回の着地動作で着地する足平の目標着地向きが決定される。さらに、その決定された目標着地向きを少なくとも用いてロボットの目標歩容が決定され、その目標歩容に応じてロボットの動作制御が行なわれる。
ここで、ロボットの足平の着地位置・向きはロボットの上体等、他の部位に比べて頻繁な変動を生じにくい。また、足平の着地箇所で接地面との間での回転滑り（スピン）が生じたとしても、その回転滑りによる足平の着地位置の変化は微小であると共に、着地向きの変化の安定性も高い。従って、足平の着地位置・向きは、ロボットの他の部位に比べて、ロボットの位置、移動方向を代表するものとしての安定性が高い。このため、足平の着地位置・向きを推定したとき、その着地位置・向きは、ロボットの実際の位置及び移動方向を表すものとして好適なものとなる。その結果、第１発明によれば、ロボットを適正に経路誘導することができる。
なお、かかる第１発明では、ロボットの移動経路を前記目標着地向きは、鉛直軸回りの向きであり、前記足平着地位置・向き推定手段が推定する着地向きは、少なくとも鉛直軸回りの向きを含むことが好ましい（第２発明）。これは、ロボットの実際の移動経路は、主に、着地した足平の鉛直軸回りの向きによって定まるからである。
上記第１発明あるいは第２発明では、前記脚式移動ロボットは２本の脚体を備えた２足移動ロボットであるときには、前記足平目標着地向き決定手段が決定する目標着地向きは、少なくともロボットの次回の着地動作で着地する足平の目標着地向きと次次回の着地動作で着地する足平の目標着地向きとを含み、前記目標歩容決定手段は、前記次回及び次次回の着地動作にそれぞれ対応して前記足平目標着地向き決定手段により決定された前記目標着地向きを少なくとも用いてロボットの次回の着地動作を規定する目標歩容を決定することが好ましい（第３発明）。
２足移動ロボットでは、次回及び次次回の目標着地位置・向きを上記の如く決定して、それらの目標着地向きを少なくとも用いて次回の着地動作を規定する目標歩容を決定することで、次回の着地動作を規定する目標歩容を決定するときに、次次回の目標着地向きを考慮した目標歩容を決定できることとなる。その結果、ロボットの実際の足跡経路を目標足跡経路に近づけつつ、安定性の高いロボットの移動を行うことが可能となる。
また、前記第１〜第３発明では、前記足平目標着地向き決定手段は、少なくとも前記足平着地位置・向き推定手段により推定された足平の着地位置及び着地向きと前記目標足跡経路とに基づいて、前記目標着地向きを決定する足平の目標着地位置を該目標着地向きと共に決定し、前記目標歩容決定手段は、該足平目標着地向き決定手段により決定された目標着地位置及び目標着地向きを用いて前記目標歩容を決定することが好ましい（第４発明）。
これによれば、目標着地向きだけでなく、目標着地位置も決定して、それを目標歩容の決定に用いることで、ロボットの足跡経路をより円滑に目標足跡経路に近づけることを可能とする目標歩容を決定することができる。
この第４発明では、前記足平目標着地向き決定手段は、少なくとも次回の着地動作を含む所定数回先までの各回の着地動作で着地する足平の鉛直軸回りの目標着地向き及び目標着地位置を少なくとも前記足平着地位置・向き推定手段により推定された前記着地位置及び着地向きと前記目標足跡経路とに基づいて決定する手段であり、前記目標歩容決定手段は、該足平目標着地向き決定手段により決定された前記所定数回先までの各回の着地動作に対応する足平の目標着地位置及び目標着地向きを少なくとも用いて該次回の着地動作を規定する目標歩容を決定する手段であり、前記足平目標着地向き決定手段は、少なくとも次回の着地動作に対応する足平の目標着地位置及び目標着地向きを決定するとき、当該次回の着地動作を行なう脚体と他の脚体との干渉等、ロボット自身の機構的制約条件により定めた自己依存着地許容範囲内に該足平の目標着地位置及び目標着地向きの組を決定することがより好ましい（第５発明）。なお、前記所定数回先は、１回先でもよい。
この第５発明によれば、次回の目標着地位置・向きを決定するとき、その目標着地位置・向きの組を前記自己依存着地許容範囲内で決定するので、目標足跡経路への追従性だけでなく、次回の着地動作を行う脚体と他の脚体との干渉等のロボット自身の機構的制約条件が考慮される。従って、目標足跡経路に追従させつつ、ロボットの脚体同士の干渉等が生じない目標歩容を決定して、ロボットの円滑な移動を行うことができる。
なお、前記自己依存着地許容範囲は、前記着地動作により着地した足平に対する、次回の着地動作で着地する足平の相対的な着地許容範囲を規定するものとしてあらかじめ定められたマップ又は演算式に基づいて設定されることが好ましい（第６発明）。すなわち、自己依存着地許容範囲は、着地した足平と、次に着地させようとしている足平との相対的な位置、姿勢関係に応じたものとなるので、その関係をマップ又は演算式により設定しておくことで、自己依存着地許容範囲を決定するときの演算負荷を減らすことができる。
また、前記第５又は第６発明では、前記目標歩容決定手段は、少なくとも前記足平目標着地向き決定手段が決定した目標着地位置及び目標着地向きを用いて前記次回の着地動作を規定する前記目標歩容における目標ＺＭＰを仮決定する手段を備え、前記足平目標着地向き決定手段は、その仮決定された目標ＺＭＰが所定の制限条件を満たさないとき、前記所定数回先までの着地動作のうちの少なくともいずれかの回の着地動作で着地する足平の前記目標着地位置及び目標着地向きのうちの少なくともいずれかを修正することが好ましい（第７発明）。
すなわち、動力学的な平衡条件を満足する目標歩容の目標ＺＭＰは、目標着地位置又は目標着地向きの影響を受ける一方、ロボットの接地面内（より正確には所謂支持多角形内）に存在する必要がある。従って、上記の如く目標ＺＭＰが、所定の制限条件（具体的には該目標ＺＭＰが存在可能範囲の条件）を満たさない場合に、前記所定数回先までの着地動作のうちの少なくともいずれかの回の着地動作で着地する足平の前記目標着地位置及び目標着地向きのうちの少なくともいずれかを修正することで、動力学的な安定性を保ちながら目標足跡経路に追従させ得る目標歩容を決定できる。
また、前記第４〜第７発明で、脚式移動ロボットが２本の脚体を備えた２足移動ロボットであるときには、前記足平の目標着地位置は、各足平に対して所定の位置関係を有する代表点であって、且つ前記ロボットを左右対称の所定の基準姿勢で起立させたときに各足平に対する当該点が両足平について同一の点となるように各足平に対してあらかじめ定められた代表点の目標位置であり、前記目標足跡経路は、前記代表点が近づくべき経路であることが好ましい（第８発明）。これによれば、目標足跡経路を、ロボットの左右の脚体の各足平について共通にすることができる。
さらに、この第８発明では、前記代表点は、各足平の踵寄りまたはつま先寄りに設定された点であることが好ましい（第９発明）。これによれば、両足平を近接させて着地させるとき等に両足平同士が干渉するのを回避することが可能となる。
次に、本発明の脚式移動ロボットの制御装置に係る第１０発明は、複数の脚体のそれぞれの離床動作及びこれに続く着地動作を繰り返すことにより移動する脚式移動ロボットの目標歩容を決定して、該目標歩容に応じて前記ロボットの動作を制御すると共に、少なくとも前記ロボットの各回の着地動作によりロボットの脚体の足平が着地する毎に新たな目標歩容を決定するとき、該目標歩容に続く仮想的な周期的歩容を決定し、その周期的歩容に近づけるように該目標歩容を決定する脚式移動ロボットの制御装置において、前記ロボットの各回の着地動作により着地した脚体の足平の着地位置及び着地向きを推定する足平着地位置・向き推定手段と、前記ロボットの目標足跡経路を設定する目標経路設定手段と、前記ロボットの次回以降の少なくともいずれかの回の着地動作で着地する足平の目標着地位置及び鉛直軸回りの目標着地向きを、最新の目標歩容および該目標歩容に対応する前記周期的歩容の少なくともいずれかと前記推定された足平の着地位置及び着地向きとに基づいて仮決定する足平目標着地位置・向き仮決定手段と、その仮決定した目標着地位置及び目標着地向きと前記目標足跡経路とに基づいて、ロボットの実際の足跡を該目標足跡経路に近づけるように前記仮決定した目標着地位置及び目標着地向きの少なくともいずれかを修正する足平目標着地位置・向き修正手段と、その修正された目標着地位置及び目標着地向きを少なくとも用いてロボットの新たな前記目標歩容を決定する目標歩容決定手段とを備えたことを特徴とするものである。
かかる第１０発明では、前記第１発明と同様に、ロボットの足平の着地位置・向きに着目し、その足平の着地位置・向きがロボットの位置および移動向き代表するものとして用いられる。そして、第１０発明では、前記ロボットの次回以降の少なくともいずれかの回の着地動作で着地する足平の目標着地位置及び目標着地向きを、最新の目標歩容（既に決定した目標歩容のうちの最新の目標歩容）および該目標歩容に対応する前記周期的歩容の少なくともいずれかと前記推定された足平の着地位置及び着地向きとに基づいて仮決定した上で、その仮決定した目標着地位置及び目標着地向きと前記目標足跡経路とに基づいて、ロボットの実際の足跡を該目標足跡経路に近づけるように前記仮決定した目標着地位置及び目標着地向きの少なくともいずれかが修正される。さらに、その修正された目標着地位置及び目標着地向きを少なくとも用いてロボットの新たな前記目標歩容が決定され、その目標歩容に応じてロボットの動作制御が行なわれる。従って、第１０発明によれば、ロボットの継続的な安定性を保ちつつ、ロボットの経路誘導を適正に行うことができる。
この第１０発明では、前記第２発明と同様に、ロボットの移動経路を前記目標着地向きは、鉛直軸回りの向きであり、前記足平着地位置・向き推定手段が推定する着地向きは、少なくとも鉛直軸回りの向きを含むことが好ましい（第１１発明）。
また、第１０又は第１１発明では、前記目標歩容決定手段は、少なくとも前記足平目標着地位置・向き修正手段による修正後の目標着地位置及び目標着地向きを用いて前記新たな目標歩容における目標ＺＭＰを仮決定する手段を備え、前記足平目標着地位置・向き修正手段は、その仮決定された目標ＺＭＰが所定の制限条件を満たさないとき、前記足平目標着地位置・向き仮決定手段により仮決定された、少なくともいずれかの回の着地動作に対応する目標着地位置及び目標着地向きのうちの少なくともいずれかをさらに修正することが好ましい（第１２発明）。
これによれば、前記第７発明と同様に、動力学的な安定性を保ちながら目標足跡経路に追従させ得る目標歩容を決定できる。
さらに、第１０〜第１２発明で、前記脚式移動ロボットが、２本の脚体を備えた２足移動ロボットであるときには、前記足平の目標着地位置は、各足平に対して所定の位置関係を有する代表点であって、且つ前記ロボットを左右対称の所定の基準姿勢で起立させたときに各足平に対する当該点が両足平について同一の点となるように各足平に対してあらかじめ定められた代表点の目標位置であり、前記目標足跡経路は、前記代表点が近づくべき経路であることが好ましい（第１３発明）。さらにこの第１３発明では、前記代表点は、各足平の踵寄りまたはつま先寄りに設定された点であることが好ましい（第１４発明）。これらの第１３発明、第１４発明によれば、それぞれ前記第８発明、第９発明と同様の作用効果を奏することができる。
次に、本発明の脚式移動ロボットの制御装置に係る第１５発明は、複数の脚体のそれぞれの離床動作及びこれに続く着床動作を繰り返すことにより移動する脚式移動ロボットにおいて、前記ロボットの各回の着地動作により着地した脚体の足平の着地位置及び着地向きを推定する足平着地位置・向き推定手段と、前記ロボットの各回の着地動作により着地する足平の着地位置及び着地向きの組の許容範囲であって、該ロボットが移動する環境条件により定まる環境依存着地許容範囲のうち、少なくとも次回及び次次回を含む所定数回先までの各回の着地動作にそれぞれ対応する複数の環境依存着地許容範囲を設定する足平着地許容範囲設定手段と、少なくとも前記推定された足平の着地向きと前記足平着地許容範囲設定手段により設定された複数の環境依存着地位置許容範囲とに基づいて、各環境依存着地位置許容範囲を満たすように、前記所定数回先までの各回の着地動作で着地する足平の目標着地位置及び目標着地向きの組を決定する足平目標着地位置・向き決定手段と、その決定された前記所定回数先までの各回の着地動作に対応する目標着地位置及び目標着地向きを少なくとも用いてロボットの仮想的な周期的歩容を決定し、その決定した仮想的な周期的歩容に近づけるように、少なくとも次回の着地動作を規定するロボットの新たな目標歩容を決定する目標歩容決定手段と、その決定された新たな目標歩容に応じて前記ロボットの動作を制御する動作制御手段とを備えたことを特徴とするものである。
かかる第１５発明では、前記第１発明と同様に、ロボットの足平の着地位置・向きに着目し、その足平の着地位置・向きがロボットの位置および移動向き代表するものとして用いられる。そして、第１５発明では、目標足跡経路の代わりに、環境依存着地許容範囲が設定され、前記推定された足平の着地向きと前記環境依存着地位置許容範囲とに基づいて、各環境依存着地位置許容範囲を満たすように、所定数回先までの各回の着地動作で着地する足平の目標着地位置及び目標着地向きの組が決定される。そして、この決定した目標着地位置・向きを少なくとも用いてロボットの仮想的な周期的歩容を決定した上で、その仮想的な周期的歩容に近づけるように、少なくとも次回の着地動作を規定するロボットの新たな目標歩容を決定し、その決定された新たな目標歩容に応じてロボットの動作制御が行われる。
これにより、第１５発明によれば、ロボットの継続的な安定性を保ちつつ、各回の着地毎の環境依存着地位置許容範囲を満たす（該範囲を逸脱しない）ような目標歩容を決定して、ロボットの移動を行うことができる。従って、飛び石等をロボットが移動する場合に、足平を飛び石等の着地許容領域から踏み外したりすることなく、継続的な安定性を保ちながら、ロボットを移動させることができる。
この第１５発明では、前記第２発明と同様に、ロボットの移動経路を前記目標着地向きは、鉛直軸回りの向きであり、前記足平着地位置・向き推定手段が推定する着地向きは、少なくとも鉛直軸回りの向きを含むことが好ましい（第１６発明）。
また、第１５又は第１６発明では、前記足平目標着地位置・向き決定手段は、少なくとも次回の着地動作における足平の目標着地位置及び目標着地向きの組を決定するとき、当該着地動作を行なう脚体と他の脚体との干渉等、ロボット自身の機構的制約条件により定めた自己依存着地許容範囲と、前記次回の着地動作に対応する前記環境依存着地許容範囲との両許容範囲の共通範囲内に該足平の目標着地位置及び目標着地向きの組を決定し、前記目標歩容決定手段は、前記仮想的な周期的歩容を決定するために少なくとも当該次回の着地動作で着地する足平の目標着地位置及び目標着地向きを用いることが好ましい（第１７発明）。
これによれば、少なくとも次回の目標着地位置・向きを決定するとき、その目標着地位置・向きの組を前記環境依存着地許容範囲と、自己依存着地許容範囲との共通範囲内で決定するので、環境依存着地許容範囲による着地位置・向きの制限条件だけでなく、次回の着地動作を行う脚体と他の脚体との干渉等のロボット自身の機構的制約条件が考慮される。従って、環境依存着地許容範囲による着地位置・向きの条件を満たしつつ、ロボットの脚体同士の干渉等が生じない目標歩容を決定して、ロボットの円滑な移動を行うことができる。
なお、第１７発明では、前記自己依存着地許容範囲は、前記着地動作により着地した足平に対する、次回の着地動作で着地する足平の相対的な着地許容範囲を規定するものとしてあらかじめ定められたマップ又は演算式に基づいて設定されることが好ましい（第１８発明）。これによれば、前記第６発明と同様に、自己依存着地許容範囲を決定するときの演算負荷を減らすことができる。
さらに、第１５〜第１８発明では、前記目標歩容決定手段は、少なくとも前記次回の着地動作を規定するロボットの目標歩容における目標ＺＭＰを仮決定する手段を備え、前記足平目標着地位置・向き決定手段は、その仮決定された目標ＺＭＰが所定の制限条件を満たさないとき、前記所定数回先までの着地動作のうちの少なくともいずれかの回の着地動作で着地する足平の前記目標着地位置及び目標着地向きのうちの少なくともいずれかを修正することが好ましい（第１９発明）。
この第１９発明によれば、前記第７発明と同様に、動力学的な安定性を保ちながら目標足跡経路に追従させ得る目標歩容を決定できる。
また、第１５〜第１９発明で、前記脚式移動ロボットが、２本の脚体を備えた２足移動ロボットであるときには、前記足平の目標着地位置は、前記各足平に対して所定の位置関係を有する代表点であって、且つ前記ロボットを左右対称の所定の基準姿勢で起立させたときに各足平に対する当該点が同一の点となるように各足平に対してあらかじめ設定された代表点の目標位置であることが好ましい（第２０発明）。これによれば、前記環境依存着地許容範囲や自己依存着地許容範囲はそれぞれ、前記代表点の位置と足平の目標着地向きとの組の許容範囲として設定されることとなるので、それらの許容範囲の設定が容易になる。
さらに、この第２０発明では、前記代表点は、各足平の踵寄りまたはつま先寄りに設定された点であることが好ましい（第２１発明）。これによれば、前記第９発明と同様の作用効果を奏することができる。
次に、本発明の脚式移動ロボットの制御装置に係る第２２発明は、複数の脚体のそれぞれの離床動作及びこれに続く着床動作を繰り返すことにより移動する脚式移動ロボットにおいて、前記ロボットの各回の着地動作により着地した脚体の足平の着地位置及び着地向きを推定する足平着地位置・向き推定手段と、前記ロボットの各回の着地動作により着地する足平の着地位置及び着地向きの組の許容範囲であって、該ロボットが移動する環境条件により定まる環境依存着地許容範囲のうち、少なくとも次回及び次次回を含む所定数回先までの各回の着地動作にそれぞれ対応する複数の環境依存着地許容範囲を設定する第１着地許容範囲設定手段と、前記足平着地位置・向き推定手段により推定された各回の着地動作に対応する足平の目標着地位置及び目標着地向きと、次回の着地動作を行う脚体と他の脚体との干渉等、ロボット自身の機構的制約条件とに基づいて、次回の着地動作で着地する足平の着地位置及び着地向きの組に対する自己依存着地許容範囲を設定する第２着地許容範囲設定手段と、少なくとも前記次回の着地動作に対応して前記第１着地許容範囲設定手段及び第２着地許容範囲設定手段によりそれぞれ設定された環境依存着地許容範囲と自己依存着地許容範囲とに基づいて、それらの両許容範囲の共通範囲内に該次回の着地動作に対応する足平の目標着地位置及び目標着地向きの組を決定する足平目標着地位置・向き決定手段と、その決定された目標着地位置及び目標着地向きを少なくとも用いて次回の着地動作を規定する目標歩容を決定する目標歩容決定手段と、その決定された目標歩容に応じてロボットの動作を制御する動作制御手段とを備えたことを特徴とするものである。
かかる第２２発明では、前記第１発明と同様に、ロボットの足平の着地位置・向きに着目し、その足平の着地位置・向きがロボットの位置および移動向き代表するものとして用いられる。そして、第２２発明では、環境依存着地許容範囲と自己依存着地許容範囲とが設定され、それらの許容範囲に基づいて、それらの許容範囲の共通範囲に次回の目標着地位置・向きの組が決定される。そして、この決定された目標着地位置・向きを少なくとも用いて次回の着地動作を規定する目標歩容が決定され、その目標歩容に応じてロボットの動作制御が行われる。
これにより、第２２発明によれば、各回の着地毎の環境依存着地位置許容範囲及び自己依存着地許容範囲の両者を満たす（両許容範囲の共通範囲を逸脱しない）ような目標歩容を決定して、ロボットの移動を行うことができる。従って、飛び石等をロボットが移動する場合に、足平を飛び石等の着地許容領域から踏み外したり、脚体同士が干渉したりすることなく、ロボットを移動させることができる。
この第２２発明では、前記第２発明と同様に、前記目標着地向きは、鉛直軸回りの向きであり、前記足平着地位置・向き推定手段が推定する着地向きは、少なくとも鉛直軸回りの向きを含むことが好ましい（第２３発明）。
また、第２２又は第２３発明では、前記足平目標着地位置・向き決定手段は、より具体的には、次回の着地動作に対応する目標着地位置及び目標着地向きを決定した後、その決定した目標着地位置及び目標着地向きと前記ロボットの機構的制約条件とに基づいて次次回の着地動作で着地する足平の着地位置に対する自己依存着地許容範囲を仮決定する手段と、少なくともその仮決定した次次回の着地動作に対応する自己依存着地許容範囲と該次次回の着地動作に対応して前記第１着地許容範囲設定手段が設定した次次回環境依存許容範囲とが共通範囲を持たないとき、該共通範囲を持つように前記次回の着地動作に対応する目標着地位置及び目標着地向きの少なくともいずれかを修正する手段とを備えることが好ましい（第２４発明）。
これによれば、次次回環境依存許容範囲と、次回の目標着地位置・向きに対応して仮決定された次次回の着地動作に対応する自己依存着地許容範囲とが共通範囲を持たないときには、該共通範囲を持つように、先に決定した次回の目標着地位置・向きが修正される。つまり、次次回の環境依存許容範囲と、次次回の自己依存着地許容範囲とが共通範囲を持つように、次回の目標着地位置・向きが適宜、修正されつつ決定される。換言すれば、環境依存許容範囲と自己依存許容範囲との両者の許容範囲を満たす目標着地位置・向きを将来的に継続的に決定し得るように、各回の目標着地位置・向きが決定される。その結果、飛び石等をロボットが移動するとき、その移動途中でロボットが先に進むことができなくなうような事態を生じることなく、ロボットの継続的な移動を行うことができる。
なお、前記第２２〜第２４発明では、前記第２着地許容範囲設定手段は、前記着地動作により着地した足平に対する、次回の着地動作で着地する足平の相対的な着地許容範囲を規定するものとしてあらかじめ定められたマップ又は演算式に基づいて前記自己依存着地許容範囲を設定することが好ましい（第２５発明）。これによれば、前記第６発明と同様に、自己依存着地許容範囲を決定するときの演算負荷を減らすことができる。
さらに、第２２〜第２５発明で、前記脚式移動ロボットが、２本の脚体を備えた２足移動ロボットであるときには、前記足平の目標着地位置は、前記各足平に対して所定の位置関係を有する点であって、且つ前記ロボットを左右対称の所定の基準姿勢で起立させたときに各足平に対する当該点が両足平について同一の点となるように各足平に対してあらかじめ設定された代表点の位置であることが好ましい（第２６発明）。これによれば、前記環境依存着地許容範囲及び自己依存着地許容範囲はそれぞれ、前記代表点の目標位置と足平の目標着地向きとの組の許容範囲として設定されることとなるので、それらの許容範囲の設定が容易になる。
さらにこの第２６発明では、前記代表点は、各足平の踵寄りまたはつま先寄りに設定された点であることが好ましい（第２７発明）。これによれば、前記第９発明と同様の作用効果を奏することができる。
次に、本発明の脚式移動ロボットの足跡決定装置に係る第２８発明は、複数の脚体のそれぞれの離床動作及びこれに続く着地動作を繰り返すことにより移動する脚式移動ロボットの各回の着地動作により着地する脚体の足平の目標着地位置及び目標着地向きを決定する足跡決定装置であって、前記ロボットの目標足跡経路を設定する目標経路設定手段を備え、前記ロボットの各回の着地動作で着地する足平の目標着地位置及び目標着地向きを、少なくとも１つ前の回の着地動作で着地する足平の目標着地位置及び目標着地向きと、前記目標足跡経路とに基づいて決定することを特徴とするものである。
かかる第２８発明では、前記第１発明と同様に、ロボットの足平の着地位置・向きに着目し、その足平の着地位置・向きがロボットの位置および移動向き代表するものとして用いられる。そして、第２８発明では、ロボットの各回の着地動作で着地する足平の目標着地位置・向きを、少なくとも１つ前の回の着地動作で着地する足平の目標着地位置・向きと、前記目標足跡経路とに基づいて決定する。従って、ロボットの移動開始前等に、目標足跡経路に追従するような目標着地位置・向きの列、すなわち目標足跡を適正に決定できる。
かかる第２８発明では、前記第２発明と同様に、前記目標着地向きは、鉛直軸回りの向きであることが好ましい（第２９発明）。
また、第２８又は第２９発明では、前記ロボットの各回の着地動作で着地する足平の目標着地位置及び目標着地向きを決定するとき、当該着地動作を行なう脚体と他の脚体との干渉等、ロボット自身の機構的制約条件により定めた自己依存着地許容範囲内に当該着地動作で着地する足平の目標着地位置及び目標着地向きの組を決定することが好ましい（第３０発明）。
この第３０発明によれば、各回の目標着地位置・向きを決定するとき、その目標着地位置・向きの組を前記自己依存着地許容範囲内で決定するので、目標足跡経路への追従性だけでなく、着地動作を行う脚体と他の脚体との干渉等のロボット自身の機構的制約条件が考慮される。従って、目標足跡経路に追従させつつ、ロボットの脚体同士の干渉等が生じない目標着地位置・向きの列（目標足跡）を決定することができる。
なお、第３０発明では、前記ロボットの任意の第Ｎ回の着地動作で着地する足平の目標着地位置及び目標着地向きを決定するときに用いる前記自己依存着地許容範囲は、第Ｎ−１回の着地動作により着地する足平に対する、第Ｎ回の着地動作で着地する足平の相対的な着地許容範囲を規定するものとしてあらかじめ定められたマップ又は演算式に基づいて設定されることが好ましい（第３１発明）。これによれば、前記第６発明と同様に、自己依存着地許容範囲を決定するときの演算負荷を減らすことができる。
また、第２８〜第３１発明では、前記ロボットの任意の第Ｎ回の着地動作で着地する足平の目標着地位置及び目標着地向きを決定するとき、該第Ｎ回の着地動作を含めて所定数回先の着地動作までの足平の目標着地位置及び目標着地向きを、第Ｎ−１回の着地動作で着地する足平の目標着地位置及び目標着地向きと前記目標足跡経路とに基づいて仮決定する目標着地位置・向き仮決定手段と、その仮決定した所定数回先の着地動作までの目標着地位置及び目標着地向きを用いて少なくとも前記第Ｎ回の着地動作を規定するロボットの仮目標歩容を決定する仮目標歩容決定手段と、その決定した仮目標歩容に対応する目標ＺＭＰが所定の制限条件を満たすか否かを判断し、満たさない場合には、前記第Ｎ回の着地動作に係わる足平の目標着地位置及び目標着地向きのうちの少なくともいずれかを修正して、該第Ｎ回の着地動作に係わる足平の目標着地位置及び目標着地向きを決定する目標着地位置・向き修正手段とを備えることが好ましい（第３２発明）。
この第３２発明によれば、前記第Ｎ回の目標着地位置・向きを含めて所定数回先までの目標着地位置・向き（第Ｎ回の目標着地位置・向きのみでもよい）を仮決定しておき、その仮決定した目標着地位置・向きを用いて少なくとも第Ｎ回の着地動作を規定する仮目標歩容が決定される。そして、その仮目標歩容の目標ＺＭＰが所定の制限条件（具体的には該目標ＺＭＰが存在可能範囲の条件）を満たさない場合には、仮決定した第Ｎ回の目標着地位置及び目標着地向きのうちの少なくともいずれかを修正して、該第Ｎ回の目標着地位置・向きが決定される。このため、前記第７発明と同様の考え方によって、動力学的な安定性を確保して目標足跡に追従させ得る目標着地位置・向きの列（目標足跡）を決定できる。
また、第２８〜第３２発明では、前記脚式移動ロボットが、２本の脚体を有する２足移動ロボットであるときには、前記足平の目標着地位置は、各足平に対して所定の位置関係を有する点であって、且つ前記ロボットを左右対称の所定の基準姿勢で起立させたときに各足平に対する当該点が両足平について同一の点となるように各足平に対してあらかじめ定めた代表点の目標位置であり、前記目標足跡経路は、前記代表点が近づくべき経路であることが好ましい（第３３発明）。さらに、この第３３発明では、前記代表点は、両足平の踵寄りまたはつま先寄りに設定された点であることが好ましい（第３４発明）。これらの第３３発明、第３４発明によれば、それぞれ前記第８発明、第９発明と同様の作用効果を奏することができる。
次に、本発明の脚式移動ロボットの足跡決定装置に係る第３５発明は、複数の脚体のそれぞれの離床動作及びこれに続く着地動作を繰り返すことにより移動する脚式移動ロボットの各回の着地動作により着地する脚体の足平の目標着地位置及び目標着地向きを決定する足跡決定装置であって、前記ロボットの各回の着地動作により着地する足平の着地位置及び着地向きの組の許容範囲であって、該ロボットが移動する環境条件により定まる環境依存着地許容範囲を設定する足平着地許容範囲設定手段と、前記ロボットの各回の着地動作で着地する足平の目標着地位置及び目標着地向きの組を、少なくとも１つ前の回の着地動作で着地する足平の目標着地位置及び目標着地向きと、前記環境依存着地許容範囲とに基づいて決定することを特徴とするものである。
この第３５発明では、前記第１発明と同様に、ロボットの足平の着地位置・向きに着目し、その足平の着地位置・向きがロボットの位置および移動向き代表するものとして用いられる。そして、第３５発明では、ロボットの各回の着地動作で着地する足平の目標着地位置・向きの組を、少なくとも１つ前の回の着地動作で着地する足平の目標着地位置・向きと、前記環境依存着地許容範囲とに基づいて決定する。従って、ロボットの移動開始前等に、ロボットの足平が飛び石等の着地許容領域から踏み外したりすることのない目標着地位置・向きの列、すなわち目標足跡を適正に決定できる。
この第３５発明では、前記第２発明と同様に、前記目標着地向きは、鉛直軸回りの向きであることが好ましい（第３６発明）。
また、第３５又は第３６発明では、前記ロボットの各回の着地動作で着地する足平の目標着地位置及び目標着地向きを決定するとき、当該着地動作を行なう脚体と他の脚体との干渉等、ロボット自身の機構的制約条件により定めた自己依存着地許容範囲と、当該着地動作で着地する足平に対応する前記環境依存着地許容範囲とに基づいて、両許容範囲の共通範囲内に該足平の目標着地位置及び目標着地向きの組を決定することが好ましい（第３７発明）。
これによれば、各回の着地動作で着地する足平の目標着地位置及び目標着地向きの組が、前記環境依存着地許容範囲と、自己依存着地許容範囲との共通範囲内で決定されるので、環境依存着地許容範囲による着地位置・向きの制限条件だけでなく、脚体同士の干渉等のロボット自身の機構的制約条件が考慮される。従って、環境依存着地許容範囲による着地位置・向きの条件を満たしつつ、ロボットの脚体同士の干渉等が生じないような目標着地位置・向きの列（目標足跡）を決定することができる。
なお、第３７発明では、前記ロボットの任意の第Ｎ回の着地動作で着地する足平の目標着地位置及び目標着地向きを決定するときに用いる前記自己依存着地許容範囲は、第Ｎ−１回の着地動作により着地する足平に対する、第Ｎ回の着地動作で着地する足平の相対的な着地許容範囲を規定するものとしてあらかじめ定められたマップ又は演算式に基づいて設定されることが好ましい（第３８発明）。これによれば、前記第６発明と同様に、自己依存着地許容範囲を決定するときの演算負荷を減らすことができる。
また、第３７又は第３８発明では、前記ロボットの任意の第Ｎ回の着地動作で着地する足平の目標着地位置及び目標着地向きを決定するとき、該第Ｎ回の着地動作を含めて所定数回先の着地動作までの足平の目標着地位置及び目標着地向きを、第Ｎ−１回の着地動作で着地する足平の目標着地位置及び目標着地向きと前記所定数回先までの各回の着地動作に対応する前記環境依存着地許容範囲と、該所定数回先までの各回の着地動作に対応する前記自己依存着地許容範囲とに基づいて仮決定する目標着地位置・向き仮決定手段と、その仮決定した所定数回先の着地動作までの目標着地位置及び目標着地向きを用いて少なくとも前記第Ｎ回の着地動作を規定するロボットの仮目標歩容を決定する仮目標歩容決定手段と、その決定した仮目標歩容に対応する目標ＺＭＰが所定の制限条件を満たすか否かを判断し、満たさない場合には、前記第Ｎ回の着地動作に係わる足平の目標着地位置及び目標着地向きのうちの少なくともいずれかを修正して、該第Ｎ回の着地動作に係わる足平の目標着地位置及び目標着地向きの組を決定する目標着地位置・向き修正手段とを備えることが好ましい（第３９発明）。
この第３９発明によれば、前記第Ｎ回の目標着地位置・向きを含めて所定数回先までの目標着地位置・向き（第Ｎ回の目標着地位置・向きのみでもよい）をそれぞれの回の着地動作に対応する環境依存着地許容範囲と自己依存着地許容範囲とに基づいて仮決定しておき、その仮決定した目標着地位置・向きを用いて少なくとも第Ｎ回の着地動作を規定する仮目標歩容が決定される。そして、その仮目標歩容の目標ＺＭＰが所定の制限条件（具体的には該目標ＺＭＰが存在可能範囲の条件）を満たさない場合には、仮決定した第Ｎ回の目標着地位置及び目標着地向きのうちの少なくともいずれかを修正して、該第Ｎ回の目標着地位置・向きが決定される。このため、前記第７発明と同様の考え方によって、動力学的な安定性を確保しつつ、前記環境依存着地許容範囲及び自己依存着地許容範囲の制約条件を満たす目標着地位置・向きの列（目標足跡）を決定できる。
また、前記第３５〜第３９発明で、前記脚式移動ロボットが、２本の脚体を有する２足移動ロボットであるときには、前記足平の目標着地位置は、各足平に対して所定の位置関係を有する点であって、且つ前記ロボットを左右対称の所定の基準姿勢で起立させたときに各足平に対する当該点が両足平について同一の点となるように各足平に対してあらかじめ定めた代表点の目標位置であることが好ましい（第４０発明）。これによれば、環境依存着地許容範囲や自己依存着地許容範囲はそれぞれ、前記代表点の目標位置と足平の目標着地向きとの許容範囲として設定されることとなるので、それらの許容範囲の設定が容易になる。
さらにこの第４０発明では、前記代表点は、両足平の踵寄りまたはつま先寄りに設定された点であることが好ましい（第４１発明）。これによれば、前記第９発明と同様の作用効果を奏することができる。
発明を実施するための最良の形態
以下、添付図面を参照してこの発明の実施形態に係る脚式移動ロボットの制御装置を説明する。尚、脚式移動ロボットとしては２足移動ロボットを例にとる。
図１は、この実施形態に係る脚式移動ロボットとしての２足移動ロボットを全体的に示す概略図である。
図示の如く、２足移動ロボット（以下、ロボットという）１は上体（ロボット１の基体）３から下方に延設された左右一対の脚体（脚部リンク）２，２を備える。両脚体２，２は同一構造であり、それぞれ６個の関節を備える。その６個の関節は上体３側から順に、股（腰部）の回旋（回転）用（上体３に対するヨー方向の回転用）の関節１０Ｒ，１０Ｌ（符号Ｒ，Ｌはそれぞれ右側脚体、左側脚体に対応するものであることを意味する符号である。以下同じ）と、股（腰部）のロール方向（Ｘ軸まわり）の回転用の関節１２Ｒ，１２Ｌと、股（腰部）のピッチ方向（Ｙ軸まわり）の回転用の関節１４Ｒ，１４Ｌ、膝部のピッチ方向の回転用の関節１６Ｒ，１６Ｌと、足首のピッチ方向の回転用の関節１８Ｒ，１８Ｌと、足首のロール方向の回転用の関節２０Ｒ，２０Ｌとから構成される。
各脚体２の足首の２つの関節１８Ｒ（Ｌ），２０Ｒ（Ｌ）の下部には、各脚体２の先端部を構成する足平（足部）２２Ｒ（Ｌ）が取着されると共に、両脚体２，２の最上位には、各脚体２の股の３つの関節１０Ｒ（Ｌ），１２Ｒ（Ｌ），１４Ｒ（Ｌ）を介して前記上体３が取り付けられている。上体３の内部には、詳細を後述する制御ユニット６０などが格納される。なお、図１では図示の便宜上、制御ユニット６０を上体３の外部に記載している。
上記構成の各脚体２においては、股関節（あるいは腰関節）は関節１０Ｒ（Ｌ），１２Ｒ（Ｌ），１４Ｒ（Ｌ）から構成され、膝関節は関節１６Ｒ（Ｌ）から構成され、足首関節は関節１８Ｒ（Ｌ），２０Ｒ（Ｌ）から構成される。また股関節と膝関節とは大腿リンク２４Ｒ（Ｌ）で連結され、膝関節と足首関節とは下腿リンク２６Ｒ（Ｌ）で連結される。
尚、上体３の上部の両側部には左右一対の腕体５，５が取り付けられると共に、上体３の上端部には頭部４が配置される。これらの腕体５，５及び頭部４は、本発明の要旨と直接的な関連を有しないため詳細な説明を省略する。
上記の構成により、各脚体２の足平２２Ｒ（Ｌ）は、上体３に対して６つの自由度を与えられている。そして、ロボット１の歩行等の移動中に、両脚体２，２を合わせて６＊２＝１２個（この明細書で「＊」はスカラに対する演算としては乗算を、ベクトルに対する演算としては外積を示す）の関節を適宜な角度で駆動することで、両足平２２Ｒ，２２Ｌの所望の運動を行うことができる。これにより、ロボット１は任意に３次元空間を移動することができる。
図１に示す如く、各脚体２の足首関節１８Ｒ（Ｌ），２０Ｒ（Ｌ）の下方には足平２２Ｒ（Ｌ）との間に公知の６軸力センサ５０が介装されている。該６軸力センサ５０は、各脚体２の足平２２Ｒ（Ｌ）の着地の有無、および各脚体２に作用する床反力（接地荷重）等を検出するためのものであり、該床反力の並進力の３方向成分Ｆｘ，Ｆｙ，Ｆｚ並びにモーメントの３方向成分Ｍｘ，Ｍｙ，Ｍｚの検出信号を制御ユニット６０に出力する。また、上体３には、Ｚ軸（鉛直方向（重力方向））に対する上体３の傾き（姿勢角）およびその角速度等を検出するための傾斜センサ５４が備えられ、その検出信号が該傾斜センサ５４から制御ユニット６０に出力される。この傾斜センサ５４は、図示を省略する３軸方向の加速度センサおよび３軸方向のジャイロセンサを備え、これらのセンサの検出信号が上体３の傾きおよびその角速度を検出するために用いられると共に、ロボット１の自己位置姿勢を推定するために用いられる。また、詳細構造の図示は省略するが、ロボット１の各関節には、それを駆動するための電動モータ６４（図５参照）と、その電動モータ６４の回転量（各関節の回転角）を検出するためのエンコーダ（ロータリエンコーダ）６５（図５参照）とが設けられ、該エンコーダ６５の検出信号が該エンコーダ６５から制御ユニット６０に出力される。
さらに、図１では図示を省略するが、ロボット１の適宜な位置にはジョイスティック（操作器）７３（図５参照）が設けられ、そのジョイスティック７３を操作することで、直進移動しているロボット１を旋回させるなど、ロボット１の歩容に対する要求を必要に応じて制御ユニット６０に入力できるように構成されている。
図２は本実施形態における各脚体２の先端部分（各足平２２Ｒ（Ｌ）を含む）の基本構成を概略的に示す図である。同図に示すように、各足平２２Ｒ（Ｌ）の上方には、前記６軸力センサ５０との間にばね機構７０が装備されると共に、足底（各足平２２Ｒ，Ｌの底面）にはゴムなどからなる足底弾性体７１が貼られている。これらのばね機構７０及び足底弾性体７１によりコンプライアンス機構７２が構成されている。ばね機構７０は詳細は後述するが、足平２２Ｒ（Ｌ）の上面部に取り付けられた方形状のガイド部材（図２では図示省略）と、足首関節１８Ｒ（Ｌ）（図２では足首関節２０Ｒ（Ｌ）を省略している）および６軸力センサ５０側に取り付けられ、前記ガイド部材に弾性材（ゴムやばね）を介して微動自在に収納されるピストン状部材（図２では図示省略）とから構成されている。
図２に実線で表示された足平２２Ｒ（Ｌ）は、床反力を受けていないときの状態を示している。各脚体２が床反力を受けると、コンプライアンス機構７２のばね機構７０と足底弾性体７１とがたわみ、足平２２Ｒ（Ｌ）は図中に点線で例示したような位置姿勢に移る。このコンプラインアス機構７２の構造は、例えば本出願人が先に提案した特開平５−３０５５８４号公報に詳細に説明されている如く、着地衝撃を緩和するためだけでなく、制御性を高めるためにも重要なものである。
上記コンプライアンス機構７２を含めた足平２２Ｒ（Ｌ）（以下、足平機構２２Ｒ（Ｌ）と称することがある。）のより詳細な構成を図３及び図４を参照してさらに説明する。図３は足平機構２２Ｒ（Ｌ）の側面示の断面図、図４は該足平機構２２Ｒ（Ｌ）の底面側から見た平面図である。
足平機構２２Ｒ（Ｌ）は、大略平板状の足平プレート部材１０２を骨格部材として備えている。この足平プレート部材１０２は、その前端部（つま先部）と後端部（踵部）とが若干上方に湾曲されているが、他の部分は平坦な平板状になっている。また、足平プレート部材１０２の上面部には、横断面方形状のガイド部材１０３がその軸心を上下方向に向けて固設されている。このガイド部材１０３の内部には、該ガイド部材１０３の内周面に沿うようにして略上下方向に移動可能に設けられた可動板（ピストン状部材）１０４が設けられ、該可動板１０４が足首関節１８Ｒ（Ｌ），２０Ｒ（Ｌ）に６軸力センサ５０を介して連結されている。
また、可動板１０４は、その下面の周縁部がばね、ゴム等の弾性材からなる複数の弾性部材１０６（図ではばねとして記載している）を介して足平プレート部材１０２の上面部に連結されている。従って、足平プレート部材１０２は、弾性部材１０６、可動板１０４及び６軸力センサ５０を介して足首関節１８Ｒ（Ｌ）に連結されている。尚、ガイド部材１０３の内部（可動板１０４の下側の空間）は、図示を省略する穴や隙間を介して大気側に開放されており、大気中の空気がガイド部材１０３の内部に入出自在となっている。また、上記ガイド部材１０３、可動板１０４、及び弾性部材１０６は前記図２に示したばね機構７０を構成するものである。
足平プレート部材１０２の底面（下面）には、前記図２に示した足底弾性体７１としての接地部材７１が取着されている。該接地部材７１は、足平機構２２Ｒ（Ｌ）の接地状態で、該足平プレート部材１０２と床面との間に介在させる弾性部材（床面に直接的に接触する弾性部材）であり、本実施形態では、足平プレート部材１０２の接地面の四隅（足平プレート部材１０２のつま先部の両側部並びに踵部の両側部）に固着されている。
また、接地部材７１は、本実施形態では、比較的軟質のゴム材から成る軟質層１０７ａと、比較的硬質のゴム材から成る硬質層１０７ｂとを上下に重合してなる２層構造に形成され、硬質層１０７ｂが、脚体２の着床時に直接的に床面に接触する接地面部として最下面側に設けられている。
足平機構２２Ｒ（Ｌ）には、上記の構成の他、着地衝撃緩衝装置１０８が備えられている。この着地衝撃緩衝装置１０８は、足平プレート部材１０２の底面に取着された袋状部材１０９と、該袋状部材１０９の内部に対して圧縮性流体としての空気（大気中の空気）を入出させるための流通路１１０とを備えている。
袋状部材１０９は、その周囲に前記接地部材７１が存するようにして、足平プレート部材１０２の底面の大略中央部に設けられている。この袋状部材１０９は、ゴム等の弾性材により変形自在に構成されており、外力による弾性変形が生じていない自然状態では、図３に実線で示すように、上方に開口した円筒容器形状を呈する。そして、該袋状部材１０９は、その開口端部が全周にわたって足平プレート部材１０２の底面に固着され、該足平プレート部材１０２により閉蓋されている。また、袋状部材１０９は、円筒容器形状を呈する自然状態では、該袋状部材１０９の底部が前記接地部材７１よりも下方に突出するように設けられている。つまり、該袋状部材１０９の高さ（足平プレート部材１０２の下面から袋状部材１０９の底部までの距離）は、接地部材７１の厚さよりも大きいものとされている。従って、足平プレート部材１０２が接地部材７１を介して接地した状態（脚部２の着床状態）では、袋状部材１０９は、図３に仮想線で示すように、床反力により袋状部材１０９の高さ方向に圧縮される。
尚、本実施形態では、袋状部材１０９が円筒容器形状を呈する自然状態は該袋状部材１０９の膨張状態である。そして、袋状部材１０９は、弾性材により構成されているため、圧縮されたとき、自然状態の形状（円筒容器形状）への形状復元力を有する。
前記流通路１１０は、袋状部材１０９に対する空気の流入・流出を行う流入・流出手段を構成するものであり、本実施形態では、袋状部材１０９の内部と前記ガイド部材１０３の内部とを連通させるように足平プレート部材１０２に穿設された流通孔である。この場合、前述のように、ガイド部材１０３の内部は大気側に開放されているので、該流通路１１０は、袋状部材１０９の内部を大気側に連通させていることとなる。従って、袋状部材１０９の内部には、大気中の空気が流通路１１０を介して入出自在となっており、該袋状部材１０９の膨張状態（自然状態）では、該袋状部材１０９内には空気が充填され、その内部の圧力は大気圧と同等になる。また、流通路１１０は絞り通路となっており、袋状部材１０９の内部に空気が入出する際には流体抵抗を生じるようになっている。
図５は制御ユニット６０の構成を示すブロック図である。該制御ユニット６０はマイクロコンピュータにより構成されており、ＣＰＵからなる第１の演算装置９０及び第２の演算装置９２、Ａ／Ｄ変換器８０、カウンタ８６、Ｄ／Ａ変換器９６、ＲＡＭ８４、ＲＯＭ９４、並びにこれらの間のデータ授受を行うバスライン８２を備えている。この制御ユニット６０では、各脚体２の６軸力センサ５０、傾斜センサ５４（加速度センサおよびレートジャイロセンサ）、ジョイスティック７３等の出力信号はＡ／Ｄ変換器８０でデジタル値に変換された後、バスライン８２を介してＲＡＭ８４に送られる。またロボット１の各関節のエンコーダ６５（ロータリーエンコーダ）の出力は、カウンタ８６を介してＲＡＭ８４に入力される。
前記第１の演算装置９０は後述の如く目標歩容を生成すると共に、関節角変位指令（各関節の変位角もしくは各電動モータ６４の回転角の指令値）を算出し、ＲＡＭ８４に送出する。また第２の演算装置９２はＲＡＭ８４から関節角変位指令と、前記エンコーダ６５の出力信号とに基づいて検出された関節角の実測値とを読み出し、各関節の駆動に必要な操作量を算出してＤ／Ａ変換器９６とサーボアンプ６４ａとを介して各関節を駆動する電動モータ６４に出力する。
図６は、この実施形態に係る脚式移動ロボットの制御装置の機能的構成を全体的に示すブロック図である。この図６中の「実ロボット」の部分以外の部分が制御ユニット６０が実行する処理機能（主として第１の演算装置９０及び第２の演算装置９２の機能）によって構成されるものである。なお、以下の説明では、脚体２の左右を特に区別する必要がないときは、前記符号Ｒ，Ｌを省略する。
以下説明すると、制御ユニット６０は、ロボット１の目標歩容を自在かつリアルタイムに生成して出力する歩容生成装置２００を備えている。この歩容生成装置２００が出力する目標歩容は、目標上体位置姿勢軌道（上体３の目標位置及び目標姿勢の軌道）、目標足平位置姿勢軌道（各足平２２の目標位置及び目標姿勢の軌道）、目標腕姿勢軌道（各腕体５の目標姿勢の軌道）、目標全床反力中心点（目標ＺＭＰ）軌道、目標全床反力軌道から構成される。なお、脚体２や腕体５以外に上体３に対して可動な部位を備える場合には、その可動部位の目標位置姿勢軌道が目標歩容に加えられる。
ここで、本発明の実施形態での用語の意味あるいは定義について補足しておく。上記歩容における「軌道」は時間的変化のパターン（時系列パターン）を意味し、以下の説明では、「軌道」の代わりに「パターン」と称することもある。また、各部位の「姿勢」は、該部位の傾きと向きとを総称したものである。ここで、「傾き」は該部位の鉛直方向となす角度であり、「向き」は該部位の前方向を示すベクトルを水平面に投影したベクトルの向きである。例えば上体姿勢のうちの傾きは、Ｚ軸（鉛直軸）に対するロール方向（Ｘ軸回り）の上体３の傾斜角（姿勢角）と、Ｚ軸に対するピッチ方向（Ｙ軸回り）の上体３の傾斜角（姿勢角）とからなる。また、上体３の向きは、上体３の前方向を示すベクトルを水平面に投影したベクトルのヨー方向（Ｚ軸回り）の回転角で表される。なお、足平姿勢は各足平２２に固定的に設定された２軸の空間的な方位角で表される。また、特に、足平２２の着地姿勢に関しては、その着地姿勢は、基本的には着地した足平２２の向きを表し、具体的には着地した足平２２のかかとからつま先に向かうベクトルを水平面に投影したベクトルの向きを表す。また、目標腕姿勢は、腕体５，５の全ての部位に関する上体３に対する相対的な姿勢で表される。
上体位置は、上体３の所定位置、具体的には上体３のあらかじめ定めた代表点の位置を意味する。同様に、足平位置は、各足平２２Ｒ，２２Ｌのあらかじめ定めた代表点の位置を意味する。なお、上体速度は、上体３の上記代表点の移動速度を意味し、足平速度は、各足平２２Ｒ，２２Ｌの上記代表点の移動速度を意味する。
目標上体位置姿勢等の目標歩容に関し、以下の説明では、誤解を生じるおそれがない場合には、しばしば「目標」を省略する。また、歩容のうちの、床反力に係わる構成要素以外の構成要素、すなわち足平位置姿勢、上体位置姿勢等、ロボット１の運動に係わる歩容を総称的に「運動」という。
各足平２２Ｒ，Ｌの床反力（並進力及びモーメントからなる床反力）を「各足平床反力」と呼び、ロボット１の全ての（２本の）足平２２Ｒ，２２Ｌの床反力の合力を「全床反力」と呼ぶ。ただし、以下の説明においては、各足平床反力に関してはほとんど言及しないので、断らない限り、「床反力」は「全床反力」と同義として扱う。
目標床反力は、一般的には、作用点とその点に作用する力（並進力）と力のモーメントによって表現される。作用点はどこにとっても良いので、同一の目標床反力でも無数の表現が考えられるが、特に前述の目標床反力中心点を作用点にして目標床反力を表現すると、力のモーメントは、鉛直軸成分を除けば、０になる。
尚、動力学的平衡条件を満足する歩容では、目標運動軌道から算出されるＺＭＰ（目標運動軌道から算出されるロボット１の慣性力と重力との合力がその点まわりに作用するモーメントが、鉛直軸成分を除いて０になる点）と目標全床反力中心点は一致することから、目標全床反力中心点軌道の代わりに目標ＺＭＰ軌道を与えると言っても同じことである（詳細は、例えば本出願人によるＰＣＴ公開公報ＷＯ／０２／４０２２４を参照）。
このような背景から、ＰＣＴ公開公報ＷＯ／０２／４０２２４の明細書では目標歩容を次のように定義していた。
ａ）広義の目標歩容とは、１歩ないしは複数歩の期間の目標運動軌道とその目標床反力軌道との組である。
ｂ）狭義の目標歩容とは、１歩の期間の目標運動軌道とそのＺＭＰ軌道との組である。
ｃ）一連の歩容は、いくつかの歩容がつながったものとする。
ロボット１の歩行を行う場合においては、本出願人が先に特開平１０−８６０８０号公報で提案した上体高さ決定手法によって上体鉛直位置（上体高さ）が決定されると、床反力の並進力成分は従属的に決定されるので、目標歩容の床反力に関して明示的に設定すべき物理量としては、ＺＭＰだけで十分であった。したがって、ＰＣＴ公開公報ＷＯ／０２／４０２２４の明細書では、狭義の目標歩容としては、上記のｂ）で十分であった。それに対し、ロボット１の走行を行う場合には、床反力鉛直成分も制御上重要であるので、該床反力鉛直成分を明示的に設定することが好ましい。そこで、本願出願人が先に提案したＰＣＴ出願（ＰＣＴ／ＪＰ０２／１３５９６）等では、狭義の目標歩容として、次のｂ’）を採用した。
ｂ’）狭義の目標歩容とは、１歩の期間の目標運動軌道とそのＺＭＰ軌道と床反力鉛直成分軌道の組である。
この明細書では以降、特にことわらない限り、目標歩容は狭義の目標歩容の意味で使用する。また、目標歩容の「１歩」は、ロボット１の片方の脚体２が着地してからもう一方の脚体２が着地するまでの意味で使用する。
歩容における両脚支持期とは言うまでもなく、ロボット１がその自重を両脚体２，２で支持する期間、片脚支持期とはいずれか一方のみの脚体２でロボット１の自重を支持する期間、空中期とは両脚体２，２が床から離れている（空中に浮いている）期間を言う。
片脚支持期においてロボット１の自重を支持しない側の脚体２を「遊脚」と呼び、自重を支持する側の脚体２を「支持脚」と呼ぶ。ロボット１の歩行では、両脚支持期と片脚支持期とが交互に繰り返され、ロボット１の走行では片脚支持期と空中期とが交互に繰り返される。この場合、走行の空中期では、両脚体２，２とも、ロボット１の自重を支持しないこととなるが、該空中期の直前の片脚支持期において遊脚であった脚体２、支持脚であった脚体２をそれぞれ該空中期においても遊脚、支持脚と呼ぶ。
また、目標上体姿勢、目標上体位置、目標足平位置姿勢、目標腕姿勢等、目標歩容におけるロボット１の各部の位置姿勢は支持脚座標系で記述される。支持脚座標系とは、支持脚の足平２２の接地面辺りに原点を持つ床面に固定された座標系である。より詳細には、支持脚座標系は、本出願人の特許３２７３４４３号に記載されているように、支持脚の足平２２を接地面との間で滑らさないで、水平姿勢になるまで回転させた時の、該支持脚の足首関節の中心から接地面への垂直投影点を原点とし、該支持脚足平２２のつま先に向かう水平軸（足平２２の前後方向の軸）をＸ軸として、鉛直軸をＺ軸、これらのＸ軸、Ｚ軸に直交する座標軸（足平２２の左右方向の軸）をＹ軸とする座標系である。
本発明の実施形態に係る歩容生成装置２００は、２歩先までの遊脚の足平２２の着地位置姿勢、着地時刻の要求値（目標値）を入力として、目標上体位置姿勢軌道、目標足平位置姿勢軌道、目標ＺＭＰ軌道、目標床反力鉛直成分軌道、及び目標腕姿勢軌道から構成される目標歩容を生成する。このとき、これらの軌道を規定するパラメータ（これを歩容パラメータと呼ぶ）の一部は、歩容の継続性を満足するように修正される。
なお、２歩先までの遊脚の足平２２の着地位置姿勢の要求値は、図６に示す軌道誘導部２２０により後述するように決定されて、歩容生成装置２００に入力される。また、図６に示すように軌道誘導部２２０には、移動計画部２２２からロボット１の目標経路（後述する目標足跡経路）、または飛び石や階段などの着地許容範囲（後述する環境依存着地位置向き許容範囲）が与えられると共に、自己位置姿勢推定部２２４から、実上体姿勢の推定値である推定上体姿勢と、着地した遊脚（着地した後、支持脚となった遊脚）の実際の着地位置・向きの推定値（より詳しくは後述する推定支持脚座標系の位置・向き）が与えられる。なお、環境依存着地位置姿勢許容範囲は、後述する第５実施形態に係わるものであり、第１〜第４実施形態、第６実施形態では、軌道誘導部２２０には、移動計画部２２２から目標経路が与えられる。
また、歩容生成装置２００は、ロボット１の片方の脚体２が着地してから他方の脚体２が着地するまでの１歩分の目標歩容（前記狭義の意味での目標歩容）を単位として、その１歩分の目標歩容を順番に生成する。ここで、現在あるいはこれから生成しようとしている歩容を「今回歩容」、その次の歩容を「次回歩容」、さらにその次の歩容を「次次回歩容」と呼ぶ。また、「今回歩容」の１つ前に生成した目標歩容を「前回歩容」と呼ぶ。
歩容生成装置２００が生成する目標歩容の一部を例示的に概説すると、例えば目標足平位置姿勢軌道は、本出願人による特許３２３３４５０号に開示した有限時間整定フィルタを用いて生成される。この有限時間整定フィルタによる足平位置姿勢軌道の生成処理では、例えば足平位置軌道は、目標着地位置（着地位置の要求値）に向かって足平２２を徐々に加速しながら移動を開始し、目標着地時刻（着地時刻の要求値）までに徐々に速度を０またはほぼ０にまで減速し、該目標着地時刻に目標着地位置に到達して停止するように生成される。足平姿勢軌道についても同様である。これにより生成される目標足平位置姿勢軌道は、着地瞬間における対地速度が０またはほぼ０になるため、特にロボット１の走行を行う場合に、前記空中期からの着地時における着地衝撃を小さくできる。
また、図７に示すように人間が走行を行う場合と同様の形態でロボット１の走行を行う場合には、例えば目標床反力鉛直成分軌道および目標ＺＭＰ軌道（詳しくは支持脚座標系のＸ軸方向（支持脚足平２２の前後方向）での目標ＺＭＰ軌道）は、それぞれ図８（ａ）、図８（ｂ）に実線で示すようなパターンで設定される。ここで、図７の第１番目〜第３番目の図は、それぞれ片脚支持期の開始時、中間時点、終了時におけるロボット１の両脚体２，２の運動状態を模式的に示し、第４番目及び第５番目の図は、それぞれ空中期の中間時点、空中期の終了時（次の片脚支持期の開始時）におけるロボット１の両脚体２，２の運動状態を模式的に示している。
ロボット１の走行を行う場合には、目標床反力鉛直成分軌道は、基本的には、片脚支持期では上に凸のパターンとなり、空中期では０に維持される。なお、ロボット１の歩行を行う場合には、目標床反力鉛直成分軌道は、例えば図８（ａ）に二点鎖線で示すように設定される。この場合、二点鎖線のうちの上に凸の部分が両脚支持期に対応し、下に凸の部分が片脚支持期に対応する。また、目標ＺＭＰは走行、歩行のいずれであっても、基本的には、ロボット１の脚体２の接地面内（より詳しくは所謂、支持多角形内）の中央付近に設定される。
図９は、歩容生成装置２００の歩容生成処理、図６に示す自己位置姿勢推定部２２４の自己位置姿勢推定処理、並びに図６に示す軌道誘導部２２０の軌道誘導処理を示すフローチャート（構造化フローチャート）である。
以下にこのフローチャートを説明する。
まずＳ０１０において時刻ｔを０に初期化するなど種々の初期化作業が行われる。
次いでＳ０１２を経てＳ０１４に進み、制御周期（制御ユニット６０の演算処理周期）毎のタイマ割り込みを待つ。制御周期はΔｔである。
次いでＳ０１６に進み、前記自己位置姿勢推定部２２４の自己位置姿勢推定処理が行われる。この自己位置姿勢推定処理は、ロボット１が移動する床（地面）に固定された座標系（グローバル座標系）でのロボット１の実際の位置及び向きを推定する処理であり、例えば図１０のフローチャートに示すように行われる。なお、ここで説明する自己位置姿勢推定処理は、本願と同日の出願（特願２００２−１２７０６６号を優先権の主張の基礎とするＰＣＴ出願、発明の名称「脚式移動ロボットの自己位置推定装置」）にて提案している手法のうちの第３実施形態を用いるものであり、同ＰＣＴ出願にて詳細に説明されている。そこで、以下の自己位置姿勢推定処理の説明は、簡略的な説明に留める。
この自己位置姿勢推定処理は、ロボット１の支持脚足平２２の位置姿勢に対応する支持脚座標系の位置姿勢（より正確には、グローバル座標系での支持脚座標系の位置と鉛直軸回りの向き）を、該支持脚足平２２の実際の位置及び向き（鉛直軸回りの向き）を代表するものとして推定する処理である。より詳しくは、自己位置姿勢推定処理は、ロボット１の１歩毎の着地動作で着地して新たに支持脚足平となる遊脚足平２２の着地位置姿勢を代表する支持脚座標系の実際の位置及び向き（鉛直軸回りの向き）を推定する処理、換言すれば、グローバル座標系でのロボット１の足跡の位置及び向きを推定する処理である。なお、支持脚座標系の向きは、より詳しくは、支持脚座標系のＸ軸（支持脚足平２２の前後方向の水平軸）の鉛直軸回りの向きとして表される。
以下に上記自己位置姿勢推定処理を図１０を参照して説明すると、まず、Ｓ２２００において、上体３の傾斜センサ５４に備えたジャイロセンサの検出値、すなわち上体３の角速度（３軸方向の角速度）の検出値を積分する（累積加算）ことにより、実際の上体姿勢の推定値である推定上体姿勢が求められる。この推定上体姿勢はグローバル座標系で記述される。なお、推定上体姿勢のうちの傾き成分、すなわち、鉛直軸に対する傾斜角に関しては、ジャイロセンサの検出値の積分誤差の蓄積（ドリフト）を抑制するために、傾斜センサ５４に備えた加速度センサによって検出される重力方向を用いてドリフト補正が行われる。
次いでＳ２２０２に進み、制御周期の間におけるグローバル座標系から見た推定上体姿勢の変化量（前回の制御周期（時刻ｔ−Δｔ）での推定上体姿勢と今回の制御周期（時刻ｔ）での推定上体姿勢との差）と、制御周期の間におけるグローバル座標系から見た目標歩容の上体姿勢の変化量（前回の制御周期での目標上体姿勢と今回の制御周期での目標上体姿勢との差）との差（以下、上体姿勢変化量差という）を算出する。なお、グローバル座標系から見た目標歩容の上体姿勢とは、現在の推定支持脚座標系上で、１歩の間、ロボット１の姿勢傾きやスピンが発生することなく、ロボット１が目標歩容通りに運動したと仮定した場合のグローバル座標系から見た上体姿勢のことである。ただし、推定支持脚座標系とは、実際のロボット１の支持脚足平２２の位置姿勢に対応した支持脚座標系である。より詳しくは、推定支持脚座標系は、実際のロボット１の支持脚足平２２を、その位置姿勢から接地面との間で滑らさないで水平まで回転させた時の、該支持脚の足首関節の中心から接地面への垂直投影点を原点とし、該支持脚足平２２のつま先に向かう水平軸をＸ軸とし、鉛直軸をＺ軸、これらに直交する座標軸をＹ軸にとった座標系である。結局、本実施形態においてはロボット１の自己位置の推定値として推定支持脚座標系の位置姿勢（位置及び鉛直軸回りの向き）が推定される。なお、推定支持脚座標系の原点の位置および座標軸の向きは、グローバル座標系によって表される。
また、Ｓ０１０の初期化処理において、推定支持脚座標系の初期値（初期位置姿勢）がセットされているものとする。
次いでＳ２２０４に進み、姿勢回転中心を決定する。具体的には、その瞬間の目標ＺＭＰ（現在の目標ＺＭＰ）が姿勢回転中心として決定される。ここで、本実施形態では、遊脚の振り出し等によって支持脚足平２２が接地面でスピンを生じる場合があることを考慮し、制御周期の間の推定上体姿勢の変化量と目標上体姿勢の変化量との差である前記上体姿勢変化量差が支持脚足平２２のスピンによって生じたものであるとみなす。そして、上記姿勢回転中心は、支持脚足平２２のスピンの回転中心を意味する。
次いでＳ２２０６に進み、現在の推定支持脚座標系（図１１に示す時刻ｔ−Δｔにおける推定支持脚座標系）を、前記Ｓ２２０２で求めた上体姿勢変化量差だけ、前記姿勢回転中心まわりに回転させたものを改めて現在の推定支持脚座標系（図１１に示す時刻ｔにおける推定支持脚座標系）と決定する。すなわち、今回の制御周期（現在時刻ｔ）における推定支持脚座標系の位置姿勢を決定する。なお、Ｓ２２０２で求められる上体姿勢変化量差は、一般には、鉛直軸回りの成分だけでなく、水平軸回りの成分も含まれるため、上記の如く新たに決定される推定支持脚座標系のＺ軸の方向は鉛直方向になるとは限らない。そこで、本実施形態では、前記上体姿勢変化量差の分だけ現在の（時刻ｔ−Δｔの）推定支持脚座標系を前記姿勢回転中心回りに回転させた後、推定支持脚座標系のＺ軸を鉛直方向に向けるように該推定支持脚座標系をその原点回りに回転させ、それにより新たな（時刻ｔの）推定支持脚座標系を決定する。あるいは、前記上体姿勢変化量差のうちの、鉛直軸回りの成分だけ、現在の（時刻ｔ−Δｔの）推定支持脚座標系を前記姿勢回転中心回りに回転させることで、新たな推定支持脚座標系を決定するようにしてもよい。
次いでＳ２２０８に進み、現在時刻ｔが遊脚足平２２の着地時刻（１歩分の今回歩容の生成が完了する時刻）であるか否か、すなわち歩容の切り替わり目であるか否かが判定される。
Ｓ２２０８の判定結果がＹＥＳである場合には、以下の処理が行われる。すなわち、まずＳ２２１０に進み、現在の推定支持脚座標系（Ｓ２２０６で決定したもの）に対する次回歩容の推定支持脚座標系（次回に着地する遊脚の足平２２の着地位置姿勢に対応する推定支持脚座標系）の相対位置姿勢関係が、目標歩容（より詳しくは、時刻ｔ−Δｔ（歩容の切り替わり目の１つ前の制御周期）までに生成した今回歩容）における支持脚座標系に対する次回歩容の支持脚座標系の相対位置姿勢関係と同一関係になるように、次回歩容推定支持脚座標系の位置及び向きを決定する。ここで、上記目標歩容における支持脚座標系に対する次回歩容の支持脚座標系は、１歩目の着地位置姿勢の要求値に対応する支持脚座標系である。
次いでＳ２２１２に進み、次回歩容推定支持脚座標系の位置姿勢を現在の推定支持脚座標系の位置姿勢に代入する。これにより、遊脚足平２２の着地毎（Ｓ２２０８の判定結果がＹＥＳになる毎）に、その遊脚足平２２の実際の着地位置姿勢を代表するものとしての推定支持脚座標系の位置及び向きが求められる。そして、推定支持脚座標系は、今回歩容の遊脚足平２２が着地するまでは、ロボット１のスピンを考慮して、制御周期毎に更新される。
以上によりＳ０１６の自己位置推定処理が終了する。なお、本実施形態では、上述した如く、ロボット１の着地動作毎の足平２２の実際の着地位置姿勢を代表する推定支持脚座標系の位置及び向きを求めるようにしたが、自己位置推定処理の手法は上記に限られるものではない。例えばロボット１の上体３等の所定の部位の位置姿勢（グローバル座標系での位置姿勢）を公知の慣性航法的な手法により逐次推定しておき、それと、ロボット１の目標歩容あるいはロボット１の各関節の変位検出値とを用いて推定支持脚座標系の位置及び向きを求めるようにしてもよい。いずれにせよ、自己位置推定処理は、ロボット１の各回の着地動作で着地する足平２２の実際の着地位置姿勢（姿勢に関しては特に鉛直軸回りの向き）をできるだけ精度よく推定できる手法であればどのような手法を用いてもよい。
図９の説明に戻って、上記の如く自己位置推定処理を実行した後、Ｓ０１８に進み、歩容の切り替わり目（前回歩容の生成が終了し、新たな今回歩容の生成を開始すべき時刻）であるか否かが判断される。そして、その判断結果がＹＥＳであるときはＳ０２０に進み、ＮＯであるときはＳ０３８に進む。
Ｓ０２０に進むときは時刻ｔを０に初期化する。
次いでＳ０２２に進み、前記軌道誘導部２２０による軌道誘導処理が実行され、次回歩容支持脚座標系および次次回歩容支持脚座標系が決定される。次回歩容支持脚座標系は、今回歩容での遊脚の足平２２の着地位置姿勢（１歩目の着地位置姿勢）の要求値に対応する支持脚座標系であり、次次回歩容支持脚座標系は、次回歩容で遊脚となる脚体２の足平２２の着地位置姿勢（２歩目の着地位置姿勢）の要求値に対応する支持脚座標系である。Ｓ０２２における軌道誘導処理が本願発明の特徴部分をなす部分であるが、この説明は後述することとする。なお、Ｓ０２２では、今回歩容周期および次回歩容周期も決定される。これらの歩容周期は、前記ジョイスティック７３の操作や、あらかじめ定められた移動計画等により設定されるロボット１の要求移動速度（あるいは要求着地時刻）に基づいて決定される。
次いでＳ０２４に進む。なお、このＳ０２４以降、Ｓ０３０までの処理は、本願出願人が先に提案したＰＣＴ公開公報ＷＯ／０２／４０２２４やＰＣＴ／ＪＰ０２／１３５９６号等に詳細に説明されているので、以下では簡略的な説明に留める。
Ｓ０２４では、今回歩容がつながるべき定常旋回歩容の歩容パラメータが、Ｓ０２２で決定された次回歩容支持脚座標系、次次回歩容支持脚座標系、今回歩容周期および次回歩容周期等に基づいて決定される。主に、目標足平位置姿勢軌道を規定する足平軌道パラメータ、目標上体姿勢の基準軌道を規定する基準上体姿勢軌道パラメータ、目標腕姿勢軌道を規定する腕姿勢軌道パラメータ、目標ＺＭＰ軌道を規定するＺＭＰ軌道パラメータ、目標床反力鉛直成分軌道を規定する床反力鉛直成分軌道パラメータが決定される。例えば床反力鉛直成分軌道パラメータに関して例示すると、前記図８（ａ）に示したパターンの折れ点の時刻や値が床反力鉛直成分軌道パラメータとして決定される。
ここで、前記定常旋回歩容は、その歩容を繰り返したときに歩容の境界においてロボット１の運動状態に不連続が生じないような周期的歩容を意味する（以降、「定常旋回歩容」を「定常歩容」と略す場合もある）。
定常旋回歩容の１周期分の歩容は、図１２に示すように、今回歩容の支持脚座標系（図のＸＹ座標）に対応する支持脚の足平２２（図示の例では、ロボット１の右側の足平２２Ｒ）を次次回歩容支持脚座標系（図のＸ’’Ｙ’’座標）に対応する位置姿勢まで動かすときの歩容に対応する第１旋回歩容と、次回歩容支持脚座標系（図のＸ’Ｙ’座標）に対応する支持脚の足平２２（図示の例では、ロボット１の左側の足平２２Ｌ）を次次次回支持脚座標系（図のＸ’’’Ｙ’’’座標）に対応する位置姿勢まで動かすときの歩容に対応する第２旋回歩容とからなる。この場合、次次次回歩容支持脚座標系は、第２旋回歩容の遊脚足平２２の目標着地位置姿勢に対応するものである。そして、該次次次回歩容支持脚座標系は、次次回歩容支持脚座標系（第２旋回歩容の支持脚座標系）から見た該次次次回歩容支持脚座標系の位置姿勢（位置及び向き）が、今回歩容支持脚座標系から見た次回歩容支持脚座標系（今回歩容の遊脚足平２２の着地位置姿勢）の位置姿勢（位置及び向き）に一致するように設定される。尚、ここで定常旋回歩容に関して「旋回」なる用語を用いたのは、旋回率を零とするときは直進を意味するので、直進も広義の意味で旋回に含ませることができるからである。
定常旋回歩容は、歩容生成装置２００で今回歩容の終端における発散成分や上体鉛直位置速度を決定するために暫定的に作成される仮想的な周期的歩容であり、ロボット１を実際に制御するために歩容生成装置２００からそのまま出力されるものではない。
尚、「発散」とは、上体３の位置が両足平２２，２２の位置からかけ離れた位置にずれてしまうことを意味する。発散成分の値とは、２足移動ロボットの上体の位置が両足平の位置（厳密には、支持脚接地面に設定された支持脚座標系の原点）からかけ離れていく具合を表す数値であり、上体３の水平方向の位置及びその速度の関数で表される。
本実施形態では、これから生成する今回歩容の後につながる定常歩容を移動要求（前記２歩先までの遊脚の足平２２の着地位置姿勢、着地時刻などの要求値）に応じて設定し、定常歩容の初期発散成分を求めてから、今回歩容の終端発散成分を定常歩容の初期発散成分に一致させるように、今回歩容を生成するようにした。その詳細は、本出願人が提案した前記ＰＣＴ公開公報ＷＯ／０２／４０２２４、あるいはＰＣＴ／ＪＰ０２／１３５９６号等に説明されているので、ここではこれ以上の説明を省略する。
Ｓ０２４の処理を行って定常歩容の歩容パラメータを決定した後、Ｓ０２６に進み、定常旋回歩容の初期状態（初期上体水平位置速度、初期上体鉛直位置速度、初期発散成分、初期上体姿勢角および角速度）を決定する。
次いで、Ｓ０２８に進み、今回歩容の歩容パラメータを決定（一部仮決定）する。この場合、決定される今回歩容の歩容パラメータは、定常旋回歩容の歩容パラメータと同様、主に、足平軌道パラメータ、基準上体姿勢軌道パラメータ、腕姿勢軌道パラメータ、目標ＺＭＰ軌道パラメータ、目標床反力鉛直成分軌道パラメータであり、それぞれのパラメータにより規定される軌道が、定常旋回歩容の軌道に連続するように決定される。ただし、これらのパラメータのうち、目標ＺＭＰ軌道パラメータは暫定的なものである。このＳ０２８の処理の詳細は、前記ＰＣＴ公開公報ＷＯ／０２／４０２２４、あるいはＰＣＴ／ＪＰ０２／１３５９６号等に説明されているので、ここではこれ以上の説明を省略する。
次いでＳ０３０に進み、今回歩容の終端発散成分が定常歩容の初期発散成分に一致するように、今回歩容の歩容パラメータが修正される。ここで修正される歩容パラメータは、目標ＺＭＰ軌道パラメータである。
なお、Ｓ０２６からＳ０３０の処理では、ロボット１の運動と床反力との関係を表す動力学モデルが用いられる。その動力学モデルとしては、前記ＰＣＴ公開公報ＷＯ／０２／４０２２４に記載の単純化モデルあるいは、本出願人が提案した特開２００２−３２６１７３号公報に記載の多質点モデル（フルモデル）などを用いれば良い。
次いでＳ０３２に進み、目標ＺＭＰが所定の許容範囲に存在しているか否かが判断される。
なお、目標ＺＭＰの前記許容範囲は、目標ＺＭＰの存在可能範囲（接地面を含む最小凸多角形で、いわゆる支持多角形）内に設定される。
修正された今回歩容の歩容パラメータがその他の歩容の制約条件を満足しているか否かを判断しても良い。なお、歩容の制約条件に関しては、前記ＰＣＴ公開公報ＷＯ／０２／４０２２４に詳細が述べられている。
Ｓ０３２の判断結果がＮＯである場合には、Ｓ０３４に進み、後述する軌道誘導補正サブルーチンを軌道誘導部２２０により実行することにより、Ｓ０２２の軌道誘導サブルーチンで決定した次回歩容支持脚座標系及び次次回歩容支持脚座標系を修正する。Ｓ０３４における処理もＳ０２２と同様、この出願に係る発明の中核をなす部分であるが、この説明は後述することとする。
次いでＳ０３６を経て、Ｓ０２４に戻り、該Ｓ０２４からの処理が再び実行される。
Ｓ０３２の判断結果がＹＥＳである場合、あるいはＳ０１８の判断結果がＮＯである場合には、Ｓ０３８に進み、Ｓ０３０で最終的に決定した今回歩容パラメータに基づいて前記動力学モデルを用いて今回歩容瞬時値を決定する。この処理の詳細は、前記ＰＣＴ公開公報ＷＯ／０２／４０２２４あるいは、ＰＣＴ／ＪＰ０２／１３５９６号において説明されているので、ここではこれ以上の説明を省略する。
次いでＳ０４０に進み、スピン力をキャンセルする腕振り動作が決定される。
次いでＳ０４２に進み、歩容生成用時刻ｔをΔｔだけ増やした後、Ｓ０１４に戻り、以上のごとく歩容生成を続ける。
以上が、歩容生成装置２００の歩容生成処理、自己位置姿勢推定部２２４の自己位置姿勢推定処理、並びに軌道誘導部２２０の軌道誘導処理の概要である。
図６を参照してこの実施形態に係る制御ユニット６０の制御処理をさらに説明すると、歩容生成装置２００において、上記したように目標歩容が生成される。生成された目標歩容のうち、目標上体位置姿勢（軌道）及び目標腕姿勢（軌道）は、ロボット幾何学モデル（逆キネマティクス演算部）２０２に直接送られる。
また、目標足平位置姿勢（軌道）、目標ＺＭＰ軌道（目標全床反力中心点軌道）、および目標全床反力（軌道）（目標床反力水平成分と目標床反力鉛直成分）は、複合コンプライアンス動作決定部２０４に直接送られる一方、目標床反力分配器２０６にも送られる。目標床反力分配器２０６では、目標全床反力は各足平２２Ｒ，２２Ｌに分配され、目標各足平床反力中心点および目標各足平床反力が決定される。その決定された目標各足平床反力中心点および目標各足平床反力が複合コンプライアンス動作決定部２０４に送られる。
複合コンプライアンス動作決定部２０４では、機構変形補償付き修正目標足平位置姿勢軌道が生成され、それがロボット幾何学モデル２０２に送られる。ロボット幾何学モデル２０２は、目標上体位置姿勢（軌道）と機構変形補償付き修正目標足平位置姿勢（軌道）が入力されると、それらを満足する脚体２，２の１２個の関節（１０Ｒ（Ｌ）など）の関節変位指令（値）を算出して変位コントローラ２０８に送る。変位コントローラ２０８は、ロボット幾何学モデル２０２で算出された関節変位指令（値）を目標値としてロボット１の１２個の関節の変位を追従制御する。
ロボット１に生じた床反力（詳しくは実各足平床反力）は６軸力センサ５０によって検出される。その検出値は前記複合コンプライアンス動作決定部２０４に送られる。また、前記図１０のＳ２２００で求められた推定上体姿勢と歩容生成装置２００が生成した目標上体姿勢との差のうちの傾き成分、すなわち姿勢傾斜偏差θｅｒｒｘ，θｅｒｒｙが姿勢安定化制御演算部２１２に送られる。なお、θｅｒｒｘはロール方向（Ｘ軸回り）の傾き成分であり、θｅｒｒｙはピッチ方向（Ｙ軸回り）の傾き成分である。この姿勢安定化制御演算部２１２で、ロボット１の上体姿勢の傾きを目標歩容の上体姿勢の傾きに復元するための目標全床反力中心点（目標ＺＭＰ）まわりの補償全床反力モーメントＭｄｍｄが算出されて複合コンプライアンス動作決定部２０４に送られる。複合コンプライアンス動作決定部２０４は、入力値に基づいて目標床反力を修正する。具体的には、目標全床反力中心点（目標ＺＭＰ）まわりに補償全床反力モーメントＭｄｍｄが作用するように目標床反力を修正する。
複合コンプライアンス動作決定部２０４は、修正された目標床反力に、センサ検出値などから算出される実ロボットの状態および床反力を一致させようと上記機構変形補償付き修正目標足平位置姿勢（軌道）を決定する。ただしすべての状態を目標に一致させることは事実上不可能であるので、これらの間にトレードオフ関係を与えて妥協的になるべく一致させる。すなわち、各目標に対する制御偏差に重みを与えて、制御偏差（あるいは制御偏差の２乗）の重み付き平均が最小になるように制御する。これによりロボット１の実際の足平位置姿勢と全床反力とが歩容生成装置２００で生成された目標足平位置姿勢と目標全床反力とに概ね追従するように制御される。
補足すると、機構変形補償付き修正目標足平位置姿勢（軌道）は、複合コンプライアンス動作決定部２０４によって修正された床反力の目標値を発生させるために必要な足平の変形機構（前記図３の足平機構の弾性部材１０６、足底弾性体７１及び袋状部材１０９）の変形量を変形機構の力学モデル（ばねダンパーモデル等）を用いて求めて、その変形量が発生するように修正した目標足平位置姿勢（軌道）である。
以下に本発明の第１実施形態におけるＳ０２２の軌道誘導処理を詳説する。
図１３に、該軌道誘導処理のフローチャートを示す。
まず、Ｓ３０００において、図１６に示すように、現在の推定支持脚座標系（前回の制御周期で決定した推定支持脚座標系）の代表点Ｐ（０）の位置と目標経路とを基に、今回短期目標点Ｑ（０）を決定する。
目標経路は、前記推定支持脚座標系の時系列が表すロボット１の実際の足跡（遊脚の足平２２の着地位置及び向きの列）を沿わせるべき経路であり、以下の説明では目標経路を目標足跡経路ということがある。この目標足跡経路は、あらかじめ設定しておいても良いが、ロボット１の移動中に、地図情報とロボット１の推定自己位置姿勢（グローバル座標系における推定支持脚座標系の位置及び向き）を基に、障害物等を回避しつつ目標点に到達する目標足跡経路を随時生成するようにしてもよい。本実施形態では、前記制御ユニット６０に備えた前記移動計画部２２２が目標足跡経路を出力するが、Ｓ３０００において生成しても良い。
なお、支持脚座標系の代表点Ｐ（０）とは、該支持脚座標系上のある所定の点である。この代表点Ｐ（０）は、図１４および図１５に示すように、前記した支持脚足平２２の位置姿勢と支持脚座標系の位置姿勢との対応関係を満足するように支持脚座標系に対応させて定まる水平姿勢の支持脚足平２２Ｒ又は２２Ｌに他方の足平２２Ｌ又は２２Ｒを並列させ（両足平２２Ｒ，２２Ｌを揃える）、ロボット１を通常的な直立姿勢で起立させた状態（ロボット１の左右対称の状態）において、該代表点Ｐ（０）のＹ軸方向（左右方向）の位置が両足平２２Ｒ，２２Ｌの間の位置になるように設定される。すなわち、支持脚足平２２が左側の足平２２Ｌである場合には、図１５に示すように、該支持脚足平２２Ｌに対応する支持脚座標系の代表点Ｐ（０）は、そのＹ軸方向の位置が支持脚足平２２Ｌから右側に所定の距離だけ離れた位置なるように設定される。また、支持脚足平２２が右側の足平２２Ｒである場合には、図１４に示すよう、支持脚足平２２Ｒに対応する支持脚座標系の代表点Ｐ（０）は、そのＹ軸方向の位置が支持脚足平２２Ｒから左側に所定の距離だけ離れた位置になるように設定される。
また、支持脚座標系の代表点のＸ軸方向の位置は、該支持脚座標系に対応する支持脚足平２２の踵の近く、あるいはつま先の近くに設定することが好ましい。支持脚座標系の代表点を支持脚足平２２の踵近くに設定した場合には、左右の足平２２Ｒ，２２Ｌに対応する支持脚座標系の代表点をある床に固定された点に一致させたまま、両足平２２Ｒ，２２Ｌのつま先を開いたり閉じたりして、その場旋回させても、足平２２Ｒ，２２Ｌ同士が干渉しない。また、支持脚座標系の代表点は、足平２２のつま先近くに設定した場合には、左右の足平２２Ｒ，２２Ｌに対応する支持脚座標系の代表点をある床に固定された点に一致させたまま、両足平のかかとを開いたり閉じたりしてその場旋回させても、足平２２Ｒ，２２Ｌ同士が干渉しない。
これに対して、支持脚座標系の代表点のＸ軸方向（支持脚足平２２の前後方向）の位置を支持脚足平２２のつま先と踵との真中付近に設定すると、一方の足平２２Ｒ又は２２Ｌに対して他方の足平２２Ｌ又は２２Ｒの向きを少し異なる向きにしただけで、踵またはつま先が互いに干渉するようになる。
このようなことから、本実施形態では、図１４および図１５に示すように、両足平２２Ｒ，２２Ｌを揃えた通常の直立姿勢（左右対称の姿勢）において、両足平２２Ｒ，２２Ｌの左右中央で、かつ、踵寄りの点で、かつ左右の足平２２Ｒ，２２Ｌにそれぞれ対応する支持脚座標系の代表点を一致させるように該支持脚座標系の代表点を設定する。図１４は、右脚体２Ｒが支持脚であった場合の支持脚座標系の代表点を示す。図１５は、左脚体２Ｌが支持脚であった場合の支持脚座標系の代表点を示す。
なお、支持脚座標系の代表点Ｐ（０）は、接地時の足平２２との相対関係によって決定される点であるので、以降、足平代表点と呼ぶことがある。
前記今回短期目標点Ｑ（０）は、より具体的には、線分Ｐ（０）Ｑ（０）がある所定の長さＬｑ０になるように、目標経路（目標足跡経路）上に設定する。言い換えると、Ｐ（０）を中心とする半径が前記所定の長さＬｑ０の円の円周と目標経路との交点にＱ（０）を設定する。ただし、代表点Ｐ（０）とロボット１の最終的な移動目的地の距離が前記所定の長さＬｑ０以下の場合には、その目的地にＱ（０）を設定する。
なお、前記所定の長さＬｑ０は、ロボット１の要求される移動速度が速いほど、長くなるように該移動速度に応じて設定することが好ましい。長さＬｑ０を短くすると、ロボット１の足平着地位置が目標経路に漸近する速度が速くなる代わりに、足平着地向きの変化率（またはロボット１の上体３のヨーレート）が大きくなる。
次いでＳ３００２に進み、線分Ｐ（０）Ｑ（０）上に次回歩容支持脚座標系の代表候補点Ｒ（０）を決定する。具体的には、線分Ｐ（０）Ｒ（０）がある所定の長さＬｒ０になるように、線分Ｐ（０）Ｑ（０）上にＲ（０）を設定する。ただし、Ｐ（０）とロボット１の最終的な移動目的地の距離が前記所定の長さＬｒ０以下の場合には、該目的地にＲ（０）を設定する。所定の長さＬｒ０は、例えばロボット１の要求される移動速度で直進した場合の通常的な歩幅相当の長さでよい。
次いでＳ３００４に進み、図１６に示すように、着地許容領域の点で、かつ代表候補点Ｒ（０）に最も近い点をＰ（１）と決定する。
上記着地許容領域は、現在のロボット１の状態（今回歩容の開始時の状態）から遊脚を振って遊脚足平２２を着地させた場合に、脚体２同士の干渉が生じる、脚体２の動作許容範囲を越える、脚体２の関節アクチュエータ（電動モータ６４）に無理な速度や力が発生する、などの支障が発生しないような遊脚足平２２の着地時の遊脚足平代表点の位置とその遊脚足平の向きとの許容領域（次回歩容支持脚座標系の代表点の位置及び向きの許容領域）である。つまり、着地許容領域は、ロボット１自身の機構的な（あるいは運動的な）制約に基づく許容領域である（以下、着地許容領域を自己依存着地許容領域ということがある）。
したがって、上記自己依存着地許容領域は、遊脚足平が着地した状態で遊脚と支持脚とが干渉しない範囲に含まれる。
例えばロボット１の歩行において、遊脚足平２２の着地時での遊脚と支持脚との干渉を考慮した場合、遊脚足平２２の着地向きが支持脚足平２２に対して０度の場合、すなわち、遊脚足平２２を支持脚足平２２の向き（支持脚座標系のＸ軸方向の向き）と同じ向きで着地させる場合には、支持脚足平２２に対して、図１８に示す太曲線の中が、該遊脚足平２２に対する着地許容領域（より詳しくは該遊脚足平代表点の許容領域）となる。遊脚足平２２の着地向きが支持脚足平２２に対して−３０度の場合、すなわち、遊脚足平２２を支持脚足平２２の向き（支持脚座標系のＸ軸方向の向き）に対して時計回り方向に３０°回転させた向きで着地させる場合には、図１９に示す太曲線の中が着地許容領域（より詳しくは該遊脚足平代表点の許容領域）となる。
厳密には、着地許容領域は、遊脚足平２２の代表点のＸ座標、Ｙ座標と足平着地向きθｚの組の集合、すなわち３次元の集合であり、図１８は該集合のうち、足平着地向きθｚが０度の部分集合であり、図１９は足平着地向きθｚが−３０度の部分集合である。図１８および図１９は、３次元の領域である着地許容領域を足平着地向きθｚがある一定の値である平面で切った時の断面の領域である。この断面の領域をＸ座標、Ｙ座標の組の集合で表わしたものを自己依存着地位置許容領域と呼ぶ。
図１８および図１９では、遊脚着地状態で遊脚と支持脚が干渉しない範囲に自己依存着地許容領域を一致させた例を示したが、遊脚足平２２の現在位置姿勢（今回歩容の開始時の遊脚足平２２の位置姿勢）によっては、遊脚の現在位置姿勢から着地位置姿勢まで移動する間に、遊脚が支持脚に干渉する場合もある。そして、この遊脚の運動中の干渉を考慮すると、自己依存着地許容領域は、遊脚の現在位置姿勢に依存して、遊脚着地状態で遊脚と支持脚とが干渉しない範囲（図１７及び図１８に例示した着地許容領域）よりも狭くなる場合もある。
なお、自己依存着地許容領域は、ロボット１の移動中にリアルタイムに求めても良いが、本実施形態では、制御ユニット６０のコンピュータの演算負荷を低減するために、あらかじめ定めたマップにより自己依存着地許容領域が設定される。この場合、自己依存着地許容領域は、支持脚座標系に対する相対的な許容領域としてマップ化されており、現在の推定支持脚座標系の位置姿勢（位置及び向き）と、現在の推定支持脚座標系に対する現在の遊脚足平２２の位置姿勢と、前記線分Ｐ（０）Ｑ（０）の向きにより定まる遊脚足平２２の着地向きとから上記マップにより自己依存着地位置許容領域が設定される。なお、自己依存着地許容領域の、支持脚座標系に対する相対的な領域（領域の境界）を演算式によりあらかじめ定めておき、その演算式を用いて自己依存着地位置許容領域を設定するようにしてもよい。
また、遊脚着地までの時間の余裕が少ない時にも、遊脚足平２２の自己依存着地許容範囲は狭く限定される場合がある。この場合、自己依存着地許容領域は、遊脚足平２２の着地位置姿勢を変更する前の着地位置姿勢（前回軌道誘導処理において、決定あるいは修正した次回歩容支持脚座標系）に依存する。
Ｓ３００４においては、具体的には、代表候補点Ｒ（０）が前記着地位置許容領域内に存在する場合（換言すると、代表候補点Ｒ（０）と前記遊脚着地向きとの組が前記着地許容領域内に存在する場合）には、該代表候補点Ｒ（０）がそのまま今回歩容の遊脚足平２２の着地時の代表点Ｐ（１）として決定される。また、図１６に示すように、代表候補点Ｒ（０）が着地位置許容領域から逸脱している場合には、着地位置許容領域の境界（太線）上の点で、かつ代表候補点Ｒ（０）に最も近い点がＰ（１）として決定される。
なお、足平代表点のＸ座標、Ｙ座標と足平向きθｚを要素とする３次元空間において、任意の２点Ｍ＝（ＸＭ，ＹＭ，θＺＭ）、Ｎ＝（ＸＮ，ＹＮ，θＺＮ）の間の距離ノルムａＭＮを、例えば、
2003090982.tif 000003
と定義し、Ｘ座標、Ｙ座標がＲ（０）の座標で、足平向きがθｚである３次元空間上の点から、前記距離ノルムが最小となる自己依存着地許容領域内の点の位置と向きを次回歩容支持脚座標系の位置と向きとして決定しても良い。
次いでＳ３００６に進み、今回歩容の遊脚足平２２の着地位置を表す代表点Ｐ（１）の位置と線分Ｐ（０）Ｑ（０）の向きとを基に、次回歩容支持脚座標系の位置及び向きが決定される。より具体的には、次回歩容支持脚座標系の代表点の位置がＰ（１）で、且つ次回歩容支持脚座標系のＸ軸向きが線分Ｐ（０）Ｑ（０）の向きとなるように、次回歩容支持脚座標系の位置と向きとが決定される。
なお、上記の説明では、次回歩容支持脚座標系の向きを線分Ｐ（０）Ｑ（０）の向きに決定したが、この向きは、今回歩容支持脚座標系に対する次回歩容支持脚座標系の向きの旋回許容範囲（ロボット１の機構的な制約によって規定される範囲で、前記着地許容領域が存在し得る次回歩容支持脚座標系の向きの範囲）を逸脱する場合もある。そして、このような場合には、次回歩容支持脚座標系の向きは、強制的に上記旋回許容範囲の上限もしくは下限の向きに決定され、その決定した向きに応じて前記Ｓ３００２〜Ｓ３００６の処理と同様に、次回歩容支持脚座標系の位置が決定される。このことは、以下に説明する次次回支持脚座標系の位置および向きの決定処理（具体的にはＳ３０１０〜Ｓ３０１４の処理）においても同様である。
次いでＳ３００８に進み、次回歩容支持脚座標系の代表点Ｐ（１）と目標経路を基に、図１７のように次回短期目標点Ｑ（１）を決定する。より具体的には、次回短期目標点Ｑ（１）は、線分Ｐ（１）Ｑ（１）が、ある所定の長さＬｑ１になるように、目標足跡経路上に設定される。ただし、Ｐ（１）とロボット１の最終的な移動目的地との距離が前記所定の長さＬｑ１以下の場合には、該目的地にＱ（１）を設定する。Ｌｑ１は前記Ｌｑ０と同一長さで良いが、異なる値に設定しても良い。
次いでＳ３０１０に進み、線分Ｐ（１）Ｑ（１）上に次次回歩容支持脚座標系の代表候補点Ｒ（１）を決定する。具体的には、線分Ｐ（１）Ｒ（１）がある所定の長さＬｒ１になるように、線分Ｐ（１）Ｑ（１）上にＲ（１）を設定する。ただし、Ｐ（１）とロボット１の最終的な移動目的地との距離が前記所定の長さＬｒ１以下の場合には、該目的地にＲ（１）を設定する。Ｌｒ１は前記Ｌｒ０と同一長さで良いが、異なる値に設定してもよい。
次いでＳ３０１２に進み、図１７に示すように、次回歩容支持脚座標系に対して設定した着地位置許容領域（遊脚着地向きを線分Ｐ（１）Ｑ（１）の向きとした場合の着地位置許容領域）内の点で、かつ代表候補点Ｒ（１）に最も近い点をＰ（２）と決定する。具体的には、代表候補点Ｒ（１）が次回歩容支持脚座標系に対応する着地位置許容領域内にない場合には、該着地位置許容領域の境界（太線）上の点で、かつ代表候補点Ｒ（１）に最も近い点がＰ（２）として決定される。また、図１７に示すように、代表候補点Ｒ（１）が着地位置許容領域内にある場合には、代表候補点Ｒ（１）がそのまま代表点Ｐ（２）として決定される。
次いでＳ３０１４に進み、Ｓ３００４と同様、次次回歩容支持脚座標系の代表点Ｐ（２）の位置と線分Ｐ（１）Ｑ（１）の向きとを基に、次次回歩容支持脚座標系の位置と向きとが決定される。より具体的には、次次回歩容支持脚座標系の代表点の位置がＰ（２）で、且つ次次回歩容支持脚座標系のＸ軸向きが線分Ｐ（１）Ｑ（１）の向きとなるように、次次回歩容支持脚座標系の位置と向きとが決定される。
以上が第１実施形態におけるＳ０２２の軌道誘導処理である。
次に、前述のごとく、図９のＳ０２４からＳ０３２まで実行し、Ｓ０３２において目標ＺＭＰが許容範囲に存在していないと判断されると、Ｓ０３４に進み、軌道誘導補正サブルーチンが実行される。
以下にＳ０３４の軌道誘導補正サブルーチンの処理を図２０のフローチャートを参照して説明する。
まず、Ｓ３１００において、目標ＺＭＰが許容範囲を越えた分を求める。以降、これをｅとする。ｅは、今回歩容の支持脚座標系のＸ軸成分とＹ軸成分とからなるベクトルである。なお、許容範囲を越えていない成分は０にする。
次いでＳ３１０２に進み、次式１を用いて、前記軌道誘導サブルーチンで求めたＲ（０）（右辺のＲ（０））を基に、新たなＲ（０）（左辺のＲ（０））を求める。ただし、Ｋａは所定の係数である。
Ｒ（０）＝Ｋａ＊ｅ＋Ｒ（０）          …式１
このようにする理由を述べると、軌道誘導補正サブルーチンにおいて今回歩容の遊脚足平２２の着地位置を修正すると、その後Ｓ０３０において今回歩容の終端発散成分が定常旋回歩行の初期発散成分に一致するように、目標ＺＭＰ軌道パラメータを修正した時に、今回歩容の遊脚足平２２の着地位置の修正量と目標ＺＭＰ軌道パラメータの修正量が比例するからである。故に、式１により、Ｒ（０）を変更することにより、目標ＺＭＰが許容範囲を越えないようになるか、あるいは少なくとも目標ＺＭＰが許容範囲を越える分が減少する。
次いでＳ３１０４からＳ３１１４までを、図１３のＳ３００４からＳ３０１４までと同様に実行する。なお、Ｒ（１）も、Ｒ（０）と同様、ＺＭＰ超過分に応じて変更しても良いが必ずしも変更する必要はない。これは、Ｒ（１）が、ロボット１の実際の制御には用いない仮想的な周期的歩容である定常旋回歩容を決定するために使用される次次回歩容支持脚座標系の代表点であるからである。
上記のごとく、軌道誘導補正サブルーチンにおいては、目標ＺＭＰが許容範囲を越えていたら、目標ＺＭＰが許容範囲を越えないように、あるいは少なくとも目標ＺＭＰが許容範囲を越えた分が減少するように、今回歩容の遊脚足平２２の着地位置（目標着地位置）、すなわち次回歩容支持脚座標系の位置が修正される。
軌道誘導補正サブルーチンが完了した後、図９のＳ０３６を経て、Ｓ０２４に戻り、上記の処理を再び実行する。以降、Ｓ０３２において目標ＺＭＰが許容範囲に存在すると判断されると、Ｓ０３８に進む。したがって、Ｓ０３８に進んだ時には、前記着地許容領域（自己依存着地許容領域）の制約と目標ＺＭＰ許容範囲とのいずれも満足した、次回歩容支持脚座標系（次回着地位置姿勢）、次次回歩容支持脚座標系（次次回着地位置姿勢）が決定されている。
なお、軌道誘導補正サブルーチンでは、次回歩容支持脚座標系及び次次回歩容支持脚座標系の位置以外のその他の歩容パラメータ（例えば歩容周期等）を修正することで、目標ＺＭＰが許容範囲に収まるように今回歩容パラメータを決定するようにすることも可能である。
なお、以上説明した第１実施形態は、本発明の第１〜第９発明の一実施形態であり、前記歩容生成処理、自己位置姿勢推定処理がそれぞれ、目標歩容決定手段、足平着地位置・向き推定手段に対応している。また、前記軌道誘導処理及び軌道誘導補正処理が足平目標着地向き決定手段に対応している。
次に本発明の第２実施形態を図２１〜図２４を参照して説明する。第２実施形態においては、前記図９のＳ０２２の軌道誘導処理およびＳ０３４の軌道誘導補正処理以外は、第１実施形態と同じである。従って、以下では、第２実施形態における図９のＳ０２２の軌道誘導処理とＳ０３４の軌道誘導補正処理のみを説明する。
図２１は、第２実施形態における図９のＳ０２２の軌道誘導処理を示すフローチャートである。
第２実施形態におけるＳ０２２の軌道誘導処理を図２１を参照して詳説すると、まず、Ｓ３２００において、現在の推定支持脚座標系（現在時刻ｔの制御周期における図９のＳ０１６で求めた推定支持脚座標系）の代表点Ｐ（０）と目標経路（目標足跡経路）とを基に、図２２に示すように、代表点Ｐ（０）から目標足跡経路に漸近する曲線Ｃを決定する。具体的には、軌道誘導制御される無人搬送車や自動運転車が目標経路に漸近する場合の軌跡になるように曲線Ｃを決定する。
より具体的には、前記曲線Ｃ上の任意の点Ａから目標経路に降ろした垂線と目標経路との交点を点Ｂとした時、前記曲線Ｃの点Ａにおける曲率を次式２により決定する。
曲線の点Ａにおける曲率
＝Ｋａ＊（線分ＡＢの長さ）
＋Ｋｂ＊（点Ａにおける曲線の接線向き−点Ｂにおける目標経路の接線向き）
…式２
ただし、Ｋａ、Ｋｂは所定のゲインである。
次いでＳ３２０２に進み、前記曲線Ｃ上に次回歩容支持脚座標系の代表候補点Ｒ（０）を決定する。具体的には、線分Ｐ（０）Ｒ（０）がある所定の長さＬｒ０になるように、前記曲線上にＲ（０）を設定する。ただし、Ｐ（０）とロボット１の最終的な移動目的地の距離が前記所定の長さＬｒ０以下の場合には、該目的地にＲ（０）を設定する。
次いでＳ３２０４に進み、前記第１実施形態で説明した図１３のＳ３００４の処理と同様、現在の推定支持脚座標系に対する自己依存着地位置位置許容領域（着地向きが代表候補点Ｒ（０）での前記曲線Ｃの接線向きである自己依存着地位置許容領域）内の点で、かつ代表候補点Ｒ（０）に最も近い点をＰ（１）と決定する。
次いでＳ３２０６に進み、図２２に示すように、次回歩容支持脚座標系の代表点の位置がＰ（１）で次回歩容支持脚座標系のＸ軸向きが代表点Ｐ（１）における前記曲線Ｃの接線向き（より正確には、代表点Ｐ（１）から曲線Ｃに降ろした垂線と該曲線Ｃの交点における曲線Ｃの接線向き）となるように、次回歩容支持脚座標系の位置と向きとを決定する。
補足すると、Ｐ（１）における前記曲線Ｃの接線向きとＲ（０）における前記曲線Ｃの接線向きは、ほぼ等しいと考えられるので、上記の如く決定される次回歩容支持脚座標系に位置と向きの組は、ほぼ自己依存着地許容領域を満足する。
次いでＳ３２０８に進み、前記曲線Ｃ上に次次回歩容支持脚座標系の代表候補点Ｒ（１）を決定する。具体的には、線分Ｐ（１）Ｒ（１）が、ある所定の長さＬｑ１になるように、前記曲線Ｃ上にＲ（１）を設定する。ただし、Ｐ（１）とロボット１の最終的な移動目的地との距離が前記所定の長さＬｑ１以下の場合には、該目的地にＲ（１）を設定する。Ｌｑ１はＬｑ０と同一で良いが、異なる値に設定しても良い。
次いでＳ３２１０に進み、前記第１実施形態で説明した図１３のＳ３０１２と同様、次回歩容支持脚座標系に対する自己依存着地許容領域（着地向きが代表候補点Ｒ（１）での前記曲線Ｃの接線向きである自己依存着地位置許容領域）の点で、かつ代表候補点Ｒ（１）に最も近い点をＰ（２）と決定する（図２３参照）。
次いでＳ３２１２に進み、図２３に示すように、次次回歩容支持脚座標系の代表点の位置がＰ（２）で次次回歩容支持脚座標系のＸ軸向きが代表点Ｐ（２）における前記曲線の接線向き（より正確には、代表点Ｐ（２）から曲線Ｃに降ろした垂線と該曲線Ｃの交点における曲線Ｃの接線向き）となるように、次次回歩容支持脚座標系の位置と向きとを決定する。
以上が第２実施形態におけるＳ０２２の軌道誘導処理である。
次いで、第２実施形態における図９のＳ０３４の軌道誘導補正サブルーチンの処理をその処理のフローチャートである図２４を用いて説明する。
まず、Ｓ３３００において、前記第１実施形態で説明した図２０のＳ３１００と同様、目標ＺＭＰが許容範囲を越えた分ｅを求める。
次いでＳ３３０２に進み、第１実施形態の図２０のＳ３１０２と同様、前記式１によって、Ｒ（０）を求める。
次いでＳ３３０４からＳ３３１２まで、図２１のＳ３２０４からＳ３２１２までの処理と同様の処理を実行する。
なお、以上説明した第２実施形態は、前記第１実施形態と同様、本発明の第１〜第９発明の実施形態である。
次に、本発明の第３実施形態を図２５〜図２７を参照して説明する。第３実施形態においては、前記図９のＳ０２２の軌道誘導処理およびＳ０３４の軌道誘導補正処理以外は、第１実施形態と同じである。従って、以下では、第３実施形態における図９のＳ０２２の軌道誘導処理とＳ０３４の軌道誘導補正処理のみを説明する。
図２５は、第３実施形態における図９のＳ０２２の軌道誘導処理を示すフローチャートである。
第３実施形態における図９のＳ０２２の軌道誘導処理を詳説すると、まず、Ｓ３４００において、図２６に示すように、前記第１実施形態で説明した図１３のＳ３０００と同様に、現在の推定支持脚座標系の代表点Ｐ（０）と目標経路（目標足跡経路）とを基に、今回短期目標点Ｑ（０）を決定する。
次いでＳ３４０２に進み、現在の推定支持脚座標系に対する自己依存着地位置許容領域（着地向きが線分Ｐ（０）Ｑ（０）の向きである自己依存着地位置許容領域）を越えないように、線分Ｐ（０）Ｑ（０）上に次回歩容支持脚座標系の代表点Ｐ（１）を決定する。具体的には、図２６に示すように、自己依存着地位置許容領域の境界線と線分Ｐ（０）Ｑ（０）の交点にＰ（１）を設定する。自己依存着地位置許容領域は第１実施形態と同様に設定される。
次いでＳ３４０４に進み、図２６に示すように、前記第１実施形態の図１３のＳ３００６と同様、次回歩容支持脚座標系の代表点の位置がＰ（１）で、且つ次回歩容支持脚座標系のＸ軸向きが線分Ｐ（０）Ｑ（０）の向きとなるように、次回歩容支持脚座標系の位置と向きとを決定する。
次いでＳ３４０６に進み、図２６に示すように、前記第１実施形態の図１３のＳ３００８と同様に、次回歩容支持脚座標系の代表点Ｐ（１）と目標経路（目標足跡経路）とを基に、次回短期目標点Ｑ（１）を設定する。
次いでＳ３４０８に進み、次回歩容支持脚座標系に対する自己依存着地位置許容領域（着地向きが線分Ｐ（１）Ｑ（１）の向きである自己依存着地位置許容領域）を越えないように、線分Ｐ（１）Ｑ（１）上に次次回歩容支持脚座標系の代表点Ｐ（２）を決定する。具体的には、次回歩容支持脚座標系に対する自己依存着地位置許容領域の境界線と線分Ｐ（１）Ｑ（１）の交点にＰ（２）を設定する（図２６参照）。なお、図２６では次回歩容支持脚座標系に対する自己依存着地位置許容領域は図示を省略している。
次いでＳ３４１０に進み、図２６に示すように、前記第１実施形態の図１３のＳ３０１４と同様、次次回歩容支持脚座標系の代表点の位置がＰ（２）で、且つ次次回歩容支持脚座標系のＸ軸向きが線分Ｐ（１）Ｑ（１）の向きとなるように、次次回歩容支持脚座標系の位置と向きとを決定する。
以上が第３実施形態における図９のＳ０２２の軌道誘導処理である。
次いで、第３実施形態における図９のＳ０３４の軌道誘導補正サブルーチンの処理を、この処理のフローチャートである図２７を用いて説明する。
まず、Ｓ３５００において、前記第１実施形態の図２０のＳ３１００と同様、目標ＺＭＰが許容範囲を越えた分ｅを求める。
次いでＳ３５０２に進み、前記軌道誘導サブルーチンで求めたＰ（１）を基に、次式３を用いて、新たなＰ（１）を求める。
Ｐ（１）＝Ｋａ＊ｅ＋Ｐ（１）          …式３
次いでＳ３５０４からＳ３５１０までを、図２５のＳ３４０４からＳ３４１０までと同様に実行する。
上記のごとく、第３実施形態の軌道誘導補正サブルーチンにおいては、目標ＺＭＰが許容範囲を越えていたら、越えないように、今回歩容の遊脚足平２２の着地位置（次回歩容支持脚座標系の位置）を修正する。
なお、以上説明した第３実施形態は、前記第１実施形態と同様、本発明の第１〜第９発明の実施形態である。
次に本発明の第４実施形態を図２８〜図３０を参照して説明する。第４実施形態においては、前記図９のＳ０２２の軌道誘導処理およびＳ０３４の軌道誘導補正処理以外は、第１実施形態と同じである。従って、以下では、第４実施形態における図９のＳ０２２の軌道誘導処理とＳ０３４の軌道誘導補正処理のみを説明する。
図２８は、第４実施形態における図９のＳ０２２の軌道誘導処理を示すフローチャートである。
以下に第４実施例におけるＳ０２２の軌道誘導処理を図２８を参照して詳説すると、まず、Ｓ３６００において、前回制御周期（歩容の切り替わり目の制御周期の１つ前の制御周期）に決定されている第１旋回歩容を今回歩容に、前回制御周期に決定されている第２旋回歩容を次回歩容とする。換言すれば、前回歩容の生成開始時に決定した定常旋回歩容（前記図１２を参照）の第１旋回歩容および第２旋回歩容をそれぞれ今回歩容、次回歩容とする。
次いで、Ｓ３６０２に進み、現在の推定支持脚座標系（歩容の切り替わり目の制御周期での図９のＳ０１６で最終的に決定された推定支持脚座標系）と、上記Ｓ３６００で定めた今回歩容および次回歩容とを基に、予想次回着地位置姿勢と予想次次回着地位置姿勢を算出する。予想次回着地位置姿勢は、今回歩容の遊脚足平２２の着地位置姿勢の仮値であり、予想次次回着地位置姿勢は、次回歩容の遊脚足平２２の着地位置姿勢の仮値である。
より具体的には、今回歩容の支持脚座標系が、現在の推定支持脚座標系に一致していると想定して、前記図１２に示した各座標系（詳しくは、図１２の次回歩容支持脚座標系、次次回歩容支持脚座標系、および次次次回歩容支持脚座標系）の関係を満足するように、予想次回着地位置姿勢（今回歩容の遊脚足平２２の予想着地位置・向き）と予想次次回着地位置姿勢（次回歩容の遊脚足平２２の予想着地位置・向き）を求める。図２９と前記図１２とを参照してさらに詳説すると、前回歩容に対応して決定した定常旋回歩容の第１旋回歩容の支持脚座標系（図１２中の次回歩容支持脚座標系）が現在の推定支持脚座標系に合致していると想定する。そして、現在の推定支持脚座標系から見た、予想次回着地位置姿勢に対応する予想次回支持脚座標系（図２９参照）の位置および向きが、前回歩容に対応する定常旋回歩容における第１旋回歩容の支持脚座標系から見た第２旋回歩容の支持脚座標系の位置および向き（図１２中の次回歩容支持脚座標系から見た次次回歩容支持脚座標系の位置および向き）に一致するように予想次回着地位置姿勢を決定する。従って、図２９に示す現在の推定支持脚座標系に対する予想次回支持脚座標系の相対的位置姿勢は、図１２の次回歩容支持脚座標系（第１旋回歩容の支持脚座標系）に対する次次回歩容支持脚座標系（第２旋回歩容の支持脚座標系）の相対的位置姿勢と同一にされる。
さらに、現在の推定支持脚座標系から見た、予想次次回着地位置姿勢に対応する予想次次回支持脚座標系（図２９参照）の位置および向きが、前回歩容に対応する定常旋回歩容における第１旋回歩容の支持脚座標系から見た次の第１旋回歩容の支持脚座標系の位置および向き（図１２中の次回歩容支持脚座標系から見た次次次回歩容支持脚座標系の位置および向き）に一致するように予想次次回着地位置姿勢を決定する。従って、図２９に示す現在の推定支持脚座標系に対する予想次次回支持脚座標系の相対的位置姿勢は、図１２の次回歩容支持脚座標系（第１番目の第１旋回歩容の支持脚座標系）に対する次次回歩容支持脚座標系（第２番目の第１旋回歩容の支持脚座標系）の相対的位置姿勢と同一にされる。
次いでＳ３６０４に進み、図２９に示す、予想次回着地位置姿勢の目標経路からの位置ずれと方向ずれである、予想次回着地位置ずれと予想次回着地方向ずれを算出する。予想次回着地位置ずれは、予想次回着地位置姿勢に対応する足平代表点から目標経路まで降ろした垂線の長さ（足平代表点の該目標経路との距離）であり、予想次回着地方向ずれは、上記垂線と目標経路との交点における目標経路の接線向きと、予想次回着地位置姿勢に対応する足平２２（図では２２Ｒ）の向き（前後方向の向き）とのなす角度で表される。
次いでＳ３６０６に進み、図２９に示す、予想次次回着地位置姿勢の経路からの位置ずれと方向ずれである、予想次次回着地位置ずれと予想次次回着地方向ずれを算出する。この算出は、上記に説明したＳ３６０４と同様に行われる。
次いでＳ３６０８に進み、上記ずれに基づき、次回歩容支持脚座標系の位置と向き、次次回歩容支持脚座標系の位置と向きを決定する。
例えば、式４、式５、式６および式７により次回歩容支持脚座標系の位置および向きの修正量と次次回歩容支持脚座標系の位置および向きの修正量とを決定し、その修正量を、それぞれＳ３６０２で求めた予想次回着地位置姿勢に対応する予想次回支持脚座標系の位置および向き、予想次次回着地位置姿勢に対応する予想次次回支持脚座標系の位置および向きに加えることにより、次回歩容支持脚座標系、次次回歩容支持脚座標系を決定する。
次回歩容支持脚座標系の位置の修正量
＝Ｋ１１＊予想次回着地位置ずれ＋Ｋ１２＊予想次回着地方向ずれ
＋Ｋ１３＊予想次次回着地位置ずれ＋Ｋ１４＊予想次次回着地方向ずれ
…式４
次回歩容支持脚座標系の向きの修正量
＝Ｋ２１＊予想次回着地位置ずれ＋Ｋ２２＊予想次回着地方向ずれ
＋Ｋ２３＊予想次次回着地位置ずれ＋Ｋ２４＊予想次次回着地方向ずれ
…式５
次次回歩容支持脚座標系の位置の修正量
＝Ｋ３１＊予想次回着地位置ずれ＋Ｋ３２＊予想次回着地方向ずれ
＋Ｋ３３＊予想次次回着地位置ずれ＋Ｋ３４＊予想次次回着地方向ずれ
…式６
次次回歩容支持脚座標系の向きの修正量
＝Ｋ４１＊予想次回着地位置ずれ＋Ｋ４２＊予想次回着地方向ずれ
＋Ｋ４３＊予想次次回着地位置ずれ＋Ｋ４４＊予想次次回着地方向ずれ
…式７
Ｓ３６０８においては、次回歩容支持脚座標系の位置と向き、次次回歩容支持脚座標系の位置と向きの少なくともいずれかを修正するだけでも良い。
以上が第４実施形態における図９のＳ０２２の軌道誘導処理である。
次いで、第４実施形態における図９のＳ０３４の軌道誘導補正サブルーチンの処理を、この処理のフローチャートである図３０を用いて説明する。
まず、Ｓ３７００において、前記第１実施形態の図２０のＳ３１００と同様、目標ＺＭＰが許容範囲を越えた分ｅを求める。
次いでＳ３７０２に進み、ある所定の係数Ｋａにｅを乗じた量だけ、次回歩容支持脚座標系の位置および次次回歩容支持脚座標系の位置を修正する。
なお、以上説明した第４実施形態は、本発明の第１０発明〜第１４発明の一実施形態であり、前記歩容生成処理、自己位置姿勢推定処理がそれぞれ目標歩容決定手段、足平着地位置・向き推定手段に対応している。また、前記軌道誘導処理及び軌道誘導補正処理がそれらを併せて、足平目標着地位置・向き仮決定手段及び足平目標着地位置・向き修正手段に対応している。
次に本発明の第５実施形態を図３１〜図３５を参照して説明する。第５実施形態においては、前記図９のＳ０２２の軌道誘導処理およびＳ０３４の軌道誘導補正処理以外は、第１実施形態と同じである。従って、以下では、第５実施形態における図９のＳ０２２の軌道誘導処理とＳ０３４の軌道誘導補正処理のみを説明する。
第５実施形態は、飛び石の上を歩くなど、遊脚足平２２の着地位置の許容範囲が限定されている場合に対応する実施形態である。
第４実施形態までは、ロボット１の遊脚足平２２の着地位置の位置ずれとしては、基本的には、目標経路の法線方向のみを考慮すれば良かったが、飛び石の上を歩行する場合などのように、遊脚足平２２の着地位置が指定される場合には、その着地位置の位置ずれとしては、前後左右両方向のずれを考慮する必要がある。
図３１は、第５実施形態におけるＳ０２２の軌道誘導処理である。
以下に第５実施形態におけるＳ０２２の軌道誘導処理を図３１を参照して詳説すると、まず、Ｓ３８００において、環境依存次回着地位置向き許容範囲と環境依存次次回着地位置向き許容範囲とを決定する。なお、この処理は、本実施形態では、図６の移動計画部２２２により行われ、その決定された環境依存次回着地位置向き許容範囲と環境依存次次回着地向き許容範囲とが前記軌道誘導部２２０に与えられて、該軌道誘導部２２０により後述するＳ３８０２の処理が実行される。
前記Ｓ３８００で決定する環境依存次回着地位置向き許容範囲は、図３２に示すように、環境依存次回着地時足平代表点位置許容範囲（図３２の太線枠内）と環境依存次回着地方向許容範囲から成る。なお、環境依存次回着地時足平代表点位置許容範囲と環境依存次回着地方向許容範囲とを独立に設定できない状況の場合には、環境依存次回着地位置向き許容範囲は、環境依存次回着地時足平代表点位置と環境依存次回着地方向の組み合わせの許容範囲とすればよい。環境依存次回着地位置向き許容範囲は、あらかじめマップ化して記憶しておいても良いが、飛び石などの環境情報からその都度決定しても良い。環境依存次次回着地位置向き許容範囲も、環境依存次回着地位置向き許容範囲と同様に設定される。
次いで、Ｓ３８０２に進み、環境依存次回着地位置向き許容範囲、環境依存次次回着地位置向き許容範囲、並びにロボット１自身の機構的制約条件である前記自己依存着地許容領域（前記第１実施形態で図１８、図１９等を参照して説明した着地許容領域）をいずれも満足するように、次回歩容支持脚座標系の位置と向き、並びに次次回歩容支持脚座標系の位置と向きを決定する。
このＳ３８０２の処理を図３３のフローチャートを参照してさらに説明する。まず、Ｓ３８５０において、次回着地位置向き（次回歩容支持脚座標系の代表点の位置と該座標系の向き）を環境依存次回着地位置向き許容範囲内で且つ現在の推定支持脚座標系に対応する自己依存着地許容領域（次回着地位置向きの自己依存着地許容領域）内で仮決定する。具体的には、それらの環境依存次回着地位置向き許容範囲と自己依存着地許容領域との共通領域（位置と向きの組の共通領域）内で、該共通領域の中央に次回着地位置向きを仮決定する。
次いで、Ｓ３８５２に進み、上記の如く仮決定した次回着地位置向き（次次回支持脚座標系の代表点の位置および足平着地向き）を基に、次次回着地位置向きの自己依存着地許容領域を求める。
次いでＳ３８５４に進み、次次回着地位置向きの自己依存着地許容領域と環境依存次次回着地位置向き許容範囲との共通領域があるか否かを判断する。
この判断結果がＹＥＳの場合には、Ｓ３８５６に進み、次次回着地位置向きの自己依存着地許容領域と環境依存次次回着地位置向き許容範囲との共通領域内に次次回着地位置向き（次次回支持脚座標系の代表点の位置および該座標系の向き）を決定する。この場合、次次回着地位置向きは、共通領域内のほぼ中央の位置および向きに決定される。これにより、次回歩容支持脚座標系、および次次回歩容支持脚座標系の位置および向きが決定され、図３１のＳ３８０２の処理が終了する。
一方、Ｓ３８５４の判断結果がＮＯである場合には、Ｓ３８５８に進み、次次回着地位置向きの自己依存着地許容領域が環境依存次次回着地位置向き許容範囲に近づくように（それらが共通領域を持つように）、現在決定されている次回着地位置向きのうちの位置および向きの少なくともいずれか（次回歩容支持脚座標系の代表点の位置および該座標系の向きの少なくともいずれか）を修正する。例えば、図３４の左図に示すように次次回着地位置向きの自己依存着地許容領域と環境依存次次回着地位置向き許容範囲とが共通領域が存在しなかった場合には、同図の右図に示すように、次回着地位置向きを修正する。なお、この次回着地位置向きの修正は、次回着地位置向きの自己依存着地許容領域と環境依存次回着地位置向許容範囲の共通領域内で行われる。
次いで、Ｓ３８６０を経てＳ３８５２からの処理が再び実行される。これにより、最終的にＳ３８５６を経て、次回歩容支持脚座標系、および次次回歩容支持脚座標系の位置および向きが決定され、図３１のＳ３８０２の処理が終了する。
以上が第５実施形態における図９のＳ０２２の軌道誘導処理である。
次いで、第５実施形態における図９のＳ０３４の軌道誘導補正サブルーチンの処理を、この処理のフローチャートである図３５を用いて説明する。
まず、Ｓ３９００において、前記第１実施形態の図２０のＳ３１００と同様、目標ＺＭＰが許容範囲を越えた分ｅを求める。
次いでＳ３９０２に進み、ある所定の係数Ｋａにｅを乗じた量だけ、次回歩容支持脚座標系の位置、次次回歩容支持脚座標系の位置を修正する。
次いでＳ３９０４に進み、修正した次回歩容支持脚座標系の位置、次次回歩容支持脚座標系の位置が環境依存次回着地位置向き許容範囲、環境依存次次回着地位置向き許容範囲および自己依存着地許容領域のいずれかを満足しない場合には、最小の修正量で、次回歩容支持脚座標系の位置と向き、次次回歩容支持脚座標系の位置と向きのいずれかを修正する。
すなわち、Ｓ３９０２で決定した値からなるべく離れないように、次回歩容支持脚座標系の位置と向き、次次回歩容支持脚座標系の位置と向きのいずれかを修正する。
なお、以上説明した第５実施形態は、本発明の第１５発明〜第２７発明の一実施形態である。前記歩容生成処理、自己位置姿勢推定処理がそれぞれ目標歩容決定手段、足平着地位置・向き決定手段に対応し、軌道誘導処理及び軌道誘導補正処理がそれらを併せて、着地許容範囲設定手段、足平目標着地位置・向き決定手段に対応している。
次に本発明の第６実施形態を図３６を参照して説明する。図３６は第６実施形態における軌道計画処理（ロボットの足跡決定処理）である。この処理は、前記図６に示す前記移動計画部２２２において実行される。
第６実施形態においては、移動計画部２２２の処理以外は、第１実施形態と同じである。
図３６を用いて第６実施形態における軌道計画処理を説明すると、まず、Ｓ４０００において初期化を行う。具体的には、現在支持脚座標系を第０歩支持脚座標系に代入し、歩数カウンタｎｎを０にする。また、目標歩容を初期化する。目標歩容の初期状態は、通常、ロボット１の直立状態の歩容にする。
次いでＳ４００２に進み、あらかじめ定められた目的地と地図情報から目標経路（目標足跡経路）を決定する。
次いでＳ４００４を経てＳ４００６に進み、図１３の軌道誘導サブルーチン（第１実施形態での軌道誘導サブルーチン）を実行する。ただし、軌道誘導サブルーチンにおいては、同サブルーチン処理における推定支持脚座標系を第ｎｎ支持脚座標系に、次回歩容支持脚座標系を第ｎｎ＋１支持脚座標系に、次次回歩容支持脚座標系を第ｎｎ＋２支持脚座標系に置き換えて、該サブルーチン処理を実行する。
次いでＳ４００８からＳ４０２０まで、図９のＳ０２４からＳ０３６と同様に実行される。
Ｓ４０１６の判断結果（目標ＺＭＰが許容範囲に存在するか否かの判断結果）がＮＯである場合には、Ｓ４０１８に進み、前記図２０に示した軌道誘導補正サブルーチンを実行し、次いでＳ４０２０を経てＳ４００８に戻る。ただし、軌道誘導補正サブルーチンにおいては、Ｓ４００６の軌道誘導サブルーチンの場合と同様、軌道誘導補正サブルーチン処理における推定支持脚座標系を第ｎｎ支持脚座標系に、次回歩容支持脚座標系を第ｎｎ＋１支持脚座標系に、次次回歩容支持脚座標系を第ｎｎ＋２支持脚座標系に置き換えて、該サブルーチン処理を実行する。
Ｓ４０１６の判断結果がＹＥＳである場合には、Ｓ４０２２に進み、ロボット１の最終的な移動目的地に到達するまでの目標軌道が生成されたか否かを判定する。
Ｓ４０２２の判定結果がＹＥＳである場合には、これをもって軌道計画処理を終了する。
Ｓ４０２２の判断結果がＮＯである場合には、歩数カウンタｎｎを１だけ増加させて、Ｓ４００６に戻る。
以上が、第６実施形態における軌道計画処理である。この処理がロボット１の移動前に実行され、この処理結果が、歩容生成装置２００に渡される。
なお、以上説明した第６実施形態は、第２８発明〜第３４発明の一実施形態である。図３６のフローチャートの処理によって第２８発明〜第３４発明の各手段が構成される。
上記第６実施形態では、ロボット１の移動前に、軌道計画処理によって、目標ＺＭＰの許容範囲および自己依存着地許容領域が満足されるので、歩容生成装置２００では、図９のＳ０２２の処理を省略して、前記移動計画部２２２で決定した支持脚座標系の列を順々に次回支持脚座標系および次次回支持脚座標系に代入するだけでも良い。なお、図３６のＳ４００６の軌道誘導サブルーチンおよびＳ４０１８の軌道誘導補正サブルーチンの処理では、前記第１実施形態で説明したもの以外に、第２〜第４実施形態で説明した処理を実行するようにしてもよい。また、飛び石環境下でのロボット１の移動を行わせる場合に対応するロボット１の足跡を決定する場合には、Ｓ４００６の軌道誘導サブルーチンおよびＳ４０１８の軌道誘導補正サブルーチンの処理で、前記第５実施形態で説明した処理を実行するようにしてもよい。これにより、本発明の第３５〜第４１発明の一実施形態が構成されることとなる。この場合には、ロボット１の移動前に、軌道計画処理によって、目標ＺＭＰの許容範囲および自己依存着地許容領域だけでなく、環境依存着地位置向き許容範囲が満足されるので、ロボット１の実際の移動時には、前記第５実施形態での図９のＳ０２２の処理を省略してもよい。
上記より、第６実施形態においては、移動前に軌道誘導処理の一部が実行されていると解釈することもできる。
なお、前記各実施形態において、移動中に新たに発見された障害物等を回避しつつ目的位置まで移動する場合には、現在の推定支持脚座標系の位置姿勢に応じて、現在推定支持脚座標系の位置姿勢から障害物等を回避して目的地に移動する目標経路を作り直しても良い。
また、前述のごとく足平代表点（支持脚座標系の代表点）を支持脚足平２２から他方側の足平２２の方にずれた位置に設定する代わりに、各足平２２の足平代表点を足平２２の中の左右の中央に設定し、前記した各実施形態の目標経路から少し離れた位置に左脚用目標経路（左足平の目標足跡経路）と右脚用目標経路（右足平の目標足跡経路）を設定し、各足平代表点がそれぞれに対応する目標足跡経路に漸近するように、遊脚足平２２の着地位置姿勢を決定しても良い。図３７に、前記第２実施形態に対して、左右の各足平２２毎に上記のごとき目標経路を設定した場合の例（第７実施形態）を示す。他の実施例に対しても、同様に変更しても良い。
飛行体の軌道誘導や無人搬送車の軌道誘導のように、推定上体位置姿勢が目標上体位置姿勢に追従するように、遊脚足平２２の着地位置姿勢を変更する方式も考えられる。ただし、直線移動する場合であっても、動力学的平衡条件を満足するために、目標上体位置は、前後左右に揺れるので、目標上体位置の瞬間的な移動方向が長期的な移動方向とは一致しない。また、目標歩容を修正すると目標上体位置姿勢も変化するため、すなわち、目標上体位置姿勢は現在の歩行状態にも依存するため、該目標上体位置姿勢の軌道は、グローバル座標系上に絶対的に設定できる目標軌道にはならない。したがって、この方式では、それらの不都合を解消するために、上体３が前後左右に揺れる分をキャンセルして長期的な上体３の移動方向を導出するなどの極めて複雑な処理が必要となる。
目標経路としては、記憶している地図情報に基づいて設定した経路以外に、床等に設置されたマーカー、床に引かれた白線、通電線、アンテナ、壁から所定距離離れた点の集合から成る経路（壁沿い移動のため）であっても良い。
推定自己位置の表記としては、グローバル座標系上の位置でなくても、床に引かれた白線や壁からの距離などのように、環境との相対位置関係であっても良い。
歩容の切り替わり目以外でも軌道誘導処理を実行して、着地位置姿勢などの歩容パラメータを修正するようにしても良い。ただし、今回歩容の遊脚足平２２の着地位置は、着地直前になるとほとんど変更できなくなるので、この場合には、主に次回歩容の遊脚足平２２の着地位置を変更するようにする。今回歩容の遊脚足平２２の着地位置姿勢の変更が間に合わない場合には、今回歩容の遊脚足平２２の着地位置姿勢は修正せず、次回歩容の遊脚足平２２の着地位置姿勢のみ修正することが好ましい。
なお、今回歩容の遊脚足平２２の着地位置姿勢の修正が間に合わない場合とは、プログラム上、目標ＺＭＰ軌道あるいは遊脚足平軌道が変更できない場合、あるいは、目標着地位置を変更すると、足平の加速度パターン、関節速度、力（トルク）あるいは目標ＺＭＰ軌道が限界を越えるなど、ロボットの物理的限界を越えて修正される場合のことを指す。
前記軌道誘導サブルーチンで求めた次回および次次回歩容支持脚座標系の位置と向きとを軌道誘導補正サブルーチンで変更する場合、前記各実施形態の軌道誘導補正サブルーチンを用いる代わりに、前記軌道誘導サブルーチンを用いて、前記所定の長さＬｒ０、Ｌｒ１、Ｌｑ０およびＬｑ１の少なくともいずれかを設定し直して（通常、Ｌｑ０、Ｌｑ１は長くし、Ｌｒ０、Ｌｒ１は短くして）、次回および次次回歩容支持脚座標系の位置と向きを再決定させても良い。
以上のように、本発明の各実施形態は、基本的には、上体３の揺れの影響をほとんど受けない足平２２の着地位置姿勢（向き）を基に目標歩容を決定するので、目標経路に対する追従精度と追従応答性が高い軌道誘導をすることができる。
また、第１〜第５実施形態あるいは第７実施形態では、
１）目標経路に対する追従精度と追従応答性が高い軌道誘導（経路誘導）をすることができる。
２）脚体２同士の干渉などロボット自身の構造に起因する運動の制約条件を満足した軌道誘導（経路誘導）をすることができる。
３）安定余裕を高く維持した軌道誘導（経路誘導）をすることができる。
さらに、第６実施形態では、
４）脚体２同士の干渉などロボット自身の構造に起因する運動の制約条件を満足した移動計画を立てることができる。
５）安定余裕を高く維持した移動計画を立てることができる。
産業上の利用可能性
以上のように本発明は、２足移動ロボット等の脚式移動ロボットを所要の目標経路に沿わせるように移動させたり、あるいは、飛び石等、足平の着地位置等が制限される環境下でロボットを移動させたりする場合に、その移動を円滑に行わせることができるものとして有用である。
【図面の簡単な説明】
図１は、本発明の実施形態における脚式移動ロボットとしての２足移動ロボットの全体的構成の概略を示す概略図、図２は図１の各脚体の足平部分の構成を概略的に示す概略図、図３及び図４はそれぞれ各脚体の足平部分の詳細構成を示す側面視の断面図及び底面図、図５は図１のロボットに備えた制御ユニットの構成を示すブロック図、図６は図５の制御ユニットの機能的構成を示すブロック図である。図７はロボットの走行歩容を示す説明図、図８（ａ），（ｂ）はそれぞれ目標歩容の床反力鉛直成分、目標ＺＭＰの設定例を示すグラフ、図９は第１実施形態における制御ユニットの要部の処理を示すフローチャート、図１０は図９のフローチャートの自己位置姿勢推定処理を示すフローチャート、図１１は図９のフローチャートの自己位置姿勢推定処理を説明するための図、図１２は図９のフローチャートの処理で決定する定常旋回歩容に関する説明図、図１３は図９のフローチャートの軌道誘導処理を示すフローチャート、図１４〜図１９は軌道誘導処理を説明するための図、図２０は図９のフローチャートの軌道誘導補正処理を示すフローチャートである。図２１は第２実施形態での軌道誘導処理を示すフローチャート、図２２及び図２３は第２実施形態の軌道誘導処理を説明するための図、図２４は第２実施形態の軌道誘導補正処理を示すフローチャートである。図２５は第３実施形態での軌道誘導処理を示すフローチャート、図２６は第３実施形態の軌道誘導処理を説明するための図、図２７は第３実施形態の軌道誘導補正処理を示すフローチャートである。図２８は第４実施形態の軌道誘導処理を示すフローチャート、図２９は第４実施形態の軌道誘導処理を説明するための図、図３０は第４実施形態の軌道誘導補正処理を示すフローチャートである。図３１は第５実施形態の軌道誘導処理を示すフローチャート、図３２は第５実施形態の軌道誘導処理を説明するための図、図３３及び図３４はそれぞれ図３１のフローチャートの要部処理を詳細に示すフローチャート及びその要部処理の説明図、図３５は第５実施形態の軌道誘導補正処理を示すフローチャートである。図３６は第７実施形態に係る足跡決定処理を示すフローチャートである。図３７は目標経路の他の例を説明するための図である。
【図１】
2003090982.tif 000004
【図２】
2003090982.tif 000005
【図３】
2003090982.tif 000006
【図４】
2003090982.tif 000007
【図５】
2003090982.tif 000008
【図６】
2003090982.tif 000009
【図７】
2003090982.tif 000010
【図８（ａ）】
2003090982.tif 000011
【図８（ｂ）】
2003090982.tif 000012
【図９】
2003090982.tif 000013
【図１０】
2003090982.tif 000014
【図１１】
2003090982.tif 000015
【図１２】
2003090982.tif 000016
【図１３】
2003090982.tif 000017
【図１４】
2003090982.tif 000018
【図１５】
2003090982.tif 000019
【図１６】
2003090982.tif 000020
【図１７】
2003090982.tif 000021
【図１８】
2003090982.tif 000022
【図１９】
2003090982.tif 000023
【図２０】
2003090982.tif 000024
【図２１】
2003090982.tif 000025
【図２２】
2003090982.tif 000026
【図２３】
2003090982.tif 000027
【図２４】
2003090982.tif 000028
【図２５】
2003090982.tif 000029
【図２６】
2003090982.tif 000030
【図２７】
2003090982.tif 000031
【図２８】
2003090982.tif 000032
【図２９】
2003090982.tif 000033
【図３０】
2003090982.tif 000034
【図３１】
2003090982.tif 000035
【図３２】
2003090982.tif 000036
【図３３】
2003090982.tif 000037
【図３４】
2003090982.tif 000038
【図３５】
2003090982.tif 000039
【図３６】
2003090982.tif 000040
【図３７】
2003090982.tif 000041
【国際調査報告】
2003090982.tif 000042
2003090982.tif 000043