MATLAB系统响应求解

合集下载

matlab求解零状态零输入响应

matlab求解零状态零输入响应

1. 已知离散时间系统的差分方程为:2y(n) - y(n -1) - 3y(n -2)=2x(n) - x(n -1)x(n)=0.5n u(n) , y(-1)=1,y(-2)=3 , 试用filter 函数求系统的零输入响应、零状态响应和全响应.解:将差分方程Z 变换得:12112()[()(1)]3[()(1)(2)]2()[()(1)]Y z z Y z y z Y z z y y X z z X z x -----+--+-+-=-+- (1)依题意有:x(-1)=0,x(-2)=0,y(-1)=1,y(-2)=3 ,X(z)=1110.50.5z z z -=-- 将上式变形如下: 1211(23)()[(1)3(1)3(2)](2)()z z Y z y z y y z X z --------+-+-=- ………..(2) 1211(23)()(2)()[(1)3(1)3(2)]z z Y z z X z y z y y ------=-+-+-+-1211(23)()(2)()[103]z z Y z z X z z ------=-++ (3)易得系统函数为H(z)= 12122222323z z z z z z z -----=---- ① 零输入时零输入时,x(n)=0,差分方程右边为0,z 变换后应为121(23)()103z z Y z z -----=+112103()23z Y z z z ---+=-- =2210323z z z z +-- =71835152z z z z ++- 将Y(z)进行Z 反变换,得到其零输入响应为: y(n)= 7183[(1)()]()552n n u n -+ ② 零状态时零状态时,将y(-1)=0,y(-2)=0代入上面的式(2)中,得Y(z)= 112223z z z ------X(z)= 112223z z z ------1110.5z --=22223z z z --=233 5152 z z z z++-将其Z反变换,得到零状态响应为:y(n)=233 [(1)()]() 552n n u n -+③全响应与上面同理,y(-1)=1,y(-2)=3将上面式(3)变形得:Y(z)=2212323z zz z+--=92135152z zz z++-Z反变换得全响应为Y(n)=921[]()35152z zu n z z++-程序代码:%第二章Z变换第2.12题程序clear all;close all;num=[2 -1 0]; %系统函数分子的系数den=[2 -1 -3]; %系统函数分母的系数n=0:50;nl=length(n);%求零输入响应y01=[1 3]; %y的初始状态x01=[0 0]; %x 的初始状态x1=zeros(1,nl);zi1=filtic(num,den,y01,x01); %为filter函数准备初始值y1=filter(num,den,x1,zi1); %求零输入响应subplot(311);stem(n,y1,'r.');title('零输入响应');grid on;%求零状态响应y02=[0 0];x02=[0 0];x2=0.5.^n;zi2=filtic(num,den,y02,x02);y2=filter(num,den,x2,zi2);subplot(312);stem(n,y2,'r.');title('零状态响应');grid on;%求全响应y03=[1 3];x03=[0 0];x3=0.5.^n;zi3=filtic(num,den,y03,x03);y3=filter(num,den,x1,zi3);subplot(313);stem(n,y3,'r.');title('全响应');grid on;运行结果如下:2. 已知离散系统的系统函数分别为(1)2321()21z zH zz--=-(2)31()1zH zz+=-(3)2322()2241zH zz z z+=+-+(4)332()0.20.30.4zH zz z z=+++试用MATLAB实现下列分析过程:①求出系统的零极点位置;②绘出系统的零极点图,根据零极点图判断系统的稳定性;③绘出系统单位响应的时域波形,并分析系统稳定性与系统单位响应时域特性的关系。

基于MATLAB的机械振动系统响应求解

基于MATLAB的机械振动系统响应求解

