(57)【要約】【課題】動作を成功する可能性を高くすることができるロボット、ロボットシステム、制御装置、及び制御方法を提供する。【解決手段】ロボットは、ハンドと、ハンドを制御する制御部とを含み、制御部は、ハンドによる第１の動作の結果に基づいて、第１の動作と同じ目的の第２の動作の設定条件を、第１の動作とは異なる設定条件に定める。ロボットシステムは、ハンドを備えるロボットと、制御装置とを含む。制御装置、制御方法は、ハンドによる第１の動作の結果に基づいて、第１の動作と同じ目的の第２の動作の設定条件を、第１の動作とは異なる設定条件に定める。【選択図】図４
2015226967.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）等のハードウェア機能部であってもよい。
【００４５】
画像取得部３５は、ロボット２０から撮像部１０により撮像されたステレオ撮像画像を取得する。画像取得部３５は、取得されたステレオ撮像画像を制御部３６に出力する。また、画像取得部３５は、ロボット２０から第１動撮像部２１により撮像された第１動撮像画像を取得する。画像取得部３５は、取得された第１動撮像画像を制御部３６に出力する。また、画像取得部３５は、ロボット２０から第２動撮像部２２により撮像された第２動撮像画像を取得する。画像取得部３５は、取得された第２動撮像画像を制御部３６に出力する。
【００４６】
制御部３６は、撮像制御部４１とロボット制御部４２とを含んで構成される。
撮像制御部４１は、第１腕の動作を制御することにより、第１動撮像部２１の位置及び向きを制御し、第２腕の動作を制御することにより、第２動撮像部２２の位置及び向きを制御する。撮像制御部４１は、例えば、上述した探索を開始する前に、撮像制御部４１は、第２動撮像部２２の位置を視点位置に移動させ、第２動撮像部２２の光学軸の向きを視点方向に向けるように第２腕を制御する。
ロボット制御部４２は、ビジュアルサーボ又はコンプライアントモーション制御によりロボット２０の動作を制御する。ロボット制御部４２は、例えば、以下に説明する制御処理を実行する。
【００４７】
図５は、本実施形態に係る制御処理を示すフローチャートである。
図５に示す処理では、ロボット２０の動作が、第１腕の把持部ＨＮＤ１で第１対象物Ｗの開口部が第２対象物Ａの先端となる位置を探索する動作（探り動作）である場合を例にする。
（ステップＳ１０１）ロボット制御部４２は、第１腕に第１対象物Ｗを把持させ、第１対象物Ｗの開口部の中心の位置を第２対象物Ａの先端の位置に接近させる。
ロボット制御部４２は、例えば、公知の画像処理技術を用いて、画像に表された第１対象物Ｗ、第２対象物Ａをそれぞれ識別し、識別した第１対象物Ｗの開口部の中心の位置、第２対象物Ａの先端の位置を推定する。ロボット制御部４２は、推定した第２対象物Ａの先端の位置を目標位置と設定し、ＨＮＤ１に第１対象物Ｗを把持させ、第１対象物Ｗの開口部の中心の位置が目標位置に近づくように第１腕を制御する。その後、ステップＳ１０２に進む。
なお、制御誤差により第１対象物Ｗの開口部の中心の位置が第２対象物Ａの先端の位置からずれるため、第２対象物Ａの先端が第１対象物Ｗの平面部に接触することがある。
【００４８】
（ステップＳ１０２）ロボット制御部４２は、第１対象物Ｗの平面部が第２対象物Ａの先端に接触したか否かを判定する。平面部とは、第２対象物Ａの先端が第１対象物Ｗの開口部の主面のうち開口部が形成されていない部分である。
ロボット制御部４２は、センサー情報が示すセンサー値の単位時間当たりの変化量が、第１閾値よりも大きい場合、接触したと判定し、それ以外の場合、接触していないと判定する。センサー情報とは、第１腕に備えられた力センサー２３において検出された力の大きさを示す情報である。第１閾値は、力の単位時間当たりの変化量の予め定めた閾値である。これは、第１対象物Ｗが、第２対象物Ａに接触したときに反力を受け、接触していないとき反力を受けないことによる。
接触したと判定された場合（ステップＳ１０２  ＹＥＳ）、ステップＳ１０３に進む。接触していないと判定された場合（ステップＳ１０２  ＮＯ）、ステップＳ１０１に戻る。
【００４９】
（ステップＳ１０３）ロボット制御部４２は、第１対象物Ｗの開口部に、第２対象物Ａの先端が挿入したか否かを判定する。
ロボット制御部４２は、センサー情報が示す、第１対象物Ｗに対して第２対象物Ａの先端から他端への方向（以下、作用方向と呼ぶ。作用方向は、図１の例では、鉛直方向）への力の大きさを示すセンサー値が、第２閾値よりも小さいとき、挿入したと判定し、それ以外の場合には、挿入していないと判定する。この第２閾値は、例えば、探索において第１対象物Ｗと第２対象物Ａが接触しているときに、第１対象物Ｗに対して作用させた力の大きさよりも小さい正の値である。これは、第１対象物Ｗの開口部に第２対象物Ａの先端が挿入されたとき、第１対象物Ｗが第２対象物Ａから受けていた反力が緩和又は失われることによる。
挿入したと判定された場合（ステップＳ１０３  ＹＥＳ）、ロボット制御部４２は、第１腕に対して第１対象物Ｗに対して作用させていた力を解除させ、本処理を終了する。挿入していないと判定された場合（ステップＳ１０３  ＮＯ）、ステップＳ１０４に進む。
【００５０】
（ステップＳ１０４）ロボット制御部４２は、予め定めた方法を用いて、探索における初期位置及び探索領域を設定し、第１腕に対して、第１対象物Ｗの平面部と第２対象物Ａの先端との接触点が、設定した初期位置となる位置に第１対象物Ｗを移動させる。所定のルールによる初期位置及び探索領域の設定例については、後述する。その後、ステップＳ１０５に進む。
【００５１】
（ステップＳ１０５）ロボット制御部４２は、第１腕に対して、第１対象物Ｗの平面部と第２対象物Ａの先端との接触点を探索領域内で移動させる（探索）。
このとき、ロボット制御部４２は、コンプライアントモーション制御により第１腕に対してその平面部が第２対象物Ａに接触させながら第１対象物Ｗを並進移動させることで、位置制御の精度を確保することができる。その後、ステップＳ１０６に進む。
【００５２】
（ステップＳ１０６）ロボット制御部４２は、ステップＳ１０３と同様に、第１対象物Ｗの開口部に、第２対象物Ａの先端が挿入したか否かを判定する。判定の際、ロボット制御部４２は、ステップＳ１０３と同様な処理を行ってもよい。
挿入したと判定された場合（ステップＳ１０６  ＹＥＳ）、ロボット制御部４２は、第１腕に対して第１対象物Ｗに対して作用させていた力を解除させ、本処理を終了する。挿入していないと判定された場合（ステップＳ１０６  ＮＯ）、ステップＳ１０７に進む。
【００５３】
（ステップＳ１０７）ロボット制御部４２は、第１腕に対して、第１対象物Ｗの平面部と第２対象物Ａの先端との接触点の移動を終了させるか否かを判定する。
ここで、ロボット制御部４２は、探索領域を形成する探索経路の終点に接触点が到達したか否かにより、接触点の移動を終了させるか否かを判定する。
終了させると判定した場合（ステップＳ１０７  ＹＥＳ）、ステップＳ１０８に進む。終了させないと判定した場合（ステップＳ１０７  ＮＯ）、ステップＳ１０５に戻る。
【００５４】
（ステップＳ１０８）ロボット制御部４２は、探索が行われていたとき、センサー情報が示すセンサー値が、所定の範囲内である接触点の箇所を検出したか否かを判定する。
ここで、ロボット制御部４２は、ステップＳ１０７で終了すると判定した探索において、センサー情報が示すセンサー値が、所定の範囲として第２閾値以上であって第３閾値よりも小さい接触点があったか否かを判定する。第３閾値は、第２閾値よりも大きく、第１対象物Ｗに対して作用させた力の大きさよりも小さい値である。第３閾値は、第１対象物Ｗの平面部の凹凸に伴って一時的に低下した力の下限値よりも小さい値であってもよい。これにより、探索中における第１対象物Ｗが第２対象物Ａから受けていた反力が低下したこと（反力低下）が検知される。検知された時点で第２対象物Ａの先端が第１対象物Ｗの開口部に挿入するに至らないが、開口部の先端に接触したことが推定される。ロボット制御部４２は、探索中に反力低下が検知された場合、その時点における接触点の箇所を記憶する。
検出したと判定された場合（ステップＳ１０８  ＹＥＳ）、ステップＳ１０９に進む。検出していないと判定された場合（ステップＳ１０８  ＮＯ）、ステップＳ１０４に戻る。
【００５５】
（ステップＳ１０９）ロボット制御部４２は、検出した箇所に基づいて、探索における初期位置及び探索領域を設定し、第１腕に対して、第１対象物Ｗの平面部と第２対象物Ａの先端との接触点が、設定した初期位置となる位置に第１対象物Ｗを移動させる。その後、ステップＳ１０５に戻る。
【００５６】
次に、探索領域の設定例について説明する。以下の説明では、ステップＳ１０４、Ｓ１０９において設定される探索領域を、それぞれ第１探索領域、第２探索領域と呼んで、両者を区別することがある。図６は、探索領域の一例を示す図である。
図６において、探索領域が破線で示されている。この探索領域は、当初接触点Ｃと変位点Ｓ１に基づいて定められる正方形、つまり、当初接触点Ｃと変位点Ｓ１とを結ぶ線分と垂直な方向に、オフセット量ｄと等しい幅を有する領域である。当初接触点Ｃとは、ステップＳ１０１により第１対象物の平面部のうち第２対象物Ａの先端が初めて接触した点である。変位点Ｓ１は、当初接触点Ｃから予め定めた方向（オフセット方向）に予め定めた距離（オフセット量）だけずれた第１対象物Ｗの平面部上の１点である。ここで、オフセット量として、第１対象物Ｗの位置の水平面方向の制御誤差の大きさを示す標準偏差σに基づいて、例えば、６σと定めておいてもよい。当初接触点Ｃから変位点Ｓ１に向けられた矢印は、予め定めたオフセット方向を示す矢印であり、Ｗ、Ｂは、それぞれ第１対象物Ｗ、第１の対象物の開口部を示す。
【００５７】
ロボット制御部４２は、ステップＳ１０４において、初回の第１探索領域を当初接触点Ｃとオフセット方向に基づいて定めてもよい。その場合、ロボット制御部４２は、初期位置を当初接触点Ｃと定め、終点を変位点Ｓ１と定めてもよいし、初期位置を変位点Ｓ１と定め、終点を当初接触点Ｃと定めてもよい。ロボット制御部４２は、探索において、初期位置から終点まで接触点の軌跡が探索領域内を網羅されるように第１対象物Ｗを移動させる。
【００５８】
次に、接触点を移動させる際の探索経路の例について説明する。図７は、探索経路の一例を示す図である。
図７に示される探索経路は、変位点Ｓ１と当初接触点Ｃを含むジグザグ状の経路である。この経路は、当初接触点Ｃと変位点Ｓ１とを結ぶ線分に直交する部分（直交線分）と、その１つの直交線分の終点から隣接した直交線分の起点とを結ぶ部分（斜行線分）とが繰り返して構成される。この例では、１つの直交線分の長さは、オフセット量ｄに等しい。直交線分間又は斜行線分間の間隔を、第１対象物の開口部の直径よりも小さい間隔に定めることで、この探索経路で探索領域が網羅される。この間隔は、例えば、第１の対象物の開口部の直径と第２の対象物の一端の直径との差である。また、この探索経路の起点、終点は、当初接触点Ｃ、変位点Ｓ１であってもよいが、探索領域の頂点Ｏ１、Ｄ１であってもよい。
【００５９】
次に、ロボット制御部４２による探索領域の設定方法について、さらに説明する。
ロボット制御部４２は、ステップＳ１０４（図５）において、再度設定される第１探索領域を、既に設定した第１探索領域とは異なる領域に設定する。異なる領域とは、既に設定した第１探索領域の少なくとも一部と重複しない領域が存在することを意味する。例えば、ロボット制御部４２は、初期位置をランダムに定め、定めた初期位置を基準として予め定めた範囲であって第１対象物Ｗの平面部に含まれる領域を第１探索領域と設定してもよい。また、ロボット制御部４２は、当初接触点Ｃを終点とし、当初接触点Ｃからオフセット量ｄを半径とする円周状をＮ（Ｎは、２以上の整数）等分した点のそれぞれを各回の初期位置とし、初期位置と終点とを結ぶ線を含む領域を第１探索領域と設定してもよい。ロボット制御部４２は、各回の初期位置を設定したＮ点から所定の順序で選択する。その順序は、時計回り、反時計回り、ランダム、のいずれでもよい。
【００６０】
他方、ロボット制御部４２は、ステップＳ１０９（図５）において、ステップＳ１０８（図５）で検出した箇所に基づいて、探索における初期位置及び第２探索領域を設定する。ロボット制御部４２は、検出した箇所を中心として予め定めた範囲を第２探索領域として設定する。
ロボット制御部４２は、初期位置Ｏ１として、例えば、ステップＳ１０８で検出した箇所と定めてもよい。探索経路は、図８に示すように検出した箇所を初期位置Ｏ１とし、初期位置Ｏ１から回転に伴い中心からの半径が増加する軌跡で形成される螺旋状の経路であってもよい。１周当たりの半径の増加量を第２対象物Ａの直径よりも小さい間隔に定めておく。これにより、第２探索領域として、ほぼ円形の領域が網羅される。図８において、終点Ｄ１は、初期位置Ｏ１から、その領域の半径だけ離れた位置にある。
【００６１】
なお、初期位置は、必ずしもステップＳ１０８で検出した箇所には限られず、第２探索領域内で探索経路が網羅されれば、第２探索領域内のどこにあってもよい。第２探索領域の形状は、検出した箇所を基準に対称性がある形状として、円の他に、例えば、正方形であってもよい。第２探索領域の形状は、これには限られず、対称性がなくてもよい。ロボット制御部４２は、第２探索領域の大きさとして、その特性長を上述した標準偏差σに基づいて設定してもよい。例えば、円の場合には、半径が３σ、正方形の場合には、１辺の長さが６σであってもよい。
【００６２】
上述したように、ロボット制御部４２は、ステップＳ１０８で検出される箇所に近接した領域を探索領域と定める。この箇所は、第２対象物Ａの先端が第１対象物Ｗにおいて陥没した部位、例えば、開口部の端部に接する箇所である可能性が高い。そのため、探索領域内で第１対象物Ｗの開口部を探索するために、探索に成功する可能性を高くすることができる。
【００６３】
なお、上記の説明では、主にロボット２０の動作が、第１腕の把持部ＨＮＤ１で第１対象物Ｗの開口部が第２対象物Ａの先端となる位置を探索する探り動作である場合を例にしたが、これには限られない。ロボットの２０の動作は、成功後に終了し、失敗後に初期位置、探索領域のいずれか又は両者を変更して再度試行する動作、例えば、ビンピッキングであればよい。
【００６４】
以上、説明したように、本実施形態に係るロボット２０は、把持部ＨＮＤ１と、把持部ＨＮＤ１を制御するロボット制御部４２と、を含み、ロボット制御部４２は、把持部ＨＮＤ１による前回の動作の結果に基づいて、動作の設定条件を、前回の動作とは異なる設定条件に定める。
この構成によれば、前回の動作とは異なる設定条件で今回の動作が行われるため、前回の動作が失敗しても、今回の動作が成功する可能性を高くすることができる。
【００６５】
また、ロボット２０において、把持部ＨＮＤ１は第１対象物Ｗを把持し、前回の動作及び今回の動作は、それぞれ第１対象物Ｗを接触しながら第１対象物Ｗの開口部を第２対象物Ａの先端に挿入できる位置を探索する動作であり、設定条件は、挿入できる位置の探索領域を含む。
この構成によれば、前回の探索領域とは異なる探索領域で、第１対象物Ｗを接触しながら第１対象物Ｗの開口部を第２対象物Ａの先端に挿入できる位置を探索する探り動作が行われるので、探索に成功する可能性を高くすることができる。
【００６６】
また、ロボット２０は、把持部ＨＮＤ１に作用する力を検出する力センサー２３を含み、ロボット制御部４２は、前回の動作の実行中に力センサー２３が検出した力の大きさに基づいて今回の動作の探索領域を定める。
力センサー２３が検出した力の大きさは、第１対象物Ｗの表面の状態に依存するため、この構成によれば、前回の探索領域内の第１対象物Ｗの表面の状態に応じて、前回の探索領域の一部を含むように探索領域を定めることができる。そのため、前回の探索領域の一部に第１対象物Ｗの開口部が近接した場合に、探索に成功する可能性を高くすることができる。
【００６７】
また、ロボット制御部４２は、第１対象物Ｗが第２対象物Ａに接触しているときに力センサー２３が検出した力の大きさが所定の大きさよりも低下した箇所に基づいて探索領域を定める。
この構成によれば、前回の探索領域において、第１対象物Ｗの表面が陥没している可能性がある箇所が検出される。その箇所に基づいて設定された探索領域内で探索が行われるため、探索に成功する可能性を高くすることができる。
【００６８】
また、ロボット制御部４２において、設定条件は、探索領域の初期位置を含む。
この構成によれば、第１対象物Ｗの表面が陥没している可能性がある箇所を優先して、探索が行われるため、探索に成功する可能性を高くすることができる。
【００６９】
以上、この発明の実施形態を、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない限り、変更、置換、削除等されてもよい。
【００７０】
また、以上に説明した装置（例えば、ロボットシステム１の制御装置３０）における任意の構成部の機能を実現するためのプログラムを、コンピューター読み取り可能な記録媒体に記録し、そのプログラムをコンピューターシステムに読み込ませて実行するようにしてもよい。なお、ここでいう「コンピューターシステム」とは、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）−ＲＯＭ等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリー（ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）のように、一定時間プログラムを保持しているものも含むものとする。
【００７１】
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピューターシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピューターシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【符号の説明】
【００７２】
１…ロボットシステム、１０…撮像部、１１…第１固定撮像部、１２…第２固定撮像部、２０…ロボット、２１…第１動撮像部、２２…第２動撮像部、２３…力センサー、
３０…制御装置、３１…ＣＰＵ、３２…記憶部、３３…入力受付部、３４…通信部、
３５…画像取得部、３６…制御部、４１…撮像制御部、４２…ロボット制御部
【図１】
2015226967.tif 000003
【図２】
2015226967.tif 000004
【図３】
2015226967.tif 000005
【図４】
2015226967.tif 000006
【図５】
2015226967.tif 000007
【図６】
2015226967.tif 000008
【図７】
2015226967.tif 000009
【図８】
2015226967.tif 000010