(57)【特許請求の範囲】
【請求項１】
制御機器を接続した入力または出力ユニット、および制御機器を制御するためのユーザプログラムを実行するＣＰＵユニットをバス接続して組み合せて構成されたプログラマブルコントローラと、前記プログラマブルコントローラにバス接続されてＣＰＵユニットとＩＮ及びＯＵＴデータのやりとりをし、ネットワークによるシリアル通信機能を備えたマスタユニットと、前記マスタユニットとの間でネットワークを介してシリアル通信することで前記ＣＰＵユニットとＩＮまたはＯＵＴデータのやりとりをする複数のスレーブと、を含むネットワークシステムにおける前記複数のスレーブのうちの一つのスレーブであって、
当該スレーブは、
入力用及びまたは出力用の制御機器を接続し、前記ネットワークを介するシリアル通信により前記マスタユニットから受信したＯＵＴデータを前記出力用の制御機器へ出力する機能、または、ネットワークを介するシリアル通信により前記マスタユニットへ送信するＩＮデータを前記入力用の制御機器から入力する機能の少なくとも一方を有し、
前記ネットワークを介して供給されるネットワーク電源により電源供給がなされている時間を積算することにより当該スレーブ自身の通電時間を計測する計測手段と、
その計測手段で計測した通電時間の値と基準値とを比較判断する判断手段と、
予め定められた通信タイミングで前記マスタユニットとの間で前記ネットワークを介するシリアル通信により、前記入力用の制御機器から入力したＩＮデータを送信及びまたは前記マスタユニットからのフレームのヘッダ部を解析して自己宛てのフレームか否かを判断して自己宛てのフレーム中のＯＵＴデータを受信する機能と、前記判断手段で求めた判断結果を、前記ネットワークを介するシリアル通信により前記マスタユニットへ送信する機能と、前記計測手段で計測した通電時間の現在値を、前記マスタユニットからの要求に応じて前記ネットワークを介するシリアル通信により前記マスタユニットへ送信する機能とを有する通信制御手段と、
を備えたことを特徴とするスレーブ。
【請求項２】
制御機器を接続した入力または出力ユニット、および制御機器を制御するためのユーザプログラムを実行するＣＰＵユニットをバス接続して組み合せて構成されたプログラマブルコントローラと、前記プログラマブルコントローラにバス接続されてＣＰＵユニットとＩＮ及びＯＵＴデータのやりとりをし、ネットワークによるシリアル通信機能を備えたマスタユニットと、前記マスタユニットとの間でネットワークを介してシリアル通信することで前記ＣＰＵユニットとＩＮまたはＯＵＴデータのやりとりをする複数のスレーブと、を含むネットワークシステムにおける前記複数のスレーブのうちの一つのスレーブであって、
当該スレーブは、
入力用及びまたは出力用の制御機器を接続し、前記ネットワークを介するシリアル通信により前記マスタユニットから受信したＯＵＴデータを前記出力用の制御機器へ出力する機能、または、ネットワークを介するシリアル通信により前記マスタユニットへ送信するＩＮデータを前記入力用の制御機器から入力する機能の少なくとも一方を有し、
そのスレーブに接続されている制御機器へ当該スレーブから電力供給する時間を積算して、前記制御機器の通電時間を計測する計測手段と、
その計測手段で計測した通電時間の値と基準値とを比較判断する判断手段と、
予め定められた通信タイミングで前記マスタユニットとの間で前記ネットワークを介するシリアル通信により、前記入力用の制御機器から入力したＩＮデータを送信及びまたは前記マスタユニットからのフレームのヘッダ部を解析して自己宛てのフレームか否かを判断して自己宛てのフレーム中のＯＵＴデータを受信する機能と、前記判断手段で求めた判断結果を、前記ネットワークを介するシリアル通信により前記マスタユニットへ送信する機能と、前記計測手段で計測した通電時間の現在値を、前記マスタユニットからの要求に応じて前記ネットワークを介するシリアル通信により前記マスタユニットへ送信する機能とを有する通信制御手段と、
を備えたことを特徴とするスレーブ。
【請求項３】
前記通信制御手段は、前記計測手段で計測した通電時間に基づく非制御データの出力は、前記ＩＮデータまたはＯＵＴデータの通信と別に独立して送信するものであることを特徴する請求項１または２に記載のスレーブ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、スレーブに関するものである。
【０００２】
【発明の背景】
良く知られているように、ファクトリーオートメーション（以下、「ＦＡ」と称する）においては、プログラマブルコントローラ（以下、「ＰＬＣ」と称する）に直接或いはネットワークを介してＩ／Ｏ機器が接続される。ＰＬＣは、係るＩ／Ｏ機器の一種であるスイッチやセンサなどの入力機器からの情報を入力データとして取得し、予め組み込まれたユーザプログラムに従って、係る取得した入力データを用いて演算処理を実行してＩ／Ｏ機器の一種である出力機器への制御内容を決定し、その制御内容に対応する制御データをバルブやアクチュエータ、モータなどの出力機器へ出力することにより、ＦＡシステム全体の制御を行うようになっている。
【０００３】
より具体的には、ＰＬＣのＣＰＵユニットにおける制御は、入力ユニットに接続された入力機器から入力した信号をＣＰＵユニットのＩ／Ｏメモリに取り込み（ＩＮリフレッシュ）、予め登録されたラダー言語で組まれたユーザプログラムに基づき論理演算をし（演算実行）、その演算実行結果をＩ／Ｏメモリに書き込んで出力ユニットに送り出し（ＯＵＴリフレッシュ）、それにより出力ユニットは出力機器を駆動や停止する制御を行い、その後、通信ネットワークを介して通信処理するようないわゆる周辺処理を行う。このようにＰＬＣは、ＩＮリフレッシュ，演算実行，ＯＵＴリフレッシュ，周辺処理をサイクリックに繰り返し処理する。
【０００４】
このようなＰＬＣは、複数のユニットから構成される。すなわち、電源供給源の電源ユニット，ＰＬＣ全体の制御を統率するＣＰＵユニット，ＦＡの生産装置や設備装置の適所に取り付けたスイッチやセンサの信号を入力する入力ユニット，アクチュエータなどに制御出力を出す出力ユニット，入力と出力を併せ持つ入出力ユニット，通信ネットワークに接続するための通信ユニットなどの各種のユニットを適宜組み合わせて構成される。
【０００５】
さらに、リモートＩ／Ｏと呼ばれるネットワークシステムが知られている。このシステムでは、ＰＬＣに、マスタユニットを接続し、そのマスタユニットにデバイスネット（登録商標）等を介してスレーブを接続する。
【０００６】
このスレーブは、入力信号を取り込むＩＮスレーブ，出力信号を出力するＯＵＴスレーブ，入出力をするＭｉｘスレーブなどがあるが、ここではスレーブと称しておく。そして、スレーブの端子に、センサやリレーその他の各種機器が接続されている。また、マスタユニットは、上述のようにＰＬＣを構成するユニットのひとつであり、ＰＬＣに組み込まれている。これにより、例えばスレーブに接続された入力機器（スイッチやセンサなど）で検出したセンシング情報がフィールドネットワークを介してマスタユニットへシリアル通信されることでＰＬＣに取り込まれる。そして、ＰＬＣ側では、取得したセンシング情報に基づいてユーザプログラムが実行され、その実行結果が制御命令信号としてマスタユニットを経由して、ネットワークを介してスレーブに伝わり、スレーブから動作すべき出力機器（リレーやバルブ、アクチュエータなど）に対して制御命令を送るようになっている。
【０００７】
なお、スレーブに接続された機器の入力信号や出力信号などのＩ／Ｏ情報の送受は、スレーブとマスタユニットとの間で予め設定される通信タイミングで行い、ＰＬＣのサイクリックな処理とは非同期で、別のタイミングで動作している。そしてＰＬＣのＣＰＵユニットとマスタユニットは、バス接続されており、ＣＰＵユニットにおけるサイクリックな処理のうち、ＩＮリフレッシュやＯＵＴリフレッシュ（Ｉ／Ｏリフレッシュ）または周辺サービス処理でマスタユニットとの間でデータの送受が行われる。これにより、ＰＬＣのＣＰＵユニットは、リモートに配置された入力または出力機器をスレーブに接続し、ネットワークを介してデータの送受が行える。
【０００８】
ところで、最近のネットワークシステムでは、現在の制御内容を管理したりモニタすることに加えて、いわゆる保守情報やシステム状態情報、メンテナンス情報などの非制御情報を適宜に監視したりモニタしたい要求が高まってきている。従来のネットワークシステムでは、リモートＩ／Ｏを含む入力データおよび出力データがＰＬＣのメモリに存在するので、保守情報はすべてＰＬＣ側でプログラムを組んで取得するようにしていた。例えば、スレーブに接続される機器の動作時間やＩ／Ｏ情報が違う状態に変化するまでに要した時間を計測することにより求めることができる。係る処理を行うためには、その計測を行うようなユーザプログラムを使用者が作成し、ＰＬＣのＣＰＵユニットでそのプログラムを実行処理することになる。
【０００９】
しかし、このようにＰＬＣ側で保守情報を得ようとすると、２つ問題点が生じる。第１は、ＰＬＣのプログラム実行処理の負荷が増えてしまう。これは保守系の情報取得のためのプログラム実行の負担が生じるからである。第２は、マスタとスレーブとの通信負荷が増えてしまう。これは、常に最新の情報をスレーブから得る必要があるので、ＰＬＣのマスタとスレーブとの通信処理のなかで、Ｉ／Ｏデータとしての制御情報に加えて、保守情報に関する基礎データも通信する必要が生じる。こうすると通信情報量が増えることになり、通信処理時間が増えて、マスタとスレーブ間の通信サイクルが長くなってしまう。
【００１０】
そこで、本発明は、保守系の情報を得る場合に、ＰＬＣ側の制御系に影響を少なくすることを目的とする。より具体的には、保守系の情報の１つであるスレーブ或いは接続された制御機器に対する通電時間を、スレーブ自身が計測し、その結果をネットワークを介してモニタできるようにして、従来に比べてＰＬＣ側の制御負荷を減らすとともにモニタの利便性を向上することを目的とする。
【００１１】
次に、さらに具体的なネットワークシステムを図を用いて説明する。図１に示すように、ＰＬＣユニット１と通信機能を備えたマスタユニット２を一体化するとともに、そのマスタユニット２を制御系データを送受するためのフィールドネットワーク３に接続する。また、このフィールドネットワーク３には、複数のスレーブ４ａ，４ｂ，４ｃが接続される。
【００１２】
そして、各スレーブ４ａ，４ｂ，４ｃには、センサ等の入力機器５ａや、バルブ，モータ等の出力機器５ｂが接続される。なお、図示の例では、スレーブ４ａは、入力機器５ａのみが接続されているためＩＮスレーブとも称され、スレーブ４ｂは、出力機器５ｂのみが接続されているためＯＵＴスレーブとも称され、スレーブ４ｃは、入力機器５ａと出力機器５ｂが接続されているためＭｉｘスレーブとも称されることがある。なお、以下の説明で、特に区別をする必要がない場合に、単にスレーブと称するとともに符号「４」を付す。また、入力機器５ａと出力機器５ｂを区別する必要がない場合には単に機器と称するとともに、符号「５」を付す。
【００１３】
係る構成のネットワークシステムでは、ネットワーク電源装置６を設置し、そのネットワーク電源装置６からフィールドネットワーク３を経由して複数のスレーブ４に対して電源が供給される。そして、各スレーブ４に接続された機器５に対する電源供給は、上記したネットワーク電源装置６からスレーブ４に対して供給される電源を利用し、スレーブ４を経由して供給されるようにしてもよい。
【００１４】
また、各種機器５に対する電源供給源は、上記したネットワーク電源装置６に限ることはなく、例えば、別途設けた入出力機器電源装置７を用いるものもある。すなわち、入出力機器電源装置７の電源出力を各スレーブ４に与え、そのスレーブ４を経由して機器５に電源供給する。なお、この場合の入出力機器電源装置７は、機器５のための電源であり、スレーブ４に対する電源供給は、ネットワーク電源装置６から行われる。
【００２３】
一方、別の具体的なシステム構成としては、図２に示すようなものがある。すなわち、ＰＬＣユニット１と、通信機能を備えたマスタユニット２を一体化するとともに、そのマスタユニット２をフィールドネットワーク３に接続する。また、このフィールドネットワーク３には、ＯＵＴスレーブ４ｂやＩＮスレーブ４ａが接続される。係る基本的なネットワーク構成は、図１に示すものと同様である。
【００２４】
そして、この例では、ＯＵＴスレーブ４ｂには、出力機器５ｂとしてのアクチュエータ８が接続されている。このアクチュエータ８は、ＰＬＣユニット１からの制御命令（ＯＮ信号）を受けたＯＵＴスレーブ４ｂが、アクチュエータ８が接続されているＩ／Ｏ端子（ＯＵＴ端子）をＯＮにすることにより、移動体８ａが前進移動する。
【００２５】
一方、ＩＮスレーブ４ａには、入力機器５ａとしてのセンサ９が接続されており、このセンサ９にてアクチュエータ８の動作を監視している。つまり、アクチュエータ８内の移動体８ａが所定位置（図中点線で示す位置）まで移動してくると、その移動体８ａをセンサ９が検出し、検出信号を出力するようになっている。
【００２６】
その検出信号がＩＮスレーブ４ａに与えられるので、ＩＮスレーブ４ａがＰＬＣユニット１に向けて検出信号を受信したこと（所定のＩ／Ｏ端子（ＩＮ端子）がＯＮになったこと：動作完了通知）を出力する。これにより、ＰＬＣユニット１は、アクチュエータ８が所定量移動したことが分かるので、ＯＵＴスレーブ４ｂに対して停止命令（原点復帰命令）を送る。
【００２７】
そして、上記処理を実際に行うには、各スレーブ４ａ，４ｂは、マスタユニット２との間でマスタ−スレーブ間通信を行い、上記した各信号（データ）の送受を行う。従って、ＰＬＣユニット１は、係るマスタユニット２を経由して各スレーブ４ａ，４ｂと通信することになる。
【００２８】
さらに、ＰＬＣユニット１は、ユーザプログラムに従ってサイクリックに処理を実行し、１回のサイクル毎にＩＮ／ＯＵＴのリフレッシュ処理が行われ、そのときに、ＯＵＴスレーブ４ｂに向けて信号を出力したり、ＩＮスレーブ４ａからの信号を受信したりする。一方、マスタ−スレーブ間通信では、上記したＰＬＣユニット１側でのサイクリック処理とは非同期で、自己のタイミング（通信サイクル）で所定のスレーブとの間で通信を行うようにしている。
【００３３】
【課題を解決するための手段】
上記した最初の目的を達成するため、本発明に係るスレーブは、制御機器を接続した入力または出力ユニットおよび制御機器を制御するためのユーザプログラムを実行するＣＰＵユニットをバス接続して組み合せて構成されたプログラマブルコントローラと、前記プログラマブルコントローラにバス接続されてＣＰＵユニットとＩＮ及びＯＵＴデータのやりとりをし、ネットワークによるシリアル通信機能を備えたマスタユニットと、前記マスタユニットとの間でネットワークを介してシリアル通信することで前記ＣＰＵユニットとＩＮ及びＯＵＴデータのやりとりをする複数のスレーブと、を含むネットワークシステムにおける前記複数のスレーブのうちの一つのスレーブである。そして、当該スレーブは、入力用及びまたは出力用の制御機器を接続し、前記ネットワークを介するシリアル通信により前記マスタユニットから受信したＯＵＴデータを前記出力用の制御機器へ出力する機能、または、ネットワークを介するシリアル通信により前記マスタユニットへ送信するＩＮデータを前記入力用の制御機器から入力する機能の少なくとも一方を有し、前記ネットワークを介して供給されるネットワーク電源により電源供給がなされている時間を積算することにより当該スレーブ自身の通電時間を計測する計測手段と、その計測手段で計測した通電時間の値と基準値とを比較判断する判断手段と、予め定められた通信タイミングで前記マスタユニットとの間で前記ネットワークを介するシリアル通信により、前記入力用の制御機器から入力したＩＮデータを送信及びまたは前記マスタユニットからのフレームのヘッダ部を解析して自己宛てのフレームか否かを判断して自己宛てのフレーム中のＯＵＴデータを受信する機能と、前記判断手段で求めた判断結果を、前記ネットワークを介するシリアル通信により前記マスタユニットへ送信する機能と、前記計測手段で計測した通電時間の現在値を、前記マスタユニットからの要求に応じて前記ネットワークを介するシリアル通信により前記マスタユニットへ送信する機能とを有する通信制御手段と、を備えて構成した。
【００３４】
また、別の解決手段としては、制御機器を接続した入力または出力ユニットおよび制御機器を制御するためのユーザプログラムを実行するＣＰＵユニットをバス接続して組み合せて構成されたプログラマブルコントローラと、前記プログラマブルコントローラにバス接続されてＣＰＵユニットとＩＮ及びＯＵＴデータのやりとりをし、ネットワークによるシリアル通信機能を備えたマスタユニットと、前記マスタユニットとの間でネットワークを介してシリアル通信することで前記ＣＰＵユニットとＩＮ及びＯＵＴデータのやりとりをする複数のスレーブと、を含むネットワークシステムにおける前記複数のスレーブのうちの一つのスレーブである。そして、当該スレーブは、入力用及びまたは出力用の制御機器を接続し、前記ネットワークを介するシリアル通信により前記マスタユニットから受信したＯＵＴデータを前記出力用の制御機器へ出力する機能、または、ネットワークを介するシリアル通信により前記マスタユニットへ送信するＩＮデータを前記入力用の制御機器から入力する機能の少なくとも一方を有し、そのスレーブに接続されている制御機器へ当該スレーブから電力供給する時間を積算して、前記制御機器の通電時間を計測する計測手段と、その計測手段で計測した通電時間の値と基準値とを比較判断する判断手段と、予め定められた通信タイミングで前記マスタユニットとの間で前記ネットワークを介するシリアル通信により、前記入力用の制御機器から入力したＩＮデータを送信及びまたは前記マスタユニットからのフレームのヘッダ部を解析して自己宛てのフレームか否かを判断して自己宛てのフレーム中のＯＵＴデータを受信する機能と、前記判断手段で求めた判断結果を、前記ネットワークを介するシリアル通信により前記マスタユニットへ送信する機能と、前記計測手段で計測した通電時間の現在値を、前記マスタユニットからの要求に応じて前記ネットワークを介するシリアル通信により前記マスタユニットへ送信する機能とを有する通信制御手段と、を備えて構成した。
上記の各発明を前提として、前記通信制御手段は、前記計測手段で計測した通電時間に基づく非制御データの出力は、前記ＩＮデータまたはＯＵＴデータの通信と別に独立して送信するものとするとよい。
【００４０】
上記した各発明によれば、計測手段によりスレーブ自身で、スレーブの通電時間や、ＩＯ通電時間を計測し、計測値を取得することができる。計測手段は、通常のリモート回線を介してコントローラ（マスタユニット）とＩ／Ｏデータを送受して行う制御系の処理とは独立して行われる。従って、制御への影響は可及的に抑制できる。また、計測手段で計測した計測値に基づく情報である保守情報等の非制御データ（非Ｉ／Ｏデータ）はスレーブで確保しておき、所定のタイミングで回線（ネットワーク）に出力することで、所定の送信先に通知することができる。これにより、その送信先は、計測値に基づく情報を収集できる。
【００４１】
なお、出力する機能の出力先は、コントローラとすることもできるし、回線に接続されたモニタ手段やスレーブとすることもできる。もちろん、これ以外でも良い。そして、コントローラは、マスタユニットやＰＬＣなどを含む。また、モニタ手段は、モニタ装置はもちろんのことコンフィグレータなども含む。
【００４２】
さらに、前記出力する機能は、スレーブ内部の判断結果，電源立上げ，送信タイマなどの内部トリガに従って出力するように構成できる。もちろん、外部トリガに基づくものでも良い。
【００４３】
ここで、「内部トリガ」とは、スレーブ自身の所定の処理実行の結果に基づくもので、スレーブ内部で生成されるものである。そして、内部トリガの一例を示すと、以下のものがある。すなわち、スレーブで計測した計測値がしきい値に達したり、しきい値を越えたかどうかを判断すればその判断結果が生じる。その生成信号をトリガ信号として利用するものがある。また、スレーブの電源を入れて初期処理をする場合、その初期処理のなかで不揮発性メモリに記憶した情報を回線に出す処理をしたり、初期処理のなかでトリガ生成することなどもある。さらに、スレーブ内で時計を持たせておき、その時計により所定時間経過のたびに周期的にトリガ信号を生成したり、所定時刻でトリガ信号を生成するものもある。また、マスタとの通信トラフィックの状態に基づき、通信処理に余裕があるときにトリガ信号を生成したり、電圧異常などの異常になったときにトリガ信号を生成するものなどがある。
【００４４】
一方、「外部トリガ」とは、ネットワークを介してスレーブが受けたコマンドに基づくもので、スレーブの外で生成されるものである。そして、外部トリガの一例を示すと、マスタからスレーブへの情報要求コマンド，モニタからスレーブへの情報要求コマンド，コンフィグレータからの情報要求コマンド，ツール発信で、ＰＬＣ経由やマスタ経由で送られてくるコマンドなどがある。
【００５２】
なお、実際の各時間情報は、内蔵するタイマ，カウンタ，時計などの時間を計ることのできる計時手段から取得する。つまり、時刻情報のように絶対的な情報も有れば、タイマ値，カウンタ値のように相対的な情報もある。時刻情報で有れば、スタート時刻とストップ時刻の差を求めることにより、通電時間が求められる。また、カウンタ値などの場合には、スタート時のカウンタ値とストップ時のカウンタ値の差分を求めることにより、動作時間を求めることができる。この場合に、カウンタ値の差分のままでも良いし、カウンタ値が１進むために要する時間を掛けることにより、何秒等というように具体的な時間情報を得ることもできる。また、スタート時にタイマ，カウンタを「０」にリセットした後、計時開始し、ストップ時に係る計時を停止するというようにストップウォッチのような機能を持たせてもよい。このようにすると、スタート時の「０」との差分、つまり、停止したときの値がそのまま通電時間となるので、演算処理が不要になる。
【００６９】
上記した各発明において、装置とは実施の形態では入力機器と同一のネットワークに接続されたスレーブのＯＵＴ端子に接続された出力機器（アクチュエータ１４）に対応するが、本発明はこれに限ることは無く、本発明のスレーブ等が接続されたネットワーク以外のネットワークに接続された出力機器でもよいし、ネットワークとは別の装置でも良い。
そして、監視対象の装置とは、物理的に同一と認められる１つの装置はもちろんのこと、物理的に別の複数の装置であっても、その複数の装置が協働その他関連して動作するシステムを構成する場合、係るシステムも本発明でいう装置に該当する。
【００７０】
さらに、所定のタイミングで、前記通電時間と前記判断手段で求めた比較結果の少なくとも一方を、ネットワークを介してマスタに通知する機能を備えるとよい。係る機能を実行することにより、マスタひいてはＰＬＣや上位コンピュータなどに通電時間等を通知することにより、警報を発したりすること等ができる。
【００７６】
この発明によるスレーブを構成する各手段を専用のハードウエア回路によって実現することができるし、プログラムされたコンピュータによって実現することもできる。
【００７７】
【発明の実施の形態】
図３は、本発明が適用されるシステム構成の一例を示している。同図に示すように、本発明の参考例１では、ＰＬＣユニット１０と通信機能を備えたマスタユニット１１を一体化するとともに、そのマスタユニット１１をフィールドネットワーク（リモート回線）１２に接続する。なお、このＰＬＣユニット１０とマスタユニット１１はバス接続されている。また、このフィールドネットワーク１２には、入力機器と出力機器を接続可能なスレーブであるＭｉｘスレーブ１３が接続されている。
【００７８】
ＰＬＣユニット１０は、ＣＰＵユニットとも称されるもので、Ｉ／Ｏリフレッシュ，プログラム実行，周辺処理をサイクリックに処理している。なお、図示省略するが、ＰＬＣユニット１０以外にも、必要に応じて各種のユニットが連結され、ＰＬＣを構成するが、係るユニット自体は従来公知のものであるので説明を省略する。また、マスタユニット１１は、Ｍｉｘスレーブ１３との間で、マスタ−スレーブ間通信を行い、マスタユニット１１からの要求に応じてＭｉｘスレーブ１３に接続された入力機器，出力機器のＩ／Ｏデータの送受を行う。そして、ＰＬＣユニット１０とマスタユニット１１との間のＩ／Ｏデータ交換は、ＰＬＣユニット１０が行うサイクリックな処理におけるＩ／Ｏリフレッシュ処理として、バスを介したデータ通信により行われる。なお、上記したマスタ−スレーブ間通信は、ＰＬＣユニット１０のサイクリック処理とは非同期に行われる。
【００７９】
このＭｉｘスレーブ１３は、図２に示したＯＵＴスレーブ４ｂとＩＮスレーブ４ａの機能が組み込まれた混在タイプのもので、ＯＵＴ端子にアクチュエータ１４が接続され、ＩＮ端子にはそのアクチュエータ１４の移動体１４ａの位置を監視するセンサ１５が接続されている。
【００８０】
Ｍｉｘスレーブ１３の内部構造の一例を示すと、図４のようになっている。すなわち、フィールドネットワーク１２に接続され、データの送受をする送受信回路１３ａと、その送受信回路１３ａに接続されたＭＰＵ１３ｂと、出力機器に接続される出力回路１３ｃと、入力機器に接続される入力回路１３ｄを備えている。更に、外部不揮発性メモリ１３ｅやタイマ（内部時計）１３ｆ等を備えている。
【００８１】
そして、送受信回路１３ａは、フィールドネットワーク１２上を流れるフレームを受信し、ヘッダ部を解析して自己宛のフレームか否かを判断し、自己宛のフレームのみを最終的に受信してＭＰＵ１３ｂに渡す機能と、ＭＰＵ１３ｂから与えられた送信フレーム（例えば、マスタユニット１１に向けたＩＮデータを送信するためのフレーム）を、フィールドネットワーク１２上に出力する機能を有している。
【００８２】
ＭＰＵ１３ｂは、送受信回路１３ａから与えられた受信したフレームのデータ部中に格納された情報に従って所定の処理を実行するもので、基本機能としては、データ部中のＯＵＴデータに従って、出力回路１３ｃに対し所定のＯＵＴ端子をＯＮ／ＯＦＦするための制御信号を発する。また、入力回路１３ｄを介して、入力端子のＯＮ／ＯＦＦ状態を取得し、その取得した情報をＩＮデータとしてマスタユニット１１に対して送信するフレームを生成し、送受信回路１３ａに渡す機能を有する。
【００８３】
上記したシステムにおけるアクチュエータ１４の動作制御は、ＰＬＣユニット１０に実装されたユーザプログラムをサイクリックに実行し、所定の条件に合致した場合に、Ｍｉｘスレーブ１３のＯＵＴ端子をＯＮにすべくマスタユニット１１に対して通知し、マスタユニット１１は、通信サイクルに従って対応するＭｉｘスレーブ１３に向けて所定のフレーム（ＯＵＴデータ）を送信する。
【００８４】
Ｍｉｘスレーブ１３は、受信したフレーム（ＯＵＴデータ）に従って、アクチュエータ１４に接続されるＯＵＴ端子をＯＮにする。これにより、図示省略するバルブがＯＮ（開く）となり、移動体１４ａが前進移動する。
【００８５】
一方、従来例でも説明したとおり、アクチュエータ１４に併設してセンサ１５が設置されているので、移動体１４ａが所定位置（本参考例１では、移動完了位置）まで移動してくると、センサ１５がＯＮ、つまり、センサ１５が接続されたＩＮ端子がＯＮになる。そのようにＩＮ端子がＯＮになったことは、入力回路１３ｄを介してＭＰＵ１３ｂが取得できるので、自己のフレームの送信タイミングが来たときに、ＩＮデータとしてマスタユニット１１に向けて送信する。すると、マスタユニット１１は、取得したＩＮデータを、ＰＬＣユニット１０におけるリフレッシュ処理の際に渡す。
【００８６】
上記した各処理並びに係る処理を実行するための各処理部の機能・構成は、従来のものと同様であるので、その詳細な説明を省略する。ここで、本参考例１では、上記したアクチュエータの動作時間を計測する機能をＭｉｘスレーブ１３に設けた。
【００８７】
すなわち、ＭＰＵ１３ｂは、自己が保有するＯＵＴ端子やＩＮ端子の状態を認識できるので、例えば、図５に示すように所定のＯＵＴ端子がＯＮになってからＩＮ端子がＯＮになるまでの時間ｔをタイマ（内部時計）１３ｆを用いて計測し、その計測結果を内部揮発性メモリ１３ｂ′に格納する。なお、ここでは、ＯＵＴ端子，ＩＮ端子がＯＮになることと信号が立ち上がることは同じ状態のことを示している。
【００８８】
さらに、Ｍｉｘスレーブ１３は、正常な動作時間に関する情報も保持しており、上記計測結果が、正常な動作時間内か否かを判断し、アクチュエータ１４の状態を判定する機能（判定結果はもちろん内部揮発性メモリ１３ｂ′に記憶保持する）を持たせている。そして、上記した正常動作時間は、例えば１０ｍｓ以内というように１つのしきい値で設定されるものでも良いし、９０ｍｓから１００ｍｓのように２つのしきい値を用いて設定されるものでも良い。この正常動作時間を特定する設定値は、外部不揮発性メモリ１３ｅに格納されており、電源投入の都度、内部揮発性メモリ１３ｂ′に展開される。
【００８９】
さらに、具体的な図示は省略するが、監視対象となるＯＵＴ端子とＩＮ端子の番号の組み合わせと、上記した設定値が関連付けられたテーブル構造として外部不揮発性メモリ１３ｅに格納されている。そして、係る情報が内部揮発性メモリ１３ｂ′に展開されるが、その内部揮発性メモリ１３ｂ′には、さらに、実際に計測結果や判定結果も関連付けて格納されるテーブル構造となっている。
【００９０】
そして、具体的には、ＭＰＵ１３ｂの処理部１３ｂ″が、図６に示すフローチャートを実行するようになっている。なお、演算対象，監視対象の動作時間ｔは、図５に示したようにＯＵＴ端子並びにＩＮ端子のいずれもＯＦＦ（Ｌｏｗ）からＯＮ（Ｈｉｇｈ）に変化したこと、つまり、信号の立ち上がり同士を紐付けし、そのＯＵＴ信号の立ち上がりからＩＮ信号の立ち上がりまでの時間を動作時間ｔとするものを前提としている。
【００９１】
図６に示すように、まず、該当するＯＵＴ端子（図３の場合、アクチュエータ１４が接続されているＯＵＴ端子）の立ち上がり（ＯＮ信号になったとき）の有無を判断する（ＳＴ１）。
【００９２】
そして、立ち上がりを検知したならば、タイマ１３ｆからそのときのスタート時間（カウント値）を取得する（ＳＴ２）。なお、本参考例１では、動作時間を計測するだけであるのでタイマ（カウンタ）を用いたが、動作時間を計測した日時データも関連付けて取得する場合には、内部時計を用いると良い。
【００９３】
次に、該当するＩＮ端子の立ち上がり（ＯＮ信号になったとき）の有無を判断する（ＳＴ３）。そして、立ち上がりが検知される（ステップ３の分岐判断でＹｅｓ）と、タイマ１３ｆの値（ストップ時間）を取得し（ＳＴ４）、ステップ２で取得したスタート時間との差分を求め、動作時間を算出し、その結果を結果バッファに格納する。
【００９４】
一方、正常なアクチュエータの動作時間を規定する設定値を予め保有しており、ステップ５で算出した動作時間を設定値と比較し、範囲内（正常）か否かを判断し、その比較結果も合わせて結果バッファに格納する（ＳＴ６）。
【００９５】
そして、設定された監視対象に対して順次上記処理を繰り返し実行し、全ての点に対して処理を実行したならば（ＳＴ７でＹｅｓ）、求めた動作時間と比較結果を各監視対象（アクチュエータ１４等）のステータス情報として内部揮発性メモリ１３ｂ′に記憶保持する（ＳＴ８）。係る処理は割り込み命令に従って実行されるため、ステップ８までの処理が実行されたならば次の命令が来るのを待つ。
【００９６】
一方、上記記憶保持した動作時間や比較結果は、例えば、マスタユニット１１が所定のタイミングでメッセージを出力し、そのメッセージを受けたＭｉｘスレーブ１３が、メッセージで指定された対象機器（番地）の動作時間等をメッセージに対するレスポンスとして返すことによりマスタユニット１１ひいてはＰＬＣユニット１０に伝えることができる。このように、マスタユニット１１からのメッセージを利用すると、マスタユニット１１側では、ＩＯデータの送信とは独立した通信であり、必要な時に、必要な監視対象の情報のみを受け取ることができるので好ましい。
【００９７】
また、係る動作時間等の通知は、上記したメッセージに対するレスポンスに限ることは無く、例えば、マスタ−スレーブ間のｐｏｌｌｉｎｇ処理により伝達することもできる。つまり、各スレーブは、所定のタイミングでＩＮデータをマスタユニット１１に対し送信する。従って、図７に示すように、通常の入力端子の状態であるＩＮデータに、そのスレーブが管理する演算結果（動作時間や比較結果等）を付加したものをデータ部に備えた送信フレームを生成し、送信することにより通知できる。この方法によれば、マスタユニット１１は、動作時間の取得を要求するメッセージを生成し送信する必要が無くなるので好ましい。
【００９８】
さらに別の方式としては、スレーブ側が主体となって動作するＣｈａｎｇｅ  ｏｆ  Ｓｔａｔｅを用いることもできる。すなわち、Ｍｉｘスレーブ１３は、自己が管理すべき対象の動作時間や、比較結果の変化があった場合にのみ、その結果をマスタユニット１１に向けて送信する。この方式をとると、フィールドネットワーク１２上に無駄なデータが流れず、かつ、必要なときだけマスタユニット１１が動作時間等を受信できるので、トラフィックが軽減できる。
【００９９】
本参考例１では、動作時間の算出、さらにはステータスの判定処理までスレーブ側で実行され、記憶保持されるので、ＰＬＣユニット１０におけるサイクリックな処理はもちろんのこと、フィールドネットワーク１２における通信サイクルの影響も無く必要な情報が得られる。しかも、動作時間の算出は、スレーブ内で処理するため、サイクリック処理における１サイクルに要する処理時間より短い動作時間であっても、求めることができる。
上記の参考例１では、計測対象の物理量として動作時間を求めるようにしたが、本発明の好適な一実施形態では、スレーブの通電時間を求めるようにした。これは、電源がＯＮになっている時間を積算することにより求めることができる。また、スレーブに接続された入力機器や出力機器への通電時間としてもよい。そして、そのようにして求めた通電時間や比較結果は、例えば、マスタユニット１１が所定のタイミングで、出力するメッセージに対するレスポンスとしてマスタユニット１１ひいてはＰＬＣユニットに伝えることかでできる。
【０１４４】
以上詳細に説明したように、上記した実施の形態によれば、通電時間の算出処理等は、ネットワークに接続されたスレーブやマスタなどのノード側で行うため、ＰＬＣ側のサイクリックタイムの影響を受けず、精度良く測定することができる。
【０１４５】
上記した実施の形態では、スレーブで制御機器（入力機器及びまたは出力機器）に関する物理量の計測値である通電時間を求めるとともに、基準値と比較し、所定の条件に合致した場合に、基準値との比較結果及びまたは動作時間をフィールドネットワーク１２へ出力し、そのフィールドネットワーク１２に接続された所定の装置（ノード）へ与えるようにした。送信先は、マスタユニットやスレーブに限ることは無く、ＰＬＣその他のコントローラはもちろんのこと、コンフィグレータやモニタなどでも良い。
【０１４６】
さらに、通知する情報も、判断結果及びまたは通電時間に加えて、制御機器の固有情報（非制御情報）を送るようにすると良い。すなわち、例えば通電時間が基準値よりも長くなった場合には交換時期に近づいているように設定していると、係る機器のＩＤを示す固有情報（機器名，製造者名，形式，製造番号）などを併せて出力することにより、ユーザは、故障した機器についての情報を予め知ることができる。従って、現場に行くに際し、係る機器用の交換部品や、交換する機器を携帯して行くことができ、メンテナンスを迅速に行うことができる。そして、各スレーブに、自己に接続されている制御機器についての固有情報を、予め記憶保持しておき、必要に応じて読み出して送信することにより対応できる。
【０１４８】
図８は、参考例２の全体構成を示すシステム構成図である。この参考例２では、一台のマスタユニット３０と複数箇所に分散配置された複数台のスレーブ３３とがフィールドネットワーク３２を経由して接続されたネットワークシステムである。スレーブ３３には、入力機器や出力機器などの機器（入出力機器３４）が接続され、マスタユニット３０との間でその入出力機器３４のＩ／Ｏデータの送受が行われる。この点は上記した参考例１，実施の形態でも同様である。
【０１４９】
なお、図示省略するが、このマスタユニット３０には、上記した参考例１，実施の形態と同様にＰＬＣユニットが連結され、ＰＬＣを構成する。また、ＰＬＣユニットとマスタユニット３０は必ずしも直接接続してＰＬＣを構成する必要は無く、マスタユニット３０をＰＬＣから独立させても良い。その場合に、フィールドネットワーク３２或いは別のネットワークを介してＩ／Ｏデータの交換を行うことになる。
【０１５０】
また、マスタユニット３０の付近には、ネットワーク電源装置３５が設置される。このネットワーク電源装置３５は、フィールドネットワーク３２に接続され、このフィールドネットワーク３２を経由してマスタユニット３０やスレーブ３３に対して電源電圧が供給される。さらに、このスレーブ３３を経由して入出力機器３４にも電源が供給される。さらにまた、このフィールドネットワーク３２には、ネットワークコンフィグレータ３６が接続され、このネットワークコンフィグレータに対しても、ネットワーク電源装置３５から電源供給される。
【０１５１】
上記ネットワークコンフィグレータ３６は、マスタユニット３０，スレーブ３３などのネットワークユニットの状態をモニタしたり、パラメータの読み出しや書き込みを行うものである。
【０１５２】
また、スレーブ３３は、このシステムを構成するリモートＩ／Ｏターミナル，耐環境ターミナル，リモートアダプタ，Ｉ／Ｏリンクユニット，センサターミナル，アナログ入力ターミナル，アナログ出力ターミナル，温度入力ターミナル，ＲＳ２３２Ｃユニット等から構成されるものである。
【０１５３】
上記構成において、複数台のスレーブ３３は、それぞれネットワーク電源装置３５からフィールドネットワーク３２を通じて供給されるネットワーク電源を用いて通信等の動作を行うが、このネットワーク電源は、ネットワーク電源装置３５からの距離に応じてそれぞれ異なる電圧降下を受ける。この参考例２では、さらに、ネットワーク電源を入出力機器３４へも供給しているので、入出力機器３４が電力を消費するときは、その分電圧降下が増大する。
【０１５４】
そして、上記複数台のスレーブ３３は、その動作保証電圧が、例えば、２４Ｖ〜１１Ｖのように決まっているので、上記ネットワーク電源のスレーブに供給される位置での電源電圧が、例えば、１１Ｖ以下になると通信不能になる。
【０１５５】
そこで、この参考例２のシステムにおいては、各スレーブ３３にそれぞれ加えられるネットワーク電源の状態を監視する電源監視手段を設けた。そして、電源監視手段で監視した各スレーブ３３のネットワーク電源の状態を示す電源状態情報を、ネットワークコンフィグレータ３６との通信により、フィールドネットワーク３２を経由してネットワークコンフィグレータ３６で収集し、各スレーブ３３のネットワーク電源の状態をネットワークコンフィグレータ３６で一元管理するように構成されている。
【０１５６】
図９は、図８に示したＰＬＣシステムにおける各スレーブ３３の要部構成を示したブロック図である。図９において、スレーブ３３は、電圧監視部３３ａ，最大値・最小値保持部３３ｂ，現在値記憶部３３ｃ，監視電圧記憶部３３ｄ，比較部３３ｅ，警報ステータス記憶部３３ｆ，通信制御部３３ｇを具備して構成される。
【０１５７】
ここで、電圧監視部３３ａは、フィールドネットワーク３２から供給されるネットワーク電源を監視し、その現在値および最大値，最小値を検出する。そして、電圧監視部３３ａで検出されたネットワーク電源の電圧の最大値及び最小値は、最大値・最小値保持部３３ｂに保持される。また、電圧監視部３３ａで検出されたネットワーク電源の電圧の現在値は、現在値記憶部３３ｃに記憶される。
【０１５８】
このスレーブ３３は、上記した最大値・最小値保持部３３ｂ並びに現在値記憶部３３ｃに格納されたＩ／Ｏデータでない非制御系情報の１つである電圧情報をネットワークコンフィグレータ３６に通信し、ネットワークコンフィグレータ３６にて内容を確認できるようにしている。さらに、現在の供給電圧が正常であるか否かの判定を行い、その判定結果を記憶する機能も有している。なお、供給電圧が動作不能になる完全な異常状態の場合には、装置自体が動作しないために正常か否かの判定もできない。そこで、本参考例２では、供給電圧が低下し、供給電圧が動作不能になる電圧に近い状態を異常、つまり、何かしらの警報が必要な状態とし、係る状態になったことを記録するようにしている。
【０１５９】
そして、本参考例２では、上記のような警報が必要な状態、つまり、動作しているものの動作不能になりそうな状態であるか否かの判断基準となる監視電圧を、監視電圧記憶部３３ｄに格納している。なお、この監視電圧は、この参考例２では、スレーブ３３の図示しないディップスイッチにより設定している。
【０１６０】
この監視電圧記憶部３３ｄに記憶される監視電圧は、例えば、スレーブ３３の動作保証電圧が２４Ｖ〜１１Ｖであると、その下限の電圧である１１Ｖよりもわずかに高い値に設定する。一例としては、１２Ｖに設定される。係る設定にすると、電圧降下に伴う供給電圧の低下に伴う通信不能になる前に、このスレーブ３３に供給されるネットワーク電源の状態をネットワークコンフィグレータ３６に通信することが可能になる。
【０１６１】
比較部３３ｅは、現在値記憶部３３ｃに記憶されたネットワーク電源の電圧の現在値と、監視電圧記憶部３３ｄに記憶された監視電圧とを比較し、ネットワーク電源の電圧の現在値が比較基準値である監視電圧を下回ると、警報ステータスを出力する。
【０１６２】
この比較部３３ｅから出力された警報ステータスは、警報ステータス記憶部３３ｆに記憶される。ここで、警報ステータス記憶部３３ｆにおける警報ステータスの記憶は、エラーフラグとして記憶することができる。
【０１６３】
上記した監視電圧に基づく判断結果である警報ステータス（エラーフラグ）を含め、供給電圧に関する情報は、スレーブ３３が保持している。このスレーブが保持している情報は、本参考例２では、ネットワークコンフィグレータ３６からの要求に対応して発信するレスポンスとしてネットワークコンフィグレータ３６に渡すようにしている。すなわち、最大値・最小値保持部３３ｂに保持されたスレーブ３３に供給されるネットワーク電源の電圧の最大値並びに最小値と、現在値記憶部３３ｃに記憶されたこのスレーブ３３に供給されるネットワーク電源の電圧の現在値と、警報ステータス記憶部３３ｆに記憶された警報ステータスは、図８に示したネットワークコンフィグレータ３６からの読出しコマンドにより最大値・最小値保持部３３ｂ，現在値記憶部３３ｃ，警報ステータス記憶部３３ｆから通信制御部３３ｇに読み出され、この通信制御部３３ｇからフィールドネットワーク３２を経由して、ネットワークコンフィグレータ３６にレスポンスとして送信される。
【０１６４】
また、係る電圧に関する情報の通信するタイミングは、上記したようにネットワークコンフィグレータ３６から発行されるコマンドの受信に伴い発信するレスポンスのように外部からのトリガに限ることはなく、内部トリガ、つまり判断結果に変化があったことを条件にスレーブ３３が自発的に送信するように構成してもよい。すなわち、スレーブ３３に対する供給電圧を監視し、一定のしきい値（監視電圧）以下になった場合に、警報ステータス（エラーフラグ）並びにその他の電圧情報をネットワークコンフィグレータ３６に向けて送信するようにしても良い。
【０１６５】
なお、上記した図９に示す電圧監視構成は、マスタユニット３０内にも備えることができる。係る構成にすると、上記したスレーブ３３と同様に、マスタユニット３０に対するネットワーク電源装置３５から供給される電圧の監視を行うことができる。
【０１６６】
図１０は、本参考例２におけるネットワークコンフィグレータ３６の要部構成を示したブロック図である。図１０に示すように、ネットワークコンフィグレータ３６は、入力部３６ａと、フィールドネットワーク３２に接続される通信制御部３６ｂと、表示部３６ｃとを具備して構成される。各部の具体的な機能は、以下の通りである。
【０１６７】
入力部３６ａは、キーボード，ポインティングデバイス，操作パネルなどのマンマシンインタフェースであり、ユーザの操作に伴い受け取ったこのシステムの電圧表示指示を通信制御部３６ｂに渡す機能を持つ。
【０１６８】
入力部３６ａから与えられた電圧表示指示に伴い、通信制御部３６ｂは、各スレーブ３３に対して現在値読出しコマンド，最大値読出しコマンド，最小値読出しコマンド，警報ステータス読出しコマンドを順次発行し、これらに対するスレーブ３３からのレスポンス受信により各スレーブ３３におけるネットワーク電源の電圧の現在値，最大値，最小値並びに警報ステータスをそれぞれ収集する。そして、収集した情報を表示部３６ｃに渡す。
【０１６９】
表示部３６ｃは、ディスプレイなどの表示装置であり、通信制御部３６ｂから受け取った各スレーブ３３のネットワーク電源の状態を出力表示する。これにより、現在の電圧の状態をユーザに報知することができる。このように、ＰＬＣユニットのサイクリックな処理とは別系統の通信により、通常のＩ／Ｏデータの送受とは関係なくネットワークコンフィグレータ３６にて各スレーブ３３の状態を収集することができ、ユーザは集中管理することができる。
【０１７０】
次に、上記した処理、つまり各スレーブ３３が保持する供給電源の電圧の情報をネットワークコンフィグレータ３６が収集する機能を実現するための具体的な処理手順について説明する。
【０１７１】
図１１は、ネットワークコンフィグレータ３６の処理を示すフローチャートである。まず、入力部３６ａから各スレーブ３３の電圧表示指示が入力されたか否かを判断する（ＳＴ２１）。電圧表示指示が入力されていない（ステップ２１の分岐判断でＮＯ）ときは、再び電圧表示指示が入力されるのを待つが、電圧表示指示が入力されていると判断される（ステップ２１の分岐判断でＹＥＳ）と、スレーブ３３のユニット番号ｎを「１」に設定する（ＳＴ２２）。次いで、ユニット番号ｎは最後の番号であるか否かを判断する（ＳＴ２３）。なお、ステップ２２の次に実行される場合には、ｎ＝１であるので、最後の番号ではないので分岐判断はＮＯとなる。
【０１７２】
そして、ユニット番号ｎが最後でない場合（ステップ４３でＮＯ）は、スレーブ３３に供給されるネットワーク電源の電圧の現在値の読出しを指令するための現在値読出しコマンドを、ユニット番号ｎのスレーブに対して発行する（ＳＴ２４）。
【０１７３】
そして、ユニット番号ｎのスレーブ３３からの現在値読出しコマンドに対するレスポンスを受信したかを判断し（ＳＴ２５）、レスポンスを受信していないと（ステップ２５でＮＯ）、このレスポンスを待つ。レスポンスを受信すると（ステップ２５でＹＥＳ）、スレーブ３３のネットワーク電源の電圧の最大値の読出しを指令する最大値読出しコマンドをユニット番号ｎのスレーブ３３に対して発行する（ＳＴ２６）。
【０１７４】
そして、ユニット番号ｎのスレーブ３３からこの最大値読出しコマンドに対するレスポンスを受信したかを判断し（ＳＴ２７）、レスポンスを受信していないと（ステップ２７でＮＯ）、このレスポンスを待つ。レスポンスを受信すると（ステップ２７でＹＥＳ）、スレーブ３３に供給されるネットワーク電源の電圧の最小値の読出しを指令する最小値読出しコマンドをユニット番号ｎのスレーブ３３に対して発行する（ＳＴ２８）
そして、ユニット番号ｎのスレーブ３３からこの最小値読出しコマンドに対するレスポンスを受信したかを判断し（ＳＴ２９）、レスポンスを受信していないと（ステップ２９でＮＯ）、このレスポンスを待つ。レスポンスを受信すると（ステップ２９でＹＥＳ）、スレーブ３３に供給されるネットワーク電源の警報ステータスの読出しを指令する警報ステータス読出しコマンドをユニット番号ｎのスレーブに対して発行する（ＳＴ３０）。
【０１７５】
そして、ユニット番号ｎのスレーブ３３からこの警報ステータス読出しコマンドに対するレスポンスを受信したかを判断し（ＳＴ３１）、レスポンスを受信していないと（ステップ３１でＮＯ）、このレスポンスを待つ。レスポンスを受信すると（ステップ３１でＹＥＳ）、ユニット番号ｎをｎ＋１にインクリメントした（ＳＴ３２）後、ステップ２３に戻る。なお、上記した各処理ステップでレスポンスを受信した場合には、そのレスポンスとして送られてきた内容を抽出し、記憶保持する。
【０１７６】
上記処理を、ステップ２３で、ユニット番号ｎが最後であると判断されるまで繰り返し実行される。なお、ユニット番号ｎの最後の値は、予め記憶保持しておく。そして、このステップ２３の「最後か？」の判断は、厳密に言うと、「最後の番号を越えたか？」や「最後まで処理したか？」となる。そして、最後の番号まで処理を実行したならば（ステップ２３でＹＥＳ）、上記した各処理を実行して取得した現在値，最大値，最小値，警報ステータスに基づき各スレーブ３３のネットワーク電源の状態を表示する（ＳＴ３３）。これにより、今回の電圧表示指示の入力に伴うコマンド発行，レスポンス受信並びにレスポンスにより取得した情報の表示といった一連の処理を終了する。なお、上記した説明では、コマンドの発行はスレーブに対して行うようにしたが、ユニット番号にマスタユニットに割り当てられた番号を追加することにより、マスタユニットに供給されるネットワーク電圧の情報を取得することができる。
【０１７７】
このステップ３３の処理を実行した結果得られる表示部３６ｃへの電源状態の表示の具体例としては、例えば、図１２に示すようなものがある。なお、ここでは、マスタユニット３０へ供給されるネットワーク電圧に関する情報も取得したものとする。図１２に示す表示画面３７の上段には、マスタユニット３０（Ｍ）、各スレーブ３３（Ｓ１〜Ｓ６）からなるこのＦＡシステムの接続構成が示されており、下段には、各ユニットに供給されるネットワーク電源の最大値Ｌ１，現在値Ｌ２，最小値Ｌ３が折れ線グラフで表示されている。
【０１７８】
Ｌ４は、監視電圧記憶部３３ｄに記憶された監視電圧で、最小値Ｌ３あるいは現在値Ｌ２が監視電圧Ｌ４よりも下回ったユニットがある場合は、異常であるため、警報ステータスに応じて、所定の警報画面が表示される。
【０１７９】
なお、監視電圧Ｌ４と最小値Ｌ３との比較で警報を出すか、現在値Ｌ２との比較で警報を出すかは、ＦＡシステムの構成やスレーブ３３に接続された外部機器の電気特性等に応じて選択するのがよい。また、最小値Ｌ３、現在値Ｌ２のいずれの比較値が下回ったときにもその旨の警報を出すようにしてもよい。
【０１８０】
このような構成によれば、各スレーブ３３のネットワーク電源の状態を、最大値Ｌ１，最小値Ｌ３，現在値Ｌ２，監視電圧Ｌ４との関係においてユーザに視覚的に示すことができる。
【０１８７】
一方、各スレーブ３３における処理は、図１３に示すフローチャートのようになっている。すなわち、まず、ネットワークコンフィグレータ３６からコマンドを受信したかを判断する（ＳＴ５１）。ここで、ネットワークコンフィグレータ３６からコマンドを受信していないと（ステップ５１でＮＯ）、再びステップ５１へ戻る。つまり、このステップ５１の処理によりコマンド受信を待つことになる。
【０１８８】
ステップ５１で、ネットワークコンフィグレータ３６からコマンドを受信していると判断すると（ステップ５１でＹＥＳ）、次に、この受信したコマンドは現在値読出しコマンドかを判断する（ＳＴ５２）。ここで、受信したコマンドが現在値読出しコマンドの場合（ステップ５２でＹＥＳ）には、現在値記憶部３３ｃに格納されたこのスレーブのネットワーク電源の現在値を読み出すとともに、その現在値を通信制御部３３ｇが受信したコマンドに対するレスポンスとしてネットワークコンフィグレータ３６に返す（ＳＴ５３）。これにより、今回のコマンド受信に伴う処理を終了する。
【０１８９】
また、受信したコマンドが現在値読出しコマンドでない場合（ステップ５２でＮＯ）には、ステップ５４に飛び、受信したコマンドは最大値読出しコマンドかを判断する（ＳＴ５４）。そして、この受信したコマンドが最大値読出しコマンドである（ステップ５４でＹＥＳ）場合には、最大値・最小値保持部３３ｂに格納されたスレーブ３３に供給されたネットワーク電源の最大値をレスポンスとしてネットワークコンフィグレータ３６に返す（ＳＴ５５）。これにより、今回のコマンド受信に伴う処理を終了する。
【０１９０】
また、ステップ５４の分岐判断にて、受信したコマンドが最大値読出しコマンドでないと判断すると、ステップ５６に飛び、受信したコマンドは最小値読出しコマンドかを判断する（ＳＴ５６）。そして、この受信したコマンドが最小値読出しコマンドである（ステップ５６でＹＥＳ）場合には、最大値・最小値保持部３３ｂに格納されたスレーブ３３に供給されたネットワーク電源の最小値をレスポンスとしてネットワークコンフィグレータ３６に返す（ＳＴ５７）。これにより、今回のコマンド受信に伴う処理を終了する。
【０１９１】
また、ステップ５６の分岐判断にて、受信したコマンドが最小値読出しコマンドでないと判断すると、ステップ５８に飛び、受信したコマンドは警報ステータス読出しコマンドかを判断する（ＳＴ５８）。そして、この受信したコマンドが警報ステータス読出しコマンドであると（ステップ５８でＹＥＳ）、警報ステータス記憶部３３ｆに格納されたこのスレーブのネットワーク電源の警報ステータスをレスポンスとしてネットワークコンフィグレータ３６に返す（ＳＴ５９）。これにより、今回のコマンド受信に伴う処理を終了する。
【０１９２】
さらに、ステップ５８の分岐判断でＮＯ、つまり、受信したコマンドが警報ステータス読出しコマンドでない場合には、今回受信したコマンドは、ネットワーク電圧に関する情報の読出し要求のコマンドではないので、その受信したコマンドに対応する他の処理を実行する（ＳＴ６０）。その後、ステップ５１へ戻り、次のコマンドの受信を待つ。
【０１９６】
なお、上述の参考例２では、スレーブ３３が、全て、電源監視手段を持っている場合で説明した。ところで、ネットワークシステムの構成としては、電源監視手段を持っているスレーブと、電源監視手段を持っていない従来のスレーブとが混在している場合がある。係る場合に、ネットワークコンフィグレータ３６からの現在値読出しコマンドに対して、従来のスレーブはエラー応答となるから、ネットワークコンフィグレータ３６側では、当該スレーブが電源監視手段を持っていない従来のスレーブであることを判断することができる。また、ネットワークコンフィグレータ３６は、フィールドネットワークを介して接続されているスレーブの機種判別ができるので、電源監視手段を持っているスレーブにのみ現在値読出しコマンド等を発行することも可能である。したがって、この発明は、電源監視手段を持っているスレーブと電源監視手段を持っていない従来のスレーブが混在するネットワークシステムにも適用できる。
【０１９７】
さらにまた、この発明におけるマスタユニットはひとつに限られるものではなく、複数のマスタユニットを接続したＰＬＣシステムにも適用することができる。
上記の参考例２では、計測対象の物理量として電圧監視部３３ａにて電源電圧を求めるようにしたが、本発明の好適な一実施形態では、電源電圧に替えてスレーブの通電時間を求めるようにする。これは、電源がＯＮになっている時間を積算することにより求めることができる。また、スレーブに接続された入力機器や出力機器への通電時間としてもよい。
【０１９８】
以上説明したように上記した実施の形態によれば、システム構築時に、スレーブ等への通電時間を一箇所で集中モニタすることができるので、システムの構築時間を短縮することができる。また、システム稼動中におけるネットワーク電源の供給状態を随時チェックできるので、システムの保守メンテナンスが容易になる等の効果を奏する。
【０１９９】
なお、上記した実施の形態では、収集する装置をネットワークコンフィグレータとして説明したが、各スレーブに格納された情報をフィールドネットワークに接続されたモニタに送り、そのモニタに表示しても良い。また、マスタユニットとの間で係る非Ｉ／Ｏデータの送受を行うようにしてももちろん良い。
【０２００】
そして、本実施の形態でも、スレーブ等に対する通電時間に関する情報は、スレーブ側で検出するとともに記憶保持し、その情報の収集・表示は、コンフィグレータからの要求等に基づいて行うため、ＰＬＣ側のサイクリック処理への影響を与えない。
【０２０１】
図１４以降は、本発明の参考例３を示している。本参考例３では、計測対象の制御機器またはスレーブ自身に関する物理量として、スレーブに接続される入出力機器に対して供給されるＩ／Ｏ電源としたものである。
【０２０２】
図１４に示すように、このＦＡシステムは、上位局である一台のマスタユニット４０と複数箇所に分散配置された複数台のスレーブ４３とをフィールドネットワーク４２に接続されて構成される。なお、上記した各実施の形態，参考例と同様に、マスタユニット４０と、複数のスレーブ４３の間の相互間のネットワークであるフィールドネットワーク４２としては、フィールドバス（例えば、ＤｅｖｉｃｅＮｅｔ（登録商標）等）が用いられる。
【０２０３】
ここで、マスタユニット４０は、このＦＡシステムにおけるＰＬＣマスタを構成するものである。さらに、図３などと同様に、ＰＬＣユニット連携されている。
【０２０４】
また、スレーブ４３は、センサ等の検出器からの信号を入力するとともに、バルブ等の制御器に信号を出力するものである。すなわち、このＦＡシステムによる制御を行うために、所定の入出力機器４４が接続されている。この入出力機器４４には、センサなどの入力機器４４ａと、バルブ・モータなどの出力機器４４ｂがある。そして、各スレーブ４３に入出力機器電源装置４５の出力を接続し、その入出力機器電源装置４５から各入出力機器４４に対する電源供給を受けるようにしている。
【０２０５】
さらに、図１５に示すように、入出力機器電源装置４５には、センサ等の入力機器４４ａに供給する入力用電源部４５ａとバルブ等の出力機器４４ｂに供給する出力用電源部４５ｂを備えている。そして、入力用電源部４５ａ並びに出力用電源部４５ｂからの供給電圧は、入出力機器電源監視部４３ａにも与えられる。これにより、入出力用電源監視部４３ａでは、電圧値を監視し、しきい値と比較することによりＯＮ／ＯＦＦを判断することができる。
【０２０６】
なお、スレーブ４３自体に対する電源供給は、図示省略するが、上記した参考例２と同様にフィールドネットワーク３２に接続されたネットワーク電源装置３５から供給を受けるようにすることができる。もちろん、ネットワークを介さずにスレーブの電源端子へ単独に別途電力供給を受けることもできる。この場合のスレーブは、入出力機器電源用の端子とスレーブ用の電源端子とを独立に別々に備えることになる。そして、この場合も、別途用意したスレーブ用電源が電源端子を介してスレーブに入力されるので、そのスレーブ用電源の端子電圧を計測するとともに、基準値と比較し、その比較判断結果をネットワークを介してマスタユニットやモニタやコンフィグレータなどに通知するようにしてもよい。
【０２０７】
上記した構成において、複数台のスレーブ４３には、それぞれ入力用電源部４５ａから供給される入力電源および出力用電源部４５ｂから供給される出力電源が、それぞれＯＮかＯＦＦかを監視する入出力機器電源監視部４３ａを備えている（図１５参照）。
【０２０８】
各スレーブ４３は、この入出力機器電源監視部４３ａで監視した入力電源および出力電源のＯＮ，ＯＦＦ状態を示す入出力機器電源状態情報を保有する。そして、この入出力機器電源状態情報（Ｉ／Ｏ電源情報）は、マスタユニット４０からの要求によりフィールドネットワーク４２を経由してマスタユニット４０に送信する。これにより、マスタユニット４０では、複数台のスレーブ４３の入出力機器電源（Ｉ／Ｏ電源）の状態をモニタすることができる。
【０２０９】
上記構成により、マスタユニット４０では、センサ等の入力機器４４ａから信号がこない場合に、その原因がスレーブ４３の入力用電源がＯＦＦのためか、実際にセンサ等の入力機器４４ａの故障等に伴い信号入力されないかを迅速に判別することができ、これによりシステムの信頼性を向上させることができる。
【０２１０】
同様に、マスタユニット４０では、スレーブ４３にバルブ等の制御器（出力機器４４ｂ）を駆動するための信号を出力したのに、このバルブ等の出力機器４４ｂの動作を確認できない場合に、その原因がスレーブ４３の出力用電源がＯＦＦのためなのか、実際にスレーブ４３に信号が出力されなかったためなのかを判別することができる。これによってもシステムの信頼性を向上させることができる。
【０２１１】
マスタユニット４０と接続された図示しないＰＬＣユニット（入力機器からの情報を取り込み、制御プログラムを実行し、実行結果を出力機器へ出力する）においては、スレーブ４３に接続された機器の電源供給状態をマスタユニット４０経由で知ることが可能となる。したがって、ＰＬＣユニット（ＣＰＵユニット）の制御プログラム（ラダー言語等によりプログラミングされる）でスレーブに接続された機器の電源ＯＦＦ時の対応が可能となるため、システムの信頼性を向上させることができる。
【０２１２】
上記の参考例３では、計測対象の物理量として入出力機器電源監視部４３ａにて入出力機器に対する電源電圧を求めるようにしたが、本発明の好適な一実施形態では、スレーブに接続された入力機器や出力機器といった制御機器への通電時間を求めるようにした。そして、そのようにして求めた通電時間や比較結果は、例えば、マスタユニット１１が所定のタイミングで、出力するメッセージに対するレスポンスとしてマスタユニット１１ひいてはＰＬＣユニットに伝えることかでできる。
【０２３９】
なお、スレーブに接続される入力機器が複数の場合、スレーブからの供給電源の監視は、入力機器ごとに個別に行ってもよいし、入力機器全部を一括して行ってもよい。同様に、スレーブに接続される出力機器が複数の場合も、スレーブからの供給電源の監視は、出力機器ごとに個別に行ってもよいし、出力機器全部を一括して行ってもよい。
【０２４０】
さらにまた、参考例３のように、短絡の有無情報を送る場合には、入出力機器についての情報も併せて送るようにすると良い。すなわち、短絡を生じている場合には、その短絡している入出力機器の修理・交換などのメンテナンスが発生することが多い。従って、各スレーブに、予め自己に接続されている入出力機器についての情報、つまり、機器のＩＤを示す情報（機器名，製造者名，形式，製造番号）などを予め記憶保持しておき、短絡した機器についてのＩＤを示す情報を合わせた出力すると、ユーザは、故障した機器についての情報を予め知ることができる。従って、現場に行くに際し、係る機器用の交換部品や、交換する機器を携帯して行くことができ、メンテナンスを迅速に行うことができる。
【０２４１】
以上説明したように、この第５の実施の形態並びにその変形例によれば、上位局が各スレーブに接続された入出力機器用の電源（Ｉ／Ｏ電源）の状態を取得できるので、スレーブから信号がこない場合の原因が、入力機器に電源が供給されていないためなのか、実際に信号が入力若しくは出力されていないためなのかを、上位局において迅速に判別することができる。よって、システムの信頼性を向上させることができるという効果を奏する。
【０２４３】
このことは、各実施形態でも言える。つまり、各スレーブで取得した情報の送信先は、ネットワークに接続された各種のノードに送ることができる。
【０２４４】
さらにまた、上記した各実施の形態で説明したスレーブは、マスタユニットとの間でＩ／Ｏ情報を送受し、そのマスタユニットを経由してコントローラ（ＰＬＣ）と係るＩ／Ｏ情報の送受を行ってシステムの制御を行う例を示し、マスタユニットとスレーブとの間は、マスタからの要求に対して所望のスレーブがレスポンスを返すと行ったマスタースレーブ方式を説明したが、本発明で言うスレーブは、マスタ−スレーブ間通信を行うものに限られない。つまり、スレーブとは称するものの、通信方式は任意のものを利用できる。その点では、厳密に言うと一般的に定義されているスレーブとは異なる概念を含むものであると言える。つまり、本発明で言う所のスレーブは、制御に必要なＩ／Ｏ情報をコントローラと送受する機能が有れば、実際に送受信する際の通信プロトコルは任意である。特に本発明で送信対象とする非Ｉ／Ｏ情報の送信先は、マスタユニットやコントローラに限ることはなく、ネットワークに接続されたコンフィグレータやモニタや他のスレーブなど、各種のノードとすることができるので、通信方式も、送信相手に応じて適宜選択できる。もちろん、送信するためのトリガも、外部からの要求に応じて行うものに限ることはなく、内部トリガ（内部のタイマ，一定の条件に合致したときに発生するイベントなど）に基づいて送信してもよい。
【０２４５】
【発明の効果】
以上のように、本発明では、計測手段を設け、その計測手段により、制御とは関係無くスレーブ等の通電時間を計測するようにしたため、制御系に影響なしに、保守情報等の非制御データ（非Ｉ／Ｏデータ）をスレーブで確保しておき、所定のタイミングで回線（ネットワーク）に出力し、所定の送信先に通知することができる。
【図面の簡単な説明】
【図１】  従来例を示す図である。
【図２】  従来例を示す図である。
【図３】  本発明の参考例１が適用されるネットワークシステムの構成を示す図である。
【図４】  本発明の参考例１に係るスレーブの内部構造の一例を示す図である。
【図５】  ＯＵＴ端子とＩＮ端子の動作状態を示すタイミングチャートである。
【図６】  ＭＰＵの機能を説明するフローチャートである。
【図７】  演算結果を送信するための送信フレームの一例を示す図である。
【図８】  本発明の参考例２が適用されるネットワークシステムの構成を示す図である。
【図９】  参考例２おける各スレーブの要部構成を示したブロック図である。
【図１０】  参考例２におけるネットワークコンフィグレータの要部構成を示したブロック図である。
【図１１】  参考例２におけるネットワークコンフィグレータの処理を示すフローチャートである。
【図１２】  参考例２におけるネットワークコンフィグレータの電源状態表示処理の具体例を示す図である。
【図１３】  参考例２における各スレーブの処理を示すフローチャートである。
【図１４】  本発明の参考例３が適用されるネットワークシステムの構成を示す図である。
【図１５】  参考例３の機能を説明するためのブロック図である。
【符号の説明】
１０  ＰＬＣユニット
１１  マスタユニット
１２  フィールドネットワーク
１３  Ｍｉｘスレーブ
１３ａ  送受信回路
１３ｂ  ＭＰＵ
１３ｂ′  内部揮発性メモリ
１３ｂ″  処理部
１３ｃ  出力回路
１３ｄ  入力回路
１３ｅ  外部不揮発性メモリ
１３ｆ  タイマ（内部時計）
１４  アクチュエータ
１４ａ  移動体
１５  センサ
３０  マスタユニット
３２  フィールドネットワーク
３３  スレーブ
３３ａ  電圧監視部
３３ｂ  最大値・最小値保持部
３３ｃ  現在値記憶部
３３ｄ  監視電圧記憶部
３３ｅ  比較部
３３ｆ  警報ステータス記憶部
３３ｇ  通信制御部
３４  入出力機器
３５  ネットワーク電源装置
３６  ネットワークコンフィグレータ
３６ａ  入力部
３６ｂ  通信制御部
３６ｃ  表示部
３７  表示画面
４０  マスタユニット
４２  フィールドネットワーク
４３  スレーブ
４３ａ  入出力機器電源監視部
４４ａ  入力機器（センサ）
４４ｂ  出力機器（バルブ）
４５  入出力機器電源装置
４５ａ  入力用電源部
４５ｂ  出力用電源部
４６  モニタ
【図１】
0004338354.tif 000002
【図２】
0004338354.tif 000003
【図３】
0004338354.tif 000004
【図４】
0004338354.tif 000005
【図５】
0004338354.tif 000006
【図６】
0004338354.tif 000007
【図７】
0004338354.tif 000008
【図８】
0004338354.tif 000009
【図９】
0004338354.tif 000010
【図１０】
0004338354.tif 000011
【図１１】
0004338354.tif 000012
【図１２】
0004338354.tif 000013
【図１３】
0004338354.tif 000014
【図１４】
0004338354.tif 000015
【図１５】
0004338354.tif 000016