(57)【要約】      （修正有）【課題】既存の設備を生かしながら筒体の端部の位置を速やかに推定できる位置推定方法を提供すること。【解決手段】位置推定方法は、基準位置及び基準姿勢の下で一対のクランプ爪を接近させ、エンジンダンパを仮把持する初期仮把持工程（Ｓ２）と、仮把持した時のチャック幅を修正制御量演算部に入力して得られる修正制御量を用いて把持ツールの位置及び姿勢を修正する位置姿勢修正工程（Ｓ３）と、位置姿勢修正工程後の位置及び姿勢の下で一対のクランプ爪を接近させ、エンジンダンパを再度仮把持する再仮把持工程（Ｓ４）と、位置姿勢修正工程と再仮把持工程とを繰り返し実行した後、チャック幅が閾値以下になったときの把持ツールの位置及び姿勢と基準位置及び基準姿勢とのずれを用いてエンジンダンパの先端部の位置座標を推定する先端位置推定工程と、を備える。【選択図】図７
2018167366.tif 000002
【特許請求の範囲】
【請求項１】
筒体を把持する把持システムを用いて、当該筒体の一方の端部の端部位置座標を推定する位置推定方法であって、
前記把持システムは、互いに最接近させたときにその把持中心軸と前記筒体の中心軸とを同軸にして把持する一対のクランプ爪及びこれらクランプ爪の挟持幅に応じた幅検出値を出力する挟持幅検出手段を備える把持装置と、前記把持装置の位置及び姿勢を制御する制御手段と、を備え、
前記制御手段は、前記幅検出値が入力されると前記挟持幅を減少させるように前記把持装置の位置及び姿勢の修正制御量を出力する修正手段を備え、
前記位置推定方法は、
基準位置及び基準姿勢の下で前記一対のクランプ爪を接近させ、前記筒体を仮把持する初期仮把持工程と、
前記仮把持した時の前記幅検出値を前記修正手段に入力して得られる前記修正制御量を用いて前記把持装置の位置及び姿勢を修正する修正工程と、
前記修正工程後の位置及び姿勢の下で前記一対のクランプ爪を接近させ、前記筒体を再度仮把持する再仮把持工程と、
前記修正工程と前記再仮把持工程とを繰り返し実行した後、前記幅検出値が閾値以下になったときの前記把持装置の位置及び姿勢と前記基準位置及び前記基準姿勢とのずれを用いて前記端部位置座標を推定する推定工程と、を備えることを特徴とする位置推定方法。
【請求項２】
前記修正手段において、前記幅検出値から前記修正制御量までの入出力特性は、強化学習によって構築されていることを特徴とする請求項１に記載の位置推定方法。
【請求項３】
前記制御手段は、前記把持装置がそのアーム先端部に取り付けられたロボットと、当該ロボットを駆動することによって前記把持装置の位置及び姿勢を制御するロボットコントローラと、を備え、
前記把持装置は、アクチュエータと、前記アクチュエータで発生した動力によって前記一対のクランプ爪を接近又は離間させる動力伝達機構と、当該動力伝達機構と前記アーム先端部との間に設けられた６軸の力覚センサと、を備え、
前記修正手段は、前記幅検出値と前記力覚センサの検出値とを用いて前記挟持幅を減少させるように前記修正制御量を算出することを特徴とする請求項１又は２に記載の位置推定方法。
【請求項４】
把持システムを用いて筒体を把持する把持方法であって、
前記把持システムは、互いに最接近させたときにその把持中心軸と前記筒体の中心軸とを同軸にして把持する一対のクランプ爪及びこれらクランプ爪の挟持幅に応じた幅検出値を出力する挟持幅検出手段を備える把持装置と、前記把持装置の位置及び姿勢を制御する制御手段と、を備え、
前記制御手段は、前記幅検出値が入力されると前記挟持幅を減少させるように前記把持装置の位置及び姿勢の修正制御量を出力する修正手段を備え、
前記把持方法は、
基準位置及び基準姿勢の下で前記一対のクランプ爪を接近させ、前記筒体を仮把持する初期仮把持工程と、
前記仮把持した時の前記幅検出値を前記修正手段に入力して得られる前記修正制御量を用いて前記把持装置の位置及び姿勢を修正する修正工程と、
前記修正工程後の位置及び姿勢の下で前記一対のクランプ爪を接近させ、前記筒体を再度仮把持する再仮把持工程と、を備え、
前記幅検出値が閾値以下になるまで前記修正工程と前記再仮把持工程とを繰り返し実行することによって前記筒体を前記把持装置で把持することを特徴とする把持方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置推定方法及び把持方法に関する。より詳しくは、筒体を把持する把持システムを用いて、この筒体の一方の端部の端部位置座標を推定する位置推定方法と、筒体の端部位置座標を推定できるような態様で筒体を把持する筒体の把持方法に関する。
【背景技術】
【０００２】
車両のエンジンは、エンジンマウントと呼称される骨組みを介して車体に取り付けられる。またエンジンとエンジンマウントとの間には、エンジンの振動を抑制するため、筒状のエンジンダンパが取り付けられる。このエンジンダンパは、例えば、基端部をエンジンマウントに係止させ、先端部をボルトでエンジンに対し締結固定することによって取り付けられる。
【０００３】
車両の製造工程において、このようなエンジンダンパのエンジンへの取り付けは、エンジンダンパを把持しこれをエンジンに対し所定の位置に位置決めして配置するダンパ把持ロボットと、ダンパ把持ロボットによって位置決めされたエンジンダンパをボルトで締結する締付ロボットと、を用いて行われる。なお、ダンパ把持ロボットによるエンジンダンパの位置決めには誤差があることから、その先端部の位置はダンパ把持ロボットによる作業の度に若干異なっている。このため、締付ロボットによってボルトを締め付ける際には、位置決め後のエンジンダンパの先端部のボルト穴の位置や姿勢をその都度精度良く特定する必要がある。
【０００４】
例えば特許文献１には、画像処理によって物体の三次元における位置及び姿勢を検出する技術が示されている。特許文献１の技術では、穴は、正面から視ると円になることに着目し、カメラを用いて取得した物体の画像データから、円になりそうな点列部分を抽出し、この点列の位置データに基づいて物体の三次元における位置及び姿勢を検出する。したがってエンジンダンパのエンジンへの取り付けの際には、特許文献１の技術を利用してエンジンダンパの先端部のボルト穴の位置や姿勢を特定し、締付ロボットでは、特定した位置や姿勢に応じた適切な態様でボルトの締め付けを行わせることが考えられる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１０−３２６３４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら特許文献１の技術を利用した方法では、ダンパの先端部の画像を撮影するカメラに加えて、このカメラを移動させるロボット等が必要となり、その分だけコストが上昇するおそれがある。またこの方法では、締め付けの度にカメラを用いて画像を撮影し、さらに取得した画像データに画像処理を施す必要があるため、その分だけサイクルタイムが遅くなるおそれもある。
【０００７】
本発明は、既存の設備を生かしながら筒体の端部の位置を速やかに推定できる位置推定方法、及びその端部の位置を推定できるような態様で筒体を把持できる把持方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
（１）本発明の位置推定方法は、筒体を把持する把持システムを用いて、当該筒体の一方の端部の端部位置座標を推定する方法である。前記把持システムは、互いに最接近させたときにその把持中心軸と前記筒体の中心軸とを同軸にして把持する一対のクランプ爪及びこれらクランプ爪の挟持幅に応じた幅検出値を出力する挟持幅検出手段を備える把持装置と、前記把持装置の位置及び姿勢を制御する制御手段と、を備え、前記制御手段は、前記幅検出値が入力されると前記挟持幅を減少させるように前記把持装置の位置及び姿勢の修正制御量を出力する修正手段を備える。前記位置推定方法は、基準位置及び基準姿勢の下で前記一対のクランプ爪を接近させ、前記筒体を仮把持する初期仮把持工程と、前記仮把持した時の前記幅検出値を前記修正手段に入力して得られる前記修正制御量を用いて前記把持装置の位置及び姿勢を修正する修正工程と、前記修正工程後の位置及び姿勢の下で前記一対のクランプ爪を接近させ、前記筒体を再度仮把持する再仮把持工程と、前記修正工程と前記再仮把持工程とを繰り返し実行した後、前記幅検出値が閾値以下になったときの前記把持装置の位置及び姿勢と前記基準位置及び前記基準姿勢とのずれを用いて前記端部位置座標を推定する推定工程と、を備えることを特徴とする。
【０００９】
（２）この場合、前記修正手段において、前記幅検出値から前記修正制御量までの入出力特性は、強化学習によって構築されていることが好ましい。
【００１０】
（３）この場合、前記制御手段は、前記把持装置がそのアーム先端部に取り付けられたロボットと、当該ロボットを駆動することによって前記把持装置の位置及び姿勢を制御するロボットコントローラと、を備え、前記把持装置は、アクチュエータと、前記アクチュエータで発生した動力によって前記一対のクランプ爪を接近又は離間させる動力伝達機構と、当該動力伝達機構と前記アーム先端部との間に設けられた６軸の力覚センサと、を備え、前記修正手段は、前記幅検出値と前記力覚センサの検出値とを用いて前記挟持幅を減少させるように前記修正制御量を算出することが好ましい。
【００１１】
（４）本発明の把持方法は、把持システムを用いて筒体を把持する方法である。前記把持システムは、互いに最接近させたときにその把持中心軸と前記筒体の中心軸とを同軸にして把持する一対のクランプ爪及びこれらクランプ爪の挟持幅に応じた幅検出値を出力する挟持幅検出手段を備える把持装置と、前記把持装置の位置及び姿勢を制御する制御手段と、を備え、前記制御手段は、前記幅検出値が入力されると前記挟持幅を減少させるように前記把持装置の位置及び姿勢の修正制御量を出力する修正手段を備える。前記把持方法は、基準位置及び基準姿勢の下で前記一対のクランプ爪を接近させ、前記筒体を仮把持する初期仮把持工程と、前記仮把持した時の前記幅検出値を前記修正手段に入力して得られる前記修正制御量を用いて前記把持装置の位置及び姿勢を修正する修正工程と、前記修正工程後の位置及び姿勢の下で前記一対のクランプ爪を接近させ、前記筒体を再度仮把持する再仮把持工程と、を備え、前記幅検出値が閾値以下になるまで前記修正工程と前記再仮把持工程とを繰り返し実行することによって前記筒体を前記把持装置で把持する。
【発明の効果】
【００１２】
（１）本発明の位置推定方法では、互いに最接近させたときに、その把持中心軸と筒体の中心軸とを同軸にして把持する一対のクランプ爪及びこれらクランプ爪の挟持幅を検出する挟持幅検出手段を備える把持装置と、幅検出値が入力されるとクランプ爪の挟持幅を減少させるように把持装置の位置及び姿勢の修正制御量を出力する修正手段と、を用いて筒体の端部位置座標を推定する。
【００１３】
この位置推定方法は、初期把持工程と、修正工程と、再仮把持工程と、これら修正工程及び再把持工程を繰り返し行った後、端部位置座標を推定する推定工程と、を備える。始めに初期把持工程では、既知である基準位置及び基準姿勢の下でクランプ爪を互いに接近させ、これらクランプ爪で筒体を仮把持する。ここで、一対のクランプ爪には、これらを互いに最接近させたときに把持中心軸と筒体の中心軸とが同軸になるようなものを用いることから、基準位置及び基準姿勢における把持装置の把持中心軸と筒体の中心軸とが同軸でない場合には、クランプ爪を互いに接近させて仮把持すると、クランプ爪は互いに最接近する前にクランプ爪と筒体の側面とが当接する。このような仮把持の際、クランプ爪の挟持幅は、把持中心軸と筒体の中心軸とのずれの態様によって変化する。修正工程では、この仮把持した際における幅検出値を修正手段に入力することによって得られる修正制御量を用いて把持装置の位置及び姿勢を修正する。ここで修正手段は、幅検出値に応じてクランプ爪の挟持幅を減少させるような修正制御量を出力することから、これを用いることにより、把持装置の位置及び姿勢を、把持中心軸が筒体の中心軸に近づくように修正することができる。推定工程では、幅検出値が閾値以下になるまで、これら修正工程と再仮把持工程とを繰り返し実行する。上述のように仮把持する度に修正制御量を用いて把持装置の位置及び姿勢を修正することにより、把持中心軸と筒体の中心軸とが同軸になるような位置及び姿勢に把持装置を近づけることができる。また推定工程では、修正工程と再仮把持工程とを繰り返し実行し、幅検出値が閾値以下になったときの把持装置の位置及び姿勢、すなわち筒体をクランプ爪でほぼ同軸で仮把持できているときの把持装置の位置及び姿勢と既知である基準位置及び基準姿勢との間のずれを用いて筒体の端部位置座標を推定する。本発明によれば、筒体を把持する把持システムを流用して端部位置座標を推定することにより、別途カメラやロボットが不要となるので、既存の設備を生かして筒体の端部の位置を推定できる。また筒体をエンジンダンパとした場合、把持システムを用いてエンジンダンパを位置決めした直後に、引き続き本発明の位置推定方法を適用してエンジンダンパの端部位置座標を推定できるので、端部位置座標を速やかに推定できる。
【００１４】
（２）本発明の位置推定方法では、修正手段として幅検出値から修正制御量までの入出力特性を強化学習によって構築されたものを用いる。把持装置の把持中心軸と筒体の中心軸とのずれの態様は、並進ずれや傾斜ずれ等様々なずれが組み合わさっているため、幅検出値とこのずれの態様とは、常に一対一で対応しているわけではないので、幅検出値から常に最適な修正制御量の解を一意的に導出することはできない。本発明の位置推定方法では、その入出力特性が強化学習によって構築された修正手段を用いることにより、複数回の試行錯誤を経る必要はあるが、最終的には幅検出値を閾値以下にするような把持装置の位置及び姿勢を確実に導き出すことができる。
【００１５】
（３）本発明の位置推定方法では、把持装置として、アクチュエータで発生した動力によって一対のクランプ爪を接近又は離間させる動力伝達機構と、この動力伝達機構とロボットのアーム先端部との間に設けられた６軸の力覚センサと、を備えるものを用いる。また修正手段には、幅検出値と力覚センサの６つの検出値とを入力として、挟持幅を減少させるように修正制御量を算出するものを用いる。このように幅検出値に加えて力覚センサの６つの検出値を用いることにより、把持装置の把持中心軸と筒体の中心軸との実際のずれ態様を速やかに特定できるので、幅検出値を閾値以下にする把持装置の位置及び姿勢を速やかに導くことができ、また端部位置座標を速やかに推定することができる。
【００１６】
（４）本発明の把持方法では、互いに最接近させたときに、その把持中心軸と筒体の中心軸とを同軸にして把持する一対のクランプ爪及びこれらクランプ爪の挟持幅を検出する挟持幅検出手段を備える把持装置と、幅検出値が入力されるとクランプ爪の挟持幅を減少させるように把持装置の位置及び姿勢の修正制御量を出力する修正手段と、を用いて筒体を把持する。
【００１７】
この把持方法は、初期把持工程と、修正工程と、再仮把持工程と、を備え、幅検出値が閾値以下になるまでこれら修正工程及び再把持工程を繰り返し行うことによって、筒体を把持装置で把持する。本発明では、幅検出値が閾値以下になるまで修正工程及び再把持工程を繰り返し行うことにより、上記（１）の発明と同様の理由により、把持中心軸と筒体の中心軸とが同軸になるような位置及び姿勢で、換言すれば筒体の長さ等の既知の情報が与えられればその端部位置座標を推定できるような態様で筒体を把持装置で把持することができる。また本発明によれば、端部位置座標を推定できるようなほぼ一意的な態様で把持することにより、その端部位置座標を推定するに当たり別途カメラやロボットが不要となるので、既存の設備を生かして筒体の端部の位置を推定できる。
【図面の簡単な説明】
【００１８】
【図１】本発明の第１実施形態に係るエンジンダンパ取付システムの構成を示す図である。
【図２】把持ツールの構成を示す破断斜視図である。
【図３Ａ】２つのクランプ爪の平面図である。
【図３Ｂ】２つのクランプ爪を最接近させてエンジンダンパを把持している状態を示す図である。
【図４Ａ】Ｔ軸並進ずれを模式的に示す図である。
【図４Ｂ】Ｂ軸並進ずれを模式的に示す図である。
【図４Ｃ】Ｂ軸傾斜ずれを模式的に示す図である。
【図４Ｄ】Ｔ軸傾斜ずれを模式的に示す図である。
【図５Ａ】Ｂ−Ｔ並進複合ずれの大きさとチャック幅との関係を示す図である。
【図５Ｂ】Ｂ−Ｔ傾斜複合ずれの大きさとチャック幅との関係を示す図である。
【図６】把持ロボットコントローラの構成を模式的に示すブロック図である。
【図７】位置推定方法の具体的な手順を示すフローチャートである。
【図８】本発明の第２実施形態に係る把持ツールの構成を示す斜視図である。
【図９Ａ】Ｔ軸並進ずれを模式的に示す図である。
【図９Ｂ】Ｂ軸並進ずれを模式的に示す図である。
【図９Ｃ】Ｂ軸傾斜ずれを模式的に示す図である。
【図１０】本発明の第３実施形態に係るピン挿入システムの構成を示す図である。
【図１１】ピン把持ロボットコントローラの構成を模式的に示すブロック図である。
【図１２】把持方法の具体的な手順を示すフローチャートである。
【発明を実施するための形態】
【００１９】
＜第１実施形態＞
以下、本発明の第１実施形態について、図面を参照しながら詳細に説明する。
図１は、本実施形態に係る位置推定方法及び把持方法が適用されたエンジンダンパ取付システムＳの構成を示す図である。
【００２０】
エンジンダンパ取付システムＳは、車両用のエンジンと、このエンジンを支持するエンジンマウントとの間に、エンジンの振動を抑制するエンジンダンパ１を取り付ける。エンジンダンパ取付システムＳは、エンジンダンパ１を把持する把持ツール２と、この把持ツール２がそのアーム先端部３１に取り付けられたダンパ把持ロボット３と、これら把持ツール２及びダンパ把持ロボット３を制御する把持ロボットコントローラ５と、エンジンダンパ１の先端部１６をエンジンにボルトＢで固定するナットランナ６と、このナットランナ６がそのアーム先端部７１に取り付けられた締付ロボット７と、これらナットランナ６及び締付ロボット７を制御する締付ロボットコントローラ８と、を備える。
【００２１】
エンジンダンパ１は、全体形状が円筒状であり、ダンパ軸線Ｄに沿って延びる円筒状のピストンロッド１１と、このピストンロッド１１の基端部に設けられた図示しないピストンバルブをダンパ軸線Ｄに沿って摺動可能に収容する円筒状の外筒１２と、を備える。外筒１２の基端部１３には、図１中下方へ向けて凹状の凹部１５が形成された係止部１４が設けられている。ピストンロッド１１の先端部１６には、ピストンロッド１１と同軸のねじ穴１７が形成されている。
【００２２】
エンジンダンパ１は、図１に示すように、その基端部１３に形成された凹部１５をエンジンマウントに形成された凸部Ｍ１に係止させ、さらにその先端部１６をエンジンに形成されたダンパ取付部Ｅ１に位置合わせした状態（以下、この状態を「仮留め状態」ともいう）で、ボルトＢをこれらダンパ取付部Ｅ１及びねじ穴１７に挿通し、締結することによって、エンジンとエンジンマウントとの間に設けられる。
【００２３】
ナットランナ６は、締付ロボット７の多関節アーム７２のアーム先端部７１に固定されている。締付ロボットコントローラ８は、ダンパ把持ロボット３によってエンジンダンパ１が仮留めされた後、把持ロボットコントローラ５において後に図７等を参照して説明する位置推定方法を利用して推定されるエンジンダンパ１のねじ穴１７の位置情報を用いてナットランナ６の位置及び姿勢を制御しながら、ボルトＢをダンパ取付部Ｅ１及びねじ穴１７に締結固定する。
【００２４】
図２は、把持ツール２の構成を示す破断斜視図である。把持ツール２は、一対のクランプ板２１Ｌ，２１Ｒと、その回転軸２２ａを回転させるサーボモータ２２と、サーボモータ２２で発生した動力によって２つのクランプ板２１Ｌ，２１Ｒを互いに接近又は離間させる動力伝達機構２３と、動力伝達機構２３とアーム先端部とを接続する接続部材２４と、を備える。
【００２５】
サーボモータ２２は、把持ロボットコントローラ５から送信されるパルス信号に応じて回転軸２２ａを正転又は逆転させる。またサーボモータ２２には、図示しないエンコーダが設けられている。このエンコーダは、回転軸２２ａの角度に応じたモータパルス信号を発生し、把持ロボットコントローラ５へ送信する。またサーボモータ２２は、略Ｌ字状のステー２２ｂを介して接続部材２４の側面に接続されている。
【００２６】
動力伝達機構２３は、サーボモータ２２の回転軸２２ａと同軸で連結された第１ピニオンギヤ２３１と、この第１ピニオンギヤ２３１と噛合する第２ピニオンギヤ２３２と、この第２ピニオンギヤ２３２と噛合する第３ピニオンギヤ２３３と、これらピニオンギヤ２３１〜２３３を回転可能に収容するギヤボックス２３５と、を備える。図２では、ギヤボックス２３５の一部を破断して図示する。ギヤボックス２３５内において第３ピニオンギヤ２３３を、軸線ＬＢを中心として回転可能に支持する回転軸２３３ａの先端部は、この回転軸２３３ａに対し垂直延びるギヤボックス２３５のフロントカバー２３６から突出している。またこの回転軸２３３ａの先端部であってフロントカバー２３６の外側には、第４ピニオンギヤ２３４が第３ピニオンギヤ２３３と同軸に設けられている。
【００２７】
フロントカバー２３６のうち軸線ＬＢに対し図２中上方側及び下方側には、それぞれ棒状の上側スライドレール２３７Ｕ及び下側スライドレール２３７Ｄが互いに平行に設けられている。なお以下では、これらスライドレール２３７Ｕ，２３７Ｄの延在方向を、チャック方向ともいう。
【００２８】
またギヤボックス２３５のうち、フロントカバー２３６に対し反対側の裏面側は、立方体状の接続部材２４の先端面に、軸線ＬＢと同軸にして接続されている。またこの接続部材２４の基端面は、ダンパ把持ロボットのアーム先端部に、軸線ＬＢと同軸にして接続されている。すなわち、アーム先端部の軸線は、動力伝達機構２３の軸線ＬＢと同軸である。
【００２９】
クランプ板２１Ｒは、フロントカバー２３６と平行に延びる基端部２１１Ｒと、この基端部２１１Ｒからフロントカバー２３６に対し略垂直に延びる板状のクランプ爪２１２Ｒと、を備える。また基端部２１１Ｒには、上側スライドレール２３７Ｕと係合する溝と、この上側スライドレール２３７Ｕと平行に延びる棒状の上側ラックギヤ２１３Ｒと、が設けられている。図２に示すように、この上側ラックギヤ２１３Ｒは第４ピニオンギヤ２３４と噛合する。
【００３０】
またクランプ板２１Ｌは、クランプ板２１Ｒと同様に、フロントカバー２３６と平行に延びる基端部（図示せず）と、この基端部からフロントカバー２３６に対し略垂直に延びる板状のクランプ爪２１２Ｌと、を備える。またこのクランプ板２１Ｌの基端部には、下側スライドレール２３７Ｄと係合する溝と、この下側スライドレール２３７Ｄと平行に延びる棒状の下側ラックギヤ２１３Ｌと、が設けられている。図２に示すように、下側ラックギヤ２１３Ｌは、第４ピニオンギヤ２３４を挟んで上側ラックギヤ２１３Ｒと平行である。また下側ラックギヤ２１３Ｌは第４ピニオンギヤ２３４と噛合する。
【００３１】
またこれらクランプ板２１Ｌ，２１Ｒは、各々の基端部をスライドレール２３７Ｄ，２３７Ｕに係合させ、かつ各々のラックギヤ２１３Ｌ，２１３Ｒを第４ピニオンギヤ２３４に噛合させると、各クランプ爪２１２Ｌ，２１２Ｒは軸線ＬＢを挟んでチャック方向に沿って対向し、厚み方向に沿って面一になる。
【００３２】
以上のような把持ツール１では、図２に示す状態からサーボモータ２２によって回転軸２２ａを反転させると、この回転軸２２ａの回転角度に応じて第４ピニオンギヤ２３４が反転し、クランプ爪２１２Ｌ，２１２Ｒは、チャック方向に沿って互いに離間する。またサーボモータ２２によって回転軸２２ａを正転させると、この回転軸２２ａの回転角度に応じて第４ピニオンギヤ２３４が正転し、クランプ爪２１２Ｌ，２１２Ｒは、チャック方向に沿って互いに接近する。
【００３３】
図３Ａは、クランプ爪２１２Ｌ，２１２Ｒの、厚み方向に沿って視た平面図である。図３Ａに示すように、各クランプ爪２１２Ｌ，２１２Ｒは、平面視では、チャック方向ＣＤに対し垂直な長手方向ＬＤに沿って先端側へ延びる板状である。各クランプ爪２１２Ｌ，２１２Ｒのうち、把持ツールの軸線ＬＢに対向する内側端部２１４Ｌ，２１４Ｒには、それぞれ平面視で軸線ＬＢへ向けてＶ字状の左凹部２１５Ｌ及び右凹部２１５Ｒが形成されている。
【００３４】
左凹部２１５Ｌは、基端側から先端側へ向かって順に、左第１端部２１６Ｌと左第２端部２１７Ｌとを備える。これら端部２１６Ｌ，２１７Ｌは、それぞれ軸線ＬＢに対して所定の設定角度（本実施形態では、４５°の角度）で傾斜する端面を備える。なおこの左凹部２１５Ｌの設定角度は、４５°に限らず、１８０°よりも小さければよい。また右凹部２１５Ｒは、基端側から先端側へ向かって順に、右第１端部２１６Ｒと右第２端部２１７Ｒとを備える。これら端部２１６Ｒ，２１７Ｒは、それぞれ軸線ＬＢに対して所定の設定角度（本実施形態では、４５°の角度）で傾斜する端面を備える。なおこの右凹部２１５Ｒの設定角度も、４５°に限らず、１８０°よりも小さければよい。したがって図３Ａに示すように、左第１端部２１６Ｌの端面と右第２端部２１７Ｒの端面は平行であり、左第２端部２１７Ｌの端面と右第１端部２１６Ｒの端面は平行である。また以下では、クランプ爪２１２Ｌとクランプ爪２１２Ｒのチャック方向に沿った間隔、より具体的には、クランプ爪２１２Ｌの内側端部２１４Ｌのチャック方向ＣＤに対し垂直な端面と、クランプ爪２１２Ｒの内側端部２１４Ｒのチャック方向ＣＤに対し垂直な端面との間隔ΔＣＤを、チャック幅という。なお、サーボモータ２２におけるパルス値とチャック幅ΔＣＤとは比例関係にあることから、このチャック幅ΔＣＤは、サーボモータ２２に設けられたエンコーダのサーボパルス値から所定の演算式で算出することができる。
【００３５】
図３Ｂは、クランプ爪２１２Ｌ，２１２Ｒの間にエンジンダンパ１を設けた状態でこれらクランプ爪２１２Ｌ，２１２Ｒを最接近させ、チャック幅を最小にした状態を示す図である。図３Ｂに示すように、クランプ爪２１２Ｌ，２１２Ｒを互いに最接近させると、チャック幅は最小になり、またエンジンダンパ１の外周面は、クランプ爪２１２Ｌの端部２１６Ｌ，２１７Ｌ及びクランプ爪２１２Ｒの端部２１６Ｒ，２１７Ｒの計４点において接触する。なお、このようにクランプ爪２１２Ｌ，２１２Ｒを最接近させたときに実現される最小のチャック幅を、以下では最小チャック幅という。この場合、図３Ｂにおいて、白抜きの丸印で示すクランプ爪２１２Ｌ，２１２Ｒの把持中心軸ＬＨと、エンジンダンパ１のダンパ軸線Ｄとが同軸になる。換言すれば、クランプ爪２１２Ｌ，２１２Ｒは、各々を互いに最接近させると、エンジンダンパ１を中心で把持することができる。ここで把持中心軸ＬＨは、左凹部２１５Ｌの長手方向ＬＤ中央と、右凹部２１５Ｒの長手方向ＬＤ中央とを通過する軸線ＬＴと、軸線Ｄとが交差する点を中心点として、この中心点を通過するクランプ爪２１２Ｌ，２１２Ｒの厚み方向に沿って延びる線をいう。
【００３６】
なお以下の説明では、クランプ爪２１２Ｌ，２１２Ｒの姿勢を特徴付ける把持中心軸ＬＨ、軸線ＬＢ、及び軸線ＬＴを、それぞれＨ軸ＬＨ、Ｂ軸ＬＢ、及びＴ軸ＬＴともいう。
【００３７】
次に、図４Ａ〜図４Ｄを参照して、クランプ爪２１２Ｌ，２１２Ｒによるエンジンダンパ１の把持ずれの態様について説明する。ここで、クランプ爪２１２Ｌ，２１２ＲのＨ軸ＬＨとダンパ軸線Ｄとがずれていることにより、チャック幅が最小になっていない状態をいう。これら図４Ａ〜図４Ｄに示すように、クランプ爪２１２Ｌ，２１２Ｒによる把持ずれ態様は、Ｔ軸並進ずれと、Ｂ軸並進ずれと、Ｂ軸傾斜ずれと、Ｔ軸傾斜ずれと、の４種類のずれモードに分けられる。
【００３８】
図４Ａは、Ｔ軸並進ずれを模式的に示す図である。Ｔ軸並進ずれとは、図４Ａに示すように、Ｈ軸ＬＨがエンジンダンパ１のダンパ軸線ＤからＴ軸ＬＴに沿って所定距離だけずれた状態をいう。このＴ軸並進ずれは、Ｈ軸ＬＨとダンパ軸線ＤのＴ軸ＬＴに沿った距離ΔＴによって特徴付けられる。
【００３９】
図４Ｂは、Ｂ軸並進ずれを模式的に示す図である。Ｂ軸並進ずれとは、図４Ｂに示すように、Ｈ軸ＬＨがエンジンダンパ１のダンパ軸線ＤからＢ軸ＬＢに沿って所定距離だけずれた状態をいう。このＢ軸並進ずれは、Ｈ軸ＬＨとダンパ軸線ＤのＢ軸ＬＢに沿った距離ΔＢによって特徴付けられる。
【００４０】
図４Ｃは、Ｂ軸傾斜ずれを模式的に示す図である。Ｂ軸傾斜ずれとは、図４Ｃに示すように、Ｈ軸ＬＨがエンジンダンパ１のダンパ軸線ＤからＢ軸ＬＢに沿って視たときに所定角度だけ傾いた状態をいう。このＢ軸傾斜ずれは、Ｂ軸ＬＢに沿って視たときにＨ軸ＬＨとダンパ軸線Ｄとの成す角度Δθｂによって特徴付けられる。
【００４１】
図４Ｄは、Ｔ軸傾斜ずれを模式的に示す図である。Ｔ軸傾斜ずれとは、図４Ｄに示すように、Ｈ軸ＬＨがエンジンダンパ１のダンパ軸線ＤからＴ軸ＬＴに沿って視たときに所定角度だけ傾いた状態をいう。このＴ軸傾斜ずれは、Ｔ軸ＬＴに沿って視たときにＨ軸ＬＨとダンパ軸線Ｄとの成す角度Δθｔによって特徴付けられる。
【００４２】
なお、実際の把持ずれは、これら４種類の把持ずれモードを組み合わせて表現される。このため、実際の把持ずれは、２つの距離（ΔＴ，ΔＢ）と２つの角度（Δθｂ，Δθｔ）との４つの値によって特定される。
【００４３】
図５Ａは、Ｂ軸並進ずれとＴ軸並進ずれとを所定の割合で組み合わせて定義されるＢ−Ｔ並進複合ずれの大きさとチャック幅との関係を示す図である。図５Ｂは、Ｂ軸傾斜ずれとＴ軸傾斜ずれとを所定の割合で組み合わせて定義されるＢ−Ｔ傾斜複合ずれの大きさとチャック幅との関係を示す図である。これら図５Ａ及び図５Ｂに示す複合ずれの大きさとチャック幅との関係は、幾何学的な演算によって解析的に導出することができる。
【００４４】
チャック幅のみからは、実際に生じている把持ずれモードとその大きさを特定することはできないものの、これら図５Ａ及び図５Ｂに示すように、複合ずれが生じた場合であっても、どのような把持ずれが生じているかは、チャック幅からある程度は特定することができる。
【００４５】
図６は、把持ロボットコントローラ５の構成を模式的に示すブロック図である。
把持ロボットコントローラ５は、アーム制御部５１と、修正制御量演算部５２と、把持ずれ判定部５３と、先端位置推定部５４と、把持ツール制御部５５と、サーボアンプ５６と、を備え、これらを用いてダンパ把持ロボット３及び把持ツール２を制御する。
【００４６】
把持ツール制御部５５は、クランプ爪２１２Ｌ，２１２Ｒを接近させることによってクランプ爪２１２Ｌ，２１２Ｒでエンジンダンパ１を把持する際、又はクランプ爪２１２Ｌ，２１２Ｒを離間させることによってエンジンダンパ１を解放する際には、その時の状態に応じたトルク指令値を算出し、これをサーボモータ５６へ出力する。サーボアンプ５６は、把持ツール制御部５５から送信されるトルク指令値に応じて、これを実現するようなパルス信号を生成し、サーボモータ２２に入力し、サーボモータ２２を制御する。なお把持ツール制御部５５では、トルク指令値を、その最大値に対し２０％程度の小さな値に設定することにより、エンジンダンパ１の姿勢が大きく変化しないようにしながらクランプ爪２１２Ｌ，２１２Ｒをエンジンダンパ１に当接させる仮把持制御を行うことが可能となっている。
【００４７】
アーム制御部５１は、ダンパ把持ロボット３のアーム先端部３１に設けられた把持ツール２の位置及び姿勢に対してそれぞれ目標を設定し、この目標が実現するように制御信号を生成し、これをダンパ把持ロボット３へ入力することにより、把持ツール２の位置及び姿勢を制御する。またアーム制御部５１では、後に図７のフローチャートを参照して説明するように、把持ツール制御部５５によって仮把持制御を繰り返し行う場合には、把持ツール２の目標位置及び目標姿勢を、前回の仮把持制御の実行時に設定した目標位置及び目標姿勢から、修正制御量演算部５２によって算出される修正制御量に応じて修正した位置及び姿勢に設定する。
【００４８】
修正制御量演算部５２は、エンコーダ２２ｃから送信されるモータパルス信号を用いてクランプ爪２１２Ｌ，２１２Ｒのチャック幅を算出する。また修正制御量演算部５２は、算出したチャック幅を入力として、このチャック幅を減少させるように、すなわち上述の把持ずれを表す４つのパラメータ（ΔＴ，ΔＢ，Δθｂ，Δθｔ）が全て０へ向けて変化するように、把持ツール２の現在の位置及び姿勢からの修正制御量を算出する。このようなチャック幅から修正制御量までの入出力特性を有する修正制御量演算部５２は、例えば、Ｑ−ｌｅａｒｎｉｎｇや、モンテカルロ法等の既知の強化学習アルゴリズムを利用することにより構築される。
【００４９】
把持ずれ判定部５３は、エンコーダ２２ｃから送信されるモータパルス信号を用いてクランプ爪２１２Ｌ，２１２Ｒのチャック幅を算出する。また把持ずれ判定部５３は、算出したチャック幅が、最小チャック幅より僅かに大きな値に設定された閾値以下であるか否かを判定することにより、把持ずれがほぼ無くなったか否かを判定する。
【００５０】
先端位置推定部５４は、把持ずれ判定部５３によって把持ずれがほぼ無くなったと判定された時における把持ツールの位置及び姿勢と、既知である所定の基準位置及び基準姿勢とのずれを用いて、エンジンダンパ１の先端部１６に形成されたねじ穴１７の位置座標を推定し、推定した位置座標に関する情報を締付ロボットコントローラ８へ送信する。
【００５１】
図７は、以上のようなエンジンダンパ取付システムＳを用いたエンジンダンパ１のネジ穴１７の位置を推定する位置推定方法の具体的な手順を示すフローチャートである。
【００５２】
始めにＳ１では、把持ロボットコントローラ５は、ダンパ把持ロボット３及び把持ツール２を駆動し、エンジンダンパ１の基端部１３に形成された凹部１５をエンジンマウントに形成された凸部Ｍ１に係止させ、さらにその先端部１６に形成されたねじ穴１７をエンジンに形成されたダンパ取付部Ｅ１に位置合わせし、エンジンダンパ１を仮留め状態にしたのち、アーム先端部３１を規定の原点位置に復帰させる。
【００５３】
次にＳ２では、把持ロボットコントローラ５は、初期仮把持工程を実行する。この初期仮把持工程では、アーム制御部５１は、把持ツール２の目標位置及び目標姿勢を、エンジンダンパの近傍に予め定められた基準位置及び基準姿勢に設定するとともに、把持ツール２をこの目標位置及び目標姿勢に向けて制御する。その後、把持ツール制御部５５及びサーボアンプ５６は、この基準位置及び基準姿勢の下でクランプ爪２１２Ｌ，２１２Ｒを互いに接近させ、これらクランプ爪２１２Ｌ，２１２Ｒによってエンジンダンパ１を仮把持する仮把持制御を実行する。
【００５４】
次にＳ３では、把持ロボットコントローラ５は、位置姿勢修正工程を実行する。この位置姿勢修正工程では、始めに、修正制御量演算部５２は、今回の仮把持制御の実行時、より具体的には２つのクランプ爪２１２Ｌ，２１２Ｒの何れかがエンジンダンパ１に接触した時におけるモータパルス値からチャック幅を算出する。さらに修正制御量演算部５２は、算出した今回の仮把持制御実行時のチャック幅を入力として用いることによって、次回再度仮把持を実行した際におけるチャック幅が今回の仮把持実行時のチャック幅よりも減少するような把持ツールの位置及び姿勢に関する修正制御量を算出する。この修正制御量とは、今回の仮把持制御実行時の把持ツールの位置及び姿勢と、チャック幅を減少させる方向へ変化するであろうと思われる次回の仮把持制御実行時の把持ツールの位置及び姿勢とのずれを補う量に相当する。
【００５５】
続けてこの位置姿勢修正工程では、把持ツール制御部５５及びサーボアンプ５６は、クランプ爪２１２Ｌ，２１２Ｒを離間させる。次にアーム制御部５１は、修正制御量演算部５２において算出された修正制御量を用いて把持ツール２の目標位置及び目標姿勢を、今回の仮把持実行時のものから修正するとともに、把持ツール２をこの修正後の目標位置及び目標姿勢に向けて制御する。
【００５６】
次にＳ４では、把持ロボットコントローラ５は、再仮把持工程を実行する。この再仮把持工程では、把持ツール制御部５５及びサーボアンプ５６は、Ｓ３の位置姿勢修正工程によって修正された位置及び姿勢の下で再度仮把持制御を実行する。
【００５７】
次にＳ５では、把持ロボットコントローラ５は、把持ずれ判定工程を実行する。この把持ずれ判定工程では、把持ずれ判定部５３は、Ｓ４において仮把持を実行した時におけるモータパルス値から仮把持制御実行時におけるチャック幅を算出する。また把持ずれ判定部５３は、算出したチャック幅が、最小チャック幅よりも僅かに大きな値に設定された閾値以下であるか否かを判定する。Ｓ５の判定がＮＯである場合には、把持ロボットコントローラ５は、把持ずれが十分に小さくなっていないと判断し、Ｓ３に移り、位置姿勢修正工程及び再仮把持工程を再び実行する。またＳ５の判定がＹＥＳである場合には、把持ロボットコントローラ５は、把持ずれが十分に小さくなったと判断し、Ｓ６に移る。
【００５８】
次にＳ６では、把持ロボットコントローラ５は、位置推定工程を実行する。この位置推定工程では、先端位置推定部５４は、最後の仮把持制御の実行時における把持ツール２の位置及び姿勢と、最初に仮把持を実行した際における把持ツール２の位置及び姿勢である基準位置及び基準姿勢とのずれを算出し、さらにこのずれを用いることによってエンジンダンパ１の先端部１６に形成されたねじ穴１７の位置を推定する。なお、エンジンダンパ１の基端部１３に形成された凹部１５はエンジンマウントに形成された凸部Ｍ１に係止しているため、凹部１５の位置は既知である。またエンジンダンパ１の長さも既知である。よって把持ロボットコントローラ５は、これら既知の情報と上記ずれに関する情報とを用いることによって、ねじ穴１７の位置を推定することができる。また把持ロボットコントローラ５は、推定した位置情報を締付ロボットコントローラ８に送信する。
【００５９】
＜第２実施形態＞
次に、本発明の第２実施形態について、図面を参照しながら詳細に説明する。
本実施形態に係るエンジンダンパ取付システムＳＡは、上記第１実施形態に係るエンジンダンパ取付システムＳと、主に把持ツール２Ａの構成が異なる。なお以下の説明において、第１実施形態のエンジンダンパ取付システムＳと同じ構成については、同じ符号を付し、その詳細な説明を省略する。
【００６０】
図８は、把持ツール２Ａの構成を示す斜視図である。把持ツール２Ａは、クランプ板２１Ｌ，２１Ｒと、サーボモータ２２と、動力伝達機構２３と、接続部材２４と、に加えて、力覚センサ２５Ａと、接触センサ２６Ａと、をさらに備える点において、図２の把持ツール２と異なる。
【００６１】
力覚センサ２５Ａは、接続部材２４とギヤボックス２３５との間に、軸線ＬＢと同軸にして設けられている。この力覚センサ２５Ａは、３つの軸方向に沿った３つの力（Ｆｘ，Ｆｙ，Ｆｚ）と、これら３つの軸周りのモーメント（Ｍｘ，Ｍｙ，Ｍｚ）と、の計６つの力を検出し、検出値に応じた信号を把持ロボットコントローラ５Ａへ送信する。
【００６２】
接触センサ２６Ａは、ギヤボックス２３５の上面に、そのロッド２６１Ａを、軸線ＬＢと平行にして設けられている。接触センサ２６Ａは、把持ロボットコントローラ５Ａからの指令に応じてロッド２６１Ａをクランプ板２１Ｌ，２１Ｒ側へ前進させ、ロッド２６１Ａの先端部が物体に当接した場合には、クランプ板２１Ｌ，２１Ｒの間に物体が存在することを示す信号を把持ロボットコントローラ５Ａへ送信する。把持ロボットコントローラ５Ａでは、クランプ板２１Ｌ，２１Ｒによってエンジンダンパを把持する制御を行う際には、事前に接触センサ２６Ａを用いてエンジンダンパの存在を確認する。
【００６３】
ここで、力覚センサ２５Ａの出力と、把持ずれとの関係について説明する。
図９Ａは、Ｔ軸並進ずれを模式的に示す図である。図９Ａに示すように、Ｔ軸並進ずれが生じ、エンジンダンパ１が２つのクランプ爪２１２Ｌ，２１２Ｒのうち、左側のクランプ爪２１２Ｌのみと接触した場合、力覚センサ２５Ａでは、図９Ａに示すように、Ｘ軸周りに正のモーメントＭｘが検出される。またこれとは逆向きにＴ軸並進ずれが生じ、エンジンダンパ１が右側のクランプ爪２１２Ｒのみと接触した場合、力覚センサ２５Ａでは、Ｘ軸周りに負のモーメント−Ｍｘが検出される。
【００６４】
図９Ｂは、Ｂ軸並進ずれを模式的に示す図である。図９Ｂに示すように、Ｂ軸並進ずれが生じ、エンジンダンパ１が２つのクランプ爪２１２Ｌ，２１２Ｒに対し、左第２端部２１６Ｌ及び右第２端部２１６Ｒのみと接触した場合、力覚センサ２５Ａでは、Ｚ軸に沿って正の力Ｆｚが検出される。またこれとは逆向きにＢ軸並進ずれが生じ、エンジンダンパ１が左第１端部２１５Ｌ及び右第１端部２１５Ｒのみと接触した場合、力覚センサ２５Ａでは、Ｚ軸に沿って負の力−Ｆｚが検出される。
【００６５】
図９Ｃは、Ｂ軸傾斜ずれを模式的に示す図である。図９Ｃに示すように、Ｂ軸傾斜ずれが生じ、エンジンダンパ１が左側のクランプ爪２１２Ｌに対しては下面側でのみ接し、右側のクランプ爪２１２Ｒに対しては上面側でのみ接した場合、力覚センサ２５Ａでは、Ｚ軸周りに負のモーメント−Ｍｚが検出される。またこれとは逆向きにＢ軸傾斜ずれが生じ、エンジンダンパ１が左側のクランプ爪２１２Ｌに対しては上面側でのみ接し、右側のクランプ爪２１２Ｒに対しては下面側でのみ接した場合、力覚センサ２５Ａでは、Ｚ軸周りに正のモーメントＭｚが検出される。
【００６６】
以上のように、力覚センサ２５Ａの検出信号を用いれば、Ｂ軸並進ずれと、Ｔ軸並進ずれと、Ｂ軸傾斜ずれと、Ｔ軸傾斜ずれと、を切り分けて各々のずれ量を特定することができる。よって本実施形態の把持ロボットコントローラ５Ａの修正制御量演算部５２Ａでは、サーボモータ２２のエンコーダ（図示せず）から送信されるモータパルス信号に加えて、力覚センサ２５Ａの検出信号を入力として、チャック幅を減少させるように、すなわち把持ずれを表す４つのパラメータ（ΔＴ，ΔＢ，Δθｂ，Δθｔ）が全て０へ向けて変化するように、把持ツール２Ａの現在の位置及び姿勢からの修正制御量を算出する。このように、本実施形態の修正制御量演算部５２Ａでは、力覚センサ２５Ａの検出信号をさらに用いることにより、把持ずれを速やかに減少させるような適切な修正制御量を算出することができる。
【００６７】
＜第３実施形態＞
次に、本発明の第３実施形態について、図面を参照しながら詳細に説明する。
図１０は、本実施形態に係る把持方法が適用されたピン挿入システムＳＢの構成を示す図である。なお以下の説明では、第１実施形態におけるエンジンダンパ取付システムＳと同じ構成のものについては、同じ符号を付し、詳細な説明を省略する。
【００６８】
ピン挿入システムＳＢは、箱状のトレイＴ内に納められた複数のピン部材Ｐの中から１つを取り出し、これをワークＷに形成された穴部Ｗ１に挿入する。ピン挿入システムＳＢは、ピン部材Ｐを把持する把持ツール２Ｂと、この把持ツール２Ｂがそのアーム先端部３１Ｂに取り付けられたピン把持ロボット３Ｂと、これら把持ツール２Ｂ及びピン把持ロボット３Ｂを制御するピン把持ロボットコントローラ５Ｂと、を備える。
【００６９】
ピン部材Ｐは、全体形状が円筒状である。トレイＴには、複数のピン部材Ｐが、その位置や姿勢を揃えることなくランダムに納められている。またワークＷに形成されている穴部Ｗ１の内径は、ピン部材Ｐの外径よりも僅かに大きい。したがってピン部材Ｐを穴部Ｗ１に挿入するには、ピン部材Ｐの端部の位置を把握した上で、ピン部材Ｐと穴部Ｗ１とを同軸にして挿入する必要がある。
【００７０】
把持ツール２Ｂの構成は、図２を参照して説明した把持ツール２と同じである。すなわち把持ツール２Ｂは、一対のクランプ板２１Ｌ，２１Ｒと、サーボモータ２２と、動力伝達機構２３と、接続部材２４と、を備え、サーボモータ２２で発生した動力でクランプ板２１Ｌ，２１Ｒを互いに接近又は離間させることによってピン部材Ｐを把持したり解放したりする。
【００７１】
図１１は、ピン把持ロボットコントローラ５Ｂの構成を模式的に示すブロック図である。ピン把持ロボットコントローラ５Ｂは、アーム制御部５１Ｂと、修正制御量演算部５２Ｂと、最適把持判定部５３Ｂと、端部位置推定部５４Ｂと、把持ツール制御部５５Ｂと、サーボアンプ５６と、を備え、これらを用いてピン把持ロボット３Ｂ及び把持ツール２Ｂを制御する。
【００７２】
把持ツール制御部５５Ｂは、クランプ爪２１２Ｌ，２１２Ｒを接近させることによってクランプ爪２１２Ｌ，２１２Ｒでピン部材Ｐを把持する際、又はクランプ爪２１２Ｌ，２１２Ｒを離間させることによってピン部材Ｐを解放する際には、その時の状態に応じたトルク指令値を算出し、これをサーボモータ５６へ出力する。
【００７３】
アーム制御部５１Ｂは、ピン把持ロボット３Ｂのアーム先端部３１Ｂに設けられた把持ツール２Ｂの位置及び姿勢に対してそれぞれ目標を設定し、この目標が実現するように制御信号を生成し、これをピン把持ロボット３Ｂへ入力することにより、把持ツール２Ｂの位置及び姿勢を制御する。またアーム制御部５１Ｂでは、後に図１２のフローチャートを参照して説明するように、把持ツール制御部５５Ｂによって仮把持制御を繰り返し行う場合には、把持ツール２Ｂの目標位置及び目標姿勢を、前回の仮把持制御の実行時に設定した目標位置及び目標姿勢から、修正制御量演算部５２Ｂによって算出される修正制御量に応じて修正した位置及び姿勢に設定する。
【００７４】
修正制御量演算部５２Ｂは、エンコーダ２２ｃから送信されるモータパルス信号を用いてクランプ爪２１２Ｌ，２１２Ｒのチャック幅を算出する。また修正制御量演算部５２Ｂは、算出したチャック幅を入力として、このチャック幅を減少させるように、すなわちピン部材Ｐの把持ずれを表す４つのパラメータ（ΔＴ，ΔＢ，Δθｂ，Δθｔ）が全て０へ向けて変化するように、把持ツール２Ｂの現在の位置及び姿勢からの修正制御量を算出する。
【００７５】
最適把持判定部５３Ｂは、エンコーダ２２ｃから送信されるモータパルス信号を用いてクランプ爪２１２Ｌ，２１２Ｒのチャック幅を算出する。また最適把持判定部５３Ｂは、算出したチャック幅が、最小チャック幅より僅かに大きな値に設定された閾値以下であるか否かを判定することにより、ピン部材Ｐがクランプ爪２１２Ｌ，２１２Ｒによって最適把持状態で把持されたか否かを判定する。ここで最適把持状態とは、図３Ｂを参照して説明したように、クランプ爪２１２Ｌ，２１２Ｒがピン部材Ｐを中心で把持した状態をいう。ピン部材Ｐが最適把持状態で把持されていれば、ピン部材Ｐの長さや、クランプ爪２１２Ｌ，２１２Ｒによるピン部材Ｐの把持位置等、カメラやロボット等を用いずに得られる情報を用いて、クランプ爪２１２Ｌ，２１２Ｒによって把持されているピン部材Ｐの端部の位置を推定することができる。
【００７６】
端部位置推定部５４Ｂは、最適把持判定部５３Ｂによって最適把持状態で把持されたと判定された後、ピン部材Ｐの長さやピン部材Ｐの把持位置等の情報を用いてピン部材Ｐの端部の位置座標を推定する。
【００７７】
図１２は、以上のようなピン挿入システムＳＢを用いてピン部材Ｐを把持する把持方法と、この把持方法によって把持したピン部材ＰをワークＷの穴部Ｗ１に挿入する具体的な手順を示すフローチャートである。
【００７８】
始めにＳ１１では、ピン把持ロボットコントローラ５Ｂは、初期仮把持工程を実行する。この初期仮把持工程では、アーム制御部５１Ｂは、把持ツール２Ｂの目標位置及び目標姿勢をトレイＴ内に定められた基準位置及び基準姿勢に設定するとともに、把持ツール２Ｂをこの目標位置及び目標姿勢に向けて制御する。その後、把持ツール制御部５５Ｂ及びサーボアンプ５６は、この基準位置及び基準姿勢の下でクランプ爪２１２Ｌ，２１２Ｒを互いに接近させ、これらクランプ爪２１Ｌ，２１ＲによってトレイＴ内のピン部材Ｐを仮把持する仮把持制御を実行する。
【００７９】
次にＳ１２では、ピン把持ロボットコントローラ５Ｂは、位置姿勢修正工程を実行する。この位置姿勢修正工程では、始めに、修正制御量演算部５２Ｂは、今回の仮把持制御の実行時におけるモータパルス値からチャック幅を算出する。さらに修正制御量演算部５２Ｂは、算出した今回の仮把持制御の実行時のチャック幅を入力として用いることによって、次回再度仮把持を実行した際におけるチャック幅が今回の仮把持実行時のチャック幅よりも減少するような把持ツール位置及び姿勢に関する修正制御量を算出する。この修正制御量とは、今回の仮把持制御実行時の把持ツールの位置及び姿勢と、チャック幅を減少させる方向へ変化するであろうと思われる次回の仮把持制御実行時の把持ツールの位置及び姿勢とのずれを補う量に相当する。
【００８０】
続けてこの位置姿勢修正工程では、把持ツール制御部５５Ｂ及びサーボアンプ５６は、クランプ爪２１２Ｌ，２１２Ｒを離間させる。次にアーム制御部５１Ｂは、修正制御量演算部５２Ｂにおいて算出された修正制御量を用いて把持ツール２の目標位置及び目標姿勢を、今回の仮把持実行時のものから修正するとともに、把持ツール２をこの修正後の目標位置及び目標姿勢に向けて制御する。
【００８１】
次にＳ１３では、ピン把持ロボットコントローラ５Ｂは、再仮把持工程を実行する。この再仮把持工程では、把持ツール制御部５５Ｂ及びサーボアンプ５６は、Ｓ１２の位置姿勢修正工程によって修正された位置及び姿勢の下で再度仮把持制御を実行する。
【００８２】
次にＳ１４では、ピン把持ロボットコントローラ５Ｂは、把持ずれ判定工程を実行する。この把持ずれ判定工程では、最適把持判定部５３Ｂは、Ｓ１３において仮把持を実行した時におけるモータパルス値から仮把持制御実行時におけるチャック幅を算出する。また最適把持判定部５３Ｂは、算出したチャック幅が、最小チャックよりも僅かに大きな値に設定された閾値以下であるか否かを判定する。Ｓ１４の判定がＮＯである場合には、ピン把持ロボットコントローラ５Ｂは、把持ずれが十分に小さくなっていないと判断し、Ｓ１２に移り、位置姿勢修正工程及び再仮把持工程を再び実行する。またＳ１４の判定がＹＥＳである場合には、ピン把持ロボットコントローラ５Ｂは、把持ずれが十分に小さくなり、従ってピン部材Ｐが把持ツール２Ｂによって最適把持状態で把持されたと判断し、Ｓ１５に移る。
【００８３】
次にＳ１５では、ピン把持ロボットコントローラ５Ｂは、位置推定工程を実行する。この位置推定工程では、端部位置推定部５４Ｂは、最適把持状態で把持されているピン部材Ｐの端部の位置を推定する。次にＳ１６では、ピン把持ロボットコントローラ５Ｂは、先に推定したピン部材Ｐの端部の位置に関する情報を用いることによって、把持しているピン部材ＰをワークＷに形成された穴部Ｗ１に挿入する。
【００８４】
以上、本発明の一実施形態について説明したが、本発明はこれに限らない。
【符号の説明】
【００８５】
Ｓ…エンジンダンパ取付システム（把持システム）
１…エンジンダンパ（筒体）
１６…先端部（一方の端部）
１７…ねじ穴
２，２Ａ…把持ツール（把持装置）
２１２Ｌ，２１２Ｒ…クランプ爪（クランプ爪）
２２…サーボモータ（アクチュエータ）
２２ｃ…エンコーダ（挟持幅検出手段）
２５Ａ…力覚センサ
３…ダンパ把持ロボット
５，５Ａ…把持ロボットコントローラ（制御手段）
５２，５２Ａ…修正制御量演算部（修正手段）
【図１】
2018167366.tif 000003
【図２】
2018167366.tif 000004
【図３Ａ】
2018167366.tif 000005
【図３Ｂ】
2018167366.tif 000006
【図４Ａ】
2018167366.tif 000007
【図４Ｂ】
2018167366.tif 000008
【図４Ｃ】
2018167366.tif 000009
【図４Ｄ】
2018167366.tif 000010
【図５Ａ】
2018167366.tif 000011
【図５Ｂ】
2018167366.tif 000012
【図６】
2018167366.tif 000013
【図７】
2018167366.tif 000014
【図８】
2018167366.tif 000015
【図９Ａ】
2018167366.tif 000016
【図９Ｂ】
2018167366.tif 000017
【図９Ｃ】
2018167366.tif 000018
【図１０】
2018167366.tif 000019
【図１１】
2018167366.tif 000020
【図１２】
2018167366.tif 000021