Sunteți pe pagina 1din 4

11/19/2019

BLT simplified (T=2)

s
(1  z 1 ) 1 s
z 
Digital Signal Processing (1  z 1 ) 1 s
LECTURE 33-35
SARANG C DHONGDI

Example -  p  0 . 25 
Approaches of designing Digital IIR filter Approach 1  s  0 . 55 
• Prewarp the freq specs of digital filter GD(z) • Prewarp the freq specs of digital filter GD(z)
Low pass filter  p  0 . 5 dB
to obtain freq specs of analog filter HD(s). to obtain freq specs of analog filter HD(s). Butterworth
 s  15 dB
• HD(s)  HLP(s) • HD(s)  HLP(s)
p 1
?
1
? N ??
 p  tan k k1
• Design HLP(s) • Design HLP(s) 2
s
 s  tan
• HLP(s)  HD(s) • HLP(s)  GLP(z) 2 H nor ( s ) ? H ( s ) ?

• HD(s)  GD(z) • GLP(z)  GD(z) G ( z ) ??

 p  0 . 25    0 . 4142
Example - p

Approach 1  s  0 . 55   s  1 . 1708
Low pass filter  p  0 . 5 dB
1 1
Butterworth  2 . 82  15 . 84
 s  15 dB k k1
N  2 . 6586  3
1 0 . 203451
H nor (s)  H (s) 
( s  0 . 588 )( s 2  0 . 588 s  0 . 3459 )
( s  1)( s 2  s  1)
0.2034
𝐻 𝑠 =
𝑠 + 1.1760 𝑠 + 0.6915 𝑠 + 0.2034

  0 . 066 (1  z  1 ) 3
  G (z) 
 2 1 1  (1  0 . 259 z 1 )( 1  0 . 67 z  1  0 . 39 z  2 )
 H ( j p )  2N

1  2 
  c  0 . 588
   
1   p  . . . .
  c   G 𝑧 =
. . .

1
11/19/2019

Edge frequencies
1
H nor ( s ) 
( s  1)( s 2  s  1)

1 1
𝐻(𝑗Ω ) = = ⇒ Ω = 0.6619
Ω 𝐴
1+
Ω

0.2899
𝐻 𝑠 =
𝑠 + 1.3238 𝑠 + 0.8762 𝑠 + 0.2899

. . . .
G 𝑧 =
. . .

f p  700 Hz
Example f s  500 Hz
Approach 1
Sampling freq 2000 Hz
[𝑁, 𝑊𝑛] = 𝑏𝑢𝑡𝑡𝑜𝑟𝑑(Ω , Ω , 𝛼 , 𝛼 , ′𝑠′) ‘s’ indicates Analog domain design High-pass filter
[𝐵, 𝐴] = 𝑏𝑢𝑡𝑡𝑒𝑟(𝑁, 𝑊𝑛, ′𝑙𝑜𝑤 , ′𝑠′)
Prewarped edge frequency values to be Chebyshev  p  1 dB
[𝑁𝑢𝑚, 𝐷𝑒𝑛] = 𝑏𝑖𝑙𝑖𝑛𝑒𝑎𝑟(𝐵, 𝐴, 𝑠𝑎𝑚𝑝𝑙𝑖𝑛𝑔𝑓𝑟𝑒𝑞𝐹𝑠)
entered as input.
 s  32 dB
Sampling freq = 1/T (Default T=2)
1 1
 p ??  s ??  p  1,  s  ?? ? ? N ??
k k1
[𝑁, 𝑤𝑛] = 𝑏𝑢𝑡𝑡𝑜𝑟𝑑(0.4142,1.1708,0.5,15, ′𝑠′)

ˆ  tan  p
[𝐵, 𝐴] = 𝑏𝑢𝑡𝑡𝑒𝑟(𝑁, 𝑊𝑛, ′𝑙𝑜𝑤′, ′𝑠′)
[𝑁𝑢𝑚, 𝐷𝑒𝑛] = 𝑏𝑖𝑙𝑖𝑛𝑒𝑎𝑟(𝐵, 𝐴, 0.5)
 H LP , nor ( s ) ? H LP ( s ) ? H HP ( s ) ?
p
2
ˆ  tan  s
 s
2 G HP ( z ) ??

 p 1  0 . 45  ,  p 2  0 . 65 
Approach 1 -> MATLAB Examples
Approach 1  s 1  0 . 3 ,  s 2  0 . 75 
‘s’ indicates Analog domain design
[𝑁, 𝑤𝑛] = 𝑐ℎ𝑒𝑏1𝑜𝑟𝑑(Ω , Ω , 𝛼 , 𝛼 , ′𝑠′)
Bandpass filter  p  1 dB
[𝐵, 𝐴] = 𝑐ℎ𝑒𝑏𝑦1(𝑁, 𝑅, 𝑊𝑛, ′𝑠′)
[𝐵𝑇, 𝐴𝑇] = 𝑙𝑝2ℎ𝑝(𝐵, 𝐴, Ω )
Prewarped edge frequency values to be
entered as input.
Butterworth  s  40 dB
[𝑁𝑢𝑚, 𝐷𝑒𝑛] = 𝑏𝑖𝑙𝑖𝑛𝑒𝑎𝑟(𝐵𝑇, 𝐴𝑇, 𝑠𝑎𝑚𝑝𝑙𝑖𝑛𝑔𝑓𝑟𝑒𝑞𝐹𝑠)
Sampling freq = 1/T
1 1
 p  ?,  s  ? ? ? N ??
ˆ
 ˆ k k1
p 1  ?,  p 2  ?
[𝑁, 𝑤𝑛] = 𝑐ℎ𝑒𝑏1𝑜𝑟𝑑(1,1.9626105,1,32, ′𝑠′)
[𝐵, 𝐴] = 𝑐ℎ𝑒𝑏𝑦1(𝑁, 1, 𝑊𝑛, ′𝑠′) ˆ  ?, 
 ˆ ?
[𝐵𝑇, 𝐴𝑇] = 𝑙𝑝2ℎ𝑝(𝐵, 𝐴, 1.9626105) s1 s2
[𝑁𝑢𝑚, 𝐷𝑒𝑛] = 𝑏𝑖𝑙𝑖𝑛𝑒𝑎𝑟(𝐵𝑇, 𝐴𝑇, 0.5) H LP , nor ( s ) ? H LP ( s ) ? H BP ( s ) ?
ˆ2 ?
BW  ?,  o
G BP ( z ) ??

2
11/19/2019

Approach 1 -> MATLAB


[𝑁, 𝑤𝑛] = 𝑏𝑢𝑡𝑡𝑜𝑟𝑑(Ω , Ω , 𝛼 , 𝛼 , ′𝑠′) ‘s’ indicates Analog domain design
[𝐵, 𝐴] = 𝑏𝑢𝑡𝑡𝑒𝑟(𝑁, 𝑊𝑛, ′𝑠′)
[𝐵𝑇, 𝐴𝑇] = 𝑙𝑝2𝑏𝑝(𝐵, 𝐴, Ω , 𝐵𝑊) Prewarped edge frequency values to be
[𝑁𝑢𝑚, 𝐷𝑒𝑛] = 𝑏𝑖𝑙𝑖𝑛𝑒𝑎𝑟(𝐵𝑇, 𝐴𝑇, 𝑠𝑎𝑚𝑝𝑙𝑖𝑛𝑔𝑓𝑟𝑒𝑞𝐹𝑠) entered as input.

Sampling freq = 1/T

Complete example
IIR BANDPASS FILTER
[𝑁, 𝑤𝑛] = 𝑏𝑢𝑡𝑡𝑜𝑟𝑑(1,2.3617,1,40, ′𝑠′)
[𝐵, 𝐴] = 𝑏𝑢𝑡𝑡𝑒𝑟(𝑁, 𝑊𝑛, ′𝑠′)
[𝐵𝑇, 𝐴𝑇] = 𝑙𝑝2𝑏𝑝(𝐵, 𝐴, 1.18056,0.7777)
[𝑁𝑢𝑚, 𝐷𝑒𝑛] = 𝑏𝑖𝑙𝑖𝑛𝑒𝑎𝑟(𝐵𝑇, 𝐴𝑇, 0.5)

Bandpass specifications Step 1 = Digital freq and prewarped freq

𝑓 = 200𝐻𝑧, 𝑓 = 300𝐻𝑧  p1  0 .4 ,  p 2  0 .6


 s 1  0 . 1 ,  s 2  0 .9
𝑓 = 50𝐻𝑧, 𝑓 = 450𝐻𝑧

𝑆𝑎𝑚𝑝𝑙𝑖𝑛𝑔 𝑓𝑟𝑒𝑞 1000𝐻𝑧


ˆ
 ˆ
p 1  0 . 7265 ,  p 2  1 . 37638
𝛼 = 3𝑑𝐵 ˆ  0 . 15838 , 
ˆ  6 . 3138
 s1 s2
𝛼 = 15𝑑𝐵

Step 2 Verifying all parameters for BP filter Step 3 = LP prototype

ˆ2
sˆ2  
s  P
 
0
ˆ 
BW   ˆ BW  0 . 64988 , ˆ 
sˆ  ˆ  p 1
P2 P1 P2 P1
ˆ 
 ˆ ˆ ˆ  s  9 . 4718233
ˆ  center frequency
 p1 p 2   s1  s 2  1
0
ˆ 2 1
 ˆ 2 
 ˆ 2
ˆ  ˆ ˆ ˆ ˆ2
o
For   0 s    P 0 s1
 p  3 dB
 P1 P 2   s1 s 2  0 ˆ
s1 ( BW )
 s  15 dB

3
11/19/2019

Step 4 = Find order (Butterworth approx) Step 5 = Denorm (substitute cut-off freq)
   
1    
= 9.4721 
 H ( j p )
2

1

1 
 c 1

 H ( j p )
2

1

1 
  c  1 . 7117
𝑘  
2N
1  2   
2N
A2 
 1   p    1   s  
  c     c  
1 [N,wn] = buttord(1, 9.4721,3,15,’s’)
= 5.5468
𝑘
1
1 H LP ( s ) 
𝑁 = 0.7626 ≅ 1 H LP ( s )  s 1 s
s
s 1 s
s 1 . 7117
1
1
𝐻 , (𝑠) = 1 . 7117
𝑠+1 1 H LP ( s ) 
H LP ( s )  s  1 . 7117
s 1

Step 6 = LP to BP conversion Step 7 = Substitution


sˆ  ˆ2 2
s  P
 
0
ˆ ˆ
sˆ P 2   1 . 7117
P1 1 H BP ( s ) 
H BP ( s )  s  1 . 7117 s 2 1
s 1 s 2 1 0 . 64988 s
sˆ2  1 0 . 64988 s
s
ˆs0.64988
0 . 64988 s 1 . 1124 s
H BP ( s )  H BP ( s ) 
s 2  0 . 64988 s  1 s 2  1 . 1124 s  1
H BP ( s )  H LP ( s ) s
s 2 1
0 . 64988 s

Step 8 = BLT
0 . 64988 s 1 . 1124 s 0 . 2452 ( z 2  1) 0 . 3574 ( z 2  1)
G BP ( z )  G BP ( z )  G BP ( z )  G BP ( z ) 
s  0 . 64988 s  1
2
s
z 1 s  1 . 1124 s  1
2
s
z 1 z 2  0 . 5095 z 2  0 . 2852
z 1 z 1

0 . 2452 ( z 2  1) 0 . 3574 ( z 2  1) num =[0.2452 0 -0.2452]; num =[0.3574 0 -0.3574];


G BP ( z )  G BP ( z )  den =[1 0 0.5095]; den =[1 0 0.2852];
z 2  0 . 5095 z 2  0 . 2852 freqz(num,den) freqz(num,den)

Wp = [200 300]/500; Ws = [50 450]/500; Wp = [200 300]/500; Ws = [50 450]/500;


Rp = 3; Rs = 15; Rp = 3; Rs = 15;
[N,Wn] = buttord(1,9.4721,3,15,'s') [N,Wn] = buttord(1,9.4721,3,15,'s') [n,Wn] = buttord(Wp,Ws,Rp,Rs); [n,Wn] = buttord(Wp,Ws,Rp,Rs);
[b,a] = butter(N,Wn,'s') % Put Wn =1 [b,a] = butter(N,Wn,'s') [b,a] = butter(n,Wp); [b,a] = butter(n,Wn);
[bt,at]=lp2bp(b,a,1,0.64988) [bt,at]=lp2bp(b,a,1,0.64988) freqz(b,a,128,1000) freqz(b,a,128,1000)
[num,den] = bilinear(bt,at,0.5) [num,den] = bilinear(bt,at,0.5)

S-ar putea să vă placă și