(57)【要約】【課題】冗長構成における他方のモジュールが故障した場合でも、一方のモジュールを動作させた状態で、交換された新モジュールの初期設定を迅速に行うことができるゲートウェイ装置のモジュール交換方法を提供する。【解決手段】二重化構造を有する２つのモジュールを備えたゲートウェイ装置のモジュール交換方法であって、一方のモジュールは、他方のモジュールの固有な情報を含む冗長相手情報を有しており、一方のモジュールは、他方のモジュールに代えて交換された新モジュールが接続された場合に、他方のモジュールの冗長相手情報に基づき、新モジュールに対する初期設定情報を生成し、生成した初期設定情報を新モジュールに対して送信し、新モジュールは、受信した初期設定情報に基づき初期設定を行う。【選択図】図２
2019109599.tif 000002
【特許請求の範囲】
【請求項１】
二重化構造を有する２つのゲートウェイモジュールを備えたゲートウェイ装置のモジュール交換方法であって、
一方のゲートウェイモジュールは、他方のゲートウェイモジュールの固有な情報を含む冗長相手情報を有しており、
前記一方のゲートウェイモジュールは、
前記他方のゲートウェイモジュールに代えて交換された新ゲートウェイモジュールが接続された場合に、
前記他方のゲートウェイモジュールの前記冗長相手情報に基づき、前記新ゲートウェイモジュールに対する初期設定情報を生成し、
生成した前記初期設定情報を前記新ゲートウェイモジュールに対して送信し、
前記新ゲートウェイモジュールは、
受信した前記初期設定情報に基づき初期設定を行う
ことを特徴とするゲートウェイ装置のモジュール交換方法。
【請求項２】
前記一方のゲートウェイモジュールおよび前記初期設定が完了した前記新ゲートウェイモジュールは、
いずれか一方を動作するプライマリモジュールとして機能させ、他方を待機するセカンダリモジュールとして機能させる切替処理を行う
ことを特徴とする請求項１に記載のゲートウェイ装置のモジュール交換方法。
【請求項３】
前記一方のゲートウェイモジュールおよび前記他方のゲートウェイモジュールは、
互いに接続された際に、相手モジュールの冗長相手情報を受信する
ことを特徴とする請求項１または２に記載のゲートウェイ装置のモジュール交換方法。
【請求項４】
前記一方のゲートウェイモジュールは、
ケーブルの接続状態またはネットワークの通信状態に基づき、前記新ゲートウェイモジュールの接続を検知する
ことを特徴とする請求項１〜３のいずれか一項に記載のゲートウェイ装置のモジュール交換方法。
【請求項５】
前記新ゲートウェイモジュールは、
前記初期設定が完了した後に前記冗長相手情報を生成し、前記一方のゲートウェイモジュールに対して送信し、
前記一方のゲートウェイモジュールから前記一方のゲートウェイモジュールの前記冗長相手情報を受信する
ことを特徴とする請求項１〜４のいずれか一項に記載のゲートウェイ装置のモジュール交換方法。
【請求項６】
前記初期設定情報は、ＩＰアドレスを含む
ことを特徴とする請求項１〜５のいずれか一項に記載のゲートウェイ装置のモジュール交換方法。
【請求項７】
前記新ゲートウェイモジュールは、
前記初期設定の際にＩＰアドレスが設定され、
前記設定されるＩＰアドレスは、前記一方のゲートウェイモジュールのＩＰアドレスに基づき決定される
ことを特徴とする請求項６に記載のゲートウェイ装置のモジュール交換方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、二重化構造を有するゲートウェイ装置のモジュール交換方法に関する。
【背景技術】
【０００２】
従来、装置間で各種情報をやりとりする際に、モジュールを二重化して冗長構成としたゲートウェイ装置が用いられている。このような冗長構成を有するゲートウェイ装置では、一方のモジュールを運用し、他方のモジュールを待機させておく。そして、動作中の一方のモジュールが故障した場合に、待機している他方のモジュールが代わりに動作することで、ゲートウェイ装置を停止させることなく、各種情報の中継を継続することができる（例えば、特許文献１参照）。
【０００３】
また、モジュールを冗長構成とした場合において、一方のモジュールが故障した場合に、故障したモジュールが新たなモジュールに交換される。その際、新モジュールには、故障したモジュールと同様に動作させるための初期設定が行われる（例えば、特許文献２）。特許文献２において、各モジュールは、自モジュールの設定情報を上位装置に予め保持させておく。そして、モジュールが交換された場合、交換後の新モジュールは、交換前のモジュールの設定情報を上位装置からダウンロードし、自モジュールの設定を行う。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−２０８７０６号公報
【特許文献２】特開２０１０−１７０４６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載のゲートウェイ装置では、新モジュールに対する初期設定が手作業で行われる。そのため、初期設定を完了させるまでに時間がかかり、復旧作業を迅速に行うことが困難であるという課題があった。
【０００６】
また、特許文献２に記載の冗長化モジュールでは、各モジュールの設定情報が上位装置に保持される。そのため、モジュールの交換の際に、上位装置にアクセスする必要があり、上位装置に負担がかかってしまうという課題があった。
【０００７】
本発明は、上記従来の技術における課題に鑑みてなされたものであって、冗長構成における他方のモジュールが故障した場合でも、上位装置に負担をかけることなく、一方のモジュールを動作させた状態で、交換された新モジュールの初期設定を迅速に行うことができるゲートウェイ装置のモジュール交換方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明のゲートウェイ装置のモジュール交換方法は、二重化構造を有する２つのゲートウェイモジュールを備えたゲートウェイ装置のモジュール交換方法であって、一方のゲートウェイモジュールは、他方のゲートウェイモジュールの固有な情報を含む冗長相手情報を有しており、前記一方のゲートウェイモジュールは、前記他方のゲートウェイモジュールに代えて交換された新ゲートウェイモジュールが接続された場合に、前記他方のゲートウェイモジュールの前記冗長相手情報に基づき、前記新ゲートウェイモジュールに対する初期設定情報を生成し、生成した前記初期設定情報を前記新ゲートウェイモジュールに対して送信し、前記新ゲートウェイモジュールは、受信した前記初期設定情報に基づき初期設定を行うものである。
【発明の効果】
【０００９】
本発明によれば、２つのゲートウェイモジュールが互いに相手モジュールの冗長相手情報を有し、冗長相手情報に基づき、交換された新ゲートウェイモジュールの初期設定情報を生成して新ゲートウェイモジュールに送信することにより、冗長構成における他方のモジュールが故障した場合でも、上位装置に負担をかけることなく、一方のモジュールを動作させた状態で、交換した新モジュールの初期設定を迅速に行うことができる。
【図面の簡単な説明】
【００１０】
【図１】実施の形態１に係る制御システムの構成の一例を示すブロック図である。
【図２】実施の形態１に係るゲートウェイ装置の構成の一例を示すブロック図である。
【図３】実施の形態１に係るゲートウェイ装置における起動時の処理の流れの一例を示すフローチャートである。
【図４】第２モジュールが新たなモジュールに交換された場合の、第１モジュールの処理の流れの一例を示すフローチャートである。
【図５】第２モジュールが新たなモジュールに交換された場合の、第２モジュールの処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
実施の形態１．
以下、本発明の実施の形態１に係るゲートウェイ装置について説明する。本実施の形態１に係るゲートウェイ装置は、ゲートウェイモジュールを二重化して冗長構成としたものであり、例えば、ビルまたは工場等の施設の制御および監視を行うプラント制御システムに用いられる。
【００１２】
［制御システム１００の構成］
図１は、本実施の形態１に係る制御システム１００の構成の一例を示すブロック図である。図１に示すように、制御システム１００は、ゲートウェイ装置１、上位装置２、１または複数のフィールド機器３、システムバス４およびフィールドバス５で構成されている。
【００１３】
上位装置２は、ゲートウェイ装置１を介してフィールド機器３と各種の情報のやりとりを行い、制御システム１００全体の動作を管理する。
【００１４】
フィールド機器３は、例えば施設に設置された圧力計、流量計、アクチュエータおよびバルブ等の機器であり、設備に関する情報を取得する。ゲートウェイ装置１は、システムバス４に接続された上位装置２と、フィールドバス５に接続されたフィールド機器３との間で行われるデータ通信を中継する。
【００１５】
システムバス４は、例えばイーサネット（登録商標、以下省略）等の汎用のネットワーク規格により、ゲートウェイ装置１と上位装置２との間で通信を行うためのバスである。フィールドバス５は、例えばイーサネット等の汎用のネットワーク規格により、ゲートウェイ装置１とフィールド機器３との間で通信を行うためのバスである。フィールドバス５として、例えば工場内の各種機器を相互に接続する工場ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）が用いられる。
【００１６】
［ゲートウェイ装置１の構成］
図２は、本実施の形態１に係るゲートウェイ装置１の構成の一例を示すブロック図である。図２に示すように、ゲートウェイ装置１には、互いに同一の構成を有するゲートウェイモジュールである第１モジュール１０Ａおよび第２モジュール１０Ｂが設けられている。第１モジュール１０Ａと第２モジュール１０Ｂとは、シリアルケーブル等によって接続される。
【００１７】
ゲートウェイ装置１は、通常、第１モジュール１０Ａおよび第２モジュール１０Ｂのうちいずれか一方が動作し、他方が待機状態とされている。以下では、第１モジュール１０Ａおよび第２モジュール１０Ｂのうち、動作するモジュールをプライマリモジュール、待機状態とされるモジュールをセカンダリモジュールと適宜称する。また、ここでは、第１モジュール１０Ａが動作するプライマリモジュールであり、第２モジュール１０Ｂが待機状態であるセカンダリモジュールであるものとして説明する。
【００１８】
第１モジュール１０Ａは、冗長相手情報生成部１１Ａ、冗長相手情報取得部１２Ａ、初期設定情報取得部１３Ａ、情報格納部１４Ａ、初期設定情報生成部１５Ａ、冗長通信インターフェース（Ｉ／Ｆ）１６Ａ、初期設定部１７Ａ、プライマリ／セカンダリ（Ｐ／Ｓ）切替部１８Ａおよび交換検知部１９Ａを備えている。第２モジュール１０Ｂは、冗長相手情報生成部１１Ｂ、冗長相手情報取得部１２Ｂ、初期設定情報取得部１３Ｂ、情報格納部１４Ｂ、初期設定情報生成部１５Ｂ、冗長通信インターフェース（Ｉ／Ｆ）１６Ｂ、初期設定部１７Ｂ、プライマリ／セカンダリ（Ｐ／Ｓ）切替部１８Ｂおよび交換検知部１９Ｂを備えている。
【００１９】
第１モジュール１０Ａおよび第２モジュール１０Ｂは、互いに同一の構成を有しているため、以下では、第１モジュール１０Ａを例にとって説明する。なお、第１モジュール１０Ａおよび第２モジュール１０Ｂには、初期設定プログラムが搭載され、以下に詳述する各部の機能は、初期設定プログラムによって実行されるものである。
【００２０】
冗長相手情報生成部１１Ａは、自モジュールが起動された場合に、第１モジュール１０Ａの冗長相手情報を生成し、冗長通信Ｉ／Ｆ１６Ａに供給する。冗長相手情報は、相手モジュールの設定に関する情報である。冗長相手情報は、第１モジュール１０Ａと第２モジュール１０Ｂとで設定値が異なり、かつ、一方のモジュールの設定値から他方のモジュールの設定値を計算することができない情報である。具体的には、冗長相手情報として、例えば相手モジュールのノード名が含まれている。
【００２１】
冗長相手情報取得部１２Ａは、第２モジュール１０Ｂの冗長相手情報を冗長通信Ｉ／Ｆ１６Ａを介して取得し、取得した冗長相手情報を情報格納部１４Ａに格納する。
【００２２】
初期設定情報取得部１３Ａは、第１モジュール１０Ａが新たなモジュールに交換された場合に、第２モジュール１０Ｂから初期設定情報を冗長通信Ｉ／Ｆ１６Ａを介して取得し、取得した初期設定情報を情報格納部１４Ａに格納する。なお、初期設定情報の詳細については、後述する。
【００２３】
情報格納部１４Ａは、第１モジュール１０Ａで用いられる各種の情報を格納し、各部からの要求に応じて格納された情報が読み出される。特に、本実施の形態１において、情報格納部１４Ａは、第２モジュール１０Ｂから受け取った冗長相手情報および初期設定情報を格納する。
【００２４】
初期設定情報生成部１５Ａは、第２モジュール１０Ｂが故障等によって新たなモジュールに交換された場合に、情報格納部１４Ａに格納された第２モジュール１０Ｂの冗長相手情報に基づき、初期設定情報を生成する。初期設定情報生成部１５Ａは、生成した初期設定情報を冗長通信Ｉ／Ｆ１６Ａに供給する。
【００２５】
冗長通信Ｉ／Ｆ１６Ａは、第２モジュール１０Ｂとの通信を行う際のインターフェースである。冗長通信Ｉ／Ｆ１６Ａは、自モジュールが起動された際などに、冗長相手情報生成部１１Ａから受け取った第１モジュール１０Ａの冗長相手情報を第２モジュール１０Ｂに送信する。また、冗長通信Ｉ／Ｆ１６Ａは、第２モジュール１０Ｂから第２モジュール１０Ｂの冗長相手情報を受信し、冗長相手情報取得部１２Ａに供給する。
【００２６】
さらに、冗長通信Ｉ／Ｆ１６Ａは、第２モジュール１０Ｂが新たなモジュールに交換された場合に、初期設定情報生成部１５Ａから受け取った初期設定情報を第２モジュール１０Ｂに送信する。また、第１モジュール１０Ａが新たなモジュールに交換された場合、交換後の第１モジュール１０Ａの冗長通信Ｉ／Ｆ１６Ａは、第２モジュール１０Ｂからの初期設定情報を受信し、初期設定情報取得部１３Ａに供給する。
【００２７】
初期設定部１７Ａは、情報格納部１４Ａに格納された初期設定情報に基づき、自モジュールに対する初期設定を行う。Ｐ／Ｓ切替部１８Ａは、自モジュールの初期設定が完了した場合に、自モジュールをプライマリモジュールとするか、セカンダリモジュールとするかの切り替えを行う。
【００２８】
交換検知部１９Ａは、冗長通信Ｉ／Ｆ１６Ａに対するケーブルの接続状態に基づき、第２モジュール１０Ｂが接続されたか否かを検知する。
【００２９】
（初期設定情報について）
初期設定情報生成部１５Ａおよび１５Ｂで生成される初期設定情報について説明する。初期設定情報は、モジュールの起動時に必要な設定情報である。初期設定情報として、例えば、相手モジュールのＩＰアドレス（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）、ノード名、リスタート設定（ＨＯＴ、ＣＯＬＤ、ＷＡＲＭなど）、モジュール冗長機能設定、ＯＰＣ（ＯＬＥ  ｆｏｒ  Ｐｒｏｃｅｓｓ  Ｃｏｎｔｒｏｌ）サーバとの通信設定といった項目が含まれている。ＯＰＣとは、生産設備で収集される計測データおよび制御データ等のプロセスデータを用いたプロセス制御の標準規格である。
【００３０】
ＩＰアドレスは、モジュールに固有なネットワーク上のアドレスを示す項目である。ＩＰアドレスは、予め設定された規則に基づき決定された値が設定される。ノード名は、モジュールに固有の名称を示す項目である。ノード名は、冗長相手情報に含まれるノード名が設定される。
【００３１】
リスタート設定は、起動時の設定を示す項目であり、例えば、「ＣＯＬＤ」設定、「ＷＡＲＭ」設定および「ＨＯＴ」設定のいずれかが設定される。「ＣＯＬＤ」設定は、すべてのデータを初期化して起動する設定である。「ＷＡＲＭ」設定は、停止前の状態で起動するが、作業者によるクロックおよびタイマーの再設定操作が必要となる設定である。「ＨＯＴ」設定は、すべての設定が停止前の状態となり、作業者による操作が不要である設定である。リスタート設定は、正常なモジュールすなわち自モジュールと同一の情報が設定される。
【００３２】
モジュール冗長機能設定は、モジュール構成を冗長構成とするか否かを決定する項目である。モジュール冗長機能設定は、正常なモジュールすなわち自モジュールと同一の情報が設定される。
【００３３】
通信設定は、ＯＰＣサーバとの通信設定に関する項目であり、例えば「ＰｒｏｇＩＤ」および「ＯＰＣアイテム情報」を含んでいる。ＰｒｏｇＩＤは、複数のＯＰＣサーバのうち、どのＯＰＣサーバを使用するのかを決定するための情報である。ＯＰＣアイテム情報は、ＯＰＣサーバのタグとゲートウェイ装置１内のマッピング領域上のアドレスとを関連付けるための情報、ならびに、フィールド機器３による測定値のデータ形式および収集周期等を設定するための情報である。通信設定は、正常なモジュールすなわち自モジュールと同一のアイテム定義ファイルがコピーされる。
【００３４】
ここで、相手モジュールのＩＰアドレスの決定方法について説明する。第１モジュール１０Ａおよび第２モジュール１０Ｂのうちいずれかが交換された場合、交換されたモジュールのＩＰアドレスは、例えば、正常なモジュールのＩＰアドレスを用いて決定される。
【００３５】
自モジュールのＩＰアドレスの下位８ビットの値が「１２８」よりも小さい場合、相手モジュールのＩＰアドレスの下位８ビットは、自モジュールの下位８ビットの値に「１２８」を加算した値に決定される。また、自モジュールのＩＰアドレスの下位８ビットの値が「１２８」よりも大きい場合、相手モジュールのＩＰアドレスの下位８ビットは、自モジュールの下位８ビットの値から「１２８」を減算した値に決定される。
【００３６】
すなわち、第１モジュール１０Ａおよび第２モジュール１０ＢのＩＰアドレスは、ＩＰアドレス「１９２．１６８．０．１２８」を基準として、下位８ビットの値が「１２８」よりも小さい値と大きい値とに決定される。このようにして交換されたモジュールのＩＰアドレスが決定されることにより、交換前後のモジュールのＩＰアドレスは、同一のアドレスとなる。なお、基準ＩＰアドレス「１９２．１６８．０．１２８」は、本実施の形態１において、交換されたモジュールにおける初期設定前のＩＰアドレスとして設定されている。
【００３７】
［ゲートウェイ装置１の動作］
次に、ゲートウェイ装置１の動作について説明する。ここでは、第１モジュール１０Ａおよび第２モジュール１０Ｂがそれぞれ起動した場合の処理と、第１モジュール１０Ａおよび第２モジュール１０Ｂのいずれか一方が故障等により新たなモジュールに交換された場合の処理とについて説明する。
【００３８】
（モジュール起動時）
モジュール起動時の処理について説明する。モジュール起動時の処理については、第１モジュール１０Ａと第２モジュール１０Ｂとで同一の処理が行われるため、以下では、第１モジュール１０Ａにおける処理を例にとって説明する。
【００３９】
図３は、本実施の形態１に係るゲートウェイ装置１における起動時の処理の流れの一例を示すフローチャートである。まず、ステップＳ１において、第１モジュール１０Ａの交換検知部１９Ａは、冗長通信Ｉ／Ｆ１６Ａから接続情報を取得し、第２モジュール１０Ｂが接続されたか否かを判断する。
【００４０】
第２モジュール１０Ｂとの接続が検知された場合（ステップＳ１；Ｙｅｓ）、冗長相手情報生成部１１Ａは、ステップＳ２において、第１モジュール１０Ａの冗長相手情報を生成し、冗長通信Ｉ／Ｆ１６Ａに供給する。ステップＳ３において、冗長通信Ｉ／Ｆ１６Ａは、冗長相手情報生成部１１Ａで生成された冗長相手情報を第２モジュール１０Ｂに送信する。
【００４１】
一方、第２モジュール１０Ｂとの接続が検知されなかった場合（ステップＳ１；Ｎｏ）には、処理がステップＳ１に戻り、第２モジュール１０Ｂとの接続が検知されるまで、ステップＳ１の処理を繰り返す。
【００４２】
次に、ステップＳ４において、冗長通信Ｉ／Ｆ１６Ａは、第２モジュール１０Ｂから第２モジュール１０Ｂの冗長相手情報を受信し、冗長相手情報取得部１２Ａに供給する。
ステップＳ５において、冗長相手情報取得部１２Ａは、取得した冗長相手情報を情報格納部１４Ａに格納する。
【００４３】
このように、第１モジュール１０Ａおよび第２モジュール１０Ｂは、モジュール起動時に、自モジュールの冗長相手情報を生成し、互いに接続された相手モジュールに対して送信する。そして、第１モジュール１０Ａおよび第２モジュール１０Ｂは、受信した相手モジュールの冗長相手情報を予め格納しておく。これにより、相手モジュールの冗長相手情報が自モジュールに格納され、相手モジュールが交換された際に、交換された相手モジュールを交換前の相手モジュールと同様の設定にすることができる。
【００４４】
なお、ステップＳ３における自モジュールの冗長相手情報の送信と、ステップＳ４における相手モジュールの冗長相手情報の受信とは、この順序に限られず、ステップＳ３とステップＳ４との順序が入れ替えられてもよい。また、ステップＳ３とステップＳ４との処理が同時に行われてもよい。
【００４５】
（モジュール交換時）
モジュール交換時の処理について説明する。まず、モジュール交換時における第１モジュール１０Ａの処理について説明する。図４は、第２モジュール１０Ｂが新たなモジュールに交換された場合の、第１モジュール１０Ａの処理の流れの一例を示すフローチャートである。
【００４６】
ステップＳ１１において、第１モジュール１０Ａの交換検知部１９Ａは、冗長通信Ｉ／Ｆ１６Ａから接続情報を取得し、第２モジュール１０Ｂが新たなモジュールに交換されたか否かを判断する。この判断は、例えば、接続された新たなモジュールからの所定のケーブル通信を受信したか否かによって行われる。
【００４７】
第２モジュール１０Ｂが新たなモジュールに交換されたと判断された場合（ステップＳ１１；Ｙｅｓ）、初期設定情報生成部１５Ａは、情報格納部１４Ａから第２モジュール１０Ｂの冗長相手情報を読み出す。そして、初期設定情報生成部１５Ａは、読み出した冗長相手情報に基づき、初期設定情報を生成し、冗長通信Ｉ／Ｆ１６Ａに供給する。
【００４８】
一方、第２モジュール１０Ｂが新たなモジュールに交換されていないと判断された場合（ステップＳ１１；Ｎｏ）には、処理がステップＳ１１に戻り、第２モジュール１０Ｂが新たなモジュールに交換されるまで、ステップＳ１１に処理を繰り返す。
【００４９】
ステップＳ１３において、冗長通信Ｉ／Ｆ１６Ａは、初期設定情報生成部１５Ａで生成された初期設定情報を、交換された第２モジュール１０Ｂに送信する。
【００５０】
交換された第２モジュール１０Ｂでの初期設定が完了した後、ステップＳ１４において、冗長通信Ｉ／Ｆ１６Ａは、第２モジュール１０Ｂから第２モジュール１０Ｂの冗長相手情報を受信し、冗長相手情報取得部１２Ａに供給する。ステップＳ１５において、冗長相手情報取得部１２Ａは、取得した冗長相手情報を情報格納部１４Ａに格納する。そして、ステップＳ１６において、第１モジュール１０Ａと第２モジュール１０Ｂとの間で、データベースの同期処理が行われる。
【００５１】
次に、モジュール交換時における第２モジュール１０Ｂの処理について説明する。図５は、第２モジュール１０Ｂが新たなモジュールに交換された場合の、第２モジュール１０Ｂの処理の流れの一例を示すフローチャートである。
【００５２】
ステップＳ２１において、第２モジュール１０Ｂが新たなモジュールに交換される。ステップＳ２２において、交換された第２モジュール１０Ｂが第１モジュール１０Ａに接続される。
【００５３】
ステップＳ２３において、第２モジュール１０Ｂの冗長通信Ｉ／Ｆ１６Ｂは、第１モジュール１０Ａから初期設定情報を受信し、初期設定情報取得部１３Ｂに供給する。初期設定情報取得部１３Ｂは、取得した初期設定情報を情報格納部１４Ｂに格納する。
【００５４】
ステップＳ２４において、初期設定部１７Ｂは、情報格納部１４Ｂから初期設定情報を読み出し、読み出した初期設定情報に基づき、第２モジュール１０Ｂの初期設定を行う。
【００５５】
第２モジュール１０Ｂの初期設定が完了した後、ステップＳ２５において、冗長相手情報生成部１１Ｂは、自モジュールの冗長相手情報を生成し、冗長通信Ｉ／Ｆ１６Ｂに供給する。ステップＳ２６において、冗長通信Ｉ／Ｆ１６Ｂは、冗長相手情報生成部１１Ｂで生成された冗長相手情報を第１モジュール１０Ａに送信する。
【００５６】
次に、ステップＳ２７において、冗長通信Ｉ／Ｆ１６Ｂは、第１モジュール１０Ａから第１モジュール１０Ａの冗長相手情報を受信し、冗長相手情報取得部１２Ｂに供給する。ステップＳ２８において、冗長相手情報取得部１２Ｂは、取得した冗長相手情報を情報格納部１４Ｂに格納する。そして、ステップＳ２９において、第１モジュール１０Ａと第２モジュール１０Ｂとの間で、データベースの同期処理が行われる。
【００５７】
なお、ここでは、ステップＳ２５およびステップＳ２６の処理の後に、ステップＳ２７およびステップＳ２８の処理が行われるように説明したが、これはこの例に限られない。例えば、ステップＳ２７およびステップＳ２８の処理の後に、ステップＳ２５およびステップＳ２６の処理が行われてもよい。
【００５８】
このように、交換されたモジュールの相手モジュールである一方のモジュールは、交換前の他方のモジュールの冗長相手情報に基づき生成された初期設定情報を、交換された他方のモジュールに送信する。交換された他方のモジュールは、受信した初期設定情報に基づき、自モジュールの初期設定を行う。これにより、交換された他方のモジュールは、交換前のモジュールと同等の設定になる。そのため、故障等によって動作不能となったモジュールを交換する必要がある場合でも、通信を停止させることなく、動作不能のモジュールを交換し、新たなモジュールの初期設定を迅速に行うことができる。
【００５９】
（モジュールのプライマリおよびセカンダリ設定について）
ここで、第１モジュール１０Ａおよび第２モジュール１０Ｂのプライマリおよびセカンダリの設定について説明する。
【００６０】
まず、第１モジュール１０Ａおよび第２モジュール１０Ｂのいずれかが故障等によって動作不能となった場合のプライマリおよびセカンダリの設定について説明する。従来から、冗長構成とされた２つのモジュールのいずれかが動作不能となった場合には、上位装置２から受け取る冗長切替コマンドに基づき、正常なモジュールがプライマリモジュールとなるように設定される。
【００６１】
具体的には、例えば、第１モジュール１０Ａがプライマリモジュールであり、第２モジュール１０Ｂがセカンダリモジュールである場合で、第１モジュール１０Ａが動作不能となったときについて考える。この場合、上位装置２からの冗長切替コマンドに基づき、正常な第２モジュール１０Ｂがプライマリモジュールに設定される。また、交換直後の第１モジュール１０Ａは、セカンダリモジュールに設定される。
【００６２】
一方、セカンダリモジュールに設定された第２モジュール１０Ｂが動作不能となったときは、冗長切替コマンドに基づき、正常な第１モジュール１０Ａがプライマリモジュールに設定され、交換直後の第２モジュール１０Ｂがセカンダリモジュールに設定される。すなわち、この場合には、実質的にプライマリおよびセカンダリの設定は変更されない。
【００６３】
次に、交換されたモジュールの初期設定が完了した後の、本実施の形態１におけるプライマリおよびセカンダリの設定について説明する。本実施の形態１において、初期設定完了後の第１モジュール１０Ａおよび第２モジュール１０Ｂは、いずれか一方をプライマリモジュールとして機能させ、他方をセカンダリモジュールとして機能させる切替処理を行う。第１モジュール１０Ａおよび第２モジュール１０Ｂに対するプライマリおよびセカンダリの設定は、それぞれのモジュールのＩＰアドレスと基準となるＩＰアドレスとを比較することによって行われる。
【００６４】
例えば、ＩＰアドレス「１９２．１６８．０．１２８」を基準とし、ＩＰアドレスの下位８ビットの値が基準ＩＰアドレスの下位８ビットの値「１２８」よりも大きいまたは小さい方のモジュールがプライマリモジュールとなるように、予め設定しておく。そして、第１モジュール１０Ａおよび第２モジュール１０Ｂのいずれかが交換され、初期設定およびデータベースの同期が完了した後に、２つのモジュールのＩＰアドレスと基準ＩＰアドレスとが比較される。比較の結果、ＩＰアドレスの下位８ビットの値が予め設定された条件を満たす一方のモジュールがプライマリモジュールに設定され、他方のモジュールがセカンダリモジュールに設定される。
【００６５】
具体的には、例えば、初期設定およびデータベース同期完了後の第１モジュール１０ＡのＩＰアドレスが「１９２．１６８．０．１７」であり、第２モジュール１０ＢのＩＰアドレスが「１９２．１６８．０．１４５」である場合について考える。また、ＩＰアドレスの下位８ビットの値が基準ＩＰアドレスの下位８ビットの値よりも小さいモジュールが、プライマリモジュールとなるように設定されているものとする。
【００６６】
この場合、第１モジュール１０ＡのＩＰアドレスの下位８ビットの値が「１７」であり、第２モジュール１０ＢのＩＰアドレスの下位８ビットの値が「１４５」である。したがって、第１モジュール１０ＡのＩＰアドレスの下位８ビットの値が基準ＩＰアドレスの下位８ビットの値「１２８」よりも小さいため、第１モジュール１０Ａがプライマリモジュールに設定される。
【００６７】
以上のように、本実施の形態１に係るゲートウェイ装置１において、第１モジュール１０Ａは、第２モジュール１０Ｂが新モジュールに交換された場合に、第２モジュール１０Ｂの冗長相手情報に基づき、新モジュールに対する初期設定情報を生成する。そして、第１モジュール１０Ａは、生成した初期設定情報を新モジュールに対して送信する。新モジュールは、受信した初期設定情報に基づき初期設定を行う。これにより、第１モジュール１０Ａが動作中であっても、第２モジュール１０Ｂとしての新モジュールの初期設定を自動的に行うことができる。また、初期設定情報が冗長構成とされたモジュール間で保持されるため、上位装置に負担を掛けることなく、モジュールの交換を行うことができる。
【００６８】
また、第１モジュール１０Ａおよび初期設定が完了した第２モジュール１０Ｂは、いずれか一方を動作するプライマリモジュールとして機能させ、他方を待機するセカンダリモジュールとして機能させる切替処理を行う。これにより、予め設定された規則に応じてプライマリモジュールを設定することができる。
【００６９】
さらに、第１モジュール１０Ａおよび第２モジュール１０Ｂは、互いに接続された際に、相手モジュールの冗長相手情報を受信する。これにより、相手モジュールが故障等によって動作不能となって交換された場合でも、交換されたモジュールに対する初期設定を容易に行うことができる。
【００７０】
さらにまた、第２モジュール１０Ｂが交換された場合に、第１モジュール１０Ａは、ケーブルの接続状態に基づき、交換された第２モジュール１０Ｂの接続を検知する。これにより、相手モジュールが交換されたか否かを容易に判断することができる。
【００７１】
なお、本実施の形態１では、これに限られず、第１モジュール１０Ａは、例えばネットワークの通信状態に基づき、交換された第２モジュール１０Ｂの接続を検知してもよい。第１モジュール１０Ａの冗長通信Ｉ／Ｆ１６Ａは、システムバス４を介して特殊プロトコルを用いた通信を行い、相手モジュールを探すこともできるので、相手モジュールが交換されたか否かの判断は、ケーブルを用いた通信に限定されるものではない。
【００７２】
また、交換された第２モジュール１０Ｂは、初期設定が完了した後に冗長相手情報を生成し、第１モジュール１０Ａに対して送信するとともに、第１モジュール１０Ａから第１モジュール１０Ａの冗長相手情報を受信する。これにより、相手モジュールの情報を常に取得しておくことができるため、モジュールがさらに交換される場合にも、交換されたモジュールに対する初期設定を容易に行うことができる。
【００７３】
さらに、初期設定情報は、ＩＰアドレスを含み、交換された第２モジュール１０Ｂは、初期設定の際に設定されるＩＰアドレスを第１モジュール１０ＡのＩＰアドレスに基づき決定する。これにより、交換された第２モジュール１０ＢのＩＰアドレスが一意に決定され、交換前と同一のＩＰアドレスを常に設定することができるため、モジュール交換によってＩＰアドレスが変更されることによる通信の不具合を抑制することができる。
【符号の説明】
【００７４】
１  ゲートウェイ装置、２  上位装置、３  フィールド機器、４  システムバス、５  フィールドバス、１０Ａ  第１モジュール、１０Ｂ  第２モジュール、１１Ａ、１１Ｂ  冗長相手情報生成部、１２Ａ、１２Ｂ  冗長相手情報取得部、１３Ａ、１３Ｂ  初期設定情報取得部、１４Ａ、１４Ｂ  情報格納部、１５Ａ、１５Ｂ  初期設定情報生成部、１６Ａ、１６Ｂ  冗長通信インターフェース、１７Ａ、１７Ｂ  初期設定部、１８Ａ、１８Ｂ  プライマリ／セカンダリ切替部、１９Ａ、１９Ｂ  交換検知部、１００  制御システム。
【図１】
2019109599.tif 000003
【図２】
2019109599.tif 000004
【図３】
2019109599.tif 000005
【図４】
2019109599.tif 000006
【図５】
2019109599.tif 000007