説明

多関節ロボットの姿勢制御方法

【課題】ロボットの初期状態と終了状態に至る軌道生成を行わずに移動させることにより、自然な歩容及び高効率化を実現し得る多関節ロボットの姿勢制御方法を提供する。
【解決手段】多関節ロボット1の足首関節2を回転自在に設けるとともに足首関節2の回転にロータリーダンパーによって抵抗を付与し、各関節角の一般化座標ベクトルによって規定される足首関節2の回転モーメント及び角速度ベクトルをゼロにする多様体(ZMM:Zero Moment Manifold)上に安定化するように状態フィードバック制御するZMM制御を行うこととした。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、多関節ロボットの姿勢制御方法に関するものである。ここで、「多関節」とは、2以上の関節を指すものとする。
【背景技術】
【0002】
従来、ロボットの姿勢制御方法として、ZMP(Zero Moment Point)を用いる方法が広く知られている(例えば、非特許文献1〜4参照)。
この種のロボットでは、足首を含む各関節にアクチュエータを配し接地した足底面が構成する最小凸集合上にロボットの重心が常にあるように、静的あるいは準動的に制御する方法がある。これを、更に動的に拡張したものがZMPである。
すなわち、足首関節にアクチュエータを設けて制御トルクを付与するが、足首関節に作用する制御トルクは他の関節に働く制御トルクに比較して一般に大きく、省エネルギー化、小型化、及びコストダウンを妨げる一要因となっていた。
そこで、足首関節にはアクチュエータを設けずに、足首の回転に負荷を与えるロータリーダンパーを設けたロボットが提案されている(例えば、特許文献1)が、この種のロボットにおいても、走行時等に倒れないように制御するためにはZMPを用いる。
【非特許文献1】山口,曽我,井上,高西:“足歩行型ヒューマノイドロボットの開発−全身協調型2足動歩行制御”,第3回ロボティクスシンポジア予稿集、p.189-196,1998
【非特許文献2】横井一仁:“人間協調・共存型ロボットシステム研究開発の概要”,第16回日本ロボット学会講演会予稿集,p.33-34,1998
【非特許文献3】広瀬,竹中,五味,小澤:“人間型ロボット”,日本ロボット学会誌,15,7,p.983-985,1997
【非特許文献4】M.Vukibratovic,(加藤,山下訳):“歩行ロボットと人工の足”,日刊工業新聞社,1975
【特許文献1】特開2000−176866号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、従来の姿勢制御方法では、ZMPが足底面の構成する最小凸集合面上の十分内側の範囲を移動することを保証した上で、軌道制御を行うものであるため、歩容の自然さや高効率化を実現しにくいという問題があった。
【0004】
そこで、本発明は、ZMPを用いる方法とは異なり、ロボットの初期状態と終了状態に至る軌道生成を行わずに移動させることにより、自然な歩容及び高効率化を実現し得るZMM(Zero Moment Manifold、詳細は後述する)制御方法を用いた多関節ロボットの姿勢制御方法を提供することを目的とする。
【課題を解決するための手段】
【0005】
上記目的を達成するため、本発明に係る多関節ロボットの姿勢制御方法は、足首関節が回転自在に設けられるとともに該足首関節の回転に粘性抵抗が付与された方法であって、各関節角の一般化座標ベクトルによって規定される前記足首関節の回転モーメントおよび角速度ベクトルをゼロにする多様体(ZMM:Zero Moment Manifold)上に、安定化するように状態フィードバック制御することを特徴とする。前記足首関節は、非駆動で回転自在に設けられることが好ましい。
【0006】
また、上記目的を達成するため、本発明に係る多関節ロボットの姿勢制御方法は、足首関節が回転自在に設けられるとともに、該足首関節の回転に粘性抵抗が付与された多関節ロボットの姿勢制御方法であって、少なくとも足首より上の関節に設けたアクチュエータを制御することにより、前記多関節ロボットの合成重心が前記足首関節の回転軸鉛直線上に、かつ、静止するような目標角度に動的に収束させることを特徴とする。前記足首関節は、非駆動で回転自在に設けられることが好ましい。
本明細書における「多様体」は、数学上の概念である多様体を意味する。このことは特許請求の範囲においても同様である。
【発明の効果】
【0007】
本発明の制御対象である多関節ロボットは、足首関節にアクチュエータを備えないため、省エネルギー化、小型化、及びコストダウンを図ることができる。
【0008】
そして、本発明に係る姿勢制御方法は、かかる多関節ロボットを姿勢制御するに際し、各関節角の一般化座標ベクトルによって規定される前記足首関節の回転モーメント及び角速度ベクトルをゼロにする多様体上に安定化するように状態フィードバック制御を用いて、少なくとも足首より上の関節に設けたアクチュエータを制御することにより、前記多関節ロボットの合成重心が前記足首関節の回転軸鉛直線上に、かつ、静止するような目標角度に動的に収束させるため、軌道生成を行わずに、初期状態から終了状態へと移動させることができるので、自然な歩容が可能となる。
【0009】
さらに、本発明に係るZMM制御方法は、静止時に倒れない条件(ZMM)を基に制御しているため、一見静的に見えるが、初期状態から終了状態までの経路はいかなる状態をとってもよく、ZMPを用いる方法に比べ、より動的な制御則となり得る。
【発明を実施するための最良の形態】
【0010】
本発明に係る制御方法について、最も単純な2自由度のロボットを例に挙げて説明する。
【0011】
図1は、2自由度2関節のロボットの模式図である。このロボット1は、地面に並進移動不能で回転自在に設置した第1関節としての足首関節2と、足首関節2に回転自在に連結された第1リンク節3と、第2関節4を介して第1リンク節3と回転自在に連結された第2リンク節5とを有している。足首関節2にはアクチュエータは無く、第1リンク節3は、自由回転するが、足首関節2の回転軸と同軸にロータリーダンパー(不図示)が搭載されていて回転への負荷が与えられている。膝関節に相当する第2関節4には、アクチュエータとしての制御モータ(不図示)が取り付けられている。
【0012】
なお、上記のようにアクチュエータを設けない方が省電力の点で優れているが、本発明に係るZMM制御方法は、足首関節2にはアクチュエータが取り付けられている多関節ロボットにも適用可能である。足首関節を速度制御することにより、ダンピング係数を微調節することなどもできる。
【0013】
各リンク節3、5の質量をm,mとし、各リンク節3,5の各重心まわりの慣性モーメントをI-,I-とし、各リンク節3、5の重心位置と各関節2,4との距離をs,sとし、各リンク節3、5の長さをl-,l-とし、右まわりを正として第1リンク節3と鉛直軸との為す角をq,第1リンク節3の延長線と第2リンク節5との為す角をqとして、ロータリーダンパーによる粘性係数をcとし、第2関節4のモータ及びギアによる粘性係数をcとし、第2関節のモータのロータ及びギアによる慣性モーメントをI20とし、gを重力加速度とし、このロボット1に対して、ラグランジュの運動方程式を解くことにより、ロボットの運動方程式を求めると、次のような方程式を得る。
【0014】
【数1】

