【新規性喪失の例外の表示】特許法第30条第2項適用 1)平成24年9月17日に、一般社団法人日本ロボット学会発行の「日本ロボット学会第30回記念学術講演会(論文集DVD)」に発表 2)平成24年11月29日に、IEEE(The Institute of Electrical and Electronics Engineers,Inc.)主催の2012 12th IEEE−RAS International Conference on Humanoid Robots で発表
【国等の委託研究の成果に係る記載事項】(出願人による申告)文部科学省、平成24年度科学技術試験研究委託事業「日本の特長を活かしたBMIの統合的研究開発」に係る委託研究、産業技術力強化法第19条の適用を受ける特許出願
(58)【調査した分野】(Int.Cl.,DB名)
前記目標トルク算出手段は、前記アシストトルクを、前記目標トルクに、前記目標トルクから前記アシスト力へ変換するヤコビアンと、ユーザの関節角変化に対する前記ユーザと前記パワーアシストロボットとのインタラクション部分の位置変化を表すヤコビアンの転置とを乗じた値として算出する、請求項2記載のパワーアシストロボット。
各前記エアマッスルにおいて、前記エアマッスルと前記ワイヤとの接合部に設けられ、前記エアマッスルからの前記第1の駆動力の大きさを検出するための第2のセンサをさらに備え、
前記制御部は、
前記第2のセンサの検出結果に応じて、前記エアマッスルの前記第1の駆動力および前記電動モータからの前記第2の駆動力とを制御する、請求項4または5に載のパワーアシストロボット。
【発明を実施するための形態】
【0030】
以下、本発明の実施の形態の外骨格型ロボットの構成について、図に従って説明する。なお、以下の実施の形態において、同じ符号を付した構成要素および処理工程は、同一または相当するものであり、必要でない場合は、その説明は繰り返さない。
【0031】
また、外骨格型ロボットの関節を駆動するためのアクチュエータとしては、一例として、以下に説明する「空電ハイブリッド式のアクチュエータ」を例として説明する。
【0032】
そこで、以下、本実施の形態において、歩行・姿勢リハビリテーションのための空電ハイブリッド式のアクチュエータによる外骨格型ロボットについて説明する。
【0033】
ただし、本発明の空電ハイブリッド式外骨格型ロボットは、下肢の運動をアシストするための外骨格型ロボットに対してだけでなく、上肢の運動をアシストする外骨格型ロボットとしても使用することが可能である。
【0034】
また、以下の説明では、下肢の対としての運動をアシストする外骨格型ロボットについて説明するが、下肢のうちのいずれか一方、または、上肢のうちのいずれか一方の運動をアシストする外骨格型ロボットとして使用することも可能である。
【0035】
さらに、本発明の空電ハイブリッド式外骨格型ロボットは、対象となる人間の筋骨格系の運動をアシストするのであれば、上述したような「下肢のうちの少なくともいずれか一方、または、上肢のうちの少なくともいずれか一方の運動」に限定されるものではなく、たとえば、対象となる人間の腰の運動のみをアシストするものであってもよいし、歩行または走行時において下肢の運動と連動して腰の運動をアシストするものであってもよい。本明細書では、このような対象となる人間の運動のアシストを総称して、「対象となる人間の筋骨格系運動の支援」と呼ぶことにする。
【0036】
本実施の形態の外骨格型ロボットは、外骨格を有する。「外骨格」とは、人間の骨格構造に対応してロボットが有する骨格構造のことである。より特定的には、「外骨格」とは、外骨格型ロボットを装着する人間の体の一部を、外部から支えるフレーム(枠組み)構造のことをいう。
【0037】
このフレーム構造には、さらに、フレーム構造の各部を人間の骨格構造に基づく運動に応じて動かすための関節が設けられる。
【0038】
特に、下肢の運動をアシストする外骨格型ロボットは、ベースと下半身とを有し、足首、膝、腰の左右の位置に、能動6自由度の関節を有するロボットである。また、当該6つの関節は、空電ハイブリッド駆動の関節である。以下、このように、外骨格型ロボットにおいて、ユーザの関節に対してサポート力を与えるためにアクチュエータにより駆動される関節のことを「能動関節」と呼ぶ。
【0039】
図1は、本実施の形態における外骨格型ロボット1の構成事例を示す図である。本外骨格型ロボット1は、10自由度である。
【0040】
図1において、
図1(a)は、外骨格型ロボットの外観を示す図であり、
図1(b)は、
図1(a)の外観において、外骨格型ロボット1の主要部を抽出して示す斜視図である。
【0041】
図1(b)において、外骨格型ロボット1は、両脚に対応したフレーム構造、バックパック101、柔軟シート102、HAA拮抗筋103、HFE伸筋104、HFEモータ111、KFE伸筋105、 KFEモータ106、AFE伸筋・AAA拮抗筋107、AFE屈筋108、ユニバーサルジョイント109、フレーム構造に設けられたプーリー付回転関節110を備える。
【0042】
なお、
図1(b)では、バックパック101が運動を支援する構造に直接とりつけられているが、
図1(a)に示すように、バックパック101は、この構造から取り外されていてもよい。
【0043】
また、ユニバーサルジョイント109には、たとえば、光学式エンコーダを回転軸に取り付け、関節角度を計測する。プーリー付回転関節110も同様に光学式エンコーダを取り付ける。光学式エンコーダは、軸に取り付けるのではなく、軸に巻かれたベルトの移動方向と移動量を読み取る構成としてもよい。なお、ハイブリッド関節であるHFEおよびKFE関節においては、モータ付属のエンコーダを用いて関節角度を計測してもよい。
【0044】
また、
図2は、外骨格型ロボット1の自由度の構成を示す図である。
【0045】
図2において、各関節において、「R_」との表示は、右側の関節であることを示し、「L_」との表示は、左側の関節であることを示す。
【0046】
図1および
図2を参照して、全10自由度のうち、HFE関節とKFE関節はハイブリッド駆動としている。また、
図2において、全10自由度のうち、左右のAFE関節は伸筋と屈筋による拮抗駆動を採用している。ハイブリッド駆動および拮抗駆動以外の関節は、パッシブな駆動である。ただし、より多くの関節、たとえば、全ての関節をハイブリッド駆動としてもよい。
【0047】
図1において、両脚が接続する胴体部には姿勢センサを搭載してベース部の姿勢を検出している。また、全ての関節にワイヤ式エンコーダ(またはモータ付属のエンコーダ)を取り付け、関節角度を計測できるようにしている。関節角度ならびに後に説明するように下肢の筋電位を検出することで、各関節に発生させる目標トルクが算出できる。
【0048】
また、足底部には、床反力センサを搭載し、接触を想定する足底部が実際に接触しているかどうかを判定したり、ヤコビ行列に含まれるモデル誤差を修正するために補助的に使用する構成としてもよい。
【0049】
また、バックパック101内には制御器の他、エアマッスルのバルブおよび電動モータのドライバを内蔵している。
【0050】
また、バックパック101内に、バッテリーと圧搾した空気ボンベ(またはCO
2ガスボンベでもよい)、レギュレータを搭載し、電源ラインとエア供給が断絶した場合に備え、短時間の自律駆動を可能にする構成であってもよい。
【0051】
また、
図3は、外骨格型ロボット1のブロック図の例である。
【0052】
外骨格型ロボット1を制御するためのコマンドが、外部制御装置20から、通信経路を介して外骨格型ロボットに与えられる。特に限定されないが、外部制御装置20は、汎用のパーソナルコンピュータを用いることが可能であり、通信経路としては、イーサネット(登録商標)ケーブルを用いることができる。もちろん、通信経路としては、その他の規格の有線通信の経路の他、無線による通信経路、たとえば、無線LAN(Local Area Network)や他の通信規格の無線などを使用してもよい。
【0053】
外部制御装置20は、ユーザからの指示入力を受ける入力部208と、コマンドを生成するためのプログラムや、様々な制御パラメータなど制御のために必要とされるデータが記録された不揮発性の記憶装置206と、外部制御装置20を起動するためのファームウェアが記憶されたROM(Read Only Memory)や、ワーキングメモリとして動作するRAM(Random Access Memory)などを含むメモリ204と、プログラムに応じて、コマンドを生成する処理を実行する演算装置210と、コマンドを通信経路を介して、外骨格型ロボットに送信するためのインタフェース(I/F)部202と、演算装置210の制御の下で、外骨格型ロボット1への制御の状態に関する情報などを表示するための表示装置212とを備える。
【0054】
上述のとおり、外部制御装置20が、汎用のパーソナルコンピュータである場合は、演算装置210は、CPU(Central Processing Unit)で構成され、不揮発性の記憶装置206としては、ハードディスクドライブやソリッドステートドライブなどを用いることができる。ただし、外部制御装置20の機能ブロックの一部または全部は、専用のハードウェアにより構成されてもよい。
【0055】
また、外部制御装置20は、たとえば、外骨格型ロボットが装着される使用者について、筋電位から関節トルクを推定するためのモデルをキャリブレーション時に構成する処理を行う。
【0056】
外骨格型ロボット1は、外骨格部12、内部制御装置10を備える。
【0057】
外骨格部12は、ベース121、下半身122、能動関節123、検出機構124を備える。さらに、能動関節123は、エアマッスル1231(図示せず)、電動モータ1232(図示せず)を備える。
【0058】
また、内部制御装置10は、I/F部11、記録装置131、記憶装置 132、計測装置133、制御部134、出力装置135を備える。
【0059】
I/F部11は、外部制御蔵置20から指令されたトルクまたは位置指令等を受け付けることができる。
【0060】
なお、ベース121は、腰の位置の骨格、腰の位置の能動関節123を含むと考えても良いし、腰の位置の骨格のみであると考えても良い。
【0061】
下半身122は、腿や足の位置の骨格、腿や足の位置の能動関節123を含むと考えても良いし、腿や足の位置の骨格のみであると考えても良い。
【0062】
能動関節123は、左右の足首、左右の膝、および腰の左右の各位置に配置されている能動の関節である。ここで、能動関節123とは、アクチュエータで能動的に動作することのできる関節である。つまり、能動関節123は、アクチュエータを備える。
【0063】
また、ここでの1以上の能動関節123は、ハイブリッド型である。つまり、能動関節123の少なくとも一部のものは、エアマッスル1231、電動モータ1232を備えるハイブリッド型である。なお、アクチュエータは、制御目標値となるトルク値を駆動信号として受け付け、受け付けたトルク値に基づいて制御する機能を有している。
【0064】
アクチュエータとして、サーボモータを使用する場合、アクチュエータは、例えば、電流制御が可能な駆動回路を有し、電流に比例したトルクを発生させるサーボモータは、制御目標値として入力されたトルク値に、ギヤ比により決定されるトルク定数を乗じて駆動回路に指令することで入力されたトルクを発生させるトルク制御を実現する。特に、能動関節123にトルクセンサを配設し、当該トルクセンサにより検出した値を駆動回路にフィードバックすることにより、高精度のトルク制御が可能となる。
【0065】
検出機構124は、ロボットの状態を検出する。検出機構124は、例えば、各関節に配置されたエンコーダ、足平に配置された床反力センサ、骨盤部に配置された姿勢検出のためのジャイロセンサ、各エアマッスルの駆動力を検知するロードセルなどである。検出機構124は、関節の角度を検出する角度センサや、ロボットの姿勢を取得する姿勢センサ、外力センサなどでも良い。
【0066】
また、検出機構124は、使用者の脚部に装着された筋電センサにより使用者の筋電位を検出する。
【0067】
内部制御装置10は、能動関節123を動作させる。内部制御装置10は、I/F部11が受け付けた目標トルクまたは位置指令等に対応して、能動関節123を動作させる。
【0068】
計測装置133は、センサ等の検出機構124から検出結果を示す様々な信号(データ)を受け付ける。
【0069】
制御部134は、制御目標値の算出等の様々な演算を行う。制御部134が行う演算は後に説明する。
【0070】
出力装置135は、能動関節123に制御信号を出力する。出力装置135は、例えば、目標とするエアマッスルの圧力値やモータの制御値を能動関節123に出力する。より詳しくは、このような制御値は、モータドライバや圧力制御バルブなどに出力され、物理的なエネルギー(圧縮空気や電流)がモータやエアマッスルに供給される。
【0071】
図4は、本実施の形態の外骨格型ロボットを使用者が装着した場合の構成を示す図である。
【0072】
外骨格型ロボットは、自律して立位姿勢を保持することが可能である。
【0073】
(筋電位フィードバックによる能動関節の制御)
上述のとおり、従来のように、式(1)に従うフィードバックを行った場合、EMG信号により推定される関節駆動力τemgが人が必要とするτh*であると解釈されている背景がある。そして、一般的に、EMGのフィードバックゲインを高くすると、ヒト-ロボットインタラクションを含む系全体が不安定になるという問題がある。
【0074】
これは、例えば、ある時点でシステムが完全に筋力をサポートすると、次の瞬間には必要力が0になるため、式(1)よりサポート力は0となる。その結果、ロボットからのアシスト力は0である。つまり、人の必要力は増大する。これは人の筋電位調整とシステムの応答が理想的なケースであるが、実際は拘束部分の緩みやシステムの遅れなどからα
1を増加すると振動的な挙動となる。そのため、α
1は小さく設定しなければならなかった、という事情による。
【0075】
本実施の形態では、人-ロボット間インタラクションによる発生力を考慮することで、筋電位から予測するフィードバックトルクを調整することをコンセプトとする。なぜならば、ヒトはアシストされた分だけ筋の発生力を減らすよう調整するからである。
【0076】
【数2】
ここで、τ
h*はタスクに必要なトルク、τ
emg*はヒトが発生すべき関節トルクの目標値であり、τ
rhはロボットとのインタラクションによるアシストトルクである。
【0077】
この式(2)より、ロボットの発生力の目標値を以下のように調整する。
【0078】
【数3】
ここで、式(3)の第1項は式(1)と共通した項であり、第2項はインタラクションの調整項である。つまり、人-ロボット間のインタラクションの結果アシストされる駆動トルクτ
rhの分だけ必要トルクが増分されていることがわかる。この増分のフィードバック係数がα
2である。ただし、τ
rhは計測や評価が、一般には、非常に難しいため、式(3)は概念上の式である。そこで、第2項については、実測可能な量への置き換えを行う。このような第2項のτ
rhの本実施の形態での実装に関しては後述することとする。
【0079】
図5は、本実施の形態において、筋電位から関節駆動トルクを推定して、能動関節のアクチュエータ(ここでは、一例として、空電ハイブリッド式アクチュエータ)を制御するための制御ブロックを示す図である。
【0080】
図5を参照して、関節トルク変換部2100は、アシスト対象である使用者の下肢2140から測定された筋電位(EMG)信号は、以下に説明するような手続きにより、非線形なモデルにより筋張力を算出し、線形モデルにより、関節トルクを計算する。
【0081】
より具体的には、関節トルク変換部2100は、EMG信号に対して所定のフィルタリング処理を行うEMG信号フィルタ部2102と、フィルタリングにより得られる筋iから出力ui(t)から、筋の活性度を算出して、筋の活性度q
iから非線形モデルにより筋張力ζ
iを算出する筋張力算出部2104と、筋張力ζ
iから関節駆動トルクτ
emgを推定する関節トルク算出部2106とを含む。
【0082】
さらに、目標トルク算出部2110は、推定されたτ
emgからアクチュエータの生成するべき目標トルクτ
r*を算出する。
【0083】
目標トルク算出部2110は、逆動力学作用モデル算出部2112を含んでおり、逆動力学作用モデル算出部2112は、後に説明するように、目標トルクτ
r*からのフィードバック2114により、目標トルクτ
r*を算出する。
【0084】
腱スプリングモデル算出部2120は、エアマッスルに供給する圧力p
*およびモータへの制御値を算出する。制御対象2130は、後に説明するような能動関節に設けられた空電ハイブリッド式アクチュエータである。
[筋電位からの関節駆動力τ
emgの推定]
次に、以下では、筋電位から関節駆動力τ
emgを推定することを考える。
(筋電位に基づく関節駆動トルクの推定)
特に限定されないが、たとえば、使用者の脚部には、臀部の関節角を検出するための角度計と、膝の関節角を検出するための角度計と、くるぶし部分の角度を検出するための角度系とが装着されており、また、使用者の脚部には、後に説明するように、使用者の脚部の筋電位を計測するための筋電センサが装着されているものとする。
【0085】
さて、筋電位に基づくアシストロボットの制御は、長い間、取り組まれている課題である。ある筋の活性度をq、筋張力をζとし、qからζおよびτ
emgの変換について考える。
【0086】
この変換には非線形があることが知られており、以下の文献に加持されたHill-stroeveモデルが広く普及している。
【0087】
公知文献1:A. Hill, “The heat of shortening and the dynamic constants of muscle,” Proceedings of the Royal Society of London. Series B, Biological Sciences, vol. 126, no. 843, pp. 136-195, 1938.
公知文献2:S. Stroeve, “Learning combined feedback and feedforward control of a musculoskeletal system,” Biological Cybernetics, vol. 75, no. 1, pp. 73-83, 1996.
この非線形変換を機械学習(ニューラルネットワークなど)で学習するアプローチでは、筋電位から直接関節トルクτ
emgへの変換を実験データより推定し、フィードバック制御が試みられている。
【0088】
しかし、これらの手法では筋電位を貼り直すたびに再学習が必要であり、キャリブレーションに多く労力が必要となる。一方で、安定性や実用性の観点からは線形モデルによる筋電位フォードバック制御も用いられているが、さまざまな動き(筋の収縮率・速度)が含まれる場合は推定誤差が増大する。
【0089】
Fleischerらが、以下の文献で提案した手法は筋張力ζから関節駆動トルクτ
emgの変換は線形変換で、活性度qとζは非線形変換を行っている。非線形変換は実験ごとにパラメータを共通化できるため、キャリブレーションに必要なデータ量を少なくできる。
【0090】
公知文献3:C. Fleischer, C. Reinicke, and G. Hommel, “Predicting the intended motion with emg signals for an exoskeleton orthosis controller,” Intelligent Robots and Systems, 2005.(IROS 2005). 2005 IEEE/RSJ International Conference on, pp. 2029-2034, 2005.
[EMG信号から膝駆動トルクを算出するモデルの構築(キャリブレーション)]
本実施の形態では、生体力学的な知見に基づき筋活性度から筋張力の非線形変換を考え、線形モデルを仮定したキャリブレーションにより、筋の太さや種類およびインピーダンスや電極位置の変化といった実験設定によって変化する対象を考慮する。本実施の形態では、筋張力算出部2104において実行される、筋i
の活動度q
iから筋張力ζ
iへの変換は、以下の近似関数を用いる。ここで、「筋i」とは、筋電位測定のためにユーザの体表につけられた電極のチャネルを示す。そして、電極のチャネル番号と、その電極がいずれの筋肉につけられているかについての対応関係については、記憶装置内に予め格納されているものとする。
【0091】
【数4】
ここで、記号の意味は以下の通りである。
【0092】
【数5】
非線形変換では、関節トルク推定処理
の線形化を目的とするため、解剖学的な筋の最大力は1とした。k(…)とh(…,…)は、以下のように、筋繊維に依存する2つのパラメータ(a
1とa
2)を持つ関数である。
【0093】
【数6】
ここで、パラメータa
1とa
2は、筋繊維に依存するパラメータであり、実験的に、たとえば、a
1=2.7およびa
2=0.1を用いた。
【0094】
また、それぞれの変換写像k(),h()は、たとえば、以下の文献に開示されている。
【0095】
公知文献4:H. Hatze:“A myocybernetic control model of skeletal muscle” Biological Cybernetics,25,103/119,1977
(筋電位フィルタリング)
図6は、EMG信号フィルタ部2102による筋電位デジタルフィルタの処理を示すフローチャートである。
【0096】
筋電位を測定する電極からアンプを通した筋電位は所定の時間間隔でンプリングされる(S100)。この時間サンプリングをs
tとする。
【0097】
続いて、時間サンプリングをs
tは、ハイパスフィルタにより直流成分が除去されるとともに、正規化される(S102)。
【0098】
続いて、EMG信号フィルタ部2102は、信号の整流(つまり絶対値とる処理)を実行する(S104)。
【0099】
ここで、このようなステップS102とステップS104の処理は、以下のようにして実行することが可能である。
【0100】
すなわち、以下のような処理を逐次的に行うことで、直流成分の除去と信号の絶対値成分をとる処理を行うことができる。
【0101】
【数7】
ここで、γは、スムージング係数であり、s
t´は、ハイパスフィルタ処理される。また、サンプリング周期は250[Hz]である。
【0102】
さらに、信号は、2次のFIR バターワース(butter-worth)フィルタをかけられ(S106)、さらにFIR butter-worthフィルタ出力と矩形窓をかけた以下のような積分により、信号u
i(t)が得られる(S108)。
【0103】
【数8】
このような筋電位フィルタを通した出力u
i(t)により、筋の活性度q
iは次式より定義される(S110)。
【0104】
【数9】
(関節角駆動トルク)
(線形トルク推定モデル)
本実施の形態では、関節トルク算出部2106の実行するEMG信号からの関節駆動トルク推定は、以下のようにして行う。
【0105】
すなわち、推定筋張力ζから関節角駆動トルクτ
emgは、関節の仮想的なプーリー径を仮定し、線形変換BとCを考え、次のEを最小化するWを最小二乗法で求める。
【0106】
【数10】
τi(i=1,…)はキャリブレーションの実験データにおいてヒトの筋骨格モデルより算出される関節駆動トルクである。
【0107】
以上のようなモデルについて、オフラインでキャリブレーション時に、パラメータB,Cを設定する。
(インタラクションを考慮したフィードフォワードのアシストトルク調整)
式(3)では筋電位から推定された関節角駆動トルクに加え、インタラクショントルクにより発生するアシストトルクでフォードバック量を調整している。本実施の形態では人およびロボットの運動学的なモデルよりフィードフォワード的に扱う。
【0108】
【数11】
ここで、Jrはロボットのトルクからエンドエフェクタ(一般には、ロボットから見た使用者への相互作用部分であり、この場合、外骨格が使用者に力を作用させる部分)のインタラクション力(アシスト力)へ変換するヤコビアンである。Jhはインタラクション力から関節駆動トルクへの影響を表す静力学的なモデルであり、ヒトの関節角変化に対するインタラクション部分の位置変化を表すヤコビアンである。τ
r*はロボットの目標出力トルクである。
【0109】
ここでの「インタラクション部分」とは、エンドエフェクタのことであり、具体的には装具・バンドが拘束している点で、ヒト筋骨格とロボットの接点のことである。ただし、厳密には、ヒト筋骨格とロボットとは、面(分布力や圧力)で接触することになり,力だけでなくモーメントも伝達されるものの、ここでは簡単化して点で接触して集中力を発生していると近似的に考えている。
【0110】
もちろん、インタラクション力を触覚センサなどのセンサで直接測定できれば、それを使用することも可能であるが、式(8)のようにおくことで、直接測定の困難さを回避することができる。
[1軸アシスト装置についての実験]
以下では、本実施の形態の制御方式の有用性を確認するために、1軸アシスト装置による筋電位に基づくトルクフォードバックのシミュレーションと実機により従来手法(式(1))と本実施の形態の手法(式(8))を比較した結果について説明する。
(1軸アシスト装置のシミュレーション)
図7は、シミュレーションでの関節角度、人の筋活性、1軸アシスト装置によるアシスト力、およびロボットと人のトルクを比較して示す図である。
【0111】
図7(a)は式(1)を筋電位フィードバックとして実装し、
図7(b)は式(8)を実装した場合のシミュレーション結果である。
【0112】
パラメータはそれぞれ(α
1,α
2)=(0.45,0)および(α
1,α
2)=(0.45,0.45)である。シミュレータは、実機と同様にエアマッスルの駆動力をプーリーによってトルクに変換するアシスト装置である。人の筋の活性度のコントローラおよびエアマッスルのダイナミクスは以下のように1次遅れのある系として定義する。
【0113】
【数12】
ここで、Cfはエアマッスルの発生力の時定数であり、Csは人の筋活性度の時定数である。Cfは次節で述べるエアマッスルの時定数に合わせて0.08[sec]とし、Csは運動野からαニューロンへの信号伝達時間に合わせて0.02[sec]とした。
【0114】
シミュレーションは水平位置より45[deg]の角度を初期位置としてヒトとロボットのトルクの合計値の目標値τ
total*(=τ
h*)を正弦波で与えた。
【0115】
式(1)と式(8)の違いを強調するために、u
t*とτ
total* を3.75[sec] 以降0とし、ut をトルクコントローラ入力から切断している。
【0116】
シミュレーションの結果(
図7(a)と
図7(b))を比較すると、筋電位の入力が切れた後(3.75sec以後)のエアマッスルPAM(Pnuematic Airtificial Muscle)の発生力fと、その結果発生するアシスト力τr(上から3番目および4番目のグラフ)の時間変化に、従来手法と本実施の形態の手法の違いが強調されている。
図7(a)のfは短時間で発生力が0になっており、この変化はPAMの空圧の時間遅れによるものであり、時定数も一致している。
図7(b)ではfが発生力が0になるまでに
図7(a)よりも大きな時定数で変化している。
【0117】
これは、本実施の形態でのアシストトルクの調整項がf
*にダイナミクスを与える結果となったからである。
図7(a)ではアシストトルクは約1/2であり、これはパラメータ(α
1,α
2)=(0.45,0)および(α
1,α
2)=(0.45,0.45)の違い、すなわち
図7(b)においてはインタラクション力の調整項が存在することにより、筋電位に基づくフィードバック(アシストトルク)が増加することがわかる。
【0118】
(空電ハイブリッド式アクチュエータ用のトルク制御器)
以下では、空電ハイブリッド式アクチュエータ用のトルク制御器による力制御可能な1軸アシスト装置について説明する。エアマッスルPAMは非常に大きな力を発生するため、高強力・高弾性の化繊ワイヤであっても伸びがモデルの誤差の原因となる。「腱スプリングモデル」を仮定した力制御と小型のモーターが発生するトルクにより、緻密な関節トルク制御が可能である。
【0119】
以下に説明するように、このようなトルク制御器(腱スプリングモデル算出部2120の実行する機能)は、制御部134に対して、機械学習を実行させることにより、実行させる構成とすることが可能である。
【0120】
空圧式エアマッスルは軽量であるもの、圧縮空気(または圧縮気体)のエネルギーをゴムチューブにより収縮力に変換することにより大きな力を生み出すことができる。
【0121】
エアマッスルが、力を発生させる原理は、空圧式の空気袋が埋め込まれたらせん状のファイバーが、圧縮空気が送り込まれて空気袋が膨張すると、長手方向(縦方向)に収縮するというものである。
【0122】
より詳しく説明すると、両端部に栓をしたゴムチューブに対して、動径方向を拘束するよう、表面にらせん状にまかれたファイバーを被せた構造になっている。このゴムチューブの中に空気を送り込むと、空気の圧力でゴムチューブが膨張する。しかし、動径方向はファイバーによって拘束されているため膨張できず、径方向の膨張に引っ張られて縦方向に収縮する。膨らみながら収縮する様が動物の筋肉に似ているところが人工筋肉と呼ばれる。
【0123】
アクチュエーター自体が軽く、柔らかい。さらに、ゴムチューブの内面全体がアクチュエーターの収縮に寄与するため、断面積のみで圧力を受ける構造になっている一般的なエアシリンダー等よりも、パワー・ウェイト・レシオを大きく取りやすい。反面、上述したように、一般に空気圧による機器制御は空気の収縮・膨張などによる、制御遅れが大きく、素早い動作は苦手である。
【0124】
なお、「空気袋」は、流体により膨張ないし収縮運動をするものであれば、袋中に流入するものは、空気に限られないので、より一般には、「流体袋」と表現する。
【0125】
図8は、外骨格型ロボットの構成において、1自由度分の動作を行う空電ハイブリッドアクチュエータの部分を抜き出した外観を示す図である。
【0126】
図8において、空圧式エアマッスルのうち上側のエアマッスル302は、屈筋(PAM1)に相当し、下側のエアマッスル304ものは伸筋(PAM2)に相当する。
【0127】
伸筋PAM2は、屈筋PAM1とは相反し反対向きの力を生成する。
【0128】
プーリー付回転関節310には、電動モータからの駆動力も印加され、空圧式エアマッスルからの駆動力と電動モータからの駆動力とが合成される。
【0129】
エアマッスル302からの駆動力は、ワイヤ306によりプーリー付回転関節310に伝達され、エアマッスル304からの駆動力は、ワイヤ308によりプーリー付回転関節310に伝達される。このような構成により、駆動力の伝達機構自体を軽量化することが可能となる。
【0130】
プーリー付回転関節310へ加えられた駆動トルクにより、脚(または腕)350が駆動される。
【0131】
図9は、
図8に示した1自由度分の動作を行う空電ハイブリッドアクチュエータのシステムを制御する構成を説明するための機能ブロック図である。
【0132】
図9においては、内部制御装置10は、マルチファンクションボード(Multi Function board)として構成される。
【0133】
外部制御装置20に接続されたマルチファンクションボード10は、外部制御装置20からのコマンドに応じて、アクチュエーターを制御する。具体的には、マルチファンクションボード10は、空圧式エアマッスル302および304の収縮を制御するためのバルブ301とバルブ302、ならびに、電動モータ312を制御するためのモータドライバ311を制御する。さらに、マルチファンクションボード10は、関節角度θを検知する角度エンコーダ324およびエアマッスルからの駆動力を検知するロードセル、能動関節に加わるトルクを検知するトルクセンサからの計測データを読み取ることで、これらに基づき、以下に説明するような制御を実行する。
【0134】
角度エンコーダ324は、たとえば、直交エンコーダを使用することが可能である。
【0135】
エアマッスル302および304ならびに電動モータ312からの駆動力は、プーリー付回転関節310において合成され、脚350にトルクτを与える。
【0136】
図10は、各アクチュエーターが、関節を動かす態様を説明するための概念図である。
【0137】
以下では、まず、
図10(a)に示されるように、腱ワイヤの伸長を無視できる場合を考える。
【0138】
空圧式エアマッスルフォースからの駆動力fPAMi(i=1,2,…)は、ワイヤとプーリにより、腕(または脚)にトルクとして転送され/変換される。このプーリーを介して、電動モータの駆動力も伝達される。空圧式エアマッスルフォースからの駆動力fPAMiは、空圧式エアーマッスルと駆動力をプーリーに伝達するワイヤーとの接合部に設けられたロードセルにより検知される。
【0139】
以下のモデルの説明は、拮抗筋と電動モータの組合せの場合に限らず、たとえば、伸筋と電動モータの組合せにも広く適用することが可能である。ただし、以下では、説明の簡単のために、単純な2つの拮抗筋のモデルを考える。
【0140】
トルクτ
PAMは、駆動力f
PAMiにより、以下の式ように表される。
【0141】
【数13】
τ
PAMは、空圧式エアマッスルの駆動力によるトルクであり、一方、r
0はプーリー半径で、この単純なモデルでは、r
0は定数とする。
【0142】
モーターの駆動力によるトルクは、空圧式エアマッスルの駆動力と並行して伝達される。例えば、小さなトルクが機械的なベルトによりプーリー経由で伝達される。
【0143】
空圧式エアマッスルは、直流的または低周波のトルクの生成において優れている。また、電動モータによる駆動力は、迅速で周波数の高いトルクとして、空圧式エアマッスルの駆動力によるトルクτ
PAMの誤差をカバーするので、電動式のトルクτmotorの値は、空圧式エアマッスルによるトルクよりも小さな値でよい。
【0144】
トータルのトルクは、以下の式で表される。
【0145】
τ=τ
PAM+τmotor
したがって、特に限定されないが、たとえば、内部制御装置10が、第一の閾値よりも(「より」は「以上」も含む、とする)高周波であるトルクに対して電動モータ312を追加動作させることは好適である。 なお、追加動作とは、エアマッスル302および304に加えて電動モータ312を動作させることである。ここで、第一の閾値は、例えば、3Hzである。
【0146】
空圧式エアマッスルから、ワイヤがプーリーへ駆動力を伝達し、指定された一方向へ関節を駆動する。
【0147】
ワイヤとしては、金属線、チェーンあるいは機械的なベルトなどの方式と比較して、軽量で強く、柔軟であるので、液晶ポリマー繊維を採用することができる。液晶ポリマー繊維としては、たとえば、クラレ社製ベクトラン(登録商標)を用いることができ、これは、高分子繊維であるにも関わらず、高強力高弾性率を有する素材として知られている。
【0148】
(空圧式エアマッスルの力学モデル)
空圧式エアマッスル、ワイヤおよびプーリを含む空圧式アクチュエーターは、人間の筋肉と多くの共通点を持っている。
【0149】
外骨格型ロボットが人間の重さを支持する際に、ワイヤは、その特性において、人間の腱に類似している。
【0150】
そこで、以下に説明するように、平衡の仮定を置いて、空圧式エアマッスルのためのトルク制御器を導出する。
【0151】
空圧式エアマッスルの圧力の制御には、たとえば、比例的に圧力を調整するバルブを使用し、圧力pはクローズドフィードバックループにより制御され、十分に安定であるものとする。
【0152】
過渡状態においては、バルブ圧力と空圧式エアマッスルの圧力との間には、空気力学的な運動が存在するものの、一定の時定数の後には、ロボットと人間の重量のような外部の運動上の制約条件に駆動力が釣り合うまで、空圧式エアマッスルは収縮する。
【0153】
したがって、空気回路の動力学の影響は小さく、準静的な動作では無視することができる。
【0154】
この均衡点で、駆動力の生成は、内圧および収縮割合に依存し、空圧式エアマッスルの駆動力モデルは、以下のように与えられる:
【0155】
【数14】
ここで、εは、収縮割合であり、D
0とψ
0とは、常圧における空圧式エアマッスルの径と、空圧式エアマッスルにおいて、空圧式の空気袋が埋め込まれたらせん状のファイバーの収縮方向に直交する方向に対する巻方向の傾きの角度である。
【0156】
このような「空圧式エアマッスルの駆動力モデル」は、たとえば、以下の文献に開示されている。
【0157】
公知文献5:K. Inoue. Rubbertuators and applications for robots. In Proceedings of the 4th international symposium on Robotics Research, pp. 57-63. MIT Press, 1988.
公知文献6:D.G. Caldwell, A. Razak, and MJ Goodwin. Braided pneumatic muscle actuators. In Proceedings of the IFAC Conference on Intelligent Autonomous Vehicles, pp. 507-512, 1993.
空気シリンダーと異なり、関節角が変化することによってトルクは非線形に変化する。
運動上の制約条件が常に不変であるという仮定の下では、空圧式エアマッスルの圧力は常に同じ均衡点での収縮割合ε(p)を与えることになる。すなわち、収縮割合ε(p)は、圧力pの関数となる。
【0158】
このとき、このような「空圧式エアマッスルの駆動力モデル」の逆モデルは、機械学習により学習することができる。すなわち、所望の駆動力fを得るための圧力pを求めることに相当する。内部制御装置10は、このような圧力pをエアマッスルに与えるように、バルブを制御することで、所望の駆動力を出力させることになる。
【0159】
例えば、ハートマン等は、動力学的な学習について、以下の文献で提案している。
【0160】
公知文献7:Christoph Hartmann, Joschka Boedecker, Oliver Obst, Shuhei Ikemoto, and Minoru Asada. Real-time inverse dynamics learning for musculoskeletal robots based on echo state gaussian process regression. In Accepted at RSS 2012, 2012.
しかしながら、一般的には、運動上の制約条件をダイナミックに変更し、異なる外力Fと釣り合うので、この仮定は、上述したような外骨格型ロボットにおいては、厳密には成り立たない。
【0161】
したがって、この場合の均衡点での収縮割合εは、圧力と外力の関数として、ε(p,F)と表現される。
【0162】
(腱スプリング均衡モデル)
上述したような液晶ポリマー繊維製のワイヤは、高強力高弾性率を有するので、通常は、張力に対して長さが変化しないとの近似がよく成り立つ。高強度・高弾性率繊維としては、ベクトラン(登録商標)のようなポリアリレート繊維の他に、たとえば、超高分子量ポリエチレン繊維、PBO繊維などがある。
【0163】
しかし、人間(たとえば、体重は60kgある)を保持するためには、空圧式エアマッスルは、張力として、典型的には、3000Nを生成する(最大値としては、たとえば、5000Nが必要になる)。
【0164】
このような大きな力が加わると、たとえ、液晶ポリマー繊維製のワイヤ(腱ワイヤ)であっても、その伸長量が無視できず、均衡点を変化させてしまう。
【0165】
以下では、
図10(b)に示すように、腱ワイヤの伸長の影響を考慮したモデルを検討する。
【0166】
そこで、液晶ポリマー繊維製の腱の力学モデルとして、以下に説明するような、線形の腱スプリング・モデルを導入する。
【0167】
f=kΔε (S2)
すなわち、このモデルでは、腱ワイヤ(ポリアリレート繊維などの液晶ポリマー繊維製のワイヤ)は、バネに近似され、Δεは、力によって引き起こされた余分なエアマッスルの収縮であり、kはばね定数である。つまり、腱が力によって伸びる分、空圧式エアマッスルは、余分に収縮することが必要になる。このようにバネに近似される腱ワイヤのことを「腱スプリング」と呼ぶことにする。
【0168】
このような腱に相当するワイヤを、腱スプリングとして近似しない場合、空圧式エアマッスルの駆動力モデルg()は3つのパラメーター(そのうちの2つは依存関係にある)を備えた以下の二次式(3)で表される:
【0169】
【数15】
ここで、
2次式の係数には、以下の関係が成り立つ。
【0170】
【数16】
均衡点で、駆動力f
*は、腱の伸長によって、以下のように減少する。
【0171】
【数17】
ここで、g´()が腱スプリングの仮定の下での駆動力モデルであり、ε
*は、見かけの収縮割合であり、εは、空圧式エアマッスルの実際の収縮割合であり、Δεは、空圧式エアマッスルの実際の収縮割合への付加項である。
【0172】
式(S2)から、Δε=f
*/k となる。
【0173】
実際の収縮割合εは、上述したような外骨格型ロボットの検出機構124では、直接測定するのが困難である。したがって、その代りに、推定収縮割合εest(=ε
*−Δε)を使用する。収縮割合ε
*は、以下の式のように、関節角から計算される。
【0174】
【数18】
ここで、L
0は、関節角θ=0のときの空圧式エアマッスルの初期長さである。つまり、「見かけの収縮割合」とは、アクチュエータにより駆動される関節の角度変化から導かれる収縮割合であって、角度センサから検知できる量に基づく収縮割合であるのに対して、「実際の収縮割合」とは、駆動力f
*を生成するために、エアマッスルが現実に収縮している割合のことである。
【0175】
収縮割合ε
*において、駆動力f
*が必要とされる場合、逆モデルg
−1()から、必要な圧力p
*が、以下のようにして導出される。
【0176】
【数19】
最小二乗アルゴリズムを使用して、既知の空圧式エアマッスルのデータから、空圧式エアマッスルパラメーターa、bおよびcを評価できる。
【0177】
さらに、たとえば、キャリブレーション実験で、1自由度システムによって均衡点駆動力を測定する際に、バネ定数kについては、手動で調整することで最適値を実験的に求めることができる。
【0178】
運動をアシストする主要なトルク(所定の周波数以下の成分のトルク、たとえば、直流成分のトルク)は、空圧式エアマッスルによって供給され、実際のトルクτ
PAMsは、ロードセルにより測定することができる。上述したように、高周波トルク(所定の周波数を超える成分のトルク:交流成分のトルク)は電動モータによって生成される。
【0179】
したがって、モータのトルクは以下の式(S7)のように表現される。
【0180】
【数20】
以上のようにして、腱スプリングモデルを腱ワイヤに適用することにより、関節角と腱ワイヤに印加される駆動力を検知する構成において、空圧式エアマッスルの駆動力を正しく反映した逆モデルを、たとえば、機械学習により、構築することが可能となる。その結果、空電アクチュエータを制御する際に、その周波数応答性を向上させることが可能となる。
(1軸アシストシステムによる実験)
図11は、1軸アシスト装置の実験セットアップの外観を示す図である。
【0181】
図11(a)では被験者(健常者)が装着しており、2つの筋電位電極と拘束部が示されている。
図11(b)では拮抗で配置されている2つのPAM(PAM1とPAM2)が式(S6)による重力補償トルク制御により、おもりを静止させている様子を示している。
【0182】
図12は、筋電位計測のための体表電極の位置の例を示す図である。
【0183】
図12に示すように、それぞれ上腕二頭筋と上腕三頭筋を計測対象としている。アンプの倍率は10000倍に設定し、−10[V]から10[V]で計測可能なAD変換器により、筋電位を計測する。
【0184】
図13は、筋電位計測により推定された被験者の関節駆動トルクτ
hと1軸アシスト装置の駆動トルクτ
rを示す図である。
【0185】
0.5[Hz]程度でおもりを上下させることを被験者のタスクとした。
図13(a)はパラメータ(α
1,α
2)=(0.9,0)による結果であり、式(3)の第2項の調整項がない場合の実験結果であり、従来手法に相当する。
【0186】
図13(b)は、パラメータ(α
1,α
2)=(0.45,0.45)による結果であり、本実施の形態の手法の実装である。
【0187】
図13(a)に示すように、上述のパラメータ設定ではヒト−ロボット間のインタラクションは、
図13(a)の7[sec]以降では、
図13(b)に比べて不安定である。これは、運動の方向が変化する際に発生するPAMのモデル誤差やベルトの緩みなどが原因となり、筋電位より推定されるトルクフィードバックとそれに伴うヒトの筋電位の変動が不安定化したものと考えられる。
図13(b)のコントローラの内部にはフィードフォワード的にインタラクション力を考慮するアシスト力の調整項が入っており、アシスト装置が発生するトルクの急激な変動を押さえる結果、安定化された。
【0188】
すなわち、α
1とα
2はアシストトルクの応答とシステムの安定化を調整するパラメータであり、これらはトレードオフの関係にある。α
1に比べてα
2を大きく調整することで、アシストのインタラクションの安定化を計ることができ、逆にα
2に比べてα
1を大きくすることで筋の活性度に対するアシストトルクの応答性が向上する。
【0189】
以上説明したように、本実施の形態では、筋電位フィードバックに基づくアシスト力のフィードバック制御において、インタラクションにより人の筋張力の減少が起こることに注目し、これを調整するフィードバックコントローラを用いる。
【0190】
一例として、1軸アシスト装置により従来手法と本実施の形態の手法を比較した結果により、実験的にも、本実施の形態の制御方式の有効性が示された。
【0191】
本実施の形態で示されたように、フィードフォワード的にインタラクションの発生力を考慮し、それを調整項としてフィードバックすることで、筋電位フィードバックが安定化できる。
【0192】
なお、インタラクションを現実に計測し、フィードバックすることで、インタラクションを考慮した運動アシストを行ってもよい。
【0193】
今回開示された実施の形態は、本発明を具体的に実施するための構成の例示であって、本発明の技術的範囲を制限するものではない。本発明の技術的範囲は、実施の形態の説明ではなく、特許請求の範囲によって示されるものであり、特許請求の範囲の文言上の範囲および均等の意味の範囲内での変更が含まれることが意図される。