控制系统的数学描述与建模课件

上传人:我*** 文档编号:144715434 上传时间:2020-09-13 格式:PPT 页数:36 大小:256.50KB
返回 下载 相关 举报
控制系统的数学描述与建模课件_第1页
第1页 / 共36页
控制系统的数学描述与建模课件_第2页
第2页 / 共36页
控制系统的数学描述与建模课件_第3页
第3页 / 共36页
控制系统的数学描述与建模课件_第4页
第4页 / 共36页
控制系统的数学描述与建模课件_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《控制系统的数学描述与建模课件》由会员分享,可在线阅读,更多相关《控制系统的数学描述与建模课件(36页珍藏版)》请在金锄头文库上搜索。

1、CH3、控制系统的数学描述与建模,控制系统的数学模型在控制系统的研究中有着相当重要的地位,要对系统进行仿真处理,首先应当知道系统的数学模型,然后才可以对系统进行模拟。同样,如果知道了系统的模型,才可以在此基础上设计一个合适的控制器,使得系统响应达到预期的效果,从而符合工程实际的需要。,在线性系统理论中,一般常用的数学模型形式有:传递函数模型(系统的外部模型)、状态方程模型(系统的内部模型)、零极点增益模型和部分分式模型等。这些模型之间都有着内在的联系,可以相互进行转换。,按系统性能分:线性系统和非线性系统;连续系统和离散系统;定常系统和时变系统;确定系统和不确定系统。 1、线性连续系统:用线性

2、微分方程式来描述,如果微分方程的系数为常数,则为定常系统;如果系数随时间而变化,则为时变系统。今后我们所讨论的系统主要以线性定常连续系统为主。 2、线性定常离散系统:离散系统指系统的某处或多处的信号为脉冲序列或数码形式。这类系统用差分方程来描述。 3、非线性系统:系统中有一个元部件的输入输出特性为非线性的系统。,第一节 系统的分类,微分方程是控制系统模型的基础,一般来讲,利用机械学、电学、力学等物理规律,便可以得到控制系统的动态方程,这些方程对于线性定常连续系统而言是一种常系数的线性微分方程。 如果已知输入量及变量的初始条件,对微分方程进行求解,就可以得到系统输出量的表达式,并由此对系统进行性

3、能分析。 通过拉氏变换和反变换,可以得到线性定常系统的解析解,这种方法通常只适用于常系数的线性微分方程,解析解是精确的,然而通常寻找解析解是困难的。MATLAB提供了ode23、ode45等微分方程的数值解法函数,不仅适用于线性定常系统,也适用于非线性及时变系统。,第二节 线性定常连续系统的微分方程模型,Ode23( )和ode45( )函数分别采用了二阶三级的RKF方法和四阶五级的RKF方法,并采用自适应变步长的求解方法。 t,x=ode23(方程函数名,tspan,x0,选项,附加参数) t,x=ode45(方程函数名,tspan,x0,选项,附加参数) tspan仿真范围,例如取t0,t

4、f,其中t0和tf分别为用户指定的起始和终止计算时间。 x0系统的初始状态变量的值,应该使该向量的元素个数等于系统状态变量的个数。 t求解的时间变量,因为采用了变步长的时间算法,所以得出的t向量并不一定是等间隔的。 x状态变量在各个时刻所组成的列向量所构成的矩阵的转置。有了t和x,在求解过程结束后即可以用plot(t,x)来绘制出解的结果曲线。,方程函数名的编写格式是固定的: function xdot=方程函数名(t,x,flag,附加参数) t时间变量。 x方程的状态变量。 xdot状态变量的导数。 例:假设Lorenz模型的状态方程表示为 求取各状态变量的值。,令初值为x1(0)= x2

