8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 iir 필터 설계 (d)...

19
8 IIR 필터 설계 (D) 8.3 아날로그- 디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation) 아날로그 필터로부터 디지털 필터를 유도하기 위해 널리 사용되는 매우 간단한 변 환은 적분에 기본을 둔 쌍일차 변환 (bilinear transformation) 이다. 쌍일차 변환은 s 평면에 있는 전체의 j 축을 z 평면에 있는 일회전의 단위원으로 사상하는 변수 s 와 z 사이의 대수변환인 쌍일차 변환을 사용하므로써 문제가 되는 에일리어싱현상 을 방지한다. 로 사상하기 때문에 연속시간과 이산시간 주 파수 변수 사이의 변환은 비선형일 수 밖에 없다. 그러므로 이 기술은 주파수축의 대응하는 휘어짐(wraping)이 허용범위를 벗어나지 않는 상황에만 사용한다. 이 변환 은 적분에 사용된는 사다리꼴 법칙 (trapezoidal rule) 으로부터 전개되었다. 다음 식 에 대해 양변에 적분을 취하면, 다음과 같은 결과를 얻는다. 이 적분은 사다리꼴 법칙을 사용하여 근사화할 수 있다. 따라서, 일반적인 이산시간 변수로 정의하면 의 관계를 얻는다. 이 식에 변환을 취하면

Upload: others

Post on 17-Oct-2019

43 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

제 8 장 IIR 필터 설계 (D)

8.3 아날로그-디지털 필터 변환 (2)

쌍일차 변환(bilinear transformation)

아날로그 필터로부터 디지털 필터를 유도하기 위해 널리 사용되는 매우 간단한 변환은 적분에 기본을 둔 쌍일차 변환 (bilinear transformation)이다. 쌍일차 변환은 s 평면에 있는 전체의 j 축을 z 평면에 있는 일회전의 단위원으로 사상하는 변수 s 와 z 사이의 대수변환인 쌍일차 변환을 사용하므로써 문제가 되는 에일리어싱현상

을 방지한다. 를 로 사상하기 때문에 연속시간과 이산시간 주파수 변수 사이의 변환은 비선형일 수 밖에 없다. 그러므로 이 기술은 주파수축의 대응하는 휘어짐(wraping)이 허용범위를 벗어나지 않는 상황에만 사용한다. 이 변환은 적분에 사용된는 사다리꼴 법칙 (trapezoidal rule)으로부터 전개되었다. 다음 식

에 대해 양변에 적분을 취하면, 다음과 같은 결과를 얻는다.

이 적분은 사다리꼴 법칙을 사용하여 근사화할 수 있다. 따라서,

일반적인 이산시간 변수로 정의하면

의 관계를 얻는다. 이 식에 변환을 취하면

Page 2: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

로 된다. 윗식의 아날로그 상대는

이다. 여기서 이다. 따라서, 아날로그에서 디지털 변환은 다음 식들로 치환해서 이룰 수 있다.

전달함수 관점에서 이것은 아날로그 전달함수에 다음식을 사용하여 치환하는것과 같다.

여기서 는 파라미터이다. 이 변환의 또 다른 이름은 선형 분수 변환(linear fractional transformation)이다. 그 이유는 분수의 형태를 없앴을 때 다음과 같은 식을 얻을 수 있기 때문이다.

이 식은 어떤 한 변수가 고정되면 나머지 한 변수에 대한 일차식이 된다. 즉, 와 에 대한 쌍일차(bilinear)인 것이다. 식 (8.26) 의 복소평면 사상을 그림 8.15에 나

타내었다. 이 그림으로부터 다음과 같은 사실을 관찰할 수 있다. 1. 식 (8.26)에서 라 하면,

그러므로,

Page 3: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

2. 왼쪽 반평면 전체는 단위원 안쪽으로 사상한다. 그러므로, 이것은 안정적인 변환이다. 3. 허수축은 단위원위로 일대일 사상을 한다. 그러므로, 주파수 영역에서 에일리어싱이 없다.

