(57)【要約】【課題】  プログラムの実行とＩＯデータ更新処理を引き続いて行うスキャンを繰り返すプログラマブルコントローラにおいて、ＩＯモジュールが外部から取り込んだデータが更新されているか否かに関わらず全てのＩＯモジュールからデータ読み込みを行っていたので、ＩＯデータ更新処理に時間がかかり、スキャン時間を短くすることができなかったという課題を解決する。【解決手段】  ＩＯモジュール毎にバスの異なったビットを割り当て、１スキャンの間に外部から取り込むデータが更新されると、このビットを“０”にし、ＣＰＵモジュールはＩＯデータ更新処理の前にこの割り当てられたビットを読み出す問い合わせサイクルを発行してデータが更新されたＩＯモジュールを特定し、この特定したＩＯモジュールのみ読み込みを行うようにした。ＩＯモジュールの読み込み回数を削減することができるのでＩＯデータ更新処理に要する時間を短縮でき、スキャン時間を短くすることができる。【選択図】図１
2008198148.tif 000002
【特許請求の範囲】
【請求項１】
複数のモジュールがバスを介して接続され、プログラムの実行処理とそれに引き続くＩＯデータ更新処理からなるスキャンを繰り返し実行するプログラマブルコントローラにおいて、
外部からデータを収集すると共に、
１スキャンの間、前記収集したデータを保持するデータ保持部と、
このデータ保持部に保持されたデータと収集したデータが入力され、これらのデータを比較して、一致しているか否かを表す信号を出力する比較部と、
バスに接続された他の機器と通信を行うと共に、問い合わせがあったときに、前記比較部の出力に基づいて割り当てられたビットの状態を決定するバスインターフェイスと、
を具備したＩＯモジュールと、
前記プログラム実行処理とＩＯデータ更新処理を実行すると共に、接続されているＩＯモジュールに前記バスの異なったビットを割り当て、前記ＩＯデータ更新処理を行う前に問い合わせを行い、この問い合わせで読み込んだデータに基づいて収集したデータが変更されているＩＯモジュールを特定して、この特定したＩＯモジュールのデータを読み込むＣＰＵモジュールと、
を具備したことを特徴とするプログラマブルコントローラ。
【請求項２】
前記問い合わせでは、ＩＯモジュールは応答を返さず、かつＣＰＵモジュールは一定時間の後にこの問い合わせサイクルを終了するようにしたことを特徴とする請求項１記載のプログラマブルコントローラ。
【請求項３】
前記問い合わせサイクルは、前記バスの制御線および／またはアドレス線上の信号によって他のサイクルと区別するようにしたことを特徴とする請求項１若しくは請求項２記載のプログラマブルコントローラ。
【請求項４】
前記ＩＯモジュールを複数のグループに分割し、これらのグループを区別するためにビットを割り付け、各グループ内でＩＯモジュールを区別するためにビットを割り付けて、ＩＯモジュールは、グループの問い合わせのときはグループを区別するために割り付けられたビットを有効にし、自己が属するグループ内のＩＯモジュールの問い合わせのときは、グループ内でのＩＯモジュールを区別するために割り付けられたビットを有効にするようにしたことを特徴とする請求項１乃至請求項３いずれかに記載のプログラマブルコントローラ。
【請求項５】
前記グループを更にサブグループに分割するようにしたことを特徴とする請求項４記載のプログラマブルコントローラ。
【請求項６】
バスマスタになることができる複数のＣＰＵモジュールを具備し、これらのＣＰＵモジュールは自身に関係しているＩＯモジュールにのみ問い合わせを行うようにしたことを特徴とする請求項４若しくは請求項５記載のプログラマブルコントローラ。
【請求項７】
複数のモジュールがバスを介して接続され、プログラムの実行処理とそれに引き続くＩＯデータ更新処理からなるスキャンを繰り返し実行するプログラマブルコントローラにおいて、
外部からデータを収集すると共に、
１スキャンの間前記収集したデータを保持するデータ保持部と、
このデータ保持部に保持されたデータと収集したデータが入力され、これらのデータを比較して、一致しているか否かを表す信号を出力する比較部と、
バスに接続された他の機器と通信を行うと共に、バスが空いているときに、前記比較部の出力に基づいて割り当てられたビットの状態を決定するバスインターフェイスと、
を具備したＩＯモジュールと、
前記プログラム実行処理とＩＯデータ更新処理を実行すると共に、接続されているＩＯモジュールに前記バスの異なったビットを割り当て、バスが空いているときにＩＯモジュールが出力するビットで構成されたデータを読み込み、この読み込んだデータに基づいて収集したデータが変更されているＩＯモジュールを特定して、この特定したＩＯモジュールのデータを読み込むＣＰＵモジュールと、
を具備したことを特徴とするプログラマブルコントローラ。
【請求項８】
前記割り付けるビットとして、データ線の他にアドレス線をも用いるようにしたことを特徴とする請求項１乃至請求項７いずれかに記載のプログラマブルコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストアードプログラムによる繰り返し演算方式のプログラマブルコントローラに関し、ＩＯデータの更新処理を高速化することができるプログラマブルコントローラに関するものである。
【背景技術】
【０００２】
図４にプログラマブルコントローラの構成を示す。プログラマブルコントローラはその内部に格納されたプログラムを実行するＣＰＵモジュール１０と、外部との入出力を行うＩＯチャンネルを内蔵したＩＯモジュール１１、１２、および高機能ＩＯモジュール１３、１４で構成されており、これらのモジュールはバス１５で接続されている。なお、高機能ＩＯモジュールを含んでいない場合もある。
【０００３】
高機能ＩＯモジュール１３、１４はＩＯモジュール１１、１２と同じく外部との入出力を行うＩＯチャンネルを有しているが、その内部に演算機能を具備しているモジュールである。以下、ＩＯモジュールには高機能ＩＯモジュールも含まれているものとする。
【０００４】
図５にプログラマブルコントローラの動作を示す。プログラマブルコンローラは、内部に格納されたプログラムを実行するプログラム実行処理と、ＩＯモジュール１１〜１４からデータを読み出し、またこれらのモジュールにデータを書き込むＩＯデータ更新処理を交互に繰り返す。プログラム実行処理とそれに引き続いて行われるＩＯデータ更新処理をまとめてスキャンという。プログラマブルコントローラはこのスキャンを繰り返し実行する。すなわち、プログラム実行処理の後には必ずＩＯデータ更新処理が行われる。
【０００５】
図６にＩＯデータ更新テーブルの構成を示す。図６において、２０ａ〜２０ｎはＩＯモジュール番号であり、図４のＩＯモジュール１１〜１４に対応している。２１ａ〜２１ｎはＩＯチャンネル番号であり、ＩＯモジュール２１ｂに内蔵されているＩＯチャンネルに対応して設けられる。図示していないが、２０ｂ以外のＩＯモジュール番号２０ａ〜２０ｎに対しても、内蔵されているＩＯチャンネルに対応してＩＯチャンネル番号が設けられている。
【０００６】
ＩＯモジュール番号２０ａ〜２０ｎ、ＩＯチャンネル番号２１ａ〜２１ｎは固有の番号であり、ＣＰＵモジュール１０が実行するプログラムはこの固有番号を使用してＩＯモジュール、ＩＯチャンネルにアクセスする。例えば、入力データの更新処理では、ＣＰＵモジュール１０はバス１５を介してＩＯモジュール１１〜１４からデータを読み出し、ＣＰＵモジュール１０内部のメモリにこのデータを書き込む。
【０００７】
ＣＰＵモジュール１０が実行するプログラムでアクセスされる可能性のあるＩＯモジュールおよびＩＯチャンネルは全てこのＩＯデータ更新テーブルに登録される。ＣＰＵモジュール１０はＩＯデータ更新処理で、このＩＯデータ更新テーブルに登録された全てのＩＯモジュール、ＩＯチャンネルについて更新処理を行う。
【０００８】
図７にＣＰＵモジュール１０の内部構成を示す。図７において、３０はＣＰＵ、３１はメモリ、３２はバスインターフェイス、１５はＣＰＵモジュール１０とＩＯモジュール１１〜１４を接続しているバスである。ＣＰＵ３０はプログラムを実行してＩＯデータ更新処理を行う。また、メモリ３１にはＩＯデータ更新テーブルとＩＯデータが格納されている。
【０００９】
プログラム実行処理のときは、ＣＰＵ３０はメモリ３１からＩＯデータを読み込み、このＩＯデータに更新処理を施して再びメモリ３１に書き込む。この更新処理では、ＣＰＵは必要なビットのみ更新するが、メモリの構成に合わせて８ビットや１６ビットのデータを一括して取り扱う。ＩＯデータ更新処理では、ＣＰＵ３０はバスインターフェイス３２を介してＩＯモジュール１１〜１４からＩＯデータを読み込み、メモリ３１に書き込む。また、メモリ３１から更新されたＩＯデータを読み込み、このＩＯデータをＩＯモジュール１１〜１４に書き込む。
【００１０】
【特許文献１】特開２００５−１７４０４２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、このようなプログラマブルコントローラには次のような課題があった。ＣＰＵモジュール１０は、ＩＯモジュール１１〜１４のデータが更新されているかどうかを事前に知ることができなかった。そのため、ＩＯデータ更新処理において、ＣＰＵモジュール１０は実際にデータが更新されているか否かに関わらず、全てのＩＯモジュールのＩＯデータについて読み込み処理を行っていた。
【００１２】
一般に、バス１５を介した読み出し、書き込み処理は、ＣＰＵモジュール１０内部のメモリ３１に対する読み出し、書き込み処理よりもかなり遅い。そのため、バス１５を介した転送処理が多くなるとＩＯデータ更新処理に時間がかかり、ＣＰＵの効率が低下してスキャン時間が長くなってしまうという課題があった。
【００１３】
また、バス１５に複数のＣＰＵモジュールが接続されているマルチＣＰＵ構成のプログラマブルコントローラでは、複数のＣＰＵがバス１５をアクセスするためにバス１５の使用率が高くなり、このバスを使用するための待ち時間が増加し、ＣＰＵの効率が更に低下し、スキャン時間が長くなってしまうという課題もあった。
【００１４】
従って本発明の目的は、更新されていないＩＯデータの読み込み処理を行わないようにすることにより、ＩＯモジュールからの読み込み回数を少なくすると共に、ＩＯモジュールが接続されているバスの使用率を下げ、スキャン時間を短くすることができるプログラマブルコントローラを提供することにある。
【課題を解決するための手段】
【００１５】
このような課題を解決するために、本発明のうち請求項１記載の発明は、
複数のモジュールがバスを介して接続され、プログラムの実行処理とそれに引き続くＩＯデータ更新処理からなるスキャンを繰り返し実行するプログラマブルコントローラにおいて、
外部からデータを収集すると共に、
１スキャンの間、前記収集したデータを保持するデータ保持部と、
このデータ保持部に保持されたデータと収集したデータが入力され、これらのデータを比較して、一致しているか否かを表す信号を出力する比較部と、
バスに接続された他の機器と通信を行うと共に、問い合わせがあったときに、前記比較部の出力に基づいて割り当てられたビットの状態を決定するバスインターフェイスと、
を具備したＩＯモジュールと、
前記プログラム実行処理とＩＯデータ更新処理を実行すると共に、接続されているＩＯモジュールに前記バスの異なったビットを割り当て、前記ＩＯデータ更新処理を行う前に問い合わせを行い、この問い合わせで読み込んだデータに基づいて収集したデータが変更されているＩＯモジュールを特定して、この特定したＩＯモジュールのデータを読み込むＣＰＵモジュールと、
を具備したものである。データが更新されていないＩＯモジュールのデータを読み込まないので、スキャン時間を短くすることができる。
【００１６】
請求項２記載の発明は、請求項１記載の発明において、
前記問い合わせでは、ＩＯモジュールは応答を返さず、かつＣＰＵモジュールは一定時間の後にこの問い合わせサイクルを終了するようにしたものである。アクセス時間を短くすることができる。
【００１７】
請求項３記載の発明は、請求項１若しくは請求項２記載の発明において、
前記問い合わせサイクルは、前記バスの制御線および／またはアドレス線上の信号によって他のサイクルと区別するようにしたものである。簡単に他のサイクルと区別できる。
【００１８】
請求項４記載の発明は、請求項１乃至請求項３いずれかに記載の発明において、
前記ＩＯモジュールを複数のグループに分割し、これらのグループを区別するためにビットを割り付け、各グループ内でＩＯモジュールを区別するためにビットを割り付けて、ＩＯモジュールは、グループの問い合わせのときはグループを区別するために割り付けられたビットを有効にし、自己が属するグループ内のＩＯモジュールの問い合わせのときは、グループ内でのＩＯモジュールを区別するために割り付けられたビットを有効にするようにしたものである。使用できるビット数よりも多いＩＯモジュールを扱うことができる。
【００１９】
請求項５記載の発明は、請求項４記載の発明において、
前記グループを更にサブグループに分割するようにしたものである。扱えるＩＯモジュールの数を更に増やすことができる。
【００２０】
請求項６記載の発明は、請求項４若しくは請求項５記載の発明において、
バスマスタになることができる複数のＣＰＵモジュールを具備し、これらのＣＰＵモジュールは自身に関係しているＩＯモジュールにのみ問い合わせを行うようにしたものである。問い合わせサイクルを少なくすることができる。
【００２１】
請求項７記載の発明は、
複数のモジュールがバスを介して接続され、プログラムの実行処理とそれに引き続くＩＯデータ更新処理からなるスキャンを繰り返し実行するプログラマブルコントローラにおいて、
外部からデータを収集すると共に、
１スキャンの間前記収集したデータを保持するデータ保持部と、
このデータ保持部に保持されたデータと収集したデータが入力され、これらのデータを比較して、一致しているか否かを表す信号を出力する比較部と、
バスに接続された他の機器と通信を行うと共に、バスが空いているときに、前記比較部の出力に基づいて割り当てられたビットの状態を決定するバスインターフェイスと、
を具備したＩＯモジュールと、
前記プログラム実行処理とＩＯデータ更新処理を実行すると共に、接続されているＩＯモジュールに前記バスの異なったビットを割り当て、バスが空いているときにＩＯモジュールが出力するビットで構成されたデータを読み込み、この読み込んだデータに基づいて収集したデータが変更されているＩＯモジュールを特定して、この特定したＩＯモジュールのデータを読み込むＣＰＵモジュールと、
を具備したものである。スキャン時間を短くすることができ、かつ問い合わせサイクルをなくすることができる。
【００２２】
請求項８記載の発明は、請求項１乃至請求項７いずれかに記載の発明において、
前記割り付けるビットとして、データ線の他にアドレス線をも用いるようにしたものである。一度に扱えるＩＯモジュールの数を増やすことができる。
【発明の効果】
【００２３】
以上説明したことから明らかなように、本発明によれば次のような効果がある。
請求項１，２、３、４、５、６、７および８の発明によれば、ＩＯモジュールにバスの異なったビットを割り当て、ＩＯモジュールは１スキャンの間に外部から取り込むデータが更新されたときにこのビットを変化させて、ＣＰＵモジュールはＩＯデータ更新処理の前に問い合わせサイクルでこの割り当てたビットで構成される変更フラグデータを読み込んで、データが更新されているＩＯモジュールからのみデータを読み込むようにした。
【００２４】
データが更新されていないＩＯモジュールに対してはデータの読み込みを行わないので、ＩＯモジュールからの読み込み回数を削減することができる。そのため、ＩＯデータ更新処理の時間を短縮することができ、スキャン時間を短くすることができるという効果がある。また、ＩＯモジュールからの読み込み作業が少なくなるとメモリのアクセス回数も減少するので、更にスキャン時間を短縮することができる。
【００２５】
また、ＩＯモジュールをグループ分けし、グループ毎にデータが更新されているかを表すビットを割り付けることにより、取り扱えるＩＯモジュールの数を増加させることができる。更に、データが更新されているかを表すビットを、バスが空いているときにＣＰＵモジュールに送信するようにすると、問い合わせサイクルをなくすることができ、スキャン時間を更に削減することができるという効果もある。
【発明を実施するための最良の形態】
【００２６】
以下本発明を、図面を用いて詳細に説明する。図１は本発明に係るプログラマブルコントローラに内蔵されているＩＯモジュールの構成図である。なお、発明に無関係な要素は、記載を省略している。図１において、４０はフィールド側インターフェイスであり、フィールドバス（図示せず）を介してフィールド機器４１ａ〜４１ｎが接続されている。フィールド機器４１ａ〜４１ｎはフィールド側インターフェイス４０を介してデータを交換する。４２はデータ保持部であり、フィールド機器４１ａ〜４１ｎから取得したデータが一時的に保持される。このデータはスキャン毎に更新される。
【００２７】
４３は比較部であり、データ保持部４２に格納されたデータ、およびフィールド側インターフェイス４０の出力データが入力される。比較部４３はこれらのデータを比較して、その結果を出力する。データ保持部４２には、前回ＣＰＵモジュールがデータを読み込んだ時点のデータが保存されている。従って、比較部４３の出力は、前回ＣＰＵモジュールがデータを読み込んでから、フィールド側インターフェイス４０を介して取得したデータが変更されたかどうかを表している。
【００２８】
４４はバスインターフェイスであり、比較部４３の出力が入力される。バスインターフェイス４４は、図７のバスインターフェイス３２と同様にバス１５とのインターフェイスの機能を有するが、それ以外に比較部４３の出力から変更フラグデータを作成する機能を有する。
【００２９】
変更フラグデータは、当該ＩＯモジュールのデータが変更されたかどうかを表すデータであり、各ＩＯモジュール毎にバス１５のデータラインの異なったビットが割り当てられている。ＣＰＵモジュール１０は、プログラマブルコントローラの動作開始時に、異なったビットを接続されているＩＯモジュールに割り当てる。バスインターフェイス４４は、自身が属するＩＯモジュールに割り当てられているビットについて、比較部４３の比較結果が“変更されている”ならそのビットを“０”にし、“変更されていない”なら“１”にする。割り当てられていないビットは全てハイインピーダンスにする。
【００３０】
バス１５のデータラインを全て抵抗でプルアップしておくと、変更フラグデータは、データが変更されたＩＯモジュールに対応するビットのみ低レベルになり、対応するＩＯモジュールのデータが変更されていないビット、およびＩＯモジュールが割り当てられていないビットは高レベルになる。従って、この変更フラグデータを参照するだけで、ＣＰＵモジュールはどのＩＯモジュールのデータが変更されているかを知ることができる。
【００３１】
図２は、この実施例によるプログラマブルコントローラの動作を示すフローチャートである。なお、本発明に関係がない部分は、記載を省略している。図２において、工程（Ｐ２−１）でＣＰＵモジュールは、接続されているＩＯモジュールに異なったビットを割り当てる。これによって、各ＩＯモジュール内のバスインターフェイスは、割り当てられたビット以外のビットをハイインピーダンスにし、割り当てられたビットに比較部４３の出力を反映させる。
【００３２】
次に、工程（Ｐ２−２）でＣＰＵモジュールは問い合わせサイクルを発行し、変更フラグデータを読み込む。そして、工程（Ｐ２−３）で読み込んだ変更フラグデータから、データが変更されているＩＯモジュールを特定し、工程（Ｐ２−４）で変更フラグデータをクリアする。すなわち、全ビットを“１”にする。
【００３３】
そして、工程（Ｐ２−５）で、特定したＩＯモジュールに対して転送サイクルを発行し、データを読み込む。変更フラグデータで“１”となったビットに対応するＩＯモジュールのデータは読み込まない。そして、工程（Ｐ−６）で次のスキャンまで待機し、工程（Ｐ２−２）に戻る。
【００３４】
この実施例では問い合わせサイクルが追加されるのでバスサイクルは増えるが、ＩＯモジュールからの読み込み回数が減るので、結果としてバスのアクセス回数が減り、スキャン時間を減らすことができる。特に、使用するＩＯモジュールが多いときに、効果が大きくなる。
【００３５】
ＣＰＵモジュールが変更フラグデータを読み込む“問い合わせサイクル”は特定のＩＯモジュールを対象にしたものではないので、“問い合わせサイクル”を受信したＩＯモジュールは応答信号を出力しない。ＣＰＵモジュールは応答信号を期待せず、一定時間後にこのサイクルを終了する。“問い合わせサイクル”であるかどうかは、バス１５の制御線とアドレス線（どちらか一方でもよい）を使用して区別する。
【００３６】
接続されているＩＯモジュールの数が多く、バス１５のデータラインのビットに１対１に対応できないときは、変更フラグデータを複数個用いる。この実施例を、図３を用いて説明する。この実施例では接続されているＩＯモジュールを１２個（Ｍ１〜Ｍ１２）とし、変更フラグデータのビット数が４であるとする。
【００３７】
この実施例では変更フラグデータを４つ用いる。ＩＯモジュールＭ１〜Ｍ１２を３つのグループ（Ｍ１〜Ｍ４、Ｍ５〜Ｍ８、Ｍ９〜Ｍ１２）に分け、変更フラグデータの１つ（変更フラグデータ１）の各ビットをグループに割り当てる。すなわち、グループ１（Ｍ１〜Ｍ４）をビット０、グループ２（Ｍ５〜Ｍ８）をビット１、グループ３（Ｍ９〜Ｍ１２）をビット２に割り当てる。
【００３８】
そして、各グループに異なる変更フラグデータを割り当て、各グループ内のＩＯモジュールに異なったビットを割り当てる。図３では、Ｍ１、Ｍ５、Ｍ９にビット０を、Ｍ２、Ｍ６、Ｍ１０にビット１を、Ｍ３、Ｍ７、Ｍ１１にビット２を、Ｍ４、Ｍ８、Ｍ１２にビット３を割り当てる。
【００３９】
ＣＰＵモジュールは、最初に変更フラグデータ１を問い合わせる。このデータの全ビットが“１”であると全ＩＯモジュールのデータが変更されてないので、読み込みを行わない。“０”であるビットがあると、そのビットに対応するグループの変更フラグデータを読み込み、データが変更されたＩＯモジュールを特定して、そのＩＯモジュールのデータのみ読み込む。このようにすると、全ＩＯモジュールのデータが変更されていない場合は変更フラグデータ１のみ読み込めばよいので、問い合わせサイクルの回数を少なくすることができる。
【００４０】
変更フラグデータを３つ用い、Ｍ１〜Ｍ１２のＩＯモジュールをこれらのデータのビットに順番に割り当てることも考えられるが、この場合は３つの変更フラグデータを全て読み込まないとデータが変更されているかわからないので、データが変更されるＩＯモジュールの数が少ない場合や特定のＩＯモジュールに集中する場合は、図３の割り当てにした方が、変更フラグデータの読み込み回数を少なくすることができる。
【００４１】
なお、ＩＯモジュールの数が多く、図３の割り当てでは収容できないときは、グループを更にサブグループに分け、このサブグループに変更フラグデータを割り当てればよい。また、複数の変更フラグデータを用いる場合、アドレス線でデータを区別するが、使用していないアドレス線があると、そのアドレス線にＩＯモジュールのビットを割り当てることもできる。このようにすると、一回の問い合わせで確認できるＩＯモジュールの数を増やすことができる。
【００４２】
また、バスマスタになるＣＰＵモジュールを複数個用い、図３に示したようにＩＯモジュールをグループ分けする場合、各ＣＰＵモジュールは自身がアクセスするＩＯモジュールに関係する変更フラグデータに対してのみ問い合わせサイクルを発行するようにすると、問い合わせサイクルの数を減らすことができる。
【００４３】
さらに、これらの実施例では問い合わせサイクルで変更されているＩＯモジュールを表す変更フラグデータを読み込むようにしたが、バス１５が使用されていないときに、ＩＯモジュールのデータが変更されているか否かのデータをＣＰＵモジュールに送信するようにしてもよい。このようにすると、問い合わせサイクルをなくすることができるので、更に高速化が可能である。
【図面の簡単な説明】
【００４４】
【図１】本発明の一実施例を示す構成図である。
【図２】本発明の一実施例の動作を示すフローチャートである。
【図３】変更フラグデータのビット割りつけを示す図である。
【図４】プログラマブルコントローラの構成図である。
【図５】プログラマブルコントローラの動作を示す図である。
【図６】ＩＯデータ更新テーブルの構成図である。
【図７】ＣＰＵモジュールの構成図である。
【符号の説明】
【００４５】
１０  ＣＰＵモジュール
１１、１２  ＩＯモジュール
１３、１４  高機能ＩＯモジュール
１５  バス
２０ａ〜２０ｎ  ＩＯモジュール番号
２１ａ〜２１ｎ  ＩＯチャンネル番号
３０  ＣＰＵ
３１  メモリ
３２、４４  バスインターフェイス
４０  フィールド側インターフェイス
４１ａ〜４１ｎ  フィールド機器
４２  データ保持部
４３  比較部
【図１】
2008198148.tif 000003
【図２】
2008198148.tif 000004
【図３】
2008198148.tif 000005
【図４】
2008198148.tif 000006
【図５】
2008198148.tif 000007
【図６】
2008198148.tif 000008
【図７】
2008198148.tif 000009