基于MATLAB的机械振动系统响应求解柴保明;王远东;琚斌峰;郭新宇;华龙【摘要】以一个二自由度汽车振动系统为研究对象,通过分析该系统中汽车悬架的振动形式及受力状况,求解该振动系统的数学模型和振动微分方程.运用Matlab软件编程求出汽车悬架的转角θ和质心位移X,绘出该振动系统响应的图像.求解过程简短,图像数据准确、明了,且符合振动学原理,显现了Matlab在求解此类机械振动系统的响应中的适用性和优越性,从而为求解一般机械振动系统的响应提供了简单有效的方法.%Taking a two degree of freedom car vibration system as a research object, this paper solved the mathematical model and differential equation of the vibration system through analyzing the vibration form and loading condition of automotive suspension. The comer 0 and centroid displacement X of automotive suspension were solved in the Matlab program. In addition, Matlab software gave the image result of response of vibration system. Both the brief solution program and the accurate image data which corresponded with vibration theory showed the feasibility and superiority during solving these responses of mechanical vibration system. Thereby, this research provided an easy and effective method to solve the response of general mechanical vibration system with.【期刊名称】《河北工程大学学报(自然科学版)》【年(卷),期】2012(029)002【总页数】3页(P75-77)【关键词】机械振动;系统响应;微分方程;Matlab【作者】柴保明;王远东;琚斌峰;郭新宇;华龙【作者单位】河北工程大学机电工程学院,河北邯郸056038;河北工程大学机电工程学院,河北邯郸056038;河北工程大学机电工程学院,河北邯郸056038;河北工程大学机电工程学院,河北邯郸056038;河北工程大学机电工程学院,河北邯郸056038【正文语种】中文【中图分类】TH123+.1机械振动会产生噪声以及有损于机械结构的动载荷,影响机器设备的工作性能和寿命。

用MATLAB进行控制系统的动态性能的分析

用MATLAB进行控制系统的动态性能的分析

用MATLAB进行控制系统的动态性能的分析MATLAB是一款功能强大的工具,可用于控制系统的动态性能分析。

本文将介绍使用MATLAB进行动态性能分析的常用方法和技巧,并提供实例来说明如何使用MATLAB来评估和改进控制系统的性能。

控制系统的动态性能是指系统对输入信号的响应速度、稳定性和精度。

评估控制系统的动态性能往往需要分析系统的阶跃响应、频率响应和稳态误差等指标。

一、阶跃响应分析在MATLAB中,可以使用step函数来绘制控制系统的阶跃响应曲线。

假设我们有一个系统的传递函数为:G(s)=(s+1)/(s^2+s+1)要绘制阶跃响应曲线,可以按照以下步骤操作:1.自动生成传递函数:num = [1 1];den = [1 1 1];G = tf(num,den);2.绘制阶跃响应曲线:step(G);二、频率响应分析频率响应分析用于研究控制系统对不同频率输入信号的响应特性。

在MATLAB中,可以使用bode函数来绘制控制系统的频率响应曲线。

假设我们有一个传递函数为:G(s)=1/(s+1)要绘制频率响应曲线,可以按照以下步骤操作:1.自动生成传递函数:num = [1];den = [1 1];G = tf(num,den);2.绘制频率响应曲线:bode(G);运行以上代码,MATLAB将生成一个包含系统幅频特性和相频特性的图形窗口。

通过观察频率响应曲线,可以评估系统的增益裕度(gain margin)和相位裕度(phase margin)等指标。

三、稳态误差分析稳态误差分析用于研究控制系统在稳态下对输入信号的误差。

在MATLAB中,可以使用step函数结合stepinfo函数来计算控制系统的稳态误差。

假设我们有一个传递函数为:G(s)=1/s要计算稳态误差,可以按照以下步骤操作:1.自动生成传递函数:num = [1];den = [1 0];G = tf(num,den);2.计算稳态误差:step(G);info = stepinfo(G);运行以上代码,MATLAB将生成一个阶跃响应曲线的图形窗口,并输出稳态误差等信息。

基于Matlab仿真的系统零、极点分布对系统响应影响

基于Matlab仿真的系统零、极点分布对系统响应影响

基于Matlab仿真的系统零、极点分布对系统响应影响对于高阶系统,若直接对其分析和控制比较困难,要对其进行降阶处理,就要考虑系统的零点、极点对系统的影响。

