当前位置:文档之家› 系统函数的零极点分布决定时域特性

系统函数的零极点分布决定时域特性

摘要本文详细分析了系统函数零极点的分布与冲击响应时域特性之间的关系。

首先论述了如何通过MATLAB软件绘制出系统函数的零极点分布图。

然后根据系统函数极点的不同分布情况,通过MATLAB软件绘制出冲击响应的时域函数,通过对图像的观察和比较,得出了极点的类型决定时间函数的时间连续形式,极点在S平面的位置决定时间函数的波形特点。

最后,在极点相同,但零点不同的情况下,通过比较时域函数的波形,得出零点分布与时域函数的对应关系,即零点分布的情况只影响到时域函数的幅度和相位。

关键词:系统函数的零极点;时域特性;MATLAB软件目录1课程设计目的 (1)2实验原理 (1)3实现过程 (1)3.1MATLAB简介 (1)3.2系统函数极点分布情况 (2)3.2.1极点为单实根 (2)3.2.2极点为共轭复根 (2)3.2.3极点为重根 (2)3.2.4用MATLAB绘制系统函数的零极点分布图 (2)3.3系统函数的零极点分布与冲击响应时域特性的关系 (6)3.3.1用MATLAB绘制冲击响应的时域函数 (6)3.3.2极点的类型决定时间函数的时间连续形式 (19)3.3.3极点在S平面的位置决定时间函数的波形特点 (19)3.3.4零点分布与时域函数的对应关系 (19)4设计体会 (23)5参考文献 (24)1 课程设计目的1.掌握系统函数的零极点分布与系统冲激响应时域特性之间的关系。

2.学习MATLAB 软件知识及应用。

3.利用MATLAB 编程,完成相应的信号分析和处理。

2 实验原理拉普拉斯变换将时域函数f(t)变换为s 域函数F(s);反之,拉普拉斯逆变换将F(s)变换为相应的f(t)。

由于f(t)与F(s)之间存在一定的对应关系,故可以从函数F(s)的典型形式透视出f(t)的内在性质。

当F(s)为有理函数时,其分子多项式和分母多项式皆可分解为因子形式,各项因子指明了F(s)零点和极点的位置,显然,从这些零点和极点的分布情况,便可确定原函数的性质。

设连续系统的系统函数为)(s H ,冲激响应为)(t h ,则⎰+∞-=0)()(dt e t h s H st显然,)(s H 必然包含了)(t h 的本质特性。

对于集中参数的LTI 连续系统,其系统函数可表示为关于s 的两个多项式之比,即其中),,2,1(M j q j =为)(s H 的M 个零点,),,2,1(N i p i =为)(s H 的N 个极点。

3 实现过程3.1 MATLAB 简介MALAB 译于矩阵实验室(MATrix LABoratory ),是用来提供通往 LINPACK 和EISPACK 矩阵软件包接口的。

后来,它渐渐发展成了通用科技计算、图视交互系统和程序语言。

MATLAB 的基本数据单位是矩阵。

它的指令表达与数学、工程中常用的习惯形式十分相似。

比如,矩阵方程Ax=b ,在MATLAB 中被写成A*x=b 。

而若要通过A ,b 求x ,那么只要写x =A \b 即可,完全不需要对矩阵的乘法和求逆进行编程。

因此,用MATLAB 解算问题要比用C 、Fortran 等语言简捷得多。

MATLAB 发展到现在,已经成为一个系列产品:MATLAB “主包”和各种可选的toolbox “工具包”。

主包中有数百个核心内部函数。

迄今所有的三十几个工具包又可分为两类:功能性工具包和学科性工具包。

功能性工具包主要用来扩充MATLAB 的符号计∏∏11)-()-()()()(Ni i Mj j p sq sCs A s B s H ====算功能、图视建模仿真功能、文字处理功能以及硬件实时交互功能。

这种功能性工具包用于多种学科。

而学科性工具包是专业性比较强的,如控制工具包(Control Toolbox )、信号处理工具包(SignalProcessing Toolbox )、通信工具包(Communication Toolbox )等都属此类。

开放性也许是MATLAB 最重要、最受人欢迎的特点。

除内部函数外,所有MATLAB 主包文件和各工具包文件都是可读可改的源文件,用户可通过对源文件的修改或加入自己编写文件去构成新的专用工具包。

MATLA B 已经受了用户的多年考验。

在欧美发达国家,MATLAB 已经成为应用线性代数、自动控制理论、数理统计、数字信号处理、时间序列分析、动态系统仿真等高级课程的基本教学工具;成为攻读学位的大学生、硕士生、博士生必须掌握的基本技能。

在设计研究单位和工业部门,MATLAB 被广泛地用于研究和解决各种具体工程问题。

3.2 系统函数极点分布情况3.2.1 极点为单实根若系统函数的N 个极点是单极点,则可将)(s H 进行部分分式展开为:3.2.2 极点为共轭复根若系统函数的N 个极点包含共轭复数极点,则可将)(s H 进行部分分式展开为:3.2.3 极点为重根若系统函数的N 个极点有多重极点,则可将)(s H 进行部分分式展开为:3.2.4 用MATLAB 绘制系统函数的零极点分布图绘制系统函数零极点分布图的函数如下:∑1-)(Ni iip s k s H ==))()(()()(βαβαj s j s s D s A s H +++=)()()()1(s D s A s H p s k =function [p,q]=sjdt(A,B)%绘制连续系统零极点图程序%A:系统函数分母多项式系数向量%B:系统函数分子多项式系数向量%p:函数返回的系统函数极点位置行向量%q:函数返回的系统函数零点位置行向量p=roots(A); %求系统极点q=roots(B); %求系统零点p=p';%将极点列向量转置为行向量q=q';%将零点列向量转置为行向量x=max(abs([p q])); %确定纵坐标范围x=x+0.1;y=x;%确定横坐标范围clfhold onaxis([-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)首先打开MATLAB软件,如图1所示。

图1 MATLAB界面(2)点击File-->New-->Function,创建M文件,用于建立一个求解系统函数零极点的函数。

(3)在编辑窗口中输入绘制系统函数零极点分布图的函数,如图2所示。

图2 M文件编辑窗口(4)点击Debug-->Save File and Run设置其保存路径为MATLAB的工作路径,如图3所示。

图3 设置保存路径(5)输入在MATLAB的命令窗口中输入计算系统零极点的具体程序:例如某连续系统的系统函数为:则输入的程序为:a=[10 8 6 4 2];b=[5 4 3];[p,q]=sjdt(a,b)运行结果如图4所示。

图4 绘制系统零极点分布图的运行结果3.3系统函数的零极点分布与冲击响应时域特性的关系3.3.1用MATLAB绘制冲击响应的时域函数函数impulse()将绘出由向量a和b表示的连续系统在指定时间范围内的冲击响应h(t)的时域波形图,并能求出指定时间范围内冲击响应的数值解。

Impulse()函数有如下几种调用格式:(1)impulse(b,a)该调用格式以默认方式绘出向量a和b定义的连续系统的冲击响应的时域波形图。

(2)impulse(b,a,t)该调用格式以默认方式绘出向量a和b定义的连续系统在0~t时间范围冲击响应的时域波形图。

(3)impulse(b,a,t1:p:t2)该调用格式以默认方式绘出向量a和b定义的连续系统在t1~t2时间范围内,且以时间间隔p均匀抽样的冲击响应的时域波形。

(4)y= impulse(b,a,t1:p:t2)该调用格式并不绘出系统冲击响应的波形,而是求出向量a和b定义的连续系统在t1~t2时间范围内以时间间隔p抽样的系统冲击响应的数值解。

在MATLAB中分别输入以下各程序,分别绘制出极点在S域的不同分布其对应的时域函数波形。

a.极点为单实根,且在原点处,即绘制冲激响应时域波形的MATLAB命令如下:a=[1 0];b=[1];impulse(b,a)运行结果如图5-1所示。

图5-1 时域函数波形图b. 极点为单实根,且落于原点左侧,即令a=10绘制冲激响应时域波形的MATLAB命令如下:a=[1 10];b=[1];impulse(b,a)运行结果如图5-2所示。

图5-2 时域函数波形图c. 极点为单实根,且落于原点右侧,即令a=10绘制冲激响应时域波形的MATLAB命令如下:a=[1 -10];b=[1];impulse(b,a)运行结果如图5-3所示。

图5-3 时域函数波形图d.极点为一阶共轭复根,且在虚轴上,即令β=5绘制冲激响应时域波形的MATLAB命令如下:a=[1 0 25];b=[1];impulse(b,a,10)运行结果如图5-4所示。

图5-4 时域函数波形图e. 极点为一阶共轭复根,且在虚轴左侧,即令α=0.2,β=5绘制冲激响应时域波形的MATLAB命令如下:a=[1 0.4 25.04];b=[1];impulse(b,a,10)运行结果如图5-5所示。

图5-5 时域函数波形图f. 极点为一阶共轭复根,且在虚轴右侧,即令α=-0.2,β=5绘制冲激响应时域波形的MATLAB命令如下:a=[1 -0.4 25.04];b=[1];impulse(b,a,10)运行结果如图5-6所示。

图5-6 时域函数波形图g. 极点为二阶重根,且在原点处:绘制冲激响应时域波形的MATLAB命令如下:a=[1 0 0];b=[1];impulse(b,a)运行结果如图5-7所示。

图5-7 时域函数波形图h. 极点为二阶重根,且在原点左侧:令a=10绘制冲激响应时域波形的MATLAB命令如下:a=[1 20 100];b=[1];impulse(b,a)运行结果如图5-8所示。

图5-8 时域函数波形图i. 极点为二阶重根,且在原点右侧:令a=10绘制冲激响应时域波形的MATLAB命令如下:a=[1 -20 100];b=[1];impulse(b,a)运行结果如图5-9所示。

图5-9 时域函数波形图j. 极点二阶共轭复根,且在虚轴上:令β=5绘制冲激响应时域波形的MATLAB命令如下:a=[1 0 50 0 625];b=[1];impulse(b,a)运行结果如图5-10所示。

相关主题