第11.1章 MATLAB在控制系统应用实例
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
借助多项式乘法函数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]))));
(2)零极点增益模型
零极点模型实际上是传递函数模型的另一种表现形式,其原
2、线性定常连续系统的微分方程模型
• 微分方程是控制系统模型的基础,一般来讲,利用机械学、
电学、力学等物理规律,便可以得到控制系统的动态方程, 这些方程对于线性定常连续系统而言是一种常系数的线性微
分方程。
• 如果已知输入量及变量的初始条件,对微分方程进行求解, 就可以得到系统输出量的表达式,并由此对系统进行性能分 析。 • 通过拉氏变换和反变换,可以得到线性定常系统的解析解, 这种方法通常只适用于常系数的线性微分方程,解析解是精 确的,然而通常寻找解析解是困难的。MATLAB提供了ode23、 ode45等微分方程的数值解法函数,不仅适用于线性定常系统, 也适用于非线性及时变系统。
部分分式展开:
3 2 s 9 s 1 G (s ) 3 2 s s 4 s 4
》num=[2,0,9,1]; 》den=[1,1,4,4]; [r,p,k]=residue(num,den) 》 r= p= 0.0000-0.2500i 0.0000+0.2500i -2.0000 0.0000+2.0000i 0.0000-2.0000i -1.0000
11.1 matlab在控制系统的应用 一、控制系统的数学描述与建模 控制系统的数学模型在控制系统的研究中有着相当重要的地
位,要对系统进行仿真处理,首先应当知道系统的数学模型,
然后才可以对系统进行模拟。同样,如果知道了系统的模型, 才可以在此基础上设计一个合适的控制器,使得系统响应达到
预期的效果,从而符合工程实际的需要。
0 -6 -5 -3.0000+4.0000i -3.0000-4.0000i -2.0000 1
-1.0000
结果表达式:
s ( s 6 )( s 5 ) G ( s பைடு நூலகம் ( s 1 )( s 2 )( s 3 4 j )( s 3 4 j )
(4)部分分式展开
控制系统常用到并联系统,这时就要对系统函数进行分
解,使其表现为一些基本控制单元的和的形式。
函数 分单元的形式: 向量b和a是按s的降幂排列的多项式系数。 [r,p,k]=residue(b,a) 对两个多项式的比进行部分展开,以及把传函分解为微
部分分式展开后,余数返回到向量r,极点返回到列向量p,
常数项返回到k。 另外: [b,a]=residue(r,p,k)可以将部分分式转化为多项式比p(s)/q(s)。
在线性系统理论中,一般常用的数学模型形式有:传递函数 模型(系统的外部模型)、状态方程模型(系统的内部模型)、
零极点增益模型和部分分式模型等。这些模型之间都有着内在
的联系,可以相互进行转换。
1、系统的分类
• 按系统性能分:线性系统和非线性系统;连续系统和离散系
统;定常系统和时变系统;确定系统和不确定系统。 (1)线性连续系统:用线性微分方程式来描述,如果微分方程 的系数为常数,则为定常系统;如果系数随时间而变化,则 为时变系统。今后我们所讨论的系统主要以线性定常连续系 统为主。 (2)线性定常离散系统:离散系统指系统的某处或多处的信号 为脉冲序列或数码形式。这类系统用差分方程来描述。 (3)非线性系统:系统中有一个元部件的输入输出特性为非线 性的系统。
m m 1 1 2 n n 1 1 2
举例:传递函数描述 1)
3 2 12 s 24 s 20 G ( s ) 4 3 2 2 s 4 s 6 s 2 s 2
》num=[12,24,0,20];den=[2 4 6 2 2]; 2)
2 2 4 ( s 2 )( s 6 s 6 ) G ( s ) 3 3 2 s ( s 1 ) ( s 3 s 2 s 5 )
C ( s ) b s b s ... b s b n m 1 G ( s ) R ( s ) a s a s ... a s a n n 1
对线性定常系统,式中s的系数均为常数,且a1不等于零, 这时系统在MATLAB中可以方便地由分子和分母系数构成的 两个向量唯一地确定出来,这两个向量分别用num和den表示。 num=[b1,b2,…,bm,bm+1] den=[a1,a2,…,an,an+1] 注意:它们都是按s的降幂进行排列的。
函数[z,p,k]=tf2zp(num,den)可以用来求传递函数的零极点和增益。
零极点增益模型:
3 2 s 11 s 30 s G ( s ) 4 3 2 s 9 s 45 s 87 s 50
》num=[1,11,30,0]; 》den=[1,9,45,87,50]; [z,p,k]=tf2zp(num,den) 》 z= p= k=
例exp_1.m
电路图如下,R=1.4欧,L=2亨,C=0.32法,初始状态:电
感电流为零,电容电压为0.5V,t=0时刻接入1V的电压,求 0<t<15s时,i(t),vo(t)的值,并且画出电流与电容电压的关系 曲线。
R t=0 i (t ) ± Vs=1V
L + C vo ( t )
3、传递函数描述模型 (1)连续系统的传递函数模型 连续系统的传递函数如下:
理是分别对原系统传递函数的分子、分母进行分解因式处理,
以获得系统的零点和极点的表示形式。
( s z )( s z )...( s z ) 1 2 m G ( s ) K ( s p )( s p )...( s p ) 1 2 n
K为系统增益,zi为零点,pj为极点 在MATLAB中零极点增益模型用[z,p,K]矢量组表示。即: z=[z1,z2,…,zm] p=[p1,p2,...,pn] K=[k]