matlab实验四-系统的零极点分析

合集下载

数字信号处理实验4

数字信号处理实验4

实验4 离散时间系统的频域分析一、实验目的(1)了解离散系统的零极点与系统因果性和稳定性的关系; (2)加深对离散系统的频率响应特性基本概念的理解; (3)熟悉MATLAB 中进行离散系统零极点分析的常用子函数; (4)掌握离散系统幅频响应和相频响应的求解方法。

二、知识点提示本章节的主要知识点是频率响应的概念、系统零极点对系统特性的影响;重点是频率响应的求解方法;难点是MATLAB 相关子函数的使用。

三、实验原理1.离散时间系统的零极点及零极点分布图设离散时间系统系统函数为NMzN a z a a z M b z b b z A z B z H ----++++++++==)1()2()1()1()2()1()()()(11 (4-1) MATLAB 提供了专门用于绘制离散时间系统零极点图的zplane 函数: ①zplane 函数 格式一:zplane(z, p)功能:绘制出列向量z 中的零点(以符号"○" 表示)和列向量p 中的极点(以符号"×"表示),同时画出参考单位圆,并在多阶零点和极点的右上角标出其阶数。

如果z 和p 为矩阵,则zplane 以不同的颜色分别绘出z 和p 各列中的零点和极点。

格式二:zplane(B, A)功能:绘制出系统函数H(z)的零极点图。

其中B 和A 为系统函数)(z H (4-1)式的分子和分母多项式系数向量。

zplane(B, A) 输入的是传递函数模型,函数首先调用root 函数以求出它们的零极点。

②roots 函数。

用于求多项式的根,调用格式:roots(C),其中C 为多项式的系数向量,降幂排列。

2.离散系统的频率特性MATLAB 提供了专门用于求离散系统频响特性的freqz 函数,调用格式如下: ①H = freqz(B,A,W)功能:计算由向量W (rad )指定的数字频率点上(通常指[0,π]范围的频率)离散系统)(z H 的频率响应)e (j ωH ,结果存于H 向量中。

实验-Z变换、零极点分析

实验-Z变换、零极点分析

(一)离散时间信号的Z 变换1.利用MATLAB 实现z 域的部分分式展开式MATLAB 的信号处理工具箱提供了一个对F(Z)进行部分分式展开的函数residuez(),其调用形式为:[r,p,k]=residuez(num,den)式中,num 和den 分别为F(Z)的分子多项式和分母多项式的系数向量,r 为部分分式的系数向量,p 为极点向量,k 为多项式的系数向量。

【实例1】 利用MATLAB 计算321431818)(-----+zz z z F 的部分分式展开式。

解:利用MATLAB 计算部分分式展开式程序为% 部分分式展开式的实现程序num=[18];den=[18 3 -4 -1];[r,p,k]=residuez(num,den)2.Z 变换和Z 反变换MATLAB 的符号数学工具箱提供了计算Z 变换的函数ztrans()和Z 反变换的函数iztrans (),其调用形式为)()(F iztrans f f ztrans F ==上面两式中,右端的f 和F 分别为时域表示式和z 域表示式的符号表示,可应用函数sym 来实现,其调用格式为()A sym S =式中,A 为待分析的表示式的字符串,S 为符号化的数字或变量。

【实例2】求(1)指数序列()n u a n 的Z 变换;(2)()()2a z az z F -=的Z 反变换。

解 (1)Z 变换的MATLAB 程序% Z 变换的程序实现f=sym('a^n');F=ztrans(f)程序运行结果为:z/a/(z/a-1)可以用simplify( )化简得到 :-z/(-z+a)(2)Z 反变换的MATLAB 程序% Z 反变换实现程序F=sym('a*z/(z-a)^2');f=iztrans(F)程序运行结果为f =a^n*n(二)系统函数的零极点分析1. 系统函数的零极点分布离散时间系统的系统函数定义为系统零状态响应的z 变换与激励的z 变换之比,即)()()(z X z Y z H = (3-1)如果系统函数)(z H 的有理函数表示式为:11211121)(+-+-++++++++=n n n n m m m m a z a z a z a b z b z b z b z H (3-2) 那么,在MATLAB 中系统函数的零极点就可通过函数roots 得到,也可借助函数tf2zp 得到,tf2zp 的语句格式为:[Z,P,K]=tf2zp(B,A)其中,B 与A 分别表示)(z H 的分子与分母多项式的系数向量。

MATLAB实验教程

MATLAB实验教程

目录实验一、MATLAB 基本应用实验二、实验二信号的时域表示实验三、连续信号卷积实验四、典型周期信号的频谱表示实验五、傅立叶变换性质研究实验六、系统的零极点分析实验七离散信号分析实验一 MATLAB 基本应用一、实验目的:学习MATLAB的基本用法,了解 MATLAB 的目录结构和基本功能以及MATLAB在信号与系统中的应用。

二、实验内容:例一已知x的取值范围,画出y=sin(x)的图型。

参考程序:x=0:0.05:4*pi;y=sin(x);plot(y)例二计算y=sin(π/5)+4cos(π/4)例三已知z 取值范围,x=sin(z);y=cos(z);画三维图形。

z=0:pi/50:10*pi;x=sin(z);y=cos(z);plot3(x,y,z)xlabel('x')ylabel('y')zlabel('z')例四已知x的取值范围,用subplot函数绘图。

参考程序:x=0:0.05:7;y1=sin(x);y2=1.5*cos(x);y3=sin(2*x);y4=5*cos(2*x);subplot(2,2,1),plot(x,y1),title('sin(x)') subplot(2,2,2),plot(x,y2),title('1.5*cos(x)') subplot(2,2,3),plot(x,y3),title('sin(2*x)') subplot(2,2,4),plot(x,y4),title('5*cos(2*x)')单位阶跃信号 u(t+3)-2u(t)其中 u(t)=1/2+(1/2)sign(t)Sigh(t)是符号函数t>0时为1,t<0时为-1;clear all%利用maple中的heaviside函数来实现u(t+3)-2u(t)syms tf=maple('Heaviside(t+3)-2*Heaviside(t)');t1=-3*pi:0.01:3*pi;%注意精度问题ff=subs(f,t,t1);figure(1);plot(t1,ff);axis([-5,5,-1.2,1.2]);title('u(t+3)-2u(t)');%利用自己编写的heaviside函数来实现u(t+3)-2u(t)t=-5:0.01:5;f=Heaviside(t+3)-2*Heaviside(t);figure(2);plot(t,f);axis([-5,5,-1.2,1.2]);title('u(t+3)-2u(t)')%利用符号函数来实现u(t)t=-5:0.05:5;f=sign(t);ff=1/2+1/2*f;figure(3);plot(t,ff);axis([-5 5 -0.1 1.1]);title('u(t)')%利用符号函数来实现u(t+3)-2u(t)t=-5:0.01:5;f=(1/2+1/2*sign(t+3))-2*(1/2+1/2*sign(t));figure(4)plot(t,f),axis([-5,5,-1.2,1.2]),title('u(t+3)-2u(t)')MATLAB提供了一个ezplot函数绘制隐函数图形,下面介绍其用法。

零极点 调整 matlab

零极点 调整 matlab

零极点调整 matlab在Matlab中调整零极点的方法,可以通过使用控制系统工具箱(Control System Toolbox)中的函数来完成。

下面是一个简单的例子,展示如何创建一个传递函数,然后调整其零极点:matlab复制代码% 导入控制系统工具箱import control.matlab.*% 创建一个传递函数num = [1]; % 分子多项式系数den = [121]; % 分母多项式系数sys = tf(num, den); % 创建传递函数% 打印原始系统的零极点zp = tfreport(sys); % 打印零极点disp(zp.Zeros); % 显示零点disp(zp.Poles); % 显示极点% 调整系统的零极点new_zeros = [-2-3]; % 新的零点new_poles = [-4-5]; % 新的极点sys_new = tf(num, den, new_zeros, new_poles); % 创建新的传递函数% 打印调整后系统的零极点zp_new = tfreport(sys_new); % 打印新的零极点disp(zp_new.Zeros); % 显示新的零点disp(zp_new.Poles); % 显示新的极点在这个例子中,我们首先创建了一个传递函数sys,然后使用tfreport函数打印出其零极点。

然后,我们创建了一个新的传递函数sys_new,其零极点被调整为指定的值。

最后,我们再次使用tfreport函数打印出新的零极点。

注意:在调整零极点时,需要确保新的零极点是合理的,即它们不应该在复平面的无穷远处,也不应该在实数轴上。

matlab计算零极点分布图

matlab计算零极点分布图

matlab计算零极点分布图最近看书过程中看到⼀个matlab内容和⼤家分享分享通过编程来计算单位冲击响应,单位阶跃y(t)和频率响应H(jw)程序如下clc%清空命令⾏clear%从⼯作区中删除项⽬、释放系统内存clf%清空当前图窗窗⼝num=[1];den=[1 2 2 1];sys=tf(num,den);%构成传递函数poles=roots(den);%求极点subplot(211);%图1pzmap(sys);%零极点分布图显⽰[r,p,k]=residue(num,den)%实现部分分式展开的t=0:0.02:10;h1=impulse(num,den,t);%单位冲击响应subplot(222)plot(t,h1,'linewidth',4)title('冲击响应','fontsize',16)xlabel('时间\t','fontsize',16)h2=step(num,den,t);%单位阶跃响应subplot(223)plot(t,h2,'linewidth',4)title('阶跃响应','fontsize',16)xlabel('时间\t','fontsize',16)[H,w]=freqs(num,den);subplot(224)plot(w,abs(H),'linewidth',4)xlabel('频率\omega','fontsize',16)title('幅频特性','fontsize',16)ylabel('幅值H(jw)','fontsize',16)2、零极点分布图。

信号与系统-MATLAB综合实验课程设计

信号与系统-MATLAB综合实验课程设计

信号与系统-MATLAB综合实验课程设计一、课程设计的目的和意义在信号与系统学习中,MATLAB是非常重要的工具。

本课程设计主要目的是让学生通过实验,掌握使用MATLAB进行信号与系统分析和处理的方法和技巧。

同时,课程设计还能够加深学生对信号与系统理论知识的理解和掌握,提高其综合运用能力。

二、课程设计的内容和要求1. 实验一:信号的生成和绘制本实验主要包括以下内容:•生成几种基本信号(如正弦信号、方波信号、三角波信号等)。

•通过MATLAB绘制生成的信号,并加上合适的标注。

要求学生能够掌握信号的生成方法和MATLAB的绘图函数的使用。

2. 实验二:信号的运算与变换本实验主要包括以下内容:•对已有信号进行运算(如加、减、乘、除等)。

•对信号进行卷积、相关等线性变换操作。

•对信号进行傅里叶变换,并绘制幅度谱、相位谱等图形。

要求学生能够掌握信号的运算、变换方法和MATLAB的相应函数的使用。

3. 实验三:系统的分析和建立本实验主要包括以下内容:•对系统进行零极点分析,并绘制零极点图。

•对已有系统进行时域和频域分析(如阶跃响应、冲击响应、幅频响应等)。

要求学生能够掌握系统的分析方法和MATLAB的相应函数的使用。

4. 实验四:信号的滤波和降噪本实验主要包括以下内容:•对信号进行数字滤波(如低通滤波、高通滤波、带通滤波、带阻滤波等)。

•对信号进行去噪处理(如中值滤波、小波变换去噪等)。

要求学生能够掌握信号滤波、降噪方法和MATLAB的相应函数的使用。

三、课程设计的实施流程1.分组。

依据班级人数以及教学设备的数量,安排学生分为若干个小组,每个小组3-4人。

2.模拟分配实验。

询问小组成员们的意见,模拟分配每个小组所要完成的课程设计任务。

3.实验操作。

每个小组根据分配到的实验课程设计,使用MATLAB进行模拟操作。

4.结果展示。

每个小组进行结果展示,介绍自己的设计思路,并展示实验结果。

其他小组成员以及教师进行现场互相交流和讨论。

matlab零极点对系统幅频的影响动态过程_概述说明

matlab零极点对系统幅频的影响动态过程_概述说明

matlab零极点对系统幅频的影响动态过程概述说明1. 引言1.1 概述本文将探讨零极点对系统幅频的影响动态过程。

在控制系统中,零极点是系统的重要特性,它们决定了系统的稳定性、相位和幅频响应等关键指标。

通过分析和理解零极点对幅频响应的直接影响,我们可以更好地设计和优化控制系统。

1.2 文章结构本文共分为五个部分。

引言部分介绍了文章的主题和目的,以及概述了整篇文章的结构。

第二部分将概述零极点对系统幅频的影响动态过程,包括系统的零极点分布、幅频响应的定义及意义以及零点和极点对幅频响应的直接影响。

第三部分将详细解释零极点对系统幅频的影响动态过程,包括零点变化引起的幅频响应变化、极点变化引起的幅频响应变化以及零极点共振现象及其特性分析。

第四部分将通过实例分析与案例研究来进一步说明理论知识,并提供具体示例演示单纯增加零点和移动极点对系统幅频响应的变化。

最后,结论与展望部分总结了文章的主要观点和研究结果,并提出了研究不足之处以及未来的展望。

1.3 目的本文旨在深入研究零极点对系统幅频的影响动态过程,通过理论分析和实例演示,探讨零点和极点对幅频响应的直接影响,并解释零极点共振现象及其特性。

通过这些内容,读者可以更好地理解和应用控制系统中零极点的重要性,为系统设计与优化提供指导。

本文旨在为相关领域的研究人员和工程师提供有价值的参考和启发。

2. 零极点对系统幅频的影响动态过程概述2.1 系统的零极点分布在控制系统中,零点和极点是系统传递函数的特殊点。

零点表示在该频率下系统传递函数取零值,而极点则表示在此频率下系统传递函数出现无穷大或奇异性。

系统的零极点分布对于系统的动态响应和稳定性有重要影响。

2.2 幅频响应的定义及意义幅频响应是指输入信号在不同频率下通过系统后输出信号的幅度变化。

通过分析这种变化可以了解系统对于不同频率成分的响应特性。

幅频响应反映了系统对于各个频率成分信号放大或衰减的情况,从而可以评估控制系统的性能和特征。

用MATLAB画零极点图.

用MATLAB画零极点图.

>> num=[1 2 1]; >> den=[1 5 3 8 9]; >> t=0.2; >> G1=tf(num,den) %没有采样时间 t,则显示为传递函数,自变量为 s
Transfer function: s^2 + 2 s + 1
----------------------------s^4 + 5 s^3 + 3 s^2 + 8 s + 9
• s^4 + 3 s^3 + 8 s^2 + 4 s + 2

• >> G1=zpk(G);
• >> z=G1.z;
• >> p=G1.p;
• >> Z=z{:};
• >> P=p{:};
• >> k=G1.k;
• >> pzmap(G);
• >> pzmap(G1);
• >> grid on
将传递函数化为零极点增益模型 并绘制零极点图
>> num2=[1 7 12]; >> den2=[1 3 2]; >> G2=tf(num2,den2);
>> G=series(G1,G2) 或 >> G=G1*G2 %串联
Transfer function: 2 s^4 + 20 s^3 + 71 s^2 + 107 s + 60
---------------------------------------s^5 + 7 s^4 + 19 s^3 + 25 s^2 + 16 s + 4

利用matlab进行信号与系统分析实验

利用matlab进行信号与系统分析实验

【实验1】利用matlab 进行信号的时域分析 (1)指数信号 >>A=1; >> a=-0.4;>> t=0:0.01:10;>> ft=A*exp(a*t); >> plot(t,ft); >> grid;>> axis([0 10 -0.1 1.1]; >> xlabel('t') >> ylabel('ft')(2)正弦信号 >> A=1; >> w0=2*pi; >> phi=pi/6; >> t=0:0.01:3; >> ft=A*sin(w0*t+phi); >> plot(t,ft); >> grid;>> axis([0 3 -1.1 1.1]); >> xlabel('t') >> ylabel('ft')()t f t Ae α=()sin()f t A t ωϕ=+>>x=linspace(-20,20); >> y=sinc(x/pi); >> plot(x,y);>> grid; >> axis([-21 21 -0.5 1.1]); >> xlabel('x') >> ylabel('y')(4)矩形脉冲信号 >> t=0:0.001:4; >> T=1;>> ft=rectpuls(t-2*T,2*T); >> plot(t,ft); >> grid;>> axis([-1 5 -0.1 1.1]); >> xlabel('t') >>ylabel('ft')t t t Sa t f )sin()()(==)]()([)()(10τετετ+-+==t t A t G t ffunction ft=heaviside(t) ft=(t>0); >> t=-1:0.001:3; >> ft=heaviside(t); >> plot(t,ft); >> grid;>> axis([-1 3 -0.1 1.1]); >> xlabel('t') >>ylabel('ft')(6)复指数信号的时域波形 >> t=0:0.1:60;>> f=exp(-0.1*t).*sin(2/3*t); >> plot(t,f); >> grid;>> axis([0 60 -1 1]); >> xlabel('Time(sec)') >>ylabel('f(t)')⎩⎨⎧<>=)0(0)0(1)(t t t ε)32sin()(1.0t e t f t -=(7)加入随机噪声的正弦波>> t=0:0.001:50;>> y=sin(2*pi*50*t);>> s=y+randn(size(t)); >> subplot(2,1,1);>> plot(t(1:100),y(1:100)); >> grid;>> subplot(2,1,2);>> plot(t(1:100),s(1:100)); >>grid;(8)周期矩形波>> A=1;>> t=0:0.0001:5;>> y=A*square(2*pi*t,20); >> plot(t,y);>> grid;>> axis([0 5 -1.5 1.5]);(9)信号的基本运算>> syms t;>>f=sym('(t/2+1)*(heaviside(t+2)-heaviside(t-2))');>>subplot(3,2,1),ezplot(f,[-3,3]);>>grid;>> y1=subs(f,t,t+2);>> subplot(3,2,2),ezplot(y1,[-5,1]);>> title('f(t+2)');>> grid;>> y2=subs(f,t,t-2);>> subplot(3,2,3),ezplot(y2,[-1,5]);>> title('f(t-2)');>> grid;>> y3=subs(f,t,-t);>> subplot(3,2,4),ezplot(y3,[-3,3]);>> title('f(-t)');>> grid;>> y4=subs(f,t,2*t);>> subplot(3,2,5),ezplot(y4,[-2,2]);>> title('f(2t)');>> grid;例1求系统y ”(t )+2y ’(t )+100y (t )=10f (t )的零状态响应,已知f (t )=(sin2πt ) ε(t )。

Matlab绘制零极点图、判断稳定

Matlab绘制零极点图、判断稳定

4
Xidian University, ICIE. All Rights Reserved
Matlab绘制零极点图、判断稳定
系统的零极图,如图所示,可见系统有4个极点,
2个零点,其中在虚轴上有一对共轭极点,故该系统是
不稳定的。
1.5 0.89
不稳定系统
0.81
0.7 0.56 0.38 0.2
1 0.95
Imaginary Axis
0.5 0.988
03
2.5
2Hale Waihona Puke 1.510.5
-0.5 0.988
-1 0.95
0.89
0.81
0.7 0.56 0.38 0.2
-1.5
-3
-2.5
-2
-1.5
-1
-0.5
0
0.5
Real Axis
5
Xidian University, ICIE. All Rights Reserved
Matlab绘制零极点图、判断稳定
K1.19 Matlab绘制零极点图、判断稳定
例:利用MATLAB画出系统
H
(s)

s4

s2 3s3

4s 3 4s2 6s

4
的零极点图,并判断系统的稳定性。
解:b=[1 4 3]; %分子系数,按降幂顺序排列 a=[1 3 4 6 4]; %分母系数,按降幂顺序排列 sys=tf(b,a) pzmap(sys);sgrid; azp=roots(a); %求出极点azp,在左半平面即为稳定
title('不稳定系统'); elseif wd==1
title('稳定系统'); end

信号与系统实验指导全部实验答案

信号与系统实验指导全部实验答案

信号与系统实验指导全部实验答案实验一连续时间信号的MATLAB 表示实验目的 1.掌握MATLAB 语言的基本操作,学习基本的编程功能; 2.掌握MATLAB 产生常用连续时间信号的编程方法;3.观察并熟悉常用连续时间信号的波形和特性。

实验原理:1. 连续信号MA TLAB 实现原理从严格意义上讲,MATLAB 数值计算的方法并不能处理连续时间信号。

然而,可用连续信号在等时间间隔点的取样值来近似表示连续信号,即当取样时间间隔足够小时,这些离散样值能够被MATLAB 处理,并且能较好地近似表示连续信号。

MATLAB 提供了大量生成基本信号的函数。

比如常用的指数信号、正余弦信号等都是MATLAB 的内部函数。

为了表示连续时间信号,需定义某一时间或自变量的范围和取样时间间隔,然后调用该函数计算这些点的函数值,最后画出其波形图。

实验内容:正弦信号抽样信号矩形脉冲信号单位跃阶信号实验编程:(1)t=0:0.01:3;K=2;a=-1.5;w=10; ft=K*exp((a+i*w)*t); A=real(ft); B=imag(ft); C=abs(ft);D=angle(ft);subplot(2,2,1),plot(t,A),grid on;title('实部');subplot(2,2,2),plot(t,B),grid on;title('虚部'); subplot(2,2,3),plot(t,C),grid on;title('取模'); subplot(2,2,4),plot(t,D),grid on;title('相角');实部2211-1-2-1取模相角25100-5(2)t=0:0.001:3;y=square(2*pi*10*t,30);方波信号plot(t,y);axis([0,1,-1,1]); title('方波信号');0.5-0.5-1 00.20.40.60.81(3)t=-2:0.01:2;y=uCT(t+0.5)-uCT(t-0.5); plot(t,y),grid on axis([-2,2,0,1.5]); xlabel('t(s)'),ylabel('y(s)') title('门函数')10.50 -2-1.5-1-0.5门函数y (s )0t(s)0.511.52实验二连续时间LTI 系统的时域分析实验目的1.运用MATLAB 符号求解连续系统的零输入响应和零状态响应; 2.运用MATLAB 数值求解连续系统的零状态响应; 3.运用MATLAB 求解连续系统的冲激响应和阶跃响应;4.运用MATLAB 卷积积分法求解系统的零状态响应。

实验四 离散时间信号与系统分析

实验四 离散时间信号与系统分析

实验四离散时间信号与系统分析实验四离散时间信号与系统分析一、实验目的1、理解离散信号及系统的时频域分析方法2、掌握Matlab进行信号的卷积、z变换及逆z变换的方法。

3、掌握Matlab进行离散系统时频域的分析方法二、实验时数:2学时三、实验相关知识(一)离散信号的卷积利用函数(,)可以计算离散信号的卷积和,c conv a b即c(n)=a(n)*b(n),向量c长度是a,b长度之和减1。

若a(n)对应的n的取值范围为:[n1, n2];b(n)对应的n的取值范围为:[n3, n4],则c(n)=a(n)*b(n)对应的n的取值范围为:[n1+n3, n2+n4]。

例4-1:已知两序列:x(k)={1,2,3,4,5;k=-1,0,1,2,3},y(k)={1,1,1;k=-1,0,1},计算x(k)*y(k),并画出卷积结果。

解:利用conv()函数进行离散信号的卷积,注意卷积信号的k 值范围k_x = -1:3;x=[1,2,3,4,5];k_y = -1:1;y=[1,1,1];z=conv(x,y);k_z= k_x(1)+k_y(1):k_x(end)+k_y(end); stem(k_z,z);(二)离散信号的逆z 变换离散序列的z 变换通常是z 的有理函数,可表示为有理分式的形式,因此可以现将X(z)展开成一些简单而常用的部分分式之和,然后分别求出各部分分式的逆变换,把各逆变换相加即可得到X(z)的逆变换x(n)。

设离散信号的z 变换式如下,120121212()()1()m m n n b b z b z b z num z X z a z a z a z den z ------++++==++++在Matlab 中进行部分分式展开的函数为residuez (),其调用形式如下:[r,p,k] = residuez(num,den)其中num=[b0, b1, …, bm]表示X(z)有理分式的分子多项式为12012m m b b z b z b z ---++++;den=[a0, a1, …, am]表示X(z)有理分式的分母多项式为12012m m b b z b z b z ---++++,注意分子分母多项式均为按z -1的降幂排列的多项式,缺项应补零。

【实验】连续时间系统S域零极点分析

【实验】连续时间系统S域零极点分析

【关键字】实验实验七连续时间系统S域零极点分析一、目的(1)掌握连续系统零极点分布与系统稳定性关系(2)掌握零极点分布与系统冲激响应时域特性之间的关系(3)掌握利用MATLAB进行S域分析的方法二、零极点分布与系统稳定性根据系统函数的零极点分布来分析连续系统的稳定性是零极点分析的重要应用之一。

稳定性是系统固有的性质,与激励信号无关,由于系统函数包含了系统的所有固有特性,显然它也能反映出系统是否稳定。

对任意有界信号,若系统产生的零状态响应也是有界的,则称该系统为稳定系统,否则,则称为不稳定系统。

上述稳定性的定义可以等效为下列条件:●时域条件:连续系统稳定充要条件为,即冲激响应绝对可积;●复频域条件:连续系统稳定的充要条件为系统函数的所有极点位于S平面的左半平面。

系统稳定的时域条件和频域条件是等价的。

因此,只要考察系统函数的极点分布,就可判断系统的稳定性。

对于三阶以下的低阶系统,可以利用求根公式方便地求出极点位置,从而判断系统稳定性,但对于告阶系统,手工求解极点位置则显得非常困难。

这时可利用MATLAB来实现这一过程。

例7-1:已知某连续系统的系统函数为:试用MATLAB求出该系统的零极点,画出零极点图,并判断系统是否稳定。

解:调用实验六介绍的绘制连续系统零极点图函数sjdt即可解决此问题,对应的MATLAB命令为:a=[8 2 3 1 5];b=[1 3 2];[p,q]=sjdt(a,b)运行结果为:p =-0.6155 - 0.6674i -0.6155 + 0.6674i 0.4905 - 0.7196i 0.4905 + 0.7196iq =-2 -1绘制的零极点图如图7-1所示。

由程序运行结果可以看出,该系统在S平面的右半平面有一对共轭极点,故该系统是一个不稳定系统。

三、零极点分布与系统冲激响应时域特性设连续系统的系统函数为,冲激响应为,则显然,必然包含了的本质特性。

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

信号与系统实验四 离散时间LTI系统分析实验报告资料

信号与系统实验四  离散时间LTI系统分析实验报告资料

实验四 离散时间LTI 系统分析一、实验目的(一)掌握使用Matlab 进行离散系统时域分析的方法1、学会运用MATLAB 求离散时间系统的零状态响应2、学会运用MATLAB 求解离散时间系统的单位样值响应3、学会运用MATLAB 求解离散时间系统的卷积和(二)掌握使用Matlab 进行离散时间LTI 系统z 域分析的方法1、学会运用MATLAB 求离散时间信号的z 变换和z 反变换2、学会运用MATLAB 分析离散时间系统的系统函数的零极点3、学会运用MATLAB 分析系统函数的零极点分布与其时域特性的关系4、学会运用MATLAB 进行离散时间系统的频率特性分析二、实验条件装有matlab2015a 的计算机一台三、实验内容(一)熟悉两部分相关内容原理 (二)完成作业1、表示某离散LTI 系统的差分方程如下:)()()(.)(.)(12240120-+=---+n x n x n y n y n y其中,)(n x 为激励,)(n y 为响应。

(1)试用MATLAB 命令中的filter 函数求出并画出)(n x 为单位阶跃序列时系统的零状态响应;程序:a=[1 0.2 -0.24];b=[1 1];n=-5:30;x=uDT(n);y=filter(b,a,x);stem(n,y,'fill');xlabel('n');title('x(n)为单位阶跃序列时系统的零状态响应');运行结果:(2)试用MATLAB命令求出并画出系统的单位样值响应[注:分别用filter函数和impz 函数求解,并比较二者结果是否一致];程序:%filter函数a=[1 0.2 -0.24];b=[1 1];n=0:30;x=impDT(n);y=filter(b,a,x);subplot(211);stem(n,y,'fill');xlabel('n');title('filter函数求系统的单位样值响应');%impz函数subplot(212);impz(b,a,30);title('impz 函数求系统的单位样值响应');运行结果:(3)试用MATLAB 命令中的conv 函数求出并画出)(n x 为单位阶跃序列时系统的零状态响应[注:)()(n h n x 和各取前100个样点],并与(1)的结果进行比较; 程序:a=[1 0.2 -0.24]; b=[1 1]; n=-50:50; x1=impDT(n); y1=filter(b,a,x1);nx=-50:50; nh=-50:50;x=double(uDT(nx)); h=double(y1); y=conv(x,h); ny1=nx(1)+nx(1);ny=ny1+(0:(length(nx)+length(nh)-2)); stem(ny,y,'fill');xlabel('n');title('y(n)=x(n)*h(n)'); axis([-5,30,0,2.5]);运行结果:(4)试用MATLAB 命令求出此系统的系统函数)(z H ,并画出相应的零极点分布图,根据零极点图讨论该系统的稳定性; 程序:a=[1 0.2 -0.24]; b=[1 1 0]; zplane(b,a);legend('零点','极点'); title('零极点分布图');运行结果:结论:该因果系统的极点全部在单位圆内,故系统是稳定的。

实验四 、 零极点实验及其频响

实验四 、 零极点实验及其频响

实验四 零极点实验及其频响[实验目的]1.掌握系统函数零极点定义2.零极点与频响的关系3.零极点与系统稳定性的关系4.状态方程含义5.使用zplane 函数[实验原理]该实验用MATLAB 中库函数,如tf2zp(b,a),ss2zp(A,B,C,D),zplane(z,p),freqz(b,a)等。

例如:1.传递函数为14.025.0)(22+++-=s s s s s H ,求其零极点图。

程序如下:num=[1 0.5 2]; 分子系数,按降幂顺序排列den=[1 0.4 1]; 分母系数,按降幂顺序排列[z,p]=tf2zp(num,den); 用tf2zp 函数求出其零点z 和极点pzplane(z,p) 作出零极点图2.若给出的是滤波器的输入与输出的状态方程,如:u x x ⎥⎦⎤⎢⎣⎡+⎥⎦⎤⎢⎣⎡-='013101,[]ux y 0141+⎥⎦⎤⎢⎣⎡-=,求其零极点图。

程序如下:A=[1,0;1,-3];B=[1;0];C=[-41,1];D=0;[z,p]=ss2zp(A,B,C,D);求出其零极点z,pzplane(z,p)在连续时间系统中,当极点在虚轴的右半平面时,系统不稳定,在虚轴上,单阶极点系统稳定;若零点均处于左半平面内,则系统为最小相位系统。

在离散系统中,极点在单位圆外系统不稳定,在单位圆上,单阶极点系统稳定;零点在单位圆内,系统为最小相位系统。

对一滤波器,我们不仅要知道它的零点和极点,还要了解它的频率特性,本实验可求其频率特性。

对模拟滤波器,可用freqs 函数求得其频率特性,对数字滤波器,则用freqz 函数求得。

例3.已知模拟滤波器的传递函数为14.013.02.0)(22++++=s s s s s H ,求其频率特性。

程序如下:num=[0.2 0.3 1];den=[1 0.4 1]; w=logspace(-1,1); 频率范围freqs(num,den,w)例4.数字滤波器21214.013.02.0)(----++++=z z z zz H ,取样点数为128点,求其频率特性。

实验4Z变换和系统频域特性的MATLAB实现

实验4Z变换和系统频域特性的MATLAB实现

实验4Z变换和系统频域特性的MATLAB实现⼩实验4 Z 变换和系统频域特性的MATLAB 实现1. 实验⽬的学习通过Z 变换来分析离散系统的频率响应,并⽤MATLAB 实现。

加深对系统的零、极点分布概念的理解。

2. 实例分析2.1通过Z 变换分析求解系统的冲激响应()h n已知⽤线性常系数差分⽅程:1()()()NMk r k r y n a y n k b x n r ===-+-∑∑表⽰的线性时不变系统其系统函数为:01()()()1Mrr r N kk k b zY z H z X z a z-=-===-∑∑ (3-1)上式为两个关于1z -的多项式之⽐,即()H z 为有理分式。

同时,式可以表⽰成部分分式的形式:110()1NM Nkk k k k k R H z C z p z ---===+-∑∑ 则可以通过所熟悉的常见序列的Z 变换形式求得()H z 的Z 反变换,从⽽求得系统的冲激响应函数()h n 。

MATLAB 提供了⼀个内部函数residuez( ),来计算有理多项式的留数和直接项,residuez( )函数有⼏种调⽤⽅式:(1)[R,p,C] = residuez(b,a),在已知以分⼦⾏向量b 和分母⾏向量a 下,得到列向量R 含有留数,列向量p 是极点位置,⾏向量C 包含直接项;(2)[b,a] = residuez(R,p,C),将部分分式展开式转换到分⼦⾏向量b 和分母⾏向量a.MATLAB 还提供了⼀个内部函数impz(b,a,N),在已知分⼦⾏向量b 和分母⾏向量a 下,计算N 点的单位冲激响应()h n 。

例3.1 求系统:123412340.0018360.0073440.0110160.0073740.001836()1 3.0544 3.8291 2.29250.55075z z z z H z z z z z --------++++=-+-+的单位冲激响应()h n 。

自动控制原理MATLAB仿真实验指导书(4个实验)

自动控制原理MATLAB仿真实验指导书(4个实验)

自动控制原理MATLAB仿真实验实验指导书电子信息工程教研室实验一典型环节的MA TLAB仿真一、实验目的1.熟悉MATLAB桌面和命令窗口,初步了解SIMULINK功能模块的使用方法。

2.通过观察典型环节在单位阶跃信号作用下的动态特性,加深对各典型环节响应曲线的理解。

3.定性了解各参数变化对典型环节动态特性的影响。

二、SIMULINK的使用MATLAB中SIMULINK是一个用来对动态系统进行建模、仿真和分析的软件包。

利用SIMULINK功能模块可以快速的建立控制系统的模型,进行仿真和调试。

1.运行MA TLAB软件,在命令窗口栏“>>”提示符下键入simulink命令,按Enter键或在工具栏单击按钮,即可进入如图1-1所示的SIMULINK仿真环境下。

2.选择File菜单下New下的Model命令,新建一个simulink仿真环境常规模板。

图1-1 SIMULINK仿真界面图1-2 系统方框图3.在simulink仿真环境下,创建所需要的系统。

以图1-2所示的系统为例,说明基本设计步骤如下:1)进入线性系统模块库,构建传递函数。

点击simulink下的“Continuous”,再将右边窗口中“Transfer Fen”的图标用左键拖至新建的“untitled”窗口。

2)改变模块参数。

