説明

ストリームデータ伝送方法、及び装置

【課題】 計算処理能力が低く、同時に1つの通信相手としか通信のできない通信機能を有するシーケンサであっても、センサからのストリームデータをセンタサーバで取りこぼしなく取得できる技術を提供すること。
【解決手段】 センサから出力されるストリームデータに関するイベントの発生時に行う処理を規定した処理手順データを、センタサーバからシーケンサに送入する。シーケンサは、状況を監視してイベントの発生を検出し、処理手順データに基づいて、他のシーケンサからのストリームデータの入力、他の入出力制御デバイス、又はホストデバイスへの出力、又はストリームデータの蓄積の処理を行うことにより、センサから出力されるストリームデータを取りこぼしなく、センタサーバに伝送する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ストリームデータ伝送方法及び装置に関し、特に、分散して配置されている通信機能を有する入出力制御デバイス間の通信における、ストリームデータ伝送方法及び装置に関する。
【背景技術】
【0002】
センサからの入力信号およびアクチュエータへの出力信号を通信・制御する入出力制御デバイス(シーケンサ)は、工場やビルに構築した機械システムの稼動状況の監視やセキュリティ管理に広く利用されている。センサから連続的に発生するセンサ情報をストリームデータとして、これらのシーケンサ群を経由してホストデバイス(センタサーバ)に送信するストリームデータ伝送技術がある。ストリームデータ伝送技術は、農地土壌品質管理、森林生育管理のように、比較的大規模な空間を監視するセンサネットワーク技術としての応用も期待されている。
【0003】
このようなストリームデータ伝送技術として、入力されるストリームデータを一時的に記録した後、随時出力する、ストリームデータ入出力装置に関する従来技術が特許文献1に記載されている。特許文献1には、図5に示すように、ストリームバッファ部147におけるバッファメモリの空容量を、ストリームバッファ情報管理テーブル部172に記憶されているストリームバッファ情報管理テーブルに基づいて監視し、前記空容量が所定量より少なくなった場合に、順次入力される複数のストリームデータの中から、入力を抑止すべきストリームデータを特定し、特定したストリームデータの入力を抑止するストリームバッファ制御部171を備えることを特徴とする、データ入出力制御装置に関する技術が開示されている。
【0004】
また、特許文献2には、イベント(Event)とコンディション(Condition)とアクション(Action)とで記述する制御ルールの逐次処理を繰り返すことで、シーケンサの制御動作に関する特定の処理回路を予め実装することなく、シーケンサの制御動作の追加、削除および変更が可能なシーケンス制御技術が開示されている。
【特許文献1】特開2005−20609号公報
【特許文献2】特開2004−78517号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
ところで、通信機能、特に無線通信機能を有するシーケンサを用いて、比較的大規模な空間を監視するようなセンサネットワークを形成するためには、各シーケンサは、十分小型で、低消費電力を実現したハードウェアである必要がある。この理由は、大規模な空間を監視するためには、大量のシーケンサが必要であり、電力は電池などの有限リソースに頼らざるを得ないからである。このため、シーケンサが持つ処理能力は、非力なものとなり16ビット以下のマイクロプロセッサを備える程度になると考えられる。また、無線などを利用した通信回路も一つだけの実装となり、同時に複数の通信相手のシーケンサやセンタサーバと通信することができないと考えられる。
【0006】
前述したような非力なマイクロプロセッサを持ち、一つだけの通信回路を持つ又は同時に2以上の通信相手と通信ができないようなシーケンサを利用して、センサから連続的に発生するストリームデータを、これらのシーケンサ群を経由してセンタサーバへ伝送しようとすると次のような課題があった。
【0007】
例えば、図6に示される如く、センサ501からのストリームデータは、センサ501が接続されているシーケンサ502の状態とは無関係に、常時発生しており、シーケンサ502に、2以上の通信回路がない場合、あるいは、同時に2以上の通信相手と通信ができない場合、シーケンサ502が他のシーケンサやセンタサーバ503と通信している際には、センサ501からのストリームデータの取りこぼしが発生する。工場やビルに構築した機械システムの稼働状況の監視やセキュリティ管理をセンサおよびシーケンサで実施するシステムの場合、センサ501からのストリームデータを取りこぼすことなくセンタサーバ503へ伝送することが必要で、前述したストリームデータの取りこぼしを回避する必要があった。
【0008】
特許文献1には、上述の如く、順次入力される複数のストリームデータをストリームバッファに一時的に記録した後、随時出力するデータ入出力制御装置における、メモリ領域のオーバーフローを事前に防ぐ技術が記載されている。しかしながら、この技術は入力されるストリームデータをストリームバッファに記録する際の制御技術であり、データ入出力制御装置に、外部との通信回路が一つしかない場合に、ストリームデータを取りこぼすことなく、センタサーバへ伝送するという課題を解決することはできなかった。
【0009】
また、特許文献2は、前述したような非力なマイクロプロセッサを持つシーケンサにおいて効率的に制御ルールを処理するシーケンスデータ処理装置について記載されているが、ストリームデータを取りこぼすことなく、センタサーバへ伝送するという課題を解決する方法については記載されていない。
【0010】
そこで、本発明は上記課題に鑑みて発明されたものであって、本発明の目的は、入出力制御デバイスが逐次処理する追加、削除および変更が可能な制御ルールを用いて、制御ルールを外部から入出力制御デバイスに送入することによって、センサからのストリームデータを取りこぼすことなく、ホストデバイスへ伝送することができる技術を提供することにある。
【0011】
また、入出力制御デバイスが持つ信号入力装置、信号出力装置を利用して、2以上の入出力制御デバイスが連携して、ストリームデータを取りこぼすことなく、ホストデバイスに伝送する機能を実現する技術を提供することにある。
【課題を解決するための手段】
【0012】
上記課題を解決する第1の発明は、通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサとのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムにおけるストリームデータ伝送方法であって、前記ホストデバイスより、前記入出力制御デバイスに、前記センサから出力されるストリームデータを取りこぼしなく、前記ホストデバイスに伝送するためのストリームデータ伝送手順データを送入し、前記入出力制御デバイスに、前記ストリームデータ伝送手順を処理させることにより、前記センサから出力されるストリームデータを取りこぼしなく、前記ホストデバイスに伝送することを特徴とする。
【0013】
上記課題を解決する第2の発明は、上記第1の発明において、前記ホストデバイスは、前記入出力制御デバイスに送入した前記ストリームデータ伝送手順データを、前記センサから出力されるストリームデータの取得が不要となった後に、削除することを特徴とする。
【0014】
上記課題を解決する第3の発明は、上記第1又は第2の発明において、前記ストリームデータ伝送手順データは、宣言的に記述されたルールの集合として記されていることを特徴とする。
【0015】
上記課題を解決する第4の発明は、上記第3の発明において、前記宣言的に記述されたルールは、あるイベントが発生した時に、あるコンディションであることを評価し、あるアクションを実行することを示す、イベントデータ、コンディションデータ、アクションデータのうち少なくとも1つ以上を含むルールであることを特徴とする。
【0016】
上記課題を解決する第4の発明は、通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムにおいて、前記ホストデバイスは、前記入出力制御デバイスに、前記センサから出力されるストリームデータを取りこぼしなく前記ホストデバイスに伝送するためのストリームデータ伝送手順データを送入する手段と、前記入出力制御デバイスに送入した前記ストリームデータ伝送手順データを、前記センサから出力されるストリームデータの取得が不要となった後に、削除する手段とを有し、前記入出力制御デバイスは、構成するネットワークシステム内で前記入出力デバイスを識別するための固有ID(デバイスID)を格納するデバイスID格納手段と、前記ストリームデータ伝送手順データを含む、入出力信号の制御手順を記述する制御ルールを格納する制御ルール格納手段と、前記ストリームデータを一時的に格納するストリームデータ一時格納手段と、タイマイベントを発生させるため、タイマ時間の設定と発火を管理するタイマ手段と、通信機能を介して、前記制御ルール格納手段に格納する前記制御ルールの追加/削除を管理するコマンド管理手段と、前記ストリームデータ一時格納手段に格納されているストリームデータの情報量が指定量を超過した場合に、バッファフルイベントを発生するバッファフル検知手段と、前記ストリームデータ一時格納手段に格納されているストリームデータの情報量が指定量以下となった場合に、バッファエンプティイベントを発生するバッファエンプティ検知手段と、前記タイマ手段、バッファフル検知手段、及びバッファエンプティ検知手段からのイベントを参照し、前記制御ルールを処理する制御ルール処理手段と、少なくとも1つ以上のデジタルまたはアナログの入力信号ポートと、少なくとも1つ以上のデジタルまたはアナログの出力信号ポートとを有することを特徴とする。
【0017】
上記課題を解決する第6の発明は、上記第5の発明において、前記ホストデバイスは、サーバコンピュータであることを特徴とする。
【0018】
上記課題を解決する第7の発明は、上記第5又は第6の発明において、前記入出力制御デバイスは、入出力信号制御用シーケンサであることを特徴とする。
【0019】
上記課題を解決する第8の発明は、上記第5から第7のいずれかの発明において、前記ストリームデータ伝送手順データは、宣言的に記述されたルールの集合として記されていることを特徴とする。
【0020】
上記課題を解決する第9の発明は、上記第8の発明において、前記宣言的に記述されたルールは、あるイベントが発生した時に、あるコンディションであることを評価し、あるアクションを実行することを示す、イベントデータ、コンディションデータ、アクションデータのうち少なくとも1つ以上を含むルールであることを特徴とする。
【0021】
上記課題を解決する第10の発明は、通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムにおけるホストデバイスであって、前記入出力制御デバイスに、前記センサから出力されるストリームデータを取りこぼしなく前記ホストデバイスに伝送するためのストリームデータ伝送手順データを送入する手段を有することを特徴とする。
【0022】
上記課題を解決する第11の発明は、上記第10の発明において、前記入出力制御デバイスに送入した前記ストリームデータ伝送手順データを、前記センサから出力されるストリームデータの取得が不要となった後に、削除する手段を有することを特徴とする。
【0023】
上記課題を解決する第12の発明は、通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムにおける入出力制御デバイスであって、前記ホストデバイスから送信される、前記センサから出力されるストリームデータを取りこぼしなく前記ホストデバイスに伝送するためのストリームデータ伝送手順データを含む、入出力信号の制御手順を記述する制御ルールを格納する制御ルール格納手段と、前記制御ルールに基づいて、処理を行う制御手段とを有することを特徴とする。
【0024】
上記課題を解決する第13の発明は、上記第12の発明において、構成するネットワークシステム内で前記入出力デバイスを識別するための固有ID(デバイスID)を格納するデバイスID格納手段と、通信機能を介して、受信されるストリームデータを一時的に格納するストリームデータ一時格納手段と、少なくとも1つ以上のデジタルまたはアナログの入力信号ポートと、少なくとも1つ以上のデジタルまたはアナログの出力信号ポートとを有することを特徴とする。
【0025】
上記課題を解決する第14の発明は、上記第12又は第13のいずれかの発明において、前記制御手段は、タイマイベントを発生させるため、タイマ時間の設定と発火を管理するタイマ手段と、通信機能を介して、前記制御ルール格納手段に格納する前記制御ルールの追加/削除を管理するコマンド管理手段と、前記ストリームデータ一時格納手段に格納されているストリームデータの情報量が指定量を超過した場合に、バッファフルイベントを発生するバッファフル検知手段と、前記ストリームデータ一時格納手段に格納されているストリームデータの情報量が指定量以下となった場合に、バッファエンプティイベントを発生するバッファエンプティ検知手段と、前記タイマ手段、バッファフル検知手段、及びバッファエンプティ検知手段からのイベントを参照し、前記制御ルールを処理する制御ルール処理手段とを有することを特徴とする。
【0026】
上記課題を解決する第15の発明は、通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムにおけるホストデバイスの制御プログラムであって、前記制御プログラムは前記ホストデバイスを、前記入出力制御デバイスに、前記センサから出力されるストリームデータを取りこぼしなく前記ホストデバイスに伝送するためのストリームデータ伝送手順データを送入する手段として機能させることを特徴とする。
【0027】
上記課題を解決する第16の発明は、上記第15の発明において、前記制御プログラムは前記ホストデバイスを、前記入出力制御デバイスに送入した前記ストリームデータ伝送手順データを、前記センサから出力されるストリームデータの取得が不要となった後に、削除する手段として機能させることを特徴とする。
【0028】
上記課題を解決する第17の発明は、通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムにおける入出力制御デバイスの制御プログラムであって、前記制御プログラムは前記入出力制御デバイスを、前記ホストデバイスから送信される、前記センサから出力されるストリームデータを取りこぼしなく前記ホストデバイスに伝送するためのストリームデータ伝送手順データを含む、入出力信号の制御手順を記述する制御ルールに基づいて、処理を行う制御手段として機能させることを特徴とする。
【0029】
上記課題を解決する第18の発明は、上記第17の発明において、前記制御プログラムは前記制御手段を、前記ホストデバイスから送信される、前記センサから出力されるストリームデータを取りこぼしなく前記ホストデバイスに伝送するためのストリームデータ伝送手順データを含む、入出力信号の制御手順を記述する制御ルールを処理する制御ルール処理手段と、タイマイベントを発生させるため、タイマ時間の設定と発火を管理するタイマ手段と、通信機能を介して、格納手段に格納される前記制御ルールの追加/削除を管理するコマンド管理手段と、一時格納手段に格納されているストリームデータの情報量が指定量を超過した場合に、バッファフルイベントを発生するバッファフル検知手段と、前記一時格納手段に格納されているストリームデータの情報量が指定量以下となった場合に、バッファエンプティイベントを発生するバッファエンプティ検知手段と、前記タイマ手段、バッファフル検知手段、及びバッファエンプティ検知手段からのイベントを参照し、前記制御ルールを処理する制御ルール処理手段として機能させることを特徴とする。
【0030】
上記課題を解決する第19の発明は、通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサとのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムにおけるストリームデータ伝送方法であって、前記センサから出力されるストリームデータに関するイベントの発生時に行う処理を規定した処理手順データを、前記ホストデバイスから前記入出力制御デバイスに送入し、前記入出力制御デバイスは、自デバイスの状況を監視してイベントの発生を検出し、前記処理手順データに基づいて、センサ又は他の入出力制御デバイスからのストリームデータの入力、他の入出力制御デバイス、又はホストデバイスへの出力、又はストリームデータの蓄積の処理を行うことにより、前記センサから出力されるストリームデータを取りこぼしなく、前記ホストデバイスに伝送することを特徴とする。
【0031】
上記課題を解決する第20の発明は、通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサとのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムであって、前記ホストデバイスは、前記センサから出力されるストリームデータに関するイベントの発生時に、行う処理を規定した処理手順データを、前記入出力制御デバイスに送入する手段を有し、前記入出力制御デバイスは、自デバイスの状況を監視してイベントの発生を検出し、前記処理手順データに基づいて、センサ又は他の入出力制御デバイスからのストリームデータの入力、他の入出力制御デバイス、又はホストデバイスへの出力、又はストリームデータの蓄積の処理を行う手段を有し、前記センサから出力されるストリームデータを取りこぼしなく、前記ホストデバイスに伝送することを特徴とする。
【0032】
本発明では、分散して配置する入出力制御デバイスに対し、ストリームデータをホストデバイスへ伝送する手順を予め記録しておく必要がなく、ネットワークを構成する入出力制御デバイスのそれぞれに対し、ストリームデータ伝送ルールを送入することにより、入出力制御デバイス群にストリームデータを取りこぼすことなくホストデバイスへ伝送させる。
【0033】
また、ストリームデータ伝送ルールを削除し、異なるストリームデータ伝送ルールを送入することにより、センサからのストリームデータを処理する入出力制御デバイスの数を変化させ、伝送速度の異なるストリームデータを取りこぼすことなくホストデバイスに伝送する。
【発明の効果】
【0034】
本発明によれば、少ない計算リソースしかもたない多数の入出力制御デバイスと、従来のパーソナルコンピュータと同程度の計算リソースをもつホストデバイスとを組み合わせたシステムであっても、センサからのストリームデータを取りこぼすことなくホストデバイスに伝送できるという優れた効果を奏する。
【0035】
また、本発明は、非力なマイクロプロセッサと、唯一の通信回路を持つような入出力制御デバイスに対し、センサから連続的に発生するストリームデータを、これらの入出力制御デバイス群を経由してホストデバイスに伝送することにより、センサからのストリームデータを取りこぼすことなくホストデバイスに伝送できるという優れた効果を奏する。
【発明を実施するための最良の形態】
【0036】
本発明の実施の形態について図面を参照して詳細に説明する。
【0037】
図1は、本発明の入出力制御デバイス、ホストデバイス、及びセンサによって構成されるネットワークシステムの概略を示した図である。
【0038】
図1において、201がセンサ、202−1、202−2、・・、202−nがn個の入出力制御デバイス、203がホストデバイスである。図1において、入出力制御デバイス202−1、202−2、・・、202−n、および、ホストデバイス203は通信機能を持っており、それぞれの入出力制御デバイス202−1、202−2、・・、202−nとホストデバイス203とは相互に通信できるものとする。また、センサ201もストリームデータを通信する機能を持っており、それぞれの入出力制御デバイス202−1、202−2、・・、202−nへストリームデータを送信することができる。
【0039】
また、入出力制御デバイス202−1、202−2、・・、202−nは、順番に、環状に、信号入出力が結線されているものとする。つまり、202−1の信号出力端子は202−2の信号入力端子に、202−2の信号出力端子は202−3の信号入力端子に、以下同様に結線され、202−nの信号出力端子は202−1の信号入力端子に結線されている。
【0040】
尚、ここに示した、信号入出力の結線方法は、一例であり、各入出力制御デバイスが、信号入出力端子を介して有機的に結合されていればよい。ここで有機的な結合とは、各入出力制御デバイスの動作を同期させるために利用できる結合である。
【0041】
また、ここでは、センサ201と入出力制御デバイス202−1、202−2、・・、202−n間、入出力制御デバイス202−1、202−2、・・、202−nとホストデバイス203間の通信は、ストリームデータを通信することが可能な通信であれば、有線通信/無線通信を問わない。
【0042】
図2は本発明の入出力制御デバイス202−1の一実施例の概略構成を示すブロック図、図3はホストデバイス203の一実施例の概略構成を示すブロック図である。尚、入出力制御デバイス202−1、202−2、・・、202−nは同一の構成であるので、図2は入出力制御デバイス202−1のみ示した。
【0043】
本発明の入出力制御デバイス202−1は、図2に示すように、演算装置1、記憶装置2、通信装置3、信号入力装置4、信号出力装置5とを含み構成されている。
【0044】
演算装置1は、制御ルール処理部11、タイマ管理部12、内部状態管理部14、コマンド管理部15、バッファフル検知部16、バッファエンプティ検知部17により構成されている。
【0045】
記憶装置2は、制御ルール格納部21、デバイスID格納部22、ストリームデータ一時格納部23により構成されている。
【0046】
また、本発明のホストデバイス203は、図3に示すように、演算装置6、記憶装置7、通信装置8を含み構成されている。
【0047】
演算装置6は、ストリームデータ伝送ルール送入部61、ストリームデータ伝送ルール削除部62、ストリームデータ処理部63により構成されている。
【0048】
記憶装置7は、ストリームデータ伝送ルール格納部71、ストリームデータ格納部72、デバイスID格納部73により構成されている。
【0049】
次に、図2、3に示した各装置の動作について説明する。
【0050】
まず、入出力制御デバイス202−1について説明する。
【0051】
記憶装置2を構成するデバイスID格納部22は、入出力制御デバイスを識別するためのデバイスIDが格納されている。格納されているデバイスIDは、他の入出力制御デバイスやホストデバイスへの通信、すなわち、メッセージの送信、及び、ストリームデータの伝送の際に参照される。
【0052】
記憶装置2を構成する制御ルール格納部21は、0以上の制御ルールを保持する。制御ルールは、
(1)信号入力状態(Event_INPUT)に応じて特定の動作を実行する。
(2)内部状態(Event_STATE)に応じて特定の動作を実行する。
(3)予め設定した時間が経過したとき(Event_TIMER)に特定の動作を実行する。
(4)特定のメッセージを受信したとき(Event_MSG)に特定の動作を実行する。
(5)ストリームデータ一時格納部23に格納されている情報量が指定量を超過した[バッファフル]とき(Event_FULL)に特定の動作を実行する。
(6)ストリームデータ一時格納部23に格納されている情報量が指定量以下となった[バッファエンプティ]とき(Event_EMPTY)に特定の動作を実行する。
ことを記すことが可能な制御ルールである。
【0053】
ここで、特定の動作とは、
(1)信号出力動作(Action_OUTPUT)
(2)内部状態の値の更新(Action_STATE)
(3)タイマの時間設定(Action_TIMER)
(4)特定のメッセージの送信(Action_MSG)
(5)通信装置3から入力されるストリームデータの蓄積(Action_SAVE)
(6)蓄積ストリームデータの通信装置3による送信(Action_FORWARD)
である。すなわち、制御ルールは、あるイベントが発生した時に、ある内部状態を評価し、あるアクションを実行することを示すルールである。制御ルール格納部21に格納された制御ルールは、演算装置1に読み込まれ、入出力制御デバイス202−1の動作を決定する。
【0054】
記憶装置2を構成するストリームデータ一次格納部23は、演算装置1における制御ルール処理結果に従って、通信装置3を介して受信されるストリームデータを一時的に格納する。
【0055】
信号出力装置5は、演算装置1における制御ルール処理結果に従って、出力信号を出力する。
【0056】
無線通信装置3は、他の入出力制御デバイス、ホストデバイス、または、センサとの間で、メッセージ、コマンド、及び、ストリームデータの送受信を行う。ここでメッセージとは、メッセージを識別するためのメッセージ固有のID(メッセージID)が割り当てられた通信信号である。また、コマンドとは、入出力制御デバイスに、制御ルールを追加するコマンド(ADD_ECA)、制御ルールを削除するコマンド(CLR_ECA)、制御ルールを有効にするコマンド(ABLE_ECA)、制御ルールを無効にするコマンド(ENABLE_ECA)といった、入出力制御デバイスの動作を外部から制御するための信号である。
【0057】
演算装置1を構成する制御ルール処理部11は、記憶装置2に格納されている制御ルールを参照し、信号入力状態(Event_INPUT)、内部状態(Event_STATE)、予め設定した時間が経過した(Event_TIMER)、特定のメッセージを受信したとき(Event_MSG)、バッファフル(Event_FULL)、バッファエンプティ(Event_EMPTY)が発生した時に、制御ルールに従い、信号出力動作(Action_OUTPUT)、内部状態の値の更新(Action_STATE)、タイマの時間設定(Action_TIMER)、特定のメッセージの送信(Action_MSG)、ストリームデータの蓄積(Action_SAVE)、蓄積ストリームデータの送信(Action_FORWARD)の動作を逐次的に繰り返す。
【0058】
演算装置1を構成するタイマ管理部12は、制御ルール処理部11によって、タイマの時間設定(Action_TIMER)が実施された場合にタイマを起動し、設定された時間の後に、タイマイベント(Event_TIMER)を発生する。
【0059】
演算装置1を構成する内部状態管理部14は、制御ルール処理部11によって、内部状態を更新するアクション(Action_STATE)が実施された場合に内部状態の値を変更し、また、内部状態が変化すると内部状態変化イベント(Event_STATE)を発生する。
【0060】
演算装置1を構成するコマンド管理部15は、通信装置3で受信したコマンドに応じて、記憶装置2を構成する制御ルール格納部21へ制御ルールを追加したり、格納されている制御ルールを削除したり、あるいは、制御ルールの逐次実行を一時的に停止したり、一時的に停止した逐次実行を再開したりする。
【0061】
演算装置1を構成するバッファフル検知部16は、ストリームデータ一時格納部23に格納されているストリームデータの情報量が指定量を超過した場合に、バッファフルイベント(Event_FULL)を発生する。
【0062】
演算装置1を構成するバッファエンプティ検知部17は、ストリームデータ一時格納部23に格納されているストリームデータの情報量が指定量以下となった場合に、バッファエンプティイベント(Event_EMPTY)を発生する。
【0063】
なお、ここに示した入出力制御デバイス202−1は、一般にCPUおよびRAM、ROM、各種I/O装置等を含み構成されたコンピュータ装置として実施でき、所望機能はCPUに所定プログラムを実行させ所定演算および各部の制御を行わせることで実現することもできる。
【0064】
続いて、ホストデバイス203について説明する。
【0065】
記憶装置7を構成するストリームデータ伝送ルール格納部71は、ストリームデータを伝送するための制御ルールを格納する。
【0066】
記憶装置7を構成するストリームデータ格納部72は、後述のストリームデータ処理部63の処理結果を反映させて、ストリームデータを格納する。
【0067】
演算装置6を構成するストリームデータ伝送ルール送入部61は、ストリームデータ伝送ルール格納部71を参照して、該制御ルールを入出力制御デバイスへ送入するためのコマンドを生成、コマンド送信動作を実行する。
【0068】
演算装置6を構成するストリームデータ伝送ルール削除部62は、入出力デバイスに格納されている制御ルールを削除するためのコマンドを生成、コマンド送信動作を実行する。
【0069】
演算装置6を構成するストリームデータ処理部63は、通信装置8で受信したストリームデータをストリームデータ格納部72へ格納する。
【0070】
通信装置8は、前記ストリームデータ伝送ルール送入部61、前記ストリームデータ伝送ルール削除部62で実行したコマンド送信動作の実行を受け、コマンドを送信したり、ストリームデータの受信を行う。
【0071】
なお、ここに示したホストデバイス203は、一般にCPUおよびRAM、ROM、各種I/O装置等を含み構成されたコンピュータ装置として実施でき、所望機能はCPUに所定プログラムを実行させ所定演算および各部の制御を行わせることで実現することもできる。
【実施例1】
【0072】
具体的に制御ルールを示して、センサからのストリームデータの取りこぼしのなく、ホストデバイスに伝送する方法について説明する。ストリームデータの伝送方法の第一の方法で用いる制御ルールを図4に示す。
【0073】
制御ルール301は1つめの入出力制御デバイス(マスタデバイス)に送入する制御ルール、制御ルール302は2つめの入出力制御デバイス(スレーブデバイス)に送入する制御ルールである。
【0074】
本方法における、センサ、入出力制御デバイス、ホストデバイスのネットワーク構成は、図1において、n=2とし、入出力制御デバイス202−1の出力端子を、入出力制御デバイス202−2の入力端子に結線することにより実現する。そして、ホストデバイス203より、入出力制御デバイス202−1に制御ルール301を、入出力制御デバイス202−2に制御ルール302を送入する。
【0075】
制御ルール301、制御ルール302を送入した直後は、入出力制御デバイス202−1、202−2とも新たなイベントの発生を待機している状態である。その後、ホストデバイス203から、入出力制御デバイス202−1へ「スタートメッセージ」を送信する。すると入出力デバイス202−1において、「スタートメッセージ」に関するEvent_MSGが発生し、制御ルール301に記載される最初のルールのEvent条件が満たされる。すると、当該ルールに記載されているActionである、センサからのストリームデータ蓄積(Action_SAVE)が開始される。
【0076】
入出力制御デバイス202−1は、センサ201からのストリームデータを、ストリームデータ一時格納部23に格納し続ける。そして、ストリームデータ一時格納部23に格納されている情報量が、指定量を超過すると、バッファフル検知部16が、バッファフルイベント(Event_FULL)を発生させる。バッファフルイベントは、制御ルール301に記載される2番目のルールのEvent条件を満たすこととなり、入出力制御デバイス202−1は、OUTPUTをON(Action_OUTPUT)、蓄積ストリームデータをホストデバイス203へ転送(Action_FORWARD)を実行する。
【0077】
このとき、入出力制御デバイス202−1は、センサ201からのストリームデータを受信、蓄積していない。
【0078】
入出力制御デバイス202−2は、入力端子が、入出力制御デバイス202−1の出力端子に結線されているため、制御ルール302に記載されている最初のルールのEvent条件を満たすこととなり、入出力制御デバイス202−2は、センサからのストリームデータの蓄積(Action_SAVE)を実行する。
【0079】
したがって、入出力制御デバイス202−1が、センサ201からのストリームデータを受信、蓄積していない間、入出力制御デバイス202−2がセンサ201からのストリームデータを受信、蓄積することとなる。
【0080】
入出力制御デバイス202−1とホストデバイス203間の通信速度が十分速いか、入出力制御デバイス202−2に搭載されるストリームデータ一時格納部23の容量が十分大きければ、入出力デバイス202−2において、バッファフルが発生する前に、入出力制御デバイス202−1からホストデバイス203へのストリームデータ転送が終了する。
【0081】
入出力制御デバイス202−1において、ストリームデータの転送が終了すると、バッファエンプティ(Event_EMPTY)が発生する。すると、制御ルール301の3つめのルールのイベント条件が満たされることとなり、OUTPUTがOFFとなり(Action_OUTPUT)、センサからのストリームデータ蓄積(Action_SAVE)が開始される。
【0082】
一方、入出力制御デバイス202−2は、入力端子がOFFとなるため、制御ルール302の2つめのルールのイベント条件が満たされることとなり、蓄積されているストリームデータをホストデバイス203へ転送(Action_FORWARD)する。入出力制御デバイス202−2とホストデバイス203への通信速度が十分に速ければ、入出力制御デバイス202−1でバッファフルイベントが発生する前に、入出力制御デバイス202−2におけるホストデバイス203へのストリームデータ転送は終了する。
【0083】
以上のように、図4に示す制御ルールによって、センサ201からのストリームデータを取りこぼすことなくホストデバイス203へ伝送することが可能となる。
【0084】
説明の中で、ストリームデータ一時格納部23の容量や、入出力制御デバイスとホストデバイスとの通信速度について条件を示したが、もっとも簡単な条件として、2つの入出力制御デバイスに搭載されているストリームデータ一時格納部23の容量が等しく、センサと各入出力制御デバイス、各入出力制御デバイスとホストデバイスとの間の通信速度が共通しているという条件がある。
【実施例2】
【0085】
次に、ストリームデータの伝送方法の第二の方法で用いる制御ルールを図5に示す。401は入出力制御デバイスに送入する制御ルールである。本方法における、センサ、入出力制御デバイス、ホストデバイスのネットワーク構成は、図1において、nを2以上とし、202−iの出力端子を、202−(i+1)の入力端子に結線、202−nの出力端子を、202−1の入力端子に結線することにより実現する。ここで、iは、1以上、n−1以下の整数とする。そして、すべての入出力制御デバイスに、制御ルール401を送入する。
【0086】
制御ルール401を送入した直後は、すべての入出力制御デバイスは新たなイベントの発生を待機している状態である。その後、ホストデバイス203から、任意の一つの入出力制御デバイス202−iへ「スタートメッセージ」を送信する。すると、入出力デバイス202−iにおいて、「スタートメッセージ」に関するEvent_MSGが発生し、制御ルール401に記載される最初のルールのEvent条件が満たされる。そして、当該ルールに記載されているActionである、センサからのストリームデータ蓄積(Action_SAVE)が開始される。
【0087】
入出力制御デバイス202−iは、センサ201からのストリームデータを、ストリームデータ一時格納部23に格納し続ける。そして、ストリームデータ一時格納部23に格納されている情報量が、指定量を超過すると、バッファフル検知部16が、バッファフルイベント(Event_FULL)を発生させる。バッファフルイベントは、制御ルール401に記載される3つめのルールのEvent条件を満たすこととなり、入出力制御デバイス202−iは、OUTPUTをON(Action_OUTPUT)、蓄積ストリームデータをセンタサーバへ転送(Action_FORWARD)を実行する。
【0088】
同時に、入出力制御デバイス202−(i+1)[i<nの場合]、あるいは入出力制御デバイス202−1[i=nの場合]において、制御ルール401の2番目のEvent条件が満たされるため、センサ201からのストリームデータは、入出力制御デバイス202−(i+1)、または、入出力制御デバイス202−1で蓄積されることとなる。
【0089】
このように、ある入出力制御デバイスのストリームデータ一時格納部23がいっぱいとなったら、ストリームデータの蓄積を、次の入出力制御デバイスに移すという動作を繰り返すことにより、センサ201のストリームデータを取りこぼすことなく、ホストデバイスへ伝送することが可能となる。
【0090】
ストリームデータの伝送方法の第二の方法は、特に、無線通信など通信確立のための時間を要する場合に有効である。
【産業上の利用可能性】
【0091】
本発明の活用例として、シーケンサ等の組込型デバイス、携帯電話機、PHS(Personal Handy Phone System)、PDA(Personal Data Assistance/Personal Digital Assistants:個人向け携帯型情報通信機器)等の無線通信機能を有する小型の情報端末装置であって、センサで発生する入力信号およびアクチュエータが発生する出力信号を処理することが可能な入出力制御装置がある。
【図面の簡単な説明】
【0092】
【図1】図1は本発明を適用するネットワークシステムの構成を示す図である。
【図2】図2は本発明の一実施例における入出力制御デバイスの構成の要部を表わしたブロック図である。
【図3】図3は本発明の一実施例におけるホストデバイスの構成の要部を表わしたブロック図である。
【図4】図4は2個の入出力制御デバイスにより、ストリームデータを取りこぼしなく伝送する制御ルールの一例を示す図である。
【図5】図5は環状に接続したn個の入出力制御デバイスにより、ストリームデータを取りこぼしなく伝送する制御ルールの一例を示す図である。
【図6】図6は従来技術によるデータ入出力制御装置の構成を示すブロック図である。
【図7】図7はシーケンサによるセンサからのストリームデータの取りこぼしを説明するための図である。
【符号の説明】
【0093】
1 演算装置
2 記憶装置
3 通信装置
4 信号入力装置
5 信号出力装置
6 演算装置
7 記憶装置
8 通信装置
11 制御ルール処理部
12 タイマ管理部
14 内部状態管理部
15 コマンド管理部
16 バッファフル検知部
17 バッファエンプティ検知部
21 制御ルール格納部
22 デバイスID格納部
23 ストリームデータ一時格納部
61 ストリームデータ伝送ルール送入部
62 ストリームデータ伝送ルール削除部
63 ストリームデータ処理部
71 ストリームデータ伝送ルール格納部
72 ストリームデータ格納部
73 デバイスID格納部
201 センサ
202−1 入出力制御デバイス1
202−2 入出力制御デバイス2
202−n 入出力制御デバイスn
203 ホストデバイス
301 1つめの入出力制御デバイスに送入する制御ルールを模式的に示した図
302 2つめの入出力制御デバイスに送入する制御ルールを模式的に示した図
401 入出力制御デバイスに送入する制御ルールを模式的に示した図
501 センサ
502 シーケンサ
503 センタサーバ

