(57)【特許請求の範囲】
【請求項１】
上位コントローラと二重化バスに接続された制御モジュールとの間の通信を中継するとともに、二重化バスの制御を行う中継モジュールを備えた通信制御装置であって、
前記中継モジュールは、前記二重化バスの各バス系統の状態を示すライブリストを格納する記憶手段と、
前記ライブリストの情報に基づいて前記二重化バスのうちアクセスするバス系統を決めるバス選択手段と、
前記ライブリストの情報に基づいてバス系統の健全性をチェックする診断手段と、を有し、
前記制御モジュールが前記上位コントローラからの要求に対するレスポンスを返した後に、アクセスに使用していないバス系統の健全性を前記診断手段がチェックし、チェック完了ごとに前記ライブリストの情報を更新することを特徴とする通信制御装置。
【請求項２】
前記ライブリストは、バス系統ごと及び制御モジュールごとに通信の健全性を示す情報であるライブフラグ並びに、制御モジュールごとにアクセスの有無及びアクセスに使用しているバス系統を示す情報であるアクセスフラグからなることを特徴とする請求項１記載の通信制御装置。
【請求項３】
前記バス選択手段は、前記ライブリストのライブフラグの情報に基づいて、両バス系統で健全な場合は、一方のバス系統でアクセスに失敗したら他方のバス系統に切替えてアクセスを行い、あらかじめ他方のバス系統の通信不可が分かっている場合は、バス系統の切替えを行わないことを特徴とする請求項２記載の通信制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、冗長化バスを用いて通信を行う通信制御装置に関するものである。
【０００２】
【従来の技術】
通信システムでは、信頼性を保証させるためにバス系統を二重化したシステムがある。
二重化制御のしかたには、交互にバス系統を切り替えて使う方式や、一方のバス系統を固定して使い、他方のバス系統は待機させておき、現用側のバス系統が故障したときに待機側のバス系統を使う方式があった。
従来、バスの二重化制御は上位コントローラが行っていた。しかし、二重化制御の複雑な処理のために上位コントローラの実行時間のオーバーヘッドが増大するという問題点があった。
【０００３】
【発明が解決しようとする課題】
本発明は上述した問題点を解決するためになされたものであり、冗長化バスに接続された制御モジュールと上位コントローラとの間に中継モジュールを介在させ、この中継モジュールがバスの冗長化制御を行うことによって、上位コントローラは冗長化バスを意識することなくアクセスできる通信制御装置を実現することを目的とする。
【０００４】
【課題を解決するための手段】
本発明は次のとおりの構成になった通信制御装置である。
【０００５】
（１）上位コントローラと二重化バスに接続された制御モジュールとの間の通信を中継するとともに、二重化バスの制御を行う中継モジュールを備えた通信制御装置であって、
前記中継モジュールは、前記二重化バスの各バス系統の状態を示すライブリストを格納する記憶手段と、
前記ライブリストの情報に基づいて前記二重化バスのうちアクセスするバス系統を決めるバス選択手段と、
前記ライブリストの情報に基づいてバス系統の健全性をチェックする診断手段と、を有し、
前記制御モジュールが前記上位コントローラからの要求に対するレスポンスを返した後に、アクセスに使用していないバス系統の健全性を前記診断手段がチェックし、チェック完了ごとに前記ライブリストの情報を更新することを特徴とする通信制御装置。
【０００６】
（２）前記ライブリストは、バス系統ごと及び制御モジュールごとに通信の健全性を示す情報であるライブフラグ並びに、制御モジュールごとにアクセスの有無及びアクセスに使用しているバス系統を示す情報であるアクセスフラグからなることを特徴とする（１）記載の通信制御装置。
【０００７】
（３）前記バス選択手段は、前記ライブリストのライブフラグの情報に基づいて、両バス系統で健全な場合は、一方のバス系統でアクセスに失敗したら他方のバス系統に切替えてアクセスを行い、あらかじめ他方のバス系統の通信不可が分かっている場合は、バス系統の切替えを行わないことを特徴とする（２）記載の通信制御装置。
【００１１】
【発明の実施の形態】
以下図面を用いて本発明を詳しく説明する。
図１は本発明の一実施例を示す構成図である。
図１で、制御モジュール１１，１２は二重化されたバス２１，２２に接続されている。上位コントローラ３０は、制御モジュール１１，１２を制御する。
中継モジュール４０は、上位コントローラ３０と制御モジュール１１，１２との間の通信を中継するとともに、バス２１，２２の二重化制御を行う。中継モジュール４０と上位コントローラ３０はバス５０で接続されている。
【００１２】
制御モジュール１１，１２、上位コントローラ３０、中継モジュール４０は、それぞれＣＰＵとＲＡＭを備えている。
バス２１の系統をα系、バス２２の系統をβ系とする。
【００１３】
中継モジュール４０で、記憶手段４１は例えばＲＡＭで、各バス系統のバス２１，２２の状態を示すライブリスト４１１を格納している。
プロセッサ４２は例えばＣＰＵで、バス選択手段４２１と診断手段４２２を有する。バス選択手段４２１は、ライブリスト４１１の情報に基づいて上位コントローラ３０がアクセスするバス系統を決める。
診断手段４２２は、一方のバス系統を介して制御モジュール１１，１２が上位コントローラ３０にレスポンスを返した後に、他方のバス系統の健全性をチェックする。例えば、α系のバスを用いて通信を行っているときは、レスポンス返送後にβ系のバスの健全性をチェックする。診断手段４２２は、ライブリスト４１１の情報に基づいて健全性をチェックするバス系統を決める。診断手段４２２は、チェックが完了したときにライブリスト４１１の内容を更新する。
【００１４】
例えば、上位コントローラ３０は制御モジュール１１，１２に対してアナログ電流出力の設定値を示すデータを送り、制御モジュール１１，１２は実際に出力したアナログ電流値のデータをレスポンスとして返す。
【００１５】
図２は本発明にかかる通信制御装置の適用例を示した図である。
この例では、プロセス制御システムに用いる信号入出力装置に適用している。
この通信制御装置は、上位側のリモートバス６０ａ，６０ｂと下位側のノード内バス７０ａ，７０ｂを接続している。
バス・インタフェイス・モジュール（ＢＩＭと略す）８０ａ，８０ｂは、コントローラ８１ａ，８１ｂとＩＯモジュール（入出力モジュール。ＩＯＭと略す。）８２ａ〜８２ｈの間の通信を中継するとともに、ノード内バス７０ａ，７０ｂについて使用するバス系統の選択や、健全性のチェックを行うバス系統の選択等を含むバスの二重化制御を行う。ＢＩＭ８０ａ，８０ｂが二重化制御を実行するため、上位側のコントローラ（ＣＯＮＴＲＯＬＬＥＲ）８１ａ，８１ｂは二重化バスを意識することなくＩＯＭにアクセスできる。
電源モジュール（ＰＷＭと略す）はＢＩＭ７やＩＯＭに駆動電力を供給する。
【００１６】
図２の適用例では、上位コントローラ、制御モジュール及び中継モジュールは、コントローラ８１ａ，８１ｂ、ＩＯＭ８２ａ〜８２ｈ及びＢＩＭ８０ａ，８０ｂに相当する。上位コントローラと中継モジュールは、それぞれ二重化されている。
【００１７】
本発明の動作について説明する。
中継モジュール４０は、内部にライブリスト４１１を持ち、上位コントローラ３０からアクセスを要求された場合に、ライブリスト４１１に従って健全なバス系統（α系，β系）にアクセスする。ライブリストはライブフラグとアクセスフラグとから構成される。
【００１８】
ライブフラグは、ノード内の各スロット毎（制御モジュール毎）にバス通信の健全性を示すリストである。
図３はライブフラグの例を示した図である。
図３で、「０」はバス系統が未アクセス又は未実装であることを示す。「×」はバス系統が通信不可、「１」はバス系統が健全な系統であることを示す。
【００１９】
アクセスフラグは、各スロットへのアクセスの有無を示す情報である。
図４はアクセスフラグの例を示した図である。
図４で、「１」はα系へのアクセスあり、「２」はβ系へのアクセスあり、「０」はいずれの系統へもアクセス無しであることを示す。
【００２０】
常時はα系を通信に使用し、β系の健全性をチェックしたときにライブリストを更新する。
バスの異常を検出すると、ライブリストを参照し、ライブリストに示すバス状態に応じて他方の系統のバスをアクセスする。
また、制御モジュールが上位コントローラにレスポンスを返送した後に他方の系統のバスをチェックするため、システム全体のレスポンスに影響を与えない。
【００２１】
通信に用いるバス系統の選択のしかたについて説明する。
α，βのいずれの系統でアクセスするかはα系とβ系のライブフラグの組み合わせにより決定する。図５は決定のしかたを示した図である。
図５で、「０」はバス系統が未アクセス又は未実装であることを示す。「×」はバス系統が通信不可、「１」はバス系統が健全な系統であることを示す。「α→β」はα系が通信不可であればβ系にリトライすることを示す。
【００２２】
通常、α系とβ系が両方とも健全な場合、図５のα＝１，β＝１の組み合わせの欄で「α→β」と示されるように、まずα系でアクセスし、α系のアクセスが失敗したら次にβ系でアクセスを行う。
なお、既に通信不可の系統がある場合（図５の「×」の欄）等にはリトライは行わない。
【００２３】
診断するバス系統の選択のしかたについて説明する。
両系統のバスの健全性を確認するため、上位コントローラからの要求に対して使用したバスの系統と逆の系統を診断する。
図６は診断する系統の決め方を示した図である。
図６に示すように、アクセスフラグの組み合わせと前回アクセスした系統の組み合わせから診断する系統を決定する。
図６の斜線で区切った欄では、上側は診断を行う系統で、下側は前回アクセスした系統である。
【００２４】
なお、実施例ではバス系統を二重化した場合を説明したが、二重化以外の冗長化をしてもよい。
【００２５】
【発明の効果】
本発明によれば次の効果が得られる。
【００２６】
本発明では、冗長化バスに接続された制御モジュールと上位コントローラとの間に中継モジュールを介在させ、この中継モジュールがバスの冗長化制御を行っている。このため、上位コントローラは冗長化バスを意識することなく制御モジュールにアクセスすることができる。
【００２７】
本発明では、制御モジュールが上位コントローラにレスポンスを返した後にバス系統の健全性をチェックしているため、システム全体のレスポンスに影響を与えることなくバスを診断できる。
【００２８】
本発明では、ライブリストの情報に基づいてアクセスするバス系統を決めているため、バス系統の状況に応じて適切なバス系統に対してアクセスすることができる。
【００２９】
本発明では、ライブリストの情報に基づいて診断するバス系統を決めているため、バス系統の状況に応じて適切なバス系統に対して診断することができる。
【００３０】
本発明では、チェックが完了したときにライブリストの内容を更新するため、最新のバス状態の情報を保証できる。
【図面の簡単な説明】
【図１】本発明の一実施例を示す構成図である。
【図２】本発明にかかる通信制御装置の適用例を示した図である。
【図３】本発明の動作説明図である。
【図４】本発明の動作説明図である。
【図５】本発明の動作説明図である。
【図６】本発明の動作説明図である。
【符号の説明】
１１，１２  制御モジュール
２１，２２  バス
３０  上位コントローラ
４０  中継モジュール
４１  記憶手段
４１１  ライブリスト
４２１  バス選択手段
４２２  診断手段
【図１】
0004027008.tif 000002
【図２】
0004027008.tif 000003
【図３】
0004027008.tif 000004
【図４】
0004027008.tif 000005
【図５】
0004027008.tif 000006
【図６】
0004027008.tif 000007