资源描述:
《实验七离散系统分析的matlab实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验七离散系统分析的MATLAB实现一、实验目的1、掌握利用MATLAB绘制系统零极点图的方法;2、掌握离散时间系统的零极点分析方法;3、学习离散系统响应的MATLAB求解方法;4、掌握用MATALB实现离散系统频率特性分析的方法;5、深刻理解离散系统的系统函数零极点对系统频响的影响,可以根据零极点知识设计简单的滤波器。二、基本原理(一)离散系统零极点线性时不变离散系统可用线性常系数差分方程描述,即NM(1)工6y{n一,)=工bjg-j)i=0j=0其屮V伙)为系统的输出序列,兀伙)为输入序列。将式(1)两边进
2、行Z变换,H(z)=r(z)xU)21Xbiz~j_一NB(z)A(z)(2)将式(2)因式分解后有:H(z)=C戶1(3)~Nn(z~A)i=其中C为常数,幻0=1,2,…,M)为日⑵的M个零点,Pi(i=,2,…,N)为H⑵的N个极点。系统函数〃(z)的零极点分布完全决定了系统的特性,若某系统函数的零极点己知,则系统函数便可确定下来。因此,系统函数的零极点分布对离散系统特性的分析具有非常重要意义。(-)离散系统零极点图及零极点分析1、零极点图的绘制设离散系统的系统函数为B(z)A⑵则系统的零极点可用MAT
3、LAB的多项式求根函数roots。来实现,调用格式为:p=roots(A)其中A为待求根多项式的系数构成的行矩阵,返回向量〃则是包含多项式所有31根的列向量。如多项式为B(z)=z2+-z+-,则求该多项式根的MATLAB命令48为为:A二[13/41/8];P=roots(A)运行结果为:P=-0.5000-0.2500需注意的是,在求系统函数零极点吋,系统函数可能有两种形式:一•种是分子、分母多项式均按z的降幕次序排列;另一种是分子、分母多项式均按才的升幕次序排列。这两种方式在构造多项式系数向量时稍有不同。(
4、1)H(z)按z的降幕次序排列:系数向量一定要由多项式最高次幕开始,一直到常数项,缺项要用0补齐。如z3+2zz°+3z‘+2z~+2z+1其分子、分母多项式系数向量分别为A二[1020]、B二[13221]。(2)H(z)按厂的升幕次序排列:分子和分母多项式系数向量的维数一定要相同,不足的要用0补齐,否则z=0的零点或极点就可能被漏掉。如H⑵-严1+丄z'1+-z~224其分子、分母多项式系数向量分别为A二[120]、B二「11/21/4]。用roots。求得H⑵的零极点后,就可以用plot()函数绘制出系统的
5、零极点图。下面是求系统零极点,并绘制其零极点图的MATLAB实用函数ljdt(),同时述绘制出了单位圆。函数ljdt()的程序如下:functionljdt(A,B)%Thefunctiontodrawthepole-zerodiagramfordiscretesystemp=roots(A)q=roots(B)p=p‘;q二q:x=max(abs([pq1]));%求系统极点%求系统零点%将极点列向量转置为行向量%将零点列向量转置为行向量%确定纵坐标范围x=x+0」;y二x;elf%确定横坐标范围holdona
6、xis([-xx・yy])w=0:pi/300:2*pi;t=exp(i*w);plot(t)axis('square')plot([-xx],[00])plot([00],[-yy])text(O.l,x,'jlm[z]')text(y,l/10,'Re[z]‘)plot(real(p),imag(p);x,)plot(real(q),imag(q),,o,)titleCpole-zerodiagramfordiscretesystem*)holdoff%确定坐标轴显示范圉%画单位园%画横坐标轴%画纵坐标轴%画
7、极点%画零点%标注标题例1:绘制如下系统函数的零极点图(1)H(z)=3z3-5z2+10zz3-3z2+7z-5(2)H(z)=1-0.5zT13_]1_2l+-z+—z48解:MATLAB命令如下:(1)A=[l-37-5];B二[3-5100];ljdt(A,B)绘制的零极点图如图7・1(a)所示。(2)A=[l3/41/8];B=[l-0.50];ljdt(A,B)绘制的零极点图如图7・1(b)所示。pole-zerodiagramfordiscretesystempole-zerodiagramford
8、iscretesystem(a)(b)图7・1离散系统的零极点图2、离散系统零极点分析《信号与系统》课程已讲到离散系统稳定的条件为:①时域条件:离散系统稳定的充要条件为£im