(57)【要約】【課題】未知の階段であっても４脚式ロボットの安定した昇降動作を行うことができる歩容データの作成装置を提供する。【解決手段】階段情報に基づいて４本の脚が階段を昇り、或いは降りる全てのモーションを設定するモーション設定手段（ステップＳＴ２）と、階段情報に基づいて４本の脚の全てのモーションの脚先のグローバル座標を算出する脚先グローバル座標算出手段（ステップＳＴ６）と、階段情報に基づいてロボットボディのグローバル座標を算出するボディグローバル座標算出手段（ステップＳＴ８、ステップＳＴ１０）と、脚先のグローバル座標及びロボットボディのグローバル座標に基づいて、４本の脚の全てのモーションの股関節を中心とした脚先ローカル座標を算出する脚先ローカル座標算出手段（ステップＳＴ１８）と、脚駆動制御装置１４に脚先ローカル座標を出力するローカル座標出力手段（ステップＳＴ２２）とを備えている。【選択図】図４
2013237126.tif 000002
【特許請求の範囲】
【請求項１】
ロボットボディに４本の脚を連結した４脚式ロボットが階段を昇降する場合の歩容データを作成する装置であって、
前記階段の段数、４脚式ロボットの昇り、或いは降りなどの階段情報に基づいて、前記４本の脚が階段を昇り、或いは降りる全てのモーションを設定するモーション設定手段と、
前記階段の踏面長さ、蹴上げ高さなどの階段情報に基づいて、前記４本の脚の全てのモーションの脚先のグローバル座標を算出する脚先グローバル座標算出手段と、
前記階段情報に基づいて、前記ロボットボディのグローバル座標を算出するボディグローバル座標算出手段と、
前記脚先のグローバル座標及び前記ロボットボディのグローバル座標に基づいて、前記４本の脚の全てのモーションの股関節を中心とした脚先ローカル座標を算出する脚先ローカル座標算出手段と、
前記４本の脚を独自に駆動させる脚駆動制御装置に、前記脚先ローカル座標を出力するローカル座標出力手段と、を備えていることを特徴とする歩容データの作成装置。
【請求項２】
前記モーション設定手段において、前記４本の脚のうちの左後脚及び右後脚の一方を遊脚として昇り動作を行うモーションであるクリティカルポジションが存在した場合に、前記クリティカルポジションのロボットボディのグローバル座標を算出し、安定した動作で昇り動作となるように、前記グローバル座標を修正するクリティカルポジションのグローバル座標修正手段、を備えていることを特徴とする請求項１記載の歩容データの作成装置。
【請求項３】
前記モーション設定手段において、前記４本の脚のうちの左前脚及び右前脚の一方を遊脚として降り動作を行うモーションであるクリティカルポジションが存在した場合に、前記クリティカルポジションのロボットボディのグローバル座標を算出し、安定した動作で降り動作となるように、前記グローバル座標を修正するクリティカルポジションのグローバル座標修正手段、を備えていることを特徴とする請求項１記載の歩容データの作成装置。
【請求項４】
前記４本の脚の全てのモーションと前記階段の段鼻との干渉チェックを行い、前記段鼻との距離が所定値未満の場合には、前記ロボットボディのグローバル座標を修正する段鼻干渉修正手段、を備えていることを特徴とする請求項１乃至３の何れか１項に記載の歩容データの作成装置。
【請求項５】
前記４本の脚の全てのモーションの脚先のグローバルＺ座標が、実際の脚の稼働限界の範囲に入っているか否かのチェックを行い、所定のモーションの脚先のグローバルＺ座標が前記稼働範囲に入っていない場合には、前記ロボットボディのボディグローバル座標を修正する稼働限界修正手段、を備えていることを特徴とする請求項１乃至４の何れか１項に記載の歩容データの作成装置。
【請求項６】
ロボットボディに４本の脚を連結した４脚式ロボットが階段を昇降する際の歩容データを作成する方法であって、
前記階段の段数、４脚式ロボットの昇り、或いは降りなどの階段情報に基づいて、前記４本の脚が階段を昇り、或いは降りる際の全てのモーションを設定するモーション設定工程と、
前記階段の踏面長さ、蹴上げ高さなどの階段情報に基づいて、前記４本の脚の全てのモーションの脚先のグローバル座標を算出する脚先グローバル座標算出工程と、
前記階段情報に基づいて、前記ロボットボディのグローバル座標を算出するボディグローバル座標算出工程と、
前記脚先のグローバル座標及び前記ロボットボディのグローバル座標に基づいて、前記４本の脚の全てのモーションの股関節を中心とした脚先ローカル座標を算出する脚先ローカル座標算出工程と、
前記４本の脚を独自に駆動させる脚駆動制御装置に、前記脚先ローカル座標を出力するローカル座標出力工程と、を備えていることを特徴とする歩容データの作成方法。
【請求項７】
前記モーション設定工程において、前記４本の脚のうちの左後脚及び右後脚の一方を遊脚として昇り動作を行うモーションであるクリティカルポジションが存在した場合に、前記クリティカルポジションのロボットボディのグローバル座標を算出し、安定した動作で昇り動作となるように、前記グローバル座標を修正することを特徴とする請求項６記載の歩容データの作成方法。
【請求項８】
前記モーション設定工程において、前記４本の脚のうちの左前脚及び右前脚の一方を遊脚として降り動作を行うモーションであるクリティカルポジションが存在した場合に、前記クリティカルポジションのロボットボディのグローバル座標を算出し、安定した動作で降り動作となるように、前記グローバル座標を修正することを特徴とする請求項６記載の歩容データの作成方法。
【請求項９】
前記４本の脚の全てのモーションと前記階段の段鼻との干渉チェックを行い、前記段鼻との距離が所定値未満の場合には、前記ロボットボディのグローバル座標を修正する段鼻干渉修正工程、を備えていることを特徴とする請求項６乃至８の何れか１項に記載の歩容データの作成方法。
【請求項１０】
前記４本の脚の全てのモーションの脚先のグローバルＺ座標が、実際の脚の稼働限界の範囲に入っているか否かのチェックを行い、所定のモーションの脚先のグローバルＺ座標が前記稼働範囲に入っていない場合には、前記ロボットボディのボディグローバル座標を修正する稼働限界修正工程、を備えていることを特徴とする請求項６乃至９の何れか１項に記載の歩容データの作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットボディに４本の脚が連結した４脚式ロボットが、未知の階段を昇降する場合に好適な歩容データの作成装置及び方法に関する。
【背景技術】
【０００２】
脚式ロボットを歩行させるための歩容データを作成する技術として、例えば特許文献１に記載のものが知られている。
この特許文献１は、脚式ロボットの体幹（ロボットボディ）と２本の脚との幾何学的な関係を使用し、体幹の高さ位置を適切に制限した歩容データを作成することで、安定した歩行動作の脚式ロボットを実現している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−７７９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、特許文献１は、２脚式ロボットが平地を走行する際の技術なので、４脚式ロボットが未知の階段を昇降する場合には、特許文献１の技術を用いて歩容データを作成することができない。
すなわち、階段を昇降する際には、階段の踏み面長さ、階段の蹴上げ高さ、階段の段数、昇り或いは降りを階段情報として入力し、それら階段情報に基づいて４脚の座標を決定しなければならないが、特許文献１の技術は、前述した階段情報を参照して階段を昇降させる歩容データを作成することができない。
【０００５】
本発明は上記事情に鑑みてなされたものであり、未知の階段であっても４脚式ロボットの安定した昇降動作を行うことができる歩容データの作成装置及び方法を提案するものである。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明に係る請求項１記載の歩容データの作成装置は、ロボットボディに４本の脚を連結した４脚式ロボットが階段を昇降する場合の歩容データを作成する装置であって、前記階段の段数、４脚式ロボットの昇り、或いは降りなどの階段情報に基づいて、前記４本の脚が階段を昇り、或いは降りる全てのモーションを設定するモーション設定手段と、前記階段の踏面長さ、蹴上げ高さなどの階段情報に基づいて、前記４本の脚の全てのモーションの脚先のグローバル座標を算出する脚先グローバル座標算出手段と、前記階段情報に基づいて、前記ロボットボディのグローバル座標を算出するボディグローバル座標算出手段と、前記脚先のグローバル座標及び前記ロボットボディのグローバル座標に基づいて、前記４本の脚の全てのモーションの股関節を中心とした脚先ローカル座標を算出する脚先ローカル座標算出手段と、前記４本の脚を独自に駆動させる脚駆動制御装置に、前記脚先ローカル座標を出力するローカル座標出力手段と、を備えた歩容データの作成装置である。
【０００７】
また、請求項２記載の発明は、請求項１記載の歩容データの作成装置において、前記モーション設定手段において、前記４本の脚のうちの左後脚及び右後脚の一方を遊脚として昇り動作を行うモーションであるクリティカルポジションが存在した場合に、前記クリティカルポジションのロボットボディのグローバル座標を算出し、安定した動作で昇り動作となるように、前記グローバル座標を修正するクリティカルポジションのグローバル座標修正手段を備えている。
【０００８】
また、請求項３記載の発明は、請求項１記載の歩容データの作成装置において、前記モーション設定手段において、前記４本の脚のうちの左前脚及び右前脚の一方を遊脚として降り動作を行うモーションであるクリティカルポジションが存在した場合に、前記クリティカルポジションのロボットボディのグローバル座標を算出し、安定した動作で降り動作となるように、前記グローバル座標を修正するクリティカルポジションのグローバル座標修正手段を備えている。
【０００９】
また、請求項４記載の発明は、請求項１乃至３の何れか１項に記載の歩容データの作成装置において、前記４本の脚の全てのモーションと前記階段の段鼻との干渉チェックを行い、前記段鼻との距離が所定値未満の場合には、前記ロボットボディのグローバル座標を修正する段鼻干渉修正手段を備えている。
また、請求項５記載の発明は、請求項１乃至４の何れか１項に記載の歩容データの作成装置において、前記４本の脚の全てのモーションの脚先のグローバルＺ座標が、実際の脚の稼働限界の範囲に入っているか否かのチェックを行い、所定のモーションの脚先のグローバルＺ座標が前記稼働範囲に入っていない場合には、前記ロボットボディのボディグローバル座標を修正する稼働限界修正手段を備えている。
【００１０】
また、請求項６記載の発明は、ロボットボディに４本の脚を連結した４脚式ロボットが階段を昇降する際の歩容データを作成する方法であって、前記階段の段数、４脚式ロボットの昇り、或いは降りなどの階段情報に基づいて、前記４本の脚が階段を昇り、或いは降りる際の全てのモーションを設定するモーション設定工程と、前記階段の踏面長さ、蹴上げ高さなどの階段情報に基づいて、前記４本の脚の全てのモーションの脚先のグローバル座標を算出する脚先グローバル座標算出工程と、前記階段情報に基づいて、前記ロボットボディのグローバル座標を算出するボディグローバル座標算出工程と、前記脚先のグローバル座標及び前記ロボットボディのグローバル座標に基づいて、前記４本の脚の全てのモーションの股関節を中心とした脚先ローカル座標を算出する脚先ローカル座標算出工程と、前記４本の脚を独自に駆動させる脚駆動制御装置に、前記脚先ローカル座標を出力するローカル座標出力工程と、を備えた歩容データの作成方法である。
【００１１】
また、請求項７記載の発明は、請求項６記載の歩容データの作成方法において、前記モーション設定工程では、前記４本の脚のうちの左後脚及び右後脚の一方を遊脚として昇り動作を行うモーションであるクリティカルポジションが存在した場合に、前記クリティカルポジションのロボットボディのグローバル座標を算出し、安定した動作で昇り動作となるように、前記グローバル座標を修正する。
【００１２】
また、請求項８記載の発明は、請求項６記載の歩容データの作成方法において、前記モーション設定工程では、前記４本の脚のうちの左前脚及び右前脚の一方を遊脚として降り動作を行うモーションであるクリティカルポジションが存在した場合に、前記クリティカルポジションのロボットボディのグローバル座標を算出し、安定した動作で降り動作となるように、前記グローバル座標を修正する。
【００１３】
また、請求項９の発明は、請求項６乃至８の何れか１項に記載の歩容データの作成方法において、前記４本の脚の全てのモーションと前記階段の段鼻との干渉チェックを行い、前記段鼻との距離が所定値未満の場合には、前記ロボットボディのグローバル座標を修正する段鼻干渉修正工程、を備えている。
さらに、請求項１０の発明は、請求項６乃至９の何れか１項に記載の歩容データの作成方法において、前記４本の脚の全てのモーションの脚先のグローバルＺ座標が、実際の脚の稼働限界の範囲に入っているか否かのチェックを行い、所定のモーションの脚先のグローバルＺ座標が前記稼働範囲に入っていない場合には、前記ロボットボディのボディグローバル座標を修正する稼働限界修正工程、を備えている。
【発明の効果】
【００１４】
本発明に係る歩容データの作成装置及び歩容データの作成方法によれば、前記階段の段数、４脚式ロボットの昇り、或いは降りなどの階段情報に基づいて４本の脚のモーションの全てを設定し、階段の踏面長さ、階段の蹴上げ高さなどの階段情報に基づいて４本の脚の全てのモーションの脚先グローバル座標を算出し、階段情報に基づいてロボットボディのグローバル座標を算出することができるので、未知の階段であっても４脚式ロボットの安定した昇降動作を行うことができる歩容データを作成することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明に係る４脚式ロボットを示す概略構成図である。
【図２】本発明に係る４脚式ロボットを構成するコンピュータ装置を示すブロック図である。
【図３】４脚式ロボットが昇降する階段を示す図である。
【図４】コンピュータ装置を構成する歩容データ作成装置が行う処理を示すフローチャートである。
【図５】（ａ）は階段を４脚式ロボットが昇り始めている複数のモーションを示した図であり、（ｂ）は所定モーションの支持多角形を示す図である。
【図６】階段の昇り動作を行っている４脚のうちの最後の脚が地面から上げる（遊脚とする）直前の状態のモーション（クリティカルポジション）を示した図である。
【図７】階段を４脚式ロボットが昇っているときに、階段の段鼻に脚の一部が干渉するか否かをチェックする処理を示す図である。
【図８】４脚式ロボットの所定の脚の股関節を中心とした稼働範囲を示す図である。
【発明を実施するための形態】
【００１６】
以下、本発明を実施するための形態（以下、実施形態という。）を、図面を参照しながら詳細に説明する。
図１は、本発明に係る４脚車輪型ロボット（以下、４脚式ロボットと称する）１を示すものであり、本実施形態の４脚式ロボット１は、ロボットボディ２と、ロボットボディ２に装着された左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３Ｒｂとで構成されている。
【００１７】
右前脚３Ｒａは、大腿リンク４、下腿リンク５、第１関節Ｊ０、股関節Ｊ１、第２関節Ｊ２及び脚車輪Ｊ３を備えている。
図１では、鉛直方向を向くＺ軸方向と、Ｚ軸方向に直交した水平方向を向き４脚式ロボット１が歩行により進行する方向であるＸ軸方向と、Ｚ軸方向及びＸ軸方向に直交するＹ軸方向とが定義されており、本実施形態では、股関節Ｊ１を原点としたＸＹＺ座標をローカル座標としている。
【００１８】
第１関節Ｊ０及び股関節Ｊ１は、ロボットボディ２と大腿リンク４との間に互いに連結して装着されており、第１関節Ｊ０はＺ軸回りに回動し、股関節Ｊ１はＹ軸回りに回動する。また、第２関節Ｊ２は、大腿リンク４及び下腿リンク５の間に装着されてＹ軸回りに回動する。
また、図１では具体的に示していないが、左前脚３Ｌａ、左後脚３Ｌｂ及び右後脚３Ｒｂも、右前脚３Ｒａと同様に、大腿リンク４、下腿リンク５、第１関節Ｊ０、股関節Ｊ１、第２関節Ｊ２及び脚車輪Ｊ３を備えている。
【００１９】
そして、４脚式ロボット１が階段を昇降する際には、左前脚３Ｌａ若しくは右前脚３Ｒａ、又は左後脚３Ｌｂ若しくは右後脚３Ｒｂのいずれか１つ、または２つ以上が、階段の段差を昇り、又は降りするようにしている。また、各脚の昇り、又は降りの際には、脚車輪Ｊ３を回転駆動させずに若しくは階段の上の段の存在する側へ進むよう脚車輪Ｊ３を回転駆動しながら歩行動作させるようにしている。
【００２０】
なお、階段の昇降時、脚先前後位置の誤差修正に脚車輪Ｊ３の駆動を使用するため、左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３ＲｂのＺ軸回りに回動する第１関節Ｊ０は、脚車輪Ｊ３が進行方向を向く角度で保持されている。
本実施形態の４脚式ロボット１は、階段の昇降動作を制御するため、ロボットボディ２にコンピュータ装置１０が搭載されている。コンピュータ装置１０は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスク等を有するものであり、このコンピュータ装置１０のハードウェア構成は汎用のコンピュータと同じである。
【００２１】
本実施形態のコンピュータ装置１０は、図２に示すように、階段認識装置１１と、歩容データ作成装置１２と、関節角算出装置１３と、脚駆動制御装置１４と、を備えている。
なお、コンピュータ装置１０の各装置は、必ずしも４脚式ロボット１に搭載されていなくてもよく、４脚式ロボット１の外部に配備され、４脚式ロボット１に無線又は有線で指示するようにしてもよい。
【００２２】
階段認識装置１１は、４脚式ロボット１に搭載したセンサ１５の出力信号に基づいて、これから昇降する階段の情報を得ている。階段認識装置１１が得た階段情報は、図３に示す階段の踏面長さＳ、階段の蹴上げ高さＨ、階段幅Ｌや、階段の段数Ｎ、昇降データ（０：昇り、１：降り）などの情報である。
ここで、本実施形態では、図３において、階段の一段目の蹴上げ面と地面とが交差する位置であって階段の幅方向の一端Ｐを原点としたＸＹＺ座標をグローバル座標としている。
【００２３】
歩容データ作成装置１２は、階段認識装置１１が得た階段情報に基づいて、４脚式ロボット１が階段を昇降する４脚（左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３Ｒｂ）のモーション毎のローカル座標を算出する。
関節角算出装置１３は、歩容データ作成装置１２から入力した４脚のモーション毎のローカル座標の情報に基づいて逆運動学（Ｉｎｖｅｒｓｅ  Ｋｉｎｅｍａｔｉｃｓ）を解き、４脚のモーション毎の股関節Ｊ１，第２関節Ｊ２の関節角を算出する。
【００２４】
脚駆動制御装置１４は、関節角算出装置１３から入力した４脚のモーション毎の股関節Ｊ１，第２関節Ｊ２の関節角のデータに基づいて、４脚の股関節Ｊ１，第２関節Ｊ２を駆動しているアクチュエータ１６に駆動指令値を出力する。これにより、左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３Ｒｂのそれぞれが、独自の階段の昇降動作を行う。
【００２５】
図４は、歩容データ作成装置１２が実行する歩容データ作成処理の流れを示すフローチャートを示すものである。
先ず、ステップＳＴ２では、階段認識装置１１から階段情報を読み取る。
次いで、ステップＳＴ４に移行し、階段情報に基づいて階段の構成要素を設定する。
次いで、ステップＳＴ６に移行し、階段情報に基づいて、設定した構成要素のモーション全ての脚先グローバルＸＺ座標を算出する。
【００２６】
次いで、ステップＳＴ８に移行し、クリティカルポジションＣposのボディグローバルＸＺθ座標を算出する。なお、θはボディピッチ角度である。
次いで、ステップＳＴ１０に移行し、クリティカルポジションＣpos以外のボディグローバルＸＺθ座標を算出する。
次いで、ステップＳＴ１２に移行し、ボディ安定余裕のチェック処理を行う。
【００２７】
次いで、ステップＳＴ１４に移行し、すね、膝干渉チェック処理を行う。
次いで、ステップＳＴ１６に移行し、４脚可動限界チェック処理を行う。
次いで、ステップＳＴ１８に移行し、設定した４脚（左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３Ｒｂ）のモーション毎のグローバル座標をローカル座標に変換する。
次いで、ステップＳＴ２０に移行し、関節角度チェック処理を行う。
次いで、ステップＳＴ２２に移行し、４脚（左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３Ｒｂ）のモーション毎のローカル座標を出力し、その後に歩容データ作成処理を終了する。
【００２８】
次に、図４で示した歩容データ作成装置１２の歩容データ作成処理の動作について、図５から図８を参照して具体的に説明する。
先ず、本実施形態の処理は、階段認識装置１１から階段の踏面長さＳ、階段の蹴上げ高さＨ、階段の段数Ｎ、昇降データ（０：昇り、１：降り）などの階段情報を読み取る（ステップＳＴ２）。
そして、階段情報の階段の段数Ｎに基づいて、１段用、２段用、３段以上用と３つのパターンに類型化し、構成要素を「１段」、「２段」、「昇り始め」、「中間」、「昇り終り」の組合せで設定する（ステップＳＴ４）。階段に応じた組合せは、１段：「１段」、２段：「２段」、３段：「昇り始め」＋「昇り終り」、４段：「昇り始め」＋「中間」＋「昇り終り」、Ｎ段（Ｎ≧４）：「昇り始め」＋「中間」×（Ｎ−３）＋「昇り終り」である。
【００２９】
図５（ａ）は、３段の階段を４脚式ロボット１が昇り始める、１１個のモーション数を有した「昇り始め」の構成要件を示したものであり、各モーションの○印は、４脚式ロボット１の４脚の脚車輪Ｊ３が前のモーションから動いている状態、すなわち、○印の脚の脚車輪Ｊ３が、地面（又は階段の踏面）に接触して移動している状態、或いは地面（又は階段の踏面）から上がって（遊脚して）移動している状態を示している。例えば、モーション０の○印で示していない左前脚３Ｌａは地面上で停止し、モーション１の左前脚３Ｌａは地面から上がった遊脚で移動し、モーション２の左前脚３Ｌａは階段の踏み面上で進行方向に移動している状態を示している。また、モーション８の左後脚３Ｌｂは地面上で停止し、モーション９の左後脚３Ｌｂは地面から上がった遊脚で移動し、モーション１０の左後脚３Ｌｂは階段の踏み面上で進行方向に移動している状態を示している。
【００３０】
各モーションの歩容は、階段の寸法は違っても、脚を動かす順番、接地させる段は同じで、階段寸法に合わせて４脚（左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３Ｒｂ）の脚先、ロボットボディ２の位置を調整する手法をとる。
そして、階段情報の階段の踏面長さＳ、階段の蹴上げ高さＨに基づいて、構成要件のモーション全ての脚先グローバルＸＺ座標を算出する（ステップＳＴ６）。
【００３１】
ここで、図６（ａ），（ｂ）は、階段の昇り動作を行っている４脚のうち、図５（ａ）のモーション１０から右後脚３Ｒｂを上げる（遊脚とする）直前の状態のモーション（図５（ｂ）で示すモーションＮ）を示している。
図５（ｂ）に示すように、左後脚３Ｌｂを遊脚としたモーション９の支持多角形Ｄ１は、４脚式ロボット１の昇り方向の後端から前端まで延在しているので、４脚式ロボット１のバランスを取るために（ロボットボディ２の重心を支持多角形Ｓ１内に位置させるために）、ロボットボディ２を大きく移動させる必要はない。
【００３２】
これに対して、右左後脚３Ｒｂを遊脚とするモーションＮは、図５（ｂ）で示すように、支持多角形Ｄ２が４脚式ロボット１の昇り方向の前方に位置しており、４脚式ロボット１のバランスを取るためには、ロボットボディ２の重心を支持多角形Ｄ１内に位置するようにロボットボディ２を昇り方向に大きく移動させる必要がある。したがって、本実施形態では、図６（ａ），（ｂ）、図５（ｂ）のモーションＮのように、一番最後に階段を昇る脚を動かそうとするモーションを、クリティカルポジションＣposと称する。
【００３３】
次に、本実施形態の処理は、階段情報に基づいてクリティカルポジションＣposのロボットボディ２のボディグローバルＸＺθ座標を算出する（ステップＳＴ８）。なお、ボディピッチ角度θは、図６（ｂ）に示すように、ロボットボディ２の中心を通る水平線Ｆとロボットボディ２ＴＰのなす角度をＺＸ平面に投影した角度であり、θ＝Ｈ／Ｓ×ｔａｎ−１（Ｈ／Ｓ）である。なお、Ｈは階段の蹴上げ高さ、Ｓは階段の踏面長さである。
【００３４】
次に、クリティカルポジションＣpos以外（左後脚３Ｌｂ又は右後脚３Ｒｂの少なくとも一方が遊脚になっていないモーション）のロボットボディ２のボディグローバルＸＺθ座標を算出する（ステップＳＴ１０）。その場合、θの値は、モーションによりクリティカルポジションＣposのθ×（０．５〜１．０）の値とする。
次に、図６（ａ）で示したモーションＮの支持多角形Ｄ２の１辺として、左後脚３Ｌｂの内車輪と右前脚３Ｒａの外車輪とを結ぶ直線をＸＹ平面に投影した直線Ｅを設定する。そして、図６（ａ）の○印で示す位置をロボットボディ２の重心をＸＹ平面に投影した重心投影点Ｑとすると、支持多角形Ｄ２の１辺である直線Ｅと重心投影点Ｑとの距離を安定余裕値Ｌｓｍとし、この値が所定値未満（例えば６０mm未満）の場合には、安定余裕値Ｌｓｍが所定値（例えば６０mm）となるように、ボディグローバルＸＺθ座標のＸ座標を修正する（ステップＳＴ１２）。
【００３５】
次に、図７に示すように、階段情報に基づいて所定の階段の段鼻１７のグローバルＸＺ座標を算出し、４脚の全てのモーションの脚先ＸＺ座標、ロボットボディ２のボディグローバルＸＺθ座標に基づいて、すね角度θｓｕｎｅを算出する。そして、すね角度θｓｕｎｅの変化に伴う４脚の大腿リンク４及び下腿リンク５の座標を求め、近接する部位と段鼻１７との距離をチェックする。例えば、段鼻１７に近接する下腿リンク５との間の距離を段鼻距離Ｌｋｔとし、この値が所定値未満（例えば１０mm未満）の場合には、段鼻距離Ｌｋｔが所定値（例えば１０mm）となるように、全てのモーションのボディグローバルＸＺθ座標のθ座標を修正する（ステップＳＴ１４）。
【００３６】
次に、４脚（左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３Ｒｂ）の脚先のグローバルＺ座標の稼働限界（上限と下限）からロボットボディ２のボディグローバルＺ座標の稼働限界（上限と下限）を求める。すなわち、４脚の全てのモーションの脚先のグローバルＺ座標の最大値、最小値を算出し、所定の脚の最大値、最小値が、図８（例として左前脚３Ｌａの稼働）に斜線で示す稼働範囲内に入っていない場合には、所定の脚のロボットボディ２の最大値、最小値が稼働範囲内に入るように、ロボットボディ２のボディグローバルＺ座標を修正する（ステップＳＴ１６）。
【００３７】
次に、４脚の全てのモーションについて、ロボットボディ２のボディグローバルＸＺθ座標及び脚先グローバルＸＺ座標を、股関節Ｊ１を原点とするローカル座標に変換する（ステップＳＴ１８）。
次に、４脚（左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３Ｒｂ）の全てのモーションについて、ローカル座標に基づいて股関節Ｊ１、第２関節Ｊ２の角度を算出し、各脚の稼働範囲が、図８の斜線で示す稼働範囲内に入っているか否かをチェックする。そして、各脚の稼働範囲が、図８の斜線で示す稼働範囲内に入っていない場合には、４脚式ロボット１は階段を昇ることができない、と判断する（ステップＳＴ２０）。
そして、４脚（左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３Ｒｂ）の稼働範囲が、図８の斜線で示す稼働範囲内に入っている場合には、４脚のモーション毎のローカル座標を出力する（ステップＳＴ２２）。
【００３８】
次に、本実施形態の作用効果について説明する。
本実施形態の歩容データ作成装置１２は、階段情報である階段の段数と、４脚式ロボット１の昇り動作、或いは降り動作とに基づいて４脚（左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３Ｒｂ）のモーションの全てを設定し、階段情報である階段の踏面長さＳ、階段の蹴上げ高さＬに基づいて、４脚のモーションの全ての脚先グローバルＸＺ座標及びボディグローバルＸＺθ座標を算出する。したがって、本実施形態の歩容データ作成装置１２は、未知の階段であっても４脚式ロボット１の安定した昇降動作を行うことができる歩容データを作成することができる。
【００３９】
また、４脚（左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３Ｒｂ）のうちで左後脚３Ｌｂ及び右後脚３Ｒｂの一方を遊脚にすることが難しいモーション（クリティカルポジションＣpos、図５のモーション１０、図６である）の場合には、図６（ａ）で示したように、支持四角形の１辺である直線Ｅに垂直で重心投影点Ｑまでの距離である安定余裕値Ｌｓｍが、所定値未満（例えば６０mm未満）の場合には、所定値（例えば６０mm）となるように、クリティカルポジションＣposのボディグローバルＸＺθ座標のＸ座標を修正しているので、クリティカルポジションＣposが存在しても、４脚が安定した歩行動作で階段を昇ることができる歩容データを作成することができる。
【００４０】
また、４脚（左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３Ｒｂ）と段鼻１７との干渉チェックを行い、段鼻１７との距離（段鼻距離Ｌｋｔ）が所定値未満の場合には、全てのモーションのボディグローバルＸＺθ座標のθ座標を修正するようにしているので、４脚が確実に階段を昇ることができる歩容データを作成することができる。
また、４脚（左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３Ｒｂ）のモーションの全ての脚先のグローバルＺ座標の最大値、最小値を算出し、所定の脚の最大値、最小値が、予め設定した稼働範囲内に入っていない場合には、ロボットボディ２のボディグローバルＺ座標を修正するようにしているので、４脚が確実に階段を昇ることができる歩容データを作成することができる。
【００４１】
ここで、本発明に係るモーション設定手段及びモーション設定工程が、図４のステップＳＴ４に相当し、本発明に係る脚先グローバル座標算出手段及び脚先グローバル座標算出工程が、図４のステップＳＴ６に相当し、本発明に係るボディグローバル座標算出手段及びボディグローバル座標算出工程が、図４のステップＳＴ８〜ステップＳＴ１６に相当し、本発明に係る脚先ローカル座標算出手段及び脚先ローカル座標算出工程が、図４のステップＳＴ１８に相当し、本発明に係るローカル座標出力手段及びローカル座標出力工程が、図４のステップＳＴ２２に相当し、本発明に係るクリティカルポジションのグローバル座標修正手段が、図４のステップＳＴ１２に相当し、本発明に係る段鼻干渉修正手段及び段鼻干渉修正工程が、図４のステップＳＴ１４に相当し、本発明に係る稼働限界修正手段及び稼働限界修正工程が、図４のステップＳＴ１６に相当している。
【００４２】
なお、上述した実施形態では、４脚式ロボット１が階段を昇る場合について説明したが、階段を降りる場合、例えば３段の階段を４脚式ロボット１が降り始めるときには、図５（ａ）に対して逆の動作を行い、図５（ａ）のモーション１０の姿勢から一番最初に階段を降りる最前の脚を動かそうとするモーションを、クリティカルポジションＣposとする。そして、図４のステップＳＴ４における階段の構成要素の設定において、一部異なる昇りの構成要素となるが、４脚（左前脚３Ｌａ、右前脚３Ｒａ、左後脚３Ｌｂ及び右後脚３Ｒｂ）の前後左右を入れ替えることによって図４と同様の動作を行う。
【符号の説明】
【００４３】
１…４脚式ロボット、２…ロボットボディ、３Ｌａ…左前脚、３Ｌｂ…左後脚、３Ｒａ…右前脚、３Ｒｂ…右後脚、４…大腿リンク、５…下腿リンク、１０…コンピュータ装置、１１…階段認識装置、１２…歩容データ作成装置、１３…関節角算出装置、１４…脚駆動制御装置、１５…センサ、１６…アクチュエータ、１７…段鼻、Ｃpos…クリティカルポジション、Ｑ…重心投影点、Ｊ０…第１関節、Ｊ１…股関節、Ｊ２…第２関節、Ｊ３…脚車輪、Ｌｋｔ…段鼻距離、Ｌｓｍ…安定余裕値、θｓｕｎｅ…すね角度
【図１】
2013237126.tif 000003
【図２】
2013237126.tif 000004
【図３】
2013237126.tif 000005
【図４】
2013237126.tif 000006
【図５】
2013237126.tif 000007
【図６】
2013237126.tif 000008
【図７】
2013237126.tif 000009
【図８】
2013237126.tif 000010