그림 8.15 쌍일차 변환의 복소평면 사상

식 (8.27) 에서 이라 하면 크기가 1이 되기 때문에, 다음과 같은 식을 얻는다.

를 의 함수로 풀게 되면 다음과 같은 식을 얻을 수 있다.

이 식은 가 와 비선형적인(즉, 휘어지는(warped)) 관계를 가짐을 보여준다. 그러나, 에일리어싱은 없다. 식 (8.28) 을 일컬어 가 로 미리 휘어졌다(pre-warped)라고 한다. 대표적인 주파수선택 연속시간 근사는 버터워스, 체비셰프, 타원형 필터이다. 이들 연속시간 근사법의 설계공식이 있기 때문에 설계절차는 단순해진다. 버터워스 아날로그 펄터는 통과대역과 정지대역에서 단조함수적이다. 제 1형 체비셰프 필터는 통과대역에서 등리플 특성을 가지고 정지대역에서는 단조적으로 변한다.혹은 그 역도 성립힌다. 타원형 필터는 통과대역과 정지대역에서 등리플적이다. 제 2형의 체비셰프 필터는 통과대역에서 단조적이고 정지대역에서 등리플적이다. 이 필터를 쌍일차 변환에 의해 디지털 필터로 사상할 때, 이 성질들은 보존된다. 쌍일차 변환은 구분적상수(piecewise-constant) 크기응답 특성을 s 평면에서 z 평면으로 사상하는데 사용할 수 있지만, 필터의 위상 응담이 휘어짐으로써 주파수 축

Page 4: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

에서의 왜곡은 자명해진다.

? 예제 8.14 쌍일차 변환을 사용하여 를 디지털 필터로 변환하여라.

로 한다. ? 예제 8.15 쌍일차 변환을 이용하여 예제 8.14의 시스템 함수를 변환하여라. <이장 뒤의 CEMTool 구현에서 예제 8.15 참조> 이 필터는 앞의 예제와 같이

이다. 다음은 CEMTool 로 계산된 결과입니다. 예제 8.15의 해 CEMTool>> c = [1,1]; d = [1,5,6]; T = 1; CEMTool>> [b,a] = bilinear(c,d,T) b = 0.1500 0.1000 -0.0500 a = 1.0000 0.2000 0.0000

다음은 MatLab 로 계산된 결과입니다. 예제 8.15의 해

>> c = [1,1]; d = [1,5,6]; T = 1; >> [b,a] = bilinear(c,d,T) b = 0.1500 0.1000 -0.0500 a = 1.0000 0.2000 0.0000

Page 5: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

설계 과정

주파수 선택 IIR 아날로그 필터에 대한 주요한 근사법에는 버터워스, 체비셰프, 타원함수 근사법이 있다. 이들 방법의 상세한 사항은 Guillemin(1957), Daniels(1974), Weinberg(1975), Lam(1979)에서 찾아 볼 수 있다. 이들 방법은 일반적으로 저역통과 필터 근사에 의하여 설명되고 발전되어 있다. 기본적인 IIR 근사법의 성질을 알아보기 위하여, 기본적인 방법으로 필터사양을 실현하는 과정을 먼저 알아보자. 디

지털 저역통과 필터의 사양 가 주어지면, 먼저 를 결정한다. 이 과정에 필요한 단계들은 다음과 같다.

1. 를 선택한다. 이 값은 임의로 정할 수 있다. 여기에서는 로 한다.

2. 차단 주파수 와 를 미리 휜다. 즉, 식 (8.28)을 사용하여 와 를 계산한다.

3. 사양 를 만족시키는 아날로그 필터 를 설계한다. 이미 앞 절에서 이것을 하는 방법을 설명하였다. 4. 마지막으로,

라고 놓은 후, 이 식을 의 유리함수 형태로 간단히 정리한다. 다음의 예제들에 위의 아날로그 원형 필터의 설계 과정을 적용해 보자. ? 예제 8.16 예제 8.11의 디지털 버터워스 필터를 설계하여라. 사양은 다음과 같다.<이장 뒤의 CEMTool 구현에서 예제 8.16 참조>

