(57)【特許請求の範囲】
【請求項１】
機器に設置されるセンサの検出値に基づいて、前記機器に設置されるアクチュエータの操作量を演算する演算装置と、
前記センサから入力される前記検出値を前記演算装置に送信するとともに、前記演算装置から受信した前記操作量を前記アクチュエータに出力する入出力装置と、を備え、
前記入出力装置は、
前記検出値を前記演算装置に送信する処理、及び、前記操作量を前記演算装置から受信する処理をメモリ転写によって実行し、
前記センサ及び前記アクチュエータを含むフィールド機器の管理に用いられるフィールド機器情報を前記フィールド機器から取得し、取得した前記フィールド機器情報を前記演算装置に送信する処理を、前記演算装置からの指令に応じたコマンドアクセスによって実行し、
前記メモリ転写による通信、及び前記コマンドアクセスによる通信が、共通の伝送路を介して行われ、
前記入出力装置は、前記フィールド機器情報の送信準備ができているか否かを示す送信準備情報を、前記検出値とともに、前記メモリ転写によって前記演算装置に送信し、
前記演算装置は、前記送信準備情報に基づいて、前記入出力装置において前記フィールド機器情報の送信準備ができていると判定した場合、前記フィールド機器情報の送信要求コマンドを前記入出力装置に送信し、
前記入出力装置は、前記送信要求コマンドに応じて、前記フィールド機器情報を前記演算装置に送信すること
を特徴とする機器制御システム。
【請求項２】
前記入出力装置は、
少なくとも前記入出力装置自身の異常の有無を診断する自己診断部を備え、
前記自己診断部の診断結果である自己診断情報を、前記検出値及び前記送信準備情報とともに、前記メモリ転写によって前記演算装置に送信すること
を特徴とする請求項１に記載の機器制御システム。
【請求項３】
前記入出力装置は、前記フィールド機器情報を複数のフレームに分割し、複数の前記フレームを、前記コマンドアクセスによって前記演算装置に順次に送信し、
前記演算装置は、複数の前記フレームに基づいて、前記フィールド機器情報を復元すること
を特徴とする請求項１又は請求項２に記載の機器制御システム。
【請求項４】
機器に設置されるセンサの検出値に基づいて、前記機器に設置されるアクチュエータの操作量を演算する演算装置と、
前記センサから入力される前記検出値を前記演算装置に送信するとともに、前記演算装置から受信した前記操作量を前記アクチュエータに出力する入出力装置と、を備え、
前記入出力装置は、
前記検出値を前記演算装置に送信する処理、及び、前記操作量を前記演算装置から受信する処理をメモリ転写によって実行し、
前記センサ及び前記アクチュエータを含むフィールド機器の管理に用いられるフィールド機器情報を前記フィールド機器から取得し、取得した前記フィールド機器情報を前記演算装置に送信する処理を、前記演算装置からの指令に応じたコマンドアクセスによって実行し、
前記メモリ転写による通信、及び前記コマンドアクセスによる通信が、共通の伝送路を介して行われ、
前記メモリ転写による通信は、前記機器の制御における所定の制御周期ごとに行われ、
前記フィールド機器情報の送信準備ができていることを示す所定の送信準備情報が、前記検出値とともに、前記メモリ転写によって前記入出力装置から前記演算装置に送信された場合、前記制御周期において前記メモリ転写による通信後の残りの時間で、前記コマンドアクセスによる通信が行われること
を特徴とする機器制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機器を制御する機器制御システムに関する。
【背景技術】
【０００２】
プラントや工場等におけるプロセス制御に関して、例えば、特許文献１には、「フィールド機器から得られるデータを自律的に送信するＩ／Ｏモジュール」を備えるプロセス制御システムについて記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−１８４９８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、Ｉ／Ｏモジュールが自律的にデータを送信できるようにするためには、専用のプロセッサをＩ／Ｏモジュールに搭載したり、Ｉ／Ｏモジュールと上位装置とを接続する専用の配線が必要になる。したがって、特許文献１に記載の技術では、プロセス制御システムに要するコストの増加を招く可能性がある。その一方で、センサやアクチュエータといったフィールド機器の管理に用いられるフィールド機器情報を取得したいという要請もある。
【０００５】
そこで、本発明は、フィールド機器情報を取得する低コストな機器制御システムを提供することを課題とする。
【課題を解決するための手段】
【０００６】
前記課題を解決するために、本発明に係る機器制御システムは、入出力装置が、センサの検出値を演算装置に送信する処理、及び、アクチュエータの操作量を前記演算装置から受信する処理をメモリ転写によって実行し、前記センサ及び前記アクチュエータを含むフィールド機器の管理に用いられるフィールド機器情報を前記フィールド機器から取得し、取得した前記フィールド機器情報を前記演算装置に送信する処理を、前記演算装置からの指令に応じたコマンドアクセスによって実行し、前記メモリ転写による通信、及び前記コマンドアクセスによる通信が、共通の伝送路を介して行われ、前記入出力装置は、前記フィールド機器情報の送信準備ができているか否かを示す送信準備情報を、前記検出値とともに、前記メモリ転写によって前記演算装置に送信し、前記演算装置は、前記送信準備情報に基づいて、前記入出力装置において前記フィールド機器情報の送信準備ができていると判定した場合、前記フィールド機器情報の送信要求コマンドを前記入出力装置に送信し、前記入出力装置は、前記送信要求コマンドに応じて、前記フィールド機器情報を前記演算装置に送信することを特徴とする。
なお、その他については、実施形態の中で説明する。
【発明の効果】
【０００７】
本発明によれば、フィールド機器情報を取得する低コストな機器制御システムを提供できる。
【図面の簡単な説明】
【０００８】
【図１】本発明の第１実施形態に係る機器制御システムの構成図である。
【図２】本発明の第１実施形態に係る機器制御システムが備える入出力装置の構成図である。
【図３】本発明の第１実施形態に係る機器制御システムの制御周期毎の処理内容、及び各処理に対応するデータ内容の説明図である。
【図４】本発明の第１実施形態に係る機器制御システムにおける通信シーケンスである。
【図５】本発明の第２実施形態に係る機器制御システムが備える入出力装置の構成図である。
【図６】本発明の第２実施形態に係る機器制御システムの制御周期毎の処理内容、及び各処理に対応するデータ内容の説明図である。
【図７】本発明の第２実施形態に係る機器制御システムにおける通信シーケンスである。
【発明を実施するための形態】
【０００９】
≪第１実施形態≫
＜機器制御システムの構成＞
図１は、第１実施形態に係る機器制御システム１００の構成図である。
機器制御システム１００は、制御対象機器Ｔ（機器）の状態量（温度・圧力・流量等）を制御するためのシステムであり、例えば、プロセス制御に用いられる。前記した「プロセス制御」とは、石油・化学・鉄鋼等の工業プロセスにおける各状態量の制御である。「プロセス制御」では、制御対象機器Ｔに設置されているセンサＧの検出値に基づいて、制御対象機器Ｔに設置されているアクチュエータＨの操作量を演算する処理が周期的に繰り返される。
【００１０】
図１に示すように、機器制御システム１００は、複数の入出力装置１０と、複数の中継装置２０と、演算装置３０と、制御監視装置４０と、機器管理装置５０と、を備えている。
入出力装置１０は、図示はしないが、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、各種インタフェース等の電子回路を含んで構成されている。そして、ＲＯＭに記憶されたプログラムを読み出してＲＡＭに展開し、ＣＰＵが各種処理を実行するようになっている。
【００１１】
入出力装置１０は、センサＧから入力される検出値を演算装置３０に送信する機能を有している。また、入出力装置１０は、演算装置３０から受信したアクチュエータＨの操作量を、このアクチュエータＨに出力する機能も有している。
【００１２】
以下では、センサＧの検出値を含むデータを「入力データ」といい、アクチュエータＨの操作量を含むデータを「出力データ」という。また、前記した「入力データ」及び「出力データ」の両方を指す場合には、「入出力データ１５１」（図２参照）という。
【００１３】
また、センサＧ及びアクチュエータＨを「フィールド機器Ｆ」（図２参照）といい、このフィールド機器Ｆの管理に用いられる情報を「フィールド機器情報１５２」（図２参照）という。フィールド機器情報１５２には、フィールド機器Ｆの識別情報・設定情報・健全性情報が含まれる。
【００１４】
入出力装置１０は、演算装置３０からの指令に応じて、前記したフィールド機器Ｆ（図２参照）からフィールド機器情報１５２（図２参照）を取得し、取得したフィールド機器情報１５２を演算装置３０に送信する機能も有している。なお、入出力装置１０が実行する処理については後記する。
【００１５】
中継装置２０は、入出力装置１０と演算装置３０との間のデータ通信を中継する装置である。図１に示すように、中継装置２０は、バスＢ１（伝送路）を介して入出力装置１０に接続されるとともに、バスＢ２（伝送路）を介して演算装置３０に接続されている。
【００１６】
演算装置３０は、図示はしないが、ＣＰＵ、ＲＯＭ、ＲＡＭ、各種インタフェース等の電子回路を含んで構成され、ＲＯＭに記憶されたプログラムを読み出してＲＡＭに展開し、ＣＰＵが各種処理を実行するようになっている。演算装置３０は、入出力装置１０から受信したセンサＧの検出値に基づいて、例えば、ＰＩＤ制御（Proportional Integral Differential Control）によって、アクチュエータＨの操作量を演算する機能を有している。演算装置３０によって演算された操作量は、中継装置２０及び入出力装置１０を順次に介して、アクチュエータＨに出力される。
【００１７】
図１に示すように、演算装置３０は、バスＢ３を介して、制御監視装置４０及び機器管理装置５０に接続されている。演算装置３０は、制御監視装置４０からの指令に応じて、前記した入出力データ１５１（図２参照）や、入出力装置１０の自己診断情報１５４（図２参照）を制御監視装置４０に送信する機能を有している。
また、演算装置３０は、機器管理装置５０からの指令に応じて、前記したフィールド機器情報１５２（図２参照）を入出力装置１０から取得し、取得したフィールド機器情報１５２を機器管理装置５０に送信する機能も有している。なお、演算装置３０が実行する処理については後記する。
【００１８】
制御監視装置４０は、入出力装置１０、中継装置２０、及び演算装置３０が正常に稼動しているかを監視したり、前記した入出力データ１５１（図２参照）が正常範囲内であるかを監視したりする機能を有している。入出力装置１０等の機器や入出力データ１５１に異常がある場合、その旨が表示装置（図示せず）に表示され、管理者に報知される。その他、制御監視装置４０は、管理者の操作に基づく指令を演算装置３０に送信し、各機器の操作・制御を行う機能も有している。
【００１９】
機器管理装置５０は、前記したフィールド機器情報１５２（図２参照）を管理する装置である。その他、機器管理装置５０は、フィールド機器Ｆ（図２参照）が正常であるか否かの健全性確認を行ったり、フィールド機器Ｆの設定変更の指令を演算装置３０に送信したりする機能も有している。
【００２０】
図２は、機器制御システム１００が備える入出力装置１０の構成図である。
図２に示すように、入出力装置１０は、第１入出力部１１と、第２入出力部１２と、制御・演算部１３と、自己診断部１４と、記憶部１５と、を備えている。
第１入出力部１１は、制御・演算部１３とフィールド機器Ｆ（つまり、センサＧ及びアクチュエータＨ）との間の通信インタフェースである。
第２入出力部１２は、制御・演算部１３と中継装置２０との間の通信インタフェースである。
【００２１】
制御・演算部１３は、フィールド機器Ｆとの間の通信や、中継装置２０を介した演算装置３０との間の通信を制御する機能を有している。また、制御・演算部１３は、信号のアナログ／デジタル変換を行う機能も有している。例えば、制御・演算部１３は、第１入出力部１１を介して入力されるセンサＧの検出値（アナログ信号）をデジタル信号に変換し、このデジタル信号を、第２入出力部１２及び中継装置２０を介して演算装置３０に送信する。また、制御・演算部１３は、中継装置２０及び第２入出力部１２を介して受信したアクチュエータＨの操作量（デジタル信号）をアナログ信号に変換し、このアナログ信号を、第１入出力部１１を介してアクチュエータＨに出力する。
【００２２】
自己診断部１４は、少なくとも入出力装置１０自身の異常の有無を診断する機能を有している。例えば、自己診断部１４は、信号のアナログ／デジタル変換に用いられるコンバータ（図示せず）の電源（図示せず）に関して、その入力側の電圧が所定範囲内である場合、「入出力装置１０に異常なし」と診断する。また、前記した電圧が所定範囲外である場合、自己診断部１４は、「入出力装置１０に異常あり」と診断する。
【００２３】
なお、前記した診断に加えて、入出力装置１０とフィールド機器Ｆとを接続する伝送路の異常の有無を、自己診断部１４によって診断するようにしてもよい。自己診断部１４の診断結果は、自己診断情報１５４として記憶部１５に格納される。
【００２４】
記憶部１５には、入出力データ１５１と、フィールド機器情報１５２と、送信準備情報１５３と、自己診断情報１５４と、を含むデータが格納される。
入出力データ１５１には、前記したように、センサＧの検出値と、アクチュエータＨの操作量と、が含まれている。
フィールド機器情報１５２には、前記したように、フィールド機器ＦであるセンサＧやアクチュエータＨの識別情報・設定情報・健全性情報が含まれている。
【００２５】
送信準備情報１５３は、入出力装置１０から演算装置３０（図１参照）へのフィールド機器情報１５２の送信準備ができているか否かを示す情報である。言い換えると、送信準備情報１５３は、演算装置３０からの指令に基づく所定のフィールド機器情報１５２が、記憶部１５に格納（保持）されているか否かを示す情報である。
【００２６】
例えば、入出力装置１０が、センサＧのフィールド機器情報１５２を既に取得している場合、このセンサＧに対応付けて、送信準備情報１５３として値“１”が記憶部１５に格納される。一方、入出力装置１０が、センサＧのフィールド機器情報１５２をまだ取得していない場合、このセンサＧに対応付けて、送信準備情報１５３として値“０”が記憶部１５に格納される。このように、１ビットの送信準備情報１５３が、ひとつひとつのフィールド機器Ｆに対応付けて、記憶部１５に格納される。この送信準備情報１５３は、センサＧの検出値とともに、メモリ転写によって演算装置３０に送信される。これが、本実施形態の主な特徴の一つである。
【００２７】
図２に示す自己診断情報１５４は、前記したように、自己診断部１４の診断結果を示す情報である。
【００２８】
＜演算装置の処理内容＞
図３は、機器制御システム１００の制御周期毎の処理内容、及び各処理に対応するデータ内容の説明図である。
図３の紙面上側に示す「制御周期」は、機器制御システム１００において繰り返されるプロセス制御の制御周期を表している。
【００２９】
図３に示す「制御周期毎の処理内容」とは、プロセス制御における制御周期毎の演算装置３０の処理内容である。なお、紙面の右向きと、各処理の実行順序と、が一致するように「制御周期毎の処理内容」を記載している。つまり、図３に示す例では、演算装置３０の制御周期において、入力メモリ転写、演算、出力メモリ転写、指示フレーム送信、及び応答フレーム受信が順次に実行される。これらの処理の詳細については、後記する。
【００３０】
「各処理に対応するデータ内容」とは、演算装置３０で行われる各処理において、演算装置３０が送信又は受信するデータの内容である。
入力データ１５１ａは、センサＧ（図２参照）の検出値を含むデータである。出力データ１５１ｂは、アクチュエータＨ（図２参照）の操作量を含むデータである。なお、入力データ１５１ａ及び出力データ１５１ｂは、図２に示す入出力データ１５１に相当する。
【００３１】
前記した入力データ１５１ａや出力データ１５１ｂの通信には、いわゆるリアルタイム性が要求される。つまり、センサＧの検出値に基づいてアクチュエータＨの操作量を演算し、この操作量を制御対象機器Ｔの制御に反映させるという一連のサイクルを、所定の制御周期（例えば、数十ｍｓｅｃ）で繰り返すことが望ましい。したがって、本実施形態では、センサＧの検出値（図３に示す入力データ１５１ａ）及び送信準備情報１５３を「入力メモリ転写」（メモリ転写）によって、入出力装置１０から演算装置３０に送信するようにしている。
【００３２】
前記した「入力メモリ転写」とは、記憶部１５（図２参照）の所定のアドレスに格納されているセンサＧの検出値や送信準備情報１５３を演算装置３０に転写する処理である。要するに、「入力メモリ転写」とは、記憶部１５において予め指定されたアドレスのデータを、演算装置３０が読み出すリードアクセスである。
【００３３】
また、本実施形態では、入出力装置１０が、アクチュエータＨの操作量（図３に示す出力データ１５１ｂ）を「出力メモリ転写」（メモリ転写）によって、演算装置３０から受信するようにしている。前記した「出力メモリ転写」とは、演算装置３０によって演算されたアクチュエータＨの操作量を、記憶部１５（図２参照）の所定のアドレスに転写する処理である。要するに、「出力メモリ転写」とは、予め指定された記憶部１５のアドレスに、演算装置３０がデータを書き込むライトアクセスである。
【００３４】
なお、記憶部１５（図２参照）において入力データ１５１ａが格納されるアドレスは、各センサＧ（図２参照）に対応付けて、予め指定されている。同様に、記憶部１５において出力データ１５１ｂが格納されるアドレスは、各アクチュエータＨ（図２参照）に対応付けて、予め指定されている。
【００３５】
また、演算装置３０の記憶部（図示せず）には、前記した各アドレスとフィールド機器Ｆ（センサＧ、アクチュエータＨ）との対応関係が、予め記憶されている。このように「入力メモリ転写」や「出力メモリ転写」を行うことで、入出力装置１０と演算装置３０との間での周期的なデータ通信を高速で行うことができる。
【００３６】
なお、図３では省略したが、センサＧの検出値及び送信準備情報１５３とともに、入出力装置１０の自己診断情報１５４（図２参照）も「入力メモリ転写」（メモリ転写）によって、入出力装置１０から演算装置３０に送信される。
【００３７】
図３に示す「コマンド入出力」とは、演算装置３０が入出力装置１０からフィールド機器情報１５２（図２参照）を取得するために行う処理である。また、入出力装置１０の各種設定を行う際にも「コマンド入出力」が行われる。
【００３８】
「コマンド入出力」は、入力メモリ転写、操作量の演算、及び出力メモリ転写を順次に実行した後、所定の制御周期の中で余った時間を利用して行われる。図３に示すように、「コマンド入出力」において「指示フレーム送信」及び「応答フレーム受信」が順次に行われる。
【００３９】
「指示フレーム送信」とは、入出力装置１０からフィールド機器情報１５２を取得するために、演算装置３０が入出力装置１０に所定の指令を送信する処理である。「指示フレーム送信」において演算装置３０から入出力装置１０に送信されるデータには、コマンド種別と、通信先アドレスと、データ長と、コマンドデータと、が含まれている。
【００４０】
「コマンド種別」は、フィールド機器情報１５２（図２参照）を取得するためのコマンドの種別を示すデータである。「通信先アドレス」は、演算装置３０の通信先である入出力装置１０の記憶部１５（図２参照）のアドレスである。「データ長」は、コマンドデータを含む一連のデータの情報量である。
【００４１】
「コマンドデータ」は、コマンドの内容を示すデータである。演算装置３０は、この「コマンドデータ」として、まず、「取得要求コマンド」を入出力装置１０に送信した後、前記した送信準備情報１５３に基づいて、「送信要求コマンド」を入出力装置１０に送信する。
【００４２】
「取得要求コマンド」は、入出力装置１０に対して、フィールド機器Ｆ（図２参照）からフィールド機器情報１５２を取得するように要求するコマンドである。
「送信要求コマンド」は、入出力装置１０に対して、記憶部１５（図２参照）に保持されているフィールド機器情報１５２を演算装置３０に送信するように要求するコマンドである。入出力装置１０から値“１”の送信準備情報１５３を受信した場合、演算装置３０は、入出力装置１０に「送信要求コマンド」を送信する。
【００４３】
図３に示す「応答フレーム受信」とは、前記した「送信要求コマンド」に応じて入出力装置１０から送信されるフィールド機器情報１５２を、演算装置３０が受信する処理である。「応答フレーム受信」において演算装置３０が入出力装置１０から受信するデータには、コマンド種別と、通信元アドレスと、データ長と、コマンドデータと、が含まれている。
【００４４】
「コマンド種別」は、前記した「送信要求コマンド」の応答であることを示すデータである。「通信元アドレス」は、フィールド機器情報１５２の通信元である入出力装置１０の記憶部１５（図２参照）のアドレスである。「データ長」は、コマンドデータを含む一連のデータの情報量を示すデータである。「コマンドデータ」は、フィールド機器Ｆの識別情報・設定情報・健全性情報を含むフィールド機器情報１５２である。
【００４５】
なお、入出力装置１０によるフィールド機器情報１５２の取得・送信は、演算装置３０からの指令に応じた「コマンドアクセス」によって実行される。したがって、図３に示す「コマンド入出力」は、各制御周期において毎回行われるとは限らず、必要に応じて、通信先アドレス等をその都度指定して行われる。
【００４６】
また、「入力メモリ転写」や「出力メモリ転写」といったメモリ転写による通信、及び、前記したコマンドアクセスによる通信は、共通の伝送路（バスＢ１，Ｂ２：図１参照）を介して行われる。これによって、メモリ転写による通信と、コマンドアクセスによる通信と、を別々の伝送路を介して行う場合と比べて、伝送路に要するコストを低減できる。
【００４７】
＜機器制御システムにおける処理＞
図４は、機器制御システム１００における通信シーケンスである。
図４では、一例として、１つのフィールド機器Ｆに関するデータのやり取りを図示している。また、図４では、入出力データ１５１（入力データ１５１ａ及び出力データ１５１ｂ：図３参照）の通信を実線矢印で図示し、フィールド機器情報１５２に関する通信を破線矢印で図示している。
【００４８】
入出力装置１０と演算装置３０との間の通信は、マスタ・スレーブ方式で行われる。すなわち、演算装置３０がマスタとして機能し、入出力装置１０がスレーブとして機能する。図４に示すように、演算装置３０は、入出力装置１０からの入力データ１５１ａや送信準備情報１５３（“０”又は“１”）の受信、出力データ１５１ｂの演算、及び入出力装置１０への出力データ１５１ｂの送信を、制御周期ｓ１，ｓ２，…，ｓｎ，…において毎回実行する。
【００４９】
制御周期ｓ１では、入力データ１５１ａ（つまり、センサＧの検出値）、及び送信準備情報１５３の値“０”が、メモリ転写によって、入出力装置１０から演算装置３０に送信される（図３に示す「入力メモリ転写」に相当）。なお、送信準備情報１５３の値が“０”であるのは、この時点では、フィールド機器情報１５２が記憶部１５（図２参照）に格納されていないからである。ちなみに、前回の取得要求コマンドに応じて取得したフィールド機器情報１５２が記憶部１５に残っている場合にも、送信準備情報１５３の値“０”が、入出力装置１０から演算装置３０に送信される。
【００５０】
制御周期ｓ１において入出力装置１０から入力データ１５１ａを受信した演算装置３０は、この入力データ１５１ａに基づいて、出力データ１５１ｂ（つまり、アクチュエータＨの操作量）を演算する。そして、演算装置３０は、この出力データ１５１ｂをメモリ転写によって、入出力装置１０に送信する（図３に示す「出力メモリ転写」に相当）。
【００５１】
また、図４では省略したが、自己診断情報１５４（図２参照）も、入力データ１５１ａ及び送信準備情報１５３とともに、メモリ転写によって、入出力装置１０から演算装置３０に送信される。
【００５２】
なお、送信準備情報１５３の情報量は、１つのフィールド機器Ｆについて１ビット（“０”又は“１”）であり、また、自己診断情報１５４の情報量もそれほど多くない。したがって、演算装置３０は、各制御周期ｓ１，ｓ２，…，ｓｎ，…においてプロセス制御を繰り返しつつ、送信準備情報１５３や自己診断情報１５４を入出力装置１０から取得できる。
【００５３】
図４に示す制御周期ｓ１において演算装置３０は、機器管理装置５０（図１参照）からの指令に応じて、フィールド機器情報１５２を取得するための取得要求コマンドを入出力装置１０に送信する。
【００５４】
演算装置３０から取得要求コマンドを受信した入出力装置１０は、フィールド機器Ｆからフィールド機器情報１５２を取得するための通信を開始する。一般に、フィールド機器情報１５２の取得に要する時間（例えば、数１００ｍｓｅｃ〜数ｓｅｃ）は、各制御周期（例えば、数ｍｓｅｃ〜数１００ｍｓｅｃ）よりも長い。図４に示す例では、制御周期ｓ２において、入出力装置１０がフィールド機器情報１５２をまだ取得できていない。したがって、送信準備情報１５３の値“０”が、入出力装置１０から演算装置３０に送信される。なお、フィールド機器情報１５２の取得にはリアルタイム性が要求されないため、その取得に所定の時間を要しても特に問題はない。
【００５５】
入出力装置１０とフィールド機器Ｆとの間の通信が完了した場合、入出力装置１０は、フィールド機器情報１５２を記憶部１５（図２参照）に格納し、送信準備情報１５３の値を“１”にセットする。これに続く制御周期ｓｎでは、送信準備情報１５３の値“１”が、入出力装置１０から演算装置３０に送信される。
【００５６】
送信準備情報１５３の値“１”を受信した演算装置３０は、この送信準備情報１５３に基づいて、入出力装置１０においてフィールド機器情報１５２の送信準備ができていると判定する。そして、演算装置３０は、フィールド機器情報１５２の送信要求コマンドを入出力装置１０に送信する。
【００５７】
演算装置３０から送信要求コマンドを受信した入出力装置１０は、これに応じて、記憶部１５（図２参照）に格納されているフィールド機器情報１５２を演算装置３０に送信する。このように、演算装置３０からの指令（取得要求コマンド、送信要求コマンド）に応じたコマンドアクセスによって、入出力装置１０から演算装置３０にフィールド機器情報１５２が送信される。そして、フィールド機器情報１５２を受信した演算装置３０は、このフィールド機器情報１５２を機器管理装置５０（図１参照）に送信する。これによって、機器管理装置５０においてフィールド機器情報１５２を一元的に管理できる。
【００５８】
なお、入出力装置１０に接続されているフィールド機器Ｆが複数存在する場合には、演算装置３０と入出力装置１０との間で、それぞれのフィールド機器Ｆの入出力データ１５１がやり取りされる。また、それぞれのフィールド機器Ｆに対応付けて、送信準備情報１５３が記憶部１５（図２参照）に格納される。そして、複数のフィールド機器Ｆのうち、入出力装置１０からの送信準備情報１５３の値が“１”であるフィールド機器Ｆに関して、演算装置３０は、そのフィールド機器情報１５２を入出力装置１０から取得する。
【００５９】
また、ある制御周期の中で所定のコマンド入出力（図３参照）を実行できない場合には、それ以後の制御周期で、前記したコマンド入出力が実行される。フィールド機器情報１５２の取得にはリアルタイム性が要求されず、ある制御周期においてフィールド機器情報１５２を取得できなくても、それ以後に取得できればよいからである。
【００６０】
＜効果＞
第１実施形態によれば、入出力データ１５１とともに送信準備情報１５３が、メモリ転写によって、入出力装置１０から演算装置３０に送信される。これによって、入出力装置１０においてフィールド機器情報１５２の送信準備ができているか否かを、演算装置３０側で把握できる。さらに、値“１”の送信準備情報１５３に基づき、演算装置３０が入出力装置１０からフィールド機器情報１５２を取得することによって、フィールド機器情報１５２を一元的に管理できる。このように、第１実施形態によれば、演算装置３０が、プロセス制御のリアルタイム性を損なうことなく、フィールド機器情報１５２を適切に取得できる。
【００６１】
また、演算装置３０がマスタとして機能し、入出力装置１０がスレーブとして機能するため、入出力装置１０が自律送信機能（マスタの機能）を有する必要がない。したがって、入出力装置（例えば、特許文献１に記載のＩ／Ｏモジュール）が自律送信機能を有する従来技術と比べて、入出力装置１０の製造コストを低減し、ひいては、機器制御システム１００に要するコストを低減できる。
【００６２】
≪第２実施形態≫
第２実施形態は、フィールド機器情報１５２（図５参照）を複数のフレームｍ１，…，ｍｋ（図５参照）に分割し、各フレームｍ１，…，ｍｋにシーケンス番号やページ番号が付加される点が、第１実施形態とは異なっている。また、第２実施形態は、複数の制御周期に亘って、フレームｍ１，…，ｍｋのデータが入出力装置１０から演算装置３０に順次に送信される点が、第１実施形態とは異なっている。なお、その他については第１実施形態と同様である。したがって、第１実施形態と異なる部分について説明し、重複する部分については説明を省略する。
【００６３】
図５は、第２実施形態に係る機器制御システム１００Ａが備える入出力装置１０Ａの構成図である。
図５に示すように、入出力装置１０Ａは、第１入出力部１１と、第２入出力部１２と、制御・演算部１３と、自己診断部１４と、記憶部１５Ａと、を備えている。
記憶部１５Ａには、入出力データ１５１と、フィールド機器情報１５２と、シーケンス番号ｑ，…，ｑと、ページ番号ｐ１，…，ｐｋと、送信準備情報１５３と、自己診断情報１５４と、を含むデータが格納される。
【００６４】
図５に示す入出力装置１０Ａは、フィールド機器情報１５２を複数のフレームｍ１，…，ｍｋに分割し、複数のフレームｍ１，…，ｍｋを、コマンドアクセスによって、演算装置３０に順次に送信する機能を有している。フィールド機器情報１５２の情報量が比較的大きい場合や、入出力装置１０Ａと演算装置３０との間において１回の通信でやり取りされる情報量に制約がある場合には、このようにフィールド機器情報１５２を複数に分割することが望ましい。
【００６５】
なお、１つのフィールド機器Ｆに関するフィールド機器情報１５２をｋ個に分割してもよいし、また、複数個のフィールド機器Ｆに関するフィールド機器情報１５２をｋ個に分割してもよい。
【００６６】
図５に示すシーケンス番号ｑ，…，ｑは、ｋ個に分割されたフレームｍ１，…，ｍｋを、演算装置３０が、ひとまとまりのフィールド機器情報１５２として復元するためのデータである。そして、演算装置３０からの取得要求コマンドに対応して、所定の（つまり、共通の）シーケンス番号ｑがフレームｍ１，…，ｍｋに付加される。
【００６７】
ページ番号ｐ１，…，ｐｋは、ｋ個に分割されたフレームｍ１，…，ｍｋを演算装置３０側で復元する際に用いられるデータである。なお、ページ番号ｐ１，…，ｐｋは、演算装置３０においてフレームｍ１，…，ｍｋの個数に過不足があるか否かを判定する際にも用いられる。図５に示すように、フレームｍ１には所定のページ番号ｐ１が付加され、フレームｍｋには所定のページ番号ｐｋが付加される。つまり、フレームｍ１，…，ｍｋには、それぞれ、異なるページ番号ｐ１，…，ｐｋが付加される。
【００６８】
図６は、機器制御システム１００Ａの制御周期毎の処理内容、及び各処理に対応するデータ内容の説明図である。
図６に示すように、ある制御周期の「指示フレーム送信」には、シーケンス番号ｊと、ページ番号ｉ１と、コマンド種別と、通信先アドレスと、データ長と、コマンドデータと、が含まれている。なお、シーケンス番号ｊは、ひとまとまりのコマンドデータ（取得要求コマンド又は送信要求コマンド）に共通に付される番号である。また、ページ番号ｉ１は、コマンドデータをｒ個に分割した場合において、分割後の各データに付されるｒ個の番号の１つ目である。
【００６９】
また、「応答フレーム受信」には、前記したシーケンス番号ｑと、ページ番号ｐ１と、コマンド種別と、通信元アドレスと、データ長と、コマンドデータ（つまり、フレームｍ１）と、が含まれている。
【００７０】
図７は、機器制御システム１００Ａにおける通信シーケンスである。
なお、図７では、１つのフィールド機器Ｆに関するデータのやり取りを図示している。また、図７では、一例として、ひとまとまりの取得要求コマンドを２つに分割し、これらの取得要求コマンドの通信を、２回の制御周期ｓ１，ｓ２に分けて順次に行う場合を示している。
また、図７では、一例として、フィールド機器情報１５２を２つのフレームｍ１，ｍ２に分割し、フレームｍ１，ｍ２の通信を２回の制御周期ｓ（ｎ−１），ｓｎに分けて順次に行う場合を示している。
なお、入力データ１５１ａや出力データ１５１ｂの通信については、第１実施形態と同様であるから、説明を省略する。
【００７１】
制御周期ｓ１において演算装置３０は、フィールド機器情報１５２を取得するための取得要求コマンド（分割後の１つ目）を入出力装置１０Ａに送信する。これに続く制御周期ｓ２において演算装置３０は、取得要求コマンド（分割後の２つ目）を入出力装置１０Ａに送信する。フィールド機器情報１５２の取得要求コマンドを受信した場合、入出力装置１０Ａは、シーケンス番号ｊ（図６参照）及びページ番号ｉ１，１２に基づいて、取得要求コマンドを正常に受信したか否かを判定する。
【００７２】
なお、図７では省略したが、初回の取得要求コマンドとともに（又は、この取得要求コマンドの送信に先立って）、演算装置３０から入出力装置１０Ａにシーケンス番号ｊ及びページ番号ｉ１，ｉ２が通知されている。
取得要求コマンドを正常に受信したと判定した場合、入出力装置１０Ａは、シーケンス番号ｊ（図６参照）及びページ番号ｉ１，１２に基づいて、分割された取得要求コマンドを復元する。そして、入出力装置１０Ａは、復元後の取得要求コマンドに基づいて、フィールド機器Ｆからフィールド機器情報１５２を取得するための通信を開始する。
【００７３】
その後、フィールド機器Ｆとの間の通信が完了した場合、入出力装置１０Ａは、フィールド機器情報１５２をフレームｍ１，ｍ２に分割し、これらのフレームｍ１，ｍ２を記憶部１５Ａ（図５参照）に格納する。そして、入出力装置１０Ａは、送信準備情報１５３（図５参照）の値を“１”にセットする。これに続く制御周期ｓ（ｎ−１）では、送信準備情報１５３の値“１”が、入力データ１５１ａとともに、メモリ転写によって、入出力装置１０Ａから演算装置３０に送信される。
【００７４】
そして、送信準備情報１５３の値“１”に応じて、演算装置３０は、フレームｍ１の送信要求コマンドを入出力装置１０Ａに送信する。この送信要求コマンドを受信した場合、入出力装置１０Ａは、フレームｍ１のデータを演算装置３０に送信する。前記したように、フレームｍ１には、所定のシーケンス番号ｑ（図５参照）及びページ番号ｐ１（図５参照）が付加されている。
【００７５】
制御周期ｓｎにおいて入出力装置１０Ａは、送信準備情報１５３として、フィールド機器情報１５２の一部（つまり、フレームｍ１）を既に送信したことを示す値“０”を演算装置３０に送信する。
なお、図７では省略したが、制御周期ｓ（ｎ−１）において、送信準備情報１５３の値“１”とともに（又は、この送信準備情報１５３の送信に先立って）、入出力装置１０から演算装置３０にシーケンス番号ｑ及びページ番号ｐ１，ｐ２が通知されている。したがって、制御周期ｓｎにおいて、入出力装置１０Ａから送信準備情報１５３の値“０”を受信しても、演算装置３０側では、フレームｍ２をまだ受信していないことが把握されている。
【００７６】
制御周期ｓｎにおいて演算装置３０は、出力データ１５１ｂをメモリ転写によって入出力装置１０Ａに送信するとともに（実線矢印）、フレームｍ２の送信要求コマンドを入出力装置１０Ａに送信する（破線矢印）。この送信要求コマンドを受信した場合、入出力装置１０Ａは、フレームｍ２を演算装置３０に送信する。前記したように、フレームｍ２には、所定のシーケンス番号ｑ（図５参照）及びページ番号ｐ２が付加されている。
【００７７】
制御周期ｓｎにおいて演算装置３０は、シーケンス番号ｑ及びページ番号ｐ１，ｐ２に基づいて、フレームｍ１，ｍ２を正常に受信したか否かを判定する。つまり、演算装置３０は、フレームｍ１，ｍ２に共通のシーケンス番号ｑが付加されているか否かを判定するとともに、ページ番号ｐ１，ｐ２の個数に過不足があるか否かを判定する。
【００７８】
フレームｍ１，ｍ２を正常に受信したと判定した場合、演算装置３０は、シーケンス番号ｑ及びページ番号ｐ１，ｐ２を参照し、フレームｍ１，ｍ２に基づいて、フィールド機器情報１５２を復元する。ちなみに、フレームｍ１，ｍ２を正常に受信できなかった場合、演算装置３０は、フレームｍ１，ｍ２の取得を再び試みる。
【００７９】
なお、演算装置３０がフレームｍ１，ｍ２を取得するたびに、その旨を入出力装置１０Ａに通知するようにしてもよい。そして、フレームｍ１等を送信してから所定時間が経過しても、前記した通知がない場合、フレームｍ１，ｍ２の通信に失敗したと入出力装置１０Ａが判定するようにしてもよい。この場合には、フレームｍ１，ｍ２の通信が再び実行される。
【００８０】
＜効果＞
第２実施形態によれば、フィールド機器情報１５２の情報量が比較的大きい場合でも、演算装置３０が、入出力装置１０Ａからフィールド機器情報１５２を適切に取得できる。また、入出力装置１０Ａから演算装置３０に送信される送信準備情報１５３の値が“０”から“１”に変わった後、フレームｍ１，ｍ２の通信が開始される。したがって、第２実施形態によれば、演算装置３０が、プロセス制御のリアルタイム性を損なうことなく、情報量の比較的大きいフィールド機器情報１５２を適切に取得できる。
【００８１】
≪変形例≫
以上、本発明に係る機器制御システム１００，１００Ａについて各実施形態により説明したが、本発明はこれらの記載に限定されるものではなく、種々の変更を行うことができる。
例えば、第１実施形態では、機器制御システム１００（図１参照）が複数の中継装置２０を備える構成について説明したが、これに限らない。すなわち、機器制御システム１００が備える中継装置２０の個数は１つであってもよい。また、中継装置２０を省略し、入出力装置１０と演算装置３０との間で直接的にデータをやり取りするようにしてもよい。また、中継装置２０の機能を演算装置３０の中に組み込んでもよい。
【００８２】
また、第１実施形態では、入出力装置１０（図２参照）の記憶部１５にフィールド機器情報１５２を保持する場合について説明したが、これに限らない。すなわち、中継装置２０の記憶部（図示せず）にフィールド機器情報１５２を保持し、中継装置２０から演算装置３０に送信準備情報１５３を送信するようにしてもよい。
【００８３】
また、第１実施形態では、機器制御システム１００（図１参照）が複数の入出力装置１０を備える構成について説明したが、これに限らない。すなわち、機器制御システム１００が備える入出力装置１０の個数は１つであってもよい。
また、第１実施形態では、一つの入出力装置１０（図１参照）にセンサＧ及びアクチュエータＨが接続される構成について説明したが、これに限らない。例えば、一つ又は複数のセンサＧに接続される入出力装置１０と、一つ又は複数のアクチュエータＨに接続される別の入出力装置１０と、を備える構成でもよい。
【００８４】
また、第１実施形態では、入出力装置１０（図２参照）が自己診断部１４を備える構成について説明したが、自己診断部１４を省略してもよい。このような構成でも、演算装置３０は、プロセス制御のリアルタイム性を損なうことなく、フィールド機器情報１５２を適切に取得できる。なお、第２実施形態についても同様のことがいえる。
【００８５】
また、各実施形態では、入出力データ１５１等のメモリ転写による通信と、フィールド機器情報１５２に関するコマンドアクセスの通信と、が共通の伝送路（バスＢ１，Ｂ２：図１参照）を介して行われる場合について説明したが、これに限らない。すなわち、前記したメモリ転写による通信と、コマンドアクセスの通信と、を別々の伝送路を介して行うようにしてもよい。
【００８６】
また、各実施形態では、１回の制御周期において、演算装置３０が、入出力データ１５１等のメモリ転写による通信を行った後、フィールド機器情報１５２に関するコマンドアクセスの通信を行う場合について説明したが、これに限らない。すなわち、１回の制御周期において、演算装置３０が、所定の伝送路を介したメモリ転写による通信と、別の伝送路を介したコマンドアクセスによる通信と、を並行して行ってもよい。
【００８７】
また、各実施形態は、本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも各実施形態で説明した全ての構成を備えるものに限定されるものではない。
また、各実施形態で説明した各構成、機能、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。
また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。
また、各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Solid State Drive）等の記録装置、又は、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に格納することができる。
【符号の説明】
【００８８】
１００，１００Ａ  機器制御システム
１０，１０Ａ  入出力装置
１０Ａ  入出力装置
１１  第１入出力部
１２  第２入出力部
１３  制御・演算部
１４  自己診断部
１５，１５Ａ  記憶部
１５１  入出力データ
１５２  フィールド機器情報
１５３  送信準備情報
１５４  自己診断情報
２０    中継装置
３０    演算装置
４０    制御監視装置
５０    機器管理装置
Ｂ１，Ｂ２  バス（伝送路）
Ｂ３    バス
Ｆ  フィールド機器
Ｇ  センサ（フィールド機器）
Ｈ  アクチュエータ（フィールド機器）
ｍ１，…，ｍｋ  フレーム
Ｔ  制御対象機器（機器）
【図１】
0006694327.tif 000002
【図２】
0006694327.tif 000003
【図３】
0006694327.tif 000004
【図４】
0006694327.tif 000005
【図５】
0006694327.tif 000006
【図６】
0006694327.tif 000007
【図７】
0006694327.tif 000008