本発明の一実施形態を図1〜図26を参照して説明する。図1は本実施形態に係る脚体運動補助装具1を人Aに装着した状態を側面視で示し、図2は該脚体運動補助装具1を装着した人Aの下半身を正面視で示している。なお、図2では、説明の便宜上、人Aの各脚体の股関節、膝関節、足首関節を一点鎖線の円で表している。
これらの図1および図2において、脚体運動補助装具1(以下、単に補助装具1という)は、人Aの腰部に固定された腰装着部2と、人Aの左右の各脚体の足平部にそれぞれ固定された左右一対の足平装着部3,3と、これらの腰装着部2と左右の各足平装着部3,3とをそれぞれ連結する左右一対の脚リンク部4,4を備えている。なお、「左右」というのは、人Aの前方に向かって左右という意味である。
腰装着部2は、腰部の外周囲に巻き付けられて該腰部に固定されたベルト状の部材から構成され、その背面部には、後述のセンサ等を収容したセンサボックス5が固定されている。
各脚リンク部4は、センサボックス5から人Aの各脚体の股関節の側方箇所まで延設された腰リンク部材6と、この腰リンク部材6の先端から該股関節に対応する関節部位7(以下、股関節部位7という)を介して人Aの各膝関節のほぼ側方箇所まで延設された大腿リンク部材8と、この大腿リンク部材8の先端(下端)から該膝関節に対応する関節部位9(以下、膝関節部位9という)を介して人Aの各足首関節の側方箇所まで延設された下腿リンク部材10と、この下腿リンク部材10の先端(下端)から該足首関節に対応する関節部位11(以下、足首関節部位11という)を介して人Aの足平部の底面に向かって延設された足平リンク部材12とを備えている。この場合、各脚リンク部4は、人Aの各脚体の外側面側(左脚体の左側、右脚体の右側)で、概ね該脚体に沿うように延在している。
各足平装着部3は、その本体が、人Aの各足平部の底面に当接された概略板状の足平基体13から構成され、この足平基体13を人Aの足平部にベルト部材14で縛りつけることにより該足平部に固定されている。そして、該足平装着部3は、その足平基体13が脚リンク部4の足平リンク部材12の下端部に固定されると共に、ベルト部材14を介して足平リンク部材12に固定され、これにより、該脚リンク部4に連結されている。なお、図2ではベルト部材14を省略している。
この足平装着部3は、人Aの各脚体の着地期(各脚体の足平部に床反力を受ける時期)において、該脚体の足平部が足平装着部3の足平基体13上に載った状態で、該足平基体13が人Aの重量を受けつつ接地することとなる。従って、人Aの着地期において各足平部に作用すべき床反力は、その大部分(主に人Aの重量(重力)に釣り合う成分)が足平装着部2の足平基体13を介して人Aの足平部に作用し、脚リンク部4には作用しない。なお、足平装着部3は、例えば人Aの足平部に履かせる靴状のもので構成し、それを足平リンク部材12に固定するようにしてもよい。
各脚リンク部4の股関節部位7、膝関節部位9および足首関節部位11は、該脚リンク部4に対応する人Aの脚体の屈伸運動に伴う回転運動(図1の紙面に概ね垂直な軸廻り(より詳しくは後述の脚平面にほぼ垂直な軸廻り)の回転運動)が可能とされている。また、前記腰リンク部材6は、センサボックス5寄りの部分6aが硬質の剛体部材から構成されると共に、股関節部位7寄りの部分6bがゴム等の弾性材から構成されている。その弾性材部分6bは、人Aの脚体の外転・内転運動(脚体の大腿部を人Aの股関節でほぼ前後方向の軸廻りに回転させる運動)と旋回運動(脚体の大腿部を人Aの股関節でほぼ上下方向の軸心廻りに回転させる運動)とに応じて弾性変形するようになっている。これにより、各脚リンク部4の股関節部位7(ひいては各脚リンク部4の、股関節部位7から下側の部分)は、該脚リンク部4に対応する人Aの脚体の屈伸運動に応じて回転するだけでなく、人Aの脚体の外転・内転運動と旋回運動とに応じて動くことが可能となっている。また、詳細な構造説明は省略するが、下腿リンク部材10は、人Aの足平部の足首関節廻りの旋回運動(足平部を下腿部の軸心廻りに回転させる運動)に伴う足平装着部3の運動が可能なように構成されている。
なお、図1では、図示の便宜上、各脚リンク部4の大腿リンク部材8の軸心と人Aの大腿部の軸心とが同方向に向き、且つ、下腿リンク部材10の軸心と人Aの下腿部の軸心とが同方向に向くようになっているが、必ずしもそのようになっている必要はない。すなわち、各脚リンク部4の膝関節部位9の位置が、人Aの膝関節の側方箇所(真横)から前後方向あるいは上下方向に多少ずれていてもよい。
各脚リンク部4の股関節部位7および膝関節部位9には、それぞれの関節部位7,9に回転力を発生する回転力発生手段としての電動モータ15,16が取り付けられている。これらの電動モータ15,16はそれぞれ、各脚リンク部4の外側面側に配置されている。この場合、電動モータ15は、前記腰リンク部材6に対して大腿リンク部材8を股関節部位7の回転軸心廻りに回転させる回転力(トルク)を発生可能であり、電動モータ16は、大腿リンク部材8に対して下腿リンク部材10を膝関節部位9の回転軸心廻りに回転させる回転力(トルク)を発生可能である。なお、回転力発生手段は、電動モータの代わりに、例えば空圧アクチュエータ等により構成してもよい。
また、図2に示すように、各脚リンク部4の大腿リンク部材8の内側面(人Aの大腿部に臨む面部)と、人Aの大腿部との間には、該大腿部の上部および下部の周囲に巻き付けられたベルト部材17,18を介して該大腿部に固定されたプレート部材19が配置されている。このプレート部材19は、図示を省略するスライド機構を介して大腿リンク部材8に取り付けられ、該大腿リンク部材8の軸心方向(股関節部位7と膝関節部位9とを結ぶ線分方向)で該大腿リンク部材8に対して移動自在とされている。従って、大腿リンク部材8は、プレート部材19およびベルト部材17,18を介して人Aの大腿部に連結されている。そして、このプレート部材19と大腿リンク部材8との間には、大腿リンク部材8がプレート部材19を介して人Aの大腿部から受ける並進力(大腿部リンク部材8の軸心方向に直交する方向の並進力)あるいはその反力を検出する力センサ20と、該プレート部材19の大腿リンク部材8に対する移動量を検出する変位センサ21とが介装されている。
また、下腿リンク部材10の下端部には力センサ22が介装され、該下腿リンク部材10は、該力センサ22を介して足首関節部位11に連結されている。この力センサ22は、各脚リンク部4が足平装着部3を介して床から受ける床反力(詳しくは人Aの脚体の運動に伴う補助装具1の運動を、補助装具1が単独で行なうとした場合に該補助装具1の各脚リンク部4に作用する床反力)と該脚リンク部4が人Aの足平部から足平装着部3を介して受ける並進力との合力が足平リンク部材12および足首関節部位11を介して伝達され、その伝達される合力あるいは該合力の反力を検出するものである。
補足すると、人Aの各脚体の着地期において、人Aの重量は、人Aの足平部を載せて接地する足平装着部3の足平基体13に作用するので、力センサ22には、人Aの重量は作用しない。より詳しくは、補助装具1を装着した人Aの運動が、該人Aから補助装具1を取り外して行なわれているとした場合に、該人Aの各脚体に作用する床反力(人Aの運動を人Aが単独で行なう上で動力学的に必要な床反力であり、その床反力の両脚体についての総和は、当該単独の人Aに作用する重力と該人Aがその運動によって発生する慣性力との総和に釣り合うものとなる)は、その大部分が足平基体13を介して人Aの脚体にそのまま作用するので、各脚リンク部4にはほとんど伝達されない。また、本実施形態では、各脚リンク部4の足首関節部位11には、そこに回転力を発生する電動モータなどの手段が備えられず、該足首関節部位11は回転自在である。このため、力センサ22には、前記合力が伝達されるものとなる。なお、本実施形態では、力センサ22は、基本的には、各脚リンク部4の、膝関節部位9よりも足平装着部3寄りの部分に設けられていればよく、例えば各脚リンク部4の足平リンク部材12に介装してもよい。
前記センサボックス5の内部には、図3のブロック図で示すように、3軸方向の加速度(並進加速度)を検出する加速度センサ23と、3軸廻りの角速度を検出するジャイロセンサ(角速度センサ)24と、マイクロコンピュータを用いて構成された演算処理装置25と、後述する光ファイバ26,27に導入する光を発光したり、戻り光を受光する発光/受光器28と、演算処理装置25の指令を受けて前記各電動モータ15,16の発生トルクを制御するモータ駆動回路29と、演算処理装置25等の各電装品の電源としてのバッテリ(蓄電器)30とが収容されている。発光/受光器28、加速度センサ23、ジャイロセンサ24はその検出出力を演算処理装置25に入力するようにしている。なお、センサボックス5は、人Aの腰部に前記腰装着部2を介して固定されているので、加速度センサ23およびジャイロセンサ24は、人Aの腰部と一体的に動くようになっている。
補助装具1は、前記変位センサ21、力センサ20,22、加速度センサ23およびジャイロセンサ24の他、次のようなセンシング構成を備えている。
すなわち、図2に示す如く、各脚リンク部4の股関節部位7、膝関節部位9および足首関節部位11に、それぞれの関節部位の変位量(回転角)を検出する関節変位センサ31,32,33がそれぞれ取り付けられている。これらの関節変位センサ31〜33の検出出力は図示しない信号線を介してセンサボックス5の前記演算処理装置25に入力される。なお、前記変位センサ21、力センサ20,22の検出出力も図示しない信号線を介してセンサボックス5の演算処理装置25に入力される。
関節変位センサ31〜33のうち、股関節部位7の関節変位センサ31が検出する変位量は、股関節部位7の3軸廻りの回転角(3つの軸廻りの回転角の組からなる3次元量)であり、膝関節部位9の関節変位センサ32が検出する変位量は、膝関節部位9の1軸廻りの回転角、足首関節部位11の関節変位センサ33が検出する変位量は、足首関節部位11の1軸廻りの回転角である。この場合、関節変位センサ31が検出する回転角のうちの1つの回転角の回転軸と、関節変位センサ32,33が各々検出する回転角の回転軸とは、それぞれ図2に示す如く、それらのセンサ31〜33に対応する人Aの脚体の股関節、膝関節、足首関節のそれぞれのほぼ中心を通る平面としての脚平面PL(図2の紙面に垂直な平面)にほぼ垂直な軸a31,a32,a33である。これらの軸a31,a32,a33は、それぞれ股関節部位7、膝関節部位9、足首関節部位11の回転軸である。関節変位センサ31〜33は、それぞれ股関節部位7、膝関節部位9、足首関節部位11の上記の回転軸a31,a32,a33廻りの回転角をポテンショメータやロータリエンコーダを用いて検出する。
ここで、脚平面PLについて補足すると、該脚平面PLは、それに対応する人Aの脚体を膝関節で屈曲させて該脚体の屈伸を行ったときに、該脚体の股関節、膝関節、足首関節の中心点が存在するような平面である。換言すれば、各脚体の屈伸は、その股関節、膝関節、足首関節の中心点をほぼ脚平面PL上に位置させた状態で行われる。そして、例えば図2の左側脚体のように、その股関節の、前後方向の軸廻りの回転運動によって左側脚体を外転させた状態では、該左側脚体に対応する脚平面PLは鉛直方向に対して傾く。
股関節部位7の関節変位センサ31が検出する他の2軸廻りの回転角は、対応する脚体の脚平面PLに平行で、且つ互いに平行でない2つの軸廻りの回転角(より詳しくは、脚体の外転・内転あるいは旋回に伴う股関節部位7の姿勢の回転角)である。そして、その回転角は、例えば前記腰リンク部材6の弾性材部分6bの変形量を検出するひずみセンサや、後述するような光ファイバを利用したセンサの出力を用いて検出される。
また、図1に示すように、センサボックス5から導出された2本の光ファイバ26,27は人Aの胴体の背面(背中)沿いに上方に向かって延設され、その先端部がそれぞれ人Aの腹部の背面、胸部の背面に図示しないバンド等の部材を介して固定されている。光ファイバ26,27は、それぞれ腰部に対する腹部、胸部の傾き角を検出する検出手段の構成要素である。これらの光ファイバ26,27を用いた腹部、胸部の傾き角の計測は次のような手法により行われる。光ファイバ26を用いた腹部の傾き角の計測手法を代表的に説明すると、該光ファイバ26には、センサボックス5内の前記発光/受光器28から所定の強度の光が導入されると共に、その導入された光が該光ファイバ26の先端で反射されてセンサボックス5側に戻ってくるようになっている。そして、その光の戻り量(戻った光の強度)が前記発光/受光器28により検出されるようになっている。また、光ファイバ26には、微小な光漏れを許容する複数の刻み部(図示しない)が長手方向に間隔を存して設けられており、光ファイバ26に導入された光のうち、腰部に対する腹部の傾き角に応じた量の光がそれらの刻み部を介して光ファイバ26から漏出する。このため、センサボックス5側への光の戻り量は、腹部の傾き角に応じたものとなり、その戻り量を検出することで、腰部に対する腹部の傾き角が計測される。すなわち、光ファイバ26の光の戻り量に応じた発光/受光器28の検出出力が、腰部に対する腹部の傾き角に応じたものとなり、それが該傾き角を示す信号として演算処理装置25に入力される。光ファイバ27を用いた胸部の傾き角の計測手法も同様である。なお、本実施形態で、光ファイバ26,27を用いて上記のように検出する腹部および胸部の傾き角は、人Aの矢状面(側面視)での傾き角である。
補足すると、前記関節変位センサ31〜33がそれぞれ検出する股関節部位7、膝関節部位9、足首関節部位11の回転角は、補助装具1の各脚リンク部4をほぼ鉛直方向に延ばすと共に、足平装着部3の足平基体13をほぼ水平姿勢にした状態(以下、この状態を補助装具1の基準姿勢状態という)を基準(ゼロ点)とする回転角である。また、光ファイバ26,27を用いてそれぞれ検出する腹部、胸部の傾き角は、補助装具1を装着した人Aが水平な床面に直立姿勢(人Aの各脚体および胴体をほぼ鉛直方向に向けた姿勢)で起立した状態(以下、この状態を人Aの基準姿勢状態という)を基準とする傾き角である。
さらに、補助装具1は、図1に示す如く、各足平装着部3の足平基体13の底面に、2つの接地センサ34,35を備えている。これらの接地センサ34,35のうち、接地センサ34は人Aの足首関節の直下の箇所(踵)に設けられ、接地センサ35は人Aの足平部の中足趾節関節(足平部の親指の付け根の関節)の直下の箇所(つま先)に設けられている。これらの接地センサ34,35は、それを設けた箇所が接地しているか否かを示すON/OFF信号を出力するセンサである。なお、接地センサ34,35の検出出力は信号線(図示省略)を介してセンサボックス5の演算処理装置25に入力される。
以上が本実施形態での補助装具1の構成である。
次に、本実施形態で用いる人Aの剛体リンクモデル(幾何学モデル)、補助装具1の剛体リンクモデル(幾何学モデル)、および座標系について説明しておく。図4は、人Aの剛体リンクモデルS1の構造と座標系とを示している。なお、後述する如く、本実施形態では、補助装具1の剛体リンクモデルの基本構造は人Aの剛体リンクモデルS1と同一とされており、図4は補助装具1の剛体リンクモデルの構造を示すものでもある。そのため、図4では、補助装具1の剛体リンクモデルを示す参照符号S1’を括弧付きで示している。
図4に示す如く、本実施形態では、人Aの剛体リンクモデルS1は、9個の剛体要素と8個の関節要素とで構成される連結体として表現される。図4では、各剛体要素は線分で表され、各関節要素は円(参照符号J4を付したものを除く)で表されている。以下、詳説すると、この剛体リンクモデルS1は、大別すると、人Aの各脚体にそれぞれ対応する一対の脚体部S2,S2と、人Aの上体(腰部から上側の部分)に対応する上体部S3とから構成される。上体部S3は、人Aの腰部に対応する剛体要素S4と腹部に対応する剛体要素S5とを関節要素JU1で連結し、さらに、剛体要素S5と胸部に対応する剛体要素S6とを関節要素JU2で連結してなる連結体として構成されている。以下、剛体要素S4〜S6をそれぞれ腰部要素S4、腹部要素S5、胸部要素S6と称し、関節要素JU1、JU2をそれぞれ上体下部関節JU1、上体上部関節JU2と称することがある。
この場合、腰部要素S4の上端に前記上体下部関節JU1が設けられると共に、腰部要素S4の下部の左右両端に人Aの一対の股関節に対応する一対の関節要素J1,J1(以下、単に股関節J1と称することがある)が設けられている。また、上体下部関節JU1は、人Aの腰部と腹部との境界付近で人Aの背骨上に想定した関節に対応するものであり、上体上部関節JU2は、腹部と胸部との境界付近で人Aの背骨上に想定した関節に対応するものである。剛体リンクモデルS1では、人Aの胴体の曲げ動作に対応する上体部S3の曲げ動作は、上体下部関節JU1および上体上部関節JU2の2つの関節要素で行われる。
剛体リンクモデルS1の各脚体部S2は、人Aの大腿部に対応する剛体要素である大腿部要素S7を前記股関節J1を介して腰部要素S4に連結し、下腿部に対応する剛体要素である下腿部要素S8を膝関節に対応する関節要素J2を介して大腿部要素S7に連結し、足平部に対応する剛体要素である足平部要素S9を足首関節に対応する関節要素J3を介して下腿部要素S8に連結してなる連結体として構成されている。以下、剛体要素S7〜S9をそれぞれ大腿部要素SS7、下腿部要素S8、足平部要素S9と称し、関節要素J2,J3をそれぞれ単に膝関節J2、足首関節J3と称することがある。
なお、図4において、足平部要素S9の先端の参照符号J4を付した部分は、人の足平部の親指の付け根の関節である中足趾節関節(以下、MP関節という)に対応する部分である。剛体リンクモデルS1では、部分J4は、関節としての機能を持つものではないが、以下、便宜上、その部分J4をMP関節J4と称する。
以上の如く構成された人Aの剛体リンクモデルS1の各剛体要素及び各関節要素は、各関節要素の回転運動によって、その相互の位置関係および姿勢関係(向きの関係)が各剛体要素および各関節要素に対応する人の各部の相互の位置関係および姿勢関係と同一になるように運動可能とされている。この場合、上体下部関節JU1及び上体上部関節JU2は、それぞれ3軸廻りの回転が可能とされており、その中の1軸を計測軸として、その計測軸廻りの回転(図4に各関節要素JU1,JU2に対応して記載した矢印(回転方向を表す矢印)を参照)を計測するようにしている。その計測軸は、本実施形態では、前記一対の股関節J1,J1の中心を結ぶ線分と平行な軸(後述する身体座標系BCのY軸に平行な軸)である。また、各脚体部S2の股関節J1は、左脚体部S2の股関節J1に関して代表的に図4中に記載した矢印(回転方向を表す矢印)で示す如く3軸廻りの回転が可能とされている。さらに、各脚体部S2の膝関節J2および足首関節J3はそれぞれ、左側の脚体部S2の各関節要素J2,J3に関して代表的に図4中に記載した矢印(回転方向を表す矢印)で示す如く1軸廻りの回転が可能とされている。膝関節J2および足首関節J3のそれぞれの回転軸は、股関節J1、膝関節J2および足首関節J3のそれぞれの中心を通る脚平面PL(図4では左脚体部S2については図示を省略している)に垂直な軸である。右脚体部S2の股関節J1、膝関節J2、および足首関節J3の回転動作についても左脚体部S2と同様である。この場合、右脚体部S2の膝関節J2および足首関節J3のそれぞれの回転軸(1軸)は、該右脚体部S2に対応して図示した脚平面PLに垂直な軸である。なお、各股関節J1は、いずれの脚体部S2についても3軸廻りの回転が可能であるから、それぞれの脚体部S2に対応する脚平面PLに垂直な軸廻りの回転も可能である。
また、剛体リンクモデルS1では、その各剛体要素の重量および長さ(図の線分方向の長さ)並びに慣性モーメントと、各剛体要素の重心の位置(各剛体要素に固定された後述の要素座標系での位置)とがあらかじめ定められて、演算処理装置25の図示しないメモリに記憶保持されている。図4の黒点G6,G5,G4,G7,G8,G9はそれぞれ胸部要素S6、腹部要素S5、腰部要素S4、大腿部要素S7、下腿部要素S8、足平部要素S9の重心を例示的に示している。補足すると、腰部要素S4は、3つの関節要素JU1,J1,J1に連結されているので、その長さについては、両股関節J1,J1を結ぶ線分の長さと、その線分の中点と上体下部関節JU1とを結ぶ線分の長さとがある。なお、各剛体要素の長さに代えて、その剛体要素に固定された要素座標系での該剛体要素の両端点の位置を演算処理装置25に記憶保持させておいてもよい。
剛体リンクモデルS1の各剛体要素の重量、長さ、慣性モーメント、重心の位置は、基本的にはそれぞれの剛体要素に対応する人Aの部位(剛体相当部)の重量、長さ、慣性モーメント、重心の位置とほぼ同一になるように設定されている。例えば、大腿部要素S10の重量、長さ、慣性モーメント、重心の位置は、それぞれ人Aの大腿部の実際の重量、長さ、慣性モーメント、重心の位置とほぼ同一である。なお、剛体リンクモデルS1の各剛体要素の重量、長さ、慣性モーメントおよび重心の位置は、人Aに補助装具1を装備していない状態での(人A単独での)重量、長さ、慣性モーメントおよび重心の位置である。また、胸部要素S6の重量、慣性モーメントおよび重心の位置は、人Aの胸部と両腕体と頭部とを合わせたものの重量、慣性モーメントおよび重心の位置である。補足すると、人Aの移動時の両腕体の運動(腕を前後に振る動作)に伴う胸部要素S6の重心の位置変化は比較的小さく、該胸部要素S6のほぼ一定の位置に維持される。
剛体リンクモデルS1の各剛体要素の重量、長さ、慣性モーメント、重心の位置は、基本的には、人Aの各部の寸法や重量の実測値に基づいて定めればよいが、人Aの身長や体重から、人間の平均的な統計データに基づいて推定するようにしてもよい。一般に、各剛体要素に対応する人Aの剛体相当部の重心の位置や重量、長さ、慣性モーメントは、人間の身長や体重(全体重量)と相関性があり、その相関関係に基づいて人Aの身長および体重の実測データから各剛体要素に対応する人Aの剛体相当部の重心の位置や重量、長さ、慣性モーメントを比較的精度よく推定することが可能である。
なお、図4では、便宜上、各重心G4〜G9は、それぞれに対応する剛体要素の軸心上(図示の線分上)に位置するように記載しているが、必ずしもその軸心上に位置するとは限らず、その軸心からずれた位置に存在してもよい。
本実施形態では、剛体リンクモデルS1に対して、次のような座標系があらかじめ設定されている。すなわち、図4に示す如く身体座標系BCが腰部要素S4に固定して設定されている。この身体座標系BCは、一対の股関節J1,J1の中心を結ぶ線分の中点を原点とし、その線分の方向をY軸、原点から上体下部関節JU1の中心に向かう方向をZ軸、これらのY軸およびZ軸に直交する方向をX軸とする3次元座標系(XYZ座標系)として設定されている。人Aの前記基準姿勢状態では、身体座標系BCのX軸、Y軸、Z軸はそれぞれ人Aの前後方向、左右方向、上下方向(鉛直方向)に向き、XY平面は水平面である。
また、各脚体部S2の一つの関節要素、例えば股関節J1に脚座標系LCが固定・設定されている。なお、図4では便宜上、右脚体部S2に対応する脚座標系LCのみを代表的に記載している。この脚座標系LCは、その一つの座標軸が該脚座標系LCに対応する脚体部S2に係る脚平面PLに垂直になるような3次元座標系である。この実施形態では、具体的には、脚座標系LCは、股関節J1の中心点を原点とし、脚平面PLに垂直な方向をY軸、身体座標系BCのZ軸を脚平面PLに投影した軸と平行な方向をZ軸、これらのY軸およびZ軸に直交する方向をX軸とする座標系とされている。従って、脚座標系LCは、換言すれば、そのXZ平面が脚平面PLと一致するような座標系である。
さらに、各剛体要素には、例えば参照符号C4〜C9で示すように要素座標系が固定的に設定されている。本実施形態では、腰部要素S4の要素座標系C4は身体座標系BCと同一とされている。また、胸部要素S6、腹部要素S5、各大腿部要素S7、各下腿部要素S8、および各足平部要素S9のそれぞれの要素座標系C6,C5,C7,C8,C9はそれぞれ、上体上部関節JU2、上体下部関節JU1、膝関節J11、足首関節J13、MP関節J4の中心点を原点とする3次元座標系(XYZ座標系)とされている。
なお、要素座標系C4〜C9は、それぞれに対応する剛体要素に対して固定されている限り、必ずしも上記のように設定する必要はなく、その原点や各軸の向きの設定は任意でよい。また、脚座標系LCの原点を股関節J1の中心からずらしたり、身体座標系BCを腰部要素S4と異なる部位に対して固定・設定するようにしてもよい。座標系の設定の仕方は基本的には任意でよく、種々様々な設定形態を採ることが可能である。従って、本実施形態での座標系の設定の仕方は一例に過ぎない。
次に、補助装具1の剛体リンクモデルを説明する。本実施形態では、補助装具1の剛体リンクモデルの連結構造は、人Aの剛体リンクモデルS1(以下、人剛体リンクモデルS1という)と同一としており、図4に示した構造を有している。従って、補助装具1の剛体リンクモデルの説明は図4を用いて行う。以下、補助装具1の剛体リンクモデルを図4に括弧書きで示す如く、参照符号S1’で表し、装具剛体リンクモデルS1’と称する。
この場合、装具剛体リンクモデルS1’の各脚体部S2の関節要素J1〜J3は、それぞれ補助装具1の股関節部位7、膝関節部位9、足首関節部位11に対応している。また、上体部S3の関節要素JU1,JU2は、人Aの場合と同様、人Aの背骨上に想定した関節に対応している。また、本実施形態では、装具剛体リンクモデルS1’の各関節要素J1〜J3,JU1,JU2のそれぞれが可能な回転も人剛体リンクモデルS1と同一である。
装具剛体リンクモデルS1’の各剛体要素S4〜S9は、補助装具1のうち、該剛体要素に対応する人Aの部位に装着された部分、あるいは該部位と一体的に可動な部分が対応している。例えば装具剛体リンクモデルS1’の腰部要素S4は、補助装具1のうち、前記腰装着部2、センサボックス5および腰リンク部材6から構成される部分が対応している。また、例えば装具剛体リンクモデルS1’の各大腿部要素S5は、補助装具1のうち、各脚リンク部4の股関節部位7と膝関節部位9との間の部分(前記大腿部リンク部材8、スライド機構(図示しない)、プレート部材19、ベルト部材17,18、変位センサ21および力センサ20から構成される部分)に対応している。他の剛体要素についても同様である。但し、補助装具1の、各脚リンク部4の各関節部位7,9,11およびその関節部位に取り付けられたもの(電動モータ15,16および関節変位センサ31〜33)については、各関節部位7,9,11およびその関節部位に取り付けられたものの半体が、該関節部位に対応する関節要素で連結された剛体要素のそれぞれに含まれるものとする。例えば、装具剛体リンクモデルS1’の股関節部位7とこれに取り付けられた関節変位センサ31および電動モータ15は、そのそれぞれの半体が、腰部要素S4、大腿部要素S7に含まれるものとする。
そして、装具剛体リンクモデルS1’の各剛体要素S4〜S9の重量、長さ、慣性モーメント並びに重心の位置(各剛体要素に固定された要素座標系での位置)があらかじめ演算処理装置25のメモリに記憶保持されている。この場合、各剛体要素の要素座標系は、例えば人剛体リンクモデルS1と同様に設定されている。また、装具剛体リンクモデルS1’の各剛体要素S4〜S9の重量、慣性モーメントおよび重心の位置は、補助装具1の単体(人Aから取り外した補助装具1)での重量、慣性モーメントおよび重心の位置である。
また、装具剛体リンクモデルS1’の座標系に関し、本実施形態では、装具剛体リンクモデルS1’の腰部要素S4の要素座標系C4は、人剛体リンクモデルS1の腰部要素S4の要素座標系C4(=身体座標系BC)と同一とされている。また、装具剛体リンクモデルS1’の左脚体部S2に係る脚座標系LCは、前記人剛体リンクモデルS1の左脚体部S2に係る脚座標系LCと同様に、該装具剛体リンクモデルS1’の左股関節J1の中心を原点とし、前記左脚平面PLに平行な面をXZ平面とする(左脚平面PLに垂直な方向をY軸とする)座標系とされている。装具剛体リンクモデルS1’の右脚体部S2に係る脚座標系LCについても同様である。また、補助装具1の足平装着部3は、人Aの足平部に固定されることから、本実施形態では、装具剛体リンクモデルS1’の各足平部要素S9の要素座標系C9は、人剛体リンクモデルS1の各足平部要素S9の要素座標系C9と同一とされている。なお、補助装具1を人Aに装備した状態における人Aの股関節の中心と、補助装具1の股関節部位7の中心との位置関係はほぼ固定的に定まるので、装具剛体リンクモデルS1’における脚座標系LCを人剛体リンクモデルS1における脚座標系LCと同一にしてもよい。
補足すると、本実施形態では、装具剛体リンクモデルS1’では、各足平部要素S9は、より詳しくは、図5に示す構造を有するものとされている。すなわち、足首関節J3に概略平板状の足平基体S9cが連結され、この足平基体S9cの前部(つま先寄り部分)および後部(踵部寄りの部分)の下面にそれぞれ床に接地する支持部S9a,S9bが備えられている。そして、装具剛体リンクモデルS1’の足平部要素S9に関しては、その長さの代わりに、足平部要素S9の要素座標系C9における支持部S9a,S9bの位置(支持部S9a,S9bの下端の位置)が演算処理装置25のメモリに記憶保持されている。
なお、本実施形態では、身体座標系BC上での装具剛体リンクモデルS1’の上体下部関節JU1、上体上部関節JU2、腹部要素S5、および胸部要素S6の位置・姿勢は、それぞれ人剛体リンクモデルS1の上体下部関節JU1、上体上部関節JU2、腹部要素S5、および胸部要素S6の位置・姿勢と同一とされている。但し、補助装具1の、人Aの腹部および胸部に対応する部分の重量や慣性モーメントは他の部分の重量や慣性モーメントに比して十分に小さく、実質的に0として差し支えない。従って、装具剛体リンクモデルS1’の腰部要素S4よりも上側の要素、すなわち、上体下部関節JU1、腹部要素S5、上体上部関節JU2、胸部要素S6は省略してもよい。
前記人剛体リンクモデルS1および装具剛体リンクモデルS1’は、その瞬時瞬時の姿勢(各要素の相互の位置および姿勢関係)が、それぞれ人A、補助装具1の瞬時瞬時の姿勢と同じような姿勢になるものとされている。従って、以降の説明では、しばしば、人剛体リンクモデルS1の各要素と、該要素に対応する人Aの部位とを同一視し、人剛体リンクモデルS1の各要素を、それに対応する人Aの部位と同じものとして使用することがある。例えば人剛体リンクモデルS1の各脚体部S2を人Aの各脚体を同じものとして使用することがある。装具剛体リンクモデルS1’の各要素と、それに対応する補助装具1の部位との関係についても同様とする。例えば装具剛体リンクモデルS1’の各脚体部S2、大腿部要素S7、下腿部要素S8、足平部要素S9をそれぞれ、補助装具1の各脚リンク部4(但しこの場合足平装着部3を含む)、大腿リンク部材8、下腿リンク部材10、足平装着部3と同じものとして使用することがある。
次に前記演算処理装置25の処理機能の概要を説明する。図6は演算処理装置25の処理機能の全体を概略的に示すブロック図、図7および図8は、演算処理装置25の要部の処理機能を示すブロック図である。
演算処理装置25の処理機能は、それを大別すると、人Aの脚体の運動が行なわれている時(人Aの歩行時など)に、その脚体の運動が人Aから補助装具1を取り外して行なわれているとした場合(人Aが補助装具1を装着せずに自力で各脚体の所望の運動を行ったと仮定した場合)に人Aの各脚体の各関節(足首関節、膝関節、股関節)に発生すべき関節モーメントを逐次推定する人側関節モーメント推定手段41と、人Aの脚体の運動に伴う補助装具1の運動を、該補助装具1が単独で(人Aから取り外された補助装具1が自力で)行なっているとした場合に補助装具1の各関節部位7,9,11に発生すべき関節モーメントを逐次推定する装具側関節モーメント推定手段42と、補助装具1の電動モータ15,16の作動によって各脚体の股関節および膝関節に発生させるべき目標モーメントである目標関節補助モーメントを前記人側関節モーメント推定手段41で推定された関節モーメントに応じて決定する目標関節補助モーメント決定手段43と、補助装具1の電動モータ15,16の作動によって人Aの股関節および膝関節にそれぞれ実際に発生している関節モーメントである実関節補助モーメントの推定値を前記力センサ20,22、変位センサ21の出力などを基に逐次求める実関節補助モーメント推定手段44と、前記装具側関節モーメント推定手段42でそれぞれ推定された関節モーメントと前記目標関節補助モーメント決定手段43で決定された股関節および膝関節の目標関節補助モーメントと前記実関節補助モーメント推定手段44で推定された膝関節および股関節の実関節補助モーメントの推定値とを用い、股関節および膝関節のそれぞれの実関節補助モーメントの推定値を目標関節補助モーメントに一致させるように各電動モータ15,16をモータ駆動回路29を介してフィードバック制御するモータ制御手段45とから構成される。
この場合、人側関節モーメント推定手段41は、さらに詳しくは、図7に示すように、各股関節部位4の関節変位センサ31および発光/受光器28の検出出力を基に後述する座標変換のための変換テンソルを作成する変換テンソル作成手段51と、各関節変位センサ31,32,33の検出出力を基に、人剛体リンクモデルS1の各脚体部S2の脚平面PL上での各関節要素の位置、各剛体要素の姿勢(傾斜角)、および各剛体要素の重心の位置を求める2次元脚姿勢・要素重心位置算出手段52と、変換テンソル作成手段51が作成した変換テンソルと2次元脚姿勢・要素重心位置算出手段52が求めた位置・姿勢とを用いて人剛体リンクモデルS1の各関節要素および各剛体要素の重心の身体座標系BCでの3次元的な位置ベクトルの値(座標成分値)を求める3次元関節・要素重心位置算出手段53と、前記加速度センサ23及びジャイロセンサ24の検出出力を基に身体座標系BCの原点の加速度ベクトル(並進加速度)および角速度ベクトルの値(身体座標系BCでの座標成分値)を求める身体座標系加速度・角速度算出手段54と、前記加速度センサ23及びジャイロセンサ24の検出出力を基に身体座標系BCの鉛直方向に対する傾斜角を算出する身体座標系傾斜角算出手段55とを備えている。なお、3次元関節・要素重心位置算出手段53が求める位置ベクトルには、人剛体リンクモデルS1の各足平部要素S9のMP関節J4の身体座標系BCでの位置ベクトルも含まれる。
さらに人側関節モーメント推定手段41は、3次元関節・要素重心位置算出手段53が求めた人剛体リンクモデルS1の各剛体要素の重心の位置ベクトルの値を用いて身体座標系BCでの人剛体リンクモデルS1の全体重心(人Aの全体重心)の位置ベクトルの値を求める全体重心位置算出手段56を備えている。
また、人側関節モーメント推定手段41は、3次元関節・要素重心位置算出手段53が求めた各足首関節J3および各MP関節J4の位置ベクトルの値と身体座標系傾斜角算出手段55が求めた身体座標系BCの傾斜角と全体重心位置算出手段56が求めた全体重心の位置ベクトルの値と接地センサ34,35の検出出力とを用いて各脚体(各脚体部S2)に作用する床反力(並進床反力のベクトル)の作用点(以下、単に床反力作用点という)の位置ベクトルの身体座標系BCでの値を求める床反力作用点推定手段57と、3次元関節・要素重心位置算出手段53が求めた各関節要素および各剛体要素の重心の位置ベクトルの値と全体重心位置算出手段56が求めた全体重心の位置ベクトルの値と身体座標系加速度・角速度算出手段54が求めた身体座標系BCの原点の加速度ベクトルおよび角速度ベクトルの値と前記接地センサ34,35の検出出力と前記床反力作用点推定手段57が求めた床反力作用点の位置ベクトルの値とを用いて人Aの各脚体に作用する床反力(並進床反力のベクトル)の身体座標系BCでの値(座標成分値)を推定する床反力推定手段58とを備える。なお、床反力推定手段58が推定する床反力は、より詳しくは、人Aの運動が、人Aから補助装具1を取り外して行なわれているとした場合に該人Aの各脚体に作用する床反力である。
そして、人側関節モーメント推定手段41は、床反力推定手段58が求めた床反力の値と床反力作用点推定手段57が求めた床反力作用点の位置ベクトルの値と身体座標系加速度・角速度算出手段54が求めた加速度ベクトルおよび角速度ベクトルの値を、変換テンソル作成手段51が作成した変換テンソルを用いて各脚体に対応する脚平面PLに投影する脚平面投影手段59と、この投影により得られた値(2次元量)と2次元脚姿勢・要素重心位置算出手段52が求めた位置・姿勢とを用いて人Aの各脚体の足首関節、膝関節および股関節に発生すべき関節モーメントの推定値を算出する関節モーメント算出手段60とを備えている。
詳細は後述するが、人側関節モーメント推定手段41は、上記各手段51〜60の演算処理を所定の演算処理周期で逐次実行し、各演算処理周期において最終的に関節モーメント算出手段60により関節モーメントの推定値を逐次算出する。
一方、装具側関節モーメント推定手段42は、図8に示すように、各関節変位センサ31,32,33の検出出力を基に、装具剛体リンクモデルS1’の各脚体部S2の脚座標系LCのXZ平面上での各関節要素の位置、各剛体要素の姿勢(傾斜角)、および各剛体要素の重心の位置を求める2次元脚姿勢・要素重心位置算出手段61と、この2次元脚姿勢・要素重心位置算出手段61が求めた位置・姿勢と前記人側関節モーメント推定手段41の変換テンソル作成手段51で求められた変換テンソル(図7および図8の※1を参照)とを用いて装具剛体リンクモデルS1’の各関節要素および各剛体要素の重心の身体座標系BCでの3次元的な位置ベクトルの値(座標成分値)を求める3次元関節・要素重心位置算出手段62と、この3次元関節・要素重心位置算出手段62が求めた装具剛体リンクモデルS1’の各剛体要素の重心の位置ベクトルの値を用いて身体座標系BCでの装具剛体リンクモデルS1’の全体重心(補助装具1の全体重心)の位置ベクトルの値を求める全体重心位置算出手段63とを備えている。なお、3次元関節・要素重心位置算出手段62が求める位置ベクトルには、装具剛体リンクモデルS1’の各足平要素S9の支持部S9a,S9bの下端(図5参照)の位置ベクトルも含まれる。
さらに、装具側関節モーメント推定手段42は、3次元関節・要素重心位置算出手段62で求められた装具剛体リンクモデルS1’の各足平要素S9の支持部S9a,S9bの位置ベクトルの値と人側関節モーメント推定手段41の身体座標系傾斜角算出手段55が求めた身体座標系BCの傾斜角(図7および図8の※2を参照)と全体重心位置算出手段63が求めた全体重心の位置ベクトルの値と接地センサ34,35の検出出力とを用いて補助装具1の各脚リンク部4に作用する床反力(並進床反力)の作用点(床反力作用点)の位置ベクトルの身体座標系BCでの値を求める床反力作用点推定手段64と、3次元関節・要素重心位置算出手段62が求めた装具剛体リンクモデルS1’の各関節要素および各剛体要素の重心の位置ベクトルの値と全体重心位置算出手段63が求めた全体重心の位置ベクトルの値と人側関節モーメント推定手段41の身体座標系加速度・角速度算出手段54で求められた身体座標系BCの原点の加速度ベクトルおよび角速度ベクトルの値(図7および図8の※3を参照)と前記接地センサ34,35の検出出力と前記床反力作用点推定手段64が求めた床反力作用点の位置ベクトルの値とを用いて補助装具1の各脚リンク部4に作用する床反力(並進床反力のベクトル)の身体座標系BCでの値(座標成分値)を推定する床反力推定手段65とを備える。なお、床反力推定手段65が推定する床反力は、より詳しくは、人Aの脚体の運動に伴う補助装具1の運動を、該補助装具1が単独で(自力で)行なっているとした場合に該補助装具1の各脚リンク部4に作用する床反力である。
そして、装具側関節モーメント推定手段42は、床反力推定手段65が求めた床反力の値と床反力作用点推定手段64が求めた床反力作用点の位置ベクトルの値と人側関節モーメント推定手段41の身体座標系加速度・角速度算出手段54が求めた加速度ベクトルおよび角速度ベクトルの値を、人側関節モーメント推定手段41の変換テンソル作成手段51が作成した変換テンソル(図7および図8の※1を参照)を用いて各脚体に対応する脚平面PLに投影する(装具剛体リンクモデルS1’の脚座標系LCのXZ平面に投影する)脚平面投影手段66と、この投影により得られた値(2次元量)と前記2次元脚姿勢・要素重心位置算出手段61が求めた位置・姿勢とを用いて補助装具1の各関節部位7,9,11に発生すべき関節モーメントの推定値を算出する関節モーメント算出手段67とを備えている。
詳細は後述するが、装具側関節モーメント推定手段42は、人側関節モーメント推定手段41の処理と並行して、上記各手段61〜67の演算処理を所定の演算処理周期で逐次実行し、各演算処理周期において最終的に関節モーメント算出手段67により関節モーメントの推定値を逐次算出する。
また、前記実関節補助モーメント推定手段44には、前記図6に示すように、装具側関節モーメント推定手段42の脚平面投影手段59で求められた脚平面PL上での床反力(装具剛体リンクモデルS1’の脚座標系LCのXZ平面上での床反力。図6および図8の※4を参照)や、力センサ20,22および変位センサ21の検出出力、装具側関節モーメント推定手段42の2次元脚姿勢・要素重心位置算出手段61で求められた装具剛体リンクモデルS1’の各脚体部S2の姿勢(大腿部要素S7の脚平面PL上での傾斜角など。図6および図8の※5を参照)が入力される。そして、実関節補助モーメント推定手段44は、これらの入力値を用いて実関節補助モーメント推定値を後述するように算出する。
次に演算処理装置25の各手段の詳細な演算処理と併せて本実施形態の装置の作動を説明する。なお、以下の説明において、一般的に、ベクトル量をある座標系Caから別の座標系Cbに座標変換する変換テンソル、すなわち座標系Caの成分値で表されるベクトル量を座標系Cbの成分値で表されるベクトル量に変換するテンソルを「R(Ca→Cb)」というように表記する。また、ある座標系Caで見たある点Pもしくは部位Pの位置ベクトルをU(P/Ca)というように表記する。また、ある座標系Caの座標成分値で表される、物体Qもしくは部位Qの作用力、加速度等の物理量のベクトルAをA(Q/Ca)というように表記する。この場合、位置ベクトルU(P/Ca)や、物理量ベクトルA(Q/Ca)の座標系Caでの座標成分値を表すときは、各座標軸の名称であるx、y、zをさらに付加して表記する。例えば、位置ベクトルU(P/Ca)のX座標成分は、U(P/Ca)xというように表記する。さらに位置ベクトルU(P/Ca)や、物理量ベクトルA(Q/Ca)の座標系Caでの2つの座標成分値の組(2次元ベクトル)を表すときには、その2つの座標軸の名称を付加して表記する。例えばベクトルA(Q/Ca)のX軸成分、Z軸成分の組からなる2次元ベクトル(これはベクトルA(Q/Ca)の、Y軸(座標系CaのY軸)に垂直な面上での成分ベクトルである)は、A(Q/Ca)x,zというように表記する。なお、着目している座標系が明らかである場合には、座標系Caの表記を省略することもある。
また、前記各要素座標系C4〜C9をそれぞれ対応する人Aの部位の名称を用いてC_腰部、C_腹部、C_胸部、C_大腿部、C_下腿部、C_足平部と称することがある。このことは、人剛体リンクモデルS1の各剛体要素S4〜S9、各剛体要素S4〜S9の重心G4〜G9についても同様とする。例えば人剛体リンクモデルS1の腰部要素S4およびその重心G4をそれぞれS_腰部、G_腰部と表記することがある。
さらに、装具剛体リンクモデルS1’の各剛体要素S4〜S9をそれぞれに対応する人Aの部位の名称を用いてS_腰部装具、S_腹部装具、S_胸部装具、S_大腿部装具、S_下腿部装具、S_足平部装具と称することがある。このことは、、装具剛体リンクモデルS1’の各剛体要素S4〜S9の重心についても同様とする。例えば装具剛体リンクモデルS1’の腰部要素S4の重心G4をG_腰部装具と表記することがある。
なお、人Aの脚体に係わるもの、あるいは補助装具1の脚リンク部4に係わるものについては、その左右を区別する必要があるときは、「右」、「左」をさらに付加して記述する。例えば右側の大腿部要素S7をS_右大腿部もしくはS_右大腿部装具と称することがある。
また、人剛体リンクモデルS1の股関節J1、膝関節J2、足首関節J3、およびMP関節J4をそれぞれJ_股、J_膝、J_足首、J_MPと称し、装具剛体リンクモデルS1’の股関節J1、膝関節J2および足首関節J3をそれぞれJ_股装具、J_膝装具、J_足首装具と称することがある。この場合も左右を区別する必要があるときは、上記と同様、「右」、「左」をさらに付加して表記する。
演算処理装置25は、所定の演算処理周期で前記各関節変位センサ31,32,33、発光/受光器28、加速度センサ23、ジャイロセンサ24、力センサ20,22、変位センサ21の検出出力を図示しないA/D変換器を介して取り込むと共に、各接地センサ34,35の検出出力(ON/OFF信号)を取り込む。そして、まず、人側関節モーメント推定手段41および装具側関節モーメント推定手段42の演算処理を並行して実行する。
人側関節モーメント推定手段41の演算処理を以下に詳説する。なお、以降、人側関節モーメント推定手段41の説明が終了するまでは、剛体要素、関節要素、脚座標系、要素座標系は、特に断らない限り、それぞれ人剛体リンクモデルS1の剛体要素、関節要素、脚座標系、要素座標系を意味するものとする。
まず、前記変換テンソル作成手段51、2次元脚姿勢・要素重心位置算出手段52、および3次元関節・要素重心位置算出手段53の演算処理が順次実行される。
変換テンソル作成手段51の演算処理では、各脚座標系LCと身体座標系BCとの間のベクトル量の座標変換を行うための変換テンソルR(LC→BC)と、腹部要素S5の要素座標系C5および胸部要素S6の要素座標系C6のそれぞれと身体座標系BCの間のベクトル量の座標変換を行うための変換テンソルR(C_腹部→BC)、R(C_胸部→BC)とが作成される。
変換テンソルR(LC→BC)は、補助装具1の股関節部位7の関節変位センサ31で検出される股関節部位7の3軸廻りの回転角のうち、脚平面PLに垂直な回転軸a31の廻りの回転角を除く2つの軸廻りの回転角から決定される。本実施形態では、脚平面PLに垂直な回転軸a31を除く2つの軸廻りの股関節部位7の回転角(人Aの脚体の股関節廻りの外転・内転、および旋回に伴う股関節部位7の回転角)が決まれば、人剛体リンクモデルS1の脚座標系LCと身体座標系BCとの間の姿勢関係が一義的に定まる。従って、変換テンソルR(LC→BC)は、股関節の3軸廻りの回転角のうち、脚平面PLに垂直な回転軸a31の廻りの回転角を除く2つの軸廻りの回転角の検出値から求めることができる。なお、変換テンソルR(LC→BC)は、左右の脚体毎に各別に求められる。
また、変換テンソルR(C_腹部→BC)、R(C_胸部→BC)は次のように作成される。まず、発光/受光器28の検出出力を基に、人剛体リンクモデルS1の腰部要素S4に対する腹部要素S5と胸部要素S6の傾斜角(詳しくは身体座標系BCのZ軸方向に対する矢状面(XZ平面)上での傾斜角)が把握される。そして、腰部要素S4に対する腹部要素S5の傾斜角だけ、座標系C_腹部が身体座標系BCに対して矢状面上で傾いたものとして、変換テンソルR(C_腹部→BC)が決定される。同様に、腰部要素S4に対する胸部要素S6の傾斜角だけ、座標系C_胸部が身体座標系BCに対して矢状面上で傾いたものとして、変換テンソルR(C_腹部→BC)が決定される。
補足すると、本実施形態では、人剛体リンクモデルS1の上体下部関節JU1および上体上部関節JU2を1軸廻り(C_腹部およびC_胸部のY軸廻り)の回転による腹部要素S5および胸部要素S6の腰部要素S4に対する傾斜角のみを計測するようにしたが、上体下部関節JU1および上体上部関節JU2をそれぞれ例えば2軸廻り(例えばC_腹部およびC_胸部のY軸とX軸との2軸廻り)の回転が可能なものとして、腹部要素S5および胸部要素S6の2軸廻りの傾斜角を計測するようにしてもよい。そして、それらの2軸廻りの傾斜角から変換テンソルR(C_腹部→BC)、R(C_胸部→BC)を求めるようにしてもよい。
なお、上記変換テンソルR(LC→BC),R(C_腹部→BC),R(C_胸部→BC)を転置したものがそれぞれの逆変換を行うための変換テンソルとなる。従って、R(BC→LC)=R(LC→BC)T、R(BC→C_腹部)=R(C_腹部→BC)T、R(BC→C_胸部)=R(C_胸部→BC)T(Tは転置を意味する)である。
前記2次元脚姿勢・要素重心位置算出手段52の演算処理では、まず、補助装具1の各脚リンク部4の関節変位センサ31〜33の検出出力から把握される、各脚リンク部4の股関節部位7、膝関節部位9、足首関節部位11の脚平面PLに垂直な軸(図2の回転軸a31,a32,a33)廻りの回転角を用いて、人剛体リンクモデルS1の大腿部要素S7、下腿部要素S8および足平部要素S9のそれぞれの傾斜角θ_大腿部、θ_下腿部、θ_足平部が算出される。ここで、傾斜角θ_大腿部、θ_下腿部、θ_足平部は、脚座標系LCのZ軸方向に対する傾斜角である。
この場合、例えば各脚リンク部4の膝関節部位9の位置が人Aの膝関節の側方箇所(真横)からずれている場合(この場合、人Aの大腿部の長さと補助装具1の大腿リンク部材8の長さとが同一でなく、あるいは人Aの下腿部の長さと補助装具1の下腿リンク部材10の長さとが同一でない)には、各脚リンク部4の股関節部位7、膝関節部位9、足首関節部位11の脚平面PLに垂直な軸廻りの回転角は、一般には、人Aの股関節、膝関節、足首関節の脚平面PLに垂直な軸廻りの回転角と異なっている。
そこで、本実施形態では、各脚リンク部4の股関節部位7、膝関節部位9、足首関節部位11の脚平面PLに垂直な軸廻りの回転角の検出値を基に、人Aの股関節、膝関節、足首関節の脚平面PLに垂直な軸廻りの回転角(人剛体リンクモデルS1の各脚体部S2の関節J_股(J1)、J_膝(J2)、J_足首(J3)の脚平面PLに垂直な軸廻りの回転角)を幾何学的な演算によって求め、それを基に、傾斜角θ_大腿部、θ_下腿部、θ_足平部を算出する。以下に、その算出手法を図9を参照して説明する。図9は、脚平面PL上で見た人剛体リンクモデルS1および装具剛体リンクモデルS1’の脚体部S2の幾何学的な関係を示している。なお、装具剛体リンクモデルS1’の脚体部S2の要素は破線で示している。
図9において、θ_股装具、θ_膝装具、θ_足首装具は、それぞれ関節変位センサ31,32,33によって検出される補助装具1の股関節部位7、膝関節部位9、足首関節部位11の回転角(補助装具1の前記基準姿勢状態からの回転角)である。ここで、本実施形態では、股関節部位7および足首関節部位11は、それぞれ人Aの股関節、足首関節の側方箇所(真横)に配置されているので、脚平面PL上で見た、人剛体リンクモデルS1のJ_股の位置は装具剛体リンクモデルS1’のJ_股装具の位置と一致し、また、J_足首の位置はJ_足首装具の位置と一致する。また、関節変位センサ33によって検出される補助装具1の足首関節部位11の回転角θ_足首装具は、人Aの足首関節の回転角θ_足首に一致する。なお、本実施形態では、補助装具1を装着した人Aがその基準姿勢状態からしゃがんだ時に検出されるθ_股装具、θ_膝装具、θ_足首装具を正の値とする。従って、図示の例では、θ_股装具>0、θ_膝装具>0、θ_足首装具>0である。また、本実施形態では、人剛体リンクモデルS1のJ_膝がJ_股よりも脚座標系LCのX軸の正側(前方側)に位置しているときのS_大腿部(大腿部要素S7)の傾斜角θ_大腿部を負の値とし、J_足首がJ_膝よりも脚座標系LCのX軸の正側に位置しているときのS_下腿部(下腿部要素S8)の傾斜角θ_下腿部を負の値とし、J_MP(足平部要素S9の先端)がJ_足首よりも脚座標系LCのX軸の正側に位置しているときのS_足平部(足平部要素S9)の傾斜角θ_足平部を負の値とする。図示の例では、θ_大腿部<0、θ_下腿部>0、θ_足平部<0である。装具剛体リンクモデルS1’のS_大腿部装具、S_下腿部装具、およびS_足平部装具のそれぞれの傾斜角θ_大腿部装具、θ_下腿部装具、θ_足平部装具についても上記と同様とする。
この場合、人剛体リンクモデルS1のJ_膝、J_股のそれぞれの回転角θ_膝、θ_股は、次式(1a)、(1b)により順番に求められる。
θ_膝=π−cos−1((L72+L82−Dha2)/(2×L7×L8))
……(1a)
θ_股=θ_股装具−sin−1((L8s2/Dha)×sin(π−θ_膝装具))
+sin−1((L8/Dha)×sin(π−θ_膝))
……(1b)
なお、L7、L8は人剛体リンクモデルS1のS_大腿部、S_下腿部のそれぞれの長さ、L8sは装具剛体リンクモデルS1’のS_下腿部の長さである。また、Dhaは、人剛体リンクモデルS1のJ_股とJ_足首との距離(これは装具剛体リンクモデルS1’のJ_股装具とJ_足首装具との距離に等しい)であり、これは、次式(1c)により求められる。
Dha=√(L7s2+L8s2−2×L7s×L8s×cos(π−θ_膝装具))
……(1c)
そして、これらの式(1a)〜(1c)によりθ_膝装具およびθ_股装具の検出値を用いて求められるθ_膝、θ_股と、θ_足首の検出値(=θ_足首装具の検出値)とから、傾斜角θ_大腿部、θ_下腿部、θ_足平部が、それぞれ次式(1d)〜(1f)により順番に求められる。
θ_大腿部=−θ_股 ……(1d)
θ_下腿部=θ_大腿部+θ_膝 ……(1e)
θ_足平部=θ_下腿部−θ_足首+(π/2) ……(1f)
尚、θ_大腿部、θ_下腿部、θ_足平部の算出は、各脚体部S2毎に各別に行われる。
上記の如く求められる傾斜角θ_大腿部、θ_下腿部、θ_足平部は、人剛体リンクモデルS1の各脚体部S2の各剛体要素の、該脚体部S2に対応する脚平面PL(脚座標系LCXZ平面)上での姿勢を表すものである。
次に、各脚体部S2の各関節要素の、脚座標系LCのXZ平面、すなわち、脚平面PL上での位置が、上記の如く求められたθ_大腿部、θ_下腿部、θ_足平部と、人剛体リンクモデルS1の各脚体部S2の各剛体要素の長さとを用いて求められる。具体的には、各脚体部S2の関節要素J_股(J1),J_膝(J2),J_足首(J3)およびJ_MP(J4)のそれぞれの脚座標系LCでの位置ベクトルU(J_股/LC),U(J_膝/LC),U(J_足首/LC),U(J_MP/LC)がそれぞれ次式(2a)〜(2d)により順番に算出される。なお、このとき、脚座標系LCのY軸方向(脚平面PLの法線方向)でのJ_股,J_膝、J_足首、J_MPの位置、すなわち、位置ベクトルU(J_股/LC),U(J_膝/LC),U(J_足首/LC),U(J_MP/LC)のY軸成分はいずれも0とされる。つまり、本実施形態では、J_股,J_膝、J_足首、J_MPは、いずれも脚平面PL上でのみ運動可能とされる。
U(J_股/LC)=(0,0,0)T …(2a)
U(J_膝/LC)=U(J_股/LC)
+(−L7×sin(θ_大腿部),0,−L7×cos(θ_大腿部))T
…(2b)
U(J_足首/LC)=U(J_膝/LC)
+(−L8×sin(θ_下腿部),0,−L8×cos(θ_大腿部))T
…(2c)
U(J_MP/LC)=U(J_足首/LC)
+(−L9×sin(θ_足平部),0,−L9×cos(θ_足平部))T
…(2d)
ここで、式(2b),(2c),(2d)中のL7,L8,L9はそれぞれS_大腿部(大腿部要素S7)、S_下腿部(下腿部要素S8)、S_足平部(足平部要素S9)の長さである。また、式(2b)〜(2d)のそれぞれの右辺第2項のベクトルは、股関節J1(J_股)から見た膝関節J2(J_膝)の位置ベクトル、膝関節J2から見た足首関節J3(J_足首)の位置ベクトル、足首関節J3から見たMP関節J4(J_MP)の位置ベクトルを意味している。なお、式(2a)〜(2d)により求められる位置ベクトルU(J_股/LC),U(J_膝/LC),U(J_足首/LC),U(J_MP/LC)のそれぞれのX軸成分およびZ軸成分の組が脚平面PL上での2次元的位置を表している。
さらに、各脚体部S2の各剛体要素の重心の、脚座標系LCでの位置ベクトルが、式(2a)〜(2d)により上記の如く算出された関節要素の位置ベクトルを用いて算出される。具体的には、各脚体部S2の大腿部要素S7、下腿部要素S8、足平部要素S9のそれぞれの重心G_大腿部(G7),G_下腿部(G8),G_足平部(G9)のそれぞれの位置ベクトルU(G_大腿部/LC),U(G_下腿部/LC),U(G_足平部/LC)がそれぞれ次式(3a)〜(3c)により算出される。
U(G_大腿部/LC)=U(J_膝/LC)+
R(C_大腿部→LC)×U(G_大腿部/C_大腿部)…(3a)
U(G_下腿部/LC)=U(J_足首/LC)+
R(C_下腿部→LC)×U(G_下腿部/C_下腿部)…(3b)
U(G_足平部/LC)=U(J_MP/LC)+
R(C_足平部→LC)×U(G_足平部/C_足平部)…(3c)
ここで、式(3a)〜(3c)のR(C_大腿部→LC)、R(C_下腿部→LC)、R(C_足平部→LC)は、それぞれ大腿部座標系C_大腿部(C7)から脚座標系LCへの変換テンソル、下腿部座標系C_下腿部(C8)から脚座標系LCへの変換テンソル、足平部座標系C_足平部(C9)から脚座標系LCへの変換テンソルであり、それぞれ先に算出したθ_大腿部、θ_下腿部、θ_足平部を用いて決定される。また、U(G_大腿部/C_大腿部)、U(G_下腿部/C_下腿部)、U(G_足平部/C_足平部)は、各剛体要素の要素座標系で表された該剛体要素の重心の位置ベクトルであり、あらかじめ演算処理装置25のメモリに記憶保持されている。
上記式(3a)〜(3c)により求められる位置ベクトルU(G_大腿部/LC),U(G_下腿部/LC),U(G_足平部/LC)のX軸成分及びZ軸系分の組が脚平面PL上での2次元的位置を表している。以上説明した演算処理が2次元脚姿勢・要素重心位置算出手段52の演算処理である。
次に3次元関節・要素重心位置算出手段53の演算処理では、変換テンソル作成手段51で求めた変換テンソルと2次元脚姿勢・要素重心位置算出手段52で求めた各脚体部S2の各関節要素および各剛体要素の重心の位置(脚座標系LCでの位置)とを用いて、人剛体リンクモデルS1の各関節要素および各剛体要素の重心の身体座標系BCでの位置ベクトルが求められる。
各関節要素の位置ベクトルの算出は次のように行われる。例えば左脚体部S2の各関節要素(MP関節J4を含む)の位置ベクトルの算出について説明する。まず、腰部要素S4の両股関節J1,J1の中心を結ぶ線分の長さをL4aとおくと、身体座標系BCにおける左股関節J1の位置ベクトルU(J_左股/BC)は、次式(4a)により与えられる。
U(J_左股/BC)=(0,L4a/2,0)T …(4a)
さらに、身体座標系BCにおける左膝関節J2、左足首関節J3、左MP関節J4のそれぞれの位置ベクトルU(J_左膝/BC)、U(J_左足首/BC)、U(J_左MP/BC)は、変換テンソルR(LC→BC)と、左脚体部S2に対応する脚座標系LC(左LC)での位置ベクトルU(J_左膝/LC)、U(J_左足首/LC)、U(J_左MP/LC)とを用いて次式(4b)〜(4d)により順番に求められる。
U(J_左膝/BC)=U(J_左股/BC)+R(LC→BC)×U(J_左膝/LC)…(4b)
U(J_左足首/BC)=U(J_左股/BC)+R(LC→BC)×U(J_左足首/LC)
…(4c)
U(J_左MP/BC)=U(J_左股/BC)+R(LC→BC)×U(J_左MP/LC)
…(4d)
右脚体部S2の各関節要素(MP関節J4を含む)の身体座標系BCでの位置ベクトルも上記と同様に求められる。
さらに、上体部S3の上体下部関節JU1および上体上部関節JU2の身体座標系BCでの位置ベクトルU(JU1/BC),U(JU2/BC)は、それぞれ次式(4e),(4f)により順番に求められる。
U(JU1/BC)=(0,0,L4b)T ……(4e)
U(JU2/BC)=U(JU1/BC)+R(C_腹部→BC)・(0,0,L5)T ……(4f)
なお、式(4e)のL4bは、両股関節J1,J1を結ぶ線分の中点から上体下部関節JU1の中心までの長さ、式(4f)のL5は腹部要素S5の長さである。
また、各剛体要素の重心の、身体座標系BCでの位置ベクトルの算出は次のように行われる。すなわち、大腿部要素S7、下腿部要素S8、足平部要素S9のそれぞれの重心の身体座標系BCでの位置ベクトルU(G_大腿部/BC),U(G_下腿部/BC),U(G_足平部/BC)は、それぞれ前記式(4b)の右辺のU(J_左膝/LC)を前記2次元脚姿勢・要素重心位置算出手段52で算出した大腿部要素S7、下腿部要素S8、足平部要素S9の重心の位置ベクトルU(G_大腿部/LC)、U(G_下腿部/LC)、U(G_足平部/LC)で置き換えた式を演算することで求められる。なお、G_大腿部,G_下腿部,G_足平部の身体座標系BCでの位置ベクトルの算出は、各脚体部S2毎に各別に行われる。
また、腰部要素S4の重心G4の位置ベクトルU(G_腰部/BC)は、あらかじめ記憶保持された腰部座標系C_腰部(C4)での重心G_腰部の位置ベクトルU(G_腰部/C_腰部)から、次式(4g)により求められる。
U(G_腰部/BC)=R(C_腰部→BC)×U(G_腰部/C_腰部) …(4g)
ここで、R(C_腰部→BC)は、腰部座標系C_腰部から身体座標系BCへの変換テンソルである。本実施形態では、C_腰部は身体座標系BCに等しいので、R(C_腰部→BC)は3次の単位行列で表される。従って、U(G_腰部/C_腰部)がそのままU(G_腰部/BC)として得られる。
さらに、腹部要素S5、胸部要素S6のそれぞれの重心G5,G6の身体座標系BCでの位置ベクトルU(G_腹部/BC),U(G_胸部/BC)は、変換テンソル作成手段51で求めた変換テンソルR(C_腹部→BC),R(C_胸部→BC)と、あらかじめ記憶保持された腹部座標系C_腹部(C5)での腹部要素S5の重心の位置ベクトルU(G_腹部/C_腹部)、及び胸部座標系C_胸部(C6)での胸部要素S6の重心の位置ベクトルU(G_胸部/C_胸部)とを用いてそれぞれ次式(4h),(4i)により求められる。
U(G_腹部/BC)=U(JU1/BC)+R(C_腹部→BC)・U(G_腹部/C_腹部)
……(4h)
U(G_胸部/BC)=U(JU2/BC)+R(C_胸部→BC)・U(G_胸部/C_胸部)
……(4i)
なお、U(JU1/BC)、U(JU2/BC)は、前記式(4e),(4f)により求められたものである。
以上説明した演算処理が3次元関節・要素重心位置算出手段53の演算処理である。以上のように3次元関節・要素重心位置算出手段53で算出される各関節要素と各剛体要素の重心との位置ベクトルは、それぞれに対応する人Aの実際の部位の、身体座標系BCで見た位置ベクトルとしての意味を持つ。
人側関節モーメント推定手段41は、上記した変換テンソル作成手段51、2次元脚姿勢・要素重心位置算出手段52、および3次元関節・要素重心位置算出手段53の演算処理と並行して、身体座標系加速度・角速度算出手段54および身体座標系傾斜角算出手段55の演算処理を実行する。
身体座標系加速度・角速度算出手段54の演算処理では、加速度センサ23の検出出力から把握される3軸方向の加速度(並進加速度)とジャイロセンサ24の検出出力から把握される3軸廻りの角速度とから次のように身体座標系BCの原点の加速度ベクトルの身体座標系BCでの値(座標成分値)が求められる。まず、各センサ23,24がそれぞれ検出する加速度、角速度はそれらのセンサ23,24に対して固定された3軸の座標系(以下、センサ座標系SC又はC_センサという)であらわされるベクトル量であるので、それを身体座標系BCでの値に変換する。その変換は、人Aの腰部に対する加速度センサ23およびジャイロセンサ(角速度センサ)24の相対的な取り付け位置関係(C4(=BC)に対するC_センサの相対的姿勢関係)に応じてあらかじめ設定された変換テンソルをセンサ座標系SCでそれぞれ検出された加速度ベクトル、角速度ベクトルに乗算することで行われる。すなわち、センサ座標系SCでの加速度ベクトルの検出値をACC(センサ/SC)、それを身体座標系BCに変換した加速度ベクトルをACC(センサ/BC)、センサ座標系SCでの角速度ベクトルの検出値をω(センサ/SC)、それを身体座標系BCに変換した角速度ベクトルをω(センサ/BC)とおくと、加速度ベクトルACC(センサ/BC)、角速度ベクトルω(センサ/BC)は、それぞれ次式(5a),(5b)により求められる。ここで、ACC(センサ/BC)、ω(センサ/BC)は、より詳しくは、それぞれ加速度センサ23、ジャイロセンサ24の箇所の加速度ベクトル、角速度ベクトルである。なお、この例では加速度センサ23、ジャイロセンサ24の箇所はほぼ同一箇所とし、センサ座標系SCは両センサ23,24について同じ座標系としている。
ACC(センサ/BC)=R(SC→BC)・ACC(センサ/SC) ……(5a)
ω(センサ/BC)=R(SC→BC)・ω(センサ/SC) ……(5b)
ここで、変換テンソルR(SC→BC)はセンサ座標系SCと身体座標系BCとの相対的な姿勢関係(詳しくは、センサ座標系SCの各軸の身体座標系BCの各軸に対する傾き角)から決定され、補助装具1の人Aへの装着時等にあらかじめ演算処理装置18のメモリに記憶保持されている。補足すると、加速度センサ23やジャイロセンサ24を人Aの腰部以外の部位(人剛体リンクモデルS1のいずれかの剛体要素に対応する剛体相当部)に装着してもよい。この場合には、加速度ベクトルACC(センサ/BC)および角速度ベクトルω(センサ/BC)は、センサ座標系SCでの検出値を加速度センサ23やジャイロセンサ24を装着した剛体要素の要素座標系での値に変換した後、さらに変換テンソルによって身体座標系BCでの値に変換すればよい。この場合の変換テンソルは、加速度センサ23やジャイロセンサ24を装着した剛体要素と腰部要素S4との間にある関節要素の変位量(回転角)を基に決定される。
身体座標系加速度・角速度算出手段55の演算処理では、上記の如く加速度ベクトルACC(センサ/BC)および角速度ベクトルω(センサ/BC)を求めた後、次式(5c)によって、身体座標系BCの原点の加速度ベクトルACC(BCO/BC)を求める。「BCO」は身体座標系BCの原点を表す符号である。
この式(5c)中の、U(センサ/BC)は、身体座標系BCでの加速度センサ23およびジャイロセンサ24の位置ベクトルであり、U(センサ/BC)x、U(センサ/BC)y、U(センサ/BC)zはそれぞれ、前述した本明細書でのベクトルの座標成分値の表記手法の定義にしたがって、U(センサ/BC)の身体座標系BCでの各座標成分値である。U(センサ/BC)は、補助装具1の人Aへの装着時に実測されて演算処理装置25のメモリに記憶保持されている。また、ω(センサ/BC)x、ω(センサ/BC)y、ω(センサ/BC)zはそれぞれ先に求めた角速度ベクトルω(センサ/BC)の各座標成分値である。また、ω(センサ/BC)’は、ω(センサ/BC)の1階微分値を示しており、その値は、演算処理装置25の演算処理周期毎に前記式(5b)により求めるω(センサ/BC)の時系列データから算出される。
また、腰部要素S4内のどの部分でも角速度は同一であり、腰部要素S4に固定されている身体座標系BCの原点BCOの角速度ω(BCO/BC)は、ω(センサ/BC)に等しい。従って、ω(BCO/BC)=ω(センサ/BC)である。
上記式(5c)で求められるACC(BCO/BC)は、加速度センサ23を身体座標系BCの原点に設置し、且つ、加速度センサ23の軸の向きを身体座標系BCと一致させた場合の該加速度センサ23の出力値(加速度検出値)と等しくなるベクトルである。
なお、加速度センサ23は重力に伴う加速度も検出するので、上記のように求められた加速度ベクトルACC(BCO/BC)には、重力による慣性加速度成分(重力加速度成分)が含まれる。また、本実施系形態では、腰部要素S4の角速度を考慮して身体座標系BCの原点BCOの加速度ベクトルACC(BCO/BC)を求めるようにしたが、腰部要素S4の角速度やその変化率は比較的小さいので、前記式(5a)で求めたACC(センサ/BC)をそのまま身体座標系BCの原点BCOの加速度ベクトルACC(BCO/BC)としてもよい。
また、前記身体座標系傾斜角算出手段55の演算処理では、加速度センサ23およびジャイロセンサ24の検出出力から所謂カルマンフィルタによって鉛直方向(重力方向)に対する腰部要素S4の傾斜角(身体座標系BCのZ軸の傾斜角)が算出される。この算出手法は公知であるのでここでの説明は省略する。なお、ここで算出される傾斜角は、前後方向の水平軸と左右方向の水平軸との2軸廻りの傾斜角である。
次に、人側関節モーメント推定手段41は、全体重心位置算出手段56の演算処理を実行する。この全体重心位置算出手段56の演算処理では、前記3次元関節・要素重心位置算出手段53によって求められた各剛体要素の重心位置(身体座標系BCでの位置ベクトル)と、あらかじめ前述したように設定された各剛体要素の重量とから、次式(6)によって、人剛体リンクモデルS1の全体重心(人Aの全体重心。以下、G_全体と表記することがある)の身体座標系BCでの位置ベクトルU(G_全体/BC)が求められる。
U(G_全体/BC)={U(G_胸部/BC)×m_胸部+U(G_腹部/BC)×m_腹部
+U(G_腰部/BC)×m_腰部+U(G_右大腿部/BC)×m_右大腿部
+U(G_左大腿部/BC)×m_左大腿部+U(G_右下腿部/BC)×m_右下腿部
+U(G_左下腿部/BC)×m_左下腿部+U(G_右足平部/BC)×m_右足平部
+U(G_左足平部/BC)×m_左足平部}/全体重量 ……(6)
なお、m_胸部など、「m_○○」は○○の名称に対応する人剛体リンクモデルS1の剛体要素の重量であり、これらの重量には補助装具1の重量は含まれない。この式(6)の如く、全体重心の位置ベクトルU(G_全体/BC)は、人剛体リンクモデルS1の各剛体要素の重心の身体座標系BCでの位置ベクトルとその剛体要素の重量との積の総和を、人Aの全体重量(詳しくは人Aから補助装具1を取り外した状態での人Aの全体重量で、これは人剛体リンクモデルS1の全ての剛体要素の重量の総和に等しい)で除算することで求められる。
次に、人側関節モーメント推定手段41は、前記床反力作用点推定手段57および床反力推定手段58の算出処理を実行する。
床反力作用点推定手段57の演算処理では、まず、前記身体座標系傾斜角算出手段55で算出された腰部要素S4の鉛直方向に対する傾斜角を基に、身体座標系BCから絶対座標系ICへの変換テンソルR(BC→IC)が作成される。ここで、絶対座標系ICは、鉛直方向をZ軸とする直交座標系で、人Aの前記基準姿勢状態において身体座標系BCと各座標軸の向きが同一となる座標系である。なお、絶対座標系ICから身体座標系BCへの変換テンソルR(IC→BC)は変換テンソルR(BC→IC)の転置R(BC→IC)Tである。また、腰部要素S4の鉛直方向に対する傾斜角がほぼ一定となるような脚体の運動を行うような場合には、上記変換テンソルR(BC→IC)は、ほぼ一定となるので、それをあらかじめ演算処理装置25のメモリに記憶保持しておくようにしてもよい。
次いで、上記変換テンソルR(BC→IC)を用いて、前記全体重心位置算出手段56で先に求めた全体重心G_全体の位置ベクトルU(G_全体/BC)と、3次元関節・要素重心位置算出手段53で先に求めた各脚体部S2の足首関節J3およびMP関節J4のそれぞれの位置ベクトルU(J_足首/BC),U(J_MP/BC)とにそれぞれ上記変換テンソルR(BC→IC)を乗算することにより、全体重心G_全体、各足首関節J3およびMP関節J4の絶対座標系ICで見た位置ベクトルU(G_全体/IC),U(J_足首/IC),U(J_MP/IC)が算出される。なお、これらの位置ベクトルU(G_全体/IC),U(J_足首/IC),U(J_MP/IC)は、身体座標系BCと同じ原点を有する絶対座標系ICでの位置ベクトルである。また、このとき、接地センサ34,35の検出出力により接地無しと判断される脚体に関しては、位置ベクトルU(J_足首/IC),U(J_MP/IC)を算出する必要はない。
次いで、接地センサ34,35の検出出力により接地有りと判断される各脚体毎に、位置ベクトルU(G_全体/IC),U(J_足首/IC),U(J_MP/IC)のX軸方向成分U(G_全体/IC)x,U(J_足首/IC)x,U(J_MP/IC)xの大小関係に応じて、換言すれば、全体重心G_全体、足首関節J3およびMP関節J4の前後方向での相対的な水平位置関係に応じて、床反力作用点の位置ベクトル(絶対座標系ICでの位置ベクトル)U(COP/IC)のX軸成分およびY軸成分が決定される。この決定手法を図10(a)〜(c)および図11を参照してさらに詳説する。なお、以下の説明では、左側脚体が着地しているとする。図10(a)〜(c)は矢状面(絶対座標系ICのXZ平面)で見た人Aの左脚体が接地している状態(これらの図では単脚支持状態)を例示しており、図11は図10(b)の状態での接地側の足平部を平面視で見た図を示している。なお、図10及び図11では人Aは人剛体リンクモデルS1で模式化して示している。
図10(a)に示すように、全体重心G_全体が接地している左脚体のMP関節よりも前方に存在する場合、すなわち、U(G_全体/IC)x>U(J_左MP/IC)xである場合には、該左脚体の足平部S9は、主にそのつま先側部分で踏ん張って接地している。この場合には、床反力作用点COPは、その足平部のMP関節J4のほぼ直下の位置に存在する。そこで、この場合には、床反力作用点COPの位置ベクトルU(左COP/IC)のX,Y軸成分はそれぞれMP関節J4の位置ベクトルU(J_左MP/IC)のX,Y軸成分に等しいとする。すなわち、U(左COP/IC)x=U(J_左MP/IC)x、U(左COP/IC)y=U(J_左MP/IC)yとする。
また、図10(c)に示す如く、全体重心G_全体が接地している左脚体の足首関節J3よりも後方に存在する場合、すなわち、U(G_全体/IC)x<U(J_左足首/IC)xである場合には、該左脚体の足平部S9は、主にその踵側部分で踏ん張って接地している。この場合には、床反力作用点COPは、その左脚体の足首関節J3のほぼ直下の位置に存在する。そこで、この場合には、床反力作用点COPの位置ベクトルU(左COP/IC)のX,Y軸成分はそれぞれ足首関節J3の位置ベクトルU(J_左足首/IC)のX,Y軸成分に等しいとする。すなわち、U(左COP/IC)x=U(J_左足首/IC)x、U(左COP/IC)y=U(J_左足首/IC)yとする。
また、図12(b)に示すように、全体重心G_全体が前後方向で左脚体の足首関節J3とMP関節J4との間に存在する場合、すなわち、U(J_左MP/IC)x≦U(G_全体/IC)x≦U(J_左足首/IC)xである場合には、床反力作用点COPは、図示の矢状面上では、全体重心G_全体のほぼ真下に存在する。そこで、この場合には、床反力作用点COPの位置ベクトルU(左COP/IC)のX軸成分は、全体重心G_全体のX軸成分に等しいとする。すなわち、U(左右COP/IC)x=U(G_全体/IC)xとする。そして、床反力作用点COPの位置は、概ね、足首関節J3の中心点とMP関節J4の中心点とを結ぶ線分を床面に投影した線分上に存在すると考えられる。そこで、床反力作用点COPの位置ベクトルU(右COP/IC)のY軸成分は、図11に示す如く、左脚体に関する足首関節J3の中心点とMP関節J4の中心点とを結ぶ線分上で、全体重心G_全体とX軸成分(絶対座標系ICでのX軸成分)の値が同じになるような点PのY軸成分と等しいとする。このような位置ベクトルU(左COP/IC)のY軸成分の値は、次式(7)に比例関係式に基づいて求められる。
U(左COP/IC)x−U(J_左足首/IC)x
:U(J_左MP/IC)x−U(J_左足首/IC)x
=U(左COP/IC)y−U(J_左足首/IC)y
:U(J_左MP/IC)y−U(J_左足首/IC)y ……(7)
また、床反力作用点の位置ベクトルU(左COP/IC)のZ軸成分は、左側脚体の足首関節J3からあらかじめ定めた所定値H0(>0)だけ鉛直方向下方に離れた点のZ軸成分に等しいとする。すなわち、U(左COP/IC)z=U(J_左足首/IC)z−H0とする。ここで、所定値H0は、人Aに装備した補助装備1の足平装着部3の足平基体13の底面のほぼ全体を水平な床面上に接触させた状態における床面から足首関節J3の中心までの鉛直方向距離であり、あらかじめ実測されて演算処理装置25のメモリに記憶保持されている。所定値H0は左右の各脚体毎に各別に実測してもよいが、いずれかの一方の脚体について実測した値を左右の両脚体で共通に使用してもよい。
本実施形態では、以上の如く、左脚体が接地している場合に該左脚体に作用する床反力の作用点である床反力作用点の位置ベクトルU(左COP/IC)が求められる。右脚体が接地している場合についても同様である。この場合、両脚接地状態では、各脚体のそれぞれについて上記の如く床反力作用点の位置ベクトルが求められる。
なお、本実施形態では、床反力作用点の位置ベクトルU(COP/IC)のZ軸成分を求めるために用いる前記所定値H0を一定値としたが、接地センサ34,35により、足平部S9のつま先側のみが接地していること、すなわち、接地センサ35のみが接地有りを示すON信号を出力している場合には、上記所定値H0の代わりに、その接地している脚体について、足首関節J3およびMP関節J4のそれぞれの位置ベクトルU(J_足首/IC),U(J_MP/IC)のZ軸成分の差(U(J_足首/IC)z−U(J_MP/IC)z)、すなわち、足首関節J3とMP関節J4との鉛直方向距離を使用するようにしてもよい。このようにすると、U(COP/IC)の精度を高めることができる。
床反力作用点推定手段57の演算処理では、最後に、上記の如く接地している各脚体について求めた床反力作用点の位置ベクトルU(COP/IC)に、先に求めた変換テンソルR(BC→IC)の転置である逆変換テンソルR(IC→BC)を乗算することにより、床反力作用点の位置ベクトルの身体座標系BCでの値U(COP/BC)が求められる。
次に、床反力推定手段58の演算処理を説明する。まず、この演算処理の原理を図12および図13を参照して説明する。図12および図13は、それぞれ単脚支持状態、両脚支持状態の人Aの下半身を人剛体リンクモデルS1で模式化して示している。なお、図12および図13の人剛体リンクモデルS1では、図示の便宜上、各剛体要素を大きさ(幅)をもった要素として表現している。また、この床反力推定手段58の説明では、床反力、角運動量、位置ベクトルなどのベクトル量は、特にことわらない限り、身体座標系BCで表現されるものとし、単にX軸、Y軸、Z軸というときは、それらの座標軸は身体座標系BCの座標軸を意味するものとする。従って、ベクトル量を表記するとき、しばしば座標系の名称を省略する。例えば、人Aの右脚体に作用する床反力を身体座標系BCで表現したものをFrf(右脚体/BC)と表記する代わりに、Frf(右脚体)と略記し、そのX軸成分をFrf(右脚体)xと略記する。
人Aの運動時には、一般に、該人Aの全体の角運動量が時間的に変化し、この角運動量の時間的変化率(時間微分値)である全角運動量変化率は、床反力以外の外力(重力を除く)が人Aに作用していない場合、人Aに作用する全ての床反力(ベクトル)の総和である全床反力(ベクトル)が人Aの全体重心G_全体の廻りに発生するモーメント(あるいは各脚体に作用する床反力がそれぞれG_全体の廻りに発生するモーメントの総和)に等しい。なお、人Aの単脚支持状態では、接地していない脚体に作用する床反力は0であるから、接地している一つの脚体に作用する床反力が全床反力であり、人Aの両脚支持状態では、接地している左右の両脚体にそれぞれ作用する床反力の総和(ベクトル和)が全床反力である。補足すると、接地している脚体に作用する実際の床反力は、該脚体の接地面に分布するものとなるが、本明細書では該脚体の床反力作用点COPに床反力が集中している(接地面に分布する床反力の重心が床反力作用点COPに在る)とみなす。
また、一般に、ある並進力が、任意の点PP廻りに発生するモーメントの、任意の一つの軸XX廻りの成分の大きさは、軸XXに垂直な面SS上で見た、該並進力の作用線(該並進力の作用点を通って該並進力と同じ方向の直線)と点PPとの距離であるモーメントアーム長を、該並進力の面SS上での成分(該並進力の軸XXに垂直な成分)の大きさに乗算したものに等しい。
従って、人Aの全角運動量変化率の、ある所定軸廻りの成分の大きさは、人Aに作用する全床反力の、該所定軸に垂直な面上での成分ベクトル(2次元ベクトル)の大きさ(絶対値)に、ある長さのモーメントアーム長を乗算したものに一致する。また、該全床反力の、所定軸に垂直な面上での成分がG_全体の廻りに発生するモーメントの向きは、全角運動量変化率の所定軸廻りの成分の向きに一致する。
このようなことを考慮し、本実施形態では、接地している各脚体2に作用する床反力の所定軸に垂直な面での成分ベクトルの向きを、上記モーメントアーム長と全角運動量変化率の所定軸廻りの成分(特にその向き)とを用いて規制することとした。
具体的には、人Aの全角運動量変化率のY軸(人Aの左右方向の軸)廻りの成分に着目し、図12に示す人Aの単脚支持状態では、足平装着部3を介して接地している脚体(図示の例では右脚体)に作用している床反力Frf(右脚体)(=全床反力)のY軸に垂直な面(XZ平面)上での成分ベクトルFrf(右脚体)x,zの向きを、その作用線K(図示の例では接地している右脚体の床反力作用点COPを通る直線K(右))がG_全体を中心とするある半径r(=モーメントアーム長)の円Ciに接し、且つ、その作用線の向きのFrf(右脚体)x,zによってG_全体の廻りに発生するモーメントの向きが全角運動量変化率L'(L'は全角運動量Lの1階微分値を意味する)のY軸廻り成分L'yの向きと同じになるような向きに規制する。このことは、左脚体のみが足平装着部3を介して接地している単脚支持状態でも同様である。
補足すると、単脚支持状態では、接地している脚体に作用する床反力は、全床反力に等しいので、上記のように接地している脚体に作用する床反力のXZ平面上での成分ベクトルの向きを規制したとき、全床反力のXZ平面上での成分ベクトルがG_全体の廻りに発生するモーメントの向きも、全角運動量変化率のY軸廻り成分L'yの向きと同じになる。そして、この場合は、接地している脚体に作用している床反力のY軸に垂直な面上での成分ベクトルFrf(脚体)x,zの大きさ(絶対値)に、上記円Ciの半径であるモーメントアーム長rを乗算したものが全角運動量変化率のY軸廻り成分L'yの大きさ(絶対値)に一致する。
また、図13に示す人Aの両脚支持状態では、右脚体に作用している床反力Frf(右脚体)のY軸に垂直な面(XZ平面)上での成分ベクトルFrf(右脚体)x,z、の方向を、その作用線K(右)がG_全体を中心とするある半径r(=モーメントアーム長)の円Ciに接し、且つ、その作用線K(右)の向きのFrf(右脚体)x,zによってG_全体の廻りに発生するモーメントの向きが全角運動量変化率L'のY軸廻り成分L'yの向きと同じになるような向きに規制する。同様に、左脚体に作用している床反力Frf(左脚体)のY軸に垂直な面(XZ平面)上での成分ベクトルFrf(左脚体)x,z、の向きを、その作用線K(左)が上記半径rの円Ciに接し、且つ、その作用線K(左)の向きのFrf(左脚体)x,zによってG_全体の廻りに発生するモーメントの向きが全角運動量変化率L'のY軸廻り成分L'yの向きと同じになるような向きに規制する。
補足すると、両脚支持状態では、上記のように左右の各脚体に作用する床反力のXZ平面上での成分ベクトルの向きを規制したとき、それらの成分ベクトルの総和(全床反力のXZ平面上での成分ベクトル)がG_全体の廻りに発生するモーメントの向きも、全角運動量変化率のY軸廻り成分L'yの向きと同じになる。但し、この場合は、右脚体に作用している床反力Frf(右脚体)のXZ平面上での成分ベクトルFrf(右脚体)x,zの大きさ(絶対値)と、左脚体に作用している床反力Frf(左脚体)のXZ平面上での成分Frf(左脚体)x,zの大きさ(絶対値)とにそれぞれ、上記円Ciの半径であるモーメントアーム長rを乗算したものの総和は、一般には、全角運動量変化率L'のY軸廻り成分L'yの大きさに一致しない。
以上説明したことを考慮し、本実施形態における床反力推定手段58の演算処理では、以下に説明するように、全角運動量変化率L'のY軸廻り成分L'yと、全床反力(以下、これをFrf(全体)と称する)のY軸に垂直な面上での成分ベクトル(身体座標系BCの矢状面としてのXZ平面上での成分)とからモーメントアーム長rを求める。そして、このモーメントアーム長rを用いて、接地している各脚体に作用する床反力(詳しくは該床反力のXZ平面上での成分ベクトル)の向きを決定する。このように床反力の向きを決定すれば、該床反力の各座標成分値の比率が定まるので、それと、全床反力とから該床反力の各座標成分値を求めることができる。なお、床反力のY軸成分は、人側関節モーメント推定手段41が最終的に求める関節モーメント(脚平面PLに垂直な軸廻りの関節モーメント)にはさほど影響を及ぼさないことから、本実施形態では、床反力のY軸成分は無視する(Y軸成分を0とする)。
以下に床反力推定手段58の演算処理を図14などを参照しつつ具体的に説明する。図14は、床反力推定手段58の演算処理機能を示すブロック図である。
図14に示すように、床反力推定手段58は、全角運動量変化率算出手段58a、全床反力算出手段58b、モーメントアーム長算出手段58c、床反力方向決定手段58dおよび床反力成分算出手段58eを備えている。全角運動量変化率算出手段58aには、前記身体座標系加速度・角速度算出手段54で求められた身体座標系BCの原点BCOの角速度ω(BCO/BC)と、前記3次元関節・要素重心位置算出手段53で求められた各関節要素の位置ベクトルおよび各剛体要素の重心の位置ベクトルと、前記全体重心位置算出手段56で求められたG_全体の位置ベクトルとが入力される。
そして、全角運動量変化率算出手段58aは、これらの入力値を使用して、次式(8a)の演算により、全角運動量変化率L’のY軸廻り成分L'yを求める。
L'y=Σ(I_n×θ''(n)y)
+Σ(m_n×ΔU(G_n)
×ΔACC(G_n))y
……(8a)
但し、ΔU(G_n)≡U(G_n)−U(G_全体)
ΔACC(G_n)≡ACC(G_n)−ACC(G_全体)
=U(G_n)''−U(G_全体)''
この式(8a)において、「n」は各剛体要素に任意に割り当てた番数を意味し、I_nは番数nの剛体要素の慣性モーメント、θ''(n)は、番数nの剛体要素のその重心廻りの角加速度である。従って、式(8a)の第1項のΣの演算は、各剛体要素の慣性モーメントI_nと角加速度θ''(n)のY軸成分との積(これは各剛体要素がその回転運動によって発生するモーメントのY軸成分である)を、全ての剛体要素について加算する演算である。また、m_nは番数nの剛体要素の重量、U(G_n)は、番数nの剛体要素の重心の身体座標系BCでの位置ベクトル、ACC(G_n)は、番数nの剛体要素の重心の加速度、ΔU(G_n)は、番数nの剛体要素の重心の、G_全体に対する位置ベクトル、ΔACC(G_n)は、番数nの剛体要素の重心の、G_全体に対する相対加速度である。従って、式(8a)の第2項のΣの演算は、各剛体要素の重心のG_全体に対する位置ベクトルΔU(G_n)と、該剛体要素の重心の全体重心G_全体に対する相対加速度ΔACC(G_n)とのベクトル積に該剛体要素の重量を乗算したもの(これは各剛体要素がその重心の並進加速度運動によってG_全体廻りに発生するモーメントである)のY軸成分を、全ての剛体要素について加算する演算である。補足すると、番数nの剛体要素の重心を通ってΔACC(G_n)と同方向の直線とG_全体とのXZ平面上での距離をr(G_n)、番数nの剛体要素の重心の並進運動をG_全体の廻りの回転運動とみなしたときの該剛体要素の重心のY軸廻りの角加速度をθ(G_n)とおいたとき、ΔU(G_n)とΔACC(G_n)とのベクトル積のY軸成分(=(ΔU(G_n)×ΔACC(G_n))y)は、r(G_n)2×θ(G_n)に等しい。
この場合、式(8a)の第1項のΣの演算で必要なI_nは、あらかじめ演算処理装置25の図示しないメモリに記憶保持されている。また、θ''(n)yは、次のように求められる。すなわち、前記3次元関節・要素重心位置算出手段53で求めた脚体部S2の各関節要素の位置ベクトル(U(J_左股/BC)等)から、XZ平面(身体座標系BCの矢状面)上での各剛体要素の傾斜角度が逐次求められ、さらにその傾斜角度の2階微分値に、前記身体座標系加速度・角速度算出手段54で求めた身体座標系BCの原点BCOの角速度ω(BCO/BC)のY軸成分の1階微分値を加算することで、該剛体要素の角加速度のY軸成分θ''(n)yが求められる。
また、式(8a)の第2項のΣの演算で必要なΔU(G_n)は、前記3次元関節・要素重心位置算出手段53で求めた各剛体要素の重心の位置ベクトル(U(G_大腿部/BC)等)と、前記全体重心位置算出手段56で求めたG_全体の位置ベクトルU(G_全体/BC)とから、式(8a)の但し書きの定義に従って求められる。さらに、ΔACC(G_n)は、3次元関節・要素重心位置算出手段53で求めた各剛体要素の重心の位置ベクトルの2階微分値U(G_n)''と、全体重心位置算出手段56で求めたG_全体の位置ベクトルの2階微分値U(G_全体)''とから、式(8a)の但し書きの定義に従って求められる。
前記全床反力算出手段58bには、前記身体座標系加速度・角速度算出手段54で求められた身体座標系BCの原点BCOの加速度ACC(BCO/BC)と、前記全体重心位置算出手段56で求められたG_全体の位置ベクトルU(G_全体/BC)とが入力される。
そして、全床反力算出手段58bは、これらの入力値から、次式(8b)の演算により、全床反力Frf(全体)のXZ平面上での成分ベクトルFrf(全体)x,z(Frf(全体)のX軸成分およびZ軸成分からなる2次元ベクトル)を求める。
Frf(全体)x,z=全体重量×(ACC(BCO/BC)+U(G_全体/BC)'')x,z
……(8b)
すなわち、全床反力のY軸に垂直な成分ベクトルFrf(全体)x,zは、身体座標系BCの原点BCOの加速度ACC(BCO/BC)と、G_全体の位置ベクトルU(G_全体/BC)の2階微分値U(G_全体/BC)''とを加算してなるベクトル(これはG_全体の加速度を意味する)のXZ平面上での成分に、人Aの全体重量を乗算することで求められる。
次に、上記の如く求められた全角運動量変化率L'のY軸廻り成分L'yと、全床反力のXZ平面(矢状面)上での成分ベクトルFrf(全体)x,zとは、前記モーメントアーム長算出手段58cに入力され、ここで、それらの入力値からモーメントアーム長が求められる。この場合、前記した如く、L'yの大きさは、全床反力のXZ平面上での成分ベクトルFrf(全体)x,zの大きさにモーメントアーム長を乗算したものに一致する。そこで、モーメントアーム長算出手段58cは、次式(8c)によりモーメントアーム長rを求める。
r=L'y/|Frf(全体)x,z| ……(8c)
なお、本実施形態では、上記式(8c)により求められるモーメントアーム長rは、全角運動量変化率のY軸廻り成分L'yの向き(符号)に応じて正負の値を採る。この場合、本実施形態では、L'yが前記図12および図13に示す矢印の向きであるとき、L'yの値が正の値であるとした。従って、モーメントアーム長rが正の値であるか負の値であるかによって、Frf(全体)x,zがG_全体廻りに発生するモーメント(Y軸廻りのモーメント)の向きが定まるようになっている。
このように求められたモーメントアーム長rは、次に前記床反力方向決定手段58dに入力される。該床反力方向決定手段58dには、さらに接地センサ34,35の出力と、前記床反力作用点推定手段57で推定された床反力作用点COPの位置ベクトルU(COP/BC)とが入力される。そして、床反力方向決定手段58dは、これらの入力値を使用して、次のように接地している各脚体に作用する床反力の方向(向き)を決定する。
まず、接地センサ34,35の検出出力を基に、人Aの両脚支持状態であるか、単脚支持状態であるかが判断される。すなわち、一方の脚体の接地センサ34,35のいずれかが接地有りを示すON信号を出力し、且つ、他方の脚体の接地センサ34,35のいずれかが接地有りを示すON信号を出力している場合には両脚支持状態であると判断される。また、両脚体のうちの一方の脚体の接地センサ34,35のいずれかが接地有りを示すON信号を出力しており、且つ、他方の脚体の接地センサ34,35の両者が接地有りを示すON信号を出力していない場合には、単脚支持状態であると判断される。
そして、両脚支持状態であるときには、図13に示す如く、右脚体に係る床反力Frf(右脚体)の向き(XZ平面上での向き)については、右脚体の床反力作用点COPを通って、G_全体を中心とする半径r(より正確には|r|)の円に接する直線K(右)の身体座標系BCでの傾きα(右脚体)を該右脚体の床反力Frf(右脚体)の向き(XZ平面上での向き)を表すものとして決定する。この場合、モーメントアーム長rが正であるときには、直線K(右)は、半径rの円Ciの後方側の部分に接するものとする。つまり、直線K(右)を作用線として床反力Frf(右脚体)のXZ平面上での成分ベクトルFrf(右脚体)x,zが床反力作用点COPに作用したとき、それによって、G_全体廻りに発生するモーメントのY軸廻り成分の向きが全角運動量変化率のY軸廻り成分L'yの向きと同じなるように円Ciに接する直線K(右)の傾きα(右脚体)が決定される。左脚体についても右脚体の場合と同様に、該左脚体の床反力Frf(左脚体)の向き(矢状面上での向き)を表す直線K(左)の身体座標系BCでの傾きα(左脚体)が決定される。なお、本実施形態では、傾きαは、左右いずれの脚体についても、直線Kの、X軸方向の単位変化量に対するZ軸方向の変化量の比の値である。
また、単脚支持状態であるときには、図12に示す如く、接地している脚体(図の例では右脚体)の床反力作用点COPからG_全体までのベクトル(COPに対するG_全体の位置ベクトル)のXZ平面上での成分ベクトル(身体座標系BCの矢状面で見た2次元ベクトル)をCGとおくと、このCGと、右脚体の床反力作用点COPを通って、G_全体を中心とする半径r(より正確には|r|)の円に接する直線K(右)とのなす角度θaが、床反力Frf(右脚体)の向き(矢状面上での向き)を表すものとして決定される。この場合、モーメントアーム長rが正であるときには、直線K(右)は、半径rの円Ciの後方側の部分に接するものとする。つまり、直線K(右)を作用線として床反力Frf(右脚体)のXZ平面上での成分ベクトルFrf(右脚体)x,zが床反力作用点COPに作用したとき、それによって、G_全体廻りに発生するモーメントのY軸廻り成分の向きが全角運動量変化率のY軸廻り成分の向きと同じなるようにベクトルCGに対する直線K(右)のXZ平面上での角度θaが決定される。
このような角度θaは、次式(8d)により算出される。
θa=−sin−1(r/|CG|) ……(8d)
この場合、ベクトルCGの絶対値は、前記床反力作用点推定手段57で求められた床反力作用点COPの位置ベクトルU(右COP/BC)と、前記全体重心位置算出手段56で求められたG_全体の位置ベクトルU(G_全体/BC)とから算出される。
左脚体のみが接地する単脚支持状態においても、上記と同様に左脚体の床反力作用点COPに対するG_全体の位置ベクトルのXZ平面上での成分ベクトルCGと、左脚体の床反力作用点COPを通って、G_全体を中心とする半径r(より正確には|r|)の円に接する直線K(左)とのなす角度θaが床反力Frf(左脚体)のXZ平面上での成分ベクトルFrf(左脚体)x,zの向きを表すものとして決定される。
以上説明した床反力方向決定手段58dの処理により、接地している各脚体2に作用する床反力FrfのXZ平面(身体座標系BCの矢状面)での成分ベクトルFrf(脚体)x,zの作用線が前記式(8c)により決定したモーメントアーム長rを半径、G_全体を中心とする円Ciに接し、且つ、その作用線の方向のFrf(脚体)x,zがG_全体廻りに発生するモーメントが、角運動量変化率のY軸廻り成分L'yに一致するように、接地している各脚体2に作用する床反力Frfの向き(身体座標系BCの矢状面上での向き)が決定されることとなる。
次に、床反力方向決定手段58dにより決定された床反力の方向(両脚支持状態では傾きα、単脚支持状態では角度θa)は、前記床反力成分算出手段58eに入力される。なお、床反力成分算出手段58eは、前記全床反力算出手段58bで求められた全床反力のXZ平面上での成分Frf(全体)x,zも入力される。また、単脚支持状態では、床反力方向決定手段58dから、その処理で求めたベクトルCGも入力される。さらに、各脚体の床反力作用点COPの位置ベクトルおよびG_全体の位置ベクトルも入力される。
そして、床反力成分算出手段58eは、それらの入力値から、接地している各脚体に作用する床反力Frfの、身体座標系BCでの座標成分値を次のようにして求める。
まず、両脚支持状態である場合について説明する。両脚支持状態での各脚体に作用する床反力(詳しくはそのX軸成分およびZ軸成分)は、次式(9a)〜(9d)の関係式に基づいて決定される。
Frf(右脚体)x+Frf(左脚体)x=Frf(全体)x ……(9a)
Frf(右脚体)z+Frf(左脚体)z=Frf(全体)z ……(9b)
Frf(右脚体)z=α(右脚体)×Frf(右脚体)x ……(9c)
Frf(左脚体)z=α(左脚体)×Frf(左脚体)x ……(9d)
式(9a)、(9b)は、各脚体に作用する床反力の総和が全床反力に一致するということを表す式である。また、式(9c)、(9d)は、各脚体に作用する床反力の方向によって、その床反力の成分値の比率が定まるということを示す式である。
そして、これらの式(9a)〜(9d)から、Frf(右脚体)x、Frf(右脚体)z、Frf(左脚体)x、Frf(左脚体)zがそれぞれ次式(9e)〜(9h)により求められる。
Frf(右脚体)x=(Frf(全体)z
−α(左脚体)×Frf(全体)x)/Δα ……(9e)
Frf(右脚体)z=(α(右脚体)×Frf(全体)z
−α(右脚体)×α(左脚体)×Frf(全体)x)/Δα
……(9f)
Frf(左脚体)x=(−Frf(全体)z
+α(右脚体)×Frf(全体)x)/Δα ……(9g)
Frf(左脚体)z=(−α(左脚体)×Frf(全体)z
+α(右脚体)×α(左脚体)×Frf(全体)x)/Δα
……(9h)
但し、Δα=α(右脚体)−α(左脚体)
従って、両脚支持状態であるときには、基本的には、上記式(9e)〜(9h)の右辺の演算によって、各脚体に作用する床反力のX軸成分、Z軸成分、すなわち、Frf(脚体)x,zを算出することができる。
但し、両脚支持状態での両脚体の足平部(足平要素S4)の前後方向(X軸方向)の距離が短いときには、α(右脚体)およびα(左脚体)の値が互いに近い値となり(Δαが0に近い値となる)、前記式(9e)〜(9h)で求められる床反力の精度が低下する。
ここで、両脚支持状態での両足平部(両足平要素S4,S4)のX軸方向での距離(以下、足平間前後距離という。図13を参照)が短いときには、両脚体2,2にそれぞれ作用する床反力がほぼ等しいと考えられる。また、それらの床反力の合力がG_全体廻りに発生するモーメントのY軸廻り成分の向きは、全角運動量変化率のY軸廻り成分L'yの向きに一致すべきである。そこで、本実施形態では、足平間前後距離が所定の第1閾値以下であるときには、次の式(10)により各脚体2に作用する床反力のX軸成分、Z軸成分を算出することとした。
式(10)の但し書き中のCavGは、左右の脚体のそれぞれの床反力作用点COPを結ぶ線分の中点Cavから、G_全体までのベクトル(当該中点Cavに対するG_全体の位置ベクトル)のXZ平面上での成分ベクトルである。なお、Cavの身体座標系BCでの位置ベクトルは、左右の各床反力中心点COPの位置ベクトルの平均値(=(U(右COP)+U(左COP))/2)として算出される。また、θbは、ベクトルCavGと、XZ平面上で上記中点を通って、G_全体を中心とする半径r(より正確には|r|)の円に接する直線とのなす角度であり、前記式(8d)の右辺の「CG」を「CavG」で置き換えた式によって算出される。従って、式(10)のFrf_s(全体)x,zは、両脚体の床反力作用点COPを結ぶ線分の中点CavからG_全体までのベクトルのXZ平面上での成分ベクトルと同じ向きを持ち、且つ、Frf(全体)x,zの大きさを持つベクトルを角度θbだけ当該中点Cavの廻りにXZ平面(矢状面)上で回転させたベクトル(2次元ベクトル)である。このため、XZ平面上において、Frf_s(全体)x,zの作用線(XZ平面上で上記中点を通ってベクトルFrf_s(全体)x,zと同方向の直線)は、G_全体を中心とする半径rの円Ciに接する。
従って、両脚支持状態で足平間前後距離が第1閾値以下であるときに前記式(10)により求められるFrf(右脚体)x,z,Frf(左脚体)x,zは、互いにその大きさ及び向きが等しく、且つ、その総和の大きさが全床反力Frf(全体)の大きさに等しいものとなる。また、足平間前後距離が第1閾値以下のときには、各脚体の床反力作用点COPのXZ平面上での位置と、前記中点CavのXZ平面での位置とは、ほぼ等しいので、Frf(右脚体)x,z,Frf(左脚体)x,zのそれぞれの作用線(床反力中心点COPを通るXZ平面上での作用線)は、概ね、G_全体を中心とする半径rの円Ciに接するものとなる。
また、足平間前後距離が上記第1閾値よりも大きい所定の第2閾値以上であるときに、前記式(9e)〜(9h)により各脚体に作用する床反力のX軸成分、Z軸成分を算出することとした。さらに、足平間前後距離が第1閾値と第2閾値との間の距離であるときには、式(9e)〜(9h)により求められる床反力のX軸成分、Z軸成分(以下、これらの成分の組から成るベクトルに参照符号Frf1x,zを付する)と、式(10)により求められる床反力のX軸成分、Z軸成分(以下、これらの成分の組から成るベクトルに参照符号Frf2x,zを付する)との重み付き平均値を、各脚体に作用する床反力のX軸成分、Z軸成分として求めることとすると共に、その重み係数の値を足平間前後距離に応じて連続的に変化させるようにした。
従って、両脚支持状態において床反力成分算出手段58eが最終的に求める、各脚体の床反力のXZ平面上での成分ベクトルFrf(脚体)x,z(Frf(脚体)x,zの推定値の真値)は、次式(11a)により求められる。
Frf(脚体)x,z=W×Frf1x,z+(1−W)×Frf2x,z
……(11a)
ここで、Wは重み係数であり、その値は、図15に示す如く定められたデータテーブルあるいは演算式により、足平間前後距離に応じて決定される。この場合、足平間前後距離としては、例えば両脚体のそれぞれの床反力作用点COPの、身体座標系BCでのX軸方向の距離、すなわち|U(右COP/BC)x−U(左COP/BC)x|が使用される。なお、足平間前後距離として、例えば両脚体のそれぞれのMP関節のX軸方向距離や、足首関節のX軸方向距離を使用するようにしてもよい。
なお、両脚支持状態において、直線K(右)又は直線K(左)がZ軸にほぼ平行となる場合もあり、その場合には、傾きα(右脚体)またはα(左脚体)の全体値が無限大もしくは過大に大きなものとなる。そこで、本実施形態では、傾きαの絶対値があらかじめ定めた所定値を超えるような場合には、強制的にαの値をその所定値に制限するようにしている。
一方、単脚支持状態で足平装着部3を介して接地している脚体に作用する床反力(詳しくはそのX軸成分およびZ軸成分)は、次式(11b)により算出される。
すなわち、接地している脚体に作用する床反力のXZ平面上での成分ベクトルFrf(脚体)x,zは、その脚体の床反力作用点COPからG_全体に向かい、且つ、Frf(全体)x,zの大きさを持つベクトルを角度θaだけ床反力作用点COPの廻りにXZ平面(矢状面)上で回転させたベクトルとして求められる。このようにして求められるFrf(脚体)x,zは、その作用線がG_全体を中心とする半径rの円Ciに接することとなる。
なお、本実施形態では、両脚支持状態および単脚支持状態のいずれの場合にあっても、先に述べたように床反力のY軸成分は0とする。また、単脚支持状態で、接地していない脚体に作用する床反力は0とされる。
以上のように床反力成分算出手段58eの処理を行なうことで、両脚支持状態では、床反力の成分ベクトルFrf(右脚体)x,z、Frf(左脚体)x,zのそれぞれの作用線(XZ平面上で各脚体の床反力作用点COPを通る作用線)がG_全体を中心とする半径r(モーメントアーム長)の円Ciに接すると共に、Frf(右脚体)x,z、Frf(左脚体)x,zのそれぞれが(ひいては、それらの総和が)G_全体の廻りに発生するモーメント(Y軸廻りのモーメント)の向きが全角運動量変化率のY軸廻り成分L'yの向きに一致するように、Frf(右脚体)x,z、Frf(左脚体)x,zのそれぞれの向きが決定される。そして、その上で、Frf(全体)x,zに、Frf(右脚体)x,z、Frf(左脚体)x,zの総和(=Frf(右脚体)x,z+Frf(左脚体)x,z)が一致するようにFrf(右脚体)x,z、Frf(左脚体)x,zの推定値(X軸成分の値とZ軸成分の値との組))が求められる。
また、単脚支持状態では、足平装着部3を介して接地している脚体の床反力の成分ベクトルFrf(脚体)x,z、の作用線(該脚体の床反力作用点COPを通る作用線)がXZ平面上においてG_全体を中心とする半径r(モーメントアーム長)の円Ciに接すると共に、そのFrf(脚体)x,z、がG_全体の廻りに発生するモーメント(Y軸廻りのモーメント)の向きが全角運動量変化率のY軸廻り成分L'yの向きに一致するように、Frf(脚体)x,zの向きが決定される。し、且つ、Frf(全体)x,zの大きさ(絶対値)に、Frf(脚体)x,zの大きさ(絶対値)が一致するように接地している脚体に係るFrf(脚体)x,z、が求められる。
その結果、両脚支持状態および単脚支持状態のいずれにおいても、身体座標系BCの矢状面上でのFrfの向き(Frf(脚体)x,zの向き)を安定させることができる。
以上の如く求められるFrf(脚体)x,zは、補助装具1を装着した人Aの運動が、該人Aから補助装具1を取り外して行なわれたとした場合に人Aの各脚体に作用する床反力のXZ平面上での成分ベクトルの推定値である。換言すれば、その床反力Frf(脚体)x,zは、補助装具1を装着した人Aの運動と同じ運動を、該人Aが単独で(補助装具1を装着せずに)行なう上で動力学的に必要な床反力のXZ平面上での成分ベクトルの推定値である。
なお、本実施形態では、床反力Frf(脚体)のY軸成分を0としたが、さらに全角運動量変化率のX軸廻り成分を考慮し、この全角運動量変化率のX軸廻り成分の向きと、足平装着部3を介して接地している各脚体2の床反力のYZ平面上での成分ベクトルFrf(脚体)y,zの総和がG_全体の廻りに発生するモーメント(X軸廻りのモーメント)の向きとが一致するように、YZ平面上での床反力の成分ベクトルFrf(脚体)y,zの向きを決定するようにしてもよい。その向きの決定は、前記した場合と同様に、XZ平面上でのモーメントアーム長と、そのモーメントアーム長の半径を有する円を使用して行なえばよい。そして、Frf(脚体)y,zの向きを決定した上で、両脚支持状態では、各脚体2に作用する床反力のYZ平面上での成分ベクトルFrf(脚体)y,zの総和が全床反力のYZ平面上での成分ベクトルFrf(全体)y,zに一致するように各Frf(脚体)y,zの各座標成分値を求め、また、単脚支持状態では、接地している脚体2に作用する床反力のYZ平面上での成分ベクトルFrf(脚体)y,zの大きさが全床反力のYZ平面上での成分ベクトルFrf(全体)y,zの大きさに一致するようにFrf(脚体)y,zの各座標成分値を求めるようにしてもよい。
以上が床反力推定手段58の演算処理である。なお、上記の如く求めた床反力の推定値からノイズ成分を除去するために、該推定値にフィルタリング処理を施したものを最終的に床反力の推定値として得るようにしてもよい。そのフィルタリング処理としては、例えば2次のバタワースフィルタ(ローパスフィルタ)を使用するフィルタリング処理が挙げられ、該バタワースフィルタの遮断周波数は、例えば3Hz程度が好適である。
次に、人側関節モーメント推定手段41は、前記脚平面投影手段59の演算処理を実行する。この処理では、身体座標系加速度・角速度算出手段54で算出された身体座標系BCの原点BCOの加速度ベクトルACC(BCO/BC)および角速度ベクトルω(BCO/BC)と、床反力推定手段58で算出された床反力Frf(右脚体/BC),Frf(左脚体/BC)と、床反力作用点推定手段57で算出された床反力作用点COPの位置ベクトルU(COP/BC)とが変換テンソル作成手段51で作成された変換テンソルR(LC→BC)の転置である変換テンソルR(BC→LC)(=R(LC→BC)T)を用いて各脚体部S2毎に、それに対応する脚平面PLに投影される。
具体的には、加速度ベクトルACC(BCO/BC)および角速度ベクトルω(BCO/BC)に次式(12a)、(12b)の如く、それぞれ変換テンソルR(BC→LC)を乗算することにより、各脚座標系LCから見た加速度ベクトルACC(BCO/LC)および角速度ベクトルω(BCO/LC)が求められる。
ACC(BCO/LC)=R(BC→LC)×ACC(BCO/BC) ……(12a)
ω(BCO/LC)=R(BC→LC)×ω(BCO/BC) ……(12b)
なお、加速度ベクトルACC(BCO/LC)および角速度ベクトルω(BCO/LC)は、それぞれ左脚体部S2に係わる脚座標系LCに対応するものと、右脚体部S2に係わる脚座標系LCに対応するものとが各別に求められる。
同様に、床反力ベクトルFrf(右脚体/BC),Frf(左脚体/BC)に次式(12c)、(12d)の如く、それぞれ変換テンソルR(BC→右LC)、R(BC→左LC)を乗算することにより、各脚座標系LCから見た床反力Frf(右脚体/右LC),Frf(左脚体/右LC)が求められる。
Frf(右脚体/右LC)=R(BC→右LC)×Frf(右脚体/BC) ……(12c)
Frf(左脚体/左LC)=R(BC→左LC)×Frf(左脚体/BC) ……(12d)
さらに、着地している各脚体に係わる床反力作用点COPの位置ベクトルU(COP/BC)に次式(12e)の如く、その着地している脚体に対応する変換テンソルR(BC→LC)を乗算することにより、該脚体に対応する脚座標系LCから見た床反力作用点COPの位置ベクトルU(COP/LC)が求められる。
U(COP/LC)=R(BC→LC)×U(COP/BC) ……(12e)
なお、位置ベクトルU(COP/LC)は、人Aの単脚支持状態では着地側の脚体に対応するもののみが求められ、両脚支持状態では、左右のそれぞれの脚体毎に求められる。
ここで、加速度ベクトルACC(BCO/LC)、床反力Frf(右脚体/右LC),Frf(左脚体/左LC)および床反力作用点の位置ベクトルU(COP/LC)については、それぞれのX座標成分およびZ座標成分の組が、それぞれに対応する身体座標系BCでのベクトル(3次元量)を各脚平面PL(脚座標系LCのXZ平面)に投影してなる2次元量のベクトルとして得られる。例えば、図16を参照して、身体座標系BCでの右脚体に係わる床反力ベクトルFrf(右脚体/LC)が図示の実線で示すようなベクトルであるとすると、床反力ベクトルFrf(右脚体/右LC)のX座標成分およびZ座標成分の組は、同図に破線で示すような脚平面PL(右)上のベクトルとなる。
なお、脚平面PL上での脚体の回転運動は、脚平面PLの法線方向(脚座標系LCのY軸方向)の軸廻りの回転運動であるから、角速度ベクトルω(BCO/BC)を脚平面PLに投影したものは、前記式(12b)により求められる脚座標系LCでの角速度ベクトルω(BCO/LC)のY座標成分である。
以下の関節モーメント算出手段60の説明では、加速度ベクトルACC(BCO/LC)、床反力Frf(右脚体/右LC),Frf(左脚体/左LC)および床反力作用点の位置ベクトルU(COP/LC)は、そのX軸成分およびZ軸成分の組から成る2次元ベクトルを意味するものとする。例えば加速度ベクトルACC(BCO/LC)は、(ACC(BCO/LC)x,ACC(BCO/LC)z)Tを意味する。なお、角速度ωについては、脚平面PL上での値はω(BCO/LC)yで表す。
次に、人側関節モーメント推定手段41は、関節モーメント算出手段60による演算処理を実行する。この関節モーメント算出手段60の演算処理の概略を説明すると、各脚体部S2の足平部要素S9(S_足平部)、下腿部要素S8(S_下腿部)、大腿部要素S7(S_大腿部)のそれぞれの並進運動および回転運動に関する運動方程式に基づく逆動力学モデルの演算によって、足平部要素S9、下腿部要素S8、および大腿部要素S7のそれぞれの腰部要素S4側の端点の関節要素J_足首、J_膝、J_股の関節モーメントが順番に算出される。この場合、逆動力学モデルは、各脚体部S2毎に、それに対応する脚平面PL(脚座標系LCのXZ平面)上で取扱われる。なお、この算出処理の基本的な考え方は、逆動力学モデルを取扱う平面及び座標系を除いて本願出願人が先に提案した特開2003−89083号公報等のものと同じである。
以下、具体的に説明すると、各脚体部S2の足平部要素S9、下腿部要素S8、大腿部要素S7のそれぞれの脚平面PL上での並進運動の運動方程式は次の式(15a)〜(15c)により与えられる。なお、以下の説明において、足平部要素S9、下腿部要素S8、および大腿部要素S7のそれぞれの剛体要素の両端のうち、腰部要素S4に近い側の一端部を「P_○○」、遠い側の他端部「D_○○」(○○は剛体要素を表す名称)というように表記することがある。例えば図17に示す如く、下腿部要素S8の膝関節J_膝(J2)側の端部を「P_下腿部」、足首関節J_足首(J3)側の端部を「D_下腿部」というように表記する。
F(P_足平部/LC)=m_足平部×(ACC(BCO/LC)+U(G_足平部/LC)'')
−Frf(脚体/LC) ……(15a)
F(P_下腿部/LC)=m_下腿部×(ACC(BCO/LC)+U(G_下腿部/LC)'')
−F(D_下腿部/LC) ……(15b)
F(P_大腿部/LC)=m_大腿部×(ACC(BCO/LC)+U(G_大腿部/LC)'')
−F(D_大腿部/LC) ……(15c)
ここで、上記各式(15a)〜(15c)中に現れる2つのF(P_○○/LC)、F(D_○○/LC)は、その○○で表される名称の剛体要素の端部が、それに接触する物体から受ける反力(脚平面PL上での2次元並進力ベクトル)を意味している。このため、作用・反作用の法則によって、F(D_下腿部/LC)=−F(P_足平部/LC)、F(D_大腿部/LC)=−F(P_下腿部/LC)である。なお、足平部要素S9に係わる式(15a)においては、該足平部要素S9の、腰部要素S4から遠い側の端部は、床反力作用点COPとみなされ、その端部(床反力作用点COP)に床から作用する反力として、前記脚平面投影手段59で求められた床反力Frf(脚体/LC)が用いられる。
また、U(G_足平部/LC)''、U(G_下腿部/LC)''、U(G_大腿部/LC)''は、それぞれ、前記2次元脚姿勢・要素重心位置算出手段52で先に算出された脚座標系LCでの重心G_足平部、G_下腿部、G_大腿部の位置ベクトル(より正確には、該位置ベクトルのX座標成分及びZ座標成分の組)の2階微分値、すなわち、脚平面PL上で見た重心G_足平部、G_下腿部、G_大腿部の、脚座標系LCの原点に対する相対加速度(2次元ベクトル)を意味している。この場合、脚座標系LCの原点(股関節J1の中心)の脚平面PL上での加速度ベクトルは、身体座標系BCの原点の加速度ベクトルACC(BCO/LC)とほぼ同一であるので、この加速度ベクトルACC(BCO/LC)に、U(G_足平部/LC)''、U(G_下腿部/LC)''、U(G_大腿部/LC)''を加算したものが、脚平面PL上での重心G_足平部、G_下腿部、G_大腿部の実際の加速度ベクトルを示すものとなる。
なお、図17には代表的に、下腿部要素S8に関する式(15b)のパラメータの関係を例示している。
従って、脚平面投影手段59で求めた床反力Frf(脚体/LC)および加速度ベクトルACC(BCO/LC)と、前記2次元脚姿勢・要素重心位置算出手段52で求めた足平部要素S9の重心の位置ベクトルU(G_足平部/LC)の時系列データから得られる相対加速度ベクトルU(G_足平部/LC)''と、足平部要素S9の重量m_足平部とから式(15a)の右辺の演算により、F(P_足平部/LC)、すなわち、足首関節J_足首に作用する並進力(脚平面PL上での2次元ベクトル)が求められる。また、その求めたF(P_足平部/LC)(=−F(D_下腿部/LC))と、脚平面投影手段59で求めた加速度ベクトルACC(BCO/LC)と、2次元脚姿勢・要素重心位置算出手段52で求めた下腿部要素S8の重心の位置ベクトルU(G_下腿部/LC)の時系列データから得られる相対加速度ベクトルU(G_下腿部/LC)''と、下腿部要素S8の重量m_下腿部とから式(15b)の右辺の演算によりF(P_下腿部/LC)、すなわち、膝関節J_膝に作用する並進力(脚平面PL上での2次元ベクトル)が求められる。同様に、その求めたF(P_下腿部/LC)(=−F(D_大腿部/LC))等を用いて、式(15c)の右辺の演算によりF(P_大腿部/LC)、すなわち、股関節J_股に作用する並進力(脚平面PL上での2次元ベクトル)が求められる。このように、関節要素J_足首、J_膝、J_股に作用する反力ベクトル(並進力ベクトル)が上記(15a)〜(15c)の運動方程式に基づいて順番に算出される。
次に、足平部要素S9、下腿部要素S8、大腿部要素S7のそれぞれの回転運動(それぞれの重心を通って脚平面PLに垂直な軸廻りの回転運動)の運動方程式は次の式(15d)〜(15f)により与えられる。
M(P_足平部)=I_足平部×(ω(足平部)’+ω(BCO/LC)y’)
−{(U(COP/LC)−U(G_足平部/LC))×Frf(脚体/LC)}y
−{(U(P_足平部/LC)−U(G_足平部/LC))
×F(P_足平部/LC)}y ……(15d)
M(P_下腿部)=I_下腿部×(ω(下腿部)’+ω(BCO/LC)y’)
−{(U(D_下腿部/LC)−U(G_下腿部/LC))×F(D_下腿部/LC)}y
−{(U(P_下腿部/LC)−U(G_下腿部/LC))
×F(P_下腿部/LC)}y
−M(D_下腿部) ……(15e)
M(P_大腿部)=I_大腿部×(ω(大腿部)’+ω(BCO/LC)y’)
−{(U(D_大腿部/LC)−U(G_大腿部/LC))×F(D_大腿部/LC)}y
−{(U(P_大腿部/LC)−U(G_大腿部/LC))
×F(P_大腿部/LC)}y
−M(D_大腿部) ……(15f)
ここで、上記各式(15d)〜(15f)中に現れるM(P_○○)、M(D_○○)は、その○○で表される名称の剛体要素の端部が、それぞれに接触する物体から受ける反力モーメント(脚平面PLに垂直な軸廻り(脚座標系LCのY軸に平行な軸廻り)のモーメント)を意味している(図17参照)。このため、作用・反作用の法則によって、M(D_下腿部)=−M(P_足平部)、M(D_大腿部)=−M(P_下腿部)である。また、I_足平部、I_下腿部、I_大腿部は、それぞれ人剛体リンクモデルS1の足平部要素S9、下腿部要素S8、大腿部要素S7のそれぞれの重心廻りの慣性モーメント(詳しくは補助装具1の慣性モーメントを含まない慣性モーメント)であり、これは、人剛体リンクモデルS1の各剛体要素の重量などと同様、あらかじめ実測データ等に基づいて決定されて演算処理装置25のメモリに記憶保持されている。また、ω(足平部)’、ω(下腿部)’、ω(大腿部)’はそれぞれ、足平部要素S9、下腿部要素S8、大腿部要素S7の、脚座標系LCから見た相対角速度ω(足平部)、ω(下腿部)、ω(大腿部)(脚平面PLに垂直な軸廻りの相対角速度)の1階微分値、すなわち、相対角加速度を意味し、これらはそれぞれ、次式(15g)〜(15i)の如く、前記2次元脚姿勢・要素重心位置算出手段52で求めた足平部要素S9、下腿部要素S8、大腿部要素S7の傾斜角θ_足平部、θ_下腿部、θ_大腿部の2階微分値として与えられる。
ω(足平部)’=θ_足平部'' ……(15g)
ω(下腿部)’=θ_下腿部'' ……(15h)
ω(大腿部)’=θ_大腿部'' ……(15i)
そして、ω(BCO/LC)y’は、前記脚平面投影手段59で求めた身体座標系BCの原点BCOの実際の角速度ω(BCO/LC)yの1階微分値であり、この1階微分値ω(BCO/LC)y’にω(足平部)’、ω(下腿部)’、ω(大腿部)’をそれぞれ加算したものが、それぞれ足平部要素S9、下腿部要素S8、大腿部要素S7の実際の角加速度(脚平面PLに垂直な軸廻りの角加速度)を表すものとなる。
なお、図17には代表的に、下腿部要素S8に関する式(15e)のパラメータの関係を例示している。
関節モーメント算出手段60では、最終的に上記式(15d)〜(15f)により、関節モーメントM(P_足平部)、M(P_下腿部)、M(P_大腿部)が順次求められる。すなわち、前記脚平面投影手段59で求めた床反力ベクトルFrf(脚体/LC)およびU(COP/LC)と、該脚平面投影手段59で求めた角速度ω(BCO/LC)yの時系列データから把握される角加速度ω(BCO/LC)y’と、前記2次元脚姿勢・要素重心位置算出手段52で求めた傾斜角θ_足平部の時系列データから把握される相対角加速度ω(足平部)’(=θ_足平部'')と、該2次元脚姿勢・要素重心位置算出手段52で求めた位置ベクトルU(G_足平部/LC)およびU(P_足平部/LC)(=U(J_足首/LC)(より正確には、これらの位置ベクトルのX座標成分及びZ座標成分の組)と、前記式(15a)により先に求めた反力F(P_足平部/LC)と、あらかじめ設定された慣性モーメントI_足平部とから、前記式(15d)の右辺の演算により、関節モーメントM(P_足平部)、すなわち、足首関節J3に作用する、脚平面PLに垂直な軸廻りのモーメントが求められる。
また、この求めた関節モーメントM(P_足平部)(=−M(D_下腿部))と、前記式(15a),(15b)により先に求めた反力F(P_足平部/LC)(=−F(D_下腿部/LC))およびF(P_下腿部/LC)と、脚平面投影手段59で求めた角速度ω(BCO/LC)yの時系列データから把握される角加速度ω(BCO/LC)y’と、前記2次元脚姿勢・要素重心位置算出手段52で求めた傾斜角θ_下腿部の時系列データから把握される相対角加速度ω(下腿部)’(=θ_下腿部'')と、該2次元脚姿勢・要素重心位置算出手段52で求めた位置ベクトルU(G_下腿部/LC)、U(P_下腿部/LC)(=U(J_膝/LC))、およびU(D_下腿部/LC)(=U(J_足首/LC))(より正確には、これらの位置ベクトルのX座標成分及びZ座標成分の組)と、あらかじめ設定された慣性モーメントI_下腿部とから、前記式(15e)の右辺の演算により、関節モーメントM(P_下腿部)、すなわち、膝関節J2に作用する、脚平面PLに垂直な軸廻りのモーメントが求められる。同様に、その求めたM(P_下腿部)(=−M(D_大腿部))等を用いて、式(15e)の右辺の演算によりM(P_大腿部)、すなわち、股関節J1に作用する、脚平面PLに垂直な軸廻りのモーメントが求められる。
なお、本実施形態では、各脚体部S2の各剛体要素の慣性モーメントI_足平部、I_下腿部、I_大腿部を考慮したが、これらは一般的には、十分に0に近い値である。このため、式(15d)〜(15f)の演算では、慣性モーメントI_足平部、I_下腿部、I_大腿部を含む項を省略してもよい。この場合には、足平部要素S9、下腿部要素S8および大腿部要素S7の角速度や角加速度を把握する必要はない。
以上のように、関節モーメント算出手段60の演算処理では、人Aの各脚体の足首関節、膝関節、および股関節の、脚平面PLに垂直な軸廻りの関節モーメントM(P_足平部)、M(P_下腿部)、M(P_大腿部)が足首関節側から順番に算出される。これらの関節モーメントM(P_足平部)、M(P_下腿部)、M(P_大腿部)は、補助装具1を装着した人Aの運動が、補助装具1を装着していない状態で(人Aが自力で)行ったとした場合に、各脚体の足首関節、膝関節、股関節に発生すべきモーメントである。換言すれば、該関節モーメントは、補助装具1を人Aに装着していないと見なした場合に、該人Aの運動と、人Aに作用する外力(床反力)および重力との間の所要の動力学的な関係(物理法則)を満たし得るような関節モーメントである。
次に、装具側関節モーメント推定手段42の演算処理を説明する。装具側関節モーメント推定手段42の演算処理は、人側関節モーメント推定手段41の演算処理と並行して、演算処理装置25の処理周期毎に逐次実行され、その演算処理の基本的手法は、人側関節モーメント推定手段41の演算処理と同じである。従って、以下の説明では、人側関節モーメント推定手段41の演算処理と相違する点を中心に説明する。なお、以降、装具側関節モーメント推定手段42の演算処理の説明が終了するまでは、剛体要素、関節要素、脚座標系、要素座標系は、特に断らない限り、それぞれ装具剛体リンクモデルS1’の剛体要素、関節要素、脚座標系、要素座標系を意味するものとする。
装具側関節モーメント推定手段42の演算処理では、まず、2次元脚姿勢・要素重心位置算出手段61による演算処理が実行される。この演算処理は、人側関節モーメント推定手段41の2次元脚姿勢・要素重心位置算出手段52の演算処理と同様であり、各脚リンク部4の関節変位センサ31〜33の検出出力から把握される、各脚リンク部4の股関節部位7、膝関節部位9、足首関節部位11のそれぞれの回転角θ_股装具、θ_膝装具、θ_足首装具(脚平面PLに垂直な軸廻りの回転角。前記図9を参照)を用いて、装具剛体リンクモデルS1’の大腿部要素S7(S_大腿部装具)、下腿部要素S8(S_下腿部装具)および足平部要素S9(S_足平部装具)のそれぞれの傾斜角θ_大腿部装具、θ_下腿部装具、θ_足平部装具が算出される(図9を参照)。傾斜角θ_大腿部装具、θ_下腿部装具、θ_足平部装具は、脚座標系LCのZ軸方向に対する傾斜角である。
この場合、θ_大腿部装具、θ_下腿部装具、θ_足平部装具は、θ_股装具、θ_膝装具、θ_足首装具の検出値から、前記式(1d)〜(1f)と同様の次式(101d)〜(101f)により直接的に算出される。
θ_大腿部装具=−θ_股装具 ……(101d)
θ_下腿部装具=θ_大腿部装具+θ_膝装具 ……(101e)
θ_足平部装具=θ_下腿部装具−θ_足首装具+(π/2)……(101f)
尚、θ_大腿部装具、θ_下腿部装具、θ_足平部装具の算出は、各脚体部S2毎に各別に行われる。
2次元脚姿勢・要素重心位置算出手段61による演算処理では、次に、各脚体部S2の各関節要素の、脚座標系LCのXZ平面上での位置(これは脚平面PL上で見た位置でもある)が、上記の如く算出したθ_大腿部装具、θ_下腿部装具を用いて求められる。具体的には、各脚体部S2の関節要素J_股装具,J_膝装具,J_足首装具のそれぞれの脚座標系LCでの位置ベクトルU(J_股装具/LC),U(J_膝装具/LC),U(J_足首装具/LC)がそれぞれ前記式(2a)〜(2c)と同様の次式(102a)〜(102c)により順番に算出される。
U(J_股装具/LC)=(0,0,0)T …(102a)
U(J_膝装具/LC)=U(J_股装具/LC)
+(−L7s×sin(θ_大腿部装具),0,−L7s×cos(θ_大腿部装具))T
…(102b)
U(J_足首/LC)=U(J_膝/LC)
+(−L8s×sin(θ_下腿部装具),0,−L8s×cos(θ_大腿部装具))T
…(102c)
ここで、式(102b),(102c)中のL7s,L8sはそれぞれS_大腿部装具、S_下腿部装具の長さである(図9を参照)。なお、式(102a)〜(102c)により求められる位置ベクトルU(J_股装具/LC),U(J_膝装具/LC),U(J_足首装具/LC)のそれぞれのY軸成分は0とされ、それぞれのX軸成分およびZ軸成分の組が脚座標系LCのXZ平面(あるいは脚平面PL)上での2次元的位置を表している。また、U(J_股装具/LC),U(J_足首装具/LC)は、本実施形態では、それぞれ前記人側関節モーメント推定手段41の2次元脚姿勢・要素重心位置算出手段52で前記式(2a),(2c)により求められるU(J_股/LC),U(J_足首/LC)と同じになるので、これらのU(J_股/LC),U(J_足首/LC)を、それぞれそのまま、U(J_股装具/LC),U(J_足首装具/LC)として得るようにしてもよい。
2次元脚姿勢・要素重心位置算出手段61による演算処理では、さらに、上記の如く算出した位置ベクトルU(J_股装具/LC),U(J_膝装具/LC),U(J_足首装具/LC)を用いて、装具剛体リンクモデルS1’の剛体要素(脚体部S2の剛体要素)の重心の、脚座標系LCにおける位置ベクトルなどが求められる。
より具体的には、大腿部要素S7、下腿部要素S8、足平部要素S9のそれぞれの重心G_大腿部装具(G7)、G_下腿部装具(G8)、G_足平部装具(G9)のそれぞれの位置ベクトルU(G_大腿部装具/LC),U(G_下腿部装具/LC),U(G_足平部装具/LC)がそれぞれ前記式(3a)〜(3c)と同様の次式(103a)〜(103c)により算出される。
U(G_大腿部装具/LC)=U(J_膝装具/LC)
+R(C_大腿部装具→LC)×U(G_大腿部装具/C_大腿部装具)
…(103a)
U(G_下腿部装具/LC)=U(J_足首装具/LC)
+R(C_下腿部装具→LC)×U(G_下腿部装具/C_下腿部装具)
…(103b)
U(G_足平部装具/LC)=U(J_MP/LC)
+R(C_足平部装具→LC)×U(G_足平部装具/C_足平部装具)
…(103c)
ここで、式(103a)〜(103c)の変換テンソルR(C_大腿部装具→LC)、R(C_下腿部装具→LC)、R(C_足平部装具→LC)は、先に算出したθ_大腿部装具、θ_下腿部装具、θ_足平部装具を用いて決定される。また、U(G_大腿部装具/C_大腿部装具)、U(G_下腿部装具/C_下腿部装具)、U(G_足平部装具/C_足平部装具)は、各剛体要素の要素座標系で表された該剛体要素の重心の位置ベクトルであり、あらかじめ演算処理装置25のメモリに記憶保持されている。なお、本実施形態では、装具剛体リンクモデルS1’の要素座標系C_足平部装具は、人剛体リンクモデルS1の要素座標系C_足平部と同じで、MP関節J4を原点とする座標系であるので、式(103c)のU(J_MP/LC)は、人側関節モーメント推定手段41の2次元脚姿勢・要素重心位置算出手段52で前記式(2d)により算出したものがそのまま使用される。
上記式(103a)〜(103c)により求められる位置ベクトルU(G_大腿部装具/LC),U(G_下腿部装具/LC),U(G_足平部装具/LC)のX軸成分及びZ軸成分の組が脚平面PL上(脚座標系LCのXZ平面上)での2次元的位置を表している。
また、2次元脚姿勢・要素重心位置算出手段61の演算処理では、各足平部要素S9の支持部S9a,S9bの下端(前記図5を参照)の、脚座標系LCでの位置ベクトルも算出される。ここで、各足平部要素S9の支持部S9a,S9bのうちの前側の支持部S9aを前支持部S9a、後側の支持部S9bを後支持部S9aと称し、それぞれの下端の位置ベクトル(脚座標系LCでの位置ベクトル)をU(前支持部/LC)、U(後支持部/LC)とすると、U(前支持部/LC)、U(後支持部/LC)は、それぞれ、上記式(103c)の右辺のU(G_足平部装具/C_足平部装具)を、U(前支持部/C_足平部装具)、U(後支持部/C_足平部装具)で置き換えた式によって算出される。U(前支持部/C_足平部装具)、U(後支持部/C_足平部装具)は、それぞれ各足平部要素S9の要素座標系C_足平部装具での前支持部S9a、後支持部S9bの位置ベクトルであり、あらかじめ演算処理装置25のメモリに記憶保持されている。
次いで、装具側関節モーメント推定手段42は、3次元関節・要素重心位置算出手段62の演算処理を実行し、装具剛体リンクモデルS1’の各関節要素および各剛体要素の重心の身体座標系BCでの位置ベクトルを求める。この演算処理は、人側関節モーメント推定手段41の3次元関節・要素重心位置算出手段53で人剛体リンクモデルS1の各関節要素および各剛体要素の重心の3次元的な位置ベクトルを求める場合と同様に実行される。すなわち、例えば左脚体部S2の各関節要素J1,J2,J3の位置ベクトルU(J_左股装具/BC)、U(J_左膝装具/BC)、U(J_左足首装具/BC)は、それぞれ前記式(4a)〜(4c)と同様の次式(104a)〜(104c)により順番に算出される。
U(J_左股装具/BC)=(0,L4sa/2,0)T …(104a)
U(J_左膝装具/BC)=U(J_左股装具/BC)
+R(LC→BC)×U(J_左膝装具/LC)…(104b)
U(J_左足首装具/BC)=U(J_左股装具/BC)
+R(LC→BC)×U(J_左足首装具/LC) …(104c)
ここで、式(104a)のL4saは、腰部要素S4の両股関節J1,J1の中心を結ぶ線分の長さ(補助装具1の両股関節部位7,7の中心を結ぶ線分の長さ)である。また、式(104b)、(104c)の変換テンソルR(LC→BC)は、人側関節モーメント推定手41の変換テンソル作成手段51で求められたものである。すなわち、本実施形態では、装具剛体リンクモデルS1’の左脚座標系LCの各座標軸は、人剛体リンクモデルS1の左脚座標系LCの各座標軸と同じ向きに設定されている。右脚座標系についても同様である。このため、人剛体リンクモデルS1の各脚座標系LCから身体座標系BCへの変換テンソルR(LC→BC)は、装具剛体リンクモデルS1’の各脚座標系LCから身体座標系BCへの変換テンソルR(LC→BC)と同じになる。また、式(104b)、(104c)のU(J_左膝装具/LC)およびU(J_左足首装具/LC)は、それぞれ前記式(102b)、(102c)により先に求められたものである。
なお、本実施形態では、装具剛体リンクモデルS1’の、上体下部関節JU1、上体上部関節JU2のそれぞれの身体座標系BCでの位置ベクトルU(JU1/BC)、U(JU2/BC)は、前記人側関節モーメント推定手段41の3次元関節・要素重心位置算出手段53で求められるものと同一とされる。
また、大腿部要素S7、下腿部要素S8、足平部要素S9のそれぞれの重心の身体座標系BCでの位置ベクトルU(G_大腿部装具/BC),U(G_下腿部装具/BC),U(G_足平部装具/BC)は、それぞれ前記式(104b)の右辺のU(J_左膝装具/LC)を2次元脚姿勢・要素重心位置算出手段61で先に算出した重心の位置ベクトルU(G_大腿部装具/LC)、U(G_下腿部装具/LC)、U(G_足平部装具/LC)で置き換えた式を演算することで求められる。なお、G_大腿部装具,G_下腿部装具,G_足平部装具の身体座標系BCでの位置ベクトルの算出は、各脚体部S2毎に各別に行われる。
また、腰部要素S4の重心G4の位置ベクトルU(G_腰部装具/BC)は、前記式(4g)の右辺のU(G_腰部/C_腰部)を、あらかじめ記憶保持された腰部座標系C_腰部装具(=C_腰部)での重心G_腰部装具の位置ベクトルU(G_腰部装具/C_腰部装具)で置き換えた式により算出される。なお、本実施形態では、C_腰部装具は身体座標系BCに等しいので、実際上は、U(G_腰部装具/C_腰部装具)がそのままU(G_腰部装具/BC)として得られる。
また、本実施形態では、装具剛体リンクモデルS1’の腹部要素S5、胸部要素S6のそれぞれの重心G5,G6の身体座標系BCでの位置ベクトルU(G_腹部装具/BC),U(G_胸部装具/BC)は、それぞれ、前記式(4h),(4i)の右辺のU(G_腹部/C_腹部)、U(G_胸部/C_胸部)をそれぞれU(G_腹部装具/C_腹部)、U(G_胸部装具/C_胸部)(これらはあらかじめ演算処理装置25に記憶保持されている)に置き換えた式によって算出される。補足すると、本実施形態では、C_腹部=C_腹部装具、C_胸部=C_胸部装具とされている。
なお、本実施形態では、装具剛体リンクモデルS1’の腹部要素S5および胸部要素S6の重量は十分に小さいので、これらの要素は装具剛体リンクモデルS1’の全体重心や全体の角運動量にほとんど影響を及ぼさない。従って、位置ベクトルU(G_腹部装具/BC),U(G_胸部装具/BC)の算出は省略してもよい。
また、3次元関節・要素重心位置算出手段62の演算処理では、各足平部要素S9の前支持部S9aおよび後支持部S9bの、身体座標系BCでの位置ベクトルU(前支持部/BC)、U(後支持部/BC)も各脚体部S2毎に算出される。これらの位置ベクトルU(前支持部/BC)、U(後支持部/BC)は、それぞれ前記式(104b)の右辺のU(J_左膝/LC)を2次元脚姿勢・要素重心位置算出手段61で先に算出した各足平部要素S9の前支持部S9a、後支持部S9bの位置ベクトルU(前支持部/LC)、U(後支持部/LC)で置き換えた式を演算することで求められる。
次いで、装具側関節モーメント推定手段42は、全体重心位置算出手段63の演算処理を実行する。この全体重心位置算出手段63の演算処理では、3次元関節・要素重心位置算出手段62によって求められた各剛体要素の重心位置(身体座標系BCでの位置ベクトル)と、あらかじめ演算処理装置25に記憶保持された装具剛体リンクモデルS1’の各剛体要素の重量とから、前記式(6)と同様の次式(106)によって、装具剛体リンクモデルS1’の全体重心(補助装具1の全体重心。以下、G_装具全体と表記することがある)の身体座標系BCでの位置ベクトルU(G_装具全体/BC)が求められる。
U(G_装具全体/BC)={U(G_胸部装具/BC)×m_胸部装具
+U(G_腹部装具/BC)×m_腹部装具+U(G_腰部装具/BC)×m_腰部装具
+U(G_右大腿部装具/BC)×m_右大腿部装具
+U(G_左大腿部装具/BC)×m_左大腿部装具
+U(G_右下腿部装具/BC)×m_右下腿部装具
+U(G_左下腿部装具/BC)×m_左下腿部装具
+U(G_右足平部装具/BC)×m_右足平部装具
+U(G_左足平部装具/BC)×m_左足平部装具}/装具全体重量
……(106)
なお、m_胸部装具など、「m_○○装具」は○○の名称に対応する装具剛体リンクモデルS1’の剛体要素の重量であり、これらの重量は補助装具1単体での重量である(人Aの重量は含まれない)。また、本実施形態では、m_胸部装具≒0、m_腹部装具≒0なのでこれらを含む項は省略してもよい。
次に、装具側関節モーメント推定手段42は、床反力作用点推定手段64および床反力推定手段65の算出処理を実行する。床反力作用点推定手段64の演算処理では、人側関節モーメント推定手段41の床反力作用点推定手段57と同様の手法によって、補助装具1に作用する床反力Frf(右脚体装具/BC),Frf(左脚体装具/BC)の作用点が推定される。
この場合、前記絶対座標系ICでの、装具全体重心と、着地している各脚体側の足平部要素S9の前支持部S9aと後支持部S9bとの水平面内での位置関係に基づいて、床反力作用点COPの位置ベクトルU(COP/BC)が推定される。
より具体的には、まず、前記人側関節モーメント推定手段41の床反力作用点推定手段57で求められた前記変換テンソルR(BC→IC)を用いて、前記全体重心位置算出手段63で先に求めた装具全体重心の位置ベクトルU(G_装具全体/BC)と、前記3次元関節・要素重心位置算出手段62で先に求めた各足平部要素S9の前支持部S9aおよび後支持部S9bのそれぞれの位置ベクトルU(前支持部/BC),U(後支持部/BC)とにそれぞれ上記変換テンソルR(BC→IC)を乗算することにより、G_装具全体、各足平部要素S9の前支持部S9aおよび後支持部S9bの絶対座標系ICで見た位置ベクトルU(G_装具全体/IC),U(前支持部/IC),U(後支持部/IC)が算出される。なお、このとき、接地センサ34,35の検出出力により接地無しと判断される脚体に関しては、位置ベクトルU(前支持部/IC),U(後支持部/IC)を算出する必要はない。
次いで、接地センサ34,35の検出出力により接地有りと判断される各脚体毎に、位置ベクトルU(G_装具全体/IC),U(前支持部/IC),U(後支持部/IC)のX軸方向成分U(G_装具全体/IC)x,U(前支持部/IC)x,U(後支持部/IC)xの大小関係に応じて、換言すれば、装具全体重心、足平部要素S9の前支持部S9aおよび後支持部S9bの前後方向での相対的な水平位置関係に応じて、床反力作用点の位置ベクトル(絶対座標系ICでの位置ベクトル)U(装具COP/IC)のX軸成分およびY軸成分が決定される。
より具体的に図18(a)〜(c)および図19を参照して説明する。なお、以下の説明では、補助装具1の左足平装着部3が着地しているとする。図18(a)〜(c)は絶対座標系ICの矢状面(XZ平面)で見た補助装具1の左足平装着部3が接地している状態(これらの図では単脚支持状態)を例示しており、図19は図18(b)の状態での補助装具1の接地側の足平装着部3を平面視で見た図を示している。なお、図18及び図19では補助装具1の脚リンク部4および足平装着部3を装具剛体リンクモデルS1’の要素で模式化して示している。
図18(a)に示すように、装具全体重心G_装具全体が着地側の左足平部要素S9(左足平装着部3)の前支持部S9aよりも前方に存在する場合、すなわち、U(G_装具全体/IC)x>U(左前支持部/IC)xである場合には、床反力作用点COPは、その左足平部要素S9の前支持部S9a(足平装着部3のつま先部分)のほぼ直下の位置に存在する。そこで、この場合には、接地している左足平部要素S9に対応する床反力作用点COPの位置ベクトルU(左装具COP/IC)のX,Y軸成分はそれぞれ左足平部要素S9の前支持部S9aの位置ベクトルU(左前支持部/IC)のX,Y軸成分に等しいとする。すなわち、U(左装具COP/IC)x=U(左前支持部/IC)x、U(左装具COP/IC)y=U(左前支持部/IC)yとする。
また、図18(c)に示す如く、装具全体重心G_装具全体が着地側の左足平部要素S9(左足平装着部3)の後支持部S9bよりも後方に存在する場合、すなわち、U(G_装具全体/IC)x<U(左後支持部/IC)xである場合には、床反力作用点COPは、その左足平部要素S9の後支持部S9b(足平装着部3の踵部分)のほぼ直下の位置に存在する。そこで、この場合には、接地している左足平部要素S9に対応する床反力作用点COPの位置ベクトルU(左装具COP/IC)のX,Y軸成分はそれぞれ左足平部要素S9の後支持部S9bの位置ベクトルU(左後支持部/IC)のX,Y軸成分に等しいとする。すなわち、U(左装具COP/IC)x=U(左後支持部/IC)x、U(左装具COP/IC)y=U(左後支持部/IC)yとする。
また、図18(b)に示すように、装具全体重心G_装具全体が前後方向で左足平部要素S9(左足平装着部3)の前支持部S9aと後支持部S9bとの間に存在する場合、すなわち、U(左前支持部/IC)x≦U(G_装具全体/IC)x≦U(左後支持部/IC)xである場合には、床反力作用点COPは、図示の矢状面上では、装具全体重心G_装具全体のほぼ真下に存在する。そこで、この場合には、接地している左足平部要素S9に対応する床反力作用点COPの位置ベクトルU(左装具COP/IC)のX軸成分は、装具全体重心G_装具全体のX軸成分に等しいとする。すなわち、U(左装具COP/IC)x=U(G_装具全体/IC)xとする。そして、床反力作用点COPの位置は、概ね、左足平部要素S9の前支持部S9aと後支持部S9bとを結ぶ線分を床面に投影した線分上に存在すると考えられる。そこで、床反力作用点COPの位置ベクトルU(左装具COP/IC)のY軸成分は、図19に示す如く、左足平部要素S9の前支持部S9aと後支持部S9bとを結ぶ線分上で、装具全体重心G_装具全体とX軸成分(絶対座標系ICでのX軸成分)の値が同じになるような点QのY軸成分と等しいとする。このような位置ベクトルU(左装具COP/IC)のY軸成分の値は、次式(107)に比例関係式に基づいて求められる。この式(107)は前記式(7)に対応する式である。
U(左装具COP/IC)x−U(左後支持部/IC)x
:U(左前支持部/IC)x−U(左後支持部/IC)x
=U(左装具COP/IC)y−U(左後支持部/IC)y
:U(左前支持部/IC)y−U(左後支持部/IC)y ……(107)
また、床反力作用点の位置ベクトルU(左装具COP/IC)のZ軸成分は、前記人側関節モーメント推定手段41の床反力作用点推定手段57と同様に、左脚体部S2(左脚リンク部4)の足首関節J3から所定値H0(>0)だけ鉛直方向下方に離れた点のZ軸成分に等しいとする。すなわち、U(左COP/IC)z=U(J_左足首装具/IC)z−H0とする。ここで、所定値H0は、本実施形態では前記人側関節モーメント推定手段41の床反力作用点推定手段57で用いるものと同一である。
本実施形態では、以上の如く、補助装具1の左足平装着部3が着地している場合に補助装具1の左脚リンク部4(左脚体部S2)に作用する床反力の作用点である床反力作用点の位置ベクトルU(左COP装具/IC)が求められる。補助装具1の右足平装着部3が着地している場合についても同様である。この場合、両脚支持状態では、各脚体部S2のそれぞれについて上記の如く床反力作用点の位置ベクトルが求められる。
なお、本実施形態では、床反力作用点の位置ベクトルU(COP装具/IC)のZ軸成分を求めるために用いる前記所定値H0を一定値としたが、接地センサ34,35により、足平装着部3のつま先側のみが接地していることが検出された場合には、上記所定値H0の代わりに、その接地している足平装着部3について、足首関節J3および前支持部S9aのそれぞれの位置ベクトルU(J_足首/IC),U(前支持部/IC)のZ軸成分の差(U(J_足首/IC)z−U(前支持部/IC)z)、すなわち、足首関節J3と前支持部S9aとの鉛直方向距離を使用するようにしてもよい。このようにすると、U(COP装具/IC)の精度を高めることができる。
床反力作用点推定手段64の演算処理では、最後に、上記の如く接地している各脚リンク部4について求めた床反力作用点の位置ベクトルU(COP装具/IC)に、変換テンソルR(IC→BC)を乗算することにより、補助装具1に係わる床反力作用点の位置ベクトルの身体座標系BCでの値U(COP装具/BC)が求められる。
前記床反力推定手段65の演算処理では、人側関節モーメント推定手段41の床反力推定手段58と同様の手法によって、補助装具1に作用する床反力(身体座標系BCで見た床反力)が推定される。以下に、床反力推定手段65の演算処理を図20〜図22を参照して説明する。図20は床反力推定手段65の演算処理機能を示すブロック図、図21および図22は、それぞれ単脚支持状態、両脚支持状態の補助装具1を装具剛体リンクモデルS1’で模式化して示している。なお、図21および図22では、図示の便宜上、装具剛体リンクモデルS1’の剛体要素に幅を持たせている。また、この床反力推定手段65の説明では、前記床反力推定手段58の説明の場合と同様に、床反力、角運動量、位置ベクトルなどのベクトル量は、特にことわらない限り、身体座標系BCで表現されるものとし、ベクトル量を表記するとき、しばしば座標系の名称を省略する。
図20に示すように、床反力推定手段65は、人側関節モーメント推定手段41の床反力推定手段58と同様に、全角運動量変化率算出手段65a、全床反力算出手段65b、モーメントアーム長算出手段65c、床反力方向決定手段65dおよび床反力成分算出手段65eを備えている。
全角運動量変化率算出手段65aには、前記人側関節モーメント推定手段41の身体座標系加速度・角速度算出手段54で求められた身体座標系BCの原点BCOの角速度ω(BCO/BC)と、前記3次元関節・要素重心位置算出手段62で求められた装具剛体リンクモデルS1’の各関節要素の位置ベクトルおよび各剛体要素の重心の位置ベクトルと、前記全体重心位置算出手段63で求められたG_装具全体の位置ベクトルとが入力される。
そして、全角運動量変化率算出手段65aは、これらの入力値を使用して、前記式(8a)と同様の次式(108a)の演算により、補助装具1の全体の角運動量の時間的変化率(1階微分値)である全角運動量変化率Ls'のY軸廻り成分Ls'y(図21および図22を参照)を求める。
Ls'y=Σ(I_装具n×θ''(装具n)y)
+Σ(m_装具n×ΔU(G_装具n)
×ΔACC(G_装具n))y
……(108a)
但し、ΔU(G_装具n)≡U(G_装具n)−U(G_装具全体)
ΔACC(G_装具n)≡ACC(G_装具n)−ACC(G_装具全体)
=U(G_装具n)''−U(G_装具全体)''
この式(108a)において、「n」は装具剛体リンクモデルS1’の各剛体要素に任意に割り当てた番数を意味し、I_装具nは番数nの剛体要素の慣性モーメント、θ''(装具n)は、番数nの剛体要素のその重心廻りの角加速度である。そして、式(108a)の第1項のΣの演算は、(I_装具n×θ''(装具n)y)を、装具剛体リンクモデルS1’の全ての剛体要素について加算する演算である。また、m_装具nは番数nの剛体要素の重量、U(G_装具n)は、番数nの剛体要素の重心の身体座標系BCでの位置ベクトル、ACC(G_装具n)は、番数nの剛体要素の重心の加速度、ΔU(G_装具n)は、番数nの剛体要素の重心の、G_装具全体に対する位置ベクトル、ΔACC(G_装具n)は、番数nの剛体要素の重心の、G_装具全体に対する相対加速度である。そして、式(108a)の第2項のΣの演算は、(m_装具n×ΔU(G_装具n)×ΔACC(G_装具n))yを、装具剛体リンクモデルS1’の全ての剛体要素について加算する演算である。
この場合、式(108a)の第1項のΣの演算で必要なI_装具nは、あらかじめ演算処理装置25の図示しないメモリに記憶保持されている。また、θ''(装具n)yは、次のように求められる。すなわち、前記3次元関節・要素重心位置算出手段62で求めた脚体部S2の各関節要素の位置ベクトル(U(J_左股装具/BC)等)から、XZ平面(身体座標系BCの矢状面)上での各剛体要素の傾斜角度が逐次求められる。なお、装具剛体リンクモデルS1’の足平部要素S9、腹部要素S5および胸部要素S6の傾斜角度は、人剛体リンクモデルS1のものと同一とされる。さらにその求めた傾斜角度の2階微分値に、前記人側関節モーメント推定手段41の身体座標系加速度・角速度算出手段54で求めた身体座標系BCの原点BCOの角速度ω(BCO/BC)のY軸成分の1階微分値を加算することで、装具剛体リンクモデルS1’の各剛体要素の角加速度のY軸成分θ''(装具n)yが求められる。
また、式(108a)の第2項のΣの演算で必要なΔU(G_装具n)は、前記3次元関節・要素重心位置算出手段62で求めた各剛体要素の重心の位置ベクトル(U(G_大腿部装具/BC)等)と、前記全体重心位置算出手段63で求めたG_装具全体の位置ベクトルU(G_装具全体/BC)とから、式(108a)の但し書きの定義に従って求められる。さらに、ΔACC(G_装具n)は、3次元関節・要素重心位置算出手段62で求めた各剛体要素の重心の位置ベクトルの2階微分値U(G_装具n)''と、全体重心位置算出手段63で求めたG_装具全体の位置ベクトルの2階微分値U(G_装具全体)''とから、式(108a)の但し書きの定義に従って求められる。
なお、前記式(108a)により全角運動量変化率のY軸廻り成分Ls'yを求めるときには、装具剛体リンクモデルS1’の上体部S3の剛体要素(腹部要素S5および胸部要素S6)を無視するようにしてもよい。これは、本実施形態では、装具剛体リンクモデルS1’の上体部S3の剛体要素の運動は、該装具剛体リンクモデルS1’(補助装具1)の全角運動量変化率Ls'にほとんど影響を及ぼさないからである。
前記全床反力算出手段65bには、前記人側関節モーメント推定手段41の身体座標系加速度・角速度算出手段54で求められた身体座標系BCの原点BCOの加速度ACC(BCO/BC)と、前記全体重心位置算出手段63で求められたG_装具全体の位置ベクトルU(G_装具全体/BC)とが入力される。
そして、全床反力算出手段65bは、これらの入力値から、前記式(8b)と同様の次式(108b)の演算により、補助装具1(装具剛体リンクモデルS1’)に作用する全ての床反力の総和である全床反力Frf(装具全体)のXZ平面上での成分ベクトルFrf(装具全体)x,zを求める。
Frf(装具全体)x,z=装具全体重量
×(ACC(BCO/BC)+U(G_装具全体/BC)'')x,z
……(108b)
次に、上記の如く求められた全角運動量変化率Ls'のY軸廻り成分Ls'yと、全床反力のXZ平面(矢状面)上での成分ベクトルFrf(装具全体)x,zとは、前記モーメントアーム長算出手段65cに入力され、ここで、それらの入力値から人側関節モーメント推定手段41のモーメントアーム長算出手段58cと同様に、モーメントアーム長(並進力をモーメントに変換する長さ)が求められる。この場合、モーメントアーム長算出手段65cは、前記式(8c)と同様の次式(108c)によりモーメントアーム長rsを求める。
rs=Ls'y/|Frf(装具全体)x,z| ……(108c)
なお、上記式(108c)により求められるモーメントアーム長rsは、前記式(8c)により求められるモーメントアーム長rと同様に、全角運動量変化率のY軸廻り成分Ls'yの向き(符号)に応じて正負の値を採る。この場合、Ls'yが図21および図22に示す矢印の向きであるとき、Ls'yの値が正の値である。
このように求められたモーメントアーム長rsは、次に前記床反力方向決定手段65dに入力される。該床反力方向決定手段65dには、さらに接地センサ34,35の出力と、前記床反力作用点推定手段64で推定された床反力作用点COPの位置ベクトルU(装具COP/BC)とが入力される。そして、床反力方向決定手段65dは、これらの入力値を使用して、人側関節モーメント推定手段41の床反力方向決定手段58dと同様に補助装具1の各脚リンク部4に作用する床反力の方向(向き)を決定する。
すなわち、接地センサ34,35の検出出力を基に両脚支持状態であると判断されたときには、図22に示す如く、右脚リンク部4(右脚体部S2)に係る床反力Frf(右脚体装具)の向き(XZ平面上での向き)については、右脚リンク部4の床反力作用点COP(右装具)を通って、G_装具全体を中心とする半径rs(より正確には|rs|)の円に接する直線K(右装具)の身体座標系BCでの傾きα(右脚体装具)を該右脚リンク部4の床反力Frf(右脚体装具)の向き(XZ平面上での向き)を表すものとして決定する。この場合、モーメントアーム長rsが正であるときには、直線K(右装具)は、半径rsの円Cisの後方側の部分に接するものとする。つまり、直線K(右装具)を作用線として床反力Frf(右脚体装具)のXZ平面上での成分ベクトルFrf(右脚体装具)x,zが床反力作用点COP(右装具)に作用したとき、それによって、G_装具全体廻りに発生するモーメントのY軸廻り成分の向きが全角運動量変化率のY軸廻り成分Ls'yの向きと同じなるように円Cisに接する直線K(右装具)の傾きα(右脚体装具)が決定される。左脚リンク部4(左脚体部S2)についても右脚リンク部4の場合と同様に、該左脚リンク部4の床反力Frf(左脚体装具)の向き(矢状面上での向き)を表す直線K(左)の身体座標系BCでの傾きα(左脚体装具)が決定される。
また、単脚支持状態であるときには、図21に示す如く、接地している脚リンク部4(図の例では右脚リンク部)の床反力作用点COPからG_装具全体までのベクトル(COPに対するG_装具全体の位置ベクトル)のXZ平面上での成分ベクトルをCGsとおくと、このCGsと、右脚リンク部4の床反力作用点COPを通って、G_装具全体を中心とする半径rs(より正確には|rs|)の円に接する直線K(右装具)とのなす角度θasが、床反力Frf(右脚体装具)の向き(矢状面上での向き)を表すものとして決定される。この場合、モーメントアーム長rsが正であるときには、直線K(右装具)は、半径rsの円Cisの後方側の部分に接するものとする。つまり、直線K(右装具)を作用線として床反力Frf(右脚体装具)のXZ平面上での成分ベクトルFrf(右脚体装具)x,zが床反力作用点COPに作用したとき、それによって、G_装具全体廻りに発生するモーメントのY軸廻り成分の向きが全角運動量変化率のY軸廻り成分の向きと同じなるようにベクトルCGsに対する直線K(右装具)のXZ平面上での角度θasが決定される。
このような角度θasは、前記式(8d)と同様の次式(108d)により算出される。
θas=−sin−1(rs/|CGs|) ……(108d)
この場合、ベクトルCGsの絶対値は、前記床反力作用点推定手段64で求められた床反力作用点COPの位置ベクトルU(右装具COP/BC)と、前記全体重心位置算出手段63で求められたG_装具全体の位置ベクトルU(G_装具全体/BC)とから算出される。
左脚リンク部4のみが接地する単脚支持状態においても、上記と同様に左脚リンク部4の床反力作用点COPに対するG_装具全体の位置ベクトルのXZ平面上での成分ベクトルCGsと、左脚リンク部4の床反力作用点COPを通って、G_装具全体を中心とする半径rs(より正確には|rs|)の円に接する直線K(左装具)とのなす角度θasが床反力Frf(左脚体装具)のXZ平面上での成分ベクトルFrf(左脚体装具)x,zの向きを表すものとして決定される。
以上説明した床反力方向決定手段65dの処理により、接地している各脚リンク部4に作用する床反力FrfのXZ平面(身体座標系BCの矢状面)での成分ベクトルFrf(脚体装具)x,zの作用線が前記式(108c)により決定したモーメントアーム長rを半径、G_装具全体を中心とする円Cisに接し、且つ、その作用線の方向のFrf(脚体装具)x,zがG_装具全体廻りに発生するモーメントが、角運動量変化率のY軸廻り成分Ls'yに一致するように、接地している各脚リンク部4に作用する床反力Frfの向き(身体座標系BCの矢状面上での向き)が決定されることとなる。
次に、床反力方向決定手段65dにより決定された床反力の向き(両脚支持状態では傾きα(脚体装具)、単脚支持状態では角度θas)は、前記床反力成分算出手段65eに入力される。なお、床反力成分算出手段65eは、前記全床反力算出手段65bで求められた全床反力のXZ平面上での成分Frf(装具全体)x,zも入力される。また、単脚支持状態では、床反力方向決定手段65dから、その処理で求めたベクトルCGsも入力される。さらに、各脚リンク部の床反力作用点COPの位置ベクトルおよびG_装具全体の位置ベクトルも入力される。
そして、床反力成分算出手段65eは、それらの入力値から、接地している各脚リンク部4に作用する床反力Frfの、身体座標系BCでの座標成分値を、人側関節モーメント推定手段41の床反力成分算出手段58eと同様に求める。
すなわち、両脚支持状態で前記足平間前後距離(図13を参照)が前記第2閾値よりも大きい場合に対応する床反力のXZ平面上での成分Frf(右脚体装具)x、Frf(右脚体装具)z、Frf(左脚体装具)x、Frf(左脚体装具)zがそれぞれ前記式(9e)〜(9h)と同様の次式(109e)〜(109h)により求められる。
Frf(右脚体装具)x=(Frf(装具全体)z
−α(左脚体装具)×Frf(装具全体)x)/Δαs
……(109e)
Frf(右脚体装具)z=(α(右脚体装具)×Frf(装具全体)z
−α(右脚体装具)×α(左脚体装具)×Frf(装具全体)x)/Δαs
……(109f)
Frf(左脚体装具)x=(−Frf(装具全体)z
+α(右脚体装具)×Frf(装具全体)x)/Δαs
……(109g)
Frf(左脚体装具)z=(−α(左脚体装具)×Frf(装具全体)z
+α(右脚体装具)×α(左脚体装具)×Frf(装具全体)x)/Δαs
……(109h)
但し、Δαs=α(右脚体装具)−α(左脚体装具)
なお、式(109e)〜(109h)は、前記式(9a)〜(9d)と同様の関係式に基づいて得られる式である。以降、これらの式(109e)〜(109h)により求められる床反力のX軸成分およびZ軸成分の組から成るベクトルに参照符号Frfs1x,zを付する。
また、両脚支持状態で前記足平間前後距離(図13を参照)が前記第1閾値よりも小さい場合に対応する床反力のXZ平面上での成分ベクトルFrf(右脚体装具)x,z、Frf(左脚体装具)x,zがそれぞれ前記式(10)と同様の次式(110)により求められる。
式(110)の但し書き中のCavsGsは、左右の脚リンク部4のそれぞれの床反力作用点COPを結ぶ線分の中点Cavsから、G_装具全体までのベクトル(当該中点Cavsに対するG_装具全体の位置ベクトル)のXZ平面上での成分ベクトルである。なお、Cavsの身体座標系BCでの位置ベクトルは、左右の脚リンク部4の各床反力中心点COPの位置ベクトルの平均値(=(U(右装具COP)+U(左装具COP))/2)として算出される。また、θbsは、ベクトルCavsGsと、XZ平面上で上記中点Cavsを通って、G_装具全体を中心とする半径rs(より正確には|rs|)の円に接する直線とのなす角度であり、前記式(108d)の右辺の「CGs」を「CavsGs」で置き換えた式によって算出される。従って、式(110)のFrf_s(装具全体)x,zは、両脚リンク部4の床反力作用点COPを結ぶ線分の中点からG_装具全体までのベクトルのXZ平面上での成分ベクトルと同じ向きを持ち、且つ、Frf(装具全体)x,zの大きさを持つベクトルを角度θbsだけ当該中点Cavsの廻りにXZ平面(矢状面)上で回転させたベクトル(2次元ベクトル)である。このため、XZ平面上において、Frf_s(装具全体)x,zの作用線(XZ平面上で上記中点Cavsを通ってベクトルFrf_s(全体)x,zと同方向の直線)は、G_装具全体を中心とする半径rsの円Cisに接する。
従って、両脚支持状態で足平間前後距離が第1閾値以下であるときに前記式(110)により求められるFrf(右脚体装具)x,z,Frf(左脚体装具)x,zは、互いにその大きさ及び向きが等しく、且つ、その総和の大きさが全床反力Frf(装具全体)の大きさに等しいものとなる。また、Frf(右脚体装具)x,z,Frf(左脚体装具)x,zのそれぞれの作用線(床反力中心点COPを通るXZ平面上での作用線)は、概ね、G_装具全体を中心とする半径rsの円Cisに接するものとなる。
以降、式(110)により求められる床反力のX軸成分およびZ軸成分の組から成るベクトルに参照符号Frfs2x,zを付する。
そして、両脚支持状態においては、床反力成分算出手段65eは、最終的に、各脚リンク部4の床反力のXZ平面上での成分ベクトルFrf(脚体装具)x,z(Frf(脚体装具)x,zの推定値の真値)を、前記式(11a)と同様の次式(111a)により求める。
Frf(脚体装具)x,z=W×Frfs1x,z
+(1−W)×Frfs2x,z ……(111a)
なお、Wは、前記図15に示したデータテーブルによって、足平間前後距離に応じて設定される重み係数である。
以上の演算処理により、両脚支持状態での各脚リンク部4に作用する床反力のXZ平面上での成分ベクトルFrf(脚体装具)x,zが算出される。なお、Frfs1x,zを算出するとき、人側関節モーメント推定手段41の床反力成分算出手段58eの処理と同様、傾きα(脚体装具)の絶対値があらかじめ定めた所定値を超えるような場合には、強制的にα(脚体装具)の値がその所定値に制限される。
一方、単脚支持状態で接地している脚リンク部4に作用する床反力(詳しくはそのX軸成分およびZ軸成分)は、前記式(11b)と同様の次式(111b)により算出される。
すなわち、接地している脚リンク部4に作用する床反力のXZ平面上での成分Frf(脚体装具)x,zは、その脚リンク部4の床反力作用点COPからG_装具全体に向かい、且つ、Frf(装具全体)x,zの大きさを持つベクトルを角度θasだけ床反力作用点COPの廻りにXZ平面(矢状面)上で回転させたベクトルとして求められる。このようにして求められるFrf(脚体装具)x,zは、その作用線がG_装具全体を中心とする半径rの円Cisに接することとなる。
なお、本実施形態では、両脚支持状態および単脚支持状態のいずれの場合にあっても、補助装具1の各脚リンク部4の床反力のY軸成分は0とする。また、単脚支持状態で、接地していない足平装着部3に作用する床反力は0とされる。
以上のように床反力成分算出手段65eの処理を行なうことで、両脚支持状態では、床反力の成分ベクトルFrf(右脚体装具)x,z、Frf(左脚体装具)x,zのそれぞれの作用線(XZ平面上で各脚リンク部4の床反力作用点COPを通る作用線)がG_装具全体を中心とする半径rs(モーメントアーム長)の円Cisに接すると共に、Frf(右脚体装具)x,z、Frf(左脚体装具)x,zのそれぞれが(ひいては、それらの総和が)G_装具全体の廻りに発生するモーメント(Y軸廻りのモーメント)の向きが全角運動量変化率のY軸廻り成分Ls'yの向きに一致するように、Frf(右脚体装具)x,z、Frf(左脚体装具)x,zのそれぞれの向きが決定される。そして、その上で、Frf(装具全体)x,zに、Frf(右脚体装具)x,z、Frf(左脚体装具)x,zの総和(=Frf(右脚体装具)x,z+Frf(左脚体装具)x,z)が一致するようにFrf(右脚体装具)x,z、Frf(左脚体装具)x,zの推定値(X軸成分の値とZ軸成分の値との組))が求められる。
また、単脚支持状態では、接地している脚リンク部4の床反力の成分ベクトルFrf(脚体装具)x,z、の作用線(該脚リンク部4の床反力作用点COPを通る作用線)がXZ平面上においてG_装具全体を中心とする半径rs(モーメントアーム長)の円Cisに接すると共に、そのFrf(脚体装具)x,z、がG_装具全体の廻りに発生するモーメント(Y軸廻りのモーメント)の向きが全角運動量変化率のY軸廻り成分Ls'yの向きに一致するように、Frf(脚体装具)x,zの向きが決定される。そして、その上で、Frf(装具全体)x,zの大きさ(絶対値)に、Frf(脚体装具)x,zの大きさ(絶対値)が一致するように接地している脚リンク部4に係るFrf(脚体装具)x,zが求められる。
このようにして求められるFrf(脚体装具)x,zは、人Aに装着された補助装具1の運動を、該補助装具1が単独で(自力で)行なっているとした場合に該補助装具1の各脚リンク部4に作用する床反力のXZ平面上での成分ベクトルの推定値である。換言すれば、その床反力Frf(脚体装具)x,zは、補助装具1を装着した人Aの運動に伴う該補助装具1の運動と同じ運動を、該補助装具1が単独で(自力で)行なう上で動力学的に必要な床反力のXZ平面上での成分ベクトルの推定値である。
なお、本実施形態では、床反力Frf(脚体装具)のY軸成分を0としたが、さらに全角運動量変化率のX軸廻り成分を考慮し、この全角運動量変化率のX軸廻り成分の向きと、接地している各脚リンク部4の床反力のYZ平面上での成分ベクトルFrf(脚体装具)y,zの総和がG_装具全体の廻りに発生するモーメント(X軸廻りのモーメント)の向きとが一致するように、YZ平面上での床反力の成分ベクトルFrf(脚体装具)y,zの向きを決定するようにしてもよい。その向きの決定は、前記した場合と同様に、XZ平面上でのモーメントアーム長と、そのモーメントアーム長の半径を有する円を使用して行なえばよい。そして、Frf(脚体装具)y,zの向きを決定した上で、両脚支持状態では、各脚リンク部4に作用する床反力のYZ平面上での成分ベクトルFrf(脚体装具)y,zの総和が全床反力のYZ平面上での成分ベクトルFrf(装具全体)y,zに一致するように各Frf(脚体装具)y,zの各座標成分値を求め、また、単脚支持状態では、接地している脚リンク部4に作用する床反力のYZ平面上での成分ベクトルFrf(脚体装具)y,zの大きさが全床反力のYZ平面上での成分ベクトルFrf(装具全体)y,zの大きさに一致するようにFrf(脚体装具)y,zの各座標成分値を求めるようにしてもよい。
以上が装具側関節モーメント推定手段42の床反力推定手段65の演算処理である。なお、上記の如く求めた床反力の推定値からノイズ成分を除去するために、人側関節モーメント推定手段41の床反力推定手段58と同様に、該推定値に2次のバタワースフィルタ(ローパスフィルタ)等を使用したフィルタリング処理を施したものを最終的に床反力の推定値として得るようにしてもよい。
次に、装具側関節モーメント推定手段42は、脚平面投影手段66の演算処理を実行する。この処理では、床反力推定手段65で算出された床反力Frf(右脚体装具/BC),Frf(左脚体装具/BC)と、床反力作用点推定手段64で算出された床反力作用点COPの位置ベクトルU(装具COP/BC)とが人側関節モーメント推定手段41の前記変換テンソル作成手段51で作成された変換テンソルR(LC→BC)の転置である変換テンソルR(BC→LC)(=R(LC→BC)T)を用いて各脚体部S2毎に、それに対応する脚平面PLに投影される。
具体的には、床反力Frf(右脚体装具/BC),Frf(左脚体装具/BC)に次式(112c)、(112d)の如く、それぞれ変換テンソルR(BC→右LC)、R(BC→左LC)を乗算することにより、各脚座標系LCから見た床反力Frf(右脚体装具/右LC),Frf(左脚体装具/左LC)が求められる。
Frf(右脚体装具/右LC)=R(BC→右LC)×Frf(右脚体装具/BC)
……(112c)
Frf(左脚体装具/左LC)=R(BC→左LC)×Frf(左脚体装具/BC)
……(112d)
さらに、着地している各脚体部S2(各脚リンク部4)に係わる床反力作用点COPの位置ベクトルU(装具COP/BC)に次式(112e)の如く、その着地している脚体部S2に対応する変換テンソルR(BC→LC)を乗算することにより、該脚体部S2に対応する脚座標系LCから見た床反力作用点COPの位置ベクトルU(装具COP/LC)が求められる。
U(装具COP/LC)=R(BC→LC)×U(装具COP/BC) ……(112d)
なお、位置ベクトルU(装具COP/LC)は、人Aの単脚支持状態では着地側の脚体部S2に対応するもののみが求められ、両脚支持状態では、左右のそれぞれの脚体部S2毎に求められる。また、上記式(112c)〜(112e)はそれぞれ、前記式(12c)〜(12e)に対応する式である。
補足すると、左右の各脚座標系LCで見た加速度ベクトルACC(BCO/LC)および角速度ベクトルω(BCO/LC)は、人側関節モーメント推定手段41の脚平面投影手段59で前述したように求めたもの(前記式(12a),(12b)を参照)と同一になるので、装具側関節モーメント推定手段42の脚平面投影手段66では、これらを求める必要はない。
以下の関節モーメント算出手段67の説明では、加速度ベクトルACC(BCO/LC)、床反力Frf(右脚体装具/右LC),Frf(左脚体装具/左LC)および床反力作用点の位置ベクトルU(装具COP/LC)は、そのX座標成分およびZ座標成分の組から成る2次元ベクトルを意味するものとする。なお、角速度ωについては、脚平面PL上での値はω(BCO/LC)yで表す。
次に、装具側関節モーメント推定手段42は、関節モーメント算出手段67による演算処理を実行する。この関節モーメント算出手段67の演算処理では、人側関節モーメント推定手段41の関節モーメント算出手段67の演算処理と同様に、各脚体部S2の足平部要素S9、下腿部要素S8、大腿部要素S7のそれぞれの、以下に示す並進運動および回転運動に関する運動方程式に基づく逆動力学モデルの演算(各脚平面PL上での2次元的な演算)によって、関節要素J_足首、J_膝、J_股の関節モーメントが順番に算出される。
この場合、並進運動に関する運動方程式は、次の式(115a)〜(115c)により与えられ、回転運動に関する運動方程式は、次の式(115d)〜(115f)により与えられる。なお、以下の運動方程式において、前記関節モーメント算出手段60の演算処理の場合と同様、装具剛体リンクモデルS1’の足平部要素S9、下腿部要素S8、および大腿部要素S7のそれぞれの剛体要素の両端のうち、腰部要素S4に近い側の一端部を「P_○○装具」、遠い側の他端部「D_○○装具」(○○は剛体要素を表す名称)というように表記する。例えば、下腿部要素S8の膝関節J_膝(J2)側の端部を「P_下腿部装具」、足首関節J_足首(J3)側の端部を「D_下腿部装具」というように表記する。また、F(P_○○装具/BC)、F(D_○○装具/BC)は、その○○で表される名称の剛体要素(装具剛体リンクモデルS1’の剛体要素)の端部が、それに接触する物体から受ける反力(脚平面PL上での2次元並進力ベクトル)を意味する。同様に、M(P_○○装具)、M(D_○○装具)は、その○○で表される名称の剛体要素(装具剛体リンクモデルS1’の剛体要素)の端部が、それぞれに接触する物体から受ける反力モーメント(脚平面PLに垂直な軸廻り(脚座標系LCのY軸に平行な軸廻り)のモーメント)を意味する。
F(P_足平部装具/LC)=m_足平部装具×(ACC(BCO/LC)
+U(G_足平部装具/LC)'')−Frf(脚体装具/LC)
……(115a)
F(P_下腿部装具/LC)=m_下腿部装具×(ACC(BCO/LC)
+U(G_下腿部装具/LC)'')−F(D_下腿部装具/LC)
……(115b)
F(P_大腿部装具/LC)=m_大腿部装具×(ACC(BCO/LC)
+U(G_大腿部装具/LC)'')−F(D_大腿部装具/LC)
……(115c)
M(P_足平部装具)=0 ……(115d)
M(P_下腿部装具)=I_下腿部装具×(ω(下腿部装具)’+ω(BCO/LC)y’)
−{(U(D_下腿部装具/LC)−U(G_下腿部装具/LC))
×F(D_下腿部装具/LC)}y
−{(U(P_下腿部装具/LC)−U(G_下腿部装具/LC))
×F(P_下腿部装具/LC)}y
−M(D_下腿部装具) ……(115e)
M(P_大腿部装具)=I_大腿部装具×(ω(大腿部装具)’+ω(BCO/LC)y’)
−{(U(D_大腿部装具/LC)−U(G_大腿部装具/LC))
×F(D_大腿部装具/LC)}y
−{(U(P_大腿部装具/LC)−U(G_大腿部装具/LC))
×F(P_大腿部装具/LC)}y
−M(D_大腿部装具) ……(115f)
なお、F(D_下腿部装具/BC)=−F(P_足平部装具/BC)、F(D_大腿部装具/BC)=−F(P_下腿部装具/BC)、M(D_下腿部装具)=−M(P_足平部装具)、M(D_大腿部装具)=−M(P_下腿部装具)である。また、I_下腿部装具、I_大腿部装具は、それぞれ装具剛体リンクモデルS1’の下腿部要素S8、大腿部要素S7のそれぞれの重心廻りの慣性モーメント(補助装具1単体での慣性モーメント)であり、これは、あらかじめ実測データ等に基づいて決定されて演算処理装置25のメモリに記憶保持されている。
これらの式(115a)〜(115f)はそれぞれ前記式(15a)〜(15f)に対応している。ただし、本実施形態では、各脚リンク部4の足首関節部位11(J_足首)には電動モータを備えず、該足首関節部位11は回転自在とされているので、前記式(115d)においてM(P_足平部装具)=0とされている。関節モーメント算出手段67では、人側関節モーメント推定手段41の場合と同様、上記式(115a)〜(115f)により、各脚体部S2毎に、最終的に関節モーメントM(P_足平部装具)、M(P_下腿部装具)、M(P_大腿部装具)が順次求められる。
この場合、その演算に必要なACC(BCO/LC)、ω(BCO/LC)y’は、前記式(15a)〜(15f)で用いるものと同じものである。また、ω(下腿部装具)’、ω(大腿部装具)’は、それぞれ前記2次元脚姿勢・要素重心位置算出手段61で求められた傾斜角θ_下腿部装具、θ_大腿部装具の2階微分値として該傾斜角の時系列データから求められる。また、U(P_下腿部/LC)(=U(D_大腿部/LC))、U(P_大腿部/LC)は、それぞれ前記2次元脚姿勢・要素重心位置算出手段61で求められたU(J_膝装具/LC)、U(J_股装具/LC)である。また、U(G_足平部装具/LC)''、U(G_下腿部装具/LC)''、U(G_大腿部装具/LC)''は、前記式(15g)〜(15i)と同様に、それぞれ、前記2次元脚姿勢・要素重心位置算出手段61で先に算出された脚座標系LCでのG_足平部装具、G_下腿部装具、G_大腿部装具の位置ベクトル(より正確には、該位置ベクトルのX座標成分及びZ座標成分の組)の2階微分値として、該位置ベクトルの時系列データから求められる。また、Frf(脚体装具/LC)は、前記床反力推定手段65で先に求められた床反力ベクトルを脚平面投影手段66で脚平面に投影してなる2次元ベクトルであり、U(装具COP/LC)は、前記床反力作用点推定手段64で先に求められた床反力作用点を脚平面投影手段66で脚平面PLに投影してなる2次元ベクトルである。
なお、本実施形態では、慣性モーメントI_下腿部装具、I_大腿部装具を考慮したが、これらは一般的には、十分に0に近い値であるので、式(115d)〜(115f)の演算では、慣性モーメントI_下腿部装具、I_大腿部装具を含む項を省略してもよい。
関節モーメント算出手段67の演算処理では、以上のようにして、補助装具1の各関節部位7,9,11の、脚平面PLに垂直な軸廻りの関節モーメントM(P_足平部装具)、M(P_下腿部装具)、M(P_大腿部装具)が足首関節部位11(J3)側から順番に算出される。これらの関節モーメントM(P_足平部装具)、M(P_下腿部装具)、M(P_大腿部装具)は、補助装具1を装着した人Aの運動に伴う該補助装具1の運動を、補助装具1が単独で(自力で)行っているとした場合に、補助装具1の各脚リンク部4の足首関節部位11、膝関節部位9、股関節部位7に発生すべきモーメントである。換言すれば、該関節モーメントは、補助装具1が人Aから取り外されて単独で運動していると見なした場合に、該補助装具1の運動と、補助装具1に作用する外力(床反力)および重力との間の所要の動力学的な関係(物理法則)を満たし得るような関節モーメントである。
従って、前記電動モータ15,16に、それぞれM(P_下腿部装具)、M(P_大腿部装具)に等しいトルクを発生させた場合には、原理的には、人Aは、あたかも、補助装具1を装着していない状態で自力で運動しているように感じることとなる。
以上が演算処理装置25の人側関節モーメント推定手段41および装具側関節モーメント推定手段42の演算処理の詳細である。
次に、演算処理装置25は、目標関節補助モーメント決定手段43および実関節補助モーメント推定手段44の演算処理を実行する。
目標関節補助メーメント決定手段43の演算処理では、人側関節モーメント推定手段41で求められた各脚体の膝関節モーメントM(P_下腿部)および股関節モーメントM(P_大腿部)に応じて、各脚体の膝関節、股関節に、補助装具1の電動モータ15,16の回転力(トルク)によって発生させるべき目標関節補助モーメントが決定される。この場合、例えば膝関節モーメントM(P_下腿部)および股関節モーメントM(P_大腿部)のそれぞれに所定の割合(10%など)を乗じたものが、膝関節、股関節それぞれ発生させるべき目標関節補助モーメントMat(膝)、Mat(股)として決定される。なお、上記所定の割合は、膝関節と、股関節とで異ならせるようにしてもよく、人Aの運動状態や、床などの環境状態に応じて可変的に設定してもよい。
実関節補助モーメント推定手段44の演算処理では、前記力センサ20,22、変位センサ21の検出出力などを基に、補助装具1の電動モータ15,16の回転力によって、人Aの各脚体の膝関節および股関節に実際に発生している実関節補助モーメント(各脚体に係る脚平面PLに垂直な軸廻りのモーメント)の推定値が算出される。この演算処理は、各脚体毎にそれぞれ実行される。以下に、実関節補助モーメント推定手段44の演算処理を図23を参照して説明する。図23は、人Aの下半身と、補助装具1の下半身の要部とをそれぞれ模式的に(剛体リンクモデル状に)表している。なお、図23では、主に、左脚体および左脚リンク部4を示し、紙面に垂直な方向が左脚体に係る脚座標系LCのXZ平面に垂直な方向(脚平面PLに垂直な方向)に一致しているものとする。また、図23は図示の便宜上、人Aの大腿部の軸心と下腿部の軸心とが、それぞれ補助装具1の大腿リンク部材8の軸心、下腿リンク部材10の軸心と脚座標系LCのXZ平面上で一致しているように記載されているが、それらが一致している必要はない。
実関節補助モーメント推定手段44は、まず、補助装具1の各脚リンク部材4の大腿リンク部材8に備えた前記力センサ20の出力から、該力センサ20の箇所(大腿リンク部材8と人Aの大腿部との連結箇所)で補助装具1から人Aの各脚体に付与される力(並進力)を検出する。この場合、本実施形態では、力センサ20は、大腿リンク部材8の軸心方向(長手方向)に移動自在である。このため、該力センサ20には、大腿リンク部材8の軸心方向に直行する方向の力(並進力)が人Aの大腿部から作用し、その力の符号(向き)を反転させた反力が力センサ20の出力から検出される。以降、この検出される力(ベクトル)を作用力F20(装具→人)と称する。
なお、本実施形態では、力センサ20の出力から検出する力は、より詳しくは、作用力F20(装具→人)のうちの、脚平面LCのXZ平面上で人Aの大腿部の軸心方向に直交する方向の成分であり、以降、この作用力成分を図23に示す如く参照符号F20(装具→人)xで表す。この場合、人Aの大腿部の軸心方向と大腿リンク部材8の軸心方向とが一致しているときには、力センサ20の出力から直接的にF20(装具→人)xの検出値を得ることができる。また、人Aの大腿部の軸心方向と大腿リンク部材8の軸心方向とが一致していないときには、力センサ20の出力と、前記2次元脚姿勢・要素重心位置算出手段52,61でそれぞれ先に求められた傾斜角θ_大腿部、θ_大腿部装具とからF20(装具→人)xの検出値を算出することができる。
また、実関節補助モーメント推定手段44は、補助装具1の各脚リンク部4の下腿リンク部材10の下端部に備えた前記力センサ22の出力によって、各脚リンク部4から足平装着部3を介して該足平装着部3の外部(人Aの足平部や床)に作用する力(並進力)を検出する。この場合、前記したように、力センサ22には、各脚リンク部4が足平装着部3を介して床から受ける床反力(詳しくは人Aの脚体の運動に伴う補助装具1の運動を、補助装具1が単独で行なうとした場合に該補助装具1の各脚リンク部4に作用する床反力)と該脚リンク部4が人Aの足平部から足平装着部3を介して受ける並進力との合力が足平リンク部材12および足首関節部位11を介して伝達される。そして、実関節補助モーメント推定手段44は、力センサ22に伝達される合力の符号(向き)を反転させた反力を該力センサ22の出力から検出する。以降、この検出される力(ベクトル)を作用力F22と称する。なお、本実施形態では、力センサ22の出力から検出する力は、より詳しくは、作用力F22のうちの、脚平面LCのXZ平面上での人Aの下腿部の軸心方向の成分と、該軸心方向に直交する方向の成分とからなり、以降、これらの作用力成分をそれぞれ図23に示す如く参照符号F22z、F22xで表す。この場合、人Aの下腿部の軸心方向と下腿リンク部材10の軸心方向とが一致しているときには、力センサ22の出力から直接的にF22x、F22zの検出値を得ることができる。また、人Aの下腿部の軸心方向と下腿リンク部材10の軸心方向とが一致していないときには、力センサ22の出力と、前記2次元脚姿勢・要素重心位置算出手段52,61でそれぞれ先に求められた傾斜角θ_下腿部、θ_下腿部装具とからF22x、F22zの検出値を算出することができる。
ここで、作用力F22は、換言すれば、脚リンク部4から足平装着部3を介して人Aの足平部に作用する力(並進力)と、人Aの運動に伴う補助装具1の運動を該補助装具1が単独で行なっているとした場合に足平装着部3から床に作用する力(並進力)との合力であり、後者の力は、該足平装着部3が床から受ける床反力Frf(脚体装具)の符号(向き)を反転させたもの(=−Frf(脚体装具))である。従って、脚リンク部4から足平装着部3を介して人Aの足平部に作用する力(並進力。以降、これを作用力F22(装具→人)と称する)は、次式(151)により与えられる。
F22(装具→人)=F22−(−Frf(脚体装具))
=F22+Frf(脚体装具) ……(151)
補足すると、足平装着部3の足平基体13の底面のほぼ全面が接地するように該足平装着部3を装着した脚体の足平部を着地させた状態では、F22(装具→人)はほぼ0になり、力センサ22の出力から検出される力F22は、該脚体に対応する脚リンク部4に作用する床反力の符号を反転させたものとほぼ等しくなる。
また、補助装具1の各脚リンク部4の電動モータ15,16にトルクを発生させたときに該補助装具1から人Aの膝関節に作用する実関節補助モーメントMa(膝)は、人Aの脚体の膝から足平部にかけての部分(膝から下側の部分)のうち、補助装具1に連結されている箇所で補助装具1の脚リンク部4から人Aに作用する力(並進力)によって発生する。この場合、本実施形態では、当該連結箇所は、足平部であるので、前記作用力F22(装具→人)によって、実関節補助モーメントMa(膝)が発生することとなる。さらに、人Aの股関節に発生する実関節補助モーメントMa(股)は、人Aの脚体の股関節から足平部にかけての部分(股関節から下側の部分)のうち、補助装具1に連結されている箇所で補助装具1から人Aに作用する力(並進力)によって発生する。この場合、本実施形態では、当該連結箇所は、足平部と大腿部とであるので、前記作用力F22(装具→人)およびF20(装具→人)によって、実関節補助モーメントMa(股)が発生することとなる。
このようなことから、実関節補助モーメント推定手段44は、力センサ20,22の出力から検出された作用力F20,F22と、前記装具側関節モーメント推定手段42の床反力推定手段65で求めた床反力Frf(脚体装具)とを基に、次式(152a),(152b)により、実関節補助モーメントMa(膝),Ma(股)の推定値を求める。
Ma(膝)=L8×F22(装具→人)x ……(152a)
Ma(股)=(L8+L7×cosθ_膝)×F22(装具→人)x
+L7×sinθ_膝×F22(装具→人)z
+L7s×F20(装具→人)x ……(152b)
ここで、図23に示す如く、L7は人Aの大腿部の長さ、L8は人Aの下腿部の長さである。また、L7sは、人Aの股関節から力センサ20の箇所までの距離(脚座標系LCのXZ平面上での距離)であり、これは、前記変位センサ21の出力を基に算出される。すなわち、変位センサ21の出力によって、前記力センサ20の大腿リンク部材8に対する移動位置が判るので、その移動位置を基に、人Aの股関節から力センサ20の箇所までの距離L7sを算出できる。なお、大腿部の軸心と大腿リンク部材8の軸心とが一致していない場合には、変位センサ21の出力と大腿部の傾斜角θ_大腿部および大腿リンク部材8の傾斜角θ_大腿部装具とを用いてL7sを算出すればよい。また、θ_膝は、前記人側関節モーメント推定手段41の2次元脚姿勢・要素重心位置算出手段52により先に求められたものである。また、F20(装具→人)xは前記した如く、力センサ20の出力から検出される値である。また、F22(装具→人)xおよびF22(装具→人)zは、それぞれ作用力F22(装具→人)のうちの、脚平面LCのXZ平面上での人Aの下腿部の軸心方向の成分、該軸心方向に直交する方向の成分である。これらのF22(装具→人)xおよびF22(装具→人)zは、前記式(151)を成分表示で表した次式(151a),(151b)により算出される。
F22(装具→人)x=F22x+Frf(脚体装具)x ……(151a)
F22(装具→人)z=F22z+Frf(脚体装具)z ……(151b)
この場合、F22x、F22zは、前記した如く力センサ22の出力から検出される値である。また、Frf(脚体装具)xおよびFrf(脚体装具)zはそれぞれ、床反力Frf(脚体装具)のうちの、脚平面LCのXZ平面上での人Aの下腿部の軸心方向の成分、該軸心方向に直交する方向の成分である。これらのFrf(脚体装具)xおよびFrf(脚体装具)zは、装具側関節モーメント推定手段42の脚平面投影手段66で求められたFrf(脚体装具/LC)を前記2次元脚姿勢・要素重心位置算出手段61により先に求められた傾斜角θ_下腿部を用いて座標変換することで算出される。
以上が実関節補助モーメント推定手段44の演算処理である。
演算処理装置25は、次に、モータ制御手段45の演算処理を実行する。このモータ制御手段45の演算処理を図24を参照して以下に説明する。図24は、モータ制御装置35の機能的手段を示すブロック図である。
モータ制御装置35は、モーメント変換手段35a1,35a2、フィードフォワードトルク決定手段35b、トルク・電流変換手段35c、フィードバック操作量演算手段35d、および指示電流決定手段35eを備えており、これらの手段により、次のように各電動モータ15,16の発生トルクを制御する。
まず、モータ制御装置35は、前記目標関節補助モーメント決定手段43で決定した目標関節補助モーメントMat(膝)、Mat(股)を、モーメント変換手段35a1によって、電動モータ15,16のそれぞれの補助回転力(トルク)の目標値である目標モータ補助トルクTat(股装具),Tat(膝装具)に変換(換算)する。目標モータ補助トルクTat(股装具),Tat(膝装具)は、そのトルクをそれぞれの電動モータ15,16に発生させたとき(各脚リンク部4の股関節部位7、膝関節部位9に発生させたとき)に、人Aの膝関節、股関節に発生するモーメントがそれぞれMat(膝)、Mat(股)になるようなトルクである。この場合、例えば目標関節補助モーメントMat(膝)、Mat(股)をそれぞれ人Aの膝関節、股関節に発生させたときにそれらのモーメントによって人Aの足首関節から補助装具1の各脚リンク部4に作用する並進力を人Aの各脚体の大腿部および下腿部の長さや傾斜角などを使用して求める。そして、その並進力によって、補助装具1の各脚リンク部4の膝関節部位9、股関節部位7にそれぞれ発生するモーメントを目標モータ補助トルクMat(股装具),Mat(膝装具)として、各脚リンク部4の下腿リンク部材10および大腿リンク部材8の長さや傾斜角などを使用して求めればよい。
さらに、モータ制御装置35は、実関節補助モーメント推定手段44で推定した実関節補助モーメントMa(膝),Ma(股)の推定値を、モーメント変換手段35a2によって、電動モータ15,16のそれぞれの補助回転力(トルク)の実際値である実モータ補助トルクTa(股装具),Ta(膝装具)に変換する。実モータ補助トルクTa(股装具),Ta(膝装具)は、そのトルクをそれぞれの電動モータ15,16(各脚リンク部4の股関節部位7、膝関節部位9に発生させたとき)に発生させたときに、人Aの膝関節、股関節に発生するモーメントがそれぞれMa(膝)、Ma(股)になるようなトルクである。これらのTa(股装具),Ta(膝装具)は、モーメント変換手段35a2の処理と同様の処理によって求められる。
次いで、モータ制御装置35は、これらの目標モータ補助トルクTat(股装具),Tat(膝装具)と前記装具側関節モーメント推定手段42で推定された関節モーメントM(P_下腿部装具)(以下、膝関節モーメントM(膝装具)という)およびM(P_大腿部装具)(以下、股関節モーメントM(股装具)という)とから、フィードフォワードトルク決定手段35bによって電動モータ15,16にそれぞれ発生させるトルクのフィードフォワード目標値Tff(股装具),Tff(膝装具)を決定する。この場合、目標モータ補助トルクTat(股装具),Tat(膝装具)にそれぞれ、股関節モーメントM(股装具)、膝関節モーメントM(膝装具)を加算することで、フィードフォワード目標値Tff(股装具),Tff(膝装具)が決定される。
さらに、モータ制御装置35は、トルク・電流変換手段35cによって、このフィードフォワード目標値Tff(股装具),Tff(膝装具)のそれぞれを、あらかじめ設定されたデータテーブルなどを使用して、各電動モータ15,16の指示電流(通電電流の指令値)に変換することで、各電動モータ15,16の指示電流のフィードフォワード値であるフィードフォワード指示電流Iff(股装具)、Iff(膝装具)を求める。
また、モータ制御装置35は、フィードフォワードトルク決定手段35b、トルク・電流変換手段35cの処理と並行して、前記フィードバック操作量演算手段35dの処理を実行する。このフィードバック操作量演算手段35dは、前記モーメント変換手段35a1で求めた目標モータ補助トルクTat(膝装具)、Tat(股装具)のそれぞれに、前記モーメント変換手段35a2で求めた実モータ補助トルクTa(股装具),Ta(膝装具)を収束させるようにフィードバック制御則により各電動モータ15,16の指示電流のフィードバック操作量であるフィードバック指示電流Ifb(股装具)、Ifb(膝装具)を算出する。この場合、フィードバック制御則としては、例えば図示の如くPD制御則が用いられる。すなわち、フィードバック操作量演算手段35dは、次式(155a),(155b)によりフィードバック指示電流Ifb(股装具)、Ifb(膝装具)を算出する。
Ifb(股装具)=Kp×ΔTa(股装具)+Kp×Td×dΔTa(股装具)/dt
……(155a)
Ifb(膝装具)=Kp×ΔTa(膝装具)+Kp×Td×dΔTa(膝装具)/dt
……(155b)
但し、ΔTa(股装具)≡Tat(股装具)−Ta(股装具)
ΔTa(膝装具)≡Tat(膝装具)−Ta(膝装具)
なお、Kp、Tdは所定のゲイン値である。
次いで、モータ制御装置35は、上記の如くもとめたフィードフォワード指示電流Iff(股装具)、Iff(膝装具)のそれぞれと前記フィードバック指示電流Ifb(股装具)、Ifb(膝装具)のそれぞれと指示電流決定手段35eで加え合わせることにより、各電動モータ15,16の最終的な指示電流I(股装具)、I(膝装具)を決定する。そして、モータ制御装置35は、各電動モータ15,16の通電電流をそれぞれ前記モータ駆動回路29を介して指示電流I(股装具)、I(膝装具)に制御することで、各電動モータ15,16の発生トルクを、目標モータ補助トルクTat(膝装具)、Tat(股装具)のそれぞれに実モータ補助トルクTa(股装具),Ta(膝装具)が一致するように、ひいては、目標関節補助モーメントMat(膝)、Mat(股)のそれぞれに実関節補助モーメントMa(股),Ma(膝)が一致するようにフィードバック制御する。
以上が、本実施形態における補助装具1の作動の詳細である。
以上説明したように、補助装具1の各電動モータ15,16を制御することによって、各電動モータ15,16の発生トルクは、それによって補助装具1から人Aの各脚体の膝関節および股関節に実際に発生する実関節補助モーメントMa(膝),Ma(股)が目標関節補助モーメントMat(膝)、Mat(股)のそれぞれに一致するように制御される。この場合、目標関節補助モーメントMat(膝)、Mat(股)は、補助装具1を装着した人Aの運動が、該補助装具1を取り外して行なわれているとした場合に該人Aに作用する床反力Frf(脚体)の推定値を基に逆動力学モデルの演算によって推定された人Aの各脚体の関節モーメントに応じて決定される。また、実関節補助モーメントMa(股),Ma(膝)は、人Aの運動に伴う補助装具1の運動を、該補助装具1が単独で(自力で)行なっているとした場合に該補助装具1に作用する床反力Frf(脚体装具)と、力センサ20,22による力検出値とを用いて推定される。このため、人Aは、補助装具1の自重をほとんど感じることなく、自身が意図した脚体の運動を行うことができる。
次に、本実施形態による効果の検証例を図24並びに図25(a),(b)を参照して説明する。図25の実施例1のグラフは、前記補助装具1を装着した人Aが両脚体を着地させたまま、しゃがむ、立ち上がるという一連の運動(いわゆるスクワット)を繰り返した場合における人Aの1分当たりのエネルギー消費量の計測値を示している。この場合、しゃがむ、立ち上がるという一連の運動のペースは、1分間に22.5回のペースである。そして、この実施例1では、前記目標関節補助モーメントMat(膝)、Mat(股)をいずれも0とした。なお、エネルギー消費量は、呼気計測器により計測した。
また、図25の比較例1のグラフは、人Aに補助装具1を装着せずに該人Aが単独で、上記実施例1と同様にスクワットを繰り返した場合における人Aのエネルギー消費量の計測値を示している。また、図25の比較例2のグラフは、人Aに装着した前記補助装具1の電動モータ15,16に電流を流さない状態(電動モータ15,16にトルクを発生させない状態)で、該人Aが上記実施例1と同様にスクワットを繰り返した場合におけるエネルギー消費量の計測値を示している。
同図25に見られるように、実施例1と比較例1とでは、エネルギー消費量がほぼ同等になり、且つ、実施例1は、比較例2よりもエネルギー消費量が小さくなる。従って、前述したような電動モータ15,16の制御によって、人Aは補助装具1の重さをほとんど感じることなく、運動を行なうことができることが判る。
図26(a),(b)の実施例2のグラフは、それぞれ、補助装具1を装着した人Aが両脚体を着地させたまましゃがんだ状態から、立ち上がり、さらに再びしゃがむという運動を行なった場合において、前記装具側関節モーメント推定手段42の床反力推定手段65で算出された、一方の脚リンク部4に係る床反力のX軸成分F(脚体装具/BC)x、Z軸成分F(脚体装具/BC)zの経時変化を示すグラフである。また、図26(a),(b)の比較例3のグラフは、それぞれ、実施例2の運動時に、前記力センサ22の出力から検出される力F22の符号を反転させたものの、身体座標系BCにおけるX軸成分、Z軸成分の計測値を示すグラフである。前記したように足平装着部3の足平基体13の底面のほぼ全面が接地するように該足平装着部3を装着した脚体の足平部を着地させた状態では、力センサ22の出力から検出される力F22は、該脚体に対応する脚リンク部4に作用する床反力の符号を反転させたものとほぼ等しくなる。従って、実施例2の運動時に力センサ22の出力から検出される力F22の符号を反転させたものは、補助装具1が単独で運動を行なっているとした場合に該補助装具1の各脚リンク部4に係る床反力の計測値に相当するものとなる。
これらの図26(a),(b)に見られるように、実施例2のF(脚体装具/BC)x、F(脚体装具/BC)zの経時変化は、それぞれ比較例3の計測値のX軸成分、Z軸成分の経時変化と良く一致している。このことから、前記実施形態で、床反力推定手段65で算出される床反力Frf(脚体装具/BC)は、補助装具1が単独で運動を行なっているとした場合に該補助装具1の各脚リンク部4に係る床反力に相当するものとして好適なものであることが判る。
次に、前記実施形態の変形態様をいくつか説明する。
前記実施形態では、補助装具1は、人Aの腰部、足平部で人Aに固定すると共に、各脚リンク部4を人Aの大腿部に連結するようにしたが、例えば各脚リンク部4の大腿リンク部材8を前記実施形態と同様に人Aの大腿部に連結すると共に、該脚リンク部4の下腿リンク部材10を大腿部の場合と同様に、人Aの下腿部の上部や中間部に連結するようにようにしてもよい。但し、この場合には、前記実関節補助モーメントを適切に推定するためには、脚リンク部4の、人Aの下腿部への連結箇所にも図27に示す如く力センサ120を備える必要がある。図27は、前記図23と同様に、人Aの下半身と、補助装具1の下半身の要部とを模式的に表したものである。
そして、この場合には、実関節補助モーメントMa(膝),Ma(股)の推定値は、前記式(152a)、(152b)の代わりに、例えば次式(152c)、(152c)により求めることができる。なお、この例では、補助装具1の下腿リンク部材10は、力センサ120を介して図示しないベルト部材などにより人Aの下腿部に連結されていると共に、該力センサ120は、前記力センサ20と同様に、下腿リンク部材10の軸心方向に移動自在に該下腿リンク部材10に取り付けられ、該力センサ20の下腿リンク部材10に対する移動位置(下腿リンク部材10の軸心方向での移動量)が図示しない変位センサにより検出されるものとする。
Ma(膝)=L8×F22(装具→人)x+L8s×F120(装具→人)x ……(152c)
Ma(股)=(L8+L7×cosθ_膝)×F22(装具→人)x
+L7×sinθ_膝×F22(装具→人)z
+L7s×F20(装具→人)x
+(L8s+L7×cosθ_膝)×F120(装具→人)x ……(152b)
ここで、L8sは、図27に示す如く、人Aの膝関節から力センサ120の箇所までの距離(脚座標系LCのXZ平面上(脚平面PL上)での距離)であり、力センサ120の下腿リンク部材10に対する移動位置を検出する変位センサの出力を基に算出される。また、F120(装具→人)xは、力センサ120の箇所(下腿リンク部材10と人Aの下腿部との連結箇所)で補助装具1から人Aの各脚体に付与される作用力(並進力)のうちの、人Aの下腿部の軸心に直交する方向(脚座標系LCのXZ平面上(脚平面PL上)で直交する方向)の成分である。その成分は、力センサ120の出力から、前記力センサ20の場合と同様に検出される。式(152c)、(152d)の演算に必要な上記以外の変数は、前記式(152a),(152b)の演算に用いるものと同じである。
なお、実関節補助モーメントの算出以外の演算処理は、前記実施形態と同一でよい。
補足すると、上記の変形態様の例では、力センサ120が下腿リンク部材10の軸心方向に移動自在として、力センサ120の箇所で、補助装具1から人Aに、人Aの下腿部の軸心方向には作用力(並進力)が発生しないか、もしくはそれがほぼ0であるとした。但し、下腿リンク部材10の軸心方向と人Aの下腿部の軸心方向とが一致していない場合には、厳密には、力センサ120の箇所で、補助装具1から人Aに、人Aの下腿部の軸心方向に作用力F120(人→装具)zが発生する。また、力センサ120が下腿リンク部材10に固定されている場合には、一般に、作用力F120(人→装具)zが発生する。そして、この作用力F120(人→装具)zは、人Aの股関節にモーメントを発生するものとなる。従って、実関節補助モーメントMa(股)を求めるときに、さらに、このF120(人→装具)zを考慮して、Ma(股)を求めるようにしてもよい。その場合には、式(152d)の右辺にさらに、L7×sinθ_膝×F120(人→装具)zを加えればよい。なお、F120(人→装具)zは、力センサ120の出力から検出することができる。
また、前記実施形態では、補助装具1の大腿リンク部材8を人Aの大腿部に連結するようにしたが、連結しなくもよい。その場合には、実関節補助モーメントMa(膝),Ma(股)の推定値のうち、Ma(股)の推定値を求めるときに、前記式(152b)の右辺の第3項(F20(装具→人)xを含む項)を省略した式(F20(装具→人)xを含む項)によって、Ma(股)を求めるようにすればよい。これ以外は、前記実施形態と同一でよい。なお、補助装具1の下腿リンク部材10のみを人Aの下腿部に連結した場合には、前記式(152c)によりMa(膝)を求めると共に、前記式(152d)(あるいは、前記F120(人→装具)zを考慮した式)の、F20(装具→人)xを含む項を省略した式によって、Ma(股)を求めるようにすればよい。
また、前記実施形態では、補助装具1の足首関節部位11には、これに回転力を付与する手段を備えないものとしたが、該足首関節部位11に、回転力を付与する回転力発生手段、例えば電動モータを備えてもよい。この場合には、前記作用力F22を検出するための力センサ22は、例えば脚リンク部4の足平リンク部材12に設けられる。そして、補助装具の各電動モータの作動によって人Aの足首関節、膝関節、股関節にそれぞれ実際に付与される実関節補助モーメントMa(足首)、Ma(膝)、Ma(股)を前記実施形態と同様の力学的な演算手法によって、力センサ22,20の出力等を基に推定する。また、前記実施形態と同様に、人側関節モーメント推定手段41で推定した人Aの足首関節、膝関節、股関節の関節モーメントM(P_足平部)、M(P_下腿部)、M(P_大腿部)に応じて、それらの各関節の目標関節補助モーメントMat(足首)、Mat(膝)、Mat(股)を決定する。その決定の仕方は、前記実施形態で、目標関節補助モーメント決定手段43によりMat(膝)、Mat(股)を決定した場合と同様でよい。そして、この決定した目標関節補助モーメントMat(足首)、Mat(膝)、Mat(股)のそれぞれに、実関節補助モーメントMa(足首)、Ma(膝)、Ma(股)のそれぞれを一致させるように、前記実施形態と同様に各電動モータを制御するようにすればよい。なお、この場合、各電動モータにそれぞれ発生させるトルクのフィードフォワード目標値Tff(股),Tff(膝),Tff(足首)を決定するために用いる補助装具の関節モーメントM(P_足平部装具)(=M(足首装具))、M(P_下腿部装具)(=M(膝装具))、M(P_大腿部装具)(=M(股装具))のうち、M(P_足平部装具)は、前記式(115d)の代わりに、次式(115d’)により求めればよい。
M(P_足平部装具)=I_足平部装具×(ω(足平部装具)’+ω(BCO/LC)y’)
−{(U(装具COP/LC)−U(G_足平部装具/LC))
×Frf(脚体装具/LC)}y
−{(U(P_足平部装具/LC)−U(G_足平部装具/LC))
×F(P_足平部装具/LC)}y ……(115d’)
ここで、I_足平部装具は、装具剛体リンクモデルS1’の足平部要素S9の重心廻りの慣性モーメントであり、演算処理装置25のメモリに記憶保持される。また、ω(足平部装具)’は、前記2次元脚姿勢・要素重心位置算出手段61で求められる傾斜角θ_足平部装具(あるいは前記2次元脚姿勢・要素重心位置算出手段52で求められる傾斜角θ_足平部)の2階微分値として該傾斜角の時系列データから求められる。また、U(P_足平部/LC)(=U(D_下腿部/LC))は、前記2次元脚姿勢・要素重心位置算出手段61で求められるU(J_足首装具/LC)である。また、U(G_足平部装具/LC)は、前記2次元脚姿勢・要素重心位置算出手段61で算出された脚座標系LCでのG_足平部装具の位置ベクトル(より正確には、該位置ベクトルのX座標成分及びZ座標成分の組)である。式(115d’)のこれら以外の変数は、前記実施形態で説明した通りである。
また、前記実施形態では、人Aに係る床反力Frf(脚体)および補助装具1に係る床反力Frf(脚体装具)を、全角運動量変化率を考慮して求めるようにしたが、例えば本願出願人が、特開2003−89083号公報や、特開2003−112893号公報にて提案している手法を用いて求めるようにすることも可能である。また、床反力作用点COPの推定も、上記特開2003−89083号公報や、特開2003−112893号公報にて提案している手法を用いて行なうようにしてもよい。
A…人、1…補助装具、2…腰装着部、3…足平装着部、4…脚リンク部、7,9,11…関節部位、15,16…電動モータ(回転力発生手段)、20,22…力センサ。