다음은 CEMTool 로 계산된 결과입니다. 예제 8.16의 해

Page 6: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

CEMTool>> /* Digital Filter Specifications: */ CEMTool>> wp = 0.2*pi; /* digital Passband freq in Hz */ CEMTool>> ws = 0.3*pi; /* digital Stopband freq in Hz */ CEMTool>> Rp = 1; /* Passband ripple in dB */ CEMTool>> As = 15; /* Stopband attenuation in dB */ CEMTool>> /* Analog Prototype Specifications: Inverse mapping for frequencies */ CEMTool>> T = 1; Fs = 1/T; /* Set T=1 */ CEMTool>> OmegaP = (2/T)*tan(wp/2); /* Prewarp Prototype Passband freq */ CEMTool>> OmegaS = (2/T)*tan(ws/2); /* Prewarp Prototype Stopband freq */ CEMTool>> /* Analog Butterworth Prototype Filter Calculation: */ CEMTool>> [cs,ds] = butlpf(OmegaP,OmegaS,Rp,As); *** Butterworth Filter Order = 6 CEMTool>> /* Bilinear transformation: */ CEMTool>> [b,a] = bilinear(cs,ds,T); CEMTool>> [C,B,A] = drt2cas(b,a) C = 0.0006 B = 1.0000 2.0342 1.0346 1.0000 1.9996 1.0000 1.0000 1.9662 0.9666 A = 1.0000 -0.9459 0.2342 1.0000 -1.0541 0.3753 1.0000 -1.3143 0.7149

설계한 필터는 다시 6차 필터이고, 6개의 영점들을 가지고 있다. 에 있

는 의 6차 영점이 로 사상하므로, 이 6개의 영점들은 이어야 한다. 그러나 컴퓨터의 정밀도 때문에 이 영점들은 정확하게 에 있지 않

다. 그러므로, 시스템 함수 는 다음과 같아야 한다.

주파수 응답 그래프는 그림 8.16에 나타내었다. 이 그래프들과 그림 8.11의 그래프들을 비교해보면, 두 설계가 매우 유사함을 알 수 있다.

Page 7: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

그림 8.16 쌍일차 변환을 이용한 디지털 버터워스 저역통과 필터

다음은 MatLab 로 계산된 결과입니다. 예제 8.16의 해

>> % Digital Filter Specifications: >> wp = 0.2*pi; % digital Passband freq in Hz >> ws = 0.3*pi; % digital Stopband freq in Hz >> Rp = 1; % Passband ripple in dB >> As = 15; % Stopband attenuation in dB

>> % Analog Prototype Specifications: Inverse mapping for frequencies >> T = 1; Fs = 1/T; % Set T=1 >> OmegaP = (2/T)*tan(wp/2); % Prewarp Prototype Passband freq >> OmegaS = (2/T)*tan(ws/2); % Prewarp Prototype Stopband freq

>> % Analog Butterworth Prototype Filter Calculation: >> [cs,ds] = afd_butt(OmegaP,OmegaS,Rp,As); *** Butterworth Filter Order = 6

>> % Bilinear transformation: >> [b,a] = bilinear(cs,ds,T); >> [C,B,A] = dir2cas(b,a) C = 5.7969e-004

Page 8: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

B = 1.0000 2.0327 1.0331 1.0000 1.9996 1.0000 1.0000 1.9676 0.9680 A = 1.0000 -0.9459 0.2342 1.0000 -1.0541 0.3753 1.0000 -1.3143 0.7149

그림: 쌍일차 변환을 이용한 디지털 버터워스 저역통과 필터

? 예제 8.17 예제 8.12 의 디지털 제 1 형 체비셰프 필터를 설계하여라. 사양은 다음과 같다.<이장 뒤의 CEMTool 구현에서 예제 8.17 참조>

