(57)【要約】【課題】力覚センサのみを用いて、衛星のような自律型ロボットが、移動する自由飛行物体を確実に捕獲するために接触モードをリアルタイムに推定することができるようにする。【解決手段】接近する物体を捕獲するために、力覚センサから出力される信号に基づき物体がロボットハンドに衝突したことを検出し、物体のロボットハンドへの衝突に応答して、粒子フィルタを実行して粒子の状態の更新及び粒子の評価を行うことにより、ロボットハンドの把持部の閉鎖によって物体を捕獲可能なタイミングを判断する。【選択図】図７
2019198948.tif 000002
【特許請求の範囲】
【請求項１】
接近する物体を捕獲するためにロボットハンドの把持部を閉鎖するタイミングを決定する接触モード推定装置であって、
前記ロボットハンドには、前記ロボットハンドに与えられた力を感知し、前記力を表わす信号を出力する力覚センサが取り付けられており、
前記力覚センサから出力される前記信号に基づき、前記物体が前記ロボットハンドに衝突したことを検出する衝突検出部と、
粒子フィルタのための複数の粒子を表わすデータを発生させる粒子発生部と、
前記粒子のそれぞれの位置及び前記ロボットハンドとの接触モードをシミュレーションする粒子シミュレーション部と、
前記物体の前記ロボットハンドへの前記衝突を検出したことに応答して、前記粒子フィルタを実行して前記粒子の状態の更新及び前記粒子の評価を行うことにより、前記ロボットハンドの把持部の閉鎖によって前記物体を捕獲可能なタイミングを判断する閉鎖タイミング判断部と、
を有することを特徴とする接触モード推定装置。
【請求項２】
前記閉鎖タイミング判断部は、前記物体の前記ロボットハンドへの前記衝突に応答して、
前記粒子フィルタを実行することによって、前記それぞれの粒子について、それの衝突時間と前記物体の実際の衝突時間との時間差に基づいて重みを求め、前記それぞれの粒子を衝突位置に移送し、前記ロボットハンドとの接触モードを求め、正規化後にリサンプリングすることによって前記粒子の状態の更新を実行し、
前記ロボットハンドによって捕獲可能な閉鎖可能領域に対応する接触モードを経験した粒子の重みの合計が所定値以上になるまで前記シミュレーションと前記粒子の状態の更新の処理を反復させ、前記粒子の重みの合計が所定値以上のときに前記ロボットハンドの把持部を閉鎖するタイミングと評価する、
請求項１に記載の接触モード推定装置。
【請求項３】
前記物体の衝突前の位置を捕捉するためのセンサと、
前記センサから得られた情報に基づき、前記物体の位置及び運動を推定する対象物体位置推定部と、
をさらに有し、
前記粒子発生部は、前記対象物体位置推定部によって推定された前記衝突時の前記物体の前記位置及び運動に基づき、あらかじめ前記粒子フィルタのための複数の粒子を発生させる、請求項１に記載の接触モード推定装置。
【請求項４】
前記センサはカメラであり、
前記対象物体位置推定部は、前記カメラから得られた前記物体の画像に基づき、前記物体の位置及び運動を推定する、
請求項３に記載の接触モード推定装置。
【請求項５】
前記力覚センサから出力される前記信号に基づき、前記物体が前記ロボットハンド上で滑っていることを検出する滑り検出部、をさらに有し、
前記粒子シミュレーション部は、前記複数の粒子のそれぞれにおいて、前記ロボットハンドに衝突した粒子が前記ロボットハンドの表面に沿って動く場合に前記ロボットハンド上で滑っているものとしてシミュレーションし、
前記閉鎖タイミング判断部は、さらに、前記物体が前記ロボットハンド上で滑っていることを検出したことに応答して、前記粒子フィルタを実行して前記接触モードの評価を行うことにより、前記物体が前記ロボットハンドの把持部の閉鎖によって捕獲可能なタイミングを推定する、請求項１に記載の接触モード推定装置。
【請求項６】
前記ロボットハンドが先端に取り付けられたロボットアームと、
前記衝突検出部が前記物体の前記ロボットハンドへの衝突を検出したときに、前記衝突の衝撃を吸収するように前記ロボットアームを動作させるインピーダンス制御部と、
をさらに有する、請求項５に記載の接触モード推定装置。
【請求項７】
前記接触モードは、前記ロボットハンドの表面を複数のセグメントから構成されるものとして定義したときの、前記粒子がどの前記セグメントと接触したかを表わすものであり、
前記閉鎖タイミング判断部における前記ロボットハンドによって捕獲可能な閉鎖可能領域に対応する接触モードは、前記ロボットハンドの閉鎖可能領域に面するセグメントに対応するものである、請求項１に記載の接触モード推定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、接触モード推定装置に関し、より詳しくは、接近する物体がロボットハンドに接触したときの接触モードを推定し、その物体を捕獲するためにロボットハンドを閉じるタイミングを決定する接触モード推定装置に関する。
【背景技術】
【０００２】
スペースデブリ、すなわち廃用となった人工衛星のような宇宙ゴミが問題となってきているが、そのようなスペースデブリを宇宙空間で捕獲する必要がある場合がある。そのような場合には、ロボットハンド（グリッパー）が取り付けられたロボットアームをチェイサー衛星などに搭載して、それによって、捕獲対象のスペースデブリにチェイサー衛星を接近させ、ロボットアームを操作し、ロボットハンド内にスペースデブリの一部を導き入れた後に、ロボットハンドを閉鎖してスペースデブリを捕獲する。この際、確実に捕獲できる位置にスペースデブリが来た時にロボットハンドを閉じるようにタイミングを決定する必要がある。
【０００３】
従来の技術としては、接触センサを使用してロボットハンドに対象物が接触したことを判断するものがあった（非特許文献１）。この技術では、ロボットハンドの内側に、接触センサが複数の場所に分割されて取り付けられており、それによってターゲット物体がどこに接触したかを感知する。そして、接触を感知すると、粒子フィルタによってターゲット物体の位置の推定を開始する。しかし、ターゲットの物体に衝突する可能性のあるロボットハンドの可動部分を含め、あらゆる部分に接触センサを配置するのは現実的ではない。このように、複数の接触センサを使う手法があったが、実用には問題があった。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Bayesian Estimation for Autonomous Object Manipulation Based on Tactile Sensors_Petrovskaya
【発明の概要】
【発明が解決しようとする課題】
【０００５】
スペースデブリの除去や、壊れた人工衛星の修理においては、自由飛行する物体を捕獲する必要がある。特に、捕獲するロボットハンドと捕獲される対象物体がお互いに動くような、動的に変化する環境では、適切なタイミングでロボットハンドを閉じるように指示し、ロボットハンドと対象物体との間の相対速度をゼロにするための物理的な制約を作ることが必要である。それができない場合、ロボットハンドが対象物体を弾き飛ばすなどすることによって対象物体を捕獲できなくなったりする。
【０００６】
このような問題を克服するために、接触モード推定（contact mode estimation）を含む適切な制御方式を構築する必要がある。しかし、このような接触モード推定は、正確な衝突予測モデルがリアルタイムで実行できない状況で実行されなければならないことが多い。また、移動する剛体である対象物体を捕獲する際には、対象物体とロボットハンドとの間で弾性衝突や滑りが発生する。ここで、剛体の衝突の結果の速度は、局所的な接線方向および材料特性を含む表面状態に影響を受けるものであり、衝突の結果はしばしば安定しない。その結果、予測の誤差が発生することが通常である。
【０００７】
本発明では、そのような目的のために、動く剛体を捕獲するための力覚センサのみを用いたリアルタイムの衝突ベースの接触モード推定を提案するものである。これを達成するために、本発明では、接触モードとして、接触における力学特性だけでなく、ロボットハンド内のセグメント化された衝突位置を使用する。
【０００８】
ここで、確率的アプローチとして、粒子フィルタを接触モード推定に使用することが考えられる。予測のために、剛体の計算可能でサンプリング可能（サンプルを複数発生させること）な衝突モデルを採用する。それぞれの粒子によって異なる衝突がシミュレーションされるが、事後分布モデルは、主として力覚センサによって検出された衝突タイミングに従って更新され、捕獲動作の間に最も判断の基礎となる測定を伴う。粒子フィルタは予測誤差を小さくすることが可能であるが、機体上でのリアルタイム性を損なう可能性があるような、大きな計算資源を必要とすることが知られている。
【０００９】
本発明は、上述の問題に対処するためになされたものであり、計算資源の問題に関しては、衝突トリガフィルタを備えた粒子フィルタを用いて、物体の閉鎖に必要な接触モードを推定する。衝突によって粒子フィルタの計算の開始をトリガするためには、力覚センサのみを用いて詳細な情報を提供することができ、また、衝突による計算のトリガは、計算量の低減に寄与する。本発明により、力覚センサのみを用いて、衛星のような自律型ロボットが、移動する自由飛行物体を確実に捕獲するために接触モードをリアルタイムに推定することができるようになる。
【課題を解決するための手段】
【００１０】
上述の課題は以下のような特徴を有する本発明によって解決される。すなわち本発明は、接近する物体を捕獲するためにロボットハンドの把持部を閉鎖するタイミングを決定するための接触モード推定装置であって、ロボットハンドに与えられた力を表わす信号を出力する力覚センサを有し、力覚センサから出力される信号に基づき物体がロボットハンドに衝突したことを検出し、粒子フィルタのための複数の粒子のデータを発生させ、粒子のそれぞれの位置及び接触モードをシミュレーションし、物体のロボットハンドへの衝突を検出したことに応答して、粒子フィルタを実行して粒子の状態の更新及び粒子の評価を行うことにより、物体がロボットハンドの把持部の閉鎖によって捕獲可能なタイミングを判断する。また本発明は、物体がロボットハンドの把持部の閉鎖によって捕獲可能なタイミングをする際に、粒子フィルタを実行することによって、それぞれの粒子について、物体の実際の衝突時間との時間差に基づいて重みを求め、それぞれの粒子を衝突位置に移送し、ロボットハンドとの接触モードを求め、正規化後にリサンプリングすることによって前記粒子の状態の更新を実行し、閉鎖可能領域に対応する接触モードを経験した粒子の重みの合計が所定値以上になるまでシミュレーションと粒子の状態の更新を反復させ、粒子の重みの合計が所定値以上のときにロボットハンドの把持部を閉鎖するタイミングと評価する、ことを特徴とする。
【００１１】
また本発明は、物体の衝突前の位置を捕捉するためのセンサを更に有し、センサから得られた情報に基づき物体の位置及び運動を推定し、その推定値に基づき複数の粒子を発生させるように構成してもよい。また本発明は、センサとしてカメラを使用し、カメラから得られた物体の画像に基づき、物体の位置及び運動を推定するように構成してもよい。また本発明は、力覚センサから出力される信号に基づき、物体がロボットハンド上で滑っていることを検出し、シミュレーションにおいて、ロボットハンドに衝突した粒子がロボットハンドの表面に沿って動く場合にロボットハンド上で滑っているものとしてシミュレーションするように構成してもよい。また本発明は、ロボットハンドが先端に取り付けられたロボットアームを有し、物体のロボットハンドへの衝突を検出したときに衝突の衝撃を吸収するようにロボットアームを動作させるインピーダンス制御を行うように構成してもよい。
【００１２】
また本発明は、ロボットハンドの表面を複数のセグメントから構成されるものとして定義したときの粒子がどの前記セグメントと接触したかを接触モードが表わし、ロボットハンドによって捕獲可能な閉鎖可能領域に対応する接触モードはロボットハンドの閉鎖可能領域に面するセグメントに対応するものであるように構成してもよい。また本発明は、接触モード推定装置の各手段によって実施されるステップからなる接触モード推定方法として把握することができる。また本発明は、接触モード推定装置をコンピュータに実現させるプログラムや、接触モード推定方法をコンピュータに実行させるプログラムとして把握することができ、また、そのようなプログラムを記憶したコンピュータ読取可能記録媒体として把握することもできる。
【発明の効果】
【００１３】
本発明は、接近する物体を捕獲するために、力覚センサから出力される信号に基づき物体がロボットハンドに衝突したことを検出し、物体のロボットハンドへの衝突を検出したことに応答して、粒子フィルタを実行して粒子の状態の更新及び粒子の評価を行うことにより、ロボットハンドの把持部の閉鎖によって物体を捕獲可能なタイミングを判断するという構成を有するため、力覚センサからの出力のみに基づいて、ロボットハンドを閉鎖するタイミングをリアルタイムに推定することができるという効果を有する。また本発明は、ロボットハンドの把持部の閉鎖によって物体を捕獲可能なタイミングを判断する際に、粒子フィルタを実行することによって、粒子の物体の実際の衝突時間との時間差に基づいて重みを求め、それぞれの粒子を衝突位置に移送し、ロボットハンドとの接触モードを求め、正規化後にリサンプリングすることによって粒子の状態の更新を実行し、ロボットハンドによって捕獲可能な閉鎖可能領域に対応する接触モードを経験した粒子の重みの合計が所定値以上になるまでシミュレーションと粒子の状態の更新の処理を反復させ、粒子の重みの合計が所定値以上のときにロボットハンドの把持部を閉鎖するタイミングと評価するように構成すると、計算量を減少させた粒子フィルタを使用しながらも、確実に物体がロボットハンドによって捕獲されるタイミングをリアルタイムに推定することができるという効果を有する。
【００１４】
また本発明は、物体の衝突前の位置を捕捉するためのセンサから得られた情報に基づき物体の位置及び運動を推定し、その推定値に基づき複数の粒子を発生させるように構成すると、物体の衝突直前の実際の状態に基づいて粒子を発生させ、正確な推定ができるという効果を有する。また本発明は、センサとしてカメラを使用するように構成すると、カメラと画像処理装置によって、簡便かつ高精度に物体の位置などを推定できるという効果を有する。また本発明は、力覚センサから出力される信号に基づき、物体がロボットハンド上で滑っていることを検出し、シミュレーションにおいて、ロボットハンドに衝突した粒子がロボットハンドの表面に沿って動く場合にロボットハンド上で滑っているものとしてシミュレーションするように構成すると、物体が弾性衝突だけでなく滑りを生じた際にも、粒子フィルタで正確にシミュレーションできるという効果を有する。滑りは、インピーダンス制御を行った場合に発生しやすく、滑りの検出による更新処理のトリガは、特にインピーダンス制御に適している。また本発明は、ロボットハンドが先端に取り付けられたロボットアームを有し、衝突の衝撃を吸収するようにロボットアームを動作させるインピーダンス制御を行うように構成すると、衝撃を吸収することによって確実に対象物体の捕獲を行うことができるという効果を有する。
【００１５】
また本発明は、ロボットハンドの表面を複数のセグメントに分割し、粒子がどのセグメントと接触したかを接触モードが表わし、閉鎖可能領域に対応する接触モードは閉鎖可能領域に面するセグメントに対応するものであるように構成すると、接触モードの推定により確実に物体が閉鎖可能領域にあることを推定できるという効果を有する。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態に係る接触モード推定装置１００の構成を示すブロック図である。
【図２】本発明の実施形態に係る接触モード推定装置１００に接続されるロボットハンド２００の構成を示す図である。
【図３】ロボットハンドの位置セグメントと接触モードとの関係を表わす図である。
【図４】衝突トリガフィルタを用いた粒子フィルタに基づく接触モード推定アルゴリズムを示す図である。
【図５】剛体の衝突の際の力学的な関係を示す図である。
【図６】ロボットハンドのセグメントに対応する接触モードを表わす図である。
【図７】接触モード推定装置の動作を示すフロー図である。
【図８】物体捕獲までの一連のステップを表わす図である。
【図９】物体の衝突時の挙動（インピーダンス制御時の滑りを含む）を説明する図である。
【図１０】物体の衝突時の挙動（弾性衝突と滑り）を説明する図である。
【図１１】滑りモードに入る予測アルゴリズムを示す図である。
【図１２】法線方向の力覚センサの出力の例を示す図である。
【図１３】法線方向の力覚センサの出力の例（滑り中の衝突を含む）を示す図である。
【図１４】インピーダンス制御下で対処できる全ての接触モードの推定アルゴリズムを示す図である。
【図１５】座標系を示す図である。
【図１６】初期の粒子に加えるノイズを表わす図である。
【図１７】インピーダンス制御なしの場合の衝突特性のサンプリングのプロファイルを示す図である。
【図１８】インピーダンス制御なしの場合の実験によって得られたＣＣＭＥの基本性能を表わす図である。
【図１９】接触モード推定の推移を表わす図である。
【図２０】ノイズと成功率の関係を示す図である。
【図２１】インピーダンス制御ありの場合の衝突特性のサンプリングのプロファイルを示す図である。
【図２２】インピーダンス制御ありの場合の滑りトリガフィルタを用いた実験によって得られたＣＣＭＥの基本性能を表わす図である。
【図２３】滑りトリガフィルタを用いた接触モード推定の推移を表わす図である。
【図２４】滑りトリガフィルタを用いた接触モード推定の推移を表わす図である。
【図２５】滑りトリガフィルタを用いた接触モード推定の推移を表わす図である。
【図２６】滑りトリガフィルタを用いない接触モード推定の推移を表わす図である。
【図２７】滑りトリガフィルタを用いない接触モード推定の推移を表わす図である。
【発明を実施するための形態】
【００１７】
（接触モード推定装置１００の構成）
これから、本発明の実施形態に係る接触モード推定装置１００の説明を行う。ただし本発明は以下に説明する具体的態様に限定されるわけではなく、本発明の技術思想の範囲内で種々の態様を取り得る。また、接触モード推定装置１００の構成も、図に示されるものに限らず同様の動作が可能である限り任意の構成を取ることができる。例えば複数の構成要素が実行する動作を単独の構成要素により実行してもよいし、あるいは情報処理ユニットの機能を複数のユニットに分散する等、単独の構成要素が実行する動作を複数の構成要素により実行してもよい。また、接触モード推定装置１００のメモリ内に記憶される各種データは、それとは別の場所に記憶されていてもよいし、メモリに記録される情報も、１種類の情報を複数の種類に分散して記憶してもよいし、複数の種類の情報を１種類にまとめて記憶してもよい。まず、接触モード推定装置１００の構成について説明する。図１は、本発明の実施形態に係る接触モード推定装置１００の構成を示すブロック図である。接触モード推定装置１００は、大きく、情報処理ユニット１１０、コントローラ１２１、インターフェイス１３１から構成される。接触モード推定装置１００は、モータ１２２、力覚センサ１３２、画像処理ユニット１４１と接続されている。情報処理ユニット１１０は、プロセッサ、一時メモリ（ＲＡＭ）等から構成されて各種の演算やフロー制御を行う主演算回路１１０ｃと、メモリ（図示せず）とを含み、メモリには、接触モード推定プログラム１１０ｐのようなプログラムが記憶される。メモリは、具体的には、フラッシュメモリなどの不揮発性メモリとすると好適であるが、ＨＤＤなどを使用することも可能である。
【００１８】
コントローラ１２１は、ロボットハンド２００の開閉を制御するモータ１２２を制御する構成であり、情報処理ユニット１１０からの指令に基づいて、ロボットハンド２００を閉鎖したり開放したりする信号をモータ１２２に伝達する。インターフェイス１３１は、情報処理ユニット１１０と、その外部の構成との間で信号の送受信ができるように信号の形態を変換することにより、それらを電気的に接続する構成であり、具体的には、インターフェイス用のＩＣなどである。インターフェイス１３１は、力覚センサ１３２、画像処理ユニット１４１と接続されており、力覚センサ１３２や画像処理ユニット１４１からの信号を適切な形式に変換して情報処理ユニット１１０に伝達する。なお、説明の都合上、図面においてインターフェイスは１つの構成として記載しているが、接続対象の構成の種類によっては、別々のインターフェイスを使用することもあるし、インターフェイス１３１が不要な場合もある。
【００１９】
画像処理ユニット１４１は、カメラ１４２から取得した一連の画像データに基づき、画像を認識して、画像中の物体の位置決定、種別判別、計測などを行う構成であり、典型的には、プロセッサ、一時メモリ、プログラムを記憶したＲＯＭ等から構成されて画像処理を行うユニットである。画像処理ユニット１４１はカメラ１４２と組み合わされてマシンビジョンシステムを構成する。画像処理ユニット１４１は、取得した一連の画像データに基づき、捕獲されるべき対象物体の位置や速度を特定して、それを表わすデータを接触モード推定装置１００に出力する。カメラ１４２は、衛星３００のロボットハンド２００の前方の映像を撮影するためのカメラである。カメラ１４２は、それの撮影範囲の一連の画像のデータを取得する。取得した画像データは、画像処理ユニット１４１によって処理され、画像に写った対象物体が認識される。
【００２０】
図２は、本発明の実施形態に係る接触モード推定装置１００に接続されるロボットハンド２００の構成を示す図である。ロボットハンド２００は、スペースデブリなどの対象物体を把持するための構成であり、典型的には、ベース２０１の先に１対の把持部２０２を有するグリッパー機構である。把持部２０２は、物体を挟むための棒状の部分であり、少なくとも物体を把持するときには内側向きに傾斜した状態となると好適である。１対の把持部２０２の間の距離を縮めることにより、それらに挟まれた閉鎖領域を形成し、その中に存在する物体を把持することができる。把持部２０２は、ロボットハンド２００のベース２０１と一体に形成されており、１対の把持部２０２とベース２０１とを内側に平行移動することにより、閉鎖領域を形成するように構成することができる。ここで閉鎖領域とは把持部２０２が閉鎖したときの領域であり、ここに物体が捕獲される。なお、把持部２０２が閉鎖したときに物体を捕獲できる領域を閉鎖可能領域と呼ぶ。また、把持部２０２はベース２０１に対して旋回可能に取り付けられることもでき、この場合、１対の把持部２０２を内側に旋回させることによって閉鎖領域を形成する。また、ロボットハンド２００は、把持部２０２の開く量（角度あるいは距離）を調整するためのモータ１２２などの動力源に機械的に接続されており、そのモータを制御することにより、把持部２０２を閉じたり開いたりすることができる。ロボットハンド２００の内側の形状は、その最奥部である底部２０３が、ロボットハンド２００の開口部から見て、中心付近が凹部となっていると好適である。例えば、底部２０３は、直角に近い頂角を有する２つの等辺から形成されるものとすることができる。このような形状であると、対象物体がロボットハンド２００の入口の開口部から閉鎖可能領域内に入ってきたときに、それが底部２０３の左右いずれかの辺に衝突すると、対象物体の運動方向を約９０度変えて中心方向に跳ね返すことになって複数回の衝突が発生し易くなり、対象物体を閉鎖可能領域内に留めておくことが容易になる。
【００２１】
ロボットハンド２００の後端には、力覚センサ１３２が取り付けられており、力覚センサ１３２は、さらにロボットアーム２５０の先端に取り付けられている。力覚センサ１３２は、フォーストルクセンサともいい、加えられた力成分やモーメント成分を示す信号を出力するセンサである。ロボットハンド２００に物体が衝突や接触すると力覚センサ１３２からそれに対応する信号が出力される。この信号により、対象物体がロボットハンド２００に衝突したり、その上で滑っていることを検出することができる。ロボットアーム２５０は、モータなどの動力源により角度などを調節可能な関節を１つ以上有しており、そのモータを制御することにより、その先端を所望の位置及び方向に置くことができるような自由度を与える構成である。ロボットアーム２５０は、その基部が衛星３００（図示せず）に取り付けられており、ロボットハンド２００の衛星３００からの距離や方位を変えることができるようになっている。衛星３００は、典型的にはチェイサー衛星であり、スペースデブリに接近するように宇宙空間を移動させることが可能である。接触モード推定装置１００は、電子装置であるため、好適には衛星３００の内部に収容される。接触モード推定装置１００は、モータ１２２への制御ラインや力覚センサ１３２からの信号ラインなどと接続されている。
【００２２】
以下の実施形態では、捕獲する対象物体は自由飛行するスペースデブリであり、ロボットハンド２００はロボットアーム２５０を介して衛星３００に取り付けられているが、本発明は、そのような宇宙のアプリケーション以外の目的であっても、３次元において自由飛行あるいは２次元において自由移動する物体を、ロボットハンドのようなグリッパー機構で捕獲するものに適用することができる。この場合、対象物体は、宇宙空間に限られず、空気中や、水中などに存在するものでも構わない。対象物体が空気中や水中の場合は、空気や水の抵抗をシミュレーションにおいて考慮すればいい。
【００２３】
（接触モード推定装置１００の動作−インピーダンス制御なし）
次に接触モード推定装置１００の動作について説明する。接触モード推定は、接触モード推定プログラム１１０ｐが主演算回路１１０ｃに読み込まれて実施されることによって、実行される。対象物体の衝突時にロボットハンド２００を動かして衝撃を緩和させる動作をインピーダンス制御と呼ぶが、そのようなインピーダンス制御を行わず、対象物体の衝突時にロボットハンド２００は衛星３００に対して固定されている実施形態について説明する。
【００２４】
本発明は、移動する典型的には剛体である対象物体を捕獲するための力覚センサのみを用いたリアルタイムの衝突ベースの接触モード推定を提案するものである。接触モードとは、対象物体の閉鎖を確立して捕獲するためにロボットハンド２００を閉じるための信号を生成するタイミングを決定するために定義されたものであり、対象物体がロボットハンド２００に対してどのように接触しているのかを示すものである。本発明では、粒子フィルタの手法を用い、最小限の計算量で接触モードを決定するために「衝突トリガフィルタ」と呼ぶ、対象物体がロボットハンド２００に衝突したことによって主な計算がトリガされる手法や、「衝突トリガフィルタ」に加えて「滑りトリガフィルタ」を使用した手法を採用した。対象物体の位置や運動の予測には、Ｂｒａｃｈの衝突モデルを使用する。これは、計算上軽量であり、３つの衝突特性のパラメータを用いて衝突事象を表現することが可能であるため、剛体の衝突モデルベースのシミュレーションに適している。また、粒子フィルタはその３つの衝突特性のパラメータを変化させてサンプリングを行うことによって、予測しにくい衝突事象を種々のパターンで表現することが可能である。これによって、衝突事象を正確にシミュレーションできる。これから説明する本発明の方法では、合理的な計算資源（平均で３．９ミリ秒、最悪で６．１ミリ秒の計算時間）を使用して、対象物体の捕獲の１００％の成功率を達成することができた、という効果が得られた。
【００２５】
（粒子フィルタによる接触モードの推定）
本発明は、まず、統計的な推定方法として粒子フィルタを使用するものである。粒子フィルタとは、直感的に説明すれば、隠れた対象の状態など（本発明では、直接観測できない位置）を確実に得られる観測値（本発明では力覚センサの出力）から推定するために、複数（本発明では、数百個程度）の粒子のデータを初期状態で発生させた後、シミュレーションによってステップ的に物理法則等に従って各粒子の状態を変化させつつ、観測値に基づいて各粒子に重み（確率）を与え、さらにその重みに応じて各粒子の状態（位置）を変化させて粒子の分布密度が確率を表わし続けるようにした後、前述のステップ的なシミュレーションからプロセスを反復させることによって、粒子の分布密度により隠れた対象の状態（位置）を推定する数学的手法である。これから、まず、接触モードを定義した後、ベイズフィルタリングの表現から導かれる粒子フィルタを用いた接触モード推定の数学的基礎について説明する。以下に説明するアルゴリズムが、接触モード推定プログラム１１０ｐが主演算回路１１０ｃによって実行されることによって、接触モード推定装置１００による接触モード推定の機能が実施される。
【００２６】
（接触モードの定義）
対象物体の捕獲のためには、捕獲フェーズにおいて、ロボットハンド２００のような把持により捕獲を行う構造との間で、その対象物体がどのように接触しているか（あるいは、接触していないか）という情報が必要になる。そのような情報を、接触モードと呼ぶことにする。確実に対象物体の捕獲を行うためには、把持に先立って対象物体の周りに幾何学的な物体包囲を形成することが必要である。一旦、ロボットハンドが物体を包囲した状態で閉じることによって物体閉鎖が成立すると、ロボットハンドは対象物体を取り逃がすことなく、捕獲に成功することになる。これが、捕獲の具体的な要件である。そのときに要求される動作としては、第１に、対象物体がロボットハンドの閉鎖可能領域に入る前に、ロボットハンド２００が開いた状態でなければならない。第２に、対象物体が閉鎖可能領域に入ったときには、すぐにロボットハンド２００を閉鎖して閉鎖の形状を確立しなければならない。そして、第１のステップから第２のステップに進むためには、対象物体が物体閉鎖領域に入ったことを検出することが必要である。これが本発明の接触モード推定の目標である。そのために、接触モード推定アルゴリズムは、対象物体が閉鎖可能領域に入ったことを検出するために、対象物体の位置（すなわち、対象物体がロボットハンド２００の近くにあるか、内部にあるか、など）を推定しなければならない。
【００２７】
本発明における接触モードとしては、まず、（１）接触なし、（２）閉鎖準備完了の状態（ready-to-close, rtc）、および（３）閉鎖可能でない箇所との接触がある状態、の３つのカテゴリが区別できる必要がある。図３は、ロボットハンドの位置セグメントと接触モードとの関係を表わす図である。図３には、ロボットハンド２００Ａが示されている。このロボットハンド２００Ａは、把持部がベースに対して旋回することによって閉鎖領域を作る構造を有するものである。このような形状であれば、把持部が閉じていない初期状態では、底部に物体が接触したときには閉鎖準備完了の状態であるが、それ以外の部分、例えば把持部に物体が接触したときには閉鎖可能の状態ではない。このように、図３で、破線で示した箇所は閉鎖準備完了となる部分であり、１点鎖線で示した箇所は閉鎖可能ではない部分である。そして、閉鎖準備完了となる部分を１つの位置セグメントとして扱ってもいいし、それを複数の位置セグメントに分割して扱ってもよい。閉鎖可能ではない部分についても同様である。このように、ロボットハンド２００Ａを複数の位置セグメントに分割し、そのそれぞれが閉鎖可能ではない部分か閉鎖準備完了の部分のいずれかに属するようにする。接触モードは、対象物体が、どの位置セグメントに衝突したのかということによって定義される。そして、対象物体が、閉鎖可能領域に対応している（典型的には、閉鎖可能領域に面している）接触モードにあるかどうかで（あるいは、対象物体がそのような接触モードにある確率が相当程度高いか否かで）、対象物体が閉鎖可能領域にあるかどうかが判断される。こうすることによって、閉鎖準備完了の位置セグメントに物体が衝突したときは「（２）閉鎖準備完了の状態」になったと判断し、閉鎖可能ではない位置セグメントに物体が衝突したときは「（３）閉鎖可能でない箇所との接触がある状態」と判断することが可能となる。そして、粒子フィルタによって、対象物体が閉鎖準備完了の位置セグメントに所定の確率以上で衝突した（すなわち、閉鎖準備完了に対応する接触モードに所定の確率以上で入った）と推定されたときに閉鎖準備完了となったと判断し、ロボットハンド２００に閉鎖する指示を出すことによって、その対象物体を確実に捕獲することが可能となる。
【００２８】
あるロボットハンドにおいて、捕獲動作を実現するために接触モードを設定する際には、上記の３つのカテゴリを識別できれば、他の接触モード設定は自由に設定できる。そのような他の接触モードとしては、例えば、接触力学特性の差異や、ロボットハンド内での位置セグメントを使用することができる。また、衝突の形態（弾性衝突か滑りか）や衝突回数なども接触モードとして使用することも可能である。例として、ロボットハンド２００の辺と頂点（接触モードの境界線が辺の中央にある場合も対処可能）のような位置で接触モードを定義することが考えられ、また、異なる材料特性を持った部位ごとに接触モードを定義することが考えられる。つまり、捕獲動作を実現するためには、ロボットハンド内での部位に対して、「（２）閉鎖準備完了の状態」と「（３）閉鎖可能でない状態」が接触モードにより明確に区別できれば、「（２）閉鎖準備完了の状態」または「（３）閉鎖可能でない状態」に追加的なモードを自由に設定することができる。
【００２９】
（粒子フィルタの数学的基礎）
これから、粒子フィルタによるシミュレーションによる物体の接触モード推定のための数学的な基礎について説明する。モデルベースのアプローチは、力学の連続的なパラメータを表すベクトルを用いた状態空間方程式（state-space equations）によるモデル化された状態推定のために一般的に使用されるが、粒子フィルタは、ハイブリッド（連続状態および離散モード）表現のシステムを含むモード推定のために一般的に使用されるものである。ベイジアンフィルタリング（Bayesian filtering）に基づくモード推定のために、事後確率（posterior）
2019198948.tif 000003
を使用する。ここで、
2019198948.tif 000004
は対象物体の連続状態（具体的には、位置情報）のシーケンスであり、
2019198948.tif 000005
は離散接触モード（具体的には、ロボットハンド２００のどのセグメントに接触しているか）のシーケンスであり、
2019198948.tif 000006
はセンサ観測値（具体的には、力覚センサ１３２からの出力をサンプリングしたもの）の集合である。Ｍ個のユニークな離散接触モードでは、時刻ｔにおける接触モードは、
2019198948.tif 000007
で表される。次に、状態の遷移は、
2019198948.tif 000008
として表される。
連続状態ｘは、ロボットハンド内の位置情報なので、それを使用することによってロボットハンド内の部位が一意に特定できる。つまり、連続状態
2019198948.tif 000009
から接触モード
2019198948.tif 000010
を計算することができる。すなわち、それらから
2019198948.tif 000011
を明示的に計算することができる（つまり、ロボットハンド２００の外形の形状や位置は分かるため、粒子の位置ｘから接触モードｄを直接求めることができるということである）。
【００３０】
（接触モード推定の導出）
接触モード推定を導出するために、粒子の動的な状態を表す動的システムは、まず、次のように表わされる。
2019198948.tif 000012
ここで、ωはプロセスノイズまたは外乱、ｆは高い非線形も含むシステムの連続状態遷移関数（具体的には、直前の位置、接触モード、プロセスノイズから、非衝突時の空間の飛行の法則や、衝突時の式（１４）〜（２３）による弾性衝突の力学に従って、新しい位置を定める関数）、ｖは計測ノイズ、ｇは、本発明の目的のための衝突検出関数である接触モード決定関数（具体的には、位置から、その位置がロボットハンド２００上にあるときの、ロボットハンドのセグメント化された位置を定める関数）、ｈは、やはり高度に非線形なシステムである可能性がある測定関数である。
【００３１】
本発明では、ベイジアンフィルタリングで事後確率分布計算の再帰的反復を行うために、一次のマルコフ定式化（first-ordered Markov formulation）を適用する。これ以降、簡便な表現で説明するために、連続状態ｘと離散モードｄの両方を含むことができる、一般的状態ｓを適用する。すると、動きを推定するための式に関し、再帰的予測ステップはChapman-Kolmogorovの式を適用し、更新ステップはベイズの法則を適用することによって、それぞれ以下の式（４）、式（５）となる。
2019198948.tif 000013
すなわち、式（４）で、状態ｓt-1の元での状態ｓtとなる確率を、時間ｔ−１までのセンサ観測値が存在する元での１つ前の状態ｓt-1となる確率をかけたものを状態ｓt-1で積分することによって、時間ｔ−１までのセンサ観測値が存在する元での状態ｓtとなる確率（確率分布関数（probability distribution function））が求められる。式（５）で、式（４）で求めた確率に対して、時間ｔの状態ｓtで時間ｔのセンサ観測値ｚtが得られる尤度（ｐ（ｚt｜ｓt））をかけたものを、そのかけたもの自身を状態ｓtで積分した正規化定数で除することによって、時間ｔまでのセンサ観測値が存在する元での状態ｓtとなる確率（確率分布関数）が求められる。先に言及した通り、接触モードｄtは、式（２）の予測された連続状態ｘtから計算できるので、以下の統計的因数分解（stochastic factorization）による読み替えを適用することができる。
2019198948.tif 000014
それを式（１）、（２）に適用すると、式（４）、（５）は次のようになる。
2019198948.tif 000015
【００３２】
接触モード推定に必要なベイジアンフィルタリングの事後確率分布は明示的には計算できないため、ベイジアンフィルタリングの近似解として、一般的に粒子フィルタが利用される。粒子フィルタは、（例えばカルマンフィルタと比較して）離散モードだけでなく、非線形プロセス、非ガウスノイズ、マルチモーダルケースに対処するためのベイジアン状態推定のための柔軟な理論的フレームワークを提供することができる。各粒子は、連続動的状態変数
2019198948.tif 000016
および離散接触モード
2019198948.tif 000017
を含む状態を表し、ここで、粒子のインデックスとしてのＮ個の粒子の中のｎは、角括弧内に記載されている。次に、一組の粒子は
2019198948.tif 000018
として表される。各粒子には、
2019198948.tif 000019
との定義による、重み
2019198948.tif 000020
と呼ばれる関連する確率質量（probability mass）があり、これを使用して、ベイジアンフィルタリングの確率分布は、デルタ関数を使用して、以下のように構成される。
2019198948.tif 000021
これは、左辺のベイジアンフィルタリングの確率を、右辺の粒子フィルタの表現で表したものとも理解できる。ここで実際には、事後確率
2019198948.tif 000022
は、マルコフ仮定（Markov assumption）を用いて再帰的に更新・維持されるものであるが、フィルタリングされた推定値
2019198948.tif 000023
のみを与えて、
2019198948.tif 000024
を次のように計算することが有用である。
2019198948.tif 000025
ここで、
2019198948.tif 000026
は、ユーザー定義の重要度密度（importance density）と呼ばれるものであり、十分に分散した状態から、予測によって適当な分散をさらに与えるものである。すなわち、式（１０）は、時間ｔ−１での重みに対して、時間ｔの位置ｘtが存在する元での時間ｔでの力覚センサの出力ｚtが得られる尤度を、時間ｔ−１で粒子が位置ｘt-1に存在する元での時間ｔで粒子が位置ｘtが存在する確率にかけたもの（を重要度密度で除したもの）が時間ｔでの重みに比例することを表わすものである。
【００３３】
（力覚センサによる衝突モデルによる接触モード推定）
これから、力覚センサのみを用いて剛体を捕獲するための新しいモデルに基づく推定を行う理論を説明する。物体閉鎖を作るため接触モードの推定のための２つの基本的な構成要素は、衝突トリガフィルタ（collision-triggered filter）を用いた粒子フィルタ（particle filter）と、剛体の計算可能でサンプリング可能な衝突モデルとを含むものである。
【００３４】
（衝突トリガフィルタ）
図４は、衝突トリガフィルタを用いた粒子フィルタに基づく接触モード推定アルゴリズムを示す図である。本発明で提案する衝突トリガフィルタでは、力覚センサによって衝突が検出されたときに、主な推定や評価の処理が行われる。一般的な粒子フィルタでは、頻繁に更新やリサンプリングが行われ、相当な計算資源が必要となる。それと比較して、本発明の方法では、更新およびリサンプリングの両方のステップは、衝突が検出されたときにトリガされるものであり、それにより計算量を大幅に削減することが可能である。アルゴリズムのそれぞれのラインにおける動作について、以下に説明する。
【００３５】
ライン１では、キャプチャ前の事前知識によって与えられた並進と角度の両方の情報を用いて、粒子が発生させられて種々の位置と速度で初期化される。より具体的には、カメラ１４２のような外界センサによって、接近してくる捕獲対象の物体の相対位置推定を捕獲前の段階で行う。すなわち、カメラ１４２によって取得された連続的な画像に基づき画像処理ユニット１４１が対象物体を特定し、それの位置や速度をあらかじめ推定しておき、それを粒子の初期化に使用する。なお、カメラ以外のセンサを使用して対象物体の位置や速度を測定しておくことも可能である。その目的のためには、例えば、ＬＩＤＡＲ（Light Detection and Ranging）のような測距計などを使用することができる。チェイサー（具体的には、自機である衛星３００）と対象物体はいずれも剛体であるため、まず対象物体の重心位置をサンプリングし、その情報から、対象物体の被把持部の位置の変換行列を用いて計算を実行する必要がある。チェイサーも同様に重心の位置と速度、およびロボットハンド２００の位置・速度を計算し、ロボットハンド２００から、チェイサーの把持部への相対位置を計算する必要がある。予期される誤差は（平均および分散のパラメータを使用して）統計的にモデル化することができ、それはライン１の初期化段階で表現される。粒子フィルタの実施のために、初期状態誤差の大きさは、粒子の初期状態における分散の大きさを決定する。
【００３６】
ライン２は、ライン３からライン４までに存在するラインのステップを、ｎを１から粒子数Ｎまで変化させながら反復させるものである。ライン３は、位置情報である連続状態の予測である。粒子は、ロボットハンド２００と衝突する前は、物理学の法則（例えば、空中での自由落下、軌道上ランデブードッキングにおける飛行）に従うことによって空間を単純に移動する。粒子がロボットハンド２００のいずれかの位置などに衝突すると、「Ｂｒａｃｈのモデル」を用いて、衝突前の速度と、適切にサンプリングされた衝突パラメータとに基づいて、衝突後の速度が求められる。粒子の衝突では、ロボットハンド２００の頂点または辺のどの部分（すなわち、どのセグメント）が、被把持部に衝突したかに応じて、それの接触モードを更新する（ライン４）。
【００３７】
力覚センサは、正確な力積（impulse）およびその方向を計算するにはノイズが多過ぎるが、衝突が起きたことによるパルス信号を確実に検出することはできる。衝突が検出された場合（ライン６）、衝突トリガフィルタが作動する。すなわち、力覚センサ１３２からの信号において、衝突に相当する大きさの信号が検出されたときに、衝突トリガフィルタを作動させる。ライン７は、ライン８からライン１０までに存在するラインのステップを、ｎを１から粒子数Ｎまで変化させながら反復させるものである。ライン８の各粒子の観測モデルは、ここでは実際の衝突時間
2019198948.tif 000027
と、対応するシミュレーションされた衝突時間
2019198948.tif 000028
との間の時間差に基づいて以下のように評価する。
2019198948.tif 000029
すなわち、シミュレーションされた衝突時間ｔcollが実際の衝突時間ｔcurに近い粒子ほど、その粒子の確率への寄与が大きくなり、重みが大きくなる。式（１１）は式（１０）に代入されて、各粒子の重みが計算される。
ここで、
2019198948.tif 000030
は、ユーザによって定義された衝突時間差の分散であり、被把持部の運動の推定誤差および速度に依存するものである。各々がシミュレーションされている粒子群のなかで、対象物体の衝突時において、力覚センサ１３２によって検出された衝突に対応する衝突をすでに経験した粒子があり、これをケースＡと呼ぶ。これらの粒子については、シミュレーションにおいてすでに発生した衝突における衝突時間を
2019198948.tif 000031
として記録する。残りの粒子（ケースＢ。衝突をまだ経験していない粒子）については、シミュレーションされた衝突が発生するまで予測を前進させる必要がある。すなわち、ケースＢの粒子については
2019198948.tif 000032
は、その粒子が衝突するまでシミュレーションの時間ステップを進めることによって計算される。ライン９では、各々の粒子の位置情報である連続状態が衝突状態に移される。つまり、ケースＡの粒子の場合は時間的に巻き戻し、ケースＢの場合は時間的に前進させることによって、
2019198948.tif 000033
で、粒子は衝突直前の状態の位置と速度を有するようにする。換言すれば、各粒子は、衝突位置（の直前）まで移送される。すなわち、力覚センサ１３２によって対象物体の実際の衝突が検出されたのであるから、それぞれの粒子も衝突位置に移動させ、実際の状態に対応させる。なお、ケースＢであって、時間を相当程度進めても衝突しない粒子は、そもそも衝突の確率がほぼ存在しないものとして、重みをゼロにするなどの処理で消去すると好適である。なお、衝突時間差に基づき式（１１）及び式（１０）に従って重みが決定され、確率的な差異が粒子に与えられる。このようにして、移送された粒子の衝突は、次の反復での予測ステップ（ライン３）で異なる衝突パラメータでシミュレーションされる。このように、異なる衝突が、できるだけ少ない粒子数で効率よくシミュレーションされる。
2019198948.tif 000034
と衝突
2019198948.tif 000035
は、対応する衝突と共に記録される（ライン１０）。粒子が衝突から離れるとすぐに、接触モード
2019198948.tif 000036
は衝突がないことを示す。他方、衝突時の接触モードを記録した
2019198948.tif 000037
を使用して閉鎖準備完了のための接触モード推定が後で行われる（ライン１７）。ライン１２は、通常の粒子フィルタで行うように、各々の粒子がライン８で得られた評価値が合計１になるように正規化するものである。ライン１３は、通常の粒子フィルタで行うように、リサンプリングを行い、各々の粒子を確率の高い元の粒子の場所に置き換える。ライン１５及び１６は、長時間衝突していない古い粒子のサニティチェックであり、あまりに長い時間衝突が行われない粒子を除去するものである。除去する時間のためのしきい値は
2019198948.tif 000038
の数倍にすると好適である。より具体的には、古い粒子については
2019198948.tif 000039
であり、重みはアクティブな粒子に分散させられることになる。そして、ライン１７で、閉鎖準備完了のタイミングは次のように求められる。
2019198948.tif 000040
すなわち、式（１２）で、接触モードｍに対応する衝突を経験した粒子の重みｗtの総計が１からＮまでの粒子に対して計算され、式（１３）で、閉鎖準備完了となる確率ｐ（ｄrtc）が、閉鎖準備完了となる接触モードｄrtcに属する接触モードの重みが合計されて計算される。そして、確率ｐ（ｄrtc）が所定の確率以上（０．９９、１．００など）になったことによって、閉鎖準備完了が判断される。ライン１８で、時刻ｔを１ステップ進めてライン２に戻り（図４のｔ→ｔ＋１は、ｔを制御ループ周波数の１サイクルだけ進めることを表わす）、そこで、前述のシミュレーションと評価からなる制御ループを反復することになる。ここで、粒子フィルタは、制御ループに必要な状態を生成するため、各粒子が予測と評価のすべてのステップを通過しなくてはならないため、計算パワーを消費することで一般的によく知られている。さらに、推定のためにより大きい空間をカバーするためには、より多くの粒子が必要である。特に、力制御ループは、衝突現象が典型的にはわずか数ミリ秒しか持続しないため、１ｋＨｚ程度の高い制御ループ周波数を必要とする。これらの事実により、リアルタイムの計算を実行させることは非常に困難であった。一方、本発明のアルゴリズムは、連続して状態推定を出力しないものであり、これにより計算の要件は大幅に緩和される。本発明のアルゴリズムは、捕獲操作に必要な、最小限の接触モードを推定するだけである。粒子の前進（ライン８のケースＢ）とリサンプリング後の衝突予測についてのみは、高い計算資源を消費する可能性があるが、両方とも、計算を減少させるために、実際の衝突が力覚センサ１３２によって検出されたときだけに計算される。
【００３８】
（接触モード推定の動作フロー）
以上、接触モード推定の数学的基礎について説明してきたが、そのような数学的基礎を利用して接触モード推定装置１００が動作するときのステップを簡潔にまとめると以下のようになる。図７は、接触モード推定装置の動作を示すフロー図である。
【００３９】
チェイサーである衛星３００は、捕獲の対象物体に対して、それに取り付けられたロボットアーム２５０の先のロボットハンド２００の１対の把持部２０２の間に対象物体の被把持部が来るように、適切な方向及び速度で近づいている。カメラ１４２は、ロボットハンド２００の前方の空間の画像を連続的に撮影しており、画像処理ユニット１４１は、その画像から対象物体を特定し、その対象物体の画像部分の大きさや動きから、対象物体の位置及び速度を推定しておくと好適である。これにより、対象物体がロボットハンド２００のどの位置に衝突するのかが推定できる。
【００４０】
情報処理ユニット１１０は、推定された対象物体の位置及び速度に基づいて、粒子フィルタのための複数の粒子を表わすデータを発生させる（Ｓ１０１）。このステップは、図４のアルゴリズムのライン１に対応する。具体的には、情報処理ユニット１１０中にデータ領域を設定し、そこに、発生させたそれぞれの粒子のある時刻における位置、接触モードなどを記憶させる。粒子としては、推定された位置を中心として、適切な分散を与えた値を使用して分散させた複数の粒子を発生させる。粒子を発生させるタイミングは、カメラ１４２が最も正確に対象物体の運動を確認できるタイミングが好適である。例えば、対象物体が、ロボットハンド２００の陰に隠れない程度に近付いたときなどとすることができる。接触モードとは、ロボットハンド２００のセグメント化されたどの部分に接触しているのかを表わす情報であり、例えば、ロボットハンド２００に接触していないときは接触モード：１、ロボットハンド２００のセグメント２に接触しているときは接触モード：２などのように定義される。図６は、ロボットハンドのセグメントに対応する接触モードを表わす図である。図において、ｄ２などのように「ｄ」の次に数字が続く参照符合で、ロボットハンド２００上のセグメント化された位置が示されている。その「ｄ」の次に数字が、そのセグメントに接触した場合の接触モードとなる。ロボットハンド２００やロボットアーム２５０の外形の情報は既知であり、ロボットハンド２００の把持部２０２の開く程度やロボットアーム２５０の位置は衛星３００側で制御されるため、それらへの指示値あるいはそれらからのエンコーダからの位置の出力から、ロボットハンド２００の各部の空間的な位置は既知である。従って、粒子の位置が定まれば、その粒子がロボットハンド２００に接触しているのかいないのか、接触している場合にはどのセグメントに接触しているかを特定することができ、それにより接触モードを特定できる。
【００４１】
次に情報処理ユニット１１０は、時刻ｔ（典型的には、現在の時間）における、各粒子の位置及び接触モードをシミュレーションする（ステップＳ１０２）。このステップは、図４のアルゴリズムのライン２〜４に対応する。ここでは、粒子を記述する連続的状態をシミュレーションする。典型的な連続的状態は位置であるが、位置の変化率である速度もシミュレーションの対象に含めると好適である。シミュレーションは、実際の時間経過と同じようにリアルタイムで実行する必要がある。そのため、実際の対象物体の動きを粒子フィルタで精度よく推測できる程度の計算量をリアルタイムに実行できるような計算資源を使用する必要がある。それぞれの粒子の位置の変化は、物理法則に従ってシミュレーションされる。その物理法則は、ロボットハンド２００に接触せず、空間を自由に飛行しているときは典型的には等速直線運動であり、ロボットハンド２００に衝突したときは、典型的には弾性衝突や滑りである。ロボットハンド２００の外形の形状や位置は既知であるため、それに基づく、粒子がロボットハンド２００とどのように衝突するかが計算される。対象物体とロボットハンド２００が衝突した時にどのように運動が変化するのかを求めるための剛体衝突モデルについては、後で、詳述する。なお、後述のステップＳ１０７でＮｏと判断されたときにｔは１ステップ進められてステップＳ１０２に戻るため、ステップＳ１０２は、所定の間隔（例えば、１ｍｓの周期）で反復的に実行されて、制御ループが形成される。
【００４２】
情報処理ユニット１１０は、力覚センサ１３２の出力をモニタしており、力覚センサ１３２の出力により、対象物体がロボットハンド２００のいずれかの場所に衝突したことを検出する（ステップＳ１０３）。このステップは、図４のアルゴリズムのライン６に対応する。力覚センサの出力は所定の間隔で反復的にサンプリングされており、その出力の絶対値が所定の値を超えたときに対象物体がロボットハンド２００のいずれかの場所に衝突したと判断する。その所定の間隔は、制御ループの間隔と同じでよい。なお、出力の絶対値がピークからなだらかに減少する場合は、弾性衝突ではなく、滑りが発生していると判断することもできる。衝突が検出されないときは、ステップＳ１０４からステップＳ１０５をスキップしてステップＳ１０６に進行する。一方、衝突が検出されたときは、次のステップＳ１０４に進行する。
【００４３】
ステップＳ１０３で対象物体の衝突が検出された場合、情報処理ユニット１１０は、各粒子の衝突時間（衝突時刻）と実際の衝突時間（衝突時刻）との時間差に基づいて重みを計算する（ステップＳ１０４）。このステップは、図４のアルゴリズムのライン７，８，１１に対応する。具体的には、式（１１）で各粒子の衝突時間と実際の衝突時間との時間差が小さいほどその粒子の寄与が大きくなるような確率を求め、それを式（１０）に代入する。式（１０）では、１ステップ前の粒子の重みに対して、１ステップ前の位置から現在の位置に粒子が移動する確率に現在の位置に粒子がある状態で現在のセンサ観測値が得られる尤度をかけた（さらに、重要度密度により分散を与えた）ものを求めて、現在（時間ｔ）の粒子の重みを求める。実際の衝突時間に近い衝突時間を現した粒子ほど、対象物体の実際の運動に近い運動を有しているはずであるため、このステップの処理により、対象物体の実際の運動に近い運動をしている粒子ほど大きい重み（確率）となり、粒子全体として、対象物質の運動をより正確に推定することができるようになる。
【００４４】
次に、情報処理ユニット１１０は、各粒子を衝突位置に移送し、接触モードを求め、正規化後に、重みに応じてリサンプリングする（ステップＳ１０５）。このステップは、図４のアルゴリズムのライン７，９，１０，１１，１２，１３に対応する。ここでは、式（１１）の説明で前述したように、衝突をすでに経験した粒子（ケースＡ）については時間を衝突時に巻き戻し、衝突をまだ経験していない粒子（ケースＢ）については衝突するまでシミュレーションを進めることによって、各粒子が衝突している状態に移送される。そして、どのセグメントと衝突しているか、すなわち、接触モードが求められる。さらに、すべての粒子を正規化してすべての粒子の確率の合計が１になるようにした後に、ステップＳ１０４で求めたそれぞれの粒子の重みに応じて粒子をリサンプリングする。リサンプリングは、各々の粒子を、確率の高い（重みの大きい）元の粒子の場所に、確率の高さ（重みの大きさ）に応じた個数で置き換える処理である。リサンプリングすることによって、それぞれの粒子の重みは等しくなるが、粒子の密度が確率を表すようになる。この際、重みがほとんどゼロの粒子は他のいずれかの重みの大きい粒子の位置に移動することになる。このステップにより、粒子の存在密度によって、対象物体がそのいずれかの粒子の位置に存在する確率が表わされることになる。ステップＳ１０４とステップＳ１０５によって、粒子の状態（位置、重み）が更新される。
【００４５】
次に情報処理ユニット１１０は、長時間（例えば、衝突時間の標準偏差の数倍）衝突しない粒子（outdated particle）の重みをゼロにする（ステップＳ１０６）。このステップは、図４のアルゴリズムのライン１５，１６に対応するものであり、サニティチェックと呼ばれる処理である。重みがゼロにされた粒子は、次回のリサンプリングで、重みの大きい別の粒子の位置に置き換えられることになる。これによって、衝突しそうにない位置を飛行している粒子が消去されて無駄な計算を防ぐことができるとともに、その粒子が重みの大きい粒子の位置に再配分されることによって、粒子による対象物体の位置推定を精度よく継続することができる。なお、ステップＳ１０６のリサンプリングは、必ずしも行わなくてはならないステップではなく、長時間衝突しない粒子が発生しにくい状況によっては、リサンプリングを行わなくても、精度の高い対象物体の位置推定を行うことができる。
【００４６】
次に情報処理ユニット１１０は、閉鎖可能領域の接触モードを経験した粒子の重みの合計が所定値以上かどうかを判断する（ステップＳ１０７）。このステップは、図４のアルゴリズムのライン１７に対応するものである。このためには、各粒子の重みとそれの直前の衝突による接触モードから、粒子全体の接触モードごとの確率を計算する。具体的には、式（１２）で接触モードｍの全粒子の重みｗd(m)を算出する。そして、閉鎖可能領域において、粒子で評価された物体の確率が所定の値以上であるかどうか、すなわち、物体が閉鎖可能領域に（所定の確率以上で）存在するかどうかが判断される。それためには、まず、式（１３）で、閉鎖準備完了の状態に対応する接触モードの全粒子の重みを合計して、閉鎖準備完了となる確率ｐ（ｄrtc）を求める。閉鎖準備完了の状態に対応する接触モードは、例えば図６においては、接触モード２，３，８，９である。接触モード２，３，８，９は、閉鎖可能領域に面しているセグメントに相当するものであり、この近傍に対象物体が存在するときにロボットハンド２００を閉鎖すれば、対象物体を確実に捕獲することができる。次に、その閉鎖準備完了となる確率ｐ（ｄrtc）が所定の確率以上であるかどうか（１．００あるいは１．００に近い所定の数値以上）が評価され、所定の確率以上であれば、対象物体が閉鎖可能領域に当該所定の確率以上で存在しており、閉鎖準備完了になったと評価（判断）してステップＳ１０８に進行する。ステップＳ１０４、Ｓ１０５、Ｓ１０６（必ずしも必須ではない）、Ｓ１０７によって、対象物体のロボットハンド２００への衝突を検出したことに応答して、粒子フィルタを実行して粒子の状態の更新及び粒子の評価を行うことにより、ロボットハンド２００の把持部２０２の閉鎖によって対象物体を捕獲可能なタイミングを判断することになる。ステップＳ１０７において、閉鎖準備完了となる確率ｐ（ｄrtc）が所定の確率未満であれば、時刻ｔを１ステップ進めてステップＳ１０２に戻り（図７のｔ→ｔ＋１は、ｔを制御ループ周波数の１サイクルだけ進めることを表わす）、そこで、前述の更新と評価からなる制御ループを反復することになる。
【００４７】
ステップＳ１０７で閉鎖準備完了と判断された場合、情報処理ユニット１１０は、コントローラ１２１を介して、ロボットハンド２００の把持部２０２の開閉を制御するモータ１２２に把持部２０２が閉鎖されるような信号を送る（ステップＳ１０８）。これによって、ロボットハンド２００の把持部２０２が閉じて閉鎖領域が形成され、閉鎖可能領域にあった対処物体が閉鎖領域に確保されて、把持されることになる。
【００４８】
上述のステップＳ１０１からステップＳ１０８の処理により、近付いてくる対象物体をほぼ確実にロボットハンド２００で捕獲することが可能である。なお、今まで１回の衝突の場合について説明してきたが、衝突が２回以上の場合も粒子フィルタを用いて同様にシミュレーションを行うことができる。すなわち、接触モードに、ロボットハンドのセグメントの情報に加えて、何回目の衝突であるのかという情報を追加すればよい。そして、物体がロボットハンドに２回目の衝突を行った場合、その２回目の衝突が力覚センサで検出された時に粒子フィルタを使用して、２回目の衝突を行う粒子をシミュレーションで抽出すればよい（すなわち、１回目の衝突以降、長時間２回目の衝突を行わない粒子をサニティチェックで重みをゼロにして、２回目の衝突を行う粒子の位置に置き換える）。その際には、１回目の衝突と同じく、実際の衝突時間との衝突時間差によって、粒子の重みが変化させられる。
【００４９】
（剛体の計算可能でサンプリング可能な衝突モデル）
前述のステップＳ１０２での、対象物体とロボットハンド２００との弾性衝突においてどのように運動が変化するのかについて、ここで説明する。ここでは、モデルベースの手法に使用される剛体衝突モデルについて説明する。具体的なモデルとしては、Ｂｒａｃｈの剛体衝突モデルを用いる。Ｂｒａｃｈの剛体衝突モデルには、計算の負荷が低いこと、及び粒子フィルタに対して特に親和性がある、という２つの利点がある。
【００５０】
図５は、剛体の衝突の際の力学的な関係を示す図である。剛体{１}は剛体{２}に衝突する。衝突点は法線方向（ｎ）と平面接線方向（ｔ。図は２Ｄの場合であるためｔと表現することができるが、３Ｄの場合はｔ1とｔ2を使用して表現することができる）を有している。各物体の重心は、衝突前に既知であるか、推定されているので、その重心から衝突点までの位置ベクトルｄを並進および回転の両方で計算することができる。Ｂｒａｃｈのモデルは、これらの要因を考慮して、衝突特性ｅ、ｅm、及びμを使用して衝突後の速度をシミュレーションするための衝突現象を表わす。次の式は、これの２Ｄバージョンである。
2019198948.tif 000041
ここで、ｍは質量、Ｉは回転軸の慣性モーメント、ｖは並進速度、ωは回転速度、Ｐは力積、Ｍはモーメントであり、添え字ｉとｆは、それぞれ、衝突前と衝突後を示す。最初の３つの方程式は運動量保存則である。式（１７）は、並進方向の反発係数（ｅ）から導かれる。Ｂｒａｃｈのモデルは、式（１８）に示されるように、回転方向における反発係数（ｅm）を規定している。ｅm＝＋１のとき、それは弾性的である。ｅm＝０のとき、それは、非弾性角度衝突である。ｅm＝−１のとき、モーメントインパルスはゼロである（すなわち、Ｍ＝０）。モーメントＭについては、各物体の角運動方程式により、次のように解くことができる。
2019198948.tif 000042
最後に、Ｂｒａｃｈは摩擦係数を通常表すμを定義しているが、式（１９）に示すように、法線方向から接線方向の力積の比を含むように定義を拡張した。Ｂｒａｃｈのμは、物体が擦れているときの摩擦係数として使用できる。そのような場合、その大きさは材料の特性に依存する。しかし、衝突に関しては、それは、物体がどのように衝突したかにも依存し、小さな値になる傾向がある。負の値は、係数が式（１）でどのように定義されるかの観点からも許容可能であり、ＰnおよびＰtのいずれかまたは両方が、式（２０）および（２１）のために、負の値となり得る。係数の符号は、接線相対速度を減少させるように決定され、これは摩擦力がどのように作用するかを表わす。こうして、実際の捕獲動作の間に、衝突後の速度（ｊ＝１及び２として、ｖjnf，ｖjtf，ωjf）は、式（１４）〜（１９）を使用して、衝突前の速度（ｖjni，ｖjti，ωji）及び３つの衝突パラメータから予測することが可能である。
【００５１】
さらに、Ｂｒａｃｈの剛体衝突モデルは、粒子フィルタに対して特に親和性を持っている。衝突モデルを定量的に評価するために、Ｂｒａｃｈのモデルは直感的な衝突特性ｅ、ｅm、及びμを使用して、衝突前および衝突後のパラメータの関係を表現することができる。これらの衝突特性パラメータは、明示的に計算することはできない。それでも、確率モデルベースのアプローチを使用するので、統計的表現（すなわち、平均および分散）で表される衝突特性パラメータを使用してサンプリングすることができ、実験的に衝突特性の傾向を推定することができる。衝突パラメータが与えられた場合の計算された衝突後速度が以下を満足するように、衝突パラメータをサンプリングする。
2019198948.tif 000043
ここで、ＥjiとＥjfは運動エネルギーを表わす。実際の動作中には、ｅ、ｅm、及びμを適切にサンプリングし、式（２４）の不満足が発生しないようにする。
【００５２】
（実験の装置）
本発明の接触モード推定装置１００の性能を評価するための実験を行った。そのために、モックアップのチェイサーと、エアベアリングを備えたターゲットを用意し、平面摩擦のない動きをエミュレートした。実験の目的は、４３ｍｍの開口部入口（すなわち、頂点１０と１１の間の距離）を備えたチェイサーのグリッパー（ロボットハンド。図６に示す）を使用して宇宙デブリのターゲットを捕獲することである。このスケールモデルにおいて、１．１６ｋｇ−ｍ2の慣性モーメントで３１．３ｋｇの重量のターゲットは、ターゲットの重心から１８７ｍｍ離れた位置に１０ｍｍ×１０ｍｍの正方形の被把持部がある。テストベッドには、モーションキャプチャカメラシステムが装備されており、評価のため約１２０Ｈｚで各オブジェクトの実際の６自由度の位置を測定した。チェイサーのロボットハンド２００には、衝突インパルスを測定するためにＷａｃｏｈ（登録商標）製の６軸の力覚センサを備えた固定接点シャフトが装備されている。実験では、ターゲットを手で慎重に押し、チェイサーのグリッパーをバックグラウンドフレームに固定して、複数物体の力学を含む制御の問題が生じないようにした。計算には、Ｕｂｕｎｔｕ  １６．０４に搭載されたＲＯＳ−ｋｉｎｅｔｉｃフレームワークを、実験全体ではラップトップＰＣ（２．９ＧＨｚのＩｎｔｅｌ  Ｃｏｒｅ  ｉ７−３５２０Ｍ（登録商標）のＣＰＵおよび８ＧＢメモリ）を使用した。このセットアップでは、力覚センサのデータ収集を含め、１ｋＨｚの制御ループ周波数が達成された。
【００５３】
実験では、ロボットハンド２００の先端から約  ３５０ｍｍ離れた位置で、典型的なランデブードッキング動作範囲である２９〜９９／秒（平均６１ｍｍ／秒）の速度になるように、手で静かにターゲットを押した。回転速度は、実際のスペースデブリの捕獲操作で期待されるように、平均１．５度／秒として手で加えられた。前述したように、衝突特性のプロファイルｅ、ｅm、およびμは予測に使用され、それは初期の並進速度および回転速度に依存する。粒子フィルタの場合、衝突特性のパラメータは変化を持たせてサンプリングされる。これらの衝突特性の平均および分散は、図１７に示すように決定された。本発明で使用する粒子フィルタでは、粒子の予測（図４の表のライン３）に際して空間を動くものと衝突するものが存在する。また、ここでは、Ｂｒａｃｈの衝突モデルを使用している。Ｂｒａｃｈの衝突モデルの式は式（１４）〜（２３）に示しているが、そこに示されているように、剛体接触の脱出速度を決定づける３つの衝突パラメータは、ｅ（並進の弾性係数）、ｅm（回転方向の弾性係数）、μ（力積の比。完全に擦れたときには摩擦）であり、それによりモデル化がされている。ある衝突があったとして、その時の衝突特性を正確に予測することはできないが、ある程度の傾向があることが理解されてきた。それは、以下の通りである。
（ｉ）接触時間(ｔhit）は、接触方向、鉛直方向の相対速度に依存する。
（ｉｉ）ｅは接触時間に依存する。
（ｉｉｉ）μは接触方向、鉛直方向の相対速度に依存する。
図１７は、インピーダンス制御なしの場合の衝突特性のサンプリングのプロファイルを示す図である。上述の傾向を表わすために、粒子の予測（またはシミュレーション）のために衝突特性を設定する際に、図１７のグラフに示されるように、モンテカルロ法で数値を分散させている。
【００５４】
（実験１：基本性能評価）
本発明による衝突ベース接触モード推定（collision-based contact mode estimation, ＣＣＭＥ）を、推定精度と計算時間という基本性能を測定するためのテストによって評価する。最初の接触モード（最初に衝突した辺または頂点のセグメント番号）が分散されるように、実験データを収集した。ノイズに対するロバスト性を示すために、図１６の表に示すように、モーションキャプチャシステムによって測定された真の状態に初期ノイズを人為的に加えた。これは以下のような理由による。まず、粒子フィルタでは、粒子の初期値が必要である（図４の表のライン１）。具体的には、あるタイミングで推定されている位置および速度を中心に、その時に想定される推定の誤差を加味して各粒子を拡散させて配置する必要がある。この実験では、モーションキャプチャカメラによって精度が高い値を計測しており、そのようなシステムに基づいて、図１９の黒枠で囲んだ白い四角形で表される被把持部をプロットしている。それを「真値」と考えることができるが、それでもカメラによる計測の性能の限界があり、キャリブレーション誤差や計測誤差は含まれる。さらに、接触現象は１ミリメータの誤差があるだけでも、衝突により、空中で跳ね返ったり、めり込んでしまったりするように、結果が大きく異なるものである。従って、誤差を含ませてシミュレーションを行うことが重要である。この実験においても、その「タイミングで推定されている位置および速度」を設定することが必要になる。それを「真値」と考え、さらに、図１６のμ（平均）分だけ位置（p）と速度（v）をずらし、かつ、その状態からσ(分散)の大きさの分散で粒子を拡散させている。
【００５５】
ＣＣＭＥの場合、対象物体の被把持部が開口部入口を出る前に、対象物体の被把持部が辺２，３，８または９に当たったときに、ｐ（ｄrtc）が１になる（閉鎖準備完了信号が生成された）ことを意味する。対象物体の被把持部が辺２，３，８または９に当たっていない場合、ｐ（ｄrtc）は１になることなく０になるはずである。図１８は、インピーダンス制御なしの場合の実験によって得られたＣＣＭＥの基本性能を表わす図である。図１８に示す表は、図１６に示す表に示される初期粒子分布でＣＣＭＥが１００％の接触モード推定の正確さを有していることを示している。図１８において、「最初の衝突の接触モード」は、ターゲットの被把持部がグリッパーに最初に当たった箇所を表わす。４−７／１２／１３はグリッパーの外側に当たったケースであり、これは捕獲できない場合であるが、このようなケースも検出が必要である。「１０／１１」は、グリッパーの頂点（角）に当たったケースであり、ここに当たっただけでは、グリッパーは閉じてはいけない。「８／９」はグリッパー内部深くに直接入ったケースである。「試行数」は試行の回数である。「脱出した試行数」は、一旦、ターゲットの被把持部がグリッパー内部に入ったが、閉鎖するタイミングを逃したために、ターゲットの被把持部がグリッパーの外部に出ていってしまい、捕獲に失敗してしまった回数である。今回の実験では実際の捕獲動作は行っていないために、そのようなケースが発生している。「推定の正確さ」は、接触推定の成功率である。すべてが、１．００であり、すべてが成功している。「計算時間（ｍｓ）／最悪」は、図４のライン７〜１２の動作にかかった処理時間の最悪値である。制御周期の１ｍｓを超えているが、この推定動作は制御動作には使わず、一旦ターゲットの被把持部がグリッパー内部から出ていく前にそれを検出できればよいため、問題とはならない。「計算時間（ｍｓ）／最悪」は、図４のライン７〜１２の動作にかかった処理時間の平均値である。
【００５６】
図１９に代表的な試行のモード推定の推移を示す。その図は、ターゲットがグリッパーの衝突するところを上から撮影した画像に、粒子フィルタによって推定された粒子の分布を対応付けた図である。その図では、左から時間（単位はｓ）が進んでいる。上段、中段、下段の試行は、それぞれ、辺８（ケース８）、頂点１０（ケース１０）、辺４（ケース４）に最初に衝突したものである。黒枠で囲まれた白の（矢印で方向及び速度が示された）四角形は、被把持部の位置と向きを表し、対象物体の本体は画像中に確認できる。灰色の四角形はアクティブな粒子を表わす。上段のケース８では２回の衝突が必要であるが、粒子は被把持部を良好に追跡する。中段のケース１０では、p（drtc）は頂点１０に達すると低くなるが、辺８に達すると直ちに回復してすぐに閉鎖準備完了信号を示す。頂点１０に当たると辺に比べて微妙な条件が必要になるため、少数の粒子のみが分布している場合は簡単に解が見つからないことがある。下段のケース４の場合、図４の表のライン１５とライン１６に記載されているように、古い粒子（図の明るい灰色の四角形）のサニティチェックによりロボットハンド２００内部の確率を消去する。最後に、適切なタイミングで閉鎖準備完了の信号を供給しなければならない。参考として、図１８の脱出した試行の多くは、ロボットハンドを開いたまま被把持部がロボットハンドの入口から出ることを示唆している。接触モード推定では、これらのケースが救済される。
【００５７】
図１８には、この推定の計算時間の結果も示されており、粒子フィルタの主な問題点が示されている。ＣＣＭＥの計算（すなわち、図４のライン７〜１２の計算、ケースＢの粒子の衝突の検出が計算の最も時間のかかる部分である）の平均／最悪時間は、それぞれ３．９／６．１ミリ秒である。これは制御ループの周波数（1ミリ秒）よりも遅いが、接触モード推定は制御と並行して実行できるため、問題とはならない。計算時間の要件は、被把持部がロボットハンドの衝突部分にまだ接近している時間であり、例えばランデブードッキング操作の速度に基づくと０．２秒となり、得られた計算時間の結果はこれを満足するものである。このように、本発明では、過度の計算資源がなくとも、十分にリアルタイムの推定を実行できる。
【００５８】
（実験２：初期状態誤差の評価）
初期状態誤差の大きさは、粒子の初期状態分散の大きさを決定する要因である。その効果を確認するために、最初に予測されたノイズへの影響を評価した。図１６の初期粒子分布は推定精度に影響しないため、記録された代表的な試行で初期化時に異なる大きさのノイズ（ガウス分布とＤＣバイアスの両方）を粒子に追加した。その結果を図２０に示す。図２０は、ノイズと成功率の関係を示す図である。このシミュレーションされた実験では、前の実験（図１６）における粒子の初期化ノイズの大きさにノイズ係数が乗算される。初期の衝突の接触モード１０の成功率は、ノイズ因子＝１で失敗し始め、２００粒子の場合は４００粒子の場合よりも急に下降する。これは、初期状態誤差が増加するにつれて、より多くの粒子が探索空間をカバーするために必要であることを示す。そして、より多くの計算が必要である（平均で８．３ミリ秒、最悪で１４．２ミリ秒）。すなわち前の実験と比較して２倍以上である。まとめると、計算資源は、捕獲前の段階における運動の推定誤差の大きさに依存するものである。
【００５９】
（接触モード推定装置１００の動作−インピーダンス制御あり）
これから、インピーダンス制御下での、回転しているスペースデブリ捕獲のための接触モード推定について説明する。まず、接触モード推定を用いた、回転しているスペースデブリ捕獲のための力の制御について説明する。先に、インピーダンス制御を行わない形態の接触モード推定法を説明したが、それは、ロボットハンド２００が地面に固定された環境に基づくものである。この実施形態では、回転しているスペースデブリを捕獲するために必要な、自由飛行ターゲットを捕獲するための、インピーダンス制御下のロボットアーム上のロボットハンドを使用するものであり、また、それに関連する接触モードの問題も取り扱う。
【００６０】
宇宙アプリケーションにおけるスペースデブリの除去および壊れた衛星の修理は、自由に動く物体の捕獲を必要とする。Ｈｉｌｌの方程式で表現されたＣｌｏｈｅｓｓｙ−Ｗｉｌｔｓｈｉｒｅシステムの衝突回避操作が可能な範囲の後は（従来の）協調的ランデブー動作でもワンショット動作（すなわち、やり直しができない動作）となってしまう。一方でこの回転物体捕獲の場合、ワンショット動作である上に、対象物体が回転しており、さらには、ターゲットマーカを有さない捕獲対象の３ＤＣＡＤ情報を持っていたとしても、軌道上での状態は未知であるため、そのワンショット動作はより困難となる。これは、完全なリハーサルも、地上での完璧なテスト準備も、カメラセンサによる測定と接触の力学の観点から行うことができないことを意味する。特に、測定が困難であるために、捕獲が不完全となり、回転物体の捕獲における初期接触時に、それ以降の動作に影響のある程度の相対速度の残留が予想されることを意味する。このような非協調的なロボットでの捕獲においては、剛体間の衝突と、その後の相対的な位置エネルギーの相殺を考慮する必要がある。衝突の影響に対処するために、機械的インピーダンスを制御するインピーダンス制御を行うとより好適である。
【００６１】
先に説明したインピーダンス制御のない接触モード推定は、適切なタイミングでロボットとターゲットの間の相対速度をゼロにするためにロボットハンドを閉じるタイミングが推定結果である。インピーダンス制御下での接触モード推定の課題は、先に説明した弾性的衝突と比べて長い衝突持続時間となるために、粒子の予測位置の変動が大きくなることである。衝突トリガフィルタは、衝突という明確に判別可能な情報を使用するが、インピーダンス制御を行うと、情報量が制限されて推定の精度が低下する可能性がある。
【００６２】
ここでは、非協調的な自由飛行物体の捕獲のためのロボットアームのためのインピーダンス制御方式における、力覚センサのみを用いた接触モード推定を提案する。より具体的には、Ｂｒａｃｈモデルの出力を用いて接触モード推定のために滑り現象をモデル化し、粒子フィルタの更新プロセスをより完全なものとする。その実現のために、このために、先に説明したインピーダンス制御のない接触モード推定アルゴリズムを修正する。この技術は、対象物体が閉鎖可能領域に入ったことを確実に検出することによって、回転する剛体をより確実に捕獲できるようするものである。
【００６３】
これから、まず、インピーダンス制御下での接触モード推定の問題を定式化し、次に、インピーダンス制御下での衝突に基づく接触モード推定を用いた、自由に回転する剛体捕獲制御方式を提案する。
【００６４】
（インピーダンス制御下での接触モード推定）
これから、インピーダンス制御下での接触モード推定について説明する。従来の対象物体の捕獲手順は、観察（observation）、接近（approaching）、追跡（tracking）、捕獲（capturing）、および同期化（synchronizing）からなるものであった。しかしながら、従来は、追跡ステップの後であっても、ステップ全体にわたってカメラを使用しての完全な観察能力を前提としているので、現実的ではない。確実な捕獲を達成するうえで、上記の問題を克服するためには、カメラが、近距離で非協調なターゲットの相対位置と状態を測定する機能を失った場合でも、捕獲が可能な方法を構築する必要がある。具体的なアプローチとして、衛星は、物体を捕獲するためにロボットハンドをいつ閉鎖すべきかを知るため、カメラから独立した力覚センサを用いて接触モードを推定することとする。捕獲が成功するためには、接触モードの推定が成功する必要がある。また、衝突による衛星への衝撃を緩和するために、インピーダンス制御を行うこととする。
【００６５】
カメラが非協調ターゲットを測定できる接近段階において、カメラが目標を見逃し、相対位置情報の入力がなくなることを仮定すると、予想接触時間および位置ならびにターゲットの被把持部への経路は、周期的に更新される必要がある。相対位置データが早期に不安定になると、衛星はターゲットから一度離れてから、接近ステップの始めからやり直す。逆に、相対位置データの入力がそれなりに安定したまま、ターゲット近傍まで進むことができた場合は次のステップに進む。この場合、そこでカメラの情報が途切れても、衛星は元の位置に戻ることができない。
【００６６】
この実施形態では、従来の追跡ステップの代わりにリンプという別のステップが追加される（図８）。図８は、物体捕獲までの一連のステップを表わす図である。リンプ以降のステップは以下の通りである。
・リンプ（Limp）：カメラによる最終的な予測に基づいて、衛星に、対象物体の接近方向と速度が入力される。ロボットアーム２５０はまた、次のステップでインピーダンス制御を行うことができるような衝突姿勢に入る。この後、衛星は、被把持部との最初の衝突が生じるまで、与えられた速度でリンプ状態（サーボなし）で待機する。この時点での対象物体に対する衛星３００の速度は、約１００ｍｍ／秒である。
【００６７】
そして、次のステップは下記の通りである：
・捕獲（Capture）：最初の衝突が発生した後、衛星は、カメラなしで対象物体の被把持部で物体閉鎖を行う。衝突によって、相対運動に起因する有効なエネルギーを消すためにインピーダンス制御が行われる。これに伴い、接触モード推定によってロボットハンド２００をいつ閉じるかが決定される。
・同期（synchronizing）：物体を閉鎖するために、ここで衛星のロボットハンド２００が閉鎖される。衛星は、ターゲット間の相対運動をキャンセルするように制御される。物体が閉鎖されると、衛星と対象物体は分離されない。衛星とロボットアームをナビゲートするのには十分な時間がある。
位置誤差に対して余裕のあるロボットハンドを設計する必要がある。また、位置誤差に加えて、初期衝突時の有効な相対速度も期待される。このような状況のために、以下に説明するような弾性衝突を扱うことができる力覚センサベースの接触推定によるインピーダンス制御を行う。
【００６８】
（相対位置情報がない場合を含むインピーダンス制御）
自由に回転する剛体を捕獲する際には、その回転運動が問題となる。したがって、剛体間のある程度の相対速度が予測され、エネルギー相互作用が存在する。この状況に対処するために、インピーダンス制御理論を採用した。ここでは、相対位置情報がない場合についてのインピーダンス制御法について説明する。インピーダンス制御法の式は次のとおりである。式において、上部に１つドットがつくと、１回微分したことを表わしている
2019198948.tif 000044
ここで、ｘgpは、被把持部の位置および向きのベクトルであり、ｘeは、ロボットハンドの位置および向きのベクトル（ロボットハンド及びロボットアームへの動作の指示値、あるいはそれらからの位置エンコーダの出力により取得）であり、Ｆeはロボットハンドに加えられる外力（トルクセンサにより検出する）であり、Ｄe、ＭeおよびＫeはゲイン行列である。所望のロボットハンドの加速度ｘ∈ｅを解くと、方程式は次のようになる。
2019198948.tif 000045
この場合、少なくとも捕獲ステップでは、被把持部の相対的な位置についての情報はない。従って、以下のようになる。
2019198948.tif 000046
他方、相対速度も同様に計算することはできないが、モータの変化からロボットハンドの速度を計算することができ、これにより、減衰時間を計算することができる。
【００６９】
ヤコビ行列は次のように定義される。
2019198948.tif 000047
ここで、Ｊmはヤコビアンである。また、φmはモータの角度位置であり、モータのエンコーダから取得される情報である。所望のモータ角度位置は式（５．４）の両辺を時間に対して微分することによって、以下のように導き出される。
2019198948.tif 000048
ロボットロボットアームの力学の式（ロボットアームの回転方向の運動方程式）は次のとおりである。
2019198948.tif 000049
ここで、Ｈmはロボットアームの慣性行列であり、τmはロボットアームに対する指令となる所望のモータトルクである。式（５．２）、式（５．５）、および式（５．６）から、ロボットアームのモータに対する指令は、捕獲ステップで計算される。インピーダンス制御が適切に適用されると、衝突時間が長くなる。それにより粒子の予測位置が変動し、接触モード推定において隣接する接触モードを区別することが困難になる。
【００７０】
（インピーダンス制御による接触モード推定）
これから、力覚センサを用いた接触モード推定を含むインピーダンス制御を提示する。ここでは、前述の、ロボットアームのインピーダンス制御のない衝突モデルに基づく接触モード推定（ＣＣＭＥ）理論を適用する。ここでは、インピーダンス制御下での滑りトリガフィルタによる接触モード推定を説明する。インピーダンス制御を行うと、現実の対象物体に滑りが発生しやすくなり、また、推測においても粒子が滑りを生じやすくなるためである。なお、インピーダンス制御を行わずに滑りトリガフィルタを使用した接触モード推定を行うことも可能である。
【００７１】
図９は、物体の衝突時の挙動（インピーダンス制御時の滑りを含む）を説明する図である。今までの説明では、すべての衝突が弾性であり、衝突後に接触部分が離れると仮定している（図９の（Ａ））。インピーダンス制御は弾性的な剛体衝突を含むが、接触部分は衝突後に離れていても接触したままであってもよい。また、インピーダンス制御を行う際には、「滑り」の現象が生じることがある（図９の（Ｂ））。インピーダンス制御が完全に行われると、反発係数は０になり、非弾性衝突となる。しかし、スペースデブリの捕獲は剛体衝突を伴うため、インピーダンスマッチングが実現するのはほとんど不可能である。特にスペースデブリ捕獲では、対象物が大きく、被把持部が対象物体の外側に位置するため、被把持部は対象物体の重心から離れている。したがって、完全なインピーダンス整合は期待されないが、適切なインピーダンス制御をすると滑りが発生する可能性がある。滑りトリガフィルタを実施するために、滑り現象を予測するためのモデル化を行い、フィルタリングを行うための検出が必要である。
【００７２】
（滑り現象の予測）
剛体の滑り現象、およびその予測について説明する。この場合、Ｂｒａｃｈの剛体衝突モデルも使用する。図１０は物体の衝突時の挙動（弾性衝突と滑り）を説明する図である。図１０の（Ａ）では、下の物体の右端の辺で衝突が発生している。速度によって決定される衝突特性（ｅ、ｅm、μ）と、両方の剛体の慣性特性および微視的な材料特性に基づいて、両方の物体の速度出力が決定される。衝突後、上の物体は離れていくが、離れる空間がある。図１０の（Ｂ）の場合には動く余地がない。そのため、上の物体は、下の物体に何らかの力を加えながら、下の物体の表面に沿って動かなければならない。この現象を滑りという。
【００７３】
滑りという現象を予測して計算するために、滑りモードに入る予測アルゴリズムを図１１に示す。滑りが発生するかどうかは、Ｂｒａｃｈのモデルを使用して出力速度を計算した後、２つの物体が幾何学的な干渉を有するかどうかによって決定される。具体的には、ライン６で、接触点が表面に沿って移動しているかが判断され、そうである場合には、滑りがあるものと判断される。実際には、位置は最終的な速度（ｋ＝１および２）に従って前進させられ、衝突について確認される。
2019198948.tif 000050
【００７４】
（滑り現象の検出）
衝突後に滑りが発生する際に、ロボットアーム先端についている力覚センサ１３２に力が加えられるため、容易に検出が可能である。図１２は、法線方向の力覚センサ１３２の出力の例を示す図である。一般的に、衝突の持続時間は数十ミリ秒未満であり、それよりも弱い力がそれより長く加えられると、滑りが発生している。粒子フィルタの計算で滑りが検出された場合、滑らずに自由空間を移動している粒子をフィルタリングして除去することができる。すなわち、滑りが現実に発生しているのであるから、滑りを起こしていない粒子の重みをゼロにすることによって推定を正確にすることできる。また、滑り中に、図１３に示すように、新しい衝突が発生することがある。図１３は、法線方向の力覚センサの出力の例（滑り中の衝突を含む）を示す図である。これらは、被把持部が位置する場所の接触モード推定のための情報を与えることになる。
【００７５】
（全体アルゴリズム）
図１４に示すアルゴリズムは、インピーダンス制御下で対処できる全ての接触モードの推定アルゴリズムである。ライン１から１３までは図４に示すアルゴリズムと同様であり、衝突が検出されたときに更新プロセスが開始されるものである。予測プロセス（ライン３）は、この実施形態では、図１１に示すアルゴリズムで説明した滑り予測を含む。時刻ｔにおける接触モードはｄt∈｛ｄ(1)，ｄ(2)，…，ｄ(K)｝で表わしており、これを使用して、ロボットハンド２００が閉鎖準備完了かどうかを決定する。ここで、ｄ(k’)をｄ(k)が滑りを起こした場合と定義する。更新プロセスが実行された後、滑りトリガフィルタが採用される。滑りが発生しているかどうかは、力覚センサの出力によって（弱い力が長い時間出力されることを検出することによって）追跡され、滑り接触モードまたは非滑りモードの粒子に応じてフィルタリングされる（ライン１６〜２２）。具体的には、ライン１６から１７で、力覚センサ１３２によって滑りが検出された場合、滑りの状態ではない粒子についてリサンプリングが実行され、ライン１８で正規化が実行される。また、ライン１９から２０で、衝突が検出されたが滑りではない場合に、滑りの状態の粒子についてリサンプリングが実行され、ライン２１で正規化が実行される。ライン２３及び２４は、長時間衝突していない古い粒子のサニティチェックであり、あまりに長い時間衝突が行われない粒子を除去するものである。ライン２５で、閉鎖準備完了のタイミングが判断される。ライン２６で、時刻ｔを１ステップ進めてライン２に戻り（図１４のｔ→ｔ＋１は、ｔを制御ループ周波数の１サイクルだけ進めることを表わす）、そこで、前述のシミュレーションと評価からなる制御ループを反復することになる。なお、滑りの検出によってトリガされたフィルタはそのタイミングで一度だけ実行されるため、図１３に示すように、滑りの途中で衝突が検出された場合（ライン６）、衝突トリガフィルタが個別に実行される（ライン７〜１１）。以上、滑りトリガフィルタを使用する場合について要点をまとめると、力覚センサ１３２から出力される信号に基づき、対象物体がロボットハンド２００上で滑っていることを検出し、複数の粒子のそれぞれにおいて、ロボットハンド２００に衝突した粒子がロボットハンド２００の表面に沿って動く場合にロボットハンド２００上で滑っているものとしてシミュレーションし、対象物体がロボットハンド２００上で滑っていることをさらに検出したことに応答して、粒子フィルタを実行して接触モードの評価を行うことにより、対象物体がロボットハンド２００の把持部２０２の閉鎖によって捕獲可能なタイミングを推定することによって、衝突だけでなく滑りを考慮したシミュレーションと推定を行うことが可能である。
【００７６】
接近ステップにおける視覚によるサーボ中の予想される推定位置誤差は、平均および分散パラメータを用いて統計的にモデル化され、図１４に示すアルゴリズムのライン１に示されるリンプステップで反映させられる。粒子フィルタを実行するにあたり、初期状態の誤差の大きさは、粒子の初期状態での分散の大きさを決定する。粒子の状態は、予想される初期誤差よりも多くの空間をカバーする必要がある。
【００７７】
（必要な計算資源）
必要な計算リソースの量について説明する。計算量は、インピーダンス制御がない場合と同様であると予想される。滑りトリガフィルタリングステップ（ライン１７およびライン２０）は、衝突トリガフィルタリングと比較して計算上無視できるものと予想される。衝突トリガフィルタは、パラメータ化されたサンプリングプロセスを伴うが、滑りトリガフィルタは、以前の衝突から続く、ある方向のある速度を使用するため、パラメータ化されたサンプリングプロセスを有しない。速度ベクトルの大きさをサンプリングすることを考慮してもよいが、最終的には相手物体の同じ点と衝突するので、サンプリングの効果は限定的である。従って、実際の滑りトリガフィルタは、限られた計算資源しか必要としないリサンプリングのみを含んでいる。
【００７８】
（実験）
インピーダンス制御下の粒子フィルタによる衝突モデルベースの接触モード推定アルゴリズム全体（図１４のアルゴリズム、図１１のアルゴリズムを含む）を検証するために実験を行った。より具体的には、以下の評価を行った。
・接触モード推定のための計算時間を含む様々な衝突スキームを用いた異なる実験試験からの性能検証（実験３）
・滑りトリガフィルタを用いた接触モード推定の利点（実験４）
【００７９】
（実験装置）
実験では、エアベアリングロボットシステムを使用する。ここでは、チェイサーは地面に固定されている。図１５に座標系を示す。座標系は次のようになる。
・ワールド｛Ｗ｝：地上のデータはモーションキャプチャシステムから取得される。
・チェイサー｛ＣＨ｝：チェイサーに固定の座標系。ここでは、地面に固定されている。
・ロボットハンド｛ＥＥ｝：｛ＣＨ｝から前方向の力学データを取得。このフレームにおいて接触モード推定が行われる。
・ターゲット｛ＴＡ｝：自由飛行のターゲット本体に固定の座標系。
・被把持部｛ＧＰ｝：被把持部はターゲットの一部であり、ターゲットの重心から少し離れている（１８５ｍｍ）。
【００８０】
チェイサーは、力覚センサの高さを含めて、各リンクの長さがＬ01＝１１０ｍｍ（ジョイント１への本体の重心）、Ｌ12＝１００ｍｍ（ジョイント１からジョイント２）、Ｌ23＝１００ｍｍ（ジョイント２からジョイント３）、およびＬ3E＝１８８ｍｍ（力覚センサの高さを含む、ジョイント３から｛ＥＥ｝基部まで）の平面上の３自由度のアームを有している。ハーモニックドライブ（登録商標）システムによって生成されたハーモニックギヤを備えたアクチュエータが使用される。目標は、重さ３１．３ｋｇ、スケールモデルでは慣性モーメント１．１６ｋｇ−ｍ2、ターゲットのＣｏＧから１８５ｍｍ離れたところに１０ｍｍ×１０ｍｍ四方の被把持部を備える。
チェイサーにはオンボードバッテリーＳｈｏｒａｉ  ＬＦＸシリーズ（１２Ｖ、７Ａ）が装備されている。計算のために、ラップトップＰＣを備えたＵｂｕｎｔｕ  １６．０４（２．９ＧＨｚのＩｎｔｅｌ  Ｃｏｒｅ  ｉ７−３５２０Ｍ（登録商標）のＣＰＵおよび８ＧＢメモリ）にインストールされたＲＯＳ−ｋｉｎｅｔｉｃキネティックフレームワークが、実験全体に使用されている。チェイサーのロボットハンドには、６軸の力覚センサＷａｃｏｈ  Ｔｅｃｈ  ＤｙｎＰｉｃｋを備えた固定接点シャフトが装備されており、衝突衝撃と滑り現象を測定することができる。
【００８１】
実験はリンプステップから開始した。浮揚しているターゲットは、物体間の相対速度については、７０〜１３３ｍｍ／秒（平均１００ｍｍ／秒）の速度で、手で静かに押される。回転速度は、手で平均２．４度／秒で与えられる。ターゲットは、グリッパーの先端から３５０ｍｍ離れたところに置かれる。これは、リンプステップと類似の状況である。この時点で、粒子には、カメラ測定に基づく状態予測のノイズの分散に対応する、図１６に示されるノイズプロファイルが割り当てられる。このノイズプロファイルは、インピーダンス制御なしの場合の実験で使用したものと同じである。接触モード推定が適切なタイミングで閉鎖準備完了を示すときに対象物体の捕獲が成功となる。接触モード推定のために、衝突特性ｅ、ｅm、およびμのプロファイルは、初期並進速度および回転速度に依存する。図２１に、インピーダンス制御ありの場合の衝突特性のサンプリングのプロファイルを示す。これは、インピーダンス制御なしの場合の実験で使用した図１７のものと比較して、より長い衝突時間が予想されるため、それに応じて変更したものである。ターゲットの被把持部が開口部を出る前に、ターゲットの被把持部が辺２，３，８または９に当たったときに、ｐ(drtc)が１になる（閉鎖準備完了信号も生成される）と、実験が成功したことになる。粒子数は実験全体で２００に固定している。
【００８２】
（実験３：基本性能の評価）
様々な衝突スキームによる異なる実験から性能の検証を行い、その結果を図２２に示す。図２２は、インピーダンス制御下の滑りトリガフィルタを用いたＣＣＭＥの基本性能を表わす図である。インピーダンス制御下の衝突後のターゲットの挙動が完全にカバーされるように初期接触モードを変化させて、実験データを収集、記録した。これには、辺または頂点との衝突、非滑り接触モードも含まれる。これらの結果は、インピーダンス制御下の粒子フィルタによる衝突モデルベースの接触モード推定アルゴリズムが、初期推定誤差を考慮しても有効であることを示している。
【００８３】
図２３，図２４、および図２５は、滑りトリガフィルタを用いた接触モード推定の代表的な遷移のケースを示している。それらの図は、ターゲットがグリッパーの衝突するところを上から撮影した画像に、粒子フィルタによって推定された粒子の分布を対応付けた図である。その図では、左から時間（単位はｓ）が進んでいる。図２３は、滑りトリガフィルタを用い、最初の衝突の接触モードが８の場合の、接触モード推定の推移を示す図である。図２４は、最初の衝突の接触モードが８の場合の接触モード推定の遷移を示す図である。図２５は、最初の衝突の接触モードが１０の場合の接触モード推定の遷移を示す図である。暗いグレーの四角形は衝突した粒子を表わす。明るいグレーの四角形は滑りスライディングモードに入る。グレーの四角形は空間に向かうもの（衝突なし）であり、黒枠で囲まれた白い四角形はモーションキャプチャシステムからのデータであり、ターゲットの実際の被把持部の位置である。最初のケースでは（図２３）、最初の衝突の後、接触モードは滑りモードに入る（ｄt＝ｄ(8’)）。滑りが検出されると、粒子は、非滑りの粒子は消去され、滑りの粒子に集められる。これは、滑りの間の第２の接触モード推定を容易にする。第２の衝突は、閉鎖準備完了信号のタイミングを決定する（すなわち、ｐ(drtc)＝１）。第２のケースでは（図２４）、接触モードは最初の衝突の後に滑りモードに入っていない。実験結果は、閉鎖準備完了信号のタイミングをまだ正確に決定できることを示している。その結果は、インピーダンス制御がない場合の図１８の８／９の場合と同様である。これは、インピーダンス制御の特性を有利に利用して接触モード推定を行ったことを示している。図２５の場合、ｐ(drtc)は頂点１０に当たったときに低いままである。頂点１０では、ロボットハンドの上部に当たった粒子が主に生き残る。しかし、いくつかの粒子が頂点に衝突すると、いくつかのリサンプリングされた粒子がここに集まり、種々の衝突特性により頂点での衝突をシミュレーションすることが可能である。この後、より多くの衝突が検出されると、ｐ(drtc)の確率は徐々に増加する。辺８に当たると直ちに確率が回復し、閉鎖準備完了を示す。その結果は、インピーダンス制御がない場合の図１８の１０／１１の場合と同様である。
【００８４】
試行の間のフィルタリングステップの接触モード推定の計算時間は、平均で４．２ミリ秒であり、最悪の場合で８．３ミリ秒であり、十分に許容できるものである。実験３に示されるように、インピーダンス制御による接触モード推定のための滑りトリガフィルタを用いたＣＣＭＥの性能検証により、それが十分な性能を有することを検証した。異なる実験ケースを用いて様々な衝突スキームを使用してテストを行ったが、１００％の推定の正確さが得られた。接触モード推定の計算時間は、平均で４．２ミリ秒、最悪で８．３ミリ秒であり、十分に許容できるものである。
【００８５】
（実験４：滑りトリガフィルタを用いた接触モード推定の利点の評価）
ここでは、滑りトリガフィルタを使用した接触モード推定の利点を評価する。滑りトリガフィルタは、（インピーダンス制御がない場合の）衝突トリガのみによる接触モード推定に別のトリガを追加することによって、いくつかの類似した離散モードの推定をより正確にするものである。図２６と図２７は、図２３の場合で得られた記録データを使用したが、滑りトリガフィルタを使用しない場合の接触モードの遷移を表わす図である。図２６の場合は、衝突のみである２つの衝突信号のトリガ情報を使用して、閉鎖準備完了信号のタイミングを正確に推定している。一方、図２７は失敗した場合である。図２７の中の黒枠で囲まれていない白い四角形は、衝突していない古い粒子を表わす。図２７の場合、ｗd10＝ｐ（ｄ(10)）の割合が残っており（＝０．０１６３）、ｐ（ｄrtc）が１．００になっていないため、正確な推定は行えなかった。これは、インピーダンス制御がより長い衝突時間を誘発し、その衝突時間中にいくつかの粒子が頂点１０に到達することがあるためである。しかし、滑りトリガフィルタは、フィルタリングのために滑りという別の条件を追加することによって、このような状況から救済することができる。試行の成功率は、滑りトリガフィルタを有する場合で１００％（３３回の試行のうち３３回の成功）、滑りトリガフィルタが無い場合は８７．９％（３３回の試行のうち２９回の成功）である。これは、滑りトリガフィルタを用いた接触モード推定の利点を明確に示している。
【産業上の利用可能性】
【００８６】
本発明は、スペースデブリを宇宙空間で捕獲する衛星に取り付けられたロボットアームの先のロボットハンドへの対象物体の接触モードを推定することにより対象物体の位置を推定して捕獲するために利用することが可能である。さらに本発明は、３次元において自由飛行、あるいは２次元において自由移動する物体を、ロボットハンドのようなグリッパー機構で捕獲する任意のシステムに適用することができる。
【符号の説明】
【００８７】
１００      ：接触モード推定装置
１１０      ：情報処理ユニット
１１０ｃ    ：主演算回路
１１０ｐ    ：接触モード推定プログラム
１２１      ：コントローラ
１２２      ：モータ
１３１      ：インターフェイス
１３２      ：力覚センサ
１４１      ：画像処理ユニット
１４２      ：カメラ
２００      ：ロボットハンド
２００Ａ    ：ロボットハンド
２０１      ：ベース
２０２      ：把持部
２０２Ａ      ：把持部
２０３      ：底部
２５０      ：ロボットアーム
３００      ：衛星
【図１】
2019198948.tif 000051
【図２】
2019198948.tif 000052
【図３】
2019198948.tif 000053
【図４】
2019198948.tif 000054
【図５】
2019198948.tif 000055
【図６】
2019198948.tif 000056
【図７】
2019198948.tif 000057
【図８】
2019198948.tif 000058
【図９】
2019198948.tif 000059
【図１０】
2019198948.tif 000060
【図１１】
2019198948.tif 000061
【図１２】
2019198948.tif 000062
【図１３】
2019198948.tif 000063
【図１４】
2019198948.tif 000064
【図１５】
2019198948.tif 000065
【図１６】
2019198948.tif 000066
【図１７】
2019198948.tif 000067
【図１８】
2019198948.tif 000068
【図１９】
2019198948.tif 000069
【図２０】
2019198948.tif 000070
【図２１】
2019198948.tif 000071
【図２２】
2019198948.tif 000072
【図２３】
2019198948.tif 000073
【図２４】
2019198948.tif 000074
【図２５】
2019198948.tif 000075
【図２６】
2019198948.tif 000076
【図２７】
2019198948.tif 000077