Main Content

ellipord

타원 필터의 최소 차수

설명

예제

[n,Wn] = ellipord(Wp,Ws,Rp,Rs)는 통과대역 리플이 Rp dB보다 크지 않고 저지대역 감쇠량이 최소 Rs dB인 디지털 타원 필터의 최소 차수 n을 반환합니다. WpWs는 각각 이 필터의 통과대역 경계 주파수와 저지대역 경계 주파수입니다. 이러한 주파수는 0 ~ 1에서 정규화된 주파수이며 여기서 1은 π rad/sample에 해당합니다. 이에 대응하는 차단 주파수 Wn의 스칼라(또는 벡터)도 반환됩니다. 타원 필터를 설계하려면 출력 인수 nWnellip에 대한 입력값으로 사용하십시오.

[n,Wn] = ellipord(Wp,Ws,Rp,Rs,'s')는 아날로그 타원 필터에 대한 최소 차수 n과 차단 주파수 Wn을 구합니다. 주파수 WpWs를 초당 라디안 단위로 지정합니다. 통과대역이나 저지대역은 무한대일 수 있습니다.

예제

모두 축소

1000Hz 데이터에 대해, 0Hz부터 40Hz까지의 통과대역 리플이 3dB보다 작게 정의되고 150Hz부터 나이퀴스트 주파수 500Hz까지의 저지대역 리플이 최소 60dB로 정의된 저역통과 필터를 설계합니다. 필터 차수와 차단 주파수를 구합니다.

Wp = 40/500;
Ws = 150/500;
Rp = 3;
Rs = 60;
[n,Wp] = ellipord(Wp,Ws,Rp,Rs)
n = 4
Wp = 0.0800

2차섹션형(SOS)으로 필터를 지정하고 주파수 응답을 플로팅합니다.

[z,p,k] = ellip(n,Rp,Rs,Wp);
sos = zp2sos(z,p,k);
freqz(sos,512,1000)
title(sprintf('n = %d Elliptic Lowpass Filter',n))

Figure contains 2 axes objects. Axes object 1 with title Phase, xlabel Frequency (Hz), ylabel Phase (degrees) contains an object of type line. Axes object 2 with title n = 4 Elliptic Lowpass Filter, xlabel Frequency (Hz), ylabel Magnitude (dB) contains an object of type line.

통과대역 리플이 최대 3dB이고 저지대역 감쇠량이 최소 40dB인 60Hz ~ 200Hz의 통과대역을 갖는 대역통과 필터를 설계합니다. 샘플링 레이트를 1kHz로 지정합니다. 통과대역의 양쪽 모두에서 50Hz의 저지대역 너비를 갖습니다. 필터 차수와 차단 주파수를 구합니다.

Wp = [60 200]/500;
Ws = [50 250]/500;
Rp = 3;
Rs = 40;

[n,Wp] = ellipord(Wp,Ws,Rp,Rs)
n = 5
Wp = 1×2

    0.1200    0.4000

2차섹션형(SOS)으로 필터를 지정하고 주파수 응답을 플로팅합니다.

[z,p,k] = ellip(n,Rp,Rs,Wp);
sos = zp2sos(z,p,k);

freqz(sos,512,1000)
title(sprintf('n = %d Elliptic Bandpass Filter',n))

Figure contains 2 axes objects. Axes object 1 with title Phase, xlabel Frequency (Hz), ylabel Phase (degrees) contains an object of type line. Axes object 2 with title n = 5 Elliptic Bandpass Filter, xlabel Frequency (Hz), ylabel Magnitude (dB) contains an object of type line.

입력 인수

모두 축소

통과대역 코너 (차단) 주파수로, 0에서 1 사이의 값을 갖는 스칼라 또는 요소를 2개 가진 벡터로 지정됩니다. 여기서 1은 정규화된 나이퀴스트 주파수 π rad/sample에 해당합니다.

  • WpWs가 모두 스칼라이고 Wp < Ws인 경우 ellipord는 저역통과 필터의 차수와 차단 주파수를 반환합니다. 필터의 저지대역 범위는 Ws ~ 1이고, 통과대역 범위는 0 ~ Wp입니다.

  • WpWs가 모두 스칼라이고 Wp > Ws인 경우 ellipord는 고역통과 필터의 차수와 차단 주파수를 반환합니다. 필터의 저지대역 범위는 0 ~ Ws이고, 통과대역 범위는 Wp ~ 1입니다.

  • WpWs가 모두 벡터이고 Ws로 지정된 구간에 Wp(Ws(1) < Wp(1) < Wp(2) < Ws(2))로 지정된 구간이 포함된 경우, ellipord는 대역통과 필터의 차수와 차단 주파수를 반환합니다. 필터의 저지대역 범위는 0 ~ Ws(1), Ws(2) ~ 1입니다. 통과대역 범위는 Wp(1) ~ Wp(2)입니다.

  • WpWs가 모두 벡터이고 Wp로 지정된 구간에 Ws(Wp(1) < Ws(1) < Ws(2) < Wp(2))로 지정된 구간이 포함된 경우, ellipord는 대역저지 필터의 차수와 차단 주파수를 반환합니다. 필터의 저지대역 범위는 Ws(1) ~ Ws(2)입니다. 통과대역 범위는 0 ~ Wp(1), Wp(2) ~ 1입니다.

데이터형: single | double

참고

필터 사양이 각 통과대역 또는 저지대역에서 리플이 서로 같지 않은 대역통과 필터 또는 대역저지 필터를 필요로 할 경우, 별도의 저역통과 필터와 고역통과 필터를 설계하고 두 필터를 함께 종속적으로 연결하십시오.

저지대역 코너 주파수로, 0에서 1 사이의 값을 갖는 스칼라 또는 요소를 2개 가진 벡터로 지정됩니다. 여기서 1은 정규화된 나이퀴스트 주파수 π rad/sample에 해당합니다.

데이터형: single | double

통과대역 리플로, dB를 단위로 하는 스칼라로 지정됩니다.

데이터형: single | double

저지대역 감쇠량으로, dB를 단위로 하는 스칼라로 지정됩니다.

데이터형: single | double

출력 인수

모두 축소

가장 낮은 필터 차수로, 정수 스칼라로 반환됩니다.

차단 주파수로, 스칼라 또는 벡터로 반환됩니다.

알고리즘

ellipord[1]에 설명된 타원 저역통과 필터의 차수 예측 공식을 사용합니다. 이 함수는 아날로그 영역에서 아날로그 필터와 디지털 필터 모두에 적용되는 계산을 수행합니다. 디지털 필터의 경우 차수와 고유 주파수를 추정하기 전에 주파수 파라미터를 s 영역으로 변환한 후 이를 다시 z 영역으로 변환합니다.

ellipord는 처음에 원하는 필터의 통과대역 주파수를 1 rad/s(저역통과 필터와 고역통과 필터의 경우) 및 -1 rad/s와 1 rad/s(대역통과 필터와 대역저지 필터의 경우)로 변환함으로써 저역통과 필터 프로토타입을 개발합니다. 그런 다음, 저역통과 필터가 저지대역 사양을 충족하는 데 필요한 최소 차수를 계산합니다.

참고 문헌

[1] Rabiner, Lawrence R., and B. Gold. Theory and Application of Digital Signal Processing. Englewood Cliffs, NJ: Prentice Hall, 1975.

확장 기능

버전 내역

R2006a 이전에 개발됨

참고 항목

| | |