JP5163227B2 - 移動ロボットの移動制御方法および移動ロボット - Google Patents

移動ロボットの移動制御方法および移動ロボット Download PDF

Info

Publication number
JP5163227B2
JP5163227B2 JP2008086754A JP2008086754A JP5163227B2 JP 5163227 B2 JP5163227 B2 JP 5163227B2 JP 2008086754 A JP2008086754 A JP 2008086754A JP 2008086754 A JP2008086754 A JP 2008086754A JP 5163227 B2 JP5163227 B2 JP 5163227B2
Authority
JP
Japan
Prior art keywords
trajectory
free leg
leg
mobile robot
deviation
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.)
Expired - Fee Related
Application number
JP2008086754A
Other languages
English (en)
Other versions
JP2009233841A (ja
Inventor
敬介 菅
大作 本田
祐司 津坂
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2008086754A priority Critical patent/JP5163227B2/ja
Publication of JP2009233841A publication Critical patent/JP2009233841A/ja
Application granted granted Critical
Publication of JP5163227B2 publication Critical patent/JP5163227B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Toys (AREA)
  • Manipulator (AREA)

Description

本発明は、移動ロボットの移動制御方法および移動ロボットに関する。具体的には、自律的に二脚歩行または走行する移動ロボットの移動制御方法および移動ロボットに関する。
自律的に二脚で歩行する人型の脚式ロボット(二足歩行型ロボット)の開発が進められている。このような脚式ロボットは、目標ZMPを姿勢の安定をはかる位置に設定しながら歩行軌道の生成を行い、この生成された軌道に基づいた歩行を行うべく各関節の動作制御を実行する。脚式ロボットはクローラ式の移動体とは異なり、二本の脚がそれぞれ着床および離床動作を繰り返すことにより移動が実現される。すなわち、二本の脚を支持脚と遊脚とに交互に交替し、移動方向に遊脚を振り出して着床させていくことでロボットの移動が実現される。
当然のことながら、歩行動作を計画するにあたっては遊脚の足先が床面に衝突しないように遊脚軌道を作成する。
しかし、ロボットが実際に歩行する床面は厳密に平坦面ではなく、傾斜を含む場合も設計値通りではない。そのため、歩行軌道の作成過程で予期していない凹凸や傾斜に遭遇する場合が常にある。予期しない凹凸や傾斜が存在する場合、支持脚の足平が想定角度よりも傾斜してしまうため、ロボットの姿勢全体も傾斜してしまう。すると、遊脚の軌道や着地位置も計画値から異なってきてしまい、当初の想定とは異なる位置に床面が存在する場合には遊脚を床面に衝突させてしまう危険がある。
そこで、特許文献1(特開平5−305580号公報)では、上記問題の対策として次の構成が開示されている。すなわち、足平の絶対座標における傾斜角度を求め、それから重心の実際位置を推定し、実際の重心位置が目標重心位置に一致するように関節角を制御する構成が開示されている(図17参照)。これにより予期しない傾斜などで姿勢が傾いた場合でも安定な所期の姿勢に回復させて、常に安定して歩行することができる脚式移動ロボットを実現できる。
特開平5−305580号公報
しかしながら、前記特許文献1では、ロボット全体の姿勢を回復させることを目的とし、支持脚のまわりにロボット全体を回転させて重心位置を修正するものであるが、ロボット全体の姿勢の回復を図ると応答が遅いという問題がある。その結果、遊脚の着地時までに修正が間に合わず、最悪の場合、遊脚が床面に衝突してしまうことが避けられない。
重心を目標軌道に戻す場合には支持脚の足首を中心にして体全体を回転させることが考えられるが、足首を構成するアクチュエータだけでロボット全体を回動させるには十分なトルクが得られない。原理上、足裏のサイズ以上のモーメントアームが得られないため(ZMP制約)、アクチュエータの能力を上げても全体を回転させるために十分なトルクが得られない。加えて、着床時の衝撃を緩和するために足首のゲインを下げることが好ましいため、足首部分の関節によって大きなトルクを得ることが難しい。さらには、足裏を柔軟材で構成するような場合、足首部分の角度制御において高精度を求めることには限界もある。そのため、修正動作が遅れたり、修正量が足りなかったりする不都合が生じ、やはり、遊脚が床面に衝突することを避け得ない場合が生じる。そして、支持脚を中心にして姿勢全体を修正する構成では、走行のような空中相では両脚がともに離床しているので、そもそも全く効果を発揮し得えず、激しく脚を床面に衝突させてしまうことになる。姿勢を修正しきれなかった場合、遊脚が地面に衝突してしまい、激しく転倒してロボットが破損するという問題が生じる。
本発明の目的は、予定軌道からずれた場合に高速に修正動作を行って遊脚が床面と衝突することを確実に回避する移動ロボットの移動制御方法および移動ロボットを提供することにある。
本発明の移動ロボットの移動制御方法は、
遊脚と支持脚とを交互に交替する移動動作を自律的に実行する二脚式移動ロボットの移動動作を制御する移動ロボットの移動制御方法において、
移動動作の軌道を計算する軌道計算工程と、
遊脚を離床させてから移動方向に振り出して着床させる移動動作を前記軌道計算工程にて計算された軌道に基づいて実行させる移動動作実行工程と、を備え、
前記移動動作実行工程は、
体幹部および支持脚の少なくとも一方の予定軌道からの偏差を計測する偏差計測工程と、
前記偏差計測工程にて計測された前記偏差に応じて遊脚末端部の予定軌道を修正する修正軌道算出工程と、を有しており、
前記修正軌道算出工程は、支持脚の末端部を回転中心としかつ前記偏差とは逆向きに遊脚末端部を回転させる補正軌道を算出し、この補正軌道を遊脚末端部の予定軌道に加算することによって前記遊脚の予定軌道を修正する
ことを特徴とする。
このような構成において、軌道計算工程にて求められた軌道に従った移動動作が移動動作実行工程にて実行される。すると、移動ロボットの歩行あるいは走行といった移動動作が行われる。ここで、移動動作実行中に偏差計測工程により実際の姿勢(体幹部および/または支持脚)の傾斜が予定軌道に対して有する偏差(ずれ)を計測する。そして、計測された偏差に応じて遊脚の軌道を修正する。すなわち、体幹部あるいは支持脚の偏差とは逆向きで支持脚の末端部を中心とした回転軌跡(補正軌道)を遊脚の末端部の軌道に加算した修正軌道を算出する。すると、体幹部あるいは支持脚の傾斜に応じて遊脚の軌道が当初予定から修正される。
予期しない床面の傾斜があったり、着地緩衝のために支持脚のゲインを下げたりしている場合には、体幹部あるいは支持脚が当初の予定とは異なる傾斜を示すことになる。このような場合に遊脚を当初の軌道に従って振り出すと床面に遊脚をぶつけてしまったり、逆に、空中に着地しようとするなど、移動動作(歩行または走行)を円滑に進めるのに支障となる事故が生じることが起こる。
ここで、従来は、体幹部等の姿勢のずれを計測し、この体幹部のずれを予定軌道に引き戻すようにフィードバックをかけるようにしていた。
しかしながら、ロボットの姿勢全体を立て直すには非常に時間がかかり、応答が間に合わないことが多くなる。
特に、近年にように滑らかで早い移動動作が要求されるレベルになると、姿勢立て直しの修正は間に合わず、ほとんど機能しないという問題が生じる。
この点、本発明にあっては、軌道の修正を遊脚の末端部の軌道に入れる。
軌道修正の対象を遊脚末端部とすることにより、姿勢全体を修正するよりもはるかに早い応答で軌道を修正することができる。よって、移動動作中に遊脚を床面に衝突させるなどの事故を確実に防ぐことができる。さらに、両足が浮く空中相であっても質量の大きい体幹部の慣性を利用して遊脚末端部の軌道を修正することができるため、走行動作中であっても本発明は作用効果を奏する。そして、軌道修正は遊脚に入れるとしているので、本発明を実装するにあたっては遊脚期にあるかどうかだけを判断すればよく、動作フェーズのすべてを監視して判断する(両脚支持期、片脚支持期、空中相を区別する)必要はないため、既存の制御システムに組み込む場合でも簡便である。
ここで、体幹部および/または支持脚の予定軌道からの偏差を計測する構成としては次のものが例として挙げられる。
支持脚の末端関節(足首、つま先)のゲインを下げた状態で着地させることにより足平が床面に倣って接触している場合には、支持脚末端関節のサーボ偏差に基づいて体幹部および/または支持脚の偏差を計測してもよい。または、足裏に測距センサを設けて、足裏が床面から浮いている距離を計測して姿勢の傾斜を求めてもよい。この二つを組み合わせればなおよい。さらに、体幹部に慣性センサ(加速度センサ、ジャイロスコープ)を設けて、検出値を積分することにより体幹部の姿勢を計測してもよい。
本発明では、前記補正軌道の中心となる前記支持脚の末端部は、支持脚の足首関節、支持脚のつま先関節、支持脚の足裏中心付近、および、その時点での相対ZMPの位置、のうちのいずれかであることが好ましい。
本発明では、前記修正軌道算出工程は、前記補正軌道を遊脚の軌道に加算するにあたって前記補正軌道に遊脚の相に応じた重み係数を乗算することが好ましい。
また、本発明では、前記重み係数は、遊脚が離床する時点から滑らかに立ち上がって遊脚の振り出し動作中に最大になり、その後滑らかに減少して遊脚が着床する時点でゼロになるように設定されていることが好ましい。
このような構成において、遊脚の軌道修正は遊脚を振り出す際に最大になり、着地にはゼロとし、次に遊脚となる脚に修正対象を切り替えていく。
このように補正軌道をいれる重みを滑らかに変化させていくので、軌道修正の対象となる脚を交互に入れ替えても動作が滑らかに連続する。そして、本発明にあっては、遊脚を振り出す際の事故を回避することを目的としているので、軌道修正対象を遊脚から支持脚に滑らかに交替させるために重み係数が着床時にゼロになっても特に不利益はない。
本発明の移動ロボットは、
遊脚と支持脚とを交互に交替する移動動作を自律的に実行する二脚式移動ロボットの移動動作を制御する移動ロボットであって、
移動動作の軌道を計算する軌道計算部と、
遊脚を離床させてから移動方向に振り出して着床させる移動動作を前記軌道計算部にて計算された軌道に基づいて実行させる移動動作実行部と、を備え、
前記移動動作実行部は、
体幹部および支持脚の少なくとも一方の予定軌道からの偏差を計測する偏差計測部と、
前記偏差計測部にて計測された偏差量に応じて遊脚末端部の予定軌道を修正する修正軌道算出部と、を有しており、
前記修正軌道算出部は、支持脚の末端部を回転中心としかつ前記偏差とは逆向きに遊脚末端部を回転させる補正軌道を算出し、この補正軌道を遊脚末端部の予定軌道に加算することによって前記遊脚の予定軌道を修正する
ことを特徴とする。
このような構成によれば、前記発明と同様の作用効果を奏することができる。すなわち、軌道修正の対象を遊脚末端部とすることにより、姿勢全体を修正するよりもはるかに早い応答で軌道を修正することができる。よって、移動動作中に遊脚を床面に衝突させるなどの事故を確実に防ぐことができる。
本発明によれば、軌道修正の対象を遊脚末端部とすることにより、姿勢全体を修正するよりもはるかに早い応答で軌道を修正することができる。よって、移動動作中に遊脚を床面に衝突させるなどの事故を確実に防ぐことができる。
以下に、本発明を実施するための最良の形態について図を参照して説明する。
本発明の移動ロボットの移動制御方法に係る第1実施形態について説明する。
図1は、移動ロボット100の外観を示す図である。
移動ロボット100は、体幹部110に左脚リンク200と右脚リンク300とが股関節部130を介して揺動可能に設けられている。
脚リンク200、300にも膝関節部410、足首関節部420、つま先関節部430をはじめとする関節部が設けられている。
移動ロボット100の各関節はアクチュエータ(不図示)を備え、各アクチュエータは体幹部に内蔵された制御部120により駆動制御される。すなわち、制御部120は、後述する各工程をそれぞれ実行する機能部を格納し、本発明の移動制御方法を実現するものである。
移動ロボット100には、撮像カメラあるいはレーザー送受信手段によって構成されるセンサ手段(不図示)が設けられている。そして、センサ手段にて取得された外部情報に基づいて周囲の環境情報(環境地図)および自己位置情報が制御部120にて同時認識される。
環境地図情報および自己位置情報に基づいて、制御部120は自律的に移動動作を計画し、各アクチュエータに制御指令を与えて歩行動作(移動動作)を実現する。
次に、フローチャートを参照して、本実施形態に係る移動ロボット100の移動制御方法について説明する。
図2は、移動ロボット100の移動制御方法の全体構成を示すフローチャートである。
まず、本実施形態に係る移動ロボット100の移動制御方法は、初期設定工程(ST100)と、遊脚を離床させてから移動方向に振り出して着床させるまでの一歩分動作を実行させる歩行動作実行工程(移動動作実行工程)(ST200)と、歩行動作実行工程(ST200)における一歩分の動作の後、次の歩行動作実行工程(ST200)で遊脚の振り出しを行うまでの間に次の歩行動作実行工程(ST200)における動作の軌道を再計算する再計算工程(ST300)と、を備える。
以下、順に説明する。
図3は、初期設定工程(ST100)の手順を示すフローチャートである。
初期設定工程(ST100)では、まず、初期条件の読み込みを行う(ST110)。
これは、操作者によって予め入力された初期条件や初期設定を読み込む工程である。操作者が与える初期条件としては、走行あるいは歩行などの移動の動作態様、移動速度、相対ZMP軌道、終了条件(継続時間あるいは移動距離)、などが例として挙げられる。動作態様を走行とすると、両脚がともに空中に浮く空中相が存在することになる。動作態様を歩行とすると、遊脚と支持脚とが交互に右脚と左脚とで入れ替わり、その間に空中相を挟むことなく接地相の連続となる。本実施形態では歩行を例にして説明する。
移動速度は、移動ロボット100の重心の水平方向速度として与えることができる。相対ZMP軌道は、支持脚の足平の基準点に対する目標ZMPの位置の経時的データである。例えば、相対ZMP軌道を支持脚の足平の中心に固定するように設定することができる。あるいは、支持脚の足平の内部において後方から前方へ移動するような軌道を設定してもよい。
次に、初期軌道の計算が実行され、動作開始から数歩目(例えば二歩目)の着地までの重心の相対軌道が算出される(ST120)。重心の相対軌道は、初期条件として与えた重心の水平方向速度のもとで実際のZMPが目標ZMPの軌道に一致するように算出される。
次に、ST120にて算出された重心の相対軌道を実現する各関節の角度を算出する(ST130)。
これは、重心の速度(q′)と各関節の速度(θ′)とを関係づけるヤコビ方程式を解くことによって求められる。このようにして実現すべき動作(関節角度)が求められたところで初期設定工程(ST100)を終了し、次の歩行動作実行工程(ST200)に移行する。
図4は、歩行動作実行工程(移動動作実行工程)(ST200)の手順を示すフローチャートである。
歩行動作実行工程(ST200)では、まず、実現すべき動作(関節角度)を読み込んで歩行動作を開始し(ST210)、遊脚に設定されている脚を離床させて持ち上げる(図5参照)。
なお、片脚による立脚状態になった段階では脚の関節を構成するアクチュエータのゲインを大きくして設定条件内の最大値にする。ここでいう脚とは遊脚および立脚の両方であり、両脚の関節のゲインを最大化する。この状態で遊脚を移動方向に振り出して着地位置に向けて駆動させる(ST220)。
このようにST220において遊脚の振り出し動作に入ったところで(図6参照)、ST120およびST130にて計算された動作軌道と実際の動作軌道とが一致しているかの監視が行われる(偏差計測工程ST221)。
ここで特に監視対象とするのは、支持脚の関節角度および体幹部110の傾斜である。そして、予定軌道と実際の軌道との偏差(ずれ)が予め設定された許容範囲内であるかを判断する(ST222)。偏差が許容範囲内であれば(ST222:YES)、そのまま遊脚の振り出し動作を継続して歩行動作を続ける。
続いて、遊脚が着地位置に着床する直前において遊脚の関節を構成するアクチュエータのゲインを下げる(ST230)。
ゲインを下げる関節としては、遊脚の足首およびつま先部である末端部分の関節420、430だけでもよい。あるいは、末端部分の関節ではなく、膝関節のゲインを下げてもよい。または、末端部分および膝関節を含めた遊脚の関節すべてのゲインを下げてもよい。下げるゲインの程度は姿勢制御が保たれる範囲内において適宜設定可能である。例えば、最大値の20%から50%程度にすることが例として挙げられる。
このように遊脚の関節のゲインを下げた状態で遊脚を着床させる(ST240)(図7参照)。すると、着床時の衝撃が緩和され、滑らかな歩行動作になるとともに脚および体幹部110の損壊が防止される。そして、遊脚として着床した脚の足平内にZMPを移し、遊脚と支持脚とを交替させる(ST250)。これで歩行動作の一歩が終了し、次の再計算工程(ST300)が開始する。
図8は再計算工程(ST300)の手順を示すフローチャートである。
再計算工程(ST300)にあっては、まず、現状データの取得を行う(ST310)。すなわち、各関節の実際の角度データを取得する。
本実施形態では、前述の歩行動作実行工程(ST200)において、遊脚を着床させる直前に遊脚の関節のゲインを下げる(ST230)。
これにより着床時の衝撃は緩和されるが、同時にロボット自体の重量によって遊脚が沈みこみ過ぎたり、外乱に対する頑健さが低下してしまう。
そのため目標とする関節角度に対して実際の関節角度がずれてしまうことが生じやすい。例えば、前方から後方に向けての外乱が作用した場合、図9に示すように移動ロボット100が後ろ向きに傾斜してしまう。そこで、実際の関節角度を取得したうえで(ST310)、この現状データと目標関節角度とを対比して関節角度のずれを算出する(ST320)。
このように関節角度のずれを求めたところで(ST320)、この関節角度のずれに応じて目標値の変更を行う(ST330)。ST320において関節角度の目標値からの偏差(ずれ)を求めているところ、角度偏差を減少させるように関節角度の目標値を変更する(ST330)。
ここで、関節角度の目標値を変更するにあたっては、角度偏差がある制限値を超えた場合に目標変更を行うこととして目標の変更を行わない偏差の制限値を設定しておく。
例えば、この偏差の制限値を2°に設定したとし、ある関節において角度の目標値が50°であったところ実際は48°になっており角度偏差が2°ある場合、角度偏差を減少させる目標値の設定変更は行わず、目標値は50°のままで維持する。
一方、ある関節において関節角度の目標値が50°であったところ実際は46°になっており角度偏差が4°ある場合、角度偏差を減少させるように目標値の設定変更を行い、この例では目標値を46°にする。
また、一回で変更する量の上限を設定しておく。
例えば、変更する上限量を5°に設定したとし、ある関節において角度の目標値が50°であったところ実際は40°になっており角度偏差が10°ある場合、角度偏差を減少させるように目標値の設定変更を行い、この例では目標値を45°にする。
そして、ST340において、支持脚のゲインを戻す。
これは、ST230において着床前に脚関節のゲインを下げていたところ、下げていたゲインを戻して新たに設定した関節角度の目標値に向けて駆動させる。このとき、現状と目標値との差が小さい関節のゲインについては早く戻し、現状と目標との差が大きい関節のゲインはゆっくり戻すようにする。例えば、先のST330にて関節角度の目標値を設定変更したところ、この変更量の大きさに応じてゲインを戻す速さを変化させる。
次に、ST350において、重心ずれを算出する。
すなわち、ST120において算出した重心の目標軌道に対して実際の重心位置がもつ偏差を求める。
関節角度としてはST330にて変更した関節角度の設定目標に基づいて移動ロボット100の状態を把握し、移動ロボット100の重心位置を求めるとともに目標軌道からのずれ(偏差)を算出する。重心のずれは、脚末端の関節(例えばつま先の関節)を中心にした回転角Δθとして求める(図10参照)。そして、ST360において、実際の重心位置に基づいて重心位置を更新する。
ここで、重心位置を更新するにあたっては、目標重心位置と実際の重心位置とが一致するように目標重心位置を更新してもよく、あるいは重心位置ずれが減少するように目標重心位置を更新してもよい。たとえば、重心位置ずれが50%減少するように目標重心位置を設定更新してもよい。ある程度重心位置ずれを解消するようにすれば累積偏差が増大することもなく、また、目標重心位置を実際の位置に合わせ過ぎると外乱に影響されすぎて却って不安定になる場合もありうる。したがって、目標重心位置を実際の位置にどの程度まで合わせるかは適宜設定しておくことが望ましい。
次に、ST370において、軌道計算を実行する。
すなわち、ST360にて新たに更新された重心位置から出発して、次の一歩の歩行を実現するための重心軌道および脚の軌道を算出する。軌道の再計算にあたって加味する点を含めて図11を参照して説明する。
図11は、軌道計算工程(ST370)の手順を示すフローチャートである。
軌道の再計算にあたっては、まず、重心ずれと更新した重心位置の読み込みを行う(ST371)。そして、次に、軌道計算する際の相対ZMPを調整する(ST372)。
相対ZMPは初期設定で入力しているところ、移動ロボット100の重心が予定の軌道からずれる場合には安定化を図るために相対ZMPの位置を調整する。例えば、相対ZMPを足平の中心に固定したときに重心が後ろにずれる場合には、相対ZMPを前にずらす(図12中のPからPへ)。
このように重心ずれの方向とは逆方向に相対ZMPをずらすことによって安定化を実現するように相対ZMPを調整する。相対ZMPの位置変更量としては、急な変化は避け、たとえば、重心ずれの5%から10%を一歩の間に改善する程度の変更を加える。
次に、上体姿勢角の調整を行う(ST373)。
関節角度のずれに応じて関節角度の目標値を変更したところ(ST330)、このような変更により上体姿勢が目標値からずれることになってしまう。
脚のゲイン下げや外乱の影響で例えば重心のずれが後ろ方向に発生した場合、移動ロボット100の上体姿勢は直立よりも後ろに反った姿勢になってしまう。そこで、前回り方向の回転運動量を軌道計算に加味することで上体姿勢を目標値に近づける(図13参照)。すなわち、重心位置ずれに応じて、重心の位置ずれ方向とは逆向きに上体姿勢を回転させる回転運動量を軌道計算に加える。加味する回転運動量は、一回でずれを全部直すのではなく、ずれ分の20%〜40%を一歩の間に改善する程度を加える。移動ロボット100の目標ZMPが適切に制御させていれば、上体姿勢のずれが移動ロボット100の歩行安定性に与える影響は小さいが、関節の可動範囲の問題や見た目の印象の観点から上体姿勢の適正化を図ることが好ましい。
次に、脚末端角度の調整を行う(ST374)。これは、ST373にて上体姿勢の目標値からのずれ分を軌道計算に加えることとしたが、これとは別に上体姿勢が目標値からずれたずれ分を末端関節の目標角度に加味する。上体姿勢が目標値からずれた分だけ移動ロボット100が床面に対して傾斜していると見積もれるため、足平も床面に対して傾斜してしまっていることになる。そこで、上体姿勢の傾き分を足平の角度に加味することで足平を床面に倣わせることができる(図13参照)。すなわち、上体姿勢の傾き分は重心位置ずれに応じて求められるので、重心位置ずれに応じた量の角度分を脚末端関節の動きの軌道に加算することで足平の床面倣いを適切にすることができる。脚末端関節としては、足首および/またはつま先の関節420、430とすることで動きの反応が速くなり好ましい。
以上のようにST372からST374の情報を加味して、ST375において軌道の再計算を実行する。
これにより、新たな重心位置から次の一歩の着地までの軌道が計算される。
軌道の再計算が終了したところで(ST375)、次にST380において、算出された軌道を実現する関節角度を算出する。そして、目標関節角度が算出されたところで再計算工程(ST300)が終了する。終了条件(ST400)が満たされていない場合には(ST400:NO)、歩行動作実行工程(ST200)に戻って歩行動作が実行される。
これにより、新たに計算された軌道に基づいて歩行動作が実行され、遊脚の振り出し(ST220)、着床前のゲイン下げ(ST230)および着床(ST240)によって移動ロボット100の歩行が進行される。
ここで、歩行動作実行時の偏差計測において(ST221)、計測された偏差が予め設定された許容範囲を超えていた場合(ST222:NO)、ST223の補正軌道算出工程に移行する。
補正軌道算出工程(ST223)では、体幹部110の傾斜と反対方向の回転軌道を遊脚の末端に与える補正軌道を算出する(図14参照)。このときの補正軌道は、支持脚の足首関節を中心として体幹部110の傾斜と反対方向の回転運動を与える軌道とする。そして、前記補正軌道算出工程(ST223)にて算出された遊脚末端の補正軌道を遊脚の軌道に加算する(補正軌道加算工程ST224)。
補正軌道を加算するにあたっては、重み係数を乗算したうえで遊脚末端の軌道に加算する。
ここで、前記重み係数は予めその変化値が設定されているものである。
図15は、補正軌道の加算にあたって補正軌道に乗算する重み係数の変化を示す一例である。
重み係数は、図15に示されるように、遊脚が離床する時点から滑らかに立ち上がって遊脚の振り出し動作中に最大になり、その後滑らかに減少して遊脚が着床する時点でゼロになるように設定されている。
このような重み係数を乗算した補正軌道が遊脚の予定軌道に加算されることにより、遊脚末端部の修正軌道が算出される。
このようにして修正された軌道(特に遊脚の軌道)に従って遊脚の振り出し動作(ST220)を継続する。すると、図14に示されるように振り出し動作中に予定軌道が修正され、遊脚末端部は支持脚の足首を中心とする回動が加算された軌道を動く。修正された新たな軌道と実際の動きとの偏差を確認しつつ(ST221、ST222)、遊脚の振り出しを行っていく(ST220)。その後、前述のように、着床前に遊脚の関節のゲインを下げ(ST230)、着床し(ST240)、遊脚と支持脚との交替を行って(ST250)、一回の歩行動作実行工程を終える。一回の歩行動作実行工程(ST200)を終えた後は、終了条件に達するまで歩行動作実行工程(ST200)と再計算工程(ST300)とを繰り返し、歩行を継続する。
ここに、ST223(補正軌道算出工程)、ST224(補正軌道加算工程)により、修正軌道算出工程が構成されている。
終了条件を満たす場合には(ST400:YES)、終了処理により移動ロボット100の移動制御を終了する。
以上、このような制御構成を備える第1実施形態によれば、次の効果を奏することができる。
(1)歩行動作実行工程(ST200)中において、偏差計測工程ST221により体幹部110および/または支持脚の偏差を計測し、計測された偏差に応じて遊脚末端部の軌道を修正する。このように、軌道修正の対象を遊脚末端部とすることにより、姿勢全体を修正するよりもはるかに早い応答で軌道を修正することができる。よって、移動動作中に遊脚を床面に衝突させるなどの事故を確実に防ぐことができる。
(2)軌道の修正を姿勢全体ではなく遊脚末端部としているので、例えば両足が浮く空中相であっても遊脚末端部の軌道を修正して発明の作用効果を奏することができる(図16参照)。すなわち、両脚が空中に浮いていても質量の大きい体幹部110の慣性を利用して遊脚末端部の軌道を修正することができる。動作が速くて転倒時の損傷が大きい走行中であっても適用可能であるため本発明の効果は大きい。
(3)補正軌道を遊脚の軌道に加算するにあたって前記補正軌道に遊脚の相に応じた重み係数を設定し、この重み係数は、遊脚が離床する時点から滑らかに立ち上がって遊脚の振り出し動作中に最大になり、その後滑らかに減少して遊脚が着床する時点でゼロになるように設定している。このように重み係数を設定することにより、遊脚の軌道修正は遊脚を振り出す際に最大になり、着地にはゼロとし、次に遊脚となる脚に修正対象が滑らかに切り替えられる。その結果、本発明を適用した場合でも歩行動作が滑らかに連続する。
(4)歩行動作実行工程と再計算工程とを交互に繰り返し、次の一歩動作は、再計算された軌道に基づいて実行される。このように一歩動作の後に次の動作を無理なく円滑に進行可能な軌道計算を行うので、姿勢が傾いたりして動作が目標からずれてしまうことがあっても、常に安定した歩行動作を継続させることができる。
(5)関節角度ずれ算出工程にて目標からの角度ずれを算出し、目標関節角度変更工程にて関節角度のずれをある程度受け入れて目標値を変更するので、着地位置のずれを補正して次の動作に円滑に移行させることができる。
(6)遊脚を着床させる前に遊脚の関節のゲインを下げる遊脚関節ゲイン下げ工程を備えることにより、着床時の衝撃を緩和することができる。遊脚のゲインを下げて着床させてしまうと自分の重みによって沈み込み過ぎたり、外乱の影響を受けやすくなってしまうという問題が生じやすくなるが、本発明では再計算工程により再計算された軌道に基づいて次の一歩動作を行い、かつ、遊脚軌道を修正するので、自重による沈みや外乱の影響があっても円滑に移動動作を継続することができる。
(7)重心位置ずれと逆方向に相対ZMPを設定更新する相対ZMP更新工程を備えるので、移動動作時における目標軌道からのずれを少なくすることができる。これにより、移動動作のより一層の安定化を図ることができる。
(8)重心の位置ずれ方向とは逆向きに上体姿勢を回転させる回転運動量を軌道計算に加える上体姿勢調整工程を備えることにより、適正な姿勢で移動動作を継続することができる。
(9)重心の位置ずれ方向とは逆向きに足平を回動させる動きを軌道計算に加える足平角度調整工程を備えるので、足平を床面に倣わせることができ、ロボット100をより一層安定化させることができる。
なお、本発明は上記実施形態に限定されず、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれる。
ST221における偏差計測で体幹部および/または支持脚の予定軌道からの偏差を計測する構成については特に説明しなかったが、例えば次の構成を採用することができる。
支持脚の末端関節(足首、つま先)のゲインを下げた状態で着地させることにより足平が床面に倣って接触している場合には、支持脚末端関節のサーボ偏差に基づいて体幹部および/または支持脚の偏差を計測してもよい。または、足裏に測距センサを設けて、足裏が床面から浮いている距離を計測して姿勢の傾斜を求めてもよい。この二つを組み合わせればなおよい。
さらに、体幹部に慣性センサ(加速度センサ、ジャイロスコープ)を設けて、検出値を積分することにより体幹部の姿勢を計測してもよい。
上記実施形態では、ST222において偏差が許容範囲内であるか否かを判定して、許容範囲を超えた場合に修正軌道算出工程(ST223、ST224)を行うとしたが、このような判断工程を入れずに、常に偏差分を修正するとしてもよい。遊脚末端部の応答は早いので、発振等の問題が生じることなく良好な制御性能を維持できる。あるいは、偏差量を修正量に反映させる手前でローパスフィルタまたは周波数整形したフィードバックコントローラを入れてもよい。
上記実施形態においては説明の都合上、歩行動作実行工程ST200と再計算工程ST300との手順をシリアルに一つずつ説明したが、歩行動作を円滑に進行させるため、歩行動作実行工程ST200と再計算工程ST300とはパラレルに進行するものである。すなわち、現在の歩行動作実行工程ST200を実行中に次の歩行動作実行工程における軌道を再計算工程ST300にて計算する。
移動ロボットの外観を示す図。 移動ロボットの移動制御方法の全体構成を示すフローチャート。 初期設定工程の手順を示すフローチャート。 歩行動作実行工程の手順を示すフローチャート。 歩行動作において遊脚を離床させた様子を示す図。 歩行動作において遊脚を振り出している様子を示す図。 歩行動作において遊脚を着床させた様子を示す図。 再計算工程の手順を示すフローチャートである。 着床時に外乱の影響で後傾した様子を示す図。 重心ずれの算出を説明するための図。 軌道計算工程の手順を示すフローチャート。 相対ZMPをずらして歩行姿勢を安定させる様子を説明するための図。 上体姿勢および足平角度を調整する様子を説明するための図。 遊脚の軌道を修正する補正軌道を説明するための図。 重み係数の変化を示す一例を表す図。 空中相において遊脚末端の軌道を修正する様子を示す図。 背景技術において重心位置を修正する様子を説明するための図。
符号の説明
100…移動ロボット、110…体幹部、120…制御部、130…股関節部、200…左脚リンク、300…右脚リンク、410…膝関節部、420…足首関節部、430…つま先関節部。

Claims (5)

  1. 遊脚と支持脚とを交互に交替する移動動作を自律的に実行する二脚式移動ロボットの移動動作を制御する移動ロボットの移動制御方法において、
    移動動作の軌道を計算する軌道計算工程と、
    遊脚を離床させてから移動方向に振り出して着床させる移動動作を前記軌道計算工程にて計算された軌道に基づいて実行させる移動動作実行工程と、を備え、
    前記移動動作実行工程は、
    体幹部および支持脚の少なくとも一方の予定軌道からの偏差を計測する偏差計測工程と、
    前記偏差計測工程にて計測された前記偏差に応じて遊脚末端部の予定軌道を修正する修正軌道算出工程と、を有しており、
    前記修正軌道算出工程は、支持脚の末端部を回転中心としかつ前記偏差とは逆向きに遊脚末端部を回転させる補正軌道を算出し、この補正軌道を遊脚末端部の予定軌道に加算することによって前記遊脚の予定軌道を修正する
    ことを特徴とする移動ロボットの移動制御方法。
  2. 請求項1に記載の移動ロボットの移動制御方法において、
    前記補正軌道の中心となる前記支持脚の末端部は、支持脚の足首関節、支持脚のつま先関節、支持脚の足裏中心付近、および、その時点での相対ZMPの位置、のうちのいずれかである
    ことを特徴とする移動ロボットの移動制御方法。
  3. 請求項1または請求項2に記載の移動ロボットの移動制御方法において、
    前記修正軌道算出工程は、前記補正軌道を遊脚の軌道に加算するにあたって前記補正軌道に遊脚の相に応じた重み係数を乗算する
    ことを特徴とする移動ロボットの移動制御方法。
  4. 請求項3に記載の移動ロボットの移動制御方法において、
    前記重み係数は、
    遊脚が離床する時点から滑らかに立ち上がって遊脚の振り出し動作中に最大になり、その後滑らかに減少して遊脚が着床する時点でゼロになるように設定されている
    ことを特徴とする移動ロボットの移動制御方法。
  5. 遊脚と支持脚とを交互に交替する移動動作を自律的に実行する二脚式移動ロボットの移動動作を制御する移動ロボットであって、
    移動動作の軌道を計算する軌道計算部と、
    遊脚を離床させてから移動方向に振り出して着床させる移動動作を前記軌道計算部にて計算された軌道に基づいて実行させる移動動作実行部と、を備え、
    前記移動動作実行部は、
    体幹部および支持脚の少なくとも一方の予定軌道からの偏差を計測する偏差計測部と、
    前記偏差計測部にて計測された偏差量に応じて遊脚末端部の予定軌道を修正する修正軌道算出部と、を有しており、
    前記修正軌道算出部は、支持脚の末端部を回転中心としかつ前記偏差とは逆向きに遊脚末端部を回転させる補正軌道を算出し、この補正軌道を遊脚末端部の予定軌道に加算することによって前記遊脚の予定軌道を修正する
    ことを特徴とする移動ロボット。
JP2008086754A 2008-03-28 2008-03-28 移動ロボットの移動制御方法および移動ロボット Expired - Fee Related JP5163227B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008086754A JP5163227B2 (ja) 2008-03-28 2008-03-28 移動ロボットの移動制御方法および移動ロボット

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008086754A JP5163227B2 (ja) 2008-03-28 2008-03-28 移動ロボットの移動制御方法および移動ロボット

Publications (2)

Publication Number Publication Date
JP2009233841A JP2009233841A (ja) 2009-10-15
JP5163227B2 true JP5163227B2 (ja) 2013-03-13

Family

ID=41248447

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008086754A Expired - Fee Related JP5163227B2 (ja) 2008-03-28 2008-03-28 移動ロボットの移動制御方法および移動ロボット

Country Status (1)

Country Link
JP (1) JP5163227B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5440152B2 (ja) * 2009-12-22 2014-03-12 トヨタ自動車株式会社 脚式ロボットとそのための歩容データ生成方法
US9367795B2 (en) 2010-02-25 2016-06-14 Honda Motor Co., Ltd. Momentum-based balance controller for humanoid robots on non-level and non-stationary ground
AT511217B1 (de) * 2011-05-18 2012-10-15 4A Engineering Gmbh Dummy-objekt, insbesondere zur funktionsüberprüfung von fahrerassistenzsystemen in kraftfahrzeugen
WO2024166651A1 (ja) * 2023-02-08 2024-08-15 ソニーグループ株式会社 自律移動体及び移動制御方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4483254B2 (ja) * 2002-10-01 2010-06-16 ソニー株式会社 ロボット装置及びロボット装置の制御方法
JP4587738B2 (ja) * 2003-08-25 2010-11-24 ソニー株式会社 ロボット装置及びロボットの姿勢制御方法
JP4513320B2 (ja) * 2003-12-17 2010-07-28 ソニー株式会社 ロボット装置、並びにロボット装置の運動制御方法

Also Published As

Publication number Publication date
JP2009233841A (ja) 2009-10-15

Similar Documents

Publication Publication Date Title
JP3760186B2 (ja) 二脚歩行式移動装置及びその歩行制御装置並びに歩行制御方法
KR101029228B1 (ko) 로봇과 그 제어 방법
JP4466715B2 (ja) 脚式ロボット、及びその制御方法
JP3629133B2 (ja) 脚式移動ロボットの制御装置
CN107351936B (zh) 步行控制方法、记录媒体以及双足步行机器人
JP5803039B2 (ja) 移動ロボットの歩行動作の制御方法およびその方法を実装したロボット
KR101985790B1 (ko) 보행 로봇 및 그 제어 방법
US8793019B2 (en) Control device for legged mobile robot
KR101234726B1 (ko) 다리식 이동 로봇 및 그 제어 프로그램
KR101272193B1 (ko) 다리식 이동 로봇 및 그 제어 프로그램
JP4840239B2 (ja) 脚式移動ロボットの制御方法及び脚式移動ロボット
EP1440872B1 (en) Ambulatory robot and method for controlling the same
JPH05337849A (ja) 脚式移動ロボットの姿勢安定化制御装置
JP6068302B2 (ja) 脚式移動ロボットの制御装置
JP5163227B2 (ja) 移動ロボットの移動制御方法および移動ロボット
Hopkins et al. Design of a compliant bipedal walking controller for the DARPA Robotics Challenge
JP2007007803A (ja) ロボットとその制御方法
JP5040693B2 (ja) 脚式ロボット、及びその制御方法
WO2016159346A1 (ja) 脚型機構体、歩行ロボット、姿勢制御方法及びプログラム
JP5286878B2 (ja) 移動ロボットの移動制御方法および移動ロボット
JP2009255231A (ja) 歩行制御装置および歩行制御方法
JP4696728B2 (ja) 脚式ロボットとその制御方法
JP4237130B2 (ja) 脚式移動ロボットの制御装置
JP2009125838A (ja) 二足歩行ロボットおよびその歩行制御方法
JP6311153B2 (ja) 2足走行ロボットの移動制御システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101118

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20101214

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20101214

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110720

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120214

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120412

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: 20121120

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121203

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

Free format text: PAYMENT UNTIL: 20151228

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20151228

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees