控制系统仿真3ppt课件.ppt

上传人:本田雅阁 文档编号:2602163 上传时间:2019-04-16 格式:PPT 页数:71 大小:773.51KB
返回 下载 相关 举报
控制系统仿真3ppt课件.ppt_第1页
第1页 / 共71页
控制系统仿真3ppt课件.ppt_第2页
第2页 / 共71页
控制系统仿真3ppt课件.ppt_第3页
第3页 / 共71页
控制系统仿真3ppt课件.ppt_第4页
第4页 / 共71页
控制系统仿真3ppt课件.ppt_第5页
第5页 / 共71页
点击查看更多>>
资源描述

《控制系统仿真3ppt课件.ppt》由会员分享,可在线阅读,更多相关《控制系统仿真3ppt课件.ppt(71页珍藏版)》请在三一文库上搜索。

1、控制系统仿真 Control System Simulation,控制科学与工程系,赵 海 艳,Zhao_,第三章 控制系统CAD,Outline,现代控制理论CAD,控制工具箱,控制系统稳定性分析,经典控制理论CAD,早期的控制系统分析过程复杂而耗时,如想得到一个系统的冲激响应曲线,首先需要编写一个求解微分方程的子程序,然后将已经获得的系统模型输入计算机,通过计算机的运算获得冲激响应的响应数据,然后再编写一个绘图程序,将数据绘制成可供工程分析的响应曲线。 MATLAB控制工具箱是MATLAB最早的工具箱,给控制系统分析带来了福音。,控制工具箱,位置:matlabtoolboxcontrol,

2、控制工具箱,1.1 系统建模,Creating linear models. tf - Create transfer function models. zpk - Create zero/pole/gain models. ss, dss - Create state-space models.,Model conversions. tf2ss - Transfer function to state space conversion. zp2tf - Zero/pole/gain to state space conversion. ss2zp - State space to zero/

3、pole/gain conversion. c2d - Continuous to discrete conversion. d2c - Discrete to continuous conversion. d2d - Resample discrete-time model.,传递函数模型,零极点增益模型,状态方程模型,用分子/分母的系数向量(n+1维/m+1维)表示: numb1,b2, bm , bm+1 dena1,a2, an ,an+1,用z,p,k向量组来表示,即 zz1,z2,zm pp1,p2,pn kk,系统可用(a,b,c,d)矩阵组表示,控制工具箱,连续系统,离散系统,

4、传递函数模型,零极点增益模型,状态空间模型,直接用分子/分母的系数表示,即 numb1,b2,bm+1 dena1,a2,an+1,用z,p,k向量组来表示,即 zz1,z2,zm pp1,p2,pn kk,系统可用(a,b,c,d)矩阵组表示,控制工具箱,建立线性时不变(Linear Time Invariant)模型对象,G=tf(num,den) 利用传递函数二对组生成 LTI对象模型 G=zpk(Z,P,K) 利用零极点增益三对组生 成LTI对象模型 G=ss(A,B,C,D) 利用状态方程四对组生成 LTI对象模型 LTI对象模型G一旦生成,就可以用单一变量名G描述系统的数学模型,而

5、不必每次调用系统都输入模型参数组各向量或矩阵数据。,控制工具箱,G1=tf(G) 将LTI对象模型转换为传递函数模型 G2=zpk(G) 将LTI对象模型转换为零极点增益模型 G3=ss(G) 将LTI对象模型转换为状态方程模型,线性时不变(Linear Time Invariant)模型对象转换,num,den=tfdata(G) 从LTI对象获得传递函数二对组模型参数 Z,P,K=zpkdata(G) 从LTI对象获取零极点增益三对组模型参数 A,B,C,D=ssdata(G) 从LTI对象获取状态方程四对组模型参数,通过以下函数获得不同要求下的模型参数组向量或矩阵数据,控制工具箱,ss2

6、tf,功能:变系统状态空间形式为传递函数形式。 格式:num,den=ss2tf(A,B,C,D,iu) 说明: 可将状态空间表示变换成相应的传递函数表示,iu用于指定变换所使用的输入量。 ss2tf函数还可以应用于离散时间系统,这时得到的是Z变换表示。,控制工具箱,ss2zp,功能:变系统状态空间形式为零极点增益形式。 格式;z,p,k=ss2zp(A,B,C,D,iu) 说明: z,p,k=ss2zp(A,B,C,D,iu)可将状态空间表示转换成零极点增益表示,iu用于指定变换所用的输入量。 ss2zP函数还可以应用于离散时间系统,这时得到的是Z变换表示。,控制工具箱,tf2ss,功能:变

7、系统传递函数形式为状态空间形式。 格式:A,B,C,D tf2ss(num,den) 说明: tf2ss函数可将给定系统的传递函数表示成等效的状态空间表示。在A,B,C,Dtf2ss(num,den)格式中,矢量den按s的降幂顺序输入分母系数,矩阵num每一行为相应于某输出的分子系数,其行数为输出的个数。tf2ss得到控制器正则形式的A,B,C,D矩阵。 tf2ss也可以用于离散系统中,但这时必须在分子多项式中补零使分子分母的长度相同。,控制工具箱,tf2zp,功能:变系统传递函数形式为零极点增益形式。 格式:z,P,k=tf2zp(num,den) 说明: tf2zp函数可找出多项式传递函

8、数形式的系统的零点、极点和增益。 tf2zP函数类似于ss2zP函数。,控制工具箱,zp2ss,功能:变系统零极点增益形式为状态空间形式。 格式:A,B,C,Dzp2ss(z,p,k) 说明: A,B,C,Dzp2ss(z,P,k)可将以 z,P,k表示的零极点增益形式变换成状态空间形式。,控制工具箱,zp2tf,功能:变系统零极点增益形式为传递函数形式。 格式:num,den=zp2tf(z,p,k) 说明: num,den= zp2tf(z,P)可将以z,p,k表示的零极点增益形式变换成传递函数形式。,控制工具箱,ss2ss,功能:相似变换。 格式: at,bt,ct,dtss2ss(a,

9、b,c,d,T) 说明: at,bt,ct,dtss2ss(a,b,c,d,T)可完成相似变换z=Tx以此得到状态空间系统为,控制工具箱,c2d,c2dt,功能:变连续时间系统为离散时间系统。 格式: ad,bdc2d(a,b,Ts) 说明:c2d完成将状态空间模型从连续时间到离散时间的转换,控制工具箱,控制系统模型之间的转换,模型之间的转换,控制工具箱,1.2 系统模型的连接,System interconnections.,append - Group LTI systems by appending inputs and outputs. parallel - Generalized p

10、arallel connection. series - Generalized series connection. feedback - Feedback connection of two systems. cloop -unit feedback connection estim -produces an estimator reg -produces an observer-based regulator,append,功能:两个状态空间系统的组合。 格式: a,b,c,d=append(a1,b1,c1,d1,a2,b2,c2,d2) 说明:append函数可将两个状态空间系统组合

11、。,控制工具箱,parallel,功能:系统的并联连接。 格式: a,b,c,d parallel(a1,b1,c1,d1,a2,b2,c2,d2) num,den parallel(numl,denl,num2,den2) 说明:parallel函数按并联方式连接两个状态空间系统,它即适合于连续时间系统也适合于离散时间系统。,系统1,系统2,u1,u2,+y1,+y2,系统的并联连接,y,yy1+y2,控制工具箱,series,功能:系统的串联连接。 格式: a,b,c,dseries(a1,b1,c1,d1,a2,b2,c2,d2) num,denseries(numl,denl,num2

12、,den2) 说明:series函数可以将两个系统按串联方式连接,它即适合于连续时间系统,也适合于离散时间系统。,系统1,系统2,u1,u2,y1,y2,系统的串联连接,控制工具箱,feedback,功能:两个系统的反馈连接。 格式: a,b,c,d=feedback(a1,b1,c1,d1,a2,b2,c2,d2) a,b,c,d=feedback(a1,b1,c1,d1,a2,b2,c2,d2,sign) num,den= feedback(numl,denl,num2,den2) num,den= feedback(numl,denl,num2,den2,sign) 说明:feedbac

13、k可将两个系统按反馈形式连接。 sign符号用于指示y2到u1连接的符号,缺省为负, 即sign1。,控制工具箱,cloop,功能: 状态空间系统的闭环形式 格式: ac,bc,cc,dc=cloop(a,b,c,d,sign) numc,denc= cloop(num,den,sign) 说明: cloop函数可通过将系统输出反馈到系统输入构成闭环系统,开环系统的输入/输出仍然是闭环系统的输入/输出 当signl时为正反馈,sign-1时为负反馈。,控制工具箱,estim,destim,功能:生成连续/离散状态估计器或观测器 格式: ae,be,ce,de=estim(a,b,c,d,l)

14、ae,be,ce,de=destim(a,b,c,d,l) 说明:estim和destim可从状态空间系统和增益矩阵l中生成稳态卡尔曼估计器。,控制工具箱,reg,dreg,功能:生成控制器/估计器 格式:ae,be,ce,de=reg(a,b,c,d,k,l) ae,be,ce,de=dreg(a,b,c,d,l) 说明:reg和dreg可从状态空间系统、反馈增益矩阵k及估计器增益矩阵l 中形成控制器/估计器。,控制工具箱,控制工具箱,1.3 模型降阶与实现,balreal - Gramian-based input/output balancing. modred - Model stat

15、e reduction. minreal - Minimal realization and pole/zero cancellation. ss2ss - State coordinate transformation. ctrbf -decomposition into the controllable and uncontrollable subspaces. obsvf -decomposition into the observable and unobservable subspaces.,Model reductions and realizations,控制工具箱,1.4 模型

16、属性函数*,Model properties,ctrb - Controllability matrix. obsv - Observability matrix. gram - Controllability and observability Grampians. dcgain -Computes the steady-state gain of system.,ctrbf,obsvf,功能:可控性和可观性阶梯形式。 格式: ab,bb,cb,T,k=ctrbf(a,b,c) ah,bb,cb,T,k=ctrbf(a,b,c,tol(误差容限) ab,bb,cb,T,k=obsvf(a,b

17、,c) ab,bb,cb,T,k=obsvf(a,b,c,tol) 说明: 函数ab,bb,cb,T,k=ctrbf(a,b,c)可将系统分解为可控/不可控两部分。 函数ab, bb, cb, T, k=obsvf(a, b, c)可将系统分解为可观/不可观两部分。,控制工具箱,ctrb,obsv,功能:可控性和可观性矩阵。 格式:co=ctrb(a,b) ob=obsv(a,c) 说明: ctrb和obsv函数可求出状态空间系统的可控性和可观性矩阵。 对nn矩阵a,nm矩阵b和pn矩阵c,ctrb(a,b)可得到nnm的可控性矩阵co=b ab a2b a3ban1b obsv(a,b)可得

18、到mnn的可观性矩阵 ob=c ca ca2 can-1。 当co的秩为n时,系统可控;当ob的秩为n时,系统可观。,控制工具箱,控制工具箱,1.5 分析函数,step - Step response. impulse - Impulse response. initial - Response of state-space system with given initial state. lsim -Simulate time response of LTI models to arbitrary inputs,Time-domain analysis.,控制工具箱,1.5 分析函数,bod

19、e - Bode diagrams of the frequency response. nyquist - Nyquist plot. Margin* - Gain and phase margins.,Frequency-domain analysis.,root locus,控制工具箱,1.5 分析函数,pzmap - Pole-zero map. roots - Find polynomial roots rlocus - Evans root locus.,lyap - Solve continuous Lyapunov equations. dlyap - Solve discre

20、te Lyapunov equations. care - Solve continuous algebraic Riccati equations. dare - Solve discrete algebraic Riccati equations.,Matrix equation solvers.,控制工具箱,1.6 系统设计函数,place - MIMO pole placement. acker - SISO pole placement.,Pole placement,功能:Lyapunov(李亚普诺夫)方程求解。 格式:xlyap(a,b,c) 说明: lyap函数可求解一般形式或

21、特殊形式的 Lyapunov方程。,lyap,are,功能:代数Riccati(黎卡堤)方程求解。 格式:xare(a,b,c) 说明: are函数用于求解代数Riccati方程。在控制系统的许多领域如线性二次型调节器和估价器设计等都会涉及到代数Riccati方程的求解问题。 xare(a,b,c)可求出连续时间代数Riccati方程的正定解(如果存在的话),aTxxaxbxc0,place,acker,功能:极点配置增益选择。 格式: kplace(a,b,p) kacker(a,b,p) 说明:place和acker函数用于极点配置增益选择。,Outline,现代控制理论CAD,控制工具箱

22、,控制系统稳定性分析,经典控制理论CAD,对于连续系统,如果闭环极点全部在S平面左半平面, 则系统是稳定的。对于离散系统,如果系统全部极点都位于Z平面的单位圆内,则系统是稳定的。,控制系统稳定性分析,系统稳定性是系统能够成立和运行的首要条件,经典控制理论,现代控制理论,劳斯判据、胡尔维茨判据、奈奎斯特稳定性判据,系统矩阵A的全部特征值位于复平面左半部(具有负实部)。,Lyapunov第一法,给定一个正定对称矩阵Q,存在一个正定对称矩阵P,使满足:,Lyapunov第二法,控制系统稳定性分析,2.1 利用极点判断系统的稳定性,可以利用roots函数或零极点模型来判断系统稳定性,For examp

23、le,可以利用pzmap( )绘制出系统的零极点图,控制系统稳定性分析,2.2 利用特征值判断系统的稳定性,可以利用eig( )函数求出系统矩阵A的全部特征值来判断系统稳定性。,For example,可以利用lyap,dlyap函数求解Lyapunov方程,从而 分析系统的稳定性,调用格式为:P=lyap(A,Q),控制系统稳定性分析,2.3 利用李雅普诺夫第二法判断系统的稳定性,For example,Outline,现代控制理论CAD,控制工具箱,控制系统稳定性分析,经典控制理论CAD,经典控制理论CAD,3.1 控制系统固有特性分析,1、时域分析,时域分析:是指典型输入信号作用下,通过

24、过渡过程曲线来分 析和评价控制系统的性能。,MATLAB实现: stepStep response of continuous system(dstep) impulseimpulse response of continuous system(dimpulse) initialInitial condition response of state-space models. lsimSimulate time response of continuous system to arbitrary inputs,经典控制理论CAD,3.1 控制系统固有特性分析,1、时域分析,step( )函数的

25、用法,y=step(num,den,t):其中num和den分别为系统传递函数描述中的分子和分母多项式系数,t为选定的仿真时间向量,一般可以由t=0:step:end等步长地产生出来。该函数返回值y为系统在仿真时刻各个输出所组成的矩阵。,y,x,t=step(A,B,C,D):其中A,B,C,D为系统的状态空间描述矩阵,x为系统返回的状态轨迹。,经典控制理论CAD,3.1 控制系统固有特性分析,1、时域分析,For example,经典控制理论CAD,3.1 控制系统固有特性分析,2、频域分析,频域分析:通常将频率特性用曲线的形式进行表示,包括对数 频率特性曲线和幅相频率特性曲线。,MATLA

26、B实现: bodedraws the Bode plot of the SYS (created with either TF, ZPK or SS ). nyquistdraws the Nyquist plot of the SYS.,dbode dnyquist,经典控制理论CAD,3.1 控制系统固有特性分析,2、频域分析,bode( )函数的用法,bode(SYS): draws the Bode plot of the SYS (created with either TF, ZPKor SS). The frequency range and number of points a

27、re chosen automatically.,bode(SYS,W):uses the user-supplied vector W of frequencies, in radian/second, at which the Bode response is to be evaluated.,m,p,w=bode(SYS):return the response magnitudes and phases in degrees (along with the frequency vector W if unspecified). No plot is drawn on the scree

28、n.,频域分析,bode,功能:求连续系统的Bode(波特)频率响应。 格式: mag,phase,w bode(a,b,c,d) mag,phase,w bode(a,b,c,d,iu) mag,phase,w bode(a,b,c,d,iu,w) mag,phase,w bode(num,den) mag,phase,w bode(num,den,w) 说明:bode函数可计算出连续时间LTI系统的幅频和相频响应曲线(bode图)。bode图可用于分析系统的增益裕度、相位裕度、直接增益、带宽、扰动抑制及其稳定性等特性。,经典控制理论CAD,3.1 控制系统固有特性分析,2、频域分析,For

29、 example,已知系统开环传递函数:,试绘制系统的概略开环幅相曲线。,clear clc G=tf(10,0.25,0.25,1,1,0); nyquist(G); axis(-20,20,-20,20);,经典控制理论CAD,3.1 控制系统固有特性分析,3、根轨迹分析,根轨迹分析方法是分析和设计线性定常控制系统的图解方法,使用十分简便。利用它可以对系统进行各种性能分析。 所谓根轨迹是指,当开环系统的增益K从零变到无穷大时,闭环系统特征方程的根在s平面上的轨迹。闭环系统特征方程的根就是闭环传递函数的极点。,MATLAB实现: pzmap (SYS) computes the poles

30、and zeros of the SYS and plots them in the complex plane. rlocus (SYS) computes and plots the root locus of the SYS. rlocfindfind root locus gains for a given set of roots.,经典控制理论CAD,3.1 控制系统固有特性分析,3、根轨迹分析,开环系统传递函数如下所示:要求绘制系统的闭环根轨迹,分析其稳定性,并绘制出当k=55和k=56时系统的闭环冲激响应。,For example,G=tf(1 2, 1 4 3); %建立等效

31、开环传递函数模型 figure; rlocus(G),Outline,现代控制理论CAD,控制工具箱,控制系统稳定性分析,经典控制理论CAD,现代控制理论任务?,现代控制理论是指用状态空间方法作为描述 动态系统的手段,来研究系统的稳定性、能 控性、能观性等定性问题,用极点配置、状 态反馈等理论及方法设计与分析控制系统。,现代控制理论CAD,现代控制理论CAD,4.1 极点配置,定理:用状态反馈任意配置闭环极点的充要条件是: 受控系统完全可控,acker( ): Pole placement gain selection using Ackermanns formula.,现代控制理论CAD,4

32、.1 极点配置,MATLAB实现:,K = acker(A,B,P): calculates the feedback gain matrix K of the SISO system: . x = Ax + Bu the closed loop poles are specified in vector P,place( ): pole placement technique applies to the MIMO system.,K = place(A,B,P): computes a state-feedback matrix K,解: 1、判别系统能控性ctrb;rank 2、极点配置

33、acker(A,b,p),现代控制理论CAD,4.1 极点配置,For example,现代控制理论CAD,4.2 状态观测器的设计,state feedback,state observer,1、只要A-HC满足什么条件,状态变量误差会逼近零?,原系统(original system):,指数项,2、状态观测器的设计其实是一个什么问题?,现代控制理论CAD,利用对偶原理,可以使设计问题转化为状态反馈极点配置问题,使设计大为简化,(1)首先构造系统的对偶系统,(2)利用MATLAB和函数place()或acker(),求得 状态反馈的反馈矩阵K;,(3)根据H=KT确定状态观测器的反馈矩阵H.

34、,现代控制理论CAD,4.2 状态观测器的设计,现代控制理论CAD,4.2 状态观测器的设计,For example,解:1、判别系统能观性 2、设计状态观测器,现代控制理论CAD,4.3 线性二次最优控制器设计,(一)基本原理,设线性定常系统状态方程为:,二次型性能指标为:,最优控制的目标就是求取u(t),使得上面性能指标达到最小值。这样的控制问题称为线性二次型(linear quadratic,LQ)最优控制问题。,现代控制理论CAD,4.3 线性二次最优控制器设计,1)求解Riccati方程,求得矩阵P。,(一)基本原理,系统的设计步骤可概括如下:,2)将此矩阵P代入方程 ,得到的即为

35、最优反馈增益矩阵K。,3)最优控制规律为: 。,现代控制理论CAD,4.3 线性二次最优控制器设计,(二)MATLAB(控制系统工具箱)实现,如下两个命令可以直接求解二次型调节器问题以及相关的Riccati方程: K,P,E=lqr(A,B,Q,R); K,P,E=lqry(A,B,C,D,Q,R),lqr: Linear-quadratic regulator design,现代控制理论CAD,4.3 线性二次最优控制器设计,For example,已知一阶直线倒立摆系统状态空间描述方程为,由MATLAB中提供的解决线性二次型最优控制问题的命令: K=lqr(A,B,Q,R) 可得:K=(1

36、21.31, 12.12, 5.03, 7.67)。,现代控制理论CAD,4.3 线性二次最优控制器设计,For example,控制系统结构图如下:,现代控制理论CAD,4.3 线性二次最优控制器设计,For example,系统仿真结构如下所示:,现代控制理论CAD,4.3 线性二次最优控制器设计,仿真曲线如下所示:,本章总结,本章所要掌握的是控制系统CAD的基本知识,包括MATLAB控制工具箱 ;控制系统稳定性分析 ;经典控制理论CAD;现代控制理论CAD。,应熟练掌握MATLAB控制工具箱中个函数的用法,并能利用MATLAB控制工具箱中的函数进行控制系统的分析与设计。,根轨迹分析,pz

37、map,功能:绘制系统的零极点图。 格式: p,zpzmap(a,b,c,d) p,zpzmap(num,den) p,zpzmap(p,z) 说明:pzmap函数可绘出 LTI系统的零极点图,对SISO系统而言,pzmap函数可绘出传递函数的零极点;对MIMO系统而言,pzmap可绘制出系统的特征矢量和传递零点。当不带输出变量引用时,pzmap可在当前图形窗口中绘制出系统的零极点图。,rlocus,功能:求系统根轨迹。 格式: r,krlocus(num,den) r,krlocus(num,den,k) r,krlocus(a,b,c,d) r,krlocus(a,b,c,d,k) 说明: rlocus函数可计算出SISO系统的根轨迹。 在不带输出变量引用函数时,rlocus可在当前图形窗口中绘制出系统的根轨迹图。rlocus函数既适用于连续时间系统,也适用于离散时间系统。,The end!,Thanks !,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1