説明

多脚歩行式移動装置のハイブリッド制御装置及び手法

【課題】不整地のような未知の環境においても、任意の脚部制御とオートバランス制御とのそれぞれを同時に実行可能とする。
【解決手段】複数の脚で歩行する多脚歩行式移動装置において、任意の脚部制御と、バランス維持を自動で行なうためのオートバランス制御とを同時に実行するハイブリッド制御装置を備え、ハイブリッド制御装置は、足部の接地状態に応じて脚部制御とオートバランス制御との非干渉化を静力学的に行なう。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の脚で歩行する多脚歩行式移動装置において、任意の脚部制御とオートバランス制御とのそれぞれを同時に実行可能とするためのハイブリッド制御装置及び手法に関する。
【背景技術】
【0002】
現在、ほとんどの多脚歩行式移動装置(歩行ロボット)の歩行制御は、軌道計画ベースで行なわれている。すなわち、ロボット自身と環境の動特性が既知であることを前提に、所望の歩行を実現する目標軌道を、ゼロモーメントポイント(ZMP:Zero Moment Point)等の安定化規範にもとづいて予め計算(軌道計画)し、実際の歩行時には、その軌道計画を再現するように関節サーボレベルで軌道制御を適用する。これはロボットの歩行における動作の計画と制御を分離する手法であり、一定の成功を収めているが、以下のような問題点も存在する。
【0003】
1)ロボットと環境の動特性が既知でなければならない
軌道計画を正確に行なうためには、ロボットの運動学モデルのみならず動力学モデルを、環境との相互作用を含めて正確に構築する必要がある。これは、不可能ではないが非常に困難な作業である。さらに、細心の注意を払って動力学モデルを導出しても、いわゆるモデル化誤差は不可避であり、モデル化誤差に起因する歩行制御の乱れが実行時に必ず生じる。従って,実環境における安定した歩行制御のためには、何らかの補償手段を必要とする。
【0004】
2)軌道制御が正確に実現されなければならない
前述のZMPは、ロボットの位置姿勢のみではなく加速度/角加速度にも依存する量である。つまり、軌道制御において加速度/角加速度まで正確に再現されなければ、軌道計画が実現されないことを意味する。これは実際には非常に困難であり、やはり何らかの補償手段が必要である。
【0005】
3)補償のために多くのセンサ情報を必要とする
前述のように、モデル化誤差や軌道制御誤差に対する補償手段が必要とされるが、これらの補償のためには、通常ロボットに設けられる関節変位センサ以外に、傾斜角センサ、加速度センサ,ジャイロセンサ、カメラ、力センサ等の付加的なセンサを必要とする。
【0006】
上記のような問題点が存在するため、現在の歩行ロボットを安定に歩行させるためには多くの情報と計算が必要であり、その構造が複雑である。さらに、整備されていない未知の不整地においては、ロバストな歩行は困難であった。
【0007】
そこで、未知の環境においてもロバストな歩行を実現すべく、軌道計画ベースでない歩行制御が提案されている。すなわち、従来の軌道計画ベースの手法ではロボットが体全体の動きを制御することによってバランスを維持していたのに対し、足で地面に加える力を積極的に操作する(つまり、踏ん張る)ことによってバランスを維持する手法である。
【0008】
例えば、非特許文献1〜4においては、関節サーボレベルの軌道制御ではなくロボット全体の角運動量を被制御量とする手法が提案されている。これらの手法では,ロボットの軌道計画は行なわれず、角運動量が直接フィードバック制御されるため,前記2)の軌道制御の厳密な追従性は要求されないという利点がある。
【0009】
しかし、角運動量のフィードバックを構成するためには、ロボットの関節の速度/角速度と全体の角運動量を関係づける動特性を、やはり予め正確に知っておく必要がある。さらに、これらの手法では絶対座標系から見たロボットの位置姿勢が既知であることが暗黙の前提になっており、未知の環境においては、ロボットの絶対位置姿勢を計測するための傾斜角センサ、加速度センサ、ジャイロセンサ、カメラなどが必要となる。さらに、ロボットが足以外からも外力を受ける(腕で壁を押している等)場合には、その力が角運動量に及ぼす影響も、力センサを用いるなどして陽に知っていなければならない。
【0010】
一方、特許文献1においては、ロボットの足関節トルクを操作量、足関節トルクの積分値を被制御量とする手法が提案されている。これは、多脚歩行式移動装置ではなく、単脚のみを有する装置のバランス維持のみを目的としているものの、未知の環境においてもロバストなバランス維持制御(オートバランス制御)を実現している。
【0011】
しかし、上記の制御装置をそのまま、複数の脚を有する多脚歩行式移動装置に適用することは困難である。そこで、上記制御装置を2本の脚を有する二脚歩行式移動装置(二足歩行ロボット)に拡張した方法が提案されている(非特許文献5及び非特許文献6参照)。
【0012】
上記制御手法は、ロボット全体の重心に印加する一般化力を操作量とし、二脚歩行式移動装置が両脚で接地している状態において、各脚の床反力中心(CoP:Center of Pressure)を統合すべく独自に定義したCoPを被制御量とするものである。これによって、二脚歩行式移動装置においてロバストなオートバランス制御を実現しているが、未だ次のような問題点を有する。
【0013】
1)床反力センサによるCoP導出の困難さ
上記制御手法においては、両脚を統合するCoPを導出する際に、両脚が同一平面上に接地していることを前提としている。この場合は、床反力の垂直成分のみを計測することで導出できる。しかし、両脚が同一平面上でない不整地に接地する場合(図4参照)、床反力の全ての成分(三次元空間なら、6方向×2脚=12軸の力・トルク)を計測する必要がある。これは、両脚それぞれに、高価で壊れやすい6軸力センサを設置しなければならないことを意味する。
【0014】
2)ハイブリッド化の困難さ
一般に、多脚歩行式移動装置が歩行するためには、「歩容生成機能」と「バランス維持機能」の二つの機能が重要である。ここで、歩容生成機能とは、現在位置から目的地までどのようなルートを通って進むのか、およびそのルートに沿って歩行するためには左右の脚部あるいは足部をどのように動かせばよいのかを計画する機能である。また、バランス維持機能とは、停止中または歩行中の転倒を防ぐための機能である。
この二つの機能のうち、バランス維持機能については、オートバランス制御として上記制御手法等の足関節トルクを操作量とする制御手法を適用することによって実現することができる。しかし、オートバランス制御だけでは歩容生成機能は実現できないので、歩容生成機能を実現する適切な脚部制御を導入し、オートバランス制御と脚部制御を同時に実行可能とするハイブリッド化を必要とする場合がある。
【0015】
しかし、上記制御手法では、両脚を統合するCoPを被制御量とし、オートバランス制御はこのCoPの目標軌道を介して実現されているため、オートバランス制御以外の脚部制御を同時に実現したい場合には、以下の二つの方法のいずれかを用いることになる。
【0016】
一つ目は、非特許文献5および6において採用されている方法である。すなわち、CoPの目標軌道を変更することで間接的に重心の移動を操作できるので、これを利用して他の脚部制御を導入する。しかし、この方法ではオートバランス制御と他の脚部制御とを独立に扱うことができず、オートバランス制御を介して他の脚部制御を行なうことになる。
【0017】
二つ目は、脚部制御入力のうち、ロボット全体の重心移動に影響しない脚の動作のみを抽出して適用する方法である。この方法によれば、重心移動に影響しない動作のみについては、任意の脚部制御によって素早い動作が実現できる。
【0018】
以上、二つの方法を組み合わせれば、上記制御手法によっても一応のハイブリッド化は可能であるが、非特許文献5に指摘されているように、オートバランス制御を介する脚部制御は緩慢な応答とならざるを得ず、歩行の実現という観点からは十分なものではなかった。
【先行技術文献】
【特許文献】
【0019】
【特許文献1】特許第3637387号公報
【非特許文献】
【0020】
【非特許文献1】古荘,山田,「角運動量を考慮した2足歩行ロボットの動的制御(両脚支持期に蹴りを行なう歩行)」,計測自動制御学会論文集,vol.22,no.4,pp.451〜456,1986
【非特許文献2】佐野,古荘,「角運動量制御による2足歩行ロボットの3次元動歩行」,計測自動制御学会論文集,vol.26,no.4,pp.459〜466,1990
【非特許文献3】水戸部,矢島,那須,「ゼロモーメント点の操作による歩行ロボットの制御」,日本ロボット学会誌,vol.18,no.3,pp.359〜365,2000
【非特許文献4】水戸部,益山,柴田,山野,那須,「歩行ロボットの床圧・摩擦力に基づくZMP操作および角運動量制御への応用」,日本ロボット学会誌,vol.20,no.5,pp.515〜520,2002
【非特許文献5】伊藤,浅野,川崎,「床反力中心制御による2足歩行系両脚支持期の重心移動」,日本ロボット学会誌,vol.22,no.4,pp.535〜542,2004
【非特許文献6】古田,天野,伊藤,「CoPの軌道追従による足踏み運動制御」,第8回計測自動制御学会システムインテグレーション部門講演会講演論文集,pp.817〜818,2007
【発明の概要】
【発明が解決しようとする課題】
【0021】
そこで、本発明が解決しようとする課題は、不整地のような未知の環境においても、任意の脚部制御とオートバランス制御とのそれぞれを同時に実行可能とする多脚歩行式移動装置のハイブリッド制御装置及び手法を提供することである。
【課題を解決するための手段】
【0022】
上記課題を解決するために、本発明に係る多脚歩行式移動装置は、
複数の脚で歩行する多脚歩行式移動装置において、
脚が、任意の脚部制御と、バランス維持を自動で行なうためのオートバランス制御とを同時に実行するハイブリッド制御装置を備え、
ハイブリッド制御装置は、足部の接地状態に応じて脚部制御とオートバランス制御との非干渉化を静力学的に行なう。
【0023】
好ましくは、
脚は、脚部制御が作用する関節アクチュエータ(LCA)と、オートバランス制御が作用する関節アクチュエータ(ACA)とを、独立に備える。
【0024】
好ましくは、
ハイブリッド制御装置は、単一の脚において、それぞれの足部の接地状態に応じて、足部が完全に離地している遊脚相、足部が完全に接地している立脚相、および遊脚相から立脚相に遷移する過程としての接地相、の三つの相を持ち、それらの相遷移に応じて、ACAに適用する制御をオートバランス制御と適切な制御との間で切り替える。
【0025】
好ましくは、
ハイブリッド制御装置は、すべての脚のうち、遊脚相にない脚が2本以上ある場合に、LCAに適用する脚部制御の非干渉化を行ない、それ以外の場合には適切に非干渉化の有無を切り替える。
【0026】
好ましくは、
ハイブリッド制御装置は、LCAにおける脚部制御の非干渉化の切り替えを、制御則における重み係数を適切に調整することによって行なう。
【0027】
好ましくは、
ハイブリッド制御装置は、ACAにおけるオートバランス制御と適切な制御との切り替えを、制御則における重み係数とオフセット値と積分項の積分開始時刻を適切に調整することによって行なう。
【0028】
好ましくは、
脚の足底は、接地状態を検出するセンサを備え、接地状態を検出するセンサと、LCAおよびACAに設置された角度センサの値に応じて、脚部制御とオートバランス制御との非干渉化を行なう。
【0029】
また、本発明に係る多脚歩行式移動装置の制御手法は、
複数の脚で歩行する多脚歩行式移動装置の制御手法において、
脚が、任意の脚部制御と、バランス維持を自動で行なうためのオートバランス制御とを同時に実行するハイブリッド制御手法であって、
足部の接地状態に応じて脚部制御とオートバランス制御との非干渉化を静力学的に行なう。
【0030】
好ましくは、
脚は、脚部制御を実行する関節アクチュエータ(LCA)と、オートバランス制御を実行する関節アクチュエータ(ACA)とを、独立に備え、
単一の脚において、それぞれの足部の接地状態に応じて、足部が完全に離地している遊脚相、足部が完全に接地している立脚相、および遊脚相から立脚相に遷移する過程としての接地相、の三つの相を持ち、それらの相遷移に応じて、ACAに適用する制御をオートバランス制御と適切な制御との間で切り替える。
【0031】
好ましくは、
すべての脚のうち、遊脚相にない脚が2本以上ある場合に、LCAに適用する脚部制御の非干渉化を行ない、それ以外の場合には適切に非干渉化の有無を切り替える。
【0032】
好ましくは、
LCAにおける脚部制御の非干渉化の切り替えを、制御則における重み係数を適切に調整することによって行なう。
【0033】
好ましくは、
ACAにおけるオートバランス制御と適切な制御との切り替えを、制御則における重み係数とオフセット値と積分項の積分開始時刻を適切に調整することによって行なう。
【発明の効果】
【0034】
本発明は、任意の脚部制御と、バランス維持を自動で行なうためのオートバランス制御とを同時に実行するハイブリッド制御装置を備え、ハイブリッド制御装置は、足部の接地状態に応じて脚部制御とオートバランス制御との非干渉化を静力学的に行なう。
【0035】
これにより、多脚歩行式移動装置において、未知の環境でもロバストな歩容生成を実現する脚部制御を適用し得ると共に、ロバストなバランス維持機能を実現するオートバランス制御を同時に実行できる。本発明によれば、動力学モデル、軌道計画、軌道制御、多くのセンサ情報を必須とせずに、未知の不整地におけるロバストな歩行を実現可能である。
【図面の簡単な説明】
【0036】
【図1】矢状面上における二足歩行ロボットを示すモデル図。
【図2】制御機構の構成を示す説明図。
【図3】単脚支持期における二足歩行ロボットを示すモデル図。
【図4】両脚支持期における二足歩行ロボットを示すモデル図。
【図5】遊脚相において、(A)は足部を示すモデル図、(B)はオートバランス制御のフローチャート図。
【図6】接地相において、(A)は足部を示すモデル図、(B)はオートバランス制御のフローチャート図。
【図7】立脚相において、(A)は足部を示すモデル図、(B)はオートバランス制御のフローチャート図。
【図8】足部機構を説明するモデル図。
【発明を実施するための形態】
【0037】
以下、図面にもとづいて、本発明に係る多脚歩行式移動装置のハイブリッド制御装置及び手法の実施形態について説明する。
【0038】
[基本概念]
慣性系の絶対位置に固定された基準座標系をΣとし、多脚歩行式移動装置のボディの代表位置に原点を持ち、多脚歩行式移動装置のボディに固定されたボディ座標系をΣとする。特に断りがない限り、以下のベクトル及び行列は、基準座標系Σからではなくボディ座標系Σから見た表現とする。
【0039】
本実施形態では、説明を簡単にするため、二脚歩行式移動装置(二足歩行ロボット)を採用し、矢状面(側面視)の二次元平面上の運動に限定する(図1)。但し、本実施形態の手法は、多脚歩行式移動装置の三次元空間上での運動に拡張でき、一般性を失わない。
【0040】
多脚歩行式移動装置の足i(二足歩行ロボットの場合、i=a,b)が接地した状態において、足iに、実質的な足底としての「仮想足底平面」を定義する。ここで、「仮想足底平面」とは、整地あるいは不整地において地面に接地する接地点を全て含む(通る)平面をいう。
【0041】
各足の足底平面に固定されたそれぞれの足底座標系ΣiFについて、足底平面をxiFiF平面、足先が向く前方をxiF軸正方向、足底平面の法線上方をyiF軸正方向、ziF軸は右手系をなす方向と定義する。
【0042】
このとき、xiF軸まわりの回転はロール回転、ziF軸まわりの回転はピッチ回転、yiF軸まわりの回転はヨー回転となる。三次元空間上では、このうちのロール回転・ピッチ回転が足iの「オートバランス制御軸」となる。即ち、オートバランス制御軸とは、足底座標系上におけるオートバランス制御のための自由度をいう。そして、矢状面上に限定すれば、ピッチ回転のみが足iのオートバランス制御軸となる。
【0043】
足底座標系ΣiFの原点は、仮想足底平面上の任意の位置に設定する(但し、できるだけ足底の中央に置くことが好ましい)。この原点は、床反力代表点として用いられ、ボディ座標系Σからみた位置姿勢は、
【0044】
【数1】

