Matlab软件工具在控制系统分析及综合中的应用
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ii=find(条件式)
用来求取满足条件的向量的下标向量,以列向量表示。
例如 条件式real(p>0),其含义就是找出极点向量p中满足实
部的值大于0的所有元素下标,并将结果返回到ii向量中去。这 样如果找到了实部大于0的极点,则会将该极点的序号返回到ii 下。如果最终的结果里ii的元素个数大于0,则认为找到了不稳 定极点,因而给出系统不稳定的提示,若产生的ii向量的元素 个数为0,则认为没有找到不稳定的极点,因而得出系统稳定
求取脉冲激励响应的调用方法与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)
step(num,den);step(num,den,t);step(A,B,C,D,iu,t); ste线p(性A,系B,C统,D的,i稳u);态值可以通过函数dcgain()来求取,其调用格式 为:dc=dcgain(num,den)或dc=dcgain(a,b,c,d)
impulse()函数的用法
[gm,pm,wcg,wcp]=margin(mag,phase,w):由幅值mag(不是以dB为 单位) 、相角phase及角频率w矢量计算出系统幅值裕度和相角裕度 及相应的相角交界频率wcg、截止频率wcp,而不直接绘出Bode图曲 线。
freqs()函数
freqs用于计算由矢量a和b构成的模拟滤波器H(s)=B(s)/A(s)的 幅频响应。
Xi(jw)
其中 A(w)X Xoi((w w))为幅频特 (w)性 o(w)i(w)为相频特性
频域分析法是应用频率特性研究控制系统的一种典型方法。采用这 种方法可直观地表达出系统的频率特性,分析方法比较简单,物理概 念比较明确,对于诸如防止结构谐振、抑制噪声、改善系统稳定性和 暂态性能等问题,都可以从系统的频率特性上明确地看出其物理实质 和解决途经。通常将频率特性用曲线的形式进行表示,包括对数频率 特性曲线和幅相频率特性曲线简称幅相曲线,MATLAB提供了绘制这 两求种取曲系线统的对函数数频。率特性图(波特图):bode()
bode(a,b,c,d,iu):可得到从系统第iu个输入到所有输出的波特图。
bode(num,den):可绘制出以连续时间多项式传递函数表示的系 统的波特图。
bode(a,b,c,d,iu,w)或bode(num,den,w):可利用指定的角频率矢量 绘制出系统的波特图。
当带输出变量[mag,pha,w]或[mag,pha]引用函数时,可得到系统 波特图相应的幅值mag、相角pha及角频率点w矢量或只是返回幅 值与相角。相角以度为单位,幅值可转换为分贝单位: magdb=20×log10(mag)
➢ MATLAB控制系统工具箱和SIMULINK辅助环 境的出现,给控制系统分析带来了福音。
➢ 控制系统的分析包括系统的稳定性分析、时 域分析、频域分析及根轨迹分析。
控制系统的稳定性分析
系统稳定及最小相位系统判据
对于连续时间系统,如果闭环极点全部在S平面左 半平面,则系统是稳定的。 对于离散时间系统,如果系统全部极点都位于Z 平面的单位圆内,则系统是稳定的。 若连续时间系统的全部零极点都位于S左半平面; 或若离散时间系统的全部零极点都位于Z平面单位 圆内,则系统是最小相位系统。
Matlab软件工具在控制系统分析及综 合中的应用
控制系统的分析方法
➢ 早期的控制系统分析过程复杂而耗时,如想 得到一个系统的冲激响应曲线,首先需要编 写一个求解微分方程的子程序,然后将已经 获得的系统模型输入计算机,通过计算机的 运算获得冲激响应的响应数据,然后再编写 一个绘图程序,将数据绘制成可供工程分析 的响应曲线。
margin(mag,phase,w):由bode指令得到的幅值mag(不是以dB为单 位) 、相角phase及角频率w矢量绘制出带有裕量及相应频率显示的 bode图。
margin(num,den) :可计算出连续系统传递函数表示的幅值裕度和 相角裕度并绘制相应波特图。类似,margin(a,b,c,d)可以计算出连续 状态空间系统表示的幅值裕度和相角裕度并绘制相应波特图。
margin()函数
margin函数可以从频率响应数据中计算出幅值裕度、相角裕度以 及对应的频率。幅值裕度和相角裕度是针对开环SISO系统而言,它 指示出系统闭环时的相对稳定性。当不带输出变量引用时,margin 可在当前图形窗口中绘制出带有裕量及相应频率显示的Bode图,其 中幅幅值值裕裕度度是以在分相贝角为为单-位18。0度处使开环增益为1的增益量,如在-180 度相频处的开环增益为g,则幅值裕度为1/g;若用分贝值表示幅值 裕度,则等于:-20*log10(g)。类似地,相角裕度是当开环增益为1.0 时,相应的相角与180度角的和。
求取系统奈奎斯特图(幅相曲线图或极坐标图):nyquist()
1、对数频率特性图(波特图)
对数频率特性图包括了对数幅频特性图和对数相频特性图。横坐 标为频率w,采用对数分度,单位为弧度/秒;纵坐标均匀分度,分 别为幅值函数20lgA(w),以dB表示;相角,以度表示。 MATLAB提供了函数bode()来绘制系统的波特图,其用法如下: bode(a,b,c,d):自动绘制出系统的一组Bode图,它们是针对连续 状态空间系统[a,b,c,d]的每个输入的Bode图。其中频率范围由函 数自动选取,而且在响应快速变化的位置会自动采用更多取样点。
Байду номын сангаас
仿真时间t的选择
可对以于确典定型。二阶系统根据其响应时间的估算公ts 式 3
~ w
4
n
对于高阶系统往往其响应时间很难估计,一般采用试 探的方法,把t选大一些,看看响应曲线的结果,最后 再确定其合适的仿真时间。
一般来说,先不指定仿真时间,由MATLAB自己确定, 然后根据结果,最后确定合适的仿真时间。
[h,w]=freqs(b,a)自动设定200个频率点来计算频率响应,这200 个频率值记录在w中。
[h,w]=freqs(b,a,n)设定n个频率点计算频率响应。
不带输出变量的freqs函数,将在当前图形窗口中绘制出幅频 和相频曲线,其中幅相曲线对纵坐标与横坐标均为对数分度。
控制系统的根轨迹分析
系统稳定及最小相位系统的判别 方法
1、间接判别(工程方法)
劳斯判据:劳斯表中第一列各值严格为正,则系统 稳定,如果劳斯表第一列中出现小于零的数值,系 统不稳定。
胡尔维茨判据:当且仅当由系统分母多项式构成的 胡尔维茨矩阵为正定矩阵时,系统稳定。
2、直接判别
MATLAB提供了直接求取系统所有零极点的函数, 因此可以直接根据零极点的分布情况对系统的稳定 性及是否为最小相位系统进行判断。
2、奈奎斯特图(幅相频率特性图)
对于频率特性函数G(jw),给出w从负无穷到正无穷的一系列数 值,分别求出Im(G(jw))和Re(G(jw))。以Re(G(jw)) 为横坐标, Im(G(jw)) 为纵坐标绘制成为极坐标频率特性图。
MATLAB提供了函数nyquist()来绘制系统的极坐标图,其用法 如n下yq:uist(a,b,c,d):绘制出系统的一组Nyquist曲线,每条曲线相应于 连续状态空间系统[a,b,c,d]的输入/输出组合对。其中频率范围由函 数自动选取,而且在响应快速变化的位置会自动采用更多取样点。
的pz结m论ap。(p,z)
根据系统已知的零极点p和z绘制出系统的零极 点图
控制系统的时域分析
时域分析的一般方法
一个动态系统的性能常用典型输入作用下的响应来 描述。响应是指零初始值条件下某种典型的输入函 数作用下对象的响应,控制系统常用的输入函数为 单位阶跃函数和脉冲激励函数(即冲激函数)。在 MATLAB的控制系统工具箱中提供了求取这两种输 入下系统响应的函数。
控制系统的频域分析
频域分析的一般方法
频率响应是指系统对正弦输入信号的稳态响应,从频率响应中可以 得出带宽、增益、转折频率、闭环稳定性等系统特征。
频率特性是指系统在正弦信号作用下,稳态输出与输入之比对频率 的关系特性。频率特性函数与传递函数有直接的关系,记为: G(jw)Xo(jw)A(w)ej(w)
在指定仿真时间时,步长的不同会影响到输出曲线的 光滑程度,一般不易取太大。
常用时域分析函数
时间响应探究系统对输入和扰动在时域内的瞬态行为,系统特 征如:上升时间、调节时间、超调量和稳态误差都能从时间响应上 反映出来。MATLAB除了提供前面介绍的对系统阶跃响应、冲激响 应等进行仿真的函数外,还提供了大量对控制系统进行时域分析的 函数,如: covar:连续系统对白噪声的方差响应 initial:连续系统的零输入响应 lsim:连续系统对任意输入的响应 对于离散系统只需在连续系统对应函数前加d就可以,如dstep, dimpulse等。 它们的调用格式与step、impulse类似,可以通过help命令来察看自学。
H (s)B A ( (s s) )b 1 (1 )s sn m a b ((2 2 ))s s n m 1 1 ... . a .b .(( n m 1 ) 1 )
h=freqs(b,a,w)用于计算模拟滤波器的幅频响应,其中实矢量w 用于指定频率值,返回值h为一个复数行向量,要得到幅值必须 对它取绝对值,即求模。
(1)稳定性
当开环增益K从零到无穷大变化时,图中的根轨迹不会越过虚轴进入 右半s平面,因此这个系统对所有的K值都是稳定的。如果根轨迹越过 虚轴进入右半s平面,则其交点的K值就是临界稳定开环增益。
根轨迹分析方法的概念
所谓根轨迹是指,当开环系统某一参数从零变到 无穷大时,闭环系统特征方程的根在s平面上的轨迹。 一般来说,这一参数选作开环系统的增益K,而在 无零极点对消时,闭环系统特征方程的根就是闭环 传递函数的极点。
根轨迹分析方法是分析和设计线性定常控制系统 的图解方法,使用十分简便。利用它可以对系统进 行各种性能分析
nyquist(a,b,c,d,iu):可得到从系统第iu个输入到所有输出的极坐标 图。
nyquist(num,den):可绘制出以连续时间多项式传递函数表示的系 统的极坐标图。
nyquist(a,b,c,d,iu,w)或nyquist(num,den,w):可利用指定的角频率矢 量绘制出系统的极坐标图。
求取系统单位阶跃响应:step()
求取系统的冲激响应:impulse()
step()函数的用法
y=step(num,den,t):其中num和den分别为系统传递函数描述中的分 子和分母多项式系数,t为选定的仿真时间向量,一般可以由 t=0:step:end等步长地产生出来。该函数返回值y为系统在仿真时刻各 个[输y,x出,t]所=s组tep成(n的um矩,d阵en。):此时时间向量t由系统模型的特性自动生成, 状态变量x返回为空矩阵。 [y,x,t]=step(A,B,C,D,iu):其中A,B,C,D为系统的状态空间描述矩 阵,iu用来指明输入变量的序号。x为系统返回的状态轨迹。 如果对具体的响应值不感兴趣,而只想绘制系统的阶跃响应曲线, 可调用以下的格式:
当不带返回参数时,直接在屏幕上绘制出系统的极坐标图(图上 用箭头表示w的变化方向,负无穷到正无穷) 。当带输出变量 [re,im,w]引用函数时,可得到系统频率特性函数的实部re和虚部im 及角频率点w矢量(为正的部分)。可以用plot(re,im)绘制出对应w
常用频域分析函数
MATLAB除了提供前面介绍的基本频域分析函数外, 还提供了大量在工程实际中广泛应用的库函数,由这 些函数可以求得系统的各种频率响应曲线和 特征值。 如m:argin:求幅值裕度和相角裕度及对应的转折频率 freqs:模拟滤波器特性 nichols:求连续系统的尼科尔斯频率响应曲线(即 对数幅相曲线) ngrid:尼科尔斯方格图