(57)【特許請求の範囲】
【請求項１】
上体部、前記上体部に接続された第１の脚部、前記上体部に接続された第２の脚部、前記第１の脚部を駆動する第１の駆動部及び前記第２の脚部を駆動する第２の駆動部を備える２足歩行ロボットの歩行動作を制御する歩行制御装置における歩行制御方法であって、
前記２足歩行ロボットは、直立可能な所定の基準角度で重心位置が調整されており、
前記２足歩行ロボットの歩行動作において、前記基準角度に対する前記上体部の傾斜角度を示す情報を取得し、
前記歩行動作のために前記第１の脚部及び前記第２の脚部の一方が接地していない状態において、前記傾斜角度に応じて、前記上体部を前記基準角度に対して所定の角度範囲に維持するように前記第１の脚部及び前記第２の脚部を動作させ、
前記上体部を前記基準角度に対して所定の角度範囲に維持するように前記第１の脚部及び前記第２の脚部を動作させる際に、前記傾斜角度に基づき、前記上体部を前記基準角度に対して所定の角度範囲に維持するための前記第１の脚部及び前記第２の脚部のそれぞれの動作を補正するための第１の補正信号を生成し、
前記第１の脚部及び前記第２の脚部に対して歩行動作を行わせるための制御信号を前記第１の補正信号に基づいて補正し、補正した前記制御信号を前記第１の駆動部及び前記第２の駆動部のそれぞれに出力する、
歩行制御方法。
【請求項２】
前記傾斜角度に基づき前記上体部を前記基準角度に対して所定の角度範囲に維持するために算出された第１の補正量を、前記第１の補正量が算出されるまでに積算された積算補正量に加算することにより前記第１の補正信号を生成する、
請求項１記載の歩行制御方法。
【請求項３】
所定の時点における前記傾斜角度を変数とする第１の関数により前記第１の補正量を算出する、
請求項２記載の歩行制御方法。
【請求項４】
前記第１の脚部及び前記第２の脚部のうちの支持脚に対して歩行動作を行わせるための第１の制御信号を生成し、
前記第１の脚部及び前記第２の脚部のうちの遊脚に対して歩行動作を行わせるための第２の制御信号を生成し、
前記第１の制御信号と前記第１の補正信号とを合成した第３の制御信号を生成し、前記第１の脚部及び前記第２の脚部のうちの支持脚となる一方に前記第３の制御信号を出力し、
前記第２の制御信号と前記第１の補正信号とを合成した第４の制御信号を生成し、前記第１の脚部及び前記第２の脚部のうちの遊脚となる他方に前記第４の制御信号を出力する、
請求項２又は３記載の歩行制御方法。
【請求項５】
前記第１の補正量及び前記積算補正量は、前記２足歩行ロボットの前後方向の傾斜角度に基づき算出され、
前記第１の制御信号は、前記２足歩行ロボットの歩行動作において、前記第１の脚部及び前記第２の脚部のうちの支持脚を前後方向に回転駆動させるための第１の前後方向制御信号を含み、
前記第２の制御信号は、前記２足歩行ロボットの歩行動作において、前記第１の脚部及び前記第２の脚部のうちの遊脚を前後方向に回転駆動させるための第２の前後方向制御信号を含み、
前記第１の前後方向制御信号に前記第１の補正信号を加算することにより前記第３の制御信号を生成し、
前記第２の前後方向制御信号から前記第１の補正信号を減算することにより前記第４の制御信号を生成する、
請求項４記載の歩行制御方法。
【請求項６】
前記第３の制御信号に基づく前記第１の脚部又は前記第２の脚部の第１の駆動量が第１の閾値を越えるか否かを判定し、
前記第４の制御信号に基づく前記第１の脚部又は前記第２の脚部の第２の駆動量が前記第１の閾値を越えるか否かを判定し、
前記第１の駆動量が前記第１の閾値を超えると判定した場合、前記第１の駆動量を前記第１の閾値に変更し、
前記第２の駆動量が前記第１の閾値を超えると判定した場合、前記第２の駆動量を前記第１の閾値に変更する、
請求項５記載の歩行制御方法。
【請求項７】
前記２足歩行ロボットが前記第１の脚部及び前記第２の脚部の双方により支持されている場合、前記第１の補正量を算出しない、
請求項５又は６記載の歩行制御方法。
【請求項８】
前記第１の補正量及び前記積算補正量は、前記２足歩行ロボットの左右方向の傾斜角度に基づき算出され、
前記第１の制御信号は、前記２足歩行ロボットの歩行動作において、前記第１の脚部及び前記第２の脚部のうちの支持脚を左右方向に回転駆動させるための第１の左右方向制御信号を含み、
前記第２の制御信号は、前記２足歩行ロボットの歩行動作において、前記第１の脚部及び前記第２の脚部のうちの遊脚を左右方向に回転駆動させるための第２の左右方向制御信号を含み、
前記第１の左右方向制御信号に前記第１の補正信号を加算することにより前記第３の制御信号を生成し、
前記第２の左右方向制御信号に、前記第１の補正信号に所定の係数を乗じた第２の補正信号を加算することにより前記第４の制御信号を生成する、
請求項４記載の歩行制御方法。
【請求項９】
前記第３の制御信号に基づく前記第１の脚部又は前記第２の脚部の第１の駆動量が、前記第１の脚部及び前記第２の脚部が干渉する第２の閾値を越えるか否かを判定し、
前記第４の制御信号に基づく前記第１の脚部又は前記第２の脚部の第２の駆動量が前記第２の閾値を越えるか否かを判定し、
前記第１の駆動量が前記第２の閾値を超えると判定された場合、前記第１の駆動量を前記第２の閾値より少ない所定の値に変更し、
前記第２の駆動量が前記第２の閾値を超えると判定された場合、前記第２の駆動量を前記第２の閾値より少ない所定の値に変更する、
請求項８記載の歩行制御方法。
【請求項１０】
前記２足歩行ロボットの歩行面の凹凸を示す値が所定の値以下である場合、前記所定の係数を正の値とする、
請求項８記載の歩行制御方法。
【請求項１１】
前記２足歩行ロボットの歩行面の凹凸を示す値が所定の値より大きい場合、前記所定の
係数を負の値とする、
請求項８記載の歩行制御方法。
【請求項１２】
前記上体部が、前記第１の脚部及び前記第２の脚部に対して略平行となる直立状態を検出した場合、前記積算補正量をゼロにクリアし、
前記第１の制御信号及び前記第２の制御信号を再度生成する、
請求項４〜１１のいずれか１項に記載の歩行制御方法。
【請求項１３】
前記第１の補正信号が前記第１の制御信号及び前記第２の制御信号に合成されることによる前記第１の脚部及び前記第２の脚部の歩幅の変化量を記憶し、
記憶した前記変化量を前記第１の制御信号及び前記第２の制御信号に加算し、
記憶した前記変化量を時間の経過とともに減少させてゼロに収束させる、
請求項１２記載の歩行制御方法。
【請求項１４】
上体部、前記上体部に接続された第１の脚部、前記上体部に接続された第２の脚部、前記第１の脚部を駆動する第１の駆動部及び前記第２の脚部を駆動する第２の駆動部を備える２足歩行ロボットの歩行動作を制御する歩行制御プログラムであって、
前記２足歩行ロボットは、直立可能な所定の基準角度で重心位置が調整されており、
コンピュータを、
前記２足歩行ロボットの歩行動作において、前記基準角度に対する前記上体部の傾斜角度を示す情報を取得する取得部と、
前記歩行動作のために前記第１の脚部及び前記第２の脚部の一方が接地していない状態において、前記傾斜角度に応じて、前記上体部を前記基準角度に対して所定の角度範囲に維持するように前記第１の脚部及び前記第２の脚部を動作させる制御部として機能させ、
前記制御部は、
前記上体部を前記基準角度に対して所定の角度範囲に維持するように前記第１の脚部及び前記第２の脚部を動作させる際に、前記傾斜角度に基づき、前記上体部を前記基準角度に対して所定の角度範囲に維持するための前記第１の脚部及び前記第２の脚部のそれぞれの動作を補正するための第１の補正信号を生成し、
前記第１の脚部及び前記第２の脚部に対して歩行動作を行わせるための制御信号を前記第１の補正信号に基づいて補正し、補正した前記制御信号を前記第１の駆動部及び前記第２の駆動部のそれぞれに出力する、
歩行制御プログラム。
【請求項１５】
上体部と、
前記上体部に接続された第１の脚部と、
前記上体部に接続された第２の脚部と、
前記第１の脚部を駆動する第１の駆動部と、
前記第２の脚部を駆動する第２の駆動部と、
直立可能な所定の基準角度で重心位置が調整された２足歩行ロボットの歩行動作において、前記基準角度に対する前記上体部の傾斜角度を示す情報を取得する取得部と、
前記歩行動作のために前記第１の脚部及び前記第２の脚部の一方が接地していない状態において、前記傾斜角度に応じて、前記上体部を前記基準角度に対して所定の角度範囲に維持するように前記第１の脚部及び前記第２の脚部を動作させる制御部と、
を備え、
前記制御部は、
前記上体部を前記基準角度に対して所定の角度範囲に維持するように前記第１の脚部及び前記第２の脚部を動作させる際に、前記傾斜角度に基づき、前記上体部を前記基準角度に対して所定の角度範囲に維持するための前記第１の脚部及び前記第２の脚部のそれぞれの動作を補正するための第１の補正信号を生成し、
前記第１の脚部及び前記第２の脚部に対して歩行動作を行わせるための制御信号を前記第１の補正信号に基づいて補正し、補正した前記制御信号を前記第１の駆動部及び前記第２の駆動部のそれぞれに出力する、
２足歩行ロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、２足歩行ロボットの歩行動作を制御する歩行制御方法、歩行制御プログラム及び２足歩行ロボットに関するものである。
【背景技術】
【０００２】
従来、人間などの２足歩行の動物の身体メカニズム及び動作を模した２足歩行ロボットの開発が進められている。
【０００３】
例えば、特許文献１では、基体と、それに第１の関節を介して連結され、少なくとも第２の関節をそれぞれ有してなる複数本の脚部リンクとからなり、複数本の脚部リンクで交互に自重を支持しつつ歩行する脚式移動ロボットの歩行制御装置を開示している。
【０００４】
この従来の歩行制御装置は、各関節に配置したサーボモータを介して各関節角度を目標値に追従制御するものにおいて、基体の傾斜角度及び／又は傾斜角速度を重力方向に対する絶対角度で検出し、検出値に所定のゲインを乗じて得た補正量を遊脚側の脚部リンクの第１の関節及び／又は第２の関節の制御値に加算するようにしている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第３１６７４０６号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１の歩行制御装置では、傾斜方向に向かって、傾斜の大きさに比例させた歩幅で遊脚を踏みだすように制御している。すなわち、特許文献１の歩行制御装置は、常に胴体部分を垂直に維持するものではなく、遊脚の着地直前まで残った傾き角に歩幅を対応させることで、遊脚が着地した後の安定性を確保するものである。
【０００７】
従来の歩行制御装置では、例えば、２足歩行ロボットが片足を接地した状態で外力を受け、傾いた状態で直立状態に復帰した場合、傾きが戻らずに残ったり、傾きがさらに大きくなったりするおそれがある。
【０００８】
本開示は、上記の問題を解決するためになされたもので、安定した歩行動作を実現することができる歩行制御方法、歩行制御プログラム及び２足歩行ロボットを提供することを目的とするものである。
【課題を解決するための手段】
【０００９】
本開示の一態様に係る歩行制御方法は、上体部、前記上体部に接続された第１の脚部、前記上体部に接続された第２の脚部、前記第１の脚部を駆動する第１の駆動部及び前記第２の脚部を駆動する第２の駆動部を備える２足歩行ロボットの歩行動作を制御する歩行制御装置における歩行制御方法であって、前記２足歩行ロボットは、直立可能な所定の基準角度で重心位置が調整されており、前記２足歩行ロボットの歩行動作において、前記基準角度に対する前記上体部の傾斜角度を示す情報を取得し、前記歩行動作のために前記第１の脚部及び前記第２の脚部の一方が接地していない状態において、前記傾斜角度に応じて、前記上体部を前記基準角度に対して所定の角度範囲に維持するように前記第１の脚部及び前記第２の脚部を動作させる。
【発明の効果】
【００１０】
本開示によれば、歩行動作のために第１の脚部及び第２の脚部の一方が接地していない状態において、直立可能な所定の基準角度に対して上体部が所定の角度範囲に維持されるので、安定した歩行動作を実現することができる。
【図面の簡単な説明】
【００１１】
【図１】本実施の形態における２足歩行ロボットの構成を示す図である。
【図２】本実施の形態における２足歩行ロボットのピッチ方向の歩行制御について説明するための模式図である。
【図３】本実施の形態におけるピッチ方向の歩行動作を制御する歩行制御装置の構成を示す図である。
【図４】本実施の形態における歩行制御装置によるピッチ方向の歩行動作について説明するためのフローチャートである。
【図５】本実施の形態における２足歩行ロボットのロール方向の歩行制御について説明するための模式図である。
【図６】本実施の形態におけるロール方向の歩行動作を制御する歩行制御装置の構成を示す図である。
【図７】本実施の形態における歩行制御装置によるロール方向の歩行動作について説明するためのフローチャートである。
【図８】外力により上体部が傾いた際の従来の歩行制御について説明するための模式図である。
【図９】外力により上体部が傾いた際の本実施の形態の歩行制御について説明するための模式図である。
【図１０】倒立振子を用いて特許文献１の歩行制御について説明するための模式図である。
【図１１】倒立振子を用いて本実施の形態の歩行制御について説明するための模式図である。
【発明を実施するための形態】
【００１２】
（本開示の基礎となった知見）
２足歩行ロボットのバランス制御方法としては、ゼロモーメントポイント（以下、ＺＭＰと略記する）と呼ばれる力学的な考え方を規範としたバランス制御方法が一般的に知られている。
【００１３】
２足歩行ロボットが歩行する際、２足歩行ロボットには、地球からの重力と、歩行によって生じる慣性力とが働く。重力と慣性力との合力の軸と、地面との交点は、合力のモーメントが０となるので、ＺＭＰと呼ばれている。また、２足歩行ロボットが着地している足には地面からの反作用として床反力が働く。この床反力が作用する点は、床反力作用点と呼ばれている。２足歩行ロボットが理想的なバランスを保って歩行している場合、目標ＺＭＰと床反力作用点とは一致している。すなわち、目標ＺＭＰと床反力作用点とを一致させることにより、バランスを崩すことなく安定して２足歩行ロボットを歩行させることができる。
【００１４】
しかしながら、ＺＭＰを用いた歩行制御方法では、足の裏に設けられたセンサによって床反力作用点を検出することでバランスを保っているため、不整地、床面の異物又は起伏に対して不安定になり易い。また、常に目標ＺＭＰを意識して歩容を生成する必要があるが、歩容を生成するにあたって目標ＺＭＰに一致する軌道の算出は一義的に求まらず、通常は収束計算により近似するなど、歩容を生成するための計算量が大きくなる。さらに、床反力作用点が重要な要素になっていることと、歩容計算が困難なことから、速い動きに対する追従が困難である。さらにまた、上体の任意の動きによる重心位置の変化に対しての対応が困難であり、やはり速い動きに対してバランスを崩し易い。
【００１５】
また、上記のように、特許文献１の歩行制御装置では、傾斜方向に向かって、傾斜の大きさに比例させた歩幅で遊脚を踏みだすように制御している。すなわち、特許文献１の歩行制御装置は、常に胴体部分を垂直に維持するものではなく、遊脚の着地直前まで残った傾き角に歩幅を対応させることで、遊脚が着地した後の安定性を確保するものである。
【００１６】
従来の歩行制御装置では、例えば、２足歩行ロボットが片足を接地した状態で外力を受け、傾いた状態で直立状態に復帰した場合、傾きが戻らずに残ったり、傾きがさらに大きくなったりするおそれがある。
【００１７】
このような課題を解決するため、本開示の一態様に係る歩行制御方法は、上体部、前記上体部に接続された第１の脚部、前記上体部に接続された第２の脚部、前記第１の脚部を駆動する第１の駆動部及び前記第２の脚部を駆動する第２の駆動部を備える２足歩行ロボットの歩行動作を制御する歩行制御装置における歩行制御方法であって、前記２足歩行ロボットは、直立可能な所定の基準角度で重心位置が調整されており、前記２足歩行ロボットの歩行動作において、前記基準角度に対する前記上体部の傾斜角度を示す情報を取得し、前記歩行動作のために前記第１の脚部及び前記第２の脚部の一方が接地していない状態において、前記傾斜角度に応じて、前記上体部を前記基準角度に対して所定の角度範囲に維持するように前記第１の脚部及び前記第２の脚部を動作させる。
【００１８】
この構成によれば、２足歩行ロボットは、直立可能な所定の基準角度で重心位置が調整されている。２足歩行ロボットの歩行動作において、基準角度に対する上体部の傾斜角度を示す情報が取得される。歩行動作のために第１の脚部及び第２の脚部の一方が接地していない状態において、傾斜角度に応じて、上体部を基準角度に対して所定の角度範囲に維持するように第１の脚部及び第２の脚部が動作される。
【００１９】
したがって、歩行動作のために第１の脚部及び第２の脚部の一方が接地していない状態において、直立可能な所定の基準角度に対して上体部が所定の角度範囲に維持されるので、安定した歩行動作を実現することができる。
【００２０】
また、上記の歩行制御方法において、前記上体部を前記基準角度に対して所定の角度範囲に維持するように前記第１の脚部及び前記第２の脚部を動作させる際に、前記傾斜角度に基づき、前記上体部を前記基準角度に対して所定の角度範囲に維持するための前記第１の脚部及び前記第２の脚部のそれぞれの動作を補正するための第１の補正信号を生成し、前記第１の脚部及び前記第２の脚部に対して歩行動作を行わせるための制御信号を前記第１の補正信号に基づいて補正し、補正した前記制御信号を前記第１の駆動部及び前記第２の駆動部のそれぞれに出力してもよい。
【００２１】
この構成によれば、上体部を基準角度に対して所定の角度範囲に維持するように第１の脚部及び第２の脚部を動作させる際に、傾斜角度に基づき、上体部を基準角度に対して所定の角度範囲に維持するための第１の脚部及び第２の脚部のそれぞれの動作を補正するための第１の補正信号が生成される。第１の脚部及び第２の脚部に対して歩行動作を行わせるための制御信号が第１の補正信号に基づいて補正される。補正された制御信号が第１の駆動部及び第２の駆動部のそれぞれに出力される。
【００２２】
したがって、第１の補正信号に基づき、第１の脚部及び第２の脚部に対して歩行動作を行わせるための制御信号を補正することにより、上体部を基準角度に対して所定の角度範囲に維持することができる。
【００２３】
また、上記の歩行制御方法において、前記傾斜角度に基づき前記上体部を前記基準角度に対して所定の角度範囲に維持するために算出された第１の補正量を、前記第１の補正量が算出されるまでに積算された積算補正量に加算することにより前記第１の補正信号を生成してもよい。
【００２４】
この構成によれば、傾斜角度に基づき上体部を基準角度に対して所定の角度範囲に維持するために算出された第１の補正量を、第１の補正量が算出されるまでに積算された積算補正量に加算することにより第１の補正信号が生成される。
【００２５】
したがって、上体部の傾斜角度に応じた第１の補正量を積算補正量に積算することにより第１の補正信号が生成されるので、２足歩行ロボットの安定点が保持され、安定したバランス制御を実現することができる。
【００２６】
また、上記の歩行制御方法において、所定の時点における前記傾斜角度を変数とする第１の関数により前記第１の補正量を算出してもよい。
【００２７】
この構成によれば、第１の関数を用いることにより、上体部の傾斜角度に応じた第１の補正量を容易に算出することができる。
【００２８】
また、上記の歩行制御方法において、前記第１の脚部及び前記第２の脚部のうちの支持脚に対して歩行動作を行わせるための第１の制御信号を生成し、前記第１の脚部及び前記第２の脚部のうちの遊脚に対して歩行動作を行わせるための第２の制御信号を生成し、前記第１の制御信号と前記第１の補正信号とを合成した第３の制御信号を生成し、前記第１の脚部及び前記第２の脚部のうちの支持脚となる一方に前記第３の制御信号を出力し、前記第２の制御信号と前記第１の補正信号とを合成した第４の制御信号を生成し、前記第１の脚部及び前記第２の脚部のうちの遊脚となる他方に前記第４の制御信号を出力してもよい。
【００２９】
この構成によれば、第１の脚部及び第２の脚部のうちの支持脚に対して歩行動作を行わせるための第１の制御信号が生成される。第１の脚部及び第２の脚部のうちの遊脚に対して歩行動作を行わせるための第２の制御信号が生成される。第１の制御信号と第１の補正信号とを合成した第３の制御信号が生成される、第１の脚部及び第２の脚部のうちの支持脚となる一方に第３の制御信号が出力される。第２の制御信号と第１の補正信号とを合成した第４の制御信号が生成され、第１の脚部及び第２の脚部のうちの遊脚となる他方に第４の制御信号が出力される。
【００３０】
したがって、上体部が基準角度に対して所定の角度範囲に維持されるように、第１の脚部及び第２の脚部のうちの支持脚となる一方と、第１の脚部及び第２の脚部のうちの遊脚となる他方とを動作させることができる。
【００３１】
また、上記の歩行制御方法において、前記第１の補正量及び前記積算補正量は、前記２足歩行ロボットの前後方向の傾斜角度に基づき算出され、前記第１の制御信号は、前記２足歩行ロボットの歩行動作において、前記第１の脚部及び前記第２の脚部のうちの支持脚を前後方向に回転駆動させるための第１の前後方向制御信号を含み、前記第２の制御信号は、前記２足歩行ロボットの歩行動作において、前記第１の脚部及び前記第２の脚部のうちの遊脚を前後方向に回転駆動させるための第２の前後方向制御信号を含み、前記第１の前後方向制御信号に前記第１の補正信号を加算することにより前記第３の制御信号を生成し、前記第２の前後方向制御信号から前記第１の補正信号を減算することにより前記第４の制御信号を生成してもよい。
【００３２】
この構成によれば、第１の補正量及び積算補正量は、２足歩行ロボットの前後方向の傾斜角度に基づき算出される。第１の制御信号は、２足歩行ロボットの歩行動作において、第１の脚部及び第２の脚部のうちの支持脚を前後方向に回転駆動させるための第１の前後方向制御信号を含む。第２の制御信号は、２足歩行ロボットの歩行動作において、第１の脚部及び第２の脚部のうちの遊脚を前後方向に回転駆動させるための第２の前後方向制御信号を含む。第１の前後方向制御信号に第１の補正信号を加算することにより第３の制御信号が生成される。また、第２の前後方向制御信号から第１の補正信号を減算することにより第４の制御信号が生成される。
【００３３】
したがって、２足歩行ロボットの前後方向の傾斜角度に基づき第１の補正量及び積算補正量が算出されるので、第１の脚部及び第２の脚部を前後方向に駆動することができ、上体部を基準角度に対して所定の角度範囲に維持することができる。
【００３４】
また、上記の歩行制御方法において、前記第３の制御信号に基づく前記第１の脚部又は前記第２の脚部の第１の駆動量が第１の閾値を越えるか否かを判定し、前記第４の制御信号に基づく前記第１の脚部又は前記第２の脚部の第２の駆動量が前記第１の閾値を越えるか否かを判定し、前記第１の駆動量が前記第１の閾値を超えると判定した場合、前記第１の駆動量を前記第１の閾値に変更し、前記第２の駆動量が前記第１の閾値を超えると判定した場合、前記第２の駆動量を前記第１の閾値に変更してもよい。
【００３５】
この構成によれば、第３の制御信号に基づく第１の脚部又は第２の脚部の第１の駆動量が第１の閾値を越えるか否かが判定される。第４の制御信号に基づく第１の脚部又は第２の脚部の第２の駆動量が第１の閾値を越えるか否かが判定される。第１の駆動量が第１の閾値を超えると判定された場合、第１の駆動量が第１の閾値に変更される。また、第２の駆動量が第１の閾値を超えると判定された場合、第２の駆動量が第１の閾値に変更される。
【００３６】
したがって、支持脚に対する第１の駆動量と、遊脚に対する第２の駆動量とがいずれも、駆動可能な第１の閾値を越えないように制御することができる。
【００３７】
また、上記の歩行制御方法において、前記２足歩行ロボットが前記第１の脚部及び前記第２の脚部の双方により支持されている場合、前記第１の補正量を算出しなくてもよい。
【００３８】
この構成によれば、２足歩行ロボットが第１の脚部及び第２の脚部の双方により支持されている場合、第１の補正量が算出されないので、第１の補正量が積算補正量に加算されることによって歩幅が変化するのを防止することができる。
【００３９】
また、上記の歩行制御方法において、前記第１の補正量及び前記積算補正量は、前記２足歩行ロボットの左右方向の傾斜角度に基づき算出され、前記第１の制御信号は、前記２足歩行ロボットの歩行動作において、前記第１の脚部及び前記第２の脚部のうちの支持脚を左右方向に回転駆動させるための第１の左右方向制御信号を含み、前記第２の制御信号は、前記２足歩行ロボットの歩行動作において、前記第１の脚部及び前記第２の脚部のうちの遊脚を左右方向に回転駆動させるための第２の左右方向制御信号を含み、前記第１の左右方向制御信号に前記第１の補正信号を加算することにより前記第３の制御信号を生成し、前記第２の左右方向制御信号に、前記第１の補正信号に所定の係数を乗じた第２の補正信号を加算することにより前記第４の制御信号を生成してもよい。
【００４０】
この構成によれば、第１の補正量及び積算補正量は、２足歩行ロボットの左右方向の傾斜角度に基づき算出される。第１の制御信号は、２足歩行ロボットの歩行動作において、第１の脚部及び第２の脚部のうちの支持脚を左右方向に回転駆動させるための第１の左右方向制御信号を含む。第２の制御信号は、２足歩行ロボットの歩行動作において、第１の脚部及び第２の脚部のうちの遊脚を左右方向に回転駆動させるための第２の左右方向制御信号を含む。第１の左右方向制御信号に第１の補正信号を加算することにより第３の制御信号が生成される。また、第２の左右方向制御信号に、第１の補正信号に所定の係数を乗じた第２の補正信号を加算することにより第４の制御信号が生成される。
【００４１】
したがって、２足歩行ロボットの左右方向の傾斜角度に基づき第１の補正量及び積算補正量が算出されるので、第１の脚部及び第２の脚部を左右方向に駆動することができ、上体部を基準角度に対して所定の角度範囲に維持することができる。
【００４２】
また、上記の歩行制御方法において、前記第３の制御信号に基づく前記第１の脚部又は前記第２の脚部の第１の駆動量が、前記第１の脚部及び前記第２の脚部が干渉する第２の閾値を越えるか否かを判定し、前記第４の制御信号に基づく前記第１の脚部又は前記第２の脚部の第２の駆動量が前記第２の閾値を越えるか否かを判定し、前記第１の駆動量が前記第２の閾値を超えると判定された場合、前記第１の駆動量を前記第２の閾値より少ない所定の値に変更し、前記第２の駆動量が前記第２の閾値を超えると判定された場合、前記第２の駆動量を前記第２の閾値より少ない所定の値に変更してもよい。
【００４３】
この構成によれば、第３の制御信号に基づく第１の脚部又は第２の脚部の第１の駆動量が、第１の脚部及び第２の脚部が干渉する第２の閾値を越えるか否かが判定される。第４の制御信号に基づく第１の脚部又は第２の脚部の第２の駆動量が第２の閾値を越えるか否かが判定される。第１の駆動量が第２の閾値を超えると判定された場合、第１の駆動量が第２の閾値より少ない所定の値に変更される。また、第２の駆動量が第２の閾値を超えると判定された場合、第２の駆動量が第２の閾値より少ない所定の値に変更される。
【００４４】
したがって、支持脚に対する第１の駆動量と、遊脚に対する第２の駆動量とがいずれも、駆動可能な第２の閾値を越えないように制御することができる。
【００４５】
また、上記の歩行制御方法において、前記２足歩行ロボットの歩行面の凹凸を示す値が所定の値以下である場合、前記所定の係数を正の値としてもよい。
【００４６】
この構成によれば、第１の補正信号に乗算する所定の係数を正の値とすることにより、凹凸の少ない歩行面において、安定して歩行させることができる。
【００４７】
また、上記の歩行制御方法において、前記２足歩行ロボットの歩行面の凹凸を示す値が所定の値より大きい場合、前記所定の係数を負の値としてもよい。
【００４８】
この構成によれば、第１の補正信号に乗算する所定の係数を負の値とすることにより、凹凸のある歩行面において、安定して歩行させることができる。
【００４９】
また、上記の歩行制御方法において、前記上体部が、前記第１の脚部及び前記第２の脚部に対して略平行となる直立状態を検出した場合、前記積算補正量をゼロにクリアし、前記第１の制御信号及び前記第２の制御信号を再度生成してもよい。
【００５０】
この構成によれば、上体部が、第１の脚部及び第２の脚部に対して略平行となる直立状態が検出された場合、積算補正量がゼロにクリアされる。そして、第１の制御信号及び第２の制御信号が再度生成される。
【００５１】
したがって、外力によって一時的に振れ周期が変化したとしても、変化した振れ周期に追従することができ、横方向の重心移動を滑らかに継続させることができる。
【００５２】
また、上記の歩行制御方法において、前記第１の補正信号が前記第１の制御信号及び前記第２の制御信号に合成されることによる前記第１の脚部及び前記第２の脚部の歩幅の変化量を記憶し、記憶した前記変化量を前記第１の制御信号及び前記第２の制御信号に加算し、記憶した前記変化量を時間の経過とともに減少させてゼロに収束させてもよい。
【００５３】
この構成によれば、第１の補正信号が第１の制御信号及び第２の制御信号に合成されることによる第１の脚部及び第２の脚部の歩幅の変化量が記憶され、記憶された変化量が第１の制御信号及び第２の制御信号に加算される。したがって、記憶されている積算補正量をゼロにクリアした際における急激な歩幅の変化を防止することができる。また、記憶された変化量は、時間の経過とともに減少してゼロに収束する。したがって、第１の制御信号及び第２の制御信号を基準となる歩幅に戻すことができる。
【００５４】
本開示の他の態様に係る歩行制御プログラムは、上体部、前記上体部に接続された第１の脚部、前記上体部に接続された第２の脚部、前記第１の脚部を駆動する第１の駆動部及び前記第２の脚部を駆動する第２の駆動部を備える２足歩行ロボットの歩行動作を制御する歩行制御プログラムであって、前記２足歩行ロボットは、直立可能な所定の基準角度で重心位置が調整されており、コンピュータを、前記２足歩行ロボットの歩行動作において、前記基準角度に対する前記上体部の傾斜角度を示す情報を取得する取得部と、前記歩行動作のために前記第１の脚部及び前記第２の脚部の一方が接地していない状態において、前記傾斜角度に応じて、前記上体部を前記基準角度に対して所定の角度範囲に維持するように前記第１の脚部及び前記第２の脚部を動作させる制御部として機能させる。
【００５５】
この構成によれば、２足歩行ロボットは、直立可能な所定の基準角度で重心位置が調整されている。２足歩行ロボットの歩行動作において、基準角度に対する上体部の傾斜角度を示す情報が取得される。歩行動作のために第１の脚部及び第２の脚部の一方が接地していない状態において、傾斜角度に応じて、上体部を基準角度に対して所定の角度範囲に維持するように第１の脚部及び第２の脚部が動作される。
【００５６】
したがって、歩行動作のために第１の脚部及び第２の脚部の一方が接地していない状態において、直立可能な所定の基準角度に対して上体部が所定の角度範囲に維持されるので、安定した歩行動作を実現することができる。
【００５７】
本開示の他の態様に係る２足歩行ロボットは、上体部と、前記上体部に接続された第１の脚部と、前記上体部に接続された第２の脚部と、前記第１の脚部を駆動する第１の駆動部と、前記第２の脚部を駆動する第２の駆動部と、直立可能な所定の基準角度で重心位置が調整された２足歩行ロボットの歩行動作において、前記基準角度に対する前記上体部の傾斜角度を示す情報を取得する取得部と、前記歩行動作のために前記第１の脚部及び前記第２の脚部の一方が接地していない状態において、前記傾斜角度に応じて、前記上体部を前記基準角度に対して所定の角度範囲に維持するように前記第１の脚部及び前記第２の脚部を動作させる制御部と、を備える。
【００５８】
この構成によれば、直立可能な所定の基準角度で重心位置が調整された２足歩行ロボットの歩行動作において、基準角度に対する上体部の傾斜角度を示す情報が取得される。歩行動作のために第１の脚部及び第２の脚部の一方が接地していない状態において、傾斜角度に応じて、上体部を基準角度に対して所定の角度範囲に維持するように第１の脚部及び第２の脚部が動作される。
【００５９】
したがって、歩行動作のために第１の脚部及び第２の脚部の一方が接地していない状態において、直立可能な所定の基準角度に対して上体部が所定の角度範囲に維持されるので、安定した歩行動作を実現することができる。
【００６０】
以下添付図面を参照しながら、本開示の実施の形態について説明する。なお、以下の実施の形態は、本開示を具体化した一例であって、本開示の技術的範囲を限定するものではない。
【００６１】
上記のＺＭＰを用いた歩行制御方法では、足裏センサによる床反力作用点の検知が、バランスを維持するために重要となる。しかしながら、人の２足歩行では、床反力作用点よりも、姿勢反射、特に前庭脊髄反射のうちの緊張性迷路反射又は緊張性頸反射などの不随意的な反射が歩行時のバランス維持に重要な役割を果たす。この不随意的な姿勢反射では、体が傾いた際、傾いた側の足が伸展し、反対側の足が屈曲することで体勢を立て直そうとする。生物のような柔軟なバランス制御を実現するためにはこのような仕組みが重要である。通常、バランスを崩して転倒する状態は、上体部が大きく傾いてしまった状態であるともいえる。そのため、上体部を常に垂直に維持できたら転倒には至らない。
【００６２】
そこで、本実施の形態では、歩行中に上体部が傾いた場合に、股関節アクチュエータに傾き角度に応じた補正量をリアルタイムに重畳することで上体部の傾きを垂直に補正し、上体部が常に垂直になるように制御する。
【００６３】
図１は、本実施の形態における２足歩行ロボットの構成を示す図である。図１に示す２足歩行ロボット１は、上体部２、第１の脚部３、第２の脚部６、歩行制御装置１０、傾斜角度検知部１１、第１のピッチ軸アクチュエータ１２、第２のピッチ軸アクチュエータ１３、第１のロール軸アクチュエータ１４及び第２のロール軸アクチュエータ１５を備える。
【００６４】
上体部２は、人間の上体（胴体）を模している。第１の脚部３は、人間の一方の足を模しており、上体部２に接続されている。第２の脚部６は、人間の他方の足を模しており、上体部２に接続されている。
【００６５】
第１のピッチ軸アクチュエータ１２、第２のピッチ軸アクチュエータ１３、第１のロール軸アクチュエータ１４及び第２のロール軸アクチュエータ１５は、上体部２と、第１の脚部３及び第２の脚部６とを接続する股関節に設けられている。なお、２足歩行ロボット１には、股関節以外に膝関節及び足首関節なども存在するが、本実施の形態の歩行動作には関係がないので説明を省略する。
【００６６】
第１のピッチ軸アクチュエータ１２は、第１の脚部３をピッチ方向（ピッチ軸周り）に回転駆動させる。第２のピッチ軸アクチュエータ１３は、第２の脚部６をピッチ方向（ピッチ軸周り）に回転駆動させる。
【００６７】
第１のロール軸アクチュエータ１４は、第１の脚部３をロール方向（ロール軸周り）に回転駆動させる。第２のロール軸アクチュエータ１５は、第２の脚部６をロール方向（ロール軸周り）に回転駆動させる。
【００６８】
傾斜角度検知部１１は、例えば３軸ジャイロスコープであり、上体部２のピッチ方向の傾斜角度及び上体部２のロール方向の傾斜角度を検知する。
【００６９】
歩行制御装置１０は、２足歩行ロボット１の歩行動作を制御する。２足歩行ロボット１は、直立可能な所定の基準角度で重心位置が調整されている。歩行制御装置１０は、傾斜角度検知部１１によって検知された上体部２のピッチ方向の傾斜角度に応じて、上体部２を基準角度に対して所定の角度範囲に維持するように第１の脚部３及び第２の脚部６を動作させる。
【００７０】
まず、本実施の形態におけるピッチ方向（前後方向）の歩行動作を制御する歩行制御装置について説明する。
【００７１】
図２は、本実施の形態における２足歩行ロボットのピッチ方向の歩行制御について説明するための模式図である。なお、図２では、２足歩行ロボット１を側面から見ている。図２において、上体部２と第１の脚部３とは、股関節７により接続されており、上体部２と第２の脚部６とは、股関節８により接続されており、股関節７及び股関節８には、それぞれピッチ軸周りに回転駆動するアクチュエータが設けられている。例えば、第１の脚部３は、歩行する際に地面に接地している支持脚であり、第２の脚部６は、歩行する際に地面に接地していない遊脚である。
【００７２】
ここで、アクチェエータによる股関節７，８の角度の変更は、重力方向に対する上体部２の傾斜角度の変化に連動している。
【００７３】
通常、アクチュエータは、１０ｍｓ程度の時間間隔で制御される。ある時刻ｔにおいて、上体部２の鉛直線５に対するピッチ方向の傾き角度がδθｘであり、基本歩行モーションの支持脚側のピッチ軸股関節角度がθ０ｔ−１である場合、更新される支持脚側のピッチ軸股関節角度Ａ０ｔは、前回までの積算値Ｉｘｔ−１に傾き補正量αδθｘ（αは係数）を加算した値Ｉｘｔ（＝Ｉｘｔ−１＋αδθｘ）に、時刻ｔにおける基本歩行モーションの制御量θ０ｔを加算することにより算出される（Ａ０ｔ＝θ０ｔ＋Ｉｘｔ）。
【００７４】
また、遊脚側のピッチ軸股関節角度Ａ１ｔも支持脚側のピッチ軸股関節角度Ａ０ｔと同様の処理で算出されるが、値Ｉｘｔの符号は逆符号となる。そのため、更新される遊脚側のピッチ軸股関節角度Ａ１ｔは、前回までの積算値Ｉｘｔ−１に傾き補正量αδθｘ（αは係数）を加算した値Ｉｘｔ（＝Ｉｘｔ−１＋αδθｘ）を、時刻ｔにおける基本歩行モーションの制御量θ１ｔから減算することにより算出される（Ａ１ｔ＝θ１ｔ−Ｉｘｔ）。
【００７５】
傾斜角度δθｘを最小化する補正方法は、ＰＩＤ（Ｐｒｏｐｏｒｔｉｏｎａｌ−Ｉｎｔｅｇｒａｌ−Ｄｉｆｆｅｒｅｎｔｉａｌ）制御の積分項に相当し、Ｉｘｔ＝Ｉｘｔ−１＋αδθｘが積分項に対応する。なお、特許文献１の技術は、ＰＩＤ制御の比例項を用いている。
【００７６】
続いて、本実施の形態におけるピッチ方向の歩行動作を制御する歩行制御装置について説明する。
【００７７】
図３は、本実施の形態におけるピッチ方向の歩行動作を制御する歩行制御装置の構成を示す図である。
【００７８】
歩行制御装置１０は、ピッチ軸傾斜角度取得部１００及びピッチ軸制御部１０１を備える。
【００７９】
ピッチ軸傾斜角度取得部１００は、２足歩行ロボット１の歩行動作において、基準角度に対する上体部２の傾斜角度を示す情報を取得する。ピッチ軸傾斜角度取得部１００は、傾斜角度検知部１１によって検知された上体部２のピッチ方向の傾斜角度δθｘを取得する。
【００８０】
ピッチ軸制御部１０１は、歩行動作のために第１の脚部３及び第２の脚部６の一方が接地していない状態において、傾斜角度に応じて、上体部２を基準角度に対して所定の角度範囲に維持するように第１の脚部３及び第２の脚部６を動作させる。特に、ピッチ軸制御部１０１は、歩行動作のために第１の脚部３及び第２の脚部６の一方が接地していない状態において、ピッチ方向の傾斜角度に応じて、上体部２を基準角度に対して所定の角度範囲に維持するように第１の脚部３及び第２の脚部６を動作させる。
【００８１】
ピッチ軸制御部１０１は、ピッチ軸補正量積算部１０３、記憶部１０４、第１のピッチ軸制御信号生成部１０５、第１の合成部１０６、第２のピッチ軸制御信号生成部１０７及び第２の合成部１０８を備える。
【００８２】
ピッチ軸補正量積算部１０３は、上体部２を基準角度に対して所定の角度範囲に維持するように第１の脚部３及び第２の脚部６を動作させる際に、ピッチ方向の傾斜角度δθｘに基づき、上体部２を基準角度に対して所定の角度範囲に維持するための第１の脚部３及び第２の脚部６のそれぞれの動作を補正するための第１のピッチ軸補正信号を生成する。ピッチ軸補正量積算部１０３は、ピッチ方向の傾斜角度δθｘに基づき上体部２を基準角度に対して所定の角度範囲に維持するために算出された第１の補正量を、第１の補正量が算出されるまでに積算された積算補正量Ｉｘに加算することにより第１のピッチ軸補正信号を生成する。第１の補正量及び積算補正量は、２足歩行ロボット１の前後方向（ピッチ方向）の傾斜角度に基づき算出される。
【００８３】
ピッチ軸補正量積算部１０３は、所定の時点における傾斜角度δθｘを変数とする第１の関数ｆ１（δθｘ）により第１の補正量を算出する。なお、第１の関数ｆ１（δθｘ）としては、所定の係数αを傾斜角度δθｘに乗算した関数（αδθｘ）であってもよいし、所定の係数αを傾斜角度δθｘの正弦関数に乗算した関数（α・ｓｉｎ（δθｘ））であってもよい。
【００８４】
上記のように、第１のピッチ軸補正信号は、積算補正量Ｉｘ（＝Ｉｘ＋ｆ１（δθｘ））で表される。
【００８５】
記憶部１０４は、ピッチ軸補正量積算部１０３によって算出された積算補正量Ｉｘを記憶する。
【００８６】
第１のピッチ軸制御信号生成部１０５は、第１の脚部３及び第２の脚部６のうちの支持脚に対して歩行動作を行わせるための第１のピッチ軸制御信号を生成する。第１のピッチ軸制御信号生成部１０５は、股関節を中心に支持脚をピッチ方向に回転させる角度θ０を制御量とする第１のピッチ軸制御信号を生成する。
【００８７】
第１の合成部１０６は、第１のピッチ軸制御信号（θ０）と第１のピッチ軸補正信号（Ｉｘ）とを合成した第３のピッチ軸制御信号（Ａ０）を生成し、第１の脚部３及び第２の脚部６のうちの支持脚となる一方を駆動する支持脚側ピッチ軸アクチュエータ１０９に第３のピッチ軸制御信号を出力する。第１の合成部１０６は、第１のピッチ軸制御信号に第１のピッチ軸補正信号を加算することにより第３のピッチ軸制御信号を生成する。
【００８８】
支持脚側ピッチ軸アクチュエータ１０９は、第１のピッチ軸アクチュエータ１２及び第２のピッチ軸アクチュエータ１３のいずれかであり、第３のピッチ軸制御信号に基づいて、第１の脚部３及び第２の脚部６のうちの支持脚となる脚部をピッチ方向に回転駆動する。
【００８９】
第２のピッチ軸制御信号生成部１０７は、第１の脚部３及び第２の脚部６のうちの遊脚に対して歩行動作を行わせるための第２のピッチ軸制御信号を生成する。第２のピッチ軸制御信号生成部１０７は、股関節を中心に遊脚をピッチ方向に回転させる角度θ１を制御量とする第２のピッチ軸制御信号を生成する。
【００９０】
第２の合成部１０８は、第２のピッチ軸制御信号（θ１）と第１のピッチ軸補正信号（Ｉｘ）とを合成した第４のピッチ軸制御信号（Ａ１）を生成し、第１の脚部３及び第２の脚部６のうちの遊脚となる他方を駆動する遊脚側ピッチ軸アクチュエータ１１０に第４のピッチ軸制御信号を出力する。第２の合成部１０８は、第２のピッチ軸制御信号から第１のピッチ軸補正信号を減算することにより第４のピッチ軸制御信号を生成する。
【００９１】
このように、第１の合成部１０６及び第２の合成部１０８は、第１の脚部３及び第２の脚部６に対して歩行動作を行わせるための第１のピッチ軸制御信号及び第２のピッチ軸制御信号を第１の補正信号に基づいて補正し、補正した第３のピッチ軸制御信号及び第４のピッチ軸制御信号を第１の脚部３を駆動する第１のピッチ軸アクチュエータ１２及び第２の脚部６を駆動する第２のピッチ軸アクチュエータ１３のそれぞれに出力する。
【００９２】
遊脚側ピッチ軸アクチュエータ１１０は、第１のピッチ軸アクチュエータ１２及び第２のピッチ軸アクチュエータ１３のいずれかであり、第４のピッチ軸制御信号に基づいて、第１の脚部３及び第２の脚部６のうちの遊脚となる脚部をピッチ方向に回転駆動する。
【００９３】
このように、第１のピッチ軸制御信号θ０に加算する第１のピッチ軸補正信号Ｉｘの符号は正とし、第２のピッチ軸制御信号θ１に加算する第１のピッチ軸補正信号Ｉｘの符号は負とし、加算する第１のピッチ軸補正信号Ｉｘの符号を互いに逆位相にすることで、歩幅が変化しても、常に２足歩行ロボット１の重心位置を、歩幅の中央に維持することができる。
【００９４】
なお、第１の合成部１０６及び第２の合成部１０８は、２足歩行ロボット１が第１の脚部３及び第２の脚部６の双方により支持されている場合、第１の補正量を算出しなくてもよい。この場合、第１の補正量が算出されないので、積算補正量は固定となる。そのため、第１の合成部１０６は、第１のピッチ軸制御信号と、記憶部１０４に記憶されている積算補正量を示す第１のピッチ軸補正信号とを合成した第３のピッチ軸制御信号を生成する。また、第２の合成部１０８は、第２のピッチ軸制御信号と、記憶部１０４に記憶されている積算補正量を示す第１のピッチ軸補正信号とを合成した第４のピッチ軸制御信号を生成する。
【００９５】
続いて、本実施の形態における歩行制御装置によるピッチ方向の歩行動作について説明する。
【００９６】
図４は、本実施の形態における歩行制御装置によるピッチ方向の歩行動作について説明するためのフローチャートである。
【００９７】
まず、ステップＳ１において、傾斜角度検知部１１は、鉛直線に対する上体部２のピッチ方向の傾斜角度を検知する。
【００９８】
次に、ステップＳ２において、ピッチ軸傾斜角度取得部１００は、傾斜角度検知部１１によって検知されたピッチ方向の傾斜角度を取得する。
【００９９】
次に、ステップＳ３において、ピッチ軸補正量積算部１０３は、取得されたピッチ方向の傾斜角度に基づき上体部２を基準角度に対して所定の角度範囲に維持するために算出された第１の補正量を、第１の補正量が算出されるまでに積算された積算補正量に加算することにより第１のピッチ軸補正信号を生成する。ピッチ軸補正量積算部１０３は、積算補正量を記憶部１０４に記憶するとともに、生成した第１のピッチ軸補正信号を第１の合成部１０６及び第２の合成部１０８に出力する。
【０１００】
次に、ステップＳ４において、第１のピッチ軸制御信号生成部１０５は、第１の脚部３及び第２の脚部６のうちの支持脚に対してピッチ方向の歩行動作を行わせるための第１のピッチ軸制御信号を生成する。
【０１０１】
次に、ステップＳ５において、第２のピッチ軸制御信号生成部１０７は、第１の脚部３及び第２の脚部６のうちの遊脚に対してピッチ方向の歩行動作を行わせるための第２のピッチ軸制御信号を生成する。
【０１０２】
次に、ステップＳ６において、第１の合成部１０６は、第１のピッチ軸制御信号生成部１０５によって生成された第１のピッチ軸制御信号に、ピッチ軸補正量積算部１０３によって生成された第１のピッチ軸補正信号を加算した第３のピッチ軸制御信号を生成する。第１の合成部１０６は、生成した第３のピッチ軸制御信号を、第１の脚部３及び第２の脚部６のうちの支持脚となる脚部を駆動する支持脚側ピッチ軸アクチュエータ１０９に出力する。
【０１０３】
次に、ステップＳ７において、第２の合成部１０８は、第２のピッチ軸制御信号生成部１０７によって生成された第２のピッチ軸制御信号から、ピッチ軸補正量積算部１０３によって生成された第１のピッチ軸補正信号を減算した第４のピッチ軸制御信号を生成する。第２の合成部１０８は、生成した第４のピッチ軸制御信号を、第１の脚部３及び第２の脚部６のうちの遊脚となる脚部を駆動する遊脚側ピッチ軸アクチュエータ１１０に出力する。
【０１０４】
次に、ステップＳ８において、支持脚側ピッチ軸アクチュエータ１０９は、第１の合成部１０６によって生成された第３のピッチ軸制御信号に基づいて、第１の脚部３及び第２の脚部６のうちの支持脚となる脚部を駆動する。
【０１０５】
次に、ステップＳ９において、遊脚側ピッチ軸アクチュエータ１１０は、第２の合成部１０８によって生成された第４のピッチ軸制御信号に基づいて、第１の脚部３及び第２の脚部６のうちの遊脚となる脚部を駆動する。その後、ステップＳ１の処理に戻り、歩行制御装置１０によるピッチ方向の歩行動作が制御される。
【０１０６】
このように、基本歩行モーションに従い、支持脚と遊脚とを交互に切り替えながら股関節、膝関節及び足首のピッチ軸に対応するアクチュエータが駆動される。このとき、上体部が鉛直線に対しピッチ軸方向にδθｘ傾いた場合、δθｘに係数αを掛けたαδθｘを積算補正量Ｉｘに加算し、積算補正量Ｉｘ（＝Ｉｘ＋αδθｘ）が、基本歩行モーションに追従する両脚の股関節ピッチ軸駆動量θ０，θ１に加算される。
【０１０７】
なお、ピッチ軸制御部１０１は、第３のピッチ軸制御信号に基づく第１の脚部３又は第２の脚部６の第１の駆動量が第１の閾値を越えるか否かを判定する第１の判定部と、第４のピッチ軸制御信号に基づく第１の脚部３又は第２の脚部６の第２の駆動量が第１の閾値を越えるか否かを判定する第２の判定部と、第１の駆動量が第１の閾値を超えると判定された場合、第１の駆動量を第１の閾値に変更する第１の変更部と、第２の駆動量が第１の閾値を超えると判定された場合、第２の駆動量を第１の閾値に変更する第２の変更部とをさらに備えてもよい。
【０１０８】
このとき、第１の判定部及び第１の変更部は、第１の閾値の符号を第１の駆動量の符号に合わせて変更してもよく、第２の判定部及び第２の変更部は、第１の閾値の符号を第２の駆動量の符号に合わせて変更してもよい。また、第１の判定部は、第１の駆動量の絶対値と第１の閾値とを比較してもよく、第２の判定部は、第２の駆動量の絶対値と第１の閾値とを比較してもよい。
【０１０９】
続いて、本実施の形態におけるロール方向（左右方向）の歩行動作を制御する歩行制御装置について説明する。
【０１１０】
歩行時において、床に脚が着いた状態の立脚相から、脚が床から離れた状態の遊脚相へ切り替える場合、又は遊脚相から立脚相へ切り替える場合、左右方向に安定した重心移動が行われなければならない。
【０１１１】
歩行状態では、左右の脚の間隔は、前後の脚の間隔（歩幅）よりも狭いため、左右の重心移動が、立脚相から遊脚相に移行する瞬間の脚上げタイミングにうまく同期しないと、横方向のバランスが乱れ、転倒する可能性がある。
【０１１２】
横方向に安定した重心移動を実現するには、ロボット毎に、その機体に整合した振れ幅ｄ及び周期τを設定する必要があるが、それだけでは外乱、自身の機構的緩み又は擾乱などの影響により安定な左右の重心移動を維持するのは難しい。
【０１１３】
そこで、本実施の形態では、横方向の周期的な重心移動を実現する横方向の基本歩行モーションに対して、上体部が垂直になるように横方向の傾きを補正することにより、歩行動作を安定化させる。
【０１１４】
図５は、本実施の形態における２足歩行ロボットのロール方向の歩行制御について説明するための模式図である。なお、図５では、２足歩行ロボット１を正面から見ている。図５において、上体部２と第１の脚部３とは、股関節７により接続されており、上体部２と第２の脚部６とは、股関節８により接続されており、股関節７及び股関節８には、それぞれロール軸周りに回転駆動するアクチュエータが設けられている。例えば、第１の脚部３は、歩行する際に地面に接地する支持脚であり、第２の脚部６は、歩行する際に地面に接地していない遊脚である。
【０１１５】
ある時刻ｔにおいて、上体部２の鉛直線５に対する左右方向（ロール方向）の傾き角度がδθｙであり、基本歩行モーションの支持脚側のロール軸股関節角度がΘ０ｔ−１である場合、更新される支持脚側のロール軸股関節角度Ｂ０ｔは、前回までの積算値Ｉｙｔ−１に傾き補正量βδθｙ（βは係数）を加算した値Ｉｙｔ（＝Ｉｙｔ−１＋βδθｙ）に、時刻ｔにおける基本歩行モーションの制御量Θ０ｔを加算することにより算出される。
【０１１６】
また、遊脚側のロール軸股関節角度Ｂ１ｔは、時刻ｔにおける基本歩行モーションのロール軸股関節角度Θ１ｔに、積算値Ｉｙｔと係数γとの積を加算することにより算出される（Ｂ１ｔ＝Θ１ｔ＋γＩｙｔ）。なお、係数γが１である場合、傾きによる補正が加わっても横方向に対して遊脚と支持脚とは平行に駆動され、起伏の少ない床の上などに適した安定した歩容となる。一方、係数γが負の値である場合、傾きによる補正が加わった際、遊脚と支持脚とは横方向に対して互いに反対の向きに駆動され、不整地でもバランスを維持することが容易となる。
【０１１７】
図６は、本実施の形態におけるロール方向の歩行動作を制御する歩行制御装置の構成を示す図である。
【０１１８】
歩行制御装置１０は、ロール軸傾斜角度取得部２００及びロール軸制御部２０１を備える。
【０１１９】
ロール軸傾斜角度取得部２００は、２足歩行ロボット１の歩行動作において、基準角度に対する上体部２の傾斜角度を示す情報を取得する。ロール軸傾斜角度取得部２００は、傾斜角度検知部１１によって検知された上体部２のロール方向の傾斜角度δθｙを取得する。
【０１２０】
ロール軸制御部２０１は、歩行動作のために第１の脚部３及び第２の脚部６の一方が接地していない状態において、傾斜角度に応じて、上体部２を基準角度に対して所定の角度範囲に維持するように第１の脚部３及び第２の脚部６を動作させる。特に、ロール軸制御部２０１は、歩行動作のために第１の脚部３及び第２の脚部６の一方が接地していない状態において、ロール方向の傾斜角度に応じて、上体部２を基準角度に対して所定の角度範囲に維持するように第１の脚部３及び第２の脚部６を動作させる。
【０１２１】
ロール軸制御部２０１は、ロール軸補正量積算部２０３、記憶部２０４、第１のロール軸制御信号生成部２０５、第１の合成部２０６、第２のロール軸制御信号生成部２０７、補正ゲイン乗算部２０８及び第２の合成部２０９を備える。
【０１２２】
ロール軸補正量積算部２０３は、上体部２を基準角度に対して所定の角度範囲に維持するように第１の脚部３及び第２の脚部６を動作させる際に、ロール方向の傾斜角度δθｙに基づき、上体部２を基準角度に対して所定の角度範囲に維持するための第１の脚部３及び第２の脚部６のそれぞれの動作を補正するための第１のロール軸補正信号を生成する。ロール軸補正量積算部２０３は、ロール方向の傾斜角度δθｙに基づき上体部２を基準角度に対して所定の角度範囲に維持するために算出された第１の補正量を、第１の補正量が算出されるまでに積算された積算補正量Ｉｙに加算することにより第１のロール軸補正信号を生成する。第１の補正量及び積算補正量は、２足歩行ロボット１の左右方向（ロール方向）の傾斜角度に基づき算出される。
【０１２３】
ロール軸補正量積算部２０３は、所定の時点における傾斜角度δθｙを変数とする第１の関数ｆ１（δθｙ）により第１の補正量を算出する。なお、第１の関数ｆ１（δθｙ）としては、所定の係数βを傾斜角度δθｙに乗算した関数（βδθｙ）であってもよいし、所定の係数βを傾斜角度δθｙの正弦関数に乗算した関数（β・ｓｉｎ（δθｙ））であってもよい。
【０１２４】
上記のように、第１のロール軸補正信号は、積算補正量Ｉｙ（＝Ｉｙ＋ｆ１（δθｙ））で表される。
【０１２５】
記憶部２０４は、ロール軸補正量積算部２０３によって算出された積算補正量Ｉｙを記憶する。
【０１２６】
第１のロール軸制御信号生成部２０５は、第１の脚部３及び第２の脚部６のうちの支持脚に対して歩行動作を行わせるための第１のロール軸制御信号を生成する。第１のロール軸制御信号生成部２０５は、股関節を中心に支持脚をロール方向に回転させる角度Θ０を制御量とする第１のロール軸制御信号を生成する。
【０１２７】
第１の合成部２０６は、第１のロール軸制御信号（Θ０）と第１のロール軸補正信号（Ｉｙ）とを合成した第３のロール軸制御信号（Ｂ０）を生成し、第１の脚部３及び第２の脚部６のうちの支持脚となる一方を駆動する支持脚側ロール軸アクチュエータ２１０に第３のロール軸制御信号を出力する。第１の合成部２０６は、第１のロール軸制御信号に第１のロール軸補正信号を加算することにより第３のロール軸制御信号を生成する。
【０１２８】
支持脚側ロール軸アクチュエータ２１０は、第１のロール軸アクチュエータ１４及び第２のロール軸アクチュエータ１５のいずれかであり、第３のロール軸制御信号に基づいて、第１の脚部３及び第２の脚部６のうちの支持脚となる脚部をロール方向に回転駆動する。
【０１２９】
第２のロール軸制御信号生成部２０７は、第１の脚部３及び第２の脚部６のうちの遊脚に対して歩行動作を行わせるための第２のロール軸制御信号を生成する。第２のロール軸制御信号生成部２０７は、股関節を中心に遊脚をロール方向に回転させる角度Θ１を制御量とする第２のロール軸制御信号を生成する。
【０１３０】
補正ゲイン乗算部２０８は、第１のロール軸補正信号（Ｉｙ）に所定の係数（γ）を乗算することにより第２のロール軸補正信号（γＩｙ）を生成する。
【０１３１】
なお、補正ゲイン乗算部２０８は、２足歩行ロボット１の歩行面の凹凸を示す値が所定の値以下である場合、所定の係数γを正の値とする。この場合、２足歩行ロボット１は、歩行面の凹凸を数値化して検知するセンサを備える。これにより、傾きによる補正が加わっても、例えば係数γが１であれば、横方向に対して遊脚と支持脚とは平行に駆動され、起伏の少ない歩行面において安定した歩容を実現することができる。また、補正ゲイン乗算部２０８は、２足歩行ロボット１の歩行面の凹凸を示す値が所定の値より大きい場合、所定の係数γを負の値とする。これにより、傾きによる補正が加わった際、遊脚と支持脚とは横方向に対して互いに反対の向きに駆動されるので、不整地でもバランスを容易に維持することができる。
【０１３２】
第２の合成部２０９は、第２のロール軸制御信号（Θ１）と第２のロール軸補正信号（γＩｙ）とを合成した第４のロール軸制御信号（Ｂ１）を生成し、第１の脚部３及び第２の脚部６のうちの遊脚となる他方を駆動する遊脚側ロール軸アクチュエータ２１１に第４のロール軸制御信号を出力する。第２の合成部２０９は、第２のロール軸制御信号に、第１のロール軸補正信号に所定の係数を乗じた第２のロール軸補正信号を加算することにより第４のロール軸制御信号を生成する。
【０１３３】
遊脚側ロール軸アクチュエータ２１１は、第１のロール軸アクチュエータ１４及び第２のロール軸アクチュエータ１５のいずれかであり、第４のロール軸制御信号に基づいて、第１の脚部３及び第２の脚部６のうちの遊脚となる脚部をロール方向に回転駆動する。
【０１３４】
このように、第１のロール軸制御信号生成部２０５及び第２のロール軸制御信号生成部２０７は、駆動パターンである第１のロール軸制御信号Θ０及び第２のロール軸制御信号Θ１を連続的に生成するが、この第１のロール軸制御信号Θ０及び第２のロール軸制御信号Θ１に、傾き補正量である第１のロール軸補正信号Ｉｙ及び第２のロール軸補正信号γＩｙを重畳することにより、上体部２を垂直に保つことができる。
【０１３５】
また、上体部２が、第１の脚部３及び第２の脚部６に対して略平行となる直立状態が検出された場合、ロール軸補正量積算部２０３は、記憶部２０４に記憶されている積算補正量をゼロにクリアしてもよい。そして、第１のロール軸制御信号生成部２０５は、第１のロール軸制御信号を再度生成してもよく、第２のロール軸制御信号生成部２０７は、第２のロール軸制御信号を再度生成してもよい。これにより、外力によって一時的に振れ周期が変化したとしても、変化した振れ周期に追従することができ、横方向の重心移動を滑らかに継続させることができる。なお、第１のロール軸制御信号及び第２のロール軸制御信号を再度生成する際、左右の脚部に対する支持脚と遊脚との切り替えの順番は保持される。
【０１３６】
また、第１のロール軸制御信号生成部２０５及び第２のロール軸制御信号生成部２０７は、第１のロール軸補正信号が第１のロール軸制御信号に合成されるとともに、第２のロール軸補正信号が第２のロール軸制御信号に合成されることによる第１の脚部３及び第２の脚部６の歩幅の変化量を記憶してもよい。第１のロール軸制御信号生成部２０５は、記憶した変化量を第１のロール軸制御信号に加算する。第２のロール軸制御信号生成部２０７は、記憶した変化量を第２のロール軸制御信号に加算する。これにより、記憶部２０４に記憶されている積算補正量をゼロにクリアした際における急激な歩幅の変化を防止することができる。また、第１のロール軸制御信号生成部２０５及び第２のロール軸制御信号生成部２０７は、記憶した変化量を時間の経過とともに減少させてゼロに収束させる。これにより、第１のロール軸制御信号及び第２のロール軸制御信号を基準となる歩幅に戻すことができる。
【０１３７】
また、第１の合成部２０６及び第２の合成部２０９は、２足歩行ロボット１が第１の脚部３及び第２の脚部６の双方により支持されている場合、第１の補正量を算出しなくてもよい。この場合、第１の補正量が算出されないので、積算補正量は固定となる。そのため、第１の合成部２０６は、第１のロール軸制御信号と、記憶部２０４に記憶されている積算補正量を示す第１のロール軸補正信号とを合成した第３のロール軸制御信号を生成する。また、第２の合成部２０９は、第２のロール軸制御信号と、記憶部２０４に記憶されている積算補正量を示す第１のロール軸補正信号とを合成した第４のロール軸制御信号を生成する。
【０１３８】
続いて、本実施の形態における歩行制御装置によるロール方向の歩行動作について説明する。
【０１３９】
図７は、本実施の形態における歩行制御装置によるロール方向の歩行動作について説明するためのフローチャートである。
【０１４０】
まず、ステップＳ２１において、傾斜角度検知部１１は、鉛直線に対する上体部２のロール方向の傾斜角度を検知する。
【０１４１】
次に、ステップＳ２２において、ロール軸傾斜角度取得部２００は、傾斜角度検知部１１によって検知されたロール方向の傾斜角度を取得する。
【０１４２】
次に、ステップＳ２３において、ロール軸補正量積算部２０３は、取得されたロール方向の傾斜角度に基づき上体部２を基準角度に対して所定の角度範囲に維持するために算出された第１の補正量を、第１の補正量が算出されるまでに積算された積算補正量に加算することにより第１のロール軸補正信号を生成する。ロール軸補正量積算部２０３は、積算補正量を記憶部２０４に記憶するとともに、生成した第１のロール軸補正信号を第１の合成部２０６及び補正ゲイン乗算部２０８に出力する。
【０１４３】
次に、ステップＳ２４において、第１のロール軸制御信号生成部２０５は、第１の脚部３及び第２の脚部６のうちの支持脚に対してロール方向の歩行動作を行わせるための第１のロール軸制御信号を生成する。
【０１４４】
次に、ステップＳ２５において、第２のロール軸制御信号生成部２０７は、第１の脚部３及び第２の脚部６のうちの遊脚に対してロール方向の歩行動作を行わせるための第２のロール軸制御信号を生成する。
【０１４５】
次に、ステップＳ２６において、第１の合成部２０６は、第１のロール軸制御信号生成部２０５によって生成された第１のロール軸制御信号に、ロール軸補正量積算部２０３によって生成された第１のロール軸補正信号を加算した第３のロール軸制御信号を生成する。第１の合成部２０６は、生成した第３のロール軸制御信号を、第１の脚部３及び第２の脚部６のうちの支持脚となる脚部を駆動する支持脚側ロール軸アクチュエータ２１０に出力する。
【０１４６】
次に、ステップＳ２７において、補正ゲイン乗算部２０８は、ロール軸補正量積算部２０３によって生成された第１のロール軸補正信号に所定の係数を乗算した第２のロール軸補正信号を生成する。補正ゲイン乗算部２０８は、生成した第２のロール軸補正信号を第２の合成部２０９に出力する。
【０１４７】
次に、ステップＳ２８において、第２の合成部２０９は、第２のロール軸制御信号生成部２０７によって生成された第２のロール軸制御信号に、補正ゲイン乗算部２０８によって生成された第２のロール軸補正信号を加算した第４のロール軸制御信号を生成する。第２の合成部２０９は、生成した第４のロール軸制御信号を、第１の脚部３及び第２の脚部６のうちの遊脚となる脚部を駆動する遊脚側ロール軸アクチュエータ２１１に出力する。
【０１４８】
次に、ステップＳ２９において、支持脚側ロール軸アクチュエータ２１０は、第１の合成部２０６によって生成された第３のロール軸制御信号に基づいて、第１の脚部３及び第２の脚部６のうちの支持脚となる脚部を駆動する。
【０１４９】
次に、ステップＳ３０において、遊脚側ロール軸アクチュエータ２１１は、第２の合成部２０９によって生成された第４のロール軸制御信号に基づいて、第１の脚部３及び第２の脚部６のうちの遊脚となる脚部を駆動する。その後、ステップＳ２１の処理に戻り、歩行制御装置１０によるロール方向の歩行動作が制御される。
【０１５０】
なお、ロール軸制御部２０１は、第３のロール軸制御信号に基づく第１の脚部３又は第２の脚部６の第１の駆動量が、第１の脚部３及び第２の脚部６が干渉する第２の閾値を越えるか否かを判定する第１の判定部と、第４のロール軸制御信号に基づく第１の脚部３又は第２の脚部６の第２の駆動量が第２の閾値を越えるか否かを判定する第２の判定部と、第１の駆動量が第２の閾値を超えると判定された場合、第１の駆動量を第２の閾値より少ない所定の値に変更する第１の変更部と、第２の駆動量が第２の閾値を超えると判定された場合、第２の駆動量を第２の閾値より少ない所定の値に変更する第２の変更部とをさらに備えてもよい。
【０１５１】
このとき、第１の判定部及び第１の変更部は、第２の閾値の符号を第１の駆動量の符号に合わせて変更してもよく、第２の判定部及び第２の変更部は、第２の閾値の符号を第２の駆動量の符号に合わせて変更してもよい。また、第１の判定部は、第１の駆動量の絶対値と第２の閾値とを比較してもよく、第２の判定部は、第２の駆動量の絶対値と第２の閾値とを比較してもよい。
【０１５２】
ここで、従来の歩行制御と本実施の形態における歩行制御との差異について説明する。
【０１５３】
図８は、外力により上体部が傾いた際の従来の歩行制御について説明するための模式図であり、図９は、外力により上体部が傾いた際の本実施の形態の歩行制御について説明するための模式図である。
【０１５４】
図８に示すように、従来の歩行制御装置では、例えば、２足歩行ロボットが片足を接地した状態で横方向から外力を受けた後、上体がθａ度傾いた状態で直立姿勢に復帰した場合、傾きが戻らずに残ったり、傾きがさらに大きくなったりするため、２足歩行ロボットが転倒するおそれがある。
【０１５５】
一方、図９に示すように、本実施の形態の歩行制御装置では、例えば、２足歩行ロボットが片足を接地した状態で横から外力を受けた後、上体がδθ度傾いた状態で直立姿勢に復帰した場合、上体部が垂直になるように傾きが補正されるので、２足歩行ロボットがバランスを崩して転倒するのを防止することができる。
【０１５６】
したがって、本実施の形態の２足歩行ロボットでは、足の裏にセンサを設けなくても、外力に強い歩行動作を実現することができる。また、本実施の形態の歩行制御装置は、従来の歩行制御装置のように目標ＺＭＰへの収束計算が不要となるので、軌道計算を速くすることができる。また、本実施の形態の歩行制御装置は、上体部の任意の動きによる重心位置の変化に対しても対応でき、速い動きにも容易に追従させることができる。さらに、本実施の形態の歩行制御装置は、意図的に前傾させ、前方向の傾きを与えることで、自然に歩行を開始させたり、歩行速度を変えたりすることもできる。
【０１５７】
さらに、特許文献１の歩行制御と本実施の形態における歩行制御との差異について説明する。
【０１５８】
図１０は、倒立振子を用いて特許文献１の歩行制御について説明するための模式図であり、図１１は、倒立振子を用いて本実施の形態の歩行制御について説明するための模式図である。
【０１５９】
まず、特許文献１の歩行制御について説明する。図１０に示すように、時刻ｔ＝０の初期姿勢において、台車位置はＸ０であり、倒立振子の傾きｅは０である。このとき、制御量ＫはＸ０である。次に、時刻ｔ＝１において、台車位置はＸ０であり、倒立振子の傾きｅがθ１になった場合、制御量ＫはＸ０＋αθ１＝Ｘ１となり、倒立振子が傾いた方向に台車を距離（Ｘ１−Ｘ０）移動させる。次に、時刻ｔ＝２において、台車位置はＸ１であり、倒立振子の傾きｅが０になった場合、制御量ＫはＸ０となり、台車を逆方向に距離（Ｘ０−Ｘ１）移動させ、初期位置に戻す。次に、時刻ｔ＝３において、時刻ｔ＝２の制御により台車が初期位置に戻されたことで、傾きｅはθ２となり、傾き補正が無効になる。このとき、通常は、θ１＜θ２になる。
【０１６０】
このように、特許文献１の歩行制御方法は、常に上体部を垂直に維持するものではなく、遊脚が着地する直前まで残った傾き角に歩幅を対応させることで、遊脚が着地した後の安定性を確保している。
【０１６１】
続いて、本実施の形態の歩行制御について説明する。図１１に示すように、時刻ｔ＝０の初期姿勢において、台車位置はＸ０であり、倒立振子の傾きｅは０である。このとき、補正積算値Ｉ＝０であり、制御量Ｋ＝Ｘ０＋Ｉ＝Ｘ０＋０＝Ｘ０である。次に、時刻ｔ＝１において、台車位置はＸ０であり、倒立振子の傾きｅがθ１になった場合、補正積算値Ｉ＝Ｉ＋αθ１となり、制御量Ｋ＝Ｘ０＋Ｉ＝Ｘ０＋αθ１＝Ｘ１となり、倒立振子が傾いた方向に台車を距離（Ｘ１−Ｘ０）移動させる。次に、時刻ｔ＝２において、台車位置はＸ１であり、倒立振子の傾きｅが０になった場合、補正積算値Ｉ＝Ｉ＋０となり、制御量Ｋ＝Ｘ０＋Ｉ＝Ｘ１となり、台車の位置は変わらない。次に、時刻ｔ＝３において、倒立振子の傾きｅが０であれば、台車の位置は変わらず、外力が加わらなければ、倒立振子の傾きｅは０のまま維持される。
【０１６２】
このように、本実施の形態の歩行制御方法では、補正量を積算しているので、補正後に補正量が補正積算値Ｉに加算され、定常値に組み込まれるため、２足歩行ロボットの安定点が保持され、安定したバランス制御を実現することができる。
【０１６３】
つまり、固定的な標準歩行動作に、上体部の傾斜角に対応した補正量を加える従来の制御（比例制御）と、固定的な標準歩行動作に、上体部の傾斜角に対応した補正量の積算値を加える本実施の形態の制御（積分制御）とでは、その挙動は全く異なる。
【０１６４】
なお、上記の実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、ＣＰＵ又はプロセッサなどのプログラム実行部が、ハードディスク又は半導体メモリなどのコンピュータ読み取り可能な記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって各構成要素の動作または機能が実現されてもよい。
【０１６５】
また、各構成要素の動作又は機能を実現するときに利用するデータは、半導体メモリ又はハードディスクなどの書き込み可能な記録媒体に記録されてもよい。
【産業上の利用可能性】
【０１６６】
本開示に係る歩行制御方法、歩行制御プログラム及び２足歩行ロボットは、安定した歩行動作を実現することができ、２足歩行ロボットの歩行動作を制御する歩行制御方法、歩行制御プログラム及び２足歩行ロボットとして有用である。
【符号の説明】
【０１６７】
１    ２足歩行ロボット
２    上体部
３    第１の脚部
６    第２の脚部
１０    歩行制御装置
１１    傾斜角度検知部
１２    第１のピッチ軸アクチュエータ
１３    第２のピッチ軸アクチュエータ
１４    第１のロール軸アクチュエータ
１５    第２のロール軸アクチュエータ
１００    ピッチ軸傾斜角度取得部
１０１    ピッチ軸制御部
１０３    ピッチ軸補正量積算部
１０４    記憶部
１０５    第１のピッチ軸制御信号生成部
１０６    第１の合成部
１０７    第２のピッチ軸制御信号生成部
１０８    第２の合成部
１０９    支持脚側ピッチ軸アクチュエータ
１１０    遊脚側ピッチ軸アクチュエータ
２００    ロール軸傾斜角度取得部
２０１    ロール軸制御部
２０３    ロール軸補正量積算部
２０４    記憶部
２０５    第１のロール軸制御信号生成部
２０６    第１の合成部
２０７    第２のロール軸制御信号生成部
２０８    補正ゲイン乗算部
２０９    第２の合成部
２１０    支持脚側ロール軸アクチュエータ
２１１    遊脚側ロール軸アクチュエータ
【図１】
0006682341.tif 000002
【図２】
0006682341.tif 000003
【図３】
0006682341.tif 000004
【図４】
0006682341.tif 000005
【図５】
0006682341.tif 000006
【図６】
0006682341.tif 000007
【図７】
0006682341.tif 000008
【図８】
0006682341.tif 000009
【図９】
0006682341.tif 000010
【図１０】
0006682341.tif 000011
【図１１】
0006682341.tif 000012