在simulink仿真环境“untitled”窗口中双击该图标,即可改变传递函数。

其中方括号内的数字分别为传递函数的分子、分母各次幂由高到低的系数,数字之间用空格隔开;设置完成后,选择OK,即完成该模块的设置。

3)建立其它传递函数模块。

按照上述方法,在不同的simulink的模块库中,建立系统所需的传递函数模块。

例:比例环节用“Math”右边窗口“Gain”的图标。

4)选取阶跃信号输入函数。

用鼠标点击simulink下的“Source”,将右边窗口中“Step”图标用左键拖至新建的“untitled”窗口,形成一个阶跃函数输入模块。

基于Matlab进行系统的传递函数的零极点求解及与空间状态表达式的转换

基于Matlab进行系统的传递函数的零极点求解及与空间状态表达式的转换

基于Matlab进行系统的传递函数的零极点求解及与空间状态表达式的转换
系统的传递函数的零极点求解及与空间状
态表达式的转换
一、学习目的
1、学习系统状态空间模型的建立方法、了解状态空间模型与传递函数相互转换的方法;
2、通过编程、上机调试,掌握系统状态空间模型与传递函数相互转换的方法。

二、原理说明
1.根据所给系统的传递函数,依据系统的传递函数阵和状态空间表达式之间的关系,采用MATLA 的file.m 编程。

