1 / 60

CHAPTER 7 filter design techniques

CHAPTER 7 filter design techniques. 7 .0 introduction 7.1design of discrete-time IIR filters from continuous-time filters 7.1.1 filter design by impulse invariance 7.1.2 filter design by bilinear transform 7.1.3 not low pass filter design and other method

butterfly
Download Presentation

CHAPTER 7 filter design techniques

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CHAPTER 7 filter design techniques 7.0 introduction 7.1design of discrete-time IIR filters from continuous-time filters 7.1.1 filter design by impulse invariance 7.1.2 filter design by bilinear transform 7.1.3 not low pass filter design and other method 7.2 design of FIR filters by windowing.7.3 summary

  2. 7.0 introduction ideal frequency selective filter band-stop filter:notch filter;quality factor of band-pass filter=pass-band width/center frequency

  3. Figure 7.1 impulse response of ideal low-pass filter,noncausal,unrealizable Specifications for filter design :given in frequency domain phase:linear? magnitude:given by a tolerance scheme analog or digital,absolute or relative

  4. absolute specification magnitude response of equivalent analog system passband tolerance 3dB cutoff frequency stopband tolerance Figure 7.2 monotonous descent passband cutoff frequency stopband cutoff frequency

  5. relative specifications:maximum magnitude in passband is normalized to 1, viz. 0dB maximum attenuation in passband minimum attenuation in stopband 3dB cutoff frequency: magnitude response of equivalent analog system: digital specification, finally:

  6. Specifications for bandpass and bandstop filters: up and down passband cutoff frequency, up and down stopband cutoff frequency Design steps: (1)decide specifications according to application (2)decide type according to specification:generally , if the phase is required , choose FIR. (3)approach specifications using causal and stable discrete-time system: viz. design H(z0) or h[n],nonuniform (4)choose a software or hardware realization structure, take effects of limited word length into consideration H(z) or h[n]

  7. 7.1 design of discrete-time IIR filters from continuous-time filters attention:original analog filter and equivalent analog filter is different, their frequency response is not always the same 7.1.0 introduction of analogy filter 7.1.1filter design by impulse invariance 7.1.2 filter design by bilinear transform

  8. 7.1.0 introduction of analog filter comparison: 1.wave 2.the same order, increase performance 3.increase design complexity (A)(C)small aliasing in the impulse invariance design technique

  9. BW design formula: specificationsystem function magnitude frequency function: take the specifications into system function and get the results from equation group: OR confirm the poles of system function: (in the left half plane) get system function:

  10. design a low pass analogy filter: EXAMPLE [N,Wc]=buttord(2000*pi,4000*pi,1,15, 's') [Bs,As]=butter(N,Wc, 's') [H,W]=freqs(Bs,As); plot(W/2/pi,20*(log10(abs(H)))) axis([1000,2000,-16,0]) grid on OUTPUT: N = 4 Wc = 8.1932e+003 Bs = 1.0e+015 * 0 0 0 0 4.5063 As = 1.0e+015 * 0.0000 0.0000 0.0000 0.0014 4.5063

  11. Or:  [N,Wc]=buttord(2000*pi,4000*pi,1,15, 's') [z,p,k]=butter(N,Wc, 's' ) Output: z = Empty matrix: 0-by-1 p = 1.0e+003 * -7.5695 + 3.1354i -7.5695 - 3.1354i -3.1354 + 7.5695i -3.1354 - 7.5695i k = 4.5063e+015

  12. design a low pass cheby analogy filter: EXAMPLE [N,Wc]=cheb1ord(2000*pi,4000*pi,1,15, 's') [Bs,As]=cheby1(N,1,Wc, 's') [H,W]=freqs(Bs,As); plot(W/2/pi,20*(log10(abs(H)))) axis([0,4000,-30,0]) grid on

  13. design a low pass cheby analogy filter: EXAMPLE [N,Wc]=cheb2ord(2000*pi,4000*pi,1,15, 's') [Bs,As]=cheby2(N,15,Wc, 's') [H,W]=freqs(Bs,As); plot(W/2/pi,20*(log10(abs(H)))) axis([0,4000,-30,0]) grid on

  14. EXAMPLE design a high pass analogy filter: [N,Wc]=buttord(4000*pi,2000*pi,1,15, 's') [Bs,As]=butter(N,Wc, 'high','s') [H,W]=freqs(Bs,As); plot(W/2/pi,20*(log10(abs(H)))) axis([0,4000,-16,0]) grid on

  15. S plane Z plane imaginary axis the unit circle poles in left half plane inside the unit circle transformation from analog filter to digital filter: H(s)H(z),viz. mapping from S plane to Z plane, must satisfy: the same frequency response(map imaginary axis to the unit circle); causality and stability is preserved(map poles from left half plane to the inside circle)。

  16. 7.1.1 filter design by impulse invariance according to : conversion formula:

  17. Relationship between poles(causal and stable): relation between frequencies: S plane Z plane

  18. relation between frequency response: when aliasing is small, the frequency response is the same. strongpoint:linear frequency mapping; shortcoming:aliasing in frequency response。 restriction in application:can not used in high-pass and bandstop filter

  19. Design steps: (3) about Td: independent of T; do not influence aliasing; arbitrary value,generally, take 1(attention(1)and(3)have the same value).

  20. EXAMPLE wp=0.2*pi; ws=0.4*pi ap=1; as=12 Td=1; Wp=wp/Td; Ws=ws/Td [N,Wc]=buttord(Wp,Ws, ap , as, 's') [Bs,As]=butter(N,Wc, 's') [Bz,Az]=impinvar(Bs,As,1/Td) [H,W]=freqs(Bs,As); plot(W/pi,20*(log10(abs(H))), 'r*') hold on [H,w]=freqz(Bz,Az); plot(w/pi,20*(log10(abs(H)))) axis([0.2,0.4,-20,0]) grid

  21. design formula: 7.1.2 filter design by bilinear transform design thought:

  22. left half s-plane  inside the unit circle in the z-plane(causality and stability are preserved); imaginary axis of the s-plane the unit circle in z-plane (the same frequency response), one-by-one mapping relation between frequencies:

  23. relation between frequency response: strongpoint:no aliasing; shortcoming:nonlinear。 restriction in application: can not used in differentiator.

  24. design steps: (1) (3) about Td: independent of T; arbitrary value,generally, take 1(attention(1)and(3)have the same value).

  25. EXAMPLE wp=0.2613*pi; ws=0.4018*pi; ap=0.75; as=20; Td=1; Ws=2/Td*tan(ws/2); Wp=2/Td*tan(wp/2) [N,Wc]=buttord(Wp,Ws,ap,as,’s’) [Bs,As]=butter(N,Wc, ‘s’) [Bz,Az]=bilinear(Bs,As,1/Td) [H,W]=freqs(Bs,As); plot(W/pi,20*(log10(abs(H))),’Rx‘) hold on [H,w]=freqz(Bz,Az); plot(w/pi,20*(log10(abs(H)))) ylabel(‘虚线:模拟滤波器幅度[dB] 实线:数字滤波器幅度[dB]’) xlabel(‘虚线:模拟角频率[*π弧度/秒] 实线:数字角频率[*π弧度]’) axis([0.25,0.5,-20,-0.45]) grid

  26. OR wp=0.2613*pi; ws=0.4018*pi; ap=0.75; as=20 [N,wc]=buttord(wp/pi,ws/pi,ap,as) [Bz,Az]=butter(N,wc) [H,w]=freqz(Bz,Az); plot(w/pi,20*(log10(abs(H))))

  27. EXAMPLE [N,Wc]=buttord(0.6,0.5,ap,as) [Bz,Az]=butter(N,Wc, 'high') [H,w]=freqz(Bz,Az); plot(w/pi,20*(log10(abs(H)))) grid

  28. EXAMPLE

  29. [N,wc]=buttord([0.45 0.55],[0.4 0.6],3,10) %双线性变换法 [B,A]=butter(N,wc) [H,w]=freqz(B,A); plot(w/pi,20*(log10(abs(H)))) ylabel(‘20log|H(ejω)| [dB]’) xlabel(‘数字角频率[*π弧度]’) axis([0.4,0.6,-10,0]); grid on Output: N = 2 wc = 0.4410 0.5590 B = 0.0271 0 -0.0541 0 0.0271 A = 1.0000 0 1.4838 0 0.5920

  30. 7.1.3 IIR summary 1.design steps 2. impulse invariance: frequency axis is linear many-to-one mapping , aliasing in frequency response, inapplicable to high-pass filter. bilinear transformation: frequency axis is one-to-one mapping with aberrance, no aliasing in frequency response, inapplicable to differentiator

  31. 7.1.4 frequency conversion Frequency conversion in analog domain:

  32. Frequency conversion in digital domain:

  33. 7.2 design of FIR filters by windowing 7.2.1 design ideas7.2.2 properties of commonly used windows7.2.3 effect to frequency response7.2.4 design step

  34. 7.2.1 design ideas

  35. Gibbs phenomenon: frequency response oscillate at wc. transition width of filer’smainlobe width of window spectrum length and shape of window’s passband-stopband error of filter’ssidelobe amplitude of window spectrum window’s shape The smaller mainlobe width, the narrower transition width of filter’s; The smaller sidelobe amplitude of window spectrum, the smaller relative error of filter’s. M increases mainlobe width of window spectrum minishes filter oscillate more quickly, transition width minishes, relative amplitude of oscillation is preserved. In order to improve relative amplitude of oscillation, we need to change the shape of window’s.

  36. 7.2.2 properties of commonly used windows

  37. A general designation: Blackman window family, except triangular window Figure 7.21

  38. Figure 7.24(a)

  39. (a)-(e) attenuation of sidelobe increases, width of mainlobe increases.

  40. As B increases, attenuation of sidelobe increases, width of mainlobe increases. M=20 B=6 As N increases: attenuation of sidelobe is preserved, width of mainlobe decreases. Figure 7.24(b)(c)

  41. Transition width is a little less than mainlobe width Table 7.1

  42. 7.2.3 effect to frequency response attenuation of window spectrum’s sidelobe attenuation of filter’s stopband width of window spectrum’s mainlobetransition width of filter’s check the table for Blackman window; formulas of Kaiser window: A:attenuation of stopband, Δω:transition width

  43. 7.2.4 design step 1. Write the ideal impulse response: 2.Comfirm the shape of window’s based on attenuation of stopband: (1)check the table for Blackman window (2)calculation for Kaiser window

  44. We can think that the 4 specifications is transformed into: The same with IIR, maybe the specification is equivalent analog one. 3.Comfirm length of window’s based on transition width(M is even): (1) check the table for Blackman window: compute the length of window’s based on width of mainlobe: (2) calculation for Kaiser window : 4.Cut the ideal impulse response 5.

  45. Blackman family Example 1 (1) (2) hamming (3) (4)

  46. (5)validate the frequency response in MATLAB h=fir1(26,0.62, 'high',hamming(27)) H=fft(h,512); plot([0:511]/256,20*log10(abs(H))) axis([0.5,0.7,-50,0]); grid on

  47. (6)correct h=fir1(24,0.665, 'high',hamming(25)) H=fft(h,512); plot([0:511]/256,20*log10(abs(H))) axis([0.5,0.7,-80,0]); grid on h= 0.0001 0.0023 -0.0040 0.0004 0.0104 -0.0170 0.0009 0.0358 -0.0538 0.0014 0.1288 -0.2727 0.3357 -0.2727 0.1288 0.0014 -0.0538 0.0358 0.0009 -0.0170 0.0104 0.0004 -0.0040 0.0023 0.0001

  48. Kaiser family Example 2 Solution1: (1) (2) (3) (4)

More Related