(57)【要約】【課題】コンベヤ上の不規則配置の物品群をロボットがコンベヤに追従しながら規則配置に整列させる技術において、物品整列作業を仮想空間で模擬的に実行できるようにする。【解決手段】シミュレーション装置１０は、コンベヤモデル１６Ｍ、複数の物品モデル１８Ｍ、センサモデル２０Ｍ及び整列ロボットモデル１４Ｍを仮想空間に配置するモデル配置部４０と、コンベヤモデル１６Ｍに物品モデル１８Ｍを不規則配置で運搬させる運搬動作シミュレート部４４と、センサモデル２０Ｍに物品モデル１８Ｍの位置情報Ｄｐを取得させる検出動作シミュレート部４６と、コンベヤモデル１６Ｍの上に整列パターンＰを生成する整列パターン生成部４８と、整列ロボットモデル１４Ｍに、物品運搬動作に追従しながら不規則配置の物品モデル１８Ｍを取り上げさせるとともに取り上げた物品モデル１８Ｍを整列パターンＰに従って置かせる整列動作シミュレート部５０とを備える。【選択図】図１
2018069377.tif 000002
【特許請求の範囲】
【請求項１】
ロボットが行う物品整列作業のシミュレーション装置であって、
コンベヤ、該コンベヤに搭載される複数の物品、該複数の物品を検出するセンサ、及び該複数の物品を該コンベヤの上で整列させる整列ロボットを、それぞれにモデル化したコンベヤモデル、複数の物品モデル、センサモデル及び整列ロボットモデルを、仮想空間に配置するモデル配置部と、
前記複数の物品モデルを前記コンベヤモデルが不規則配置で搭載して運搬する物品運搬動作を、模擬的に遂行する運搬動作シミュレート部と、
前記不規則配置で運搬される前記複数の物品モデルの各々の位置情報を前記センサモデルが取得する物品検出動作を、模擬的に遂行する検出動作シミュレート部と、
それぞれが前記物品モデルの位置を表す複数のパターン要素を予め定めた規則配置で有する整列パターンを、前記位置情報を用いて前記コンベヤモデルの上に生成する整列パターン生成部と、
前記整列ロボットモデルが前記物品運搬動作に追従しながら前記不規則配置の前記物品モデルの各々を取り上げるとともに取り上げた前記物品モデルを前記整列パターンに従って置く物品整列動作を、前記物品運搬動作の情報と前記位置情報とを用いて模擬的に遂行する整列動作シミュレート部と、
を具備するシミュレーション装置。
【請求項２】
前記モデル配置部はさらに、前記整列ロボットが整列させた前記複数の物品を一括して移送する移送ロボットをモデル化した移送ロボットモデルを、前記仮想空間に配置する、請求項１に記載のシミュレーション装置であって、
前記整列パターンに従って置かれた複数の前記物品モデルを前記移送ロボットモデルが前記物品運搬動作に追従しながら一括して取り上げて移送する物品移送動作を、前記物品運搬動作の情報を用いて模擬的に遂行する移送動作シミュレート部をさらに具備する、
請求項１に記載のシミュレーション装置。
【請求項３】
前記整列パターン生成部は、前記複数のパターン要素のいずれか１つの第１パターン要素が、前記不規則配置で置かれた前記複数の物品モデルのいずれか１つの基準物品モデルの位置に整合するように、前記整列パターンを生成する、請求項１又は２に記載のシミュレーション装置。
【請求項４】
前記整列動作シミュレート部は、生成された前記整列パターンにおける前記第１パターン要素を除く第２パターン要素に配置可能な前記物品モデルと、前記基準物品モデルを含む他の前記物品モデルとの間に、干渉が生じるか否かを、前記複数の物品モデルの各々の形状情報と前記位置情報とを用いて予測して判定するとともに、該干渉の判定結果を考慮して前記物品整列動作を模擬的に遂行する、
請求項３に記載のシミュレーション装置。
【請求項５】
ロボットが行う物品整列作業をコンピュータで模擬的に実行するシミュレーション方法であって、
コンピュータのモデル配置部が、コンベヤ、該コンベヤに搭載される複数の物品、該複数の物品を検出するセンサ、及び該複数の物品を該コンベヤの上で整列させる整列ロボットを、それぞれにモデル化したコンベヤモデル、複数の物品モデル、センサモデル及び整列ロボットモデルを、仮想空間に配置するステップと、
コンピュータの運搬動作シミュレート部が、前記複数の物品モデルを前記コンベヤモデルが不規則配置で搭載して運搬する物品運搬動作を、模擬的に遂行するステップと、
コンピュータの検出動作シミュレート部が、前記不規則配置で運搬される前記複数の物品モデルの各々の位置情報を前記センサモデルが取得する物品検出動作を、模擬的に遂行するステップと、
コンピュータの整列パターン生成部が、それぞれが前記物品モデルの位置を表す複数のパターン要素を予め定めた規則配置で有する整列パターンを、前記位置情報を用いて前記コンベヤモデルの上に生成するステップと、
コンピュータの整列動作シミュレート部が、前記整列ロボットモデルが前記物品運搬動作に追従しながら前記不規則配置の前記物品モデルの各々を取り上げるとともに取り上げた前記物品モデルを前記整列パターンに従って置く物品整列動作を、前記物品運搬動作の情報と前記位置情報とを用いて模擬的に遂行するステップと、
を具備するシミュレーション方法。
【請求項６】
前記仮想空間に配置するステップは、前記モデル配置部が、前記整列ロボットが整列させた前記複数の物品を一括して移送する移送ロボットをモデル化した移送ロボットモデルを、前記仮想空間に配置するステップを含む、請求項５に記載のシミュレーション方法であって、
コンピュータの移送動作シミュレート部が、前記整列パターンに従って置かれた複数の前記物品モデルを前記移送ロボットモデルが前記物品運搬動作に追従しながら一括して取り上げて移送する物品移送動作を、前記物品運搬動作の情報を用いて模擬的に遂行するステップをさらに具備する、
請求項５に記載のシミュレーション方法。
【請求項７】
ロボットが行う物品整列作業を模擬的に実行するために、コンピュータを、
コンベヤ、該コンベヤに搭載される複数の物品、該複数の物品を検出するセンサ、及び該複数の物品を該コンベヤの上で整列させる整列ロボットを、それぞれにモデル化したコンベヤモデル、複数の物品モデル、センサモデル及び整列ロボットモデルを、仮想空間に配置するモデル配置部、
前記複数の物品モデルを前記コンベヤモデルが不規則配置で搭載して運搬する物品運搬動作を、模擬的に遂行する運搬動作シミュレート部、
前記不規則配置で運搬される前記複数の物品モデルの各々の位置情報を前記センサモデルが取得する物品検出動作を、模擬的に遂行する検出動作シミュレート部、
それぞれが前記物品モデルの位置を表す複数のパターン要素を予め定めた規則配置で有する整列パターンを、前記位置情報を用いて前記コンベヤモデルの上に生成する整列パターン生成部、並びに
前記整列ロボットモデルが前記物品運搬動作に追従しながら前記不規則配置の前記物品モデルの各々を取り上げるとともに取り上げた前記物品モデルを前記整列パターンに従って置く物品整列動作を、前記物品運搬動作の情報と前記位置情報とを用いて模擬的に遂行する整列動作シミュレート部、
として機能させるためのシミュレーションプログラム。
【請求項８】
ロボットが行う物品整列作業を模擬的に実行するために、コンピュータを、
コンベヤ、該コンベヤに搭載される複数の物品、該複数の物品を検出するセンサ、及び該複数の物品を該コンベヤの上で整列させる整列ロボットを、それぞれにモデル化したコンベヤモデル、複数の物品モデル、センサモデル及び整列ロボットモデルを、仮想空間に配置するモデル配置部、
前記複数の物品モデルを前記コンベヤモデルが不規則配置で搭載して運搬する物品運搬動作を、模擬的に遂行する運搬動作シミュレート部、
前記不規則配置で運搬される前記複数の物品モデルの各々の位置情報を前記センサモデルが取得する物品検出動作を、模擬的に遂行する検出動作シミュレート部、
それぞれが前記物品モデルの位置を表す複数のパターン要素を予め定めた規則配置で有する整列パターンを、前記位置情報を用いて前記コンベヤモデルの上に生成する整列パターン生成部、並びに
前記整列ロボットモデルが前記物品運搬動作に追従しながら前記不規則配置の前記物品モデルの各々を取り上げるとともに取り上げた前記物品モデルを前記整列パターンに従って置く物品整列動作を、前記物品運搬動作の情報と前記位置情報とを用いて模擬的に遂行する整列動作シミュレート部、
として機能させるためのシミュレーションプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットが行う物品整列作業を模擬的に遂行するシミュレーション装置及びシミュレーション方法に関する。本発明はまた、ロボットが行う物品整列作業を模擬的に遂行するためのシミュレーションプログラムを記録した記録媒体及びそのシミュレーションプログラムに関する。
【背景技術】
【０００２】
コンベヤで運搬される複数の物品を視覚センサで検出し、ロボットが、検出された物品の位置情報に基づき、コンベヤの運搬動作に追従しながら個々の物品を把持して取り上げるシステムは知られている。例えば特許文献１は、コンベヤに不規則配置で搭載された複数の物品を、ロボットが、視覚センサの検出情報とコンベヤの運搬動作情報とに基づき、コンベヤの運搬動作に追従しながら個別に取り上げて、コンベヤ上で所定の規則配置に整列させるシステム構成を開示する。特許文献１には、上記ロボットとは別の移送ロボットが、コンベヤ上で規則配置に整列した複数の物品を一括把持して他の場所へ移送するシステム構成も記載されている。
【０００３】
他方、物品を把持するロボットを有する生産システムにおいて、ロボットや周辺装置に所定の作業を行わせるための作業プログラムや作業パラメータの妥当性を検証するべく、コンピュータにロボットや周辺装置のモデルを持たせ、表示画面上でロボットモデルや周辺装置モデルを作業プログラムに従って動作させて所定の作業を模擬的に実行させるシミュレーション技術が知られている（例えば特許文献２及び３参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−２１４０１２号公報
【特許文献２】特開２０１０−２１４５５６号公報
【特許文献３】特開２００７−２４１８５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
コンベヤに不規則配置で搭載された複数の物品を、ロボットがコンベヤの運搬動作に追従しながら個別に取り上げて規則配置に整列させるシステム構成において、ロボットが行う物品整列作業を仮想空間で模擬的に実行することで、作業プログラムや作業パラメータの妥当性を仮想空間で検証でき、以てシステム立ち上げに要する時間や費用を削減できるようにすることが望まれている。
【課題を解決するための手段】
【０００６】
本発明の一態様は、ロボットが行う物品整列作業のシミュレーション装置であって、コンベヤ、コンベヤに搭載される複数の物品、複数の物品を検出するセンサ、及び複数の物品をコンベヤの上で整列させる整列ロボットを、それぞれにモデル化したコンベヤモデル、複数の物品モデル、センサモデル及び整列ロボットモデルを、仮想空間に配置するモデル配置部と、複数の物品モデルをコンベヤモデルが不規則配置で搭載して運搬する物品運搬動作を、模擬的に遂行する運搬動作シミュレート部と、不規則配置で運搬される複数の物品モデルの各々の位置情報をセンサモデルが取得する物品検出動作を、模擬的に遂行する検出動作シミュレート部と、それぞれが物品モデルの位置を表す複数のパターン要素を予め定めた規則配置で有する整列パターンを、物品モデルの位置情報を用いてコンベヤモデルの上に生成する整列パターン生成部と、整列ロボットモデルが物品運搬動作に追従しながら不規則配置の物品モデルの各々を取り上げるとともに取り上げた物品モデルを整列パターンに従って置く物品整列動作を、物品運搬動作の情報と物品モデルの位置情報とを用いて模擬的に遂行する整列動作シミュレート部と、を具備するシミュレーション装置である。
【０００７】
上記したシミュレーション装置は、モデル配置部がさらに、整列ロボットが整列させた複数の物品を一括して移送する移送ロボットをモデル化した移送ロボットモデルを、仮想空間に配置する構成において、整列パターンに従って置かれた複数の物品モデルを移送ロボットモデルが物品運搬動作に追従しながら一括して取り上げて移送する物品移送動作を、物品運搬動作の情報を用いて模擬的に遂行する移送動作シミュレート部をさらに具備することができる。
【０００８】
本発明の他の態様は、ロボットが行う物品整列作業をコンピュータで模擬的に実行するシミュレーション方法であって、コンピュータのモデル配置部が、コンベヤ、コンベヤに搭載される複数の物品、複数の物品を検出するセンサ、及び複数の物品をコンベヤの上で整列させる整列ロボットを、それぞれにモデル化したコンベヤモデル、複数の物品モデル、センサモデル及び整列ロボットモデルを、仮想空間に配置するステップと、コンピュータの運搬動作シミュレート部が、複数の物品モデルをコンベヤモデルが不規則配置で搭載して運搬する物品運搬動作を、模擬的に遂行するステップと、コンピュータの検出動作シミュレート部が、不規則配置で運搬される複数の物品モデルの各々の位置情報をセンサモデルが取得する物品検出動作を、模擬的に遂行するステップと、コンピュータの整列パターン生成部が、それぞれが物品モデルの位置を表す複数のパターン要素を予め定めた規則配置で有する整列パターンを、物品モデルの位置情報を用いてコンベヤモデルの上に生成するステップと、コンピュータの整列動作シミュレート部が、整列ロボットモデルが物品運搬動作に追従しながら不規則配置の物品モデルの各々を取り上げるとともに取り上げた物品モデルを整列パターンに従って置く物品整列動作を、物品運搬動作の情報と物品モデルの位置情報とを用いて模擬的に遂行するステップと、を具備するシミュレーション方法である。
【０００９】
本発明のさらに他の態様は、ロボットが行う物品整列作業を模擬的に実行するために、コンピュータを、コンベヤ、コンベヤに搭載される複数の物品、複数の物品を検出するセンサ、及び複数の物品をコンベヤの上で整列させる整列ロボットを、それぞれにモデル化したコンベヤモデル、複数の物品モデル、センサモデル及び整列ロボットモデルを、仮想空間に配置するモデル配置部、複数の物品モデルをコンベヤモデルが不規則配置で搭載して運搬する物品運搬動作を、模擬的に遂行する運搬動作シミュレート部、不規則配置で運搬される複数の物品モデルの各々の位置情報をセンサモデルが取得する物品検出動作を、模擬的に遂行する検出動作シミュレート部、それぞれが物品モデルの位置を表す複数のパターン要素を予め定めた規則配置で有する整列パターンを、物品モデルの位置情報を用いてコンベヤモデルの上に生成する整列パターン生成部、並びに整列ロボットモデルが物品運搬動作に追従しながら不規則配置の物品モデルの各々を取り上げるとともに取り上げた物品モデルを整列パターンに従って置く物品整列動作を、物品運搬動作の情報と物品モデルの位置情報とを用いて模擬的に遂行する整列動作シミュレート部、として機能させるためのシミュレーションプログラムである。
【００１０】
本発明のさらに他の態様は、ロボットが行う物品整列作業を模擬的に実行するために、コンピュータを、コンベヤ、コンベヤに搭載される複数の物品、複数の物品を検出するセンサ、及び複数の物品をコンベヤの上で整列させる整列ロボットを、それぞれにモデル化したコンベヤモデル、複数の物品モデル、センサモデル及び整列ロボットモデルを、仮想空間に配置するモデル配置部、複数の物品モデルをコンベヤモデルが不規則配置で搭載して運搬する物品運搬動作を、模擬的に遂行する運搬動作シミュレート部、不規則配置で運搬される複数の物品モデルの各々の位置情報をセンサモデルが取得する物品検出動作を、模擬的に遂行する検出動作シミュレート部、それぞれが物品モデルの位置を表す複数のパターン要素を予め定めた規則配置で有する整列パターンを、物品モデルの位置情報を用いてコンベヤモデルの上に生成する整列パターン生成部、並びに整列ロボットモデルが物品運搬動作に追従しながら不規則配置の物品モデルの各々を取り上げるとともに取り上げた物品モデルを整列パターンに従って置く物品整列動作を、物品運搬動作の情報と物品モデルの位置情報とを用いて模擬的に遂行する整列動作シミュレート部、として機能させるためのシミュレーションプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【００１１】
一態様に係るシミュレーション装置では、運搬動作シミュレート部、検出動作シミュレート部、整列パターン生成部及び整列動作シミュレート部が、仮想空間に配置したコンベヤモデル、センサモデル及び整列ロボットモデルに、仮想空間に配置した複数の物品モデルに対する物品運搬動作、物品検出動作及び物品整列動作を模擬的に遂行させることにより、整列ロボットモデルが、コンベヤモデルに不規則配置で搭載された複数の物品モデルを、コンベヤモデルの運搬動作に追従しながら個別に取り上げてコンベヤモデル上で所定の規則配置に整列させることが可能か否か（つまり現実のロボットシステムにおける物品整列作業に関する作業プログラムや作業パラメータの妥当性）を、仮想空間において検証することができる。シミュレーション装置において模擬的に実行した物品整列作業に問題が発見された場合は、問題を解消するべく作業プログラムや作業パラメータを適宜に修正することができる。また現実のロボットシステムの構成が変更された場合にも、シミュレーション装置において、変更されたロボットシステムに対応する物品整列作業を模擬的に実行することで、作業プログラムや作業パラメータを最適化することができる。したがってシミュレーション装置によれば、生産現場でのロボットシステムの立ち上げに要する時間や費用を削減できる。
【００１２】
他の態様に係るシミュレーション方法、シミュレーションプログラム、記録媒体も、同等の効果を奏する。
【図面の簡単な説明】
【００１３】
【図１】一実施形態によるシミュレーション装置の構成を示す機能ブロック図である。
【図２】シミュレーションの対象となるロボットシステムの一構成例を模式的に示す図である。
【図３Ａ】整列パターンの一例を模式的に示す図である。
【図３Ｂ】整列パターンに従って整列された物品の一例を示す図である。
【図３Ｃ】パターン要素を定義する整列フォームの一例を示すテーブルである。
【図４】シミュレーション装置に付設可能な表示装置の一例を、シミュレーションプログラムを記録した記録媒体の一例と共に示す図である。
【図５】一実施形態によるシミュレーション方法を説明するフローチャートである。
【図６】一実施形態によるシミュレーション方法を説明する図で、仮想空間に配置されたモデル群を示す図である。
【図７Ａ】仮想空間で生成される整列パターンの一例を示す図である。
【図７Ｂ】仮想空間で生成される整列パターンの他の例を示す図である。
【図８Ａ】仮想空間で生成された整列パターンの一例を物品モデルの一例と共に示す図である。
【図８Ｂ】仮想空間で生成された整列パターンの他の例を物品モデルの他の例と共に示す図である。
【図８Ｃ】仮想空間で生成された整列パターンの他の例を物品モデルの他の例と共に示す図である。
【図９】一実施形態によるシミュレーション方法を説明する図で、物品整列動作の遂行中の状態を示す図である。
【図１０】他の実施形態によるシミュレーション装置の構成を示す機能ブロック図である。
【図１１】シミュレーションの対象となるロボットシステムの他の構成例を模式的に示す図である。
【図１２】他の実施形態によるシミュレーション方法を説明するフローチャートである。
【図１３】他の実施形態によるシミュレーション方法を説明する図で、仮想空間に配置されたモデル群を動作させた状態を示す図である。
【発明を実施するための形態】
【００１４】
以下、添付図面を参照して本発明の実施の形態を説明する。全図面に渡り、対応する構成要素には共通の参照符号を付す。
図１は、一実施形態によるシミュレーション装置１０の基本構成を機能ブロック図で示す。図２は、シミュレーション装置１０が実行するシミュレーションの対象となるロボットシステム１２の一構成例を模式的に示す。シミュレーション装置１０は、ロボットシステム１２においてロボット１４が行う物品整列作業をオフラインで模擬的に実行するものであって、例えばパーソナルコンピュータ等のコンピュータに所要のソフトウェアをインストールすることにより構成できる。シミュレーション装置１０は、機能上、ロボット１４に物品整列作業を教示するオフライン教示（又はオフラインプログラミング）装置と見なすこともできる。
【００１５】
まずロボットシステム１２の構成を概略説明する。ロボットシステム１２は、コンベヤ１６に不規則配置で搭載された複数の物品１８を、ロボット１４が、センサ（例えば視覚センサ）２０の検出情報とコンベヤ１６の運搬動作情報とに基づき、コンベヤ１６の運搬動作に追従しながら個別に取り上げて、コンベヤ１６上で所定の規則配置に整列させる構成を有する。さらに詳述すると、ロボットシステム１２は、物品１８を把持するロボット１４と、物品１８を運搬するコンベヤ１６と、コンベヤ１６に不規則配置で搭載された複数の物品１８のそれぞれの位置情報Ｄｐを取得するセンサ２０と、コンベヤ１６の運搬動作情報Ｄｍを取得するコンベヤセンサ２２と、ロボット１４を制御する制御装置２４と、コンベヤ１６を制御するコンベヤ制御装置２６とを備える。
【００１６】
物品１８は、様々な形状及び寸法を有することができる。不規則配置で置かれた複数の物品１８は、様々な形状や寸法を有するものが混在していてもよいし、全てが同一形状及び同一寸法を有していてもよい。不規則配置とは、特定の形態に並べることが何ら意図されず無作為に置かれた配置であって、複数の物品１８を真上から見たときの二次元的広がり（例えばセンサ２０が取得する画像）の中で個々の物品１８が多様な位置や姿勢を呈する配置を意味する。これに対し、規則配置とは、上記二次元的広がりの中で複数の物品１８が、直線状、曲線状、ジグザグ状、環状等の特定の規則に従って並ぶ配置を意味する。規則配置において、個々の物品１８の姿勢（すなわち向き）は同一であっても異なっていてもよく、また隣り合う物品１８の間隔は同一であっても異なっていてもよい。なお本願において、物品１８は、未加工ワーク、加工済ワーク、農産物、工業製品等の、様々な対象物を含む。
【００１７】
ロボット１４は、多関節型、ガントリ型、パラレルリンク型等の、公知の種々の機構部から適宜選択した機構部と、吸着型、把握型等の、公知の種々のハンドから適宜選択したハンドとを備えることができる。ロボット１４は、ロボットシステム１２で実施される物品整列作業に特化された構成を有する必要が無く、ハンドを含めて汎用的構成を有することができる（但し以下の説明では、識別のため「整列ロボット１４」と称する。）。
【００１８】
センサ２０は、ＣＣＤカメラ等の撮像部（以下、カメラ２８と称する。）と、カメラ２８が撮像したデータを処理する画像処理部とを備える。画像処理部は、専用の画像処理装置（図示せず）であってもよいし、後述するように制御装置２４の一機能であってもよい。センサ２０は、カメラ２８が自己の視野内に不規則配置で置かれた複数の物品１８を真上から撮像し、物品１８の存在を検出するとともに、予め定めた三次元のカメラ座標系における個々の物品１８の位置（座標値）及び姿勢（回転角度）の情報（三次元データ）を取得する。センサ２０が取得する位置情報Ｄｐとは、物品１８の位置及び姿勢の情報を含むものであるが、例えば、物品１８の把持位置を限定しない吸着型ハンドが整列ロボット１４に装備され、かつ規則配置に整列した複数の物品１８が多様な姿勢を呈する構成のように、位置情報Ｄｐが物品１８の姿勢の情報を含まなくともよい場合もある。またセンサ２０は、撮像データから、個々の物品１８の二次元的外形の情報（すなわち形状情報Ｄｓ）を取得することもできる。物品１８の形状情報Ｄｓは、予めオペレータが制御装置２４に入力しておくこともできる。なおセンサ２０は、物品１８の位置情報Ｄｐ及び必要に応じて形状情報Ｄｓを取得できるものであれば、カメラ２８を有する視覚センサに限定されず、公知の様々なセンサを採用できる。
【００１９】
コンベヤ１６は、複数の物品１８を支持して一方向（図で矢印α方向）へ運搬可能な公知の搬送部材と、コンベヤ制御装置２６の制御下で搬送部材を連続的又は断続的に駆動する公知の駆動機構とを有する。コンベヤセンサ２２は、例えばコンベヤ１６の搬送部材又は駆動機構の位置や速度を検出可能なエンコーダを有することができ、それら位置や速度を運搬動作情報Ｄｍとして取得する。整列ロボット１４は、コンベヤ１６の側方の所定位置に配置され、予め定めた作業領域において、コンベヤ１６の上流側から運搬される物品１８に対し、後述する物品整列動作を実行する。センサ２０のカメラ２８は、整列ロボット１４よりも物品運搬方向αの上流側に設置され、コンベヤ１６の真上から、予め定めた視野３０に存在する物品１８及びコンベヤ１６を撮像する。
【００２０】
図２に示す構成例では、整列ロボット１４は、互いに独立して動作する第１のロボット１４Ａ及び第２のロボット１４Ｂを含む。第２のロボット１４Ｂは、第１のロボット１４Ａに対し物品運搬方向αの下流側に設置される。これに対応して、制御装置２４は、第１のロボット１４Ａを制御する第１の制御装置２４Ａと、第２のロボット１４Ｂを制御する第２の制御装置２４Ｂとを含む。第１の制御装置２４Ａと第２の制御装置２４Ｂとは、ネットワークハブ３２及び有線の通信ケーブル３４を介して、相互にデータを通信することができる。なお、ロボットシステム１２が有する整列ロボット１４及びその制御装置２４の台数は、それぞれ、図示の２台に限定されず、１台のみ又は３台以上であっても良い。
【００２１】
第１の制御装置２４Ａは、第１のロボット１４Ａの動作を制御するロボット制御部（図示せず）と、センサ２０の一構成要素である画像処理部（図示せず）とを有する。第１の制御装置２４Ａは、カメラ２８の撮像動作を制御するカメラ制御部（図示せず）を有することもできる。第２の制御装置２４Ｂは、第２のロボット１４Ｂの動作を制御するロボット制御部を有する。第１及び第２の制御装置２４Ａ、２４Ｂのロボット制御部は、後述する整列パターンの生成、干渉の判定及び物品整列動作の生成を実行するマイクロプロセッサからなるＣＰＵ（中央処理装置）と、第１及び第２のロボット１４Ａ、１４Ｂの物品整列動作を制御する軸制御部とを備える。コンベヤセンサ２２が取得した運搬動作情報Ｄｍは、第１の制御装置２４Ａに入力される。第１の制御装置２４Ａは、入力された運搬動作情報Ｄｍと、画像処理部が取得した位置情報Ｄｐと、画像処理部が有する形状情報Ｄｓ（既知情報又は取得情報）とを、第２の制御装置２４Ｂに通信で送ることができる。
【００２２】
制御装置２４（第１及び第２の制御装置２４Ａ、２４Ｂ）のロボット制御部は、整列ロボット１４（第１及び第２のロボット１４Ａ、１４Ｂ）に物品整列作業を実施させるために、以下の処理を実行する。まず、それぞれが物品１８の位置を表す複数のパターン要素を予め定めた規則配置で有する整列パターンを、それらパターン要素のいずれか１つの第１パターン要素が、不規則配置で置かれた複数の物品１８のいずれか１つの基準物品１８ａの位置に整合するように、位置情報Ｄｐを用いてコンベヤ１６上に仮想的に生成する。次に、生成された整列パターンにおける第１パターン要素を除く第２パターン要素に配置可能な物品１８ｂと、基準物品１８ａを含む他の物品１８との間に、干渉が生じるか否かを、複数の物品のそれぞれの形状情報Ｄｓと位置情報Ｄｐとを用いて予測して判定する。次に、整列ロボット１４が基準物品１８ａを除く物品１８ｂをコンベヤ１６の運搬動作に追従しながら取り上げるための、整列ロボット１４の取上げ動作を、干渉の判定結果を考慮して、位置情報Ｄｐを用いて生成する。次に、整列ロボット１４が、取り上げた物品１８ｂをコンベヤ１６の運搬動作に追従しながら整列パターンに従って基準物品１８ａに対し整列させて置くための、整列ロボット１４の整列動作を、干渉の判定結果を考慮して生成する。本願では、整列ロボット１４が実行するこれら取上げ動作及び整列動作を、合わせて物品整列動作と称する。
【００２３】
図３Ａは、整列パターンＰの一例を模式的に示す。図示の例による整列パターンＰは、それぞれが物品１８の位置を表す複数（３個）のパターン要素Ｐ１、パターン要素Ｐ２及びパターン要素Ｐ３を、予め定めた規則配置（図で横方向へ直線状に並ぶ配置）で有する。各パターン要素Ｐ１、Ｐ２、Ｐ３は、理解を助けるために「＋」のマークで図示しているが、パターン要素Ｐ１、Ｐ２、Ｐ３自体は形状を有する必要が無いものである。なお整列パターンＰは、２個又は４個以上のパターン要素を有することができ、また曲線状、ジグザグ状、環状等の他の規則に従って並ぶパターン要素を有することができる。
【００２４】
整列パターンＰは、複数のパターン要素の各々が予め定めたパターン座標系における座標値で定義された整列フォームに基づいて生成される。図３Ａの例では、カメラ座標系の任意の位置に設定したパターン座標系３６において、パターン要素Ｐ１、Ｐ２、Ｐ３をそれぞれ座標値（Ｘ１，Ｙ１）、（Ｘ２，Ｙ１）、（Ｘ３，Ｙ１）で定義した整列フォームが用意される。この整列フォームに基づき、直線状に整列したパターン要素Ｐ１、Ｐ２、Ｐ３を有する整列パターンＰを、複数の物品１８を規則配置に整列させて置くコンベヤ１６上に仮想的に生成する。整列ロボット１４は、コンベヤ１６の運搬動作に追従しながら、生成された整列パターンＰに従って、不規則配置で置かれた複数の物品１８を、互いに直線状に整列する規則配置に置き直すように動作する。このとき、不規則配置で置かれた複数の物品１８のいずれか１つを基準物品１８ａ（図２）と見なして、整列ロボット１４は、この基準物品１８ａを移動させることなく、他の物品１８ｂ（図２）を基準物品１８ａに対し整列させて置くように動作する。
【００２５】
図３Ｂは、図３Ａの整列パターンＰに従って規則配置に整列された物品１８の一例を示す。この例では、互いに同一の矩形の二次元的外形を有する３個の物品１８が、それぞれの幾何学的中心点を整列パターンＰの３個のパターン要素Ｐ１、Ｐ２、Ｐ３に位置合わせして配置されている。物品整列装置１０では、まず不規則配置で置かれた複数の物品１８から基準物品１８ａが選定され、この基準物品１８ａの位置に、整列フォーム（図３Ａ）で定義された複数のパターン要素のうち１つの第１パターン要素（図では左端のパターン要素Ｐ１）を整合させることで、整列フォームで定義された他の第２パターン要素（図では中央および右端のパターン要素Ｐ２、Ｐ３）が、第１パターン要素（Ｐ１）に対し直線状に整列して、整列パターンＰが生成される。整列ロボット１４は、この整列パターンＰに従い、他の物品１８ｂを第２パターン要素（Ｐ２、Ｐ３）に整合させて置く。これにより３個の物品１８が、整列パターンＰに従って規則配置に整列する。
【００２６】
図３の例では、各物品１８（１８ａ、１８ｂ）の二次元的外形の幾何学的中心点を各パターン要素Ｐ１、Ｐ２、Ｐ３に位置合わせすることで、物品１８の整列を達成している。しかしこれに限らず、物品１８の形状において互いに対応する部位であることを条件に、幾何学的中心点以外の任意の部位（例えば矩形の１つの頂点）をパターン要素に位置合わせすることで、物品１８を整列させることもできる。物品１８のどの部位をパターン要素に位置合わせするかについては、例えばオペレータが設定して制御装置２４に入力することができる。
【００２７】
複数の物品１８を規則配置に整列させるときに各物品１８の姿勢を考慮しない構成では、整列パターンＰが有する複数のパターン要素Ｐ１、Ｐ２、Ｐ３は、上記したように物品１８の位置のみを表すものであればよい。これに対し、複数の物品１８を規則配置に整列させるときに各物品１８の姿勢を考慮する構成では、整列パターンＰが有する複数のパターン要素Ｐ１、Ｐ２、Ｐ３は、それぞれに物品１８の位置及び姿勢の双方を表すものとなる。この場合、整列フォームは、各パターン要素Ｐ１、Ｐ２、Ｐ３を、パターン座標系３６における座標値（Ｘ，Ｙ）と相対回転角度Ｒとで定義したものとなる。
【００２８】
図３Ｃは、図３Ａのパターン要素Ｐ１、Ｐ２、Ｐ３を定義する整列フォームの一例を、テーブルで示す。図３Ｃに示す整列フォームでは、各パターン要素Ｐ１、Ｐ２、Ｐ３が、座標値（Ｘ，Ｙ）（（Ｘ１，Ｙ１）、（Ｘ２，Ｙ１）、（Ｘ３，Ｙ１））及び相対回転角度Ｒ（０°、０°、０°）で定義されている。相対回転角度Ｒについては、パターン要素Ｐ１を基準（すなわち０°）として他のパターン要素Ｐ２、Ｐ３の角度が定義されている。この整列フォームで定義されるパターン要素Ｐ１、Ｐ２、Ｐ３を有する整列パターンＰは、整列ロボット１４が３個の物品１８を、いずれも０°方向（例えばパターン座標系３６のＹ軸の正方向）を向いた同一姿勢で直線状（パターン座標系３６のＸ軸方向）に整列させるためのものとなっている（図３Ｂ参照）。なお、各パターン要素Ｐ１、Ｐ２、Ｐ３を定義する座標値（Ｘ，Ｙ）及び相対回転角度Ｒは、達成しようとする物品１８の整列形態に従って、例えばオペレータが制御装置２４に入力することができる。
【００２９】
制御装置２４（第１及び第２の制御装置２４Ａ、２４Ｂ）のロボット制御部は、物品１８の形状情報Ｄｓ及びセンサ２０が取得した物品１８の位置情報Ｄｐを用いて、整列パターンＰにおける前述した第２パターン要素に配置可能な物品１８ｂと、基準物品１８ａを含む他の物品１８との間に、干渉が生じるか否かを予測して判定する。形状情報Ｄｓは、物品１８の検出のために予めセンサ２０に与えられた既知の情報であってもよいし、或いはセンサ２０が実際の撮像データから取得した情報であってもよい。ここで干渉とは、２つの物品１８を現場に置いたときにそれら物品１８の間に重なり合いが生じる状況を示し、例えば２つの物品１８が側面同士で静的に接触する状況は干渉に含まないものとすることができる。或いは、そのような静的接触を、干渉に含むものとしてもよい。形状情報Ｄｓとしては、物品１８の二次元的外形が円形や矩形等の単純形状である場合は、現実の形状の情報をそのまま採用できる。物品１８の二次元的外形がそのような単純形状でない場合は、現実の形状を単純形状に置き換えて形状情報Ｄｓとすることができる。
【００３０】
制御装置２４（第１及び第２の制御装置２４Ａ、２４Ｂ）のロボット制御部は、コンベヤ１６上に整列パターンＰを生成する際に、干渉の判定結果を考慮した上で、不規則配置で置かれた複数の物品１８のいずれか１つを選択して基準物品１８ａとすることができる。例えば、基準物品１８ａを選定する際に、まず不規則配置で置かれた複数の物品１８のうちの幾つかを基準候補として選択し、それら基準候補の１つずつを順番に基準物品１８ａと仮定して、上記した干渉判定を行う。そして、物品１８の干渉を生じることなく整列パターンＰを生成できる基準候補が見つかった段階で、当該基準候補を正規の基準物品１８ａとして、整列パターンＰを生成できる。
【００３１】
制御装置２４（第１及び第２の制御装置２４Ａ、２４Ｂ）のロボット制御部は、センサ２０が取得した物品１８の位置情報Ｄｐを用いて、不規則配置で置かれた複数の物品１８のうち基準物品１８ａを除く物品１８ｂを、整列ロボット１４（第１及び第２のロボット１４Ａ、１４Ｂ）が取り上げるための取上げ動作を生成する。このときに干渉の判定結果を考慮することで、効率的な整列作業を実現する取上げ動作を生成することができる。また制御装置２４（第１及び第２の制御装置２４Ａ、２４Ｂ）のロボット制御部は、取り上げた物品１８ｂを、整列ロボット１４（第１及び第２のロボット１４Ａ、１４Ｂ）が整列パターンＰに従って基準物品１８ａに対し整列させて置くための整列動作を生成する。このときに干渉の判定結果を考慮することで、効率的な整列作業を実現する整列動作を生成することができる。
【００３２】
例えば、図３Ａに示す整列パターンＰを現場で生成し、図３Ｂに示す形態に物品１８を整列させる構成では、物品１８ａ（パターン要素Ｐ１に整合）に対し、物品同士の干渉が生じない位置に他のパターン要素Ｐ２、Ｐ３が配置されることを前提に整列パターンＰが生成される。物品１８が不規則配置に置かれた状態で、例えばパターン要素Ｐ２の位置に、干渉を生じると予測される物品１８ｂが存在している場合は、ロボット１２が当該物品１８ｂを最初に取り上げることで、予測される干渉を解消することができ、その後、当該物品１８ｂを、物品同士の干渉が生じないパターン要素Ｐ２又はＰ３に整合させて置くことで、効率良く整列作業を実行できる。
【００３３】
制御装置２４（第１及び第２の制御装置２４Ａ、２４Ｂ）の軸制御部は、整列ロボット１４（第１及び第２のロボット１４Ａ、１４Ｂ）の上記した物品整列動作を、コンベヤ１６の運搬動作に追従するように制御して、基準物品１８ａを含む複数の物品１８を、運搬動作中のコンベヤ１６の上で規則配置に効率的に整列させることができる。なお、複数の整列ロボット１４（第１及び第２のロボット１４Ａ、１４Ｂ）を有するシステム構成では、対応の制御装置２４（第１及び第２の制御装置２４Ａ、２４Ｂ）は、それら整列ロボット１４が複数の物品１８に対しどのような分担で物品整列動作を行うかの作業割合を必要に応じて設定し、この作業割合に従って個々の整列ロボット１４を制御することができる。作業割合は、予めオペレータが制御装置２４に入力することができる。また、上流側の整列ロボット１４（第１のロボット１４Ａ）を制御する制御装置２４（第１の制御装置２４Ａ）が把握している物品１８の位置情報Ｄｐや整列パターンＰの情報は、適宜、下流側の整列ロボット１４（第２のロボット１４Ｂ）を制御する制御装置２４（第２の制御装置２４Ｂ）に送信される。
【００３４】
なおロボットシステム１２は、前述した物品１８の二次元的な規則配置に代えて、複数の物品１８を互いに重なり合う三次元的な規則配置に整列させるように構成することもできる。この構成では、制御装置２４（第１及び第２の制御装置２４Ａ、２４Ｂ）のロボット制御部は、物品１８同士の干渉の判定を行わず、また干渉を考慮することなく整列ロボット１４の物品整列動作を生成する。
【００３５】
ロボットシステム１２における上記した物品整列作業は、整列ロボット１４、コンベヤ１６及びセンサ２０の動作指令を記述した所定の作業プログラムに従って実行される。例えば、制御装置２４及びコンベヤ制御装置２６を統合的に制御する上位コントローラ（図示せず）が、作業プログラムに記述された動作指令を制御装置２４及びコンベヤ制御装置２６に与えることもできる。作業プログラムには、オペレータが必要に応じて制御装置２４等に入力した種々の作業パラメータが付加される。
【００３６】
次に、図１〜図９を参照して、ロボットシステム１２において整列ロボット１４が行う上記した物品整列作業を模擬的に実行するシミュレーション装置１０の構成を説明する。図１に示すように、シミュレーション装置１０は、ロボットシステム１２の構成要素であるコンベヤ１６、コンベヤ１６に搭載される複数の物品１８、複数の物品１８を検出するセンサ２０、及び複数の物品１８をコンベヤ１６の上で整列させる整列ロボット１４を、それぞれにモデル化したコンベヤモデル１６Ｍ、複数の物品モデル１８Ｍ、センサモデル２０Ｍ及び整列ロボットモデル１４Ｍを、仮想空間３８（図４）に配置するモデル配置部４０と、仮想空間３８に配置したコンベヤモデル１６Ｍ、センサモデル２０Ｍ及び整列ロボットモデル１４Ｍに、仮想空間３８に配置した複数の物品モデル１８Ｍに対する物品運搬動作、物品検出動作及び物品整列動作を、模擬的に遂行させる動作シミュレート部４２とを備える。
【００３７】
さらに詳述すると、動作シミュレート部４２は、複数の物品モデル１８Ｍをコンベヤモデル１６Ｍが不規則配置で搭載して運搬する物品運搬動作を、模擬的に遂行する運搬動作シミュレート部４４と、不規則配置で運搬される複数の物品モデル１８Ｍの各々の位置情報Ｄｐをセンサモデル２０Ｍが取得する物品検出動作を、模擬的に遂行する検出動作シミュレート部４６と、それぞれが物品モデル１８Ｍの位置を表す複数のパターン要素を予め定めた規則配置で有する整列パターンＰを、位置情報Ｄｐを用いてコンベヤモデル１６Ｍの上に生成する整列パターン生成部４８と、整列ロボットモデル１４Ｍが物品運搬動作に追従しながら不規則配置の物品モデル１８Ｍの各々を取り上げるとともに取り上げた物品モデル１８Ｍを整列パターンＰに従って置く物品整列動作を、物品運搬動作の情報（運搬動作情報Ｄｍ）と位置情報Ｄｐとを用いて模擬的に遂行する整列動作シミュレート部５０とを備える。
【００３８】
前述したように、シミュレーション装置１０は、パーソナルコンピュータ等のコンピュータに所要のソフトウェアをインストールすることにより構成したものであって、モデル配置部４０及び動作シミュレート部４２（運搬動作シミュレート部４４、検出動作シミュレート部４６、整列パターン生成部４８、整列動作シミュレート部５０）は、アプリケーションソフトウェアによってコンピュータに付加される機能として実現できる。シミュレーション装置１０には、ＬＣＤ（液晶ディスプレイ）等の表示装置や、キーボード、マウス等の入力装置（図示せず）を付設することができる。
【００３９】
図４は、シミュレーション装置１０に付設可能な表示装置５２の一例を示す。表示装置５２は、モデル配置部４０によって作成された仮想空間３８における個々のモデル画像を表示するとともに、動作シミュレート部４２によって遂行された物品運搬動作、物品検出動作及び物品整列動作を個々のモデル画像の動画として表示する。モデル画像については、例えばシミュレーション装置１０にＣＡＤ（コンピュータ支援設計）等の設計機能を付加することでシミュレーション装置１０が作成する構成としてもよいし、或いはＣＡＤ等の設計機能を有する外部装置によって作成した画像データをシミュレーション装置１０に取り込んで使用する構成としてもよい。オペレータは、表示装置５２の画面を参照しながら、個々のモデルの動作の妥当性を検証したり、入力装置（図示せず）により所要の作業パラメータを入力したりすることができる。
【００４０】
図４はまた、コンピュータをシミュレーション装置１０として機能させるためのシミュレーションプログラムを記録した記録媒体５４の一例を示す。シミュレーションプログラムについては後述する。
【００４１】
図５は、シミュレーション装置１０が実行する一実施形態によるシミュレーション方法をフローチャートで示す。このシミュレーション方法は、整列ロボット１４が行う物品整列作業をコンピュータで模擬的に実行する方法であって、下記ステップＳ１〜Ｓ５を有する。
【００４２】
ステップＳ１：コンピュータのモデル配置部４０が、コンベヤ１６、コンベヤ１６に搭載される複数の物品１８、複数の物品１８を検出するセンサ２０、及び複数の物品１８をコンベヤ１６の上で整列させる整列ロボット１４を、それぞれにモデル化したコンベヤモデル１６Ｍ、複数の物品モデル１８Ｍ、センサモデル２０Ｍ及び整列ロボットモデル１４Ｍを、仮想空間３８に配置する。
【００４３】
ステップＳ２：コンピュータの運搬動作シミュレート部４４が、複数の物品モデル１８Ｍをコンベヤモデル１６Ｍが不規則配置で搭載して運搬する物品運搬動作を、模擬的に遂行する。
【００４４】
ステップＳ３：コンピュータの検出動作シミュレート部４６が、不規則配置で運搬される複数の物品モデル１８Ｍの各々の位置情報Ｄｐをセンサモデル２０Ｍが取得する物品検出動作を、模擬的に遂行する。
【００４５】
ステップＳ４：コンピュータの整列パターン生成部４８が、それぞれが物品モデル１８Ｍの位置を表す複数のパターン要素を予め定めた規則配置で有する整列パターンＰを、位置情報Ｄｐを用いてコンベヤモデル１６Ｍの上に生成する。
【００４６】
ステップＳ５：コンピュータの整列動作シミュレート部５０が、整列ロボットモデル１４Ｍが物品運搬動作に追従しながら不規則配置の物品モデル１８Ｍの各々を取り上げるとともに取り上げた物品モデル１８Ｍを整列パターンＰに従って置く物品整列動作を、運搬動作情報Ｄｍと位置情報Ｄｐとを用いて模擬的に遂行する。
【００４７】
図４を参照すると、表示装置５２の画面に、ステップＳ１でモデル配置部４０が作成した仮想空間３８におけるモデルレイアウトの一例が表示されている。このモデルレイアウトは、長テーブル状のコンベヤモデル１６Ｍと、コンベヤモデル１６Ｍの上面に不規則に配置される矩形箱状の複数の物品モデル１８Ｍと、コンベヤモデル１６Ｍの側方に物品運搬方向αへ並んで配置される２台の整列ロボットモデル１４Ｍと、整列ロボット１４よりも物品運搬方向αの上流側でコンベヤモデル１６Ｍの上方に配置されるセンサモデル２０Ｍとを含む。各整列ロボットモデル１４Ｍは、垂直多関節型の機構部と、機構部の先端に装着される吸着型のハンドとを有する。整列ロボットモデル１４Ｍやコンベヤモデル１６Ｍの機械構成や物品モデル１８Ｍの形状は、例えばシミュレーション装置１０（コンピュータ）の記憶部又は外部の記憶装置に予め記憶した複数種類の整列ロボットモデル１４Ｍ、コンベヤモデル１６Ｍ、物品モデル１８Ｍから、現実のロボットシステム１２に対応する機械構成や形状のものをオペレータが選択するように構成できる。
【００４８】
図４のモデルレイアウトでは、各整列ロボットモデル１４Ｍの作業領域（つまり追従動作範囲）を指定する各一対の作業領域枠５６ａ、５６ｂと、コンベヤモデル１６Ｍ上での物品モデル１８Ｍの運搬可能領域を指定する一対の運搬領域枠５８ａ、５８ｂとが示されている。オペレータは、個々の整列ロボットモデル１４Ｍの位置、コンベヤモデル１６Ｍの位置、個々の物品モデル１８Ｍの位置、センサモデル２０Ｍの位置、作業領域枠５６ａ、５６ｂの位置、運搬領域枠５８ａ、５８ｂの位置を、例えば入力装置による数値入力や画面におけるドラッグ操作によって適宜に設定したり変更したりすることができる。
【００４９】
シミュレーション装置１０は、現実のロボットシステム１２における各種データ処理と実質的に同一のデータ処理を行うことで、物品整列作業のシミュレーションを実行する。したがって、シミュレーション装置１０で扱われる整列ロボットモデル１４Ｍ、コンベヤモデル１６Ｍ、物品モデル１８Ｍ及びセンサモデル２０Ｍは、いずれも三次元モデルであり、表示装置５２に表示されるそれらモデルの画像データはいずれも三次元画像データである。また仮想空間３８には、物品整列作業のシミュレーションを実行するための三次元座標系が設定される。シミュレーションの際には、現実のロボットシステム１２と同様に個々の構成要素に個別対応する複数の座標系（ロボット座標系、コンベヤ座標系、カメラ座標系等）を用いてもよいし、全ての構成要素に共通の座標系を用いてもよい。
【００５０】
モデル配置部４０が仮想空間３８に整列ロボットモデル１４Ｍ、コンベヤモデル１６Ｍ、物品モデル１８Ｍ及びセンサモデル２０Ｍを配置すると、動作シミュレート部４２は、現実のロボットシステム１２に適用される作業プログラム６０及び作業パラメータ６２（図１）に従って、物品運搬動作、物品検出動作及び物品整列動作のシミュレーションを開始する。まずステップＳ２（図５）で、運搬動作シミュレート部４４は、物品運搬動作のシミュレーションとして、コンベヤモデル１６Ｍの上で上流側の運搬領域枠５８ａの近傍に複数の物品モデル１８Ｍを１つずつ不規則配置になるように出現させて物品運搬方向αへ順次移動させる。このときオペレータは、作業パラメータ６２として、物品モデル１８Ｍの移動速度及び運搬数量、隣り合う物品モデル１８Ｍの間隔、各物品モデル１８Ｍの所定の基準位置からのオフセット量等を、入力装置により設定することができる。物品モデル１８Ｍの移動速度及び運搬数量は、現実のロボットシステム１２で採用されるパラメータを用いることができる。物品モデル１８Ｍの間隔及びオフセット量は、現実のロボットシステム１２で想定され得る多様な不規則配置を考慮してオペレータが適宜設定できる。物品モデル１８Ｍの移動速度は、コンベヤモデル１６Ｍの運搬動作情報Ｄｍとして、例えばシミュレーション装置１０（コンピュータ）の記憶部に記憶される。
【００５１】
次にステップＳ３（図５）で、検出動作シミュレート部４６は、物品検出動作のシミュレーションとして、物品運搬方向αへ移動する複数の物品モデル１８Ｍを、センサモデル２０Ｍに真上から模擬的に撮像させて、センサモデル２０Ｍの視野内に存在する物品モデル１８Ｍ及びコンベヤモデル１６Ｍの画像データを模擬的に取得する。画像データは、センサモデル２０Ｍに仮想的に設定されるカメラの視野及び視線方向、センサモデル２０Ｍとコンベヤモデル１６Ｍとの位置関係、複数の物品モデル１８Ｍ同士の位置関係等に基づき、物品モデル１８Ｍ及びコンベヤモデル１６Ｍの三次元データから所定の演算により取得することができる。このときオペレータは、作業パラメータ６２として、センサモデル２０Ｍの視野及び視線方向を、入力装置により設定することができる。物品モデル１８Ｍ及びコンベヤモデル１６Ｍの画像データを取得する際に用いた物品モデル１８Ｍの位置（間隔、オフセット量を含む）や形状等のデータは、個々の物品モデル１８Ｍの位置情報Ｄｐ及び形状情報Ｄｓとして、例えばシミュレーション装置１０（コンピュータ）の記憶部に記憶される。
【００５２】
次にステップＳ４（図５）で、整列パターン生成部４８は、整列動作シミュレート部５０が物品整列動作のシミュレーションを行うための予備的作業として、コンベヤモデル１６Ｍの上面に整列パターンＰを生成する。このときオペレータは、コンベヤモデル１６Ｍ上での整列パターンＰの生成実行場所を設定できる。図６は、図４に示すモデルレイアウトに追加して、センサモデル２０Ｍよりも下流側で作業領域枠５６ａよりも上流側に設定された整列パターン生成実行場所６４を表示した一例を示す。オペレータは、整列パターン生成実行場所６４を、例えば入力装置による数値入力や画面におけるドラッグ操作によって適宜に設定したり変更したりすることができる。
【００５３】
整列パターン生成部４８は、整列パターンＰを生成する際にまず、仮想空間３８に配置される整列パターンＰの設定入力を受け付ける。整列パターンＰは、例えば図３Ａに示すような、現実のロボットシステム１２で採用される整列パターンＰと同じものであって、オペレータが作業パラメータ６２として、例えば図３Ｃに示すような整列フォームを用いて入力装置により設定できる。整列パターン生成部４８は、設定された整列パターンＰに従い、例えば図７Ａ及び図７Ｂに示すように、対象となる物品モデル１８Ｍの形状を破線で表したものを整列パターンＰとして生成して、表示装置５２に表示させることができる。図７Ａの整列パターンＰは、矩形の物品モデル１８Ｍに対応するものであって、物品モデル１８Ｍの位置及び姿勢の両データを用いて生成される。図７Ａの整列パターンＰは、それぞれが物品モデル１８Ｍの位置及び姿勢を表す４個のパターン要素Ｐ１、Ｐ２、Ｐ３及びＰ４を、予め定めた規則配置（図で横方向へ直線状に並ぶ配置）で有する。また図７Ｂの整列パターンＰは、円形の物品モデル１８Ｍに対応するものであって、物品モデル１８Ｍの位置のみのデータを用いて生成される。図７Ｂの整列パターンＰは、それぞれが物品モデル１８Ｍの位置を表す３個のパターン要素Ｐ１、Ｐ２及びＰ３を、予め定めた規則配置（図で横方向へ直線状に並ぶ配置）で有する。
【００５４】
整列パターン生成部４８は、現実のロボットシステム１２において実行される前述した手順と同様の手順により、コンベヤモデル１６Ｍの上面に整列パターンＰを生成することができる。例えば図８Ａに示すように、所望個数の矩形の物品モデル１８Ｍが整列パターン生成実行場所６４を通過したときに、整列パターン生成部４８は、物品モデル１８Ｍ同士の干渉を考慮して、整列パターン生成実行場所６４を通過した物品モデル１８Ｍのいずれかを基準物品モデル１８ａＭに選定し、基準物品モデル１８ａＭを基準として図７Ａの整列パターンＰを生成する。図８Ａの例では、整列パターン生成部４８は、複数のパターン要素Ｐ１、Ｐ２、Ｐ３、Ｐ４のいずれか１つの第１パターン要素Ｐ１が、不規則配置で置かれた複数の物品モデル１８Ｍのいずれか１つの基準物品モデル１８ａＭの位置に整合するように、整列パターンＰを生成している。同様に図８Ｂに示すように、所望個数の円形の物品モデル１８Ｍが整列パターン生成位置６４を通過したときに、整列パターン生成部４８は、物品モデル１８Ｍ同士の干渉を考慮して、整列パターン生成位置６４を通過した物品モデル１８Ｍのいずれかを基準物品モデル１８ａＭに選定し、基準物品モデル１８ａＭを基準として図７Ｂの整列パターンＰを生成する。図８Ｂの例では、整列パターン生成部４８は、複数のパターン要素Ｐ１、Ｐ２、Ｐ３のいずれか１つの第１パターン要素Ｐ１が、不規則配置で置かれた複数の物品モデル１８Ｍのいずれか１つの基準物品モデル１８ａＭの位置に整合するように、整列パターンＰを生成している。
【００５５】
整列パターン生成部４８は、コンベヤモデル１６Ｍの上面に生成した整列パターンＰを、物品モデル１６Ｍと共に、モデルレイアウトの画像とは別の二次元画像（図８Ａ〜図８Ｃの平面図）として、表示装置５２に選択的に表示させることができる。なお円形の物品モデル１８Ｍについては、整列パターンＰが有するパターン要素の並ぶ方向を物品運搬方向αに平行とするか非平行とするかを、オペレータが入力装置により設定することもできる。図８Ｂはパターン要素Ｐ１〜Ｐ３の並ぶ方向を物品運搬方向αに非平行と設定した場合の整列パターンＰを示し、図８Ｃはパターン要素Ｐ１〜Ｐ３の並ぶ方向を物品運搬方向αに平行と設定した場合の整列パターンＰを示す。
【００５６】
次にステップＳ５（図５）で、整列動作シミュレート部５０は、物品整列動作のシミュレーションとして、コンベヤモデル１６Ｍの上面に沿って物品運搬方向αへ移動する複数の物品モデル１８Ｍに対し、個々の整列ロボットモデル１４Ｍが自己の作業領域内（作業領域枠５６ａ、５６ｂの間）で、基準物品モデル１８ａＭを除く物品モデル１８Ｍを取り上げるとともに取り上げた物品モデル１８Ｍを整列パターンＰに従って基準物品モデル１８ａＭに対し整列させて置くための物品整列動作を、物品モデル１８Ｍ同士の干渉の判定結果を考慮して生成する。整列動作シミュレート部５０は、現実のロボットシステム１２において実行される前述した手順と同様の手順により、各整列ロボットモデル１４Ｍの物品整列動作を生成することができる。
【００５７】
物品整列動作のシミュレーションに際し、オペレータは、上流側の整列ロボットモデル１４Ｍが下流側の整列ロボットモデル１４Ｍに対し、物品モデル１８Ｍの位置情報Ｄｐや整列パターンＰの情報を仮想的に送信する場所を、コンベヤモデル１６Ｍ上に設定することができる。図６に示すモデルレイアウトでは、上流側の整列ロボットモデル１４Ｍの下流側作業領域枠５６ｂと、下流側の整列ロボットモデル１４Ｍの上流側作業領域枠５６ａとの間に設定された情報送信実行場所６６が追加表示されている。オペレータは、情報送信実行場所６６を、例えば入力装置による数値入力や画面におけるドラッグ操作によって適宜に設定したり変更したりすることができる。さらにオペレータは、必要に応じて、２台の整列ロボットモデル１４Ｍが複数の物品モデル１８Ｍに対しどのような分担で物品整列動作を行うかの作業割合を、入力装置により設定することができる。作業割合は、現実のロボットシステム１２で採用されるパラメータを用いることができる。
【００５８】
図９は、図６のモデルレイアウトにおいて、２台の整列ロボットモデル１４Ｍが物品整列動作を遂行している状態を示す。整列動作シミュレート部５０はまず、上流側の整列ロボットモデル１４Ｍに対し、物品運搬方向αへ移動する不規則配置の複数の物品モデル１８Ｍに対する物品整列動作を生成し、上流側の整列ロボットモデル１４Ｍ（機構部及びハンド）に物品整列動作を遂行させる。このとき整列動作シミュレート部５０は、コンベヤモデル１６Ｍの上面に生成された整列パターンＰにおける第１パターン要素Ｐ１を除く第２パターン要素Ｐ２、Ｐ３…に配置可能な物品モデル１８ｂＭと、基準物品モデル１８ａＭを含む他の物品モデル１８Ｍとの間に、干渉が生じるか否かを、複数の物品モデル１８Ｍの各々の形状情報Ｄｓと位置情報Ｄｐとを用いて予測して判定するとともに、干渉の判定結果を考慮して物品整列動作を模擬的に遂行することができる（図８Ａ〜図８Ｃ）。
【００５９】
次に整列動作シミュレート部５０は、最下流に位置する物品モデル１８Ｍ又は整列パターンＰが情報送信実行場所６６を通過したときに、物品モデル１８Ｍの位置情報Ｄｐや整列パターンＰの情報を上流側の整列ロボットモデル１４Ｍから下流側の整列ロボットモデル１４Ｍへ仮想的に送信させる。そして整列動作シミュレート部５０は、下流側の整列ロボットモデル１４Ｍに対し、上流側の整列ロボットモデル１４Ｍによって整列されずに引き続き不規則配置で物品運搬方向αへ移動する物品モデル１８Ｍに対する物品整列動作を生成し、下流側の整列ロボットモデル１４Ｍ（機構部及びハンド）に物品整列動作を、同様に干渉の判定結果を考慮して遂行させる。整列動作シミュレート部５０は、必要に応じて設定された作業割合に従い、２台の整列ロボットモデル１４Ｍに所定の分担で物品整列動作を遂行させることができる。なお、現実のロボットシステム１２が１台のみの整列ロボット１４を有する場合、仮想空間３８には整列ロボットモデル１４Ｍが１台のみ配置され、情報送信実行場所６６は設定されない。
【００６０】
上記構成を有するシミュレーション装置１０では、動作シミュレート部４２（運搬動作シミュレート部４４、検出動作シミュレート部４６、整列パターン生成部４８、整列動作シミュレート部５０）が、作業プログラム６０及び種々の作業パラメータ６２に従って、仮想空間３８に配置したコンベヤモデル１６Ｍ、センサモデル２０Ｍ及び整列ロボットモデル１４Ｍに、仮想空間３８に配置した複数の物品モデル１８Ｍに対する物品運搬動作、物品検出動作及び物品整列動作を模擬的に遂行させることにより、整列ロボットモデル１４Ｍが、コンベヤモデル１６Ｍに不規則配置で搭載された複数の物品モデル１８Ｍを、コンベヤモデル１６Ｍの運搬動作に追従しながら個別に取り上げてコンベヤモデル１６Ｍ上で所定の規則配置に整列させることが可能か否か（つまり現実のロボットシステム１２における物品整列作業に関する作業プログラム６０及び作業パラメータ６２の妥当性）を、仮想空間３８において検証することができる。シミュレーション装置１０において模擬的に実行した物品整列作業に問題が発見された場合は、問題を解消するべく作業プログラム６０や作業パラメータ６２を適宜に修正することができる。また現実のロボットシステム１２の構成が変更された場合にも、シミュレーション装置１０において、変更されたロボットシステム１２に対応する物品整列作業を模擬的に実行することで、作業プログラム６０や作業パラメータ６２を最適化することができる。したがってシミュレーション装置１０によれば、生産現場でのロボットシステム１２の立ち上げに要する時間や費用を削減できる。
【００６１】
図１０は、他の実施形態によるシミュレーション装置７０の構成を機能ブロック図で示す。図１１は、シミュレーション装置７０が実行するシミュレーションの対象となるロボットシステム７２の他の構成例を模式的に示す。シミュレーション装置７０及びロボットシステム７２は、整列ロボット１４がコンベヤ１６上で規則配置に整列させた複数の物品１８を、整列ロボット１４とは異なるロボット７４（以下、移送ロボット７４と称する。）が一括して他の場所へ移送する物品移送作業に関する構成を除いて、前述したシミュレーション装置１０及びロボットシステム１２の構成と同様の構成を有する。以下、シミュレーション装置１０及びロボットシステム１２の構成要素に対応する構成要素は、共通する符号を付してその詳細な説明を省略する。
【００６２】
まずロボットシステム７２の構成を概略説明する。ロボットシステム７２は、前述したロボットシステム１２の構成に加えて、整列ロボット１４がコンベヤ１６上で規則配置に整列させた複数の物品１８を一括把持して移送する移送ロボット７４と、移送ロボット７４を制御する制御装置７６と、移送ロボット７４が移送した複数の物品１８を互いに整列した規則配置で運搬する第２コンベヤ７８とを備える。制御装置７６と制御装置２４（第１の制御装置２４Ａ及び第２の制御装置２４Ｂ）とは、ネットワークハブ３２及び有線の通信ケーブル３４を介して、相互にデータを通信することができる。なお、ロボットシステム７２が有する移送ロボット７４及びその制御装置７６の台数は、１台に限定されず、２台以上であっても良い。
【００６３】
移送ロボット７４は、多関節型、ガントリ型、パラレルリンク型等の、公知の種々の機構部から適宜選択した機構部と、吸着型、把握型等の、公知の種々のハンドから適宜選択したハンドとを備えることができる。移送ロボット７４は、ロボットシステム７２で実施される物品移送作業に特化された構成を有する必要が無く、ハンドを含めて汎用的構成を有することができる（但し本説明では、識別のため「移送ロボット７４」と称する。）。移送ロボット７４は、整列ロボット１４に対し物品運搬方向αの下流側でコンベヤ１６の側方の所定位置に配置され、予め定めた作業領域において、コンベヤ１６の上流側から運搬される整列された複数の物品１８に対し、後述する物品移送動作を実行する。
【００６４】
第２コンベヤ７８は、規則配置に整列した複数の物品１８を載置するトレイ８０を支持して一方向（図で矢印β方向）へ運搬可能な公知の搬送部材と、搬送部材を連続的又は断続的に駆動する公知の駆動機構とを有する。図１１の構成例では、第２コンベヤ７８の物品運搬方向βは、コンベヤ１６の物品運搬方向αに直交する方向である。第２コンベヤ７８には、搬送部材又は駆動機構の位置や速度を検出可能なコンベヤセンサ（例えばエンコーダ）８２が付設される。コンベヤセンサ８２が取得した第２コンベヤ７８の運搬動作情報は、制御装置７６に入力される。制御装置７６は、制御装置２４（第１及び第２の制御装置２４Ａ、２４Ｂ）と通信して、整列ロボット１４（第１及び第２のロボット１４Ａ、１４Ｂ）がコンベヤ１６上のどこに物品１８を整列したかを知ることができる。また制御装置７６は、制御装置２４（第１の制御装置２４Ａ）と通信して、コンベヤセンサ２２の値を知ることができる。これらの情報から、制御装置７６に接続された移送ロボット７４は、コンベヤ１６上に整列された物品１８を、コンベヤ１６に追従しながら一括で把持する。把持した後、移送ロボット７４は、例えば第２コンベヤ７８に付設される光電管センサ８４で検知したトレイ８０上に、コンベヤセンサ８２が取得した運搬動作情報を用いて、第２コンベヤ７８に追従しながら、一括把持した物品１８を置く。図示の例では、トレイ８０には６個の物品１８を載置でき、移送ロボット７４は６個の物品１８を把持可能なハンド（図示せず）を装備することができる。このハンドは例えば、３個の物品１８を同時に一括して把持できるものであって、移送ロボット７４は、コンベヤ１６上に整列された３個１組の物品１８（物品セット１８Ｓ）を２組分把持した後、それら物品セット１８Ｓをトレイ８０に置くことができる。
【００６５】
ロボットシステム７２における上記した物品整列作業及び物品移送作業は、整列ロボット１４、コンベヤ１６、センサ２０、移送ロボット７４、第２コンベヤ７８の動作指令を記述した所定の作業プログラムに従って実行される。なお、移送ロボット７４による物品セット１８Ｓの移送先は、第２コンベヤ７８に限定されず、静止したテーブル等とすることもできる。
【００６６】
次に、図１０〜図１３を参照して、ロボットシステム７２において整列ロボット１４が行う物品整列作業及び移送ロボット７４が行う物品移送作業を模擬的に実行するシミュレーション装置７０の構成を説明する。図１０に示すように、シミュレーション装置７０は、ロボットシステム７２の構成要素であるコンベヤ１６、コンベヤ１６に搭載される複数の物品１８、複数の物品１８を検出するセンサ２０、複数の物品１８をコンベヤ１６の上で整列させる整列ロボット１４、及び整列ロボット１４が整列させた複数の物品１８を一括して移送する移送ロボット７４を、それぞれにモデル化したコンベヤモデル１６Ｍ、複数の物品モデル１８Ｍ、センサモデル２０Ｍ、整列ロボットモデル１４Ｍ及び移送ロボットモデル７４Ｍを、仮想空間３８（図１３）に配置するモデル配置部８６と、仮想空間３８に配置したコンベヤモデル１６Ｍ、センサモデル２０Ｍ、整列ロボットモデル１４Ｍ及び移送ロボットモデル７４Ｍに、仮想空間３８に配置した複数の物品モデル１８Ｍに対する物品運搬動作、物品検出動作、物品整列動作及び物品移送動作を、模擬的に遂行させる動作シミュレート部８８とを備える。
【００６７】
動作シミュレート部８８は、前述したシミュレーション装置１０の動作シミュレート部４２の構成に加えて、整列パターンＰに従って置かれた複数の物品モデル１８（物品セット１８Ｓ）を移送ロボットモデル７４Ｍがコンベヤモデル１６Ｍの物品運搬動作に追従しながら一括して取り上げて移送する物品移送動作を、物品運搬動作の情報（運搬動作情報Ｄｍ）を用いて模擬的に遂行する移送動作シミュレート部９０をさらに備える。
【００６８】
シミュレーション装置７０は、シミュレーション装置１０と同様に、パーソナルコンピュータ等のコンピュータに所要のソフトウェアをインストールすることにより構成したものであって、モデル配置部８６及び動作シミュレート部８８（運搬動作シミュレート部４４、検出動作シミュレート部４６、整列パターン生成部４８、整列動作シミュレート部５０、移送動作シミュレート部９０）は、アプリケーションソフトウェアによってコンピュータに付加される機能として実現できる。シミュレーション装置７０には、ＬＣＤ（液晶ディスプレイ）等の表示装置や、キーボード、マウス等の入力装置（図示せず）を付設することができる。
【００６９】
図１２は、シミュレーション装置７０が実行する他の実施形態によるシミュレーション方法をフローチャートで示す。このシミュレーション方法は、整列ロボット１４が行う物品整列作業及び移送ロボット７４が行う物品移送作業をコンピュータで模擬的に実行する方法であって、下記ステップＳ１〜Ｓ６を有する。
【００７０】
ステップＳ１：コンピュータのモデル配置部８６が、コンベヤ１６、コンベヤ１６に搭載される複数の物品１８、複数の物品１８を検出するセンサ２０、複数の物品１８をコンベヤ１６の上で整列させる整列ロボット１４、及び整列ロボット１４が整列させた複数の物品１８を一括して移送する移送ロボット７４を、それぞれにモデル化したコンベヤモデル１６Ｍ、複数の物品モデル１８Ｍ、センサモデル２０Ｍ、整列ロボットモデル１４Ｍ及び移送ロボットモデル７４Ｍを、仮想空間３８に配置する。
【００７１】
ステップＳ２：コンピュータの運搬動作シミュレート部４４が、複数の物品モデル１８Ｍをコンベヤモデル１６Ｍが不規則配置で搭載して運搬する物品運搬動作を、模擬的に遂行する。
【００７２】
ステップＳ３：コンピュータの検出動作シミュレート部４６が、不規則配置で運搬される複数の物品モデル１８Ｍの各々の位置情報Ｄｐをセンサモデル２０Ｍが取得する物品検出動作を、模擬的に遂行する。
【００７３】
ステップＳ４：コンピュータの整列パターン生成部４８が、それぞれが物品モデル１８Ｍの位置を表す複数のパターン要素を予め定めた規則配置で有する整列パターンＰを、位置情報Ｄｐを用いてコンベヤモデル１６Ｍの上に生成する。
【００７４】
ステップＳ５：コンピュータの整列動作シミュレート部５０が、整列ロボットモデル１４Ｍが物品運搬動作に追従しながら不規則配置の物品モデル１８Ｍの各々を取り上げるとともに取り上げた物品モデル１８Ｍを整列パターンＰに従って置く物品整列動作を、運搬動作情報Ｄｍと位置情報Ｄｐとを用いて模擬的に遂行する。
【００７５】
ステップＳ６：コンピュータの移送動作シミュレート部９０が、整列パターンＰに従って置かれた複数の物品モデル１８Ｍ（物品モデルセット１８ＭＳ）を移送ロボットモデル７４Ｍが物品運搬動作に追従しながら一括して取り上げて移送する物品移送動作を、運搬動作情報Ｄｍを用いて模擬的に遂行する。
【００７６】
シミュレーション装置７０は、シミュレーション装置１０と同様に、現実のロボットシステム７２における各種データ処理と実質的に同一のデータ処理を行うことで、物品整列作業及び物品移送作業のシミュレーションを実行する。図１３は、ロボットシステム７２に対応するようにモデル配置部８６が作成したモデルレイアウトにおいて、２台の整列ロボットモデル１４Ｍが物品整列動作を遂行し、１台の移送ロボットモデル７４Ｍが物品移送動作を遂行している状態を示す。図１３には、図９と同様に、整列ロボットモデル１４Ｍ及び移送ロボットモデル７４Ｍの各々の作業領域（つまり追従動作範囲）を指定する各一対の作業領域枠５６ａ、５６ｂと、コンベヤモデル１６Ｍ上での物品モデル１８Ｍの運搬可能領域を指定する一対の運搬領域枠５８ａ、５８ｂと、整列パターン生成部４８がコンベヤモデル１６Ｍ上で整列パターンＰの生成を実行する整列パターン生成実行場所６４と、上流側の整列ロボットモデル１４Ｍが下流側の整列ロボットモデル１４Ｍに物品モデル１８Ｍの位置情報Ｄｐや整列パターンＰの情報を仮想的に送信する情報送信実行場所６６とが表示されている。図１３にはさらに、下流側の整列ロボットモデル１４Ｍが移送ロボットモデル７４Ｍに物品モデル１８Ｍの位置情報Ｄｐや整列パターンＰの情報を仮想的に送信する情報送信実行場所９２が追加表示されている。
【００７７】
ステップＳ１で、モデル配置部８６が仮想空間３８に整列ロボットモデル１４Ｍ、コンベヤモデル１６Ｍ、物品モデル１８Ｍ、センサモデル２０Ｍ及び移送ロボットモデル７４Ｍを配置すると、動作シミュレート部８８は、現実のロボットシステム７２に適用される作業プログラム６０及び作業パラメータ６２（図１０）に従って、物品運搬動作、物品検出動作、物品整列動作及び物品移送動作のシミュレーションを開始する。ステップＳ２〜ステップＳ５は、図５に示すステップＳ２〜ステップＳ５と同一である。
【００７８】
次にステップＳ６で、移送動作シミュレート部９０は、物品移送動作のシミュレーションとして、コンベヤモデル１６Ｍの上面に沿って物品運搬方向αへ移動する整列した物品モデル１８Ｍ（物品モデルセット１８ＭＳ）に対し、移送ロボットモデル７４Ｍが自己の作業領域内（作業領域枠５６ａ、５６ｂの間）で、物品モデルセット１８ＭＳを一括把持して移送するための物品移送動作を生成する。移送動作シミュレート部９０は、現実のロボットシステム１２において実行される前述した手順と同様の手順により、移送ロボットモデル７４Ｍの物品移送動作を生成することができる。
【００７９】
移送動作シミュレート部９０は、最下流に位置する物品モデルセット１８ＭＳが情報送信実行場所９２を通過したときに、物品モデル１８Ｍの位置情報Ｄｐや整列パターンＰの情報を下流側の整列ロボットモデル１４Ｍから移送ロボットモデル７４Ｍへ仮想的に送信させる。そして移送動作シミュレート部９０は、移送ロボットモデル７４Ｍに対し、２台の整列ロボットモデル１４Ｍによって規則配置に整列された物品モデルセット１８ＭＳに対する物品移送動作を生成し、移送ロボットモデル７４Ｍ（機構部及びハンド）に物品移送動作を遂行させる。
【００８０】
なお、ロボットシステム７２が複数の移送ロボット７４を有する場合には、複数の整列ロボット１４を有する構成と同様に、それら移送ロボット７４が物品セット１８に対しどのような分担で物品移送動作を行うかの作業割合を必要に応じて設定し、この作業割合に従って個々の移送ロボット７４を制御することができる。そしてシミュレーション装置７０は、移送動作シミュレート部９０が、必要に応じて設定された作業割合に従い、複数の移送ロボットモデル７４Ｍに所定の分担で物品移送動作を遂行させることができる。
【００８１】
上記構成を有するシミュレーション装置７０によれば、動作シミュレート部８８（運搬動作シミュレート部４４、検出動作シミュレート部４６、整列パターン生成部４８、整列動作シミュレート部５０、移送動作シミュレート部９０）が、作業プログラム６０及び種々の作業パラメータ６２に従って、仮想空間３８に配置したコンベヤモデル１６Ｍ、センサモデル２０Ｍ、整列ロボットモデル１４Ｍ及び移送ロボットモデル７４Ｍに、仮想空間３８に配置した複数の物品モデル１８Ｍに対する物品運搬動作、物品検出動作、物品整列動作及び物品移送動作を模擬的に遂行させることにより、整列ロボットモデル１４Ｍが、コンベヤモデル１６Ｍに不規則配置で搭載された複数の物品モデル１８Ｍを、コンベヤモデル１６Ｍの運搬動作に追従しながら個別に取り上げてコンベヤモデル１６Ｍ上で所定の規則配置に整列させることが可能か否か、及び移送ロボットモデル７４Ｍが、コンベヤモデル１６Ｍ上に規則配置で整列した物品モデルセット１８ＭＳを、コンベヤモデル１６Ｍの運搬動作に追従しながら一括把持して移送させることが可能か否か（つまり現実のロボットシステム７２における物品整列作業及び物品移送作業に関する作業プログラム６０及び作業パラメータ６２の妥当性）を、仮想空間３８において検証することができる。シミュレーション装置７０において模擬的に実行した物品整列作業又は物品移送作業に問題が発見された場合は、問題を解消するべく作業プログラム６０や作業パラメータ６２を適宜に修正することができる。また現実のロボットシステム７２の構成が変更された場合にも、シミュレーション装置７０において、変更されたロボットシステム７２に対応する物品整列作業を模擬的に実行することで、作業プログラム６０や作業パラメータ６２を最適化することができる。したがってシミュレーション装置７０によれば、生産現場でのロボットシステム７２の立ち上げに要する時間や費用を削減できる。
【００８２】
以上、本発明の好適な実施形態を説明したが、シミュレーション装置１０、７０をコンピュータにより構成できることから、本発明は下記のように規定することもできる。
すなわち、本発明のさらに他の態様は、ロボットが行う物品整列作業を模擬的に実行するために、コンピュータを、コンベヤ１６、コンベヤ１６に搭載される複数の物品１８、複数の物品１８を検出するセンサ２０、及び複数の物品１８をコンベヤ１６の上で整列させる整列ロボット１４を、それぞれにモデル化したコンベヤモデル１６Ｍ、複数の物品モデル１８Ｍ、センサモデル２０Ｍ及び整列ロボットモデル１４Ｍを、仮想空間３８に配置するモデル配置部４０、８６、複数の物品モデル１８Ｍをコンベヤモデル１６Ｍが不規則配置で搭載して運搬する物品運搬動作を、模擬的に遂行する運搬動作シミュレート部４４、不規則配置で運搬される複数の物品モデル１８Ｍの各々の位置情報Ｄｐをセンサモデル２０Ｍが取得する物品検出動作を、模擬的に遂行する検出動作シミュレート部４６、それぞれが物品モデル１８Ｍの位置を表す複数のパターン要素を予め定めた規則配置で有する整列パターンＰを、位置情報Ｄｐを用いてコンベヤモデル１６Ｍの上に生成する整列パターン生成部４８、並びに整列ロボットモデル１４Ｍが物品運搬動作に追従しながら不規則配置の物品モデル１８Ｍの各々を取り上げるとともに取り上げた物品モデル１８Ｍを整列パターンＰに従って置く物品整列動作を、物品運搬動作の情報Ｄｍと位置情報Ｄｐとを用いて模擬的に遂行する整列動作シミュレート部５０、として機能させるためのシミュレーションプログラムである。
【００８３】
また、本発明のさらに他の態様は、ロボットが行う物品整列作業を模擬的に実行するために、コンピュータを、コンベヤ１６、コンベヤ１６に搭載される複数の物品１８、複数の物品１８を検出するセンサ２０、及び複数の物品１８をコンベヤ１６の上で整列させる整列ロボット１４を、それぞれにモデル化したコンベヤモデル１６Ｍ、複数の物品モデル１８Ｍ、センサモデル２０Ｍ及び整列ロボットモデル１４Ｍを、仮想空間３８に配置するモデル配置部４０、８６、複数の物品モデル１８Ｍをコンベヤモデル１６Ｍが不規則配置で搭載して運搬する物品運搬動作を、模擬的に遂行する運搬動作シミュレート部４４、不規則配置で運搬される複数の物品モデル１８Ｍの各々の位置情報Ｄｐをセンサモデル２０Ｍが取得する物品検出動作を、模擬的に遂行する検出動作シミュレート部４６、それぞれが物品モデル１８Ｍの位置を表す複数のパターン要素を予め定めた規則配置で有する整列パターンＰを、位置情報Ｄｐを用いてコンベヤモデル１６Ｍの上に生成する整列パターン生成部４８、並びに整列ロボットモデル１４Ｍが物品運搬動作に追従しながら不規則配置の物品モデル１８Ｍの各々を取り上げるとともに取り上げた物品モデル１８Ｍを整列パターンＰに従って置く物品整列動作を、物品運搬動作の情報Ｄｍと位置情報Ｄｐとを用いて模擬的に遂行する整列動作シミュレート部５０、として機能させるためのシミュレーションプログラムを記録したコンピュータ読み取り可能な記録媒体５４（図４）である。
【００８４】
上記シミュレーションプログラムは、さらに、コンピュータを、整列パターンＰに従って置かれた複数の物品モデル１８Ｍを移送ロボットモデル７４Ｍが物品運搬動作に追従しながら一括して取り上げて移送する物品移送動作を、物品運搬動作の情報Ｄｍを用いて模擬的に遂行する移送動作シミュレート部９０、として機能させる構成を有することができる。
【符号の説明】
【００８５】
１０、７０    シミュレーション装置
１２、７２    ロボットシステム
１４    整列ロボット
１６    コンベヤ
１８    物品
２０    センサ
２２    コンベヤセンサ
２４    制御装置
２８    カメラ
３８    仮想空間
４０、８６    モデル配置部
４２、８８    動作シミュレート部
４４    運搬動作シミュレート部
４６    検出動作シミュレート部
４８    整列パターン生成部
５０    整列動作シミュレート部
５２    表示装置
５４    記録媒体
６０    作業プログラム
６２    作業パラメータ
７４    移送ロボット
７６    制御装置
７８    第２コンベヤ
９０    移送動作シミュレート部
【図１】
2018069377.tif 000003
【図２】
2018069377.tif 000004
【図３Ａ】
2018069377.tif 000005
【図３Ｂ】
2018069377.tif 000006
【図３Ｃ】
2018069377.tif 000007
【図４】
2018069377.tif 000008
【図５】
2018069377.tif 000009
【図６】
2018069377.tif 000010
【図７Ａ】
2018069377.tif 000011
【図７Ｂ】
2018069377.tif 000012
【図８Ａ】
2018069377.tif 000013
【図８Ｂ】
2018069377.tif 000014
【図８Ｃ】
2018069377.tif 000015
【図９】
2018069377.tif 000016
【図１０】
2018069377.tif 000017
【図１１】
2018069377.tif 000018
【図１２】
2018069377.tif 000019
【図１３】
2018069377.tif 000020