ここで、q(t) =[qは一般化座標ベクトル、u(t) ∈Rは制御入力である。また、H(q)は慣性行列、
【0015】
【数2】

の項は遠心力やコリオリ力等の非線形項、g(q)は重力項である。また、b∈Rは、[0 1]である。但し、
【0016】
【数3】

である。
【0017】
足首関節2は非駆動であるため、静止時にこのロボット1は倒れてしまう。静止時にこのロボット1が倒れない、すなわち平衡状態になる条件は、重力の影響により各リンク節3、5が足首関節2回りに発生させるモーメントが釣り合うことである。これは、図1下図に示すようにシーソーの釣り合う原理と同様に考えることができる。これを式に表すと、下記式となる。gは重力加速度である。
【0018】
【数4】

【0019】
【数5】

である。
【0020】
この釣り合いの条件を満足する平衡状態を漸近安定にするような状態フィードバックを創りだしたのが本発明の鍵となった。その為に、すなわち、ロボット1の全状態が作り出す4次元状態空間
【0021】
【数6】

を考え、その上の、(2)式で表される釣り合いの条件と静止しているという条件
【0022】
【数7】

を満足する1次元多様体Mへ、状態ベクトルを落とし込むことができる。この多様体Mは、図2のように表される。従来のZMP(Zero Moment Point)に対して、この多様体(Manifold)をZMM(Zero Moment Manifold)と呼ぶ。
【0023】
ここで、q若しくはqが決まれば、一意にqまたはqが決定される。この多様体上であればいかなる状態をとっても静止時に倒れないという安定化された平衡状態を実現できる。
【0024】
本発明では、軌道生成を行うこと無しにロボットを目標角度に収束させる。そのための制御入力を次に説明する。
【0025】
上記の4次元状態空間の中の多様体M上のある点から同じ多様体M上へ写像する制御入力が構成できれば、図3中の解軌道のようにその間の経路は如何なる経路をたどってもよいということになる。
【0026】
つまり、このロボット1では、初期状態と終了状態がZMMを満たしていれば、初期状態から終了状態へ移る間の状態はいかなる状態をとってもよいことになる。初期状態から終了状態へ移す制御入力が見つかれば、軌道生成を行わずとも目標状態へ移すことができる。このために、ZMMを満たす初期状態からZMMを満たす目標状態まで移すことを具体的に以下に説明する。
【0027】
そのZMM制御をフローチャートで表したものを図4に示す。
【0028】
まず、任意の目標角度q2dを与え、ZMMを満たすようにq1dを導き、その目標角度q1d,q2dへ移すことを考える。qを任意の角度に移すために、qd2を具体的な値として与え、q1dを(2)式を変形した次式により求める。
【0029】
(2)式と、三角関数の加法定理のsin(q1+q2)=sinq1cosq2+cosq1sinq2を用いると、以下の変形が行える。
【0030】
【数8】

となる。また、(1)式の運動方程式は、以下のようにも表現することができる。
【0031】
【数9】

ただし、一般化座標ベクトルq=[q,q、目標角度ベクトルq=[q1d,q2d]、Δuは制御入力に重力補償を考えるときに制御入力u(t)から重力補償項を除いたものであり、
【0032】
【数10】

【0033】
【数11】

である。この運動方程式に対して、目標角度近傍で、例えば、
【0034】
【数12】

の線形近似を行うことで、次の状態方程式表現を得る。
【0035】
【数13】

ただし、Δq=q−qである。
【0036】
この線形近似モデルに基づき、目標角度へ収束するように最適レギュレータ理論(「有本卓:“線形システム理論”、産業図書、p.141-151、1974」、「吉川恒夫、井村順一:“現代制御論”、昭晃堂、p.145-154、2002」)を適用する。
【0037】
評価関数には以下の式を用いた。
【0038】
【数14】

但し、Q,Q∈R2×2は対象な実正定行列であり、重み行列と呼ばれる。
ここで、次のリカッチ代数方程式
【0039】
【数15】

を満足する唯一の実正定行列をPとすると、
【0040】
【数16】

となる。目標角度における重力補償(−mgsin(q1d+q2d))との重ね合わせで、制御入力を次式のように与える。
【0041】
【数17】

このような制御入力を用いて制御することが、ZMM制御の一態様である。
【0042】
なお、自由度が増えた場合でも、同様にして任意に与えた目標角度qid(i=2〜n)からZMMを満足するように目標角度q1dを求め、その目標角度周りで線形化したシステムに対して最適レギュレータ理論を適用することでZMM制御を行うことができる。これにより、多自由度の場合でも、q以外を任意の角度に制御することができる。このZMM制御は静止時に倒れない条件(ZMM)を基に制御しているため、一見静的に見えるが、初期状態から終了状態までの経路はいかなる状態をとってもよく、ZMPを用いる方法に比べ、より動的な制御則となり得る。
【0043】
上記の2自由度ロボットに対して、ZMM制御を行ったシミュレーション結果を図5に示す。このシミュレーション時のパラメータ表を図6〜8に示す。図5に示すように、ZMMを満たす初期状態から、ZMMを満たす終了状態まで収束していることがわかる。
【0044】
従って、上体の目標姿勢を次々とサンプル時間毎に設定することで、ZMM制御の状態フィードバック係数をサンプル時間毎に調節し、これをつなぎ合わせることで、上体の振り付けが自由に出来るようになる。目標角度を変更する場合の制御フローチャートを図9に示す。こうして、単なる指定した単純作業だけでなく、踊りや演技も可能となる。このロボット1にZMM制御を適用して、500ms及び200ms毎に姿勢を変えたシミュレーション結果を図10、図11に示す。図10の時間応答を見ると、目標姿勢に追従しているが、滑らかではない部分がある。この原因として、状態フィードバックゲインを不連続に与えていることが考えられる。ここで、過去の目標状態における状態フィードバックゲインと現在の状態フィードバックゲイン、及び未来の状態フィードバックゲインから、線形補間やスプライン補間等の適当な補間を行うことで、状態フィードバックゲインを連続にすると、より滑らかな時間応答を得ることができる。実際、図11は目標姿勢を200ms毎に与えたシミュレーション結果であるが、500ms毎に目標姿勢を与えた場合と比べ、状態フィードバックゲインがより連続的な値をとるので、時間応答が滑らかになっている。ここで、前記の状態フィードバックゲインの補間が有効であると考えられる。
【0045】
上記の実施形態では、状態フィードバック係数の導出に最適レギュレータ理論を用いたが、他のフィードバック安定化法を採用することもできる。また、上記実施形態では、片足設置したロボットについて説明したが、両足設置したロボットへの適用も可能であり、歩行ロボットへの適用も可能である。
【実施例】
【0046】
図12は、実際に製作したロボットを示す、正面図(a)、側面図(b)、及び斜視図(c)である。尚、図1と同様の構成部分には、同符号を付している。
図12に示すロボット1’は、3自由度を持つロボットであり、第2リンク節5と第3関節6を解して第3リンク節7と連結されている。第2リンク節5及び第3リンク節7にそれぞれ1個ずつモータ8,9を搭載し、第2関節4及び第3関節を駆動する。足首関節2を軸支する軸受け部10は、載置面に固定されている。
【0047】
足首関節2には、これを駆動するモータは無く、ロータリーダンパー11が同軸上に設けられている。ロータリーダンパー11は、オイルの粘性抵抗により発生する制動力(ブレーキカ)を利用した回転系のダンパーである。ロータリーダンパーに代えて、オイルの圧力を利用した揺動ダンパーや、ER流体(電気粘性流体)等を利用したダンパー、その他、足首関節の回転に抵抗を付与するために、公知のダンパーを使用できる。
各関節には、図示しないセンサーが取り付けられており、各関節の回転角度、角速度が検出され、検出信号が図外のコントローラに送信されている。
【0048】
この3自由度体操ロボット1’にZMM制御を適用した際のシミュレーション結果及び実験結果を図13〜15に示す。また、このシミュレーション及び実験のパラメータ表を図16〜図18に示す。図13に示すシミュレーションから、足首,膝,腰等を考慮した3自由度のモデルについて安定に制御できることが分かる。図14の実験結果は、シミュレーションに対し定誤差が残るものの目標角度近傍に収束している。この誤差は,駆動系におけるクーロン摩擦などの非線形要素の影響を受けることが原因と考えられる。
【0049】
さらに、図15はこのロボット1’にZMM制御を適用して、500ms毎に姿勢を変えた実験結果であり、制御ループは1msである。時間応答を見ると、目標姿勢に追従しているが、滑らかではない部分がある。これはギアのバックラッシュの影響も考えられるが、状態フィードバックゲインが不連続であることも原因と考えられる。ここで、前記の状態フィードバックゲインの補間を行うことでより滑らかな応答が得られる。
【図面の簡単な説明】
【0050】
【図1】本発明に係る姿勢制御方法を適用したロボットの構成を示す模式図である。
【図2】一次元多様体を説明するグラフである。
【図3】多様体を説明する座標である。
【図4】本発明に係るZMM制御方法の制御流れを示すフローチャートである。
【図5】図1のロボットに本発明方法を適用した場合のシミュレーション結果を示すグラフである。
【図6】図5のシミュレーションのパラメータ表である。
【図7】図5のシミュレーションのゲインパラメータである。
【図8】図5のシミュレーションの初期角度及び目標角度を示すパラメータ表である。
【図9】本発明に係るZMM制御方法の他の制御流れを示すフローチャートである。
【図10】図1のロボットに本発明方法を適用して、時間とともに姿勢を変えたシミュレーション結果を示すグラフである。
【図11】図1のロボットに本発明方法を適用して、時間とともに姿勢を変えたシミュレーション結果を示す他のグラフである。
【図12】本発明制御方法を適用したロボットを示し、図12(a)は直立状態の正面図、図12(b)は直立状態の側面図、図12(c)は関節を曲げた状態の斜視図である。
【図13】図12のロボットに本発明方法を適用した場合のシミュレーションを示すグラフである。
【図14】図12のロボットに本発明方法を適用した場合の実験結果を示すグラフである。
【図15】図12のロボットに本発明方法を適用して、時間とともに姿勢を変えた実験結果を示すグラフである。
【図16】図13に示すシミュレーション及び図14、15に示す実験のパラメータ表である。
【図17】図13のシミュレーション及び図14、15に示す実験のゲインパラメータ表である。
【図18】図13のシミュレーション及び図14に示す実験の初期角度及び目標角度を示すパラメータ表である。
【符号の説明】
【0051】
1、1’ ロボット
2 足首関節
3 第1リンク節
4 第2関節
5 第2リンク節
6 第3関節
7 第3リンク節
11 ロータリーダンパー

【特許請求の範囲】
【請求項1】
足首関節が回転自在に設けられるとともに、該足首関節の回転に粘性抵抗が付与された多関節ロボットの姿勢制御方法であって、
各関節角の一般化座標ベクトルによって規定される前記足首関節の回転モーメントおよび角速度ベクトルをゼロにする多様体(ZMM:Zero Moment Manifold)上に、安定化するように状態フィードバック制御することを特徴とする多関節ロボットの姿勢制御方法。
【請求項2】
前記足首関節が、非駆動で回転自在に設けられることを特徴とする請求項1記載の多関節ロボットの姿勢制御方法。
【請求項3】
足首関節が回転自在に設けられるとともに、該足首関節の回転に粘性抵抗が付与された多関節ロボットの姿勢制御方法であって、
少なくとも足首より上の関節に設けたアクチュエータを制御することにより、前記多関節ロボットの足首より上の合成重心が前記足首関節の回転軸鉛直線上に、かつ、静止するような目標角度に動的に収束させることを特徴とする多関節ロボットの姿勢制御方法。
【請求項4】
前記足首関節が、非駆動で回転自在に設けられることを特徴とする請求項3記載の多関節ロボットの姿勢制御方法。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図12】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図10】
image rotate

【図11】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate