(57)【特許請求の範囲】
【請求項１】
人の予め定められた動作に伴って実現されるｎ個の人の関節の角度の既知軌道を複数の相互に異なる動作群の夫々について記憶している記憶モジュールと、
人の関節の角度を計測するセンサと、
ｎ個の人の関節のうちのｎより少ないｍ個の関節についてセンサによって計測されたｍ個の関節角度の計測軌道に最も近い既知軌道を記憶された既知軌道群の中から選択し、選択された既知軌道を出力する推定モジュールと、
人の特定関節にトルクを加えるアクチュエータを有する装具と、
センサによって計測された人の特定関節の計測角度が、動作推定装置が出力した既知軌道に含まれている前記特定関節の角度の軌道に追従するようにアクチュエータを追従制御するコントローラと、
を備えており、
前記記憶モジュールは、ｎ個の関節の角度を説明変数として入力するとｎより小さいｓ次元の目的変数ベクトルを出力する第１変換関数に夫々の既知軌道の各タイミングにおける値を入力して得られる目的変数ベクトルの既知時系列データ群を記憶しており、
前記推定モジュールは、
ｎ個の人の関節のうち特定関節を含まずｎより少ないｍ個の関節の計測角度を説明変数として入力するとｓ次元の目的変数ベクトルを出力する第２変換関数に入力してｓ次元の目的変数ベクトルの計測時系列データを求める目的変数ベクトル算出処理と、
記憶されている既知時系列データ群の中から、計測時系列データに最も近い既知時系列データを選択する選択処理と、
選択された既知時系列データの第１変換関数による変換前の既知軌道を出力する出力処理を実行する、
ことを特徴とする動作補助装置。
【請求項２】
コントローラは、計測時系列データと選択処理にて選択された既知時系列データとの差分が予め定められたデータ差分閾値よりも大きい場合、追従制御をキャンセルすることを特徴とする請求項１に記載の動作補助装置。
【請求項３】
コントローラは、センサが計測した特定関節の計測角度と、選択された既知軌道に含まれる特定関節の角度との差分が予め定められた角度差分閾値よりも大きい場合、追従制御をキャンセルすることを特徴とする請求項１又は２に記載の動作補助装置。
【請求項４】
前記第１変換関数は、ｎ個の人の関節の角度とともに、関節を動かすときに生じる筋電位を説明変数とし、
記憶ユニットは、前記第１変換関数に、夫々の既知軌道とともに、その既知軌道によって表される動作パターンを人が実現するときに発生する筋電位を入力して得られる目的変数ベクトルの既知時系列データ群を記憶していることを特徴とする請求項１から３のいずれか１項に記載の動作補助装置。
【請求項５】
前記第１及び第２変換関数は、主成分分析法、固有空間ＢＰＬＰ法、ニューラルネットのいずれかに基づいて作成された関数であることを特徴とする請求項１から４のいずれか１項に記載の動作補助装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、人が動作する際の関節角度の経時的変化のパターンを推定し、その結果に基づいて人の関節にトルクを加えて人の動作を補助する動作補助装置に関する。
【背景技術】
【０００２】
人の関節にトルクを加えて人の動作を補助する動作補助装置が研究されている。例えば、特許文献１には、人の股関節や膝関節にトルクを与えて歩行動作を補助する装置が開示されている。
【０００３】
歩行動作は必ずしも一定ではない。異なる歩行動作に対しては人の関節に加えるべき適切なトルクも異なる。特許文献１の装置は、平地を歩行する場合と、段差を乗り越える場合を判定し、夫々の場合に応じて異なるトルクを加える。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−１１６８９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
歩行動作に限らず、人の動作を補助する装置には、その動作に応じて適切なトルクを関節に加えることが求められる。そのためには、人が行っている動作を適切に推定できれば好ましい。本発明は、人が行っている動作のパターンを適切に推定し、その結果を使って、人が行っている動作を適切に補助する動作補助装置を提供する。
【課題を解決するための手段】
【０００６】
人の動作パターンは、関節の角度の軌道データで定まる。別言すれば、人の動作パターンは、人が動作する際の関節角度の経時的変化のパターン（関節角度の軌道データ）で表される。従って、人の動作パターンを推定する方法として次の手順が考えられる。まず、人の予め定められた動作に伴って実現されるｎ個の関節の角度の軌道データ（既知軌道）を相互に異なる複数の動作の夫々について記憶しておく。次に、人が動作を行っているときの関節角度をリアルタイムに計測する。計測された関節角度の軌道データ（計測軌道）に最も近い既知軌道を記憶されている既知軌道群から選択する。選択された既知軌道が表す動作パターンが、人が行っている動作パターンの推定値に相当する。
【０００７】
しかしながら上記の方法では必ずしも正確に動作パターンを推定できない。動作補助装置は、自力では目的の動作パターンを完全には実現できない人が対象である。補助を要する関節は、補助なしでは目的とする関節角軌道に沿って動かない。即ち、センサによって計測した関節角群の軌道データ（計測軌道）は、その計測軌道に本来一致すべき既知軌道に必ずしも一致するとは限らない。
【０００８】
そこで本明細書が開示する新規な技術は、補助対象の関節を除く他の関節の角度の計測軌道を使って、記憶している既知軌道群の中から最も確からしい既知軌道を選択する。なお、記憶する既知軌道群は、補助対象の関節の角度軌道データを含む。
【０００９】
本明細書が開示する新規な動作推定装置は、記憶モジュール、センサ、及び、推定モジュールを備えている。記憶モジュールは、人の予め定められた動作に伴って実現されるｎ個の人の関節の角度の既知軌道を複数の相互に異なる動作群の夫々について記憶している。センサは、人の関節の角度を計測する。センサは、好ましくはｎ個の関節の角度を夫々計測する。推定モジュールは、ｎ個の人の関節のうちのｎより少ないｍ個の関節についてセンサによって計測されたｍ個の関節角度の計測軌道に最も近い既知軌道を記憶された既知軌道群の中から選択し、選択された既知軌道を出力する。既知軌道は、人の予め定められた動作に伴って実現されるｎ個の人の関節の角度の経時的変化を表すデータである。また、計測軌道は、ｍ個の関節についてセンサによって計測されたｍ個の関節角度の経時的変化を表すデータである。
【００１０】
なお、「関節の角度の既知軌道」とは、予め定められた動作を行うときに実現されるｎ個の各関節の時系列データの集合を意味する。既知軌道は、実験などによって予め定められ、記憶モジュールに記憶される。「計測軌道」とは、人が現実に動作を行った際にセンサによって計測される各関節の時系列計測値を意味する。
【００１１】
既知軌道が時間スパンＴＳに亘る関節角の時系列データを含んでいる場合、計測軌道は時間スパンＴＳより短い時間スパンＴAの時系列データでよい。時間スパンＴＳに亘る既知軌道のうち、時間スパンＴＳの前方の時間スパンＴＡのデータを使って、計測軌道と既知軌道のパターンを比較する。比較した結果、計測軌道に最も近い既知軌道が選択される。選択された既知軌道の後方の時間スパン（ＴＢ＝ＴＳ−ＴＡ）の時系列データが、これから人が行う動作の推定軌道に相当する。
【００１２】
本明細書は、上記した動作推定装置を含む新規な動作補助装置を開示する。この動作補助装置は、上記した動作推定装置に加えて装具とコントローラを含む。装具は、人の特定関節にトルクを加えるアクチュエータを有する。コントローラは、センサによって計測された人の特定関節の計測角度が、動作推定装置が出力した既知軌道データに含まれている前記特定関節の角度の軌道に追従するようにアクチュエータを追従制御する。なお、「特定関節」は、既知軌道に含まれるｎ個の関節の一つであるとともに、上記した補助対象の関節に相当する。
【００１３】
上記の動作補助装置は、より詳細には次の構成を有していることが好ましい。記憶モジュールは、さらに、ｎ個の関節の角度を説明変数として入力するとｎより小さいｓ次元の目的変数ベクトルを出力する第１変換関数に夫々の既知軌道の各タイミングにおける値を入力して得られる目的変数ベクトルの既知時系列データ群を記憶している。推定モジュールは、以下に述べる目的変数ベクトル算出処理と、選択処理と、出力処理を実行する。目的変数ベクトル算出処理では、推定モジュールは、ｎ個の人の関節のうち特定関節を含まずｎより少ないｍ個の関節の計測角度を第２変換関数に入力してｓ次元の目的変数ベクトルの計測時系列データを求める。ここで、第２変換関数とは、上記したｍ個の関節の計測角度を説明変数として入力するとｓ次元の目的変数ベクトルを出力する関数である。第２変換関数は第１変換関数よりも説明変数の次数が小さいことに留意されたい（ｎ＞ｍ）。選択処理では、推定モジュールは、記憶されている既知時系列データ群の中から、計測時系列データに最も近い既知時系列データを選択する。出力処理では、推定モジュールは、選択された既知時系列データの第１変換関数による変換前の既知軌道データを出力する。第１及び第２変換関数については後に例示する。また、計測時系列データに最も近い既知時系列データを選択する方法としては、例えば、計測時系列データとの平均自乗誤差が最小となる既知時系列データを選択すればよい。
【００１４】
上記の動作補助装置は、記憶した既知軌道群の夫々と計測した関節角の軌道（計測軌道）を、第１及び第２変換関数で低次元化した目的変数ベクトルで比較することに特徴がある。第１及び第２変換関数は、主成分分析法、固有空間ＢＰＬＰ（Back Projection for Lost Pixel）法、或いは、ニューラルネットワークを用いればよい。これらの関数はいずれも、多数の説明変数で表される事象を、全ての説明変数の影響を含みながら低次元の目的変数へ縮約する関数を提供する。そのような関数が、上記した第１及び第２変換関数に相当する。そのような関数は、多変量解析でよく用いられるのでここでは詳細な説明を省略する。
【００１５】
上記の動作補助装置の機能を説明する。記憶されたｓ次元の既知時系列データは、人の動作パターンを表す関節角の軌道（既知軌道）の数ｎよりも低次元でありながら、ｎ個の関節の動きを反映している。従って、動作パターンの相違に応じて夫々の既知時系列データが描く軌跡が異なる。ここで、「既知時系列データが描く軌跡」とは、ｓ次元空間においてｓ次元既知時系列データが時間の経過とともに描く軌跡である。
【００１６】
他方、検出した関節角度から得られる計測時系列データは、特定関節の角度を含んではいないので、特定関節が予定された動作パターンとは異なる軌道を描いても、その影響は計測時系列データには反映されない。それでも計測時系列データは、既知時系列データを得るときに用いた第１変換関数よりも低次元の第２変換関数を用いたｓ次元の目的変数ベクトルの時系列データであるから、特定関節の動きを除いて動作パターンをよく表している。こうして得られた計測時系列データに最も近い既知時系列データを選択することによって、特定関節の実際の動きの影響を受けずに、人が行っている動作パターンに最も近いと推定される既知軌道（即ち動作パターン）を特定することができる。こうして特定された既知軌道に含まれる特定関節の角度時系列データに、特定関節の計測角が追従するように特定関節にトルクを加えることによって、動作パターンに応じた適切な補助が実現される。
【００１７】
本発明による動作補助装置が動作パターンを推定する手法の技術的思想は、要約すると次の通りである。動作補助装置は、相互に異なる複数の動作パターンを表すｎ個の関節の軌道（既知軌道）を予め記憶しておく。記憶された既知軌道は、補助対象の関節（特定関節）の角度の軌道（時系列データ）も含んでいる。それぞれの既知軌道は動作パターンの相違をよく表している。他方、動作補助装置は、特定関節（補助対象の関節）を除く人の関節角度を計測する。計測された関節角の時系列データを計測軌道と称する。記憶された既知軌道は特定関節の情報を含んでいるが、計測軌道は特定関節の情報を含んでいない。それらを共にｓ次元の特徴変数ベクトルの時系列データ（即ち、既知時系列データ群と計測時系列データ）に変換した後に比較する。そのような処理によって、特定関節の実際の動きの影響を排除しつつ、人が行っている動作に最も近い動作パターン（既知軌道）を選択することができる。
【００１８】
選択される既知軌道は推定であるため、誤っている可能性もある。そこで、何らかの安全装置を備えることが好ましい。例えば、コントローラは、計測時系列データと選択処理にて選択された既知時系列データとの差分が予め定められたデータ差分閾値よりも大きい場合、追従制御をキャンセルすることも好適である。そのような構成は、用意された既知軌道群のいずれとも異なる動作パターンを人が行っている場合に、不適切な既知軌道が選択され、それに基づいてアクチュエータが動作することを防止する。
【００１９】
また、動作補助装置のコントローラは、センサが計測した特定関節の計測角度と、選択された既知軌道に含まれる特定関節の角度との差分が予め定められた角度差分閾値よりも大きい場合、追従制御をキャンセルすることも好ましい。そのような構成は、特定関節の実際の角度（計測角度）と既知軌道に含まれる特定関節の目標値が大きく異なる場合に特定関節が大きく動かされてしまうことを防止する。
【００２０】
目的変数ベクトルの時系列データを生成する際、動作パターンを表す情報が多い方が、目的変数ベクトルに動作パターンの特徴がよく反映できる。動作パターンを表す情報としては、関節角の他に、関節を動かすときに生じる筋電位がある。そこで、動作補助装置は、筋電位の情報を用いることも好適である。具体的には、上記した第１変換関数を、ｎ個の人の関節の角度とともに、関節を動かすときに生じる筋電位を説明変数とする関数に置き換える。そして、記憶ユニットは、その新たな第１変換関数に、夫々の既知軌道とともに、その既知軌道によって表される動作パターンを人が実現するときに発生する筋電位を入力して得られる目的変数ベクトルの既知時系列データ群を記憶する。そのように構成することによって、動作パターンの相違を一層よく表した既知時系列データを得ることができる。
【発明の効果】
【００２１】
本明細書が開示する新規な技術によれば、人が行っている動作パターンを適切に推定し、推定した動作パターンに応じて人の動作を補助する動作補助装置を提供することができる。
【図面の簡単な説明】
【００２２】
【図１】第１実施例の動作補助装置の模式図を示す。
【図２】動作補助装置のコントローラのブロック図を示す。
【図３】関節角の軌道の模式的グラフを示す。
【図４】コントローラが実行する処理のフローチャート図を示す。
【図５】第２実施例の動作補助装置の模式図を示す。
【実施例１】
【００２３】
図面を参照して第１実施例の動作補助装置１００を説明する。本実施例の動作補助装置１００は、ユーザの左膝関節に適切なトルクを加えてユーザの歩行動作を補助する装置である。以下では、動作補助装置１００が補助の対象とする左膝関節を特定関節と称することがある。なお、後述するように、この動作補助装置１００は、人が動作する際の関節角の軌道を推定する動作推定装置５０を含んでいる。本実施例では、ユーザは左膝関節を自由に動かすことができないとする。図１に、ユーザが装着した状態の動作補助装置１００の模式図を示す。図１（Ａ）は正面図を示し、図１（Ｂ）は側面図を示す。
【００２４】
動作補助装置１００は、ユーザの左脚に沿って装着される脚装具１２と、コントローラ４０を備えている。脚装具１２は、支持リンク３０によってユーザの腰に固定されている。
【００２５】
脚装具１２を詳しく説明する。脚装具１２は、ユーザの大腿部から下腿部に沿って左脚の外側に装着される。脚装具１２は、上部リンク１４Ｌ、下部リンク１６Ｌ、及び足底リンク１８Ｌを有する多リンク機構を有する。上部リンク１４Ｌの上端が腰ジョイント２０ａＬを介して支持リンク３０に揺動可能に連結されている。下部リンク１６Ｌは、膝の外側に位置する膝ジョイント２０ｂＬによって、上部リンク１４Ｌに揺動可能に連結されている。足底リンク１８Ｌは、ユーザの足首の外側に位置する足首ジョイント２０ｃＬによって、下部リンク１６Ｌに揺動可能に連結されている。上部リンク１４Ｌは、ベルトでユーザの大腿部に固定される。下部リンク１６Ｌは、ベルトでユーザの下腿部に固定される。足底リンク１８Ｌは、ベルトでユーザの足底に固定される。足底リンク１８Ｌを固定するベルトは、図示を省略している。支持リンク３０は、ユーザの体幹（腰）に固定される。
【００２６】
ユーザが脚装具１２を装着すると、腰ジョイント２０ａＬ、膝ジョイント２０ｂＬ、及び、足首ジョイント２０ｃＬは夫々、ユーザの股関節のピッチ軸、膝関節のピッチ軸、及び、足首関節のピッチ軸と同軸に位置する。脚装具１２Ｌの各リンクは、ユーザの左脚の動きに応じて揺動することができる。各ジョイントには、ジョイントの角度（リンク間の角度）を計測するためのエンコーダ２１が取り付けられている。腰ジョイント２０ａＬのエンコーダ２１は、ユーザの左脚股関節の角度を計測する。膝ジョイント２０ｂＬのエンコーダ２１は、ユーザの左膝関節の角度を計測する。足首ジョイント２０ｃＬのエンコーダ２１は、ユーザの左足首関節の角度を計測する。以下では、各ジョイントに取り付けられているエンコーダ群２１を脚センサ２１と総称する。脚装具１２が有する脚センサ２１は、ユーザの関節の角度を計測するセンサに相当する。
【００２７】
膝ジョイント２０ｂＬには、モータ３２（アクチュエータ）が取り付けられている。モータ３２は、ユーザの膝関節の外側に位置する。モータ３２は、上部リンク１４Ｌに対して下部リンク１６Ｌを回転させることができる。即ちモータ３２は、ユーザの左膝関節にトルクを加えることができる。また、図示を省略しているが、モータ３２はクラッチを備えている。クラッチを解放すると、モータ３２から左膝関節へのトルク伝達経路が遮断され、膝ジョイント２０ｂＬよる左膝関節回転の拘束が解かれる。
【００２８】
符号４０は、モータ３２を制御するコントローラを示している。図２にコントローラ４０のブロック図を示す。コントローラ４０の構造を概説する。コントローラ４０は、記憶モジュール５２を内蔵しており、種々のデータを記憶している。コントローラ４０は、推定モジュール５４とサーボコントローラ５６を備えている。コントローラ４０はハードウエアとしてＣＰＵを備えており、推定モジュール５４とサーボコントローラ５６の機能はソフトウエアとＣＰＵで実現される。
【００２９】
記憶モジュール５２には、相互に異なる複数の既知軌道が記憶されている。既知軌道は、人の予め定められた動作に伴って実現されるｎ個の人の関節の角度の時系列データの集合である。既知軌道については後に例を挙げて説明する。推定モジュール５４は、エンコーダ２１（脚センサ）によって計測された関節角度の計測軌道を、記憶モジュール５２に記憶された既知軌道群の夫々と比較し、計測軌道に最も近い既知軌道を選択する。なお、選択の具体的な方法については後述する。選択された既知軌道はサーボコントローラ５６へ出力される。サーボコントローラ５６は、ユーザの左膝関節の計測角度が、既知軌道に含まれている膝関節の軌道に追従するように、モータ３２を制御する。推定モジュール５４によって、ユーザが行っている動作が推定され、推定された動作を実現するための既知軌道が選択される。サーボコントローラ５６によって、ユーザの膝関節の計測角度が、推定された動作に追従するように、モータ３２が制御される。こうして、動作補助装置１００は、ユーザが行っている動作を推定し、推定された動作を補助するように膝関節にトルクを加える。なお、記憶モジュール５２と推定モジュール５４、及び、エンコーダ２１（脚センサ）から構成される装置が、動作推定装置５０に相当する。
【００３０】
記憶モジュール５２に記憶されている既知軌道について説明する。既知軌道は、人の予め定められた歩行動作に伴って実現される３個の人の関節（股関節、膝関節、及び足首関節）の角度の時系列データである。図３に、一つの既知軌道の例を示す。本実施例の既知軌道は、歩行の一周期の時間スパンＴＳに亘る左脚の股関節、膝関節、及び足首関節の時系列データで構成されている。図３中の符号θｈｒは、既知軌道に含まれる股関節の時系列データを示す。符号θｋｒは、既知軌道に含まれる膝関節の時系列データを示す。符号θａｒは、既知軌道に含まれる足首関節の時系列データを示す。記憶モジュール５２は、相互に異なる複数の動作群の夫々についての既知軌道を記憶している。例えば、一つの既知軌道は、図３の既知軌道よりも歩幅の大きな歩行動作に伴って実現される関節角の時系列データを表し、他の一つの既知軌道は、図３の既知軌道よりも速度が速い歩行動作に伴って実現される関節角の時系列データを表す。既知軌道は、予め用意されている。
【００３１】
記憶モジュール５２は、各既知軌道のデータを第１変換関数にて変換した目的変数ベクトルの時系列データ（既知時系列データ）を既知軌道に対応付けて記憶している。第１変換関数について説明する。本実施例で用いる第１変換関数は、ｎ個の関節の角度を説明変数として入力するとｎより小さいｓ次元の目的変数ベクトルを出力する関数である。本実施例では、ｎ＝３であり、ｓ＝２である。既知軌道のデータは、左脚の股関節、膝関節、及び足首関節の３個の関節の角度の時系列データ（θｈｒ（ｔ）、θｋｒ（ｔ）、及びθａｒ（ｔ））で構成されている。第１変換関数は、それら３個の時系列データの各タイミングにおける値を説明変数として入力すると、２次元の目的変数ベクトルの既知時系列データ（Ａｒ（ｔ）、Ｂｒ（ｔ））を出力する関数である。本実施例で用いる第１変換関数を（数１）に示す。
【００３２】
【数１】
0005479875.tif 000002
【００３３】
（数１）は、３個の関節の角度の時系列データ（θｈｒ（ｔ）、θｋｒ（ｔ）、及びθａｒ（ｔ））から、主成分分析法によって２次元の主成分の時系列データ（Ａｒ（ｔ）、Ｂｒ（ｔ））を得る式である。即ち、（数１）の目的変数ベクトルの既知時系列データＡｒ（ｔ）、Ｂｒ（ｔ）が主成分に相当する。（数１）において、ａ１、ａ２、ａ３、ｂ１、ｂ２、及び、ｂ３は、主成分に対する各関節の重み係数である。即ち、この第１変換関数によって得られる２次元の目的変数ベクトルの既知時系列データ（Ａｒ（ｔ）、Ｂｒ（ｔ））は、２次元でありながら、３個の説明変数、即ち、既知軌道の時系列データ（θｈｒ（ｔ）、θｋｒ（ｔ）、及びθａｒ（ｔ））の特徴をよく反映している。記憶モジュール５２は、既知軌道毎に上記（数１）で得られる目的変数ベクトルの既知時系列データを記憶している。
【００３４】
図４にコントローラ４０が実行する処理のフローチャートを示す。コントローラ４０は、エンコーダ２１が計測した関節角（計測角度）を取得する（Ｓ２）。ここで、コントローラ４０は、一歩行周期ＴＳの前半の時間スパンＴＡに亘って関節角を取得する。股関節の計測角度を符号θｈｓ（ｔ）で表し、足首関節の計測角度を符号θａｓ（ｔ）で表す。股関節と足首関節の計測角θｈｓ（ｔ）、θａｓ（ｔ）の時系列データが前述した計測軌道に相当する。コントローラ４０は、説明変数の次数がｎより小さいｍ次元の第２変換関数に、計測角度θｈｓ（ｔ）とθａｓ（ｔ）を入力して２次元の目的変数ベクトルの時系列データを求める（Ｓ４）。第２変換関数を（数２）に示す。第２変換関数は、３次元の既知軌道の時系列データから、制御対象である膝関節角度θｋｒ（ｔ）の時系列データを除外した残りの既知軌道の時系列データを説明変数とする。（数２）は、制御対象である膝関節角度θｋｒ（ｔ）の既知軌道を除く残りの既知軌道の時系列データ（θｈｒ（ｔ）及びθａｒ（ｔ））から、主成分分析法によって２個の主成分の時系列データ（Ａｓ（ｔ）、Ｂｓ（ｔ））を得る式である。（数２）によって得られる主成分の時系列データ（Ａｓ（ｔ）、Ｂｓ（ｔ））が、計測時系列データに相当する。即ち、コントローラ４０は、第２変換関数を用いて計測軌道から計測時系列データを算出する。
【００３５】
【数２】
0005479875.tif 000003
【００３６】
（数２）の係数ｃ１、ｃ２、ｄ１、及びｄ２は、主成分に対する各関節（膝関節を除く）の重み係数である。（数２）の右辺には、膝関節の計測角θｋｓ（ｔ）に関する項がない。しかしながら、第２変換関数（数２）も第１変換関数（数１）と同様の主成分分析の結果得られる関数であるので、歩行動作時の股関節と足首関節の計測角θｈｓ（ｔ）とθａｓ（ｔ）の軌道をよく反映している。
【００３７】
次にコントローラ４０は、一歩行周期ＴＳの前半の時間スパンＴＡの期間に亘って、既知時系列データと計測時系列データの差分Ｄを算出する（Ｓ６）。差分Ｄの算出式を（数３）に示す。
【００３８】
【数３】
0005479875.tif 000004
【００３９】
（数３）で表される差分Ｄは、既知時系列データと計測時系列データの平均自乗誤差に相当する。
【００４０】
ステップＳ６では、コントローラ４０は、記憶モジュール５２に記憶された各既知関数の既知時系列データについて差分Ｄを算出する。次いでコントローラ４０は、複数の差分Ｄの中から最小の差分Ｄを特定する。コントローラ４０は、最小差分Ｄの大きさを予め定められた閾値と比較する（Ｓ８）。閾値は実験などによって予め定められている。最小差分Ｄが閾値よりも小さい場合（ステップＳ８：ＹＥＳ）、コントローラ４０は、最小差分Ｄに対応する既知軌道を選択する（Ｓ１０）。ステップＳ２〜Ｓ１０の処理は、推定モジュール５４が実行する。推定モジュール５４は、選択した既知軌道を、サーボコントローラ５６へ出力する。
【００４１】
推定モジュール５４は、図３のグラフにおける時刻ｔＡで既知軌道を出力する。時刻ｔＡで推定モジュールが出力した既知軌道は、一歩行周期の時間スパンＴＡの終端時刻ｔＢまでの時系列データを含んでいる。即ち、出力された既知軌道における時刻ｔＡからｔＢまでの時間スパンＴＢにおける各関節角の時系列データが、これからユーザが実行しようとしている動作の推定値に相当する。
【００４２】
サーボコントローラ５６は、推定モジュール５４が出力した既知軌道に含まれている膝関節（特定関節）の角度の軌道（時系列データ）θｋｒ（ｔ）に、膝関節の計測角θｋｓ（ｔ）が追従するようにモータ３２を追従制御する（Ｓ１２）。より詳しくは、サーボコントローラ５６は、膝関節の計測角θｋｓ（ｔ）が、出力された既知軌道における時刻ｔＡからｔＢまでの時間スパンＴＢにおける膝関節角の時系列データθｋｒ（ｔ）に追従するように、モータ３２を追従制御する。サーボコントローラ５６が出力するモータ指令トルクＴ（ｔ）の算出式を（数４）に示す。
【００４３】
【数４】
0005479875.tif 000005
【００４４】
（数４）において、係数Ｐは比例ゲインを表している。モータ指令トルクＴ（ｔ）によってモータ３２が駆動されると、膝関節の計測角θｋｓ（ｔ）が目標値θｋｒ（ｔ）に追従するようにユーザの膝関節にトルクが加えられる。なお、（数４）は極めてシンプルな制御則を表している。（数４）に代えて、ＰＤ制御、ＰＩＤ制御、或いは、他のいかなるフィードバック追従制御則を採用してもよい。
【００４５】
他方、ステップＳ８において最小差分Ｄが閾値よりも大きい場合（ステップＳ８：ＮＯ）、サーボコントローラ５６は追従制御をキャンセルする（Ｓ１４）。このとき、コントローラ４０は、モータ３２のクラッチを解放する。クラッチを解放することによって、モータ３２（膝ジョイント２０ｂＬ）によるユーザの膝関節回転の拘束が解かれる。
【００４６】
推定モジュール５４は、時間スパンＴＢにおいて、上記説明した処理と同様の処理によって、次の歩行周期の前半の時間スパンＴＡにおける膝関節角の軌道を推定する。次の歩行周期の時間スパンＴＡにおいて、サーボコントローラ５６は、実際の膝関節の角度が推定された軌道に追従するようにモータを制御する。このように動作補助装置１００は、歩行周期の半周期毎に、次の半周期の歩行動作における膝関節角の望ましい軌道を推定し、ユーザの膝関節がこれに追従するように脚装具１２のモータを制御する。
【００４７】
動作補助装置１００の利点を説明する。動作補助装置１００は、一歩行周期ＴＳの前半の時間スパンＴＡにおける計測軌道を記憶している既知軌道群の夫々と比較し、現在のユーザの動作に最も近い既知軌道を選択する。比較においては、制御対象の膝関節の計測角θｋｓ（ｔ）を用いない。ユーザは、補助対象である膝関節をうまく動かすことができない。即ち、膝関節の計測角θｋｓ（ｔ）は、既知軌道に記述されている膝関節の望ましい軌道に適切に追従していない可能性がある。そのため、膝関節の計測角を比較に用いるのは好ましくない。実施例の動作補助装置は、膝関節の計測角を用いずに、他の関節（股関節と足首関節）の計測角を用いて既知軌道群の中から最も好ましい既知軌道を選択する。そのため、動作補助装置１００は、適切な既知軌道を選択することができる。
【００４８】
動作補助装置１００は、ｎ個（３個）の関節角の経時的変化を記述した既知軌道を選択する際、ｎより低いｓ次元（２次元）の目的変数ベクトルの時系列データ（既知時系列データと計測時系列データ）を用いて既知軌道と計測軌道を比較する。既知時系列データと計測時系列データは、既知軌道に含まれている関節の数ｎよりも少ない次元ではあるが、ｎ個の関節の経時的な変化の特徴をよく表している。動作補助装置１００は、ｎ個の関節角の経時的変化で表された既知軌道を低次元化して計測軌道と比較する。そのような処理によって、各関節角の経時的変化の局所的な振舞いの寄与を抑制し、既知軌道の大局的な特徴に基づいて計測軌道と比較することができる。そのような処理によって動作補助装置１００は、計測軌道に大局的な振舞いが似ている既知軌道を選択することができる。動作補助装置１００は、計測軌道に基づいて、相互に異なる複数の既知軌道群の中から適切な既知軌道を選択することができる。
【００４９】
計測時系列データの時間スパンは、既知時系列データの時間スパンよりも短くてよい。即ち、選択処理（ステップＳ１０）において推定モジュール５４は、記憶されている既知時系列データ群のなかから、その一部に計測時系列データに最も近い時系列データを有する既知時系列データを選択する。既知時系列データと計測時系列データは共に、ｓ次元空間で一つの軌跡を描く。従って、別言すれば、選択処理において推定モジュール５４は、ｓ次元空間における計測時系列データの軌跡に最も近い部分軌跡を有する既知時系列データを記憶されている既知時系列データ群の中から選択する。なお、選択が完了すると、計測時系列データが選択された既知時系列データの時間軸上のどの部分に相当するかも特定される。即ち、計測時系列データに対応する計測軌道に含まれる各関節の各タイミングにおける計測角が、記憶されている既知軌道に含まれる各関節の軌道の時間軸上のどの位置に相当するかが特定される。
【００５０】
サーボコントローラ５６は、人の膝関節（特定関節）の計測角度が、選択された既知時系列データに対応する既知軌道に含まれる特定関節の角度の経時的変化に追従するようにモータ３２を制御する。前述したように、計測角度のタイミングと記憶されている角度時系列データ上のタイミングの位置関係が特定されているので、各制御タイミングにおける特定関節の目標値も特定される。
【００５１】
第１実施例の動作補助装置１００が実行する処理の代替方式を説明する。図４のステップ８において、コントローラ４０は、センサ２１が計測した膝関節の計測角θｋｓ（ｔ）と、選択された既知軌道に含まれている膝関節の角度θｋｒ（ｔ）の差分Ｄ＝（θｋｒ（ｔ）−θｋｓ（ｔ））が予め定められた特定の閾値よりも大きい場合に、追従制御をキャンセルすることも好ましい。このときの差分Ｄが閾値よりも大きい場合、膝関節の計測角度θｋｓ（ｔ）が、目標関節角θｋｒ（ｔ）から大きく隔たっていることを示している。そのような場合は、無理に追従制御を実行させないことが好ましい。
【実施例２】
【００５２】
図５に、第２実施例の動作補助装置２００を示す。第２実施例の動作補助装置２００は、左脚に装着する左脚装具１２Ｌと、右脚に装着する右脚装具１２Ｒを備える。左脚装具１２Ｌは、第１実施例の脚装具１２と同じ構成を有している。右脚装具１２Ｒは、膝ジョイント２０ｂＲにモータを備えていないことを除いて、左脚装具１２Ｌと同じ構造を有している。即ち、右脚装具１２Ｒは、ユーザの右脚の股関節と膝関節と足首関節の角度を計測するエンコーダ２１（脚センサ）を備えている。また、動作補助装置２００は、ユーザの大腿部の筋電位を計測する筋電センサ２０２を備えている。
【００５３】
この動作補助装置２００は、右脚の股関節、膝関節、足首関節、左脚の股関節、膝関節、足首関節の６個の関節の角度、及び、筋電位の合計７個の説明変数を入力すると７より小さいｓ次元の目的変数ベクトルを出力する第１変換関数によって得られる既知時系列データを記憶している。第１変換関数の例は、（数１）で示した第１変換関数に、右脚の股関節、膝関節、足首関節、及び、筋電位に関する項が付加された関数である。この動作補助装置２００は、右脚の股関節、膝関節、足首関節、左脚の股関節、足首関節の５個の関節の角度、及び、筋電位を計測し、計測された時系列データから計測時系列データを算出する。計測時系列データを算出する際の第２変換関数は、説明変数の次数が、既知時系列データを算出する際に採用した第１変換関数における説明変数の次数よりも小さい変換関数である。第２変換関数は、前記した第１変換関数と比較すると、左脚の膝関節（すなわち制御対象の関節）に関する項を有していない。この動作補助装置２００は、第１実施例の動作補助装置１００と同様の処理によって、計測時系列データに最も近い既知時系列データに対応する既知軌道を選択する。動作補助装置２００は、選択された既知軌道に含まれている左膝関節の角度の軌道に左膝関節の計測角が追従するように、モータ３２にトルクを加える。
【００５４】
この動作補助装置２００は、左脚の関節角だけでなく、右脚の関節角及び、筋電位を用いることによって、より正確にユーザの動作に合致した既知軌道を推定することができる。
【００５５】
本明細書が開示した新規な動作補助装置の留意点を述べる。実施例の動作補助装置は、ユーザの歩行動作を補助する装置である。本明細書が開示する新規な技術は、歩行動作を補助する装置だけでなく、腕の動作を補助する動作補助装置に適用することも可能である。
【００５６】
実施例の動作補助装置は、ｎ個の関節の角度の時系列データで表される既知軌道（ｎ次元既知軌道）からｎより小さいｓ次元の目的変数ベクトルを求める第１変換関数、及び第２変換関数を得るのに主成分分析を利用した。変換関数（第１及び第２変換関数）は、主成分分析のほかに、固有空間ＢＰＬＰ法或いはニューラルネットを利用して得られた変換関数であってもよい。ｎ次元の時系列データをｎよりも小さいｓ次元の時系列データに縮約（低次元化）する手法は、多変量解析の分野でよく知られているので本明細書では説明を省略する。
【００５７】
以上、本発明の具体例を詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成し得るものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【００５８】
１２、１２Ｌ、１２Ｒ：脚装具
２１：エンコーダ（脚センサ）
３２：モータ（アクチュエータ）
４０：コントローラ
５０：動作推定装置
５２：記憶モジュール
５４：推定モジュール
５６：サーボコントローラ
１００、２００：動作補助装置
２０２：筋電センサ
【図１】
0005479875.tif 000006
【図２】
0005479875.tif 000007
【図３】
0005479875.tif 000008
【図４】
0005479875.tif 000009
【図５】
0005479875.tif 000010