一般的系统,可以分为最小系统和非最小系统,首先要判断出系统的最小相位或非最小相位,在使用根轨迹或Bode图分析系统的特性,从而,分析零点、极点不同分布对系统稳定性的影响。

标签:零点;极点;最小相位;非最小相位;Bode图;稳定性1 实验原理1.1 最小相位与非最小相位最小相位系统的传递函数在S域右半平面没有极点和零点。

有以下特点:①在幅频特性相同的情况下,对于任何大于零的频率,最小相位系统的相角总小于非最小相位系统。

②最小相位系统的幅频特性与相频特性一一对应,即由对数幅频特性曲线就可得到系统传递函数。

非最小相位系统:传递函数至少有一个极点或零点在S域右半平面的系统。

1.2 系统响应的求取根据系统的传递函数可以求出系统输出的复频域表示,再进行反拉式变换即可得到系统的响应,从系统响应曲线可以看出系统的稳定性、准确性和快速性等各项指标。

1.3 幅频、相频特性幅频、相频特性分别表现的是系统对不同频率的输入信号给出的输出信号与其输入信号之间的幅值增益和相位超前/落后情况,其表现形式是Bode图。

2 Matlab中仿真及分析2.1 已知二阶系统,分析c的取值对系统阶跃响应的影响。

理论分析:当输入单位阶跃信号时,其响应表达式为y(t)=1-2(1+)e-t+(1+)e-2t。

初值为0,而中间过渡过程随c选取不同而不同,终值为1。

当c 离各极点越近,其响应表达式中模态所占权值越小。

当c0时,系统为非最小相位系统。

分别c=1、2、10。

在Matlab中对二阶系统进行仿真,仿真程序如下:clear all% c= 1 3 10 -0.3 -1 -10 时各个系统单位阶跃响应a1=[-1 1];b1=[0.5 1.5 1];ss1=tf(a1,b1);a2=[-1 2];b2=[1 3 2];ss2=tf(a2,b2);a3=[-1 10];b3=[5 15 10];ss3=tf(a3,b3);a4=[1 0.3];b4=[0.15 0.75 0.3];ss4=tf(a4,b4);a5=[1 1];b5=[0.5 1.5 1];ss5=tf(a5,b5);a6=[1 10];b6=[5 15 10];ss6=tf(a6,b6);step(ss1,’k-’,ss2,’k--’,ss3,’k:’,ss4,’k--’,ss5,’k:’,ss6,’k-’)运行即可得出二阶系统单位阶跃响应曲线如图1所示。

matlab求冲激响应和阶跃响应数值解

matlab求冲激响应和阶跃响应数值解

matlab求冲激响应和阶跃响应数值解标题:深度探讨matlab求冲激响应和阶跃响应数值解的方法一、前言在信号与系统课程中,我们经常会遇到需要求解系统的冲激响应和阶跃响应的问题。

而在实际工程实践中,我们往往需要利用计算机进行数值求解。

在本文中,我们将重点探讨如何利用matlab对系统的冲激响应和阶跃响应进行数值求解,并结合个人观点,深入探讨其中的数学原理和工程应用。

二、matlab求解冲激响应的数值解1. 离散系统的冲激响应在信号与系统中,我们经常会遇到离散系统的冲激响应求解问题。

离散系统的冲激响应可以通过卷积求解,而在matlab中,我们可以利用conv函数来进行计算。

具体来说,在matlab中,我们可以定义系统的传递函数H(z),然后利用impulse函数生成单位脉冲输入序列,再利用conv函数与传递函数H(z)进行卷积运算,即可得到离散系统的冲激响应序列。

2. 个人观点与实践应用对于离散系统的冲激响应,我个人认为在实际工程中,常常需要对数字滤波器进行设计和分析。

而利用matlab求解冲激响应可以帮助工程师们更好地理解数字滤波器的特性,从而进行参数调整和性能优化。

三、matlab求解阶跃响应的数值解1. 连续系统的阶跃响应在连续系统中,阶跃响应是指系统在接受单位阶跃输入后的响应。

