(57)【特許請求の範囲】
【請求項１】
上体から２つの可動脚が下方に延設された脚式移動ロボットにおいて、該ロボットの歩行時又は直立停止時に該ロボットが転倒しそうな状態であるか否かを判断する転倒判断手段と、該転倒判断手段により該ロボットが転倒しそうな状態であると判断されたとき、該ロボットの各可動脚の関節に備えたアクチュエータを、該ロボットの重心を下げるように制御するアクチュエータ制御手段とを備えたことを特徴とする脚式移動ロボットの制御装置。
【請求項２】
前記アクチュエータは前記ロボットに搭載されたバッテリを電源とする電動式アクチュエータにより構成されていると共に、前記バッテリの残容量を認識する残容量認識手段を備え、前記転倒判断手段は、該残容量認識手段により認識された前記バッテリの残容量が所定量以下に低下したとき、前記ロボットが転倒しそうな状態であると判断することを特徴とする請求項１記載の脚式移動ロボットの制御装置。
【請求項３】
前記電動式アクチュエータは、前記アクチュエータ制御手段によって該ロボットの重心を下げるように制御された際の該電動モータの回生発電電力を前記バッテリに充電するように該バッテリに接続されていることを特徴とする請求項２記載の脚式移動ロボットの制御装置。
【請求項４】
前記バッテリの正負の両極間にダイオードを介して接続されたコンデンサを備えると共に前記ダイオードは前記コンデンサからバッテリへの電流の流れを阻止するように設けられ、前記電動式アクチュエータは、前記アクチュエータ制御手段によって該ロボットの重心を下げるように制御された際の該電動式アクチュエータの回生発電電力を前記コンデンサに充電するように該コンデンサに接続されていることを特徴とする請求項２記載の脚式移動ロボットの制御装置。
【請求項５】
前記アクチュエータ制御手段が前記ロボットの重心を下げるように前記アクチュエータを制御している際に、その制御の直前又はその制御の前後の所定期間の該ロボットの動作状態を該ロボットに備えた不揮発性の記憶手段又は該ロボットの外部に備えた記憶手段に記憶させるべく、該動作状態を該記憶手段に出力する動作状態出力手段を備えたことを特徴とする請求項３又は４記載の脚式移動ロボットの制御装置。
【請求項６】
前記ロボットに備えた機器の異常発生の有無を監視する機器異常監視手段を備え、前記転倒判断手段は、該機器異常監視手段により前記機器の異常発生が認識されたとき、前記ロボットが転倒しそうな状態であると判断することを特徴とする請求項１乃至５のいずれかに記載の脚式移動ロボットの制御装置。
【請求項７】
前記ロボットの上体の傾斜姿勢を検出する上体傾斜姿勢検出手段と、該上体傾斜姿勢検出手段により検出された該ロボットの上体の傾斜姿勢と該ロボットに所要の動作を行わしめるべく定められた該ロボットの上体の目標傾斜姿勢との偏差を求める上体姿勢偏差算出手段とを備え、前記転倒判断手段は、該上体姿勢偏差算出手段により求められた前記ロボットの上体の傾斜姿勢の前記目標傾斜姿勢との偏差が所定量以上大きいとき、又は、該ロボットの上体の傾斜姿勢が前記目標傾斜姿勢から離間する方向で該偏差の時間的変化度合いが所定量以上大きいとき、又は、前記偏差及びその時間的変化度合いの重み付平均の値が所定量以上大きいとき、前記ロボットが転倒しそうな状態であると判断することを特徴とする請求項１乃至６のいずれかに記載の脚式移動ロボットの制御装置。
【請求項８】
前記ロボットの上体の傾斜姿勢を検出する上体傾斜姿勢検出手段と、該上体傾斜姿勢検出手段により検出された該ロボットの上体の傾斜姿勢と該ロボットに所要の動作を行わしめるべく定められた該ロボットの上体の目標傾斜姿勢との偏差を求める上体姿勢偏差算出手段と、該上体姿勢偏差算出手段により求められた前記ロボットの上体の傾斜姿勢の前記目標傾斜姿勢との偏差に基づき、該ロボットの上体の傾斜姿勢を前記目標傾斜姿勢側に戻すように該ロボットにその前記可動脚を介して床から作用させるべき床反力を求める姿勢安定化用床反力算出手段と、該姿勢安定化用床反力算出手段により求められた床反力に基づき、前記可動脚の足平部の位置及び／又は姿勢を修正する足平位置／姿勢修正手段とを備え、前記転倒判断手段は、前記姿勢安定化用床反力算出手段により求められた床反力が所定量以上大きいとき、前記ロボットが転倒しそうな状態であると判断することを特徴とする請求項１乃至６のいずれかに記載の脚式移動ロボットの制御装置。
【請求項９】
前記ロボットは可動腕を備え、前記転倒判断手段により該ロボットが転倒しそうな状態であると判断されたとき、前記可動腕を着床させるように該可動腕の関節に備えたアクチュエータを制御する手段を備えたことを特徴とする請求項１乃至８のいずれかに記載の脚式移動ロボットの制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、脚式移動ロボットの制御装置に関する。
【０００２】
【従来の技術】
二足歩行型ロボット等の脚式移動ロボットは、据置き型の産業用ロボット等と異なり、複数の可動脚の着床／離床動作を行って移動しながら、それらの可動脚により自身を床上に支持するものであるため、種々様々の要因によって、転倒を生じ易い。
【０００３】
例えばロボットの移動中、あるいは起立停止中に、何らかの物体との衝突等により予期しない外力が該ロボットに作用したり、移動中に床の予期しない突起物や窪みを踏んだりして該ロボットがバランスを崩したような場合には、該ロボットがその上体を可動脚により支えきれなくなって、該ロボットの転倒を生じることがある。
【０００４】
尚、例えば二側歩行型ロボットでは、ロボット自身に自己の姿勢を自律的に安定化するような機能を持たせたものが既に本願出願人により提案されているが（例えば特願平９−３３１７６号）、このようなものでも、ロボットが予期しない外力等によって過度にバランスを崩した場合には、該ロボットの転倒を生じることがある。
【０００５】
また、可動脚の関節に備えたアクチュエータとして電源式のものを用いると共に、このアクチュエータの電源としてロボットに搭載したバッテリを用いるものでは、該バッテリの残容量が少なくなり過ぎると、可動脚のアクチュエータを駆動して該可動脚の所要の動作を行わせることができなくなって、該ロボットの転倒を生じることがある。
【０００６】
さらに、ロボットの動作中に、可動脚のアクチュエータや可動脚のアクチュエータの動作制御を行うための各種センサ等の機器の故障が生じた場合にも、可動脚のアクチュエータを駆動して該可動脚の所要の動作を行わせることができなくなって、該ロボットの転倒を生じることがある。
【０００７】
このように脚式移動ロボットは、種々の要因により転倒の可能性を伴うものであるが、該ロボットは一般に重量物であるため、その転倒を生じた場合には、該ロボットの損傷や、あるいはその転倒時にロボットがぶつかる相手側の物体の損傷を生じやすい。特に、二足歩行型ロボットでは、その通常的な移動時や直立停止時における上体の位置が比較的高いため、転倒時に該ロボットあるいは相手側の物体が受ける損傷も大きなものとなり易い。
【０００８】
このため、この種の脚式移動ロボットでは、その転倒時に該ロボットや相手側の物体が受ける損傷を可能な限り軽減することができるようにすることが望まれいた。
【０００９】
【発明が解決しようとする課題】
本発明はかかる不都合を解消し、脚式移動ロボットが転倒しそうな状況で、その転倒により該ロボットが受ける損傷や、その転倒時に該ロボットが衝突する相手側の物体の損傷を可能な限り軽減することができる脚式移動ロボットの制御装置を提供することを目的とする。
【００１０】
【課題を解決するための手段】
本発明の脚式移動ロボットの制御装置はかかる目的を達成するために、上体から２つの可動脚が下方に延設された脚式移動ロボットにおいて、該ロボットの歩行時又は直立停止時に該ロボットが転倒しそうな状態であるか否かを判断する転倒判断手段と、該転倒判断手段により該ロボットが転倒しそうな状態であると判断されたとき、該ロボットの各可動脚の関節に備えたアクチュエータを、該ロボットの重心を下げるように制御するアクチュエータ制御手段とを備えたことを特徴とする。
【００１１】
かかる本発明によれば、前記転倒判断手段によって、ロボットは転倒しそうな状態であると判断されたときには、前記アクチュエータ制御手段によって、ロボットの重心を下げるように各可動脚の関節のアクチュエータが制御されるので、ロボットが転倒しそうな状況が軽減され、さらに、その後、ロボットが転倒しても該ロボットが受ける損傷が比較的小さなものとなると同時に、その転倒時に該ロボットが衝突する床等の物体の損傷も比較的小さなものとなる。
【００１２】
従って、本発明によれば、脚式移動ロボットが転倒しそうな状況で、その転倒により該ロボットが受ける損傷や、その転倒時に該ロボットが衝突する相手側の物体の損傷を可能な限り軽減することができる。
【００１３】
かかる本発明では、例えば前記アクチュエータが前記ロボットに搭載されたバッテリを電源とする電動式アクチュエータにより構成されている場合には、前記バッテリの残容量を認識する残容量認識手段を備え、前記転倒判断手段は、該残容量認識手段により認識された前記バッテリの残容量が所定量以下に低下したとき、前記ロボットが転倒しそうな状態であると判断する。
【００１４】
すなわち、前記アクチュエータが前記ロボットに搭載されたバッテリを電源とする電動式アクチュエータにより構成されている場合には、前記バッテリの残容量が不足すると、前記アクチュエータを所望通りに動作させることができなくなって、ロボットの転倒を生じる虞れがある。そこで、前記残容量認識手段によって認識されるバッテリの残容量が所定量以下に低下して、該残容量がある程度少なくなったときに、前記転倒判断手段によって、ロボットが転倒しそうな状態であると判断することで、ロボットの転倒に備えて該ロボットの重心を下げるように各可動脚のアクチュエータを制御する動作を的確なタイミングで行うことができる。また、このとき、ロボットの重心を下げるように各可動脚のアクチュエータを制御することで、ロボットの位置エネルギーが減少するため、可動脚のアクチュエータの駆動に要する電力がトータル的に減少し、バッテリの負荷が軽減される。従って、ロボットの転倒に備えて該ロボットの重心を下げるように各可動脚のアクチュエータを制御する動作を、バッテリの残容量が少ない状態でも行うことができる。
【００１５】
この場合、ロボットの重心を下げるように各可動脚のアクチュエータを制御したとき、ロボットの位置エネルギーが減少するため、基本的には、各可動脚の電動式のアクチュエータの中には、回生発電状態になるものが存する。
【００１６】
そこで、本発明において上記のようにバッテリを備えた場合にあっては、前記電動式アクチュエータは、前記アクチュエータ制御手段によって該ロボットの重心を下げるように制御された際の該電動式アクチュエータの回生発電電力を前記バッテリに充電するように該バッテリに接続する。このようにすることで、バッテリの残容量が上記所定量以下に低下したときに、前記回生発電電力によってバッテリの容量がある程度回復するため、可能な限り十分にロボットの重心を下げるように各可動脚のアクチュエータを動作させることができ、ひいてはその後にロボットが転倒しても、該ロボット等が受ける損傷を可能な限り軽減することができる。
【００１７】
あるいは、より好ましくは、前記バッテリの正負の両極間にダイオードを介して接続されたコンデンサを備えると共に前記ダイオードは前記コンデンサからバッテリへの電流の流れを阻止するように設けられ、前記電動式アクチュエータは、前記アクチュエータ制御手段によって該ロボットの重心を下げるように制御された際の該電動モータの回生発電電力を前記コンデンサに充電するように該コンデンサに接続する。すなわち、前述のように前記回生発電電力をバッテリに充電するようにしたとき、該バッテリの残容量が大きく低下しているような状態では、該回生発電電力の大部分がバッテリによって消耗され、ロボットの重心を下げる際に電力消費を要する可動脚のアクチュエータに必要な電力を供給することができないという事態が生じる場合もある。そこで、前記のようにバッテリの正負の両極間にダイオードを介して接続されたコンデンサに前記回生発電電力を充電するようにすることで、該回生発電電力は、バッテリによって消耗されることはないので、該回生発電電力をロボットの重心を下げる動作のために効果的に使用することができる。
【００１８】
さらに、上記のように可動脚の回生発電電力を活用する場合、前記アクチュエータ制御手段が前記ロボットの重心を下げるように前記アクチュエータを制御している際に、その制御の直前又はその制御の前後の所定期間の該ロボットの動作状態を該ロボットに備えた不揮発性の記憶手段又は該ロボットの外部に備えた記憶手段に記憶させるべく、該動作状態を該記憶手段に出力する動作状態出力手段を備えておくことで、前記アクチュエータの回生発電電力を利用してロボットの重心を下げるようにアクチュエータを制御する直前の該ロボットの動作状態を該ロボットに備えた不揮発性の記憶手段又は該ロボットの外部に備えた記憶手段に記憶させることもできる。そして、このようにロボットの動作状態を記憶しておくことで、ロボットが正常に動作可能な状態に復帰した後に、該ロボットを元の状態から動作させることが可能となる。また、記憶手段に記憶保持した動作状態のデータを、ロボットの異常あるいは故障の原因の解析等のために活用することが可能となる。
【００１９】
また、本発明では、前記ロボットに備えた機器の異常発生の有無を監視する機器異常監視手段を備え、前記転倒判断手段は、該機器異常監視手段により前記機器の異常発生が認識されたとき、前記ロボットが転倒しそうな状態であると判断する。すなわち、例えば前記アクチュエータの故障、ロボットを制御するための各種センサの故障、あるいは電気配線の断線等、ロボットに備えた機器の異常が生じた場合には、前記アクチュエータを正常に動作させることができなくなってロボットの転倒の虞れがある。従って、前記機器異常監視手段によって、機器の異常発生が認識されたときに、ロボットが転倒しそうな状態であると判断することで、ロボットの転倒に備えて該ロボットの重心を下げるように各可動脚のアクチュエータを制御する動作を的確なタイミングで行うことができる。
【００２０】
また、本発明において、前記ロボットの上体の傾斜姿勢を検出する上体傾斜姿勢検出手段と、該上体傾斜姿勢検出手段により検出された該ロボットの上体の傾斜姿勢と該ロボットに所要の動作を行わしめるべく定められた該ロボットの上体の目標傾斜姿勢との偏差を求める上体姿勢偏差算出手段とを備えたときには、前記転倒判断手段は、該上体姿勢偏差算出手段により求められた前記ロボットの上体の傾斜姿勢の前記目標傾斜姿勢との偏差が所定量以上大きいとき、又は、該ロボットの上体の傾斜姿勢が前記目標傾斜姿勢から離間する方向で該偏差の時間的変化度合いが所定量以上大きいとき、又は、前記偏差及びその時間的変化度合いの重み付平均の値が所定量以上大きいとき、前記ロボットが転倒しそうな状態であると判断する。すなわち、前記上体姿勢偏差算出手段により求められた前記ロボットの上体の傾斜姿勢の前記目標傾斜姿勢との偏差が大きい状態は、ロボットの上体が本来のあるべき姿勢に対して傾き過ぎている状態であり、また、上体の傾斜姿勢が目標傾斜姿勢から離間する方向で上記偏差の時間的変化度合いが大きい状態は、ロボットの上体の姿勢が予期しない外力等によって本来のあるべき姿勢から急速に崩れていく状態であるから、該ロボットの姿勢のバランスが崩れて該ロボットが転倒する虞れがある。従って、上記偏差やその時間的変化度合い、あるいはこれらの重み付平均の値が所定量以上大きくなったときに、ロボットが転倒しそうな状態であると判断することで、ロボットの転倒に備えて該ロボットの重心を下げるように各可動脚のアクチュエータを制御する動作を的確なタイミングで行うことができる。
【００２１】
また、本発明において、前記ロボットの上体の傾斜姿勢を検出する上体傾斜姿勢検出手段と、該上体傾斜姿勢検出手段により検出された該ロボットの上体の傾斜姿勢と該ロボットに所要の動作を行わしめるべく定められた該ロボットの上体の目標傾斜姿勢との偏差を求める上体姿勢偏差算出手段と、該上体姿勢偏差算出手段により求められた前記ロボットの上体の傾斜姿勢の前記目標傾斜姿勢との偏差に基づき、該ロボットの上体の傾斜姿勢を前記目標傾斜姿勢側に戻すように該ロボットにその前記可動脚を介して床から作用させるべき床反力を求める姿勢安定化用床反力算出手段と、該姿勢安定化用床反力算出手段により求められた床反力に基づき、前記可動脚の足平部の位置及び／又は姿勢を修正する足平位置／姿勢修正手段とを備えた場合にあっては、前記転倒判断手段は、前記姿勢安定化用床反力算出手段により求められた床反力が所定量以上大きいとき、前記ロボットが転倒しそうな状態であると判断する。
【００２２】
すなわち、ロボットの上体の傾斜姿勢の前記目標傾斜姿勢との偏差に基づき、ロボットの上体の傾斜姿勢を前記目標傾斜姿勢側に戻すように該ロボットにその前記可動脚を介して床から作用させるべき床反力を求め、その求めた床反力に基づき、前記可動脚の足平部の位置及び／又は姿勢を修正する場合には、基本的には、該ロボットは自律的に自己の姿勢を安定化するように足平部の位置及び／又は姿勢を修正するのであるが、このとき、上記床反力が過大であるということは、該ロボットの姿勢を安定化するためには、前記可動脚の足平部の位置及び／又は姿勢を大幅に修正する必要があるか、もしくは、実際上、ロボットの姿勢を安定な姿勢状態に復元することができない程、ロボットの姿勢のバランスが崩れている状態を意味する。従って、前記床反力所定量以上大きいとき、前記ロボットが転倒しそうな状態であると判断することで、ロボットの転倒に備えて該ロボットの重心を下げるように各可動脚のアクチュエータを制御する動作を的確なタイミングで行うことができる。
【００２３】
さらに、本発明では、前記ロボットが可動腕を備えるときには、前記転倒判断手段により該ロボットが転倒しそうな状態であると判断されたとき、前記可動腕を着床させるように該可動腕の関節に備えたアクチュエータを制御する手段を備えることが好ましい。
【００２４】
これによれば、ロボットが転倒しそうな状況では、該ロボットの重心が下げるように各可動脚が動作すると同時に、可動腕が着床するように動作するため、ロボットの転倒に際して該ロボット等が受ける損傷をさらに効果的に軽減することができる。
【００２５】
【発明の実施の形態】
本発明の第１の実施形態を図１乃至図７を参照して説明する。
【００２６】
まず、図１は本実施形態におけるロボットの全体構成を示す側面図であり、本実施形態でのロボットＲは二足歩行型の脚式移動ロボットである。このロボットＲは、頭部１を上端部に支持する胴体２（ロボットＲの上体）の下部から一対の可動脚３（図では便宜上、一本の可動脚３のみを示す）が下方に延設され、また、胴体２上部の左右両側部から一対の可動腕４（図では便宜上、一本の可動腕４のみを示す）が延設されている。
【００２７】
各可動脚３は、その胴体２との連結箇所（股関節）と膝関節と足首関節とにそれぞれ股関節アクチュエータ５ａ、膝関節アクチュエータ５ｂ及び足首関節アクチュエータ５ｃを備え、さらに、足首関節アクチュエータ５ｃの下側には、６軸力センサ６を介して足平部７が取着されている。
【００２８】
この場合、本実施形態では、股関節アクチュエータ５ａは、ロボットＲの前後、左右及び上下方向の３軸回りの回転動作を行うもので、３個の電動モータ（電動式アクチュエータ。図１では図示省略）により構成されている。また、膝関節アクチュエータ５ｂは、左右方向の１軸回りの回転動作を行うもので、１個の電動モータ（図１では図示省略）により構成されている。さらに、足首関節アクチュエータ５ｃは前後及び左右方向の２軸回りの回転動作を行うもので、２個の電動モータ（図１では図示省略）により構成されている。そして、これらの各アクチュエータ５ａ〜５ｃを駆動することで、人間の脚とほぼ同様の可動脚３の動作（足平部７の６自由度の動作）を行うことができるようになっている。尚、前記６軸力センサ６は、各可動脚３の動作制御を行うために足平部７への作用力（ロボットＲの前後、左右及び上下の３軸方向の力（並進力）成分及びモーメント成分）を検出するものである。
【００２９】
このような可動脚３の構造と同様に、各可動腕４は、胴体２との連結箇所（肩関節）と肘関節と手首関節とにそれぞれ肩関節アクチュエータ８ａ、肘関節アクチュエータ８ｂ及び手首関節アクチュエータ８ｃを備え、該手首関節アクチュエータ８ｃに６軸力センサ９を介してハンド１０が取着されている。
【００３０】
この場合、肩関節アクチュエータ８ａは、前後、左右及び上下方向の３軸回りの回転動作、肘関節アクチュエータ８ｂは、ロボットＲの左右方向の１軸回りの回転動作、手首関節アクチュエータ８ｃは前後、左右及び上下方向の３軸回りの回転動作を行うもので、前記可動脚３のアクチュエータ５ａ〜５ｃと同様に、各アクチュエータ８ａ〜８ｃはそれぞれの回転動作の自由度と同数の電動モータ（図１では図示省略）により構成されている。
【００３１】
また、胴体２には、前記各可動脚３の各アクチュエータ５ａ〜５ｃを駆動・制御するロボット脚制御装置１１（可動脚３のアクチュエータ制御手段）と、前記各可動腕４の各アクチュエータ８ａ〜８ｃを駆動制御するロボット腕制御装置１２と、ロボットＲが転倒しそうな状況での異常処理を行う異常処理装置１３と、ロボットＲの上体（胴体２）の傾斜姿勢（傾斜角）を図示しない加速度センサやレートジャイロを用いて検出する傾斜検出器１４（上体傾斜姿勢検出手段）と、前記各アクチュエータ５ａ〜５ｃ，８ａ〜８ｃやロボット脚制御装置１１、ロボット腕制御装置１２、異常処理装置１３等、ロボットＲに備えられた各種電子機器の電源としてのバッテリ１５とが搭載されている。尚、ロボット脚制御装置１１、ロボット腕制御装置１２及び異常処理装置１３はマイクロコンピュータを用いて構成されたものである。
【００３２】
さらに、各可動脚３の各アクチュエータ５ａ〜５ｃの箇所にはそれらの変位（各軸回りの回転角）を検出するアクチュエータ変位検出器１６ａ〜１６ｃ（詳しくは各アクチュエータ５ａ〜５ｃを構成する各電動モータの回転角を検出するエンコーダ）が備えられ、同様に、各可動腕４の各アクチュエータ８ａ〜８ｃの箇所にもアクチュエータ変位検出器１７ａ〜１７ｃが備えられている。
【００３３】
尚、以下の説明において、各可動脚３の各アクチュエータ５ａ〜５ｃを脚アクチュエータ５と総称し、また、これらに対応する各アクチュエータ変位検出器１６ａ〜１６ｃを脚アクチュエータ変位検出器１６と総称する。同様に、各可動腕４の各アクチュエータ８ａ〜８ｃを腕アクチュエータ８、これらに対応する各アクチュエータ変位検出器１７ａ〜１７ｃを腕アクチュエータ変位検出器１７と総称する。
【００３４】
前記バッテリ１５は、図２に示すように前記脚アクチュエータ５等と接続されている。
【００３５】
すなわち、同図２において、１８は脚アクチュエータ５を構成する複数（本実施形態では計６個）の電動モータ、１９は腕アクチュエータ８を構成する複数（本実施形態では計６個）の電動モータを示しており、これらの各電動モータ１８，１９が、それぞれアンプ２０，２１を介してバッテリ１５の正負の両極間に接続されると共に、前記ロボット脚制御装置１１、ロボット腕制御装置１２及び異常処理装置１３がその動作電力を受けるべくバッテリ１５の正負の両極間に接続されている。各電動モータ１８，１９とバッテリ１５との間のアンプ２０，２１は、それぞれロボット脚制御装置１１及びロボット腕制御装置１２から与えられる駆動指令に従って各電動モータ１８，１９を動作させるもので、各電動モータ１８，１９の通常的な動作時（各電動モータ１８，１９がその発生トルクと同方向に回転するか、回転動作が停止している場合）には、バッテリ１５の蓄電電力を各電動モータ１８，１９に給電するように機能する。また、アンプ２０，２１は、各電動モータ１８，１９の回生発電時（各電動モータ１８，１９がロボットＲの自重等によってその発生トルクと逆方向に回転する場合）には、その回生発電電力をバッテリ１５側に戻すように機能する。
【００３６】
尚、バッテリ１５の正負の両極間には、前記アンプ２０，２１やロボット脚制御装置１１等の他、コンデンサ２２が接続されており、このコンデンサ２２はバッテリ１５の起電力あるいは各電動モータ１８，１９の回生発電電力によって充電され、各電動モータ１８，１９やロボット脚制御装置１１等に付与する電源電圧を安定化するように機能する。
【００３７】
また、バッテリ１５から前記アンプ２０，２１やロボット脚制御装置１１等への給電経路にはバッテリ１５を流れる電流（方向を含む。以下、バッテリ電流という）を検出する電流検出器２３が介装され、さらに、バッテリ１５の正負の両極間には、バッテリ１５の端子電圧（以下、バッテリ電圧という）を検出する電圧検出器２４が接続されている。これらの、電流検出器２３及び電圧検出器２４の検出値は、詳細は後述するが、前記異常処理装置１３におけるバッテリ１５の残容量の認識等のために使用されるものである。
【００３８】
図３を参照して、異常処理装置１３は、その機能的構成として、残容量認識手段２５、機器異常監視手段２６、転倒判断手段２７、動作状態出力手段２８及び記憶手段２９を具備する。
【００３９】
残容量認識手段２５は、バッテリ１５の残容量を認識するもので、その認識を行うために、前記電流検出器２３及び電圧検出器２４からそれぞれバッテリ電流及びバッテリ電圧の検出値が逐次取り込まれる。そして、該残容量認識手段２５は、これらの検出値から例えば次のようにバッテリ１５の残容量を認識する。
【００４０】
すなわち、残容量認識手段２５は、バッテリ電流の検出値を積算することで、バッテリ１５の初期状態からの電気的な使用量を逐次求め、それをバッテリ１５の初期容量から減算することで、バッテリ１５の残容量の基本値を求める。そして、その残容量の基本値にバッテリ電圧の検出値に応じた所定の補正を施すことで、最終的にバッテリ１５の残容量を推定して認識し、その残容量の推定値を転倒判断手段２７に与える。
【００４１】
尚、バッテリ１５の残容量の認識手法は種々の手法が公知となっており、上記のような手法とは異なる手法で残容量を認識するようにしてもよい。例えば、残容量の推定精度をさほど高くする必要がない場合には、バッテリ電流の検出値及びバッテリ電圧の検出値のいずれか一方のみのデータから残容量を認識するようにしてもよく、また、残容量の推定精度を高くする必要がある場合には、バッテリ電流やバッテリ電圧の他、バッテリ１５の温度、比重等を検出し、それらの検出値に基づいて残容量を認識するようにしてもよい。
【００４２】
機器異常監視手段２６は、前記脚アクチュエータ５、脚アクチュエータ変位検出器１６、６軸力センサ６、傾斜検出器１４、電流検出器２３、電圧検出器２４、あるいはこれらに接続されたケーブル（図示しない）等、ロボットＲに備えられた機器（特に可動脚３の動作あるいはロボットＲの姿勢に影響を及ぼす機器）の異常発生の有無を監視するもので、前記ロボット脚制御装置１１によって後述するように生成される脚アクチュエータ５の駆動指令や、脚アクチュエータ変位検出器１６等の各種センサの出力等のデータが与えられる。そして、機器異常監視手段２６は、与えられたデータに基づき、上記の各種機器の異常発生の有無を監視し、異常が発生した場合には、その旨（以下、異常発生出力という）を転倒判断手段２７に与える。
【００４３】
転倒判断手段２７は、ロボットＲが転倒しそうな状態であるか否かを判断するもので、その判断を行うために、前記残容量の推定値及び前記異常発生出力がそれぞれ残容量認識手段２５及び機器異常監視手段２６から与えられる他、ロボット脚制御装置１１によって求められる補償全床反力モーメントＭdmdx，Ｍdmdy（詳細は後述する）がロボット脚制御装置１１から与えられる。そして、転倒判断手段２７は、残容量認識手段２５から与えられた残容量の推定値があらかじめ設定された所定値以下に低下した場合、すなわち、バッテリ１５の残容量が脚アクチュエータ５の電動モータ１８を正常に動作させることができない虞れを生じる程度に、少なくなった場合には、ロボットＲが転倒しそうな状態であると判断する。また、転倒判断手段２７は、機器異常監視手段２６から前記異常発生出力が与えられたときには、可動脚３を正常に動作させることができない虞れがあるので、ロボットＲが転倒しそうな状態であると判断する。さらに、転倒判断手段２７は、ロボット脚制御装置１１から与えられる補償全床反力モーメントＭdmdx，Ｍdmdyがあらかじめ設定された所定値よりも大きくなった場合には、ロボットＲが転倒しそうな状態であると判断する（これについては後に補足説明を行う）。
【００４４】
尚、転倒判断手段２７は、ロボットＲが転倒しそうな状態であると判断したときには、その旨（以下、転倒予想出力という）を前記動作状態出力手段２８とロボット脚制御装置１１とに与える。
【００４５】
動作状態出力手段２８は、ロボットＲの動作状態を規定するデータ、例えば脚アクチュエータ５や腕アクチュエータ８の目標変位（電動モータ１８，１９の目標回転角）やその変位の検出値、あるいは、脚アクチュエータ５の目標変位を決定する過程で後述するように生成される目標上体位置／姿勢軌道や目標足平位置／姿勢軌道等のデータ（以下、動作状態データという）が逐次、ロボット脚制御装置１１やロボット腕制御装置１２から与えられるようになっており、前述のように転倒判断手段２７から前記転倒予想出力が与えられたとき、その直前あるいはその前後の所定期間の前記動作状態データを記憶手段２９に出力して、該記憶手段２９に記憶保持させる。
【００４６】
尚、本実施形態では、記憶手段２９は、不揮発性のもので、例えばＥＥＰＲＯＭにより構成されている。
【００４７】
図４を参照して、ロボット脚制御装置１１は、その機能的構成として同図示のように、歩容生成器３０、目標床反力分配器３１、複合コンプライアンス動作決定部３２（足平位置／姿勢修正手段）、キネマティクス演算部３３、変位コントローラ３４、上体姿勢偏差算出部３５（上体姿勢偏差算出手段）、及び姿勢安定化制御演算部３６（姿勢安定化用床反力算出手段）を具備する。
【００４８】
尚、これらの機能的構成を具備するロボット脚制御装置１１の詳細は、既に本願出願人が例えば特願平９−３３１７６号にて説明している通りであるので、ここでは、以下に基本的な概要を説明する。
【００４９】
歩容生成器３０は、各可動脚３の基本的な動作形態を規定する目標歩容を生成するもので、該目標歩容は、目標運動パターン（より具体的には目標上体位置／姿勢軌道及び目標足平位置／姿勢軌道）と、目標床反力パターン（より具体的には目標全床反力中心点及び目標全床反力）とから成る。
【００５０】
ここで、目標上体位置／姿勢軌道は、ロボットＲの上体（胴体２）の位置及び姿勢（上体の空間的な向き）の目標軌道であり、目標足平位置／姿勢軌道は、ロボットＲの各足平部７の位置及び姿勢（足平部７の空間的な向き）の目標軌道である。
【００５１】
また、床反力は、床から受ける並進力及びモーメントによって表されるもので、全床反力は、ロボットＲの各可動脚３の足平部７に作用する床反力を合成したものである。そして、この全床反力の目標値が目標全床反力である。
【００５２】
また、全床反力中心点は、上記全床反力のロボットＲに対する作用点を意味するものであり、この作用点は、全床反力の鉛直方向の軸回りのモーメント成分以外のモーメント成分が「０」となるような床面上の点として定義されるものである。そして、この全床反力中心点の目標位置が目標全床反力中心点である。尚、全床反力中心点の目標位置である目標全床反力中心点は、所謂ＺＭＰ（Zero Moment Point ）の目標位置、すなわち、前記目標運動パターンによって発生するロボットＲの慣性力と該ロボットＲに作用する重力との合力の床面上への作用点で且つ鉛直方向の軸回りのモーメント成分以外のモーメント成分が「０」となるような点の目標位置と一致する。
【００５３】
目標床反力分配器３１は、歩容生成器３０から与えられる目標足平位置／姿勢軌道及び目標全床反力中心点、並びに、ロボットＲの歩行に際しての支持脚側の足平部７に対する遊脚側の足平部７の着床位置／姿勢や各足平部７の動作タイミング等を規定する歩容パラメータに基づき、制御サイクル毎の目標各足平床反力中心点を決定し、さらには、その決定した目標各足平床反力中心点と歩容生成器３０から与えられる目標全床反力とに基づき、制御サイクル毎の目標各足平床反力を決定するものである。ここで、各足平床反力は、ロボットＲの各足平部７が床から受ける並進力及びモーメントにより表されるもので、その目標値が目標各足平床反力である。また、各足平床反力中心点は、上記各足平床反力の各足平部７に対する作用点であり、この作用点は、前記全床反力中心点と同様、各足平床反力の鉛直方向の軸回りのモーメント成分以外のモーメント成分が「０」となるような床面上の点として定義されるものである。そして、このような各足平床反力中心点の目標位置が目標各足平床反力中心点である。
【００５４】
この場合、目標床反力分配器３１は、例えば目標各足平床反力中心点を結ぶ線分上に前記目標全床反力中心点が存する、ロボットＲの一方の足平部７が空中に存する片脚支持期では支持脚側の足平部７の目標床反力中心点は前記目標全床反力中心点と一致する等の所定の条件を満たすように制御サイクル毎の各足平床反力中心点を決定する。また、目標床反力分配器３１は、各足平部７に対応する目標各足平床反力の合力が目標全床反力に一致するように目標各足平床反力を決定する。
【００５５】
上体姿勢偏差算出部３５は歩容生成器３０により生成される前記目標上体位置／姿勢軌道により定まる制御サイクル毎のロボットＲの上体（胴体２）の目標傾斜姿勢（上体の傾斜角の目標値）と前記傾斜検出器２４により検出されるロボットＲの上体の実傾斜姿勢との偏差（以下、上体姿勢偏差という）を算出するものである。ここで、算出する上体姿勢偏差は、ロボットＲの前後方向回りの偏差θerrxと左右方向回りの偏差θerryである。
【００５６】
姿勢安定化制御演算部３６は、ロボットＲの上体の実傾斜姿勢を目標傾斜姿勢に復元させる方向で、前記目標全床反力中心点を作用点として付加的にロボットＲに床から作用させるべき床反力（ここでは、これを補償全床反力と称する）を、前記上体姿勢偏差算出部３５から与えられる上体姿勢偏差θerrx，θerryに基づき算出するものである。この場合、本実施形態では、ロボットＲの上体の傾斜姿勢を復元させる方向は、ロボットＲの上体の前後及び左右の回転方向（傾斜角方向）であるので、姿勢安定化制御演算部３６が算出する前記補償全床反力は、目標全床反力中心点回りの前後方向回りのモーメントＭdmdx及び左右方向回りのモーメントＭdmdyである（以下、これらのモーメントＭdmdx，Ｍdmdyを補償全床反力モーメントと称する）。そして、姿勢安定化制御演算部３６は、補償全床反力モーメントＭdmdx，Ｍdmdyをそれぞれ、前記上体姿勢偏差θerrx，θerryの値及びそれらの変化速度ｄθerrx／ｄｔ，ｄθerry／ｄｔ（上体姿勢偏差の時間的変化度合い）から次式（１），（２）により決定する。
【００５７】
Ｍdmdx＝−Kthx・θerrx−Kwx ・（ｄθerrx／ｄｔ）……（１）
Ｍdmdy＝−Kthy・θerry−Kwy ・（ｄθerry／ｄｔ）……（２）
ここで、Kthx，Kwx ，Kthy，Kwy はそれぞれ所定のゲイン値である。
【００５８】
このようにして決定される補償全床反力モーメントＭdmdx，Ｍdmdyの値は、上体姿勢偏差θerrx，θerryが大きい程、大きくなり、また、実傾斜姿勢が目標傾斜姿勢から離間する方向での上体姿勢偏差θerrx，θerryの変化速度が大きい程、大きくなる。但し、上体姿勢偏差θerrx，θerryが多少大きくても、その変化速度の方向が、実傾斜姿勢が目標傾斜姿勢に近づく方向である場合には（このような状況は例えばロボットＲがその上体を目標傾斜姿勢に向かって起き上がらせようとしている場合に過渡的に生じる）、補償全床反力モーメントＭdmdx，Ｍdmdyは、比較的小さなものとなる。
【００５９】
複合コンプライアンス動作決定部３２は、基本的には、前記６軸力センサ６の出力により各足平部７毎に検出される実各足平床反力の合力である実全床反力を、前記目標全床反力と補償全床反力（補償全床反力モーメントＭdmdx，Ｍdmdy）との合力に追従させるように（但し、各足平部７の適正な接地性を確保し得る範囲内において）、目標足平位置／姿勢軌道を修正するもので、その修正量を、歩容生成器３０で生成された目標全床反力中心点、目標床反力分配器３１で生成された目標各足平床反力中心点、６軸力センサ６の出力により各足平部７毎に検出される実各足平床反力、並びに、姿勢安定化制御演算部３６で求められた補償全床反力モーメントＭdmdx，Ｍdmdyに基づき求める。この場合、目標全床反力の作用点である目標全床反力中心点では、前述の定義の通り、ロボットＲの前後及び左右方向における目標全床反力のモーメント成分は「０」であるので、目標全床反力と補償全床反力との合力の前後及び左右方向におけるモーメント成分は補償全床反力モーメントＭdmdx，Ｍdmdyであり、従って、目標足平位置／姿勢軌道の修正は、実全床反力の前後及び左右方向におけるモーメント成分を補償全床反力モーメントＭdmdx，Ｍdmdyに追従させるように行われる。
【００６０】
尚、このような目標足平位置／姿勢軌道の修正は、本発明の本質をなすものではなく、また、その詳細は本願出願人が例えば特願平９−３３１７６号にて説明している通りであるので、ここではさらなる説明を省略する。
また、複合コンプライアンス動作決定部３２は、上記の修正の他、さらに、足平部７に備えた図示しない弾性機構の変形を考慮した目標足平位置／姿勢軌道の修正（機構変形補償）も行うようにしているのであるが、これについても、前記特願平９−３３１７６号にて詳細に説明されているので、ここでは説明を省略する。尚、前記目標全床反力及び目標各足平床反力は、上記機構変形補償を行うために用いるもので、これを行わない場合には、目標全床反力や目標各足平床反力を設定する必要はない。
【００６１】
キネマティクス演算部３３は、歩容生成器３０が生成する前記目標上体位置／姿勢軌道における制御サイクル毎の目標上体位置／姿勢と、複合コンプライアンス動作決定部３２により目標足平位置／姿勢軌道を修正してなる修正目標足平位置／姿勢軌道における制御サイクル毎の目標足平位置／姿勢とから、ロボットＲの幾何学モデルに基づく逆キネマティクス演算によって、制御サイクル毎に前記脚アクチュエータ５の目標変位（詳しくは脚アクチュエータ５を構成する各電動モータ１８の目標回転角）を求めるものである。
【００６２】
変位コントローラ３４は、前記脚アクチュエータ変位検出器１６により検出される脚アクチュエータ５の実変位（詳しくは脚アクチュエータ５を構成する各電動モータ１８の実回転角）を、キネマティクス演算部３３で求められた目標変位に追従させるように前記アンプ２０への駆動指令を生成し、該アンプ２０を介して脚アクチュエータ５をフィードバック制御するものである。
【００６３】
以上説明したようなロボット脚制御装置１１の機能によって、ロボットＲの各可動脚３は、基本的には、歩容生成器３０で生成される目標運動パターン（目標上体位置／姿勢軌道及び目標足平位置／姿勢軌道）に従って動作し、このとき、ロボットＲの上体の実傾斜姿勢を目標傾斜姿勢に復元させるための補償全床反力モーメントＭdmdx，Ｍdmdyを目標全床反力中心点回りに生ぜしめるように、複合コンプライアンス動作決定部３２によって目標足平位置／姿勢軌道が適宜修正されることで、ロボットＲの可動脚３は該ロボットＲの上体の姿勢を自律的に安定化させるように動作することとなる。
【００６４】
尚、前記ロボット腕制御装置１２は、例えばあらかじめティーチングされ、あるいは外部から通信によって指令される各可動腕４の所要の動作形態に従って前記腕アクチュエータ８の目標変位（詳しくは腕アクチュエータ８を構成する各電動モータ１９の目標回転角）を決定する。そして、その決定した目標変位に、前記腕アクチュエータ変位検出器１７により検出される腕アクチュエータ８の実変位（詳しくは腕アクチュエータ８を構成する各電動モータ１９の実回転角）を追従させるように前記アンプ２１への駆動指令を生成し、該アンプ２１を介して腕アクチュエータ８をフィードバック制御する。
【００６５】
ここで、本実施形態において、前記ロボット脚制御装置１１の歩容生成器３０が生成する目標運動パターンについて説明しておく。
【００６６】
歩容生成器３０が、例えばロボットＲの通常的な移動（歩行）に際して生成する目標運動パターンや目標床反力パターンは、前記特願平９−３３１７６号あるいは特願平８−２１４２６１号にて本願出願人が詳細に説明しているので、ここでは詳細な説明を省略するが、例えば歩行時の目標運動パターンは、図５に示すようなパターンで生成される。図５は、ロボットＲの歩行時にその一方の可動脚３（ここでは参照符号３ａを付する）がその足平部７の踵部分で着床を開始した状態（図５の最上段の図）から、該可動脚３ａを支持脚として、他方の遊脚側の可動脚３（ここでは参照符号３ｂを付する）の足平部７を離床させて前方に移動させ（図５の上から二段目の及び三段目の図）、さらに、その遊脚側の可動脚３ｂの足平部７をその踵側から着床させるまで（図５の最下段の図）の運動パターン、つまり、歩行時の一歩分の運動パターンを模式的に表したものである。この運動パターンは、基本的には、人間が通常に歩行する場合の動作パターンと同様である。
【００６７】
一方、本実施形態では、歩容生成器３０は、前記転倒判断手段２７から転倒予想出力が与えられたときには、例えば図６及び図７に示すような目標運動パターンを生成する。
【００６８】
すなわち、図６は、例えばロボットＲの通常的な歩行途中で（図６の最上段の図）、転倒判断手段２７から転倒予想出力が与えられた場合に歩容生成器３０が生成する目標運動パターンを模式的に例示するものであり、この場合、該目標運動パターンは、図６の上から二段目の図、三段目の図、及び四段目（最下段）の図に順に示すように、遊脚側の可動脚３ｂの離床・着床を行いつつロボットＲが腰をかがめて該ロボットＲの上体（胴体２）の重心を下げるように生成される。つまり、歩容生成器３０は、目標運動パターンに含まれる前記目標上体位置／姿勢軌道における目標上体位置を徐々に下げていくように該目標上体位置／姿勢軌道を生成する。
【００６９】
また、図７は、例えばロボットＲが直立停止している状態で（図７の最上段の図）、転倒判断手段２７から転倒予想出力が与えられた場合に歩容生成器３０が生成する目標運動パターンを模式的に例示するものであり、この場合、該目標運動パターンは、図７の上から二段目の図、三段目の図、及び四段目（最下段）の図に順に示すように、ロボットＲが腰をかがめて該ロボットＲの上体（胴体２）の重心を下げるように生成される。
【００７０】
さらに、前記姿勢安定化制御演算部３６が算出する前記補償全床反力モーメントＭdmdx，Ｍdmdyに基づく前記転倒判断手段２７の判断処理について補足しておく。
【００７１】
前述の通り、補償全床反力モーメントＭdmdx，ＭdmdyはロボットＲの上体の実傾斜姿勢を目標傾斜姿勢に自律的に復元させるために、前記目標全床反力中心点を作用点として付加的にロボットＲに床から作用させるべき床反力（モーメント）であり、該ロボットＲの目標足平位置／姿勢軌道、従って、該ロボットＲの各足平部７の実際の位置／姿勢は基本的には、上記補償全床反力モーメントＭdmdx，Ｍdmdyが目標全床反力中心点回りに生じるように修正される。例えばロボットＲの上体の実傾斜姿勢が目標傾斜姿勢から離間する方向で前方側に傾きつつあるときには、着床している足平部７の位置／姿勢が、該足平部７の前部に床からの圧力が集中するように修正される（このとき、目標全床反力中心点回りにロボットＲを後傾側に戻すようなモーメント（＝Ｍdmdy）が生じる）。
【００７２】
しかるに、補償全床反力モーメントＭdmdx，Ｍdmdyが過大であると、足平部７の接地性を確保しつつ、補償全床反力モーメントＭdmdx，Ｍdmdyを生ぜしめるように足平部７の位置／姿勢を修正することは実際上、困難となり、このような場合には、ロボットＲの転倒が予想される。
【００７３】
このために、前記転倒判断手段２７は、前述のように補償全床反力モーメントＭdmdx，Ｍdmdyが所定値を超えた場合（より詳しくは、Ｍdmdx又はＭdmdyが所定値を超えた場合）に、ロボットＲが転倒しそうな状態であると判断し、転倒予想出力を生成するのであるが、このとき、この判断を行うための上記所定値は、ロボットＲの両足平部７が着床している状態（両脚支持期）と一方の足平部７のみが着床している状態（片脚支持期）とでは、異なる値に設定することが好ましい。
【００７４】
すなわち、両脚支持期では、補償全床反力モーメントＭdmdx，Ｍdmdyが比較的大きくても、両足平部７の位置／姿勢の修正によって、該補償全床反力モーメントＭdmdx，Ｍdmdyを目標全床反力中心点回りに生ぜしめることが可能であるが、片脚支持期では、一方の足平部７のみの位置／姿勢の修正によって補償全床反力モーメントＭdmdx，Ｍdmdyを目標全床反力中心点回りに生ぜしめることとなるため、生ぜしめることが可能な補償全床反力モーメントＭdmdx，Ｍdmdyは、両脚支持期に比して小さい。
【００７５】
そこで、本実施形態では、転倒判断手段２７による判断を行うために補償全床反力モーメントＭdmdx，Ｍdmdyと比較する前記所定値は、ロボットＲの両脚支持期と片脚支持期とで異なる値に設定され、前者の方が後者よりも大きな値に設定されている。
【００７６】
尚、足平部７の位置／姿勢の修正によって生ぜしめることが可能な補償全床反力モーメントＭdmdx，Ｍdmdyは、足平部７の形状等によって、一般にはそれぞれのモーメントＭdmdx，Ｍdmdy毎に異なるため、さらに、各補償全床反力モーメントＭdmdx，Ｍdmdy毎に各別に前記所定値を設定しておいてもよい。
【００７７】
次に、本実施形態の装置の作動、特に、前記転倒判断手段２７によってロボットＲが転倒しそうな状態であると判断される場合の作動を説明する。
【００７８】
前述の通り、前記異常処理装置１３（図３参照）の転倒判断手段２７は、残容量認識手段２５から与えられたバッテリ１５の残容量の推定値が所定値以下に低下した場合、あるいは、機器異常監視手段２６から前記異常発生出力が与えられたとき、あるいはロボット脚制御装置１１の姿勢安定化制御演算部３６から与えられる補償全床反力モーメントＭdmdx又はＭdmdyが足平部７の着床状態に対応した所定値よりも大きくなった場合には、ロボットＲが転倒しそうな状態であると判断し、前記転倒予想出力を前記動作状態出力手段２８とロボット脚制御装置１１（詳しくは歩容生成器３０）とに与える。
【００７９】
このとき、ロボット脚制御装置１１の歩容生成器３０は、前記図６又は図７に示したようにロボットＲが腰をかがめて該ロボットＲの上体（胴体２）の重心を下げるような目標運動パターンを生成するため、ロボット脚制御装置１１の各部の前述したような制御処理によって、基本的には、ロボットＲの可動脚３は該目標運動パターンに従って動作し、該ロボットＲは腰をかがめるように動作する。
【００８０】
このため、ロボットＲの重心が下がり、その後、ロボットＲが転倒して床等の物体に衝突したとしても、ロボットＲが受ける衝撃、あるいは相手側の物体が受ける衝撃は比較的小さなもので済み、ロボットＲや相手側の物体が受ける損傷を軽減することができる。また、転倒判断手段２７は、前述のような条件でロボットＲが転倒しそうな状態であると判断するため、その判断を的確に行うことができ、ひいては、上記のようにロボットＲの重心を下げる動作を的確なタイミングで行うことができる。
【００８１】
また、異常処理装置１３の動作状態出力手段２８は、転倒判断手段２７から転倒予想出力が与えられた直前あるいはその前後の所定期間のロボットＲの前記動作状態データを不揮発性の記憶手段２９に出力して、該記憶手段２９に記憶保持させる。
【００８２】
尚、本実施形態では、上記のような処理を行った後、ロボット脚制御装置１１やロボット腕制御装置１２はそれぞれロボットＲの可動脚３及び可動腕４の動作を停止させるように脚アクチュエータ５及び腕アクチュエータ８を制御する。
【００８３】
以上の場合、特に、残容量認識手段２５が認識したバッテリ１５の残容量の推定値が所定値以下に低下した場合に上記のようなロボットＲの動作を行うことで、次のような効果が得られる。
【００８４】
すなわち、ロボットＲがその重心を下げるように動作することで、ロボットＲの位置エネルギーが減少するため、一般には、各可動脚３の脚アクチュエータ５を構成する電動モータ１８のうちのいくつかは、ロボットＲの重さによって回転し、回生発電状態となる。そして、その回生発電電力は、前記アンプ２０を介してバッテリ１５側に供給されるため、該バッテリ１５に充電されたり、あるいは前記コンデンサ２２に蓄えられる。このため、この回生発電電力を可動脚３の電力を消費する電動モータ１８や前記ロボット脚制御装置１１、異常処理装置１３等の動作電力として活用することができ、バッテリ１５の残容量が少ない状態であっても、前述のようにロボットＲの転倒時の衝撃を緩和すべくロボットＲの重心を下げる動作や、動作状態出力手段２８によってロボットＲの動作状態データを記憶手段２９に記憶保持させる動作を可能な限り十分に行うことができる。
【００８５】
そして、ロボットＲの動作状態データを不揮発性の記憶手段２９に記憶保持させることで、その後、バッテリ１５を充電し直してロボットＲの動作を再開する場合に、記憶手段２９に記憶保持された動作状態データを用いて、ロボットＲが倒れそうになる前の状態からロボットＲの動作を再開することができる。また、記憶手段２９に記憶保持された動作状態データを用いて、ロボットＲに生じた異常や故障の原因を解析することも可能となる。
【００８６】
次に、本発明の第２の実施形態を図８を参照して説明する。尚、本実施形態は前記第１の実施形態のものと、一部の構成及び機能のみが相違するものであるので、同一部分については第１の実施形態と同一の参照符号及び図面を用いて説明を省略する。
【００８７】
図８を参照して、本実施形態では、前記バッテリ１５の他、補助電源としてのサブバッテリ３７が前記ロボットＲに搭載されている。この場合、バッテリ１５正極及びサブバッテリ３７の正極には、それぞれ、該バッテリ１５及びサブバッテリ３７への電流の流入を阻止するダイオード３８，３９が接続され、これらのダイオード３８，３９を介して、前記各電動モータ１８，１９毎のアンプ２０，２１や、ロボット脚制御装置１１、ロボット腕制御装置１２、異常処理装置１３、コンデンサ２２が接続されている。この構成により、各電動モータ１８，１９の回生時の発電電力は、バッテリ１５やサブバッテリ３７には供給されず、コンデンサ２２に蓄電されるようになっている。尚、サブバッテリ３７の通常時の端子電圧は、バッテリ１５の通常時の端子電圧よりも若干低いものとされている。また、コンデンサ２２は、本実施形態では、例えば電気二重層コンデンサのような比較的大容量のものを用いている。
【００８８】
また、本実施形態では、バッテリ１５の残容量を認識するためにバッテリ１５側に備えた前記電流検出器２３及び電圧検出器２４と同様に、サブバッテリ３７に流れる電流及びサブバッテリ３７の端子電圧をそれぞれ検出する電流検出器４０及び電圧検出器４１が備えられている。この場合、本実施形態では、異常処理装置１３の前記残容量認識手段２５は、前述の通り電流検出器２３及び電圧検出器２４の出力データからバッテリ１５の残容量を認識する他、電流検出器４０及び電圧検出器４１の出力データからサブバッテリ３７の残容量も認識するようにしている。そして、異常処理装置１３の前記転倒判断手段２７は、残容量認識手段２５により認識されるバッテリ１５及びザブバッテリ３７の残容量のいずれもが、あらかじめ設定された所定値以下に低下したときに、前記転倒予想出力を生成するようにしている。
【００８９】
以上説明した以外の構成及び機能は前記第１の実施形態と全く同一である。
【００９０】
かかる本実施形態の装置では、例えばバッテリ１５及びサブバッテリ３７の両者の残容量が所定値以下に低下すると、異常処理装置１３の転倒判断手段２７が前記転倒予想出力を生成して、それをロボット脚制御装置１１の歩容生成器３０に与え、このとき、ロボットＲがその腰を下げて重心を下げるように動作することは前記第１の実施形態と同様である。
【００９１】
この場合、各可動脚３の脚アクチュエータ５を構成する電動モータ１８の回生発電電力が、コンデンサ２２に蓄えられ、それが、可動脚３の電力を消費する電動モータ１８や前記ロボット脚制御装置１１、異常処理装置１３等の動作電力として活用される。これにより、バッテリ１５及びサブバッテリ３７の残容量が少ない状態であっても、第１の実施形態と同様に、ロボットＲの転倒時の衝撃を緩和すべくロボットＲの重心を下げる動作や、動作状態出力手段２８によってロボットＲの動作状態データを記憶手段２９に記憶保持させる動作を可能な限り十分に行うことができる。
【００９２】
そして、このとき、電動モータ１８の回生発電電力は、前記ダイオード３８，３９によってバッテリ１５やサブバッテリ３７に充電されることなくコンデンサ２２に蓄えられるため、該回生発電電力を、ロボットＲの重心を下げる動作や、動作状態出力手段２８によってロボットＲの動作状態データを記憶手段２９に記憶保持させる動作を行うためのエネルギーとしてより有効に活用して、これらの動作を可能な限り十分に行うことができる。すなわち、バッテリ１５やサブバッテリ３７の充電は、一般にエネルギー損失を伴うが、これに比して、コンデンサ２２の充電時のエネルギー損失は比較的小さい。従って、前記回生発電電力をバッテリ１５やサブバッテリ３７に充電せずにコンデンサ２２に蓄えるようにすることで、該回生発電電力を、ロボットＲの重心を下げる動作や、動作状態出力手段２８によってロボットＲの動作状態データを記憶手段２９に記憶保持させる動作を行うためのエネルギーとしてより有効に活用することができる。
【００９３】
次に、本発明の第３の実施形態を図９を参照して説明する。尚、本実施形態は前記第１の実施形態のものと、一部のみが相違するものであるので、同一部分については第１の実施形態と同一の参照符号及び図面を用いて説明を省略する。
【００９４】
本実施形態では、前記異常処理装置１３は、前記転倒判断手段２７によりロボットＲが転倒しそうな状態であると判断したときに生成する前記転倒予想出力をロボット脚制御装置１１に与える他、前記ロボット腕制御装置１２にも与えるようにしている。そして、ロボット脚制御装置１１及びロボット腕制御装置１２は、例えばロボットＲの歩行時において前記転倒予想出力が異常処理装置１３から与えられたとき、例えば図９に示すようにロボットＲを動作させる。すなわち、ロボット脚制御装置１１は、前記第１の実施形態と同様にロボットＲの腰をかがめてその重心を下げるように脚アクチュエータ５を制御し、また、ロボット腕制御装置１２は、各可動腕４のハンド１０を床に向かって下げて着床させるように腕アクチュエータ８を制御する。
【００９５】
以上説明した以外の構成及び機能は前記第１の実施形態と同一である。
【００９６】
かかる本実施形態によれば、ロボットＲが転倒しそうな状態となると、ロボットＲの重心を下げるように可動脚３が動作する他、ロボットＲの可動腕４が着床するように動作するため、その転倒に際してのロボットＲや床が受ける衝撃をより効果的に緩和することができる。
【００９７】
尚、以上説明した各実施形態では、ロボットＲが転倒しそうな状態であると判断する条件の一つとして、前記補償全床反力モーメントＭdmdx又はＭdmdyが足平部７の着床状態に対応した所定値よりも大きくなったか否かを用いるようにしたが、これに代えて、例えば前記上体姿勢偏差が所定値よりも大きくなったか否か、あるいは、該ロボットＲの上体の実傾斜姿勢が目標傾斜姿勢から離間する方向で前記上体姿勢偏差の時間的な変化度合い（変化速度）が所定値よりも大きくなったか否か、あるいは、それらの両者の条件が満たされるか否か、あるいは、上記上体姿勢偏差及びその時間的変化度合いの重み付平均の値が所定値よりも大きくなったか否か（これは実質的に前記補償全床反力モーメントＭdmdx又はＭdmdyが所定値よりも大きくなったか否かを見る場合と等価で、前記式（１）、（２）中のゲイン値Kthx，Kwx ，Kthy，Kwy が重みに相当する）により、ロボットＲが転倒しそうな状態であるか否かを判断するようにしてもよい。この場合において、上体姿勢偏差やその変化度合い、あるいはそれらの重み付平均の値と比較する所定値は、前記各実施形態と同様に、ロボットＲの両脚支持期と片脚支持期とで各別に設定することが好ましい。
【００９８】
また、前記各実施形態では、ロボットＲがある程度自律的にその姿勢の安定化を図るものを示したが、このような機能を備えていないロボットについても本発明を適用することができることはもちろんであり、さらには、二足以上の複数の可動脚を有するロボットについても本発明を適用することができる。
【００９９】
また、前記各実施形態では、バッテリの残容量が少なくなったとき、あるいは、ロボットの各種機器の異常が生じたとき、あるいは、ロボットの上体の傾斜姿勢を目標傾斜姿勢側に復元させるための前記補償全床反力モーメントＭdmdx又はＭdmdyが足平部７の着床状態に対応した所定値よりも大きくなったとき（換言すれば、ロボットの上体の傾斜姿勢が目標傾斜姿勢に対して比較的大きくずれたり、ロボットの上体の傾斜姿勢が目標傾斜姿勢から離間する側に比較的大きな速度で動いているとき）にのみ、ロボットが転倒しそうな状態であると判断したが、例えばロボットの可動脚が予期しない凹凸を有する床や軟弱な床に着床したような状態を可動脚に備えた荷重センサ等を用いて検出し、この場合に、ロボットが転倒しそうな状態であると判断するようにしてもよい。
【０１００】
また、前記各実施形態では、ロボットＲが転倒しそうな状態であると判断される直前あるいはその前後の所定期間の前記動作状態データをロボットＲに備えた不揮発性の記憶手段２９に出力して記憶させるようにしたが、該動作状態データを通信によってロボットの外部に出力し、それをロボットの外部に備えた適宜の記憶手段に記憶保持させるようにしてもよい。この場合には、該記憶手段は不揮発性のものでなくてもよい。
【図面の簡単な説明】
【図１】本発明の第１の実施形態における脚式移動ロボット（二足歩行型ロボット）の構成を示す側面図。
【図２】図１のロボットに備えたバッテリと電動モータ等との接続構成を示す図。
【図３】図１のロボットに備えた異常処理装置の機能的構成を示すブロック図。
【図４】図１のロボットに備えたロボット脚制御装置の機能的構成を示すブロック図。
【図５】図１のロボットの通常歩行時の運動パターンを説明するための説明図。
【図６】図１のロボットが転倒しそうな状態での運動パターンを説明するための説明図。
【図７】図１のロボットが転倒しそうな状態での運動パターンを説明するための説明図。
【図８】本発明の第２の実施形態におけるバッテリと電動モータ等との接続構成を示す図。
【図９】本発明の第３の実施形態におけるロボットが転倒しそうな状態での運動パターンを説明するための説明図。
【符号の説明】
Ｒ…脚式移動ロボット（二足歩行型ロボット）、２…胴体（上体）、３…可動脚、４…可動腕、５…可動脚のアクチュエータ、８…可動腕のアクチュエータ、１１…ロボット脚制御装置（可動脚のアクチュエータ制御手段）、１２…ロボット腕制御装置（可動腕のアクチュエータ制御手段）、１４…傾斜検出器（上体傾斜姿勢検出手段）、１５，３７…バッテリ、１８…電動モータ（電動式アクチュエータ）、２２…コンデンサ、２５…残容量認識手段、２６…機器異常監視手段、２７…転倒判断手段、２８…動作上体出力手段、２９…記憶手段、３２…複合コンプライアンス動作決定部（足平位置／姿勢修正手段）、３５…上体姿勢偏差算出部、３８，３９…ダイオード。
【図１】
0003655056.tif 000002
【図２】
0003655056.tif 000003
【図３】
0003655056.tif 000004
【図４】
0003655056.tif 000005
【図５】
0003655056.tif 000006
【図６】
0003655056.tif 000007
【図７】
0003655056.tif 000008
【図８】
0003655056.tif 000009
【図９】
0003655056.tif 000010