JP2005219206A - 脚式移動ロボットの歩容生成装置 - Google Patents

脚式移動ロボットの歩容生成装置 Download PDF

Info

Publication number
JP2005219206A
JP2005219206A JP2005114031A JP2005114031A JP2005219206A JP 2005219206 A JP2005219206 A JP 2005219206A JP 2005114031 A JP2005114031 A JP 2005114031A JP 2005114031 A JP2005114031 A JP 2005114031A JP 2005219206 A JP2005219206 A JP 2005219206A
Authority
JP
Japan
Prior art keywords
gait
leg
zmp
inverted pendulum
target
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.)
Granted
Application number
JP2005114031A
Other languages
English (en)
Other versions
JP3726096B2 (ja
Inventor
Toru Takenaka
透 竹中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2005114031A priority Critical patent/JP3726096B2/ja
Publication of JP2005219206A publication Critical patent/JP2005219206A/ja
Application granted granted Critical
Publication of JP3726096B2 publication Critical patent/JP3726096B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62DMOTOR VEHICLES; TRAILERS
    • B62D57/00Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track
    • B62D57/02Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members
    • B62D57/032Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members with alternately or sequentially lifted supporting base and legs; with alternately or sequentially lifted feet or skid

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Transportation (AREA)
  • Robotics (AREA)
  • Manipulator (AREA)

Abstract

【課題】脚式移動ロボットの動力学的挙動を記述するモデルを単純化して線形度を高め、モデルの挙動を通じてロボットの挙動が発散するか否かなどの予測を、逐次、リアルタイムに演算することも可能とすることで、動力学的に一層安定した歩容を生成できるようにした脚式移動ロボットの歩容生成装置を提供する。
【解決手段】脚部の運動によって発生する慣性力と重力の合力(総慣性力)である脚部反力(ZMPfeet)を算出し、算出された脚部反力と目標床反力(目標ZMP)とから上体24の動力学的挙動を記述する倒立振子モデルの支点位置(ZMPpend)を算出し、その支点位置に基づいて倒立振子モデルの変位(倒立振子水平位置xb) を算出し、その変位に基づいて上体の位置(水平位置)を算出し、算出された上***置を用いて歩容を生成する。
【選択図】図5

Description

この発明は脚式移動ロボットの歩容生成装置に関し、より詳しくは脚式移動ロボットにおいて、その歩容を自在かつリアルタイムに生成するようにしたものに関する。
本出願人は先に、以下に示す特許文献1において、オフラインで設計した基準歩容をパラメータと上体軌道の時系列の組にしてロボットに搭載したマイクロコンピュータのメモリに記憶させ、歩行周期など、時間に関するパラメータが同一である複数の歩容の瞬時値の重み付き平均を求めることによって、自在な歩容を生成する技術を提案している。
特開平10−86081号公報 特公平4−15068号公報 『路面形状に偏差のある環境における2足歩行制御』(日本ロボット学会誌(JRSJ),Vol.13,No.7,Oct.,1995
しかしながら、特許文献1においては、重み付き平均の算出に際して歩行周期などの時間的パラメータが異なる複数の基準歩容を単に時間パラメータも含めて重み付き平均を取ると、動力学的平衡条件が、近似的にも成立しなくなっていた。したがって、この提案手法では、基準歩容と異なる周期の歩容を生成することはできなかった。
尚、動力学的平衡条件とは、目標歩容の重力と慣性力から計算されるZMPが目標ZMPに一致していること、より詳細には、ロボットの慣性力と重力の合力が目標ZMPまわりに作用するモーメントの水平成分が0であることを意味する。また、ZMP(Zero Moment Point)は、運動による慣性力と重力の合力が床と交わる点を意味する。より厳密には、ロボットの運動による慣性力と重力の合力のモーメントの水平成分が0となる、床上の作用点を意味する。
また、上記した特許文献1にあっては、1歩の歩容と次の1歩の歩容の境界において、上体の位置と速度の両方を連続にするために、場合によっては目標ZMPを理想の軌道から大きくずらす必要があったため、安定余裕が低下する場合もあった。
さらに、多様な歩行を実現するためには数多くの基準歩容の時系列データを記憶する必要があり、メモリ容量が増加する不都合があった。さらに基準歩容をオフラインで試行錯誤によって生成しなければならないと共に、基準歩容からかけ離れた歩容を生成しようとすると、近似度が大きく低下する不都合があった。
ところで、歩容は物理法則に逆らうことができないので、その許容範囲内でZMPなどの歩容パラメータを生成する必要があり、しかも、2足歩行ロボットの動力学系は、ZMPを入力、上***置を出力とする系とみなすと発散系になるので、生成した歩容パラメータによってロボットの挙動が発散しないように配慮する必要がある。尚、「発散」とは、後で触れる図8に示すように、2足歩行ロボットの上体の位置が両足部(足平)の位置からかけ離れた位置にずれてしまうことを意味する。
その点から、リアルタイムに歩容を生成する場合、生成した歩容パラメータによってロボットに生じるであろう将来の挙動を予測し、発散する可能性があるときは発散を防止することが望ましい。
しかしながら、図23に示すように、ロボット(2足歩行ロボット)を多質点系でモデル化すると、演算量が多くかつ非線形性が強くなるため、歩容の終端状態をリアルタイムに求めるのは、ロボットに搭載可能な通常のCPUの能力では困難である。
他方、将来挙動予測とそれに基づく発散防止制御は、多くの知識を蓄積しておき、歩容切り変わり目毎に、そのときの状態と目的に応じ、蓄積した知識に照らし合わせて目標歩容を選び出す手法でも、あるレベルまでは達成することができるであろうが、ありとあらゆる状況に対応しようとすれば組合わせ爆発を起こし、事実上は不可能である。
したがって、脚式移動ロボットにおいて、リアルタイムに解析的に将来挙動が予測計算できるように、ロボットの動力学を記述する動力学モデルを単純化することが望まれていた。
動力学モデルとしては、従来から代表的なものとして次の2つが知られている。
1)1質点モデル
2)影響度の小さい質点を無視した多質点モデル
1質点モデルは、例えば上記した特許文献2で提案されており、その提案技術にあっては、質点を上体だけに設定した1質点系としてロボットをモデル化すると共に、上体の高さを一定にすることで、線形性を確保している。このモデルは挙動を解析的に求めることが容易である。
この特許文献2に係るロボットは脚が極めて軽いので、脚反力を無視したことの影響は小さいが、通常の人間型の2足歩行ロボットの場合、脚部の質量が無視できないほど大きいことから、この提案技術によるときは近似精度が低下し、高速で歩行させると、最悪の場合、転倒する。
2)の影響度の小さい質点を無視した多質点モデルの例としては、非特許文献1を挙げることができる。
非特許文献1にあっては、各脚の膝と足首および上体にそれぞれ質点が設定されている。より具体的には、各質点は、あるリンクまたは関節上にローカルに設定された座標系内のある固定された点(座標)に設定される。
このモデルでは、図23に示すような全リンクに質点とイナーシャを設定する場合に比較すると、演算量が10分の1程度に減少する。また、上記した1質点モデルよりは、近似精度が高くなり、脚の質量が大きいロボットでも、この手法で生成した目標歩容を用いて歩行させることができる。
しかしながら、図23に示した例と同様に、影響度の小さい質点を無視した多質点モデルにあっても、非線型性が依然強いので、解析的に将来挙動を予測して発散しないように対処することはできなかった。
したがって、この発明の目的は、脚式移動ロボットの動力学的挙動を記述するモデルを単純化して線形度を高め、モデルの挙動を通じてロボットの挙動が発散するか否かなどの予測を、逐次、リアルタイムに演算することも可能とすることで、動力学的に一層安定した歩容を生成できるようにした脚式移動ロボットの歩容生成装置を提供することにある。
上記した目的を達成するために、請求項1にあっては、少なくとも上体と、前記上体に連結される複数本の脚部を備えた脚式移動ロボットの歩容生成装置において、前記脚部の目標運動に基づき、前記脚部の目標運動によって発生する慣性力と重力の合力である脚部反力を算出する脚部反力算出手段、少なくとも目標床反力と前記脚部反力算出手段が算出した脚部反力とに基づき、少なくとも前記上体の動力学的挙動を記述する倒立振子モデルの支点位置を算出する倒立振子モデル支点位置算出手段、少なくとも前記倒立振子モデル支点位置算出手段が算出した倒立振子モデルの支点位置に基づき、前記倒立振子モデルの変位を算出する倒立振子モデル変位算出手段、少なくとも前記倒立振子モデル変位算出手段が算出した倒立振子モデルの変位に基づき、前記上体の位置を算出する上***置算出手段、および、少なくとも前記上***置算出手段が算出した上***置を用いて歩容を生成する歩容生成手段を備える如く構成した。
請求項2にあっては、少なくとも上体と、前記上体に連結される複数本の脚部を備えた脚式移動ロボットの歩容生成装置において、前記脚部の目標運動に基づき、前記脚部の目標運動によって発生する慣性力と重力の合力に疑似的に対応する前記脚部のZMPに相当する脚部ZMPを算出する脚部ZMP算出手段、少なくとも目標ZMPと前記脚部ZMP算出手段が算出した脚部ZMPとに基づき、少なくとも前記上体の動力学的挙動を記述する倒立振子モデルの支点位置を算出する倒立振子モデル支点位置算出手段、少なくとも前記倒立振子モデル支点位置算出手段が算出した倒立振子モデルの支点位置に基づき、前記倒立振子モデルの変位を算出する倒立振子モデル変位算出手段、少なくとも前記倒立振子モデル変位算出手段が算出した倒立振子モデルの変位に基づき、前記上体の位置を算出する上***置算出手段、および、少なくとも前記上***置算出手段が算出した上***置を用いて歩容を生成する歩容生成手段を備える如く構成した。
請求項3に係る脚式移動ロボットの歩容生成装置にあっては、前記倒立振子モデル支点位置算出手段は、前記目標ZMPに第1の係数を乗じて得た積から、前記脚部ZMPに第2の係数を乗じて得た積を減算して前記倒立振子モデルの支点位置を算出する如く構成した。
請求項4に係る脚式移動ロボットの歩容生成装置にあっては、前記床反力が少なくともZMPを含む如く構成した。
請求項5に係る脚式移動ロボットの歩容生成装置にあっては、前記倒立振子モデルが線形モデルである如く構成した。
請求項1にあっては、脚部の目標運動に基づき、脚部の目標運動によって発生する慣性力と重力の合力である脚部反力を算出し、少なくとも目標床反力と算出した脚部反力とに基づき、少なくとも上体の動力学的挙動を記述する倒立振子モデルの支点位置を算出し、少なくとも算出した倒立振子モデルの支点位置に基づき、倒立振子モデルの変位を算出し、少なくとも算出した倒立振子モデルの変位に基づき、上体の位置を算出すると共に、少なくとも算出した上***置を用いて歩容を生成する如く構成したので、脚式移動ロボットの動力学的挙動を記述するモデルを単純化して線形度を高めることができる。
即ち、脚式移動ロボットを2足歩行ロボットとするとき、倒立振子モデルでその動力学的挙動を記述すると共に、全ての力を床反力(より具体的にはZMP)相当値に換算しているので、ロボットの上体挙動を線形結合可能とすることができ、モデルの挙動を通じてロボットが発散するか否かなどの予測を、逐次、リアルタイムに演算することも可能となり、動力学的に一層安定した歩容を生成することができる。
請求項2にあっては、脚部の目標運動に基づき、脚部の目標運動によって発生する慣性力と重力の合力に疑似的に対応する脚部のZMPに相当する脚部ZMPを算出し、少なくとも目標ZMPと算出した脚部ZMPとに基づき、少なくとも上体の動力学的挙動を記述する倒立振子モデルの支点位置を算出し、少なくとも算出した倒立振子モデルの支点位置に基づき、倒立振子モデルの変位を算出し、少なくとも算出した倒立振子モデルの変位に基づき、上体の位置を算出すると共に、少なくとも算出した上***置を用いて歩容を生成する如く構成したので、請求項1で述べたと同様の作用効果を得ることができる。
請求項3にあっては、目標ZMPに第1の係数を乗じて得た積から、脚部ZMPに第2の係数を乗じて得た積を減算して倒立振子モデルの支点位置を算出する如く構成したので、モデルの上体挙動を完全に線形結合可能とすることができ、モデルの挙動が発散するか否かなどの挙動予測を、逐次、リアルタイムに演算することができ、動力学的に一層安定した歩容を生成することができる。また、これによって歩行以外の動作もリアルタイムに生成できるようになるので、歩行以外の任意の動作と歩行を連続的に滑らかにつなげることも可能となる。
請求項4にあっては、床反力が少なくともZMPを含む如く構成したので、請求項1で述べたと同様の作用効果に加え、床反力の記述が容易となって上記した作用効果を一層良く奏することができる。
請求項5にあっては、倒立振子モデルが線形モデルである如く構成したので、請求項1で述べたと同様の作用効果を得ることができる。
以下、添付図面を参照してこの発明に係る脚式移動ロボットの歩容生成装置を実施するためのの最良の形態を説明する。尚、脚式移動ロボットとしては2足歩行ロボットを例にとる。
図1は、この実施例に係る歩容生成装置が適用される脚式移動ロボット、より具体的には2足歩行ロボットを全体的に示す概略図である。
図示の如く、2足歩行ロボット(以下「ロボット」という)1は左右それぞれの脚部(脚部リンク)2に6個の関節を備える。6個の関節は上から順に、股(腰部)の脚部回旋(回転)用の関節10R,10L(右側をR、左側をLとする。以下同じ)、股(腰部)のロール方向(X軸まわり)の関節12R,12L、股(腰部)のピッチ方向(Y軸まわり)の関節14R,14L、膝部のピッチ方向の関節16R,16L、足首のピッチ方向の関節18R,18L、同ロール方向の関節20R,20Lから構成される。
関節18R(L),20R(L)の下部には足平(足部)22R,22Lが取着されると共に、最上位には上体(基体)24が設けられ、その内部にマイクロコンピュータからなる制御ユニット26(後述)などが格納される。上記において、股関節(あるいは腰関節)は関節10R(L),12R(L),14R(L)から、足関節(足首関節)は関節18R(L),20R(L)から構成される。また股関節と膝関節とは大腿リンク28R,28L、膝関節と足関節とは下腿リンク30R,30Lで連結される。
尚、上体24の上部には腕が取り付けられると共に、その上部には頭部が配置されるが、その詳細は、この発明の要旨と直接の関連を有しないため、省略する。
上記の構成により、脚部2は左右の足についてそれぞれ6つの自由度を与えられ、歩行中にこれらの6*2=12個の関節を適宜な角度で駆動することで、足全体に所望の動きを与えることができ、任意に3次元空間を歩行させることができる(この明細書で「*」はスカラに対する演算としては乗算を、ベクトルに対する演算としては外積を示す)。
尚、この明細書で後述する上体24の位置およびその速度は、上体24の所定位置、具体的には上体24の代表点の位置およびその移動速度を意味する。それについては後述する。
図1に示す如く、足関節の下方には公知の6軸力センサ34が取着され、力の3方向成分Fx,Fy,Fzとモーメントの3方向成分Mx,My,Mzとを測定し、足部の着地の有無および床反力(接地荷重)などを検出する。また、上体24には傾斜センサ36が設置され、Z軸(鉛直方向(重力方向))に対する傾きとその角速度を検出する。また各関節の電動モータには、その回転量を検出するロータリエンコーダが設けられる。
図2に示すように、足平22R(L)の上方には、ばね機構38が装備されると共に、足底にはゴムなどからなる足底弾性体40が貼られてコンプライアンス機構42を構成する。ばね機構38は具体的には、足平22R(L)に取り付けられた方形状のガイド部材(図示せず)と、足首関節18R(L)および6軸力センサ34側に取り付けられ、前記ガイド部材に弾性材を介して微動自在に収納されるピストン状部材(図示せず)とからなる。
図中に実線で表示された足平22R(L)は、床反力を受けていないときの状態を示す。床反力を受けると、コンプライアンス機構42においてバネ機構38と足底弾性体40がたわみ、足平22R(L)は図中に点線で表示された位置姿勢に移る。この構造は、着地衝撃を緩和するためだけでなく、制御性を高めるためにも重要なものである。尚、その詳細は本出願人に先に提案した特開平5−305584号に記載されているので、詳細な説明は省略する。
さらに、図1では図示を省略するが、ロボット1の適宜な位置にはジョイスティック44が設けられ、外部から必要に応じて直進歩行しているロボット1を旋回させるなど歩容に対する要求を入力できるように構成される。
図3は制御ユニット26の詳細を示すブロック図であり、マイクロ・コンピュータから構成される。そこにおいて傾斜センサ36などの出力はA/D変換器(図に「A/D」と示す)50でデジタル値に変換され、その出力はバス52を介してRAM54に送られる。また各電動モータに隣接して配置されるエンコーダの出力はカウンタ56を介してRAM54内に入力される。
制御ユニット26の内部にはそれぞれCPUからなる第1、第2の演算装置60,62が設けられており、第1の演算装置60は後述の如く、目標歩容を生成すると共に、後述の如く関節角変位指令を算出し、RAM54に送出する。また第2の演算装置62はRAM54からその指令と検出された実測値とを読み出し、各関節の駆動に必要な操作量を算出してD/A変換器(図に「D/A」と示す)66とサーボアンプを介して各関節を駆動する電動モータに出力する。
図4は、この実施例に係る脚式移動ロボットの歩行(姿勢)制御装置の構成および動作を全体的に示すブロック図である。
以下説明すると、この装置は歩容生成部100を備え、歩容生成部100は後述の如く目標歩容を自在かつリアルタイムに生成して出力する。目標歩容は、目標上***置姿勢(軌道)、目標足平位置姿勢(軌道)、目標全床反力中心点(目標ZMP)(軌道)および目標全床反力(軌道あるいはパターン)からなる。
尚、各足平22R,Lの床反力を「各足平床反力」と呼び、全ての(2本の)足平の床反力の合力を「全床反力」と呼ぶ。ただし、以降においては、各足平床反力はほとんど言及しないので、断らない限り、「床反力」は「全床反力」と同義として扱う。
最初にこの装置が生成する歩容について説明すると、この発明の目的は前記したように歩容をリアルタイムに生成する装置を提供することにあり、より具体的には本出願人が先に特開平10−277969号公報において提案した複合コンプライアンス制御によるロボットの姿勢安定化制御を行うために必要な目標歩容を自在に生成することを目的としている。
その先に提案した姿勢安定化制御にあっては、床反力中心点(ZMP)の目標位置と実測位置の偏差を検出し、その偏差を解消するように脚部の一方または双方を駆動して姿勢の安定化を図っている。それと共に、ロボットが倒れそうになると、目標床反力を意図的にずらすことによって実床反力をずらし、姿勢復元力を得るようにしている。
かかる如く、脚式移動ロボットにおいては、目標運動軌跡と目標床反力パターンの関係が動力学的平衡条件を満足していなければ、安定した歩行が実現できない。動力学的平衡条件は前記した如く、具体的には、例えば、目標床反力中心点(目標床反力分布の2次モーメントが0になる床上の作用点)とZMPが一致することである。一致していないと、コンプライアンス制御が働いたときに、慣性力と重力の合力と床反力との間のバランスを崩し、最悪の場合、転倒する。
先に提案した技術においては、それをロボットが不安定となったときの姿勢回復に逆用しているが、上記から明らかな如く、本出願人が提案する脚式移動ロボットにおいてはこのように歩行制御に与える目標値として、目標の運動パターンだけではなく、目標の運動パターンに対して動力学的平衡条件を満足する目標床反力パターンも必要である。
目標床反力は、一般的には、作用点とその点に作用する力と力のモーメントによって表現される。作用点はどこにとっても良いので、同一の目標床反力でも無数の表現が考えられるが、特に前述の目標床反力中心点を作用点にして目標床反力を表現すると、力のモーメントは、床に垂直な成分を除けば、0になる。
尚、前述のように、動力学的平衡条件を満足する歩容では、目標とする運動軌跡から算出されるZMPと目標床反力中心点は一致することから、目標床反力中心点軌道の代わりに目標ZMP軌道を与えると言っても同じことである。
従って、上記は、『歩行制御に与える目標値としては、目標運動軌跡だけでなく、目標ZMP軌道(目標床反力パターン)も必要である』と言い換えることができる。このような背景から、この明細書では目標歩容を、次のように定義する。
a)広義の目標歩容とは、1歩ないしは複数歩の期間の目標運動軌跡とその目標床反力パターンの組である。
b)狭義の目標歩容とは、1歩の期間の目標運動軌跡とそのZMP軌道の組である。
c) 一連の歩行は、いくつかの歩容がつながったものとする。
尚、以下では、理解を容易にするために、特にことわらない限り、目標歩容は狭義の目標歩容の意味で使用する。より詳しくは、この明細書では目標歩容は、両脚支持期の初期から片脚支持期の終端までの意味で使用する。
また、両脚支持期とは言うまでもなく、ロボット1がその自重を脚部リンク2の双方で支持する期間を、片脚支持期とは脚部リンク2の一方で支持する期間をいう。片脚支持期においてロボット1の自重を支持しない側の脚部(リンク)を「遊脚」と呼ぶ。定義の詳細は、先に提案した特開平10−86081号公報に記載されているので、この程度の説明に止める。
この発明は、具体的には、上記に定義した目標歩容を自在かつリアルタイムに生成することを目的とする。自在かつリアルタイムに生成できれば、例えばロボット1を遠隔操縦によってオペレータが自由自在に操ることができ、また、自動操縦においても、単なる固定シーケンス通りに移動するだけでなく、誘導制御やデリケートな位置決めも可能となる。
ここで、目標歩容としての条件を説明する。
目標歩容が満たさなければならない条件は、大きく分けて以下の5つに分類される。
条件1)動力学的平衡条件を満足していること。即ち、ロボット1の目標運動軌跡から動力学的に算出されるZMP軌道が目標ZMP軌道と一致していること。
条件2)ロボット1の歩行計画部や歩行経路誘導部(共に図示せず)、あるいはオペレータから歩幅や旋回角など歩容が満たすべき条件が要求される場合、それらの要求条件を満たしていること。
条件3)足平が床を掘ったり擦ったりしない、関節角度が可動範囲を越えない、関節速度が限界を越えないなどの、キネマティクス(運動学)に関する制約条件を満たしていること。
条件4)片脚支持期においてZMPが支持脚足平接地面内になければならない、駆動系の最大能力を越えないなどの、動力学に関する制約条件を満たしていること。
条件5)境界条件を満たしていること。即ち、条件1)の当然の帰結として、歩容と歩容の境界では、少なくとも、各部位の位置と速度が連続であるという境界条件が導かれる(不連続であれば、無限大の力が発生したり、ZMPが接地面からはるかに遠くの点に移動してしまうから)。
また、第n+1回歩容の初期状態は、第n回歩容の終端状態(特に、足平位置に対する上体の位置・姿勢および速度)に一致するように設定されなければならない。このとき、第n回歩容の終端状態は、第n+1回歩容の初期状態が決まっていれば、第n+1回歩容の初期状態に一致させれば良い。
決まっていなければ、第n回歩容の終端状態が、姿勢が崩れないで長期的な歩行ができる範囲に入っていれば良い。但し、後述するように、姿勢が崩れないで長期的な歩行ができるための終端状態の範囲を求めることは、極めて難しい。
一般的に、目標歩容は、パラメータ値あるいは時系列テーブルを含む歩容発生アルゴリズムによって発生させられる(歩容を決定するということは、パラメータ値あるいは時系列テーブルを適当に設定することに他ならない)。
パラメータ値あるいは時系列テーブルを変えることによって、様々な歩容が生成される。しかし、パラメータ値あるいは時系列テーブルを十分な配慮もせずに設定しただけでは、作成された歩容が前記の歩容条件をすべて満足しているか否かは分からない。
特に、長期的歩行に適した終端上***置および速度の範囲が分かっていたとしても、ZMP軌道に基づいて上記した条件1)を満足する上体の軌道を歩容発生アルゴリズムに従って生成する場合には、発生した歩容の終端での上***置と速度の両方がその範囲に入るようにZMP軌道に関するパラメータを設定することは、極めて難しい。
その理由は次の通りである。
理由1)上体は、一旦、ZMPから遠くに離れると、さらに遠くに離れようとする発散傾向がある。これを説明するために、ロボットの上体の挙動に近い倒立振子の挙動を例に挙げる。
倒立振子は重心の床投影点が支点からずれると、ずれが発散して倒れる。しかし、そのときも倒立振子の慣性力と重力の合力は支点上に作用し(即ち、ZMPが支点に一致し)、支点から受ける床反力に釣り合っている。即ち、動力学的平衡条件は、運動する物体のその瞬間における慣性力と重力と床反力の関係を表すだけのものである。
動力学的平衡条件を満足していればロボットの長期歩行が保証されたように錯覚しやすいが、ロボットの姿勢が崩れているか否かとは全く関係がない。倒立振子の重心が支点の真上から離れると、ますます遠くに離れようとする傾向があるように、ロボットの重心がZMPの真上から遠くに離れるとますます遠くに離れようとする発散傾向がある。
理由2)片脚支持期においてZMPが支持脚足平接地面内になければならないなどの厳しい制約条件があるために、上体の加減速パターンを恣意的に設定することができず、位置を合わせようとすると速度が合わず、速度を合わせようとすると位置が合わず、なかなか両方を同時に一致させることは難しい。以上の問題点のために、前記歩容条件を全て満たした目標歩容のパラメータやテーブルなどのオフラインで設計した基準歩容を持たず、完全にリアルタイムに決定することは、先に提案した技術も含めて従来では不可能であった。
歩容の説明を続けると、歩容は、歩容パラメータによって記述される。歩容パラメータは、運動パラメータとZMPパラメータ(より一般的に表現すれば、床反力パラメータ)から構成される。尚、この明細書で『床反力パラメータ』なる語は、『床反力の時間的なパターンに関するパラメータ』を意味するものとして使用する。ZMPパラメータは後で図16に示すように、X,Y,Z座標(方向)について折れ線グラフ状のZMP軌道の折れ点の位置と通過時刻で示す(X座標のみ図示)。
運動パラメータは、足平(軌道)パラメータと上体(軌道)パラメータとから構成される。
足平軌道パラメータは、初期(離床時)遊脚位置および姿勢、終端(着床時)遊脚位置および姿勢、両脚支持期時間、片脚支持期時間などを含む。これらに基づき、先に本出願人が特開平5−318339号および特開平5−324115号公報などで提案した技術を用いて、両足平の位置(xf ,yf ,zf )および姿勢(θxf ,θyf ,θzf )の瞬時値が求められる。尚、ここで姿勢は『空間上の傾斜または向き』を意味する。
上体軌道パラメータは、上体の姿勢(空間上の上体24の向きあるいは傾き)を決定するパラメータ、上体高さ(Z方向の値)を決定するパラメータ、初期の上***置(変位)および速度パラメータなどから構成される。
上体の位置および姿勢を決定するパラメータに基づき、時間関数または先に特開平5−324115号公報で本出願人が提案した技術や後述する手法から上体の水平位置(xb ,yb )および姿勢(θxb ,θyb ,θzb )の瞬時値が求められる。上体高さzb は適宜な手法、例えば本出願人が特開平10−86080号公報で提案する手法で決定される。
脚式移動ロボット1の関節は図1に示すように12関節から構成されているので、得られた両足平の位置・姿勢と上***置・姿勢とから、後述するように逆キネマティクス演算によって目標関節変位が一義的に決定される。即ち、今回のロボットの目標姿勢が一義的に決定される。
ところで、理想的目標歩容は、物理法則に逆らうことができないので、希望する状態にすぐに到達することはできない。許容範囲内でZMPの軌道、着地位置および着地時期などの歩容パラメータを変更することによって、時間をかけて希望する状態に遷移しなければならない。特に、この実施例において2足歩行ロボットの動力学系は、ZMPを入力、上***置を出力とする系とみなすと発散系になるので、慎重に歩容パラメータを変更しないと、正常な状態に復元するのが困難となる。
したがって、目標歩容を自在かつリアルタイムに生成するときは、ロボットの将来の挙動を予測し、どのように歩容パラメータ値を設定すれば、ロボットの将来、例えば数歩先の挙動が発散しないか否かを判断すると共に、発散する可能性が予測されるときは発散を防止するように歩容を調整することが、望ましい。
しかしながら、前記したように、図23に示すような多質点系モデルを用いるとき、その動力学演算は、演算量が多くかつ非線形性が強いので、終端状態をリアルタイムに求めるのは、ロボットに搭載可能な通常のCPU(第1の演算装置60)の能力では困難である。
他方、将来挙動予測とそれに基づく発散防止制御は、多くの知識を蓄積させておき、歩容切り変わり目毎に、そのときの状態と目的に応じ、知識に照らし合わせて目標歩容を選び出す手法でも、あるレベルまでは達成することができるであろうが、ありとあらゆる状況に対応することは、組合わせ爆発を起こし、事実上不可能である。
そこで、この実施例においては、ロボット1の動力学的挙動を記述する動力学モデルを単純化し、リアルタイムかつ解析的に将来挙動が予測計算できるようにした。図5に、その単純化した動力学モデルを示す。図示の如く、この動力学モデルは3質点モデルであり、デカップルド、即ち、脚部の動力学と上体の動力学が相互に非干渉に構成されると共に、ロボット全体の動力学は、それらの線形結合で表される。図6は、歩容生成部100の動力学演算部において、図5に示す動力学モデルを用いて行われる動力学演算を示すブロック図である。
以下、この動力学モデルを説明する。
1)このモデルは、倒立振子、支持脚足平質点、遊脚足平質点の3質点から構成される。
2)支持脚足平質点は、支持脚足平にローカルに設定された座標系(具体的には、原点が足首中心から足底への垂直投影点、XY平面が足底に一致し、かかとからつまさきへの向きをX軸にとったXYZ直交座標系であり、これを以降、「支持脚ローカル座標系」と呼ぶ)上のある固定された点に設定される。この固定された点の支持脚ローカル座標系上の座標を、「支持脚足平質点オフセット」と呼ぶ。
同様に、遊脚足平質点は、遊脚足平にローカルに設定された座標系(これを以降、「遊脚ローカル座標系」と呼ぶ)上のある固定された点に設定される。この固定された点の遊脚ローカル座標系上の座標を、「遊脚足平質点オフセット」と呼ぶ。
尚、支持脚が床に全面的に密着しているときの足首位置の床への鉛直投影点を原点とし、床に固定され、支持脚足平の前方向をX軸、左方向をY軸、鉛直方向をZ軸にとった座標系を「支持脚座標系」と呼ぶ(これは. 上記した支持脚ローカル座標とは異なる。)。ことわらない限り、位置、速度、力などは支持脚座標系で示す。
3)倒立振子は、水平に移動するフリーの支点aと、ひとつの質点bと、支点と質点を結ぶ質量のない可変長のリンクcから構成される。また、リンクが傾いてもリンクが伸縮し、支点から見た質点高さが一定値に保たれるものとする。(換言すれば、この倒立振子は、前記した特公平4−15068号公報に記載されるロボットの線形倒立振子と同一である。)
倒立振子質点は、物理的意味としては上体24の質点(必ずしも重心位置を意味しない)に対応する。したがって、倒立振子質点と上体質点は、今後、同意語として扱う。倒立振子質点の位置(より広義に言えば変位)を、以降、略して「倒立振子位置」と呼ぶ。
4)上体の水平位置は、倒立振子の水平位置から幾何学的に決定される。具体的には、例えば、上体にローカルに設定された座標系(これを以降、「上体座標系」と呼ぶ)上のある固定された代表点(この点を以降、「上体代表点」と呼ぶ)の水平位置(支持脚座標系から見たXY座標)が、倒立振子の水平位置に一致するように決定される。即ち、図5に示すように、上体代表点と倒立振子質点bは、同一鉛直線上にあるように決定される。
上体代表点の上体座標系上の水平座標(XY座標)を「上体質点オフセット」と呼ぶ。
次いで、図示の動力学演算モデルに関する変数およびパラメータなどの記述法について説明する。
説明の便宜上、動力学演算モデルに関する変数およびパラメータなどを以下のように定義し、記述する。
倒立振子のZMPは、支点aの位置にある。なぜなら、ZMPは定義からモーメントが発生しない点のことであり、フリーの支点aにはモーメントが発生しないからである。そこで、倒立振子支点位置を倒立振子自身のZMP位置(ZMP相当値)ということで、以降、「倒立振子ZMP」と呼び、「ZMPpend 」と記述する。
各質点の質量と位置は次のように記述する。
msup: 支持脚質点質量
mswg: 遊脚質点質量
mb: 倒立振子質点質量(上体質点質量)
mtotal:ロボット質量(= mb + msup + mswg)
mfeet: 両脚質量(= msup + mswg)
xsup: 支持脚質点位置
xswg: 遊脚質点位置
xb: 倒立振子位置(上体質点位置)
以降、ことわらない限り、xbは3次元ベクトル(XYZ座標ベクトル)で表わす。倒立振子の高さは、倒立振子の支点から質点までの高さを意味し、hと記述する。
d(xb)/dtはxbの1階微分を表わし、倒立振子の速度を示す。d2(xb)/dt2はxbの2階微分を表わし、倒立振子の加速度を示す。gは重力加速度定数を示す。Gは重力加速度ベクトルを示し、X,Y成分が0、Z成分が−gであるベクトルと定義する。
図示の3質点モデルにおいて、脚質点の総慣性力がある作用点Pまわりに作用するモーメントを、点Pまわりの脚総慣性力モーメントと定義する(慣性力と重力の合力を「総慣性力」と呼ぶ)。作用点Pの座標(あるいは位置)をxpと置く。
下記の数式1は、点Pまわりの脚総慣性力モーメントの厳密な動力学的定義式である。
Figure 2005219206
脚ZMPをZMPfeetと記述し、脚ZMPを数式2で定義する。ただし、脚ZMPの高さ(ZMPfeet のZ成分)は、点P位置の高さと同一とする。このように、脚ZMPは、脚部の運動によって発生する慣性力と重力の合力(総慣性力)に疑似的に対応させた値である。
Figure 2005219206
本来、図1に示すロボット1の動力学は非線形であるが、近似して目標ZMP、脚ZMP(ZMPfeet) 、および倒立振子ZMP(ZMPpend) の間には数式3の線形関係を与える。
Figure 2005219206
一般に、線形倒立振子の挙動を表わす微分方程式は、数式4で表わされる。
Figure 2005219206
ただし、作用点Pは、モデルの近似精度が高くなるように設定される。例えば、作用点Pは、図7タイム・チャートに示すように、直前(前回)歩容の支持脚座標系上の原点から、今回歩容の支持脚座標系の原点に、両脚支持期の間に直線的に等速移動する点に設定される。
この実施例に係る脚式移動ロボットの歩容生成装置で提案する動力学モデルは、図5に示すような足平、上体と各質点の位置の関係を表わす前記オフセットと、上記の数式(数式1から4)で表わされる。これにより、後述の如く、将来挙動予測が容易となった。
図6を参照して歩容生成部100(図1に示す)の動力学演算部の動作を説明すると、動力学演算部は脚ZMP算出器200を備え、脚ZMP算出器200は、数式1および数式2ならびに図7で示される作用点Pに基づいて脚ZMP(ZMPfeet )を算出する。
次いで、上記算出したZMPfeet をmfeet/mtotal倍したものを、目標ZMPから減じ、さらによって得た差をmtotal/mb 倍することによって、倒立振子ZMP(ZMPpend) を算出する。即ち、倒立振子ZMP(ZMPpend)は、前記ロボットの質量mtotalと前記上体の質点の質量mbの比に前記目標ZMPを乗じて得た積から、前記脚部の質量mfeet と前記上体の質点の質量mbの比に脚部のZMP相当値ZMPfeet を乗じて得た積を減算して算出される。この処理は、数式3に相当する。
倒立振子の挙動は、数式4で表現され、倒立振子ZMP(ZMPpend) から倒立振子質点水平位置xbが算出される。
さらに、図6に示す如く、動力学演算部は上***置決定器202を備え、上***置決定器202は、倒立振子質点水平位置から上体の水平位置xbを決定する。具体的には、上***置決定器202は、前述した上体代表点(図5に示す)の水平位置が、倒立振子の水平位置に一致するように上体の水平位置を決定する。
次いで、歩容の継続的姿勢安定性について述べる。
ここまで述べてきた動力学モデル自身は、単に、各瞬間における動力学的平衡条件を近似的に満足するように、目標ZMPから上体軌道を算出するだけのものであり、上体軌道が発散すること(図8に示すように上体24の位置が両足平22R,Lの位置からかけ離れた位置にずれてしまうこと)を防止するものではない。
以下では、上体軌道の発散を防止し、上体と両足平の間の適切な位置関係を継続させるための手段について説明する。
最初に、そのための予備知識として、将来の上体軌道を解析的に求める上で特に重要な、線形倒立振子の性質について議論する。ここでは、離散化モデルを用いて説明する。
先ず、倒立振子に関し、新たに以下の変数やパラメータを定義する。
ω0: 倒立振子の固有角周波数
ω0 = sqrt(g/h)(ただし、sqrtは平方根を表わす。)
Δt: 刻み時間
x[k]:kステップ目(時刻kΔt)の倒立振子位置
v[k]:kステップ目の倒立振子速度
ZMPpend[k]: kステップ目の倒立振子ZMP(詳しくは、時刻kΔtから時刻(k+1) Δtまで、入力ZMPpend[k]の0次ホールドした信号が入力、即ち、その時刻の間は同一信号が倒立振子に入力され続けられるものとする。)
さらに、q[k]とp[k]を数式5で定義する。
Figure 2005219206
倒立振子の運動方程式を離散化し、q[k] とp[k]に関して解くと、以下の数式6と数式7が得られる。尚、exp は指数関数を表す。
Figure 2005219206
Figure 2005219206
これらの式の意味を考える。
ある有限な定数ZMPminおよびZMPmaxに対し、数式8を常に満足するように、ZMPpend[i]が設定されるものと仮定する。
Figure 2005219206
数式8の中辺と右辺の関係を、数式6に代入すると、下記の数式9が得られる。
Figure 2005219206
等比級数の和の定理から、下記の数式10が得られる。
Figure 2005219206
したがって、数式9は、数式11のように書き直すことができる。
Figure 2005219206
同様に、数式8の左辺と中辺の関係から、数式12を得ることができる。
Figure 2005219206
exp(-ω0kΔt)は、kが無限大になると0に収束(漸近)するので、数式11,12は、ZMPpend が変動してもp[k] は発散せず、いずれはZMPmaxとZMPminの間に入ることを意味する。
さらに、具体例として、ZMPpend がある時点以降、一定値ZMP0になる場合を考える。この場合、その時点を改めて時刻0とすると、数式6は、数式13のように書き直すことができる。これは、が、その初期値にかかわらず、ZMP0に等比級数的に収束することを意味する。
Figure 2005219206
より一般的には、p[k]は、ある時点でどのような値であっても、その後のZMPpend 波形がある同一波形であれば、ZMPpend 波形に追従する、ある軌道に収束する。
一方、q[k]は、数式7から明らかなように発散する傾向がある。
具体例として、ZMPpend がある時点以降、一定値ZMP0になる場合を考える。この場合、一定値ZMP0になる時点を改めて時刻0とすると、数式7は、数式14となり、これは、q[0] = ZMP0 ではない限り、q[k]が、ZMP0から等比級数的に発散することを意味する。
Figure 2005219206
そこで、以降、数式5によって定義されるp[k]を収束成分、q[k]を「発散成分」と呼ぶ。
以上より、上体軌道の発散を防止し、上体と両足平の間の適切な位置関係を継続させるためには、事実上、収束成分は無視して構わず、支持脚から見た発散成分を歩行に支障ない範囲から越えないように管理することが重要と言うことができる。
より具体的には、発散成分を歩行に支障ない範囲(姿勢が大きく崩れない範囲)から越えないように、ZMP軌道パラメータなどを適切に決定することが重要であると言える。尚、上体挙動を線形化しなければ、上体挙動を求める式が、数式6,7のように発散成分と収束成分に分離した式にすることができないので、上記のような議論を展開することができなかったが、この実施例において可能となった。
収束成分と発散成分の性質を以下に列挙する。
性質1:対称性
収束成分p[k]と発散成分q[k]を求める式の違いは、p[k]とq[k]が置き換わったことと、ω0が−ω0に置き換わったことだけである。
性質2:等価換算
上記性質から、以下では発散成分についてのみ議論する。
入力ZMPpend[i]として、ZMPpend[0]= U0 と、ZMPpend[i]=0 (i = 1,2,...)で表わされるパルスを考えると、そのときのq[k]は、数式7にこのZMPpend[i]を代入することにより得られ、数式15となる。
Figure 2005219206
これより、発散成分q[k]に対する影響だけを考えると、初期パルスU0を入力することは、U0 * (exp(-ω0 Δt) - 1) だけ初期発散成分をずらすことと同じ影響を与える。即ち、初期パルスは、(exp(-ω0Δt) - 1) 倍することによって、初期発散成分に等価換算される。
また、数式7と数式15を比較することにより、発散成分q[k]に対する影響だけを考えると、入力ZMPpend[i](i=0,1,2...,k-1)を入力することは、数式16に示す初期パルス入力U0と同じ影響を与える。
Figure 2005219206
即ち、入力ZMPpend[i](i=0,1,2...,k-1)は、数式16によって、初期パルス入力U0に等価換算される。
性質3:時間遅れの影響
また、図9に示すように、ZMPpend[i]がある関数f(i)であり、ZMPpend'[i] が関数f(i)を時間nΔtだけ遅らせた関数f(i- nΔt)であるとし、入力列ZMPpend[i]を初期パルスに変換したものをU0、入力列ZMPpend'[i] を初期パルスに変換したものをU0' とすると、U0' は数式17のようになる。
Figure 2005219206
即ち、同一波形の入力を時間nΔtだけ遅らせて入力すると、その入力によって発生する発散成分は、exp(-nω0 Δt)倍になる。
次いで、図5に示す倒立振子モデルに、複雑な倒立振子ZMP波形を入力したときの発散成分について述べる。
ところで図5(または数式3)に示す動力学モデル内の倒立振子モデルに与えられるZMP入力は、目標ZMPにmtotal/mb を乗じたものと、脚ZMPにmfeet/mbを乗じたものの差である。目標ZMPは具体的には、折れ線状の波形であるので、目標ZMPにmtotal/mb を乗じたものも、やはり折れ線の波形である。
そこで、以下では、折れ線状のZMPが倒立振子に入力されたことによって発生する発散成分を解析的に求める原理とアルゴリズムを説明する。尚、脚ZMPに関する影響については、後述する。また、実際には、倒立振子ZMPは、2次元空間(水平面上)を移動するが、以下の議論では、理解の容易のため、1次元空間を移動するものとする。
倒立振子のZMP(ZMPpend )波形として図10に示すような折れ線を想定する。区間iは、期間(時間)がperiod[i] でその区間の初期値がZMP[i]であるとする。このZMPによって発生する発散成分を求めるための原理とアルゴリズムを説明する。
倒立振子モデルに倒立振子ZMP入力として、x=f(t)が時刻範囲 [0,T] の間入力されたことによって発生する発散成分を、時刻0に入力され、時間幅が刻み時間Δtのパルスの大きさに換算したものをH(f(t),T) とする。
数式16から、H(f(t),T) は、次の数式18に示す積和演算で表わされる(ω:倒立振子の固有角周波数)。
Figure 2005219206
ところで一般的に、区間iの倒立振子ZMP波形は、図11に示すように、ある遅れを持つステップ波形とランプ波形とに分解できる。そこで、まずステップ状の波形とランプ状の波形に対するH(f(t),T) を以下に述べる手順で求めておく。
x=f(t)=1のステップ波形のH(f(t),T) をH(1,T)と記述すると、等比級数の和の公式から、数式19に示すようになる。
Figure 2005219206
x=f(t)=tのランプ波形のH(f(t),T) をH(t,T)と記述すると、数式20に示すようになる。
Figure 2005219206
尚、ZMP波形が折れ線以外であるときは、上記以外の関数f が必要となる。上記以外の関数fでは、解析解F(f(t),T) が存在しない場合もあるが、その際には、関数fを正規化してから、H(f(t),T)をテーブル化すれば良い。尚、上記例でもF(f(t),T) をテーブル化しても良い。
さて、ここまで準備しておいてから、図10の倒立振子ZMPによって発生する発散成分を、時刻0に入力されるパルスであって、その時間幅が刻み時間Δtの倒立振子ZMPパルスの大きさに換算したもの(以降、これをWと記す)を以下の手順で求める。
まず、区間i(i=0,1,…5)の倒立振子ZMPの影響を、区間iの初期時刻に入力されるパルスであって、その時間幅が刻み時間Δtのパルスの大きさinf[i]に換算する。区間iの倒立振子ZMP波形は、図11に示すように、高さがZMP[i]の矩形波と傾きが(ZMP[i+1]-ZMP[i])/period[i] のランプ波の和で表わされるので、パルス換算値は数式21に示すようになる。
Figure 2005219206
次いで、区間period[i] (i=0,1,.., m)の倒立振子ZMPの影響を、時刻0に入力されるパルスであって、その時間幅が刻み時間Δtのパルスの大きさinf'[i] に換算する。性質3から、パルス換算値は数式22のように算出される。
Figure 2005219206
図10に示す倒立振子ZMP波形全区間の影響は、各区間の倒立振子ZMPの影響の和になる。即ち、パルス換算値Wは、数式23に示すように算出される。
Figure 2005219206
さらに、性質2より、上記Wを初期発散成分に等価換算したものは、以下の数式24に示す値になる。
Figure 2005219206
さらに、数式24または性質3より、これを歩容終端時刻での発散成分に換算したものは、数式25に示す値になる。
Figure 2005219206
以上の手順により、折れ線の倒立振子ZMPによって発生する歩容終端発散成分を解析的に求めることができる。
次いで、歩行の継続性を保証する歩容生成アルゴリズムについて述べる。
先に、上体軌道の発散を防止し、上体と両足平の間の適切な位置関係を継続させるためには、発散成分を歩行に支障ない範囲(姿勢が大きく崩れない範囲)から越えないように、ZMP軌道パラメータなどを適切に決定することが重要であると述べた。次の問題は、歩行に支障ない発散成分の範囲あるいは適切な発散成分の値を如何に求めるかである。
この実施例に係る歩容生成部100は、今回生成する歩容につながるべき歩容(以下「定常旋回歩容」と呼ぶ。これについては後述する)を仮に想定することによって、適切な発散成分の値を決定するようにした。以下に歩容生成部100の動作を詳細に説明する。
歩容生成部は、2歩先までの遊脚足平着地位置姿勢、着地時刻の要求値(要求)を入力として、目標上***置姿勢軌道、目標足平位置姿勢軌道、目標ZMP軌道を決定する。このとき、歩容パラメータの一部は、歩行の継続性を満足するように修正される。生成しようとしている歩容を「今回歩容」、その次の歩容を「次回歩容」、さらにその次の歩容を「次次回歩容」と呼ぶ。
図12は、その歩容生成部100の歩容生成処理を示すフロー・チャート(構造化フロー・チャート)である。
以下説明すると、まずS10において時刻tを0に初期化するなど種々の初期化作業を行う。次いでS12を経てS14に進み、制御周期毎のタイマ割り込みを待つ。制御周期はΔtである。次いでS16に進み、歩容切り変わり目であるか否かを判断し、肯定されるときはS18に進むと共に、否定されるときはS20に進む。
S18に進むときは時刻tを0に初期化し、次いでS22に進み、次回歩容支持脚座標系、次次回歩容支持脚座標系、今回歩容周期および次回歩容周期を読み込む。これらは前記した要求に相当するが、あらかじめ歩行スケジュールとして記憶しておいても良く、あるいはジョイスティック44などの操縦装置からの指令(要求)とそのときまでの歩行履歴を基に決定しても良い。
次いで、S24に進み、今回歩容の歩容パラメータを仮決定(仮に算出)する。
今回歩容初期遊脚足平位置姿勢は、今回支持脚座標系から見た現在遊脚位置姿勢にする(初期値とする)。今回歩容初期支持脚足平位置姿勢は、今回支持脚座標系から見た現在支持脚位置姿勢にする(初期値とする)。今回歩容終端遊脚足平位置姿勢は、今回支持脚座標系から見た次回支持脚座標系に対応して決定する。(即ち、今回歩容終端遊脚足平位置姿勢から足平を床に接触させたまま、すべらないように足平を水平まで回転させたときの位置姿勢が、次回支持脚座標系となるように設定する。)
今回歩容終端支持脚足平位置姿勢は、現在支持脚位置姿勢から足平を床に接触させたまま、すべらないように足平を床に面接触するまで回転させたときの位置姿勢とする。したがって、床が平面であるならば、今回歩容終端支持脚足平位置姿勢は、今回支持脚座標系に一致する。尚、この歩容では、歩容終端において支持脚足平は水平になるが、必ずしも、このように設定する必要はない。
今回歩容のZMP軌道パラメータは、安定余裕が高く、かつ急激な変化をしないように決定する。(接地面を含む最小の凸多角形(いわゆる支持多角形)の中央付近にZMPが存在する状態を安定余裕が高いと言う(詳細は特開平10−86081号公報に記述))。ただし、今回歩容のZMP軌道パラメータは、仮決定されただけであり、後述するように修正される。
次いでS26に進み、今回歩容につながる定常旋回歩容の歩容パラメータを決定する。
尚、この明細書で「定常旋回歩容」は、その歩容を繰り返したときに歩容の境界において運動状態に不連続が生じないような周期的歩容を意味するものとして使用する。
定常旋回歩容は、通常、第1旋回歩容と第2旋回歩容とからなる。尚、ここで「旋回」なる用語を用いたのは、旋回率を零とするときは直進を意味するので、直進も広義の意味で旋回に含ませることができるからである。定常旋回歩容は、歩容生成部100で今回歩容の終端における発散成分を決定するために暫定的に作成されるものであり、歩容生成部100からそのまま出力されるものではない。
補足すると、定常旋回歩容は、狭義の意味での歩容(両脚支持期の初めから次の片脚支持期の終わりまでを1歩とする歩容)が、少なくとも2歩分必要である。3歩以上の歩容からなる複雑な定常旋回歩容を設定することも可能であるが、今回歩容の終端における発散成分を決定するだけに用いられるので、処理が煩雑となるにも関わらず、効果は少ない。尚、3足以上の脚式移動ロボットにあっては、それに応じて旋回を定義するに足る歩容数が増加する。
先ず、今回歩容、第1旋回歩容、第2旋回歩容の順に脚軌道がつながるように、第1旋回歩容と第2旋回歩容の歩容パラメータ中の脚軌道の境界条件を設定する。
具体的には、第1旋回歩容初期遊脚足平位置姿勢は、次回歩容支持脚座標系から見た今回歩容終端支持脚足平位置姿勢とする。第1旋回歩容初期支持脚足平位置姿勢は、次回歩容支持脚座標系から見た今回歩容終端遊脚足平位置姿勢とする。
第1旋回歩容終端遊脚足平位置姿勢は、今回歩容終端遊脚足平位置姿勢の決定手法と同様に、次回歩容支持脚座標系から見た次次回歩容支持脚座標系に対応して決定する。第1旋回歩容終端支持脚足平位置姿勢は、次回歩容支持脚座標系に一致させた足平を床に接触させたまま、すべらないように足平を床に面接触するまで回転させたときの位置姿勢とする。(したがって、床が平面であるならば、第1旋回歩容終端支持脚足平位置姿勢は、次回支持脚座標系に一致する。)
第2旋回歩容初期遊脚足平位置姿勢は、次次回歩容支持脚座標系から見た第1旋回歩容終端支持脚足平位置姿勢にする。第2旋回歩容初期支持脚足平位置姿勢は、次次回歩容支持脚座標系から見た第1旋回歩容終端遊脚足平位置姿勢にする。
第2旋回歩容終端遊脚足平位置姿勢は、今回支持脚座標系から見た今回歩容終端遊脚足平位置姿勢にする。第2旋回歩容終端支持脚足平位置姿勢は、今回支持脚座標系から見た今回歩容終端支持脚足平位置姿勢にする。
これらの関係を図13に示す。
第1旋回歩容および第2旋回歩容の歩行周期は、次回歩容周期と同一にする(尚、同一にすることは必ずしも必要ではないが、次回歩容周期に応じて決定するのが好ましい)。今回歩容、第1旋回歩容および第2旋回歩容の上記以外の運動パラメータ(両脚支持期時間などの時間パラメータを含む)は、上記決定されたパラメータに応じて、歩容の条件(電動モータ(アクチュエータ)の速度が許容範囲に入っていることなど)を満足するように適宜決定する。
第1旋回歩容および第2旋回歩容のZMP軌道パラメータも、安定余裕が高くかつ急激な変化をしないように決定する。
ところで、上体代表点の初期位置と速度をある値X0,V0に設定すると、図5に示す単純モデルを用いて上記第1旋回歩容と第2旋回歩容を生成し、再び第1旋回歩容の生成を開始するときの初期上体代表点位置速度が、前記設定した初期上体代表点位置速度の値X0,V0に一致する。この値X0,V0を「定常旋回歩容の初期上体代表点位置速度」と呼ぶ。この関係を図に表すと、図14のようになる。ただし、X0を(x0,y0)と表すこととし、V0については表記を省略した。
このように設定すると、図5に示す単純モデルを用いて第1旋回歩容と第2旋回歩容を交互に繰り返し生成しても、演算誤差が蓄積しない限り、第1旋回歩容の初期上体代表点位置速度は、値X0,V0になる。即ち、歩行の継続性が保証される。このときの発散成分、即ち、X0 + V0/ω0 を、「定常旋回歩容の初期発散成分」と呼ぶ。
図12の説明に戻ると、次いでS28に進み、定常旋回歩容の初期発散成分を求める。
図15は、図12フロー・チャートのS28の定常旋回歩容の初期発散成分を算出するサブルーチン・フロー・チャートである。
ここで、同図の説明に入る前に、定常旋回歩容の初期発散成分の算出原理を説明する。
数式3と数式7から、次の数式26が得られる。尚、目標ZMPをZMPtotalと記述する。
Figure 2005219206
実際には、各歩容はその歩容の支持脚座標系上で表現されるが、ここでは、説明を容易にするために、第1旋回歩容と第2旋回歩容は、第1旋回歩容の支持脚座標系で表現されているものとし、前記したように第1旋回歩容と第2旋回歩容を合わせて一つの歩容(定常旋回歩容)とみなす。
数式26を用いて、定常歩旋回容の終端における発散成分q[k](これを以降、「終端発散成分」と呼ぶ)を求めることを考える。時刻0は、定常旋回歩容の初期時刻とする。定常旋回歩容の終端時刻はkΔtとする。尚、終端時刻は、その次の歩容の時刻0に対応する。
右辺第1項は、初期発散成分によって発生する終端発散成分を表わす。右辺第2項は、目標ZMPパターンによって発生する終端発散成分を表わす。右辺第3項は、脚運動によって発生する終端発散成分を表わす。
まず、目標ZMPパターンによって発生する終端発散成分は、目標ZMPパターンが折れ線であるので、前述の折れ線状ZMPpend によって発生する終端発散成分を求める、数式19,20,21,22,23,25に示すアルゴリズムを用いて解析的に求める。これをWzmptotalとする。(XY方向があるので、Wzmptotalは2次元ベクトルになる。)
次に、脚運動によって発生する終端発散成分を求める。最も単純な求め方は、歩容生成部において内部的に、上記した定常旋回歩容の歩容パラメータから脚運動を生成し、さらにZMPfeet[i](i=0,1,…,k) を、数式1,2から求め、これを、数式26の右辺第3項に代入する手法である。
演算量は多いが、ロボット1に搭載可能な高速のコンピュータを用いれば制御周期内に演算を完了することができる。また、コンピュータの性能を同一とするときも、演算に際してサンプリング周期を実際の制御周期よりも長く設定すれば、若干の誤差は発生するが、演算量を減少させることもできる。
上記の如くして求められた値をWfeetとする。(XY方向があるので、Wfeetは2次元ベクトルになる。)
以上より、次の数式27を得る。
Figure 2005219206
さて、定常発散成分の定義から、定常旋回歩容の次の歩容の支持脚座標系から見た定常旋回終端発散成分をq’[k]とすると、次の数式28を満足しなければならない。
Figure 2005219206
一方、定常旋回歩容の支持脚座標系(図13に示すX’,Y’座標系)から見た定常旋回歩容の次の歩容の支持脚座標系(同図に示すX”,Y”座標系)を、座標系の回転を表わす回転行列Mと座標系の原点座標を表わす平行移動ベクトルBで表わすと、以下の数29に示すようになる。
Figure 2005219206
数式28と数式29より、次の数式30を得る。
Figure 2005219206
さらに、数式30と数式27より、次の数式31を得る。
Figure 2005219206
マトリックスAの逆行列をinv(A) と記述すると、数式31から数式32が得られる。ただし、Iは単位行列である。
Figure 2005219206
上記した算出原理を前提とし、図15フロー・チャートを参照して説明すると、S100において目標ZMPによって発生する終端発散成分を上記手法で求め、次いでS102に進み、数式26の右辺第3項を用いて脚反力によって発生する終端発散成分を求め、次いでS104に進み、数式32を用いて定常旋回初期発散成分q[0]を求める。定常旋回初期発散成分q[0]は、定常旋回歩容の支持脚座標系から見た値になっている。
次いで、S106に進み、定常旋回初期発散成分q[0]を今回歩容の支持脚座標系から見た値に変換する。これをq”とする。
次の課題は、今回歩容の終端発散成分がq”に一致するように、上記仮決定した今回歩容のパラメータを修正することである。この処理においては、上記定常旋回歩容における処理とほとんど同じであるので、以下では、変数、値、および記号を、改めて今回歩容に対応させる。
この実施例では、ZMP軌道パラメータを修正することとする。その他の歩容パラメータを修正しても良いが、通常、パラメータの修正量と終端発散成分の関係が非線形になるので、解析的に修正量を決定することはできない。
前記した仮決定された目標ZMP(これを「仮目標ZMP」と呼ぶ)に、ZMP修正量(補正量あるいは付加量)を加えることにより、ZMPを修正する。修正されたZMPを改めて目標ZMPという。これらの関係を図16に示す。
同図に示す如く、目標ZMP(ZMPtotal)=仮目標ZMP+ZMP修正量、となるように、目標ZMPパラメータを修正する。
以降は、説明を簡単にするために、すべての変数を1次元の世界で扱う。
ZMP修正量は図16中段に示すように台形状であり、その高さをaとする。目標ZMPパターンによって発生する終端発散成分Wzmptotalは、目標ZMPと終端発散成分の関係が線形であることから、以下の数式33に示すように表すことができる。
Figure 2005219206
ここで、Wzmptmpは、今回歩容の仮目標ZMPパターンによって発生する終端発散成分である。Wtrimは、a=1とした場合のZMP修正量によって発生する終端発散成分である。これらは、前記定常旋回歩容の目標ZMPパターンによって発生する終端発散成分を求める方法によって、解析的に求められる。
終端発散成分p[k]がp"であること、および、数式27と数式33より、次の数式34を得る。
Figure 2005219206
ただし、q[0]は、今回歩容の初期発散成分(初期倒立振子位置+(初期倒立振子速度/ω0))である。したがって、次の数式35に示すようになる。
Figure 2005219206
最後に、ZMP修正量を仮目標ZMPに加算したものが目標ZMPとなるように、目標ZMPのパラメータを修正すれば、今回歩容の終端発散成分が、定常旋回歩容の初期発散成分を今回歩容から見た値q" に一致する。
図12フロー・チャートの説明に戻ると、次いでS30に進み、今回歩容を修正する。具体的には、今回歩容の終端発散成分が定常旋回歩容の初期発散成分q" に一致するように、今回歩容のパラメータを修正する。
図17はその処理を示すサブルーチン・フロー・チャートである。
以下説明すると、S200において今回歩容の仮目標ZMPパターンによって発生する終端発散成分Wzmptmpを求め、次いでS202に進み、a=1とした場合のZMP修正量によって発生する終端発散成分Wtrimを求める。
次いでS204に進み、今回歩容の脚運動によって発生する終端発散成分たるWfeetを求め、次いでS206に進み、今回歩容の初期発散成分q[0]を初期倒立振子位置と速度から求め、求めた値を数式35に代入してZMP補正量の台形高さaを求める。次いでS208に進み、前記したように目標ZMPのパラメータを修正する。
以上が、歩容の切り変わり目の処理である。
図12フロー・チャートの説明に戻ると、次いでS20に進み、決定された歩容パラメータから今回歩容の瞬時値を決定する。
図18はその処理を示すサブルーチン・フロー・チャートである。
以下説明すると、S300において、今回歩容パラメータを基に、時刻tにおける目標ZMPを求め、S302に進み、今回歩容パラメータを基に、時刻tにおける目標両足平位置姿勢を求める。
次いでS304に進み、今回歩容パラメータを基に、時刻tにおける目標上体姿勢を求め、S306に進み、数式1および数式2を用いて、時刻tおよびそれ以前の目標足平位置姿勢から、時刻tにおける脚ZMP(ZMPfeet )を算出する。
次いでS308に進み、数式3を用いて、倒立振子ZMP(ZMPpend) を算出し、S310に進み、数式4を用いて、倒立振子ZMPから倒立振子水平位置を算出する。次いでS312に進み、倒立振子水平位置から上体の水平位置を決定する。具体的には、前述したように、上体代表点の水平位置が、倒立振子質点水平位置に一致するように決定する。
次いでS314に進み、本出願人が先に特開平10−86080号公報で提案した上体高さ決定手法を用いて上体高さを決定する。
図12フロー・チャートの説明に戻ると、次いでS32に進み、時刻tにΔtを加え、再びS14に戻り、上記の処理を繰り返す。
図4を参照してこの実施例に係る歩容生成装置の動作をさらに説明すると、歩容生成部100において、上記したように目標歩容が生成される。生成された目標歩容の歩容パラメータの中、目標上***置姿勢(軌道)は、ロボット幾何学モデル(逆キネマティクス演算部)102に直接送られる。
また、その他の目標足平(足部)位置姿勢(軌道)、目標全床反力中心点(即ち、目標ZMP)軌道、および目標全床反力(軌道)は、複合コンプライアンス動作決定部104に直接送られる一方、目標床反力分配器106にも送られ、そこで床反力は各足平(足部22R,L)に分配され、目標各足平床反力中心点および目標各足平床反力が決定されて複合コンプライアンス動作決定部104に送られる。
複合コンプライアンス動作決定部104から、機構変形補償付き修正目標足平位置姿勢(軌道)がロボット幾何学モデル102に送られる。ロボット幾何学モデル102は、目標上***置姿勢(軌道)と機構変形補償付き修正目標足平位置姿勢(軌道)を入力されると、それらを満足する12個の関節(10R(L)など)の関節変位指令(値)を算出して変位コントローラ108に送る。変位コントローラ108は、ロボット幾何学モデル102で算出された関節変位指令(値)を目標値としてロボット1の12個の関節の変位を追従制御する。
よってロボット1に生じた床反力は実各足床反力検出器110(6軸力センサ34)によって検出される。検出値は前記した複合コンプライアンス動作決定部104に送られる。また、ロボット1に生じた姿勢傾斜偏差θerrx, θerryは傾斜センサ36によって検出され、検出値は姿勢安定化制御演算部112に送られ、そこで姿勢傾斜を復元する目標全床反力中心点まわり補償全床反力モーメントが算出されて複合コンプライアンス動作決定部104に送られる。複合コンプライアンス動作決定部104は、入力値に基づいて目標値を修正する。
尚、この発明の要旨は歩容生成部100におけるロボットの歩容生成にあり、上記した複合コンプライアンス動作決定部104などの構成および動作は、本出願人が先に出願した特開平10−277969号公報などに詳細に記載されているので、説明は以上に止める。
この実施例に係る脚式移動ロボットの歩容生成装置は上記の如く構成したので、本出願人が先に特開平10−86081号において提案した技術の上記した不都合を解消し、脚式移動ロボットの床反力を含む歩容を、動力学的平衡条件をほぼ満足しながら、自在かつリアルタイムに生成して任意の歩幅、旋回角、歩行周期などの歩容を生成することができると共に、生成された歩容同士の境界においてロボットの各部位の変位および速度が連続な歩容を生成することができる。
即ち、図19は上体代表点のY軸方向(左右方向)の軌道を示すタイム・チャートであるが、この実施例に係る脚式移動ロボットの歩容生成装置にあっては、同図に符合Bで示すように、上体代表点の軌道が定常旋回歩容の上体代表点の軌道Aに漸近(収束)するような歩容を生成することができる。
さらに、脚式移動ロボットの動力学モデルを単純化して線形度を高めたので、発散などのロボットの将来の挙動を予測して歩容を生成することができる。
また、それによって歩行以外の動作もリアルタイムに生成できるようになるので、歩行以外の任意の動作と歩行を連続的に滑らかにつなげることも可能となる。
尚、搭載するCPU(第1の演算装置60)の能力が格段に高いことを前提とすれば、3質点モデルに代え、図23に示したような全リンクに質点を設定した、換言すれば非線形なモデルを用いて歩容を生成することも可能となる。以下、その構成をこの発明の参考例として記載する。
図20は、その参考例に係る脚式移動ロボットの歩容生成装置の動作の一部を示す、第1実施例の図15に類似する、定常旋回歩容の初期発散成分の算出作業のサブルーチン・フロー・チャートである。
参考例に係る装置の動作を説明すると、第1実施例の図12においてS10からS26までに示すのと同様の処理を行ってS28に進んだ後、そのサブルーチン・フロー・チャートである図20に進み、定常旋回歩容の初期発散成分を算出する。
図20フロー・チャートにおいては、先ずS400において初期上***置速度候補(X0,V0)を仮決めする。上***置速度は、上体代表点の位置と速度を意味する。尚、説明を簡略にするため、X方向だけを探索する場合を例にとるが、実際には位置速度ともX,Y方向を別々にあるいは同時に探索する必要がある。X,Y方向を同時に探索するときは、探索空間がX位置、Y位置、X速度、Y速度の4次元になる。
次いでS402を経てS404に進み、動力学モデル(図23に示したような全リンクに質点を設定した非線形なモデル)を用いて(X0,V0)を上体の初期状態として定常旋回歩容パラメータを基に、時刻0から終端時刻までの歩容を生成する。
具体的には、目標ZMPと目標足平位置姿勢と目標上体姿勢を求め、(X0,V0)を上体の初期位置速度とし、動力学モデルを用いて目標ZMPを満足する上体軌道を生成する。第1実施例と同様に、軌道生成は歩容生成部100の内部で行われるだけであって、出力されることはない。
次いでS406に進み、生成した歩容の終端上***置速度を次ぎの1歩の支持脚座標系(図14のX’”,Y’”座標系と同様)から見た値に変換し、その値を(Xe,Ve)とする。
次いでS408に進み、図示の如く、(X0,V0)と(Xe,Ve)の差(errx,erry )を算出する。即ち、定常旋回歩容では(X0,V0)と(Xe,Ve)が一致していなければならないことから、両者の差(errx,erry )が0となるように探索することを考える。
次いでS410に進み、算出した差が、適宜設定する許容範囲内にあるか否か判断する。尚、このように位置と速度の境界条件ずれの許容値を設定する代わりに、初期発散成分(X0+V0/ω0)と初期収束成分(X0−V0/ω0)がそれぞれある許容範囲内にあるか否か判断するようにしても良い。
S410で否定されるときはS412に進み、(X0,V0)の付近に複数の初期値候補(X0+ΔX0,V0),(X0,V0+ΔV0)を決め、それぞれを上体の初期状態として定常旋回歩容の歩容パラメータを基に歩容を生成し、生成した歩容の終端上***置速度を次ぎの1歩の支持脚座標系から見た値に変換した値(Xe+ΔXe1,Ve+ΔVe1),(Xe+ΔXe2,Ve+ΔVe2)を求める。
次いでS414に進み、(X0,V0)およびその付近の初期値候補に対する終端上***置速度と前記した差を基に、次ぎの初期値候補(X0,V0)を決定する。
S410で否定される限りは上記した処理を繰り返すと共に、肯定されるときは繰り返しループ(S402)を抜けてS416に進み、定常旋回初期発散成分q[0]を図示の式から求める。次いでS418に進み、第1実施例の図15のS106と同様な処理を行う。
尚、参考例にあっては、第1実施例で用いたような線形な3質点モデルを用いていないが、発散成分および収束成分の概念は、図23に示すような非線形なモデルの挙動の摂動分に対しても近似的に十分な精度で適用することができるので、第1実施例と同様な式を用いて発散成分を定義することとする。
次いで図12と同様のフロー・チャートにおいてS30に進み、今回歩容の歩容パラメータを修正する。
図21はその処理を示すサブルーチン・フロー・チャートである。
以下説明すると、S500を経てS502に進み、仮目標ZMPパターンとその他の今回歩容の歩容パラメータを基に、終端時刻までの今回歩容を計算することによって今回歩容終端での上***置速度(Xe,Ve)を求め、さらに終端発散成分q[0]を図示の式を用いて求める。
次いでS504に進み、終端発散成分誤差errqを図示の式を用いて求め、S506に進んで求めた誤差が許容範囲内にあるか否か判断し、否定されるときはS508に進み、a=Δaとし、第1実施例と同様に図16の関係に従って仮目標ZMPパターンに修正を加えた目標ZMPを基に、終端時刻までの今回歩容を計算することによって、今回歩容終端での上***置速度(Xe,Ve)を求め、さらには終端発散成分q1[k]を図示の式を用いて求める。
尚、S508においてΔaは適宜に設定される微小量の定数である。繰り返し演算によって誤差errqが小さくなるにつれてΔaも減少するように設定しても良い。ただし、定数としても、数回の繰り返し演算で誤差は許容範囲内になる。
次いでS510に進み、パラメータ感度rを図示の式から求め、S512に進み、図示のように求めた修正量を仮目標ZMPパターンに加え、仮目標ZMPパターンを修正する。
S506で否定される限りは上記した処理を繰り返すと共に、肯定されるときは繰り返しループ(S500)を抜けてS514に進み、最終的に得られた仮目標ZMPパターンの値を目標ZMPと決定する。
上記を説明すると、動力学モデルを用いて今回歩容パラメータに従って歩容を生成し、そのまま連続して定常旋回歩容パラメータに従って歩容を繰り返し生成したとき、生成した歩容が定常旋回歩容に収束するためには、第1実施例と同様に、今回歩容の終端発散成分が、定常旋回初期発散成分q[0]を今回歩容の支持脚座標系から見た値であるq”に、完全にあるいはほぼ一致していなければならない。
そこで、参考例においても、その条件を満足するように、今回歩容の歩容パラメータの中の目標ZMPパターンを修正するようにした。尚、参考例にあっても、定常旋回歩容との境界における上***置速度が一致するように今回歩容パラメータを修正しても良い。ただし、発散成分に関する境界条件だけを満足する場合に比較すると、条件が厳しくなり、修正すべきパラメータを2倍に増やすこととなって探索空間が増大する。また、上記したように、目標ZMPを修正して上***置速度を一致させる場合には、ZMP修正量の波形も、図16に示すような単純な台形形状に止まらず、2段式の台形形状のような複雑な形状としなければならず、修正量も大きくなりがちである。図19を再び参照して説明すると、前述したように、同図に符合Aで示す軌道は、定常旋回歩容との境界における上体代表点の位置速度が一致するように今回歩容を生成し、次いで定常旋回歩容を生成した場合の上体代表点軌道を指す。符号Bで示す軌道は、今回歩容の終端発散成分がq”に一致するように今回歩容を生成し、次いで定常旋回歩容パラメータを用いて連続する歩容を生成し続けた場合の上体代表点軌道を示す。
図示の如く、符合Bで示す軌道は、今回歩容と最初の定常旋回歩容との境界においては、通常、符号Aで示す軌道からずれているが、その後、徐々に符号Aで示す軌道に収束(漸近)し、次の定常旋回歩容時期で符号Aで示す軌道にほぼ一致する。このように、発散成分のみを一致させる歩容生成手法でも、位置速度までも一致させる歩容生成手法と同様、歩容の発散を防止する効果を得ることができる。同図に符合Cで示す例は、それらを考慮せずに軌道を生成した場合を示す。このような場合は、生成した軌道は経時的に符合Aで示す軌道から発散してしまう。尚、位置速度までも一致させる歩容生成手段は、換言すれば、発散成分のみならず、収束成分も一致させる歩容生成手法である。したがって、位置速度までも一致させる歩容生成手法は、発散成分のみを一致させる歩容生成手法の特殊例であると言うことができる。
尚、目標ZMP以外のパラメータを修正しても良い(これは第1実施例でも同様である)。また、説明を簡略化するために、X方向だけの1次元探索としたが、実際には、定常旋回歩容の上***置速度の初期値探索と同様に次元が増加する。
尚、参考例においては、疑似的なニュートン法(あるいは(X0,V0)での疑似的なヤコビアン(感度マトリックス)を求めて次ぎの候補を決定する手法)を用いるようにしたが、シンプレックス法などの探索法を用いても良い。さらには、予め種々のパラメータに対して探索計算を行ってマップ化しておいても良い。
さらに、参考例で述べた非線形モデルを用いて探索的に歩容を求める手法は、第1実施例の解析的に歩容を求めるのに使用した3質点モデル(あるいは1質点モデル)などの線形モデルを用いても良いことは言うまでもない。ただし、解析的に歩容を求めることができるので、非効率な探索法を用いることの意義は少ない。その他、実質的に十分な精度があるならば、どのような動力学モデルを用いても良い。
第1実施例あるいは参考例において、想定した定常旋回歩容通りに歩容を生成し続けているときには、ZMP修正量が0となり、今回歩容として決定される目標ZMPは、想定した定常旋回歩容のZMP(仮目標ZMP)と一致する。ところで、定常旋回歩容のZMP(仮目標ZMP)は通常、安定余裕が高くなるように設定される。したがって、想定した定常旋回歩容通りに歩容を生成し続けている場合には、今回歩容の安定余裕も高い。
それに対し、今回歩容を1歩前に想定した定常旋回歩容と大きく異なるように生成しようとすると、ZMP修正量の絶対値が大きくなるので、今回歩容として決定される目標ZMP軌道は理想的な軌道から大きくずれ、安定余裕が低くなる。例えば、右に旋回しようとするときは右に重心をずらすように歩容が生成されるが、その次ぎの1歩で急に左旋回するような要求が生じた場合、重心を右から左に移動させるために目標ZMP軌道を大きく右にずらす必要が生じ、安定余裕が低下して右に倒れやすくなる。
以上の性質から、想定した定常旋回歩容は、将来実際に生成されるであろう歩容になるべく近くなるように設定すべきである。
定常旋回歩容で歩き続けることは特殊なことであり、一般的には、定常旋回歩容からずれた歩容が将来生成されるが、上記における定常旋回歩容設定手法は、将来実際に生成されるであろう歩容になるべく近くなるように設定する例である。
上記以外の定常旋回歩容の設定手法を、以下の1)から4)までに示す。4)を除くと、将来実際に生成されるであろう歩容と定常旋回歩容のずれは、上記で得るよりも大きくなる傾向があるが、演算が容易になる。
1)次次回支持脚座標系と次次回歩行周期は、今回支持脚座標系、今回歩行周期およびそれまでの歩行履歴を基に、生成したい歩容の移動速度や旋回速度が急激に変化しないであろうということを前提にして予想する、あるいは外挿的に求めしても良い。
2)定常旋回歩容を常に直線歩容にしても良い。ただし、旋回速度が大きくなるにつれ、ZMP修正量が増加する。即ち、安定余裕が低下する。
3)定常旋回歩容を常に静止歩容あるいはその場足踏み歩容にしても良い。ただし、歩行速度が上がるにつれ、ZMP修正量が増加する。尚、静止歩容とは、動きのない静止状態の歩容を意味する。
4)今回歩容と定常旋回歩容の間に過渡期歩容を追加しても良い。挙動予測演算が複雑になるが、定常旋回歩容を決定するときの制約条件(境界条件)が緩くなり、より望みに近い定常旋回歩容が設定できるので、より一層安定余裕を高めることができる。
さらには、3)と4)を組み合わせることも可能である。
次いで述べるこの発明の第2実施例に係る脚式移動ロボットの歩容生成装置は、その点に焦点をおいたものである。
図22は、その第2実施例に係る装置の動作の一部を示す、第1実施例の図13に類似する、定常旋回歩容の別の設定例を示す説明図である。即ち、図22に示す如く、定常旋回歩容が静止歩容を含むように構成すると共に、今回歩容と静止歩容(定常旋回歩容)の間に過渡的な歩容(過渡歩容。定常旋回歩容以外の歩容を意味する)が挿入するようにした。
このように、今回歩容、過渡歩容、静止歩容からなる3つの歩容を設定することによって、姿勢の発散を効果的に防止することができる。また、いつでも静止状態に移行できるように歩容が生成されるので、急に停止要求が与えられても、安定余裕の高い停止動作が可能となる。
具体的には、静止歩容も定常旋回歩容の1つと考え、前述の定常旋回歩容の初期発散成分算出アルゴリズムを使用することとする。ただし、静止時の上体質点速度が0であることから、発散成分は倒立振子質点位置に一致するので、わざわざこのアルゴリズムを用いなくても容易に求めることができる。
第2実施例は上記の如く構成したので、第1実施例の場合と同様に、安定余裕の高い歩容を自在かつリアルタイムに生成することができる。
第1実施例から第2実施例は上記の如く、少なくとも上体24と、前記上体に連結される複数本、より具体的には2本の脚部(脚部リンク)2を備えた脚式移動ロボット1の歩容生成装置(歩容生成部100)において、少なくとも前記上体と脚部の運動と、床反力、より具体的にはZMPとの関係を表す動力学モデル(図5および図6に示す)、少なくとも要求(次回歩容指示脚座標系、次次回歩容指示脚座標系、今回歩容周期、次回歩容周期など。S22)に応じ、前記脚部の軌道(目標足平位置姿勢軌道)と前記床反力の軌道(目標全床反力中心点軌道(目標ZMP軌道))を決定するパラメータを少なくとも含む、今回歩容のパラメータを仮決定する今回歩容パラメータ仮決定手段(S24)、少なくとも前記要求に応じ、前記今回歩容に続く周期的歩容(定常旋回歩容)の前記パラメータを想定(決定)する周期的歩容パラメータ想定手段(S26)、前記動力学モデルおよび前記今回歩容のパラメータとそれに続く前記周期的歩容のパラメータに基づいて決定される前記上体の軌道(目標上***置姿勢軌道)が、前記周期的歩容のパラメータから決定される前記周期的歩容の前記上体の軌道に実質的に収束あるいは一致するように、少なくとも前記仮決定された今回歩容のパラメータを修正する今回歩容パラメータ修正手段(S30,S200からS208)、および少なくとも前記修正された前記今回歩容のパラメータに基づいて前記今回歩容の瞬時値を決定する今回歩容瞬時値決定手段(S20,S300からS314)を備えるように構成した。
また、少なくとも上体24と、前記上体に連結される複数本、具体的には2本の脚部(脚部リンク)2を備えた脚式移動ロボット1の歩容生成装置(歩容生成部100)において、少なくとも前記上体と脚部の運動と、床反力(具体的にはZMP)との関係を表す動力学モデル(図5および図6に示す)、少なくとも要求(S22)に応じ、前記脚部の軌道(目標足平位置姿勢軌道)と前記床反力の軌道(目標全床反力中心点軌道(目標ZMP軌道))を決定するパラメータを少なくとも含む、今回歩容のパラメータを仮決定する今回歩容パラメータ仮決定手段(S24)、少なくとも前記要求に応じ、前記今回歩容に続く周期的歩容(定常旋回歩容)の前記パラメータを想定(決定)する周期的歩容パラメータ想定手段(S26)、前記周期的歩容の前記パラメータに基づき、前記周期的歩容の前記上体の挙動を前記動力学モデルで近似したときの発散成分の歩容境界での値である、周期的歩容境界発散成分(定常旋回初期発散成分)を決定する周期的歩容境界発散成分決定手段(S28,S100からS106)、前記今回歩容のパラメータに基づき、前記動力学モデルを用いて生成される今回歩容の終端における少なくとも前記発散成分(終端発散成分)が完全に一致あるいは実質的に一致するように、前記今回歩容のパラメータ、より具体的には目標ZMPのパラメータを修正する今回歩容パラメータ修正手段(S30,S200からS208)、および少なくとも前記修正された前記今回歩容のパラメータに基づいて前記今回歩容の瞬時値を決定する今回歩容瞬時値決定手段(S20,S300からS314)を備える如く構成した。
また、前記今回歩容と前記周期的歩容の間に過渡的な歩容(過渡歩容)が挿入される如く構成した。
また、前記周期的歩容が静止歩容を含む如く構成した。
また、少なくとも上体24と、前記上体に連結される複数本、より具体的には2本の脚部(脚部リンク)2を備えた脚式移動ロボット1の歩容生成装置(歩容生成部100)において、前記脚部の運動によって発生する慣性力と重力の合力(総慣性力)である脚部反力、より具体的には脚ZMP(ZMPfeet)を前記上体の挙動に依存せずに算出する脚部反力算出手段(脚ZMP算出器200,S20,S306)、少なくとも前記算出された脚部反力と目標床反力、より具体的には目標ZMPとから、少なくとも前記上体の動力学的挙動を記述する倒立振子モデルの支点位置(ZMPpend)を算出する倒立振子モデル支点位置算出手段(S20,S308)、少なくとも前記算出された倒立振子モデルの支点位置に基づいて前記倒立振子モデルの変位、より具体的には前記倒立振子質点位置(倒立振子水平位置xb) を算出する倒立振子モデル変位算出手段(S20,S310)、少なくとも前記算出された倒立振子モデルの変位に基づいて前記上体の位置、より具体的には前記上体の水平位置を算出する上***置算出手段(上***置決定器202,S20,S312,S314)、および少なくとも前記算出された上***置を用いて歩容、より具体的には今回歩容の瞬時値を生成(算出)する歩容生成手段(S20,S300からS314,歩容生成部100)を備えるように構成した。
また、少なくとも上体24と、前記上体に連結される複数本、より具体的には2本の脚部(脚部リンク)2を備えた脚式移動ロボットの歩容生成装置(歩容生成部100)において、前記脚部の運動によって発生する慣性力と重力の合力に疑似的に対応する前記脚部のZMPに相当する脚部ZMP(ZMPpend)を前記上体の挙動に依存せずに算出する脚部ZMP算出手段(脚ZMP算出器200,S20,S306)、少なくとも前記算出された脚部ZMPと目標ZMPとから、少なくとも前記上体の動力学的挙動を記述する倒立振子モデルの支点位置(ZMPpend)を算出する倒立振子モデル支点位置算出手段(S20,S308)、少なくとも前記算出された倒立振子モデルの支点位置に基づいて前記倒立振子モデルの変位、より具体的には前記倒立振子質点位置(倒立振子水平位置xb) を算出する倒立振子モデル変位算出手段(S20,S310)、少なくとも前記算出された倒立振子モデルの変位に基づいて前記上体の位置を算出する上***置算出手段(S20,S312,S314。上***置決定器202)、および少なくとも前記算出された上***置を用いて歩容、より具体的には今回歩容の瞬時値を生成(算出)する歩容生成手段(S20,S300からS314、歩容生成部100)を備える如く構成した。
また、前記倒立振子モデル支点位置算出手段は、前記目標ZMPに第1の係数mtotal/mb を乗じて得た積から、前記脚部ZMPに第2の係数mfeet/mtoal を乗じて得た積を減算して前記倒立振子モデルの支点位置(倒立振子水平位置xb)を算出する如く構成した。
また、少なくとも上体24と、前記上体に連結される複数本、より具体的には2本の脚部(脚部リンク)2を備えた脚式移動ロボット1の歩容生成装置(歩容生成部100)において、前記脚部の運動によって発生する慣性力と重力の合力である脚部反力(脚ZMP(ZMPfeet))を前記上体の挙動に依存せずに算出する脚部反力算出手段(脚ZMP算出器200,S20,S306)と、少なくとも前記算出された脚部反力と目標床反力(目標ZMP)とから、少なくとも前記上体の動力学的挙動を記述する倒立振子モデルの支点位置(倒立振子ZMP(ZMPpend)) を算出する倒立振子モデル支点位置算出手段(S20,S308)と、少なくとも前記算出された倒立振子モデルの支点位置に基づいて前記倒立振子モデルの変位、より具体的には位置(倒立振子水平位置)を算出する倒立振子モデル変位算出手段(S20,S310)と、少なくとも前記算出された倒立振子モデルの変位に基づいて前記上体の位置(上体の水平位置)を算出する上***置算出手段(上***置決定器202,S20,S312,S314)とから構成される動力学モデル、少なくとも要求(S22)に応じ、前記脚部の軌道(目標足平位置姿勢軌道)と前記床反力の軌道(目標全床反力中心点軌道(目標ZMP軌道))を決定するパラメータを少なくとも含む、今回歩容のパラメータを仮決定する今回歩容パラメータ仮決定手段(S24)、少なくとも前記要求に応じ、前記今回歩容に続く周期的歩容(定常旋回歩容)の前記パラメータを想定する周期的歩容パラメータ想定手段(S26)、前記周期的歩容の前記パラメータに基づき、前記周期的歩容の境界における前記倒立振子モデルの発散成分である周期的歩容境界発散成分(定常旋回歩容の初期発散成分)を決定する周期的歩容境界発散成分決定手段(S28,S100からS106)、前記今回歩容のパラメータに基づき、前記動力学モデルを用いて生成される今回歩容の終端における前記倒立振子モデルの発散成分が前記周期的歩容境界発散成分(今回歩容の終端発散成分)に完全に一致または実質的に一致するように、前記今回歩容のパラメータを修正する今回歩容パラメータ修正手段(S30,S200からS208)、および少なくとも前記修正された今回歩容のパラメータに基づいて前記今回歩容の瞬時値を決定する今回歩容瞬時値決定手段(S20,S300からS314)を備える如く構成した。
また、前記床反力が少なくともZMPを含む如く構成した。前記(図5および図6に示す)倒立振子モデルが線形モデルである如く構成した。
次いで、脚ZMP(ZMPfeet)の算出について付言する。
脚ZMP(ZMPfeet)を求める関数は、以下の条件を満たすことが望ましい(第1実施例では、これら全ての条件を満足している)。
条件a)足平軌道を決定する歩容パラメータの全てまたは一部を基に決定されること。
条件b)上体代表点の運動の影響を受けないこと。
条件c)単純化モデルの近似精度が十分に高いこと。
条件d)可能な限り連続であること。(上体加速度を連続にするため。)
これらの内、条件a,bは予測演算を容易にするための条件である。上記では、数式1と数式2から脚ZMPを求めているが、数式1と続いて述べる数式36および数式37を用いても良い。
Figure 2005219206
ただし、Cは定数であり、また、両脚重心加速度ベクトルafeet が数式37によって求められ、数式36の両脚重心鉛直方向加速度ベクトルafeetzは、afeetのX,Y成分を0にしたベクトルである。
Figure 2005219206
数式36は、数式2よりも調整自由度が高いので、近似精度を高くすることができる。また、点Pまわりの脚総慣性力モーメントを求める数式1において、脚加速度に関する項を故意に定数倍するなど、力学的には正しくない式に変更しても、最終的に単純化モデルの近似精度が高くなるのであれば、差し支えない。
続いて、作用点Pの設定に関して付言する。
作用点Pは次のように設定することも可能である。
1)今回歩容の支持脚座標系原点あるいはその近傍の所定の点に作用点Pを設定する。
2)両脚支持期の間に直前歩容の支持脚座標系原点あるいは近傍の所定の点から今回歩容の支持脚座標系原点あるいは近傍の所定の点に、連続的に移動するように作用点Pを設定する。
3)作用点Pを仮目標ZMP軌道に一致させる。
以下、それぞれの特徴を解説する。
1)については、作用点Pが脚位置に対して相対的に不連続(即ち、床に設定された絶対座標系から見て不連続)になるので、ZMPfeet も脚位置に対して相対的に不連続(即ち、前記した絶対座標系から見て不連続)になる欠点がある。しかしながら、両足平の加速度があまり大きくない両脚支持期に座標系を切り替える限り、不連続の大きさは、歩行上、あまり問題にならない。
2)については、近似精度は、1)よりも良い。また、作用点Pが脚位置に対して相対的に連続になるので、ZMPfeet も脚位置に対して相対的に連続になる。
3)については、2)の手法よりもさらに近似精度が高くなる。また2)と同様に、ZMPfeet も脚位置に対して相対的に連続になる。
続いて、脚総慣性力モーメントの算出について付言する。
各足平質点軌道は、足平運動パラメータから決定される軌道であるが、各足平質点軌道を求める際に用いる足平位置姿勢の軌道は、歩容生成部100から出力される目標歩容の足平位置姿勢と一致していなくても良い。
たとえば、目標歩容の足平が回転する場合であっても、各足平質点軌道を求める際に用いる足平位置姿勢の軌道は、足平を水平姿勢を保ったまま(即ち、べた足)であっても良い。精度が著しく低下しない限り、持ち上げ量等、他のパラメータを変えた軌道にしても良い。
また、脚質点は次のように設定しても良い。
1)足平内の所定の点
2)上記点から鉛直方向に一定距離ずらした点
3)足平内に複数の質点を設定しても良い。また足平にイナーシャを設定しても良い。
上記いずれの手法も、前記条件b)を満足している。
上体および脚の質点オフセット設定について付言すると、上体および脚の質点オフセット設定値は、固定値でもほとんど問題ないが、重心位置のモデル化誤差をできるかぎり小さくするために、歩容パラメータに応じて補正されるようにしても良い。また、前記したような倒立振子の水平位置を上体代表点水平位置に対応させる代わりに、ロボットの全重心位置あるいは一部の重心位置(脚部の全部あるいは一部の質量分布を除く、ロボットの質量分布の重心位置)に対応させても良い。
また、倒立振子の高さに関しては、歩容パラメータに応じて変更しても構わないが、将来挙動予測を容易にするために、短期的(例えば1歩の期間)には一定値にするのが望ましい。
さらに、脚反力によって発生する発散成分の算出について付言すると、脚反力によって発生する発散成分を、制御周期毎の脚軌道を生成せずに、歩容パラメータから近似的に直接求めるようにしても良い。
例えば、脚ZMPが、一歩の間、歩容初期の両脚重心位置と歩容終端での両脚重心位置の平均値にあると近似すれば、この平均値にH(1,T)を乗じたものが、脚反力によって発生する発散成分を時刻0のインパルスに換算したものの近似値になる。
脚運動によって発生する終端発散成分は、歩容パラメータ(特に脚運動パラメータと時間パラメータ)を入力とする関数になっている。したがって、歩容パラメータと脚運動によって発生する終端発散成分の関係を表わすマップを作成しておけば、演算量を減らすこともできる。ただし、必要なメモリ容量が増加する。いずれの手法を用いても良い。
上記した変形例を組み合わせることも可能である。例えば、ZMP修正値を求めるための(将来挙動予測時の)脚ZMP算出手法と、今回制御周期の瞬時値を求めるときの脚ZMP算出法は厳密に一致していなくても良い。少し差があっても、ZMP修正値を求めるときに初期発散成分の影響が考慮されているので、前記差によって、発散成分がずれても、1歩後に再び歩容を設計するときに、発散しないように補正されるからである。
尚、上記した第1実施例の図12フロー・チャートにおいて、t=0のときに歩容を修正または変更したが(S10)、それ以外の時点で修正または変更しても良い。そのときは現在時刻を今回歩容の初期時刻とみなせば良い。即ち、今回歩容の期間が現在時刻から今回歩容終端時刻までであるとすれば良い。
尚、上記において、図6に示したブロック線図は、演算処理順序を変えるなどの等価変形をしても良い。
また、この発明を2足歩行ロボットに関して説明してきたが、3足以上の多脚ロボットにも応用することができる。
この発明の第1実施例に係る脚式移動ロボットの歩容生成装置を全体的に示す概略図である。 図1に示す脚式移動ロボットの足部の構造を示す説明断面図である。 図1に示す制御ユニットの詳細を示すブロック図である。 図1に示す脚式移動ロボットの歩容生成装置の構成を機能的に示すブロック図である。 図4に示す構成の中の歩容生成部で使用する、図1に示す脚式移動ロボットを倒立振子で近似して得た動力学モデルを示す説明図である。 図5に示す動力学モデルを用いて図4に示す歩容生成部が行う動力学演算を示すブロック図である。 図5に示す動力学モデルの倒立振子の支点位置を示すZMP相当値ZMPpend を演算するのに用いる、脚部の質点の慣性力と重力の合力の作用点Pの軌跡を示すタイム・チャートである。 図1に示す脚式移動ロボットにおいて上体軌道が発散した場合を示す説明図である。 図5に示す動力学モデルの倒立振子の支点位置を示すZMP相当値ZMPpend を離散関数化して示すタイム・チャートである。 同様に図5に示す動力学モデルの倒立振子の支点位置を示すZMP相当値ZMPpend の軌道を波形で示すタイム・チャートである。 図10に示すZMP相当値ZMPpend の波形を分解して示すタイム・チャートである。 図1に示す脚式移動ロボットの歩容生成装置の動作を示すフロー・チャートである。 図12フロー・チャートで使用する定常旋回歩容を着地位置などから説明する説明図である。 同様に、図12フロー・チャートで使用する定常旋回歩容の上体軌道を着地位置などから説明する説明図である。 図12フロー・チャートの定常旋回歩容の初期発散成分の算出作業を示すサブルーチン・フロー・チャートである。 図15フロー・チャートで算出される初期発散成分に基づいて図12フロー・チャートにおいて今回歩容の歩容パラメータである目標ZMPを修正する動作を説明するタイム・チャートである。 図12フロー・チャートの初期発散成分に基づく今回歩容の歩容パラメータの目標ZMPの修正動作を示すサブルーチン・フロー・チャートである。 図12フロー・チャートの今回歩容の瞬時値算出作業を示すサブルーチン・フロー・チャートである。 第1実施例に係る脚式移動ロボットの歩容生成装置によって生成される歩容の中の上体軌道を示すタイム・チャートである。 この発明の参考例に係る脚式移動ロボットの歩容生成装置の動作の中の、定常旋回歩容の初期発散成分の算出作業を示す、図15に類似するサブルーチン・フロー・チャートである。 参考例に係る脚式移動ロボットの歩容生成装置の動作の中の、今回歩容の歩容パラメータの目標ZMPの修正動作を示す、図17に類似するサブルーチン・フロー・チャートである。 この発明の第2実施例に係る脚式移動ロボットの歩容生成装置で使用される定常旋回歩容の設定例を示す、図13と同様の説明図である。 脚式移動ロボットである2足歩行ロボットの全リンクに質点を設定した例を示す説明図である。
符号の説明
1 2足歩行ロボット(脚式移動ロボット)、2 脚部(脚部リンク)、10,12,14R,L 股関節、16R,L 膝関節、18,20R,L 足関節、22R,L 足平(足部)、24 上体、26 制御ユニット、34 6軸力センサ、36 傾斜センサ、42 コンプライアンス機構、60 第1の演算装置、62 第2の演算装置、100 歩容生成部、200 脚ZMP算出器、202 上***置決定器

Claims (5)

  1. 少なくとも上体と、前記上体に連結される複数本の脚部を備えた脚式移動ロボットの歩容生成装置において、
    a.前記脚部の目標運動に基づき、前記脚部の目標運動によって発生する慣性力と重力の合力である脚部反力を算出する脚部反力算出手段、
    b.少なくとも目標床反力と前記脚部反力算出手段が算出した脚部反力とに基づき、少なくとも前記上体の動力学的挙動を記述する倒立振子モデルの支点位置を算出する倒立振子モデル支点位置算出手段、
    c.少なくとも前記倒立振子モデル支点位置算出手段が算出した倒立振子モデルの支点位置に基づき、前記倒立振子モデルの変位を算出する倒立振子モデル変位算出手段、
    d.少なくとも前記倒立振子モデル変位算出手段が算出した倒立振子モデルの変位に基づき、前記上体の位置を算出する上***置算出手段、
    および
    e.少なくとも前記上***置算出手段が算出した上***置を用いて歩容を生成する歩容生成手段、
    を備えたことを特徴とする脚式移動ロボットの歩容生成装置。
  2. 少なくとも上体と、前記上体に連結される複数本の脚部を備えた脚式移動ロボットの歩容生成装置において、
    a.前記脚部の目標運動に基づき、前記脚部の目標運動によって発生する慣性力と重力の合力に疑似的に対応する前記脚部のZMPに相当する脚部ZMPを算出する脚部ZMP算出手段、
    b.少なくとも目標ZMPと前記脚部ZMP算出手段が算出した脚部ZMPとに基づき、少なくとも前記上体の動力学的挙動を記述する倒立振子モデルの支点位置を算出する倒立振子モデル支点位置算出手段、
    c.少なくとも前記倒立振子モデル支点位置算出手段が算出した倒立振子モデルの支点位置に基づき、前記倒立振子モデルの変位を算出する倒立振子モデル変位算出手段、
    d.少なくとも前記倒立振子モデル変位算出手段が算出した倒立振子モデルの変位に基づき、前記上体の位置を算出する上***置算出手段、
    および
    e.少なくとも前記上***置算出手段が算出した上***置を用いて歩容を生成する歩容生成手段、
    を備えたことを特徴とする脚式移動ロボットの歩容生成装置。
  3. 前記倒立振子モデル支点位置算出手段は、前記目標ZMPに第1の係数を乗じて得た積から、前記脚部ZMPに第2の係数を乗じて得た積を減算して前記倒立振子モデルの支点位置を算出することを特徴とする請求項2記載の脚式移動ロボットの歩容生成装置。
  4. 前記床反力が少なくともZMPを含むことを特徴とする請求項1記載の脚式移動ロボットの歩容生成装置。
  5. 前記倒立振子モデルが線形モデルであることを特徴とする請求項1から4のいずれかに記載の脚式移動ロボットの歩容生成装置。
JP2005114031A 2000-11-17 2005-04-11 脚式移動ロボットの歩容生成装置 Expired - Fee Related JP3726096B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005114031A JP3726096B2 (ja) 2000-11-17 2005-04-11 脚式移動ロボットの歩容生成装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2000352011 2000-11-17
JP2005114031A JP3726096B2 (ja) 2000-11-17 2005-04-11 脚式移動ロボットの歩容生成装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2002542574A Division JP3726081B2 (ja) 2000-11-17 2001-11-16 脚式移動ロボットの歩容生成装置

Publications (2)

Publication Number Publication Date
JP2005219206A true JP2005219206A (ja) 2005-08-18
JP3726096B2 JP3726096B2 (ja) 2005-12-14

Family

ID=18824968

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2002542574A Expired - Fee Related JP3726081B2 (ja) 2000-11-17 2001-11-16 脚式移動ロボットの歩容生成装置
JP2005114031A Expired - Fee Related JP3726096B2 (ja) 2000-11-17 2005-04-11 脚式移動ロボットの歩容生成装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2002542574A Expired - Fee Related JP3726081B2 (ja) 2000-11-17 2001-11-16 脚式移動ロボットの歩容生成装置

Country Status (7)

Country Link
US (1) US6876903B2 (ja)
EP (2) EP1671754B1 (ja)
JP (2) JP3726081B2 (ja)
KR (3) KR100661333B1 (ja)
AU (1) AU2002224042A1 (ja)
DE (2) DE60141092D1 (ja)
WO (1) WO2002040224A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100953431B1 (ko) * 2008-02-28 2010-04-20 숭실대학교산학협력단 지엠피의 상태추정을 통한 2족보행로봇의 균형제어기법
JP2010221395A (ja) * 2009-03-24 2010-10-07 Disney Enterprises Inc モーションキャプチャデータを模倣するロボットの追跡及びバランス維持システム及び方法
CN102556199A (zh) * 2011-12-29 2012-07-11 北京航空航天大学 一种仿人机器人多自由度柔性脚板
JP2018185747A (ja) * 2017-04-27 2018-11-22 国立大学法人京都大学 非線形システムの制御方法、二足歩行ロボットの制御装置、二足歩行ロボットの制御方法及びそのプログラム