在matlab中,我们可以利用step函数来求解连续系统的阶跃响应。

具体来说,我们可以利用tf函数定义连续系统的传递函数G(s),然后利用step函数对系统进行仿真,即可得到连续系统的阶跃响应曲线。

2. 个人观点与实践应用对于连续系统的阶跃响应,我认为在控制系统工程中具有重要的应用价值。

控制系统工程师们往往需要对系统的阶跃响应进行分析和优化,而利用matlab进行阶跃响应的数值求解,可以帮助工程师们更好地理解系统的动态特性,从而提高系统的稳定性和性能。

四、总结与回顾通过对matlab求解冲激响应和阶跃响应的数值解的深入探讨,我们不仅对系统的动态特性有了更深入的理解,同时也学会了如何利用matlab来进行系统动态特性的数值分析。

matlab信号与系统冲击阶跃响应报告

matlab信号与系统冲击阶跃响应报告

matlab信号与系统冲击阶跃响应报告信号与系统是电子信息工程专业的重要课程之一,也是科学技术领域中的基础理论之一。

在信号与系统的学习中,冲击响应和阶跃响应是非常重要的概念。

通过对这两种响应的研究,我们可以更好地理解信号与系统的性质,从而应用到实际工程中。

在本文中,我将针对matlab中信号与系统的冲击响应和阶跃响应进行深入探讨,并分析其在实际应用中的重要性。

1. 冲击响应的概念和特点冲击响应是指系统对冲击信号(也称为单位脉冲信号)的响应。

在matlab中,我们可以通过使用impulse函数来获取系统的冲击响应。

冲击响应具有以下几个特点:- 冲击响应是系统的自由响应,不受外部信号的影响。

- 冲击响应是系统的固有特性,可以反映系统的动态响应能力。

- 冲击响应是系统的重要性能指标之一,可以用来评估系统的稳定性和动态特性。

2. 阶跃响应的概念和特点阶跃响应是指系统对阶跃信号(也称为单位阶跃信号)的响应。

在matlab中,我们可以通过使用step函数来获取系统的阶跃响应。

阶跃响应具有以下几个特点:- 阶跃响应是系统对输入信号的稳定响应,可以反映系统的静态特性和稳定性。

- 阶跃响应可以用来评估系统的超调量、上升时间和稳定状态误差等性能指标。

- 阶跃响应在控制系统和滤波器设计中具有重要应用,是系统分析和设计的基础。

3. matlab中的信号与系统分析在matlab中,我们可以利用信号与系统工具箱来进行冲击响应和阶跃响应的分析和计算。

通过调用相应的函数,我们可以得到系统的冲击响应和阶跃响应,并对其进行进一步的分析和处理。

在实际工程中,我们可以利用matlab来进行系统建模、性能分析和参数优化,从而实现对系统行为的深入理解和控制。

4. 个人观点和理解在我看来,信号与系统的冲击响应和阶跃响应是非常重要的概念,对于理解系统的动态和静态特性具有重要意义。

通过对冲击响应和阶跃响应的研究,我们可以更好地理解系统的内在特性,从而在实际工程中进行系统设计和控制。

MATLAB在求二阶系统中阶跃响应的分析及应用

MATLAB在求二阶系统中阶跃响应的分析及应用

摘要二阶系统控制系统按数学模型分类时的一种形式,是用数学模型可表示为二阶线性常微分方程的系统。

二阶系统的解的形式,可由对应传递函数W(s)的分母多项式P(s)来判别和划分,P(s)的一般形式为变换算子s的二次三项代数式。

代数方程P(s)=0的根,可能出现四种情况。

1.两个实根的情况,对应于两个串联的一阶系统。

如果两个根都是负值,就为非周期性收敛的稳定情况。

2.当a1=0,a2>0,即一对共轭虚根的情况,将引起频率固定的等幅振荡,是系统不稳定的一种表现。