2.已知系统的传递函数求极点的matlab 编程。

三、Matlab 程序 给定系统6
11654232+++++=s s s s s G S )(,求系统的极点和空间状态模型。

程序:
num=[0 1 4 5];
den=[1 6 11 6]; sys=tf(num,den)
6
11654sys 232+++++=s s s s s
sys1=tf22p(num,den)
sys1=-2.0000+1.0000i
-2.0000-1.0000i [A,B,C,D]=tf22p(num,den) A= -6 -11 -6
1 0 0
0 1 0
B= 1
C= 1 4 5
D= 0。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验四连续时间系统复频域分析和离散时间系统z域分析
一.实验目的:
1.掌握连续信号拉氏变换和拉氏反变换的基本实现方法。

2.熟悉laplace函数求拉普拉斯变换,ilaplace函数求拉氏反变换
的使用。

3.掌握用ztrans函数,iztrans函数求离散时间信号z变换和逆z
变换的基本实现方法。

4.掌握用freqs函数,freqz函数由连续时间系统和离散时间系统
系统函数求频率响应。

5.掌握zplane零极点绘图函数的使用并了解使用零极点图判断系
统稳定性的原理。

二、实验原理:
1.拉氏变换和逆变换
原函数()()
↔象函数
f t F s
记作:[()]()
=→拉氏变换
L f t F s
1[()]()
-=→拉氏反变换
L F s f t
涉及函数:laplace,ilapace.
例如:
syms t;laplace(cos(2*t))
结果为:ans =s/(s^2+4)
syms s;ilaplace(1./(s+1))
结果为:ans = exp(-t)
2. 系统传递函数H(s)或H(z)。

12121212...()()()...m m m n n n
b s b s b B s H s A s a s a s a ----+++==+++ 112112...()()()...m m m n n n
b z b z b B z H z A z a z a z a --+--++++==+++ 其中,B 为分子多项式系数,A 为分母多项式系数。

涉及函数:freqz,freqs.
3. 系统零极点分布与稳定性的判定。

对于连续时间系统,系统极点位于s 域左半平面,系统稳定。

对于离散时间系统,系统极点位于z 域单位圆内部,系统稳定。

涉及函数:zplane.
三、 实验内容
1. 验证性实验
a) 系统零极点的求解和作图
已知2321()232
s H s s s s -=+++,使用zplane 函数作出系统零极点图并判断系统稳定性。