と表現する。ここで、mは空間自由度を表し、三次元空間ではm=6、二次元平面ではm=3である。
【0045】
ここからは、運動を矢状面上に限定(m=3)した二足歩行ロボット(i=a,b)について説明する。各脚の関節数nは、最低3自由度(n≧3)必要である(三次元空間上の歩行ロボットであればn≧6である。即ち、各脚最低m=6自由度必要である。)。このとき、以下のように変数を定義する。
【0046】
【数2】

但し、tは現在時刻である。nACは各足のオートバランス制御軸数とし、前記の通り、二次元平面上ではnAC=1であり、三次元空間上ではnAC=2である。
【0047】
尚、上記の床反トルクτGRは、ロボットの足が地面に対して反作用として及ぼしているトルクを示す。従って、床反トルクτGRは、足底に働く床反力分布を検出する床反力センサの測定値から算出できる。
【0048】
ここからは、各脚が3自由度(n=n=3)を有する実施形態について説明する。尚、各脚がそれ以上の自由度数を有していても、三次元空間上でも以下の説明は同様に成立する。
【0049】
[制御機構]
図2にもとづき、各脚の制御機構の構成について説明する。各脚は、三つの関節アクチュエータLCA1,LCA2,ACAを備えており、各関節アクチュエータLCA1,LCA2,ACAに第1リンク部10、第2リンク部11及び足部5が連結されている。多脚歩行式移動装置は、この脚を二つ以上備えており、関節アクチュエータLCA1が胴部(ボディ)に連結される。
【0050】
そして、各脚は、所定の関節アクチュエータによって、任意の脚部制御とオートバランス制御とを行なうようになっている。このように、任意の脚部制御とオートバランス制御とをそれぞれ同時に実行する制御のことを、「ハイブリッド制御」という。
【0051】
例えば(下記の関節空間における制御では)、足部5における足関節(第3関節)の関節アクチュエータACAがオートバランス制御を行ない、それ以外の関節(第1関節及び第2関節)の関節アクチュエータLCA1,LCA2が任意の脚部制御を行なう。関節アクチュエータLCA1,LCA2,ACAは、関節変位センサ3,6,7によって関節変位が検出される。
【0052】
関節アクチュエータLCA1,LCA2,ACAは、ハイブリッド制御装置1及び関節アクチュエータ駆動装置3,6,7によって制御される。ハイブリッド制御装置1は、コントローラ20を操作することで、例えば関節アクチュエータLCA1,LCA2を任意のトルクで駆動し、任意の脚部制御を実行できる。
【0053】
さらに、ハイブリッド制御装置1は、バランスを維持するためのオートバランス制御プログラムにもとづいて、例えば関節アクチュエータACAを制御する。
【0054】
足部5は、足底に床反力センサ4を備える。床反力センサ4は、例えばシート状の圧力センサであって、シート面の法線方向が検出軸となっている。床反力センサ4は、測定した床反力分布をハイブリッド制御装置1に出力して、この測定値にもとづいて床反トルクτGRを算出する。
【0055】
[単脚支持期のオートバランス制御]
図3にもとづき、脚aが立脚(接地脚)、脚bが遊脚(非接地脚)の場合における、オートバランス制御について説明する。上記の通り、脚aのピッチ軸がオートバランス制御軸であるので、有効なオートバランス制御軸変位はθaACのみである。
【0056】
単脚支持期におけるオートバランス制御の目的は、床反トルクτaGR=0とすることである。この制御目的を実現するために、例えば、特許文献1に開示された制御手法を適用すると、単脚支持期のオートバランス制御トルク指令τaACsは、次の(1)式となる。
【0057】
【数3】