3.当a1<0,a1-4a2<0,即共轭复根有正实部的情况,对应于系统中发生发散型的振荡,也是不稳定的一种表现。

4.当a1>0,a1-4a2<0,即共轭复根有负实部的情况,对应于收敛型振荡,且实部和虚部的数值比例对输出过程有很大的影响。

一般以阻尼系数ζ来表征,取在0.4~0.8之间为宜。

当ζ>0.8后,振荡的作用就不显著,输出的速度也比较慢。

而ζ<0.4时,输出量就带有明显的振荡和较大的超调量,衰减也较慢,这也是控制系统中所不希望的。

当激励为单位阶跃函数时,电路的零状态响应称为单位阶跃响应,简称阶跃响应。

阶跃响应g(t)定义为:系统在单位阶跃信号u(t)的激励下产生的零状态响应。

关键词:二阶系统阶跃响应 MATLAB/SimulinkMATLAB 在求二阶系统中阶跃响应的分析及应用1 训练目的和要求通过对MATLAB 仿真软件的语言的学习,学会在MATLAB 中解决《电路原理》、《模拟电子技术基础》、《数字电子技术基础》等所学课本上的问题,进一步熟悉并掌握MATLAB 在电路、信号与系统、自动控制原理、数字信号处理等中的应用。

通过对软件的应用,巩固已学知识。

以求达到通过训练能熟练掌握MATLAB 的应用,能够深入到实际问题中。

要求通过理论分析所要求题目并通过MATLAB 仿真比较实验结果。

2 理论分析计算已知系统的传递函数为2121s s ζ++,求其阶跃响应。

数字信号处理实验一系统响应及系统稳定性

数字信号处理实验一系统响应及系统稳定性

实验一系统响应及系统稳定性一、实验目的1.掌握求系统响应的方法。

2. 掌握时域离散系统的时域特性。

3. 分析、观察及检验系统的稳定性。

二、实验原理与方法在时域中,描写系统特性的方法是差分方程和单位脉冲响应,在频域中可以用系统函数描述系统特性。

已知差分方程、单位脉冲响应或者系统函数求出系统对于该输入信号的响应。

本实验采用matlab语言工具箱中的filter函数和conv函数计算输入信号和系统的单位脉冲响应的线性卷积,即求出系统的响应。

三、实验内容1.编程,包括产生输入信号,单位脉冲响应序列的子序列,用filter函数和conv函数求解系统输出响应的子程序。

程序中要有绘制信号波形的功能。

2. 给定一低通滤波器的差分方程为y(n)=0.05x(n)+0.05x(n-1)+0.9y(n-1)输入信号x1(n)=R8(n), x2(n)=u(n).(1)输入为x1(n)时系统响应。

(程序及波形)设初始状态 y(-1)=1ys=1;xn=[1,zeros(1,50)];B=[0.05,0.05];A=[1,-0.9];xi=filtic(B,A,ys);hn=filter(B,A,xn,xi);n=0:length(hn)-1;stem(n,hn,'.'); x1=ones(1,8);yn=conv(x1,hn);n=0:length(yn)-1;stem(n,yn,'.')输入为u(n)时的系统响应:ys=1;xn=[1,zeros(1,50)];B=[0.05,0.05];A=[1,-0.9];xi=filtic(B,A,ys);hn=filter(B,A,xn,xi);n=0:length(hn)-1;stem(n,hn,'.'); x2=ones(1,50);yn=conv(x2,hn);n=0:length(yn)-1;stem(n,yn,'.')(2)求出系统的单位脉冲响应:ys=1;xn=[1,zeros(1,50)];B=[0.05,0.05];A=[1,-0.9];xi=filtic(B,A,ys);hn=filter(B,A,xn,xi);n=0:length(hn)-1;stem(n,hn,'.');3.给定系统的单位脉冲响应为h1(n)=R10(n), h2(n)=δ(n)+2.5δ(n-1)+2.5δ(n-2)+δ(n-3).用线性卷积求出x1(n)=R8(n)分别对于两系统的输出响应,并画出波形。

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