Families Citing this family (86)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3760186B2 (ja) * 2001-06-07 2006-03-29 独立行政法人科学技術振興機構 二脚歩行式移動装置及びその歩行制御装置並びに歩行制御方法
DE60238781D1 (de) * 2001-10-16 2011-02-10 Honda Motor Co Ltd Vorrichtung und verfahren zur bestimmung eines gehzustands
JP3569764B2 (ja) * 2001-11-19 2004-09-29 独立行政法人 科学技術振興機構 二脚歩行式移動装置およびその歩行制御装置並びに歩行制御方法
JP3574951B2 (ja) * 2001-12-19 2004-10-06 独立行政法人 科学技術振興機構 二脚歩行式移動装置及びその歩行制御装置及び歩行制御方法
JP3672102B2 (ja) * 2001-12-28 2005-07-13 本田技研工業株式会社 脚式移動ロボットの歩容生成装置及び制御装置
JP3726057B2 (ja) * 2001-12-28 2005-12-14 本田技研工業株式会社 脚式移動ロボットおよびその床反力検出装置
KR100946709B1 (ko) * 2001-12-28 2010-03-12 혼다 기켄 고교 가부시키가이샤 다리식 이동로봇의 보용 생성 장치
KR100956521B1 (ko) 2002-04-26 2010-05-06 혼다 기켄 고교 가부시키가이샤 다리식 이동 로봇의 제어장치
US7337040B2 (en) 2002-04-26 2008-02-26 Honda Giken Kogyo Kabushiki Kaisha Self-position estimating device for leg type movable robots
WO2004033159A1 (ja) * 2002-10-11 2004-04-22 Fujitsu Limited ロボット制御アルゴリズム構築装置、ロボット制御アルゴリズム構築プログラム、ロボット制御装置、ロボット制御プログラム、およびロボット
JP2004220566A (ja) * 2002-12-26 2004-08-05 Toshiba Corp 機構シミュレーション方法および機構シミュレーションプログラム
EP1607195B1 (en) * 2003-03-27 2011-01-05 Sony Corporation Robot device and method of controlling the same
JP3972854B2 (ja) * 2003-04-10 2007-09-05 ソニー株式会社 ロボットの運動制御装置
EP1649983B1 (en) * 2003-06-27 2010-09-22 Honda Motor Co., Ltd. Gait generation device for legged mobile robot
US7379789B2 (en) 2003-06-27 2008-05-27 Honda Motor Co., Ltd. Gait generating device of legged mobile robot and legged mobile robot controller
EP1721711B1 (en) * 2004-02-06 2011-12-07 Honda Motor Co., Ltd. Gait generator of mobile robot
WO2005077611A1 (ja) * 2004-02-16 2005-08-25 Honda Motor Co., Ltd. 移動ロボットの歩容生成装置
KR101160161B1 (ko) 2004-02-27 2012-06-27 혼다 기켄 고교 가부시키가이샤 이동 로봇의 보용생성장치
JP4485279B2 (ja) * 2004-08-02 2010-06-16 本田技研工業株式会社 脚式移動ロボットの歩容生成装置および制御装置
JP4531520B2 (ja) 2004-10-15 2010-08-25 本田技研工業株式会社 脚式移動ロボットの制御装置
JP4808626B2 (ja) * 2004-10-15 2011-11-02 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
US8014896B2 (en) 2004-12-14 2011-09-06 Honda Motor Co., Ltd. Legged mobile robot and control program
US7860613B2 (en) * 2004-12-14 2010-12-28 Honda Motor Co., Ltd. Legged mobile robot and control program for the robot
DE602005022359D1 (de) 2004-12-14 2010-08-26 Honda Motor Co Ltd Mit beinen ausgestatteter mobiler roboter und steuerprogramm für den roboter
JP4440761B2 (ja) * 2004-12-24 2010-03-24 本田技研工業株式会社 脚式移動ロボットの制御装置
JP4548135B2 (ja) 2005-02-03 2010-09-22 トヨタ自動車株式会社 脚式ロボットとその制御方法
WO2006110895A2 (en) * 2005-04-12 2006-10-19 Honda Motor Co., Ltd. Active control of an ankle-foot orthosis
US8024070B2 (en) * 2005-06-08 2011-09-20 Nagoya Institute Of Technology Passive walking legged robot
KR100709556B1 (ko) * 2005-10-19 2007-04-20 한국과학기술연구원 인간형 로봇의 보행 제어 방법
JP2007160440A (ja) * 2005-12-12 2007-06-28 Honda Motor Co Ltd 脚式移動ロボットの制御装置
KR100843802B1 (ko) 2005-12-12 2008-07-04 혼다 기켄 고교 가부시키가이샤 각식 이동 로봇의 제어장치
JP4818716B2 (ja) * 2005-12-27 2011-11-16 富士通株式会社 ロボット制御装置
JP4812426B2 (ja) * 2005-12-27 2011-11-09 富士通株式会社 ロボット制御装置
JP4591419B2 (ja) * 2006-07-18 2010-12-01 トヨタ自動車株式会社 ロボットとその制御方法
KR100873107B1 (ko) * 2007-01-30 2008-12-09 한국과학기술원 이족 보행 로봇의 수정 가능한 걸음새 생성을 위한 실시간zmp 조작법
JP4807583B2 (ja) 2007-03-29 2011-11-02 本田技研工業株式会社 射影変換収束演算処理方法
KR100860818B1 (ko) * 2007-05-21 2008-09-30 충주대학교 산학협력단 보행 안정성 향상을 위한 유압제어방식의 자세제어장치를구비한 보행로봇 및 그 제어방법
US9144509B2 (en) * 2007-05-31 2015-09-29 Abbott Cardiovascular Systems Inc. Method and apparatus for delivering an agent to a kidney
US9364586B2 (en) * 2007-05-31 2016-06-14 Abbott Cardiovascular Systems Inc. Method and apparatus for improving delivery of an agent to a kidney
JP5632609B2 (ja) * 2007-08-21 2014-11-26 富士通株式会社 ロボット制御装置およびロボット制御方法
US8026955B2 (en) 2007-08-30 2011-09-27 Honda Motor Co., Ltd. Camera exposure controller including imaging devices for capturing an image using stereo-imaging
US8406505B2 (en) 2007-08-30 2013-03-26 Honda Motor Co., Ltd. Image brightness reduction for legged mobile robot
JP4392037B2 (ja) * 2007-09-12 2009-12-24 トヨタ自動車株式会社 脚式ロボット、及びその制御方法
JP4440956B2 (ja) * 2007-09-12 2010-03-24 トヨタ自動車株式会社 脚式ロボット、及びその制御方法
TW201031507A (en) * 2009-02-25 2010-09-01 Micro Star Int Co Ltd Control apparatus of a multi-axial joint and control method thereof
PT2442959E (pt) 2009-06-18 2016-06-03 Progressive Components Int Corp Contador electrónico de ciclos
JP5219956B2 (ja) * 2009-07-23 2013-06-26 本田技研工業株式会社 移動体の制御装置
US9120224B2 (en) * 2009-09-22 2015-09-01 GM Global Technology Operations LLC Framework and method for controlling a robotic system using a distributed computer network
JP5284923B2 (ja) 2009-10-28 2013-09-11 本田技研工業株式会社 脚式移動ロボットの制御装置
US8954271B2 (en) 2009-11-06 2015-02-10 The University Of Maryland, College Park Method and system for determining relative displacement and heading for navigation
JP5506618B2 (ja) * 2009-12-28 2014-05-28 本田技研工業株式会社 ロボットの制御装置
JP5463991B2 (ja) * 2010-03-18 2014-04-09 トヨタ自動車株式会社 2脚歩行ロボット
TW201142339A (en) * 2010-05-20 2011-12-01 Jiung-Yao Huang Remote sensing satellite positioning device and method thereof
JP5456588B2 (ja) * 2010-06-07 2014-04-02 本田技研工業株式会社 脚式移動ロボットの制御装置
WO2012011182A1 (ja) 2010-07-22 2012-01-26 トヨタ自動車株式会社 二足歩行ロボット及び二足歩行ロボットの着地タイミング決定方法
JP5991857B2 (ja) * 2011-06-10 2016-09-14 三星電子株式会社Samsung Electronics Co.,Ltd. ロボットの均衡制御装置及びその制御方法
EP3763506A1 (en) 2011-10-10 2021-01-13 Progressive Components International Corporation System for displaying processed data from molds
JP5661023B2 (ja) * 2011-12-02 2015-01-28 本田技研工業株式会社 脚式移動ロボットの歩容生成装置及びロボットの動作目標生成装置
KR20130078886A (ko) * 2012-01-02 2013-07-10 현대자동차주식회사 보행로봇의 균형제어방법
CN103042525B (zh) * 2013-01-22 2016-04-13 北京理工大学 一种确定仿人机器人的抗扰动能力的方法
US9618937B1 (en) 2014-08-25 2017-04-11 Google Inc. Slip detection using robotic limbs
US10081098B1 (en) 2014-08-25 2018-09-25 Boston Dynamics, Inc. Generalized coordinate surrogates for integrated estimation and control
US9387588B1 (en) 2014-08-25 2016-07-12 Google Inc. Handling gait disturbances with asynchronous timing
CN104238360B (zh) * 2014-09-03 2016-08-24 浙江大学 一种仿人机器人桌子-小车模型的Zc参数的获取方法
JP6228097B2 (ja) * 2014-10-06 2017-11-08 本田技研工業株式会社 移動ロボット
US9446518B1 (en) * 2014-11-11 2016-09-20 Google Inc. Leg collision avoidance in a robotic device
US9499218B1 (en) 2014-12-30 2016-11-22 Google Inc. Mechanically-timed footsteps for a robotic device
US9594377B1 (en) 2015-05-12 2017-03-14 Google Inc. Auto-height swing adjustment
JP6450279B2 (ja) 2015-08-05 2019-01-09 本田技研工業株式会社 移動ロボットの目標zmp軌道の生成装置
KR102485718B1 (ko) * 2015-08-11 2023-01-06 삼성전자주식회사 보행 보조 장치의 토크 계산 방법 및 장치
US9586316B1 (en) 2015-09-15 2017-03-07 Google Inc. Determination of robotic step path
US9789919B1 (en) 2016-03-22 2017-10-17 Google Inc. Mitigating sensor noise in legged robots
CN107361773B (zh) * 2016-11-18 2019-10-22 深圳市臻络科技有限公司 用于检测、缓解帕金森异常步态的装置
CN106826759B (zh) * 2016-12-29 2024-02-09 深圳市优必选科技有限公司 脚部结构及人形机器人
CN107132843B (zh) * 2017-05-19 2020-07-31 北京京东尚科信息技术有限公司 无人搬运车的控制方法和装置
US10421510B2 (en) * 2017-07-25 2019-09-24 Sphero, Inc. Three-legged robotic apparatus
JP6823569B2 (ja) 2017-09-04 2021-02-03 本田技研工業株式会社 目標zmp軌道の生成装置
WO2019095108A1 (zh) * 2017-11-14 2019-05-23 深圳先进技术研究院 机器人的模仿学习方法、装置、机器人及存储介质
CN108030497B (zh) * 2018-01-16 2023-12-19 大连乾函科技有限公司 一种基于imu惯性传感器的步态分析装置及其方法
US10776243B1 (en) 2019-03-19 2020-09-15 Bank Of America Corporation Prediction tool
CN110850742B (zh) * 2019-11-29 2022-08-23 江苏集萃智能制造技术研究所有限公司 机器人的动步态仿真模型和方法
CN111558941B (zh) * 2020-07-14 2020-09-29 深圳市优必选科技股份有限公司 浮动基动力学前馈控制方法、装置和多足机器人
CN111880544B (zh) * 2020-08-07 2024-03-22 深圳市优必选科技股份有限公司 仿人机器人步态规划方法、装置和仿人机器人
CN113084787B (zh) * 2021-03-29 2022-08-30 东莞理工学院 仿生蛇形机器人运动步态规划方法、***、设备及介质
US11756687B2 (en) 2021-06-27 2023-09-12 Motionize Israel Ltd. Method and system for assessing performance
CN117067223B (zh) * 2023-10-16 2024-01-05 哈尔滨理工大学 一种基于运动稳定性估计的六足机器人自由步态规划方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2555753A (en) * 1947-12-20 1951-06-05 New Britain Machine Co Extendible stock feed mechanism
JPS63150176A (ja) 1986-12-15 1988-06-22 工業技術院長 動的歩行ロボツトの歩行制御方法
EP0366769A1 (de) * 1988-05-19 1990-05-09 Standard St Sensortechnik Ag Vorrichtung zum untersuchen der gangart eines lebewesens
JPH0415068A (ja) 1990-05-08 1992-01-20 Masayoshi Fukashiro 氷製ゴルフボール
DE69124486T2 (de) * 1990-11-30 1997-05-15 Honda Motor Co Ltd System zur Steuerung der Fortbewegung eines Schreitroboters mit Beinen
US5355064A (en) 1992-03-04 1994-10-11 Honda Giken Kogyo Kabushiki Kaisha Control system for legged mobile robot
JP3148827B2 (ja) 1992-04-30 2001-03-26 本田技研工業株式会社 脚式移動ロボットの歩行制御装置
JP3273443B2 (ja) 1992-05-22 2002-04-08 本田技研工業株式会社 ロボットのリンクなどの軌道生成方法及び装置
JP3233450B2 (ja) 1992-05-22 2001-11-26 本田技研工業株式会社 指定時刻到達関数発生器
US5404086A (en) 1992-07-20 1995-04-04 Honda Giken Kogyo Kabushiki Kaisha System for controlling locomotion of legged mobile robot and correcting inclinometer's output thereof
EP1018467B1 (en) * 1996-07-25 2003-10-22 Honda Giken Kogyo Kabushiki Kaisha Gait generating device for leg type moving robot
JP3658147B2 (ja) 1996-07-25 2005-06-08 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
JP3663034B2 (ja) 1996-07-25 2005-06-22 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
JP3626303B2 (ja) * 1996-12-18 2005-03-09 本田技研工業株式会社 脚式移動ロボットの足底接地位置検出装置
EP0965416B1 (en) 1996-12-19 2005-12-07 Honda Giken Kogyo Kabushiki Kaisha Attitude controller of legged moving robot
JP3629133B2 (ja) 1997-01-31 2005-03-16 本田技研工業株式会社 脚式移動ロボットの制御装置
JP3672406B2 (ja) * 1997-01-31 2005-07-20 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
US6260862B1 (en) * 1998-02-11 2001-07-17 Joseph C. Klann Walking device
US6478314B1 (en) * 1998-02-11 2002-11-12 Joseph C. Klann Walking device
JP4213310B2 (ja) * 1999-08-30 2009-01-21 本田技研工業株式会社 2足歩行脚式移動ロボット
JP3443077B2 (ja) * 1999-09-20 2003-09-02 ソニー株式会社 ロボットの運動パターン生成装置及び運動パターン生成方法、並びにロボット
US6481513B2 (en) * 2000-03-16 2002-11-19 Mcgill University Single actuator per leg robotic hexapod

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100953431B1 (ko) * 2008-02-28 2010-04-20 숭실대학교산학협력단 지엠피의 상태추정을 통한 2족보행로봇의 균형제어기법
JP2010221395A (ja) * 2009-03-24 2010-10-07 Disney Enterprises Inc モーションキャプチャデータを模倣するロボットの追跡及びバランス維持システム及び方法
CN102556199A (zh) * 2011-12-29 2012-07-11 北京航空航天大学 一种仿人机器人多自由度柔性脚板
JP2018185747A (ja) * 2017-04-27 2018-11-22 国立大学法人京都大学 非線形システムの制御方法、二足歩行ロボットの制御装置、二足歩行ロボットの制御方法及びそのプログラム