다음은 CEMTool 로 계산된 결과입니다. 예제 8.17의 해 실제 구현을 위한 CEMTool 코드는 다음과 같다.

Page 9: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

CEMTool>> /* Digital Filter Specifications: */ CEMTool>> wp = 0.2*pi; /* digital Passband freq in Hz */ CEMTool>> ws = 0.3*pi; /* digital Stopband freq in Hz */ CEMTool>> Rp = 1; /* Passband ripple in dB */ CEMTool>> As = 15; /* Stopband attenuation in dB */ CEMTool>> /* Analog Prototype Specifications: Inverse mapping for frequencies */ CEMTool>> T = 1; Fs = 1/T; /* Set T=1 */ CEMTool>> OmegaP = (2/T)*tan(wp/2); /* Prewarp Prototype Passband freq */ CEMTool>> OmegaS = (2/T)*tan(ws/2); /* Prewarp Prototype Stopband freq */ CEMTool>> /* Analog Chebyshev-1 Prototype Filter Calculation: */ CEMTool>> [cs,ds] = chb1lpf(OmegaP,OmegaS,Rp,As); *** Chebyshev-1 Filter Order = 4 CEMTool>> /* Bilinear trans formation: */ CEMTool>> [b,a] = bilinear(cs,ds,T); CEMTool>> [C,B,A] = drt2cas(b,a) C = 0.0018 B = 1.0000 2.0010 1.0010 1.0000 1.9990 0.9990 A = 1.0000 -1.4996 0.8482 1.0000 -1.5548 0.6493

설계한 필터는 4차 필터이고, 에서 4개의 영점들을 갖는다. 시스템 함수는 다음과 같다.

주파수 응답 그래프는 그림 8.17에 나타내었다. 이 그래프들과 그림 8.12의 그래프들이 유사함을 알 수 있다.

Page 10: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

그림 8.17 쌍일차 변환을 이용한 디지털 제 1형 체비셰프 저역통과 필터

다음은 MatLab 로 계산된 결과입니다. 예제 8.17의 해

>> % Digital Filter Specifications: >> wp = 0.2*pi; % digital Passband freq in Hz >> ws = 0.3*pi; % digital Stopband freq in Hz >> Rp = 1; % Passband ripple in dB >> As = 15; % Stopband attenuation in dB

>> % Analog Prototype Specifications: Inverse mapping for frequencies >> T = 1; Fs = 1/T; % Set T=1 >> OmegaP = (2/T)*tan(wp/2); % Prewarp Prototype Passband freq >> OmegaS = (2/T)*tan(ws/2); % Prewarp Prototype Stopband freq

>> % Analog Chebyshev Prototype Filter Calculation: >> [cs,ds] = afd_chb1(OmegaP,OmegaS,Rp,As); *** Chebyshev-1 Filter Order = 4

>> % Bilinear transformation: >> [b,a] = bilinear(cs,ds,T); >> [C,B,A] = dir2cas(b,a) C = 0.0018

Page 11: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

B = 1.0000 2.0000 1.0000 1.0000 2.0000 1.0000 A = 1.0000 -1.4996 0.8482 1.0000 -1.5548 0.6493

그림: 쌍일차 변환을 이용한 디지털 제 1 형 체비셰프 저역통과 필터

? 예제 8.18 예제 8.12 의 디지털 제 2 형 체비셰프 필터를 설계하여라. 사양은 다음과 같다.<이장 뒤의 CEMTool 구현에서 예제 8.18 참조>

다음은 CEMTool 로 계산된 결과입니다. 예제 8.18의 해 CEMTool>> /* Digital Filter Specifications: */ CEMTool>> wp = 0.2*pi; /* digital Passband freq in Hz */

Page 12: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

