(57)【特許請求の範囲】
【請求項１】
駆動源と被駆動部材とを連結する弾性部材の弾性変形量の変化率である変形速度Ｖを、量子化された値として得られる前記弾性変形量に基づき演算する変形速度演算装置であって、
前記駆動源から前記弾性部材に動力を入力する入力側端部における速度である駆動源速度Ｖｄを取得する駆動源速度取得手段と、
前記弾性部材の弾性変形量Ｐｅを量子化された値として取得する変形量取得手段と、
異なる時刻に取得した複数の弾性変形量Ｐｅの値に基づき、弾性変形量Ｐｅの変化率を、量子化に基づく値の急変を均した値である近似変化率Ｖｅとして演算する近似変化率演算手段と、
前記駆動源速度取得手段が取得した駆動源速度Ｖｄと前記近似変化率演算手段が演算した近似変化率Ｖｅとに基づき、係数Ａを前記入力側端部の位置の時間的変化の周波数が高いほど大きくなる係数、係数Ｂを前記入力側端部の位置の時間的変化の周波数が低いほど大きくなる係数であるとして、前記弾性部材の変形速度Ｖを、
Ｖ＝Ａ・（−Ｖｄ）＋Ｂ・Ｖｅ
により演算する変形速度演算手段とを備えることを特徴とする変形速度演算装置。
【請求項２】
Ａ＋Ｂ＝１であることを特徴とする請求項１に記載の変形速度演算装置。
【請求項３】
Ｔを時定数、ｓを独立変数として、
Ａ＝Ｔｓ／（Ｔｓ＋１）
Ｂ＝１／（Ｔｓ＋１）
であることを特徴とする請求項２に記載の変形速度演算装置。
【請求項４】
駆動源と被駆動部材とを連結する弾性部材の弾性変形量の変化率である変形速度Ｖを、量子化された値として得られる前記弾性変形量に基づき演算する変形速度演算方法であって、
前記駆動源から前記弾性部材に動力を入力する入力側端部における速度である駆動源速度Ｖｄを取得するステップと、
前記弾性部材の弾性変形量Ｐｅを量子化された値として取得するステップと、
異なる時刻に取得した複数の弾性変形量Ｐｅの値に基づき、弾性変形量Ｐｅの変化率を、量子化に基づく値の急変を均した値である近似変化率Ｖｅとして演算するステップと、
駆動源速度Ｖｄと近似変化率Ｖｅとに基づき、係数Ａを前記入力側端部の位置の時間的変化の周波数が高いほど大きくなる係数、係数Ｂを前記入力側端部の位置の時間的変化の周波数が低いほど大きくなる係数であるとして、前記弾性部材の変形速度Ｖを、
Ｖ＝Ａ・（−Ｖｄ）＋Ｂ・Ｖｅ
により演算するステップとを備えることを特徴とする変形速度演算方法。
【請求項５】
駆動装置であって、
駆動源と、
前記駆動源により駆動される被駆動部材と、
一端が前記駆動源から駆動力を受け、他端で前記被駆動部材に接続されて前記駆動源の動作を前記被駆動部材に伝える、弾性変形可能な弾性部材と、
前記駆動源の速度を検出する駆動源速度センサと、
前記弾性部材の弾性変形量Ｐｅを量子化された値として検出する変位センサと、
前記駆動源の速度と前記弾性変形量とに基づき弾性部材の弾性変形量の変化率である変形速度Ｖを演算する変形速度演算装置とを備え、
前記変形速度演算装置は、
前記駆動源の速度に基づいて、前記駆動源から前記弾性部材に動力を入力する入力側端部における速度である駆動源速度Ｖｄを取得する駆動源速度取得手段と、
前記変位センサから弾性変形量Ｐｅを取得する変形量取得手段と、
異なる時刻に取得した複数の弾性変形量Ｐｅの値に基づき、弾性変形量Ｐｅの変化率を、量子化に基づく値の急変を均した値である近似変化率Ｖｅとして演算する近似変化率演算手段と、
前記駆動源速度取得手段が取得した駆動源速度Ｖｄと前記近似変化率演算手段が演算した近似変化率Ｖｅとに基づき、係数Ａを前記入力側端部の位置の時間的変化の周波数が高いほど大きくなる係数、係数Ｂを前記入力側端部の位置の時間的変化の周波数が低いほど大きくなる係数であるとして、前記弾性部材の変形速度Ｖを、
Ｖ＝Ａ・（−Ｖｄ）＋Ｂ・Ｖｅ
により演算する変形速度演算手段とを備えることを特徴とする駆動装置。
【請求項６】
前記駆動源と前記弾性部材との間に、前記駆動源の作動量に対する前記被駆動部材の作動量を小さくする減速機が設けられていることを特徴とする請求項５に記載の駆動装置。
【請求項７】
Ａ＋Ｂ＝１であることを特徴とする請求項５または請求項６に記載の駆動装置。
【請求項８】
Ｔを時定数、ｓを独立変数として、
Ａ＝Ｔｓ／（Ｔｓ＋１）
Ｂ＝１／（Ｔｓ＋１）
であることを特徴とする請求項７に記載の駆動装置。
【請求項９】
前記減速機は、波動歯車装置であることを特徴とする請求項６に記載の駆動装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、弾性部材を介して駆動源で部材を駆動する場合における、弾性部材の変形速度演算装置および変形速度演算方法ならびに駆動装置に関する。
【背景技術】
【０００２】
近年、ロボットの関節機構として、モータや油圧アクチュエータなどの回転駆動源からの出力を、ばねなどの弾性部材を介して関節により接続されるリンクに伝達する構成が提案されている（特許文献１）。このような関節機構は、ＳＥＡ（Ｓｅｒｉａｌ  Ｅｌａｓｔｉｃ  Ａｃｔｕａｔｏｒ）と呼ばれ、リンクが障害物などに衝突したときに、弾性部材が変形することで障害物や駆動源を保護したり、弾性部材の変形量に基づいてリンクに掛かる負荷を検出したりすることで、ロボットの適切な制御を行うことが可能となる。
【０００３】
このような弾性部材の関節の負荷を適切に制御するということは、すなわち、弾性部材の変形量を適切に制御するということである。そのためには、弾性部材の変形量だけでなく、変形速度も正確に検出する必要がある。例えば、弾性部材の変形量が変化しているときには、変形量が増える方向にあるのか、減る方向にあるのかを知る必要もあるし、変形速度の大きさによって、その後、リンクをどちらにどれだけ動かしていくのがよいかも変わってくるからである。
【０００４】
弾性部材の変形量を測定する場合、その測定方法はいくつかあり、おおまかにはアナログ的な方法とデジタル的な方法がある。アナログ的な方法として、歪ゲージを用いる方法がある。しかし、歪ゲージを用いる方法は、環境温度による誤差や電気的なノイズが多く混入するため、あまり良い測定精度は得られない。現在においては、変位を光学センサにより検出する方法は、このような問題がなく、変形量を高精度に測定することが可能である。この方法ではエンコーダを用いるため、デジタル的な出力値（量子化された値）が得られる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−０５５５４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、量子化された値により弾性部材の変形量を取得する場合、変形速度を正確に見積もるのが困難となる。変形速度は、前回の位置と今回の位置の差（変形量）を、サンプリング周期で割ることで得られるが、位置が量子化された値である場合、ほとんどの時刻では速度が０であり、ある限られた瞬間だけ、計算上、非常に大きな速度が算出されることになる。
【０００７】
このような、時間的にとびとびに得られる速度を滑らかに近似するため、従来は、変形速度のローパスフィルタによる近似や、変形量を曲線近似して、この近似曲線を微分することで時間的な変化が少ない滑らかな速度を得ていた。
しかしながら、これらの方法では、変形速度の値が真の値より時間的な遅れを生じるので、弾性部材が変形し始めるときの応答性が良くないという問題がある。もちろん、これらの近似をするときに、過去に遡及して参照する（計算に用いる）データ数を少なくすれば応答性は良くなるのであるが、この場合、変形量のデータに少しの変化があっただけで、近似後のデータが過敏に反応してしまい、安定性が悪いという問題がある。
【０００８】
本発明は、以上のような背景に鑑みて創案されたものであり、弾性部材を介して駆動源で部材を駆動する場合において、変形速度を高い安定性で、かつ高い応答性で得ることができる、弾性部材の変形速度演算装置および変形速度演算方法ならびに駆動装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
前記した目的を達成するため、本発明の変形速度演算装置は、駆動源と被駆動部材とを連結する弾性部材の弾性変形量の変化率である変形速度Ｖを、量子化された値として得られる前記弾性変形量に基づき演算する変形速度演算装置であって、前記駆動源から前記弾性部材に動力を入力する入力側端部における速度である駆動源速度Ｖｄを取得する駆動源速度取得手段と、前記弾性部材の弾性変形量Ｐｅを量子化された値として取得する変形量取得手段と、異なる時刻に取得した複数の弾性変形量Ｐｅの値に基づき、弾性変形量Ｐｅの変化率を、量子化に基づく値の急変を均した値である近似変化率Ｖｅとして演算する近似変化率演算手段と、前記駆動源速度取得手段が取得した駆動源速度Ｖｄと前記近似変化率演算手段が演算した近似変化率Ｖｅとに基づき、係数Ａを前記入力側端部の位置の時間的変化の周波数が高いほど大きくなる係数、係数Ｂを前記入力側端部の位置の時間的変化の周波数が低いほど大きくなる係数であるとして、前記弾性部材の変形速度Ｖを、
Ｖ＝Ａ・（−Ｖｄ）＋Ｂ・Ｖｅ
により演算する変形速度演算手段とを備える。
【００１０】
弾性部材に動力を入力する入力側端部において変位を与えた場合、その変形（変位を与えたことにより発生した変形）は、弾性部材の内部を通って他端（入力側に対して、便宜上、「負荷側端部」という。）へと伝わっていく。この変形の伝達の速度は、弾性部材の弾性率に応じて変化し、弾性率が大きい場合には、速く伝達し、小さい場合にはゆっくりと伝達する。弾性率の大きさによってこのような速度の違いはあるものの、非常に速い速度で入力側端部に変位を与えた場合には、その変形は瞬時には負荷側端部に伝わることができず、弾性部材は入力側端部のみで変形し、負荷側端部の位置は変化しない。
【００１１】
このようなことから、弾性部材の入力側端部に非常に高周波の変位を与えた場合には、負荷側端部はほとんど変位せず、弾性部材の変形量は、入力側端部に与えた変位と同じになる。したがって、上記のように係数Ａを前記駆動源の位置の時間的変化の周波数が高いほど大きくなる係数、係数Ｂを前記駆動源の位置の時間的変化の周波数が低いほど大きくなる係数であるとして、
Ｖ＝Ａ・（−Ｖｄ）＋Ｂ・Ｖｅ
により弾性部材の変形速度Ｖを演算すれば、入力側端部の位置の変化が高周波であるほど、駆動源速度（入力側端部における速度）を重視し、入力側端部の位置の変化が低周波であるほど近似変化率Ｖｅを重視するように重み付けした変形速度の値が得られる。これにより、従来であれば、近似変化率Ｖｅにより得ていたことによる遅れを改善して、入力側端部に変位が生じた当初の変形速度を良好な応答性で演算することができる。また、応答性は駆動源速度Ｖｄの速度を重視することで良好にしているので、近似変化率Ｖｅを過剰に少ないデータで演算する必要がない。そして、入力側端部における変位の時間的変化が低周波の場合には、この近似変化率Ｖｅを重視して変形速度Ｖを演算するので、弾性部材の変形速度を高い安定性で得ることができる。
【００１２】
なお、ここでの近似変化率Ｖｅというのは、従来公知の方法により得られる変化率を含み、例えば、ローパスフィルタによる近似や、最小二乗法による近似により得られる応答遅れを含む変化率である。
【００１３】
前記した変形速度演算装置においては、Ａ＋Ｂ＝１であることが望ましい。係数Ａと係数Ｂは、重みの係数であるので、原理的にはＡ＋Ｂが１であることで、より適切な変形速度Ｖを求めることができるからである。もっとも、弾性変形量の変化率を求めようとする個々の装置の特性に応じて、ＡまたはＢの値を調整してＡ＋Ｂが１とならないような演算方法を採用してもよい。
【００１４】
前記した変形速度演算装置においては、係数Ａおよび係数Ｂは、例えば、Ｔを時定数、ｓを独立変数として、
Ａ＝Ｔｓ／（Ｔｓ＋１）
Ｂ＝１／（Ｔｓ＋１）
とすることができる。
【００１５】
前記した課題を解決する本発明は、変形速度演算方法として提供することもできる。すなわち、この方法は、駆動源と被駆動部材とを連結する弾性部材の弾性変形量の変化率である変形速度Ｖを、量子化された値として得られる前記弾性変形量に基づき演算する変形速度演算方法であって、前記駆動源から前記弾性部材に動力を入力する入力側端部における速度である駆動源速度Ｖｄを取得するステップと、前記弾性部材の弾性変形量Ｐｅを量子化された値として取得するステップと、異なる時刻に取得した複数の弾性変形量Ｐｅの値に基づき、弾性変形量Ｐｅの変化率を、量子化に基づく値の急変を均した値である近似変化率Ｖｅとして演算するステップと、駆動源速度Ｖｄと近似変化率Ｖｅとに基づき、係数Ａを前記入力側端部の位置の時間的変化の周波数が高いほど大きくなる係数、係数Ｂを前記入力側端部の位置の時間的変化の周波数が低いほど大きくなる係数であるとして、前記弾性部材の変形速度Ｖを、
Ｖ＝Ａ・（−Ｖｄ）＋Ｂ・Ｖｅ
により演算するステップとを備える構成とすることができる。
【００１６】
また、前記した課題を解決する本発明は、駆動源を有する駆動装置として提供することもできる。すなわち、この駆動装置は、駆動源と、前記駆動源により駆動される被駆動部材と、一端が前記駆動源から駆動力を受け、他端で前記被駆動部材に接続されて前記駆動源の動作を前記被駆動部材に伝える、弾性変形可能な弾性部材と、前記駆動源の速度を検出する駆動源速度センサと、前記弾性部材の弾性変形量Ｐｅを量子化された値として検出する変位センサと、前記駆動源の速度と前記弾性変形量とに基づき弾性部材の弾性変形量の変化率である変形速度Ｖを演算する変形速度演算装置とを備え、前記変形速度演算装置は、前記駆動源の速度に基づいて、前記駆動源から前記弾性部材に動力を入力する入力側端部における速度である駆動源速度Ｖｄを取得する駆動源速度取得手段と、前記変位センサから弾性変形量Ｐｅを取得する変形量取得手段と、異なる時刻に取得した複数の弾性変形量Ｐｅの値に基づき、弾性変形量Ｐｅの変化率を、量子化に基づく値の急変を均した値である近似変化率Ｖｅとして演算する近似変化率演算手段と、前記駆動源速度取得手段が取得した駆動源速度Ｖｄと前記近似変化率演算手段が演算した近似変化率Ｖｅとに基づき、係数Ａを前記入力側端部の位置の時間的変化の周波数が高いほど大きくなる係数、係数Ｂを前記入力側端部の位置の時間的変化の周波数が低いほど大きくなる係数であるとして、前記弾性部材の変形速度Ｖを、
Ｖ＝Ａ・（−Ｖｄ）＋Ｂ・Ｖｅ
により演算する変形速度演算手段とを備える。
【００１７】
このような駆動装置によれば、変形速度演算装置により、良好な応答性で弾性部材の弾性変形量の変形速度Ｖを得ることができるので、弾性部材の弾性変形量、つまり、弾性部材に掛かる負荷を所定値に制御しようとする場合に、変形速度Ｖを利用して良好な制御をすることが可能である。
【００１８】
前記した駆動装置においては、前記駆動源と前記弾性部材との間に、前記駆動源の作動量に対する前記被駆動部材の作動量を小さくする減速機が設けられていることが望ましい。
【００１９】
このように、駆動源と弾性部材の間に減速機が設けられていると、駆動源の速度を減速して入力側端部に伝えるので、入力側端部における駆動源速度Ｖｄは、減速機の減速分だけ高い精度（分解能）で得られる。そのため、より正確に弾性部材の変形速度Ｖを得ることができる。また、減速機の減速分だけ見かけ上の駆動源速度Ｖｄの分解能が良くなるので、駆動源速度センサとして、多少精度が低いものを使用すれば、コストダウンを図ることもできる。この場合において、減速機として、波動歯車装置を用いると、波動歯車装置は、減速比が非常に大きいので、上記の効果をより顕著に奏することができる。
【００２０】
前記した駆動装置においては、Ａ＋Ｂ＝１であることが望ましい。
【００２１】
また、前記した駆動装置においては、Ｔを時定数、ｓを独立変数として、
Ａ＝Ｔｓ／（Ｔｓ＋１）
Ｂ＝１／（Ｔｓ＋１）
であることが望ましい。
【発明の効果】
【００２２】
本発明の弾性部材の変形速度演算装置および変形速度演算方法ならびに駆動装置によれば、弾性部材を介して駆動源で部材を駆動する場合において、変形速度を高い安定性で、かつ良好な応答性で得ることができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の駆動装置の機械的構成の概念図（ａ）と、減速機を設けた場合の機械的構成の概念図（ｂ）である。
【図２】一実施形態に係る駆動装置の構成図である。
【図３】変形速度演算装置のブロック図である。
【図４】変形速度演算装置の処理の一例を示すフローチャートである。
【図５】弾性変形量の値の一例（ａ）と、近似前の変化率ΔＰｅ／ＤＴの値の一例（ｂ）のグラフである。
【図６】本発明の効果を確認したシミュレート計算における、入力トルクのグラフである。
【図７】本発明の効果を確認したシミュレート計算における、変形速度のグラフである。
【発明を実施するための形態】
【００２４】
次に、本発明の実施形態について、適宜図面を参照しながら詳細に説明する。本発明の駆動装置は、図１（ａ）に示す駆動装置Ｅ１のように、駆動源２と、被駆動部材としての負荷３が弾性部材４により結合され、駆動源２から弾性部材４の一端（入力側端部５）に動作が入力され、この動作（変位）が弾性部材４内を伝わって他端（負荷側端部６）に伝わり、負荷３を作動させるようになっている。ここでの駆動源２は、電気モータのようにそれ自身が駆動力を生むものであってもよいし、電気モータや外力などにより動かされ、その結果、弾性部材４の一端を作動させるように働くものであってもよい。そのため、負荷３に外力が働くことにより、この外力により弾性部材４を介して駆動源２が動くような場合には、負荷３が本発明における駆動源となり、駆動源２が本発明における被駆動部材（負荷）となる。
【００２５】
弾性部材４の入力側端部５よりも駆動源２側のいずれかの位置には、駆動源２の速度を検出する駆動源速度センサの一例としてのセンサ９１が設けられている。センサ９１は、一般に、直接的には、駆動源２の作動により動く部分の変位を検出するセンサである。
【００２６】
弾性部材４の負荷側端部６の近傍には、弾性部材４の変形量を量子化された値として検出する変位センサの一例としてのセンサ９２が設けられている。センサ９２は、例えば、入力側端部５に被検出子（例えば、エンコーダ板）を有し、負荷側端部６に被検出子の変位を検出する検出子（例えば、光センサ）を有することで、弾性部材４の変形量を検出することができる。このように、弾性部材４の変形量を検出するという意味からはセンサ９２が負荷側端部６の近傍にある必要はなく、検出子と被検出子の位置を逆にして、入力側端部５の近傍にセンサ９２を設けてもよい。また、センサ９２は、負荷側端部６の近傍部分の位置を検出する変位センサであってもよい。この場合には、センサ９１を入力側端部５の近傍の位置を検出する変位センサとし、センサ９２の出力とセンサ９１の出力の差分をとることで、弾性部材４の変形量を取得することができる。
【００２７】
このようなセンサ９１とセンサ９２の出力は、後述する変形速度演算装置に入力され、弾性部材４の変形量の変化率（変形速度Ｖ）を計算するのに使用される。
なお、駆動源２の動作は、直線的な動作であってもよいし、回転する動作であってもよい。駆動源２が直線的な動作をする場合には、弾性部材４は、例えば、伸縮するバネであるし、駆動源２が回転する動作をする場合には、弾性部材４は、例えば、捩れ変形するトーションバネである。
【００２８】
本発明の駆動装置は、図１（ｂ）の駆動装置Ｅ２のように、駆動源２と弾性部材４の間に、駆動源２の作動量に対する負荷３の作動量を小さくする減速機７を設けてもよい。この場合には、センサ９１は、減速機７と弾性部材４の間に設けても構わないが、減速機７よりも駆動源２側に設けるのが望ましい。そうすることで、センサ９１の出力に基づき入力側端部５における駆動源速度Ｖｄを算出すると、減速機７の減速比分だけ駆動源速度Ｖｄの最小検出可能速度が小さくなり、駆動源速度Ｖｄの見かけ上の分解能が高くなるからである。
【００２９】
図１（ｂ）のような減速機を有する駆動装置のより具体的な構成を示した実施形態について、図２以下を参照しながら説明する。図２に示す駆動装置１００は、駆動源の一例としてのモータ２０と、被駆動部材の一例としてのリンク３０と、モータ２０の作動速度を減速する減速機の一例としての波動歯車装置７０と、波動歯車装置７０とリンク３０に両端が接続され、波動歯車装置７０の出力をリンク３０に伝える弾性部材の一例としてのトーションバー４０と、モータ２０の動作を制御する制御装置８０とを主に備えている。
【００３０】
モータ２０、波動歯車装置７０およびトーションバー４０は、筐体１０に収納され、各部材の回転が軸支されている。また、リンク３０の回転も筐体１０に支持されている。各部材の支持の仕方などは本発明において重要ではないので、図２においてはこれらの詳細構造は省略している。
【００３１】
モータ２０は、ロータ２１とステータ２２を有し、制御装置８０からステータ２２に駆動信号が入力されることで駆動されるようになっている。モータ２０の近傍には、モータ２０の回転角（変位）を検出するセンサ９１が設けられている。センサ９１は、ロータ２１と一体に回転するエンコーダ板９１Ｂと、エンコーダ板９１Ｂに設けられた符号を読み取る光センサ９１Ａとを有している。センサ９１が検出したモータ２０の変位であるモータ変位Ｐｍは、制御装置８０に出力されている。
【００３２】
波動歯車装置７０は、ロータ２１の出力端に接続されたウェーブジェネレータ７１と、ウェーブジェネレータ７１の外側に設けられたフレクスプライン７２と、フレクスプライン７２の外周に設けられたギヤ歯（図示せず）と係合する内歯を有するサーキュラスプライン７３とを備えている。サーキュラスプライン７３は筐体１０に固定され、フレクスプライン７２の回転が出力されるようになっている。
【００３３】
フレクスプライン７２は、出力軸７２Ａがトーションバー４０の入力側端部５に接続されている。そして、トーションバー４０の負荷側端部６は、リンク３０に接続されている。
【００３４】
負荷側端部６とリンク３０を繋ぐ接続部材４１には、トーションバー４０の弾性変形量Ｐｅを検出するセンサ９２の光センサ９２Ａが設けられている。具体的に、センサ９２は、フレクスプライン７２の出力軸７２Ａに設けられたエンコーダ板９２Ｂの符号を、光センサ９２Ａで読み取ることで、量子化された値として弾性変形量Ｐｅを検出するようになっている。センサ９２の出力は、制御装置８０に出力されている。
【００３５】
制御装置８０は、モータ２０の動作を制御して、リンク３０の動作を制御する装置であり、本発明に関連する部分として、変形速度演算装置８１と駆動指令部８２とを備えている。
【００３６】
変形速度演算装置８１は、図３に示すように、入力側端部速度演算手段８１Ａと、近似変化率演算手段８１Ｂと、変形速度演算手段８１Ｃと、記憶手段８１Ｄとを備え、モータ変位Ｐｍと弾性変形量Ｐｅとに基づいて弾性部材の変形速度Ｖを出力するように構成されている。変形速度演算装置８１は、ＣＰＵ、ＲＯＭ、ＲＡＭなどを有する計算機であり、予め記憶されたプログラムに従い処理を実行することで各演算を行うように構成されている。
【００３７】
具体的に、入力側端部速度演算手段８１Ａは、制御装置８０の入力インタフェース８８から入力されたモータ変位Ｐｍに基づき、入力側端部５における駆動源の速度である駆動源速度Ｖｄを算出する手段である。駆動源速度Ｖｄは、モータ変位Ｐｍの値の変化があったときに、そのモータ変位Ｐｍを、波動歯車装置７０の減速比に基づいて入力側端部５における変位Ｐｄとして計算し、今回の駆動源速度Ｖｄ（ｎ）を、前回の変位Ｐｄ（ｎ−１）、今回の変位Ｐｄ（ｎ）、および、センサ９１による検出や、変形速度Ｖの計算のサイクルの周期である、サンプリング周期ＤＴを用いて、
Ｖｄ（ｎ）＝（Ｐｄ（ｎ）−Ｐｄ（ｎ−１））／ＤＴ
により算出する。モータ変位Ｐｍは、角度として検出されるので、駆動源速度Ｖｄは角速度として算出される。算出された駆動源速度Ｖｄは、変形速度演算手段８１Ｃに出力される。なお、入力インタフェース８８と入力側端部速度演算手段８１Ａは、駆動源速度取得手段の一例である。また、入力インタフェース８８は、変形量取得手段の一例である。
【００３８】
近似変化率演算手段８１Ｂは、制御装置８０の入力インタフェース８８から入力された、異なる時刻の複数の弾性変形量Ｐｅの値に基づき、弾性変形量Ｐｅの変化率を、量子化に基づく値の急変を均した値である近似変化率Ｖｅとして演算する手段である。近似変化率Ｖｅの求め方は、ローパスフィルタや、移動平均、曲線近似など公知の種々の方法があるが、ここでは、好適な一例として最小二乗法を用いた曲線近似を採用することとする。
【００３９】
近似変化率Ｖｅの演算を説明する前に、理解の容易のため、近似する前の変化率ΔＰｅ／ＤＴについて説明する。弾性変形量Ｐｅは、センサ９２により量子化された値として得られるため、光センサ９２Ａがエンコーダ板９２Ｂの符号を読み取ったときのみ値に変化があり、その他の場合には値に変化が無い。そのため、弾性変形量Ｐｅの値は、例えば、徐々に荷重が掛かって変形量が増えていく場合には、図５（ａ）に示すように、階段状に値が変化していく。そして、弾性変形量Ｐｅの今回値と前回値の差ΔＰｅをサンプリング周期ＤＴで割ることで得た変化率ΔＰｅ／ＤＴは、図５（ｂ）に示すように、弾性変形量Ｐｅに変化があったときにのみ非常に大きな値として算出され、それ以外のときには０になるという値が急変するものとなる。
【００４０】
ここで、最小二乗法により時刻ｔにおける値ｙのデータ系列
（ｔ，ｙ）＝（ｔ１，ｙ１），・・・（ｔｎ＿ｄａｔａ，ｙｎ＿ｄａｔａ）
を
【数１】
0005613117.tif 000002
の多項式により近似するとする。本実施形態では、弾性変形量Ｐｅのデータ系列を最小二乗法により曲線近似して、得られたｙの曲線近似式を時間ｔで微分することで近似変化率Ｖｅとすることができる。
【００４１】
最小二乗法により式（１）の近似曲線を得るには、評価関数Ｊ
【数２】
0005613117.tif 000003
の各ａｎについての偏微分が０の解を求めればよいので、
【数３】
0005613117.tif 000004
となる。
【００４２】
この連立方程式においてｙの項を右辺に移して行列表現すれば、次のようになる。
【数４】
0005613117.tif 000005
【００４３】
上記式（４）において、左辺の行列を行列Ｐ、右辺の列ベクトルをＱとすれば、
【数５】
0005613117.tif 000006
により式（１）の近似曲線の各係数ａ０〜ａｎを求めることができる。
【００４４】
ここで、行列Ｐの各要素は、
【数６】
0005613117.tif 000007
などにより求めることができる。つまり、行列Ｐは、一定行列である。
【００４５】
これにより、弾性変形量Ｐｅの近似曲線は、
【数７】
0005613117.tif 000008
となり、これを時間ｔで微分することで、近似変化率Ｖｅを
【数８】
0005613117.tif 000009
と求めることができる。
【００４６】
すなわち、近似変化率演算手段８１Ｂは、弾性変形量Ｐｅを取得する度に、今回を含む過去のｎ＿ｄａｔａ個の弾性変形量Ｐｅのデータに基づいて列ベクトルＱを計算し、Ｐ−１・Ｑの行列計算により近似曲線の各係数ａ０〜ａｎを求め、近似変化率Ｖｅを算出する。算出された近似変化率Ｖｅは、変形速度演算手段８１Ｃに出力される。
【００４７】
変形速度演算手段８１Ｃは、入力側端部速度演算手段８１Ａが演算した駆動源速度Ｖｄと近似変化率演算手段８１Ｂが演算した近似変化率Ｖｅとに基づき、係数Ａを入力側端部５の位置の時間的変化の周波数が高いほど大きくなる係数、係数Ｂを入力側端部５の位置の時間的変化の周波数が低いほど大きくなる係数であるとして、トーションバー４０の変形速度Ｖを、
Ｖ＝Ａ・（−Ｖｄ）＋Ｂ・Ｖｅ  ・・・（９）
により演算する手段である。すなわち、入力側端部５の位置変化が高周波であるほど、駆動源速度Ｖｄを重視し、低周波であるほど近似変化率Ｖｅを重視して重み付けの和をとることで変形速度Ｖを求める。このため、Ａ＋Ｂは１であるのが望ましい。また、上記のような重み付けの意味からは、Ａがハイパスフィルタ、Ｂがローパスフィルタであると見ることもできる。
【００４８】
係数Ａ，Ｂは、例えば、Ｔを時定数、ｓを独立変数として、Ａ＝Ｔｓ／（Ｔｓ＋１）、Ｂ＝１／（Ｔｓ＋１）により求まる値とすることができる。具体的に、１／（Ｔｓ＋１）は、
【数９】
0005613117.tif 000010
により求めることができる。Ａ＝Ｔｓ／（Ｔｓ＋１）については、Ａ＝１−Ｂにより求めることができる。ここでの入力値、前回値は、（９）式の（−Ｖｄ）やＶｅの入力値、前回値である。
【００４９】
変形速度演算手段８１Ｃは、上記の式（１０）で係数Ａ，Ｂを算出し、式（９）により変形速度Ｖを算出する。算出された変形速度Ｖは、駆動指令部８２に出力される。
【００５０】
記憶手段８１Ｄは、取得されたモータ変位Ｐｍ、弾性変形量Ｐｅや、計算に用いる係数Ａ，Ｂなどの各種の値を適宜記憶する装置である。
【００５１】
駆動指令部８２は、変形速度演算装置８１により算出された変形速度Ｖと検出された弾性変形量Ｐｅに基づき、公知の制御によりモータ２０に駆動信号を出力する手段である。例えば、駆動指令部８２は、モータ２０によりリンク３０を駆動する際に、弾性変形量Ｐｅの最大値が一定以下になるように駆動信号をモータ２０に出力する。もっとも、変形速度演算装置８１により算出された変形速度Ｖを利用して、モータ２０をどのように制御するかは任意である。
【００５２】
以上のように構成された駆動装置１００および変形速度演算装置８１の動作（変形速度演算方法）について、図２と図４のフローチャートを参照しながら説明する。
制御装置８０の駆動指令部８２からの駆動信号がモータ２０のステータ２２に出力されると、ロータ２１が回転して、エンコーダ板９１Ｂが回転する。このエンコーダ板９１Ｂの回転を光センサ９１Ａが検出して、モータ変位Ｐｍとして制御装置８０に出力する。
【００５３】
また、ロータ２１の回転は、波動歯車装置７０により減速されて出力軸７２Ａが回転する。出力軸７２Ａは、入力側端部５からトーションバー４０に回転力を与えて、この回転力が負荷側端部６に伝わり、負荷側端部６に接続されているリンク３０が回転する。このとき、負荷側端部６の接続部材４１に設けられた光センサ９２Ａは、出力軸７２Ａに設けられたエンコーダ板９２Ｂの回転変位を検出する。この回転変位は、量子化された値の弾性変形量Ｐｅとして制御装置８０に出力される。
【００５４】
制御装置８０は、まず、図４に示すように、行列Ｐと、この逆行列Ｐ−１を計算する（Ｓ１）。行列Ｐ，Ｐ−１は、一定行列であるので、近似変化率演算手段８１Ｂが一度だけ計算すればよい。
【００５５】
次に、制御装置８０は、センサ９２から出力された弾性変形量Ｐｅと、センサ９１から出力されたモータ変位Ｐｍを入力インタフェース８８から取得する（Ｓ２）。
【００５６】
そして、入力側端部速度演算手段８１Ａは、波動歯車装置７０の減速比と、サンプリング周期ＤＴを用いて入力側端部５における駆動源速度Ｖｄを算出する（Ｓ３）。
【００５７】
次に、近似変化率演算手段８１Ｂは、取得した弾性変形量Ｐｅに基づき、今回の列ベクトルＱを計算する（Ｓ４）。さらに、近似変化率演算手段８１Ｂは、Ｐ−１・Ｑにより最小二乗法による近似曲線の係数ａ０〜ａｎを計算する（Ｓ５）。これにより、実質的に近似変化率Ｖｅが算出されたことになる。
【００５８】
そして、変形速度演算手段８１Ｃは、ハイパスフィルタとして機能する係数Ａと、ローパスフィルタとして機能する係数Ｂを式（１０）により計算する（Ｓ６）。さらに、変形速度演算手段８１Ｃは、変形速度Ｖを前記式（９）により計算する（Ｓ７）。これにより、応答性がよいとともに安定性が高い変形速度Ｖを求めることができる。フローチャートで図示は省略するが、変形速度Ｖは、駆動指令部８２に出力され、駆動指令部８２では、次の目標の回転量および回転力を決定して、駆動信号をステータ２２に出力する。
【００５９】
制御装置８０は、以降、ステップＳ２に戻って、変形速度Ｖの算出をサンプリング周期ＤＴごとに繰り返す。
【００６０】
以上のようにして、本実施形態の変形速度演算装置８１によれば、高い安定性、かつ、良好な応答性でトーションバー４０の変形速度Ｖを演算することができる。そして、駆動装置１００は、この応答性に優れた変形速度Ｖを用いてモータ２０を制御するので、適切な動作を実現することが可能となる。
【００６１】
以上の本発明の効果を、シミュレーションにより確認した結果が図６および図７である。シミュレーションにおいては、モータ、減速機、トーションバーおよび所定のイナーシャを有する負荷を前記実施形態と同様に３次元モデルで作成し、モータが図６に示すようなトルクを発生するように条件を入力した。
【００６２】
このシミュレーションの結果、複数の方法により演算したトーションバーの変形速度を図７に重ねて表示した。図７においては、ΔＰｅ／ＤＴと、ΔＰｅ／ＤＴをローパスフィルタでフィルタリングしたローパスフィルタ後と、最小二乗近似して得られた近似変化率Ｖｅと、本発明の方法により演算したトーションバーの変形速度Ｖとを示した。
真値は、入力したトルクから得られる理想的な変形速度である。
ΔＰｅ／ＤＴは、ＤＴが非常に小さいため、実際は、各ピークが２５０程度の大きさの値であり、図７の縦軸スケールには収まらない。そのため、図７では、若干のフィルタを掛けて小さいピークにして表示している。ピーク値の後に裾を引いているのもそのためである。
【００６３】
図７を見て分かるように、ローパスフィルタ後の変形速度は、真値とはかけ離れており、それだけでは、精度が良くない。最小二乗近似の方法によれば、プロファイルは真値と近似しているが、値の立ち上がりが遅く、値の変化初期の応答性が悪いことが分かる。この応答性は、計算に用いるデータ数を減らすことで若干の改善は可能かもしれないが、データ数を減らした場合には、入力データが少し変化するだけで過敏に変化し、安定性が悪化する。
これに対し、本発明の方法により演算した変形速度Ｖは、時刻０から値が立ち上がり初め、最小二乗近似に比較してもより良好な応答性を実現でき、さらに安定性も良好であることが確認された。
【００６４】
以上に本発明の実施形態について説明したが、本発明は、前記した各実施形態に限定されることなく適宜変形して実施することが可能である。
例えば、変形速度演算手段が用いる係数Ａ，Ｂは、前記したものに限られない。例えば、入力側端部の位置の時間的変化の周波数が高いほど大きくなる係数Ａとしては、通過帯域を適切に選択することで下記式のバンドパスフィルタを用いることができる。
【数１０】
0005613117.tif 000011
【００６５】
また、入力側端部の位置の時間的変化の周波数が低いほど大きくなる係数Ｂとしては、下記の二次フィルタを用いることができる。
【数１１】
0005613117.tif 000012
【００６６】
また、近似変化率Ｖｅを求めるのに用いる近似曲線としては、三角関数
【数１２】
0005613117.tif 000013
を用いることができる。
【００６７】
前記実施形態においては、駆動装置に減速機を設ける場合、駆動源と入力側端部の間に設ける例のみを示したが、減速機は、負荷側端部と負荷との間に設けられていても構わない。もっとも、駆動源速度の分解能を高くする効果を得るために、前記実施形態のように駆動源と入力側端部の間に減速機を設けるのが望ましい。
【００６８】
前記実施形態においては、量子化された値として弾性部材の弾性変形量Ｐｅを検出する変位センサとして、エンコーダ板と光センサを用いる場合のみを例示したが、変位センサとしては、ポテンショメータや渦電流式ＣＣＤなどを用いることもできる。
【符号の説明】
【００６９】
２      駆動源
３      負荷
４      弾性部材
５      入力側端部
６      負荷側端部
７      減速機
１０    筐体
２０    モータ
３０    リンク
４０    トーションバー
７０    波動歯車装置
８０    制御装置
８１    変形速度演算装置
８１Ａ  入力側端部速度演算手段
８１Ｂ  近似変化率演算手段
８１Ｃ  変形速度演算手段
８１Ｄ  記憶手段
８８    入力インタフェース
９１    センサ
９２    センサ
１００  駆動装置
Ｅ１    駆動装置
Ｅ２    駆動装置
【図１】
0005613117.tif 000014
【図２】
0005613117.tif 000015
【図３】
0005613117.tif 000016
【図４】
0005613117.tif 000017
【図５】
0005613117.tif 000018
【図６】
0005613117.tif 000019
【図７】
0005613117.tif 000020