(57)【特許請求の範囲】
【請求項１】
平面に置かれた複数の対象物の位置を表す情報を視覚センサによって検出し、検出された情報に基づいて前記複数の対象物をロボットによって１つずつ取出経路に従って取出すロボットシステムであって、
前記視覚センサによって検出される情報に基づいて、前記ロボットによって取出される目標対象物を選択する目標対象物選択部と、
前記視覚センサによって検出される情報に基づいて、前記目標対象物以外の他の対象物が、該目標対象物に近接して配置されているか否かを判定する近接状態判定部と、
前記近接状態判定部によって、少なくとも１つの対象物が前記目標対象物に近接して配置されていると判定された場合に、前記視覚センサによって検出される情報に基づいて、前記ロボットによって前記目標対象物を取出す際に、前記少なくとも１つの対象物との干渉が起きないように、前記平面に対して平行な回避方向及び回避量を回避ベクトルとして決定する回避ベクトル決定部と、
前記回避ベクトル決定部によって決定される前記回避ベクトルに基づいて、他の対象物との干渉が起きないように前記取出経路を補正した補正経路を作成する取出経路補正部と、
前記近接状態判定部によって前記目標対象物に近接して配置されている対象物がないと判定された場合に、前記取出経路に従って前記ロボットを制御して前記目標対象物を取出すとともに、前記近接状態判定部によって少なくとも１つの対象物が前記目標対象物に近接して配置されていると判定された場合に、前記取出経路補正部によって作成された前記補正経路に従って前記目標対象物を取出す取出動作実行部と、
を備え、
前記近接状態判定部は、前記目標対象物の周囲に複数の近接状態判定領域を設定するとともに、
前記目標対象物以外の対象物が前記近接状態判定領域のうちの少なくとも１つに重なっている場合に、該対象物が、前記目標対象物に近接して配置されていると判定するように構成される、ロボットシステム。
【請求項２】
前記回避ベクトル決定部が、他の対象物との干渉を防止する回避ベクトルを決定できなかった場合に、前記目標対象物選択部は、前記目標対象物以外の別の対象物を新たに目標対象物として選択するように構成される、請求項１に記載のロボットシステム。
【請求項３】
前記回避ベクトル決定部は、前記近接状態判定部によって、対象物が前記目標対象物に近接していると判定された前記近接状態判定領域から前記目標対象物に向かって定められる方向を前記回避方向として決定するように構成される、請求項１又は２に記載のロボットシステム。
【請求項４】
前記回避ベクトル決定部は、前記近接状態判定部によって、対象物が複数の近接状態判定領域において前記目標対象物に近接していると判定された場合に、前記複数の近接状態判定領域のそれぞれに対して仮の回避ベクトルを決定するとともに、前記仮の回避ベクトルに基づいて前記回避ベクトルを決定するように構成される、請求項３に記載のロボットシステム。
【請求項５】
前記取出経路補正部は、前記補正経路の少なくとも最初の通過点の位置を、前記回避ベクトル決定部によって決定される前記回避ベクトルを用いて決定するように構成される、請求項１又は２に記載のロボットシステム。
【請求項６】
前記取出経路補正部は、前記取出経路の始点の位置を前記回避ベクトル決定部によって決定される前記回避ベクトルに従って移動し、さらに前記平面から離間する方向に予め定められる距離だけ移動した位置を前記補正経路の最初の通過点の位置として決定するように構成される、請求項１又は２に記載のロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対象物を１つずつ取出すように構成されたロボットシステムに関する。
【背景技術】
【０００２】
対象物の位置を表す情報を視覚センサで検出し、検出された情報に基づいてロボットを制御して対象物を取出すように構成されたロボットシステムが公知である。また、複数の対象物の中から対象物を１つずつ取出す場合に、取出工程の効率を向上させるために、対象物を取出す順番を決定することが公知である。
【０００３】
特許文献１には、コンベアによって搬送されるワークの位置情報を取得する視覚センサと、視覚センサから送信されたワークの位置情報に基づいて、複数のワークに対してロボットが作業を行う順番を並び替えるように構成された制御手段と、を備えたハンドリング装置が開示されている。
【０００４】
特許文献２には、コンベアによって搬送される対象物の種類、位置、方向などを表す情報を視覚センサによって検出し、検出された情報に基づいて、各々の対象物の移送方向及び通過経路を決定するとともに、他の対象物に接触せずに移送できる対象物を選択する機能を有するシステムが開示されている。
【０００５】
特許文献３には、上下方向に重なり合って置かれた複数のワークをロボットによって取出す際に、ワークが重なり合っている箇所の情報を視覚センサによって取得するとともに、取得された情報に基づいてワークの取出方法を変更する機能を有するロボットシステムが開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−２９７８８１号公報
【特許文献２】特表２００５−５３６４１７号公報
【特許文献３】特開２００５−３０５６１３号公報
【特許文献４】特開昭６０−１９３０１３号公報
【特許文献５】特開平８−０６３２１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、対象物をロボットによって順次取出す場合、対象物同士が接触したり、対象物を把持する把持装置が周囲の対象物に接触したりして、周囲の対象物の位置が変化することがある。そのような場合、視覚センサによって対象物を再度撮像して移動後の対象物の位置情報を取得する必要があり、サイクルタイムが増大する。
【０００８】
コンベアによって対象物が搬送される場合、視覚センサは、ロボットよりも上流に設置されていることがある。そのような場合において、ロボットによる対象物の取出工程において対象物の位置が不意に変化すれば、移動後の対象物の位置情報を視覚センサによって取得できなくなり、対象物の取出しに失敗する虞がある。
【０００９】
したがって、周囲の対象物と干渉することなく対象物を１つずつ取出すことができるロボットシステムが求められている。
【課題を解決するための手段】
【００１０】
本願の１番目の発明によれば、平面に置かれた複数の対象物の位置を表す情報を視覚センサによって検出し、検出された情報に基づいて前記複数の対象物をロボットによって１つずつ取出経路に従って取出すロボットシステムであって、前記視覚センサによって検出される情報に基づいて、前記ロボットによって取出される目標対象物を選択する目標対象物選択部と、前記視覚センサによって検出される情報に基づいて、前記目標対象物以外の他の対象物が、該目標対象物に近接して配置されているか否かを判定する近接状態判定部と、前記近接状態判定部によって、少なくとも１つの対象物が前記目標対象物に近接して配置されていると判定された場合に、前記視覚センサによって検出される情報に基づいて、前記ロボットによって前記目標対象物を取出す際に、前記少なくとも１つの対象物との干渉が起きないように、前記平面に対して平行な回避方向及び回避量を回避ベクトルとして決定する回避ベクトル決定部と、前記回避ベクトル決定部によって決定される前記回避ベクトルに基づいて、他の対象物との干渉が起きないように前記取出経路を補正した補正経路を作成する取出経路補正部と、前記近接状態判定部によって前記目標対象物に近接して配置されている対象物がないと判定された場合に、前記取出経路に従って前記ロボットを制御して前記目標対象物を取出すとともに、前記近接状態判定部によって少なくとも１つの対象物が前記目標対象物に近接して配置されていると判定された場合に、前記取出経路補正部によって作成された前記補正経路に従って前記目標対象物を取出す取出動作実行部と、を備え、前記近接状態判定部は、前記目標対象物の周囲に複数の近接状態判定領域を設定するとともに、前記目標対象物以外の対象物が前記近接状態判定領域のうちの少なくとも１つに重なっている場合に、該対象物が、前記目標対象物に近接して配置されていると判定するように構成される、ロボットシステムが提供される。
２番目の発明によれば、１番目の発明に係るロボットシステムにおいて、前記回避ベクトル決定部が、他の対象物との干渉を防止する回避ベクトルを決定できなかった場合に、前記目標対象物選択部は、前記目標対象物以外の別の対象物を新たに目標対象物として選択するように構成される。
３番目の発明によれば、１番目又は２番目の発明に係るロボットシステムにおいて、前記回避ベクトル決定部は、前記近接状態判定部によって、対象物が前記目標対象物に近接していると判定された前記近接状態判定領域から前記目標対象物に向かって定められる方向を前記回避方向として決定するように構成される。
４番目の発明によれば、３番目の発明に係るロボットシステムにおいて、前記回避ベクトル決定部は、前記近接状態判定部によって、対象物が複数の近接状態判定領域において前記目標対象物に近接していると判定された場合に、前記複数の近接状態判定領域のそれぞれに対して仮の回避ベクトルを決定するとともに、前記仮の回避ベクトルに基づいて前記回避ベクトルを決定するように構成される。
５番目の発明によれば、１番目又は２番目の発明に係るロボットシステムにおいて、前記取出経路補正部は、前記補正経路の少なくとも最初の通過点の位置を、前記回避ベクトル決定部によって決定される前記回避ベクトルを用いて決定するように構成される。
６番目の発明によれば、１番目又は２番目の発明に係るロボットシステムにおいて、前記取出経路補正部は、前記取出経路の始点の位置を前記回避ベクトル決定部によって決定される前記回避ベクトルに従って移動し、さらに前記平面から離間する方向に予め定められる距離だけ移動した位置を前記補正経路の最初の通過点の位置として決定するように構成される。
【００１１】
これら及び他の本発明の目的、特徴及び利点は、添付図面に示される本発明の例示的な実施形態に係る詳細な説明を参照することによって、より明らかになるであろう。
【発明の効果】
【００１２】
本発明に係るロボットシステムによれば、ロボットによって取出される目標対象物に対して近接して配置される対象物が存在する場合に、目標対象物を取出す際の取出経路を回避ベクトルによって補正する。それにより、周囲の対象物に干渉することなく目標対象物を取出せるようになる。
【図面の簡単な説明】
【００１３】
【図１】一実施形態に係るロボットシステムの全体構成図である。
【図２Ａ】ロボットの制御に利用される座標系を示す図である。
【図２Ｂ】ロボットの制御に利用される座標系を示す図である。
【図３】ロボット制御装置の機能ブロック図である。
【図４】一実施形態に係るロボットシステムにおいて実行される処理を示すフローチャートである。
【図５】目標対象物及びその周囲の対象物を示す平面図である。
【図６】目標対象物の周囲に設定される近接状態判定領域の例を示す図である。
【図７】目標対象物及びその周囲の対象物を示す平面図である。
【図８】目標対象物に対応する長方形及び周囲の対象物に対応する長方形を示す図である。
【図９】目標対象物及びその周囲の対象物を示す平面図である。
【図１０】目標対象物及びその周囲の対象物を示す平面図である。
【図１１】目標対象物及びその周囲の対象物を示す平面図である。
【図１２】目標対象物及びその周囲の対象物を示す平面図である。
【図１３】目標対象物及びその周囲の対象物を示す平面図である。
【図１４】目標対象物及びその周囲の対象物を示す平面図である。
【図１５】目標対象物及びその周囲の対象物を示す平面図である。
【図１６】回避ベクトルに従って作成される補正経路を示す図である。
【図１７】回避ベクトルに従って作成される補正経路を示す図である。
【図１８】回避ベクトルに従って作成される補正経路を示す図である。
【図１９】回避ベクトルに従って作成される補正経路を示す図である。
【図２０】別の実施形態に係るロボットシステムの全体構成図である。
【図２１】ロボットの制御に利用される座標系を示す図である。
【発明を実施するための形態】
【００１４】
以下、添付図面を参照して本発明の実施形態を説明する。図示される実施形態の構成要素は、本発明の理解を助けるために寸法が適宜変更されている。また、同一又は対応する構成要素には、同一の参照符号が使用される。
【００１５】
図１は、一実施形態に係るロボットシステム１０の全体構成図である。ロボットシステム１０は、ロボット１と、ロボット１を制御するロボット制御装置２と、ロボット１によって順次取出される対象物３の上方に設置された視覚センサ４と、を備えている。ロボットシステム１０は、複数の対象物３の位置を表す情報を視覚センサ４によって検出し、検出された情報に基づいて、ロボット１によって対象物３を１つずつ取出経路に従って取出すように構成されている。
【００１６】
ロボット１は、複数の関節軸をそれぞれ駆動するモータ１３と、アーム１２の末端に装着された把持装置１１と、を備えている。図１においては、幾つかのモータ１３のみが視認可能である。各々のモータ１３は、把持装置１１が所望の位置及び姿勢を有するように、ロボット制御装置２から送信される制御指令に従って駆動される。把持装置１１は、ロボット制御装置２から送信される制御指令に従って開閉する爪１４を有しており、それら爪１４によって対象物３を開放可能に把持できる。
【００１７】
図示されるロボット１は垂直多関節ロボットであるものの、対象物の搬送を実行できる他の任意の構成を有するロボットが用いられてもよい。例えば、ロボットシステム１０は、移動機構、平行リンク機構又は直動機構を有するロボットを備えていてもよい。
【００１８】
図２Ａ及び図２Ｂを参照して、ロボット１の制御に利用される座標系について説明する。ロボット１には、ロボット１の動作及び視覚センサ４の計測の基準になるロボット座標系Ｒ０が予め定義されている。また、ロボット１のアーム１２の先端点、すなわち把持装置の取付箇所には、アーム座標系Ｔ０が定義される。ロボット１の機構パラメータに基づいて、アーム座標系Ｔ０とロボット座標系Ｒ０との間の位置関係が求められることは公知である。
【００１９】
本明細書において、「ロボットの位置」とは、アーム１２に取付けられるツール（把持装置１１）の先端に設定されるツール先端点（ＴＣＰ）ＲＰの位置を意味する。前述したように、アーム座標系Ｔ０とロボット座標系Ｒ０との間の位置関係は既知である。したがって、アーム座標系Ｔ０におけるツール先端点ＲＰの位置が分かれば、ロボット座標系Ｒ０におけるツール先端点ＲＰの位置は計算により求められる。アーム座標系Ｔ０におけるツール先端点ＲＰの位置は、把持装置１１のＣＡＤデータから計算により求められてもよいし、又は３次元測定器によって計測して求められてもよい。ツール先端点ＲＰは、必要に応じて把持装置１１の先端から離間した位置に設定されてもよい。
【００２０】
再び図１を参照すれば、視覚センサ４は、台座５の平坦な上面に載置されている複数の対象物３を検出可能な位置において、架台４１によって固定されている。破線４３は、視覚センサ４のカメラの視野を表している。本実施形態において、対象物３は、ロボット１の可動範囲内において、互いに重なり合わないように配置されている。視覚センサ４は、対象物３を検出可能であれば任意の位置に設けられていてもよい。視覚センサ４を固定する固定手段も図示された例に限定されない。一実施形態において、視覚センサ４は、ロボット１のアーム１２の末端に取付けられていてもよい。
【００２１】
視覚センサ４は、ロボット座標系Ｒ０に対して予めキャリブレーションされている。したがって、視覚センサ４によって取得された画像における任意の部位の位置は、画像処理装置４２の不揮発性メモリに記憶されたキャリブレーションデータに基づいて、ロボット座標系Ｒ０における位置に変換可能である。キャリブレーション方法は特に限定されないものの、例えば特許文献４に記載された公知技術を用いることができる。
【００２２】
視覚センサ４によって取得された画像データは、画像処理装置４２に入力される。画像処理装置４２は、画像データを処理し、各々の対象物３の位置を検出する。画像データから対象物３の二次元位置情報を検出できれば、対象物３の位置を検出するための画像処理方法は特定の方法に限定されない。例えば、画像処理装置４２は、正規化相関を利用したテンプレートマッチングによって対象物３の位置を検出できる。
【００２３】
また、画像処理装置４２は、視覚センサ４によって取得された画像データに複数の対象物３が含まれる場合、各々の対象物３の取出順序を決定する。一実施形態において、画像処理装置４２は、テンプレートマッチングにおける相関値が高い順番に対象物３が取出されるように取出順序を決定する。
【００２４】
別の実施形態において、画像処理装置４２は、画像上の対象物３の位置又はロボット座標系Ｒ０における対象物３の位置に応じて、対象物３の取出順序を決定する。例えば、ロボット座標系Ｒ０におけるＸ軸の値が大きい順番に対象物３が取出されるように取出順序が決定されてもよい。
【００２５】
画像処理装置４２による画像処理の結果はロボット制御装置２に送信される。画像処理装置４２は、汎用のコンピュータであってもよいし、専ら画像処理のために構成されたデバイスであってもよい。或いは、画像処理装置４２は、ロボット制御装置２に内蔵されていてもよい。
【００２６】
ロボット制御装置２は、ＣＰＵ、ＲＯＭ、ＲＡＭ、揮発性メモリなどの公知のハードウェア構成を有するデジタルコンピュータである。ロボット制御装置２は、外部機器との間でデータ及び信号を送受信するためのインターフェイスを備えており、入力デバイス又は表示デバイス、外部記憶装置などと必要に応じて接続される。
【００２７】
図３は、ロボット制御装置２の機能ブロック図である。ロボット制御装置２は、取出順序に従ってロボット１によって取出されるべき目標対象物３１（図５参照）を選択するとともに、他の対象物３２に干渉することなく目標対象物３１を取出すようにロボット１を制御する。図示された実施形態に係るロボット制御装置２は、目標対象物選択部２１と、近接状態判定部２２と、回避ベクトル決定部２３と、取出経路補正部２４と、取出動作実行部２５と、を備えている。
【００２８】
目標対象物選択部２１は、視覚センサ４によって検出される情報に基づいて、ロボット１によって取出される目標対象物３１を選択する。目標対象物３１は、対象物３のうち、ロボット１によって取出されるべき対象物である。目標対象物３１は、所定の取出順序に従って順次選択される。従って、目標対象物選択部２１は、視覚センサ４によって取得された画像データの画像処理の結果として画像処理装置４２から出力される信号に従って目標対象物３１を選択する。
【００２９】
近接状態判定部２２は、視覚センサ４によって検出される情報に基づいて、目標対象物３１以外の対象物３２が、目標対象物３１に近接して配置されているか否かを判定する。
【００３０】
回避ベクトル決定部２３は、近接状態判定部２２によって、少なくとも１つの対象物３２が目標対象物３１に近接して配置されていると判定された場合に、視覚センサ４によって検出される情報に基づいて、回避ベクトルを決定する。回避ベクトルは、ロボット１によって目標対象物３１を取出す際に、目標対象物３１に近接する対象物３２との干渉が起きないように決定される。回避ベクトルは、目標対象物３１及び他の対象物３２が載置された平面に対して平行な回避方向と、回避量と、によって定められる。
【００３１】
取出経路補正部２４は、回避ベクトル決定部２３によって決定される回避ベクトルに基づいて、他の対象物３２との干渉が起きないように、目標対象物３１を取出す際の取出経路を補正した補正経路を作成する。
【００３２】
取出動作実行部２５は、ロボット１を制御して、目標対象物３１を所定の経路に従って取出す。本実施形態によれば、取出動作実行部２５は、近接状態判定部２２によって目標対象物３１に近接して配置されている他の対象物３２がないと判定された場合、プログラムによって指定される取出経路に従って目標対象物３１を取出す。取出経路を指定するプログラムは、ロボット制御装置２の不揮発性メモリ又は外部記憶装置に記憶されている。
【００３３】
他方、近接状態判定部２２によって少なくとも１つの対象物３２が目標対象物３１に近接して配置されていると判定された場合には、取出動作実行部２５は、取出経路補正部２４によって作成された補正経路に従って目標対象物３１を取出す。
【００３４】
図４は、一実施形態に係るロボットシステム１０において実行される処理を示すフローチャートである。ロボット制御装置２が、対象物３の取出工程を開始する開始信号を受信すると、ステップＳ４０１〜Ｓ４１０の処理が開始される。ステップＳ４０１において、視覚センサ４によって、台座５に載置されている複数の対象物３の画像データを取得する。１つの対象物３のみが検出された場合、後述するステップＳ４０２〜Ｓ４１０の処理を実行する必要はない。したがって、その場合、ロボットシステム１０は、予め定められるプログラムに従って、ロボット１によって対象物３を取出す。
【００３５】
複数の対象物３が検出された場合、ステップＳ４０２に進み、視覚センサ４によって取得された画像データを画像処理装置４２によって処理し、対象物３の取出順序を決定する。
【００３６】
ステップＳ４０３では、目標対象物選択部２１が、ステップＳ４０２において決定された取出順序に従って、複数の対象物３のうち、ロボット１０によって取出されるべき目標対象物３１を選択する。
【００３７】
ステップＳ４０４では、近接状態判定部２２が、目標対象物３１に近接する他の対象物３２が存在するか否かを判定する。ステップＳ４０４の判定が否定された場合、ロボット１は、周囲の対象物に干渉することなく目標対象物３１を取出すことができる。したがって、その場合、ステップＳ４０５に進み、取出動作実行部２５が、予め定められる動作プログラムによって規定される取出経路に従ってロボット１を移動させて、目標対象物３１を取出す。
【００３８】
それに対し、ステップＳ４０４での判定が肯定された場合、ステップＳ４０６に進み、回避ベクトル決定部２３が回避ベクトルを決定する。
【００３９】
ステップＳ４０７では、回避ベクトルがステップＳ４０６において決定されたか否かを判定する。ステップＳ４０７での判定が肯定された場合、ステップＳ４０８に進み、取出経路補正部２４が、ステップＳ４０６で決定された回避ベクトルに従って取出経路を補正し、補正経路を作成する。次いで、ステップＳ４０９に進み、取出動作実行部２５が、取出経路補正部２４によって作成された補正経路に従ってロボット１を移動させて目標対象物３１を取出す。
【００４０】
ステップＳ４０７の判定が否定された場合、すなわち回避ベクトル決定部２３が回避ベクトルを求めることができなかった場合、ステップＳ４１０に進む。ステップＳ４１０では、目標対象物選択部２１が、回避ベクトルを求められなかった目標対象物３１とは異なる別の対象物３の中から目標対象物３１を新たに選択する。そして、新たに選択された目標対象物３１について、ステップＳ４０４以降の処理が実行される。
【００４１】
本実施形態に係るロボットシステムによれば、次のような効果が得られる。
目標対象物３１に近接して配置される対象物３２が存在する場合に、対象物３２との干渉が起こらないように、目標対象物３１の取出経路が補正される。したがって、目標対象物３１を取出す際に、目標対象物３１の周囲の対象物３２の位置が不意に変化するのを防止できる。それにより、視覚センサ４による対象物３の撮像、及び画像処理装置４２による画像処理を再実行する必要がなくなり、サイクルタイムを短縮できる。
【００４２】
また、目標対象物３１に対して回避ベクトルが決定できない場合、すなわち周囲の対象物３２との干渉を確実に避けられない場合には、その目標対象物３１を取出すことなく、別の対象物が目標対象物３１として新たに選択される。このように、対象物３の配置状態に応じて目標対象物３１が自動的に切替えられるので、操作者の負担が軽減される。さらに、対象物３の初期配置に対する要求が緩和されるので、作業効率を向上させられる。
【００４３】
次に、近接状態判定部２２の機能についてより詳細に説明する。一実施形態において、近接状態判定部２２は、目標対象物３１を含む二次元の画像上において、目標対象物３１の位置情報に基づいて、目標対象物３１の周囲に複数の近接状態判定領域３３ａ〜３３ｄを設定する。図５は、目標対象物３１及び目標対象物３１の周囲に位置する対象物３２を示す平面図である。
【００４４】
図示される実施形態では、目標対象物３１の各辺３１ａ〜３１ｄの周囲に長方形の近接状態判定領域３３ａ〜３３ｄが設定される。近接状態判定領域３３ａ〜３３ｄの幅Ｗ１，Ｗ２は、目標対象物３１を取出す際に確保されるべき間隙に応じて適宜定められる。近接状態判定領域は、目標対象物３１の周囲に設定されれば、その個数、形状は特に限定されない。例えば、近接状態判定領域３３ｄが２つに分割されていてもよい。
【００４５】
近接状態判定部２２は、対象物３２が近接状態判定領域３３ａ〜３３ｄのうちの少なくとも１つ（図５の場合、近接状態判定領域３３ｄ）に重なり合っている場合、対象物３２が目標対象物３１に近接して配置されていると判定する。具体的には、近接状態判定領域３３ａ〜３３ｄ内の画素の明るさ又は色を計測する。そして、対象物３２が存在しない場合に想定される画素の明るさ又は色と異なる場合、対象物３２が近接状態判定領域３３ａ〜３３ｄに重なり合っていると判定する。
【００４６】
画素の明るさ又は色の違いが、実際には対象物３２の存在に起因するものでない場合であっても、同様に回避動作を実行するのが好ましい。なぜなら、他の対象物３２ではなくても異物が混入している可能性があるためである。
【００４７】
図６は、円形の目標対象物３１について設定される近接状態判定領域３３ａ〜３３ｈの例を示している。図示された例では、４５度ごとに分割された近接状態判定領域３３ａ〜３３ｈが目標対象物３１の周囲に設定されている。しかしながら、任意の間隔で任意の個数に分割された近接状態判定領域が用いられてもよい。
【００４８】
図示されない別の実施形態において、目標対象物３１の外形が曲線によって形成される場合、目標対象物３１の外形に外接する長方形を求め、その長方形の周囲に近接状態判定領域を設定するようにしてもよい。
【００４９】
一実施形態において、近接状態判定部２２は、数値計算により近接状態を判定するように構成されてもよい。その場合、対象物３の外形及び対象物３の周囲に設けられる近接状態判定領域の外形をそれぞれ予め設定しておく。そして、目標対象物３１の外形と、周囲の対象物３２の周囲に設定された近接状態判定領域の外形とが重なり合っているか否かを計算する。目標対象物３１が近接状態判定領域と重なり合っている場合、近接状態判定部２２は、対象物３２が目標対象物３１に近接して配置されていると判定する。
【００５０】
これら実施形態の変形例において、近接状態判定部２２は、目標対象物３１の外縁から離間されるべき距離に応じて、計算により、目標対象物３１又は対象物３２の周囲に自動生成される近接状態判定領域を利用してもよい。
【００５１】
対象物が円形である一実施形態において、近接状態判定部２２は、目標対象物３１の中心と、周囲の対象物３２の中心との間の距離が予め定められる閾値を下回った場合に、周囲の対象物３２が目標対象物３１に近接して配置されていると判定するように構成されてもよい。
【００５２】
図７には、目標対象物３１とともに、目標対象物３１の周囲に位置する２つの対象物３２、すなわち第１の対象物３２１、第２の対象物３２２が示されている。破線で示されている目標対象物３１と同心の円３４は、目標対象物３１の直径（＝対象物３２の直径）と、目標対象物３１を取出す際に確保されるべき間隙の大きさＧとの合計に等しい大きさの半径Ｄ１を有している。近接状態判定部２２は、第１及び第２の対象物３２１，３２２の中心３２１ｃ，３２２ｃが円３４の範囲内に入っている場合、それら対象物３２１，３２２が目標対象物３１に近接して配置されていると判定する。
【００５３】
図７に示される例の場合、第１の対象物３２１の中心３２１ｃが円３４の範囲内に入っているので、第１の対象物３２１は、目標対象物３１に近接して配置されていると判定される。他方、第２の対象物３２２の中心３２２ｃは、円３４の範囲外に位置しているので、第２の対象物３２２は、目標対象物３１に近接して配置されていないと判定される。
【００５４】
対象物が円形ではない一実施形態において、近接状態判定部２２は、対象物の輪郭に外接する凸多角形に基づいて、対象物の近接状態を判定してもよい。その場合、目標対象物３１に対応する多角形の各辺と、周囲の対象物３２に対応する多角形の各頂点との間の距離が、予め定められる閾値を下回った場合に、それら目標対象物３１と対象物３２とが近接していると判定される。
【００５５】
図８は、目標対象物３１に対応する、すなわち目標対象物３１の輪郭に外接していて辺１３１ａ〜１３１ｄを有する長方形（以下、「目標対象物形状１３１」と称する。）と、周囲の対象物３２に対応する、すなわち対象物３２の輪郭に外接する長方形（以下、「対象物形状１３２」と称する。）とを示している。
【００５６】
本実施形態によれば、対象物形状１３２の頂点Ｐ２２から目標対象物形状１３１の辺１３１ｃに下ろした垂線Ｌ１の足Ｐ１の位置を計算によって求める。また、目標対象物形状の辺１３１ｃの中点Ｐ２から垂線Ｌ１の足Ｐ１までの距離Ｄ２を計算によって求める。近接状態判定部２２は、垂線Ｌ１の長さ（頂点Ｐ２２から垂線Ｌ１の足Ｐ１までの距離）及び距離Ｄ２の両方が、予め定められるそれぞれ対応した閾値を下回る場合、対象物３２が目標対象物３１に近接して配置されていると判定する。なお、垂線Ｌ１の長さに対する閾値は、目標対象物３１を取出す際に周囲の対象物３２との間に確保されるべき間隙に応じて定められる。また、距離Ｄ２に対する閾値は、少なくとも目標対象物形状の辺１３１ｃの半分の長さ以上になるように設定される。
【００５７】
別の実施形態において、対象物形状１３２の頂点Ｐ２２から目標対象物形状１３１の辺１３１ｃに下ろした垂線Ｌ１の足Ｐ１が、辺１３１ｃの線分上に位置していない場合、対象物形状１３２の頂点Ｐ２２と、頂点Ｐ２２に近い１３１ｃの端点Ｐ１４（図８参照）との間の距離を予め定められる閾値と比較することによって、近接状態が判定されてもよい。その場合、垂線Ｌ１の足Ｐ１が辺１３１ｃの線分上に位置している場合には、垂線Ｌ１の長さと対応する閾値とを比較することによって、近接状態が判定される。
【００５８】
近接状態判定部２２は、目標対象物形状１３１のすべての辺１３１ａ〜１３１ｄ、及び対象物形状１３２のすべての頂点Ｐ２１〜Ｐ２４について前述した処理を実行する。さらに、近接状態判定部２２は、対象物形状１３２のすべての辺１３２ａ〜１３２ｄ、及び目標対象物形状１３１のすべての頂点Ｐ１１〜Ｐ１４について前述した処理を実行する。
【００５９】
次に、回避ベクトル決定部２３の機能について詳細に説明する。図５に示される例においては、目標対象物３１の辺３１ｄに沿って設定される近接状態判定領域３３ｄと、対象物３２が重なり合っている。回避ベクトル決定部２３は、目標対象物３１の辺３１ｄに対して垂直な方向であって、目標対象物３１の内側に向かう方向を回避方向として決定する。また、回避ベクトル決定部２３は、近接状態判定領域３３ｄの幅Ｗ１を回避量として決定する。こうして求められた回避方向及び回避量に従って、回避ベクトルＶが求められる。
【００６０】
図９を参照して、目標対象物３１に近接して配置される複数の対象物３２が存在する実施形態において、回避ベクトルＶを決定する態様について説明する。本実施形態において、辺３１ａ〜３１ｆを有する六角形の目標対象物３１の周囲に近接状態判定領域３３ａ〜３３ｆがそれぞれ設定される。近接状態判定領域３３ａ〜３３ｆの幅は、目標対象物３１を取出す際に、周囲の対象物３２との間に確保されるべき間隙に応じて定められる。
【００６１】
図９に示される例では、第１の対象物３２１、第２の対象物３２２及び第３の対象物３２３が、近接状態判定領域３３ｃ，３３ｄ，３３ｅにそれぞれ重なり合っている。したがって、３つの対象物３２１，３２２，３２３が目標対象物３１に近接して配置されている。
【００６２】
回避ベクトル決定部２３は、目標対象物３１の３つの辺３１ｃ，３１ｄ，３１ｅに対して垂直であって、目標対象物３１の内側に向かう方向を回避ベクトルＶｃ，Ｖｄ，Ｖｅの回避方向として決定する。また、回避ベクトル決定部２３は、近接状態判定領域３３ｃ，３３ｄ，３３ｅのそれぞれの幅を回避ベクトルＶｃ，Ｖｄ，Ｖｅの回避量として決定する。
【００６３】
このように３つの回避ベクトルＶｃ，Ｖｄ，Ｖｅが求められた場合、各々の回避ベクトルＶｃ，Ｖｄ，Ｖｅ同士の間に形成される角度を計算し、角度が最大になる２本のベクトルＶｃ，Ｖｅを抽出する。
【００６４】
一実施形態によれば、ベクトルＶｃ，Ｖｅの始点が目標対象物３１の重心ＣＧに一致するように移動し、ベクトルＶｃの終点を通過し、ベクトルＶｃに対して垂直な直線Ｌ２を求める。また、ベクトルＶｅの終点を通過し、ベクトルＶｅに対して垂直な直線Ｌ３を求める。そして、目標対象物３１の重心ＣＧを始点とし、それら直線Ｌ２，Ｌ３の交点を終点とするベクトルＶを求める。回避ベクトル決定部２３は、このようにして求められたベクトルＶを回避ベクトルとして決定する。
【００６５】
別の実施形態において、回避ベクトル決定部２３は、回避量が十分である場合には、ベクトルＶｃ，Ｖｅの合成ベクトルを回避ベクトルとして単に決定してもよい。
【００６６】
一実施形態において、回避ベクトル決定部２３は、回避ベクトル決定部２３によって決定された回避ベクトルが適切であるか否かを確認する機能を有していてもよい。回避ベクトルＶは、目標対象物３１に近接して配置された対象物３２との接触を回避するために取出経路を補正するのに使用される。しかしながら、目標対象物３１の取出経路を補正した結果として、目標対象物３１の周囲にある別の対象物に接近し、場合によっては接触する可能性がある。
【００６７】
一実施形態によれば、回避ベクトルの大きさ、すなわち回避量が予め定められる閾値を超える場合、補正経路に従って取出動作を実行すれば、別の対象物に接触する可能性があるとみなし、対象物との干渉が回避不能であるとみなしてもよい。この場合、回避ベクトルが決定されなかったものと判定され、目標対象物３１は、ロボット１によって取出されることなく、別の対象物３が目標対象物３１として選択される。
【００６８】
或いは、回避ベクトルに従って目標対象物３１を移動させたと仮定して、移動後の目標対象物３１に近接する対象物３２が存在するか否かを判定してもよい。移動後の目標対象物３１に近接する対象物３２が存在する場合は、対象物３２との干渉が回避不能であるとみなし、別の対象物３が目標対象物３１として選択される。
【００６９】
一実施形態において、複数の回避ベクトルＶｃ，Ｖｄ，Ｖｅによって形成される角度が概ね１８０度である場合、対象物３２との干渉が回避不能であるとみなしてもよい。２つの回避ベクトルの間に形成される角度が概ね１８０度である場合、２つの回避ベクトルが互いに対して平行に近いことを意味する。そのため、２つの回避ベクトルから求められる回避ベクトルＶ（図参照）の終点を決定する直線Ｌ２，Ｌ３の交点を計算できない。
【００７０】
２つのベクトルが概ね１８０度である場合、２つの対象物の間に目標対象物が存在することを意味する。図１０は、目標対象物３１の対向する２つの辺３１ａ，３１ｄに沿って設定される近接状態判定領域３３ａ，３３ｄに重なり合う対象物３２１，３２２が存在する状態を示している。
【００７１】
この場合、矢印Ａ１，Ａ２で示されるように、回避ベクトルＶａ，Ｖｄに対して垂直な方向に目標対象物３１を移動させたとしても、目標対象物３１を真上に持ち上げて取出す場合と同様に、対象物３２１，３２２に干渉する可能性がある。そのため、目標対象物３１及び対象物３２１，３２２が図に示されるような位置関係にある場合、目標対象物３１と対象物３２１，３２２との干渉が回避不能であると決定されるべきである。
【００７２】
図に示されていない別の対象物が目標対象物３１に近接して配置されている場合も、最大角を形成する２つのベクトルは同じベクトルＶａ，Ｖｄになるので、同様に対象物３２１，３２２との干渉が回避不能であると判定される。目標対象物３１の周囲の近接状態判定領域３３ａ〜３３ｆのすべての範囲内に対象物が存在する場合、目標対象物３１は当然に対象物との干渉が回避不能であると決定される。
【００７３】
図１１を参照して、複数のベクトルから回避ベクトルを決定する別の実施形態について説明する。図に示される例では、３つの対象物３２１，３２２，３２３が目標対象物３１の近接状態判定領域３３ｃ，３３ｄ，３３ｅと重なり合っており、３つのベクトルを用いて回避ベクトルを決定する。先ず、３つのベクトルＶｃ，Ｖｄ，Ｖｅの始点がそれぞれ目標対象物３１の重心ＣＧに一致するように、ベクトルＶｃ，Ｖｄ，Ｖｅを移動させる。次いで、各々のベクトルＶｃ，Ｖｄ，Ｖｅの終点を通り、それらベクトルＶｃ，Ｖｄ，Ｖｅの方向に垂直な方向に延びる直線Ｌ２〜Ｌ４を求める。
【００７４】
次いで、重心ＣＧに対してそれら直線Ｌ２〜Ｌ４の外側に形成される領域どうしが重なり合う共通領域Ｒを求める。さらに、共通領域Ｒのうち重心ＣＧに最も近い点Ｐ５を求める。回避ベクトル決定部２３は、目標対象物３１の重心ＣＧを始点とし、共通領域Ｒにおける点Ｐ５を終点とするベクトルを回避ベクトルＶとして決定する。本実施形態において、共通領域Ｒが存在しない場合は、目標対象物３１と対象物３２１，３２２，３２３との干渉を回避できないと判定する。前述した実施形態と同様に、回避ベクトル決定部２３は、求められた回避ベクトルＶが適切であるか否かを判定する機能を有していてもよい。
【００７５】
図１２は、１つの対象物３２が２つの近接状態判定領域３３ｇ，３３ｈにわたって重なり合っている状態を示している。このような場合、各々の近接状態判定領域３３ｇ，３３ｈの重心ＣＧｈ，ＣＧｇから目標対象物３１の重心ＣＧに向かう方向にベクトルＶｇ，Ｖｈをそれぞれ求める。ベクトルＶｇ，Ｖｈの大きさは、近接状態判定領域３３ｇ，３３ｈの幅に等しい。回避ベクトル決定部２３は、このようにして求められた複数のベクトルから、図９を参照して前述した方法に従って、回避ベクトルＶを決定する。
【００７６】
図７を参照して説明したように、目標対象物３１と対象物３２との間の距離を利用して対象物３２の近接状態を判定した場合における回避ベクトルＶの決定方法について説明する。この場合、回避ベクトル決定部２３は、目標対象物３１と対象物３２との間の距離を利用して回避ベクトルＶを決定する。
【００７７】
図１３に示されるように、３つの対象物３２１，３２２，３２３が目標対象物３１に近接して配置されている。ベクトルＶ１，Ｖ２，Ｖ３は、対象物３２１，３２２，３２３の中心Ｃ１，Ｃ２，Ｃ３を始点として目標対象物３１の中心Ｃに向けられている。各々のベクトルＶ１，Ｖ２，Ｖ３の大きさは、目標対象物３１を取出す際に周囲の対象物との間に確保されるべき間隙の大きさに等しい。それらベクトルＶ１，Ｖ２，Ｖ３のうち、互いの間に形成される角度が最大になるような２つのベクトルを抽出する。図示された例においては、ベクトルＶ１，Ｖ３が抽出される。
【００７８】
一実施形態において、図９に関連して説明したように、ベクトルＶ１，Ｖ３の終点を通り、かつベクトルＶ１，Ｖ３に垂直な方向に延びる直線に基づいて回避ベクトルを決定してもよい。
【００７９】
別の実施形態において、互いの間に形成される角度が最大になるベクトルＶ１，Ｖ３の合成ベクトルを利用して回避ベクトルＶを決定してもよい。
【００８０】
具体的には、ベクトルＶ１，Ｖ３の合成ベクトルに従って目標対象物３１を移動させ、移動後の目標対象物３１の中心を計算する。次いで、新たに取得された移動後の目標対象物３１の中心と、周囲の対象物３２１，３２２，３２３の中心Ｃ１，Ｃ２，Ｃ３との間の距離を計算する。次いで、対象物３２１，３２２，３２３が目標対象物３１に近接しているか否かを判定する。移動後の目標対象物３１と対象物３２１，３２２，３２３とが互いに近接していないと判定された場合は、ベクトルＶ１，Ｖ３の合成ベクトルを回避ベクトルＶとして決定する。
【００８１】
他方、移動後の目標対象物３１と対象物３２１，３２２，３２３とのいずれかが依然として互いに近接していると判定された場合、合成ベクトルに所定の係数を乗算して合成ベクトルの大きさを変更する。係数には上限値が定められていてもよく、上限値以下の係数で適切な回避ベクトルＶを決定できなかった場合、目標対象物３１と対象物３２１，３２２，３２３との干渉が回避不能であるとみなし、別の目標対象物３１を選択する。
【００８２】
図１４を参照して、ベクトルＶ１，Ｖ３を合成して得られる合成ベクトルＶＲを利用する別の実施形態について説明する。本実施形態において、合成ベクトルＶＲの方向を回避方向として決定する。他方、回避ベクトルの大きさは次のような処理に従って決定される。
【００８３】
先ず、合成ベクトルＶＲに対して平行で、かつ目標対象物３１の中心Ｃを通る直線Ｌ５を計算する。次いで、周囲の対象物、例えば対象物３２３の中心Ｃ３を中心とする円３５を求める。円３５は、対象物３２３の直径と、目標対象物３１を取出す際に周囲の対象物との間に確保されるべき間隙と、の合計に等しい半径Ｄ３を有する。
【００８４】
次いで、直線Ｌ５と円３５との交点Ｐ６，Ｐ７を求める。それら交点Ｐ６，Ｐ７のうち、目標対象物３１の中心Ｃにより近い交点（図示された例では交点Ｐ６）を求める。次いで、目標対象物３１の中心Ｃから交点Ｐ６までの距離を計算する。こうして求められた距離が、目標対象物３１を取出す際に対象物３２３との接触を確実に回避できる最小限の回避量である。目標対象物３１に近接する他の対象物３２１，３２２それぞれに対して前述した処理と同様の処理を実行し、各々の対象物３２１，３２２，３２３を回避するのに必要な最小限の回避量を求める。それら最小限の回避量のうちの最大値を、回避ベクトルＶの大きさ（回避量）として設定する。
【００８５】
図１５を参照して、ベクトルＶ１，Ｖ３を利用せずに回避ベクトルＶを決定する実施形態について説明する。円３６，３７，３８は、対象物３２１，３２２，３２３の中心Ｃ１，Ｃ２，Ｃ３を中心とし、対象物３２１，３２２，３２３の直径と、目標対象物３１を取出す際に周囲の対象物３２１，３２２，３２３との間に確保されるべき間隙と、の合計に等しい半径を有している。
【００８６】
次いで、対象物３２１，３２２，３２３の周りに形成される円３６，３７，３８の外側の領域のうち互いに重なり合う領域のうち、目標対象物３１の中心Ｃから最も小さい距離に位置する点Ｐ８を計算する。回避ベクトル決定部２３は、目標対象物３１の中心Ｃを始点とし、点Ｐ８を終点とするベクトルを回避ベクトルＶとして決定する。
【００８７】
次に、取出経路補正部２４及び取出動作実行部２５の機能について詳細に説明する。図１６は、取出経路補正部２４によって、回避ベクトルＶに従って補正される取出経路を示す図である。図１６には、プログラムされた取出経路の通過点Ｐ３１，Ｐ３２、及び取出経路補正部２４によって作成された補正経路の通過点Ｐ４１，Ｐ４２がそれぞれ示されている。各々の通過点は、ロボット１の把持装置１１のツール先端点ＲＰが通過する位置を表している。点Ｐ１０は、ロボット１の把持装置１１が目標対象物３１を把持するときのツール先端点ＲＰの位置（把持位置）を表している。
【００８８】
目標対象物３１に近接して配置される対象物が存在しない場合、ロボット１は、把持装置１１で目標対象物３１を把持した後、通過点Ｐ３１，Ｐ３２を通過して目標対象物３１を取出す。それに対し、対象物３２が目標対象物３１に近接して配置されている場合、プログラムされた取出経路に従って目標対象物３１を取出すと、目標対象物３１又はロボット１が対象物３２に接触して対象物３２の位置を変更してしまう虞がある。
【００８９】
そこで、対象物３２が目標対象物３１に近接して配置されている場合、ロボット１は、回避ベクトルＶによって補正された通過点Ｐ４１，Ｐ４２を通過する補正経路に従って目標対象物３１を取出す。なお、把持位置Ｐ１０は変更されていない。補正経路の第１の通過点Ｐ４１は、プログラムされた取出経路の第１の通過点Ｐ３１を始点とする回避ベクトルＶの終点に等しい。同様に、補正経路の第２の通過点Ｐ４２は、プログラムされた取出経路の第２の通過点Ｐ３２を始点とする回避ベクトルＶの終点に等しい。
【００９０】
図１７は、別の実施形態に従って作成される補正経路を示している。目標対象物３１を取出す際に、周囲の対象物３２と接触する可能性が最も高いのは、最初の通過点に向かって移動するときである。したがって、本実施形態によれば、回避ベクトルＶに従って最初の通過点である取出経路の第１の通過点Ｐ３１をＰ４１に変更するものの、第２の通過点Ｐ３２以降は変更しない。それにより、本実施形態によれば、図７に示されるように、補正経路の第２の通過点Ｐ４２は、プログラムされた取出経路Ｐ３２と一致するようになる。
【００９１】
図１８は、また別の実施形態に従って作成される補正経路を示している。本実施形態においては、把持位置Ｐ１０及び目標点Ｐ１１のみがプログラムによって指定される。すなわち、図１６及び図１７を参照して説明した実施形態とは異なり、第１の通過点Ｐ３１，Ｐ３２は、プログラムによって指定されていない。そのような場合、把持位置Ｐ１０を始点とする回避ベクトルＶの終点によって指定される位置に通過点Ｐ４１を追加するように取出経路を補正してもよい。さらに、図１８に示されるように、第２の通過点Ｐ４２を追加するように取出経路を補正してもよい。
【００９２】
図１９は、さらに別の実施形態に従って補正された取出経路を示している。本実施形態は、図１８の実施形態と同様に、把持位置Ｐ１０及び目標点Ｐ１１のみがプログラムによって指定されている。また、取出経路補正部２４によって補正経路の通過点Ｐ４１，Ｐ４２が追加される。しかしながら、本実施形態において、補正によって追加される第１の通過点Ｐ４１は、把持位置Ｐ１０から回避ベクトルＶに上向きのベクトルＶ’’を加算して得られるベクトルＶ’に従って計算される。
【００９３】
上向きのベクトルＶ’’を加算したベクトルＶ’に従って、補正経路の第１の通過点Ｐ４１を指定すれば、目標対象物３１を床面から持ち上げられるように目標対象物３１が移動するので、目標対象物３１を床面に擦らせることなく取出せる。
【００９４】
図２０は、図１を参照して説明された実施形態とは異なる実施形態に係るロボットシステム１０の全体構成図である。本実施形態に係るロボットシステム１０は、概ね平坦な載置面を有するコンベア５１によって搬送される対象物３を、ロボット１の把持装置１１によって１つずつ順次取出すように構成されている。本実施形態に係るロボットシステム１０は、ビジュアルトラッキング技術を利用して、コンベア５１によって搬送される対象物３の動きに追従して対象物３の取出工程を実行できるように構成される。搬送方向におけるロボット１の上流側には、検出領域５２の範囲内に含まれる対象物３を撮像する視覚センサ４が設置されている。視覚センサ４によって取得される画像データは、画像処理装置４２に入力され、対象物３の位置などの情報が計算される。
【００９５】
コンベア５１には、エンコーダ５４が取付けられており、エンコーダ５４の検出情報に基づいて、コンベア５１の移動量、すなわち対象物３の移動量が計算されるようになっている。ロボット制御装置２は、視覚センサ４の検出情報から求められる対象物３の位置情報、及びエンコーダ５４の検出情報から求められる対象物３の移動量に基づいて、コンベア５１と一緒に移動する対象物３の位置を追跡できるようになっている。ロボット１は、対象物３が作業領域５３に到達したことを検出したときに、対象物３を順次取出すように構成されている。このようなビジュアルトラッキングは周知の技術であるので、本明細書では詳細な説明を省略する。例えば、特許文献５に記載された技術を利用してもよい。
【００９６】
ロボット１の上流に視覚センサ４が設けられたロボットシステム１０において、対象物３が視覚センサ４の検出領域５２の外部に移動した後は、対象物３の位置情報を視覚センサ４で取得することはできない。したがって、或る対象物３を取出す際に、別の対象物３に接触して該対象物３の位置を変更してしまうと、視覚センサ４によって取得された位置情報がもはや正確ではなくなる。そのため、周囲の対象物３の位置を変更しないように対象物３を正確に取出すことがとりわけ重要である。
【００９７】
本実施形態において、コンベア５１は、図２０に矢印で示される方向（右側から左側）に一定の速度で移動する。対象物３は、コンベア５１上で不規則に配置されていてよいものの、対象物３同士が上下に重なり合うことはないものとする。また、対象物３に対してロボット１又は他の対象物３が接触しない限り、対象物３はコンベア５１に対してスライドすることなく一体的に移動するものとする。
【００９８】
本実施形態において、近接状態判定部２２及び回避ベクトル決定部２３は、前述した実施形態と同様の機能を有する。しかしながら、取出経路補正部２４及び取出動作実行部２５は、対象物３の位置が常時移動する点を考慮して設定を必要しておくのが好ましい。具体的には、特許文献５にも記載されているように、コンベア５１とともに移動するトラッキング座標系を設定し、対象物３の取出経路及び補正経路をトラッキング座標系において定義するのが便利である。
【００９９】
図２１は、トラッキング座標系Ｔ１において表現した取出経路の通過点Ｐ３１を示している。前述したように、トラッキング座標系Ｔ１は、コンベア５１の動作に追従して移動する動的な座標系である。コンベア５１の位置はエンコーダ５４によって検出され、ロボット制御装置２はエンコーダ５４の検出情報に基づいて、トラッキング座標系Ｔ１の位置を取得できるように構成されている。
【０１００】
図２１には、或る時点におけるトラッキング座標系Ｔ１及び取出経路の通過点Ｐ３１が、別の時点におけるトラッキング座標系Ｔ１における通過点Ｐ３１とともに示されている。このように、ロボット座標系Ｒ０又はツール座標系Ｔ０における通過点Ｐ３１の位置が常時変化する一方で、トラッキング座標系Ｔ１における通過点Ｐ３１は一定である。
【０１０１】
したがって、本実施形態において、固定された座標系、例えばロボット座標系Ｒ０の代わりに、コンベア５１とともに移動するトラッキング座標系Ｔ１を基準にしてロボット１に取出動作を実行させれば、前述した実施形態と同様の処理を容易に実行可能である。すなわち、動的なトラッキング座標系Ｔ１に対して、ロボット１が相対的に移動することによって、対象物３の取出工程が実行されるようになる。
【０１０２】
このように、ビジュアルトラッキングを利用した本発明に係るロボットシステムによれば、目標対象物の取出工程において、周囲の対象物の位置が不意に変化するのを防止できる。それにより、取出工程を安定して実行できるようになる。
【０１０３】
以上、本発明の種々の実施形態について説明したが、当業者であれば、他の実施形態によっても本発明の意図する作用効果を実現できることを認識するであろう。特に、本発明の範囲を逸脱することなく、前述した実施形態の構成要素を削除又は置換することができるし、或いは公知の手段をさらに付加することができる。また、本明細書において明示的又は暗示的に開示される複数の実施形態の特徴を任意に組合せることによっても本発明を実施できることは当業者に自明である。
【符号の説明】
【０１０４】
１    ロボット
１１    把持装置
１２    アーム
１３    モータ
１４    爪
２    ロボット制御装置
２１    目標対象物選択部
２２    近接状態判定部
２３    回避ベクトル決定部
２４    取出経路補正部
２５    取出動作実行部
３    対象物
３１    目標対象物
３２，３２１，３２２，３２３    （目標対象物以外の）対象物
３３ａ〜３３ｈ    近接状態判定領域
４    視覚センサ
４２    画像処理装置
５    台座（平面）
５１    コンベア
Ｒ０    ロボット座標系
Ｔ０    ツール座標系
Ｔ１    トラッキング座標系
【図１】
0006489894.tif 000002
【図２Ａ】
0006489894.tif 000003
【図２Ｂ】
0006489894.tif 000004
【図３】
0006489894.tif 000005
【図４】
0006489894.tif 000006
【図５】
0006489894.tif 000007
【図６】
0006489894.tif 000008
【図７】
0006489894.tif 000009
【図８】
0006489894.tif 000010
【図９】
0006489894.tif 000011
【図１０】
0006489894.tif 000012
【図１１】
0006489894.tif 000013
【図１２】
0006489894.tif 000014
【図１３】
0006489894.tif 000015
【図１４】
0006489894.tif 000016
【図１５】
0006489894.tif 000017
【図１６】
0006489894.tif 000018
【図１７】
0006489894.tif 000019
【図１８】
0006489894.tif 000020
【図１９】
0006489894.tif 000021
【図２０】
0006489894.tif 000022
【図２１】
0006489894.tif 000023