(57)【要約】【課題】確実に、第１部材の突起を第２部材の開口に挿入することができるロボット制御装置、ロボットおよびロボット制御方法を提供する。【解決手段】本発明のロボット制御装置は、ロボットアームと、Ｘ軸方向の力とＹ軸回りのモーメントとの少なくとも一方とＹ軸方向の力とＸ軸回りのモーメントとの少なくとも一方とを検出する力覚センサーとを備え、エンドエフェクターにより、突起を有する第１部材と開口を有する第２部材との一方を支持し、突起を開口に挿入する作業を行うロボットの作動を制御し、突起を開口に挿入する際のそれらの相対的な移動方向はＺ軸方向であり、基準波形の情報が予め記憶された記憶部と、作業の際、エンドエフェクターをＸ軸方向に移動させる制御を行う制御部と、力覚センサーの出力波形と基準波形とを比較し、その結果に基づいて開口または突起の位置を特定する位置特定部とを備える。【選択図】図１
2015160292.tif 000002
【特許請求の範囲】
【請求項１】
互いに直交するＸ軸、Ｙ軸およびＺ軸を想定したとき、
エンドエフェクターが装着可能なロボットアームと、
前記ロボットアームと前記エンドエフェクターとの間に設けられて、
前記Ｘ軸方向の力と前記Ｙ軸回りのモーメントとの少なくとも一方と前記Ｙ軸方向の力と前記Ｘ軸回りのモーメントとの少なくとも一方とを検出する力覚センサーと、を備え、
前記エンドエフェクターにより、突起を有する第１部材と開口を有する第２部材の一方を支持し、前記突起を前記開口に挿入する作業を行うロボットの作動を制御するロボット制御装置であって、
前記作業における前記突起と前記開口との相対的な移動方向は前記Ｚ軸方向であり、
前記エンドエフェクターにより前記第１部材または前記第２部材を支持し、前記エンドエフェクターを前記Ｘ軸方向に移動されて、前記突起が前記開口を通過するときの前記力覚センサーの出力に相当する基準波形の情報が予め記憶された記憶部と、
前記作業の際、前記ロボットアームの作動を制御し、前記エンドエフェクターにより前記第１部材または前記第２部材を支持し、前記エンドエフェクターを前記Ｘ軸方向に移動させる制御部と、
前記作業において検出された前記力覚センサーの出力波形と、前記基準波形とを比較し、その結果に基づいて、前記開口または前記突起の位置を特定する位置特定部と、を備えることを特徴とするロボット制御装置。
【請求項２】
前記エンドエフェクターを前記Ｘ軸方向に移動させる際は、前記エンドエフェクターを前記Ｚ軸方向に押し付ける請求項１に記載のロボット制御装置。
【請求項３】
前記エンドエフェクターを前記Ｘ軸方向に移動させる走査を、前記Ｙ軸方向の位置を変更して複数回行う請求項１または２に記載のロボット制御装置。
【請求項４】
前記記憶部には、前記突起が前記開口の前記Ｙ軸方向の異なる複数の位置を通過する場合のそれぞれについての前記基準波形の情報が予め記憶されており、
前記位置特定部は、前記作業の際に検出された前記力覚センサーの出力波形と、複数の前記基準波形とを比較し、その結果に基づいて、前記開口または前記突起の位置を特定する請求項１ないし３のいずれか１項に記載のロボット制御装置。
【請求項５】
前記位置特定部は、前記作業の際に検出された前記力覚センサーの出力波形と、前記基準波形との相関係数を求める相関係数演算部と、前記相関係数と閾値とを比較する比較部とを有し、前記相関係数が前記閾値を超えているときに、前記突起が前記開口を通過中であると判定する請求項１ないし４のいずれか１項に記載のロボット制御装置。
【請求項６】
前記エンドエフェクターの移動速度が遅いほど、前記閾値を大きく設定する請求項５に記載のロボット制御装置。
【請求項７】
前記力覚センサーから出力される信号を処理するローパスフィルターを有する請求項１ないし６のいずれか１項に記載のロボット制御装置。
【請求項８】
前記エンドエフェクターの移動速度が遅いほど、前記ローパスフィルターの遮断周波数を小さく設定する請求項７に記載のロボット制御装置。
【請求項９】
前記基準波形は、前記エンドエフェクターにより前記第１部材または前記第２部材を支持し、前記エンドエフェクターを前記Ｘ軸方向に移動させた際、前記突起が前記開口を通過するときの前記Ｘ軸方向の力と前記Ｙ軸回りのモーメントとの少なくとも一方と、前記Ｙ軸方向の力と前記Ｘ軸回りのモーメントとの少なくとも一方とを示す前記力覚センサーの出力に相当するものである請求項１ないし８のいずれか１項に記載のロボット制御装置。
【請求項１０】
前記記憶部には、さらに、前記突起が前記開口を通過するときの前記Ｚ軸方向の力と前記Ｚ軸回りのモーメントとの少なくとも一方を示す前記力覚センサーの出力に相当する基準波形の情報が予め記憶されており、
前記力覚センサーは、さらに、前記Ｚ軸方向の力と前記Ｚ軸回りのモーメントとの少なくとも一方を検出する機能を有する請求項９に記載のロボット制御装置。
【請求項１１】
前記基準波形は、前記エンドエフェクターにより前記第１部材または前記第２部材を支持し、前記エンドエフェクターを前記Ｘ軸方向に移動させ、前記力覚センサーにより検出したものである請求項１ないし１０のいずれか１項に記載のロボット制御装置。
【請求項１２】
前記基準波形は、前記第１部材の画像データと前記第２部材の画像データとに基づいて作成したものである請求項１ないし１２のいずれか１項に記載のロボット制御装置。
【請求項１３】
互いに直交するＸ軸、Ｙ軸およびＺ軸を想定したとき、
エンドエフェクターが装着可能なロボットアームと、
前記ロボットアームと前記エンドエフェクターとの間に設けられて、
前記Ｘ軸方向の力と前記Ｙ軸回りのモーメントとの少なくとも一方と前記Ｙ軸方向の力と前記Ｘ軸回りのモーメントとの少なくとも一方とを検出する力覚センサーと、を備え、
前記エンドエフェクターにより、突起を有する第１部材と開口を有する第２部材の一方を支持し、前記突起を前記開口に挿入する作業を行うロボットであって、
前記突起を前記開口に挿入する際の前記突起と前記開口との相対的な移動方向は前記Ｚ軸方向であり、
前記ロボットの作動を制御する請求項１ないし１２のいずれか１項に記載のロボット制御装置を備えることを特徴とするロボット。
【請求項１４】
前記ロボットは、双腕ロボットである請求項１３に記載のロボット。
【請求項１５】
互いに直交するＸ軸、Ｙ軸およびＺ軸を想定したとき、
エンドエフェクターが装着可能なロボットアームと、
前記ロボットアームと前記エンドエフェクターとの間に設けられて、
前記Ｘ軸方向の力と前記Ｙ軸回りのモーメントとの少なくとも一方と前記Ｙ軸方向の力と前記Ｘ軸回りのモーメントとの少なくとも一方とを検出する力覚センサーと、を備え、
前記エンドエフェクターにより、突起を有する第１部材と開口を有する第２部材の一方を支持し、前記突起を前記開口に挿入する作業を行うロボットの作動を制御するロボット制御方法であって、
前記作業における前記突起と前記開口との相対的な移動方向は前記Ｚ軸方向であり、
前記エンドエフェクターにより前記第１部材または前記第２部材を支持し、前記エンドエフェクターを前記Ｘ軸方向に移動されて、前記突起が前記開口を通過するときの前記力覚センサーの出力に相当する基準波形の情報を予め記憶部に記憶する工程と、
前記作業の際、前記ロボットアームの作動を制御し、前記エンドエフェクターにより前記第１部材または前記第２部材を支持し、前記エンドエフェクターを前記Ｘ軸方向に移動させる工程と、
前記作業において検出された前記力覚センサーの出力波形と、前記基準波形とを比較し、その結果に基づいて、前記開口または前記突起の位置を特定する工程と、を備えることを特徴とするロボット制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット制御装置、ロボットおよびロボット制御方法に関するものである。
【背景技術】
【０００２】
従来、ロボットアームを備えたロボットが知られている。ロボットアームは複数のリンクが関節部を介して連結され、最も先端側のリンクには、エンドエフェクターとして、例えば、ハンドが装着される。関節部はモーターにより駆動され、その関節部の駆動により、リンクが回動する。そして、ロボットは、例えば、ハンドで突起を有する挿入物を把持し、その突起を挿入対象物に設けられた開口（穴）に挿入する作業を行う。
【０００３】
また、最も先端側のリンクとハンドとの間には、力覚センサーが設けられており、ロボットは、前記作業の際は、力覚センサーにより、力やモーメントを検出し、その力覚センサーの検出結果に基づいて、インピーダンス制御（力制御）を行う（例えば、特許文献１参照）。また、ロボットは、力覚センサーの出力信号に基づいて、開口の位置を把握し、挿入物の突起を挿入対象物の開口に挿入する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１３７２９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のロボットでは、次のような問題点がある。
力覚センサーの出力信号は、ノイズが多く、Ｓ／Ｎ比が低い。力覚センサーは、検出機構部の変形を電気信号に変換する原理であり、その感度を高めるためには、検出機構部の剛性が低い構造にしなければならないが、この場合、検出機構部が変形し易くなり、力やモーメントによってハンドが変位してしまい、正確な位置決めができない。そのため、前記検出機構部の変形を抑制するために検出機構部の剛性を高める設計が通常なされるが、この場合、力覚センサーの感度が低下し、Ｓ／Ｎ比が低下する。そのため、真の力やモーメントを示す信号がノイズに埋もれ、正確に力やモーメントを検出することは困難である。特に、力覚センサーの出力信号について、閾値に対する大小を正しく判定することは困難である。
【０００６】
また、力覚センサーの出力信号からノイズを除去するため、ローパスフィルターを導入する場合、低いＳ／Ｎ比を改善するのに十分な効果を持つ狭い帯域のローパスフィルターは、力覚センサーの出力信号の波形をなまらせてしまい（速い変化の成分を減衰させてしまい）、特に、高速に移動しながらの検出を正確に行うことは困難である。
以上の問題のため、特に、力覚センサーの出力信号について、閾値に対する大小を正しく判定することは困難であり、したがって開口の位置を正確に求めることはできない。
本発明の目的は、確実に、第１部材の突起を第２部材の開口に挿入することができるロボット制御装置、ロボットおよびロボット制御方法を提供することにある。
【課題を解決するための手段】
【０００７】
このような目的は、下記の本発明により達成される。
（適用例１）
本発明に係わるロボット制御装置は、互いに直交するＸ軸、Ｙ軸およびＺ軸を想定したとき、
エンドエフェクターが装着可能なロボットアームと、
前記ロボットアームと前記エンドエフェクターとの間に設けられて、
前記Ｘ軸方向の力と前記Ｙ軸回りのモーメントとの少なくとも一方と前記Ｙ軸方向の力と前記Ｘ軸回りのモーメントとの少なくとも一方とを検出する力覚センサーと、を備え、
前記エンドエフェクターにより、突起を有する第１部材と開口を有する第２部材の一方を支持し、前記突起を前記開口に挿入する作業を行うロボットの作動を制御するロボット制御装置であって、
前記作業における前記突起と前記開口との相対的な移動方向は前記Ｚ軸方向であり、
前記エンドエフェクターにより前記第１部材または前記第２部材を支持し、前記エンドエフェクターを前記Ｘ軸方向に移動されて、前記突起が前記開口を通過するときの前記力覚センサーの出力に相当する基準波形の情報が予め記憶された記憶部と、
前記作業の際、前記ロボットアームの作動を制御し、前記エンドエフェクターにより前記第１部材または前記第２部材を支持し、前記エンドエフェクターを前記Ｘ軸方向に移動させる制御部と、
前記作業において検出された前記力覚センサーの出力波形と、前記基準波形とを比較し、その結果に基づいて、前記開口または前記突起の位置を特定する位置特定部と、を備えることを特徴とする。
【０００８】
これにより、作業の際に検出された力覚センサーの出力波形と基準波形とを比較し、その結果に基づいて、第２部材の開口または第１部材の突起の位置を求めるので、力覚センサーから出力される信号に含まれるノイズの影響を低減することができ、これによって、確実に、第２部材の開口または第１部材の突起の位置を求めることができ、第１部材の突起を第２部材の開口に挿入することができる。
【０００９】
（適用例２）
本発明に係わるロボット制御装置では、前記エンドエフェクターを前記Ｘ軸方向に移動させる際は、前記エンドエフェクターを前記Ｚ軸方向に押し付けることが好ましい。
これにより、より正確に、第２部材の開口または第１部材の突起の位置を求めることができ、第１部材の突起を第２部材の開口に挿入することができる。
【００１０】
（適用例３）
本発明に係わるロボット制御装置では、前記エンドエフェクターを前記Ｘ軸方向に移動させる走査を、前記Ｙ軸方向の位置を変更して複数回行うことが好ましい。
これにより、より正確に、第２部材の開口または第１部材の突起の位置を求めることができ、第１部材の突起を第２部材の開口に挿入することができる。
【００１１】
（適用例４）
本発明に係わるロボット制御装置では、前記記憶部には、前記突起が前記穴の前記Ｙ軸方向の異なる複数の位置を通過する場合のそれぞれについての前記基準波形の情報が予め記憶されており、
前記位置特定部は、前記作業の際に検出された前記力覚センサーの出力波形と、複数の前記基準波形とを比較し、その結果に基づいて、前記開口または前記突起の位置を特定することが好ましい。
これにより、突起が開口のＹ軸方向のどの位置を通過しているかを求めることができ、これによって、より正確に、第２部材の開口または第１部材の突起の位置を求めることができ、第１部材の突起を第２部材の開口に挿入することができる。
【００１２】
（適用例５）
本発明に係わるロボット制御装置では、前記位置特定部は、前記作業の際に検出された前記力覚センサーの出力波形と、前記基準波形との相関係数を求める相関係数演算部と、前記相関係数と閾値とを比較する比較部とを有し、前記相関係数が前記閾値を超えているときに、前記突起が前記開口を通過中であると判定することが好ましい。
これにより、容易かつ確実に、第２部材の開口または第１部材の突起の位置を求めることができ、第１部材の突起を第２部材の開口に挿入することができる。
【００１３】
（適用例６）
本発明に係わるロボット制御装置では、前記エンドエフェクターの移動速度が遅いほど、前記閾値を大きく設定することが好ましい。
これにより、より確実に、第２部材の開口または第１部材の突起の位置を求めることができ、第１部材の突起を第２部材の開口に挿入することができる。
【００１４】
（適用例７）
本発明に係わるロボット制御装置では、前記力覚センサーから出力される信号を処理するローパスフィルターを有することが好ましい。
これにより、力覚センサーから出力される信号に含まれるノイズを低減することができ、より確実に、第２部材の開口または第１部材の突起の位置を求めることができ、第１部材の突起を第２部材の開口に挿入することができる。
【００１５】
（適用例８）
本発明に係わるロボット制御装置では、前記エンドエフェクターの移動速度が遅いほど、前記ローパスフィルターの遮断周波数を小さく設定することが好ましい。
エンドエフェクターの移動速度が遅い場合は、ローパスフィルターの遮断周波数を小さくしても問題がなく、そして、遮断周波数を小さくすることにより、力覚センサーから出力される信号に含まれるノイズをより低減することができ、より確実に、第２部材の開口または第１部材の突起の位置を求めることができ、第１部材の突起を第２部材の開口に挿入することができる。
【００１６】
（適用例９）
本発明に係わるロボット制御装置では、前記基準波形は、前記エンドエフェクターにより前記第１部材または前記第２部材を支持し、前記エンドエフェクターを前記Ｘ軸方向に移動させた際、前記突起が前記開口を通過するときの前記Ｘ軸方向の力と前記Ｙ軸回りのモーメントとの少なくとも一方と、前記Ｙ軸方向の力と前記Ｘ軸回りのモーメントとの少なくとも一方とを示す前記力覚センサーの出力に相当するものであることが好ましい。
これにより、より正確に、第２部材の開口または第１部材の突起の位置を求めることができ、第１部材の突起を第２部材の開口に挿入することができる。
【００１７】
（適用例１０）
本発明に係わるロボット制御装置では、前記記憶部には、さらに、前記突起が前記開口を通過するときの前記Ｚ軸方向の力と前記Ｚ軸回りのモーメントとの少なくとも一方を示す前記力覚センサーの出力波形の情報が予め記憶されており、
前記力覚センサーは、さらに、前記Ｚ軸方向の力と前記Ｚ軸回りのモーメントとの少なくとも一方を検出する機能を有することが好ましい。
これにより、より正確に、第２部材の開口または第１部材の突起の位置を求めることができ、第１部材の突起を第２部材の開口に挿入することができる。
【００１８】
（適用例１１）
本発明に係わるロボット制御装置では、前記基準波形は、前記エンドエフェクターにより前記第１部材または前記第２部材を支持し、前記エンドエフェクターを前記Ｘ軸方向に移動させ、前記力覚センサーにより検出したものであることが好ましい。
これにより、実測するだけで、容易に、基準波形を作成することができる。
（適用例１２）
本発明に係わるロボット制御装置では、前記基準波形は、前記第１部材の画像データと前記第２部材の画像データとに基づいて作成したものであることが好ましい。
これにより、実測することなく、容易に、基準波形を作成することができる。
【００１９】
（適用例１３）
本発明に係わるロボットは、互いに直交するＸ軸、Ｙ軸およびＺ軸を想定したとき、
エンドエフェクターが装着可能なロボットアームと、
前記ロボットアームと前記エンドエフェクターとの間に設けられて、
前記Ｘ軸方向の力と前記Ｙ軸回りのモーメントとの少なくとも一方と前記Ｙ軸方向の力と前記Ｘ軸回りのモーメントとの少なくとも一方とを検出する力覚センサーと、を備え、
前記エンドエフェクターにより、突起を有する第１部材と開口を有する第２部材の一方を支持し、前記突起を前記開口に挿入する作業を行うロボットであって、
前記突起を前記開口に挿入する際の前記突起と前記開口との相対的な移動方向は前記Ｚ軸方向であり、
前記ロボットの作動を制御する本発明のロボット制御装置を備えることを特徴とする。
【００２０】
これにより、作業の際に検出された力覚センサーの出力波形と基準波形とを比較し、その結果に基づいて、第２部材の開口または第１部材の突起の位置を求めるので、力覚センサーから出力される信号に含まれるノイズの影響を低減することができ、これによって、確実に、第２部材の開口または第１部材の突起の位置を求めることができ、第１部材の突起を第２部材の開口に挿入することができる。
【００２１】
（適用例１４）
本発明に係わるロボットでは、前記ロボットは、双腕ロボットであることが好ましい。
これにより、多彩な動作を行うことができ、多彩な作業を行うことができる。
【００２２】
（適用例１５）
本発明に係わるロボット制御方法は、互いに直交するＸ軸、Ｙ軸およびＺ軸を想定したとき、
エンドエフェクターが装着可能なロボットアームと、
前記ロボットアームと前記エンドエフェクターとの間に設けられて、
前記Ｘ軸方向の力と前記Ｙ軸回りのモーメントとの少なくとも一方と前記Ｙ軸方向の力と前記Ｘ軸回りのモーメントとの少なくとも一方とを検出する力覚センサーと、を備え、
前記エンドエフェクターにより、突起を有する第１部材と開口を有する第２部材の一方を支持し、前記突起を前記開口に挿入する作業を行うロボットの作動を制御するロボット制御方法であって、
前記作業における前記突起と前記開口との相対的な移動方向は前記Ｚ軸方向であり、
前記エンドエフェクターにより前記第１部材または前記第２部材を支持し、前記エンドエフェクターを前記Ｘ軸方向に移動されて、前記突起が前記開口を通過するときの前記力覚センサーの出力に相当する基準波形の情報を予め記憶部に記憶する工程と、
前記作業の際、前記ロボットアームの作動を制御し、前記エンドエフェクターにより前記第１部材または前記第２部材を支持し、前記エンドエフェクターを前記Ｘ軸方向に移動させる工程と、
前記作業において検出された前記力覚センサーの出力波形と、前記基準波形とを比較し、その結果に基づいて、前記開口または前記突起の位置を特定する工程と、を備えることを特徴とする。
【００２３】
これにより、作業の際に検出された力覚センサーの出力波形と基準波形とを比較し、その結果に基づいて、第２部材の開口または第１部材の突起の位置を求めるので、力覚センサーから出力される信号に含まれるノイズの影響を低減することができ、これによって、確実に、第２部材の開口または第１部材の突起の位置を求めることができ、第１部材の突起を第２部材の開口に挿入することができる。
【図面の簡単な説明】
【００２４】
【図１】本発明のロボットの第１実施形態におけるロボット本体の概略図である。
【図２】図１に示すロボットのブロック図である。
【図３】図１に示すロボットのブロック図である。
【図４】図１に示すロボットの作業を説明するための図である。
【図５】図１に示すロボットの作業を説明するための図である。
【図６】図１に示すロボットの力覚センサーからの出力信号を示す図である。
【図７】図１に示すロボットの基準波形を説明するための図である。
【図８】図１に示すロボットの基準波形を示す図である。
【図９】本発明のロボットの第２実施形態におけるロボット本体の概略図である。
【発明を実施するための形態】
【００２５】
以下、本発明のロボット制御装置、ロボットおよびロボット制御方法を添付図面に示す好適な実施形態に基づいて詳細に説明する。
図１は、本発明のロボットの第１実施形態におけるロボット本体の概略図である。図２および図３は、それぞれ、図１に示すロボットのブロック図である。図４および図５は、それぞれ、図１に示すロボットの作業を説明するための図である。図６は、図１に示すロボットの力覚センサーからの出力信号を示す図である。図７は、図１に示すロボットの基準波形を説明するための図である。図８は、図１に示すロボットの基準波形を示す図である。
なお、以下では、説明の都合上、図１中の上側を「上」または「上方」、下側を「下」または「下方」と言う。また、図１中の基台側を「基端」、その反対側を「先端」と言う。また、図３には、挿入対象物４６の穴４７の位置を求める際に使用される回路部分が示されている。
【００２６】
図１〜図３に示すロボット（産業用ロボット）１は、例えば腕時計のような精密機器等を製造する製造工程で用いることができ、ロボット本体（本体部）１０と、ロボット本体１０（ロボット１）の作動を制御するロボット制御装置（制御部）２０とを有している。ロボット本体１０と、ロボット制御装置２０とは、それぞれ、電気的に接続されている。また、ロボット制御装置２０は、例えば、ＣＰＵ（Central Processing Unit）が内蔵されたパーソナルコンピューター（ＰＣ）等で構成することができる。なお、ロボット本体１０とロボット制御装置２０とは、一体であってもよく、また、別体であってもよい。なお、ロボット制御装置２０については、後で詳述する。
【００２７】
ロボット本体１０は、基台（支持部）１１と、５本のリンク（腕部）１２、１３、１４、１５、１６と、２本のリンク（腕部）１８、１９を有するリスト１７と、７つの駆動源４０１、４０２、４０３、４０４、４０５、４０６、４０７とを備えるロボットアーム５を有している。すなわち、ロボット１は、基台１１と、リンク１２、１３、１４、１５、１６と、リスト１７とが基端側から先端側に向ってこの順に連結された垂直多関節（７軸）ロボットである。なお、リンク１２を「第１リンク」、リンク１３を「第２リンク」、リンク１４を「第３リンク」、リンク１５を「第４リンク」、リンク１６を「第５リンク」、リスト１７を「第６リンク、第７リンク」と分けて言うことができる。リスト１７にはエンドエフェクター等を取り付けることができる。
【００２８】
図１に示すように、リンク１２〜１６、リスト１７は、それぞれ、基台１１に対し独立して変位可能に支持されている。なお、リンク１２〜１６、リスト１７の長さは、それぞれ、特に限定されず、諸条件に応じて適宜設定される。
基台１１と第１リンク１２とは、関節（ジョイント）１７１を介して連結されている。関節１７１は、互いに連結された基台１１と第１リンク１２のうちの一方を他方に対し回動可能に支持する機構を有している。この場合、第１リンク１２は、基台１１に対し、鉛直方向と平行な第１回転軸Ｏ１を回転中心（軸中心）とし、その第１回転軸Ｏ１回りに回動自在となっている。第１回転軸Ｏ１は、ロボット１の設置面である床１０１の上面の法線と一致している。この第１回転軸Ｏ１回りの回動は、第１駆動源４０１の駆動によりなされる。また、第１駆動源４０１はモーター４０１Ｍとケーブル（図示せず）によって駆動され、このモーター４０１Ｍは電気的に接続されたモータードライバー３０１を介してロボット制御装置２０により制御される。第１駆動源４０１はモーター４０１Ｍとともに設けた減速機（図示せず）によってモーター４０１Ｍからの駆動を伝達するように構成されていてもよく、また、減速機が省略されていてもよい。なお、ロボット本体１０の基台１１には、例えば、モーター４０１Ｍやモータードライバー３０１〜３０７が収納されている。
【００２９】
第１リンク１２と第２リンク１３とは、関節（ジョイント）１７２を介して連結されている。関節１７２は、互いに連結された第１リンク１２と第２リンク１３のうちの一方を他方に対し回動可能に支持する機構を有している。この場合、第２リンク１３は、第１リンク１２に対し、第２回転軸Ｏ２を回転中心とし、その第２回転軸Ｏ２回りに回動自在となっている。第２回転軸Ｏ２は、第１回転軸Ｏ１と直交している。この第２回転軸Ｏ２回りの回動は、第２駆動源４０２の駆動によりなされる。また、第２駆動源４０２は、モーター４０２Ｍとケーブル（図示せず）によって駆動され、このモーター４０２Ｍは電気的に接続されたモータードライバー３０２を介してロボット制御装置２０により制御される。第２駆動源４０２はモーター４０２Ｍの他に設けた減速機（図示せず）によってモーター４０２Ｍからの駆動を伝達するように構成されていてもよく、また、減速機が省略されていてもよい。なお、第２回転軸Ｏ２は、第１回転軸Ｏ１に直交する軸と平行であってもよい。なお、第１リンク１２には、例えば、モーター４０２Ｍが収納されている。
【００３０】
第２リンク１３と第３リンク１４とは、関節（ジョイント）１７３を介して連結されている。関節１７３は、互いに連結された第２リンク１３と第３リンク１４のうちの一方を他方に対し回動可能に支持する機構を有している。この場合、第３リンク１４は、第２リンク１３に対し、３回転軸Ｏ３を回転中心とし、その第３回転軸Ｏ３回りに回動自在となっている。第３回転軸Ｏ３は、第２回転軸Ｏ２と直交している。この第３回転軸Ｏ３回りの回動は、第３駆動源４０３の駆動によりなされる。また、第３駆動源４０３は、モーター４０３Ｍとケーブル（図示せず）によって駆動され、このモーター４０３Ｍは電気的に接続されたモータードライバー３０３を介してロボット制御装置２０により制御される。第３駆動源４０３はモーター４０３Ｍの他に設けた減速機（図示せず）によってモーター４０３Ｍからの駆動を伝達するように構成されていてもよく、また、減速機が省略されていてもよい。なお、第３回転軸Ｏ３は、第２回転軸Ｏ２に直交する軸と平行であってもよい。なお、第２リンク１３には、例えば、モーター４０３Ｍが収納されている。
【００３１】
第３リンク１４と第４リンク１５とは、関節（ジョイント）１７４を介して連結されている。関節１７４は、互いに連結された第３リンク１４と第４リンク１５のうちの一方を他方に対し回動可能に支持する機構を有している。この場合、第４リンク１５は、第３リンク１４に対し、第４回転軸Ｏ４を回転中心とし、その第４回転軸Ｏ４回りに回動自在となっている。第４回転軸Ｏ４は、第３回転軸Ｏ３と直交している。この第４回転軸Ｏ４回りの回動は、第４駆動源４０４の駆動によりなされる。また、第４駆動源４０４は、モーター４０４Ｍとケーブル（図示せず）によって駆動され、このモーター４０４Ｍは電気的に接続されたモータードライバー３０４を介してロボット制御装置２０により制御される。第４駆動源４０４はモーター４０４Ｍとともに設けた減速機（図示せず）によってモーター４０４Ｍからの駆動を伝達するように構成されていてもよく、また、減速機が省略されていてもよい。なお、第４回転軸Ｏ４は、第３回転軸Ｏ３に直交する軸と平行であってもよい。なお、第３リンク１４には、例えば、モーター４０４Ｍが収納されている。
【００３２】
第４リンク１５と第５リンク１６とは、関節（ジョイント）１７５を介して連結されている。関節１７５は、互いに連結された第４リンク１５と第５リンク１６のうちの一方を他方に対し回動可能に支持する機構を有している。この場合、第５リンク１６は、第４リンク１５に対し、第５回転軸Ｏ５を回転中心とし、その第５回転軸Ｏ５回りに回動自在となっている。第５回転軸Ｏ５は、第４回転軸Ｏ４と直交している。この第５回転軸Ｏ５回りの回動は、第５駆動源４０５の駆動によりなされる。また、第５駆動源４０５は、モーター４０５Ｍとケーブル（図示せず）によって駆動され、このモーター４０５Ｍは電気的に接続されたモータードライバー３０５を介してロボット制御装置２０により制御される。第５駆動源４０５はモーター４０５Ｍとともに設けた減速機（図示せず）によってモーター４０５Ｍからの駆動を伝達するように構成されていてもよく、また、減速機が省略されていてもよい。なお、第５回転軸Ｏ５は、第４回転軸Ｏ４に直交する軸と平行であってもよい。なお、第４リンク１５には、例えば、モーター４０５Ｍが収納されている。
【００３３】
リスト１７は、第６リンク１８と第７リンク１９とを有している。このリスト１７には、その先端部に、エンドエフェクターとして、例えば、腕時計等のような精密機器を把持するハンド９１が着脱自在に装着される。なお、ハンド９１としては、特に限定されず、例えば、複数本の指部（フィンガー）を有する構成のものが挙げられる。ハンド９１の指部の本数は、図示の構成では２本であるが、２本に限定されず、３本以上であってもよい。このロボット１は、ハンド９１で精密機器を把持したまま、リンク１２〜１６やリスト１７等の動作を制御することにより、当該精密機器を搬送することができる。
【００３４】
また、第５リンク１６とリスト１７の第６リンクとは、関節（ジョイント）１７６を介して連結されている。関節１７６は、互いに連結された第５リンク１６とリスト１７の第６リンク１８のうちの一方を他方に対し回動可能に支持する機構を有している。この場合、リスト１７の第６リンク１８は、第５リンク１６に対し、第６回転軸Ｏ６を回転中心とし、その第６回転軸Ｏ６回りに回動自在となっている。第６回転軸Ｏ６は、第５回転軸Ｏ５と直交している。この第６回転軸Ｏ６回りの回動は、第６駆動源４０６の駆動によりなされる。また、第６駆動源４０６は、モーター４０６Ｍとケーブル（図示せず）によって駆動され、このモーター４０６Ｍは電気的に接続されたモータードライバー３０６を介してロボット制御装置２０により制御される。第６駆動源４０６はモーター４０６Ｍとともに設けた減速機（図示せず）によってモーター４０６Ｍからの駆動を伝達されてもよく、また、減速機が省略されていてもよい。
【００３５】
また、リスト１７の第６リンクと第７リンク１９とは、関節（ジョイント）１７７を介して連結されている。関節１７７は、互いに連結されたリスト１７の第６リンク１８と第７リンク１９のうちの一方を他方に対し回動可能に支持する機構を有している。この場合、リスト１７の第７リンク１９は、第６リンク１８に対し、第７回転軸Ｏ７を回転中心とし、その第７回転軸Ｏ７回りに回動自在となっている。回転軸Ｏ７は、回転軸Ｏ６と直交している。この第７回転軸Ｏ７回りの回動は、第７駆動源４０７駆動によりなされる。また、第７駆動源４０７の駆動は、モーター４０７Ｍとケーブル（図示せず）によって駆動され、このモーター４０７Ｍは電気的に接続されたモータードライバー３０７を介してロボット制御装置２０により制御される。第７駆動源４０７はモーター４０７Ｍとともに設けた減速機（図示せず）によってモーター４０７Ｍからの駆動を伝達するように構成されていてもよく、また、減速機が省略されていてもよい。なお、第６回転軸Ｏ６は、第５回転軸Ｏ５に直交する軸と平行であってもよく、また、第７回転軸Ｏ７は、第６回転軸Ｏ６に直交する軸と平行であってもよい。なお、第５リンク１６には、例えば、モーター４０６Ｍ、４０７Ｍが収納されている。
【００３６】
駆動源４０１〜４０７には、それぞれのモーター４０１Ｍ〜４０７Ｍまたは減速機に、第１角度センサー４１１、第２角度センサー４１２、第３角度センサー４１３、第４角度センサー４１４、第５角度センサー４１５、第６角度センサー４１６、第７角度センサー４１７が設けられている。これらの角度センサー４１１〜４１７としては、例えば、エンコーダー、ロータリーエンコーダー等を用いることができる。これらの角度センサー４１１〜４１７により、それぞれ、駆動源４０１〜４０７のモーター４０１Ｍ〜４０７Ｍあるいは減速機の回転軸の回転角度を検出する。この角度センサー４１１〜４１７の検出結果、すなわち、角度センサー４１１〜４１７から出力される信号は、ロボット制御装置２０に入力される。なお、この駆動源４０１〜４０７のモーター４０１Ｍ〜４０７Ｍとしては、それぞれ、特に限定されず、例えば、ＡＣサーボモーター、ＤＣサーボモーター等のサーボモーターを用いるのが好ましい。
【００３７】
また、ロボット本体１０は、ロボットアーム５のリスト１７のリンク１９の先端部（リスト１７のリンク１９とハンド９１との間）に設けられた力覚センサー８１を有している。なお、力覚センサー８１は、前記の位置に限らず、例えば、ハンド９１の基端部等に設けられていてもよい。
力覚センサー８１は、ハンド９１が把持した後述する挿入物４１を介して受ける反力等の力やモーメントを検出するものである。この力覚センサー８１としては、特に限定されず、各種のものを用いることができるが、その１例としては、例えば、互いに直交する３軸（Ｘ軸、Ｙ軸、Ｚ軸）の各軸方向の力および各軸回りのモーメントを検出する６軸力センサー等が挙げられる。なお、以下では、力とモーメントとを含めて力と言う。この力覚センサー８１の検出結果、すなわち、力覚センサー８１から出力される信号は、ロボット制御装置２０に入力される。
【００３８】
ロボット本体１０は、ロボット制御装置２０と電気的に接続されている。すなわち、駆動源４０１〜４０７、角度センサー４１１〜４１７、力覚センサー８１は、それぞれ、ロボット制御装置２０と電気的に接続されている。
そして、ロボット制御装置２０は、リンク１２〜１６、リスト１７をそれぞれ独立して作動させることができる、すなわち、モータードライバー３０１〜３０７を介して、駆動源４０１〜４０７それぞれ独立して制御することができる。この場合、ロボット制御装置２０は、角度センサー４１１〜４１７、力覚センサー８１等により検出を行い、その検出結果に基づいて、駆動源４０１〜４０７の駆動、例えば、角速度や回転角度等をそれぞれ制御する。この場合、ロボット制御装置２０は、例えば、インピーダンス制御（力制御）、位置制御等の所定の制御を行う。この制御プログラムは、ロボット制御装置２０に内蔵された記録媒体に予め記憶されている。
【００３９】
図４および図５に示すように、このロボット１は、ロボット制御装置２０により、ロボット本体１０（腕部１２〜１６、リスト１７、ハンド９１等）の作動を制御することにより、ハンド９１で、突起（挿入部）４２を有する第１部材（第１組立対象物）である挿入物４１と、穴（開口）４７を有する第２部材（第２組立対象物）である挿入対象物４６との一方を把持（支持）し、突起４２を穴４７に挿入する作業（動作）を行う。なお、ハンド９１で、挿入物４１を把持してもよく、また、挿入対象物４６を把持してもよいが、本実施形態では、代表的に、挿入物４１を把持する場合を図示して説明する。なお、ハンド９１で挿入物４１を把持する場合は、穴４７の位置を求め（特定し）、挿入物４１の突起４２をその穴４７の位置に移動させ、突起４２を穴４７に挿入する。また、ハンド９１で挿入対象物４６を把持する場合は、突起４２の位置を求め（特定し）、挿入対象物４６の穴４７をその突起４２の位置に移動させ、突起４２を穴４７に挿入する。
【００４０】
挿入物４１の形状、挿入対象物４６の形状は、それぞれ、特に限定されないが、本実施形態では、代表的に、挿入物４１、挿入対象物４６の穴４７の形状をそれぞれ円筒状、挿入対象物４６の全体形状を直方体状とした場合を図示して説明する。なお、図示の構成では、挿入物４１自体が突起４２である。また、突起４２の先端部は、丸みを帯びている場合と、図示のように丸みを帯びていない場合とがあり、丸みを帯びていない場合は、図示のように、突起４２を傾斜させると作業を円滑に行うことができる。
また、挿入対象物４６に形成された穴４７には、貫通穴と、貫通していない穴、すなわち、有底の穴（凹部）とが含まれるが、本実施形態では、代表的に、貫通穴を図示して説明する。なお、穴４７が貫通穴の場合は、作業において、挿入物４１は、その貫通穴を通過してしまってもよい。
【００４１】
次に、図１〜図３を参照し、ロボット制御装置２０の構成について説明する。
ロボット制御装置２０は、ロボット本体１０全体、すなわち、第１駆動源４０１、第２駆動源４０２、第３駆動源４０３、第４駆動源４０４、第５駆動源４０５、第６駆動源４０６、第７駆動源４０７、リスト１７に装着されたハンド９１の駆動源等の作動をそれぞれ制御する装置である。
【００４２】
図２に示すように、ロボット制御装置２０は、第１駆動源４０１の作動を制御する第１駆動源制御部（制御部）２０１と、第２駆動源４０２の作動を制御する第２駆動源制御部（制御部）２０２と、第３駆動源４０３の作動を制御する第３駆動源制御部（制御部）２０３と、第４駆動源４０４の作動を制御する第４駆動源制御部（制御部）２０４と、第５駆動源４０５の作動を制御する第５駆動源制御部（制御部）２０５と、第６駆動源４０６の作動を制御する第６駆動源制御部（制御部）２０６と、第７駆動源４０７の作動を制御する第７駆動源制御部（制御部）２０７とを有している。
【００４３】
ここで、ロボット制御装置２０は、ロボット本体１０が行う処理の内容に基づいてリスト１７の先端部の目標位置、すなわち、リスト１７に装着されたハンド９１の目標位置を求め、その目標位置にハンド９１を移動させるための軌道を生成する。そして、ロボット制御装置２０は、その生成した軌道に沿ってハンド９１（リスト１７）が移動するように、各駆動源４０１〜４０７の回転角度を所定の制御周期ごとに測定し、この測定結果に基づいて演算した値をそれぞれ各駆動源４０１〜４０７の位置指令Ｐｃとして駆動源制御部２０１〜２０７に出力する。なお、前記および以下では、「値が入力、出力」等と表記しているが、これは、「その値に対応する信号が入力、出力」の意味である。
【００４４】
第１駆動源制御部２０１には、第１駆動源４０１の位置指令Ｐｃの他、第１角度センサー４１１から検出信号が入力される。第１駆動源制御部２０１は、第１角度センサー４１１の検出信号から算出される第１駆動源４０１の回転角度（位置フィードバック値Ｐｆｂ）が位置指令Ｐｃになり、かつ、後述する角速度フィードバック値ωｆｂが後述する角速度指令ωｃになるように、各検出信号を用いたフィードバック制御によって第１駆動源４０１を駆動する。
【００４５】
すなわち、第１駆動源制御部２０１の第１減算器（図示せず）には、位置指令Ｐｃが入力され、また、後述する位置フィードバック値Ｐｆｂが入力される。第１駆動源制御部２０１では、第１角度センサー４１１から入力されるパルス数がカウントされるとともに、そのカウント値に応じた第１駆動源４０１の回転角度が位置フィードバック値Ｐｆｂとして第１減算器に出力される。第１減算器は、これら位置指令Ｐｃと位置フィードバック値Ｐｆｂとの偏差（第１駆動源４０１の回転角度の目標値から位置フィードバック値Ｐｆｂを減算した値）を出力する。
【００４６】
また、第１駆動源制御部２０１は、第１減算器から入力された偏差と、予め定められた係数である比例ゲイン等を用いた所定の演算処理を行うことで、その偏差に応じた第１駆動源４０１の角速度の目標値を演算する。そして、その第１駆動源４０１の角速度の目標値（指令値）を示す信号を角速度指令（第１角速度指令）ωｃとして第２減算器（図示せず）に出力する。なお、ここでは、本実施形態では、フィードバック制御として、比例制御（Ｐ制御）がなされるが、これに限定されるものではない。
【００４７】
また、第１駆動源制御部２０１では、第１角度センサー４１１から入力されるパルス信号の周波数に基づいて、第１駆動源４０１の角速度が算出され、その角速度が角速度フィードバック値ωｆｂとして第２減算器に出力される。
第２減算器には、角速度指令ωｃが入力され、また、角速度フィードバック値ωｆｂが入力される。第２減算器は、これら角速度指令ωｃと角速度フィードバック値ωｆｂとの偏差（第１駆動源４０１の角速度の目標値から角速度フィードバック値ωｆｂを減算した値）を出力する。
【００４８】
また、第１駆動源制御部２０１は、第２減算器から入力された偏差と、予め定められた係数である比例ゲイン、積分ゲイン等を用い、積分を含む所定の演算処理を行うことで、その偏差に応じた第１駆動源４０１の角加速度（トルク）の目標値を演算する。そして第１駆動源制御部２０１は、その第１駆動源４０１の角加速度の目標値（指令値）を示す信号を角加速度指令（トルク指令）として生成する。なお、ここでは、本実施形態では、フィードバック制御として、ＰＩ制御がなされるが、これに限定されるものではない。
【００４９】
第１駆動源制御部２０１は、その角加速度指令に基づいて、第１駆動源４０１の駆動信号（駆動電流）を生成し、モータードライバー３０１を介してモーター４０１Ｍに供給する。
このようにして、第１駆動源４０１の角加速度、すなわち、トルクがその目標値と可及的に等しくなり、かつ、位置フィードバック値Ｐｆｂが位置指令Ｐｃと可及的に等しくなるとともに、角速度フィードバック値ωｆｂが角速度指令ωｃと可及的に等しくなるように、フィードバック制御がなされ、第１駆動源４０１の駆動電流が制御される。
なお、第２駆動源制御部２０２〜第７駆動源制御部２０７については、それぞれ、前記第１駆動源制御部２０１と同様であるので、その説明は省略する。
【００５０】
次に、ロボット１がそのハンド９１で挿入物４１を把持し、その挿入物４１の突起４２を挿入対象物４６の穴４７に挿入する作業におけるロボット制御装置２０の制御動作について説明する。なお、第１駆動源制御部２０１〜第７駆動源制御部２０７の制御動作は、同様であるので、以下では、代表的に、第１駆動源制御部２０１の制御動作について説明する。
【００５１】
図３に示すように、ロボット制御装置２０は、記憶部５０と、ローパスフィルター５１ｘ、５１ｙ、５１ｚと、レジスター５２ｘ、５２ｙ、５２ｚと、相関係数演算部５３ｘ、５３ｙ、５３ｚと、制御周期発生部５４ｘ、５４ｙ、５４ｚと、位置演算部５５ｘ、５５ｙ、５５ｚと、演算タイミング発生部５６ｘ、５６ｙ、５６ｚと、比較部５７ｘ、５７ｙ、５７ｚと、位置決定部５８とを有している。相関係数演算部５３ｘ、５３ｙ、５３ｚと、比較部５７ｘ、５７ｙ、５７ｚと、位置決定部５８とにより、位置特定部が構成される。なお、互いに直交するＸ軸、Ｙ軸、Ｚ軸を想定する（図４、図５参照）。この場合、作業において挿入対象物４６の穴４７の位置を求める際にハンド９１（挿入物４１）を移動させる方向（走査方向）がＸ軸方向であり、挿入物４１の突起４２を挿入対象物４６の穴４７に挿入する際（突起４２を穴４７に挿入する作業における）の突起４２と穴４７との相対的な移動方向がＺ軸方向である。
【００５２】
また、ローパスフィルター５１ｘ、５１ｙ、５１ｚの遮断周波数は、それぞれ、特に限定されず、諸条件に応じて適宜設定されるものであるが、ハンド９１の移動速度が遅いほど、小さく設定することが好ましい。ハンド９１の移動速度が遅い場合は、ローパスフィルター５１ｘ、５１ｙ、５１ｚの遮断周波数を小さくしても問題がなく、そして、遮断周波数を小さくすることにより、力覚センサー８１から出力される信号に含まれるノイズをより低減することができる。
【００５３】
また、レジスター５２ｘ、５２ｙ、５２ｚとしては、それぞれ、特に限定されないが、例えば、ＦＩＦＯ構造のもの等を用いることができる。
また、記憶部５０には、ハンド９１により挿入物４１を支持し、ハンド９１（挿入物４１）をＺ軸方向に押し付けつつＸ軸方向に移動させた際、突起４２が穴４７を通過するときのＸ軸回りのモーメント、Ｙ軸回りのモーメントおよびＺ軸方向の力を示す力覚センサー８１の出力（出力波形）に相当する基準波形の情報が予め記憶されている。この基準波形の情報は、例えば、事前に、作業と同じ条件で、実際に測定して記憶部５０に記憶するか、または、突起４２、穴４７についてのＣＡＤデータ等の画像データを用い、計算で求めて記憶部５０に記憶する（基準波形記憶工程）。
【００５４】
また、ロボット制御装置２０の各駆動源制御部２０１〜２０７は、それぞれ、作業の際、力覚センサー８１により検出されたＸ軸回りのモーメント、Ｙ軸回りのモーメントおよびＺ軸方向の力に基づいて、インピーダンス制御（力制御）により、ロボット本体１０（ロボットアーム５）の作動、すなわち、各駆動源４０１〜４０７の作動を制御する。インピーダンス制御を行うことにより、挿入物４１、挿入対象物４６等の物体同士を倣わせることができ、挿入物４１が他の物体に接触した接触状態においてもその挿入物４１に無理な力が加わることを防止することができる。
【００５５】
図４に示すように、作業の際は、まず、挿入対象物４６の穴４７の位置を求めるために、ハンド９１（挿入物４１）をＸ軸方向に移動させる動作、すなわち、Ｘ軸方向の走査を、Ｙ軸方向の位置を変更して、複数回行う。また、この走査は、ハンド９１をＺ軸方向に押し付け、これにより、挿入物４１の突起４２の先端部を押し当て面に押し当てつつ行う。また、前記押し当て面は、挿入対象物４６またはロボット１の稼働範囲に設置された構造物に設けられたものである。なお、前記構造物としては、例えば、作業テーブル等が挙げられる。
【００５６】
そして、作業の際は、力覚センサー８１により、力の検出が行われ、その力覚センサー８１から信号（データ）、すなわち、Ｘ軸回りのモーメントを示す信号（データ）、Ｙ軸回りのモーメントを示す信号およびＺ軸方向の力を示す信号が出力される。図６に示すように、力覚センサー８１から出力されるＸ軸回りのモーメントを示す信号、Ｙ軸回りのモーメントを示す信号およびＺ軸方向の力を示す信号には、それぞれ、真の信号の他にノイズが含まれている。力覚センサー８１から出力されるＸ軸回りのモーメントを示す信号、Ｙ軸回りのモーメントを示す信号およびＺ軸方向の力を示す信号は、それぞれ、ローパスフィルター５１ｘ、５１ｙおよび５１ｚにおいて高周波数成分が除去され、レジスター５２ｘ、５２ｙおよび５２ｚに入力される。ローパスフィルター５１ｘ、５１ｙおよび５１ｚにより、信号に含まれるノイズを低減することができる。なお、以下では、Ｘ軸回りのモーメントを示す信号、Ｙ軸回りのモーメントを示す信号およびＺ軸方向の力を示す信号等を、単に、「信号（データ）」とも言う。また、Ｘ軸回り、Ｙ軸回りおよびＺ軸方向を「３軸方向」とも言う。
【００５７】
一方、前記記憶部５０に記憶されているＸ軸回りのモーメント、Ｙ軸回りのモーメントおよびＺ軸方向の力の基準波形の情報は、それぞれ、相関係数演算部５３ｘ、５３ｙおよび５３ｚに入力される。
なお、末尾の符号が「ｘ」であるローパスフィルター５１ｘ、レジスター５２ｘ、相関係数演算部５３ｘ、制御周期発生部５４ｘ、位置演算部５５ｘ、演算タイミング発生部５６ｘおよび比較部５７ｘと、末尾の符号が「ｙ」であるローパスフィルター５１ｙ、レジスター５２ｙ、相関係数演算部５３ｙ、制御周期発生部５４ｙ、位置演算部５５ｙ、演算タイミング発生部５６ｙおよび比較部５７ｙと、末尾の符号が「ｚ」であるローパスフィルター５１ｚ、レジスター５２ｚ、相関係数演算部５３ｚ、制御周期発生部５４ｚ、位置演算部５５ｚ、演算タイミング発生部５６ｚおよび比較部５７ｚとは、同様であるので、以下では、代表的に、末尾の符号が「ｘ」のものについて説明する。
【００５８】
Ｘ軸回りのモーメントを示す信号は、ローパスフィルター５１ｘにおいて高周波数成分が除去され、レジスター５２ｘに入力され、レジスター５２ｘから相関係数演算部５３ｘに入力される。
また、制御周期発生部５４ｘからは、制御周期ごとに、その制御周期に対応するクロック信号が出力され、位置演算部５５ｘに入力される。位置演算部５５ｘは、挿入物４１の突起４２の位置を求め、演算タイミング発生部５６ｘに出力する。演算タイミング発生部５６ｘは、相関係数演算部５３ｘにおける演算のタイミングを示すタイミング信号を発生し、相関係数演算部５３ｘに出力する。
【００５９】
相関係数演算部５３ｘは、前記タイミング信号が入力されると、下記（１）式により、相関係数を求め、その相関係数を比較部５７ｘに出力する。
相関係数Ｆは、下記（１）式で示される。
相関係数Ｆ＝Σ（ｒｎ−ｒａ）・（ｖｎ−ｖａ）／［Σ（ｒｎ−ｒａ）２］１／２・［Σ（ｖｎ−ｖａ）２］１／２        ・・・（１）
【００６０】
但し、本実施形態の例では、図７および図８に示すように、穴４７をＸ軸方向に８区間に分割し、図中黒丸で示すように、Ｘ軸方向の計算位置として、穴４７およびその近傍に、１１箇所が設定されている。また、Ｙ軸方向の計算位置として、中央と、一方の縁近傍と、中央と一方の縁近傍との中間と、他方の縁近傍と、中央と他方の縁近傍との中間との５箇所が設定されている。すなわち、合計で、５５箇所が設定されている。なお、これは、あくまでも１例である。また、記憶部５０に記憶されているＸ軸回りのモーメント、Ｙ軸回りのモーメントおよびＺ軸方向の力の基準波形の情報としては、他方の縁近傍の値は、一方の縁近傍の値と符号が逆であるので、省略され、一方の縁近傍の値を符号を逆にして用い、同様に、中央と他方の縁近傍との中間の値は、中央と一方の縁近傍との中間の値と符号が逆であるので、省略され、中央と一方の縁近傍との中間の値を符号を逆にして用いる。
【００６１】
また、上記（１）式の各パラメーターは、下記の通りである。
基準波形における各値：ｒｎ（ｎは、１〜１１、すなわち、ｒ１〜ｒ１１）
力覚センサーの出力波形における各値：ｖｎ（ｎは、１〜１１、すなわち、ｖ１〜ｖ１１）
基準波形における各値の平均値：ｒａ
力覚センサーの出力波形における各値の平均値：ｖａ
なお、この例では、穴４７をＸ軸方向に８区間に分割しているが、その区間数は多いほどノイズの影響を低減することができるので、好ましい区間数としては、８区間以上が好ましく、１６区間以上がより好ましい。
【００６２】
次に、比較部５７ｘは、相関係数演算部５３ｘから入力された相関係数と閾値とを比較し、この比較結果が、比較部５７ｘから位置決定部５８に出力される。なお、前記閾値は、特に限定されず、諸条件に応じて適宜設定されるものであるが、ハンド９１の移動速度が遅いほど、大きく設定することが好ましい。これにより、より確実に、穴４７の位置を求めることができる。
位置決定部５８は、相関係数が閾値を超えているときに、突起４２が穴４７を通過中であると判定する。
【００６３】
しかし、本実施形態では、より正確な判定を行うために、下記の基準に基づいて、突起４２が穴４７を通過中であるか否かを判定する。
まず、Ｘ軸回り、Ｙ軸回りおよびＺ軸方向の３軸方向で閾値を超えている場合は、突起４２が穴４７を通過中であると判定する。
また、２軸方向で閾値を超えている場合は、その２軸方向のうちの１軸方向で、前記閾値（第１の閾値）よりも大きい第２の閾値を超えている場合、または、前回および前々回において、２軸方向で閾値を超えている場合は、突起４２が穴４７を通過中であると判定する。
【００６４】
また、１軸方向で閾値を超えている場合は、前回および前々回において、１軸方向で閾値を超えている場合は、突起４２が穴４７を通過中の可能性があると判定する。そして、再度、前記Ｘ軸方向の走査を行い、前記比較を行う。
そして、前記突起４２が穴４７を通過中であると判定する場合以外については、すべて、穴４７ではないと判定する。
【００６５】
また、位置決定部５８は、突起４２が穴４７を通過中であると判定した場合は、さらに、下記の基準に基づいて、突起４２が穴４７の「中央」、「中間」、「縁近傍」のうちのいずれか、または、いずれの近傍を通過中であるかを判定する。
まず、３軸方向で閾値を超えている場合を３点、２軸方向で閾値を超えている場合を２点、その他を０点とする。そして、「中央」、「中間」、「縁近傍」の最も点数の多いものを通過位置とする。
【００６６】
さらに、位置決定部５８は、前記点数が最も高い地点が、穴４７における突起４２の進行方向の下流側の端部であると判定する。突起４２が進行方向下流側の端部に近づくにしたがい、力覚センサー８１の出力波形は穴全域に渡って得られるため基準波形との類似性が高まり、相関係数も大きくなるからである。
そして位置決定部５８は、前記各判定結果、穴４７の寸法等に基づいて、穴４７の位置、特に、穴４７の中心の位置を求める（特定する）。
次に、ロボットアーム５、ハンド９１を作動させ、挿入物４１の突起４２を穴４７に挿入する。
【００６７】
以上説明したように、このロボット１によれば、作業の際に検出された力覚センサー８１の出力波形と基準波形とを比較し、その結果に基づいて、挿入対象物４６の穴４７の位置を求めるので、力覚センサー８１から出力される信号に含まれるノイズの影響を低減することができ、これによって、確実に、穴４７の位置を求めることができ、挿入物４１の突起４２を穴４７に挿入することができる。
【００６８】
＜第２実施形態＞
図９は、本発明のロボットの第２実施形態におけるロボット本体の概略図である。
以下、第２実施形態について、前述した第１実施形態との相違点を中心に説明し、同様の事項については、その説明を省略する。
図９に示すように、第２実施形態のロボット１は、双腕ロボットであり、そのロボット本体１０は、２つロボットアーム５と、各ロボットアーム５を支持する基台（支持部）としての胴部１１０とを備えている。このロボット１は、例えば、２つのハンド９１の一方で挿入物４１を把持し、他方で挿入対象物４６を把持して作業を行う。
【００６９】
このロボット１によれば、前述した第１実施形態と同様の効果が得られる。
そして、このロボット１は、双腕ロボットであるので、多彩な動作を行うことができ、多彩な作業を行うことができる。
なお、ロボットアームの数は、２つに限らず、３つ以上であってもよい。
以上、本発明のロボット制御装置、ロボットおよびロボット制御方法を、図示の実施形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。
【００７０】
また、本発明は、前記各実施形態のうちの、任意の２以上の構成（特徴）を組み合わせたものであってもよい。
また、各駆動源のモーターとしては、それぞれ、前記サーボモーターの他、例えば、ステッピングモーター等が挙げられる。また、モーターとしてステッピングモーターを用いる場合は、角度センサーとして、例えば、ステッピングモーターへ入力する駆動パルスの数を計測することで、モーターの回転角度を検出するものを用いてもよい。
【００７１】
また、前記実施形態では、ロボットアームの回転軸の数は、７つであるが、本発明では、これに限定されず、ロボットアームの回転軸の数は、例えば、２つ、３つ、４つ、５つ、６つまたは８つ以上でもよい。すなわち、本実施形態では、リストが２本のリンクを有しているので、ロボットアームのリンクの本数は、７本であるが、本発明では、これに限定されず、ロボットアームのリンクの本数は、例えば、２本、３本、４本、５本、６本または８本以上でもよい。
【００７２】
また、本発明では、ロボット（ロボット本体）は、他の形式のロボット、例えば、脚部を有する脚式歩行（走行）ロボット等であってもよい。
また、前記実施形態では、穴の位置を求める際は、力覚センサーにより、Ｘ軸回りのモーメント、Ｙ軸回りのモーメントおよびＺ軸方向の力を検出し、そのそれぞれと、対応する基準波形とを比較するように構成されているが、本発明では、これに限定されず、穴または突起の位置を求める際は、力覚センサーにより、Ｘ軸方向の力とＹ軸回りのモーメントとの少なくとも一方と、Ｙ軸方向の力とＸ軸回りのモーメントとの少なくとも一方とを検出し、そのそれぞれと、対応する基準波形とを比較するように構成されていればよい。具体例としては、例えば、下記（１）〜（８）の組み合わせが挙げられる。
【００７３】
（１）Ｘ軸方向の力、Ｙ軸方向の力、Ｚ軸方向の力
（２）Ｘ軸回りのモーメント、Ｙ軸回りのモーメント、Ｚ軸回りのモーメント
（３）Ｘ軸方向の力、Ｙ軸方向の力、Ｘ軸回りのモーメント、Ｙ軸回りのモーメント
（４）Ｘ軸方向の力、Ｙ軸方向の力、Ｚ軸方向の力、Ｘ軸回りのモーメント、Ｙ軸回りのモーメント、Ｚ軸回りのモーメント
（５）Ｘ軸方向の力、Ｙ軸方向の力
（６）Ｙ軸回りのモーメント、Ｘ軸回りのモーメント
（７）Ｘ軸方向の力、Ｘ軸回りのモーメント
（８）Ｙ軸方向の力、Ｙ軸回りのモーメント
【００７４】
また、前記実施形態では、力覚センサーの出力波形と比較する基準波形の数は、Ｘ軸回りのモーメント、Ｙ軸回りのモーメント、Ｚ軸方向の力について１つ当たり、突起が穴のＹ軸方向の中央を通過する場合と、縁近傍を通過する場合（２つ）と、中央と縁との中間を通過する場合（２つ）との５つであるが、本発明では、これに限定されず、１つ、２つ、３つ、４つ、または６つ以上でもよい。
【符号の説明】
【００７５】
１……ロボット（産業用ロボット）  １０……ロボット本体  １１０……胴部  １１……基台  １２、１３、１４、１５、１６、１８、１９……リンク  １７……リスト  １７１、１７２、１７３、１７４、１７５、１７６、１７７……関節（ジョイント）  ２０……ロボット制御装置  １０１……床  ２０１、２０２、２０３、２０４、２０５、２０６、２０７……駆動源制御部  ３０１、３０２、３０３、３０４、３０５、３０６、３０７……モータードライバー  ４０１、４０２、４０３、４０４、４０５、４０６、４０７……駆動源  ４０１Ｍ、４０２Ｍ、４０３Ｍ、４０４Ｍ、４０５Ｍ、４０６Ｍ、４０７Ｍ……モーター  ４１１、４１２、４１３、４１４、４１５、４１６、４１７……角度センサー  ５……ロボットアーム  ４１……挿入物  ４２……突起  ４６……挿入対象物  ４７……穴  ５０……記憶部  ５１ｘ、５１ｙ、５１ｚ……ローパスフィルター  ５２ｘ、５２ｙ、５２ｚ……レジスター  ５３ｘ、５３ｙ、５３ｚ……相関係数演算部  ５４ｘ、５４ｙ、５４ｚ……制御周期発生部  ５５ｘ、５５ｙ、５５ｚ……位置演算部  ５６ｘ、５６ｙ、５６ｚ……演算タイミング発生部  ５７ｘ、５７ｙ、５７ｚ……比較部  ５８……位置決定部  ８１……力覚センサー  ９１……ハンド  Ｏ１、Ｏ２、Ｏ３、Ｏ４、Ｏ５、Ｏ６、０７……回転軸
【図１】
2015160292.tif 000003
【図２】
2015160292.tif 000004
【図３】
2015160292.tif 000005
【図４】
2015160292.tif 000006
【図５】
2015160292.tif 000007
【図６】
2015160292.tif 000008
【図７】
2015160292.tif 000009
【図８】
2015160292.tif 000010
【図９】
2015160292.tif 000011