(57)【要約】  【課題】データの検索や表示を高速化することができる時系列データの記憶方法、検索方法、表示方法及び記録装置を提供する。  【解決手段】時系列データを記憶手段に格納する際、時系列データを、それぞれが複数個のデータから構成される複数のデータグループに分け、そのデータグループを代表する予め定めた代表データを生成し、時系列データとともに、当該データグループの代表データを記憶する。【選択図】        図１
2006308345.tif 000002
【特許請求の範囲】
【請求項１】
時系列データを記憶手段に格納する時系列データ記憶方法において、
前記時系列データを、それぞれが複数個のデータから構成される複数のデータグループに分け、前記データグループを代表する予め定めた代表データを生成し、前記時系列データとともに、前記データグループの複数の代表データを記憶することを特徴とする時系列データ記憶方法。
【請求項２】
前記データグループを構成する複数個のデータの数は、予定された時系列データ総量に応じて設定されることを特徴とする請求項１に記載の時系列データ記憶方法。
【請求項３】
前記代表データの数は、予定された時系列データ総量に応じて設定されることを特徴とする請求項１に記載の時系列データ記憶方法。
【請求項４】
前記時系列データの収集中には、前記時系列データとともに前記データグループの複数の代表データを前記記憶手段に格納し、前記時系列データ収集後に、収集した時系列データ総量に応じて定められた所定の代表データを消去することを特徴とする請求項１に記載の時系列データ記憶方法。
【請求項５】
請求項１乃至４のいずれかの方法により記憶された時系列データから特定データを検索する時系列データ検索方法において、
所定の代表データに基づく検索を行い、続いて検出された代表データが属するデータグループの時系列データ範囲内を検索することを特徴とする時系列データ検索方法。
【請求項６】
請求項１乃至４のいずれかの方法により記憶された時系列データから特定データを検索する時系列データ検索方法において、
第１の特定数値のデータグループの代表データに基づく検索を行い、検出された代表データが属するデータグループ内について、前記第１の代表データよりも前記特定数値が小さい第２の代表データに基づく検索を行い、順次前記特定数値がより小さい代表データに基づく検索を繰り返し、続いて検出された代表データが属するデータグループの時系列データ範囲内を検索することを特徴とする時系列データ検索方法。
【請求項７】
請求項１乃至４のいずれかの方法により記憶された時系列データを表示する方法において、
前記代表データを用いて前記時系列データを表示することを特徴とする時系列データ表示方法。
【請求項８】
請求項１乃至４のいずれかのデータ記憶方法を用いてデータを記録することを特徴とする時系列データ記録装置。
【請求項９】
請求項５乃至６のいずれかのデータ検索方法を用いてデータを検索することを特徴とする時系列データ記録装置。
【請求項１０】
請求項７のデータ表示方法を用いてデータを表示することを特徴とする時系列データ記録装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時系列データの記憶方法、検索方法、表示方法及び記録装置に関し、例えば、アナログ波形等の時系列データを比較的長時間にわたってデジタル記憶手段に格納するデータロガーやデータレコーダに適用して有益な時系列データの記憶方法、検索方法、表示方法及び記録装置に関する。
【背景技術】
【０００２】
例えば、長時間の時系列データを記録するデータ記録装置としてはデータロガーがある。データロガーは、アナログ信号を所望のサンプリング間隔で収集し、これらの時系列データを記憶手段に格納するものであるが、デジタル信号データも同時に記録することができるものもある。
【０００３】
かかるデータロガーは、データ収集中や収集後に、入力されたアナログ波形データやデジタルデータを表示手段に表示することができ、データの特徴点を検出し、データ収集時におけるトリガとしたり、データ収集後に所望の事象がいつ発生したかを検索したりすることができる。
【０００４】
一般的には、データロガーはデジタルオシロスコープよりも長時間のデータ記録を行うことを目的とすることが多く、このため比較的低速度でサンプリングされた大量のデータを記憶・再生することが多い。
【０００５】
従来のデータロガーの代表的な構成図が図５に示されている。
アナログ入力は、必要に応じてアイソレーション、信号レベル変換、直流電位変換、フィルタリング処理等のシグナルコンディショニング処理が施された後、Ａ／Ｄ変換器１によりＡ／Ｄ変換されてアナログ波形に相当するデジタル時系列データが得られる。例えば、１６ビットのＡ／Ｄ変換器を用いた場合は、時系列データの１データは１６ビットで、２の補数形式などのデジタル数値データで表現されている。得られた時系列データは、制御手段３を介して記憶手段６に格納される。このシグナルコンディショニング条件の設定や、Ａ／Ｄ変換のサンプリングクロック等は、制御手段から与えられる。１チャネル分のアナログ入力だけを図示しているが、データロガーでは一般的には複数チャネルを備える場合がほとんどである。
【０００６】
一方、デジタル入力は、必要に応じてロジックレベル変換等のシグナルコンディショニングを行った後、そのままサンプリング手段２によりサンプリングされてデジタルの時系列データが得られる。シグナルコンディショニング条件設定やサンプル間隔等は、制御手段３から与えられる。
【０００７】
１チャネル分、すなわち１ビットのデジタル入力だけを図示しているが、一般的には４又は８ビットを単位とした複数チャネルを備える場合が多い。また一般的なデータロガーやデータレコーダでは、デジタル入力を備えないものも多い。
【０００８】
制御手段３は、操作手段５により制御され、表示手段４に表示される。制御手段は、マイクロコンピュータ（ＣＰＵ）と周辺ハードウェア等とソフトウェアで構成するのが一般的であるが、例えばＣＰＵに内蔵されている機能が十分であればＣＰＵだけで実現することもできるし、単純な制御手段で済む場合はロジック回路だけで構成することもできる。
【０００９】
制御手段における代表的な処理としては、次のような処理がある。
［データ収集］
・シグナルコンディショニング条件設定
・サンプル間隔の選択・決定
・サンプルクロック生成やサンプリング制御
・時系列データの記憶手段への格納
［表示］
・収集中の時系列データの表示内容の生成（波形表示など）
・記憶格納されていた時系列データの表示内容の生成（波形表示等）
・シグナルコンディショニング設定状態などの表示
・操作方法や操作手順などの表示
［データ検索］
・収集中の時系列データにおける特徴点の検索（トリガ点検出など）
・格納されていた時系列データにおける特徴点の検索（異常点の検出等）
・検索結果の表示
［操作等］
・本体に内蔵されたパネルキーやダイヤルの処理
・外部のコンピュータ等との通信によるデータ等の送出や読み込み
・外部のコンピュータ等との通信によるリモート操作
【００１０】
時系列データを記憶・格納する記憶手段としては、次のようなものを使用することができる。例えば、メモリ素子、着脱可能なメモリーカード、ＵＳＢメモリ等、ハードディスク装置、着脱可能なハードディスク装置、フロッピーディスク装置とフロッピーディスク（登録商標）、１回書き込み可能な光ディスクや光磁気ディスクの装置とディスク（ＣＤ-ＲＯＭ、ＤＶＤ-ＲＯＭ等）、書換可能な光ディスクや光磁気ディスクの、装置とディスク（ＣＤ-ＲＷ、ＤＶＤ-ＲＷ、ＭＯ等）がある。データロガーでは記憶容量が大きいことが重要な特性となるので、光ディスク、光磁気ディスクや、ハードディスク装置が好適である。
【００１１】
表示手段としては、例えば、本体に内蔵した液晶表示器やＣＲＴ等の表示装置、インタフェース等で接続した液晶表示器やＣＲＴ等の外部表示装置が用いられるが、通信による外部のコンピュータなどへの表示も可能である。
【００１２】
操作手段としては、例えば、本体に内蔵されたパネルキーやダイヤル、本体に内蔵された表示装置と一体化したシートスイッチ、また、通信による外部のコンピュータからのリモート操作も可能である。
【００１３】
次に、収集中のデータあるいは記憶手段に格納されていたデータからアナログ波形を表示する方法について、例を挙げて具体的に説明する。なお、この説明では、一般的にコンピュータ用語として用いられている単位：Ｋ、Ｍ、Ｇを用いている。（Ｋ：１,０２４＝２^１０、Ｍ：１,０４８,５７６＝２^２０、Ｇ：１,０７３,７４１,８２４＝２^３０。）
【００１４】
アナログ波形表示の代表例として、オシロスコープの波形表示（横方向が時間軸、縦方向が電圧軸）のような表示形式を取り上げる。このような波形表示を、液晶表示器のように縦横に区分された画素群に表示する場合、横方向の画素が時系列データの並びを表現しており、縦方向の画素が電圧、すなわち、Ａ／Ｄ変換されたデータ値を表現している。
【００１５】
データロガーやデータレコーダでは、表示しようとする時系列データの数は表示手段の横軸画素数よりも多い場合がほとんどである。一例として、時系列データ数千〜数億個に対し、表示手段の横軸画素数は数百〜千数百程度である。ここでは、記憶手段に格納されている１Ｍ個のデータからなる、アナログ波形時系列データを、横軸２５６画素、縦軸２５６画素に波形表示する場合を例として考える。
【００１６】
例えば、データ収集時のサンプル間隔が１m秒だったとすると、最初のデータ（アドレス０とする）はデータ収集開始時のものであり、次のデータ（アドレス１とする）はデータ収集開始から１m秒後のデータである。最後のデータ（アドレス１,０４８,５７５とする）は、データ収集開始から約１７.５分後のものである。（１m秒×１,０４８,５７５データ＝１,０４８.５７５秒≒１７.５分）。
【００１７】
図６のような、フルスケールいっぱいの三角波の時系列データが記憶手段に格納されている場合を考える。１Ｍ個のデータは各々１６ビット、２の補数形式であるとする。１Ｍ個のデータをアドレス：０〜１,０４８,５７５と表現したとき、各アドレスに対応するデータは図７のようになる。
【００１８】
表示の横軸は１Ｍデータ÷２５６画素＝４Ｋデータ/画素となり、４,０９６個の時系列データが横軸１画素に対応する。つまり、アドレス：０〜４,０９５の波形データは最も左の横軸１画素に表示され、アドレス：４,０９６〜８,１９１は左から２番目の横軸画素に表示される。縦軸は１６ビット：６５,５３６ＬＳＢ÷２５６画素＝２５６ＬＳＢ/画素となり、２５６ＬＳＢが縦軸１画素に対応する。例えば、データ値：０〜+２５５を縦軸中心画素に表示する場合、データ値：+２５５〜+５１１は一つ上の縦軸画素に、データ値：-１〜-２５６は一つ下の縦軸画素に表示される。
【００１９】
この例では、アナログ波形の表示は次のような手順で行われる。
（１）アドレス０のデータを読み出し、データ値：０であることを知る→アドレス０のデータは、横軸左端の画素に対応する。また、データ値：０は縦軸中央画素に対応する→横軸左端の縦軸中央画素を点灯させる。ここで、点灯とは波形表示色を表示することを指し、消灯とは背景色を表示することを指す。
（２）アドレス１〜２,０４７について同様の手順をあと２,０４７回繰り返し、表示を行う。（１）と同じ画素が繰り返し点灯される。
（３）アドレス２,０４８のデータを読み出し、データ値：５１２であることを知る→アドレス２,０４８のデータは横軸左端の画素に対応する。また、データ値：５１２は縦軸中央画素の一つ上の画素に対応する→横軸左端の、縦軸中央画素の一つ上の画素を点灯させる。
（４）アドレス２,０４８〜４,０９５について同様の手順をあと２,０４７回繰り返し、表示を行う。（３）と同じ画素が繰り返し点灯される。
（５）アドレス４,０９６〜１,０４８,５７５について同様の手順を繰り返し、波形表示を行う。
【００２０】
上述の例では、同じ画素を何回も重ね書きするため表示に余計な時間がかかっていた。この表示処理を高速化するために次のような表示処理が施される。
（１）アドレス０〜４,０９５のデータが横軸左端の画素に対応する→この範囲のデータ４,０９６個を順次読み出し、０〜+５１１の値を取ることを知る→この値は、縦軸中央画素とその一つ上の画素に対応することを知り、この２画素を点灯する。
（２）アドレス４,０９６〜８,１９１のデータが横軸左端から２番目の画素に対応する→この範囲のデータ４,０９６個を順次読み出し、+５１２〜+１,０２３の値を取ることを知る→この値は、縦軸中央画素の二つ上と三つ上の画素に対応することを知り、この２画素を点灯する。
（３）アドレス８,１９２〜１,０４８,５７５について同様の手順を繰り返し、波形表示を行う。
【００２１】
すなわち、次のような手順で波形を表示することができる。
（１）横軸１画素に対応するアドレス範囲のデータを読み出し、データ値の最小値と最大値を知る。
（２）該横軸１画素において、データ値の範囲に相当する縦軸画素を点灯させる（縦線を表示する）。
（３）（１）、（２）を横軸全画素について繰り返して、波形を表示する。
【００２２】
アナログ波形表示における１データあたりの処理時間が平均１０μ秒だったと仮定すると、１Ｍデータの波形表示には約１０.５秒（１０.４８５７６秒）もかかることになってしまう。波形表示時間は、略データ数に比例するので、より多量のデータを表示するときには、さらに長時間を要することになり、実用性を損ねるおそれもあった。
【００２３】
次に、デジタルの時系列データからデジタル波形表示を行う例について説明する。簡単な例として、１Ｍ個のデータからなる１ビットのデジタル時系列データを、横軸２５６画素に波形表示する場合を考える。ここで、デジタルにおける波形表示とは、ロジックアナライザで行われているような、図８のようなものとする。図８において、塗りつぶされて表示されている部分は、該横軸画素に対応する時系列データの中に０と１の両方を含んでいたことを示している。横軸は、１Ｍデータ÷２５６画素＝４Ｋデータ/画素となり、４,０９６個の時系列データが横軸１画素に対応している。つまり、アドレス：０〜４,０９５の時系列データは横軸左端の画素に表示され、アドレス：４,０９６〜８,１９１の横軸左端から２番目の画素に表示される。
【００２４】
この例では、デジタル波形の表示は次のような手順で行われる。
（１）アドレス０のデータを読み出し、データ値：０/１のいずれであるかを知る→アドレス０のデータは、横軸左端の画素に対応する→横軸左端において、データ値０/１に対応する縦軸画素を点灯させる。
（２）アドレス１のデータを読み出し、データ値：０/１のいずれであるかを知る→アドレス１のデータも、横軸左端の画素に対応する→横軸左端において、次の縦軸画素を点灯させる。
・データ値が０で、一つ前のアドレスのデータ値も０のとき
→データ値０に対応する縦軸画素だけを点灯させる。
・データ値が０で、一つ前のアドレスのデータ値が１のとき
→データ値が遷移したので、データ値０とデータ値１を結ぶ縦軸画素を点灯させる。
・データ値が１で、一つ前のアドレスのデータ値が０のとき
→データ値が遷移したので、データ値０とデータ値１を結ぶ縦軸画素を点灯させる。
・データ値が１で、一つ前のアドレスのデータ値も１のとき
→データ値１に対応する縦軸画素だけを点灯させる。
（３）アドレス２〜１,０４８,５７５について同様の手順を繰り返し、デジタル波形表示を行う。
【００２５】
上述の例では、同じ画素を何回も重ね書きするため余計な時間がかかっていた。これをより高速にするためには、次のような表示方法がある。
（１）アドレス：０〜４,０９５のデータが横軸左端の画素に対応する→この範囲のデータ４,０９６個を順次読み出し、これらのデータについて「０と１の両方を含む」「すべて１」「すべて０」のいずれかを知る→「すべて０」であれば０に相当する縦軸画素だけを点灯する。
「すべて１」であれば１に相当する縦軸画素だけを点灯する。
「０と１の両方を含む」であれば、０と１に相当する間の縦軸画素をすべて点灯する。
（２）アドレス４,０９６〜８,１９１のデータが横軸左端から２番目の画素に対応する
→データ４,０９６個を順次読み出し、「０と１の両方を含む」「すべて１」「すべて０」のいずれかを知る
→「０と１の両方を含む」であれば、０と１に相当する縦の画素をすべて点灯する。
「すべて１」であれば、一つ前の横軸画素が「すべて１」であれば、１に相当する画素だけを点灯する。一つ前の横軸画素が「すべて０」であれば、０と１に相当する間の縦の画素をすべて点灯する。
「すべて０」であれば、一つ前の横軸画素が「すべて１」であれば、０と１に相当する間の縦の画素をすべて点灯する。一つ前の横軸画素が「すべて０」であれば、０に相当する画素だけを点灯する。
（３）同様の手順を繰り返し、１Ｍデータすべてを読み出して表示を行う。
【００２６】
このような表示方法では、「０と１の両方を含む」が続けば０と１の間が表示色で塗りつぶされ、「すべて１」が続けば１の部分に横線が引かれ、「すべて０」が続けば０の部分に横線が引かれることになり、図６のような表示を得ることができる。
【００２７】
デジタル波形表示における１データあたりの処理時間が平均５μ秒だったと仮定すると、１Ｍデータの波形表示には約５.２４秒（５.２４２８８秒）もかかることになってしまう。波形表示時間はほぼデータ数に比例するので、より多量のデータを表示するときには、さらに長時間を要することになり、実用性を損ねるおそれもあった。
【００２８】
次に、時系列データ中の、特徴点の検索を行う例を示す。ここで、特徴点とは例えば、アナログ波形における次のようなものを意味するが、これに限定するものではない。
・特定の、ある値になった。
・ある値以上になった。
・ある値を超えた。
・ある値以下になった。
・ある値より小さくなった。
・ある２つの値の間の値をとった。
・ある２つの値の間の値をとった後、その範囲の上に出た。
・ある２つの値の間の値をとった後、その範囲の下に出た。
・ある２つの値の間の値から、その範囲外に出た。
【００２９】
デジタルデータにおける特徴点としては、ある１ビットについては次のようなものを例示することができる。
・０→１になった。
・１→０になった。
・０または１が、ある時間以上持続した。
さらに、複数ビットを一括して考えたときには、次のような特徴点を例示することができる。
・特定の、ある値になった。
・一括した複数ビット各々に０/１/Ｘ（Ｘは０でも１でもよいことを示す）を指定し、その値になった。
・ある値以上になった。
・ある値を超えた。
・ある値以下になった。
・ある値より小さくなった。
・ある２つの値の間の値をとった。
・ある２つの値の間の値をとった後、その範囲の上に出た。
・ある２つの値の間の値をとった後、その範囲の下に出た。
・ある２つの値の間の値から、その範囲外に出た。
【００３０】
アナログ時系列データの具体例として地震波形データを考えると、通常は小さな振幅であり、地震が発生したときだけ大きな振幅になる。ある２つの値の間の値：正常振幅から、その範囲外：異常な大振幅になったことを検出すれば、地震の発生を知ることができる。また正常範囲と判定する範囲を変えれば、より大きな地震波形だけを検出するというようなことも可能となる。
【００３１】
ここでは、図７のアナログ波形において、最初に負の値になった点を探す例を示す。
（１）アドレス：０のデータを読み出し、０であることを知る。
→負の値ではなかったので、次のアドレスへ。
（２）（１）を繰り返し、時系列データを順次チェックする。５２４,２９５回繰り返し、アドレス：５２４,２９６まで到達したところで、初めて負の値-１を発見する
→アドレス：５２４,２９６が、検索結果となる。
【００３２】
他の種類の特徴データであっても、時系列データの最初から順次読み出し、比較を繰り返すという基本的な方法は同じである。
【００３３】
検索における１データあたりの処理時間が平均２μ秒だったと仮定すると、この例では検索に約１.０５秒（１.０４８５７６秒）かかることになる。検索時間は、ほぼデータ数に比例するので、より多量のデータを検索するときや、特徴点が検索範囲の後の方にあるときなどは、さらに長時間を要することになり、実用性を損ねるおそれもあった。
【発明の開示】
【発明が解決しようとする課題】
【００３４】
上述のように、従来は記憶手段に時系列データだけを記録していたため、特徴点などを検索するときは、記憶された時系列データを順次読み出して、比較演算を繰り返す必要があった。このため、大量の時系列データ中を検索するときは、検索処理に時間がかかるという欠点があった。同様に、大量の時系列データを表示するときにも、時間がかかるという欠点があった。
【課題を解決するための手段】
【００３５】
前述の課題を解決するため、本発明による時系列データの記憶方法、検索方法、表示方法及び記録装置は、次のような特徴的な構成を採用している。
【００３６】
（１）時系列データを記憶手段に格納する時系列データ記憶方法において、
前記時系列データを、それぞれが複数個のデータから構成される複数のデータグループに分け、前記データグループを代表する予め定めた代表データを生成し、前記時系列データとともに、前記データグループの複数の代表データを記憶する時系列データ記憶方法。
（２）前記データグループを構成する複数個のデータの数は、予定された時系列データ総量に応じて設定される上記（１）の時系列データ記憶方法。
（３）前記代表データの数は、予定された時系列データ総量に応じて設定される上記（１）の時系列データ記憶方法。
（４）前記時系列データの収集中には、前記時系列データとともに前記データグループの複数の代表データを前記記憶手段に格納し、前記時系列データ収集後に、収集した時系列データ総量に応じて定められた所定の代表データを消去する上記（１）の時系列データ記憶方法。
（５）上記（１）乃至（４）のいずれかの方法により記憶された時系列データから特定データを検索する時系列データ検索方法において、
所定の代表データに基づく検索を行い、続いて検出された代表データが属するデータグループの時系列データ範囲内を検索する時系列データ検索方法。
（６）上記（１）乃至（４）のいずれかの方法により記憶された時系列データから特定データを検索する時系列データ検索方法において、
第１の特定数値のデータグループの代表データに基づく検索を行い、検出された代表データが属するデータグループ内について、前記第１の代表データよりも前記特定数値が小さい第２の代表データに基づく検索を行い、順次前記特定数値がより小さい代表データに基づく検索を繰り返し、続いて検出された代表データが属するデータグループの時系列データ範囲内を検索する時系列データ検索方法。
（７）上記（１）乃至（４）のいずれかの方法により記憶された時系列データを表示する方法において、
前記代表データを用いて前記時系列データを表示する時系列データ表示方法。
（８）上記（１）乃至（４）のいずれかのデータ記憶方法を用いてデータを記録する時系列データ記録装置。
（９）上記（５）乃至（６）のいずれかのデータ検索方法を用いてデータを検索する時系列データ記録装置。
（１０）上記（７）のデータ表示方法を用いてデータを表示する時系列データ記録装置。
【発明の効果】
【００３７】
本発明による時系列データの記憶方法、検索方法、表示方法及び記録装置では、時系列データ収集時に、時系列データと同時に代表データを記憶しておき、これを使用することによってデータの検索や表示を高速化することができる。これは、代表データは時系列データよりも小容量であり、記憶容量やデータ転送速度等への影響は小さいからである。
【発明を実施するための最良の形態】
【００３８】
以下、本発明による時系列データの記憶方法、検索方法、表示方法及び記録装置の実施例について図面を参照しながら詳細に説明する。
【実施例１】
【００３９】
本発明によるデータ記録装置の一実施例としてデータロガーへの適用例を説明する。本実施例によるデータロガーの代表的な構成図が図１に示されている。図１において、図５と同じ符号が付されている構成部は同様な機能を有する構成部を示す。
ここで、以降の説明では、下記のような用語を用いる。〔課題を解決するための手段〕の（１）におけるデータグループを構成する複数個のデータの数を、以降「代表数」と表わす。また、「前記時系列データとともに、前記データグループの複数の代表データを記憶する」としている部分の、「複数の代表データ」の数を、以降「代表データの種類数」と表わす。
【００４０】
アナログ入力信号は、前述のように、必要に応じてシグナルコンディショニングを行った後、Ａ／Ｄ変換器１でＡ／Ｄ変換されて、アナログ波形に相当する時系列デジタルデータとなる。得られた時系列データは、制御手段３と代表データ生成手段７に出力される。
【００４１】
アナログ波形における代表データとしては、種々のデータを用いることができるが、例えば、代表数の時系列データ中の最大値と最小値を用いる。例えば、代表数が４のとき、データ収集開始から４個の時系列データにおける最大値と最小値が、最初の代表データとなる。続く４個における時系列データの最大値と最小値が、２番目の代表データとなる。図２には、データ収集手順を説明する図が示されている。
【００４２】
一方、デジタル入力は、必要に応じてシグナルコンディショニングを行った後、そのままサンプリング手段２によりサンプリングされてデジタルの時系列データとなる。このデジタルの時系列データは、制御手段３と代表データ生成手段８に出力される。
【００４３】
ある１ビットのデジタルデータに関する代表データは、代表数個の時系列データにおける次の値を示す。
・代表数個の時系列データがすべて０であれば、代表データは「すべて０」
・代表数個の時系列データがすべて１であれば、代表データは「すべて１」
・代表数個の時系列データ中に０と１が混在していれば、代表データは「０と１両方」
【００４４】
デジタルの代表データはアナログ代表データと同様に、代表数の時系列データ収集期間中におけるデジタルデータの変化範囲を示すもので、上記３通りを示すために２ビットを必要とする。
【００４５】
例えば、代表数が４のとき、データ収集開始から４個の時系列データが「００００」であれば「すべて０」が最初の代表データとなる。続く４個の時系列データが「１１１１」であれば、「すべて１」が２番目の代表データとなる。続く４個の時系列データが「１０１１」であれば、「０と１の両方」が３番目の代表データとなる。図３には、データ収集手順を説明する図が示されている。
【００４６】
Ａ／Ｄ変換器１と代表データ生成手段７からの出力データは制御手段３を介して記憶手段６に記憶される。また、サンプリング手段２と代表データ生成手段８からの出力データは制御手段３を介して記憶手段６に記憶される。時系列データと代表データの対応に関する情報も、同時に記憶される。
【００４７】
理解を容易にするために代表数４の例を前述したが、実際は代表数や代表データの種類数は、適宜選択することができる。
【００４８】
例えば、数Ｍデータ以上の長大な時系列データを扱うときは、一例として、
・代表数１Ｋの代表データ  ・代表数１Ｍの代表データ  の２種類の代表データを生成し、これを時系列データと同時に記憶することができる。数Ｇデータ以上のデータを扱うときは、さらに代表数１Ｇの代表データを追加してもよい。
【００４９】
ここで一例として、Ｋ/Ｍ/Ｇという、２^１０ステップの代表数を例示したが、この代表数やステップは任意の値に選択することができる。
例えば、２^８＝２５６、２^１６＝６５,５３６…など別の２のｎ乗や、１００、１０,０００…のような１０のｍ乗系列など、自由な組み合わせを選択することができる。
２進法を基本とした一般的なデジタル回路やＣＰＵで処理するときは、この代表数やステップは、２のべき乗に取るのが便利な場合が多いが、これに限定するものではない。
【００５０】
一般的には、時系列データ総量が大きい時系列データを扱うときは、代表数の大きい代表データを持つ方が有利である。時系列データ総量が小さめであれば、代表数が小さめの代表データを用いたり、データ総量がより小さければ代表データが不要なときもある。
【００５１】
代表数の異なる何種類かの代表データを使用する場合は、単一種類の代表データよりもその効果が大きい場合が多いが、必要な記憶容量が大きくなったり、代表データ生成手段が複雑になったりすることがある。
【００５２】
データ収集開始前にサンプル速度が決まっており、またデータ収集時間が予想できる場合は、それを元にして時系列データの総量が予想できる。このような場合は、時系列データの総量に適した代表数を、適宜使用することもできる。
【００５３】
例えば、時系列データの総量が１Ｍ程度と予想されれば、代表数１Ｋの代表データを用い、時系列データ総量が１６Ｍ個程度と予想されれば、代表数４Ｋの代表データを用いる、というように、検索や表示に適した代表数を適宜選択することが可能である。
【００５４】
また、時系列データの総量が予想できる場合には、時系列データの総量に適した代表データの種類数を適宜使用することもできる。
【００５５】
例えば、時系列データ総量が１Ｍ個以下であれば、代表数１Ｋの代表データだけを用い、時系列データ総量が１Ｍ個より多ければ、代表数１Ｋの代表データと代表数１Ｍの代表データの２種類を用いるというようなことも可能である。
【００５６】
データ収集開始前には、サンプル速度が決まっていても、データ収集時間は予想できない場合が多い。このような場合は、代表数の異なる複数種類の代表データを記憶し、データ収集後に時系列データ総量が決定した時点で、有用な代表データのみを残して不要な代表データを消去するという方法が有効となる。
【００５７】
代表データ生成手段は、多チャンネルのときやサンプリングが高速のときなど高速処理が必要であれば、ハードウェアロジックで実現するのが一般的である。速度的な余裕があれば、ＣＰＵとソフトウェアで処理することができ、さらに制御手段と共用する構成も可能であり、より安価な実現方法となる。
【００５８】
アナログ波形の時系列データで使用する代表データ生成手段の、より具体的な処理内容を説明する。
【００５９】
例えば、代表数を１,０２４（＝１Ｋ）としたとき、代表データ生成手段は次のような処理を行う。
【００６０】
（１）最初の時系列データを、最大値レジスタと最小値レジスタに入れる。
（２）次の時系列データが最大値レジスタより大きければ、最大値レジスタにその時系列データを入れる。最小値レジスタより小さければ、最小値レジスタにその時系列データを入れる。
（３）順次（２）のステップを繰り返し、１,０２３回繰り返したら、そのときの最大値レジスタと最小値レジスタの値を代表データとして出力する。
（４）次の時系列データを最初として、（１）〜（３）を繰り返す。
このような処理により、時系列データ１,０２４個について１組の代表データが生成される。
【００６１】
この例では、１,０２４の時系列データに対して最大値/最小値の２個の代表データを追加するのであるが、これによるデータ量の増加はわずか０.２％弱であり、データ記憶量にはほとんど影響を与えない。多チャンネルの高速データを扱うときは、記憶手段等へのデータ転送速度が制約条件となることもあるが、これに対してもほとんど影響を与えない。
【００６２】
次に、デジタルの時系列データで使用する、代表データ生成手段のより具体的な処理内容を説明する。
例えば、代表数を１,０２４（＝１Ｋ）としたとき、代表データ生成手段は次のような処理を行う。
【００６３】
（１）最初の時系列データが１であれば、「１」フラグをセット、「０」フラグをリセットする。最初の時系列データが０であれば、「１」フラグをリセット、「０」フラグをセットする。
（２）次の時系列データが１であれば「１」フラグをセット、０であれば「０」フラグをセットする。（フラグのリセットは行わない。）
（３）順次（２）のステップを繰り返し、１,０２３回繰り返したら、そのときの「１」フラグと「０」フラグにより、次を代表データとして出力する。
「１」フラグ    「０」フラグ
セット        リセット        「すべて１」
リセット          セット        「すべて０」
セット          セット        「０と１両方」
（４）次の時系列データを最初として、（１）〜（３）を繰り返す。
【００６４】
代表データの表現形式は、上記３つの状態を２ビットで表現すればよく、任意の表現形式を用いることができる。一例として、「１」フラグ/「０」フラグそのままを代表データとすることもできる。また、「すべて１：０１」/「すべて０：００」/「０と１両方：１Ｘ（１１でも１０でも可）」のような形式で表現してもよい。
【００６５】
このような処理により、１ビットの時系列データ１,０２４個について２ビットの代表データが生成される。時系列データ：１,０２４ビットに対して代表データ：２ビットを追加するのであるが、これによるデータ量の増加はわずか０.２％弱であり、データ記憶量やデータ転送速度に対する影響がほとんど影響ないことは、アナログ代表データと同様である。
【００６６】
例えば、代表数を１,０２４（＝１Ｋ）としたとき、時系列データの最初の１,０２４個が最初の代表データになり、次の１,０２４個が次の代表データになり… となるが、データ収集は必ずしも時系列データが１,０２４の倍数で終わるとは限らない。すなわち、最後の代表データに対応する時系列データ数は、代表数よりも小さい場合があるが、これは実用上問題はない。
これは、アナログでもデジタルでも同様である。
【実施例２】
【００６７】
次に、代表データを用いて、時系列データ中の特徴点の検索を行う例を示す。ここでは、背景技術の項と同様、図７のアナログ波形において、最初に負の値になった点を探す例を示す。
【００６８】
図６のような、フルスケールいっぱいの三角波の時系列データが記憶手段に格納されており、時系列データ総数は１Ｍ個で、１６ビット、２の補数形式であるとする。１Ｍ個のデータをアドレス：０〜１,０４８,５７５と表現したとき、各アドレスに対応するデータは図７のようになっている。
【００６９】
このとき、代表数１,０２４の代表データは、図４のようになっている。例えば、代表データ番号０の代表データは、表１の時系列データのアドレス０〜１,０２３に対応している。この範囲内では、時系列データのアドレス０〜７の値：０が最小値であり、アドレス１,０１６〜１,０２３の値：+１２７が最大値である。代表データ番号０には、この最小値０と、最大値+１２７の、２つの値が入っている。
【００７０】
代表データを使用するときの検索は、この例では次のようになる。
（１）代表データ番号：０の代表データを読み出し、最小値が０、最大値+１２７であることを知る。
→いずれも負の値ではなかったので、次の代表データへ。
（２）（１）を繰り返し、代表データを順次チェックする。
→代表データ番号：５１２まで到達したところで、初めて負の値：最小値-１２７を発見する。
（３）代表データ番号：５１２に対応する時系列データは、アドレス：５２４,２８８〜５２５,３１１なので、次にこの範囲の時系列データを検索する。
（４）アドレス：５２４,２８８のデータを読み出し、０であることを知る。
→負の値ではなかったので、次のアドレスへ。
（５）（４）を繰り返し、時系列データを順次チェックする。
→アドレス：５２４,２９６まで到達したところで、初めて負の値-１を発見する。
→アドレス：５２４,２９６が、検索結果となる。
【００７１】
ここでは、（１）、（２）の代表データの検索が５１３回の繰り返し、（４）、（５）の時系列データの検索が９回の繰り返しで、検索結果を得ることができた。
【００７２】
代表データの検索においては、最大値と最小値の２つについて比較する必要があるので、時系列データの検索と比較すると１データあたりの処理は２倍程度と想像される。
【００７３】
代表データの検索における１データあたりの処理時間が平均４μ秒、時系列データの検索における１データあたりの処理時間が平均２μ秒だったと仮定すると、この例では、
（４μ秒×５１３回）＋（２μ秒×９回）＝
２.０７m秒
で検索が終了する。
【００７４】
背景技術の項で示したように、代表データを用いないで検索を行った場合は、検索における１データあたりの処理時間が平均２μ秒だったと仮定すると、約１.０５秒（１.０４８５７６秒）かかっていた。
つまり、この例では、代表データを使用することにより、検索を約５百倍高速に実行できることになる。
【実施例３】
【００７５】
２種類の代表データを用いて、時系列データ中の特徴点の検索を行う例を示す。時系列データ総数は１Ｇ個で、特徴点は、時系列データの中央にあることとする。
【００７６】
時系列データと共に、代表数１Ｍの代表データと、代表数１Ｋの代表データを記憶していたとする。代表数１Ｍの代表データ１,０２４個には番号０〜１,０２３が付与されており、代表数１Ｋの代表データ１,０４８,５７６個には番号０〜１,０４８,５７５が付与されているとする。
【００７７】
この例で２種類の代表データを使用するときの検索は、次のようになる。
（１）代表数１Ｍ、番号０の代表データを読み出す。
→特徴点が含まれていなかったので、次の代表データへ。
（２）（１）を繰り返し、代表数１Ｍの代表データを順次チェックする。
→番号５１２まで到達したところで、初めて特徴点を発見する。
→代表数１Ｍ、番号５１２の代表データは、時系列データのアドレス５３６,８７０,９１２〜５３７,９１９,４８７に相当する代表データであり、またこの範囲に相当する代表数１Ｋの代表データは、番号５２４,２８８〜５２５,３１１である。
（３）代表数１Ｍ、番号５１２に対応する、代表数１Ｋの代表データは、番号５２４,２８８〜５２５,３１１なので、次にこの範囲の代表数１Ｋの代表データを検索する。
（４）代表数１Ｋ、代表データ番号５２４,２８８の代表データを読み出す。
→特徴点が含まれていた。
（５）代表数１Ｋ、番号５２４,２８８に対応する時系列データは、アドレス５３６,８７０,９１２〜５３６,８７１,９３５なので、次にこの範囲の時系列データを検索する。
（６）アドレス５３６,８７０,９１２の時系列データを読み出す。
→特徴点が含まれていたので、アドレス５３６,８７０,９１２、すなわち１Ｇ個の時間軸データの中央が、検索結果となる。
【００７８】
この例では、（１）、（２）の代表数１Ｍの代表データの検索が５１３回の繰り返し、（４）の代表数１Ｋの代表データの検索が１回、（５）の時系列データの検索も１回の繰り返しで、検索結果を得ることができた。
【００７９】
代表データの検索における１データあたりの処理時間が平均４μ秒、時系列データの検索における１データあたりの処理時間が平均２μ秒だったと仮定すると、この例では
（４μ秒×５１３回）＋（４μ秒×１回）＋（２μ秒×１回）＝
２.０５８m秒で検索が終了する。
【００８０】
代表データを用いないで検索を行う場合、アドレス５３６,８７０,９１２で特徴点を発見するまでに、時系列データの検索が５３６,８７０,９１３回繰り返されるので、
２μ秒×５３６,８７０,９１３回＝１０７３.７４１８２６秒（約１８分）かかることになる。
つまり、この例では、２種類の代表データを用いることにより、
１,０７３.７４１８２６秒 ÷ ２.０５８m秒 ≒ ５２１,７４０.４４…
となり、５０万倍強、検索が高速化されたことになる。
【００８１】
上述実施例２と比較すると、これらの例では、単一種類の代表データよりも、２種類の代表データを用いた方が高速化の効果が大きかった。
【００８２】
２種類の代表データを用いて検索を行う方法は、以下のような説明により理解が容易になる。
（１）長いデータを最初に荒くぶつ切りにして、そのぶつ切り単位で先頭からチェック。
（２）特徴点が抽出されたぶつ切りのデータ１個を、今度はある程度細かくこま切れにして、そのこま切れ単位で先頭からチェックして絞り込む。
（３）特徴点が抽出されたこま切れの中で、最後にひとつひとつのデータを先頭からチェックして、最終的に特徴点を決定する。
【００８３】
ここでは、粗・密・個
の３段階検索を例示したが、代表数の異なる代表データを何種類か用いて、任意の段階数で検索することができる。
【実施例４】
【００８４】
代表データを用いて、アナログ波形を表示する例を示す。本例では、背景技術の項と同様の条件で、アナログ波形を表示する例を示す。なお、オシロスコープのようなアナログ波形表示を例示しているが、オシロスコープではこの他にも様々な表示方法があり、本発明もまた同様に様々な表示方法に適用できる。
【００８５】
図６のような、フルスケールいっぱいの三角波の時系列データが記憶手段に格納されており、時系列データ総数は１Ｍ個で、１６ビット、２の補数形式であるとする。１Ｍ個のデータをアドレス：０〜１,０４８,５７５と表現したとき、各アドレスに対応するデータは図７のようになっている。この時系列データに対応する、代表数１,０２４の代表データは、図４に示すようになっている。
これらのデータを元に、横軸２５６画素、縦軸２５６画素に波形を表示する場合を考える。
【００８６】
表示の横軸は、１Ｍデータ÷２５６画素＝４Ｋデータ/画素であり、４,０９６個の時系列データが横軸１画素に対応しており、また４個の代表データが横軸１画素に対応していることになる。
【００８７】
（１）横軸左端の画素には、アドレス０〜４,０９５のデータが対応する。
→これに対応する代表データ４個（代表データ番号０〜３）を読み出し、さらにこれら４つの代表データの最小値と最大値を取り、０〜+５１１の値を取ることを知る。
→この値は、縦軸中央画素とその一つ上の画素に対応することを知り、点灯する。
（２）横軸左端から２番目の画素には、アドレス４,０９６〜８,１９１のデータが対応する。
→これに対応する代表データ４個（代表データ番号４〜７）を読み出し、さらにこれら４つの代表データの最小値と最大値を取り、+５１２〜+１,０２３の値を取ることを知る。
→この値は、縦軸中央画素の二つ上と三つ上の画素に対応することを知り、点灯する。
（３）残る横軸画素について同様の手順を繰り返し、波形表示を行う。
【００８８】
すなわち、次のような手順で波形を表示することができる。
（１）横軸１画素に対応する代表データを読み出し、さらにそれらの最小値と最大値を知る。
（２）該横軸１画素の、最小値と最大値の範囲に相当する縦軸画素を点灯させる。
（３）（１）、（２）を、横軸全画素について繰り返して、波形を表示する。
【００８９】
この例では、４個の代表データが横軸１画素に対応している。このように複数の代表データが横軸１画素に対応している場合は、複数の代表データにおいてさらにそれらの最小値と最大値を求める必要がある。言い換えると、「複数個の代表データ」における「代表データ」を得る必要がある。このような場合、制御手段中の演算処理でこれを求めることもできるが、制御手段から代表データ生成手段に「複数個の代表データ」を与え、それらの「代表データ」を代表データ生成手段から得るという方法も採ることができる。
【００９０】
アナログ波形表示において、代表データ１データあたりの処理時間を、時系列データの２倍と仮定し、平均２０μ秒だったと仮定すると、この例では、
２０μ秒×代表データ数：１,０２４ ≒ ２０m秒（２０.４８m秒）
となる。
【００９１】
背景技術の項で示したように、代表データを用いないで表示を行った場合、時系列データ１データの処理に平均１０μ秒かかったとすると、１Ｍデータの波形表示には約１０.５秒（１０.４８５７６秒）もかかっていた。
【００９２】
つまり、この例では、代表データを使用することにより、表示を５百倍強、高速に実行できることになる。ただし、これは、どの画素を点灯させるかを決定する処理部分だけの時間であり、表示手段に指令を与えて実際に表示を行う部分の時間は含んでいない。
【実施例５】
【００９３】
代表データを用いて、デジタル波形を表示する例を示す。
デジタルデータの場合は、横軸を時間軸としたロジックアナライザの波形表示のような表示形式を例示しているが、実際のロジックアナライザでは、その他に複数ビットを一括してヘキサデシマルで表示する等の様々な表示方法があり、本発明もまた同様に様々な表示方法に適用できる。
【００９４】
ここでは、背景技術の項と同様、１Ｍ個のデータからなる１ビットのデジタル時系列データを、横軸２５６画素に、デジタル波形を表示する例を示す。時系列データと共に、代表数１,０２４の代表データを記憶していたとする。
【００９５】
表示の横軸は、１Ｍデータ÷２５６画素＝４Ｋデータ/画素であり、４,０９６個の時系列データが横軸１画素に対応しており、また４個の代表データが横軸１画素に対応していることになる。
【００９６】
（１）横軸左端の画素には、アドレス０〜４,０９５のデータが対応する。
→これに対応する代表データ４個（代表データ番号０〜３）を読み出す。
４個とも「すべて０」であれば、０に相当する縦軸画素だけを点灯する。
４個とも「すべて１」であれば、１に相当する縦軸画素だけを点灯する。
それ以外であれば、０と１に相当する間の縦軸画素をすべて点灯する。
（２）横軸左端から２番目の画素には、アドレス４,０９６〜８,１９１のデータが対応する。→これに対応する代表データ４個（代表データ番号４〜７）を読み出す。
「すべて１」であれば、一つ前の横軸画素が「すべて１」であれば、１に相当する画素だけを点灯する。一つ前の横軸画素が「すべて０」であれば、０と１に相当する間の縦の画素をすべて点灯する。
「すべて０」であれば、一つ前の横軸画素が「すべて１」であれば、０と１に相当する間の縦の画素をすべて点灯する。一つ前の横軸画素が「すべて０」であれば、０に相当する画素だけを点灯する。
それ以外であれば、０と１に相当する間の縦軸画素をすべて点灯する。
（３）残る横軸画素について同様の手順を繰り返し、波形表示を行う。
【００９７】
デジタル波形表示において、時系列データ１データあたりの処理時間を平均５μ秒、代表データではこの２倍の１０μ秒だったと仮定すると、
・代表データを用いる場合：１０μ秒×１,０２４データ＝１０.２４m秒
・代表データを用いない場合：５μ秒×１,０４８,５７６データ＝５.２４２８８秒となる。
【００９８】
つまり、この例では、代表データを使用することにより、表示を５１２倍高速に実行できることになる。ただし、これは、どの画素を点灯させるかを決定する処理部分だけの時間であり、表示手段に指令を与えて実際に表示を行う部分の時間は含んでいない。
【００９９】
以上、本発明の好適実施例の構成を説明した。しかし、斯かる実施例は、本発明の単なる例示に過ぎず、何ら本発明を限定するものではないことに留意されたい。本発明の要旨を逸脱することなく、特定用途に応じて種々の変形変更が可能であることは、当業者には容易に理解できよう。
【図面の簡単な説明】
【０１００】
【図１】本発明によるデータ記録装置の一実施例を示す構成ブロック図である。
【図２】データ収集手順を説明する図である。
【図３】データ収集手順を説明する図である。
【図４】本発明の実施例における代表データ番号、最小値、最大値の関係を示す図である。
【図５】従来のデータ記録装置の構成ブロック図である。
【図６】アナログデータ表示例を示す図である。
【図７】アナログ時系列データ例を示す図である。
【図８】デジタルデータ表示例を示す図である。
【符号の説明】
【０１０１】
１      Ａ／Ｄ変換器
２      サンプリング手段
３      制御手段
４      表示手段
５      操作手段
６      記憶手段
７      代表データ生成手段（アナログ用）
８      代表データ生成手段（デジタル用）
【図１】
2006308345.tif 000003
【図２】
2006308345.tif 000004
【図３】
2006308345.tif 000005
【図４】
2006308345.tif 000006
【図５】
2006308345.tif 000007
【図６】
2006308345.tif 000008
【図７】
2006308345.tif 000009
【図８】
2006308345.tif 000010