Also Published As

Publication number Publication date
KR20050106130A (ko) 2005-11-08
EP1671754A2 (en) 2006-06-21
DE60126153T2 (de) 2007-10-18
EP1361027B1 (en) 2007-01-17
EP1671754A3 (en) 2007-07-11
EP1671754B1 (en) 2010-01-13
US20040044440A1 (en) 2004-03-04
JPWO2002040224A1 (ja) 2004-03-25
KR20050105522A (ko) 2005-11-04
JP3726081B2 (ja) 2005-12-14
AU2002224042A1 (en) 2002-05-27
US6876903B2 (en) 2005-04-05
DE60126153D1 (de) 2007-03-08
DE60141092D1 (de) 2010-03-04
JP3726096B2 (ja) 2005-12-14
KR100637057B1 (ko) 2006-10-23
WO2002040224A1 (fr) 2002-05-23
EP1361027A4 (en) 2004-12-01
EP1361027A1 (en) 2003-11-12
KR20030051823A (ko) 2003-06-25
KR100661333B1 (ko) 2006-12-27

Similar Documents

Publication Publication Date Title
JP3726096B2 (ja) 脚式移動ロボットの歩容生成装置
JP3726032B2 (ja) 脚式移動ロボットの目標運動生成装置
KR100924505B1 (ko) 다리식 이동로봇의 제어장치
US7053577B2 (en) Robot and motion control method of robot
KR100946709B1 (ko) 다리식 이동로봇의 보용 생성 장치
EP0572285B1 (en) Attitude stabilization control system for a mobile robot, especially a legged mobile robot
KR101083412B1 (ko) 다리식 이동 로봇의 보용생성 장치 및 다리식 이동 로봇의제어장치
KR101131776B1 (ko) 다리식 이동 로봇의 보용 생성장치
WO2006067904A1 (ja) 脚式移動ロボットの歩容生成装置
JP4800038B2 (ja) 移動ロボットの歩容生成装置
JPWO2003057429A1 (ja) 脚式移動ロボットの歩容生成装置
WO2005082583A1 (ja) 移動ロボットの歩容生成装置
JPH1086081A (ja) 脚式移動ロボットの歩容生成装置
JP3726097B2 (ja) 脚式移動ロボットの姿勢制御装置
Sari et al. Implementation and integration of fuzzy algorithms for descending stair of KMEI humanoid robot
JP2011073119A (ja) 移動体の制御装置
Li et al. Adaptive control algorithm for quadruped robots in unknown high-slope terrain

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050509

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050509

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20050526

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20050802

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050830

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050926

R150 Certificate of patent or registration of utility model

Ref document number: 3726096

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080930

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090930

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100930

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100930

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110930

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110930

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120930

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120930

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130930

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140930

Year of fee payment: 9

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees