題:
設計一個濾波器,允許低於5 kHz的頻率自由通過,但所有高於5.2 kHz的頻率必須不可檢測
Tamir Shklaz
2018-03-10 20:32:15 UTC
view on stackexchange narkive permalink

這個問題的最大挑戰是可笑的滾降率。

我假設如果信號增益為-20 dB,則無法檢測到信號。這意味著在200 Hz的過渡帶內,信號強度需要降低20 dB。

如果我的計算正確,則此濾波器要求滾降速率為1200 dB / dec。這需要60極,這顯然是不可行的。

我想使用一個模擬有源濾波器,使通帶的紋波最小。大的相移不是太重要。

一種可能的解決方案是使用5.2 kHz的陷波濾波器。但是,陷波濾波器帶寬以上的頻率仍未得到充分濾波。

請指出我的邏輯中的任何缺陷或提出潛在的解決方案。謝謝。

使用橢圓濾鏡
稱無法檢測到-20dB相當困難
您是如何獲得4500 dB /十倍頻程的?\ $ \ log_ {10} \ frac {5.2} {5} = 0.017 \ $,其值接近1200 dB /十倍頻程。
@DaveTweed-他用4500除以20。
@WhatRoughBeast ???我意識到他將4500用20除以225。我要挑戰的是他如何首先獲得4500。
您希望塔米爾得到什麼樣的答案?模擬無源/有源?數字IIR / FIR?波數字濾波器?FFT +刪除多餘的東西+ IFFT?
多少通帶紋波可以接受?
也許您可以使用Daubechies小波包。Daubechies以低通濾波器的通帶最大平坦度(正交濾波器對)而聞名。您將需要設計子帶分解,以適合5-5.2 kHz的精細粒度,但這將是主要工作。您不必細分的每個頻率區域都將節省一些計算。那基本上就是所有遠離“ 5-5.2 kHz”的區域。
“在通帶中具有**最小**波紋”-“最小”不是規範。
這裡的缺陷在於沒有明確的規範。“自由”是什麼意思?什麼是“無法檢測”?什麼是“最小”?什麼是“不太重要”?這是工程,而不是戲劇。規格需要數字。面對如此繁瑣的“規範”,工程師應該做的第一件事就是弄清楚他們實際上需要設計什麼。在這一點上,您不知道需要設計什麼,而做出假設總是會給您帶來麻煩。
過去,我們的無線電火腿使用晶體機械過濾器來滿足這些極端要求。您需要定義“不可更改”。
六 答案:
user110971
2018-03-11 00:19:06 UTC
view on stackexchange narkive permalink

您已假定濾波器的每個濾波器階次滾降為20dB / dec。並非所有過濾器類型都這樣。

讓\ $ f_0 = 5 \ mathrm {kHz} \ $和\ $ f _ {\ mathrm {stop}} = 5.2 \ mathrm {kHz} \ $。然後$$ \ frac {f _ {\ mathrm {stop}}} {f_0} = 1.04。$$

看看來自維基百科文章的四階橢圓濾波器。 elliptic

儘管它不能完全滿足您的要求,但您可以看到它是可行的。高階橢圓濾波器可以滿足您的要求。

您應該記住,橢圓濾波器會干擾信號的相位。由於您沒有提及相位限制,因此我認為橢圓濾波器是合適的。

這不是一個壞主意。如果3dB通帶紋波和最大值,則六階橢圓LPF具有足夠陡峭的過渡斜率。在5200Hz及更高頻率下允許-20dB洩漏。結果是由濾波器計算器得到的,我只輸入了不同的階數和極限,直到出現適當的頻率響應。六階意味著只有三個二階塊級聯。不知道,在實踐中,它會以通常的元件公差作為模擬運算放大器濾波器來實現。這需要更多的模擬。
嗨,謝謝你的回答。只是出於好奇,當我看維基百科時,兩極似乎都放在省略號上,這是名稱的來源還是一個巧合?
@mathreadler我相信這個名字來自橢圓有理函數,它出現在橢圓濾波器的傳遞函數中。橢圓濾波器的極點是雅可比橢圓餘弦函數的函數。因此,它們位於橢圓上。
Olin Lathrop
2018-03-11 00:28:36 UTC
view on stackexchange narkive permalink

這種急劇下降需要數字濾波器。甚至不要考慮模擬。您需要使用正弦函數對輸入進行卷積。sinc函數的寬度(內核點數)定義了阻帶衰減。