5、(0)= 0, x3(0)=, 为机器上可以识别的小常数,例如取=10-10,则可编写函数lorenzeq.m来描述系统的动态模型: function xdot=lorenzeq(t,x) xdot=-8/3*x(1)+x(2)*x(3); -10*x(2)+10*x(3); -x(1)*x(2)+28*x(2)-x(3); 调用微分方程数值解ode45()函数对lorenzeq()函数描述的系统进行数值求解,并将结果进行图形显示。 t_final=100;x0=0;0;1e-10; t,x=ode45(lorenzeq,0,t_final,x0); plot(t,x); figure; pl

6、ot3(x(:,1),x(:,2),x(:,3);axis(10 40 -20 20 -20 20);,例exp3_1.m,电路图如下,R=1.4欧,L=2亨,C=0.32法,初始状态:电感电流为零,电容电压为0.5V,t=0时刻接入1V的电压,求0t15s时,i(t),vo(t)的值,并且画出电流与电容电压的关系曲线。,clear clc close t0=0; tfinal=15; x0=0.5;0; %初始化,电容电压为0.5v ,电感电流为0 %tol=0.001; %数值计算精度 t,x=ode45(elecsys,t0,tfinal,x0); %elecsys是系统微分方程的描述函

7、数 figure(1) subplot(211) plot(t,x(:,1) title(capacitor voltage) xlabel(time-sec),subplot(212) plot(t,x(:,2) title(current of L) xlabel(time-sec) figure(2) vc=x(:,1); i=x(:,2); plot(vc,i); title(current versus capacitor voltage) xlabel(capacitor voltage) ylabel(current),%微分方程函数 function xdot=elecsys(

8、t,x) %状态导数 Vs=1; R=1.4; L=2; C=0.32; xdot=x(2)/C;1/L*(Vs-x(1)-R*x(2);,对线性定常系统,式中s的系数均为常数,且a1不等于零,这时系统在MATLAB中可以方便地由分子和分母系数构成的两个向量唯一地确定出来,这两个向量分别用num和den表示。 num=b1,b2,bm,bm+1 den=a1,a2,an,an+1 注意:它们都是按s的降幂进行排列的。 sys= tf(num, den)函数返回的变量sys为连续系统的传递函数模型。,第三节 传递函数描述,一、连续系统的传递函数模型 连续系统的传递函数如下:,例,假设已知系统的传

9、递函数模型为:,由下面的MATLAB语句可以容易地得出系统输入到工作空间中: num=1 7 24 24; den=1 10 35 50 24; G=tf(num,den) Transfer function: s3 + 7 s2 + 24 s + 24 - s4 + 10 s3 + 35 s2 + 50 s + 24,零极点模型实际上是传递函数模型的另一种表现形式,其原理是分别对原系统传递函数的分子、分母进行分解因式处理,以获得系统的零点和极点的表示形式。,在MATLAB中零极点增益模型用z,p,K矢量组表示。即: z=z1,z2,zm p=p1,p2,.,pn K=k 函数tf2zp()可

10、以用来求传递函数的零极点和增益。 sys= zpk(num,den)函数返回的变量sys为连续系统的零极点增益模型。,二、零极点增益模型,K为系统增益,zi为零点,pj为极点,控制系统常用到并联系统,这时就要对系统函数进行分解,使其表现为一些基本控制单元的和的形式。 函数r,p,k=residue(b,a)对两个多项式的比进行部分展开,以及把传递函数分解为微分单元的形式。 向量b和a是按s的降幂排列的多项式系数。部分分式展开后,余数返回到向量r,极点返回到列向量p,常数项返回到k。 b,a=residue(r,p,k)可以将部分分式转化为多项式比b(s)/a(s)。,三、部分分式展开,举例:传

11、递函数描述 1) num=12,24,0,20;den=2 4 6 2 2; 2),借助多项式乘法函数conv来处理: num=4*conv(1,2,conv(1,6,6,1,6,6); den=conv(1,0,conv(1,1,conv(1,1,conv(1,1, 1,3,2,5);,零极点增益模型:,结果表达式:,部分分式展开: num=2,0,9,1; den=1,1,4,4; r,p,k=residue(num,den) ,结果表达式:,状态方程与输出方程的组合称为状态空间表达式,又称为动态方程,经典控制理论用传递函数将输入输出关系表达出来,而现代控制理论则用状态方程和输出方程来表达

12、输入输出关系,揭示了系统内部状态对系统性能的影响。,第四节状态空间描述,在MATLAB中,系统状态空间用(A,B,C,D)矩阵组表示。A矩阵是n*n方阵,B为n*p矩阵,C为q*n矩阵,D为q*p矩阵 sys= ss(a, b, c, d)函数返回的变量sys为连续系统的状态空间模型。,举例:,系统为一个两输入两输出系统 A=1 6 9 10; 3 12 6 8; 4 7 9 11; 5 12 13 14; B=4 6; 2 4; 2 2; 1 0; C=0 0 2 1; 8 0 2 2; D=zeros(2,2);,在一些场合下需要用到某种模型,而在另外一些场合下可能需要另外的模型,这就需要

13、进行模型的转换。 模型转换的函数包括: residue:传递函数模型与部分分式模型互换 ss2tf: 状态空间模型转换为传递函数模型 ss2zp: 状态空间模型转换为零极点增益模型 tf2ss: 传递函数模型转换为状态空间模型 tf2zp: 传递函数模型转换为零极点增益模型 zp2ss: 零极点增益模型转换为状态空间模型 zp2tf: 零极点增益模型转换为传递函数模型,第五节模型的转换与连接,一、模型的转换,用法举例: 1)已知系统状态空间模型为: A=0 1; 1 -2; B=0;1; C=1,3; D=1; num,den=ss2tf(A,B,C,D,iu) iu用来指定第n个输入,当只有

14、一个输入时可忽略。 num=1 5 2; den=1 2 1; z,p,k=ss2zp(A,B,C,D,iu) z= -4.5616 p= -1 k=1 -0.4384 -1,2)已知一个单输入三输出系统的传递函数模型为: num=0 0 -2;0 -1 -5;1 2 0;den=1 6 11 6; A,B,C,D=tf2ss(num,den) A= -6 -11 -6 B= 1 C= 0 0 -2 D= 0 1 0 0 0 0 -1 -5 0 0 1 0 0 1 2 0 0,3)系统的零极点增益模型: z=-3;p=-1,-2,-5;k=6; num,den=zp2tf(z,p,k) num

15、= 0 0 6 18 den= 1 8 17 10 a,b,c,d=zp2ss(z,p,k) a= -1.0000 0 0 b=1 2.0000 -7.0000 -3.1623 1 0 3.1623 0 0 c= 0 0 1.8974 d=0 注意:零极点的输入可以写出行向量,也可以写出列向量。,4)已知部分分式: r=-0.25i,0.25i,-2; p=2i,-2i,-1;k=2; num,den=residue(r,p,k) num= 2 0 9 1 den= 1 1 4 4 注意余式一定要与极点相对应。,1、并联:parallel 格式: a,b,c,d=parallel(a1,b1,

16、c1,d1,a2,b2,c2,d2) 并联连接两个状态空间系统。 a,b,c,d=parallel(a1,b1,c1,d1,a2,b2,c2,d2,inp1,inp2,out1,out2) inp1和inp2分别指定两系统中要连接在一起的输入端编号,从u1,u2,un依次编号为1,2,n; out1和out2分别指定要作相加的输出端编号,编号方式与输入类似。inp1和inp2既可以是标量也可以是向量。out1和out2用法与之相同。如inp1=1,inp2=3表示系统1的第一个输入端与系统2的第三个输入端相连接。 若inp1=1 3,inp2=2 1则表示系统1的第一个输入与系统2的第二个输入连接,以及系统1的第三个输入与系统2的第一个输入连接。 num,den=parallel(num1,den1,num2,den2) 将并联连接的传递函数进行相加。,二、模型

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号