(57)【要約】  位置偏差の変化の違いと動作時の負荷量とを正確にモニターし、適切に訓練装置を制御する。訓練装置１００は、固定フレーム１と、操作ロッド３と、モータと、回転情報出力センサと、傾動角度算出部１１３１と、フィードバック電流検出部１１３３と、位置偏差算出部１１３２と、判断部１１３４と、を備える。操作ロッド３は、少なくとも１自由度にて傾動する。モータは、操作ロッドを傾動させる。回転情報出力センサはモータの回転量を出力する。傾動角度算出部１１３１は、傾動角度を算出する。フィードバック電流検出部１１３３は、フィードバック電流値Ｉを検出する。位置偏差算出部１１３２は、位置偏差を第１の時間Ｔ１経過毎に算出する。判断部１１３４は、第１の時間Ｔ１の間に生じた位置偏差が第１の閾値φ１以上であるか、又は、フィードバック電流値Ｉが、第２の時間Ｔ２以上、第１電流値Ｉ１以上である場合にエラーと判断する。
2015072480.tif 000002
【特許請求の範囲】
【請求項１】
所定の訓練プログラムに従って、使用者の上肢及び／又は下肢の四肢を訓練する訓練装置であって、
床面上又は床面に近接して載置される固定フレームと、
前記固定フレームに少なくとも１自由度で所定の傾動軸回りに傾動可能に支持され、肢を保持する操作ロッドと、
前記操作ロッドを前記傾動軸回りに傾動させるモータと、
前記モータの回転量を出力する回転情報出力センサと、
前記モータの前記回転量に基づいて、前記操作ロッドの傾動角度を算出する傾動角度算出部と、
前記モータのフィードバック電流値を検出するフィードバック電流検出部と、
前記操作ロッドの実際の前記傾動角度と、前記訓練プログラムにおいて指示された前記操作ロッドの傾動角度である指示傾動角度との差である位置偏差を、予め決められた第１の時間が経過する毎に算出する、位置偏差算出部と、
前記第１の時間の間に生じた前記位置偏差が予め決められた第１の閾値以上であるか、又は、前記フィードバック電流値が、予め決められた第２の時間以上の間、第１電流値以上であるときにエラーと判断する判断部と、
を備えた訓練装置。
【請求項２】
前記操作ロッドは長手軸線方向に伸縮可能である請求項１に記載の訓練装置。
【請求項３】
前記判断部によって前記エラーを判断したときに、使用者に対して視覚的情報又は聴覚的情報を提供する情報提供部をさらに備える、請求項１又は請求項２に記載の訓練装置。
【請求項４】
前記情報提供部は、前記使用者が、前記訓練プログラムにおいて設定された訓練ルートにおいて予め設定した通過点に前記操作ロッドを到達させたときに、前記使用者に視覚的情報又は聴覚的情報を提供する請求項３に記載の訓練装置。
【請求項５】
前記判断部によって前記エラーを判断したときに、前記モータの回転を停止する請求項１〜４のいずれかに記載の訓練装置。
【請求項６】
前記判断部がエラーと判断した場合に、前記モータの前記フィードバック電流値を予め決められた第２電流値以下に制限するフィードバック電流制限部をさらに備える、請求項１〜４のいずれかに記載の訓練装置。
【請求項７】
前記第２電流値は、前記モータへ入力可能な定格電流の１より小さい所定の倍数の電流値である、請求項６に記載の訓練装置。
【請求項８】
前記第１の時間の間に生じた前記位置偏差が、前記第１の閾値よりも小さい第２の閾値以上、かつ、前記第１の閾値未満であるときの累計時間を計測する累計時間計測部をさらに備え、
前記判断部は、前記累計時間が予め決められた第３の時間以上である場合に前記エラーを発生させる、請求項１〜７のいずれかに記載の訓練装置。
【請求項９】
前記訓練プログラムに従って、前記モータの速度を制御するための指令である速度指令を作製する指令作製部と、
前記速度指令に基づいて、前記モータを駆動させるモータ駆動部と、をさらに備え、
前記速度指令は、少なくとも、前記モータを加速させる指令である加速指令と、前記モータを減速させる減速指令とのいずれか、を含み、
前記モータ駆動部は、前記加速指令の実行時において、前記位置偏差を累積保持するように前記モータを駆動する、請求項１〜８のいずれかに記載の訓練装置。
【請求項１０】
前記速度指令は、前記加速指令又は前記減速指令の前後のいずれかに配置され、前記モータを一定速度で回転させる定速指令をさらに含み、
前記モータ駆動部は、さらに前記定速指令の実行時において、前記位置偏差を累積保持するように前記モータを駆動する、請求項９に記載の訓練装置。
【請求項１１】
前記モータ駆動部は、前記加速指令及び／又は前記定速指令実行時において、前記速度指令のみに追従するように前記モータを駆動する、請求項９又は１０に記載の訓練装置。
【請求項１２】
前記指令作製部は、前記訓練プログラムに従って、前記操作ロッドの前記傾動角度を制御するための指令である位置指令をさらに作製し、
前記モータ駆動部は、前記減速指令の実行時において、前記速度指令及び前記位置指令に追従するよう、前記モータを駆動する、請求項９〜１１のいずれかに記載の訓練装置。
【請求項１３】
前記操作ロッドの前記傾動角度が減速開始位置に到達したときに、累積保持した前記位置偏差をリセットする、請求項９〜１２のいずれかに記載の訓練装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータにより駆動される操作ロッドを備え、所定の訓練プログラムに従って、患者の上肢および下肢等のリハビリテーションを支援する訓練装置に関する。
【背景技術】
【０００２】
脳卒中患者の片麻痺した上肢や下肢の運動機能回復を目的とするリハビリテーションは、一般に作業療法士や理学療法士によって行われるため、リハビリテーションの効率的な提供の面においては限界がある。たとえば、上肢の運動機能回復を目的としたリハビリテーションでは、主には麻痺した上肢の正確な動作を、現状よりも僅かに広い動作範囲で、他動的及び能動的に、可能な限り反復することが求められる。これらの運動機能回復に関するリハビリテーションをベースに、作業療法士又は理学療法士は患者に正確な動作を教授し、手技によって患者の上肢に対して、他動的負荷を加えながら、能動的な動作を誘導する。
かかるリハビリテーションでは、療法士が疲労することにより、動作の反復回数が制限される。また、療法士の経験によって、リハビリテーションの医学的な質についても差が生ずる可能性がある。よって、療法士による訓練を補助して、疲労による制約を無くし、かつ、その医学的な質をできるだけ均質化するために、例えば、特許文献１のような、腕などの肢が不自由な患者のリハビリテーションを支援するための訓練装置が、知られている。この装置は、床面上に配置可能な固定フレームと、全方向に傾動可能な固定フレームに支持された可動フレームと、可動フレームに伸縮自在に装着され、訓練を受ける人の手で操作される操作ロッドと、を備えた上肢訓練装置として開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２０１２／１１７４８８号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に開示されたような訓練装置は、主に、訓練を受ける人が訓練すべき肢、例えば上肢、を訓練プログラムに従って訓練する場合、訓練すべき上肢の動きが操作ロッドの動作に追従しているかどうかをモニターし、必要に応じて操作ロッドの動きを訓練装置の使用者に対して、視覚的又は聴覚的情報を基にして教示している。この場合、従来の訓練装置は、装置内部での演算処理によって、例えば訓練プログラムにより指示された操作ロッドの傾動すべき角度と、実際の操作ロッドの傾動角度との偏差（位置偏差）の大きさだけに基づいて、訓練すべき上肢の動きが訓練プログラムによって指示された操作ロッドの動きとして追従しているかを評価していた。しかし、このような位置偏差の大きさだけに基づく評価方法では、短時間に発生した急激な位置偏差を、ゆっくりと徐々に変化する位置偏差から区別できない。また、従来の訓練装置は上記の２種類の位置偏差を区別できないため、装置の使用者にとっても、その位置偏差がどのような理由によって発生したかを判別できない。そのため、従来の訓練装置においては、装置の使用者は適切な訓練プログラムを享受できない恐れがある。【０００５】
また、訓練装置においては、訓練中における患者への負荷を適切に把握し、訓練にフィードバックするために前記の位置偏差と同時に、操作ロッドが上肢を動作させるために必要とする負荷量をモニターする機能が必要である。しかしながら、位置偏差の大きさは、傾動すべき指示角度と実際の傾動角度との偏差であるので、この測定値のみに基づいて当該負荷量を正確にモニターすることは困難であり、別の指標によってモニターする必要がある。【０００６】
本発明の課題は、位置偏差の時間的な変化の違いと、操作ロッドが訓練すべき肢を動作させるために必要とする負荷量とを同時に正確にモニターして、適切に操作ロッドを制御するリハビリテーション支援のための訓練装置を提供することにある。
【課題を解決するための手段】
【０００７】
以下に、課題を解決するための手段として複数の態様を説明する。これらの態様は、必要に応じて任意に組み合せることができる。
本発明の一見地に係る訓練装置は、訓練プログラムに従って、患者の上肢及び下肢の四肢を訓練する訓練装置である。訓練装置は、固定フレームと、操作ロッドと、モータと、回転情報出力センサと、傾動角度算出部と、フィードバック電流検出部と、位置偏差算出部と、判断部と、を備える。固定フレームは、床面上又は床面上に近接して載置される。操作ロッドは、固定フレームに少なくとも１自由度で傾動軸回りに傾動可能に支持される。そして、操作ロッドは肢を保持する。モータは、操作ロッドを傾動軸回りに傾動させる。回転情報出力センサはモータの回転量を出力する。傾動角度算出部は、モータの回転量に基づいて、操作ロッドの傾動角度を算出する。フィードバック電流検出部は、モータのフィードバック電流値を検出する。位置偏差算出部は、位置偏差を所定時間である第１の時間の経過毎に算出する。ここで、位置偏差とは、操作ロッドの実際の傾動角度と、訓練プログラムにおいて指示された操作ロッドの傾動角度である指示傾動角度との差のことをいう。判断部は、第１の時間の間に生じた位置偏差が第１の閾値以上であるか、又は、フィードバック電流値が、所定時間である第２の時間以上において、第１電流値以上である場合にエラーと判断する。【０００８】
この訓練装置では、モータが操作ロッドを制御するときに、位置偏差算出部が、第１の時間毎に位置偏差を算出する。そして、判断部は、第１の時間の間に生じた位置偏差が第１の閾値以上になった場合に、訓練装置になんらかの不具合がある、あるいは、短時間に急激に位置偏差が変化したと判断し、エラーとして検出する。
一方、同じくモータが操作ロッドを制御するときに、フィードバック電流検出部が、モータに供給されるフィードバック電流値をモニターする。そして、判断部は、フィードバック電流値が第１電流値以上である状態が第２の時間以上続いた場合に、同じく訓練装置になんらかの不具合がある、あるいは、ゆっくりとした位置偏差が長時間継続したと判断し、エラーとして検出する。【０００９】
このように、この訓練装置においては、第１の時間あたりの位置偏差の変化量がモニターされている。そのため、判断部は、第１の時間の位置偏差の変化量が大きければ、第１の時間を基準にして短時間に急激に変化した位置偏差であると判断できる。そして、判断部は、短時間の急激な位置偏差の変化が発生したときにエラーとして検出できる。【００１０】
また、訓練装置においては、モータに入力されるフィードバック電流値をモニターすることにより、モータが操作ロッドを傾動させるために必要とするトルクをモニターできる。
さらに、訓練装置は操作ロッドを訓練プログラムによって指示された傾動角度に制御しているため、フィードバック電流値は、位置偏差の変化の大きさに応じて変化する。したがって、フィードバック電流値に基づいて、予め決めた判断時間を基に、ゆっくりと変化する位置偏差の変化が発生しているか、又は、急激に変化する位置偏差が発生しているかがモニターできる。
また、判断部は、フィードバック電流値が第１電流値以上である状態が第２の時間以上続いた場合にエラーを発生させる。これにより、判断部は、判断時間において位置偏差が一定範囲内の場合、つまりはモータ（操作ロッド）が患者の肢に無理な負荷をかけていない場合、又は、位置偏差がゆっくりと変化している場合（患者の肢が操作ロッドの動きにある程度追従して訓練の継続が可能な場合）には、第２の時間までは訓練を持続するように、訓練装置を制御できる。【００１１】
操作ロッドは、長手軸線方向に伸縮してもよい。ここで、長手軸線方向とは、操作ロッドの長さ方向のことをいう。操作ロッドが長手軸線方向に伸縮可能であることにより、上肢又は下肢の、操作ロッドの長さ方向に対する訓練も可能となる。【００１２】
訓練装置は、情報提供部をさらに備えてもよい。情報提供部は、判断部によってエラーを判断したときに、患者、訓練補助者及び医療従事者等を含む使用者に対して視覚的情報又は聴覚的情報を提供する。
これにより、訓練装置の状態、すなわち、訓練装置においてエラーが発生していること、及び／又は、エラー発生の原因を患者や訓練装置の使用者に知らせることができる。【００１３】
情報提供部は、患者が、訓練プログラムにおいて設定された訓練ルートにおいて予め設定した通過点に操作ロッドを到達させたときに、使用者に情報提供してもよい。これにより、使用者は、操作ロッドを訓練プログラム通りに操作できたことを知ることができる。また、使用者が予め設定した通過点に操作ロッドを到達させたときに、使用者に視覚的情報又は聴覚的情報を提供することにより、患者が訓練を続けるためのモチベーションを維持できる。【００１４】
判断部によってエラーと判断したときに、モータの回転を停止してもよい。これにより、エラーが発生したときに、訓練装置を確実に停止できる。【００１５】
訓練装置は、フィードバック電流制限部をさらに備えていてもよい。フィードバック電流制限部は、判断部においてエラーが発生した場合に、モータのフィードバック電流値を予め適切に設定した第２電流値に制限する。
これにより、訓練装置においてエラーが生じた場合に、モータから出力されるトルクを制限できる。その結果、患者に対して訓練中に過度の負荷をかけることなく、操作ロッドを制御してリハビリテーションを行うことができる。【００１６】
第２電流値は、モータへ入力可能な定格電流の１より小さい所定の倍数の電流値であってもよい。これにより、定格電流が長時間にわたってモータに供給されなくなる。その結果、患者に対して過度の負荷をかけることなく、操作ロッドを制御できる。
また、訓練装置の制御部に過剰な電気負荷が加わることを避けることができる。【００１７】
訓練装置は、累計時間計測部をさらに備えてもよい。累計時間計測部は、第１の時間の間に生じた位置偏差が、第１の閾値よりも小さい第２の閾値以上、かつ、第１の閾値未満である累計時間を計測する。この場合、判断部は、この累計時間が第３の時間以上である場合にエラーと判断してもよい。
第１の時間の間に生じた位置偏差が、第２の閾値以上、かつ、第１の閾値未満である時間を、累計時間計測部が計測することにより、ゆっくりと変化する位置偏差が継続している時間（累計時間）を測定できる。また、判断部が、累計時間が所定時間の第３の時間以上の場合にエラーを発生させることにより、ゆっくりと変化する位置偏差に対して、第３の時間までは訓練を継続できる。第２の閾値は患者の肢に過度な負荷をかけていないと判断される閾値であるので、このとき発生するエラーは、その患者にとって、設定された訓練プログラムの難易度が高く、その訓練プログラムを適切に実施できていない場合や、装置内の部品が徐々に故障に至る予兆を検出することに対して好適に利用できる。この判断によって、患者はその症状に応じて、適切な訓練プログラムを実施することができる。【００１８】
訓練装置は、指令作製部と、モータ駆動部とをさらに備えていてもよい。指令作製部は、訓練プログラムに従って、モータの速度を制御するための指令である速度指令を作製する。モータ駆動部は、速度指令に基づいて、モータを駆動させる。また、速度指令は、少なくとも、モータを加速させる指令である加速指令と、モータを減速させる減速指令と、のいずれかを含んでいてもよい。さらに、モータ駆動部は、加速指令実行時において、位置偏差を累積保持するようにモータを駆動してもよい。
指令作製部により作製された、加速指令と減速指令とを少なくとも含む速度指令を用いて、モータを駆動することにより、モータは訓練プログラムと患者の操作に対応して、スムーズに動作できる。その結果、患者は、操作ロッドを意図したように操作することができる。
また、モータ駆動部が、加速指令実行時において位置偏差を累積保持するようにモータを駆動することにより、特に短時間における位置偏差が生じやすい加速指令実行時に、患者による操作ロッド始動時や停止時などにおいて位置偏差が生じた場合でも、患者は、訓練装置を用いて、訓練を継続できる。また、位置偏差を累積保持することにより、位置偏差の累積保持量に基づいて、訓練中における患者の肢の状況を把握できる。【００１９】
速度指令は、定速指令をさらに含んでいてもよい。定速指令は、モータを一定速度で回転させる指令である。また、定速指令は、加速指令又は減速指令の前後のいずれかに配置される。また、モータ駆動部は、定速指令実行時において、位置偏差を累積保持するようにモータを駆動してもよい。
速度指令が定速指令をさらに含むことにより、操作ロッドが大きな傾動角度にて動作する場合にも、フィードバック電流値に基づいて、モータを一定速度でスムーズに動作できる。また、定速指令実行時において位置偏差を累積保持するようにモータを駆動することにより、相対的に大きなモータトルクを必要とし位置偏差が生じやすい、例えば操作ロッドが大きな傾動角度にて動作する場合においても、患者は、訓練装置を用いて訓練を継続できる。【００２０】
モータ駆動部は、加速指令及び／又は定速指令実行時において、速度指令のみに追従するようにモータを駆動してもよい。これにより、加速指令実行時及び／又は定速指令実行時に、位置偏差に関わらずモータを駆動できる。その結果、相対的に大きなモータトルクを必要とし位置偏差が生じやすい、例えば操作ロッドが大きな傾動角度にて動作する場合においても、患者は、訓練装置を用いて訓練を継続できる。【００２１】
指令作製部は、訓練プログラムに従って、操作ロッドの傾動角度を制御するための指令である位置指令をさらに作製してもよい。また、モータ駆動部は、減速指令実行時において、速度指令及び位置指令に追従するよう、モータを駆動してもよい。
これにより、モータ駆動部は、操作ロッドが訓練プログラムに指示された目標傾動角度まで極力偏差を少なくして到達するよう、モータを制御できる。その結果、患者に対して、操作ロッドの位置情報を視覚的情報としてフィードバックする場合においても、この位置情報を好適に利用することができる。【００２２】
モータ駆動部は、操作ロッドの傾動角度が減速開始位置に到達したときに、累積保持した位置偏差をリセットしてもよい。ここで、累積保持した位置偏差をリセットするとは、累積保持された位置偏差を０とすることである。これにより、減速時において、モータの速度が位置指令によって、過剰に上昇することを抑制できる。その結果、患者は、訓練装置を用いて、訓練ができる。
【発明の効果】
【００２３】
位置偏差の時間的な変化の違いと、操作ロッドが上肢および下肢等の肢を動作させるために必要とする負荷量とを正確にモニターできることによって、患者に適切なリハビリテーションを提供することができる。また、これらのモニター情報に基づき、適切に操作ロッドを制御できるので、その患者の状態に応じて、適切な訓練プログラムを提供することができる。
【図面の簡単な説明】
【００２４】
【図１】訓練装置を模式的に示した図。
【図２】制御部と、操作ロッド傾動機構の全体構成を示す図。
【図３】操作ロッドの構成を示す図。
【図４】制御部の全体構成を示す図。
【図５Ａ】三角速度軌道型の速度指令を時間−速度座標上に表した図。
【図５Ｂ】台形速度軌道型の速度指令を時間−速度座標上に表した図。
【図６】位置指令を時間−傾動角度座標上に表した図。
【図７Ａ】モータ制御部の基本的な構成を示した図。
【図７Ｂ】累計時間計測部を有したモータ制御部の構成を示した図。
【図７Ｃ】累計時間計測部及びフィードバック電流制限部を有したモータ制御部の構成を示した図。
【図８】モータ駆動部の構成を示す図。
【図９】訓練装置の基本動作を示すフローチャート。
【図１０】モータの制御方法を示したフローチャート。
【図１１】操作ロッドの傾動角度が減速指令を実行すべき傾動角度であるかどうかをチェックする様子を模式的に示した図。
【図１２】累積保持された位置偏差を模式的に示した図。
【図１３】位置偏差過大判定方法を示すフローチャート。
【図１４】フィードバック電流値を用いた過負荷継続検出方法を示したフローチャート。
【図１５】モータの実際の回転速度と速度指令との関係、及び、速度偏差の発生に起因するフィードバック電流の時間変化について模式的に示した図。
【図１６】長時間に亘り速度偏差が大きい速度変化が発生した場合のフィードバック電流の時間変化を示した図。
【図１７】位置偏差を用いた過負荷継続検出方法を示したフローチャート。
【図１８】図１５に示したような速度変化が発生したときの、操作ロッドの実際の傾動角度と、位置指令に示されている指示傾動角度との関係を示した図。
【発明を実施するための形態】
【００２５】
１．第１実施形態
（１）訓練装置の全体構成
第１実施形態に係る訓練装置１００の全体構成を、図１を用いて説明する。図１は、訓練装置１００を模式的に示した図である。訓練装置１００は、所定の訓練プログラムに従って、患者の肢の運動機能回復を目的とした訓練を行うための訓練装置である。
訓練装置１００は、固定フレーム１と、操作ロッド３と、訓練指示部５、とを主に備える。固定フレーム１は、訓練装置１００を設置する床面上又は床面に近接して載置される。また、固定フレーム１は、訓練装置１００の本体筐体を形成している。操作ロッド３は、固定フレーム１内部に備えられた操作ロッド傾動機構１３（図２）を介して、固定フレーム１に取り付けられている。この結果、操作ロッド３は、操作ロッド傾動機構１３により、少なくとも１自由度において、固定フレーム１の長さ方向に平行なＸ軸、及び、固定フレーム１の幅方向に平行なＹ軸（図１及び図２）方向に傾動可能となる。また、操作ロッド３は、内部に操作ロッド３を長手軸方向に伸縮させる伸縮機構（図３）を備えてもよい。このとき、操作ロッド３は、操作ロッド３の長さ方向にも伸縮可能となるので、操作ロッド傾動機構と合わせて少なくとも２自由度又は３自由度にて動作できる。
【００２６】
また、操作ロッド３は、その上端部に肢支持部材３１（後述）を有している。患者の肢を肢支持部材３１に支持することにより、操作ロッド３によって患者の肢を動かすことを可能とする。または、患者が自ら操作ロッド３を動かすことを可能とする。
【００２７】
訓練指示部５は、固定部材７を介して、固定フレーム１に固定されている。訓練指示部５は、予め設定した訓練プログラムを実行し、必要に応じて、制御部１１（図２）に操作ロッド３を動作させるための操作ロッド動作指令を送信する。また、訓練指示部５は、予め設定された訓練プログラムによって、訓練ルートと実際の患者の肢の訓練動作を視覚的情報又は聴覚的情報によって提供する。これにより、患者は、訓練プログラムにより設定された訓練動作と実際の動作とをフィードバックしながら、肢の訓練を行える。
【００２８】
また、訓練指示部５は、判断部１１３４（図７Ａ〜図７Ｃ）がエラーと判断したときに、使用者に対して、エラー発生を知らせる視覚的情報又は聴覚的情報を提供する。これにより、使用者に対して、訓練装置１００の状態、すなわち、エラーが発生していること、及び／又は、エラー発生の原因などを知らせることができる。
【００２９】
さらに、訓練指示部５は、患者が訓練プログラムにおいて設定された訓練ルートにおいて予め設定した通過点（目標傾動角度と呼ぶこともある）に操作ロッド３を到達させたときに、使用者に対して、訓練プログラムの達成などを知らせる視覚的情報又は／及び聴覚的情報を提供する。これにより、使用者は、操作ロッド３を訓練プログラム通りに操作できたことを知ることができる。また、使用者に対して、患者が予め設定した通過点に操作ロッド３を到達させたことを視覚的情報又は聴覚的情報により知らせることにより、患者が訓練を続けるためのモチベーションを維持できる。
【００３０】
訓練指示部５としては、液晶ディスプレーなどの表示装置と、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｉｓｋ）などの記憶装置と、必要に応じてタッチパネルなどの入力装置と、を備えた、一体型コンピュータシステムを用いることができる。また、訓練指示部５は、表示装置と、その他のコンピュータシステムとが分離して構成されていてもよい。この場合、固定フレーム１に固定部材７を介して固定されるのは、表示装置である。
【００３１】
訓練指示部５において実行される訓練プログラムは、例えば、（ｉ）ガイデッドモード（Ｇｕｉｄｅｄ  Ｍｏｄｅ）、（ｉｉ）イニシエーティッドモード（Ｉｎｉｔｉａｔｅｄ  Ｍｏｄｅ）、（ｉｉｉ）ステップイニシエーティッドモード（Ｓｔｅｐ  Ｉｎｉｔｉａｔｅｄ  Ｍｏｄｅ）、（ｉｖ）フォローアシストモード（Ｆｏｌｌｏｗ  Ａｓｓｉｓｔ  Ｍｏｄｅ）、（ｖ）フリーモード（Ｆｒｅｅ  Ｍｏｄｅ）という、５つの訓練モードを有している。ガイデッドモードは、操作ロッド３が患者の肢の動きに関係なく、肢を予め決められた方向に一定速度で動かす訓練モードである。イニシエーティッドモードは、訓練プログラムにおいて予め設定された訓練ルートに対して、患者が肢により操作ロッド３を初動位置にて正しい方向に動かそうとした力（力覚トリガーと呼ぶこともある）を検出した場合に、操作ロッド３が患者の肢を予め決められた訓練ルートの方向に一定速度で動かす訓練モードである。ステップイニシエーティッドモードは、操作ロッド３の訓練ルート中の所定の箇所において、力覚トリガーを検出したとき、訓練ルートにおける一定距離だけ、操作ロッド３が患者の肢を動かす訓練モードである。フォローアシストモードは、所定周期毎に力覚トリガーを検出して、検出した力覚トリガーの大きさに応じて、操作ロッド３の速度を変化させる訓練モードである。フリーモードは、患者の肢の動きに追従するように操作ロッド３を動かす訓練モードである。
【００３２】
また、訓練装置１００は、患者が訓練中に腰掛けるための椅子９をさらに備えていてもよい。椅子９は、椅子接続部材９１を介して、固定フレーム１に接続されていることにより、訓練装置１００の安定性を確保できる。また、椅子接続部材９１を再現良く固定することにより、患者が毎回訓練を同じ位置で実施することができる。
【００３３】
（２）制御部及び操作ロッド傾動機構の構成
Ｉ．全体構成
次に、制御部１１と、操作ロッド傾動機構１３の全体構成について図２を用いて説明する。図２は、固定フレーム１内に配置された制御部１１と、操作ロッド傾動機構１３の全体構成を示す図である。
制御部１１と、操作ロッド傾動機構１３は、固定フレーム１内に配置されている。制御部１１は、訓練指示部５と信号送受信可能に接続されている。制御部１１は、訓練指示部５から送信される操作ロッド動作指令を受信する。また、制御部１１は、Ｘ軸方向傾動モータ１３５ｂ（後述）、Ｙ軸方向傾動モータ１３５ａ（後述）、及び伸縮モータ３５９（図３）に電気的に接続されている。したがって、制御部１１は、操作ロッド動作指令に基づいて、上記３つのモータを駆動する。なお、制御部１１の構成及び動作については、後ほど詳しく説明する。
操作ロッド傾動機構１３は、固定フレーム１に固定された操作ロッド傾動機構固定部材１５ａ、１５ｂを介して、固定フレーム１に傾動可能に取り付けられている。これにより、操作ロッド傾動機構１３は、操作ロッド３をＸ軸方向及びＹ軸方向（２自由度）に傾動可能とする。以下に、操作ロッド傾動機構１３の構成について、詳細に説明する。
なお、操作ロッド傾動機構１３は、操作ロッド３をＸ軸方向又はＹ軸方向のみ（１自由度）に傾動可能となるよう構成されていてもよい。又は、操作ロッド傾動機構１３は、設定により、操作ロッド３を１自由度にて傾動させるか、２自由度にて傾動させるかを選択可能になっていてもよい。
【００３４】
ＩＩ．操作ロッド傾動機構の構成
ここで、本実施形態の操作ロッド傾動機構１３の構成について、図２を用いて説明する。操作ロッド傾動機構１３は、２軸を可動させうる「ジンバル」機構により、操作ロッド３をＸ軸方向及びＹ軸方向に傾動可能とする機構である。また、本実施形態の操作ロッド傾動機構１３は、同時にＸ軸方向及びＹ軸方向の両方（すなわち斜め方向）に傾動可能でもある。ここで、Ｘ軸方向とは、図２において、固定フレーム１の長さ方向に平行な水平方向である。Ｙ軸方向とは、図２において、固定フレーム１の幅方向に平行な水平方向である。
操作ロッド傾動機構１３は、Ｘ軸方向傾動部材１３１と、Ｙ軸方向傾動部材１３３と、それぞれに対応するＸ軸方向傾動モータ１３５ｂと、Ｙ軸方向傾動モータ１３５ａと、を有している。
なお、操作ロッド傾動機構１３が操作ロッド３を１自由度にて傾動させる場合、操作ロッド傾動機構１３は、Ｘ軸方向傾動部材１３１とＸ軸方向傾動モータ１３５ｂとのみを備えるか、又は、Ｙ軸方向傾動部材１３３とＹ軸方向傾動モータ１３５ａとのみを備えていれば十分である。あるいは、操作ロッド傾動機構１３が上記４つの部材及びモータを備えている場合であっても、いずれかの部材とモータとの組み合わせを無効にすることにより、操作ロッド傾動機構１３は、操作ロッド３を１自由度にて傾動可能となる。
【００３５】
Ｘ軸方向傾動部材１３１は、Ｙ軸方向傾動部材１３３の空間の内側に配置されている。また、Ｘ軸方向傾動部材１３１は、Ｙ軸に平行な法線を有する２つの側面から外側に伸びる２つの軸１３１ａ、１３１ｂを有している。この２つの軸１３１ａ、１３１ｂのそれぞれが、Ｙ軸方向傾動部材１３３のＹ軸に平行な法線を有する２つの側面のそれぞれに、Ｘ軸方向傾動部材１３１をＹ軸回りに回動可能なように支持されている。これにより、Ｘ軸方向傾動部材１３１は、Ｘ軸方向傾動部材１３１に固定された操作ロッド３とＸ軸とがなす角度を変化させることができる。ここで、操作ロッド３とＸ軸とがなす角度を変化可能にすることを、「Ｘ軸方向に傾動する」と呼ぶこともある。
なお、操作ロッド３は、Ｘ軸方向傾動部材１３１の空間Ｓに一部が挿入された状態で、Ｘ軸方向傾動部材１３１に固定される。
【００３６】
同様に、Ｙ軸方向傾動部材１３３は、Ｘ軸に平行な法線を有する２つの側面から外側へ伸びる２つの軸１３３ａ、１３３ｂを有している。この２つの軸１３３ａ、１３３ｂのそれぞれが、操作ロッド傾動機構固定部材１５ａ、１５ｂに、Ｙ軸方向傾動部材１３３をＸ軸回りに回動可能なように支持されている。これにより、Ｙ軸方向傾動部材１３３は、操作ロッド傾動機構固定部材１５ａ、１５ｂに対して、Ｘ軸回りに回動可能となる。その結果、Ｙ軸方向傾動部材１３３は、Ｘ軸方向傾動部材１３１に固定された操作ロッド３とＹ軸とがなす角度を変化させることができる。ここで、操作ロッド３とＹ軸とがなす角度を変化可能にすることを、「Ｙ軸方向に傾動する」と呼ぶこともある。
【００３７】
このように、Ｙ軸方向傾動部材１３３は、操作ロッド３をＹ軸方向に傾動させ、Ｘ軸方向傾動部材１３１は、操作ロッド３をＸ軸方向に傾動させる。このため、操作ロッド傾動機構１３は、操作ロッド３を２次元の自由度にて傾動できる。
なお、図２ではＸ軸方向傾動部材１３１は、Ｙ軸方向傾動部材１３３の空間の内側に配置されているが、Ｘ軸方向傾動部材１３１を、Ｙ軸方向傾動部材１３３の空間の外側に配置し、それに対応する部材を傾動できるように設計変更してもよい。
【００３８】
Ｙ軸方向傾動モータ１３５ａは、操作ロッド傾動機構固定部材１５ａに固定されている。また、Ｙ軸方向傾動モータ１３５ａの出力回転軸は、図示されない減速機構を介して、Ｙ軸方向傾動部材１３３から伸びる軸１３３ａと、軸１３３ａを回動可能なように接続されている。このため、Ｙ軸方向傾動モータ１３５ａは、Ｙ軸方向傾動部材１３３をＸ軸回りに回動させる。さらに、Ｙ軸方向傾動モータ１３５ａは、制御部１１と電気的に接続されている。したがって、Ｙ軸方向傾動モータ１３５ａは、制御部１１による制御により、操作ロッド３をＹ軸方向に傾動できる。
【００３９】
Ｘ軸方向傾動モータ１３５ｂは、Ｙ軸方向傾動部材１３３の４つの側面のうち、Ｘ軸方向傾動部材１３１から伸びる軸１３１ａを軸支している側面に固定されている。また、Ｘ軸方向傾動モータ１３５ｂの出力回転軸は、図示されない減速機構を介して、Ｘ軸方向傾動部材１３１から伸びる軸１３１ａと、軸１３１ａを回動可能なように接続されている。このため、Ｘ軸方向傾動モータ１３５ｂは、Ｘ軸方向傾動部材１３１をＹ軸回りに回動可能となっている。さらに、Ｘ軸方向傾動モータ１３５ｂは、制御部１１と電気的に接続されている。したがって、Ｘ軸方向傾動モータ１３５ｂは、制御部１１による制御により、操作ロッド３をＸ軸方向に傾動できる。
【００４０】
このように、Ｙ軸方向傾動モータ１３５ａ及びＸ軸方向傾動モータ１３５ｂは、制御部１１による制御により、操作ロッド３を、Ｘ軸方向及びＹ軸方向各々に対し１自由度で傾動させる。すなわち、Ｘ軸方向傾動モータ１３５ｂ及びＹ軸方向傾動モータ１３５ａを具備することにより、操作ロッド３を２次元にて制御できる。
【００４１】
Ｙ軸方向傾動モータ１３５ａ及びＸ軸方向傾動モータ１３５ｂとしては、例えば、サーボモータやブラシレスモータなどの、電動モータを用いることができる。
【００４２】
（３）操作ロッドの構成
Ｉ．全体構成
次に、操作ロッド３の構成について、図３を用いて説明する。まず、操作ロッド３の全体構成について説明する。図３は、操作ロッド３の構成を示す図である。操作ロッド３は、肢支持部材３１と、固定ステイ３３と、伸縮機構３５と、を備えている。肢支持部材３１は、伸縮機構３５のカバー３５３（後述）の上端部に固定されている。肢支持部材３１は、患者の肢を支持する部材である。固定ステイ３３は、操作ロッド３の本体を形成している。また、固定ステイ３３は、伸縮機構３５の可動ステイ３５１（後述）を収納する空間Ｓ’を有している。さらに、固定ステイ３３は、操作ロッド３を操作ロッド傾動機構１３のＸ軸方向傾動部材１３１に固定するための固定部材（図示せず）を有している。固定ステイ３３の当該固定部材により固定ステイ３３をＸ軸方向傾動部材１３１に固定することにより、操作ロッド３は、操作ロッド傾動機構１３に固定される。
【００４３】
伸縮機構３５は、固定ステイ３３の長さ方向に沿って移動可能なように、固定ステイ３３に設けられる。これにより、操作ロッド３は、操作ロッド３の長さ方向に伸縮可能となる。以下、伸縮機構３５の構成について詳しく説明する。
【００４４】
ＩＩ．伸縮機構の構成
次に、伸縮機構３５の構成について、図３を用いて説明する。伸縮機構３５は、可動ステイ３５１と、カバー３５３と、ナット３５５と、ねじ軸３５７（後述）と、伸縮モータ３５９と、を有している。
可動ステイ３５１は、固定ステイ３３に設けられた空間Ｓ’に挿入されている。また、可動ステイ３５１は、図示しないスライドユニットを有している。このスライドユニットは、固定ステイ３３の内壁に設けられた案内レール３７に摺動可能に係合している。その結果、可動ステイ３５１は、固定ステイ３３に設けられた空間Ｓ’内を案内レール３７に沿って移動可能となる。カバー３５３は、可動ステイ３５１の上端部に固定されている。これにより、カバー３５３は、可動ステイ３５１の移動に応じて、操作ロッド３の長さ方向に移動できる。また、カバー３５３は、上端部に肢支持部材３１を備えている。そのため、カバー３５３は、固定ステイ３３の長さ方向に肢支持部材３１を移動できる。
【００４５】
ナット３５５は、可動ステイ３５１の底部に取り付けられている。ナット３５５は、ねじ軸３５７を螺合する。ねじ軸３５７は、固定ステイ３３の長さ方向と平行な方向に伸びる、ねじ山が設けられた部材である。また、ねじ軸３５７は、ナット３５５に螺合されている。よって、ねじ軸３５７は、回転することにより、ナット３５５をねじ軸３５７の長さ方向（すなわち、固定ステイ３３の長さ方向（長手軸線方向））に沿って移動できる。
上述したように、ナット３５５は可動ステイ３５１の底部に固定されているため、ナット３５５がねじ軸３５７の長さ方向に沿って移動することにより、可動ステイ３５１は固定ステイ３３の長さ方向に沿って移動可能となる。
【００４６】
伸縮モータ３５９は、固定ステイ３３の底部に固定されている。また、伸縮モータ３５９の出力回転軸は、ねじ軸３５７の長さ方向の端部に、ねじ軸３５７を軸回りに回転可能なように接続されている。さらに、伸縮モータ３５９は、制御部１１と電気的に接続されている。このため、伸縮モータ３５９は、制御部１１からの制御により、ねじ軸３５７を、ねじ軸３５７の軸回りに回転できる。
上述したように、ナット３５５はねじ軸３５７に螺合されているため、ナット３５５は、ねじ軸３５７の回転に応じて、ねじ軸３５７の長さ方向に沿って移動可能となっている。そのため、可動ステイ３５１は、伸縮モータ３５９の回転に応じて、固定ステイ３３の長さ方向（長手軸線方向）に沿って移動可能となる。
【００４７】
（４）制御部の構成
Ｉ．全体構成
次に、制御部１１の全体構成について、図４を用いて説明する。図４は、制御部１１の全体構成を示す図である。制御部１１としては、例えば、ＣＰＵと、ＲＡＭ、ＲＯＭ、ハードディスク装置、ＳＳＤなどの記憶装置と、電気信号を変換するインターフェースなどを備えたマイコンシステムなどを用いることができる。また、以下に説明する制御部１１の機能の一部又は全部は、マイコンシステムにおいて実行可能なプログラムとして実現されていてもよい。また、当該プログラムは、マイコンシステムの記憶装置に記憶されていてもよい。さらに、制御部１１の機能の一部又は全部は、カスタムＩＣなどにより実現されていてもよい。
制御部１１は、指令作製部１１１と、モータ制御部１１３ａ、１１３ｂ、１１３ｃと、を有する。
【００４８】
指令作製部１１１は、訓練指示部５と、モータ制御部１１３ａ、１１３ｂ、１１３ｃとに信号送受信可能に接続されている。指令作製部１１１は、訓練指示部５から送信される操作ロッド動作指令に基づいて、モータ制御部１１３ａ、１１３ｂ、１１３ｃのそれぞれが、Ｙ軸方向傾動モータ１３５ａ、Ｘ軸方向傾動モータ１３５ｂ、及び伸縮モータ３５９を駆動するための指令を作製する。
【００４９】
指令作製部１１１において作製される指令には、速度指令と位置指令とがある。速度指令とは、モータの回転速度（操作ロッド３の単位時間あたりの傾動角度又は伸縮する長さの変化量）を制御するための指令のことである。また、位置指令とは、操作ロッド３の傾動角度又は伸縮長さを制御するための指令のことである。
後述するように、モータ制御部１１３ａ、１１３ｂ、１１３ｃが速度指令に基づいて上記モータを制御するとき、上記モータは速度指令に指示された速度に追従するように制御される。すなわち、速度指令に指示された速度と実際のモータの回転速度との間に差（速度偏差）が存在するときに、モータ制御部１１３ａ、１１３ｂ、１１３ｃは、速度偏差を解消するように上記モータを制御する。
【００５０】
一方、モータ制御部１１３ａ、１１３ｂ、１１３ｃが位置指令に基づいて上記モータを制御するとき、上記モータは、操作ロッド３の傾動角度又は伸縮長さを位置指令に指示された傾動角度（指示傾動角度）又は伸縮長さ（指示伸縮長さ）に追従させるように制御される。すなわち、位置指令に指示された傾動角度と操作ロッド３の実際の傾動角度、又は位置指令に指示された伸縮長さと操作ロッド３の実際の伸縮長さとの間に差（位置偏差）が存在するときに、モータ制御部１１３ａ、１１３ｂ、１１３ｃは、位置偏差を解消するように上記モータを制御する。
【００５１】
なお、指令作製部１１１において作製される速度指令及び位置指令は、時間の関数である。一方、訓練指示部５から送信される操作ロッド動作指令は、少なくとも操作ロッド３をどの傾動角度まで移動させるかに関する情報（目標位置情報）と、操作ロッド３の単位時間あたりの傾動角度又は伸縮長さの変化量（傾動角度速度ないしは伸縮長さ速度）に関する情報（目標速度情報）とを含み、さらには操作ロッド３の傾動角度速度又は伸縮長さ速度を所望の傾動角度速度又は伸縮長さ速度まで到達させるための加速度に関する情報（加速度情報）と、操作ロッド３を動作状態から停止状態にするための減速度に関する情報（減速度情報）と、を含む。
【００５２】
すなわち、速度指令及び位置指令を作製する元となる操作ロッド動作指令には、時間に関する情報が含まれていない。しかし、操作ロッド動作指令には、距離に関する情報（目標位置情報に対応）、速度に関する情報（目標速度情報に対応）が含まれており、さらには加速度に関する情報（加速度情報及び減速度情報に対応）が含まれている。したがって、これらの情報から、時間に関する情報は算出できる。
よって、指令作製部１１１は、操作ロッド動作指令に含まれる目標位置情報、目標速度情報、さらには加速度情報、及び減速度情報も適切に組み合わせて計算することにより、時間の関数である速度指令及び位置指令を作製できる。
【００５３】
また、指令作製部１１１において作製される速度指令には、図５Ａ及び図５Ｂに示すような、２種類の速度指令がある。１つは、図５Ａに示されるように、モータを一定の加速度にて加速させる加速指令と、モータを一定の減速度にて減速させる減速指令とのみを含んだ速度指令である。このような速度指令を、時間を横軸に速度を縦軸にした座標上に表すと、三角形状のグラフになる。したがって、このような速度指令を、三角速度軌道型の速度指令と呼ぶこともある。速度指令が三角速度軌道となる場合は、例えば、現在の操作ロッド３の傾動角度から、訓練指示部５において指示された操作ロッド３の目標傾動角度までの間に移動する操作ロッド３の移動距離が短い場合や、操作ロッド動作指令に指示されたモータの加速度や減速度が小さい場合などである。
このように、速度指令に加速指令と減速指令とが含まれることにより、モータ制御部１１３ａ、１１３ｂ、１１３ｃは、モータをスムーズに制御できる。
【００５４】
もう１つは、図５Ｂに示されるように、加速指令と、減速指令とに加えて、モータを一定速度で回転させる定速指令をさらに含む速度指令である。このような速度指令を、時間を横軸に速度を縦軸にした座標上に表すと、台形状のグラフになる。したがって、このような速度指令を、台形速度軌道型の速度指令と呼ぶこともある。速度指令が台形速度軌道となる場合は、例えば、現在の操作ロッド３の傾動角度から、訓練指示部５において指示された操作ロッド３の目標傾動角度までの間に移動する操作ロッド３の移動距離が大きい場合や、モータの加速度や減速度が大きい場合などである。
このように、速度指令が定速指令をさらに含むことにより、操作ロッド３が大きな傾動角度にて動作する場合にも、モータ制御部１１３ａ、１１３ｂ、１１３ｃは、モータをスムーズに動作できる。
【００５５】
一方、指令作製部１１１において作製される位置指令は、時間を横軸に位置（傾動角度）を縦軸にした座標上に表すと、図６に示すような形状となる。位置指令は、速度指令の時間の積分値に対応する。図６に示す位置指令は、図５Ｂに示した台形速度軌道型の速度指令に対応する位置指令である。したがって、台形速度軌道型の速度指令において、正の傾きで速度が増加する時間が０からｔ１まで（加速指令区間）の間、位置指令は、時間が０のときに頂点となる下に凸の放物線形状となる。速度指令において速度が水平軸と平行な直線となるまでの、時間がｔ１からｔ２まで（定速指令区間）の間、位置指令は正の傾きで直線的に増加する。そして、速度指令において速度が負の傾きで減少する、時間ｔ２からｔ３まで（減速指令区間）の間、位置指令は、時間がｔ３のときに頂点となる上に凸の放物線形状となる。
【００５６】
モータ制御部１１３ａ、１１３ｂ、１１３ｃは、指令作製部１１１と信号送受信可能に接続されている。このため、モータ制御部１１３ａ、１１３ｂ、１１３ｃは、指令作製部１１１から速度指令及び位置指令を受信できる。また、モータ制御部１１３ａ、１１３ｂ、１１３ｃは、それぞれ、Ｙ軸方向傾動モータ１３５ａ、Ｘ軸方向傾動モータ１３５ｂ、伸縮モータ３５９と、電気的に接続されている。したがって、モータ制御部１１３ａ、１１３ｂ、１１３ｃは、速度指令及び／又は位置指令に基づき、上記のモータを制御できる。
さらに、モータ制御部１１３ａ、１１３ｂ、１１３ｃは、それぞれ、Ｙ軸方向傾動モータ１３５ａ用の第１回転情報出力センサ１３５ａ−１、Ｘ軸方向傾動モータ１３５ｂ用の第２回転情報出力センサ１３５ｂ−１、伸縮モータ３５９用の第３回転情報出力センサ３５９−１に、信号送受信可能に接続されている。
【００５７】
第１回転情報出力センサ１３５ａ−１、第２回転情報出力センサ１３５ｂ−１、第３回転情報出力センサ３５９−１は、それぞれ、Ｙ軸方向傾動モータ１３５ａの出力回転軸、Ｘ軸方向傾動モータ１３５ｂの出力回転軸、伸縮モータ３５９の出力回転軸に、固定されるのが通例である。これにより、第１回転情報出力センサ１３５ａ−１、第２回転情報出力センサ１３５ｂ−１、第３回転情報出力センサ３５９−１は、それぞれ、Ｙ軸方向傾動モータ１３５ａの回転量、Ｘ軸方向傾動モータ１３５ｂの回転量、伸縮モータ３５９の回転量を出力できる。
第１回転情報出力センサ１３５ａ−１、第２回転情報出力センサ１３５ｂ−１、第３回転情報出力センサ３５９−１としては、モータの出力回転軸の回転量が測定可能なセンサを用いることができる。このようなセンサとして、例えば、インクリメンタル型のエンコーダや、アブソリュート型のエンコーダなどのエンコーダを好適に用いることができる。
センサにエンコーダを使用した場合、第１回転情報出力センサ１３５ａ−１、第２回転情報出力センサ１３５ｂ−１、及び第３回転情報出力センサ３５９−１は、それぞれ、Ｙ軸方向傾動モータ１３５ａの回転量、Ｘ軸方向傾動モータ１３５ｂの回転量、伸縮モータ３５９の回転量に応じたパルス信号を出力する。
【００５８】
このように、モータ制御部１１３ａ、１１３ｂ、１１３ｃが、モータの出力回転軸の回転量を測定する第１回転情報出力センサ１３５ａ−１、第２回転情報出力センサ１３５ｂ−１、第３回転情報出力センサ３５９−１と接続されることにより、モータ制御部１１３ａ、１１３ｂ、１１３ｃは、実際のモータの回転量などを考慮して、上記のモータを制御できる。
【００５９】
次に、モータ制御部１１３ａ、１１３ｂ、１１３ｃについて詳しく説明する。以下の説明においては、モータ制御部１１３ａを例として用いて説明する。なぜなら、他のモータ制御部１１３ｂ、１１３ｃも、モータ制御部１１３ａと同じ構成を有し、同じ動作を行うからである。
【００６０】
ＩＩ．モータ制御部の構成
モータ制御部１１３ａの構成について、図７Ａを用いて説明する。図７Ａは、モータ制御部１１３ａの基本的な構成を示した図である。
モータ制御部１１３ａは、傾動角度算出部１１３１と、位置偏差算出部１１３２と、フィードバック電流検出部１１３３と、判断部１１３４と、モータ駆動部１１３５と、を有する。
傾動角度算出部１１３１は、第１回転情報出力センサ１３５ａ−１と信号送受信可能に接続されている。これにより、傾動角度算出部１１３１には、第１回転情報出力センサ１３５ａ−１にて測定されたＹ軸方向傾動モータ１３５ａの出力回転軸の回転量に応じて出力されたパルス信号が入力される。そして、傾動角度算出部１１３１は、第１回転情報出力センサ１３５ａ−１から出力されたパルス信号に含まれたパルス数から、操作ロッド３の傾動角度を算出する。
【００６１】
位置偏差算出部１１３２は、傾動角度算出部１１３１と信号送受信可能に接続されている。これにより、位置偏差算出部１１３２には、傾動角度算出部１１３１において算出された操作ロッド３の傾動角度が入力される。また、位置偏差算出部１１３２は、指令作製部１１１と信号送受信可能に接続されている。これにより、位置偏差算出部１１３２には、指令作製部１１１にて作製された位置指令が入力される。
位置偏差算出部１１３２は、傾動角度算出部１１３１において算出された実際の操作ロッド３の傾動角度と、位置指令において指示された操作ロッド３の傾動角度（指示傾動角度）との差を、位置偏差として算出する。また、位置偏差算出部１１３２は、予め設定された第１の時間Ｔ１毎に、位置偏差を算出する。なお、位置偏差を算出するタイミングを決定する第１の時間Ｔ１は、必要に応じて任意に設定可能としておいてもよい。
【００６２】
フィードバック電流検出部１１３３は、モータ駆動部１１３５（後述）の出力に電気的に接続されている。これにより、フィードバック電流検出部１１３３は、モータ駆動部１１３５からＹ軸方向傾動モータ１３５ａに出力されるフィードバック電流Ｉの電流値を検出できる。この場合、フィードバック電流検出部１１３３としては、モータの巻線に流れる電流値を測定可能な装置を用いることができる。例えば、フィードバック電流検出部１１３３としては、シャント抵抗、クランプ電流計、又はトランスカレントなどを用いることができる。
又は、フィードバック電流検出部１１３３は、速度制御部１１３５−１（図８）及び／又は位置制御部１１３５−２（図８）から出力され、電力供給部１１３５−４（図８）を制御するための第１制御量及び／又は第２制御量の信号値を検出してもよい。この場合、フィードバック電流検出部１１３３は、モータ駆動部１１３５の電力供給部１１３５−４（図８）の入力に信号送受信可能に接続される。この場合、フィードバック電流検出部１１３３は、合成部１１３５−７（図８）から出力される、第１制御量と第２制御量の合成制御量を検出する。これにより、フィードバック電流検出部１１３３は、モータの巻線を流れる電流値を測定する装置を必要とすることなく、フィードバック電流Ｉの電流値を予測できる。
また、フィードバック電流検出部１１３３は、フィードバック電流Ｉの電流値が第１電流値Ｉ１以上であるかどうかを判定するための、判定部（図示せず）を有している。
【００６３】
判断部１１３４は、位置偏差算出部１１３２及びフィードバック電流検出部１１３３と、信号送受信可能に接続されている。判断部１１３４は、（ｉ）位置偏差算出部１１３２において算出された第１の時間Ｔ１（後述）の間に生じた位置偏差が第１の閾値φ１（後述）以上であるか、及び、（ｉｉ）フィードバック電流検出部１１３３において検出された、フィードバック電流Ｉの電流値が第１電流値Ｉ１（後述）以上である時間が、第２の時間Ｔ２（後述）以上持続しているかを判断する。そして、上記条件（ｉ）又は（ｉｉ）が「真」である場合に、エラーと判断する。
【００６４】
モータ駆動部１１３５は、位置指令と速度指令を与える指令作製部１１１（指令作製部１１１と位置指令および速度指令の関係は図示されていない）と信号送受信可能に接続されている。このため、モータ駆動部１１３５には、指令作製部１１１から位置指令及び速度指令が入力される。また、モータ駆動部１１３５は、Ｙ軸方向傾動モータ１３５ａと電気的に接続されている。さらに、モータ駆動部１１３５は、第１回転情報出力センサ１３５ａ−１と、信号送受信可能に接続されている。
このため、モータ駆動部１１３５は、速度指令及び／又は位置指令と、Ｙ軸方向傾動モータ１３５ａの回転量に基づいて、Ｙ軸方向傾動モータ１３５ａを制御できる。なお、モータ駆動部１１３５の詳細については、後ほど説明する。
【００６５】
モータ制御部１１３ａは、図７Ｂに示す第１変形例として、累計時間計測部１１３６をさらに有していてもよい。累計時間計測部１１３６は、位置偏差算出部１１３２に信号送受信可能に接続されている。累計時間計測部１１３６は、位置偏差算出部１１３２において算出された第１の時間Ｔ１の間に生じた位置偏差が、第２の閾値φ２（後述）以上、かつ、第１の閾値φ１未満である時間（累計時間ｔＡ）を計測する。
また、累計時間計測部１１３６は、判断部１１３４に信号送受信可能に接続されている。これにより、累計時間計測部１１３６は、計測した累計時間ｔＡを判断部１１３４に出力できる。
【００６６】
モータ制御部１１３ａが累計時間計測部１１３６を有する第１変形例では、判断部１１３４は、累計時間ｔＡが第３の時間Ｔ３（後述）以上である場合に、エラーと判断する。これにより、第１の閾値φ１よりも小さな値を有する第１の時間Ｔ１あたりの位置偏差、すなわち、ゆっくりと変化する位置偏差に対して、第３の時間Ｔ３までは訓練を継続できる。
また、ゆっくりと変化する位置偏差から、判断部１１３４は、Ｙ軸方向傾動モータ１３５ａが操作ロッド３を動作させるために必要な負荷を予測できる。そのため、フィードバック電流値の検出が不可能となった場合でも、累計時間計測部１１３６においてゆっくりと変化する位置偏差が継続する時間を計測することにより、Ｙ軸方向傾動モータ１３５ａにある所定の値以上の負荷がかかっている状態が継続する時間を計測できる。
【００６７】
モータ制御部１１３ａは、図７Ｃに示す第２変形例として、フィードバック電流制限部１１３７を有していてもよい。フィードバック電流制限部１１３７は、判断部１１３４とモータ駆動部１１３５に信号送受信可能に接続されている。フィードバック電流制限部１１３７は、判断部１１３４においてエラーを判断したとき、モータ駆動部１１３５から出力されるフィードバック電流値を制限する。フィードバック電流制限部１１３７においてフィードバック電流値が制限されると、モータ駆動部１１３５からは、Ｙ軸方向傾動モータ１３５ａの定格電流値以下の電流値、すなわち、定格電流ＩＲの１より小さい所定の倍数ａの電流値（ａ×ＩＲ）を有する第２電流値Ｉ２であるフィードバック電流Ｉが出力される。
【００６８】
ＩＩＩ．モータ駆動部の構成
次に、モータ駆動部１１３５の構成について、図８を用いて説明する。図８は、モータ駆動部１１３５の構成を示す図である。モータ駆動部１１３５は、速度制御部１１３５−１と、位置制御部１１３５−２と、速度算出部１１３５−３と、電力供給部１１３５−４と、電流制限部１１３５−５と、第１偏差算出部１１３５−６ａと、第２偏差算出部１１３５−６ｂと、合成部１１３５−７と、切替部１１３５−８と、位置偏差設定部１１３５−９と、を有する。
速度制御部１１３５−１は、第２偏差算出部１１３５−６ｂに信号送受信可能に接続されている。よって、速度制御部１１３５−１は、第２偏差算出部１１３５−６ｂにおいて算出される、速度指令にて指示された速度（指示速度）とＹ軸方向傾動モータ１３５ａの実際の速度との差（速度偏差）を入力する。
【００６９】
速度制御部１１３５−１は、入力された速度偏差に基づいて、電力供給部１１３５−４を制御するための第１制御量を算出する。このとき、速度制御部１１３５−１は、入力された速度偏差を無くするように、第１制御量を算出する。すなわち、速度制御部１１３５−１は、実際のモータの速度を指示速度に追従させるような第１制御量を算出する。
速度制御部１１３５−１としては、例えば、制御理論に基づいて速度偏差を無くするような制御量を算出する制御装置を用いることができる。このような制御装置としては、例えば、ＰＩＤ（Ｐｒｏｐｏｒｔｉｏｎａｌ  Ｉｎｔｅｇｒａｌ  Ｄｉｆｆｅｒｅｎｔｉａｌ）制御理論を用いた制御装置などがある。本実施形態においては、速度制御部１１３５−１として、ＰＩ（Ｐｒｏｐｏｒｔｉｏｎａｌ  Ｉｎｔｅｇｒａｌ）制御理論を用いた制御装置を用いる。
速度制御部１１３５−１がＰＩ制御理論を用いた制御装置である場合、第１制御量は、速度偏差をΔｖとすると、Ｋｐｖ×Δｖ＋Ｋｉｖ×Ｉｎｔ（Δｖ）と表現される。ここで、Ｉｎｔ（Δｖ）は、速度偏差Δｖの時間積分値である。Ｋｐｖ、Ｋｉｖは、制御ゲインと呼ばれる定数である。
【００７０】
位置制御部１１３５−２は、第１偏差算出部１１３５−６ａに信号送受信可能に接続されている。よって、位置制御部１１３５−２には、第１偏差算出部１１３５−６ａにおいて算出される、位置指令にて指示された傾動角度（指示傾動角度）と操作ロッド３の実際の傾動角度との差（位置偏差）を入力する。
また、位置制御部１１３５−２は、位置偏差に基づいて、電力供給部１１３５−４を制御するための第２制御量を算出する。すなわち、位置制御部１１３５−２は、操作ロッド３の実際の傾動角度を指示傾動角度に追従させるような（位置偏差を無くすような）第２制御量を算出する。
位置制御部１１３５−２としては、速度制御部１１３５−１と同様、制御理論に基づいた制御を行う制御装置を用いることができる。本実施形態においては、位置制御部１１３５−２として、ＰＩ制御理論を用いた制御装置を用いる。
この場合、第２制御量は、位置偏差をΔθとすると、Ｋｐｐ×Δθ＋Ｋｉｐ×Ｉｎｔ（Δθ）と表現される。ここで、Ｉｎｔ（Δθ）は、位置偏差Δθの時間積分値である。Ｋｐｐ、Ｋｉｐは、制御ゲインと呼ばれる定数である。
【００７１】
速度算出部１１３５−３は、第１回転情報出力センサ１３５ａ−１と信号送受信可能に接続されている。これにより、速度算出部１１３５−３は、第１回転情報出力センサ１３５ａ−１から出力されるパルス信号から、Ｙ軸方向傾動モータ１３５ａの回転速度を算出する。なお、Ｙ軸方向傾動モータ１３５ａの回転速度は、パルス信号中の単位時間あたりのパルス数から算出できる。
【００７２】
電力供給部１１３５−４は、合成部１１３５−７を介して、速度制御部１１３５−１と接続されている。また、電力供給部１１３５−４は、合成部１１３５−７及び切替部１１３５−８を介して、位置制御部１１３５−２に接続されている。
これにより、電力供給部１１３５−４には、速度制御部１１３５−１から出力される第１制御量のみが入力されるか、又は、第１制御量と位置制御部１１３５−２から出力される第２制御量とが、合成部１１３５−７において合成されて入力される。
【００７３】
電力供給部１１３５−４に第１制御量のみが入力される場合、電力供給部１１３５−４は、Ｙ軸方向傾動モータ１３５ａの速度（回転速度）を指示速度に追従させる第１制御量のみに基づいて、フィードバック電流Ｉを出力する。これにより、モータ駆動部１１３５は、モータの回転速度を指示速度に追従させるよう、Ｙ軸方向傾動モータ１３５ａを駆動できる。
【００７４】
一方、第１制御量と第２制御量の両方が合成部１１３５−７において合成されて電力供給部１１３５−４に入力される場合、電力供給部１１３５−４は、モータの回転速度を指示速度に追従させ、かつ、操作ロッド３の傾動角度を指示傾動角度に追従させるようなフィードバック電流Ｉを出力する。これにより、モータ駆動部１１３５は、モータの回転速度を指示速度に追従させるだけでなく、操作ロッド３の傾動角度を指示傾動角度に追従させるよう、Ｙ軸方向傾動モータ１３５ａを駆動できる。
【００７５】
なお、本実施形態において、電力供給部１１３５−４からは、第１制御量及び／又は第２制御量に基づいて制御された電流（フィードバック電流Ｉ）が出力される。しかし、電力供給部１１３５−４から出力されるのは、フィードバック電流に限らない。例えば、電力供給部１１３５−４から、第１制御量及び／又は第２制御量に基づいて、電圧値及び／又はデューティ比が制御された電圧が出力されてもよい。
【００７６】
電流制限部１１３５−５は、電力供給部１１３５−４の出力とＹ軸方向傾動モータ１３５ａに、電気的に接続されている。また、電流制限部１１３５−５は、フィードバック電流制限部１１３７と、信号送受信可能に接続されている。よって、電流制限部１１３５−５が、フィードバック電流制限部１１３７からフィードバック電流Ｉを制限する指令を受信したとき、電流制限部１１３５−５は、電力供給部１１３５−４から出力されたフィードバック電流値が予め設定された第２電流値Ｉ２以上とならないように、フィードバック電流値を制限する。
このとき、電流制限部１１３５−５においては、第２電流値Ｉ２として、Ｙ軸方向傾動モータ１３５ａの定格電流ＩＲの１より小さい所定の倍数ａの電流値（ａ×ＩＲ）が設定されている。これにより、判断部１１３４においてエラーが発生したときに、Ｙ軸方向傾動モータ１３５ａに入力されるフィードバック電流Ｉを定格電流値以下に制限できる。
【００７７】
第１偏差算出部１１３５−６ａ、第２偏差算出部１１３５−６ｂは、それぞれ、２つの入力（「＋」が付された入力と「−」が付された入力）を有する。第１偏差算出部１１３５−６ａ及び第２偏差算出部１１３５−６ｂの「＋」が付された入力は、指令作製部１１１と信号送受信可能なように接続されている。そして、第１偏差算出部１１３５−６ａの「＋」が付された入力には位置指令が、第２偏差算出部１１３５−６ｂの「＋」が付された入力には速度指令がそれぞれ、指令作製部１１１から入力される。
また、第１偏差算出部１１３５−６ａの「−」が付された入力には、第１回転情報出力センサ１３５ａ−１が信号送受信可能に接続されている。これにより、第１偏差算出部１１３５−６ａの「−」が付された入力には、速度算出部１１３５−３において算出されたＹ軸方向傾動モータ１３５ａの回転量に応じて出力されたパルス信号が入力される。そして、第２偏差算出部１１３５−６ｂの「−」が付された入力は、速度算出部１１３５−３の出力と信号送受信可能に接続されている。これにより、第２偏差算出部１１３５−６ｂの「−」が付された入力には、Ｙ軸方向傾動モータ１３５ａの回転速度が入力される。
【００７８】
したがって、第１偏差算出部１１３５−６ａにおいては、位置指令に指示された指示傾動角度と操作ロッド３の実際の傾動角度との差、すなわち、位置偏差が算出される。一方、第２偏差算出部１１３５−６ｂにおいては、速度指令に指示された指示速度とＹ軸方向傾動モータ１３５ａの回転速度との差、すなわち、速度偏差が算出される。
【００７９】
合成部１１３５−７は、速度制御部１１３５−１から出力された第１制御量及び位置制御部１１３５−２から出力された第２制御量を合成（合成制御量）し、電力供給部１１３５−４へ出力する。ここで、合成制御量とは、第１制御量及び第２制御量に適切な重み付けをして加算した制御量のことを言う。第１制御量に付する重み付けと、第２制御量に付する重み付けの大きさを適切に調節することにより、Ｙ軸方向傾動モータ１３５ａの回転速度を指示速度に追従させるような制御（速度制御）をより重視するか、操作ロッド３の傾動角度を指示傾動角度に追従させるような制御（位置制御）をより重視するかを調整できる。
【００８０】
切替部１１３５−８は、位置制御部１１３５−２の出力と、合成部１１３５−７の入力に接続されている。また、切替部１１３５−８は、指令作製部１１１及び第１回転情報出力センサ１３５ａ−１に信号送受信可能に接続されている。これにより、切替部１１３５−８は、第１回転情報出力センサ１３５ａ−１から出力されるパルス数（すなわち、操作ロッド３の実際の傾動角度）が、速度指令に指示された減速開始位置に対応する値となったときに、切替部１１３５−８のスイッチをＯＮにする。すなわち、切替部１１３５−８は、Ｙ軸方向傾動モータ１３５ａの回転量が、速度指令に指示された減速開始位置に対応する値となったときに、位置制御部１１３５−２からの出力である第２制御量を合成部１１３５−７に入力可能にする。
これにより、切替部１１３５−８は、速度指令が減速指令のときにのみ、位置制御部１１３５−２から出力される第２制御量をＹ軸方向傾動モータ１３５ａの制御に反映できる。その結果、操作ロッド３は、減速指令の実行時に、目標傾動角度まで極力偏差を小さくして到達できる。
【００８１】
位置偏差設定部１１３５−９は、第１偏差算出部１１３５−６ａの出力と位置制御部１１３５−２の入力に信号送受信可能に接続されている。また、位置偏差設定部１１３５−９は、指令作製部１１１と第１回転情報出力センサ１３５ａ−１に、信号送受信可能に接続されている。これにより、位置偏差設定部１１３５−９は、第１回転情報出力センサ１３５ａ−１から出力されるパルス数が減速開始位置に対応する値となったときに、第１偏差算出部１１３５−６ａから出力される位置偏差を０にする（リセットする）。Ｙ軸方向傾動モータ１３５ａの回転速度を減速するときに、（累積された）位置偏差を０とする（リセットする）ことにより、モータ減速時に、一時的に位置偏差が増大することによって、その位置偏差を補正するためにモータの回転速度が過剰に上昇することを抑制できる。
【００８２】
（５）訓練装置の動作
Ｉ．訓練装置の基本動作
次に、訓練装置１００の動作について説明する。まず、訓練装置１００の基本動作について図９を用いて説明する。図９は、訓練装置１００の基本動作を示すフローチャートである。なお、以下においては、訓練モードをガイデッドモードに設定したときの訓練装置１００の動作を例にとって、訓練装置１００の動作を説明する。また、以下に説明する例においては、モータ制御部１１３ａは、図７Ｃに示すように、累計時間計測部１１３６と、フィードバック電流制限部１１３７とを有しているとする。また、ここでは、Ｙ軸方向傾動モータ１３５ａをモータ制御部１１３ａにより制御する際の動作を例にとり、訓練装置１００の動作を説明する。なぜなら、Ｘ軸方向傾動モータ１３５ｂ、伸縮モータ３５９をそれぞれ、モータ制御部１１３ｂ、１１３ｃにより制御する際も、同様の制御が行われるからである。
まず、使用者が、訓練装置１００の各種初期設定を、訓練指示部５などを用いて行う（ステップＳ１）。この時、訓練装置１００の使用者は、訓練指示部５を用いて、上記の訓練モードをガイデッドモードに設定する。そして、訓練装置１００の使用者は、訓練指示部５を用いて、ガイデッドモードにおける患者の肢の訓練プログラムを設定する。
【００８３】
次に、訓練指示部５は、設定された訓練プログラムに基づいて、操作ロッド動作指令を作製する。そして、訓練指示部５は、操作ロッド動作指令（上位指令）を制御部１１の指令作製部１１１に送信する（ステップＳ２）。
その後、操作ロッド動作指令を受け取った指令作製部１１１は、操作ロッド動作指令に含まれる目標位置情報、目標速度情報、及び加速度情報に基づいて、速度指令及び位置指令を作製する（ステップＳ３）。
【００８４】
指令作製部１１１にて速度指令及び位置指令が作製された後、モータ制御部１１３ａが、速度指令又は／及び位置指令に基づき、Ｙ軸方向傾動モータ１３５ａを制御する（ステップＳ４）。なお、本実施形態における、モータ制御部１１３ａによるＹ軸方向傾動モータ１３５ａの駆動の詳細は後述する。
【００８５】
モータ制御部１１３ａが、Ｙ軸方向傾動モータ１３５ａの駆動を開始後、まず、判断部１１３４が、位置指令に指示されている指示傾動角度と操作ロッド３の実際の傾動角度との差（位置偏差）が、第１の閾値φ１以上であるかどうかを判定する（ステップＳ５）。すなわち、ステップＳ５においては、単位時間（第１の時間Ｔ１）あたりの位置偏差が過剰に大きくなった（位置偏差過大）かどうかが判定される。
第１の時間Ｔ１あたりの位置偏差が第１の閾値φ１以上の場合（ステップＳ５において「Ｙｅｓ」の場合）は、ステップＳ７に進む。一方、第１の時間Ｔ１あたりの位置偏差が第１の閾値φ１より小さい場合（ステップＳ５において「Ｎｏ」の場合）は、ステップＳ６に進む。
なお、ステップＳ５における位置偏差過大の判定方法については、後ほど詳しく説明する。
【００８６】
ステップＳ６において、判断部１１３４は、Ｙ軸方向傾動モータ１３５ａが患者の肢を動作させるために、肢に過剰な負荷（過負荷）を所定の時間（第２の時間Ｔ２）継続してかけているかどうかを判定する。Ｙ軸方向傾動モータ１３５ａが、肢に過負荷を第２の時間Ｔ２以上継続してかけている場合（ステップＳ６において「Ｙｅｓ」の場合）、ステップＳ７に進む。一方、Ｙ軸方向傾動モータ１３５ａが、肢に過負荷をかけている時間が第２の時間Ｔ２より小さい場合、又は、Ｙ軸方向傾動モータ１３５ａが肢に過負荷をかけていない場合（ステップＳ６において「Ｎｏ」の場合）、ステップＳ８に進む。
【００８７】
ステップＳ５において、位置偏差が第１の閾値φ１以上であると判定された場合、又は、ステップＳ６において、肢に過負荷を第２の時間Ｔ２以上継続してかけていると判断された場合、判断部１１３４は、エラーと判断する（ステップＳ７）。
なお、判断部１１３４がエラーと判断するとき、訓練装置１００においては、各種エラー処理が実行される。
【００８８】
ステップＳ７におけるエラー処理として、モータ制御部１１３ａがフィードバック電流制限部１１３７を有している場合には、判断部１１３４は、フィードバック電流制限部１１３７に対してエラーを通知してもよい。また、エラーを受信したフィードバック電流制限部１１３７は、モータ駆動部１１３５の電流制限部１１３５−５を駆動してもよい。これにより、判断部１１３４においてエラーと判断した場合、Ｙ軸方向傾動モータ１３５ａに入力されるフィードバック電流Ｉの電流値は、定格電流ＩＲよりも小さい第２電流値Ｉ２（ａ×ＩＲ（ａ：１よりも小さい正数））に制限される。
【００８９】
一般的に、モータのトルクは、ロータ及び／又はステータのコイル（巻線）に流す電流値が大きくなるに従い大きくなる。したがって、判断部１１３４においてエラーを判断したときに、Ｙ軸方向傾動モータ１３５ａに入力するフィードバック電流Ｉを、第２電流値Ｉ２に制限することにより、Ｙ軸方向傾動モータ１３５ａから出力されるトルクを制限できる。その結果、訓練装置１００においてエラーが発生したときに、患者に対して過剰な負荷をかけることなく操作ロッド３を制御できる。
【００９０】
また、ステップＳ７におけるエラー処理として、訓練指示部５は、エラー発生を知らせる視覚的情報又は聴覚的情報を提供する。これにより、使用者は、訓練装置１００の状態、すなわち、訓練装置１００においてエラーが発生していること、及び／又は、エラー発生の原因などを知ることができる。
【００９１】
ステップＳ７においては、訓練装置１００の使用に際して必要に応じて、その他のエラー処理を行うことができる。
【００９２】
ステップＳ７におけるエラー処理の終了後、又は、ステップＳ５において「Ｎｏ」となり、かつ、ステップＳ６において「Ｎｏ」となった場合（すなわち、判断部１１３４において、位置偏差が第１の閾値φ１よりも小さく、かつ、Ｙ軸方向傾動モータ１３５ａが肢に過負荷をかけている時間が第２の時間Ｔ２より小さいと判断された場合。さらに言い換えると、エラーと判断されない場合）、モータ制御部１１３ａにおいて、操作ロッド３が最終的に到達すべき傾動角度である目標傾動角度に、操作ロッド３が到達したかどうかが判断される（ステップＳ８）。
操作ロッド３の傾動角度が目標傾動角度である場合（ステップＳ８において「Ｙｅｓ」の場合）、モータ制御部１１３ａによるＹ軸方向傾動モータ１３５ａの制御は終了する。
一方、操作ロッド３の傾動角度が目標傾動角度に到達していない場合（ステップＳ８において「Ｎｏ」の場合）には、ステップＳ５に戻る。
【００９３】
なお、操作ロッド３が目標傾動角度に到達したかどうかは、第１回転情報出力センサ１３５ａ−１から出力されるパルス数に基づいて判定してもよく、速度指令及び／又は位置指令が全て実行されたかどうかに基づいて判定してもよい。
【００９４】
ＩＩ．モータ制御方法
次に、上記のステップＳ４における、Ｙ軸方向傾動モータ１３５ａの制御方法について、図１０を用いて説明する。図１０は、モータの制御方法を示したフローチャートである。本実施形態において、モータ制御部１１３ａは、速度指令の加速指令及び／又は定速指令の実行時において、速度指令のみに追従するようにＹ軸方向傾動モータ１３５ａを制御する。そして、減速指令実行時において、速度指令及び位置指令に追従するように、Ｙ軸方向傾動モータ１３５ａを制御する。
【００９５】
モータ駆動を開始すると、まず、切替部１１３５−８が、第１回転情報出力センサ１３５ａ−１から出力されるパルス数から、操作ロッド３の傾動角度を算出する。そして、算出された操作ロッド３の傾動角度が、速度指令において減速指令を実行すべき傾動角度であるかをチェックする（ステップＳ４１）。
ここで、図１１を用いて、ステップＳ４１における動作について詳しく説明する。図１１は、操作ロッド３の傾動角度が減速指令を実行すべき傾動角度であるかどうかをチェックする様子を模式的に示した図である。
【００９６】
図１１に示された位置指令及び速度指令（図１１中では、いずれも一点鎖線にて示されている）においては、Ｙ軸方向傾動モータ１３５ａの駆動を開始してからの経過時間ｔがｔｄｃとなったときに、減速指令が開始される。この時、経過時間ｔｄｃにおける操作ロッド３の指示傾動角度はθｄである。指示傾動角度θｄが、減速開始位置に対応する。一方、図１１において実線にて示された、操作ロッド３の実際の傾動角度は、経過時間がｔｄｃにおいても、指示傾動角度θｄ（減速開始位置の一例）よりも小さな傾動角度となっている。
【００９７】
したがって、Ｙ軸方向傾動モータ１３５ａの駆動を開始してからの経過時間がｔｄｃとなったときに減速指令を実行すると、操作ロッド３が目標傾動角度に到達する前に、Ｙ軸方向傾動モータ１３５ａの制御が停止してしまうことがある。又は、速度指令の減速指令実行時に、位置偏差を解消しようとして、Ｙ軸方向傾動モータ１３５ａの回転速度が過剰に上昇してしまうこともある。Ｙ軸方向傾動モータ１３５ａの回転速度が過剰に上昇した場合、訓練を受けている肢に過剰な負担がかかる場合がある。
【００９８】
上記のような問題点を解決するため、本実施形態のステップＳ４（モータの駆動）においては、操作ロッド３の実際の傾動角度が、減速開始位置に対応する傾動角度θｄになったときに、減速指令の実行を開始する。その結果、実際には、モータの駆動を開始してからの経過時間ｔがｔｄｃよりも長いｔｄａとなったときに、減速指令の実行が開始される。
これにより、モータ駆動部１１３５は、操作ロッド３が肢に過剰な負担をかけることなく、目標傾動角度に精度良く到達するように、Ｙ軸方向傾動モータ１３５ａを制御できる。
【００９９】
具体的には、操作ロッド３の実際の傾動角度が、減速開始位置に対応する傾動角度θｄに到達していない場合（ステップＳ４１において「Ｎｏ」の場合）、ステップＳ４２に進む。一方、操作ロッド３の実際の傾動角度が、減速開始位置に対応する傾動角度θｄよりも目標傾動角度に近い場合、すなわち、操作ロッド３の実際の傾動角度が、速度指令において減速指令実行を行うべき傾動角度である場合（ステップＳ４１において「Ｙｅｓ」の場合）、ステップＳ４３に進む。
【０１００】
ステップＳ４１において、操作ロッド３の実際の傾動角度が減速開始位置に対応する傾動角度θｄに到達していないと判定されたとき、切替部１１３５−８は、位置制御部１１３５−２から出力される第２制御量が合成部１１３５−７に入力されないよう、位置制御部１１３５−２と合成部１１３５−７とを、電気的に切断する（ステップＳ４２）。
これにより、速度制御部１１３５−１から出力される第１制御量のみが、電力供給部１１３５−４においてフィードバック電流を出力する際に反映される。その結果、モータ駆動部１１３５は、Ｙ軸方向傾動モータ１３５ａの回転速度が指示速度のみに追従するように、Ｙ軸方向傾動モータ１３５ａを制御する（速度制御）。
【０１０１】
なお、操作ロッド３の実際の傾動角度が、減速開始位置である傾動角度θｄよりも小さい時、速度指令においては、加速指令又は定速指令が実行されている。よって、速度指令において加速指令又は定速指令が実行されているときに、モータ駆動部１１３５は、Ｙ軸方向傾動モータ１３５ａの回転速度が指示速度のみに追従するように、Ｙ軸方向傾動モータ１３５ａを制御していることになる。
【０１０２】
また、Ｙ軸方向傾動モータ１３５ａが速度制御のみにより制御される場合、図１２に示すように、Ｙ軸方向傾動モータ１３５ａの実際の回転速度と指示速度との速度偏差に起因して生じる、指示傾動角度と操作ロッド３の実際の傾動角度との位置偏差は、累積して保持される。例えば、図１２中の例において最初に生じた速度偏差（ｉ）が解消した時間ｔａにおいて、速度偏差（ｉ）の時間積分（図中にて斜線にて示した領域の面積）に対応する位置偏差ΔθＡが保持される。その後、２番目に生じた速度偏差（ｉｉ）が解消した時間ｔｂにおいて、位置偏差ΔθＡに、速度偏差（ｉｉ）の時間積分（図中にて網掛け線にて示した領域の面積）に対応する位置偏差がさらに累積された位置偏差ΔθＢが保持される。そして、時間ｔｂ以降、速度偏差が解消されても、位置偏差ΔθＢは不変のまま保持される。
【０１０３】
このように、速度制御のみによりモータを制御することにより、Ｙ軸方向傾動モータ１３５ａの回転速度は指示速度に追従する一方、位置偏差は解消されず累積保持される。なぜなら、速度制御では、速度制御部１１３５−１において第１制御量を算出する際に、位置偏差は考慮されていないからである。
【０１０４】
訓練装置１００においては、肢の動作が、操作ロッド動作指令に示された操作ロッド３の動作にある程度追従できるなら、位置偏差が多少生じたとしても訓練を継続することが好ましい。よって、速度指令の加速指令及び／又は定速指令実行時に、速度制御のみによりＹ軸方向傾動モータ１３５ａを制御することにより、Ｙ軸方向傾動モータ１３５ａを、位置偏差を解消することなく速度指令に追従するように制御できる。その結果、多少の位置偏差があったとしても、操作ロッド３の動作速度を操作ロッド動作指令に示された動作速度に追従させつつ、肢の訓練を継続できる。
【０１０５】
ステップＳ４１において、操作ロッド３の実際の傾動角度が速度指令において減速指令実行を行うべき傾動角度であると判定された場合（ステップＳ４１において「Ｙｅｓ」の場合）、ステップＳ４３へ進む。
【０１０６】
ステップＳ４３においては、位置偏差設定部１１３５−９が、操作ロッド３の実際の傾動角度が減速開始位置に対応する傾動角度θｄであるかどうかを確認する。操作ロッド３の実際の傾動角度がθｄである場合（ステップＳ４３において「Ｙｅｓ」の場合）、ステップＳ４４に進む。一方、操作ロッド３の実際の傾動角度がθｄでない場合（ステップＳ４３において「Ｎｏ」の場合）、ステップＳ４６に進む。
【０１０７】
ステップＳ４３において、操作ロッド３の実際の傾動角度がθｄであると判断された場合、まず、位置偏差設定部１１３５−９が、操作ロッド３が傾動角度θｄまで動作する間に累積保持された位置偏差をリセット（位置偏差を０に設定）する（ステップＳ４４）。図１１にて示す例においては、実際の傾動角度がθｄとなった経過時間ｔｄａにおいて、累積保持された位置偏差Δθｄａを０にする。
経過時間ｔｄａにおける位置偏差Δθｄａは、例えば、経過時間ｔｄａにおける指示傾動角度をθｄとなるように位置指令を更新（図１１の二点鎖線にて示した位置指令）することにより、リセットされる。また、それと同時に、速度指令は、経過時間ｔｄａにおいて減速指令が開始されるように更新（図１１にて二点鎖線にて示された速度指令）される。
ステップＳ４４にて位置偏差をリセット後、切替部１１３５−８が、位置制御部１１３５−２と合成部１１３５−７とを電気的に接続する（ステップＳ４５）。すなわち、位置制御部１１３５−２から出力される第２制御量が、合成部１１３５−７へ入力可能となる。これにより、減速指令の実行時に、第１制御量だけでなく第２制御量も、電力供給部１１３５−４においてフィードバック電流Ｉを出力する際に反映されるようになる。
【０１０８】
速度指令の減速指令の実行時においては、速度制御に加えて位置制御も行っているため、減速開始位置において位置偏差をリセットしない場合、減速指令実行開始時に累積保持された位置偏差Δθｄａを解消するようなその他の情報処理を行うべきである。この処理を実施しない場合には、減速指令実行開始時に、Ｙ軸方向傾動モータ１３５ａの回転速度が、累積保持された位置偏差Δθｄａによって、速度指令以上の速度に過剰に上昇してしまうことがあるためである。これは、位置偏差を情報処理により解消しない場合、第２制御量の合成制御量に占める割合が高くなる可能性があるためである。このように、減速指令実行時にもかかわらず、Ｙ軸方向傾動モータ１３５ａの回転速度が過剰に上昇すると、患者の肢に過剰な負荷をかけることになる。
一方、減速開始位置において位置偏差をリセットすることにより、減速指令実行時に位置制御が行われても、Ｙ軸方向傾動モータ１３５ａの回転速度が過剰に上昇することを抑制できる。その結果、患者の肢に対して操作ロッド３から大きな負荷を与えることなく、訓練を継続することができる。
【０１０９】
操作ロッド３の実際の傾動角度がθｄでない場合（ステップＳ４３において「Ｎｏ」の場合）、又は、ステップＳ４４において位置偏差Δθｄａをリセットした後、モータ駆動部１１３５は、Ｙ軸方向傾動モータ１３５ａの回転速度を速度指令の指示速度に追従するよう、かつ、操作ロッド３の傾動角度を位置指令の指示傾動角度に追従するよう、Ｙ軸方向傾動モータ１３５ａを駆動する（ステップＳ４６）。これにより、モータ駆動部１１３５は、操作ロッド３が目標傾動角度まで極力偏差を小さくして到達するよう、Ｙ軸方向傾動モータ１３５ａを制御できる。
【０１１０】
ＩＩＩ．位置偏差過大判定方法
次に、図９に示したフローチャート中のステップＳ５における位置偏差過大判定方法について、図１３を用いて説明する。図１３は、位置偏差過大判定方法を示すフローチャートである。
位置偏差過大判定を開始すると、まず、判断部１１３４が、Ｙ軸方向傾動モータ１３５ａが駆動を開始してからの経過時間ｔが、第１の時間Ｔ１の整数（ｎ）倍であるかどうかを判断する（ステップＳ５１）。経過時間ｔが第１の時間Ｔ１の整数倍でない場合（ステップＳ５１において「Ｎｏ」の場合）、判断部１１３４は、位置偏差過大が発生していないと判断して（ステップＳ５５）、位置偏差過大判定を終了する。
【０１１１】
一方、経過時間ｔが第１の時間Ｔ１の整数倍である場合（ステップＳ５１において「Ｙｅｓ」の場合）、判断部１１３４は、位置偏差算出部１１３２に対して、現在累積保持されている位置偏差を算出するように指令する（ステップＳ５２）。そして、判断部１１３４は、算出された位置偏差を経過時間ｔ＝ｎＴ１において累積保持された位置偏差Δθｎとして、モータ制御部１１３ａの記憶装置などに記憶する。
【０１１２】
次に、判断部１１３４が、第１の時間Ｔ１あたりに生じた位置偏差が第１の閾値φ１以上であるかどうかを判定する（ステップＳ５３）。具体的には、まず、判断部１１３４は、モータ制御部１１３ａの記憶装置などから、前回算出された位置偏差Δθｎ−１、すなわち、経過時間ｔ＝（ｎ−１）Ｔ１時間において累積保持された位置偏差、を読み出す。そして、経過時間ｔ＝ｎＴ１における位置偏差Δθｎと、経過時間ｔ＝（ｎ−１）Ｔ１における位置偏差Δθｎ−１との差Δθｎ−Δθｎ−１を算出する。これにより、経過時間ｔ＝ｎＴ１において、第１の時間Ｔ１（すなわち単位時間）あたりに生じた位置偏差が算出される。その後、判断部１１３４は、Δθｎ−Δθｎ−１が第１の閾値φ１以上であるかどうかを判断する。
Δθｎ−Δθｎ−１が第１の閾値φ１以上の場合（ステップＳ５３において「Ｙｅｓ」の場合）、位置偏差過大が発生したと判断して（ステップＳ５４）、位置偏差過大判定を終了する。一方、Δθｎ−Δθｎ−１が第１の閾値φ１よりも小さい場合（ステップＳ５３において「Ｎｏ」の場合）、位置偏差過大は発生していないと判断して（ステップＳ５５）、位置偏差過大判定を終了する。
【０１１３】
このように、ある経過時間の位置偏差と、当該経過時間より第１の時間Ｔ１前の位置偏差との差を算出することにより、第１の時間Ｔ１（単位時間）あたりに生じた位置偏差を算出できる。そして、第１の時間Ｔ１あたりの位置偏差が第１の閾値φ１以上であるかどうかを判定することにより、判断部１１３４は、急激な位置偏差の変化を検出できる。
【０１１４】
ＩＶ．過負荷継続検出方法
次に、判断部１１３４において、操作ロッド３（Ｙ軸方向傾動モータ１３５ａ）が肢に過剰な負荷（過負荷）を所定の時間（第２の時間Ｔ２）継続してかけているかどうかを判定する方法（過負荷継続検出方法）について説明する。過負荷継続検出方法には、（ｉ）フィードバック電流値を用いた検出方法と、（ｉｉ）位置偏差を用いた検出方法と、がある。以下においては、（ｉ）の方法、（ｉｉ）の方法それぞれについて説明する。
【０１１５】
（ｉ）フィードバック電流値を用いた過負荷継続検出方法
まず、フィードバック電流値を用いた過負荷継続検出方法について、図１４を用いて説明する。図１４は、フィードバック電流値を用いた過負荷継続検出方法を示したフローチャートである。
まず、過負荷継続検出を開始すると、フィードバック電流検出部１１３３が、フィードバック電流Ｉが第１電流値Ｉ１以上であるかどうかを検出する（ステップＳ６１１）。フィードバック電流Ｉが第１電流値Ｉ１以上の場合（ステップＳ６１１において「Ｙｅｓ」の場合）、ステップＳ６１２に進む。一方、フィードバック電流Ｉが第１電流値Ｉ１より小さい場合（ステップＳ６１１において「Ｎｏ」の場合）、判断部１１３４は、過負荷状態が継続していないと判断し（ステップＳ６１４）、過負荷継続の検出を終了する。
【０１１６】
ステップＳ６１１において、フィードバック電流Ｉが第１電流値Ｉ１以上であると判定された場合（ステップＳ６１１において「Ｙｅｓ」の場合）、判断部１１３４は、フィードバック電流Ｉが第１電流値Ｉ１以上である状態が、第２の時間Ｔ２以上継続しているかどうかを判定する（ステップＳ６１２）。フィードバック電流Ｉが第１電流値Ｉ１以上である状態が第２の時間Ｔ２以上継続している場合（ステップＳ６１２において「Ｙｅｓ」の場合）、判断部１１３４は、過負荷状態が継続していると判断し（ステップＳ６１３）、過負荷継続の検出を終了する。
一方、フィードバック電流Ｉが第１電流値Ｉ１以上である状態の継続時間が、第２の時間Ｔ２未満である場合（ステップＳ６１２において「Ｎｏ」の場合）、判断部１１３４は、過負荷状態が継続していないと判断し（ステップＳ６１４）、過負荷継続の検出を終了する。
【０１１７】
ここで、フィードバック電流値を用いた過負荷継続検出について、図１５を用いてさらに説明する。図１５は、モータの実際の回転速度と速度指令（指示速度）との関係、及び、速度偏差の発生に起因するフィードバック電流Ｉの時間的変化について模式的に示した図である。今、図１５に示すように、定速指令実行時において、例えば、Ｙ軸方向傾動モータ１３５ａに３つの回転速度の変化（速度変化（ｉ）、速度変化（ｉｉ）、及び速度変化（ｉｉｉ））が発生したものとする。前述のように、定速指令実行時には、Ｙ軸方向傾動モータ１３５ａは、速度指令のみに追従するように制御されている。
【０１１８】
図１５中の（ｉ）のような速度変化は、例えば、訓練装置１００をガイデッドモードにて動作させた場合において、訓練中の肢にある程度の力の補助を操作ロッド３を介して加えることにより、肢の動作が訓練プログラムに追従できた場合などに発生する。図１５中の（ｉｉ）のような速度変化は、例えば、訓練中の肢の動作が短時間ほぼ停止してしまったけれども、その後、肢が動作し始めた場合などに発生する。図１５中の（ｉｉｉ）のような速度変化は、訓練中の肢に力の補助を加えても、肢の動作が訓練プログラムに追従できない場合などに発生する。
【０１１９】
まず、図１５中の速度変化（ｉ）が生じたときのフィードバック電流値の変化について説明する。ある経過時間において、訓練中の肢が訓練プログラムに追従しづらくなるなどの理由により、小さな速度偏差（ｉ）が発生する。この時、速度制御部１１３５−１からは、小さな速度変化に応じた小さな第１制御量が出力される。これは、前述の第１制御量を算出する式、Ｋｐｖ×Δｖ＋Ｋｉｖ×Δｖからも明らかである。第１制御量が小さい場合、フィードバック電流Ｉは、ゆっくりと上昇する（図１５中の（１））。なぜなら、フィードバック電流Ｉの上昇は、第１制御量の蓄積によって生じるからである。フィードバック電流Ｉの増加に応じて、Ｙ軸方向傾動モータ１３５ａから出力されるトルクも、ゆっくりと上昇する。なぜなら、モータから出力されるトルクは、フィードバック電流Ｉに応じて変化するからである。
そして、Ｙ軸方向傾動モータ１３５ａから出力されるトルクがある程度大きくなり、訓練中の肢の動作が訓練プログラムに追従できるようになると、速度偏差は解消する。そして、速度偏差が解消すると、フィードバック電流Ｉの上昇も停止する。
図１５に示すように、速度偏差（ｉ）が解消した後のフィードバック電流Ｉの電流値は、第１電流値Ｉ１以下である。このことは、速度偏差（ｉ）が解消した後のＹ軸方向傾動モータ１３５ａから出力されるトルクは、訓練中の肢を無理に動作させるほどのトルク（過負荷）ではないことを意味している。このような場合、肢の訓練は続行されてもかまわない。
【０１２０】
このように、フィードバック電流Ｉが第１電流値Ｉ１以上であるかどうかを判定することにより、Ｙ軸方向傾動モータ１３５ａが、操作ロッド３を介して、肢に過剰な負荷をかけていないかどうかを判定できる。したがって、フィードバック電流Ｉの電流値が第１電流値Ｉ１未満である場合には、判断部１１３４において過負荷状態が継続していないと判断できる。その結果、フィードバック電流Ｉの電流値が第１電流値Ｉ１未満の場合は、Ｙ軸方向傾動モータ１３５ａは肢に無理な負荷をかけていないと判断し、訓練装置１００は肢の訓練プログラムを続行できる。
なお、第１電流値Ｉ１は、過負荷と判断する基準に基づいて、適切に設定される。したがって、第１電流値Ｉ１は、訓練のレベルなどに応じて、調整可能であってもよい。
【０１２１】
一方、肢の動作が短時間停止したことなどにより、短時間に大きな速度偏差が生じた場合（図１５中の速度変化（ｉｉ）に対応）、フィードバック電流Ｉの電流値は、第１電流値Ｉ１よりも大きくなる（図１５中の（２））。しかし、フィードバック電流Ｉの電流値が第１電流値Ｉ１よりも大きい状態である期間は、第２の時間Ｔ２よりも短い。
この場合、肢は、一時的に訓練プログラムに追従できなかっただけで、訓練プログラムに追従できなかった期間以外は、肢の動作は訓練プログラムに追従できている。このような場合も、訓練装置１００は、肢の訓練を続行してもかまわない。
【０１２２】
したがって、フィードバック電流Ｉの電流値が第１電流値Ｉ１以上である時間が第２の時間Ｔ２以下であるなら、判断部１１３４において過負荷状態が継続していないと判断し、エラーを発生させない。その結果、Ｙ軸方向傾動モータ１３５ａが、一時的に短時間だけ肢に無理な負荷をかけた場合には、訓練装置１００は肢の訓練プログラムを続行できる。
なお、第２の時間Ｔ２も、第１電流値Ｉ１と同様に、過負荷が継続していると判定する基準時間に基づいて、適切に設定される。したがって、第２の時間Ｔ２も、訓練のレベルなどに応じて、調整可能であってもよい。
【０１２３】
一方、速度偏差が長時間に亘って解消しない場合（図１５中の速度変化（ｉｉｉ）に対応）、フィードバック電流Ｉの電流値は、速度偏差が解消しない限り上昇を続ける（図１５中の（３））。この時、肢が訓練プログラムに追従できるようになるまで、肢に対して与えられる負荷は上昇し続ける。このように、肢にいくら負荷を与えても、肢が訓練プログラムに追従できない場合には、肢に無理な負荷をかけないようにすることが好ましい。
したがって、フィードバック電流Ｉの電流値が、第１電流値Ｉ１以上である状態が第２の時間Ｔ２以上継続する場合には、判断部１１３４において過負荷状態が継続していると判断し、エラーを発生させる。そして、本実施形態においては、エラーが発生したときには、フィードバック電流Ｉを第２電流値Ｉ２（ａ×ＩＲ）に制限している。この結果、Ｙ軸方向傾動モータ１３５ａが、長時間に亘り肢に無理な負荷をかけている場合には、フィードバック電流Ｉを制限してＹ軸方向傾動モータ１３５ａが肢に対して無理な負荷をかけないようにすることができる。また、訓練装置１００の制御部１１に過剰な電気負荷が加わることを避けることができる。
【０１２４】
ここで、図１５にて示した速度変化（ｉ）〜（ｉｉｉ）が発生した場合のフィードバック電流Ｉの電流値の変化と、図１６にて示した長時間に亘り速度偏差が大きい速度変化（ｉｖ）が発生した場合のフィードバック電流Ｉの電流値の変化を比較する。図１６にて示した長時間に亘り速度偏差が大きい速度変化（ｉｖ）は、例えば、訓練中の肢がほぼ完全に動作不可能となった場合などに発生する。
速度変化（ｉｖ）のような速度変化が発生すると、フィードバック電流Ｉは、短時間のうちにＹ軸方向傾動モータ１３５ａに出力可能な最大電流Ｉｍａｘまで上昇する。そして、フィードバック電流Ｉは、最大電流Ｉｍａｘから下降しなくなる。
一方、図１５に示したように、速度変化（ｉ）〜（ｉｉｉ）が発生した場合のフィードバック電流Ｉの変化（１）〜（３）においては、フィードバック電流Ｉは比較的ゆっくりと上昇する（変化（１）及び（３））か、短時間のうちに第１電流値Ｉ１を超える電流値となる（変化（２））。したがって、フィードバック電流Ｉの変化をモニターすることにより、大きな速度偏差を生じる速度変化（位置偏差が急激に変化した）か、小さな速度偏差を生じる速度変化（位置偏差がゆっくりと変化した）か、あるいは、大きな速度偏差ではあるが短時間であったか、を判定できる。
【０１２５】
（ｉｉ）位置偏差を用いた過負荷継続検出方法
次に、位置偏差を用いた過負荷継続検出方法について、図１７を用いて説明する。図１７は、位置偏差を用いた過負荷継続検出方法を示したフローチャートである。位置偏差を用いた過負荷継続検出方法においては、単位時間（第１の時間Ｔ１）あたりの位置偏差の変化量が、所定の範囲内であるかどうかを判定することにより、過負荷状態が継続しているかどうかを判定する。
具体的には、まず、累計時間計測部１１３６が、経過時間ｔが第１の時間Ｔ１の整数倍ｎＴ１であるかどうかを判定する（ステップＳ６２１）。経過時間ｔが第１の時間Ｔ１の整数倍ｎＴ１の場合（ステップＳ６２１にて「Ｙｅｓ」の場合）、ステップＳ６２２へ進む。一方、経過時間ｔが第１の時間Ｔ１の整数倍ｎＴ１でない場合（ステップＳ６２１にて「Ｎｏ」の場合）、累計時間計測部１１３６は、過負荷状態が継続していないと判断し（ステップＳ６２８）、過負荷継続の検出を終了する。
【０１２６】
経過時間ｔが第１の時間Ｔ１の整数倍ｎＴ１の場合（ステップＳ６２１にて「Ｙｅｓ」の場合）、累計時間計測部１１３６は、位置偏差算出部１１３２に対して、経過時間ｔがｎＴ１のときの位置偏差Δθｎを算出するように指令する（ステップＳ６２２）。そして、累計時間計測部１１３６は、算出した位置偏差を経過時間ｔ＝ｎＴ１において累積保持された位置偏差Δθｎとして、モータ制御部１１３ａの記憶装置などに記憶する。
【０１２７】
次に、累計時間計測部１１３６が、第１の時間Ｔ１あたりに生じた位置偏差が第２の閾値φ２以上であるかどうかを判定する（ステップＳ６２３）。具体的には、以下のようにして判定する。まず、累計時間計測部１１３６は、モータ制御部１１３ａの記憶装置などから、前回計測した、経過時間ｔ＝（ｎ−１）Ｔ１時間において累積保持された位置偏差Δθｎ−１を読み出す。そして、経過時間ｔ＝ｎＴ１における位置偏差Δθｎと、経過時間ｔ＝（ｎ−１）Ｔ１における位置偏差Δθｎ−１との差Δθｎ−Δθｎ−１を算出する。これにより、経過時間ｔ＝ｎＴ１において、第１の時間Ｔ１（すなわち単位時間）あたりに生じた位置偏差が算出される。その後、累計時間計測部１１３６は、Δθｎ−Δθｎ−１が第２の閾値φ２以上であるかどうかを判断する。
【０１２８】
Δθｎ−Δθｎ−１が第２の閾値φ２以上の場合（ステップＳ６２３において「Ｙｅｓ」の場合）、過負荷状態であると判定する。そして、累計時間計測部１１３６は、累計時間ｔＡにＴ１を加算して新たな累計時間ｔＡとする（ステップＳ６２４）。これにより、累計時間計測部１１３６は、Δθｎ−Δθｎ−１が第２の閾値φ２以上の状態（すなわち、過負荷状態）が継続している時間（累計時間ｔＡ）を計測できる。累計時間ｔＡを更新後、ステップＳ６２６へ進む。
一方、Δθｎ−Δθｎ−１が第２の閾値φ２よりも小さい場合（ステップＳ６２３において「Ｎｏ」の場合）、累計時間計測部１１３６は、過負荷状態ではないと判断する。そして、累計時間計測部１１３６は、累計時間ｔＡを０にリセットする（ステップＳ６２５）。累計時間ｔＡをリセット後、ステップＳ６２６へ進む。
【０１２９】
なお、ステップＳ６２３において、経過時間ｔ＝ｎＴ１における位置偏差Δθｎと、経過時間ｔ＝（ｎ−１）Ｔ１における位置偏差Δθｎ−１との差Δθｎ−Δθｎ−１が第１の閾値φ１未満であるかどうかを判定していない。なぜなら、過負荷継続の検出は、図９に示したフローチャートのステップＳ５において位置偏差過大が生じていない（すなわち、ステップＳ５において「Ｎｏ」）と判断された後に、実行されるからである。すなわち、Δθｎ−Δθｎ−１が第１の閾値φ１未満であることは、ステップＳ５においてすでに判定されているからである。
しかしながら、これに限られず、ステップＳ６２３において、累計時間計測部１１３６が、Δθｎ−Δθｎ−１が第１の閾値φ１未満であるかどうかも判定してよい。
【０１３０】
ステップＳ６２６において、判断部１１３４は、累計時間ｔＡが第３の時間Ｔ３以上であるかどうかを判定する。累計時間ｔＡが、第３の時間Ｔ３以上であると判定された場合（ステップＳ６２６において「Ｙｅｓ」の場合）、判断部１１３４は、過負荷状態が継続していると判断し（ステップＳ６２７）、過負荷継続の検出を終了する。
一方、累計時間ｔＡが、第３の時間Ｔ３未満であると判定された場合（ステップＳ６２６において「Ｎｏ」の場合）、判断部１１３４は、過負荷状態が継続していないと判断し（ステップＳ６２８）、過負荷継続の検出を終了する。
【０１３１】
上記の位置偏差を用いた過負荷継続検出方法について、図１８を用いてさらに説明する。図１８は、図１５に示したような速度変化（ｉ）〜（ｉｉｉ）が発生したときの、操作ロッド３の実際の傾動角度と、位置指令に示されている指示傾動角度との関係を示した図である。図１８において、速度変化（ｉ）は、経過時間ｔが２Ｔ１と３Ｔ１の間に生じている。そして、経過時間ｔが２Ｔ１のときの位置偏差Δθ２は０である。したがって、経過時間ｔが３Ｔ１となった時点において、第１の時間Ｔ１あたりに位置偏差Δθ３が生じたことになる。しかし、速度変化（ｉ）の時間積分値（Δθ３−Δθ２に対応）は小さいため、経過時間ｔが３Ｔ１となった時点において、第１の時間Ｔ１あたりに生じた位置偏差Δθ３−Δθ２は第２の閾値φ２未満の値となる。したがって、累計時間計測部１１３６は、経過時間ｔ＝３Ｔ１において、過負荷状態でないと判定する。
【０１３２】
一方、経過時間ｔが４Ｔ１となった時点において、第１の時間Ｔ１あたりに生じた位置偏差Δθ４−Δθ３は、速度変化（ｉｉ）に対応した位置偏差であり、第２の閾値φ２以上となっている。その結果、累計時間ｔＡがＴ１に更新される。しかしながら、経過時間ｔが５Ｔ１となった時点において、第１の時間Ｔ１あたりに生じた位置偏差Δθ５−Δθ４は、第２の閾値φ２未満となっている。なぜなら、速度変化（ｉｉ）は、短期間に生じた速度変化だからである。この場合、経過時間ｔ＝５Ｔ１において、累計時間ｔＡが０にリセットされる。その結果、経過時間ｔ＝５Ｔ１において、判断部１１３４は、過負荷状態が継続していないと判定する。
【０１３３】
さらに、経過時間ｔが５Ｔ１以降、速度変化（ｉｉｉ）が発生している。この場合、経過時間ｔ＝６Ｔ１となった時点において、第１の時間Ｔ１あたりに生じた位置偏差Δθ６−Δθ５は、第２の閾値φ２以上となっている。その結果、累計時間ｔＡがＴ１に更新される。また、経過時間ｔ＝７Ｔ１となった時点においても、第１の時間Ｔ１あたりに生じた位置偏差Δθ７−Δθ６は、経過時間ｔ＝６Ｔ１となった時点において、第１の時間Ｔ１あたりに生じた位置偏差Δθ６−Δθ５とほぼ同じ値であり、第２の閾値φ２以上となっている。その結果、経過時間ｔ＝７Ｔ１において、累計時間ｔＡにＴ１が加算されて、累計時間ｔＡが２Ｔ１に更新される。
ここで、もし、累計時間ｔＡが第３の時間Ｔ３以上である場合には、判断部１１３４は、過負荷状態が継続していると判定する。
【０１３４】
前述した図１５と図１８とを比較すると、速度変化（ｉ）〜（ｉｉｉ）に起因して発生するフィードバック電流Ｉの変化（１）〜（３）は、単位時間（第１の時間Ｔ１）あたりに生じる位置偏差の変化量によく対応していると言える。すなわち、図１５に示したフィードバック電流Ｉの変化が、図１５中の（１）や（２）の場合には、第１の時間Ｔ１あたりに生じる位置偏差の変化量も小さい。一方、図１５中の（３）に示すようにフィードバック電流Ｉの電流値が継続して増加するとき、位置偏差は増加し続ける。
このことは、フィードバック電流Ｉの変化は、単位時間あたりに生じる位置偏差の変化量からも予測可能であることを示している。すなわち、フィードバック電流Ｉの変化に起因して生じる、操作ロッド３から訓練中の肢にかかる負荷の変化は、単位時間あたりに生じる位置偏差の変化量によっても検出可能である。
【０１３５】
このように、単位時間（第１の時間Ｔ１）あたりに生じる位置偏差が、第２の閾値φ２以上（、かつ、第１の閾値φ１未満）である時間を、累計時間計測部１１３６により計測することにより、ゆっくりと変化する位置偏差が継続している時間（累計時間ｔＡ）を測定できる。それと同時に、速度変化（ｉ）〜（ｉｉｉ）のような速度変化に起因して発生する、肢にかかる負荷の変化もモニターできる。そして、ゆっくりと変化する位置偏差が継続している時間（累計時間ｔＡ）を測定することにより、肢に無理な負荷がかかる状態（過負荷状態）が継続して発生しているかどうかを、判定できる。
【０１３６】
なお、過負荷継続を検出するにあたり、図７Ｂや図７Ｃに示すように、フィードバック電流検出部１１３３及び累計時間計測部１１３６を両方有しているモータ制御部１１３ａ（、１１３ｂ、１１３ｃ）においては、フィードバック電流Ｉに基づいて過負荷継続を検出するか、又は、位置偏差に基づいて過負荷継続を検出するかを選択可能となっていてもよい。
これにより、フィードバック電流検出部１１３３の故障によりフィードバック電流Ｉが検出不可能となった場合や、又は、累計時間計測部１１３６（傾動角度算出部１１３１、位置偏差算出部１１３２、又は、第１回転情報出力センサ１３５ａ−１）の故障により位置偏差を算出不可能になった場合などに、いずれか正常に検出又は算出可能な計測量に基づいて、過負荷状態が継続して発生しているかどうかを判定できる。
【０１３７】
また、上記の第２の閾値φ２は、患者の肢に過剰な負荷をかけていないと判断される閾値である。過負荷継続の判断は、（１）その患者にとって、設定された訓練プログラムの難易度が高く、その訓練プログラムを適切に実施できない場合、及び／又は、（２）訓練装置１００内のある構成部品の寿命が近づいており、当該構成部品が故障する予兆を示している場合、などにエラーを発生する必要があるときに好適に使用できる。
その結果、過負荷継続の判断によって、患者は、その症状に応じて、適切な訓練プログラムを実施することができる。
【０１３８】
（６）本実施形態の効果
以下に、本実施形態の効果について述べる。
訓練装置１００（訓練装置の一例）は、訓練プログラム（訓練プログラムの一例）に従って、患者（患者の一例）の上肢及び下肢の四肢を訓練する訓練装置である。訓練装置１００は、固定フレーム１（固定フレームの一例）と、操作ロッド３（操作ロッドの一例）と、Ｘ軸方向傾動モータ１３５ｂ（モータの一例）と、Ｙ軸方向傾動モータ１３５ａ（モータの一例）と、第１回転情報出力センサ１３５ａ−１（回転情報出力センサの一例）と、第２回転情報出力センサ１３５ｂ−１（回転情報出力センサの一例）と、傾動角度算出部１１３１（傾動角度算出の一例）と、フィードバック電流検出部１１３３（フィードバック電流検出部の一例）と、位置偏差算出部１１３２（位置偏差算出部の一例）と、判断部１１３４（判断部の一例）と、を備える。固定フレーム１は、床面上ないしは床面に近接して載置される。操作ロッド３は、固定フレーム１に少なくともＸ軸又はＹ軸（所定の傾動軸の一例）回りに傾動可能に支持される。そして、操作ロッド３は肢を保持する。Ｘ軸方向傾動モータ１３５ｂ、Ｙ軸方向傾動モータ１３５ａは、それぞれ、操作ロッド３をＸ軸及びＹ軸回りに傾動させる。第１回転情報出力センサ１３５ａ−１、及び、第２回転情報出力センサ１３５ｂ−１は、それぞれ、Ｙ軸方向傾動モータ１３５ａの回転量、及び、Ｘ軸方向傾動モータ１３５ｂの回転量を出力する。傾動角度算出部１１３１は、Ｘ軸方向傾動モータ１３５ｂの回転量、及び、Ｙ軸方向傾動モータ１３５ａの回転量に基づいて、操作ロッド３の傾動角度（傾動角度の一例）を算出する。フィードバック電流検出部１１３３は、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａのフィードバック電流Ｉの電流値（フィードバック電流値の一例）を検出する。位置偏差算出部１１３２は、位置偏差（位置偏差の一例）を第１の時間Ｔ１（第１の時間の一例）が経過する毎に算出する。ここで、位置偏差とは、操作ロッド３の実際の傾動角度と、訓練プログラムにおいて指示された操作ロッド３の傾動角度である指示傾動角度（指示傾動角度の一例）との差のことをいう。判断部１１３４は、第１の時間Ｔ１の間に生じた位置偏差が第１の閾値φ１（第１の閾値の一例）以上であるか、又は、フィードバック電流Ｉの電流値が、第２の時間Ｔ２（第２の時間の一例）以上、第１電流値Ｉ１（第１電流値の一例）以上である場合にエラーと判断する。
【０１３９】
訓練装置１００では、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａが操作ロッド３を制御するときに、位置偏差算出部１１３２が、第１の時間Ｔ１毎に位置偏差を算出する。そして、判断部１１３４は、第１の時間Ｔ１の間に生じた位置偏差が第１の閾値φ１以上になった場合に、訓練装置１００になんらかの不具合がある、あるいは、短時間に急激に位置偏差が変化したと判断し、エラーと判断する。
一方、同じく、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａが操作ロッド３を制御するときに、フィードバック電流検出部１１３３が、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａに供給されるフィードバック電流Ｉの電流値をモニターする。そして、判断部１１３４は、フィードバック電流Ｉの電流値が第１電流値Ｉ１以上である状態が第２の時間Ｔ２以上続いた場合に、同じく訓練装置１００になんらかの不具合がある、あるいは、ゆっくりとした位置偏差が長時間継続したと判断し、エラーと判断する。
【０１４０】
このように、訓練装置１００においては、第１の時間Ｔ１あたりの位置偏差の変化量がモニターされている。そのため、判断部１１３４は、第１の時間Ｔ１あたりの位置偏差の変化量が大きければ、第１の時間Ｔ１を基準にして短時間に急激に変化した位置偏差であると判断できる。そして、判断部１１３４は、短時間の急激な位置偏差の変化が発生したときに、エラーと判断できる。
【０１４１】
また、訓練装置１００においては、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａに入力されるフィードバック電流Ｉの電流値をモニターすることにより、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａが操作ロッド３を傾動させるために必要とするトルクをモニターできる。
さらに、訓練装置１００は操作ロッド３を訓練プログラムによって指示された傾動角度に制御しているため、フィードバック電流Ｉの電流値は、位置偏差の変化の大きさに応じて変化する。したがって、フィードバック電流Ｉの電流値に基づいて、予め決めた判断時間に基づいて、ゆっくりと変化する位置偏差の変化が発生しているか、又は、急激に変化する位置偏差が発生しているかがモニターできる。
また、判断部１１３４は、フィードバック電流Ｉの電流値が第１電流値Ｉ１以上である状態が第２の時間Ｔ２以上続いた場合に、エラーを発生させる。これにより、判断部１１３４は、判断時間において位置偏差が一定範囲内の場合、つまりは操作ロッド３（Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａ）が患者の肢に無理な負荷をかけていない場合、又は、位置偏差がゆっくりと変化している場合（患者の肢が操作ロッド３の動きにある程度追従して訓練の継続が可能な場合）には、第２の時間Ｔ２までは訓練を持続するように、操作ロッド３を制御できる。
【０１４２】
操作ロッド３は、長手軸線方向（長手軸線方向の一例）に沿って伸縮可能となっている。操作ロッド３が長手軸線方向に沿って伸縮可能であることにより、上肢又は下肢の、操作ロッド３の長さ方向の訓練も可能となる。
【０１４３】
訓練装置１００は、訓練指示部５（情報提供部の一例）をさらに備えている。訓練指示部５は、判断部１１３４によってエラーを判断したときに、使用者に対して視覚的情報又は聴覚的情報を提供する。
これにより、訓練装置１００の状態、すなわち、訓練装置１００においてエラーが発生していること、及び／又は、エラー発生の原因を患者や訓練装置１００の使用者に知らせることができる。
【０１４４】
訓練指示部５は、患者が、目標傾動角度（訓練プログラムにおいて設定された訓練ルートにおいて予め設定した通過点の一例）に操作ロッド３を到達させたときに、使用者に視覚的情報、及び／又は、聴覚的情報を提供している。これにより、使用者は、操作ロッド３を訓練プログラム通りに操作できたことを知ることができる。また、患者が予め設定した通過点に操作ロッド３を到達させたときに、患者に視覚的情報又は聴覚的情報を提供することにより、患者が訓練を続けるためのモチベーションを維持できる。
【０１４５】
訓練装置１００は、フィードバック電流制限部１１３７（フィードバック電流制限部の一例）をさらに備えている。フィードバック電流制限部１１３７は、判断部１１３４においてエラーが発生した場合に、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａのフィードバック電流Ｉの電流値を予め適切に設定した第２電流値Ｉ２（第２電流値の一例）に制限する。
これにより、訓練装置１００においてエラーが生じた場合に、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａから出力されるトルクを制限できる。その結果、患者に対して訓練中に過度の負荷をかけることなく、操作ロッド３を制御してリハビリテーションを行うことができる
【０１４６】
第２電流値Ｉ２は、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａへ入力可能な定格電流ＩＲ（定格電流の一例）の１より小さい所定の倍数ａ（所定の倍数の一例）の電流値ａ×ＩＲ（電流値の一例）である。これにより、定格電流ＩＲが長時間にわたってＸ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａに供給されなくなる。その結果、患者に対して過度の負荷をかけることなく、操作ロッド３を制御できる。
また、訓練装置１００の制御部１１に過剰な電気負荷が加わることを避けることができる。
【０１４７】
訓練装置１００は、累計時間計測部１１３６をさらに備えている。累計時間計測部１１３６は、第１の時間Ｔ１の間に生じた位置偏差が、第１の閾値φ１よりも小さい第２の閾値φ２（第２の閾値の一例）以上、かつ、第１の閾値φ１未満である累計時間ｔＡ（累計時間の一例）を計測する。この場合、判断部１１３４は、累計時間ｔＡが第３の時間Ｔ３（第３の時間の一例）以上である場合に、エラーと判断する。
第１の時間Ｔ１の間に生じた位置偏差が、第２の閾値φ２以上、かつ、第１の閾値φ１未満である時間を、累計時間計測部１１３６が計測することにより、ゆっくりと変化する位置偏差が継続している時間（累計時間ｔＡ）を測定できる。また、判断部１１３４が、累計時間ｔＡが第３の時間Ｔ３以上の場合にエラーと判断することにより、ゆっくりと変化する位置偏差に対して、第３の時間Ｔ３までは訓練を継続できる。
第２の閾値φ２は、患者の肢に過剰な負荷をかけていないと判断される閾値であるので、この時発生するエラーは、その患者にとって、設定された訓練プログラムの難易度が高く、その訓練プログラムを適切に実施できない場合や、装置内の部品が徐々に故障に至る予兆を検出することに対して好適に利用できる。この判断によって、患者は、その症状に応じて、適切な訓練プログラムを実施することができる。
【０１４８】
訓練装置１００は、指令作製部１１１（指令作製部の一例）と、モータ駆動部１１３５（モータ駆動部の一例）とをさらに備えている。指令作製部１１１は、訓練プログラムに従って、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａの回転速度（速度の一例）を制御するための指令である速度指令（速度指令の一例）を作製する。モータ駆動部１１３５は、速度指令に基づいて、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａを駆動する。また、速度指令は、少なくとも、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａを加速させる指令である加速指令（加速指令の一例）と、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａを減速させる減速指令（減速指令の一例）と、を含んでいる。さらに、モータ駆動部１１３５は、加速指令実行時において、位置偏差を累積保持するように、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａを駆動している。
指令作製部１１１により作製された、加速指令と減速指令とを少なくとも含む速度指令を用いて、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａを駆動することにより、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａは、訓練プログラムと患者の操作に対応して、スムーズに動作できる。その結果、患者は、操作ロッド３を意図したように操作することができる。
また、モータ駆動部１１３５が、加速指令実行時において位置偏差を累積保持するように、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａを駆動することにより、特に短時間における位置偏差が生じやすい加速指令実行時に、患者による操作ロッド３始動時又は停止時などにおいて位置偏差が生じた場合でも、患者は、訓練装置１００を用いて、訓練を継続できる。また、位置偏差を累積保持することにより、位置偏差の累積保持量に基づいて、訓練中における患者の肢の状況を把握できる。
【０１４９】
速度指令は、定速指令（定速指令の一例）をさらに含んでいる。定速指令は、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａを一定の回転速度で回転させる指令である。また、定速指令は、加速指令又は減速指令の前後のいずれかに配置される。また、モータ駆動部１１３５は、定速指令実行時において、位置偏差を累積保持するように、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａを駆動している。
速度指令が定速指令をさらに含むことにより、操作ロッド３が大きな傾動角度にて動作する場合にも、フィードバック電流値に基づいて、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａを一定速度にてスムーズに動作できる。また、定速指令実行時において位置偏差を累積保持するように、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａを駆動することにより、相対的に大きなトルクを必要とし位置偏差が生じやすい場合、例えば、操作ロッド３が大きな傾動角度にて動作する場合においても、患者は、訓練装置１００を用いて訓練を継続できる。
【０１５０】
モータ駆動部１１３５は、加速指令及び／又は定速指令実行時において、速度指令のみに追従するように、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａを駆動している。これにより、加速指令実行時及び／又は定速指令実行時に、位置偏差に関わらず、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａを駆動できる。その結果、相対的に大きなモータトルクを必要とし位置偏差が生じやすい、例えば操作ロッド３が大きな傾動角度にて動作する場合においても、患者は、訓練装置１００を用いて訓練を継続できる。
【０１５１】
指令作製部１１１は、訓練プログラムに従って、操作ロッド３の傾動角度を制御するための指令である位置指令（位置指令の一例）をさらに作製している。また、モータ駆動部１１３５は、減速指令実行時において、速度指令及び位置指令に追従するよう、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａを駆動している。
これにより、モータ駆動部１１３５は、操作ロッド３が訓練プログラムに指示された目標傾動角度まで極力偏差を少なくして到達するよう、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａを制御できる。その結果、患者に対して、操作ロッド３の位置情報を視覚的情報としてフィードバックする場合においても、この位置情報を好適に利用することができる。
【０１５２】
モータ駆動部１１３５は、傾動角度が指示傾動角度θｄ（減速開始位置の一例）に到達したときに、累積保持した位置偏差をリセットしている。これにより、減速時において、位置偏差が一時的に増大することによって、その位置偏差を補正するために、Ｘ軸方向傾動モータ１３５ｂ、及び、Ｙ軸方向傾動モータ１３５ａの回転速度が過剰に上昇することを抑制できる。その結果、患者は訓練を継続できる。
【０１５３】
２．他の実施形態
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲で種々の変更が可能である。特に、本明細書に書かれた複数の実施形態及び変形例は必要に応じて任意に組み合せ可能である。
（Ａ）モータの制御に関する他の実施形態
前述の第１実施形態においては、速度指令の減速指令実行時にのみ、操作ロッド３の傾動角度が位置指令に指示された指示傾動角度に追従するよう（位置制御）、Ｙ軸方向傾動モータ１３５ａ（Ｘ軸方向傾動モータ１３５ｂ、伸縮モータ３５９）が制御されていた。しかし、これに限られない。速度指令の加速指令実行時及び／又は定速指令実行時においても、位置制御および速度制御により、Ｙ軸方向傾動モータ１３５ａ（Ｘ軸方向傾動モータ１３５ｂ、伸縮モータ３５９）が制御されてもよい。この場合、モータ駆動部１１３５の切替部１１３５−８は、特に必要ない。
【０１５４】
速度指令の加速指令実行時及び／又は定速指令実行時において、位置制御により、Ｙ軸方向傾動モータ１３５ａ（Ｘ軸方向傾動モータ１３５ｂ、伸縮モータ３５９）を制御する場合には、操作ロッド３の傾動角度速度が過剰に大きくならないように、制御ゲインＫｐｐ及びＫｉｐを調整したり、合成部１１３５−７における第２制御量の重み付けの値を調整したりすることが好ましい。
これにより、操作ロッド３の傾動角度速度を過剰に大きくすることなく、操作ロッド３の傾動角度が指示傾動角度に追従できる。
【０１５５】
（Ｂ）エラー発生時における処理の他の実施形態
前述の第１実施形態においては、判断部１１３４がエラーを発生した際、Ｙ軸方向傾動モータ１３５ａ（Ｘ軸方向傾動モータ１３５ｂ、伸縮モータ３５９）に入力するフィードバック電流Ｉを第２電流値Ｉ２に制限していた。しかし、これに限られない。判断部１１３４がエラーを発生した際、Ｙ軸方向傾動モータ１３５ａ（Ｘ軸方向傾動モータ１３５ｂ、伸縮モータ３５９）の制御（回転）を停止してもよい。又は、訓練プログラムを中止してしてもよい。
これにより、判断部１１３４がエラーを発生した場合に、訓練装置１００を確実に停止できる。
【産業上の利用可能性】
【０１５６】
本発明は、モータにより駆動される操作ロッドを備え、所定の訓練プログラムに従って患者の肢を訓練する訓練装置に、広く適用できる。
【符号の説明】
【０１５７】
１００      訓練装置
１      固定フレーム
１１      制御部
１１１      指令作製部
１１３ａ、１１３ｂ、１１３ｃ      モータ制御部
１１３１      傾動角度算出部
１１３２      位置偏差算出部
１１３３      フィードバック電流検出部
１１３４      判断部
１１３５      モータ駆動部
１１３５−１      速度制御部
１１３５−２      位置制御部
１１３５−３      速度算出部
１１３５−４      電力供給部
１１３５−５      電流制限部
１１３５−６ａ      第１偏差算出部
１１３５−６ｂ      第２偏差算出部
１１３５−７      合成部
１１３５−８      切替部
１１３５−９      位置偏差設定部
１１３６      累計時間計測部
１１３７      フィードバック電流制限部
１３      操作ロッド傾動機構
１３１      Ｘ軸方向傾動部材
１３１ａ、１３１ｂ      軸
１３３      Ｙ軸方向傾動部材
１３３ａ、１３３ｂ      軸
１３５ａ      Ｙ軸方向傾動モータ
１３５ａ−１      第１回転情報出力センサ
１３５ｂ      Ｘ軸方向傾動モータ
１３５ｂ−１      第２回転情報出力センサ
１５ａ、１５ｂ      操作ロッド傾動機構固定部材
３      操作ロッド
３１      肢支持部材
３３      固定ステイ
３５      伸縮機構
３５１      可動ステイ
３５３      カバー
３５５      ナット
３５７      ねじ軸
３５９      伸縮モータ
３５９−１      第３回転情報出力センサ
３７      案内レール
５      訓練指示部
７      固定部材
９      椅子
９１      椅子接続部材
Ｉ      フィードバック電流
Ｉ１      第１電流値
Ｉ２      第２電流値
Ｉｍａｘ      最大電流
ＩＲ      定格電流
Ｋｐｖ、Ｋｉｖ      速度制御における制御ゲイン
Ｋｐｐ、Ｋｐｖ      位置制御における制御ゲイン
Ｓ、Ｓ’      空間
Ｔ１      第１時間
Ｔ２      第２時間
Ｔ３      第３時間
ｎ      整数
ｔ、ｔ１、ｔ２、ｔ３、ｔ４、ｔ５、ｔｄｃ、ｔｄａ、ｔａ、ｔｂ      経過時間
ｔＡ      累計時間
Δｖ      速度偏差
θｄ      減速開始位置に対応する（指示）傾動角度
Δθｄａ、ΔθＡ、ΔθＢ、Δθｎ、Δθｎ−１、Δθ２、Δθ３、Δθ４、Δθ５、Δθ６、Δθ７      位置偏差
φ１      第１の閾値
φ２      第２の閾値
【図１】
2015072480.tif 000003
【図２】
2015072480.tif 000004
【図３】
2015072480.tif 000005
【図４】
2015072480.tif 000006
【図５Ａ】
2015072480.tif 000007
【図５Ｂ】
2015072480.tif 000008
【図６】
2015072480.tif 000009
【図７Ａ】
2015072480.tif 000010
【図７Ｂ】
2015072480.tif 000011
【図７Ｃ】
2015072480.tif 000012
【図８】
2015072480.tif 000013
【図９】
2015072480.tif 000014
【図１０】
2015072480.tif 000015
【図１１】
2015072480.tif 000016
【図１２】
2015072480.tif 000017
【図１３】
2015072480.tif 000018
【図１４】
2015072480.tif 000019
【図１５】
2015072480.tif 000020
【図１６】
2015072480.tif 000021
【図１７】
2015072480.tif 000022
【図１８】
2015072480.tif 000023
【手続補正書】
【提出日】平成28年5月12日(2016.5.12)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０１１９
【補正方法】変更
【補正の内容】
【０１１９】
まず、図１５中の速度変化（ｉ）が生じたときのフィードバック電流値の変化について説明する。ある経過時間において、訓練中の肢が訓練プログラムに追従しづらくなるなどの理由により、小さな速度偏差（ｉ）が発生する。この時、速度制御部１１３５−１からは、小さな速度変化に応じた小さな第１制御量が出力される。これは、前述の第１制御量を算出する式、Ｋｐｖ×Δｖ＋Ｋｉｖ×Ｉｎｔ（Δｖ）からも明らかである。第１制御量が小さい場合、フィードバック電流Ｉは、ゆっくりと上昇する（図１５中の（１））。なぜなら、フィードバック電流Ｉの上昇は、第１制御量の蓄積によって生じるからである。フィードバック電流Ｉの増加に応じて、Ｙ軸方向傾動モータ１３５ａから出力されるトルクも、ゆっくりと上昇する。なぜなら、モータから出力されるトルクは、フィードバック電流Ｉに応じて変化するからである。
そして、Ｙ軸方向傾動モータ１３５ａから出力されるトルクがある程度大きくなり、訓練中の肢の動作が訓練プログラムに追従できるようになると、速度偏差は解消する。そして、速度偏差が解消すると、フィードバック電流Ｉの上昇も停止する。
図１５に示すように、速度偏差（ｉ）が解消した後のフィードバック電流Ｉの電流値は、第１電流値Ｉ１以下である。このことは、速度偏差（ｉ）が解消した後のＹ軸方向傾動モータ１３５ａから出力されるトルクは、訓練中の肢を無理に動作させるほどのトルク（過負荷）ではないことを意味している。このような場合、肢の訓練は続行されてもかまわない。
【国際調査報告】
2015072480.tif 000024
2015072480.tif 000025
2015072480.tif 000026
2015072480.tif 000027