(57)【要約】【課題】スレーブ装置が多数となった場合でも、高速かつ同時性を確保した通信が可能なマスタ／スレーブ通信方式を提供すること。【解決手段】マスタ装置は多数のスレーブ装置に対して同報通信により監視・制御命令を含む要求を送信し、各スレーブ装置はマスタ装置から指定された中継装置宛に応答を送信し、中継装置が各スレーブ装置からの応答を纏めてマスタ装置へ送信するように構成した。【選択図】図１
2008060753.tif 000002
【特許請求の範囲】
【請求項１】
マスタ装置が、多数のスレーブ装置に制御命令等を含む要求を送信し、各スレーブ装置からの該要求に対する応答を受信する、マスタ／スレーブ通信方式であって、
前記マスタ装置は、前記要求を前記多数のスレーブ装置に対して同報通信にて送信し、
前記各スレーブ装置は、前記要求を受信すると、該要求に対する応答を前記マスタ装置が指定した中継装置に送信し、
前記中継装置は、受信した前記スレーブ装置の応答を複数纏めて前記マスタ装置に送信する、
ことを特徴とする通信方式。
【請求項２】
前記スレーブ装置の応答送信先である中継装置の指定は前記要求に含まれるものであって、前記マスタ装置は、通信経路の負荷や前記中継装置の故障等に対応して、前記スレーブ装置の応答先である前記中継装置の指定を変更することを特徴とする請求項１記載の通信方式。
【請求項３】
前記マスタ装置は、前記中継装置からの応答時間を監視し、規定の時間を越えても応答が無い場合、該中継装置が故障したとすることを特徴とする請求項１または２記載の通信方式。
【請求項４】
前記マスタ装置は、前記中継装置からの応答を解析し、該応答に全てのスレーブ装置からの応答が揃っていない場合、該中継装置において通信負荷が集中していることを予測することを特徴とする請求項１ないし３の何れか１項に記載の通信方式。
【請求項５】
前記中継装置は、前記スレーブ装置からの応答時間を監視し、規定の時間を越えても応答が無い場合、該スレーブ装置から応答がないことを前記マスタ装置に通知し、
前記マスタ装置は、所定の回数連続して前記応答が無いと通知されたスレーブ装置について、脱落したとして管理する、
ことを特徴とする請求項１ないし４の何れか１項に記載の通信方式。
【請求項６】
前記中継装置は、上位中継装置と下位中継装置とからなり、前記各スレーブ装置は、前記要求を受信すると、該要求に対する応答を前記マスタ装置が指定した前記下位中継装置に送信し、該下位中継装置は、受信した前記スレーブ装置の応答を複数纏めて前記マスタ装置が指定した前記上位中継装置に送信し、該上位中継装置は、受信した前記下位中継装置の応答を纏めて前記マスタ装置に送信する、
ことを特徴とする請求項１記載の通信方式。
【請求項７】
マスタ装置と多数のスレーブ装置と２台以上の中継装置とからなるマスタ／スレーブ通信システムであって、
前記マスタ装置は、
前記多数のスレーブ装置の制御等を行うための命令を含む要求を作成する要求電文作成部と、
前記要求を前記スレーブ装置及び前記中継装置に対して同報通信にて送信する送信部と、
前記要求に対する応答を受信する受信部と、を備え、
前記スレーブ装置は、
前記マスタ装置から送信される前記要求を受信する受信部と、
前記要求に対する応答を作成する応答電文作成部と、
前記応答を前記マスタ装置が指定する前記中継装置に送信する送信部と、を備え、
前記中継装置は、
前記マスタ装置から送信される前記要求を受信し、また、前記スレーブ装置から送信される前記応答を受信する受信部と、
前記受信部にて受信した前記スレーブ装置からの応答を複数纏め、自局からマスタ装置への応答として作成する応答電文作成部と、
前記作成した応答を前記マスタ装置に送信する送信部と、
を備えることを特徴とするマスタ／スレーブ通信システム。
【請求項８】
前記マスタ装置は、更に、
通信経路の負荷や前記中継装置の故障を判断する負荷・故障判断部と、
前記負荷・故障判断部の判断に基づいて中継ルートを選定し、前記スレーブ装置が前記応答を送信する応答先を決定する中継ルート選定部とを備え、
前記要求電文作成部は、前記中継ルート選定部によって選定された中継ルートに基づいて、前記スレーブ装置の応答先である前記中継装置を変更指定する内容を含む前記要求を作成する、ことを特徴とする請求項７記載の通信システム。
【請求項９】
前記中継装置は、更に、
前記スレーブ装置からの応答時間を監視し、規定の時間を越えても応答が無い場合、該スレーブ装置からの応答を無しとするスレーブ装置故障判定部を備え、
前記応答電文作成部は、前記応答無しと判定されたスレーブ装置に対応する応答を無応答の内容にして、複数のスレーブ装置からの応答を纏めて自局からマスタ装置への応答を作成し、
前記マスタ装置は、更に、
前記中継装置から送信された応答に基づいて、前記複数のスレーブ装置の制御情報および監視情報を管理する、スレーブ装置制御・監視情報管理部を備え、
該スレーブ装置制御・監視情報管理部は、前記中継装置から受信した応答により、所定の回数連続して応答無しであることを通知されたスレーブ装置については、該スレーブ装置が脱落したとして管理する、ことを特徴とする請求項７または８記載の通信システム。
【請求項１０】
多数のスレーブ装置に制御命令等を含む要求を送信するマスタ装置であって、
前記要求を作成する要求電文作成部と、
前記要求を前記スレーブ装置、及び前記スレーブ装置からの応答を中継する複数の中継装置に対して同報通信にて送信する送信部と、
前記中継装置によって纏められた前記要求に対する複数のスレーブ装置からの応答を、該中継装置からの応答として受信する受信部と、
を備えることを特徴とするマスタ装置。
【請求項１１】
前記マスタ装置は、更に、
通信経路の負荷や前記中継装置の故障を判断する負荷・故障判断部と、
前記負荷・故障判断部の判断に基づいて中継ルートを選定し、前記スレーブ装置が応答を送信する応答先を決定する中継ルート選定部と、を備え、
前記要求電文作成部は、前記中継ルート選定部によって選定された中継ルートに基づいて、前記スレーブ装置の応答先である前記中継装置を変更指定する内容を含む前記要求を作成する、ことを特徴とする請求項１０記載のマスタ装置。
【請求項１２】
マスタ装置から送信される制御命令等を含む要求を受信し、該要求に基づいて処理を行うスレーブ装置であって、
前記マスタ装置から同報通信にて送信される前記要求を受信する受信部と、
前記要求に対する応答を作成する応答電文作成部と、
前記要求に含まれる、自局が応答を送信する応答先の中継装置を判断する中継ルート判断部と、
前記判断された中継装置に前記応答を送信する送信部と、
を備えることを特徴とするスレーブ装置。
【請求項１３】
制御命令等を含む要求を送信するマスタ装置と、該要求を受信し、該要求に対する応答を送信する多数のスレーブ装置との通信を中継する中継装置であって、
前記マスタ装置から同報通信にて送信される前記要求を受信し、また、前記スレーブ装置から送信される前記応答を受信する受信部と、
前記要求に含まれる、自局を応答先とする前記スレーブ装置を把握し、該スレーブ装置からの応答を監視するスレーブ装置応答監視部と、
前記スレーブ装置応答監視部が監視するスレーブ装置からの応答を複数纏め、自局からマスタ装置への応答として作成する応答電文作成部と、
前記作成した応答を前記マスタ装置に送信する送信部と、
を備えることを特徴とする中継装置。
【請求項１４】
前記中継装置は、更に、
前記スレーブ装置からの応答時間を監視し、規定の時間を越えても応答が無い場合、該スレーブ装置からの応答を無しとするスレーブ装置故障判定部を備え、
前記応答電文作成部は、前記応答無しと判定されたスレーブ装置に対応する応答を無応答の内容にして、複数のスレーブ装置からの応答を纏めて応答電文を作成する、ことを特徴とする請求項１３記載の中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マスタ／スレーブ通信方式に関わり、更に詳しくは、スレーブ装置が多数となった場合でも高速かつ同時性を確保した通信が可能なマスタ／スレーブ通信方式に関わる。
【背景技術】
【０００２】
従来、マスタ／スレーブ通信方式により、マスタ装置が複数のスレーブ装置に対して、制御及び監視を行う場合、マスタ装置が複数あるスレーブ装置のうち宛先となるスレーブ装置を順次切替えながら繰り返し通信する、ポーリング方式がとられることが主流であった。
【０００３】
しかしながら、この方式では、マスタ装置が各スレーブ装置へ順次ポーリング通信を行うため、スレーブ装置数が多くなった場合、ポーリング周期が長くなり、同時性を確保してスレーブ装置の監視および制御を行うことは不可能であった。
【０００４】
このような同時性の問題を解決するために、マスタ装置がスレーブ装置へ同報送信により監視や制御を行う方式が考え出された。しかしながら、この方式においては、スレーブ装置からマスタ装置への応答が同時に発生するため、スレーブ装置が多数となった場合には、マスタ装置がスレーブ装置からの応答を全て受け取れないという問題が発生した。
【０００５】
特許文献１では、上述のような同報通信に対する各機器からの応答電文の衝突を防止するための通信装置が開示されている。すなわちスレーブ装置は、受信した電文が複数の機器宛であることを認識すると、タイミングをずらして応答電文を送信する。従って、この方法ではマスタ装置側での応答の取りこぼしなどの問題は解決されているが、マスタ装置がすべてのスレーブ装置から応答を受信するまでにある程度の時間が必要となり、通信の同時性を実現するのは困難である。
【特許文献１】特開２００５−７９９５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述のように、従来のマスタ／スレーブ通信方式においては、スレーブ装置が多数になった場合に、高速且つ同時性を確保し、マスタ装置がスレーブ装置の監視および制御するための通信を行うことは不可能であった。
【０００７】
そこで本発明の課題は、スレーブ装置が多数となった場合でも、高速かつ同時性を確保した通信が可能なマスタ／スレーブ通信方式を提供することにある。
【課題を解決するための手段】
【０００８】
上述した課題を解決するために本発明では次のように構成した。
すなわち、マスタ装置は多数のスレーブ装置に対して同報通信により監視・制御命令を含む要求を送信し、スレーブ装置は受信した要求を処理後、マスタ装置に応答を送信するが、多数のスレーブ装置がそれぞれマスタ装置に応答を返信するとマスタ装置では受信処理等を行えない可能性があるため、各スレーブ装置は先ずマスタ装置から指定された中継装置宛に応答を送信し、中継装置が各スレーブ装置からの応答を纏めてマスタ装置へ送信するように構成した。
【０００９】
この構成により、マスタ装置が多数のスレーブ装置に対して同報通信にて要求を送信するため、各スレーブ装置へ高速に制御命令等を送信することができ、かつスレーブ装置側の受信タイミングをほぼ同時にすることが可能である。また、多数のスレーブ装置からの応答を一旦中継装置にて纏め、中継装置からマスタ装置へ送信するため、マスタ装置は中継装置数分の応答を処理すればよく、マスタ装置での取りこぼしを防止し、ある程度の同時性を確保した応答の受信を行うことが可能である。このように、本発明の通信方式によれば、スレーブ装置が多数となった場合でも、高速で且つ同時性を確保した大規模なマスタ／スレーブ通信を実現可能である。
【００１０】
更に、上述の構成において、各スレーブ装置が応答を返信する中継装置を、マスタ装置が同報通信により送信する要求によって変更指定できるような構成とする。これにより、システム運用中に発生する通信負荷の集中や中継装置の故障に対して、動的に対応することが可能である。
【発明の効果】
【００１１】
本発明によれば、マスタ／スレーブ通信において、スレーブ装置が多数となった場合でも、高速かつ同時性を確保したマスタ装置−スレーブ装置間の通信が可能である。これにより、従来は困難であった、マスタ装置が多数のスレーブ装置に対して高速且つ同時性を確保した監視および制御等を行う監視制御システムを構築することが可能である。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照して、本発明の実施の形態について説明する。
本発明の実施の形態では、Ｅｔｈｅｒｎｅｔ回線（米国Ｘｅｒｏｘ  Ｃｏｒｐ．の登録商標）を用いて、マスタ装置が多数のスレーブ装置に対して高速で且つ同時性を確保した監視制御システムを構築することを例に、以下に説明する。
【００１３】
尚、以下ではシステム例として実施例を二つ挙げる。まず実施例１について、その通信システムの構成を図１に示す。
図１のシステム構成では、マスタ装置１に対して６４台のスレーブ装置３−１〜３−６４が存在し、スレーブ装置１６台毎にスレーブ装置３を束ねるための中継装置２−１〜２−４が４台、Ｅｔｈｅｒｎｅｔ回線を介して接続されている。スレーブ装置３、中継装置２にはそれぞれユニークな識別番号が予め割り当てられている。以下、スレーブ装置３に割り当てられた識別番号をＩＤと言い、中継装置２に割り当てられた識別番号をホストインデックスと言うことにする。
【００１４】
図１のようなシステム構成において、まず、マスタ装置１はスレーブ装置３−１〜３−６４及び中継装置２−１〜２−４に対して、同報通信（ブロードキャスト）により監視や制御のための命令等を含む要求を送信する。そして、各スレーブ装置３−１〜３−６４は受信した要求に含まれる命令等を処理した後、マスタ装置１が指定する返信先の中継装置２−１〜２−４にそれぞれ応答を送信する。中継装置２−１〜２−４では、それぞれ、各スレーブ装置３−１〜３−６４からの応答を纏めてマスタ装置１に送信する。すなわち、図２に示すような通信シーケンスとなる。
【００１５】
まず、図２の（１）で、マスタ装置１が要求を全局（中継装置２−１〜２−４及びスレーブ装置３−１〜３−６４）にブロードキャストする。次に（２）で、各スレーブ装置３−１〜３−６４は要求を受信した後、マスタ装置１が指定する応答先の中継装置２−１〜２−４にそれぞれ応答をユニキャストにより送信する。図２では、スレーブ装置３−１〜３−１６は中継装置２−１に、スレーブ装置３−１７〜３−３２は中継装置２−２に、スレーブ装置３−３３〜３−４８は中継装置２−３に、スレーブ装置３−４９〜３−６４は中継装置２−４に応答をユニキャストにより送信することを示している。（３）で、各中継装置２−１〜２−４は、それぞれスレーブ装置３からの応答を纏め、マスタ装置１にユニキャストにより送信する。
【００１６】
このように、マスタ装置１が多数のスレーブ装置３に対して同報通信にて要求を送信するため、各スレーブ装置へ高速に制御命令等を送信することができ、かつスレーブ装置側の受信タイミングをほぼ同時にすることが可能である。また、多数のスレーブ装置からの応答を一旦中継装置にて纏め、中継装置からマスタ装置へ送信するため、マスタ装置は中継装置数分の応答を処理すればよく、マスタ装置での取りこぼしを防止し、ある程度の同時性を確保した応答の受信を行うことが可能である。
【００１７】
さて、次に、このような通信を実現するためのマスタ装置１、中継装置２、スレーブ装置３の構成についてそれぞれ図３〜図５を参照して説明し、またそれぞれの装置間でやりとりされる通信フレームについて図６〜図９を参照して説明をする。
【００１８】
まず、マスタ装置１の構成であるが、マスタ装置１は、図３に示すように、送信部１１、受信部１２、受信応答解析部１３、負荷・故障判断部１４、スレーブ装置制御・監視情報管理部１５、中継ルート選定部１６、要求電文作成部１７の各部を備える。
【００１９】
送信部１１は、中継装置２やスレーブ装置３に対して通信フレームを送信する。マスタ装置１から各装置への送信される、要求に対応する通信フレーム（要求フレーム）には、マスタ装置１がスレーブ装置３を制御および監視する制御・監視命令、およびスレーブ装置３が応答を送信する中継装置２の指定や各装置のアドレスなどが含まれる。フレームについては後に詳しく説明する。
【００２０】
受信部１２は、中継装置２からの応答に対応する応答フレームを受信する。
受信応答解析部１３は、中継装置２からの応答に基づき、（ａ）通信負荷の予測、（ｂ）中継装置２の故障、（ｃ）スレーブ装置３の脱落、を解析する。
【００２１】
まず、（ａ）通信負荷の予測についてであるが、次のように解析される。
中継装置２はそれぞれが束ねるスレーブ装置３からの応答を纏めて送信する、すなわち、例えば中継装置２−１はスレーブ装置３−１〜３−１６の応答を纏めて送信するが、そのうち、応答がないスレーブ装置３、すなわち例えば、規定の応答時間を待ってもスレーブ装置３−１から応答がない場合は、スレーブ装置３−１の応答は無しとして、スレーブ装置３−１〜３−１６の応答をまとめて送信する（この「応答無し」については、フレームの説明のところに別途説明する。）。そして、マスタ装置１では、中継装置２−１からの応答のうち、全てのスレーブ装置３−１〜３−１６の応答が揃っていない場合、すなわち、応答無しのスレーブ装置が存在する場合には、該中継装置２−１に通信負荷が集中していることを予測し、負荷・故障判断部１４に伝達する。
【００２２】
次に（ｂ）中継装置２の故障については、次のように解析される。
該受信応答解析部１３は、中継装置２からの応答時間を監視し、規定の時間を越えても応答がない場合、該中継装置２が故障したとし、負荷・故障判断部１４に伝達する。
【００２３】
次に（ｃ）スレーブ装置３の脱落については、次のように解析される。
中継装置２からの応答に、あるスレーブ装置３の応答が無かったことが含まれている場合に、その後も引き続き同一のスレーブ装置３からの応答が無いことが中継装置２から通知される場合に、該当するスレーブ装置３が脱落したとして、スレーブ装置制御・監視情報管理部１５に伝達する。
【００２４】
尚、（ａ）の通信負荷の予測、及び（ｃ）のスレーブ装置３の脱落のいずれも、中継装置２からの応答に含まれるスレーブ装置３の「応答無し」に基づいて判断しているが、（ａ）、（ｃ）それぞれの判断の違いは、スレーブ装置３の脱落は、同一のスレーブ装置３について予め決められた回数連続して応答が無かったことが通知された場合に該スレーブ装置３を脱落したと判断し、そうでない場合には、中継装置２で通信フレームが取りこぼされたと判断して通信負荷の集中を予測する点にある。
【００２５】
図３の説明に戻り、負荷・故障判断部１４は、前記受信応答解析部１３の応答フレームの解析に基づいて、負荷の集中している中継装置２や故障が生じている中継装置２を判断し、中継ルート選定部１６に伝達する。
【００２６】
スレーブ装置制御・監視情報管理部１５は、スレーブ装置３からの応答に基づき、各スレーブ装置３の状態を管理する。例えば、スレーブ装置３に接続された外部機器から取り込んだデータや接点状態等を管理する。また、前記受信応答解析部１３にて脱落したと判断されたスレーブ装置３については、該装置は脱落したとして管理される。
【００２７】
中継ルート選定部１６は、負荷・故障判断部１４から伝達された、負荷の集中している中継装置２や故障が生じている中継装置２について、それを回避するために、スレーブ装置３が応答を返信する中継ルートを新たに選定し、決定する。決定された中継ルートは要求電文作成部１７に伝達される。
【００２８】
要求電文作成部１７は、中継装置２やスレーブ装置３に対して送信される通信フレームを作成する。上述のように、マスタ装置１から他の装置へ送信される要求フレームには、制御・監視命令、中継ルートの指定等が含まれるが、要求電文作成部１７では、前記スレーブ装置制御・監視情報管理部１５に管理される情報に基づきスレーブ装置３の制御命令、監視命令を作成し、また、中継ルート選定部１６により新たな中継ルートが決定されている場合はそのルートを反映した通信フレームを作成する。そして、作成されたフレームは上述の送信部１１から各装置に対して送信される。
【００２９】
次に、中継装置２の構成であるが、中継装置２は、図４に示すように、送信部２１、受信部２２、受信内容解析部２３、スレーブ応答解析・格納部２４、スレーブ装置応答監視部２５、スレーブ装置故障判定部２６、応答電文作成部２７の各部を備える。
【００３０】
送信部２１は、マスタ装置１に対して応答となる通信フレームを送信する。
受信部２２は、マスタ装置１から同報通信により送信される制御・監視命令等を含む要求フレームや、スレーブ装置３からユニキャストにより送信される応答フレームを受信する。
【００３１】
受信内容解析部２３は、受信部２２にて受信した要求フレームや応答フレームの通信フレームを解析し、受信した通信フレームがスレーブ装置３からの応答である場合、該フレームをスレーブ応答解析・格納部２４に伝達し、受信したフレームがマスタ装置１からの要求である場合、該フレームをスレーブ装置応答監視部２５に伝達する。
【００３２】
スレーブ応答解析・格納部２４では、自局に応答をするとマスタ装置１によって指定されたスレーブ装置３からの応答であるかを判断し、該当する場合は受信した通信フレームの内容を不図示の記憶部に格納する。該記憶部には、自局に応答すると指定された各スレーブ装置３に対応して、応答内容を格納する記憶領域が確保されている。
【００３３】
スレーブ装置応答監視部２５は、同報通信によりマスタ装置１から受信した通信フレームから、自局に応答すると指定されたスレーブ装置３群を管理し、それぞれのスレーブ装置３からの応答時間を監視する。規定の時間を越えても応答がないスレーブ装置３については、該情報をスレーブ装置故障判定部２６に伝達する。
【００３４】
スレーブ装置故障判定部２６では、スレーブ装置応答監視部２５から伝達されたスレーブ装置３について、応答無しとし、前記記憶部における対応するスレーブ装置３の記憶領域に応答無しの内容を格納する。（「応答無し」については後述。）
応答電文作成部２７では、前記記憶部に格納された、複数のスレーブ装置３からの応答を纏め、一つの通信フレームを作成する。この際、スレーブ装置故障判定部２６で応答無しとされたスレーブ装置３については、応答無しの内容のまま通信フレームを作成する。
【００３５】
次に、スレーブ装置３の構成であるが、スレーブ装置３は、図５に示すように、送信部３１、受信部３２、受信電文解釈部３３、制御部３４、中継ルート判断部３５、応答電文作成部３６、監視部３７の各部を備える。
【００３６】
受信部３２は、マスタ装置１から同報通信により送信される制御・監視命令等を含む要求フレームを受信する。
受信電文解釈部３３は、受信した要求フレームから制御・監視命令を解釈し、該スレーブ装置３に接続された制御対象３８または監視対象３９をそれぞれ制御または監視する制御部３４、監視部３７に命令を伝達する。
【００３７】
中継ルート判断部３５は、受信した要求フレームから自局が送信する中継先である中継装置２を認識する。
制御部３４は、受信電文解釈部３３から伝達された制御命令に基づき、制御対象３８を制御し、その制御結果を応答電文作成部３６に伝達する。制御結果とは、例えば正常制御完了や、異常制御発生などの制御の状態を報告するものである。
【００３８】
監視部３７は、受信電文解釈部３３から伝達された監視命令に基づき、監視対象３９を監視し、その監視結果を応答電文作成部３６に伝達する。監視結果とは、例えば正常、異常発生などの監視対象の状態を報告するものである。
【００３９】
応答電文作成部３６では、制御部３４および監視部３７から伝達された結果を、スレーブ内制御・監視情報として含む応答フレームを作成し、送信部３１に伝達する。
送信部３１では、中継ルート判断部３５で認識された中継先である中継装置２に対して作成された応答フレームを送信する。
【００４０】
以上、図３〜図５に示したように、実施例１の通信システムにおける各装置は構成される。
続いて、実施例１の通信でやり取りされる通信フレームの構成について説明する。
【００４１】
実施例１では、Ｅｔｈｅｒｎｅｔ回線を使用するため、図６で示すように、Ｅｔｈｅｒｎｅｔ回線でのＵＤＰ／ＩＰの上位通信プロトコルとして位置づけ、ＵＤＰのデータ内に本通信方式のフレームを格納して通信する。
【００４２】
本通信方式のフレーム部は、ヘッダ部とデータ部からなり、詳細はそれぞれ図７〜図９を参照して説明する。
まず、マスタ装置１から各装置に対してブロードキャストして送信される監視、制御命令を含む要求フレームの構成を図７に示す。この通信フレームは、図２の（１）で送信される通信フレームである。
【００４３】
まず、図７の上から順にそれぞれ説明する。
コマンド（７１）：フレーム種別を表す。フレームの種別としては、要求フレーム、応答フレームなどがあり、ここでは要求フレームに該当するコードが格納される。
【００４４】
ステータス（７２）：本通信プロトコル上で検出した状態が格納される。すなわち、マスタ装置１から全装置（中継装置２およびスレーブ装置３）へ通知する通信状態コードを格納する。通信状態コードには、全正常通信中、中継装置異常検出中、スレーブ装置異常検出中などがある。
【００４５】
レングス（７３）：レングス以降のバイトサイズが格納される。
システムステータス（７４）：本通信プロトコルを使用したシステムの運用状態が格納される。すなわち、マスタ装置１から全装置（中継装置２及びスレーブ装置３）へ通知する現在のシステム運用状態をコード化して格納する。システム運用状態コードには、通常運転中、軽故障発生中、重故障発生中、縮小運転中、メンテナンス運転中などがある。
【００４６】
ネットワークアドレス（７５）：システム内で共通使用するＩＰアドレスの２４ビットが格納される。
中継ホストアドレス１〜４（７６）：中継装置２−１〜２−４のＩＰアドレスの下位８ビットが格納される。
【００４７】
中継タイムアウト時間１〜４（７７）：中継装置２−１〜２−４がスレーブ装置３からの応答を待つタイムアウト時間が格納される。
スレーブ１〜６４制御指令（７８）：スレーブ装置３−１〜３−６４への監視、制御などの命令要求が格納される。このスレーブ制御指令の部分は、スレーブ装置３のホストアドレス（７８ａ）と、スレーブ装置３の監視・制御命令（７８ｂ）の二つから構成される。
【００４８】
スレーブ１〜６４中継ホストインデックス（７９）：スレーブ装置３−１〜３−６４が応答を送信する中継装置２のホストインデックスが格納される。
マスタ装置１は、図７に示した通信フレーム（要求フレーム）をブロードキャストにて全装置に送信する。各スレーブ装置３は、図７に示したフレーム内の自局ＩＤ位置に格納されている制御指令（スレーブ１〜６４制御指令（７８））をもとに、自局に接続する制御対象もしくは監視対象を制御または監視し、結果をスレーブ内制御・監視情報として含む応答フレームを送信する。その際、各スレーブ装置３では、返信先の中継装置２を決定するために、マスタ装置からの要求フレーム（図７）内の自局ＩＤに対応するスレーブ１〜６４中継ホストインデックス（７９）に指定される中継装置２のアドレスに応答を送信する。
【００４９】
各中継装置２では、マスタ装置１からの要求フレーム（図７）を受信した時点で、マスタ装置１が、自局に返信することを指定したスレーブ装置３の台数、及び該スレーブ装置３のアドレスを記憶する。これは、該要求フレーム内のスレーブ装置１〜６４中継ホストインデックス（７９）に自局に対応するホストインデックスが指定されている数をカウントし、また対応するスレーブ装置ホストアドレス（７８ａ）を記憶することで実現される。そして、その後のスレーブ装置３からの応答受信に備える。
【００５０】
次に、中継装置２が各スレーブ装置３から受信する応答フレームを図８に示す。この応答フレームは、図２の（２）で送信される通信フレームである。図７と同様に、図８の上から順にそれぞれ説明する。
【００５１】
コマンド（８１）：フレーム種別を表す。フレームの種別としては、要求フレーム、応答フレームなどがあり、ここでは応答フレームに該当するコードが格納される。
ステータス（８２）：本通信プロトコル上で検出した状態が格納される。マスタ装置１から受信した要求フレームの解析内容により、スレーブ装置３からマスタ装置１へ通知する必要がある状態コードを格納する。通信状態コードには、正常通信、受信フレーム異常、制御内容異常などがある。
【００５２】
レングス（８３）：レングス以降のバイトサイズが格納される。
スレーブホストアドレス（８４）：応答を送信するスレーブ装置自身のＩＰアドレス下位８ビットが格納される。
【００５３】
スレーブステータス（８５）：マスタ装置１へ通知するスレーブ装置３の状態をコード化して格納する。スレーブ状態コードには、通常運転中、軽故障発生中、重故障発生中などがある。
【００５４】
スレーブ内制御・監視情報（８６）：スレーブ装置３に接続された制御対象３８や監視対象３９である外部機器（例えばディジタル入力接点やアナログ入力など）から取り込んだデータや接点状態、制御処理に対する結果などが格納される。マスタ装置１では、この情報をもとに、次の制御内容を決定し、次の監視・制御命令を送信してくることになる。
【００５５】
次に、中継装置２は、図８に示した応答フレームを複数のスレーブ装置３から受信し、それらを纏めて、図９に示すような、中継装置２からマスタ装置１への応答フレームを作成する。この応答フレームは、図２の（３）で送信される通信フレームである。図７、図８と同様に、図９の上から順にそれぞれ説明する。尚、図９は、スレーブ装置３−１〜３−１６の応答フレームを纏める中継装置２−１の応答フレームを示している。
【００５６】
コマンド（９１）：フレーム種別を表す。フレームの種別としては、要求フレーム、応答フレームなどがあり、ここでは応答フレームに該当するコードが格納される。
ステータス（９２）：本通信プロトコル上で検出した状態が格納される。マスタ装置１から受信した要求フレームやスレーブ装置３から受信した応答フレームの解析内容により、中継装置２からマスタ装置１へ通知する必要がある状態コードを格納する。状態コードには、正常通信、受信フレーム異常、制御内容異常などがある。
【００５７】
レングス（９３）：レングス以降のバイトサイズが格納される。
スレーブ応答フレーム１〜１６（９４）：図８に示したスレーブ装置３−１〜３−１６から受信した応答フレームのうち、レングス以降のデータがそのまま格納される。
以上のように、図７に示したマスタ装置１から送信された要求フレームに対して、スレーブ装置３が図８に示した応答フレームを中継装置２に送信し、中継装置２はマスタ装置１に送信するための応答フレーム（図９）に纏め上げ、マスタ装置１に送信する。マスタ装置１では、図９の応答フレームにおけるスレーブ応答フレーム（９４）のスレーブ内制御・監視情報（８６）を、スレーブ装置制御・監視情報管理部１５にて、各スレーブ装置の制御・監視情報として管理する。マスタ装置１は、応答である各スレーブ装置３の制御・監視情報に基づいて次の制御、監視命令を作成することになる。
【００５８】
尚、上述したように、各中継装置２には、スレーブ装置３からの応答を待つタイムアウト時間が指定されており（図７の要求フレームの中継タイムアウト時間（７７））、中継装置２のスレーブ装置応答監視部２５（図４）において、このタイムアウト時間を越えても応答がないスレーブ装置３については応答無しとされて、応答無しの内容で中継装置２にて複数の応答が纏め上げられる。例えば、スレーブ装置３−１の応答が無い場合、図９の応答フレームのうちスレーブ応答フレーム１（９４）内のスレーブステータス（８５）部分に無応答コードがセットされることで、応答無しの内容とされ、他のスレーブ装置３−２〜３−１６の応答フレームと共に纏められて、中継装置２からマスタ装置１に送信される。
【００５９】
マスタ装置１では、受信応答解析部１３（図３）にて中継装置２からの応答におけるスレーブ応答フレーム（９４）部分が解釈され、通信負荷の集中の予測、または、スレーブ装置３の脱落が解析される。すなわち、スレーブ応答フレーム（９４）のスレーブステータス（８５）部分に無応答コードが格納されている場合、中継装置２において通信負荷の集中が発生しているか、または、無応答コードが格納されているスレーブ装置３は脱落の可能性があると判断する。その後も引き続き、連続して数回、同一のスレーブ装置３が無応答であることが通知されるとそのスレーブ装置３は脱落したと判断される。脱落が判断されたスレーブ装置３は、マスタ装置１のスレーブ装置制御・監視情報管理部１５にて脱落したとして管理される。
【００６０】
以上、実施例１の通信システムでは、図６〜図９に示すような通信フレームにて通信を行うことを説明した。
実施例１の中継装置２としては、各スレーブ装置３からの応答フレームを順次受信バッファにより引き抜き処理を行うが、通信回線での速度が速いと引き抜き処理が間に合わないことが想定される。この場合、引き抜き処理が間に合わなくても、受信バッファを複数持つことで何フレームかは、受信バッファ上に確保することができるが、その受信バッファ数をオーバーしたフレームは取りこぼされることが懸念される。このような取りこぼしは中継装置２に通信負荷が集中してしまう場合などに発生することであるが、通信を正常に継続するためにも中継装置２が纏めるスレーブ装置３の数を抑制する必要がある。また、中継装置２自身が故障してしまった場合、その中継装置２が纏めるスレーブ装置３からの応答はマスタ装置１に到達できないことになり、通信が正常に行われない。
【００６１】
よって、通信の正常な状態を保つためにも、通信負荷の集中や中継装置２の故障が発生している場合に、該当する中継装置２をスレーブ装置３が中継ルートとして使用しないように変更可能であることが必要である。
【００６２】
実施例１の通信システムにおけるマスタ装置１は、上述したように、各通信における応答を解析し、通信負荷の集中や中継装置２の故障を判断可能なように構成されている（図３の受信応答解析部１３及び負荷・故障判断部１４）。そして、通信負荷の集中や中継装置２の故障に対応するために、新たな中継ルートを選定し変更指定することが可能なように構成されている（図３の中継ルート選定部１６）。以下に、本実施例における通信負荷の集中や中継装置の故障に対応するための処理の詳細について、図１０及び図１１を参照しながら説明する。
【００６３】
図１０に、中継ルートの変更を行う場合の通信シーケンスを示す。ここでは、中継装置２−２に通信負荷が集中する場合を例に、中継ルートの変更処理について説明するが、これが中継装置２−２の故障であってもかまわないし、また、他の中継装置２における通信負荷集中や故障であっても同様に処理が行われる。
【００６４】
まず、図１０の（１）で、マスタ装置１が監視や制御命令を含む要求フレームを全局（中継装置２−１〜２−４及びスレーブ装置３−１〜３−６４）にブロードキャストする。次に、（２）で各スレーブ装置３は、受信した要求フレームに含まれる命令を処理した後、マスタ装置１が指定する応答先の中継装置２−１〜２−４にそれぞれ応答フレームをユニキャストにより送信する。ところが、（２α）では、他の通信負荷のため、本通信のフレームであるスレーブ装置３−３２からの通信フレームを中継装置２−２で取りこぼしてしまっている。よって、（３）では、全スレーブ装置の応答がまとまった状態で中継装置２−１からマスタ装置１に応答が行われている一方で（３α）では、全スレーブ装置の応答が揃っていない状態で応答が行われている。
【００６５】
そこで、マスタ装置１において、中継装置２−２からの応答が、全スレーブ装置３−１７〜３−３２の応答が揃っていないことから、中継装置２−２部分で通信負荷の集中が発生していることを予測（４）し、次の要求フレーム送信時には、スレーブ装置３−１７〜３−３２の応答を送信する中継装置を中継装置２−４に変更する（５）。
【００６６】
図１０の（５）の、中継装置の指定変更について図１１を参照して説明する。
図１１に、中継装置の変更を行うための要求フレームを示す。該要求フレームは図７で説明したように、コマンド（７１）、ステータス（７２）、レングス（７３）、システムステータス（７４）、ネットワークアドレス（７５）、中継ホストアドレス１〜４（７６）、中継タイムアウト時間１〜４（７７）、スレーブ制御指令１〜６４（７８）、スレーブ１〜６４中継ホストインデックス（７９）から成る。
【００６７】
図１１では、中継ホストアドレス１には、中継装置２−１のホストアドレス、“１０”が格納されており、その次の領域に中継装置２−１の中継タイムアウト時間、“６０”が格納されている。また、中継ホストアドレス４には、中継装置２−４のホストアドレス、“１４”が格納されており、その次の領域に中継装置２−４の中継タイムアウト時間“６０”が格納されている。
【００６８】
スレーブ１制御指令には、スレーブ装置３−１に対するマスタ装置１からの制御命令等が格納されており、その次の領域にはマスタ装置１からスレーブ装置３−１に対してどの中継装置に応答を送信するかを示す中継装置のホストインデックスが指定されている。
【００６９】
ここで、スレーブ装置３−１が応答を送信する中継装置を、中継装置３−１から中継装置３−４に変更する場合、スレーブ１中継ホストインデックスを１から４に変更する（図１１の１→４）。スレーブ装置３−１は、中継ホストインデックスが１に指定されていた場合は中継ホストアドレス１に格納された中継装置２−１のホストアドレス“１０”を参照して該当アドレスに応答を送信するが、中継ホストインデックスが４に変更されたため、中継ホストアドレス４に格納された中継装置２−４のホストアドレス“１４”を参照して該当アドレスに応答を送信する。このように、要求フレームの内容を変更することによって、スレーブ装置３−１が応答を送信する中継装置２を変更することができる。
【００７０】
その後、図１０の（６）にて、マスタ装置１から図１１のように変更された要求フレームをブロードキャストする。すると、（７）にて、スレーブ装置３−１〜３−１６及びスレーブ装置３−１７〜３−３２からの応答は、中継装置２−１および２−４によってそれぞれ全て受信され、纏められて、（８）にて、全てのスレーブ装置の応答がまとまった状態で、マスタ装置１に送信される。
【００７１】
このように、実施例１では、システム運用中に発生する通信負荷の集中や中継装置の故障を、マスタ装置１が各通信の応答を踏まえて判断し、マスタ装置１が次に送信する要求フレームで、それを回避する中継ルートを指定し、システム運用中の通信の障害に動的に対応することが可能である。
【００７２】
以上、図１〜図１１を参照し、本発明の実施例１について詳細に説明した。
次に、実施例１の変形例である実施例２について説明する。
実施例２は、実施例１とほぼ同一であるが、マスタ装置１が一度に処理できる応答フレーム数に制約がある場合に、マスタ装置１とスレーブ装置３の間に上位中継装置と下位中継装置を設け、スレーブ装置からの応答を一度、下位中継装置にて纏め、更に下位中継装置の応答を上位中継装置にて纏め、該上位中継装置からマスタ装置に纏めた応答を送信するというものである。
【００７３】
図１２に実施例２の通信システムの構成を示す。
実施例２のシステムは、マスタ装置１に対して  ６４台のスレーブ装置３−１〜３−６４が存在し、スレーブ装置１６台毎にスレーブ装置を束ねるための下位中継装置６−１〜６−４が４台、下位中継装置を束ねるための上位中継装置５−１〜５−２が２台、Ｅｔｈｅｒｎｅｔ回線を介して接続されている。図１に示した実施例１のシステムとの違いは、中継装置２に相当する部分を、上位中継装置５と下位中継装置６とに分けた点にあり、他の部分は同一なので同一の符号を付してある。
【００７４】
図１２のシステム構成において、まず、マスタ装置１はスレーブ装置３−１〜３−６４及び上位中継装置５−１〜５−２、下位中継装置６−１〜６−４に対して、同報通信（ブロードキャスト）により監視や制御のための命令を含む要求を送信する。そして、各スレーブ装置３−１〜３−６４は、マスタ装置１が指定する返信先の下位中継装置６−１〜６−４にそれぞれ応答を送信する。下位中継装置６−１〜６−４では、それぞれ、各スレーブ装置３−１〜３−６４からの応答を纏めてマスタ装置１が指定する上位中継装置５−１〜５−２にそれぞれ応答を送信し、上位中継装置５−１〜５−２が纏めた応答をマスタ装置１に送信する。
【００７５】
すなわち、図１３に示すような通信シーケンスとなる。
まず、図１３の（１）で、マスタ装置１が監視や制御命令を含む要求フレームを全局（上位中継装置５−１〜５−２、下位中継装置６−１〜６−４及びスレーブ装置３−１〜３−６４）にブロードキャストする。次に（２）で、スレーブ装置３−１〜３−６４はマスタ装置１が指定する応答先の下位中継装置６−１〜６−４にそれぞれ応答をユニキャストにより送信する。図１３では、スレーブ装置３−１〜３−１６は下位中継装置６−１に、スレーブ装置３−１７〜３−３２は下位中継装置６−２に、スレーブ装置３−３３〜３−４８は下位中継装置６−３に、スレーブ装置３−４９〜３−６４は下位中継装置６−４に応答をユニキャストにより送信することを示している。（３）で、各下位中継装置６−１〜６−４は、それぞれスレーブ装置３からの応答を纏め、マスタ装置１が指定する応答先の上位中継装置５−１〜５−２にそれぞれ応答をユニキャストにより送信する。（４）で、上位中継装置５−１〜５−２は、下位中継装置６−１〜６−４からの応答をまとめ、マスタ装置１にユニキャストにより送信する。
【００７６】
図１４〜図１７に、実施例２で用いられる通信フレームを示す。実施例１と同様、Ｅｔｈｅｒｎｅｔ回線を使用するため、実施例１と同様Ｅｔｈｅｒｎｅｔ回線でのＵＤＰ／ＩＰの上位通信プロトコルであり（図６）、ＵＤＰのデータ内に本通信方式のフレームを格納して通信する。実施例１同様、本通信方式のフレーム部は、ヘッダ部とデータ部からなり、その詳細が図１４〜図１７である。
【００７７】
まず、マスタ装置１から各装置に対してブロードキャストして送信される監視、制御命令を含む要求フレームを図１４に示す。この通信フレームは、図１３の（１）で送信される通信フレームである。
【００７８】
図７に示した通信フレームに似ているが、中継装置２に相当する部分の構成が大きく異なっている。上位中継装置５については、実施例１の中継装置２と同様に、上位中継装置５のホストアドレスを示す上位中継ホストアドレス１〜２（１４１）及び応答を待つ時間を指定したタイムアウト時間を示す上位中継タイムアウト時間１〜２（１４２）が設けられているが、下位中継装置６については、下位中継ホストアドレス１〜４（１４３）と下位中継タイムアウト時間１〜４（１４４）のほかに、下位中継装置６が応答を送信する上位中継装置５のホストインデックスが、下位中継ホスト１〜４上位中継ホストインデックス（１４５）にて指定されるように構成されている。
【００７９】
図１４に示した要求フレームがマスタ装置１からブロードキャストされ、スレーブ装置３は応答を指定された下位中継装置６に送信し、下位中継装置６は受信した応答を纏めて指定された上位中継装置５に送信し、上位中継装置５は受信した応答をまとめてマスタ装置１に送信する。
【００８０】
応答フレームについては、図１５〜図１７に示すように、図８〜図９に示される応答フレームの構成とほぼ同様である。図１５のスレーブ装置３から下位中継装置６に送信される応答フレームの構成は図８と同一である。下位中継装置６では、中継装置２のように、図１５の応答フレームのうち、レングス以降のデータをそのまま格納して、スレーブ装置３の応答を纏める（図１６）。上位中継装置５においても、中継装置２のように、図１６の応答フレームのうち、レングス以降のデータをそのまま格納して、下位中継装置６の応答を纏める（図１７）。
【００８１】
実施例２のシステムにおける各装置の構成は、マスタ装置１およびスレーブ装置３は同一の構成をとり、上位中継装置５および下位中継装置６は実施例１の中継装置２とほぼ同様の構成をとるため、ここでは説明を省略する。
【００８２】
実施例２のシステム全体としては、中継部分を、上位側と下位側にわけたため、それぞれの中継装置で応答を纏める処理時間分の遅延は多少発生するが、マスタ装置１での取りこぼしを確実に抑制することが可能である。
【００８３】
以上、本発明の実施例について詳細に説明したが、本発明によれば、マスタ装置が多数のスレーブ装置に対して同報通信にて制御命令等を含む要求を送信するため、各スレーブ装置へ高速に制御命令等を送信することができ、かつスレーブ装置側の受信タイミングをほぼ同時にすることが可能である。また、多数のスレーブ装置からの応答を一旦中継装置にて纏め、中継装置からマスタ装置へ送信するため、マスタ装置は中継装置数分の応答を処理すればよく、マスタ装置での取りこぼしを防止し、ある程度の同時性を確保した応答の受信を行うことが可能である。すなわち、スレーブ装置が多数となった場合でも、高速で且つ同時性を確保した大規模なマスタ／スレーブ通信方式を実現することができる。
【００８４】
更に、各スレーブ装置が応答を返信する中継装置を、マスタ装置が同報通信により送信する要求によって変更指定することが可能である。これにより、システム運用中に発生する通信負荷の集中や中継装置の故障に動的に対応することが可能である。
【００８５】
以上のことから、本発明によれば、従来は困難であった、マスタ装置が多数のスレーブ装置に対して高速且つ同時性を確保した監視および制御等を行う監視制御システムを構築することが可能である。
【００８６】
以上のように本発明の通信方式および通信システムについて詳細に説明したが、本発明は以上に述べたことに限定されるものではなく、その他、本発明の要旨を逸脱しない範囲で様々の構成、または形状をつくることができることはいうまでもない。
【図面の簡単な説明】
【００８７】
【図１】実施例１の通信システム構成を示す図である。
【図２】実施例１における通信シーケンス（その１）を示す図である。
【図３】マスタ装置の機能ブロック図を示す図である。
【図４】中継装置の機能ブロック図を示す図である。
【図５】スレーブ装置の機能ブロック図を示す図である。
【図６】フレームの構成を示す図である。
【図７】実施例１においてマスタ装置からブロードキャストされるときのフレームの構成を示す図である。
【図８】実施例１においてスレーブ装置から中継装置へ応答が送られる時のフレームの構成を示す図である。
【図９】実施例１において中継装置からマスタ装置へ応答が送られる時のフレームの構成を示す図である。
【図１０】実施例１における通信シーケンス（その２）を示す図である。
【図１１】中継装置の変更を指示する通信フレームを説明する図である。
【図１２】実施例２の通信システム構成を示す図である。
【図１３】実施例２における通信シーケンスを示す図である。
【図１４】実施例２においてマスタ装置からブロードキャストされる時のフレームの構成を示す図である。
【図１５】実施例２においてスレーブ装置から下位中継装置へ応答が送られる時のフレームの構成を示す図である。
【図１６】実施例２において下位中継装置から上位中継装置へ応答が送られる時のフレームの構成を示す図である。
【図１７】実施例２において上位中継装置からマスタ装置へ応答が送られる時のフレームの構成を示す図である。
【符号の説明】
【００８８】
１      マスタ装置
２      中継装置
３      スレーブ装置
４      ＨＵＢ
５      上位中継装置
６      下位中継装置
１１      送信部
１２      受信部
１３      受信応答解析部
１４      負荷・故障判断部
１５      スレーブ装置制御・監視情報管理部
１６      中継ルート選定部
１７      要求電文作成部
２１      送信部
２２      受信部
２３      受信内容解析部
２４      スレーブ応答解析・格納部
２５      スレーブ装置応答監視部
２６      スレーブ装置故障判定部
２７      応答電文作成部
３１      送信部
３２      受信部
３３      受信電文解釈部
３４      制御部
３５      中継ルート判断部
３６      応答電文作成部
３７      監視部
３８      制御対象
３９      監視対象
【図１】
2008060753.tif 000003
【図２】
2008060753.tif 000004
【図３】
2008060753.tif 000005
【図４】
2008060753.tif 000006
【図５】
2008060753.tif 000007
【図６】
2008060753.tif 000008
【図７】
2008060753.tif 000009
【図８】
2008060753.tif 000010
【図９】
2008060753.tif 000011
【図１０】
2008060753.tif 000012
【図１１】
2008060753.tif 000013
【図１２】
2008060753.tif 000014
【図１３】
2008060753.tif 000015
【図１４】
2008060753.tif 000016
【図１５】
2008060753.tif 000017
【図１６】
2008060753.tif 000018
【図１７】
2008060753.tif 000019