(57)【要約】【課題】本発明は、各関節のモータにおける過負荷やトルクの累積による二足歩行ロボットの故障を防止し、かつ人間らしい静止時の動作を実現することができる二足歩行ロボットの制御方法を提供することを目的とする。【解決手段】本発明は、モータのトルク値が第１所定値以上のときに、トルク値の時間に対する積分値としてトルク累積過負荷値を算出し、トルク累積過負荷値を第２所定値で除算することによりトルク累積過負荷率を算出し、一方の足の膝部のモータにおけるトルク累積過負荷率が第３所定値を超えたときに、当該一方の足の足平と路面の接触部に生じるＺＭＰの位置を他方の足の足平と路面の接触部の位置に移動させることを特徴とする。【選択図】  図３
2006272470.tif 000002
【特許請求の範囲】
【請求項１】
複数の可動関節部を有し、前記可動関節部を駆動する複数のモータを備え、各モータのトルク値を検出する複数のトルク値検出手段を備える二足歩行ロボットの制御方法において、
モータのトルク値が第１所定値以上のときに、前記トルク値の時間に対する積分値としてトルク累積過負荷値を算出し、前記トルク累積過負荷値を第２所定値で除算することによりトルク累積過負荷率を算出し、一方の足の膝部のモータにおける前記トルク累積過負荷率が第３所定値を超えたときに、当該一方の足の足平と路面の接触部に生じるＺＭＰの位置を他方の足の足平と路面の接触部の位置に移動させることを特徴とする二足歩行ロボットの制御方法。
【請求項２】
請求項１に記載する二足歩行ロボットの制御方法において、
第１所定値は、最大連続トルク値であることを特徴とする二足歩行ロボットの制御方法。
【請求項３】
請求項１または請求項２に記載する二足歩行ロボットの制御方法において、
第２所定値は、モータの過負荷保護機能が作動する時のトルク累積過負荷値であることを特徴とする二足歩行ロボットの制御方法。
【請求項４】
請求項１乃至請求項３に記載するいずれか一つの二足歩行ロボットの制御方法による制御を行なう制御装置を備えることを特徴とする二足歩行ロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、二足歩行ロボットの制御方法に関するものである。
【背景技術】
【０００２】
従来技術として、以下のような特許文献１に記載された発明が存在する。特許文献１の発明は、多関節型ロボットの発明であって、関節駆動用のモータの過負荷に対する負荷吸収方法に関するものである。具体的には、例えば、図８に示すようにロボットがうつぶせの状態から起き上がろうとするときに両足が障害物に接触する場合を想定する。このとき、このまま動作を続けようとすると、障害物より反力を受け各関節駆動用のモータに過負荷がかかる。そこで、全身又は該当する部位の関節駆動用のモータの電源を遮断して、関節を脱力させる。
【特許文献１】２００４−２０９６３０号公報（第０１９７、０１９８段落、第２６図）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、特許文献１に記載された発明では、モータの電源遮断や脱力などを行なうため、ロボットの姿勢の変化としては極端な動きになってしまい、人間らしい動作を再現することはできなくなってしまう。
【０００４】
また、日常生活において人間が立ったまま静止をしている状態、例えば、横断用の信号機が赤信号の場合に青信号に変わるのを交差点で待つ場合であっても、人間は直立不動で立っていることはほとんどなく、体を揺らしたり、足を動かしたりなどと何か動作をしている。これは、直立不動の状態を維持しようとするためには、人間の体の各部位の筋肉の動きを硬直させなければならず、この状態を維持することが困難であるからと考えられる。一方、二足歩行ロボットでは当然のごとく筋肉は存在しないので、直立不動の状態を維持することは困難ではない。むしろ、従来の認識からいえば、直立不動で全くの静止状態で立っているほうがロボットらしい静止状態ということがいえる。そのため、従来の認識では、人間が立ったまま静止をしている状態とロボットが立ったまま静止をしている状態では大きな違いがあった。
【０００５】
そこで、いわゆるヒューマノイドロボットの構築を実現するために、二足歩行ロボットが静止している状態においても、人間らしい静止状態を実現するために体を揺らすなどの動作をさせるようにしたい。しかし、ロボットの体を揺らすなどの動作内容によっては各関節のモータに負荷がかかり過ぎてトルク累積負荷値が限界値を超えてしまい、二足歩行ロボットが故障して停止してしまうおそれがある。
【０００６】
そこで本発明は、各関節のモータにおける過負荷やトルクの累積を検出して二足歩行ロボットの故障を防止し、かつ人間らしい静止時の動作を実現することができる二足歩行ロボットの制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
前記目的を達成するために、本発明は以下のような特徴を有する。
（１）本発明は、複数の可動関節部を有し、可動関節部を駆動する複数のモータを備え、各モータのトルク値を検出する複数のトルク値検出手段を備える二足歩行ロボットの制御方法において、モータのトルク値が第１所定値以上のときに、トルク値の時間に対する積分値としてトルク累積過負荷値を算出し、トルク累積過負荷値を第２所定値で除算することによりトルク累積過負荷率を算出し、一方の足の膝部のモータにおけるトルク累積過負荷率が第３所定値を超えたときに、当該一方の足の足平と路面の接触部に生じるＺＭＰの位置を他方の足の足平と路面の接触部の位置に移動させることを特徴とする。
【０００８】
（２）（１）に記載する二足歩行ロボットの制御方法において、第１所定値は、最大連続トルク値であることを特徴とする。
【０００９】
（３）（１）または（２）に記載する二足歩行ロボットの制御方法において、第２所定値は、モータの過負荷保護機能が作動する時のトルク累積過負荷値であることを特徴とする。
【００１０】
（４）二足歩行ロボットにおいて、（１）乃至（３）に記載するいずれか一つの二足歩行ロボットの制御方法による制御を行なう制御装置を備えることを特徴とする。
【発明の効果】
【００１１】
このような特徴を有する本発明は、以下のような作用および効果が得られる。
（１）本発明は、複数の可動関節部を有し、可動関節部を駆動する複数のモータを備え、各モータのトルク値を検出する複数のトルク値検出手段を備える二足歩行ロボットの制御方法において、モータのトルク値が第１所定値以上のときに、トルク値の時間に対する積分値としてトルク累積過負荷値を算出し、トルク累積過負荷値を第２所定値で除算することによりトルク累積過負荷率を算出し、一方の足の膝部のモータにおけるトルク累積過負荷率が第３所定値を超えたときに、当該一方の足の足平と路面の接触部に生じるＺＭＰの位置を他方の足の足平と路面の接触部の位置に移動させるので、モータの内部温度が許容値を超えることがないことから両膝部の関節のモータにおける過負荷やトルクの累積により二足歩行ロボットが故障することを防止することができ、かつ実際のモータの現在の状態に対応して自律的に動作を行うことから歩行を行なっていない状態において人間らしい静止時の動作を実現することができる。
【００１２】
（２）（１）に記載する二足歩行ロボットの制御方法において、第１所定値は、最大連続トルク値であるので、（１）に記載する効果に加えて、モータのトルク値が上昇して連続運転範囲を超えたとしても短時間連続運転範囲での使用である限りモータの内部温度が許容値を超えることがないことから両膝部の関節のモータにおける過負荷やトルクの累積により二足歩行ロボットが故障することを防止することができる。
【００１３】
（３）（１）または（２）に記載する二足歩行ロボットの制御方法において、第２所定値は、モータの過負荷保護機能が作動する時のトルク累積過負荷値であるので、（１）または（２）に記載する効果に加えて、モータの内部温度が許容値を超えることがないことから両膝部の関節のモータにおける過負荷やトルクの累積により二足歩行ロボットが故障することを防止することができる。
【００１４】
（４）二足歩行ロボットにおいて、（１）乃至（３）に記載するいずれか一つの二足歩行ロボットの制御方法による制御を行なう制御装置を備えるので、モータの内部温度が許容値を超えることがないことから両膝部の関節のモータにおける過負荷やトルクの累積により二足歩行ロボットが故障することを防止することができ、かつ実際のモータの現在の状態に対応して自律的に動作を行うことから歩行を行なっていない状態において人間らしい静止時の動作を実現することができる。また、モータのトルク値が上昇して連続運転範囲を超えたとしても短時間連続運転範囲での使用である限りモータの内部温度が許容値を超えることがないことから両膝部の関節のモータにおける過負荷やトルクの累積により二足歩行ロボットが故障することを防止することができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施例について説明する。
【実施例１】
【００１６】
まず、本発明の実施例１として、本発明の制御方法を実現する二足歩行ロボットの構成を説明する。図１は、本発明の制御方法を実現する二足歩行ロボットの一例として、その構成を示すスケルトン図である。図１に示すように、本実施例の二足歩行ロボットは、左右の股関節にそれぞれ２軸（符号１，２，６，７）の自由度を持ち、以下同様に、腰の部分の関節に１軸（符号１７）、左右の膝関節にそれぞれ１軸（符号３，８）、左右の足首関節にそれぞれ２軸（符号４，５，９，１０）、左右の肩関節にそれぞれ２軸（符号１１，１２，１４，１５）、左右の肘関節にそれぞれ１軸（符号１３，１６）の自由度を持つ。各関節にエンコーダ付きのモータを備えており、関節角を調節でき、関節角を計測することができる。
【００１７】
また、二足歩行ロボットの歩行などの動作を制御するため、コンピュータ装置が二足歩行ロボット内に内蔵されている。図２は、このコンピュータ装置の概要を示す図である。図２に示す足先軌道記憶部には、二足歩行ロボットの両足の足先軌道が記憶されている。足先位置指令値生成部では、足先軌道記憶部の記憶内容を参照して両足の位置を指令する指令値を生成する。
【００１８】
そして、目標ＺＭＰ位置計算部は、接地足の位置の情報（即ち足先位置指令値生成部が生成した情報）に基づいて目標ＺＭＰ位置（これをＺＭＰＴと記載する）を計算する。ここでＺＭＰとは、ロボットが床から受ける反力によるモーメントがゼロになる点をいい、ＺＭＰが接地足の足平内にあればロボットは転倒しない。そのため、ＺＭＰＴは接地足の足平内にあるように計算される。即ち、ＺＭＰＴの軌道は、接地足の足平内から次の接地足の足平内に順次移動していくようになる。実際のＺＭＰがＺＭＰＴに一致し、接地足の足平内から次の接地足の足平内に順次移動していけば、二足歩行ロボットは転倒することなく歩行を続けることができる。
【００１９】
このような構成を有する二足歩行ロボットの作用の概要について、図３にフローチャートを示す。このフローチャートの内容について説明する。まず、ステップ１（Ｓ１）では次の動作指令値が来たか否かを判断する。そして、動作指令値が来た場合には、次の動作指令値の動作（歩行動作）を実行する。一方、動作指令値が来なかった場合には、ステップ２（Ｓ２）に進む。ステップ２（Ｓ２）では、二足歩行ロボットが一定時間以上歩行動作を行なっていないか否かを判断する。なお、以降に説明するように、体を左右に揺らすなどの動作を行なうので厳密には「静止している」状態とはいえないが、以降は説明の便宜上、「歩行を行なっていない」という表現を簡略化して、「静止している」という表現で説明する。
【００２０】
ステップ２において二足歩行ロボットの静止している状態がまだ一定時間未満であると判断される場合にはステップ１（Ｓ１）に戻る。一方、二足歩行ロボットの静止している状態が一定時間以上続いた場合にはステップ３（Ｓ３）に進む。次に、ステップ３（Ｓ３）では、膝部のモータ（３，８）のトルクの累積率（以下、トルク過負荷累積率という）が所定のしきい値以上であるか否かを判断する。そして、膝部のモータ（３，８）のトルク過負荷累積率が所定のしきい値を超えていない場合には、ステップ１（Ｓ１）に戻る。一方、膝部のモータ（３，８）のトルク過負荷累積率が所定のしきい値を超えている場合には、ステップ４（Ｓ４）に進む。ステップ４（Ｓ４）では、ＺＭＰの位置を移動させて一方の膝に傾いた姿勢を他方の膝に傾かせるようにし、二足歩行ロボットの姿勢を変更する。そして、ステップ４（Ｓ４）からステップ１（Ｓ１）に戻り、以上のような動作を繰り返す。
【００２１】
特に本発明は、図３に示す点線で囲まれる領域における動作に関するものであり、具体的には、二足歩行ロボットが所定の位置で静止して立ち続ける状態における動作についての発明である。今、図４のような直立不動の状態から、図５のように右足の方向に体を傾け、右足の位置にＺＭＰが存在する状態を考える。ここで、一方の足に体を傾けるときにモータに最も負荷がかかるのは図１に示す膝部のモータ（３，８）であることから、両膝部のモータ（３，８）のトルク値に着目する。ここで、モータのトルク値はモータに流れる電流を計測することにより計算される。
【００２２】
一般にモータの運転範囲として、連続運転範囲というものが存在する。そして、この連続運転範囲でモータを連続運転する限りは、内部温度が許容を超えないのでモータに不具合が生じないとされている。
【００２３】
そして、実施例１ではこの連続運転範囲内でモータを運転させる場面を想定している。そして、具体的には、モータの出力軸のトルク値が所定値Ｔ１を超えた場合には、そのトルク値の時間に対する積分値として、まずトルク累積過負荷値を算出する。なお、トルク累積負荷値は一旦所定値Ｔ１を下回ると、その値がゼロにリセットされるものである。図９においては、斜線部に示す面積のＲ１が本実施例におけるトルク累積負荷値に該当する。そして、算出したトルク累積過負荷値Ｒ１を所定のトルク累積過負荷値ＳＲで除算してトルク累積過負荷率を算出する。ここで、所定のトルク累積過負荷値ＳＲとしては、任意に定めるものであり、例えばモータの寿命に影響がでない値にする。
【００２４】
そして、この算出したトルク累積過負荷率が所定値を超えた場合には、前記のようにＺＭＰの位置を移動させて姿勢を変更させる。ここで、トルク累積過負荷率の所定値は、二足歩行ロボットに使用されるモータの種類や容量によって任意に決められるものであり、前記のようにＺＭＰの位置を移動させて姿勢を変更させることにより、二足歩行ロボットが人間らしい静止状態を実現できるときの値である。なお、判断対象をトルク累積過負荷率とするのは、モータのトルク累積過負荷値には個体差があり一定ではないためである。
【００２５】
具体的に二足歩行ロボットが右膝と左膝のいずれか一方に姿勢を傾けながら静止している状態では、右膝と左膝のトルク累積過負荷率は時間の経過とともに図７のように示される。そこで、右膝のトルク累積過負荷率が所定のトルク累積過負荷率を超えたときには、図６に示すように体の姿勢を左足方向に傾けて左足の足平の位置にＺＭＰが存在するような状態にする。このように、両膝のモータのトルク累積過負荷率をもとに二足歩行ロボットの体の姿勢を右足方向と左足方向に交互に傾けることにより、二足歩行ロボットが自律的に体の姿勢を揺らすことになる。そのため、人間らしい自立動作を実現することができる。
【００２６】
以上のような実施例により、以下の効果が得られる。
（１）本発明は、複数の可動関節部を有し、可動関節部を駆動する複数のモータを備え、各モータのトルク値を検出する複数のトルク値検出手段を備える二足歩行ロボットの制御方法において、モータのトルク値が所定値Ｔ１以上のときに、トルク値の時間に対する積分値としてトルク累積過負荷値Ｒ１を算出し、トルク累積過負荷値Ｒ１を所定のトルク累積過負荷値ＳＲで除算することによりトルク累積過負荷率を算出し、一方の足の膝部のモータ（３，８）におけるトルク累積過負荷率が所定値を超えたときに、当該一方の足の足平と路面の接触部に生じるＺＭＰの位置を他方の足の足平と路面の接触部の位置に移動させるので、モータの内部温度が許容値を超えることがないことから両膝部の関節のモータ（３，８）における過負荷やトルクの累積により二足歩行ロボットが故障するのを防止することができ、かつ実際のモータの現在の状態に対応して自律的に動作を行うことから歩行を行なっていない状態において人間らしい静止時の動作を実現することができる。
【００２７】
（２）二足歩行ロボットにおいて、（１）に記載する二足歩行ロボットの制御方法による制御を行なう制御装置を備えるので、モータの内部温度が許容値を超えることがないことから両膝部の関節のモータ（３，８）における過負荷やトルクの累積により二足歩行ロボットが故障するのを防止することができ、かつ実際のモータの現在の状態に対応して自律的に動作を行うことから歩行を行なっていない状態において人間らしい静止時の動作を実現することができる。
【実施例２】
【００２８】
実施例２は、二足歩行ロボットの構成や作用はほぼ実施例１と共通する。そこで、共通する内容についての説明は省略し、ここでは、異なる内容についてのみ説明をする。
【００２９】
一般にモータの特性値として、最大連続トルク値というものが存在する。そして、モータの出力軸のトルク値がこの最大連続トルク値を超えて長時間運転し続けると、モータの内部温度が上昇して巻き線などの過熱を引き起こし、モータが故障するおそれがある。ただし、モータの出力軸のトルク値がこの最大連続トルク値を超えて運転し続けたとしても、長時間に及ばなければ上記のような不具合が生じるおそれはない。そして、このようなモータの使用範囲を短時間連続運転範囲という。
【００３０】
そこで、実施例２では、例えば二足歩行ロボットが大型化することにより、各関節部に配置されるモータに生じるトルク値が非常に大きくなってしまう状況を想定する。そして、このような状況下でモータが最大連続トルク値を超えた場合であっても、モータの内部温度が上昇して巻き線などの過熱を引き起こしモータが故障するおそれがないようにモータを短時間連続運転範囲で使用できるようにすることを目的とする。具体的には、モータの出力軸のトルク値が最大連続トルク値Ｔ２を超えた場合には、そのトルク値の時間に対する積分値として、まずトルク累積過負荷値を算出する。なお、トルク累積値は一旦最大連続トルク値Ｔ２を下回ると、その値がゼロにリセットされるものである。図９においては、斜線部に示す面積のＲ２が本実施例におけるトルク累積負荷値に該当する。そして、算出したトルク累積過負荷値Ｒ２を所定のトルク累積過負荷値ＳＲ２で除算してトルク累積過負荷率を算出する。ここで、モータのトルク累積負荷値が上昇して内部温度が上昇しすぎると、巻き線などの過熱を引き起こすことによりモータが故障するおそれがある。そこで、前記の所定のトルク累積過負荷値ＳＲ２を、自動的にモータへ流れる電流を遮断してモータを停止させる過負荷保護機能が作動する時のトルク累積過負荷値とする。なお、所定のトルク累積過負荷値ＳＲ２は、モータの種類や容量などにより異なるものである。
【００３１】
そして、この算出したトルク累積過負荷率が所定値を超えた場合には、これ以上モータに負荷をかけ続けるとモータに過負荷がかかり停止してしまうおそれがあると判断する。そして、この場合には、前記のようにＺＭＰの位置を移動させて姿勢を変更させる。ここで、トルク累積過負荷率の所定のしきい値は、二足歩行ロボットに使用されるモータの種類や容量によって任意に決められるものであり、前記のようにＺＭＰの位置を移動させて姿勢を変更させることにより、二足歩行ロボットが人間らしい静止状態を実現できるときの値である。なお、判断対象をトルク累積過負荷率とするのは、モータのトルク累積過負荷値には個体差があり一定ではないためである。
【００３２】
以上のような実施例により、以下の効果が得られる。
（１）本発明は、複数の可動関節部を有し、可動関節部を駆動する複数のモータを備え、各モータのトルク値を検出する複数のトルク値検出手段を備える二足歩行ロボットの制御方法において、モータのトルク値が最大連続トルク値Ｔ２以上のときに、トルク値の時間に対する積分値としてトルク累積過負荷値Ｒ２を算出し、トルク累積過負荷値Ｒ２をモータの過負荷保護機能が作動する時のトルク累積過負荷値ＳＲ２で除算することによりトルク累積過負荷率を算出し、一方の足の膝部のモータ（３，８）におけるトルク累積過負荷率が所定値を超えたときに、当該一方の足の足平と路面の接触部に生じるＺＭＰの位置を他方の足の足平と路面の接触部の位置に移動させるので、モータのトルク値が上昇して連続運転範囲を超えたとしても短時間連続運転範囲での使用である限りモータの内部温度が許容値を超えることがないことから両膝部の関節のモータ（３，８）における過負荷やトルクの累積により二足歩行ロボットが故障するのを防止することができ、かつ実際のモータの現在の状態に対応して自律的に動作を行うことから歩行を行なっていない状態において人間らしい静止時の動作を実現することができる。
【００３３】
（２）二足歩行ロボットにおいて、（１）に記載する二足歩行ロボットの制御方法による制御を行なう制御装置を備えるので、モータのトルク値が上昇して連続運転範囲を超えたとしても短時間連続運転範囲での使用である限りモータの内部温度が許容値を超えることがないことから両膝部の関節のモータ（３，８）における過負荷やトルクの累積により二足歩行ロボットが故障するのを防止することができ、かつ実際のモータの現在の状態に対応して自律的に動作を行うことから歩行を行なっていない状態において人間らしい静止時の動作を実現することができる。
【００３４】
尚、本発明は前記実施形態に限定されるものではなく、その趣旨を逸脱しない範囲で様々な変更が可能である。
【図面の簡単な説明】
【００３５】
【図１】二足歩行ロボットのスケルトン図である。
【図２】コンピュータ装置の概要図である。
【図３】二足歩行ロボットの作用を表すフローチャート図である。
【図４】二足歩行ロボットが真っ直ぐな姿勢で立っている様子を示す図である。
【図５】二足歩行ロボットが右足の方向に体を傾けて立っている様子を示す図である。
【図６】二足歩行ロボットが左足の方向に体を傾けて立っている様子を示す図である。
【図７】時間ごとのトルク累積過負荷率の変化を示す図である。
【図８】特許文献１の発明において、両足で異物を挟み込んだうつぶせの状態から二足歩行ロボットが起き上がろうとする図である。
【図９】トルク累積過負荷値についての説明図である。
【符号の説明】
【００３６】
１〜１７  軸（アクチュエータ）
Ｔ１  所定値
Ｔ２  最大連続トルク値
Ｒ１  トルク累積負荷値
Ｒ２  トルク累積過負荷値
ＳＲ１  所定のトルク累積過負荷値
ＳＲ２  所定のトルク累積過負荷値
【図１】
2006272470.tif 000003
【図２】
2006272470.tif 000004
【図３】
2006272470.tif 000005
【図４】
2006272470.tif 000006
【図５】
2006272470.tif 000007
【図６】
2006272470.tif 000008
【図７】
2006272470.tif 000009
【図８】
2006272470.tif 000010
【図９】
2006272470.tif 000011