(57)【要約】【課題】分散型連動処理システム内の装置／端末毎に適用されているプログラムのバージョンを管理し、機能を損うようなバージョンの組合せで該システムを動作させないこと。【解決手段】本発明は、分散型連動処理システムの各装置２２，２６／端末２４，２８，３２で動作するプログラムのバージョンを管理する管理方法であって、複数の装置２２，２６／端末２４，２８，３２によってなされる連動処理の処理モード毎に、各装置２２，２６／端末２４，２８，３２毎に動作許可されたプログラムのバージョンを定義したバージョン管理テーブルを予め備え、何れかの装置２２，２６／端末２４，２８，３２によって何れかの処理モードによる連動処理開始要求がなされた場合には、処理モードに対応するバージョン管理テーブルの内容と、動作中のプログラムのバージョンとに矛盾がない装置２２，２６／端末２４，２８，３２に対してのみ連動処理を許可するようにする。【選択図】    図１３
2004234202.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワークを介して互いに接続された複数の装置によって構成された分散型連動処理システムの前記各装置で動作するプログラムのバージョンを管理する管理方法であって、
前記複数の装置によってなされる連動処理の処理モード毎に、前記各装置毎に動作が許可されているプログラムのバージョンを定義したバージョン管理テーブルを予め備えておき、前記各装置のうちの何れかの装置によって何れかの処理モードによる連動処理の開始要求がなされた場合には、当該処理モードに対応するバージョン管理テーブルの内容と、動作しているプログラムのバージョンとに矛盾がない装置に対しては、当該処理モードによる連動処理を許可し、矛盾がある装置に対しては、当該処理モードによる連動処理をさせないようにした分散型連動処理システムのプログラムバージョン管理方法。
【請求項２】
通信ネットワークを介して互いに接続された複数の装置によって構成された分散型連動処理システムの前記各装置で動作するプログラムのバージョンを管理する管理方法であって、
前記複数の装置によってなされる連動処理の処理モード毎に、前記各装置毎に動作が許可されているプログラムのバージョンを定義したバージョン管理テーブルを予め備えておき、現行の処理モードを別の処理モードに切り換えて前記連動処理を行う場合には、前記別の処理モードに対応するバージョン管理テーブルで定義されているバージョンと、前記現行の処理モードに対応するバージョン管理テーブルで定義されているバージョンとが異なる装置についてのみ、前記現行の処理モードにおいて許可されているプログラムのバージョンを、前記別の処理モードにおいて許可されているプログラムのバージョンに切り換えるようにした分散型連動処理システムのプログラムバージョン管理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば大駅や中駅における列車の運行管理に適用されている分散型連動処理システムのプログラムバージョン管理方法に関するものである。
【０００２】
【従来の技術】
多くの乗客が利用したり、あるいは構内が広い大駅や中駅における列車の運行管理には、図１３にその構成概念を示すような分散型の連動処理システムが広く用いられている。
【０００３】
すなわち、この種の分散型連動処理システムは、大駅や中駅に設けられるために、図１３にその一例を示すように、駅構内の別々の場所に設けられ、互いが光ケーブル等によるイーサネット（登録商標）１８とハブ２０とを用いることによって接続された主機器室１０、複数の副機器室１２、駅事務室１４、および現場機器室１６に、必要な端末や処理装置が備えられ、全体として連動した処理がなされるように構成されている。
【０００４】
副機器室１２（＃１）には、踏切制御を行う踏切処理装置２２（＃１）、および分散型連動処理システムによってなされている制御状態をモニタするための保守端末２４（＃１）がそれぞれハブ２０（＃１）に接続されている。踏切処理装置２２（＃１）には、現場用機器端末（以下、「ＦＢ（ｆｉｅｌｄ  ｂｏｘ）端末」と称する）２８（＃１〜＃４）が制御用ＬＡＮ２９を経由して接続されており、このＦＢ端末２８によって、Ｉ／Ｏ部３０に接続された踏切警報器や踏切遮断器といった現場機器の制御が行われる。
【０００５】
副機器室１２（＃２）もまた副機器室１２（＃１）と同様に構成されている。
【０００６】
主機器室１０には、踏切制御を行う踏切処理装置２２（＃２）、および分散型連動処理システムによってなされている制御状態をモニタしたり、あるいは新しいバーションのソフトウェアを各装置や各端末にインストールしたりするための保守端末２４（＃２）、および分散型連動処理システムのシステム全体の処理を司る連動処理装置２６がそれぞれハブ２０（＃２）に接続されている。
【０００７】
更に踏切処理装置２２（＃２）は、踏切処理装置２２（＃１）および連動処理装置２６と制御用ＬＡＮ２９を経由して接続されている。また連動処理装置２６は、ＦＢ端末２８（＃１〜＃４）が制御用ＬＡＮ２９を経由して接続されており、このＦＢ端末２８によって、Ｉ／Ｏ部３０に接続された転てつ器、軌道回路、信号機といった現場機器の制御が行われる。
【０００８】
現場機器室１６には、制御用ＬＡＮ２９経由で連動処理装置２６と、踏切制御装置２２に接続され転てつ器、軌道回路、信号機といった現場機器の制御を行うＩ／Ｏ部３０（＃４）とが設けられている。
【０００９】
また、駅事務室１４には、連動端末３２が備えられており、上述したような構成の分散型連動処理システムによってなされている連動処理の状態がモニタされる。
【００１０】
図１３では、５台の連動端末３２（＃１〜＃５）を備えた例を示しているが、連動端末３２の台数は、５台に限るものではなく、駅毎に予め指定することができる。指定された台数以上の連動端末３２が接続されようとした場合には、連動処理装置２６が、その指定台数を超えた連動端末３２に対して、「接続不可」の応答を返すことによって、この接続を受け付けない。また、複数の連動端末３２から連動処理装置２６に対して同時に接続要求があった場合には、連動処理装置２６は、先に到達した連動端末３２からの「接続要求」を有効として、この連動端末３２に対して「接続許可」応答を送る。接続許容台数を越えて、連動端末３２から接続要求があった場合、連動処理装置２６は、この連動端末３２に対して「接続不可」の応答を送り、この接続を受け付けない。
【００１１】
同様に、保守端末２４についても、図１３では、３台の保守端末２４（＃１〜＃３）を備えた例を示しているが、保守端末２４の台数は、３台に限るものではなく、駅毎に予め指定することができる。指定された台数以上の保守端末２４が接続されようとした場合には、連動処理装置２６または踏切処理装置２２が、その指定台数を超えた保守端末２４に対して、「接続不可」の応答を返すことによって、この接続を受け付けない等接続方法については、上述した連動端末３２の場合と同一である。なお、保守端末２４は、１台をマスタ端末（図１３の場合、保守端末２４（＃２））とし、残り２台（図１３の場合、保守端末２４（＃１，＃３））はスレーブ端末として扱う。スレーブ端末は、連動処理装置２６および踏切処理装置２２からのジャーナルデータの送信管理対象とならず、機能的には操作範囲が限定され、対応する踏切のみについて操作を行うことができる。
【００１２】
上述したような分散型連動処理システムでは、連動論理制御、構内踏切制御が独立して実行され、連動処理装置２６の故障時または停止時も、踏切処理装置２２による踏切制御は継続される。
【００１３】
上述したように、主機器室１０、副機器室１２（＃１，＃２）、駅事務室１４、および現場機器室１６のみならず、各ハウスに備えられた装置や端末をそれぞれネットワークにより結合し、分散処理にて連動処理を行っているような分散型連動処理システムの場合、システムの改修や増設に伴って発生する各装置や各端末の制御ソフトウェアのバージョン（世代）を正しく管理し、異なるバージョンの制御ソフトウェアがインストールされた装置や端末がシステム内で動作しないように管理する必要がある。
【００１４】
なぜなら、列車の運行管理を行っている安全上重要なシステムが、バージョンの違いにより、非安全側の処理が万が一なされるようなことがあると、事故を招く恐れがあるからである。
【００１５】
このため、各装置や各端末では、実運用している制御ソフトウェア（以下、「現行面ソフトウェア」ともいう）と、システムの改修や増設後に使用する試験用ソフトウェア（以下、「改正面ソフトウェア」ともいう）とを、それぞれ別のメモリ（「Ａ面メモリ」と「Ｂ面メモリ」）で管理している。
【００１６】
そして、現行面ソフトウェアでの動作時には、現行バージョンによる制御ソフトウェアで全ての装置および端末が動作していることを確認している。また、新しいバージョンの制御ソフトウェアを導入する場合には、まず試験用ソフトウェアが問題なく動作することを確認し、しかる後に現行面ソフトウェアから改正面ソフトウェアへの切換を実施し、更に改正面ソフトウェアにおいて同一バージョンが動作していることを確認することによって、異なるバージョンの制御ソフトウェアが同時に実行されないような対策が講じられている。
【００１７】
【発明が解決しようとする課題】
しかしながら、このような従来の分散型連動処理システムのプログラムバージョン管理方法では、以下のような問題がある。
【００１８】
すなわち、近年、分散型連動処理システムの高機能化、大規模化に伴い、ネットワーク上に異なる機能を有する装置や端末も接続されるようになってきている。このような状況の下では、全ての装置および端末で利用されている制御プログラムのバージョンを常に統一するような運用は、現実的に非常に困難になってきている。部分的な装置や端末の制御プログラムの改修や増設時にあわせて、改修や増設を要しない装置や端末についても、制御プログラムのバージョンを一致させるようなことは極めて不合理でもあるからである。
【００１９】
このため、装置や端末の改修や増設を要する場合には、関連する装置や端末のみを対象として改正面ソフトウェアを用いた動作試験を行い、その結果、問題なく動作することを確認した場合には、この改正面ソフトウェアが、新たな現行面ソフトウェアとして使用されるように、制御ソフトウェアを自動的に切り換えるような機能が期待されている。
【００２０】
本発明はこのような事情に鑑みてなされたものであり、分散型連動処理システム内の装置や端末毎に適用されているプログラムのバージョンを管理し、かつ全体としての機能を損うようなバージョンの組み合せで分散型連動処理システムが動作することのない分散型連動処理システムのプログラムバージョン管理方法を提供することを目的とする。
【００２１】
【課題を解決するための手段】
上記の目的を達成するために、本発明では、以下のような手段を講じる。
【００２２】
すなわち、請求項１の発明は、通信ネットワークを介して互いに接続された複数の装置によって構成された分散型連動処理システムの各装置で動作するプログラムのバージョンを管理する管理方法であって、複数の装置によってなされる連動処理の処理モード毎に、各装置毎に動作が許可されているプログラムのバージョンを定義したバージョン管理テーブルを予め備えておき、各装置のうちの何れかの装置によって何れかの処理モードによる連動処理の開始要求がなされた場合には、当該処理モードに対応するバージョン管理テーブルの内容と、動作しているプログラムのバージョンとに矛盾がない装置に対しては、当該処理モードによる連動処理を許可し、矛盾がある装置に対しては、当該処理モードによる連動処理をさせないようにする。
【００２３】
従って、請求項１の発明の分散型連動処理システムのプログラムバージョン管理方法においては、以上のような手段を講じることにより、機能を損うようなバージョンの組み合せで分散型連動処理システムが動作しないようにすることができる。
【００２４】
請求項２の発明は、通信ネットワークを介して互いに接続された複数の装置によって構成された分散型連動処理システムの各装置で動作するプログラムのバージョンを管理する管理方法であって、複数の装置によってなされる連動処理の処理モード毎に、各装置毎に動作が許可されているプログラムのバージョンを定義したバージョン管理テーブルを予め備えておき、現行の処理モードを別の処理モードに切り換えて連動処理を行う場合には、別の処理モードに対応するバージョン管理テーブルで定義されているバージョンと、現行の処理モードに対応するバージョン管理テーブルで定義されているバージョンとが異なる装置についてのみ、現行の処理モードにおいて許可されているプログラムのバージョンを、別の処理モードにおいて許可されているプログラムのバージョンに切り換える。
【００２５】
従って、請求項２の発明の分散型連動処理システムのプログラムバージョン管理方法においては、以上のような手段を講じることにより、必要最低限のバージョン変更のみを行うことによって、全体としての機能を損うことなく分散型連動処理システムを動作させることができる。
【００２６】
【発明の実施の形態】
以下に、本発明の実施の形態について図面を参照しながら説明する。
【００２７】
なお、以下の実施の形態の説明に用いる図中の符号は、図１３と同一部分については同一符号を付して示すことにする。
【００２８】
本発明の実施の形態を図１から図１２を用いて説明する。
【００２９】
図１は、本発明の実施の形態に係る分散型連動処理システムのプログラムバージョン管理方法を説明するための図であって、装置と端末との接続関係と、バージョン管理をする装置や端末の関係を示す図である。
【００３０】
本発明の実施の形態に係る分散型連動処理システムのプログラムバージョン管理方法は、例えば図１３にその一例を示すような構成の分散型連動処理システムに適用されるものであって、図１に示すように、連動処理装置２６、踏切処理装置２２、およびＦＢ端末２８が、それぞれ自己に接続されている装置および端末に適用されている制御ソフトウェアと、自己に適用されている制御ソフトウェアとのバージョンをチェックする。
【００３１】
すなわち、連動処理装置２６は、連動端末３２、保守端末２４、踏切処理装置２２、およびＦＢ端末２８と接続可能な構成としている。これら接続可能な装置または端末から接続要求を受けた場合には、接続要求元の装置および端末から、適用されている制御ソフトウェアのバージョン情報が送信されるようにしている。連動処理装置２６は、接続要求元の装置または端末からバージョン情報が送信されると、送信されたバージョン情報と、自己に適用されている制御ソフトウェアのバージョン情報との整合性をチェックする。なお、バージョン情報の具体的な整合性チェック方法については、図２を用いて後で説明する。そして、整合性が取れた装置または端末については、正常機器と認識して接続を許可する一方、整合性が取れない装置または端末については、接続要求を拒否する。
【００３２】
同様に、踏切処理装置２２も、踏切処理装置２２と接続可能な連動端末３２、保守端末２４、連動処理装置２６、ＦＢ端末２８から接続要求を受けた場合には、接続要求元の装置および端末から、適用されている制御ソフトウェアのバージョン情報が送信されるようにしている。そして、連動処理装置２６と同様な方法で、送信されたバージョン情報と、自己に適用されている制御ソフトウェアのバージョン情報との整合性をチェックし、整合性が取れた装置または端末については、正常機器と認識して接続を許可する一方、整合性が取れない装置または端末については、接続要求を拒否する。
【００３３】
同様に、ＦＢ端末２８も、ＦＢ端末２８と接続可能な連動処理装置２６や踏切処理装置２２から接続要求を受けた場合には、接続要求元の装置から適用されている制御ソフトウェアのバージョン情報が送信されるようにしている。そして、連動処理装置２６と同様な方法で、送信されたバージョン情報と、自己に適用されている制御ソフトウェアのバージョン情報との整合性をチェックし、整合性が取れた装置については、正常機器と認識して接続を許可する一方、整合性が取れない装置については、接続要求を拒否する。
【００３４】
次に、図２を用いて、連動処理装置２６、踏切処理装置２２、およびＦＢ端末２８がおこなうバージョン情報の整合性チェック方法について説明する。
【００３５】
すなわち、連動処理装置２６に適用されている制御ソフトウェアでは、図２に示すように、ａ）駅コードと、ｂ）プログラムのバージョンと、ｃ）データコードと、ｄ）定数コードとによってバージョン情報を構成している。それに対して、連動端末３２および保守端末２４では、上記ａ）〜ｄ）に加えて、ｅ）端末のプログラムコードと、ｆ）端末の駅データコードとによってそのバージョン情報を構成している。
【００３６】
ａ）駅コードとは、分散型連動処理システムが設置されている駅を特定するものであって、図２に示す例では、駅名をａ）駅コードとしている。
ｂ）プログラムのバージョンとは、プログラムを特定するものである。
ｃ）データコードとは、駅の設備条件を特徴付けるデータであって、例えば、進路数や、信号機、転てつ器等の数を示している。したがって、このｃ）データコードは、ａ）駅コード毎に存在するものである。
ｄ）定数コードとは、分散型連動処理システムを定義している環境定数であって、装置数や端末数を示している。
ｅ）端末のプログラムコードは、端末が備えているアプリケーションプログラムを定義しているものである。
ｆ）端末の駅データコードは、端末から画面表示するために必要なＧＵＩ用データを定義しているものである。
連動処理装置２６、踏切処理装置２２、およびＦＢ端末２８がバージョン情報の整合性チェックを行う場合には、接続要求元から送信されてくる上述したような構成のバージョン情報のうち、ａ）駅コードと、ｂ）プログラムのバージョンと、ｃ）データコードと、ｄ）定数コードとが一致した場合には、整合性が取れたものとし対応する装置や端末を正常機器と認識して接続を許可する一方、整合性が取れない装置や端末については、更に、以下に示すような許容バージョンチェックを行う。
【００３７】
すなわち、新しいバージョンの制御用ソフトウェアの試験を行う場合など、バージョン情報の整合性がとれない場合であっても、試験運用のために、装置毎あるいは端末毎に異なるバージョンの制御用ソフトウェアを混在した状態で動作させなくてはならない場合がある。このようなときのために、連動処理装置２６、踏切処理装置２２、およびＦＢ端末２８は、バージョン情報の整合性がとれなくても同時動作が許容されるバージョンの組み合わせを予め定義しておき、定義した内容に基づいたバージョン管理テーブルを作成し、保持する。
【００３８】
そして、試験運用等の場合には、たとえバージョン情報の整合性がとれない場合であっても、このバージョン管理テーブルで許容されたバージョンの組み合わせに矛盾しない場合には、分散型連動処理システムを動作可能な状態とする。このような処理を、許容バージョンチェックと称している。
【００３９】
例えば、図３は、連動処理装置２６と、踏切処理装置２２と、ＦＢ端末２８（＃１）と、ＦＢ端末２８（＃２）とでｂ）プログラムのバージョンが異なる場合であっても、動作が許容される組み合わせパターンを示す一例である。
【００４０】
図３には、ケース１からケース８までの８ケースを例に示している。ケース１は、連動処理装置２６、踏切処理装置２２、ＦＢ端末２８（＃１）、ＦＢ端末２８（＃２）ともにｂ）プログラムのバージョンが０１．００である。なお、連動処理装置２６、踏切処理装置２２、ＦＢ端末２８（＃１）、ＦＢ端末２８（＃２）は各々２つのプログラムメモリである「Ａ面メモリ」と「Ｂ面メモリ」とを備え、各々のメモリに別のバージョンのプログラムを格納することができるようにしている。ケース１における“０１．００（Ａ）”は、Ａ面メモリにバージョン０１．００のプログラムを格納していることを示している。
【００４１】
ケース２は、ケース１から、ＦＢ端末２８（＃１）のみ、プログラムのバージョンを０１．００から０１．０１に変更した状態を示している。この場合、ＦＢ端末２８（＃１）は、Ａ面メモリにバージョン０１．００のプログラムを格納したまま、Ｂ面メモリにバージョン０１．０１のプログラムを格納していることを示している。
【００４２】
ケース３は、ケース２から、ＦＢ端末２８（＃１）のみ、プログラムのバージョンを０１．０１から０１．０２に変更した状態を示している。この場合、ＦＢ端末２８（＃１）は、Ｂ面メモリにバージョン０１．０１のプログラムを格納したまま、Ａ面メモリを更新してバージョン０１．０２のプログラムを格納していることを示している。
【００４３】
ケース４は、ケース３から、連動処理装置２６のプログラムのバージョンを０１．００から０１．０１に変更した状態を示している。この場合、連動処理装置２６は、Ａ面メモリにバージョン０１．００のプログラムを格納したまま、Ｂ面メモリにバージョン０１．０１のプログラムを格納していることを示している。
【００４４】
ケース５は、ケース４から、連動処理装置２６のプログラムのバージョンを０１．０１から０１．０２に変更した状態を示している。この場合、連動処理装置２６は、Ｂ面メモリにバージョン０１．０１のプログラムを格納したまま、Ａ面メモリを更新してバージョン０１．０２のプログラムを格納していることを示している。
【００４５】
ケース６は、ケース５から、連動処理装置２６のプログラムのバージョンを０１．０２から０１．０３に、ＦＢ端末２８（＃２）のプログラムのバージョンを０１．００から０１．０１に変更した状態を示している。この場合、連動処理装置２６は、Ａ面メモリにバージョン０１．０２のプログラムを格納したまま、Ｂ面メモリを更新してバージョン０１．０３のプログラムを格納し、ＦＢ端末２８（＃２）は、Ａ面メモリにバージョン０１．００のプログラムを格納したまま、Ｂ面メモリにバージョン０１．０１のプログラムを格納していることを示している。
【００４６】
ケース７は、ケース６から、踏切処理装置２２プログラムのバージョンを０１．００から０１．０１に、ＦＢ端末２８（＃２）のプログラムのバージョンを０１．０１から０１．０２に変更した状態を示している。この場合、踏切処理装置２２は、Ａ面メモリにバージョン０１．００のプログラムを格納したまま、Ｂ面メモリを更新してバージョン０１．０１のプログラムを格納し、ＦＢ端末２８（＃２）は、Ｂ面メモリにバージョン０１．０１のプログラムを格納したまま、Ａ面メモリを更新してバージョン０１．０２のプログラムを格納していることを示している。
【００４７】
ケース８は、ケース７から、連動処理装置２６のプログラムのバージョンを０１．０３から０１．０４に、ＦＢ端末２８（＃１）のプログラムのバージョンを０１．０２から０１．０３に変更した状態を示している。この場合、連動処理装置２６は、Ｂ面メモリにバージョン０１．０３のプログラムを格納したまま、Ａ面メモリを更新してバージョン０１．０４のプログラムを格納し、ＦＢ端末２８（＃１）は、Ａ面メモリにバージョン０１．０２のプログラムを格納したまま、Ｂ面メモリを更新してバージョン０１．０３のプログラムを格納していることを示している。
【００４８】
したがって、バージョン管理テーブルは、各ケースの移行時（例えば、ケース１からケース２への移行時、ケース２からケース３への移行時等）の移行前および移行後毎に定義を要するものである。つまり、ケース１からケース２へと移行する場合には、まず試験運用としてケース２に示すようなバージョンでの動作を許可する。そして、ケース２の試験運用の結果、ケース１と同じ処理結果が得られた場合には、ケース２に示すようなバージョンで動作するように切り換える。同様に、ケース２からケース３へと移行する場合には、試験運用としてケース３に示すようなバージョンでの動作を許可し、ケース３の試験運用の結果、ケース２と同じ処理結果が得られた場合には、ケース３に示すバージョンで動作するように切り換える。
【００４９】
図４（ａ）に、ケース３からケース４への移行時における移行前（試験運用時）のバージョン管理テーブルを、図４（ｂ）に、ケース３からケース４への移行後（切換後）のバージョン管理テーブルをそれぞれ示す。
【００５０】
すなわち、ケース３からケース４への試験運用時には、図４（ａ）に示すように、現行面ソフトウェア（旧バージョン）がケース３、改正面ソフトウェア（新バージョン）がケース４である。この場合における各装置および各端末のメモリに格納されているプログラムのバージョンを図５（ａ）に示す。ケース３からケース４に移行する場合、連動処理装置２６のプログラムのバージョンが０１．００から０１．０１に変更になる。それに伴って、連動処理装置２６のＢ面メモリにバージョン０１．０１のプログラムが格納され、試験運用時には、このＢ面メモリに格納されたバージョン０１．０１おプログラムを用いるようにする。なお、連動処理装置２６のＡ面メモリにはバージョン０１．００のプログラムを引き続き格納している。踏切処理装置２２およびＦＢ端末２８（＃２）のＢ面メモリは使用されていないので空欄である。
【００５１】
ケース４の試験運用の結果、ケース３と同じ処理結果が得られた場合には、図４（ｂ）に示すように、ケース４に示すバージョンで動作するように、ケース４を現行面バージョン、ケース３を改正面バージョンと置き換える。なお、試験前のケース３の状態に戻す場合には、図５（ｂ）に示すように、連動処理装置２６のＡ面メモリに格納されているバージョン０１．０１のプログラムを用いるようにすればよい。
【００５２】
同様に、図６に、ケース４からケース５の移行時における移行前（試験運用時）のバージョン管理テーブルを、図７に、この場合における各装置および各端末のメモリに格納されているプログラムのバージョンを示す。
【００５３】
図８に、ケース６からケース７の移行時における移行後（切換後）のバージョン管理テーブルを、図９に、この場合における各装置および各端末のメモリに格納されているプログラムのバージョンを示す。
【００５４】
同様に、図１０（ａ）に、ケース７からケース８の移行時における移行前（試験運用時）のバージョン管理テーブルを、図１０（ｂ）に、ケース７からケース８の移行時における移行後（切換後）のバージョン管理テーブルを、図１１（ａ）に、ケース７からケース８の移行時における移行前（試験運用時）における各装置および各端末のメモリに格納されているプログラムのバージョンを、図１１（ｂ）に、ケース７からケース８の移行時における移行後（切換後）における各装置および各端末のメモリに格納されているプログラムのバージョンをそれぞれ示す。
【００５５】
次に、上述したような本発明の実施の形態に係る分散型連動処理システムのプログラムバージョン管理方法における処理の流れについて説明する。
【００５６】
連動処理装置２６、踏切処理装置２２、およびＦＢ端末２８は、図１を用いて説明したように、制御ソフトウェアを起動した場合に、プログラムのバージョンチェックを相互に行うために、各々にバージョン管理テーブルが備えられている。バージョン管理テーブルは、分散型連動処理システムのバージョンアップ時にプログラムと同時に作成されるもので、バージョンアップされたプログラムの実行モジュールとともに保守端末２４に格納されている。そして、バージョンアップされたプログラムが装置や端末にダウンロードされる場合に、同時に連動処理装置２６、踏切処理装置２２、およびＦＢ端末２８にローディングされ格納される。
【００５７】
このように、連動処理装置２６、踏切処理装置２２、およびＦＢ端末２８にバージョン管理テーブルが備えられると、連動処理装置２６、踏切処理装置２２、およびＦＢ端末２８では、端末や装置から接続要求があった場合、バージョン情報の整合性のチェック、あるいはバージョン情報が一致していない場合には、更にバージョン管理テーブルによるチェックがなされる。
【００５８】
まず、連動端末３２や保守端末２４が連動処理装置２６や踏切処理装置２２に接続要求した場合の処理の流れについて説明する。
【００５９】
連動端末３２や保守端末２４が連動処理装置２６や踏切処理装置２２の接続要求した場合には、接続要求元の端末から、接続要求先の装置に対して、図２に示すようなバージョン情報が送信される。送信されたバージョン情報は、接続要求先の装置、すなわち連動処理装置２６、踏切処理装置２２のうちの何れかによって受信され、接続要求先の装置では、送信されたバージョン情報のうちａ）駅コード、ｂ）プログラムのバージョン、ｃ）データコード、ｄ）定数コードが、自己のバージョン情報のものと一致しているかが確認される。
【００６０】
そして、送信されたバージョン情報のａ）駅コード、ｂ）プログラムのバージョン、ｃ）データコード、ｄ）定数コードが、自己のバージョン情報のものと一致している場合には、接続要求元の端末からの接続要求が許可される。
【００６１】
一方、送信されたバージョン情報のうちｂ）プログラムのバージョンのみが、自己のバージョン情報のものと一致しない場合には、この送信されたバージョン情報のｂ）プログラムのバージョンが、バージョン管理テーブルで許容されているバージョンであるか否かが確認される。
【００６２】
そして、送信されたバージョン情報のｂ）プログラムのバージョンが、バージョン管理テーブルで許容されている場合には、接続要求元の端末からの接続要求が許可される。一方、そうでない場合には、この端末からの接続要求を拒否し、この端末からの要求は、プログラムやデータのダウンロードや、バージョン要求等を除き、受け付けないようにされる。
【００６３】
次に、連動処理装置２６、踏切処理装置２２、およびＦＢ端末２８の立ち上げ時における処理の流れについて図１２に示すフローチャートを用いて説明する。
【００６４】
連動処理装置２６、踏切処理装置２２、あるいはＦＢ端末２８の立ち上げ時に、自己以外に稼働中の装置（連動処理装置２６または踏切処理装置２２）が無い場合（Ｓ１：Ｎｏ）には、自己の起動モード（現行面モード／改正面モード）が現行面モード（基準モード）とされ（Ｓ２）、後から立ち上がる装置や端末の基準となる。自己以外に稼働中の他装置がある場合（Ｓ１：Ｙｅｓ）であって、その装置のモードが、自己のモードと同一である場合（Ｓ３：Ｙｅｓ）には、そのまま立ち上がる（Ｓ４）。
【００６５】
一方、その装置のモードが、自己のモードと同一ではない場合（Ｓ３：Ｎｏ）には、自己のモードが、稼働中の他装置のモードに変更され（Ｓ５）、再立ち上げがなされて、ステップＳ３の処理に戻る（Ｓ６）。
【００６６】
上述したステップＳ１〜ステップＳ６までの処理がなされることにより、必ず先行装置にモードを合わせて立ち上げられることとなり、異なるモードの装置や端末が分散型連動処理システム内に混在することは無くなる。
【００６７】
ステップＳ４において立ち上げられた装置や端末からは、既に稼働中の他装置に対してバージョン情報を送信する（Ｓ７）。そして、図１２中の点線範囲で示すように、バージョン情報が送信された他装置においては、このバージョン情報を受信し（Ｓ８ｂ）、受信したバージョン情報のうちａ）駅コード、ｂ）プログラムのバージョン、ｃ）データコード、ｄ）定数コードが、自己のバージョン情報のものと一致しているかが確認される。そして、送信されたバージョン情報のａ）駅コード、ｂ）プログラムのバージョン、ｃ）データコード、ｄ）定数コードが、自己のバージョン情報のものと一致している場合には、接続要求元の端末からの接続要求が許可される（Ｓ９ｂ：Ｙｅｓ）。
【００６８】
他装置から送信されたバージョン情報のａ）駅コード、ｂ）プログラムのバージョン、ｃ）データコード、ｄ）定数コードのうち、ｂ）プログラムのバージョンのみが、自己のバージョン情報のものと一致しない場合であっても、このｂ）プログラムのバージョンが、バージョン管理テーブルで許容されているバージョンであるか否かが確認され、許容されている場合には、接続要求元の端末からの接続要求を許可する（Ｓ９ｂ：Ｙｅｓ）。
【００６９】
一方、そうでない場合（Ｓ９ｂ：Ｎｏ）には、接続要求した装置や端末は故障扱いされ、プログラムやデータのダウンロードや、バージョン要求等を除き、要求が受け付けないようにされる（Ｓ１０ｂ）。
【００７０】
同様に、ステップＳ７において自装置のバージョン情報を送信した装置が、他の装置から送信されるバージョン情報を受信する場合もある（Ｓ８ａ）。この場合、自装置もまた、上述したステップＳ９ｂおよびステップＳ１０ｂと同様にして、ステップＳ９ａおよびステップＳ１０ａの処理が行われる。
【００７１】
上述したように、本発明の実施の形態に係る分散型連動処理システムのプログラムバージョン管理方法においては、上記のような作用により、分散型連動処理システムを構成している各装置や各端末で用いられているプログラムのバージョン情報の整合性を確認することができる。確認の結果、バージョン情報の整合性がとられている場合には、該当する装置や端末間でのデータ授受を可能とする。一方、バージョン情報のうち、ｂ）プログラムのバージョンのみの整合性が図られていない場合であっても、予め定めたバージョン管理テーブルで許容されたバージョンである場合には、該当する装置や端末間でのデータ授受が可能となる。
【００７２】
これによって、部分的な装置や端末の制御プログラムの改修や増設時に、改修や増設を要しない装置や端末についても制御プログラムのバージョンを一致させるようなことをしなくても済むようにしている。
【００７３】
また、本発明の実施の形態に係る分散型連動処理システムのプログラムバージョン管理方法においては、現行面ソフトウェアから改正面ソフトウェアへの、あるいは改正面ソフトウェアから現行面ソフトウェアへの切換時には、必要最低限の装置および端末のみしか使用するメモリの変更を行わない。つまり、上述したようなバージョン情報の整合性を確認する各装置や各端末には、２面のメモリ、すなわちＡ面メモリとＢ面メモリとがそれぞれ備えられ、それぞれのメモリに異なるバージョンのプログラムを格納することができる。そして、現行面ソフトウェアから改正面ソフトウェアへ、あるいは改正面ソフトウェアから現行面ソフトウェアとの切換時には、全ての装置や端末について使用するメモリの変更（例えば、Ａ面メモリからＢ面メモリへの変更、あるいはＢ面メモリからＡ面メモリへの変更）を行うのではなく、切換が必要な装置や端末についてのみしか切換を行わない。したがって、切換に係る処理負荷を低減するとともに、切換に関わらない一部機能は運用を行ったまま新機能の運用移行を図ることができる。
【００７４】
これによって、例えば、装置や端末の改修や増設を要する場合には、関連する装置や端末のみを対象として改正面ソフトウェアを用いた動作試験を行い、その結果、問題なく動作することを確認した場合には、この改正面ソフトウェアが、新たな現行面ソフトウェアとして使用されるように、制御ソフトウェアを自動的に切り換えるような運用が可能となる。このような機能により、現行面ソフトウェアと改正面ソフトウェアとの切換を、システム全体を停止することなく容易に、かつ迅速に行うことができるようになり、バージョンアップや、試験運用をするのに非常に便利となる。
【００７５】
以上、本発明の好適な実施の形態について、添付図面を参照しながら説明したが、本発明はかかる構成に限定されない。特許請求の範囲に記載された技術的思想の範疇において、当業者であれば、各種の変更例及び修正例に想到し得るものであり、それら変更例及び修正例についても本発明の技術的範囲に属するものと了解される。
【００７６】
【発明の効果】
以上説明したように、本発明によれば、分散型連動処理システム内の装置や端末毎に適用されているプログラムのバージョンを管理し、かつ全体としての機能を損うようなバージョンの組み合せで分散型連動処理システムが動作することのない分散型連動処理システムのプログラムバージョン管理方法を実現することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る分散型連動処理システムのプログラムバージョン管理方法における装置または端末との接続関係と、バージョン管理をする装置や端末との関係を示す図
【図２】バージョン情報の構成例を示す図
【図３】動作が許容されるプログラムバージョンの組み合わせパターン例を示す図
【図４】バージョン管理テーブルの一例を示す図（ケース３からケース４への移行時）
【図５】装置や端末のメモリの状態を示す図（ケース３からケース４への移行時）
【図６】バージョン管理テーブルの一例を示す図（ケース４からケース５への移行時）
【図７】装置や端末のメモリの状態を示す図（ケース４からケース５への移行時）
【図８】バージョン管理テーブルの一例を示す図（ケース６からケース７への移行時）
【図９】装置や端末のメモリの状態を示す図（ケース６からケース７への移行時）
【図１０】バージョン管理テーブルの一例を示す図（ケース７からケース８への移行時）
【図１１】装置や端末のメモリの状態を示す図（ケース７からケース８への移行時）
【図１２】装置や端末の立ち上げ時における処理の流れをフローチャート
【図１３】従来から用いられている分散型連動処理システムの構成概念図
【符号の説明】
１０…主機器室、１２…副機器室、１４…駅事務室、１６…現場機器室、１８…イーサネット、２０…ハブ、２２…踏切処理装置、２４…保守端末、２６…連動処理装置、２８…現場用機器端末（ＦＢ端末）、２９…制御用ＬＡＮ、３０…Ｉ／Ｏ部、３２…連動端末
【図１】
2004234202.tif 000003
【図２】
2004234202.tif 000004
【図３】
2004234202.tif 000005
【図４】
2004234202.tif 000006
【図５】
2004234202.tif 000007
【図６】
2004234202.tif 000008
【図７】
2004234202.tif 000009
【図８】
2004234202.tif 000010
【図９】
2004234202.tif 000011
【図１０】
2004234202.tif 000012
【図１１】
2004234202.tif 000013
【図１２】
2004234202.tif 000014
【図１３】
2004234202.tif 000015