今回は、今までお話しした内容(デルタ関数や畳み込みなど)を基にして、時系列信号のサンプリングに関してお話しします。
センサからなどの時間信号をディジタル信号処理するためには、そのアナログ信号を一定間隔毎にディジタル値(数値データ)に変換する必要があります。この処理をサンプリング(標本化)、その一定間隔をサンプリング周期(その逆数をサンプリング周波数)と呼びます。
-
図1 時間信号とそのサンプリング
図1は、左側のアナログ時間信号をサンプリング周期τ (s)でサンプルした例で、右側のドット(・)の点における数値列だけが残ることになります。この場合ではサンプリング周波数は、1/τ (Hz)です。
さて、元のアナログ信号に含まれる情報を欠落することなく、サンプルするためにはサンプリング周波数をどれくらいとすればよいのでしょうか? 直感的に考えれば、大きなサンプリング周波数(すなわち細かい間隔)でサンプルすればよいと思われますが、処理するデータ数がむやみに多くなり、好ましくないでしょう。今回のテーマは、サンプリング周波数はどのように決めるのがよいかという点に関する話です。
時間信号のサンプリングを説明する準備として、デルタ関数(インパルス関数)の性質について1つ追加します。
「等間隔のインパルス列のフーリエ変換は同じように等間隔のインパルス列となる」
ことです。
単位インパルス関数δ (t)を周期τ毎に並べたインパルス列を;
.................................(1)
とすると、そのフーリエ変換は;
.................................(2)
-
図2 等間隔τのインパルス列とそのフーリエ変換
この性質の証明をします。
式(1)のはが周期τで繰り返す周期関数となり、その複素フーリエ係数cnは(インパルス関数の性質により);
.................................(3)
となり;
.................................(4)
と書き換えることができます。
これから、式(4)のフーリエ変換は;
と式(2)を導きだすことができます。
図2にあるように、周期がτ間隔で続くインパルス列時系列のフーリエ変換は、周波数間隔が1/τで続く周波数軸上のインパルス列となります。
図3は、サンプリング周期τで任意の時間信号x(t)をサンプルした生成したサンプル化時系列信号 のフーリエ変換を前回話した畳み込みにより導出した説明図です。図3の左側の図は時間領域で、右側の図は周波数領域となっています。
-
図3 周期τでサンプルされた時系列信号のフーリエ変換を畳み込みにより求める説明図
以下、この図について、説明します。
ここで、時間信号x(t)(図3-(a))の周波数成分は、最大fm(Hz)まで(すなわち帯域制限されている)でそれ以上含まないと仮定します。(図3-(b))この仮定は、理論的には必要ないですが、現実的に扱う時間信号は有限とみなしてよいので、このように仮定します。
時間信号x(t)をサンプリング周期τでサンプルすると、その時系列は;
x(τ)、x(2τ)、x(3τ)、・・・・x(nτ)、・・・
となります。この時系列信号は;
.................................(5)
と表すことができます。すなわち、x(t)のサンプル時系列は、等間隔τで無限に続くインパルス列でその振幅は同時刻のx(t)の値で与えられます。図3では、(a)と(c)との積である(e)となります。
次に、周波数領域に移ります。
X(f)は時間信号x(t)のフーリエ変換(図3-(b))で、インパルス列(図3-(c))のフーリエ変換も上記で説明したように周波数軸上でのインパルス列(図.3-(d))となります。
前回説明したように、時間軸上での積は周波数軸上では畳み込み演算(周波数畳み込み定理)に対応します。それ故、サンプル時系列信号 のフーリエ変換は図3の(f)のようにX(f)と周波数軸上のインパルス列との畳み込みとなり、サンプリング周波数1/τ(Hz)で繰り返す周期的関数となります。
この図3の例では、時間信号の周波数帯域fmに比べてサンプリング周波数(1/τ)が充分大きい(サンプリング周期τが充分小さい)場合でしたが、そうでない場合を考えて見ます。サンプリング周期が大きくなってくると周波数インパルスの間隔が狭くなってくるので、図4のように、畳み込み同士が重なり合う現象がおき、フーリエ変換の結果に歪みが生じます。このような現象をエイリアシング(折り返し)、そしてこの歪みをエイリアシング歪みと呼びます。
図3における(f)から、重ならないようにするためには、すなわち;
.................................(6)
となるようにサンプリング周波数1/τを選ぶ必要があります
一般に、任意の時間関数x(t)がfmで帯域制限されていてかつ式(6)を満たすサンプリング周波数1/τでサンプルするならば、そのサンプル時系列信号は式(5)だけで情報を欠落することなく一意的に決定することができます。そしてそのフーリエ変換の結果X(f)も正確に求めることができます。
この時、下記の式でサンプルされた数値列x(nτ)から、時間連続関数x(t)が求められます。
-
このテキストはサンプルです。文字の大きさ、量、字間、行間等を確認するために入れています。
.................................(7)
この関係を、サンプリング定理と呼びます。
通常FFTアナライザで周波数分析したい時間信号は、未知の信号でその上限の周波数fmは不明です。そこで、サンプリング周波数fsを適当に決めるしかありません。この場合では、分析できる最大の周波数はfs/2となりこの周波数をナイキスト周波数と呼びます。
もし、信号の上限周波数fmよりナイキスト周波数fs/2が小さいならば折り返し歪みが生じます。この歪みが生じないようにFFTアナライザでは、ナイキスト周波数fs/2で帯域制限するローパスフィルタを装備しています。これを、アンチエイリアシングフィルタ(折り返し防止フィルタ)と呼びます。
-
図4 エイリアシング現象が生じた例
最後に、まとめです。
- アナログ信号をディジタル信号処理するためには、一定時間間隔でディジタル値に変換する必要がありその処理をサンプリング(標本化)、その一定間隔をサンプリング周期(逆数をサンプリング周波数)と呼びます。
- 等間隔のインパルス時間列のフーリエ変換は、周波数軸上で同じように等間隔のインパルス列となります。
- 周波数帯域fmで帯域制限されている時間信号を正しくサンプリングするためには、そのサンプリング周波数は、1/2 fm以上でなければならない。これをサンプリング定理と呼びます。
- サンプリング定理を守らないでサンプルすると、エイリアシング歪みが生じて正しくそのスペクトルを求めることができなくなります。
- このエイリアシング現象を防止するために、FFTアナライザではサンプリング周波数に連動した折り返し防止フィルタを装備しています。
【キーワード】
サンプリング、標本化、サンプリング周期、サンプリング周波数、デルタ関数、インパルス関数、畳み込み、周波数畳み込み定理、サンプリング定理、ナイキスト周波数、アンチエイリアシングフィルタ、折り返し防止フィルタ
------------------------------------------
【参考資料】
- 「高速フーリエ変換」E. ORAN BRIGHAM著 科学技術出版社
- 「ディジタルフーリエ解析(I)-基礎編-」城戸健一 コロナ社
- 「スペクトル解析」日野幹雄著 朝倉書店
(2013年1月24日発行メールマガジンより抜粋)