(57)【要約】【課題】シミュレーション処理精度を向上するシミュレーションシステム等を提供する。【解決手段】シミュレーションシステム１００は、搬送装置３０ａ１〜３０ａｎそれぞれの搬送に関する第一搬送指令を搬送装置３０ａ１〜３０ａｎそれぞれに割り付ける搬送制御部２１を備える搬送システム１のシミュレーションを行う。シミュレーションシステム１００は、搬送装置３０ａ１〜３０ａｎそれぞれに対応する仮想搬送装置１３０ａ１〜１３０ａｎに、シミュレーション用の第二搬送指令を割り付け、第二搬送指令に基づく模擬動作をさせる仮想搬送制御部１２１と、仮想搬送制御部１２１が仮想搬送装置１３０ａ１〜１３０ａｎに第二搬送指令を割り付ける際に参照する第二プログラムを有する第一制御機能部１２２とを備える。第二プログラムは、搬送制御部２１が搬送装置３０ａ１〜３０ａｎに第一搬送指令を割り付ける際に参照する第一プログラムと同一である。【選択図】図４
2019128802.tif 000002
【特許請求の範囲】
【請求項１】
実機である搬送装置それぞれの搬送に関する搬送指令を出力する上位コントローラと、前記上位コントローラから出力される第一搬送指令を前記搬送装置それぞれに割り付ける下位コントローラとを備える搬送システムについて、前記搬送システムのシミュレーションを行うシミュレーションシステムであって、
前記搬送装置それぞれに対応する仮想搬送装置に、シミュレーション用の搬送指令である第二搬送指令を割り付け、前記第二搬送指令に基づく模擬動作をさせる仮想コントローラと、
前記仮想コントローラが前記仮想搬送装置に前記第二搬送指令を割り付ける際に参照する第二プログラムを有する制御機能部と
を備え、
前記第二プログラムは、前記下位コントローラが前記搬送装置に前記第一搬送指令を割り付ける際に参照する第一プログラムと同一である
シミュレーションシステム。
【請求項２】
前記第一プログラムは、前記搬送装置の制御プログラムのうち、前記搬送装置への搬送対象の割り付け及び前記搬送装置の搬送動作を制御するプログラムである
請求項１に記載のシミュレーションシステム。
【請求項３】
前記第一プログラム及び前記第二プログラムは、前記下位コントローラ及び前記仮想コントローラによって実行可能である共通化されたライブラリである
請求項１または２に記載のシミュレーションシステム。
【請求項４】
前記下位コントローラが使用するプログラムロジック及びプログラム言語の少なくとも１つは、前記仮想コントローラと異なる
請求項１〜３のいずれか一項に記載のシミュレーションシステム。
【請求項５】
搬送システムのシミュレーション方法であって、
前記搬送システムは、第一プログラムを参照することによって、実機である搬送装置それぞれの搬送に関する搬送指令である第一搬送指令を前記搬送装置それぞれに割り付け、
前記シミュレーション方法は、
第二プログラムを参照することによって、前記搬送装置それぞれに対応する仮想搬送装置に、シミュレーション用の搬送指令である第二搬送指令を割り付け、前記第二搬送指令に基づく模擬動作をさせ、
上記処理は、制御回路によって実行され、
前記第二プログラムは、前記第一プログラムと同一である
シミュレーション方法。
【請求項６】
搬送システムのシミュレーションをコンピュータに実行させるプログラムであって、
前記コンピュータに、搬送に関する搬送指令を搬送装置それぞれに割り付けるための第二ライブラリに従って、前記搬送システムの実機の搬送装置それぞれに対応する仮想搬送装置に、シミュレーション用の前記搬送指令を割り付けさせ、前記シミュレーション用の搬送指令に基づく模擬動作をさせ、
前記第二ライブラリは、前記搬送システムが前記実機の搬送装置に実機用の前記搬送指令を割り付ける際に従う第一ライブラリと同一である
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シミュレーションシステム、シミュレーション方法及びプログラムに関する。
【背景技術】
【０００２】
物流倉庫、配送センター及び工場等では、種々の物品の搬送の自動化が検討されている。例えば、物流倉庫では、搬送システム、ピッキングシステム及びソーティングシステム等の自動化が検討されている。このような規模が大きいシステムを搬送装置等の実機を用いて動作確認することは、スペース及びコストの観点から難しい。このため、シミュレーションを用いたシステムの動作確認が行われる。例えば、特許文献１には、複数の搬送装置を含む物流搬送システムの物流搬送制御装置が記載されている。この物流搬送制御装置は、メインコンピュータ及びエキスパートシステムを含む。メインコンピュータは、シミュレーション処理により、物流搬送システムの作業運行スケジュールを作成する。エキスパートシステムは、当該作業運行スケジュールに沿って搬送作業する搬送装置から情報を取得し、最適な運行指示情報を決定する。メインコンピュータは、決定された運行指示情報に基づき、再度シミュレーション処理を行い、作業運行スケジュールを作成する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平４−２５２３６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１の物流搬送制御装置では、メインコンピュータのシミュレーション処理結果と搬送機器の最適な運行との相違を低減するために、メインコンピュータは、搬送装置の実際の搬送作業に基づく運行指示情報を用いて、再度シミュレーション処理を行う。このような複数回のシミュレーション処理の繰り返しは、最適な作業運行作業スケジュールを備えた物流搬送システムの構築を遅延させる可能性がある。
【０００５】
そこで、本発明は、シミュレーション処理精度を向上するシミュレーションシステム、シミュレーション方法及びプログラムを提供する。
【課題を解決するための手段】
【０００６】
本発明の一態様に係るシミュレーションシステムは、実機である搬送装置それぞれの搬送に関する搬送指令を出力する上位コントローラと、前記上位コントローラから出力される第一搬送指令を前記搬送装置それぞれに割り付ける下位コントローラとを備える搬送システムについて、前記搬送システムのシミュレーションを行うシミュレーションシステムであって、前記搬送装置それぞれに対応する仮想搬送装置に、シミュレーション用の搬送指令である第二搬送指令を割り付け、前記第二搬送指令に基づく模擬動作をさせる仮想コントローラと、前記仮想コントローラが前記仮想搬送装置に前記第二搬送指令を割り付ける際に参照する第二プログラムを有する制御機能部とを備え、前記第二プログラムは、前記下位コントローラが前記搬送装置に前記第一搬送指令を割り付ける際に参照する第一プログラムと同一である。
【０００７】
また、本発明の一態様に係るシミュレーションシステムにおいて、前記第一プログラムは、前記搬送装置の制御プログラムのうち、前記搬送装置への搬送対象の割り付け及び前記搬送装置の搬送動作を制御するプログラムであってもよい。
【０００８】
また、本発明の一態様に係るシミュレーションシステムにおいて、前記第一プログラム及び前記第二プログラムは、前記下位コントローラ及び前記仮想コントローラによって実行可能である共通化されたライブラリであってもよい。
【０００９】
また、本発明の一態様に係るシミュレーションシステムにおいて、前記下位コントローラが使用するプログラムロジック及びプログラム言語の少なくとも１つは、前記仮想コントローラと異なってもよい。
【００１０】
本発明の一態様に係るシミュレーション方法は、搬送システムのシミュレーション方法であって、前記搬送システムは、第一プログラムを参照することによって、実機である搬送装置それぞれの搬送に関する搬送指令である第一搬送指令を前記搬送装置それぞれに割り付け、前記シミュレーション方法は、第二プログラムを参照することによって、前記搬送装置それぞれに対応する仮想搬送装置に、シミュレーション用の搬送指令である第二搬送指令を割り付け、前記第二搬送指令に基づく模擬動作をさせ、上記処理は、制御回路によって実行され、前記第二プログラムは、前記第一プログラムと同一である。
【００１１】
本発明の一態様に係るプログラムは、搬送システムのシミュレーションをコンピュータに実行させるプログラムであって、前記コンピュータに、搬送に関する搬送指令を搬送装置それぞれに割り付けるための第二ライブラリに従って、前記搬送システムの実機の搬送装置それぞれに対応する仮想搬送装置に、シミュレーション用の前記搬送指令を割り付けさせ、前記シミュレーション用の搬送指令に基づく模擬動作をさせ、前記第二ライブラリは、前記搬送システムが前記実機の搬送装置に実機用の前記搬送指令を割り付ける際に従う第一ライブラリと同一である。
【００１２】
なお、上記の包括的又は具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラム又はコンピュータ読取可能な記録ディスク等の記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。コンピュータ読み取り可能な記録媒体は、例えばＣＤ−ＲＯＭ（Compact Disc-Read Only Memory）等の不揮発性の記録媒体を含む。
【発明の効果】
【００１３】
本発明に係るシミュレーションシステム等によれば、シミュレーション処理精度の向上が可能になる。
【図面の簡単な説明】
【００１４】
【図１】図１は、実施の形態に係る搬送システムの機能的な構成の一例を示すブロック図である。
【図２】図２は、実施の形態に係る物流倉庫の一例の模式図である。
【図３】図３は、実施の形態に係るシミュレーションシステムの機能的な構成の一例を示すブロック図である。
【図４】図４は、図３のシミュレーション実行部の詳細な機能的な構成の一例を示すブロック図である。
【図５】図５は、実施の形態の変形例に係るシミュレーションシステムの機能的な構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１５】
以下、実施の形態に係るシミュレーションシステムを、図面を参照しながら説明する。なお、以下で説明される実施の形態は、包括的又は具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、並びに、構成要素の配置位置及び接続形態等は、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、各図は模式図であり、必ずしも厳密に図示されたものではない。各図において、実質的に同一の構成に対しては同一の符号を付し、重複する説明は省略又は簡略化される場合がある。
【００１６】
まず、実施の形態に係るシミュレーションシステム１００が適用される実際のシステムを説明する。本実施の形態では、シミュレーションシステム１００は、物流倉庫内の搬送システム１に適用されるものとする。搬送システム１は、物流倉庫内の搬送装置の動作を制御しつつ、物品の入出庫及び在庫を管理する。物流倉庫は、物品を在庫又は保管し、設定された仕向先に物品を分配して出荷するために用いられる。なお、シミュレーションシステム１００の適用対象は、物流倉庫の搬送システムに限定されるものでなく、配送センター、工場等の搬送装置が稼動するいかなるシステムであってもよい。
【００１７】
例えば、図１は、実施の形態に係る搬送システム１の機能的な構成の一例のブロック図を示す。図１に示すように、搬送システム１は、倉庫制御部１０と、セル制御部２０と、搬送装置３０とを備える。倉庫制御部１０は、物流倉庫全体を管理する。ここで、倉庫制御部１０は、搬送システム１の上位コントローラの一例である。
【００１８】
例えば、図２には、実施の形態に係る物流倉庫２の一例が模式的に示されている。物流倉庫２は、セルと呼ばれる複数のエリアＣに区分されている。セルＣは、物品を収納するラック３と、当該ラック３への物品の運搬、収納及び取り出し、つまり入出庫を行う搬送装置３０とから構成されるひとまとまりのエリアである。物流倉庫２内では、複数のセルＣが区画形成され、各セルＣに専用の搬送装置３０が配置されることによって、搬送装置３０の錯綜が抑えられた効率的な物品の入出庫が可能になる。搬送装置３０の例は、無人搬送車、自動倉庫、コンベヤシステム、ピッキング装置、ソーティング装置等である。無人搬送車の例は、有軌道無人搬送車、天井走行式無人搬送車、磁気誘導式無人搬送車、レーザー誘導式無人搬送車等である。ピッキング装置は、自動でピッキングを行う装置、及び、作業者のピッキング作業を伴う装置を含む。１つのセルＣには、複数の種類の搬送装置３０が含まれてもよい。また、異なるセルＣ間で、物品の受け渡しが行われるように構成されてもよい。
【００１９】
例えば図２では、搬送装置３０は、電動の天井走行式無人搬送車及び自動倉庫で構成されている。天井走行式無人搬送車は、天井に配置されたレールに沿って走行し且つ物品を保持するチャック機構部を昇降させることで物品の受け渡しを行う。自動倉庫は、ラック３を構成する。本実施の形態では、搬送装置３０は、第一搬送装置３０ａ１〜第Ｎ搬送装置３０ａｎで構成される。「Ｎ」及び「ｎ」は、２以上の同じ整数である。
【００２０】
セル制御部２０は、各セルＣに設けられ、倉庫制御部１０から受け取る指令に基づき、当該セルＣを管理する。例えば、複数のセルＣが存在する場合、搬送システム１は、１つの倉庫制御部１０と、複数のセル制御部２０とを備える。また、１つのセルＣに対して、１つのセル制御部２０が設けられてもよく、複数のセル制御部２０が設けられてもよい。例えば、１つのセルＣに複数の種類の搬送装置３０が配置される場合、搬送装置３０の種類毎にセル制御部２０が設けられてもよい。なお、図１は、１つのセルＣと倉庫制御部１０との関係を示す。
【００２１】
倉庫制御部１０及びセル制御部２０はそれぞれ、コンピュータ装置又はその一部であってもよく、ＤＳＰ（Digital Signal Processor）、ＣＰＵ（Central Processing Unit）及びＭＰＵ（Micro Processing Unit）等のプロセッサ、並びにＬＳＩ（Large Scale Integration：大規模集積回路）等の回路であってもよく、ＩＣカード（Integrated Circuit Card）又は単体のモジュール等であってもよい。倉庫制御部１０及びセル制御部２０はそれぞれ、単独でコンピュータ装置又はモジュールを構成してもよく、コンピュータ装置等の他の装置に組み込まれてもよい。倉庫制御部１０及びセル制御部２０は、同一の装置を構成してもよく、別々の装置を構成してもよい。
【００２２】
倉庫制御部１０は、在庫管理部１１と、入出庫オーダ受付部１２と、棚割付制御部１３とを、構成要素として含む。在庫管理部１１は、各セルＣ内の各ラック３の棚への物品の入庫及び出庫を管理することによって、各セルＣ内における各物品の在庫数量及び在庫位置を管理し、図示しないメモリに保持する。入出庫オーダ受付部１２は、搬送システム１のオペレータによって入力される入出庫オーダを取得する。入出庫オーダは、入庫する物品名及びその数量、並びに、出庫する物品名及びその数量を含む。入出庫オーダは、出庫する物品の仕向先の情報を含んでもよい。
【００２３】
棚割付制御部１３は、物品を入庫する場合、在庫管理部１１が保持する各セルＣ内における各物品の在庫数量及び在庫位置の情報と、入出庫オーダ受付部１２が保持する入出庫オーダとに基づき、物品を収納するセルＣ及び当該セルＣ内のラック３の棚の収納位置を決定する。さらに、棚割付制御部１３は、収納される物品名及び決定された収納位置を指示する搬送指令を、決定されたセルＣのセル制御部２０に送る。棚割付制御部１３は、物品を出庫する場合、在庫管理部１１が保持する各セルＣ内における各物品の在庫数量及び在庫位置の情報と、入出庫オーダ受付部１２が保持する入出庫オーダとに基づき、物品を取り出すセルＣ及び当該セルＣ内のラック３の棚の取出位置を決定する。さらに、棚割付制御部１３は、取り出される物品名及び決定された取出位置を指示する搬送指令を、決定されたセルＣのセル制御部２０に送る。この場合、棚割付制御部１３は、出庫する物品の仕向先も搬送指令として送ってもよい。以下において、上記のような搬送指令を、「第一搬送指令」とも呼ぶ。
【００２４】
倉庫制御部１０とセル制御部２０とが別の装置を構成する場合、装置間の通信は、有線通信であってもよく、無線通信であってもよい。上記有線通信には、既存のいかなる有線通信が適用されてもよい。上記無線通信には、既存のいかなる無線通信が適用されてもよい。例えば、上記無線通信には、Ｗｉ−Ｆｉ（登録商標）（Wireless Fidelity）などの無線ＬＡＮ（Local Area Network）が適用されてもよく、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＺｉｇＢｅｅ（登録商標）等の近距離無線通信が適用されてもよい。倉庫制御部１０及びセル制御部２０は、通信回路を含んでもよく、別個に設けられた通信回路又は通信装置を介して通信してもよい。
【００２５】
セル制御部２０は、搬送制御部２１と、制御機能部２２と、表示制御部２３とを含む。さらに、搬送制御部２１は、搬送指令受付部２１ａと、搬送スケジューラ２１ｂと、搬送割付部２１ｃと、搬送指令出力部２１ｄと、搬送状態取得部２１ｅと、監視部２１ｆと、異常状態処理部２１ｇとを、構成要素として含む。搬送制御部２１は、倉庫制御部１０から受け取る第一搬送指令に基づき、搬送制御部２１を含むセル制御部２０が対応付けられたセルＣ内の搬送装置３０ａ１〜３０ａｎを制御する。つまり、搬送制御部２１は、倉庫制御部１０から出力される第一搬送指令を、搬送装置３０ａ１〜３０ａｎに割り付ける。ここで、搬送制御部２１は、搬送システム１の下位コントローラの一例である。
【００２６】
倉庫制御部１０の構成要素、搬送制御部２１の構成要素、及び表示制御部２３は、ＤＳＰ、ＣＰＵ及びＭＰＵ等のプロセッサ、並びに、ＲＡＭ（Random Access Memory）及びＲＯＭ（Read-Only Memory）等のメモリなどからなるコンピュータシステム（図示せず）により構成されてもよい。上記の一部又は全部の機能は、プロセッサがＲＡＭを作業用のメモリとして用いてＲＯＭに記録されたプログラムを実行することによって達成されてもよい。また、上記の一部又は全部の機能は、電子回路又は集積回路等の専用のハードウェア回路によって達成されてもよい。上記の一部又は全部の機能は、上記のソフトウェア機能とハードウェア回路との組み合わせによって構成されてもよい。
【００２７】
制御機能部２２は、搬送制御部２１及び表示制御部２３が参照することによって動作するためのプログラム等を格納する。制御機能部２２は、例えば、ＲＯＭ、ＲＡＭ、フラッシュメモリなどの半導体メモリ、ハードディスクドライブ、又は、ＳＳＤ（Solid State Drive）等の記憶装置によって実現される。上記プログラムは、第一搬送プログラム１０００を含む。第一搬送プログラム１０００は、搬送装置３０ａ１〜３０ａｎによる搬送に関するプログラムであり、搬送装置３０ａ１〜３０ａｎの搬送対象及び搬送動作を決定するプログラムである。つまり、第一搬送プログラム１０００は、搬送制御部２１が搬送装置３０ａ１〜３０ａｎに、倉庫制御部１０の第一搬送指令を割り付ける際に参照するプログラムである。搬送制御部２１は、第一搬送プログラム１０００に従って、第一搬送指令を搬送装置３０ａ１〜３０ａｎに割り付ける現実の制御を行う。ここで、第一搬送プログラム１０００は、第一プログラム及び第一ライブラリの一例である。
【００２８】
第一搬送プログラム１０００は、搬送指令受付部２１ａ、搬送スケジューラ２１ｂ、搬送割付部２１ｃ、搬送指令出力部２１ｄ及び搬送状態取得部２１ｅのうち、少なくとも搬送スケジューラ２１ｂ及び搬送割付部２１ｃを動作させるためのプログラムである。第一搬送プログラム１０００は、プログラムの部品を含むライブラリであり、制御プログラム関数群で構成される。この制御プログラム関数群は、搬送システム１内の搬送装置３０ａ１〜３０ａｎに対して物品を運ぶ指令の順序を計画する搬送スケジューラ２１ｂ、及び搬送装置３０ａ１〜３０ａｎに対して指令を送信する搬送割付部２１ｃで使用するプログラム等の、搬送制御処理を実行する関数の集まりである。このような第一搬送プログラム１０００は、セル制御部２０に設定されたプログラム言語、プログラムのロジック又はプログラムの関数等のみで機能するようなセル制御部２０に特有のものではなく、種々のプログラムで機能することができる汎用性を有する。第一搬送プログラム１０００のファイル例は、拡張子が「ｄｌｌ」であるＤＬＬ（Dynamic Link Library）ファイルである。
【００２９】
表示制御部２３は、搬送制御部２１が出力する情報を、画像信号及び／又は音声信号に変換し、図示しない表示装置に出力する。表示装置の例は、ディスプレイ及びスピーカである。
【００３０】
搬送制御部２１の搬送指令受付部２１ａは、倉庫制御部１０から第一搬送指令を取得し、搬送スケジューラ２１ｂに出力する。搬送スケジューラ２１ｂは、取得された第一搬送指令に基づき、各搬送装置３０ａ１〜３０ａｎの搬送スケジュールを決定する。具体的には、搬送スケジューラ２１ｂは、各搬送装置３０ａ１〜３０ａｎに、搬送対象を割り付ける。搬送スケジューラ２１ｂは、各搬送装置３０ａ１〜３０ａｎが扱う搬送対象である物品、各搬送装置３０ａ１〜３０ａｎによる物品の搬送順序、及び各搬送装置３０ａ１〜３０ａｎによる物品の搬送ルート等を決定する。
【００３１】
搬送割付部２１ｃは、各搬送装置３０ａ１〜３０ａｎの搬送スケジュール及び各搬送装置３０ａ１〜３０ａｎの位置に基づき、各搬送装置３０ａ１〜３０ａｎの動作を決定する。つまり、搬送割付部２１ｃは、各搬送装置３０ａ１〜３０ａｎに搬送動作を割り付ける。具体的には、搬送割付部２１ｃは、各搬送装置３０ａ１〜３０ａｎの停止、稼動、走行、走行方向及び走行速度等の動作と、時刻とを対応付けた搬送動作を決定する。
【００３２】
搬送指令出力部２１ｄは、決定された搬送装置３０ａ１〜３０ａｎの搬送動作の指令をそれぞれ、搬送装置３０ａ１〜３０ａｎに送る。セル制御部２０と搬送装置３０ａ１〜３０ａｎとは通信するが、当該通信は、有線通信であってもよく、無線通信であってもよい。有線通信及び無線通信には、倉庫制御部１０及びセル制御部２０間について上述したような通信が適用されてもよい。
【００３３】
搬送状態取得部２１ｅは、各搬送装置３０ａ１〜３０ａｎから、その動作状態、つまり搬送状態の情報を取得する。搬送状態の情報は、搬送装置３０ａ１〜３０ａｎの搬送ログ及び電力消費量ログ等を含む。搬送ログは、搬送装置３０ａ１〜３０ａｎの停止時刻、稼動時刻、走行時刻及び走行速度、搬送装置３０ａ１〜３０ａｎがラック３へ物品を納める動作の開始及び終了時刻、並びに、搬送装置３０ａ１〜３０ａｎがラック３から物品を取り出す動作の開始及び終了時刻等を含む。電力消費量ログは、種々の時刻間における搬送装置３０ａ１〜３０ａｎの電力消費量を含む。時刻の例は、所定の時間経過毎の時刻、搬送装置３０ａ１〜３０ａｎの動作が変化した時刻等である。
【００３４】
監視部２１ｆは、各搬送装置３０ａ１〜３０ａｎが予定通りに搬送動作を行っているか否かを監視する。監視部２１ｆは、搬送割付部２１ｃから、決定された各搬送装置３０ａ１〜３０ａｎの搬送動作を取得し、搬送状態取得部２１ｅから、各搬送装置３０ａ１〜３０ａｎの搬送状態の情報を取得する。監視部２１ｆは、各搬送装置３０ａ１〜３０ａｎについて、決定された搬送動作と搬送状態とを比較し、両者の間に、所定の判定基準以上の差異がある場合、搬送装置に異常が発生したと判定する。具体的には、決定された搬送動作に基づく、搬送装置３０ａ１〜３０ａｎの各動作の予定時刻と、搬送装置３０ａ１〜３０ａｎが実際に各動作を行った時刻との差異が、所定の判定基準以上である場合、監視部２１ｆは、搬送装置に異常が発生したと判定する。監視部２１ｆは、判定結果を異常状態処理部２１ｇに出力する。
【００３５】
異常状態処理部２１ｇは、監視部２１ｆの判定結果に応じて処理動作する。搬送装置３０ａ１〜３０ａｎに異常が発生した場合、異常状態処理部２１ｇは、異常状態を抑えるように処理する。具体的には、異常状態処理部２１ｇは、異常が発生した搬送装置３０ａ１〜３０ａｎを、表示制御部２３を介して、オペレータに報知してもよく、セルＣ内の全ての搬送装置３０ａ１〜３０ａｎを停止してもよい。
【００３６】
次に、搬送システム１の動作をシミュレートするシミュレーションシステム１００を説明する。シミュレーションシステム１００は、搬送システム１の入出庫動作である搬送動作を模擬する、つまりシミュレートする。例えば、図３は、実施の形態に係るシミュレーションシステム１００の機能的な構成の一例のブロック図を示す。図３に示すように、シミュレーションシステム１００は、シミュレーション実行部１０１と、記憶部１４０と、表示制御部１５０とを含む。さらに、シミュレーション実行部１０１は、仮想倉庫制御部１１０と、仮想セル制御部１２０と、仮想搬送装置１３０とを含む。本実施の形態では、シミュレーションシステム１００は、その構成を簡易にするために、１つのセルＣを対象とし、１つのセルＣ内の搬送装置３０ａ１〜３０ａｎの動作をシミュレートする。つまり、シミュレーションシステム１００は、１つの仮想的なセル（以下、「仮想セル」とも呼ぶ）において、仮想的な搬送装置である仮想搬送装置１３０を動作させる。しかしながら、シミュレーションシステム１００は、複数のセルＣを対象としてもよい。シミュレーションシステム１００は、コンピュータ装置又はその一部である。
【００３７】
記憶部１４０は、シミュレーション実行部１０１及び表示制御部１５０が参照することによって動作するためのプログラム、及びシミュレーション実行部１０１が出力する情報等を格納する。記憶部１４０は、例えば、ＲＯＭ、ＲＡＭ、フラッシュメモリなどの半導体メモリ、ハードディスクドライブ、又は、ＳＳＤ等の記憶装置によって実現される。
【００３８】
表示制御部１５０は、シミュレーション実行部１０１が出力する情報を、画像信号及び／又は音声信号に変換し、図示しない表示装置に出力する。本実施の形態では、表示制御部１５０は、シミュレーション実行部１０１が出力する情報を、記憶部１４０を介して取得するが、シミュレーション実行部１０１から直接取得してもよい。表示装置の例は、ディスプレイ及びスピーカである。
【００３９】
シミュレーション実行部１０１の仮想倉庫制御部１１０は、搬送システム１の倉庫制御部１０の動作をコンピュータ装置内で模擬する、つまりシミュレートする。仮想セル制御部１２０は、搬送システム１のセル制御部２０の動作をコンピュータ装置内でシミュレートする。仮想搬送装置１３０は、搬送システム１の搬送装置３０ａ１〜３０ａｎの動作をコンピュータ装置内でシミュレートする。仮想搬送装置１３０は、第一搬送装置３０ａ１〜第Ｎ搬送装置３０ａｎそれぞれに対応する第一仮想搬送装置１３０ａ１〜第Ｎ仮想搬送装置１３０ａｎを含む。
【００４０】
さらに、図４には、図３のシミュレーション実行部１０１の詳細な機能的な構成の一例が示されている。図４に示すように、仮想倉庫制御部１１０は、入出庫オーダ受付部１１２と、棚割付制御部１１３とを、構成要素として含む。仮想倉庫制御部１１０は、搬送システム１の搬送動作をシミュレートすればよいことと、その構成を簡易にすることとのために、在庫管理部を含まなくてもよい。入出庫オーダ受付部１１２は、搬送システム１の入出庫オーダ受付部１２の動作をシミュレートし、シミュレーションシステム１００の操作者によって入力される仮想的な物品の入出庫オーダを取得する。
【００４１】
棚割付制御部１１３は、搬送システム１の棚割付制御部１３の動作をシミュレートし、仮想セル内の１つ以上の仮想的なラックに対する物品の収納及び取り出しを指示する搬送指令を生成し、仮想セル制御部１２０に出力する。以下において、上記のような搬送指令を、「第二搬送指令」とも呼ぶ。
【００４２】
仮想セル制御部１２０は、仮想搬送制御部１２１と、第一制御機能部１２２とを含む。仮想搬送制御部１２１は、搬送システム１の搬送制御部２１の動作をシミュレートする。第一制御機能部１２２は、仮想搬送制御部１２１が参照することによって動作するためのプログラムを格納する。第一制御機能部１２２は、上述した記憶部１４０に関する構成のうちのいずれかの構成を有する。なお、第一制御機能部１２２は記憶部１４０と一体化されてもよい。上記プログラムは、搬送システム１の制御機能部２２が格納する第一搬送プログラム１０００と同じ第二搬送プログラム２０００を含む。このような第二搬送プログラム２０００も、プログラムの部品を含むライブラリであり、制御プログラム関数群で構成される。なお、本明細書及び特許請求の範囲において、２つのプログラムが同じであることは、２つのプログラムが全く同じであることと、２つのプログラムのロジック及び関数が同じであることとを含む。さらに、２つのプログラムが同じであることは、ファイル形式が同じであることも含む。本実施の形態では、第一搬送プログラム１０００及び第二搬送プログラム２０００のファイル形式はいずれも、ＤＬＬファイルである。ここで、第二搬送プログラム２０００は、第二プログラム及び第二ライブラリの一例である。
【００４３】
第二搬送プログラム２０００は、仮想搬送装置１３０ａ１〜１３０ａｎの搬送対象及び搬送動作を決定するプログラムである。つまり、第二搬送プログラム２０００は、仮想搬送制御部１２１が仮想搬送装置１３０ａ１〜１３０ａｎに、仮想倉庫制御部１１０の第二搬送指令を割り付ける際に参照するプログラムである。仮想搬送制御部１２１は、第二搬送プログラム２０００に従って、第二搬送指令を仮想搬送装置１３０ａ１〜３０ａｎに割り付ける仮想的な制御を行う。第二搬送プログラム２０００は、後述する搬送指令受付部１２１ａ、搬送スケジューラ１２１ｂ、搬送割付部１２１ｃ、搬送指令出力部１２１ｄ及び搬送状態取得部１２１ｅのうち、少なくとも搬送スケジューラ１２１ｂ及び搬送割付部１２１ｃを動作させるためのプログラムである。
【００４４】
仮想搬送制御部１２１は、仮想搬送装置１３０ａ１〜１３０ａｎに、仮想倉庫制御部１１０から出力される搬送指令であるシミュレーション用の搬送指令を割り付け、当該搬送指令に基づく模擬動作をさせる。仮想搬送制御部１２１は、搬送指令受付部１２１ａと、搬送スケジューラ１２１ｂと、搬送割付部１２１ｃと、搬送指令出力部１２１ｄと、搬送状態取得部１２１ｅとを構成要素として含む。仮想搬送制御部１２１は、搬送システム１の搬送動作をシミュレートすればよいことと、その構成を簡易にすることとのために、監視部及び異常状態処理部を含まなくてもよい。ここで、仮想搬送制御部１２１は、仮想コントローラの一例である。
【００４５】
第二搬送プログラム２０００と第一搬送プログラム１０００とが同じであるため、第二搬送プログラム２０００を用いた仮想的な制御は、第一搬送プログラム１０００を用いた搬送システム１の現実の制御と同じである。これにより、仮想搬送制御部１２１による仮想搬送装置１３０への仮想的な搬送動作の割り付けは、搬送制御部２１による搬送装置３０への現実の搬送動作の割り付けと全く同じように実行され得る。仮想搬送制御部１２１による仮想搬送装置１３０の制御結果から、搬送システム１で搬送装置３０を実際に制御する場合と同じ結果が得られる。これにより、シミュレーションシステム１００の処理結果の信頼性が向上する。
【００４６】
搬送指令受付部１２１ａは、搬送システム１の搬送指令受付部２１ａの動作をシミュレートし、棚割付制御部１１３から出力される第二搬送司令を取得し搬送スケジューラ１２１ｂに出力する。搬送スケジューラ１２１ｂは、搬送システム１の搬送スケジューラ２１ｂの動作をシミュレートする。搬送スケジューラ１２１ｂは、第二搬送司令に基づき、仮想搬送装置１３０ａ１〜１３０ａｎそれぞれに搬送対象を割付け、仮想搬送装置１３０ａ１〜１３０ａｎそれぞれの搬送スケジュールを決定する。
【００４７】
搬送割付部１２１ｃは、搬送システム１の搬送割付部２１ｃの動作をシミュレートし、搬送スケジュールと、仮想セル内における各仮想搬送装置１３０ａ１〜１３０ａｎの位置とに基づき、各仮想搬送装置１３０ａ１〜１３０ａｎの搬送動作を決定する。仮想セル内における各仮想搬送装置１３０ａ１〜１３０ａｎの位置は、初期値として予め設定され、第一制御機能部１２２に格納されていてもよく、シミュレーションシステム１００の操作者による入力を通じて、決定されてもよい。
【００４８】
搬送指令出力部１２１ｄは、搬送システム１の搬送指令出力部２１ｄの動作をシミュレートし、決定された仮想搬送装置１３０ａ１〜１３０ａｎの搬送動作をそれぞれ、仮想搬送装置１３０ａ１〜１３０ａｎに指令する。搬送状態取得部１２１ｅは、搬送システム１の搬送状態取得部２１ｅの動作をシミュレートし、各仮想搬送装置１３０ａ１〜１３０ａｎから搬送動作の結果を取得し、記憶部１４０に出力する。
【００４９】
各仮想搬送装置１３０ａ１〜１３０ａｎは、搬送指令受付部１２１ａの指令に従って模擬的に搬送動作し、その搬送動作の結果を搬送状態取得部１２１ｅに出力する。搬送動作の結果は、仮想搬送装置１３０ａ１〜１３０ａｎの模擬的な搬送ログ及び電力消費量ログを含む。各仮想搬送装置１３０ａ１〜１３０ａｎには、予め、実機の搬送装置３０ａ１〜３０ａｎと同様の最大使用電力量及び使用電力量が設定されている。使用電力量は、仮想搬送装置１３０ａ１〜１３０ａｎが、停止、稼動、種々の走行速度での走行、並びに仮想的なラックへの物品の収納及び取り出し等の動作において使用する仮想的な電力量である。各仮想搬送装置１３０ａ１〜１３０ａｎは、模擬的な搬送ログと対応付けて、模擬的な電力消費量ログを生成する。
【００５０】
仮想搬送装置１３０は、第二制御機能部１３１をさらに含む。第二制御機能部１３１は、仮想搬送装置１３０ａ１〜１３０ａｎが参照することによって模擬的な搬送動作をするためのプログラムを格納する。当該プログラムは、電力算出プログラム３０００を含む。電力算出プログラム３０００は、仮想搬送装置１３０ａ１〜１３０ａｎの模擬的な電力消費量を算出し、電力消費量ログを生成するためのプログラムである。電力算出プログラム３０００は、プログラムの部品を含むライブラリであり、制御プログラム関数群で構成される。このような電力算出プログラム３０００は、仮想搬送装置１３０に設定されたプログラム言語、プログラムのロジック又はプログラムの関数等のみで機能するような仮想搬送装置１３０に特有のものではなく、種々のプログラムで機能することができる汎用性を有する。電力算出プログラム３０００のファイル例は、ＤＬＬファイルである。なお、第一制御機能部１２２が電力算出プログラム３０００を格納し、仮想搬送制御部１２１が仮想搬送装置１３０ａ１〜１３０ａｎの模擬的な電力消費量ログを生成してもよい。また、第二制御機能部１３１は、第一制御機能部１２２と一体化されてもよい。
【００５１】
上述のような仮想セル制御部１２０は、仮想倉庫制御部１１０からの第二搬送指令に応じて、仮想搬送装置１３０ａ１〜１３０ａｎに模擬的に搬送動作させ、その動作結果を記憶部１４０に出力し格納する。動作結果は、仮想搬送装置１３０ａ１〜１３０ａｎの搬送ログ及び電力消費量ログを含む。また、仮想セル制御部１２０は、搬送指令出力部１２１ｄが仮想搬送装置１３０ａ１〜１３０ａｎに出力した指令を、記憶部１４０に出力し格納してもよい。また、表示制御部１５０は、仮想セル制御部１２０が記憶部１４０に出力する情報に基づき、仮想セル内における仮想搬送装置１３０ａ１〜１３０ａｎの動作を画像化し、ディスプレイに表示させる。
【００５２】
また、仮想倉庫制御部１１０の構成要素、仮想搬送制御部１２１の構成要素、仮想搬送装置１３０ａ１〜１３０ａｎ、及び表示制御部１５０は、ＤＳＰ、ＣＰＵ及びＭＰＵ等のプロセッサ、並びに、ＲＡＭ及びＲＯＭ等のメモリなどからなるコンピュータシステム（図示せず）により構成されてもよい。上記の一部又は全部の機能は、プロセッサがＲＡＭを作業用のメモリとして用いてＲＯＭに記録されたプログラムを実行することによって達成されてもよい。上記の一部又は全部の機能は、上記のソフトウェア機能とハードウェア回路との組み合わせによって構成されてもよい。
【００５３】
また、本実施の形態では、仮想セル制御部１２０を動作させるためのプログラム、プログラムのロジック、及びプログラムの関数の少なくとも１つは、搬送システム１のセル制御部２０を動作させるためのプログラム、プログラムのロジック及びプログラムの関数と異なっている。しかしながら、セル制御部２０及び仮想セル制御部１２０の間において、搬送装置３０ａ１〜３０ａｎの搬送対象及び搬送動作を決定する第一搬送プログラム１０００と、仮想搬送装置１３０ａ１〜１３０ａｎの搬送対象及び搬送動作を決定する第二搬送プログラム２０００とは、汎用性のある同じプログラムである。第一搬送プログラム１０００及び第二搬送プログラム２０００は、セル制御部２０及び仮想セル制御部１２０のいずれにおいても動作することができる。つまり、セル制御部２０及び仮想セル制御部１２０の間で、搬送対象及び搬送動作を決定する搬送プログラムが共通化されている。このため、シミュレーションシステム１００で用いられた第二搬送プログラム２０００は、そのまま、第一搬送プログラム１０００として、搬送システム１に適用することができ、その逆も可能である。このとき、搬送プログラム、並びに、セル制御部２０及び仮想セル制御部１２０のプログラムの変更は不要である。このような搬送プログラムを用いることによって、仮想搬送装置１３０ａ１〜１３０ａｎの搬送動作は、搬送装置３０ａ１〜３０ａｎの搬送動作を精度良くシミュレートし得る。
【００５４】
また、本実施の形態では、セル制御部２０及び仮想セル制御部１２０の間で、搬送対象及び搬送動作を決定する搬送プログラムが共通化されている。搬送プログラムの実行に要する処理量は、セル制御部２０の監視部２１ｆ及び異常状態処理部２１ｇの動作に要する処理量よりも大幅に少ない。仮想セル制御部１２０では、監視部及び異常状態処理部が省略され、処理量が少ない搬送プログラムが、セル制御部２０との共通化プログラムとして用いられるため、仮想セル制御部１２０の処理速度の向上が可能である。よって、シミュレーションシステム１００のシミュレーション処理速度が向上する、又は、より処理能力が低いコンピュータ装置でも、シミュレーションシステム１００に用いることができる。
【００５５】
また、本実施の形態では、シミュレーションシステム１００において、仮想搬送装置１３０ａ１〜１３０ａｎの電力消費量ログを生成する電力算出プログラム３０００は、汎用性のあるプログラムである。このため、搬送システム１において、セル制御部２０又は搬送装置３０ａ１〜３０ａｎに、搬送装置３０ａ１〜３０ａｎの電力消費量ログを生成する機能を備えさせる場合、シミュレーションシステム１００の電力算出プログラム３０００の適用が可能である。また、セル制御部２０又は搬送装置３０ａ１〜３０ａｎが備える電力算出プログラムを、シミュレーションシステム１００に適用することも可能である。この場合も、電力算出プログラム、セル制御部２０、搬送装置３０ａ１〜３０ａｎ、仮想セル制御部１２０及び仮想搬送装置１３０ａ１〜１３０ａｎのプログラムの変更は、不要である。このような電力算出プログラムを用いることによって、仮想搬送装置１３０ａ１〜１３０ａｎの電力消費量ログは、搬送装置３０ａ１〜３０ａｎの電力消費量ログを精度良くシミュレートし得る。
【００５６】
上述したように、本発明の実施の形態に係るシミュレーションシステム１００は、実機である搬送装置３０ａ１〜３０ａｎそれぞれの搬送に関する搬送指令を出力する上位コントローラとしての倉庫制御部１０と、倉庫制御部１０から出力される第一搬送指令を搬送装置３０ａ１〜３０ａｎそれぞれに割り付ける下位コントローラとしての搬送制御部２１とを備える搬送システム１のシミュレーションを行う。シミュレーションシステム１００は、搬送装置３０ａ１〜３０ａｎそれぞれに対応する仮想搬送装置１３０ａ１〜１３０ａｎに、シミュレーション用の搬送指令である第二搬送指令を割り付け、第二搬送指令に基づく模擬動作をさせる仮想コントローラとしての仮想搬送制御部１２１と、仮想搬送制御部１２１が仮想搬送装置１３０ａ１〜１３０ａｎに第二搬送指令を割り付ける際に参照する第二プログラムである第二搬送プログラム２０００を有する第一制御機能部１２２とを備える。第二搬送プログラム２０００は、搬送制御部２１が搬送装置３０ａ１〜３０ａｎに第一搬送指令を割り付ける際に参照する第一プログラムである第一搬送プログラム１０００と同一である。
【００５７】
上記構成によると、仮想搬送制御部１２１が仮想搬送装置１３０ａ１〜１３０ａｎに第二搬送指令を割り付ける際に参照する第二搬送プログラム２０００は、搬送制御部２１が搬送装置３０ａ１〜３０ａｎに第一搬送指令を割り付ける際に参照する第一搬送プログラム１０００と同一である。よって、仮想搬送制御部１２１は、搬送制御部２１による第一搬送指令の割り付けと同様に、仮想搬送装置１３０ａ１〜１３０ａｎに第二搬送指令を割り付けることができる。このような仮想搬送装置１３０ａ１〜１３０ａｎにおける第二搬送指令に基づく模擬動作は、搬送装置３０ａ１〜３０ａｎにおける第一搬送指令に基づく動作を、高い精度でシミュレートすることができる。従って、シミュレーションシステム１００は、シミュレーション処理精度を向上することができる。
【００５８】
また、実施の形態に係るシミュレーションシステム１００において、第一搬送プログラム１０００は、搬送装置３０ａ１〜３０ａｎの制御プログラムのうち、搬送装置３０ａ１〜３０ａｎへの搬送対象の割り付け及び搬送装置３０ａ１〜３０ａｎの搬送動作を制御するプログラムである。上記構成において、搬送装置３０ａ１〜３０ａｎへの搬送対象の割り付け及び搬送装置３０ａ１〜３０ａｎの搬送動作を制御するプログラムを実行するための処理量は、比較的少ない。このようなプログラムが、搬送制御部２１及び仮想搬送制御部１２１の間で同一であるため、シミュレーションシステム１００は、シミュレーション処理の精度及び速度を向上することができる。
【００５９】
また、実施の形態に係るシミュレーションシステム１００において、第一搬送プログラム１０００及び第二搬送プログラム２０００は、搬送制御部２１及び仮想搬送制御部１２１によって実行可能である共通化されたライブラリである。上記構成によると、第一搬送プログラム１０００及び第二搬送プログラム２０００は、共通化され且つ汎用性を有するプログラムである。このようなプログラムは、搬送制御部２１及び仮想搬送制御部１２１への適用を簡易にする。
【００６０】
さらに、実施の形態に係るシミュレーションシステム１００において、搬送制御部２１が使用するプログラムロジック及びプログラム言語の少なくとも１つは、仮想搬送制御部１２１と異なる。上記構成によると、シミュレーションシステム１００に適したプログラムロジック及びプログラム言語を用いて、仮想搬送制御部１２１のプログラムが構築され、搬送システム１に適したプログラムロジック及びプログラム言語を用いて、搬送制御部２１のプログラムが構築されることが可能である。例えば、設計者及び取扱者が異なる等の理由で、シミュレーションシステム１００の構築に使用されるプログラムロジック又はプログラム言語は、搬送システム１の構築に使用されるプログラムロジック又はプログラム言語と異なる場合がある。このような場合でも、共通化されたライブラリである第一搬送プログラム１０００及び第二搬送プログラム２０００を搬送システム１及びシミュレーションシステム１００に適用することは、簡易であり、このような適用によって、シミュレーションシステム１００は、搬送システム１のシミュレーションを高い精度で行うことができる。
【００６１】
［変形例］
実施の形態の変形例に係るシミュレーションシステム２００を説明する。例えば、図５は、実施の形態の変形例に係るシミュレーションシステム２００の機能的な構成の一例のブロック図を示す。図５に示すように、シミュレーションシステム２００は、実施の形態に係るシミュレーションシステム１００と比較して、搬送装置シミュレータ１６０及び動作検証シミュレータ１７０をさらに備える。以下において、実施の形態と異なる点を中心に説明し、実施の形態と同様の点の説明を省略する。
【００６２】
図５に示すように、変形例に係るシミュレーションシステム２００の搬送装置シミュレータ１６０は、記憶部１４０から取得する情報に基づき、シミュレーション実行部１０１のシミュレーション結果を評価する。具体的には、搬送装置シミュレータ１６０は、搬送システム１の搬送装置３０ａ１〜３０ａｎの制御装置と同様の制御装置である搬送制御装置１６０ａを備える。搬送装置シミュレータ１６０は、仮想搬送装置１３０ａ１〜１３０ａｎの搬送ログと、当該搬送ログに対応する搬送指令出力部１２１ｄによる仮想的な指令とを、記憶部１４０から取得する。上記搬送ログは、上記指令を受けた仮想搬送装置１３０ａ１〜１３０ａｎが模擬的な搬送動作を行った結果を示す。
【００６３】
搬送装置シミュレータ１６０は、上記指令を搬送制御装置１６０ａに入力し、さらに、搬送制御装置１６０ａが出力する結果と、上記指令に対応する搬送ログとの比較結果を出力する。搬送制御装置１６０ａの出力結果は、上記指令に従った搬送装置３０ａ１〜３０ａｎの搬送動作を示す。本実施の形態では、搬送制御装置１６０ａの出力結果は、搬送ログであるが、搬送装置３０ａ１〜３０ａｎの動作を示す情報であればよい。本実施の形態では、搬送装置シミュレータ１６０は、仮想搬送装置１３０ａ１〜１３０ａｎの搬送ログに対応する仮想搬送装置１３０ａ１〜１３０ａｎの搬送動作と、搬送制御装置１６０ａの出力結果に対応する搬送装置３０ａ１〜３０ａｎの搬送動作とを、時間軸を基準に互いに対応付けた比較結果を出力する。搬送装置シミュレータ１６０は、比較結果を、搬送装置シミュレータ１６０が備える記憶装置に格納してもよく、記憶部１４０に格納してもよい。表示制御部１５０は、搬送装置シミュレータ１６０の比較結果を画像化し、ディスプレイに表示させてもよい。このように、搬送装置シミュレータ１６０は、個別の搬送装置３０ａ１〜３０ａｎの搬送動作と、当該搬送装置の搬送動作のシミュレーション結果との照合結果を出力する。
【００６４】
動作検証シミュレータ１７０は、記憶部１４０から取得する搬送ログに基づくシミュレーション結果を出力する。具体的には、動作検証シミュレータ１７０は、仮想搬送装置１３０ａ１〜１３０ａｎそれぞれの搬送ログに基づき、仮想搬送装置１３０ａ１〜１３０ａｎの搬送動作それぞれを、時間軸を基準に互いに対応付け、各仮想搬送装置１３０ａ１〜１３０ａｎの搬送動作を時系列的に出力する。動作検証シミュレータ１７０は、出力結果を、動作検証シミュレータ１７０が備える記憶装置に格納してもよく、記憶部１４０に格納してもよい。表示制御部１５０は、動作検証シミュレータ１７０の出力結果を画像化し、ディスプレイに表示させてもよい。このように、動作検証シミュレータ１７０は、シミュレーション結果に基づく仮想搬送装置１３０ａ１〜１３０ａｎ全体の搬送動作を出力する。
【００６５】
搬送装置シミュレータ１６０及び動作検証シミュレータ１７０は、シミュレーション実行部１０１と、同じ装置に含まれてもよく、別の装置に含まれてもよい。搬送装置シミュレータ１６０及び動作検証シミュレータ１７０は、同じ装置に含まれてもよく、別の装置に含まれてもよい。搬送装置シミュレータ１６０及び動作検証シミュレータ１７０は、コンピュータ装置又はその一部であってもよく、ＤＳＰ、ＣＰＵ及びＭＰＵ等のプロセッサ、並びにＬＳＩ等の回路であってもよく、ＩＣカード又は単体のモジュール等であってもよい。搬送装置シミュレータ１６０及び動作検証シミュレータ１７０は、プロセッサ、並びに、ＲＡＭ及びＲＯＭ等のメモリなどからなるコンピュータシステム（図示せず）により構成されてもよい。これらの一部又は全部の機能は、プロセッサがＲＡＭを作業用のメモリとして用いてＲＯＭに記録されたプログラムを実行することによって達成されてもよい。また、これらの一部又は全部の機能は、電子回路又は集積回路等の専用のハードウェア回路によって達成されてもよい。これらの一部又は全部の機能は、上記のソフトウェア機能とハードウェア回路との組み合わせによって構成されてもよい。
【００６６】
上述のような変形例に係るシミュレーションシステム２００は、シミュレーション実行部１０１のシミュレーション結果の検証を可能にする。
【００６７】
［その他］
以上、本発明に係るシミュレーションシステムについて、実施の形態及び変形例に基づいて説明した。しかしながら、本発明は、上記実施の形態及び変形例に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態及び変形例に施したものも、あるいは、上記説明された複数の構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
【００６８】
例えば、実施の形態及び変形例に係るシミュレーションシステムにおいて、仮想倉庫制御部１１０は、入出庫オーダ受付部１１２に入力された仮想的な物品の入出庫オーダに基づき、仮想セル制御部１２０に第二搬送指令を出力していたが、これに限定されない。例えば、仮想セル制御部１２０の入出庫オーダ受付部１１２には、搬送システム１において倉庫制御部１０がセル制御部２０に出力した第一搬送指令が入力され、仮想セル制御部１２０の棚割付制御部１１３は、入力された第一搬送指令を仮想セル制御部１２０に出力してもよい。この場合、仮想セル制御部１２０は、搬送装置３０ａ１〜３０ａｎの動作を、仮想搬送装置１３０ａ１〜１３０ａｎを用いて再現することができる。
【００６９】
また、実施の形態及び変形例に係るシミュレーションシステムの包括的又は具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラム又はコンピュータ読取可能な記録ディスク等の記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。コンピュータ読み取り可能な記録媒体は、例えばＣＤ−ＲＯＭ等の不揮発性の記録媒体を含む。
【００７０】
本発明は、方法としても実現可能であり、当該方法は、プロセッサ、ＬＳＩなどの回路、ＩＣカード又は単体のモジュール等の制御回路によって、実現されてもよい。このような方法は、搬送システムのシミュレーション方法であって、前記搬送システムは、第一プログラムを参照することによって、実機である搬送装置それぞれの搬送に関する搬送指令である第一搬送指令を前記搬送装置それぞれに割り付け、前記シミュレーション方法は、第二プログラムを参照することによって、前記搬送装置それぞれに対応する仮想搬送装置に、シミュレーション用の搬送指令である第二搬送指令を割り付け、前記第二搬送指令に基づく模擬動作をさせ、上記処理は、制御回路によって実行され、前記第二プログラムは、前記第一プログラムと同一である。上記方法によっても、本発明に係るシミュレーションシステムと同様の効果が得られる。
【００７１】
さらに、本発明は、ソフトウェアプログラム又はソフトウェアプログラムからなるデジタル信号によって実現されてもよく、プログラムが記録された非一時的なコンピュータ読み取り可能な記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。このようなプログラムは、搬送システムのシミュレーションをコンピュータに実行させるプログラムであって、前記コンピュータに、搬送に関する搬送指令を搬送装置それぞれに割り付けるための第二ライブラリに従って、前記搬送システムの実機の搬送装置それぞれに対応する仮想搬送装置に、シミュレーション用の前記搬送指令を割り付けさせ、前記シミュレーション用の搬送指令に基づく模擬動作をさせ、前記第二ライブラリは、前記搬送システムが前記実機の搬送装置に実機用の前記搬送指令を割り付ける際に従う第一ライブラリと同一である。上記プログラムによっても、本発明に係るシミュレーションシステムと同様の効果が得られる。
【００７２】
また、上記で用いた序数、数量等の数字は全て、本発明を具体的に説明するために例示するものであり、本発明は例示された数字に制限されない。また、構成要素間の接続関係は、本発明を具体的に説明するために例示するものであり、本発明の機能を実現する接続関係はこれに限定されない。
【００７３】
また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを１つの機能ブロックとして実現したり、１つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
【産業上の利用可能性】
【００７４】
本発明に係るシミュレーションシステムは、配送センター、物流倉庫及び工場等のハン搬送装置を備えるシステムのシミュレーションに有用である。
【符号の説明】
【００７５】
１  搬送システム、１０  倉庫制御部（上位コントローラ）、２０  セル制御部、２１  搬送制御部（下位コントローラ）、３０，３０ａ１，３０ａｎ  搬送装置、１００，２００  シミュレーションシステム、１１０  仮想倉庫制御部、１２０  仮想セル制御部、１２１  仮想搬送制御部（仮想コントローラ）、１２２  第一制御機能部、１３０，１３０ａ１，１３０ａｎ  仮想搬送装置、１０００  第一搬送プログラム（第一プログラム）、２０００  第二搬送プログラム（第二プログラム）
【図１】
2019128802.tif 000003
【図２】
2019128802.tif 000004
【図３】
2019128802.tif 000005
【図４】
2019128802.tif 000006
【図５】
2019128802.tif 000007