解:(1)系统零极点图
>> b=[1,0,-1];
>> a=[1,2,3,2];
>> zplane(b,a);
>> legend('零点','极点');
(2)判断系统稳定性
由系统零极点图可知该系统的极点位于左半平面,所以该系统稳定。

b)已知离散系统的H(z),求零极点图,并求解单位样值响应h(n)
和系统幅频响应。

解:b=[1,2,1]; a=[1,-0.5,-0.005,0.3];
subplot(311); zplane(b,a);
xlabel('零极点图');
num=[0,1,2,1];
den=[1,-0.5,-0.005,0.3];
h=impz(num,den);
subplot(312);
stem(h);
xlabel('单位样值响应');
[H,w]=freqz(num,den);
subplot(313);
plot(w/pi,abs(H));
xlabel('系统幅频响应');
2. 设计性实验
a) 已知系统传递函数22()43
s H s s s +=++,用拉普拉斯变换法求解: ✓ 使用ilaplace 函数求系统单位冲激响应h(t)。

✓ 使用ilaplace 函数求系统阶跃响应(11()()g t L H s s -⎡⎤=⨯⎢⎥⎣⎦
) ✓ 求系统对输入为cos(20)()s U t u t =的零状态响应。

✓ (选做)已知系统函数()2
z H z z =-,绘制系统零极点图,判断系统稳定性,并求系统单位样值响应h(n).
提示:使用zplane 函数和iztrans 函数。

