(57)【要約】【課題】複数のタイマを用いることなく、計測量を示すパルス信号を精度よく生成するパルス出力装置、電磁流量計、及びパルス出力方法を提供する。【解決手段】瞬時計測データに設定周期を乗じた値を用いて計測量の積算値を求めるパルス出力装置。パルス出力装置は、計測量の積算値をパルス重みで除算して、現在までの出力パルス数を示す積算カウント値を求める。そして、パルス出力装置は、今回の積算カウント値と前回の積算カウント値との差分値分のパルスを含むパルス信号を生成して出力する。【選択図】図１
2019045343.tif 000002
【特許請求の範囲】
【請求項１】
設定周期ごとに、単位時間あたりの計測量を示す瞬時計測データを取得し、取得した前記瞬時計測データに前記設定周期を乗じた値を用いて、前記計測量の積算値を求める積算値演算部と、
前記積算値演算部が求めた前記積算値をパルス重みで除算して、現在までの出力パルス数を示す積算カウント値を求めるカウント演算部と、
前記カウント演算部において、今回の演算タイミングで求められた前記積算カウント値と、前回の演算タイミングで求められた前記積算カウント値との差分値を求め、求めた差分値分のパルスを含むパルス信号を生成して出力するパルス出力処理部と、を有する、パルス出力装置。
【請求項２】
前記積算値演算部は、
前記瞬時計測データに前記設定周期を乗じた値に、前回の演算タイミングで求めた前記積算値を加えることにより、今回の演算タイミングでの前記積算値を求めるものである、請求項１に記載のパルス出力装置。
【請求項３】
前記カウント演算部が求めた前記積算カウント値がリセット閾値よりも大きい場合に、前記積算値及び前記積算カウント値をリセットするカウント判定処理部をさらに有する、請求項１又は２に記載のパルス出力装置。
【請求項４】
前記積算値と、前記カウント演算部が今回の演算タイミングで求めた前記積算カウント値と、前記カウント演算部が前回の演算タイミングで求めた前記積算カウント値と、を記憶する記憶装置をさらに有する請求項１〜３の何れか一項に記載のパルス出力装置。
【請求項５】
前記設定周期以上の時間に設定された測定周期ごとに、検出器による検出データに基づいて前記瞬時計測データを求める計測量処理部をさらに有する、請求項１〜４の何れか一項に記載のパルス出力装置。
【請求項６】
前記積算値演算部が求める前記積算値の情報を表示する表示装置をさらに有する、請求項１〜５の何れか一項に記載のパルス出力装置。
【請求項７】
測定管内を流れる流体の流量に応じた起電力を検出する検出器と、
前記検出器において検出された前記起電力に基づいて、単位時間あたりの計測量を示す瞬時計測データを求める制御装置と、
請求項１〜４の何れか一項に記載のパルス出力装置と、を備えた、電磁流量計。
【請求項８】
前記積算値演算部が求める前記積算値の情報を表示する表示装置をさらに有する、請求項７に記載の電磁流量計。
【請求項９】
設定周期ごとに、単位時間あたりの計測量を示す瞬時計測データを取得するデータ取得ステップと、
前記データ取得ステップで取得した前記瞬時計測データに前記設定周期を乗じた値を用いて、前記計測量の積算値を求める積算値演算ステップと、
前記積算値演算ステップで求めた前記積算値をパルス重みで除算して、現在までの出力パルス数を示す積算カウント値を求めるカウント演算ステップと、
前記カウント演算ステップにおいて、今回の演算タイミングで求めた前記積算カウント値と、前回の演算タイミングで求めた前記積算カウント値との差分値を演算し、演算した差分値分のパルス信号を生成して出力するパルス出力処理ステップと、を有する、パルス出力方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計測データに基づくパルス信号を生成して出力するパルス出力装置、電磁流量計、及びパルス出力方法に関する。
【背景技術】
【０００２】
流量計などの計測機器は、検出器による検出データをもとに、流量などの計測量を求めるようになっている。従来の計測機器には、流体の流路中に設けられた羽根車を有する羽根車式流量計がある（例えば、特許文献１参照）。羽根車式流量計は、測定管内を流れる流体の流速が速くなれば羽根車の回転数が大きくなり、測定管内を流れる流体の流速が遅くなれば羽根車の回転数が小さくなるという原理をもとに、流体の流量を求めるものである。特許文献１の羽根車式流量計は、羽根車の羽根部の側面で反射された光に基づくパルスを検出して、流体の流速及び流量を求めるようになっている。
【０００３】
また、近年は、羽根車を用いずに計測量を求める計測機器が存在し、例えば、流体が磁界中を流れる際に発生する起電力を検出して、流体の流量を求める電磁流量計が知られている。こうした計測機器は、検出器による検出データに基づくパルス信号を生成して出力するパルス出力装置を備えている。
【０００４】
パルス出力装置は、電磁流量計に適用される場合、羽根車式流量計の原理の応用により、測定管内を流れる流体の流速が速くなればパルス信号の周波数が高くなり、測定管内を流れる流体の流速が遅くなればパルス信号の周波数が低くなるように構成される。そして、パルス出力装置が生成するパルス信号は、１パルスあたりの計測量が予め決められている。したがって、外部機器は、パルスの個数をもとに、計測量の積算値を求めることができる。
【０００５】
ところで、計測機器には、計測量を示す情報として、４−２０ｍＡの電流信号を外部機器へ出力する機能を備えたものもある。電流信号であれば、レンジを設定することにより、大きな流量から小さな流量まで分解能を落とさずに処理することができる。一方、パルス出力装置が出力するパルス信号は、パルスの数が計測量の積算値に対応するため、レンジの調整により分解能を上げることができない。そのため、パルス出力装置には、０．００００１［Ｈｚ］〜３０００［Ｈｚ］といった広いレンジの周波数を発生させる機能が求められる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平１０−２６７７０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来のパルス出力装置は、ＣＰＵなどのクロック周波数から０．００００１［Ｈｚ］〜３０００［Ｈｚ］といった広いレンジの周波数を作るために、複数のタイマを組み合わせて用いている。そして、こうしたタイマは、タイムアウトするまでは新しい周期に切り替わらないため、例えば低い周波数から高い周波数へ移行するときに応答が遅れる。さらに、複数のタイマを使う場合、各タイマのタイムアウトはそれぞれ独立している。そのため、タイムアウトのばらつきに起因して、パルス周期の切り替わり時に発生する誤差及び遅れを回避することができず、マイコン等で累積した積算値と一致しないこともある。
【０００８】
本発明は、上記の課題を解決するためになされたものであり、複数のタイマを用いることなく、計測量を示すパルス信号を精度よく生成するパルス出力装置、電磁流量計、及びパルス出力方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明に係るパルス出力装置は、設定周期ごとに、単位時間あたりの計測量を示す瞬時計測データを取得し、取得した瞬時計測データに設定周期を乗じた値を用いて、計測量の積算値を求める積算値演算部と、積算値演算部が求めた積算値をパルス重みで除算して、現在までの出力パルス数を示す積算カウント値を求めるカウント演算部と、カウント演算部において、今回の演算タイミングで求められた積算カウント値と、前回の演算タイミングで求められた積算カウント値との差分値を求め、求めた差分値分のパルスを含むパルス信号を生成して出力するパルス出力処理部と、を有する。
【００１０】
本発明に係る電磁流量計は、測定管内を流れる流体の流量に応じた起電力を検出する検出器と、検出器において検出された起電力に基づいて、単位時間あたりの計測量を示す瞬時計測データを求める制御装置と、上記のパルス出力装置と、を備えたものである。
【００１１】
本発明に係るパルス出力方法は、設定周期ごとに、単位時間あたりの計測量を示す瞬時計測データを取得するデータ取得ステップと、データ取得ステップで取得した瞬時計測データに設定周期を乗じた値を用いて、計測量の積算値を求める積算値演算ステップと、積算値演算ステップで求めた積算値をパルス重みで除算して、現在までの出力パルス数を示す積算カウント値を求めるカウント演算ステップと、カウント演算ステップにおいて、今回の演算タイミングで求めた積算カウント値と、前回の演算タイミングで求めた積算カウント値との差分値を演算し、演算した差分値分のパルス信号を生成して出力するパルス出力処理ステップと、を有している。
【発明の効果】
【００１２】
本発明によれば、設定周期ごとの瞬時計測データをもとに演算する積算値に基づき、直近２回の積算カウント値の差分を求め、求めた差分の数のパルスを含むパルス信号を生成して出力する。よって、ＣＰＵなどのクロック周波数から広いレンジの周波数に分周する処理が不要となり、複数のタイマを用いることなく、計測量を示すパルス信号を精度よく生成することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態に係る計測機器の構成を概略的に示すブロック図である。
【図２】初期状態における図１の記憶装置内の積算値及び積算カウント値を例示する表である。
【図３】第１回目の演算処理中において、図１の記憶装置内の積算値及び現在の積算カウント値が更新された状態を例示する表である。
【図４】第１回目の演算処理中において、図１の記憶装置内の前回の積算カウント値が更新された状態を例示する表である。
【図５】第２回目の演算処理中において、図１の記憶装置内の積算値及び現在の積算カウント値が更新された状態を例示する表である。
【図６】第２回目の演算処理中において、図１の記憶装置内の前回の積算カウント値が更新された状態を例示する表である。
【図７】図１の計測機器の動作を示すフローチャートである。
【発明を実施するための形態】
【００１４】
実施の形態．
図１は、本発明の実施の形態に係る計測機器の構成を概略的に示すブロック図である。計測機器１００は、電磁流量計、積算熱量計、及び差圧流量計などの計測機器である。本実施の形態では、計測機器１００として、導電性を有する流体の流量を測定する電磁流量計を例示している。図１に示すように、計測機器１００は、検出器１０と、変換器２０と、を有している。検出器１０は、測定管１１と、励磁コイル１２と、電極１３ａと、電極１３ｂと、を有している。
【００１５】
測定管１１は、パイプ状に形成され、流体を通過させるものである。計測機器１００は、導電性を有する流体が測定管１１内を流れるように配設される。励磁コイル１２は、測定管１１内に磁界を発生させ、測定管１１内を流れる流体に磁界を印加するものである。励磁コイル１２は、磁界の発生方向が、測定管１１内を流れる流体の流れ方向に対して垂直となるように配置されている。
【００１６】
電極１３ａ及び電極１３ｂは、電極１３ａと電極１３ｂとを結ぶ直線が、測定管１１内を流れる流体の流れ方向、及び励磁コイル１２が発生させる磁界の方向に対して直交するように測定管１１内に配置され、一対の電極を構成している。電極１３ａ及び電極１３ｂは、励磁コイル１２が発生させる磁界中を流体が流れることで発生する起電力を検出し、検出した起電力を示す起電力信号を変換器２０へ出力するものである。
【００１７】
変換器２０は、増幅処理回路３０と、ＡＤ変換器３５と、制御装置４０と、パルス出力装置５０と、記憶装置６０と、表示装置７０と、励磁回路８０と、を有している。増幅処理回路３０は、電極１３ａ及び電極１３ｂから出力される起電力信号を増幅させるものである。増幅処理回路３０は、例えば、交流増幅回路と、サンプルホールド回路と、直流増幅回路と、を含んで構成することができる。交流増幅回路は、電極１３ａからの起電力信号と電極１３ｂからの起電力信号との差を増幅するものである。サンプルホールド回路は、励磁電流Ｉｅｘが正極性及び負極性のそれぞれのときの起電力信号の電圧を保持するものである。直流増幅回路は、励磁電流Ｉｅｘが正極性のときの起電力信号の電圧と、励磁電流Ｉｅｘが負極性のときの起電力信号の電圧との差を増幅するものである。ＡＤ変換器３５は、増幅処理回路３０において増幅されたアナログの起電力信号をデジタルの起電力信号に変換し、変換した起電力信号を制御装置４０に出力するものである。
【００１８】
制御装置４０は、計測量処理部４１と、表示処理部４２と、励磁制御部４３と、を有している。励磁制御部４３は、励磁回路８０に対して励磁電流Ｉｅｘの生成を指示するものである。表示処理部４２は、各種の情報を表示装置７０に表示させるものである。本実施の形態では、パルス出力装置５０が、後述する積算値演算部５２により演算した積算値Ｓを表示処理部４２へ出力するようになっている。したがって、表示処理部４２は、パルス出力装置５０から出力される積算値Ｓの情報を表示装置７０に表示させることができる。
【００１９】
計測量処理部４１は、検出器１０による検出データ、すなわち検出器１０が検出した起電力に基づいて、単位時間あたりの計測量を示す瞬時計測データＰＶを求めるものである。測定周期は、例えば２００［ｍｓ］に設定され、適宜変更することができる。
【００２０】
本実施の形態における計測量処理部４１は、測定周期ごとに、ＡＤ変換器３５から出力される起電力信号の値であるＡＤ値を用いて、測定管１１内を流れる流体の流速を求めるものである。
【００２１】
より具体的に、計測量処理部４１は、流速を下記の式（１）により求めるようになっている。最大流速、最大流速ＡＤ値、及びゼロ点ＡＤ値は、電磁流量計の回路の特性のバラツキなどに応じて決まる値であり、キャリブレーション等で予め記憶装置６０などに記憶されている。ゼロ点とは、流体の流量が０の状態においても流れるオフセット電流などのバイアスを差し引いて調整された点である。すなわち、ゼロ点ＡＤ値は、ゼロ点におけるＡＤ値である。
【００２２】
［数１］
流速［ｍ／ｓ］＝最大流速［ｍ／ｓ］×（ＡＤ値−ゼロ点ＡＤ値）／（最大流速ＡＤ値−ゼロ点ＡＤ値）  ・・・  （１）
【００２３】
また、計測量処理部４１は、式（１）により求めた流速を用いて、１［ｓ］あたりの流量である瞬時流量を、下記の式（２）により求めるものである。式（２）の断面積は、測定管１１の断面積のことであり、下記の式（３）のように、測定管１１の口径を用いて求めることができる。
【００２４】
［数２］
瞬時流量［ｍ３／ｓ］＝流速［ｍ／ｓ］×断面積［ｍ２／ｓ］  ・・・  （２）
【００２５】
［数３］
断面積［ｍ２／ｓ］＝π×口径［ｍ］×口径［ｍ］／４  ・・・  （３）
【００２６】
測定管１１の断面積の情報は、予め記憶装置６０などに記憶されていてもよいし、計測量処理部４１が、式（３）により、都度計算するようにしてもよい。いずれにせよ、計測量処理部４１は、求めた流速に測定管１１の断面積を乗算して、瞬時流量を求めるものである。そして、計測量処理部４１は、求めた瞬時流量を、瞬時計測データＰＶとして、パルス出力装置５０へ出力するものである。
【００２７】
ここで、計測量処理部４１は、測定管１１内を流れる流体の１［ｓ］あたりの熱量である瞬時熱量を演算する機能を有していてもよい。すなわち、計測機器１００は、ビル空調などの熱交換器で消費した熱量を計測する機能を有していてもよい。
【００２８】
この場合、例えば、検出器１０は、流体の流れにおける熱交換器の下流側に設けられる。流体の流れにおける熱交換器の上流側には、熱交換器に流入する流体の温度である往温度を計測する往温度センサを含む往側感温部が設けられる。流体の流れにおける熱交換器の下流側には、熱交換器から流出する流体の温度である還温度を計測する還温度センサを含む還側感温部が設けられる。そして、計測量処理部４１は、往温度センサから往温度を取得すると共に、還温度センサから還温度を取得し、下記の式（４）により瞬時熱量を求める。
【００２９】
［数４］
瞬時熱量［ＭＪ／ｓ］＝瞬時流量［ｍ３／ｓ］×往還温度差［℃］×熱量換算係数  ・・・  （４）
【００３０】
往還温度差は、往温度センサにおいて計測された往温度と、還温度センサにおいて計測された還温度との差分のことである。すなわち、計測量処理部４１は、瞬時熱量を求める際に往還温度を求めるように構成される。なお、測定管１１内を流れる流体が水の場合、熱量換算係数は「４．１２３」に設定される。計測量処理部４１は、求めた瞬時熱量を、瞬時計測データＰＶとして、パルス出力装置５０へ出力する。
【００３１】
パルス出力装置５０は、計測量処理部４１から出力される瞬時計測データＰＶをもとに、１パルスあたりの計測量が予め決められたパルス信号を生成して外部機器へ出力するものである。つまり、パルス出力装置５０は、計測量の正確な積算値Ｓをパルスの数により外部機器へ伝えるためのものである。
【００３２】
パルス出力装置５０は、データ取得部５１と、積算値演算部５２と、カウント演算部５３と、パルス出力処理部５４と、カウント判定処理部５５と、カウント更新部５６と、を有している。データ取得部５１は、瞬時流量及び瞬時熱量のうちの少なくとも一つを、計測量処理部４１から瞬時計測データＰＶとして取得するものである。
【００３３】
積算値演算部５２は、設定周期ΔＴごとに、データ取得部５１から瞬時計測データＰＶを取得するものである。そして、積算値演算部５２は、取得した瞬時計測データＰＶを用いて、下記の式（５）に基づく積算処理により、計測量の積算値Ｓを求めるものである。計測量の積算値Ｓとは、積算値演算部５２が積算処理を開始してから現在までの計測量の積算値Ｓのことであり、式（５）の左辺の「Ｓ」に相当する。
【００３４】
［数５］
Ｓ＝Ｓ＋ＰＶ×ΔＴ  ・・・  （５）
【００３５】
積算値演算部５２は、瞬時計測データＰＶが瞬時流量であれば、計測量の積算値Ｓとして積算流量の積算値Ｓを求める。また、積算値演算部５２は、瞬時計測データＰＶが瞬時熱量であれば、計測量の積算値Ｓとして積算熱量の積算値Ｓを求める。以降では、計測量の積算値Ｓを「積算値Ｓ」ともいう。積算値Ｓは、パルス出力装置５０が演算処理を開始するタイミング、つまり初期状態において「０」に設定される。設定周期ΔＴは、測定周期以下の時間に設定される。すなわち、設定周期ΔＴは、測定周期と同じであってもよいし、例えば１［ｍｓ］などの定周期であってもよい。
【００３６】
より具体的に、積算値演算部５２は、瞬時計測データＰＶに設定周期ΔＴを乗算することにより、直近の設定周期ΔＴにおける計測量を求めるものである。以降では、直近の設定周期ΔＴにおける計測量を「直近の計測量」という。そして、積算値演算部５２は、記憶装置６０内の積算値Ｓに、直近の計測量を加算して、現在の積算値Ｓを求めるものである。また、積算値演算部５２は、求めた現在の積算値Ｓを記憶装置６０に記憶させるものである。つまり、積算値演算部５２は、設定周期ΔＴごとに求める積算値Ｓにより、記憶装置６０内の積算値Ｓを更新するものである。積算値演算部５２は、更新した積算値Ｓを、次回の演算タイミングにおいて、式（５）の右辺の「Ｓ」として用いるようになっている。
【００３７】
カウント演算部５３は、設定周期ΔＴごとに、下記の式（６）を用いて、現在の積算カウント値Ｃｎを求めるものである。ｎは１以上の整数であり、カウント演算部５３などが設定周期ΔＴごとに行う演算処理の回数に対応する。Ｗは、１パルスあたりの計測量を示すパルス重みである。
【００３８】
［数６］
Ｃｎ＝Ｓ／Ｗ  ・・・  （６）
【００３９】
ここで、カウント演算部５３は、式（６）による演算結果に端数（小数点以下の数）がある場合、端数を切り捨てるようになっている。つまり、カウント演算部５３が求める現在の積算カウント値Ｃｎは、０又は正の整数となる。したがって、現在の積算カウント値Ｃｎは、カウント演算部５３が演算処理を開始してから現在までに出力したパルスの数を示す。
【００４０】
すなわち、カウント演算部５３は、積算値演算部５２が求めた積算値Ｓを、１パルスあたりの計測量を示すパルス重みＷで除算して、現在までの出力パルス数を示す積算カウント値Ｃｎを求めるものである。そして、カウント演算部５３は、現在の積算カウント値Ｃｎを記憶装置６０に記憶させるものである。つまり、カウント演算部５３は、設定周期ΔＴごとに、記憶装置６０内の現在の積算カウント値Ｃｎを更新するものである。
【００４１】
パルス出力処理部５４は、カウント演算部５３において、今回の演算タイミングで求められた積算カウント値Ｃｎと、前回の演算タイミングで求められた積算カウント値Ｃｎ−１との差分値を求めるものである。そして、パルス出力処理部５４は、求めた差分値分のパルスを含むパルス信号を生成して出力するものである。以降では、カウント演算部５３が今回の演算タイミングで求めた積算カウント値Ｃｎを「現在の積算カウント値Ｃｎ」といい、カウント演算部５３が前回の演算タイミングで求めた積算カウント値Ｃｎ−１を「前回の積算カウント値Ｃｎ−１」という。現在の積算カウント値Ｃｎ及び前回の積算カウント値Ｃｎ−１は、それぞれ、初期状態において「０」に設定される。
【００４２】
より具体的に、パルス出力処理部５４は、現在の積算カウント値Ｃｎと前回の積算カウント値Ｃｎ−１とを比較し、現在の積算カウント値Ｃｎが前回の積算カウント値Ｃｎ−１よりも大きいか否かを判定するものである。パルス出力処理部５４は、現在の積算カウント値Ｃｎが前回の積算カウント値Ｃｎ−１よりも大きい場合、現在の積算カウント値Ｃｎから前回の積算カウント値Ｃｎ−１を減算して差分を求めるものである。そして、パルス出力処理部５４は、求めた差分の数のパルスを含むパルス信号を外部機器へ出力するものである。
【００４３】
ここで、設定周期ΔＴが測定周期に定められている場合、パルス出力処理部５４は、設定周期ΔＴ内にＮ個のパルスを下記のように生成して出力する。すなわち、タイマを使って「ΔＴ／（２×Ｎ）」の時間間隔で割り込みを発生させ、この割り込み処理内で、パルス出力のポートをＯＮ→ＯＦＦ→・・・・→ＯＮ→ＯＦＦと繰り返せば、設定周期ΔＴ内にＮ個のパルスを生成して出力することができる。もっとも、パルス出力処理部５４は、設定周期ΔＴが測定周期よりも短い場合でも、上記同様にパルス信号を生成することができる。
【００４４】
また、ＯＮのパルス幅を固定したい場合は、パルス出力処理部５４の出力側に、ソフトウェア又はハードウェアによるワンショットタイマを設けるとよい。すなわち、パルス出力装置５０は、パルス出力処理部５４が生成したパルス信号を、ワンショットタイマを介して出力するようにしてもよい。そして、ＯＦＦ→ＯＮの立ち上がりでワンショットタイマを起動して、指定したパルス幅のパルスを出力するとよい。ＯＮのパルス幅を固定したい場合としては、外部機器が特定のパルス幅のパルスしか受けられない場合、又は消費電力の削減を図りたい場合などが考えられる。
【００４５】
パルス出力処理部５４は、現在の積算カウント値Ｃｎから前回の積算カウント値Ｃｎ−１を減算した差分値が１より大きいか否かを判定するようにしてもよい。そして、差分値が１より大きければ、差分値分のパルス信号を外部機器へ出力するようにしてもよい。
【００４６】
外部機器は、例えば、パルスカウンタモジュールと、液晶パネルなどの表示部とを備えた機器である。そして、パルス出力処理部５４が出力するパルス信号は、１個のパルスに対して所定の計測量が設定されている。そのため、外部機器は、パルスの個数をもとに計測量の積算値を演算し、演算した計測量の積算値を表示部に表示することができる。もっとも、外部機器は、パルスカウンタ機能を備えたＰＣ（ｐｅｒｓｏｎａｌ  ｃｏｍｐｕｔｅｒ）であってもよい。
【００４７】
ここで、本実施の形態における手法で演算処理を行う場合、積算値Ｓ及び積算カウント値は、比較的大きな値となる。そのため、パルス出力装置５０は、ＩＥＥＥ７４５規格に準拠した倍精度浮動小数点形式のバイナリにより、加算又は除算などの演算処理を行うようになっている。しかし、倍精度浮動小数点形式により演算可能の桁数を増やしても、何ら対処をしなければ、上記式（５）による演算処理において、積算値Ｓの値が倍精度浮動小数点形式の仮数部のビット数である５２ビットを超えることも想定される。そうなると、直近の計測量が１以下の値である場合に、浮動小数点の加算処理における桁落ちが発生し、積算値Ｓが全く増えていかない状態となる。よって、外部機器に正確な積算値の情報を伝達できなくなるおそれがある。
【００４８】
上記のような状況を回避するため、パルス出力装置５０には、カウント判定処理部５５が設けられている。すなわち、カウント判定処理部５５は、カウント演算部５３が求めた現在の積算カウント値Ｃｎとリセット閾値とを比較し、現在の積算カウント値Ｃｎがリセット閾値よりも大きいか否かを判定するものである。リセット閾値は、２５２未満の数に設定され、例えば２３２（４２９４９６７２９５）に設定される。リセット閾値は、２３６（２５２−１６）のような値に設定することもでき、適宜変更することもできる。
【００４９】
カウント判定処理部５５は、現在の積算カウント値Ｃｎがリセット閾値よりも大きい場合、記憶装置６０内の積算値Ｓ及び現在の積算カウント値Ｃｎをリセットするものである。本実施の形態において、カウント判定処理部５５は、積算値Ｓ及び現在の積算カウント値Ｃｎをそれぞれ「０」にリセットするようになっている。
【００５０】
カウント更新部５６は、現在の積算カウント値Ｃｎにより、前回の積算カウント値Ｃｎ−１を更新するものである。つまり、カウント更新部５６は、前回の積算カウント値Ｃｎ−１を現在の積算カウント値Ｃｎに書き替えるものである。これにより、現在の積算カウント値Ｃｎは、現在から設定周期ΔＴが経過した次回の演算において、前回の積算カウント値Ｃｎ−１として用いられる。
【００５１】
ところで、瞬時計測データＰＶは、測定周期の間において変化しないため、設定周期ΔＴを測定周期内で可能な限り長い時間に設定することにより、パルス出力装置５０による演算回数を減らすことができる。ただし、設定周期ΔＴが長いと、積算値Ｓが大きくなるため、設定周期ΔＴ内に出力するパルスの数は増える。このため、パルス出力装置５０は、一度に出力するパルスの数がパルス閾値よりも多い場合に設定周期ΔＴを短くする、といった処理を行ってもよい。この場合、例えば、パルス出力処理部５４が、現在の積算カウント値Ｃｎから前回の積算カウント値Ｃｎ−１を減算した差分値と、予め設定されたパルス閾値とを比較し、当該差分値がパルス閾値以上であるか否かを判定してもよい。そして、パルス出力処理部５４は、差分値がパルス閾値以上である場合に、設定周期ΔＴを短くしてもよい。このとき、パルス出力処理部５４は、経時的な判定処理により、例えば差分値がパルス閾値未満となるまで、設定周期ΔＴを段階的に短くしてもよい。また、パルス出力処理部５４は、差分値がパルス閾値以上であると判定した最初のタイミングで、初期の設定周期ΔＴを、これよりも所定時間だけ短い設定周期ΔＴに変化させてもよい。
【００５２】
記憶装置６０には、制御装置４０及びパルス出力装置５０の動作プログラムが格納されている。記憶装置６０には、積算値Ｓが記憶され、積算値Ｓは、積算値演算部５２によって設定周期ΔＴごとに更新される。記憶装置６０には、現在の積算カウント値Ｃｎと、前回の積算カウント値Ｃｎ−１とが記憶される。現在の積算カウント値Ｃｎは、カウント演算部５３によって設定周期ΔＴごとに更新される。前回の積算カウント値Ｃｎ−１は、カウント更新部５６によって設定周期ΔＴごとに更新される。すなわち、記憶装置６０には、カウント演算部５３において前回の演算タイミングで求められた積算カウント値Ｃｎ−１として、初期状態における「０：Ｃ０」又はカウント更新部５６によって更新された「Ｃｎ−１：ｎは２以上の整数」が記憶されている。
【００５３】
表示装置７０は、液晶ディスプレイ（ＬＣＤ：ｌｉｑｕｉｄ  ｃｒｙｓｔａｌ  ｄｉｓｐｌａｙ）、又は７セグメント式のＬＥＤディスプレイなどからなり、表示処理部４２からの制御信号に従って各種の情報を表示するものである。励磁回路８０は、励磁制御部４３からの指示に応じて、極性が交互に変化する励磁周波数ｆｅｘの励磁電流Ｉｅｘを励磁コイル１２に供給するものである。
【００５４】
図２は、初期状態における図１の記憶装置内の積算値及び積算カウント値を例示する表である。図３は、第１回目の演算処理中において、図１の記憶装置内の積算値及び現在の積算カウント値が更新された状態を例示する表である。図４は、第１回目の演算処理中において、図１の記憶装置内の前回の積算カウント値が更新された状態を例示する表である。図５は、第２回目の演算処理中において、図１の記憶装置内の積算値及び現在の積算カウント値が更新された状態を例示する表である。図６は、第２回目の演算処理中において、図１の記憶装置内の前回の積算カウント値が更新された状態を例示する表である。図２〜図６を参照して、パルス出力装置５０による積算値Ｓ、現在の積算カウント値Ｃｎ、及び前回の積算カウント値Ｃｎ−１を更新処理について説明する。なお、図３〜図６では、第１回目の演算処理で積算値演算部５２が求めた積算値Ｓを「Ｓ１」とし、第２回目の演算処理で積算値演算部５２が求めた積算値Ｓを「Ｓ２」とする。
【００５５】
初期状態において、パルス出力装置５０は、図２に示すように、積算値Ｓ、現在の積算カウント値Ｃｎ、及び前回の積算カウント値Ｃｎ−１を、何れも「０」に設定する。次いで、図３に示すように、第１回目の演算処理において、積算値演算部５２は、求めた第１回目の積算値Ｓ１を積算値Ｓとして記憶させる。また、カウント演算部５３は、求めた第１回目の積算カウント値Ｃ１を、現在の積算カウント値Ｃｎとして記憶させる。そして、カウント判定処理部５５による処理が終わると、図４に示すように、カウント更新部５６は、前回の積算カウント値Ｃｎ−１として、第１回目の積算カウント値Ｃ１を記憶させる。
【００５６】
図５に示すように、第２回目の積算処理において、積算値演算部５２は、求めた第２回目の積算値Ｓ２を積算値Ｓとして記憶させる。また、カウント演算部５３は、求めた第２回目の積算カウント値Ｃ２を、現在の積算カウント値Ｃｎとして記憶させる。そして、カウント判定処理部５５による処理が終わると、図６に示すように、カウント更新部５６は、前回の積算カウント値Ｃｎ−１として、第２回目の積算カウント値Ｃ２を記憶させる。
【００５７】
パルス出力装置５０は、設定周期ΔＴごとに、上記のような処理を繰り返し実行し、記憶装置６０内の積算値Ｓ、現在の積算カウント値Ｃｎ、及び前回の積算カウント値Ｃｎ−１のそれぞれの値を更新する。
【００５８】
制御装置４０及びパルス出力装置５０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などの演算装置と、こうした演算装置と協働して上記の各種機能を実現させる動作プログラムとによって構成することができる。記憶装置６０は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）及びＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリ等のＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、又はＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等により構成することができる。
【００５９】
図７は、図１の計測機器の動作を示すフローチャートである。図７を参照して、パルス出力装置５０によるパルス処理方法を説明する。なお、パルス出力装置５０は、ステップＳ１０２〜Ｓ１０９の一連の処理を、設定周期ΔＴごとに繰り返し実行する。
【００６０】
パルス出力装置５０は、積算値Ｓ、現在の積算カウント値Ｃｎ、及び前回の積算カウント値Ｃｎ−１を初期状態の値に設定にする。パルス出力装置５０は、例えば、積算値演算部５２により積算値Ｓを「０」に設定し、カウント演算部５３により現在の積算カウント値Ｃｎを「０」に設定する。また、パルス出力装置５０は、例えば、カウント更新部５６により前回の積算カウント値Ｃｎ−１を「０」に設定する（ステップＳ１０１：初期設定ステップ）。
【００６１】
データ取得部５１は、計測量処理部４１から瞬時計測データＰＶを取得する（ステップＳ１０２：データ取得ステップ）。積算値演算部５２は、データ取得部５１が取得した瞬時計測データＰＶに設定周期ΔＴを乗じた値である直近の計測量を算出し、算出した直近の計測量を用いて積算値Ｓを求める。すなわち、積算値演算部５２は、第１回目の演算処理では、記憶装置６０内に記憶されている積算値Ｓが「０」であるため、算出した直近の計測量を積算値Ｓとする。一方、積算値演算部５２は、第２回目以降の演算処理では、記憶装置６０内に記憶されている積算値Ｓに、算出した直近の計測量を加算することにより、積算値Ｓを更新する（ステップＳ１０３：積算値演算ステップ）。
【００６２】
次いで、カウント演算部５３は、積算値演算部５２が求めた積算値Ｓをパルス重みＷで除算して、現在の積算カウント値Ｃｎを求める。そして、カウント演算部５３は、求めた現在の積算カウント値Ｃｎを記憶装置６０に記憶させる（ステップＳ１０４：カウント演算ステップ）。
【００６３】
次に、パルス出力処理部５４は、現在の積算カウント値Ｃｎが前回の積算カウント値Ｃｎ−１よりも大きいか否かを判定する（ステップＳ１０５：カウント判定ステップ）。パルス出力処理部５４は、現在の積算カウント値Ｃｎが前回の積算カウント値Ｃｎ−１よりも大きいと判定した場合（ステップＳ１０５／Ｙｅｓ）、（Ｃｎ−Ｃｎ−１）個のパルスを含むパルス信号を出力する。なお、現在の積算カウント値Ｃｎ及びこれをもとに更新される前回の積算カウント値Ｃｎ−１は、０又は正の整数である。そのため、現在の積算カウント値Ｃｎから前回の積算カウント値Ｃｎ−１を減算した差分値は、０又は正の整数となる（ステップＳ１０６：パルス出力処理ステップ）。一方、パルス出力処理部５４が、現在の積算カウント値Ｃｎが前回の積算カウント値Ｃｎ−１以下であると判定した場合（ステップＳ１０５／Ｎｏ）、ステップＳ１０２の処理へ戻る。
【００６４】
続いて、カウント判定処理部５５は、カウント演算部５３が求めた現在の積算カウント値Ｃｎがリセット閾値よりも大きいか否かを判定する（ステップＳ１０７：リセット判定ステップ）。カウント判定処理部５５は、現在の積算カウント値Ｃｎがリセット閾値よりも大きいと判定した場合（ステップＳ１０７／Ｙｅｓ）、積算値Ｓ及び現在の積算カウント値Ｃｎをそれぞれ「０」にリセットする（ステップＳ１０８：リセット処理ステップ）。そして、カウント更新部５６は、「０」にリセットされた現在の積算カウント値Ｃｎにより、前回の積算カウント値Ｃｎ−１を更新する。つまり、カウント更新部５６は、前回の積算カウント値Ｃｎ−１を「０」に設定する（ステップＳ１０９：カウント更新ステップ）。
【００６５】
一方、カウント判定処理部５５において現在の積算カウント値Ｃｎがリセット閾値以下であると判定された場合（ステップＳ１０７／Ｎｏ）、カウント更新部５６は、現在の積算カウント値Ｃｎによって前回の積算カウント値Ｃｎ−１を更新する（ステップＳ１０９：カウント更新ステップ）。
【００６６】
以上のように、パルス出力装置５０は、設定周期ΔＴごとの瞬時計測データＰＶをもとに演算する積算値Ｓに基づき、直近２回の積算カウント値の差分を求め、求めた差分の数のパルスを含むパルス信号を生成して出力する。よって、ＣＰＵなどのクロック周波数から広いレンジの周波数に分周する処理が不要となり、ハードウェアのタイマを複数占有することなく、計測量を示すパルス信号を精度よく生成することができる。
【００６７】
すなわち、パルス出力装置５０は、積算値Ｓをもとに生成した高精度のパルス信号を外部機器へ出力するため、外部機器は正確な積算値を算出することができる。また、パルス出力装置５０は、累積でのパルスの出力数を示す積算カウント値をソフトウェアで把握することができるため、従来のように、パルスをフィードバックしてカウントするハードウェアカウンタ又はソフトウェアが不要となる。
【００６８】
さらに、パルス出力装置５０は、現在の積算カウント値Ｃｎがリセット閾値よりも大きい場合に、積算値Ｓ及び現在の積算カウント値Ｃｎをリセットするカウント判定処理部５５を有している。よって、浮動小数点の加算処理における桁落ちの発生を防ぐことができるため、より正確な積算値Ｓに基づくパルス信号を生成し、外部機器に伝達することができる。
【００６９】
加えて、パルス出力装置５０は、積算値演算部５２が求める積算値Ｓの情報を表示する表示装置７０を有している。すなわち、表示処理部４２は、積算値演算部５２が求めた積算値Ｓの情報を表示装置７０に表示させる機能を有している。そのため、パルス出力装置５０が出力するパルス信号をもとに外部装置が計算した積算値と、表示装置７０に表示された積算値Ｓの情報とを比較し、一致するか否かを確認することができるため、パルス信号の信頼性を高めることができる。
【００７０】
また、パルス出力装置５０は、パルス出力処理部５４が生成したパルス信号を、ワンショットタイマを介して出力するようにしてもよい。このようにすれば、外部機器が処理できるパルス信号のパルス幅が決まっていても、外部機器が処理可能なパルス幅のパルス信号を生成することができる。また、パルス信号は、ＯＮのときに電流が流れるため、パルス幅をワンショットタイマにより短くすることで、消費電力の削減を図ることができる。
【００７１】
上述した実施の形態は、パルス出力装置、電磁流量計、及びパルス出力方法における好適な具体例であり、本発明の技術的範囲は、これらの態様に限定されるものではない。例えば、上述した実施の形態では、計測機器１００が電磁流量計である場合を例示したが、これに限らず、計測機器１００は、積算熱量計、差圧流量計、渦流量計、又はコリオリ質量流量計などであってもよい。例えば、計測機器１００が積算熱量計である場合、計測量処理部４１は、瞬時計測データＰＶとして、瞬時熱量をパルス出力装置５０へ出力することになる。
【００７２】
また、計測量処理部４１は、制御装置４０ではなく、パルス出力装置５０に設けられてもよい。さらに、表示処理部４２は、制御装置４０ではなく、パルス出力装置５０に設けられてもよい。この場合、表示装置７０は、パルス出力装置５０に設けられてもよい。加えて、図１では、制御装置４０とパルス出力装置５０とが記憶装置６０を共有する場合を例示したが、これに限らず、制御装置４０とパルス出力装置５０とは、それぞれ個別に記憶装置を有してもよい。
【００７３】
上述した実施の形態では、制御装置４０が、内部のソフトウェアタイマにより測定周期をカウントする場合を例示したが、これに限らず、パルス出力装置５０は、測定周期のクロックを制御装置４０に出力するハードウェアのタイマを有してもよい。同様に、上述した実施の形態では、パルス出力装置５０が、内部のソフトウェアタイマにより設定周期ΔＴをカウントする場合を例示したが、これに限定されない。パルス出力装置５０は、設定周期ΔＴのクロックを出力するハードウェアのタイマを有してもよい。
【符号の説明】
【００７４】
１０  検出器、１１  測定管、１２  励磁コイル、１３ａ、１３ｂ  電極、２０  変換器、３０  増幅処理回路、３５  ＡＤ変換器、４０  制御装置、４１  計測量処理部、４２  表示処理部、４３  励磁制御部、５０  パルス出力装置、５１  データ取得部、５２  積算値演算部、５３  カウント演算部、５４  パルス出力処理部、５５  カウント判定処理部、５６  カウント更新部、６０  記憶装置、７０  表示装置、８０  励磁回路、１００  計測機器、Ｃｎ  現在の積算カウント値、Ｃｎ−１  前回の積算カウント値、Ｉｅｘ  励磁電流、ＰＶ  瞬時計測データ、Ｓ  積算値、Ｗ  パルス重み、ｆｅｘ  励磁周波数、ΔＴ  設定周期。
【図１】
2019045343.tif 000003
【図２】
2019045343.tif 000004
【図３】
2019045343.tif 000005
【図４】
2019045343.tif 000006
【図５】
2019045343.tif 000007
【図６】
2019045343.tif 000008
【図７】
2019045343.tif 000009