(57)【要約】【課題】  一つの撮像部が撮像した撮像画像に基づいて、複数の方向からの位置合わせをすることができるロボット制御システム、ロボット、ロボット制御方法及びプログラム等の提供。【解決手段】  ロボット制御システム１０は、ロボット３０の目標状態を表す画像である参照画像を記憶する参照画像記憶部１１０と、ロボット３０の制御信号を出力する処理部１２０と、制御信号に基づいて、ロボット３０を制御するロボット制御部１３０と、を含む。そして、参照画像記憶部１１０は、対象物の反射画像を含む参照画像を記憶する。さらに、処理部１２０は、対象物を映す反射鏡が撮像部４０の撮像範囲内に入る撮像画像と、参照画像とに基づいて、ビジュアルサーボを行う。【選択図】      図１
2014188617.tif 000002
【特許請求の範囲】
【請求項１】
ロボットの目標状態を表す画像である参照画像を記憶する参照画像記憶部と、
前記ロボットの制御信号を出力する処理部と、
前記制御信号に基づいて、前記ロボットを制御するロボット制御部と、
を含み、
前記参照画像記憶部は、
対象物の反射画像を含む前記参照画像を記憶し、
前記処理部は、
前記対象物を映す反射鏡が撮像部の撮像範囲内に入る撮像画像と、前記参照画像とに基づいて、ビジュアルサーボを行うことを特徴とするロボット制御システム。
【請求項２】
請求項１において、
前記参照画像記憶部は、
前記対象物が映り、前記対象物の前記反射画像を含む前記参照画像を記憶し、
前記処理部は、
前記反射鏡及び前記対象物が前記撮像範囲内に入る前記撮像画像と、前記参照画像とに基づいて、前記ビジュアルサーボを行うことを特徴とするロボット制御システム。
【請求項３】
請求項１又は２において、
前記参照画像記憶部は、
前記対象物の前記反射画像を２つ以上含む前記参照画像を記憶し、
前記処理部は、
２つ以上の前記反射鏡が前記撮像部の前記撮像範囲内に入る前記撮像画像と、前記参照画像とに基づいて、前記ビジュアルサーボを行うことを特徴とするロボット制御システム。
【請求項４】
請求項１において、
前記撮像部の撮像方向を制御するカメラ制御部を有し、
前記処理部は、
前記撮像部を前記対象物に向けた時に撮像される第１の撮像画像と、前記対象物が映る第１の参照画像とに基づく第１のビジュアルサーボと、
前記撮像部を前記反射鏡に向けた時に撮像される第２の撮像画像と、前記対象物の前記反射画像を含む第２の参照画像とに基づく第２のビジュアルサーボとを行うことを特徴とするロボット制御システム。
【請求項５】
請求項４において、
前記処理部は、
前記撮像部を第２の反射鏡に向けた時に撮像される第３の撮像画像と、前記対象物の第２の反射画像を含む第３の参照画像とに基づく第３のビジュアルサーボを行うことを特徴とするロボット制御システム。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記反射鏡は、
作業エリアにおいて、前記撮像部と前記対象物とを結ぶ直線に対して垂直な直線であって、前記対象物を通る前記垂直な直線を基準として、前記撮像部の位置とは逆側に設置されることを特徴とするロボット制御システム。
【請求項７】
請求項１乃至６のいずれかにおいて、
前記反射鏡は、
前記ロボットの前記アームに取り付けられていることを特徴とするロボット制御システム。
【請求項８】
請求項１乃至６のいずれかにおいて、
前記ロボットは、
第１のアームと第２のアームを有し、
前記反射鏡は、
前記第１のアームに取り付けられ、
前記処理部は、
前記第１のアームに取り付けられた前記反射鏡が前記撮像部の前記撮像範囲内に入る前記撮像画像と、前記参照画像とに基づいて、前記第２のアームを動かす前記ビジュアルサーボを行うことを特徴とするロボット制御システム。
【請求項９】
請求項１乃至８のいずれかにおいて、
前記参照画像記憶部は、
前記対象物の前記反射画像を前記参照画像として記憶し、
前記処理部は、
前記撮像画像において前記反射鏡が映る反射鏡領域の検出処理を行い、前記撮像画像における前記反射鏡領域の画像と、前記参照画像とに基づいて、前記ビジュアルサーボを行うことを特徴とするロボット制御システム。
【請求項１０】
請求項９において、
前記処理部は、
前記反射鏡領域の前記検出処理として、前記反射鏡に設けられたマーカー又は枠を検出する処理を行うことを特徴とするロボット制御システム。
【請求項１１】
請求項１乃至１０のいずれかにおいて、
前記処理部は、
前記ビジュアルサーボとして、前記撮像画像が前記参照画像に一致又は近づくように前記ロボットを制御する処理を行うことを特徴とするロボット制御システム。
【請求項１２】
請求項１乃至１１のいずれかにおいて、
前記処理部は、
前記対象物を映す第１の反射鏡が前記撮像範囲内に入る撮像画像に含まれる前記反射画像において、第２の反射鏡のマーカー又は枠が映る領域を検出し、検出結果に基づいて、第２の反射鏡が映る領域をマスクすることを特徴とするロボット制御システム。
【請求項１３】
撮像部により撮像された撮像画像が、参照画像に一致又は近づくようにロボットを制御するロボット制御システムであって、
前記撮像画像及び前記参照画像は、
反射鏡に映った対象物の鏡像を含むことを特徴とするロボット制御システム。
【請求項１４】
請求項１乃至１３のいずれかに記載のロボット制御システムを含むことを特徴とするロボット。
【請求項１５】
ロボットの目標状態を表し、対象物の反射画像を含む参照画像を記憶し、
撮像部から得られ、前記対象物を映す反射鏡が前記撮像部の撮像範囲内に入る前記撮像画像と、前記参照画像とに基づいて、前記ビジュアルサーボを行い、
前記ロボットの制御信号を出力し、
前記制御信号に基づいて、前記ロボットを制御することを特徴とするロボット制御方法。
【請求項１６】
ロボットの目標状態を表す画像である参照画像を記憶する参照画像記憶部と、
前記ロボットの制御信号を出力する処理部と、
前記制御信号に基づいて、前記ロボットを制御するロボット制御部として、
コンピューターを機能させ、
前記参照画像記憶部は、
対象物の反射画像を含む前記参照画像を記憶し、
前記処理部は、
前記対象物を映す反射鏡が撮像部の撮像範囲内に入る撮像画像と、前記参照画像とに基づいて、ビジュアルサーボを行うことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット制御システム、ロボット、ロボット制御方法及びプログラム等に関係する。
【背景技術】
【０００２】
近年、生産現場において、人が行ってきた作業を機械化・自動化するために、産業用ロボットを導入することが多くなってきた。しかし、ロボットのアームやハンド等の位置決めを行うにあたっては、精密なキャリブレーションが前提となり、ロボット導入の障壁となっている。
【０００３】
ここで、ロボットのアームやハンド等の位置決めを行う手法の一つとしてビジュアルサーボがある。ある種のビジュアルサーボは、キャリブレーションに精密さを求めない点で有用であり、ロボット導入障壁を下げる技術として注目されている。
【０００４】
これらのビジュアルサーボに関する発明としては特許文献１に記載される従来技術がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−３０５６７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ビジュアルサーボには以下のような課題が存在する。まず、ある方向から精密に位置合わせができているように見えていても、他の方向から見ると位置合わせができていない状況が発生し得る。また、ロボットのアームの姿勢や障害物等により、撮像画像に対象物が映らなくなるオクルージョンが発生する場合もある。
【０００７】
本発明の幾つかの態様によれば、一つの撮像部が撮像した撮像画像に基づいて、複数の方向からの位置合わせをすることができるロボット制御システム、ロボット、ロボット制御方法及びプログラム等を提供することができる。
【課題を解決するための手段】
【０００８】
本発明の一態様は、ロボットの目標状態を表す画像である参照画像を記憶する参照画像記憶部と、前記ロボットの制御信号を出力する処理部と、前記制御信号に基づいて、前記ロボットを制御するロボット制御部と、を含み、前記参照画像記憶部は、対象物の反射画像を含む前記参照画像を記憶し、前記処理部は、前記対象物を映す反射鏡が撮像部の撮像範囲内に入る撮像画像と、前記参照画像とに基づいて、ビジュアルサーボを行うロボット制御システムに関係する。
【０００９】
本発明の一態様では、処理部が、対象物の反射画像を含む参照画像を参照画像記憶部から取得する。一方で、対象物を映す反射鏡が撮像部の撮像範囲内に入る撮像画像を、撮像部が撮像し、処理部が撮像画像を取得する。そして、処理部は、取得した撮像画像と参照画像とに基づいて、ビジュアルサーボを行う。
【００１０】
よって、一つの撮像部が撮像した撮像画像と、これに対応する参照画像とに基づいて、複数の方向からの位置合わせをすることが可能となる。
【００１１】
また、本発明の一態様では、前記参照画像記憶部は、前記対象物が映り、前記対象物の前記反射画像を含む前記参照画像を記憶し、前記処理部は、前記反射鏡及び前記対象物が前記撮像範囲内に入る前記撮像画像と、前記参照画像とに基づいて、前記ビジュアルサーボを行ってもよい。
【００１２】
これにより、一度のビジュアルサーボを行うだけで、撮像部から対象物への方向と、反射鏡から対象物への方向の２つの方向から、位置合わせをすること等が可能になる。
【００１３】
また、本発明の一態様では、前記参照画像記憶部は、前記対象物の前記反射画像を２つ以上含む前記参照画像を記憶し、前記処理部は、２つ以上の前記反射鏡が前記撮像部の前記撮像範囲内に入る前記撮像画像と、前記参照画像とに基づいて、前記ビジュアルサーボを行ってもよい。
【００１４】
これにより、一度のビジュアルサーボを行うだけで、撮像部から対象物への方向と、第１の反射鏡から対象物への方向と、第２の反射鏡から対象物への方向の３つの方向から、位置合わせをすること等が可能になる。
【００１５】
また、本発明の一態様では、前記撮像部の撮像方向を制御するカメラ制御部を有し、前記処理部は、前記撮像部を前記対象物に向けた時に撮像される第１の撮像画像と、前記対象物が映る第１の参照画像とに基づく第１のビジュアルサーボと、前記撮像部を前記反射鏡に向けた時に撮像される第２の撮像画像と、前記対象物の前記反射画像を含む第２の参照画像とに基づく第２のビジュアルサーボとを行ってもよい。
【００１６】
これにより、反射鏡をより自由な位置に設置できるため、より適切な参照画像を利用すること等が可能になる。
【００１７】
また、本発明の一態様では、前記処理部は、前記撮像部を第２の反射鏡に向けた時に撮像される第３の撮像画像と、前記対象物の第２の反射画像を含む第３の参照画像とに基づく第３のビジュアルサーボを行ってもよい。
【００１８】
これにより、対象物に対してオクルージョンが発生した場合でも、適切にビジュアルサーボを実施すること等が可能になる。
【００１９】
また、本発明の一態様では、前記反射鏡は、作業エリアにおいて、前記撮像部と前記対象物とを結ぶ直線に対して垂直な直線であって、前記対象物を通る前記垂直な直線を基準として、前記撮像部の位置とは逆側に設置されてもよい。
【００２０】
これにより、対象物が反射鏡に映った撮像画像を撮像すること等が可能となる。
【００２１】
また、本発明の一態様では、前記反射鏡は、前記ロボットの前記アームに取り付けられてもよい。
【００２２】
これにより、ロボットのアームを移動させることにより、反射鏡の位置を変えること等が可能になる。
【００２３】
また、本発明の一態様では、前記ロボットは、第１のアームと第２のアームを有し、前記反射鏡は、前記第１のアームに取り付けられ、前記処理部は、前記第１のアームに取り付けられた前記反射鏡が前記撮像部の前記撮像範囲内に入る前記撮像画像と、前記参照画像とに基づいて、前記第２のアームを動かす前記ビジュアルサーボを行ってもよい。
【００２４】
これにより、ビジュアルサーボ中にオクルージョンが発生した場合などにも、柔軟にビジュアルサーボを実施すること等が可能になる。
【００２５】
また、本発明の一態様では、前記参照画像記憶部は、前記対象物の前記反射画像を前記参照画像として記憶し、前記処理部は、前記撮像画像において前記反射鏡が映る反射鏡領域の検出処理を行い、前記撮像画像における前記反射鏡領域の画像と、前記参照画像とに基づいて、前記ビジュアルサーボを行ってもよい。
【００２６】
これにより、参照画像の生成を容易にすること等が可能になる。
【００２７】
また、本発明の一態様では、前記処理部は、前記反射鏡領域の前記検出処理として、前記反射鏡に設けられたマーカー又は枠を検出する処理を行ってもよい。
【００２８】
これにより、反射鏡領域を容易に検出すること等が可能になる。
【００２９】
また、本発明の一態様では、前記処理部は、前記ビジュアルサーボとして、前記撮像画像が前記参照画像に一致又は近づくように前記ロボットを制御する処理を行ってもよい。
【００３０】
これにより、ロボットの目標姿勢が映る参照画像を用いれば、目標姿勢と同じ又は近い姿勢をロボットに取らせること等が可能になる。
【００３１】
また、本発明の一態様では、前記処理部は、前記対象物を映す第１の反射鏡が前記撮像範囲内に入る撮像画像に含まれる前記反射画像において、第２の反射鏡のマーカー又は枠が映る領域を検出し、検出結果に基づいて、第２の反射鏡が映る領域をマスクしてもよい。
【００３２】
これにより、不要な反射鏡の映りこみにより、ビジュアルサーボが収束しなくなることを抑制すること等が可能になる。
【００３３】
また、本発明の他の態様では、撮像部により撮像された撮像画像が、参照画像に一致又は近づくようにロボットを制御するロボット制御システムであって、前記撮像画像及び前記参照画像は、反射鏡に映った対象物の鏡像を含むロボット制御システムに関係する。
【００３４】
また、本発明の他の態様では、前記ロボット制御システムを含むロボットに関係する。
【００３５】
また、本発明の他の態様では、ロボットの目標状態を表し、対象物の反射画像を含む参照画像を記憶し、撮像部から得られ、前記対象物を映す反射鏡が前記撮像部の撮像範囲内に入る前記撮像画像と、前記参照画像とに基づいて、前記ビジュアルサーボを行い、前記ロボットの制御信号を出力し、前記制御信号に基づいて、前記ロボットを制御するロボット制御方法に関係する。
【００３６】
また、本発明の他の態様では、上記各部としてコンピューターを機能させるプログラムに関係する。
【図面の簡単な説明】
【００３７】
【図１】本実施形態のシステム構成例。
【図２】図２（Ａ）、図２（Ｂ）は、本実施形態のロボットの構成例。
【図３】位置ベースビジュアルサーボの処理の流れを説明するフローチャート。
【図４】図４（Ａ）、図４（Ｂ）は、参照画像と撮像画像の説明図。
【図５】特徴ベースビジュアルサーボの処理の流れを説明するフローチャート。
【図６】図６（Ａ）、図６（Ｂ）は、反射鏡を用いたビジュアルサーボの説明図。
【図７】反射鏡の配置位置の説明図。
【図８】マーカーを用いた反射鏡領域の検出処理の説明図。
【図９】本実施形態の処理の流れを説明するフローチャート。
【図１０】図１０（Ａ）、図１０（Ｂ）は、撮像部の撮像方向を変える手法の説明図。
【図１１】図１１（Ａ）、図１１（Ｂ）は、オクルージョンが発生する場合の説明図。
【図１２】第１の変形例の処理の流れを説明するフローチャート。
【図１３】ロボットのアームに反射鏡を設置する手法の説明図。
【図１４】第２の変形例の処理の流れを説明するフローチャート。
【発明を実施するための形態】
【００３８】
以下、本実施形態について説明する。まず、本実施形態の概要を説明し、次にシステム構成例について説明する。そして、ビジュアルサーボの概要について説明した後で、フローチャート等を用いて本実施形態で行う処理の詳細と第１の変形例と第２の変形例について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００３９】
１．概要
近年、生産現場において、人が行ってきた作業を機械化・自動化するために、産業用ロボットを導入することが多くなってきた。しかし、ロボットのアームやハンド等の位置決めを行うにあたっては、精密なキャリブレーションが前提となり、ロボット導入の障壁となっている。
【００４０】
ここで、ロボットのアームやハンド等の位置決めを行う手法の一つとしてビジュアルサーボがある。ビジュアルサーボは、参照画像（ゴール画像、目標画像）と撮像画像（現在の画像）との差が小さくなるように、ロボットを制御する技術である。ビジュアルサーボに用いる参照画像は、あらかじめワーク等の作業対象等を撮像した画像であって、ロボットの目標状態を表す画像のことである。一方で、撮像画像は、ロボットを実際に動作させる際にワークやアーム等の現在の様子を撮像した画像である。ある種のビジュアルサーボは、キャリブレーションに精密さを求めない点で有用であり、ロボット導入障壁を下げる技術として注目されている。
【００４１】
そして、ビジュアルサーボには以下のような課題が存在する。まず、ある方向から精密に位置合わせができているように見えていても、他の方向から見ると位置合わせができていない状況が発生し得る。これが第１の課題である。そのため、このようなケースが発生しないように必要十分な方向から撮像された画像を利用する必要がある。この第１の課題については、一般的に以下のような対策がとられるが、それぞれに副次的な課題がある。
【００４２】
まず、第１の課題への第１の対応策として、複数台のカメラを用いて多方向から参照画像と撮像画像を撮像する方法がある。しかし、この場合には、作業エリア内に複数台のカメラを設置するための場所の確保が必要であるという問題と、カメラ台数分だけの画像を撮像するため、処理が複雑で遅いという更なる問題がある。
【００４３】
次に、第１の課題への第２の対応策として、ロボットのアームに設置したカメラを用いて複数の姿勢から参照画像と撮像画像を撮像する方法がある。しかし、この場合には、ロボットのアームに設置したカメラが取り得る姿勢からの画像しか取得できないという問題と、撮像画像の撮像毎にロボットのアームを移動する必要があるため、サーボ処理に時間がかかるという問題がある。
【００４４】
次に、ビジュアルサーボを行うに当たり、ロボットのアームの姿勢等により、撮像画像に対象物が映らなくなるオクルージョンが発生することがある。これが第２の課題である。前述した特許文献１は、この課題を解決する発明であり、オクルージョンが発生する位置又は姿勢を禁止領域に設定し、ロボットのアームが禁止領域内に移動することを防ぐものである。
【００４５】
本実施形態のロボット制御システムは、上記のような課題を解決するために、反射鏡を用いて効率的に撮像画像と参照画像を撮像する。具体的には、作業エリアにおいてカメラの撮像範囲内に入るように反射鏡を設置して、撮像画像を撮像する。これにより、一つの撮像部が撮像した撮像画像と、それに対応する参照画像とに基づいて、複数の方向からの位置合わせをすることが可能になる。
【００４６】
２．システム構成例
次に、本実施形態のロボット制御システム１０及びロボット３０の構成例を図１に示す。
【００４７】
ロボット制御システム１０は、参照画像記憶部１１０と、処理部１２０と、ロボット制御部１３０と、カメラ制御部１４０と、Ｉ／Ｆ部（入力部）１５０と、を含む。なお、ロボット制御システム１０は、図１の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。
【００４８】
次に、ロボット制御システム１０の各部で行われる処理について説明する。
【００４９】
まず、参照画像記憶部１１０は、ロボット３０の目標状態を表す画像である参照画像を記憶したり、処理部１２０、ロボット制御部１３０及びカメラ制御部１４０のワーク領域となったりするもので、その機能はＲＡＭ等のメモリーやＨＤＤ（ハードディスクドライブ）などにより実現できる。
【００５０】
次に、処理部１２０は、後述する撮像部４０から得られる撮像画像と、参照画像記憶部１１０から取得される参照画像とに基づいて、ロボット３０のビジュアルサーボを行い、ロボット３０の制御信号を出力する。
【００５１】
そして、ロボット制御部１３０は、制御信号に基づいて、ロボット３０を制御する。
【００５２】
また、カメラ制御部１４０は、撮像部４０の撮像方向を制御する。なお、処理部１２０と、ロボット制御部１３０と、カメラ制御部１４０の機能は、各種プロセッサー（ＣＰＵ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムなどにより実現できる。
【００５３】
さらに、入力部（Ｉ／Ｆ部）１５０は、ロボット制御システム１０に対する作業者からの入力を受け付けたり、ロボット３０及び撮像部４０との間で情報をやり取りしたりするためのインターフェースである。作業者からの入力等を受け付ける場合には、入力部（Ｉ／Ｆ部）１５０は、スイッチやボタン、キーボード或いはマウス等から構成されてもよい。また、ロボット制御システム１０とロボット３０間で情報をやり取りする場合には、入力部（Ｉ／Ｆ部）１５０は、有線又は無線の少なくとも一方を含むネットワークを介して通信を行う通信部であってもよい。
【００５４】
また、図１に示すように、ロボット３０は、制御部３１０と、第１のアーム３２０と、第２のアーム３３０と、第１のエンドエフェクター３４０と、第２のエンドエフェクター３５０と、を含む。さらに、図２（Ａ）及び図２（Ｂ）に示すように、ロボット３０では、第１のアーム３２０のエンドポイントには第１のエンドエフェクター３４０が、第２のアーム３３０のエンドポイントには第２のエンドエフェクター３５０が設けられる。なお、ロボット３０は、図１、図２（Ａ）及び図２（Ｂ）の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。
【００５５】
次に、ロボット３０の各部で行われる処理について説明する。
【００５６】
制御部３１０は、ロボット制御部１３０からの情報に基づいて、ロボット３０の各部（第１のアーム３２０、第２のアーム３３０、第１のエンドエフェクター３４０及び第２のエンドエフェクター３５０等）の制御を行う。
【００５７】
本実施形態のロボット３０は双腕のロボットであり、ロボット３０には、第１のアーム３２０と、第１のアーム３２０とは異なる第２のアーム３３０が設けられている。ここで、アームとは、ロボット３０のパーツであって、一つ以上の関節を含む可動パーツのことをいう。
【００５８】
また、エンドエフェクターは、アームのエンドポイントに設けられる把持部又はツールのことをいう。
【００５９】
そして、把持部とは、ワークを把持したり、持ち上げたり、吊り上げたり、吸着させたりするために用いる部品のことをいう。把持部は、ハンドであってもよいし、フックであってもよいし、吸盤等であってもよい。なお、１本のアームに対して、複数のハンドを設けても良い。
【００６０】
また、ツールとは、ワークや作業対象に対して加工等の作業を行うための道具であって、例えばドリルやドライバーなどの工具を指す。なお、ツールは、ハンドにより把持されるものであってもよいし、アームのエンドポイントに直接設けられるものであってもよい。ここで、アームのエンドポイントとは、アームの先端部分のポイントであって、ロボット３０のハンド以外の他の部分と接続されていない部分のことをいう。
【００６１】
さらに、撮像部４０は、ロボット３０の作業現場等を撮像し、制御部３１０とＩ／Ｆ部１５０を介して処理部１２０に撮像画像を出力する。例えば撮像部４０は、可視カメラであってもよいし、赤外線カメラであってもよい。さらに、例えば可視カメラは、撮像素子としてＣＣＤやＣＭＯＳを用いるカメラであっても良く、また、白黒カメラであっても、カラーカメラであっても良い。白黒カメラを使う場合には、撮像画像として濃淡画像が撮像され、カラーカメラを使う場合には、撮像画像として色画像が撮像される。なお、可視カメラ及び赤外線カメラは、画像処理用等に用いられるデバイス（プロセッサー）を含んでもよい。本実施形態においては、撮像部４０は撮像画像そのものを出力するが、これに限定されるものではない。例えば、処理部１２０において行う画像処理の一部を、撮像部４０が行っても良い。その場合、撮像画像に対して、画像処理が施された後の撮像情報が処理部１２０に出力されることになる。
【００６２】
次に、ロボット制御システム１０とロボット３０の一例を図２（Ａ）及び図２（Ｂ）に示す。例えば図２（Ａ）のロボット３０では、ロボット本体３０（ロボット）とロボット制御システム１０とが一体に構成されている。しかし、本実施形態のロボット制御システム１０及びロボット３０は図２（Ａ）の構成に限定されず、図２（Ｂ）のようにロボット本体３０とロボット制御システム１０とが別体に構成されていてもよい。具体的には図２（Ａ）に示したように、ロボット３０は、ロボット本体（第１のアーム３２０、第２のアーム３３０、第１のエンドエフェクター３４０及びエンドエフェクター３５０を有する）及びロボット本体を支えるベースユニット部を有し、当該ベースユニット部にロボット制御システム１０が格納されるものであってもよい。図２（Ａ）のロボット３０には、ベースユニット部に車輪等が設けられ、ロボット３０全体が移動可能な構成となっていてもよい。なお、図２（Ａ）のロボット３０は双腕型の例であるが、ロボット３０は単腕型や多腕型のロボットであってもよい。なお、ロボット３０は、人手により移動させられるものであってもよいし、車輪を駆動するモーターを設け、当該モーターをロボット制御システム１０により制御することにより、移動させられるものであってもよい。また、ロボット制御システム１０は、図２（Ａ）のようにロボット３０の下に設けられたベースユニット部に設けられるとは限られない。
【００６３】
３．ビジュアルサーボの概要
本実施形態の処理の詳細を説明する前に、ビジュアルサーボの概要と、位置ベースビジュアルサーボの流れ、特徴ベースビジュアルサーボの流れについて説明する。
【００６４】
ビジュアルサーボとは、目標物の位置の変化を視覚情報として計測し、それをフィードバック情報として用いることによって目標物を追跡するサーボ系の一種である。ビジュアルサーボは、サーボ系への入力情報（制御量）によって、位置ベースビジュアルサーボと特徴ベースビジュアルサーボの二つに大別される。位置ベースビジュアルサーボは、物体の位置情報や姿勢情報がサーボ系への入力情報となり、特徴ベースビジュアルサーボは、画像の特徴量がサーボ系への入力情報となる。他にも、位置ベースと特徴ベースをハイブリッドした手法もある。本実施形態で扱うビジュアルサーボは、これら全ての手法を対象とする。
【００６５】
これらのビジュアルサーボは、参照画像と撮像画像を元にサーボ系への入力情報を求める点で共通している。
【００６６】
３．１  位置ベースビジュアルサーボの流れ
まず、図３のフローチャートにおいて、位置ベースビジュアルサーボの流れを示す。位置ベースビジュアルサーボでは、まず参照画像を設定する（Ｓ１）。ここで、参照画像とは、目標画像やゴール画像とも呼ばれ、ビジュアルサーボの制御目標となる画像であり、ロボット３０の目標状態を表す画像をいう。すなわち、参照画像とは、ロボット３０の目標位置や目標姿勢を表す画像、もしくはロボット３０が目標位置に位置する状態を表す画像である。また、参照画像はあらかじめ用意しておき、参照画像記憶部１１０に記憶しておく必要がある。
【００６７】
次に、撮像部４０によって作業スペースを撮像し、撮像画像を取得する（Ｓ２）。撮像画像とは、撮像部４０によって撮像された画像である。撮像画像は、作業スペースの現在の状態を表しており、撮像画像内にロボット３０やワークが映りこんでいる場合には、ロボット３０やワークの現在の状態を表している。なお、撮像部４０の性能によっては処理遅延が生じるが、ここでは、処理遅延が生じている場合でも、撮像画像には現在の状態が映されているものとして扱う。
【００６８】
例えば、図４（Ａ）に参照画像ＲＩＭの具体例を、図４（Ｂ）に撮像画像ＰＩＭの具体例を示す。撮像画像ＰＩＭにおいて、ロボットＲＢはアームＡＭとハンドＨＤ（もしくはエンドポイントＥＰ）を上方へ向けているが、参照画像ＲＩＭでは、ロボットＲＢはアームＡＭを折り曲げて、ハンドＨＤをワークＷＫに近づけている。したがって、この具体例においては、ロボットＲＢのアームＡＭを折り曲げ、ハンドＨＤをワークＷＫに近づけるようにロボットＲＢを制御することになる。
【００６９】
次に、制御指令を生成する（Ｓ３）。例えば、制御指令生成は、参照画像と撮像画像に基づいて、座標変換の一つであるホモグラフィー等を用いることにより行われる。この場合には、ホモグラフィー行列を求め、ホモグラフィー行列からロボット３０の制御信号として速度指令を生成する。
【００７０】
ここで、制御信号（制御指令）とは、ロボット３０を制御するための情報を含む信号のことをいう。例えば、制御信号としては速度指令などがある。また、速度指令とは、ロボット３０の各部を制御するための情報として、ロボット３０のアームのエンドポイント等の移動速度や回転速度を与える指令の方法を指す。
【００７１】
そして、生成された制御信号に基づいて、制御量（ここではロボット３０の位置や姿勢）が目標値に収束したか否かを判断する（Ｓ４）。例えば、ホモグラフィーを用いる場合において、速度指令により表される速度ベクトルが０である場合には、制御量である位置や姿勢が目標状態に到達したとみなすことができるため、制御量が目標値に収束したと判断し、速度ベクトルが０でない場合には、制御量が目標値に収束していないと判断する。ここで、収束とは、目標値に限りなく近づくこと、又は目標値に到達することを意味する。
【００７２】
制御量が目標値に収束したと判断する場合にはビジュアルサーボを終了する。一方、制御量が目標値に収束していないと判断する場合には、処理部１２０はロボット制御部１３０に制御指令を送出する（Ｓ５）。
【００７３】
位置ベースビジュアルサーボでは、制御量が目標値に収束するまで以上の処理を繰り返す。
【００７４】
３．２  特徴ベースビジュアルサーボの流れ
次に、図５のフローチャートにおいて、特徴ベースビジュアルサーボの流れを示す。位置ベースビジュアルサーボと同様に、まず参照画像を設定し（Ｓ１０）、次に、撮像部４０によって作業スペースを撮像し、撮像画像を取得する（Ｓ１１）。なお、特徴ベースビジュアルサーボを用いる場合には、参照画像を設定する際に参照画像の特徴抽出を行い、特徴量を算出しておくことが望ましい。または、参照画像の特徴を抽出した参照画像情報を参照画像記憶部１１０に記憶しておいてもよい。画像の特徴抽出については、例えば、コーナー検出やガウスフィルタ等を用いて行なう。
【００７５】
次に、撮像画像の特徴を抽出する（Ｓ１２）。なお、参照画像の特徴抽出は、参照画像設定の際に行っておくことが望ましいが、本ステップで行ってもよい。特徴抽出では、ビジュアルサーボ系への入力情報（制御量）として、画像の特徴量を求める。
【００７６】
そして、画像の特徴量に基づいて、参照画像と撮像画像が一致するか否かを比較する（Ｓ１３）。画像が一致すると判断する場合（Ｓ１４）には、ビジュアルサーボを終了する。一方、画像が一致しないと判断する場合（Ｓ１４）には、制御指令を生成し（Ｓ１５）、ロボット制御部１３０に制御指令を送出する（Ｓ１６）。
【００７７】
特徴ベースビジュアルサーボでは、制御量が目標値に収束するまで以上の処理を繰り返す。
【００７８】
４．処理の詳細
以上の本実施形態のロボット制御システム１０は、ロボット３０の目標状態を表す画像である参照画像を記憶する参照画像記憶部１１０と、ロボット３０の制御信号を出力する処理部１２０と、制御信号に基づいて、ロボット３０を制御するロボット制御部１３０と、を含む。そして、参照画像記憶部１１０は、対象物の反射画像を含む参照画像を記憶する。さらに、処理部１２０は、対象物を映す反射鏡が撮像部４０の撮像範囲内に入る撮像画像と、参照画像とに基づいて、ビジュアルサーボを行う。
【００７９】
本実施形態では、処理部１２０が、対象物の反射画像を含む参照画像を参照画像記憶部１１０から取得する。
【００８０】
ここで、反射画像とは、対象物が反射鏡に映っているように見える画像のことをいう。具体的に反射画像は、実際に対象物が映っている反射鏡を撮像して得られる画像であってもよい。また、反射画像は、反射鏡が設置されている位置から対象物を撮像し、撮像した画像に対して傾き補正などの画像処理を行って得られた画像であってもよい。さらに、反射画像は、ＣＧ（Computer Graphics）等により生成された画像であってもよい。
【００８１】
これに対して、対象物を映す反射鏡が撮像部４０の撮像範囲内に入る撮像画像を、撮像部４０が撮像し、処理部１２０が撮像画像を取得する。そして、処理部１２０は、取得した撮像画像と参照画像とに基づいて、ビジュアルサーボを行う。
【００８２】
ここで、撮像範囲とは、撮像部により撮像される実空間の領域のことをいう。具体的には、後述する図６（Ａ）の領域ＰＡなどのことを指す。
【００８３】
このように、参照画像と撮像画像には、少なくとも２方向から見た対象物が映っている。よって、一つの撮像部が撮像した撮像画像と、これに対応する参照画像とに基づいて、複数の方向からの位置合わせをすることが可能となる。
【００８４】
また、撮像部と比較して、反射鏡は薄く、配線も不要であるため、より狭い場所（面積）で、かつ自由な場所に設置することが可能である。よって、撮像部の設置場所の問題を解決することができる。また、撮像部を複数設けた時に比べて、処理の複雑さを緩和し、処理速度も向上させることもできる。
【００８５】
さらに、複数の方向からの対象物の様子をタイミングのずれなく撮像することも可能となる。
【００８６】
また、参照画像記憶部１１０は、対象物が映り、対象物の反射画像を含む参照画像を記憶してもよい。そして、処理部１２０は、反射鏡及び対象物が撮像範囲内に入る撮像画像と、参照画像とに基づいて、ビジュアルサーボを行ってもよい。
【００８７】
すなわち、この場合、参照画像と撮像画像には、対象物の撮像部と向き合っている面と、対象物の反射鏡と向き合っている面の２つの面が映っている。なお、参照画像には、前述したように、対象物を映す反射鏡が映っていても良いし、ＣＧ等により生成された反射画像が、参照画像内の反射鏡に対応する位置に埋め込まれていても良い。
【００８８】
これにより、一度のビジュアルサーボを行うだけで、撮像部４０から対象物への方向と、反射鏡から対象物への方向の２つの方向から、位置合わせをすること等が可能になる。
【００８９】
また、参照画像記憶部１１０は、対象物の反射画像を２つ以上含む参照画像を記憶してもよい。そして、処理部１２０は、２つ以上の反射鏡が撮像部４０の撮像範囲内に入る撮像画像と、参照画像とに基づいて、ビジュアルサーボを行ってもよい。
【００９０】
具体例を図６（Ａ)及び図６（Ｂ）に示す。本例では、図６（Ａ）に示すように、撮像部ＣＭから見て対象物ＯＢの後方に、二枚の反射鏡（ＭＬ１及びＭＬ２）を配置する。そして、対象物ＯＢと第１の反射鏡ＭＬ１と第２の反射鏡ＭＬ２とが入るように、撮像部ＣＭの撮像範囲ＰＡを設定し、作業エリアを撮像する。
【００９１】
すると、図６（Ｂ)に示すような撮像画像ＰＩＭが得られる。撮像画像ＰＩＭでは、撮像部ＣＭから見た対象物ＯＢと、第１の反射鏡ＭＬ１に映った対象物ＯＢと、第２の反射鏡ＭＬ２に映った対象物ＯＢの様子が１枚の画像内で確認することができる。本例では、この撮像画像と、これに対応する参照画像とに基づいて、ビジュアルサーボを行う。
【００９２】
これにより、一度のビジュアルサーボを行うだけで、撮像部４０から対象物への方向と、第１の反射鏡から対象物への方向と、第２の反射鏡から対象物への方向の３つの方向から、位置合わせをすること等が可能になる。よって、複数の撮像部を用意しなくても、複数の方向からの位置合わせを行うこと等が可能になる。同様に、ロボットのアームにカメラを取り付けて、アームを移動させながら、複数の方向から対象物を撮像しなくても、複数方向からの位置合わせをすること等が可能になる。
【００９３】
また、反射鏡は、対象物が映っている様子を撮像部４０の位置から見ることができるように配置されている必要がある。
【００９４】
そのため、反射鏡は、作業エリアにおいて、撮像部４０と対象物とを結ぶ直線に対して垂直な直線であって、対象物を通る垂直な直線を基準として、撮像部４０の位置とは逆側に設置されてもよい。
【００９５】
具体的に図７を用いて説明する。図７では、反射鏡として、第１の反射鏡ＭＬ１と第２の反射鏡ＭＬ２を設置することとする。そして、撮像部ＣＭと対象物ＯＢとを結ぶ直線とは、直線ＳＴのことを指し、直線ＳＴに対して垂直な直線であって、対象物を通る直線とは、直線ＰＤのことを指す。さらに、直線ＰＤを基準として撮像部ＣＭの位置とは逆側とは、図７の斜線で示すエリアＳＡのことを指し、この斜線で示すエリアＳＡ内のいずれかの位置に反射鏡（ＭＬ１及びＭＬ２）を設置することが望ましい。
【００９６】
これにより、対象物が映っている様子を撮像部４０の位置から見ることができるような位置に反射鏡を配置すること等が可能になる。そして、対象物が反射鏡に映った撮像画像を撮像部４０が撮像すること等が可能となる。
【００９７】
また、参照画像記憶部１１０は、対象物の反射画像を参照画像として記憶してもよい。そして、処理部１２０は、撮像画像において反射鏡が映る反射鏡領域の検出処理を行い、撮像画像における反射鏡領域の画像と、参照画像とに基づいて、ビジュアルサーボを行ってもよい。
【００９８】
例えば前述した図６（Ｂ）の例において、撮像画像ＰＩＭから、対象物が映る領域ＣＩＭ１と、反射鏡が映る反射鏡領域ＣＩＭ２及びＣＩＭ３を検出してもよい。そして、対象物の反射画像そのものを参照画像として、検出した各領域（ＣＩＭ１〜ＣＩＭ３）の画像と参照画像とに基づいて、ビジュアルサーボを行ってもよい。
【００９９】
この場合には、各領域の画像毎に順番にビジュアルサーボを行ってもよいし、各領域の画像毎に同時にビジュアルサーボを行ってもよい。
【０１００】
一方で、対象物が映る領域と反射鏡領域以外の部分を考慮せずに、ビジュアルサーボを行うことができるという利点もある。そのため、画像処理やＣＧを用いて参照画像を生成する場合には、利便性が高い。
【０１０１】
これにより、対象物が映る領域と反射鏡領域以外の領域を考慮する必要がなくなるため、参照画像の生成を容易にすること等が可能になる。
【０１０２】
また、処理部１２０は、反射鏡領域の検出処理として、反射鏡に設けられたマーカー又は枠を検出する処理を行ってもよい。
【０１０３】
具体的には図８に示すように、対象物ＯＢを映す反射鏡ＭＬ１及びＭＬ２の四隅にマーカーＭＫが付されており、このマーカーＭＫを検出する。
【０１０４】
これにより、反射鏡領域を容易に検出すること等が可能になる。
【０１０５】
また、処理部１２０は、ビジュアルサーボとして、撮像画像が参照画像に一致又は近づくようにロボット３０を制御する処理を行ってもよい。
【０１０６】
これにより、ロボット３０の目標姿勢が映る参照画像を用いれば、目標姿勢と同じ又は近い姿勢をロボット３０に取らせること等が可能になる。
【０１０７】
また、本実施形態では、反射及び透過の制御が可能な調光ミラーデバイスを反射鏡として利用し、反射鏡を映す時にのみ、光を反射するように制御してもよい。
【０１０８】
これにより、他の画像処理への悪影響を避けることが可能になる。
【０１０９】
以下では、図９のフローチャートを用いて、本実施形態の処理の流れについて説明する。
【０１１０】
まず、撮像部が撮像画像を撮像する（Ｓ１０１）。そして、撮像画像において対象物が映る領域と反射鏡領域を検出し（Ｓ１０２）、対象物が映る領域の画像と反射鏡領域の画像を撮像画像から分離する（Ｓ１０３）。
【０１１１】
そして、対象物が正しく映っていない画像を除外する（Ｓ１０４）。なお、対象物が正しく映っていない画像とは、例えば後述する図１１（Ｂ）のようにオクルージョンが発生している画像などを指す。
【０１１２】
さらに、各領域の画像と対応する参照画像を比較して、誤差を計算し（Ｓ１０５）、誤差が十分小さくなったか否かを判定する（Ｓ１０６）。なお、誤差が十分小さいか否かの判定は、例えば所与の閾値との比較により判定する。
【０１１３】
そして、誤差が十分小さくなったと判定した場合には、処理を終了する。一方、誤差が十分小さくないと判定した場合には、ステップＳ１０１の処理に戻る。以上が本実施形態の処理の流れである。
【０１１４】
５．第１の変形例
次に、第１の変形例として、撮像部の方向を機械的に変えられる三脚等を用い、作業エリア内に設置した対象物と各反射鏡を一つずつ撮像していくことで、ビジュアルサーボに利用する複数方向からの参照画像と撮像画像を取得する手法が考えられる。
【０１１５】
すなわち、本実施形態のロボット制御システム１０は、撮像部４０の撮像方向を制御するカメラ制御部１４０を有してもよい。そして、処理部１２０は、撮像部４０を対象物に向けた時に撮像される第１の撮像画像と、対象物が映る第１の参照画像とに基づく第１のビジュアルサーボと、撮像部４０を反射鏡に向けた時に撮像される第２の撮像画像と、対象物の反射画像を含む第２の参照画像とに基づく第２のビジュアルサーボとを行ってもよい。
【０１１６】
具体例を図１０（Ａ）及び図１０（Ｂ）を用いて説明する。まず、図１０（Ａ）に示すように、対象物ＯＢが撮像範囲ＰＡ内に入るようにして、撮像部ＣＭが作業エリアを撮像し、第１の撮像画像を得る。そして、第１の撮像画像に対応するように生成（又は撮像）された第１の参照画像と、第１の撮像画像とに基づいて第１のビジュアルサーボを行う。
【０１１７】
一方、図１０（Ｂ）に示すように、反射鏡ＭＬ２が撮像範囲ＰＡ内に入るようにして、撮像部ＣＭが作業エリアを撮像し、第２の撮像画像を得る。そして、第２の撮像画像に対応するように生成（又は撮像）された第２の参照画像と、第２の撮像画像とに基づいて第２のビジュアルサーボを行う。
【０１１８】
なお、第１のビジュアルサーボと第２のビジュアルサーボは、後述する例のように連続して行ってもよいし、どちらか一方のみを行ってもよい。
【０１１９】
前述した例のように、撮像部４０の撮像方向が固定である場合には、撮像部４０の撮像範囲内に反射鏡を設置しなければならなかった。それに対して、本例では、反射鏡をより自由な位置に設置できるため、より適切な参照画像を利用すること等が可能になる。
【０１２０】
また、処理部１２０は、撮像部４０を第２の反射鏡に向けた時に撮像される第３の撮像画像と、対象物の第２の反射画像を含む第３の参照画像とに基づく第３のビジュアルサーボを行ってもよい。
【０１２１】
つまり、前述した図１０（Ａ）及び図１０（Ｂ）の例で説明すると、反射鏡ＭＬ１が撮像範囲ＰＡ内に入るようにして、撮像部ＣＭが作業エリアを撮像し、第３の撮像画像を得る。そして、第３の撮像画像に対応するように生成（又は撮像）された第３の参照画像と、第３の撮像画像とに基づいて第３のビジュアルサーボを行う。
【０１２２】
また、図１１（Ａ）に示すように、対象物ＯＢと撮像部ＣＭの間に障害物ＨＵがある場合などには、図１１（Ｂ）に示すような撮像画像ＰＩＭが撮像される。このような、撮像画像では、適切にビジュアルサーボを行うことができない。しかし、本例のように、対象物を正面から撮像した撮像画像と、反射鏡を撮像した２枚の撮像画像がある場合には、取得した撮像画像のうち、適切にビジュアルサーボを行うことができると判断できる撮像画像のみを用いてビジュアルサーボを行うことができる。
【０１２３】
これにより、例えば正しく対象物が写っている画像のみを利用してビジュアルサーボを実施すること等が可能になる。その結果、撮像画像において対象物にオクルージョンが発生している場合でも、適切にビジュアルサーボを実施すること等が可能になる。
【０１２４】
以下では、図１２のフローチャートと、図１０（Ａ）及び図１０（Ｂ）を用いて、第１の変形例の処理の流れについて説明する。
【０１２５】
まず、図１０（Ａ）のように、対象物が撮像範囲に入った状態で、撮像部４０が作業エリアを撮像し（Ｓ２０１）、処理部１２０が、取得された撮像画像の特徴量を抽出する（Ｓ２０２）。
【０１２６】
次に、カメラ制御部１４０が、撮像部４０の撮像方向を変更する（Ｓ２０３）。例えば、図１０（Ｂ）に示すように、反射鏡ＭＬ２が撮像範囲に入るように撮像部４０の向きを変える。
【０１２７】
そして、撮像部４０が撮像を行い（Ｓ２０４）、処理部１２０が、取得した撮像画像において反射鏡領域を検出して（Ｓ２０５）、検出した反射鏡領域の画像の特徴量を抽出する（Ｓ２０６）。
【０１２８】
さらに、処理部１２０は、ビジュアルサーボを行うにあたり、必要十分な反射鏡領域の画像の特徴量が抽出されているか否かを判定する（Ｓ２０７）。
【０１２９】
そして、必要十分な反射鏡領域の画像の特徴量が抽出されていないと判定した場合には、ステップＳ２０３に戻り、例えばカメラ制御部１４０が、反射鏡ＭＬ１が撮像範囲に入るように撮像部４０の向きを変えて、撮像部４０が撮像を行い（Ｓ２０４）、処理部１２０が、撮像された撮像画像の反射鏡領域の画像の特徴量を抽出する（Ｓ２０５、Ｓ２０６）。
【０１３０】
一方で、ステップＳ２０７において、必要十分な反射鏡領域の画像の特徴量が抽出されていると判定した場合には、処理部１２０は、抽出した特徴量と、あらかじめ算出しておいた参照画像の特徴量とを比較して、２つの特徴量の差を算出し（Ｓ２０８）、２つの特徴量の差が十分小さいか否かを判定する（Ｓ２０９）。そして、２つの特徴量の差が十分小さいと判定した場合には、処理を終了する。
【０１３１】
一方で、２つの特徴量の差が大きいと判定した場合には、２つの特徴量の差に基づいて、ロボット３０のアームの移動方向を決定し（Ｓ２１０）、ロボット制御部１３０がロボット３０のアームを移動させる（Ｓ２１１）。そして、ステップＳ２０１の処理に戻り、以降の処理を繰り返す。以上が第１の変形例の処理の流れである。
【０１３２】
６．第２の変形例
次に、第２の変形例では、反射鏡は、ロボット３０のアームに取り付けられてもよい。
【０１３３】
すなわち、ロボット３０は、第１のアーム３２０と第２のアーム３３０を有していてもよい。そして、反射鏡は、第１のアーム３２０に取り付けられてもよい。さらに、処理部１２０は、第１のアーム３２０に取り付けられた反射鏡が撮像部４０の撮像範囲内に入る撮像画像と、参照画像とに基づいて、第２のアーム３３０を動かすビジュアルサーボを行ってもよい。
【０１３４】
具体的には図１３に示すように、第１のアームＡＭ１に取り付けられた反射鏡ＭＬが撮像範囲ＰＡ内に入るようにして、撮像部ＣＭが作業エリアを撮像し、撮像画像を得る。そして、撮像画像に対応するように生成（又は撮像）された参照画像と、撮像画像とに基づいて、第２のアームＡＭ２を動かすためのビジュアルサーボを行う。
【０１３５】
このように、ロボット３０のアームを移動させることにより、反射鏡の位置を変えること等が可能になる。これにより、ビジュアルサーボ中にオクルージョンが発生した場合などにも、柔軟にビジュアルサーボを実施すること等が可能になる。
【０１３６】
また、反射鏡は平面鏡に限らず、例えば凹面鏡であってもよい。
【０１３７】
これにより、１枚の反射鏡だけで複数の角度から対象物を撮像することが可能となり、ビジュアルサーボ中にオクルージョンが発生した場合などにも、柔軟にビジュアルサーボを実施すること等が可能になる。
【０１３８】
また、反射鏡が複数あって、１つの反射鏡に別の反射鏡が映りこんでいる場合には、映りこんでいる反射鏡をマスクしてもよい。
【０１３９】
例えば、処理部１２０は、対象物を映す第１の反射鏡が撮像範囲内に入る撮像画像に含まれる反射画像において、第２の反射鏡のマーカー又は枠が映る領域を検出し、検出結果に基づいて、第２の反射鏡が映る領域をマスクしてもよい。
【０１４０】
これにより、不要な反射鏡の映りこみにより、ビジュアルサーボが収束しなくなることを抑制すること等が可能になる。なお、マスクにより不要な反射鏡が映る領域を完全に消しても良いし、ぼかすだけでもよい。また、反射鏡が映る領域の検出を、反射鏡に設けられたマーカーや枠を利用しても良い。これにより、不要な反射鏡の検出を簡易にすること等が可能になる。
【０１４１】
以下では、図１４のフローチャートを用いて、第２の変形例の処理の流れについて説明する。なお、ステップＳ３０１〜ステップＳ３０６は、図１２のステップＳ２０１〜ステップＳ２０６に対応し、ステップＳ３１０〜ステップＳ３１３は、図１２のステップＳ２０８〜ステップＳ２１１に対応するため、説明を省略する。
【０１４２】
ステップＳ３０７において、必要十分な反射鏡領域の画像の特徴量が抽出されていると判定した場合には、図１２の場合と同様に、ステップＳ３１０以降の処理を行う。
【０１４３】
一方で、ステップＳ３０７において、必要十分な反射鏡領域の画像の特徴量が抽出されていないと判定した場合には、反射鏡がロボット３０のアームに設置されており、かつアームの移動回数が既定の回数以下であるか否かを判定する（Ｓ３０８）。
【０１４４】
反射鏡がロボット３０のアームに設置されていない、又はアームの移動回数が既定の回数よりも多いと判定した場合には、ステップＳ３０３の処理に戻る。
【０１４５】
一方で、反射鏡がロボット３０のアームに設置されており、かつアームの移動回数が既定の回数以下であると判定した場合には、反射鏡が取り付けられているアームを動かして、反射鏡の位置を変更する（Ｓ３０９）。そして、ステップＳ３０４の処理に戻る。以上が第２の変形例の処理の流れである。
【０１４６】
なお、本実施形態のロボット制御システム１０及びロボット３０等は、その処理の一部または大部分をプログラムにより実現してもよい。この場合には、ＣＰＵ等のプロセッサーがプログラムを実行することで、本実施形態のロボット制御システム１０及びロボット３０等が実現される。具体的には、情報記憶媒体に記憶されたプログラムが読み出され、読み出されたプログラムをＣＰＵ等のプロセッサーが実行する。ここで、情報記憶媒体（コンピューターにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＤＶＤ、ＣＤ等）、ＨＤＤ（ハードディスクドライブ）、或いはメモリー（カード型メモリー、ＲＯＭ等）などにより実現できる。そして、ＣＰＵ等のプロセッサーは、情報記憶媒体に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。即ち、情報記憶媒体には、本実施形態の各部としてコンピューター（操作部、処理部、記憶部、出力部を備える装置）を機能させるためのプログラム（各部の処理をコンピューターに実行させるためのプログラム）が記憶される。
【０１４７】
以上のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また、ロボット制御システム及びロボットの構成、動作も本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【符号の説明】
【０１４８】
１０  ロボット制御システム、３０  ロボット、４０  撮像部、
１１０  参照画像記憶部、１２０  処理部、１３０  ロボット制御部、
１４０  カメラ制御部、１５０  Ｉ／Ｆ部（入力部）、３１０  制御部、
３２０  第１のアーム、３３０  第２のアーム、３４０  第１のエンドエフェクター、
３５０  第２のエンドエフェクター
【図１】
2014188617.tif 000003
【図２】
2014188617.tif 000004
【図３】
2014188617.tif 000005
【図４】
2014188617.tif 000006
【図５】
2014188617.tif 000007
【図６】
2014188617.tif 000008
【図７】
2014188617.tif 000009
【図８】
2014188617.tif 000010
【図９】
2014188617.tif 000011
【図１０】
2014188617.tif 000012
【図１１】
2014188617.tif 000013
【図１２】
2014188617.tif 000014
【図１３】
2014188617.tif 000015
【図１４】
2014188617.tif 000016