Solve using the bilinear function in Matlab Consider the continuous-time systems
ID: 2082319 • Letter: S
Question
Solve using the bilinear function in Matlab
Consider the continuous-time systems described by the following transfer functions: H_a1(s)= (s^2 + 986.96)/(s^2 + 23.56s + 2220.67), H_a2(s) = (s^2 - 42s + 1148.7)/(s^2 + 42s + 1148.7). (a) Assuming that the above 2 systems are connected in series, find the composite transfer function H_a(s). Hence, find the poles and zeros. Is the filter stable? (b) Plot the magnitude response in versus the frequency in Hz. Hence, find the frequency at which the magnitude is zero. Call this frequency f_z Hz. (c) It is required to replace the above filter by a digital filter counterpart such that the magnitude response is zero at the same frequency f_z Hz, assuming that the sampling rate is 100 samples/second. Using the bilinear transformation, determine the digital filter transfer function H(z).Explanation / Answer
clc;
close all;
clear all;
Fs = 2000;
Fp = 1000;
A1 = [1 986.96]; %numerator coeff of Ha1
B1 = [1 23.56 2220.67]; %denominator coeff of Ha1
A2 = [1 -42 1148.7]; %numerator coeff of Ha1
B2 = [1 42 1148.7]; %denominator coeff of Ha1
%[num1,den1] = (bilinear(A1,B1,Fs))
%[zd1,pd1,kd1] = (bilinear(A1,B1,Fs))
H1 = tf(A1,B1)
%zd1
%pd1
%[num2,den2] = (bilinear(A2,B2,Fs))
%[zd2,pd2,kd2] = (bilinear(A1,B1,Fs))
H2 = tf(A2,B2)
%zd2
%pd2
Hcomp = H1.*H2
pole(Hcomp)
zero(Hcomp)
[N,D] = tfdata(Hcomp,'v')
freqz(N,D)
hz = bilinear(N,D,Fs)