但し、次のように変数を定義する。
【0058】
【数4】

【0059】
尚、上記(1)式において、第1及び第2項は、関節変位センサで測定した角度を、予め定めた目標角度θaACdに制御するPD制御項であり、第3項は、床反トルクτaGR=0となるように制御する床反トルクの積分項である。
【0060】
[単脚支持期のハイブリッド制御(関節空間)]
次に、任意の脚部制御とオートバランス制御とをそれぞれ同時に実行するハイブリッド制御について説明する。ハイブリッド制御では、(1)式で定めたオートバランス制御トルク指令τaACsを、脚aのアクチュエータへτとして適切に分配する必要がある。さらに、この単脚オートバランス制御τaACsが作用しているときに、τに任意の脚部制御をも同時に作用させることがここでの目的である。任意の脚部制御によるトルク指令τaLCを次のように定める。
【0061】
【数5】

【0062】
関節空間におけるもっとも自然な分配は、特定の関節アクチュエータによってオートバランス制御を行ない、他の関節アクチュエータによって任意の脚部制御を行なうことである。即ち、立脚(脚a)のピッチ軸と平行なピッチ軸まわりに駆動する関節アクチュエータのうちのnAC=1個のアクチュエータをオートバランス制御アクチュエータ(ACA)とし、それ以外のn−nAC=2個のアクチュエータを脚部制御アクチュエータ(LCA)とする。
例えば、脚aの第3関節(足関節)をACAに選択したとすると、(1)式における関節変位は第3関節の変位であって、θaAC=qa3となる。
【0063】
単脚支持期のハイブリッド制御トルク指令τは、次の(2)式となる。
【0064】
【数6】

【0065】
(2)式では、関節アクチュエータLCA1,LCA2(第1及び第2関節)に作用するトルク指令τa1、τa2は、任意の脚部制御トルク指令τaLCが適用され(右辺第2項)、関節アクチュエータACA(第3関節)に作用するトルク指令τa3は、オートバランス制御トルク指令τaACsが適用される(右辺第1項)。
【0066】
従って、単脚支持期において、任意の脚部制御とオートバランス制御とが、各関節アクチュエータにおいて非干渉となる。但し、(2)式より、関節アクチュエータACAへのトルク指令においてはオートバランス制御が優先され脚部制御は無視されるため、脚部制御はそれを前提に行なうことが好ましい。
【0067】
[単脚支持期のハイブリッド制御(作業空間)]
次に、上記関節空間におけるハイブリッド制御とは別の手法について説明する。この方法では、ボディから見た脚a全体で、等価的にオートバランス制御トルク指令τaACsを発生させる。
【0068】
オートバランス制御軸は、ボディ座標系Σから見た足a仮想足底平面上の床反力代表点の一般化座標paFのうちの脚aのピッチ軸とする。即ち、(1)式におけるオートバランス制御軸変位はθaAC=θaF(ボディから見た仮想足底平面角度)となる。
【0069】
このとき、ボディ座標系Σから見たオートバランス制御軸変位θaAC=θaFと脚a関節変位(全ての関節の変位)qと、における速度間の関係を(3)式で表す。
【0070】
【数7】

但し、次のように変数を定義する。
【0071】
【数8】

【0072】
このとき、仮想仕事の原理によって、オートバランス制御トルク指令τaACsと静力学的に等価な脚aアクチュエータへの一般化力指令は、(4)式となる。
【0073】
【数9】

但し、
【0074】
【数10】

【0075】
(4)式により、単脚支持期のオートバランス制御が、立脚a全体の駆動力によって実現される。さらに、(4)式の脚a全体によるオートバランス制御に、静力学的に干渉しないように脚部制御を行なうハイブリッド制御は、(5)式のようになる。
【0076】
【数11】

(5)式において、
【0077】
【数12】

であり、ある行列による写影に直交する(干渉しない)方向の写影行列を定義する。
但し、
【0078】
【数13】

【0079】
上記の通り、(5)式では、直交写影行列を乗ずることにより、任意の脚部制御トルク指令τaLCのうち、オートバランス制御トルク指令τaACsに干渉しない成分のみを取り出すことになる。
【0080】
従って、単脚支持期において、任意の脚部制御とオートバランス制御とが非干渉となる。但し、(5)式より、関節アクチュエータACAへのトルク指令においてはオートバランス制御が優先され、脚部制御のうちのオートバランス制御に干渉する成分は無視されるため、脚部制御はそれを前提に行なうことが好ましい。
【0081】
[両脚支持期のオートバランス制御]
次に、図4にもとづき、脚a,bがともに立脚の場合のオートバランス制御について説明する。このとき、立脚a,bのピッチ軸がオートバランス制御軸であり、有効なオートバランス制御軸変位はθACである。
【0082】
両脚支持期におけるオートバランス制御の目的は、床反トルクτGR=0とすることである。この制御目的を実現するために、例えば、特許文献1に開示された制御手法を拡張して適用すると、両脚支持期のオートバランス制御トルク指令τACdは、次の(6)式となる。
【0083】
【数14】

但し、次のように変数を定義する。
【0084】
【数15】

【0085】
但し、(6)式では、ゲインを対角行列にすることで、脚a,bのそれぞれにおいて、オートバランス制御を独立に適用している。この拡張は、特許文献1の手法と異なる。
【0086】
[両脚支持期のハイブリッド制御]
次に、ハイブリッド制御について説明する。ハイブリッド制御では、(6)式で定めたオートバランス制御トルク指令τACdを、脚a,bのアクチュエータへτ,τとして適切に分配する必要がある。さらに、この両脚オートバランス制御τACdが作用しているときに、τ,τに任意の脚部制御をも同時に作用させることがここでの目的である。
【0087】
単脚支持期と同様に、その分配方法として関節空間と作業空間の二種類が挙げられるが、作業空間においてオートバランス制御を分配すると、両脚のオートバランス制御が共にボディを直接駆動しようとするので、両脚のオートバランス制御を非干渉にできず(互いに影響し合う)、バランスを維持できない。従って、両脚支持期における分配は、関節空間において行なう。
【0088】
例えば、脚a,bのそれぞれ第3関節(足関節)をACAに選択したとすると、(6)式における変位は、次の(7)式となる。
【0089】
【数16】

【0090】
また、ACA変位を表わす一般化座標ベクトルをq、LCA変位を表わす一般化座標ベクトルをqとすると、次の(8)式のように定義できる。
【0091】
【数17】

【0092】
また、ACAを駆動する一般化力ベクトルをτ、LCAを駆動する一般化力ベクトルをτとすると、次の(9)式のように定義できる。
【0093】
【数18】

【0094】
LCAに作用させる任意の脚部制御τLCを、次の(10)式のように定義する。これは、τaLC,τbLCからLCAへの制御入力のみを取り出している。
【0095】
【数19】

【0096】
以上の準備のもとに、関節空間におけるハイブリッド制御則を導出する。まず、運動学的拘束条件を定義する。両脚支持期においては、両脚が接地しているために、全ての脚の関節が自由に動けるわけではなく、自由度が拘束されている。すなわち、両脚の全自由度(n+n)の内、足が地面に固定されていることによりm自由度が拘束されるため、両脚支持期に脚に残されている自由度は(n+n−m)=3である。この拘束条件は、関節速度の拘束式として次の(11)式で表現できる。
【0097】
【数20】

但し、次のように変数を定義する。
【0098】
【数21】

【0099】
上記の拘束条件のもとで、qを動かすことによって間接的にqを動かすことを考える。このとき、(11)式より、次の(12)式を導出できる。
【0100】
【数22】

ここで、
【0101】
【数23】

【0102】
また、自由度数に関する考察によって、
【0103】
【数24】

【0104】
であることが分かるので、(12)式は、次の(14)式となる。
【0105】
【数25】

但し、
【0106】
【数26】

とした。仮想仕事の原理より、次の(16)式を導出できる。
【0107】
【数27】

【0108】
(16)式は、両脚支持期の拘束条件(11)式の下で、τと静力学的に等価なτを表す式である。
【0109】
以上の幾何学的考察をもとに、両脚支持期におけるハイブリッド制御則を導出する。
【0110】
【数28】

ここで、
【0111】
【数29】

但し、
【0112】
【数30】

【0113】
拘束条件(11)下においては、τが幾何学的拘束を通じてτに影響するが、上記(18)式のように直交写影行列を乗ずることにより、任意の脚部制御τLCのうち、静力学的にオートバランス制御τACdに干渉しない成分のみを取り出す。
【0114】
従って、(17)式及び(18)式を適用することにより、任意の脚部制御とオートバランス制御とが非干渉になるようにハイブリッド化できた。ACAはオートバランス制御を行ない、LCAは任意の脚部制御を、静力学的にオートバランス制御に影響を与えない範囲で実現する、というハイブリッド化が可能となった。ただし、ACAへの指令においてはオートバランス制御が優先され、脚部制御のうちのオートバランス制御に干渉する成分は無視されるので、脚部制御はそれを前提に行なうことが好ましい。
【0115】
[歩行動作におけるハイブリッド制御]
上記では、単脚支持期及び両脚支持期において、任意の脚部制御とオートバランス制御とを同時に実行するハイブリッド制御について説明した。ここで、二足歩行の動作は、単脚支持期から両脚支持期、両脚支持期から単脚支持期への遷移であるので、上記にもとづいて、二足歩行におけるハイブリッド制御について説明する。
尚、ここでは簡単のため脚は二本(二足歩行)であるとして議論を進めるが、三本以上の脚による歩行についても以下の説明は同様に成立する。
【0116】
二足歩行では、単脚支持期と両脚支持期との間におけるハイブリッド制御が、スムーズに実行されることが好ましい。そこで、脚部制御とオートバランス制御とのそれぞれについて、単脚支持期、両脚支持期及びそれらの遷移の挙動を以下に定義する。
【0117】
尚、上記の通り、両脚支持期を考慮して、ハイブリッド制御は、関節空間において行われるものとする。
【0118】
[歩行動作における脚部制御]
先ず、二足歩行時の脚部制御について、両脚支持期のハイブリッド制御則(18)式を参考にして、次の(19)式を定義する。
【0119】
【数31】

但し、次のように変数を定義する。
【0120】
【数32】

【0121】
このとき、二足歩行を滑らかに行なうために、次のように重み係数wLCwを切り換える。
【0122】
【数33】

【0123】
ここで、両脚支持期では、両脚a,bにおける脚部制御がオートバランス制御に干渉しないように、上記(19)式を上記(18)式と等価とするよう、両足が地面に接地した時点で既にwLCwの変化が完了し、wLCw=1となっていなければならない。
【0124】
また、単脚支持期では、上記(2)式より、どのような脚部制御を行なっても静力学的にはオートバランス制御と干渉しないので、脚部制御をそのまま実行できるように、単脚支持期開始からwLCwの変化を開始させ、所定時間でwLCw=0とする(wLCw→0)。
ここで、不連続なトルク指令を与えないよう、これらの遷移におけるwLCwの変化は滑らかであることが望ましい。
尚、無脚支持期とは、両足が地面に接地していない状態(ジャンプ等)をいう。
【0125】
[歩行動作におけるオートバランス制御]
次に、二足歩行時のオートバランス制御について、両脚支持期のオートバランス制御則(6)式を参考に、次の(20)〜(22)式のように定義する。
【0126】
【数34】

但し、変数を次のように定義する。
【0127】
【数35】

【0128】
(21)式及び(22)式は、(20)式の右辺第3項を脚a,bについて表したものである。(21)式及び(22)式について、右辺第2項は、(6)式の右辺第3項と同様に床反力トルクの積分項である。また、後述の通り、(21)式及び(22)式について、右辺第1項は、足部5を所定の角度に保持するための積分項であり、右辺第3項は、下記各相でトルク指令の連続性を確保するために適切に定めるオフセット項である。
【0129】
そして、以下に説明する通り、重み係数及びオフセット値を切り換えることにより、二足歩行におけるオートバランス制御を実現する。尚、上記(2)式及び(17)式の通り、オートバランス制御においては、脚部制御の切り替えと異なり、単一の脚のみに着目すればよい。以下では、脚aについて着目して説明するが、このとき脚bが(下記の三つの相のうち)どの相にあるかは、オートバランス制御についての議論には関係しない。また、脚bに着目した場合にも、以下の議論は同様に成立する。
【0130】
二足歩行の動作において、立脚相、遊脚相、接地相の三つの相に分けてオートバランス制御を切り替える。「立脚相」とは、足部5が完全に地面に接地している状態をいう(図7(A))。「遊脚相」とは、足部5が完全に地面に接地していない(浮いている)状態をいう(図5(A))。「接地相」とは、遊脚相から遷移して足部5の一部が地面に接地している状態をいい(図6(A))、立脚相から遷移して足部5の一部が地面に接地している状態は含まない(立脚相が継続していると見なす)ものとする。
【0131】
[立脚相]
脚aが立脚である場合、ACAがオートバランス制御を実行するように、(21)式の重み係数を、次の(23)式とする。
【0132】
【数36】

【0133】
(23)式の重み係数によって、(20)式は、ACAにオートバランス制御を行なう。
オフセット値caACwは、現在の立脚相への遷移における最終値を保持する。つまり、このオフセット値caACwは立脚相では定数なので、トルク指令の積分項によって時間の経過とともにキャンセルされる。その積分項の積分開始時刻ta0には、現在の立脚相の開始時刻をとる。
【0134】
[遊脚相]
脚aが遊脚である場合、ACAがオートバランス制御を行なう必要はないので、代わりに例えば角度制御を適用するように、(21)式の重み係数を、次の(24)式とする。
【0135】
【数37】

【0136】
(24)式の重み係数によって、(20)式では、ACAはオートバランス制御を行なわずに、遊脚のACAに対して関節変位に関するPID制御を行なうことになる。
オフセット値caACwは、現在の遊脚相への遷移における最終値を保持する。つまり、このオフセット値caACwは遊脚相では定数なので、トルク指令の積分項によって時間の経過とともにキャンセルされる。その積分項の積分開始時刻ta0には、現在の遊脚相の開始時刻をとる。
【0137】
尚、この遊脚相において、脚部制御における(19)式の重み係数がwLCw≠0の場合には、例えば、前記のように、現在の遊脚相の開始時刻を脚部制御における単脚支持期への遷移開始とみなして、そこから所定の時間幅をもって滑らかにwLCw→0とすることができる。
【0138】
[立脚相→遊脚相]
脚aが立脚相から遊脚相へ遷移する場合(図5(B))、足部5の一部でも接地していれば立脚相が継続しているとみなされるので(上記「立脚相」の定義参照)、足部5が完全に地面から離れた瞬間に遊脚相へ遷移する。従って、この遷移は、時間的な幅を持たず、以下の変化は全て遷移の瞬間に行なわれる。
【0139】
この場合、ACAがオートバランス制御からPID制御に切り替わればよい(図5(B)のステップS61)ので、(21)式の重み係数は、次の(25)式のように切り替える(図5(B)のステップS60)。
【0140】
【数38】

【0141】
但し、(25)式だけでは、立脚相から遊脚相への制御則の切り替え時において、制御トルク指令τACwが不連続となる。即ち、(21)式のτaACwIFの値が、切り替え時(遷移の瞬間)において不連続となる。
【0142】
そこで、次のように連続性を確保する(図5(B)のステップS60)。即ち、立脚相から次の遊脚相では、遷移の瞬間における(21)式のτaACwIFの値を新たなオフセット値caACwとし、次の遊脚相の間はこの新たなオフセット値を保持する。さらに、次の遊脚相では、(21)式の積分項の積分開始時刻ta0は遊脚相の開始時刻に設定されるので、遊脚相開始時の積分項の初期値は0となる。これらによって、次の遊脚相におけるτaACwIFの初期値と、前の立脚相におけるτaACwIFの最終値との連続性が確保され、ACAは滑らかにオートバランス制御からPID制御に移行できる。
【0143】
そして、遊脚相においては、足5の接地状態を床反力センサ4で検知して、足底の一部でも接地していれば接地相へ遷移し、全く接地していなければ上記PID制御を継続して行なう(図5(B)のステップS62)。
【0144】
[遊脚相→接地相]
脚aが遊脚相から接地相へ遷移する場合(図6(B))、遊脚相から足部5の一部でも接地した瞬間に接地相へ遷移する。但し、下記の通り、この遷移における変化は、瞬間では完了せずに時間幅を有することとする。
【0145】
即ち、オートバランス制御トルク指令τACwが滑らかに変化するように、(21)式の重み係数及びオフセット値を、時間幅をもって次の(26)式のように変化させる(図6(B)のステップS70)。
【0146】
【数39】

【0147】
つまり、(21)式のτaACwIFの値を0とすることで、オートバランス制御則(20)式はPD制御(右辺第1及び第2項)に切り替わる(図6(B)のステップS71)。このPD制御により、ACAは、バネダンパ手段のように接地面に倣うことになる。そして、必要に応じてPD制御ゲインを適切に設定することで、接地相において、立脚相に遷移しやすいようにできる。積分項の積分開始時刻ta0は、前の遊脚相の開始時刻をそのまま保持するものとする。
【0148】
そして、接地相においては、足部5の接地状態を床反力センサ4で検知して、足底の全部が接地していれば立脚相へ遷移し、全部が接地しなければ、一部が接地しているか判定する(図6(B)のステップS72)。そして、足底の一部が接地していれば、上記のPD制御を継続して行ない、全く接地していなければ遊脚相へ遷移する(図6(B)のステップS73)。
【0149】
[接地相→立脚相]
脚aが接地相から立脚相へ遷移する場合(図7(B))、足部5の一部のみが接地した状態から、足部5が完全に接地した瞬間に立脚相へ遷移する。従って、この遷移は、時間的な幅を持たず、以下の変化は全て遷移の瞬間に行なわれる。
【0150】
この場合、ACAをオートバランス制御に切り替えるので(図7(B)のステップS51)、(21)式の重み係数は、次の(27)式のように切り替える(図7(B)のステップS50)。
【0151】
【数40】

【0152】
但し、(27)式だけでは、接地相から立脚相への切り替え時において、オートバランス制御トルク指令τACwが不連続となるので、次のように連続性を確保する(図7(B)のステップS50)。即ち、遷移の瞬間における(21)式のτaACwIFの値を新たなオフセット値caACwとし、次の立脚相の間はこの新たなオフセット値を保持する。さらに、次の立脚相では、(21)式の積分項の積分開始時刻ta0は立脚相の開始時刻に設定されるので、立脚相開始時の積分項の初期値は0となる。これらによって、次の立脚相におけるτaACwIFの初期値と、前の接地相におけるτaACwIFの最終値との連続性が確保され、ACAは滑らかにオートバランス制御に移行できる。
【0153】
そして、立脚相においては、足部5の接地状態を床反力センサ4で検知して、足底の一部でも接地していれば上記のオートバランス制御を継続して行ない、足底が全く接地しなければ遊脚相へ遷移する(図7(B)のステップS52)。
【0154】
尚、この接地相から立脚相への遷移が、脚部制御における単脚支持期から両脚支持期への遷移となる場合には、両脚支持期の開始時には脚部制御における(19)式の重み係数wLCw=1となっている必要があるので、この直前の遊脚相から接地相への遷移において脚部制御における重み係数の変化が完了している必要がある。仮に、遊脚相から接地相への遷移の時間幅内で脚部制御の重み係数の変化wLCw→1が完了していない場合には、完了してwLCw=1となるまで、オートバランス制御における接地相から立脚相への遷移を待機させる必要がある。
【0155】
[接地相→遊脚相]
脚aが接地相から遊脚相へ遷移する場合(図5(B))、足部5の一部のみが接地した状態から、足部5が完全に地面から離れた瞬間に遊脚相へ遷移する。従って、この遷移は、時間的な幅を持たず、以下の変化は全て遷移の瞬間に行なわれる。
【0156】
この場合、ACAがPID制御に切り替わればよいので(図5(B)のステップS61)、(21)式の重み係数は、次の(28)式のように切り替える(図5(B)のステップS60)。
【0157】
【数41】

【0158】
但し、(28)式だけでは、接地相から遊脚相への切り替え時において、制御トルク指令τACwが不連続となるので、次のように連続性を確保する(図5(B)のステップS60)。即ち、遷移の瞬間における(21)式のτaACwIFの値を新たなオフセット値caACwとし、このオフセット値を保持する。さらに、次の遊脚相では、(21)式の積分項の積分開始時刻ta0は遊脚相の開始時刻に設定されるので、遊脚相開始時の積分項の初期値は0となる。これらによって、次の遊脚相におけるτaACwIFの初期値と、前の接地相におけるτaACwIFの最終値との連続性が確保され、ACAは滑らかにPID制御に移行できる。
【0159】
そして、遊脚相においては、足5の接地状態を床反力センサ4で検知して、足底の一部でも接地していれば接地相へ遷移し、全く接地していなければ上記PID制御を継続して行なう(図5(B)のステップS62)。
【0160】
[足部機構]
次に、図8にもとづいて、足部5の機構について説明する。本実施形態では、足部5の足底に、立設する三つの接地片50が三角形状の頂点に配設された三点支持構造となっている。
接地片50は、地面に向かって窄んだ形状となっている(例えば、円錐状や半球状等)。そして、各接地片50の下端部が地面に接地することで立脚する。
【0161】
各接地片50は、三つの接地点50aで形成される仮想足底平面5aの法線方向に作用する床反力を検出する一軸力センサ50bを備える。この構成において、オートバランス制御軸まわりの床反トルクτGRについて説明する。
【0162】
床反トルクτGRは、上記の通り、足部5が地面に対して反作用として及ぼすトルクを表す。これは、ZMPとほぼ等価な値であり、多くの二足歩行ロボットでは、これを三次元空間で測定するために、6軸力/トルクセンサを各脚の足底に配置している。しかし、一般に6軸力/トルクセンサは高価で壊れやすく取り扱い難い。
【0163】
しかし、本実施形態では、オートバランス制御軸を仮想足底平面上に置くことで、床反トルクτGRの測定は簡略化され、6軸力/トルクセンサを必要としない。本発明者は、この足部機構に関して、PCT国際出願PCT/JP2008/055737およびPCT/JP2008/057247として提案している。力センサ、仮想足底平面、オートバランス制御軸は、図8のようになる。但し、以下のように変数を定義する。
【0164】
【数42】

【0165】
このとき、足部5が受ける床反トルクは、次の(30)式となる。
【0166】
【数43】

【0167】
本実施形態では、力センサにおいて、仮想足底平面の法線方向の力しか必要としないので、力センサの計測値は、次の(31)式のように書ける。
【0168】
【数44】

【0169】
(31)式を(30)式に代入すると、測定される床反トルクは、次の(32)式となる。
【0170】
【数45】

【0171】
オートバランス制御軸まわりの床反トルクτGRのうち、足iの床反トルク
【0172】
【数46】

について、オートバランス制御軸(ロール)まわりのトルクが第1成分、オートバランス制御軸(ピッチ)まわりのトルクが第2成分とすると、本実施形態のオートバランス制御に用いられる床反トルクは次の(33)式となる。
【0173】
【数47】

負号は、床から受けるトルクに対するロボットからの反作用であることを表す。
【0174】
本実施形態の足部機構によれば、本発明において必要な床反トルクτGRが、三次元空間において各足三つの1軸力センサのみで測定できる。従って、この床反トルクを用いて本発明の制御を行なえば、6軸力/トルクセンサを設置することなく二足歩行できる。
【符号の説明】
【0175】
1 ハイブリッド制御装置
ACA,LCA 関節アクチュエータ
3,6,7 関節変位センサおよび関節アクチュエータ駆動装置
4 床反力センサ
5 足部
50 接地片
5a 仮想足底平面

【特許請求の範囲】
【請求項1】
複数の脚で歩行する多脚歩行式移動装置において、
前記脚が、任意の脚部制御と、バランス維持を自動で行なうためのオートバランス制御とを同時に実行するハイブリッド制御装置を備え、
前記ハイブリッド制御装置は、足部の接地状態に応じて前記脚部制御と前記オートバランス制御との非干渉化を静力学的に行なうことを特徴とする多脚歩行式移動装置。
【請求項2】
前記脚は、前記脚部制御が作用する関節アクチュエータ(LCA)と、前記オートバランス制御が作用する関節アクチュエータ(ACA)とを、独立に備えることを特徴とする請求項1に記載の多脚歩行式移動装置。
【請求項3】
前記ハイブリッド制御装置は、単一の前記脚において、それぞれの前記足部の接地状態に応じて、前記足部が完全に離地している遊脚相、前記足部が完全に接地している立脚相、および前記遊脚相から前記立脚相に遷移する過程としての接地相、の三つの相を持ち、それらの相遷移に応じて、前記ACAに適用する制御を前記オートバランス制御と適切な制御との間で切り替えることを特徴とする請求項2に記載の多脚歩行式移動装置。
【請求項4】
前記ハイブリッド制御装置は、すべての前記脚のうち、前記遊脚相にない前記脚が2本以上ある場合に、前記LCAに適用する前記脚部制御の前記非干渉化を行ない、それ以外の場合には適切に前記非干渉化の有無を切り替えることを特徴とする請求項3に記載の多脚歩行式移動装置。
【請求項5】
前記ハイブリッド制御装置は、前記LCAにおける前記脚部制御の前記非干渉化の切り替えを、制御則における重み係数を適切に調整することによって行なうことを特徴とする請求項4に記載の多脚歩行式移動装置。
【請求項6】
前記ハイブリッド制御装置は、前記ACAにおける前記オートバランス制御と適切な制御との切り替えを、制御則における重み係数とオフセット値と積分項の積分開始時刻を適切に調整することによって行なうことを特徴とする請求項3に記載の多脚歩行式移動装置。
【請求項7】
前記脚の足底は、前記接地状態を検出するセンサを備え、前記接地状態を検出するセンサと、前記LCAおよび前記ACAに設置された角度センサの値に応じて、前記脚部制御と前記オートバランス制御との前記非干渉化を行なうことを特徴とする請求項1〜6のいずれかに記載の多脚歩行式移動装置。
【請求項8】
複数の脚で歩行する多脚歩行式移動装置の制御手法において、
前記脚が、任意の脚部制御と、バランス維持を自動で行なうためのオートバランス制御とを同時に実行するハイブリッド制御手法であって、
足部の接地状態に応じて前記脚部制御と前記オートバランス制御との非干渉化を静力学的に行なうことを特徴とする多脚歩行式移動装置のハイブリッド制御手法。
【請求項9】
前記脚は、前記脚部制御を実行する関節アクチュエータ(LCA)と、前記オートバランス制御を実行する関節アクチュエータ(ACA)とを、独立に備え、
単一の前記脚において、それぞれの前記足部の接地状態に応じて、前記足部が完全に離地している遊脚相、前記足部が完全に接地している立脚相、および前記遊脚相から前記立脚相に遷移する過程としての接地相、の三つの相を持ち、それらの相遷移に応じて、前記ACAに適用する制御を前記オートバランス制御と適切な制御との間で切り替えることを特徴とする請求項8に記載のハイブリッド制御手法。
【請求項10】
すべての前記脚のうち、前記遊脚相にない前記脚が2本以上ある場合に、前記LCAに適用する前記脚部制御の前記非干渉化を行ない、それ以外の場合には適切に前記非干渉化の有無を切り替えることを特徴とする請求項9に記載のハイブリッド制御手法。
【請求項11】
前記LCAにおける前記脚部制御の前記非干渉化の切り替えを、制御則における重み係数を適切に調整することによって行なうことを特徴とする請求項10に記載のハイブリッド制御手法。
【請求項12】
前記ACAにおける前記オートバランス制御と適切な制御との切り替えを、制御則における重み係数とオフセット値と積分項の積分開始時刻を適切に調整することによって行なうことを特徴とする請求項9に記載のハイブリッド制御手法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2010−214511(P2010−214511A)
【公開日】平成22年9月30日(2010.9.30)
【国際特許分類】
【出願番号】特願2009−63461(P2009−63461)
【出願日】平成21年3月16日(2009.3.16)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成20年度、文部科学省、知的クラスター創成事業「岐阜・大垣地域(ロボティック先端医療クラスター)構想」、産業技術力強化法第19条の適用を受ける特許出願
【出願人】(593006630)学校法人立命館 (359)
【Fターム(参考)】