【特許請求の範囲】
【請求項1】
通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサとのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムにおけるストリームデータ伝送方法であって、
前記ホストデバイスより、前記入出力制御デバイスに、前記センサから出力されるストリームデータを取りこぼしなく、前記ホストデバイスに伝送するためのストリームデータ伝送手順データを送入し、
前記入出力制御デバイスに、前記ストリームデータ伝送手順を処理させることにより、前記センサから出力されるストリームデータを取りこぼしなく、前記ホストデバイスに伝送することを特徴とするストリームデータ伝送方法。
【請求項2】
前記ホストデバイスは、前記入出力制御デバイスに送入した前記ストリームデータ伝送手順データを、前記センサから出力されるストリームデータの取得が不要となった後に、削除することを特徴とする請求項1に記載のストリームデータ伝送方法。
【請求項3】
前記ストリームデータ伝送手順データは、宣言的に記述されたルールの集合として記されていることを特徴とする請求項1又は請求項2に記載のストリームデータ伝送方法。
【請求項4】
前記宣言的に記述されたルールは、あるイベントが発生した時に、あるコンディションであることを評価し、あるアクションを実行することを示す、イベントデータ、コンディションデータ、アクションデータのうち少なくとも1つ以上を含むルールであることを特徴とする請求項3に記載のストリームデータ伝送方法。
【請求項5】
通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムにおいて、
前記ホストデバイスは、
前記入出力制御デバイスに、前記センサから出力されるストリームデータを取りこぼしなく前記ホストデバイスに伝送するためのストリームデータ伝送手順データを送入する手段と、
前記入出力制御デバイスに送入した前記ストリームデータ伝送手順データを、前記センサから出力されるストリームデータの取得が不要となった後に、削除する手段と
を有し、
前記入出力制御デバイスは、
構成するネットワークシステム内で前記入出力デバイスを識別するための固有ID(デバイスID)を格納するデバイスID格納手段と、
前記ストリームデータ伝送手順データを含む、入出力信号の制御手順を記述する制御ルールを格納する制御ルール格納手段と、
前記ストリームデータを一時的に格納するストリームデータ一時格納手段と、
タイマイベントを発生させるため、タイマ時間の設定と発火を管理するタイマ手段と、
通信機能を介して、前記制御ルール格納手段に格納する前記制御ルールの追加/削除を管理するコマンド管理手段と、
前記ストリームデータ一時格納手段に格納されているストリームデータの情報量が指定量を超過した場合に、バッファフルイベントを発生するバッファフル検知手段と、
前記ストリームデータ一時格納手段に格納されているストリームデータの情報量が指定量以下となった場合に、バッファエンプティイベントを発生するバッファエンプティ検知手段と、
前記タイマ手段、バッファフル検知手段、及びバッファエンプティ検知手段からのイベントを参照し、前記制御ルールを処理する制御ルール処理手段と、
少なくとも1つ以上のデジタルまたはアナログの入力信号ポートと、
少なくとも1つ以上のデジタルまたはアナログの出力信号ポートと
を有することを特徴とするネットワークシステム。
【請求項6】
前記ホストデバイスは、サーバコンピュータであることを特徴とする請求項5に記載のネットワークシステム。
【請求項7】
前記入出力制御デバイスは、入出力信号制御用シーケンサであることを特徴とする請求項5又は請求項6に記載のネットワークシステム。
【請求項8】
前記ストリームデータ伝送手順データは、宣言的に記述されたルールの集合として記されていることを特徴とする請求項5から請求項7のいずれかに記載のネットワークシステム。
【請求項9】
前記宣言的に記述されたルールは、あるイベントが発生した時に、あるコンディションであることを評価し、あるアクションを実行することを示す、イベントデータ、コンディションデータ、アクションデータのうち少なくとも1つ以上を含むルールであることを特徴とする請求項8に記載のネットワークシステム。
【請求項10】
通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムにおけるホストデバイスであって、
前記入出力制御デバイスに、前記センサから出力されるストリームデータを取りこぼしなく前記ホストデバイスに伝送するためのストリームデータ伝送手順データを送入する手段を有することを特徴とするホストデバイス。
【請求項11】
前記入出力制御デバイスに送入した前記ストリームデータ伝送手順データを、前記センサから出力されるストリームデータの取得が不要となった後に、削除する手段を有することを特徴とする請求項10に記載のホストデバイス。
【請求項12】
通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムにおける入出力制御デバイスであって、
前記ホストデバイスから送信される、前記センサから出力されるストリームデータを取りこぼしなく前記ホストデバイスに伝送するためのストリームデータ伝送手順データを含む、入出力信号の制御手順を記述する制御ルールを格納する制御ルール格納手段と、
前記制御ルールに基づいて、処理を行う制御手段と
を有することを特徴とする入出力制御デバイス。
【請求項13】
構成するネットワークシステム内で前記入出力デバイスを識別するための固有ID(デバイスID)を格納するデバイスID格納手段と、
通信機能を介して、受信されるストリームデータを一時的に格納するストリームデータ一時格納手段と、
少なくとも1つ以上のデジタルまたはアナログの入力信号ポートと、
少なくとも1つ以上のデジタルまたはアナログの出力信号ポートと
を有することを特徴とする請求項12に記載の入出力制御デバイス。
【請求項14】
前記制御手段は、
タイマイベントを発生させるため、タイマ時間の設定と発火を管理するタイマ手段と、
通信機能を介して、前記制御ルール格納手段に格納する前記制御ルールの追加/削除を管理するコマンド管理手段と、
前記ストリームデータ一時格納手段に格納されているストリームデータの情報量が指定量を超過した場合に、バッファフルイベントを発生するバッファフル検知手段と、
前記ストリームデータ一時格納手段に格納されているストリームデータの情報量が指定量以下となった場合に、バッファエンプティイベントを発生するバッファエンプティ検知手段と、
前記タイマ手段、バッファフル検知手段、及びバッファエンプティ検知手段からのイベントを参照し、前記制御ルールを処理する制御ルール処理手段と
を有することを特徴とする請求項12又は請求項13に記載の入出力制御デバイス。
【請求項15】
通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムにおけるホストデバイスの制御プログラムであって、
前記制御プログラムは前記ホストデバイスを、前記入出力制御デバイスに、前記センサから出力されるストリームデータを取りこぼしなく前記ホストデバイスに伝送するためのストリームデータ伝送手順データを送入する手段として機能させることを特徴とするホストデバイスの制御プログラム。
【請求項16】
前記制御プログラムは前記ホストデバイスを、前記入出力制御デバイスに送入した前記ストリームデータ伝送手順データを、前記センサから出力されるストリームデータの取得が不要となった後に、削除する手段として機能させることを特徴とする請求項15に記載のホストデバイスの制御プログラム。
【請求項17】
通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムにおける入出力制御デバイスの制御プログラムであって、
前記制御プログラムは前記入出力制御デバイスを、前記ホストデバイスから送信される、前記センサから出力されるストリームデータを取りこぼしなく前記ホストデバイスに伝送するためのストリームデータ伝送手順データを含む、入出力信号の制御手順を記述する制御ルールに基づいて、処理を行う制御手段として機能させることを特徴とする入出力制御デバイスの制御プログラム。
【請求項18】
前記制御プログラムは前記制御手段を、
前記ホストデバイスから送信される、前記センサから出力されるストリームデータを取りこぼしなく前記ホストデバイスに伝送するためのストリームデータ伝送手順データを含む、入出力信号の制御手順を記述する制御ルールを処理する制御ルール処理手段と、
タイマイベントを発生させるため、タイマ時間の設定と発火を管理するタイマ手段と、
通信機能を介して、格納手段に格納される前記制御ルールの追加/削除を管理するコマンド管理手段と、
一時格納手段に格納されているストリームデータの情報量が指定量を超過した場合に、バッファフルイベントを発生するバッファフル検知手段と、
前記一時格納手段に格納されているストリームデータの情報量が指定量以下となった場合に、バッファエンプティイベントを発生するバッファエンプティ検知手段と、
前記タイマ手段、バッファフル検知手段、及びバッファエンプティ検知手段からのイベントを参照し、前記制御ルールを処理する制御ルール処理手段と
して機能させることを特徴とする請求項17に記載の入出力制御デバイスの制御プログラム。
【請求項19】
通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサとのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムにおけるストリームデータ伝送方法であって、
前記センサから出力されるストリームデータに関するイベントの発生時に行う処理を規定した処理手順データを、前記ホストデバイスから前記入出力制御デバイスに送入し、
前記入出力制御デバイスは、自デバイスの状況を監視してイベントの発生を検出し、前記処理手順データに基づいて、センサ又は他の入出力制御デバイスからのストリームデータの入力、他の入出力制御デバイス、又はホストデバイスへの出力、又はストリームデータの蓄積の処理を行うことにより、前記センサから出力されるストリームデータを取りこぼしなく、前記ホストデバイスに伝送することを特徴とするストリームデータ伝送方法。
【請求項20】
通信機能を有する2以上の入出力制御デバイスを、通信機能を有する1以上のホストデバイスと通信機能を有する1以上のセンサとのいずれとも通信できるように接続・配置することによって構成されるネットワークシステムであって、
前記ホストデバイスは、前記センサから出力されるストリームデータに関するイベントの発生時に、行う処理を規定した処理手順データを、前記入出力制御デバイスに送入する手段を有し、
前記入出力制御デバイスは、自デバイスの状況を監視してイベントの発生を検出し、前記処理手順データに基づいて、センサ又は他の入出力制御デバイスからのストリームデータの入力、他の入出力制御デバイス、又はホストデバイスへの出力、又はストリームデータの蓄積の処理を行う手段を有し、
前記センサから出力されるストリームデータを取りこぼしなく、前記ホストデバイスに伝送することを特徴とするネットワークシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate