0

システムの 800000 の入力および出力データ サンプルの 2 つの配列があります。0 と 10 ボルトの間で動作する一種のオーブンのシステム。サンプル時間は 0.001 秒です。

このシステムのモデルを特定する必要がありますが、まず、データが明らかに汚れていることを考えると、ノイズをフィルタリングしたいと思います。

Matlab の System Identification Toolbox を使用してどのように行うことができますか? さらに、ノイズを除去するためのカットオフ周波数を推定するにはどうすればよいですか?

前もって感謝します。

PS:これは少し話題から外れているため、ここに回答を投稿してください。ありがとうございます。

4

2 に答える 2

0

最も単純なケースでは、ノイズは白いガウス分布としてモデル化されます。音響エネルギーを推定すると、次のように呼び出すことでダミーの騒音を出すことができます。

noise = A*randn(1,N); 

ここで、Aは振幅、Nはサンプルカウントです。次に、この信号のfftを取得し、入力信号のfftから減算して、逆fft(ifft)を取得します。

于 2013-03-22T11:16:07.247 に答える
0

カットオフ周波数は、サンプリング時間またはサンプリング周波数によって直接指定されます。サンプリング周波数は 1/(サンプリング時間) であり、関心のある最高周波数の係数を少なくとも 2 倍する必要があります: http://en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem

f_s = 1/T_s >= 2*f_cutOff

サンプリング周波数が十分に高い場合は、同じ周波数ドメイン処理を行うことができます。最も簡単な方法は、周波数領域を調べることです (関数 fft() を使用)。そして、最初にノイズの高いコンポーネントがある場所を確認してください。次に、これらのコンポーネントを除外し (ゼロ化)、時間領域に戻します (関数 ifft() を使用)。

于 2013-03-22T10:25:04.333 に答える