CEMTool>> ws = 0.3*pi; /* digital Stopband freq in Hz */ CEMTool>> Rp = 1; /* Passband ripple in dB */ CEMTool>> As = 15; /* Stopband attenuation in dB */ CEMTool>> /* Analog Prototype Specifications: Inverse mapping for frequencies */ CEMTool>> T = 1; Fs = 1/T; /* Set T=1 */ CEMTool>> OmegaP = (2/T)*tan(wp/2); /* Prewarp Prototype Passband freq */ CEMTool>> OmegaS = (2/T)*tan(ws/2); /* Prewarp Prototype Stopband freq */ CEMTool>> /* Analog Chebyshev-2 Prototype Filter Calculation: */ CEMTool>> [cs,ds] = chb2lpf(OmegaP,OmegaS,Rp,As); *** Chebyshev-2 Filter Order = 4 CEMTool>> /* Bilinear transformation: */ CEMTool>> [b,a] = bilinear(cs,ds,T); CEMTool>> [C,B,A] = drt2cas(b,a) C = 0.1797 B = 1.0000 0.5574 1.0000 1.0000 -1.0671 1.0000 A = 1.0000 -0.4183 0.1503 1.0000 -1.1325 0.7183 설계한 필터는 다시 4차 필터이고, 다음과 같은 시스템 함수를 갖는다.

주파수 응답 그래프는 그림 8.18에 나타내었다. 쌍일차 변환을 사용하여 제 2형 체비셰프 디지털 필터를 적절하게 설계하였음을 주목하여라.

Page 13: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

그림 8.18 쌍일차 변환을 이용한 디지털 제 2형 체비셰프 저역통과 필터

다음은 MatLab 로 계산된 결과입니다. 예제 8.18의 해

>> % Digital Filter Specifications: >> wp = 0.2*pi; % digital Passband freq in Hz >> ws = 0.3*pi; % digital Stopband freq in Hz >> Rp = 1; % Passband ripple in dB >> As = 15; % Stopband attenuation in dB

>> % Analog Prototype Specifications: Inverse mapping for frequencies >> T = 1; Fs = 1/T; % Set T=1 >> OmegaP = (2/T)*tan(wp/2); % Prewarp Prototype Passband freq >> OmegaS = (2/T)*tan(ws/2); % Prewarp Prototype Stopband freq

>> % Analog Chebyshev-2 Prototype Filter Calculation: >> [cs,ds] = afd_chb2(OmegaP,OmegaS,Rp,As); *** Chebyshev-2 Filter Order = 4

>> % Bilinear transformation: >> [b,a] = bilinear(cs,ds,T); >> [C,B,A] = dir2cas(b,a) C = 0.1797 B =

Page 14: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

1.0000 0.5574 1.0000 1.0000 -1.0671 1.0000 A = 1.0000 -0.4183 0.1503 1.0000 -1.1325 0.7183

그림: 쌍일차 변환을 이용한 디지털 제 2 형 체비셰프 저역통과 필터

? 예제 8.19 예제 8.13 의 디지털 타원형 필터를 설계하여라. 사양은 다음과 같다.<이장 뒤의 CEMTool 구현에서 예제 8.19 참조>

다음은 CEMTool 로 계산된 결과입니다. 예제 8.19의 해 CEMTool>> /* Digital Filter Specifications: */ CEMTool>> wp = 0.2*pi; /* digital Passband freq in Hz */ CEMTool>> ws = 0.3*pi; /* digital Stopband freq in Hz */

Page 15: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

CEMTool>> Rp = 1; /* Passband ripple in dB */ CEMTool>> As = 15; /* Stopband attenuation in dB */ CEMTool>> /* Analog Prototype Specifications: Inverse mapping for frequencies */ CEMTool>> T = 1; Fs = 1/T; /* Set T=1 */ CEMTool>> OmegaP = (2/T)*tan(wp/2); /* Prewarp Prototype Passband freq */ CEMTool>> OmegaS = (2/T)*tan(ws/2); /* Prewarp Prototype Stopband freq */ CEMTool>> /* Analog Elliptic Prototype Filter Calculation: */ CEMTool>> [cs,ds] = elplpf(OmegaP,OmegaS,Rp,As); *** Elliptic Filter Order =3 CEMTool>> /* Bilinear transformation: */ CEMTool>> [b,a] = bilinear(cs,ds,T); CEMTool>> [C,B,A] = drt2cas(b,a) C = 0.1214 B = 1.0000 -1.4211 1.0000 1.0000 1.0000 0.0000 A = 1.0000 -1.4928 0.8612 1.0000 -0.6183 0.0000 설계한 필터는 3차 필터이고, 다음과 같은 시스템 함수를 갖는다.

