(57)【特許請求の範囲】
【請求項１】
トークンバス方式の通信ネットワークの通信負荷率測定方法において、
第１のＩ／Ｏ要求処理を行い前記通信ネットワーク全体の情報を取得し、
つづいて第２のＩ／Ｏ要求処理を行い前記通信ネットワークのアクセス権を有するノードの情報を取得しておいて、
前記通信ネットワーク全体の情報から稼動中のノード数及び間隙数を求め、
前記通信ネットワークのアクセス権を有するノードの情報からトークン周回数を求めると共に前記トークン周回数、前記ノード数及び前記間隙数から通信負荷率を計算し、
求めた前記通信負荷率、前記トークン周回数、前記ノード数及び前記間隙数を表示することを特徴とする通信負荷率測定方法。
【請求項２】
前記Ｉ／Ｏ要求処理では、
プログラムが通信ドライバに対してＩ／Ｏ要求を出し、
前記Ｉ／Ｏ要求を受けた前記通信ドライバは要求の対象となる通信コントローラの記憶手段にＩ／Ｏ要求を書き込んでおいて、
前記通信コントローラは書き込まれたＩ／Ｏ要求の内容に基づき必要な処理を行うと共に記憶手段に処理した結果若しくは要求された値を書き込んだ後に、前記通信コントローラは前記通信ドライバに対して処理の終了を通知するため割り込み信号を送信し、
前記通信ドライバは前記割り込み信号により前記記憶手段に書き込まれた情報を読み出すと共にこの値をプログラムに戻すことを特徴とする
請求項１記載の通信負荷率測定方法。
【請求項３】
求めた前記通信負荷率、前記トークン周回数、前記ノード数及び前記間隙数を印刷することを特徴とする
請求項１記載の通信負荷率測定方法。
【請求項４】
求めた前記通信負荷率、前記トークン周回数、前記ノード数及び前記間隙数を周期的に蓄積すると共に蓄積したデータをグラフ化して表示若しくは印刷することを特徴とする
請求項１記載の通信負荷率測定方法。
【請求項５】
トークンバス方式の通信ネットワークの通信負荷率を測定する制御システムにおいて、
表示手段と、
前記通信ネットワーク全体の情報を取得する第１のＩ／Ｏ要求処理と前記通信ネットワークのアクセス権を有するノードの情報を取得する第２のＩ／Ｏ要求処理を連続して行い、前記通信ネットワーク全体の情報から稼動中のノード数及び間隙数を求め、前記通信ネットワークのアクセス権を有するノードの情報からトークン周回数を求めると共に前記トークン周回数、前記ノード数及び前記間隙数から通信負荷率を計算し、前記通信負荷率、前記トークン周回数、前記ノード数及び前記間隙数を前記表示手段に表示する制御手段と
を備えたことを特徴とする制御システム。
【請求項６】
前記Ｉ／Ｏ要求処理では、
プログラムが通信ドライバに対してＩ／Ｏ要求を出し、
前記Ｉ／Ｏ要求を受けた前記通信ドライバは要求の対象となる通信コントローラの記憶手段にＩ／Ｏ要求を書き込んでおいて、
前記通信コントローラは書き込まれたＩ／Ｏ要求の内容に基づき必要な処理を行うと共に記憶手段に処理した結果若しくは要求された値を書き込んだ後に、前記通信コントローラは前記通信ドライバに対して処理の終了を通知するため割り込み信号を送信し、
前記通信ドライバは前記割り込み信号により前記記憶手段に書き込まれた情報を読み出すと共にこの値をプログラムに戻すことを特徴とする
請求項５記載の制御システム。
【請求項７】
印刷手段により前記通信負荷率、前記トークン周回数、前記ノード数及び前記間隙数を印刷することを特徴とする
請求項５記載の制御システム。
【請求項８】
前記通信負荷率、前記トークン周回数、前記ノード数及び前記間隙数を記憶手段に周期的に蓄積すると共に蓄積したデータをグラフ化して前記表示手段に表示若しくは前記印刷手段で印刷することを特徴とする
請求項５及び請求項７記載の制御システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、トークンバス方式の通信ネットワークの通信負荷率の測定方法に関し、特に正確に通信負荷率を測定することが可能な測定方法及びこれを用いた制御システムに関する。
【０００２】
【従来の技術】
従来の制御システムのトークンバス方式の通信ネットワークでは通信の確実性を確保するために通信ネットワークの通信負荷率を意識したシステム設計が必要とされる。
【０００３】
従来の制御システムは制御室等に設置された制御操作監視ノードとフィールド等に分散して設置された制御ノードとから構成される。それぞれのノードは通信ケーブル等の通信系により相互に接続されていて互いにデータ通信等を行うことにより制御システムを構成する。
【０００４】
トークンバス方式（ＩＥＥＥ８０２．４規格）ではトークン（Ｔｏｋｅｎ）という特定の信号若しくはフレームを前記ノード間で巡回させ、このトークンを捕獲したノードのみが通信ネットワークへのアクセス権を得て必要な信号若しくはフレームを通信ネットワーク上に送信するものである。そして、トークンを巡回させる論理リングを形成することにより物理的形状がバス形であっても全てのノードに順次通信ネットワークへのアクセス権が与えられる。
【０００５】
図６は従来の制御システムの通信ネットワークの一例を示す構成ブロック図である。図６において１及び２は制御操作監視ノード、３及び４は制御ノード、１００は通信ネットワークである。制御操作監視ノード１及び２と制御ノード３及び４はそれぞれ通信ネットワークに１００に接続される。
【０００６】
ここで、図６に示す制御システムにおける通信負荷率の従来の測定方法について説明する。通信負荷率を求めるためには通信ネットワーク１００上で稼働中のノードの数、ノード番号の不連続数（以下、間隙数と呼ぶ。）及びトークンが各ノードが構成する論理リングを何回回転したかを示すトークン周回数等を取得して、これらをパラメータとして計算式により算出することができる。具体的には、制御操作監視ノード１等において個々にソフトウェアを起動して通信ネットワーク１００上で稼働中のノード数及び間隙数並びにトークン周回数を取得していた。
【０００７】
【発明が解決しようとする課題】
しかし、図６に示すような従来例では各パラメータ情報は各ノード間の通信等の個別の処理により取得できるものの、この場合、それぞれ得られた各パラメータ情報間の取得時間の差異により求めた通信負荷率は正確ではないと言った問題点があった。
【０００８】
例えば、通信ネットワーク１００上で稼動しているノード数、間隙数及びトークン周回数は時々刻々と変化しているのでノード数を得た時点とトークン周回数を得た時点とで時間的な差異がある場合にはトークン周回数が得られた時点での実際のノード数が得られたノード数に一致しない可能性があるので求められた通信負荷率の正確性が保証されないと言った課題があった。
従って本発明が解決しようとする課題は、正確に通信負荷率を測定することが可能な測定方法及びこれを用いた制御システムを実現することにある。
【０００９】
【課題を解決するための手段】
このような課題を達成するために、本発明のうち請求項１記載の発明は、
トークンバス方式の通信ネットワークの通信負荷率測定方法において、
第１のＩ／Ｏ要求処理を行い前記通信ネットワーク全体の情報を取得し、つづいて第２のＩ／Ｏ要求処理を行い前記通信ネットワークのアクセス権を有するノードの情報を取得しておいて、前記通信ネットワーク全体の情報から稼動中のノード数及び間隙数を求め、前記通信ネットワークのアクセス権を有するノードの情報からトークン周回数を求めると共に前記トークン周回数、前記ノード数及び前記間隙数から通信負荷率を計算し、求めた前記通信負荷率、前記トークン周回数、前記ノード数及び前記間隙数を表示することにより、それぞれ得られた各パラメータ情報間の取得時間の差異がなくなるので正確に通信負荷率を測定することが可能になる。
【００１０】
請求項２記載の発明は、
請求項１記載の発明である通信負荷率測定方法において、
前記Ｉ／Ｏ要求処理では、
プログラムが通信ドライバに対してＩ／Ｏ要求を出し、前記Ｉ／Ｏ要求を受けた前記通信ドライバは要求の対象となる通信コントローラの記憶手段にＩ／Ｏ要求を書き込んでおいて、前記通信コントローラは書き込まれたＩ／Ｏ要求の内容に基づき必要な処理を行うと共に記憶手段に処理した結果若しくは要求された値を書き込んだ後に、前記通信コントローラは前記通信ドライバに対して処理の終了を通知するため割り込み信号を送信し、前記通信ドライバは前記割り込み信号により前記記憶手段に書き込まれた情報を読み出すと共にこの値をプログラムに戻すことにより、それぞれ得られた各パラメータ情報間の取得時間の差異がなくなるので正確に通信負荷率を測定することが可能になる。
【００１１】
請求項３記載の発明は、
請求項１記載の発明である通信負荷率測定方法において、
求めた前記通信負荷率、前記トークン周回数、前記ノード数及び前記間隙数を印刷することにより、報告書等の作成が容易になる。
【００１２】
請求項４記載の発明は、
請求項１記載の発明である通信負荷率測定方法において、
求めた前記通信負荷率、前記トークン周回数、前記ノード数及び前記間隙数を周期的に蓄積すると共に蓄積したデータをグラフ化して表示若しくは印刷することにより、通信負荷率等のトレンドが分かるのでシステム設計が容易になる。
【００１３】
請求項５記載の発明は、
トークンバス方式の通信ネットワークの通信負荷率を測定する制御システムにおいて、
表示手段と、前記通信ネットワーク全体の情報を取得する第１のＩ／Ｏ要求処理と前記通信ネットワークのアクセス権を有するノードの情報を取得する第２のＩ／Ｏ要求処理を連続して行い、前記通信ネットワーク全体の情報から稼動中のノード数及び間隙数を求め、前記通信ネットワークのアクセス権を有するノードの情報からトークン周回数を求めると共に前記トークン周回数、前記ノード数及び前記間隙数から通信負荷率を計算し、前記通信負荷率、前記トークン周回数、前記ノード数及び前記間隙数を前記表示手段に表示する制御手段とを備えたことにより、それぞれ得られた各パラメータ情報間の取得時間の差異がなくなるので正確に通信負荷率を測定することが可能になる。
【００１４】
請求項６記載の発明は、
請求項５記載の発明である制御システムにおいて、
前記Ｉ／Ｏ要求処理では、
プログラムが通信ドライバに対してＩ／Ｏ要求を出し、前記Ｉ／Ｏ要求を受けた前記通信ドライバは要求の対象となる通信コントローラの記憶手段にＩ／Ｏ要求を書き込んでおいて、前記通信コントローラは書き込まれたＩ／Ｏ要求の内容に基づき必要な処理を行うと共に記憶手段に処理した結果若しくは要求された値を書き込んだ後に、前記通信コントローラは前記通信ドライバに対して処理の終了を通知するため割り込み信号を送信し、前記通信ドライバは前記割り込み信号により前記記憶手段に書き込まれた情報を読み出すと共にこの値をプログラムに戻すことにより、それぞれ得られた各パラメータ情報間の取得時間の差異がなくなるので正確に通信負荷率を測定することが可能になる。
【００１５】
請求項７記載の発明は、
請求項５記載の発明である制御システムにおいて、
印刷手段により前記通信負荷率、前記トークン周回数、前記ノード数及び前記間隙数を印刷することにより、報告書等の作成が容易になる。
【００１６】
請求項８記載の発明は、
請求項５及び請求項７記載の発明である制御システムにおいて、
前記通信負荷率、前記トークン周回数、前記ノード数及び前記間隙数を記憶手段に周期的に蓄積すると共に蓄積したデータをグラフ化して前記表示手段に表示若しくは前記印刷手段で印刷することにより、通信負荷率等のトレンドが分かるのでシステム設計が容易になる。
【００１７】
【発明の実施の形態】
以下本発明を図面を用いて詳細に説明する。図１は本発明に係る通信負荷率測定方法を用いた制御システムの一実施例を示す構成ブロック図である。図１において５はＣＰＵ等の制御回路、６はＣＲＴやＬＣＤ等の表示手段、７及び９は通信コントローラ、８及び１０は記憶手段，１００ａは通信ネットワークである。また、５〜８は制御操作監視ノード５０を、９〜１０は制御ノード５１を、５及び７は制御手段５２をそれぞれ構成している。
【００１８】
制御回路５の制御信号は表示手段６に接続され、制御回路５の入出力は通信コントローラ７及び記憶手段８に相互に接続される。また、通信コントローラ７の入出力も記憶手段７に相互に接続され、通信コントローラの通信入出力は通信ネットワーク１００ａに接続される。一方、通信コントローラ９の入出力は記憶手段１０に相互に接続され、通信コントローラ９の通信入出力は通信ネットワーク１００ａに接続される。
【００１９】
ここで、図１に示す実施例の動作を図２及び図３を用いて説明する。図２は制御回路５の動作を説明するフロー図、図３はその時点での通信可能なノードの情報（以下、ライブリストと呼ぶ。）の一例を示す説明図である。制御回路５で実行されるアプリケーションプログラム（以下、単にプログラムと呼ぶ。）は記憶手段８に格納されており、制御回路５が適宜記憶手段８から読み出して実行する。
【００２０】
図２中”Ｓ００１”において制御回路５は第１のＩ／Ｏ要求処理を行い、通信ネットワーク１００ａ全体の情報を取得する。そして、図２中”Ｓ００２”において制御回路５は第２のＩ／Ｏ要求処理を連続して行い通信ネットワーク１００ａのアクセス権を有するノードの情報を取得する。
【００２１】
図２中”Ｓ００３”において制御回路５は第１のＩ／Ｏ要求処理で取得した通信ネットワーク１００ａ全体の情報から通信ネットワーク１００ａ上の稼動ノード数及び間隙数を求める。
【００２２】
例えば、ライブリストが図３に示す６４ビットの値であった場合、ＬＳＢから数えて１ビット目、３ビット目、２３ビット目及び２４ビット目が”１”になっているので、ノード番号１，３，２３及び２４のノードが通信可能になっていることが分かる。このため、制御回路５はライブリストの”１”の個数をカウントすることにより通信ネットワーク１００ａ上で稼働中のノード数が”４”であることを得る。
【００２３】
一方、間隙数（ノード番号の不連続数）はノード番号が連続していない個所の数を示しているので、例えば、図３では１ビット目と３ビット目の間、３ビット目と２３ビット目の間及び２４ビット目と１ビット目の間が不連続個所となる。このため、制御回路５はライブリストが”０”から”１”に変化する立ち上がりの個数をカウントすることにより通信ネットワーク１００ａの間隙数が”３”とであることを得る。
【００２４】
そして、図２中”Ｓ００４”において制御回路５は第２のＩ／Ｏ要求処理で取得した通信ネットワーク１００ａのアクセス権を有するノードの情報からトークン周回数を求めると共に先に求めたノード数及び間隙数から通信負荷率を計算する。
【００２５】
ここで、１分間のトークン周回数を”Ｎｔ”、ノード数を”Ｎｎ”、間隙数を”Ｎｓ”、通信負荷率を”Ｒｌｏａｄ”とすれば、
0003632200.tif 000002
という経験式により導かれる。
【００２６】
例えば、１分間のトークン周回数を”３４０，０００回”として、図３から得られるようにノード数を”４”及び間隙数を”３”とすれば、
0003632200.tif 000003
となり、通信負荷率は”９．９％”になる。
【００２７】
さらに、図２中”Ｓ００５”において制御回路５は表示手段６を制御して求めた通信負荷率、トークン周回数、通信ネットワーク１００ａ上のノード数及び間隙数を表示させる。最後に、図２中”Ｓ００６”において制御回路５は定周期で実行するか否かを判断して、もし、定周期実行の場合は図２中”Ｓ００１”の処理に戻る。
【００２８】
ここで、更に、Ｉ／Ｏ要求処理に関して図４及び図５を用いて詳細に説明する。図４はプログラムと通信ドライバインターフェース（以下、単に通信ドライバと呼ぶ。）の関係を示す説明図、図５はＩ／Ｏ要求処理の詳細を示すフロー図である。
【００２９】
図４において５２及び１００ａは図１と同一符号を付してあり、１１はプログラム、１２は通信ドライバである。プログラム１１及び通信ドライバ１２は制御手段５２上で動作し、プログラム１１が通信ドライバ１２を介して他のノードの通信コントローラとデータのやり取りを行う。
【００３０】
図５中”Ｓ１０１”においてプログラム１１は通信ドライバ１２に対してＩ／Ｏ要求を出す。図５中”Ｓ１０２”において通信ドライバ１２は要求の対象となる通信コントローラの記憶手段にＩ／Ｏ要求を書き込む。
【００３１】
例えば、通信ネットワーク１００ａのアクセス権を有するノードが図１に示す制御ノード５１の場合には、通信ドライバ１２は通信コントローラ９を介して記憶手段１０にＩ／Ｏ要求を書き込む。
【００３２】
また、例えば、通信ネットワーク１００ａのアクセス権を有するノードが図１に示す制御操作監視ノード５０の場合には、通信ドライバ１２は通信コントローラ７を介して記憶手段８にＩ／Ｏ要求を書き込む。
【００３３】
そして、図５中”Ｓ１０３”において通信コントローラは書き込まれたＩ／Ｏ要求の内容に基づき必要な処理を行い、図５中”Ｓ１０４”において記憶手段（共有部分）に処理した結果や要求された値等を書き込むと共に図５中”Ｓ１０５”において通信ドライバ１２に対して処理の終了を通知するため割り込み信号を送信する。
【００３４】
例えば、Ｉ／Ｏ要求がトークン周回数の要求であった場合、通信コントローラ９は自分が保持しているトークン周回数の情報を記憶手段１０の共有部分に書き込むと共に通信ドライバ１２に対して割込み信号を送信する。
【００３５】
最後に、図５中”Ｓ１０６”において通信ドライバ１２は記憶手段に書き込まれた情報を読み出すと共にこの値をプログラム１１に戻す。例えば、通信ドライバ１２は通信コントローラ９からの割り込み信号を受信すると記憶手段１０に書き込まれているトークン周回数を読み出してプログラム１１に対して読み出したトークン周回数を渡す。
【００３６】
この結果、連続した２回のＩ／Ｏ要求処理により通信ネットワーク１００ａ全体の情報及び通信ネットワーク１００ａのアクセス権を有するノードの情報を取得し、これらの情報から通信負荷率の計算に必要なパラメータであるノード数、間隙数及びトークン周回数をそれぞれ求めることにより、得られた各パラメータ情報間の取得時間の差異がなくなるので正確に通信負荷率を測定することが可能になる。
【００３７】
なお、図１に示す実施例の説明に際して制御回路５は表示手段６を制御して求めた通信負荷率、トークン周回数、通信ネットワーク１００ａ上のノード数及び間隙数を表示させると記載したが、勿論これに限定される訳ではなく求めた通信負荷率等をプリンタ等の印刷手段により印刷したりしても構わない。この場合には求めた情報が印刷されるので報告書等の作成が容易になる。
【００３８】
また、連続して周期的に通信負荷率等を求めて記憶手段８等に蓄積して後にグラフ化してトレンドグラフ等を表示手段６に表示させたり印刷手段により印刷しても構わない。この場合には、通信負荷率等のトレンドが分かるのでシステム設計が容易になる。また、既設のシステムに対して周期的に通信負荷率を測定し、そのトレンドを求めることにより、一時的な通信の過負荷による通信障害の発生の兆候を知ることが可能になる。
【００３９】
また、図２に示すフロー図の説明に際しては図２中”Ｓ００６”のステップから図２中”Ｓ００１”にステップに即座にジャンプしている、言い換えれば、連続的に通信負荷率等を求めているが、予め設定した設定値により待機時間を設けて間欠的に通信負荷率等を求めても構わない。
【００４０】
また、説明の簡単のために制御操作監視ノード５０では制御回路５と通信コントローラ７を分離して説明しているが、１つの制御手段５２に２つの機能を持たせることが可能である。また、記憶手段８に関しても制御手段５２内に有するＲＯＭやＲＡＭ等の記憶手段を用いれば記憶手段８は必ずしも必要ではない。
【００４１】
また、説明の簡単のために制御ノード５１では通信コントローラ９と記憶手段１０を分離して記載しているが、通信コントローラ９内に有するＲＡＭやレジスタ等の記憶手段を用いれば記憶手段１０は必ずしも必要ではない。
【００４２】
【発明の効果】
以上説明したことから明らかなように、本発明によれば次のような効果がある。
請求項１，２，５及び請求項６の発明によれば、連続した２回のＩ／Ｏ要求処理により通信ネットワーク全体の情報及び通信ネットワークのアクセス権を有するノードの情報を取得し、これらの情報から通信負荷率の計算に必要なパラメータであるノード数、間隙数及びトークン周回数を求めることにより、それぞれ得られた各パラメータ情報間の取得時間の差異がなくなるので正確に通信負荷率を測定することが可能になる。
【００４３】
また、請求項３及び請求項７の発明によれば、求めた通信負荷率、トークン周回数、ノード数及び間隙数を印刷することにより、報告書等の作成が容易になる。
【００４４】
また、請求項４及び請求項８の発明によれば、求めた通信負荷率、トークン周回数、ノード数及び間隙数を周期的に蓄積すると共に蓄積したデータをグラフ化して表示若しくは印刷することにより、通信負荷率等のトレンドが分かるのでシステム設計が容易になる。
【図面の簡単な説明】
【図１】本発明に係る通信負荷率測定方法を用いた制御システムをの一実施例を示す構成ブロック図である。
【図２】制御回路の動作を説明するフロー図である。
【図３】通信可能なノードの情報の一例を示す説明図である。
【図４】プログラムと通信ドライバインターフェースの関係を示す説明図である。
【図５】Ｉ／Ｏ要求処理の詳細を示すフロー図である。
【図６】従来の制御システムの通信ネットワークの一例を示す構成ブロック図である。
【符号の説明】
１，２，５０  制御操作監視ノード
３，４，５１  制御ノード
５  制御回路
６  表示手段
７，９  通信コントローラ
８，１０  記憶手段
１１  プログラム
１２  通信ドライバ
５２  制御手段
１００，１００ａ  通信ネットワーク
【図１】
0003632200.tif 000004
【図２】
0003632200.tif 000005
【図３】
0003632200.tif 000006
【図４】
0003632200.tif 000007
【図５】
0003632200.tif 000008
【図６】
0003632200.tif 000009