(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0018】
以下、本発明の実施形態について図面を参照しながら説明する。ただし、本発明はこの形態に限定されない。また、図面においては実施形態を説明するため、一部分を大きくまたは強調して記載するなど適宜縮尺を変更して表現している。
図2では、XYZ座標系を用いて図中の方向を説明する。このXYZ座標系は、水平面に平行な平面をXY平面とする。このXY平面において走行車Vが走行する方向をX方向と表記し、X方向に直交する方向をY方向と表記する。また、XY平面に垂直な方向はZ方向と表記する。X方向、Y方向及びZ方向のそれぞれは、図中の矢印の方向が+方向であり、矢印と反対の方向が−方向であるとして説明する。
【0019】
図1は、第1実施形態の走行車システムを示す図である。
図1等において、図中の記号「…」は、所定の情報(空データを含む)が存在することを示す。走行車システム1は、軌道2と、複数の走行車V1、V2、V3、・・・(以下、走行車Vと称する場合がある)と、コントローラ4と、を備える。走行車システム1は、例えば、半導体デバイスの製造工場に設置される搬送システムであり、半導体デバイスの製造に用いられる半導体ウエハを収容したFOUP、あるいはレチクルなどの加工用部材を収容したレチクルポッドなどの物品W(
図2参照)を搬送する。
【0020】
複数の走行車Vは、それぞれ、軌道2に沿って走行する。走行車Vは、例えば天井走行車であり、軌道2は、クリーンルームの天井などに設けられる走行レールである。なお、走行車Vは、地上走行の有軌道台車などでもよく、この構成の場合、軌道2は、床などに設けられる。
【0021】
軌道2は、交差点5として、分岐部6a、6b(以下、分岐部6と称する場合がある)、及び合流部7a、7b(以下、合流部7と称する場合がある)を一部に含む。分岐部6a、6bは、1つの走行レールが複数(例、2つ)の走行レールに分岐する分岐点を含む。合流部7a、7bは、複数(例、2つ)の走行レールが1つの走行レールに合流する合流点を含む。分岐部6a、6b及び合流部7a、7bには、それぞれ、ブロッキングエリアBA1、BA4、BA2、BA3(以下、ブロッキングエリアBAと称する場合がある)が設けられている。なお、走行車システム1において、走行車V、分岐部6、合流部7、及びブロッキングエリアBAの数は、それぞれ、任意に設定可能である。
【0022】
走行車システム1は、走行車Vが1台ずつブロッキングエリアBA(BA1〜BA4)を通過するように、走行車Vを制御する。走行車システム1では、ブロッキングエリアBAに1台の走行車Vが存在する場合、他の走行車Vは、ブロッキングエリアに進入することが禁止される。また、走行車Vの走行ルールには、軌道2において、走行車Vが所定の向きのみに走行する(逆走しない)ことが定められる。なお、上記の走行ルールは一例であり、走行ルールは任意に設定可能である。
【0023】
軌道2は、処理装置(図示せず)あるいはストッカ(図示せず)などに隣接して設けられる。上記の処理装置は、例えば、露光装置、コータディベロッパ、製膜装置、あるいはエッチング装置などであり、走行車Vが搬送する容器内の半導体ウエハに各種処理を施す。上記のストッカ(自動倉庫)は、走行車Vが搬送する容器を保管する。
【0024】
図2は、走行車Vの一例を示す図である。走行車Vは、建屋の天井10等から吊り下げられた軌道(経路)2に沿って+X方向に走行し、軌道TAの下方、側方(Y方向を含む方向)、下方且つ側方に配置された荷つかみ先で物品Wの荷つかみを行い、軌道TAの下方、側方(Y方向を含む方向)、下方且つ側方に配置された荷おろし先で物品Wの荷おろしを行う天井搬送車である。走行車Vは、車載コントローラ11を備えている。車載コントローラ11は、コントローラ4(あるいはエリアコントローラ)から送信される指令に従って走行車Vを制御する。走行車Vは、車載コントローラ11に制御され、各種動作を行う。
【0025】
走行車Vは、走行部13と、本体部14と、を備える。走行部13は、車輪15を備え、図示しない走行駆動部により軌道2に沿って走行する。本体部14は、走行部13の下方に吊り下げられた状態で設けられる。本体部14は、移載装置17を備える。移載装置17は、物品Wを保持する物品保持部18と、物品保持部18を昇降させる昇降駆動部20と、昇降駆動部20を軌道2の側方(+Y方向又は−Y方向)に移動させる横出し機構21と、を備える。
【0026】
物品保持部18は、移動可能な爪部18aを有するチャックであり、爪部18aを物品Wのフランジ部Waの下方に進入させて、物品Wを吊り下げて保持する。物品保持部18は、ワイヤ又はベルト等の吊り下げ部材18bと接続されている。昇降駆動部20は、例えば、ホイストであり、吊り下げ部材18bを繰り出し又は巻き取ることにより物品保持部18を昇降させる。横出し機構21は、複数の可動板をスライドさせることにより、物品保持部18及び昇降駆動部20を、本体部14に格納した位置から軌道2の側方に移動させる。走行車Vによる物品Wの荷つかみ及び荷おろしは、上記した物品保持部18、あるいは、昇降駆動部20及び横出し機構21を用いて実施される。物品保持部18、昇降駆動部20及び横出し機構21は、車載コントローラ11によって制御される。
【0027】
荷つかみ先Pで物品Wの荷つかみを行う場合、車載コントローラ11は、走行車Vを荷つかみ先Pに合わせて停止させ、昇降駆動部20、あるいは昇降駆動部20と横出し機構21とを動作させて物品保持部18を所定位置に移動させることにより、荷つかみ先Pで物品Wの荷つかみを行わせるように指示する。荷つかみ先Pは、例えば、処理装置あるいはストッカのロードポート、物品Wを載置可能な棚部が建屋の天井10等から吊り下げられて設けられたオーバーヘッドバッファなどである。
【0028】
また、荷おろし先Cで物品Wの荷おろしを行う場合、車載コントローラ11は、走行車Vを荷おろし先Cに合わせて停止させ、昇降駆動部20、あるいは昇降駆動部20と横出し機構21とを動作させて物品保持部18を所定位置に移動させることにより、荷おろし先Cで物品Wの荷おろしを行わせるように指示する。荷おろし先Cは、例えば、処理装置あるいはストッカのロードポート、物品Wを載置可能な棚部が建屋の天井10等から吊り下げられて設けられたオーバーヘッドバッファなどである。
【0029】
走行車Vは、軌道2に設けられた位置マーカを検出して走行車Vの現在位置を検出する位置センサ、走行車Vの荷物の有無を検出する積荷センサ、走行車Vの進行方向(走行方向)の前方(斜め前方を含む)を監視し、前方に他の走行車Vが存在するか否かを検出し、前方に他の走行車Vが存在する場合には、前方の走行車Vとの距離を検出する前方センサ等を有する。
【0030】
車載コントローラ11は、走行車Vの各部の制御、各種データ処理を行う。車載コントローラ11は、走行車Vの走行の制御、走行車Vの走行経路の設定、走行車Vの状態情報の生成等を行う。車載コントローラ11とコントローラ4(
図3参照)とは、例えば、無線LAN、フィーダー線を用いたフィーダー通信等の伝送路を介して無線通信接続されている。また、コントローラ4は、上位コントローラ28(
図3参照)と有線LAN、無線LAN等の伝送路を介して通信接続されている。
【0031】
走行車Vは、上位コントローラ28に制御される。上位コントローラ28は、コントローラ4を介して、走行車Vに対して走行指令などを送信する。走行指令は、例えば、走行車Vの出発地(始点)、及び目的地(終点)を示す情報である。走行車Vは、受信した走行指令(走行車Vの出発地、目的地)及び予め記憶部に記憶される軌道2のマップ情報に基づいて、走行経路を設定する。
【0032】
走行車Vは、コントローラ4から送信された状態情報要求を受信する。状態情報要求は、走行車Vの状態情報の送信を要求する指令である。状態情報は、走行車Vの状態を示す情報である。状態情報は、例えば、現在位置、目的地、走行状態(速度等)、荷物状態、前方状態、及びブロッキングエリアBAの通過許可要求を含む。
【0033】
走行車Vは、ブロッキングエリアBAの通過許可要求を状態情報としてコントローラ4に送信する。走行車Vは、通過許可要求に対する通過許可をコントローラ4から受信した場合にはブロッキングエリアBAを通過するが、受信しない場合にはブロッキングエリアBAの前で停止するか、もしくはブロッキングエリアBA手前に設定される停止位置(待機位置)に向かって減速しながら走行する。
【0034】
ブロッキングエリアBAの通過許可要求は、走行車Vが通過を要求するブロッキングエリアBAの識別情報と、そのブロッキングエリアBAに対する走行車Vの進入及び通過の方向(
図1に示すD1方向、D2方向)を含む。走行車Vは、位置センサの検出結果及び走行領域のマップ情報に基づいて、ブロッキングエリアに近づいたことを検出し、通過予定のブロッキングエリアBAに対する通過許可要求を生成する。
【0035】
上記の状態情報は、車載コントローラ11により周期的に更新され、最新の状態を示す情報が維持される。コントローラ4は、走行車Vに対して状態情報要求を周期的に送信し、走行車Vはコントローラ4からの状態情報要求に対する応答として、最新の状態情報をコントローラ4に送信する。なお、上記した状態情報は一例であって、状態情報は他の形態でもよい。
【0036】
図3は、コントローラの機能ブロック構成の一例を示す図である。コントローラ4は、走行車Vを制御する。例えば、コントローラ4は、ブロッキングエリアBAを通過予定(走行予定)の走行車Vに対して、ブロッキングエリアBAの通過(走行)を許可するか否かを制御するブロッキング制御を行う。コントローラ4は、記憶部30と、判定部31と、更新部32とを備える。コントローラ4は、例えば、CPU、メインメモリ、記憶装置、通信装置等を備え、各種情報の処理を行うコンピュータ装置である。コントローラ4は、例えば、各種の情報(データ)の処理、情報の記憶、情報の入出力、情報の通信(送受信)等を行う。なお、コントローラ4に用いられるコンピュータ装置の構成は、任意であり、例えば、1つの装置により構成されてもよいし、複数のコンピュータ装置により構成されてもよい。
【0037】
記憶部30は、コントローラ4の動作に必要な各種情報を記憶(格納)する。例えば、記憶部30は、ブロッキングエリアBAに含まれる分岐部6又は合流部7における方向(例、D1方向、D2方向)毎に、通過許可を最後に送信し且つその通過許可が未解除である最終許可走行車を記憶する第1記憶部と、ブロッキングエリアBAに含まれる分岐部6又は合流部7における方向毎に、通過許可を最後に解除した最終解除走行車を記憶する第2記憶部と、ブロッキングエリアBAの通過許可待ち走行車に通過許可を送信する際、そのブロッキングエリアBAにおいて同一方向の通過許可を最後に送信した走行車Vを、通過許可待ち走行車の前方走行車として記憶する第3記憶部と、を備える。例えば、以下、本実施形態の走行車システム1の一例として、記憶部30が、最終許可走行車の情報を含む許可順情報35を記憶し、最終解除走行車の情報を含む解除済み情報36を記憶し、前方走行車の情報を含む前方走行車情報34を記憶する構成の例を説明する。前方走行車情報34、許可順情報35、及び解除済み情報36は、ブロッキング制御に用いられる。
【0038】
前方走行車情報34は、走行車Vの前方走行車に関する情報である。前方走行車は、走行車Vの走行方向の前方において最も近い位置を走行する走行車Vである。換言すれば、前方走行車は、走行車Vと同じ走行方向に走行する走行車であって、走行車Vの直前を走行する走行車である。前方走行車情報34は、判定部31による通過許可要求の許可の判定に用いられる。前方走行車情報34は、各走行車Vに対して設定されている。例えば、前方走行車情報34(
図1等において「前方:」と表記する)は、
図1の例に示すように、走行車V1の前方走行車は走行車V0(図示せず)、走行車V2の前方走行車は走行車V1、走行車V3の前方走行車は走行車V2のように、各走行車Vに対して設定される。コントローラ4は、各走行車Vの前方走行車情報34を管理する。前方走行車情報34は、例えば、各走行車Vの識別番号と、前方走行車の識別番号とが関連付けられた情報(例、テーブルデータ)である。前方走行車情報34は、第3記憶部に記憶され、後に説明する前方走行車情報更新部40により所定の条件で更新される。上記のような前方走行車情報34を用いる場合、各走行車Vの並び順を求めることができる。例えば、各走行車Vの情報及びその前方走行車情報34から各走行車Vの並び順を求めることができる。走行車システム1では、後に説明するように、前方走行車情報34を用いることにより、ルート探索などの複雑かつ処理に時間がかかる手法を用いずに、簡易な方法により、各走行車Vの並び順を求め、ブロッキング制御を行うことができる。なお、走行車システム1の設置段階あるいは設置直後のように前方走行車情報34が設定されていない場合、前方走行車情報34は、例えば、複数の走行車Vを試験的に走行させて走行車Vの並び順あるいは所定位置(例、ブロッキングエリアBA)における走行車Vの通過順等の情報を取得し、取得した情報に基づいて設定することができる。なお、上記した前方走行車情報34の設定は、コントローラ4により設定する構成としてもよいし、コントローラ4以外のコンピュータあるいは人間が設定した前方走行車情報34をコントローラ4に入力することにより設定する形態でもよい。
【0039】
許可順情報35は、各ブロッキングエリアBAにおけるコントローラ4が通過許可を送信した走行車Vの順番に関する情報である。許可順情報35は、ブロッキングエリアBAに含まれる分岐部6又は合流部7における方向毎に、通過許可を最後に送信し且つその通過許可が未解除である最終許可走行車に関する最終許可情報LPを含む。許可順情報35は、コントローラ4により、各ブロッキングエリアBA1〜BA4毎に管理されている。例えば、許可順情報35は、通過許可が与えられた順番を示す情報(
図1中、1、2、3・・・)と、ブロッキングエリアBAに対する走行車Vの進入及び通過の方向を示す情報と、走行車Vの識別情報とが、関連付けられた情報である。本実施形態に示す許可順情報35の例では、通過許可が与えられた走行車Vの順番を示す値が小さい値ほど新しい情報であるとする。
【0040】
コントローラ4は、通過許可を与えた走行車VがブロッキングエリアBAを通過した後にその通過許可を解除する。走行車Vに与えられたブロッキングエリアBAの通過許可が解除された場合、許可順情報35から、通過許可が解除された走行車Vに関する情報が削除される。すなわち、許可順情報35に登録されている情報は、通過許可が与えられ且つその通過許可が解除されていない走行車Vに関する情報である。また、コントローラ4は、走行車Vに与えたブロッキングエリアBAの通過許可を解除した場合、通過許可が解除された走行車Vに関する情報を解除済み情報36に登録(記憶)させる。すなわち、許可順情報35及び解除済み情報36は、許可順情報35及び解除済み情報36の双方に同一の走行車Vが重複して記憶されないように、コントローラ4により制御されている。許可順情報35は、例えば、通過許可を与えた順番を示す情報(例、1、2・・・)と、ブロッキングエリアBAに対する走行車Vの進入及び通過の方向を示す方向情報と、走行車Vの識別情報とが関連付けられた情報である。なお、本実施形態では、ブロッキングエリアBAに対する走行車Vの進入及び通過の方向は、直進方向を符号「D1」とし、カーブの方向(カーブを含む方向)を符号「D2」としている。また、本実施形態では、通過許可を与えた順番を示す情報は、順番の値が小さいほど新しい情報であるとする。すなわち、本実施形態では、最終許可走行車は、許可順情報35の順番1に最終許可情報LPとして、第1記憶部に記憶される。各ブロッキングエリアBAにおける最終許可走行車の有無は、第1記憶部に記憶された走行車Vの情報の有無により判定できる。
【0041】
許可順情報35は、第1記憶部等の記憶部30に記憶され、後に説明する許可順情報更新部41により、所定のタイミングで更新される。なお、許可順情報35は、
図1等に示す例に限定されない。例えば、許可順情報35は、最終許可情報LPのみであってもよいし、上記の通過許可を与えた順番を示す情報として通過許可を与えた時刻の情報を用いてもよい。
【0042】
解除済み情報36は、ブロッキングエリアBAを通過した走行車Vに関する情報である。解除済み情報36は、ブロッキングエリアBAを最後に通過して通過許可が解除された最終解除走行車に関する最終解除情報L、及び、分岐部6又は合流部7の方向毎に最後に通過して通過許可が解除された方向別最終解除走行車に関する方向別最終解除情報L1、L2を含む。方向別最終解除情報L1は、D1方向(直進方向)へブロッキングエリアBAに進入及び通過した最後の走行車Vを示す情報(例、走行車の識別情報)である。方向別最終解除情報L2は、D2方向(カーブ方向)へブロッキングエリアBAに進入及び通過した最後の走行車Vを示す情報(例、走行車の識別情報)である。解除済み情報36は、各ブロッキングエリアBA1〜BA4毎に管理されている。解除済み情報36は、後に説明する解除済み情報更新部42により更新される。
【0043】
判定部31は、各ブロッキングエリアBAにおける各走行車Vからの通過許可要求に対して、通過許可を与えるか否かを判定する(以下、「通過許可判定」と称す場合もある)。判定部31は、ブロッキングエリアBAの通過許可待ち走行車の前方走行車と、そのブロッキングエリアBAにおける最終許可走行車又は前記最終解除走行車とが一致するか否かにより、通過許可待ち走行車に対して通過許可を与えるか否かを判定する。「通過許可待ち走行車」は、コントローラ4に通過許可を送信し、コントローラ4からの通過許可の判定の結果を待っている走行車である。判定部31は、走行車Vから通過許可要求を受信した際、その走行車Vの前方走行車情報34と、その走行車Vが通過しようとするブロッキングエリアBAの最終許可情報LP、最終解除情報L、及び方向別最終解除情報L1、L2のいずれかと、を記憶部30(第1記憶部、第2記憶部、第3記憶部)から読み出して、その走行車Vにおける前方走行車と、そのブロッキングエリアBAにおける最終許可走行車、最終解除走行車、及び方向別最終解除走行車のいずれかとが一致するか否かにより、その走行車Vに対する通過許可を与えるか否かを判定する。判定部31については、後の説明においてさらに説明する。
【0044】
更新部32は、前方走行車情報34を更新(設定)する前方走行車情報更新部40と、許可順情報35(LP)を更新(設定)する許可順情報更新部41と、解除済み情報36(L、L1、L2)を更新(設定)する解除済み情報更新部42と、を備える。更新部32については、後の説明においてさらに説明する。
【0045】
本実施形態の走行車システム1(本実施形態の走行車の制御方法)におけるブロッキング制御に関する動作ついて説明する。走行車システム1では、2つのブロッキングエリアBAの間において複数の走行車Vの並び順が変わらないという法則と、前方走行車情報34と、その走行車Vが通過しようとするブロッキングエリアBAの最終許可情報LP、最終解除情報L、及び方向別最終解除情報L1、L2とに基づいて、複数の走行車Vの並び順を把握することにより、ブロッキング制御を行う。
【0046】
分岐部6及び合流部7がある場合、走行車Vの並び順は、分岐部6か合流部7かに応じて異なる。走行車システム1では、分岐部6のブロッキングエリアBAにおけるブロッキング制御(以下、「分岐部6のブロッキング制御」と称す場合もある)と合流部7のブロッキングエリアBAにおけるブロッキング制御(以下、「合流部7のブロッキング制御」と称す場合もある)とを、異なる制御で行う。
【0047】
以下の説明では、まず、走行車システム1における分岐部6のブロッキング制御について説明し、続いて、合流部7のブロッキング制御について説明する。
図4は、分岐部6のブロッキングエリアBAにおける通過許可要求の判定の動作を示すフローチャートである。
図5から
図8は、走行車システム1における分岐部6のブロッキング制御の動作を説明する図である。
【0048】
ここで、
図5及び
図6に示す例の走行車システム1の状態について説明する。
図5の走行車V1は、コントローラ4からブロッキングエリアBA1をD1方向へ進入及び通過する通過許可を得た状態とする。
図5の走行車V1の後方では、走行車V2、V3、V4が、この順番で走行しているとする。走行車V1、V2、V3、V4の前方走行車情報34には、それぞれ、走行車V0(図示せず)、V1、V2、V3が登録されている。許可順情報35には、ブロッキングエリアBA1の通過許可が与えられた走行車V1が順番1に登録されている。すなわち、許可順情報35において、走行車V1は、最終許可走行車として登録されている。走行車システム1の状態は、
図5に示す状態から
図6に示す状態に変化するとする。
図6において、走行車V1は、ブロッキングエリアBA1を通過した状態とする。また、
図6では、走行車V1がブロッキングエリアBA1を通過したタイミングで、ブロッキングエリアBA1の通過許可が解除され、通過許可が解除された走行車V1に関する許可順情報35が削除され、解除済み情報36において、走行車V1が最終解除走行車及び方向別最終解除走行車(L1)として登録されるとする。
【0049】
本実施形態の走行車システム1では、分岐部6のブロッキング制御の大原則として、コントローラ4は、ブロッキングエリアBAに到着する走行車Vの順番に通過許可を与える。例えば、コントローラ4は、
図5に示す例の場合、走行車V1、V2、V3、V4の順番に、ブロッキングエリアBA1の通過許可を与える。
【0050】
また、本実施形態の走行車システム1では、分岐部6のブロッキング制御の原則として、コントローラ4は、ある走行車Vに対してブロッキングエリアBAの通過許可が与えられている間(走行車Vに対するブロッキングエリアBAの通過許可が解除されるまで)は、そのブロッキングエリアBAの通過許可を通過許可が与えられている以外の他の走行車Vに対して与えない。例えば、コントローラ4は、
図5に示す例の場合、走行車V1がブロッキングエリアBA1の通過許可が与えられている間、走行車V2、V3、V4には、ブロッキングエリアBA1の通過許可を与えない。走行車システム1では、原則として、1つのブロッキングエリアBA1において、1台の走行車V1に対してのみ通過許可を与え、複数の走行車VがブロッキングエリアBA1に進入することを防止している。
【0051】
また、本実施形態の走行車システム1では、上記した分岐部6のブロッキング制御における大原則及び原則の例外として、コントローラ4は、走行車V1に対してブロッキングエリアBA1の通過許可が与えられている間において、その通過許可が解除される前であっても、通過許可が与えられた走行車V1の直後を走行する走行車V2が、通過許可が与えられた走行車V1と同じ方向にブロッキングエリアBA1に進入及び通過する場合、走行車V2に対してブロッキングエリアBA1の通過許可を与える。この場合、ブロッキングエリアBA1の通過許可が走行車V1、V2に重複して与えられた状態(連続許可)となる。これにより、走行車システム1は、複数の走行車V1、V2を効率よくブロッキングエリアBA1を通過させるように制御することができる。連続許可については、後にさらに説明する。
【0052】
上記した走行車システム1の分岐部6のブロッキング制御における大原則、原則、及び例外に関する動作の一例について、
図4のフローチャートに基づいて、
図5から
図8を参照しながら説明する。
【0053】
図4のステップS1において、コントローラ4が、走行車Vから分岐部6のブロッキングエリアBAに対する通過許可要求を受信した際、判定部31は、ブロッキングエリアBAにおいて、通過許可を得て且つ通過許可解除前(通過許可未解除)の走行車Vが存在するか否かを判定する。換言すれば、判定部31は、ブロッキングエリアBAの通過許可を得ており、且つ、そのブロッキングエリアBAを通過していない(以下、「通過許可中」あるいは「通過中」と称す場合もある)走行車Vが存在するか否かを判定する。判定部31は、許可順情報35に基づいて、上記の判定を行う。判定部31は、第1記憶部に記憶される最終許可情報LPに最終許可走行車が記憶されるか否かを判断し、上記の判定を行う。例えば、
図6の例では、コントローラ4が走行車V2からブロッキングエリアBA1に対する通過許可要求を受信した際、判定部31は、許可順情報35に基づいて、第1記憶部に記憶される最終許可走行車がないと判断し、ブロッキングエリアBA1には通過許可中の走行車Vが存在しないと判定する(ステップS1のNO)。
【0054】
判定部31が、ステップS1において、ブロッキングエリアBAにおいて通過許可中の走行車Vが存在しないと判定した場合(ステップS1のNO)、ステップS2において、判定部31は、通過許可要求を送信した走行車Vに関する前方走行車が、そのブロッキングエリアBAを最後に通過した走行車V(最終解除走行車)と一致するか否かを判定する。判定部31は、ブロッキングエリアBAの通過許可待ち走行車の前方走行車と、そのブロッキングエリアBAにおける最終解除走行車が一致するか否かにより、通過許可待ち走行車に対して通過許可を与えるか否かを判定する。
【0055】
例えば、
図6の例において、判定部31は、前方走行車情報34及び最終解除情報Lに基づいて、通過許可要求を送信した走行車V2の前方走行車(走行車V1)が、最終解除走行車(走行車V1)が一致すると判定する(ステップS2のYES)。また、判定部31は、
図6に示すように、走行車V1(
図6中、2点鎖線で示す)がブロッキングエリアBA1にD2方向へ進入し通過した場合においても、通過許可要求を送信した走行車V2の前方走行車(走行車V1)が、最終解除走行車(走行車V1)一致すると判定する(ステップS2のYES)。この判定(ステップS2のYES)により、走行車V2と走行車V1との間に他の走行車Vが存在せず、走行車V2が走行車V1と連続して走行している状態が判定され、走行車V1と走行車V2の並び順が求められる。
【0056】
ステップS2において、判定部31が、前方走行車が最終解除走行車と一致すると判定した場合(ステップS2のYES)、判定部31は、受信した通過許可要求に対して許可する(通過許可を出す)と判定して(ステップS3)、対象の走行車Vに通過許可を送信し(ステップS4)、通過許可判定は終了する。例えば、判定部31は、
図6の例では、走行車V2のブロッキングエリアBA1の通過許可要求を許可すると判定し、走行車V2に通過許可を送信して、通過許可判定が終了する。
【0057】
続いて、許可順情報更新部41は、判定部31による通過許可の送信のタイミングで、許可順情報35を更新する。許可順情報更新部41は、通過許可が与えられた走行車V2を順番1(最終許可走行車)として、許可順情報35(最終許可情報LP)を更新する(図示せず)。
【0058】
また、ステップS2において、判定部31が、通過許可要求を送信した走行車Vに関する前方走行車が、最終解除走行車と一致しないと判定した場合(ステップS2のNO)、判定部31は、対象の通過許可要求を許可しないと判定し(ステップS5)、通過許可判定は終了する。
【0059】
上述の説明のように、本実施形態の走行車システム1は、ブロッキングエリアBAが分岐部6を有する場合において、判定部31は、そのブロッキングエリアBAを通過中の走行車Vがいないときには、そのブロッキングエリアBAに対して通過許可要求を送信した走行車Vに対して、その走行車Vにおける前方走行車と、そのブロッキングエリアにおける最終解除走行車とが一致すれば、通過許可を与える。本実施形態の走行車システム1は、分岐部6を含むブロッキングエリアBAの最終許可走行車が第1記憶部に記憶されていない場合、そのブロッキングエリアBAの最終解除走行車と、そのブロッキングエリアの通過許可待ち走行車の前方走行車とが一致すれば、通過許可待ち走行車にブロッキングエリアBAの通過許可を与える。判定部31が上記の条件で通過許可要求を許可すると判定する場合、ブロッキングエリアBAを通過許可中の走行車Vが存在せず、且つ、前方走行車と最終解除走行車が一致するので、通過許可要求を送信した走行車Vと最終解除走行車との間にブロッキングエリアBAの通過許可が与えられていない他の走行車Vが存在しないように走行車Vを制御することができる。これにより、走行車システム1は、上記した分岐部6のブロッキング制御の大原則に従って走行車Vを制御することができる。以上のように、上記の走行車システム1の構成によれば、分岐部6のブロッキング制御を簡易な処理により実現することができ、ブロッキング制御の処理にかかる時間を短縮することができる。
【0060】
また、本実施形態の走行車システム1では、上記した連続許可に関する制御を行う。
【0061】
図4のステップS1において、判定部31が、ブロッキングエリアBAにおいて通過許可中の走行車Vが存在すると判定した場合(ステップS1のYES)、ステップS6において、判定部31は、許可順情報35に基づいて、通過許可要求を送信した走行車Vの前方走行車が最終許可走行車と同一か否かを判定する。判定部31は、第1記憶部に記憶される最終許可情報LPに基づいて上記の判定を行う。
【0062】
ここで、
図7(A)に示す例は、走行車V1がD1方向へブロッキングエリアBA1に進入し通過する通過許可を得、且つ、ブロッキングエリアBA1を通過していないときに(走行車V1が通過許可中の状態)、走行車V2がブロッキングエリアBA1にD1方向へ進入し通過する通過許可要求をコントローラ4に送信した状態であるとする。
【0063】
また、
図7(B)に示す例は、走行車V1がD2方向へブロッキングエリアBA1に進入し通過する通過許可を得、且つ、走行車V1がブロッキングエリアBA1を通過していないときに(走行車V1が通過許可中の状態)、走行車V2がD1方向へブロッキングエリアBA1に進入し通過する通過許可要求をコントローラ4に送信した状態であるとする。
【0064】
図7(A)及び(B)の例の場合、判定部31は、ステップS6において、通過許可要求を送信した走行車V2の前方走行車(走行車V1)が、最終許可走行車(走行車V1)一致するか否かを判定し、一致すると判定する(ステップS6のYES)。
【0065】
ステップS6において、判定部31が、通過許可要求を送信した走行車Vの前方走行車が、最終許可走行車と一致しないと判定した場合(ステップS6のNO)、判定部31は、通過許可要求を許可しないと判定し(ステップS5)、通過許可判定は終了する。
【0066】
ステップS6において、判定部31が、通過許可要求を送信した走行車Vの前方走行車が、最終許可走行車と一致すると判定した場合(ステップS6のYES)、ステップS7において、判定部31は、許可順情報35に基づいて、通過許可要求を送信した走行車VのブロッキングエリアBAに対する進行方向が、最終許可走行車のブロッキングエリアBAに対する進行方向と一致するか否かを判定する。判定部31は、第1記憶部に記憶される最終許可情報LPに基づいて上記の判定を行う。
【0067】
ステップS7において、判定部31は、
図7(A)の例の場合、通過許可要求を送信した走行車V2の進行方向(D1方向)が最終許可走行車(走行車V1)の進行方向(D1方向)と一致するか否かを判定し、一致すると判定する(ステップS7のYES)。また、
図7(B)の例の場合、ステップS7において、判定部31は、通過許可要求を送信した走行車V2の進行方向(D1方向)が最終許可走行車(走行車V1)の進行方向(D2方向)と一致するか否かを判定し、一致しないと判定する(ステップS7のNO)。
【0068】
ステップS7において、判定部31が、通過許可要求を送信した走行車Vの進行方向が最終許可走行車の進行方向と一致すると判定した場合(ステップS7のYES)、判定部31は、ブロッキングエリアBAの通過許可要求を送信した走行車Vに対して、ブロッキングエリアBAの通過を許可すると判定して(ステップS3)、通過許可を送信し(ステップS4)、通過許可判定は終了する。この場合、走行車V1、V2に重複して、ブロッキングエリアBA1の通過許可を与える状態(連続許可)とすることができる(制御することができる)。
【0069】
続いて、許可順情報更新部41は、判定部31による通過許可の送信のタイミングで、許可順情報35を更新する。許可順情報更新部41は、例えば、
図8(A)に示すように、判定部31により通過許可が与えられた走行車V2に関する情報を順番1(最終許可走行車)として更新(設定)し、また、すでに登録されている走行車V1に関する情報(順番1の情報)を順番2に繰り下げて、許可順情報35を更新(設定)する。
【0070】
なお、
図8(A)に示す状態において、走行車V3がブロッキングエリアBA1をD1方向に進入及び通過する通過許可要求を送信した場合、判定部31は、通過許可要求を送信した走行車V3の前方走行車(走行車V2)が、最終許可走行車(走行車V2)と一致すると判定し(ステップS6のYES)、通過許可要求を送信した走行車V3の進行方向(D1方向)が最終許可走行車(走行車V2)のブロッキングエリアBA1対する進入及び通過方向(D1方向)と一致すると判定し(ステップS7のYES)、その通過許可要求を許可する。この状態で、さらに走行車V4がブロッキングエリアBA1をD1方向に進入及び通過する通過許可要求を送信した場合、判定部31は、
図4に示す上述のフローと同様の判定を行うことにより、走行車V4の通過許可要求を許可する。このように、本実施形態の走行車システム1は、2台以上の走行車Vに対して上記した連続許可を行うことができる。
【0071】
なお、ステップS7において、判定部31が、通過許可要求を送信した走行車Vの進行方向が最終許可走行車の進行方向と一致しないと判定した場合(ステップS7のNO)、判定部31は、通過許可要求を許可しないと判定し(ステップS5)、通過許可判定は終了する。
【0072】
なお、上記のステップS7のNO、ステップS5の後、
図8(B)に示すように、走行車V1がブロッキングエリアBA1をD2方向に通過し、解除済み情報更新部42により、解除済み情報36の最終解除情報L、方向別最終解除情報L2に走行車V1が最終解除走行車、方向別最終解除走行車として登録される。その後、走行車V2からブロッキングエリアBA1の通過許可要求がコントローラ4に対して、再度送信される。この時、判定部31は、
図4のステップS1において、ブロッキングエリアBA1において許可中の走行車Vが存在しないと判定し(ステップS1のNO)、ステップS2において、判定部31は、通過許可要求を送信した走行車V2に関する前方走行車(走行車V1)が、最終解除走行車(走行車V1)と一致すると判定し(ステップS2のYES)、ステップS3において、通過許可要求を許可すると判定することができる。すなわち、本実施形態の走行車システム1において、判定部31が
図4のステップS1及びステップS1のYES以降の処理を行う構成はなくてもよく、この構成の場合、上記した連続許可の制御ができなくなる。
【0073】
走行車システム1では、判定部31が、各走行車Vにおける分岐部6のブロッキングエリアBAの各通過許可要求に対して、
図4に示したように、通過許可を出すか否かの判定を繰り返し行うことにより、分岐部6のブロッキング制御を行う。
【0074】
上述の説明のように、本実施形態の走行車システム1は、ブロッキングエリアBAが分岐部6を有する場合において、判定部31は、そのブロッキングエリアBAを通過中であって通過許可を解除していない走行車Vがいるときには、そのブロッキングエリアBAに対して通過許可要求を送信した走行車Vに対して、その走行車Vにおける前方走行車と、そのブロッキングエリアにおける最終許可走行車とが一致し、かつその最終許可走行車が分岐部6を通過した方向が一致すれば、通過許可を与える。本実施形態の走行車システム1では、判定部31は、ブロッキングエリアBAの最終許可走行車が第1記憶部に記憶されている場合、その最終許可走行車と、そのブロッキングエリアの通過許可待ち走行車の前方走行車とが一致し、かつブロッキングエリアBAにおける通過許可待ち走行車の進行方向が最終許可走行車と一致すれば、通過許可待ち走行車にブロッキングエリアBAの通過許可を与える。判定部31が上記の条件で通過許可要求を許可すると判定する場合、通過許可と判定した走行車Vの直前に通過許可を与えていない走行車Vが存在せず、且つ、通過許可と判定した走行車Vの直前にその走行車Vと同一方向に走行する通過許可中の走行車Vが存在するように走行車Vを制御することができる。また、判定部31が上記の条件で通過許可要求を許可すると判定する場合、上記した連続許可を行うことができる。以上のように、上記の走行車システム1の構成によれば、分岐部6のブロッキング制御において、簡易な処理により、複数の走行車Vに対して重複してブロッキングエリアBAの通過許可を与える制御を実現することができ、その結果、複数の走行車Vを効率よくブロッキングエリアBAを通過させるように制御することができる。
【0075】
次に、分岐部6のブロッキング制御に関する前方走行車情報34の更新について説明する。
図9は、分岐部6のブロッキング制御に関する前方走行車情報の更新の一例を示すフローチャートである。前方走行車情報更新部40は、通過許可を送信した走行車Vに関する前方走行車情報を更新する。前方走行車情報更新部40は、
図9のステップS4における判定部31による通過許可の送信のタイミングで、通過許可を送信した走行車Vについて記憶部30に記憶されている前方走行車情報34を更新する。前方走行車情報更新部40が上記のタイミングで、前方走行車情報34を更新することにより、前方走行車情報34のリアルタイム性を確保することができる。前方走行車情報更新部40は、許可順情報35の最終許可情報LP、最終解除情報L、及び方向別最終解除情報L1、L2に基づいて、前方走行車情報34を更新する。
【0076】
前方走行車情報更新部40は、
図9のステップS10において、ブロッキングエリアBAにおいて、通過許可中の走行車Vが存在するか否かを判定する。この判定は、上記した判定部31による
図4のステップS1の判定と同様である。前方走行車情報更新部40は、上記した判定部31による
図4のステップS1の判定結果に基づいて、ステップS10の判定を行う。
【0077】
前方走行車情報更新部40が、ステップS10において、ブロッキングエリアBAにおいて通過許可中の走行車Vが存在すると判定した場合(ステップS10のYES)、ステップS11において、通過許可を送信した走行車Vに関する前方走行車情報34(前方走行車)を、最終許可走行車に設定して更新する。すなわち、前方走行車情報更新部40は、ブロッキングエリアBAの通過許可を送信した走行車Vの前方走行車について、そのブロッキングエリアBAを通過中であって通過許可を解除していない走行車Vがいるときには、最終許可走行車を前方走行車に更新する。これにより、複数の走行車Vに対して重複してブロッキングエリアBAの通過許可を与える制御を確実に実施することができる。例えば、前方走行車情報更新部40は、
図7(A)及び(B)に示す例の場合、ステップS11において、通過許可を送信した走行車V2に関する前方走行車情報34(前方走行車)を、最終許可走行車(走行車V1)に設定して更新する。
【0078】
前方走行車情報更新部40が、ステップS10において、ブロッキングエリアBAにおいて通過許可中の走行車Vが存在しないと判定した場合(ステップS10のNO)、ステップS12において、通過許可を送信した走行車Vに関する前方走行車情報34(前方走行車)を、通過許可を送信した走行車Vが分岐部6へ進入及び通過する方向と同一方向の方向別最終解除走行車に設定して更新する。すなわち、前方走行車情報更新部40は、ブロッキングエリアBAの通過許可を送信した走行車Vの前方走行車について、そのブロッキングエリアBAが分岐部6を有しかつ通過中の走行車Vがいないときには、分岐部6を通過する方向が同じ方向別最終解除走行車を前方走行車に更新する。これにより、ブロッキング制御を簡易な処理により確実に実施することができる。
【0079】
例えば、前方走行車情報更新部40は、
図6に実線で示した走行車V1(D1方向)の例の場合、ステップS12において、通過許可を送信した走行車V2に関する前方走行車情報34(前方走行車)を、通過許可を送信した走行車V2がブロッキングエリアBA1に進入及び通過する方向(D1方向)と同じ方向の方向別最終解除走行車(走行車V1)として更新する。
【0080】
例えば、前方走行車情報更新部40は、
図6に2点鎖線で示した走行車V1(D2方向)の例の場合、ステップS12において、通過許可を送信した走行車V2に関する前方走行車情報34(前方走行車)を、通過許可を送信した走行車V2がブロッキングエリアBA1に進入及び通過する方向(D2方向)と同じ方向の最終解除走行車(図示せず)として更新する。
【0081】
上述のように、前方走行車情報更新部40が、上述の
図9に示すフローにより前方走行車情報34を更新する場合、通過許可を送信した走行車Vに関する前方走行車を簡易な処理で確実に設定できる。これにより、走行車システム1は、ブロッキング制御を簡易な処理により確実に実施することができる。
【0082】
次に、合流部7のブロッキング制御について説明する。
【0083】
図10は、判定部31による合流部7のブロッキングエリアBAにおける走行車Vの通過許可要求の判定動作を示すフローチャートである。
図11から
図13は、走行車システム1における合流部7のブロッキング制御の動作を説明する図である。
【0084】
まず、
図11、並びに
図12(A)及び(B)に例として示す走行車システム1の状態について説明する。
図11の走行車V5は、ブロッキングエリアBA3にD2方向へ進入及び通過する通過許可を得た状態とする。走行車V5の後方では、走行車V7が走行している。また、走行車V6は、ブロッキングエリアBA3の手前の位置を走行している。ブロッキングエリアBA3には、走行車V5、V6、V7の順番で到着するとする。走行車V7の前方走行車情報34には、走行車V5が登録されている。許可順情報35には、ブロッキングエリアBA3の通過許可が与えられた走行車V5が順番1に、最終許可走行車として登録されている。
【0085】
また、走行車システム1の状態は、
図11に示す状態から
図12(A)あるいは(B)に示す状態に変化するとする。
図12(A)及び(B)の例において、走行車V5は、D1方向へブロッキングエリアBA3に進入し、通過した状態とする。また、
図12(A)及び(B)では、走行車V5がブロッキングエリアBA3を通過したタイミングで、ブロッキングエリアBA3の通過許可が解除され、通過許可が解除された走行車V5に関する許可順情報35が削除され、解除済み情報36には、走行車V5に関する情報が、最終解除走行車、及び、方向別最終解除走行車として登録されているとする。
図12(A)の例において、走行車V6は、D1方向へブロッキングエリアBA3に進入し通過する通過許可要求を送信した状態とする。
図12(B)の例において、走行車V7は、D2方向へブロッキングエリアBA3に進入し通過する通過許可要求を送信した状態とする。
【0086】
本実施形態の走行車システム1では、合流部7のブロッキング制御の大原則として、コントローラ4は、ブロッキングエリアBAに到着する走行車Vの順番に通過許可を与える。これは、分岐部6のブロッキング制御と同様である。例えば、コントローラ4は、
図11に示す例の場合、走行車V5、V6、V7の順番に、ブロッキングエリアBA3の通過許可を与える。これにより、走行車システム1は、複数の走行車V5からV7に対して、効率よくブロッキングエリアBA3を通過させる制御を行うことができる。
【0087】
また、本実施形態の走行車システム1では、合流部7のブロッキング制御の原則として、コントローラ4は、ある走行車Vに対してブロッキングエリアBAの通過許可が与えられている間(走行車Vに対するブロッキングエリアBAの通過許可が解除されるまで)は、そのブロッキングエリアBAの通過許可を通過許可が与えられている以外の他の走行車Vに対して与えない。これは、分岐部6のブロッキング制御と同様である。例えば、コントローラ4は、
図11に示す例の場合、走行車V5にブロッキングエリアBA3の通過許可が与えられている間、走行車V6、V7には、ブロッキングエリアBA3の通過許可を与えない。また、本実施形態の走行車システム1では、合流部7のブロッキング制御の原則として、ブロッキングエリアBAにおいて、いずれの走行車Vにも通過許可を与えていない場合、次に通過する走行車Vに通過許可を与える。
【0088】
また、本実施形態の走行車システム1では、上記した合流部7のブロッキング制御における大原則及び原則の例外として、コントローラ4は、走行車V5に対してブロッキングエリアBA3の通過許可が与えられている間において、その通過許可が解除される前であっても、通過許可が与えられた走行車V5と同じ方向からブロッキングエリアBA3に進入する走行車V7に対してブロッキングエリアBA3の通過許可を与える。この場合、ブロッキングエリアBA3に対して走行車V7よりも先に到着する走行車V6よりも先に、走行車V7に対してブロッキングエリアBA3の通過許可を与える構成としてもよい。この場合、ブロッキングエリアBA3の通過許可が走行車V5、V7に重複して与えられた状態(連続許可)となる。これにより、走行車システム1は、合流部7においても、複数の走行車V5、V7を効率よくブロッキングエリアBA3を通過させるように制御することができる。
【0089】
上記した走行車システム1の合流部7のブロッキング制御における大原則、原則、及び例外に関する動作の一例について、
図10のフローチャートに基づいて、
図11から
図13を参照して説明する。なお、上述した構成と同様の構成については、同じ符号を付し、その説明を適宜、省略あるいは簡略とすることもある。
【0090】
コントローラ4が、走行車Vから合流部7のブロッキングエリアBAに対する通過許可要求を受信した際、
図10のステップS1において、ブロッキングエリアBAにおいて通過許可中の走行車Vが存在するか否かを判定する。例えば、
図12(A)及び(B)の例では、コントローラ4が走行車V6からブロッキングエリアBA3に対する通過許可要求を受信した際、判定部31は、許可順情報35に基づいて、ブロッキングエリアBA3において通過許可中の走行車Vが存在しないと判定する(ステップS1のNO)。
【0091】
図10のステップS1において、判定部31が、ブロッキングエリアBAにおいて通過許可中の走行車Vが存在しないと判定した場合(ステップS1のNO)、ステップS21において、判定部31は、通過許可要求を送信した走行車Vに関する前方走行車が、そのブロッキングエリアBAを、その通過許可要求を送信した走行車Vと同一の方向に最後に通過した走行車V(同一方向の方向別最終解除走行車)と一致するか否かを判定する。判定部31は、ブロッキングエリアBAにおける通過許可待ち走行車と同一方向に合流部7に進入した最終解除走行車が、通過許可待ち走行車の前方走行車と一致すれば、通過許可待ち走行車に前記ブロッキングエリアの前記通過許可を与える。
【0092】
例えば、ステップS21において、判定部31は、
図12(A)の例の場合、通過許可要求を送信した走行車V6に関する前方走行車(走行車Vy(図示せず))が、そのブロッキングエリアBA3を、その走行車V6と同一の方向の方向別最終解除走行車(L1)と一致するか否かを判定し、一致しないと判定する(ステップS21のNO)。
【0093】
ステップS21において、判定部31が、通過許可要求を送信した走行車Vに関する前方走行車が、その走行車Vと同一の方向の方向別最終解除走行車と一致しないと判定した場合(ステップS21のNO)、判定部31は、通過許可要求を許可しないと判定し(ステップS5)、通過許可判定は終了する。この場合、対象のブロッキングエリアBA3に対して次に到着する走行車V7からの通過許可要求が判定される。
【0094】
また、例えば、ステップS21において、判定部31は、
図12(B)の例の場合、通過許可要求を送信した走行車V7に関する前方走行車(走行車V5)が、そのブロッキングエリアBA3を、その走行車V7と同一の方向(D2方向)の方向別最終解除走行車(走行車V5、L2)と一致するか否かを判定し、一致すると判定する(ステップS21のYES)。
【0095】
ステップS21において、判定部31が、通過許可要求を送信した走行車Vに関する前方走行車が、その走行車Vと同一の方向の方向別最終解除走行車と一致すると判定した場合(ステップS21のYES)、判定部31は、ブロッキングエリアBAの通過許可要求を送信した走行車Vに対して、ブロッキングエリアBAの通過を許可すると判定して(ステップS3)、通過許可を送信し(ステップS4)、通過許可判定は終了する。
【0096】
続いて、許可順情報更新部41は、判定部31による通過許可の送信のタイミングで、許可順情報を更新する。許可順情報更新部41は、
図12(B)の例の場合、通過許可を与えた走行車V7を順番1(最終許可走行車)として、許可順情報35を更新する(図示せず)。
【0097】
上述の説明のように、本実施形態の走行車システム1は、ブロッキングエリアBAが合流部7を有する場合において、判定部31は、そのブロッキングエリアBAを通過中の走行車Vがいないときには、そのブロッキングエリアBAに対して通過許可要求を送信した走行車Vに対して、その走行車Vにおける前方走行車と、そのブロッキングエリアBAにおいて合流部7に進入する方向が同じ方向別最終解除走行車と一致すれば、通過許可を与える。本実施形態の走行車システム1は、合流部7を含むブロッキングエリアBAの最終許可走行車が第1記憶部に記憶されていない場合、そのブロッキングエリアBAにおける通過許可待ち走行車と同一方向に合流部7に進入した最終解除走行車が、通過許可待ち走行車の前方走行車と一致すれば、通過許可待ち走行車にブロッキングエリアBAの通過許可を与える。判定部31が上記の条件で通過許可要求を許可すると判定する場合、前方走行車と、最終許可走行車とが同一か否かの判定は行われない。判定部31が上記の条件で通過許可要求を許可すると判定する場合、ブロッキングエリアBAを通過許可中の走行車Vが存在せず、且つ、対象のブロッキングエリアBAに対して通過許可要求を送信した走行車Vが進入する方向と同一の方向に通過した方向別最終解除走行車とが一致するので、通過許可要求を送信した走行車Vと対象のブロッキングエリアBAとの間にブロッキングエリアBAの通過許可が与えられていない他の走行車Vが存在しないように走行車Vを制御することができる。これにより、走行車システム1は、上記した分岐部6のブロッキング制御の大原則に従って走行車Vを制御することができる。以上のように、上記の走行車システム1の構成によれば、合流部7のブロッキング制御を簡易な処理により実現することができ、ブロッキング制御の処理にかかる時間を短縮することができる。
【0098】
また、本実施形態の走行車システム1では、合流部7のブロッキング制御においても、上記した連続許可に関する制御を行う。
【0099】
図10のステップS1において、判定部31が、ブロッキングエリアBAにおいて通過許可中の走行車Vが存在するか否かを判定する。
【0100】
ここで、
図13(A)に示す例は、走行車V5がD2方向へブロッキングエリアBA3に進入し通過する通過許可を得、且つ、ブロッキングエリアBA3を通過していないときに、走行車V6がブロッキングエリアBA3にD1方向へ進入し通過する通過許可要求をコントローラ4に送信した状態であるとする。
【0101】
また、
図13(B)に示す例は、走行車V5がD2方向へブロッキングエリアBA3に進入し通過する通過許可を得、且つ、ブロッキングエリアBA3を通過していないときに、走行車V7がブロッキングエリアBA3にD2方向へ進入し通過する通過許可要求をコントローラ4に送信した状態であるとする。
【0102】
図10のステップS1において、判定部31は、
図13(A)及び(B)に示す例の場合、ブロッキングエリアBA3において、通過許可中の走行車V5が存在すると判定する(ステップS1のYES)。
【0103】
ステップS1において、判定部31が、ブロッキングエリアBAにおいて通過許可中の走行車Vが存在すると判定した場合(ステップS1のYES)、ステップS22において、判定部31は、許可順情報35に基づいて、通過許可要求を送信した走行車Vの前方走行車が最終許可走行車と一致するか否かを判定する。判定部31は、第1記憶部に記憶される最終許可情報LPに基づいて上記の判定を行う。ステップS22は、
図4のステップS6と同様である。
【0104】
例えば、ステップS22において、判定部31は、
図13(A)に示す例の場合、通過許可要求を送信した走行車V6の前方走行車(走行車Vy(図示せず))が最終許可走行車(走行車V5)と一致しないと判定する(ステップS22のNO)。
【0105】
例えば、ステップS22において、判定部31は、
図13(B)に示す例の場合、通過許可要求を送信した走行車V7の前方走行車(走行車V5)が最終許可走行車(走行車V5)と一致すると判定する(ステップS22のYES)。
【0106】
ステップS22において、判定部31が、通過許可要求を送信した走行車Vの前方走行車が最終許可走行車と一致すると判定した場合(ステップS22のYES)、ステップS23において、判定部31は、通過許可要求を送信した走行車Vの進行方向が最終許可走行車の進行方向と一致するか否かを判定する。判定部31は、第1記憶部に記憶される最終許可情報LPに基づいて上記の判定を行う。ステップS23は、
図4のステップS7と同様である。
【0107】
例えば、ステップS23において、判定部31は、
図13(B)に示す例の場合、通過許可要求を送信した走行車V7の進行方向(D2方向)が最終許可走行車の進行方向(D2方向)と一致すると判定する(ステップS23のYES)。
【0108】
ステップS23において、判定部31が、通過許可要求を送信した走行車Vの進行方向が最終許可走行車の進行方向と一致すると判定した場合(ステップS23のYES)、判定部31は、受信した通過許可要求に対して、許可すると判定して(ステップS3)、通過許可を送信し(ステップS4)、通過許可判定は終了する。例えば、判定部31は、
図13(B)の例では、走行車V7の通過許可要求を許可すると判定して、走行車V7に通過許可を送信し、通過許可判定は終了する。この場合、走行車V5、V7に重複して、ブロッキングエリアBA3の通過許可を与える状態(連続許可)とすることができる。これにより、走行車システム1は、複数の走行車V5、V7を効率よくブロッキングエリアBA1を通過させるように制御することができる。
【0109】
上述の説明のように、本実施形態の走行車システム1は、ブロッキングエリアBAが合流部7を有する場合において、判定部31は、そのブロッキングエリアBAを通過中であって通過許可を解除していない走行車Vがいるときには、そのブロッキングエリアBAに対して通過許可要求を送信した走行車Vに対して、その走行車Vにおける前方走行車と、そのブロッキングエリアBAにおける最終許可走行車とが一致し、かつその最終許可走行車が合流部7に進入する方向が一致すれば、通過許可を与える。本実施形態の走行車システム1では、判定部31は、ブロッキングエリアBAの最終許可走行車が第1記憶部に記憶されている場合、その最終許可走行車と、そのブロッキングエリアBAの通過許可待ち走行車の前方走行車とが一致し、かつブロッキングエリアBAの通過許可待ち走行車の進行方向が最終許可走行車と一致すれば、通過許可待ち走行車にブロッキングエリアBAの通過許可を与える。この通過許可の送信の可否の判定条件は、上記した分岐部6のブロッキングエリアBAの場合と同様である。判定部31が上記の条件で通過許可要求を許可すると判定する場合、通過許可と判定した走行車Vの直前に通過許可を与えていない走行車Vが存在せず、且つ、通過許可と判定した走行車Vの直前にその走行車Vと同一方向に走行する通過許可中の走行車Vが存在するように走行車Vを制御することができる。また、判定部31が上記の条件で通過許可要求を許可すると判定する場合、上記した連続許可を行うことができる。以上のように、上記の走行車システム1の構成によれば、分岐部6及び合流部7のブロッキング制御において、簡易な処理により、複数の走行車Vに対して重複してブロッキングエリアBAの通過許可を与える制御を実現することができ、その結果、複数の走行車Vを効率よくブロッキングエリアを通過させるように制御することができる。なお、走行車システム1は、合流部7のブロッキング制御においても、上記した分岐部6のブロッキング制御と同様に、2台以上の走行車Vに対して上記した連続許可を行うことができる。
【0110】
次に、合流部7のブロッキング制御に関する前方走行車情報34の更新について説明する。
図14は、合流部7のブロッキング制御に関する前方走行車情報の更新の一例を示すフローチャートである。前方走行車情報更新部40は、
図14のステップS4における判定部31による通過許可の送信のタイミングで、通過許可を送信した走行車Vに関する前方走行車情報34を更新する。前方走行車情報更新部40が上記のタイミングで、前方走行車情報34を更新することにより、前方走行車情報34のリアルタイム性を確保することができる。
【0111】
前方走行車情報更新部40は、
図14のステップS10において、ブロッキングエリアBAにおいて通過許可中の走行車Vが存在するか否かを判定する。
図14のステップS10は、
図9のステップS10と同様である。
【0112】
前方走行車情報更新部40が、ステップS10において、ブロッキングエリアBAにおいて通過許可中の走行車Vが存在すると判定した場合(ステップS10のYES)、ステップS31において、通過許可を送信した走行車Vに関する前方走行車情報34(前方走行車)を、最終許可走行車に設定して更新する。すなわち、前方走行車情報更新部40は、ブロッキングエリアBAの通過許可を送信した走行車Vの前方走行車について、そのブロッキングエリアBAを通過中であって通過許可を解除していない走行車Vがいるときには、最終許可走行車を前方走行車に更新する。これにより、複数の走行車Vに対して重複してブロッキングエリアBAの通過許可を与える制御を確実に実施することができる。
【0113】
例えば、前方走行車情報更新部40は、
図13(B)に示す例の場合、ステップS31において、通過許可を送信した走行車V7に関する前方走行車情報34(前方走行車)を、最終許可走行車(走行車V5)に設定して更新する。
【0114】
前方走行車情報更新部40が、ステップS10において、ブロッキングエリアBAの通過許可要求を送信した走行車V以外の走行車Vにおいて、通過許可を得て、且つ通過許可解除前の走行車Vが存在しないと判定した場合(ステップS10のNO)、ステップS32において、通過許可を送信した走行車Vに関する前方走行車情報34(前方走行車)を、対象のブロッキングエリアBAを通過した最終解除走行車に設定して更新する。すなわち、前方走行車情報更新部40は、ブロッキングエリアBAの通過許可を送信した走行車の前方走行車について、そのブロッキングエリアBAが合流部7を有しかつ通過中の走行車Vがいないときには、最終解除走行車を前方走行車に更新する。これにより、ブロッキング制御を簡易な処理により確実に実施することができる。
【0115】
例えば、前方走行車情報更新部40は、
図12(B)に示す例の場合、ステップS32において、通過許可を送信した走行車V7に関する前方走行車情報34(前方走行車)を、対象のブロッキングエリアBAを通過した最終解除走行車(走行車V5)に設定して更新する。
【0116】
上述のように、前方走行車情報更新部40が、上述の
図14に示すフローにより前方走行車情報34を更新する場合、通過許可を送信した走行車Vに関する前方走行車を簡易な処理で確実に設定できる。これにより、走行車システム1は、ブロッキング制御を簡易な処理により確実に実施することができる。
【0117】
以上の説明のように、本実施形態の走行車システム1は、コントローラ4と、分岐部6又は合流部7を含むブロッキングエリアBAを一部に有する軌道2を走行し、ブロッキングエリアBAの通過許可要求をコントローラ4に送信して、通過許可をコントローラ4から受信した場合にはブロッキングエリアBAを通過するが、受信しない場合にはブロッキングエリアの前で停止する複数の走行車Vと、を備え、コントローラ4は、通過許可を送信した走行車VがブロッキングエリアBAを通過した後にその走行車Vの通過許可を解除する、走行車システムであって、コントローラ4は、ブロッキングエリアBAに含まれる分岐部6又は合流部7における方向毎に、通過許可を最後に送信し且つその通過許可が未解除である最終許可走行車を記憶する第1記憶部と、ブロッキングエリアBAに含まれる分岐部6又は合流部7における方向毎に、通過許可を最後に解除した最終解除走行車を記憶する第2記憶部と、ブロッキングエリアBAの通過許可待ち走行車に通過許可を送信する際、そのブロッキングエリアBAにおいて同一方向の通過許可を最後に送信した走行車Vを、通過許可待ち走行車の前方走行車として記憶する第3記憶部と、ブロッキングエリアBAの通過許可待ち走行車の前方走行車と、そのブロッキングエリアBAにおける最終許可走行車又は最終解除走行車とが一致するか否かにより、通過許可待ち走行車に対して通過許可を与えるか否かを判定する判定部31と、を備える。例えば、走行車システム1は、コントローラ4と、分岐部6又は合流部7を含むブロッキングエリアBAを一部に有する軌道2を走行し、ブロッキングエリアBAの通過許可要求をコントローラ4に送信して、通過許可要求に対する通過許可をコントローラ4から受信した場合にはブロッキングエリアBAを通過するが、受信しない場合にはブロッキングエリアBAの前で停止する複数の走行車Vと、を備え、コントローラ4は通過許可を与えた走行車VがブロッキングエリアBAを通過した際にその通過許可を解除する、走行車システムであって、コントローラ4は、走行車Vの前方走行車に関する前方走行車情報34、ブロッキングエリアBAにおいて最後に通過許可が与えられた最終許可走行車に関する最終許可情報LP、ブロッキングエリアBAを最後に通過して通過許可が解除された最終解除走行車に関する最終解除情報L、及び、分岐部6又は合流部7を所定方向に最後に通過して通過許可が解除された方向別最終解除走行車に関する方向別最終解除情報L1、L2を記憶する記憶部30と、走行車Vから通過許可要求を受信した際、その走行車Vの前方走行車情報と、その走行車Vが通過しようとするブロッキングエリアBAの最終許可情報、最終解除情報、及び方向別最終解除情報のいずれかとを記憶部30から読み出して、その走行車Vにおける前方走行車と、そのブロッキングエリアBAにおける最終許可走行車、最終解除走行車、及び方向別最終解除走行車のいずれかとが一致するか否かにより、その走行車Vに対する通過許可を与えるか否かを判定する判定部31と、を備える。なお、本実施形態の走行車システム1において、上記以外の構成は任意の構成であり、上記以外の構成はあってもよいし、なくてもよい。このように、本実施形態の走行車システム1は、ブロッキングエリアBAの通過許可待ち走行車の前方走行車と、そのブロッキングエリアBAにおける最終許可走行車又は最終解除走行車とが一致するか否かにより、通過許可待ち走行車に対して通過許可を与えるか否かを判定するので、上記した走行車Vの走行経路の探索のような時間を要する処理を用いる必要がなく、走行車VからブロッキングエリアBAの通過許可要求を受信してから、通過許可判定を完了するまでの処理に要する時間を短縮することができる。これにより、走行車システム1は、ブロッキング制御のリアルタイム性を確保することができる。なお、走行車システム1のコントローラ4は、走行車システム1と独立して流通させることができる。走行車システム1及びコントローラ4は、例えば、既存の走行車システムにおいて、上位コントローラを変更することなく、コントローラのみを変更することにより実施できるので、簡易且つ低コストで導入することができる。
【0118】
次に、本実施形態の走行車の制御方法について説明する。本実施形態の走行車の制御方法は、コントローラ4と、分岐部6又は合流部7を含むブロッキングエリアBAを一部に有する軌道2を走行し、ブロッキングエリアBAの通過許可要求をコントローラ4に送信して、通過許可要求に対する通過許可をコントローラ4から受信した場合にはブロッキングエリアBAを通過するが、受信しない場合にはブロッキングエリアBAの前で停止する複数の走行車Vと、を備え、コントローラ4は通過許可を送信した走行車VがブロッキングエリアBAを通過した後にその通過許可を解除する、走行車システム1において走行車Vを制御する方法である。本実施形態の走行車の制御方法は、コントローラ4が、ブロッキングエリアBAに含まれる分岐部6又は合流部7における方向毎に、通過許可を最後に送信し且つその通過許可が未解除である最終許可走行車を記憶することと、ブロッキングエリアBAに含まれる分岐部6又は合流部7における方向毎に、通過許可を最後に解除した最終解除走行車を記憶することと、ブロッキングエリアBAの通過許可待ち走行車に通過許可を送信する際、そのブロッキングエリアBAにおいて同一方向の通過許可を最後に送信した走行車Vを、その通過許可待ち走行車Vの前方走行車として記憶することと、ブロッキングエリアBAの通過許可待ち走行車の前方走行車と、そのブロッキングエリアBAにおける最終許可走行車又は最終解除走行車とが一致するか否かにより、通過許可待ち走行車に対して通過許可を与えるか否かを判定することと、を行う処理を含む、走行車の制御方法である。本実施形態の走行車の制御方法は、例えば上述の走行車システム1により実施することができる。なお、本実施形態の走行車の制御方法は、上記の構成に限定されず、上述の走行車システム1の部分で説明した構成を含んでもよい。また、本実施形態の制御方法は、上記の制御方法をコンピュータ装置に実行させるプログラム、あるいはそのプログラムが記憶(記録)される記憶媒体により供給されてもよい。
【0119】
以上説明したように、本実施形態の走行車システム1及び走行車の制御方法は、上記した走行車の走行経路の探索のような時間を要する処理を用いる必要がなく、ブロッキングエリアBAの通過許可待ち走行車の前方走行車と、そのブロッキングエリアBAにおける最終許可走行車又は最終解除走行車とを読み出し、それらが一致するか否かを判定するといった簡単な処理により通過許可判定を行うことができるため、コントローラ4が走行車VからブロッキングエリアBAの通過許可要求を受信してから、通過許可判定を完了するまでの処理に要する時間を短縮することができ、ブロッキング制御のリアルタイム性を確保することができる。また、本発明に係る走行車システム及び走行車の制御方法は、2つのブロッキングエリアBAの間において走行車Vの並び順が変わらないという法則を利用することにより、各走行車Vの前方を走行する前方走行車の情報に基づいて、ブロッキングエリアBAに進入する走行車の順番を簡易な処理で求めることができる。また、本実施形態の走行車システム1のように、前方走行車情報34によりブロッキングエリアBAに進入する走行車Vの順番を求める構成では、コントローラ4と走行車Vとの間の通信状態の悪化などにより走行車Vの位置の順番の逆転が生じた場合においても、ブロッキングエリアBAに進入する走行車Vの順番を誤りなく管理することができる。
【0120】
以上、本発明の実施形態について説明したが、本発明の技術的範囲は、上記した実施形態に限定されない。上記した実施形態に、多様な変更又は改良を加えることが可能であることは当業者において明らかである。また、そのような変更又は改良を加えた形態も本発明の技術的範囲に含まれる。また、上記した実施形態などで説明した要件の1つ以上は、省略されることがある。また、上記した実施形態などで説明した要件は、適宜組み合わせることができる。また、法令で許容される限りにおいて、上述の実施形態などで引用した全ての文献の開示を援用して本文の記載の一部とする。また、本実施形態において示した各処理の実行順序は、前の処理の出力を後の処理で用いるものでない限り、任意の順序で実現可能である。また、上記した実施形態における動作に関して、便宜上「まず」、「次に」、「続いて」等を用いて説明したとしても、この順序で実施することが必須ではない。