(57)【要約】【課題】最大値と最小値を除いた残りのデータの平均を求める手法で長期間続く変動を取り除くためには多くのデータの平均値を求めなければならないが、応答が悪くなり、かつ多量のデータを保存する領域が必要になるという課題を解決する。【解決手段】入力値と出力値の差の絶対値ΔＶが所定の値αより小さいと出力値を入力値で更新し、等しいか大きいと前回の出力値をホールドするようにした。また、ΔＶがαを越える期間が予め決められた期間以上になると、ΔＶの値に関わらず出力値を入力値で更新し、前記ΔＶがα以下になると、再びΔＶがαより小さいときに出力値を入力値で更新し、等しいか大きいときに前回出力値をホールドするようにした。応答を悪化させることなくノイズなどの変動を除去することができる。【選択図】            図１
2004207830.tif 000002
【特許請求の範囲】
【請求項１】
値を保持するバッファ部と、このバッファ部の出力および入力値が入力されるコントロール部とを有し、このコントロール部は前記バッファ部の出力と前記入力値との差の絶対値が予め定められた第１の値より小さいときに前記バッファ部に保持されている値を前記入力値で更新し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きいか等しいときに前記バッファ部に保持されている値をホールドすることを特徴とするフィルタ。
【請求項２】
前記コントロール部は、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第２の値の間継続したときに、それ以降前記バッファ部の出力と前記入力値との差の絶対値の値に関わらず前記バッファ部に保持されている値を前記入力値で更新し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さくなると、再度前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに前記バッファ部に保持されている値を前記入力値で更新し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きいか等しいときに前記バッファ部に保持されている値をホールドすることを特徴とする請求項１記載のフィルタ。
【請求項３】
前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第３の値の間継続したときに、再度前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに前記バッファ部に保持されている値を前記入力値で更新し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きいか等しいときに前記バッファ部に保持されている値をホールドすることを特徴とする請求項１または請求項２記載のフィルタ。
【請求項４】
前記第１の値は、前記入力値が通常有する変動幅よりも小さな値に設定するようにしたことを特徴とする請求項１ないし請求項３いずれかに記載のフィルタ。
【請求項５】
入力値が入力され、サンプリングスイッチによってこの入力値をサンプリングするサンプリング部と、このサンプリング部の出力が入力され、平均化処理して出力するフィルタ部と、このフィルタ部の出力および前記入力値が入力されるコントロール部とを有し、このコントロール部は前記フィルタ部の出力と前記入力値との差の絶対値が予め定められた第１の値より小さいときに前記サンプリングスイッチを制御して前記フィルタ部に前記入力値を入力し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値に等しいかそれより大きいときに、前記フィルタ部を制御して前回の出力値をホールドして出力するようにしたことを特徴とするフィルタ。
【請求項６】
前記コントロール部は、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第２の値の間継続したときに、それ以降前記フィルタ部の出力と前記入力値との差の絶対値の値に関わらず前記入力値を前記フィルタ部に入力し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より小さくなると、再度前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに前記入力値を前記フィルタ部に入力し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値に等しいかそれより大きいときに、前記フィルタ部を制御して前記フィルタ部の出力を前回値でホールドするようにしたことを特徴とする請求項５記載のフィルタ。
【請求項７】
前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第３の値の間継続したときに、再度前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに、前記フィルタ部に保持されている値を前記入力値で更新し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より大きいか等しいときに、前記フィルタ部を制御して前記フィルタ部の出力を前回値でホールドするようにしたことを特徴とする請求項５記載または請求項６記載のフィルタ。
【請求項８】
前記第１の値は、前記入力値が通常有する変動幅よりも小さな値に設定するようにしたことを特徴とする請求項５ないし請求項７いずれかに記載のフィルタ。
【請求項９】
前記フィルタ部の出力が入力されるバッファ部を有し、このバッファ部によって前記フィルタ部の前回出力をホールドし、かつこのバッファ部の出力を前記フィルタ部の出力に代えて前記コントロール部に入力するようにしたことを特徴とする請求項５ないし請求項８いずれかに記載のフィルタ。
【請求項１０】
入力値が入力され、サンプリングスイッチによってこの入力値をサンプリングするサンプリング部と、前記入力値が入力され、平均化処理して出力するフィルタ部と、前記フィルタ部の出力および前記サンプリング部の出力が入力される選択部と、この選択部の出力が入力されるバッファ部と、前記バッファ部の出力および前記入力値が入力されるコントロール部とを有し、このコントロール部は前記バッファ部の出力と前記入力値との差の絶対値が予め定められた第１の値より小さいときに前記選択部によって前記フィルタ部の出力を選択し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値に等しいかそれより大きいときに、前記選択部によって前記サンプリング部の出力を選択して、前記バッファ部によって前記選択部の前回出力値をホールドさせるようにしたことを特徴とするフィルタ。
【請求項１１】
前記コントロール部は、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第２の値の間継続したときに、それ以降前記バッファ部の出力と前記入力値との差の絶対値の値に関わらず前記選択部によって前記フィルタ部の出力を選択し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さくなると、再度前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに前記選択部によって前記フィルタ部の出力を選択し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値に等しいかそれより大きいときに前記サンプリング部の出力を選択して、前記バッファ部によってその前回出力値をホールドするようにしたことを特徴とする請求項１０記載のフィルタ。
【請求項１２】
前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第３の値の間継続したときに、再度前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに、前記選択部によって前記フィルタ部の出力を選択し、前記バッファ部の出力と前記入力値との差の絶対値が予め定められた第１の値より大きいか等しいときに前記選択部によって前記サンプリング部の出力を選択して、前記バッファ部によってその前回出力値をホールドするようにしたことを特徴とする請求項１０記載または請求項１１載のフィルタ。
【請求項１３】
前記第１の値は、前記入力値が通常有する変動幅よりも小さな値に設定するようにしたことを特徴とする請求項１０ないし請求項１２いずれかに記載のフィルタ。
【発明の詳細な説明】
【発明の属する技術分野】
この発明は、急変する変動を除去することができるフィルタに関し、特に熱電対や測温抵抗体の出力などのアナログ信号に用いて好適なフィルタに関するものである。
【０００１】
【従来の技術】
熱電対や測温抵抗体出力などのアナログ信号にはノイズが重畳することがあるので、これらのノイズを取り除かなければならない。これらのノイズは通常急激に変動するので、その性質を利用して取り除くことが一般に行われている。
【０００２】
図９にこのような急激に変動する信号を取り除く手法を説明する。図９において、曲線５はアナログ信号であり、黒丸Ｄ１〜Ｄ９は一定周期でサンプリングした点である。Ｄ１〜Ｄ４およびＤ６〜Ｄ９はほぼ一定値であるが、Ｄ５だけ異常な値になっている。
【０００３】
このような異常値Ｄ５を取り除くために、引き続く所定の数のデータのうち、最大値と最小値を除いたデータの平均値をその時点のデータとする。すなわち、下記（１）式によってその時点のデータを算出する。
その時点の値＝（最大値と最小値を除いたデータの総和）  ／（最大値と最小値を除いたデータの数）  ・・・  （１）
【０００４】
例えば、平均値を算出するデータの個数を４とすると、時点Ｔ１ではＤ１〜Ｄ４のうち最大値Ｄ３と最小値Ｄ２を除いたＤ１とＤ４の平均値をその時点のデータとする。また、時点Ｔ２ではＤ２〜Ｄ５のうち、最大値Ｄ５と最小値Ｄ２を除いたＤ３とＤ４の平均値をその時点のデータとする。時点Ｔ２のデータは下記（２）式で求めることができる。
時点Ｔ２のデータ＝（Ｄ３＋Ｄ４）／２  ・・・・・・  （２）
【０００５】
以下同様にして、１つずつ右側にずらしていきながら最大値と最小値を除いた２つの値の平均値をその時点のデータとする。このようにすることにより、Ｄ５のような異常値を取り除くことができる。
【０００６】
【特許文献１】
特開平８−１２５４９４号公報
【０００７】
【発明が解決しようとする課題】
しかしながら、このような異常値を取り除く手法には次のような課題があった。
【０００８】
異常値が継続する時間が（サンプリング周期×平均化するデータの個数）に比べて短い場合には前記の手法で異常値を取り除くことができる。しかしながら、異常値が継続する時間がその時間より長くなると、異常値を充分に取り除くことが出来ないという課題があった。
【０００９】
継続時間が長い異常値を取り除くためには、平均化するデータの個数を増加させなければならない。しかしながら、長期間の平均値をその時点のデータとするために、応答が遅くなってしまうという課題があった。また、データを平均化するためには一時的にデータを保存しておかなければならないが、そのための格納領域が増加してしまうという課題もあった。
【００１０】
従って本発明の目的は、長時間継続する変動を除去することができ、かつ応答特性を悪化させることがないフィルタを提供することにある。
【００１１】
【課題を解決するための手段】
このような課題を解決するために、本発明のうち請求項１記載の発明は、値を保持するバッファ部と、このバッファ部の出力および入力値が入力されるコントロール部とを具備し、このコントロール部は前記バッファ部の出力と前記入力値との差の絶対値が予め定められた第１の値より小さいときに前記バッファ部に保持されている値を前記入力値で更新し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きいか等しいときに前記バッファ部に保持されている値をホールドするものである。応答特性を悪化させることなくノイズなどの変動値を除去できる。
【００１２】
請求項２記載の発明は、請求項１記載の発明において、前記コントロール部は、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第２の値の間継続したときに、それ以降前記バッファ部の出力と前記入力値との差の絶対値の値に関わらず前記バッファ部に保持されている値を前記入力値で更新し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さくなると、再度前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに前記バッファ部に保持されている値を前記入力値で更新し、前記バッファ部の出力と前記入力値との差の絶対値が予め定められた第１の値より大きいか等しいときに前記バッファ部に保持されている値をホールドするものである。ステップ応答を悪化させない。
【００１３】
請求項３記載の発明は、請求項１または請求項２記載の発明において、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第３の値の間継続したときに、再度前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに前記バッファ部に保持されている値を前記入力値で更新し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きいか等しいときに前記バッファ部に保持されている値をホールドするものである。長時間続く変動にも対応できる。
【００１４】
請求項４記載の発明は、請求項１ないし請求項３いずれかに記載の発明において、前記第１の値は、前記入力値が通常有する変動幅よりも小さな値に設定するようにしたものである。変動分を確実に除去できる。
【００１５】
請求項５記載の発明は、入力値が入力され、サンプリングスイッチによってこの入力値をサンプリングするサンプリング部と、このサンプリング部の出力が入力され、平均化処理して出力するフィルタ部と、このフィルタ部の出力および前記入力値が入力されるコントロール部とを有し、このコントロール部は前記フィルタ部の出力と前記入力値との差の絶対値が予め定められた第１の値より小さいときに前記サンプリングスイッチを制御して前記フィルタ部に前記入力値を入力し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値に等しいかそれより大きいときに、前記フィルタ部を制御して前回の出力値をホールドして出力するようにしたものである。応答特性を悪化させることなくノイズなどの変動値を除去できる。
【００１６】
請求項６記載の発明は、請求項５記載の発明において、前記コントロール部は、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第２の値の間継続したときに、それ以降前記フィルタ部の出力と前記入力値との差の絶対値の値に関わらず前記入力値を前記フィルタ部に入力し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より小さくなると、再度前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに前記入力値を前記フィルタ部に入力し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値に等しいかそれより大きいときに、前記フィルタ部を制御して前記フィルタ部の出力を前回値でホールドするようにしたものである。ステップ応答を悪化させない。
【００１７】
請求項７記載の発明は、請求項５記載または請求項６記載の発明において、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第３の値の間継続したときに、再度前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに、前記フィルタ部に保持されている値を前記入力値で更新し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より大きいか等しいときに、前記フィルタ部を制御して前記フィルタ部の出力を前回値でホールドするようにしたものである。長時間続く変動にも対応できる。
【００１８】
請求項８記載の発明は、請求項５ないし請求項７いずれかに記載の発明において、前記第１の値は、前記入力値が通常有する変動幅よりも小さな値に設定するようにしたものである。変動分を効率よく除去できる。
【００１９】
請求項９記載の発明は、請求項５ないし請求項８いずれかに記載の発明において、前記フィルタ部の出力が入力されるバッファ部を有し、このバッファ部によって前記フィルタ部の前回出力をホールドし、かつこのバッファ部の出力を前記フィルタ部の出力に代えて前記コントロール部に入力するようにしたものである。フィルタ部に汎用のフィルタを使用できる。
【００２０】
請求項１０記載の発明は、入力値が入力され、サンプリングスイッチによってこの入力値をサンプリングするサンプリング部と、前記入力値が入力され、平均化処理して出力するフィルタ部と、前記フィルタ部の出力および前記サンプリング部の出力が入力される選択部と、この選択部の出力が入力されるバッファ部と、前記バッファ部の出力および前記入力値が入力されるコントロール部とを有し、このコントロール部は前記バッファ部の出力と前記入力値との差の絶対値が予め定められた第１の値より小さいときに前記選択部によって前記フィルタ部の出力を選択し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値に等しいかそれより大きいときに、前記選択部によって前記サンプリング部の出力を選択して、前記バッファ部によって前記選択部の前回出力値をホールドさせるようにしたものである。応答特性を悪化させることなくノイズなどの変動値を除去できる。
【００２１】
請求項１１記載の発明は、請求項１０記載の発明において、前記コントロール部は、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第２の値の間継続したときに、それ以降前記バッファ部の出力と前記入力値との差の絶対値の値に関わらず前記選択部によって前記フィルタ部の出力を選択し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さくなると、再度前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに前記選択部によって前記フィルタ部の出力を選択し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値に等しいかそれより大きいときに前記サンプリング部の出力を選択して、前記バッファ部によってその前回出力値をホールドするようにしたものである。ステップ応答を悪化させない。
【００２２】
請求項１２記載の発明は、請求項１０記載または請求項１１載の発明において、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第３の値の間継続したときに、再度前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに、前記選択部によって前記フィルタ部の出力を選択し、前記バッファ部の出力と前記入力値との差の絶対値が予め定められた第１の値より大きいか等しいときに前記選択部によって前記サンプリング部の出力を選択して、前記バッファ部によってその前回出力値をホールドするようにしたものである。長時間続く変動にも対応できる。
【００２３】
請求項１３記載の発明は、請求項１０ないし請求項１２いずれかに記載の発明において、前記第１の値は、前記入力値が通常有する変動幅よりも小さな値に設定するようにしたものである。変動分を確実に除去できる。
【００２４】
【発明の実施の形態】
以下に、図に基づいて本発明を詳細に説明する。
図１は本発明に係るフィルタの一実施例を示す構成図である。図１において、１はサンプリング部であり、サンプリングスイッチ１１およびコントロール部１２で構成されており、入力値ＩＮが入力される。２はバッファ部であり、このバッファ部２の出力がこのフィルタの出力値ＯＵＴになる。
【００２５】
サンプリングスイッチ１１は入力値ＩＮをバッファ部２に入力し、また切り離す。サンプリングスイッチ１１がオンのときはバッファ部２に格納された値は入力値ＩＮで更新され、オフのときはバッファ部２に格納されている値は更新されず、ホールドされる。コントロール部１２には入力値ＩＮおよび出力値ＯＵＴが入力される。コントロール部２はこれら２つの入力された値に基づいてサンプリングスイッチ１１のオン、オフおよびバッファ部２の更新を制御する。
【００２６】
図２はこのフィルタの動作を表わした状態遷移図である。このフィルタは更新モードＡ、ホールドモードＢ、追従モードＣの３つのモードを取る。更新モードＡはさらにＡ１とＡ２の２つの状態に分けられる。出力値ＯＵＴと入力値ＩＮとの差の絶対値がしきい値α未満であるときは状態Ａ１であり、コントロール部１２はサンプリングスイッチ１１をオンにし、バッファ部２に格納された値を入力値ＩＮで更新する。また、状態Ａ１は継続される。
【００２７】
入力値ＩＮと出力値ＯＵＴとの差の絶対値がしきい値αを越えると、状態Ａ２に移行する。このときコントロール部１２はサンプリングスイッチ１１をオフにしてバッファ部２に格納された値を更新しない。すなわち、出力値ＯＵＴはホールドされる。また、ホールドモードＢに遷移する。
【００２８】
ホールドモードＢはＢ１〜Ｂ３の３つの状態に分けられる。入力値ＩＮと出力値ＯＵＴとの差の絶対値がしきい値α以上のときは状態Ｂ１である。コントロール部１２はサンプリングスイッチ１１をオフにしてバッファ部２に格納された値を更新しない。そのため、出力値ＯＵＴはホールドされる。また、状態Ｂ１を継続する。
【００２９】
入力値ＩＮと出力値ＯＵＴとの差がしきい値α以上の状態Ｂ１が予め定められた期間であるフィルタ時間Ｔｆｉｌｔｅｒ１を越えると、状態Ｂ３に移行する。コントロール部１２はサンプリングスイッチ１１をオンにしてバッファ部２に格納された値を入力値ＩＮで更新する。また、追従モードＣに遷移する。
【００３０】
入力値ＩＮと出力値ＯＵＴとの差の絶対値がしきい値α未満であると、状態Ｂ２に遷移する。コントロール部１２はサンプリングスイッチ１１をオンにしてバッファ部２に格納された値を入力値ＩＮで更新する。また、更新モードＡに遷移する。
【００３１】
追従モードＣはＣ１〜Ｃ３の３つの状態に分けられる。入力値ＩＮと出力値ＯＵＴとの差の絶対値がしきい値α以上のときは、状態Ｃ１になる。コントロール部１２はサンプリングスイッチ１１をオンにしてバッファ部２に格納された値を入力値ＩＮで更新する。また、状態Ｃ１は継続される。
【００３２】
入力値ＩＮと出力値ＯＵＴとの差の絶対値がしきい値α以上である状態Ｃ１が予め定められたフィルタ時間Ｔｆｉｌｔｅｒ２継続すると、状態Ｃ２に移行する。コントロール部１２はサンプリングスイッチ１１をオンにしてバッファ部２に格納された値を入力値ＩＮで更新する。また、更新モードＡに遷移する。
【００３３】
入力値ＩＮと出力値ＯＵＴとの差の絶対値がしきい値α未満であるときは、状態Ｃ３になる。コントロール部１２はサンプリングスイッチ１１をオンにしてバッファ部２に格納された値を入力値ＩＮで更新する。また、更新モードＡに遷移する。このように、入力値ＩＮと出力値ＯＵＴの差の絶対値によってモードおよび状態の間を遷移させることによって、ノイズを除去する。
【００３４】
なお、定数しきい値αは入力値ＩＮの変動レベルよりも小さい値とする。また、フィルタ時間Ｔｆｉｌｔｅｒ１、Ｔｆｉｌｔｅｒ２は下記（３）、（４）式を満たすように設定する。
０≦Ｔｆｉｌｔｅｒ１＜∞  ・・・・・・  （３）
０≦Ｔｆｉｌｔｅｒ２≦∞  ・・・・・・  （４）
上記（４）式から、Ｔｆｉｌｔｅｒ２は無限大であってもよい。すなわち、追従モードＣで、状態にＣ２に移行しないようにすることも出来る。また、Ｔｆｉｌｔｅｒ２＜Ｔｆｉｌｔｅｒ１とすることもできる。このときは、入力値ＩＮと出力値ＯＵＴの差の絶対値がしきい値αを超える時間がＴｆｉｌｔｅｒ２以上継続すると、直ちに更新モードＡに遷移する。
【００３５】
また、図１実施例ではサンプリングスイッチ１１を経由して入力値ＩＮをバッファ部２に入力するようにしたが、常時入力値ＩＮをバッファ部２に入力し、バッファ部２に格納された値を更新するかしないかをコントロール部１２で制御するようにしてもよい。さらに、コントロール部１２でバッファ部２の更新を制御する代わりに、入力値ＩＮとバッファ部２の出力を選択してバッファ部２に入力するようにしてもよい。
【００３６】
図３にＴｆｉｌｔｅｒ１以下の短時間、入力値ＩＮが異常になった場合の動作を示す。図３において、横軸は時間、縦軸は入出力値の大きさである。実線は入力値ＩＮ、点線は出力値ＯＵＴ、黒丸Ｄ１〜Ｄ６は入力値ＩＮのサンプリング点、白丸Ｄ３´、Ｄ４´は出力値ＯＵＴのサンプリング点である。また、斜線部はしきい値αから外れる範囲である。この部分の横幅はＴｆｉｌｔｅｒ１に等しい。
【００３７】
最初は更新モードＡの状態Ａ１であるとする。入力値ＩＮがＤ１とＤ２のときは、入力値ＩＮと出力値ＯＵＴはほぼ同じ大きさであるので、これらの差の絶対値はα未満である。従って、状態Ａ１は継続し、出力値ＯＵＴは入力値ＩＮで更新される。
【００３８】
入力値ＩＮがＤ３になると、出力値ＯＵＴとの差の絶対値はしきい値αを越える。そのため、状態Ａ２になり、さらにホールドモードＢに移行する。出力値ＯＵＴはホールドされ、入力値Ｄ３は出力に反映されない。そのため、出力値ＯＵＴはＤ２と同じ値のＤ３´になる。
【００３９】
次に入力値ＩＮとしてＤ４が入力されるが、出力値ＯＵＴがＤ３´であるのでそれらの差はしきい値αを越える。従って状態Ｂ１になる。出力値ＯＵＴはホールドされてＤ３´と同じＤ４´になり、入力値Ｄ４は捨てられる。
【００４０】
次に入力値ＩＮとしてＤ５が入力される。このときの出力値ＯＵＴはＤ４´であるので、それらの差の絶対値はしきい値αより小さくなる。そのため状態Ｂ２に遷移して、出力値ＯＵＴは入力値ＩＮ（Ｄ５）で更新される。また、更新モードＡに遷移する。
【００４１】
次の入力値ＩＮはＤ６であり、そのときの出力値ＯＵＴ（Ｄ５）とほぼ同じなので、出力値ＯＵＴはＤ６で更新される。また、状態Ａ１は継続される。このようにして、異常データＤ３，Ｄ４が出力値ＯＵＴに反映されるのを防止することができる。
【００４２】
なお、入力値ＩＮの変動幅がＴｆｉｌｔｅｒ１より長い場合は、ステップ応答を想定している。状態はＡ１→Ａ２→Ｂ１→Ｂ３と遷移し、追従モードＣになって出力値ＯＵＴは入力値ＩＮで更新される。その後入出力値が安定して更新モードＡに遷移して再度フィルタ処理が可能になる。
【００４３】
図４に本発明の他の実施例を示す。なお、図１と同じ要素には同一符号を付し、説明を省略する。図４において、３はフィルタ部であり、サンプリングスイッチ１１の出力およびコントロール部１２の出力が入力される。このフィルタ部３の出力はバッファ部２に入力される。バッファ部２の出力は出力値ＯＵＴになり、かつコントロール部１２およびフィルタ部３に入力される。
【００４４】
フィルタ部３は入力された値を平均化して出力するフィルタであり、内部に演算部３１を有している。この演算部３１によって予め定められた個数の入力データの平均値を演算して出力する。フィルタ部３はまたコントロール部１２の出力によって、バッファ部２の出力値をホールドする機能をも有する。状態Ａ２とＢ１では、バッファ部２の出力値をホールドし、そのホールドした値をバッファ部２に出力する。なお、この実施例でも図２に示すように各モード間を遷移する。
【００４５】
次に、この実施例の動作を図５〜図７を用いて説明する。なお、図３と同じ要素には同一符号を付し、説明を省略する。また、図３と同様に斜線の部分はしきい値αの範囲外の部分である。
【００４６】
図５は入力値ＩＮと出力値ＯＵＴの差の絶対値がしきい値αより小さい場合の動作を説明した図である。図２で説明したように、この場合はサンプリング部１の動作は更新モードＡの状態Ａ１になる。従って、サンプリング部１の出力は入力値ＩＮ（黒丸Ｄ１〜Ｄ６）と同じになる。すなわち、サンプリング部１は入力値ＩＮを通過させるだけであり、実質的に機能しない。
【００４７】
サンプリング部１の出力はフィルタ部３に入力されて平均値が演算される。そのため、出力値ＯＵＴは白丸Ｄ３´〜Ｄ６´になる。すなわち、出力値ＯＵＴは、入力値ＩＮがＤ３の時点ではＤ２とＤ３の平均値のＤ３´になり、入力値ＩＮがＤ４の時点ではＤ２〜Ｄ４の平均値のＤ４´になる。以下、Ｄ５´、Ｄ６´も同様に演算される。
【００４８】
図６は定数Ｔｆｉｌｔｅｒ１より短い時間の間入力値ＩＮが異常になった場合の例である。図３で説明したように、異常データＤ３，Ｄ４はサンプリング部１で除かれてＤ３´、Ｄ４´になり、その出力は一定値になる。そのため、フィルタ部３の出力、すなわち出力値ＯＵＴも一定値になる。この場合はフィルタ部３は実質的に機能しない。
【００４９】
図７に変動する途中のデータが入力された場合の例を示す。入力値ＩＮがＤ３のときはしきい値αの範囲内であるので、サンプリング部１の出力はＤ３と同じになるが、フィルタ部３で平均化処理されるので出力値ＯＵＴはＤ３より小さいＤ３´になる。そのため、入力値ＩＮがＤ４ではしきい値αの範囲外になり、サンプリング部１によってＤ４は出力側に伝達されず、出力値ＯＵＴはＤ３´と同じＤ４´になる。
【００５０】
同様にＤ５も範囲外になるので、Ｄ５時点の出力値ＯＵＴはＤ４´と同じＤ５´になる。フィルタ部３がないとすると、入力値ＩＮがＤ３時点の出力値ＯＵＴはＤ３そのものになる。そのため、基準値が持ち上げられて次の入力値Ｄ４も範囲内になり、出力値ＯＵＴはＤ４になる。同様にして次の出力値ＯＵＴもＤ５になる。すなわち、フィルタ部３がないと異常値Ｄ４，Ｄ５を除去できない。
【００５１】
なお、この実施例ではバッファ部２はフィルタ部３の出力を通過させるだけであるので、出力値ＯＵＴはフィルタ部３の出力と同じである。また、状態Ａ２とＢ１のときにフィルタ部３で出力値をホールドするようにしたが、バッファ部２でホールドするようにしてもよい。
【００５２】
図８に、図４実施例を変形した実施例を示す。なお、図４と同じ要素には同一符号を付し、説明を省略する。図８において、４は選択部であり、サンプリング部１の出力とフィルタ部３の出力およびコントロール部１２の出力が入力される。選択部４はコントロール部１２の出力によって、サンプリング部１とフィルタ部３の出力のいずれかを選択してバッファ部２に出力する。また、入力値ＩＮはサンプリング部１とフィルタ部３の両方に入力される。バッファ部２の出力が出力値ＯＵＴになる。
【００５３】
選択部４はサンプリングスイッチ１１がオフのときはサンプリング部１の出力をバッファ部２に出力し、オンのときはフィルタ部３の出力をバッファ部２に出力する。サンプリングスイッチ１１がオフのときは、バッファ部２は内部に格納されている値をホールドする。なお、この実施例でも図２に示すように各モード間を遷移する。
【００５４】
図５〜図７で説明したように、サンプリングスイッチ１１がオフのときは出力データがホールドされるのでフィルタ部３が機能しない。また、サンプリングスイッチ１１がオンのときは、サンプリング部１は入力値ＩＮを通過させるだけである。従って、選択部４によってサンプリングスイッチ１１がオフのときはサンプリング部１の出力をバッファ部２に入力し、サンプリングスイッチ１１がオンのときはフィルタ部３の出力をバッファ部２に入力するようにしても、同じ効果を得ることができる。
【００５５】
なお、図４および図８実施例においてフィルタ部３は入力データを平均化するフィルタであるとしたが、同様に機能を有する他のフィルタ、例えばローパスフィルタを用いてもよい。さらに、これらの実施例ではハードウエアで構成するとして説明したが、マイクロプロセッサを用いてソフトウエアで同等の機能を実現することもできる。
【発明の効果】
以上説明したことから明らかなように、本発明によれば、次の効果が期待できる。
請求項１記載の発明によれば、値を保持するバッファ部と、このバッファ部の出力および入力値が入力されるコントロール部とを具備し、このコントロール部は前記バッファ部の出力と前記入力値との差の絶対値が予め定められた第１の値より小さいときに前記バッファ部に保持されている値を前記入力値で更新し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きいか等しいときに前記バッファ部に保持されている値をホールドする。
【００５６】
安定した入力値が入力される場合は、常に最新の入力値で出力値を更新するので、応答性が悪化することがないという効果がある。また、多量のデータを平均化する処理を行わないので、データを保存するための領域が不要になり、コストを削減することができるという効果もある。また、、第１の値を調整することにより、既知の変動を効率的に除去することができるという効果もある。さらに、ソフトウエアでも容易に構成することができるという効果もある。
【００５７】
請求項２記載の発明によれば、請求項１記載の発明において、前記コントロール部は、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第２の値の間継続したときに、それ以降前記バッファ部の出力と前記入力値との差の絶対値の値に関わらず前記バッファ部に保持されている値を前記入力値で更新し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さくなると、再度前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに前記バッファ部に保持されている値を前記入力値で更新し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きいか等しいときに前記バッファ部に保持されている値をホールドする。
【００５８】
ステップ上に変化する入力に対しても正確に応答することができるという効果がある。また、第１の値および第２の値を調整することにより、既知の変動分を除去することができるという効果もある。
【００５９】
請求項３記載の発明によれば、請求項１または請求項２記載の発明において、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第３の値の間継続したときに、再度前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに前記バッファ部に保持されている値を前記入力値で更新し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きいか等しいときに前記バッファ部に保持されている値をホールドする。
【００６０】
変動が長期間継続した場合でも、第３の値の時間で元の状態に戻すことができるので、動作が不安定になることがなくなるという効果がある。また、第１〜第３の値を調整することにより、既知の変動分を除去することができるという効果もある。
【００６１】
請求項４記載の発明によれば、請求項１ないし請求項３いずれかに記載の発明において、前記第１の値は、前記入力値が通常有する変動幅よりも小さな値に設定するようにした。ノイズなどの通常発生しない変動分を効率的かかつ確実に除去することができるという効果がある。
【００６２】
請求項５記載の発明によれば、入力値が入力され、サンプリングスイッチによってこの入力値をサンプリングするサンプリング部と、このサンプリング部の出力が入力され、平均化処理して出力するフィルタ部と、このフィルタ部の出力および前記入力値が入力されるコントロール部とを有し、このコントロール部は前記フィルタ部の出力と前記入力値との差の絶対値が予め定められた第１の値より小さいときに前記サンプリングスイッチを制御して前記フィルタ部に前記入力値を入力し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値に等しいかそれより大きいときに、前記フィルタ部を制御して前回の出力値をホールドして出力するようにした。
【００６３】
安定した入力値が入力される場合は、常に最新の入力値で出力値を更新するので、応答性が悪化することがないという効果がある。また、多量のデータを平均化する処理を行わないので、データを保存するための領域が不要になり、コストを削減することができるという効果もある。また、、第１の値を調整することにより、既知の変動を効率的に除去することができるという効果もある。
【００６４】
また、変動中のデータを取り込んでしまった場合でも、その変動分を除去することができるという効果もある。さらに、ソフトウエアでも容易に構成することができるという効果もある。
【００６５】
請求項６記載の発明によれば、請求項５記載の発明において、前記コントロール部は、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第２の値の間継続したときに、それ以降前記フィルタ部の出力と前記入力値との差の絶対値の値に関わらず前記入力値を前記フィルタ部に入力し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より小さくなると、再度前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに前記入力値を前記フィルタ部に入力し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値に等しいかそれより大きいときに、前記フィルタ部を制御して前記フィルタ部の出力を前回値でホールドするようにした。
【００６６】
ステップ上に変化する入力に対しても正確に応答することができるという効果がある。また、第１の値および第２の値を調整することにより、既知の変動分を除去することができるという効果もある。
【００６７】
請求項７記載の発明によれば、請求項５記載または請求項６記載の発明において、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第３の値の間継続したときに、再度前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに、前記フィルタ部に保持されている値を前記入力値で更新し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値より大きいか等しいときに、前記フィルタ部を制御して前記フィルタ部の出力を前回値でホールドするようにした。
【００６８】
変動が長期間継続した場合でも、第３の値の時間で元の状態に戻すことができるので、動作が不安定になることがなくなるという効果がある。また、第１〜第３の値を調整することにより、既知の変動分を除去することができるという効果もある。
【００６９】
請求項８記載の発明によれば、請求項５ないし請求項７いずれかに記載の発明において、前記第１の値は、前記入力値が通常有する変動幅よりも小さな値に設定するようにした。ノイズなど通常発生しない変動分を効率的かつ確実に除去することができるという効果がある。
【００７０】
請求項９記載の発明によれば、請求項５ないし請求項８いずれかに記載の発明において、前記フィルタ部の出力が入力されるバッファ部を有し、このバッファ部によって前記フィルタ部の前回出力をホールドし、かつこのバッファ部の出力を前記フィルタ部の出力に代えて前記コントロール部に入力するようにした。フィルタ部で出力値をホールドする必要がないので、汎用のフィルタを使用できるという効果がある。
【００７１】
請求項１０記載の発明によれば、入力値が入力され、サンプリングスイッチによってこの入力値をサンプリングするサンプリング部と、前記入力値が入力され、平均化処理して出力するフィルタ部と、前記フィルタ部の出力および前記サンプリング部の出力が入力される選択部と、この選択部の出力が入力されるバッファ部と、前記バッファ部の出力および前記入力値が入力されるコントロール部とを有し、このコントロール部は前記バッファ部の出力と前記入力値との差の絶対値が予め定められた第１の値より小さいときに前記選択部によって前記フィルタ部の出力を選択し、前記フィルタ部の出力と前記入力値との差の絶対値が前記第１の値に等しいかそれより大きいときに、前記選択部によって前記サンプリング部の出力を選択して、前記バッファ部によって前記選択部の前回出力値をホールドさせるようにした。
【００７２】
安定した入力値が入力される場合は、常に最新の入力値で出力値を更新するので、応答性が悪化することがないという効果がある。また、多量のデータを平均化する処理を行わないので、データを保存するための領域が不要になり、コストを削減することができるという効果もある。また、、第１の値を調整することにより、既知の変動を効率的に除去することができるという効果もある。
【００７３】
また、変動中のデータを取り込んでしまった場合でも、その変動分を除去することができるという効果もある。さらに、ソフトウエアでも容易に構成することができるという効果もある。
【００７４】
請求項１１記載の発明によれば、請求項１０記載の発明において、前記コントロール部は、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第２の値の間継続したときに、それ以降前記バッファ部の出力と前記入力値との差の絶対値の値に関わらず前記選択部によって前記フィルタ部の出力を選択し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さくなると、再度前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに前記選択部によって前記フィルタ部の出力を選択し、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値に等しいかそれより大きいときに前記サンプリング部の出力を選択して、前記バッファ部によってその前回出力値をホールドするようにした。
【００７５】
変動が長期間継続した場合でも、第３の値の時間で元の状態に戻すことができるので、動作が不安定になることがなくなるという効果がある。また、第１〜第３の値を調整することにより、既知の変動分を除去することができるという効果もある。
【００７６】
請求項１２記載の発明によれば、請求項１０記載または請求項１１載の発明において、前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より大きい期間が、予め定められた第３の値の間継続したときに、再度前記バッファ部の出力と前記入力値との差の絶対値が前記第１の値より小さいときに、前記選択部によって前記フィルタ部の出力を選択し、前記バッファ部の出力と前記入力値との差の絶対値が予め定められた第１の値より大きいか等しいときに前記選択部によって前記サンプリング部の出力を選択して、前記バッファ部によってその前回出力値をホールドするようにしたものである。長時間続く変動にも対応できる。
【００７７】
請求項１３記載の発明によれば、請求項１０ないし請求項１２いずれかに記載の発明において、前記第１の値は、前記入力値が通常有する変動幅よりも小さな値に設定するようにした。細かい変動分によってフィルタの内部状態が不安定になることがなくなり、かつ通常発生しない変動分を除去することができるという効果がある。
【図面の簡単な説明】
【図１】本発明の一実施例の構成図である。
【図２】本発明の一実施例の動作を説明する状態遷移図である。
【図３】本発明の動作を説明するための図である。
【図４】本発明の他の実施例の構成図である。
【図５】本発明の動作を説明するための図である。
【図６】本発明の動作を説明するための図である。
【図７】本発明の動作を説明するための図である。
【図８】本発明の他の実施例の構成図である。
【図９】従来のフィルタの動作を説明するための図である。
【符号の説明】
１  サンプリング部
１１  サンプリングスイッチ
１２  コントロール部
２  バッファ部
３  フィルタ部
３１  演算部
４  選択部
Ｄ１〜Ｄ６  入力値
Ｄ３´〜Ｄ６´  出力値
【図１】
2004207830.tif 000003
【図２】
2004207830.tif 000004
【図３】
2004207830.tif 000005
【図４】
2004207830.tif 000006
【図５】
2004207830.tif 000007
【図６】
2004207830.tif 000008
【図７】
2004207830.tif 000009
【図８】
2004207830.tif 000010
【図９】
2004207830.tif 000011