(57)【要約】【課題】作業者にとっての使い勝手に優れた制御装置、ロボットシステムおよび制御方法を提供すること。【解決手段】撮像可能な第１撮像部からの第１撮像画像に関する情報を受け付ける受付部と、前記情報に基づいて、作業対象物を保持可能な可動部を有するロボットの駆動に関する指令を実行可能な制御部と、を備え、前記制御部は、前記ロボットに関する座標系であるロボット座標系と、前記第１撮像画像に関する座標系である第１画像座標系と、の対応付けを実行可能であり、前記第１撮像部の撮像領域内の複数の位置のそれぞれにあるときの前記作業対象物を保持している前記可動部の所定部位の前記ロボット座標系における座標と、前記複数の位置のそれぞれにあるときの前記作業対象物の前記第１画像座標系における座標とに基づいて、前記対応付けを行うことを特徴とする制御装置。【選択図】図１
2019025578.tif 000002
【特許請求の範囲】
【請求項１】
撮像可能な第１撮像部からの第１撮像画像に関する情報を受け付ける受付部と、
前記情報に基づいて、作業対象物を保持可能な可動部を有するロボットの駆動に関する指令を実行可能な制御部と、を備え、
前記制御部は、前記ロボットに関する座標系であるロボット座標系と、前記第１撮像画像に関する座標系である第１画像座標系と、の対応付けを実行可能であり、前記第１撮像部の撮像領域内の複数の位置のそれぞれにあるときの前記作業対象物を保持している前記可動部の所定部位の前記ロボット座標系における座標と、前記複数の位置のそれぞれにあるときの前記作業対象物の前記第１画像座標系における座標とに基づいて、前記対応付けを行うことを特徴とする制御装置。
【請求項２】
前記制御部は、前記対応付けにおいて、前記作業対象物が前記撮像領域内における第１位置にあるときに撮像された前記第１撮像画像と、前記作業対象物が前記撮像領域内における前記第１位置とは異なる第２位置にあるときに撮像された前記第１撮像画像とを用いる請求項１に記載の制御装置。
【請求項３】
前記作業対象物は、第１作業対象物と、前記第１作業対象物とは異なる第２作業対象物とを含み、
前記制御部は、前記対応付けにおいて、前記第１作業対象物が前記撮像領域内における第１位置にあるときに撮像された前記第１撮像画像と、前記第２作業対象物が前記撮像領域内における前記第１位置とは異なる第２位置にあるときに撮像された前記第１撮像画像とを用いる請求項１に記載の制御装置。
【請求項４】
前記作業対象物は、第１作業対象物と、前記第１作業対象物とは異なる第２作業対象物とを含み、
前記制御部は、前記対応付けにおいて、前記第１作業対象物が前記撮像領域内における第１位置にあり、かつ、前記第２作業対象物が前記撮像領域内における前記第１位置とは異なる第２位置にあるときに撮像された前記第１撮像画像を用いる請求項１に記載の制御装置。
【請求項５】
前記制御部は、前記対応付けにおいて、前記作業対象物を前記可動部で保持している状態での前記所定部位の前記ロボット座標系における座標を求め、前記可動部を前記作業対象物から離脱させた後、前記作業対象物の前記第１撮像画像における座標を求める請求項１ないし３のいずれか１項に記載の制御装置。
【請求項６】
前記受付部は、前記作業対象物が配置されている作業台を撮像可能に設けられた前記第１撮像部と通信可能である請求項１ないし５のいずれか１項に記載の制御装置。
【請求項７】
前記受付部は、撮像可能で前記第１撮像部とは異なる第２撮像部からの第２撮像画像に関する情報を受け付けることが可能であり、
前記制御部は、前記ロボット座標系と前記第２撮像画像に関する座標系である第２画像座標系との座標変換が可能であり、前記座標変換を基にして前記所定部位に対する前記作業対象物の位置を求める請求項１ないし６のいずれか１項に記載の制御装置。
【請求項８】
前記受付部は、前記可動部により保持された状態の前記作業対象物を撮像可能に設けられた前記第２撮像部と通信可能である請求項７に記載の制御装置。
【請求項９】
請求項１ないし８のいずれか１項に記載の制御装置と、前記制御装置により制御されるロボットと、を有することを特徴とするロボットシステム。
【請求項１０】
作業対象物を保持可能な可動部を有するロボットに関する座標系であるロボット座標系と、撮像可能な第１撮像部から第１撮像画像に関する座標系である第１画像座標系と、の対応付けを行うステップと、
前記対応付けの結果と、前記第１撮像部からの前記第１撮像画像に関する情報とに基づいて、前記ロボットを駆動させるステップと、を有し、
前記対応付けを行うステップでは、前記第１撮像部の撮像領域内の複数の位置のそれぞれにあるときの前記作業対象物を保持している前記可動部の所定部位の前記ロボット座標系における座標と、前記複数の位置のそれぞれにあるときの前記作業対象物の前記第１画像座標系における座標とに基づいて、前記対応付けを行うことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、ロボットシステムおよび制御方法に関する。
【背景技術】
【０００２】
従来から、作業対象物に対して作業を行うロボットと、作業対象物を撮像可能なカメラ（撮像部）とを有するロボットシステムが知られている。このようなロボットシステムでは、カメラで撮像した画像を基にして、ロボットは実空間内における各種作業を行うことができる。画像を基にしてロボットが作業するためには、カメラで撮像した画像の画像座標系と、ロボットの制御の基準となるロボット座標系とのキャリブレーション（対応付け）が必要である。例えば、カメラで撮像した２次元画像での画像座標系と、ロボットが作業を行う作業台表面の２次元空間におけるロボット座標系とのキャリブレーションが必要である。
【０００３】
特許文献１には、複数のマーカーが付されたマーカーボードを用いたキャリブレーションの方法が開示されている。かかる方法は、１つのマーカーのロボット座標での位置情報とカメラの画像座標での位置情報とを取得して、これら２つの位置情報を結び付けることで、ロボット座標系と画像座標系とのキャリブレーションを行う方法である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−１８７８４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、従来の方法では、マーカーボード等の専用の部材を用意しなければならず、作業者にとっては手間であった。
【０００６】
また、２次元画像での画像座標系と、作業台の表面の２次元空間におけるロボット座標系とのキャリブレーションでは、作業台上の高さ方向におけるキャリブレーションを行っていない。それゆえ、マーカーボードの高さと作業対象物の高さとが一致していないと、キャリブレーションの結果を用いてロボットに適切な作業を行わせることが難しい。そのため、作業者は作業対象物の高さに応じたマーカーボードを用意する必要があり、作業者にとっては使い勝手がよくないという問題があった。
【課題を解決するための手段】
【０００７】
本発明は、前述した課題の少なくとも一部を解決するためになされたものであり、以下により実現することが可能である。
【０００８】
本適用例の制御装置は、撮像可能な第１撮像部からの第１撮像画像に関する情報を受け付ける受付部と、前記情報に基づいて、作業対象物を保持可能な可動部を有するロボットの駆動に関する指令を実行可能な制御部と、を備え、前記制御部は、前記ロボットに関する座標系であるロボット座標系と、前記第１撮像画像に関する座標系である第１画像座標系と、の対応付けを実行可能であり、前記第１撮像部の撮像領域内の複数の位置のそれぞれにあるときの前記作業対象物を保持している前記可動部の所定部位の前記ロボット座標系における座標と、前記複数の位置のそれぞれにあるときの前記作業対象物の前記第１画像座標系における座標とに基づいて、前記対応付けを行うことを特徴とする。
【０００９】
このような制御装置によれば、作業対象物を用いてキャリブレーション（対応付け）を行うことができるため、キャリブレーション用の専用部材を用意する手間を省くことができ、作業者の使い勝手を向上させることができる。また、より正確なキャリブレーションが可能である。また、キャリブレーションの結果を用いることで、作業対象物に対する実際の作業をロボットにより的確に行わせることができる。
【００１０】
本適用例の制御装置では、前記制御部は、前記対応付けにおいて、前記作業対象物が前記撮像領域内における第１位置にあるときに撮像された前記第１撮像画像と、前記作業対象物が前記撮像領域内における前記第１位置とは異なる第２位置にあるときに撮像された前記第１撮像画像とを用いることが好ましい。
【００１１】
これにより、１つの第１撮像部でキャリブレーションを迅速かつ容易に、また、より正確に行うことができる。
【００１２】
本適用例の制御装置では、前記作業対象物は、第１作業対象物と、前記第１作業対象物とは異なる第２作業対象物とを含み、前記制御部は、前記対応付けにおいて、前記第１作業対象物が前記撮像領域内における第１位置にあるときに撮像された前記第１撮像画像と、前記第２作業対象物が前記撮像領域内における前記第１位置とは異なる第２位置にあるときに撮像された前記第１撮像画像とを用いることが好ましい。
【００１３】
このように複数の作業対象物を用いたキャリブレーションを行うことが可能であり、よって、キャリブレーション用の専用部材を用いる手間を省くことができる。
【００１４】
本適用例の制御装置では、前記作業対象物は、第１作業対象物と、前記第１作業対象物とは異なる第２作業対象物とを含み、前記制御部は、前記対応付けにおいて、前記第１作業対象物が前記撮像領域内における第１位置にあり、かつ、前記第２作業対象物が前記撮像領域内における前記第１位置とは異なる第２位置にあるときに撮像された前記第１撮像画像を用いることが好ましい。
【００１５】
これにより、各位置ごとに撮像した第１撮像画像を用いる場合に比べて、キャリブレーションをより迅速に行うことができる。
【００１６】
本適用例の制御装置では、前記制御部は、前記対応付けにおいて、前記作業対象物を前記可動部で保持している状態での前記所定部位の前記ロボット座標系における座標を求め、前記可動部を前記作業対象物から離脱させた後、前記作業対象物の前記第１撮像画像における座標を求めることが好ましい。
【００１７】
これにより、キャリブレーションを的確かつ迅速に、また、より正確に行うことができる。また、キャリブレーションをより精度良く行うことができる。
【００１８】
本適用例の制御装置では、前記受付部は、前記作業対象物が配置されている作業台を撮像可能に設けられた前記第１撮像部と通信可能であることが好ましい。
【００１９】
これにより、作業台上に載置された作業対象物を撮像でき、作業対象物を撮像した第１撮像画像を用いてキャリブレーションを的確に行うことができる。さらに、ロボットによる作業対象物に対する作業を行うときにも、第１撮像画像を用いてロボットに作業を適切に行わせることができる。
【００２０】
本適用例の制御装置では、前記受付部は、撮像可能で前記第１撮像部とは異なる第２撮像部からの第２撮像画像に関する情報を受け付けることが可能であり、前記制御部は、前記ロボット座標系と前記第２撮像画像に関する座標系である第２画像座標系との座標変換が可能であり、前記座標変換を基にして前記所定部位に対する前記作業対象物の位置を求めることが好ましい。
【００２１】
これにより、所定部位に対する作業対象物の位置が未知な状態でも、第１画像座標系とロボット座標系との対応付けを適切かつ容易に行うことができる。
【００２２】
本適用例の制御装置では、前記受付部は、前記可動部により保持された状態の前記作業対象物を撮像可能に設けられた前記第２撮像部と通信可能であることが好ましい。
【００２３】
これにより、所定部位に対する作業対象物の位置を効率良く求めることができる。
【００２４】
本適用例のロボットシステムは、本適用例の制御装置と、前記制御装置により制御されるロボットと、を有することを特徴とする。
【００２５】
このようなロボットシステムによれば、作業者の使い勝手を向上させることができる。また、ロボットは作業対象物に対する作業をより的確に、また迅速かつ正確に行うことができる。
【００２６】
本適用例の制御方法は、作業対象物を保持可能な可動部を有するロボットに関する座標系であるロボット座標系と、撮像可能な第１撮像部から第１撮像画像に関する座標系である第１画像座標系と、の対応付けを行うステップと、前記対応付けの結果と、前記第１撮像部からの前記第１撮像画像に関する情報とに基づいて、前記ロボットを駆動させるステップと、を有し、前記対応付けを行うステップでは、前記第１撮像部の撮像領域内の複数の位置のそれぞれにあるときの前記作業対象物を保持している前記可動部の所定部位の前記ロボット座標系における座標と、前記複数の位置のそれぞれにあるときの前記作業対象物の前記第１画像座標系における座標とに基づいて、前記対応付けを行うことを特徴とする。
【００２７】
このような制御方法によれば、作業者の使い勝手を向上させることができる。また、ロボットは作業対象物に対する作業をより的確に、また迅速かつ正確に行うことができる。
【図面の簡単な説明】
【００２８】
【図１】第１実施形態に係るロボットシステムを示す図である。
【図２】図１に示すロボットシステムの概略図である。
【図３】図１に示すロボットシステムのブロック図である。
【図４】制御装置によるロボットの制御方法を示すフロー図である。
【図５】対象物の一例を示す図である。
【図６】キャリブレーションの流れを示すフロー図である。
【図７】図６中のステップＳ１１を説明するための図である。
【図８】図６中のステップＳ１１を説明するための図である。
【図９】図６中のステップＳ１２を説明するための図である。
【図１０】第１撮像画像を示す図である。
【図１１】図６中のステップＳ１４を説明するための図である。
【図１２】第１撮像画像を示す図である。
【図１３】第１撮像画像を示す図である。
【図１４】第１撮像画像を示す図である。
【図１５】複数の対象物を用いたキャリブレーションの一例を示すフロー図である。
【図１６】第１撮像画像を示す図である。
【図１７】第２実施形態におけるキャリブレーションの流れを示すフロー図である。
【図１８】図１７に示すステップＳ２１における第１撮像画像を示す図である。
【図１９】図１７に示すステップＳ２２における第１撮像画像を示す図である。
【図２０】第３実施形態に係るロボットシステムを示す図である。
【図２１】キャリブレーションの流れを示すフロー図である。
【図２２】図２１に示すステップＳ２３における第１撮像画像を示す図である。
【図２３】図２１に示すステップＳ２４における第１撮像画像を示す図である。
【図２４】図２１に示すステップＳ２４における第１撮像画像を示す図である。
【図２５】図２１に示すステップＳ２４を説明するための図である。
【図２６】第４実施形態におけるキャリブレーションの流れを示すフロー図である。
【図２７】ロボットが有するハンドを示す図である。
【図２８】図２６に示すステップＳ２５における第２撮像画像を示す図である。
【発明を実施するための形態】
【００２９】
以下、本発明の制御装置、ロボットシステムおよび制御方法を添付図面に示す好適な実施形態に基づいて詳細に説明する。
【００３０】
≪ロボットシステム≫
［第１実施形態］
図１は、第１実施形態に係るロボットシステムを示す図である。図２は、図１に示すロボットシステムの概略図である。図３は、図１に示すロボットシステムのブロック図である。なお、図１では、互いに直交する３軸（ｘｒ軸、ｙｒ軸およびｚｒ軸）を図示している。また、以下では、ｘｒ軸に平行な方向を「ｘｒ軸方向」とも言い、ｙｒ軸に平行な方向を「ｙｒ軸方向」とも言い、ｚｒ軸に平行な方向を「ｚｒ軸方向」とも言う。また、以下では、図示された各矢印の先端側を「＋（プラス）」、基端側を「−（マイナス）」と言う。また、ｚｒ軸方向は「鉛直方向」と一致しており、ｘｒ−ｙｒ平面に平行な方向は「水平方向」と一致している。また、ｚｒ軸の＋（プラス）側を「上方」とし、ｚｒ軸の−（−）側を「下方」とする。
【００３１】
また、本明細書において、「水平」とは、水平に対して±１０°以下の範囲内で傾斜している場合も含む。同様に、「鉛直」とは、鉛直に対して±１０°以下の範囲内で傾斜している場合も含む。また、「平行」とは、２つの線（軸を含む）または面が、互いに完全な平行である場合のみならず、±１０°以内で傾斜している場合も含む。また、「直交」とは、２つの線（軸を含む）または面が、互いに９０°の角度で交わる場合のみならず、９０°に対し±１０°以内で傾斜している場合も含む。
【００３２】
図１に示すロボットシステム１００は、例えば、電子部品等の対象物の保持、搬送および組立て等の作業で用いることができる。このロボットシステム１００は、ロボット１と、撮像機能を有する第１撮像部３と、撮像機能を有する第２撮像部４と、ロボット１、第１撮像部３および第２撮像部４の各駆動を制御する制御装置５（キャリブレーション装置）とを、有する。また、ロボットシステム１００は、モニターを有する表示装置５０１と、例えばキーボード等で構成された入力装置５０２（操作機器）とを有する。
【００３３】
以下、ロボットシステム１００が有する各部を順次説明する。
〈ロボット〉
ロボット１は、いわゆる６軸の垂直多関節ロボットであり、基台１１０と、基台１１０に接続された可動部２０とを有する。可動部２０は、ロボットアーム１０およびハンド１７を有する。
【００３４】
基台１１０は、ロボット１を任意の設置箇所に取り付ける部分である。本実施形態では、基台１１０は、例えば床等の設置箇所７０に設置されている。なお、基台１１０の設置箇所は、床等の設置箇所７０に限定されず、例えば、壁、天井、移動可能な台車上等であってもよい。
【００３５】
図１および図２に示すように、ロボットアーム１０は、アーム１１（第１アーム）、アーム１２（第２アーム）、アーム１３（第３アーム）、アーム１４（第４アーム）、アーム１５（第５アーム）、アーム１６（第６アーム）と、保持部としてのハンド１７と、を有する。これらアーム１１〜１６は、基端側から先端側に向かってこの順に連結されている。各アーム１１〜１６は、隣り合うアームまたは基台１１０に対して回動可能になっている。ハンド１７は、作業対象物９１を保持する機能を有する。なお、図１に示す作業対象物９１は、電子部品等の「作業対象物」の一例であり、本実施形態では、直方体状の部材を例に用いている（図５参照）。
【００３６】
ここで、図１に示すように、アーム１６は、円盤状をなし、アーム１５に対して回動軸Ｏ６周りに回動可動になっている。また、図２に示すように、本実施形態では、アーム１６の先端面の中心を所定点Ｐ６（所定部位）という。また、ハンド１７の先端中心、すなわちハンド１７が有する２つの指の間の領域の中心をツールセンターポイントＰという。
【００３７】
また、図３に示すように、ロボット１は、一方のアームを他方のアーム（または基台１１０）に対して回動させるモーターおよび減速機等を備える駆動部１３０を有する。モーターとしては、例えば、ＡＣサーボモーター、ＤＣサーボモーター等のサーボモーターを用いることができる。減速機としては、例えば、遊星ギア型の減速機、波動歯車装置等を用いることができる。また、ロボット１は、モーターまたは減速機の回転軸の回転角度を検出する位置センサー１４０（角度センサー）を有する。位置センサー１４０は、例えばロータリーエンコーダー等を用いることができる。また、駆動部１３０および位置センサー１４０は、例えば各アーム１１〜１６に設けられており、本実施形態では、ロボット１は、６つの駆動部１３０および６つの位置センサー１４０を有する。
【００３８】
また、各駆動部１３０は、図１に示す基台１１０に内蔵されたモータードライバー（図示せず）と電気的に接続されている。このモータードライバーを介して各駆動部１３０は制御装置５により制御されている。また、各位置センサー１４０も制御装置５に電気的に接続されている。
【００３９】
このようなロボット１には、ロボット１の基台１１０を基準としたベース座標系（ロボット座標系）が設定されている。ベース座標系は、水平方向に対してそれぞれ平行なｘｒ軸とｙｒ軸と、水平方向に対して直交し、かつ、鉛直上向きを正方向とするｚｒ軸とによって定まる３次元の直交座標系である。本実施形態では、ベース座標系は、基台１１０の上端面の中心点を原点としている。ｘｒ軸に対する並進成分を「成分ｘｒ」とし、ｙｒ軸に対する並進成分を「成分ｙｒ」とし、ｚｒ軸に対する並進成分を「成分ｚｒ」とし、ｚｒ軸周りの回転成分を「成分ｕｒ」とし、ｙｒ軸周りの回転成分を「成分ｖｒ」とし、ｘｒ軸周りの回転成分を「成分ｗｒ」とする。成分ｘｒ、成分ｙｒおよび成分ｚｒの長さ（大きさ）の単位は「ｍｍ」であり、成分ｕｒ、成分ｖｒおよび成分ｗｒの角度（大きさ）の単位は「°」である。
【００４０】
また、ロボット１には、アーム１６の所定点Ｐ６を原点とした先端座標系が設定されている。先端座標系は、互いに直交するｘａ軸とｙａ軸とによって定まる２次元の直交座標系である。ｘａ軸およびｙａ軸は、それぞれ回動軸Ｏ６に対して直交している。また、ｘａ軸に対する並進成分を「成分ｘａ」とし、ｙａ軸に対する並進成分を「成分ｙａ」とし、ｚａ軸に対する並進成分を「成分ｚａ」とし、ｚａ軸周りの回転成分を「成分ｕａ」とし、ｙａ軸周りの回転成分を「成分ｖａ」とし、ｘａ軸周りの回転成分を「成分ｗａ」とする。成分ｘａ、成分ｙａおよび成分ｚａの長さ（大きさ）の単位は「ｍｍ」であり、成分ｕａ、成分ｖａおよび成分ｗａの角度（大きさ）の単位は「°」である。また、本実施形態では、前述したベース座標系と先端座標系とのキャリブレーションは済んでいる。なお、本実施形態では、前述したベース座標系を「ロボット座標系」として捉えているが、先端座標系を「ロボット座標系」として捉えてもよい。
【００４１】
以上、ロボット１の構成について簡単に説明した。なお、本実施形態では、前述したように、保持部はハンド１７であるが、保持部は、対象物を保持可能な構成であれば如何なるものであってもよく、例えば吸着機構を備えた機器（図示せず）であってもよい。また、ロボット１は、図示はしないが、例えばハンド１７に加わる力（モーメントを含む）を検出する６軸力覚センサー等で構成された力検出装置を備えていてもよい。
【００４２】
〈第１撮像部〉
図１および図２に示すように、第１撮像部３は、床等の設置箇所７０の鉛直上方に位置し、作業台７１の上面を撮像できるように設置されている。
【００４３】
第１撮像部３は、図示はしないが、例えば、複数の画素を有するＣＣＤ（Charge Coupled Device）イメージセンサーで構成された撮像素子と、レンズを含む光学系と、を有する。この第１撮像部３は、撮像対象等からの光をレンズによって撮像素子の受光面で結像させて、光を電気信号に変換し、その電気信号を制御装置５へと出力する。なお、第１撮像部３は、撮像機能を有する構成であれば、前述の構成に限定されず他の構成であってもよい。
【００４４】
このような第１撮像部３には、第１画像座標系、すなわち第１撮像部３から出力される撮像画像の座標系が設定されている。この第１画像座標系は、撮像画像の面内方向に対してそれぞれ平行なｘｂ軸とｙｂ軸とによって定まる２次元の直交座標系である（後述する図１０等参照）。また、本実施形態では、ｘｂ軸に対する並進成分を「成分ｘｂ」とし、ｙｂ軸に対する並進成分を「成分ｙｂ」とし、ｘｂ−ｙｂ平面の法線周りの回転成分を「成分ｕｂ」とする。成分ｘｂおよび成分ｙｂの長さ（大きさ）の単位は「ピクセル」であり、成分ｕｂの角度（大きさ）の単位は「°」である。なお、第１画像座標系は、第１撮像部３のカメラ視野に写る３次元直交座標を、レンズの光学特性（焦点距離、歪みなど）と撮像素子の画素数および大きさとを加味して非線形変換した２次元の直交座標系である。
【００４５】
〈第２撮像部〉
図１および図２に示すように、第２撮像部４は、床等の設置箇所７０上に設けられたカメラであり、第２撮像部４に対して鉛直上方を撮像できるように設置されている。
【００４６】
第２撮像部４は、図示はしないが、例えば、複数の画素を有するＣＣＤ（Charge Coupled Device）イメージセンサーで構成された撮像素子と、レンズを含む光学系と、を有する。この第２撮像部４は、撮像対象等からの光をレンズによって撮像素子の受光面で結像させて、光を電気信号に変換し、その電気信号を制御装置５へと出力する。なお、第２撮像部４は、撮像機能を有する構成であれば、前述の構成に限定されず他の構成であってもよい。
【００４７】
このような第２撮像部４には、第２画像座標系、すなわち第２撮像部４から出力される第２撮像画像４０の座標系が設定されている。この第２画像座標系は、第２撮像画像４０の面内方向に対してそれぞれ平行なｘｃ軸とｙｃ軸とによって定まる２次元の直交座標系である（後述する図２８参照）。また、本実施形態では、ｘｃ軸に対する並進成分を「成分ｘｂ」とし、ｙｃ軸に対する並進成分を「成分ｙｃ」とし、ｘｃ−ｙｃ平面の法線周りの回転成分を「成分ｕｃ」とする。成分ｘｃおよび成分ｙｃの長さ（大きさ）の単位は「ピクセル」であり、成分ｕｃの角度（大きさ）の単位は「°」である。なお、第２撮像部４の画像座標系は、第２撮像部４のカメラ視野に写る３次元直交座標を、レンズの光学特性（焦点距離、歪みなど）と撮像素子の画素数および大きさとを加味して非線形変換した２次元の直交座標系である。
【００４８】
〈制御装置〉
図１に示す制御装置５は、ロボット１および第１撮像部３の各部の駆動を制御する。この制御装置５は、例えば、ＣＰＵ（Central Processing Unit）等のプロセッサー、ＲＯＭ（Read Only Memory）等の揮発性メモリー、および、ＲＡＭ（Random Access Memory）等の不揮発性メモリーが内蔵されたパーソナルコンピューター（ＰＣ）等で構成することができる。なお、制御装置５と、ロボット１、第１撮像部３および第２撮像部４とは、それぞれ、有線接続であってもよいし、無線接続であってもよい。また、制御装置５には、モニター（図示せず）を備える表示装置５０１と、例えばキーボード等で構成された入力装置５０２とが接続されている。
【００４９】
図３に示すように、制御装置５は、制御部５１（プロセッサー）、記憶部５２（メモリー）および外部入出力部５３（Ｉ／Ｏインターフェース）を有する。
【００５０】
制御部５１（プロセッサー）は、記憶部５２に記憶された各種プログラムを実行する。これにより、ロボット１、第１撮像部３および第２撮像部４の各駆動を制御したり、各種演算および判断等の処理を実現できる。
【００５１】
記憶部５２は、例えば揮発性メモリーや不揮発性メモリー等のメモリーで構成されている。なお、記憶部５２は、制御装置５に内蔵されるもの（揮発性メモリーや不揮発性メモリー等）に限らず、いわゆる外部記憶装置（図示せず）を有する構成であってもよい。
【００５２】
記憶部５２には、プロセッサーにより実行可能な各種プログラム（指令）が保存されている。また、記憶部５２には、外部入出力部５３で受け付けた各種データが保存できる。
【００５３】
各種プログラムとしては、ロボット１の駆動に関するロボット駆動指令、第１画像座標系とロボット１の先端座標系またはロボット座標系（ベース座標系）との対応付けに関する第１座標変換指令、および、第２画像座標系とロボット１の先端座標系またはロボット座標系（ベース座標系）との対応付けに関する第２座標変換指令、先端座標系とベース座標系との対応付けに関するロボット座標変換指令等が挙げられる。
【００５４】
第１座標変換指令は、第１画像座標系における座標である第１画像座標（ｘｂ、ｙｂ、ｕｂ：位置および姿勢）を、ロボット１の先端座標系における座標（ｘａ，ｙａ、ｕａ：位置および姿勢）またはロボット座標系における座標であるロボット座標（ｘｒ、ｙｒ、ｕｒ：位置および姿勢）に変換するための座標変換式を求める指令である。この第１座標変換指令を実行することにより、第１画像座標と、先端座標系およびロボット座標系とを対応付けることができる。第２座標変換指令は、第２画像座標系における第２画像座標（ｘｃ、ｙｃ、ｕｃ：位置および姿勢）を、ロボット１の先端座標系における座標（ｘａ，ｙａ、ｕａ：位置および姿勢）またはロボット座標に変換するための座標変換式を求める指令である。この第２座標変換指令を実行することにより、第２画像座標と、先端座標系およびロボット座標系とを対応付けることができる。
【００５５】
各種データとしては、例えば、ロボット１が有する複数の位置センサー１４０から出力されたデータ、第１撮像部３から出力された撮像画像のデータ、および、第２撮像部４から出力された撮像画像のデータ等が挙げられる。また、各種データとしては、第１撮像部３および第２撮像部４の各画素数等のデータや、後述するキャリブレーションの実行時におけるロボット１の速度、加速度（より具体的には、例えばハンド１７の移動速度、移動加速度）に関するデータ等が挙げられる。
【００５６】
外部入出力部５３は、例えばＩ／Ｏインターフェース回路等で構成されており、制御装置５と、それ以外の各装置（ロボット１、第１撮像部３、第２撮像部４、表示装置５０１、入力装置５０２）との接続のために用いられる。したがって、外部入出力部５３は、ロボット１、第１撮像部３および第２撮像部４から出力された各種データを受け付ける受付部としての機能を有する。また、外部入出力部５３は、表示装置５０１のモニターに各種画面（例えば、操作用の画面等）に関する情報を出力して表示させる機能を有する。
【００５７】
このような制御装置５は、前述した構成に加えて、さらに他の構成が付加されていてもよい。なお、制御部５１は、１つのプロセッサーで構成されていてもよいし、複数のプロセッサーで構成されていてもよい。記憶部５２および外部入出力部５３についても同様である。
【００５８】
〈表示装置および入力装置〉
図１に示す表示装置５０１は、モニターを備えており、各種画面等を表示する機能を有する。したがって、作業者は、表示装置５０１を介して第１撮像部３から出力された撮像画像、第２撮像部４から出力された撮像画像およびロボット１の駆動等を確認することができる。
【００５９】
入力装置５０２は、例えばキーボード等で構成されている。したがって、作業者は、入力装置５０２を操作することで、制御装置５に対して各種処理等の指示を行うことができる。なお、図示はしないが、入力装置５０２は、例えばティーチングペンダントで構成されていてもよい。
【００６０】
なお、表示装置５０１および入力装置５０２の代わりに、表示装置５０１および入力装置５０２の機能を兼ね備えた表示入力装置（図示せず）を用いてもよい。表示入力装置としては、例えばタッチパネル等を用いることができる。また、ロボットシステム１００は、表示装置５０１および入力装置５０２をそれぞれ１つ有していてもよいし、複数有していてもよい。
【００６１】
以上、ロボットシステム１００の基本的な構成について簡単に説明した。かかるロボットシステム１００は、制御装置５と、制御装置５により制御されるロボット１と、を有する。そして、制御装置５は後述する制御を実行する。
【００６２】
このようなロボットシステム１００によれば、後述する制御装置５による制御を実行できるので、作業者によるロボットシステム１００の使い勝手を向上させることができる。また、ロボット１は作業対象物９１に対する作業をより的確に、また迅速かつ正確に行うことができる。
【００６３】
≪制御方法≫
図４は、制御装置によるロボットの制御方法を示すフロー図である。
【００６４】
図４に示すように、制御装置５によるロボット１の制御方法は、キャリブレーション（ステップＳ１０）の工程と、キャリブレーションの結果を基にしたロボット１による作業（ステップＳ２０）の工程と、を有する。
【００６５】
なお、ロボット１による具体的な作業内容は特に限定されない。ただし、ロボット１による作業（ステップＳ２０）では、キャリブレーション（ステップＳ１０）で用いた「作業対象物」または「当該作業対象物と同一また同等の構成のもの」を用いる。したがって、本実施形態では、後述するようにキャリブレーションにおいて図１に示す作業対象物９１を用いているため、ロボット１による実際の作業においても作業対象物９１を用いた作業を行う。
【００６６】
ロボット１による作業（ステップＳ２０）の具体的な作業内容は特に限定されないため、以下では、その説明を省略し、キャリブレーション（ステップＳ１０）について説明する。
【００６７】
〈キャリブレーション〉
図５は、対象物の一例を示す図である。図６は、キャリブレーションの流れを示すフロー図である。図７および図８は、それぞれ、図６中のステップＳ１１を説明するための図である。図９は、図６中のステップＳ１２を説明するための図である。図１０は、第１撮像画像を示す図である。図１１は、図６中のステップＳ１４を説明するための図である。図１２および図１３は、第１撮像画像を示す図である。
【００６８】
キャリブレーション（ステップＳ１０）では、第１撮像部３の第１画像座標系とロボット１のロボット座標系とのキャリブレーション（対応付け）を行う。ロボットシステム１００では、第１撮像部３から出力された撮像画像のデータを基にしてロボット１に各種作業を行わせるために、第１画像座標系における座標（第１画像座標：ｘｂ、ｙｂ、ｕｂ）をロボット座標系における座標（ロボット座標：ｘｒ、ｙｒ、ｕｒ）に変換する座標変換式を求める。この座標変換式を求めることで、第１画像座標系とロボット座標系とを対応付けることができる。
【００６９】
本実施形態では、図１や図５に示す作業対象物９１を用いてキャリブレーションを行う。作業対象物９１は、図５に示すように、直方体状（柱状）の部材である。また、作業対象物９１は、面９０１とそれに対向する面９０２にそれぞれ開放し、長手方向に延びる貫通孔９１１を有する。貫通孔９１１は、作業対象物９１の中央に形成されている。この貫通孔９１１は、例えば、ロボット１による作業（ステップＳ２０）でネジのような棒状の部材を挿入することに用いることができる。このような作業対象物９１は、載置台７２に複数（図示では９つ）載置されている。これら作業対象物９１は、同方向、同姿勢に行列状に立設配置されている。本明細書では、これらを総称して作業対象物９１という。なお、作業対象物９１ａ〜９１ｉは、実質的に同形状（同寸法）、同重量のものとする。また、作業対象物９１ａ〜９１ｉは、ロボット１により実際に作業がなされる「作業対象物」であり、キャリブレーション用の専用部材ではない。
【００７０】
以下、図６に示すフロー図を参照しつつ、キャリブレーションについて説明する。なお、このキャリブレーションは、制御装置５が、作業者による入力装置５０２を用いて行った指示に応じて、制御部５１が記憶部５２に記憶されたプログラムを実行することにより行われる。
【００７１】
まず、制御部５１は、ロボットアーム１０を駆動させて、図７に示すようにハンド１７で９つの作業対象物９１ａ〜９１ｉのうちの１つの作業対象物９１ａを把持させる（ステップＳ１１）。この把持は、例えばジョグ動作により行う。ジョグ動作とは、例えばティーチングペンダント等の入力装置５０２を用いた作業者による誘導の指示に基づくロボット１の動作である。
【００７２】
ここで、本実施形態では、図８に示すように、ハンド１７は、作業対象物９１ａを把持した際に、回動軸Ｏ６上に貫通孔９１１が位置するように構成されたセルフアライメント機能を有するものとする。すなわち、ハンド１７は、回動軸Ｏ６に沿った方向から見て所定点Ｐ６の位置と貫通孔９１１の位置とが必ず一致するよう構成されている。
【００７３】
次いで、制御部５１は、作業対象物９１ａを第１撮像部３の視野内すなわち撮像領域Ｓ３内に位置させ、図９に示すように作業台７１に載置する（ステップＳ１２）。この際、例えば、図１０に示すように、第１撮像画像３０には作業対象物９１ａが写る。
【００７４】
次いで、制御部５１は、所定点Ｐ６のロボット座標を記憶部５２に記憶する（ステップＳ１３）。この際、図９に示すように、ハンド１７を未だ開放せずに、ハンド１７で作業対象物９１ａを把持したままの状態とする。
【００７５】
次いで、制御部５１は、ハンド１７を開放して、図１１に示すようにハンド１７を作業対象物９１ａから離脱させる（ステップＳ１４）。この際、作業対象物９１ａの位置がハンド１７を開放する前の位置と変わらないようにする。
【００７６】
次いで、制御部５１は、第１撮像部３に作業対象物９１ａを撮像させ、第１撮像画像３０のデータを基にして求めた作業対象物９１ａの貫通孔９１１における第１画像座標を記憶部５２に記憶する（ステップＳ１５）。
【００７７】
次いで、制御部５１は、前述したステップＳ１１〜Ｓ１５を行った回数が所定回数に達したか否かを判断し（ステップＳ１６）、所定回数に達するまでステップＳ１１〜Ｓ１５を繰り返す。本実施形態では前述したステップＳ１１〜Ｓ１５を９回繰り返す。言い換えると、本実施形態では、制御部５１は、ロボット座標および第１画像座標の組を９つ取得したと判断するまでステップＳ１１〜Ｓ１５を繰り返す。
【００７８】
ここで、本実施形態では、各回において、第１撮像画像３０に写る作業対象物９１ａの貫通孔９１１が異なる位置に写るように、制御部５１は作業対象物９１ａを移動させる。特に、図１２に示すように、貫通孔９１１が格子状に位置するように移動させることが好ましい。したがって、制御部５１は、例えば、１回目のステップＳ１２において、図１２中の左上の位置（第１位置Ｐ１０）に作業対象物９１ａを位置させた場合（図９および図１２参照）、２回目のステップＳ１２において、図１２中の左側中央の位置（第２位置Ｐ２０）に作業対象物９１ａが写るように作業対象物９１ａを移動させる。このようにして、制御部５１は、ステップＳ１１〜Ｓ１５を９回繰り返し、９つの所定点Ｐ６のロボット座標を記憶部５２に記憶し、かつ、各ロボット座標に対応する作業対象物９１ａの第１画像座標を記憶部５２に９つ記憶する。
【００７９】
次いで、制御部５１は、所定回数（本実施形態では９回）に達したら、９つの所定点Ｐ６のロボット座標と、９つの作業対象物９１ａの第１画像座標とに基づいて、第１画像座標をロボット座標に変換する座標変換式を求める（ステップＳ１７）。これにより、画像座標系とロボット座標系とのキャリブレーション（対応付け）が完了する。
【００８０】
以上、キャリブレーション（ステップＳ１０）について簡単に説明した。ここで、求めた座標変換式を用いれば、第１撮像部３で撮像した撮像対象の位置および姿勢をロボット座標系における位置および姿勢に変換することができる。さらには、前述したように、ロボット座標系（ベース座標系）と先端座標系との対応付けは済んでいる状態なので、第１撮像部３で撮像した撮像対象の位置および姿勢を先端座標系における位置および姿勢に変換することができる。そのため、制御部５１は、第１撮像画像３０を基にしてロボット１のハンド１７およびそれに把持された作業対象物９１ａを目的の箇所に位置させることができる。それゆえ、キャリブレーション（ステップＳ１０）における結果であるロボット座標系と第１撮像部３との座標変換式を用いることで、ロボット１による作業（図４：ステップＳ２０）において、ロボット１に適切に作業を行わせることができる。
【００８１】
また、前述したように、制御装置５は、撮像可能な第１撮像部３からの第１撮像画像３０に関する情報を受け付ける受付部としての機能を有する外部入出力部５３と、第１撮像画像３０に関する情報に基づいて、作業対象物９１ａを保持可能な可動部２０を有するロボット１の駆動に関する指令を実行可能な制御部５１と、を備える。また、制御部５１は、ロボット１に関する座標系であるロボット座標系と、第１撮像画像３０に関する座標系である第１画像座標系と、の対応付けを実行可能である。そして、制御部５１は、第１撮像部３の撮像領域Ｓ３内の複数の位置のそれぞれにあるときの作業対象物９１ａを保持している可動部２０の所定部位としての所定点Ｐ６のロボット座標（ロボット座標系における座標）と、複数の位置のそれぞれにあるときの作業対象物９１ａの第１画像座標（第１画像座標系における座標）とに基づいて、キャリブレーション（対応付け）を行う。
【００８２】
このような制御装置５によれば、ロボット１の実際の作業対象である作業対象物９１ａを用いてキャリブレーション（対応付け）を行うことができるため、従来のようにキャリブレーション用の専用部材を用意する手間を省くことができ、また、より正確なキャリブレーションが可能である。特に、従来のように作業対象物９１ａの高さを考慮した専用部材を用意する必要がない。また、作業対象物９１ａでキャリブレーションを行うことで、例えば作業対象物９１ａの設計上の高さを用いることができるので、高さ方向（ｚｒ軸方向）のキャリブレーションを省略することができる。このようなことから、キャリブレーションの手順が簡略化され、作業者の使い勝手を向上させることができる。また、作業対象物９１ａを用いたキャリブレーションの結果（座標変換式）を基にして、ロボット１に実施の各種作業を行わせることができるため、作業対象物９１ａに対する作業をロボット１により的確に行なわせることができる。
【００８３】
なお、本実施形態では、所定部位としての所定点Ｐ６を設定しているが、所定部位は、可動部２０のいずれかの箇所であればよい。例えば、所定部位は、ツールセンターポイントＰであってもよいし、アーム１５の先端中心であってもよい。また、本実施形態では、キャリブレーションにおける作業対象物９１ａの基準となる箇所は、貫通孔９１１であるが、基準となる箇所はこれに限定されず、例えば作業対象物９１ａの角部等であってもよい。
【００８４】
また、前述したように、制御部５１は、キャリブレーション（対応付け）において、作業対象物９１ａを可動部２０で保持している状態での所定部位としての所定点Ｐ６のロボット座標系における座標を求め（ステップＳ１３）、可動部２０を作業対象物９１ａから離脱させた後（ステップＳ１４）、作業対象物９１ａの第１撮像画像３０における座標を求める（ステップＳ１５）。
【００８５】
これにより、キャリブレーションを的確かつ迅速に、また、より正確に（より高精度に）行うことができる。また、ロボット１が実際に作業を行う第１撮像部３のみ（１つの撮像部）でキャリブレーションを実行できるため、作業者にとって使い勝手がより良い。
【００８６】
さらに、前述したように、第１撮像部３は、作業台７１を撮像可能に設置されている。そして、受付部としての機能を有する外部入出力部５３は、作業対象物９１ａが配置されている作業台７１を撮像可能に設けられた第１撮像部３と通信可能である。
【００８７】
これにより、作業台７１上に載置された作業対象物９１ａを撮像でき、作業対象物９１ａを撮像した第１撮像画像３０を用いてキャリブレーションを的確に行うことができる。さらに、キャリブレーションの結果を基にしてロボット１による作業対象物９１ａおよび同様の構成の作業対象物９１ｂ〜９１ｉに対する作業を行うときにも、制御部５１は第１撮像画像３０を用いてロボット１にその作業を適切に行わせることができる。このように、第１撮像部３のみ（１つの撮像部）を用いて、キャリブレーションおよびロボット１による実際の作業を行うことができるため、作業者にとって使い勝手が非常に良い。
【００８８】
また、前述したように、制御部５１は、キャリブレーション（対応付け）において、作業対象物９１ａが撮像領域Ｓ３内における第１位置Ｐ１０にあるときに撮像された第１撮像画像３０と、作業対象物９１ａが撮像領域Ｓ３内における第１位置Ｐ１０とは異なる第２位置Ｐ２０にあるときに撮像された第１撮像画像３０とを用いる（図１２参照）。
【００８９】
これにより、１つの作業対象物９１ａさえあればキャリブレーションを行うことができる。また、１つの第１撮像部３でキャリブレーションを迅速かつ容易に、また、より正確に行うことができる。よって、作業者の手間を省くことができる。
【００９０】
なお、第１位置Ｐ１０および第２位置Ｐ２０は、図示の位置に限定されず、互いに異なる位置であれば、それぞれ図１２に示す位置に限定されない。
【００９１】
ここで、前述した説明では、制御部５１は、１つの作業対象物９１ａを用いたキャリブレーションを行ったが、複数の作業対象物９１ａ〜９１ｉを用いたキャリブレーションを行うこともできる（図１参照）。以下、これについて説明する。
【００９２】
〈複数の作業対象物を用いたャリブレーションの第１例〉
図１４は、第１撮像画像を示す図である。
【００９３】
複数の作業対象物９１ａ〜９１ｉを用いたキャリブレーションでは、例えば、第１位置Ｐ１０には、第１作業対象物である作業対象物９１ａを位置させ（図１０参照）、第２位置Ｐ２０には、第２作業対象物である作業対象物９１ｂを位置させる（図１４参照）。すなわち、１回目のステップＳ１１〜Ｓ１５では作業対象物９１ａを用いて処理を行い、２回目のステップＳ１１〜Ｓ１５では作業対象物９１ｂを用いて処理を行う。
【００９４】
このように、作業対象物９１は、作業対象物９１ａ（第１作業対象物）と、作業対象物９１ａとは異なる作業対象物９１ｂ（第２作業対象物）とを含む。また、制御部５１は、キャリブレーション（対応付け）において、作業対象物９１ａが撮像領域Ｓ３内における第１位置Ｐ１０にあるときに撮像された第１撮像画像３０と、作業対象物９１ｂが撮像領域Ｓ３内における第１位置Ｐ１０とは異なる第２位置Ｐ２０にあるときに撮像された第１撮像画像３０とを用いる。そして、本実施形態では、制御部５１は、９つの位置のそれぞれに異なる作業対象物９１ａ〜９１ｉを位置させたときの各第１撮像画像３０を用いる。
【００９５】
このように複数の作業対象物９１ａ〜９１ｉを用いたキャリブレーションを行うことが可能である。この方法によってもキャリブレーション用の専用部材を用いる手間を省くことができる。
【００９６】
〈複数の作業対象物を用いてのキャリブレーションの第２例〉
図１５は、複数の対象物を用いたキャリブレーションの一例を示すフロー図である。図１６は、第１撮像画像を示す図である。
【００９７】
制御部５１は、例えば、任意の９つの位置のそれぞれに対し異なる作業対象物９１ａ〜９１ｉを位置させた後に、これら作業対象物９１ａ〜９１ｉを一括して第１撮像部３に撮像させる。すなわち、図１５に示すように、ステップＳ１６の後にステップＳ１５を行う。
【００９８】
このように、作業対象物９１は、作業対象物９１ａ（第１作業対象物）と、作業対象物９１ａとは異なる作業対象物９１ｂ（第２作業対象物）とを含み、制御部５１は、キャリブレーション（対応付け）において、作業対象物９１ａが撮像領域Ｓ３内における第１位置Ｐ１０にあり、かつ、作業対象物９１ｂが撮像領域Ｓ３内における第１位置Ｐ１０とは異なる第２位置Ｐ２０にあるときに撮像された第１撮像画像３０を用いる。本実施形態では、９つの位置のそれぞれに異なる作業対象物９１ａ〜９１ｉを位置させた後に、９つの作業対象物９１ａ〜９１ｉを一括して撮像した第１撮像画像３０を用いる（図１６参照）。
【００９９】
これにより、前述した各位置ごと撮像した第１撮像画像３０を用いる場合に比べて、キャリブレーションをより迅速に行うことができる。
【０１００】
以上説明したように、制御装置５を用いた制御方法は、作業対象物９１を保持可能な可動部２０を有するロボット１に関する座標系であるロボット座標系と、撮像可能な第１撮像部３から第１撮像画像３０に関する座標系である第１画像座標系と、のキャリブレーション（対応付け）を行うステップＳ１０と、キャリブレーションの結果と、第１撮像部３からの第１撮像画像３０に関する情報とに基づいて、ロボット１を駆動させるステップＳ２０と、を有する。また、キャリブレーションを行うステップＳ１０では、第１撮像部３の撮像領域Ｓ３内の複数の位置のそれぞれにあるときの作業対象物９１を保持している可動部２０の所定部位としての所定点Ｐ６のロボット座標系における座標と、複数の位置のそれぞれにあるときの作業対象物９１の第１画像座標系における座標とに基づいて、キャリブレーション（対応付け）を行う。
【０１０１】
このような制御方法によれば、前述したように、作業対象物９１を用いたキャリブレーション結果を基にしているため、作業対象物９１に対する作業をロボット１により的確に、また迅速かつ正確に行うことができる。
【０１０２】
以上、制御方法について説明した。なお、本実施形態では、図４に示すように、キャリブレーション（ステップＳ１０）の後にロボット１による作業（ステップＳ２０）を行ったが、ステップＳ２０においてキャリブレーションの結果を用いていれば、ステップＳ２０を単独で行ってもよい。また、キャリブレーション（ステップＳ１０）を単独で行ってもよい。
【０１０３】
また、本実施形態では、図５に示す構成の作業対象物９１を用いたが、「作業対象物」の構成は図示のものに限定されない。「作業対象物」は、可動部２０で保持可能であり、かつ、ロボット１による作業（ステップＳ２０）で用いるものと同一また同等の構成のものであればよい。
【０１０４】
［第２実施形態］
次に、第２実施形態について説明する。
【０１０５】
図１７は、第２実施形態におけるキャリブレーションの流れを示すフロー図である。図１８は、図１７に示すステップＳ２１における第１撮像画像を示す図である。図１９は、図１７に示すステップＳ２２における第１撮像画像を示す図である。
【０１０６】
本実施形態では、主に、低精度な座標変換式を求めて、ステップＳ１１〜Ｓ１６を自動で行うこと以外は、前述した実施形態と同様である。なお、以下の説明では、前述した実施形態との相違点を中心に説明し、同様の事項に関してはその説明を省略する。
【０１０７】
以下では、図１７に示すフロー図を参照しつつ、本実施形態におけるキャリブレーションについて説明する。
【０１０８】
まず、制御部５１は、ベース座標系と第１画像座標系との座標変換式を求める（図１７：ステップＳ２１）。ステップＳ２１で求める座標変換式は、ステップＳ１７で求める座標変換式よりも低精度なものであり、第１撮像画像３０において指定した位置のロボット座標を大まかに把握するために求める。
【０１０９】
具体的には、ステップＳ２１における座標変換式は、第１撮像画像３０の視野内における任意の２箇所に作業対象物９１ａを移動させる処理を経て生成できる。
【０１１０】
より具体的に説明すると、ステップＳ２１では、まず、制御部５１は、作業対象物９１ａをハンド１７に把持させ、互いに異なる任意の２箇所に作業対象物９１ａを移動させて、所定点Ｐ６のロボット座標（ｘｒ，ｙｒ）と第１画像座標（ｘｂ、ｙｂ）との組を２つ取得する。例えば、図１８に示すように、矢印Ｒ１方向に作業対象物９１ａを移動させて、移動前後の２箇所における所定点Ｐ６のロボット座標（ｘｒ，ｙｒ）と第１画像座標（ｘｂ、ｙｂ）とをそれぞれ取得する。次いで、制御部５１は、２つの所定点Ｐ６のロボット座標（ｘｒ，ｙｒ）と、２つの作業対象物９１ａの第１画像座標（ｘｂ、ｙｂ）とに基づいて、下記式（１）中の係数ａ、ｂ、ｃ、ｄを求める。これにより、ロボット座標と第１画像座標との間の座標変換式を求めることができる。
【０１１１】
【数１】
2019025578.tif 000003
【０１１２】
次に、図１９に示すような第１撮像画像３０における９つの基準点３０１を設定する（ステップＳ２２）。本実施形態では、格子状に配列された９つの基準点３０１を設定する。例えば、第１撮像画像３０のサーチウィンドウを９分割してその分割された各領域の中心を基準点３０１として設定する。なお、本実施形態では、サーチウィンドウと第１撮像画像３０とは一致しているものとする。
【０１１３】
９つの基準点３０１を設定したら、前述したステップＳ２１で求めた座標変換式を基にして、９つの基準点３０１に貫通孔９１１が位置するように制御部５１は作業対象物９１ａを移動させる。前述したステップＳ２１で求めた座標変換式を用いることで、第１撮像画像３０内の指定した位置のロボット座標が分かるので、作業者の指令に基づくジョグ動作を省略することができる。そのため、ステップＳ１１〜Ｓ１６を自動で行うことができる。
【０１１４】
以上説明したような方法によれば、ステップＳ１１〜Ｓ１６を自動で行うことができるため、キャリブレーションにおける作業者の手間をより省くことができる。また、９つの基準点３０１をほぼ均等な間隔で設定できるため、作業者の指令に基づくジョグ動作により任意の９箇所に対して作業対象物９１ａを位置させる場合に比べてキャリブレーションの精度を高くすることができる。
【０１１５】
なお、本実施形態では、基準点３０１は９つであったが、基準点３０１の数は任意であり、少なくとも２つ以上であればよい。ただし、基準点３０１の数が多い程、キャリブレーションの精度が向上する。また、本実施形態では、これら基準点３０１は、格子状に配列されているが、これらの配列は格子状に限定されない。
【０１１６】
以上説明した本実施形態においても、第１実施形態と同様の効果を発揮することができる。
【０１１７】
［第３実施形態］
次に、第３実施形態について説明する。
【０１１８】
図２０は、第３実施形態に係るロボットシステムを示す図である。図２１は、キャリブレーションの流れを示すフロー図である。図２２は、図２１に示すステップＳ２３における第１撮像画像を示す図である。図２３および図２４は、それぞれ、図２１に示すステップＳ２４における第１撮像画像を示す図である。図２５は、図２１に示すステップＳ２４を説明するための図である。なお、図２３および図２４では、説明の便宜上、ハンド１７Ａを模式的に示し、また、アーム１６の図示は省略して所定点Ｐ６を図示している。
【０１１９】
本実施形態では、主に、第１撮像部を用いた作業対象物の指定位置の設定（ツール設定）を行うこと以外は、前述した実施形態と同様である。なお、以下の説明では、前述した実施形態との相違点を中心に説明し、同様の事項に関してはその説明を省略する。
【０１２０】
図２０に示すように、本実施形態におけるロボット１が有するハンド１７Ａは、アーム１６からずれた位置に設けられている。具体的には、ハンド１７ＡのツールセンターポイントＰは、回動軸Ｏ６に沿った方向から見て、所定点Ｐ６と一致してない。このようなハンド１７Ａを有するロボット１を用いたキャリブレーションを行う場合、図２１に示すように、キャリブレーションにおいて、ステップＳ１１〜Ｓ１６の処理を行う前に、第１撮像部を用いた作業対象物９１ａの指定位置の設定（ツール設定）を行うことが好ましい。これにより、所定点Ｐ６に対するツールセンターポイントＰの位置や作業対象物９１ａの貫通孔９１１の位置が分かる。
【０１２１】
以下、図２１に示すフロー図を参照しつつ、本実施形態におけるキャリブレーションについて説明する。
【０１２２】
まず、制御部５１は、前述したステップＳ１１を行う前に、ロボット座標系と第１画像座標系との相対関係を求める（ステップＳ２３）。具体的には、制御部５１は、図２２中の実線で示すように第１撮像画像３０内に作業対象物９１ａを位置させ、このときの所定点Ｐ６のロボット座標（ｘｒ０，ｙｒ０）と、貫通孔９１１の第１画像座標（ｘｂ０，ｙｂ０）とを取得する。次いで、制御部５１は、矢印Ｒ２方向に作業対象物９１ａを移動させて、図２２中の二点鎖線で示すように作業対象物９１ａを位置させ、このときの所定点Ｐ６のロボット座標（ｘｒ１，ｙｒ１）と、貫通孔９１１の第１画像座標（ｘｂ１，ｙｂ１）とを取得する。また、制御部５１は、矢印Ｒ３方向に作業対象物９１ａを移動させて、図２２中の破線で示すように作業対象物９１ａを位置させ、このときの所定点Ｐ６のロボット座標（ｘｒ２，ｙｒ２）と、貫通孔９１１の第１画像座標（ｘｂ２，ｙｂ２）とを取得する。
【０１２３】
なお、前述したように作業対象物９１ａを第１撮像画像３０内において３箇所に移動させているが、これらの箇所は第１撮像画像３０内の箇所であればよく任意である。
【０１２４】
次いで、制御部５１は、取得した３つのロボット座標および３つの第１画像座標に基づいて、下記式（２）中の係数ａ、ｂ、ｃ、ｄを求める。これにより、ロボット座標と第１画像座標との間の座標変換式を求めることができ、よって、第１画像座標系での変位量（移動量）を、ロボット座標系（ベース座標系）での変位量さらには先端座標系での変位量に変換することができる。
【０１２５】
【数２】
2019025578.tif 000004
【０１２６】
なお、式（２）におけるΔｘｂ、Δｙｂは、画像座標系での２箇所間の変位（距離）を示し、Δｘａ、Δｙａは、ロボット座標系での２箇所間の変位を示す。
【０１２７】
このように、３つの異なる箇所に所定点Ｐ６を移動させて得られた３つのロボット座標および３つの画像座標を基にして、上記式（２）に示す座標変換式（アフィン変換式）を用いることで、ロボット座標系と画像座標系の相対的な関係を簡単にかつ適切に求めることができる。
【０１２８】
次に、第１撮像部３を用いた作業対象物９１ａの貫通孔９１１（指定位置）の設定を行う（ステップＳ２４）。
【０１２９】
具体的には、制御部５１は、ステップＳ２３で求めた座標変換式を用いて、図２３に示すように、作業対象物９１ａの貫通孔９１１を第１撮像画像３０の中心Ｏ３０に位置させ、この際の所定点Ｐ６のロボット座標および第１画像座標を取得する。次いで、制御部５１は、図２４に示すように、作業対象物９１ａの貫通孔９１１を第１撮像画像３０の中心Ｏ３０に位置させたまま、所定点Ｐ６を移動させ、移動後の所定点Ｐ６のロボット座標系での座標および画像座標系での座標を取得する。
【０１３０】
次いで、制御部５１は、図２５に示すように、移動前後の所定点Ｐ６のロボット座標系での座標および画像座標系での座標と、移動角度θ（貫通孔９１１を中心とした所定点Ｐ６の回転角度）と、中心Ｏ３０の画像座標系での座標と、を基にして、所定点Ｐ６に対する貫通孔９１１のロボット座標系での座標を求める。このようにして、所定点Ｐ６に対する貫通孔９１１の位置（ロボット座標系での座標）を設定することができる。
【０１３１】
以上説明したステップＳ２３、Ｓ２４の後で、制御部５１は、ステップＳ１１〜Ｓ１７を行う。これにより、制御部５１は、所定点Ｐ６に対する作業対象物９１ａの位置が未知な状態でも、第１画像座標系とロボット座標系との対応付けを適切かつ容易に行うことができる。
【０１３２】
なお、所定点Ｐ６に対するツールセンターポイントＰの位置が設計値や実測値により求められる場合には、前述したステップＳ２３は省略してもよい。そして、ステップＳ２４では、前述した方法を行わずに、設計値や実測値を、所定点Ｐ６に対するツールセンターポイントＰの位置（および貫通孔９１１の位置）として用いてもよい。
【０１３３】
以上説明した本実施形態においても、第１実施形態と同様の効果を発揮することができる。
【０１３４】
［第４実施形態］
次に、第４実施形態について説明する。
【０１３５】
図２６は、第４実施形態におけるキャリブレーションの流れを示すフロー図である。図２７は、ロボットが有するハンドを示す図である。図２８は、図２６に示すステップＳ２５における第２撮像画像を示す図である。
【０１３６】
本実施形態では、主に、第２撮像部を用いた作業対象物の指定位置の設定（ツール設定）を行うこと以外は、前述した実施形態と同様である。なお、以下の説明では、前述した実施形態との相違点を中心に説明し、同様の事項に関してはその説明を省略する。
【０１３７】
図２６に示すキャリブレーションは、ハンド１７がセルフアライメント機能を有しない場合に有効である。セルフアライメント機能を有していないハンド１７は、作業対象物９１ａを把持した際に、回動軸Ｏ６上に貫通孔９１１が必ず位置するように構成されていない。したがって、ハンド１７は、図８に示すように、回動軸Ｏ６上に貫通孔９１１が位置するように作業対象物９１ａを把持することや、図２７に示すように、回動軸Ｏ６上に貫通孔９１１が位置していない状態で作業対象物９１ａを把持することもある。
【０１３８】
このようなハンド１７を用いる場合、図２６に示すように、作業対象物９１を把持した後で（ステップＳ１１）、作業対象物９１ａの載置を行う前に（ステップＳ１２）、第２撮像部４を用いた作業対象物９１ａの貫通孔９１１（指定位置）の設定を行う（ステップＳ２５）。本実施形態では、作業対象物９１ａの指定位置は貫通孔９１１の位置である。
【０１３９】
作業対象物９１ａの貫通孔９１１（指定位置）の設定（ステップＳ２５）では、制御部５１は、ハンド１７で作業対象物９１ａを把持した状態で、第２撮像部４の直上に作業対象物９１ａを位置させる。この際、例えば、図２７に示すようにハンド１７で作業対象物９１ａを把持している場合には、図２８に示すように第２撮像画像４０に作業対象物９１ａが写る。ここで、ロボットシステム１００では、第１実施形態で述べたようにロボット座標系と第２画像座標系との対応付けが済んでいる。したがって、第２撮像部４の直上に作業対象物９１ａを位置させ、第２撮像部４で作業対象物９１ａを撮像することで、所定点Ｐ６に対する作業対象物９１ａの貫通孔９１１のロボット座標が分かる。このようにして、所定点Ｐ６に対する貫通孔９１１の位置（ロボット座標）を設定することができる。なお、所定点Ｐ６に対する貫通孔９１１の位置の設定（ツール設定）は、上記以外の方法であってもよい。例えば、第２撮像部４の第２撮像画像４０の画像中央に貫通孔９１１を位置させつつ、作業対象物９１を異なる２つの姿勢に移動させることでツール設定する方法（第２撮像部４を用いた図２５に示すような方法）等がある。
【０１４０】
以上説明したような、本実施形態におけるキャリブレーションでは、前述したように、受付部としての機能を有する外部入出力部５３は、撮像可能で第１撮像部３とは異なる第２撮像部４からの第２撮像画像４０に関する情報を受け付けることが可能である。また、制御部５１は、ロボット座標系と第２撮像画像４０に関する座標系である第２画像座標系との座標変換が可能であり、その座標変換を基にして所定部位としての所定点Ｐ６に対する作業対象物９１ａ（特に貫通孔９１１）の位置を求めることができる。
【０１４１】
これにより、所定点Ｐ６に対する作業対象物９１ａの位置が未知な状態でも、第１画像座標系とロボット座標系とのキャリブレーション（対応付け）を適切かつ容易に行うことができる。
【０１４２】
さらに、前述したように、第２撮像部４は、可動部２０により保持された状態の作業対象物９１ａを撮像可能に設置されている。特に、第２撮像部４の撮像方向は、第１撮像部３の撮像方向と反対の方向である。第２撮像部４は、第２撮像部４に対して鉛直方向上方を撮像可能であり、第１撮像部３は、第１撮像部３に対して鉛直方向下方を撮像可能である。そして、受付部としての機能を有する外部入出力部５３は、可動部２０により保持された状態の作業対象物９１ａを撮像可能に設けられた第２撮像部４と通信可能である。
【０１４３】
これにより、所定点Ｐ６に対する作業対象物９１ａの位置を効率良く求めることができる。
【０１４４】
ここで、第１実施形態で述べたように、「作業対象物」の構成は図５の構成に限定されず任意である。ただし、本実施形態のように第１撮像部３および第２撮像部４を用いてキャリブレーションを行う場合、作業対象物９１ａのキャリブレーションの基準となる箇所は、第１撮像部３による撮像可能な部分と、第２撮像部４により撮像可能な部分とのそれぞれに設けられていることが好ましい。すなわち、作業対象物９１ａの面９０１と、面９０２との双方に設けられていることが好ましい（図５参照）。そして、面９０１に設けられたキャリブレーションの基準となる箇所と、面９０２に設けられたキャリブレーションの基準となる箇所とは、ｚｒ軸方向から見て一致していることが好ましい。本実施形態では、貫通孔９１１が、面９０１に設けられたキャリブレーションの基準となる箇所と、面９０２に設けられたキャリブレーションの基準となる箇所との双方を兼ねている。このような構成の作業対象物９１ａを用いることで、前述した第１撮像部３および第２撮像部４を用いてキャリブレーションを効率良く行うことができる。
【０１４５】
以上説明した本実施形態においても、第１実施形態と同様の効果を発揮することができる。
【０１４６】
以上、本発明の制御装置、ロボットシステムおよび制御方法を図示の実施形態に基づいて説明したが、本発明は、これに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物が付加されていてもよい。また、各実施形態を適宜組み合わせてもよい。
【０１４７】
また、前述した実施形態では、本発明のロボットシステムが有するロボットとして、いわゆる６軸の垂直多関節ロボットを例示したが、当該ロボットは、例えば、スカラーロボット等の他のロボットであってもよい。また、当該ロボットは、単腕ロボットに限定されず、例えば、双腕ロボット等の他のロボットであってもよい。したがって、可動部の数は、１つに限定されず、２つ以上であってもよい。また、可動部が備えるロボットアームが有するアームの数は、前述した実施形態では、６つであるが、１〜５つまたは７つ以上であってもよい。
【符号の説明】
【０１４８】
１…ロボット、３…第１撮像部、４…第２撮像部、５…制御装置、１０…ロボットアーム、１１…アーム、１２…アーム、１３…アーム、１４…アーム、１５…アーム、１６…アーム、１７…ハンド、１７Ａ…ハンド、２０…可動部、３０…第１撮像画像、４０…第２撮像画像、５１…制御部、５２…記憶部、５３…外部入出力部、７０…設置箇所、７１…作業台、７２…載置台、９１…作業対象物、９１ａ…作業対象物、９１ｂ…作業対象物、９１ｃ…作業対象物、９１ｄ…作業対象物、９１ｅ…作業対象物、９１ｆ…作業対象物、９１ｇ…作業対象物、９１ｈ…作業対象物、９１ｉ…作業対象物、１００…ロボットシステム、１１０…基台、１３０…駆動部、１４０…位置センサー、３０１…基準点、５０１…表示装置、５０２…入力装置、９０１…面、９０２…面、９１１…貫通孔、Ｏ３０…中心、Ｏ６…回動軸、Ｐ…ツールセンターポイント、Ｐ１０…第１位置、Ｐ２０…第２位置、Ｐ６…所定点、Ｒ１…矢印、Ｒ２…矢印、Ｒ３…矢印、Ｓ３…撮像領域、θ…移動角度
【図１】
2019025578.tif 000005
【図２】
2019025578.tif 000006
【図３】
2019025578.tif 000007
【図４】
2019025578.tif 000008
【図５】
2019025578.tif 000009
【図６】
2019025578.tif 000010
【図７】
2019025578.tif 000011
【図８】
2019025578.tif 000012
【図９】
2019025578.tif 000013
【図１０】
2019025578.tif 000014
【図１１】
2019025578.tif 000015
【図１２】
2019025578.tif 000016
【図１３】
2019025578.tif 000017
【図１４】
2019025578.tif 000018
【図１５】
2019025578.tif 000019
【図１６】
2019025578.tif 000020
【図１７】
2019025578.tif 000021
【図１８】
2019025578.tif 000022
【図１９】
2019025578.tif 000023
【図２０】
2019025578.tif 000024
【図２１】
2019025578.tif 000025
【図２２】
2019025578.tif 000026
【図２３】
2019025578.tif 000027
【図２４】
2019025578.tif 000028
【図２５】
2019025578.tif 000029
【図２６】
2019025578.tif 000030
【図２７】
2019025578.tif 000031
【図２８】
2019025578.tif 000032