解:syms s t; Hs=(s+2)/(s^2+4*s+3);
Us=laplace(cos(20*t));
Vos=Hs*Us;
ht=ilaplace(Hs)
gt=ilaplace(Hs*1/s)
vt=ilaplace(Vos)
输出结果(分别为系统单位冲激响应、系统阶跃响应、零状态响应)ht =
exp(-2*t)*cosh(t)
gt =
2/3-1/6*exp(-3*t)-1/2*exp(-t)
vt =
-1/802*exp(-t)+806/164009*cos(20*t)+8100/164009*sin(20*t) -3/818*exp(-3*t)
选做:
b=[1];a=[1,-2];subplot(1,1,1);zplane(b,a);
legend('零点','极点');title('零极点图');
由上图可知该系统的极点位于单位圆外,所以该系统不稳定。

syms z n;Hz=z/(z-2);h=iztrans(Hz)
输出结果为:h = 2^n
四、实验总结
通过本次实验我学会了运用matlab求拉普拉斯变换及拉氏逆变换、求离散时间信号z变换和逆z变换、由连续时间系统和离散时间系统系统函数求频率响应、绘制零极点图并使用零极点图判断系统稳定性,感受到了使用matlab分析这些内容的简便,进一步掌握了matlab在信号与系统中的运用。

相关文档
最新文档