版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第5章MATLAB在自动控制原理的应用5.1控制系统模型5.2控制系统的时域分析5.3控制系统的根轨迹5.4控制系统的频域分析5.5系统的状态空间分析函数5.6极点配置和观测器设置5.7最优控制系统设计
第5章MATLAB在自动控制原理的应用5.1控制15.1控制系统模型5.1.1控制系统的描述与LTI对象1.控制系统的模型及转换
线性控制系统是一般线性系统的子系统。在MATLAB中,对自动控制系统的描述采用三种模型:状态空间模型(ss)、传递函数模型(tf)以及零极点增益模型(zpk)。模型转换函数:ss2tf,ss2zp,tf2ss,tf2zp,zp2ss和zp2tf。2.LTI对象为了对系统的调用和计算带来方便。根据软件工程中面向对象的思想,MATLAB通过建立专用的数据结构类型,把线性时不变系统(LTI)的各种模型封装成为统一的LTI对象。MATLAB控制系统工具箱中规定的LTI对象包含了三种子对象:ss对象、tf对象和zpk对象。每个对象都具有其属性和方法,通过对象方法可以存取或者设置对象的属性值。在MATLAB的ControlSystemToolbox(控制系统工具箱)中提供了许多仿真函数与模块,用于对控制系统的仿真和分析。
5.1控制系统模型5.1.1控制系统的描述与LTI对象22属性说明:(1)当系统为离散系统时,给出了系统的采样周期Ts。Ts=0或缺省时表示系统为连续时间系统;Ts=-1表示系统是离散系统,但它的采样周期未定。(2)输入时延Td仅对连续时间系统有效,其值为由每个输入通道的输入时延组成的时延数组,缺省表示无输入时延。(3)输入变量名InputName和输出变量名OutputName允许用户定义系统输入输出的名称,其值为一字符串单元数组,分别与输入输出有相同的维数,可缺省。(4)Notes和用户数据Userdata用以存储模型的其它信息,常用于给出描述模型的文本信息,也可以包含用户需要的任意其它数据,可缺省。属性说明:(1)当系统为离散系统时,给出了系统的采样周期Ts3对象名称属性名称意义属性值的变量类型tf对象(传递函数)den传递函数分母系数由行数组组成的单元阵列num传递函数分子系数由行数组组成的单元阵列variable传递函数变量s、z、p、k、z-1中之一zpk对象(零极点增益)k增益二维矩阵p极点由行数组组成的单元阵列variable零极点增益模型变量s、z、p、k、z-1中之一z零点由行数组组成的单元阵列ss对象(状态空间)a系数矩阵二维矩阵b系数矩阵二维矩阵c系数矩阵二维矩阵d系数矩阵二维矩阵e系数矩阵二维矩阵StateName状态变量名字符串单元向量对象名称属性名称意义属性值的变量类型tf对象den传递函45.1.2LTI模型的建立及转换函数在MATLAB的控制系统工具箱中,各种LTI对象模型的生成和模型间的转换都可以通过一个相应函数来实现。函数名称及基本格式功能dss(a,b,c,d,…)生成(或将其它模型转换为)描述状态空间模型filt(num,den,…)生成(或将其它模型转换为)DSP形式的离散传递函数ss(a,b,c,d,…)生成(或将其它模型转换为)状态空间模型tf(num,den,…)生成(或将其它模型转换为)传递函数模型zpk(z,p,k,…)生成(或将其它模型转换为)零极点增益模型表5.3生成LTI模型的函数5.1.2LTI模型的建立及转换函数在MAT5[例5-4]生成离散系统的零极点模型。MATLAB源程序为:z={[],-0.5};p={0.3,[0.1+2i,0.2-2i]};k=[2,3];s6=zpk(z,p,k,-1)运行结果为:Zero/pole/gainfrominput1tooutput:←从第1输入端口至输出的零极点增益2-------(z-0.3)Zero/pole/gainfrominput2tooutput:←从第2输入端口至输出的零极点增益3(z+0.5)-------------------------(z-(0.1+2i))(z-(0.2-2i))Samplingtime:unspecified表明该系统为双输入单输出的离散系统。[例5-4]生成离散系统的零极点模型。MATLAB源程序为65.1.3LTI对象属性的设置与转换1.LTI对象属性的获取与设置函数名称及基本格式功能get(sys,‘PropertyName’,数值,…)获得LTI对象的属性set(sys,‘PropertyName’,数值,…)设置和修改LTI对象的属性ssdata,dssdata(sys)获得变换后的状态空间模型参数tfdata(sys)获得变换后的传递函数模型参数zpkdata(sys)获得变换后的零极点增益模型参数class模型类型的检测表5.4对象属性的获取和修改函数
5.1.3LTI对象属性的设置与转换1.LTI对象属性的72.LTI模型的转换函数表5.5模型检测函数函数名及调用格式功能isct(sys)判断LTI对象sys是否为连续时间系统。若是,返回1;否则返回0isdt(sys)判断LTI对象sys是否为离散时间系统。若是,返回1;否则返回0isempty(sys)判断LTI对象sys是否为空。若是,返回1;否则返回0isproper判断LTI对象sys是否为特定类型对象。若是,返回1;否则返回0issiso(sys)判断LTI对象sys是否为SISO系统。若是,返回1;否则返回0size(sys)返回系统sys的维数2.LTI模型的转换函数表5.5模型检测函数函数名及功85.1.4典型系统的生成1.随机生成N阶稳定的连续状态空间模型函数rss()格式:sys=rss(N,P,M)功能:随机生成N阶稳定的连续状态空间模型,该系统具有M个输入,P个输出。缺省是P=M=1,即sys=rss(N)。2.随机生成N阶稳定的连续线性模型系数函数rmodel()格式:[num,den]=rmodel(N,P)
功能:生成一个N阶连续的传递函数模型系统,该系统具有P个输出。3.离散时间N阶稳定随机系统生成函数drss()和drmodel()drss和drmodel函数的用法与rss和rmodel函数的用法相仿,不同点仅仅在于它生成的是离散系统。4.二阶系统生成函数ord2格式:[A,B,C,D]=ord2(Wn,Z)
功能:生成固有频率为Wn,阻尼系数为Z的连续二阶的状态空间模型系统。5.系统时间延迟的Pade近似函数pade()格式:sysx=pade(sys,N)功能:对连续系统sys产生N阶Pade近似的延时后,生成新的系统sysx。5.1.4典型系统的生成1.随机生成N阶稳定的连续状态空间95.1.5LTI模型的简单组合与复杂模型组合1.LTI模型的简单组合(1)若假定两环节均为单输入单输出的系统SA和SB。·两个环节级联:sys=series(SA,SB)·两个环节并联:sys=parallel(SA,SB)·A环节前向,B环节反馈:S=feedback(SA,SB)(2)当在多输入多输出系统中,必须增加输入变量和输出变量的编号:·级联:sys=series(SA,SB,outputA,inputB)·并联:sys=parallel(SA,SB,InputA,InputB,OutputA,OutputB)·反馈:sys=feedback(SA,SB,feedout,feedin,sign)5.1.5LTI模型的简单组合与复杂模型组合1.LTI模10[例5-14]计算图5.1所示的系统的传递函数。MATLAB源程序为:s1=tf([2,5,1],[1,2,3])%系统s1的传递函数模型s2=zpk(-2,-10,5)%系统s2的零极点增益模型sys=feedback(s1,s2)%s1环节前向,s2环节反馈5(s+2)/(s+10)程序运行结果为:Transferfunction:←系统s1的传递函数模型2s^2+5s+1------------------s^2+2s+3Zero/pole/gain:←系统s2的零极点增益模型5(s+2)-----------(s+10)Zero/pole/gain:←系统s1、s2的反馈零极点增益模型0.18182(s+10)(s+2.281)(s+0.2192)-----------------------------------------(s+3.419)(s^2+1.763s+1.064)[例5-14]计算图5.1所示的系统的传递函数。MATL112.LTI模型的复杂模型组合
对复杂系统的任意组合,在MATLAB中,则采用集成的软件包,让机器自动去完成复杂的组合,人们只要输入各环节的LTI模型和相应的联接矩阵与输入矩阵,指定输出变量,软件包会自动判别输入的模型表述方式,作出相应的运算并最后给出组合后系统的状态方程。在求解过程中,主要涉及append()函数和connect()函数。通常,由以下五个步骤来完成:①对方框图中的各个环节进行编号,建立它们的对象模型。②利用append函数命令建立无连接的状态空间模型。sap=append(s1,s2,…,sm)③按规定写出系统的互联接矩阵q互联矩阵q中的每一行由组合系统的一个输入编号和构成该输入的其它输出编号组成,其中该行的第一个元素为该输入的编号,接下来的元素则由构成该输入的其它子框的输出编号组成,如果为负反馈,则编号应取负号。④选择组合系统中需保留的对外的输入和输出端的编号并列出。Inputs=[i1,i2,…]outputs=[j1,j2,…]⑤用connect命令生成组合后的系统。2.LTI模型的复杂模型组合对复杂系统的任意组合,在125.1.6连续系统与采样系统之间的转换若连续系统的状态方程为:则对应的采样系统状态方程为:其中,Ts为采样周期。
、、、反之,采样系统到连续系统的转换关系为上式的逆过程:、、、1.转换原理5.1.6连续系统与采样系统之间的转换若连续系统的状态方程13
2.连续系统与采样系统之间的转换函数函数名功能调用格式c2d连续系统转换为采样系统sysd=c2d(sysc,Ts,method)
d2c采样系统转换为连续系统sysc=d2c(sysd,method)
d2d采样系统改变采样频率sys=d2d(sys,Ts)
[例5-17]系统的传递函数为:输入延时Td=0.35秒,试用一阶保持法对连续系统进行离散,采样周期Ts=0.1s。MATLAB程序为:sys=tf([2,5,1],[1,2,3],'td',0.5);%生成连续系统的传递函数模型sysd=c2d(sys,0.1,'foh')%形成采样系统程序运行结果为:Transferfunction:2.036z^2-3.628z+1.584z^(-5)*-------------------------------------z^2-1.792z+0.8187Samplingtime:0.12.连续系统与采样系统之间的转换函数函数名功能调用格145.2控制系统的时域分析时域分析是一种直接在时间域中对系统进行分析的方法,具有直观和准确的优点。它是根据控制系统输入与输出之间的时域表达式,分析系统的稳定性、瞬态过程和稳态误差。控制系统最常用的分析方法有两种:一是当输入信号为单位阶跃时,求出系统的响应;二是当输入信号为单位冲激函数时,求出系统的响应。
1.生成特定的激励信号的函数gensig()格式:[u,t]=gensig(type,tau)功能:按指定的类型type和周期tau生成特定类型的激励信号u。其中变元type可取字符为:‘sin’(正弦)、‘square’(方波)、‘pulse’(脉冲)。5.2控制系统的时域分析时域分析是一种直152.LTI模型的单位冲激响应函数impulse()格式:impulse(sys)功能:绘制系统sys(sys由函数tf、zpk或ss产生)的单位冲激响应,结果不返回数据,只返回图形。[例5-19]系统传递函数为:求脉冲响应。MATLAB程序如下:sys=tf(4,[114]);%生成传递函数模型impulse(sys);%计算并绘制系统的单位冲激响应title('脉冲响应');该程序运行所得结果如图5.5所示。图5.5系统的脉冲响应
2.LTI模型的单位冲激响应函数impulse()[例5-163.状态空间模型系统的零输入响应函数initial()格式:initial(sys,x0)功能:绘制状态空间模型sys在初始条件x0下的零输入响应,不返回数据,只绘出响应曲线。该响应由如下方程表征:连续时间:离散时间:
、、、、4.LTI模型任意输入的响应函数lsim()格式:lsim(sys,u,T)
功能:计算和绘制LTI模型sys在任意输入u、持续时间T的作用下的输出y,不返回数据,只返回图形。T为时间数组,它的步长必须与采样周期Ts相同。当u为矩阵时,它的列作为输入,且与T(i)行的时间向量相对应。例如t=0:0.01:5;u=sin(t);lsim(sys,u,t)完成系统sys对输入u(t)=sin(t)在5秒内的响应仿真。5.LTI模型的阶跃响应函数step()格式:step(sys)功能:绘制系统sys(sys由函数tf、zpk或ss产生)的阶跃响应,结果不返回数据,只返回图形。对多输入多输出模型,将自动求每一输入的阶跃响应。3.状态空间模型系统的零输入响应函数initial()连17[例5-21]求系统:的方波响应,其中方波周期为6秒,持续时间12秒,采样周期为0.1秒。MATLAB程序为:[u,t]=gensig('square',6,12,0.1);%生成方波信号plot(t,u,'--');holdon;%绘制激励信号sys=tf([1,1],[1,2,5]);%生成传递函数模型lsim(sys,u,t,'k');%系统对方波激励信号的响应该程序运行所得结果如图5.7所示。图5.7方波响应曲线
[例5-21]求系统:图5.7方波响应曲线185.3控制系统的根轨迹在控制系统分析中,为了避开直接求解高阶多项式的根时遇到的困难,在实践中提出了一种图解求根法,即根轨迹法。所谓根轨迹是指当系统的某一个(或几个)参数从-∞到+∞时,闭环特征方程的根在复平面上描绘的一些曲线。应用这些曲线,可以根据某个参数确定相应的特征根。在根轨迹法中,一般取系统的开环放大倍数K作为可变参数,利用它来反映出开环系统零极点与闭环系统极点(特征根)之间的关系。根轨迹可以分析系统参数和结构已定的系统的时域响应特性,以及参数变化对时域响应特性的影响,而且还可以根据对时域响应特性的要求确定可变参数及调整开环系统零极点的位置,并改变它们的个数,也就是说根轨迹法可用于解决线性系统的分析与综合问题。MATLAB提供了专门绘制根轨迹的函数命令,如下表所示,使绘制根轨迹变得轻松自如。
5.3控制系统的根轨迹在控制系统分析中,为了避开直接19函数名功能格式pzmap绘制系统的零极点图pzmap(sys)tzero求系统的传输零点z=tzero(sys)rlocfind计算给定根轨迹增益[K,poles]=rlocfind(sys)rloccus求系统根轨迹[K,poles]=rlocfind(sys)damp求系统极点的固有频率和阻尼系统[Wn,Z]=damp(sys)ploe求系统的极点p=pole(sys)dcgain求系统的直流(稳态)增益k=dcgain(sys)dsort离散系统极点按幅值降序排列s=dsort(p)esort连续系统极点按实部降序排列s=esort(p)表
系统根轨迹绘制及零极点分析函数
函数名功能格式pzmap绘制系统的零极点图pzmap(s20[例5-25]由连续系统:试绘制其零极点图和根轨迹图。MATLAB程序为:num=[2,5,1];den=[1,2,3];sys=tf(num,den);%生成传递函数模型figure(1);pzmap(sys);title(‘零极点图’);%绘制零极点图figure(2);rlocus(sys);sgrid;title(‘根轨迹’);%绘制根轨迹图图5.12传递函数的零极点图和根轨迹图
[例5-25]由连续系统:图5.12传递函数的零极点图和215.4控制系统的频域分析频域分析法是应用频率特性研究控制系统的一种经典方法。采用这种方法可直观地表达出系统的频率特性,分析方法比较简单,物理概念比较明确,对于诸如防止结构谐振,抑制噪声、改善系统稳定性和暂态性能等问题,都可以从系统的频率特性上明确的看出其物理实质和解决途径。频率分析法主要包括三种方法:Bode图(幅频/相频特性曲线)Nyquist曲线Nichols图。5.4控制系统的频域分析频域分析法是应用频22函数名功能格式bodeBode图绘制bode(sys)nicholsNichols图绘制nichols(sys)nyquistNyquist图绘制Nyquist(sys)sigma系统奇异值Bode图绘制Sigma(sys)evalfr计算系统单个复频率点的频率响应fresp=evalfr(sys,x)dbode绘制离散系统的Bode图dbode(a,b,c,d,Ts,iu)dnichols绘制离散系统的Nichols图dnichols(num,den,ts)dnyquist绘制离散系统的Nyquist图dnyquist(num,den,ts)ngridNichols网格图绘制ngridmargin绘制离散系统的Bode图[gm,pm,wcg,wcp]=margin(sys)freqresp计算系统在给定实频率区间的频率响应
h=freqresp(sys,w)函数名功能格式bodeBode图绘制bode(sys)ni23[例5-29]试绘制开环系统H(s)的Nyquist曲线,判断闭环系统的稳定性,并求出闭环系统的单位冲激响应。其中MATLAB程序为:k=50;z=[];p=[-5,2];sys=zpk(z,p,k);figure(1);nyquist(sys);title('Nyquist曲线图');figure(2);sb=feedback(sys,1);impulse(sb);title('单位冲激响应');图5.18开环系统的Nyquist曲线图及冲激响应
[例5-29]试绘制开环系统H(s)的Nyquist曲线245.5系统的状态空间分析函数在自动控制系统分析中,状态空间分析是一种较复杂的分析方法。这是因为它用矩阵进行运算和求解;其二,它的非唯一性,即对同一个系统,通过相似变换,可以有无数种A,B,C,D组合来描述。
5.5.1系统可观性与可控性判别函数1.可控性矩阵函数ctrb格式:Co=ctrb(sys)或Co=ctrb(A,B)功能:求得系统的可控性矩阵Co,若矩阵Co的秩等于系统的阶次,即rank(Co)=n,则系统可控。2.可观控矩阵函数obsv()格式:Ob=obsv(sys)或Ob=obsv(A,C)功能:求得系统的可观控矩阵Ob,若矩阵Ob的秩rank(Ob)=n,则系统可观。3.Gramian矩阵函数gram()格式:Wc=gram(sys,‘c’)功能:求可控Gramian矩阵Wc,它的满秩(rank(Wc)=n)与系统的可控等价。5.5系统的状态空间分析函数在自动控制系统255.5.2系统相似变换函数1.通用相似变换函数ss2ss()格式:syst=ss2ss(sys,T)功能:通过非奇异变换矩阵T,把状态变量由x变成z=Tx,变换后的状态空间模型syst为:z’=[TAT-1]z+[TB]u
y=[CT-1]z+Du5.5.2系统相似变换函数1.通用相似变换函数ss2ss(262.变为规范形式的函数canon()格式:csys=canon(sys,type)功能:用来把系统sys变为规范形csys。type用来选择规范的类型,有两种可选规范形式:‘modal’(约当矩阵形式)和‘companion’(伴随矩阵形式)。3.系统分解为可控和不可控两部分的函数ctrbf()格式:[Abar,Bbar,Cbar,T,k]=ctrbf(A,B,C)功能:把系统分解为可控和不可控两部分。4.系统分解为可观和不可观两部分的函数obsvf()格式:[Abar,Bbar,Cbar,T,k]=obsvf(A,B,C)功能:把系统分解为可观和不可观两部分。[例5-33]设系统的状态空间方程为:将其作可控性结构分解。MATLAB源程序如下:A=[-2,2,-1;0,-2,0;1,4,3];B=[0;0;1];C=[1,-1,1];D=0;%系数矩阵赋值s1=ss(A,B,C,D);%生成LTI模型[Abar,Bbar,Cbar,T,k]=ctrbf(A,B,C)%可控性结构分解rA=rank(A)%求状态方程系数矩阵的秩rc=sum(k)%求判断可控矩阵的秩2.变为规范形式的函数canon()[例5-33]设系统275.6极点配置和观测器设置给定控制系统,通过设计反馈增益k使闭环系统具有期望的极点,从而达到适当的阻尼系数和无阻尼自然频率,这就是极点配置问题。但极点配置是基于状态反馈,即u=-kx
,因此状态x必须可测,当状态不可测时,则应设计状态观测器。设计的状态观测器也应具有适当的频率特性,因此也可指定其极点的位置,从而使状态观测器的设计转化为极点配置问题。函数名称和典型输入变元功能acker(A,B,p)SISO系统极点配置place(A,B,p)MIMO系统极点配置estim(sys,L)生成系统状态估计器reg(sys,K,L)生成系统调节器表5.7极点配置和状态估计器
5.6极点配置和观测器设置给定控制系统,通285.7最优控制系统设计对于线性时不变(LTI)系统:线性二次型(LQ)最优控制器的任务是设计u(t),使线性二次型最优控制指标(代价函数):
最小。由于线性二次型的性能指标易于分析、计算、处理,可得到要求的代数结果,相角裕量的优点,因而在控制系统的各个领域内都得到了广泛地重视和应用。然而,线性二次型调节器(LQR)控制的闭环系统的动态响应与加权系数矩阵Q和R之间存在着非常复杂的对应关系,这就给加权矩阵的选择带来许多困难,目前普遍采用的仿真试凑法无疑限制了LQR设计方法在工程上的推广应用。采用试凑法获得的最优控制是“人工”意义下的最优,而不是真正意义上的最优。实际上在这种情况下无法获得最优解,因而采用基于仿真的优化方法求取最满意解是解决这类问题的最佳途径。
5.7最优控制系统设计对于线性时不变(LTI)系统:线性二29函数名称和典型输入变元功能lqr(A,B,Q,R)连续系统的LQ调节器设计lqr2(A,B,Q,R)连续系统的LQ调节器设计dlqr(A,B,Q,R)离散系统的LQ调节器设计lqry(A,B,Q,R)系统的LQ调节器设计lqrd(A,B,Q,R,Ts)连续代价函数的离散LQ调节器设计kalman(sts,Qn,Rn,Nn)系统的Kalman滤波器设计kalmd(sys,Qn,Rn,Ts)连续系统的离散Kalman滤波器设计lqgreg(kest,k)根据Kalman和状态反馈增益设计调节器表5.8
LQ和LQG最优控制函数
函数名称和典型输入变元功能lqr(A,B,Q,R)连续系统30第5章MATLAB在自动控制原理的应用5.1控制系统模型5.2控制系统的时域分析5.3控制系统的根轨迹5.4控制系统的频域分析5.5系统的状态空间分析函数5.6极点配置和观测器设置5.7最优控制系统设计
第5章MATLAB在自动控制原理的应用5.1控制315.1控制系统模型5.1.1控制系统的描述与LTI对象1.控制系统的模型及转换
线性控制系统是一般线性系统的子系统。在MATLAB中,对自动控制系统的描述采用三种模型:状态空间模型(ss)、传递函数模型(tf)以及零极点增益模型(zpk)。模型转换函数:ss2tf,ss2zp,tf2ss,tf2zp,zp2ss和zp2tf。2.LTI对象为了对系统的调用和计算带来方便。根据软件工程中面向对象的思想,MATLAB通过建立专用的数据结构类型,把线性时不变系统(LTI)的各种模型封装成为统一的LTI对象。MATLAB控制系统工具箱中规定的LTI对象包含了三种子对象:ss对象、tf对象和zpk对象。每个对象都具有其属性和方法,通过对象方法可以存取或者设置对象的属性值。在MATLAB的ControlSystemToolbox(控制系统工具箱)中提供了许多仿真函数与模块,用于对控制系统的仿真和分析。
5.1控制系统模型5.1.1控制系统的描述与LTI对象232属性说明:(1)当系统为离散系统时,给出了系统的采样周期Ts。Ts=0或缺省时表示系统为连续时间系统;Ts=-1表示系统是离散系统,但它的采样周期未定。(2)输入时延Td仅对连续时间系统有效,其值为由每个输入通道的输入时延组成的时延数组,缺省表示无输入时延。(3)输入变量名InputName和输出变量名OutputName允许用户定义系统输入输出的名称,其值为一字符串单元数组,分别与输入输出有相同的维数,可缺省。(4)Notes和用户数据Userdata用以存储模型的其它信息,常用于给出描述模型的文本信息,也可以包含用户需要的任意其它数据,可缺省。属性说明:(1)当系统为离散系统时,给出了系统的采样周期Ts33对象名称属性名称意义属性值的变量类型tf对象(传递函数)den传递函数分母系数由行数组组成的单元阵列num传递函数分子系数由行数组组成的单元阵列variable传递函数变量s、z、p、k、z-1中之一zpk对象(零极点增益)k增益二维矩阵p极点由行数组组成的单元阵列variable零极点增益模型变量s、z、p、k、z-1中之一z零点由行数组组成的单元阵列ss对象(状态空间)a系数矩阵二维矩阵b系数矩阵二维矩阵c系数矩阵二维矩阵d系数矩阵二维矩阵e系数矩阵二维矩阵StateName状态变量名字符串单元向量对象名称属性名称意义属性值的变量类型tf对象den传递函345.1.2LTI模型的建立及转换函数在MATLAB的控制系统工具箱中,各种LTI对象模型的生成和模型间的转换都可以通过一个相应函数来实现。函数名称及基本格式功能dss(a,b,c,d,…)生成(或将其它模型转换为)描述状态空间模型filt(num,den,…)生成(或将其它模型转换为)DSP形式的离散传递函数ss(a,b,c,d,…)生成(或将其它模型转换为)状态空间模型tf(num,den,…)生成(或将其它模型转换为)传递函数模型zpk(z,p,k,…)生成(或将其它模型转换为)零极点增益模型表5.3生成LTI模型的函数5.1.2LTI模型的建立及转换函数在MAT35[例5-4]生成离散系统的零极点模型。MATLAB源程序为:z={[],-0.5};p={0.3,[0.1+2i,0.2-2i]};k=[2,3];s6=zpk(z,p,k,-1)运行结果为:Zero/pole/gainfrominput1tooutput:←从第1输入端口至输出的零极点增益2-------(z-0.3)Zero/pole/gainfrominput2tooutput:←从第2输入端口至输出的零极点增益3(z+0.5)-------------------------(z-(0.1+2i))(z-(0.2-2i))Samplingtime:unspecified表明该系统为双输入单输出的离散系统。[例5-4]生成离散系统的零极点模型。MATLAB源程序为365.1.3LTI对象属性的设置与转换1.LTI对象属性的获取与设置函数名称及基本格式功能get(sys,‘PropertyName’,数值,…)获得LTI对象的属性set(sys,‘PropertyName’,数值,…)设置和修改LTI对象的属性ssdata,dssdata(sys)获得变换后的状态空间模型参数tfdata(sys)获得变换后的传递函数模型参数zpkdata(sys)获得变换后的零极点增益模型参数class模型类型的检测表5.4对象属性的获取和修改函数
5.1.3LTI对象属性的设置与转换1.LTI对象属性的372.LTI模型的转换函数表5.5模型检测函数函数名及调用格式功能isct(sys)判断LTI对象sys是否为连续时间系统。若是,返回1;否则返回0isdt(sys)判断LTI对象sys是否为离散时间系统。若是,返回1;否则返回0isempty(sys)判断LTI对象sys是否为空。若是,返回1;否则返回0isproper判断LTI对象sys是否为特定类型对象。若是,返回1;否则返回0issiso(sys)判断LTI对象sys是否为SISO系统。若是,返回1;否则返回0size(sys)返回系统sys的维数2.LTI模型的转换函数表5.5模型检测函数函数名及功385.1.4典型系统的生成1.随机生成N阶稳定的连续状态空间模型函数rss()格式:sys=rss(N,P,M)功能:随机生成N阶稳定的连续状态空间模型,该系统具有M个输入,P个输出。缺省是P=M=1,即sys=rss(N)。2.随机生成N阶稳定的连续线性模型系数函数rmodel()格式:[num,den]=rmodel(N,P)
功能:生成一个N阶连续的传递函数模型系统,该系统具有P个输出。3.离散时间N阶稳定随机系统生成函数drss()和drmodel()drss和drmodel函数的用法与rss和rmodel函数的用法相仿,不同点仅仅在于它生成的是离散系统。4.二阶系统生成函数ord2格式:[A,B,C,D]=ord2(Wn,Z)
功能:生成固有频率为Wn,阻尼系数为Z的连续二阶的状态空间模型系统。5.系统时间延迟的Pade近似函数pade()格式:sysx=pade(sys,N)功能:对连续系统sys产生N阶Pade近似的延时后,生成新的系统sysx。5.1.4典型系统的生成1.随机生成N阶稳定的连续状态空间395.1.5LTI模型的简单组合与复杂模型组合1.LTI模型的简单组合(1)若假定两环节均为单输入单输出的系统SA和SB。·两个环节级联:sys=series(SA,SB)·两个环节并联:sys=parallel(SA,SB)·A环节前向,B环节反馈:S=feedback(SA,SB)(2)当在多输入多输出系统中,必须增加输入变量和输出变量的编号:·级联:sys=series(SA,SB,outputA,inputB)·并联:sys=parallel(SA,SB,InputA,InputB,OutputA,OutputB)·反馈:sys=feedback(SA,SB,feedout,feedin,sign)5.1.5LTI模型的简单组合与复杂模型组合1.LTI模40[例5-14]计算图5.1所示的系统的传递函数。MATLAB源程序为:s1=tf([2,5,1],[1,2,3])%系统s1的传递函数模型s2=zpk(-2,-10,5)%系统s2的零极点增益模型sys=feedback(s1,s2)%s1环节前向,s2环节反馈5(s+2)/(s+10)程序运行结果为:Transferfunction:←系统s1的传递函数模型2s^2+5s+1------------------s^2+2s+3Zero/pole/gain:←系统s2的零极点增益模型5(s+2)-----------(s+10)Zero/pole/gain:←系统s1、s2的反馈零极点增益模型0.18182(s+10)(s+2.281)(s+0.2192)-----------------------------------------(s+3.419)(s^2+1.763s+1.064)[例5-14]计算图5.1所示的系统的传递函数。MATL412.LTI模型的复杂模型组合
对复杂系统的任意组合,在MATLAB中,则采用集成的软件包,让机器自动去完成复杂的组合,人们只要输入各环节的LTI模型和相应的联接矩阵与输入矩阵,指定输出变量,软件包会自动判别输入的模型表述方式,作出相应的运算并最后给出组合后系统的状态方程。在求解过程中,主要涉及append()函数和connect()函数。通常,由以下五个步骤来完成:①对方框图中的各个环节进行编号,建立它们的对象模型。②利用append函数命令建立无连接的状态空间模型。sap=append(s1,s2,…,sm)③按规定写出系统的互联接矩阵q互联矩阵q中的每一行由组合系统的一个输入编号和构成该输入的其它输出编号组成,其中该行的第一个元素为该输入的编号,接下来的元素则由构成该输入的其它子框的输出编号组成,如果为负反馈,则编号应取负号。④选择组合系统中需保留的对外的输入和输出端的编号并列出。Inputs=[i1,i2,…]outputs=[j1,j2,…]⑤用connect命令生成组合后的系统。2.LTI模型的复杂模型组合对复杂系统的任意组合,在425.1.6连续系统与采样系统之间的转换若连续系统的状态方程为:则对应的采样系统状态方程为:其中,Ts为采样周期。
、、、反之,采样系统到连续系统的转换关系为上式的逆过程:、、、1.转换原理5.1.6连续系统与采样系统之间的转换若连续系统的状态方程43
2.连续系统与采样系统之间的转换函数函数名功能调用格式c2d连续系统转换为采样系统sysd=c2d(sysc,Ts,method)
d2c采样系统转换为连续系统sysc=d2c(sysd,method)
d2d采样系统改变采样频率sys=d2d(sys,Ts)
[例5-17]系统的传递函数为:输入延时Td=0.35秒,试用一阶保持法对连续系统进行离散,采样周期Ts=0.1s。MATLAB程序为:sys=tf([2,5,1],[1,2,3],'td',0.5);%生成连续系统的传递函数模型sysd=c2d(sys,0.1,'foh')%形成采样系统程序运行结果为:Transferfunction:2.036z^2-3.628z+1.584z^(-5)*-------------------------------------z^2-1.792z+0.8187Samplingtime:0.12.连续系统与采样系统之间的转换函数函数名功能调用格445.2控制系统的时域分析时域分析是一种直接在时间域中对系统进行分析的方法,具有直观和准确的优点。它是根据控制系统输入与输出之间的时域表达式,分析系统的稳定性、瞬态过程和稳态误差。控制系统最常用的分析方法有两种:一是当输入信号为单位阶跃时,求出系统的响应;二是当输入信号为单位冲激函数时,求出系统的响应。
1.生成特定的激励信号的函数gensig()格式:[u,t]=gensig(type,tau)功能:按指定的类型type和周期tau生成特定类型的激励信号u。其中变元type可取字符为:‘sin’(正弦)、‘square’(方波)、‘pulse’(脉冲)。5.2控制系统的时域分析时域分析是一种直452.LTI模型的单位冲激响应函数impulse()格式:impulse(sys)功能:绘制系统sys(sys由函数tf、zpk或ss产生)的单位冲激响应,结果不返回数据,只返回图形。[例5-19]系统传递函数为:求脉冲响应。MATLAB程序如下:sys=tf(4,[114]);%生成传递函数模型impulse(sys);%计算并绘制系统的单位冲激响应title('脉冲响应');该程序运行所得结果如图5.5所示。图5.5系统的脉冲响应
2.LTI模型的单位冲激响应函数impulse()[例5-463.状态空间模型系统的零输入响应函数initial()格式:initial(sys,x0)功能:绘制状态空间模型sys在初始条件x0下的零输入响应,不返回数据,只绘出响应曲线。该响应由如下方程表征:连续时间:离散时间:
、、、、4.LTI模型任意输入的响应函数lsim()格式:lsim(sys,u,T)
功能:计算和绘制LTI模型sys在任意输入u、持续时间T的作用下的输出y,不返回数据,只返回图形。T为时间数组,它的步长必须与采样周期Ts相同。当u为矩阵时,它的列作为输入,且与T(i)行的时间向量相对应。例如t=0:0.01:5;u=sin(t);lsim(sys,u,t)完成系统sys对输入u(t)=sin(t)在5秒内的响应仿真。5.LTI模型的阶跃响应函数step()格式:step(sys)功能:绘制系统sys(sys由函数tf、zpk或ss产生)的阶跃响应,结果不返回数据,只返回图形。对多输入多输出模型,将自动求每一输入的阶跃响应。3.状态空间模型系统的零输入响应函数initial()连47[例5-21]求系统:的方波响应,其中方波周期为6秒,持续时间12秒,采样周期为0.1秒。MATLAB程序为:[u,t]=gensig('square',6,12,0.1);%生成方波信号plot(t,u,'--');holdon;%绘制激励信号sys=tf([1,1],[1,2,5]);%生成传递函数模型lsim(sys,u,t,'k');%系统对方波激励信号的响应该程序运行所得结果如图5.7所示。图5.7方波响应曲线
[例5-21]求系统:图5.7方波响应曲线485.3控制系统的根轨迹在控制系统分析中,为了避开直接求解高阶多项式的根时遇到的困难,在实践中提出了一种图解求根法,即根轨迹法。所谓根轨迹是指当系统的某一个(或几个)参数从-∞到+∞时,闭环特征方程的根在复平面上描绘的一些曲线。应用这些曲线,可以根据某个参数确定相应的特征根。在根轨迹法中,一般取系统的开环放大倍数K作为可变参数,利用它来反映出开环系统零极点与闭环系统极点(特征根)之间的关系。根轨迹可以分析系统参数和结构已定的系统的时域响应特性,以及参数变化对时域响应特性的影响,而且还可以根据对时域响应特性的要求确定可变参数及调整开环系统零极点的位置,并改变它们的个数,也就是说根轨迹法可用于解决线性系统的分析与综合问题。MATLAB提供了专门绘制根轨迹的函数命令,如下表所示,使绘制根轨迹变得轻松自如。
5.3控制系统的根轨迹在控制系统分析中,为了避开直接49函数名功能格式pzmap绘制系统的零极点图pzmap(sys)tzero求系统的传输零点z=tzero(sys)rlocfind计算给定根轨迹增益[K,poles]=rlocfind(sys)rloccus求系统根轨迹[K,poles]=rlocfind(sys)damp求系统极点的固有频率和阻尼系统[Wn,Z]=damp(sys)ploe求系统的极点p=pole(sys)dcgain求系统的直流(稳态)增益k=dcgain(sys)dsort离散系统极点按幅值降序排列s=dsort(p)esort连续系统极点按实部降序排列s=esort(p)表
系统根轨迹绘制及零极点分析函数
函数名功能格式pzmap绘制系统的零极点图pzmap(s50[例5-25]由连续系统:试绘制其零极点图和根轨迹图。MATLAB程序为:num=[2,5,1];den=[1,2,3];sys=tf(num,den);%生成传递函数模型figure(1);pzmap(sys);title(‘零极点图’);%绘制零极点图figure(2);rlocus(sys);sgrid;title(‘根轨迹’);%绘制根轨迹图图5.12传递函数的零极点图和根轨迹图
[例5-25]由连续系统:图5.12传递函数的零极点图和515.4控制系统的频域分析频域分析法是应用频率特性研究控制系统的一种经典方法。采用这种方法可直观地表达出系统的频率特性,分析方法比较简单,物理概念比较明确,对于诸如防止结构谐振,抑制噪声、改善系统稳定性和暂态性能等问题,都可以从系统的频率特性上明确的看出其物理实质和解决途径。频率分析法主要包括三种方法:Bode图(幅频/相频特性曲线)Nyquist曲线Nichols图。5.4控制系统的频域分析频域分析法是应用频52函数名功能格式bodeBode图绘制bode(sys)nicholsNichols图绘制nichols(sys)nyquistNyquist图绘制Nyquist(sys)sigma系统奇异值Bode图绘制Sigma(sys)evalfr计算系统单个复频率点的频率响应fresp=evalfr(sys,x)dbode绘制离散系统的Bode图dbode(a,b,c,d,Ts,iu)dnichols绘制离散系统的Nichols图dnichols(num,den,ts)dnyquist绘制离散系统的Nyquist图dnyquist(num,den,ts)ngridNichols网格图绘制ngridmargin绘制离散系统的Bode图[gm,pm,wcg,wcp]=margin(sys)freqresp计算系统在给定实频率区间的频率响应
h=freqresp(sys,w)函数名功能格式bodeBode图绘制bode(sys)ni53[例5-29]试绘制开环系统H(s)的Nyquist曲线,判断闭环系统的稳定性,并求出闭环系统的单位冲激响应。其中MATLAB程序为:k=50;z=[];p=[-5,2];sys=zpk(z,p,k);figure(1);nyquist(sys);title('Nyquist曲线图');figure(2);sb=feedback(sys,1);impulse(sb);title('单位冲激响应');图5.18开环系统的Nyquist曲线图及冲激响应
[例5-29]试绘制开环系统H(s)的Nyquist曲线545.5系统的状态空间分析函数在自动控制系统分析中,状态空间分析是一种较复杂的分析方法。这是因为它用矩阵进行运
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2030年版中国滤色玻璃行业供需预测及投资可行性分析报告
- 2024-2030年版中国制糖工业市场营销模式及未来发展潜力分析报告
- 2024-2030年版中国举升机行业市场竞争策略分析及投资战略研究报告
- 2024-2030年煤渣多孔砖公司技术改造及扩产项目可行性研究报告
- 2024-2030年无铝食品袋行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 2024-2030年新版中国钢篮球板项目可行性研究报告
- 2024-2030年新版中国膝肌训练器项目可行性研究报告
- 2024-2030年新版中国液化石油气密度测定器项目可行性研究报告
- 2024-2030年全球及中国铝基碳化硅行业产销需求及投资前景预测报告
- 2024-2030年全球及中国轻型冷藏货车行业需求前景及销售规模预测报告
- 第五节 错觉课件
- 2024-2030年陕西省煤炭行业市场发展分析及发展前景预测研究报告
- 国开2024年《中国法律史》平时作业1-3答案
- 焦化厂生产工序及工艺流程图
- 呕吐(急性胃肠炎)诊疗指南(制订)编制说明排版
- 江堤道路工程施工方案#江苏
- (外研版)初中英语语法汇总[新版]
- 李燕璇植树问题卡通版5
- 有砟轨道铺设的施工讲解
- 烟草专卖食堂燃气泄露及火灾事故现场应急处置方案
- 国家电网公司十八项反措
评论
0/150
提交评论