JPWO2003090978A1 - 脚式移動ロボットの制御装置 - Google Patents
脚式移動ロボットの制御装置 Download PDFInfo
- Publication number
- JPWO2003090978A1 JPWO2003090978A1 JP2004501987A JP2004501987A JPWO2003090978A1 JP WO2003090978 A1 JPWO2003090978 A1 JP WO2003090978A1 JP 2004501987 A JP2004501987 A JP 2004501987A JP 2004501987 A JP2004501987 A JP 2004501987A JP WO2003090978 A1 JPWO2003090978 A1 JP WO2003090978A1
- Authority
- JP
- Japan
- Prior art keywords
- target
- reaction force
- floor reaction
- robot
- gait
- 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
Links
- 238000006243 chemical reaction Methods 0.000 claims abstract description 498
- 230000005021 gait Effects 0.000 claims abstract description 498
- 238000012937 correction Methods 0.000 claims description 124
- 230000005484 gravity Effects 0.000 claims description 72
- 238000013459 approach Methods 0.000 claims description 56
- 238000004364 calculation method Methods 0.000 claims description 26
- 230000000670 limiting effect Effects 0.000 claims description 5
- 230000000737 periodic effect Effects 0.000 claims description 4
- 230000003247 decreasing effect Effects 0.000 claims description 3
- 210000002414 leg Anatomy 0.000 description 182
- 210000002683 foot Anatomy 0.000 description 152
- 238000000034 method Methods 0.000 description 59
- 230000008569 process Effects 0.000 description 49
- 238000012545 processing Methods 0.000 description 32
- 230000001133 acceleration Effects 0.000 description 22
- 230000007246 mechanism Effects 0.000 description 22
- 230000006641 stabilisation Effects 0.000 description 22
- 238000011105 stabilization Methods 0.000 description 22
- 210000001503 joint Anatomy 0.000 description 17
- 230000008859 change Effects 0.000 description 15
- 238000006073 displacement reaction Methods 0.000 description 15
- 230000002829 reductive effect Effects 0.000 description 14
- 239000002131 composite material Substances 0.000 description 12
- 238000010586 diagram Methods 0.000 description 12
- 230000009471 action Effects 0.000 description 9
- 238000001514 detection method Methods 0.000 description 7
- 210000000544 articulatio talocruralis Anatomy 0.000 description 6
- 210000003127 knee Anatomy 0.000 description 6
- 210000003423 ankle Anatomy 0.000 description 4
- 239000013013 elastic material Substances 0.000 description 4
- 238000009987 spinning Methods 0.000 description 4
- 210000003371 toe Anatomy 0.000 description 4
- 101150048593 Mdmd gene Proteins 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 3
- 210000001624 hip Anatomy 0.000 description 3
- 210000004394 hip joint Anatomy 0.000 description 3
- 230000001771 impaired effect Effects 0.000 description 3
- 230000009191 jumping Effects 0.000 description 3
- 210000000629 knee joint Anatomy 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical compound [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000012530 fluid Substances 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 229920001875 Ebonite Polymers 0.000 description 1
- 208000004067 Flatfoot Diseases 0.000 description 1
- 239000006096 absorbing agent Substances 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 239000003638 chemical reducing agent Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013016 damping Methods 0.000 description 1
- 230000005489 elastic deformation Effects 0.000 description 1
- 238000013213 extrapolation Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 229910052742 iron Inorganic materials 0.000 description 1
- 210000001699 lower leg Anatomy 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000003094 perturbing effect Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 210000000689 upper leg Anatomy 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D57/00—Vehicles 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/02—Vehicles 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/032—Vehicles 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J5/00—Manipulators mounted on wheels or on carriages
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Transportation (AREA)
- Robotics (AREA)
- Manipulator (AREA)
Abstract
Description
本発明は、脚式移動ロボットの制御装置に関する。
背景技術
脚式移動ロボット、例えば2足移動ロボットでは、従来、主にロボットの歩行動作を行なわせるようにしていた。しかし、近年では、脚式移動ロボットの開発が進むにつれて、該ロボットに歩行だけでなく、より高速での走行、あるいはジャンプを行わせることが望まれている。
ロボットの歩行では、常時、いずれかの脚体を接地させて自重を支えることとなるが、ロボットの走行あるいはジャンプでは、ロボットに作用する床反力が0もしくはほぼ0になる時期が存在する。従って、ロボットの走行やジャンプでは、ロボットに作用させる床反力、特に並進力鉛直成分の制御も重要となる。
そこで、本出願人は先に提案したPCT出願PCT/JP02/13596号等にて、目標ZMPパターンと目標床反力鉛直成分(並進力の鉛直成分。以下、同じ)パターンを明示的に設計しつつ、ロボットの動力学モデルを基に、目標運動パターンを生成し、実際のロボットを目標運動パターンに追従させつつ、コンプライアンス制御によって実際の床反力鉛直成分が目標床反力鉛直成分パターンに追従するように制御して、走行等を実現する制御装置を提案している。
また、前記PCT出願PCT/JP02/13596号では、床反力鉛直成分を制御する特願平11−300661号において提案した、実床反力鉛直成分に応じて脚体の先端(足平)をロボットの上体に対して鉛直方向に変位させる(目標歩容の脚先端位置からずらす)コンプライアンス制御が用いられている。これを以降、鉛直方向コンプライアンス制御と呼ぶ。
鉛直方向コンプライアンス制御を用いないと、ジャンプ時の蹴り力が床の硬さに大きく影響される傾向があった。例えば、硬い床では、適切なジャンプ力が得られても、絨毯の上では、ジャンプ力が不足する場合があった。また、床のたわみ剛性、ロボットの剛性およびロボットの質量によって発生する固有振動が減衰しにくい場合があった。特に鉄板などでできた減衰性の低い床では、固有振動が長期間減衰せず、接地性が損なわれ、スリップが生じる場合もあった。
しかし、この不都合を解消するために鉛直方向コンプライアンス制御を用いると、ロボットの実際の上体鉛直位置(以降、実上体鉛直位置と呼ぶ)が目標上体鉛直位置からずれ易くなり、ジャンプの離床タイミングがずれる傾向があった。例えば、目標の離床時刻に実上体鉛直位置が目標上体鉛直位置よりも低い場合には、目標の離床時刻になっても、床反力鉛直成分は0にならず、離床のタイミングは遅れる。
逆に、目標の離床時刻より少し前に、実上体鉛直位置が目標上体鉛直位置よりも高い場合には、目標の離床時刻になる前に、床反力鉛直成分は0になり、離床のタイミングは早くなる。補足すると、鉛直方向コンプライアンス制御を用いないと、実上体鉛直位置は目標上体鉛直位置にほぼ一致するので、離床のタイミングはずれにくい。
上記のように離床タイミングが早くなると、水平方向の摩擦力が想定して時刻よりも早めに小さくなるか0となるので、スリップやスピンを生じ易かった。
逆に、離床タイミングが遅くなると、走行のように離床した直後に遊脚足平を前に移動する時に、遊脚足平が床に引っ掛かってしまう恐れがあった。
また、離床時に、実際のロボットの上体鉛直位置軌道(重心軌道)が目標上体鉛直位置軌道からずれると、着地時の重心軌道もずれ、着地タイミングがずれたりして、遊脚足平の着地時の対地速度が過大になり、大きな着地衝撃が発生する恐れもあった。
また、実際のロボットの運動と床反力とが目標歩容のそれからずれるので、姿勢安定性も低下した。
本発明はかかる背景に鑑みてなされたものであり、ロボットの脚体先端部(足平)の床に対する軌道を目標歩容の脚体先端部(足平)軌道に近づけることができ、ひいては、ロボットが目標歩容通りの離床のタイミングで離床するようにして、ロボットのスリップやスピン、遊脚の床への引っ掛かかり等が発生するのを防止し、また、着地衝撃を低減することができる脚式移動ロボットの制御装置を提供することを目的とする。
発明の開示
本発明の脚式移動ロボットの第1発明は、脚体の運動により移動する脚式移動ロボットの目標歩容を生成し、その目標歩容に追従させるように該ロボットの動作を制御する脚式移動ロボットの制御装置において、少なくとも前記ロボットの目標運動を含む目標歩容を生成する目標歩容生成手段と、前記ロボットの所定方向の並進運動に関する前記目標歩容の状態量と、該所定方向の並進運動に関する該ロボットの実際の状態量との偏差を状態量偏差として求める状態量偏差算出手段とを備え、前記目標歩容生成手段は、前記状態量偏差に応じて該状態量偏差を0に近づけるように前記ロボットの目標歩容の目標運動を決定することを特徴とする。
かかる第1発明では、前記所定方向の並進運動に関する前記状態量偏差を0に近づけるようにロボットの目標歩容の目標運動を決定するので、前記並進運動に関する実際のロボットの状態量と目標歩容における状態量との一致性が高まる。その結果、ロボットの前記所定方向の並進運動に関する実際の動作のタイミングを目標歩容での動作タイミングに合わせることが可能となり、ロボットの円滑な運動が可能となる。
なお、前記所定方向は、例えば鉛直方向、あるいは、ロボットの重心と目標歩容の目標ZMPとを結ぶ方向等である。これは、以下に説明するいずれの発明においても同様である。
また、後述の第21発明、第22発明の如く、前記状態量は、例えば前記ロボットの所定の部位の位置又は該ロボットの重心の位置であることが好ましく、特に、前記所定の部位はロボットの上体(脚体が延設される基体)であることが好ましい。これは、以下に説明するいずれの発明においても同様である。ロボットの上体の位置、あるいは、重心の位置に係わる前記状態量偏差(すなわち位置偏差)を0に近づけるように目標歩容の目標運動を決定することで、脚体の先端部(足平)の実際の軌道も、目標歩容の軌道に近づけることができ、該脚体の離床、着床等の動作のタイミングを所望のタイミング(目標歩容上のタイミング)に合わせることができる。その結果、スリップやスピン、脚体先端部の床への引っ掛かり等を防止し、また、着地時に過大な着地衝撃が生じるのを防止することが可能となる。
上記第1発明では、前記目標歩容が、前記ロボットの全ての脚体を空中に浮かせる空中期を有する歩容であるとき、すなわち、ロボットの走行やジャンプを行う歩容であるときには、例えば、前記ロボットの所定の部位の位置又は該ロボットの重心の位置を該ロボットの代表自己位置とし、その代表自己位置の前記所定方向の成分を前記所定方向の並進運動に関する該ロボットの実際の状態量を表すものとして推定する自己位置推定手段と、少なくとも前記空中期の開始時までに前記自己位置推定手段により推定された前記代表自己位置の所定方向の成分に基づいて少なくとも該空中期における該代表自己位置の所定方向の成分の予想軌道を求める予想軌道算出手段とを備え、前記目標歩容生成手段は、前記空中期において前記目標歩容により定まる前記代表自己位置の前記所定方向の成分の目標軌道が少なくとも該空中期の終了時までに前記予想軌道に近づくように前記推定された代表自己位置の所定方向の成分と前記目標歩容の代表自己位置の所定方向の成分との偏差である前記状態量偏差に応じて該空中期における前記目標歩容の目標運動を決定することが一つの形態として好適である(第2発明)。
かかる第2発明によれば、空中期におけるロボットの代表自己位置の所定方向の成分の予想軌道を求め、この予想軌道に、少なくとも空中期の終了時までに目標歩容における代表自己位置の所定方向(鉛直方向等)の成分の目標軌道が近づくように目標歩容の目標運動が決定される。その結果、空中期の終了時、すなわち、ロボットの着地時における実際の代表自己位置の所定方向成分と目標歩容における代表自己位置の所定方向成分との間の偏差(状態量偏差)を小さくして、実際の着地タイミングと目標歩容上での着地タイミングとを合わせることが可能となり、ロボットの着地時に過大な着地衝撃を生じるのを防止しつつ、ロボットの着地動作を円滑に行わせることができる。また、ロボットの着地毎に前記状態量偏差をほぼ0にするため、ロボットの離床時(空中期の開始時)における実際のロボットの離床タイミングと目標歩容における離床タイミングとの間の誤差も極力小さくできるので、ロボットの離床動作も円滑に行なうことが可能となる。
また、前記第1発明では、前記目標歩容生成手段が、前記ロボットに作用する力と該ロボットの運動との関係を表す動力学モデルに少なくとも該ロボットに作用させるべき床反力の目標値としての基準床反力を入力しつつ、該動力学モデルを用いて前記目標運動を決定する手段であるときには、少なくとも前記状態量偏差に応じて仮想外力を決定し、該仮想外力を前記動力学モデルに付加的に入力することにより前記目標運動を決定することが好ましい(第3発明)。
これによれば、前記動力学モデルに前記仮想外力を付加的に入力することによって、前記状態量偏差を0に近づけるような目標運動が決定される。なお、前記仮想外力は、例えば前記状態量偏差からフィードバック制御則(PD制御則等)によって決定すればよい。また、前記動力学モデルには、少なくとも基準床反力と仮想外力とが入力されることとなるため、該仮想外力が0でないときには、該動力学モデルによって決定される目標運動は、該動力学モデル上では、前記基準床反力とは釣り合わないものとなる。つまり、第3発明では、前記仮想外力を動力学モデルに付加的に入力することで、意図的に前記基準床反力に動力学モデル上で釣り合う運動(これは理想的な環境下でロボットの本来あるべき運動を意味する)からずらした目標運動を決定し、これにより、前記状態量偏差を0に近づける。
上記第3発明では、前記目標歩容生成手段は、前記状態量偏差を0に近づけるために前記動力学モデルに付加的に入力すべき外力操作量を該状態量偏差からフィードバック制御則により決定する手段を備え、該外力操作量の値が0を含む所定の不感帯域に存在するときには、前記仮想外力を0に決定し、該外力操作量の値が前記不感帯域から逸脱しているときには、前記仮想外力を該外力操作量が前記不感帯域から逸脱した分の値に決定することが好ましい(第4発明)。
これによれば、前記状態量偏差が前記不感帯域にあるとき、すなわち、該状態量偏差が微小であるときには、前記仮想外力を0とするので、前記動力学モデルによって決定される目標運動は、該動力学モデル上で前記基準床反力に釣り合う運動に前記不感帯域がない場合に較べ近づくこととなる。その結果、ロボットの実際の運動が、動力学的な安定性の高い(動力学的平衡条件を満たす)本来の運動から過剰にずれてしまうのを防止できる。
また、第1発明では、前記目標歩容が、前記ロボットに作用する床反力が略0に維持される床反力不作用期間を有する歩容であるときには、前記目標歩容生成手段は、前記床反力不作用期間において、前記状態量偏差を0に近づけるように前記目標運動を決定することが好ましい(第5発明)。
同様に、前記第3又は第4発明では、前記基準床反力が、その値が略0に維持される床反力不作用期間を有するときには、前記目標歩容生成手段は、前記床反力不作用期間以外の期間内で前記仮想外力を略0に決定することが好ましい(第6発明)。
すなわち、前記床反力不作用期間では、ロボットには実質的に重力のみが作用して、該ロボットの重心の運動が該重力によって支配されるので、ロボットの各部の相対的な運動だけを考慮すればよいが、前記床反力不作用期間以外の期間では、ロボットに床反力が作用するため、動力学的平衡条件を満たす必要性が高い。そして、第5発明では、前記床反力不作用期間において、前記状態量偏差を0に近づけるように前記目標運動を決定して、ロボットの前記所定方向の並進運動に関する実際の挙動と目標歩容における挙動とを合致させる一方、該床反力不作用期間以外の期間では、ロボットの動力学的平衡条件を重視した目標運動を決定することが可能となる。また、前記第6発明では、前記床反力不作用期間以外の期間内で前記仮想外力を略0に決定することで、第5発明と同様に、前記床反力不作用期間において、ロボットの前記所定方向の並進運動に関する実際の挙動と目標歩容における挙動とを合致させる一方、該床反力不作用期間以外の期間では、ロボットの動力学的平衡条件を重視した目標運動を決定することが可能となる。
さらに、前記第5発明では、前記目標歩容生成手段は、少なくとも前記床反力不作用期間以外の期間内において、前記目標運動を所定の基準運動に近づけるように該目標運動を決定することが好ましい(第7発明)。
また、前記第6発明では、前記目標歩容生成手段は、少なくとも前記仮想外力を略0に決定する期間内において前記目標運動を前記基準床反力に前記動力学モデル上で釣り合う基準運動に近づけるように前記目標運動を決定することが好ましい(第8発明)。
これらの第7発明及び第8発明によれば、前記床反力不作用期間以外の期間内(第7発明)、あるいは、前記仮想外力を略0に決定する期間内(第8発明)において、動力学的平衡条件を重視した目標運動を決定できる。
また、前記第1発明では、前記目標歩容生成手段は、前記ロボットの目標床反力を決定する手段を含み、前記目標運動と目標床反力とに該ロボットの歩容を追従させるように該ロボットを操作するコンプライアンス制御手段を備えることが好適である(第9発明)。
同様に、前記第3発明では、前記目標歩容生成手段は、少なくとも前記基準床反力を基に前記目標運動に前記動力学モデル上で不釣合いとなるロボットの目標床反力を決定する手段を含み、前記目標運動と目標床反力とに該ロボットの歩容を追従させるように該ロボットを操作するコンプライアンス制御手段を備えることが好適である(第10発明)。
これらの第9発明及び第10発明によれば、前記コンプライアンス制御手段を備えることで、ロボットの実際の運動と床反力との両者を概ね目標運動と目標床反力とに追従させることができる。
特に上記第9又は第10発明では、前記目標歩容生成手段は、少なくとも前記状態量偏差に応じて該状態量偏差を0に近づけるように前記目標床反力を決定することが好ましい(第11発明)。
これによれば、目標運動と目標床反力との両者を操作して、状態量偏差を0に近づけることができるため、該状態量偏差の0への収束、すなわち、該状態量偏差の解消を迅速に行うことができる。
また、本発明の第12発明は、脚体の運動により移動する脚式移動ロボットの目標運動及び目標床反力からなる目標歩容を生成する目標歩容生成手段と、その目標歩容の目標運動及び目標床反力に前記ロボットの歩容を追従させるように該ロボットを操作するコンプアライアンス制御手段とを備えた脚式移動ロボットの制御装置において、前記ロボットの所定方向の並進運動に関する前記目標歩容の状態量と、該所定方向の並進運動に関する該ロボットの実際の状態量との偏差を状態量偏差として求める状態量偏差算出手段を備え、前記目標歩容生成手段は、少なくとも前記状態量偏差に応じて該状態量偏差を0に近づけるように前記ロボットの目標運動と目標床反力との組を決定することを特徴とするものである。
かかる第12発明では、前記状態量偏差を0に近づけるようにロボットの目標運動と目標床反力との組を決定するので、換言すれば、状態量偏差を0に近づけるように、目標運動と目標床反力との組を操作するので、前記第1発明と同様に前記並進運動に関する実際のロボットの状態量と目標歩容における状態量との一致性が高まることに加えて、それらの状態量の偏差(状態量偏差)を迅速に0に近づけることができる。その結果、ロボットの前記所定方向の並進運動に関する実際の動作のタイミングを目標歩容での動作タイミングに合わせることが可能となり、ロボットの円滑な運動が可能となる。
この第12発明では、前記目標歩容生成手段は、前記ロボットに作用する床反力と該ロボットの運動との関係を表す動力学モデルに、少なくとも該ロボットに作用させるべき床反力の基準目標値としての基準床反力を入力しつつ、該動力学モデルを用いて前記目標運動を決定する手段と、少なくとも前記状態量偏差に応じて前記動力学モデルに付加的に入力すべき仮想外力と前記目標床反力の前記基準床反力からの修正量としての目標床反力修正量との組を決定する手段とを備え、その決定された仮想外力及び目標床反力修正量のうちの仮想外力を前記動力学モデルに付加的に入力することにより前記目標運動を決定すると共に、前記目標床反力修正量により前記基準床反力を修正することにより前記目標床反力を決定することが好ましい(第13発明)。
かかる第13発明によれば、前記仮想外力を前記動力学モデルに付加的に入力することによって前記状態量偏差を0に近づけるように目標運動が決定されると共に、前記目標床反力修正量により前記基準床反力を修正することにより前記状態量偏差を0に近づけるように目標床反力が決定される。
より具体的には、第13発明では、前記目標床反力修正量と前記仮想外力との差分が、ロボットの前記所定方向の並進運動を操作するものとなるので、前記目標歩容生成手段は、前記状態量偏差を0に近づけるように前記目標床反力修正量と前記仮想外力との差分の目標値を該状態量偏差に応じて決定し、その決定された差分の目標値を満足するように前記目標床反力修正量と前記仮想外力との組を決定することが好ましい(第14発明)。これにより、前記状態量偏差を0に近づけ得る目標運動と目標床反力との組を適正に決定できる。
さらに、第14発明では、前記目標歩容生成手段は、前記目標床反力修正量の許容範囲を決定する手段を備え、前記差分の目標値と該目標床反力修正量の許容範囲とを満足するように前記目標床反力修正量と仮想外力との組を決定することが好ましい(第15発明)。すなわち、目標床反力は、ロボットに実際に作用する床反力の目標値であるが、ロボットに作用させ得る床反力には限界がある。従って、上記のように目標床反力の修正量の許容範囲を決定して、前記差分の目標値と該目標床反力修正量の許容範囲とを満足するように前記目標床反力修正量と仮想外力との組を決定することで、目標運動及び目標床反力へのロボットの追従性を高めることができ、ひいては、前記状態量偏差を0に近づけることを円滑に行うことができる。
上記第15発明では、より具体的には、前記目標歩容生成手段は、前記差分の目標値に対応する前記仮想外力が0であると仮定して前記目標床反力修正量の仮値を決定する手段と、該目標床反力修正量の仮値と前記許容範囲とに基づいて該仮値を該許容範囲内の値に制限してなる目標床反力修正量を決定する手段と、その決定した目標床反力修正量と前記決定された差分の目標値とに基づき前記仮想外力を決定する手段とを備えることが好ましい(第16発明)。
これによれば、前記仮想外力を0と仮定して前記差分の目標値に応じて決定される目標床反力修正量が前記許容範囲内に存在するときには、前記仮想外力が0に決定されることとなる。従って、前記状態量偏差を0に近づけるために、目標運動と目標床反力とのうち、目標床反力が優先的に操作されることとなる。つまり、状態量偏差の解消を、床反力の操作が可能な範囲では、該床反力の操作により行い、床反力の操作による状態量偏差の解消が不可能となる状態では、前記仮想外力による目標運動の操作と床反力との操作を併用する。この結果、目標運動が、前記動力学モデル上で前記基準床反力に釣り合う運動から過剰にずれるような事態を防止することができる。なお、第15発明における目標床反力修正量の許容範囲は、前記第4発明における仮想外力の不感帯を規定するものとなる。
さらに、第15又は第16発明では、前記目標歩容が、前記ロボットの全脚体を空中に浮かせる期間を有する歩容であるときには、前記目標床反力修正量の許容範囲は、少なくとも前記空中期において該許容範囲の上限値と下限値とが略0となる範囲に決定されることが好ましい(第17発明)。これによれば、ロボットに床反力を作用させ得ない前記空中期では、主に、前記仮想外力による目標運動の操作によって前記状態量偏差を0に近づけることとなる。また、実際の床反力が0となる空中期では、当然の如く前記基準床反力は0に設定されると共に、前記目標床反力修正量も前記許容範囲によって、ほぼ0となる。従って、空中期における実際の床反力と目標床反力との差もほぼ0となるので、前記コンプライアンス制御の余計な動作がなくなり、ロボットの目標運動への追従性が高まる。
前記第14発明〜第17発明では、前記目標歩容生成手段は、前記差分の目標値を満足しつつ、前記目標運動を前記動力学モデル上で前記基準床反力に釣り合う基準運動に近づけるように前記目標床反力修正量と仮想外力との組を決定することが好適である(第18発明)。これによれば、前記状態量偏差を0に近づけることと、前記基準床反力に対して動力学モデル上で釣り合う基準運動に目標運動を近づけることとを妥協的に両立させることができる。
より具体的には、前記目標歩容生成手段は、前記状態量偏差を0に近づけるためのフィードバック制御則に基づき第1床反力操作量を決定する手段と、前記目標運動を前記動力学モデル上で前記基準床反力に釣り合う基準運動に近づけるためのフィードバック制御則に基づき第2床反力操作量を決定する手段と、前記目標床反力修正量の許容範囲を決定する手段と、前記第1床反力操作量と第2床反力操作量とを合成してなる床反力操作量を前記目標床反力修正量の仮値とし、その仮値を前記許容範囲内に制限することにより目標床反力修正量を決定する手段と、その目標床反力操作量と前記仮想外力との差分が前記第1床反力操作量に合致するように該仮想外力を決定する手段とを備えることが好ましい(第19発明)。
かかる第19発明では、前記状態量偏差がほぼ0になれば、前記第1床反力操作量と第2床反力操作量とを合成してなる床反力操作量は、目標運動を基準運動に近づけるための前記第2床反力操作量にほぼ等しくなるので、この第2床反力操作量に基づいて目標床反力修正量と仮想外力との組が決定されることとなる。従って、これらの目標床反力修正量と仮想外力とは、目標運動を前記基準運動に近づけるように決定されることとなる。また、目標運動が基準運動にほぼ一致していれば、前記第1床反力操作量と第2床反力操作量とを合成してなる床反力操作量は、前記状態量偏差を0に近づけるための前記第1床反力操作量にほぼ等しくなるので、この第1床反力操作量に基づいて目標床反力修正量と仮想外力との組が決定されることとなる。従って、これらの目標床反力修正量と仮想外力とは、前記状態量偏差を0に近づけるように決定されることとなる。従って、前記目標運動を前記基準運動に近づけること、すなわち、動力学的な安定性の高いロボットの運動を確保することと、前記状態量偏差を0に近づけること、すなわち、前記所定方向の並進運動に関するロボットの挙動と目標歩容の挙動とをできるだけ一致させることととを妥協的に両立させることができる。なお、第19発明では、前記第16発明と同様に、前記目標床反力修正量の許容範囲内で、目標床反力が優先的に操作される。
以上説明した、第1〜第19発明では、前記目標歩容生成手段は、所定期間分の目標歩容づつ、該所定期間分の目標歩容を仮想的な周期的歩容に近づけるように生成することが好ましい(第20発明)。これによより、ロボットの安定性の高い目標歩容を生成できる。
また、先に説明した如く、前記第1〜第20発明では、前記状態量は、前記ロボットの所定の部位の位置又は該ロボットの重心の位置であることが好ましい(第21発明)。そして、前記所定の部位は、前記ロボットの上体であることが好ましい(第22発明)。
また、本発明の脚式移動ロボットの制御装置の第23発明は、脚体の運動により移動する脚式移動ロボットの目標歩容を生成し、その目標歩容に追従させるように該ロボットの動作を制御する脚式移動ロボットの制御装置において、前記目標歩容を生成する目標歩容生成手段と、前記ロボットの所定の部位の位置及び該ロボットの重心の位置のうちの少なくともいずれかの位置をロボットの代表自己位置とし、該代表自己位置を推定する自己位置推定手段と、その推定された代表自己位置と、前記目標歩容における代表自己位置との差のうち、所定方向の成分を所定方向位置偏差として求める位置偏差算出手段と、前記目標歩容における目標着地点に対応して、前記ロボットの着地動作を行なう脚体の先端部が実際に着地すると予想される床上の着地予定点の鉛直位置を測定する床形状認識手段とを備え、前記目標歩容生成手段は、少なくとも前記位置偏差算出手段により求められた前記所定方向位置偏差と前記床形状認識手段により測定された前記着地予定点の鉛直位置とに基づいて前記目標歩容を修正することを特徴とするものである。
この第23発明では、所定方向位置偏差が前記した第1〜第22発明の状態量偏差に相当するものである。そして、第23発明では、該所定方向位置偏差と、前記床形状認識手段により測定された前記着地予定点の鉛直位置とに基づいて前記目標歩容が修正される。これにより、着地予定点での床の鉛直位置(高さ)が当初の目標目標歩容で想定していた鉛直位置からずれていても、前記所定方向位置偏差を解消しつつ、実際の床の高さに則した目標歩容を生成することができる。その結果、ロボットの実際の離床タイミングや着地タイミングと目標歩容上のタイミングを整合させつつ、ロボットの円滑な移動を行うことが可能となる。
なお、前記所定の部位は、ロボットの上体であることが好ましい。
この第23発明では、前記目標歩容生成手段は、少なくとも前記所定方向位置偏差に基づいて、該所定方向位置偏差が0に近づくように前記目標歩容のうちの前記代表自己位置の軌道を規定する目標運動を修正する手段と、少なくとも前記測定された前記着地予定点の鉛直位置に基づいて、前記目標歩容のうちの脚体の先端部の軌道を規定する目標運動を修正する手段とを備えることが好ましい(第24発明)。これによれば、
前記所定方向位置偏差は、前記代表自己位置の軌道を規定する目標運動、例えば上体の目標運動の修正(操作)によって0に近づき、着地予定点での床の鉛直位置(高さ)のずれに対しては、脚体の先端部の軌道を規定する目標運動の修正(操作)によって、脚体の着地が円滑に行われるようにされる。
なお、第24発明での前記代表自己位置の軌道を規定する目標運動の修正(操作)は、前記所定方向位置偏差を前記状態量偏差とみなして、前記した第1発明〜第19発明の如く行うようにすればよい。
第23発明では、前記目標歩容生成手段は、少なくとも前記測定された前記着地予定点の鉛直位置と前記目標歩容における目標着地点の鉛直位置との偏差と、前記所定方向位置偏差とに基づいて、これらの偏差が0に近づくように前記目標歩容のうちの前記代表自己位置の軌道を規定する目標運動を修正するようにしてもよい(第25発明)。これによれば、前記着地予定点の鉛直位置と前記目標歩容における目標着地点の鉛直位置との偏差と、前記所定方向位置偏差との両者を0に近づけるように前記代表自己位置の軌道を規定する目標運動(例えば上体の目標運動)が修正(操作)されることとなる。なお、この場合には、前記代表自己位置の軌道を規定する目標運動の修正(操作)は、前記着地予定点の鉛直位置と前記目標歩容における目標着地点の鉛直位置との偏差と、前記所定方向位置偏差との和を前記状態量偏差とみなして、前記した第1発明〜第19発明の如く行うようにすればよい。
また、本発明の脚式移動ロボットの制御装置の第26発明は、脚体の運動により移動する脚式移動ロボットの目標運動及び目標床反力からなる目標歩容に追従させるようにロボットの動作を制御するコンプライアンス制御手段を備え、該コンプラインアンス制御手段が、前記ロボットに実際に作用する床反力を把握しつつ、その把握した床反力と前記目標床反力との偏差である床反力偏差に応じて前記ロボットの上体に対する脚体の先端部の相対位置を前記目標運動により規定される相対位置から修正する脚式移動ロボットの制御装置において、前記目標歩容は、前記ロボットの全脚体を空中に浮かせる空中期を有する歩容であり、前記コンプライアンス制御手段は、前記床反力偏差に対する前記脚体の先端部の相対位置の修正量のゲインを少なくとも前記空中期の開始直前に減少させることを特徴とするものである。
かかる第26発明によれば、前記床反力偏差に対する前記脚体の先端部の相対位置の修正量のゲイン(コンプライアンス制御手段のゲイン)を少なくとも前記空中期の開始直前に減少させるので、空中期の開始直前では、コンプライアンス制御が硬いものとなる。その結果、脚体の先端部の、目標歩容の目標運動に対する追従性が高まり、脚体の離床を、つまづきを生じたりすることなく円滑に行うことができる。
また、本発明の脚式移動ロボットの制御装置の第27発明は、脚体の運動により移動する脚式移動ロボットの目標運動を少なくとも含む目標歩容を生成し、その目標歩容に追従させるように該ロボットの動作を制御する脚式移動ロボットの制御装置において、少なくとも前記ロボットの全脚体を空中に浮かせる空中期を含む前記目標歩容を生成する目標歩容生成手段と、前記ロボットの所定の部位の位置及び該ロボットの重心の位置のうちの少なくともいずれかの位置をロボットの代表自己位置とし、該代表自己位置を推定する自己位置推定手段と、その推定された代表自己位置と、前記目標歩容における代表自己位置との差のうち、所定方向の成分を所定方向位置偏差として求める位置偏差算出手段と、少なくとも前記所定方向位置偏差に応じて、該所定方向位置偏差が0に近づくように前記ロボットの脚体の先端部の位置を前記目標歩容により規定される位置から修正する脚先端部位置修正手段とを備え、該脚先端部位置修正手段は、少なくとも前記目標歩容の空中期の開始時までに前記脚体の先端部の位置の修正量を前記所定方向位置偏差によらずに強制的に略0にすることを特徴とするものである。なお、前記所定の部位は、例えばロボットの上体であることが好ましい。
かかる第27発明では、空中期の開始前、すなわち、いずれかの脚体を接地させている支持脚期では、基本的には、前記所定方向位置偏差が0に近づくように脚体先端部の位置が修正(操作)されるが、空中期の開始時までには、その修正量が、強制的に0にされる。このため、空中期の開始時には、脚体先端部の軌道が、本来の目標歩容により定まる脚体先端部の位置姿勢、すなわち、離床動作を行なうのに適した位置姿勢に制御されることとなる。その結果、脚体の離床を、つまづきを生じたりすることなく円滑に行うことができる。
また、本発明の脚式移動ロボットの制御装置の第28発明は、脚体の運動により移動する脚式移動ロボットの目標運動及び目標床反力からなる目標歩容を生成し、その目標歩容に追従させるように該ロボットの動作を制御する脚式移動ロボットの制御装置において、少なくとも前記ロボットの全脚体を空中に浮かせる空中期を含む前記目標歩容を生成する目標歩容生成手段と、前記ロボットの所定の部位の位置及び該ロボットの重心の位置のうちの少なくともいずれかの位置をロボットの代表自己位置とし、該代表自己位置を推定する自己位置推定手段と、その推定された代表自己位置と、前記目標歩容における代表自己位置との差のうち、所定方向の成分を所定方向位置偏差として求める位置偏差算出手段と、少なくとも前記所定方向位置偏差に応じて、該所定方向位置偏差が0に近づくように前記目標歩容うちの目標床反力を修正する床反力修正手段とを備え、該床反力修正手段は、少なくとも前記目標歩容の空中期の開始時までに前記目標床反力の修正量を前記所定方向位置偏差によらずに強制的に略0にすることを特徴とするものである。
かかる第28発明では、空中期の開始前、すなわち、いずれかの脚体を接地させている支持脚期では、基本的には、前記所定方向位置偏差が0に近づくように目標歩容の目標床反力が修正(操作)されるが、空中期の開始時までには、その修正量が、強制的に0にされる。このため、空中期の開始時には、目標床反力が本来の目標床反力、すなわち、ロボットの離床動作を行なうのに適した目標床反力に決定され、その目標床反力に実際の床反力を追従させるように脚体の運動等が制御されることとなる。その結果、脚体の離床を、つまづきを生じたりすることなく円滑に行うことができる。
発明を実施するための最良の形態
以下、添付図面を参照してこの発明の実施形態に係る脚式移動ロボットの制御装置を説明する。尚、脚式移動ロボットとしては2足移動ロボットを例にとる。
図1は、この実施形態に係る脚式移動ロボットとしての2足移動ロボットを全体的に示す概略図である。
図示の如く、2足移動ロボット(以下、ロボットという)1は上体(ロボット1の基体)3から下方に延設された左右一対の脚体(脚部リンク)2,2を備える。両脚体2,2は同一構造であり、それぞれ6個の関節を備える。その6個の関節は上体3側から順に、股(腰部)の回旋(回転)用(上体3に対するヨー方向の回転用)の関節10R,10L(符号R,Lはそれぞれ右側脚体、左側脚体に対応するものであることを意味する符号である。以下同じ)と、股(腰部)のロール方向(X軸まわり)の回転用の関節12R,12Lと、股(腰部)のピッチ方向(Y軸まわり)の回転用の関節14R,14L、膝部のピッチ方向の回転用の関節16R,16Lと、足首のピッチ方向の回転用の関節18R,18Lと、足首のロール方向の回転用の関節20R,20Lとから構成される。
各脚体2の足首の2つの関節18R(L),20R(L)の下部には、各脚体2の先端部を構成する足平(足部)22R(L)が取着されると共に、両脚体2,2の最上位には、各脚体2の股の3つの関節10R(L),12R(L),14R(L)を介して前記上体3が取り付けられている。上体3の内部には、詳細を後述する制御ユニット60などが格納される。なお、図1では図示の便宜上、制御ユニット60を上体3の外部に記載している。
上記構成の各脚体2においては、股関節(あるいは腰関節)は関節10R(L),12R(L),14R(L)から構成され、膝関節は関節16R(L)から構成され、足首関節は関節18R(L),20R(L)から構成される。また股関節と膝関節とは大腿リンク24R(L)で連結され、膝関節と足首関節とは下腿リンク26R(L)で連結される。
尚、上体3の上部の両側部には左右一対の腕体5,5が取り付けられると共に、上体3の上端部には頭部4が配置される。これらの腕体5,5及び頭部4のうち、腕体5は、本発明の要旨と直接的な関連を有しないため詳細な説明を省略する。また、頭部4については後述する。
上記の構成により、各脚体2の足平22R(L)は、上体3に対して6つの自由度を与えられている。そして、ロボット1の歩行等の移動中に、両脚体2,2を合わせて6*2=12個(この明細書で「*」はスカラに対する演算としては乗算を、ベクトルに対する演算としては外積を示す)の関節を適宜な角度で駆動することで、両足平22R,22Lの所望の運動を行うことができる。これにより、ロボット1は任意に3次元空間を移動することができる。
図1に示す如く、各脚体2の足首関節18R(L),20R(L)の下方には足平22R(L)との間に公知の6軸力センサ50が介装されている。該6軸力センサ50は、各脚体2の足平22R(L)の着地の有無、および各脚体2に作用する床反力(接地荷重)等を検出するためのものであり、該床反力の並進力の3方向成分Fx,Fy,Fz並びにモーメントの3方向成分Mx,My,Mzの検出信号を制御ユニット60に出力する。また、上体3には、Z軸(鉛直方向(重力方向))に対する上体3の傾き(姿勢角)およびその角速度等を検出するための傾斜センサ54が備えられ、その検出信号が該傾斜センサ54から制御ユニット60に出力される。この傾斜センサ54は、図示を省略する3軸方向の加速度センサおよび3軸方向のジャイロセンサを備え、これらのセンサの検出信号が上体3の傾きおよびその角速度を検出するために用いられると共に、ロボット1の自己位置姿勢を推定するために用いられる。また、詳細構造の図示は省略するが、ロボット1の各関節には、それを駆動するための電動モータ64(図5参照)と、その電動モータ64の回転量(各関節の回転角)を検出するためのエンコーダ(ロータリエンコーダ)65(図5参照)とが設けられ、該エンコーダ65の検出信号が該エンコーダ65から制御ユニット60に出力される。
さらに、図1では図示を省略するが、ロボット1の適宜な位置にはジョイスティック(操作器)73(図5参照)が設けられ、そのジョイスティック73を操作することで、直進移動しているロボット1を旋回させるなど、ロボット1の歩容に対する要求を必要に応じて制御ユニット60に入力できるように構成されている。
図2は本実施形態における各脚体2の先端部分(各足平22R(L)を含む)の基本構成を概略的に示す図である。同図に示すように、各足平22R(L)の上方には、前記6軸力センサ50との間にばね機構70が装備されると共に、足底(各足平22R,Lの底面)にはゴムなどからなる足底弾性体71が貼られている。これらのばね機構70及び足底弾性体71によりコンプライアンス機構72が構成されている。ばね機構70は詳細は後述するが、足平22R(L)の上面部に取り付けられた方形状のガイド部材(図2では図示省略)と、足首関節18R(L)(図2では足首関節20R(L)を省略している)および6軸力センサ50側に取り付けられ、前記ガイド部材に弾性材(ゴムやばね)を介して微動自在に収納されるピストン状部材(図2では図示省略)とから構成されている。
図2に実線で表示された足平22R(L)は、床反力を受けていないときの状態を示している。各脚体2が床反力を受けると、コンプライアンス機構72のばね機構70と足底弾性体71とがたわみ、足平22R(L)は図中に点線で例示したような位置姿勢に移る。このコンプラインアス機構72の構造は、例えば本出願人が先に提案した特開平5−305584号公報に詳細に説明されている如く、着地衝撃を緩和するためだけでなく、制御性を高めるためにも重要なものである。
上記コンプライアンス機構72を含めた足平22R(L)(以下、足平機構22R(L)と称することがある。)のより詳細な構成を図3及び図4を参照してさらに説明する。図3は足平機構22R(L)の側面示の断面図、図4は該足平機構22R(L)の底面側から見た平面図である。
足平機構22R(L)は、大略平板状の足平プレート部材102を骨格部材として備えている。この足平プレート部材102は、その前端部(つま先部)と後端部(踵部)とが若干上方に湾曲されているが、他の部分は平坦な平板状になっている。また、足平プレート部材102の上面部には、横断面方形状のガイド部材103がその軸心を上下方向に向けて固設されている。このガイド部材103の内部には、該ガイド部材103の内周面に沿うようにして略上下方向に移動可能に設けられた可動板(ピストン状部材)104が設けられ、該可動板104が足首関節18R(L),20R(L)に6軸力センサ50を介して連結されている。
また、可動板104は、その下面の周縁部がばね、ゴム等の弾性材からなる複数の弾性部材106(図ではばねとして記載している)を介して足平プレート部材102の上面部に連結されている。従って、足平プレート部材102は、弾性部材106、可動板104及び6軸力センサ50を介して足首関節18R(L)に連結されている。尚、ガイド部材103の内部(可動板104の下側の空間)は、図示を省略する穴や隙間を介して大気側に開放されており、大気中の空気がガイド部材103の内部に入出自在となっている。また、上記ガイド部材103、可動板104、及び弾性部材106は前記図2に示したばね機構70を構成するものである。
足平プレート部材102の底面(下面)には、前記図2に示した足底弾性体71としての接地部材71が取着されている。該接地部材71は、足平機構22R(L)の接地状態で、該足平プレート部材102と床面との間に介在させる弾性部材(床面に直接的に接触する弾性部材)であり、本実施形態では、足平プレート部材102の接地面の四隅(足平プレート部材102のつま先部の両側部並びに踵部の両側部)に固着されている。
また、接地部材71は、本実施形態では、比較的軟質のゴム材から成る軟質層107aと、比較的硬質のゴム材から成る硬質層107bとを上下に重合してなる2層構造に形成され、硬質層107bが、脚体2の着床時に直接的に床面に接触する接地面部として最下面側に設けられている。
足平機構22R(L)には、上記の構成の他、着地衝撃緩衝装置108が備えられている。この着地衝撃緩衝装置108は、足平プレート部材102の底面に取着された袋状部材109と、該袋状部材109の内部に対して圧縮性流体としての空気(大気中の空気)を入出させるための流通路110とを備えている。
袋状部材109は、その周囲に前記接地部材71が存するようにして、足平プレート部材102の底面の大略中央部に設けられている。この袋状部材109は、ゴム等の弾性材により変形自在に構成されており、外力による弾性変形が生じていない自然状態では、図3に実線で示すように、上方に開口した円筒容器形状を呈する。そして、該袋状部材109は、その開口端部が全周にわたって足平プレート部材102の底面に固着され、該足平プレート部材102により閉蓋されている。また、袋状部材109は、円筒容器形状を呈する自然状態では、該袋状部材109の底部が前記接地部材71よりも下方に突出するように設けられている。つまり、該袋状部材109の高さ(足平プレート部材102の下面から袋状部材109の底部までの距離)は、接地部材71の厚さよりも大きいものとされている。従って、足平プレート部材102が接地部材71を介して接地した状態(脚部2の着床状態)では、袋状部材109は、図3に仮想線で示すように、床反力により袋状部材109の高さ方向に圧縮される。
尚、本実施形態では、袋状部材109が円筒容器形状を呈する自然状態は該袋状部材109の膨張状態である。そして、袋状部材109は、弾性材により構成されているため、圧縮されたとき、自然状態の形状(円筒容器形状)への形状復元力を有する。
前記流通路110は、袋状部材109に対する空気の流入・流出を行う流入・流出手段を構成するものであり、本実施形態では、袋状部材109の内部と前記ガイド部材103の内部とを連通させるように足平プレート部材102に穿設された流通孔である。この場合、前述のように、ガイド部材103の内部は大気側に開放されているので、該流通路110は、袋状部材109の内部を大気側に連通させていることとなる。従って、袋状部材109の内部には、大気中の空気が流通路110を介して入出自在となっており、該袋状部材109の膨張状態(自然状態)では、該袋状部材109内には空気が充填され、その内部の圧力は大気圧と同等になる。また、流通路110は絞り通路となっており、袋状部材109の内部に空気が入出する際には流体抵抗を生じるようになっている。
図5は制御ユニット60の構成を示すブロック図である。該制御ユニット60はマイクロコンピュータにより構成されており、CPUからなる第1の演算装置90及び第2の演算装置92、A/D変換器80、カウンタ86、D/A変換器96、RAM84、ROM94、並びにこれらの間のデータ授受を行うバスライン82を備えている。この制御ユニット60では、各脚体2の6軸力センサ50、傾斜センサ54(加速度センサおよびレートジャイロセンサ)、ジョイスティック73等の出力信号はA/D変換器80でデジタル値に変換された後、バスライン82を介してRAM84に送られる。またロボット1の各関節のエンコーダ65(ロータリーエンコーダ)の出力は、カウンタ86を介してRAM84に入力される。
前記第1の演算装置90は後述の如く目標歩容を生成すると共に、関節角変位指令(各関節の変位角もしくは各電動モータ64の回転角の指令値)を算出し、RAM84に送出する。また第2の演算装置92はRAM84から関節角変位指令と、前記エンコーダ65の出力信号とに基づいて検出された関節角の実測値とを読み出し、各関節の駆動に必要な操作量を算出してD/A変換器96とサーボアンプ64aとを介して各関節を駆動する電動モータ64に出力する。
図6および図7は、前記ロボット1の頭部4の内部構造を表す図面である。図6は正面視、図7は側面視の図である。頭部4は、パン・チルト方向に回転する首関節120を介して、前記上体3の上部に連接されている。
首関節120にも、他の関節と同じく、エンコーダ(関節変位検出器)付きのモータ121,122と減速機123,124とを備え、図示を省略するモータ制御装置を介して前記制御ユニット60からの関節変位指令に追従するように制御される。
頭部4には、環境認識手段として、左右2台のビデオカメラ125,125が備えられ、対象物を立体視することができるようになっている。前記図3では図示を省略しているが、ビデオカメラ125,125の出力(撮像情報)は、制御ユニット60に入力され、該制御ユニット60で撮像情報内の対象物までの距離等が認識される。
なお、左右2台のビデオカメラ125,125の代わりに、以下のような環境認識手段を備えても良い。
a)3台以上のカメラによる立体視
b)1台カメラで対象物の多点を認識し、三角測量の原理で距離を推定する手段
c)レンジファインダ、スキャン式レーザー距離計等の非接触多点距離計測装置
図8は、この実施形態に係る脚式移動ロボットの制御装置の機能的構成を全体的に示すブロック図である。この図8中の「実ロボット」部分以外の部分が制御ユニット60が実行する処理機能(主として第1の演算装置90及び第2の演算装置92の機能)によって構成されるものである。なお、以下の説明では、脚体2の左右を特に区別する必要がないときは、前記符号R,Lを省略する。
以下説明すると、制御ユニット60は、ロボット1の目標歩容を自在かつリアルタイムに生成して出力する歩容生成装置200を備えている。この歩容生成装置200が出力する目標歩容は、目標上体位置姿勢軌道(上体3の目標位置及び目標姿勢の軌道)、目標足平位置姿勢軌道(各足平22の目標位置及び目標姿勢の軌道)、目標腕姿勢軌道(各腕体5の目標姿勢の軌道)、目標全床反力中心点(目標ZMP)軌道、目標全床反力軌道から構成される。なお、前記頭部4等、脚体2や腕体5以外に上体3に対して可動な部位の目標位置姿勢軌道を必要に応じて上記目標歩容に加えてもよい。
ここで、本発明の実施形態での用語の意味あるいは定義について補足しておく。上記歩容における「軌道」は時間的変化のパターン(時系列パターン)を意味し、以下の説明では、「軌道」の代わりに「パターン」と称することもある。また、各部位の「姿勢」は空間的な向きを意味する。例えば上体姿勢は、Z軸(鉛直軸)に対するロール方向(X軸回り)の上体3の傾斜角(姿勢角)と、Z軸に対するピッチ方向(Y軸回り)の上体3の傾斜角(姿勢角)と、ヨー方向(Z軸回り)の上体3の回転角とで表され、足平姿勢は各足平22に固定的に設定された2軸の空間的な方位角で表される。また、目標腕姿勢は、腕体5,5の全ての部位に関する上体3に対する相対的な姿勢で表わされる。
上体位置は、上体3の所定位置、具体的には上体3のあらかじめ定めた代表点の位置を意味する。同様に、足平位置は、各足平22R,22Lのあらかじめ定めた代表点の位置を意味する。なお、上体速度は、上体3の上記代表点の移動速度を意味し、足平速度は、各足平22R,22Lの上記代表点の移動速度を意味する。
目標上体位置姿勢等の目標歩容に関し、以下の説明では、誤解を生じるおそれがない場合には、しばしば「目標」を省略する。また、歩容のうちの、床反力に係わる構成要素以外の構成要素、すなわち足平位置姿勢、上体位置姿勢等、ロボット1の運動に係わる歩容を総称的に「運動」という。
各足平22R,Lの床反力(並進力及びモーメントからなる床反力)を「各足平床反力」と呼び、ロボット1の全ての(2本の)足平22R,22Lの床反力の合力を「全床反力」と呼ぶ。ただし、以下の説明においては、各足平床反力に関してはほとんど言及しないので、断らない限り、「床反力」は「全床反力」と同義として扱う。
目標床反力は、一般的には、作用点とその点に作用する力(並進力)と力のモーメントによって表現される。作用点はどこにとっても良いので、同一の目標床反力でも無数の表現が考えられるが、特に前述の目標床反力中心点を作用点にして目標床反力を表現すると、力のモーメントは、鉛直軸成分を除けば、0になる。
尚、動力学的平衡条件を満足する歩容では、目標運動軌道から算出されるZMP(目標運動軌道から算出されるロボット1の慣性力と重力との合力がその点まわりに作用するモーメントが、鉛直軸成分を除いて0になる点)と目標全床反力中心点は一致することから、目標全床反力中心点軌道の代わりに目標ZMP軌道を与えると言っても同じことである(詳細は、例えば本出願人によるPCT公開公報WO/02/40224を参照)。
このような背景から、PCT公開公報WO/02/40224の明細書では目標歩容を次のように定義していた。
a)広義の目標歩容とは、1歩ないしは複数歩の期間の目標運動軌道とその目標床反力軌道との組である。
b)狭義の目標歩容とは、1歩の期間の目標運動軌道とそのZMP軌道との組である。
c)一連の歩容は、いくつかの歩容がつながったものとする。
ロボット1の歩行を行う場合においては、本出願人が先に特開平10−86080号公報で提案した上体高さ決定手法によって上体鉛直位置(上体高さ)が決定されると、床反力の並進力成分は従属的に決定されるので、目標歩容の床反力に関して明示的に設定すべき物理量としては、ZMPだけで十分であった。したがって、PCT公開公報WO/02/40224の明細書では、狭義の目標歩容としては、上記のb)で十分であった。それに対し、ロボット1の走行を行う場合には、床反力鉛直成分も制御上重要であるので、該床反力鉛直成分を明示的に設定することが好ましい。そこで、本願出願人が先に提案したPCT出願(PCT/JP02/13596)等では、狭義の目標歩容として、次のb’)を採用した。
b’)狭義の目標歩容とは、1歩の期間の目標運動軌道とそのZMP軌道と床反力鉛直成分軌道の組である。
この明細書では以降、特にことわらない限り、目標歩容は狭義の目標歩容の意味で使用する。また、目標歩容の「1歩」は、ロボット1の片方の脚体2が着地してからもう一方の脚体2が着地するまでの意味で使用する。
歩容における両脚支持期とは言うまでもなく、ロボット1がその自重を両脚体2,2で支持する期間、片脚支持期とはいずれか一方のみの脚体2でロボット1の自重を支持する期間、空中期とは両脚体2,2が床から離れている(空中に浮いている)期間を言う。
片脚支持期においてロボット1の自重を支持しない側の脚体2を「遊脚」と呼び、自重を支持する側の脚体2を「支持脚」と呼ぶ。ロボット1の歩行では、両脚支持期と片脚支持期とが交互に繰り返され、ロボット1の走行では片脚支持期と空中期とが交互に繰り返される。この場合、走行の空中期では、両脚体2,2とも、ロボット1の自重を支持しないこととなるが、該空中期の直前の片脚支持期において遊脚であった脚体2、支持脚であった脚体2をそれぞれ該空中期においても遊脚、支持脚と呼ぶ。
また、目標上体姿勢、目標上体位置、目標足平位置姿勢、目標腕姿勢等、目標歩容におけるロボット1の各部の位置姿勢は支持脚座標系で記述される。支持脚座標系とは、支持脚足平22の接地面辺りに原点を持つ床面に固定された座標系である。より詳細には、支持脚座標系は、本出願人の特許3273443号に記載されているように、支持脚の足平22を接地面との間で滑らさないで、水平姿勢になるまで回転させた時の、該支持脚の足首関節の中心から接地面への垂直投影点を原点とし、該支持脚足平22のつま先に向かう水平軸(足平22の前後方向の軸)をX軸として、鉛直軸をZ軸、これらのX軸、Z軸に直交する座標軸(足平22の左右方向の軸)をY軸とする座標系である。
本発明の実施形態に係る歩容生成装置200は、2歩先までの遊脚の足平22の着地位置姿勢、着地時刻の要求値(目標値)を入力として、目標上体位置姿勢軌道、目標足平位置姿勢軌道、目標ZMP軌道、目標床反力鉛直成分軌道、及び目標腕姿勢軌道から構成される目標歩容を生成する。このとき、これらの軌道を規定するパラメータ(これを歩容パラメータと呼ぶ)の一部は、歩容の継続性を満足するように修正される。
また、歩容生成装置200は、ロボット1の片方の脚体2が着地してから他方の脚体2が着地するまでの1歩分の目標歩容(前記狭義の意味での目標歩容)を単位として、その1歩分の目標歩容を順番に生成する。ここで、現在あるいはこれから生成しようとしている歩容を「今回歩容」、その次の歩容を「次回歩容」、さらにその次の歩容を「次次回歩容」と呼ぶ。また、「今回歩容」の1つ前に生成した目標歩容を「前回歩容」と呼ぶ。
歩容生成装置200が生成する目標歩容の一部を例示的に概説すると、例えば目標足平位置姿勢軌道は、本出願人による特許3233450号に開示した有限時間整定フィルタを用いて生成される。この有限時間整定フィルタによる足平位置姿勢軌道の生成処理では、例えば足平位置軌道は、目標着地位置(着地位置の要求値)に向かって足平22を徐々に加速しながら移動を開始し、目標着地時刻(着地時刻の要求値)までに徐々に速度を0またはほぼ0にまで減速し、該目標着地時刻に目標着地位置に到達して停止するように生成される。足平姿勢軌道についても同様である。これにより生成される目標足平位置姿勢軌道は、着地瞬間における対地速度が0またはほぼ0になるため、特にロボット1の走行を行う場合に、前記空中期からの着地時における着地衝撃を小さくできる。
また、例えば人間が走行を行う場合と同様の形態でロボット1の走行を行う場合には、例えば目標床反力鉛直成分軌道および目標ZMP軌道(詳しくは支持脚座標系のX軸方向(支持脚足平22の前後方向)での目標ZMP軌道)は、それぞれ図9(a)、図9(b)に実線で示すようなパターンで設定される。
ロボット1の走行を行う場合には、目標床反力鉛直成分軌道は、基本的には、図9(a)の実線で示す如く、片脚支持期では上に凸のパターンとなり、空中期では0に維持される。なお、ロボット1の歩行を行う場合には、目標床反力鉛直成分軌道は、例えば図9(a)に二点鎖線で示すように設定される。この場合、二点鎖線のうちの上に凸の部分が両脚支持期に対応し、下に凸の部分が片脚支持期に対応する。また、目標ZMPは走行、歩行のいずれであっても、基本的には、ロボット1の脚体2の接地面内(より詳しくは所謂、支持多角形内)の中央付近に設定される。以降の説明では、主にロボット1の走行を行う場合を例に採って説明する。
図8に示す制御ユニット60の機能的構成は、本出願人が先に提案したPCT出願PCT/JP03/00435の第1実施形態と一部が相違するものである。その相違点は、上体鉛直位置安定化制御演算部218と自己位置姿勢推定部216とが新たに追加されていること、歩容生成装置200に上体鉛直位置安定化制御演算部218から後述するモデル鉛直外力Fmdlzが入力され、歩容生成装置200の歩容の生成において、モデル鉛直外力Fmdlzが考慮されること、および複合コンプライアンス動作決定部204に上体鉛直位置安定化制御演算部218からコンプライアンス制御用補償鉛直床反力Fcmpnzが入力され、複合コンプライアンス動作決定部204においてコンプライアンス制御用補償鉛直床反力Fcmpnzが考慮されてコンプライアンス動作が決定されることが異なる。残余の形態については、上記PCT出願PCT/JP03/00435の第1実施形態と異ならない。
以下、主にPCT出願PCT/JP03/00435の第1実施形態と異なる点について詳細に説明すると、自己位置姿勢推定部216において、ロボット1の上体3の実際の鉛直位置の推定値である推定上体鉛直位置を決定し、その推定上体鉛直位置と目標上体鉛直位置との差である上体鉛直位置偏差を求める。なお、自己位置姿勢推定部216における推定上体鉛直位置の決定には、例えば本願と同日の出願(特願2002−127066号を優先権の主張の基礎とするPCT出願、発明の名称「脚式移動ロボットの自己位置推定装置」)にて提案しているいずれかの実施形態の手法を用いれば良い。あるいは、公知の慣性航法の手法によって、推定上体鉛直位置を決定するようにしてもよい。基本的には、推定上体鉛直位置をできるだけ精度よく決定することができる手法であればどのような手法を用いてもよい。また、前記上体鉛直位置偏差の算出に用いる目標上体鉛直位置は、歩容生成装置200によって、前回制御周期に決定された目標歩容の上体鉛直位置である。また、本実施形態の自己位置姿勢推定部216では、上体3の実際の姿勢の推定値としての推定上体姿勢も決定され、その推定上体姿勢と目標上体姿勢との偏差うちの傾き成分(鉛直軸に対する傾き成分)である実上体姿勢角偏差も求められる。そして、自己位置姿勢推定部216には、推定上体位置姿勢の決定や、上体鉛直位置偏差、実上体姿勢角偏差の算出を行うために、前記傾斜センサ54に備えた加速度センサの加速度検出値とジャイロセンサの角速度検出値とが与えられると共に、歩容生成装置200から目標上体位置姿勢等の目標歩容が与えられる。
上体鉛直位置安定化制御演算部218では、前記上体鉛直位置偏差を基に、コンプライアンス制御用補償鉛直床反力Fcmpnzとモデル鉛直外力Fmdlzとを決定する。
なお、一般的には、力は、並進力と力のモーメントの組で表されるが、以降、断りがない限り、力は、並進力成分のみを表すものとする。
コンプライアンス制御用補償鉛直床反力Fcmpnzは、全床反力鉛直方向成分に対するコンプライアンス制御を含む複合コンプライアンス動作決定部204に入力される。複合コンプライアンス動作決定部204では、実全床反力(すべての足平床反力の合力)が、目標各足平床反力の合力である全床反力とコンプライアンス制御用補償鉛直床反力Fcmpnzとの和(合力)に一致するように、機構変形補償付き修正目標足平位置姿勢(軌道)を決定する。すなわち、コンプライアンス制御用補償鉛直床反力Fcmpnzが実床反力として付加的に発生させられる。
モデル鉛直外力Fmdlzは、歩容生成装置200に送られる。歩容生成装置200では、モデル鉛直外力Fmdlzがロボットに作用すると想定して、動力学的平衡条件(ニュートン方程式とオイラー方程式)を満足する目標歩容の運動を動力学モデルを用いて生成する。すなわち、動力学モデルの重心に、重力とモデル鉛直外力Fmdlzとが作用するものとして、動力学的平衡条件を満足する運動を生成する。
なお、上記動力学モデルとしては、例えば、前記PCT公開公報WO/02/40224号に記載の単純化モデルあるいは、本出願人が提案した特開2002−326173号公報に記載の多質点モデル(フルモデル)などを用いれば良い。
動力学モデルを用いて動力学的平衡条件を満足するように生成された、目標運動と目標床反力とから成る目標歩容に実ロボットを追従させる追従制御系においては、動力学モデルと実ロボットとに同一の床反力を作用させる限り、いかなる床反力を作用させても、目標運動と実ロボットの運動との差は、ほとんど該床反力の影響を受けない。
このことは、言い換えると、実ロボットにある床反力Fを作用させることと、動力学モデルに前記床反力Fの符号を反転した床反力(−F)を作用させることとは、目標運動と実ロボットの運動との差に対する影響としては等価である、と言える。
なお、動力学モデルに作用させる床反力は、必ずしも、接触している床から作用する力とは、限らない。例えば、ロボットと床が接触していなくて現実には発生できない床反力を動力学モデルに作用させる場合もある。したがって、目標床反力と呼ぶよりは、目標外力と呼ぶ方がより自然と言えるが、いずれにしても架空の力であるから、どちらでも構わないことである。
上体鉛直位置安定化制御演算部218の処理を、そのフローチャートである図10とその制御ブロック図である図11とを用いて詳説すると、まず、図10のS4000において、推定上体鉛直位置と目標上体鉛直位置の差(上体鉛直位置偏差)Δhおよびその変化率(時間微分値)dΔh/dtを求める。
次いでS4002に進み、図示する式によって、総合要求鉛直復元力Fdmdzを決定する。すなわち、上体鉛直位置偏差からフィードバック制御則(本実施形態ではPD制御則)により、Fdmdzを決定する。
次いでS4004に進み、総合要求鉛直復元力Fdmdzを基にコンプライアンス制御用補償鉛直床反力Fcmpnzとモデル鉛直外力Fmdlzとを決定する。具体的には、まず、コンプライアンス制御用補償鉛直床反力Fcmpnzの最小許容値および最大許容値を図12(c),(d)に例示する如く設定し、その最小許容値を下限値、最大許容値を上限値とした制限をかける飽和手段(リミッタ)250に総合要求鉛直復元力Fdmdzを通することにより、コンプライアンス制御用補償鉛直床反力Fcmpnzを決定する。従って、Fcmpnzは、最小許容値≦Fdmdz≦最大許容値であれば、Fdmdzに等しくなり、Fdmdz<最小許容値、又はFdmdz>最大許容値であれば、それぞれFcmpnzは最小許容値、最大許容値に制限される。そして、このように決定されたコンプライアンス制御用補償鉛直床反力Fcmpnzから総合要求鉛直復元力Fdmdzを減じることにより、モデル鉛直外力Fmdlzが決定される。つまり、FcmpnzとFmdlzとの差がFdmdzとなるようにFcmpnzとFmdlzとが決定される。
補足すると、S4002におけるゲインKhおよびゲインKdhは、負の値であり、推定上体鉛直位置と目標上体鉛直位置との差Δhが0に近づく(収束する)ように設定される。片脚支持期や空中期などの時期に応じてゲインの値を変更しても良い。
コンプライアンス制御用補償鉛直床反力Fcmpnzの許容範囲を規定する前記最小許容値は非正の値、最大許容値は非負の値である。図12(c)、(d)に例示した最大許容値および最小許容値は、ロボット1の走行を行う場合の例であり、この例では、上記最小許容値と最大許容値との間の許容範囲は、空中期の直前から片脚支持期の開始直後までの期間では0に設定されている。なお、図12には、Fcmpnzの最小許容値および最大許容値と、目標床反力鉛直成分および目標ZMPとの時期的な関係を示すために、前記図9(a),(b)に示した目標床反力鉛直成分および目標ZMPを図12(a)、(b)として併記した。
空中期においては、コンプライアンス制御によって、コンプライアンス制御用補償鉛直床反力Fcmpnzを発生させることができないので、言い換えると、空中期においては、コンプライアンス制御によって足平22を摂動させても床反力は0のままであるので、Fcmpnzの最小許容値および最大許容値は0または概ね0に設定することが望ましい。
また、離床直前(空中期の開始直前)の床反力が小さい状態またはつま先しか接地していない状態でも、コンプライアンス制御によって足平を摂動させて、床反力を変化させることは困難であることから、離床直前でも最小許容値および最大許容値は0または概ね0に設定するのが良い。また、離床直前にコンプライアンス制御用補償鉛直床反力Fcmpnzが0以外の値であると、床反力が0になる離床時刻(空中期の開始時刻)が目標離床時刻からずれる恐れがあることからも、離床直前では最小許容値および最大許容値は概ね0に設定するのが良い。
ロボット1の実際の離床時刻が目標離床時刻よりも早くなると、水平方向の摩擦力が想定した時刻よりも早めに小さくなるか0となるので、スリップやスピンを生じ易い。逆に、離床時刻が遅くなると、走行のように離床した直後に遊脚足平22を前に移動する時に、遊脚足平22が床に引っ掛かってしまう恐れがあった。
上記の構成により、推定上体鉛直位置と目標上体鉛直位置との差(上体鉛直位置偏差)Δhを0に漸近させるために、空中期においては、モデル鉛直外力Fmdlzが作用し、支持脚期においては、主にコンプライアンス制御用補償鉛直床反力Fcmpnzが作用する。
なお、支持脚期においては、ゲインKhおよびゲインKdhを0またはほぼ0にしても良い。コンプライアンス制御自身、上体鉛直位置偏差推定上体鉛直位置と目標上体鉛直位置との差Δhおよびその微分値に応じて、床反力が変化し、推定上体鉛直位置と目標上体鉛直位置との差Δhを0に収束させる作用を持っているからである。
S4002およびS4004の代わりに、図13に示すごとく、推定上体鉛直位置と目標上体鉛直位置との差(上体鉛直位置偏差)Δhを基に、図示する式を用いて、モデル鉛直外力Fmdlzとコンプライアンス制御用補償鉛直床反力Fcmpnzとを決定しても良い。すなわち、前記上体鉛直位置偏差Δhから、モデル鉛直外力Fmdlzとコンプライアンス制御用補償鉛直床反力Fcmpnzとを各別にフィードバック制御則(図13の例ではPD制御則)により決定しても良い。ただし、コンプライアンス制御用補償鉛直床反力Fcmpnzに係わるゲインKhc(比例ゲイン)とモデル鉛直外力Fmdlzに係わるゲインKhm(比例ゲイン)とは、それぞれ図14(c),(d)に示すように、片脚支持期や空中期などの時期等に応じて値を変更するのが良い。すなわち、ゲインKhcは、空中期や、その開始直前(離床直前)、片脚支持期の開始直後(着地直後)のように、床反力が0もしくはほぼ0になる時期では、Khc≒0に設定することが好ましい。逆に、ゲインKhmは、支持脚期においてKhm≒0に設定することが好ましい。なお、図14(a),(b)は、前記図9に示した目標床反力鉛直成分、目標ZMP(X軸成分)である。
また、安定性を考慮すると、KdhcはKhcと同様の傾向を持たせ、KdhmはKhmと同様の傾向を持たせるのが良い。
また、上体鉛直位置安定化制御演算部218は、前記飽和手段250のようなリミッタと可変ゲインとを組み合わせても良い。あるいは、上体鉛直位置安定化制御演算部218には、ローパスフィルターなどのフィルターを挿入しても良い。また、ニューロ制御やファジー制御等でモデル鉛直外力Fmdlzとコンプライアンス制御用補償鉛直床反力Fcmpnzを決定させても良い。
いずれにせよ、推定上体鉛直位置と目標上体鉛直位置の差Δhを0に近づけるように、空中期においては、主にモデル鉛直外力Fmdlzが作用し、支持脚期においては、主にコンプライアンス制御用補償鉛直床反力Fcmpnzが作用するように構成すれば良い。
歩容生成装置200における目標歩容生成処理ならびに自己位置姿勢推定部216の自己位置姿勢推定処理のフローチャートを図15示す。
この図を用いて以下に歩容生成装置200ならびに自己位置姿勢推定部216の処理について詳説する。
まずS010において時刻tを0に初期化するなど種々の初期化作業を行う。
次いでS012を経てS014に進み、制御周期毎のタイマ割り込みを待つ。制御周期はΔtである。
次いでS016に進み、自己位置姿勢推定部216の処理、すなわち、ロボット1の実際の上体位置姿勢を推定する(推定上体位置姿勢を決定する処理)を行う。S016における処理は、先にも述べたように、例えば本願と同日の出願(特願2002−127066号を優先権の主張の基礎とするPCT出願、発明の名称「脚式移動ロボットの自己位置推定装置」)にて提案しているいずれかの実施形態の手法を用いれば良い。または、従来方式である慣性航法によって自己位置(上体位置姿勢)を推定しても良い。
次いでS018に進み、歩容切り替わり目(前回歩容の生成が終了し、新たな今回歩容の生成を開始すべき時刻)であるか否かを判断し、その判断結果がYESである場合には、S020に進む。また、判断結果がNOである場合には、S032に進む。なお、以下に説明するS020からS030までの処理は、本願出願人が先に提案したPCT公開公報WO/02/40224あるいは前記PCT出願PCT/JP03/00435に詳細に説明されているので、本明細書では簡略的な説明に留める。
S020に進むときは時刻tを0に初期化し、次いでS022に進み、次回歩容支持脚座標系(詳しくはその位置および向き)、次次回歩容支持脚座標系(詳しくはその位置および向き)、今回歩容周期および次回歩容周期を読み込む。
上記次回歩容支持脚座標系および次次回歩容支持脚座標系は、それぞれ、前記ジョイスティック73の操作等によって指定される1歩目の遊脚足平22(今回歩容の遊脚足平22)の着地位置姿勢の要求値(目標着地位置姿勢)、2歩目の遊脚足平22(次回歩容の遊脚足平22)の着地位置姿勢の要求値(目標着地位置姿勢)に応じて、前記した支持脚座標系の定義に従って決定される。
また、今回歩容周期、次回歩容周期は、それぞれ、1歩目の遊脚足平22の着地時刻の要求値(目標着地時刻)、2歩目の遊脚足平22の着地時刻の要求値(目標着地時刻)に応じて決定される。
上記した遊脚足平22の着地位置姿勢の要求値並びに着地時刻の要求値、あるいは支持脚座標系の位置および向き並びに歩容周期は、あらかじめ歩行スケジュールとして記憶しておいても良く、あるいはジョイスティック73などの操縦装置からの指令(要求)とそのときまでの歩行履歴を基に決定しても良い。
次いでS024に進み、今回歩容につながる定常旋回歩容の歩容パラメータが、S022で決定された次回歩容支持脚座標系、次次回歩容支持脚座標系、今回歩容周期および次回歩容周期等に基づいて決定される。主に、目標足平位置姿勢軌道を規定する足平軌道パラメータ、目標上体姿勢の基準軌道を規定する基準上体姿勢軌道パラメータ、目標腕姿勢軌道を規定する腕姿勢軌道パラメータ、目標ZMP軌道を規定するZMP軌道パラメータ、目標床反力鉛直成分軌道を規定する床反力鉛直成分軌道パラメータが決定される。例えば床反力鉛直成分軌道パラメータに関して例示すると、前記図9(a)に示したパターンの折れ点の時刻や値が床反力鉛直成分軌道パラメータとして決定される。
ここで、前記定常旋回歩容は、その歩容を繰り返したときに歩容の境界においてロボット1の運動状態に不連続が生じないような周期的歩容を意味する(以降、「定常旋回歩容」を「定常歩容」と略す場合もある)。
定常旋回歩容の1周期分の歩容は、第1旋回歩容と第2旋回歩容とからなる。第1旋回歩容は、今回歩容の支持脚座標系に対応する支持脚足平22を次次回歩容支持脚座標系に対応する位置姿勢まで動かすときの歩容に相当し、第2旋回歩容は、次回歩容支持脚座標系に対応する支持脚足平22を次次次回支持脚座標系に対応する位置姿勢まで動かすときの歩容に相当する。この場合、次次次回歩容支持脚座標系は、第2旋回歩容の遊脚足平22の目標着地位置姿勢に対応するものである。そして、該次次次回歩容支持脚座標系は、次次回歩容支持脚座標系(第2旋回歩容の支持脚座標系)から見た該次次次回歩容支持脚座標系の位置姿勢(位置及び向き)が、今回歩容支持脚座標系から見た次回歩容支持脚座標系(今回歩容の遊脚足平22の着地位置姿勢)の位置姿勢(位置及び向き)に一致するように設定される。尚、定常旋回歩容に関して「旋回」なる用語を用いたのは、旋回率を零とするときは直進を意味するので、直進も広義の意味で旋回に含ませることができるからである。
定常旋回歩容は、歩容生成装置200で今回歩容の終端における発散成分や上体鉛直位置速度を決定するために暫定的に作成される仮想的な周期的歩容であり、ロボット1を実際に制御するために歩容生成装置200からそのまま出力されるものではない。
尚、「発散」とは、上体の位置が両足部(足平)の位置からかけ離れた位置にずれてしまうことを意味する。発散成分の値とは、2足移動ロボットの上体の位置が両足部(足平)の位置(厳密には、支持脚接地面に設定された支持脚座標系の原点からかけ離れていく具合を表す数値であり、上体の水平方向の位置及びその速度の関数で表される。
本実施形態では、これから生成する今回歩容の後につながる定常歩容を移動要求(前記2歩先までの遊脚の足平22の着地位置姿勢、着地時刻などの要求値)に応じて設定し、定常歩容の初期発散成分を求めてから、今回歩容の終端発散成分を定常歩容の初期発散成分に一致するように、今回歩容を生成するようにした。S024の詳細は、本出願人が提案した前記PCT公開公報WO/02/40224、あるいはPCT/JP03/00435に説明されているので、これ以上の説明を省略する。
S024の処理を行って定常歩容の歩容パラメータを決定した後、S026に進み、定常旋回歩容の初期状態(初期上体水平位置速度成分、初期上体鉛直位置速度、初期発散成分、初期上体姿勢角および角速度)を決定する。
S026の詳細は、PCT公開公報WO/02/40224、あるいはPCT/JP03/00435に説明しているので、ここでは、これ以上の説明を省略する。
次いで、S028に進み、今回歩容の歩容パラメータを決定(一部仮決定)する。この場合、決定される今回歩容の歩容パラメータは、定常旋回歩容の歩容パラメータと同様、主に、足平軌道パラメータ、基準上体姿勢軌道パラメータ、腕姿勢軌道パラメータ、目標ZMP軌道パラメータ、目標床反力鉛直成分軌道パラメータであり、それぞれのパラメータにより規定される軌道が、定常旋回歩容の軌道に連続するように決定される。ただし、これらのパラメータのうち、目標ZMP軌道パラメータは暫定的なものである。このS028の処理の詳細は、前記PCT公開公報WO/02/40224、あるいはPCT/JP02/13596号等に説明されているので、ここではこれ以上の説明を省略する。
次いでS029に進み、今回歩容の終端発散成分が定常歩容の初期発散成分に一致するように、今回歩容の歩容パラメータを修正する。ここで修正される歩容パラメータは、目標ZMP軌道パラメータである。
S029の詳細は、PCT公開公報WO/02/40224、あるいはPCT/JP02/13596号等に説明しているので、ここでは、これ以上の説明を省略する。
次いでS030に進み、床反力モーメント許容範囲のパラメータを決定する。
S030の詳細は、PCT/JP02/13596号に説明しているので、ここでは、これ以上の説明を省略する。
S030の処理を行った後、あるいはS018の判断結果がNOである場合には、S032に進み、今回歩容瞬時値を決定する。
S032では、ロボット1の動力学モデルに対して、目標床反力(目標歩容の床反力)に加えて、目標ZMPまわりにモデル操作床反力モーメントが発生し、かつモデル鉛直外力Fmdlzがロボット1の動力学モデル上での全体重心に作用するように、歩容瞬時値(修正歩容瞬時値)が決定される。
具体的には、図16のフローチャートにしたがって歩容瞬時値が決定される。
以下にこれを説明する。
S900からS904までは、前記S029の処理で最終的に決定された今回歩容パラメータに基づいて、現在時刻tにおける目標床反力鉛直成分、目標ZMP、目標両足平位置姿勢、基準上体姿勢、および目標腕姿勢の瞬時値が求められる。これらのS900〜S904までの処理は、例えば本出願人が先に提案したPCT出願PCT/JP02/13596号で詳細に説明した同出願の実施形態のフローチャートのS900からS904と同一の処理である。したがって、ここでは詳細な説明を省略する。
なお、S904において、歩容パラメータを基に決定される時刻tの目標両足平位置姿勢は、今回歩容支持脚座標系(今回歩容の支持脚足平22の着地位置姿勢に対応して前述した如く定まる支持脚座標系)で記述される。
補足すると、目標足平位置姿勢軌道は、前述の如く、本出願人が特許第3233450号で提案した有限時間整定フィルタを用いて生成される。このため、ロボット1の走行での空中期からの着地瞬間において、対地速度が0またはほぼ0になるように、上体3から見て足平22を引き上げるようにして着地する。これによって、着地衝撃は小さくなり、着地衝撃が過大になるのを防止することができる。
さらに、上記有限時間整定フィルタを3次以上の次数にする、すなわち、可変時定数の1次遅れフィルタを3段以上直列にするのが望ましい。こうすることにより、着地時刻(目標着地時刻)までに速度のみならず加速度も0またはほぼ0になって停止する。つまり、着地瞬間における対地加速度も0またはほぼ0になる。したがって、着地衝撃がより一層小さくなる。特に、実際のロボット1の着地時刻が目標の着地時刻からずれても、衝撃があまり増大しなくなる。
なお、有限時間整定フィルタを用いる代わりに、着地時刻(到達時刻)での変化速度が0または実質的に0になる(時間微分値が0になる)ように設定された多項式などの関数を用いて、足平位置姿勢軌道を決定するようにしてもよい。
S900からS904の処理を行った後、次いでS906に進み、目標床反力鉛直成分と、前述の如く上体鉛直位置安定化制御演算部218で決定されたモデル鉛直外力Fmdlzとの合力に動力学的に釣り合うように全体重心鉛直位置を算出する。
すなわち、ロボット1の動力学モデルに目標床反力鉛直成分とモデル鉛直外力Fmdlzとの合力が作用した場合に、動力学(ニュートン力学)的に釣り合う全体重心鉛直加速度を以下の式1によって求める。さらに、その求めた全体重心鉛直加速度を以下の式2を用いて積分して時刻tにおける全体重心鉛直速度を求め、さらに求めた全体重心鉛直速度を式3を用いて積分して時刻tにおける全体重心鉛直位置を算出する。ただし、ここで重力加速度は負の値とする。なお、式2、式3の代わりに台形近似によって全体重心鉛直位置・速度を求めても良い。
時刻tにおける全体重心鉛直加速度
=重力加速度+(目標床反力鉛直成分+モデル鉛直外力Fmdlz)/全体質量
…式1
時刻tにおける全体重心鉛直速度
=時刻(t−Δt)における全体重心鉛直速度
+時刻tにおける全体重心鉛直加速度*Δt
(ただし、重力加速度は負の値とする。)
…式2
時刻tにおける全体重心鉛直位置
= 時刻(t−Δt)における全体重心鉛直位置
+ 時刻tにおける全体重心鉛直速度*Δt
…式3
次いでS908に進み、全体重心鉛直位置速度を満足する上体鉛直位置速度を算出する。具体的には、前記求めた目標両足平位置姿勢(時刻tの値)、時刻(t−Δt)の目標上体姿勢、前記求めた目標腕姿勢(時刻tの値)、時刻(t−Δt)の上体水平位置およびそれらの変化率(変化速度)と求めたい上体鉛直位置速度から決定される姿勢の全体重心鉛直位置速度が、上記求めた全体重心鉛直位置速度の今回値(時刻tの値)に一致するように上体鉛直位置速度を求める。
なお、時刻tの上体姿勢と上体水平位置とは、未だ決定されていないので、代わりに時刻(t−Δt)の値を用いた。より精度を高めるために、時刻tでの上体姿勢と上体水平位置と推定値を、時刻(t−Δt)以前の歩容状態から外挿によって求めても良い。
次いでS910に進み、歩容パラメータを基に時刻tの床反力水平成分許容範囲[Fxmin,Fxmax]を求める。なお、床反力水平成分許容範囲を規定する歩容パラメータは、前記S028で決定されるものであるが、これについては、本出願人が先に提案したPCT出願PCT/JP02/13596号に記載されているので、ここでは、これ以上の説明を省略する。
次いで、S911に進み、床反力モーメント許容範囲パラメータを基に、床反力モーメント許容範囲の瞬時値を求める。また、床反力モーメント許容範囲は、前記図8に示した補償全床反力モーメント分配器214に送られる。該補償全床反力モーメント分配器214は、基本的には、ロボット1の上体姿勢(推定上体姿勢)を目標上体姿勢に近づけるように、コンプライアンス制御用の目標床反力モーメントと、歩容生成装置200の動力学モデルに入力するモデル操作床反力モーメントとを決定するものである。その詳細は、本出願人が先に提案したPCT/JP03/00435に記載されているので、ここでは、これ以上の説明を省略する。
次いで、S912に進み、目標ZMPまわりにモデル操作床反力モーメント(これは補償全床反力モーメント分配器214で決定される)が発生するように、今回歩容の上体水平加速度と上体姿勢角加速度とが決定される。ただし、このとき、上体水平加速度および上体姿勢角加速度は、床反力水平成分Fxが床反力水平成分許容範囲[Fxmin,Fxmax]を越えないように決定される。
言い換えると、ロボット1の目標運動によって発生する慣性力と重力との合力によって目標ZMPまわりに作用するモーメントが、モデル操作床反力モーメントの符号を反転したモーメントになるように、今回歩容の上体水平加速度と上体姿勢角加速との組が決定される。ただし、慣性力の符号を反転した力が床反力水平成分許容範囲[Fxmin,Fxmax]を越えないように決定する。
これについても、本出願人が先に提案したPCT出願PCT/JP02/13596号に記載されているので、ここでは、これ以上の説明を省略する。
次いでS914に進み、上体水平加速度と上体姿勢角加速度とをそれぞれ積分して、上体水平速度と上体姿勢角速度とを算出し、これらをさらに積分して、上体水平位置と上体姿勢角とが決定される。
以上のごとくS032の処理を行った後、S034に進み、PCT出願PCT/JP02/13596号の実施形態のS032の処理と同様、スピン力をキャンセルするための腕振り動作を決定する。次いでS036に進み、時刻tに制御周期Δtを加え、再び、S014に戻り、制御周期毎のタイマー割り込みを待つ。
以上が、歩容生成装置200における目標歩容生成処理、ならびに、自己位置姿勢推定部216の自己位置姿勢推定処理である。
図8を参照してこの実施形態に係る制御ユニット60の制御処理をさらに説明すると、歩容生成装置200において、上記したように目標歩容が生成される。生成された目標歩容のうち、目標上体位置姿勢(軌道)および目標腕姿勢軌道は、ロボット幾何学モデル(逆キネマティクス演算部)202に直接送られる。
また、目標足平位置姿勢(軌道)、目標ZMP軌道(目標全床反力中心点軌道)、および目標全床反力(軌道)(目標床反力水平成分と目標床反力鉛直成分)は、複合コンプライアンス動作決定部204に直接送られる一方、目標床反力分配器206にも送られる。目標床反力分配器206では、目標全床反力は各足平22R,22Lに分配され、目標各足平床反力中心点および目標各足平床反力が決定される。その決定された目標各足平床反力中心点および目標各足平床反力が複合コンプライアンス動作決定部204に送られる。
複合コンプライアンス動作決定部204では、機構変形補償付き修正目標足平位置姿勢軌道が生成され、それがロボット幾何学モデル202に送られる。ロボット幾何学モデル202は、目標上体位置姿勢(軌道)と機構変形補償付き修正目標足平位置姿勢(軌道)が入力されると、それらを満足する脚体2,2の12個の関節(10R(L)など)の関節変位指令(値)を算出して変位コントローラ208に送る。変位コントローラ208は、ロボット幾何学モデル202で算出された関節変位指令(値)を目標値としてロボット1の12個の関節の変位を追従制御する。
ロボット1に生じた床反力(詳しくは実各足平床反力)は6軸力センサ50によって検出される。その検出値は前記複合コンプライアンス動作決定部204に送られる。また、前記図15のS016で求められた推定上体姿勢と歩容生成装置200が生成した目標上体姿勢との差のうちの傾き成分、すなわち実上体姿勢角偏差θerrx,θerryが姿勢安定化制御演算部212に送られる。なお、θerrxはロール方向(X軸回り)の傾き成分であり、θerryはピッチ方向(Y軸回り)の傾き成分である。この姿勢安定化制御演算部212で、ロボット1の上体姿勢の傾きを目標歩容の上体姿勢の傾きに復元するための目標全床反力中心点(目標ZMP)まわりの補償全床反力モーメントMdmdが算出され、この補償全床反力モーメントMdmdが補償全床反力モーメント分配器214に与えられる。そして、該分配器214では、補償全床反力モーメントMdmdをコンプライアンス制御用目標床反力モーメントと、モデル操作床反力モーメントとに分配し、それぞれを複合コンプライアンス動作決定部204と、歩容生成装置200とに与える。また、前記上体鉛直位置安定化制御演算部218で前述の如く決定されたコンプライアンス制御用補償鉛直床反力Fcmpnzが複合コンプライアンス動作決定部204に与えられる。複合コンプライアンス動作決定部204は、入力値に基づいて目標足平位置姿勢を修正する。具体的には、複合コンプライアンス動作決定部204では、実全床反力(すべての実足平床反力の合力で、並進力およびモーメントの両者を含む)が、目標各足平床反力の合力である目標全床反力とコンプライアンス制御用補償鉛直床反力Fcmpnzとコンプライアンス制御用目標床反力モーメントとの合力に一致するように、歩容生成装置200から与えられた目標足平位置姿勢を修正して、機構変形補償付き修正目標足平位置姿勢(軌道)を決定する。すなわち、コンプライアンス制御用補償鉛直床反力Fcmpnzが付加的に発生させられると共に、コンプライアンス制御用床反力モーメントが目標ZMP回りに付加的に発生させられる。ただしすべての状態を目標に一致させることは事実上不可能であるので、これらの間にトレードオフ関係を与えて妥協的になるべく一致させる。すなわち、各目標(足平位置姿勢および床反力の目標)に対する制御偏差に重みを与えて、制御偏差(あるいは制御偏差の2乗)の重み付き平均が最小になるように制御する。
補足すると、機構変形補償付き修正目標足平位置姿勢(軌道)は、複合コンプライアンス動作決定部204によって修正された床反力の目標値を発生させるために必要な足平の変形機構(円柱状ゴム、足底スポンジおよび衝撃吸収用の袋状のエアダンパー)の変形量を変形機構の力学モデル(ばねダンパーモデル等)を用いて求めて、その変形量が発生するように修正した、目標足平位置姿勢(軌道)である。
なお、以上説明した第1実施形態は、前記第1発明、第3発明〜第17発明の一実施形態である。補足すると、前記モデル鉛直外力Fmdlzが仮想外力に相当し、コンプライアンス制御用補償鉛直床反力Fcmpnzが目標床反力修正量に相当する。
次に本発明の第2実施形態を図17および図18を参照して説明する。なお、第2実施形態においては、歩容生成装置200の処理は、図15のS032の修正歩容瞬時値決定サブルーチンだけが第1実施形態と異なる。また、歩容生成装置200ではモデル鉛直外力Fmdlzを用いないので、上体鉛直位置安定化制御演算部218の処理では、コンプライアンス制御用補償鉛直床反力Fcmpnzのみを前記第1実施形態のものと同様に決定し、モデル鉛直外力Fmdlzは出力しない。これ以外の制御ユニット60の処理は、前記第1実施形態と同一である。
図17は第2実施例における修正歩容瞬時値(今回歩容瞬時値)決定サブルーチン(図15のS032のサブルーチン)を示すフローチャートである。
以下、第2実施例における修正歩容瞬時値決定サブルーチンについて詳説すると、まずS1000からS1004まで、前記第1実施形態の図16のS900からS904と同じ処理が実行される。
次いでS1006に進み、目標床反力鉛直成分(時刻tの今回値)に動力学的に釣り合うように全体重心鉛直位置を算出する。この処理は、前記第1実施形態の図16のS906で、Fmdl=0とした場合の処理と同じである。
次いでS1008に進み、空中期であるか否かを判断する。この判断は、例えば前記6軸力センサ50による床反力検出値(実床反力)がある所定の値(0近傍の値)以下であるか否かによって行われる。あるいは、現在時刻tが、目標歩容の離床時刻(空中期の開始時刻)もしくはその前後の所定の時刻から、目標歩容の着地時刻もしくはその前後の所定の時刻までの範囲にあるか否かによって空中期であるか否かの判断をしてもよい。
S1008の判断結果がYESである場合には、S1010に進み、現在の推定上体位置とその時間的変化率である推定上体速度とを基に、ロボット1の現在の全体重心位置速度の推定値である推定重心位置速度を求め、その現在の推定重心位置速度を基に、ロボット1の全体重心が重力による放物線運動を行うとして、目標着地時刻における推定重心位置速度を求める。
次いで、S1012に進み、以下に説明する補正量曲線による修正(空中期での修正)をしなかったとした場合の元の目標歩容の全体重心軌道(詳しくは全体重心鉛直成分軌道)の現在時刻以後の予想軌道と補正量曲線の和の曲線(すなわち修正後の目標全体重心位置の鉛直成分軌道)の位置速度が目標着地時刻において前記推定全体重心位置速度(詳しくはその鉛直成分)に一致するように、補正量曲線を決定する。なお、上記元の目標歩容は、より詳しくは、S1006で求められた目標全体重心鉛直位置をそのまま用いて(後述するS1016の修正全体重心鉛直位置をS1006の全体重心鉛直位置と同一として)決定される歩容であり、この元の目標歩容の全体重心軌道の予想軌道は、現在時刻の制御周期のS1006で求められた全体重心鉛直位置およびその速度(時間的変化率)につながる放物線である。
上記補正量曲線はより具体的には次のように決定される。図18を参照して説明すると、まず、現在時刻tが空中期の開始時刻(S1008の判断結果がNOからYESに切り替わった時刻)であるときに、図18(a)の下側に示すように補正量曲線(ここでは第1補正量曲線と称する)が決定される。該第1補正量曲線を元の目標歩容の全体重心位置軌道(現在時刻以後の予想軌道)に加えたものが、現在時刻以後の実線で示す修正全体重心位置軌道(ここでは第1修正全体重心位置軌道と称する)であり、該修正全体重心位置軌道が、空中期の開始時刻で元の目標歩容の全体重心位置軌道に滑らかにつながり(全体重心鉛直位置および速度が一致する)、且つ、空中期の終了時刻(目標着地時刻)で推定全体重心軌道に滑らかにつながる(鉛直位置および速度が一致する)ように第1補正量曲線が決定される。
次に、現在時刻が制御周期Δtだけ進むと、図18(b)に示すように新たな補正量曲線としての第2補正量曲線が決定される。なお、図中の制御周期Δtは、説明の便宜上、実際よりも長い時間間隔として記載している。
ここで、現在時刻以後の推定全体重心位置軌道の予想軌道は、推定上体位置姿勢の推定誤差等に起因して、一般には、前回の制御周期の時刻で予想された推定重心位置軌道と同一にはならない。そこで、本実施形態では、補正量曲線を制御周期毎に更新するようにした。新たな補正量曲線(第2補正量曲線)は、現在時刻で第1補正量曲線(前回制御周期に決定した補正量曲線)に滑らかにつながり(現在時刻での第2補正量曲線の値および時間微分値が第1補正量曲線と一致する)、且つ、該第2補正量曲線を元の目標歩容の全体重心位置軌道の現在時刻以後の予想軌道に加えてなる修正全体重心位置軌道(図では第2修正全体重心位置軌道と称する)が空中期の終了時刻(目標着地時刻)で、推定全体重心軌道に滑らかにつながるように、決定される。以降、同様にして、補正量曲線は、制御周期毎に更新されつつ決定される。なお、補正量曲線は、三角関数や高次関数を用いて滑らかな曲線(S字カーブ)に決定される。
S1012の後、あるいはS1008の判断結果がNOである場合(空中期でない場合)には、S1014に進み、全体重心鉛直位置と、現在の補正量曲線の現在瞬時値の和を修正全体重心鉛直位置とする。なお、空中期でない時刻では、補正量曲線の値は、0とする。
次いでS1016に進み、修正全体重心鉛直位置を満足する上体鉛直位置を、現在の目標足平位値やロボット1の幾何学モデルを用いて算出する。次いでS1018からS1024まで、前記第1実施形態の図16のS910からS914と同様の処理を行う。
以上が、第2実施形態における修正歩容瞬時値決定サブルーチンの処理である。第2実施形態では、空中期において、目標歩容の全体重心鉛直位置と推定上体鉛直位置に対応する推定全体重心鉛直位置との偏差が将来の空中期の終了時刻、すなわち、今回歩容の終端において0に近づくように目標歩容の全体重心鉛直位置軌道が決定(修正)される。その結果、目標上体鉛直位置軌道も、今回歩容の終端において推定上体鉛直位置の軌道に近づくように決定されることとなる。
なお、以上説明した第2実施形態は、本発明の第2発明の一実施形態である。
次に本発明の第3実施形態を図19を参照して説明する。なお、本実施形態は、歩容生成装置200の処理のみが、前記第1実施形態と相違するものである。
図19は第3実施形態における歩容生成装置200の目標歩容生成処理ならびに自己位置姿勢推定部216の自己位置姿勢推定処理のフローチャートである。
まずS1110において時刻tを0に初期化するなど種々の初期化作業を行う。
次いでS1112を経てS1114に進み、制御周期毎のタイマ割り込みを待つ。制御周期はΔtである。
次いでS1116に進み、第1実施形態の図15のS016と同様、自己位置推定部216の自己位置姿勢推定処理を実行し、上体位置姿勢の推定(推定上体位置姿勢の決定)を行う。
次いでS1118に進み、歩容切り替わり目であるか否かを判断し、その判断結果がYESである場合には、S1120に進む。
S1120に進むときは時刻tを0にする。
S1118の判断結果がNOである場合、およびS1120を実行した場合には、S1122に進む。S1122からS1128までは、第1実施例における図15のS022からS028までと同様の処理を行う。
次いでS1130に進み、頭部4に搭載された2個のビデオカメラ125,125の画像と現在の推定上体位置姿勢とを基に、今回歩容の遊脚足平22の着地予想点(今回歩容の遊脚足平22の目標着地位置に対応する床面上の点で、例えば今回歩容支持脚座標系での目標着地位置の水平位置とほぼ同じ水平位置となる床面上の点)の高さ(鉛直位置)を求め、目標歩容パラメータのうちの目標着地鉛直位置を修正する。なお、このS1130で上記着地予想点の高さを求める処理は、本発明の第23発明における床形状認識手段に相当するものである。
すなわち、ビデオカメラ画像を基に求めた着地予想点の高さ(鉛直位置)の値あるいはこれをローパスフィルタに通した値を、目標歩容パラメータのうちの目標着地鉛直位置(これは今回歩容の遊脚の足平位置姿勢軌道を規定する歩容パラメータである)に代入する。ビデオカメラ画像と推定上体位置姿勢とは、ノイズが大きい(検出値が大きくばらつく)ので、ローパスフィルタを通さないで、直接、着地予想点の高さの値を目標着地鉛直位置に代入すると、遊脚の足平位置姿勢軌道が激しく変動する恐れがあるので、ローパスフィルタに通した方が良い。
ローパスフィルタの代わりに、複数の制御周期に渡って取り込んだビデオカメラ画像と推定上体位置姿勢とを基に平均化処理によって、高周波数ノイズを低減しても良い。
次いでS1132に進み、第1実施形態の図15のS029同様、今回歩容パラメータを修正し、次いでS1134に進み、第1実施形態のS030同様、床反力モーメント許容範囲のパラメータを決定する。次いでS1136に進み、第1実施形態の図15のS032同様、修正歩容瞬時値決定サブルーチンを実行する。次いでS1138に進み、第1実施形態のS034同様、スピン力をキャンセルするための腕振り動作を決定する。次いでS1140に進み、時刻tに制御周期Δtを加え、再び、S1114に戻り、制御周期毎のタイマー割り込みを待つ。
以上が、第3実施形態における歩容生成装置200ならびに自己位置姿勢推定部216の処理である。なお、本実施形態では、S1122では、次回歩容支持脚座標系の鉛直位置および次次回歩容支持脚座標系の鉛直位置は、前回の制御周期のS1130で求められた着地予想点の鉛直位置に設定される。但し、次次回歩容支持脚座標系の鉛直位置は必ずしもこのようにする必要はない。
ビデオカメラ125,125でなくとも、レーザーレンジファインダや超音波距離計(スキャナー)などの非接触の距離(あるいは距離分布、あるいは形状)を認識するセンサや、あるいは触覚センサを用いて着地予想点の鉛直位置を把握するようにしても良い。
以上のごとく、第3実施形態においては、ロボット1の実際の上体鉛直位置軌道(推定上体鉛直位置の軌道)と目標上体鉛直位置軌道の差に対しては、上記第1実施例のごとく、前記差(上体鉛直位置偏差Δh)を0に収束させるようにモデル鉛直外力Fmdlzを動力学モデルに加えると共に、想定していなかった床の凹凸に対しては、ビデオカメラ等、床面の高さを非接触で測定する床面形状認識センサ(距離センサ)により、遊脚足平22の目標着地位置に対応する着地予想点での床面高さを測定する。そして、その測定した床面高さに応じて(目標着地鉛直位置と床面の鉛直位置との偏差分だけ)遊脚の足平位置軌道を修正する。すなわち足平位置姿勢軌道を規定する歩容パラメータのうちの目標着地鉛直位置(パラメータ)を修正する。
なお、第3実施形態のS1136では、前記第1実施形態の図16に示したサブルーチン処理に代えて、前記第2実施形態の図17に示したサブルーチン処理を実行するようにして、空中期に、目標歩容の全体重心鉛直位置軌道あるいは上体鉛直位置軌道が、推定上体位置を基に予想される実際のロボット1の将来(着地時)の重心位置あるいは上体位置の推定値に収束するように、目標全体重心鉛直位置軌道あるいは目標上体鉛直位置軌道を修正するようにしてもよい。
また、足平位置姿勢軌道の修正方法としては、前記測定した床面高さ(着地予想点の鉛直位置)と目標歩容で想定していた着地高さ(目標着地鉛直位置)との差に応じて決定した滑らかな(S字曲線状の)補正軌道を、目標足平位置姿勢軌道に加えることで、足平位置姿勢軌道を修正するようにしても良い。
なお、以上説明した第3実施形態は、第23発明及び第24発明の一実施形態である。
以上説明した各実施形態では、コンプライアンス制御によって足平22を鉛直方向に変位させた時の慣性力や重心位置変化なども考慮して動力学演算による歩容生成を行っても良い。
コンプライアンスゲイン(床反力鉛直成分に対する足平摂動変位量の比)を可変にしても良い。例えば、コンプライアンスゲインを、着地時はコンプライアンス制御が柔らかくなり、その後離床時刻にかけて徐々にコンプライアンス制御が硬くなるように決定しても良い。これにより、床が硬い場合には、離床時のロボット1の実際の上体位置速度が目標歩容の上体位置速度に近くなる。ただし、鉛直方向のコンプライアンス制御を用いないと(すなわち鉛直方向のコンプライアンス制御が非常に硬いと)、ジャンプ時の蹴り力が床の硬さに大きく影響される傾向があるので、鉛直方向のコンプライアンス制御はあまり硬くし過ぎないようにすべきである。
また、足平22の位置誤差が大きい時に急激にコンプライアンスゲインを変えると誤差が急激に0に戻るため急激な加減速が発生し、脚体2の膝の位置制御偏差が過大になってロボット1が姿勢を崩したり、膝トルクが過大になって場合によっては損傷する恐れがある。従って、コンプライアンスゲインは徐々に変えるべきである。
なお、上記のようにコンプライアンスゲインを可変化する技術は、本発明の第26発明の実施形態である。
前記第1および第2実施形態においては、歩容の切り替わり目においてのみ、今回歩容パラメータを決定あるいは修正していたが、離床時などの所定の時刻あるいは、制御周期毎に修正するようにしても良い。ただし、今回歩容パラメータの修正処理は、歩容の切り替わり目でない時には、図15のS022の処理を実行せず、S024からS030を実行する。
なお、図15のS024からS030の処理によって今回歩容の床反力鉛直成分パターン(詳しくは、これを規定する歩容パラメータ)も修正される。この時、次に続く定常歩容の床反力鉛直成分パターンも修正しても良い。
制御周期毎あるいは歩容の切り替わり目で、推定上体鉛直位置速度を基に、あるいは推定上体鉛直位置速度と目標上体鉛直位置速度との差を基に、次の着地時のロボット1の姿勢を予測して、その予測した姿勢が適切な姿勢になるように、すなわち着地時の上体3が高過ぎたり(膝が伸び過ぎたり)、低過ぎたり(膝が曲がり過ぎたり)しないように、着地時刻パラメータ(目標着地時刻)を変更しても良い。ただしその結果、ロボット1の姿勢が傾くので、目標ZMPや目標着地位置など、姿勢に影響するパラメータなども同時に変更する必要がある。
前記第1実施形態あるいは第3実施形態においては、モデル鉛直外力Fmdlzを動力学モデルの重心に作用させる代わりに目標ZMPに作用させても良い。
また、前記各実施形態においては、コンプライアンス制御の目標値として付加される床反力は、コンプライアンス制御用補償鉛直床反力Fcmpnzのように鉛直成分だけとしたが、水平成分があっても良い。例えば、ロボット1の全体重心と目標ZMPとを結ぶ線分の方向に、あるいは上体3のある所定の点と目標ZMPとを結ぶ線分の方向に床反力を付加しても良い。こうすることによって、コンプライアンス動作によってロボットの姿勢がずれる悪影響を防止することができる。
また、前記第1、第3実施例においては、動力学的モデルに仮想的に加える外力も、モデル鉛直外力Fmdlzのように鉛直成分だけとしたが、水平成分があっても良い。例えば、ロボット1の全体重心と目標ZMPとを結ぶ線分の方向に、あるいは上体3のある所定の点と目標ZMPとを結ぶ線分の方向に床反力を付加しても良い。こうすることによって、モデル鉛直外力Fmdlzを加えることによる目標ZMPのずれが防止される。
なお、全体重心まわりに作用する力のモーメントが0となるように仮想外力をモデルに与えること、すなわち動力学モデルの全体重心に並進力であるモデル外力を仮想的に加えることは、動力学モデルに作用する重力の大きさおよび/または向きを変動させることと等価である。
上体鉛直位置安定化制御演算部218では、上体鉛直位置偏差(推定上体鉛直位置と目標上体鉛直位置の差Δh)を基にコンプライアンス制御用補償鉛直床反力Fcmpnzとモデル鉛直外力Fmdlzとを決定する代わりに、全体重心鉛直位置偏差(推定全体重心鉛直位置と目標全体重心鉛直位置との差)を基にコンプライアンス制御用補償鉛直床反力Fcmpnzとモデル鉛直外力Fmdlzとを決定するようにしても良い。
上体鉛直位置安定化制御演算部218では、推定上体鉛直位置と目標上体鉛直位置との差を基にコンプライアンス制御用補償鉛直床反力Fcmpnz、モデル鉛直外力Fmdlzあるいは、目標上体鉛直位置軌道の修正量を決定するようにしたが、上体3以外の所定の部位(例えば頭部4など)に基づいて決定しても構わない。
また、前記各実施形態では、鉛直成分(Z成分)に関する制御のみを説明したが、水平成分(X成分、Y成分)に対しても、同様の制御を行なっても良い。例えば、離床時の実際の重心水平位置速度と目標重心水平位置速度との差に応じて、動力学モデルの重心に仮想的な水平並進外力を加えても良い。
上体鉛直位置安定化制御演算部218では、モデル鉛直外力Fmdlzのみを決定するようにしても良い。
例えば、上体鉛直位置安定化制御演算部218において、前記第1実施形態で説明した如く、モデル鉛直外力Fmdlzとコンプライアンス制御用補償鉛直床反力Fcmpnzとを決定した後、コンプライアンス制御用補償鉛直床反力Fcmpnzを0に決定し直しても良い。
また、上記と逆に上体鉛直位置安定化制御演算部218では、コンプライアンス制御用補償鉛直床反力Fcmpnzのみを決定するようにしても良い。
例えば、上体鉛直位置安定化制御演算部218において、前記第1実施形態で説明した如く、モデル鉛直外力Fmdlzとコンプライアンス制御用補償鉛直床反力Fcmpnzとを決定した後、モデル鉛直外力Fmdlzを0に決定し直しても良い。
この方式では、前述の実施形態に較べて、ロボット1の上体3等、所定の部位の位置偏差(推定位置と目標位置との差)、あるいはロボット1の全体重心位置偏差(推定全体重心位置と目標全体重心位置との差)を0に収束させる作用は弱くなる。しかし、前述した如く、Fcmpnzの許容範囲を前記図12(c)、(d)のように設定したり、あるいはFcmpnzに係わるゲインを図14(c)のように設定したりすることで、少なくとも、目標離床時刻(空中期の開始予定時刻)までには、コンプライアンス制御用補償鉛直床反力Fcmpnzを0にすることができる。このため、目標離床時刻以降に、離床すべき脚体2がさらに床を蹴り続けることがなくなり、該脚体2を振り出す時に床に干渉することを防止することができる。
なお、上記のようにFcmpnzを決定して、ロボット1を制御する技術は、本発明の第27発明、第28発明の一実施形態である。
自己位置姿勢推定部216においては、少なくとも目標歩容の関節変位とコンプライアンス補償量(本出願人が先に提案した特開平10−277969号を参照)を基に、キネマティクス演算によって推定上体位置姿勢を決定しても良い。これにより、一層、推定上体位置の精度が高まり、結果的にロボット1の実際の足平22の位置姿勢軌道も、精度良く、目標足平位置姿勢軌道に追従する。
あるいは、少なくとも実関節変位(関節変位の検出値)を基に、キネマティクス演算によって推定上体位置姿勢を決定しても良い。これにより、一層、推定上体位置の精度が高まり、結果的にロボット1の実際の足平22の位置姿勢軌道も、精度良く、目標足平位置姿勢軌道に追従する。
前記第2実施形態においてモデル鉛直外力Fmdlzを仮想的に加えるようにしても良い。より一層安定になる。
前記第3実施形態のごとく床面の高さを非接触で測定する床面形状認識センサ(距離センサ)を備え、これにより目標着地点(着地予想点)の床面高さを測定して、測定した高さが想定していた高さとずれていたら、この高さのずれ(偏差)を推定上体鉛直位置と目標上体鉛直位置の差(上体鉛直位置偏差)とみなしてもよい。そして、この高さのずれに応じて、上記第1実施形態のごとく、実ロボット1の上体鉛直位置軌道と目標上体鉛直位置軌道との差を0に収束させるように(上記高さのずれを含む上体鉛直位置偏差を0に収束させるように)モデル鉛直外力Fmdlzを動力学モデルに仮想的に加えるようにしても良い。あるいは、上記高さのずれに応じて、前記第2実施形態のごとく、実ロボット1の将来の上体鉛直位置軌道に収束するように目標上体鉛直位置軌道を修正しても良い。なお、上記のように床面高さのずれに応じて、モデル鉛直外力Fmdlzを操作したり、前記目標上体鉛直位置軌道を修正する技術は、本発明の第25発明の一実施形態である。
ただし、この制御方式を用いると、着地予想点が想定していた高さよりもかなり低い場合には、この制御によって、いずれの足平22も上体3からの相対距離が増える。すなわち全ての脚体2が伸びるので、目標着地点に着地する足平22R又は22Lと異なる足平22L又は22Rが、床に引っ掛かる恐れが生じる。
歩容生成装置200において、修正された目標歩容を生成すると共に、修正する前の元の歩容も生成し、上体鉛直位置安定化制御演算部218において、修正された目標歩容が可能な範囲で(コンプライアンス制御用補償鉛直床反力Fcmpnzが最小許容値と最大許容値で規定される許容範囲を越えないで)元の歩容に収束するように、モデル鉛直外力Fmdlzとコンプライアンス制御用補償鉛直床反力Fcmpnzとの組を決定するようにしても良い。なお、修正された目標歩容とは、図15のS032で瞬時値が決定される目標歩容(歩容生成装置200が最終的に出力する目標歩容)であり、修正する前の元の歩容とは、S032でモデル鉛直外力Fmdlzを0として決定される歩容である。
以下に第4実施形態として説明すると、例えば、修正された目標歩容が元の歩容に収束するために必要なモデル復元要求鉛直外力Fmdlreczを次の式4によって求める。
Fmdlrecz
=Kr*(修正された目標歩容の上体鉛直位置−元の歩容の上体鉛直位置)
+Kdr*(修正された目標歩容の上体鉛直速度−元の歩容の上体鉛直速度)
…式4
つまり、修正された目標歩容の上体鉛直位置と元の歩容の上体鉛直位置との差から、フィードバック制御則(本例ではPD制御則)によりモデル復元要求鉛直外力Fmdlreczを求める。なお、目標歩容と元の歩容との上体鉛直位置の差の代わりに、ロボット1の全体重心鉛直位置の差を用いてもよい。
次いで、図20のブロック図に従って、モデル鉛直外力Fmdlzとコンプライアンス制御用補償鉛直床反力Fcmpnzとの組を決定する。
すなわち、前述のごとくコンプライアンス制御用補償鉛直床反力Fcmpnzに対する最小許容値と最大許容値を設定し、図20に示すごとく、その最小許容値を下限、最大許容値を上限とした制限をかける飽和手段(リミッタ)250に総合要求鉛直復元力Fdmdzとモデル復元要求鉛直外力Fmdlreczとの和を通す。これにより、コンプライアンス制御用補償鉛直床反力Fcmpnzを求める。なお、総合要求鉛直復元力Fdmdzは前記第1実施形態で説明した如く求められる。そして、この求めたコンプライアンス制御用補償鉛直床反力Fcmpnzから総合要求鉛直復元力Fdmdzを減じることにより、モデル鉛直外力Fmdlzを決定する。
この第4実施形態では、コンプライアンス制御用補償鉛直床反力Fcmpnzの最小許容値および最大許容値を前記第1実施形態と同様に設定することで、空中期では、モデル鉛直外力Fmdlzが上体鉛直位置偏差Δhを0に近づけるように決定される一方、支持脚期では、上体鉛直位置偏差Δh、並びに、修正された目標歩容の上体鉛直位置と元の歩容の上体鉛直位置との差を共に、0に近づけるようにモデル鉛直外力Fmdlzとコンプライアンス制御用補償鉛直床反力Fcmpnzとの組が決定される。より詳しくは、支持脚期では、総合要求鉛直復元力Fdmdzとモデル復元要求鉛直外力Fmdlreczとの和が、コンプライアンス制御用補償鉛直床反力Fcmpnzの最小許容値および最大許容値の間の許容範囲内の値である限り、Fcmpnzは、上体鉛直位置偏差Δh、並びに、修正された目標歩容の上体鉛直位置と元の歩容の上体鉛直位置との差の両者を妥協的に0に近づけるように決定される一方、モデル鉛直外力Fmdlzは、修正された目標歩容の上体鉛直位置と元の歩容の上体鉛直位置との差を0に近づけるように決定される。
なお、以上説明した第4実施形態は、本発明の第18発明及び第19発明の一実施形態である。
以上説明した本発明の実施形態によれば、動力学モデルによって生成される目標歩容の関節変位に追従するようにロボット1の実際の関節変位が制御されつつ、ロボット1の実際の上体鉛直位置軌道と目標上体鉛直位置軌道の差、あるいは実際の全体重心の鉛直位置軌道と目標歩容の全体重心の鉛直位置軌道が0に収束(漸近)するので、グローバル空間において、ロボット1の実際の足平軌道が目標足平軌道に収束する。したがって、グローバル空間(床に固定された座標系)から見て、実際のロボットの運動と床反力とが目標歩容の運動と床反力とに、常にほぼ一致する(精度良く追従制御される)ようになる。
したがって、ロボット1の姿勢安定性が向上すると共に、過大な床反力や衝撃が発生することを防止する。
また、その結果、実際の離床タイミングが目標歩容の離床タイミングにほぼ一致するので、離床タイミングずれによるスリップやスピンおよび遊脚足平が床に引っ掛かってしまうなどの問題が解消される。
また、着地に関しては、グローバル空間から見て、着地時の実際のロボット1の足平位置と速度が目標の位置速度にほぼ一致するので、実際の着地タイミングが目標歩容の着地タイミングにほぼ一致し、かつ着地時の対地速度が適切(例えば0)に制御されるので、着地衝撃が低減される。特に、目標足平軌道が、着地時に対地速度が0またはほぼ0になるように設定されているので、一層、着地衝撃が低減される。
補足すると、足平軌道はグローバル座標系(空間)で記述されているので、上記実施例のごとく上体鉛直位置を修正することにより、上体3と足平22との相対位置が変り、結果的に脚体2の伸縮(膝曲げ伸ばし)が発生するが、単なる足平22の軌道修正とは作用が異なる。例えば、空中期において実際のロボット1の上体鉛直位置軌道が目標歩容の上体鉛直位置軌道からずれた時に、着地時の対地速度が0になるように単に足平軌道だけを修正すると、着地衝撃は低減されるが、実際のロボット1の上体鉛直位置軌道が目標歩容生成用動力学モデルの上体鉛直位置軌道からずれたままであるので、実際のロボット1の状態と目標歩容生成用動力学モデルの状態とが一致せず、着地後に姿勢安定性を損なう恐れがある。特に、状態量の中でも、重心鉛直速度などのような速度に関する状態量に不一致が生じると、着地後に姿勢安定性を大きく損なう場合がある。
産業上の利用可能性
以上の如く、本発明は2足移動ロボット等の脚式移動ロボットを走行させたり、ジャンプさせる場合に円滑な運動を該ロボットに行わせることができるものとして有用である。
【図面の簡単な説明】
図1は、本発明の実施形態における脚式移動ロボットとしての2足移動ロボットの全体的構成の概略を示す概略図、図2は図1の各脚体の足平部分の構成を概略的に示す概略図、図3及び図4はそれぞれ各脚体の足平部分の詳細構成を示す側面視の断面図及び底面図、図5は図1のロボットに備えた制御ユニットの構成を示すブロック図、図6及び図7はロボットの頭部の内部構造をそれぞれ正面視、側面視で見た図、図8は図5の制御ユニットの機能的構成を示すブロック図、図9(a)、(b)はそれぞれ目標歩容の床反力鉛直成分、目標ZMPの設定例を示すグラフである。図10は第1実施形態における上体鉛直位置安定化制御部の処理を示すフローチャート、図11は図10の処理の詳細を示すブロック図である。図12(a)〜(d)はそれぞれ、目標歩容の床反力鉛直成分、目標ZMP、コンプライアンス制御用補償鉛直床反力の最大許容値、補償鉛直床反力の最小許容値の設定例を示すグラフである。図13は第1実施形態における上体鉛直位置安定化制御部の処理の他の例を示すブロック図である。図14(a)〜(d)はそれぞれ、目標歩容の床反力鉛直成分、目標ZMP、上体鉛直位置安定化制御部の処理におけるゲイン(図14(c),(d))の設定例を示すグラフである。図15は第1実施形態の歩容生成処理及び自己位置姿勢推定処理を示すフローチャート、図16は図15の要部のサブルーチン処理を示すフローチャートである。図17は第2実施形態における要部の処理を示すフローチャート、図18(a)、(b)は図17の処理を説明するためののグラフである。図19は第3実施形態における歩容生成処理及び自己位置姿勢推定処理を示すフローチャートである。図20は第4実施形態における要部の処理を示すブロック図である。、
あった。
また、離床時に、実際のロボットの上体鉛直位置軌道(重心軌道)が目標上体鉛直位置軌道からずれると、着地時の重心軌道もずれ、着地タイミングがずれたりして、遊脚足平の着地時の対地速度が過大になり、大きな着地衝撃が発生する恐れもあった。
また、実際のロボットの運動と床反力とが目標歩容のそれからずれるので、姿勢安定性も低下した。
本発明はかかる背景に鑑みてなされたものであり、ロボットの脚体先端部(足平)の床に対する軌道を目標歩容の脚体先端部(足平)軌道に近づけることができ、ひいては、ロボットが目標歩容通りの離床のタイミングで離床するようにして、ロボットのスリップやスピン、遊脚の床への引っ掛かかり等が発生するのを防止し、また、着地衝撃を低減することができる脚式移動ロボットの制御装置を提供することを目的とする。
発明の開示
本発明の脚式移動ロボットの第1発明は、脚体の運動により移動する脚式移動ロボットの目標歩容を生成し、その目標歩容に追従させるように該ロボットの動作を制御する脚式移動ロボットの制御装置において、少なくとも前記ロボットの目標運動を含み、且つ、該ロボットに作用する床反力が略0に維持される床反力不作用期間を有する目標歩容を生成する目標歩容生成手段と、前記ロボットの所定方向の並進運動に関する前記目標歩容の状態量と、該所定方向の並進運動に関する該ロボットの実際の状態量との偏差を状態量偏差として求める状態量偏差算出手段とを備え、前記目標歩容生成手段は、前記床反力不作用期間において、前記状態量偏差に応じて該状態量偏差を0に近づけるように前記ロボットの目標歩容の目標運動を決定することを特徴とする。
かかる第1発明では、前記床反力不作用期間において、前記所定方向の並進運動に関する前記状態量偏
差を0に近づけるようにロボットの目標歩容の目標運動を決定するので、ロボットの前記所定方向の並進運動に関する実際の挙動と目標歩容における挙動とを合致させるようにすることができる。従って、床反力不作用期間において、前記並進運動に関する実際のロボットの状態量と目標歩容における状態量との一致性が高まる。その結果、ロボットの前記所定方向の並進運動に関する実際の動作のタイミングを目標歩容での動作タイミングに合わせることが可能となり、ロボットの円滑な運動が可能となる。また、前記床反力不作用期間では、ロボットには実質的に重力のみが作用して、該ロボットの重心の運動が該重力によって支配されるので、ロボットの各部の相対的な運動だけを考慮すればよいが、前記床反力不作用期間以外の期間では、ロボットに床反力が作用するため、動力学的平衡条件を満たす必要性が高い。そして、第1発明では、床反力不作用期間以外の期間では、ロボットの動力学的平衡条件を重視した目標運動を決定することが可能となる。
なお、前記所定方向は、例えば鉛直方向、あるいは、ロボットの重心と目標歩容の目標ZMPとを結ぶ方向等である。これは、以下に説明するいずれの発明(第12〜第19発明を除く)においても同様である。
また、後述の第21発明、第22発明の如く、前記状態量は、例えば前記ロボットの所定の部位の位置又は該ロボットの重心の位置であることが好ましく、特に、前記所定の部位はロボットの上体(脚体が延設される基体)であることが好ましい。これは、以下に説明するいずれの発明においても同様である。ロボットの上体の位置、あるいは、重心の位置に係わる前記状態量偏差(すなわち位置偏差)を0に近づけるように目標歩容の目標運動を決定することで、脚体の先端部(足平)の実際の軌道も、目標歩容の軌道に近づけることができ、該脚体の離床、着床等の動作のタイミングを所望のタイミング(目標歩容上のタイミング)に合わせることができる。その結果、スリップやスピン、脚体先端部の床への引っ掛かり等を防止し、また、着地時に過大な着地衝撃が生じるのを防止することが可能となる。
また、本発明の脚式移動ロボットの制御装置の第2発明は、脚体の運動により移動する脚式移動ロボットの目標歩容を生成し、その目標歩容に追従させるように該ロボットの動作を制御する脚式移動ロボットの制御装置において、少なくとも前記ロボットの目標運動を含み、且つ、該ロボットの全ての脚体を空中に浮かせる空中期を有する目標歩容を生成する目標歩容生成手段と、前記ロボットの所定の部位の位置又は該ロボットの重心の位置を該ロボットの代表自己位置とし、その代表自己位置の所定方向の成分を該ロボットの所定方向の並進運動に関する該ロボットの実際の状態量を表すものとして推定する自己位
置推定手段と、前記推定された代表自己位置の前記所定方向の成分と前記目標歩容の代表自己位置の前記所定方向の成分との偏差を状態量偏差として求める状態量偏差算出手段と、少なくとも前記空中期の開始時までに前記自己位置推定手段により推定された前記代表自己位置の所定方向の成分に基づいて少なくとも該空中期における該代表自己位置の所定方向の成分の予想軌道を求める予想軌道算出手段とを備え、前記目標歩容生成手段は、前記空中期において前記目標歩容により定まる前記代表自己位置の前記所定方向の成分の目標軌道が少なくとも該空中期の終了時までに前記予想軌道に近づくように前記状態量偏差に応じて該空中期における前記目標歩容の目標運動を決定することを特徴とすることを特徴とする。
かかる第2発明によれば、空中期におけるロボットの代表自己位置の所定方向の成分の予想軌道を求め、この予想軌道に、少なくとも空中期の終了時までに目標歩容における代表自己位置の所定方向(鉛直方向等)の成分の目標軌道が近づくように目標歩容の目標運動が決定される。その結果、空中期の終了時、すなわち、ロボットの着地時における実際の代表自己位置の所定方向成分と目標歩容における代表自己位置の所定方向成分との間の偏差(状態量偏差)を小さくして、実際の着地タイミングと目標歩容上での着地タイミングとを合わせることが可能となり、ロボットの着地時に過大な着地衝撃を生じるのを防止しつつ、ロボットの着地動作を円滑に行わせることができる。また、ロボットの着地毎に前記状態量偏差をほぼ0にするため、ロボットの離床時(空中期の開始時)における実際のロボットの離床タイミングと目標歩容における離床タイミングとの間の誤差も極力小さくできるので、ロボットの離床動作も円滑に行なうことが可能となる。
また、前記第1発明では、前記目標歩容生成手段が、前記ロボットに作用する力と該ロボットの運動との関係を表す動力学モデルに少なくと
記動力学モデルによって決定される目標運動は、該動力学モデル上で前記基準床反力に釣り合う運動に前記不感帯域がない場合に較べ近づくこととなる。その結果、ロボットの実際の運動が、動力学的な安定性の高い(動力学的平衡条件を満たす)本来の運動から過剰にずれてしまうのを防止できる。
また、前記第3又は第4発明では、前記基準床反力が、その値が略0に維持される床反力不作用期間を有するときには、前記目標歩容生成手段は、前記床反力不作用期間以外の期間内で前記仮想外力を略0に決定することが好ましい(第6発明)。
すなわち、前記床反力不作用期間では、ロボットには実質的に重力のみが作用して、該ロボットの重心の運動が該重力によって支配されるので、ロボットの各部の相対的な運動だけを考慮すればよいが、前記床反力不作用期間以外の期間では、ロボットに床反力が作用するため、動力学的平衡条件を満たす必要性が高い。そして、前記第6発明では、前記床反力不作用期間以外の期間内で前記仮想外力を略0に決定することで、前記床反力不作用期間において、ロボットの前記所定方向の並進
運動に関する実際の挙動と目標歩容における挙動とを合致させる一方、該床反力不作用期間以外の期間では、ロボットの動力学的平衡条件を重視した目標運動を決定することが可能となる。
さらに、前記第1発明では、前記目標歩容生成手段は、少なくとも前記床反力不作用期間以外の期間内において、前記目標運動を所定の基準運動に近づけるように該目標運動を決定することが好ましい(第7発明)。
また、前記第6発明では、前記目標歩容生成手段は、少なくとも前記仮想外力を略0に決定する期間内において前記目標運動を前記基準床反力に前記動力学モデル上で釣り合う基準運動に近づけるように前記目標運動を決定することが好ましい(第8発明)。
これらの第7発明及び第8発明によれば、前記床反力不作用期間以外の期間内(第7発明)、あるいは、前記仮想外力を略0に決定する期間内(第8発明)において、動力学的平衡条件を重視した目標運動を決定できる。
また、前記第1発明では、前記目標歩容生成手段は、前記ロボットの目標床反力を決定する手段を含み、前記目標運動と目標床反力とに該ロボットの歩容を追従させるように該ロボットを操作するコンプライアンス制御手段を備えることが好適である(第9発明)。
同様に、前記第3発明では、前記目標歩容生成手段は、少なくとも前記基準床反力を基に前記目標運動に前記動力学モデル上で不釣合いとなるロボットの目標床反力を決定する手段を含み、前記目標運動と目標床反力とに該ロボットの歩容を追従させるように該ロボットを操作するコンプライアンス制御手段を備えることが好適である(第10発明)。
これらの第9発明及び第10発明によれば、前記コンプライアンス制御手段を備えることで、ロボットの実際の運動と床反力との両者を概ね
目標運動と目標床反力とに追従させることができる。
特に上記第9又は第10発明では、前記目標歩容生成手段は、少なくとも前記状態量偏差に応じて該状態量偏差を0に近づけるように前記目標床反力を決定することが好ましい(第11発明)。
これによれば、目標運動と目標床反力との両者を操作して、状態量偏差を0に近づけることができるため、該状態量偏差の0への収束、すなわち、該状態量偏差の解消を迅速に行うことができる。
また、本発明の第12発明は、脚体の運動により移動する脚式移動ロボットの目標運動及び目標床反力からなる目標歩容を生成する目標歩容生成手段と、その目標歩容の目標運動及び目標床反力に前記ロボットの歩容を追従させるように該ロボットを操作するコンプライアンス制御手段とを備えた脚式移動ロボットの制御装置において、前記ロボットの鉛直方向の並進運動に関する前記目標歩容の状態量と、該鉛直方向の並進運動に関する該ロボットの実際の状態量との偏差を状態量偏差として求める状態量偏差算出手段を備え、前記目標歩容生成手段は、少なくとも前記状態量偏差に応じて該状態量偏差を0に近づけるように前記ロボットの目標運動と目標床反力の並進力鉛直成分との組を決定することを特徴とするものである。
かかる第12発明では、前記状態量偏差を0に近づけるようにロボットの目標運動と目標床反力の並進力鉛直成分との組を決定するので、換言すれば、状態量偏差を0に近づけるように、目標運動と目標床反力の並進力鉛直成分との組を操作するので、前記第1発明と同様に前記並進運動に関する実際のロボットの状態量と目標歩容における状態量との一致性が高まることに加えて、それらの状態量の偏差(状態量偏差)を迅速に0に近づけることができる。その結果、ロボットの前記鉛直方向の並進運動に関する実際の動作のタイミングを目標歩容での動作タイミングに合わせることが可能となり、ロ
ボットの円滑な運動が可能となる。
この第12発明では、前記目標歩容生成手段は、前記ロボットに作用する床反力と該ロボットの運動との関係を表す動力学モデルに、少なくとも該ロボットに作用させるべき床反力の並進力鉛直成分の基準目標値としての基準床反力を入力しつつ、該動力学モデルを用いて前記目標運動を決定する手段と、少なくとも前記状態量偏差に応じて前記動力学モデルに付加的に入力すべき仮想外力と前記目標床反力の並進力鉛直成分の前記基準床反力からの修正量としての目標床反力修正量との組を決定する手段とを備え、その決定された仮想外力及び目標床反力修正量のうちの仮想外力を前記動力学モデルに付加的に入力することにより前記目標運動を決定すると共に、前記目標床反力修正量により前記基準床反力を修正することにより前記目標床反力の並進力鉛直成分を決定することが好ましい(第13発明)。
かかる第13発明によれば、前記仮想外力を前記動力学モデルに付加的に入力することによって前記状態量偏差を0に近づけるように目標運動が決定されると共に、前記目標床反力修正量により前記基準床反力を修正することにより前記状態量偏差を0に近づけるように目標床反力が決定される。
より具体的には、第13発明では、前記目標床反力修正量と前記仮想外力との差分が、ロボットの前記鉛直方向の並進運動を操作するものとなるので、前記目標歩容生成手段は、前記状態量偏差を0に近づけるように前記目標床反力修正量と前記仮想外力との差分の目標値を該状態量偏差に応じて決定し、その決定された差分の目標値を満足するように前記目標床反力修正量と前記仮想外力との組を決定することが好ましい(第14発明)。これにより、前記状態量偏差を0に近づけ得る目標運動と目標床反力の並進力鉛直成分との組を適正に決定できる。
さらに、第14発明では、前記目標歩容生成手段は、前記目標床反力
修正量の許容範囲を決定する手段を備え、前記差分の目標値と該目標床反力修正量の許容範囲とを満足するように前記目標床反力修正量と仮想外力との組を決定することが好ましい(第15発明)。すなわち、目標床反力は、ロボットに実際に作用する床反力の目標値であるが、ロボットに作用させ得る床反力には限界がある。従って、上記のように目標床反力の修正量の許容範囲を決定して、前記差分の目標値と該目標床反力修正量の許容範囲とを満足するように前記目標床反力修正量と仮想外力との組を決定することで、目標運動及び目標床反力へのロボットの追従性を高めることができ、ひいては、前記状態量偏差を0に近づけることを円滑に行うことができる。
上記第15発明では、より具体的には、前記目標歩容生成手段は、前記差分の目標値に対応する前記仮想外力が0であると仮定して前記目標床反力修正量の仮値を決定する手段と、該目標床反力修正量の仮値と前記許容範囲とに基づいて該仮値を該許容範囲内の値に制限してなる目標床反力修正量を決定する手段と、その決定した目標床反力修正量と前記決定された差分の目標値とに基づき前記仮想外力を決定する手段とを備えることが好ましい(第16発明)。
これによれば、前記仮想外力を0と仮定して前記差分の目標値に応じて決定される目標床反力修正量が前記許容範囲内に存在するときには、前記仮想外力が0に決定されることとなる。従って、前記状態量偏差を0に近づけるために、目標運動と目標床反力の並進力鉛直成分とのうち、目標床反力の並進力鉛直成分が優先的に操作されることとなる。つまり、状態量偏差の解消を、床反力の並進力鉛直成分の操作が可能な範囲では、該床反力の並進力鉛直成分の操作により行い、床反力の並進力鉛直成分の操作による状態量偏差の解消が不可能となる状態では、前記仮想外力による目標運動の操作と床反力の並進力鉛直成分の操作とを併用する。この結果、目標運動が、前記動力学モデル上で前記基準床反力に釣り合う運動から過剰にずれるよう
な事態を防止することができる。なお、第15発明における目標床反力修正量の許容範囲は、前記第4発明における仮想外力の不感帯を規定するものとなる。
さらに、第15又は第16発明では、前記目標歩容が、前記ロボットの全脚体を空中に浮かせる期間を有する歩容であるときには、前記目標床反力修正量の許容範囲は、少なくとも前記空中期において該許容範囲の上限値と下限値とが略0となる範囲に決定されることが好ましい(第17発明)。これによれば、ロボットに床反力を作用させ得ない前記空中期では、主に、前記仮想外力による目標運動の操作によって前記状態量偏差を0に近づけることとなる。また、実際の床反力が0となる空中期では、当然の如く前記基準床反力は0に設定されると共に、前記目標床反力修正量も前記許容範囲によって、ほぼ0となる。従って、空中期における実際の床反力と目標床反力との差もほぼ0となるので、前記コンプライアンス制御の余計な動作がなくなり、ロボットの目標運動への追従性が高まる。
前記第14発明〜第17発明では、前記目標歩容生成手段は、前記差分の目標値を満足しつつ、前記目標運動を前記動力学モデル上で前記基準床反力に釣り合う基準運動に近づけるように前記目標床反力修正量と仮想外力との組を決定することが好適である(第18発明)。これによれば、前記状態量偏差を0に近づけることと、前記基準床反力に対して動力学モデル上で釣り合う基準運動に目標運動を近づけることとを妥協的に両立させることができる。
より具体的には、前記目標歩容生成手段は、前記状態量偏差を0に近づけるためのフィードバック制御則に基づき第1床反力操作量を決定する手段と、前記目標運動を前記動力学モデル上で前記基準床反力に釣り合う基準運動に近づけるためのフィードバック制御則に基づき第2床反
力操作量を決定する手段と、前記目標床反力修正量の許容範囲を決定する手段と、前記第1床反力操作量と第2床反力操作量とを合成してなる床反力操作量を前記目標床反力修正量の仮値とし、その仮値を前記許容範囲内に制限することにより目標床反力修正量を決定する手段と、その目標床反力操作量と前記仮想外力との差分が前記第1床反力操作量に合致するように該仮想外力を決定する手段とを備えることが好ましい(第19発明)。
かかる第19発明では、前記状態量偏差がほぼ0になれば、前記第1床反力操作量と第2床反力操作量とを合成してなる床反力操作量は、目標運動を基準運動に近づけるための前記第2床反力操作量にほぼ等しくなるので、この第2床反力操作量に基づいて目標床反力修正量と仮想外力との組が決定されることとなる。従って、これらの目標床反力修正量と仮想外力とは、目標運動を前記基準運動に近づけるように決定されることとなる。また、目標運動が基準運動にほぼ一致していれば、前記第1床反力操作量と第2床反力操作量とを合成してなる床反力操作量は、前記状態量偏差を0に近づけるための前記第1床反力操作量にほぼ等しくなるので、この第1床反力操作量に基づいて目標床反力修正量と仮想外力との組が決定されることとなる。従って、これらの目標床反力修正量と仮想外力とは、前記状態量偏差を0に近づけるように決定されることとなる。従って、前記目標運動を前記基準運動に近づけること、すなわち、動力学的な安定性の高いロボットの運動を確保することと、前記状態量偏差を0に近づけること、すなわち、前記鉛直方向の並進運動に関するロボットの挙動と目標歩容の挙動とをできるだけ一致させることととを妥協的に両立させることができる。なお、第19発明では、前記第16発明と同様に、前記目標床反力修正量の許容範囲内で、目標床反力の並進力鉛直成分が優先的に操作される。
の鉛直位置とに基づいて前記目標歩容が修正される。これにより、着地予定点での床の鉛直位置(高さ)が当初の目標歩容で想定していた鉛直位置からずれていても、前記所定方向位置偏差を解消しつつ、実際の床の高さに則した目標歩容を生成することができる。その結果、ロボットの実際の離床タイミングや着地タイミングと目標歩容上のタイミングを整合させつつ、ロボットの円滑な移動を行うことが可能となる。
なお、前記所定の部位は、ロボットの上体であることが好ましい。
この第23発明では、前記目標歩容生成手段は、少なくとも前記所定方向位置偏差に基づいて、該所定方向位置偏差が0に近づくように前記目標歩容のうちの前記代表自己位置の軌道を規定する目標運動を修正する手段と、少なくとも前記測定された前記着地予定点の鉛直位置に基づいて、前記目標歩容のうちの脚体の先端部の軌道を規定する目標運動を修正する手段とを備えることが好ましい(第24発明)。これによれば、
前記所定方向位置偏差は、前記代表自己位置の軌道を規定する目標運動、例えば上体の目標運動の修正(操作)によって0に近づき、着地予定点での床の鉛直位置(高さ)のずれに対しては、脚体の先端部の軌道を規定する目標運動の修正(操作)によって、脚体の着地が円滑に行われるようにされる。
なお、第24発明での前記代表自己位置の軌道を規定する目標運動の修正(操作)は、前記所定方向位置偏差を前記状態量偏差とみなして、前記した第1発明〜第19発明の如く行うようにすればよい。
第23発明では、前記目標歩容生成手段は、少なくとも前記測定された前記着地予定点の鉛直位置と前記目標歩容における目標着地点の鉛直位置との偏差と、前記所定方向位置偏差とに基づいて、これらの偏差が0に近づくように前記目標歩容のうちの前記代表自己位置の軌道を規定する目標運動を修正するようにしてもよい(第25発明)。これによれ
Claims (28)
- 脚体の運動により移動する脚式移動ロボットの目標歩容を生成し、その目標歩容に追従させるように該ロボットの動作を制御する脚式移動ロボットの制御装置において、
少なくとも前記ロボットの目標運動を含む目標歩容を生成する目標歩容生成手段と、
前記ロボットの所定方向の並進運動に関する前記目標歩容の状態量と、該所定方向の並進運動に関する該ロボットの実際の状態量との偏差を状態量偏差として求める状態量偏差算出手段とを備え、
前記目標歩容生成手段は、前記状態量偏差に応じて該状態量偏差を0に近づけるように前記ロボットの目標歩容の目標運動を決定することを特徴とする脚式移動ロボットの制御装置。 - 前記目標歩容は、前記ロボットの全ての脚体を空中に浮かせる空中期を有する歩容であり、
前記ロボットの所定の部位の位置又は該ロボットの重心の位置を該ロボットの代表自己位置とし、その代表自己位置の前記所定方向の成分を前記所定方向の並進運動に関する該ロボットの実際の状態量を表すものとして推定する自己位置推定手段と、
少なくとも前記空中期の開始時までに前記自己位置推定手段により推定された前記代表自己位置の所定方向の成分に基づいて少なくとも該空中期における該代表自己位置の所定方向の成分の予想軌道を求める予想軌道算出手段とを備え、
前記目標歩容生成手段は、前記空中期において前記目標歩容により定まる前記代表自己位置の前記所定方向の成分の目標軌道が少なくとも該空中期の終了時までに前記予想軌道に近づくように前記推定された代表自己位置の所定方向の成分と前記目標歩容の代表自己位置の所定方向の成分との偏差である前記状態量偏差に応じて該空中期における前記目標歩容の目標運動を決定することを特徴とすることを特徴とする請求の範囲第1項に記載の脚式移動ロボットの制御装置。 - 前記目標歩容生成手段は、前記ロボットに作用する力と該ロボットの運動との関係を表す動力学モデルに少なくとも該ロボットに作用させるべき床反力の目標値としての基準床反力を入力しつつ、該動力学モデルを用いて前記目標運動を決定する手段であり、少なくとも前記状態量偏差に応じて仮想外力を決定し、該仮想外力を前記動力学モデルに付加的に入力することにより前記目標運動を決定することを特徴とする請求の範囲第1項に記載の脚式移動ロボットの制御装置。
- 前記目標歩容生成手段は、前記状態量偏差を0に近づけるために前記動力学モデルに付加的に入力すべき外力操作量を該状態量偏差からフィードバック制御則により決定する手段を備え、該外力操作量の値が0を含む所定の不感帯域に存在するときには、前記仮想外力を0に決定し、該外力操作量の値が前記不感帯域から逸脱しているときには、前記仮想外力を該外力操作量が前記不感帯域から逸脱した分の値に決定することを特徴とする請求の範囲第3項に記載の脚式移動ロボットの制御装置。
- 前記目標歩容は、前記ロボットに作用する床反力が略0に維持される床反力不作用期間を有する歩容であり、
前記目標歩容生成手段は、前記床反力不作用期間において、前記状態量偏差を0に近づけるように前記目標運動を決定することを特徴とする請求の範囲第1項に記載の脚式移動ロボットの制御装置。 - 前記基準床反力は、その値が略0に維持される床反力不作用期間を有し、
前記目標歩容生成手段は、前記床反力不作用期間以外の期間内で前記仮想外力を略0に決定することを特徴とする請求の範囲第3項に記載の脚式移動ロボットの制御装置。 - 前記目標歩容生成手段は、少なくとも前記床反力不作用期間以外の期間内において、前記目標運動を所定の基準運動に近づけるように該目標運動を決定することを特徴とする請求の範囲第5項に記載の脚式移動ロボットの制御装置。
- 前記目標歩容生成手段は、少なくとも前記仮想外力を略0に決定する期間内において前記目標運動を前記基準床反力に前記動力学モデル上で釣り合う基準運動に近づけるように前記目標運動を決定することを特徴とする請求の範囲第6項に記載の脚式移動ロボットの制御装置。
- 前記目標歩容生成手段は、前記ロボットの目標床反力を決定する手段を含み、前記目標運動と目標床反力とに該ロボットの歩容を追従させるように該ロボットを操作するコンプライアンス制御手段を備えたことを特徴とする請求の範囲第1項に記載の脚式移動ロボットの制御装置。
- 前記目標歩容生成手段は、少なくとも前記基準床反力を基に前記目標運動に前記動力学モデル上で不釣合いとなるロボットの目標床反力を決定する手段を含み、前記目標運動と目標床反力とに該ロボットの歩容を追従させるように該ロボットを操作するコンプライアンス制御手段を備えたことを特徴とする請求の範囲第3項に記載の脚式移動ロボットの制御装置。
- 前記目標歩容生成手段は、少なくとも前記状態量偏差に応じて該状態量偏差を0に近づけるように前記目標床反力を決定することを特徴とする請求の範囲第9項又は第10項に記載の脚式移動ロボットの制御装置。
- 脚体の運動により移動する脚式移動ロボットの目標運動及び目標床反力からなる目標歩容を生成する目標歩容生成手段と、その目標歩容の目標運動及び目標床反力に前記ロボットの歩容を追従させるように該ロボットを操作するコンプアライアンス制御手段とを備えた脚式移動ロボットの制御装置において、
前記ロボットの所定方向の並進運動に関する前記目標歩容の状態量と、該所定方向の並進運動に関する該ロボットの実際の状態量との偏差を状態量偏差として求める状態量偏差算出手段を備え、
前記目標歩容生成手段は、少なくとも前記状態量偏差に応じて該状態量偏差を0に近づけるように前記ロボットの目標運動と目標床反力との組を決定することを特徴とする脚式移動ロボットの制御装置。 - 前記目標歩容生成手段は、前記ロボットに作用する床反力と該ロボットの運動との関係を表す動力学モデルに、少なくとも該ロボットに作用させるべき床反力の基準目標値としての基準床反力を入力しつつ、該動力学モデルを用いて前記目標運動を決定する手段と、少なくとも前記状態量偏差に応じて前記動力学モデルに付加的に入力すべき仮想外力と前記目標床反力の前記基準床反力からの修正量としての目標床反力修正量との組を決定する手段とを備え、その決定された仮想外力及び目標床反力修正量のうちの仮想外力を前記動力学モデルに付加的に入力することにより前記目標運動を決定すると共に、前記目標床反力修正量により前記基準床反力を修正することにより前記目標床反力を決定することを特徴とする請求の範囲第12項に記載の脚式移動ロボットの制御装置。
- 前記目標歩容生成手段は、前記状態量偏差を0に近づけるように前記目標床反力修正量と前記仮想外力との差分の目標値を該状態量偏差に応じて決定し、その決定された差分の目標値を満足するように前記目標床反力修正量と前記仮想外力との組を決定することを特徴とする請求の範囲第13項に記載の脚式移動ロボットの制御装置。
- 前記目標歩容生成手段は、前記目標床反力修正量の許容範囲を決定する手段を備え、前記差分の目標値と該目標床反力修正量の許容範囲とを満足するように前記目標床反力修正量と仮想外力との組を決定することを特徴とする請求の範囲第14項に記載の脚式移動ロボットの制御装置。
- 前記目標歩容生成手段は、前記差分の目標値に対応する前記仮想外力が0であると仮定して前記目標床反力修正量の仮値を決定する手段と、該目標床反力修正量の仮値と前記許容範囲とに基づいて該仮値を該許容範囲内の値に制限してなる目標床反力修正量を決定する手段と、その決定した目標床反力修正量と前記決定された差分の目標値とに基づき前記仮想外力を決定する手段とを備えることを特徴とする請求の範囲第15項に記載の脚式移動ロボットの制御装置。
- 前記目標歩容は、前記ロボットの全脚体を空中に浮かせる期間を有する歩容であり、前記目標床反力修正量の許容範囲は、少なくとも前記空中期において該許容範囲の上限値と下限値とが略0となる範囲に決定されることを特徴とする請求の範囲第15項に記載の脚式移動ロボットの制御装置。
- 前記目標歩容生成手段は、前記差分の目標値を満足しつつ、前記目標運動を前記動力学モデル上で前記基準床反力に釣り合う基準運動に近づけるように前記目標床反力修正量と仮想外力との組を決定することを特徴とする請求の範囲第14項に記載の脚式移動ロボットの制御装置。
- 前記目標歩容生成手段は、前記状態量偏差を0に近づけるためのフィードバック制御則に基づき第1床反力操作量を決定する手段と、前記目標運動を前記動力学モデル上で前記基準床反力に釣り合う基準運動に近づけるためのフィードバック制御則に基づき第2床反力操作量を決定する手段と、前記目標床反力修正量の許容範囲を決定する手段と、前記第1床反力操作量と第2床反力操作量とを合成してなる床反力操作量を前記目標床反力修正量の仮値とし、その仮値を前記許容範囲内に制限することにより目標床反力修正量を決定する手段と、その目標床反力操作量と前記仮想外力との差分が前記第1床反力操作量に合致するように該仮想外力を決定する手段とを備えることを特徴とする請求の範囲第13項に記載の脚式移動ロボットの制御装置。
- 前記目標歩容生成手段は、所定期間分の目標歩容づつ、該所定期間分の目標歩容を仮想的な周期的歩容に近づけるように生成することを特徴とする請求の範囲第1項又は第12項に記載の脚式移動ロボットの制御装置。
- 前記状態量は、前記ロボットの所定の部位の位置又は該ロボットの重心の位置であることを特徴とする請求の範囲第1項又は第12項に記載の脚式移動ロボットの制御装置。
- 前記所定の部位は、前記ロボットの上体であることを特徴とする請求の範囲第21項に記載の脚式移動ロボットの制御装置。
- 脚体の運動により移動する脚式移動ロボットの目標歩容を生成し、その目標歩容に追従させるように該ロボットの動作を制御する脚式移動ロボットの制御装置において、
前記目標歩容を生成する目標歩容生成手段と、
前記ロボットの所定の部位の位置及び該ロボットの重心の位置のうちの少なくともいずれかの位置をロボットの代表自己位置とし、該代表自己位置を推定する自己位置推定手段と、
その推定された代表自己位置と、前記目標歩容における代表自己位置との差のうち、所定方向の成分を所定方向位置偏差として求める位置偏差算出手段と、
前記目標歩容における目標着地点に対応して、前記ロボットの着地動作を行なう脚体の先端部が実際に着地すると予想される床上の着地予定点の鉛直位置を測定する床形状認識手段とを備え、
前記目標歩容生成手段は、少なくとも前記位置偏差算出手段により求められた前記所定方向位置偏差と前記床形状認識手段により測定された前記着地予定点の鉛直位置とに基づいて前記目標歩容を修正することを特徴とする脚式移動ロボットの制御装置。 - 前記目標歩容生成手段は、少なくとも前記所定方向位置偏差に基づいて、該所定方向位置偏差が0に近づくように前記目標歩容のうちの前記代表自己位置の軌道を規定する目標運動を修正する手段と、少なくとも前記測定された前記着地予定点の鉛直位置に基づいて、前記目標歩容のうちの脚体の先端部の軌道を規定する目標運動を修正する手段とを備えることを特徴とする請求の範囲第23項に記載の脚式移動ロボットの制御装置。
- 前記目標歩容生成手段は、少なくとも前記測定された前記着地予定点の鉛直位置と前記目標歩容における目標着地点の鉛直位置との偏差と、前記所定方向位置偏差とに基づいて、これらの偏差が0に近づくように前記目標歩容のうちの前記代表自己位置の軌道を規定する目標運動を修正することを特徴とする請求の範囲第11項に記載の脚式移動ロボットの制御装置。
- 脚体の運動により移動する脚式移動ロボットの目標運動及び目標床反力からなる目標歩容に追従させるようにロボットの動作を制御するコンプライアンス制御手段を備え、該コンプラインアンス制御手段が、前記ロボットに実際に作用する床反力を把握しつつ、その把握した床反力と前記目標床反力との偏差である床反力偏差に応じて前記ロボットの上体に対する脚体の先端部の相対位置を前記目標運動により規定される相対位置から修正する脚式移動ロボットの制御装置において、
前記目標歩容は、前記ロボットの全脚体を空中に浮かせる空中期を有する歩容であり、前記コンプライアンス制御手段は、前記床反力偏差に対する前記脚体の先端部の相対位置の修正量のゲインを少なくとも前記空中期の開始直前に減少させることを特徴とする脚式移動ロボットの制御装置。 - 脚体の運動により移動する脚式移動ロボットの目標運動を少なくとも含む目標歩容を生成し、その目標歩容に追従させるように該ロボットの動作を制御する脚式移動ロボットの制御装置において、
少なくとも前記ロボットの全脚体を空中に浮かせる空中期を含む前記目標歩容を生成する目標歩容生成手段と、
前記ロボットの所定の部位の位置及び該ロボットの重心の位置のうちの少なくともいずれかの位置をロボットの代表自己位置とし、該代表自己位置を推定する自己位置推定手段と、
その推定された代表自己位置と、前記目標歩容における代表自己位置との差のうち、所定方向の成分を所定方向位置偏差として求める位置偏差算出手段と、
少なくとも前記所定方向位置偏差に応じて、該所定方向位置偏差が0に近づくように前記ロボットの脚体の先端部の位置を前記目標歩容により規定される位置から修正する脚先端部位置修正手段とを備え、
該脚先端部位置修正手段は、少なくとも前記目標歩容の空中期の開始時までに前記脚体の先端部の位置の修正量を前記所定方向位置偏差によらずに強制的に略0にすることを特徴とする脚式移動ロボットの制御装置。 - 脚体の運動により移動する脚式移動ロボットの目標運動及び目標床反力からなる目標歩容を生成し、その目標歩容に追従させるように該ロボットの動作を制御する脚式移動ロボットの制御装置において、
少なくとも前記ロボットの全脚体を空中に浮かせる空中期を含む前記目標歩容を生成する目標歩容生成手段と、
前記ロボットの所定の部位の位置及び該ロボットの重心の位置のうちの少なくともいずれかの位置をロボットの代表自己位置とし、該代表自己位置を推定する自己位置推定手段と、
その推定された代表自己位置と、前記目標歩容における代表自己位置との差のうち、所定方向の成分を所定方向位置偏差として求める位置偏差算出手段と、
少なくとも前記所定方向位置偏差に応じて、該所定方向位置偏差が0に近づくように前記目標歩容うちの目標床反力を修正する床反力修正手段とを備え、
該床反力修正手段は、少なくとも前記目標歩容の空中期の開始時までに前記目標床反力の修正量を前記所定方向位置偏差によらずに強制的に略0にすることを特徴とする脚式移動ロボットの制御装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002127684 | 2002-04-26 | ||
JP2002127684 | 2002-04-26 | ||
PCT/JP2003/005446 WO2003090978A1 (fr) | 2002-04-26 | 2003-04-28 | Dispositif de commande d'un robot mobile dote de jambes |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2003090978A1 true JPWO2003090978A1 (ja) | 2005-08-25 |
JP4225968B2 JP4225968B2 (ja) | 2009-02-18 |
Family
ID=29267661
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004501987A Expired - Fee Related JP4225968B2 (ja) | 2002-04-26 | 2003-04-28 | 脚式移動ロボットの制御装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7664572B2 (ja) |
EP (2) | EP2208581B1 (ja) |
JP (1) | JP4225968B2 (ja) |
KR (1) | KR100956521B1 (ja) |
DE (1) | DE60336127D1 (ja) |
WO (1) | WO2003090978A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017522195A (ja) * | 2014-07-23 | 2017-08-10 | グーグル インコーポレイテッド | 予測調節可能な油圧レール |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4246535B2 (ja) * | 2003-04-17 | 2009-04-02 | 本田技研工業株式会社 | 二足歩行移動体の床反力作用点推定方法及び二足歩行移動体の関節モーメント推定方法 |
US7603199B2 (en) * | 2003-11-27 | 2009-10-13 | Honda Motor Co., Ltd. | Control device for mobile body |
EP1738878B1 (en) * | 2004-02-16 | 2011-09-28 | Honda Motor Co., Ltd. | Gait generator for mobile robot |
JP2006068872A (ja) * | 2004-09-03 | 2006-03-16 | Honda Motor Co Ltd | 脚式移動ロボット |
JP4492395B2 (ja) * | 2005-03-09 | 2010-06-30 | トヨタ自動車株式会社 | 脚式ロボットとその動作制御方法 |
JP4692443B2 (ja) * | 2006-09-06 | 2011-06-01 | トヨタ自動車株式会社 | 脚式ロボット |
JP4143103B2 (ja) | 2006-12-20 | 2008-09-03 | 本田技研工業株式会社 | 移動装置、ならびにその制御システム、制御プログラムおよび監督システム |
JP4171510B2 (ja) | 2006-12-20 | 2008-10-22 | 本田技研工業株式会社 | 移動装置、ならびにその制御システム、制御プログラムおよび監督システム |
JP4968684B2 (ja) | 2007-12-10 | 2012-07-04 | 本田技研工業株式会社 | 目標経路設定支援システム |
JP5251253B2 (ja) * | 2008-05-20 | 2013-07-31 | 株式会社安川電機 | 脚式歩行ロボットの安定化制御装置 |
CN101685308A (zh) * | 2008-09-22 | 2010-03-31 | 鸿富锦精密工业(深圳)有限公司 | 机器人状态感知系统 |
AU2009348961B2 (en) * | 2009-07-01 | 2014-12-04 | Rex Bionics Limited | Control system for a mobility aid |
JP5219956B2 (ja) * | 2009-07-23 | 2013-06-26 | 本田技研工業株式会社 | 移動体の制御装置 |
JP5284923B2 (ja) * | 2009-10-28 | 2013-09-11 | 本田技研工業株式会社 | 脚式移動ロボットの制御装置 |
JP5232124B2 (ja) * | 2009-10-28 | 2013-07-10 | 本田技研工業株式会社 | 脚式移動ロボットの制御装置 |
JP5483997B2 (ja) * | 2009-10-28 | 2014-05-07 | 本田技研工業株式会社 | 脚式移動ロボットの制御装置 |
JP5506618B2 (ja) * | 2009-12-28 | 2014-05-28 | 本田技研工業株式会社 | ロボットの制御装置 |
KR101200191B1 (ko) * | 2010-07-14 | 2012-11-13 | 서울대학교산학협력단 | 데이터 기반 바이페드 제어 장치 및 방법 |
US8504208B2 (en) * | 2011-05-25 | 2013-08-06 | Honda Motor Co., Ltd. | Mobile object controller and floor surface estimator |
US8907726B2 (en) * | 2011-11-04 | 2014-12-09 | Rf Micro Devices, Inc. | Voltage, current, and saturation prevention |
KR101305617B1 (ko) * | 2012-01-02 | 2013-09-09 | 현대자동차주식회사 | 착용식 로봇의 양중제어방법 및 양중제어시스템 |
US9517561B2 (en) * | 2014-08-25 | 2016-12-13 | Google Inc. | Natural pitch and roll |
US9499219B1 (en) | 2014-08-25 | 2016-11-22 | Google Inc. | Touch-down sensing for robotic devices |
WO2016061471A1 (en) * | 2014-10-17 | 2016-04-21 | Hitachi High Technologies America, Inc. | Interactive laboratory robotic system |
US10286556B2 (en) * | 2016-10-16 | 2019-05-14 | The Boeing Company | Method and apparatus for compliant robotic end-effector |
CN108068908B (zh) * | 2017-12-29 | 2023-10-10 | 深圳市优必选科技有限公司 | 机器人脚板结构和人形机器人 |
CN108785877A (zh) * | 2018-06-12 | 2018-11-13 | 沈阳东软医疗系统有限公司 | 一种运动控制方法和设备 |
US10946518B2 (en) * | 2018-07-24 | 2021-03-16 | Invia Robotics, Inc. | Spatiotemporal controller for controlling robot operation |
US20200039064A1 (en) * | 2018-08-06 | 2020-02-06 | The Regents Of The University Of California | Low-Cost Compliant Robot Arm and System for Manipulation |
CN110187637B (zh) * | 2019-06-03 | 2021-12-10 | 重庆大学 | 在控制方向和期望轨迹不确定下的机器人系统控制方法 |
EP4010239B1 (en) * | 2019-08-06 | 2023-11-22 | Boston Dynamics, Inc. | Leg swing trajectories |
CN113031579B (zh) * | 2019-12-25 | 2023-10-10 | 深圳市优必选科技股份有限公司 | 双足机器人的行走控制方法、装置及双足机器人 |
CN111208783B (zh) * | 2019-12-30 | 2021-09-17 | 深圳市优必选科技股份有限公司 | 一种动作模仿方法、装置、终端及计算机存储介质 |
CN111452879B (zh) * | 2020-04-09 | 2021-05-28 | 北京交通大学 | 机器人仿生足及具有其的机器人 |
CN111645110B (zh) * | 2020-07-01 | 2024-05-03 | 无锡盈连科技有限公司 | 一种径向浮动装置 |
CN111924020B (zh) * | 2020-08-11 | 2022-07-12 | 腾讯科技(深圳)有限公司 | 用于机器人的腿部组件及设备 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03233450A (ja) | 1990-02-09 | 1991-10-17 | Fuji Photo Film Co Ltd | カラー画像形成方法 |
JPH03273443A (ja) | 1990-03-23 | 1991-12-04 | Fuji Xerox Co Ltd | 複数ワークステーションでの共同作業システム |
JP3233450B2 (ja) | 1992-05-22 | 2001-11-26 | 本田技研工業株式会社 | 指定時刻到達関数発生器 |
JP3273443B2 (ja) | 1992-05-22 | 2002-04-08 | 本田技研工業株式会社 | ロボットのリンクなどの軌道生成方法及び装置 |
JP3269852B2 (ja) * | 1992-05-29 | 2002-04-02 | 本田技研工業株式会社 | 脚式移動ロボットの姿勢安定化制御装置 |
JP3024028B2 (ja) | 1992-07-20 | 2000-03-21 | 本田技研工業株式会社 | 脚式移動ロボットの歩行制御装置 |
WO1998004388A1 (fr) * | 1996-07-25 | 1998-02-05 | Honda Giken Kogyo Kabushiki Kaisha | Dispositif de reproduction de la demarche pour robot articule muni de jambes |
JP3663034B2 (ja) | 1996-07-25 | 2005-06-22 | 本田技研工業株式会社 | 脚式移動ロボットの歩容生成装置 |
JP3626303B2 (ja) | 1996-12-18 | 2005-03-09 | 本田技研工業株式会社 | 脚式移動ロボットの足底接地位置検出装置 |
JP3672426B2 (ja) | 1996-12-19 | 2005-07-20 | 本田技研工業株式会社 | 脚式移動ロボットの姿勢制御装置 |
JP3629133B2 (ja) | 1997-01-31 | 2005-03-16 | 本田技研工業株式会社 | 脚式移動ロボットの制御装置 |
JP3629143B2 (ja) | 1998-04-20 | 2005-03-16 | 本田技研工業株式会社 | 脚式移動ロボットの制御装置 |
JP2000153476A (ja) * | 1998-09-14 | 2000-06-06 | Honda Motor Co Ltd | 脚式移動ロボット |
JP3634238B2 (ja) * | 2000-05-19 | 2005-03-30 | 本田技研工業株式会社 | 脚式移動ロボットの床形状推定装置 |
JP3677623B2 (ja) * | 2000-09-11 | 2005-08-03 | 独立行政法人産業技術総合研究所 | 脚式ロボットのリアルタイム最適制御方法 |
JP2002127066A (ja) | 2000-10-20 | 2002-05-08 | Shin Etsu Chem Co Ltd | 物体把持方法 |
KR100661333B1 (ko) | 2000-11-17 | 2006-12-27 | 혼다 기켄 고교 가부시키가이샤 | 레그식 이동 로봇의 보용 생성장치 |
JP3726032B2 (ja) | 2001-04-27 | 2005-12-14 | 本田技研工業株式会社 | 脚式移動ロボットの目標運動生成装置 |
WO2003057423A1 (fr) | 2001-12-28 | 2003-07-17 | Honda Giken Kogyo Kabushiki Kaisha | Dispositif de production de demarche pour robot se deplaçant sur des jambes |
WO2003061917A1 (fr) | 2002-01-18 | 2003-07-31 | Honda Giken Kogyo Kabushiki Kaisha | Dispositif de commande pour robot bipede |
US7295892B2 (en) * | 2002-12-31 | 2007-11-13 | Massachusetts Institute Of Technology | Speed-adaptive control scheme for legged running robots |
-
2003
- 2003-04-28 US US10/512,231 patent/US7664572B2/en not_active Expired - Fee Related
- 2003-04-28 EP EP10003332A patent/EP2208581B1/en not_active Expired - Fee Related
- 2003-04-28 WO PCT/JP2003/005446 patent/WO2003090978A1/ja active Application Filing
- 2003-04-28 KR KR1020047017292A patent/KR100956521B1/ko not_active IP Right Cessation
- 2003-04-28 EP EP03725697A patent/EP1502711B1/en not_active Expired - Fee Related
- 2003-04-28 JP JP2004501987A patent/JP4225968B2/ja not_active Expired - Fee Related
- 2003-04-28 DE DE60336127T patent/DE60336127D1/de not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017522195A (ja) * | 2014-07-23 | 2017-08-10 | グーグル インコーポレイテッド | 予測調節可能な油圧レール |
Also Published As
Publication number | Publication date |
---|---|
DE60336127D1 (de) | 2011-04-07 |
KR20050000411A (ko) | 2005-01-03 |
KR100956521B1 (ko) | 2010-05-06 |
EP1502711B1 (en) | 2011-02-23 |
WO2003090978A1 (fr) | 2003-11-06 |
EP2208581A1 (en) | 2010-07-21 |
US20060106495A1 (en) | 2006-05-18 |
JP4225968B2 (ja) | 2009-02-18 |
US7664572B2 (en) | 2010-02-16 |
EP1502711A1 (en) | 2005-02-02 |
EP1502711A4 (en) | 2008-10-22 |
EP2208581B1 (en) | 2011-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4225968B2 (ja) | 脚式移動ロボットの制御装置 | |
JP4181113B2 (ja) | 脚式移動ロボットの自己姿勢推定装置 | |
US7734377B2 (en) | Gait generator of legged mobile robot | |
US9120512B2 (en) | Control device and gait generating device for bipedal mobile robot | |
JP5483997B2 (ja) | 脚式移動ロボットの制御装置 | |
US7848849B2 (en) | Controller of leg type moving robot | |
JP5221688B2 (ja) | 脚式移動ロボットの歩容生成装置 | |
JP4641252B2 (ja) | 脚式移動ロボットの歩容生成装置 | |
JP4225969B2 (ja) | 脚式移動ロボットの制御装置および足跡決定装置 | |
JP4800037B2 (ja) | 移動ロボットの歩容生成装置 | |
JP4912891B2 (ja) | 脚式移動ロボットおよびその制御プログラム | |
US20080208391A1 (en) | Gait Pattern Generating Device and Controller of Legged Mobile Robot | |
US7319302B2 (en) | Gate generating system for mobile robot | |
WO2005082582A1 (ja) | 移動ロボットの歩容生成装置 | |
JP5123527B2 (ja) | 脚式移動ロボットおよびその制御プログラム | |
JP3726097B2 (ja) | 脚式移動ロボットの姿勢制御装置 | |
JP5232120B2 (ja) | 移動体の制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080318 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080519 |
|
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: 20081118 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20081125 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111205 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4225968 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111205 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121205 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131205 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |