文档详情

实验五连续时间信号与系统的复频域分析的MATLAB实现..doc

发布:2017-01-16约3.38千字共7页下载文档
文本预览下载声明
实验五连续时间信号与系统的复频域分析的MATLAB实现 [] 掌握极点分布。 掌握系统冲激响应的MATLAB实现。 用MATLAB实现已知系统零极点分布,求系统频率响应,并绘制其幅频响应曲线 一. 系统函数零极点分布图的MATLAB实现 系统函数的零点和极点位置可以用MATLAB的多项式求根函数roots( )来求得。 用roots( )函数求得系统函数H(s)的零极点后,就可以用plot命令在复平面上绘 制出系统函数的零极点图。 例1、已知连续时间系统的系统函数如下所示,试用MATLAB绘出系统的零极点 分布图,并判断系统是否稳定。 解: MATLAB程序如下: A=[1 7 17 17 6]; B=[1 0 -4]; p=roots(A); q=roots(B); p=p; q=q; x=max(abs([p q])); x=x+0.1; y=x; clf hold on axis([-x x -y y]); axis(square) plot([-x x],[0 0]) plot([0 0],[-y y]) plot(real(p),imag(p),x) plot(real(q),imag(q),o) title(连续时间系统的零极点图) text(0.2,x-0.2,虚轴) text(y-0.2,0.2,实轴) 上述命令绘制的系统零极点图如图1所示: 由图可以看出,该系统的极点-1(二重),-2,-3均落在s的左半平面,故该 系统是稳定的。 二. 系统冲激响应的MATLAB实现 解: MATLAB程序如下: a=[1 3 2 0]; b=[1 4]; [r,p,k]=residue(b,a) impulse(b,a) 运行结果为: r = 1 -3 2 p = -2 -1 0 k = [ ] 可见,系统函数有三个实极点,可以根据程序运行结果直接写出系统的冲激响 应为: 由时域波形可以看出,当时间t趋于无穷大时,并不趋于零而是趋于一个有限 值,故该系统是临界稳定。另一方面,由于系统有极点位于s平面的原点处,这也 可以判断该系统是临界稳定的。 三. 矢量作图法绘制系统频率响应曲线的MATLAB实现 用MATLAB实现已知系统零极点分布,求系统频率响应,并绘制其幅频响应曲线 的程序流程如下: (1)定义包含系统所有零点和极点位置的行向量q和p。 (2)定义绘制系统频率响应曲线的频率范围向量f1和f2,频率抽样间隔k,并 产生频率等分点向量f。 (3)求出系统所有零点和极点到这些等分点的距离。 解:(1)根据系统零极点分析的几何矢量分析法的原理绘制幅频响应曲线,其 MATLAB程序如下: q=[0 0]; p=[-100 -200]; p=p; q=q; f=0:0.1:1000; w=f*(2*pi); y=i*w; n=length(p); m=length(q); if n==0 yq=ones(m,1)*y; vq=yq-q*ones(1,length(w)); bj=abs(vq); ai=1; elseif m==0 yp=ones(n,1)*y; vp=yp-p*ones(1,length(w)); aj=abs(vp); bj=1; else yp=ones(n,1)*y; yq=ones(m,1)*y; vp=yp-p*ones(1,length(w)); vq=yq-q*ones(1,length(w)); ai=abs(vp); bj=abs(vq); end Hw=prod(bj,1)./prod(ai,1); plot(f,Hw); title(连续时间系统幅频响应曲线) xlabel(频率w(单位:赫兹)) ylabel(F(jw)) 上
显示全部
相似文档