(57)【要約】【課題】  遂行しようとする作業の特徴を考慮した上で、ＺＭＰ制御方法とＦＳＭ制御方法のうち何れか一つを選択して制御モードを転換し、転換された制御モードに基づいて作業を遂行することで歩行ロボットの効率と性能を改善する歩行ロボット及びその制御方法を提供する。【解決手段】  作業命令を受信し、位置基盤の第１制御モードとトルク基盤の第２制御モードのうち前記受信された作業命令を遂行するのに適切であると判断される制御モードを選択し、前記選択された制御モードによって前記作業命令を遂行する。【選択図】      図４
2010005782.tif 000002
【特許請求の範囲】
【請求項１】
作業命令を受信し、
位置基盤の第１制御モードとトルク基盤の第２制御モードのうち前記受信された作業命令を遂行するのに適切であると判断される制御モードを選択し、
前記選択された制御モードによって前記作業命令を遂行する歩行ロボットの制御方法。
【請求項２】
前記第１制御モードがＺＭＰ基盤の制御モードで、
前記第２制御モードがＦＳＭ基盤の制御モードであることを特徴とする請求項１に記載の歩行ロボットの制御方法。
【請求項３】
正確な位置制御が要求される作業命令を遂行するとき、前記ＺＭＰ基盤の制御モードを選択することを特徴とする請求項２に記載の歩行ロボットの制御方法。
【請求項４】
前記受信された作業命令を遂行するために、前記第１制御モードと前記第２制御モードとの間の相互転換を遂行することを特徴とする請求項２に記載の歩行ロボットの制御方法。
【請求項５】
前記第１制御モードから前記第２制御モードへの転換は、
前記歩行ロボットの現在位置と目標位置との間の位置誤差を計算し、
前記位置誤差を通して前記歩行ロボットの増加変位を計算し、
前記増加変位が予め設定された値以下であると、前記第１制御モードから前記第２制御モードに転換して前記作業命令を遂行することを特徴とする請求項４に記載の歩行ロボットの制御方法。
【請求項６】
前記歩行ロボットの増加変位は、
前記歩行ロボットの上体の増加変位と、前記歩行ロボットのスイングする脚の増加変位とを含むことを特徴とする請求項５に記載の歩行ロボットの制御方法。
【請求項７】
前記増加変位が前記予め設定された値より大きいと、前記増加変位の補間された値を獲得し、
前記補間された増加変位に基づいて前記作業命令を遂行することを特徴とする請求項５に記載の歩行ロボットの制御方法。
【請求項８】
前記補間された増加変位を獲得すると、前記歩行ロボットの制御モードを前記第１制御モードに再設定し、次に行われる前記第１制御モードから前記第２制御モードへの転換に備えることを特徴とする請求項７に記載の歩行ロボットの制御方法。
【請求項９】
前記歩行ロボットの制御モードが前記第１制御モードに再設定される場合にも、前記作業命令の実質的な遂行は前記第２制御モードで遂行することを特徴とする請求項８に記載の歩行ロボットの制御方法。
【請求項１０】
前記第２制御モードから前記第１制御モードへの転換は、
前記歩行ロボットの現在のＺＭＰと目標ＺＭＰとの間のＺＭＰ誤差を計算し、
前記ＺＭＰ誤差を通して前記歩行ロボットの増加変位を計算し、
前記増加変位が予め設定された値以下であると、前記第２制御モードから前記第１制御モードに転換して前記作業命令を遂行することを特徴とする請求項４に記載の歩行ロボットの制御方法。
【請求項１１】
前記歩行ロボットの増加変位は、
前記歩行ロボットの重力中心点（ＣＯＧ）の増加変位を含むことを特徴とする請求項１０に記載の歩行ロボットの制御方法。
【請求項１２】
前記増加変位が前記予め設定された値より大きいと、前記増加変位の補間された値を獲得し、
前記補間された増加変位に基づいて前記作業命令を遂行することを特徴とする請求項１０に記載の歩行ロボットの制御方法。
【請求項１３】
前記補間された増加変位を獲得すると、前記歩行ロボットの制御モードを前記第２制御モードに再設定し、次に行われる前記第２制御モードから前記第１制御モードへの転換に備えることを特徴とする請求項１２に記載の歩行ロボットの制御方法。
【請求項１４】
前記歩行ロボットの制御モードが前記第２制御モードに再設定される場合にも、前記作業命令の実質的な遂行は前記第１制御モードで遂行することを特徴とする請求項１３に記載の歩行ロボットの制御方法。
【請求項１５】
上体と、
前記上体を支持する複数の足と、
作業命令を受信し、位置基盤の第１制御モードとトルク基盤の第２制御モードのうち前記受信された作業命令を遂行するのに適切であると判断される制御モードを選択し、前記選択された制御モードによって前記作業命令が遂行されるように制御する制御部と、を含む歩行ロボット。
【請求項１６】
前記第１制御モードがＺＭＰ基盤の制御モードで、
前記第２制御モードがＦＳＭ基盤の制御モードであることを特徴とする請求項１５に記載の歩行ロボット。
【請求項１７】
前記制御部は、
正確な位置制御が要求される作業命令を遂行するとき、前記ＺＭＰ基盤の制御モードを選択することを特徴とする請求項１６に記載の歩行ロボット。
【請求項１８】
前記制御部は、
前記受信された作業命令を遂行するために、前記第１制御モードと前記第２制御モードとの間の相互転換を遂行することを特徴とする請求項１６に記載の歩行ロボット。
【請求項１９】
前記ＦＳＭ基盤の制御モードを遂行するための予め定められた状態情報を保存する状態情報保存部を備えることを特徴とする請求項１６に記載の歩行ロボット。
【請求項２０】
ロボットが歩行する地形の傾斜及び困難性を決定する段階と、
前記傾斜がなく、及び前記困難性が低い場合、ＦＳＭ基盤の歩行制御を選択する段階と、
前記傾斜があり、又は前記困難性が高い場合、ＺＭＰ基盤の歩行制御を選択する段階と、を含む歩行ロボットの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットに関し、特に、複数の脚を備えて、これら複数の脚を用いて歩行する歩行ロボット及びその制御方法に関する。
【背景技術】
【０００２】
ロボットは、人間の動作と類似した運動を行う機械装置を意味する。初期のロボットは、工場の生産作業の自動化・無人化などを目的にしたマニピュレーターや搬送ロボットなどの産業用ロボットであった。最近には、人間の２足歩行を摸倣した歩行ロボットの研究開発が進行されている。２足歩行は、４足または６足歩行に比べて不安定であり、姿勢制御や歩行制御が相対的に難しいという短所があるが、不均一な地面（険路）または不連続的な歩行面（例えば階段）に一層柔軟に対応できるという長所を有する。
【０００３】
歩行ロボットの制御方法としては、位置基盤のＺＭＰ（Ｚｅｒｏ  Ｍｏｍｅｎｔ  Ｐｏｉｎｔ）制御方法、トルク基盤の動的歩行制御方法またはＦＳＭ（Ｆｉｎｉｔｅ  Ｓｔａｔｅ  Ｍａｃｈｉｎｅ）制御方法が挙げられる。本発明における動的歩行制御方法またはＦＳＭ制御方法は、一般的には、歩行制御方式でＺＭＰ制御を利用せずにトルク制御を利用する全ての方式を意味する。ＺＭＰ制御方法は、歩行方向、歩行幅及び歩行速度などを予め設定し、この設定に対応する各脚の歩行パターンを生成し、その歩行パターンによって各脚の歩行軌跡を計算する。また、２足歩行ロボットは、計算された歩行軌跡の逆運動学計算を通して各脚の関節の位置を計算し、各関節のモーターの現在位置と目標位置に基づいて各関節のモーターの目標制御値を計算する。また、計算された歩行軌跡を各脚が追従するようにするサーボ制御を通して具現される。したがって、歩行時に各脚の位置が歩行パターンによる歩行軌跡を正確に追従するかを検出し、各脚が歩行軌跡を離脱すると、モーターのトルクを調節し、各脚が歩行軌跡を正確に追従するように制御する。ＦＳＭ制御方法は、歩行ロボットの各動作状態を予め定義しておき、歩行時に各動作状態を参照して適切に歩行する方式である。ＦＳＭ制御方法は、歩行ロボットの各動作のＦＳＭと状態（ここで、状態とは、Ｆｉｎｉｔｅ  Ｓｔａｔｅ  ＭａｃｈｉｎｅでのＳｔａｔｅを意味する。）を予め定義しておき、歩行時に各動作の状態を参照して適切に歩行する方式である。一つの実施例を挙げると、論文（Ｋ．Ｙｉｎ，Ｋ．Ｌｏｋｅｎ，Ｍ．Ｐａｎｎｅ，“ＳＩＭＢＩＣＯＮ：Ｓｉｍｐｌｅ  Ｂｉｐｅｄ  Ｌｏｃｏｍｏｔｉｏｎ  Ｃｏｎｔｒｏｌ”、ＳＩＧＧ２００７）に説明したように、定義されたＦＳＭとＦＳＭ内で状態転換のために必要な制御入力に対する決定を遂行し、決定された制御入力によって均衡及び歩行のために胴体、スイング脚などのロボット身体における各部分の指令を計算する。その後、均衡を維持するためにエラーをフィードバックし、このフィードバックされた値によってアクチュエーターを駆動して歩行を具現するようになる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＺＭＰ制御方法は、位置基盤の制御方法であり、正確な位置制御が可能である反面、このために高いサーボゲインが必要となるため、エネルギー効率が低く、剛性が大きくなり、周囲環境に大きな衝撃を加えるようになる。
【０００５】
ＦＳＭ制御方法は、トルク命令によって制御がなされ、弾性メカニズムに適用できるので、エネルギー効率が高く、剛性が低くなり、周囲環境に対して安全である反面、正確な位置制御が不可能であるので、階段を上がったり、障害物を避けるなどの正確な全身モーションを遂行することが難しい。
【０００６】
本発明に係る歩行ロボット及びその制御方法は、遂行しようとする作業の特徴を考慮した上で、ＺＭＰ制御方法とＦＳＭ制御方法のうち何れか一つを選択して制御モードを転換し、転換された制御モードに基づいて作業を遂行することで歩行ロボットの効率と性能を改善することを目的とする。
【課題を解決するための手段】
【０００７】
上記のような目的を達成するための本発明に係るロボットの制御方法は、作業命令を受信し、位置基盤の第１制御モードとトルク基盤の第２制御モードのうち受信された作業命令を遂行するのに適切であると判断される制御モードを選択し、選択された制御モードによって作業命令を遂行する。
【０００８】
また、上述した第１制御モードがＺＭＰ基盤の制御モードで、第２制御モードがＦＳＭ基盤の制御モードである。
【０００９】
また、正確な位置制御が要求される作業命令を遂行するとき、ＺＭＰ基盤の制御モードを選択する。
【００１０】
また、受信された作業命令を遂行するために、第１制御モードと第２制御モードとの間の相互転換を遂行する。
【００１１】
また、上述した第１制御モードから第２制御モードへの転換は、歩行ロボットの現在位置と目標位置との間の位置誤差を計算し、位置誤差を通して歩行ロボットの増加変位を計算し、増加変位が予め設定された値以下であると、第１制御モードから第２制御モードに転換して作業命令を遂行する。
【００１２】
また、上述した歩行ロボットの増加変位は、歩行ロボットの上体の増加変位と、歩行ロボットのスイングする脚の増加変位とを含む。
【００１３】
また、上述した増加変位が予め設定された値より大きいと、増加変位の補間された値を獲得し、補間された増加変位に基づいて作業命令を遂行する。
【００１４】
また、補間された増加変位を獲得すると、歩行ロボットの制御モードを第１制御モードに再設定し、次に行われる第１制御モードから第２制御モードへの転換に備える。
【００１５】
また、上述した歩行ロボットの制御モードが第１制御モードに再設定される場合にも、作業命令の実質的な遂行は前記第２制御モードで遂行する。
【００１６】
また、上述した第２制御モードから第１制御モードへの転換は、歩行ロボットの現在のＺＭＰと目標ＺＭＰとの間のＺＭＰ誤差を計算し、ＺＭＰ誤差を通して前記歩行ロボットの増加変位を計算し、増加変位が予め設定された値以下であると、第２制御モードから第１制御モードに転換して作業命令を遂行する。
【００１７】
また、上述した歩行ロボットの増加変位は、歩行ロボットの重力中心点（ＣＯＧ）の増加変位を含む。
【００１８】
また、上述した増加変位が予め設定された値より大きいと、増加変位の補間された値を獲得し、補間された増加変位に基づいて作業命令を遂行する。また、上述した補間された増加変位を獲得すると、歩行ロボットの制御モードを第２制御モードに再設定し、次に行われる第２制御モードから第１制御モードへの転換に備える。
【００１９】
また、上述した歩行ロボットの制御モードが第２制御モードに再設定される場合にも、作業命令の実質的な遂行は第１制御モードで遂行する。
【００２０】
上述した目的を達成するための本発明に係る歩行ロボットは、上体と、上体を支持する複数の足と、作業命令を受信し、位置基盤の第１制御モードとトルク基盤の第２制御モードのうち受信された作業命令を遂行するのに適切であると判断される制御モードを選択し、選択された制御モードによって作業命令が遂行されるように制御する制御部とを含む。
【００２１】
また、上述した第１制御モードがＺＭＰ基盤の制御モードで、第２制御モードがＦＳＭ基盤の制御モードである。
【００２２】
また、上述した制御部は、正確な位置制御が要求される作業命令を遂行するとき、ＺＭＰ基盤の制御モードを選択する。
【００２３】
また、上述した制御部は、受信された作業命令を遂行するために、第１制御モードと第２制御モードとの間の相互転換を遂行する。
【００２４】
また、上述したＦＳＭ基盤の制御モードを遂行するための予め定められた状態情報を保存する状態情報保存部を備える。
【発明の効果】
【００２５】
本発明に係る歩行ロボット及びその制御方法は、遂行しようとする作業の特徴を考慮した上で、ＺＭＰ制御方法とＦＳＭ制御方法のうち何れか一つを選択して制御モードを転換し、転換された制御モードに基づいて作業を遂行することで歩行ロボットの効率と性能を改善する。
【図面の簡単な説明】
【００２６】
【図１】本発明の一実施例に係る歩行ロボットを示した図である。
【図２】図１に示した歩行ロボットの関節構造を示した図である。
【図３】本発明の一実施例に係る歩行ロボットの制御系統を示した図である。
【図４】本発明の一実施例に係る歩行ロボットの制御方法を示した図である。
【図５】本発明の一実施例に係る歩行ロボットにおけるＺＭＰ基盤の制御モードからＦＳＭ基盤の制御モードへの転換方法を示した図である。
【図６】本発明の一実施例に係る歩行ロボットにおけるＦＳＭ基盤の制御モードからＺＭＰ基盤の制御モードへの転換方法を示した図である。
【発明を実施するための形態】
【００２７】
以下、本発明の好適な実施例を図１乃至図６に基づいて説明する。まず、図１は、本発明の一実施例に係る歩行ロボットを示した図である。図１に示すように、歩行ロボット１００の上体１０２の上部には、首１２０を通して頭１０４が連結される。上体１０２の上部両側には、肩１１４Ｌ，１１４Ｒを通して二つの腕１０６Ｌ、１０６Ｒが連結される。二つの腕１０６Ｌ，１０６Ｒのそれぞれの末端には、手１０８Ｌ，１０８Ｒが連結される。上体１０２の下部両側には、二つの脚１１０Ｌ，１１０Ｒが連結される。二つの脚１１０Ｌ，１１０Ｒのそれぞれの末端には、足１１２Ｌ，１１２Ｒが連結される。頭１０４、二つの腕１０６Ｌ，１０６Ｒ、二つの脚１１０Ｌ，１１０Ｒ、二つの手１０８Ｌ，１０８Ｒ及び二つの足１１２Ｌ，１１２Ｒは、それぞれ関節を通して一定水準の自由度を有する。上体１０２の内部はカバー１１６によって保護される。上体１０２は胸１０２ａと腰１０２ｂに分割される。図中、参照符号"Ｒ"と"Ｌ"は、それぞれ歩行ロボット１００の右側と左側を表している。
【００２８】
図２は、図１に示した歩行ロボットの関節構造を示した図である。図２に示すように、歩行ロボット１００の二つの脚１１０Ｒ，１１０Ｌは、大腿リンク２１、下腿リンク２２及び足１１２Ｌ，１１２Ｒをそれぞれ備えている。大腿リンク２１は、大腿関節部２１０を通して上体１０２に連結される。大腿リンク２１と下腿リンク２２は膝関節部２２０を通して互いに連結され、下腿リンク２２と足１１２Ｌ，１１２Ｒは足首関節部２３０を通して互いに連結される。
【００２９】
大腿関節部２１０は３自由度を有する。具体的に、大腿関節部２１０は、ヨー方向（Ｚ軸周囲の回転）の回転関節２１１と、ピッチ方向（Ｙ軸周囲の回転）の回転関節２１２と、ロール方向（Ｘ軸周囲の回転）の回転関節２１３を有する。
【００３０】
膝関節部２２０は、ピッチ方向の回転関節２２１を含んで１自由度を有する。足首関節部２３０は、ピッチ方向の回転関節２３１とロール方向の回転関節２３２を含んで２自由度を有する。
【００３１】
このように、二つの脚１１０Ｒ，１１０Ｌには、三つの関節部２１０，２２０，２３０に対して６個の回転関節が設けられるので、二つの脚１１０Ｒ，１１０Ｌ全体に対しては１２個の回転関節が設けられる。
【００３２】
一方、二つの脚１１０Ｒ，１１０Ｌにおける足１１２Ｌ，１１２Ｒと足首関節部２３０との間には、多軸Ｆ／Ｔセンサー（Ｍｕｌｔｉ−Ａｘｉｓ  Ｆｏｒｃｅ  ａｎｄ  Ｔｏｒｑｕｅ  Ｓｅｎｓｏｒ）２４がそれぞれ設置される。多軸Ｆ／Ｔセンサー２４は、足１１２Ｌ，１１２Ｒから伝達される力の３方向成分（Ｆｘ、Ｆｙ、Ｆｚ）とモーメントの３方向成分（Ｍｘ、Ｍｙ、Ｍｚ）を測定することで、足１１２Ｌ，１１２Ｒの着地可否及び足１１２Ｌ，１１２Ｒに加えられる荷重を検出する。
【００３３】
頭１０４には、歩行ロボット１００の視覚として機能するカメラ４１と、歩行ロボット１００の聴覚として機能するマイクロホン４２が設置される。頭１０４は、首関節部２８０を通して上体１０２と連結される。首関節部２８０は、ヨー方向の回転関節２８１、ピッチ方向の回転関節２８２及びロール方向の回転関節２８３を含んで３自由度を有する。
【００３４】
首関節部２８０の各回転関節２８１，２８２，２８３には、頭回転用モーター（図示せず）がそれぞれ連結される。
【００３５】
肩関節アセンブリー２５０Ｒ，２５０Ｌは、上体１０２の両側に装着され、二つの腕１０６Ｒ，１０６Ｌを上体１０２に連結する。
【００３６】
二つの腕１０６Ｒ，１０６Ｌは、上腕リンク３１、下腕リンク３２及び手１０８を備えている。上腕リンク３１は、肩関節アセンブリー２５０を通して上体１０２に連結される。上腕リンク３１と下腕リンク３２はヒジ関節部２６０を通して互いに連結され、下腕リンク３２と手１０８は手首関節部２７０を通して互いに連結される。
【００３７】
ヒジ関節部２６０は、ピッチ方向の回転関節２６１及びヨー方向の回転関節２６２を含んで２自由度を有し、手首関節部２７０は、ピッチ方向の回転関節２７１及びロール方向の回転関節２７２を含んで２自由度を有する。
【００３８】
手１０８には５個の指３３ａが設置される。各指３３ａには、モーターによって駆動される多数の関節（図示せず）が設置される。指３３ａは、腕１０６の動きに連動して物を把持したり、特定の方向を示すなどの多様な動作を実行する。
【００３９】
上体１０２にはポーズセンサー１４が設置される。ポーズセンサー１４は、鉛直軸に対する上体１０２の傾斜角度及びその角速度などを検出し、姿勢情報を発生させる。このポーズセンサー１４は、上体１０２のみならず頭１０４に設置されても良い。また、上体１０２を構成する胸１０２ａと腰１０２ｂとの間には、胸１０２ａを腰１０２ｂに対して回転させるためのヨー方向の回転関節１５が設置される。
【００４０】
図面に示していないが、歩行ロボット１００には、各回転関節を駆動するモーターが設置される。歩行ロボット１００の動作全般を制御する制御部は、これらモーターを適切に制御することで、歩行ロボット１００の多様な動作を具現することができる。
【００４１】
図３は、本発明の一実施例に係る歩行ロボットの制御系統を示した図である。図３に示した制御部３００は、基本的に歩行ロボット１００の歩行制御を遂行するとともに、歩行ロボット１００の歩行環境（歩行面の平坦可否または障害物有無など）によってＦＳＭ（Ｆｉｎｉｔｅ  Ｓｔａｔｅ  Ｍａｃｈｉｎｅ）基盤の歩行制御とＺＭＰ（Ｚｅｒｏ  Ｍｏｍｅｎｔ  Ｐｏｉｎｔ）基盤の歩行制御のうち何れか一つを選択して歩行ロボット１００の歩行を制御する。ＦＳＭ基盤の歩行制御はトルク基盤の歩行制御で、ＺＭＰ基盤の歩行制御は位置基盤の歩行制御である。制御部３００は、平坦地形での歩行または比較的単純な形態の歩行制御のためにＦＳＭ基盤の歩行制御を選択する。これと異なり、制御部３００は、階段などの非平坦地形や障害物などによって歩幅などが指定されるべきである場合、またはドア開きや物移しなどのような正確な全身動作制御が必要である場合、ＺＭＰ基盤の歩行制御を選択する。
【００４２】
制御部３００のモード設定部３０２は、モードスイッチ３０４、ＺＭＰ−ＦＳＭモード転換部３０６及びＦＳＭ−ＺＭＰモード転換部３０８によって構成される。モードスイッチ３０４は、歩行ロボット１００の現在の制御モード（ＦＳＭまたはＺＭＰ）、使用者インターフェース３１０を通して外部から入力される使用者命令、及びモーション計画部３１２を通して入力される歩行ロボット１００の目標動作に基づいてＺＭＰ−ＦＳＭモード転換部３０６とＦＳＭ−ＺＭＰモード転換部３０８のうち何れか一つを活性化させ、歩行ロボット１００の歩行制御方法を相互転換する。また、モードスイッチ３０４は、歩行ロボット１００の歩行制御方法を相互転換するにおいて、歩行データベース３１４の歩行制御データ、ＦＳＭデータベース（状態情報保存部）３１６のＦＳＭ制御データ、センサー部３２８を通して測定される足の裏に加えられる力、各関節のトルク、上体の姿勢（傾き）、視覚情報及び聴覚情報も一緒に参照する。
【００４３】
ＺＭＰ−ＦＳＭモード転換部３０６は、歩行ロボット１００の歩行制御をＺＭＰ基盤の制御モード（第１制御モード）からＦＳＭ基盤の制御モード（第２制御モード）に転換する。歩行ロボット１００の制御モードがＦＳＭ基盤の制御モードに転換されると、歩行ロボット１００の動作は、ＦＳＭ基盤の歩行制御部３１８によってＦＳＭ制御方式で制御される。ＦＳＭ−ＺＭＰモード転換部３０８は、歩行ロボット１００の歩行制御をＦＳＭ基盤の制御モードからＺＭＰ基盤の制御モードに転換する。歩行ロボット１００の制御モードがＺＭＰ基盤の制御モードに転換されると、歩行ロボット１００の動作は、ＺＭＰ基盤の歩行制御部３２０によってＺＭＰ制御方式で制御される。歩行ロボット１００の制御は、インピーダンス制御部３２２による各関節のインピーダンス制御（剛性制御）及び関節制御部３２４による各関節部３２６のトルク／位置制御を通して行われる。
【００４４】
図４は、本発明の一実施例に係る歩行ロボットの制御方法を示した図である。図４に示すように、本発明の一実施例に係る歩行ロボットの制御方法は、新しい動作命令が入力され、その動作命令が制御モードの変更を必要とする場合、該当の動作遂行に適した制御モードに転換して歩行ロボット１００を制御する。
【００４５】
まず、歩行ロボット１００は、新しい動作命令が発生すると（４０４）、この新しい動作命令による動作を遂行するために現在の制御モードを他の制御モードに変更する必要があるかを判断する（４０６）。例えば、新しく発生した動作命令の動作が平坦地形での歩行または比較的単純な形態の歩行である場合、ＦＳＭモードを選択する。これと異なり、階段などの非平坦地形や障害物などによって歩幅などが指定されるべきである場合、またはドア開きや物移しなどのような正確な全身動作制御が必要である場合、ＺＭＰモードを選択する。
【００４６】
制御モードの変更が必要である場合（４０６のはい）、新しく発生した動作命令の動作に必要な制御モードに歩行ロボット１００の動作モードを転換する（４０８）。動作モードが転換されると、転換された新しい動作モードに基づいた動作を遂行する（４１０）。これと異なり、制御モードの変更が必要でない場合（４０６のいいえ）、既存の制御モードに基づいた動作を遂行する（４１２）。
【００４７】
図５は、本発明の一実施例に係る歩行ロボットにおけるＺＭＰ基盤の制御モードからＦＳＭ基盤の制御モードへの転換方法を示した図である。図５に示すように、ＺＭＰ基盤の歩行制御が行われる状態で、モーション計画部３１２のデータまたはセンサー部３２８のデータから歩行ロボット１００の現在状態（ＦＳＭでのＳｔａｔｅ）を推定する（５０２）。歩行ロボット１００の現在状態（ＦＳＭでのＳｔａｔｅ）による上体１０２及びスイングする脚１１０Ｌまたは１１０Ｒの現在位置を設定する（５０４）。歩行ロボット１００の上体１０２及びスイングする脚１１０Ｌまたは１１０Ｒの現在位置と目標位置との間の位置誤差を計算する（５０６）。上体１０２及びスイングする脚１１０Ｌまたは１１０Ｒの位置誤差から上体及びスイングする脚の増加変位（Δｘ）を獲得する（５０８）。増加変位（Δｘ）が予め設定された値より大きいと（５１０のはい）、補間された増加変位（Δｘ’）を獲得する（５１２）。この補間された増加変位（Δｘ’）は、上体１０２及びスイングする脚１１０Ｌまたは１１０Ｒの過度な動作を防止し、柔軟な動作を可能にするためのものである。補間された増加変位（Δｘ’）の獲得後、歩行ロボット１００の制御モードをＺＭＰ基盤の制御モードに再設定する（５１４）。その反対に、増加変位（Δｘ）が予め設定された値以下であると（５１０のいいえ）、直ちに歩行ロボット１００の制御モードをＦＳＭ基盤の制御モードに転換し、転換されたＦＳＭ基盤の制御モードによって歩行ロボット１００の動作を制御する（５１６）。ブロック５１４のＺＭＰ基盤の制御モードの設定は、歩行ロボット１００の次の歩行制御で行われるＺＭＰ基盤の制御モードからＦＳＭ基盤の制御モードへの転換に備えるためのもので、歩行ロボット１００の実質的な制御は、ブロック５１６で転換されたＦＳＭ基盤の制御モードに基づいて行われる。
【００４８】
図６は、本発明の一実施例に係る歩行ロボットにおけるＦＳＭ基盤の制御モードからＺＭＰ基盤の制御モードへの転換方法を示した図である。図６に示すように、ＦＳＭ基盤の歩行制御が行われる状態で、現在の関節位置、速度及び加速度から現在の重力中心（Ｃｅｎｔｅｒ  Ｏｆ  Ｇｒａｖｉｔｙ、ＣＯＧ）（ｘ）とＺＭＰ（Ｐｘ）を計算する（６０２）。また、目的とする歩幅内に存在する安定的な目的とするＺＭＰ（Ｐｘｄ）を設定する（６０４）。現在のＺＭＰ（Ｐｘ）と目的とするＺＭＰ（Ｐｘｄ）との間のＺＭＰ誤差（ΔＰｘ＝Ｐｘ−Ｐｘｄ）を計算する（６０６）。ＺＭＰ誤差（ΔＰｘ）が計算されると、このＺＭＰ誤差（ΔＰｘ）をＺＭＰ方程式に代入し、ＺＭＰ方程式を満足するＣＯＧの増加変位（Δｘ）を獲得する（６０８）。増加変位（Δｘ）が予め設定された値より大きいと（６１０のはい）、補間された増加変位（Δｘ’）を獲得する（６１２）。この補間された増加変位（Δｘ’）は、上体１０２及びスイングする脚１１０Ｌまたは１１０Ｒの過度な動作を防止し、柔軟な動作を可能にするためのものである。補間された増加変位（Δｘ’）の獲得後、歩行ロボット１００の制御モードをＦＳＭ基盤の制御モードに再設定する（６１４）。その反対に、増加変位（Δｘ）が予め設定された値以下であると（６１０のいいえ）、直ちに歩行ロボット１００の制御モードをＺＭＰ基盤の制御モードに転換し、転換されたＺＭＰ基盤の制御モードに基づいて歩行ロボット１００の動作を制御する（６１６）。ブロック６１４のＦＳＭモード設定は、歩行ロボット１００の次の歩行制御で行われるＦＳＭ基盤の制御モードからＺＭＰ基盤の制御モードへの転換に備えるためのもので、歩行ロボット１００の実質的な制御は、ブロック６１６で転換されたＺＭＰ基盤の制御モードに基づいて行われる。
【符号の説明】
【００４９】
１４      ポーズセンサー
１５、２１１、２１２、２１３、２６１、２６２、２７１、２７２、２８２、２８３  回転関節
２１      大腿リンク
２２      下腿リンク
２４      多軸Ｆ／Ｔセンサー
３１      上腕リンク
３２      下腕リンク
３３ａ    指
４１      カメラ
４２      マイクロホン
１００    歩行ロボット
１０２    上体
１０２ａ  胸
１０２ｂ  腰
１０４    頭
１０６Ｌ、１０６Ｒ  腕
１０８Ｌ、１０８Ｒ  手
１１０Ｌ，１１０Ｒ  脚
１１２Ｌ，１１２Ｒ  足
１１４Ｌ、１１４Ｒ  
１２０    首
２１０    大腿関節部
２２０    膝関節部
２３０    足首関節部
２５０Ｌ、２５０Ｒ  肩関節アセンブリー
２６０    ヒジ関節部
２７０    手首関節部
２８０    首関節部
【図１】
2010005782.tif 000003
【図２】
2010005782.tif 000004
【図３】
2010005782.tif 000005
【図４】
2010005782.tif 000006
【図５】
2010005782.tif 000007
【図６】
2010005782.tif 000008