View
220
Download
0
Category
Tags:
Preview:
Citation preview
IIR based Digital Filters:
The design uses the analog prototype of given specifications.
For the given specifications, IIR filters yield much smaller order of the filter.
Hence requires much less number of elements.
Appropriate mapping and spectral transformation is carried out to result in a
desired digital filter.
The object is to:
Investigate the relationship between
s- and z- domains.
Workout the equivalence of
analog and digital systems.
To study the different mapping rules
and response matching.
Equivalence of analog and digital systems:
The approximate continuous time domain impulse response h(t) at the sampling interval ts (=1/fs) is:
h(t) ha(t) = tsh(t) (t-kts)
= ts h(kts) (t-kts); k =[-, ].
For the normalized sampled time impulse response, the sampling period ts is 1s
and replacing t by n :hs[n] = hs[k] [n-k] for k =[-, ].
Equivalence of analog and digital systems:
For k [-, ], the Laplace transform of
ha(t)= ts h(kts) (t-kts) is
H(s) Ha(s) = ts h(kts) exp(-sts)k
and
z-transform H(z) of normalized hs[n] is:
hs[n] = hs[k] [n-k] is
Hd(z) = hs[k]z-k
Equivalence …..Thus for zk = exp(skts),
Ha(s) = ts Hd(z)the conditions can be rewritten as
z exp(sts) and s ln(z)/ts.These relationships describe a mapping between
variables s and z:
z = exp(j)ts = exp(ts) exp(jts)
= exp(ts) exp(j)
Here = ts = 2f/fs = 2F, where F is the digital frequency in cycles/sample
ts is the sampling rate per second is the analog frequency in radians per second..
…..and mapping
The DTFT of hs[n] has a periodic spectrum. Therefore ensure that
the analog signal h(t) is strictly band-limited and moreover,
to obliterate aliasing, is sampled much above the Nyquist rate
The normalized band of frequency should lie well
within the principal period of Hp(f) –0.5 F 0.5.
aliasing revisited:The relationships z exp(sts) s ln(z)/ts
does not describe a unique mapping between
the s-plane and the z-plane.
Since exp(j) has a period of 2; frequencies beyond , such as kfs
are also mapped on the same circle after k .
Thus a one to one mapping is possible only if the signal is restricted in the range f/fs= F = 0.5.
Im z
Re z
z-plane
-1 1
j
s-plane
3/T
/T
-/T
-3/T
Notes …The logarithmic nature of the transformation
s ln(z)/ts, being a infinite series,,does not convert a rational TF H(s) into a rational TF H(z).
The unique representation is true only for band limited signals, those lie well within the principal range.
The spectra of such band limited signal repeats at every sampling frequency. If the signal is not band-limited, it will cause inherent aliasing (introduction of corrupted signal in the principal region).
Notes….
We need to study the practical mappings.
The methods are:
Use of standard z-transform:
Equivalent finite element integrators.
Other methods (not discussed)
w-v transform
z-forms
etc.
Use of standard z-transform
• These filters use standard z-transform.• Therefore the intelligence has to be band limited.• The Impulse invariant filter preserves time response.• The Matched z-transform filters preserves frequency
response.• Aliasing is severe. Use high sampling rate.
Impulse invariant filters and Matched z-transform filters
Equivalent Integrator:The basic philosophy:
The simulation element in signal processing is Integrator. It is (1/s) in Laplace Transform.
Different numerical methods of integration are used to create equivalence.
They are grouped as : Backward difference,
Forward difference,
Trapezoidal integration,
Simpson’s integration. [not used,increases the order of filter]
“ Philips CL,+ Nagle HT, “ Digital Control System Analysis and Design” 3/e, PH Ch.11
Backward Difference: (right side rectangular rule)
• Difference of present and the past sample.
y[t] = y(t) – y(t-T)• It’s Laplace transform:
sY(s) = [Y(s) – e-sTY(s)]/T + Y(0+)
letting Y(0+)=0, we get:
s = (1- e-sT)/T
= (1-z-1)/T
Or,
z = 1/(1-Ts) = ½ [(1-sT)+(1+sT)]/(1-sT)
= ½ [(1- (1+sT)/(1-sT)];
1/s = T/(1-z-1)
It is not the z transform of 1/s
Backward Difference: (right side rectangular rule)
z = ½ [(1- (1+sT)/(1-sT)];
replacing s = j returns:
= ½ [1+ e j2arctan(T)]
= ½ [1+ej].
Mapping left half of j axis of s-plane into
a circle of radius ½ centered at (½ ,0) in z plane.
The region enclosed is very small. If our frequency extends little beyond s=0 or, z=1, there will be severe distortion.
Sampling Frequency should be increased to improve the performance.
Forward Difference: left side rectangular rule
• It is the difference between present pulse and forth coming pulse.
y[t] =[y(t+T)- y(t)]/T
• It’s Laplace transform:
s = (z-1)/T
z = 1+Ts = 1+ jT
This mapping only shifts j axis to right by 1.
It can make a stable filter into unstable one.
Impulse Invariance Integrator, backward difference Integration
and right side rectangular integration.
Step invariance Integrator, forward difference integration
andLeft side rectangular integration.
In literature: Same mapping rule for
Bilinear z-transform Mapping
• It does not require band limitation.
• Pre warping of analog frequency is essential before bilinear z-transformation for suitable matching of frequency response.
• Most suitable for polynomial based flat response filters.
• Uses Trapezoidal Integration rule.
Algorithms for Bilinear Transformation
This transformation follows the trapezoidal interpolation rule, or, Tustin’s rule, and is represented by the numerical integration
algorithm:
y[n] = y[n-1] + (ts /2){x[n] + x[n-1]}.
So that:
H(z) = 0.5 ts [z+1]/[z-1]
And equating with integration rule in s-domain.
H(s) 1/s. Thus
s = (2/ts){(z–1) / (z+1)}
The time-response matchingThe idea behind response matching is to match the time-domain analog and
digital response at the sampling instants t = ts for a given input. One way to achieve the response is as under.
The example below will illustrate that the H[z] is excitation specific.
s-domain inputt-domain input analog filter in s-domain
output in s-domain
output in t-domain
output sampled @ ts
output Y[z]
input sampled @ ts
Input X[z]
hence: H[z] = Y[z]/X[z].
Time response matching…
Example 10.01Convert analog filter of transfer function H(s) = 1/(s+1) into a digital filter H[z] for (a) impulse input (b) unit step input.
Soln: (a) Impulse input :
x(t) = (t) X(s) = 1;
H(s) = 1/(s+1),
output Y(s) = 1/(s+1)
or, y(t) = e-t U(t).
the sampled version is y(nT) = e-nTU[n] .
And at n=0, y(nT) = 1.
Example 7.01
• Letting sampling time ts = 1, for impulse input, we get
H[z] =Z e-nTU[n] =1/[1-e-1z-1] =1/[1- 0.3679 z-1].
We thus note: The DC gain H[z=1] = 1.582 while it at H(s=0) =1. This increase is solely due to aliasing. Even if the DC gain is normalized, the frequency
characteristics does not match. It is shown in Magnitude plot of Fig. 7.02 (a) and (b).
This can be remedied by higher rate of sampling. But it makes it unsuitable for HP and BP filters.
Normalized amplitude response:
0 0.5 1 1.5 2 2.5 30
0.2
0.4
0.6
0.8
1
analog frequency
mag
nitu
de
H[z]H(s)
Phase response
0 0.5 1 1.5 2 2.5 3-80
-70
-60
-50
-40
-30
-20
-10
0
Phase
in d
eg
ree
s
analog frequency, radians
Phase[z]Phase(s)
Time response of Impulse Invariance digital filters and equivalent analog filter:
0 1 2 3 4 5 60
0.2
0.4
0.6
0.8
1
am
plitu
de
time in seconds, sampling period 1 second
note similarity in time response.
Response with step input:
Step response of the filter
H[z] = z / [z-0.3679] is
Y[z] = z2 / [z-1][z – 0.3679]
Inverse Z-transform is
y[n] = 1.5820U[n]–0.214 (0.3679)-n U[n]
=1.5820[1-0.1353(0.3679)-n]U[n].
Magnitude-frequency responsefor step input
0 1 2 3 4 5 60
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
am
plit
ud
e
time in seconds, sampling period 1 second
Remarks on impulse invariant method:
Comparison of response in analog domain filters and impulse invariant method in digital domain
while the frequency and phase plots are not alike, the time response at the sampling intervals
is same in analog and impulse invariant digital filters
the time response is remarkably different from its analog counterpart for step input.
This clearly illustrates that this scheme is
excitation specific.
Why Bilinear Transformation
Due to high rate of sampling, Impulse invariant filters (IIF) are not suitable for high
pass/band reject/all-pass modes while matched-z filters can not realize LPF.
Frequency response does not match with those of analog filters in IIF while there is a
distortion in matched-z.
Aliasing problem in both cases.
Bilinear Transformation
Alternatively a transformation is attempted which converts 0 to 2 change in
[0 to ]. Thus the circle of z-domain is converted onto
entire j-axis with one to one mapping. This eliminates the aliasing problem. It is BILINEAR TRANSFORMATION
s- and z- planes mapping- we want
The relationship between analog and digital frequency :s = (2/ts)[(z-1)/(z+1)]
Putting s = j , and z = ej
j= (2/ts)[(ej -1) / (ej +1)]
=(2/ts)[{ej/2 (ej/2 – e-j/2)} / {ej/2(ej/2+ e-j/2)}]
=(2/ts)[(ej/2 – e-j/2)/ (ej/2+ e-j/2)]
=j (2/ts)sin(/2)/cos(/2)
Or, = (2/ts)tan(/2) = 2 tan-1(ts/2)
Frequency Warpage in BLT:The graph between and for ts=1, red color, is non-linear
implying that the warpage has been introduced in the frequency translation. Blue color graph for is drawn for
understanding.
-30 -20 -10 0 10 20 30-3
-2
-1
0
1
2
3
dig
ital fr
eq
ue
ncy
analog frequency
Working out frequency in BLT: = (2/ts)tan(/2)
and = 2 tan-1(ts/2)
The above is a non linear or warped characteristic.
It has one to one mapping between s and z domains.
For ; /2.
To undo this frequency warping, we pre-warp the analog frequency p in s-plan so that:
pts/2 = tan(ts/2).
Linearization of relationship
After frequency prewarping pts/2 = tan(ts/2)
The Digital frequency becomes:= 2 tan-1(p ts/2)
= 2 tan-1 tan(ts/2)
= (2/ts)(ts/2);
we get a linear relation: = .
More over due to carrying out the prewarping, the term 2/ts turns out to be
redundant as it cancels out in calculations.• Therefore we can individually use:• s = (z-1)/(z+1) p = (2/ts)tan(ts/2).
Or, combining the two:s = cot (ts/2) (z-1)/(z+1) .
[Ifeacher et al,”Digital signal Processing’ 2/e, Prentice Hall, pp 473-500.
Example: 10.02 Using un-prewarped bilinear transformation and
impulse invariance technique synthesize:
1. Bilinear Transformation Method:
Putting the transformation s =(2/ts)[(z-1) / (z+1)];
we get;
H[z} = c/[(2/ts)[(z-1) / (z+1)] )+ c]
= cT(z+1)/(2+cT)z – (2 -cT).
Selecting the value of T such that T << /c
say = 0.1/c,
H[z] = 0.1357(z +1)/[z- 0.7284]
H(s) = c /(s+c ), c = 105.
Lathi B.P.,”Signal Processing and Linear Systems” 1998, Oxford
Ex. 9.02 contd.
Thus |H(ejT)| =
0.024(1+cos (10-6)/(1-0.9518cos(10-6)
and H(e jT)
= tan-1[sin(10-6)/ [1+ cos(10-6)]
- tan-1[sin(10-6)/[cos(10-6)-0.7285].
Ex. 9.03: Bilinear transformation method
without pre-warping
H(s) = (s+0.1)/{(s+0.1)2 +9}
replace s by (2/T) {(z-1)/(z+1)},
H(z) =
0.1077{(z2 + 0.18 z – 0.82) / (z2 + 1.569z + 0.96)}
Ex.9.03: Magnitude plots
-4 -2 0 2 4 6 80
0.2
0.4
0.6
0.8
1
1.2
1.4
Mag
nitud
e
analog frequency, radians
bilinearImpinvaranalog
Ex. 10.03: Design an IIR digital filter for the TF of analog filter given as: H(s) = (s+a)/{(s+a)2 + b2}. where [a,b] =[0.1,3] and the resonant frequency r=/4.with pre-warping.
• The sampling time, given that b = c= 3; • Using the relation: =2 tan-1(ts/2)
and replacing c and c; ts = (2/c) tan(c/2) = (2/3)tan(/8)=0.276.
• H(z) = N(z)/D(z) = H(s) for s = (2/T)(z-1)/(z+1)• N(z) = (2/0.276){(z-1)/(z+1)} + 0.1• D(z) = N2(z) + 9.• H(z) = [1+0.027z-1-0.973z-2]/[8.572 –11.84z-1+8.177z-2]
[Salivahanan, “DSP” Mcgraw Hills, p.429-430]
BZT
Bilinear transformation method are useful when the gains are constant over certain frequency bands. This condition exists in low-pass, band-pass, high-pass and band-stop filters.
This method requires lower sampling rate compared to Impulse Invariance Method because of absence of aliasing. This absence of aliasing is the result of one-one mapping from a s-plane to z-plane.
Warping
The digital frequency is limited in the range of -0.5 F 0.5, and sampling time period is decided by the highest frequency of the signal Fh is to be preserved. Warping of Digital Frequency scale is inherent in Bilinear Transformation. This can be reduced by pre warping the frequencies in analog domain.
Steps to Design IIR BZT filters• From specifications, workout the desired discrete-time
filter requirements and attributes.• Pre-warp the critical discrete time frequencies into
corresponding analog frequencies and estimate the order of filter and -3dB critical frequency.
• Design the analog prototype filter from the continuous-time parameters obtained from above.
• Convert the analog prototype into an analog filter using frequency-frequency transform.
• Design a digital filter using a BZTof H(s) that warps the frequency axis which was previously pre-warped.
[1.Taylor,”Hands-on digital signal processing”, McGraw Hills, pp414-420 ISBN:0-07-912965-x 2.Chen,”Digital Signal Processing” Oxford, PP. 386-394: ISBN 0-19-513638-1]
Example 10.04:
Using the bilinear transformation and a low pass analog Butterworth prototype, design a low pass filter operating at a rate of 20 kHz and having a pass band extending to 4kHz with maximum attenuation of 0.5 dB and stop band starting at 5 kHz with a minimum stop band attenuation of 10 dB.
Soln : Given that sampling rate is fs=20 kS/s,
Pass band =fpass= 4kHz.Fpass= 4/20 Hz/s at -0.5 dB.
Stop band =fstop = 5kHz. Fstop= 5/20 Hz/s at +10 dB.[Orfanidis: Introduction to signal Processing pp 612-617]
Soln..:
• Prewarped Digital frequencies are:pass= tan (2Fpass/2) = 0.7265 rad/sample
stop= tan (2Fstop/2) = 1.00 rad/sample.
• ln()= ln (stop/ pass) = ln(1.0/0.7265)
Determination of order n of the filter:
Given that H(s)H(-s) = [1+(s/j)2n]-1,
Gx = 20 log |H(jx)| = -10log[1 + (x/c)2n]
Where s =x, c = cut-off frequency, n is order of filter.
Letting Pass band gain Gp dB occur at p rad/sec
and
stop band gain Gs dB occur at s rad/sec.
We get expressions as:
Gp = -10log[1 + (p/c)2n] (p/c)2n = 10-Gp/10 -1
Gs = -10log[1 + (s/c)2n] (s/c)2n = 10-Gs/10 –1
Hence: (s/p)2n = (10-Gs/10 –1)/ (10-Gp/10 –1)
Conclusion
From here we conclude:
n, the order of the filter = log {(10-Gs/10 –1)/ (10-Gp/10 –1)} / 2log(s/p).
c, the cut off frequency
= p/{10-Gp/10 –1}1/2n
ALTERNATIVELLY AS
= s/{10-Gs/10 –1}1/2n
Hence:
(s/p)2n = (10-Gs/10 –1)/ (10-Gp/10 –1)
2nlog((s/p)=log[(10-Gs/10 –1)/ (10-Gp/10 –1)]
Or, n = 0.5 log[(10-Gs/10 –1)/ (10-Gp/10-1)]/log(s/p)
In this case,
n = 0.5 log[(10-Gs/10 –1)/ (10-Gp/10-1)]/log(s/p)
= 6.73 say 7.
The -3dB cutoff frequency calculated as
c, = p/{10-Gp/10 –1}1/2n = 0.8443 f
o= (fs/) tan-1(c)= 4.464 kHz.
The filter is a 7th order filter
One real pole and three complex poles. The composite TF is:
= 0.4578 (1+z-1)/1-0.0844 z-1
+ 0.3413(1+z-1)2/[1-0.2749z-1 + 0.6402z-2]
+ 0.2578(1+z-1)2/[1-0.2076 z-1+0.2386 z-2]
+ 0.2204(1+z-1)2/[1-0.1775 z-1+0.0592 z-2]
Example_10.05[ extention of example 9.4]
A band stop filter to satisfy Butterworth and Tchebyshev Criteria.
is required to meet following specifications. to meet the following specifications.
1. Stop band 100 to 600 Hz (assumed at -3dB)2. At and between 200 and 400 Hz, the
magnitude should be at least -20 dB.3. Maximum Gain (at the zero) =1.4. Pass band ripple 1.1 dB.5. Sampling frequency 2000 Hz.
Conversion to normalized LPF specs.• Calculation of prewarp frequencies:
pr_x= tan (xT/2) = tan (f/fs) since fsT=1
• fx Hz fx/fs rad/s pr_x
rad/s
fx1 100 0.1571 0.1584
fx2 200 0.3141 0.3249
fx3 300 0.6283 0.7265
fx4 400 0.9425 1.3764
Normalized Bandwidth = B = fx4-fx1 = 1.3764-0.1584 = 1.218
Normalized center frequency =02= fx4fx1 = 0.2180
Calculation of equivalent LPF• Basic equation is: n Bx /(0
2 - x2)
• Calculating n for various values of x in the equation
=1.218 x / (0.2180 - x2)
x soln n • 0.1584 1.218 x 0.1584/[0.218 – (0.1584)2] = 1• 0.3249 1.218 x 0.3249 /[0.218 – (0.3249)2] = 3.519• 0.7265 1.218 x 0.7265 /[0.218 – (0.7265)2] =-2. 856 • 1.3764 1.218 x 1.3764 /[0.218 – (1.3764 )2] = -1
s/p=min(2/ 1 3/ 4) = 2.856 3.
and 1/cosh-1(2.856) = 0.5846
Calculation of number of Tchebyshev poles
• The control equations is where
Given:Gs =-20 dB, R=-1.1 dB and
Calculated s/p= 2.856
n1
cosh 1s
p
cosh 1 10
Gs
10 1
10
R
10 1
1/cosh-1(2.856) =0.5846cosh-1( )=cosh-1(18.53) = 3.612n= 2.11 3 for better transit characteristic
Chebyshev polynomial for n=3 andR = 1.1 dB
• In the polynomial calculated in 9.4
Hlp(s) =0.4656/(s+0.4766)(s2+0.4766s+0.977)
• To convert this normalized LP to desired BS, substitute s 1.218 s / (s2+ 0.2180).
• Use BZT in the so obtained polynomial in s.
1. Butterworth filter.
Number of poles of LP filter
= log10 {(10-Gs/10 –1)/ (10-Gp/10 –1)} / 2log10 (s/p)
= log10{(102-1)/(100.3-1)/2 log10(2.856)
= 2.199 3 (for better transition characteristic).
The normalized TF = 1/ (s+1)(s2+s+1)
= 1/ 1+2s+2s2 +s3
Transform normalized LP to required BS
by s 1.218 s / (s2+ 0.2180)
USE BZT on the HBS(s).
Recommended