(57)【要約】【課題】正確な良否判定を行うことができること。【解決手段】ロボットは、力覚センサーと、第１物体と第２物体とを相対移動させるアーム部と、前記アーム部が備える把持部と、前記アーム部と前記把持部を動作させる制御装置と、を含む。制御装置の良否判定部は、力覚センサーの出力情報と把持部の位置情報とを用いて、第１物体と前記第２物体とが相対移動したか否かを判定する。【選択図】図２
2015168017.tif 000002
【特許請求の範囲】
【請求項１】
力センサーと、
第１物体と第２物体とを相対移動させるアームと、
前記アームが備えるエンドエフェクタと、
前記アームと前記エンドエフェクタとを動作させる制御部と、を含み、
前記制御部は、
前記力センサーの出力情報と前記エンドエフェクタの位置情報とを用いて、前記第１物体と前記第２物体とが相対移動したか否かを判定する、
ロボット。
【請求項２】
時間と前記力センサーの出力情報の許容範囲を対応付けた第１許容情報を記憶するデータベースを含み、
前記制御部は、時間毎の前記力センサーの出力情報と前記第１許容情報に基づいて、前記第１物体と前記第２物体とが相対移動したか否かを判定する、
請求項１に記載のロボット。
【請求項３】
時間と前記エンドエフェクタの位置情報の許容範囲を対応付けた第２許容情報を記憶するデータベースを含み、
前記制御部は、時間毎の前記エンドエフェクタの位置情報と前記第２許容情報に基づいて、前記第１物体と前記第２物体とが相対移動したか否かを判定する、
請求項１又は請求項２に記載のロボット。
【請求項４】
前記制御部は、
前記第１物体と前記第２物体とを第１方向へ相対移動させる第１動作を指令し、前記第１動作の後、前記第１物体と前記第２物体とを前記第１方向とは異なる第２方向へ相対移動させる第２動作を指令する、
請求項１から請求項３のいずれか一項に記載のロボット。
【請求項５】
前記制御部は、
前記第１物体と前記第２物体が、前記第１動作の後、前記第２方向への相対移動を防止する移動防止機能を有するか否かを判定する、
請求項４に記載のロボット。
【請求項６】
前記制御部は、前記第２動作の開始後、前記力センサーの出力情報又は前記エンドエフェクタの位置情報に基づいて、前記第１物体と前記第２物体が前記移動防止機能を有するか否かを判定する、
請求項５に記載のロボット。
【請求項７】
前記制御部は、
前記第１物体と前記第２物体が前記移動防止機能を有しないと判定した場合、前記第２動作の後、前記第１物体と前記第２物体とを前記第１方向へ相対移動させる第３動作を指令する、
請求項５又は請求項６に記載のロボット。
【請求項８】
前記力センサーの出力情報と前記エンドエフェクタの位置情報との各々の許容範囲を示す許容情報を記憶するデータベースを含み、
前記制御部は、
前記第１物体と前記第２物体とを第１方向へ相対移動させる第１動作を指令し、前記第１動作の開始後、前記力センサーの出力情報、前記エンドエフェクタの位置情報、及び前記許容情報を用いて、前記第１物体と前記第２物体とが相対移動したか否かを判定する第１判定を行い、
第１動作の後、前記第１物体と前記第２物体とを前記第１方向とは逆の第２方向へ相対移動させる第２動作を指令し、
前記第２動作の後、前記第１物体と前記第２物体とを前記第１方向へ相対移動させる第３動作を指令し、前記第３動作の開始後、前記力センサーの出力情報、前記エンドエフェクタの位置情報、及び前記許容情報を用いて、前記第１物体と前記第２物体とが相対移動したか否かを判定する第２判定を行い、
前記第２判定に用いる許容情報の示す許容範囲は、前記第１判定に用いる許容情報の示す許容範囲とは異なる、
請求項１から請求項７のいずれか一項に記載のロボット。
【請求項９】
前記制御部は、
前記第１物体と前記第２物体とを第１方向へ相対移動させる第１動作を指令し、第１動作の後、前記第１物体と前記第２物体とを前記第１方向とは異なる第２方向へ相対移動させる第２動作を指令し、
前記第１動作は、前記第１物体と前記第２物体を結合させる動作又は分離させる動作であり、
前記第２動作は、前記第１物体と前記第２物体を分離させる動作又は結合させる動作である、
請求項１から請求項８のいずれか一項に記載のロボット。
【請求項１０】
前記制御部は、
前記力センサーの出力情報を用いて、前記第１物体と前記第２物体とが相対移動していないと判定した場合に、第１エラー情報を出力させ、
前記エンドエフェクタの位置情報を用いて、前記第１物体と前記第２物体とが相対移動していないと判定した場合に、前記第１エラー情報とは異なる第２エラー情報を出力させる、
請求項１から請求項９のいずれか一項に記載のロボット。
【請求項１１】
エンドエフェクタと力センサーを備え、第１物体と第２物体とを相対移動させるロボットと、
前記ロボットを動作させる制御部と、を含み、
前記制御部は、
前記力センサーの出力情報と前記エンドエフェクタの位置情報とを用いて、前記第１物体と前記第２物体とが相対移動した否かを判定する、
ロボットシステム。
【請求項１２】
エンドエフェクタと力センサーを備え、第１物体と第２物体とを相対移動させるロボットを動作させる制御装置であって、
前記力センサーの出力情報と前記エンドエフェクタの位置情報とを用いて、前記第１物体と前記第２物体とが相対移動したか否かを判定する、
制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット、ロボットシステム、及び制御装置に関する。
【背景技術】
【０００２】
近年、ロボット技術において、勘合作業など従来は難しかった作業が、カメラや力覚センサーの利用により可能になってきている。そして、勘合作業を行うのと同時に、その作業の良否判定を行うことが可能なロボットが求められている。
例えば、特許文献１には、ハンドを教示された組付動作の逆方向に後退移動させる段階と、ハンドを前記組付動作と同じ方向に前進移動させながら手首に加わる力覚情報を検出する段階と、検出された力覚情報を教示時の力覚パターンと比較し、それらの一致性の有無を判定する段階と、を有する組立用ロボットによるワーク自動組付方法について記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平８−１７４４５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１では、力覚情報のみを用いて、組付状態の良否を検査しているため、力覚情報のみでは、正確な良否判定を行うことができない場合がある。
本発明は、上記の点に鑑み為されたものであり、より正確な良否判定を行うことができるロボット、ロボットシステム、及び制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明は上記の課題を解決するためになされたものであり、本発明の一態様は、力センサーと、第１物体と第２物体とを相対移動させるアームと、前記アームが備えるエンドエフェクタと、前記アームと前記エンドエフェクタとを動作させる制御部と、を含み、前記制御部は、前記力センサーの出力情報と前記エンドエフェクタの位置情報とを用いて、前記第１物体と前記第２物体とが相対移動したか否かを判定する、ロボットである。
この構成により、ロボットは、力センサーの出力情報とエンドエフェクタの位置情報を用いて、第１物体と前記第２物体とが相対移動したか否かを判定するので、力覚情報のみを用いる場合と比較して、正確な良否判定を行うことができる。
【０００６】
また、本発明の一態様は、上記のロボットにおいて、時間と前記力センサーの出力情報の許容範囲を対応付けた第１許容情報を記憶するデータベースを含み、前記制御部は、時間毎の前記力センサーの出力情報と前記第１許容情報に基づいて、前記第１物体と前記第２物体とが相対移動したか否かを判定する。
この構成により、ロボットは、時間毎の力センサーの出力情報と第１許容情報に基づいて、第１物体と第２物体とが相対移動したか否かを判定するので、時間毎の情報を用いない場合と比較して、正確な良否判定を行うことができる。
【０００７】
また、本発明の一態様は、上記のロボットにおいて、時間と前記エンドエフェクタの位置情報の許容範囲を対応付けた第２許容情報を記憶するデータベースを含み、前記制御部は、時間毎の前記エンドエフェクタの位置情報と前記第２許容情報に基づいて、前記第１物体と前記第２物体とが相対移動したか否かを判定する。
この構成により、ロボットは、時間毎のエンドエフェクタの位置情報と第２許容情報に基づいて、第１物体と第２物体とが相対移動したか否かを判定するので、時間毎の情報を用いない場合と比較して、正確な良否判定を行うことができる。
【０００８】
また、本発明の一態様は、上記のロボットにおいて、前記制御部は、前記第１物体と前記第２物体とを第１方向へ相対移動させる第１動作を指令し、前記第１動作の後、前記第１物体と前記第２物体とを前記第１方向とは異なる第２方向へ相対移動させる第２動作を指令する。
この構成により、ロボットは、第１動作の後に第２動作を指令するので、異なる方向へ相対移動させる指令に対する動作についても良否判定を行うことができ、より正確な良否判定を行うことができる。
【０００９】
また、本発明の一態様は、上記のロボットにおいて、前記制御部は、前記第１物体と前記第２物体が、前記第１動作の後、前記第２方向への相対移動を防止する移動防止機能を有するか否かを判定する。
この構成により、ロボットは、第１物体と第２物体が移動防止機能を有するか否かに応じて、制御や良否判定をすることができる。
【００１０】
また、本発明の一態様は、上記のロボットにおいて、前記制御部は、前記第２動作の開始後、前記力センサーの出力情報又は前記エンドエフェクタの位置情報に基づいて、前記第１物体と前記第２物体が前記移動防止機能を有するか否かを判定する。
この構成により、ロボットは、例えば第１物体と第２物体が移動防止機能を有するか否かを予め設定しなくても、移動防止機能を有するか否かを判定できる。
【００１１】
また、本発明の一態様は、上記のロボットにおいて、前記制御部は、前記第１物体と前記第２物体が前記移動防止機能を有しないと判定した場合、前記第２動作の後、前記第１物体と前記第２物体とを前記第１方向へ相対移動させる第３動作を指令する。
この構成により、ロボットは、再度の第１方向へ相対移動させる動作についても良否判定を行うことができる。例えば、ロボットは、１回目の第１方向への相対移動では動作が安定しない場合でも、２回目の第１方向への相対移動により、良否判定の精度を上げることができる。
【００１２】
また、本発明の一態様は、上記のロボットにおいて、前記力センサーの出力情報と前記エンドエフェクタの位置情報との各々の許容範囲を示す許容情報を記憶するデータベースを含み、前記制御部は、前記第１物体と前記第２物体とを第１方向へ相対移動させる第１動作を指令し、前記第１動作の開始後、前記力センサーの出力情報、前記エンドエフェクタの位置情報、及び前記許容情報を用いて、前記第１物体と前記第２物体とが相対移動したか否かを判定する第１判定を行い、第１動作の後、前記第１物体と前記第２物体とを第１方向とは逆の第２方向へ相対移動させる第２動作を指令し、前記第２動作の後、前記第１物体と前記第２物体とを前記第１方向へ相対移動させる第３動作を指令し、前記第３動作の開始後、前記力センサーの出力情報、前記エンドエフェクタの位置情報、及び前記許容情報を用いて、前記第１物体と前記第２物体とが相対移動したか否かを判定する第２判定を行い、前記第２判定に用いる許容情報の示す許容範囲は、前記第１判定に用いる許容情報の示す許容範囲とは異なる。
この構成により、ロボットは、１回目の第１方向への相対移動と、２回目の第１方向への相対移動とで、許容範囲を変えることができる。
【００１３】
また、本発明の一態様は、上記のロボットにおいて、前記制御部は、前記第１物体と前記第２物体とを第１方向へ相対移動させる第１動作を指令し、第１動作の後、前記第１物体と前記第２物体とを前記第１方向とは異なる第２方向へ相対移動させる第２動作を指令し、前記第１動作は、前記第１物体と前記第２物体を結合させる動作又は分離させる動作であり、前記第２動作は、前記第１物体と前記第２物体を分離させる動作又は結合させる動作である。
この構成により、ロボットは、結合させる動作、又は分離させる動作の両方について、良否判定を行うことができ、より正確な良否判定を行うことができる。
【００１４】
また、本発明の一態様は、上記のロボットにおいて、前記制御部は、前記力センサーの出力情報を用いて、前記第１物体と前記第２物体とが相対移動していないと判定した場合に、第１エラー情報を出力させ、前記エンドエフェクタの位置情報を用いて、前記第１物体と前記第２物体とが相対移動していないと判定した場合に、前記第１エラー情報とは異なる第２エラー情報を出力させる。
この構成により、ロボットは、力センサーの出力情報に基づく第１エラー情報と、ハンドの位置情報に基づく第２エラー情報を、別々に出力できる。これにより、ロボットの管理者は、エラーを識別できる。
【００１５】
また、本発明の一態様は、エンドエフェクタと力センサーを備え、第１物体と第２物体とを相対移動させるロボットと、前記ロボットを動作させる制御部と、を含み、前記制御部は、前記力センサーの出力情報と前記エンドエフェクタの位置情報とを用いて、前記第１物体と前記第２物体とが相対移動した否かを判定する、ロボットシステムである。
【００１６】
また、本発明の一態様は、エンドエフェクタと力センサーを備え、第１物体と第２物体とを相対移動させるロボットを動作させる制御装置であって、前記力センサーの出力情報と前記エンドエフェクタの位置情報とを用いて、前記第１物体と前記第２物体とが相対移動したか否かを判定する、制御装置である。
【図面の簡単な説明】
【００１７】
【図１】本発明の第１実施形態に係るロボットシステムの概略的な構成例を示す図である。
【図２】本実施形態に係るロボットシステムの機能構成を示す概略ブロック図である。
【図３】本実施形態に係るロボットシステムの作業動作を説明するフローチャートである。
【図４】本実施形態に係る１回目の挿入動作のプロファイルと許容情報を示す概念図である。
【図５】本実施形態に係る引き抜き動作のプロファイルと許容情報を示す概念図である。
【図６】本実施形態に係る２回目の挿入動作のプロファイルと許容情報を示す概念図である。
【図７】本実施形態に係る抜け防止機能が有るワークの一例を表す概略図である。
【図８】本実施形態に係る引き抜き動作のプロファイルと許容情報の別の一例を示す概念図である。
【図９】本発明の第２実施形態に係るロボットシステムの作業動作を説明するフローチャートである。
【図１０】本発明の第３実施形態に係るロボットシステムの概略的な構成例を示す図である。
【図１１】本実施形態に係るロボットシステムの機能構成を示す概略ブロック図である。
【図１２】各実施形態に係るワークの別の一例を表す概略図である。
【図１３】各実施形態の変形例に係る双腕のロボットの概略的な構成例を示す図である。
【発明を実施するための形態】
【００１８】
（第１実施形態）
本発明の第１実施形態について図面を参照して詳細に説明する。
図１は、本発明の第１実施形態に係るロボット１０の概略的な構成例を示す図である。
ロボット１０は、メスコネクタ３０にオスコネクタ４０を挿入し、勘合させる。ロボット１０は、把持部１１、力覚センサー１２、アーム部１３、支持台１４を含んで構成される。なお、支持台１４の内部には、制御装置２０が設けられている。把持部１１は、力覚センサー１２を介して、アーム部１３の先端に設けられており、３つの指を有し、オスコネクタ４０を把持することができる。力覚センサー１２は、把持部１１とアーム部１３との間に設けられ、把持部１１とアーム部１３との間で作用している３軸方向の力と、把持部１１の取り付け方向の軸回りのモーメントとを検出する。アーム部１３は、支持台１４に対して、旋回可能かつ屈伸可能に連結されている。
支持台１４は、アーム部１３と連結されており、床面などに固定されている。
【００１９】
ロボット１０は、例えば７軸垂直多関節ロボットであり、支持台１４とアーム部１３と把持部１１との連係した動作によって７軸の自由度を有する。つまり、その７軸の自由度は、支持台１４及びアーム部１３による６軸の自由度と、把持部１１による１軸の自由度とである。なお、ロボット１０は、６軸垂直多関節ロボットなど、７軸未満の自由度であってもよいし、７軸を超える自由度であってもよい。制御装置２０は、力覚センサー１２による検出結果を取得し、該検出結果を用いて、ロボット１０の各関節を駆動するサーボモーターを制御する。なお、本実施形態では、サーボモーターにより、ロボット１０の各関節を駆動しているが、ワイヤーによる駆動や、人工筋肉による駆動など、その他の駆動方法を用いてもよい。
【００２０】
ロボット１０は、メスコネクタ３０とオスコネクタ４０を相対移動させる。例えば、メスコネクタ３０は、把持又は固定され、位置及び向きが固定されている。ロボット１０は、オスコネクタ４０を移動させる。ここで、ロボット１０は、力覚センサー１２の力覚情報と把持部１１の位置情報（以下、単に「位置情報」とも称する）とを用いて、メスコネクタ３０とオスコネクタ４０とが相対移動したか否かを判定する。また、ロボット１０は、力覚センサー１２の力覚情報と把持部１１の位置情報とを用いて、各作業の良否判定を行う。例えば、ロボット１０は、メスコネクタ３０とオスコネクタ４０が正しく勘合したか否かの良否判定を行う。
なお、位置情報は、把持しているオスコネクタ４０の位置を示す情報でもある。また、位置情報は、把持部１１の姿勢（向きや回転等）を示す情報を含むものであってもよく、例えば、把持しているオスコネクタ４０の姿勢を示す情報でもあってもよい。また、メスコネクタ３０とオスコネクタ４０が勘合した場合、ハウジング内の金属ピン同士が接触し、金属ピンを介して電流を流すことができる。また、ロボット１０が挿入し合うワークは、メスコネクタ３０とオスコネクタ４０に限らず、例えば、ナットとボルト、ネジ穴とネジ、又は鍵穴と鍵であってもよい。ワークとは、ロボット１０により作業が行われる対象となる対象物をいう。
【００２１】
図２は、本実施形態に係るロボット１０の機能構成を示す概略ブロック図である。ロボット１０は、把持部１１、力覚センサー１２、アーム部１３、支持台１４、検出部１５、制御装置２０を含んで構成される。検出部１５は、各軸位置検出部１５１、力覚検出部１５２を含んで構成される。制御装置２０は、統合制御部２０１、動作制御部２０２、データベース２０３、良否判定部２０４を含んで構成される。
【００２２】
統合制御部２０１は、ユーザーからの動作指令に基づいて、ロボット１０を制御するための指令を生成する。ここで、統合制御部２０１は、良否判定部２０４が出力した良否判定結果情報、検出部１５が出力した位置情報及び力覚情報に基づいて、指令を生成する。力覚情報は、力覚センサー１２が検出した３軸方向の力とモーメントを示す情報である。また、統合制御部２０１は、ロボット１０に行わせる動作を示す動作情報、及び、生成した指令を示す指令情報を、良否判定部２０４へ出力する。
【００２３】
具体的には、統合制御部２０１は、予め記憶する動作シーケンスを読み出し、それに従い、各タイミングにおける動作（目標動作）の指令を生成する。ここで、目標動作の指令は、例えば、把持部１１の位置及び姿勢と、力覚センサー１２が検出すべき３軸方向の力とモーメントである。あるいは、把持部１１の位置及び姿勢と、把持部１１が外部に加える力及びモーメントであってもよい。
統合制御部２０１は、例えば、オスコネクタ４０のメスコネクタ３０への挿入について、挿入を開始したことを示す動作情報（「挿入開始」）や、挿入中であることを示す動作情報（「挿入中」）、又は、挿入を完了したことを示す動作情報（挿入完了）を、良否判定部２０４へ出力する。また、統合制御部２０１は、例えば、目標位置を示す指令情報を、良否判定部２０４へ出力する。
【００２４】
例えば、統合制御部２０１は、生成した指令に従った動作をロボット１０が行うように、インピーダンス制御を行ってもよく、この場合、ロボット１０の各関節を駆動する複数のサーボモーターを制御する。このとき、統合制御部２０１は、フィードバックとして、位置情報及び力覚情報を用いる。なお、インピーダンス制御は、把持部１１の手先に外から力を加えた場合に生じる機械的なインピーダンス（慣性、減衰係数、剛性）を、目的とする作業に都合の良い値に設定するための公知の位置と力の制御手法である。例えば、ロボットのエンドエフェクター（ワークと接触する点）に質量と粘性係数と弾性要素が接続されるモデルにおいて、目標として設定した質量と粘性係数と弾性係数で物体に接触するようにする制御である。
【００２５】
動作制御部２０２は、統合制御部２０１が生成した指令に基づいて、ロボット１０に電力を供給するとこで、ロボット１０の動作を制御する。
把持部１１、アーム部１３、支持台１４は、動作制御部２０２の制御に従って動作する。
力覚センサー１２は、外力による歪みを示す電気信号を出力する。
【００２６】
各軸位置検出部１５１は、各軸の角度を検出し、検出結果に基づいて位置情報を生成する。各軸位置検出部１５１は、例えば、光学式エンコーダーやレゾルバーである。
力覚検出部１５２は、力覚センサー１２が出力した電気信号に基づいて、互いに直交する３軸方向の外力とその周りのモーメントを検出する。力覚検出部１５２は、検出結果に基づいて力覚情報を生成する。
検出部１５は、各軸位置検出部１５１が生成した位置情報、及び力覚検出部１５２が生成した力覚情報を、統合制御部２０１、動作制御部２０２、良否判定部２０４へ出力する。
【００２７】
良否判定部２０４は、統合制御部２０１が出力した動作情報に基づいて、計時を行う。良否判定部２０４は、計時した時刻（「計時時刻」と称する）と、検出部１５が出力した位置情報（現在位置）と、を対応付け、位置情報プロファイルとして、逐次、データベース２０３へ記憶させる。また、良否判定部２０４は、計時時刻と、検出部１５が出力した力覚情報（実測値）と、を対応付け、力覚情報プロファイルとして、逐次、データベース２０３へ記憶させる。なお、計時時刻とは、ある動作の開始から経過した時間であるが、現在時刻であってもよい。
良否判定部２０４は、データベース２０３が予め記憶する許容範囲を示す許容情報を読み出し、位置情報プロファイル及び力覚情報プロファイルに基づいて、各作業の良否判定を行う。ここで、許容情報は、計時時刻と位置情報の許容範囲を示す情報、及び、計時時刻と力覚情報の許容範囲を示す情報である。なお、許容情報は、作業や動作毎に存在する。
【００２８】
図３は、本実施形態に係るロボット１０の作業動作を説明するフローチャートである。このフローチャートでは、ロボット１０は、最初に、ワークを挿入させて、勘合させる動作（挿入動作と称し、また、勘合操作とも称する）を行う。その後、ロボット１０は、ワークを引き抜く動作（引き抜き動作と称する）を行う。ロボット１０は、ワークが実際に引き抜かれているか否かを判定する。ロボット１０は、ワークが引き抜かれている場合には、再度、挿入動作を行う。
このように、ロボット１０は、ワークが実際に引き抜かれているか否かを判定する。これにより、ロボット１０は、ワークの抜け防止機能の有無に応じて、動作を制御することができる。ここで、ワークの抜け防止機能とは、例えば、コネクタの爪であり、コネクタが一度勘合した場合に爪も勘合し、コネクタが抜けないようにする機能である。また、ロボット１０は、２回の挿入動作を行う場合がある。これにより、ロボット１０は、１回目の挿入動作では動作が安定しない場合でも、２回目の挿入動作により、良否判定の精度を上げることができる。１回目の挿入動作では動作が安定しない原因は、例えば、ワークに、挿入障害（例えばバリ）が有ることであり、この挿入障害は、１回目の挿入動作により除かれることがある。
【００２９】
（ステップＳ１０１）統合制御部２０１は、ロボット１０の動作を開始させる。その後、ステップＳ１０２へ進む。
（ステップＳ１０２）統合制御部２０１は、例えばユーザーからの動作指令に基づいて、１回目の挿入動作の動作シーケンスを読み出す。この動作シーケンスは、オスコネクタ４０をメスコネクタ３０へ挿入するものである。統合制御部２０１は、読み出した動作シーケンスに基づいて、ロボット１０に、１回目の挿入動作を開始させる。その後、ロボット１０は、１回目の挿入動作を行う。ここで、良否判定部２０４は、１回目の挿入動作が行われている間、検出部１５が出力した位置情報及び力覚情報のそれぞれを、予め定められた単位の計時時刻毎に対応付け、位置情報プロファイルＡ及び力覚情報プロファイルＡとして、データベース２０３へ記憶させる。その後、ステップＳ１０３へ進む。
【００３０】
（ステップＳ１０３）統合制御部２０１は、検出部１５が出力した位置情報及び力覚情報や動作シーケンスに基づいて、１回目の挿入動作が完了したことを検出する。良否判定部２０４は、位置情報プロファイルＡ及び力覚情報プロファイルＡの記憶を完了する。その後、ステップＳ１０４へ進む。
（ステップＳ１０４）良否判定部２０４は、データベース２０３から、位置情報プロファイルＡ、力覚情報プロファイルＡ、及び、１回目の挿入動作の許容情報Ａを読み出す。良否判定部２０４は、位置情報プロファイルＡ及び力覚情報プロファイルＡのそれぞれが、許容情報Ａが示す許容範囲Ａにあるか否かを判定することで、１回目の挿入動作の良否判定（良否判定１と称する）を行う。なお、許容範囲Ａには、力覚の許容範囲Ａ１、及び位置の許容範囲Ａ２が含まれる（図４参照）。位置情報プロファイルＡ及び力覚情報プロファイルＡのそれぞれが許容範囲Ａにある場合、良否判定部２０４は、１回目の挿入動作が「良」である（ＹＥＳ）、つまり、１回目の挿入動作が成功したと判定する。この場合、ステップＳ１０５へ進む。一方、それ以外の場合は、良否判定部２０４は、１回目の挿入動作が「否」である（ＮＯ）、つまり、１回目の挿入動作が失敗したと判定する。この場合、ステップＳ１１１へ進む。
【００３１】
（ステップＳ１０５）統合制御部２０１は、引き抜き動作の動作シーケンスを読み出す。この動作シーケンスは、メスコネクタ３０からオスコネクタ４０を引き抜くものである。統合制御部２０１は、読み出した動作シーケンスに基づいて、ロボット１０に引き抜き動作を開始させる。その後、ロボット１０は、引き抜き動作を行う。つまり、第１動作（ステップＳ１０２の挿入動作）が成功した場合に、逆の第２動作（ステップＳ１０５の引き抜き動作）を行う。良否判定部２０４は、引き抜き動作が行われている間、検出部１５が出力した位置情報及び力覚情報のそれぞれを、予め定められた単位の計時時刻毎に対応付け、位置情報プロファイルＢ及び力覚情報プロファイルＢとして、データベース２０３へ記憶させる。その後、ステップＳ１０６へ進む。
【００３２】
（ステップＳ１０６）良否判定部２０４は、データベース２０３から、位置情報プロファイルＢ、力覚情報プロファイルＢ、及び、引き抜き動作の許容情報Ｂを読み出す。良否判定部２０４は、位置情報プロファイルＢ及び力覚情報プロファイルＢのそれぞれが、許容情報Ｂが示す許容範囲Ｂにあるか否かを判定することで、引き抜き動作の良否判定（良否判定２と称する）を行う。なお、許容範囲Ｂには、力覚の許容範囲Ｂ１、及び位置の許容範囲Ｂ２が含まれる（図５参照）。位置情報プロファイルＢ及び力覚情報プロファイルＢのそれぞれが許容範囲Ｂにある場合、良否判定部２０４は、引き抜き動作が「良」である（ＹＥＳ）、つまり、引き抜き動作が成功したと判定する。この場合、ステップＳ１０７へ進む。一方、それ以外の場合は、良否判定部２０４は、引き抜き動作が「否」である（ＮＯ）、つまり、引き抜き動作が失敗したと判定する。この場合、ステップＳ１１１へ進む。
なお、引き抜き動作の許容範囲Ｂは、ワークの抜け防止機能が有るか否かによって、異なる（図４と図５参照）。
【００３３】
（ステップＳ１０７）良否判定部２０４は、ワークの抜け防止機能が有るか否かを判定する。なお、良否判定部２０４は、位置情報プロファイルＢ又は力覚情報プロファイルＢに基づいて、ワークの抜け防止機能が有るか否かを判定する。具体的には、良否判定部２０４は、計時時刻に対して、位置情報が一定のままである場合、或いは、力覚情報が示す力覚がロボット１０がワークに加える力覚の逆向きである場合には、ワークの抜け防止機能が有ると判定する。あるいは、良否判定部２０４は、位置情報が位置指令を追従せず、位置情報が示す位置と位置指令の示す位置の差、又はそれらの計時時刻に対する傾きの差が閾値を超える場合に、ワークの抜け防止機能が有ると判定する。ただし、データベース２０３には、ワークの抜け防止機能が有るか否かを示す情報が、予め記憶されており、良否判定部２０４は、この情報に基づいて、ワークの抜け防止機能が有るか否かを判定してもよい。
良否判定部２０４がワークの抜け防止機能が有ると判定した場合（ＹＥＳ）、ワークは、引き抜かれておらず、ステップＳ１０３で挿入された状態のままである。この場合、ステップＳ１１０へ進む。一方、良否判定部２０４がワークの抜け防止機能が無いと判定した場合（ＮＯ）、ワークは引き抜かれている。その場合、ステップＳ１０８へ進む。
【００３４】
（ステップＳ１０８）統合制御部２０１は、２回目の挿入動作の動作シーケンスを読み出す。統合制御部２０１は、読み出した動作シーケンスに基づいて、ロボット１０に２回目の挿入動作（第３動作）を開始させる。その後、ロボット１０は、２回目の挿入動作を行う。ここで、良否判定部２０４は、２回目の挿入動作が行われている間、検出部１５が出力した位置情報及び力覚情報のそれぞれを、予め定められた単位の計時時刻毎に対応付け、位置情報プロファイルＣ及び力覚情報プロファイルＣとして、データベース２０３へ記憶させる。その後、ステップＳ１０９へ進む。
（ステップＳ１０９）良否判定部２０４は、データベース２０３から、位置情報プロファイルＣ、力覚情報プロファイルＣ、及び、２回目の挿入動作の許容情報Ｃを読み出す。良否判定部２０４は、位置情報プロファイルＣ及び力覚情報プロファイルＣのそれぞれが、許容情報Ｃが示す許容範囲Ｃにあるか否かを判定することで、２回目の挿入動作の良否判定（良否判定３と称する）を行う。なお、許容範囲Ｃには、力覚の許容範囲Ｃ１、及び位置の許容範囲Ｃ２が含まれる（図６参照）。位置情報プロファイルＣ及び力覚情報プロファイルＣのそれぞれが許容範囲Ｃにある場合、良否判定部２０４は、２回目の挿入動作が「良」である（ＹＥＳ）、つまり、２回目の挿入動作が成功したと判定する。この場合、ステップＳ１１０へ進む。一方、それ以外の場合は、良否判定部２０４は、２回目の挿入動作が「否」である（ＮＯ）、つまり、２回目の挿入動作が失敗したと判定する。この場合、ステップＳ１１１へ進む。
【００３５】
（ステップＳ１１０）統合制御部２０１は、図３のフローチャートの動作により、良品が所定の数に達したか否かを判定する。具体的には、統合制御部２０１は、ステップＳ１０７又はステップＳ１０９で「ＹＥＳ」と判定された場合に、その数を計数し、計数した数が所定の数に達したか否かを判定する。良品が所定の数に達したと判定された場合（ＹＥＳ）、図３のフローチャートの作業動作を終了する。一方、良品が所定の数に達していないと判定された場合（ＮＯ）、ステップＳ１０２へ戻る。
（ステップＳ１１１）統合制御部２０１は、ワークを所定の場所へ移動し、ロボット１０を停止させる。これにより、ロボット１０は、不良品と判定されたワークを所定の場所へ移動し、次のワークに対する作業を開始する準備を行う。その後、ステップＳ１０２へ戻る。
【００３６】
なお、上記の許容範囲Ａ、Ｂ、Ｃは、それぞれ異なるが、例えば、許容範囲Ａ、Ｃは同じであってもよい。また、許容範囲Ａは、許容範囲Ｂ、Ｃより広くても、換言すれば、後の動作の許容範囲Ｂ、Ｃは、その前の同様の動作の許容範囲Ａよりも、狭くてもよい。つまり、１回目の挿入動作は挿入障害があるので、許容範囲Ａを広げておき、２回目以降の挿入動作は挿入障害が低減しているので、許容範囲Ｃを許容範囲Ａよりも狭めてもよい。
なお、上記のロボット１０の作業動作において、ステップＳ１０３、Ｓ１０５、Ｓ１０８の挿入動作又は引き抜き動作の途中で、位置もしくは外力情報のいずれか一つ以上に許容範囲を外れた異常値が発生した場合には、動作完了を待たずに即時にＳ１１１に移行してもよい。
【００３７】
図４は、本実施形態に係る１回目の挿入動作のプロファイルと許容情報の一例を示す概念図である。
図４（Ａ）は、１回目の挿入動作の力覚情報プロファイルＡ及び力覚の許容情報Ａ１を示す。図４（Ａ）では、縦軸が力覚情報であり、横軸が計時時刻である。図４（Ａ）では、計時時刻毎に、実線で示す力覚の実測値と、鎖線で示す許容範囲Ａ１が対応付けられている。なお、力覚の実測値は、挿入方向（オスコネクタ４０からメスコネクタ３０へ向かう方向）を負とし、力の大きさを表している。また、許容範囲については、２つの鎖線で挟まれた範囲が許容範囲である（以下、図５、６においても、同じ）。なお、本願では「許容範囲」とは、下限又は上限のいずれか一方を定めるものであってもよい。
図４（Ｂ）は、１回目の挿入動作の位置情報プロファイルＡ及び位置の許容情報Ａ２を示す。図４（Ｂ）では、縦軸が位置情報であり、横軸が計時時刻である。図４（Ｂ）では、計時時刻毎に、実線で示す現在位置と、鎖線で示す許容範囲Ａ２、一点鎖線で示す位置指令の位置が対応付けられている。位置指令は、統合制御部２０１が生成する指令の１つであり、ロボット１０に移動させようとする位置情報である。換言すれば、位置指令は、動作シーケンスのうち位置を表すものである。なお、図４（Ｂ）の現在位置は、挿入方向を正とし、オスコネクタ４０の位置を表している。
【００３８】
統合制御部２０１は、図４（Ｂ）の位置指令を出力し、計時時刻に比例して、メスコネクタ３０とオスコネクタ４０の位置を近づけようとする。その結果、メスコネクタ３０とオスコネクタ４０の位置が近づき、検出部１５は、図４（Ｂ）の現在位置を出力する。一方、力覚については、挿入動作の開始後は、計時時刻ｔ１１まで、静止摩擦力やワーク（メスコネクタ３０とオスコネクタ４０同士）の位置ずれによって、挿入に対して抵抗する力（正）が生じる。計時時刻ｔ１１の後、この抵抗する力は弱まり、計時時刻ｔ１２から計時時刻ｔ１３までは、動摩擦力による一定の力が生じる。計時時刻ｔ１３の後は、ワークの構造（例えば、過剰な挿入を防止するための構造）により、挿入に対する抵抗力が増す。そして、統合制御部２０１は、例えば、力覚の大きさが、予め定められた値を超えたときに、挿入動作を完了させる。あるいは、それに加え若しくは代えて、統合制御部２０１は、ロボット１０がワークに加える力覚を変化させたときに、力覚情報が示す力覚がほとんど変化せず、力覚の変化が所定の範囲内になった場合に挿入動作を完了させてもよい。
【００３９】
ここで、許容範囲Ａは、上述のワークの位置関係及び力覚を、計時時刻に沿って考慮したものになっている。例えば、力覚の許容範囲Ａ１は、時刻に沿って、増加して減少し、一定となり、また増加するといったものになっている。図４（Ａ）では、すべての計時時刻毎において、実測値は、許容範囲Ａ１に収まっている。また、図４（Ｂ）でも、すべての計時時刻毎において、現在位置は、許容範囲Ａ２に収まっている。図４の場合、良否判定部２０４は、図３のステップＳ１０４の良否判定１で、実測値及び現在位置の両方が許容範囲Ａに収まっていると判定し、１回目の挿入動作が「良」であると判定する。
【００４０】
図５は、本実施形態に係る引き抜き動作のプロファイルと許容情報の一例を示す概念図である。図５は、ワークの抜け防止機能が無い場合のものである。
図５（Ａ）は、引き抜き動作の力覚情報プロファイルＢ及び力覚の許容情報Ｂ１を示す。図５（Ａ）では、計時時刻毎に、実線で示す力覚の実測値と、鎖線で示す許容範囲Ｂ１が対応付けられている。図５（Ｂ）は、引き抜き動作の位置情報プロファイルＢ及び位置の許容情報Ｂ２を示す。図５（Ｂ）では、計時時刻毎に、実線で示す現在位置と、鎖線で示す許容範囲Ｂ２、一点鎖線で示す位置指令の位置が対応付けられている。図５（Ａ）、（Ｂ）の座標軸は、それぞれ、図４（Ａ）、（Ｂ）のものと同じである。
【００４１】
統合制御部２０１は、図５（Ｂ）の位置指令を出力し、計時時刻に比例して、メスコネクタ３０とオスコネクタ４０の位置を遠ざけるようとする。その結果、メスコネクタ３０とオスコネクタ４０の位置が遠ざかり、検出部１５は、図５（Ｂ）の現在位置を出力する。一方、力覚については、引き抜き動作（良否判定動作）の開始後は、計時時刻ｔ２１まで、静止摩擦力によって、引き抜きに対して抵抗する力（負）が生じる。計時時刻ｔ２１の後、この抵抗する力は弱まり、計時時刻ｔ２２から計時時刻ｔ２３までは、動摩擦力による一定の力が生じる。計時時刻ｔ２３の後は、メスコネクタ３０とオスコネクタ４０の一部が順に外れ、最後にメスコネクタ３０とオスコネクタ４０が外れ、引き抜きに対する抵抗力がなくなる。そして、統合制御部２０１は、引き抜き動作（良否判定動作）を終了させる。
【００４２】
ここで、許容範囲Ｂは、上述のワークの位置関係及び力覚を、計時時刻に沿って考慮したものになっている。例えば、力覚の許容範囲Ｂ１は、時刻に沿って、減少して増加し（力の大きさの絶対値は、増加して減少し）、一定となり、また増加するといったものになっている。図５（Ａ）では、すべての計時時刻毎において、実測値は、許容範囲Ｂ１に収まっている。また、図５（Ｂ）でも、すべての計時時刻毎において、現在位置は、許容範囲Ｂ２に収まっている。図５の場合、良否判定部２０４は、図３のステップＳ１０６の良否判定２で、実測値及び現在位置の両方が許容範囲Ｂに収まっていると判定し、引き抜き動作が「良」であると判定する。
【００４３】
図６は、本実施形態に係る２回目の挿入動作のプロファイルと許容情報の一例を示す概念図である。
図６（Ａ）は、２回目の挿入動作の力覚情報プロファイルＣ及び力覚の許容情報Ｃ１を示す。図６（Ａ）では、計時時刻毎に、実線で示す力覚の実測値と、鎖線で示す許容範囲Ｃ１が対応付けられている。図６（Ａ）は、２回目の挿入動作の位置情報プロファイルＣ及び位置の許容情報Ｃ２を示す。図６（Ｂ）では、計時時刻毎に、実線で示す現在位置と、鎖線で示す許容範囲Ｃ２、一点鎖線で示す位置指令の位置が対応付けられている。なお、図６（Ａ）、（Ｂ）の座標軸は、それぞれ、図４（Ａ）、（Ｂ）のものと同じである。また、図６（Ｂ）の位置指令は、図４（Ｂ）の位置指令と同じものである。
【００４４】
統合制御部２０１は、図６（Ｂ）の位置指令を出力し、計時時刻に比例して、メスコネクタ３０とオスコネクタ４０の位置を近づけようとする。その結果、メスコネクタ３０とオスコネクタ４０の位置が近づき、検出部１５は、図６（Ｂ）の現在位置を出力する。一方、力覚については、挿入動作の開始後は、計時時刻ｔ３１まで、静止摩擦力によって、挿入に対して抵抗する力（正）が生じる。計時時刻ｔ３１の後、この抵抗する力は弱まり、計時時刻ｔ３２から計時時刻ｔ３３までは、動摩擦力による一定の力が生じる。計時時刻ｔ３の後は、ワークの構造により、挿入に対する抵抗力が増す。そして、統合制御部２０１は、例えば、力覚の大きさが、予め定められた値を超えたときに、挿入動作を完了させる。
【００４５】
ここで、許容範囲Ｃは、上述のワークの位置関係及び力覚を、計時時刻に沿って考慮したものになっている。例えば、力覚の許容範囲Ｃ１は、時刻に沿って、増加して減少し、一定となり、また増加するといったものになっている。図６（Ａ）では、すべての計時時刻毎において、実測値は、許容範囲Ｃ１に収まっている。また、図６（Ｂ）でも、すべての計時時刻毎において、現在位置は、許容範囲Ｃ２に収まっている。図６の場合、良否判定部２０４は、図３のステップＳ１０９の良否判定３で、実測値及び現在位置の両方が許容範囲Ｃに収まっていると判定し、２回目の挿入動作が「良」であると判定する。
図６（Ａ）と図４（Ａ）を比較すると、計時時刻各々において、許容範囲Ｃは許容範囲Ｂよりも狭くなっている。また、図６（Ａ）の実測値は、図４の実測値よりも、揺らぎが少なく安定し、実測値（力）の絶対値も小さい。これは、挿入障害が１回目の挿入動作により除かれ、２回目の挿入作業が、１回目の挿入動作よりもより円滑に行われることを示している。
【００４６】
次に、ワークの抜け防止機能が有る場合のプロファイルについて説明する。
図７は、本実施形態に係る抜け防止機能が有るワークの一例を表す概略図である。メスコネクタ３０ａとオスコネクタ４０ａには、勘合した場合に、組み合う爪３０１ａと爪４０１ａが設けられている。爪３０１ａと爪４０１ａが組み合った場合、メスコネクタ３０ａとオスコネクタ４０ａは、挿入方向とは逆向きに引き抜こうとしても、引き抜けなくなる。ワークの抜け防止機能が有る場合には、引き抜き動作のプロファイルは、図５のものとは異なる（図８参照）。
【００４７】
図８は、本実施形態に係る引き抜き動作のプロファイルと許容情報の別の一例を示す概念図である。図８は、ワークの抜け防止機能が有る場合のものである。
図８（Ａ）は、引き抜き動作の力覚情報プロファイルＢ’及び力覚の許容情報Ｂ１’を示す。図８（Ａ）では、計時時刻毎に、実線で示す力覚の実測値と、鎖線で示す許容範囲Ｂ１’が対応付けられている。図８（Ｂ）は、引き抜き動作の位置情報プロファイルＢ’及び位置の許容情報Ｂ２’を示す。図８（Ｂ）では、計時時刻毎に、実線で示す現在位置と、鎖線で示す許容範囲Ｂ２’、一点鎖線で示す位置指令の位置が対応付けられている。図８（Ａ）、（Ｂ）の座標軸は、それぞれ、図４（Ａ）、（Ｂ）のものと同じである。また、図８（Ｂ）の位置指令は、図６（Ｂ）の位置指令と同じものである。
【００４８】
統合制御部２０１は、図８（Ｂ）の位置指令を出力し、計時時刻に比例して、メスコネクタ３０とオスコネクタ４０の位置を遠ざけるようとする。しかし、抜け防止機能によってメスコネクタ３０とオスコネクタ４０の位置は変わらず、検出部１５は、図８（Ｂ）の現在位置を出力する。一方、力覚については、引き抜き動作（良否判定動作）の開始後は、抜け防止機能によって、引き抜きに対して抵抗する力（負）が生じる。統合制御部２０１は、図８（Ａ）の実測値の逆向きの力を加えるため、検出部１５は、図８（Ａ）の実測値を出力する。そして、統合制御部２０１は、例えば、所定の時間経過後、引き抜き動作（良否判定動作）を終了させる。
【００４９】
ここで、許容範囲Ｂ’は、上述のワークの位置関係及び力覚を、計時時刻に沿って考慮したものになっている。例えば、力覚の許容範囲Ｂ１’は、時刻に沿って、減少して（力の大きさの絶対値は、増加して）、一定となるといったものになっている。また、位置の許容範囲Ｂ２’は、一定である。図８（Ａ）では、すべての計時時刻毎において、実測値は、許容範囲Ｂ１’に収まっている。また、図８（Ｂ）でも、すべての計時時刻毎において、現在位置は、許容範囲Ｂ２’に収まっている。図８の場合、良否判定部２０４は、図３のステップＳ１０６の良否判定２で、実測値及び現在位置の両方が許容範囲Ｂ’に収まっていると判定し、引き抜き動作が「良」であると判定する。一方、統合制御部２０１（又は良否判定部２０４）は、例えば、引き抜き動作を行ったにもかかわらず、現在位置が変化しないことを検出し、ステップＳ１０７で、ワークの抜け防止機能が有ると判定する。
【００５０】
以上のように、本実施形態では、ロボット１０は、力覚センサー１２（力センサー）と、オスコネクタ４０（第１物体）とメスコネクタ３０（第２物体）とを相対移動させるアーム部１３と、アーム部１３が備える把持部１１（エンドエフェクタ）と、アーム部１３と把持部１１を動作させる制御装置２０と、を含む。制御装置２０は、力覚センサー１２の力覚情報（出力情報）と把持部１１の位置情報とを用いて、オスコネクタ４０とメスコネクタ３０とが相対移動したか否かを判定する。この構成により、ロボット１０は、力覚センサー１２の力覚情報と把持部１１の位置情報を用いて、オスコネクタ４０とメスコネクタ３０とが相対移動したか否かを判定するので、力覚情報のみを用いる場合と比較して、正確な良否判定を行うことができる。
【００５１】
また、本実施形態では、ロボット１０は、計時時刻と力覚情報の許容範囲を示す情報（第１許容情報）を記憶するデータベース２０３を含む。制御装置２０は、力覚情報プロファイルと第１許容情報に基づいて、オスコネクタ４０とメスコネクタ３０とが相対移動したか否かを判定する。この構成により、ロボット１０は、力覚情報プロファイルと第１許容情報に基づいて、オスコネクタ４０とメスコネクタ３０とが相対移動したか否かを判定するので、時間毎の情報を用いない場合と比較して、正確な良否判定を行うことができる。
【００５２】
また、本実施形態では、ロボット１０は、計時時刻と位置情報の許容範囲を示す情報（第２許容情報）を記憶するデータベース２０３を含む。制御装置２０は、位置情報プロファイルと第２許容情報に基づいて、オスコネクタ４０とメスコネクタ３０とが相対移動したか否かを判定する。この構成により、ロボット１０は、位置情報プロファイルと第２許容情報に基づいて、オスコネクタ４０とメスコネクタ３０とが相対移動したか否かを判定するので、時間毎の情報を用いない場合と比較して、正確な良否判定を行うことができる。
【００５３】
また、本実施形態では、ロボット１０では、制御装置２０は、オスコネクタ４０とメスコネクタ３０とを挿入方向（第１方向）へ相対移動させる挿入動作（第１動作）を指令し、挿入動作の後、オスコネクタ４０とメスコネクタ３０とを挿入方向とは逆の引き抜き方向（第２方向）へ相対移動させる引き抜き動作を指令する。この構成により、ロボット１０は、挿入動作の後に引き抜き動作を指令するので、逆方向へ相対移動させる指令に対する動作についても良否判定を行うことができ、より正確な良否判定を行うことができる。なお、本実施形態では、ロボット１０は、挿入動作後、挿入方向とは逆の方向に相対移動させる場合に説明したが、本発明はこれに限らず、挿入方向とは逆の方向以外の方向であって、挿入方向とは異なる方向に相対移動させてもよい。
また、本実施形態では、ロボット１０では、制御装置２０は、オスコネクタ４０とメスコネクタ３０が、挿入動作の後、引き抜き方向への相対移動を防止する抜け防止機能（移動防止機能）を有するか否かを判定する。この構成により、ロボット１０は、オスコネクタ４０とメスコネクタ３０が抜け防止機能を有するか否かに応じて、制御や良否判定をすることができる。
【００５４】
また、本実施形態では、ロボット１０では、制御装置２０は、引き抜き動作の開始後、力覚センサー１２の力覚情報と把持部１１の位置情報に基づいて、オスコネクタ４０とメスコネクタ３０が抜け防止機能を有するか否かを判定する。なお、本願では「開始後」とは、動作を開始した直後であってもよいし、動作を開始して完了した後であってもよい。この構成により、ロボット１０は、例えばオスコネクタ４０とメスコネクタ３０が抜け防止機能を有するか否かを予め設定しなくても、抜け防止機能を有するか否かを判定できる。
また、本実施形態では、ロボット１０では、制御装置２０は、オスコネクタ４０とメスコネクタ３０が抜け防止機能を有しないと判定した場合、引き抜き動作の後、２回目の挿入動作を指令する。この構成により、ロボット１０は、２回目の挿入動作についても良否判定を行うことができる。例えば、ロボットは、１回目の挿入動作が安定しない場合でも、２回目の挿入動作により、良否判定の精度を上げることができる。
【００５５】
また、本実施形態では、ロボット１０は、力覚センサー１２の力覚情報と把持部１１の位置情報との各々の許容範囲を示す許容情報を記憶するデータベース２０３を含む。制御装置２０は、１回目の挿入動作を指令し、１回目の挿入動作の開始後、力覚センサー１２の力覚情報、把持部１１の位置情報、及び許容情報Ａを用いて、良否判定１（第１判定）を行う。制御装置２０は、１回目の挿入動作の後、引き抜き動作を指令し、引き抜き動作の後、２回目の挿入動作を指令する。制御装置２０は、２回目の挿入動作の開始後、力覚センサー１２の力覚情報、把持部１１の位置情報、及び許容情報Ｃを用いて、良否判定３（第２判定）を行う。ここで、良否判定３に用いる許容情報Ｃの示す許容範囲Ｃは、良否判定１に用いる許容情報Ａの示す許容範囲Ａとは異なる。例えば、許容範囲Ｃは、許容範囲Ａよりも狭い。この構成により、ロボット１０は、１回目の挿入動作と、２回目の挿入動作とで、許容範囲を変えることができる。
【００５６】
また、本実施形態では、ロボット１０では、制御装置２０は、１回目の挿入動作を指令し、１回目の挿入動作の後、引き抜き動作を指令する。ここで、１回目の挿入動作は、オスコネクタ４０とメスコネクタ３０を結合させる動作であり、引き抜き動作は、オスコネクタ４０とメスコネクタ３０を分離させる動作である。また、制御装置２０は、引き抜き動作（第１動作）を指令し、引き抜き動作の後、２回目の挿入動作（第２動作）を指令する。ここで、引き抜き動作は、オスコネクタ４０とメスコネクタ３０を分離させる動作であり、２回目の挿入動作は、オスコネクタ４０とメスコネクタ３０を結合させる動作である。なお、相対移動には、結合や分離が含まれる。結合には、挿入や勘合、組合せること、及び、螺入等も含まれる。分離には、引き抜きや引き離し、組合せを外すこと、及び、螺出等も含まれる。この構成により、ロボット１０は、結合させる動作、又は分離させる動作の両方について、良否判定を行うことができ、より正確な良否判定を行うことができる。
【００５７】
（第２実施形態）
以下、本発明の第２実施形態について図面を参照して詳細に説明する。
第２実施形態と第１実施形態を比較すると、ロボット１０の作業動作が異なる。他の点は、同じであるので、説明は省略する。
【００５８】
図９は、本発明の第２実施形態に係るロボット１０の作業動作を説明するフローチャートである。図９と図３を比較すると、ステップＳ２０４の処理とＳ２０７の処理が異なる。しかし、他の処理は、同じであるので、説明を省略する。
図９のフローチャートでは、ロボット１０は、最初に、挿入動作を行い、その後、良否判定１を行う。ロボット１０は、良否判定が「良」の場合には作業完了判定を行う。一方、良否判定が「否」の場合には引き抜き動作を行い、再度、挿入動作を行う。つまり、本実施形態に係るロボット１０は、最初の挿入動作で失敗した場合に、引き抜き動作及び再度の挿入動作を行うものである。
【００５９】
（ステップＳ２０４）良否判定部２０４は、データベース２０３から、位置情報プロファイルＡ、力覚情報プロファイルＡ、及び、１回目の挿入動作の許容情報Ａを読み出し、良否判定１を行う。良否判定部２０４が１回目の挿入動作が「良」であると判定した場合（ＹＥＳ）、ステップＳ１１０へ進む。一方、それ以外の場合（ＮＯ）、ステップＳ１０５へ進む。
（ステップＳ２０７）良否判定部２０４は、ワークの抜け防止機能が有るか否かを判定する。良否判定部２０４がワークの抜け防止機能が有ると判定した場合（ＹＥＳ）、ステップＳ１１０へ進む。一方、良否判定部２０４がワークの抜け防止機能が無いと判定した場合（ＮＯ）、ワークは、抜けている。その場合、ステップＳ１０８へ進む。
【００６０】
このように、本実施形態では、ロボット１０は、１回目の挿入動作が「良」であると判定した場合には、当該ワークに対する作業は成功したと判定する。一方、ロボット１０は、１回目の挿入動作が「否」であると判定した場合に良否判定２、３を行い、引き抜き動作が「良」であり、かつ、抜け防止機能「有」或いは２回目の挿入動作が「良」である場合に、当該ワークに対する作業は成功したと判定する。
この構成により、ロボット１０は、挿入が失敗したときでも、その他の条件により、当該ワークに対する動作を成功したと判定できる。つまり、１度動作が失敗したワークでも、ロボット１０は、失敗から回復させることができ、動作を「良」（成功）とすることができる。
【００６１】
（第３実施形態）
以下、本発明の第３実施形態について図面を参照して詳細に説明する。
第３実施形態と第１実施形態を比較すると、制御装置２０が、ロボット１０の外部に設けられている。他の点（例えば、各構成の機能）は、同じであるので、説明は省略する。
図１０は、本発明の第３実施形態に係るロボットシステム１００の概略的な構成例を示す図である。ロボットシステム１００は、メスコネクタ３０にオスコネクタ４０を挿入し、勘合させる。ロボットシステム１００は、ロボット１０、制御装置２０を含んで構成される。つまり、ロボットは、把持部１１と力覚センサー１２を備え、メスコネクタ３０とオスコネクタ４０とを相対移動させる。制御装置２０は、ロボット１０を動作させる。制御装置２０は、力覚センサー１２の出力情報と把持部１１の位置情報とを用いて、メスコネクタ３０とオスコネクタ４０とが相対移動した否かを判定する。
図１１は、本実施形態に係るロボットシステム１００の機能構成を示す概略ブロック図である。ロボット１０は、把持部１１、力覚センサー１２、アーム部１３、支持台１４、検出部１５、制御装置２０を含んで構成される。検出部１５は、各軸位置検出部１５１、力覚検出部１５２を含んで構成される。制御装置２０は、統合制御部２０１、動作制御部２０２、データベース２０３、良否判定部２０４を含んで構成される。
【００６２】
（変形例）
なお、上記各実施形態において、ロボット１０は、良否判定１、２、３で「否」であると判定した場合に、エラーを出力してもよい。ここで、ロボット１０は、力覚情報プロファイルが許容範囲にないのか、又は、位置情報プロファイルが許容範囲にないのかに応じて、エラーを分けてもよい。例えば、ロボット１０は、力覚情報プロファイルが許容範囲にない場合にエラーコード「Ｅ１」を出力し、位置情報プロファイルが許容範囲にない場合にエラーコード「Ｅ２」を出力してもよい。また、ロボット１０は、力覚情報プロファイル及び位置情報プロファイルが許容範囲にない場合には「Ｅ３」を出力してもよい。
このように、ロボット１０では、制御装置２０は、力覚センサー１２の力覚情報を用いて、オスコネクタ４０とメスコネクタ３０とが相対移動していないと判定した場合に、エラーコード「Ｅ１」（第１エラー情報）を出力させる。一方、制御装置２０は、把持部１１の位置情報を用いて、オスコネクタ４０とメスコネクタ３０とが相対移動していないと判定した場合に、エラーコード「Ｅ１」とは異なるエラーコード「Ｅ２」（第２エラー情報）を出力させる。この構成により、ロボット１０は、力覚センサー１２の力覚情報に基づくエラーコード「Ｅ１」と、把持部１１の位置情報に基づく把持部１１の位置情報を、別々に出力できる。これにより、ロボット１０の管理者は、エラーを識別できる。
【００６３】
また、上記各実施形態において、ロボット１０は、良否判定１、２、３で力覚情報プロファイル又は位置情報プロファイルのいずれか１つを用いて、そのプロファイルが許容範囲にあるか否かを判定することによって、良否判定を行ってもよい。
また、ロボット１０は、所定の条件により、力覚情報プロファイル又は位置情報プロファイルのいずれか１つを用いて良否判定を行うように切り替えてもよい。例えば、ロボット１０は、作業動作の回数、動作の回数、良否判定の回数、これらの回数に対する良品の割合、又は、作業動作開始からの経過時間に応じて、この切り替えを行う。また、ロボット１０は、力覚情報プロファイル又は位置情報プロファイルに基づいて、この切り替えを行ってもよい。具体的には、ロボット１０は、作業動作毎の力覚情報プロファイル又は位置情報プロファイルを比較し、プロファイルがほとんど同じ場合には（例えば、９８％以上の確率で、プロファイルのずれが所定の範囲に収まる場合には）、そのプロファイルも用いることを止めてもよい。これにより、ロボット１０は、２つのプロファイルを比較する場合と比較して、作業を早めることができる。
【００６４】
また、上記各実施形態において、ロボット１０は、教示のときに、許容範囲を決定してもよい。これにより、ロボット１０は、実際の対象に即したデータに基づく許容範囲となるため、良否判定の精度を上げることができる。なお、教示は、ロボット１０の動作作業を開始する前に管理者が設定するものであってもよいし、動作作業後のプロファイルに基づいてフィードバックしたものであってもよい。
【００６５】
また、上記各実施形態において、ロボット１０は、引き抜き動作において、ワーク同士が完全に引き抜かれる手前で、引き抜き動作を完了してもよい。具体的には、引き抜き動作の動作シーケンスにおいて、引き抜きの際の移動量が予め記憶されている。この移動量は、１回目の挿入動作の際の移動量より、小さい値である。ロボット１０は、引き抜き動作の動作シーケンスを読み出して、引き抜きの際の移動量だけ、ワークを引き抜く。
引き抜き動作で、ワークを完全に引き抜いてしまった場合、ロボット１０は、再度の挿入で、ワーク同士のさらなる位置合わせが必要な場合や、挿入の際の抵抗力が大きくなってしまう場合がある。また、ワークの構造や耐性によっては、ワークが壊れてしまう可能性もある。ロボット１０は、ワーク同士が完全に引き抜かれる手前で、引き抜き動作を完了するので、より円滑に、２回目の挿入動作をすることができる。
なお、２回目の挿入動作の際の移動量は、引き抜きの際の移動量と同じであってもよい。
【００６６】
また、上記各実施形態において、ロボット１０は、ネジ等の物体４０ｂ（第１物体）を、バカ穴を有する物体３０ｂ（第２物体）に挿入し、また、引き抜く動作を行ってもよい。
図１２は、各実施形態に係るワークの別の一例を表す概略図である。図１２（Ｂ）は、図１２（Ａ）のＤ−Ｄ’断面の断面図である。ネジ４０ｂは、部材３０１ｂのバカ穴Ｈ１を介して、部材３０２ｂのタップ穴Ｈ２に螺入される。バカ穴Ｈ１は、ネジ４０ｂの外径よりも大きい穴である。
【００６７】
ロボット１０は、ワークが「バカ穴」を有すると判定した場合、上述の機能を発揮してもよいし、別の機能を発揮してもよい。例えば、ロボット１０は、作業動作の前に、予め記憶するワークの種類を読み出し、ワークが「バカ穴」を有するか否かを判定してもよい。ロボット１０は、ワークが「バカ穴」を有すると判定した場合には、力覚情報は用いずに、例えば、位置情報を用いてネジ４０ｂと部材３０１ｂとが相対移動したか否かを判定してもよい。すなわち、「バカ穴」は、そこに挿入する挿入物体より大きな穴であるので、挿入物体は、バカ穴と接触することは少ない。したがって、ロボット１０は、力覚情報を用いなくても十分な良否判定を行うことができ、力覚情報を用いる場合と比較して、処理負荷を軽減できる。
また、ロボット１０は、ワークが「バカ穴」を有すると判定した場合、挿入方向に直交する向きの成分を持つように、ワーク同士を相対移動させてもよい。例えば、ロボット１０は、部材３０１ｂにネジ４０ｂを挿入後、引き抜き動作を行う。ロボット１０は、引き抜き動作の完了後、部材３０１ｂ又はネジ４０ｂを挿入方向に直交する方向へ動かす。ロボット１０は、例えば、挿入方向に直交する方向の力を検出した場合、ネジ４０ｂが部材３０１ｂに挿入されていたと判定する。あるいは、ロボット１０は、部材３０１ｂ又はネジ４０ｂが完全に引き抜かれている位置において、部材３０１ｂ又はネジ４０ｂを挿入方向に直交する方向へ動かし、その後、挿入動作をして、挿入方向の力を検出した場合、ネジ４０ｂが部材３０１ｂに挿入されていたと判定する。つまり、ネジ４０ｂをバカ穴Ｈ１に当てることで、ネジ４０ｂがバカ穴Ｈ１に、挿入されていたことを確認する。判定後、ロボット１０は、部材３０１ｂ又はネジ４０ｂを挿入方向に直交する方向へ動かす前の位置に、部材３０１ｂ又はネジ４０ｂを戻し、再び、２回目の挿入動作を行う。
【００６８】
また、ロボット１０は、ワークが「バカ穴」を有しないと判定した場合には、図３の作業動作を行い、ワークが「バカ穴」を有すると判定した場合には、図９の作業動作を行ってもよい。例えば、「バカ穴」に挿入物体を挿入する場合には、バリ等の挿入障害の心配は少ないため、ロボット１０は、図９の作業動作で十分な作業品質を確保できる。
また、ロボット１０は、ワークが抜け防止機能を有すると判定した場合には、図３の作業動作を行い、ワークが抜け防止機能を有しないと判定した場合には、図９の作業動作を行ってもよい。例えば、ワークが抜け防止機能を有すると判定した場合には、ロボット１０は、図３の作業動作により、抜け防止機能が正常に機能しているか否かを確認できる。なお、ロボット１０は、ロボット動作開始の前に、ワークの種類（バカ穴の有無、抜け防止機能の有無）を判定し、図３又は図９のいずれの作業動作を行うかを選択し、選択した作業動作を行ってもよい。
【００６９】
また、上記各実施形態において、ロボット１０と、制御装置２０とは、有線接続されていてもよいし、無線通信にて接続されていてもよい。また、制御装置２０は、力覚情報又は位置情報のいずれか一方あるいは両方が、予め決められた範囲を超えているときは、ロボット１０が動作を停止するように、制御してもよい。これにより、ロボット１０が周囲に対して、大きな力を作用させてしまうことや、広い範囲に力を作用させてしまうことを防止できる。
【００７０】
また、上記各実施形態において、ロボット１０は、一定速、または所定の速度で挿入（嵌合）し、又は、引き抜きを行ってもよい。これにより、ロボット１０は、更に正確に良否判定をすることができる。また、上記各実施形態において、ロボット１０は、検出と良否判定を、６軸のそれぞれ行ってもよいし、所定の１軸のみで行ってもよい。また、力覚センサー１２は、６軸力覚センサーでなく、３軸あるいは単軸の外力検出器でもよい。
【００７１】
また、上記各実施形態において、図１３に示すロボット１０ａのように、２つのマニピュレーターを有する双腕のロボットシステムであってもよいし、床面などに固定されていない移動可能なロボットシステムであってもよい。あるいは、３つ以上のマニピュレーターを有するロボットシステムであってもよい。その場合、挿入動作を行うロボット１０と、引き抜き動作を行うロボット１０とを異なるものとしてもよい。
図１３は、上記各実施形態の変形例に係る双腕のロボット１０ａの概略的な構成例を示す図である。図１３は、ロボット１０ａの外観を示す正面図である。ただし、制御装置２０は、便宜的に表すものであり、ロボット１０ａの本体内部に設けられている。ロボット１０ａは、アーム部１３Ａ、１３Ｂと、制御装置２０を含んで構成される。なお、アーム部１３Ａは、力覚センサー１２Ａ及び把持部１１Ａを有し、アーム部１３Ｂは、力覚センサー１２Ｂ及び把持部１１Ｂを有している。
この場合、ロボット１０ａ（制御装置２０ａの良否判定部２０４）は、力覚センサー１２Ａの力覚情報又は力覚センサー１２Ｂの力覚情報のいずれか一方或いは両方と、許容情報に基づいて、良否判定を行っても良い。例えば、ロボット１０ａは、力覚センサー１２Ａの力覚から力覚センサー１２Ｂの力覚を差し引いた値（又は除算した値）と、その許容情報に基づいて、良否判定を行っても良い。また、ロボット１０ａは、把持部１１Ａの位置情報又は把持部１１Ｂの位置情報のいずれか一方或いは両方と、許容情報に基づいて、良否判定を行っても良い。例えば、ロボット１０ａは、把持部１１Ａの位置から把持部１１Ｂの位置を差し引いた相対位置と、その許容情報に基づいて、良否判定を行っても良い。
【００７２】
また、上記各実施形態において、ロボット１０、１０ａのアーム部１３の先端には、エンドエフェクタとして、把持部１１（ハンド）が取り付けられている場合について説明をした。しかし、本発明はこれに限らず、エンドエフェクタは、ハンドに限らず、例えば、ワークを吸着するものやワークを置くもの、ワークを固定するものであってもよい。
【００７３】
なお、本発明の一態様は、ロボット１０、１０ａ、ロボットシステム１００における制御方法において、力覚センサー１２、１２Ａ、１２Ｂの力覚情報を取得する過程と、第１物体と第２物体とを相対移動させる把持部１１、１１Ａ、１１Ｂの位置情報を取得する過程と、力覚センサー１２、１２Ａ、１２Ｂの力覚情報と把持部１１、１１Ａ、１１Ｂの位置情報とを用いて、第１物体と第２物体とが相対移動したか否かを判定する過程、を有する制御方法である。
【００７４】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【００７５】
なお、上述した実施形態における制御装置２０、２０ａの一部をコンピュータで実現するようにしても良い。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、制御装置Ｃ１に内蔵されたコンピュータシステムであって、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
また、上述した実施形態における制御装置Ｃ１の一部、または全部を、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等の集積回路として実現しても良い。制御装置Ｃ１の各機能ブロックは個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化しても良い。また、集積回路化の手法はＬＳＩに限らず専用回路、または汎用プロセッサで実現しても良い。また、半導体技術の進歩によりＬＳＩに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いても良い。
【００７６】
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
【符号の説明】
【００７７】
１０、１０ａ…ロボット、１００…ロボットシステム、１１、１１Ａ、１１Ｂ…把持部、１２、１２Ａ、１２Ｂ…力覚センサー、１３、１３Ａ、１３Ｂ…アーム部、１４…支持台、１５…検出部、１５１…各軸位置検出部、１５２…力覚検出部、２０、２０ａ…制御装置、２０１…統合制御部、２０２…動作制御部、２０３…データベース、２０４…良否判定部
【図１】
2015168017.tif 000003
【図２】
2015168017.tif 000004
【図３】
2015168017.tif 000005
【図４】
2015168017.tif 000006
【図５】
2015168017.tif 000007
【図６】
2015168017.tif 000008
【図７】
2015168017.tif 000009
【図８】
2015168017.tif 000010
【図９】
2015168017.tif 000011
【図１０】
2015168017.tif 000012
【図１１】
2015168017.tif 000013
【図１２】
2015168017.tif 000014
【図１３】
2015168017.tif 000015