印ライター:mpcsp079さん(最終更新日時:2016/5/6)投稿日:2012/12/1
.
■
デジタルフィルタで炉はする方法でーーーーーーーす。
■
ローパスフィルタ
H(s)=a/(s+a)
で炉はすることを考えます。aはカットオフ周波数をf0とすれば2πf0です。
s=(2/T)(1-z)/(1+z)
と、代入することでデジタルフィルタとなります。Tはサンプル周期です
H(z)=a/((2/T)(1-z)/(1+z)+a)
=(a*(1+z))/((2/T)*(1-z)+a*(1+z))
=(a+az)/((2/T+a)+(aー2/T)*z)
=(1+z)/((2/(Ta)+1)+(1ー2/(Ta))*z)ーー(1)
■
これをエクセルデータにあてはめます。
(1)式でTaがエクセルデータ上でどうなるかがわかればいいのです。
エクセルの1コマをTとし、正弦波の一周期のデータの数をNとします。
すると、
周波数F=1/(T*N)
カットオフ周波数f0をFの5倍にしたければ、
a=2π*5/(T*N)
Ta=2π*5/N
(1)式にこのTa値をいれればOKです。
■
(1)式のエクセルでの計算法
Y*((2/(Ta)+1)+(1ー2/(Ta))*z)
=X*(1+z)
より、
Y(n-1)*(1ー2/(Ta))+Y(n)*(2/(Ta)+1)
=X(n)+X(n-1)
Y(n)=(X(n)+X(n-1)-Y(n-1)*(1ー2/(Ta))/(2/(Ta)+1)
この式が答です。
X(n)という数列は、測定データ列です。Y(n)は雑音の炉はされた結果
です
■
エクセルで検証しました。
左上元の正弦波、周期100コマ
左下、ノイズ入り、周期3コマ
右下、上のデジタルフィルタ入れたもの。
a=元正弦波周波数の5倍の周波数*2π
です