(57)【要約】【課題】把持対象の位置を検出することができるロボットを提供すること。【解決手段】ロボットは、ハンドと、前記ハンドを制御する制御部と、を含み、前記制御部は、前記ハンドにより把持対象を把持し、前記把持対象を含む撮像画像に基づいて前記把持対象の位置を検出する。【選択図】図４
2015226963.tif 000002
【特許請求の範囲】
【請求項１】
ハンドと、
前記ハンドを制御する制御部と、
を含み、
前記制御部は、前記ハンドにより把持対象を把持し、前記把持対象を含む撮像画像に基づいて前記把持対象の位置を検出する、
ロボット。
【請求項２】
請求項１に記載のロボットであって、
前記制御部は、検出された前記把持対象の位置に基づいて、前記把持対象の位置と前記ハンドの位置との相対位置を表す位置状態が所定の位置状態であるか否かを判定する、
ロボット。
【請求項３】
請求項２に記載のロボットであって、
前記制御部は、前記把持対象に作業部材を取り付け、前記作業部材を含む撮像画像に基づいて前記作業部材の取付状態を判定する、
ロボット。
【請求項４】
請求項３に記載のロボットであって、
前記制御部は、前記位置状態が、前記所定の位置状態であると判定した場合、前記取り付けを行い、前記取付状態を判定する、
ロボット。
【請求項５】
請求項３又は請求項４に記載のロボットであって、
前記制御部は、前記位置状態が、前記所定の位置状態ではないと判定し、且つ前記所定の位置状態からのずれが所定範囲内であると判定した場合、前記取り付けを行い、前記取付状態を判定する、
ロボット。
【請求項６】
請求項５に記載のロボットであって、
前記制御部は、前記位置状態が、前記所定の位置状態ではないと判定し、且つ前記所定の位置状態からのずれが所定範囲内ではないと判定した場合、前記把持対象を把持し直す、
ロボット。
【請求項７】
請求項３から６のうちいずれか一項に記載のロボットであって、
前記制御部は、前記作業部材が所定の取付状態で取り付けられたか否かを判定する、
ロボット。
【請求項８】
請求項３から７のうちいずれか一項に記載のロボットであって、
前記把持対象の先端に前記作業部材が磁力によって磁着する、
ロボット。
【請求項９】
請求項３から８のうちいずれか一項に記載のロボットであって、
前記制御部は、２以上の方向からそれぞれの方向毎に撮像された前記撮像画像に基づいて前記作業部材の取付状態を判定する、
ロボット。
【請求項１０】
請求項３から９のうちいずれか一項に記載のロボットであって、
前記制御部は、パターンマッチングにより前記撮像画像に基づいて前記把持対象の前記位置状態を判定する、
ロボット。
【請求項１１】
請求項３から９のうちいずれか一項、又は請求項３を引用する請求項１０に記載のロボットであって、
前記制御部は、パターンマッチングにより前記撮像画像に基づいて前記作業部材の取付状態を判定する、
ロボット。
【請求項１２】
請求項３から１１のうちいずれか一項に記載のロボットであって、
前記制御部は、前記位置状態を判定した結果に応じて前記ハンドを動かす、
ロボット。
【請求項１３】
請求項３から１２のうちいずれか一項に記載のロボットであって、
前記制御部は、前記取付状態を判定した結果に応じて前記ハンドを動かす、
ロボット。
【請求項１４】
請求項７と、請求項７を引用する請求項８から１３のうちいずれか一項に記載のロボットであって、
前記制御部は、前記作業部材が前記所定の取付状態で取り付けられていないと判定した場合、前記ハンドの動作を停止させる、
ロボット。
【請求項１５】
把持対象を把持するハンドを備えるロボットと、
前記把持対象を含む撮像画像を撮像する撮像部と、
を含み、
前記ロボットは、前記ハンドにより把持対象を把持し、前記把持対象を含む撮像画像に基づいて前記把持対象の位置を検出する、
ロボットシステム。
【請求項１６】
把持対象を把持するハンドを備えるロボットを動作させる制御装置であって、
前記ハンドにより把持対象を把持させ、前記把持対象を含む撮像画像に基づいて前記把持対象の位置を検出する、
制御装置。
【請求項１７】
把持対象を把持するハンドを備えるロボットを動作させる制御方法であって、
前記ハンドにより把持対象を把持させ、前記把持対象を含む撮像画像に基づいて前記把持対象の位置を検出する、
制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ロボット、ロボットシステム、制御装置、及び制御方法に関する。
【背景技術】
【０００２】
ロボットに道具を用いた作業を行わせることが研究・開発されている。
【０００３】
これに関連し、ロボットのアームに前記の道具としてエンドエフェクターを直接接続することが提案されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−３５３９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のロボットでは、ハンドで把持対象を把持した場合、把持する際に生じる誤差によって予め決められた把持対象の把持位置を把持できない場合があり、その結果、ハンドと把持対象の所定位置との間の相対位置に誤差が生じ、把持対象による作業に失敗する場合がある。また、従来のロボットは、前記の失敗により把持対象によって行う作業に前記の誤差が影響する場合がある。
【０００６】
より具体的には、従来のロボットは、例えば、ドライバーを把持する際、ドライバーに予め決められた把持位置からずれた位置を把持してしまうと、ドライバーの先端によってネジを作業部材として取り付け、取り付けられたネジを所定の位置に締め付けるような時に、ネジの取り付けに失敗してしまう場合がある。
【０００７】
そこで本発明は、上記従来技術の問題に鑑みてなされたものであり、把持対象の把持の成否を判定することができるロボット、ロボットシステム、制御装置、及び制御方法を提供する。
【課題を解決するための手段】
【０００８】
本発明の一態様は、ハンドと、前記ハンドを制御する制御部と、を含み、前記制御部は、前記ハンドにより把持対象を把持し、前記把持対象を含む撮像画像に基づいて前記把持対象の把持状態を判定する、ロボットである。
この構成により、ロボットは、ハンドにより把持対象を把持し、把持対象を含む撮像画像に基づいて把持対象の位置を検出する。これにより、ロボットは、把持対象の把持の成否を判定することができる。
【０００９】
また、本発明の他の態様は、ロボットにおいて、前記制御部は、検出された前記把持対象の位置に基づいて、前記把持対象の位置と前記ハンドの位置との相対位置を表す位置状態が所定の位置状態であるか否かを判定するための位置状態判定処理を行う、構成が用いられてもよい。
この構成により、ロボットは、検出された把持対象の位置に基づいて、把持対象の位置とハンドの位置との相対位置を表す位置状態が所定の位置状態であるか否かを判定する。これにより、ロボットは、位置状態に応じた動作を実現することができる。
【００１０】
また、本発明の他の態様は、ロボットにおいて、前記把持対象に作業部材を取り付け、前記作業部材を含む撮像画像に基づいて前記作業部材の取付状態を判定する、構成が用いられてもよい。
この構成により、ロボットは、把持対象に作業部材を取り付け、作業部材を含む撮像画像に基づいて作業部材の取付状態を判定する。これにより、ロボットは、作業部材の取付状態に応じた動作を実現することができる。
【００１１】
また、本発明の他の態様は、ロボットにおいて、前記制御部は、前記位置状態が、前記所定の位置状態であると判定した場合、前記取り付けを行い、前記取付状態を判定する、構成が用いられてもよい。
この構成により、ロボットは、位置状態が、所定の位置状態であると判定した場合、把持対象に作業部材を取り付け、取付状態を判定する。これにより、ロボットは、把持対象を把持する際に生じる誤差を抑制しつつ、例えば、次の作業として前記の取り付けを行うことができる。
【００１２】
また、本発明の他の態様は、ロボットにおいて、前記制御部は、前記位置状態が、前記所定の位置状態ではないと判定し、且つ前記所定の位置状態からのずれが所定範囲内であると判定した場合、前記取り付けを行い、前記取付状態を判定する、構成が用いられてもよい。
この構成により、ロボットは、位置状態が、所定の位置状態ではないと判定し、且つ所定の位置状態からのずれが所定範囲内であると判定した場合、把持対象に作業部材を取り付け、取付状態を判定する。これにより、ロボットは、把持対象を把持する際に生じる誤差を、所定範囲内に抑制しつつ、例えば、次の作業として前記の取り付けを行うことができる。
【００１３】
また、本発明の他の態様は、ロボットにおいて、前記制御部は、前記位置状態が、前記所定の位置状態ではないと判定し、且つ前記所定の位置状態からのずれが所定範囲内ではないと判定した場合、前記把持対象を把持し直す、構成が用いられてもよい。
この構成により、ロボットは、位置状態が、所定の位置状態ではないと判定し、且つ所定の位置状態からのずれが所定範囲内ではないと判定した場合、把持対象を把持し直す。これにより、ロボットは、把持対象を把持する際に生じる誤差が大きい場合、把持対象を把持し直してから、例えば、次の作業として前記の取り付けを行うことができる。
【００１４】
また、本発明の他の態様は、ロボットにおいて、前記制御部は、前記作業部材が所定の取付状態で取り付けられたか否かを判定する、構成が用いられてもよい。
この構成により、ロボットは、作業部材が所定の取付状態で取り付けられたか否かを判定する。これにより、ロボットは、作業部材が所定の取付状態で取り付けられた場合と、所定の取付状態で取り付けられていない場合とで、異なる動作を行うことができる。
【００１５】
また、本発明の他の態様は、ロボットにおいて、把持対象の先端に作業部材が磁力によって磁着する、構成が用いられてもよい。
この構成により、ロボットは、把持対象の先端の磁力により作業部材が把持対象の先端に取り付けられ、その取付状態を判定する。これにより、ロボットは、把持対象の先端の磁力による作業部材の取付状態に応じた動作を行うことができる。
【００１６】
また、本発明の他の態様は、ロボットにおいて、前記制御部は、２以上の方向からそれぞれの方向毎に撮像された前記撮像画像に基づいて前記作業部材の取付状態を判定する、
構成が用いられてもよい。
この構成により、ロボットは、２以上の方向からそれぞれの方向毎に撮像された撮像画像に基づいて作業部材の取付状態を判定する。これにより、ロボットは、作業部材の取付状態を誤判定してしまうことを抑制することができる。
【００１７】
また、本発明の他の態様は、ロボットにおいて、前記制御部は、パターンマッチングにより前記撮像画像に基づいて前記把持対象の前記位置状態を判定する、構成が用いられてもよい。
この構成により、ロボットは、パターンマッチングにより撮像画像に基づいて把持対象の位置状態を判定する。これにより、ロボットは、パターンマッチングを用いて把持対象の位置状態を判定することができる。
【００１８】
また、本発明の他の態様は、ロボットにおいて、前記制御部は、パターンマッチングにより前記撮像画像に基づいて前記作業部材の取付状態を判定する、構成が用いられてもよい。
この構成により、ロボットは、パターンマッチングにより撮像画像に基づいて作業部材の取付状態を判定する。これにより、ロボットは、パターンマッチングを用いて作業部材の取付状態を判定することができる。
【００１９】
また、本発明の他の態様は、ロボットにおいて、前記制御部は、前記位置状態を判定した結果に応じて前記ハンドを動かす、構成が用いられてもよい。
この構成により、ロボットは、位置状態を判定した結果に応じてハンドを動かす。これにより、ロボットは、把持対象の位置状態に応じたハンドの動作を実現させることができる。
【００２０】
また、本発明の他の態様は、ロボットにおいて、前記制御部は、前記取付状態を判定した結果に応じて前記ハンドを動かす、構成が用いられてもよい。
この構成により、ロボットは、作業部材の取付状態を判定した結果に応じてハンドを動かす。これにより、ロボットは、作業部材の取付状態に応じたハンドの動作を実現させることができる。
【００２１】
また、本発明の他の態様は、ロボットにおいて、前記制御部は、前記作業部材が前記所定の取付状態で取り付けられていないと判定した場合、前記ハンドの動作を停止させる、構成が用いられてもよい。
この構成により、ロボットは、作業部材が所定の取付状態で取り付けられていないと判定した場合、ハンドの動作を停止させる。これにより、ロボットは、例えば、作業部材の取り付けに失敗した場合であっても、ユーザーがハンドの動作を止める必要が無い。
【００２２】
また、本発明の他の態様は、把持対象を把持するハンドを備えるロボットと、前記把持対象を含む撮像画像を撮像する撮像部と、を含み、前記ロボットは、前記ハンドにより把持対象を把持し、前記把持対象を含む撮像画像に基づいて前記把持対象の位置を検出する、ロボットシステムである。
この構成により、ロボットシステムは、ハンドにより把持対象を把持し、把持対象を含む撮像画像に基づいて把持対象の位置を検出する。これにより、ロボットシステムは、把持対象の把持の成否を判定することができる。
【００２３】
また、本発明の他の態様は、把持対象を把持するハンドを備えるロボットを動作させる制御装置であって、前記ハンドにより把持対象を把持させ、前記把持対象を含む撮像画像に基づいて前記把持対象の位置を検出する、制御装置である。
この構成により、制御装置は、ハンドにより把持対象を把持させ、把持対象を含む撮像画像に基づいて把持対象の位置を検出する。これにより、制御装置は、把持対象の把持の成否を判定することができる。
【００２４】
また、本発明の他の態様は、把持対象を把持するハンドを備えるロボットを動作させる制御方法であって、ハンドにより把持対象を把持させ、把持対象を含む撮像画像に基づいて把持対象の位置を検出する、制御方法である。
この構成により、制御方法は、ハンドにより把持対象を把持させ、把持対象を含む撮像画像に基づいて把持対象の位置を検出する。これにより、制御方法は、把持対象の把持の成否を判定することができる。
【００２５】
以上により、ロボット、ロボットシステム、制御装置、及び制御方法は、ハンドにより把持対象を把持し、把持対象を含む撮像画像に基づいて把持対象の位置を検出する。これにより、ロボットは、把持対象の把持の成否を判定することができる。
【図面の簡単な説明】
【００２６】
【図１】本実施形態に係るロボットシステム１の構成を示す図である。
【図２】第２動撮像部２２によって第２動撮像画像が撮像される様子の一例を示す図である。
【図３】制御装置３０のハードウェア構成の一例を示す図である。
【図４】制御装置３０の機能構成の一例を示す図である。
【図５】制御装置３０が電動ドライバーＴをロボット２０に把持させてから、取付ミスが起きているか否かの判定結果に基づいた動作を行うまでの処理の流れの一例を示すフローチャートである。
【図６】取付ミスが起きていない状態と、取付ミスが起きた状態とをそれぞれ例示する図である。
【発明を実施するための形態】
【００２７】
＜実施形態＞
以下、本発明の実施形態について、図面を参照して説明する。図１は、本実施形態に係るロボットシステム１の構成を示す図である。ロボットシステム１は、４つの撮像部（第１固定撮像部１１、第２固定撮像部１２、第１動撮像部２１、第２動撮像部２２）を備えるロボット２０と、制御装置３０を具備する。
【００２８】
ロボットシステム１は、第１固定撮像部１１と第２固定撮像部１２により、ロボット２０が作業を行う範囲を撮像する。ここで、ロボットシステム１は、第１固定撮像部１１と第２固定撮像部１２により前記の撮像を行う。ロボットシステム１は、第１固定撮像部１１と第２固定撮像部１２により撮像された撮像画像に基づいて、ロボット２０により第１物体と、ネジ止めされることによって第１物体に組み付けられる第２物体とを重ねて配置する。また、ロボットシステム１は、前記の配置を行う際、第１物体のネジ穴と第２物体のネジ穴とが、ネジ穴の直上から直下に見たときに一致するように治具（図１に示した一例では、テーブル形状の治具）上に重ねて配置する。以下では、この時のネジ穴の位置を所定のネジ締め位置と称して説明する。
【００２９】
第１物体と第２物体を前記の治具上に配置した後、ロボットシステム１は、第１固定撮像部１１と第２固定撮像部１２により撮像された撮像画像から、電動ドライバーＴが設置された位置を検出し、検出された位置に基づいて電動ドライバーＴをロボット２０に把持させる。ロボットシステム１は、ロボット２０に電動ドライバーＴを把持させた後、第１動撮像部２１により撮像された撮像画像と第２動撮像部２２により撮像された撮像画像とのうちいずれか一方によって把持部（電動ドライバーＴを把持している把持部ＨＮＤ１又は把持部ＨＮＤ２のうちいずれか一方）に予め決められた位置（以下、把持部の位置と称する）と、電動ドライバーＴの先端ＳＣの位置とを検出する。
【００３０】
そして、ロボットシステム１は、前記の把持部の位置と電動ドライバーＴの先端ＳＣの位置との間の相対位置の状態（以下、電動ドライバーＴの位置状態と称する）が適正な相対位置を実現している位置状態（以下、適正位置状態と称する）であるか否かを判定する。前記の適正な相対位置とは、把持部ＨＮＤ１又は把持部ＨＮＤ２のうち電動ドライバーＴを把持している一方の位置と電動ドライバーＴの先端ＳＣの位置との相対位置であって、把持部ＨＮＤ１又は把持部ＨＮＤ２のうち電動ドライバーＴを把持している一方が電動ドライバーＴに予め決められた把持位置を把持した時において実現する相対位置を示す。
【００３１】
ロボットシステム１は、電動ドライバーＴの位置状態が適正位置状態であると判定した時、ロボット２０により把持された電動ドライバーＴによって給材装置ＳＢからネジＯを電動ドライバーＴの先端ＳＣに給材する。ここで、電動ドライバーＴの先端ＳＣに給材するとは、電動ドライバーＴの先端ＳＣにネジＯを吸着させることを意味する。具体的には、電動ドライバーＴの先端ＳＣにネジＯを給材することには、電動ドライバーＴの先端ＳＣにネジＯを磁着する、エアーを用いて電動ドライバーＴの先端ＳＣにネジＯを吸着する等、既存の技術で採用可能なあらゆる形態が含まれる。本実施形態では、その一例として電動ドライバーＴの先端ＳＣにネジＯを磁着するものについて説明する。また、以下では、電動ドライバーＴの先端ＳＣにネジＯを磁着することを、電動ドライバーＴの先端ＳＣにネジＯを取り付けると称して説明する。
【００３２】
また、ロボットシステム１は、電動ドライバーＴの位置状態が適正位置状態ではないと判定した場合、電動ドライバーＴの位置状態が適正位置状態の時における電動ドライバーＴの先端ＳＣと把持部の位置との相対位置（以下、適正位置と称する）と、現在の位置状態における電動ドライバーＴの先端ＳＣと把持部の位置との相対位置（以下、不適正位置と称する）との差が所定範囲内であるか否かを判定する。
【００３３】
ロボットシステム１は、前記の判定の結果、適正位置と不適正位置の差が所定範囲内であると判定した場合、ロボット２０により把持された電動ドライバーＴによって給材装置ＳＢからネジＯを電動ドライバーＴの先端ＳＣに取り付けるとする。一方、前記の判定の結果、適正位置と不適正位置の差が所定範囲内ではないと判定した場合、ロボット２０に所定動作を行わせる。所定動作とは、例えば、電動ドライバーＴを初期位置に戻し、電動ドライバーＴを把持し直す動作や、ロボット２０の動作を停止させる等である。以下では、説明の便宜上、所定動作は、電動ドライバーＴを初期位置に戻し、電動ドライバーＴを把持し直す動作であるとして説明する。給材装置ＳＢとは、図１に示した位置ＳＰＰからネジＯが除材されるたびに、内部に格納されたネジＯを位置ＳＰＰに配置する装置である。
【００３４】
ロボットシステム１は、電動ドライバーＴの先端ＳＣにネジＯが取り付けられた後、第１動撮像部２１により撮像された撮像画像と第２動撮像部２２により撮像された撮像画像とのうちいずれか一方によって電動ドライバーＴの先端ＳＣに取り付けられたネジＯの状態（以下、取付状態と称する）が適切な状態であるか否かを判定する。
【００３５】
適切な状態とは、例えば、電動ドライバーＴの先端ＳＣの先端が、ネジＯのネジ頭に設けられた凹部に嵌め込まれ、且つ電動ドライバーＴの長手方向に延伸する中心軸と、ネジＯがネジ締めにより進行する方向に延伸する中心軸とが重なることで、電動ドライバーＴによってネジＯを締め付けることが可能な状態であるが、これに限られず、他の何らかの状態であってもよい。なお、前記の適切な状態を含むネジＯの電動ドライバーＴの先端ＳＣにおける取り付けられた後の状態は、それぞれ取付状態の一例である。また、前記の適切な状態は、所定の状態の一例である。
【００３６】
ロボットシステム１は、前記の判定の結果、ネジＯが適切な状態で取り付けられていない（取付ミス）と判定した場合、取付ミスに基づく動作を行う。取付ミスに基づく動作とは、例えば、電動ドライバーＴを所定の待機位置に移動させた後に停止する動作や、電動ドライバーＴからネジＯを除材し、給材装置ＳＢから改めてネジＯを取り付け直す動作等である。一方、ロボットシステム１は、前記の判定の結果、ネジＯが適切な状態で取り付けられたと判定した場合、例えば、電動ドライバーＴに取り付けられたネジＯを所定のネジ締め位置まで移動させ、ネジ締めを行う。以下では、ロボット２０により第１物体と第２物体が重ねて配置された後においてロボットシステム１により行われる動作について説明する。
【００３７】
なお、ロボットシステム１では、ロボット２０が電動ドライバーＴを把持している構成であるとしたが、これに代えて、他の何らかの人間が使用可能な道具（工具）であってもよく、他の何らかのロボット専用の道具であってもよい。人間が使用可能な道具とは、例えば、ラチェットハンドルやスパナ等である。前記の道具がラチェットハンドルの場合、取り付ける部材はネジＯに代えて、ラチェットソケット等であり、前記の道具がスパナの場合、取り付ける部材はネジＯに代えて、ボルトやナット等となる。また、ロボット専用の道具とは、ロボットのマニピュレーターにエンドエフェクターとして備えられた電動ドライバー等である。電動ドライバーＴ（すなわち、前記の道具）は、把持対象の一例である。また、ネジＯ（すなわち、前記の取り付ける部材）は、作業部材の一例である。
【００３８】
ロボット２０は、撮像部１０と、第１動撮像部２１と、第２動撮像部２２と、力センサー２３と、把持部ＨＮＤ１と、把持部ＨＮＤ２と、マニピュレーターＭＮＰ１と、マニピュレーターＭＮＰ２と、図示しない複数のアクチュエーターを備えた双腕ロボットである。双腕ロボットとは、把持部ＨＮＤ１とマニピュレーターＭＮＰ１によって構成される腕（以下、第１腕と称する）と、把持部ＨＮＤ２とマニピュレーターＭＮＰ２によって構成される腕（以下、第２腕と称する）との２本の腕を有するロボットを示す。
【００３９】
なお、ロボット２０は、双腕ロボットに代えて、単腕ロボットであってもよい。単腕ロボットとは、１本の腕を有するロボットを示し、例えば、前記した第１腕と第２腕のうちいずれか一方を有するロボットを示す。また、ロボット２０は、さらに制御装置３０を内蔵し、内蔵された制御装置３０により制御される。なお、ロボット２０は、制御装置３０を内蔵する構成代えて、外部に設置された制御装置３０により制御される構成であってもよい。
【００４０】
第１腕は、それぞれが６軸垂直多関節型となっており、支持台とマニピュレーターＭＮＰ１と把持部ＨＮＤ１とがアクチュエーターによる連携した動作よって６軸の自由度の動作を行うことができる。また、第１腕は、第１動撮像部２１と、力センサー２３を備える。
第１動撮像部２１は、例えば、集光された光を電気信号に変換する撮像素子であるＣＣＤ（Charge  Coupled  Device）やＣＭＯＳ（Complementary  Metal  Oxide  Semiconductor）等を備えたカメラである。
【００４１】
第１動撮像部２１は、ケーブルによって制御装置３０と通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット（登録商標）やＵＳＢ（Universal  Serial  Bus）等の規格によって行われる。なお、第１動撮像部２１と制御装置３０とは、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によって接続される構成であってもよい。
【００４２】
第１動撮像部２１は、図１に示したように第１腕を構成するマニピュレーターＭＮＰ１の一部に備えられており、第１腕の動きによって移動することが可能である。第１動撮像部２１は、把持部ＨＮＤ２により電動ドライバーＴが把持されている場合、把持部ＨＮＤ２と、把持部ＨＮＤ２により把持された電動ドライバーＴとを含む範囲の静止画像を第１動撮像画像として撮像する。また、第１動撮像部２１は、把持部ＨＮＤ２により電動ドライバーＴが把持されている場合、把持部ＨＮＤ２により把持された電動ドライバーＴと、前記の電動ドライバーＴの先端ＳＣに取り付けられたネジＯとを含む範囲の静止画像を第１動撮像画像として撮像する。なお、第１動撮像部２１は、静止画像を第１動撮像画像として撮像する構成であるとするが、これに代えて、動画像を第１動撮像画像として撮像する構成であってもよい。
【００４３】
第１腕に備えられた力センサー２３は、第１腕の把持部ＨＮＤ１とマニピュレーターＭＮＰ１との間に備えられている。力センサー２３は、把持部ＨＮＤ１（あるいは、把持部ＨＮＤ１に把持された電動ドライバーＴ）に作用した力やモーメントを検出する。力センサー２３は、検出した力やモーメントを示す情報を、通信により制御装置３０へ出力する。力センサー２３により検出された力やモーメントを示す情報は、例えば、制御装置３０によるロボット２０のコンプライアントモーション制御に用いられる。
【００４４】
第２腕は、それぞれが６軸垂直多関節型となっており、支持台とマニピュレーターＭＮＰ２と把持部ＨＮＤ２とがアクチュエーターによる連携した動作よって６軸の自由度の動作を行うことができる。また、第２腕は、第２動撮像部２２と、力センサー２３を備える。
第２動撮像部２２は、例えば、集光された光を電気信号に変換する撮像素子であるＣＣＤやＣＭＯＳ等を備えたカメラである。
【００４５】
第２動撮像部２２は、ケーブルによって制御装置３０と通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット（登録商標）やＵＳＢ等の規格によって行われる。なお、第２動撮像部２２と制御装置３０とは、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によって接続される構成であってもよい。
【００４６】
第２動撮像部２２は、図１に示したように第２腕を構成するマニピュレーターＭＮＰ２の一部に備えられており、第２腕の動きによって移動することが可能である。第２動撮像部２２は、把持部ＨＮＤ１により電動ドライバーＴが把持されている場合、把持部ＨＮＤ１と、把持部ＨＮＤ１により把持された電動ドライバーＴとを含む範囲の静止画像を第２動撮像画像として撮像する。また、第２動撮像部２２は、把持部ＨＮＤ１により電動ドライバーＴが把持されている場合、把持部ＨＮＤ１により把持された電動ドライバーＴと、前記の電動ドライバーＴの先端ＳＣに取り付けられたネジＯとを含む範囲の静止画像を第２動撮像画像として撮像する。なお、第２動撮像部２２は、静止画像を第２動撮像画像として撮像する構成であるとするが、これに代えて、動画像を第２動撮像画像として撮像する構成であってもよい。第２動撮像画像は、撮像画像の一例である。
【００４７】
第２腕に備えられた力センサー２３は、第２腕の把持部ＨＮＤ２とマニピュレーターＭＮＰ２との間に備えられている。力センサー２３は、把持部ＨＮＤ２（あるいは、把持部ＨＮＤ２に把持された電動ドライバーＴ）に作用した力やモーメントを検出する。力センサー２３は、検出した力やモーメントを示す情報を、通信により制御装置３０へ出力する。力センサー２３により検出された力やモーメントを示す情報は、例えば、制御装置３０によるロボット２０のコンプライアントモーション制御に用いられる。
【００４８】
なお、第１腕と第２腕はそれぞれ、５自由度（５軸）以下で動作するものであってもよく、７自由度（７軸）以上で動作するものであってもよい。以下では、第１腕と第２腕によって行われるロボット２０の動作について説明する。また、ロボット２０の把持部ＨＮＤ１及び把持部ＨＮＤ２は、物体を把持可能な爪部を備える。これにより、ロボット２０は、把持部ＨＮＤ１と把持部ＨＮＤ２のうちいずれか一方又は両方によって電動ドライバーＴを把持することができる。
【００４９】
撮像部１０は、第１固定撮像部１１と、第２固定撮像部１２を備え、これら２台の撮像部によって構成されるステレオ撮像部である。なお、撮像部１０は、２台の撮像部によって構成されるのに代えて、３台以上の撮像部によって構成されてもよく、１台のカメラにより二次元画像を撮像する構成であってもよい。本実施形態において、撮像部１０は、図１に示したようにロボット２０の一部としてロボット２０の頭頂部に設置されているが、これに代えて、ロボット２０とは別体としてロボット２０と異なる位置に設置される構成であってもよい。
【００５０】
第１固定撮像部１１は、例えば、集光された光を電気信号に変換する撮像素子であるＣＣＤやＣＭＯＳ等を備えたカメラである。第１固定撮像部１１は、ケーブルによって制御装置３０と通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット（登録商標）やＵＳＢ等の規格によって行われる。なお、第１固定撮像部１１と制御装置３０とは、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によって接続される構成であってもよい。
【００５１】
第１固定撮像部１１は、ロボット２０が作業を行う範囲として給材装置ＳＢを含む範囲（以下、作業領域と称する）を撮像可能な位置に設置されている。以下では、第１固定撮像部１１により撮像される静止画像を第１固定撮像画像と称して説明する。なお、第１固定撮像部１１は、静止画像を第１固定撮像画像として撮像する構成であるとするが、これに代えて、動画像を第１固定撮像画像として撮像する構成であってもよい。
【００５２】
第２固定撮像部１２は、例えば、集光された光を電気信号に変換する撮像素子であるＣＣＤやＣＭＯＳ等を備えたカメラである。第２固定撮像部１２は、ケーブルによって制御装置３０と通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット（登録商標）やＵＳＢ等の規格によって行われる。なお、第２固定撮像部１２と制御装置３０とは、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によって接続される構成であってもよい。
【００５３】
第２固定撮像部１２は、第１固定撮像部１１と同様の撮像範囲（作業領域）を撮像可能な位置に設置されている。以下では、第２固定撮像部１２により撮像される静止画像を第２固定撮像画像と称して説明する。なお、第２固定撮像部１２は、静止画像を第２固定撮像画像として撮像する構成であるとするが、これに代えて、動画像を第２固定撮像画像として撮像する構成であってもよい。以下では、説明の便宜上、第１固定撮像画像と第２固定撮像画像をまとめてステレオ撮像画像と称して説明する。
【００５４】
ロボット２０は、例えば、ロボット２０に内蔵されている制御装置３０とケーブルによって通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット（登録商標）やＵＳＢ等の規格によって行われる。なお、ロボット２０と制御装置３０とは、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によって接続されてもよい。
【００５５】
本実施形態において、ロボット２０は、ロボット２０に内蔵された制御装置３０から制御信号を取得し、取得した制御信号に基づいて、ロボット２０の把持部ＨＮＤ１により把持された電動ドライバーＴに給材装置ＳＢからネジＯを取り付けるものとして説明する。そして、ロボット２０は、電動ドライバーＴによるネジＯの取り付けに失敗した場合、前述した取付ミスに基づく動作を行う。
【００５６】
なお、以下の説明において、第１腕が行う動作は、第２腕によって行われてもよく、第２腕が行う動作は、第１腕によって行われてもよい。換言すると、ロボット２０は、把持部ＨＮＤ１により電動ドライバーＴが把持される構成に代えて、把持部ＨＮＤ２により電動ドライバーＴが把持される構成であってもよい。この場合、第１腕と第２腕が行う動作は、以下の説明において入れ替わるとする。
【００５７】
制御装置３０は、撮像部１０により作業領域が撮像されたステレオ撮像画像に基づいて電動ドライバーＴが設置された位置を検出し、検出された位置に基づいて電動ドライバーＴをロボット２０の第１腕の把持部ＨＮＤ１により把持させる。制御装置３０は、第１腕の把持部ＨＮＤ１に電動ドライバーＴを把持させた後、把持部ＨＮＤ１により電動ドライバーＴを、電動ドライバーＴの先端ＳＣの位置状態を判定するための所定の位置状態判定位置に移動させる。そして、制御装置３０は、第２腕の第２動撮像部２２により把持部ＨＮＤ１により把持された電動ドライバーＴと、把持部ＨＮＤ１を含む範囲の静止画像を第２動撮像画像として撮像するようにロボット２０を制御する。
【００５８】
制御装置３０は、第２動撮像画像に基づいて、把持部ＨＮＤ１の位置と、電動ドライバーＴの先端ＳＣの位置とを検出する。そして、制御装置３０は、検出された把持部ＨＮＤ１の位置と、電動ドライバーＴの先端ＳＣの位置とに基づいて、電動ドライバーＴの位置状態を判定する。制御装置３０は、前記の判定の結果、電動ドライバーＴの位置状態が適正位置状態であると判定した場合、又は電動ドライバーＴの位置状態が適正位置状態ではない場合であって適正位置と不適正位置の差が所定範囲内であると判定した場合、電動ドライバーＴによって給材装置ＳＢからネジＯを電動ドライバーＴの先端ＳＣに取り付けるようにロボット２０を制御する。制御装置３０は、前記の判定の結果、電動ドライバーＴの位置状態が適正位置状態ではない場合であって適正位置と不適正位置の差が所定範囲内ではないと判定した場合、電動ドライバーＴを初期位置に戻し、電動ドライバーＴを把持し直すようにロボット２０を制御する。
【００５９】
以下では、制御装置３０が、前記の判定の結果、電動ドライバーＴの位置状態が適正位置状態であると判定した場合、又は電動ドライバーＴの位置状態が適正位置状態ではない場合であって適正位置と不適正位置の差が所定範囲内であると判定した場合として説明する。制御装置３０は、撮像部１０により撮像されたステレオ撮像画像に基づいて、給材装置ＳＢの位置を検出する。なお、制御装置３０は、ステレオ撮像画像に基づいて給材装置ＳＢの位置を検出する構成に代えて、第１固定撮像画像と第２固定撮像画像のうちいずれか一方に基づいて給材装置ＳＢの位置を検出する構成であってもよい。また、制御装置３０は、作業領域が撮像された第１動撮像画像と第２動撮像画像のうちいずれか一方又は両方に基づいて給材装置ＳＢの位置を検出する構成であってもよい。
【００６０】
制御装置３０は、検出された給材装置ＳＢの位置に基づいて第１腕の把持部ＨＮＤ１により把持された電動ドライバーＴの先端ＳＣにネジＯを取り付けるようにロボット２０を制御する。そして、電動ドライバーＴの先端ＳＣによってネジＯが取り付けられた後、制御装置３０は、第２腕の第２動撮像部２２により把持部ＨＮＤ１により把持された電動ドライバーＴと、電動ドライバーＴの先端ＳＣに吸着されたネジＯとを含む範囲の静止画像を第２動撮像画像として撮像するようにロボット２０を制御する。
【００６１】
ここで、図２を参照して、第２動撮像部２２による第２動撮像画像の撮像について説明する。図２は、第２動撮像部２２によって第２動撮像画像が撮像される様子の一例を示す図である。制御装置３０は、電動ドライバーＴの先端ＳＣによってネジＯが取り付けられた後、把持部ＨＮＤ１によりネジＯが先端ＳＣに取り付けられた電動ドライバーＴを所定の撮像位置に移動させるようにロボット２０を制御する。そして、制御装置３０は、把持部ＨＮＤ１により把持された電動ドライバーＴと、電動ドライバーＴの先端ＳＣに吸着されたネジＯとを含む範囲を、第１方向Ｃ１と、第１方向Ｃ１とは異なる第２方向Ｃ２との２方向から第２動撮像部２２により撮像する。
【００６２】
このように、第１方向Ｃ１と第２方向Ｃ２の２方向から第２動撮像画像をそれぞれ撮像することにより、制御装置３０は、取付ミスが起こっている状態を取付ミスが起こっていない状態であると誤判定してしまうことを抑制することができる。なお、制御装置３０は、第１方向Ｃ１と第２方向Ｃ２を含む３以上の方向から第２動撮像画像を撮像する構成であってもよく、第１方向Ｃ１と第２方向Ｃ２のうちいずれかの１方向のみから第２動撮像画像を撮像する構成であってもよい。また、制御装置３０は、第２腕（すなわち、第２動撮像部２２）の位置を固定し、第１腕を動かす（すなわち、電動ドライバーＴを動かす）ことで第１方向Ｃ１と第２方向Ｃ２のうちいずれか一方又は両方から第２動撮像部２２により第２動撮像画像を撮像する構成であってもよい。
【００６３】
また、本実施形態において、制御装置３０は、第２動撮像部２２により撮像された第２動撮像画像に基づいて電動ドライバーＴの位置状態を判定する際、１方向から電動ドライバーＴと把持部ＨＮＤ１を含む範囲が撮像された第２動撮像画像に基づいて把持部ＨＮＤ１の位置と、電動ドライバーＴの先端ＳＣの位置とを検出する構成であるとするが、これに代えて、図２において説明した取付状態を判定する場合と同様に、第２動撮像部２２に２以上の方向のそれぞれから電動ドライバーＴと把持部ＨＮＤ１を含む範囲の第２動撮像画像を撮像させ、２以上の方向からそれぞれ撮像された第２動撮像画像に基づいて把持部ＨＮＤ１の位置と、電動ドライバーＴの先端ＳＣの位置とを検出する構成であってもよい。
【００６４】
制御装置３０は、第２動撮像画像（この一例において、２方向からそれぞれ１枚ずつ撮像された２枚の第２動撮像画像）に基づいて、電動ドライバーＴの先端ＳＣによって適切な状態でネジＯが取り付けられたか否かを判定する。制御装置３０は、前記の判定の結果、ネジＯが適切な状態で取り付けられていないと判定した場合、取付ミスに基づく動作を行うようにロボット２０を制御する。
【００６５】
なお、制御装置３０は、撮像部１０により撮像されたステレオ撮像画像（又は第１固定撮像画像と第２固定撮像画像とのうちいずれか一方）に基づいて、把持部ＨＮＤ１の位置と、電動ドライバーＴの先端ＳＣの位置とを検出する構成であってもよい。その場合、制御装置３０は、電動ドライバーＴが把持部ＨＮＤ１により把持された後に把持部ＨＮＤ１により電動ドライバーＴを移動させる位置状態判定位置は、把持部ＨＮＤ１により把持された電動ドライバーＴと、把持部ＨＮＤ１とを含む範囲が撮像部１０により撮像可能な位置となる。
【００６６】
また、制御装置３０は、撮像部１０により撮像されたステレオ撮像画像に基づいて、電動ドライバーＴの先端ＳＣに適切な状態でネジＯが取り付けられたか否かを判定する構成であってもよい。その場合、制御装置３０は、電動ドライバーＴの先端ＳＣにネジＯが取り付けられた後に、把持部ＨＮＤ１によりネジＯが先端ＳＣに取り付けられた電動ドライバーＴを移動させる所定の撮像位置は、把持部ＨＮＤ１により把持された電動ドライバーＴと、電動ドライバーＴの先端ＳＣに吸着されたネジＯとを含む範囲が撮像部１０により撮像可能な位置となる。
【００６７】
一方、制御装置３０は、前記の判定の結果、ネジＯが適切な状態で取り付けられたと判定した場合、例えば、電動ドライバーＴの先端ＳＣに取り付けられたネジＯを所定のネジ締め位置まで移動させ、ネジ締めを行うようにロボット２０を制御する。なお、制御装置３０は、例えば、ビジュアルサーボとコンプライアントモーション制御によって給材装置ＳＢやネジＯを破壊しないように給材装置ＳＢからネジＯを電動ドライバーＴに取り付ける動作や、ネジＯのネジ締め等の動作を行う構成であるとするが、これに代えて、コンプライアントモーション制御を行わない構成であってもよく、ビジュアルサーボ以外の他の何らかの方法によってロボット２０を制御する構成であってもよい。また、把持部ＨＮＤ１と把持部ＨＮＤ２のうちいずれか一方又は両方は、ハンドの一例である。
【００６８】
次に、図３を参照して、制御装置３０のハードウェア構成について説明する。図３は、制御装置３０のハードウェア構成の一例を示す図である。制御装置３０は、例えば、ＣＰＵ（Central  Processing  Unit）３１と、記憶部３２と、入力受付部３３と、通信部３４を備え、通信部３４を介してロボット２０と通信を行う。これらの構成要素は、バスＢｕｓを介して相互に通信可能に接続されている。ＣＰＵ３１は、記憶部３２に格納された各種プログラムを実行する。
【００６９】
記憶部３２は、例えば、ＨＤＤ（Hard  Disk  Drive）やＳＳＤ（Solid  State  Drive）、ＥＥＰＲＯＭ（Electrically  Erasable  Programmable  Read−Only  Memory）、ＲＯＭ（Read−Only  Memory）、ＲＡＭ（Random  Access  Memory）などを含み、制御装置３０が処理する各種情報や画像、プログラムを格納する。なお、記憶部３２は、制御装置３０に内蔵されるものに代えて、ＵＳＢ等のデジタル入出力ポート等によって接続された外付け型の記憶装置でもよい。
【００７０】
入力受付部３３は、例えば、キーボードやマウス、タッチパッド、その他の入力装置である。なお、入力受付部３３は、表示部として機能してもよく、さらに、タッチパネルとして構成されてもよい。
通信部３４は、例えば、ＵＳＢ等のデジタル入出力ポートやイーサネットポート等を含んで構成される。
【００７１】
次に、図４を参照することで、制御装置３０の機能構成について説明する。図４は、制御装置３０の機能構成の一例を示す図である。制御装置３０は、記憶部３２と、画像取得部３５と、制御部３６を備える。制御部３６が備える機能部のうち一部又は全部は、例えば、ＣＰＵ３１が、記憶部３２に記憶された各種プログラムを実行することで実現される。また、これらの機能部のうち一部または全部は、ＬＳＩ（Large  Scale  Integration）やＡＳＩＣ（Application  Specific  Integrated  Circuit）等のハードウェア機能部であってもよい。
【００７２】
画像取得部３５は、ロボット２０から撮像部１０により撮像されたステレオ撮像画像を取得する。画像取得部３５は、取得されたステレオ撮像画像を制御部３６に出力する。また、画像取得部３５は、ロボット２０から第１動撮像部２１により撮像された第１動撮像画像を取得する。画像取得部３５は、取得された第１動撮像画像を制御部３６に出力する。また、画像取得部３５は、ロボット２０から第２動撮像部２２により撮像された第２動撮像画像を取得する。画像取得部３５は、取得された第２動撮像画像を制御部３６に出力する。
【００７３】
制御部３６は、撮像制御部４１と、検出部４３と、判定部４５と、ロボット制御部４７を備える。
撮像制御部４１は、ステレオ撮像画像を撮像するように撮像部１０を制御する。より具体的には、撮像制御部４１は、第１固定撮像画像を撮像するように第１固定撮像部１１を制御し、第２固定撮像画像を撮像するように第２固定撮像部１２を制御する。また、撮像制御部４１は、第１動撮像画像を撮像するように第１動撮像部２１を制御する。また、撮像制御部４１は、第２動撮像画像を撮像するように第２動撮像部２２を制御する。
【００７４】
検出部４３は、画像取得部３５により取得されたステレオ撮像画像に基づいて、電動ドライバーＴが設置された位置を検出する。より具体的には、検出部４３は、記憶部３２により記憶された電動ドライバーＴの画像（撮像画像やＣＧ（Computer  Graphics）等）を読み込み、読み込まれた電動ドライバーＴの画像に基づいたパターンマッチングによって前記のステレオ撮像画像から電動ドライバーＴの位置を検出する。
【００７５】
また、検出部４３は、画像取得部３５により取得された第１動撮像画像又は第２動撮像画像に基づいて、把持部ＨＮＤ１又は把持部ＨＮＤ２の位置と、電動ドライバーＴの先端ＳＣの位置とを検出する。より具体的には、検出部４３は、記憶部３２により記憶された把持部ＨＮＤ１又は把持部ＨＮＤ２と電動ドライバーＴとを含む画像（撮像画像やＣＧ等）を読み込み、前記の画像に基づいたパターンマッチングによって把持部ＨＮＤ１又は把持部ＨＮＤ２の位置と、電動ドライバーＴの先端ＳＣの位置とを検出する。なお、検出部４３は、第１動撮像画像又は第２動撮像画像に基づいて把持部ＨＮＤ１又は把持部ＨＮＤ２の位置と、電動ドライバーＴの先端ＳＣの位置とを検出する構成に代えて、第１固定撮像画像と第２固定撮像画像のうちいずれか一方又は両方に基づいて、把持部ＨＮＤ１又は把持部ＨＮＤ２の位置と、電動ドライバーＴの先端ＳＣの位置とを検出する構成であってもよい。
【００７６】
また、検出部４３は、画像取得部３５により取得されたステレオ撮像画像に基づいて、給材装置ＳＢの位置を検出する。より具体的には、検出部４３は、記憶部３２により記憶された給材装置ＳＢの画像（撮像画像やＣＧ等）を読み込み、読み込まれた給材装置ＳＢの画像に基づいたパターンマッチングによって前記のステレオ撮像画像から給材装置ＳＢの位置を検出する。なお、検出部４３は、ステレオ撮像画像に基づいて給材装置ＳＢの位置を検出する構成に代えて、第１固定撮像画像と第２固定撮像画像のうちいずれか一方に基づいて給材装置ＳＢの位置を検出する構成であってもよい。また、検出部４３は、作業領域が撮像された第１動撮像画像と第２動撮像画像のうちいずれか一方又は両方に基づいて給材装置ＳＢの位置を検出する構成であってもよい。
【００７７】
なお、検出部４３は、パターンマッチングによって電動ドライバーＴや給材装置ＳＢの位置を検出する構成に代えて、例えば、予め記憶部３２に記憶された電動ドライバーＴや給材装置ＳＢの位置を読み込む構成であってもよく、給材装置ＳＢに貼付されたマーカー等によって電動ドライバーＴや給材装置ＳＢの位置をステレオ撮像画像から検出する構成等、他の何らかの方法で給材装置ＳＢを検出する構成であってもよく、電動ドライバーＴと給材装置ＳＢをそれぞれ異なる方法で検出する構成であってもよい。
【００７８】
検出部４３は、記憶部３２により記憶された情報であって給材装置ＳＢの位置からネジＯまでの相対的な位置を示すネジ位置情報を読み込み、読み込まれたネジ位置情報に基づいて、ネジＯの位置を検出（算出）する。なお、検出部４３は、給材装置ＳＢの位置を検出し、検出された給材装置ＳＢの位置に基づいてネジＯの位置を検出する構成に代えて、給材装置ＳＢの位置を介さずにパターンマッチング等によってネジＯをステレオ撮像画像から検出する構成であってもよい。この場合、検出部４３は、給材装置ＳＢの位置を把握することなく、ステレオ撮像画像からネジＯの位置を検出する。
【００７９】
判定部４５は、電動ドライバーＴが把持部ＨＮＤ１に把持されている場合、検出部４３により検出された把持部ＨＮＤ１の位置と、電動ドライバーＴの先端ＳＣの位置とに基づいて、電動ドライバーＴの位置状態を判定する。また、判定部４５は、電動ドライバーＴが把持部ＨＮＤ２に把持されている場合、検出部４３により検出された把持部ＨＮＤ２の位置と、電動ドライバーＴの先端ＳＣの位置とに基づいて、電動ドライバーＴの位置状態を判定する。また、判定部４５は、電動ドライバーＴの位置状態の判定によって、電動ドライバーＴの位置状態が適正位置状態ではないと判定した場合、前述した適正位置と不適正位置の間の差が所定範囲内であるか否かを判定する。
【００８０】
判定部４５は、電動ドライバーＴが把持部ＨＮＤ２に把持されている場合、第１方向Ｃ１から撮像された第１動撮像画像及び第２方向Ｃ２から撮像された第１動撮像画像に基づいて、電動ドライバーＴの先端ＳＣに適切な状態でネジＯが取り付けられたか否か（すなわち、取付ミスが起きているか否か）を判定する。また、判定部４５は、図１に示したように電動ドライバーＴが把持部ＨＮＤ１に把持されている場合、第１方向Ｃ１から撮像された第２動撮像画像及び第２方向Ｃ２から撮像された第２動撮像画像に基づいて、取付ミスが起きているか否かを判定する。
【００８１】
ロボット制御部４７は、検出部４３により検出された電動ドライバーＴが設置された位置に基づいて、例えば、ビジュアルサーボ等により電動ドライバーＴを把持部ＨＮＤ１又は把持部ＨＮＤ２が把持するようにロボット２０を制御する。ロボット制御部４７は、電動ドライバーＴが把持部ＨＮＤ１又は把持部ＨＮＤ２により把持された後、把持部ＨＮＤ１又は把持部ＨＮＤ２により電動ドライバーＴを位置状態判定位置まで移動するようにロボット２０を制御する。
【００８２】
ロボット制御部４７は、前記の判定の結果、電動ドライバーＴの位置状態が適正位置状態であると判定した場合、又は電動ドライバーＴの位置状態が適正位置状態ではない場合であって適正位置と不適正位置の差が所定範囲内であると判定した場合、電動ドライバーＴによって給材装置ＳＢからネジＯを電動ドライバーＴの先端ＳＣに取り付けるようにロボット２０を制御する。ロボット制御部４７は、前記の判定の結果、電動ドライバーＴの位置状態が適正位置状態ではない場合であって適正位置と不適正位置の差が所定範囲内ではないと判定した場合、電動ドライバーＴを初期位置に戻し、電動ドライバーＴを把持し直すようにロボット２０を制御する。
【００８３】
また、ロボット制御部４７は、検出部４３により検出されたネジＯの位置に基づいて、例えば、ビジュアルサーボ等により電動ドライバーＴの先端ＳＣにネジＯを吸着させることで、電動ドライバーＴの先端ＳＣにネジＯを取り付けるようにロボット２０を制御する。ロボット制御部４７は、電動ドライバーＴの先端ＳＣにネジＯが取り付けられた後、電動ドライバーＴを把持している腕（第１腕又は第２腕）を動かすことで、電動ドライバーＴが所定の撮像位置に移動するようにロボット２０を制御する。
【００８４】
また、ロボット制御部４７は、取付ミスが起きていると判定した場合、取付ミスに基づく動作を行うようにロボット２０を制御する。ロボット制御部４７は、取付ミスが起きていないと判定した場合、例えば、電動ドライバーＴに取り付けられたネジＯを所定のネジ締め位置まで移動させ、ネジ締めを行うようにロボット２０を制御する。
【００８５】
以下、図５を参照して、制御装置３０が電動ドライバーＴをロボット２０に把持させてから、取付ミスが起きているか否かの判定結果に基づいた動作を行うまでの処理について説明する。図５は、制御装置３０が電動ドライバーＴをロボット２０に把持させてから、取付ミスが起きているか否かの判定結果に基づいた動作を行うまでの処理の流れの一例を示すフローチャートである。
【００８６】
まず、撮像制御部４１は、作業領域のステレオ撮像画像を撮像するように撮像部１０を制御する。そして、制御部３６は、撮像部１０により撮像されたステレオ撮像画像を画像取得部３５により取得する（ステップＳ３０）。次に、検出部４３は、ステップＳ３０で取得されたステレオ撮像画像に基づくパターンマッチングによって電動ドライバーＴが設置された位置を検出する（ステップＳ４０）。この際、検出部４３は、記憶部３２により記憶された画像であってパターンマッチングに用いる電動ドライバーＴの画像を読み込み、読み込まれた画像によってパターンマッチングを行う。
【００８７】
次に、ロボット制御部４７は、ステップＳ４０で検出された電動ドライバーＴが設置された位置に基づいて、第１腕を動かすことで電動ドライバーＴに予め決められた把持位置を把持部ＨＮＤ１により把持するようにロボット２０を制御する（ステップＳ５０）。次に、ロボット制御部４７は、ステップＳ５０で把持部ＨＮＤ１により把持された電動ドライバーＴを、第１腕を動かすことで位置状態判定位置まで移動させるようにロボット２０を制御する。ロボット制御部４７は、第２腕を動かすことで第２動撮像部２２を電動ドライバーＴと把持部ＨＮＤ１を含む範囲を撮像可能な位置まで移動させる。そして、撮像制御部４１は、第２動撮像部２２により電動ドライバーＴと把持部ＨＮＤ１を含む範囲を第２動撮像画像として撮像する。そして、制御部３６は、第２動撮像部２２により撮像された第２動撮像画像を画像取得部３５により取得する（ステップＳ６０）。
【００８８】
次に、検出部４３は、ステップＳ６０で撮像された第２動撮像画像に基づいて、把持部ＨＮＤ１の位置と、電動ドライバーＴの先端ＳＣの位置とを検出する。そして、判定部４５は、検出部４３により検出された把持部ＨＮＤ１の位置と、電動ドライバーＴの先端ＳＣの位置とに基づいて、電動ドライバーＴの位置状態が適正位置状態か否かを判定する（ステップＳ７０）。電動ドライバーＴの位置状態が適正位置状態であると判定した場合（ステップＳ７０−Ｙｅｓ）、撮像制御部４１は、作業領域のステレオ撮像画像を撮像するように撮像部１０を制御し、制御部３６は、撮像部１０により撮像されたステレオ撮像画像を画像取得部３５により取得する（ステップＳ１００）。一方、電動ドライバーＴの位置状態が適正位置状態ではないと判定した場合（ステップＳ７０−Ｎｏ）、判定部４５は、適正位置と不適正位置の間の差が所定範囲内であるか否かを判定する（ステップＳ８０）。
【００８９】
適正位置と不適正位置の間の差が所定範囲内ではないと判定した場合（ステップＳ８０−Ｎｏ）、ロボット制御部４７は、電動ドライバーＴをステップＳ５０で把持部ＨＮＤ１により把持する前の位置に戻し、ステップＳ３０に戻って電動ドライバーＴを把持し直す。一方、適正位置と不適正位置の間の差が所定範囲内であると判定した場合（ステップＳ８０−Ｙｅｓ）、撮像制御部４１は、ステップＳ１００に遷移し、作業領域のステレオ撮像画像を撮像するように撮像部１０を制御し、そして、制御部３６は、撮像部１０により撮像されたステレオ撮像画像を画像取得部３５により取得する。
【００９０】
次に、検出部４３は、ステップＳ１００で取得されたステレオ撮像画像に基づくパターンマッチングによって給材装置ＳＢの位置を検出する。この際、検出部４３は、記憶部３２により記憶された画像であってパターンマッチングに用いる給材装置ＳＢの画像を読み込み、読み込まれた画像によってパターンマッチングを行う。
【００９１】
そして、検出部４３は、記憶部３２から前述したネジ位置情報を読み込み、読み込まれたネジ位置情報と、検出された給材装置ＳＢの位置とに基づいてネジＯ（作業部材）の位置を検出する（ステップＳ１１０）。次に、ロボット制御部４７は、ステップＳ１１０で検出されたネジＯの位置に基づいて、第１腕を動かすことで電動ドライバーＴの先端ＳＣにネジＯを取り付けるようにロボット２０を制御する（ステップＳ１２０）。
【００９２】
次に、ロボット制御部４７は、ロボット２０の第１腕を動かすことでネジＯが先端ＳＣに取り付けられた電動ドライバーＴを所定の撮像位置に移動させる。その後、ロボット制御部４７は、第２動撮像部２２が電動ドライバーＴを含む範囲の第２動撮像画像を撮像する位置に移動するようにロボット２０を制御する。そして、撮像制御部４１は、第２動撮像画像を撮像するように第２動撮像部２２を制御する（ステップＳ１３０）。
【００９３】
より具体的には、電動ドライバーＴが所定の撮像位置に移動された後、ロボット制御部４７は、第１方向Ｃ１から電動ドライバーＴを含む範囲を撮像可能な位置に第２動撮像部２２を動かすようにロボット２０の第２腕を制御する。第２動撮像部２２が第１方向Ｃ１から電動ドライバーＴを含む範囲を撮像可能な位置に移動された後、撮像制御部４１は、１枚目の第２動撮像画像を撮像するように第２動撮像部２２を制御する。
【００９４】
ロボット制御部４７は、１枚目の第２動撮像画像が撮像された後、第２方向Ｃ２から電動ドライバーＴを含む範囲を撮像可能な位置に第２動撮像部２２を動かすようにロボット２０の第２腕を制御する。第２動撮像部２２が第２方向Ｃ２から電動ドライバーＴを含む範囲を撮像可能な位置に移動された後、撮像制御部４１は、２枚目の第２動撮像画像を撮像するように第２動撮像部２２を制御する。
【００９５】
次に、判定部４５は、ステップＳ１３０で撮像された１枚目及び２枚目の第２動撮像画像に基づいて、取付ミスが起きているか否かを判定する（ステップＳ１４０）。より具体的には、判定部４５は、記憶部３２から電動ドライバーＴの先端ＳＣに適切な状態でネジＯが取付されている状態の画像（撮像された画像やＣＧ等）に基づいてパターンマッチングを行うことで、前記の判定を行う。
【００９６】
１枚目の第２動撮像画像と２枚目の第２動撮像部２２のいずれか一方において、前記のパターンマッチングによる判定の結果、電動ドライバーＴの先端ＳＣに適切な状態でネジＯが取り付けられていないと判定した場合（ステップＳ１４０−Ｙｅｓ）、ロボット制御部４７は、取付ミスが起きていると判定し、取付ミスに基づく動作を行うようにロボット２０を制御する（ステップＳ１６０）。この一例において、前記の制御は、電動ドライバーＴを所定の待機位置まで移動させ、その後、動作を停止させる制御である。
【００９７】
一方、１枚目の第２動撮像画像と２枚目の第２動撮像部２２の両方において、前記のパターンマッチングによる判定の結果、電動ドライバーＴの先端ＳＣに適切な状態でネジＯが取り付けられていると判定した場合（ステップＳ１４０−Ｎｏ）、ロボット制御部４７は、取付ミスが起きていないと判定し、電動ドライバーＴに取り付けられたネジＯを所定のネジ締め位置まで移動させ、ネジ締めを行うようにロボット２０を制御する（ステップＳ１５０）。
【００９８】
ここで、図６を参照して、取付ミスについて説明する。図６は、取付ミスが起きていない状態と、取付ミスが起きた状態とをそれぞれ例示する図である。図６（Ａ）には、取付ミスが起きていない状態の一例を示す。取付ミスが起きていない状態（すなわち、電動ドライバーＴの先端ＳＣに取り付けられたネジＯが適切な状態）とは、図６（Ａ）に示したように、電動ドライバーＴの先端ＳＣにネジＯのネジ頭が、先端ＳＣによってネジ締め可能な状態で嵌合された状態である。より具体的には、ネジ締め可能な状態で嵌合された状態とは、電動ドライバーＴの長手方向の中心軸と、ネジＯをネジ締めした時の進行方向に係る中心軸とが一致するように嵌合された状態である。
【００９９】
図６（Ａ）に示した状態に対し、図６（Ｂ）には、取付ミスが起きた状態の一例を示す。図６（Ｂ）に示した例では、電動ドライバーＴの先端ＳＣによってネジ締めが可能なようにネジＯのネジ頭が先端ＳＣに嵌合されておらず、電動ドライバーＴの長手方向の中心軸に対してネジＯをネジ締めした時の中心軸が一致していない。前記の適切な状態ではない場合とは、このように電動ドライバーＴがネジＯをネジ締めすることができないような場合である。
【０１００】
また、図６（Ｃ）には、取付ミスが起きた状態の他の例を示す。図６（Ｃ）に示した状態は、電動ドライバーＴの先端ＳＣにネジＯが取り付けられていない状態である。これは、電動ドライバーＴの先端ＳＣにネジＯを取り付けることに失敗したことを示している。制御部３６は、図６（Ａ）に示した状態の場合、所定のネジ締め位置でネジＯのネジ締めを行うようにロボット２０を制御し、図６（Ｂ）や図６（Ｃ）に示した状態の場合、取付ミスに基づく動作を行うようにロボット２０を制御する。
【０１０１】
なお、制御部３６は、取付給材ミスが起きた際に、起きた取付ミスの種別毎に異なる取付ミスに基づく動作をロボット２０に行わせる構成であってもよい。例えば、制御部３６は、図６（Ｂ）に示した状態の取付ミスが起きた場合、取付ミスに基づく第１動作をロボット２０に行わせ、図６（Ｃ）に示した状態の取付ミスが起きた場合、取付ミスに基づく第２動作をロボット２０に行わせる構成であってもよい。
【０１０２】
また、判定部４５は、ネジＯが電動ドライバーＴの先端ＳＣに適切な状態で取り付けられているか否かを判定し、前記の適切な状態ではない場合を取付ミスとして判定する構成であるとして説明してきたが、これに代えて、複数の状態のうちいずれの状態でネジＯが電動ドライバーＴの先端ＳＣに取り付けられているか否かを判定する構成であってもよい。この場合、前記の複数の状態には、前記の取付ミスを示す状態が含まれてもよく、含まれなくてもよい。
【０１０３】
以上説明したように、本実施形態に係るロボットシステム１は、把持部ＨＮＤ１又は把持部ＨＮＤ２により電動ドライバーＴを把持し、電動ドライバーＴを含む第２動撮像画像に基づいて電動ドライバーＴの先端ＳＣの位置を検出する。これにより、ロボットシステム１は、電動ドライバーＴの把持の成否を判定することができる。
また、ロボットシステム１は、検出された電動ドライバーＴの先端ＳＣの位置に基づいて、電動ドライバーＴの位置状態が適正位置状態であるか否かを判定する。これにより、ロボットシステム１は、位置状態に応じた動作を実現することができる。
また、ロボットシステム１は、電動ドライバーＴにネジＯを取り付け、ネジＯを含む撮像画像に基づいてネジＯの取付状態を判定する。これにより、ロボットシステム１は、ネジＯの取付状態に応じた動作を実現することができる。
【０１０４】
また、ロボットシステム１は、位置状態が、適正位置状態であると判定した場合、電動ドライバーＴにネジＯを取り付け、取付状態を判定する。これにより、ロボットシステム１は、電動ドライバーＴを把持する際に生じる誤差を抑制しつつ、例えば、次の作業として前記の取り付けを行うことができる。
また、ロボットシステム１は、位置状態が、適正位置状態ではないと判定し、且つ適正位置状態からのずれ（すなわち、適正位置と不適正位置との差）が所定範囲内であると判定した場合、電動ドライバーＴにネジＯを取り付け、取付状態を判定する。これにより、ロボットシステム１は、電動ドライバーＴを把持する際に生じる誤差を、所定範囲内に抑制しつつ、例えば、次の作業として前記の取り付けを行うことができる。
【０１０５】
また、ロボットシステム１は、位置状態が、適正位置状態ではないと判定し、且つ適正位置状態からのずれが所定範囲内ではないと判定した場合、電動ドライバーＴを把持し直す。これにより、ロボットシステム１は、電動ドライバーＴを把持する際に生じる誤差が大きい場合、電動ドライバーＴを把持し直してから、例えば、次の作業として前記の取り付けを行うことができる。
また、ロボットシステム１は、ネジＯが適切な状態で取り付けられたか否かを判定する。これにより、ロボットは、ネジＯが適切な状態で取り付けられた場合と、適切な状態で取り付けられていない場合とで、異なる動作を行うことができる。
【０１０６】
また、ロボットシステム１は、電動ドライバーＴの先端ＳＣの磁力によりネジＯが電動ドライバーＴの先端ＳＣに取り付けられ、その取付状態を判定する。これにより、ロボットシステム１は、電動ドライバーＴの先端ＳＣの磁力によるネジＯの取付状態に応じた動作を行うことができる。
また、ロボットシステム１は、２以上の方向からそれぞれの方向毎に撮像された第２動撮像画像に基づいてネジＯの取付状態を判定する。これにより、ロボットシステム１は、ネジＯの取付状態を誤判定してしまうことを抑制することができる。
【０１０７】
また、ロボットシステム１は、パターンマッチングにより第２動撮像画像に基づいて電動ドライバーＴの位置状態を判定する。これにより、ロボットシステム１は、パターンマッチングを用いて電動ドライバーＴの位置状態を判定することができる。
また、ロボットシステム１は、パターンマッチングにより第２動撮像画像に基づいてネジＯの取付状態を判定する。これにより、ロボットシステム１は、パターンマッチングを用いてネジＯの取付状態を判定することができる。
【０１０８】
また、ロボットシステム１は、位置状態を判定した結果に応じて把持部ＨＮＤ１又は把持部ＨＮＤ２を動かす。これにより、ロボットシステム１は、電動ドライバーＴの位置状態に応じた把持部ＨＮＤ１又は把持部ＨＮＤ２の動作を実現させることができる。
また、ロボットシステム１は、ネジＯの取付状態を判定した結果に応じて把持部ＨＮＤ１又は把持部ＨＮＤ２を動かす。これにより、ロボットシステム１は、ネジＯの取付状態に応じた把持部ＨＮＤ１又は把持部ＨＮＤ２の動作を実現させることができる。
【０１０９】
また、ロボットシステム１は、ネジＯが適切な状態で取り付けられていないと判定した場合、把持部ＨＮＤ１又は把持部ＨＮＤ２の動作を停止させる。これにより、ロボットシステム１は、例えば、ネジＯの取り付けに失敗した場合であっても、ユーザーが把持部ＨＮＤ１又は把持部ＨＮＤ２の動作を止める必要が無い。
【０１１０】
なお、本実施形態において、ロボットシステム１は、第１動撮像画像又は第２動撮像画像に基づいて電動ドライバーＴの先端ＳＣの位置を検出する構成としたが、これに代えて、例えば、電動ドライバーＴにレーザーを照射し、電動ドライバーＴの先端ＳＣから反射されたレーザーの位置に基づいて電動ドライバーＴの先端ＳＣの位置を検出する構成であってもよい。この場合、ロボットシステム１は、レーザー照射部と、反射されたレーザーを検出する反射レーザー検出部とを備えるものとし、反射されたレーザーの位置と電動ドライバーＴの先端ＳＣの位置とは、予めキャリブレーション等で対応付けられているものとする。
【０１１１】
以上、この発明の実施形態を、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない限り、変更、置換、削除等されてもよい。
【０１１２】
また、以上に説明した装置（例えば、ロボットシステム１の制御装置３０）における任意の構成部の機能を実現するためのプログラムを、コンピューター読み取り可能な記録媒体に記録し、そのプログラムをコンピューターシステムに読み込ませて実行するようにしてもよい。なお、ここでいう「コンピューターシステム」とは、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）−ＲＯＭ等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリー（ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）のように、一定時間プログラムを保持しているものも含むものとする。
【０１１３】
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピューターシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピューターシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【符号の説明】
【０１１４】
１  ロボットシステム、１０  撮像部、１１  第１固定撮像部、１２  第２固定撮像部、２０  ロボット、２１  第１動撮像部、２２  第２動撮像部、２３  力センサー、３０  制御装置、３１  ＣＰＵ、３２  記憶部、３３  入力受付部、３４  通信部、３５  画像取得部、３６  制御部、４１  撮像制御部、４３  検出部、４５  判定部、４７  ロボット制御部
【図１】
2015226963.tif 000003
【図２】
2015226963.tif 000004
【図３】
2015226963.tif 000005
【図４】
2015226963.tif 000006
【図５】
2015226963.tif 000007
【図６】
2015226963.tif 000008