我還沒有完成數學運算,但是一些非常快速的計算(可能做得不好,您的工作沒有做得很好)表明,如果以20 kHz採樣,可能需要幾百個點。20 kHz時200個點表示4 MHz的MAC速率。這是可行的,實際上遠低於現代DSP所能做到的。這意味著您的問題很容易解決。像E系列dsPIC這樣的東西可以做到這一點,如果您只是在尋找DSP功能,那是相當低端的。

這實際上是一個FIR濾波器。快速仿真表明,具有矩形窗口的128抽頭濾波器就足夠了。該係數取自理想5100Hz LPF的正弦脈衝響應。第一個旁瓣約為-20dB。5250Hz(從濾波器計算器看到)
@user:好的,這意味著它實際上比我上面的粗略估計要容易一些。我可能會使內核稍微寬一些,以留出一些餘地,尤其是因為即使在適度DSP的能力範圍內,它也完全可以滿足要求。
有一些非常好的過濾器資源和要使用的窗口功能:我個人喜歡http://www.dspguide.com/
user287001
2018-03-10 21:00:36 UTC
view on stackexchange narkive permalink

如果允許較大的延遲或處理記錄的信號,則只需執行FFT,刪除不需要的分量並反轉變換即可。您必須使用適當的窗口功能截斷fft,以使振鈴可接受。

我認為對於這樣狹窄的過渡帶,您需要更多地說明如何選擇窗口函數以使該答案對於解決問題很有用。
bobflux
2018-03-11 03:44:02 UTC
view on stackexchange narkive permalink

我會選擇一個音頻編解碼器芯片(ADC + DAC),將ADC數字輸出路由到DAC輸入,並將採樣率設置為10kHz。

這些芯片已經包含您需要的數字濾波器引擎。快速檢查數據表似乎可以確認您將獲得所需的濾波器性能。

您確定嗎?
不確定100%,但我看不出有任何理由不能與sigma delta編解碼器一起使用,有些可以採樣到8kHz ...
但是我的意思是為什麼您相信它會拒絕不想要的頻率,而不是給它們造成混淆?
常見的音頻ADC是具有巨大過採樣係數的sigma delta,其後是清晰的數字濾波器。這些大多數將從Fs = 8k到96-192k。通過在ADC之前進行簡單的一階低通避免混疊,並通過過採樣來解決。在正確的時鐘頻率下,它們應在Fs = 10kHz左右正常工作。
mathreadler
2018-03-11 18:07:04 UTC
view on stackexchange narkive permalink

使用好的傳統解決方案,橢圓濾波器,(短時間)FFT等,您已經有了許多不錯的答案,因此我想我可以從子帶編碼/小波變換世界中添加一些東西。

子帶編碼是指將頻譜細分為“箱”,這些箱中的每個箱都有自己的關聯濾波器。頻段越窄,時域上的濾波器越自然(自然)-但是在我們不需要頻段很緊的區域,我們可以使用真正短的&便宜的廉價濾波器來解決。

小波是函數,它們是特定類型的子帶濾波器的結果,這些子帶濾波器是通過迭代濾波然後進行子採樣而生成的。

想法是找到感興趣的子帶,這將使我們可以最大程度地壓縮計算,但仍可以在感興趣的帶上獲得良好的粒度。

三個級別的Daubechies 12 tap數據包分解示例(維基百科):

Enter image description here

然後我們可以有選擇地匯總這些內容,以獲得所需的響應。而我們不想添加的那些-我們甚至不必計算!我們將需要更薄的,接近5-5.2 kHz頻段的天線,以使其具有足夠陡峭的性能。但是另一方面,遠離5-5.2 kHz頻段,我們僅需進行一些細分即可。

這更多的是廣告,而不是答案。
@HarrySvensson我可以嘗試更具體一些,但如今我沒有那麼多的空閒時間,因為我以前不得不改善答案。
analogsystemsrf
2018-03-10 23:16:02 UTC
view on stackexchange narkive permalink

如果您可以保證正弦輸入,那麼單穩態單穩態(74121)就足夠了。或可重新觸發的122/123。

在74121/122/123之前使用比較器

某些MCU包含模擬比較器作為其外設。一旦轉換為方波,如果MCU具有XTAL穩定時鐘,則可以使用計時器等檢測5,000Hz以上/以下。不需要溫度敏感的單穩態。

有趣,但是什麼使您認為輸入可能是正弦的?在沒有任何特殊原因的情況下做出該假設似乎很不恰當。
我認為,將他的回答的前4個詞定為“如果可以保證”,那麼這是一個新穎的解決方案。
我使用這種方法(可重新觸發的74123)來檢測防滑制動系統中的車輪鎖死;當74123超時時,液壓缸從2N3055驅動,以使製動器產生脈衝。由於液壓時間常數,我們每秒僅收到約2個脈衝。


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...