(57)【要約】【課題】動作系と待機系とに二重化構成されたＰＣを含む複数のＰＣをネットワーク構成し、トークン管理方式にて通信を行う場合、送信するコモンメモリのデータ内容は同じであるにも拘わらず別々のコモンメモリ領域に同じデータを送信しているため、伝送効率が悪くなっている。【解決手段】動作系と待機系のノード番号を同一番号としてネットワークにおける送受信をＵＤＰ／ＩＰにおけるブロードキャストを用いると共に、前記ＰＣ二重化トークン管理部にて伝送フレーム上に相手ノード番号を付加する。また、ＰＣ二重化トークン管理部において、設定ツールにて設定されたノード番号を動作系ノード番号とし、その番号に＋１を加えたものを待機系ノード番号とし、切換信号発生時にノード番号も切換えるようにしたものである。【選択図】  図１
2005045474.tif 000002
【特許請求の範囲】
【請求項１】
ＵＤＰ／ＩＰを有するインタフェースと、ユーザメモリとそれを使用するアプリケーションプログラムを有するプロセッサを備え、且つ、二重化構成されたコンピュータを含む複数のコンピュータを伝送路を介して接続し、複数のコンピュータ間でネットワーク通信を行うものにおいて、
前記インタフェースとプロセッサとの結合部にＰＣ二重化トークン管理部を設け、且つ、二重化構成されたコンピュータの動作系（マスタ）と待機系（スレーブ）のノード番号を同一番号としてネットワークにおける送受信をＵＤＰ／ＩＰにおけるブロードキャストと用いると共に、前記ＰＣ二重化トークン管理部にて伝送フレーム上に相手ノード番号を付加することを特徴としたコンピュータ間のネットワーク通信方法。
【請求項２】
前記ＰＣ二重化トークン管理部では、自ノード宛トークン受信時に受信処理を実行すると共に、自ノードが動作系時に送信処理を実行することを特徴とした請求項１記載のコンピュータ間のネットワーク通信方法。
【請求項３】
ＵＤＰ／ＩＰを有するインタフェースと、ユーザメモリとそれを使用するアプリケーションプログラムを有するプロセッサを備え、且つ、二重化構成されたコンピュータを含む複数のコンピュータを伝送路を介して接続し、複数のコンピュータ間でネットワーク通信を行うものにおいて、
前記インタフェースとプロセッサとの結合部にＰＣ二重化トークン管理部を設け、この管理部において通信パラメータ設定ツールにて設定されたノード番号と同一ノード番号時には動作系ノード番号とし、設定ノード番号に判別値が付加されたものを待機系と認識することを特徴としたコンピュータ間のネットワーク通信方法。
【請求項４】
前記ＰＣ二重化トークン管理部において、通信パラメータ設定ツールにて設定されたコモンメモリ領域に読み込んだデータを動作系用として認識し、待機系用は０として認識することを特徴とした請求項３記載のコンピュータ間のネットワーク通信方法。
【請求項５】
前記プロセッサに、ＰＣ二重化トークン管理部が格納されたデータを参照する二重化ステータス部と、イニシャルマスタ設定スイッチよりの情報に基づいてイニシャルマスタ情報を二重化ステータス部に格納する二重化制御部とを設け、この二重化制御部において前記設定スイッチによる設定がイニシャルマスタ時にはイニシャルマスタであることを二重化ステータス部に格納し、設定がイニシャルスレーブのときにはイニシャルスレーブであることを二重化ステータス部に格納することを特徴とした請求項３又は４記載のコンピュータ間のネットワーク通信方法。
【請求項６】
前記二重化制御部の動作系／待機系の切換処理は、自ノードが動作系のとき前記アプリケーションプログラム若しくは別設されたマスタ切換スイッチよりの切換指令有り時に待機系に切換えてその情報を二重化ステータス部に格納し、自ノードが待機系のときアプリケーションプログラム若しくは前記マスタ切換スイッチよりの切換指令有り時に動作系に切換えてその情報を二重化ステータス部に格納することを特徴とした請求項３乃至５記載のコンピュータ間のネットワーク通信方法。
【請求項７】
前記ＰＣ二重化トークン管理部での自ノード番号切換処理は、前記二重化ステータス部の格納情報が動作系ノード時には、自ノード番号が設定ノード番号に判別値が付加されているか否かを判別し、判別値有り時には自ノード番号を設定ノード番号に切換えると共に、前記二重化ステータス部の情報が待機系ノード時には、自ノード番号は設定ノード番号か否かを判別し、設定ノード番号時には自ノード番号を判別値の付加された設定ノード番号に切換えることを特徴とした請求項３乃至６記載のコンピュータ間のネットワーク通信方法。
【請求項８】
前記ＰＣ二重化トークン管理部は、伝送フレームのＰＣ二重化トークン管理部ヘッダに、次にトークンを渡す相手ノード、自ノード番号、二重化ステータスの情報を書き込むことを特徴とした請求項３乃至７記載のコンピュータ間のネットワーク通信方法。
【請求項９】
前記ＰＣ二重化トークン管理部での自ノード宛てトークン受信処理は、前記二重化ステータス部の格納情報がＰＣ単一構成時には前記コモンメモリ領域にしたがったコモンメモリデータ送信処理を実行した後に次のノードに対するトークン送信処理を行うと共に、ＰＣ二重化構成時には自ノードは動作系か否かを判断し、動作系時にはコモンメモリ領域にしたがったコモンメモリデータ送信処理を実行した後に次のノードに対するトークン送信処理を行い、待機系時には次のノードに対するトークン送信処理を行うことを特徴とした請求項３乃至８記載のコンピュータ間のネットワーク通信方法。
【請求項１０】
前記ＰＣ二重化トークン管理部でのコモンメモリデータ受信処理は、コモンメモリデータ受信展開処理後にデータ送信元はＰＣ二重化構成が否かを前記二重化ステータス部の格納情報から判断し、単一構成時には送信元を単一構成と認識し、ＰＣ二重化構成時には二重化ステータス部の格納情報から送信元はイニシャルマスタか否かを判断し、イニシャルマスタ時には送信元ノードはイニシャルマスタと認識し、イニシャルスレーブ時には送信元をイニシャルスレーブと認識することを特徴とした請求項３乃至９記載のコンピュータ間のネットワーク通信方法。
【請求項１１】
ＵＤＰ／ＩＰ及びＰＣ二重化トークン管理部を有するインタフェースと、ユーザメモリとそれを使用するアプリケーションプログラムを有するプロセッサを有するコンピュータを複数ネットワーク構成し、且つ、ネットワークに動作系と待機系の二重化構成されたコンピュータを含みシステムで各コンピュータ間を伝送路を介して送受信を行うものにおいて、
前記ネットワークにおける送受信をＵＤＰ／ＩＰにおけるブロードキャスト方式とすると共に、前記プロセッサに、通信パラメータ設定ツールにより設定されたノード番号、コモンメモリ領域を格納する通信パラメータ領域部と、設定スイッチによるイニシャルマスタ情報からイニシャルマスタが否か判断し、且つ、アプリケーションプログラム若しくはマスタ切換スイッチ信号に基づいて自ノードが動作系か待機系かを判断する二重化制御部と、この二重化制御部の判断情報を格納し、前記二重化トークン管理部が参照するための二重化ステータス部を設けたことを特徴としたコンピュータ間のネットワーク通信装置。
【請求項１２】
前記二重化トークン管理部は、前記二重化ステータス部での格納情報が動作系ノード時には自ノード番号が前記通信パラメータ領域に格納された設定ノード番号と同一かを判断し、設定ノード番号に判別値が付加されていた場合には自ノード番号を設定ノード番号に切換え、二重化ステータス部での格納情報が待機系ノード時には自ノード番号が通信パラメータ領域に格納された設定ノード番号と同一かを判断し、設定ノード番号と同一時には自ノード番号に判別値を付加する機能を有することを特徴とした請求項１１記載のコンピュータ間のネットワーク通信装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、伝送路に接続された複数のプログラマブルコントローラ（以下ＰＣという）等のコンピュータ間で互いに通信を行う通信方法とその装置に関するものである。
【０００２】
【従来の技術】
イーサネット（商標登録）は、同軸ケーブルをデータ伝送媒体に用い、ＣＳＭＡ／ＣＤ方式（衝突検出型搬送波多重ＬＡＮのアクセス方式）のインタフェースによってコンピュータ同士の通信を可能にする。
この種の通信方式としては、例えば、特許文献１において開示されている。
【０００３】
近年、プラントにおける監視制御システムでは、ホストコンピュータとしてワークステーションやミニコンに代えてパソコンが採用され、それに伴い最も一般的なイーサネットがＰＣ上位ネットワーク及びＰＣ間ネットワークのデファクトスタンダードとして確立されたといってもよい。
これらパソコンやＰＣは、イーサネットを使った通信のためのインタフェースにＴＣＰ／ＩＰプロトコルとＵＤＰ／ＩＰプロトコルを実装する場合、信頼性を重視するときには論理回線を持ったＴＣＰ／ＩＰが使用される。
【０００４】
また、論理回線の接続及び切断処理による時間的な性能低下を嫌う場合には、ＵＤＰ／ＩＰで実現することになる。
ＵＤＰ／ＩＰは、それ自体には再送処理機能は有してなく、送達確認も行わないプロトコルである。
【０００５】
なお、日本電機工業会（ＪＥＭＡ）で制定されたＪＥＭ１４７９「ＦＬ−ｎｅｔ」などでは、ＵＤＰ／ＩＰを使用し、通信用ソフトウェアで送信権の管理（トークン管理）を行うことで通信ソフトウェアレベルで送信の衝突を防ぎ、信頼性を確保する手段を提供している。
【０００６】
ＰＣ間ネットワークでは、それ自体に再送機能や送達確認機能を持つＴＣＰ／ＩＰよりも、むしろブロードキャスト通信（一斉同報通信）を可能とするＵＤＰ／ＩＰを実装する傾向にある。一般的には、ＵＤＰ／ＩＰよりＴＣＰ／ＩＰの方が信頼性は高いが、送信するデータを自動的に合体させたりする機能がＰＣ間ネットワークには不向きといえる。
【０００７】
ＦＬ−ｎｅｔのＦＡリンクプロトコルも、ＵＤＰ／ＩＰのブロードキャスト通信を採用したプロトコルで、マスターレスのトークン（送信権）管理では電源オンによりそのノードのネットワークへの自動的な加入、及び電源オフによる自動的な離脱確認を可能とする。
ＦＬーｎｅｔのメインとなる機能は、サイクリック伝送と呼ばれるもので、各ＰＣがコモンメモリと呼ばれる領域を共有する概念であり、これはＰＣ間ネットワークでは一般的な機能である。
【０００８】
【特許文献１】
特開２００１ー２４５０１４  号公報（図１）
【０００９】
【発明が解決しようとする課題】
ＦＬーｎｅｔのように、マスターレスのトークン管理によってサイクリック伝送のような機能を実装することは、規格化されていることからも判るように一般的な通信方式である。この通信方式は、ＰＣ本体の異常時におけるバックアップ機能を持たないシングル構成のＰＣ間通信するときには問題は生じないが、ＰＣを冗長化のために二重化構成（一方が動作系，他方が待機系）とすると問題点が発生する。
【００１０】
すなわち、二重化されたＰＣはその一方が動作系とし、他方が待機系としてネットワークに参加するため、トークン管理方式の制約上、動作系と待機系では別々のノード番号の認識を持たなければならない。
仮に、動作系と待機系とを同じノード番号にし、待機系のＰＣをネットワークに参加させない方式とした場合、待機系ＰＣの通信機能の健全性を確認する手段がなくなってしまう。このため、別々のノード番号を持って両方がネットワークに加入する必要が生じる。
【００１１】
ＦＬ−ｎｅｔのサイクリック伝送のようなコモンメモリ方式では、各ノードが送信する領域は重複してはいけないのが一般的である。
ところで、ＰＣが二重化された場合、送信するコモンメモリのデータ内容は動作系と待機系では全く同じである。にもかかわらず、送信領域の重複は認められないので、別々のコモンメモリ領域に同じデータを送信することになる。これはＰＣ二重化を認識する他のノードが無駄な受信処理をしなければないことを意味する。具体的には、どちらのノードデータを採用するのかの判断も必要となる等の問題を有している。
【００１２】
なお、上記した特許文献のものには、このような二重化に係わる問題を解決するような技術思想は開示されてない。
【００１３】
本発明が目的とするところは、トークン管理方式のネットワークにおいて、ネットワークに参加する第３のノードが容易に動作系か待機系かの判断を可能とした通信方法を提供することにある。
【００１４】
【課題を解決するための手段】
本発明の第１は、ＵＤＰ／ＩＰを有するインタフェースと、ユーザメモリとそれを使用するアプリケーションプログラムを有するプロセッサを備え、且つ、二重化構成されたコンピュータを含む複数のコンピュータを伝送路を介して接続し、複数のコンピュータ間でネットワーク通信を行うものにおいて、
前記インタフェースとプロセッサとの結合部にＰＣ二重化トークン管理部を設け、且つ、二重化構成されたコンピュータの動作系（マスタ）と待機系（スレーブ）のノード番号を同一番号としてネットワークにおける送受信をＵＤＰ／ＩＰにおけるブロードキャストと用いると共に、前記ＰＣ二重化トークン管理部にて伝送フレーム上に相手ノード番号を付加することを特徴としたものである。
【００１５】
本発明の第２は、  前記ＰＣ二重化トークン管理部では、自ノード宛トークン受信時に受信処理を実行すると共に、自ノードが動作系時に送信処理を実行することを特徴としたものである。
【００１６】
本発明の第３は、ＵＤＰ／ＩＰを有するインタフェースと、ユーザメモリとそれを使用するアプリケーションプログラムを有するプロセッサを備え、且つ、二重化構成されたコンピュータを含む複数のコンピュータを伝送路を介して接続し、複数のコンピュータ間でネットワーク通信を行うものにおいて、
前記インタフェースとプロセッサとの結合部にＰＣ二重化トークン管理部を設け、この管理部において通信パラメータ設定ツールにて設定されたノード番号と同一ノード番号時には動作系ノード番号とし、設定ノード番号に判別値が付加されたものを待機系と認識することを特徴としたものである。
【００１７】
本発明の第４は、前記ＰＣ二重化トークン管理部において、通信パラメータ設定ツールにて設定されたコモンメモリ領域に読み込んだデータを動作系用として認識し、待機系用は０として認識することを特徴としたものである。
【００１８】
本発明の第５は、前記プロセッサに、ＰＣ二重化トークン管理部が格納されたデータを参照する二重化ステータス部と、イニシャルマスタ設定スイッチよりの情報に基づいてイニシャルマスタ情報を二重化ステータス部に格納する二重化制御部とを設け、この二重化制御部において前記設定スイッチによる設定がイニシャルマスタ時にはイニシャルマスタであることを二重化ステータス部に格納し、設定がイニシャルスレーブのときにはイニシャルスレーブであることを二重化ステータス部に格納することを特徴としたものである。
【００１９】
本発明の第６は、前記二重化制御部の動作系／待機系の切換処理は、自ノードが動作系のとき前記アプリケーションプログラム若しくは別設されたマスタ切換スイッチよりの切換指令有り時に待機系に切換えてその情報を二重化ステータス部に格納し、自ノードが待機系のときアプリケーションプログラム若しくは前記マスタ切換スイッチよりの切換指令有り時に動作系に切換えてその情報を二重化ステータス部に格納することを特徴としたものである。
【００２０】
本発明の第７は、前記ＰＣ二重化トークン管理部での自ノード番号切換処理は、前記二重化ステータス部の格納情報が動作系ノード時には、自ノード番号が設定ノード番号に判別値が付加されているか否かを判別し、判別値有り時には自ノード番号を設定ノード番号に切換えると共に、前記二重化ステータス部の情報が待機系ノード時には、自ノード番号は設定ノード番号か否かを判別し、設定ノード番号時には自ノード番号を判別値の付加された設定ノード番号に切換えることを特徴としたものである。
【００２１】
本発明の第８は、前記ＰＣ二重化トークン管理部は、伝送フレームのＰＣ二重化トークン管理部ヘッダに、次にトークンを渡す相手ノード、自ノード番号、二重化ステータスの情報を書き込むことを特徴としたものである。
【００２２】
本発明の第９は、前記ＰＣ二重化トークン管理部での自ノード宛てトークン受信処理は、前記二重化ステータス部の格納情報がＰＣ単一構成時には前記コモンメモリ領域にしたがったコモンメモリデータ送信処理を実行した後に次のノードに対するトークン送信処理を行うと共に、ＰＣ二重化構成時には自ノードは動作系か否かを判断し、動作系時にはコモンメモリ領域にしたがったコモンメモリデータ送信処理を実行した後に次のノードに対するトークン送信処理を行い、待機系時には次のノードに対するトークン送信処理を行うことを特徴としたものである。
【００２３】
本発明の第１０は、前記ＰＣ二重化トークン管理部でのコモンメモリデータ受信処理は、コモンメモリデータ受信展開処理後にデータ送信元はＰＣ二重化構成が否かを前記二重化ステータス部の格納情報から判断し、単一構成時には送信元を単一構成と認識し、ＰＣ二重化構成時には二重化ステータス部の格納情報から送信元はイニシャルマスタか否かを判断し、イニシャルマスタ時には送信元ノードはイニシャルマスタと認識し、イニシャルスレーブ時には送信元をイニシャルスレーブと認識することを特徴としたものである。
【００２４】
本発明の第１１は、ＵＤＰ／ＩＰ及びＰＣ二重化トークン管理部を有するインタフェースと、ユーザメモリとそれを使用するアプリケーションプログラムを有するプロセッサを有するコンピュータを複数ネットワーク構成し、且つ、ネットワークに動作系と待機系の二重化構成されたコンピュータを含みシステムで各コンピュータ間を伝送路を介して送受信を行うものにおいて、
前記ネットワークにおける送受信をＵＤＰ／ＩＰにおけるブロードキャスト方式とすると共に、前記プロセッサに、通信パラメータ設定ツールにより設定されたノード番号、コモンメモリ領域を格納する通信パラメータ領域部と、設定スイッチによるイニシャルマスタ情報からイニシャルマスタが否か判断し、且つ、アプリケーションプログラム若しくはマスタ切換スイッチ信号に基づいて自ノードが動作系か待機系かを判断する二重化制御部と、この二重化制御部の判断情報を格納し、前記二重化トークン管理部が参照するための二重化ステータス部を設けたことを特徴としたものである。
【００２５】
本発明の第１２は、前記二重化トークン管理部は、前記二重化ステータス部での格納情報が動作系ノード時には自ノード番号が前記通信パラメータ領域に格納された設定ノード番号と同一かを判断し、設定ノード番号に判別値が付加されていた場合には自ノード番号を設定ノード番号に切換え、二重化ステータス部での格納情報が待機系ノード時には自ノード番号が通信パラメータ領域に格納された設定ノード番号と同一かを判断し、設定ノード番号と同一時には自ノード番号に判別値を付加する機能を有することを特徴としたものである。
【００２６】
【発明の実施の形態】
実施形態１
図１は、本発明の第１の実施形態を示す構成図である。１Ａ，１Ｂ〜１ＮはノードとなるＰＣで、各ＰＣは伝送路（イーサネット）を介して接続されている。各ＰＣは、ＰＣ１Ａに代表して示すようにそれぞれ相互通信機能を得るためのインタフェース２とプロセッサ３を設けている。インタフェース２は、物理層２１とデータリンク層２２、ＩＰ部２３、ＵＤＰ部２４及びＰＣ二重化管理部２５を有している。このインタフェース２は、物理層２１以外はソフトウェアで構成される。
【００２７】
プロセッサ３は、データ送信部３０、データ受信部３１、ユーザ用メモリ３２及びこれを利用するアプリケーションプログラム３３を有している。
なお、図１のネットワーク構成例ではＰＣ１Ａが二重化構成で、接続ケーブル４を介して動作系１Ａ１と待機系１Ａ２とがそれぞれノードとして伝送路に接続されて二重化構成となっている。
【００２８】
ＵＤＰ／ＩＰを実装した通信では、ノードはＩＰアドレスで管理される。イーサネットレベルでの管理アドレスは物理アドレス（ＭＡＣアドレス）であるが、これは全世界においてユニークな番号であり同一なものは存在しない。
また、ＩＰアドレスとＭＡＣアドレスは１対１の関係にあり、例え閉じたネットワークであっても同一ネットワーク上には同じＩＰアドレスは存在してはならない。したがって、ＭＡＣアドレスはＩＰアドレスとは別に送信先ノードアドレスに管理しなければならない。換言すれば、ＩＰアドレスを認識する方法では不可能といえる。
【００２９】
そこで、本実施形態では図２で示すように、イーサネットレベルの宛て先ＭＡＣアドレス及びＩＰレベルの宛て先ＩＰアドレスにブロードキャストアドレスを採用し、このレベルの階層では相手ノードを個別認識しないようにしたものである。これらは、ＰＣ二重化トークン管理部２５が、伝送フレーム上に相手ノード番号を付加することで実現する。
【００３０】
すなわち、例えば図２の領域０１と０２の各ヘッダにはブロードキャストアドレスによるＭＡＣアドレスとＩＰアドレスが採用され、領域０３のＵＤＰヘッダの次の領域０４にＰＣ二重化トークン管理部２５が相手ノードを付加するヘッダ部を設ける。
【００３１】
ネットワーク上の通信負荷を軽減するためには、二重化構成されたＰＣ（ここではＰＣ１Ａ）がネットワークに参加する場合、第３のノード（ＰＣ１Ａ以外のノード）に対して１Ａは同一ノードとして認識させる必要がある。そのために、本発明では二重化構成されたＰＣ１Ａの動作系１Ａ１と待機系１Ａ２ともに図４で示すように同じノード番号である＃３が付加される。
【００３２】
図５は一般的なトークン管理方式において、二重化構成のＰＣ１Ａがネットワークに参加する場合の動作態様を示したもので、ＰＣ１Ａは動作系１Ａ１と待機系１Ａ２にそれぞれ異なるノード番号＃３と＃４が付加され、例えば、１Ｂ，１Ｃ，１Ａの順に送信する場合には４ノード分の送信が必要であるが、図４で示した本発明ては待機系１Ａ２は受信処理は実行するがネットワーク上の送信には参加しないため３ノード分となり、１ノード分の通信が省略される。
【００３３】
図３は、この処理を実行するためのＰＣ二重化トークン管理部２５の処理フローである。
ステップＳ１で自ノード宛てトークンを受信すると、ステップ２において受信処理を実行するが、この受信処理は動作系も待機系も共に実行する。ステップＳ３では自ノードは動作系か否かが判断され、動作系の場合にはＳ４で次ノード宛てトークン送信処理を含む送信処理が実行される。Ｓ３において動作系でなかった場合にはそのまま終了する。
【００３４】
したがって、実施形態１によれば、通信ソフトウェアによるトークン管理を行う通信方式において、二重化されたＰＣを同一ノードと認識し、待機系ノードのネットワークへの参加を行わないようしたものであるから通信効率を高めることができる。
【００３５】
実施形態２
図６は本発明の第２の実施形態を示す構成図で、図１と同一部分若しくは相当する部分には同一符号を付してその説明を省略する。
本実施形態では、インタフェース２のプロセッサ３との結合部であるＰＣ二重化トークン管理部２５には、ソフトウェア構成されたサイクリック伝送制御機能が設けられる。
【００３６】
プロセッサ３における３４は通信パラメータ領域部で、通信用パラメータ設定ツールによりノード番号やコモンメモリの領域等が設定される。３５は二重化ステータス部、３６はイニシャルマスタ情報部で、この情報部３６はイニシャルマスタ設定スイッチ３８によってイニシャル情報が設定される。
【００３７】
３７はソフトウェア構成された二重化制御部で、イニシャルマスタ情報はこの二重化制御部３７により管理され、その出力信号によってカレント・マスタがどちらかか等の情報は二重化ステータス部３５に反映される。また、マスタ切換スイッチ３９による外部からの指令，及びアプリケーションプログラム部３３からの指令に基づいて二重化制御部はマスタ切換を行う。
なお、ＰＣ二重化構成されてない１Ｂ〜１ＮのＰＣでは、この二重化制御部３７はダミーとしてプロセッサに実装される。
５は通信パラメータ設定ツールである。
【００３８】
図１７，１８は一般的にトークン管理によるサイクリック伝送の説明図で、図１７はトークン管理方式のネットワークに、動作系のＰＣ１Ａ１がノード＃３、待機系のＰＣ１Ａ２がノード＃４とし、また、ＰＣ１Ｂがノード＃１、ＰＣ１Ｃがノード＃２としてそれぞれ加入した場合のコモンメモリの割付け例を示したものである。
【００３９】
図１８は、二重化されたＰＣ１Ａ１，ＰＣ１Ａ２がネットワークに参加する場合の動作を示したものである。
動作系ノード＃３のデータ１２８Ｗと待機系ノード＃４のデータ１２８Ｗとは二重化されていることから全く同じ内容が格納されている。したがって、動作時におけるノード＃１，ノード＃２としては、実際には一方は必要のないデータであることから、両方を受信すること自体効率が悪くなる。そこで、ノード＃３，ノード＃４のどちらのデータを有効とするかの判断が必要となる。
【００４０】
本発明では、設定パラメータとして設定されたノード番号をマスタ用ノード番号とし、その番号に＋１のような判別値を付加したものをスレーブ用ノード番号とし、アプリケーションプログラム３３或いはマスタ切換スイッチ３９によりマスタ切換が発生した際、ノード番号も切換えるようにしたものである。
【００４１】
このようなことは、ネットワークにおける送受信をすべてＵＤＰ／ＩＰにおけるブロードキャストを用いることで可能となる。
ブロードキャスト通信では、イーサネットにおける物理アドレス（ＭＡＣアドレス）とＩＰ２３が扱うＩＰアドレスとの一致認識の必要がない（ＭＡＣアドレスとＩＰアドレスの一致を確認するプロトコルＡＲＰが動作しない）ことを利用し、且つ、ＩＰアドレスとネットワークのノード番号を独立させることからノード番号の切換えが可能となる。
【００４２】
図７は、トークン管理方式のネットワークに本発明を適用した場合のコモンメモリ割付け例を示したもので、図１７で示した従来の待機系ノード＃４のコモンメモリ送信領域は存在しない。
また、図８は二重化されたＰＣノードがネットワークに参加する場合を示したものである。
【００４３】
図７，８図で明らかなように、動作系ノード＃３のデータは１２８Ｗと従来のものと変わらないにも拘わらず、待機系ノードのデータは無しとなっている。
したがって、ノード＃１とノード＃２は、ノード＃３のデータを二重化されたＰＣ１Ａのデータとして扱うことができる。また、ノード＃４のコモンメモリを送信しないことにより、送信効率が良くなる。
【００４４】
すなわち、通信パラメータ設定ツール５にて、ノード番号及びコモンメモリ領域等を設定して通信パラメータ領域３４に格納し、その設定をＰＣ二重化トークン管理部２５にて読み込む。この管理部２５が読み込んだノード番号を動作系（マスタと呼ぶ）ノード番号とし、そのノード番号＋１を待機系（スレーブと呼ぶ）ノード番号と認識する。
【００４５】
図９は、ＰＣ二重化トークン管理部２５における設定ノード番号認識処理フローを示したものである。ステップＳ１１でノード番号を読み込み、Ｓ１２ではその設定ノード番号をマスタノードとして認識する。Ｓ１３では、設定されたノード番号に例えば＋１等の判別値が付加されたものをスレーブノード番号として認識する。すなわち、設定ツール５によって設定されたノード番号が１００とすると、マスタノードが１００となり、スレーブノード番号は１０１となる。
【００４６】
図１０はＰＣ二重化トークン管理部２５におけるコモンメモリ領域設定認識処理フローを示したものである。ＰＣ二重化トークン管理部２５は、ステップ２１でコモンメモリ領域設定の読み込みを実行し、Ｓ２２では読み込んだデータをマスタ用の設定と認定し、Ｓ２３ではスレーブ用は０として認識する。
【００４７】
例えば、設定ツール５によって設定されたコモンメモリの設定領域が、ワードアドレスが１００Ｈ、ワードサイズ１２８とすると、マスタノード用は、ワードアドレス  １００Ｈ番地，ワードサイズ１２８となるのに対し、スレーブノード用は、ワードアドレス０００Ｈ番地，ワードサイズ０として認識する。
【００４８】
イニシャルマスタ設定スイッチ３８は、プロセッサ３に実装されるＨ／Ｗスイッチであるが、このスイッチにより二重化されたＰＣのイニシャルマスタ側をイニシャルマスタとし、イニシャルスレーブ側をイニシャルスレーブ設定する。
二重化制御部３７は、この設定情報を読み込みＰＣ二重化トークン管理部２５に反映できるよう二重化ステータス部３５に格納する。
【００４９】
図１１は二重化制御部３７におけるイニシャルマスタ設定スイッチ認識処理フローを示したもので、ステップＳ３１で設定スイッチ＝イニシャルマスタか否かを判断し、イニシャルマスタであった場合にはイニシャルマスタであることを二重化ステータス部３５に格納する。ステップ３１の判断で、イニシャルマスタでなかったときにはＳ３３においてイニシャルスレーブであることを二重化ステータス部３５に格納する。
【００５０】
マスタ／スレーブの切換指令は、マスタ切換スイッチ３９，若しくはアプリケーションプログラム３３より発せられる。この切換指令が発せられた場合、二重化接続ケーブル４を介して二重化制御情報の取り合い可能に構成されている二重化制御部３７は切換え動作を実行する。
【００５１】
図１２はその二重化制御部３７のマスタ／スレーブの切換処理フローを示したものである。ステップＳ４１で二重化制御部３７は自ノードはマスタであるか否かを判断し、マスタの場合にはＳ４２においてアプリケーションプログラム３３若しくはマスタ切換スイッチ３９からスレーブへの切換があったか否かが判断される。スレーブ切換指令があった場合にはＳ４３でスレーブ切換を実行し、その結果を二重化ステータス３６に反映さぜる。Ｓ４２でスレーブ切換指令が無かった場合にはそのまま終了する。
【００５２】
ステップ４１において、自ノードはマスタではないと判断されたときには、Ｓ４４でアプリケーションプログラム３３若しくはマスタ切換スイッチ３９よりのマスタ切換指令の有無を判断する。マスタ切換指令があった場合にはＳ４５でマスタへの切換を実行し、その結果を二重化ステータス部３５に反映させる。Ｓ４４においてマスタ切換指令がなかった場合にはそのまま終了する。
【００５３】
上述のように、二重化制御部３７は、自分がＰＣ二重化構成であるという情報に加え、現状がマスタであるかスレーブであるかの情報をＰＣ二重化トークン管理部２５の読み出すことのできる二重化ステータス部３５に反映させることを可能としている。
【００５４】
インタフェース２のＰＣ二重化トークン管理部２５は、プロセッサ３の二重化ステータス部３５を読み込むことができ、イニシャルマスタ／スレーブ設定及び現状マスタかスレーブかの情報を常時認識できる機能を有している。そして、自ノード番号の認識を、その情報にしたがって自由に切換えができる構成となっている。すなわち、自ノードが現状マスタならば自ノード番号を設定ノード番号とし、自ノードが現状スレーブならば自ノード番号を設定ノード番号＋１とする。
【００５５】
図１３は、そのＰＣ二重化トークン管理部２５の自ノード番号切換処理フローを示したものである。ステップＳ５１で、二重化ステータス部３５に格納されている情報はマスタノードであるか否かを判断し、マスタノードの場合には、Ｓ５２において自ノード番号は設定ノード番号＋１か否かが判断される。ｙｅｓの場合にはＳ５３で自ノード番号を設定ノード番号に切換え、ｎｏの場合にはそのまま終了する。Ｓ５１において、情報がマスタノードでなかった場合にはＳ５４で自ノード番号は設定ノード番号であるか否かが判断される。設定ノード番号のときには、Ｓ５５で自ノード番号を設定ノード番号＋１に切換え、設定ノード番号でなかったときにはそのまま終了する。
【００５６】
図１４は本発明の伝送フレーム構成図である。１０はインタフェース２が送信する伝送フレーム、１１はイーサネットヘッタで、宛先ＭＡＣアドレスはブロードキャストアドレス（ＡＬＬ１）である。１２はＩＰヘッダで、宛先ＩＰアドレスはブロードキャストアドレス（ネットワークアドレス＋ホストアドレス部ＡＬＬ１）となっており、また、ＩＰアドレスはマスタとスレーブでユニークな値となっている。
【００５７】
１３はＵＤＰヘッダで送信先ポート番号や宛先ポート番号を含む。１４はＰＣ二重化トークン管理部ヘッタで、この二重化トークン管理部が付加するヘッダには、（１）次にトークンを渡す相手ノード番号、（２）自ノード番号、（３）二重化ステータスの各情報を含む。基本的にノード番号は、１を始まりとし、０は使用しないことを利用して、次にトークンを渡す相手ノード番号が０の場合、そのフレームはトークンではなく、コモンメモリデータのフレームとする。
１５はコモンメモリ・データである。
【００５８】
図１４のような伝送フレーム構成において、ＩＰ部２３が扱うＩＰヘッダにおける宛先ＩＰアドレスはブロードキャストアドレス（ネットワークアドレス＋ホストアドレス部ＡＬＬ１）とする。従ってデータリンク層２２が扱う宛先ＭＡＣアドレスもブロードキャストアドレス（ネットワークアドレス＋ホストアドレス部ＡＬＬ１）とし、ＩＰヘッダ１２における自ノードＩＰアドレスと、前述した自ノード番号は、１対１の関係ではなく、お互いの階層で独立した認識となっている。
【００５９】
換言すれば、異なる自ノードＩＰアドレスを持つイニシャルマスタノードとイニシャルスレーブノードにおいて、イニシャルマスタノード及びイニシャルスレーブノードの自ノードＩＰアドレスは固定であるが、自ノード番号は、自ノードがマスタのときには設定ノード番号となり、スレーブのときには設定ノード番号＋１となるので、同じＩＰアドレスに２つのノード番号が対応する。
【００６０】
図１５は二重化トークン管理部の自ノード宛トークン受信処理フローを示したもので、受信フレームのＰＣ二重化トークン管理部ヘッダの”次にトークンを渡す相手ノード”＝自ノードの番号の場合である。
インタフェース２のＰＣ二重化トークン管理部２５は、ＵＤＰ部２４より通知された受信データを確認し、それが自ノード宛てのトークンの場合に図１５の処理を実行する。受信フレームのＰＣ二重化トークン制御部ヘッダに含まれる”次にトークンを渡す相手ノード番号”が自ノード番号であれば自ノード宛トークンである。
【００６１】
図１５において、ステップＳ６１で二重化ステータス３５を参照して自ノードがＰＣ二重化構成であるかをチェックする。チェック結果、自ノードは二重化構成でなかった場合、すなわち、ＰＣシングル構成の場合にはＳ６２においてコモンメモリ領域設定に従ったコモンメモリデータ送信処理を行い、その後Ｓ６３で次のノードに対してトークン送信処理を行う。
【００６２】
Ｓ６１で、ＰＣ二重化構成の場合には、さらに二重化ステータス３５を参照し、自ノードはマスタノードであるか否かをチェックする。マスタノードの場合は、Ｓ６２でコモンメモリデータ送信処理を行った後に、Ｓ６３でトークン送信処理を行う。
Ｓ６４でのチェック結果、スレーブノードであった場合には、Ｓ６３で次のノードに対してトークン送信処理を行う。
【００６３】
図１６はＰＣ二重化トークン管理部のコモンメモリデータ受信処理フローを示したもので、受信フレームのＰＣ二重化トークン管理部ヘッダの”次にトークンを渡す相手ノード番号”＝０の場合である。
ＰＣ二重化トークン管理部２５は、ＵＤＰ２４より通知された受信データ確認し、これがコモンメモリデータの場合、図１６に示す処理を行う。受信フレームのＰＣ二重化トークン制御部ヘッタに含まれる”次にトークンを渡す相手ノード番号”が０であればコモンメモリデータである。
【００６４】
図１６において、ステップＳ７１で、まず受信したコモンメモリデータをアプリケーションプログラム３３に渡すべく展開処理を行い、その後Ｓ７２で送信元ノードはＰＣ二重化構成であるか否かの確認を行う。この確認は、受信フレームのＰＣ二重化トークン制御部ヘッタの二重化ステータスを参照し、送信元ノードがＰＣ二重化構成ではなかった場合には、Ｓ７３において送信元ノードはＰＣシングル構成と認識する。
【００６５】
Ｓ７２で、送信元がＰＣ二重化構成であった場合、Ｓ７４でさらに二重化ステータスを参照して送信元ノードはイニシャルマスタであるか否かのチェックを行い、イニシャルマスタであった場合にはＳ７５で送信元ノードはイニシャルマスタと認識する。
また、Ｓ７４での判断結果、イニシャルマスタでなかった場合には、Ｓ７６において送信元ノードはイニシャルスレーブと認識する。
なお、このようなＰＣ二重化における認識動作は、ノード番号による機器個別の認識ができないことから必要となる。
【００６６】
上記した第２の実施形態によれば、ネットワーク上に参加する第３のＰＣは二重化されたＰＣのマスタ及びスレーブ両方のネットワーク加入を認識し、且つ、サイクリック伝送でのコモンメモリデータは、マスタのみが送信する領域のみで受信するため、伝送効率が良くなるものである。
【００６７】
【発明の効果】
以上のとおり、本発明によれば、二重化構成されたＰＣを同一ノードと認識して伝送するようにしたものであるから、通信性能，及び伝送効率が向上するものである。
【図面の簡単な説明】
【図１】本発明の実施形態を示すシステム構成図。
【図２】本発明の伝送フレームの構成図。
【図３】本発明のＰＣ二重化トークン管理部の処理フロー。
【図４】本発明の伝送動作説明図。
【図５】従来の伝送動作説明図。
【図６】本発明の実施形態を示すシステム構成図。
【図７】本発明のコモンメモリ割付け図。
【図８】本発明の伝送動作説明図。
【図９】本発明の設定ノード番号認識処理フロー。
【図１０】本発明のコモンメモリ領域設定認識フロー。
【図１１】本発明ののイニシャルマスタ設定認識フロー。
【図１２】本発明のマスタ／スレーブ切換処理フロー。
【図１３】本発明の自ノード番号切換処理フロー。
【図１４】本発明の伝送フレーム構成図。
【図１５】自ノード宛てトークン受信処理フロー。
【図１６】本発明のコモンメモリデータ受信処理フロー。
【図１７】本発明のコモンメモリ割付け図。
【図１８】従来の伝送動作説明図。
【符号の説明】
１（１Ａ，１Ｂ…１Ｎ）…コンピュータ
２…インタフェース
３…プロセッサ
４…二重化接続ケーブル
５…通信パラメータ設定ツール
２５…ＰＣ二重化トークン管理部
３３…アプリケーションプログラム
３４…通信パラメータ領域部
３５…二重化ステータス部
３６…イニシャルマスタ情報
３７…二重化制御部
【図１】
2005045474.tif 000003
【図２】
2005045474.tif 000004
【図３】
2005045474.tif 000005
【図４】
2005045474.tif 000006
【図５】
2005045474.tif 000007
【図６】
2005045474.tif 000008
【図７】
2005045474.tif 000009
【図８】
2005045474.tif 000010
【図９】
2005045474.tif 000011
【図１０】
2005045474.tif 000012
【図１１】
2005045474.tif 000013
【図１２】
2005045474.tif 000014
【図１３】
2005045474.tif 000015
【図１４】
2005045474.tif 000016
【図１５】
2005045474.tif 000017
【図１６】
2005045474.tif 000018
【図１７】
2005045474.tif 000019
【図１８】
2005045474.tif 000020