资源描述:
《北京理工大学信号与系统实验 实验5 连续时间系统的复频域分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验5连续时间系统的复频域分析一、实验目的1.掌握拉普拉斯变换及其反变换的定义,并掌握MATLAB实现方法。2.学习和掌握连续时间系统系统函数的定义及复频域分析方法。3.掌握系统零极点的定义,加深理解系统零极点分布与系统特性的关系。二、实验原理与方法1.拉普拉斯变换连续时间信号的拉普拉斯变换定义为拉普拉斯反变换定义为在MATLAB中,可以采用符号数学工具箱的laplace函数和ilaplace函数进行拉氏变换和反拉氏变换。L=laplace(F)符号表达式F的拉氏变换,F中时间变量为t,返回变量为s
2、的结果表达式。L=laplace(F,t)用t替换结果中的变量s。F=ilaplace(L)以s为变量的符号表达式L的拉氏反变换,返回时间变量为t的结果表达式。F=ilaplace(L,x)用x替换结果中的变量t。除了上述ilaplace函数,还可以采用部分分式法,求解拉普拉斯逆变换,具体原理如下:当X(s)为有理分式时,它可以表示为两个多项式之比:式(3)可以用部分分式法展成一下形式通过查常用拉普拉斯变换对,可以由式(1-2)求得拉普拉斯逆变换。利用MATLAB的residue函数可以将X(s)展
3、成式(1-2)所示的部分分式展开式,该函数的调用格式为:[r,p,k]=residue(b,a)其中b、a为分子和分母多项式系数向量,r、p、k分别为上述展开式中的部分分式系数、极点和直项多项式系数。2.连续时间系统的系统函数连续时间系统的系统函数是系统单位冲激响应的拉氏变换15此外,连续时间系统的系统函数还可以由系统输入和系统输出信号的拉氏变换之比得到单位冲激响应反映了系统的固有性质,而从复频域反映了系统的固有性质。由式(6)描述的连续时间系统,其系统函数为s的有理函数3.连续时间系统的零极点分析
4、系统的零点是指式(7)的分子多项式为零的点,极点指使分母多项式为零的点,零点使系统的值为零,极点使系统函数的值无穷大。通常将系统函数的零极点绘在s平面上,零点用表示,极点用表示,这样得到的图形称为零极点的分布图。由零极点的定义可知,零点和极点分别指式(7)的分子多项式和分母多项式的根。利用MATLAB求多项式的根可以通过函数roots来实现,该函数的调用格式为:r=roots(c)c为多项式的系数向量,返回值r为多项式的根向量。分别对式(7)的分子多项式和分母多项式求根即可得到零极点。此外,在MAT
5、LAB中还提供了更简便的方法来求取零极点和绘制系统函数的零极点分布图,即利用pzmap函数,该函数的调用格式为:pzmap(sys)绘出由系统模型sys描述的系统的零极点分布图。[p,z]=pzmap(sys)这种调用方法返回极点和零点,而不绘出零极点分布图。其中sys为系统传函模型,由t命令sys=tf(b,a)实现,b、a为传递函数的分子多项式和分母多项式的系数向量。MATLAB还为用户提供了两个专用函数tf2zp和zp2tf来实现系统传递函数模型和零极点增益模型的转换,其调用格式为:[z,p,
6、k]=tf2zp(b,a)[b,a]=`zp2tf(z,p,k)其中b、a为传递函数的分子多项式和分母多项式的系数向量,返回值z为零点列向量,p为极点列向量,k为系统函数零极点形式的增益。三、实验内容(1)已知系统的冲激响应,输入信号,是采用复频域的方法求解系统的响应,编写MATLAB程序实现。使用卷积定理求解,先分别求的拉氏变换然后根据式(6)求出输出,最后对进行拉普拉斯反变换即可得到系统的响应。MATLAB程序如下:symst;h=heaviside(t)-heaviside(t-2);x=he
7、aviside(t);H=laplace(h);X=laplace(x);F=X.*H;15f=ilaplace(F);f=ilaplace(F)f=t-heaviside(t-2)*(t-2)故系统响应为(2)已知因果连续时间系统的系统函数分别如下,试采用MATLAB画出其零极点分布图,求解系统的冲激响应并判断系统是否稳定。MATLAB程序及运行结果如下:a=[1221];b=[1];sys=tf(b,a);pzmap(sys);[r,p,k]=residue(b,a);symssH=1/(s^3
8、+2*s^2+2*s+1);h=ilaplace(H);impulse(sys);b=[1];a=[1221];[H,w]=freqs(b,a);subplot(2,1,1);plot(w,abs(H));xlabel('omega(rad/s)');ylabel('Magnitude');title('
9、H(jomega)
10、');gridon;subplot(2,1,2);plot(w,angle(H));xlabel('omega(rad/s)');ylab