説明

演算システムでの処理方法、流量変換器、及びコリオリ流量計

【課題】短バッチの計測でも影響のでない処理方法として、演算システムでの処理方法を提供する。また、流量変換器及びコリオリ流量計も提供する。
【解決手段】検出手段により検出された検出量に基づき演算処理を行うとともに、この演算処理での演算結果をパルス出力として送出するパルス出力処理を行う演算システムでの処理方法であり、パルス出力処理におけるパルス出力の送出を、演算処理の終了のタイミングに非同期となるよう制御して、この制御の繰り返しにより時系列的に連続したパルス列として送出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、演算システムでの処理方法に関し、詳しくは、演算システムにおいてパルス出力を時系列的に連続したパルス列として送出する処理を行うための処理方法に関する。
また、本発明は、演算システムでの処理方法を採用する流量変換器や、この流量変換器を備えるコリオリ流量計に関する。
【背景技術】
【0002】
コリオリ流量計の変換器におけるパルス信号の出力処理に関する技術としては、例えば、本願出願人による下記特許文献1に開示された技術が知られている。
【0003】
下記特許文献1おいて、コリオリ流量計は、流量計本体と変換器とを備えて構成されている。変換器には、流量計本体からの検出値が入力されるようになっている。検出値が変換器に入力されると、変換器の内部では、マイクロプロセッサが演算等を行いパルス信号が出力されるようになっている。コリオリ流量計からの(変換器からの)パルス信号を受信する下流側装置では、パルスの単位時間当たりのパルス数をカウントして瞬時質量流量値が得られるように構成されている。また、下流装置では、パルス数を積算することにより質量流量の総量が得られるように構成されている。
【0004】
変換器から出力されるパルス信号に関して、パルス出力休止状態が存在してしまうことが下記特許文献1に開示されている。また、下記特許文献1には、パルス出力休止状態の時間間隔を狭めようとしてパルス周期を広げると、逆に一定周期中で、算出されたパルスの全てを出力することができないパルス未出力状態が存在してしまうことも開示されている。一方、下流装置においては、単位時間当たりのパルス数をカウントして瞬時流量値を出力する際に、変換器からのパルス信号にパルス出力休止状態が存在してしまうと、単位時間の取り方によってカウント値が流量を正確に表示しない恐れがあるということが開示されている。
【0005】
下記特許文献1の発明は、変換器において算出されたパルス数の全てを出力した後に、次の一定周期までのパルス休止時間を可能な限り小さくする技術を提案することを目的としている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2002−133572号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
ところで、パルス信号の出力に関しては、本願出願人による特許文献1に開示された技術と異なる別の方式の技術も本願出願人は考えついている。以下、本願出願人による別の方式の技術についてを説明する。また、発生する問題点についても説明する。
【0008】
図15(a)において、コリオリ流量計におけるパルス信号の出力に関する演算システムの構成の一例を挙げると、上位側演算手段(CPU)1及び下位側演算手段(CPU)2の二つのCPUを備えて変換器3の流量演算システムが構成されている。上位側演算手段1では、流量計本体4からの検出値の入力によって流量演算が行われるようになっている。また、上位側演算手段1では、流量演算結果を流量データとして下位側演算手段2へ出力するようになっている。下位側演算手段2では、流量データをパルス信号に変換すべく演算が行われ、この演算の後にすぐ変換したパルス信号を下流装置5へ出力するようになっている。尚、二つのCPUを用いるのは、上位側演算手段1の演算処理負担を軽減して全体の処理速度を向上させるためである。
【0009】
図15(b)において、上位側演算手段1及び下位側演算手段2の各周期は、例えば100msで同じに設定されている。具体的には、上位側演算手段1が一定周期の100msであるとすると、この一定周期100msに対し下位側演算手段2では、上位側演算手段1の終了をトリガにして、2ms休止し、残りの98msにてパルス信号を出力するように設定されている(上位側演算手段1において(1)で示す一定周期100msの終了をトリガにして、下位側演算手段2では(2)で示す2msの休止を行い、(3)で示す残りの98msにてパルス信号を出力する。これを繰り返すことになり、(4)で示す一定周期100msの終了をトリガにして、(5)で示す2msの休止を行い、(6)で示す残りの98msにてパルス信号を出力する…)。上位側演算手段1及び下位側演算手段2の各周期は、100msで同期した状態になっている。
【0010】
2msの休止とは、流量データを一定時間当たりのパルス数(パルス周波数)に変換する演算処理を行うために必要となる、パルス出力を行わない時間帯であるとともに、上位側演算手段1の終了をトリガにする他の負荷に係る演算処理を行う時間帯でもあり、特に他の負荷に係る演算処理を行う時間帯として大部分が占められている。このことから、2msの休止が設定されないと、他の負荷に係る演算処理やパルス信号の出力が行われないことになる。
【0011】
2msの休止が設定されることにより、パルス信号が間欠的に出力されることになる。2msの休止が設定されることにより、変換器3から出力されるパルス信号にパルス出力休止状態が存在することになる。問題点としては、バッチの計測において特に短い時間となる短バッチの計測では、2msの休止時間などのパルス出力休止状態が無視できなくなる可能性が高いことである。
【0012】
本発明は、短バッチの計測でも影響のでない処理方法として、演算システムでの処理方法を提供することを課題とする。
また、流量変換器及びコリオリ流量計を提供することについても課題とする。
【課題を解決するための手段】
【0013】
上記課題を解決するためになされた請求項1記載の本発明の演算システムでの処理方法は、検出手段により検出された検出量に基づき演算処理を行うとともに、該演算処理での演算結果をパルス出力として送出するパルス出力処理を行う演算システムでの処理方法において、前記パルス出力処理における前記パルス出力の送出を、前記演算処理の終了のタイミングに非同期となるよう制御して、この制御の繰り返しにより時系列的に連続したパルス列として送出することを特徴としている。
【0014】
請求項2記載の本発明の演算システムでの処理方法は、請求項1に記載の演算システムでの処理方法において、前記演算処理の演算周期と、該演算周期に対応する前記パルス出力処理のパルス出力送出時間とを比較し、この比較結果に基づいて次回のパルス出力送出時間を設定することを特徴としている。
【0015】
請求項3記載の本発明の演算システムでの処理方法は、請求項2に記載の演算システムでの処理方法において、比較することにより、前記パルス出力送出時間がこれに対応する前記演算周期よりも多であれば、前記次回のパルス出力送出時間を前記演算周期に対して−θ%で規定される時間で設定するものとし、前記パルス出力送出時間がこれに対応する前記演算周期よりも少であれば、前記次回のパルス出力送出時間を前記演算周期に対して+θ%で規定される時間で設定するものとすることを特徴としている。
【0016】
請求項4記載の本発明の演算システムでの処理方法は、請求項1に記載の演算システムでの処理方法において、前記演算処理の演算周期に合わせて上位側タイマ割り込みを発生させるとともに、前記演算周期とは別に該演算周期の1/nとなる下位側タイマ割り込み(n:2以上の整数)も発生させ、前記上位側タイマ割り込みの発生から数えた前記下位側タイマ割り込みの発生回数に基づいて、前記パルス出力処理における次回のパルス出力送出時間を設定することを特徴としている。
【0017】
請求項5記載の本発明の演算システムでの処理方法は、請求項4に記載の演算システムでの処理方法において、前記下位側タイマ割り込みの発生回数が予め設定された整数に対して多であれば、前記次回のパルス出力送出時間を前記演算周期に対して−θ%で規定される時間で設定するものとし、前記下位側タイマ割り込みの発生回数が予め設定された整数に対して少であれば、前記次回のパルス出力送出時間を前記演算周期に対して+θ%で規定される時間で設定するものとすることを特徴としている。
【0018】
請求項6記載の本発明の演算システムでの処理方法は、請求項1ないし請求項5いずれか記載の演算システムでの処理方法において、二つの処理装置を用いることにより、前記演算処理と前記パルス出力処理とを分けて行うことを特徴としている。
【0019】
請求項7記載の本発明の流量変換器は、請求項1ないし請求項6いずれか記載の演算システムでの処理方法を、流量演算システム用の処理方法として採用してなることを特徴としている。
【0020】
請求項8記載の本発明のコリオリ流量計は、請求項7に記載の流量変換器を備えてなることを特徴としている。
【0021】
このような特徴を有する本発明によれば、パルス出力処理を経て出力されるパルス信号が時系列的に連続したパルス列として送出される。パルス信号の出力が間欠する周期を含まずに連続的に送出されれば、周期計測や短バッチによる計測が可能になる。本発明によれば、下流装置においてパルス信号の出力のカウント数に誤差が無く、正確な出力を得ることが可能になる。
【発明の効果】
【0022】
本発明によれば、演算システムでの処理方法に関して、従来よりも格段により良い方法を提供することができるという効果を奏する。
また、本発明によれば、このより良い方法を採用することによりなる流量変換器及びコリオリ流量計も提供することができるという効果を奏する。
【図面の簡単な説明】
【0023】
【図1】本発明の変換器における出力処理方法の一実施の形態を示す構成図である。
【図2】流量演算システムの制御を示す制御説明図である。
【図3】本発明の演算システムでの処理方法の一実施の形態(第二実施形態)を示す構成図である。
【図4】上位側CPUの構成を示す図である。
【図5】下位側CPUの構成を示す図である。
【図6】流量演算システムの制御を示す制御説明図である。
【図7】流量演算システムの制御を示す制御説明図である。
【図8】他の例となる流量演算システムの制御説明図である。
【図9】他の例となる流量演算システムにおける上位側CPUの制御に係るフローチャートである。
【図10】他の例となる流量演算システムにおける下位側CPUの制御に係るフローチャートである。
【図11】他の例となる流量演算システムにおける下位側CPUの制御に係るフローチャートである。
【図12】パルス出力処理(初回)に係るフローチャートである。
【図13】パルス出力処理(A≧Na)に係るフローチャートである。
【図14】パルス出力処理(A<Na)に係るフローチャートである。
【図15】(a)は従来例の流量演算システムの構成図、(b)は制御説明図である。
【発明を実施するための形態】
【0024】
本発明は、パルス出力処理を経て出力されるパルス信号が時系列的に連続したパルス列として送出され、パルス信号の出力が間欠する周期を含まずに連続的に送出することで周期計測や短バッチによる計測が可能とし、下流装置においてパルス信号の出力のカウント数に誤差が無く、正確な出力を得ることを実現できるようにした。
【実施例1】
【0025】
以下、図面を参照しながら説明する。ここでの説明は、演算システムを備える装置としてコリオリ流量計を一例に挙げるものとする(コリオリ流量計に限るものではないものとする)。
【0026】
図1は本発明の演算システムでの処理方法の一実施の形態(第一実施形態)を示す構成図である。また、図2は流量演算システムの制御を示す制御説明図である。
【0027】
図1において、コリオリ流量計11は、公知の流量計本体12と、本発明に関連する変換器13とを備えて構成されている。コリオリ流量計11は、変換器13を介して下流装置14に接続されており、この下流装置14へパルス信号を出力・送出するように構成されている。尚、下流装置14を例えば表示装置とする場合には、この表示装置としての下流装置14を変換器13に一体化してコリオリ流量計11の構成に含ませても良いものとする。
【0028】
変換器13は、流量演算システム15を備えて構成されている(一般的な機能を有する他の構成については図示及び説明を省略するものとする)。流量演算システム15は、マイクロコンピュータの機能を有しており、特に限定するものではないが、インターフェース16、17と、CPU18とを備えて構成されている。インターフェース16には、流量計本体12が接続されている。また、インターフェース17には、下流装置14が接続されている。
【0029】
CPU18には、流量計本体(検出手段)12からの検出値(検出量)がインタフェース16を介して入力されるようになっている。CPU18は、演算、制御、判断をつかさどる部分として備えられている。CPU18は、流量演算処理(演算処理)タスク19からパルス出力処理タスク20へと処理が移行するようになっている。具体的に説明すると、CPU18は、入力された検出値に基づいて流量演算処理タスク19を行うとともに、この流量演算処理タスク19での演算結果をパルス出力処理タスク20によりパルス出力として、インターフェース17を介して下流装置14へ送出するようになっている。
【0030】
CPU18は、この制御に関して、パルス出力処理タスク20におけるパルス出力の送出が流量演算処理タスク19の終了のタイミングに対して非同期となるようになっている。そして、このような制御が繰り返しなされることによって、時系列的に連続したパルス列が下流装置14へ向けて送出されるようになっている。
【0031】
本発明によれば、パルス出力処理タスク20におけるパルス出力の送出を流量演算処理タスク19の終了のタイミングに対して非同期とすることにより、特に図示しないが、流量演算処理タスク19の終了をトリガにする他の負荷に係る演算処理を行う時間帯と、パルス出力処理タスク20によるパルス出力の送出を行う時間帯とを積極的に分ける点が特徴になっている。
【0032】
以下、流量演算処理タスク19からパルス出力処理タスク20へと処理が移行することについて、また、時系列的に連続したパルス列が送出されることについて、図2を参照しながら説明する(必要に応じて図1も参照する)。
【0033】
図2において、複数の下向きの矢印は、各々、タイマ割り込みの発生を示している。このタイマ割り込みの発生を示す矢印は、流量演算処理タスク19において流量演算が完了したことを示している。言い換えれば、流量演算完了の都度、タイマ割り込みが発生していることを示している。タイマ割り込みは、流量演算完了割り込みとなっている。
【0034】
タイマ割り込みの発生周期は、流量演算処理タスク19での流量演算周期に相当している。流量演算周期は、図中においてTxで示されている。流量演算周期Txは、Tx=T(1±ε)の関係となる式で定義されている。この式において、Tは基準周期、εは周期の変動を示している。ここで基準周期Tは例えば100ms、周期の変動εは、例えばε≒0.5%で設定されているものとする(一例であるものとする。εは小さい方が好ましいものとする)。
【0035】
タイマ割り込みは、流量演算システム15に電源が投入(ON)されてシステムの初期化が完了した後に生成されるようになっている。図中のタイマ割り込みの矢印に記されている「(1)」は、初期化の後に初めて発生するタイマ割り込み、すなわち一回目のタイマ割り込みを示している。また、「(2)」が記されるタイマ割り込みは、流量演算周期Tx経過後となる二回目のタイマ割り込みを示している。同様に、「(3)」は三回目のタイマ割り込み、…「(7)」は七回目のタイマ割り込み、…を示している。
【0036】
この他、図中のTx(1)はシステムの初期化後初めてとなる一回目の流量演算周期を示している。また、Tx(2)は二回目の流量演算周期、Tx(3)は三回目の流量演算周期、…を示している。尚、一回目の流量演算周期Tx(1)にて流量演算がなされて得られた演算結果(Qm)は、システムの初期化直後の結果であって、ここでは便宜上、不安定な演算結果が含まれているものと仮定する(実際、不安定とは限らない。飽くまで便宜上であるものとする)。演算結果は、二回目の流量演算周期Tx(2)に入るまでに必ず安定するものとする。流量演算周期Tx及びタイマ割り込みは、コリオリ流量計11の電源を遮断(OFF)するまで続くものとする。
【0037】
流量演算システム15は、このシステムに電源が投入(ON)されてシステムの初期化が完了すると、流量計本体12からの検出値の入力に基づいて流量演算が流量演算処理タスク19にて行われる。先ず、一回目の流量演算周期Tx(1)の間において流量演算が行われ、この演算完了と同時に一回目のタイマ割り込み(1)が発生する。この時、流量演算処理タスク19での演算結果が直ぐにパルス出力処理タスク20によりパルス出力として下流装置14へ送出されず、一回目のタイマ割り込み(1)からαms経過後にパルス出力として送出される。αms経過後に出力されるパルス信号は、一回目のパルス出力であり、パルス出力送出時間t1にて送出される(パルス出力送出時間については後述する)。
【0038】
この説明で分かるように、パルス信号は、タイマ割り込みに対して非同期で出力・送出される。言い換えれば、パルス出力は、流量演算の終了のタイミングに対して非同期となる制御により送出される。
【0039】
一回目のタイマ割り込み(1)が発生すると、これと同時に二回目の流量演算周期Tx(2)に入る。流量演算処理タスク19では、流量演算が行われる。この二回目の流量演算周期Tx(2)での流量演算が完了すると、二回目のタイマ割り込み(2)が発生する。この時、さきほどパルス出力送出時間t1にて送出されたパルス出力は、一回目のタイマ割り込み(1)の発生に対してαmsのズレがあることから、未だ終了しておらず、二回目の流量演算周期Tx(2)での流量演算の演算結果は、一旦CPU18の記憶部(図示省略)にストアされる。この演算結果のストアに関しては、二回目のタイマ割り込み(2)が発生した後、パルス出力処理タスク20において行われる。
【0040】
パルス出力送出時間t1にて送出された一回目のパルス出力が終了すると、これと同時にさきほど一旦ストアされた二回目の流量演算周期Tx(2)での演算結果が、パルス出力処理タスク20においてパルス信号に変換され、二回目のパルス出力として送出される。二回目のパルス出力は、パルス出力送出時間t2にて送出される。二回目のパルス出力は、パルス出力の送出待ちの状態であったことから、一回目のパルス出力の送出が終了すると直ぐに送出される。二回目のパルス出力は、一回目のパルス出力に対して間欠する周期を含まずに連続的に送出される。
【0041】
以降、この処理が繰り返される。すなわち、二回目のタイマ割り込み(2)が発生すると、これと同時に三回目の流量演算周期Tx(3)に入る。流量演算処理タスク19では、新たに流量演算が行われる。この三回目の流量演算周期Tx(3)での流量演算が完了すると、三回目のタイマ割り込み(3)が発生する。この時、さきほどパルス出力送出時間t2にて送出されたパルス出力は終了してないことから、三回目の流量演算周期Tx(3)での流量演算の演算結果は、パルス出力処理タスク20において一旦ストアされる。
【0042】
パルス出力送出時間t2にて送出された二回目のパルス出力が終了すると、これと同時に一旦ストアされた三回目の流量演算周期Tx(3)での演算結果がパルス出力処理タスク20においてパルス信号に変換され、三回目のパルス出力としてパルス出力送出時間t3にて送出される。三回目のパルス出力は、二回目のパルス出力に対して間欠する周期を含まずに連続的に送出される。
【0043】
三回目のタイマ割り込み(3)が発生すると、これと同時に四回目の流量演算周期Tx(4)に入る。流量演算処理タスク19では、新たに流量演算が行われる。この四回目の流量演算周期Tx(4)での流量演算が完了すると、四回目のタイマ割り込み(4)が発生する。この時、さきほどパルス出力送出時間t3にて送出されたパルス出力は終了してないことから、四回目の流量演算周期Tx(4)での流量演算の演算結果は、パルス出力処理タスク20において一旦ストアされる。
【0044】
パルス出力送出時間t3にて送出された三回目のパルス出力が終了すると、これと同時に一旦ストアされた四回目の流量演算周期Tx(4)での演算結果がパルス出力処理タスク20においてパルス信号に変換され、四回目のパルス出力としてパルス出力送出時間t4にて送出される。四回目のパルス出力は、三回目のパルス出力に対して間欠する周期を含まずに連続的に送出される。尚、パルス出力は、コリオリ流量計11の電源を遮断(OFF)するまで続くものとする。
【0045】
ここで、パルス出力送出時間Tnについて説明する(n:1、2、3、…)。パルス出力送出時間Tnは、Tn=Tx(1±θ)の関係となる式で定義されている。この式において、パルス出力送出時間Tnは、流量演算周期Txの周期変動分を考慮するようにθ(シータ)が含まれている。θは例えばθ≒1%で設定されるものとする(一例であるものとする。θは任意の割合で設定されるものとする)。
【0046】
一回目のパルス出力に係るパルス出力送出時間t1を、例えばt1=Tx(1−θ)に設定して、次のパルス出力送出時間t2を得る過程としては、一回目のパルス出力が終了した時点で瞬時に、一回目のパルス出力に係るパルス出力送出時間t1と二回目の流量演算周期Tx(2)とが比較され、次のパルス出力送出時間t2に最適な送出時間が選択される。この比較・選択に関しては、CPU18にて行われる(パルス出力処理タスク20での処理の一つとして行われる)。
【0047】
具体的に説明すると、パルス出力送出時間t1が二回目の流量演算周期Tx(2)以上の時間となる場合(t1≧Tx(2))には、次のパルス出力送出時間t2が、t2=Tx(1−θ)となる送出時間で選択される。これに対して、パルス出力送出時間t1が二回目の流量演算周期Tx(2)未満の時間となる場合(t1<Tx(2))には、次のパルス出力送出時間t2が、t2=Tx(1+θ)となる送出時間で選択される。
【0048】
同様に次のパルス出力送出時間t3を得る過程としては、二回目のパルス出力が終了した時点で瞬時に、二回目のパルス出力に係るパルス出力送出時間t2と三回目の流量演算周期Tx(3)とが比較され、次のパルス出力送出時間t3に最適な送出時間が選択される。すなわち、パルス出力送出時間t2が三回目の流量演算周期Tx(3)以上の時間となる場合(t2≧Tx(3))には、次のパルス出力送出時間t3が、t3=Tx(1−θ)となる送出時間で選択される。これに対して、パルス出力送出時間t2が三回目の流量演算周期Tx(3)未満の時間となる場合(t2<Tx(3))には、次のパルス出力送出時間t3が、t3=Tx(1+θ)となる送出時間で選択される。
【0049】
パルス出力送出時間Tnに関してこれを一般式で表現すると、パルス出力送出時間tnが対応する流量演算周期Tx以上の時間となる場合(tn≧Tx)には、次のパルス出力送出時間tn+1が、tn+1=Tx(1−θ)となる送出時間で選択される。これに対して、パルス出力送出時間tnが対応する流量演算周期Tx未満の時間となる場合(tn<Tx)には、次のパルス出力送出時間tn+1が、tn+1=Tx(1+θ)となる送出時間で選択される。
【0050】
補足説明として、パルス信号が上述の如く出力・送出された時、一つの流量演算周期Txに対して指定されたパルス出力送出時間tnには、±θ%のズレが発生する。しかしながら流量演算周期Txにも、ε=±0.5%程度を考慮して最大{(θ+ε)/θ}の周期の変動が発生する。θをεに近い値で採用すれば、二周期程度の変動で済むことになり、結果、短い時間となる短バッチの計測でもバラツキを低く抑えることができるようになる。
【0051】
以上の説明のように、間欠する周期を含まずにパルス出力が連続的に送出される。すなわち、時系列的に連続したパルス列として送出される。これにより、パルス出力から周期計測や短バッチによる計測が可能になる。パルス出力のカウント数に誤差は無く、正確な出力が得られるようになる。
【実施例2】
【0052】
図3は本発明の演算システムでの処理方法の一実施の形態(第二実施形態)を示す構成図である。また、図4は上位側CPUの構成を示す図、図5は下位側CPUの構成を示す図、図6及び図7は流量演算システムの制御を示す制御説明図である。
【0053】
図3において、コリオリ流量計31は、公知の流量計本体12と、本発明に関連する変換器32とを備えて構成されている。コリオリ流量計31は、変換器32を介して下流装置14に接続されており、この下流装置14へパルス信号を出力・送出するように構成されている。尚、上述の第一実施形態と同様に、下流装置14を例えば表示装置とする場合には、この表示装置としての下流装置14を変換器32に一体化してコリオリ流量計31の構成に含ませても良いものとする。
【0054】
変換器32は、流量演算システム33を備えて構成されている(一般的な機能を有する他の構成については図示及び説明を省略するものとする)。流量演算システム33は、インターフェース16、17と、上位側CPU34及び下位側CPU35(二つの処理装置)とを備えて構成されている。インターフェース16には、流量計本体12が接続されている。また、インターフェース17には、下流装置14が接続されている。
【0055】
図3ないし図5において、上位側CPU34及び下位側CPU35は、演算、制御、判断をつかさどる部分として備えられている。上位側CPU34には、流量計本体(検出手段)12からの検出値(検出量)がインタフェース16を介して入力されるようになっている。上位側CPU34は、流量演算処理(演算処理)36を行う上流側演算手段として備えられている。上位側CPU34は、流量演算処理36の演算結果を流量データ(演算検出値データ)として下位側CPU35へ出力することができるように構成されている。
【0056】
下位側CPU35は、上位側CPU34からの流量データをパルス信号に変換してこれを出力・送出するパルス出力処理37を行う下流側演算手段として備えられている。パルス信号の出力・送出は、インターフェース17を介して行われるようになっている。
【0057】
上位側CPU34は、流量演算処理36を行うために、上位側演算部38と、上位側制御部39と、上位側タイマ割り込み部40と、上位側入力部41と、上位側出力部42とを備えて構成されている。上位側入力部41は、インターフェース16に接続されている。また、上位側出力部42は、下位側CPU35に接続されている。上位側入力部41には、上位側制御部39が接続されている。この上位側制御部39には、上位側演算部38と、上位側タイマ割り込み部40と、上位側出力部42とがそれぞれ接続されている。
【0058】
上位側タイマ割り込み部40は、流量演算処理36による流量演算完了の都度、タイマ割り込みが発生するように構成されている。タイマ割り込みは、図6中、下向きの矢印で示されている。タイマ割り込みは、流量演算完了割り込みとなっている。このようなタイマ割り込みの発生周期は、流量演算処理36における流量演算周期に相当するようになっている。流量演算周期は、図中においてTxで示されている。流量演算周期Txは、Tx=T(1±ε)の関係となる式で定義されている。この式において、Tは基準周期、εは周期の変動を示している。ここで基準周期Tは例えば100ms、周期の変動εは、例えばε≒0.5%で設定されるものとする(一例であるものとする。εは小さい方が好ましいものとする)。
【0059】
下位側CPU35は、パルス出力処理37を行うために、下位側演算部43と、下位側制御部44と、下位側タイマ割り込み部45と、記憶部46と、カウンタ47と、下位側入力部48と、下位側出力部49とを備えて構成されている。下位側出力部49は、インターフェース17に接続されている。また、下位側入力部48は、上位側CPU34に接続されている。下位側入力部48には、下位側制御部44が接続されている。この下位側制御部44には、下位側演算部43と、下位側タイマ割り込み部45と、記憶部46と、カウンタ47と、下位側出力部49とがそれぞれ接続されている。
【0060】
下位側タイマ割り込み部45は、上位側CPU34の上位側タイマ割り込み部40によるタイマ割り込みよりも十分に短い周期でタイマ割り込みが発生するように構成されている。下位側タイマ割り込み部45のタイマ割り込みは、上位側タイマ割り込み部40によるタイマ割り込みに対して非同期で発生するように設定されている。下位側タイマ割り込み部45のタイマ割り込み周期、すなわち下位側タイマ割り込み周期をTuとすると、この下位側タイマ割り込み周期Tuは、上位側CPU34の流量演算周期Tx(基準周期Tは100ms)に対して1/8程度となる12.5msにここでは設定されている(一例であるものとする。nを2以上の整数とする1/nで設定することが好ましいものとする)。
【0061】
カウンタ47は、下位側タイマ割り込み周期Tu毎に発生するタイマ割り込みの発生回数を所定のルールでカウントするために備えられている。カウンタ47は、上位側CPU34の上位側タイマ割り込み部40によるタイマ割り込みが発生する都度、ゼロクリア(0リセット)されるように設定されている(これが所定のルール)。カウンタ47は、図6中にも示しているが、ゼロクリアされると最初からカウントしはじめるするように設定されている。
【0062】
カウンタ47のカウント値Nは、ここでの例において次のようになる。すなわち、基準周期Tが100ms、下位側タイマ割り込み周期Tuが12.5msに設定されることから、流量演算周期Txにおける周期の変動εを考慮すると、カウント値Nは、N=7又は8のいずれかになる。尚、一例としてカウント値N=6の時の値(6)を所定の割り込み回数Naとしておく(Na=6)。この所定の割り込み回数Na(Na=6)については後述する。
【0063】
図6中のタイマ割り込みの矢印に記されている「(1)」は、初期化の後に初めて発生する上位側タイマ割り込み、すなわち一回目の上位側タイマ割り込みを示している。また、「(2)」が記されるタイマ割り込みは、流量演算周期Tx経過後となる二回目の上位側タイマ割り込みを示している。同様に、「(3)」は三回目のタイマ割り込み、…を示している。
【0064】
この他、図6中のTx(1)はシステムの初期化後初めてとなる一回目の流量演算周期を示している。また、Tx(2)は二回目の流量演算周期、Tx(3)は三回目の流量演算周期、…を示している。尚、一回目の流量演算周期Tx(1)にて流量演算がなされて得られた演算結果(Qm)は、システムの初期化直後の結果であって、ここでは便宜上、不安定な演算結果が含まれているものと仮定する(実際、不安定とは限らない。飽くまで便宜上であるものとする。演算結果は、二回目の流量演算周期Tx(2)に入るまでに必ず安定するものとする)。流量演算周期Tx及び上位側タイマ割り込みは、コリオリ流量計31の電源を遮断(OFF)するまで続くものとする(下位側タイマ割り込み周期Tuも続くものとする)。
【0065】
流量演算システム33は、このシステムに電源が投入(ON)されてシステムの初期化が完了すると、流量計本体12からの検出値の入力に基づいて流量演算が上位側CPU34の上位側演算部38にて行われる。すなわち、上位側CPU34により流量演算処理36が行われる。
【0066】
先ず、一回目の流量演算周期Tx(1)の間において流量演算が行われ、この演算完了と同時に一回目の上位側タイマ割り込み(1)が発生する。この時、上位側CPU34での流量演算処理36による演算結果が直ぐに下位側CPU35のパルス出力処理37によりパルス出力として下流装置14へ送出されず、カウンタ47のカウント値Nが一回目の上位側タイマ割り込み(1)の発生から数えて所定の割り込み回数Na(Na=6)となった時にパルス出力として送出される。カウンタ47のカウント値N=6の時に出力されるパルス信号は、一回目のパルス出力であり、パルス出力送出時間99msにて送出される(パルス出力送出時間99ms等については後述する)。
【0067】
下位側タイマ割り込み周期Tu(=12.5ms)毎に発生するタイマ割り込みの発生回数をカウントするカウンタ47は、一回目の上位側タイマ割り込み(1)が発生すると、ゼロクリア(0リセット)されて最初からカウントを開始する。そして、所定の割り込み回数Naと同じ数のカウント値N=6の時になると、下位側CPU35の下位側制御部44の制御に基づき一回目のパルス出力がパルス出力送出時間99ms(後述する)にて送出される。
【0068】
この説明で分かるように、パルス信号は、上位側タイマ割り込みに対して非同期で出力・送出される。言い換えれば、パルス出力は、流量演算の終了のタイミングに対して非同期となる制御により送出される。
【0069】
本発明によれば、パルス出力を流量演算の終了(上位側タイマ割り込みの発生)のタイミングに対して非同期とすることにより、特に図示しないが、流量演算の終了をトリガにする他の負荷に係る演算処理を行う時間帯と、パルス出力処理37によるパルス出力の送出を行う時間帯とを積極的に分ける点が特徴になっている。
【0070】
一回目の上位側タイマ割り込み(1)が発生すると、これと同時に二回目の流量演算周期Tx(2)に入る。上位側CPU34の流量演算処理36では、新たに流量演算が行われる。この二回目の流量演算周期Tx(2)での流量演算が完了すると、二回目のタイマ割り込み(2)が発生する。この時、さきほどパルス出力送出時間99msにて送出されたパルス出力は、一回目のタイマ割り込み(1)の発生に対して、所定の割り込み回数Na分の時間的なズレがあることから、未だ終了しておらず、二回目の流量演算周期Tx(2)での流量演算の演算結果は、一旦下位側CPU35の記憶部46にストアされる。二回目のタイマ割り込み(2)が発生すると、カウンタ47はゼロクリア(0リセット)されて最初から再度カウントを開始する。
【0071】
演算結果のストアに関しては、二回目のタイマ割り込み(2)が発生した後、下位側CPU35のパルス出力処理37において行われる。
【0072】
パルス出力送出時間99msにて送出された一回目のパルス出力が終了すると、これと同時にさきほど一旦ストアされた、二回目の流量演算周期Tx(2)での演算結果がパルス出力処理37により二回目のパルス出力として送出される。二回目のパルス出力は、次のようなパルス出力送出時間にて送出される。すなわち、Tx(1±θ%)となるようなパルス出力送出時間にて二回目のパルス出力が送出される。
【0073】
パルス出力送出時間は、一回目のパルス出力が終了した時点でのカウンタ47のカウント値Nが下位側制御部44にて確認されて、これによって最適なパルス出力送出時間Tx(1±θ%)が設定されるものとする。具体的に説明すると(できるだけ簡単な説明にするために、ここでは流量演算周期Tx=基準周期T=100msとする。また、θ=1%とする。一回目のパルス出力は、99msとなるパルス出力送出時間で送出されたことから、カウンタ47のカウント値NはN=6前後の値になる)、カウンタ47のカウント値Nが6以上の場合には、二回目のパルス出力送出時間が99msに設定される。これは、Tx(1−1%)=100ms*(1−0.01)であることによる。これに対し、カウンタ47のカウント値Nが6未満の場合には、二回目のパルス出力送出時間が101msに設定される。これは、Tx(1+1%)=100ms*(1+0.01)であることによる。下位側タイマ割り込みを駆使し、上位側タイマ割り込み周期とのズレを周期毎にチェックする方式となる。
【0074】
二回目のパルス出力は、パルス出力の送出待ちの状態であったことから、一回目のパルス出力の送出が終了すると直ぐに上記のパルス出力送出時間(99ms又は101ms)にて送出される。二回目のパルス出力は、一回目のパルス出力に対して間欠する周期を含まずに連続的に送出される。
【0075】
以降、この処理が繰り返される。すなわち、二回目のタイマ割り込み(2)が発生すると、これと同時に三回目の流量演算周期Tx(3)に入る。また、カウンタ47がゼロクリア(0リセット)されて最初から再度カウントを開始する。上位側CPU34の流量演算処理36では、新たに流量演算が行われる。この三回目の流量演算周期Tx(3)での流量演算が完了すると、三回目のタイマ割り込み(3)が発生する。この時、さきほどパルス出力送出時間99ms又は101msにて送出されたパルス出力は終了してないことから、三回目の流量演算周期Tx(3)での流量演算の演算結果は、下位側CPU35のパルス出力処理37において所定の変換及び算出が行われた後、一旦ストアされる。
【0076】
パルス出力送出時間99ms又は101msにて送出された二回目のパルス出力が終了すると、これと同時に一旦ストアされた三回目の流量演算周期Tx(3)での演算結果が三回目のパルス出力としてパルス出力送出時間99ms又は101msにて送出される。三回目のパルス出力は、二回目のパルス出力に対して間欠する周期を含まずに連続的に送出される。
【0077】
三回目のタイマ割り込み(3)が発生すると、これと同時に四回目の流量演算周期Tx(4)に入る。また、カウンタ47がゼロクリア(0リセット)されて最初から再度カウントを開始する。上位側CPU34の流量演算処理36では、新たに流量演算が行われる。この四回目の流量演算周期Tx(4)での流量演算が完了すると、特に図示しないが、四回目のタイマ割り込み(4)が発生する。この時、さきほどパルス出力送出時間99ms又は101msにて送出されたパルス出力は終了してないことから、四回目の流量演算周期Tx(4)での流量演算の演算結果は、下位側CPU35のパルス出力処理37において所定の変換及び算出が行われた後、一旦ストアされる。
【0078】
パルス出力送出時間99ms又は101msにて送出された三回目のパルス出力が終了すると、これと同時に一旦ストアされた四回目の流量演算周期Tx(4)での演算結果が四回目のパルス出力としてパルス出力送出時間99ms又は101msにて送出される(図示省略)。四回目のパルス出力は、三回目のパルス出力に対して間欠する周期を含まずに連続的に送出される。パルス出力は、コリオリ流量計31の電源を遮断(OFF)するまで続くものとする。
【0079】
ここまでの説明をまとめてみると、以下の如くなる(図7参照)。尚、流量演算周期Tx=T(1±ε)に対し、パルス出力を開始するための移相時間を所定の割り込み回数Naで対応させ、パルス出力送出時間TnをTn=Tx(1±θ)、下位側タイマ割り込み周期をTuとして定義するとともに、パルス出力送出完了時での流量演算周期Tx中の下位側タイマ割り込み周期Tuの発生回数をN(カウンタ47のカウント値)とする。
【0080】
(1)システムに電源が投入(ON)されてシステムの初期化が完了すると、流量演算周期Txが生成される。流量演算周期Tx間では、下位側タイマ割り込み周期Tuがカウントされる(下位側タイマ割り込み周期Tuのカウントは、次の流量演算周期Txが開始されると同時にゼロクリアされる)。
【0081】
(2)パルス出力を開始するための移相時間に相当する所定の割り込み回数Na(整数)がセットされる。また、流量演算周期Txの割り込みを受けてこの流量演算周期Txでの演算結果(Qm)が一旦ストアされタイムディレイされる。この後、一回目のパルス出力送出時間Ta(以下の規定参照)がセットされて一回目のパルス出力の処理が実行される。パルス出力の処理は、パルス出力送出時間Taと、先に得られて一旦ストアされた演算結果から、パルス信号への変換やパルス出力の送出に必要なパルス数、パルス幅等が算出されてパルス信号の出力・送出が行われる。
【0082】
(3)一回目のパルス出力の送出完了時において、カウンタ47のカウント値Nに基づき、二回目となる次のパルス出力送出時間が以下の規定したTa又はTbにて設定される。1≦Na≦(Tx/Tu−1)とすると、
・N≧Naの時は、Ta=Tx(1−θ%)
・N<Naの時は、Tb=Tx(1+θ%)
となる。
【0083】
(4)設定された周期となるパルス出力送出時間Ta又はTbと、先に得られて一旦ストアされた演算結果(Qm)から、パルス信号への変換やパルス出力の送出に必要なパルス数、パルス幅等が算出されてパルス信号の出力・送出が行われる。
【0084】
(5)パルス出力の送出完了時において、カウンタ47のカウント値Nに基づき、次のパルス出力送出時間がTa又はTbにて設定される。以下、同様なことが繰り返される。
【0085】
以上の説明のように、間欠する周期を含まずにパルス出力が連続的に送出される。すなわち、時系列的に連続したパルス列として送出される。これにより、パルス出力から周期計測や短バッチによる計測が可能になる。パルス出力のカウント数に誤差は無く、正確な出力が得られるようになる。
【0086】
続いて、図8ないし図14を参照しながら上述の第二実施形態における流量演算システム33の作用に関する他の例を説明する。尚、流量演算システム自体の構成は基本的に上述の説明と同じであるので、ここでは構成の説明を省略するものとする。必要に応じて上述の第二実施形態における流量演算システム33の説明で用いた図面を参照するものとする。
【0087】
図8は他の例となる流量演算システムの制御説明図である。また、図9は他の例となる流量演算システムにおける上位側CPUの制御に係るフローチャート、図10ないし図14は他の例となる流量演算システムにおける下位側CPUの制御に係るフローチャートである。
【0088】
図8において、この図の左側で図の上から下に向けて、「上位側CPU34のタイマ割り込み周期」、「下位側CPU35のタイマ割り込み周期」、「パルス出力」が順に記されている。また、「パルス出力周期に関して」が図の下側に記されている。図8は、上位側CPU34及び下位側CPU35を使用して、パルス出力を時系列的に連続したパルス列として送出した状態を模式的にしてしている。
【0089】
「上位側CPU34のタイマ割り込み周期」における下向きの矢印は、上位側タイマ割り込みの発生位置を示している。また、「上位側CPU34のタイマ割り込み周期」における横向きで範囲を表す矢印は、流量演算周期Txを示している。流量演算周期Txは、基準周期T±0.5%未満の誤差で設定されている。上位側CPU34は、流量演算処理36を起動する上位側タイマ割り込みを一定周期で発生させるように構成されている。
【0090】
「下位側CPU35のタイマ割り込み周期」における下向きの矢印は、下位側タイマ割り込みの発生位置を示している。また、破線の下向きの矢印は、上位側タイマ割り込みの発生に基づくカウンタ47のカウント値ゼロクリアのタイミングを示している。「下位側CPU35のタイマ割り込み周期」における横向きで範囲を表す矢印は、下位側タイマ割り込み周期Tuを示している。下位側タイマ割り込み周期Tuは、(基準周期T/n)±0.5%未満の誤差で設定されている。下位側CPU35は、パルス出力を演算(パルス数、パルス幅)するとともに、パルス出力の起動を行うように構成されている。
【0091】
「下位側CPU35のタイマ割り込み周期」においては、破線の下向きの矢印の位置でカウンタ47のカウント値がゼロクリアされ、この後、下位側タイマ割り込みの発生がある都度、カウンタ47はカウントされるようになっている。下向きの矢印の先に存在する数字は、カウンタ47のカウント値を示しており、ここでは1、2、…n−1、nまで記されている。カウンタ47はゼロクリアの後にnまでカウントされるようになる。そして、丁度、上位側タイマ割り込みの発生があると、再度ゼロクリアされる。これが繰り返し続くようになっている。
【0092】
上記の基準周期Tは、一定の周期であるものとする。しかしながら、上位側CPU34及び下位側CPU35は、それぞれ基準周期Tを用いて設定をしても誤差が生じてしまうものとする。
【0093】
上位側CPU34及び下位側CPU35は、それぞれのタイマ割り込みが非同期であるものとする。このため、上位側タイマ割り込みの発生位置及び下位側タイマ割り込みの発生位置は異なっているものとする(破線の下向きの矢印と、実線の下向きの矢印とを見れば、発生位置が異なっていることが分かる)。
【0094】
「パルス出力」における左側の上向きの矢印は、この位置で初回のパルス出力が開始されることを示している。また、右側の上向きの矢印は、この矢印一つで、初回のパルス出力が終了する位置、パルス出力が設定される位置、二回目のパルス出力が開始される位置を示している。「パルス出力」における横向きで範囲を表す矢印は、パルス出力周期を示している。左側の上向きの矢印と右側の上向きの矢印との間のパルス出力周期は、初回のパルス出力に係る周期であり、右側の上向きの矢印から右側となるパルス出力周期は、二回目のパルス出力に係る周期を示している。
【0095】
パルス出力の起動位置は、カウンタ47のカウント値がn−1の時を基準としている。初回のパルス出力は、カウンタ47のカウント値がn−1の時に起動され、二回目以降のパルス出力は、パルス出力終了時のカウント値に基づいてパルス出力周期が設定されている。
【0096】
パルス出力周期の設定に関しては、(n−2)≦カウント値≦n、2≦n:nは整数とすると、
・カウント値≧(n−1)の場合:基準周期Tの99%を設定
・カウント値<(n−1)の場合:基準周期Tの101%を設定
となる。
【0097】
もう少し詳しくパルス出力周期の設定に関して説明すると、図8中の「パルス出力周期に関して」における下向きの矢印は、下位側タイマ割り込みの発生位置を示している。下位側タイマ割り込みは、カウンタ47のカウント値がn−2、n−1、nの時を示している。「パルス出力周期に関して」における横向きで範囲を表す破線の矢印は、この範囲内でパルス出力が終了することを意味している。「パルス出力周期に関して」における上向きの矢印(1)、(2)は、それぞれパルス出力終了位置を示している。
【0098】
「パルス出力周期に関して」において、パルス出力終了位置が(1)の場合には、基準周期Tの101%でパルス出力周期が設定されるものとする。また、パルス出力終了位置が(2)の場合には、基準周期Tの99%でパルス出力周期が設定されるものとする。
【0099】
この他、図8においては、基準周期Tの誤差が小さくなればパルス出力周期の設定値が変更できるものとし、
・カウント値≧(n−1)の場合:99%≦パルス出力周期の比率<100%
・カウント値<(n−1)の場合:101%≧パルス出力周期の比率>100%
とする。
【実施例3】
【0100】
図8ないし図14を参照しながら流量演算システムの具体的な制御例について説明する。コリオリ流量計31の電源が投入(ON)されると、流量演算システムが初期化される。すなわち、上位側CPU34では、図9に示すステップS1にて初期化が行われる。また、下位側CPU35では、図10に示すステップS11にて初期化が行われる。先ず、図8及び図9を参照しながら上位側CPU34の制御について説明する。
【0101】
ステップS1にて初期化が行われる。次に、ステップS2にて基準周期Tに基づいて流量演算周期Txが生成され(基準周期T=100ms)、この流量演算周期Txにより流量演算処理36が開始される(ステップS3)。次に、流量演算処理36が完了すると、ステップS4にて上位側タイマ割り込みが発生するとともに、流量データの出力が行われる。上位側タイマ割り込みの発生及び流量データの出力が完了すると、ステップS3からの処理が再度繰り返される。上位側CPU34では、流量演算周期Txのタイミングで上位側タイマ割り込みが発生するとともに、流量データが下位側CPU35へ出力される。
【0102】
図8及び図10において、下位側CPU35ではステップS11にて初期化が行われる。次に、ステップS12にて二つのカウンタA、Bが初期化(ゼロクリア)される。カウンタAは、下位側CPU35での下位側タイマ割り込みの発生回数をカウントするカウンタ(カウンタ47に相当)である。カウンタBは、初回のパルス信号を出力したか否かを判別するためのカウンタである。次に、ステップS13にて下位側タイマ割り込み周期Tuの設定が行われる。下位側タイマ割り込み周期Tuは、基準周期Tの1/nで設定される。次に、ステップS14にて所定の割り込み回数Naが設定(ここではn−1)され、そして、ステップS15にて下位側タイマ割り込みTuが生成される。
【0103】
図8及び図11において、次に、ステップS16にて下位側タイマ割り込みの発生があるか否かが判断される。ステップS16は下位側タイマ割り込みの発生があるまで繰り返される。下位側タイマ割り込みの発生があると(ステップS16でY)、次にステップS17にてカウンタAの数が一つカウントされる(+1)。次に、ステップS18にて上位側CPU34からの流量データの入力有無が判断される。ステップS18にて流量データの入力がある場合には(ステップS18でY)、上位側CPU34において上位側タイマ割り込みの発生があることから、ステップS19にてカウンタAがゼロクリアされる(カウンタAに0が入力される)とともに、ステップS20にて、入力された流量データが一旦ストアされる。そして、ステップS16からの処理が再度繰り返される(ステップS16からの処理が再度繰り返されると、カウンタAの数がカウントアップされる)。
【0104】
ステップS18にて流量データの入力がない場合には(ステップS18でN)、次にステップS21にてカウンタBの数が0(ゼロ)か否かが判断される。カウンタBの数が0(ゼロ)の場合には(ステップS21でY)、次にステップS22にてカウンタAが所定の割り込み回数Naに等しいか否かが判断される。カウンタAの数が所定の割り込み回数Naに等しくない場合には(ステップS22でN)、初回のパルス出力のタイミングでないと判断されてステップS16からの処理が再度繰り返される。
【0105】
これに対してカウンタAの数が所定の数Naに等しい場合には(ステップS22でY)、すなわちステップS16からの処理が繰り返されてカウンタAの数がn−1までカウントアップされた場合には、ステップS23のパルス出力処理(初回)37にて初回のパルス出力が開始される。このパルス出力処理(初回)37は、次のようなステップを経て処理される。
【0106】
すなわち、図12に示す如く、ステップS41にてパルス出力周期が基準周期Tの99%で設定される。次に、ステップS42にて初回のパルス出力のための演算(パルス数、パルス幅)が演算される。そして、ステップS43にて初回のパルス出力が開始され、図11のステップS24の処理へ移行する。初回のパルス出力は図8からも分かるように、上位側CPU34とは別に独立した下位側CPU35のタイミングで出力・送出される。
【0107】
パルス出力処理(初回)37の後、ステップS24にてカウンタBの数が一つカウントされる(+1)。尚、カウンタBの数がカウントされることにより、この後にステップS22〜S24の処理が行われないことになる。これは、初回のパルス出力が開始されたことから、ステップS21にてN側の処理へ移行してしまうためである。カウンタBの数がカウントアップされると、ステップS16からの処理が再度繰り返される。
【0108】
ステップS21にてカウンタBの数が0(ゼロ)でないと判断されると(ステップS21でN)、次にステップS25にてパルス出力が終了したか否かが判断される。ここまでの説明では初回のパルス出力しか送出してないことから、この時点では初回のパルス出力が終了したか否かが判断される。初回のパルス出力が終了してない場合には(ステップS25でN)、ステップS16からの処理が再度繰り返される。
【0109】
ステップS25にてパルス出力が終了したと判断されると(ステップS25でY)、次にステップS26にてカウンタAの数が所定の割り込み回数Na以上か否かが判断される。カウンタAの数が所定の割り込み回数Na以上の場合には(ステップS26でY)、ステップS27にてパルス出力処理(A≧Na)37が行われ、カウンタAの数が所定の割り込み回数Na未満の場合には(ステップS26でN)、ステップS28にてパルス出力処理(A<Na)37が行われる。
【0110】
パルス出力処理(A≧Na)37は、次のようなステップを経て処理される。すなわち、図13に示す如く、ステップS51にて次のパルス出力周期が基準周期Tの99%で設定される。ステップS52にて次のパルス出力のための演算(パルス数、パルス幅)が演算される。そして、ステップS53にて次のパルス出力が開始され、図11のステップS16の処理へ移行する。次のパルス出力は、図8からも分かるように、初回のパルス出力に対して間欠する周期を含まずに連続的に送出される。
【0111】
一方、パルス出力処理(A<Na)37は、次のようなステップを経て処理される。すなわち、図14に示す如く、ステップS61にて次のパルス出力周期が基準周期Tの101%で設定される。ステップS62にて次のパルス出力のための演算(パルス数、パルス幅)が演算される。そして、ステップS63にて次のパルス出力が開始され、図11のステップS16の処理へ移行する。次のパルス出力は、図8からも分かるように、初回のパルス出力に対して間欠する周期を含まずに連続的に送出される。
【0112】
二回目のパルス出力が開始されると、ステップS16からの処理が再度繰り返される。すなわち、ステップS16にて下位側タイマ割り込みの発生があるか否かが判断される。下位側タイマ割り込みの発生があると(ステップS16でY)、次にステップS17にてカウンタAの数が一つカウントされる(+1)。次に、ステップS18にて上位側CPU34からの流量データの入力有無が判断される。ステップS18にて流量データの入力がある場合には(ステップS18でY)、ステップS19にてカウンタAがゼロクリアされるとともに、ステップS20にて、入力された流量データが一旦ストアされる。そして、ステップS16からの処理が再度繰り返される(ステップS16からの処理が再度繰り返されると、カウンタAの数がカウントアップされる)。
【0113】
ステップS18にて流量データの入力がない場合には(ステップS18でN)、次にステップS21にてカウンタBの数が0(ゼロ)か否かが判断される。ここでは既に初回のパルス出力が完了しているため、ステップS21にてカウンタBの数が0(ゼロ)でないと判断される(ステップS21でN)。次にステップS25にてパルス出力が終了したか否かが判断される。パルス出力が終了してない場合には(ステップS25でN)、ステップS16からの処理が再度繰り返される。尚、ここからは図8においての図示を省略するものとする。
【0114】
ステップS25にてパルス出力が終了したと判断されると(ステップS25でY)、次にステップS26にてカウンタAの数が所定の割り込み回数Na以上か否かが判断される。カウンタAの数が所定の割り込み回数Na以上の場合には(ステップS26でY)、ステップS27にてパルス出力処理(A≧Na)37が行われ、カウンタAの数が所定の割り込み回数Na未満の場合には(ステップS26でN)、ステップS28にてパルス出力処理(A<Na)37が行われる。
【0115】
パルス出力処理(A≧Na)又はパルス出力処理(A<Na)にて次のパルス出力が開始されると、このパルス出力は、一つ前のパルス出力に対して間欠する周期を含まずに連続的に送出される。次のパルス出力が開始されると、図11のステップS16の処理へ移行して、再度処理が繰り返される。パルス出力は、コリオリ流量計31の電源を遮断(OFF)するまで間欠する周期を含まずに連続的に送出される。
【0116】
以上の説明のように、間欠する周期を含まずにパルス出力が連続的に送出される。すなわち、時系列的に連続したパルス列として送出される。これにより、パルス出力から周期計測や短バッチによる計測が可能になる。パルス出力のカウント数に誤差は無く、正確な出力が得られるようになる。
【0117】
その他、本発明は本発明の主旨を変えない範囲で種々変更実施可能なことは勿論である。
【符号の説明】
【0118】
11…………………コリオリ流量計
12…………………流量計本体(検出手段)
13…………………変換器(流量変換器)
14…………………下流装置
15…………………流量演算システム
16、17…………インターフェース
18…………………CPU
19…………………流量演算処理(演算処理)タスク
20…………………パルス出力処理タスク
31…………………コリオリ流量計
32…………………変換器(流量変換器)
33…………………流量演算システム
34…………………上位側CPU(処理装置)
35…………………下位側CPU(処理装置)
36…………………流量演算処理(演算処理)
37…………………パルス出力処理
38…………………上位側演算部
39…………………上位側制御部
40…………………上位側タイマ割り込み部
41…………………上位側入力部
42…………………上位側出力部
43…………………下位側演算部
44…………………下位側制御部
45…………………下位側タイマ割り込み部
46…………………記憶部
47…………………カウンタ
48…………………下位側入力部
49…………………下位側出力部

