(57)【要約】【課題】パラレルリンク機構の２足歩行ロボット装置に安定した２足歩行を行わせる歩行パターンを作成する歩行パターン作成装置を提供することを目的とする。【解決手段】足部を備えた脚部６と腰部５とから成る２足歩行ロボット装置１の歩行パターンを作成する歩行パターン作成装置２であって、足部において目標ゼロモーメントポイントを設定し、設定した目標ゼロモーメントポイントに応じて腰部５のモーメント補償軌道を算出する。【選択図】　図５
2004082223.tif 000002
【特許請求の範囲】
【請求項１】
足部を備えた脚部と腰部とから成る２足歩行ロボット装置の歩行パターンを作成する歩行パターン作成装置であって、前記足部において目標ゼロモーメントポイントを設定し、前記設定した目標ゼロモーメントポイントに応じて前記腰部のモーメント補償軌道を算出することを特徴とする歩行パターン作成装置。
【請求項２】
前記足部の軌道と前記腰部の初期軌道を設定する軌道設定手段と、前記設定した足部の軌道と前記腰部の初期軌道とに基づいて目標ゼロモーメントポイントの軌道を設定する目標ＺＭＰ軌道設定手段と、前記脚部の運動および前記腰部の運動による前記目標ゼロモーメントポイント回りのモーメントを算出する目標ＺＭＰ回りモーメント算出手段と、前記算出した目標ゼロモーメントポイント回りのモーメントに基づいて前記腰部のモーメント補償軌道を算出するモーメント補償軌道算出手段と、前記設定した足部の軌道と前記腰部のモーメント補償軌道とにより算出された各質点の加速度に基づいて前記目標ゼロモーメントポイントにおけるエラーモーメントを算出するエラーモーメント算出手段と、前記算出したエラーモーメントが所定モーメントよりも小さくなったとき前記足部の軌道と前記腰部のモーメント補償軌道とに基づき前記脚部の脚を伸縮するシリンダの伸縮長さを算出するシリンダ長さ導出手段とを有することを特徴とする請求項１に記載の歩行パターン作成装置。
【請求項３】
前記ＺＭＰ回りモーメント算出手段において算出した目標ゼロモーメントポイント回りのモーメントと前記算出したエラーモーメントとの総和に基づいてフーリエ係数を算出するフーリエ変換手段と、前記算出したフーリエ係数に基づいて前記モーメント補償軌道の近似解を求めるためのフーリエ係数を決定するフーリエ係数決定手段とを備え、前記モーメント補償軌道算出手段は、前記決定したフーリエ係数に基づく逆フーリエ変換により前記腰部のモーメント補償軌道を算出することを特徴とする請求項２に記載の歩行パターン作成装置。
【請求項４】
前記目標ＺＭＰ回りモーメント算出手段は、前記脚部運動により生じる目標ＺＭＰ回りモーメントを算出する下肢運動による目標ＺＭＰ回りモーメント算出手段と、前記腰部の運動により生じる目標ＺＭＰ回りモーメントを算出する腰運動による目標ＺＭＰ回り既知モーメント算出手段とを有することを特徴とする請求項２または３に記載の歩行パターン作成装置。
【請求項５】
前記シリンダ長さ導出手段は、前記足部および前記腰部における回転ベクトルと回転行列とを算出する回転成分算出手段と、前記回転ベクトルと前記回転行列とに基づいて今回の足部と腰部の座標を算出する足部腰部座標算出手段と、前記今回の足部と腰部の座標と前回の足部と腰部の座標とに基づいて前記シリンダの伸縮長さを算出するシリンダ長さ算出手段とを有することを特徴とする請求項２乃至４のいずれか１に記載の歩行パターン作成装置。
【請求項６】
足部を備えた脚部と腰部とから成り、前記腰部は全体を制御する制御用コンピュータを有し、請求項１乃至４のいずれか１に記載の歩行パターン作成装置において作成された歩行パターンに基づいて２足歩行を行う２足歩行ロボット装置であって、
前記制御用コンピュータは、前記歩行パターン作成装置と無線通信を行って前記歩行パターンを受信することを特徴とする２足歩行ロボット装置。
【請求項７】
前記制御コンピュータは、前記歩行パターン作成用コンピュータから歩行パターンを無線で受信してメモリに格納する歩行パターン設定手段と、前記格納した歩行パターンから歩行に使用するパターンを選択して歩行開始を指令する歩行開始命令手段とを有することを特徴とする請求項６に記載の２足歩行ロボット装置。
【請求項８】
前記制御コンピュータは、前記脚部の脚を伸縮するシリンダの初期位置を設定するシリンダ初期位置設定手段を備えたことを特徴とする請求項７に記載の２足歩行ロボット装置。
【請求項９】
足部を備えた脚部と腰部とから成る２足歩行ロボット装置の歩行パターンを作成する歩行パターン作成方法であって、前記足部において目標ゼロモーメントポイントを設定し、前記設定した目標ゼロモーメントポイントに応じて前記腰部のモーメント補償軌道を算出することを特徴とする歩行パターン作成方法。
【請求項１０】
前記足部の軌道と前記腰部の初期軌道を設定する軌道設定ステップと、前記設定した足部の軌道と前記腰部の初期軌道とに基づいて目標ゼロモーメントポイントの軌道を設定する目標ＺＭＰ軌道設定ステップと、前記脚部の運動および前記腰部の運動による前記目標ゼロモーメントポイント回りのモーメントを算出する目標ＺＭＰ回りモーメント算出ステップと、前記算出した目標ゼロモーメントポイント回りのモーメントに基づいて前記腰部のモーメント補償軌道を算出するモーメント補償軌道算出ステップと、前記設定した足部の軌道と前記腰部のモーメント補償軌道とにより算出された各質点の加速度に基づいて前記目標ゼロモーメントポイントにおけるエラーモーメントを算出するエラーモーメント算出ステップと、前記算出したエラーモーメントが所定モーメントよりも小さくなったとき前記足部の軌道と前記腰部のモーメント補償軌道とに基づき前記脚部の脚を伸縮するシリンダの伸縮長さを算出するシリンダ長さ導出ステップとを有することを特徴とする請求項９に記載の歩行パターン作成方法。
【請求項１１】
前記目標ＺＭＰ回りモーメント算出ステップにおいて算出した目標ゼロモーメントポイント回りのモーメントと前記算出したエラーモーメントとの総和に基づいてフーリエ係数を算出するフーリエ変換ステップと、前記算出したフーリエ係数に基づいて前記モーメント補償軌道の近似解を求めるためのフーリエ係数を決定するフーリエ係数決定ステップとを備え、前記モーメント補償軌道算出ステップにおいては、前記決定したフーリエ係数に基づく逆フーリエ変換により前記腰部のモーメント補償軌道を算出することを特徴とする請求項１０に記載の歩行パターン作成方法。
【請求項１２】
前記目標ＺＭＰ回りモーメント算出ステップは、前記脚部運動により生じる目標ＺＭＰ回りモーメントを算出する下肢運動による目標ＺＭＰ回りモーメント算出ステップと、前記腰部の運動により生じる目標ＺＭＰ回りの既知のモーメントを算出する腰運動による目標ＺＭＰ回り既知モーメント算出ステップとを有することを特徴とする請求項１０または１１に記載の歩行パターン作成方法。
【請求項１３】
前記シリンダ長さ導出ステップは、前記足部および前記腰部における回転ベクトルと回転行列とを算出する回転成分算出ステップと、前記回転ベクトルと前記回転行列とに基づいて今回の足部と腰部の座標を算出する足部腰部座標算出ステップと、前記今回の足部と腰部の座標と前回の足部と腰部の座標とに基づいて前記シリンダの伸縮長さを算出するシリンダ長さ算出ステップとを有することを特徴とする請求項１０乃至１２のいずれか１に記載の歩行パターン作成方法。
【請求項１４】
足部を備えた脚部と腰部とから成り、前記腰部は全体を制御する制御用コンピュータを有し、請求項１乃至５のいずれか１に記載の歩行パターン作成装置において作成された歩行パターンに基づいて２足歩行を行う２足歩行ロボット装置の制御方法であって、前記歩行パターン作成装置と無線通信を行って前記歩行パターンを受信することを特徴とする２足歩行ロボット装置の制御方法。
【請求項１５】
前記歩行パターン作成用コンピュータから歩行パターンを無線で受信してメモリに格納する歩行パターン設定ステップと、前記格納した歩行パターンから歩行に使用するパターンを選択して歩行開始を指令する歩行開始命令ステップとを有することを特徴とする請求項１４に記載の２足歩行ロボット装置の制御方法。
【請求項１６】
前記脚部の脚を伸縮するシリンダの初期位置を設定するシリンダ初期位置設定ステップを備えたことを特徴とする請求項１５に記載の２足歩行ロボット装置の制御方法。
【請求項１７】
コンピュータに請求項１０乃至１３のいずれか１に記載の歩行パターン作成方法の各ステップを実行させるためのプログラム。
【請求項１８】
コンピュータに請求項１０乃至１３のいずれか１に記載の歩行パターン作成方法の各ステップを実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１９】
コンピュータに請求項１５または１６に記載の２足歩行ロボット装置の制御方法の各ステップを実行させるためのプログラム。
【請求項２０】
コンピュータに請求項１５または１６に記載の２足歩行ロボット装置の制御方法の各ステップを実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、パラレルリンク機構を有する２足歩行ロボット装置に２足歩行を行わせる歩行パターンを作成する装置、その歩行パターンに基づいて２足歩行を行う２足歩行ロボット装置、２足歩行を行わせる歩行パターンを作成する方法、および２足歩行を行う２足歩行ロボット装置の制御方法、ならびに、その歩行パターン作成方法とその２足歩行ロボット装置の制御方法を実行させるためのプログラムおよび記録媒体に関するものである。
【０００２】
【従来の技術】
従来、パラレルリンク機構を有するロボット装置としては、例えば特開２００１−１２１４６０号公報に記載されたものがあり、この公報においては、ユニットリンクを３本用いたパラレルリンク駆動機構について記載され、またハンドリングを実現できることが記載されている。しかし、上記公報においては歩行については何ら記載されておらず、従って、パラレルリンク機構を有する２足歩行ロボット装置についても、また、このロボット装置の安定した歩行についても何ら記載されていない。
【０００３】
【発明が解決しようとする課題】
このように、従来のパラレルリンク機構を有するロボット装置では、パラレルリンク機構を有する２足歩行ロボット装置についても、また、このロボット装置の安定した歩行についても記載がなく、安定歩行が可能なパラレルリンク機構２足歩行ロボット装置の出現が要求されていた。
【０００４】
本発明は、パラレルリンク機構の２足歩行ロボット装置に安定した２足歩行を行わせる歩行パターンを作成する歩行パターン作成装置、安定した２足歩行を行うパラレルリンク機構の２足歩行ロボット装置、パラレルリンク機構の２足歩行ロボット装置に安定した２足歩行を行わせる歩行パターンを作成する歩行パターン作成方法、パラレルリンク機構の２足歩行ロボット装置に安定した２足歩行を行わせる２足歩行ロボット装置の制御方法、ならびに、その歩行パターン作成方法とその２足歩行ロボット装置の制御方法を実行させるためのプログラムおよび記録媒体を提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記課題を解決するために本発明の歩行パターン作成装置は、足部を備えた脚部と腰部とから成る２足歩行ロボット装置の歩行パターンを作成する歩行パターン作成装置であって、足部において目標ゼロモーメントポイントを設定し、設定した目標ゼロモーメントポイントに応じて腰部のモーメント補償軌道を算出する構成を備えている。
これにより、パラレルリンク機構の２足歩行ロボット装置に安定した２足歩行を行わせる歩行パターンを作成する歩行パターン作成装置が得られる。
【０００６】
上記課題を解決するために本発明の２足歩行ロボット装置は、足部を備えた脚部と腰部とから成り、腰部は全体を制御する制御用コンピュータを有し、上記歩行パターン作成装置において作成された歩行パターンに基づいて２足歩行を行う２足歩行ロボット装置であって、制御用コンピュータは、歩行パターン作成装置と無線通信を行って歩行パターンを受信する構成を備えている。
これにより、安定した２足歩行を行うパラレルリンク機構の２足歩行ロボット装置が得られる。
【０００７】
上記課題を解決するために本発明の歩行パターン作成方法は、足部を備えた脚部と腰部とから成る２足歩行ロボット装置の歩行パターンを作成する歩行パターン作成方法であって、足部において目標ゼロモーメントポイントを設定し、設定した目標ゼロモーメントポイントに応じて腰部のモーメント補償軌道を算出する構成を備えている。
これにより、パラレルリンク機構の２足歩行ロボット装置に安定した２足歩行を行わせる歩行パターンを作成する歩行パターン作成方法が得られる。
【０００８】
上記課題を解決するために本発明の２足歩行ロボット装置の制御方法は、足部を備えた脚部と腰部とから成り、腰部は全体を制御する制御用コンピュータを有し、上記歩行パターン作成装置において作成された歩行パターンに基づいて２足歩行を行う２足歩行ロボット装置の制御方法であって、歩行パターン作成装置と無線通信を行って歩行パターンを受信する構成を備えている。
これにより、パラレルリンク機構の２足歩行ロボット装置に安定した２足歩行を行わせる２足歩行ロボット装置の制御方法が得られる。
【０００９】
上記課題を解決するために本発明のプログラムは、コンピュータに上記歩行パターン作成方法と上記２足歩行ロボット装置の制御方法の各ステップを実行させるためのプログラムである構成を備えている。
これにより、上記歩行パターン作成方法と上記２足歩行ロボット装置の制御方法を実行させるためのプログラムが得られる。
【００１０】
上記課題を解決するために本発明の記録媒体は、コンピュータに上記歩行パターン作成方法と上記２足歩行ロボット装置の制御方法の各ステップを実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体である構成を備えている。
これにより、上記歩行パターン作成方法と上記２足歩行ロボット装置の制御方法を実行させるための記録媒体が得られる。
【００１１】
【発明の実施の形態】
本発明の請求項１に記載の歩行パターン作成装置は、足部を備えた脚部と腰部とから成る２足歩行ロボット装置の歩行パターンを作成する歩行パターン作成装置であって、足部において目標ゼロモーメントポイントを設定し、設定した目標ゼロモーメントポイントに応じて腰部のモーメント補償軌道を算出することとしたものである。
この構成により、２足歩行ロボット装置の腰部のモーメント補償軌道により足部のゼロモーメントポイントにおけるモーメントをゼロに近づけて歩行を安定化することができるという作用を有する。
【００１２】
請求項２に記載の歩行パターン作成装置は、請求項１に記載の歩行パターン作成装置において、足部の軌道と腰部の初期軌道を設定する軌道設定手段と、設定した足部の軌道と腰部の初期軌道とに基づいて目標ゼロモーメントポイントの軌道を設定する目標ＺＭＰ軌道設定手段と、脚部の運動および腰部の運動による目標ゼロモーメントポイント回りのモーメントを算出する目標ＺＭＰ回りモーメント算出手段と、算出した目標ゼロモーメントポイント回りのモーメントに基づいて腰部のモーメント補償軌道を算出するモーメント補償軌道算出手段と、設定した足部の軌道と腰部のモーメント補償軌道とにより算出された各質点の加速度に基づいて目標ゼロモーメントポイントにおけるエラーモーメントを算出するエラーモーメント算出手段と、算出したエラーモーメントが所定モーメントよりも小さくなったとき足部の軌道と腰部のモーメント補償軌道とに基づき脚部の脚を伸縮するシリンダの伸縮長さを算出するシリンダ長さ導出手段とを有することとしたものである。
この構成により、脚部の運動および腰部の運動による目標ゼロモーメントポイント回りのモーメントがゼロの近傍か否かをエラーモーメントにより判定することができ、歩行パターンの設定において目標ゼロモーメントポイント回りのモーメントを限り無くゼロに近づけることができるので、安定性の極めて高い２足歩行を２足歩行ロボット装置に行わせることができるという作用を有する。
【００１３】
請求項３に記載の歩行パターン作成装置は、請求項２に記載の歩行パターン作成装置において、目標ＺＭＰ回りモーメント算出手段において算出した目標ゼロモーメントポイント回りのモーメントと算出したエラーモーメントとの総和に基づいてフーリエ係数を算出するフーリエ変換手段と、算出したフーリエ係数に基づいてモーメント補償軌道の近似解を求めるためのフーリエ係数を決定するフーリエ係数決定手段とを備え、モーメント補償軌道算出手段は、決定したフーリエ係数に基づく逆フーリエ変換により腰部のモーメント補償軌道を算出することとしたものである。
この構成により、腰部のモーメント補償軌道を正確に算出することができるので、目標ゼロモーメントポイント回りのモーメントを迅速にゼロに近づけることができるという作用を有する。
【００１４】
請求項４に記載の歩行パターン作成装置は、請求項２または３に記載の歩行パターン作成装置において、目標ＺＭＰ回りモーメント算出手段は、脚部運動により生じる目標ＺＭＰ回りモーメントを算出する下肢運動による目標ＺＭＰ回りモーメント算出手段と、腰部の運動により生じる目標ＺＭＰ回りの既知のモーメントを算出する腰運動による目標ＺＭＰ回り既知モーメント算出手段とを有することとしたものである。
この構成により、脚部の運動および腰部の運動による目標ゼロモーメントポイント回りのモーメントを正確に算出することができるので、腰部のモーメント補償軌道を正確に算出することができるという作用を有する。
【００１５】
請求項５に記載の歩行パターン作成装置は、請求項２乃至４のいずれか１に記載の歩行パターン作成装置において、シリンダ長さ導出手段は、足部および腰部における回転ベクトルと回転行列とを算出する回転成分算出手段と、回転ベクトルと回転行列とに基づいて今回の足部と腰部の座標を算出する足部腰部座標算出手段と、今回の足部と腰部の座標と前回の足部と腰部の座標とに基づいてシリンダの伸縮長さを算出するシリンダ長さ算出手段とを有することとしたものである。
この構成により、足部および腰部の移動に必要なシリンダの伸縮長さを正確に算出することができるので、安定性が高くかつ正確な歩行を行うことができるという作用を有する。
【００１６】
請求項６に記載の２足歩行ロボット装置は、足部を備えた脚部と腰部とから成り、腰部は全体を制御する制御用コンピュータを有し、請求項１乃至４のいずれか１に記載の歩行パターン作成装置において作成された歩行パターンに基づいて２足歩行を行う２足歩行ロボット装置であって、制御用コンピュータは、歩行パターン作成装置と無線通信を行って歩行パターンを受信することとしたものである。
この構成により、腰部のモーメント補償軌道により足部の＜　目標＞　ゼロモーメントポイントにおけるモーメントをゼロに近づけて歩行を安定化することができると共に歩行パターンを無線を介して遠隔地でも受信することができ、また、腰部に種々の上体（体幹）を取り付け可能とすれば、種々の用途（たとえば救助用、介護用、危険作業用等）に適合する２足歩行ロボットを迅速に構築することができるという作用を有する。
【００１７】
請求項７に記載の２足歩行ロボット装置は、請求項６に記載の２足歩行ロボット装置において、制御コンピュータは、歩行パターン作成用コンピュータから歩行パターンを無線で受信してメモリに格納する歩行パターン設定手段と、格納した歩行パターンから歩行に使用するパターンを選択して歩行開始を指令する歩行開始命令手段とを有することとしたものである。
この構成により、歩行状態においてロボット部は歩行パターン作成用コンピュータから物理的な拘束を受けることなく高安定な歩行を行うことができ、また、周囲または自己の状態（たとえば搭載重量の軽重状態）に応じた適切な歩行パターンで歩行することができるという作用を有する。
【００１８】
請求項８に記載の２足歩行ロボット装置は、請求項７に記載の２足歩行ロボット装置において、制御コンピュータは、脚部の脚を伸縮するシリンダの初期位置を設定するシリンダ初期位置設定手段を備えることとしたものである。
この構成により、シリンダの初期位置を歩行パターンにおける初期位置に合致させることができるので、円滑に歩行を開始することができるという作用を有する。
【００１９】
請求項９に記載の歩行パターン作成方法は、足部を備えた脚部と腰部とから成る２足歩行ロボット装置の歩行パターンを作成する歩行パターン作成方法であって、足部において目標ゼロモーメントポイントを設定し、設定した目標ゼロモーメントポイントに応じて腰部のモーメント補償軌道を算出することとしたものである。
この構成により、２足歩行ロボット装置の腰部のモーメント補償軌道により足部の目標ゼロモーメントポイントにおけるモーメントをゼロに近づけて歩行を安定化することができるという作用を有する。
【００２０】
請求項１０に記載の歩行パターン作成方法は、請求項９に記載の歩行パターン作成方法において、足部の軌道と腰部の初期軌道を設定する軌道設定ステップと、設定した足部の軌道と腰部の初期軌道とに基づいて目標ゼロモーメントポイントの軌道を設定する目標ＺＭＰ軌道設定ステップと、脚部の運動および腰部の運動による目標ゼロモーメントポイント回りのモーメントを算出する目標ＺＭＰ回りモーメント算出ステップと、算出した目標ゼロモーメントポイント回りのモーメントに基づいて腰部のモーメント補償軌道を算出するモーメント補償軌道算出ステップと、設定した足部の軌道と腰部のモーメント補償軌道とにより算出された各質点の加速度に基づいて目標ゼロモーメントポイントにおけるエラーモーメントを算出するエラーモーメント算出ステップと、算出したエラーモーメントが所定モーメントよりも小さくなったとき足部の軌道と腰部のモーメント補償軌道とに基づき脚部の脚を伸縮するシリンダの伸縮長さを算出するシリンダ長さ導出ステップとを有することとしたものである。
この構成により、脚部の運動および腰部の運動による目標ゼロモーメントポイント回りのモーメントがゼロの近傍か否かをエラーモーメントにより判定することができ、歩行パターンの設定において目標ゼロモーメントポイント回りのモーメントを限り無くゼロに近づけることができるので、安定性の極めて高い２足歩行を２足歩行ロボット装置に行わせることができるという作用を有する。
【００２１】
請求項１１に記載の歩行パターン作成方法は、請求項１０に記載の歩行パターン作成方法において、目標ＺＭＰ回りモーメント算出ステップにおいて算出した目標ゼロモーメントポイント回りのモーメントと算出したエラーモーメントとの総和に基づいてフーリエ係数を算出するフーリエ変換ステップと、算出したフーリエ係数に基づいてモーメント補償軌道の近似解を求めるためのフーリエ係数を決定するフーリエ係数決定ステップとを備え、モーメント補償軌道算出ステップにおいては、決定したフーリエ係数に基づく逆フーリエ変換により腰部のモーメント補償軌道を算出することとしたものである。
この構成により、腰部のモーメント補償軌道を正確に算出することができるので、目標ゼロモーメントポイント回りのモーメントを迅速にゼロに近づけることができるという作用を有する。
【００２２】
請求項１２に記載の歩行パターン作成方法は、請求項１０または１１に記載の歩行パターン作成方法において、目標ＺＭＰ回りモーメント算出ステップは、脚部運動により生じる目標ＺＭＰ回りモーメントを算出する下肢運動による目標ＺＭＰ回りモーメント算出ステップと、腰部の運動により生じる目標ＺＭＰ回りの既知のモーメントを算出する腰運動による目標ＺＭＰ回り既知モーメント算出ステップとを有することとしたものである。
この構成により、脚部の運動および腰部の運動による目標ゼロモーメントポイント回りのモーメントを正確に算出することができるので、腰部のモーメント補償軌道を正確に算出することができるという作用を有する。
【００２３】
請求項１３に記載の歩行パターン作成方法は、請求項１０乃至１２のいずれか１に記載の歩行パターン作成方法において、シリンダ長さ導出ステップは、足部および腰部における回転ベクトルと回転行列とを算出する回転成分算出ステップと、回転ベクトルと回転行列とに基づいて今回の足部と腰部の座標を算出する足部腰部座標算出ステップと、今回の足部と腰部の座標と前回の足部と腰部の座標とに基づいてシリンダの伸縮長さを算出するシリンダ長さ算出ステップとを有することとしたものである。
この構成により、足部および腰部の移動に必要なシリンダの伸縮長さを正確に算出することができるので、安定性が高くかつ正確な歩行を行うことができるという作用を有する。
【００２４】
請求項１４に記載の２足歩行ロボット装置の制御方法は、足部を備えた脚部と腰部とから成り、腰部は全体を制御する制御用コンピュータを有し、請求項１乃至５のいずれか１に記載の歩行パターン作成装置において作成された歩行パターンに基づいて２足歩行を行う２足歩行ロボット装置の制御方法であって、歩行パターン作成装置と無線通信を行って歩行パターンを受信することとしたものである。
この構成により、腰部のモーメント補償軌道により足部の目標ゼロモーメントポイントにおけるモーメントをゼロに近づけて歩行を安定化することができると共に歩行パターンを無線を介して遠隔地でも受信することができ、また、腰部に種々の上体（体幹）を取り付け可能とすれば、種々の用途（たとえば救助用、介護用、危険作業用等）に適合する２足歩行ロボットを迅速に構築することができるという作用を有する。
【００２５】
請求項１５に記載の２足歩行ロボット装置の制御方法は、請求項１４に記載の２足歩行ロボット装置の制御方法において、歩行パターン作成用コンピュータから歩行パターンを無線で受信してメモリに格納する歩行パターン設定ステップと、格納した歩行パターンから歩行に使用するパターンを選択して歩行開始を指令する歩行開始命令ステップとを有することとしたものである。
この構成により、歩行状態においてロボット部は歩行パターン作成用コンピュータから物理的な拘束を受けることなく高安定な歩行を行うことができ、また、周囲または自己の状態（たとえば搭載重量の軽重状態）に応じた適切な歩行パターンで歩行することができるという作用を有する。
【００２６】
請求項１６に記載の２足歩行ロボット装置の制御方法は、請求項１５に記載の２足歩行ロボット装置の制御方法において、脚部の脚を伸縮するシリンダの初期位置を設定するシリンダ初期位置設定ステップを備えることとしたものである。
この構成により、シリンダの初期位置を歩行パターンにおける初期位置に合致させることができるので、円滑に歩行を開始することができるという作用を有する。
【００２７】
請求項１７に記載のプログラムは、コンピュータに請求項１０乃至１３のいずれか１に記載の歩行パターン作成方法の各ステップを実行させるためのプログラムであることとしたものである。
この構成により、請求項１０乃至１３のいずれか１に記載の歩行パターン作成方法を任意の場所で任意の時間に汎用コンピュータに実行させることができるという作用を有する。
【００２８】
請求項１８に記載の記録媒体は、コンピュータに請求項１０乃至１３のいずれか１に記載の歩行パターン作成方法の各ステップを実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であることとしたものである。
この構成により、汎用コンピュータで記録媒体を読み取りさえすれば、請求項１０乃至１３のいずれか１に記載の歩行パターン作成方法を任意の場所で任意の時間に実行させることができるという作用を有する。
【００２９】
請求項１９に記載のプログラムは、コンピュータに請求項１５または１６に記載の２足歩行ロボット装置の制御方法の各ステップを実行させるためのプログラムであることとしたものである。
この構成により、請求項１５または１６に記載の２足歩行ロボット装置の制御方法を任意の場所で任意の時間に汎用コンピュータに実行させることができるという作用を有する。
【００３０】
請求項２０に記載の記録媒体は、コンピュータに請求項１５または１６に記載の２足歩行ロボット装置の制御方法の各ステップを実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であることとしたものである。
この構成により、汎用コンピュータで記録媒体を読み取りさえすれば、請求項１５または１６に記載の２足歩行ロボット装置の制御方法を任意の場所で任意の時間に汎用コンピュータに実行させることができるという作用を有する。
【００３１】
以下、本発明の実施の形態について、図１〜図４２を用いて説明する。
（実施の形態１）
本発明の実施の形態１による歩行パターン作成装置と２足歩行ロボット装置の説明においては、まず、（１）２足歩行ロボット装置の機構について説明し、次に（２）２足歩行の制御理論、（３）２足歩行ロボット装置の構成（ハードウェア構成およびソフトウェア構成（機能実現手段の構成））について説明し、最後に上記制御理論に基づく（４）歩行パターン作成装置と２足歩行ロボット装置の動作（歩行パターン作成動作と２足歩行ロボット装置の制御動作）をフローチャートに基づいて説明する。
【００３２】
（１）ロボット装置の機構について
最初に、本発明の実施の形態１による２足歩行ロボット装置の機構について、図３７〜図４２を用いて説明する。
図３７（ａ）は本実施の形態による２足歩行ロボット装置の下半身モジュールの模式斜視図であり、図３７（ｂ）は本実施の形態による２足歩行ロボット装置の下半身モジュールの模式平面図である。
図３７において、２０１は本実施の形態における２足歩行ロボット装置の下半身モジュール、２０１ａは右脚のパラレルリンク機構部、２０１ｂは左脚のパラレルリンク機構部、２０２はベース部、２０３は右足部、２０４は左足部、２０５ａ、２０５ａ′、２０５ｂ、２０５ｂ′、２０５ｃ、２０５ｃ′は直動リンク、２０６ａ、２０６ａ′、２０６ｂ、２０６ｂ′、２０６ｃ、２０６ｃ′はベース部側受動ジョイント、２０７ａ、２０７ｂ、２０７ｃは足部側受動ジョイント、２０８ａ、２０８ｂ、２０８ｃは回動受動ジョイントである。なお、左脚のパラレルリンク機構部２０１ｂの各部は右脚のパラレルリンク機構部２０１ａと対称で同一構成なので説明を省略する。
【００３３】
ここで、ベース部側受動ジョイント２０６ａ、２０６ａ′はベース部２０２の下面の右後部側に配設されている。足部側受動ジョイント２０７ａは右足部２０３の右後部側に配設され、その下部には回動受動ジョイント２０８ａが配設されている。直動リンク２０５ａは上端部がベース部側受動ジョイント２０６ａに連結され、下端部が足部側受動ジョイント２０７ａに連結されている。直動リンク２０５ａ′は上端部がベース部側受動ジョイント２０６ａ′に連結され、下端部が足部側受動ジョイント２０７ａに連結されている。
ベース部側受動ジョイント２０６ｂ、２０６ｂ′はベース部２０２の下面の右前部側に配設されている。足部側受動ジョイント２０７ｂは右足部２０３の右前部側に配設され、その下部には回動受動ジョイント２０８ｂが配設されている。直動リンク２０５ｂは上端部がベース部側受動ジョイント２０６ｂに連結され、下端部が足部側受動ジョイント２０７ｂに連結されている。直動リンク２０５ｂ′は上端部がベース部側受動ジョイント２０６ｂ′に連結され、下端部が足部側受動ジョイント２０７ｂに連結されている。
ベース部側受動ジョイント２０６ｃ、２０６ｃ′はベース部２０２の下面の右中央部に配設されている。足部側受動ジョイント２０７ｃは右足部２０３の右中央部に配設され、その下部には回動受動ジョイント２０８ｃが配設されている。直動リンク２０５ｃは上端部がベース部側受動ジョイント２０６ｃに連結され、下端部が足部側受動ジョイント２０７ｃに連結されている。直動リンク２０５ｃ′は上端部がベース部側受動ジョイント２０６ｃ′に連結され、下端部が足部側受動ジョイント２０７ｃに連結されている。
このように、右脚のパラレルリンク機構部２０１ａと左脚のパラレルリンク機構部２０１ｂはベース部２０２の中央に対してその両側に対称に配設されている。これにより、歩行動作制御を行うためのＺＭＰ制御（後述）が可能であり、歩行動作時の安定性に優れる。
【００３４】
また、直動リンク２０５、２０５ａ、２０５ａ′、２０５ｂ、２０５ｂ′、２０５ｃ、２０５ｃ′（以下、直動リンク２０５、２０５ａ〜２０５ｃ′とする）は、モータを用いた送り螺子機構や、油圧、水圧、空気圧等を用いたシリンダ等の直動型アクチュエータを用いて伸縮自在に形成され、その長手方向に伸縮する１自由度に形成されている。ベース部側受動ジョイント２０６、２０６ａ、２０６ａ′、２０６ｂ、２０６ｂ′、２０６ｃ、２０６ｃ′（以下、ベース部側受動ジョイント２０６、２０６ａ〜２０６ｃ′とする）は、直動リンク２０５、２０５ａ〜２０５ｃ′の長手方向に直交し、且つ各々直交する２軸の軸周方向に回動する２自由度に形成されている。足部側受動ジョイント２０７、２０７ａ、２０７ｂ、２０７ｃは、直動リンク２０５、２０５ａ〜２０５ｃ′の長手方向に直交し、且つ各々直交する２軸の軸周方向に回動する２自由度に形成されている。回動受動ジョイント２０８、２０８ａ、２０８ｂ、２０８ｃは、直動リンク２０５、２０５ａ〜２０５ｃ′の軸周方向に回動する１自由度に形成されている。
このように、パラレルリンク機構部２０１ａ、２０１ｂは各々６自由度に形成されているため、右足部２０３及び左足部２０４は、前後、左右、上下、及び前後方向、左右方向、上下方向を軸とした軸周方向の動作が可能であり、多様な動作を行うことができ、歩行動作を円滑に行うことができる。
【００３５】
また、右脚のパラレルリンク機構部２０１ａと左脚のパラレルリンク機構部２０１ｂとがベース部２０２の中央に対してその両側に対称に配設され、且つ、各々のパラレルリンク機構部２０１ａ、２０１ｂが６自由度を有することにより、歩行動作時に下半身モジュール２０１の腰軸、すなわちベース部２０２の中央を通りベース部２０２に直交する軸の軸周方向にモーメントがかからないよう歩行制御を行うことができる。これにより、歩行時にベース部２０２が腰軸の軸周方向に回動することなく、転倒することなく安定した歩行が可能である。
【００３６】
以上のように構成された本実施の形態における２足歩行ロボットの下半身モジュールについて、以下その動作を図を用いて説明する。なお、本実施の形態においては、下半身モジュールの右脚の動作について説明する。左脚の動作については右脚と同様であるので説明を省略する。
【００３７】
右脚を動作させる場合、予め設定された歩行パターンに基づいて右足部２０３の逆運動学を計算し、算出された値に基づいて直動リンク２０５ａ〜２０５ｃ′の各々の図示しないアクチュエータを駆動させ直動リンク２０５ａ〜２０５ｃ′を伸縮させる。直動リンク２０５ａ〜２０５ｃ′とベース部２０２又は右足部２０３との連結部分に配設されているベース部側受動ジョイント２０６ａ〜２０６ｃ′、足部側受動ジョイント２０７ａ〜２０７ｃ、及び回動継手２０８ａ〜２０８ｃは、直動リンク２０５ａ〜２０５ｃ′の伸縮に追従してこれを妨げることなく円滑に従動する。直動リンク２０５ａ〜２０５ｃ′のアクチュエータの駆動は各々に配設されたロータリエンコーダ等の図示しない検出器により検出され、取得された検出値は角度データとしてフィードバックされ直動リンク２０５ａ〜２０５ｃ′はフィードバック制御される。これにより、右足部２０３は、一歩踏み出す動作やその場で足踏みする動作等を行うことができる。更に、このような動作を右足部２０３と左足部２０４で交互に連続して行うことにより、歩行動作を行うことができる。
【００３８】
図３８は本実施の形態における２足歩行ロボット装置の下半身モジュールの斜視図である。
図３８において、２０１ｃは本実施の形態における２足歩行ロボット装置の下半身モジュール、２０２はベース部、２０３は右足部、２０３ａは右足部２０３の上部に固定された平板状の固定板、２０４は左足部、２０４ａは左足部２０４の上部に固定された平板状の固定板、２０９はベース部２０２の上面に配設された制御装置部、２０９′は制御装置部２０９の後部に配設された制御用コンピュータ、２３０はジャイロ、２３１はバッテリ、２３２はモータ駆動用回路部、２３５はベース部２０２と右足部２０３及び左足部２０４の間に各々立設された直動リンク、２３６はベース部２０２の下面側の所定位置に固定されたベース部側受動ジョイント、２３７は右足部２０３及び左足部２０４の固定板２０３ａ、２０４ａの上面側の所定位置に回動自在に固定された足部側受動ジョイントである。
【００３９】
ここで、本実施の形態においては、直動リンク２３５は後述する送り螺子機構により長手方向に伸縮自在に形成されている。送り螺子機構の代わりに油圧、水圧、空気圧等を用いたシリンダや直動型アクチュエータを用いた機構としてもよい。また、直動リンク２３５は、２本を１組として上端部が各々ベース部側受動ジョイント２３６に連結され下端部が１つの足部側受動ジョイント２３７に連結されたＶ字形状に配設されている。１組の直動リンク２３５は、右脚及び左脚に各々３組ずつ、平面視三角形状に配設され、片脚に６本、合計１２本が配設されている。すなわち、本実施の形態における２足歩行ロボット装置の下半身モジュール２０１ｃの左右の脚部は、各々スチュワートプラットフォーム（パラレルメカニズムの一種であり、６本の直動シリンダの両端をボールジョイントとユニバーサルジョイントでベースとエンドエフェクタに結合する構造を有している）により構成されている。これにより、動作の安定性及び強度に優れる。また、１つのベース部側受動ジョイント２３６には１つの直動リンク２３５の上端部が連結され、１つの足部側受動ジョイント２３７には２つの直動リンク２１５の下端部が連結されている。
ジャイロ２３０、バッテリ２３１、モータ駆動用回路部２３２は制御装置部２０９に配設されている。本実施の形態においては、バッテリ２１１としてニッケル水素バッテリを使用した。
また、右足部２０３及び左足部２０４の底面側に、床反力を検出する６軸力覚センサを設けることもできる。６軸力覚センサは、各軸方向の力３成分と各軸周りのモーメント３成分を同時に且つ逐次連続的に高精度で検出することができる。また、６軸力覚センサで検出された値を基にＺＭＰ制御（後述）を行うこともできる。
【００４０】
次に、直動リンクの構造について図を用いて詳細に説明する。
図３９は直動リンクの要部斜視図であり、図４０（ａ）は直動リンクの要部側面図であり、図４０（ｂ）は図４０（ａ）のＡ−Ａ線の要部矢視断面図である。
【００４１】
図３９において、２３５は直動リンク、２４１は後述のモータ、ギアユニット、保持ブレーキ、ロータリエンコーダ等を保持する保持ケーシング、２４２は保持ケーシング２４１から延設された中空状のアウターチューブ部、２４３はアウターチューブ部２４２に挿設され直動リンク２３５の長手方向に摺動するインナーロッド部である。直動リンク２３５の伸縮はインナーロッド部２４３が摺動することにより行われる。２４４はインナーロッド部２４３にその長手方向に形成された雄螺子軸挿通孔、２４５はインナーロッド部２４３の外周に上下に対向してその長手方向に敷設されたロッドレール部、２４６はロッドレール部２４５が嵌合して摺動するレールガイド部である。
【００４２】
図４０において、２４７はインナーロッド部２４３の初期位置を検出する初期位置センサ、２４８はモータ、２４９はモータ２４８の回動軸の回動を所定の回動速度に減速するギアユニット、２５０は非通電時においてモータ２４８の回動軸を固定しインナーロッド部２４３を保持するための保持ブレーキ、２５１はモータ２４８の回動軸の回動を検出するロータリエンコーダ、２５２はギアユニット２４１を介した回動軸と後述の雄螺子軸部を連結するカップリング、２５３は後述の雄螺子軸部を支持するベアリング、２５４はアウターチューブ部２４２の内部にインナーロッド部２４３の雄螺子軸挿通孔２４４に挿通されて配設され外周が螺子切りされた雄螺子軸部、２５５はインナーロッド部２４３のアウターチューブ部２４２の内部側の端部の雄螺子軸挿通孔２４４内に固定され雄螺子軸部２５４に螺合した雌螺子ナット部、２５６ａ、２５６ｂはストッパである。
【００４３】
ここで、本実施の形態においては、保持ケーシング２４１及びアウターチューブ部２４２の材質として、軽量で且つ比較的強度の高いアセタール系プラスチックのジュラコンを用いた。また、初期位置センサ２４７として、フォトマイクロセンサを用いた。
モータ２４８、ギアユニット２４９、保持ブレーキ２５０、ロータリエンコーダ２５１を保持する保持ケーシング２４１に冷却用スリットまたは空冷フィンを形成しモータ２４８を冷却することができる。これにより、モータ２４８の負荷を低減することができる。また、同様の目的で冷却用のファンを系内に配設することもでき、同様の効果を得ることができる。
モータ２４８、ギアユニット２４９、保持ブレーキ２５０、ロータリエンコーダ２５１は、直動リンク２３５のベース部２０２側に配設されたケーシング２４１内に配設されている。これにより、直動リンク２３５における右足部２０３又は左足部２０４側の重量を軽減することができるので、右足部２０３又は左足部２０４を動作させる動力を低減させることができ省力性及び安定性に優れる。
また、本実施の形態においては、雄螺子軸部２５４と雌螺子ナット部２５５を螺合させるために滑り螺子を用いている。これにより、インナーロッド部２４３を高速で摺動させることができ、歩行速度を向上させることができる。なお、雄螺子軸部２５４と雌螺子ナット部２５５の螺合は滑り螺子に限られるものではなく、ボール螺子を用いることもできる。ボール螺子を用いた場合は、螺合部分の摩擦抵抗を低減することができるが、装置が大型化したり、リード角の設定等が制限されたりするため、装置の大きさや必要な可動速度等を考慮して適宜選択されることが好ましい。
【００４４】
図３９や図４０に示すように、モータ２４８が駆動されると、その回動軸が回動しギアユニット２４９により所定の減速比で減速された回動速度により雄螺子軸部２５４が回動する。雄螺子軸部２５４にはインナーロッド部２４３に固定された雌螺子ナット部２５５が螺合している。ここで、インナーロッド部２４３は外周面に設けられたロッドレール部２４５がレールガイド２４６に嵌合しているため、長手方向には摺動するが軸周方向には回動しない。これにより、雄螺子軸部２５４が回動すると、送り螺子機構により雌螺子ナット部２５５を介してインナーロッド部２４３がその長手方向に摺動する。このようにして、直動リンク２３５の伸縮が行われる。
【００４５】
続いて、ベース部側受動ジョイントの構造について図を用いて詳細に説明する。
図４１はベース部側受動ジョイントの要部斜視図である。
図４１において、２０２はベース部、２３５は直動リンク、２３６はベース部側受動ジョイント、２４１は直動リンク２３５の保持ケーシング、２６１はベース部２０２の下部に固定されたコ字形状のベース部側上部継手、２６２はベース部側上部継手２６１の立設された対向辺に架設された上部継手軸、２６３は直動リンク２３５の保持ケーシング２４１側の上端部に固定されたコ字形状のベース部側下部継手、２６４はベース部側下部継手２６３の立設された対向辺に架設されベース部側下部継手２６３を回動自在に軸支する下部継手軸、２６５は上部継手軸２６２と下部継手軸２６４を直交させて連結する連結回動部である。
【００４６】
図４１に示すように、ベース部側下部継手２６３は、ベース部側上部継手２６１に対して、上部継手軸２６２と下部継手軸２６４の軸周方向に回動する。これにより、ベース部側受動ジョイント２３６は、直動リンク２３５の長手方向に直交する上部継手軸２６２と下部継手軸２６４の軸周方向に２自由度を有するので、直動リンク２３５の伸縮に追従してこれを妨げることなく円滑に従動する。
【００４７】
続いて、足部側受動ジョイントの構造について図を用いて詳細に説明する。
図４２は足部側受動ジョイントの要部斜視図である。
図４２において、２０３ａは右足部２０３の固定板、２３５、２３５′は直動リンク、２３７は足部側受動ジョイント、２４３は直動リンク２３５のインナーロッド部、２４３′は直動リンク２３５′のインナーロッド部、２７１はインナーロッド部２４３の下端部に連結されたコ字形状の第１の足側上部継手、２７３はインナーロッド部２４３′の下端部に連結されたコ字形状の第２の足側上部継手、２７５は第１の足側上部継手２７１と第２の足側上部継手２７３の立設された対向辺に架設され第１の足側上部継手２７１と第２の足側上部継手２７３を連結し各々回動自在に軸支する上部継手軸、２７６は後述の足側基部を介して固定板２０３ａに連結されたコ字形状の足側下部継手、２７７は足側下部継手２７６の立設された対向辺に架設された下部継手軸、２７８は固定板２０３ａ上に固定された足側基部、２７９は足側基部２７８に対して足側下部継手２７６を回動自在に軸支する基部軸、２８０は上部継手軸２７５と下部継手軸２７７を直交させて連結する連結回動部である。
【００４８】
図４２に示すように、第１の足側上部継手２７１及び第２の足側下部継手２７３は、足側下部継手２７６に対して、上部継手軸２７５と下部継手軸２７７の軸周方向に回動する。また、足側下部継手２７６は、足側基部２７８に対して、基部軸２７９の軸周方向に回動する。これにより、足部側受動ジョイント２３７は、直動リンク２３５の長手方向に直交する上部継手軸２７５と下部継手軸２７７の軸周方向に２自由度を有すると共に、直動リンク２３５の軸方向の基部軸２７９の軸周方向に１自由度を有するので、直動リンク２３５の伸縮に追従してこれを妨げることなく円滑に従動する。
【００４９】
以上のように構成された本実施の形態における２足歩行ロボット装置の下半身モジュールの歩行動作については、図３７で説明したものと同様であるので説明を省略する。
【００５０】
（２）２足歩行ロボットの制御理論について
次に、２足歩行ロボットの制御理論について、図１〜図４を用いて説明する。
図１は支持多角形を示す説明図であり、図２は座標系とベクトルの定義を示す説明図、図３は逆運動学（回転運動）を示す説明図、図４は逆運動学（並進運動）を示す説明図である。
２足歩行のパターンを生成するにあたり、安定性を判別する必要がある。ここでは、２足歩行ロボット装置に対して力学的視点から安定性を判別するために、「ＺＭＰ安定判別規範」を用いる。以下に、ＺＭＰの説明および安定判別法を述べる。
【００５１】
２足歩行ロボットが歩行中に安定な支持状態を維持するために必要な条件を考える。２足歩行ロボットが安定な支持状態を保てなくなる、つまり転倒するということは、足底部と路面との接点（３点以上）が形成する支持多角形（路面と足底の接地点が形成する面積最大の凸多角形）のある辺または点を通る路面上の直線を軸に回転運動をしていると考えられる。すなわち、支持多角形から見て外向きのモーメントが作用していると考えられる。逆に言えば、支持多角形上の全ての辺および点のまわりに外向きのモーメントが発生せず、内向きのモーメントのみ発生していれば、２足歩行ロボットは安定な支持状態を維持できる。このときの２足歩行ロボットの支持状態を考えると、足底の接地点が浮かないため、全ての接地点において２足歩行ロボットから路面に作用する重力および慣性力による力は路面を押す向きであり、これらの合力が作用する点Ｐ（図１参照）は足底の支持多角形内になければならない。この点Ｐ回りの合力によるモーメントは明らかにゼロであり、この点をＺＭＰ（Ｚｅｒｏ　Ｍｏｍｅｎｔ　Ｐｏｉｎｔ、ゼロモーメントポイント）と呼ぶ。
【００５２】
２足歩行の制御に用いるモーメント補償軌道算出アルゴリズムについて説明する。本アルゴリズムは次の４点からなる。
Ｉ．２足歩行ロボットのモデル化
ＩＩ．ＩのモデルにおけるＺＭＰ方程式の導出
ＩＩＩ．２足歩行ロボット近似モデル化
ＩＶ．ＩＩＩの近似モデルを用いた繰り返し計算によるＩＩを満足するモーメント補償軌道の厳密解の算出
【００５３】
まず２足歩行ロボットのモデル化について説明する。
最初に、２足歩行ロボット、座標系および路面に次の条件を設定する。
▲１▼２足歩行ロボットは質点の集合から成る。
▲２▼路面は十分に硬く、どんな力やモーメントが作用しても変形したり動いたりすることはない。
▲３▼Ｘ軸（２足歩行ロボットの正面方向に一致）およびＹ軸を含む平面が路面に一致し、路面に垂直な軸をＺ軸とする直交座標系Ｏ（右手系）を設定する（図２参照）
▲４▼２足歩行ロボットの足底と路面との接地状況は点接地の集合とする。
▲５▼歩行系と路面との接地点において、路面での回転（Ｘ、ＹおよびＺ軸回り）に対する摩擦係数は無視できるほど小さい。
▲６▼２足歩行ロボットが歩行する際の推進力は、接地点における並進（ＸおよびＹ軸）方向の滑りが生じない範囲とする。
▲７▼体幹の質点は動かないものとする。つまり、腰の質点の軌道と体幹の質点の軌道はＺ軸方向に関しては異なるが、ＸＹ平面に関しては同じ軌道を通るものとする。
▲８▼路面に対してロボットは滑らないものとして、ヨー軸に関しての補償は行わない。
【００５４】
次に、ＺＭＰ方程式の導出について説明する。
以上の仮定と設定のもとに絶対座標系Ｏ−ＸＹＺにおいて任意の点Ｐについてのモーメントの釣り合い式を導出する次式（数１）を得る。
【数１】
2004082223.tif 000003
（数１）において点ＰをＺＭＰとすることで、Ｔ＝０となり、次式（数２）のＺＭＰ方程式を得る。
【数２】
2004082223.tif 000004
さらに、各部の相対運動を考えるために、図２に示す２足歩行ロボットの腰部付近に固定された運動座標系Ｏバー−ＸＹＺバーを設定する。この座標系を用いてＺＭＰ方程式を表すと、次式（数３）を得る。
【数３】
2004082223.tif 000005
このＺＭＰ方程式を満たすように腰部の軌道を算出する。
【００５５】
次に、２足歩行ロボットの近似モデル化について説明する。
本アルゴリズムでは、モーメント補償軌道の近似解の算出とその厳密モデルへの代入、モーメント誤差のフィードバック、蓄積する繰り返し計算により、モーメント補償軌道の厳密解を得ている。その近似モデル化のプロセスは次の通りである。
ｉ）外力は近似モデルでは考慮しない。
ｉｉ）腰、体幹などの下肢以外の部位は２質点近似モデルとする（図２参照）
ｉｉｉ）線形、非干渉化のために運動座標系の回転は考慮しない（ただし体幹ヨー軸に関しては線形、非干渉化できる範囲でその一部を考慮している）。
ｉｖ）Ｚ軸の運動を共有しないものとして線形、非干渉化する。
まず、外力を近似モデルで考慮しないとすると、（数３）は（数４）のようになる。
【数４】
2004082223.tif 000006
ここで、被補償モーメントとなる下肢の運動により発生するモーメントをベクトルＭとおき、２質点近似モデル化を行うと、（数４）は（数５）のようになる。
【数５】
2004082223.tif 000007
（数５）は、運動座標系の回転により発生する見掛けの力の項において互いに干渉している。よって、これらの微分方程式を非干渉なものにするためには、まずその見掛けの力によるモーメントが発生しないものと仮定、つまり運動座標系が回転していないものとすると、（数５）は（数６）、（数７）のようになる。
【数６】
2004082223.tif 000008
【数７】
2004082223.tif 000009
（数６）、（数７）はＺ軸方向の運動を共有し、また下肢と体幹が回転型の間節を介して連結していることから、非線形かつ干渉な系である。そこで、２足歩行ロボットは運動中腰高さ一定と仮定し、線形、非干渉化する。すなわち、（数８）、（数９）、（数１０）が成立する。ここで、（数９）はピッチ軸に関し、（数１０）はロール軸に関する。
【数８】
2004082223.tif 000010
【数９】
2004082223.tif 000011
【数１０】
2004082223.tif 000012
また、（数９）、（数１０）において左辺の既知項を右辺に移動し、（数９）、（数１０）において右辺を改めて（数１１）と置き直すと、次の（数１２）、（数１３）を得る。ここで、（数１２）はピッチ軸に関し、（数１３）はロール軸に関する。
【数１１】
2004082223.tif 000013
【数１２】
2004082223.tif 000014
【数１３】
2004082223.tif 000015
ここで、▲７▼の仮定より（数１４）であるから、（数１２）、（数１３）は（数１５）、（数１６）、（数１７）のように書き換えられる。
【数１４】
2004082223.tif 000016
【数１５】
2004082223.tif 000017
【数１６】
2004082223.tif 000018
【数１７】
2004082223.tif 000019
【００５６】
次に、近似解の算出について説明する。
モーメント補償軌道（数１８）、（数１９）の近似解を求めるために、（数１５）、（数１６）を用いて解析的に近似解を得る。
【数１８】
2004082223.tif 000020
【数１９】
2004082223.tif 000021
ここで、（数１５）において、（数２０）は下肢軌道およびＺＭＰ軌道から算出できるので既知関数となり、さらに定常歩行であるとすれば、２足歩行ロボットの各部質点ならびにＺＭＰは運動座標系Ｏバー−ＸＹＺバーに関して周期的な相対運動をするので、（数２０）は周期関数となる。
【数２０】
2004082223.tif 000022
よって、（数１５）の左辺も同じく周期関数になる。そこで（数１５）の右辺を（数２１）に示すようにフーリエ級数展開する。
【数２１】
2004082223.tif 000023
このときのフーリエ係数は（数２２）のようになる。
【数２２】
2004082223.tif 000024
続いて、（数１８）を係数未知のフーリエ級数で表すと、（数２３）のようになる。
【数２３】
2004082223.tif 000025
（数２３）を（数１５）の左辺に代入し、各両辺のフーリエ係数を比較することで、（数１８）のフーリエ係数を求めると、（数２４）のようになる。
【数２４】
2004082223.tif 000026
そして、これを逆フーリエ級数展開することで、ピッチ軸回りのモーメント補償軌道（数１８）の近似解を（数２５）に示すように得ることができる。
【数２５】
2004082223.tif 000027
【００５７】
次に、スチュワートプラットホームの逆運動学について説明する。
パラレルリンク機構（特にスチュワートプラットホーム型）では、シリアルリンク機構と比較して、非常に逆運動学は容易になる。これは、シリアルリンク機構においては、特別な場合を除いて解析解が存在しないため、解を繰り返し計算による数値解として求める必要があり、計算の量が非常に多くなるためである。また、解析解が存在する場合でも、多くの座標変換があるために計算が複雑になる。以下、逆運動学の解法について述べる。
２足歩行ロボットのパラレルリンク機能は、ベースプレート（２足歩行ロボットの腰）とエンドエフェクタ（２足歩行ロボットの足底）からなる。ここで、シリンダ１本分に注目して考える。
エンドエフェクタ座標系の原点座標を（数２６）、ベースプレート座標系の原点座標を（数２７）とし、シリンダのエンドエフェクタ側の端の座標を（数２８）、ベースプレート側の座標を（数２９）とする（図３参照）。
【数２６】
2004082223.tif 000028
【数２７】
2004082223.tif 000029
【数２８】
2004082223.tif 000030
【数２９】
2004082223.tif 000031
次に、エンドエフェクタおよびベースプレートの各軸回りの回転ベクトル（数３０）、（数３１）を定義する。
【数３０】
2004082223.tif 000032
【数３１】
2004082223.tif 000033
これにより、（数３４）、（数３５）のような回転行列（数３２）、（数３３）を定義することができる。
【数３２】
2004082223.tif 000034
【数３３】
2004082223.tif 000035
【数３４】
2004082223.tif 000036
【数３５】
2004082223.tif 000037
したがって、ベースプレートおよびエンドエフェクタが回転運動した後のシリンダの両端の座標は（数３６）、（数３７）のように表される。
【数３６】
2004082223.tif 000038
【数３７】
2004082223.tif 000039
続いて、エンドエフェクタおよびベースプレートの平行移動量を（数３８）、（数３９）と定義すると、移動後のシリンダの両端の座標は（数４０）、（数４１）のようになる。
【数３８】
2004082223.tif 000040
【数３９】
2004082223.tif 000041
【数４０】
2004082223.tif 000042
【数４１】
2004082223.tif 000043
以上より、シリンダの長さベクトルｌは（数４２）のように容易に求まる。
【数４２】
2004082223.tif 000044
なお、（数４３）に各記号の説明を示す。
【数４３】
2004082223.tif 000045
【００５８】
（３）歩行パターン作成装置と２足歩行ロボット装置の構成について
次に、本実施の形態による歩行パターン作成装置と２足歩行ロボット装置の構成について図５〜図１８を用いてハードウェア構成を説明し、図１９、図３２を用いてソフトウェア構成を説明する。
【００５９】
図５は、本実施の形態による歩行パターン作成装置（歩行パターン作成用コンピュータ）と２足歩行ロボット装置の全体構成を示すブロック図である。
図５において、１は２足歩行ロボット装置としてのロボット部、２は歩行パターンを作成する歩行パターン作成装置としての歩行パターン作成用コンピュータ、３は商用電源（ＡＣ１００Ｖ）が供給される外部電源部、４はロボット部（２足歩行ロボット装置）１の緊急停止等を行うための外部スイッチング＜　部＞　、５はロボット部１を構成する腰部（図３８の２０２と２０９に相当）、６はロボット部１を構成する脚部（下肢）である。図５に示すように、ロボット部１の腰部５と歩行パターン作成コンピュータ２とは無線（たとえば無線ＬＡＮ）を介して接続されている。腰部５には外部電源部３から電源が供給される。ただし、腰部５に内蔵するバッテリを使用しているときは外部電源部３は必要ない。
【００６０】
図６は、主に腰部５を示すブロック図である。
図６において、腰部５は、制御用コンピュータ７（図３８の２０９′に相当）、３軸姿勢角センサ８（図３８の２３０に相当）、モータ制御部９、ブレーキ制御部１０、電源部１１、スイッチ回路１２を有する。制御用コンピュータ７は、外部の歩行パターン作成用コンピュータ２と無線ＬＡＮを介して接続され、また脚部６からのセンサ情報を取得して処理する。また、制御用コンピュータ７は、モータ制御部９にモータの速度指令値（電圧）を出力すると共に、脚部６のシリンダＣ１〜Ｃ１２（後述する）に内蔵のＤＣサーボモータ（後述）のオン・オフ、ブレーキのオン・オフ、ＤＣサーボモータ端子の短絡機能を制御する信号をスイッチ回路１２に出力する。さらに、制御用コンピュータ７は、３軸姿勢角センサ８から、腰部５の傾きおよび方位の情報を取得する。電源部１１は、外部電源部３から電源を供給されるが、バッテリ使用時は必要ない。電源部１１は、脚部６のセンサ、制御用コンピュータ７、３軸姿勢角センサ８、モータ制御部９、ブレーキ制御部１０、スイッチ回路１２に電源を供給する。スイッチ回路１２は、外部スイッチ４および制御用コンピュータ７からの信号を受け取り、排他的論理和（後述する）の論理に基づき、ＤＣサーボモータのオン・オフ、ブレーキのオン・オフ、ＤＣサーボモータ端子の短絡機能を制御する。モータ制御部９は、制御用コンピュータ７からの速度指令値に従い、脚部６のＤＣサーボモータの速度制御を行う。また、スイッチ回路１２からのサーボオン・オフ信号によりＤＣサーボモータのオン・オフを行い、スイッチ回路１２からのモータ端子短絡信号によりＤＣサーボモータ端子の短絡を行う。ブレーキ制御部１０は、スイッチ回路１２からの信号に従い、ブレーキの開閉を行う。
【００６１】
図７は、主に脚部６を示すブロック図である。
図７において、脚部６は、２本の脚部、右脚部１３ａおよび左脚部１３ｂから成る。各脚部１３ａ、１３ｂは、各々６本のアクチュエータシリンダＣ１〜Ｃ６、Ｃ７〜Ｃ１２と、右足底部１４ａ（図３７の２０３に相当）および左足底部１４ｂ（図３７の２０４に相当）とから成る。各シリンダのＤＣサーボモータはモータ制御部９からの電流により制御される。また、ＤＣサーボモータの端子間電圧および電流はモータ制御部９にフィードバックされる。各シリンダＣ１〜Ｃ１２のロータリエンコーダ（後述する）はＤＣサーボモータの回転角度を検出し、制御用コンピュータ７にフィードバックする。各シリンダＣ１〜Ｃ１２のオフセット検出用フォトマイクロセンサは、初期位置を検出し、制御用コンピュータ７に信号を出力する。足底部１４ａ、１４ｂの６軸力覚センサ（後述する）は床反力情報を取得する。これは制御用コンピュータ７に記録される。各シリンダＣ１〜Ｃ１２のセンサ類には、電源部１１より電源が供給される。
【００６２】
図８は、外部電源部３を示すブロック図である。
図８において、外部電源部３はＡＣ／ＤＣコンバータ３１で構成される。ＡＣ／ＤＣコンバータ３１は、商用電源（交流１００Ｖ）を４８Ｖの直流電圧に変換し、ロボット部１の腰部５の電源部１１に供給する。
【００６３】
図９は、歩行パターン作成用コンピュータ２を示すブロック図である。
図９において、歩行パターン作成用コンピュータ２は、ＣＰＵ２１、メモリ２２、ハードディスク２３、入力装置２４、表示装置２５、インタフェース部２６、ＬＡＮカード２７、無線ＬＡＮ２８から成り、歩行パターン作成ソフトウェアによりロボット部１の歩行パターンを作成する。また、無線ＬＡＮ２８により制御用コンピュータ７と通信することができ、歩行パターンを含むロボット制御ソフトウェアを制御用コンピュータ７にロードする。
【００６４】
図１０は、外部スイッチ４を示すブロック図である。
図１０において、外部スイッチ４は、ブレーキ制御スイッチ４１、サーボＯＮスイッチ４２、モータ端子短絡スイッチ４３から成る。各スイッチ４１〜４３の状態はロボット部１の腰部５のスイッチ回路１２に信号として送られ、該当する機能が制御される。ブレーキ制御スイッチ４１は各アクチュエータシリンダＣ１〜Ｃ１２の保持ブレーキをオン・オフする。サーボＯＮスイッチ４２はＤＣサーボドライバ（後述する）のサーボのオン・オフを制御する。モータ端子短絡スイッチ４３はＤＣサーボドライバのモータ端子短絡スイッチを制御する。モータ端子が短絡されると、モータの逆起電力により、モータが回転し難くなる。
【００６５】
図１１は、主に制御用コンピュータ７を示すブロック図である。
図１１において、制御用コンピュータ７は、ＣＰＵ７１、メモリ７２、ハードディスク７３などの基本的な構成要素と、パルスカウンタ７９等に対するインタフェース部７４、ＬＡＮカード７５、無線ＬＡＮ７６、Ｄ／Ａコンバータ７７、６軸力覚センサレシーバボード７８から成る。制御用コンピュータ７は、無線ＬＡＮ７６により、歩行パターン作成用コンピュータ２と通信可能であり、歩行パターン作成用コンピュータ２で作成されハードディスク７３に格納されているロボット制御ソフトウェアをメモリ７２にロードし、実行する。また、制御用コンピュータ７は、ロボット制御ソフトウェアで計算された速度指令値をＤ／Ａコンバータ７７を用いてアナログ電圧に変換してモータ制御部９に出力すると共に、脚部６の各シリンダＣ１〜Ｃ１２のロータリエンコーダから出力されるモータ角度情報をパルスカウンタ７９を介して取得し、これをロボット制御ソフトウェアにフィードバックしてモータの位置制御を行う。さらに、制御用コンピュータ７は、必要に応じてスイッチ回路１２にブレーキ制御信号、サーボＯＮ信号、モータ端子短絡信号を出力することにより、各機能を制御することができる。さらに、制御用コンピュータ７は、３軸姿勢角センサ８より、腰部５の傾きと方位の情報を取得する。制御コンピュータ７内の全ての電源は腰部５の電源部１１から供給される。
【００６６】
図１２は、主に電源部１１を示すブロック図である。
図１２において、電源部１１は、４８Ｖニッケル水素バッテリ１１１（図３８の２３１に相当）、バッテリ／電源切替部１１２、電源スイッチ１１３、４つのＤＣ−ＤＣコンバータ１１４〜１１７から成る。電源部１１には、外部電源部３より供給される電源と、４８Ｖニッケル水素バッテリ１１１により供給される電源とを選択するためのバッテリ／電源切替部１１２が設けられている。ＤＣ−ＤＣコンバータ１１４、１１５は、制御用コンピュータ７および３軸姿勢角センサ８に電源を供給するために用いられ、電圧は５Ｖ、±１２Ｖである。ＤＣ−ＤＣコンバータ１１６は、ブレーキ制御部１０に電源を供給するためのもので、電圧は２４Ｖである。ＤＣ−ＤＣコンバータ１１７は、脚部６のセンサ類、スイッチ回路１２のデジタルＩＣなどのデジタル機器に電源を供給するために用いられ、電圧は５Ｖである。モータ制御部９には、主電源電圧つまりバッテリ１１１または外部電源部３の電圧がそのまま供給される。電源部１１の電源スイッチ１１３をオンにすることによってロボット部１に電源が供給される。
【００６７】
図１３は、主にスイッチ回路１２を示すブロック図である。
図１３において、スイッチ回路１２は、ブレーキ制御部１０を介するブレーキのオン・オフ、モータ制御部９を介するサーボのオン・オフ、モータ制御部９を介するモータ端子短絡の各機能を制御するための論理回路（排他的論理和）１２３、１２１、１２２である。スイッチ回路１２は、制御用コンピュータ７からの信号と外部スイッチ４からの信号との２つを入力し、排他的論理和をとって出力する。つまり、どちらかの入力が変化すると、出力の状態は必ず変化するので、任意の入力の組み合わせにおいてロボット部１を緊急停止させることが可能である。スイッチ回路１２を構成するデジタルＩＣには、腰部５の電源部１１から電源が供給される。
【００６８】
図１４は、主にブレーキ制御部１０を示すブロック図である。
図１４において、ブレーキ制御部１０は、半導体リレー１０１で構成され、スイッチ回路１２からのブレーキオン・オフ信号を入力とし、電源部１１より供給される電流をオン・オフし、脚部６の各シリンダＣ１〜Ｃ１２の保持ブレーキをオン・オフする。ブレーキ制御部１０の制御する上記保持ブレーキは、電流を流した状態で解放状態になり、電流オフ（非通電状態）でブレーキがかかった状態になる。
【００６９】
図１５は、主にモータ制御部９を示すブロック図である。
図１５において、モータ制御部９は１２個のＤＣサーボドライバＤ１〜Ｄ１２で構成され、各ドライバＤ１〜Ｄ１２が脚部６の各シリンダＣ１〜Ｃ１２に対応する。ＤＣサーボドライバＤ１〜Ｄ１２に必要な電源は、腰部５の電源部１１から供給される。ＤＣサーボドライバＤ１〜Ｄ１２は、スイッチ回路１２からの信号（サーボオン・オフ信号）により、サーボをオン・オン＜オフ＞する、サーボオフ時はモータの端子は開放され、フリーな状態になる。また、ＤＣサーボドライバＤ１〜Ｄ１２は、スイッチ回路１２からの信号（モータ端子短絡信号）により、モータの端子を短絡する。モータ端子短絡時は、モータ自身の逆起電力により、モータが回転し難くなる。さらに、ＤＣサーボドライバＤ１〜Ｄ１２は、制御用コンピュータ７からの速度指令値（電圧）を目標値とし、脚部６のシリンダＣ１〜Ｃ１２のモータを速度制御する。さらに、ＤＣサーボドライバＤ１〜Ｄ１２は、モータに電流を供給し、またモータの端子間電圧および電流を取得してフィードバックすることにより、速度制御を可能にしている。
【００７０】
図１６は、主にシリンダＣ１〜Ｃ１２を示すブロック図である。
図１６において、各シリンダＣ１〜Ｃ１２は、ロータリエンコーダ１５１（図４０の２５１に相当）、ＤＣサーボモータ１５２、保持ブレーキ１５３、直動部１５４およびオフセット検出用のフォトマイクロセンサ１５５（図４０の２４７に相当）から構成される。ロータリエンコーダ１５１およびフォトマイクロセンサ１５５には、腰部５の電源部１１から電源が供給される。ＤＣサーボモータ１５２は、モータ制御部９により速度制御される。保持ブレーキ１５３は、ブレーキ制御部１０により制御され、保持ブレーキがオンになると、ＤＣサーボモータ１５２は摩擦力により固定される。ロータリエンコーダ１５１は、ＤＣサーボモータ１５２の相対回転角度を検出し、それに比例した数のパルスを制御用コンピュータ７に送る。フィードバックされた角度データをもとに、制御用コンピュータ７は、ＤＣサーボモータ１５２を位置制御することができる。ＤＣサーボモータ１５２の回転運動は、直動部１５４で直動運動（直線運動）に変換され、左右それぞれ６つのシリンダの直動運動が足底部１４に伝えられる。このときの足底部１４の運動はスチュアートプラットホームの順運動学に従う。なお、歩行パターン作成時には逆運動学を用いる。また、ロータリエンコーダ１５１は、相対的な角度変位のみを検出するセンサであるので、フォトマイクロセンサ１５５を用いて初期位置を検出する。フォトマイクロセンサ１５５は、最もシリンダが縮んだ状態で反応し、シリンダが初期位置にあることを制御用コンピュータ７に知らせる。
【００７１】
図１７は、主に足底部（足部）１４を示すブロック図である。なお、足底部１４は右足底部１４ａと左足底部１４ｂから成る（図７参照）。
図１７において、足底部１４は、足底板１４１と６軸力覚センサ１４２から成る。６本のシリンダＣ１〜Ｃ６の直動運動の結果として、足底板１４１の運動が決定される。立脚時には６軸力覚センサ１４２によって床反力情報を取得し、これを制御用コンピュータ７で処理することにより、実際のＺＭＰの位置を調べることができる。
【００７２】
図１８は、主に直動部１５４を示すブロック図である。
図１８において、直動部１５４は、カップリング１７１（図４０の２５２に相当）、すべりねじ１７２、ナット１７３（図４０の２５５に相当）、リニアガイド１７４から構成される。カップリング１７１は、ＤＣサーボモータ１５２の回転をすべりねじ１７２の軸に伝え、また回転軸の軸心のずれを吸収する。すべりねじ１７２の軸が回転すると、ナット１７３が直動運動（直線運動、直進後退運動）をする。ナット１７３の回転はリニアガイド１７４により抑制されるので、直進後退運動だけを取り出すことができる。直動部１５４の従動側の運動はジョイントを介して足底板１４１に伝えられる。
【００７３】
図１９は、歩行パターン作成用コンピュータ２のＣＰＵ２１における機能実現手段（ソフトウェア構成）を示すブロック図である。
図１９において、２１１は総歩数等の設定データを入力するための設定データ入力手段、２１２は足部（足底部）１４の軌道と腰部５の初期軌道とを設定する軌道設定手段、２１３は設定した足部１４の軌道と腰部５の初期軌道とに基づいて目標ゼロモーメントポイント（目標ＺＭＰ）の軌道を設定する目標ＺＭＰ軌道設定手段、２１４は脚部の運動および腰部の運動による目標ゼロモーメントポイント回りのモーメントを算出する目標ＺＭＰ回りモーメント算出手段、２１５は目標ゼロモーメントポイント回りのモーメント等に対してフーリエ変換を行ってフーリエ係数を算出するフーリエ変換手段、２１６は算出したフーリエ係数に基づいてフーリエ係数を決定するフーリエ係数決定手段、２１７は算出した目標ゼロモーメントポイント回りのモーメント等に基づいて腰部５のモーメント補償軌道を算出するモーメント補償軌道算出手段、２１８は設定した足部１６の軌道と腰部５のモーメント補償軌道とにより各質点の加速度を算出する質点加速度算出手段、２１９は算出された各質点の加速度に基づいて目標ゼロモーメントポイントにおけるエラーモーメントを算出するエラーモーメント算出手段、２２０は算出したエラーモーメントが所定モーメントよりも小さいか否かを判定するエラーモーメント判定手段、２２１は算出したエラーモーメントが所定モーメントよりも小さくなったとき足部１６の軌道と腰部５のモーメント補償軌道とに基づき脚部６の脚を伸縮するシリンダＣ１〜Ｃ１２の伸縮長さを算出するシリンダ長さ導出手段、２２２はシリンダ長さの時系列データを歩行パターンとしてハードディスク２３のファイルに出力するファイル出力手段である。また、目標ＺＭＰ回りモーメント算出手段２１４は、脚部６の運動により生じる目標ＺＭＰ回りモーメントを算出する下肢運動による目標ＺＭＰ回りモーメント算出手段２１４１と、腰部５の運動により生じる目標ＺＭＰ回りの既知のモーメントを算出する腰運動による目標ＺＭＰ回り既知モーメント算出手段２１４２とを有し、フーリエ変換手段２１５は、目標ＺＭＰ回りモーメント算出手段２１４において算出した目標ゼロモーメントポイント回りのモーメントと算出したエラーモーメントとの総和を算出するモーメント総和算出手段２１５１と、その算出した総和に基づいてフーリエ係数を算出するフーリエ算出手段２１５２とを有し、シリンダ長さ導出手段２２１は、足部１６および腰部５における回転ベクトルと回転行列とを算出する回転成分算出手段２２１１と、回転ベクトルと回転行列とに基づいて今回の足部１６と腰部５の座標を算出する足部腰部座標算出手段２２１２と、今回の足部１６と腰部５の座標と前回の足部１６と腰部５の座標とに基づいてシリンダＣ１〜Ｃ１２の伸縮長さを算出するシリンダ長さ算出手段２２１３とを有する。
【００７４】
図３２は、制御用コンピュータ７のＣＰＵ７１における機能実現手段（ソフトウェア構成）を示すブロック図である。
図３２において、７１１は電源部１１を介して電源を投入するための電源投入手段、７１２は歩行パターン作成用コンピュータ２から歩行パターンを無線で受信してハードディスク７３に格納する歩行パターン設定手段、７１３は脚部６の脚を伸縮するシリンダＣ１〜Ｃ１２の初期位置を設定するシリンダ初期位置設定手段、７１４はハードディスク７３に格納した歩行パターンから歩行に使用するパターンを選択して歩行開始を指令する歩行開始命令手段、７１５は使用する歩行パターンに基づいてモータ（ＤＣサーボモータ）を制御するモータ制御手段、７１６は歩行動作の終了か否かを判定する終了判定手段である。
【００７５】
（４）歩行パターン作成動作と２足歩行ロボット装置の制御動作
このように構成された２足歩行ロボット装置について、その動作を図２０〜図３６を用いて説明する。図２０〜図３１は歩行パターン作成用コンピュータ２のＣＰＵ２１の動作（歩行パターン作成動作）を示すフローチャートであり、図３３〜図３６は制御用コンピュータ７のＣＰＵ７１の動作（２足歩行ロボット装置の制御動作）を示すフローチャートである。
まず、図５〜図１９の２足歩行ロボット装置における歩行パターン作成用コンピュータ２による歩行パターン作成動作について、図２０〜図３１を用いて説明する。
【００７６】
図２０は歩行パターン作成の全体動作を示す。
図２０において、まず、設定データ入力手段２１１は、総歩数、足底部１４の位置と姿勢、１相の時間（歩行速度）を設定データとして入力装置２４を介して入力する（Ｓ１）。次に、軌道設定手段２１２は、足部（足底部）１４の軌道と腰部５の初期軌道とを設定し（Ｓ２、軌道設定ステップ）、目標ＺＭＰ軌道設定手段２１３は、設定した足部１４の軌道と腰部５の初期軌道とに基づいて目標ゼロモーメントポイント（目標ＺＭＰ）の軌道を設定する（Ｓ３、目標ＺＭＰ軌道設定ステップ）。目標ＺＭＰ回りモーメント算出手段２１４の下肢運動による目標ＺＭＰ回りモーメント算出手段２１４１は、脚部６の運動により生じる目標ＺＭＰ回りモーメントを算出し（Ｓ４、下肢運動による目標ＺＭＰ回りモーメント算出ステップ）、目標ＺＭＰ回りモーメント算出手段２１４の腰運動による目標ＺＭＰ回り既知モーメント算出手段２１４２は、腰部５の運動により生じる目標ＺＭＰ回りモーメントを算出する（Ｓ５、腰運動による目標ＺＭＰ回り既知モーメント算出ステップ）。フーリエ変換手段２１５のモーメント総和算出手段２１５１は、目標ＺＭＰ回りモーメント算出手段２１４において算出した足部１４と腰部５の運動による目標ゼロモーメントポイント回りのモーメントと算出したエラーモーメント（初期値はゼロ）との総和を算出し（モーメント総和算出ステップ）、フーリエ変換手段２１５のフーリエ係数算出手段２１５２は、その算出した総和に基づいてフーリエ係数を算出し（Ｓ６、フーリエ係数算出ステップ）、フーリエ係数決定手段２１６は、ステップＳ６で算出したフーリエ係数に基づいてフーリエ係数を決定する（Ｓ７、フーリエ係数決定ステップ）。次に、モーメント補償軌道算出手段２１７は、ステップＳ７で決定したフーリエ係数を逆フーリエ変換してモーメント補償軌道を算出し、この算出したモーメント補償軌道に基づいて腰部５の軌道（腰部５のモーメント補償軌道）を設定する（Ｓ８、モーメント補償軌道算出ステップ）。次に、質点加速度算出手段２１８は、設定した足部１４の軌道とステップＳ８で算出した腰部５のモーメント補償軌道とにより各質点の加速度を算出して加速度の時系列データを取得し（Ｓ９、質点加速度算出ステップ）、エラーモーメント算出手段２１９は、算出された各質点の加速度の時系列データに基づいて目標ゼロモーメントポイントにおけるエラーモーメントを算出する（Ｓ１０、エラーモーメント算出ステップ）。次に、エラーモーメント判定手段２２０は、算出したエラーモーメント（ｅＭ）が所定モーメント（εＭ）よりも小さいか否かを判定し（Ｓ１１、エラーモーメント判定ステップ）、所定モーメントよりも大きいと判定したときはエラーモーメント判定手段２２０はフィードバックするエラーモーメントを算出し、その後ステップＳ４へ戻る（Ｓ１２）。ステップＳ１１でエラーモーメントが所定モーメントよりも小さいと判定した場合はシリンダ長さ導出手段２２１の回転成分算出手段２２１１は、足部１４および腰部５における回転ベクトルと回転行列とを算出し、足部腰部座標算出手段２２１２は算出した回転ベクトルと回転行列とに基づいて今回の足部１４と腰部５の座標を算出し、シリンダ長さ算出手段２２１３は、今回の足���１４と腰部５の座標と、前回の足部１４と腰部５の座標とに基づいて、シリンダＣ１〜Ｃ１２の伸縮長さを算出してシリンダ長さの時系列データを取得する（Ｓ１３、シリンダ長さ導出ステップ）。次に、ファイル出力手段２２２は、シリンダ長さの時系列データを歩行パターンとしてハードディスク２３のファイルに出力する（Ｓ１４）。
【００７７】
次に、ステップＳ２に示す軌道設定手段２１２の動作を図２１（ａ）〜（ｃ）を用いて詳細に説明する。図２１（ａ）は足底部１４の軌道と腰部５の初期軌道の設定動作を示し、図２１（ｂ）は一歩分の足底部１４の軌道設定動作を、図２１（ｃ）は一歩分の腰部５の初期軌道設定動作を示す。
【００７８】
まず図２１（ａ）において、ｉをゼロに設定し（Ｓ２１）、ｉが総歩数より小さいか否かを判定する（Ｓ２２）。最初はｉ＜総歩数であるので、ステップＳ２３へ移行し、一歩分の足底部１４の軌道を設定する（一歩分の足底部軌道設定処理）。次に、一歩分の腰部５の初期軌道を設定する（Ｓ２４、一歩分の腰部初期軌道設定処理）。次に、ｉを１だけ増加して（ｉ＝ｉ＋１の演算を行って）ステップＳ２２へ戻る（Ｓ２５）。ステップＳ２２〜Ｓ２５をｉ≧総歩数と成るまで繰り返す。ステップＳ２２でｉ≧総歩数と判定すると、この処理を終了する。
【００７９】
次に、ステップＳ２３の一歩分の足部軌道設定処理について図２１（ｂ）を用いて説明する。
まず一歩の中間点と終点を設定し（Ｓ２３１）、一歩の片立脚期の相数（或る期間を所定時間たとえば３０ｍｓで分割したときの分割数）と全相数とを設定する（Ｓ２３２）。次に、ｉを１に設定し（Ｓ２３３）、ｉが片立脚期の相数以下か否かを判定する（Ｓ２３４）。最初はｉ≦片立脚期の相数であるので、ステップＳ２３５へ移行し、上記中間点と終点に基づいて遊脚（路面から離れている脚）の足底部の位置を６次多項式（６次多項式とするのは、２回微分しても充分になめらかである必要があるからである）で近似して求め、静止している立脚の足底部の位置を設定する（Ｓ２３６）。次に、ｉを１だけ増加して（ｉ＝ｉ＋１の演算を行って）ステップＳ２３４へ戻る（Ｓ２３７）。ステップＳ２３４〜Ｓ２３７をｉ＞片立脚期の相数となるまで繰り返す。ステップＳ２３４でｉ＞片立脚期の相数と判定すると、ステップＳ２３８へ移行し、ｉ≦総歩数か否かを判定し、最初はｉ≦総歩数であるので、次に、静止している両脚の足底部１４の位置を設定する（Ｓ２３９）。次に、ｉを１だけ増加して（ｉ＝ｉ＋１の演算を行って）ステップＳ２３８へ戻る（Ｓ２４０）。ステップＳ２３８〜Ｓ２４０をｉ＞一歩の全相数と成るまで繰り返す。ステップＳ２３８でｉ＞一歩の全相数と判定すると、この処理を終了する。
【００８０】
次に、ステップＳ２４の一歩分の腰部初期軌道設定処理について図２１（ｃ）を用いて説明する。
まずｉを１に設定し（Ｓ２４１）、ｉが一歩の全相数以下か否かを判定する（Ｓ２４２）。最初はｉ≦一歩の全相数であるので、次に、腰部５は一定の高さかつ一定速度で直線的に移動するとして腰の位置を求める（Ｓ２４３）。次に、ｉを１だけ増加して（ｉ＝ｉ＋１の演算を行って）ステップＳ２４２へ戻る（Ｓ２４４）。ステップＳ２４２〜Ｓ２４４をｉ＞一歩の全相数と成るまで繰り返す。ステップＳ２４２でｉ＞一歩の全相数と判定すると、この処理を終了する。
【００８１】
次に、ステップＳ３に示す目標ＺＭＰ軌道設定手段２１３の動作について図２２を用いて説明する。
まず、ｊとｉを１に設定する（Ｓ３１、Ｓ３２）。次に、ｉ≦片立脚期の相数か否かを判定し（Ｓ３３）、最初はｉ≦片立脚期の相数であるので、次に、ＺＭＰの位置を立脚側の足底部１４の中心に設定する（Ｓ３４）。次に、ｉを１だけ増加して（ｉ＝ｉ＋１の演算を行って）ステップＳ３３へ戻る（Ｓ３５）。ステップＳ３３〜Ｓ３５をｉ＞片立脚期の相数と成るまで繰り返す。ステップＳ３３でｉ＞片立脚期の相数と判定すると、次に、ｉ≦一歩の全相数か否かを判定し（Ｓ３６）、最初はｉ≦一歩の全相数であるので、次に、ＺＭＰの位置を２つの足底部１４（右足底部１４ａと左足底部１４ｂ）の中間点に設定する（Ｓ３７）。次に、ｉを１だけ増加してステップＳ３６へ戻る（Ｓ３８）。ステップＳ３６〜Ｓ３８をｉ＞一歩の全相数と成るまで繰り返す。ステップＳ３６でｉ＞一歩の全相数と判定すると、次に、ｊ＜総歩数か否かを判定し（Ｓ３９）、最初はｊ＜総歩数であるので、ｊを１だけ増加してステップＳ３２へ戻る（Ｓ４０）。次に、再びｉを１に設定して、ｊ≧総歩数となるまでステップＳ３２〜Ｓ３８を繰り返す。ｊ≧総歩数と判定すると、この処理を終了する。
【００８２】
次に、ステップＳ４に示す下肢運動ＺＭＰ回りモーメント算出手段２１４１の動作について図２３を用いて説明する。
まずｎを１に、下肢の質点数をＮに設定し（Ｓ４１）、ｎ≦総歩数の全相数か否かを判定する（Ｓ４２）。最初はｎ≦総歩数の全相数であるので、下肢の運動により目標ＺＭＰの回りに生ずるモーメント（ベクトルＭ）を算出する（Ｓ４３）。ステップＳ４３に示すベクトルＭは、（数２）において外力をゼロとした場合のベクトルである。次に、ｎを１だけ増加してステップＳ４２へ戻る（Ｓ４４）。ステップＳ４２でｎ＞総歩数の全相数と判定されるまで、ステップＳ４２〜Ｓ４４を繰り返す。ｎ＞総歩数の全相数と判定すると、この処理を終了する。総歩数の全相数とは例えば１０２４（２の１０乗）である。
【００８３】
次に、ステップＳ５に示す腰運動ＺＭＰ回り既知モーメント算出手段２１４２の動作について図２４を用いて説明する。
まずｎを１に設定し（Ｓ５１）、ｎ≦総歩数の全相数か否かを判定する（Ｓ５２）。最初はｎ≦総歩数の全相数であるので、腰の運動により目標ＺＭＰの回りに生ずる既知モーメント（Ｍｋｙ，Ｍｋｘ）を算出する（Ｓ５３）。ステップＳ５３に示す既知モーメントは、（数６），（数７）において腰部５に関する座標を未知とした場合のモーメントである。（　数６，７　における左辺の既知の項だけを抜き出し，右辺に移項したものです）　次に、ｎを１だけ増加してステップＳ５２へ戻る（Ｓ５４）。ステップＳ５２でｎ＞総歩数の全相数と判定されるまで、ステップＳ５２〜Ｓ５４を繰り返す。ｎ＞総歩数の全相数と判定すると、この処理を終了する。
【００８４】
次に、ステップＳ６に示すフーリエ変換手段２１５の動作について図２５を用いて説明する。
まずモーメント総和算出手段２１５１は、ステップＳ４で求めたベクトルＭとステップＳ５で求めた既知モーメント（ベクトルＭｋ）とエラーモーメント（ベクトルＥ）との総和を求めると共に、総歩数の全相数をＮに設定する（Ｓ６１）。なお、エラーモーメントの初期値はゼロである。次に、フーリエ係数算出手段２１５２は、上記総和をフーリエ変換し（Ｓ６２）、フーリエ係数を算出する（Ｓ６３）。フーリエ変換やフーリエ係数の算出は一般的手法である。
【００８５】
次に、ステップＳ７に示すフーリエ係数決定手段２１６の動作について図２６を用いて説明する。
まずフーリエ係数決定手段２１６は、腰部５のモーメント補償軌道をフーリエ級数で表す（Ｓ７１）。ステップＳ７１のＡｎ，Ｂｎ，Ｃｎ，Ｄｎ（ｎ＝０〜Ｎ−１）はフーリエ係数である。次に、このフーリエ級数を（数１５）、（数１６）に代入してフーリエ係数を比較し（Ｓ７２）、比較結果に基づいてフーリエ係数を決定する（Ｓ７３）。
【００８６】
次に、ステップＳ８に示すモーメント補償軌道算出手段２１７の動作について図２７を用いて説明する。
まずモーメント補償軌道算出手段２１７は、総歩数の全相数をＮに設定し（Ｓ８１）、逆フーリエ変換用のデータ（つまりステップＳ７３で決定したフーリエ係数を元に設定した逆フーリエ変換用のデータ）を設定し（（数２５）参照）（Ｓ８２）、腰部５のモーメント補償軌道を上記逆フーリエ変換用のデータを逆フーリエ変換することにより算出する（Ｓ８３）。次に、ｉを１に設定し（Ｓ８４）、ｉ≦Ｎか否かを判定する（Ｓ８５）。最初はｉ≦Ｎであるので、次に、ステップＳ８３で算出したモーメント補償軌道に基づいて腰部５の軌道を設定する（Ｓ８６）。次に、ｉを１だけ増加する（Ｓ８７）。ステップＳ８５〜Ｓ８７をｉ＞Ｎとなるまで繰り返し、ｉ＞Ｎと判定すると、この処理を終了する。
【００８７】
次に、ステップＳ９に示す質点加速度算出手段２１８の動作について図２８を用いて説明する。
まず質点加速度算出手段２１８は、１相の時間をＴ（たとえば３０ｍｓ）に、ｎを１に、総歩数の全相数をＮに設定し（Ｓ９１、Ｓ９２）、ｎ≦Ｎか否かを判定する（Ｓ９３）。最初はｎ≦Ｎであるので、次に、ｉを１に、質点の相数をＪに設定し（Ｓ９４）、ｉ≦Ｊか否かを判定する（Ｓ９５）。最初はｉ≦Ｊであるので、次に、離散時間における各質点の加速度を計算する（Ｓ９６）。次に、ｉを１だけ増加する（Ｓ９７）。ステップＳ９５〜Ｓ９７をｉ＞Ｊとなるまで繰り返し、ｉ＞Ｊであると判定すると、次にｎを１だけ増加し（Ｓ９８）、ステップＳ９４〜Ｓ９８をｎ＞Ｎとなるまで繰り返し、ｎ＞Ｎであると判定すると、この処理を終了する。
【００８８】
次に、ステップＳ１０に示すエラーモーメント算出手段２１９の動作について図２９を用いて説明する。
まずエラーモーメント算出手段２１９は、ｎを１に設定し（Ｓ１０１）、ｎ≦総歩数の全相数か否かを判定する（Ｓ１０２）。最初はｎ≦総歩数の全相数であるので、次に、ステップＳ４３と同様にしてエラーモーメントを算出し（Ｓ１０３）、ｎを１だけ増加する（Ｓ１０４）。ステップＳ１０２〜Ｓ１０４をｎ＞総歩数の全相数となるまで繰り返す。
【００８９】
次に、ステップＳ１２に示すエラーモーメント判定手段２２０の動作について図３０を用いて説明する。図３０はエラーモーメントの算出方法について説明するものである。
まずエラーモーメント判定手段２２０は、繰り返し回数をｎとし（Ｓ１２１）、ｎが１の場合はエラーモーメントを１回目で算出した値とし（Ｓ１２２、Ｓ１２３）、ｎが２の場合は前回で使用したエラーモーメントに前回で算出したエラーモーメントの半分を加えたものを今回のエラーモーメントとし（Ｓ１２４、Ｓ１２５）、ｎが３以上の場合は同じく前回で使用したエラーモーメントに前回で算出したエラーモーメントの半分を加えたものを今回のエラーモーメントとする（Ｓ１２６）。
【００９０】
次に、ステップＳ１３に示すシリンダ長さ導出手段２２１の動作について図３１を用いて説明する。
まず、ｎを１に設定し（Ｓ１３１）、ｎ≦シリンダの数（ここでは１２個）か否かを判定する（Ｓ１３２）。最初はｎ≦シリンダであるので、次に、ｉを１に設定し（Ｓ１３３）、ｉ≦総歩数の全相数か否かを判定する（Ｓ１３４）。最初はｉ≦総歩数の全相数であるので、ステップＳ１３５へ移行し、ｉ＝１の場合には１相の平行移動距離（ベクトルΔｆｏｏｔ）を０にし（Ｓ１３６、Ｓ１３７）、ｉ＝１でない場合は１相の平行移動距離を足部１４と腰部５の座標から求める（Ｓ１３８、Ｓ１３９）。次に、回転成分算出手段２２１１は、足部１４と腰部５の回転ベクトル（（数３０）、（数３１）参照）と回転行列（（数３２）、（数３３）参照）を求める（Ｓ１４０、Ｓ１４１、回転成分算出ステップ）。次に、足部腰部座標算出手段２２１２は、新たな足部１４と腰部５の座標を求める（（数４０）、（数４１）参照）（Ｓ１４２、足部腰部座標算出ステップ）。次に、シリンダ長さ算出手段２２１３は、シリンダ長さを計算する（（数４２）参照）（Ｓ１４３、シリンダ長さ算出ステップ）。次に、ｉを１だけ増加する（Ｓ１４４）。ステップＳ１３４〜Ｓ１４４をｉ＞総歩数の全相数となるまで繰り返す。また、ステップＳ１３２〜Ｓ１４５をｎ＞シリンダの数となるまで繰り返す。ｎ＞シリンダの数となると、この処理を終了する。
【００９１】
次に、２足歩行ロボット装置の制御動作について、図３２〜図３６を用いて説明する。
まず２足歩行ロボット装置の制御動作の全体動作について図３３を用いて説明する。
図３３において、電源投入手段７１１は電源部１１を介して２足歩行ロボット装置の電源を投入する（ＳＳ１）。次に歩行パターン設定手段７１２は、歩行パターン作成用コンピュータ（歩行パターン作成装置）２から歩行パターンを無線で受信してハードディスク７３に格納し（ＳＳ２、歩行パターン設定ステップ）、シリンダ初期位置設定手段７１３は、脚部６の脚を伸縮するシリンダＣ１〜Ｃ１２の初期位置を設定する（ＳＳ３、シリンダ初期位置設定ステップ）。次に、歩行開始命令手段７１４は、ハードディスク７３に格納した歩行パターンから歩行に使用するパターンを選択して歩行開始を指令し（ＳＳ４、歩行開始命令ステップ）、モータ制御手段７１５は、使用する歩行パターンに基づいてモータ（ＤＣサーボモータ）１５２を制御する（ＳＳ５、モータ制御ステップ）。次に、終了判定手段７１６は、歩行動作の終了か否かを（終了命令が制御用コンピュータ７から出ているか否かを）判定する（ＳＳ６）。
【００９２】
次に、ステップＳＳ２に示す歩行パターン設定手段７１２の動作を図３４を用いて説明する。
図３４において、まず、設定したいパターンの数をＮに、ｊをゼロに設定する（ＳＳ２１）。次に、ｊ＜Ｎか否かを判定する（ＳＳ２２）。最初はｊ＜Ｎであるので、次に、歩行パターン作成用コンピュータ２で作成したデータを制御用コンピュータ７のメモリ７１に記憶する（ＳＳ２３）。次に、ｊを１だけ増加する（ＳＳ２４）。ステップＳＳ２２〜ＳＳ２４をｊ≧Ｎとなるまで繰り返す。ｊ≧Ｎであると判定すると、この処理を終了する。
【００９３】
次に、ステップＳＳ３に示すシリンダ初期位置設定手段７１３の動作を図３５を用いて説明する。
図３５において、まず、Ｄ／Ａコンバータ７７から一定電圧を各モータドライバ（ＤＣサーボドライバ）Ｄ１〜Ｄ１２に出力し、低速かつ一定速度でシリンダＣ１〜Ｃ１２を縮める方向に動かす（ＳＳ３１）。次に、初期位置検出用のセンサ１５５が反応したか否かを判定し（ＳＳ３２）、反応しない場合にはステップＳＳ３１へ戻り、反応した場合には反応したセンサがついているシリンダに位置制御（ＰＩ制御）をかけて固定する（ＳＳ３３）。ステップＳＳ３１〜ＳＳ３３の動作を全てのセンサが反応するまで行う（ＳＳ３４）。全てのセンサが反応したと判定した場合は、全てのシリンダを動かして、２足歩行ロボット装置を歩行パターンに基づく初期位置にする（ＳＳ３５）。
【００９４】
次に、モータ制御について図３６を用いて説明する。
図３６において、制御用コンピュータ７は、歩行パターンが選択され、歩行開始命令が出されると（歩行パターン選択と歩行開始命令とは外部のコンピュータから無線を介して伝えられる。通常は歩行パターン作成用コンピュータ２がこの役割を果たしている）、シリンダ長さのデータを制御周期（約１ｍｓ）毎に補間して出力し（Ｓ１４１）、このシリンダ長さのデータに初期位置の微調整データを加えた加算データをモータの角度変位のデータａに変換する（Ｓ１４２）。モータ角度変位データａはパルスカウンタ７９からの実角度変位データｂと比較点ＣＯＭで比較され、差データ（ａ−ｂ）となる。この差データ（ａ−ｂ）の積分データと比例データとは加算されてモータ回転速度データｃとなり、このデータｃはデジタル電圧に換算されて（Ｓ１４３）、Ｄ／Ａコンバータ７７に出力され、Ｄ／Ａコンバータ７７でアナログ電圧となり、このアナログ電圧はサーボドライバＤ１〜Ｄ１２に入力され、サーボドライバＤ１〜Ｄ１２は上記アナログ電圧によりＤＣサーボモータ１５２を回転駆動する。ＤＣサーボモータ１５２の回転変位（角度変位）はロータリエンコーダ１５１でパルス数として検出され、このパルス数はパルスカウンタ７９で計数されて比較点ＣＯＭへフィードバックされる。
【００９５】
以上のように本実施の形態によれば、足部１４において目標ゼロモーメントポイントを設定し、設定した目標ゼロモーメントポイントに応じて腰部５のモーメント補償軌道を算出することにより、２足歩行ロボット装置の腰部５のモーメント補償軌道により足部１４の目標ゼロモーメントポイントにおけるモーメントをゼロに近づけて歩行を安定化することができる。
【００９６】
また、足部１４の軌道と腰部５の初期軌道を設定する軌道設定手段２１２と、設定した足部１４の軌道と腰部５の初期軌道とに基づいて目標ゼロモーメントポイントの軌道を設定する目標ＺＭＰ軌道設定手段２１３と、脚部６の運動および腰部５の運動による目標ゼロモーメントポイント回りのモーメントを算出する目標ＺＭＰ回りモーメント算出手段２１４と、算出した目標ゼロモーメントポイント回りのモーメントに基づいて腰部５のモーメント補償軌道を算出するモーメント補償軌道算出手段２１７と、設定した足部１４の軌道と腰部５のモーメント補償軌道とにより算出された各質点の加速度に基づいて目標ゼロモーメントポイントにおけるエラーモーメントを算出するエラーモーメント算出手段２１９と、算出したエラーモーメントが所定モーメントよりも小さくなったとき足部１４の軌道と腰部５のモーメント補償軌道とに基づき脚部６の脚を伸縮するシリンダＣ１〜Ｃ１２の伸縮長さを算出するシリンダ長さ導出手段２２１とを有することにより、脚部６の運動および腰部５の運動による目標ゼロモーメントポイント回りのモーメントがゼロの近傍か否かをエラーモーメントにより判定することができ、歩行パターンの設定において目標ゼロモーメントポイント回りのモーメントを限り無くゼロに近づけることができるので、安定性の極めて高い２足歩行を２足歩行ロボット装置に行わせることができる。
【００９７】
さらに、目標ＺＭＰ回りモーメント算出手段２１４において算出した目標ゼロモーメントポイント回りのモーメントと算出したエラーモーメントとの総和に基づいてフーリエ係数を算出するフーリエ変換手段２１５と、算出したフーリエ係数に基づいてモーメント補償軌道の近似解を求めるためのフーリエ係数を決定するフーリエ係数決定手段２１６とを備え、モーメント補償軌道算出手段２１７は、決定したフーリエ係数に基づく逆フーリエ変換により腰部５のモーメント補償軌道を算出することにより、腰部５のモーメント補償軌道を正確に算出することができるので、目標ゼロモーメントポイント回りのモーメントを迅速にゼロに近づけることができる。
【００９８】
さらに、目標ＺＭＰ回りモーメント算出手段２１４は、脚部運動により生じる目標ＺＭＰ回りモーメントを算出する下肢運動による目標ＺＭＰ回りモーメント算出手段２１４１と、腰部５の運動により生じる目標ＺＭＰ回りの既知のモーメントを算出する腰運動による目標ＺＭＰ回り既知モーメント算出手段２１４２とを有することにより、脚部６の運動および腰部５の運動による目標ゼロモーメントポイント回りのモーメントを正確に算出することができるので、腰部５のモーメント補償軌道を正確に算出することができる。
【００９９】
さらに、シリンダ長さ導出手段２２１は、足部１４および腰部５における回転ベクトルと回転行列とを算出する回転成分算出手段２２１１と、回転ベクトルと回転行列とに基づいて今回の足部１４と腰部５の座標を算出する足部腰部座標算出手段２２１２と、今回の足部１４と腰部５の座標と前回の足部１４と腰部５の座標とに基づいてシリンダＣ１〜Ｃ１２の伸縮長さを算出するシリンダ長さ算出手段２２１３とを有することにより、足部１４および腰部５の移動に必要なシリンダＣ１〜Ｃ１２の伸縮長さを正確に算出することができるので、安定性が高くかつ正確な歩行を行うことができる。
【０１００】
さらに、足部１４を備えた脚部６と腰部５とから成り、腰部５は全体を制御する制御用コンピュータ７を有し、上記歩行パターン作成装置において作成された歩行パターンに基づいて２足歩行を行う２足歩行ロボット装置であって、制御用コンピュータ７は、歩行パターン作成装置２と無線通信を行って歩行パターンを受信することにより、腰部５のモーメント補償軌道により足部１４の目標ゼロモーメントポイントにおけるモーメントをゼロに近づけて歩行を安定化することができると共に歩行パターンを無線を介して遠隔地でも受信することができ、また、腰部に種々の上体（体幹）を取り付け可能とすれば、種々の用途（たとえば救助、介護等）に適合する２足歩行ロボットを迅速に構築することができる。
【０１０１】
さらに、制御コンピュータ７は、歩行パターン作成用コンピュータ２から歩行パターンを無線で受信してメモリ７１に格納する歩行パターン設定手段７１２と、格納した歩行パターンから歩行に使用するパターンを選択して歩行開始を指令する歩行開始命令手段７１４とを有することにより、歩行状態においてロボット部１は歩行パターン作成用コンピュータ２から物理的な拘束を受けることなく高安定な歩行を行うことができ、また、周囲または自己の状態（たとえば搭載重量の軽重状態）に応じた適切な歩行パターンで歩行することができる。
【０１０２】
さらに、制御コンピュータ７は、脚部６の脚を伸縮するシリンダＣ１〜Ｃ１２の初期位置を設定するシリンダ初期位置設定手段７１３を備えたことにより、シリンダＣ１〜Ｃ１２の初期位置を歩行パターンにおける初期位置に合致させることができるので、円滑に歩行を開始することができる。
【０１０３】
さらに、コンピュータに図２０〜図３１に記載の歩行パターン作成方法、図３３〜図３６に記載の２足歩行ロボット装置の制御方法の各ステップを実行させるためのプログラムを用意すれば、上記歩行パターン作成方法、上記２足歩行ロボット装置の制御方法を任意の場所で任意の時間に汎用コンピュータに実行させることができる。
【０１０４】
さらに、コンピュータに図２０〜図３１に記載の歩行パターン作成方法、図３３〜図３６に記載の２足歩行ロボット装置の制御方法の各ステップを実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体を用意すれば、汎用コンピュータで記録媒体を読み取ることにより、上記歩行パターン作成方法、上記２足歩行ロボット装置の制御方法を任意の場所で任意の時間に実行させることができる。
【０１０５】
【発明の効果】
以上説明したように本発明の請求項１に記載の歩行パターン作成装置によれば、足部を備えた脚部と腰部とから成る２足歩行ロボット装置の歩行パターンを作成する歩行パターン作成装置であって、足部において目標ゼロモーメントポイントを設定し、設定した目標ゼロモーメントポイントに応じて腰部のモーメント補償軌道を算出することにより、２足歩行ロボット装置の腰部のモーメント補償軌道により足部の目標ゼロモーメントポイントにおけるモーメントをゼロに近づけて歩行を安定化することができるという有利な効果が得られる。
【０１０６】
請求項２に記載の歩行パターン作成装置によれば、請求項１に記載の歩行パターン作成装置において、足部の軌道と腰部の初期軌道を設定する軌道設定手段と、設定した足部の軌道と腰部の初期軌道とに基づいて目標ゼロモーメントポイントの軌道を設定する目標ＺＭＰ軌道設定手段と、脚部の運動および腰部の運動による目標ゼロモーメントポイント回りのモーメントを算出する目標ＺＭＰ回りモーメント算出手段と、算出した目標ゼロモーメントポイント回りのモーメントに基づいて腰部のモーメント補償軌道を算出するモーメント補償軌道算出手段と、設定した足部の軌道と腰部のモーメント補償軌道とにより算出された各質点の加速度に基づいて目標ゼロモーメントポイントにおけるエラーモーメントを算出するエラーモーメント算出手段と、算出したエラーモーメントが所定モーメントよりも小さくなったとき足部の軌道と腰部のモーメント補償軌道とに基づき脚部の脚を伸縮するシリンダの伸縮長さを算出するシリンダ長さ導出手段とを有することにより、脚部の運動および腰部の運動による目標ゼロモーメントポイント回りのモーメントがゼロの近傍か否かをエラーモーメントにより判定することができ、歩行パターンの設定において目標ゼロモーメントポイント回りのモーメントを限り無くゼロに近づけることができるので、安定性の極めて高い２足歩行を２足歩行ロボット装置に行わせることができるという有利な効果が得られる。
【０１０７】
請求項３に記載の歩行パターン作成装置によれば、請求項２に記載の歩行パターン作成装置において、目標ＺＭＰ回りモーメント算出手段において算出した目標ゼロモーメントポイント回りのモーメントと算出したエラーモーメントとの総和に基づいてフーリエ係数を算出するフーリエ変換手段と、算出したフーリエ係数に基づいてモーメント補償軌道の近似解を求めるためのフーリエ係数を決定するフーリエ係数決定手段とを備え、モーメント補償軌道算出手段は、決定したフーリエ係数に基づく逆フーリエ変換により腰部のモーメント補償軌道を算出することにより、腰部のモーメント補償軌道を正確に算出することができるので、目標ゼロモーメントポイント回りのモーメントを迅速にゼロに近づけることができるという有利な効果が得られる。
【０１０８】
請求項４に記載の歩行パターン作成装置によれば、請求項２または３に記載の歩行パターン作成装置において、目標ＺＭＰ回りモーメント算出手段は、脚部運動により生じる目標ＺＭＰ回りモーメントを算出する下肢運動による目標ＺＭＰ回りモーメント算出手段と、腰部の運動により生じる目標ＺＭＰ回りの既知のモーメントを算出する腰運動による目標ＺＭＰ回り既知モーメント算出手段とを有することにより、脚部の運動および腰部の運動による目標ゼロモーメントポイント回りのモーメントを正確に算出することができるので、腰部のモーメント補償軌道を正確に算出することができるという有利な効果が得られる。
【０１０９】
請求項５に記載の歩行パターン作成装置によれば、請求項２乃至４のいずれか１に記載の歩行パターン作成装置において、シリンダ長さ導出手段は、足部および腰部における回転ベクトルと回転行列とを算出する回転成分算出手段と、回転ベクトルと回転行列とに基づいて今回の足部と腰部の座標を算出する足部腰部座標算出手段と、今回の足部と腰部の座標と前回の足部と腰部の座標とに基づいてシリンダの伸縮長さを算出するシリンダ長さ算出手段とを有することにより、足部および腰部の移動に必要なシリンダの伸縮長さを正確に算出することができるので、安定性が高くかつ正確な歩行を行うことができるという有利な効果が得られる。
【０１１０】
請求項６に記載の２足歩行ロボット装置によれば、足部を備えた脚部と腰部とから成り、腰部は全体を制御する制御用コンピュータを有し、請求項１乃至４のいずれか１に記載の歩行パターン作成装置において作成された歩行パターンに基づいて２足歩行を行う２足歩行ロボット装置であって、制御用コンピュータは、歩行パターン作成装置と無線通信を行って歩行パターンを受信することにより、腰部のモーメント補償軌道により足部の目標ゼロモーメントポイントにおけるモーメントをゼロに近づけて歩行を安定化することができると共に歩行パターンを無線を介して遠隔地でも受信することができ、また、腰部に種々の上体（体幹）を取り付け可能とすれば、種々の用途（たとえば救助、介護等）に適合する２足歩行ロボットを迅速に構築することができるという有利な効果が得られる。
【０１１１】
請求項７に記載の２足歩行ロボット装置によれば、請求項６に記載の２足歩行ロボット装置において、制御コンピュータは、歩行パターン作成用コンピュータから歩行パターンを無線で受信してメモリに格納する歩行パターン設定手段と、格納した歩行パターンから歩行に使用するパターンを選択して歩行開始を指令する歩行開始命令手段とを有することにより、歩行状態においてロボット部は歩行パターン作成用コンピュータから物理的な拘束を受けることなく高安定な歩行を行うことができ、また、周囲または自己の状態（たとえば搭載重量の軽重状態）に応じた適切な歩行パターンで歩行することができるという有利な効果が得られる。
【０１１２】
請求項８に記載の２足歩行ロボット装置によれば、請求項７に記載の２足歩行ロボット装置において、制御コンピュータは、脚部の脚を伸縮するシリンダの初期位置を設定するシリンダ初期位置設定手段を備えたことにより、シリンダの初期位置を歩行パターンにおける初期位置に合致させることができるので、円滑に歩行を開始することができるという有利な効果が得られる。
【０１１３】
請求項９に記載の歩行パターン作成方法によれば、足部を備えた脚部と腰部とから成る２足歩行ロボット装置の歩行パターンを作成する歩行パターン作成方法であって、足部において目標ゼロモーメントポイントを設定し、設定した目標ゼロモーメントポイントに応じて腰部のモーメント補償軌道を算出することにより、２足歩行ロボット装置の腰部のモーメント補償軌道により足部の目標ゼロモーメントポイントにおけるモーメントをゼロに近づけて歩行を安定化することができるという有利な効果が得られる。
【０１１４】
請求項１０に記載の歩行パターン作成方法によれば、請求項９に記載の歩行パターン作成方法において、足部の軌道と腰部の初期軌道を設定する軌道設定ステップと、設定した足部の軌道と腰部の初期軌道とに基づいて目標ゼロモーメントポイントの軌道を設定する目標ＺＭＰ軌道設定ステップと、脚部の運動および腰部の運動による目標ゼロモーメントポイント回りのモーメントを算出する目標ＺＭＰ回りモーメント算出ステップと、算出した目標ゼロモーメントポイント回りのモーメントに基づいて腰部のモーメント補償軌道を算出するモーメント補償軌道算出ステップと、設定した足部の軌道と腰部のモーメント補償軌道とにより算出された各質点の加速度に基づいて目標ゼロモーメントポイントにおけるエラーモーメントを算出するエラーモーメント算出ステップと、算出したエラーモーメントが所定モーメントよりも小さくなったとき足部の軌道と腰部のモーメント補償軌道とに基づき脚部の脚を伸縮するシリンダの伸縮長さを算出するシリンダ長さ導出ステップとを有することにより、脚部の運動および腰部の運動による目標ゼロモーメントポイント回りのモーメントがゼロの近傍か否かをエラーモーメントにより判定することができ、歩行パターンの設定において目標ゼロモーメントポイント回りのモーメントを限り無くゼロに近づけることができるので、安定性の極めて高い２足歩行を２足歩行ロボット装置に行わせることができるという有利な効果が得られる。
【０１１５】
請求項１１に記載の歩行パターン作成方法によれば、請求項１０に記載の歩行パターン作成方法において、目標ＺＭＰ回りモーメント算出ステップにおいて算出した目標ゼロモーメントポイント回りのモーメントと算出したエラーモーメントとの総和に基づいてフーリエ係数を算出するフーリエ変換ステップと、算出したフーリエ係数に基づいてモーメント補償軌道の近似解を求めるためのフーリエ係数を決定するフーリエ係数決定ステップとを備え、モーメント補償軌道算出ステップにおいては、決定したフーリエ係数に基づく逆フーリエ変換により腰部のモーメント補償軌道を算出することにより、腰部のモーメント補償軌道を正確に算出することができるので、目標ゼロモーメントポイント回りのモーメントを迅速にゼロに近づけることができるという有利な効果が得られる。
【０１１６】
請求項１２に記載の歩行パターン作成方法によれば、請求項１０または１１に記載の歩行パターン作成方法において、目標ＺＭＰ回りモーメント算出ステップは、脚部運動により生じる目標ＺＭＰ回りモーメントを算出する下肢運動による目標ＺＭＰ回りモーメント算出ステップと、腰部の運動により生じる目標ＺＭＰ回りの既知のモーメントを算出する腰運動による目標ＺＭＰ回り既知モーメント算出ステップとを有することにより、脚部の運動および腰部の運動による目標ゼロモーメントポイント回りのモーメントを正確に算出することができるので、腰部のモーメント補償軌道を正確に算出することができるという有利な効果が得られる。
【０１１７】
請求項１３に記載の歩行パターン作成方法によれば、請求項１０乃至１２のいずれか１に記載の歩行パターン作成方法において、シリンダ長さ導出ステップは、足部および腰部における回転ベクトルと回転行列とを算出する回転成分算出ステップと、回転ベクトルと回転行列とに基づいて今回の足部と腰部の座標を算出する足部腰部座標算出ステップと、今回の足部と腰部の座標と前回の足部と腰部の座標とに基づいてシリンダの伸縮長さを算出するシリンダ長さ算出ステップとを有することにより、足部および腰部の移動に必要なシリンダの伸縮長さを正確に算出することができるので、安定性が高くかつ正確な歩行を行うことができるという有利な効果が得られる。
【０１１８】
請求項１４に記載の２足歩行ロボット装置の制御方法によれば、足部を備えた脚部と腰部とから成り、腰部は全体を制御する制御用コンピュータを有し、請求項１乃至５のいずれか１に記載の歩行パターン作成装置において作成された歩行パターンに基づいて２足歩行を行う２足歩行ロボット装置の制御方法であって、歩行パターン作成装置と無線通信を行って歩行パターンを受信することにより、腰部のモーメント補償軌道により足部の目標ゼロモーメントポイントにおけるモーメントをゼロに近づけて歩行を安定化することができると共に歩行パターンを無線を介して遠隔地でも受信することができ、また、腰部に種々の上体（体幹）を取り付け可能とすれば、種々の用途（たとえば救助、介護等）に適合する２足歩行ロボットを迅速に構築することができるという有利な効果が得られる。
【０１１９】
請求項１５に記載の２足歩行ロボット装置の制御方法によれば、請求項１４に記載の２足歩行ロボット装置の制御方法において、歩行パターン作成用コンピュータから歩行パターンを無線で受信してメモリに格納する歩行パターン設定ステップと、格納した歩行パターンから歩行に使用するパターンを選択して歩行開始を指令する歩行開始命令ステップとを有することにより、歩行状態においてロボット部は歩行パターン作成用コンピュータから物理的な拘束を受けることなく高安定な歩行を行うことができ、また、周囲または自己の状態（たとえば搭載重量の軽重状態）に応じた適切な歩行パターンで歩行することができるという有利な効果が得られる。
【０１２０】
請求項１６に記載の２足歩行ロボット装置の制御方法によれば、請求項１５に記載の２足歩行ロボット装置の制御方法において、脚部の脚を伸縮するシリンダの初期位置を設定するシリンダ初期位置設定ステップを備えたことにより、シリンダの初期位置を歩行パターンにおける初期位置に合致させることができるので、円滑に歩行を開始することができるという有利な効果が得られる。
【０１２１】
請求項１７に記載のプログラムによれば、コンピュータに請求項１０乃至１３のいずれか１に記載の歩行パターン作成方法の各ステップを実行させるためのプログラムであることにより、請求項１０乃至１３のいずれか１に記載の歩行パターン作成方法を任意の場所で任意の時間に汎用コンピュータに実行させることができるという有利な効果が得られる。
【０１２２】
請求項１８に記載の記録媒体によれば、コンピュータに請求項１０乃至１３のいずれか１に記載の歩行パターン作成方法の各ステップを実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であることにより、汎用コンピュータで記録媒体を読み取りさえすれば、請求項１０乃至１３のいずれか１に記載の歩行パターン作成方法を任意の場所で任意の時間に実行させることができるという有利な効果が得られる。
【０１２３】
請求項１９に記載のプログラムによれば、コンピュータに請求項１５または１６に記載の２足歩行ロボット装置の制御方法の各ステップを実行させるためのプログラムであることにより、請求項１５または１６に記載の２足歩行ロボット装置の制御方法を任意の場所で任意の時間に汎用コンピュータに実行させることができるという有利な効果が得られる。
【０１２４】
請求項２０に記載の記録媒体によれば、コンピュータに請求項１５または１６に記載の２足歩行ロボット装置の制御方法の各ステップを実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であることにより、汎用コンピュータで記録媒体を読み取りさえすれば、請求項１５または１６に記載の２足歩行ロボット装置の制御方法を任意の場所で任意の時間に汎用コンピュータに実行させることができるという有利な効果が得られる。
【図面の簡単な説明】
【図１】支持多角形を示す説明図
【図２】座標系とベクトルの定義を示す説明図
【図３】逆運動学（回転運動）を示す説明図
【図４】逆運動学（並進運動）を示す説明図
【図５】本発明の実施の形態１による歩行パターン作成装置と２足歩行ロボット装置の全体構成を示すブロック図
【図６】主に腰部を示すブロック図
【図７】主に脚部を示すブロック図
【図８】外部電源部を示すブロック図
【図９】歩行パターン作成用コンピュータを示すブロック図
【図１０】外部スイッチを示すブロック図
【図１１】主に制御用コンピュータを示すブロック図
【図１２】主に電源部を示すブロック図
【図１３】主にスイッチ回路を示すブロック図
【図１４】主にブレーキ制御部を示すブロック図
【図１５】主にモータ制御部を示すブロック図
【図１６】主にシリンダを示すブロック図
【図１７】主に足底部（脚部）を示すブロック図
【図１８】主に直動部を示すブロック図
【図１９】歩行パターン作成用コンピュータのＣＰＵにおける機能実現手段を示すブロック図
【図２０】歩行パターン作成用コンピュータのＣＰＵ動作を示すフローチャート
【図２１】（ａ）歩行パターン作成用コンピュータのＣＰＵ動作を示すフローチャート
（ｂ）歩行パターン作成用コンピュータのＣＰＵ動作を示すフローチャート
（ｃ）歩行パターン作成用コンピュータのＣＰＵ動作を示すフローチャート
【図２２】歩行パターン作成用コンピュータのＣＰＵ動作を示すフローチャート
【図２３】歩行パターン作成用コンピュータのＣＰＵ動作を示すフローチャート
【図２４】歩行パターン作成用コンピュータのＣＰＵ動作を示すフローチャート
【図２５】歩行パターン作成用コンピュータのＣＰＵ動作を示すフローチャート
【図２６】歩行パターン作成用コンピュータのＣＰＵ動作を示すフローチャート
【図２７】歩行パターン作成用コンピュータのＣＰＵ動作を示すフローチャート
【図２８】歩行パターン作成用コンピュータのＣＰＵ動作を示すフローチャート
【図２９】歩行パターン作成用コンピュータのＣＰＵ動作を示すフローチャート
【図３０】歩行パターン作成用コンピュータのＣＰＵ動作を示すフローチャート
【図３１】歩行パターン作成用コンピュータのＣＰＵ動作を示すフローチャート
【図３２】制御用コンピュータのＣＰＵにおける機能実現手段を示すブロック図
【図３３】制御用コンピュータのＣＰＵ動作を示すフローチャート
【図３４】制御用コンピュータのＣＰＵ動作を示すフローチャート
【図３５】制御用コンピュータのＣＰＵ動作を示すフローチャート
【図３６】制御用コンピュータのＣＰＵ動作を示すフローチャート
【図３７】（ａ）実施の形態１による２足歩行ロボットの下半身モジュールの模式斜視図
（ｂ）実施の形態１による２足歩行ロボットの下半身モジュールの模式平面図
【図３８】２足歩行ロボットの下半身モジュールの斜視図
【図３９】直動リンクの要部斜視図
【図４０】（ａ）直動リンクの要部側面図
（ｂ）図４（ａ）のＡ−Ａ線の要部矢視断面図
【図４１】ベース部側受動ジョイントの要部斜視図
【図４２】足部側受動ジョイントの要部斜視図
【符号の説明】
１　ロボット部（２足歩行ロボット装置）
２　歩行パターン作成用コンピュータ（歩行パターン作成装置）
３　外部電源部
４　外部スイッチ
５　腰部
６　脚部
７　制御用コンピュータ
８　３軸姿勢角センサ
９　モータ制御部
１０　ブレーキ制御部
１１　電源部
１２　スイッチ回路
１３ａ　右脚部
１３ｂ　左脚部
１４　足底部（足部）
１４ａ　右足底部（右足部）
１４ｂ　左足底部（左足部）
２１、７１　ＣＰＵ
２２、７２　メモリ
２３、７３　ハードディスク
２４　入力装置
２５　表示装置
２６、７４　インタフェース部
２７、７５　ＬＡＮカード
２８、７６　無線ＬＡＮ
３１　ＡＣ／ＤＣコンバータ
４１　ブレーキ制御スイッチ
４２　サーボＯＮスイッチ
４３　モータ端子短絡スイッチ
７７　Ｄ／Ａコンバータ
７８　６軸力覚センサレシーバボード
７９　パルスカウンタ
１０１　半導体リレー
１１１　４８Ｖニッケル水素バッテリ
１１２　バッテリ／電源切替部
１１３　電源スイッチ
１１４、１１５、１１６、１１７　ＤＣ−ＤＣコンバータ
１２１、１２２、１２３　排他的論理和
１４１　足底板
１４２　６軸力覚センサ
１５１　ロータリエンコーダ
１５２　ＤＣサーボモータ
１５３　保持ブレーキ
１５４　直動部
１５５　フォトマイクロセンサ
１７１　カップリング
１７２　すべりねじ
１７３　ナット
１７４　リニアガイド
Ｃ１〜Ｃ１２　シリンダ
Ｄ１〜Ｄ１２　ＤＣサーボドライバ
２０１、２０１ｃ　２足歩行ロボットの下半身モジュール
２０２　ベース部
３０３　右足部
２０３ａ　固定板
２０４　左足部
２０４ａ　固定板
２０５、２０５′、２０５ａ、２０５ａ′、２０５ｂ、２０５ｂ′、２０５ｃ、２０５ｃ′　直動リンク
２０６、２０６ａ、２０６ａ′、２０６ｂ、２０６ｂ′、２０６ｃ、２０６ｃ′　ベース部側受動ジョイント
２０７、２０７ａ、２０７ｂ、２０７ｃ　足部側受動ジョイント
２０８、２０８ａ、２０８ｂ、２０８ｃ　回動受動ジョイント
２０９　制御装置部
２０９′　制御用コンピュータ
２１１　設定データ入力手段
２１２　軌道設定手段
２１３　目標ＺＭＰ軌道設定手段
２１４　目標ＺＭＰ回りモーメント算出手段
２１５　フーリエ変換手段
２１６　フーリエ係数決定手段
２１７　モーメント補償軌道算出手段
２１８　質点加速度算出手段
２１９　エラーモーメント算出手段
２２０　エラーモーメント判定手段
２２１　シリンダ長さ導出手段
２２２　ファイル出力手段
２３０　ジャイロ
２３１　バッテリ
２３２　モータ駆動用回路部
２３５　直動リンク
２３６　ベース部側受動ジョイント
２３７　足部側受動ジョイント
２４１　保持ケーシング
２４２　アウターチューブ部
２４３、２４３′　インナーロッド部
２４４　雄螺子軸挿通孔
７１１　電源投入手段
７１２　歩行パターン設定手段
７１３　シリンダ初期位置設定手段
７１４　歩行開始命令手段
７１５　モータ制御手段
７１６　終了判定手段
２１４１　下肢運動による目標ＺＭＰ回りモーメント算出手段
２１４２　腰運動による目標ＺＭＰ回り既知モーメント算出手段
２２１１　回転成分算出手段
２２１２　足部腰部座標算出手段
２２１３　シリンダ長さ算出手段
【図１】
2004082223.tif 000046
【図２】
2004082223.tif 000047
【図３】
2004082223.tif 000048
【図４】
2004082223.tif 000049
【図５】
2004082223.tif 000050
【図６】
2004082223.tif 000051
【図７】
2004082223.tif 000052
【図８】
2004082223.tif 000053
【図９】
2004082223.tif 000054
【図１０】
2004082223.tif 000055
【図１１】
2004082223.tif 000056
【図１２】
2004082223.tif 000057
【図１３】
2004082223.tif 000058
【図１４】
2004082223.tif 000059
【図１５】
2004082223.tif 000060
【図１６】
2004082223.tif 000061
【図１７】
2004082223.tif 000062
【図１８】
2004082223.tif 000063
【図１９】
2004082223.tif 000064
【図２０】
2004082223.tif 000065
【図２１】
2004082223.tif 000066
【図２２】
2004082223.tif 000067
【図２３】
2004082223.tif 000068
【図２４】
2004082223.tif 000069
【図２５】
2004082223.tif 000070
【図２６】
2004082223.tif 000071
【図２７】
2004082223.tif 000072
【図２８】
2004082223.tif 000073
【図２９】
2004082223.tif 000074
【図３０】
2004082223.tif 000075
【図３１】
2004082223.tif 000076
【図３２】
2004082223.tif 000077
【図３３】
2004082223.tif 000078
【図３４】
2004082223.tif 000079
【図３５】
2004082223.tif 000080
【図３６】
2004082223.tif 000081
【図３７】
2004082223.tif 000082
【図３８】
2004082223.tif 000083
【図３９】
2004082223.tif 000084
【図４０】
2004082223.tif 000085
【図４１】
2004082223.tif 000086
【図４２】
2004082223.tif 000087