(57)【特許請求の範囲】
【請求項１】
ワークを搬送する搬送手段と、
前記搬送されるワークの移動量を検出するエンコーダと、
前記搬送されているワークを、前回の撮像領域と部分的に重複するトラッキング領域ごとに撮像する、視覚センサと、
前記撮像データからトラッキング範囲内のワークを抽出し、当該抽出したワークの位置、および、前記エンタコーダが検出したワークの移動量を含むワークデータを生成し、トラッキング範囲内の前記抽出したワークの個数、ワークの移動量、および、前記ワークデータを含むトラッキングデータを生成する、画像処理部と、
前記視覚センサの搬送方向の前方に配置され、固定部と、ワークを保持する保持部と、前記固定部に装着され前記保持部を移動させるアーム部を有する、単一のロボットと、
制御手段と、
を有し、
前記制御手段は、
前記ロボットの近傍のワーク検出領域における複数のワーク間の相対的な距離を求め、その距離が所定値より短い場合、重複していると判断して他方のワークを除去して前記ロボットによる保持処理の対象から除外し、
前記ワーク検出領域内の他のワークについて、前記ロボットを制御して保持動作を行わせる、
ハンドリング装置。
【請求項２】
ワークを搬送する搬送手段と、前記搬送されるワークの移動量を検出するエンコーダと、前記搬送されているワークを、前回の撮像領域と部分的に重複するトラッキング領域ごとに撮像する、視覚センサと、前記視覚センサの搬送方向の前方に配置され、固定部と、ワークを保持する保持部と、前記固定部に装着され前記保持部を移動させるアーム部を有する、単一のロボットとを有するハンドリング装置におけるワークハンドリング方法であって、
前記撮像データからトラッキング範囲内のワークを抽出し、当該抽出したワークの位置、および、前記エンタコーダが検出したワークの移動量を含むワークデータを生成し、トラッキング範囲内の前記抽出したワークの個数、ワークの移動量、および、前記ワークデータを含むトラッキングデータを生成し、
前記ロボットの近傍のワーク検出領域における複数のワーク間の相対的な距離を求め、その距離が所定値より短い場合、重複していると判断して他方のワークを除去して前記ロボットによる保持処理の対象から除外し、
前記ワーク検出領域内の他のワークについて、前記ロボットを制御して保持動作を行わせる、
ワークハンドリング方法。
【請求項３】
ワークを搬送する搬送手段と、前記搬送されるワークの移動量を検出するエンコーダと、前記搬送されているワークを、前回の撮像領域と部分的に重複するトラッキング領域ごとに撮像する、視覚センサと、前記視覚センサの搬送方向の前方に配置され、固定部と、ワークを保持する保持部と、前記固定部に装着され前記保持部を移動させるアーム部を有する、単一のロボットとを有するハンドリング装置に用いる信号処理装置であって、
前記撮像データからトラッキング範囲内のワークを抽出し、当該抽出したワークの位置、および、前記エンタコーダが検出したワークの移動量を含むワークデータを生成し、トラッキング範囲内の前記抽出したワークの個数、ワークの移動量、および、前記ワークデータを含むトラッキングデータを生成し、
前記ロボットの近傍のワーク検出領域における複数のワーク間の相対的な距離を求め、その距離が所定値より短い場合、重複していると判断して他方のワークを除去して前記ロボットによる保持処理の対象から除外し、
前記ワーク検出領域内の他のワークについて、前記ロボットを制御して保持動作を行わせる、
信号処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
ベルトコンベアにより搬送される物品の重複処理を抑制するハンドリング装置、制御装置及び制御方法に関する。
【背景技術】
【０００２】
視覚センサをベルトコンベアの上流に配置して、当該ベルトコンベアによって搬送されている物品（以下、ワークと記載する）を検出し、当該視覚センサが生成したワークデータを用いて、ロボットがワークに行う動作を制御するハンドリング装置が知られている。
例えば、特許文献１に示された装置は、視覚センサがベルトコンベアによって搬送されている各ワークを撮像し、各々のワークに対応させたワークデータを作成してロボットコントローラへ送信する。
ロボットコントローラは、受信したワークデータのデータベースを作成し、ロボットの作業位置へ搬送されたワークに対し、前述のデータベースを用いた制御を行ってロボットに作業を行わせている。
【０００３】
【特許文献１】特開２００７−１５０５５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１では、視覚センサから送信されたデータを順次記憶してデータベースを構築し、データベースに格納されている内容に順応してロボットの動作制御を行っている。
視覚センサが連続して複数回の撮像を行ったとき、撮像した各画像に同一ワークが重複して写っている部分が含まれている。この重複部分のワークデータも、データベースに格納されていることからロボットに無駄な動作が生じる可能性がある。
【０００５】
本発明の目的は、重複して検出された部分を識別して、搬送されているワークに対して効率よく動作するハンドリング装置、制御装置及び制御方法を得ることにある。
【課題を解決するための手段】
【０００６】
本発明によれば、ワークを搬送する搬送手段と、前記搬送されるワークの移動量を検出するエンコーダと、前記搬送されているワークを、前回の撮像領域と部分的に重複するトラッキング領域ごとに撮像する、視覚センサと、前記撮像データからトラッキング範囲内のワークを抽出し、当該抽出したワークの位置、および、前記エンタコーダが検出したワークの移動量を含むワークデータを生成し、トラッキング範囲内の前記抽出したワークの個数、ワークの移動量、および、前記ワークデータを含むトラッキングデータを生成する、画像処理部と、前記視覚センサの搬送方向の前方に配置され、固定部と、ワークを保持する保持部と、前記固定部に装着され前記保持部を移動させるアーム部を有する、単一のロボットと、制御手段と、を有し、
前記制御手段は、
前記ロボットの近傍のワーク検出領域における複数のワーク間の相対的な距離を求め、その距離が所定値より短い場合、重複していると判断して他方のワークを除去して前記ロボットによる保持処理の対象から除外し、
前記ワーク検出領域内の他のワークについて、前記ロボットを制御して保持動作を行わせる、
ハンドリング装置が提供される。
【０００７】
また本発明によれば、ワークを搬送する搬送手段と、前記搬送されるワークの移動量を検出するエンコーダと、前記搬送されているワークを、前回の撮像領域と部分的に重複するトラッキング領域ごとに撮像する、視覚センサと、前記視覚センサの搬送方向の前方に配置され、固定部と、ワークを保持する保持部と、前記固定部に装着され前記保持部を移動させるアーム部を有する、単一のロボットとを有するハンドリング装置におけるワークハンドリング方法であって、
前記撮像データからトラッキング範囲内のワークを抽出し、当該抽出したワークの位置、および、前記エンタコーダが検出したワークの移動量を含むワークデータを生成し、トラッキング範囲内の前記抽出したワークの個数、ワークの移動量、および、前記ワークデータを含むトラッキングデータを生成し、
前記ロボットの近傍のワーク検出領域における複数のワーク間の相対的な距離を求め、その距離が所定値より短い場合、重複していると判断して他方のワークを除去して前記ロボットによる保持処理の対象から除外し、
前記ワーク検出領域内の他のワークについて、前記ロボットを制御して保持動作を行わせる、
ワークハンドリング方法が提供される。
【０００８】
また本発明によれば、ワークを搬送する搬送手段と、前記搬送されるワークの移動量を検出するエンコーダと、前記搬送されているワークを、前回の撮像領域と部分的に重複するトラッキング領域ごとに撮像する、視覚センサと、前記視覚センサの搬送方向の前方に配置され、固定部と、ワークを保持する保持部と、前記固定部に装着され前記保持部を移動させるアーム部を有する、単一のロボットとを有するハンドリング装置に用いる信号処理装置であって、
前記撮像データからトラッキング範囲内のワークを抽出し、当該抽出したワークの位置、および、前記エンタコーダが検出したワークの移動量を含むワークデータを生成し、トラッキング範囲内の前記抽出したワークの個数、ワークの移動量、および、前記ワークデータを含むトラッキングデータを生成し、
前記ロボットの近傍のワーク検出領域における複数のワーク間の相対的な距離を求め、その距離が所定値より短い場合、重複していると判断して他方のワークを除去して前記ロボットによる保持処理の対象から除外し、
前記ワーク検出領域内の他のワークについて、前記ロボットを制御して保持動作を行わせる、
信号処理装置が提供される。
【発明の効果】
【００１１】
本発明によれば、ロボットの無駄な動作を抑制することができる。
【発明を実施するための最良の形態】
【００１２】
以下、この発明の実施の一形態を説明する。
第１の実施形態
図１は、本発明の第１の実施形態によるハンドリング装置の概略構成を示す説明図である。図示したハンドリング装置１は、ベルトコンベア２、視覚センサ３、ロボット４、ロボットコントローラ５、および、コンベアエンコーダ６によって構成されている。
【００１３】
ベルトコンベア２は、例えば仕掛り物品などのワーク１０を図中矢印で示したコンベアベクトルＡの方向に搬送する搬送手段である。
視覚センサ３は、ベルトコンベア２の搬送上流側の位置において、当該ベルトコンベア２のベルト搬送面２ａに搭載された複数のワーク１０を撮像するように配設されている。
また、視覚センサ３は、出力データであるワークデータ、および、撮像タイミングを示すトリガ信号を、後述するロボットコントローラ５へ出力するように、例えばイーサネット（登録商標）などのＬＡＮを介して接続されている。
【００１４】
ロボット４は、ベルトコンベア２によって搬送されているワーク１０を、例えば１個ずつ掴む保持部４ａ、および、保持部４ａを所定の範囲内で移動可能に支持するアーム部４ｂを備えている。
【００１５】
ロボットコントローラ５は、ロボット４の動作を制御するように接続された制御手段である。
また、ロボットコントローラ５は、後述するコンベアエンコーダ６の出力信号、および、視覚センサ３から送信されたワークデータならびにトリガ信号を前述の通信線等を介して入力するように接続されている。
【００１６】
コンベアエンコーダ６は、ベルトコンベア２の搬送距離を検出する、即ちベルト搬送面２ａに載置されているワーク１０の移動量を検出する移動量検出手段である。
【００１７】
なお、図１にはロボット４を１台、および、当該ロボット４を制御するロボットコントローラ５を１台備えた構成を例示しているが、複数のロボット４およびロボットコントローラ５を有するように構成してもよい。
詳しくは、視覚センサ３から通信線へ送信されたワークデータ及びトリガ信号を受信する、例えばルータを備える。このルータに複数のロボットコントローラ５を接続する。
このように構成して、各ロボットコントローラ５が、自らの処理動作に用いるワークデータならびにトリガ信号を、上記のルータから入力して各々ロボット４を制御することも可能である。
【００１８】
図２は、図１のハンドリング装置１を成す視覚センサ、ロボット、および、ロボットコントローラの構成を示すブロック図である。
視覚センサ３は、カメラ１１および画像処理部１２を備えている。カメラ１１は、例えばＣＣＤカメラ等からなる。
カメラ１１は、ワーク１０が載置されているベルト搬送面２ａを撮像するように配設され、例えば図１に示したトラッキング範囲Ｓが１回の撮像範囲となるように設けられている。
【００１９】
画像処理部１２は、カメラ１１から出力された画像データを処理して、後述するワークデータを生成するように構成されている。
また、視覚センサ３は、カメラ１１の撮像タイミングを示すトリガ信号、および前述のワークデータを通信線へ送信する、図示を省略した通信部等を備えている。
【００２０】
ロボットコントローラ５は、入力部１３、表示部１４、演算部１５、記憶部１６、および、駆動制御部１７を備えている。
入力部１３は、ユーザに設定操作等を行わせるように構成され、当該設定内容を演算部１５へ入力するように接続されている。表示部１４は、前述の操作／設定内容、またロボット４の動作状況等を表示するように、演算部１５へ接続されている。
【００２１】
演算部１５は、データ管理部１５ａ、トラッキングマネージャ１５ｂ、および、ワークマネージャ１５ｃを備えている。
データ管理部１５ａは、記憶部１６に各データを記憶させる動作処理や、記憶部１６からデータを読み出す動作を行うように構成されている。
【００２２】
トラッキングマネージャ１５ｂは、各トラッキングデータＤ１が示す位置、換言するとトラッキング範囲Ｓを監視するように構成されている。
ワークマネージャ１５ｃは、トラッキング範囲Ｓに存在する複数のワーク１０の中からロボット４に作業を行わせるワーク１０を選択するように構成されている。
【００２３】
記憶部１６は、演算部１５の制御によってトラッキングデータＤ１を記憶し、複数のトラッキングデータＤ１を記憶することによってデータベースが構築されている。
トラッキングデータＤ１は、視覚センサ３が１回の撮像で得た画像データから抽出されたワーク１０の個数、各ワーク１０のワークデータ、および、コンベアエンコーダ６の出力信号が示す移動量によって構成されている。
【００２４】
駆動制御部１７は、後述するロボット４の各部を駆動させる制御信号を生成し、当該ロボット４を稼働させるように接続構成されている。
ロボット４は、保持部４ａを駆動する保持用モータ１８、保持部４ａを支えているアーム部４ｂを駆動するアーム用モータ１９を備えている。
【００２５】
図３は、図１のハンドリング装置１の動作を示すフローチャートである。
視覚センサ３は、ベルトコンベア２の搬送上流側において、ベルト搬送面２ａの上流端、もしくはその近傍の撮像原点２０ａから一定の撮像範囲の画像、例えばトラッキング範囲Ｓの画像を撮像する。
詳しくは、図２のカメラ１１が、自らの撮像タイミングでベルト搬送面２ａのトラッキング範囲Ｓを撮像する（ステップＳ１）。
【００２６】
画像処理部１２は、トラッキング範囲Ｓの画像に含まれているワーク１０の形状を抽出し、この形状を画像処理部１２が自ら記憶している品種毎の形状データ等と比較して、当該ワーク１０の品種を特定する。
【００２７】
また、画像処理部１２は、トラッキング範囲Ｓの画像の中からワーク１０の任意の部分の座標値を検出し、当該ワーク１０のワークデータを生成する（ステップＳ２）。
この座標値は、カメラ１１もしくは視覚センサ３が自ら行う各処理において使用される座標系において表現された値である。なお、視覚センサ３は、ワークデータにワークの姿勢を示す座標値を含めて生成してもよい。
【００２８】
視覚センサ３は、前述のように、生成したワークデータを順次ロボットコントローラ５へ送信する（ステップＳ３）。
このとき、視覚センサ３は、１つのトリガ信号に対応させて、１つの画像に含まれていた全てのワーク１０のワークデータ、ならびにワークデータの個数を示すデータを送信する。
【００２９】
図４は、図１のハンドリング装置１の動作を示す説明図である。この図は、ロボットコントローラ５のデータ管理部１５ａが、視覚センサ３から送られた各ワークデータを記憶部１６に格納する動作を表している。
【００３０】
データ管理部１５ａは、前述の通信部等が視覚センサ３からトリガ信号毎に送信された複数のワークデータを受信すると、これらのワークデータを一つにまとめてトラッキングデータＤ１を生成する。
また、データ管理部１５ａは、図３のステップＳ４の工程において、コンベアエンコーダ６から入力したベルトコンベア２の移動量を示すデータを加味して、上記のトラッキングデータＤ１を生成し、これを記憶部１６へ格納してデータベースを構築する。
【００３１】
図４には、視覚センサ３が［ｉ−１］番目に撮像した画像から生成されたトラッキングデータＤ１を、トラッキングデータＴｒｋ［ｉ−１］として示している。
また図４には、視覚センサ３が［ｉ］番目に撮像した画像から生成されたトラッキングデータＤ１を、トラッキングデータＴｒｋ［ｉ］として示している。
また図４には、視覚センサ３が［ｉ＋１］番目に撮像した画像から生成されたトラッキングデータＤ１を、トラッキングデータＴｒｋ［ｉ＋１］として示している。
【００３２】
図４に示したトラッキングデータＴｒｋ［ｉ］は、視覚センサ３が［ｉ］番目に撮像したトラッキング範囲Ｓから、例えば１０個のワーク１０を検出したときのものを表しており、ワークデータＷｒｋ［０］〜Ｗｒｋ［９］によって構成されている。
【００３３】
データ管理部１５ａは、例えば、上記のトラッキングデータＴｒｋ［ｉ］を生成するとき、視覚センサ３から［ｉ］番目に送られたトリガ信号が受信されると、このトリガ信号に対応させたトラッキングデータＴｒｋ［ｉ］を格納する領域を記憶部１６に確保する。
【００３４】
また、データ管理部１５ａは、ここでコンベアエンコーダ６から入力した信号、即ちベルトコンベア２の移動量を示すデータを、前述のトラッキングデータＴｒｋ［ｉ］の構成要素として記憶部１６に格納する。
またさらに、データ管理部１５ａは、順次、視覚センサ３から送られてくるワークデータＷｒｋ［０］〜［９］を、前述の記憶部１６に確保したトラッキングデータＴｒｋ［ｉ］の領域に記憶／格納する。
【００３５】
なお、図４では分かり易くするため、［ｉ］番目のトラッキング範囲Ｓに二つのワーク１０を図示し、当該［ｉ］番目のトラッキング範囲に載置されている全てのワーク１０の図示を省略している。
また、視覚センサ３が撮像した順番を示す上記の［ｉ−１］、［ｉ］、［ｉ＋１］等は、トラッキング番号として各トラッキングデータＤ１に付加される整数値である。
【００３６】
視覚センサ３が順次ロボットコントローラ５へ送信しているワークデータは、例えば図４に示したワークデータＷｒｋ［０］〜［９］のように構成されている。
ワークデータＷｒｋ［０］〜［９］は、視覚センサ３が自らの動作処理において使用している座標系のＸ座標データ、Ｙ座標データ、及びＸ−Ｙ平面上における回転を表すＣ座標データを有する。
【００３７】
また、ワークデータＷｒｋ［０］〜［９］は、複数の付加データ、例えば付加データ（１）〜（３）を加えて構成されている。
付加データ（１）〜（３）は、様々な動作処理に関連する条件等を表し、例えば、前述のように視覚センサ３が判別した品種などを示すデータである。この付加データ（１）〜（３）は、ユーザの所望により視覚センサ３に設定される。
【００３８】
視覚センサ３の画像処理部１２は、前述のようにカメラ１１が撮像した画像毎に処理を行っている。
カメラ１１が、ベルトコンベア２の搬送面２ａを順次撮像するとき、例えば、各画像に重複する部分が生じないように、各画像の端部を揃えて撮像すると、１つの画像の端部に写り込んだワーク１０は、全体形状が画像中に収まっていない場合がある。
【００３９】
このようなとき、画像処理部１２は、１つの画像に全体形状が写っていないワーク１０を正確に認識することができず、ワークデータを生成することができない、あるいは、異常なデータを生成する可能性がある。
そのため、視覚センサ３は、ベルトコンベア２の搬送面２ａを撮像するとき、各画像の端部が重複するように撮像して、ワーク１０が部分的に欠落して写り込むことを抑制し、各ワーク１０に対応するワークデータを確実に生成するようにしている。
【００４０】
図５は、図１のハンドリング装置１の動作を示す説明図である。図５のトラッキングデータＤ１は、図４に示した各トラッキングデータＤ１と同様に、撮像順番を示すトラック番号を付けて図示している。
【００４１】
ロボットコントローラ５が、視覚センサ３から受信した各ワークデータをトラッキングデータＤ１としてデータベースに格納したとき、実際には、図５に示したように、各トラッキングデータＤ１に重複する部分が存在する。
即ち、前述のステップＳ４の工程において、ロボットコントローラ５のデータ管理部１５ａは、前述の重複する部分を含んだ各トラッキングデータＤ１を記憶部１６に格納している。
【００４２】
ベルトコンベア２の搬送上流側において視覚センサ３に撮像された各ワーク１０は、所定の時間を要してロボット４の配設されている位置へ搬送される。
ロボットコントローラ５は、記憶部１６に蓄積されているデータベースを用いてロボット４の動作を制御し、当該ロボット４の位置に搬送されたワーク１０にハンドリング作業を行う。
ロボット４のハンドリング作業は、図１に示したワーク検出エリア開始点２０ｂとワーク検出エリア終了点２０ｃとの間に設けられたワーク検出エリアにおいて行われる。
【００４３】
ロボットコントローラ５のトラッキングマネージャ１５ｂは、各トラッキングデータＤ１に含まれている移動量を示すデータを監視し、搬送中の各ワーク１０の位置を検知する。
具体的には、トラッキングマネージャ１５ｂは、データベースに格納されている各トラッキングデータＤ１の移動量を示すデータを抽出する。
【００４４】
またさらに、トラッキングマネージャ１５ｂは、上記の抽出した移動量を示すデータを用いて、ワーク検出エリア内を移動中のトラッキング範囲Ｓが、どのトラッキングデータＤ１に対応しているかを認識する。
トラッキングマネージャ１５ｂは、上記の認識したトラッキングデータＤ１を、データ管理部１５ａを用いて記憶部１６から読み出す。
【００４５】
トラッキングマネージャ１５ｂが順次読み出したトラッキングデータＤ１には、前述のように重複したワークデータが含まれている。
ロボットコントローラ５の演算部１５は、図３のステップＳ５の工程において、適宜、トラッキングマネージャ１５ｂが順次データベースから読み出した各トラッキングデータＤ１から、重複部分を検出する処理動作を行う。
【００４６】
図６は、図２の演算部１５が処理するトラッキングデータの重複部分を示す説明図である。
図６において、演算部１５が、記憶部１６から順次読み出したトラッキングデータＤ１を、例えば、トラッキングデータＴｒｋ［ｉ−１］、また、これに続くトラッキングデータＴｒｋ［ｉ］とする。
【００４７】
また、図６のトラッキングデータＴｒｋ［ｉ−１］とトラッキングデータＴｒｋ［ｉ］の隣接する部分には、重複部分ｄ０が存在する。
重複部分ｄ０には、２つのワークデータが存在し、これらのワークデータはワーク１０ａ、および、ワーク１０ｂに各々対応している。
【００４８】
図６に例示したトラッキングデータＤ１では、トラッキングデータＴｒｋ［ｉ−１］にワーク１０ａ，１０ｂ，１０ｃの各ワークデータが含まれ、また、トラッキングデータＴｒｋ［ｉ］にワーク１０ａ，１０ｂ，１０ｄの各ワークデータが含まれている。
このとき、演算部１５は、トラッキングデータＴｒｋ［ｉ］と、トラッキングデータＴｒｋ［ｉ−１］の重複部分ｄ０に存在するワーク１０ａ，１０ｂを検出する処理を行う。
【００４９】
図３のステップＳ５の工程において、演算部１５は、前述のようにデータベースからトラッキングデータＴｒｋ［ｉ］、および、トラッキングデータＴｒｋ［ｉ−１］を順次読み出す。
また、演算部１５は、これらのトラッキングデータＤ１に含まれているワークデータの各座標値を使用して、各ワーク間の相対的な距離を求める。
具体的には、例えば、トラッキングデータＴｒｋ［ｉ］のワーク１０ａと、トラッキングデータＴｒｋ［ｉ−１］の各ワーク１０ａ，１０ｂ，１０ｃとの間の距離を求める。
【００５０】
図７は、図２の演算部１５の動作を示すフローチャートである。
演算部１５は、前述のようにデータベースから読み出したトラッキングデータＴｒｋ［ｉ］の中から、任意のワークデータを１つ、例えば図６において左下側のワーク１０ａのワークデータを選択する（ステップＳ１１）。
次に、データベースから先に読み出されているトラッキングデータＴｒｋ［ｉ−１］の中から、任意のワークデータを１つ、例えば図６において右下側のワーク１０ａを選択する（ステップＳ１２）。
【００５１】
演算部１５は、ステップＳ１１の工程で選択したワークデータと、ステップＳ１２の工程で選択したワークデータを用いて、これらのワークデータが示すワーク間の距離を演算によって求める（ステップＳ１３）。
例えば、ステップＳ１１の工程で選択したワークデータの座標値を（ｘ２，ｙ２）とし、ステップＳ１２の工程で選択したワークデータの座標値を（ｘ１，ｙ１）とする。
これらのワークデータに対応する各ワークの間の距離Δは、次の（１）式によって求めることができる。
Δ＝（（ｘ２−ｘ１）２＋（ｙ２−ｙ１）２）１／２  …（１）
【００５２】
演算部１５は、（１）式の演算によって求めた距離Δを、予め設定されている重複判定規定値Δｍａｘと比較し、距離Δが重複判定規定値Δｍａｘ以下であるか否かを判定する（ステップＳ１４）。
演算部１５は、ステップＳ１４の工程において、距離Δが重複判定規定値Δｍａｘ以下であると判定したときには、ワークマネージャ１５ｃによるワークへの作業をキャンセルする（ステップＳ１５）。
【００５３】
なお、ここで取り扱う座標値（ｘ２，ｙ２）、座標値（ｘ１，ｙ１）は、例えば、ベルトコンベア２の近傍に設けられた絶対原点を用いて表された値であり、コンベアエンコーダ６から入力している移動量を加味して、演算部１５が生成した座標値である。
演算部１５が扱う座標値は、例えば、ロボット４の制御に用いるワールド座標系などの値で、前述のように求めた各ワーク間の距離Δは、相対値である。
演算部１５は、相対値を用いることにより、視覚センサ３が、いかなる座標系を用いてワークデータを生成していても、各々のワーク間の距離Δを適切に比較することが可能になる。
【００５４】
前述のステップＳ１４の工程において、演算部１５は、距離Δが重複判定規定値Δｍａｘ以下であるという比較結果を得たときには、次のように判定する。
トラッキングデータＴｒｋ［ｉ］に含まれている座標値（ｘ２，ｙ２）を有するワーク１０ａと、トラッキングデータＴｒｋ［ｉ−１］に含まれている座標値（ｘ１，ｙ１）を有するワーク１０ａは同一である、と判定する。
【００５５】
演算部１５は、このように判定したとき、座標値が（ｘ２，ｙ２）のワークデータに対応するワーク１０ａ、即ちトラッキングデータＴｒｋ［ｉ］のワーク１０ａに対応するワークデータの処理をキャンセルする。
換言すると、演算部１５は、ワークマネージャ１５ｃが、トラッキングデータＴｒｋ［ｉ］のワーク１０ａに対応する処理を行わないように、当該ワークマネージャ１５ｃを制御する。
【００５６】
演算部１５は、ステップＳ１４の工程において、距離Δが重複判定規定値Δｍａｘよりも大きいと判定したときには、当該トラッキングデータＴｒｋ［ｉ］のワーク１０ａへの作業を行うように、ワークマネージャ１５ｃを動作させる（ステップＳ１６）。
【００５７】
演算部１５は、ステップＳ１５の工程、あるいはステップＳ１６の工程を処理した後、次のような処理を行う。
例えば、トラッキングデータＴｒｋ［ｉ］のワーク１０ａに対して、トラッキングデータＴｒｋ［ｉ−１］に含まれている、全てのワーク１０ａ〜１０ｃのワークデータを前述の演算に用いたか否かを判定する（ステップＳ１７）。
【００５８】
演算部１５は、ステップＳ１７の工程において、全てのワークデータを演算に用いていないと判定したときには、次のような処理動作を行う。
トラッキングデータＴｒｋ［ｉ−１］の中の、次のワークデータを選択し（ステップＳ１８）、ステップＳ１３の工程に戻り、以降の各工程を前述の説明と同様に行う。
【００５９】
演算部１５は、ステップＳ１７の工程において、全てのワークデータを演算に用いたと判定したときには、トラッキングデータＴｒｋ［ｉ］のワークデータを全て前述の演算に用いたか否かを判定する（ステップＳ１９）。
演算部１５は、ステップＳ１９の工程において、全てのワークデータを演算に用いていないと判定したときには、次のような処理動作を行う。
トラッキングデータＴｒｋ［ｉ］の中の、次のワークデータを選択し（ステップＳ２０）、ステップＳ１２の工程に戻り、以降の各工程を前述の説明と同様に行う。
【００６０】
演算部１５は、ステップＳ１９の工程において、全てのワークデータを演算に使用したと判定したときには、当該トラッキングデータ［ｉ−１］と、トラッキングデータ［ｉ］に重複しているワークデータを検出する処理動作を終了する。
【００６１】
演算部１５は、ここまで説明した重複しているワークデータの検出動作を、順次データベースから読み出した各トラッキングデータについて行う。
演算部１５は、図３のステップＳ６の工程において、重複していることを検出したワークデータを除いてワークマネージャ１５ｃに処理を行わせ、ロボット４に作業を行わせる。
【００６２】
このように、演算部１５が重複しているワークデータを除くことにより、ロボット４は作業を行ったワーク１０に対して、再び作業を行うことがなくなり、ロボット４の無駄な動作が省略される。
【００６３】
以上の第１の実施形態のハンドリング装置１によれば、ロボットコントローラ５の演算部１５が、データベースから読み出した各トラッキングデータに重複して含まれているワークデータを除くようにしたので、ロボット４の無駄な動作を抑えることができる。
また、視覚センサ３がワークデータを生成するときに用いている座標系によらず、重複しているワークデータを検出することができる。
【図面の簡単な説明】
【００６４】
【図１】本発明の第１の実施形態のハンドリング装置１の概略構成を示す説明図である。
【図２】図１のハンドリング装置１を成す視覚センサ、ロボット、および、ロボットコントローラの構成を示すブロック図である。
【図３】図１のハンドリング装置１の動作を示すフローチャートである。
【図４】図１のハンドリング装置１の動作を示す説明図である。
【図５】図１のハンドリング装置１の動作を示す説明図である。
【図６】図２の演算部１５が処理するトラッキングデータの重複部分を示す説明図である。
【図７】図２の演算部１５の動作を示すフローチャートである。
【符号の説明】
【００６５】
１…ハンドリング装置、２…ベルトコンベア、３…視覚センサ、４…ロボット、５…ロボットコントローラ、１０，１０ａ，１０ｂ，１０ｃ，１０ｄ…ワーク、１１…カメラ、１２…画像処理部、１３…入力部、１４…表示部、１５…演算部、１５ａ…データ管理部、１５ｂ…トラッキングマネージャ、１５ｃ…ワークマネージャ、１６…記憶部、１７…駆動制御部、１８…保持用モータ、１９…アーム用モータ。
【図１】
0005198155.tif 000002
【図２】
0005198155.tif 000003
【図３】
0005198155.tif 000004
【図４】
0005198155.tif 000005
【図５】
0005198155.tif 000006
【図６】
0005198155.tif 000007
【図７】
0005198155.tif 000008