(57)【要約】【課題】  センサとコントローラ間で通信を行うためのセンサ固有の情報をコントローラにセットすることのできるセンサを提供すること【解決手段】  センサ１０は、自己用のインタフェースプログラムを記憶しており、そのインタフェースプログラムは、ネットワーク３０を介してコントローラ２０に与えられる。コントローラは、センサから送られてきたそのセンサ用のインタフェースプログラムをアップロードし、その取得したインタフェースプログラムを用いて最適な動作環境でセンサにアクセスする。しかも、係るインタフェースプログラムは、ネットワークを介してダウンロードすればよいので簡単に行える。【選択図】        図１
2004164605.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続可能なセンサであって、
センサヘッドと、
そのセンサヘッドから入力された信号の信号処理を行う信号処理部と、
前記ネットワークを介してコントローラが、前記センサと汎用的な手順で通信するために用いる通信制御部と、
前記コントローラが前記センサ固有のアクセス手順で前記センサにアクセスするために用いられるインタフェースプログラムを記憶するインタフェースプログラム記憶手段と、
前記コントローラからの要求に応じて、前記インタフェースプログラム記憶手段に記憶された前記インタフェースプログラムを前記コントローラにアップロードするインタフェースプログラムアップロード手段と、
前記インタフェースプログラムに従って、前記コントローラから発せられる初期化要求に応じて、前記信号処理部の初期化をするセンサ初期化実行手段を備えるセンサ。
【請求項２】
ネットワークに接続可能なセンサであって、
センサヘッドと、
そのセンサヘッドから入力された信号の信号処理を行う信号処理部と、
前記ネットワークを介してコントローラが、前記センサと汎用的な手順で通信するために用いる通信制御部と、
前記コントローラが前記センサ固有のアクセス手順で前記センサにアクセスするために用いられるインタフェースプログラムを記憶するインタフェースプログラム記憶手段と、
前記コントローラからの要求に応じて、前記インタフェースプログラム記憶手段に記憶された前記インタフェースプログラムを前記コントローラにアップロードするインタフェースプログラムアップロード手段と、
前記インタフェースプログラムに従って、前記コントローラから発せられる初期化要求に応じて、前記信号処理部の初期化をするセンサ初期化実行手段と、
前記センサ初期化実行手段による初期化が終わると、その旨をコントローラに通知した後に、センシング処理実行を行なうセンシング処理実行手段とを備えるセンサ。
【請求項３】
前記センサ初期化実行手段による初期化が、判定閾値などのパラメータの調整である請求項１または２に記載のセンサ。
【請求項４】
前記センサ初期化実行手段による初期化が、入力サンプリング周期や出力フォーマットといった動作設定情報を調整するものである請求項１または２に記載のセンサ。
【請求項５】
前記インタフェースプログラムは、インタフェースクラスの継承クラスとして作成されており、コンストラクタおよび汎用手続き呼び出しを含む複数個のメソッドが定義されていることを特徴とするものである請求項１または２に記載のセンサ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、センサに関するものである。
【背景技術】
【０００２】
従来、ＦＡシステム等において各種の制御をする場合、ＰＬＣにセンサ等を接続し、そのセンサで検出した情報をＰＬＣで解析し、その解析結果に基づいてＰＬＣの制御対象の機器に対して制御命令を送り、協調・同期制御等を行うようになっている。
【０００３】
そして、近年、センサに信号処理機能を付加したものが開発されている。すなわち、センサをデバイスネットを介してコントローラの下位に接続する。そして、このコントローラがイーサネット等のネットワークを介して制御対象機器等と接続され、センサのセンシング情報に基づいてその制御対象機器に対してネットワークを経由して与えるようにしている。
【０００４】
係る構成において、コントローラのアプリケーションプログラムがセンサのデータや設定パラメータにアクセスする場合に、アプリケーションプログラムがセンサの物理アドレス（データポートのアドレス等）を意識する必要がある。しかも、係るアクセスするためのドライバは、アクセスモデル手順や、センサのレジスタモデル，機能内容に応じて設定する必要があり、センサの高機能化に伴い、実際には各センサ固有のドライバが必要となる。それに伴い、アプリケーションプログラム内に接続する各センサのドライバ（デバイス固有情報）を用意し、組み込んでおくことになる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、センサとコントローラの組み合わせは無数にあり、全てのセンサ用のドライバをコントローラ側にあらかじめ組み込んでおくことは困難である。一方、パソコンなどの世界では、外部装置を接続するに際し、その外部装置専用のドライバが必要な場合には、当該ドライバを記憶したＦＤ等の記憶媒体を添付し、そのＦＤ等をパソコンに装着してインストールすることにより対応できる。しかし、ＰＬＣその他のセンサにネットワークを介して接続されるコントローラは、多くの場合記憶媒体を読み取るためのドライブ装置はなく、そのまま転用することはできない。
【０００６】
また、例えばネットワーク上にパソコン等の記憶媒体を読み取ることのできるドライブ装置を有した上位ホストを接続し、一旦上位ホストに上記ドライバを記憶した記録媒体を介してセンサ固有のドライバ（デバイス固有情報）を記憶させ、当該ドライバをネットワークを介してコントローラにダウンロードすることも考えられる。
【０００７】
しかし、センサの交換の都度係る処理を行うのは非常に煩雑となる。しかも、センサ，コントローラと、上位ホストの設置位置は、離れていることが多いので、各場所に移動しつつそれぞれ所定の処理を行うのはより煩雑となる。
【０００８】
本発明は、上記した背景に鑑みてなされたもので、その目的とするところは、センサとコントローラをネットワークを介して接続することにより、簡単にそのセンサとコントローラ間で通信を行うためのセンサ固有の情報をコントローラにセットすることのできるセンサを提供することにある。
【課題を解決するための手段】
【０００９】
上記した目的を達成するために、本発明に係るセンサは、ネットワークに接続可能なセンサであって、センサヘッドと、そのセンサヘッドから入力された信号の信号処理を行う信号処理部と、前記ネットワークを介してコントローラが、前記センサと汎用的な手順で通信するために用いる通信制御部と、前記コントローラが前記センサ固有のアクセス手順で前記センサにアクセスするために用いられるインタフェースプログラムを記憶するインタフェースプログラム記憶手段と、前記コントローラからの要求に応じて、前記インタフェースプログラム記憶手段に記憶された前記インタフェースプログラムを前記コントローラにアップロードするインタフェースプログラムアップロード手段と、前記インタフェースプログラムに従って、前記コントローラから発せられる初期化要求に応じて、前記信号処理部の初期化をするセンサ初期化実行手段を備ええて構成される。
【００１０】
また、別の解決手段としては、ネットワークに接続可能なセンサであって、センサヘッドと、そのセンサヘッドから入力された信号の信号処理を行う信号処理部と、前記ネットワークを介してコントローラが、前記センサと汎用的な手順で通信するために用いる通信制御部と、前記コントローラが前記センサ固有のアクセス手順で前記センサにアクセスするために用いられるインタフェースプログラムを記憶するインタフェースプログラム記憶手段と、前記コントローラからの要求に応じて、前記インタフェースプログラム記憶手段に記憶された前記インタフェースプログラムを前記コントローラにアップロードするインタフェースプログラムアップロード手段と、前記インタフェースプログラムに従って、前記コントローラから発せられる初期化要求に応じて、前記信号処理部の初期化をするセンサ初期化実行手段と、前記センサ初期化実行手段による初期化が終わると、その旨をコントローラに通知した後に、センシング処理実行を行なうセンシング処理実行手段とを備えるように構成しても良い。
【００１１】
そして、前記センサ初期化実行手段による初期化が、例えば、判定閾値などのパラメータの調整としたり、入力サンプリング周期や出力フォーマットといった動作設定情報を調整するものとしたりすることができる。
【００１２】
さらに、前記インタフェースプログラムは、インタフェースクラスの継承クラスとして作成されており、コンストラクタおよび汎用手続き呼び出しを含む複数個のメソッドが定義されるように構成すると良い。
【００１３】
本発明によれば、センサの種類によって異なるインタフェースプログラムを、各センサ自体で保有し、そのインタフェースプログラムをコントローラのアップロード機能により、当該インタフェースプログラムをコントローラが取得する。したがって、以後の実際の運用では、アップロードしたインタフェースプログラムを用いてコントローラはセンサにアクセスできる。そして、センサは、コントローラから初期化要求を受けると、その要求にしたがい、センサの初期化処理をする。一例としては、コンフィグレーションデータのパラメータ調整を行い、最適な値で設定する。これにより、センサとして動作可能な状態となる。
【００１４】
よってコントローラはあらかじめ多数のセンサに合わせた固有のインタフェースプログラムに関する情報をもっていなくても、実際にセンサシステムを構築する際に、その構築するセンサからインタフェースプログラムを取得できるので、各センサにあった最適な環境で動作可能となる。
【発明の効果】
【００１５】
本発明では、センサ固有のインタフェースプログラムをセンサ自身で保有し、センサとコントローラをネットワークを介して接続する際などにそのセンサからコントローラに対して当該インタフェースプログラムをアップロードすることにより、そのコントローラは当該センサに対する最適な環境でアクセスすることができる。しかも、実際に接続する際に係るアップロード等をすればよいので、もともと各センサについての情報をもたせる必要もなく、メモリ効率もよいばかりでなく、センサのバージョンアップや新たなセンサに対しても対応できる。さらに、インタフェースプログラムは、ネットワークを介してダウンロードすればよいので簡単に行える。そして、センサはコントローラからの初期化要求を受けると、その要求にしたがい、初期化処理をし、動作可能な状態に自動的になる。
【発明を実施するための最良の形態】
【００１６】
図１は、本発明の第１の実施の形態を示している。同図に示すように、ネットワーク３０に接続されて双方向に通信できるセンサ１０と、ネットワーク（デバイスネット）３０を通じてセンサ１０と通信できるコントローラ２０とにより、センサシステムが構築されている。このコントローラ２０は、さらにイーサネット等のネットワーク３１に接続され、他のコントローラや制御対象機器並びに上位ホスト３２などの各種装置とネットワーク接続されるようになっている。
【００１７】
そして、概略を説明すると、各センサ１０は、コントローラ２０が汎用的にアクセスできるネットワークインタフェース（通信制御部）１６を持ち、さらに、センサ固有のアクセス手順をコントローラ上で実行可能なプログラム（インタフェースプログラム）を備えている。
【００１８】
そして、各センサ１０とコントローラ２０がネットワーク３０を介して接続された状態において、実際に運用を開始する前に、各センサ１０がコントローラ２０からの要求を受けて自己が格納するインタフェースプログラムをコントローラ２０にアップロードする。これにより、コントローラ２０はアップロードされたインタフェースプログラムを用いてセンサ１０に対して通常のセンシング処理をするために必要なデータの送受が行えるようになる。
【００１９】
なお、開始当初にインタフェースプログラムをアップロードするために、センサ１０とコントローラ２０は、それぞれ汎用アクセスのためのネットワークインタフェースを有している。このネットワークインタフェースは、ネットワーク３０に対して接続し、データの送受を行うことのできる基本機能を備えたインタフェースである。そして、上記した処理を実行するための本発明に係るセンサやコントローラの具体的な構造は以下のようになっている。
【００２０】
本形態におけるセンサ１０は、図２に示すように、下位にセンサヘッドが接続されるようになっており、このセンサヘッドから与えられる生データ（アナログ信号）は、一旦センサ１０内に取り込まれ、センシング信号処理して得られたデータをネットワーク３０を介してコントローラ２０に送るようになっている。
【００２１】
すなわち、まず、センサヘッド１１からのアナログ信号を受信する信号入力部１２を有する。この信号入力部１２は、Ａ／Ｄ変換器１２ａを備え、アナログ信号をデジタル信号に変換する。またこのＡ／Ｄ変換器１２ａは、コンフィグレーションを実行し感度調整部１２ｂで設定された感度で変換する。
【００２２】
また、信号入力部１２（Ａ／Ｄ変換器１２ａ）の出力は、信号処理部１４に与えられるようになっている。この信号処理部１４は、センサヘッドで検出され、信号入力部１２でデジタル化されたデータに対し、所定の信号処理（センシング信号処理）を行う。そして、係る処理は、信号処理回路１４ａが作業用記憶領域１４ｂ（ＲＡＭ）を使用しながら実行し、その実行するためのプログラムはプログラム格納領域１４ｃに格納されている。
【００２３】
この信号処理回路１４ａは用途に応じて例えば１６ビットマイコン等で構成することができる。そして、信号処理（プログラム）はセンシング対象に応じて異なるとともに、従来公知のものを用いることができるので、その詳細な説明を省略する。
【００２４】
そして、この信号処理部１４から出力されるセンシング信号処理済みデータは、通信制御部１６のデータ送信回路１６ａに与えられ、ネットワーク３０を介して上位装置（コントローラ２０）に送るようになっている。さらに、通信制御部１６は、データ受信回路１６ｂを備え、コントローラ２０から送られる各種情報を受信可能としている。この通信制御部１６が、ネットワークインタフェースの機能を有している。
【００２５】
さらに、本発明では、インタフェースプログラム格納領域１７を有し、センサ固有のインタフェースプログラム、つまり、センサ固有のアクセス手順をコントローラ上で実行可能なプログラムが格納されている。そして、このインタフェースプログラム格納領域１７は、通信制御部１６と接続され、そこに格納されたインタフェースプログラムが通信制御部１６を介してネットワーク３０ひいてはコントローラ２０に対して送信可能となっている。
【００２６】
一方、コントローラ２０は、Ｊａｖａ（登録商標）のようなプラットフォーム非依存のプログラム実行環境を持たせている。そして、図３に示すように、従来と同様にアプリケーションプログラム実行部２１や、ネットワーク３０に接続し、データの送受を行う汎用アクセスのためのネットワークインタフェース（共通インタフェース）２４を有している。
【００２７】
また、この実行部２１でアプリケーションプログラムを実行中にセンサ１０に対して当該センサのデータや設定パラメータにアクセスする場合に必要とするセンサの物理アドレス（データポートのアドレス等）や実行手順等を記載したインタフェースプログラムを格納する格納領域２２を有し、管理下におくセンサ固有のインタフェースプログラムをこの格納領域２２内に格納するようになっている。
【００２８】
さらに、格納領域２２に格納されたインタフェースプログラムとアプリケーションプログラムの間には、共通アプリケーションインタフェース（共通ＡＰＩ）２３を介在させている。この共通アプリケーションインタフェース２３は、各センサ用のインタフェースプログラムの取り扱いの相違を吸収するので、アプリケーションプログラム側から見た場合に各センサ用のインタフェースプログラムが同じに見えるようにするためのインタフェースである。つまり、アプリケーションプログラムが共通の手順でセンサにアクセスするためのインタフェースである。
【００２９】
したがって、アプリケーションプログラムからは、インタフェースクラスで定義した共通アプリケーションプログラムを用いて、センサのインタフェースプログラムへアクセスするようになる。これにより、アプリケーションプログラムは、センサの種類を意識することなく共通アプリケーションインタフェース２３であらゆるセンサ１０にアクセスできるようになる。
【００３０】
そして、この格納領域２２に対するインタフェースプログラムのアップロード／ダウンロードは、システム構成管理部２６の制御のもと、ロード制御部２５により実行される。
【００３１】
そして、システム構成管理部２６の具体的な機能は、図４に示すフローチャートのようになっている。すなわち、まずネットワークに接続されたセンサ１０に対して、センサＩＤのリードアクセスを発行（要求）する（ＳＴ１）。このリードアクセスを受信したセンサは、自己のセンサＩＤをコントローラに通知（応答）するので、その応答を受けたセンサＩＤからそのセンサが本発明対応か否か、つまり、自分用のインタフェースプログラムを有しているものか否かを判断する（ＳＴ２）。そして、本発明対応の場合には、ロード制御部２５を動作させ、インタフェースプログラムをアップロードし格納領域２２に格納する（ＳＴ３）。
【００３２】
次いで、アップロードしたそのセンサ用のインタフェースプログラムにしたがい、センサ１０に対して初期化要求し（ＳＴ５）、センサから初期化完了通知を受け取ったならば、通常のセンシング処理に基づく運用を開始する（ＳＴ６）。なお、ステップ２の判断で、本発明対応のセンサでないと判断された場合には、センサ固有情報をマニュアル操作で登録し（ＳＴ４）、その後その登録した情報にしたがってセンサ初期化要求をする（ＳＴ５）。このようにステップ２の判断を設けたのは、ネットワーク３０に接続するセンサは多岐にわたるため、必ずしもインタフェースプログラムを備えた本発明対応のもののみが接続されるとは限らないため、係る対応していないものが存在しても問題がない（システムが機能する）ようにするためである。
【００３３】
一方、センサ１０側の機能は、図５に示すフローチャートのように動作する。すなわち、コントローラ２０からセンサＩＤのリードアクセスを受信したならば、それに応答する。つまり、自己のＩＤをコントローラ２０に対して送信する（ＳＴ１１）。次いで、コントローラ２０からの要求を待って、インタフェースプログラム格納領域１７に格納された自己用のインタフェースプログラムをネットワーク３０を介してコントローラ２０に対してアップロードする（ＳＴ１２）。
【００３４】
さらに、そのアップロードが完了するとコントローラから初期化要求があるので、その要求にしたがい、センサの初期化処理をする（ＳＴ１３）。すなわち、コンフィグレーションデータのパラメータ調整を行い、最適な値で設定する。具体的には、Ａ／Ｄ変換器１２ａの感度調整を行ったり、信号処理回路１４ａで行う信号処理、つまり判定閾値などのチューニングパラメータ、良品データ分布や不良品データ分布といった統計データ、入力サンプリング周期や出力フォーマットといった動作設定情報等を調整する。そして、係るセンサ初期化が終了したならば、その旨通知を発し、実際の運用（初期化された状態でセンシング処理実行）を行う（ＳＴ１４）。
【００３５】
係る構成にしたため、センサ１０とコントローラ２０のコネクション確立時に、コントローラ２０は、ネットワークインタフェース２４を介して、接続されたセンサ１０から固有のインタフェースプログラムをアップロードするとともに、自らのインタフェースブロック（格納領域２２）にそれを組み込み、起動することができる。
【００３６】
よって、コントローラ２０には、通信対象のセンサ１０のインタフェースプログラムを取得できるので、コントローラ２０は、接続されるセンサ１０の種類を意識することなく、また特別なデータベースを持つ必要なく、あらゆるセンサに最適なインタフェース機能を持つことができる。
【００３７】
また、センサ１０は、自己に適したインタフェースプログラムを保有し、それをコントローラ２０にアップロードすることにより、当該インタフェースプログラムを用いてデータの送受等が行え、特別なリソースや取り決めを必要とせずに、あらゆるコントローラから最適なインタフェースでアクセスを受けることができる。
【００３８】
図６〜図８は、本発明の第２の実施の形態の要部を示している。本実施の形態は、第１の実施の形態のより具体的な実施例の１つとも言える。まず、センサ１０は、自己のレジスタモデルやアクセス手順等、固有のアクセス情報を実装したインタフェースプログラム（ドライバプログラム）をＪａｖａプログラムとしてインタフェースプログラム格納領域１７に保持している。
【００３９】
ここで、センサに格納するインタフェースプログラムは、コントローラ２０の共通アプリケーションインタフェースを定義したインタフェースクラスの継承クラスとして作成するもので、以下のメソッドが定義される。
【表１】
2004164605.tif 000003
【００４０】
上記したように、コントローラ２０は、インタフェースプログラムとして汎用的なフォーマットを共通アプリケーションインタフェースとして保有しておき、センサ１０からアップロードしてデータ（「出力データ読み出し」，「閾値パラメータ設定」）でオーバライドすることにより、各センサ固有のインタフェースプログラムを構成するようしている。
【００４１】
なお、図示していないが、コントローラ２０は、図３と同様にシステム構成管理部２６やロード制御部２５なども有している。システム構成管理部２６の具体的な処理機能としては、図７に示すようになっている。同図と図４を比較するとわかるように、基本的な機能は同様であり、ステップ３でインタフェースプログラムをセンサからアップロードした後の手順が異なる。
【００４２】
つまり、コントローラは、Ｊａｖａプログラムを実行可能な環境を持っている。そして、Ｊａｖａのクラスロード機能を用いて、センサのインタフェースプログラムをコントローラの管理下へアップロードした（ＳＴ３）後、「出力データ読み出し，閾値パラメータ設定」等を該当領域にオーバライドする（ＳＴ７）。そして、コンストラクタを実行し、アップロードしたインタフェースプログラム（Ｊａｖａのクラス）をインスタンシエイト（実体化）する（ＳＴ８）。
【００４３】
その後の処理は、第１の実施の形態と同様で、センサ初期要求後（ＳＴ５）、運用開始する（ＳＴ６）。そして、その運用処理は、例えばアプリケーションからは、インタフェースクラスで定義した上記共通ＡＰＩを用いて、実体化したセンサのインタフェースプログラムへアクセスする（図８中（１））。これを受け、Ｊａｖａの継承機能により、オーバライドされたセンサ固有の処理が呼び出され、実行される（図８中（２））。
【００４４】
なお、本実施の形態を、第１の実施の形態の図３との対応をとると、図３中の格納領域２２に格納された各インタフェースプログラムと共通アプリケーションインタフェース２３が融合・一体化して本実施の形態（図６）における共通アプリケーションインタフェース２３′となっている。しいて分ければ、主として「汎用手続き呼び出し」が第１の実施の形態における共通ＡＰＩ２３に対応し、「出力データ読み出し」や「閾値パラメータ設定」が各インタフェースプログラムに対応すると言える。
【００４５】
また、別の見方をすると、第１の実施の形態では、インタフェースプログラム全体をコントローラに格納するようにし、第２の実施の形態ではコントローラ２０にはインタフェースプログラムの一種のテンプレートを用意しておき、センサからはその位置の一部をアップロードし、そのテンプレートの該当箇所にオーバーライドする（関数単位でおきかえる）ことにより、センサ用のインタフェースプログラムを生成すると言える。
【００４６】
図９〜図１２は、本発明の第３の実施の形態を示している。本実施の形態は、上記した第１，第２の実施の形態を基本とし、さらにシステム構成情報のローカル保存機能を持たせている。すなわち、センサ１０の内蔵インタフェースプログラムをアップロードすることにより、コントローラ２０はシステム構成に対応したインタフェースに最適化される。また、チューニング等の初期化設定により、センサは動作可能な状態にコンフィグレーションされる。係る点は、上記の各実施の形態で説明した通りである。
【００４７】
そして、本形態では、インタフェースプログラムや、コンフィグレーションにより最適化された状態（コンフィグレーションデータ）をそれぞれの記憶手段に保存しておくことにより、同一システム構成での再立ち上げの際に、センサ初期化（チューニング等）をすることなく記憶した最適な状態に設定することができ、高速化、機器の移設や交換、異常発生時の原因究明等が容易になる。そして、係る処理を実施するための具体的な構成としては、以下のようになっている。
【００４８】
まず、センサ１０は、図９に示すように、コンフィグレーションデータ格納領域１８を設ける。そして、センサ初期化によりチューニング・パラメータ調整等を行い最適化したコンフィグレーションデータが作業用記憶領域１４ｂ中のパラメータ変数領域に設定され、以後の運用はその最適化された状態でセンサ１０が動作する。そして、そのように最適化されたデータをコンフィグレーションデータ格納領域１８に格納する。これにより、次の起動時の際に前回からシステム構成の変更がない場合、格納領域１８に格納されているコンフィグレーションデータを対応するパラメータ変数領域にロードするだけで初期化が終了する。
【００４９】
また、コントローラ２０は、図１０に示すように、インタフェースプログラム格納領域２７を設け、センサに対応して最適化された状態のインタフェースプログラムを保存する。これにより、起動時に前回のシステム構成から変更がない場合、最初から汎用の共通ではなくインタフェースプログラム格納領域２７に格納された、最適化されたインタフェースプログラムでＡＰＩを実体化することができる。
【００５０】
なお、図示の例ではインタフェースプログラム格納領域２７をコントローラ２０の内部に設けた例を示したが、本発明はこれに限ることはなく、コントローラ２０に外部記憶装置を接続し、その外部記憶装置に当該インタフェースプログラムを格納するようにしてももちろん良い。さらに、いずれの場合も、インタフェースプログラムのみでなく、最適化されたコンフィグレーションデータも対にして格納するようにしても良い。
そして、コントローラ２０のシステム構成管理部２６の機能は、図１１に示す
ようなフローチャートとなっている。なお、前提として前回までの処理で使用していた最適化済みインタフェースプログラムは、インタフェースプログラム格納領域２７に格納しているものとする。
【００５１】
まずセンサのＩＤのリードアクセスを要求し、センサからの応答を待つ（ＳＴ２１）。そして、前回終了時からシステム構成の変更があったか否かを判断し（ＳＴ２２）、変更が無い場合には、インタフェースプログラム格納領域２７に格納している最適化済みインタフェースプログラムを格納領域２２にロードし、最適化されたインタフェースプログラムでＡＰＩを実体化する（ＳＴ２３）。その後、ステップ２８に進み、運用開始する。
【００５２】
一方、システム構成に変更があった場合には、ステップ２２からステップ２４に進み、そのセンサに対して構成変更通知を発し、相手からの確認通知を待つ（ＳＴ２５）。そして、確認通知が来たならば、上記した各実施の形態と同様に、本発明対応のセンサか否かを判断（ＳＴ２５）し、対応の場合にはインタフェースプログラムのアップロードを要求し、アップロードを実行する（ＳＴ２６）。また、対応していないセンサの場合には、マニュアル操作でセンサ固有情報を登録する（ＳＴ２９）。そして、いずれかの手法によりインタフェースプログラムの登録が完了したならば、センサに対して初期化要求し（ＳＴ２７）、センサからの完了通知を待って、運用を開始することになる。
【００５３】
また、センサ側の機能は、図１２に示すように、コントローラ２０から受信したリードアクセスの応答として自己のＩＤを送出する。その後、コントローラ２０から構成変更通知が送られてきたならば、アンサーバックを返す（ＳＴ３２）。この通知の受信によりシステム構成の変更があったことがわかる。また、本形態では、図１１のステップ２２から２４へ行くルートからわかるように、システム構成変更が無い場合には構成変更通知（ＳＴ２４）は発せられない。したがって、センサ側でもこれを考慮し、ＩＤを送出した後、一定時間経過してもコントローラから構成変更通知がこない場合にはシステム変更が無かったと判断し、ステップ３２をスルーする。
【００５４】
そして、ステップ３３では、システム構成に変更があったか否かを判断し、無かった場合には、ステップ３４に進み、センサ１０のコンフィグレーション格納領域１８に格納されたコンフィグレーションデータを対応する変数領域にロードし（ＳＴ３４）、運用を開始する（ＳＴ３７）。
【００５５】
一方、システム構成の変更があった場合には、その後コントローラ２０からアップロードの要求があるので、インタフェースプログラム格納領域１７に格納されたインタフェースプログラムをアップロードする（ＳＴ３５）。そして、そのアップロードが成功すると、次にセンサ初期化要求がされるので、それを受けてチューニング等のセンサ初期化処理を行い、完了したならば完了通知を送る（ＳＴ３６）。その後運用開始するようになる（ＳＴ３７）。
【００５６】
図１３〜図１５は、本発明の第４の実施の形態を示している。本実施の形態では、センサの記憶領域再利用を図るようにしている。すなわち、上記した各実施の形態では、いずれもセンサ１０にはインタフェースプログラム格納領域１７を確保し、コントローラにアップロードした後もその格納領域１７内にインタフェースプログラムは記憶された状態としている。
【００５７】
しかし、センサは小型な方が良いのは言うまでもなく、また、インタフェースプログラムは、一旦コントローラ２０にアップロードしたならば、システム構成が変更されない限り使用しない。したがって、そのインタフェースプログラムを格納する領域の記憶容量が使用できない容量として無駄となっている。
【００５８】
そこで、図１３に示すように、各センサ１０がコントローラ２０にインタフェースプログラム（Ｐ）をアップロードしたならば、インタフェースプログラムが格納されていた記憶領域に、その後の初期化処理で得られたコンフィグレーションデータ（Ｄ）を記憶保持するようにしている。また、上記した第３の実施の形態と同様に、アップロードしたインタフェースプログラムを外部記憶装置２７′に格納するようにしている。なお、この外部記憶装置２７′は、直接またはネットワークを介して間接的にコントローラ２０と接続することができる。
【００５９】
なお、センサ１０側の構造としては、図１４に示すように、インタフェースプログラムを格納する格納領域１７′を解放する機能を設けるとともに、解放後その格納領域１７′にコンフィグレーションデータを格納する機能を設けている。つまりセンサ１０は、インタフェースプログラム格納領域をコンフィグレーションデータ格納用に共用する。そして、その他の構成は基本的に上記した各実施の形態と同様である。
【００６０】
なお、本形態の図示の例は、外部記憶装置２７′を設けたが、第３の実施の形態と同様に内蔵させても良い。また、この例では外部記憶装置２７′には、コンフィグレーションデータも一緒に記憶保持しているが、記憶させるのはインタフェースプログラムだけでももちろん良い。
これにより、システム構成が変更されない限り、再立ち上げの際に、センサ初期化（チューニング等）をすることなく記憶した最適な状態に設定することができる。
【００６１】
さらに、センサをシステムから取り外す場合には、事前にコントローラ側の外部記憶装置２７′に保存されているインタフェースプログラムをセンサにダウンロードして戻すようにする。これにより、ネットワークから外れたセンサ１０には、そのセンサ用のインタフェースプログラムを戻す。これを行わないと、センサにはインタフェースプログラムが存在しなくなってしまう。
【００６２】
そこで、センサ１０をシステム、つまりネットワーク３０から外す場合には、外部記憶装置２７′に格納したインタフェースプログラムをダウンロードし、元の状態に戻すようにしている。
【００６３】
そして、上記の処理を実行するためのコントローラ２０のシステム構成管理部２６の機能は、図１５に示すフローチャートのようになっている。すなわち、人手により与えられたセンサの取り外し処理コマンドを受信すると（ＳＴ４１）、対応するセンサに対して動作停止指示を送る（ＳＴ４２）。そして、そのセンサに付いての保存プログラムが有るか否かを判断（ＳＴ４３）し、無い場合には異常通知をして終了する（ＳＴ４７）。
【００６４】
一方、保存プログラム（外部記憶装置２７′に格納したインタフェースプログラム）が存在する場合には、センサ側の準備がＯＫか否かを判断する（ＳＴ４４）。具体的には、ステップ４２で送信した動作停止指示を受けたセンサが、動作を停止すると、その旨通知が来るので当該通知を受けると準備ＯＫと判断する。そして、保存してあるインタフェースプログラムをセンサに対してダウンロードし（ＳＴ４５）、センサの取り外し処理完了通知を発行し（ＳＴ４６）、一連の処理を終了する。
【００６５】
また、センサ１０側の機能は、図１６に示すフローチャートのように、コントローラ２０から発せられた動作停止命令を受信すると（ＳＴ５１）、動作を停止するとともに格納領域１７′を解放し、その後完了通知をコントローラ２０に送る。
【００６６】
その後、コントローラから自己のインタフェースプログラムをダウンロードし、上記解放した記憶領域１７′にインタフェースプログラムを格納し、復旧処理を終了する（ＳＴ５３）。
【００６７】
これにより、インターネットやフロッピーディスク等の外部記憶手段または通信手段によって、接続されているセンサのＩＤ情報（たとえば型式等）に応じた内蔵インタフェースプログラムを入手し、離脱するセンサにダウンロードして復旧できる。
【図面の簡単な説明】
【００６８】
【図１】本発明の第１の実施の形態を示す図である。
【図２】第１の実施の形態のセンサの内部構造を示す図である。
【図３】第１の実施の形態のコントローラの内部構造を示す図である。
【図４】第１の実施の形態のコントローラのシステム構成管理部の機能を説明するフローチャートである。
【図５】第１の実施の形態のセンサの機能を説明するフローチャートである。
【図６】第２の実施の形態を示す図である。
【図７】第２の実施の形態に用いられるコントローラのシステム構成管理部の機能を説明するフローチャートである。
【図８】その作用を説明する図である。
【図９】第３の実施の形態に用いられるセンサを示す図である。
【図１０】第３の実施の形態に用いられるコントローラを示す図である。
【図１１】第４の実施の形態のコントローラのシステム構成管理部の機能を説明するフローチャートである。
【図１２】第４の実施の形態のセンサの機能を説明するフローチャートである。
【図１３】本発明の第５の実施の形態を示す図である。
【図１４】第５の実施の形態のセンサの内部構造を示す図である。
【図１５】第５の実施の形態のコントローラのシステム構成管理部の機能を説明するフローチャートである。
【図１６】第５の実施の形態のセンサの機能を説明するフローチャートである。
【符号の説明】
【００６９】
１０  センサ
１２  信号入力部
１３  経路選択回路
１４  信号処理部
１６  通信制御部
１７  インタフェースプログラム格納領域
１８  コンフィグレーションデータ格納領域
２０  コントローラ
２１  アプリケーションプログラム実行部
２２  格納領域
２３  共通アプリケーションインタフェース
２４  ネットワークインタフェース
２５  ロード制御部
２６  システム構成管理部
３０  ネットワーク
【図１】
2004164605.tif 000004
【図２】
2004164605.tif 000005
【図３】
2004164605.tif 000006
【図４】
2004164605.tif 000007
【図５】
2004164605.tif 000008
【図６】
2004164605.tif 000009
【図７】
2004164605.tif 000010
【図８】
2004164605.tif 000011
【図９】
2004164605.tif 000012
【図１０】
2004164605.tif 000013
【図１１】
2004164605.tif 000014
【図１２】
2004164605.tif 000015
【図１３】
2004164605.tif 000016
【図１４】
2004164605.tif 000017
【図１５】
2004164605.tif 000018
【図１６】
2004164605.tif 000019