(57)【特許請求の範囲】
【請求項１】
物品を運搬するコンベヤと、
物品を把持して移送するロボットと、
物品を撮像する撮像部と、
前記撮像部を制御するとともに前記撮像部が撮像した画像から物品を検出する画像処理部と、
前記画像処理部が検出した物品の情報を用いて前記ロボットを制御するロボット制御部とを具備し、
前記画像処理部は、
前記コンベヤの運搬動作により移動している複数の物品の撮像及び検出を、該複数の物品の全てが撮像及び検出される第１周期で実行して、該全ての物品の各々の初期位置情報を取得する物品検出部と、
前記コンベヤの運搬動作により移動している複数の物品の撮像及び検出を、前記第１周期よりも短い第２周期で実行して、該複数の物品の各々の、前記初期位置情報を基準とした移動位置情報を、該第２周期で反復して取得する物品追跡部とを備え、
前記ロボット制御部は、前記ロボットが前記コンベヤの運搬動作に追従しながら前記複数の物品の各々を把持して移送するように、前記移動位置情報を用いて前記ロボットを制御する、
物品移送装置。
【請求項２】
前記物品追跡部は、前記ロボットの作業領域の中を撮像した第１解像度の画像と、該第１解像度よりも低い第２解像度の画像であって、該作業領域の外を撮像した第２解像度の画像とを取得でき、
前記物品追跡部は、前記作業領域の中にある物品を、前記第１解像度の画像を用いて検出し、前記作業領域の外にある物品を、前記第２解像度の画像を用いて検出する、
請求項１に記載の物品移送装置。
【請求項３】
前記撮像部は、解像度を前記第１解像度と前記第２解像度とで切り替える切替機構を有する、請求項２に記載の物品移送装置。
【請求項４】
前記物品追跡部は、第１処理速度及び第１精度を達成する第１の検出アルゴリズムと、該第１処理速度よりも速い第２処理速度又は該第１精度よりも低い第２精度を達成する第２の検出アルゴリズムとから、いずれか一方の検出アルゴリズムを選択して使用でき、
前記物品追跡部は、前記ロボットの作業領域の中にある物品を、前記第１の検出アルゴリズムを用いて検出し、該作業領域の外にある物品を、前記第２の検出アルゴリズムを用いて検出する、
請求項１〜３のいずれか１項に記載の物品移送装置。
【請求項５】
前記物品追跡部は、前記ロボットが前記物品を把持した後、予め定めた時間が経過するまで、前記移動位置情報の反復取得を継続して実行する、請求項１〜４のいずれか１項に記載の物品移送装置。
【請求項６】
前記撮像部は１台のカメラを備え、
前記物品検出部と前記物品追跡部とは、前記カメラに物品を撮像させるとともに前記カメラが撮像した画像から物品を検出する、
請求項１〜５のいずれか１項に記載の物品移送装置。
【請求項７】
前記撮像部は、互いに独立して動作する第１カメラ及び第２カメラを備え、
前記物品検出部は、前記第１カメラに物品を撮像させるとともに前記第１カメラが撮像した画像から物品を検出し、
前記物品追跡部は、前記第２カメラに物品を撮像させるとともに前記第２カメラが撮像した画像から物品を検出する、
請求項１〜５のいずれか１項に記載の物品移送装置。
【請求項８】
前記撮像部は、前記第１カメラ及び前記第２カメラとは独立して動作する第３カメラをさらに備え、
前記画像処理部は、前記第３カメラを制御する補助追跡部であって、前記コンベヤの運搬動作により移動している複数の物品の撮像及び検出を、前記第１周期よりも短い第３周期で実行する補助追跡部をさらに備え、
前記補助追跡部は、前記複数の物品の各々の、前記移動位置情報を基準とした追加移動位置情報を、前記第３周期で反復して取得し、
前記ロボット制御部は、前記ロボットが前記コンベヤの運搬動作に追従しながら前記複数の物品の各々を把持して移送するように、前記追加移動位置情報を用いて前記ロボットを制御する、
請求項７に記載の物品移送装置。
【請求項９】
前記ロボットは、互いに独立して動作する第１機構部及び第２機構部を備え、
前記ロボット制御部は、前記第１機構部を制御する第１制御部及び前記第２機構部を制御する第２制御部であって、前記第１機構部と前記第２機構部とに、予め定めた作業割合に応じた個数の物品を把持させる第１制御部及び第２制御部を備える、
請求項１〜８のいずれか１項に記載の物品移送装置。
【請求項１０】
コンベヤにより運搬されている複数の物品をロボットが把持して移送する物品移送方法であって、
前記コンベヤの運搬動作により移動している複数の物品の撮像及び検出を、該複数の物品の全てが撮像及び検出される第１周期で実行して、該全ての物品の各々の初期位置情報を取得し、
前記コンベヤの運搬動作により移動している複数の物品の撮像及び検出を、前記第１周期よりも短い第２周期で実行して、該複数の物品の各々の、前記初期位置情報を基準とした移動位置情報を、該第２周期で反復して取得し、
前記ロボットが前記コンベヤの運搬動作に追従しながら前記複数の物品の各々を把持して移送するように、前記移動位置情報を用いて前記ロボットを制御する、
物品移送方法。
【請求項１１】
前記ロボットが前記物品を把持した後、予め定めた時間が経過するまで、前記移動位置情報の反復取得を継続して実行する、請求項１０に記載の物品移送方法。
【請求項１２】
前記コンベヤの運搬動作により移動している複数の物品の撮像及び検出を、前記第１周期よりも短い第３周期で実行して、前記複数の物品の各々の、前記移動位置情報を基準とした追加移動位置情報を、該第３周期で反復して取得し、
前記ロボットが前記コンベヤの運搬動作に追従しながら前記複数の物品の各々を把持して移送するように、前記追加移動位置情報を用いて前記ロボットを制御する、
請求項１０又は１１に記載の物品移送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットを用いて物品を移送する物品移送装置及び物品移送方法に関する。
【背景技術】
【０００２】
コンベヤにより運搬されている複数の物品を視覚センサで検出し、ロボットが、検出された物品の位置情報に基づき、コンベヤの運搬動作に追従しながら個々の物品を把持して他の場所に移送するシステムは知られている。
【０００３】
例えば特許文献１は、コンベヤで搬送されているワークを視覚センサで検出し、検出したワークの位置に基づきロボットがコンベヤに追従しながらワークを把持するビジュアルトラッキング方法を開示する。このビジュアルトラッキング方法では、ワーク搬送量を取得するためのパルスコーダがコンベヤに付設される。視覚センサは、パルスコーダの出力信号に基づき所定距離のワーク搬送が行われたことを認識した時点で搬送中のワークの画像を取得する。ロボットコントローラは、パルスコーダの出力信号に基づき所定距離のワーク搬送が行われたことを認識した時点でロボットのトラッキング動作を開始する。トラッキング動作中、ロボットコントローラは、視覚センサが取得した画像から得られるワークの位置を考慮して、ワークと共に移動するトラッキング座標系においてロボットを制御することにより、コンベヤで搬送中のワークをロボットに把持させる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平８−０６３２１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
視覚センサが検出した物品の位置情報に基づき、ロボットがコンベヤの運搬動作に追従しながら物品を把持して移送するシステムでは、コンベヤにエンコーダ（パルスコーダ）等の移動量センサを付設することなく、ロボットが物品の現在位置を正確に把握してコンベヤに追従しながら物品を把持できるようにすることが望まれている。またこのシステムでは、視覚センサの検出後にコンベヤ上で物品が位置ずれを生じた場合や、物品同士の重なり合い等に起因して視覚センサが検出できなかった物品が存在していた場合にも、そのような物品をロボットが追従しながら把持できることが望まれている。
【課題を解決するための手段】
【０００６】
本発明の一態様は、物品を運搬するコンベヤと、物品を把持して移送するロボットと、物品を撮像する撮像部と、撮像部を制御するとともに撮像部が撮像した画像から物品を検出する画像処理部と、画像処理部が検出した物品の情報を用いてロボットを制御するロボット制御部とを具備し、画像処理部は、コンベヤの運搬動作により移動している複数の物品の撮像及び検出を、複数の物品の全てが撮像及び検出される第１周期で実行して、全ての物品の各々の初期位置情報を取得する物品検出部と、コンベヤの運搬動作により移動している複数の物品の撮像及び検出を、第１周期よりも短い第２周期で実行して、複数の物品の各々の、初期位置情報を基準とした移動位置情報を、第２周期で反復して取得する物品追跡部とを備え、ロボット制御部は、ロボットがコンベヤの運搬動作に追従しながら複数の物品の各々を把持して移送するように、移動位置情報を用いてロボットを制御する、物品移送装置である。
【０００７】
本発明の他の態様は、コンベヤにより運搬されている複数の物品をロボットが把持して移送する物品移送方法であって、コンベヤの運搬動作により移動している複数の物品の撮像及び検出を、複数の物品の全てが撮像及び検出される第１周期で実行して、全ての物品の各々の初期位置情報を取得し、コンベヤの運搬動作により移動している複数の物品の撮像及び検出を、第１周期よりも短い第２周期で実行して、複数の物品の各々の、初期位置情報を基準とした移動位置情報を、第２周期で反復して取得し、ロボットがコンベヤの運搬動作に追従しながら複数の物品の各々を把持して移送するように、移動位置情報を用いてロボットを制御する、物品移送方法である。
【発明の効果】
【０００８】
一態様に係る物品移送装置によれば、画像処理部の物品検出部が、コンベヤによって運搬されている物品の初期位置情報を取得した後に、画像処理部の物品追跡部が、当該物品の移動位置情報を取得して、ロボット制御部が移動位置情報を用いてロボットを制御するようにしたから、コンベヤにエンコーダ等の移動量センサを付設することなく、ロボットが、コンベヤによって運搬されている物品の現在位置を把握してコンベヤに追従しながら物品Ｍを把持することができる。よって、エンコーダ等の移動量センサをコンベヤに付設することが困難な状況においても、ロボットがコンベヤの運搬動作に追従しながら個々の物品を把持して他の場所に移送するシステムを構築できる。しかも物品追跡部は、個々の物品の移動位置情報を第２周期で反復して取得するので、物品検出部が物品の初期位置情報を取得した後に当該物品がコンベヤ上で位置ずれを生じた場合にも、物品追跡部が当該物品を追跡して移動位置情報を更新でき、ロボットが、更新された移動位置情報により当該物品の位置ずれ後の現在位置を把握して当該物品を把持することができる。
【０００９】
他の態様に係る物品移送方法によれば、物品移送装置の上記した効果と同等の効果が奏される。
【図面の簡単な説明】
【００１０】
【図１】一実施形態による物品移送装置の構成を模式的に示す図である。
【図２】物品移送装置の変形例を模式的に示す図である。
【図３】物品移送装置の他の変形例を模式的に示す図である。
【図４】物品移送装置のさらに他の変形例を模式的に示す図である。
【図５】他の実施形態による物品移送装置の構成を模式的に示す図である。
【図６】整列パターンの一例を説明する図で、（ａ）整列パターンに従って整列された物品、（ｂ）整列フォームを示す。
【図７】ロボット制御部のハードウェア構成の一例を示すブロック図である。
【図８】画像処理部のハードウェア構成の一例を示すブロック図である。
【図９】ロボット制御部及び画像処理部のハードウェア構成の他の例を示すブロック図である。
【図１０】ロボット制御部及び画像処理部のハードウェア構成のさらに他の例を示すブロック図である。
【図１１】図５の実施形態におけるロボット制御部及び画像処理部の機能ブロック図である。
【図１２】物品の把持及び移送作業の一例を模式的に示す図である。
【図１３】物品の追跡処理の一例を説明する図である。
【図１４】物品の追跡処理の他の例を説明する図である。
【図１５】画像処理部の物品管理部の処理を示すフローチャートである。
【図１６】画像処理部の物品追跡部の処理を示すフローチャートである。
【図１７】物品追跡部の処理の細部を示すフローチャートである。
【図１８】物品追跡部の処理の細部を示すフローチャートである。
【図１９】物品追跡部の処理の細部を示すフローチャートである。
【図２０】第１制御部の情報管理部の処理を示すフローチャートである。
【図２１】情報管理部の処理の細部を示すフローチャートである。
【図２２】情報管理部の処理の細部を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して本発明の実施の形態を説明する。全図面に渡り、対応する構成要素には共通の参照符号を付す。
【００１２】
図１は、一実施形態による物品移送装置１０を示す。物品移送装置１０は、物品Ｍを運搬するコンベヤ１２と、物品Ｍを把持して移送するロボット１４と、物品Ｍを撮像する撮像部１６と、撮像部１６を制御するとともに撮像部１６が撮像した画像から物品Ｍを検出する画像処理部１８と、画像処理部１８が検出した物品Ｍの情報を用いてロボット１４を制御するロボット制御部２０とを備える。
【００１３】
コンベヤ１２は、複数の物品Ｍを支持して一方向（図で矢印Ｗ方向）へ運搬可能な公知の搬送部材と、搬送部材を連続的又は断続的に駆動する公知の駆動機構とを有する。コンベヤ１２で運搬される複数の物品Ｍは、様々な形状、寸法、外観（色）等を有するものが混在していてもよいし、全てが同一の形状、寸法、外観（色）等を有していてもよい。また物品Ｍは、果物や野菜類のような、コンベヤ１２による支持が不安定になり易い形状を有していてもよい。
【００１４】
複数の物品Ｍは、コンベヤ１２上に不規則配置で置かれた状態で運搬され、ロボット１４の所定の作業領域（物品Ｍの把持及び取上げを実行する領域）２２（一点鎖線で示す）に供給される。なお不規則配置とは、特定の形態に並べることが何ら意図されず無作為に置かれた配置であって、複数の物品Ｍを真上から見たときの二次元的広がり（例えば撮像部１６が取得する画像）の中で個々の物品Ｍが多様な位置や姿勢を呈する配置を意味する。この実施形態では、コンベヤ１２は、搬送部材又は駆動機構の位置や速度を検出可能なエンコーダ等の移動量センサを装備していない。
【００１５】
ロボット１４は、多関節型、ガントリ型、パラレルリンク型等の、公知の種々の機構部（すなわちマニピュレータ）から適宜選択した機構部（図示せず）と、吸着型、把握型等の、公知の種々のハンドから適宜選択したハンド（図示せず）とを備えることができる。ロボット１４は、コンベヤ１２の側方の所定位置に配置され、機構部及びハンドが、ロボット１４の作業領域２２にて、コンベヤ１２により運搬される物品Ｍを追従しながら把持して取り上げ、他の場所に移送するように動作する。この実施形態では、ロボット１４は１台の機構部を備える。
【００１６】
撮像部１６は、コンベヤ１２の運搬方向の一部分及び横断方向の全体に広がる予め定めた視野２４（破線で示す）を有する。ロボット１４の作業領域２２は、視野２４の中に位置する。撮像部１６は、視野２４内に存在する物品Ｍ及びコンベヤ１２を真上から撮像してそれらの二次元画像データを取得する。この実施形態では、撮像部１６は１台のカメラ（以下、カメラ１６とも称する）を備える。カメラ１６は、デジタルカメラであることができ、例えば解像度や撮像範囲を任意に設定することができる。この実施形態では、カメラ１６は、視野２４のコンベヤ運搬方向上流端の一部分２４ａを撮像するモードと、視野２４の全体を撮像するモードとを切り替えることができる。カメラ１６は、カメラケーブル２６を介して画像処理部１８に接続される。
【００１７】
画像処理部１８は、撮像部１６に視野２４内の物品Ｍ及びコンベヤ１２を撮像させて、撮像部１６が取得した二次元画像データを適宜に画像処理することにより、物品Ｍの存在を検出するとともに、予め定めた二次元座標系における個々の物品Ｍの位置（座標値）及び姿勢（回転角度）の情報を取得する。画像処理部１８が取得する後述する「位置情報」（初期位置情報、移動位置情報等）は、通常は物品Ｍの位置及び姿勢の情報を含むが、例えば、物品Ｍが円形である場合のように、「位置情報」が物品Ｍの姿勢の情報を含まなくともよい場合もある。本明細書では、物品Ｍの位置及び姿勢の情報、並びに物品Ｍの位置の情報を、「位置情報」と総称する。また画像処理部１８は、撮像部１６の撮像データから、個々の物品Ｍの二次元的外形や色等の情報（以下、外観特徴情報と称する）を取得することもできる。画像処理部１８が取得した物品Ｍの位置情報は、図示しないモニタに画像として表示することができる。
【００１８】
画像処理部１８は、通信ケーブル２８を介してロボット制御部２０に接続され、撮像部１６の二次元画像データから検出した物品Ｍの位置情報を随時、ロボット制御部２０に送信できる。或いは後述するように、画像処理部１８とロボット制御部２０とを、１台の共通の制御装置に装備することもできる。
【００１９】
コンベヤ１２には、その運搬方向をＸ軸とする二次元のコンベヤ座標系（静止座標系）３０を定義できる。この実施形態では、ロボット１４は、コンベヤ座標系３０における指令に従ってコンベヤ座標系３０で動作できる。また画像処理部１８は、コンベヤ座標系３０で撮像部１６のキャリブレーションを行うことにより、検出した物品Ｍの位置情報をコンベヤ座標系３０で表すことができる。ロボット制御部２０は、画像処理部１８が検出した物品Ｍの位置情報を用いてロボット１４を制御し、ハンドの形態に応じた把持動作をロボット１４に実行させる。
【００２０】
画像処理部１８は、コンベヤ１２の運搬動作により移動している複数の物品Ｍの撮像及び検出を、複数の物品Ｍの全てが撮像及び検出される第１周期Ｔ１で実行して、全ての物品Ｍの各々の初期位置情報Ｄ１を取得する物品検出部３２と、コンベヤ１２の運搬動作により移動している複数の物品Ｍの撮像及び検出を、第１周期Ｔ１よりも短い第２周期Ｔ２で実行して、複数の物品Ｍの各々の、初期位置情報Ｄ１を基準とした移動位置情報Ｄ２を、第２周期Ｔ２で反復して取得する物品追跡部３４とを備える。ロボット制御部２０は、ロボット１４がコンベヤ１２の運搬動作に追従しながら複数の物品Ｍの各々を把持して移送するように、移動位置情報Ｄ２を用いてロボット１４を制御する。この実施形態では、初期位置情報Ｄ１及び移動位置情報Ｄ２はいずれも、コンベヤ座標系３０における座標値及び回転角度（又は座標値のみ）で表される。
【００２１】
物品検出部３２は、コンベヤ１２の運搬動作によりロボット１４の作業領域２２に供給される複数の物品Ｍの各々を、撮像部１６の視野２４内で最初に認識し検出する（以下、「初期検出する」とも称する）機能を有する。この実施形態では、物品検出部３２は、撮像部１６の視野２４の上流端部分２４ａの中で物品Ｍを初期検出するように構成される。第１周期Ｔ１は、撮像部１６が視野２４の上流端部分２４ａの中で個々の物品Ｍの全体像を少なくとも１回は撮像できる周期である。
【００２２】
具体例を挙げると、視野２４の上流端部分２４ａの、コンベヤ１２の運搬方向Ｗに見た（つまりコンベヤ座標系３０のＸ軸方向の）長さが４００ｍｍ、物品Ｍの最大幅が１００ｍｍ、コンベヤ１２の運搬速度が２００ｍｍ／ｓの構成の場合、コンベヤ１２の運搬動作に伴い１つの物品Ｍの全体が上流端部分２４ａに進入した瞬間から当該物品Ｍの一部が上流端部分２４ａの外に出るまでの間に、当該物品Ｍを１回撮像するための第１周期Ｔ１は、以下のようになる。
Ｔ１＝（４００(mm)−１００(mm)）／２００(mm/s)＝１．５(s)
上記具体例において、コンベヤ１２により作業領域２２に供給される複数の物品Ｍを上記第１周期Ｔ１で撮像することで、全ての物品Ｍを、視野２４の上流端部分２４ａに存在する間に撮像して初期検出でき、それら物品Ｍの各々の初期位置情報Ｄ１を取得できる。
【００２３】
物品追跡部３４は、物品検出部３２が初期検出した複数の物品Ｍの各々を、撮像部１６の視野２４内で引き続いて認識し検出する（以下、「追跡する」とも称する）機能を有する。この実施形態では、物品追跡部３４は、撮像部１６の視野２４の全体の中で物品Ｍを追跡するように構成される。第２周期Ｔ２は、撮像部１６が視野２４の中で個々の物品Ｍの全体像を、他の物品Ｍとの誤検出を生ずることなく追跡するに十分な回数に渡って反復して撮像できる周期である。
【００２４】
例えば、全く同じ姿勢（回転角度）で互いに並列に接して置かれた２個の物品Ｍを互いに誤検出しないようにするためには、コンベヤ１２の運搬距離が物品Ｍの最小幅の半分以下である間に、撮像部１６が各物品Ｍを撮像して物品追跡部３４による検出が完了すべきと考えられる。この条件の下、前述した具体例において物品Ｍの最小幅が６０ｍｍであった場合、第２周期Ｔ２は、以下のようになる。
Ｔ２＝（６０(mm)／２）／２００(mm/s)＝０．１５(s)
上記具体例において、コンベヤ１２の運搬動作により移動している複数の物品Ｍを上記第２周期Ｔ２で撮像することで、それら物品Ｍの各々を、視野２４内で反復撮像して他の物品と誤認することなく追跡でき、それら物品Ｍの各々の移動位置情報Ｄ２を取得できる。なお、「物品Ｍの最小幅の半分」を条件とせずに、画像処理部１８が有する処理能力の限界に相当するまで第２周期Ｔ２を短く設定することにより、移動位置情報Ｄ２の確度、したがってロボット１４が物品Ｍを追従しながら把持する動作の精度を、最大限に高めることができる。
【００２５】
画像処理部１８は、物品検出部３２による第１周期Ｔ１での撮像及び検出（すなわち初期検出）と並行して、物品追跡部３４による第２周期Ｔ２での撮像及び検出（すなわち追跡）を実行する（いわゆるマルチタスク処理を行う）。このとき物品追跡部３４は、物品検出部３２が取得した物品Ｍの初期位置情報Ｄ１に含まれる位置及び姿勢（又は位置のみ）の値を初期値として、当該物品Ｍを第２周期Ｔ２で反復して撮像及び検出することで、当該物品Ｍの時々刻々の位置及び姿勢（又は位置のみ）の値（すなわち変化量）を移動位置情報Ｄ２として繰り返し取得し続ける。なお、撮像部１６の１台のカメラ１６は、第１周期Ｔ１での撮像と第２周期Ｔ２での撮像とを適宜順序及び適宜タイミングで実行する。
【００２６】
画像処理部１８は、物品検出部３２が取得した個々の物品Ｍの初期位置情報Ｄ１を、物品追跡部３４による物品追跡処理に利用する一方で、ロボット１４に個々の物品Ｍを把持させるために必要な他の情報と共に、パケット（以下、パケットαと称する）に一まとめにした形式でロボット制御部２０に送る。パケットαに含まれる情報は、その情報がパケットαであることを示すパケットＩＤ、物品検出部３２が取得した初期位置情報Ｄ１、初期位置情報Ｄ１に対応する物品撮像時刻、及び物品Ｍを通し番号で示す物品ＩＤである。コンベヤ１２によりロボット１４の作業領域２２に供給される全ての物品Ｍの各々について、パケットαが１回だけ作成されてロボット制御部２０に送られる。
【００２７】
画像処理部１８はまた、物品追跡部３４が反復して取得した個々の物品Ｍの移動位置情報Ｄ２を、取得の都度、ロボット１４に個々の物品Ｍを把持させるために必要な他の情報と共に、パケット（以下、パケットβと称する）に一まとめにした形式でロボット制御部２０に送る。パケットβに含まれる情報は、その情報がパケットβであることを示すパケットＩＤ、物品追跡部３４が取得した移動位置情報Ｄ２、移動位置情報Ｄ２に対応する物品撮像時刻、及び物品Ｍを通し番号で示す物品ＩＤである。コンベヤ１２によりロボット１４の作業領域２２に供給される全ての物品Ｍの各々について、パケットβが繰り返し作成されてロボット制御部２０に送られる。
【００２８】
ロボット制御部２０は、画像処理部１８から送られたパケットαの情報に基づき、ロボット１４に個々の物品Ｍを把持させるための物品情報を、パケット（以下、パケットγと称する）に一まとめにした形式で作成する。パケットγに含まれる情報は、パケットαの情報と、その時点までに画像処理部１８から送られたパケットβの情報のうち、最新のものを含む任意回数分のパケットβに含まれる移動位置情報Ｄ２及び物品撮像時刻とである。さらに、任意回数分の移動位置情報Ｄ２及び物品撮像時刻の間隔から得られる物品Ｍの移動速度（つまりコンベヤ１２の運搬速度）の情報を、パケットγに含ませることもできる。パケットγの作成に用いるパケットβの受信回数は、物品移送装置１０の使用者が任意に設定できる。ロボット制御部２０は、ロボット１４が物品Ｍを把持してコンベヤ１２から移送したときに、当該物品Ｍのパケットγの情報を消去する。
【００２９】
ロボット制御部２０は、その時点で保持しているパケットγの情報と、画像処理部１８から時々刻々に送られるパケットβの情報とを照合することで、ロボット１４の作業領域２２に進入しようとする物品Ｍ、又は作業領域２２を現在通過している物品Ｍが存在することを認識する。そこでロボット制御部２０は、存在を認識した物品Ｍに対応するパケットβに含まれる当該物品Ｍの移動位置情報Ｄ２を用いて、ロボット１４を制御する。この制御の下で、ロボット１４は、コンベヤ１２の運搬動作に追従しながら当該物品Ｍを把持して取り上げ、コンベヤ１２から予め定めた別の場所へ物品Ｍを移送する。
【００３０】
上記構成を有する物品移送装置１０によれば、画像処理部１８の物品検出部３２が、コンベヤ１２によって運搬されている物品Ｍの初期位置情報Ｄ１を取得した後に、画像処理部１８の物品追跡部３４が、当該物品Ｍの移動位置情報Ｄ２を取得して、ロボット制御部２０が移動位置情報Ｄ２を用いてロボット１４を制御するようにしたから、コンベヤ１２にエンコーダ等の移動量センサを付設することなく、ロボット１４が、コンベヤ１２によって運搬されている物品Ｍの現在位置を把握してコンベヤ１２に追従しながら物品Ｍを把持することができる。よって、エンコーダ等の移動量センサをコンベヤに付設することが困難な状況においても、ロボットがコンベヤの運搬動作に追従しながら個々の物品を把持して他の場所に移送するシステムを構築できる。しかも物品追跡部３４は、個々の物品Ｍの移動位置情報Ｄ２を第２周期Ｔ２で反復して取得するので、物品検出部３２が物品Ｍの初期位置情報Ｄ１を取得した後に当該物品Ｍがコンベヤ１２上で位置ずれを生じた場合にも、物品追跡部３４が当該物品Ｍを追跡して移動位置情報Ｄ２を更新でき、ロボット１４が、更新された移動位置情報Ｄ２により当該物品Ｍの位置ずれ後の現在位置を把握して当該物品Ｍを把持することができる。
【００３１】
上記した物品移送装置１０の構成は、本発明の他の態様による物品移送方法として記述できる。この物品移送方法は、コンベヤ１２により運搬されている複数の物品Ｍをロボット１４が把持して移送する物品移送方法であって、コンベヤ１２の運搬動作により移動している複数の物品Ｍの撮像及び検出を、複数の物品Ｍの全てが撮像及び検出される第１周期Ｔ１で実行して、全ての物品Ｍの各々の初期位置情報Ｄ１を取得するステップと、コンベヤ１２の運搬動作により移動している複数の物品Ｍの撮像及び検出を、第１周期Ｔ１よりも短い第２周期Ｔ２で実行して、複数の物品Ｍの各々の、初期位置情報Ｄ１を基準とした移動位置情報Ｄ２を、第２周期Ｔ２で反復して取得するステップと、ロボット１４がコンベヤ１２の運搬動作に追従しながら複数の物品Ｍの各々を把持して移送するように、移動位置情報Ｄ２を用いてロボット１４を制御するステップとを有する。
【００３２】
図２は、物品移送装置１０の変形例を示す。この変形例では、撮像部１６は、互いに独立して動作する第１カメラ１６Ａ及び第２カメラ１６Ｂを備える。第１カメラ１６Ａは、前述した視野２４のコンベヤ運搬方向上流端の一部分２４ａを、それ自体の視野として有する。第２カメラ１６Ｂは、視野２４を有する。物品検出部３２は、第１カメラ１６Ａに視野２４ａ内の物品Ｍを撮像させるとともに第１カメラ１６Ａが撮像した画像から物品Ｍを検出する。物品追跡部３４は、第２カメラ１６Ｂに視野２４内の物品Ｍを撮像させるとともに第２カメラ１６Ｂが撮像した画像から物品Ｍを検出する。第１及び第２カメラ１６Ａ、１６Ｂはいずれも、デジタルカメラであることができ、例えば解像度や撮像範囲を任意に設定することができる。第１及び第２カメラ１６Ａ、１６Ｂはそれぞれ、カメラケーブル２６を介して画像処理部１８に接続される。この構成では、第１カメラ１６Ａによる第１周期Ｔ１での撮像と第２カメラ１６Ｂによる第２周期Ｔ２での撮像とを並行して実施できる。
【００３３】
図３は、物品移送装置１０の他の変形例を示す。この変形例では、ロボット１４は、互いに独立して動作する第１機構部１４Ａ及び第２機構部１４Ｂを備え、ロボット制御部２０は、第１機構部１４Ａを制御する第１制御部２０Ａ及び第２機構部１４Ｂを制御する第２制御部２０Ｂを備える。第１及び第２機構部１４Ａ、１４Ｂはいずれも、公知の種々の機構部（すなわちマニピュレータ）の構成を有することができ、また公知の種々のハンド（図示せず）を装備することができる。第１機構部１４Ａは、コンベヤ１２の側方の所定位置に配置され、作業領域２２Ａにて、コンベヤ１２により運搬される物品Ｍを追従しながら把持して取り上げ、他の場所に移送するように動作する。第２機構部１４Ｂは、第１機構部１４Ａのコンベヤ運搬方向下流側でコンベヤ１２の側方の所定位置に配置され、作業領域２２Ｂにて、コンベヤ１２により運搬される物品Ｍを追従しながら把持して取り上げ、他の場所に移送するように動作する。作業領域２２Ａと作業領域２２Ｂとは、第１及び第２機構部１４Ａ、１４Ｂの相互干渉を回避するべく、互いに重ならない位置に設定される。またこれら作業領域２２Ａ、２２Ｂはいずれも、撮像部１６の視野２４の中に位置する。
【００３４】
第１制御部２０Ａは、第１機構部１４Ａがコンベヤ１２の運搬動作に追従しながら複数の物品Ｍの各々を把持して移送するように、移動位置情報Ｄ２を用いて第１機構部１４Ａを制御する。第２制御部２０Ｂは、第２機構部１４Ｂがコンベヤ１２の運搬動作に追従しながら複数の物品Ｍ（第１機構部１４Ａが取り上げなかった物品Ｍ）の各々を把持して移送するように、移動位置情報Ｄ２を用いて第２機構部１４Ｂを制御する。第１及び第２制御部２０Ａ、２０Ｂは、通信ケーブル２８を介して、互いに接続されるとともに画像処理部１８に接続される。この構成では、第１及び第２制御部２０Ａ、２０Ｂは、第１機構部１４Ａと第２機構部１４Ｂとに、予め定めた作業割合（すなわち作業の分担率）に応じた個数の物品Ｍをそれぞれ把持させるような制御を実行できる。作業割合を考慮した制御については、後述する他の実施形態に関連してさらに詳細に説明する。
【００３５】
図４は、物品移送装置１０のさらに他の変形例を示す。この変形例は、図２の変形例と図３の変形例とを組み合わせたものに相当し、撮像部１６としての第１カメラ１６Ａ及び第２カメラ１６Ｂと、ロボット１４としての第１機構部１４Ａ及び第２機構部１４Ｂと、ロボット制御部２０としての第１制御部２０Ａ及び第２制御部２０Ｂとを備える。
【００３６】
上記した幾つかの変形例のように、撮像部１６を構成するカメラの台数や、ロボット１４を構成する機構部の台数は、コンベヤ１２によって運搬される物品Ｍの総数や運搬速度、ロボット１４が物品Ｍを他の場所に移送するのに要する時間、要求される作業精度等の、種々のファクターに応じて、適宜に設定できる。例えば３台以上のカメラ、３台以上のロボット機構部、３台以上のロボット制御部を備えることもできる。カメラやロボット機構部をコンベヤ運搬方向に並べて配置する場合、下流側のカメラやロボット機構部は、上流側のカメラやロボット機構部が実行しなかった作業を実行するように構成できる。
【００３７】
図５は、他の実施形態による物品移送装置４０を示す。物品移送装置４０は、撮像部１６として機能するカメラの台数、ロボット１４として機能する機構部の台数、及びロボット制御部２０として機能する制御部の台数が異なる点、並びにロボット１４による物品Ｍの移送先として第２のコンベヤを備える点を除いて、基本的部分では前述した物品移送装置１０と実質的に同一の構成を有する。以下の説明において、物品移送装置１０の構成に対応する構成については、共通する参照符号を付すことでその説明を省略する場合がある。また、物品移送装置１０において説明を省略した細部の構成を、以下で物品移送装置４０に関連して詳細に説明する場合もある。
【００３８】
物品移送装置４０は、物品Ｍを運搬するコンベヤ１２と、物品Ｍを把持して移送するロボット１４と、物品Ｍを撮像する撮像部１６と、撮像部１６を制御するとともに撮像部１６が撮像した画像から物品Ｍを検出する画像処理部１８と、画像処理部１８が検出した物品Ｍの情報を用いてロボット１４を制御するロボット制御部２０とを備える。物品移送装置４０はさらに、ロボット１４がコンベヤ１２から取り上げた物品Ｍを移送して載置する第２のコンベヤ４２（以下、排出コンベヤ４２と称する）を備える。
【００３９】
ロボット１４は、互いに独立して動作する第１機構部１４Ａ、第２機構部１４Ｂ及び第３機構部１４Ｃを備える。第１機構部１４Ａは、コンベヤ１２の側方の所定位置に配置され、作業領域２２Ａにて、コンベヤ１２により運搬される物品Ｍを追従しながら把持して取り上げ、排出コンベヤ４２に移送するように動作する。第２機構部１４Ｂは、第１機構部１４Ａのコンベヤ運搬方向下流側でコンベヤ１２の側方の所定位置に配置され、作業領域２２Ｂにて、コンベヤ１２により運搬される物品Ｍを追従しながら把持して取り上げ、排出コンベヤ４２に移送するように動作する。第３機構部１４Ｃは、第２機構部１４Ｂのコンベヤ運搬方向下流側でコンベヤ１２の側方の所定位置に配置され、作業領域２２Ｃにて、コンベヤ１２により運搬される物品Ｍを追従しながら把持して取り上げ、排出コンベヤ４２に移送するように動作する。作業領域２２Ａ、２２Ｂ、２２Ｃは、隣り合う機構部１４Ａ、１４Ｂ、１４Ｃの相互干渉を回避するべく、互いに重ならない位置に設定される。第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃは、互いに実質的同一のハード構成を有することができる。
【００４０】
撮像部１６は、互いに独立して動作する第１カメラ１６Ａ、第２カメラ１６Ｂ及び第３カメラ１６Ｃを備える。第１カメラ１６Ａは、コンベヤ１２の運搬方向の一部分及び横断方向の全体に広がる予め定めた視野４４（破線で示す）を有する。視野４４は、前述した視野２４のコンベヤ運搬方向上流端の一部分２４ａ（図１）をコンベヤ運搬方向上流側へ適当な距離だけ変位した位置に設定される。第２カメラ１６Ｂは、前述した視野２４を有する。第１カメラ１６Ａの視野４４と第２カメラ１６Ｂの視野２４とは、互いに部分的に重なっている。第３カメラ１６Ｃは、コンベヤ１２の運搬方向の一部分及び横断方向の全体に広がる予め定めた視野４６（破線で示す）を有する。視野４６は、視野２４のコンベヤ運搬方向下流端からさらに下流側へ延出するように設定される。第３カメラ１６Ｃの視野４６と第２カメラ１６Ｂの視野２４とは、互いに部分的に重なっている。第１及び第２機構部１４Ａ、１４Ｂの作業領域２２Ａ、２２Ｂは、第２カメラ１６Ｂの視野２４の中に位置する。第３機構部１４Ｃの作業領域２２Ｃは、第３カメラ１６Ｃの視野４６の中に位置する。第１〜第３カメラ１６Ａ、１６Ｂ、１６Ｃは、カメラケーブル２６を介して画像処理部１８に接続される。第１〜第３カメラ１６Ａ、１６Ｂ、１６Ｃは、互いに実質的同一のハード構成を有することができる。
【００４１】
ロボット制御部２０は、第１機構部１４Ａを制御する第１制御部２０Ａ、第２機構部１４Ｂを制御する第２制御部２０Ｂ、及び第３機構部１４Ｃを制御する第３制御部２０Ｃを備える。第１制御部２０Ａは、第１機構部１４Ａがコンベヤ１２の運搬動作に追従しながら複数の物品Ｍの各々を把持して移送するように、移動位置情報Ｄ２を用いて第１機構部１４Ａを制御する。第２制御部２０Ｂは、第２機構部１４Ｂがコンベヤ１２の運搬動作に追従しながら複数の物品Ｍ（第１機構部１４Ａが取り上げなかった物品Ｍ）の各々を把持して移送するように、移動位置情報Ｄ２を用いて第２機構部１４Ｂを制御する。第３制御部２０Ｃは、第３機構部１４Ｃがコンベヤ１２の運搬動作に追従しながら複数の物品Ｍ（第２機構部１４Ｂが取り上げなかった物品Ｍ）の各々を把持して移送するように、追加移動位置情報Ｄ３（後述する）を用いて第３機構部１４Ｃを制御する。第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃは、通信ケーブル２８及びネットワークハブ４８を介して、互いに接続されるとともに画像処理部１８に接続される。第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃは、互いに実質的同一のハード構成を有することができる。
【００４２】
画像処理部１８は、第１カメラ１６Ａに視野４４内の物品Ｍを撮像させるとともに第１カメラ１６Ａが撮像した画像から物品Ｍを検出（初期検出）する物品検出部３２と、第２カメラ１６Ｂに視野２４内の物品Ｍを撮像させるとともに第２カメラ１６Ｂが撮像した画像から物品Ｍを検出（追跡）する物品追跡部３４と、第３カメラ１６Ｃに視野４６内の物品Ｍを撮像させるとともに第３カメラ１６Ｃが撮像した画像から物品Ｍを検出（追跡）する補助追跡部５０とを備える。補助追跡部５０は、コンベヤ１２の運搬動作により移動している複数の物品Ｍの撮像及び検出を、第１周期Ｔ１よりも短い第３周期Ｔ３で実行して、複数の物品Ｍの各々の、移動位置情報Ｄ２を基準とした追加移動位置情報Ｄ３を、第３周期Ｔ３で反復して取得する。
【００４３】
補助追跡部５０は、物品追跡部３４が第２カメラ１６Ｂの視野２４内で追跡した複数の物品Ｍの各々を、第３カメラ１６Ｃの視野４６内で引き続いて追跡する機能を有する。第３カメラ１６Ｃ及び補助追跡部５０は、物品追跡部３４が視野２４内で追跡した物品Ｍのうち第１及び第２機構部１４Ａ、１４Ｂが作業領域２２Ａ、２２Ｂ内で把持しなかった物品Ｍを、第３機構部１４Ｃに作業領域２２Ｃ内で把持させるために設けられる。第３周期Ｔ３は、第２周期Ｔ２と同様の条件に従って設定でき、第２周期Ｔ２と同一であることができる。
【００４４】
画像処理部１８は、物品検出部３２による第１周期Ｔ１での撮像及び検出（すなわち初期検出）と、物品追跡部３４による第２周期Ｔ２での撮像及び検出（すなわち追跡）と、補助追跡部５０による第３周期Ｔ３での撮像及び検出（すなわち追跡）とを、互いに並行して実行する。第１〜第３カメラ１６Ａ、１６Ｂ、１６Ｃは、第１〜第３周期Ｔ１、Ｔ２、Ｔ３での撮像を互いに並行して実行できる。このとき補助追跡部５０は、物品追跡部３４が反復取得した物品Ｍの移動位置情報Ｄ２のうち、第３カメラ１６Ｃの視野４６に進入した物品Ｍの最終の移動位置情報Ｄ２に含まれる位置及び姿勢（又は位置のみ）の値を初期値として、当該物品Ｍを第３周期Ｔ３で反復して撮像及び検出することで、当該物品Ｍの時々刻々の位置及び姿勢（又は位置のみ）の値（すなわち変化量）を追加移動位置情報Ｄ３として繰り返し取得し続ける。
【００４５】
画像処理部１８は、物品検出部３２が取得した個々の物品Ｍの初期位置情報Ｄ１を、物品追跡部３４による物品追跡処理に利用する一方で、前述したパケットαの形式で第１制御部２０Ａのみに送る。この実施形態では、パケットαには、前述した情報に加えて、初期位置情報Ｄ１の元となる画像データを取得した第１カメラ１６Ａを示すカメラＩＤが含まれる。画像処理部１８はまた、物品追跡部３４が反復して取得した個々の物品Ｍの移動位置情報Ｄ２、及び補助追跡部５０が反復して取得した個々の物品Ｍの追加移動位置情報Ｄ３を、それぞれの取得の都度、前述したパケットβの形式で第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃの全てに送る。この実施形態では、パケットβには、前述した情報に加えて、移動位置情報Ｄ２又は追加移動位置情報Ｄ３の元となる画像データを取得した第２又は第３カメラ１６Ｂ、１６Ｃを示すカメラＩＤが含まれる。
【００４６】
第１制御部２０Ａは、画像処理部１８から送られたパケットαの情報に基づき、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃに個々の物品Ｍを把持させるための物品情報を、前述したパケットγの形式で作成する。パケットγに含まれる情報は、パケットαの情報と、その時点までに画像処理部１８から送られたパケットβの情報のうち、最新のものを含む任意回数分のパケットβに含まれる移動位置情報Ｄ２又は追加移動位置情報Ｄ３及び物品撮像時刻とである。第１制御部２０Ａは、第１機構部１４Ａが物品Ｍを把持してコンベヤ１２から移送したときに当該物品Ｍのパケットγの情報を消去する一方、第１機構部１４Ａがコンベヤ１２から移送しなかった物品Ｍのパケットγの情報を第２制御部２０Ｂに送る。第２制御部２０Ｂは、第１制御部２０Ａから受け取ったパケットγの情報について、第２機構部１４Ｂが物品Ｍを把持してコンベヤ１２から移送したときに当該物品Ｍのパケットγの情報を消去する一方、第２機構部１４Ｂがコンベヤ１２から移送しなかった物品Ｍのパケットγの情報を第３制御部２０Ｃに送る。
【００４７】
第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃの各々は、その時点で保持しているパケットγの情報と、画像処理部１８から時々刻々に送られるパケットβの情報とを照合することで、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃの各々の作業領域２２Ａ、２２Ｂ、２２Ｃに進入しようとする物品Ｍ、又は作業領域２２Ａ、２２Ｂ、２２Ｃを現在通過している物品Ｍが存在することを認識する。そこで、第１及び第２制御部２０Ａ、２０Ｂの各々は、存在を認識した物品Ｍに対応するパケットβに含まれる当該物品Ｍの移動位置情報Ｄ２を用いて、第１及び第２機構部１４Ａ、１４Ｂの各々を制御する。また、第３制御部２０Ｃは、存在を認識した物品Ｍに対応するパケットβに含まれる当該物品Ｍの追加移動位置情報Ｄ３を用いて、第３機構部１４Ｃを制御する。これらの制御の下で、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃの各々は、コンベヤ１２の運搬動作に追従しながら当該物品Ｍを把持して取り上げ、コンベヤ１２から排出コンベヤ４２へ物品Ｍを移送する。
【００４８】
排出コンベヤ４２は、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃの各々が物品Ｍを置く作業を実行可能な位置に、コンベヤ１２に対し実質的平行に並んで配置される。排出コンベヤ４２は、複数の物品Ｍを支持して一方向（図で矢印Ｗ方向）へ運搬可能な公知の搬送部材と、搬送部材を連続的又は断続的に駆動する公知の駆動機構とを有する。排出コンベヤ４２には、搬送部材の移動量を検出するエンコーダ５２が付設される。エンコーダ５２が検出した移動量は、第１制御部２０Ａに入力され、通信ネットワークを介して第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃに共有される。
【００４９】
排出コンベヤ４２には、それぞれに所定個数の物品Ｍを所定配置で支持可能な複数のトレイ５４が載置される。また排出コンベヤ４２には、所定位置への個々のトレイ５４の到達を検出する光電管センサ５６が付設される。第１制御部２０Ａは、光電管センサ５６から１つのトレイ５４の検出信号を受けたと同時に、エンコーダ５２から入力される排出コンベヤ４２の移動量を読み取って初期値として記憶し、その後、随時更新されるエンコーダ５２の検出値を記憶した初期値と比較することで、当該トレイ５４の現在位置を知ることができる。
【００５０】
個々のトレイ５４には、予め定めた整列パターン５８に従って複数の物品Ｍを載置できる。図６は、トレイ５４上での物品Ｍの整列パターン５８の一例を示す。整列パターン５８は、それぞれが物品Ｍの位置を表す４個のパターン要素Ｐ１、パターン要素Ｐ２、パターン要素Ｐ３、パターン要素Ｐ４を有する。図示の例では、図６（ａ）に示すように、二次元画像上でトレイ５４の右上隅を原点とする座標系５７において、パターン要素Ｐ１、Ｐ２、Ｐ３、Ｐ４をそれぞれ座標値（Ｘ，Ｙ）と相対回転角度Φとで定義した整列フォーム５９（図６（ｂ））が用意される。図示の整列フォーム５９は、Ｐ１、Ｐ２、Ｐ３、Ｐ４のそれぞれの座標値が（Ｘ１，Ｙ１）、（Ｘ１，Ｙ２）、（Ｘ２，Ｙ１）、（Ｘ２，Ｙ２）であり、Ｐ１、Ｐ２、Ｐ３、Ｐ４のそれぞれの回転角度が０°、−９０°、９０°、１８０°である。
【００５１】
第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃは、上記したパターン要素Ｐ１、Ｐ２、Ｐ３、Ｐ４を有する整列パターン５８に従って物品Ｍを１つずつトレイ５４に載置するように、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃを制御する。図６（ａ）は、整列パターン５８に従ってトレイ５４上に配置された矢尻状の外形を有する４個の物品Ｍを示す。なお図では、各パターン要素Ｐ１、Ｐ２、Ｐ３、Ｐ４は、理解を助けるために「＋」のマークで示しているが、パターン要素Ｐ１、Ｐ２、Ｐ３、Ｐ４自体は形状を有する必要が無いものである。また図では、各物品Ｍの二次元的外形における幾何学的中心点をパターン要素Ｐ１、Ｐ２、Ｐ３、Ｐ４に位置合わせすることで、４個の物品Ｍが整列パターン５８に置かれているが、これに限らず、各物品Ｍの任意の共通点をパターン要素Ｐ１、Ｐ２、Ｐ３、Ｐ４に位置合わせすることもできる。
【００５２】
図７は、第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃの各々又はロボット制御部２０（図１）のハードウェア構成の一例を示す。各制御部２０Ａ、２０Ｂ、２０Ｃ又はロボット制御部２０は、マイクロプロセッサからなるＣＰＵ６０を備える。ＣＰＵ６０には、ＲＯＭ６２、ＲＡＭ６４、ＳＲＡＭ６６、デジタルシグナルプロセッサ（ＤＳＰ）用データメモリ６８及びデジタルシグナルプロセッサ（ＤＳＰ）７０が、バス７１を介してそれぞれ接続される。ＲＯＭ６２にはシステム全体を制御するプログラムが格納され、ＲＡＭ６４にはＣＰＵ６０で処理されるデータが一時的に格納される。ＳＲＡＭ６６には、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃの各々又はロボット１４のための動作プログラムや設定データが格納される。ＤＳＰ７０は、エンコーダ５２の出力信号を処理するためのプロセッサであり、ＤＳＰ用データメモリ６８は、ＤＳＰ７０による処理データや設定パラメータを格納する。ＤＳＰ７０は、ＣＰＵ６０の命令に従って任意の時点においてエンコーダ５２の出力を検知し、ＤＳＰ用データメモリ６８の所定エリアに書き込む機能を有する。
【００５３】
各制御部２０Ａ、２０Ｂ、２０Ｃ又はロボット制御部２０は、各機構部１４Ａ、１４Ｂ、１４Ｃ又はロボット１４を制御するための軸制御部７２を有する。軸制御部７２は、サーボ回路７４を介して、各機構部１４Ａ、１４Ｂ、１４Ｃ又はロボット１４に接続される。これにより各制御部２０Ａ、２０Ｂ、２０Ｃ又はロボット制御部２０は、各機構部１４Ａ、１４Ｂ、１４Ｃ又はロボット１４を制御することができる。さらに各制御部２０Ａ、２０Ｂ、２０Ｃ又はロボット制御部２０は、通信インタフェース７６やＩ／Ｏインタフェース７８を備えており、これらを介して、他の制御部２０Ａ、２０Ｂ、２０Ｃ、画像処理部１８、光電管センサ５６等の周辺装置と通信することができる。
【００５４】
図８は、画像処理部１８のハードウェア構成の一例を示す。画像処理部１８は、マイクロプロセッサからなるＣＰＵ８０を備える。ＣＰＵ８０には、ＲＯＭ８２、ＲＡＭ８４、外部に設置されるモニタ８６が接続されるモニタインタフェース８８、及び第１〜第３カメラ１６Ａ、１６Ｂ、１６Ｃの各々又は撮像部１６（図１）が接続されるカメラインタフェース９０が、バス９２を介してそれぞれ接続される。各カメラ１６Ａ、１６Ｂ、１６Ｃ又は撮像部１６が撮像した画像は、カメラインタフェース９０を介してＲＡＭ８４に格納される。カメラインタフェース９０は、個々のカメラ１６Ａ、１６Ｂ、１６Ｃを互いに独立して制御でき、各カメラ１６Ａ、１６Ｂ、１６Ｃの撮像状況によらず常に指定のタイミングで撮像を実行できる。ＲＡＭ８４に格納されたデータは、ＣＰＵ８０によって解析され、物品Ｍの位置や姿勢の情報（初期位置情報Ｄ１、移動位置情報Ｄ２、追加移動位置情報Ｄ３）として画像処理部１８に取得される。画像処理部１８は、ＲＡＭ８４に格納された撮像データから、物品Ｍの形状や色等の外観特徴情報を取得することもできる。ＲＯＭ８２には、画像処理部１８における各種設定情報や解析プログラムが格納される。ＣＰＵ８０は、いわゆるマルチコア、マルチスレッドに対応しており、第１〜第３カメラ１６Ａ、１６Ｂ、１６Ｃが撮像した画像データを並行して解析できる。さらに画像処理部１８は、通信インタフェース９４やＩ／Ｏインタフェース９６を備えており、これらを介して、各制御部２０Ａ、２０Ｂ、２０Ｃや周辺装置と通信することができる。
【００５５】
図９に示すように、各制御部２０Ａ、２０Ｂ、２０Ｃ又はロボット制御部２０と、画像処理部１８とを、共通の制御装置９８に内蔵することもできる。画像処理部１８のＣＰＵ８０は、制御装置９８のバス１００を介して、各制御部２０Ａ、２０Ｂ、２０Ｃ又はロボット制御部２０のＣＰＵ６０に接続される。また、画像処理部１８のＣＰＵ８０は、各制御部２０Ａ、２０Ｂ、２０Ｃ又はロボット制御部２０のＣＰＵ６０を介して、ＳＲＡＭ６６にアクセスして各種設定情報を保存したり、ＤＳＰ用データメモリ６８にアクセスしてエンコーダ５２の情報を読み取ったりすることができる。画像処理部１８のＣＰＵ８０は、必要に応じて、各制御部２０Ａ、２０Ｂ、２０Ｃ又はロボット制御部２０のＣＰＵ６０を介して、通信インタフェース７６やＩ／Ｏインタフェース７８に接続できる。この場合、前述した通信インタフェース９４やＩ／Ｏインタフェース９６を省略できる。
【００５６】
制御装置９８において、画像処理部１８のＣＰＵ８０、ＲＯＭ８２及びＲＡＭ８４を、各制御部２０Ａ、２０Ｂ、２０Ｃ又はロボット制御部２０のＣＰＵ６０、ＲＯＭ６２及びＲＡＭ６４で代用することもできる。図１０は、このような簡易化したハードウェア構成を有する制御装置９８を例示する。
【００５７】
図１１は、物品移送装置４０の画像処理部１８及び第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃにおける、物品Ｍに関する情報並びに物品Ｍの把持及び移送作業に関する情報を取り扱う種々の処理の単位を、機能ブロック図で示す。図中の矢印は、物品Ｍに関する情報並びに物品Ｍの把持及び移送作業に関する情報の流れを示す。
【００５８】
図１１に示すように、第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃはそれぞれ、作業内容設定部１０２Ａ、１０２Ｂ、１０２Ｃを有する。作業内容設定部１０２Ａ、１０２Ｂ、１０２Ｃでは、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃ（図５）がそれぞれに実行する作業割合、トレイ５４上の物品Ｍの整列パターン５８、コンベヤ１２上の作業領域２２Ａ、２２Ｂ、２２Ｃ（図５）等の、物品把持及び移送作業に関する作業内容が設定される。作業内容設定部１０２Ａ、１０２Ｂ、１０２Ｃのいずれかで設定された作業内容は、通信ネットワークを介して、他の制御部２０Ａ、２０Ｂ、２０Ｃの作業内容設定部１０２Ａ、１０２Ｂ、１０２Ｃに送ることができ、全ての制御部２０Ａ、２０Ｂ、２０Ｃの作業内容設定部１０２Ａ、１０２Ｂ、１０２Ｃで共有できる。
【００５９】
ここで、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃの作業割合について説明する。例として、図１２に示すように、コンベヤ１２によって先頭から順に物品Ｍ１、Ｍ２、Ｍ３、Ｍ４が作業領域２２Ａ、２２Ｂ、２２Ｃ（図５）に供給され、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃ（図５）がそれら物品Ｍ１、Ｍ２、Ｍ３、Ｍ４を取り上げて、排出コンベヤ４２上のトレイ５４に移送して前述した整列パターン５８に配置する構成を考察する。この構成において、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃの作業割合Ｒを１：１：１に設定した場合の、各機構部１４Ａ、１４Ｂ、１４Ｃによる物品把持及び移送作業の一例を以下に説明する。
【００６０】
まず、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃ（図５）のうち、最も上流側に設置されている第１機構部１４Ａは、最初に供給される物品Ｍ１を把持してコンベヤ１２から取り上げ、整列パターン５８に従ってトレイ５４上のパターン要素Ｐ１に置く。次いで第１機構部１４Ａは、指定された作業割合Ｒ＝１：１：１を満たすように、物品Ｍ２及び物品Ｍ３を下流側の第２機構部１４Ｂ及び第３機構部１４Ｃの作業のために見送り、その後に、最後尾の物品Ｍ４を把持してコンベヤ１２から取り上げ、整列パターン５８に従ってトレイ５４上のパターン要素Ｐ２に置く。第２機構部１４Ｂは、第１機構部１４Ａが見送った物品のうち先に供給される物品Ｍ２を把持してコンベヤ１２から取り上げ、整列パターン５８に従ってトレイ５４上のパターン要素Ｐ３に置く。そして第３機構部１４Ｃは、残った物品Ｍ３を把持してコンベヤ１２から取り上げ、整列パターン５８に従ってトレイ５４上のパターン要素Ｐ４に置く。この時点で、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃが実行した物品把持及び移送作業の分担率は、２：１：１となっている。
【００６１】
物品Ｍ１〜Ｍ４の後にさらに複数の物品Ｍ（図示せず）が供給されると、第１機構部１４Ａは、指定された作業割合Ｒ＝１：１：１を満たすように、供給順に２個の物品Ｍを見送って、３個目の物品Ｍを次のトレイ５４に移送する。そして第２機構部１４Ｂ及び第３機構部１４Ｃは、第１機構部１４Ａが見送った物品Ｍを１個ずつ分担して次のトレイ５４に移送する。この時点で、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃが実行した物品把持及び移送作業の分担率は、３：２：２となっている。このような作業を繰り返すことにより、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃは、コンベヤ１２によって供給される全ての物品Ｍに対し、最終的に作業割合Ｒ＝１：１：１に従う分担率で把持及び移送作業を実行する。
【００６２】
上記した作業例では、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃがコンベヤ１２上の複数の物品Ｍを供給順に把持して、整列パターン５８のパターン要素Ｐ１〜Ｐ４の番号順にトレイ５４に配置している。また、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃがこの順番で、作業割合Ｒに最も近似する分担率を実現することを条件に、物品Ｍを把持するか見送るかを決定している。このような作業ルールについては、物品移送装置４０の使用者が所望の作業ルールを事前に設定して、第１〜第３制御部２０Ａ、２０Ｂ、２０ＣのＳＲＡＭ６６に格納しておくことができる。
【００６３】
再び図１１を参照すると、第１制御部２０Ａは、トレイ検出部１０４、情報管理部１０６Ａ及び作業実行部１０８Ａを有する。第２制御部２０Ｂは、情報管理部１０６Ｂ及び作業実行部１０８Ｂを有する。第３制御部２０Ｃは、情報管理部１０６Ｃ及び作業実行部１０８Ｃを有する。
【００６４】
トレイ検出部１０４は、光電管センサ５６（図５）からのトレイ検出信号の入力によりトレイ５４（図５）を検知し、検知した瞬間の排出コンベヤ４２（図５）のエンコーダ５２（図５）の検出値を情報管理部１０６Ａへ転送する。予め作業内容設定部１０２Ａで、光電管センサ５６の位置や排出コンベヤ４２の進行方向を第１機構部１４Ａ（図５）のロボット座標系（図１の実施形態ではコンベヤ座標系３０）に関連付けておくことにより、情報管理部１０６Ａは、トレイ検出部１０４から転送されたトレイ検出時のエンコーダ５２の検出値を用いて、検知されたトレイ５４の位置並びに整列パターン５８のパターン要素Ｐ１〜Ｐ４（図１２）の座標値及び相対回転角度を、ロボット座標系で得ることができる。全てのパターン要素Ｐ１〜Ｐ４の座標値及び相対回転角度の情報は、情報管理部１０６Ａに一旦保持されるが、第１機構部１４Ａが物品Ｍを置かなかったパターン要素Ｐ１〜Ｐ４の情報は、前述したパケットγの情報として、通信ネットワークを介して第２制御部２０Ｂの情報管理部１０６Ｂに転送される。同様に、情報管理部１０６Ｂに保持されたパターン要素Ｐ１〜Ｐ４の情報のうち、第２機構部１４Ｂが物品Ｍを置かなかったパターン要素Ｐ１〜Ｐ４の情報は、前述したパケットγの情報として、通信ネットワークを介して第３制御部２０Ｃの情報管理部１０６Ｃに転送される。
【００６５】
図１１に示すように、画像処理部１８は、物品検出部３２、物品追跡部３４及び補助追跡部５０に加えて、条件設定部１１０及び物品管理部１１２を有する。条件設定部１１０では、検出又は追跡対象の物品Ｍの教示モデル画像、物品検出に用いるパラメータ（座標値、回転角度、寸法等）、第１〜第３カメラ１６Ａ、１６Ｂ、１６Ｃ（図５）のキャリブレーションデータ等の、物品Ｍの検出や追跡を行うための諸条件を設定する。また条件設定部１１０は、第１制御部２０Ａの作業内容設定部１０２Ａと通信することで、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃの作業領域２２Ａ、２２Ｂ、２２Ｃ（図５）の情報を取得することができる。
【００６６】
物品検出部３２は、作業開始からコンベヤ１２（図５）が予め定めた時間だけ移動したときに、第１カメラ１６Ａを用いて物品Ｍの初期検出を開始する。或いは、光電管センサ等の外部センサ（図示せず）がコンベヤ１２の所定時間の移動を検出したときに、物品Ｍの初期検出を開始することもできる。物品検出部３２は、予め登録したモデル画像と一致する画像を第１カメラ１６Ａが撮像した画像から検索して物品Ｍを検出する方法（例えば正規化相関法）や、予め登録したモデル画像から物品Ｍの輪郭を抽出して当該輪郭の情報に基づき第１カメラ１６Ａが撮像した画像上での物品Ｍの位置情報を求める方法（例えば一般化ハフ変換法）、第１カメラ１６Ａが撮像した画像上で予め登録した範囲の面積を持つ領域を抽出することで物品Ｍの位置情報を求める方法（例えばブロブ検出法）等の、公知の種々の検出アルゴリズムを用いて、物品Ｍの初期位置情報Ｄ１（図５）を取得することができる。
【００６７】
物品検出部３２は、物品Ｍの初期検出に成功すると、検出した物品Ｍが新規に発見したものであることを示すフラグ（以下、新規フラグと称する）を設定して、新規フラグを、検出した物品Ｍの初期位置情報Ｄ１、当該物品Ｍを撮像した第１カメラ１６ＡのカメラＩＤ、当該物品Ｍの撮像時刻、当該物品Ｍの新たな物品ＩＤといった情報と共に、物品管理部１１２に転送する。物品管理部１１２は、物品検出部３２から受け取ったこれらの情報を、物品追跡部３４に転送すると同時に、前述したパケットαの情報として第１制御部２０Ａの情報管理部１０６Ａに転送する。
【００６８】
物品追跡部３４は、物品管理部１１２から受け取った初期位置情報Ｄ１に対応する物品Ｍが、第２カメラ１６Ｂの視野２４（図５）に進入したときに、第２カメラ１６Ｂを用いて当該物品Ｍの追跡を開始する。また物品追跡部３４は、物品管理部１１２から受け取った物品Ｍの初期位置情報Ｄ１を初期値として、当該物品Ｍの追跡を行う。物品検出部３２での初期検出時に物品Ｍに与えられた固有の物品ＩＤは、物品追跡部３４でもそのまま維持される。物品追跡部３４による物品Ｍの追跡は、第２カメラ１６Ｂが極めて短い第２周期Ｔ２で物品Ｍを繰り返し撮像して得た画像データに基づき、今回撮像時の諸情報（位置情報や外観特徴情報）を前回及びそれ以前の撮像時の諸情報と比較することで、逐次的に行われる。この種の逐次的な追跡を行うための検出アルゴリズムとしては、例えば、非線形・非ガウス型のシステムの推定が可能なパーティクルフィルタ（粒子フィルタ又は逐次モンテカルロ法とも称する）を用いることができる（パーティクルフィルタに関しては、例えば「日本ロボット学会誌 Vol.29, No.5, pp427-430, 2011」を参照）。
【００６９】
物品追跡部３４は、追跡によって取得した物品Ｍの最新の移動位置情報Ｄ２（図５）、当該物品Ｍを撮像した第２カメラ１６ＢのカメラＩＤ、当該物品Ｍの撮像時刻、当該物品Ｍの物品ＩＤといった情報を、物品管理部１１２に逐次的に転送する。物品管理部１１２は、物品追跡部３４から受け取ったこれらの情報を、補助追跡部５０に転送すると同時に、前述したパケットβの情報として第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃの情報管理部１０６Ａ、１０６Ｂ、１０６Ｃに転送する。
【００７０】
補助追跡部５０は、物品管理部１１２から受け取った移動位置情報Ｄ２に対応する物品Ｍが、第３カメラ１６Ｃの視野４６（図５）に進入したときに、第３カメラ１６Ｃを用いて当該物品Ｍの追跡を開始する。また補助追跡部５０は、物品管理部１１２から受け取った物品Ｍが第３カメラ１６Ｃの視野４６（図５）に進入したときの移動位置情報Ｄ２を初期値として、当該物品Ｍの追跡を行う。補助追跡部５０による追跡処理は、第３カメラ１６Ｃが物品Ｍを撮像することを除いて、上記した物品追跡部３４の追跡処理と実質的に同一である。補助追跡部５０は、追跡によって取得した物品Ｍの最新の追加移動位置情報Ｄ３（図５）、当該物品Ｍを撮像した第３カメラ１６ＣのカメラＩＤ、当該物品Ｍの撮像時刻、当該物品Ｍの物品ＩＤといった情報を、物品管理部１１２に逐次的に転送する。物品管理部１１２は、補助追跡部５０から受け取ったこれらの情報を、前述したパケットβの情報として第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃの情報管理部１０６Ａ、１０６Ｂ、１０６Ｃに転送する。
【００７１】
物品追跡部３４及び補助追跡部５０は、物品追跡のための検出アルゴリズムとして、前述したパーティクルフィルタに代えて、物品検出部３２と同様に正規化相関法、一般化ハフ変換法、ブロブ検出法等の公知のパターン認識アルゴリズムを用いることもできる。ここで、正規化相関法、一般化ハフ変換法、ブロブ検出法等は通常、パーティクルフィルタに比べて、検出精度は高いが処理速度は遅い。物品追跡処理に正規化相関法、一般化ハフ変換法、ブロブ検出法等を用いる場合は、物品検出部３２で初期検出に用いる場合と比較して、第２及び第３カメラ１６Ｂ、１６Ｃが撮像した二次元画像上の検出対象領域や検出用パラメータ（座標値、回転角度、寸法、面積等）の範囲を狭めることで、追跡に要する時間の増加を回避することができる。例えば、検出用パラメータとして回転角度を指定する場合、物品検出部３２では物品Ｍの位置や姿勢が不明であるから例えば±１８０度の範囲で初期検出を行って物品Ｍの初期位置情報Ｄ１を得るのに対し、物品追跡部３４及び補助追跡部５０で正規化相関法、一般化ハフ変換法、ブロブ検出法等を用いる場合には、初期検出や前回の追跡の結果から大きくは変化しないという前提で±５度の範囲まで狭めて物品検出（追跡）を行うことができる。
【００７２】
次に図１３を参照して、画像処理部１８の物品追跡部３４（図１１）による物品Ｍの追跡処理の一例を説明する。なお、画像処理部１８の補助追跡部５０（図１１）は、物品追跡部３４による下記の追跡処理と同様の追跡処理を実行できる。
【００７３】
図１３に示すように、コンベヤ１２に不規則配置で支持されて運搬されている複数の物品Ｍに対し、第１機構部１４Ａは、任意の物品Ｍが作業領域２２Ａに存在している間に当該物品Ｍの把持及び取出し動作を実行し、第２機構部１４Ｂは、任意の物品Ｍが作業領域２２Ｂに存在している間に当該物品Ｍの把持及び取出し動作を実行する。他方、第２カメラ１６Ｂは、視野２４内の全ての物品Ｍを第２周期Ｔ２で繰り返し撮像する。ここで、物品追跡部３４が行う追跡処理の計算負荷は、主として、第２カメラ１６Ｂが撮像した画像データのサイズ、物品検出に用いるアルゴリズムの種類、検出対象となる物品Ｍの個数、及び物品検出用のパラメータの範囲によって決まる。検出する物品Ｍの個数及びアルゴリズムが共通と仮定した場合、画像データの解像度を低くすること、又は検出用のパラメータの範囲を狭めることにより、物品追跡部３４の計算負荷が軽減する。
【００７４】
第２カメラ１６Ｂが撮像した画像データのサイズすなわち解像度は、物品追跡部３４による物品Ｍの検出精度に影響し、第１及び第２機構部１４Ａ、１４Ｂによる物品把持の動作精度に影響する。現実には、第１及び第２機構部１４Ａ、１４Ｂの作業領域２２Ａ、２２Ｂの中では、高い検出精度及び動作精度が要求される一方、作業領域２２Ａ、２２Ｂの外での検出精度は第１及び第２機構部１４Ａ、１４Ｂの把持動作と無関係である。そこで、第２カメラ１６Ｂの視野２４のうち、作業領域２２Ａ、２２Ｂの中と外とで異なる解像度の画像データを用いることにより、物品追跡部３４の計算負荷を軽減することができる。
【００７５】
図１１に示すように、画像処理部１８の条件設定部１１０は、第１制御部２０Ａの作業内容設定部１０２Ａと通信して、第１及び第２機構部１４Ａ、１４Ｂの作業領域２２Ａ、２２Ｂがコンベヤ１２のどこに設定されているかについての情報を、コンベヤ座標系３０における位置情報として取得する。物品追跡部３４は、条件設定部１１０が取得した作業領域２２Ａ、２２Ｂの情報に基づき、作業領域２２Ａ、２２Ｂの中にある物品Ｍを、要求される検出精度に対応する第１解像度の画像データを用いて検出する一方、作業領域２２Ａ、２２Ｂの外にある物品Ｍを、第１解像度よりも低い第２解像度の画像データを用いて検出するように構成できる。この構成により、第２カメラ１６Ｂの視野２４の全体に対し第１解像度の画像データを用いて物品Ｍを検出する構成に比べて、物品追跡部３４の計算負荷を軽減できる。なお、補助追跡部５０についても、同様の手法により追跡処理の計算負荷を軽減できる。
【００７６】
上記構成において、物品追跡部３４は、第１及び第２機構部１４Ａ、１４Ｂの作業領域２２Ａ、２２Ｂ（図１３）の中を撮像した第１解像度（高解像度）の画像データと、作業領域２２Ａ、２２Ｂの外を撮像した第２解像度（低解像度）の画像データとを取得できるように構成される。同様に、補助追跡部５０は、第３機構部１４Ｃの作業領域２２Ｃ（図５）の中を撮像した第１解像度の画像データと、作業領域２２Ｃの外を撮像した第２解像度の画像データとを取得できるように構成される。解像度が異なる画像データを取得するために、第２又は第３カメラ１６Ｂ、１６Ｃは、解像度を第１解像度と第２解像度とで切り替える切替機構１１４（図４）を有することができる。この構成では、第２又は第３カメラ１６Ｂ、１６Ｃは、視野２４、４６内の全体を第１解像度及び第２解像度のそれぞれで撮像し、物品追跡部３４又は補助追跡部５０は、作業領域２２Ａ、２２Ｂ又は作業領域２２Ｃの中にある物品Ｍを第１解像度の画像データを用いて検出する一方、作業領域２２Ａ、２２Ｂ又は作業領域２２Ｃの外にある物品Ｍを第２解像度の画像データを用いて検出することができる。第２又は第３カメラ１６Ｂ、１６Ｃが切替機構１１４を有さない場合は、第２又は第３カメラ１６Ｂ、１６Ｃは視野２４、４６内を所定の解像度で撮像し、物品追跡部３４又は補助追跡部５０は、この撮像データの解像度を公知の画像処理によって低下させることで、第１解像度の画像データと第２解像度の画像データとを取得できる。
【００７７】
上記した解像度の選択の代わりに、或いはそれに加えて、物品追跡部３４は、第１処理速度及び第１精度を達成する第１の検出アルゴリズムと、第１処理速度よりも速い第２処理速度又は第１精度よりも低い第２精度を達成する第２の検出アルゴリズムとから、いずれか一方の検出アルゴリズムを選択して使用できるように構成できる。この場合、物品追跡部３４は、第１及び第２機構部１４Ａ、１４Ｂの作業領域２２Ａ、２２Ｂの中にある物品Ｍを、第１の検出アルゴリズムを用いて検出し、作業領域２２Ａ、２２Ｂの外にある物品Ｍを、第２の検出アルゴリズムを用いて検出するように構成できる。第１の検出アルゴリズムとしては、正規化相関法、一般化ハフ変換法、ブロブ検出法等を採用できる。第２の検出アルゴリズムとしては、パーティクルフィルタを採用できる。補助追跡部５０も同様に構成できる。
【００７８】
例えば、物品追跡部３４は、第２カメラ１６Ｂに視野２４の全体を第２解像度（低解像度）で撮像させた画像データから、第２の検出アルゴリズム（パーティクルフィルタ）を用いて視野２４の全体で物品Ｍを検出する。この物品検出は、物品追跡部３４による追跡処理において、物品Ｍの正確な移動位置情報Ｄ２を取得する前段の予備的処理として行われる。次いで物品追跡部３４は、第２カメラ１６Ｂに視野２４の全体を第１解像度（高解像度）で撮像させた画像データのうち、作業領域２２Ａ、２２Ｂを含み作業領域２２Ａ、２２Ｂよりも若干広い領域の画像データから、第１の検出アルゴリズム（正規化相関法、一般化ハフ変換法、ブロブ検出法）を用いて、作業領域２２Ａ、２２Ｂの中に少なくとも部分的に存在する物品Ｍを検出する。この物品検出は、物品追跡部３４による追跡処理において、物品Ｍの正確な移動位置情報Ｄ２を取得するための補完的処理として行われる。第１の検出アルゴリズム（正規化相関法、一般化ハフ変換法、ブロブ検出法）を用いる際には、第２の検出アルゴリズム（パーティクルフィルタ）を用いた予備的検出により、物品Ｍの存在領域が所定の検出用パラメータ（座標値、回転角度、寸法、面積等）の範囲内である程度絞り込まれているので、それに応じて検出用パラメータ（座標値、回転角度、寸法、面積等）の範囲を狭めることで、追跡に要する時間の増加を回避できる。
【００７９】
物品追跡部３４は、共通の作業領域２２Ａ、２２Ｂの中に存在する物品Ｍに対しても、処理速度や精度の異なる検出アルゴリズムを用いて追跡処理を行うことができる。例えば、第１又は第２機構部１４Ａ、１４Ｂが把持する可能性の高い運搬方向下流側から所定個数の物品Ｍについてのみ、第１（高精度）の検出アルゴリズムを用いて検出を行うことができる。例えば、第１又は第２機構部１４Ａ、１４Ｂのハンドが２個の物品Ｍを同時に把持する構成を有する場合、物品追跡部３４は、反復実施する毎回の物品追跡処理の度に下流側から２個の物品Ｍだけを高精度に検出するように構成できる。この構成によれば、検出する物品Ｍの個数を減らして、物品追跡部３４の計算負荷を軽減することができる。
【００８０】
図１の物品移送装置１０も上記と同様の構成を有することができる。物品移送装置１０では、物品追跡部３４は、ロボット１４が物品把持作業を行う作業領域２２の中を撮像した第１解像度の画像と、第１解像度よりも低い第２解像度の画像であって、作業領域２２の外を撮像した第２解像度の画像とを取得でき、作業領域２２の中にある物品Ｍを第１解像度の画像を用いて検出し、作業領域２２の外にある物品Ｍを第２解像度の画像を用いて検出するように構成できる。また物品移送装置１０では、物品追跡部３４は、第１処理速度及び第１精度を達成する第１の検出アルゴリズムと、第１処理速度よりも速い第２処理速度又は第１精度よりも低い第２精度を達成する第２の検出アルゴリズムとから、いずれか一方の検出アルゴリズムを選択して使用でき、ロボット１４の作業領域２２の中にある物品Ｍを第１の検出アルゴリズムを用いて検出し、作業領域２２の外にある物品Ｍを第２の検出アルゴリズムを用いて検出するように構成できる。
【００８１】
次に図１４を参照して、画像処理部１８の物品追跡部３４（図１１）による物品Ｍの追跡処理の他の例を説明する。なお、画像処理部１８の補助追跡部５０（図１１）は、物品追跡部３４による下記の追跡処理と同様の追跡処理を実行できる。
【００８２】
図１４に示すように、２個の物品Ｍ１、Ｍ２がコンベヤ１２上で互いに重なり合った状態で第２機構部１４Ｂの作業領域２２Ｂに供給される状況を想定する。この状況で、物品Ｍ１に大部分が隠蔽されている物品Ｍ２は、物品検出部３２（図１１）によって初期検出されなかったものとする。初期検出されなかった物品Ｍ２については、パケットαの情報が第１制御部２０Ａ（図１１）に送られないので、パケットγの情報も作成されず、結果として第２制御部２０Ｂ（図１１）は物品Ｍ２の存在を認識していない。他方、物品検出部３２によって初期検出された物品Ｍ１については、第２制御部２０Ｂはパケットγの情報から存在を認識している。
【００８３】
上記した状況下で、第２制御部２０Ｂは、作業内容設定部１０２Ｂ（図１１）で設定した作業割合に従って、物品Ｍ１を把持するか否かを判断する。物品Ｍ１を把持する判断が行われて、作業実行部１０８Ｂからの指令により第２機構部１４Ｂが物品Ｍ１をコンベヤ１２から取り上げると、物品Ｍ２が露出して第２カメラ１６Ｂに撮像される。画像処理部１８の物品追跡部３４は、第２機構部１４Ｂが物品Ｍ１をコンベヤ１２から取り上げたことを認識しないので、物品Ｍ１の追跡処理を継続して実行しようとする。つまり物品追跡部３４は、ロボット１４（第２機構部１４Ｂ）が物品Ｍを把持した後、予め定めた時間が経過するまで、移動位置情報Ｄ２の反復取得を継続して実行する。物品Ｍ１と外観特徴が類似した物品Ｍ２は、物品追跡部３４により、物品Ｍ１の検出と同様の手順で検出される。
【００８４】
コンベヤ１２上での物品Ｍ２の検出用パラメータ（座標値、回転角度、寸法、面積等）の値が物品Ｍ１と全く同一の場合は、物品追跡部３４は、物品Ｍ２を物品Ｍ１として継続して追跡することになる。これに対し、図示のように、コンベヤ１２上での物品Ｍ２の検出用パラメータ（座標値、回転角度、寸法、面積等）の値が物品Ｍ１と異なる場合は、物品追跡部３４は、物品Ｍ２を新たに検出した物品Ｍとして追跡する。物品追跡部３４が作業領域２２Ｂの中で物品Ｍ１を追跡する際に、前述したように、第２（低精度）の検出アルゴリズム（パーティクルフィルタ）を用いて物品Ｍ１の予備的検出を行った後に、検出用パラメータ（座標値、回転角度、寸法、面積等）の範囲を狭めた上で第１（高精度）の検出アルゴリズム（正規化相関法、一般化ハフ変換法、ブロブ検出法）を用いて物品Ｍ１の補完的検出を行っていた場合には、物品Ｍ１とは検出用パラメータ（座標値、回転角度、寸法、面積等）の値が異なる物品Ｍ２の検出が困難になる場合がある。そこで物品追跡部３４は、予備的検出で物品Ｍ１らしきものの存在を検出しているにもかかわらず補完的検出で物品Ｍ１を検出できなかった場合に、検出用パラメータ（座標値、回転角度、寸法、面積等）の範囲を予め定めた適当な範囲だけ広げて、第１の検出アルゴリズム（正規化相関法、一般化ハフ変換法、ブロブ検出法）により物品Ｍ１の補完的検出を再試行する。図１４に示す例では、物品Ｍ１と物品Ｍ２とはほぼ同じ位置に配置されていて姿勢が若干異なるだけであるから、検出用パラメータのうち回転角度の範囲を、例えば±５度に狭めていたものを±１８０度まで拡大することにより、物品追跡部３４は物品Ｍ１（実際は物品Ｍ２）を検出できる。
【００８５】
物品Ｍ２を物品Ｍ１として検出した物品追跡部３４は、物品Ｍ１の姿勢が追跡途中で変化したと見なして、姿勢変化後の物品Ｍ１（実際は物品Ｍ２）を新たに検出した物品Ｍとして扱う。物品追跡部３４が新たに検出した物品Ｍの位置情報は、初期位置情報Ｄ１と同様に処理される。物品追跡部３４は、新たに検出した物品Ｍ（物品Ｍ２）に新規フラグを設定し、この新規フラグを、当該物品Ｍの位置情報（初期位置情報Ｄ１に相当）、当該物品Ｍを撮像した第２カメラ１６ＢのカメラＩＤ、当該物品Ｍの撮像時刻、当該物品Ｍの新たな物品ＩＤといった情報と共に、物品管理部１１２に転送する。物品管理部１１２は、通常は物品追跡部３４から受け取った情報を前述したようにパケットβとして第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃに転送するが、物品追跡部３４から受け取った情報に新規フラグが付されている場合は、それら情報をパケットαの情報として第１制御部２０Ａの情報管理部１０６Ａのみに転送する。
【００８６】
図１４の例では、物品Ｍ２は第１機構部１４Ａの作業領域２２Ａ（図５）を通り過ぎて第２機構部１４Ｂの作業領域２２Ｂに進入しているので、情報管理部１０６Ａは、物品追跡部３４から物品管理部１１２を介して受け取ったパケットαの情報に基づきパケットγの情報を生成し、パケットγの情報を直ちに第２制御部２０Ｂの情報管理部１０６Ｂに転送する。情報管理部１０６Ｂは、第２機構部１４Ｂが物品Ｍ１をコンベヤ１２から取り上げたことを認識しているので物品Ｍ１に関するパケットγの情報を削除する一方、新たな物品Ｍ（物品Ｍ２）に関するパケットγの情報を保持し、作業内容設定部１０２Ｂで設定した作業割合に従って、新たな物品Ｍ（物品Ｍ２）を把持するか否かを判断する。
【００８７】
物品追跡部３４は、上記したような物品同士が重なった状況における追跡処理と同様の追跡処理を、物品検出部３２（図１１）が物品Ｍの初期位置情報Ｄ１を取得した後に当該物品Ｍがコンベヤ１２上で位置ずれを生じた状況でも実行できる。例えば図１４に示す状況で、物品Ｍ１による物品Ｍ２の隠蔽範囲が小さい場合には、物品検出部３２は物品Ｍ１及び物品Ｍ２の双方を初期検出する。物品追跡部３４は、物品Ｍ１、Ｍ２の双方を追跡するが、それら物品Ｍ１、Ｍ２が第２機構部１４Ｂの作業領域２２Ｂに進入すると、物品Ｍ２は物品Ｍ１よりも下流側に存在するので、第２制御部２０Ｂ（図１１）は第２機構部１４Ｂを、隠蔽されている物品Ｍ２を物品Ｍ１よりも先に取り上げるように制御する。物品Ｍ２が先に取り上げられると、支えを失った物品Ｍ１はコンベヤ１２上で位置ずれを生ずる可能性が高い。
【００８８】
物品Ｍ１がコンベヤ１２上で位置ずれを生じた場合、物品追跡部３４は物品Ｍ１を新たな物品Ｍとして追跡処理を行う。このとき、前述した予備的検出としての第２の検出アルゴリズム（パーティクルフィルタ）を用いた追跡処理により、位置ずれ後の物品Ｍ１のおおよその位置を把握できる。予備的検出後、把握したおおよその位置を含む範囲に検出範囲を絞り込んで、前述した補完的検出としての第１の検出アルゴリズム（正規化相関法、一般化ハフ変換法）を用いた追跡処理を行うことにより、位置ずれ後の物品Ｍ１の正確な移動位置情報Ｄ２を取得することができる。コンベヤ１２上での物品Ｍ１の位置ずれ量が大きく、保険的検出で物品Ｍ１を検出できなかった場合は、物品同士が重なった状況における前述した処理と同様に、検出用パラメータ（座標値、回転角度、寸法等）の範囲を予め定めた適当な範囲だけ広げて補完的検出を再試行すればよい。
【００８９】
以下、図１５〜図２２に示すフローチャートを参照して、図１１に示す画像処理部１８及びロボット制御部２０（第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃ）が実行する処理フローを詳細に説明する。
【００９０】
図１５は、画像処理部１８の物品管理部１１２が、物品検出部３２、物品追跡部３４及び補助追跡部５０から物品情報を受け取って、第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃの情報管理部１０６Ａ、１０６Ｂ、１０６Ｃにパケットα及びパケットβの情報として出力するフローを示す。まずステップＳ１０で、物品管理部１１２は、物品検出部３２、物品追跡部３４又は補助追跡部５０から送られる物品情報を受信する。物品情報は、検出した物品Ｍの１つずつについて送られる。ステップＳ１１で、物品管理部１１２は、受信した物品情報が、第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃに送るには不適当な情報か否か（つまり物品情報に送信不可フラグ（後述する）が付されているか否か）をチェックする。送信不可フラグが付されていた場合は、ステップＳ１０に戻り、次の物品情報の受信を待機する。送信不可フラグが付されていなかった場合は、ステップＳ１２で、物品管理部１１２は、検出した物品が新たに検出した物品か否か（つまり物品情報に新規フラグが付されているか否か）をチェックする。新規フラグが付されていた場合は、物品管理部１１２は、ステップＳ１３でパケットαを作成し、ステップＳ１４でパケットαを第１制御部２０Ａに送る。また、パケットαに含まれる物品Ｍの初期位置情報Ｄ１は、物品追跡部３４が物品Ｍの追跡を開始するために必要な情報であるから、物品管理部１１２は、ステップＳ１５で、パケットαに含まれる情報（以下、新規物品情報と称する）を物品追跡部３４に送る。
【００９１】
ステップＳ１２で物品情報に新規フラグが付されていなかった場合は、物品管理部１１２は、ステップＳ１６でパケットβを作成し、ステップＳ１７〜Ｓ１９でパケットβを第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃの情報管理部１０６Ａ、１０６Ｂ、１０６Ｃに送る。次に物品管理部１１２は、ステップＳ２０で、ステップＳ１０で受信した物品情報が第２カメラ１６Ｂによって撮像されたもの否かをチェックする。第２カメラ１６Ｂによって撮像されたものでなかった場合は、ステップＳ１０に戻り、次の物品情報の受信を待機する。第２カメラ１６Ｂによって撮像されたものであった場合は、パケットβに含まれる物品Ｍの移動位置情報Ｄ２が、補助追跡部５０が物品Ｍの追跡を開始するために必要な情報である可能性が有るので、物品管理部１１２は、ステップＳ２１で、パケットβに含まれる情報を補助追跡部５０に送る。以上の処理が完了したら、ステップＳ１０に戻って次の物品情報の受信を待機する。
【００９２】
図１６は、画像処理部１８の物品追跡部３４による追跡処理のフローを示す。物品追跡部３４は、第２周期Ｔ２に対応するタイマ駆動に従って物品Ｍの追跡処理を反復して行うとともに、物品管理部１１２から前述した新規物品情報を受ける度に当該情報を適宜に処理する。物品追跡部３４は、まずステップＳ３０で、一定の時間間隔で発生するタイマの割込み信号を受信するか、又は物品管理部１１２からの新規物品情報を受信し、ステップＳ３１で、割込み信号の受信であったか否かを判断する。割込み信号の受信でなかった場合（つまり新規物品情報を受信した場合）、物品追跡部３４は、ステップＳ３７で、新たに追跡対象となった物品を、予め用意した追跡物品リストに記録して追跡物品リストを更新し、ステップＳ３０に戻って次の受信を待機する。割込み信号の受信であった場合、物品追跡部３４は、物品Ｍの今回の追跡処理を開始する。物品追跡部３４は、ステップＳ３２で、第２カメラ１６Ｂの視野２４（図５）内の二次元画像データを第１解像度（高解像度）で取得し、ステップＳ３３で、視野２４内の二次元画像データを第２解像度（低解像度）で取得する。
【００９３】
ステップＳ３２で取得した第１解像度の画像データは、ステップＳ３５の「補完的検出」（図１８）の処理で使用され、ステップＳ３３で取得した第２解像度の画像データは、ステップＳ３４の「予備的検出」（図１７）の処理で使用される。ステップＳ３５で検出された物品Ｍの情報は、ステップＳ３６の「物品情報送信」（図１９）の処理で物品管理部１１２へ送られる。物品追跡部３４は、物品Ｍの情報を物品管理部１１２へ送った後、同じ物品Ｍに対して実行する次回追跡処理における「予備的検出」及び「補完的検出」のために、ステップＳ３７で、追跡物品リストに記載されている当該物品Ｍの撮像時刻及び移動位置情報Ｄ２を更新する一方で、「補完的検出」において新たに発見された物品Ｍが有る場合は当該物品Ｍを追跡物品リストに追加する。追跡物品リストの更新が完了すると、ステップＳ３０に戻って、次の割込み信号又は新規物品情報の受信を待機する。
【００９４】
図１７は、図１６のフローチャートにおける予備的検出ステップＳ３４の詳細なフローを示す。予備的検出は第２解像度（低解像度）の画像データを使って行われる。物品追跡部３４は、ステップＳ４０で、取得した第２解像度（低解像度）の画像を読み込む。次にステップＳ４１で、今回の追跡対象の物品Ｍの情報が記載されている追跡物品リストを読み込む。読み込んだ追跡物品リストに記載されている物品Ｍの１つずつに対し、追跡処理が実行される。物品追跡部３４は、ステップＳ４２で、今回追跡している物品Ｍが追跡物品リストのｉ番目の物品であることを示すカウンタ変数ｉを、１に初期化する。ステップＳ４３では、カウンタ変数ｉを追跡物品リストに記載されている物品数と比較する。カウンタ変数ｉが物品数を超えた場合は、追跡物品リストに記載されている全ての物品Ｍの追跡が完了したと判断して、予備的検出を終了する。カウンタ変数ｉが物品数を超えていない場合は、物品追跡部３４は、ステップＳ４４で、追跡物品リストのｉ番目の物品Ｍの予備的検出を行う。ここでは予備的検出のアルゴリズムとしてパーティクルフィルタを選択しているが、他の検出アルゴリズムを選択することもできる。
【００９５】
次に物品追跡部３４は、ステップＳ４５で、予備的検出の結果として追跡対象の物品Ｍのおおよその位置情報を取得できたか否か（つまり予備的検出が成功したか否か）を判断し、予備的検出が成功した場合は、ステップＳ４６で、追跡物品リストに記載されている当該物品Ｍの位置情報や撮像時刻等の情報を今回取得した情報に更新する。予備的検出が成功しなかった場合は、第１又は第２機構部１４Ａ、１４Ｂが物品Ｍを取り上げたこと等の理由により、追跡対象の物品Ｍが実際にコンベヤ１２上から消失したことを示唆しているので、その後の追跡を行わないように、ステップＳ４７で、追跡物品リストから当該物品Ｍの情報を削除する。なお図１７のフローチャートでは、１回の検出不成功で物品情報を削除しているが、例えば検出不成功のときに予備的検出を再試行し、３回続けて予備的検出が不成功であった場合に物品情報を削除する等、物品情報を削除する条件を任意に設定することもできる。追跡対象の物品Ｍの予備的検出を再試行している間は、他の物品の追跡結果からコンベヤ１２の運搬速度を算出し、この運搬速度と、前回と今回の予備的検出における物品撮像時刻の間隔とを用いて、追跡対象の物品Ｍの現在の位置及び姿勢を予測することで位置情報を更新することができる。物品情報の更新や削除が完了すると、物品追跡部３４は、ステップＳ４８で、カウンタ変数ｉを１だけ増加させ、ステップＳ４３に戻ってカウンタ変数ｉの評価を行う。
【００９６】
図１８は、図１６のフローチャートにおける補完的検出ステップＳ３５の詳細なフローを示す。補完的検出は、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃの作業領域２２Ａ、２２Ｂ、２２Ｃを撮像した第１解像度（高解像度）の画像データを使って行われる。物品追跡部３４は、ステップＳ５０で、第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃが上流側からｉ番目の機構部であることを示すカウンタ変数ｉを、１に初期化する。次にステップＳ５１で、カウンタ変数ｉを第１〜第３機構部１４Ａ、１４Ｂ、１４Ｃの総台数（この実施形態では３）と比較し、カウンタ変数ｉが総台数を超えた場合は、今回の追跡処理における補完的検出を完了する。カウンタ変数ｉが総台数を超えていない場合は、物品追跡部３４は、ステップＳ５２で、ｉ番目の機構部の作業領域が第２カメラ１６Ｂの視野２４内に有るか否かをチェックする。ｉ番目の機構部の作業領域が視野２４内に有れば、ステップＳ５３で、ｉ番目の機構部の作業領域を撮像した第１解像度（高解像度）の画像データを読み込む。作業領域が視野内に有るか否かのチェックは、ロボット座標系における作業領域の座標値をカメラ座標系に変換して行ってもよいし、使用者が作業領域を予め追跡範囲として指定して行ってもよい。図５の実施形態では、第１機構部１４Ａの作業領域２２Ａと第２機構部１４Ｂの作業領域２２Ｂとが視野２４内にあるので、ｉ＝１又は２のときにステップＳ５３を実行する。ｉ番目の機構部の作業領域が視野２４内に無ければ、ステップＳ６６に移行してカウンタ変数ｉを１だけ増加させ、ステップＳ５１に戻る。
【００９７】
次に物品追跡部３４は、ステップＳ５４で、ｉ番目の機構部の作業領域内で今回の追跡対象となる物品Ｍが運搬方向下流側からｊ番目の物品であることを示すカウンタ変数ｊを１に初期化するとともに、今回追跡処理で実際に補完的検出に成功した物品数を示すカウンタ変数ｋを０に初期化する。補完的検出は、機構部がその作業領域内で物品Ｍを実際に把持して取り上げるために行うものであるから、作業領域に存在する全ての物品に対して常に行う必要はなく、運搬方向下流側から数えて、一度の作業で機構部が取り上げる個数（つまり実際のアプリケーションに応じて決まる必要検出個数）の物品を検出できればよい。そこで物品追跡部３４は、ステップＳ５５で、カウンタ変数ｋを必要検出個数と比較し、必要検出個数以上であれば、その作業領域での補完的検出を終了して、ステップＳ６６へ移行する。カウンタ変数ｋが必要検出個数に達していない場合、物品追跡部３４は、ステップＳ５６で、追跡対象となる運搬方向下流側からｊ番目の物品Ｍが、ｉ番目の機構部の作業領域内に存在するか否かをチェックする。
【００９８】
追跡対象となるｊ番目の物品Ｍがｉ番目の機構部の作業領域に存在していない場合は、その作業領域での補完的検出を終了して、ステップＳ６６へ移行する。ｊ番目の物品Ｍがｉ番目の機構部の作業領域に存在している場合は、ステップＳ５７で、予備的検出（図１７）で取得されている当該物品Ｍのおおよその位置情報に基づき検出範囲を絞り込む（例えば二次元画像上の物品ＭのＸ軸方向及びＹ軸方向の寸法のそれぞれ２倍程度の範囲に絞り込む）とともに、検出用パラメータの範囲を比較的狭い範囲（例えば回転角度の場合に前回検出結果±５度程度）に設定して、この第１の検出用パラメータで物品Ｍの補完的検出を実行する。このときの検出アルゴリズムは、正規化相関法や一般化ハフ変換法を使用できる。
【００９９】
物品追跡部３４は、ステップＳ５８で、第１の検出用パラメータによる物品Ｍの補完的検出が成功したか否かをチェックする。補完的検出が成功した場合は、物品追跡部３４は、ステップＳ６３に移行してカウンタ変数ｋを１だけ増加させ、ステップＳ６４で、補完的検出によって取得した物品Ｍの情報を追跡物品リストに反映する。補完的検出が成功しなかった場合は、図１４を参照して説明したように、当該物品Ｍがコンベヤ１２上で位置ずれを生じたものであったり、他の物品を隠蔽していた当該物品Ｍが既に機構部に取り上げられた結果として隠蔽されていた物品Ｍが新たに検出されたものであったり等、前回追跡処理における検出時に比べて物品Ｍの状態が変化している可能性が高い。そこで物品追跡部３４は、ステップＳ５９で、第１の検出用パラメータよりも広い範囲（例えば回転角度の場合に前回検出結果±１８０度程度）に設定した第２の検出用パラメータで、物品Ｍの補完的検出を実行する。
【０１００】
物品追跡部３４は、ステップＳ６０で、第２の検出用パラメータによる物品Ｍの補完的検出が成功したか否かをチェックする。補完的検出が成功した場合は、物品追跡部３４は、ステップＳ６１で、当該物品Ｍを前回追跡処理までは存在しなかった新たな物品として扱うべく新規フラグを設定し、次いでステップＳ６３で、カウンタ変数ｋを１だけ増加させ、ステップＳ６４で、補完的検出によって取得した物品Ｍの情報を追跡物品リストに反映する。この物品Ｍの情報は、追跡処理は前回から継続して行われているものの新たな物品の情報として追跡物品リストに記載されるので、前述したように物品管理部１１２がパケットβではなくパケットαの情報として扱うことになる。
【０１０１】
補完的検出が成功しなかった場合は、物品Ｍの予備的検出には成功したものの、初期検出時や前回の補完的検出時に比べて物品Ｍの位置や姿勢の変化が想定範囲を逸脱している等、当該物品Ｍを取り出せる状況ではないことが考えられる。そこで物品追跡部３４は、ステップＳ６２で送信不可フラグを設定し、ステップＳ６４で、追跡物品リストに記載されている物品Ｍの情報に送信不可フラグを付加して物品情報を更新する。その後、物品追跡部３４は、ステップＳ６５でカウンタ変数ｊを１だけ増加させ、ステップＳ５５に戻って補完的検出を繰り返す。
【０１０２】
図１９は、図１６のフローチャートにおける物品情報送信ステップＳ３６の詳細なフローを示す。物品追跡部３４は、まずステップＳ７０で、物品管理部１１２に物品情報を送信した物品の個数を示すカウンタ変数ｉを１に初期化する。次にステップＳ７１で、前述した予備的検出及び補完的検出の結果として物品管理部１１２に送信されるべき情報を得ている物品の総数をカウンタ変数ｉと比較し、カウンタ変数ｉが物品総数を超えていれば物品情報の送信を終了する。カウンタ変数ｉが物品総数を超えていない場合は、物品追跡部３４はステップＳ７２で、物品情報を情報管理部１１２へ送信する。その後、物品追跡部３４は、ステップＳ７３でカウンタ変数ｉを１だけ増加させ、ステップＳ７１に戻る。
【０１０３】
図２０は、第１制御部２０Ａの情報管理部１０６Ａ（図１１）の処理フローを示す。情報管理部１０６Ａは、物品情報やトレイ５４の整列パターン５８（図６）の情報のタイマ駆動に従う更新処理、トレイ検出部１０４から送られるトレイ検出情報に対する処理、物品管理部１１２から送られる物品情報に対する処理を行う。情報管理部１０６Ａは、まずステップＳ８０で、一定の時間間隔で発生するタイマの割込み信号を受信するか、又は物品管理部１１２からの物品情報（パケットα、パケットβ）若しくはトレイ検出部１０４からのトレイ検出情報を受信し、ステップＳ８１で、割込み信号の受信であったか否かを判断する。割込み信号の受信であった場合、情報管理部１０６Ａは、所定周期で行うべき以下の処理を実行する。つまりステップＳ８７で、パケットβによる情報更新が所定時間に渡って物品管理部１１２から送られない物品の情報を削除する。またステップＳ８８で、物品の現在位置に基づき必要に応じて作業実行部１０８Ａ又は第２制御部２０Ｂの情報管理部１０６Ｂに物品情報を送信する（詳細は図２１）。またステップＳ８９で、トレイ５４の整列パターン５８における個々のパターン要素の現在位置情報に基づき必要に応じて作業実行部１０８Ａ又は第２制御部２０Ｂの情報管理部１０６Ｂに整列パターン情報（後述する）を送信する（詳細は図２２）。これらの処理を行った後、情報管理部１０６Ａは、ステップＳ８０に戻って次の受信を待機する。
【０１０４】
割込み信号の受信でなかった場合、情報管理部１０６ＡはステップＳ８２で、トレイ検出情報の受信であったか否かをチェックする。トレイ検出情報の受信であった場合、情報管理部１０６ＡはステップＳ８５で、整列パターン５８を定義する整列フォーム５９（図６）の情報から、個々のパターン要素の位置情報を含む整列パターン情報を生成する。整列パターン情報には、トレイ５４を検出した瞬間のエンコーダ５２の検出値も含まれており、現在のエンコーダ５２の検出値を読み取ることで個々のパターン要素の位置情報を随時更新できる。
【０１０５】
トレイ検出情報の受信でなかった場合は、物品管理部１１２から物品情報を受信したことになるので、情報管理部１０６Ａは、ステップＳ８３で、受信した物品情報がパケットαの情報か否かをチェックする。パケットαの情報であった場合には、新規の物品情報であるから、情報管理部１０６ＡはステップＳ８６で、第１〜第３制御部２０Ａ、２０Ｂ、２０Ｃの間で管理するためのパケットγの情報を生成する。パケットαの情報でなかった場合は、受信した物品情報はパケットβの情報（つまり既存の物品情報の更新）であるから、情報管理部１０６ＡはステップＳ８４で、第１制御部２０Ａの中で管理しているパケットγの情報をパケットβに従って更新する。
【０１０６】
図２１は、図２０のフローチャートにおける物品情報送信ステップＳ８８の詳細なフローを示す。情報管理部１０６Ａは、ステップＳ９０で、物品Ｍが第１機構部１４Ａの作業領域２２Ａを通過したか否かをチェックする。物品Ｍが作業領域２２Ａを通過していれば、下流側に設置された第２機構部１４Ｂ又は第３機構部１４Ｃの作業のために、情報管理部１０６ＡはステップＳ９４で、物品Ｍのパケットγの情報を第２制御部２０Ｂの情報管理部１０６Ｂへ送り、物品情報送信を終了する。物品Ｍがまだ作業領域２２Ａを通過していない場合は、情報管理部１０６ＡはステップＳ９１で、当該物品Ｍが、予め設定された作業割合に従って第１機構部１４Ａが移送すべき物品であるか否かをチェックする。
【０１０７】
例えば、第１機構部１４Ａ：第２機構部１４Ｂ：第３機構部１４Ｃ＝１:１:１の作業割合が設定されていた場合、第１機構部１４Ａは１個の物品を取り上げて２個の物品を見送るように作業を繰り返す。第１機構部１４Ａのハンドが同時に２個の物品を把持可能な場合は、第１機構部１４Ａは２個の物品をまとめて取り上げた後に４個の物品を見送るように作業できる。その時点での第１機構部１４Ａの作業割合を勘案して、第１機構部１４Ａが移送すべき物品ではないと判断した場合は、物品情報送信を終了する。第１機構部１４Ａが移送すべき物品であると判断した場合、情報管理部１０６Ａは、ステップＳ９２で、当該物品Ｍが第１機構部１４Ａの作業領域２２Ａ内に存在するか否かをチェックする。作業領域２２Ａ内に存在する場合には、ステップＳ９３で、物品Ｍのパケットγの情報を作業実行部１０８Ａに送り、物品情報送信を終了する。
【０１０８】
図２２は、図２０のフローチャートにおける整列パターン情報送信ステップＳ８９の詳細なフローを示す。情報管理部１０６Ａは、ステップＳ１００で、現在のエンコーダ５６の値から個々のパターン要素の位置情報を更新する。次にステップＳ１０１で、パターン要素が第１機構部１４Ａの作業領域２２Ａを通過したか否かをチェックする。パターン要素が作業領域２２Ａを通過していれば、下流側に設置された第２機構部１４Ｂ又は第３機構部１４Ｃの作業のために、情報管理部１０６ＡはステップＳ１０５で、整列パターン情報を第２制御部２０Ｂの情報管理部１０６Ｂへ送り、整列パターン情報送信を終了する。パターン要素がまだ作業領域２２Ａを通過していない場合は、情報管理部１０６ＡはステップＳ１０２で、当該パターン要素が、予め設定された作業割合に従って第１機構部１４Ａが物品を置くべきパターン要素であるか否かをチェックする。その時点での第１機構部１４Ａの作業割合を勘案して、第１機構部１４Ａが物品を置くべきパターン要素でないと判断した場合は、整列パターン情報送信を終了する。
【０１０９】
第１機構部１４Ａが物品を置くべきパターン要素であると判断した場合、情報管理部１０６Ａは、ステップＳ１０３で、当該パターン要素が第１機構部１４Ａの作業領域２２Ａ内に存在するか否かをチェックする。作業領域２２Ａ内に存在する場合には、ステップＳ１０４で、整列パターン情報を作業実行部１０８Ａに送り、整列パターン情報送信を終了する。作業実行部１０８Ａは、情報管理部１０６Ａから受信した物品Ｍのパケットγの情報と整列パターン情報とに基づき、コンベヤ１２から物品Ｍを取り上げて排出コンベヤ４２上のトレイ５４に所定の整列パターンで置く物品移送作業を実行する。
【０１１０】
図２０〜図２２は、第１制御部２０Ａの情報管理部１０６Ａの処理フローを示すものであるが、第２制御部２０Ｂの情報管理部１０６Ｂ及び第３制御部２０Ｃの情報管理部１０６Ｃも、トレイ検出情報の処理やパケットαの処理を行わない点を除き、情報管理部１０６Ａの処理フローと実質的に同一の処理を実行できる。
【符号の説明】
【０１１１】
１０、４０    物品移送装置
１２    コンベヤ
１４    ロボット
１４Ａ    第１機構部
１４Ｂ    第２機構部
１４Ｃ    第３機構部
１６    撮像部
１６Ａ    第１カメラ
１６Ｂ    第２カメラ
１６Ｃ    第３カメラ
１８    画像処理部
２０    ロボット制御部
２０Ａ    第１制御部
２０Ｂ    第２制御部
２０Ｃ    第３制御部
２２、２２Ａ、２２Ｂ、２２Ｃ    作業領域
２４、２４ａ    視野
３２    物品検出部
３４    物品追跡部
４２    排出コンベヤ
４４、４６    視野
５０    補助追跡部
５４    トレイ
５８    整列パターン
【図１】
0006042860.tif 000002
【図２】
0006042860.tif 000003
【図３】
0006042860.tif 000004
【図４】
0006042860.tif 000005
【図５】
0006042860.tif 000006
【図６】
0006042860.tif 000007
【図７】
0006042860.tif 000008
【図８】
0006042860.tif 000009
【図９】
0006042860.tif 000010
【図１０】
0006042860.tif 000011
【図１１】
0006042860.tif 000012
【図１２】
0006042860.tif 000013
【図１３】
0006042860.tif 000014
【図１４】
0006042860.tif 000015
【図１５】
0006042860.tif 000016
【図１６】
0006042860.tif 000017
【図１７】
0006042860.tif 000018
【図１８】
0006042860.tif 000019
【図１９】
0006042860.tif 000020
【図２０】
0006042860.tif 000021
【図２１】
0006042860.tif 000022
【図２２】
0006042860.tif 000023