matlab入门学习-06控制系统的分析方法

合集下载

运用MATLAB对控制系统分析研究

运用MATLAB对控制系统分析研究

运用MATLAB 对控制系统地分析一、根轨迹分析Ks +1i1•已知系统地前向通道传递函数为G c (s)=,G o (s)=,反馈通道传递函数为 H (s )= ----------s + 5s(s+8) s+2试绘制出系统闭环根轨迹图 • b5E2RGbCAP新建Script 文件,进行编辑程序(wsk1 )如下图1所示.'Editor - D:\Proararn Files\MATLAB,,j 回Edit Text Go CelFile Took9,1X:o e ■希■ ■ 01▼+s 目 瑁 ■ 1.0 +寺 11 x1 - Gc=tf (1, [1 5]):uJ2 - G0=tf ([1 1], [1 80]);3 - [1 21);4 -rlocus (Gc*G0*H :i :5 -v=[-10 10 -10 13]6 -axis (v);grid onLn 4Col 17 OVR1.wsk1程序wsk1运行结果如图2所示.图2.根轨迹图pxc VTanrga p0.58 0.44 0.3 0.1412 10L0.7280.8460.92420.98■ ■L = --1 ■s0.9820.924*■0.84680 72 0.58 0.440.3 0.14r[T / frr r10Root Locus5 0-5 -8-6-4-2 102 Real Axis46 8 10阶系统地响应,并绘制一簇阶跃响应曲线.plEanqFDPw编辑程序(wsk2)如下图3所示•Editor• D:\Progrdm Fi|&s\MATLAB\R2010b\bL 旦・l% Edit 琢 血 Cdl ToolsD 肌…]r■ |•刁 e | * 0 * oE 计口 F ・[11 »冋-1.0+ 亠 1.1 x | 显嶽 Q1 1 -nujn=l ;y=zeros(2C0, I) :i=0; 匚 口|2 -for l)c=0. L; 0. 1:13 -d*n= [l t 2*bc 3 1]; 4-t=[0:0. 1 : 19.9] : 1 5 — sys=tf (anitj den) : t 6 一 i=i+r|17 — y ij=£tep (sys, t ): 3 --±nd9 _ 1 r.mesh*flipud 1y)j [-100 20] 1■^4:'wskl.rfl x wsk2,rri xscriptLn 6C Q I 11 OVR3.wsk2程序wsk2运行结果如下图4所示二、时域分析2.已知二阶系统地传递函数为:,当计=1时,试计算E 从0.1变至1时二图4.阶跃响应曲线(以0.1到1 )3.已知二阶系统为:kW'+cs + k,厂1,2,4 },k= {皿2,29人绘制该系统所对应地三组不同参数下地阶跃响应曲线.DXDiTa9E3d编辑程序(WSk3 )如下图5所示.* Editor - D:\Program Fi I AT LA B\R201C b\bi n\M 「回图5.程序wsk3程序wsk3运行结果如图6所示.1.4c =1 k=1.25c=2 k=2/c=4 k=2 9t i0.6 1.2 0.8 0.4 0.2 104.已知单位反馈开环零极点增益模型为: 图6.不同参数下地阶跃响应3(2s 1)G(汨打G ,试绘制该系统单位斜坡响应曲线,并计算单位斜坡响应地稳态误差 (1 )判断系统稳定性,编辑程序( wsk4 1 )如图 7 所示. 、Editor - Di\Progr^mFile5\MATLA R . File Edit Text Go T QQ I^:o a ■船■眉专*|©0*5;沪[-2 1 0]: InL dl]=ZP2TF(z J p,k): s^tf (nlj dl):sys=feedback (Sj 1); roots (sys. d?n (1Hw£k2.m梵 W5k3.m x iArsk4.1 刈tfileLn 4 Col IQOVR图7.程序wsk4 1程序wsk4 1运行结果如下所示ans =-0.1084 + 1.9541i -0.1084 - 1.9541i -0.7832由于所有根均有负实部,故闭环系统稳定 (2)求单位阶跃响应曲线及稳态误差:编辑程序(wsk4_2 )如下图8所示.j Editor - D:\Prvgram Fi|es\M AT LA DIObVbi n\M 百L」= 旦!File Edit Text Go Tools Debug Desktop »? xh1□已・i器町兔IE矗可口| :cl | 一 | + + 1.1 x | 遼・|~ ]£=6;2z=-0.5:3p=I-2 1 0];4[nl,dl]=zp2tf (Zj pj k):5s=tf (nl, dl):6sys^eedback (s, 1);7t=[0:fl.1:30]:s y=stept J :9subplot (121 pl ot1y). gri d10^s=l-y;11subplot ■ 122)plot *1, es), gridf______________________ wsk3.m * wsk4.1 乂|^wsk4J x |=nplain text file Ln 8 Col 10 OVR图8.程序wsk4_2程序wsk4_2运行结果如图9所示图9.单位阶跃响应曲线及其误差响应曲线(3)求单位斜坡响应曲线及稳态误差:编辑程序(wsk4_3 )如图10 所示.程序wsk4 3运行结果如下图11所示.ess =-0.6678图11.单位斜坡响应曲线及其误差响应曲线三、频域分析图10.程序wsk4 32 7 2 75.已知两个单位负反馈系统开环传递函数分别为:G i (s)=—— ------ , G2(S )= ———— 试s + 5s + 4ss + 5s - 4s用Bode 图法判断闭环系统地稳定性 .编辑程序(wsk5 )如图12所示./ Editor - DAHognam Fi|ei ;\MATLAB\R2D10b\bi"\MI 0,回Ale Edit Text Ga Cell Tools Debug Desktop®? XI 口已■諾、F y 士亘”為•晔盹削”丑”口 ”|二昌喝[■ ]10_ + |_* |i.i ' K I 邀 I Q,________ I1 - nun I -[0 0 0 2.7): 亠口|2 — denl= [1 S 4 0);3 « sysl=tf (imiilj denJ!):4 一 f igure (i) "hold on5 一 [<■… vqSj. vcf]=ii3r|:ii ,i(sysl); 6 一 Aaceintsysl):7 - titn r 对数频率持科圉门:| 8 ― xlabelf 4^^rad/sec*》; 自 « yLabeK^Gahn dB B);10>E11 一 rvun2二[Q 0 0 2.7].. 12 一 den2=[i 5 ^4 0]: 13 — 5ys2=tf CHLU12, dm2). 1*1 - f ig?ire<2):15三[皿叫平?小1:6:]5中讪57竝); 16 一 n.axgiin (sys2): 17 一 title 13 -xlab el 『城至zd/ s ec J);19 = ylabelCGain dE^): .2 usages of "nu... script| Ln 7 Cal IS [ OVR图12.程序wsk5运行程序wsk5结果如图13和图14 所示.可以判定系统1稳定,系统2不稳定.对数频率特性图1频率 rad/sec (rad/sec)xtofl^ea^rrngaM 50-50-100\IQeacDDa G-150 -90-135-180-225-27010 101010 210-2-11图13.传递函数G1伯德图图14.传递函数G 2伯德图版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整理 •版权为个人所有This articlein eludes someparts, in cludi ng text, pictures, and desig n.Copyright is pers onal own ership.RTCrpuDGiT用户可将本文地内容或服务用于个人学习、研究或欣赏,以及其他非商业性 或非盈利性用途,但同时应遵守著作权法及其他相关法律地规定,不得侵犯本网 站及相关权利人地合法权利.除此以外,将本文任何内容或服务用于其他用途时, 须征得本人及相关权利人地书面许可,并支付报酬 .5PCzVD7HxAUsers may use the contents or services of this article for pers onal study, researchor appreciati on, and other non-commercial or non-profit purposes, but at the same time, they shall abide by the provisi ons of copyright law and other releva nt laws, and shall not infringe upon the legitimate rights of this website and its releva nt obligees. In additi on, when any content or service of this article is used for other purposes, written permissi on and remun erati on shall be obta ined from the pers on concerned and the releva nt obligee.jLBHmAiLg转载或引用本文内容必须是以新闻性或资料性公共免费信息为使用目地地合 理、善意引用,不得对本文内容原意进行曲解、修改,并自负版权等法律责-150 -210nraG-2702对数频率特性图2-50-100-240-2 -1 0 110 10 10 10频率 rad/sec (rad/sec)10任.XHAQX74J0XReproducti on or quotati on of the content of this article must be reas on able and good-faith citati on for the use of n ews or in formativepublic free information. It shall not misinterpret or modify the original intention of thecontent of this article, and shall bear legal liability such as copyright. LDAYtRyKfE。

MATLAB中常用的控制系统设计技巧

MATLAB中常用的控制系统设计技巧

MATLAB中常用的控制系统设计技巧MATLAB是一种广泛应用于科学与工程计算的高级编程语言和环境。

在控制系统设计中,MATLAB提供了许多强大的工具和函数,可以帮助工程师进行系统建模、分析与设计。

以下是MATLAB中常用的控制系统设计技巧的介绍:1.系统建模2.系统分析3.控制器设计在MATLAB中,有多种方法可以进行控制器设计。

根据系统的需求,可以选择经典(SISO)控制器设计方法,如PID控制器,或者现代(MIMO)控制器设计方法,如线性二次调节器(LQR)。

MATLAB提供了一系列用于系统控制器设计的函数和工具箱,如pidtool、sisotool和lqr。

4.基于优化的设计MATLAB中结合了优化算法和系统设计的功能,可以实现基于优化的控制器设计。

使用MATLAB的优化工具箱,可以通过最小化目标函数来优化控制器的性能指标。

例如,可以使用fmincon函数来优化控制器的参数,以满足给定的性能要求。

5.系统仿真MATLAB中的Simulink工具可以用于系统建模和仿真。

Simulink提供了一个图形化界面,用户可以使用不同的模块来描述系统的结构和行为。

通过连接这些模块,可以构建一个完整的系统模型,并对其进行仿真。

这种图形化的建模和仿真环境使得系统设计更加直观和灵活。

6.多变量系统分析MATLAB中的控制系统工具箱提供了多变量系统分析的功能。

可以使用函数如sigma(奇异值分解)、svd(奇异值分解)等来进行系统的频域分析。

此外,MATLAB还提供了一些用于多变量控制器设计的工具,如H∞合成和μ合成。

7.稳定性分析稳定性是控制系统设计中的一个重要指标。

MATLAB中提供了一些函数和工具箱,可以帮助用户分析系统的稳定性。

例如,可以使用margin 函数来计算系统的增益裕度和相位裕度,以评估系统的稳定性。

Matlab技术控制系统性能分析指南

Matlab技术控制系统性能分析指南

MatIab技术控制系统性能分析指南概论当今社会,控制系统已成为各种领域中重要的技术和应用之一。

它们被广泛用于工业自动化、机电设备、航天航空等众多领域中。

控制系统的性能分析是确保系统正常运行和提高系统性能的必要步骤。

Mat1ab作为一种功能强大的工具,为控制系统性能分析提供了多种方法和技术。

本文将介绍一些基本的MaIIab技术,帮助读者进行控制系统性能分析。

一、系统建模在进行控制系统性能分析之前,首先需要进行系统建模。

系统建模是将实际物理系统抽象为数学模型的过程。

掌握系统建模方法对于准确分析系统性能至关重要。

Mat1ab提供了一系列工具和函数,可以用于快速建立系统模型。

有两种常用的系统建模方法:时域建模和频域建模。

1.时域建模时域建模基于系统的时间响应特性。

通过测量系统的输入和输出信号,并对其进行采样和离散化,可以得到系统的差分方程。

MaUab中的State-space函数是进行时域建模的常用工具。

它可以根据系统的状态方程和输出方程生成系统模型。

可以使用如下代码进行建模:A=∏2;341;B=[1;1];C=[10];D=O;sys=ss(A,B,C,D);其中,A、B、C和D分别表示状态空间方程的系数矩阵。

利用该函数建立的系统模型可以方便地进行时域性能分析。

2.频域建模频域建模基于系统的频率响应特性。

通过测量系统的输入和输出信号的频谱,并进行信号处理,可以得到系统的传递函数。

Mat1ab中的tf函数是进行频域建模的常用工具。

它可以根据系统的传递函数生成系统模型。

可以使用如下代码进行建模:num=[1];den=[11];sys=tf(num,den);其中,num和den分别表示传递函数的分子和分母系数。

利用该函数建立的系统模型可以方便地进行频域性能分析。

二、系统性能评估建立了系统模型之后,就可以进行系统性能的评估了。

针对不同的性能指标,可以使用不同的分析方法。

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中的控制系统设计方法解析一、引言控制系统设计是现代工程领域中的重要任务之一。

在工程实践中,控制系统的设计往往涉及到模型建立、系统分析、控制器设计和系统性能评估等多个方面。

而在MATLAB软件中,我们可以利用其强大的数值计算能力和丰富的控制系统工具箱,实现高效、准确的控制系统设计。

本文将深入探讨MATLAB中常用的控制系统设计方法,帮助读者更好地理解和运用MATLAB进行控制系统设计。

二、控制系统设计的基础1. 控制系统建模在进行控制系统设计之前,首先需要对被控对象进行建模。

MATLAB提供了多种建模方法和技术,包括基于物理原理的建模、基于数据的建模以及系统辨识等。

对于线性系统,可以使用传递函数模型或状态空间模型进行描述。

而对于非线性系统,则需要使用非线性方程或离散时间模型来进行建模。

2. 系统分析与性能要求在进行控制系统设计之前,我们需要对系统进行详细的分析,并明确性能要求。

MATLAB中提供了丰富的系统分析工具,包括时域分析、频域分析、稳定性分析、灵敏度分析等。

通过这些工具,我们可以清晰地了解系统的动态特性和频率响应,并根据性能要求来选择合适的控制策略。

三、控制器设计方法1. PID控制器设计PID控制器是最常用的控制器之一,它具有简单、易于实现的特点。

在MATLAB中,可以使用pidtune函数进行PID控制器的设计。

该函数通过优化PID参数,使系统的指定性能要求得到满足。

可以根据系统的阶跃响应、频率响应等指标来进行参数优化。

除了pidtune函数,MATLAB中还提供了pid函数和pid2函数,用于生成PID控制器。

2. 线性二次型控制器设计线性二次型控制器(LQR)是一种常用的优化控制方法,它通过优化状态反馈增益矩阵来实现系统的稳定和性能优化。

在MATLAB中,可以使用lqr函数进行LQR控制器的设计。

该函数需要输入系统的状态方程、控制权重矩阵和状态权重矩阵,通过求解Riccati方程得到最优的状态反馈增益矩阵。

MATLAB:经典控制系统的分析和设计

MATLAB:经典控制系统的分析和设计

MATLAB:经典控制系统的分析和设计9.3.1 基本操作及命令1. 访问和退出MATLAB在大多数系统中,一旦安装了MATLAB,在调用时,应执行命令MATLAB。

退出MATLAB应执行命令exit或quit。

2. 如何应用MATLAB通常以命令驱动方式应用MATLAB。

当输入单个命令时,MATLAB会立即对其进行处理,并且显示处理结果。

MATLAB 也能够执行存储在文件中的命令序列。

通过键盘输入的命令,应用向上箭头键可以被存取。

通过输入某个最新命令和调用特定的命令行,可以使屏幕内容向上滚动。

3. MATLAB的变量MATLAB的一个特点是变量在应用之前不必是维数确定的。

在MATLAB中,变量一旦被采用,会自动产生(如果必要,变量的维数以后还可以改变)。

在命令exit或quit输入之前,这些变量将保留在存储器中。

为了得到工作空间内的变量清单,可以通过键盘输入命令who,当前存放在工作空间内的所有变量便会显示在屏幕上。

命令clear能从工作空间中清除所有非永久性变量。

如果只需要从工作空间中清除某个特定变量,比如“x”,则应输入命令clear x。

4. 以“%”开始的程序行在本书中,许多MATLAB程序在编写时附有注解和说明,这些注解和说明阐明了发生在程序中的具体进程。

在MATLAB 中以“%”开始的程序行,表示注解和说明。

符号“%”类似于BASIC中“REM”。

以“%”开始的行,用来存储程序的注解或说明,这些注解和说明是不执行的。

这就是说,在MATLAB程序行中,出现在“%”以后的一切内容都是可以忽略的。

如果注解或说明需要一行以上程序行,则每一行均需以“%”为起始。

5. 应用分号操作符分号用来取消打印。

如果语句的最后一个符号是分号,则打印被取消,但是命令仍在执行,而结果不再显示。

这是一个有益的特性,因为打印中间结果可能不必要。

此外,在输入矩阵时,除非最后一行,分号用来指示一行的结束。

6. 应用冒号操作符冒号操作符在MATLAB中起着重要作用。

控制系统的分析方法-MATLAB技术应用

控制系统的分析方法-MATLAB技术应用

ii=find(条件式)
用来求取满足条件的向量的下标向量,以列向量表示。
例如
条件式real(p>0),其含义就是找出极点向量p中满足实 部的值大于0的所有元素下标,并将结果返回到ii向量中去。这 样如果找到了实部大于0的极点,则会将该极点的序号返回到ii 下。如果最终的结果里ii的元素个数大于0,则认为找到了不稳 定极点,因而给出系统不稳定的提示,若产生的ii向量的元素 个数为0,则认为没有找到不稳定的极点,因而得出系统稳定 的结论。 pzmap(p,z)
系统稳定及最小相位系统的判别 方法
1、间接判别(工程方法) 劳斯判据:劳斯表中第一列各值严格为正,则系统 稳定,如果劳斯表第一列中出现小于零的数值,系 统不稳定。 胡尔维茨判据:当且仅当由系统分母多项式构成的 胡尔维茨矩阵为正定矩阵时,系统稳定。 2、直接判别 MATLAB提供了直接求取系统所有零极点的函数, 因此可以直接根据零极点的分布情况对系统的稳定 性及是否为最小相位系统进行判断。
margin()函数
margin函数可以从频率响应数据中计算出幅值裕度、相角裕度以 及对应的频率。幅值裕度和相角裕度是针对开环SISO系统而言,它 指示出系统闭环时的相对稳定性。当不带输出变量引用时,margin 可在当前图形窗口中绘制出带有裕量及相应频率显示的Bode图,其 中幅值裕度以分贝为单位。 幅值裕度是在相角为-180度处使开环增益为1的增益量,如在-180 度相频处的开环增益为g,则幅值裕度为1/g;若用分贝值表示幅值 裕度,则等于:-20*log10(g)。类似地,相角裕度是当开环增益为1.0 时,相应的相角与180度角的和。
控制系统的稳定性分析
系统稳定及最小相位系统判据
对于连续时间系统,如果闭环极点全部在S平面左 半平面,则系统是稳定的。 对于离散时间系统,如果系统全部极点都位于Z 平面的单位圆内,则系统是稳定的。

控制系统设计与分析MATLAB

控制系统设计与分析MATLAB

控制系统设计与分析MATLAB1. 引言控制系统是现代工程中的重要部分,它在各个领域中起着至关重要的作用。

MATLAB (Matrix Laboratory) 是一种广泛应用于科学与工程计算的高级技术计算与模型设计与仿真软件。

本文将介绍使用MATLAB进行控制系统的设计与分析的基本原理和方法。

2. 控制系统设计2.1. 控制系统概述控制系统主要由输入、输出和控制器组成。

输入是指系统的外部输入信号,输出是系统产生的响应信号,而控制器则决定输出信号如何调整以使系统达到所需的性能指标。

2.2. 开环控制系统设计开环控制系统是一种不考虑系统输出信号对控制器的影响的控制系统。

在MATLAB中,可以使用控制系统工具箱进行开环控制系统的设计。

首先,我们需要构建系统的传递函数模型,然后可以使用工具箱中的函数来设计控制器。

2.3. 闭环控制系统设计闭环控制系统是一种通过系统输出信号反馈给控制器来调整输出信号的控制系统。

在MATLAB中,可以使用控制系统工具箱进行闭环控制系统的设计。

与开环控制系统类似,我们需要构建系统的传递函数模型,并使用工具箱中的函数设计控制器。

不同的是,闭环系统设计中还需要考虑稳定性和性能指标。

2.4. 调整控制器参数在控制系统设计过程中,控制器的参数调整对系统性能有很大影响。

MATLAB 提供了多种方法来帮助我们调整控制器参数,例如PID调节器和根轨迹设计等。

通过实时仿真和反馈,我们可以调整控制器参数以满足系统性能要求。

3. 控制系统分析3.1. 系统响应分析控制系统的性能可以通过分析系统的响应来评估。

在MATLAB中,可以使用step函数、impulse函数和freqresp函数等来分析系统的阶跃响应、脉冲响应和频率响应。

通过分析这些响应,我们可以评估系统的稳定性、阻尼性能和频率特性等指标。

3.2. 频域分析频域分析是通过将输入和输出信号在频域上进行转换来分析系统的特性。

在MATLAB中,可以使用fft函数和bode函数等来进行频域分析。

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

CH4、控制系统的分析方法
早期的控制系统分析过程复杂而耗时,如想得到一个系统的冲激响应曲线,首先需要编写一个求解微分方程的子程序,然后将已经获得的系统模型输入计算机,通过计算机的运算获得冲激响应的响应数据,然后再编写一个绘图程序,将数据绘制成可供工程分析的响应曲线。

MATLAB控制系统工具箱和SIMULINK辅助环境的出现,给控制系统分析带来了福音。

控制系统的分析包括系统的稳定性分析、时域分析、频域分析及根轨迹分析。

第一节控制系统的稳定性分析
一、系统稳定及最小相位系统判据
❑对于连续时间系统,如果闭环极点全部在S平面左半平面,则系统是稳定的。

❑对于离散时间系统,如果系统全部极点都位于Z平面的单位圆内,则系统是稳定的。

❑若连续时间系统的全部零极点都位于S左半平面;或若离散时间系统的全部零极点都位于Z平面单位圆内,则系统是最小相位系统。

二、系统稳定及最小相位系统的判别方法
1、间接判别(工程方法)
劳斯判据:劳斯表中第一列各值严格为正,则系统稳定,如果劳斯表第一列中出现小于零的数值,系统不稳定。

胡尔维茨判据:当且仅当由系统分母多项式构成的胡尔维茨矩阵为正定矩阵时,系统稳定。

2、直接判别
MATLAB提供了直接求取系统所有零极点的函数,因此
可以直接根据零极点的分布情况对系统的稳定性及是否
为最小相位系统进行判断。

例exp4_1.m 已知某系统的模型如右所示: []u x y u x x 7165210016127
5874036221
21+-=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-+⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡---= 要求判断系统的稳定性及系统是否为最小相位系统。

例exp4_2.m
系统模型如下所示,判断系统的稳定性,以及系统
是否为最小相位系统。

11221171494528110142841163)(234562
3+++++++++=s s s s s s s s s s G
ii=find(条件式)
用来求取满足条件的向量的下标向量,以列向量表示。

例如exp4_1.m中的条件式为real(p>0),其含义就是找出极点向量p中满足实部的值大于0的所有元素下标,并将结果返回到ii
向量中去。

这样如果找到了实部大于0的极点,则会将该极点的
序号返回到ii下。

如果最终的结果里ii的元素个数大于0,则认为
找到了不稳定极点,因而给出系统不稳定的提示,若产生的ii向
量的元素个数为0,则认为没有找到不稳定的极点,因而得出系
统稳定的结论。

pzmap(p,z)
根据系统已知的零极点p和z绘制出系统的零极点图
第二节控制系统的时域分析
一、时域分析的一般方法
一个动态系统的性能常用典型输入作用下的响应来描述。

响应是指零初始值条件下某种典型的输入函数作用下对象的响应,控制系统常用的输入函数为单位阶跃函数和脉冲激励函数(即冲激函数)。

在MATLAB的控制系统工具箱中提供了求取这两种输入下系统响应的函数。

❑求取系统单位阶跃响应:step()
❑求取系统的冲激响应:impulse()
1、step()函数的用法 exp4_3_.m
❑y=step(num,den,t):其中num 和den 分别为系统传递函数描述中的分子和分母多项式系数,t 为选定的仿真时间向量,一般可以由t=0:step:end 等步长地产生出来。

该函数返回值y 为系统在仿真时刻各个输出所组成的矩阵。

❑[y,x,t]=step(A,B,C,D,iu):其中A,B,C,D 为系统的状态空间描述矩阵,iu 用来指明输入变量的序号。

x 为系统返回的状态轨迹。

❑如果对具体的响应值不感兴趣,而只想绘制系统的阶跃响应曲线,可调用以下的格式:
step(num,den);step(num,den,t);step(A,B,C,D,iu,t);step(A,B,C,D,iu); 例exp4_3.m 已知系统的开环传递函数为:s s s s s G o 4036820)(234+++= 求系统在单位负反馈下的阶跃响应曲线。

❑线性系统的稳态值可以通过函数dcgain()来求取,其调用格式为:dc=dcgain(num,den)或dc=dcgain(a,b,c,d) ❑[y,x,t]=step(num,den):此时时间向量t 由系统模型的特性自动生成, 状态变量x 返回为空矩阵。

2、impulse()函数的用法
例exp4_4.m 已知系统的开环传递函数为:s
s s s s G o 4036820)(234+++= 求系统在单位负反馈下的脉冲激励响应曲线。

例exp4_5.m 已知某典型二阶系统的传递函数为: 222
2)(n
n n w s w s w s G ++=ξ,,6.0=ξ5=n w ,求系统的阶跃响应曲线。

例exp4_6.m 已知某闭环系统的传递函数为:25
1096.116.02510)(23++++=s s s s s G 求其阶跃响应曲线。

求取脉冲激励响应的调用方法与step()函数基本一致。

y=impulse(num,den,t);[y,x,t]=impulse(num,den);[y,x,t]=impulse(A,B,C,D,iu,t) impulse(num,den);impulse(num,den,t)
impulse(A,B,C,D,iu);impulse(A,B,C,D,iu,t)
仿真时间t 的选择: ❑对于典型二阶系统根据其响应时间的估算公式 可以确定。

❑对于高阶系统往往其响应时间很难估计,一般采用试探的方法,把t 选大一些,看看响应曲线的结果,最后再确定其合适的仿真时间。

❑一般来说,先不指定仿真时间,由MATLAB 自己确定,然后根据结果,最后确定合适的仿真时间。

❑在指定仿真时间时,步长的不同会影响到输出曲线的光滑程度,一般不易取太大。

❑例exp4_6_.m
n s w t ξ4~3=
二、常用时域分析函数
时间响应探究系统对输入和扰动在时域内的瞬态行为,系统
特征如:上升时间、调节时间、超调量和稳态误差都能从时间响应上反映出来。

MATLAB除了提供前面介绍的对系统阶跃响应、冲激响应等进行仿真的函数外,还提供了大量对控制系统进行时域分析的函数,如:
covar:连续系统对白噪声的方差响应
initial:连续系统的零输入响应
lsim:连续系统对任意输入的响应
对于离散系统只需在连续系统对应函数前加d就可以,如dstep,dimpulse等。

它们的调用格式与step、impulse类似,可以通过help命令来察看自学。

相关文档
最新文档