2014-10-31 5 views
1

나는 matlab에 익숙하지만 물론 신호이지만 Butterworth를위한 DT 필터를 설계해야한다는 숙제가있다.Matlab Buttord가 Wn> 1을 반환하는 이유는 무엇입니까?

  • 시끄러운 신호가 노이즈 변수에 저장되고 44100 (FS) Hz의 샘플링 하였다 I이 주어진 파라미터를 갖는다.
    1. 통과 대역 가장자리 : 2500 Hz.
    2. 정지 대역 가장자리 : 4000 Hz.
    3. 통과 대역 Gpbmax에서 최대 이득 : 40dB.
    4. 통과 대역에서 최소 이득 Gpbmin : 37dB.
    5. 정지 대역 Gsbmax에서 최대 이득 : -55dB.

내가 무슨 짓을 :

[n, Wn] = buttord(2500*2*pi, 4000*2*pi, 3, 55, 's'); 
% Wn here is 1.5989e+04, I couldn't execute this without the 's' option. 

[b, a] = butter(n, Wn) 
The cutoff frequencies must be within the interval of (0,1). 

어떤 대답하세요?

+0

참조에 http : //www.mathworks.com/matlabcentral/answers/2557-lowpass-digital-butterworth-filter – Nasser

답변

1

's' 옵션을 사용하고 있으므로 Wn이 rad/s로 반환됩니다 (documentation 참조). butter와 함께 사용하려면 샘플링 주파수로 정상화 할 필요가, 또는 's' 옵션을 사용하지 마십시오뿐만 아니라 's' 옵션을 butter

fs = 2*pi*44100; 
[b, a] = butter(n, Wn/fs); 

또는 사용

[b,a] = butter(n,Wn,'s'); 
+0

이제 오, 감사합니다. – achehab

관련 문제