搬送制御システム
【課題】搬送処理量の増大に応じて処理能力をフレキシブルに拡張する高拡張性と、ハードウェア障害及びソフトウェア障害のいずれに対しても自動復旧を可能とする高可用性の両方を有する搬送制御システムを提供する。
【解決手段】搬送制御システムは、複数の搬送装置を制御して搬送処理を行う。搬送処理のための搬送プロセスは、複数のプロセス実行コントローラにより実行される。即ち、各プロセス実行コントローラは、各々が搬送装置を制御して、被搬送物の搬送を実行させる。複数のプロセス実行コントローラのうちの1つが動作不能となったときは、当該動作不能となったプロセス実行コントローラが実行していた搬送プロセスを他のプロセス実行コントローラが実行する。また、少なくとも2つの統括制御コントローラが設けられ、一方の統括制御コントローラが動作不能となったときは、当該動作不能となった統括制御コントローラが実行していた統括制御プロセスを他方の統括制御コントローラが実行する。
【解決手段】搬送制御システムは、複数の搬送装置を制御して搬送処理を行う。搬送処理のための搬送プロセスは、複数のプロセス実行コントローラにより実行される。即ち、各プロセス実行コントローラは、各々が搬送装置を制御して、被搬送物の搬送を実行させる。複数のプロセス実行コントローラのうちの1つが動作不能となったときは、当該動作不能となったプロセス実行コントローラが実行していた搬送プロセスを他のプロセス実行コントローラが実行する。また、少なくとも2つの統括制御コントローラが設けられ、一方の統括制御コントローラが動作不能となったときは、当該動作不能となった統括制御コントローラが実行していた統括制御プロセスを他方の統括制御コントローラが実行する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、自立走行する搬送装置を制御する制御システムに関する。
【背景技術】
【0002】
半導体製造工程において、ウェハを収納したキャリアを搬送する搬送装置が知られている。このような搬送装置としては、OHS(Over Head Shuttle)、OHT(Over Head Hoist Transport)などが知られており、AMHS(Automatic Material Handling System)からの無線通信による指示に基づいて移動する。複数のAMHSはネットワークを通じてMCS(Materal Control System)と接続されている。MCSは、ホストマシン又はオペレータの指令に従って搬送経路を決定し、各AMHSに対して搬送指令を送る。
【0003】
上記のような従来の搬送制御システムは、2台のMCSを有する2重化構成となっている。即ち、通常状態において動作するMCS(以下、「アクティブMCS」と呼ぶ。)に加えて、予備のMCS(以下、「スタンバイMCS」と呼ぶ。)が用意されており、アクティブMCSがダウンしたときには、スタンバイMCSが代わりに動作する。
【0004】
MCSは、搬送装置を利用した搬送処理に関連する多数のプロセスを実行する。通常状態ではアクティブMCSがこれら全てのプロセスを実行し、スタンバイMCSは待機状態となっている。アクティブMCSがダウンしたときに限り、スタンバイMCSが動作する。
【0005】
なお、同一機能を有する2つのCPUユニットを用意し、これらを切り換えて使用する手法が特許文献1に記載されている。
【0006】
【特許文献1】特開平7−168603号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
上記のように、搬送処理に関連するプロセス全てを1つのMCSが実行する構成では、MCSのマシンスペックにより搬送処理量の上限が決まってしまう。よって、搬送処理量にフレキシブルにシステムを拡張することができず、搬送処理量が増加して上限を超えた場合には、よりハイスペックなマシンに交換する必要がある。
【0008】
また、上記のようにアクティブMCSとスタンバイMCSを用意する構成では、ハードウェア障害によりアクティブMCSがダウンした場合には、その全てのプロセスをスタンバイMCSが実行すればよい。しかし、ソフトウェア障害によりアクティブMCSが実行中の一部のプロセスのみがダウンした場合には、これを復旧させることができない。
【0009】
本発明は、以上の点に鑑みてなされたものであり、搬送処理量の増大に応じて処理能力をフレキシブルに拡張する高拡張性と、ハードウェア障害及びソフトウェア障害のいずれに対しても自動復旧を可能とする高可用性の両方を有する搬送制御システムを提供することを課題とする。
【課題を解決するための手段】
【0010】
本発明の1つの観点では、ネットワークを通じて複数の搬送装置と通信可能に構成された搬送制御システムは、搬送処理のための搬送プロセスを実行する複数のプロセス実行コントローラと、前記プロセス実行コントローラによる搬送プロセスの実行を統括制御する統括制御プロセスを実行する少なくとも2つの統括制御コントローラと、を備え、前記複数のプロセス実行コントローラのうちの1つが動作不能となったときは、当該動作不能となったプロセス実行コントローラが実行していた搬送プロセスを他のプロセス実行コントローラが実行し、一方の統括制御コントローラが動作不能となったときは、当該動作不能となった統括制御コントローラが実行していた統括制御プロセスを他方の統括制御コントローラが実行する。
【0011】
上記の搬送制御システムは、複数の搬送装置を制御して搬送処理を行う。搬送処理のための搬送プロセスは、複数のプロセス実行コントローラにより実行される。即ち、各プロセス実行コントローラは、各々が搬送装置を制御して、被搬送物の搬送を実行させる。複数のプロセス実行コントローラのうちの1つが動作不能となったときは、当該動作不能となったプロセス実行コントローラが実行していた搬送プロセスを他のプロセス実行コントローラが実行する。これにより、システム全体としての処理能力が低下し、処理時間が多少延長されることはあっても、プロセスを停止することなく搬送処理を継続することができる。
【0012】
また、複数のプロセス実行コントローラによる搬送プロセスの実行を統括制御する少なくとも2つの統括制御コントローラが設けられる。2つの統括制御コントローラは、通常は統括制御プロセスを分担して実行し、複数のプロセス実行コントローラによる搬送プロセスの実行を統括制御する。ここで、一方の統括制御コントローラが動作不能となったときは、当該動作不能となった統括制御コントローラが実行していた統括制御プロセスを他方の統括制御コントローラが実行する。よって、統括制御コントローラに障害が発生した場合でも、搬送処理を継続することができる。
【0013】
上記の搬送制御システムの一態様では、前記統括制御コントローラは、実行中の統括制御プロセスが実行不能となったときは、当該統括制御プロセスを再実行する。これにより、統括制御コントローラが実行している複数の統括制御プロセスのうちの1つが実行不能となった場合でも、そのプロセス自体を再実行することにより、統括制御を継続することができる。
【0014】
上記の搬送制御システムの他の一態様では、前記統括制御プロセスは、前記複数の搬送プロセスを前記複数のプロセス実行コントローラに割り当てるディスパッチャプロセスを含む。この態様では、統括制御コントローラが複数の搬送プロセスを複数のプロセス実行コントローラに適切に割り当てることにより、搬送プロセスを独立に実行させることができる。よって、ある搬送プロセスに障害が発生しても、それを他のプロセス実行コントローラにより実行させることができる。
【0015】
上記の搬送制御システムの他の一態様では、前記統括制御コントローラは、同一のデータに対する更新を伴う搬送プロセスを前記プロセス実行コントローラに割り当てずに自ら実行する。この態様では、基本的には複数の搬送プロセスを別個のプロセス実行コントローラにより独立に実行する。但し、同一のデータに対する更新を伴う排他的な搬送プロセスについては、複数のプロセス実行コントローラに実行させても、同時にデータに対する更新を実行することができず非効率であるため、統括制御コントローラ自身が実行する。
【0016】
好適な実施例では、前記搬送プロセスは、搬送経路を決定する搬送制御プロセスと、搬送装置と通信して搬送を実行させる搬送装置通信プロセスとを含む。これにより、搬送装置に搬送指令が送られ、搬送制御プロセスにより決定された搬送経路に従って搬送処理が実行される。
【発明を実施するための最良の形態】
【0017】
以下、図面を参照して本発明を実施するための最良の形態について説明する。
【0018】
[基本構成]
なお、以下の説明において、MCSなどはコンピュータ端末装置により構成される。「プロセス」とは、予め用意され、そのような端末装置において実行されるプログラムに相当する。即ち、端末装置のCPUなどがプログラムを実行することにより、各プロセスが実行されることになる。
【0019】
まず、本発明による搬送制御システムの基本構成について説明する。図1は、本発明を適用したMCSを模式的に示す。図示のように、本発明では、基本的に同一機能を有する複数のMCSが用意される。各MCSはネットワーク上で1つのノードに対応しており、マルチノードシステムを構成している。搬送処理はこれら複数のMCSにより実行される。これにより、搬送処理量が増加したときには、MCSを増設してマルチノードへ負荷を分散させることができる。よって、システム全体の交換を行う必要なく、搬送処理負荷の増大に対応することができる。
【0020】
具体的に、図1の例では、ノード#0のMCSが他の複数のMCS#1〜#nを統括制御している。この例では、搬送処理において実行されるプロセスとして、ホスト通信プロセス、搬送制御プロセス、AMHS通信プロセスがある。これらのプロセスは、ホストマシンなどから与えられる搬送指令単位で分類され、複数のMCSにより分散処理される。複数のMCSにより分散処理を行うため、統括制御を実行しているノード#0のMCSはディスパッチャ(Dispatcher)プロセスを実行している。ディスパッチャプロセスとは、複数のプロセスを複数のMCSに割り当てる処理である。図1では、ノード#0のMCSは、ホスト通信ディスパッチャプロセスとして、ホスト通信プロセス#1〜#nをそれぞれノード#1〜#nの複数のMCSに割り当てる処理を行っている。搬送制御プロセス及びAMHS通信プロセスについても、同様にノード#0のMCSが他のノード#1〜#nのMCSに対してディスパッチャプロセスを実行し、分散処理を行っている。
【0021】
なお、ホスト通信ディスパッチャプロセス及び複数のホスト通信プロセス#1〜#nはホスト通信サブシステムを構成する。同様に、搬送制御ディスパッチャプロセス及び複数の搬送制御プロセス#1〜#nは搬送制御サブシステムを構成し、AMHS通信ディスパッチャプロセス及び複数のAMHS通信プロセス#1〜#nはAMHS通信サブシステムを構成する。以下、各サブシステムについて詳しく説明する。
【0022】
図2は、ホスト通信サブシステムの動作を模式的に示す。図2(a)に示すように、ホスト通信サブシステムは、ホストからの搬送要求を受け取り、ホスト通信ディスパッチャプロセスが複数のホスト通信プロセスに搬送要求を割り振る。
【0023】
図2(b)にホスト通信サブシステムの動作の詳細を示す。統括制御を担当するノード#0のMCSでは、ホスト通信ディスパッチャプロセスがホストから搬送要求を受信し(S1)、複数のホスト通信プロセスに搬送要求を割り振る(S2)。また、ホスト通信ディスパッチャプロセスは、他のサブシステム/プロセスからホストへの報告/結果を受信し(S3、S5)、ホストへ送信する(S4)。一方、各ホスト通信プロセス#1〜nは、ホスト通信ディスパッチャプロセスから搬送要求を受信し(S2)、受付処理を行い、結果をホスト通信ディスパッチャプロセスへ送る(S5)。また、各ホスト通信プロセス#1〜nは、搬送指令を搬送制御サブシステムに送信する(S6)。
【0024】
図3は、搬送制御サブシステムの動作を模式的に示す。図3(a)に示すように、搬送制御サブシステムは、搬送指令/搬送報告を複数の搬送制御プロセスに割り振る。ここで、本発明ではMCSは以下の特徴を有する。
【0025】
まず、搬送指令はどの搬送制御プロセスに割り振ってもよいが、搬送報告はその報告の元である搬送指令が割り振られた搬送制御プロセスに割り振る必要がある。例えば、搬送指令1が搬送制御プロセス#1に割り振られた場合、搬送指令1の搬送に対する搬送報告は搬送制御プロセス#1に割り振られねばならない。
【0026】
また、搬送制御ディスパッチャプロセスは搬送指令を振り分けるだけではなく、排他制御が必要な処理は搬送制御プロセスに委ねることなく、自ら実行する。同じデータへの更新処理は各搬送制御プロセスでも実行可能であるが、互いの搬送制御プロセスを排他制御しなければならず、マルチプロセス化のメリットが無くなる。例えば、搬送により各ストッカ内のキャリア数は変動する。この場合、キャリア数の更新処理を各搬送制御プロセスに処理させることとすると、1つの搬送制御プロセスがキャリア数の更新を実行している間、他の搬送制御プロセスによるキャリア数の更新を禁止しなければならなくなる。そこで、このような排他制御が必要とされる処理は、搬送制御ディスパッチャが自ら実行する。
【0027】
図3(b)に搬送制御サブシステムの動作の詳細を示す。搬送制御ディスパッチャプロセスは、ホスト通信サブシステムより搬送指令を受信し(S11)、搬送制御プロセスに割り振る(S12)。また、AMHS通信サブシステムより搬送報告を受信し(S13)、搬送報告をその報告の搬送指令を担当している搬送制御プロセスへ割り振る(S14)。
【0028】
搬送制御プロセスは、搬送制御ディスパッチャプロセスより搬送指令を受信し(S12)、受信処理を行い、AMHS通信サブシステムへ搬送指令を送信する(S15)。また、搬送制御プロセスは、搬送制御ディスパッチャプロセスより搬送報告を受信し(S14)、受信処理を行い、ホスト通信サブシステムへ搬送報告を送信する(S16)。
【0029】
図4は、AMHS通信制御サブシステムの動作を模式的に示す。図4(a)に示すように、AMHS通信サブシステムは、他のサブシステムからの搬送指令をAMHS通信プロセスに割り振る。ここで、MCSとして、各AMHS通信プロセスはトランザクション数を考慮して担当するAMHSが決められている。AMHS通信ディスパッチャプロセスは、搬送指令をどのAMHS通信プロセスに割り振っても良いというわけではなく、搬送指令の通信先AMHSを担当するAMHS通信プロセスに割り振る必要がある。
【0030】
図4(b)にAMHS通信サブシステムの動作の詳細を示す。AMHS通信ディスパッチャプロセスは、搬送制御サブシステムより搬送指令を受信し(S21)、搬送指令をその指令の通信先AMHSを担当するAMHS通信プロセスへ割り振る(S22)。
【0031】
AMHS通信プロセスは、AMHS通信ディスパッチャプロセスより搬送指令を受信し(S22)、AMHSへ搬送コマンドを送信する(S23)。なお、AMHSとしては、キャリアの保管棚であるスタッカ(STK)、キャリアを搬送する搬送装置であるOHSなどが挙げられる。また、AMHS通信プロセスは、AMHSより搬送報告を受信し(S24)、搬送報告を搬送制御サブシステムへ送信する(S25)。さらに、AMHS通信プロセスは、AMHSより状態変化を受信し(S24)、状態変化をホスト通信サブシステムへ送信する(S26)。
【0032】
以上のように、本発明のMCSでは、搬送処理量が増加してもMCSを増設することによりフレキシブルな拡張を可能し、高拡張性を実現している。また、プロセスを複数のMCSに割り振って処理するマルチプロセス化を行っているため、プロセス単位での障害に対しても自動復旧が可能となり、これにより高可用性を実現している。
【0033】
[実施例]
次に、本発明の実施例について説明する。図5は本発明の実施例に係る搬送制御システムの構成を示す。図示のように、ホスト11と、MCSターミナル12と、複数のAMHS#1〜#nと、ネットワーク分散装置(以下、「分散装置」と呼ぶ。)13と、複数のMCS(ノード#1〜#n)とがイーサネット(登録商標)LAN(以下、「LAN」と呼ぶ。)10を通じて接続されている。
【0034】
ホスト11は、MCSに搬送指令を送る役割を有する。MCSターミナル12は、システムの状態表示を行うとともに、MCSに対するオペレータ操作を提供する。MCSは、ホストまたはオペレータの指令に従って搬送経路を決定し、各AMHSに対して搬送指示を送る。AMHSはMCS又はオペレータの指示に従い、搬送を実行する。
【0035】
MCSはマルチノード構成であり、搬送処理量に応じてシステムを停止することなく増減が可能である。但し、システム無停止でのMCS増減時には、そのノード上で起動/停止するプロセスに制限がある。なお、図5の例では、ノード#1及び#2のMCSが本発明における統括制御コントローラとして機能し、ノード#3〜#nのMCSが本発明におけるプロセス実行コントローラとして機能する。
【0036】
具体的に、統括制御コントローラであるノード#1のMCSは、管理プロセス#1、搬送制御ディスパッチャプロセス、AMHS通信ディスパッチャプロセス及びホスト通信ディスパッチャプロセスを実行する。一方、ノード#2のMCSは、管理プロセス#2、統計履歴プロセス、ログプロセス及び画面制御プロセスを実行する。なお、これらノード#1及び#2のMCSが実行するプロセスは搬送制御全体を統括するためのプロセスであり、これらを総称して以下「統括制御プロセス」と呼ぶこととする。
【0037】
共有ディスク#1にはノード#1のMCSが使用するデータであって制御に必要なデータが記憶される。共有ディスク#2にはノード#2のMCSが使用する履歴/統計/ログデータが記憶されている。よって、通常は、図5の実線で示すように、ノード#1のMCSが共有ディスク#1を使用し、ノード#2のMCSが共有ディスク#2を使用している。但し、ノード#1及び#2のMCSの一方がダウンしたときには、他方のMCSが共有ディスク#1及び#2の両方のデータを利用して全ての統括制御プロセスを実行することになる。このように、本発明の搬送制御システムでは、従来のようにアクティブMCSとスタンバイMCSのような構成ではなく、予備的にスタンバイ状態にあるMCSは存在しない。より具体的に、ノード#1のMCSとノード#2のMCSは互いをバックアップする2重化構成(相互テイクオーバ構成)である。システムの障害発生時における引継リソースはSIP#1(搬送制御ノードへの接続用サービスIP)、共有ディスク#1と、SIP#2(画面制御ノードへの接続用IP)、共有ディスク#2である。
【0038】
プロセス実行コントローラであるノード#3のMCSは、管理プロセス#3に加えて、搬送制御ディスパッチャプロセスにより割り振られた搬送制御プロセス#1、AMHS通信ディスパッチャプロセスにより割り振られたAMHS通信プロセス#1、及びホスト通信ディスパッチャプロセスにより割り振られたホスト通信プロセス#1を実行する。同様に、ノード#nのMCSは、管理プロセス#nに加えて、搬送制御ディスパッチャプロセスにより割り振られた搬送制御プロセス#n、AMHS通信ディスパッチャプロセスにより割り振られたAMHS通信プロセス#n、及びホスト通信ディスパッチャプロセスにより割り振られたホスト通信プロセス#nを実行する。
【0039】
このように、搬送制御のための各プロセスは、複数のMCS#3〜#nによるマルチプロセス化されており、あるノード上での実行が不能となった場合には別ノードでの実行が可能である。また、マルチノード、マルチプロセス構成としたため、管理プロセス及びディスパッチャプロセスが存在する。
【0040】
各プロセスの機能は以下の通りである。なお、以下の説明では、あるノードのMCSを単に「ノード」とも呼ぶ。例えば、ノード#1のMCSを単に「ノード#1」とも呼ぶ。
【0041】
管理プロセスは、同一ノード上のプロセスの起動/終了/監視を行う。各ノードの管理プロセス同士は通信を行い、各ノードで発生したイベントを他ノードへ通知する。
【0042】
ホスト通信ディスパッチャは、ホスト通信プロセスの管理を行うものであり、具体的には他プロセスから受信したメッセージの処理、ホストとの通信などを行う。また、ホストより受信した搬送指示などをホスト通信プロセスに実行させる。
【0043】
AMHS通信ディスパッチャプロセスは、AMHS通信プロセスの管理を行うものであり、具体的には他プロセスから受信したメッセージの処理を行う。また、搬送制御プロセスからのAMHS送信メッセージを担当AMHS通信プロセスに実行させる。
【0044】
搬送制御ディスパッチャプロセスは、搬送制御プロセスの管理を行うものであり、具体的には、他プロセスから受信したメッセージの処理を行う。また、搬送制御を搬送制御プロセスに実行させる。
【0045】
統計履歴プロセスは、他プロセスからの履歴情報の登録、管理を行うとともに、統計情報の計算、登録及び管理を行う。ログプロセスは、他プロセスからのログ(Log)情報の登録、管理を行う。画面制御プロセスは、システム状態表示及びオペレータ操作の受付などを行う。
【0046】
ホスト通信プロセスは、搬送指示などの受付処理(受信メッセージの処理)を行う。AMHS通信プロセスはAMHSとの通信及び受信メッセージの処理を行う。搬送制御プロセスは、搬送経路の決定及び制御を行う。
【0047】
上記の各プロセスのうち、上記の統括制御プロセス、即ち、ホスト通信ディスパッチャプロセス、AMHS通信ディスパッチャプロセス、搬送制御ディスパッチャプロセス、統計履歴プロセス、ログプロセス及び画面制御プロセスは、システム上でそれぞれ1つが動作する。一方、管理プロセスは各ノードのMCS上で動作する。ホスト通信プロセス、AMHS通信プロセス及び搬送制御プロセスはシステムの規模に応じて同一ノード上又は別ノード上で複数個が動作するものであり、システム無停止で増減が可能である。
【0048】
ノード、プロセスの情報としては、MCSを構成するノード情報、及び、プロセスの動作に必要な情報及び起動ノードの優先順位情報であるプロセス情報が存在し、これらの情報に従ってプロセスが配置される。
【0049】
次に、MCSと他の要素との接続について図6を参照して説明する。ホストはSIP#1を使用してMCSと接続する(破線矢印201)。MCSターミナルはSIP#2を使用してMCSと接続する(破線矢印202)。
【0050】
MCSとAMHSとの接続は分散装置13により規定されている。分散装置には、ポート番号と接続先ノード情報とが登録されている。なお、1つのポート番号に対して複数個の接続先ノードが登録されている。分散装置13は、定義されているノード、ポートに対してヘルスチェックを行う(破線矢印204)。各ポート番号を使用しているAMHS通信プロセスは1つしか存在しないため、分散装置13は、ヘルスチェックを行うことにより、接続先ノードを特定することができる。AMHSは、分散装置のVIPとポート番号とを使用して分散装置へ接続する。分散装置はポート番号で接続先ノードが特定できるので、AMHSからの接続先ポート番号により接続先ノードを振り分ける。こうしてAMHSとMCSとの接続を確立できる(破線矢印203)。
【0051】
次に、本実施例のシステムの障害時の動作について説明する。
【0052】
図7は正常動作時の本システムの動作状態を示す。起動ノードの優先順位に従って、いくつかのプロセスがノード#1のMCS上で動作している。また、ノード#1のMCSがSIP#1及び共有ディスク#1を保持している。
【0053】
起動ノードの優先順位の例を図8に示す。各プロセスについては、起動ノードの優先順位が予め決定されている。図8の例では、搬送制御プロセス、AMHS通信プロセス及びホスト通信プロセスについて、優先順位はノード#n、ノード#3の順となっている。
【0054】
まず、2重化構成のノードに対応するMCS、即ち、本発明における統括制御コントローラがダウンした場合の動作状態を図9に示す。ここでは、ノード#1のMCSがダウンしたとする。この場合、ノード#1の全プロセスが終了し、ノード#1はSIP#1及び共有ディスク#1を解放する。そして、ノード#2が引継リソース(SIP#1及び共有ディスク)を確保し、障害発生前にノード#1で実行されていたプロセスがノード#2上で起動される。なお、この場合のみ、1つのノード上で2つの管理プロセスが動作することになる。こうして、統括制御を行う2重化構成のノードの一方がダウンした場合には、他方のノードが代わりに統括制御プロセスを実行する。
【0055】
次に、2重化構成のノード以外のノードに対応するMCS、即ち、本発明におけるプロセス実行コントローラがダウンした場合の動作状態を図10に示す。具体的には、ノード#nのMCSがダウンしたとする。この場合、まず管理プロセス間の通信が切れる(S31)。管理プロセス#1は図8に例示する起動ノードの優先順位を参照し、次の優先順位のノード(即ちノード#3)の管理プロセスに起動要求を行う(S32)。そして、ノード#3の管理プロセス#3が、障害発生前にノード#nで実行されていたプロセスを起動し、実行する(S33)。こうして、2重化構成のノード以外のノードがダウンした場合にも、プロセスは他のノードに引き継がれる。
【0056】
次に、プロセス単位の障害が発生した場合の動作を図11に示す。正常状態での動作中に、ノード#1上のAMHS通信ディスパッチャプロセスがダウンしたとする。この場合、管理プロセス#1は、AMHS通信ディスパッチャプロセスがダウンしたことを検出し(S41)、起動ノードの優先順位に従ってダウンしたプロセスを起動する(S42)。なお、この例は管理プロセス以外がダウンした場合であるが、管理プロセスがダウンした場合には、OSのデーモン処理により、ダウンしたノード上で管理プロセスが再起動され、処理が継続される。
【0057】
以上説明したように、本発明の搬送制御システムにおいては、MCSをマルチノード、マルチプロセス化したことにより、搬送処理量に応じたフレキシブルな拡張が可能となる。これにより、搬送処理量増大時にシステム全体の交換などが不要となるとともに、初期導入時に高価なマシンの購入が不要となり、初期導入コストを抑えることができる。こうして、高拡張性が実現される。
【0058】
また、管理プロセス及びディスパッチャプロセスがプロセスの監視、管理を行うので、以下の効果が得られる。まず、プロセスがダウンしても自動的に短時間で再起動され、搬送の継続が可能となるので、システムダウンタイムが短縮できる。また、2重化構成でないノードがダウンしても自動的に短時間で別ノード上に再起動されるので、システムダウンタイムが短縮できる。さらに、制限はあるものの、システム停止なしでソフトウェアのバージョンアップが可能となり、ソフトウェアのバージョンアップ時のシステムダウンタイムを短縮することができる。こうして、高可用性が実現できる。
【0059】
さらに、マルチノード、マルチプロセス化により、従来のようなスタンバイノードが不要となる利点もある。
【図面の簡単な説明】
【0060】
【図1】本発明の搬送制御システムの基本構成を模式的に示す。
【図2】ホスト通信サブシステムの動作を模式的に示す。
【図3】搬送制御サブシステムの動作を模式的に示す。
【図4】AMHS通信サブシステムの動作を模式的に示す。
【図5】本発明の実施例に係る搬送制御システムの構成を示す。
【図6】図5に示す各要素の接続及び分散装置の詳細を示す。
【図7】実施例の搬送制御システムの正常動作時の状態を示す。
【図8】プロセスの起動ノードの優先順位の例を示す。
【図9】2重化構成ノードのダウン時の動作状態を示す。
【図10】2重化構成ノード以外のノードのダウン時の動作状態を示す。
【図11】プロセスダウン時の動作状態を示す。
【符号の説明】
【0061】
10 LAN
11 ホスト
12 MCSターミナル
13 分散装置
【技術分野】
【0001】
本発明は、自立走行する搬送装置を制御する制御システムに関する。
【背景技術】
【0002】
半導体製造工程において、ウェハを収納したキャリアを搬送する搬送装置が知られている。このような搬送装置としては、OHS(Over Head Shuttle)、OHT(Over Head Hoist Transport)などが知られており、AMHS(Automatic Material Handling System)からの無線通信による指示に基づいて移動する。複数のAMHSはネットワークを通じてMCS(Materal Control System)と接続されている。MCSは、ホストマシン又はオペレータの指令に従って搬送経路を決定し、各AMHSに対して搬送指令を送る。
【0003】
上記のような従来の搬送制御システムは、2台のMCSを有する2重化構成となっている。即ち、通常状態において動作するMCS(以下、「アクティブMCS」と呼ぶ。)に加えて、予備のMCS(以下、「スタンバイMCS」と呼ぶ。)が用意されており、アクティブMCSがダウンしたときには、スタンバイMCSが代わりに動作する。
【0004】
MCSは、搬送装置を利用した搬送処理に関連する多数のプロセスを実行する。通常状態ではアクティブMCSがこれら全てのプロセスを実行し、スタンバイMCSは待機状態となっている。アクティブMCSがダウンしたときに限り、スタンバイMCSが動作する。
【0005】
なお、同一機能を有する2つのCPUユニットを用意し、これらを切り換えて使用する手法が特許文献1に記載されている。
【0006】
【特許文献1】特開平7−168603号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
上記のように、搬送処理に関連するプロセス全てを1つのMCSが実行する構成では、MCSのマシンスペックにより搬送処理量の上限が決まってしまう。よって、搬送処理量にフレキシブルにシステムを拡張することができず、搬送処理量が増加して上限を超えた場合には、よりハイスペックなマシンに交換する必要がある。
【0008】
また、上記のようにアクティブMCSとスタンバイMCSを用意する構成では、ハードウェア障害によりアクティブMCSがダウンした場合には、その全てのプロセスをスタンバイMCSが実行すればよい。しかし、ソフトウェア障害によりアクティブMCSが実行中の一部のプロセスのみがダウンした場合には、これを復旧させることができない。
【0009】
本発明は、以上の点に鑑みてなされたものであり、搬送処理量の増大に応じて処理能力をフレキシブルに拡張する高拡張性と、ハードウェア障害及びソフトウェア障害のいずれに対しても自動復旧を可能とする高可用性の両方を有する搬送制御システムを提供することを課題とする。
【課題を解決するための手段】
【0010】
本発明の1つの観点では、ネットワークを通じて複数の搬送装置と通信可能に構成された搬送制御システムは、搬送処理のための搬送プロセスを実行する複数のプロセス実行コントローラと、前記プロセス実行コントローラによる搬送プロセスの実行を統括制御する統括制御プロセスを実行する少なくとも2つの統括制御コントローラと、を備え、前記複数のプロセス実行コントローラのうちの1つが動作不能となったときは、当該動作不能となったプロセス実行コントローラが実行していた搬送プロセスを他のプロセス実行コントローラが実行し、一方の統括制御コントローラが動作不能となったときは、当該動作不能となった統括制御コントローラが実行していた統括制御プロセスを他方の統括制御コントローラが実行する。
【0011】
上記の搬送制御システムは、複数の搬送装置を制御して搬送処理を行う。搬送処理のための搬送プロセスは、複数のプロセス実行コントローラにより実行される。即ち、各プロセス実行コントローラは、各々が搬送装置を制御して、被搬送物の搬送を実行させる。複数のプロセス実行コントローラのうちの1つが動作不能となったときは、当該動作不能となったプロセス実行コントローラが実行していた搬送プロセスを他のプロセス実行コントローラが実行する。これにより、システム全体としての処理能力が低下し、処理時間が多少延長されることはあっても、プロセスを停止することなく搬送処理を継続することができる。
【0012】
また、複数のプロセス実行コントローラによる搬送プロセスの実行を統括制御する少なくとも2つの統括制御コントローラが設けられる。2つの統括制御コントローラは、通常は統括制御プロセスを分担して実行し、複数のプロセス実行コントローラによる搬送プロセスの実行を統括制御する。ここで、一方の統括制御コントローラが動作不能となったときは、当該動作不能となった統括制御コントローラが実行していた統括制御プロセスを他方の統括制御コントローラが実行する。よって、統括制御コントローラに障害が発生した場合でも、搬送処理を継続することができる。
【0013】
上記の搬送制御システムの一態様では、前記統括制御コントローラは、実行中の統括制御プロセスが実行不能となったときは、当該統括制御プロセスを再実行する。これにより、統括制御コントローラが実行している複数の統括制御プロセスのうちの1つが実行不能となった場合でも、そのプロセス自体を再実行することにより、統括制御を継続することができる。
【0014】
上記の搬送制御システムの他の一態様では、前記統括制御プロセスは、前記複数の搬送プロセスを前記複数のプロセス実行コントローラに割り当てるディスパッチャプロセスを含む。この態様では、統括制御コントローラが複数の搬送プロセスを複数のプロセス実行コントローラに適切に割り当てることにより、搬送プロセスを独立に実行させることができる。よって、ある搬送プロセスに障害が発生しても、それを他のプロセス実行コントローラにより実行させることができる。
【0015】
上記の搬送制御システムの他の一態様では、前記統括制御コントローラは、同一のデータに対する更新を伴う搬送プロセスを前記プロセス実行コントローラに割り当てずに自ら実行する。この態様では、基本的には複数の搬送プロセスを別個のプロセス実行コントローラにより独立に実行する。但し、同一のデータに対する更新を伴う排他的な搬送プロセスについては、複数のプロセス実行コントローラに実行させても、同時にデータに対する更新を実行することができず非効率であるため、統括制御コントローラ自身が実行する。
【0016】
好適な実施例では、前記搬送プロセスは、搬送経路を決定する搬送制御プロセスと、搬送装置と通信して搬送を実行させる搬送装置通信プロセスとを含む。これにより、搬送装置に搬送指令が送られ、搬送制御プロセスにより決定された搬送経路に従って搬送処理が実行される。
【発明を実施するための最良の形態】
【0017】
以下、図面を参照して本発明を実施するための最良の形態について説明する。
【0018】
[基本構成]
なお、以下の説明において、MCSなどはコンピュータ端末装置により構成される。「プロセス」とは、予め用意され、そのような端末装置において実行されるプログラムに相当する。即ち、端末装置のCPUなどがプログラムを実行することにより、各プロセスが実行されることになる。
【0019】
まず、本発明による搬送制御システムの基本構成について説明する。図1は、本発明を適用したMCSを模式的に示す。図示のように、本発明では、基本的に同一機能を有する複数のMCSが用意される。各MCSはネットワーク上で1つのノードに対応しており、マルチノードシステムを構成している。搬送処理はこれら複数のMCSにより実行される。これにより、搬送処理量が増加したときには、MCSを増設してマルチノードへ負荷を分散させることができる。よって、システム全体の交換を行う必要なく、搬送処理負荷の増大に対応することができる。
【0020】
具体的に、図1の例では、ノード#0のMCSが他の複数のMCS#1〜#nを統括制御している。この例では、搬送処理において実行されるプロセスとして、ホスト通信プロセス、搬送制御プロセス、AMHS通信プロセスがある。これらのプロセスは、ホストマシンなどから与えられる搬送指令単位で分類され、複数のMCSにより分散処理される。複数のMCSにより分散処理を行うため、統括制御を実行しているノード#0のMCSはディスパッチャ(Dispatcher)プロセスを実行している。ディスパッチャプロセスとは、複数のプロセスを複数のMCSに割り当てる処理である。図1では、ノード#0のMCSは、ホスト通信ディスパッチャプロセスとして、ホスト通信プロセス#1〜#nをそれぞれノード#1〜#nの複数のMCSに割り当てる処理を行っている。搬送制御プロセス及びAMHS通信プロセスについても、同様にノード#0のMCSが他のノード#1〜#nのMCSに対してディスパッチャプロセスを実行し、分散処理を行っている。
【0021】
なお、ホスト通信ディスパッチャプロセス及び複数のホスト通信プロセス#1〜#nはホスト通信サブシステムを構成する。同様に、搬送制御ディスパッチャプロセス及び複数の搬送制御プロセス#1〜#nは搬送制御サブシステムを構成し、AMHS通信ディスパッチャプロセス及び複数のAMHS通信プロセス#1〜#nはAMHS通信サブシステムを構成する。以下、各サブシステムについて詳しく説明する。
【0022】
図2は、ホスト通信サブシステムの動作を模式的に示す。図2(a)に示すように、ホスト通信サブシステムは、ホストからの搬送要求を受け取り、ホスト通信ディスパッチャプロセスが複数のホスト通信プロセスに搬送要求を割り振る。
【0023】
図2(b)にホスト通信サブシステムの動作の詳細を示す。統括制御を担当するノード#0のMCSでは、ホスト通信ディスパッチャプロセスがホストから搬送要求を受信し(S1)、複数のホスト通信プロセスに搬送要求を割り振る(S2)。また、ホスト通信ディスパッチャプロセスは、他のサブシステム/プロセスからホストへの報告/結果を受信し(S3、S5)、ホストへ送信する(S4)。一方、各ホスト通信プロセス#1〜nは、ホスト通信ディスパッチャプロセスから搬送要求を受信し(S2)、受付処理を行い、結果をホスト通信ディスパッチャプロセスへ送る(S5)。また、各ホスト通信プロセス#1〜nは、搬送指令を搬送制御サブシステムに送信する(S6)。
【0024】
図3は、搬送制御サブシステムの動作を模式的に示す。図3(a)に示すように、搬送制御サブシステムは、搬送指令/搬送報告を複数の搬送制御プロセスに割り振る。ここで、本発明ではMCSは以下の特徴を有する。
【0025】
まず、搬送指令はどの搬送制御プロセスに割り振ってもよいが、搬送報告はその報告の元である搬送指令が割り振られた搬送制御プロセスに割り振る必要がある。例えば、搬送指令1が搬送制御プロセス#1に割り振られた場合、搬送指令1の搬送に対する搬送報告は搬送制御プロセス#1に割り振られねばならない。
【0026】
また、搬送制御ディスパッチャプロセスは搬送指令を振り分けるだけではなく、排他制御が必要な処理は搬送制御プロセスに委ねることなく、自ら実行する。同じデータへの更新処理は各搬送制御プロセスでも実行可能であるが、互いの搬送制御プロセスを排他制御しなければならず、マルチプロセス化のメリットが無くなる。例えば、搬送により各ストッカ内のキャリア数は変動する。この場合、キャリア数の更新処理を各搬送制御プロセスに処理させることとすると、1つの搬送制御プロセスがキャリア数の更新を実行している間、他の搬送制御プロセスによるキャリア数の更新を禁止しなければならなくなる。そこで、このような排他制御が必要とされる処理は、搬送制御ディスパッチャが自ら実行する。
【0027】
図3(b)に搬送制御サブシステムの動作の詳細を示す。搬送制御ディスパッチャプロセスは、ホスト通信サブシステムより搬送指令を受信し(S11)、搬送制御プロセスに割り振る(S12)。また、AMHS通信サブシステムより搬送報告を受信し(S13)、搬送報告をその報告の搬送指令を担当している搬送制御プロセスへ割り振る(S14)。
【0028】
搬送制御プロセスは、搬送制御ディスパッチャプロセスより搬送指令を受信し(S12)、受信処理を行い、AMHS通信サブシステムへ搬送指令を送信する(S15)。また、搬送制御プロセスは、搬送制御ディスパッチャプロセスより搬送報告を受信し(S14)、受信処理を行い、ホスト通信サブシステムへ搬送報告を送信する(S16)。
【0029】
図4は、AMHS通信制御サブシステムの動作を模式的に示す。図4(a)に示すように、AMHS通信サブシステムは、他のサブシステムからの搬送指令をAMHS通信プロセスに割り振る。ここで、MCSとして、各AMHS通信プロセスはトランザクション数を考慮して担当するAMHSが決められている。AMHS通信ディスパッチャプロセスは、搬送指令をどのAMHS通信プロセスに割り振っても良いというわけではなく、搬送指令の通信先AMHSを担当するAMHS通信プロセスに割り振る必要がある。
【0030】
図4(b)にAMHS通信サブシステムの動作の詳細を示す。AMHS通信ディスパッチャプロセスは、搬送制御サブシステムより搬送指令を受信し(S21)、搬送指令をその指令の通信先AMHSを担当するAMHS通信プロセスへ割り振る(S22)。
【0031】
AMHS通信プロセスは、AMHS通信ディスパッチャプロセスより搬送指令を受信し(S22)、AMHSへ搬送コマンドを送信する(S23)。なお、AMHSとしては、キャリアの保管棚であるスタッカ(STK)、キャリアを搬送する搬送装置であるOHSなどが挙げられる。また、AMHS通信プロセスは、AMHSより搬送報告を受信し(S24)、搬送報告を搬送制御サブシステムへ送信する(S25)。さらに、AMHS通信プロセスは、AMHSより状態変化を受信し(S24)、状態変化をホスト通信サブシステムへ送信する(S26)。
【0032】
以上のように、本発明のMCSでは、搬送処理量が増加してもMCSを増設することによりフレキシブルな拡張を可能し、高拡張性を実現している。また、プロセスを複数のMCSに割り振って処理するマルチプロセス化を行っているため、プロセス単位での障害に対しても自動復旧が可能となり、これにより高可用性を実現している。
【0033】
[実施例]
次に、本発明の実施例について説明する。図5は本発明の実施例に係る搬送制御システムの構成を示す。図示のように、ホスト11と、MCSターミナル12と、複数のAMHS#1〜#nと、ネットワーク分散装置(以下、「分散装置」と呼ぶ。)13と、複数のMCS(ノード#1〜#n)とがイーサネット(登録商標)LAN(以下、「LAN」と呼ぶ。)10を通じて接続されている。
【0034】
ホスト11は、MCSに搬送指令を送る役割を有する。MCSターミナル12は、システムの状態表示を行うとともに、MCSに対するオペレータ操作を提供する。MCSは、ホストまたはオペレータの指令に従って搬送経路を決定し、各AMHSに対して搬送指示を送る。AMHSはMCS又はオペレータの指示に従い、搬送を実行する。
【0035】
MCSはマルチノード構成であり、搬送処理量に応じてシステムを停止することなく増減が可能である。但し、システム無停止でのMCS増減時には、そのノード上で起動/停止するプロセスに制限がある。なお、図5の例では、ノード#1及び#2のMCSが本発明における統括制御コントローラとして機能し、ノード#3〜#nのMCSが本発明におけるプロセス実行コントローラとして機能する。
【0036】
具体的に、統括制御コントローラであるノード#1のMCSは、管理プロセス#1、搬送制御ディスパッチャプロセス、AMHS通信ディスパッチャプロセス及びホスト通信ディスパッチャプロセスを実行する。一方、ノード#2のMCSは、管理プロセス#2、統計履歴プロセス、ログプロセス及び画面制御プロセスを実行する。なお、これらノード#1及び#2のMCSが実行するプロセスは搬送制御全体を統括するためのプロセスであり、これらを総称して以下「統括制御プロセス」と呼ぶこととする。
【0037】
共有ディスク#1にはノード#1のMCSが使用するデータであって制御に必要なデータが記憶される。共有ディスク#2にはノード#2のMCSが使用する履歴/統計/ログデータが記憶されている。よって、通常は、図5の実線で示すように、ノード#1のMCSが共有ディスク#1を使用し、ノード#2のMCSが共有ディスク#2を使用している。但し、ノード#1及び#2のMCSの一方がダウンしたときには、他方のMCSが共有ディスク#1及び#2の両方のデータを利用して全ての統括制御プロセスを実行することになる。このように、本発明の搬送制御システムでは、従来のようにアクティブMCSとスタンバイMCSのような構成ではなく、予備的にスタンバイ状態にあるMCSは存在しない。より具体的に、ノード#1のMCSとノード#2のMCSは互いをバックアップする2重化構成(相互テイクオーバ構成)である。システムの障害発生時における引継リソースはSIP#1(搬送制御ノードへの接続用サービスIP)、共有ディスク#1と、SIP#2(画面制御ノードへの接続用IP)、共有ディスク#2である。
【0038】
プロセス実行コントローラであるノード#3のMCSは、管理プロセス#3に加えて、搬送制御ディスパッチャプロセスにより割り振られた搬送制御プロセス#1、AMHS通信ディスパッチャプロセスにより割り振られたAMHS通信プロセス#1、及びホスト通信ディスパッチャプロセスにより割り振られたホスト通信プロセス#1を実行する。同様に、ノード#nのMCSは、管理プロセス#nに加えて、搬送制御ディスパッチャプロセスにより割り振られた搬送制御プロセス#n、AMHS通信ディスパッチャプロセスにより割り振られたAMHS通信プロセス#n、及びホスト通信ディスパッチャプロセスにより割り振られたホスト通信プロセス#nを実行する。
【0039】
このように、搬送制御のための各プロセスは、複数のMCS#3〜#nによるマルチプロセス化されており、あるノード上での実行が不能となった場合には別ノードでの実行が可能である。また、マルチノード、マルチプロセス構成としたため、管理プロセス及びディスパッチャプロセスが存在する。
【0040】
各プロセスの機能は以下の通りである。なお、以下の説明では、あるノードのMCSを単に「ノード」とも呼ぶ。例えば、ノード#1のMCSを単に「ノード#1」とも呼ぶ。
【0041】
管理プロセスは、同一ノード上のプロセスの起動/終了/監視を行う。各ノードの管理プロセス同士は通信を行い、各ノードで発生したイベントを他ノードへ通知する。
【0042】
ホスト通信ディスパッチャは、ホスト通信プロセスの管理を行うものであり、具体的には他プロセスから受信したメッセージの処理、ホストとの通信などを行う。また、ホストより受信した搬送指示などをホスト通信プロセスに実行させる。
【0043】
AMHS通信ディスパッチャプロセスは、AMHS通信プロセスの管理を行うものであり、具体的には他プロセスから受信したメッセージの処理を行う。また、搬送制御プロセスからのAMHS送信メッセージを担当AMHS通信プロセスに実行させる。
【0044】
搬送制御ディスパッチャプロセスは、搬送制御プロセスの管理を行うものであり、具体的には、他プロセスから受信したメッセージの処理を行う。また、搬送制御を搬送制御プロセスに実行させる。
【0045】
統計履歴プロセスは、他プロセスからの履歴情報の登録、管理を行うとともに、統計情報の計算、登録及び管理を行う。ログプロセスは、他プロセスからのログ(Log)情報の登録、管理を行う。画面制御プロセスは、システム状態表示及びオペレータ操作の受付などを行う。
【0046】
ホスト通信プロセスは、搬送指示などの受付処理(受信メッセージの処理)を行う。AMHS通信プロセスはAMHSとの通信及び受信メッセージの処理を行う。搬送制御プロセスは、搬送経路の決定及び制御を行う。
【0047】
上記の各プロセスのうち、上記の統括制御プロセス、即ち、ホスト通信ディスパッチャプロセス、AMHS通信ディスパッチャプロセス、搬送制御ディスパッチャプロセス、統計履歴プロセス、ログプロセス及び画面制御プロセスは、システム上でそれぞれ1つが動作する。一方、管理プロセスは各ノードのMCS上で動作する。ホスト通信プロセス、AMHS通信プロセス及び搬送制御プロセスはシステムの規模に応じて同一ノード上又は別ノード上で複数個が動作するものであり、システム無停止で増減が可能である。
【0048】
ノード、プロセスの情報としては、MCSを構成するノード情報、及び、プロセスの動作に必要な情報及び起動ノードの優先順位情報であるプロセス情報が存在し、これらの情報に従ってプロセスが配置される。
【0049】
次に、MCSと他の要素との接続について図6を参照して説明する。ホストはSIP#1を使用してMCSと接続する(破線矢印201)。MCSターミナルはSIP#2を使用してMCSと接続する(破線矢印202)。
【0050】
MCSとAMHSとの接続は分散装置13により規定されている。分散装置には、ポート番号と接続先ノード情報とが登録されている。なお、1つのポート番号に対して複数個の接続先ノードが登録されている。分散装置13は、定義されているノード、ポートに対してヘルスチェックを行う(破線矢印204)。各ポート番号を使用しているAMHS通信プロセスは1つしか存在しないため、分散装置13は、ヘルスチェックを行うことにより、接続先ノードを特定することができる。AMHSは、分散装置のVIPとポート番号とを使用して分散装置へ接続する。分散装置はポート番号で接続先ノードが特定できるので、AMHSからの接続先ポート番号により接続先ノードを振り分ける。こうしてAMHSとMCSとの接続を確立できる(破線矢印203)。
【0051】
次に、本実施例のシステムの障害時の動作について説明する。
【0052】
図7は正常動作時の本システムの動作状態を示す。起動ノードの優先順位に従って、いくつかのプロセスがノード#1のMCS上で動作している。また、ノード#1のMCSがSIP#1及び共有ディスク#1を保持している。
【0053】
起動ノードの優先順位の例を図8に示す。各プロセスについては、起動ノードの優先順位が予め決定されている。図8の例では、搬送制御プロセス、AMHS通信プロセス及びホスト通信プロセスについて、優先順位はノード#n、ノード#3の順となっている。
【0054】
まず、2重化構成のノードに対応するMCS、即ち、本発明における統括制御コントローラがダウンした場合の動作状態を図9に示す。ここでは、ノード#1のMCSがダウンしたとする。この場合、ノード#1の全プロセスが終了し、ノード#1はSIP#1及び共有ディスク#1を解放する。そして、ノード#2が引継リソース(SIP#1及び共有ディスク)を確保し、障害発生前にノード#1で実行されていたプロセスがノード#2上で起動される。なお、この場合のみ、1つのノード上で2つの管理プロセスが動作することになる。こうして、統括制御を行う2重化構成のノードの一方がダウンした場合には、他方のノードが代わりに統括制御プロセスを実行する。
【0055】
次に、2重化構成のノード以外のノードに対応するMCS、即ち、本発明におけるプロセス実行コントローラがダウンした場合の動作状態を図10に示す。具体的には、ノード#nのMCSがダウンしたとする。この場合、まず管理プロセス間の通信が切れる(S31)。管理プロセス#1は図8に例示する起動ノードの優先順位を参照し、次の優先順位のノード(即ちノード#3)の管理プロセスに起動要求を行う(S32)。そして、ノード#3の管理プロセス#3が、障害発生前にノード#nで実行されていたプロセスを起動し、実行する(S33)。こうして、2重化構成のノード以外のノードがダウンした場合にも、プロセスは他のノードに引き継がれる。
【0056】
次に、プロセス単位の障害が発生した場合の動作を図11に示す。正常状態での動作中に、ノード#1上のAMHS通信ディスパッチャプロセスがダウンしたとする。この場合、管理プロセス#1は、AMHS通信ディスパッチャプロセスがダウンしたことを検出し(S41)、起動ノードの優先順位に従ってダウンしたプロセスを起動する(S42)。なお、この例は管理プロセス以外がダウンした場合であるが、管理プロセスがダウンした場合には、OSのデーモン処理により、ダウンしたノード上で管理プロセスが再起動され、処理が継続される。
【0057】
以上説明したように、本発明の搬送制御システムにおいては、MCSをマルチノード、マルチプロセス化したことにより、搬送処理量に応じたフレキシブルな拡張が可能となる。これにより、搬送処理量増大時にシステム全体の交換などが不要となるとともに、初期導入時に高価なマシンの購入が不要となり、初期導入コストを抑えることができる。こうして、高拡張性が実現される。
【0058】
また、管理プロセス及びディスパッチャプロセスがプロセスの監視、管理を行うので、以下の効果が得られる。まず、プロセスがダウンしても自動的に短時間で再起動され、搬送の継続が可能となるので、システムダウンタイムが短縮できる。また、2重化構成でないノードがダウンしても自動的に短時間で別ノード上に再起動されるので、システムダウンタイムが短縮できる。さらに、制限はあるものの、システム停止なしでソフトウェアのバージョンアップが可能となり、ソフトウェアのバージョンアップ時のシステムダウンタイムを短縮することができる。こうして、高可用性が実現できる。
【0059】
さらに、マルチノード、マルチプロセス化により、従来のようなスタンバイノードが不要となる利点もある。
【図面の簡単な説明】
【0060】
【図1】本発明の搬送制御システムの基本構成を模式的に示す。
【図2】ホスト通信サブシステムの動作を模式的に示す。
【図3】搬送制御サブシステムの動作を模式的に示す。
【図4】AMHS通信サブシステムの動作を模式的に示す。
【図5】本発明の実施例に係る搬送制御システムの構成を示す。
【図6】図5に示す各要素の接続及び分散装置の詳細を示す。
【図7】実施例の搬送制御システムの正常動作時の状態を示す。
【図8】プロセスの起動ノードの優先順位の例を示す。
【図9】2重化構成ノードのダウン時の動作状態を示す。
【図10】2重化構成ノード以外のノードのダウン時の動作状態を示す。
【図11】プロセスダウン時の動作状態を示す。
【符号の説明】
【0061】
10 LAN
11 ホスト
12 MCSターミナル
13 分散装置
【特許請求の範囲】
【請求項1】
ネットワークを通じて複数の搬送装置と通信可能に構成された搬送制御システムであって、
搬送処理のための搬送プロセスを実行する複数のプロセス実行コントローラと、
前記プロセス実行コントローラによる搬送プロセスの実行を統括制御する統括制御プロセスを実行する少なくとも2つの統括制御コントローラと、を備え、
前記複数のプロセス実行コントローラのうちの1つが動作不能となったときは、当該動作不能となったプロセス実行コントローラが実行していた搬送プロセスを他のプロセス実行コントローラが実行し、
一方の統括制御コントローラが動作不能となったときは、当該動作不能となった統括制御コントローラが実行していた統括制御プロセスを他方の統括制御コントローラが実行することを特徴とする搬送制御システム。
【請求項2】
前記統括制御コントローラは、実行中の統括制御プロセスが実行不能となったときは、当該統括制御プロセスを再実行することを特徴とする請求項1に記載の搬送制御システム。
【請求項3】
前記統括制御プロセスは、前記複数の搬送プロセスを前記複数のプロセス実行コントローラに割り当てるディスパッチャプロセスを含むことを特徴とする請求項1又は2に記載の搬送制御システム。
【請求項4】
前記統括制御コントローラは、同一のデータに対する更新を伴う搬送プロセスを前記プロセス実行コントローラに割り当てずに自ら実行することを特徴とする請求項3に記載の搬送制御システム。
【請求項5】
前記搬送プロセスは、搬送経路を決定する搬送制御プロセスと、搬送装置と通信して搬送を実行させる搬送装置通信プロセスとを含むことを特徴とする請求項1乃至4のいずれか一項に記載の搬送制御システム。
【請求項1】
ネットワークを通じて複数の搬送装置と通信可能に構成された搬送制御システムであって、
搬送処理のための搬送プロセスを実行する複数のプロセス実行コントローラと、
前記プロセス実行コントローラによる搬送プロセスの実行を統括制御する統括制御プロセスを実行する少なくとも2つの統括制御コントローラと、を備え、
前記複数のプロセス実行コントローラのうちの1つが動作不能となったときは、当該動作不能となったプロセス実行コントローラが実行していた搬送プロセスを他のプロセス実行コントローラが実行し、
一方の統括制御コントローラが動作不能となったときは、当該動作不能となった統括制御コントローラが実行していた統括制御プロセスを他方の統括制御コントローラが実行することを特徴とする搬送制御システム。
【請求項2】
前記統括制御コントローラは、実行中の統括制御プロセスが実行不能となったときは、当該統括制御プロセスを再実行することを特徴とする請求項1に記載の搬送制御システム。
【請求項3】
前記統括制御プロセスは、前記複数の搬送プロセスを前記複数のプロセス実行コントローラに割り当てるディスパッチャプロセスを含むことを特徴とする請求項1又は2に記載の搬送制御システム。
【請求項4】
前記統括制御コントローラは、同一のデータに対する更新を伴う搬送プロセスを前記プロセス実行コントローラに割り当てずに自ら実行することを特徴とする請求項3に記載の搬送制御システム。
【請求項5】
前記搬送プロセスは、搬送経路を決定する搬送制御プロセスと、搬送装置と通信して搬送を実行させる搬送装置通信プロセスとを含むことを特徴とする請求項1乃至4のいずれか一項に記載の搬送制御システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2009−3667(P2009−3667A)
【公開日】平成21年1月8日(2009.1.8)
【国際特許分類】
【出願番号】特願2007−163319(P2007−163319)
【出願日】平成19年6月21日(2007.6.21)
【出願人】(302059274)アシスト テクノロジーズ ジャパン株式会社 (146)
【Fターム(参考)】
【公開日】平成21年1月8日(2009.1.8)
【国際特許分類】
【出願日】平成19年6月21日(2007.6.21)
【出願人】(302059274)アシスト テクノロジーズ ジャパン株式会社 (146)
【Fターム(参考)】
[ Back to top ]