看板 Electronics 關於我們 聯絡資訊
最近在自學FIR數位濾波器 對於"濾波器階數越高"產生的一些現象感到好奇 雖然階數越高的濾波器通帶與阻帶的界限劃分越明顯 也越接近理想濾波 但是不是也會對原訊號產生越大的改變呢(失真?) 以下是我用程式語言實際數位濾波的情形:(使用不同階數的 低通濾波器 原訊號:60 Hz 混合 400 Hz http://i.imgur.com/M2BByvq.png 5階數位濾波器 可看到有濾波效果但很差 http://i.imgur.com/anq3cPG.png 7階數位濾波器 400 Hz已經被濾掉絕大部分 http://i.imgur.com/hvZJDcZ.png *15階 http://i.imgur.com/eawQGJH.png *31階 http://i.imgur.com/DO4mJJ0.png *想發問的重點 在60Hz周圍的訊號強度 為何開始高突起來?? 不像5階7階周圍是平坦的 是因為原訊號受濾波器影響導致的嗎? 如果是, 那該如何在 濾波器階數與濾波效果 之間做取捨? 61階 頻譜開始變形了 http://i.imgur.com/IksfHqh.png 請各位前輩不吝解答 或是給個方向 謝謝! >>> 補上impulse response 7階 http://i.imgur.com/9cjraRp.png 15階 http://i.imgur.com/Sj0gWxI.png 31階 http://i.imgur.com/X4klbMh.png 61階 http://i.imgur.com/VySbFtk.png >>> 忘了提到一點 我的濾波器初始條件都是給0 也就是說假設 y[n] = x[n] + x[n-1] + x[n-2] + x[n-3] x[n-1]~x[n-3] 都是先給0 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.27.12 ※ 文章網址: http://www.ptt.cc/bbs/Electronics/M.1411216171.A.F18.html
ultimachen: 看impulse response轉頻域會比較清楚 09/20 21:26
bxxl: 你是不是只取一小段時間來作FFT? 愈高階的filter尾巴拖愈長 09/20 21:52
bxxl: 可能response超過你取的window之外,被你砍掉了吧 09/20 21:52
bxxl: 可能要把code的細節寫出來才能找問題 09/20 21:53
※ 編輯: alrightwill (140.112.27.12), 09/20/2014 21:58:58
bxxl: 頻譜是用來看steady state的,你前面的暫態部份影響太大導致 09/20 22:03
bxxl: 你可以改成灌256點進去,取後面128點來做fft,這樣就避開暫態 09/20 22:04
bxxl: 這樣應該到128階不會有問題 09/20 22:05
alrightwill: 一直沒想到避暫態這問題~ 調整後正常多了,萬分感謝! 09/21 17:41