(57)【要約】【課題】データ受信装置の受信取り損ねによるデータの欠落を補正するに最適なデータ通信システムを提供する。【解決手段】ネットワークを介して接続されたデータ送信部とデータ受信部とからなり、前記データ送信部は、一定時間毎にデータを取り込むデータ入力部と、このデータ入力部から順次取り込んだデータを所定数に亘って順に記憶するメモリと、データ送信回数を管理するスキャンカウンタと、前記メモリに記憶された所定数のデータと前記スキャンカウンタの値とからなるフレーム構成のデータをネットワークに送出すると共に、このデータ送信を行う都度前記スキャンカウンタの値を歩進する送信制御部とを備える。【選択図】      図１
2004200787.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続されたデータ送信部とデータ受信部とからなり、
前記データ送信部は、
一定時間毎にデータを取り込むデータ入力部と、
このデータ入力部から順次取り込んだデータを所定数に亘って順に記憶するメモリと、
データ送信回数を管理するスキャンカウンタと、
前記メモリに記憶された所定数のデータと前記スキャンカウンタの値とからなるフレーム構成のデータをネットワークに送出すると共に、このデータ送信を行う都度前記スキャンカウンタの値を歩進する送信制御部と
を備えることを特徴とするデータ通信システム。
【請求項２】
請求項１に記載のデータ通信システムであって、
前記データ受信部は、
受信フレームから最新データを抽出するデータ抽出部と、
前記受信フレームにより示されるスキャンカウンタの現在値と前回の受信フレームにより示されるスキャンカウンタの前回値とを比較して受信抜けの有無を判定する判定部と、
この判定部の判定結果に従い、受信抜けがあるときは前記スキャンカウンタの現在値と前回値との差に従って前記受信フレーム中の最新データと過去のデータとを抽出する受信データ補償手段と
を備えることを特徴とするデータ通信システム。
【請求項３】
ネットワークを介して接続されたデータ送信部とデータ受信部とからなり、
前記データ送信部は、
一定時間毎にデータを取り込むデータ入力部と、
このデータ入力部から順次取り込んだデータを所定数に亘って順に記憶するメモリと、
このメモリに保持された最新のデータと前回のデータとを比較する判定部と、この判定部の判定結果に応じて、最新のデータと前回のデータとが等しいときに歩進されるスキップカウンタと、
データの送信回数を管理するスキャンカウンタと、
前記判定部により最新のデータが前回のデータとは異なることが判定されたとき、前記メモリに記憶された所定数のデータと前記スキップカウンタおよびスキャンカウンタの各値とからなるフレーム構成のデータを送信すると共に、前記スキャンカウンタの値を歩進および前記スキップカウンタの値をリセットする送信制御部と
を備えることを特徴とするデータ通信システム。
【請求項４】
請求項３に記載のデータ通信システムであって、
前記データ受信部は、
受信フレーム中の最新データを累積加算する加算器と、
前記受信データ中のスキップカウンタの値を該受信データ中の前回のデータに乗算する乗算器と、
上記乗算値を前記加算器による累積加算値に加えるデータ補償手段と、
前記受信フレーム中のスキャンカウンタの現在値と前回の受信フレーム中のスキャンカウンタの前回値とを比較して受信抜けの有無を判定する判定部と、
この判定部の判定結果に従い、受信抜けがある場合には前記受信データ中の最新データと前記乗算値とから受信抜けデータを推定し、この推定したデータを前記加算器による累積加算値に加えるデータ補間手段と
を備えることを特徴とするデータ通信システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、センサ等から計測した計測データをネットワークを介して連続的にデータ伝送するに好適なデータ通信システムに関する。
【０００２】
【従来の技術】
例えば、プラントには温度、圧力、流量等を検出する目的で種々のセンサが設けられている。これらセンサは、所定の周期でプラントの状態を検出するものである。そして、このセンサによって検出された検出値は、プラントを監視・制御する監視制御装置に伝送される。
【０００３】
ところで大規模なプラントにあっては、検出すべき部位が多く、多数のセンサが必要とされる。したがってセンサ毎に監視制御装置まで信号線を配線するとなると膨大な配線が必要となる。このため各種センサが検出した計測データは、専らネットワークを介して監視制御装置に伝送するように構成されている（例えば特許文献１参照）。そして、この種の計測データを集約する監視制御装置には、ＦＩＦＯ（先入先出メモリ）が設けられて、ネットワークを介してリアルタイムに該監視制御装置に送り込まれてくる計測データの取り損ねを防ぎ、該データの欠落を防止するようになっている。
【０００４】
【特許文献１】
特開平１０−４２３７８号公報
【０００５】
【発明が解決しようとする課題】
ところで、上述した監視制御装置には、低コスト化の要請から、従来用いられていた専用の監視制御装置に代わってパソコンが多用されるようになってきている。しかしながらパソコンを適用して各種センサから送出される計測データを受信する場合、パソコンの内部処理に伴うオーバヘッドにより、ネットワークを介して送られてくるデータの取り損ねが生じるという問題があった。具体的には、この内部処理は、例えばパソコンのディスク装置に対する書き込み／読み出し、マウスの操作等である。このような内部処理がパソコンで行なわれると、ネットワークを介して短い周期で連続的に監視制御装置（パソコン）に送り込まれてくる各種計測値の受信処理が間にあわず取り損ねるという懸念があった。
【０００６】
このようなパソコン側の受信データの取り損ねを防止するため、ネットワークを介してセンサから送出される計測データの送出周期を長くすることが考えられるが、監視制御装置の計測に係るリアルタイム性が失われるという問題がある。そこで本発明は、上述した課題を解決するためになされたもので、その目的は、ネットワークを介してデータ伝送するデータ通信システムにおいて、データ受信装置の受信取り損ねによるデータの欠落を補正するに最適なデータ通信システムを提供することにある。
【０００７】
【課題を解決するための手段】
前述した目的を達成するため、本発明の請求項１に係るデータ通信システムは、ネットワークを介して接続されたデータ送信部とデータ受信部とからなり、
前記データ送信部は、
一定時間毎にデータを取り込むデータ入力部と、
このデータ入力部から順次取り込んだデータを所定数に亘って順に記憶するメモリと、
データ送信回数を管理するスキャンカウンタと、
前記メモリに記憶された所定数のデータと前記スキャンカウンタの値とからなるフレーム構成のデータをネットワークに送出すると共に、このデータ送信を行う都度前記スキャンカウンタの値を歩進する送信制御部と
を備えることを特徴としている。
【０００８】
またネットワークに接続されて、前述したデータ送信部が送信したデータを受信するデータ受信部は、
受信フレームから最新データを抽出するデータ抽出部と、
前記受信フレームにより示されるスキャンカウンタの現在値と前回の受信フレームにより示されるスキャンカウンタの前回値とを比較して受信抜けの有無を判定する判定部と、
この判定部の判定結果に従い、受信抜けがあるときは前記スキャンカウンタの現在値と前回値との差に従って前記受信フレーム中の最新データと過去のデータとを抽出する受信データ補償手段と
を備えることを特徴としている。
【０００９】
即ち、本発明に係るデータ通信システムは、データ受信部において受信抜けがあるとき、前記スキャンカウンタの現在値と前回値との差に従って、受信抜けを判定すると共に、この差の値によって前記受信フレーム内の過去のデータを抽出して、受信抜けを補償することを特徴としている。
したがって、データ受信部がネットワークから受信すべきデータを取り損ねたとしても、このデータの欠落を補正することが可能なデータ通信システムを提供することができる。
【００１０】
また、本発明の請求項３に係るネットワーク通信システムは、ネットワークを介して接続されたデータ送信部とデータ受信部とからなり、
前記データ送信部は、一定時間毎にデータを取り込むデータ入力部と、
このデータ入力部から順次取り込んだデータを所定数に亘って順に記憶するメモリと、
このメモリに保持された最新のデータと前回のデータとを比較する判定部と、この判定部の判定結果に応じて、最新のデータと前回のデータとが等しいときに歩進されるスキップカウンタと、
データの送信回数を管理するスキャンカウンタと、
前記判定部により最新のデータが前回のデータとは異なることが判定されたとき、前記メモリに記憶された所定数のデータと前記スキップカウンタおよびスキャンカウンタの値とからなるフレーム構成のデータを送信すると共に、前記スキャンカウンタの値を歩進および前記スキップカウンタの値をリセットする送信制御部と
を備えることを特徴としている。
【００１１】
また、このデータ通信システムにおける前記データ受信部は、
受信フレーム中の最新データを累積加算する加算器と、
前記受信データ中のスキップカウンタの値を該受信データ中の前回のデータに乗算する乗算器と、
上記乗算値を前記加算器による累積加算値に加えるデータ補償手段と、
前記受信フレーム中のスキャンカウンタの現在値と前回の受信フレーム中のスキャンカウンタの前回値とを比較して受信抜けの有無を判定する判定部と、
この判定部の判定結果に従い、受信抜けがある場合には前記受信データ中の最新データと前記乗算値とから受信抜けデータを推定し、この推定したデータを前記加算器による累積加算値に加えるデータ補間手段と
を備えることを特徴としている。
【００１２】
したがって、本発明によれば、ネットワークのトラフィックの増加を抑えつつ、データ受信部がネットワークから受信すべきデータを取り損ねたとしても、このデータの欠落を補正することが可能なデータ通信システムを提供することができる。
【００１３】
【発明の実施の形態】
本発明に係るデータ通信システムは、所定の時間毎にデータ送信部が取り込んだデータをネットワークを介してパソコン等のデータ受信部に送り込むものとして構成される。
以下、図面を参照して本発明の第１の実施形態に係るデータ通信システムについて説明する。図１は、第１の実施形態に係るデータ通信システムを適用した積算流量計を示す概念図であって、データ送信部１０に接続した流量計１から、一定時間毎に計測値を取り込み、ネットワーク２を介してデータ受信部（パソコン）２０側に送り込む一方、データ受信部（パソコン）２０側は、この計測値から流量計１の流量データを累積加算して積算流量を求めるものである。
【００１４】
この図において、１は例えば電磁流量計などの流量計であり、流量に比例したパルスを出力するものである。このパルスは、データ送信部１０に与えられて、ネットワーク２に送出されるようになっている。
詳しくは、第１の実施形態に係るデータ通信システムのデータ送信部１０には、一定時間を計時するタイマ１１が設けられて、このタイマ１１の計時周期毎に流量計１等のセンサから出力されるパルス信号を取り込むデータ入力部１２が設けられたものとなっている。またデータ送信部１０は、このデータ入力部１２が取り込んだパルス信号の値を保持する記憶部１３を備えたものとなっている。この記憶部１３は、例えば、図２および図３（ａ）に示すような所定数に亘るデータ格納領域からなっており、データ入力部１２から転送された順にその記憶部１３内に格納されるようになっている。
【００１５】
また、データ送信部１０には、記憶部１３に記憶された所定数に亘るデータおよびスキャンカウンタ１４ａの値とからなるフレーム構成のデータを、送信インタフェース１６を介してネットワーク２に送出する制御部１５が設けられている。このスキャンカウンタ１４ａは、制御部１５がネットワーク２にデータの送出を行なう都度、該スキャンカウンタ１４ａが保持するカウント値をインクリメント［＋１］またはデクリメント［−１］するもので、データ送信部１０がネットワーク２に送出したフレームの送出回数をカウントする役割を担っている。
【００１６】
尚、前述したネットワーク２には、ディジタル入力部３、ディジタル出力部４等の各種入出力装置が接続されることもある。
一方、図１および図４に示すようにデータ受信部（パソコン）２０側には、データ送信部１０がネットワーク２に送出したフレームを取り込む受信インタフェース２１が設けられている。またデータ受信部２０には、この受信インタフェース２１から取り込まれたデータに含まれるスキャンカウンタの値（現在値）と、前回受信したときのスキャンカウンタの値（前回値）とを比較して受信抜けの有無を判定する判定部２２が備えられている。
【００１７】
そして、データ受信部２０が受信したフレームに抜けがある（連続していない）と判定部２２が判定したとき、詳細は後述するがスキャンカウンタの現在値と前回値との差に従って上述したフレーム構成に含まれるデータの現在値と前回値および前々回値とを抽出してフレームの受信抜けを補償する補償部２３をデータ受信部２０に備えたものとなっている。
【００１８】
このような構成の第１の実施形態に係るデータ通信システムにおけるデータ送信部が特徴とするところは、データ送信部１０がネットワーク２にフレームを送出する都度、カウンタの値を更新するスキャンカウンタ１４ａの値と、データ入力部１２から順次取り込んだデータを所定数に亘って記憶部１３に順に記憶して、この記憶部１３に記憶した所定数のデータとからなるフレーム構成のデータをネットワーク２に送出する点にある。すなわち、このフレームには、フレームの通番を示すスキャンカウンタの値および最新の計測データの他に、この最新の計測データより以前の過去の計測データ（履歴データ）が含まれるものとなっている。
【００１９】
一方、本発明の第１の実施形態に係るデータ通信システムにおけるデータ受信部２０が特徴とするところは、データ受信部２０がフレームを受信する都度、前回受信したフレームに含まれるスキャンカウンタの値と今回受信したフレームに含まれるスキャンカウンタ１４ａの値とを比較することによって受信データの取り損ねを検出すると共に、該フレームに含まれるデータの前回値および前々回値を用いて受信データの取り損ねを補償する点にある。
【００２０】
より具体的には、上述したように構成された第１の実施形態においてデータ送信部１０がネットワーク２に送出するフレームは、例えば図３（ａ）に示すように、該データ送信部１０がネットワーク２に送出したフレームの送出回数を示す３ビットのスキャンカウンタの値およびデータ入力部１２が取り込んだデータの現在値（ＤＡＴＡ１）、前回値（ＤＡＴＡ２）および前々回値（ＤＡＴＡ３）とからなる、それぞれ８ビットのデータ領域を含むものとなっている。尚、図３（ａ）に図示する１ビットの（Ｓ）は、データ送出部が送信するフレームの送出周期を示すフラグであって、例えば１０ｍｓ周期でフレームを送出する場合［Ｓ＝０］、１００ｍｓ周期でフレームを送出する場合［Ｓ＝１］のように設定される。また、図３（ａ）に図示する［００００］は４ビットのダミーデータである。
【００２１】
さて、このように構成された第１の実施形態に係るデータ通信システムのデータ送信部１０の動作について、図５に示すデータ送信部の動作手順に従ってより詳細に説明する。
まず、制御部１５は、記憶部１３に保存されているフレームのＤＡＴＡ３（前々回値）の領域にＤＡＴＡ２（前回値）の値を上書きする（ステップＳ１）。次いで制御部１５は、ＤＡＴＡ１（現在値）をＤＡＴＡ２（前回値）の領域に上書きする（ステップＳ２）。そして、データ入力部１２は、データ送信部１０に接続された例えば流量計１等が計測したデータを取り込む（ステップＳ３）。このデータ入力部１２が取り込んだデータは、制御部１５により現在値として記憶部１３のＤＡＴＡ１に書き込まれる（ステップＳ４）。
【００２２】
このようにして記憶部１３に格納されたデータ（ＤＡＴＡ１〜３）は、スキャンカウンタの値と共に、図２（ａ）に示すフレーム構成のデータとして、送信インタフェース１６を介してネットワーク２に送出される（ステップＳ５）。そして、制御部１５は、スキャンカウンタ１４ａの値をインクリメント［＋１］する（ステップＳ６）。次いで、タイマ１１を動作させ、予め定めた時間待機する（ステップＳ７）。このタイマ１１は、データ送信部１０が流量計１等の計測装置から計測値を取り込んで、ネットワーク２にフレームを送出する周期を決める役割を担っている。
【００２３】
以降、データ送信部１０は、上述した手順を繰り返して計測した計測値を一定時間間隔でネットワーク２に送出する。
ここで、上述したように構成したデータ送信部１０が送出するフレーム構成のデータについて図３を用いて詳細に説明する。尚、スキャンカウンタ１４ａの値（ＳＣ）およびデータ（ＤＡＴＡ１〜３）の領域には、初期値として０が入っているものとする。
【００２４】
まず、データ入力部１２が所定の時間間隔で取り込んだデータ（例えばＡ）は、制御部１５により現在値として記憶部１３のＤＡＴＡ１に書き込まれる（図３（ｂ））。そして、所定時間経過後、制御部１５は、記憶部１３のＤＡＴＡ２のデータをＤＡＴＡ３の領域に、ＤＡＴＡ１のデータ（Ａ）をＤＡＴＡ２の領域に上書きすると共に、データ入力部１２が取り込んだデータ（例えばＢ）を現在値としてＤＡＴＡ１に書き込む。このようにして記憶部１３に設定されたデータは、制御部１５の指令により送信インタフェース１６を介してネットワーク２に送出される。すると、スキャンカウンタ１４ａは、ネットワーク２に対するフレームの送出により、スキャンカウンタ１４ａが保持している値をインクリメントするのでＳＣが［１］になる（図３（ｃ））。
【００２５】
更に所定時間経過したとき、データ入力部１２がデータを取り込むと、上述したようにデータの上書きが行なわれて、データ入力部１２が取り込んだデータ（（例えばＣ）が最新データとしてＤＡＴＡ１の領域に保存されると共に、ＳＣが［２］となる（図３（ｄ））。以降、上述した構成のフレームは、データ入力部１２がデータを取り込む毎にデータ格納領域に格納されたデータがシフトされ、更にスキャンカウンタ１４ａの値（ＳＣ）が歩進される。
【００２６】
一方、前述したように構成された第１の実施形態に係るデータ受信部２０の動作について、図６に示すデータ受信部２０の動作フローチャートに基づいて、より詳細に説明する。まずデータ受信部２０は、データ送信部１０からネットワーク２に送出されたフレームの到着を待つ（ステップＳ１０）。そして、受信データ（フレーム）がある場合、データ受信部２０は、受信インタフェース２１から受信したフレーム構造のデータを読込む（ステップＳ１１）。尚、この受信データの読込みは、受信したフレームに含まれるスキャンカウンタの値が、前回受信したときの受信フレームに含まれるスキャンカウンタの値と変わっていることを判定部２２が判定することにより行なうものである。或いは、受信インタフェース２１からの受信割り込みをデータ受信部２０の受信制御部２４に通知する等して行なっても勿論かまわない。
【００２７】
そして、判定部２２は、この読み込んだデータに含まれるスキャンカウンタの値［Ｎ：現在値］を取り込み、前回受信したときのフレームに含まれるスキャンカウンタの値［Ｎ-1：前回値］とからデータ抜け回数を次式により算出する。
フレーム抜け回数＝［Ｎ−Ｎ-1＋１］
この式により算出された値が、フレームの抜け回数を表す（ステップＳ１２）。
【００２８】
このようにして得られたフレーム抜け回数から判定部２２は、受信したフレームの抜けがないと判定した場合（ステップＳ１３）、該フレーム中に格納されている計測データの最新値（ＤＡＴＡ１）を取り出すよう補償部２３に指令する。この指令を受けた補償部２３は、フレーム中に格納されている計測データの最新値（ＤＡＴＡ１）を累積加算器２５に出力する。そして、補償部２３から出力された最新値を受けた累積加算器２５は、この最新データと前回までの積算値とを加えて、積算流量を算出する（ステップＳ１５）。
【００２９】
一方、判定部２２がステップＳ１３で、フレームの抜けが１回と判断した場合、受信したフレームに含まれる計測データの最新値（ＤＡＴＡ１）と受信できなかったフレームに含まれる計測データ、すなわち一つ前の計測データ（前回値：ＤＡＴＡ２）とを補償部２３が取り出すよう指令を出す。そして、累積加算器２５は、この補償部２３から出力された計測データと前回までの累積値とを加算することで積算流量を算出する（ステップＳ１６）。
【００３０】
また、判定部２２がステップＳ１３で、フレームの抜けが２回と判断した場合、受信したフレームに含まれる計測データの最新値（ＤＡＴＡ１）と受信できなかったフレームに含まれる一つ前の計測データ（前回値：ＤＡＴＡ２）および更に一つ前の計測データ（前々回値：ＤＡＴＡ３）とを補償部２３が出力するように指令を出す。そして、累積加算器２５は、この乗算器２３から出力された計測データと前回までの累積値とを加算することで積算流量を算出する（ステップＳ１７）。
【００３１】
一方、上述したステップＳ１３で、フレーム抜けの回数が３回以上の場合、本発明の特徴する点と異なるので詳細は述べないが、フレームに含まれるデータ等を用いて、補償部２３が例えば直線近似等の統計的手法によって抜けたデータを補償すればよい。
尚、上述した第１の実施形態においてフレーム抜けの回数が３回を超えた場合補償部２３は、例えば直線近似等の統計的手法を用いて抜けたデータを補償する必要があるが、フレーム内のデータ領域を増やして、より多くの過去のデータをデータ送信部１０とデータ受信部２０との間で授受することにより、フレーム抜けが３回以上になったとしても適切にフレームの抜けを補償することができる。つまり、必要に応じてデータ送信部１０とデータ受信部２０とが送受するフレーム内のデータ数を設定すればよい。
【００３２】
また、上述した第１の実施形態は、流量計１が計測した流量値をネットワーク２を介して送受して累積加算器２５で累積加算する積算流量計について説明したものである。勿論、この累積加算器２５の代わりに特に図示しないリングバッファやデータを保持するメモリ等の記憶部をデータ受信部２０に設けて、流量計１が計測した流量値のトレンドを取るように構成してもかまわない。
【００３３】
かくして上述したように構成した第１の実施形態に係るデータ通信システムは、データ送信部１０のデータ入力部１２から取り込んだ計測データを所定数に亘って順次、記憶部１３に保持し、この保持データとフレームを送出する毎に歩進されるスキャンカウンタ１４ａの値とからなるフレームをネットワーク２を介してデータ送信部１０とデータ受信部２０との間で授受できるようにしている。
【００３４】
このためデータ受信部２０は、フレームを受信するとき、このフレームに含まれるスキャンカウンタの値と、前回受信したスキャンカウンタの値とを判定部２２で比較することによりフレームの受信抜けの回数を確実に検出することができる。そして、この検出したフレームの受信抜けの回数を用いて受信したフレームに含まれるデータ列から受信フレームの抜けによるデータの欠落を補償することが可能となる。
【００３５】
次に本発明の第２の実施形態に係るデータ通信システムについて説明する。この第２の実施形態が前述した第１の実施形態と異なるのは、流量計１等の計測装置等から取り込んだデータを記憶部１３に所定長に亘って順に記憶する点に加えて、データ送信部１０がネットワーク２に送出するフレームを間引いてネットワーク２のトラフィックの増加を防止するものである。
【００３６】
具体的に、第２の実施形態に係るデータ通信システムにおいて、流量計１により測定した計測値（流量）をデータ送信部１０がネットワーク２を介して送出すると共に、この送出されたデータをデータ受信部（パソコン）２０側で受け取り、このデータに含まれる計測値を累積して積算流量を算出するデータ通信システムについて図８乃至図１０を用いて説明する。
【００３７】
図８は、本発明の第２の実施形態に係るデータ通信システムを適用した積算流量計を示す概念図であって、データ送信部１０に接続した流量計１から、一定時間毎に計測値を取り込み、ネットワーク２を介してデータ受信部（パソコン）２０側に送り込む一方、データ受信部（パソコン）２０側は、この計測値から流量計１の流量データを累積加算して積算流量を求めるものである。
【００３８】
この図において、１は例えば電磁流量計などの流量計であり、流量に比例したパルスを出力するものである。このパルスは、データ送信部１０に与えられて、ネットワーク２に送出されるようになっている。
詳しくは、第２の実施形態に係るデータ通信システムのデータ送信部１０には、一定時間を計時するタイマ１１が設けられて、このタイマ１１の計時周期毎に流量計１等のセンサから出力されるパルス信号を取り込むデータ入力部１２が設けられたものとなっている。またデータ送信部１０は、このデータ入力部１２が取り込んだパルス信号の値を保持する記憶部１３を備えたものとなっている。この記憶部１３は、例えば、図９に示すような所定数に亘るデータ格納領域（ＤＡＴＡ１およびＤＡＴＡ２）からなっており、データ入力部１２から転送された順にその記憶部１３内に格納されるようになっている。
【００３９】
また、データ送信部１０には、記憶部１３に記憶された所定数に亘るデータおよびスキャンカウンタ１４ａの値とからなるフレーム構成のデータを送信インタフェース１６を介して、ネットワーク２に送出する制御部１５が設けられている。このスキャンカウンタ１４ａは、制御部１５がネットワーク２にデータの送出を行なう都度、該スキャンカウンタ１４ａが保持するカウント値をインクリメント［＋１］またはデクリメント［−１］するもので、データ送信部１０がネットワーク２に送出したフレームの送出回数をカウントする役割を担っている。
【００４０】
このデータ送信部１０には、データ入力部１２から取り込んで記憶部１３に格納された入力データ（ＤＡＴＡ１）と、前回取り込んだデータ（ＤＡＴＡ２）とを比較する比較部１７が設けられている。また、データ送信部１０には、この比較部１７がそれぞれのデータを比較してデータが一致する場合にカウンタ値を歩進するスキップカウンタ１４ｂが設けられている。このスキップカウンタ１４ｂは、データ入力部１２から同じデータが何回連続してデータ送信部１０に取り込まれたかを示す値を保持する役割を担う。
【００４１】
尚、前述したネットワーク２には、ディジタル入力部３、ディジタル出力部４等の各種入出力装置が接続されることもある。
ちなみに、第２の実施形態におけるデータのフレーム構造は、例えば図７に示すように、フレームの送出間隔（スキャン時間）を示すフラグ（Ｓ）、スキャンカウンタ１４ａおよびスキップカウンタ１４ｂの各値を保持する領域の（ＳＣ）および（ＳＫ）、データ入力部１２から取り込んだデータの現在値（ＤＡＴＡ１）および前回データを取り込んだときの前回値（ＤＡＴＡ２）とをそれぞれ格納するデータ領域とからなっている。
【００４２】
一方、第２の実施形態に係るデータ受信部２０には、ネットワーク２から受け取ったフレームに含まれる現在値（ＤＡＴＡ１）を累積して加算する累積加算器２５が設けられている。この累積加算器２５は、データ送信部１０から送出されたデータ（流量）を累積加算することで、積算流量を算出する役割を担っている。また、データ受信部２０には、前記フレームに含まれるスキップカウンタの値（ＳＫ）および該フレームに含まれる前回値（ＤＡＴＡ２）とを乗算する乗算器２６が設けられている。そして、この乗算器２６で得られた乗算値は、前記累積加算器２５に加えられて流量の積算値が算出されるようになっている。また、データ受信部２０には、受信したフレームの受信間隔を計時するフレーム受信間隔タイマ２７が設けられている。詳細は後述するが、このフレーム受信間隔タイマ２７は、データ受信部２０が取りこぼした受信フレームのデータを補償する役割を担っている。
【００４３】
つまり、本発明の第２の実施形態が特徴とするところは、データ入力部１２から連続して同じデータが取り込まれたとき、スキップカウンタ１４ｂの値を歩進する一方、取り込んだデータをネットワーク２に送出しない点およびデータ入力部１２が取り込んだ入力データに変化があったとき、前回までのデータと共に新たに取り込んだデータをネットワーク２へ送出するようにしている点にある。つまり、データ送信部１０側でデータの圧縮を行ないネットワーク２のトラフィックの増加を防ぐと共に、データ受信部２０側でデータ送信部１０がデータ入力部１２から取り込んだデータの復元を行なうよう構成している。
【００４４】
このように構成された本発明の第２の実施形態に係るデータ送信部１０の動作について、図１１に示すデータ送信部の動作手順に従って詳細に説明する。
データ送信部１０は、データ取り込みに先立ち、記憶部１３に記憶されているＤＡＴＡ１（現在値）をＤＡＴＡ２（前回値）の領域に上書きする（ステップＳ２０）。そして、データ入力部１２は、制御部１５の指令により該データ入力部１２に接続されている測定器（例えば流量計１）の計測データを取り込む（ステップＳ２１）。そして、制御部１５は、データ入力部１２によって取り込まれた計測値を記憶部１３の現在値（ＤＡＴＡ１）の領域に記憶する（ステップＳ２１）。
【００４５】
次いで比較部１７は、上述したようにして記憶部１３に記憶された現在値と前回値を比較する（ステップＳ２３）。この比較部１７が、ＤＡＴＡ１（現在値）とＤＡＴＡ２（前回値）とが異なると判断したとき、制御部１５は、後述するフレームの送出間隔（スキャン時間）を示すフラグ（Ｓ）、スキャンカウンタ１４ａの値（ＳＣ）とスキップカウンタ１４ｂの値（ＳＫ）および現在値（ＤＡＴＡ１）と前回値（ＤＡＴＡ２）とから構成されるフレームを一括してネットワーク２に送出する。
【００４６】
そうして制御部１５は、ネットワーク２にフレームを送出した後、スキャンカウンタ１４ａの値（ＳＣ）をインクリメント［＋１］し、（ステップＳ２５）スキップカウンタ１４ｂの値をクリアする（ステップＳ２６）。
次いで制御部１５は、タイマ１１を動作させて予め定めた時間待機する（ステップＳ２７）。このタイマ１１は、データ送信部１０が流量計１の計測装置から計測値を取り込んで、ネットワーク２にフレームを送出する周期を決める役割を担っている。以降、上述した手順を繰り返すことによって、データ送信部１０が計測した計測値をネットワーク２に一定時間間隔ＴCでフレームを送出する。
【００４７】
この時間間隔ＴCは、例えば［１０］ｍｓや［１００］ｍｓなどの予め設定された所定の値である。そして、前述したスキャン時間を示すフラグ（Ｓ）に、ＴC＝［１０］ｍｓの場合は［Ｓ＝１］、ＴC＝［１００］ｍｓのときは［Ｓ＝０］などして設定されてネットワーク２に送出される。
一方、比較部１７がステップＳ２３においてＤＡＴＡ１（現在値）とＤＡＴＡ２（前回値）とに保持された値が一致すると判断したとき、制御部１５は、スキップカウンタ１４ｂの値（ＳＫ）をインクリメントする（ステップＳ２８）。そして制御部１５は、このスキップカウンタ１４ｂの値（ＳＫ）が、予め定めた閾値を超えていないかどうかを判断する。このスキップカウンタ１４ｂの値（ＳＫ）が、上記閾値未満であるとき制御部１５は、タイマ１１を動作させ、予め定めた時間待機する（ステップＳ２７）。
【００４８】
一方、制御部１５は、ステップＳ２９でスキップカウンタ１４ｂの値（ＳＫ）が上記閾値以上であるとき、ステップＳ２４に移行してフレームを送信する。そして制御部１５は、スキャンカウンタ１４ａの値（ＳＣ）をインクリメント（ステップＳ２５）して、スキップカウンタ１４ｂの値（ＳＫ）をクリアする（ステップＳ２６）。そうして制御部１５は、タイマ１１を動作させ、予め定めた時間待機する（ステップＳ２７）。
【００４９】
以降、上述した手順を繰り返すことによって、データ送信部１０が計測した計測値は、一定時間間隔でネットワーク２に送出される。
一方、本発明の第２の実施形態に係るデータ通信システムにおいて、前述したように構成されたデータ受信部２０の動作について、図１２に示すデータ受信部２０の動作フローチャートに基づいて詳細に説明する。
【００５０】
データ受信部２０は、先ずフレーム受信間隔タイマ２７の値をクリアして、計時を開始する（ステップＳ３０）。次いでデータ受信部２０は、データ送信部１０からネットワーク２に送出されたフレームの到着を待つ（ステップＳ３１）。受信データがある場合、受信制御部２４は、受信インタフェース２１を介して、ネットワーク２から伝送されたフレームを読み込む（ステップＳ３２）。尚、この受信データの読込みは、受信したフレームに含まれるスキャンカウンタの値が、前回受信したときの受信フレームに含まれるスキャンカウンタの値と変化していることにより行なうものである。或いは、受信インタフェース２１からの受信割り込みをデータ受信部２０の受信制御部２４に通知する等して行なっても勿論かまわない。
【００５１】
そして判定部２２は、この読み込んだデータに含まれるスキャンカウンタの値［Ｎ：現在値］を取り込み、前回受信したときのフレームに含まれるスキャンカウンタの値［Ｎ-1：前回値］とからデータ抜け回数を次式により算出する（ステップＳ３３）。
フレーム抜け回数＝［Ｎ−Ｎ-1＋１］
そして、この演算式により得られたフレーム抜け回数が０（フレーム抜けなし）の場合（ステップＳ３４）、累積加算器２５は、この読み込んだフレームに含まれる現在値（ＤＡＴＡ１）、前回値（ＤＡＴＡ２）およびスキップカウンタの値（ＳＫ）から、積算値を次式により算出する（ステップＳ３５）。
【００５２】
積算値＝前回までの積算値＋現在値（ＤＡＴＡ１）
＋前回値（ＤＡＴＡ２）・スキップカウンタの値（ＳＫ）
この計算式により求められた積算値は、データ送信部１０が一定周期で取り込んだ流量計１の流量を積算したものであって、流量計１の積算流量値になるものである。以降、データ受信部２０は、この動作を繰り返すことにより積算流量を求めることができる。
【００５３】
一方、判定部２２は、ステップＳ３４でフレーム抜けがあると判定した場合、データ受信部２０は、受信したフレームの送出間隔（スキャン時間）を示すフラグ（Ｓ）に対応付けられたフレーム送出間隔ＴCと、フレーム受信間隔タイマ２７の値を取得して受信抜けしたフレームに含まれるデータの補正を行なう。ステップＳ３６でフレーム受信間隔タイマ２７の値ＴFが、（３／２）ＴC以上（５／２）ＴC未満の場合、データ受信部２０は、前回受信したフレームの現在値（ＤＡＴＡ１）を補償値に設定する（ステップＳ３７）。一方、ステップＳ３６でフレーム受信間隔ＴFの値が（５／２）ＴC以上の場合、データ受信部２０は補償値を次式により算出する（ステップＳ３８）。
【００５４】
補償値＝前回値（ＤＡＴＡ２）
＋前回受信したフレームの現在値（ＤＡＴＡ１）・補償時間ＴH
この補償時間ＴHは、フレーム受信間隔ＴFをフレーム送出間隔ＴCで丸め処理を行なったもので、例えば、ＴC＝［１００ｍｓ］で、ＴFが［５０ｍｓ］〜［１４９ｍｓ］の場合、ＴH＝［１００ｍｓ］、或いはＴFが［１５０ｍｓ］〜［２４９ｍｓ］の場合、ＴH＝［２００ｍｓ］のようにＴｃの整数倍になるように処理（四捨五入）を行うものである。
【００５５】
このようにして、補償されたデータ（補償値）を用いて、累積加算器２５は、流量の積算値を次式により算出する（ステップＳ３９）。
積算値＝前回までの積算値＋現在値（ＤＡＴＡ１）＋補償値
かくして上述したように構成した本発明の第２の実施形態に係るデータ通信システムは、データ送信部１０が取り込んだデータが変化した時点で、このデータ送信部１０がネットワーク２を介してデータ受信部２０に伝送するようになっている。この為、例えばプロセス制御等の長時間計測量が変化しないような監視制御装置に適用するとネットワーク２のトラフィックを増大させることがない。
【００５６】
一方、データ受信部２０は、スキャンカウンタの値を用いてフレームの抜けを検出すると共に、上述したスキップカウンタの値とデータ受信部２０が取り込んだデータを乗算することにより、データ送信部１０が取り込んだデータの積算値を算出することが可能となる。したがって、計測点数の多いデータ通信システムに適用するとネットワーク２のトラフィックを増大させることがなく効果的である。このため、データ受信部２０にパソコンなどのリアルタイム処理能力の低い汎用機器を適用することが可能となる。
【００５７】
尚、上述したように第２の実施形態に係るデータ送信部１０は、ステップＳ２９でスキップカウンタ１４ｂの値が予め定めた閾値を超えたかどうかを判定している。このようにすることで、データ送信部１０は、該データ送信部１０に取り込まれたデータが変化しなかったとしても、所定の時間間隔でデータをネットワーク２に送出することができる。このため、データ送信部１０の動作の健全性確認と、データ受信部２０側における累積値の算出（更新）を定期的に行なうことが可能となり好ましい。
【００５８】
【発明の効果】
以上述べたように、本発明のデータ通信システムによれば、データ受信部がネットワークを介してデータ送信部から伝送されるフレームを取り損ねたとしても、該フレーム内のスキップカウンタおよび過去のデータを用いて、データの取り損ねを補償することができる。
【００５９】
また、データ送信部が取り込んだデータが変化しなかったとき、その変化しなかった回数をスキップカウンタで計数してネットワークに送出されるフレーム数が少なくなるようにしている。この為、ネットワークのトラフィックの増加を防ぐと共に、データ受信側は、受信したフレームに含まれる累積値とデータとからデータの積算値を容易に算出することができる等の実用上多大なる効果が奏せられる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係るデータ通信システムの概略構成を示す図。
【図２】本発明の第１の実施形態に係るデータ通信システムのデータ送信部の構成を示す図。
【図３】本発明の第１の実施形態に係るデータ通信システムのフレーム構成を示す図。
【図４】本発明の第１の実施形態に係るデータ通信システムのデータ受信部の構成を示す図。
【図５】本発明の第１の実施形態に係るデータ通信システムのデータ送信部の動作を示すフローチャート。
【図６】本発明の第１の実施形態に係るデータ通信システムのデータ受信部の動作を示すフローチャート。
【図７】本発明の第２の実施形態に係るデータ通信システムのフレーム構成を示す図。
【図８】本発明の第２の実施形態に係るデータ通信システムの概略構成を示す図。
【図９】本発明の第２の実施形態に係るデータ通信システムのデータ送信部の構成を示す図。
【図１０】本発明の第２の実施形態に係るデータ通信システムのデータ受信部の構成を示す図。
【図１１】本発明の第２の実施形態に係るデータ通信システムのデータ送信部の動作を示すフローチャート。
【図１２】本発明の第２の実施形態に係るデータ通信システムのデータ受信部の動作を示すフローチャート。
【符号の説明】
２      ネットワーク
１０      データ送信部
１２      データ入力部
１３      記憶部
１４      カウンタ部
１５      制御部
２０      データ受信部
２２      判定部
２３      補償部
【図１】
2004200787.tif 000003
【図２】
2004200787.tif 000004
【図３】
2004200787.tif 000005
【図４】
2004200787.tif 000006
【図５】
2004200787.tif 000007
【図６】
2004200787.tif 000008
【図７】
2004200787.tif 000009
【図８】
2004200787.tif 000010
【図９】
2004200787.tif 000011
【図１０】
2004200787.tif 000012
【図１１】
2004200787.tif 000013
【図１２】
2004200787.tif 000014