JP2016172309A - 多点接触ロボット、多点接触ロボットの制御方法及びプログラム - Google Patents

多点接触ロボット、多点接触ロボットの制御方法及びプログラム Download PDF

Info

Publication number
JP2016172309A
JP2016172309A JP2015054608A JP2015054608A JP2016172309A JP 2016172309 A JP2016172309 A JP 2016172309A JP 2015054608 A JP2015054608 A JP 2015054608A JP 2015054608 A JP2015054608 A JP 2015054608A JP 2016172309 A JP2016172309 A JP 2016172309A
Authority
JP
Japan
Prior art keywords
contact
gravity
error
trajectory
center
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015054608A
Other languages
English (en)
Other versions
JP6447278B2 (ja
Inventor
将弘 土井
Masahiro Doi
将弘 土井
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 JP2015054608A priority Critical patent/JP6447278B2/ja
Publication of JP2016172309A publication Critical patent/JP2016172309A/ja
Application granted granted Critical
Publication of JP6447278B2 publication Critical patent/JP6447278B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

【課題】高い安定化性能を有する多点接触ロボット、多点接触ロボットの制御方法及びプログラムを提供する。【解決手段】複数の接触点を有する多点接触ロボット100は、目標重心軌道及び接触点各々の反力目標値を生成する軌道生成部212、現在の重心を推定し、目標重心軌道と現在の重心との誤差を算出する状態推定部213、誤差が目標重心軌道に収束するよう反力目標値を修正する状態安定化部214を有する。軌道生成部212は、第1の周期で、誤差を目標重心軌道に収束させるためのフィードバックゲインを算出する。状態安定化部214は、第1の周期よりも短い第2の周期で、誤差とフィードバックゲインとに基づき反力目標値を修正する。【選択図】図1

Description

本発明は、多点接触ロボットの制御に関する。より具体的には、多点接触ロボットを安定かつ高精度に移動させるための制御技術に関する。
自律的に移動する機能を備えたロボットが開発されており、例えば、多点接触制御により動作するロボットがある。多点接触でロボットを安定に動作させるためには、大きく(A)長期的に安定な軌道を生成する技術、(B)ロボットを生成された軌道に漸近させるため、各接触点における望ましい接触力を計算する安定化技術、及び(C)計算された接触力目標値を達成するように各関節を駆動する力制御技術、の3種類の技術を考慮する必要がある。これら3つの技術を(A)、(B)及び(C)の順に用いることにより、安定な多点接触の動作が実現できる。すなわち、まず(A)比較的長期、つまりある程度の未来にわたる安定な軌道、つまり重心の発散や運動の破綻がない軌道を生成し、次に(B)ロボットの現在の状態量(重心位置、速度及び胴体姿勢等)を上記軌道に漸近させるべく、ロボットの各接触点の力指令値を決定及び修正し、続いて(C)各接触点の反力が力指令値に追従するように力制御を行う。
ここで、(B)の安定化技術に注目すると、多点接触制御に適用可能な先行技術としては、特許文献1及び特許文献2が挙げられる。特許文献1は、従来の2足歩行向け安定化技術である複合コンプライアンス制御を、床面上を含む3点以上の接地点を持つ多脚ロボットにも使えるように拡張したものである。特許文献2は、床面以外の接触点を持つ多点接触制御に対応できる安定化技術を開示している。
特許第4126064号 特許第5398592号
特許文献1の複合コンプライアンス制御はZMPを用いた安定化技術である。ZMP(zero moment point)とは、所定のZMP平面(通常は床面)上のモーメントの釣り合い位置(全体のモーメントが釣り合って丁度0になる位置)のことである。ZMPを用いた安定化技術は、歩行のように環境との接触点がほぼ床面に限定されているような運動には適するが、任意の複数の接触点で環境と接触するような運動には適さない。すなわち、特許文献1は多点接触に対応してはいるが、基本的には床面上に接触点を持つロボット(つまり、多脚ロボット)を対象にした技術である。
一方、特許文献2の安定化技術は、ZMPを用いておらず、床面以外の接触点を持つロボットの多点接触制御に対応できる。しかしながら、特許文献2が開示するアルゴリズムは、各接触点が属する面を、予め設定された仮想面に投影することを前提として制御則が組み立てられている。すなわち、実際に手や足等の接触点が接触している、壁や床等の接触面上における力の分配を直接計算することなく、仮想面群というギミックを用いて制御則を組み立てている。
特許文献2のアルゴリズムは、面同士が直交もしくは平行に対向した面群(仮想面群)を前提とするものである。そして、例えば接触点の摩擦力が不足して所望の並進力が得られないような場合に、平行に対向する各仮想面への押し付け力(垂直抗力)を増加させることで摩擦力を増加させる、という補償方法を用いている。ここで、仮に仮想面が平行に対向しておらず任意の傾きを持っている場合には、互いの面に生ずる垂直抗力の向きが一致しないので、上述のように単純に垂直抗力を増加させるというようなロジックではこの問題を解決できない。すなわち、特許文献2の安定化技術は、制御ロジック全体が、面同士が直交もしくは平行に対向した面群を前提にする必要がある。そのために、実際の接触面ではなく仮想面を設定しているのである。
そのため、特許文献2の安定化技術は、任意の角度を持つ接触面群(例えば相対的に45度ずつ傾いた複数の面など)に対する適用性が著しく低いという問題がある。また、摩擦力と内力を活用することによって安定化可能な場合であっても、運動状態が不適切である旨の誤判定を起こすという問題も抱えている。
また、特許文献2の安定化技術では、重心や姿勢角のフィードバック制御が公知のPD制御で構成されている。PD制御では、各接触点の位置や姿勢の情報(例えばどのような向きに力を発生し易いか、どの方向ならどの程度の合力を安定に発生できるか等の情報)は全く考慮されない。
本発明はこうした課題に鑑みてなされたものであり、その目的は、高い安定化性能を有する多点接触ロボット、多点接触ロボットの制御方法及びプログラムを提供することにある。
本発明にかかる多点接触ロボットは、
複数の接触点を有する多点接触ロボットであって、
目標重心軌道及び前記接触点各々の反力目標値を生成する軌道生成部と、
現在の重心を推定し、前記目標重心軌道と前記現在の重心との誤差を算出する状態推定部と、
前記誤差が前記目標重心軌道に収束するよう前記反力目標値を修正する状態安定化部と、を有し、
前記軌道生成部は、第1の周期で、前記誤差を前記目標重心軌道に収束させるためのフィードバックゲインを算出し、
前記状態安定化部は、前記第1の周期よりも短い第2の周期で、前記誤差と前記フィードバックゲインとに基づき前記反力目標値を修正するものである。
本発明にかかる多点接触ロボットの制御方法は、
複数の接触点を有する多点接触ロボットの目標重心軌道及び前記接触点各々の反力目標値を生成する軌道生成ステップと、
現在の重心を推定し、前記目標重心軌道と前記現在の重心との誤差を算出する誤差計算ステップと、
第1の周期で、前記誤差を前記目標重心軌道に収束させるためのフィードバックゲインを算出する最適ゲイン計算ステップと、
前記第1の周期よりも短い第2の周期で、前記誤差と前記フィードバックゲインとに基づき前記反力目標値を修正する状態フィードバックステップと、を含むものである。
本発明にかかるプログラムは、上記多点接触ロボットの制御方法をコンピュータに実行させるためのプログラムである。
本発明によれば、高い安定化性能を有する多点接触制御技術を導入した多点接触ロボット、多点接触ロボットの制御方法及びプログラムを提供できる。
本発明の実施の形態にかかる多点接触ロボット100の構成を示す図である。 多点接触ロボット100にかかる接触力を示す図である。 多点接触ロボット100の接触点の座標系及び接触多角形を示す図である。 多点接触ロボット100の接触点の安定化条件を示す図である。 多点接触ロボット100の制御フレームワークを示す図である。 多点接触ロボット100の制御フレームワークを示す図である。 多点接触ロボット100の制御方法を示す図である。 多点接触ロボット100の制御方法を示す図である。 多点接触ロボット100の構成を示す図である。 多点接触ロボット100の構成を示す図である。
本発明の実施形態を図示するとともに図中の各要素に付した符号を参照して説明する。
本実施形態は多点接触ロボット制御方法に特徴があり、具体的には、多点接触ロボットの移動動作を制御するための多点接触制御技術に特徴を有するのであるが、具体的な多点接触制御方法を説明する前に、制御対象となる多点接触ロボットのハードウェア構成について予め説明しておく。
図9は、多点接触ロボットの機械構成の一例を示した図である。多点接触ロボット100は、股関節が3軸、膝関節が1軸、足首関節が2軸、さらに、肩関節が3軸(肩ピッチ、肩ロール、肩ヨー)、肘関節が1軸(肘ピッチ)、および、手首関節が3軸(手首ヨー、手首ピッチ、手首ロール)、で夫々構成されている。多点接触ロボットの機械構成はこれに限定されないが、手(腕)の自由度は6以上、足(脚)の自由度も6以上は必要である。
多点接触ロボット100は、各関節にエンコーダ付きモータ1、2、・・・、28を有している。各関節のモータ(関節駆動手段)1a、2a、・・・、28a(図10)は、各関節の関節角度θ1、θ2、・・・、θ28を調整できる。一方、各関節のエンコーダ(関節角度検出手段)1b、2b、・・・、28bは、各関節の関節角度θ1、θ2・・・、θ28を計測することができる。
また、多点接触ロボット100は、足先部(足平部)および手先部(手の平部)に接触力センサ25を有している。ここで接触力とは6軸力であり、図2に示すように、x軸、y軸およびz軸方向の力fの組(f、f、fと、x軸回り、y軸回りおよびz軸回りの力τの組(τ、τ、τと、である。なお、x軸およびy軸は、鉛直方向であるz軸に垂直な面内で互いに直交する軸とする。
この多点接触ロボットは、移動時に、右足、左足、右手又は左手などの接触点のうち複数を、床、壁、あるいはテーブルなどの接触面に接触させながら移動する。
図10は、多点接触ロボット100の機能ブロック図である。多点接触ロボット100は、各関節のモータ1a乃至24a及びエンコーダ1b乃至24bと、力センサ25と、コントローラ210と、を備えている。
コントローラ210には、各関節のエンコーダ1b乃至24b及び力センサ25から、センサ検出値が入力される。また、コントローラ210は、各関節のモータ1a乃至24aに対して駆動信号を出力する。
コントローラ210は、主要なハードウェア構成として、制御処理、演算処理等を行うCPU(Central Processing Unit)210aと、CPU210aによって実行される制御プログラム、演算プログラム等が記憶されたROM(Read Only Memory)210bと、処理データ等を一時的に記憶するRAM(Random Access Memory)210cと、を有するマイクロコンピュータにより構成されている。また、これらCPU210a、ROM210b、及びRAM210cは、データバス210dによって相互に接続されている。必要なプログラムを不揮発性記録媒体に記録しておき、必要に応じてインストールするようにしてもよい。
ここで図1の機能ブロック図を用いて、コントローラ210の機能構成について説明する。同時に、図5を用いて、多点接触ロボットにおける多点接触動作の生成及び制御フレームワークについて説明する。
(a)接触点計画
接触点計画部211は、多点接触ロボットがあるタスク(移動も含む)を実行するための、適切な接触点の位置及び姿勢を計画する。なお、接触点計画はユーザにより入力されても良い。
(b)軌道生成
軌道生成部212は、接触点計画部211が計画した接触点位置及び姿勢に基づいて、将来にわたって発散及び破綻しない安定な重心軌道、力指令値軌道、手先や足先の位置、及び姿勢軌道を生成する。
(c)状態推定
状態推定部213は、多点接触ロボットの胴体に搭載されたIMU(3軸ジャイロ、3軸加速度計)や各接触点(例えば手先や足先等)の力センサ等を用いて、現在の重心位置、速度、及び胴体姿勢を推定する。
(d)状態安定化
状態安定化部214は、状態推定部213が推定した多点接触ロボットの状態と、軌道生成部212が生成した目標軌道と、の差が0に漸近するよう、状態フィードバックにより各接触点の6軸力指令値を修正する。
(e)接触力制御
接触力制御部215は、各接触点の6軸力指令値を実現するよう、力センサを用いてインピーダンス制御を行い、接触点(例えば手先や足先等)の位置及び姿勢を修正する。
(f)全身IK
全身IK部216は、接触力制御部215が算出した重心位置、手先や足先の位置、姿勢、及び重心周りの角運動量等の指令値を達成するように、逆運動学(IK:inverse kinematics)により全身の関節角を求める。
(g)関節サーボ
関節サーボ部217は、全身IK部216が求めた関節角度指令値に基づいて各軸で位置サーボ制御を行う。
ここで、上記(a)乃至(g)にかかる各処理自体は公知技術等を用いて実現できるため、本実施の形態においては詳細な説明を省略する。
コントローラ210は、典型的には(a)接触点計画、(b)軌道生成、(d)状態安定化、(e)接触力制御、(f)全身IK、及び(g)関節サーボの順に処理を行うことで、多点接触ロボットの動作を制御する。そして、重要な点として、コントローラ210は、(b)軌道生成と(c)状態推定とのフィードバック処理を実施する。ここで軌道生成部212は、一定時間ごとに、現在の多点接触ロボットの状態を起点として、将来にわたる目標軌道を生成する。同様に、(d)状態安定化と(c)状態推定との間にもフィードバックループが存在する。ここでは、状態安定化部214が、現在の多点接触ロボットの状態と目標軌道との差が0に漸近するよう、力指令値を修正する。
本実施の形態の特徴は、これら2つのフィードバックループの周期が異なる点にある。すなわち、状態推定部213は、多点接触ロボットの状態推定結果を、軌道生成部212と状態安定化部214とに対して、それぞれ異なる周期でフィードバックする。コントローラ210は、軌道生成部212と状態推定部213とのフィードバックループは比較的長い周期(例えば20ms)で実行する。一方、状態安定化部214と状態推定部213とのフィードバックループは比較的短い周期(例えば1ms)実行する。
フィードバック周期を異ならせてよい理由は次のとおりである。(d)状態安定化処理は、現在のロボットの状態と目標軌道との差を修正するための制御である。もし、何らかの事情により多点接触ロボットの実際の状態と目標軌道とに差異が生じると、多点接触ロボットの運動は破綻して転倒するなどの可能性がある。そこで、(c)状態推定と(d)状態安定化との間のフィードバック処理はできるだけ短い時間(周期)で実施し、できるだけ素早く(e)乃至(g)による姿勢制御を実行して、多点接触ロボットの状態を安定化させる必要がある。一方、(b)軌道生成処理は、現在の多点接触ロボットの重心位置や速度等を初期状態として、そこから将来にわたる安定軌道を生成する処理である。この処理は必ずしも(d)ほど短い周期で実施する必要はない。
このように、コントローラ210は、(b)軌道生成処理と、(d)乃至(g)にかかるリアルタイムの姿勢制御処理と、をそれぞれ異なる周期で実行できる。当然ながら、軌道生成処理と、リアルタイムの姿勢制御処理と、では許容される計算量も各々異なる。リアルタイムの姿勢制御処理は短い時間で実行する必要があるから、計算量をできる限り少なく抑える工夫が必要である。
次に、本実施の形態にかかる多点接触制御処理のアルゴリズムの一例について説明する。はじめに、本実施の形態にかかる多点接触制御処理の考え方について説明する。
本実施の形態では、多点接触ロボット全体の慣性が1つの重心で表され、各接触点には6軸力が定義されたモデルを用いる(図2)。この時、重心の並進運動量をP、重心回りの回転運動量をL、接触点の数をnとすると、運動方程式は
Figure 2016172309
と表される。
ここで、「重心位置、胴体姿勢角度、重心周り角運動量、各接触点の力、各接触点のモーメント」の指令値を
Figure 2016172309
とし、誤差量を導入して
Figure 2016172309
とすると、式(1)は
Figure 2016172309
と表される。
軌道生成部212によって生成される指令値は当然、式(1)を満たし
Figure 2016172309
が成り立っているので、上式(数4)と差を取れば
Figure 2016172309
となる。ただし、誤差の2乗項は十分小さいとして近似的に
Figure 2016172309
とした。
式(2)を行列表現に書き直せば
Figure 2016172309

となる。ただし、
Figure 2016172309
とする。
さらに、
Figure 2016172309
とおけば、式(3)は簡単に
Figure 2016172309
と書くことができる。ここで、ηは多点接触ロボットと目標軌道とのずれ量、uは接触点における荷重を示す。A及びBをシステム行列という。
ここで、状態推定部213で推定された結果として、「重心位置、速度、胴体姿勢角度、重心周り角運動量」の推定値
Figure 2016172309
が状態安定化部214に入力されるものとする。
状態安定化部214の目的は
Figure 2016172309
を達成することである。
ここで誤差を
Figure 2016172309
と定義する。ただし、kは姿勢角誤差のフィードバックゲイン、eΦは瞬間的な姿勢角誤差をグローバル座標系で表現したベクトルである。eΦは、オイラー角とクォータニオンとの変換関数をCquatとすれば次式で表される。
Figure 2016172309
式(6)の第2式は、胴体姿勢角度の誤差にゲインを掛けて重心周り角運動量誤差に足し合わせる形になっており、これは近似的には重心周り角運動量誤差を積分しているとも解釈できる。つまり、重心周り角運動量誤差を減少させるようにフィードバックを行った場合には、近似的にはPI制御を行ったのと同等と解釈できる。
したがって、状態安定化部214は、式(6)の誤差をフィードバックして、誤差が減少するように制御を行えば、式(5)の目的を達成できる。すなわち、誤差を式(6)で定義した時に、
Figure 2016172309
となれば良い。
そこで本実施の形態では、誤差の漸近収束と各接触力への負荷の分配を目的として、次のような評価関数で表される最適レギュレータを適用する。
Figure 2016172309
この最適レギュレータ問題は従来から非常に多くの分野で使われており、解もよく知られている。
Figure 2016172309
ここで、Pはリッカチ方程式の解
Figure 2016172309
である。また、Kはずれ量ηを打ち消す荷重uを得るためのゲインを示す。
このように、状態安定化部214は、状態推定部213が観測した誤差量(状態量)をフィードバックすることによって、式(7)を達成する補正力及びモーメントを算出することができる。
ここで、以下の2つの課題が生ずる。
(ア)接触点数や接触部位が変化していくのに伴って、システム式(4)が変化する。そのため、上記リッカチ方程式を予め解いておくことができない。一方、リアルタイムで毎回解くと計算時間を要するため、制御周期の上限が制限される。
(イ)状態フィードバックを示す式(8)では補正力及びモーメントの制限が考慮されていない。そのため、補正により、接触点で接触部位が滑る又は剥がれる等の接触不安定を引き起こす可能性がある。
まず課題(イ)の解決策を検討する。図3に、接触点の座標系(上添え字lがついている)と、接触多角形(接触点の支持多角形)を示した。接触点座標は接触点を原点として接触面の姿勢rに合わせて定義されているものとする。このとき、接触座標系で定義された6軸力
Figure 2016172309

は、接触面の姿勢行列
Figure 2016172309

(rot()はオイラー角と姿勢行列に変換する関数)を用いて、
Figure 2016172309

と表される。
図4に示すように、接触点が安定して接触を保つためには以下の3つの条件を満たす必要がある。
(1)接触点が接触面から離れないこと
(2)接触点が接触面で滑らないこと
(3)接触点が接触面から剥がれないこと
(1)接触点が接触面から離れない為には、接触面の鉛直力が正であれば良い。すなわち、次式を満たす必要がある。
Figure 2016172309
(2)接触点が接触面で滑らない為には、接触面に平行な2軸力が摩擦力以下であれば良い。すなわち次式がその条件である。ただし接触面の摩擦係数をμとする。
Figure 2016172309
(3)接触点が剥がれない為の条件は、接触多角形のh個の頂点座標(x il,y il),・・・,(x ih,y ih)を用いて以下のように表される(ただし接触多角形の頂点は反時計回りに順に与えられているものとする)。
Figure 2016172309
式(9)、(10)、(11)及び(12)をまとめると
Figure 2016172309
となる。
Figure 2016172309
の関係を用いて更に式(13)を書き直せば、
Figure 2016172309
となる。ただし、
Figure 2016172309
とした。
式(14)を全接触点について書き並べると
Figure 2016172309
と表すことができる。ただし、
Figure 2016172309
とする。
課題(イ)とは、式(8)のフィードバックの結果、式(15)が満たされないために、接触点を安定に保つ条件式(10)、(11)及び(12)が満たされず、もって接触点で接触部位が滑りや剥がれを引き起こすという問題である。そこで本実施の形態では、直近で式(15)を満たしつつ、評価関数
Figure 2016172309
を最小化するようなフィードバックゲインを算出する。
この問題は、LMI(Linear Matrix Inequality)を用いて次のような最適化問題を解くことにより、解を得ることが可能である。
Figure 2016172309
ただし、ηは最も直近で得られた誤差値である。
式(16)の形式の最適化問題は、収束計算による求解法である内点法を用いて効率良く解を求められることがよく知られている。式(16)の求解結果Pを用いて
Figure 2016172309
のようにフィードバックゲインが計算される。
接触点における摩擦力又は鉛直力を含む制約条件を課すことにより、補正によって接触点におけるすべりやはがれなどの不安定性を考慮した状態安定を行うことができる。
次に、課題(ア)の解決策について検討する。上記最適化問題は高速に求解することは可能だが、ある程度の計算時間が必要である。そこで、本実施の形態では、フィードバックゲインの計算を(b)軌道生成と同時に行うことにより、課題(ア)を解決する手法を提案する。なお、フィードバックゲインの計算は、(d)状態安定化におけるフィードバックループよりも遅い周期で実行すれば良く、必ずしも(b)軌道生成のフィードバックループと同じ周期で行う必要はない。
すなわち、図5に示すように、本実施の形態では、20ms周期で現在の状態推定量に基づいて式(16)及び(17)を解くことで最適フィードバックゲインKを計算し、求められたフィードバックゲインKを用いて1ms周期で状態フィードバックを行う、というフレームワークを採用する。状態フィードバックの計算自体は、フィードバックゲインと現在の状態推定量から算出した誤差量を乗算するだけなので、非常に少ない計算量で補正力及びモーメントを計算することができる。状態フィードバックの計算を、誤差とフィードバックゲインを積算するだけの計算にとどめるので、短周期で計算することができる。
図6乃至図8を用いて、本実施の形態の特徴的な部分について再度説明する。図6は、本実施の形態のフレームワークを示すブロック線図である。図7は、最適ゲイン計算器2122の動作を示すフローチャートである。図8は、誤差計算器2132及び状態フィードバック2142の動作を示すフローチャートである。
図6のブロック線図は、複数の機能ブロックと、機能ブロック間のデータの入出力を示す矢印とからなっている。軌道生成器2121及び最適ゲイン計算器2122は、軌道生成部212に含まれる機能ブロックである。状態推定器2131及び誤差計算器2132は、状態推定部213に含まれる。状態フィードバック2142は、状態安定化部214に含まれる。また、図6において、接触点パラメータs=(μ,(x il,y il),・・・,(x ih,y ih))は接触点の摩擦係数及び接触多角形を表すものとする。
このうち、軌道生成器2121及び最適ゲイン計算器2122は、短い周期、典型的には20ms周期で処理を実行する。一方、状態推定器2131、誤差計算器2132及び状態フィードバック2142は、長い周期、典型的には1ms周期で処理を実行する。
まず長い周期、典型的には20ms周期で処理が実行される機能ブロックの動作について説明する。軌道生成器2121が、接触点計画部211又は上位装置によって計画された接触点位置及び姿勢p[k],r[k]及び接触点パラメータs[k]に基づいて、重心位置及び速度q[k],q[k]、胴体姿勢角φ[k]、重心周り角運動量L[k]、接触点の力及びモーメントfid[k],τid[k]、手先及び足先位置並びに姿勢(接触点含む)p [k],r [k]の時系列軌道を生成し、軌道バッファに格納する。ここで、軌道生成器としては、例えば特願2013−254989に記載のものを利用できる。
最適ゲイン計算器2122は、軌道生成器2121から、重心位置、重心周り角運動量、接触点の6軸力の現在の目標値q、L、fid及びτid、並びに接触点の位置pi及び接触点パラメータsを取得する(図7、S101)。そして、これらの取得値を用い、数10に従ってシステム行列A、Bを求める(S102)。また、数31に示した不等式制約条件G、wを求める(S103)。
また、最適ゲイン計算器2122は、誤差計算器2132から状態誤差値の最新値(現在値)ηを取得する(図7、S104)。そして、式(16)により最適化問題の求解結果Pを得る(S105)。最後に、式(17)及びPを用いて、最適フィードバックゲインKを算出し、出力する(S106)。
次に短い周期、典型的には1ms周期で処理が実行される機能ブロックの動作について説明する。状態推定器2131が、各センサ値を用いて現在の重心位置及び速度q,q、胴体姿勢角度φ、重心周り角運動量Lを出力する。なお、状態推定器2131としては、例えば特願2014−089943に記載のものを利用できる。
誤差計算器2132は、軌道バッファから現在時刻における目標値q、q、φ、Lを取得する(図8、S202)。また、状態推定器2131から状態推定値q、q、φ、Lを取得する(S203)。そして、誤差計算器2132は、これらの値を用い、式(6)に基づいて現在誤差ベクトルηを計算する。
状態フィードバック2142は、最適ゲイン計算器2122から最適フィードバックゲインKを取得する(図8、S201)。また、誤差計算器2132から誤差ベクトルηを取得する(S204)。そして、Kとηとを乗算して、接触点の補正力及びモーメントΔf,Δτを計算する(S205)。さらに、fref =fid[j]+Δf,τref =τid[j]+Δτのように、現在時刻における目標6軸力に上記補正量を加算することで、6軸力指令値を出力する(S206)。
本実施の形態によれば、軌道生成部212における軌道生成処理(最適ゲイン計算を含む)と、状態安定化部214による姿勢制御処理(誤差フィードバックを含む)とは、異なる周期で実行される。これにより、状態安定化部214は、比較的計算量の多い、すなわち計算に時間を要する最適ゲイン計算処理に影響されることなく、比較的短い時間で誤差フィードバック処理を実行できるようになる。そのため、早い周期で姿勢制御を行うことができ、任意の多点接触状態において重心軌道追従・安定化性能を向上させることができる。
また、本実施の形態によれば、状態安定化部214は、式(16)による定式化と、図5に示すフレームワークとにより、各接触点の安定化を保ちつつ軌道追従誤差をゼロに漸近させる処理を、低い計算コストで高速に実行することができる。これにより、状態安定化部214は、早い周期で姿勢制御を行うことができ、任意の多点接触状態において重心軌道追従・安定化性能を向上させることができる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上述の実施の形態では、式(13)を接触点の接触安定性を保証する条件のみで構成したが、例えば鉛直接触力の上限値を設定して
Figure 2016172309
のような条件を追加し、式(13)を
Figure 2016172309
とし、式(14)を
Figure 2016172309
とすることも可能である。
また、上述の実施の形態では、本発明を主にハードウェアの構成として説明したが、これに限定されるものではなく、任意の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。この場合、コンピュータプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non−transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
100 多点接触ロボット
210 コントローラ
211 接触点計画部
212 軌道生成部
2121 軌道生成器
2122 最適ゲイン計算器
213 状態推定部
2131 状態推定器
214 状態安定化部
2132 誤差計算器
2142 状態フィードバック
215 接触力制御部
216 全身IK部
217 関節サーボ部

Claims (7)

  1. 複数の接触点を有する多点接触ロボットであって、
    目標重心軌道及び前記接触点各々の反力目標値を生成する軌道生成部と、
    現在の重心を推定し、前記目標重心軌道と前記現在の重心との誤差を算出する状態推定部と、
    前記誤差が前記目標重心軌道に収束するよう前記反力目標値を修正する状態安定化部と、を有し、
    前記軌道生成部は、第1の周期で、前記誤差を前記目標重心軌道に収束させるためのフィードバックゲインを算出し、
    前記状態安定化部は、前記第1の周期よりも短い第2の周期で、前記誤差と前記フィードバックゲインとに基づき前記反力目標値を修正する
    多点接触ロボット。
  2. 前記軌道生成部は、前記接触点における摩擦力又は鉛直力を含む制約条件に基づいて、前記フィードバックゲインを算出する
    請求項1記載の多点接触ロボット。
  3. 前記状態安定化部は、前記誤差と前記フィードバックゲインとを乗ずることにより、前記反力目標値を修正する
    請求項1又は2記載の多点接触ロボット。
  4. 複数の接触点を有する多点接触ロボットの目標重心軌道及び前記接触点各々の反力目標値を生成する軌道生成ステップと、
    現在の重心を推定し、前記目標重心軌道と前記現在の重心との誤差を算出する誤差計算ステップと、
    第1の周期で、前記誤差を前記目標重心軌道に収束させるためのフィードバックゲインを算出する最適ゲイン計算ステップと、
    前記第1の周期よりも短い第2の周期で、前記誤差と前記フィードバックゲインとに基づき前記反力目標値を修正する状態フィードバックステップと、を含む
    多点接触ロボットの制御方法。
  5. 前記最適ゲイン計算ステップは、前記接触点における摩擦力又は鉛直力を含む制約条件に基づいて、前記フィードバックゲインを算出する
    請求項4記載の多点接触ロボットの制御方法。
  6. 前記状態フィードバックステップは、前記誤差と前記フィードバックゲインとを乗ずることにより、前記反力目標値を修正する
    請求項4又は5記載の多点接触ロボットの制御方法。
  7. コンピュータに、請求項4乃至6いずれか1項記載の多点接触ロボットの制御方法を実行させるためのプログラム。
JP2015054608A 2015-03-18 2015-03-18 多点接触ロボット、多点接触ロボットの制御方法及びプログラム Active JP6447278B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015054608A JP6447278B2 (ja) 2015-03-18 2015-03-18 多点接触ロボット、多点接触ロボットの制御方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015054608A JP6447278B2 (ja) 2015-03-18 2015-03-18 多点接触ロボット、多点接触ロボットの制御方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2016172309A true JP2016172309A (ja) 2016-09-29
JP6447278B2 JP6447278B2 (ja) 2019-01-09

Family

ID=57008502

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015054608A Active JP6447278B2 (ja) 2015-03-18 2015-03-18 多点接触ロボット、多点接触ロボットの制御方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6447278B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110536781A (zh) * 2017-04-23 2019-12-03 富兰卡爱米卡股份有限公司 机器人和用于运行机器人的方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05245780A (ja) * 1992-03-04 1993-09-24 Honda Motor Co Ltd 脚式移動ロボットの制御装置
JP2006043797A (ja) * 2004-08-02 2006-02-16 Honda Motor Co Ltd 脚式移動ロボットの歩容生成装置および制御装置
JP2011025339A (ja) * 2009-07-23 2011-02-10 Honda Motor Co Ltd 移動体の制御装置
JP2011161524A (ja) * 2010-02-05 2011-08-25 Toyota Motor Corp 2脚歩行ロボット及びそのための歩容データ生成方法
JP2011255500A (ja) * 2011-08-01 2011-12-22 National Institute Of Advanced Industrial Science & Technology 脚式移動ロボットの制御装置
JP2012245574A (ja) * 2011-05-25 2012-12-13 Honda Motor Co Ltd 移動体の制御装置
JP2013116530A (ja) * 2011-12-02 2013-06-13 Honda Motor Co Ltd 脚式移動ロボットの歩容生成装置及びロボットの動作目標生成装置
JP5398592B2 (ja) * 2010-03-01 2014-01-29 本田技研工業株式会社 脚式移動ロボットの運動状態評価装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05245780A (ja) * 1992-03-04 1993-09-24 Honda Motor Co Ltd 脚式移動ロボットの制御装置
JP2006043797A (ja) * 2004-08-02 2006-02-16 Honda Motor Co Ltd 脚式移動ロボットの歩容生成装置および制御装置
JP2011025339A (ja) * 2009-07-23 2011-02-10 Honda Motor Co Ltd 移動体の制御装置
JP2011161524A (ja) * 2010-02-05 2011-08-25 Toyota Motor Corp 2脚歩行ロボット及びそのための歩容データ生成方法
JP5398592B2 (ja) * 2010-03-01 2014-01-29 本田技研工業株式会社 脚式移動ロボットの運動状態評価装置
JP2012245574A (ja) * 2011-05-25 2012-12-13 Honda Motor Co Ltd 移動体の制御装置
JP2011255500A (ja) * 2011-08-01 2011-12-22 National Institute Of Advanced Industrial Science & Technology 脚式移動ロボットの制御装置
JP2013116530A (ja) * 2011-12-02 2013-06-13 Honda Motor Co Ltd 脚式移動ロボットの歩容生成装置及びロボットの動作目標生成装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
山本 江: ""2足歩行ロボットの軌道追従制御における最大出力許容集合と転倒回避制御への応用"", 日本ロボット学会誌 第32巻 第7号 JOURNAL OF THE ROBOTICS SOCIETY OF JAPAN, vol. 第32巻, JPN6018009813, September 2014 (2014-09-01), JP, pages 59 - 68, ISSN: 0003874327 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110536781A (zh) * 2017-04-23 2019-12-03 富兰卡爱米卡股份有限公司 机器人和用于运行机器人的方法

Also Published As

Publication number Publication date
JP6447278B2 (ja) 2019-01-09

Similar Documents

Publication Publication Date Title
Feng et al. Optimization‐based full body control for the darpa robotics challenge
Feng et al. Optimization based controller design and implementation for the atlas robot in the darpa robotics challenge finals
Saab et al. Dynamic whole-body motion generation under rigid contacts and other unilateral constraints
Hu et al. Adaptive backstepping trajectory tracking control of robot manipulator
JP5910647B2 (ja) 移動ロボットの移動制御方法
US20220019196A1 (en) Feedforward control method for floating base dynamics, computer-readable storage medium and robot
Mason et al. Balancing and walking using full dynamics LQR control with contact constraints
US20150158181A1 (en) Robot control apparatus, robot control method, program, recording medium and robot system
US8874263B2 (en) Walking robot and control method thereof
Moro et al. An attractor-based whole-body motion control (WBMC) system for humanoid robots
Missura et al. Omnidirectional capture steps for bipedal walking
US11465281B2 (en) Dynamic planning controller
JP5859036B2 (ja) ロボット
Buschmann et al. Biped walking control based on hybrid position/force control
JP2013520327A (ja) 関節システムの制御方法、記憶媒体、制御システム
JP6781101B2 (ja) 非線形システムの制御方法、二足歩行ロボットの制御装置、二足歩行ロボットの制御方法及びそのプログラム
Decré et al. Extending the iTaSC constraint-based robot task specification framework to time-independent trajectories and user-configurable task horizons
Khorram et al. Push recovery of a quadruped robot on challenging terrains
Hao et al. Uncalibrated visual servoing for a planar two link rigid-flexible manipulator without joint-space-velocity measurement
Oliva et al. Towards dynamic visual servoing for interaction control and moving targets
Carlési et al. Nonlinear model predictive running control of kangaroo robot: A one-leg planar underactuated hopping robot
JP6447278B2 (ja) 多点接触ロボット、多点接触ロボットの制御方法及びプログラム
He et al. Cdm-mpc: An integrated dynamic planning and control framework for bipedal robots jumping
Stasse et al. Fast foot prints re-planning and motion generation during walking in physical human-humanoid interaction
JP6168158B2 (ja) 移動ロボットの移動制御方法、および、移動ロボット

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180327

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180911

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181017

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181119

R151 Written notification of patent or utility model registration

Ref document number: 6447278

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151