您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 系统零-极图确定系统的频率响应
湖南文理学院系统建模与设计报告专业班级:电子信息科学与技术11102学生姓名:学生学号:指导教师:曹老师设计时间:2013.12.23-2013.12.30系统零-极图确定系统的频率响应一、课程设计目的学会应用MATLAB软件为电路建模并加以分析二、基本要求掌握电路模型、定律以及电路一般分析方法。三、设计方法与步骤1离散系统零极点线性时不变离散系统可用线性常系数差分方程描述,即00()()NMijijaynibxnj(1-1)其中()yk为系统的输出序列,()xk为输入序列。将式(8-1)两边进行Z变换的00()()()()()MjjjNiiibzYzBzHzXzAzaz(1-2)将式(8-2)因式分解后有:11()()()MjjNiizqHzCzp(1-3)其中C为常数,(1,2,,)jqjM为()Hz的M个零点,(1,2,,)ipiN为()Hz的N个极点。系统函数()Hz的零极点分布完全决定了系统的特性,若某系统函数的零极点已知,则系统函数便可确定下来。用roots()求得()Hz的零极点后,就可以用plot()函数绘制出系统的零极点图。下面是求系统零极点,并绘制其零极点图的MATLAB实用函数ljdt(),同时还绘制出了单位圆。functionljdt(A,B)%Thefunctiontodrawthepole-zerodiagramfordiscretesystemp=roots(A);%求系统极点q=roots(B);%求系统零点p=p';%将极点列向量转置为行向量q=q';%将零点列向量转置为行向量x=max(abs([pq1]));%确定纵坐标范围x=x+0.1;y=x;%确定横坐标范围clfholdonaxis([-xx-yy])%确定坐标轴显示范围w=0:pi/300:2*pi;t=exp(i*w);plot(t)%画单位园axis('square')plot([-xx],[00])%画横坐标轴plot([00],[-yy])%画纵坐标轴text(0.1,x,'jIm[z]')text(y,1/10,'Re[z]')plot(real(p),imag(p),'x')%画极点plot(real(q),imag(q),'o')%画零点title('pole-zerodiagramfordiscretesystem')%标注标题holdoff2离散系统零极点图及零极点分析零极点图的绘制设离散系统的系统函数为()()()BzHzAz则系统的零极点可用MATLAB的多项式求根函数roots()来实现,调用格式为:p=roots(A)其中A为待根求多项式的系数构成的行矩阵,返回向量p则是包含多项式所有根的列向量。如多项式为231()48Bzzz,则求该多项式根的MATLAB命令为为:A=[13/41/8];P=roots(A)运行结果为:P=-0.5000-0.2500需注意的是,在求系统函数零极点时,系统函数可能有两种形式:一种是分子、分母多项式均按z的降幂次序排列;另一种是分子、分母多项式均按1z的升幂次序排列。这两种方式在构造多项式系数向量时稍有不同。(1)()Hz按z的降幂次序排列:系数向量一定要由多项式最高次幂开始,一直到常数项,缺项要用0补齐;如34322()3221zzHzzzzz其分子、分母多项式系数向量分别为A=[1020]、B=[13221]。(2)()Hz按1z的升幂次序排列:分子和分母多项式系数向量的维数一定要相同,不足的要用0补齐,否则0z的零点或极点就可能被漏掉。如11212()11124zHzzz其分子、分母多项式系数向量分别为A=[120]、B=[11/21/4]。3用MATLAB实现离散系统的频率特性分析方法(1)几何矢量法利用几何矢量求解示意图如图1-4所示。jjjjjeqBeijjiiepAe有:1212()1()()1()()MNMjjjjjjNjiiBeHeHeeAe则系统的幅频特性和相频特性分别为:11()MjjjNiiBHeA(1-7)11()MNjiji(1-8)根据式(1-7)和(1-8),利用MATLAB来求解频率响应的过程如下:根据系统函数()Hz定义分子、分母多项式系数向量B和A;调用前述的ljdt()函数求出()Hz的零极点,并绘出零极点图;定义Z平面单位圆上的k个频率分点;求出()Hz所有的零点和极点到这些等分点的距离;求出()Hz所有的零点和极点到这些等分点矢量的相角;根据式(8-7)和(8-8)求出系统的()jHe和();绘制指定范围内系统的幅频曲线和相频曲线;下面是实现上述过程的实用函数dplxy()。有四个参数:k为用户定义的频率等分点数目;B和A分别为系统函数分子、分母多项式系数向量;r为程序绘制的频率特性曲线的频率范围(0~r)。functiondplxy(k,r,A,B)%Thefunctiontodrawthefrequencyresponseofdiscretesystemp=roots(A);%求极点q=roots(B);%求零点figure(1)ljdt(A,B)%画零极点图w=0:r*pi/k:r*pi;y=exp(i*w);%定义单位圆上的k个频率等分点N=length(p);%求极点个数M=length(q);%求零点个数yp=ones(N,1)*y;%定义行数为极点个数的单位圆向量yq=ones(M,1)*y;%定义行数为零点个数的单位圆向量vp=yp-p*ones(1,k+1);%定义极点到单位圆上各点的向量vq=yq-q*ones(1,k+1);%定义零点到单位圆上各点的向量Ai=abs(vp);%求出极点到单位圆上各点的向量的模Bj=abs(vq);%求出零点到单位圆上各点的向量的模Ci=angle(vp);%求出极点到单位圆上各点的向量的相角Dj=angle(vq);%求出零点到单位圆上各点的向量的相角fai=sum(Dj,1)-sum(Ci,1);%求系统相频响应H=prod(Bj,1)./prod(Ai,1);%求系统幅频响应figure(2)plot(w,H);%绘制幅频特性曲线title('离散系统幅频特性曲线')xlabel('角频率')ylabel('幅度')figure(3)plot(w,fai)title('离散系统的相频特性曲线')xlabel('角频率')ylabel('相位')五实际运用:例.MATLAB命令如下(1)A=[2-485];B=[2451];ljdt(A,B)dplxy(100,3,A,B)绘制的零极点图如图所示:-1-0.500.51-1-0.8-0.6-0.4-0.200.20.40.60.81jIm[z]Re[z]pole-zerodiagramfordiscretesystem离散系统的零极点图0123456789100.10.20.30.40.50.60.70.80.911.1离散系统幅频特性曲线角频率幅度离散系统的幅频特性曲线012345678910-2-1.5-1-0.500.511.52离散系统的相频特性曲线角频率相位离散系统的相频特性曲线四、总结与体会在做课程设计的过程中,对书本上的理论知识有了进一步的理解,对于一些似懂非懂的部分,通过再一次看书,编写程序,调试结果,并对结果进行分析,也理解了。但是,感觉自己对与理论的实际运用还是比较欠缺。同时知道了学习知识的方法,学习理论不是一味的看书,理论应该建立在实践的基础上,通过编写程序去实现某个功能,对相应知识点有了更进一步的了解,有助于理论的学习。通过做这次课程设计,对MATLAB有了初步了解,知道了MATLAB的一些用途,虽然选修了数学建模实验课,老师在课堂上也讲了一些简单的MATLAB的用法,但是在做设计的过程中才知道那些远远不够,所以又花了很多时间去找那些函数怎么用,怎么画图啊等等,在理论中求频率响应计算很麻烦,但是用MATLAB只需一个简单的函数就可以实现,但有许多细节如一些语句等,由于时间关系还是不太明白,需要今后加以学习。在做课程设计过程中,发现什么事不能等别人,自己需要尽自己的努力去做,有不明白的地方要及时去问,还有要学会利用身边各种资源比如图书馆,网络等,什么事情没有亲自去做,不要妄下结论,不要认为自己不行,只有做了才知道其实一些事只要自己认真做了是可以办的的。同时课程设计培养了我独自处理问题的能力以及做事的态度。俗话说:态度决定一切。只有有端正的态度,才能尽心的去做。才有可能成功。总之,在做这次课程设计的过程中学到了很不单单是理论知识,动手能力,还用一些我们学生已经遗失的精神,如独立,合作,帮助等等。这些也正是我们缺少的。五、参考文献《Matlab应用》《matlab函数用法》《信号与系统》《电路与系统》《matlab简介》
本文标题:系统零-极图确定系统的频率响应
链接地址:https://www.777doc.com/doc-4305231 .html