(57)【要約】【課題】マニピュレータの静的パラメータを高い精度で推定できなかった。【解決手段】パラメータ推定装置１は、マニピュレータの所定の箇所について測定された複数の測定位置と、それらにそれぞれ対応する各関節角度の初期値とを受け付ける受付部１１、初期値を用いて測定位置に応じた関節角度を推定する関節変数推定部１４、受け付けられた複数の測定位置と、複数の測定位置にそれぞれ対応する位置であり、関節角度の推定値及び静的パラメータを用いて算出した位置である複数の算出位置とのそれぞれの差に応じた目的関数を最適化するように静的パラメータを推定するパラメータ推定部１３、静的パラメータの推定値を出力する出力部１６を備える。このように、目的関数の最適化によって静的パラメータを推定することにより、任意のマニピュレータについて、精度の高い静的パラメータの推定を実現することができる。【選択図】図１
2017164838.tif 000002
【特許請求の範囲】
【請求項１】
モータによって駆動される関節によって連結された複数のリンクを有するマニピュレータのあらかじめ決められた測定箇所について、外界センサによって測定された位置である複数の測定位置と、当該複数の測定位置にそれぞれ対応する各関節の変数である関節変数の初期値とを受け付ける受付部と、
前記初期値を用いて、前記複数の測定位置にそれぞれ対応する各関節の関節変数を推定する関節変数推定部と、
前記受付部によって受け付けられた複数の測定位置と、当該複数の測定位置にそれぞれ対応する位置であり、前記関節変数推定部によって推定された関節変数の推定値、及び前記マニピュレータの静的パラメータを用いて算出した位置である複数の算出位置とのそれぞれの差に応じた目的関数を最適化するように前記静的パラメータを推定するパラメータ推定部と、
前記パラメータ推定部によって推定された静的パラメータの推定値を出力する出力部と、を備えたパラメータ推定装置。
【請求項２】
前記関節変数推定部による関節変数の推定と、前記パラメータ推定部による静的パラメータの推定とは繰り返して行われ、
前記関節変数推定部は、前記初期値と、ヤコビ行列の逆行列を含む関数変数の推定値の漸化式と、当該漸化式に代入される静的パラメータの最新の推定値及び関数変数の最新の推定値とを用いて関節変数を推定し、
前記出力部は、静的パラメータの最新の推定値を出力する、請求項１記載のパラメータ推定装置。
【請求項３】
静的パラメータの推定値が収束したかどうかを判断する判断部をさらに備え、
前記出力部は、前記判断部によって静的パラメータの推定値が収束したと判断された場合に、静的パラメータの最新の推定値を出力する、請求項２記載のパラメータ推定装置。
【請求項４】
前記パラメータ推定部は、前記目的関数を最適化する際の静的パラメータの初期値として静的パラメータの設計値を用いる、請求項１から請求項３のいずれか記載のパラメータ推定装置。
【請求項５】
静的パラメータは、ＤＨ（Denavit-Hartenberg）パラメータを含む、請求項１から請求項４のいずれか記載のパラメータ推定装置。
【請求項６】
関節変数は、関節角度である、請求項１から請求項５のいずれか記載のパラメータ推定装置。
【請求項７】
関節変数の初期値は、当該関節変数に対応する関節のモータの角度に応じた初期値である、請求項１から請求項６のいずれか記載のパラメータ推定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マニピュレータの静的パラメータを推定するパラメータ推定装置に関する。
【背景技術】
【０００２】
複数のリンクが関節によって連結されたマニピュレータの所望の位置（例えば、手先位置など）を、リンク（アーム）の長さや関節の角度などのパラメータを用いて順運動学によって算出することができる。なお、そのような算出方法として、例えば、ロボットの構造がＤＨ（Denavit-Hartenberg）記法で表現される場合における算出方法が一般的に用いられる。ＤＨ記法にはいくつもの手法が存在するが、どの手法もパラメータを用いて関節ｎから関節ｎ＋１をつなぐ座標変換を表現する点は同じである。
【０００３】
なお、例えば、ロボット製造時の機械加工誤差や組み付け作業時の誤差等によって、パラメータに誤差の存在することがある。そのような誤差が存在する場合には、マニピュレータの所望の位置の算出精度が落ちるため、より正確なパラメータの値を知りたいという要望があった。例えば、特許文献１には、６軸ロボットにおいて、軸間オフセットのずれ量を計測して、ＤＨパラメータを補正する方法が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−０３９６４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載された方法を用いることができるのは所定の６軸マニピュレータに限定され、それ以外のマニピュレータについては用いることができないという問題があった。また、それ以外のマニピュレータについては、そのマニピュレータごとに、軸間オフセットのずれ量を計測して補正する方法を考える必要があるという問題もあった。
一般的に言えば、任意のマニピュレータについて、リンクの長さ等のパラメータを正確に求めたいという要望があった。
【０００６】
本発明は、上記事情に応じてなされたものであり、マニピュレータの静的パラメータを正確に推定することができるパラメータ推定装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明によるパラメータ推定装置は、モータによって駆動される関節によって連結された複数のリンクを有するマニピュレータのあらかじめ決められた測定箇所について、外界センサによって測定された位置である複数の測定位置と、複数の測定位置にそれぞれ対応する各関節の変数である関節変数の初期値とを受け付ける受付部と、前記初期値を用いて、複数の測定位置にそれぞれ対応する各関節の関節変数を推定する関節変数推定部と、受付部によって受け付けられた複数の測定位置と、複数の測定位置にそれぞれ対応する位置であり、関節変数推定部によって推定された関節変数の推定値、及びマニピュレータの静的パラメータを用いて算出した位置である複数の算出位置とのそれぞれの差に応じた目的関数を最適化するように静的パラメータを推定するパラメータ推定部と、パラメータ推定部によって推定された静的パラメータの推定値を出力する出力部と、を備えたものである。
このような構成により、目的関数の最適化によって静的パラメータを推定できるため、任意のマニピュレータについて、各関節の関節変数を直接測定しなくても、正確に静的パラメータの推定値を求めることができるようになる。
【０００８】
また、本発明によるパラメータ推定装置では、関節変数推定部による関節変数の推定と、パラメータ推定部による静的パラメータの推定とは繰り返して行われ、関節変数推定部は、初期値と、ヤコビ行列の逆行列を含む関数変数の推定値の漸化式と、漸化式に代入される静的パラメータの最新の推定値及び関数変数の最新の推定値とを用いて関節変数を推定し、出力部は、静的パラメータの最新の推定値を出力してもよい。
このような構成により、関節変数の推定と、静的パラメータの推定とを繰り返すことによって、精確な静的パラメータの推定を実現することができる。
【０００９】
また、本発明によるパラメータ推定装置では、静的パラメータの推定値が収束したかどうかを判断する判断部をさらに備え、出力部は、判断部によって静的パラメータの推定値が収束したと判断された場合に、静的パラメータの最新の推定値を出力してもよい。
このような構成により、出力された静的パラメータの推定値が、より精確なものとなる。
【００１０】
また、本発明によるパラメータ推定装置では、パラメータ推定部は、目的関数を最適化する際の静的パラメータの初期値として静的パラメータの設計値を用いてもよい。
このような構成により、静的パラメータの収束性を向上させることができる。したがって、繰り返し回数が少なくても、より精確に静的パラメータを推定することができる。
【００１１】
また、本発明によるパラメータ推定装置では、静的パラメータは、ＤＨパラメータを含んでもよい。
また、本発明によるパラメータ推定装置では、関節変数は、関節角度であってもよい。
このような構成により、回転関節によって連結されているマニピュレータの静的パラメータを推定することができる。
【００１２】
また、本発明によるパラメータ推定装置では、関節変数の初期値は、関節変数に対応する関節のモータの角度に応じた初期値であってもよい。
このような構成により、関節変数の初期値を容易に取得することができる。
【発明の効果】
【００１３】
本発明によるパラメータ推定装置によれば、任意のマニピュレータについて、正確に静的パラメータを推定することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施の形態によるパラメータ推定装置の構成を示すブロック図
【図２】同実施の形態によるパラメータ推定装置の動作を示すフローチャート
【発明を実施するための形態】
【００１５】
以下、本発明によるパラメータ推定装置について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。本実施の形態によるパラメータ推定装置は、マニピュレータの所定の位置に関する測定位置と算出位置との差に応じた目的関数を最適化するように静的パラメータを推定するものである。
【００１６】
図１は、本実施の形態によるパラメータ推定装置１の構成を示すブロック図である。本実施の形態によるパラメータ推定装置１は、受付部１１と、記憶部１２と、パラメータ推定部１３と、関節変数推定部１４と、判断部１５と、出力部１６とを備える。
【００１７】
受付部１１は、マニピュレータのあらかじめ決められた測定箇所について、外界センサによって測定された位置である測定位置と、その測定位置にそれぞれ対応する各関節の変数である関節変数の初期値とを受け付ける。なお、受付部１１は、その測定位置と、各関節変数の初期値との組を複数、受け付けるものとする。マニピュレータは、モータによって駆動される関節によって連結された複数のリンクを有する。マニピュレータの関節は、回転関節であってもよく、直動関節（並進関節）であってもよい。関節が回転関節である場合には、関節変数は関節の角度となり、関節が直動関節である場合には、関節変数は関節の移動量（距離）となる。なお、本実施の形態では、関節が回転関節である場合について主に説明する。マニピュレータの関節の個数は、１個でもよく、２個以上でもよい。マニピュレータの測定箇所は、通常、手先位置であるが、そうでなくてもよい。なお、例えば、先端のリンクまでのパラメータを推定したい場合には、その測定箇所は先端のリンクに存在する必要がある。外界センサは、例えば、距離センサであってもよく、ステレオカメラであってもよく、その他の位置を測定可能なセンサであってもよい。距離センサは、例えば、レーザートラッカーであってもよく、その他の距離センサであってもよい。以下、測定位置をｒmkとする。ｋは１からＭまでの整数であり、Ｍは測定位置の総数である。このｋは測定位置を識別するインデックスと考えることができる。ｒmkはワールド座標系におけるベクトルであり、
【数１】
2017164838.tif 000003
であるとする。複数の測定位置は、通常、異なる位置である。したがって、ｋごとに測定位置ｒmkは異なるベクトルとなる。
【００１８】
測定位置にそれぞれ対応する関節変数の初期値とは、マニピュレータの測定箇所が、その測定位置に存在する場合における各関節変数の初期値のことである。マニピュレータの測定箇所がある測定位置に存在する場合における各関節変数の初期値は、その測定位置に対応する各関節変数を推定する際に用いる初期値である。その初期値は、各関節変数の推定を開始する際に知りうる、各関節変数の本来の値に近い値であることが好適である。関節変数の初期値は、例えば、その関節変数に対応する関節のモータの角度に応じた初期値であってもよく、その関節変数に対応する関節の外部から観察される関節変数の初期値であってもよい。前者の場合には、結果として関節変数の初期値を知ることができる値が受け付けられた場合に、関節変数の初期値が受け付けられたと考えてもよい。具体的には、モータの角度が受付部１１で受け付けられた場合には、その角度に応じて関節の角度や移動量を算出することができるため、マニピュレータの測定箇所がある測定位置に存在する場合におけるモータの角度の受け付けを、そのモータの関節に関する関節変数の初期値の受け付けと考えてもよい。例えば、モータの角度に減速比を掛けることによって関節の角度を算出することができ、モータの角度に、単位角度に対する移動量を掛けることによって関節の移動量を算出することができる。なお、そのようにして算出した関節の角度や関節の移動量は、厳密には現実の角度等と異なっているが、近い値である。したがって、その角度等を現実の角度等の初期値として用いることができる。また、減速比や、単位角度に対する移動量は、あらかじめパラメータ推定装置１で記憶されていてもよく、または、受付部１１で受け付けられてもよい。また、関節の外部から観察される関節変数の初期値は、例えば、マニピュレータの測定箇所がある測定位置に存在する場合に、リンク間の関節の角度や距離をセンサや肉眼によって測定したものであってもよい。本実施の形態では、マニピュレータの測定箇所が測定位置ｒmkに存在する場合における各関節変数の初期値として、各関節のモータの角度ｑmk,iが受け付けられる場合について主に説明する。なお、ｉは１からＮまでの整数であり、Ｎはマニピュレータの関節の総数である。このｉは関節を識別するインデックスと考えることができ、ＤＨ記法と同様に、基端側から順番に、ｉ＝１，２，…，Ｎとなるものとする。受付部１１は、測定位置ｒmkと、Ｎ個の角度ｑmk,iとの組をＭ個受け付けることになる。なお、受付部１１によって受け付けられる測定位置の個数Ｍは、特に限定されないが、推定対象の静的パラメータの個数を超えていることが好適である。より精度の高い静的パラメータの推定を実現するためである。受付部１１は、受け付けた測定位置ｒmkと、Ｎ個の角度ｑmk,iとを対応付けて記憶部１２に蓄積する。
【００１９】
また、受付部１１は、後述するように、測定位置や各関節変数の初期値以外の情報を受け付けてもよい。例えば、受付部１１は、後述する算出位置の算出において用いられる固定値や、静的パラメータの初期値などを受け付けてもよい。受付部１１は、例えば、入力デバイス（例えば、キーボードやマウス、タッチパネルなど）から入力された情報を受け付けてもよく、有線または無線の通信回線を介して送信された情報を受信してもよく、所定の記録媒体（例えば、光ディスクや磁気ディスク、半導体メモリなど）から読み出された情報を受け付けてもよい。なお、受付部１１は、外界センサから測定位置を受け付け、モータのエンコーダから各関節変数の初期値であるモータの角度を受け付けてもよい。また、受付部１１は、受け付けを行うためのデバイス（例えば、モデムやネットワークカードなど）を含んでもよく、または含まなくてもよい。また、受付部１１は、ハードウェアによって実現されてもよく、または所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【００２０】
記憶部１２には、測定位置ｒmkと、関節変数の初期値であるＮ個の角度ｑmk,iとのＭ個の組が記憶される。それらの情報は、受付部１１によって蓄積されたものである。また、記憶部１２には、それ以外の情報、例えば、算出位置の算出において用いられる固定値や、静的パラメータの初期値などが記憶されてもよい。記憶部１２での記憶は、ＲＡＭ等における一時的な記憶でもよく、または、長期的な記憶でもよい。記憶部１２は、所定の記録媒体（例えば、半導体メモリや磁気ディスクなど）によって実現されうる。
【００２１】
パラメータ推定部１３は、受付部１１によって受け付けられた複数の測定位置と、複数の測定位置にそれぞれ対応する複数の算出位置とのそれぞれの差に応じた目的関数を最適化するように静的パラメータを推定する。ある測定位置に対応する算出位置は、関節変数推定部１４によって推定された関節変数の推定値と、マニピュレータの静的パラメータとを用いて算出された位置である。その関節変数の推定値は、マニピュレータの測定箇所がその測定位置に存在する場合における各関節の関節変数の推定値である。また、その静的パラメータは、変数としてのパラメータである。したがって、測定位置は、外界センサによって測定された位置であり、算出位置は、その同じ位置が順運動学によって算出された位置であって、静的パラメータを引数とする関数としての位置である。
【００２２】
［算出位置の算出］
まず、順運動学によって算出された、マニピュレータの測定箇所の位置である算出位置ｒについて説明する。算出位置ｒはワールド座標系におけるベクトルであり、
【数２】
2017164838.tif 000004
であるとする。なお、以下の説明では、ＤＨ記法を用いる。すなわち、wｐ＝（ｒT  １）Tとし、先端のリンク（Ｎ番目のリンク）の座標系におけるターゲット位置のベクトルをNｐ＝（Nｘt Nｙt Nｚt  １）Tとすると、
【数３】
2017164838.tif 000005
となる。なお、wＴNは、ワールド座標系と先端のリンクの座標系との間の座標変換を表す同次変換行列であり、wＴ0は、ワールド座標系と基端のリンク（０番目のリンク）の座標系との間の座標変換を表す同次変換行列であり、iＴi+1は、ｉ番目のリンクの座標系とｉ＋１番目のリンクの座標系との間の座標変換を表す同次変換行列である。各同次変換行列の要素には、関節変数ｑ1，ｑ2，…，ｑNと、パラメータβ，βfixとが含まれる。ここでは、関節変数が、Ｎ個の関節に応じたＮ個の変数ｑ1，ｑ2，…，ｑNの集合である場合について主に説明する。この場合には、各軸に１個の変数（例えば、角度や移動量）が存在することになる。なお、各軸の変数の個数は問わない。例えば、各軸に２個の変数（例えば、角度と移動量）が存在してもよい。パラメータβ，βfixはそれぞれパラメータの集合であり、パラメータβが推定対象のパラメータであり、パラメータβfixが固定値のパラメータであるとする。以下、固定値のパラメータβfixを単に固定値と呼ぶこともある。なお、パラメータβfixはなくてもよい。すなわち、すべてのパラメータが、推定対象のパラメータβであってもよい。推定対象のパラメータβは、ダイナミックに変化するものではないため、静的パラメータと呼ぶことにする。この静的パラメータには、ＤＨパラメータが含まれてもよい。静的パラメータの具体例については後述する。なお、ターゲット位置とは、マニピュレータにおける測定箇所の位置である。また、Ｎ番目のリンクの座標系におけるターゲット位置（Nｘ，Nｙ，Nｚ）は、推定対象の静的パラメータβであってもよく、固定値βfixであってもよい。本実施の形態では、ターゲット位置も静的パラメータβに含まれる場合について主に説明する。上述の説明から明らかなように、静的パラメータは、算出位置を算出する際に用いられる同次変換行列やターゲット位置に含まれるパラメータであって、変数及び固定値以外のものであると考えてもよい。
【００２３】
上述のように、wｐを関節変数ｑ1，ｑ2，…，ｑNと、パラメータβ，βfixとを用いて表すことができるが、パラメータβfixは固定値（定数）であるため、wｐは実質的に関節変数ｑ1，ｑ2，…，ｑNと、静的パラメータβとを用いて表すことができる。そのため、算出位置ｒの各要素を次のように記載することができる。ここで、Ｆx，Ｆy，Ｆzは、関節変数ｑ1，ｑ2，…，ｑN、静的パラメータβを引数とする関数である。
【数４】
2017164838.tif 000006
【００２４】
したがって、上記（２）〜（４）式の関数Ｆx，Ｆy，Ｆzに、推定された関節変数の値ｑe(j)k,1，ｑe(j)k,2，…，ｑe(j)k,Nを代入することによって、パラメータ推定部１３は、推定対象の静的パラメータで記述したｋ番目の測定位置に対応する算出位置、すなわちｋ番目の測定位置を順運動学によって推定した算出位置を取得することができる。上記（２）〜（４）式の関数Ｆx，Ｆy，Ｆzに関節変数の推定値ｑe(j)k,1，ｑe(j)k,2，…，ｑe(j)k,Nを代入した結果を、それぞれｘ（ｑe(j)k,1，…，ｑe(j)k,N，β），ｙ（ｑe(j)k,1，…，ｑe(j)k,N，β），ｚ（ｑe(j)k,1，…，ｑe(j)k,N，β）と記述し、それらを要素として有する算出位置のベクトルをｒ（ｑe(j)k,1，…，ｑe(j)k,N，β）と記述することにする。なお、ｊは整数であり、静的パラメータや関節変数が推定されるごとに１ずつインクリメントされる。したがって、ｊは、算出回数を識別するインデックスであると考えることができる。例えば、パラメータ推定部１３がｊ回目に算出する算出位置が、ｒ（ｑe(j)k,1，…，ｑe(j)k,N，β）となってもよい。なお、パラメータ推定部１３は、記憶部１２等で記憶されている上記（２）〜（４）式を読み出し、それらに推定された関節変数の値ｑe(j)k,1，ｑe(j)k,2，…，ｑe(j)k,Nを代入することによって、測定位置ごとに、すなわち、ｋ＝１〜Ｍのそれぞれについて、算出位置ｒ（ｑe(j)k,1，…，ｑe(j)k,N，β）を取得してもよい。その算出位置ｒ（ｑe(j)k,1，…，ｑe(j)k,N，β）は、静的パラメータβを変数として有する関数としての算出位置である。また、パラメータβfixをも引数として有する関数Ｆx，Ｆy，Ｆzの一般式が記憶部１２等で記憶されている場合には、パラメータ推定部１３は、その一般式に固定値や推定された関節変数の値を代入することによって、測定位置ごとに算出位置を取得してもよい。
【００２５】
［静的パラメータの推定］
次に、静的パラメータβの推定方法について説明する。上述のようにして算出したＭ個の算出位置ｒ（ｑe(j)k,1，…，ｑe(j)k,N，β）と、受付部１１で受け付けられたＭ個の測定位置ｒmkとを用いることによって、パラメータ推定部１３は、両位置の差を算出することができる。その差は、推定対象の静的パラメータβで記述された式となる。パラメータ推定部１３は、その差に応じた目的関数を算出し、その目的関数を最適化するように静的パラメータβの推定値を算出する。すなわち、測定位置と算出位置との差が小さくなるように静的パラメータβの推定値が算出されることになる。以下、そのようにして算出された静的パラメータの推定値をβ(j)とする。その推定値も、厳密には、静的パラメータに含まれる各パラメータの推定値の集合である。具体的には、例えば、目的関数を次式のＳ（β）とした場合、すなわち目的関数を、測定位置と算出位置との差のノルム（すなわち、両位置間の距離）を各測定位置に関して合計したものにした場合には、パラメータ推定部１３は、その目的関数Ｓ（β）が小さくなるように静的パラメータβの各推定値β(j)を推定してもよい。
【数５】
2017164838.tif 000007
【００２６】
通常、算出位置と測定位置との差が小さければ目的関数の値が小さくなる場合には、目的関数が小さくなるように最適化を行うことになる。一方、算出位置と測定位置との差が小さければ目的関数の値が大きくなる場合には、目的関数が大きくなるように最適化を行うことになる。パラメータ推定部１３は、例えば、ＬＭ（Levenberg-Marquardt）法を用いて最適化を行ってもよく、その他の非線形最適化手法を用いて最適化を行ってもよい。パラメータ推定部１３は、目的関数を最適化する静的パラメータの推定値β(j)を推定する際の静的パラメータβの初期値として、静的パラメータの設計値を用いてもよい。設計値とは、マニピュレータの設計時に設定された値である。通常、上述のように、実際の静的パラメータの値は、機械加工誤差等によって設計値からずれることになるが、静的パラメータの推定値β(j)を推定する際の初期値としては、好適な値であるからである。例えば、ＣＡＤでマニピュレータを設計している場合には、ＣＡＤの値が設計値となる。以下、静的パラメータの設計値をβ(0)とする。静的パラメータの設計値であるβ(0)は、例えば、受付部１１で受け付けられてもよい。また、固定値であるパラメータβfixについては、設計値を固定値として用いてもよい。なお、静的パラメータの設計値は、静的パラメータの推定値β(1)の推定、すなわち１回目の静的パラメータの推定値の推定にのみ初期値として用いられてもよく、または、それ以降の静的パラメータの推定値β(j)（ｊ≧２）の推定にも初期値として用いられてもよい。前者の場合には、静的パラメータの推定値β(j)（ｊ≧２）の推定には、例えば、前回に推定された静的パラメータの推定値β(j-1)を初期値として用いてもよい。また、最適化において、静的パラメータが完全に収束する前に算出を終了した場合には、厳密な意味での最適化ではないが、パラメータ推定部１３による静的パラメータの推定には、そのような推定が含まれてもよい。パラメータ推定部１３によって推定された静的パラメータの推定値β(j)は、関節変数推定部１４と、判断部１５と、出力部１６とに渡される。静的パラメータには、例えば、ＤＨパラメータ、エンコーダのオフセット値、測定箇所の座標値、及びワールド座標系から基端のリンクの座標系への座標変換に関するパラメータ等のうち、任意の１以上のパラメータが含まれてもよい。
【００２７】
なお、パラメータ推定部１３が静的パラメータの推定値β(j)を推定する際に、β(j)が適切に収束するようにすることが好適である。そのため、例えば、パラメータ推定部１３は、あらかじめ決められた条件を満たすまで、β(j)の更新を繰り返してもよい。その条件は、例えば、繰り返し回数であってもよく、｜β(j)−β(j-1)｜＜｜β(j-1)−β(j-2)｜となることであってもよく、その他の条件であってもよい。
【００２８】
関節変数推定部１４は、複数の測定位置にそれぞれ対応する関節の変数である関節変数を推定する。例えば、関節変数推定部１４は、Ｍ個の測定位置のそれぞれについて、Ｎ個の関節の関節変数の値を推定する。関節変数は、前述のように、例えば、関節角度であってもよく、関節移動量であってもよい。
【００２９】
［関節変数の推定］
ここで、関数変数の推定値ｑe(j)k,1，…，ｑe(j)k,Nの推定方法について説明する。マニピュレータのヤコビ行列（ヤコビアン）をＪとすると、Ｊ＝∂ｒ／∂ｑであるため、推定されたｊ番目の関数変数の推定値を各要素として有するベクトルｑe(j)kは、ヤコビ行列や、推定されたｊ−１番目の関数変数の推定値などを用いて、次の（６）式のように記述することができる。
【数６】
2017164838.tif 000008
ただし、ｑe(j)k，ｄｒ(j)kは、次式の通りである。
【数７】
2017164838.tif 000009
【００３０】
したがって、関節変数推定部１４は、（６）式を用いて各関数変数の推定値ｑe(j)k,1，…，ｑe(j)k,Nを算出することができる。具体的には、関節変数推定部１４は、（６）式の右辺第１項として、前回に推定した関節変数の推定値を用いる。そのため、関節関数の推定を２回以上行う場合には、前回の関節変数の推定値が保持されていることが好適である。なお、関節変数の前回の推定値は、関節変数の最新の推定値ということもできる。また、関節変数推定部１４は、記録媒体（例えば、記憶部１２であってもよい）で記憶されているヤコビ行列の逆行列に、関節変数の前回の推定値とパラメータ推定部１３によって推定された静的パラメータの最新の推定値とを代入することによって、（６）式の右辺第２項のヤコビ行列の逆行列を算出できる。また、関数変数推定部１４は、記憶部１２で記憶されている測定位置と、上記（２）〜（４）式に、関節変数の前回の推定値とパラメータ推定部１３によって推定された静的パラメータの最新の推定値とを代入した算出位置とを用いることによって、（６）式の右辺第２項のｄｒ(j-1)kを算出できる。このようにして、関節変数推定部１４は、（６）式のｑe(j)kを算出することができる。関節変数推定部１４は、測定位置ごとに、すなわち、ｋ＝１〜Ｍのそれぞれについてｑe(j)kを算出する。
【００３１】
なお、関節変数の推定値ｑe(1)kを算出する際には、関節変数推定部１４は、受付部１１で受け付けられた関節変数の初期値ｑe(0)kを用いて関節変数を推定することになる。各関節が回転関節であり、Ｎ個の関節に関する各モータの角度ｑmk,1，…，ｑmk,Nが受け付けられている場合には、初期値ｑe(0)k,1，…，ｑe(0)k,Nは、ｉ＝１〜Ｎ，ｋ＝１〜Ｍについて、次の（７）式のようになる。この初期値は、モータの角度に応じた初期値である。
【数８】
2017164838.tif 000010
ただし、ｎiはｉ番目の関節のモータに接続されている減速機の減速比である。なお、モータの角度ではなく、関節の外部から観察される関節変数の初期値が受け付けられている場合には、その受け付けられた初期値がｑe(0)k,1，…，ｑe(0)k,Nとなる。関節変数推定部１４は、各関数変数の1回目の推定において、
【数９】
2017164838.tif 000011
として推定してもよく、または、
【数１０】
2017164838.tif 000012
として推定してもよい。なお、β(0)は、前述のように、静的パラメータの設計値である。また、ｄｒ(0)kの算出で用いられる算出位置ｒ（ｑe(0)k,1，…，ｑe(0)k,N，β(0)）は、（２）〜（４）式に関節変数の初期値ｑe(0)k,1，…，ｑe(0)k,Nや静的パラメータの初期値β(0)を代入することによって算出できる。また、後述するように、（９）式に代えて、より高次の項を含む数値解析や、より近似の精度の高い数値解析によって１回目の推定を行ってもよい。また、関節変数推定部１４が各関節変数の推定を１回だけ行う場合と、２回以上行う場合とがある。１回だけ推定する場合であって、（８）式によって各関節変数の初期値を推定するときには、関節変数推定部１４は、受付部１１で受け付けられた初期値を用いて関節変数の推定を行うことになる。一方、１回だけ推定する場合であっても、（９）式のヤコビ行列を用いて各関節変数の初期値を推定するときや、２回以上推定する場合には、関節変数推定部１４は、例えば、上記（６）式のように、関節変数の最新の推定値、ヤコビ行列、及び測定位置と最新の算出位置との差を用いて関節変数を算出することになる。そのヤコビ行列は、静的パラメータの最新の推定値と関節変数の最新の推定値とに応じたヤコビ行列、すなわち、それらの代入されたヤコビ行列である。また、その最新の算出位置は、静的パラメータの最新の推定値と関節変数の最新の推定値とに応じた算出位置、すなわち、それらの代入された数値としての算出位置である。なお、１回目の推定時には各関節変数の初期値を用いており、２回目以降の推定時には、１回前の推定結果を用いているため、関節変数推定部１４は、２回目以降の関節変数の推定値の算出においても、各関節変数の初期値を間接的に用いていることになる。関節変数推定部１４によって推定された関節変数の推定値は、パラメータ推定部１３に渡される。この関節変数推定部１４による関節変数の推定は、測定位置ごと（すなわち、ｋごと）に並列して処理することも可能である。
【００３２】
なお、関節変数推定部１４が関節変数ｑe(j)kの推定値を推定する際に、前回よりも精度が高くなるように推定を行ってもよい。すなわち、関節変数推定部１４は、ｑe(j-1)kよりもｑe(j)kの方が高い精度となるようにｑe(j)kを推定してもよい。具体的には、関節変数推定部１４は、推定した関節変数の推定値ｑe(j)kが||ｄｒ(j)k||＞||ｄｒ(j-1)k||の条件を満たす場合には、その条件を満たさなくなるまで、より近似の精度の高い数値解析や、より高次の項を含む数値解析を行って関節変数の推定値ｑe(j)kを推定するようにしてもよい。より近似の精度の高い数値解析とは、上記（６）式のオイラー法による数値解析よりも近似の精度の高い数値解析のことであり、例えば、ルンゲクッタ法による数値解析等であってもよい。ルンゲクッタ法は、２次でもよく、４次でもよく、または、その他の次元でもよい。より高次の項を含む数値解析とは、上記（６）式よりも高次の項を含む数値解析のことである。
【００３３】
このように、（６）式以外の式を用いて関数変数の推定値が算出される場合であっても、（６）式の右辺第２項が変更になる以外は、（６）式と同様の漸化式を用いて関数変数の推定値が算出されることになる。したがって、関数変数推定部１４は、関数変数の初期値と、関数変数の推定値の漸化式と、その漸化式に代入される静的パラメータの最新の推定値及び関数変数の最新の推定値とを用いて関数変数の推定値を算出するということができる。なお、関数変数の初期値は、上述のように、（８）式または（９）式等によって関節変数の推定値を算出する際に用いられる。また、その漸化式は、（６）式などのように、マニピュレータのヤコビ行列の逆行列を含む漸化式である。また、その漸化式には、通常、測定位置と算出位置との差（ｄｒ(j)k）が含まれている。その漸化式は、ヤコビ行列の逆行列を含む微分方程式を近似したものであるということもできる。その近似の方法として、上述のように、例えば、オイラー法やルンゲクッタ法を用いてもよく、高次の項を含む方法を用いてもよい。
【００３４】
ここで、パラメータ推定部１３による静的パラメータの推定と、関節変数推定部１４による関節変数の推定との関係について説明する。まず、関節変数推定部１４は、関節変数の初期値ｑe(0)k,1，…，ｑe(0)k,Nや静的パラメータの初期値β(0)等を用い、（８）式または（９）式等によって関節変数の推定値ｑe(1)k,1，ｑe(1)k,2，…，ｑe(1)k,Nを推定し、パラメータ推定部１３に渡す。なお、その関節変数の推定は、測定位置ごとに行われる。パラメータ推定部１３は、関節変数の推定値ｑe(1)k,1，ｑe(1)k,2，…，ｑe(1)k,Nが代入され、静的パラメータβを引数として有する算出位置ｒ（ｑe(1)k,1，…，ｑe(1)k,N，β）、及び測定位置ｒmkを用いて、目的関数を最適化するように静的パラメータの推定値β(1)を推定する。静的パラメータの推定を１回だけ行う場合には、そのようにして推定された静的パラメータの推定値β(1)が出力されることになる。一方、静的パラメータの推定が２回以上行われる場合には、関数変数推定部１４は、関節変数の推定値ｑe(1)k,1，ｑe(1)k,2，…，ｑe(1)k,Nや、静的パラメータの推定値β(1)等を用いて、（６）式等によって関節変数の推定値ｑe(2)k,1，ｑe(2)k,2，…，ｑe(2)k,Nを推定し、パラメータ推定部１３に渡す。なお、その関節変数の推定は、測定位置ごとに行われる。そして、パラメータ推定部１３は、目的関数を最適化するように静的パラメータの推定値β(2)を推定することになる。このようにして、静的パラメータの推定が繰り返されることになる。
【００３５】
なお、パラメータ推定部１３と関節変数推定部１４とは、あらかじめ決められた条件を満たすまで、静的パラメータの推定や関節変数の推定を繰り返してもよい。その条件は、例えば、繰り返し回数であってもよく、判断部１５によって静的パラメータの推定値が収束したと判断されることであってもよく、または、その他の条件であってもよい。本実施の形態では、パラメータ推定部１３及び関節変数推定部１４が、判断部１５によって静的パラメータの推定値が収束したと判断されるまで静的パラメータや関節変数の推定を繰り返す場合について主に説明する。
【００３６】
判断部１５は、パラメータ推定部１３によって推定された静的パラメータの推定値が収束したかどうかを判断する。そして、その判断結果を出力部１６に渡す。なお、判断部１５は、その判断結果をパラメータ推定部１３や関節変数推定部１４に渡してもよい。また、判断部１５は、静的パラメータの推定値が収束したと判断した場合にのみ、その判断結果を出力部１６等に渡してもよい。判断部１５は、例えば、静的パラメータの推定値を用いてその判断を行ってもよい。具体的には、判断部１５は、静的パラメータの最新の推定値と、１回前に算出された静的パラメータの推定値とを用い、次の（１０）式が満たされるかどうか判断し、（１０）式が満たされる場合に静的パラメータの推定値が収束したと判断し、（１０）式が満たされない場合に静的パラメータの推定値が収束していないと判断してもよい。なお、厳密には、静的パラメータβは、パラメータの集合であるため、判断部１５は、（１０）式が満たされるかどうかを、静的パラメータβに含まれる各パラメータの推定値について判断するものとする。そして、判断部１５は、すべてのパラメータの推定値について（１０）式が満たされる場合に、静的パラメータの推定値が収束したと判断してもよく、または、あらかじめ決められた閾値以上の個数のパラメータの推定値について（１０）式が満たされる場合に、静的パラメータの推定値が収束したと判断してもよい。
【数１１】
2017164838.tif 000013
【００３７】
また、判断部１５は、例えば、目的関数を用いてその判断を行ってもよい。具体的には、判断部１５は、静的パラメータの最新の推定値に応じた目的関数の値と、１回前に算出された静的パラメータの推定値に応じた目的関数の値とを用い、次の（１１）式が満たされるかどうか判断し、（１１）式が満たされる場合に静的パラメータの推定値が収束したと判断し、（１１）式が満たされない場合に静的パラメータの推定値が収束していないと判断してもよい。
【数１２】
2017164838.tif 000014
【００３８】
また、判断部１５は、例えば、算出位置の各座標値の差を用いてその判断を行ってもよい。具体的には、判断部１５は、最新の算出位置のｘ座標の値と、１回前に算出された算出位置のｘ座標の値との差を用い、次の（１２）式が満たされるかどうか判断し、（１２）式が満たされる場合に静的パラメータの推定値が収束したと判断し、（１２）式が満たされない場合に静的パラメータの推定値が収束していないと判断してもよい。
【数１３】
2017164838.tif 000015
なお、ｙ座標、ｚ座標等について同様のことを行ってもよい。また、判断部１５は、（１２）式を用いて判断を行う場合には、すべてのｋについて（１２）式が満たされた場合に、静的パラメータの推定値が収束したと判断してもよく、または、所定の閾値以上の個数のｋについて（１２）式が満たされた場合に、静的パラメータの推定値が収束したと判断してもよい。また、ε1，ε2，ε3はそれぞれ、微小な正の実数である。
【００３９】
出力部１６は、パラメータ推定部１３によって推定された静的パラメータの推定値β(j)を出力する。この出力部１６によって出力された静的パラメータの推定値は、例えば、マニピュレータを動作させるときの手先位置等を算出する際に用いられることになる。なお、パラメータ推定部１３によって静的パラメータの推定が２回以上行われる場合に、出力部１６は、例えば、静的パラメータの推定が行われるごとに静的パラメータの最新の推定値を繰り返して出力してもよく、または、１回だけ、静的パラメータの推定値の出力を行ってもよい。後者の場合には、出力部１６は、例えば、静的パラメータの最新の１個の推定値のみを出力してもよく、または、静的パラメータの複数の推定値を一括して出力してもよい。最新の１個の推定値のみを出力する場合には、出力部１６は、判断部１５によって収束したと判断された場合に、静的パラメータの最新の推定値を出力してもよい。通常、判断部１５によって静的パラメータの推定値が収束したと判断されると静的パラメータの推定が終了されるため、収束したと判断された際の静的パラメータの最新の推定値は、最後に推定された静的パラメータの推定値であると考えてもよい。また、静的パラメータの複数の推定値を出力する場合には、出力部１６は、静的パラメータのすべての推定値を出力してもよく、または、静的パラメータの一部の推定値を出力してもよい。なお、静的パラメータの複数の推定値を出力する場合には、出力部１６は、静的パラメータの最新の推定値を識別可能なように出力することが好適である。
【００４０】
ここで、この出力は、例えば、所定の機器への通信回線を介した送信でもよく、記録媒体への蓄積でもよく、他の構成要素への引き渡しでもよく、表示や印刷等のそれ以外の出力であってもよい。なお、出力部１６は、出力を行うデバイス（例えば、通信デバイスなど）を含んでもよく、または含まなくてもよい。また、出力部１６は、ハードウェアによって実現されてもよく、または、それらのデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【００４１】
次に、パラメータ推定装置１の動作について図２のフローチャートを用いて説明する。
（ステップＳ１０１）受付部１１は、測定位置や関節変数の初期値などを受け付けたかどうか判断する。そして、測定位置等を受け付けた場合には、ステップＳ１０２に進み、そうでない場合には、ステップＳ１０３に進む。なお、受付部１１は、測定位置や関節変数の初期値以外に、静的パラメータの初期値や、固定値などを受け付けてもよい。
【００４２】
（ステップＳ１０２）受付部１１は、受け付けた情報を記憶部１２に蓄積する。そして、ステップＳ１０１に戻る。
【００４３】
（ステップＳ１０３）パラメータ推定部１３は、静的パラメータの推定を行うかどうか判断する。そして、静的パラメータの推定を行う場合には、ステップＳ１０４に進み、そうでない場合には、ステップＳ１０１に戻る。なお、パラメータ推定部１３は、例えば、あらかじめ決められた個数（例えば、Ｍ個）の測定位置等が記憶部１２に蓄積された場合に、静的パラメータの推定を行うと判断してもよく、または、ユーザ等から静的パラメータの推定を行う旨の指示が受け付けられた場合に、静的パラメータの推定を行うと判断してもよい。
【００４４】
（ステップＳ１０４）関節変数推定部１４は、各測定位置について、関節変数の推定値ｑe(j)k,1，…，ｑe(j)k,Nを算出する。
【００４５】
（ステップＳ１０５）パラメータ推定部１３は、ステップＳ１０４で算出された関節変数の推定値を用いて、静的パラメータβを引数とする算出位置を算出し、その算出した算出位置と、記憶部１２で記憶されている測定位置とを用いて、目的関数を最適化するように静的パラメータの推定値β(j)を算出する。
【００４６】
（ステップＳ１０６）判断部１５は、パラメータ推定部１３によって算出された静的パラメータの推定値β(j)が収束したかどうか判断する。そして、静的パラメータの推定値β(j)が収束した場合には、ステップＳ１０７に進み、そうでない場合には、ステップＳ１０４に戻る。なお、ステップＳ１０４に戻るごとに、１だけインクリメントされたｊについて、関節変数の推定値ｑe(j)k,1，…，ｑe(j)k,Nや静的パラメータの推定値β(j)の算出が行われることになる。
【００４７】
（ステップＳ１０７）出力部１６は、静的パラメータの最新の推定値β(j)を出力する。そして、静的パラメータを推定する一連の処理は終了する。
なお、図２のフローチャートにおける処理の順序は一例であり、同様の結果を得られるのであれば、各ステップの順序を変更してもよい。また、図２のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【００４８】
次に、算出位置の算出におけるＦx，Ｆy，Ｆzの算出方法について、具体例を用いて説明する。この具体例において、同次変換行列と、ＤＨパラメータａ，α，ｄ，θとの関係は、次表のようになっているとする。なお、括弧内の数値は初期値であり、括弧のない数値は固定値である。また、この具体例では、修正ＤＨ記法を採用している。
【表１】
2017164838.tif 000016
【００４９】
先端のリンク（４番目のリンク）の座標系におけるターゲット位置を（4ｘt，4ｙt，4ｚt）とすると、同次変換行列i-1Ｔiは、
【数１４】
2017164838.tif 000017
であるため、基端のリンク（０番目のリンク）から見たターゲット位置（0ｘt，0ｙt，0ｚt）は、次式のようになる。なお、ｑ1,offset，ｑ2,offset，ｑ3,offsetは、各軸のモータのエンコーダ値のオフセットを角度に換算したものである。
【数１５】
2017164838.tif 000018
ただし、Ｌは、次式の通りである。
【数１６】
2017164838.tif 000019
【００５０】
また、ワールド座標系から見たターゲット位置（wｘt，wｙt，wｚt）は、次式のようになる。
【数１７】
2017164838.tif 000020
この（１７）〜（１９）式の（wｘt，wｙt，wｚt）が、（２）〜（４）式の（ｘ，ｙ，ｚ）に対応するため、このようにして、関節変数と静的パラメータβとを引数とする算出位置を取得できることになる。なお、この場合には、推定対象の静的パラメータβは、ｄ0，ａ1，ａ2，ａ3，ｄ3，4ｘt，4ｙt，4ｚt，ａw，αw，ｄw，θw，ｑ1,offset，ｑ2,offset，ｑ3,offsetである。ｄ0等の初期値は、前述のように、設計値を用いてもよい。また、ｑ1,offset，ｑ2,offset，ｑ3,offsetの初期値は、０にしてもよい。また、この具体例では、ＤＨパラメータのαなどを固定値として扱う場合について説明したが、そのαなどを推定対象の静的パラメータとしてもよい。
【００５１】
以上のように、本実施の形態によるパラメータ推定装置１によれば、目的関数を最適化することによって静的パラメータを推定できるため、マニピュレータの軸数や構造に関係なく、任意のマニピュレータについて静的パラメータを推定することができる。また、関節変数の推定と、静的パラメータの推定とを繰り返して行うことにより、より精度の高い静的パラメータの推定が可能となる。さらに、判断部１５によって静的パラメータの推定値が収束したと判断された場合に、静的パラメータの最新の推定値が出力されることによって、出力された静的パラメータの推定値は精度の高いものになる。そのような精度の高い静的パラメータの推定値を用いてマニピュレータを動作させることによって、より精度の高い位置決めが可能となる。
【００５２】
また、パラメータ推定装置１は、異なる複数の状況において、あるマニピュレータの静的パラメータの推定をそれぞれ行い、異なる複数の状況に対応する複数の推定結果を用いて、任意の状況に応じた静的パラメータを算出してもよい。例えば、複数の異なる温度に対応する静的パラメータの複数の推定値をそれぞれ推定した場合には、その推定結果の内挿や外挿によって、任意の温度の静的パラメータを推定することができる。また、例えば、複数の異なる稼働時間に対応する静的パラメータの複数の推定値をそれぞれ推定した場合には、その推定結果の外挿によって、現時点に対応する静的パラメータを推定することができる。
【００５３】
なお、本実施の形態では、パラメータ推定装置１が判断部１５を有する場合について説明したが、そうでなくてもよい。パラメータ推定装置１が判断部１５を有さない場合には、パラメータ推定部１３や関節変数推定部１４は、判断部１５による判断結果以外を用いて、静的パラメータの推定等の処理を終了してもよい。また、出力部１６は、例えば、最後に推定された静的パラメータの推定値を出力してもよく、または、そうでなくてもよい。
【００５４】
また、本実施の形態では、関節変数推定部１４による関節変数の推定と、パラメータ推定部１３による静的パラメータの推定とが繰り返して行われる場合について主に説明したが、そうでなくてもよい。前述のように、静的パラメータの推定を１回だけ行う場合であっても、設計値である静的パラメータよりは精度の高い静的パラメータを推定することができることになる。
【００５５】
また、本実施の形態では、マニピュレータの構造がＤＨ記法によって表現される場合について主に説明したが、それ以外の構造のマニピュレータであっても、上述のようにして、静的パラメータを推定することができる。その静的パラメータは、例えば、リンク座標間の変換に含まれる変数以外のパラメータであってもよい。
【００５６】
また、上記実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、または、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
【００５７】
また、上記実施の形態において、各構成要素間で行われる情報の受け渡しは、例えば、その情報の受け渡しを行う２個の構成要素が物理的に異なるものである場合には、一方の構成要素による情報の出力と、他方の構成要素による情報の受け付けとによって行われてもよく、または、その情報の受け渡しを行う２個の構成要素が物理的に同じものである場合には、一方の構成要素に対応する処理のフェーズから、他方の構成要素に対応する処理のフェーズに移ることによって行われてもよい。
【００５８】
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりした情報や、各構成要素が処理で用いる閾値や数式、アドレス等の情報等は、上記説明で明記していなくても、図示しない記録媒体において、一時的に、または長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、または、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、または、図示しない読み出し部が行ってもよい。
【００５９】
また、上記実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いる閾値やアドレス、各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していなくても、ユーザが適宜、それらの情報を変更できるようにしてもよく、または、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。
【００６０】
また、上記実施の形態において、パラメータ推定装置１に含まれる２以上の構成要素が通信デバイスや入力デバイス等を有する場合に、２以上の構成要素が物理的に単一のデバイスを有してもよく、または、別々のデバイスを有してもよい。
【００６１】
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、または、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをＣＰＵ等のプログラム実行部が読み出して実行することによって、各構成要素が実現されうる。その実行時に、プログラム実行部は、記憶部や記録媒体にアクセスしながらプログラムを実行してもよい。また、そのプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体（例えば、光ディスクや磁気ディスク、半導体メモリなど）に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。また、そのプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、または分散処理を行ってもよい。
【００６２】
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【００６３】
以上より、本発明によるパラメータ推定装置によれば、精度の高い静的パラメータの推定値を推定できるという効果が得られ、静的パラメータを推定する装置として有用である。
【符号の説明】
【００６４】
１  パラメータ推定装置
１１  受付部
１２  記憶部
１３  パラメータ推定部
１４  関節変数推定部
１５  判断部
１６  出力部
【図１】
2017164838.tif 000021
【図２】
2017164838.tif 000022