【特許請求の範囲】
【請求項1】
検出手段により検出された検出量に基づき演算処理を行うとともに、該演算処理での演算結果をパルス出力として送出するパルス出力処理を行う演算システムでの処理方法において、
前記パルス出力処理における前記パルス出力の送出を、前記演算処理の終了のタイミングに非同期となるよう制御して、この制御の繰り返しにより時系列的に連続したパルス列として送出する
ことを特徴とする演算システムでの処理方法。
【請求項2】
請求項1に記載の演算システムでの処理方法において、
前記演算処理の演算周期と、該演算周期に対応する前記パルス出力処理のパルス出力送出時間とを比較し、この比較結果に基づいて次回のパルス出力送出時間を設定する
ことを特徴とする演算システムでの処理方法。
【請求項3】
請求項2に記載の演算システムでの処理方法において、
比較することにより、前記パルス出力送出時間がこれに対応する前記演算周期よりも多であれば、前記次回のパルス出力送出時間を前記演算周期に対して−θ%で規定される時間で設定するものとし、前記パルス出力送出時間がこれに対応する前記演算周期よりも少であれば、前記次回のパルス出力送出時間を前記演算周期に対して+θ%で規定される時間で設定するものとする
ことを特徴とする演算システムでの処理方法。
【請求項4】
請求項1に記載の演算システムでの処理方法において、
前記演算処理の演算周期に合わせて上位側タイマ割り込みを発生させるとともに、前記演算周期とは別に該演算周期の1/nとなる下位側タイマ割り込み(n:2以上の整数)も発生させ、前記上位側タイマ割り込みの発生から数えた前記下位側タイマ割り込みの発生回数に基づいて、前記パルス出力処理における次回のパルス出力送出時間を設定する
ことを特徴とする演算システムでの処理方法。
【請求項5】
請求項4に記載の演算システムでの処理方法において、
前記下位側タイマ割り込みの発生回数が予め設定された整数に対して多であれば、前記次回のパルス出力送出時間を前記演算周期に対して−θ%で規定される時間で設定するものとし、前記下位側タイマ割り込みの発生回数が予め設定された整数に対して少であれば、前記次回のパルス出力送出時間を前記演算周期に対して+θ%で規定される時間で設定するものとする
ことを特徴とする演算システムでの処理方法
【請求項6】
請求項1ないし請求項5いずれか記載の演算システムでの処理方法において、
二つの処理装置を用いることにより、前記演算処理と前記パルス出力処理とを分けて行う
ことを特徴とする演算システムでの処理方法。
【請求項7】
請求項1ないし請求項6いずれか記載の演算システムでの処理方法を、流量演算システム用の処理方法として採用してなる
ことを特徴とする流量変換器。
【請求項8】
請求項7に記載の流量変換器を備えてなる
ことを特徴とするコリオリ流量計。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2009−104677(P2009−104677A)
【公開日】平成21年5月14日(2009.5.14)
【国際特許分類】
【出願番号】特願2009−36015(P2009−36015)
【出願日】平成21年2月19日(2009.2.19)
【分割の表示】特願2006−200249(P2006−200249)の分割
【原出願日】平成18年7月24日(2006.7.24)
【出願人】(000103574)株式会社オーバル (82)
【Fターム(参考)】