JPH07205070A - 脚式移動ロボットの歩行制御装置 - Google Patents
脚式移動ロボットの歩行制御装置Info
- Publication number
- JPH07205070A JPH07205070A JP35131593A JP35131593A JPH07205070A JP H07205070 A JPH07205070 A JP H07205070A JP 35131593 A JP35131593 A JP 35131593A JP 35131593 A JP35131593 A JP 35131593A JP H07205070 A JPH07205070 A JP H07205070A
- Authority
- JP
- Japan
- Prior art keywords
- joint
- robot
- joints
- walking
- stability
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Landscapes
- Manipulator (AREA)
Abstract
(57)【要約】
【構成】 2足歩行の脚式移動ロボットで上体に腕を備
えた人体類似の構造を有するものにおいて、横方向の傾
斜角などに応じて上体を駆動して安定性を確保ないし回
復する。 【効果】 既知ないし未知の歩行路面でも安定して歩行
することができる。
えた人体類似の構造を有するものにおいて、横方向の傾
斜角などに応じて上体を駆動して安定性を確保ないし回
復する。 【効果】 既知ないし未知の歩行路面でも安定して歩行
することができる。
Description
【0001】
【産業上の利用分野】本発明は、望ましくは胴体や腕な
どにこれらを駆動できる関節を持った脚式移動ロボット
が歩行中に、路面と足底との間の滑り、横風、外力など
外乱のために安定した歩行継続が困難となったとき、上
体の歩容を変更して安定性を回復するようにした技術に
関する。
どにこれらを駆動できる関節を持った脚式移動ロボット
が歩行中に、路面と足底との間の滑り、横風、外力など
外乱のために安定した歩行継続が困難となったとき、上
体の歩容を変更して安定性を回復するようにした技術に
関する。
【0002】
【従来の技術】脚式移動ロボット、特に2足歩行の脚式
移動ロボットの歩行制御装置としては、ロボットの上部
に重りと、この重りを駆動する関節を設け、それを駆動
して歩行に際して両脚を動かすために発生する慣性力を
キャンセルする手法が、提案されている(「2足歩行ロ
ボット資料集」(改訂第2版)文部省科学研究費・総合
研究(A)「2足歩行ロボットの機構と制御の研究」研
究グループ(昭和61年2月)、および「上体運動によ
り3軸モーメントを補償する2足歩行ロボットの開発」
(第6回知能移動ロボットシンポジウム、1992年5
月21日、22日))。又、本出願人も姿勢安定化制御
の一つとして、脚式移動ロボットが予期しない凹凸路面
に遭遇して例えば前傾するとき、予定時刻よりも早く着
地させて姿勢を回復させる技術などを提案している(特
開平5−254,465号)。
移動ロボットの歩行制御装置としては、ロボットの上部
に重りと、この重りを駆動する関節を設け、それを駆動
して歩行に際して両脚を動かすために発生する慣性力を
キャンセルする手法が、提案されている(「2足歩行ロ
ボット資料集」(改訂第2版)文部省科学研究費・総合
研究(A)「2足歩行ロボットの機構と制御の研究」研
究グループ(昭和61年2月)、および「上体運動によ
り3軸モーメントを補償する2足歩行ロボットの開発」
(第6回知能移動ロボットシンポジウム、1992年5
月21日、22日))。又、本出願人も姿勢安定化制御
の一つとして、脚式移動ロボットが予期しない凹凸路面
に遭遇して例えば前傾するとき、予定時刻よりも早く着
地させて姿勢を回復させる技術などを提案している(特
開平5−254,465号)。
【0003】脚式移動ロボット、特に2足歩行の脚式移
動ロボットが歩行できるのは、路面と足底との間の摩擦
力によるのであるが、この摩擦力はロボットが歩行する
際に体全体を動かすことで生じる慣性力に耐えなければ
ならない。特に質量の重い脚を前後に振り回すことで生
じる慣性力は結局足底を通じて路面に伝わり、これは推
進力や制動力になるのであるが、2足歩行ロボットにお
いては、その際に離れて配置された左右の脚が反対方向
に振り回されることにより、垂直軸回りにロボットを旋
回させようとするスピン力が働く。摩擦力が十分に高け
れば、このスピン力は摩擦力でキャンセルされ、ロボッ
トは設計された方向に進むことができるが、十分な摩擦
力が確保できない場合には、ロボットはスピン力のため
に支持脚を中心に回転し、これが原因で歩行の安定性が
損なわれる。
動ロボットが歩行できるのは、路面と足底との間の摩擦
力によるのであるが、この摩擦力はロボットが歩行する
際に体全体を動かすことで生じる慣性力に耐えなければ
ならない。特に質量の重い脚を前後に振り回すことで生
じる慣性力は結局足底を通じて路面に伝わり、これは推
進力や制動力になるのであるが、2足歩行ロボットにお
いては、その際に離れて配置された左右の脚が反対方向
に振り回されることにより、垂直軸回りにロボットを旋
回させようとするスピン力が働く。摩擦力が十分に高け
れば、このスピン力は摩擦力でキャンセルされ、ロボッ
トは設計された方向に進むことができるが、十分な摩擦
力が確保できない場合には、ロボットはスピン力のため
に支持脚を中心に回転し、これが原因で歩行の安定性が
損なわれる。
【0004】しかしながら、上記した従来技術の内、上
部に重りを設けて駆動する技術に共通することは歩容が
一定であり、何時も同じように上体を振り回しているか
ら、消費エネルギが大きく、それでありながら未知に外
乱には対応できない不都合があることである。また本出
願人が提案した技術にあっても、未知の外乱への対応が
未だ十分ではなかった。
部に重りを設けて駆動する技術に共通することは歩容が
一定であり、何時も同じように上体を振り回しているか
ら、消費エネルギが大きく、それでありながら未知に外
乱には対応できない不都合があることである。また本出
願人が提案した技術にあっても、未知の外乱への対応が
未だ十分ではなかった。
【0005】従って、この発明の目的は、脚式移動ロボ
ットにおける歩行の安定性が損なわれようとしている場
合に、自由になる関節を安定性を回復する方向に、かつ
安定性を増すような速度で駆動して安定性を回復する脚
式移動ロボットの歩行制御装置を提供することにある。
ットにおける歩行の安定性が損なわれようとしている場
合に、自由になる関節を安定性を回復する方向に、かつ
安定性を増すような速度で駆動して安定性を回復する脚
式移動ロボットの歩行制御装置を提供することにある。
【0006】更に、脚式移動ロボット、特に2足歩行の
脚式移動ロボットにおいては、上記のように支持脚を中
心に鉛直軸回りにスピンしやすいが、スピンした場合に
はロボットは倒れなくても、進行方向がずれ、目的とす
る経路から外れる。このずれはロボットに検出手段を備
えて再度修正することが可能であるが、ずれが少ない
程、修正作業は容易である。更に又、横風などの外乱も
ある。
脚式移動ロボットにおいては、上記のように支持脚を中
心に鉛直軸回りにスピンしやすいが、スピンした場合に
はロボットは倒れなくても、進行方向がずれ、目的とす
る経路から外れる。このずれはロボットに検出手段を備
えて再度修正することが可能であるが、ずれが少ない
程、修正作業は容易である。更に又、横風などの外乱も
ある。
【0007】従って、この発明の第2の目的は、スピン
などの外乱を受けた場合に目標値からのずれを可能な限
り減少させて修正作業を容易とするようにした脚式移動
ロボットの歩行制御装置を提供することにある。
などの外乱を受けた場合に目標値からのずれを可能な限
り減少させて修正作業を容易とするようにした脚式移動
ロボットの歩行制御装置を提供することにある。
【0008】
【課題を解決するための手段】上記した課題を解決する
ために、この発明は例えば請求項1項に示す如く少なく
とも脚部に複数の関節を備え、該脚部関節を駆動して歩
行する脚式移動ロボットにおいて、慣性力を発生させる
ことができる少なくとも1つの余剰関節、絶対空間に対
する角度情報および環境に対する力情報の少なくともい
ずれかを代表するパラメータを検出する検出手段、検出
されたパラメータに基づいて前記ロボットの安定性の余
裕度を判断する判断手段、および前記余剰関節を含む関
節を駆動する関節駆動手段、を備え、前記関節駆動手段
は、前記判断手段の判断結果に応じて、前記余剰関節を
安定性の余裕度が増加する方向に駆動するように構成し
た。
ために、この発明は例えば請求項1項に示す如く少なく
とも脚部に複数の関節を備え、該脚部関節を駆動して歩
行する脚式移動ロボットにおいて、慣性力を発生させる
ことができる少なくとも1つの余剰関節、絶対空間に対
する角度情報および環境に対する力情報の少なくともい
ずれかを代表するパラメータを検出する検出手段、検出
されたパラメータに基づいて前記ロボットの安定性の余
裕度を判断する判断手段、および前記余剰関節を含む関
節を駆動する関節駆動手段、を備え、前記関節駆動手段
は、前記判断手段の判断結果に応じて、前記余剰関節を
安定性の余裕度が増加する方向に駆動するように構成し
た。
【0009】
【作用】余剰関節を備え、絶対空間における傾斜角度
(または回転角度)ないしは傾斜角速度(または回転角
速度)などから姿勢の安定性を判断し、安定性が不十分
と判断されるとき、余剰関節を安定性を回復する方向に
駆動するので、予期しない外乱に遭遇しても安定した歩
行を継続することができる。
(または回転角度)ないしは傾斜角速度(または回転角
速度)などから姿勢の安定性を判断し、安定性が不十分
と判断されるとき、余剰関節を安定性を回復する方向に
駆動するので、予期しない外乱に遭遇しても安定した歩
行を継続することができる。
【0010】
【実施例】以下具体的な実施例について詳述する。尚、
以下で歩容とは、単に脚部の関節角度の時系列変化を意
味するだけでなく、上体や腕などの関節も含めた全ての
関節角度の時系列変化を意味する。これに対して脚部の
足の運びのみ意味するときは「脚部歩容」と言い、腕を
含めた上体の動きのみ意味するときは「上体歩容」と使
い分けることにする。
以下で歩容とは、単に脚部の関節角度の時系列変化を意
味するだけでなく、上体や腕などの関節も含めた全ての
関節角度の時系列変化を意味する。これに対して脚部の
足の運びのみ意味するときは「脚部歩容」と言い、腕を
含めた上体の動きのみ意味するときは「上体歩容」と使
い分けることにする。
【0011】図1は、本発明を実施する上で好ましい形
態を備える2足歩行ロボットのスケルトンおよび自由度
配置を示す図である。図示の如く、ロボットは人体類似
の構造を備える。ロボットの自由度は全部で21あり、
腕には肩部に2、肘部に1の自由度を配置し、腰部中央
には直交する3つの軸の全てに1つづつ配置し、脚部に
は腰部に3、膝部に1、足部に2をそれぞれ配置してい
る。これらの自由度は、1軸回りに自在に回転する関節
と、この関節を駆動するモータ、及びモータの回転角度
を検出するエンコーダなどの組み合わせから構成されて
いる。
態を備える2足歩行ロボットのスケルトンおよび自由度
配置を示す図である。図示の如く、ロボットは人体類似
の構造を備える。ロボットの自由度は全部で21あり、
腕には肩部に2、肘部に1の自由度を配置し、腰部中央
には直交する3つの軸の全てに1つづつ配置し、脚部に
は腰部に3、膝部に1、足部に2をそれぞれ配置してい
る。これらの自由度は、1軸回りに自在に回転する関節
と、この関節を駆動するモータ、及びモータの回転角度
を検出するエンコーダなどの組み合わせから構成されて
いる。
【0012】より具体的には、中央の関節4,5,6お
よび左右の関節7,8,9(股関節に相当)で腰部が構
成されると共に、関節7,8,9は大腿リンク13を介
して膝関節10に連結される。膝関節10は下腿リンク
14を介して足首関節11,12に連結され、その下部
には足平15が設けられる。腰部中央の関節4,5,6
はその上方で垂直方向に伸びる第3のリンク16および
第3のリンクに直交配置される第4のリンク17に連結
される。第4のリンク17の両端には関節1,2が連結
された肩を構成すると共に、関節1,2は上腕リンク1
8を介して肘関節3に連結され、肘関節3は下腕リンク
19を介してフック状のハンド20に連結される。図示
はしないが、関節4,5,6の上部(その部位をこの明
細書で「上体」と言う)において第3,第4のリンク1
6,17は筐体で覆われる。
よび左右の関節7,8,9(股関節に相当)で腰部が構
成されると共に、関節7,8,9は大腿リンク13を介
して膝関節10に連結される。膝関節10は下腿リンク
14を介して足首関節11,12に連結され、その下部
には足平15が設けられる。腰部中央の関節4,5,6
はその上方で垂直方向に伸びる第3のリンク16および
第3のリンクに直交配置される第4のリンク17に連結
される。第4のリンク17の両端には関節1,2が連結
された肩を構成すると共に、関節1,2は上腕リンク1
8を介して肘関節3に連結され、肘関節3は下腕リンク
19を介してフック状のハンド20に連結される。図示
はしないが、関節4,5,6の上部(その部位をこの明
細書で「上体」と言う)において第3,第4のリンク1
6,17は筐体で覆われる。
【0013】記号mは腕の全体にわたって分布している
慣性質量の総和を示し、肩を中心に腕を回転させると、
ロボットにこの質量のために慣性モーメントが働く。
尚、このような構成はこの分野では公知であって例えば
本出願人が提案した特開平3−184,782号公報に
記載されているので、詳細な説明は省略する。説明の便
宜上、これらの自由度に図のような番号を付けてある。
ここで数字は上からの連番で、RとLとは右と左を意味
するものとする。この数字と記号R又はLは、以後の説
明で、記号の添字でも共通に用いる(原則として添字の
左側に番号を、右側にR又はLを添える)。
慣性質量の総和を示し、肩を中心に腕を回転させると、
ロボットにこの質量のために慣性モーメントが働く。
尚、このような構成はこの分野では公知であって例えば
本出願人が提案した特開平3−184,782号公報に
記載されているので、詳細な説明は省略する。説明の便
宜上、これらの自由度に図のような番号を付けてある。
ここで数字は上からの連番で、RとLとは右と左を意味
するものとする。この数字と記号R又はLは、以後の説
明で、記号の添字でも共通に用いる(原則として添字の
左側に番号を、右側にR又はLを添える)。
【0014】ロボットの脚部先端の足平15の上方に
は、X,Y,Z3軸方向の力とモーメントの6つの情報
を検出する6軸力センサ21が設けられる。これら3軸
の空間座標に対する配置は、図1に示すように、進行方
向をXに、横方向をYに、鉛直方向をZに定めるものと
する。モーメントもこの軸で表示され、右ネジの表示方
法で、それぞれMX,MY,MZ の方向も、図示のように約
束する。
は、X,Y,Z3軸方向の力とモーメントの6つの情報
を検出する6軸力センサ21が設けられる。これら3軸
の空間座標に対する配置は、図1に示すように、進行方
向をXに、横方向をYに、鉛直方向をZに定めるものと
する。モーメントもこの軸で表示され、右ネジの表示方
法で、それぞれMX,MY,MZ の方向も、図示のように約
束する。
【0015】又、腰の部分には両脚を結合する部材上
に、ロボットの傾斜角度を検出する傾斜センサ22が設
けられ、このセンサ内部には前後方向、横方向の傾斜角
速度と、垂直軸回りにロボットが回転する場合の回転速
度(ヨーレート)を、それぞれ検出するジャイロ22
a,22b,22cが互いに直交する位置に設けられて
いる。これら3つのジャイロは出力信号としては角速度
信号を出力しているが、この信号を時間積分すれば角度
信号としても取り出せるので、都合θX,θY,θZ,θX ド
ット,θY ドット,θZ ドットの6つの信号が得られる
( この明細書で「ドット」は微分値を表す) 。センサの
具体例として、振動式ジャイロを使ったものが安価に市
販されており、センサの構造自体はこの発明の重要な部
分を構成しないので、これ以上の説明を省略する。
に、ロボットの傾斜角度を検出する傾斜センサ22が設
けられ、このセンサ内部には前後方向、横方向の傾斜角
速度と、垂直軸回りにロボットが回転する場合の回転速
度(ヨーレート)を、それぞれ検出するジャイロ22
a,22b,22cが互いに直交する位置に設けられて
いる。これら3つのジャイロは出力信号としては角速度
信号を出力しているが、この信号を時間積分すれば角度
信号としても取り出せるので、都合θX,θY,θZ,θX ド
ット,θY ドット,θZ ドットの6つの信号が得られる
( この明細書で「ドット」は微分値を表す) 。センサの
具体例として、振動式ジャイロを使ったものが安価に市
販されており、センサの構造自体はこの発明の重要な部
分を構成しないので、これ以上の説明を省略する。
【0016】図2には、本発明を実施する上で最適な制
御装置がブロック図で例示されている。基準歩容生成部
30は、既知の路面を安定して歩くことができる歩容を
生成する部分で、ロボットに搭載したコンピュータの速
度が充分にあるときは、コンピュータが実時間で歩容を
生成しても良いし、コンピュータの速度が実時間で生成
するには不充分のときは、予めオフラインで生成してお
き歩容メモリ31にその計算結果を蓄えておいて、実際
に歩く時にこのメモリの中から望ましい歩容の一つを選
び、実行させてもよい。ロボットの歩容は、平地を歩く
ときとか、階段を昇降するときとかで異なっており、ま
た同じ平地を歩く時でも、歩行の速度とか曲がり方でも
違ってくるので、実用的なロボットを歩かせる時は、複
数の歩容が一般には必要となる。そして歩容の設定に
は、安定した歩行の他に、エネルギー消費をできるだけ
少なくする歩行とか別の設計基準も加味しなければなら
ないので、実時間での歩容設計はコンピュータの能力に
依存しており、この説明ではそのような問題を伴わな
い、オフライン方式を例示してある。
御装置がブロック図で例示されている。基準歩容生成部
30は、既知の路面を安定して歩くことができる歩容を
生成する部分で、ロボットに搭載したコンピュータの速
度が充分にあるときは、コンピュータが実時間で歩容を
生成しても良いし、コンピュータの速度が実時間で生成
するには不充分のときは、予めオフラインで生成してお
き歩容メモリ31にその計算結果を蓄えておいて、実際
に歩く時にこのメモリの中から望ましい歩容の一つを選
び、実行させてもよい。ロボットの歩容は、平地を歩く
ときとか、階段を昇降するときとかで異なっており、ま
た同じ平地を歩く時でも、歩行の速度とか曲がり方でも
違ってくるので、実用的なロボットを歩かせる時は、複
数の歩容が一般には必要となる。そして歩容の設定に
は、安定した歩行の他に、エネルギー消費をできるだけ
少なくする歩行とか別の設計基準も加味しなければなら
ないので、実時間での歩容設計はコンピュータの能力に
依存しており、この説明ではそのような問題を伴わな
い、オフライン方式を例示してある。
【0017】本実施例では、同じ経路を歩行するのに路
面の摩擦が高いことを前提にした歩容と、滑りやすい路
面を前提にした歩容の少なくとも2種類の歩容データが
蓄えてある。滑りやすい路面用の歩容の内で最も簡単な
ものは、歩行速度を幾分下げた歩容である。これ以外に
も、人間が氷上を歩くときの恰好のように、腰を少し落
として足底を可能な限り広い面積で且つ長く路面に接触
させる歩容なども考えられるが、ここでは議論しない。
面の摩擦が高いことを前提にした歩容と、滑りやすい路
面を前提にした歩容の少なくとも2種類の歩容データが
蓄えてある。滑りやすい路面用の歩容の内で最も簡単な
ものは、歩行速度を幾分下げた歩容である。これ以外に
も、人間が氷上を歩くときの恰好のように、腰を少し落
として足底を可能な限り広い面積で且つ長く路面に接触
させる歩容なども考えられるが、ここでは議論しない。
【0018】環境の知識べース32には、ロボットが歩
行するべき対象の環境についてのデータが格納されてお
り、例えば部屋の配置とか、階段の配置、さらには階段
の段数とか一段の高さ・奥行きなどが使いやすい形で収
められている。このデータと共に歩容に関連づけて、腕
を振るときのフィードバックゲインKFBなる係数が記入
されており、後述のようにロボットはこの係数を使い、
最初の腕の振り方を決める。
行するべき対象の環境についてのデータが格納されてお
り、例えば部屋の配置とか、階段の配置、さらには階段
の段数とか一段の高さ・奥行きなどが使いやすい形で収
められている。このデータと共に歩容に関連づけて、腕
を振るときのフィードバックゲインKFBなる係数が記入
されており、後述のようにロボットはこの係数を使い、
最初の腕の振り方を決める。
【0019】傾斜センサ22の出力はこの例ではアナロ
グなので、一度デジタルに変換したのち、中央演算回路
35に入力される。6軸力センサ21の出力信号もアナ
ログなので、デジタルに変換され同じく中央演算回路に
入力される。人間とロボットのインターフェイスである
M−Mインターフェイス36は、ロボットへの入出力状
況を表示するCRTと、命令を伝達するキーボード、及
びゲインの設定を行うゲイン設定器とからなる。ゲイン
の設定をソフトウエアで行うときは、キーボードで入力
しても良い。
グなので、一度デジタルに変換したのち、中央演算回路
35に入力される。6軸力センサ21の出力信号もアナ
ログなので、デジタルに変換され同じく中央演算回路に
入力される。人間とロボットのインターフェイスである
M−Mインターフェイス36は、ロボットへの入出力状
況を表示するCRTと、命令を伝達するキーボード、及
びゲインの設定を行うゲイン設定器とからなる。ゲイン
の設定をソフトウエアで行うときは、キーボードで入力
しても良い。
【0020】中央演算回路35は、これらの全ての入力
に基づいて最適な歩容を選定し、その歩容を実行するべ
く、各関節に配置された駆動用モータに適切な電流指令
を出す。図2にはこのモータ駆動回路の2つ37,38
を明示してあり、残りのモータ駆動回路はブラックボッ
クスの形で複数、表示している。その数はこの実施例で
は全部で21である。表示の駆動回路は、肩関節1R/L
を前後に振る自由度のためのものである。駆動回路の一
つを簡単に説明しておくと、電流の指令値はデジタル信
号で出されるので、これをD/A変換回路でアナログ値
に変換後、アンプAmpで増幅し、モータ jML/R を回転
させる(jは関節番号を意味する)。モータの回転角度
はエンコーダEncで検出され、カウンタでカウントされ
て中央演算回路35にフィードバックされる。
に基づいて最適な歩容を選定し、その歩容を実行するべ
く、各関節に配置された駆動用モータに適切な電流指令
を出す。図2にはこのモータ駆動回路の2つ37,38
を明示してあり、残りのモータ駆動回路はブラックボッ
クスの形で複数、表示している。その数はこの実施例で
は全部で21である。表示の駆動回路は、肩関節1R/L
を前後に振る自由度のためのものである。駆動回路の一
つを簡単に説明しておくと、電流の指令値はデジタル信
号で出されるので、これをD/A変換回路でアナログ値
に変換後、アンプAmpで増幅し、モータ jML/R を回転
させる(jは関節番号を意味する)。モータの回転角度
はエンコーダEncで検出され、カウンタでカウントされ
て中央演算回路35にフィードバックされる。
【0021】図3および図4は上記制御装置の動作を説
明するフロー・チャートであるが、同図の説明に入る前
に、ここで、この発明に係る歩行制御を概説する。
明するフロー・チャートであるが、同図の説明に入る前
に、ここで、この発明に係る歩行制御を概説する。
【0022】この制御の特徴は、慣性力を利用して不安
定な状況から回復し、再び継続して安定歩行させること
にあるが、利用可能な慣性力としては遊脚もあるが、望
ましくは胴体や腕など直接歩行とは関係しない関節を有
するとき、不安定な際に、この関節を駆動することで人
間がそうしているように態勢を立て直すことができる。
しかし、この人間の振る舞いは反射運動的であり、どの
ような制御則を使用しているのか、未だ良く分かってい
ない。既に判明している技術を用いることで、ロボット
に結果的に人間と同じような振る舞いをさせ、歩行中の
安定性を確保し、かつ外乱が作用してこの安定性が脅か
された場合、好ましい関節を好ましい方向に好ましい速
度で、かつ好ましい順序で駆動し、安定性を回復する技
術手法が待たれていた。
定な状況から回復し、再び継続して安定歩行させること
にあるが、利用可能な慣性力としては遊脚もあるが、望
ましくは胴体や腕など直接歩行とは関係しない関節を有
するとき、不安定な際に、この関節を駆動することで人
間がそうしているように態勢を立て直すことができる。
しかし、この人間の振る舞いは反射運動的であり、どの
ような制御則を使用しているのか、未だ良く分かってい
ない。既に判明している技術を用いることで、ロボット
に結果的に人間と同じような振る舞いをさせ、歩行中の
安定性を確保し、かつ外乱が作用してこの安定性が脅か
された場合、好ましい関節を好ましい方向に好ましい速
度で、かつ好ましい順序で駆動し、安定性を回復する技
術手法が待たれていた。
【0023】従って、この制御の特徴の一つは、脚式移
動ロボットにおいて歩行の安定性が損なわれようとして
いる場合に、自由になる関節を安定性を回復する方向
に、かつ安定性を増すような速度で駆動して安定性を回
復することにある。
動ロボットにおいて歩行の安定性が損なわれようとして
いる場合に、自由になる関節を安定性を回復する方向
に、かつ安定性を増すような速度で駆動して安定性を回
復することにある。
【0024】以下、図3および図4を参照して説明する
と、同図にはロボットの関節を駆動するためのアルゴリ
ズムの一例が示されている。ここでロボットはオペレー
タから、既知の環境の中でA地点からB地点まで歩行し
て移動するように指示されているものとする。ロボット
は環境から地図情報を取り出して、自己の現在位置をも
とに、経路を探索してその経路全体を単一の歩容で歩行
できる部分に分割する。例えば、階段や敷居などは異な
る歩容を必要とするので、それぞれ別の区域に分割す
る。図示のアルゴリズムは、例えば階段の昇降を終え
て、平地の区画に入り、単一の計画歩容でその区画を歩
く場合のものを例示している。
と、同図にはロボットの関節を駆動するためのアルゴリ
ズムの一例が示されている。ここでロボットはオペレー
タから、既知の環境の中でA地点からB地点まで歩行し
て移動するように指示されているものとする。ロボット
は環境から地図情報を取り出して、自己の現在位置をも
とに、経路を探索してその経路全体を単一の歩容で歩行
できる部分に分割する。例えば、階段や敷居などは異な
る歩容を必要とするので、それぞれ別の区域に分割す
る。図示のアルゴリズムは、例えば階段の昇降を終え
て、平地の区画に入り、単一の計画歩容でその区画を歩
く場合のものを例示している。
【0025】図3においてステップ1でスタートし、ス
テップ2で装置をイニシャライズした後、ステップ3に
進んで後のステップ16で使う設定ゲインK1,K2,K3
を読み込む。続いてステップ4では歩容メモリから平地
歩行用の歩容データを読み込む。ここでは前記した2種
の歩容データの内、路面の摩擦が高いことを前提にした
歩容データを読み込む。尚、この歩容データは2種共に
各関節角度の時系列表になっており、関節jの時刻tの
関節角度を jαt と表記している。
テップ2で装置をイニシャライズした後、ステップ3に
進んで後のステップ16で使う設定ゲインK1,K2,K3
を読み込む。続いてステップ4では歩容メモリから平地
歩行用の歩容データを読み込む。ここでは前記した2種
の歩容データの内、路面の摩擦が高いことを前提にした
歩容データを読み込む。尚、この歩容データは2種共に
各関節角度の時系列表になっており、関節jの時刻tの
関節角度を jαt と表記している。
【0026】続いてステップ5で、これから歩く環境に
ついて、どのような環境であるのか、環境知識ベースを
参照して環境についての属性値を認識する。属性値とし
ては幾何学的な環境地図や明るさなどが記入されている
が、本発明に関係するものとして、路面の摩擦の大小
や、ブロアなどが設置されている場所では、横風の有無
などが移動経路情報と共に記されているものとする。し
かし、煩雑さを避けるために、ここでは発明に関係する
ものだけを述べる。図3の場合、歩容に関連づけて設定
されるフィードバック補正ゲインKFBが用意されてい
る。
ついて、どのような環境であるのか、環境知識ベースを
参照して環境についての属性値を認識する。属性値とし
ては幾何学的な環境地図や明るさなどが記入されている
が、本発明に関係するものとして、路面の摩擦の大小
や、ブロアなどが設置されている場所では、横風の有無
などが移動経路情報と共に記されているものとする。し
かし、煩雑さを避けるために、ここでは発明に関係する
ものだけを述べる。図3の場合、歩容に関連づけて設定
されるフィードバック補正ゲインKFBが用意されてい
る。
【0027】続いてステップ6で前記ゲイン(肩関節角
度補正ゲイン)KFFを選択(設定)し、ステップ7で各
関節モータの実際のエンコーダ値jCR/L を読み取り、
ステップ8でこれと指令値との差分Δ jCR/L を算出
し、ステップ9で傾斜センサ22と6軸力センサ21の
測定値を読み込む。
度補正ゲイン)KFFを選択(設定)し、ステップ7で各
関節モータの実際のエンコーダ値jCR/L を読み取り、
ステップ8でこれと指令値との差分Δ jCR/L を算出
し、ステップ9で傾斜センサ22と6軸力センサ21の
測定値を読み込む。
【0028】次いでステップ10に進み、歩行中で片足
が宙に浮いた状態から現在までに、ヨーレートがかなり
大きな所定の第1の敷居値THθZ1ドットを越えているか
どうか判断する。ヨーレートはロボットが直進している
ときには本来発生しない筈であり、もし大きなヨーレー
トが発生した場合には、安定性が損なわれることを予想
しなければならない。しかし、もしロボットが角を曲が
るときのように、歩容そのものが関節7R/L を駆動して
ヨーレートを発生するように設計されている場合には、
傾斜センサ22の情報だけで安定度を判断するのは正確
ではない。そこで、具体的にはステップ10で歩容から
当然発生されるべきヨーレートDSRDθZドットと、検出
されたヨーレートθZ ドットとの差(絶対値)を求め、
それを第1の敷居値THθZ1ドットと比較して判断する。
が宙に浮いた状態から現在までに、ヨーレートがかなり
大きな所定の第1の敷居値THθZ1ドットを越えているか
どうか判断する。ヨーレートはロボットが直進している
ときには本来発生しない筈であり、もし大きなヨーレー
トが発生した場合には、安定性が損なわれることを予想
しなければならない。しかし、もしロボットが角を曲が
るときのように、歩容そのものが関節7R/L を駆動して
ヨーレートを発生するように設計されている場合には、
傾斜センサ22の情報だけで安定度を判断するのは正確
ではない。そこで、具体的にはステップ10で歩容から
当然発生されるべきヨーレートDSRDθZドットと、検出
されたヨーレートθZ ドットとの差(絶対値)を求め、
それを第1の敷居値THθZ1ドットと比較して判断する。
【0029】ステップ10でヨーレート差分値が第1の
敷居値以下と判断されるときはステップ11(図4)に
進む。ステップ11では同様にヨーレートDSRDθZ ドッ
トと実際に生じているヨーレートθZ ドットとの差分値
(絶対値)を算出し、差分値を第1の敷居値に比較して
小さな第2敷居値THθZ2ドットと比較し、それを越えて
いるかどうか判別する。ここで第2の敷居値以下であれ
ば、例え期待値と計測値に微小な差分が生じていても、
それはモータの減速機などの機械的な遊び、歩行中の振
動などによる微小な滑りなどに起因するものと判断し、
路面の摩擦が予測したものより低いとは判断しない。し
かしステップ11で差分値が第2の敷居値を越えていれ
ば、有意の滑りが生じたとみなし、路面の摩擦力はマー
ジンを失って、このままでは継続して安定歩行ができな
いと判断する。
敷居値以下と判断されるときはステップ11(図4)に
進む。ステップ11では同様にヨーレートDSRDθZ ドッ
トと実際に生じているヨーレートθZ ドットとの差分値
(絶対値)を算出し、差分値を第1の敷居値に比較して
小さな第2敷居値THθZ2ドットと比較し、それを越えて
いるかどうか判別する。ここで第2の敷居値以下であれ
ば、例え期待値と計測値に微小な差分が生じていても、
それはモータの減速機などの機械的な遊び、歩行中の振
動などによる微小な滑りなどに起因するものと判断し、
路面の摩擦が予測したものより低いとは判断しない。し
かしステップ11で差分値が第2の敷居値を越えていれ
ば、有意の滑りが生じたとみなし、路面の摩擦力はマー
ジンを失って、このままでは継続して安定歩行ができな
いと判断する。
【0030】そこでステップ12に進んでヨーレート差
分値にフィードバック補正ゲインKFBを乗じて肩関節角
度補正値を算出する。尚、ステップ11でヨーレート差
分値が第2の敷居値未満と判断されるときは、ステップ
13に進んで補正値を0とする。次いでステップ14に
進み、前回の目標関節角度と今回の目標関節角度の差分
にゲインK1 を乗じたものと、エンコーダ差分値に前記
ゲインK2 を乗じたものと、前記補正値にゲインK3 を
乗じたものとを加えて肩関節1R/L のモータへのトルク
指令値とする。ここで、左右の腕は逆位相に振る必要が
あることから第3項の符号は左右で異なる。尚、その他
の関節のモータへのトルク指令値は、第3項を加味しな
い、第1項と第2項との和となる。
分値にフィードバック補正ゲインKFBを乗じて肩関節角
度補正値を算出する。尚、ステップ11でヨーレート差
分値が第2の敷居値未満と判断されるときは、ステップ
13に進んで補正値を0とする。次いでステップ14に
進み、前回の目標関節角度と今回の目標関節角度の差分
にゲインK1 を乗じたものと、エンコーダ差分値に前記
ゲインK2 を乗じたものと、前記補正値にゲインK3 を
乗じたものとを加えて肩関節1R/L のモータへのトルク
指令値とする。ここで、左右の腕は逆位相に振る必要が
あることから第3項の符号は左右で異なる。尚、その他
の関節のモータへのトルク指令値は、第3項を加味しな
い、第1項と第2項との和となる。
【0031】次いでステップ15に進んで算出されたト
ルク指令値を各関節モータにデジタル−アナログ変換器
を通じて出力し、ステップ18に進んでロボットが予定
された区間の歩行を終了したか否か判断する。歩行を継
続するのであればステップ7に戻ると共に、区間終了な
らばプログラムを終了して次の区間の歩行を準備する。
ルク指令値を各関節モータにデジタル−アナログ変換器
を通じて出力し、ステップ18に進んでロボットが予定
された区間の歩行を終了したか否か判断する。歩行を継
続するのであればステップ7に戻ると共に、区間終了な
らばプログラムを終了して次の区間の歩行を準備する。
【0032】ステップ10でヨーレート差分値が第1の
敷居値を超えた、即ち、大きな滑りが発生したと判断さ
れた場合にはステップ16に進んで両足支持期になった
ことを確認してステップ17に進み、前記2種の歩容デ
ータの内の、低摩擦用の歩容データに変更する。即ち、
第1の敷居値未満で第2の敷居値を超えるときは補正ゲ
インを変更して腕の振りの振幅を変えることで対応する
と共に、第1の敷居値を超えるときは歩容データそのも
のを変更するようにした。尚、実施例では低摩擦用の歩
容データ(具体的には低速歩行の歩容データとする)を
予め設定しておくことにしたが、本出願人が先に提案し
ているように元の歩容の出力速度を落として出力するこ
とでも実現でき、技術的に実現することは容易である。
又、両足支持期になったことは、6軸力センサ21の出
力FZ が増加することから容易に判別できる。
敷居値を超えた、即ち、大きな滑りが発生したと判断さ
れた場合にはステップ16に進んで両足支持期になった
ことを確認してステップ17に進み、前記2種の歩容デ
ータの内の、低摩擦用の歩容データに変更する。即ち、
第1の敷居値未満で第2の敷居値を超えるときは補正ゲ
インを変更して腕の振りの振幅を変えることで対応する
と共に、第1の敷居値を超えるときは歩容データそのも
のを変更するようにした。尚、実施例では低摩擦用の歩
容データ(具体的には低速歩行の歩容データとする)を
予め設定しておくことにしたが、本出願人が先に提案し
ているように元の歩容の出力速度を落として出力するこ
とでも実現でき、技術的に実現することは容易である。
又、両足支持期になったことは、6軸力センサ21の出
力FZ が増加することから容易に判別できる。
【0033】この実施例は上記の如く、摩擦力が予期で
きない路面においても、摩擦力が不足して継続的に安定
歩行が困難な状態になった際に、歩容データそのものを
変更する、ないしはゲインを変更することで、安定性を
回復するようにした。即ち、様々な外乱に対応して、少
ない数の歩容を準備すれば足るようにし、その少ない歩
容で歩いてみて、外乱の影響力が大きければ、外乱の影
響を打ち消すように腕や胴体を振ることで、現実の環境
変化に対応できるようにした。
きない路面においても、摩擦力が不足して継続的に安定
歩行が困難な状態になった際に、歩容データそのものを
変更する、ないしはゲインを変更することで、安定性を
回復するようにした。即ち、様々な外乱に対応して、少
ない数の歩容を準備すれば足るようにし、その少ない歩
容で歩いてみて、外乱の影響力が大きければ、外乱の影
響を打ち消すように腕や胴体を振ることで、現実の環境
変化に対応できるようにした。
【0034】尚、前に述べたように、摩擦力が十分に期
待できるときはエネルギを節約するために、両手や胴体
はできるだけ動かすことなく静止した状態で歩行する方
が望ましい。従って基準歩容としては先ず上体は静止し
ていて両脚のみが運動する歩容を用意しておくことが望
ましい。その意図から滑りやすい路面で現実に滑りが生
じたときにのみ、この基準歩容に加えて両手の振りを追
加するようにした。そして、滑りが比較的大きいときは
両腕を振るだけでは安定性の回復が困難と判断して安定
性を高めた低摩擦用のの歩容データに変更する。この第
2の歩容データでは、安全のために従前の実施例と同
様、歩行速度を少し遅く設定する。腕を振る代わりに腰
部の関節を揺動させて、上体全体の質量を利用しても良
いことなどは従前の実施例と異ならない。
待できるときはエネルギを節約するために、両手や胴体
はできるだけ動かすことなく静止した状態で歩行する方
が望ましい。従って基準歩容としては先ず上体は静止し
ていて両脚のみが運動する歩容を用意しておくことが望
ましい。その意図から滑りやすい路面で現実に滑りが生
じたときにのみ、この基準歩容に加えて両手の振りを追
加するようにした。そして、滑りが比較的大きいときは
両腕を振るだけでは安定性の回復が困難と判断して安定
性を高めた低摩擦用のの歩容データに変更する。この第
2の歩容データでは、安全のために従前の実施例と同
様、歩行速度を少し遅く設定する。腕を振る代わりに腰
部の関節を揺動させて、上体全体の質量を利用しても良
いことなどは従前の実施例と異ならない。
【0035】上記実施例において、腕を肩の関節で脚の
動きとは逆位相に駆動するようにしたが、腰の関節(例
えば関節4R/L )を駆動して上体全体を駆動しても良い
ことは自明であろう。また、肩関節に代えてより軽量か
つ低エネルギ消費の肘関節を駆動しても、不安定の度合
いが小さければ、同等の効果が得られることは論をまた
ない。
動きとは逆位相に駆動するようにしたが、腰の関節(例
えば関節4R/L )を駆動して上体全体を駆動しても良い
ことは自明であろう。また、肩関節に代えてより軽量か
つ低エネルギ消費の肘関節を駆動しても、不安定の度合
いが小さければ、同等の効果が得られることは論をまた
ない。
【0036】又、上記実施例の説明では、滑りの有無を
判断するのに、傾斜センサのヨーレートを用いている
が、ヨーレートを積分した角度情報を用いてもよい。あ
るいは又、ヨーレートの微分値を用いても、同じ効果が
得られる。この種のヨーレート派生の情報を用いるとき
に、歩容から得られるであろう角度変化、或いはヨーレ
ートの変化率があるので、やはり測定値との差分をとる
必要はある。
判断するのに、傾斜センサのヨーレートを用いている
が、ヨーレートを積分した角度情報を用いてもよい。あ
るいは又、ヨーレートの微分値を用いても、同じ効果が
得られる。この種のヨーレート派生の情報を用いるとき
に、歩容から得られるであろう角度変化、或いはヨーレ
ートの変化率があるので、やはり測定値との差分をとる
必要はある。
【0037】又、センサの種類も傾斜センサに限る必要
はなく、6軸力センサの出力のうち、例えば横方向の成
分FY を用いて、この量の最大値が期待値の最大値より
も少ないときは、実質的に滑りが生じていると判断して
も良い。滑ると、静止摩擦係数から、これより小さな動
摩擦係数に移行するので、足の路面に対するグリップ力
が減少するからである。或いはセンサフュージョンの考
えかたを取り入れて、ヨーレート又は6軸力の水平分力
のうちのいずれかが期待値と異なる場合、滑りが生じて
いると判断しても良い。このような判断回路を工学的に
構成するには、各情報ごとに判断回路を構成して、その
結果をOR回路で繋ぐことで、簡単に実現できる。
はなく、6軸力センサの出力のうち、例えば横方向の成
分FY を用いて、この量の最大値が期待値の最大値より
も少ないときは、実質的に滑りが生じていると判断して
も良い。滑ると、静止摩擦係数から、これより小さな動
摩擦係数に移行するので、足の路面に対するグリップ力
が減少するからである。或いはセンサフュージョンの考
えかたを取り入れて、ヨーレート又は6軸力の水平分力
のうちのいずれかが期待値と異なる場合、滑りが生じて
いると判断しても良い。このような判断回路を工学的に
構成するには、各情報ごとに判断回路を構成して、その
結果をOR回路で繋ぐことで、簡単に実現できる。
【0038】又、上記実施例では、歩容の形成を予め行
い、その結果を歩容メモリに蓄えておく場合について述
べたが、コンピュータの計算速度が十分にあれば、搭載
コンピュータで実時間で歩容を算出してもよい。その場
合には、イニシャライズと終了は出発地点と目的地で行
えばよく、アルゴリズムも多少変わるが、属性値が概ね
一定の或る区間、例えば階段の昇降やスロープ歩行、平
地で滑りやすい路面の歩行など、区間ごとに上記のアル
ゴリズムは適用できるものである。
い、その結果を歩容メモリに蓄えておく場合について述
べたが、コンピュータの計算速度が十分にあれば、搭載
コンピュータで実時間で歩容を算出してもよい。その場
合には、イニシャライズと終了は出発地点と目的地で行
えばよく、アルゴリズムも多少変わるが、属性値が概ね
一定の或る区間、例えば階段の昇降やスロープ歩行、平
地で滑りやすい路面の歩行など、区間ごとに上記のアル
ゴリズムは適用できるものである。
【0039】図5は、この発明の第2実施例のアルゴリ
ズムを示すフロー・チャートである。
ズムを示すフロー・チャートである。
【0040】前述の如く、ヨー軸回りのモーメントに支
持脚の足底の摩擦力が負ければ、ロボットは旋回する。
旋回した場合にはロボットが倒れなくとも進行方向がず
れ、目的とする経路から外れる。このずれは傾斜センサ
22を使用して、ないしは視覚手段を装着し、その情報
を使用して再度修正することが原理的にも実際的にも可
能であるが、ずれが少ない程修正作業は容易である。ず
れを少なくするには、スピン現象を検出したとき、遊脚
が着地する前に、支持脚を旋回させてある程度の補正を
このときに行っておく方が望ましい。第2実施例はこの
様な意図に基づく。
持脚の足底の摩擦力が負ければ、ロボットは旋回する。
旋回した場合にはロボットが倒れなくとも進行方向がず
れ、目的とする経路から外れる。このずれは傾斜センサ
22を使用して、ないしは視覚手段を装着し、その情報
を使用して再度修正することが原理的にも実際的にも可
能であるが、ずれが少ない程修正作業は容易である。ず
れを少なくするには、スピン現象を検出したとき、遊脚
が着地する前に、支持脚を旋回させてある程度の補正を
このときに行っておく方が望ましい。第2実施例はこの
様な意図に基づく。
【0041】以下説明すると、図5においてステップ1
01でスタートし、ステップ102ないし109まで第
1実施例と同様に辿った後、ステップ110でヨーレー
ト差分値を求めて敷居値THθドット(第1実施例の第2
敷居値と同等の値)と比較し、ヨーレート差分値がこの
敷居値を超えていれば、ヨーレート差分値にフィードバ
ック補正ゲインKFB(同様に歩行速度に応じて設定)を
乗じて補正値 cαt を算出する。
01でスタートし、ステップ102ないし109まで第
1実施例と同様に辿った後、ステップ110でヨーレー
ト差分値を求めて敷居値THθドット(第1実施例の第2
敷居値と同等の値)と比較し、ヨーレート差分値がこの
敷居値を超えていれば、ヨーレート差分値にフィードバ
ック補正ゲインKFB(同様に歩行速度に応じて設定)を
乗じて補正値 cαt を算出する。
【0042】次いでステップ111に進み、モータトル
ク指令値を腰関節7R/L について第1実施例と同様に算
出すると共に、残余の関節についても第1実施例と同様
に算出する。次いでステップ112に進んで指令値を出
力し、ステップ113で歩行終了と判断されない限り、
ステップ107に戻って同様の作業を続ける。
ク指令値を腰関節7R/L について第1実施例と同様に算
出すると共に、残余の関節についても第1実施例と同様
に算出する。次いでステップ112に進んで指令値を出
力し、ステップ113で歩行終了と判断されない限り、
ステップ107に戻って同様の作業を続ける。
【0043】第2実施例においては上記の如く、ヨーレ
ートを監視し、期待値DSRDθZ ドットとの差分が検出さ
れれば、腰の関節7Lまたは7Rをその差分が減少する
方向に駆動することから、立脚の支持点が滑って方角を
変えたにもかかわらず、ロボット全体の向きは実質的に
変化が生じないようにすることができる。この結果、ロ
ボットの進路に狂いが生ずることが少なく、また狂いが
生じても修正する作業量が減少する。尚、第2実施例に
おいて、関節7Lと7Rとを同じ量、反対方向に駆動し
たが、何方か一方の関節、例えば支持脚の方に注目し
て、支持脚の関節のみを動かしても同じ効果が得られ
る。
ートを監視し、期待値DSRDθZ ドットとの差分が検出さ
れれば、腰の関節7Lまたは7Rをその差分が減少する
方向に駆動することから、立脚の支持点が滑って方角を
変えたにもかかわらず、ロボット全体の向きは実質的に
変化が生じないようにすることができる。この結果、ロ
ボットの進路に狂いが生ずることが少なく、また狂いが
生じても修正する作業量が減少する。尚、第2実施例に
おいて、関節7Lと7Rとを同じ量、反対方向に駆動し
たが、何方か一方の関節、例えば支持脚の方に注目し
て、支持脚の関節のみを動かしても同じ効果が得られ
る。
【0044】図6は、この発明の第3実施例のアルゴリ
ズムを示すフロー・チャートである。
ズムを示すフロー・チャートである。
【0045】第3実施例は、横風などに遭遇してロボッ
トが横方向に傾きかけたときに、腕を倒れる方向に持ち
上げて、そのときの慣性力でロボットを安定側に保つこ
とを意図する。
トが横方向に傾きかけたときに、腕を倒れる方向に持ち
上げて、そのときの慣性力でロボットを安定側に保つこ
とを意図する。
【0046】以下説明すると、図6においてステップ2
01ないしステップ209を経てステップ210に進
み、そこで傾斜センサ22で検出した傾斜角θX の自乗
を求めて所定値Δ(有意の最小値)を超えているか否か
判断し、肯定されるときはステップ211に進んで検出
した傾斜角θX の正負を識別し、正値、即ち、図1の約
束において進行方向に向かって右側に傾斜していると判
断されるときは、検出値にフィードバック補正ゲインK
FB(ステップ206で読み込む)を乗じて補正値cRαt
(右側用)を算出する。このとき、cLαt (左側用の補
正値)は0とする。又、ステップ210で否定されると
きはステップ212に進んで左右の補正値とも0にす
る。
01ないしステップ209を経てステップ210に進
み、そこで傾斜センサ22で検出した傾斜角θX の自乗
を求めて所定値Δ(有意の最小値)を超えているか否か
判断し、肯定されるときはステップ211に進んで検出
した傾斜角θX の正負を識別し、正値、即ち、図1の約
束において進行方向に向かって右側に傾斜していると判
断されるときは、検出値にフィードバック補正ゲインK
FB(ステップ206で読み込む)を乗じて補正値cRαt
(右側用)を算出する。このとき、cLαt (左側用の補
正値)は0とする。又、ステップ210で否定されると
きはステップ212に進んで左右の補正値とも0にす
る。
【0047】次いでステップ213に進んで肘関節3R/
L の目標角度を0(即ち、肘関節をいっぱいに伸ばすよ
う)にし、ステップ214に進んで肩関節2R/L および
その他の関節についてモータトルク指令値を図示の如く
算出する。残余のステップは第1実施例と異ならない。
L の目標角度を0(即ち、肘関節をいっぱいに伸ばすよ
う)にし、ステップ214に進んで肩関節2R/L および
その他の関節についてモータトルク指令値を図示の如く
算出する。残余のステップは第1実施例と異ならない。
【0048】第3実施例においては上記の如く、慣性力
を大きくするためには腕は肘部で曲げることなく、延ば
しておく。従ってもし肘が何らかの理由で曲がっていた
ら真っ直ぐに延ばしながら、腕を持ち上げる。この場合
には、横風による影響であるから、腕を外側に持ち上げ
るのであるが、右に倒れかかった場合には、右腕を持ち
上げるようにした。左腕はそのままの方が胴体との干渉
を起こさないので、都合が良い。このためにX軸回りの
角速度の符号が正か負かを調べるステップを用意し、そ
の符号に応じて関節2Rまたは2Lのいずれかを持ち上
げる方向に動かすアルゴリズムになっている。
を大きくするためには腕は肘部で曲げることなく、延ば
しておく。従ってもし肘が何らかの理由で曲がっていた
ら真っ直ぐに延ばしながら、腕を持ち上げる。この場合
には、横風による影響であるから、腕を外側に持ち上げ
るのであるが、右に倒れかかった場合には、右腕を持ち
上げるようにした。左腕はそのままの方が胴体との干渉
を起こさないので、都合が良い。このためにX軸回りの
角速度の符号が正か負かを調べるステップを用意し、そ
の符号に応じて関節2Rまたは2Lのいずれかを持ち上
げる方向に動かすアルゴリズムになっている。
【0049】図7は、この発明の第4実施例のアルゴリ
ズムを示すフロー・チャートである。
ズムを示すフロー・チャートである。
【0050】第4実施例は、ロボットが他の物体に肩を
ぶつけて横方向の外力を受けた場合や、横風などに遭遇
したときに、腕以外の関節を用いて安定性を回復できる
技術を示す。図1において歩行中に左からの横風を受け
て、右側にロボットが倒れそうになった場合を考えてみ
る。人間がこう言う場面に遭遇し、そのとき手が塞がっ
ていたら、倒れそうな方向に(この場合は右側に)上体
を倒して、その時の慣性力を利用して安定性を回復して
いる。
ぶつけて横方向の外力を受けた場合や、横風などに遭遇
したときに、腕以外の関節を用いて安定性を回復できる
技術を示す。図1において歩行中に左からの横風を受け
て、右側にロボットが倒れそうになった場合を考えてみ
る。人間がこう言う場面に遭遇し、そのとき手が塞がっ
ていたら、倒れそうな方向に(この場合は右側に)上体
を倒して、その時の慣性力を利用して安定性を回復して
いる。
【0051】これをロボットで再現したのが第4実施例
のアルゴリズムである。ステップ310で検出した傾斜
角θX の自乗を所定値Δと比較し、それを超えているこ
とを確認してステップ311に進み、検出した傾斜角θ
xにフィードバック補正ゲインKFBを乗じて腰部中央の
関節6の補正値 c6αtを算出し、ステップ313で腰
関節9,12R/L の目標角度に腰の位置を左にずらすた
めのダミーの角度Δαを加算して目標角度を補正し、ス
テップ314において腰部中央の関節6R/L を含む関節
について図示の如くモータトルク指令値を算出する。残
余のステップは、第3実施例と同様である。
のアルゴリズムである。ステップ310で検出した傾斜
角θX の自乗を所定値Δと比較し、それを超えているこ
とを確認してステップ311に進み、検出した傾斜角θ
xにフィードバック補正ゲインKFBを乗じて腰部中央の
関節6の補正値 c6αtを算出し、ステップ313で腰
関節9,12R/L の目標角度に腰の位置を左にずらすた
めのダミーの角度Δαを加算して目標角度を補正し、ス
テップ314において腰部中央の関節6R/L を含む関節
について図示の如くモータトルク指令値を算出する。残
余のステップは、第3実施例と同様である。
【0052】第4実施例では上記の如く、腰部中央の関
節6のモータに横風による姿勢の崩れを矯正する方向に
駆動する補正量を追加し、その結果、傾斜センサの出力
が減少する(姿勢が立ち直る)ように構成した。しかし
ダイナミックにバランスを回復するのであるから、上体
を倒れそうな方向に倒すと同時に、腰の関節9R/L と足
部関節12R/L を微小量駆動して、腰全体を横風の吹い
てくる方向に水平移動させる必要がある。このためにこ
れら4つのモータには、歩容データに微小角度Δαを加
えた量を新たな目標角度として与えている。
節6のモータに横風による姿勢の崩れを矯正する方向に
駆動する補正量を追加し、その結果、傾斜センサの出力
が減少する(姿勢が立ち直る)ように構成した。しかし
ダイナミックにバランスを回復するのであるから、上体
を倒れそうな方向に倒すと同時に、腰の関節9R/L と足
部関節12R/L を微小量駆動して、腰全体を横風の吹い
てくる方向に水平移動させる必要がある。このためにこ
れら4つのモータには、歩容データに微小角度Δαを加
えた量を新たな目標角度として与えている。
【0053】従って、第4実施例においては、横風のよ
うな外乱に遭遇したロボットは、丁度、人間が対応する
時のように、腰の位置を横風の吹いてくる方角にずらす
と同時に、上体を横風と同じ向きに倒すことで、安定性
を回復することができる。
うな外乱に遭遇したロボットは、丁度、人間が対応する
時のように、腰の位置を横風の吹いてくる方角にずらす
と同時に、上体を横風と同じ向きに倒すことで、安定性
を回復することができる。
【0054】図8は、この発明の第5実施例のアルゴリ
ズムを示すフロー・チャートである。
ズムを示すフロー・チャートである。
【0055】第5実施例は図6に示した第3実施例の変
形であり、ステップ409まで進んだ後ステップ410
に進み、そこで検出したモーメントMX の絶対値を所定
値Δ自乗(歩容から期待される最大値)と比較し、それ
を超えていることを確認してステップ411に進み、検
出したモーメントMX が正の敷居値(Δ自乗)か負の敷
居値(−Δ自乗)を超えているかを判断して第3実施例
に類似する手法で補正値を算出する。尚、ステップ41
0で否定されたときはステップ413で補正値を零と
し、ステップ414で肘関節を元の歩容に戻す。残余の
ステップは第3実施例と相違しない。又、効果も第3実
施例と同様である。この様に、傾斜センサの情報以外
に、6軸力センサの情報でMX などを利用することがで
きる。何故なら、倒れかかっている時には体重の全てが
立脚の足底の最外周部に掛かっており、MX が最大値を
示すからである。
形であり、ステップ409まで進んだ後ステップ410
に進み、そこで検出したモーメントMX の絶対値を所定
値Δ自乗(歩容から期待される最大値)と比較し、それ
を超えていることを確認してステップ411に進み、検
出したモーメントMX が正の敷居値(Δ自乗)か負の敷
居値(−Δ自乗)を超えているかを判断して第3実施例
に類似する手法で補正値を算出する。尚、ステップ41
0で否定されたときはステップ413で補正値を零と
し、ステップ414で肘関節を元の歩容に戻す。残余の
ステップは第3実施例と相違しない。又、効果も第3実
施例と同様である。この様に、傾斜センサの情報以外
に、6軸力センサの情報でMX などを利用することがで
きる。何故なら、倒れかかっている時には体重の全てが
立脚の足底の最外周部に掛かっており、MX が最大値を
示すからである。
【0056】尚、第5実施例では第3実施例を変形して
モーメントMX を用いる例を示したが、他の実施例も同
様に変形可能である。更に、モーメントMX の他にも力
FYを利用しても良い。横風による外力はFY に剪断力
の形で現れるからである。図6の第3実施例などのアル
ゴリズムが示す概念は、横方向の外乱以外にも、前後方
向の外乱についても同じように対応することができる。
前後方向の外乱に対しては、両腕を同じ方向に持ち上げ
ることができ、横方向の外乱に対応する場合に比べて復
元力を大きくすることができる。
モーメントMX を用いる例を示したが、他の実施例も同
様に変形可能である。更に、モーメントMX の他にも力
FYを利用しても良い。横風による外力はFY に剪断力
の形で現れるからである。図6の第3実施例などのアル
ゴリズムが示す概念は、横方向の外乱以外にも、前後方
向の外乱についても同じように対応することができる。
前後方向の外乱に対しては、両腕を同じ方向に持ち上げ
ることができ、横方向の外乱に対応する場合に比べて復
元力を大きくすることができる。
【0057】尚、上記した第1実施例に述べた効果は、
第2実施例以降にも妥当する。即ち、様々な外乱に対応
して、少ない数の歩容を準備すれば良く、その少ない歩
容で歩いてみて、外乱の影響力が大きければ、外乱の影
響を打ち消すように、腕や胴体を振ることで、現実の環
境変化に対応することができる。
第2実施例以降にも妥当する。即ち、様々な外乱に対応
して、少ない数の歩容を準備すれば良く、その少ない歩
容で歩いてみて、外乱の影響力が大きければ、外乱の影
響を打ち消すように、腕や胴体を振ることで、現実の環
境変化に対応することができる。
【0058】更に、上記の如く、第1ないし第5実施例
を説明してきたが、それらは種々の変形が可能であり、
相互に部分的に又は全体的に組み合わせすることが可能
である。
を説明してきたが、それらは種々の変形が可能であり、
相互に部分的に又は全体的に組み合わせすることが可能
である。
【0059】
【発明の効果】請求項1項にあっては、未知の歩行路面
において摩擦力が不足するなどの外乱によってロボット
の安定性が低下しても、容易に安定性を確保ないし回復
させることができる。又、進行方向がずれるなどして
も、ずれ量を低減することができて後の修正作業が容易
となる。
において摩擦力が不足するなどの外乱によってロボット
の安定性が低下しても、容易に安定性を確保ないし回復
させることができる。又、進行方向がずれるなどして
も、ずれ量を低減することができて後の修正作業が容易
となる。
【0060】請求項2項にあっては、請求項1項の効果
に加えて、安定性の確保が困難な2足歩行ロボットにお
いて、確実に安定性を確保ないし回復することが可能と
なる。
に加えて、安定性の確保が困難な2足歩行ロボットにお
いて、確実に安定性を確保ないし回復することが可能と
なる。
【0061】請求項3項にあっては、請求項1項の効果
に加えて、安定性の確保が困難な2足歩行ロボットにお
いて、一層確実に安定性を確保ないし回復することが可
能となる。
に加えて、安定性の確保が困難な2足歩行ロボットにお
いて、一層確実に安定性を確保ないし回復することが可
能となる。
【0062】請求項4項にあっては、請求項1項の効果
に加えて、安定性の確保が困難な2足歩行ロボットにお
いて、一層確実に安定性を確保ないし回復することが可
能となる。
に加えて、安定性の確保が困難な2足歩行ロボットにお
いて、一層確実に安定性を確保ないし回復することが可
能となる。
【0063】請求項5項にあっては、請求項3項などの
効果に加えて、安定性の確保が困難な2足歩行ロボット
において、一層確実に確実に安定性を確保ないし回復す
ることが可能となる。
効果に加えて、安定性の確保が困難な2足歩行ロボット
において、一層確実に確実に安定性を確保ないし回復す
ることが可能となる。
【0064】請求項6項にあっては、請求項1項などの
効果に加えて、例えば肘を横方向いっぱいに伸ばすこと
などが可能となり、慣性力をより有効に利用することが
できて、安定性を一層良く確保ないし回復することがで
きる。
効果に加えて、例えば肘を横方向いっぱいに伸ばすこと
などが可能となり、慣性力をより有効に利用することが
できて、安定性を一層良く確保ないし回復することがで
きる。
【0065】請求項7項にあっては、請求項1項などの
効果に加えて、遊脚の着地前に進路の補正などを行うこ
とができ、修正作業が容易となる。
効果に加えて、遊脚の着地前に進路の補正などを行うこ
とができ、修正作業が容易となる。
【図1】この発明に係る脚式移動ロボットの歩行制御装
置の内のロボットの全体構成を自由度配置を含めて示す
スケルトン図である。
置の内のロボットの全体構成を自由度配置を含めて示す
スケルトン図である。
【図2】この発明に係る脚式移動ロボットの歩行制御装
置の内の歩行制御装置の詳細をハードウェア的に示す説
明図である。
置の内の歩行制御装置の詳細をハードウェア的に示す説
明図である。
【図3】この発明の第1実施例を示すフロー・チャート
の前半部である。
の前半部である。
【図4】この発明の第1実施例を示すフロー・チャート
の後半部である。
の後半部である。
【図5】この発明の第2実施例を示すフロー・チャート
である。
である。
【図6】この発明の第3実施例を示すフロー・チャート
である。
である。
【図7】この発明の第4実施例を示すフロー・チャート
である。
である。
【図8】この発明の第5実施例を示すフロー・チャート
である。
である。
1,2,3,4,5,6,7,8,9,10,11,1
2 関節 12,13,14,16,17,18,19 リンク 15 足平 20 ハンド 21 6軸力センサ 22 傾斜センサ 30 基準歩容生成部 31 歩容メモリ 32 環境の知識ベース 35 中央演算回路 37,38 モータ駆動回路
2 関節 12,13,14,16,17,18,19 リンク 15 足平 20 ハンド 21 6軸力センサ 22 傾斜センサ 30 基準歩容生成部 31 歩容メモリ 32 環境の知識ベース 35 中央演算回路 37,38 モータ駆動回路
Claims (7)
- 【請求項1】 少なくとも脚部に複数の関節を備え、該
脚部関節を駆動して歩行する脚式移動ロボットにおい
て、 a.慣性力を発生させることができる少なくとも1つの
余剰関節、 b.絶対空間に対する角度情報および環境に対する力情
報の少なくともいずれかを代表するパラメータを検出す
る検出手段、 c.検出されたパラメータに基づいて前記ロボットの安
定性の余裕度を判断する判断手段、 およびd.前記余剰関節を含む関節を駆動する関節駆動
手段、 を備え、前記関節駆動手段は、前記判断手段の判断結果
に応じて、前記余剰関節を安定性の余裕度が増加する方
向に駆動することを特徴とする脚式移動ロボットの歩行
制御装置。 - 【請求項2】 前記脚式移動ロボットが人体類似の構造
を有する2足歩行ロボットであって、上体に腕を駆動す
る肩関節を前記余剰関節として備え、前記関節駆動手段
は、前記判断手段の判断結果に応じて、安定性の余裕度
が増加するように、該肩関節の駆動制御量に、第2の駆
動制御量を加算することを特徴とする請求項1項記載の
脚式移動ロボットの歩行制御装置。 - 【請求項3】 前記脚式移動ロボットが人体類似の構造
を有する2足歩行ロボットであって、上体を駆動できる
上体関節を前記余剰関節として備えると共に、前記関節
駆動手段は、前記判断手段の判断結果に応じて、該上体
関節の駆動制御量に、安定性の余裕度を増加させる第2
の駆動制御量を加算することを特徴とする請求項1項記
載の脚式移動ロボットの歩行制御装置。 - 【請求項4】 前記脚式移動ロボットが人体類似の構造
を有する2足歩行ロボットであって、上体を回転駆動で
きる腰部関節を前記余剰関節として備えると共に、前記
関節駆動手段は、前記判断手段の判断結果に応じて、該
腰部関節の駆動制御量に、該上体をロボットが傾斜する
方向に駆動するように、第2の駆動制御量を加算するこ
とを特徴とする請求項1項記載の脚式移動ロボットの歩
行制御装置。 - 【請求項5】 前記関節駆動手段は、腰部を実質的に水
平に前記傾斜方向とは逆方向に移動する様に、前記第2
の駆動制御量を加算することを特徴とする請求項3項ま
たは4項記載の脚式移動ロボットの歩行制御装置。 - 【請求項6】 前記余剰関節は少なくとも互いに直列に
接続された第1、第2の2つの関節からなり、前記関節
駆動手段は、前記判断手段の判断結果に応じて、該第1
の関節を駆動するとき、該第2の関節を該第1の関節か
ら見た慣性力が大きくなる方向に駆動することを特徴と
する請求項1項ないし4項のいずれかに記載の脚式移動
ロボットの歩行制御装置。 - 【請求項7】 少なくとも上体と、脚部に複数の関節を
備え、該脚部関節を駆動して歩行する脚式移動ロボット
において、 a.路面と脚部先端との間に働く摩擦力を代表するパラ
メータを検出する検出手段、 b.検出されたパラメータを所定値と比較し、前記ロボ
ットの安定性の余裕度を判断する判断手段、 およびc.前記判断手段の判断結果に応じて歩容を変更
する歩容変更手段、備えると共に、前記ロボットは方向
転換するための関節を脚部に備え、路面に対する前記ロ
ボットの回転方向の滑りが検出されたとき、前記歩容変
更手段は、該方向転換用の関節を駆動して前記上体を当
該滑り方向とは逆方向に駆動することを特徴とする脚式
移動ロボットの歩行制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP35131593A JPH07205070A (ja) | 1993-12-30 | 1993-12-30 | 脚式移動ロボットの歩行制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP35131593A JPH07205070A (ja) | 1993-12-30 | 1993-12-30 | 脚式移動ロボットの歩行制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH07205070A true JPH07205070A (ja) | 1995-08-08 |
Family
ID=18416479
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP35131593A Withdrawn JPH07205070A (ja) | 1993-12-30 | 1993-12-30 | 脚式移動ロボットの歩行制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH07205070A (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1081027A3 (en) * | 1999-08-30 | 2001-10-31 | Honda Giken Kogyo Kabushiki Kaisha | Legged mobile robot |
WO2002028601A1 (fr) * | 2000-09-29 | 2002-04-11 | Honda Giken Kogyo Kabushiki Kaisha | Robot bipede |
WO2002045913A1 (fr) * | 2000-11-20 | 2002-06-13 | Sony Corporation | Dispositif et procede permettant de commander le fonctionnement d'un robot a jambes et ensemble robot |
WO2003092968A1 (fr) * | 2002-05-01 | 2003-11-13 | Honda Giken Kogyo Kabushiki Kaisha | Dispositif de commande d'attitude d'un robot mobile |
JP2006136962A (ja) * | 2004-11-11 | 2006-06-01 | Hitachi Ltd | 移動ロボット |
JP2006247800A (ja) * | 2005-03-11 | 2006-09-21 | National Institute Of Advanced Industrial & Technology | 脚式移動ロボットの制御装置 |
JP2009291932A (ja) * | 2008-06-03 | 2009-12-17 | Samsung Electronics Co Ltd | 歩行ロボット及びその制御方法 |
-
1993
- 1993-12-30 JP JP35131593A patent/JPH07205070A/ja not_active Withdrawn
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1081027A3 (en) * | 1999-08-30 | 2001-10-31 | Honda Giken Kogyo Kabushiki Kaisha | Legged mobile robot |
US6945341B2 (en) | 2000-09-29 | 2005-09-20 | Honda Giken Kogyo Kabushiki Kaisha | Bipedal robot |
WO2002028601A1 (fr) * | 2000-09-29 | 2002-04-11 | Honda Giken Kogyo Kabushiki Kaisha | Robot bipede |
JP4549626B2 (ja) * | 2000-09-29 | 2010-09-22 | 本田技研工業株式会社 | 二足歩行ロボット |
EP1344610A1 (en) * | 2000-09-29 | 2003-09-17 | Honda Giken Kogyo Kabushiki Kaisha | Bipedal robot |
EP1344610A4 (en) * | 2000-09-29 | 2008-04-02 | Honda Motor Co Ltd | ROBOT WITH TWO FEET |
JPWO2002028601A1 (ja) * | 2000-09-29 | 2004-02-12 | 本田技研工業株式会社 | 二足歩行ロボット |
US7031806B2 (en) | 2000-11-20 | 2006-04-18 | Sony Corporation | Motion controller and motion control method for legged walking robot, and robot apparatus |
US6898485B2 (en) | 2000-11-20 | 2005-05-24 | Sony Corporation | Device and method for controlling operation of legged robot, and robot device |
KR100837988B1 (ko) * | 2000-11-20 | 2008-06-13 | 소니 가부시끼 가이샤 | 각식 이동 로봇을 위한 동작 제어 장치 및 동작 제어방법, 및 로봇 장치 |
WO2002045913A1 (fr) * | 2000-11-20 | 2002-06-13 | Sony Corporation | Dispositif et procede permettant de commander le fonctionnement d'un robot a jambes et ensemble robot |
US7112938B2 (en) | 2002-05-01 | 2006-09-26 | Honda Giken Kogyo Kabushiki Kaisha | Attitude control device of mobile robot |
WO2003092968A1 (fr) * | 2002-05-01 | 2003-11-13 | Honda Giken Kogyo Kabushiki Kaisha | Dispositif de commande d'attitude d'un robot mobile |
JP2006136962A (ja) * | 2004-11-11 | 2006-06-01 | Hitachi Ltd | 移動ロボット |
JP2006247800A (ja) * | 2005-03-11 | 2006-09-21 | National Institute Of Advanced Industrial & Technology | 脚式移動ロボットの制御装置 |
JP2009291932A (ja) * | 2008-06-03 | 2009-12-17 | Samsung Electronics Co Ltd | 歩行ロボット及びその制御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3269852B2 (ja) | 脚式移動ロボットの姿勢安定化制御装置 | |
EP2298506B1 (en) | Mobile device and method for controlling a mobile device | |
JP3429048B2 (ja) | 脚式移動ロボットの歩行制御装置 | |
JP3629133B2 (ja) | 脚式移動ロボットの制御装置 | |
US8868240B2 (en) | Walking robot and pose control method thereof | |
EP1510302B1 (en) | Attitude control device of mobile robot | |
US8005573B2 (en) | Control device for legged mobile robot | |
CN100469646C (zh) | 行进物体和控制行进物体的方法 | |
Kaneko et al. | Slip observer for walking on a low friction floor | |
US20130079929A1 (en) | Robot and control method thereof | |
KR20120060578A (ko) | 보행 로봇 및 그 자세 제어 방법 | |
CN113348129B (zh) | 陀螺稳定腿式机器人 | |
JP3901694B2 (ja) | 歩行式ロボット及びその位置移動方法 | |
EP2590043A2 (en) | Walking robot and control method thereof | |
WO2011119599A2 (en) | In-line legged robot vehicle and method for operating | |
KR101466312B1 (ko) | 보행 로봇 및 그 제어 방법 | |
JP3528171B2 (ja) | 移動ロボット装置及び移動ロボット装置の転倒制御方法 | |
WO2004033160A1 (ja) | ロボット装置の動作制御装置及び動作制御方法 | |
JP3167420B2 (ja) | 脚式移動ロボットの歩行制御装置 | |
JPH07205070A (ja) | 脚式移動ロボットの歩行制御装置 | |
JP4237130B2 (ja) | 脚式移動ロボットの制御装置 | |
JP4946566B2 (ja) | 歩行ロボット及び歩行制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20010306 |