(3번째 그래프의 y축 최소값을 -60으로, 4번째 그래프의 y축 최소값을 0으로 조정한) 주파수 응답 그래프를 그림 8.19에 나타내었다. 쌍일차 변환을 사용하여 타원형 디지털 필터를 적절하게 설계하였음을 주목하여라.

Page 16: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

그림 8.19 쌍일차 변환을 이용한 디지털 타원형 저역통과 필터

다음은 Matlab 으로 계산된 결과입니다. 예제 8.19의 해

>> % Digital Filter Specifications: >> wp = 0.2*pi; % digital Passband freq in Hz >> ws = 0.3*pi; % digital Stopband freq in Hz >> Rp = 1; % Passband ripple in dB >> As = 15; % Stopband attenuation in dB

>> % Analog Prototype Specifications: Inverse mapping for frequencies >> T = 1; Fs = 1/T; % Set T=1 >> OmegaP = (2/T)*tan(wp/2); % Prewarp Prototype Passband freq >> OmegaS = (2/T)*tan(ws/2); % Prewarp Prototype Stopband freq

>> % Analog Chebyshev-2 Prototype Filter Calculation: >> [cs,ds] = afd_chb2(OmegaP,OmegaS,Rp,As); *** Chebyshev-2 Filter Order = 4

>> % Bilinear transformation: >> [b,a] = bilinear(cs,ds,T); >> [C,B,A] = dir2cas(b,a) C = 0.1797 B =

Page 17: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

1.0000 0.5574 1.0000 1.0000 -1.0671 1.0000 A = 1.0000 -0.4183 0.1503 1.0000 -1.1325 0.7183

그림: 쌍일차 변환을 이용한 디지털 제 2 형 체비셰프 저역통과 필터

다음은 Matlab 으로 계산된 결과입니다. 예제 8.19의 해

>> % Digital Filter Specifications: >> wp = 0.2*pi; % digital Passband freq in Hz >> ws = 0.3*pi; % digital Stopband freq in Hz >> Rp = 1; % Passband ripple in dB >> As = 15; % Stopband attenuation in dB

>> % Analog Prototype Specifications: Inverse mapping for frequencies >> T = 1; Fs = 1/T; % Set T=1 >> OmegaP = (2/T)*tan(wp/2); % Prewarp Prototype Passband freq >> OmegaS = (2/T)*tan(ws/2); % Prewarp Prototype Stopband freq

Page 18: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)

>> % Analog Chebyshev-2 Prototype Filter Calculation: >> [cs,ds] = afd_chb2(OmegaP,OmegaS,Rp,As); *** Chebyshev-2 Filter Order = 4

>> % Bilinear transformation: >> [b,a] = bilinear(cs,ds,T); >> [C,B,A] = dir2cas(b,a) C = 0.1797 B = 1.0000 0.5574 1.0000 1.0000 -1.0671 1.0000 A = 1.0000 -0.4183 0.1503 1.0000 -1.1325 0.7183

그림: 쌍일차 변환을 이용한 디지털 제 2 형 체비셰프 저역통과 필터

이 사상의 이점은 다음과 같다. (a) 안정적인 설계이다. (b) 에일리어싱이 없다. (c) 변환할 수 있는 필터 형태의 제한이 없다. 따라서, 쌍일차 변환은 여러 컴퓨터 프로그램에서 가장 많이 사용한다.

Page 19: 8.3 아날로그-디지털 필터 변환 (2) - icdevice.co.kr · 제 8 장 IIR 필터 설계 (D) 8.3 아날로그-디지털 필터 변환 (2) 쌍일차 변환(bilinear transformation)