第2章 控制系统的数学模型,本章主要从微分方程、传递函数和系统框图去建立自动控制系统的数学模型主要叙述系统微分方程建立的步骤、传递函数的定义与性质、系统结构图的建立与变换、结构图变换的规则及用梅梅森公式简化结构图、典型环节与典型系统的数学模型、系统传递函数的求取以及用MATLAB工具软件建立控制系统的数学模型系统的数学模型是对系统进行定量分析的基础和出发点2.1 控制工程数学基础,从数学的角度看,拉普拉斯(laplace)变换方法是求解常系数线性微分方程的工具,可以分别将微分与积分运算转换成乘法和除法运算,即把积分微分方程转换为代数方程当求解控制系统输入输出微分方程时,求解的过程得到简化可同时获得控制系统的瞬态分量和稳态分量所以拉氏变换是研究控制系统一种有效的数学工具2.1.1拉普拉斯变换的定义,设函数f(t)定义在实轴上,假定它满足下列二个条件: 一、当t<0时,f(t)=0;当t≥0时,f(t)在任何有界区间上至多只有有限个间断点 二、当t→ + 时,f(t)具有有限增长性,即存在常数M>0及≥0,使得, 0 ≤t<∞满足条件的函数f(t)的拉普拉斯变换为(其中 为复数。
F(s)称为f(t)的象函数,记作 ,即F(s)称为 f(t) 的拉氏变换; f(t)为F(s)的原函数,记作 ,即f(t)为F(s)的拉氏反变换2.1.2 典型输入信号的拉普拉斯变换,在控制工程中,常采用的典型信号有:(1)单位阶跃函数 (2)单位斜坡函数(3)单位抛物线函数 (4)单位脉冲函数,常采用的典型信号的函数图像,(a)单位阶跃信号,(c)单位加速度信号,(b)单位斜坡信号,(d)单位脉冲信号,一、阶跃函数的表达式及其拉氏变换,,当 A=1时,叫做单位阶跃函数(Unit Step Function),一、函数表达式,二、拉氏变换,这里应用了积分学中的分部积分法, 即,二、斜坡函数(速度函数),1、斜坡函数表达式:,,x(t)=t 称为单位速度函数(单位斜坡函数),如图2-1-1(b)所示,这种信号表征的是匀速变化信号如果控制系统的实际输入大部分是随时间逐渐增加的信号则可选用此信号作试验信号,2、单位斜坡函数的拉普拉斯变换为,,这里应用了积分学中的分部积分法, 即,三、抛物线函数(或加速度函数),1、加速度函数表达式:,,当时, , 称为单位加速度函数,,,2、,单位斜坡函数的拉普拉斯变换为,,,,四、单位脉冲函数的拉斯变换,1、单位脉冲函数为:,,2、单位脉冲函数的拉普拉斯变换为,,单位脉冲函数可认为是在间断点上单位阶跃函数对时间的导数,即,,常用函数的拉氏变换见表,,,,2.1.3拉普拉斯变换的性质,1、线性性质 2、微分性质 3、积分性质 4、延迟性质 5、位移性质 6、时间尺度性质 7、初值定理 8、终值定理,一、线性性质,拉氏变换也遵从线性函数的齐次性和叠加性。
◇拉氏变换的齐次性是:一个时间函数乘以常数时,其拉氏变换为该时间函数的拉氏变换乘以该常数 ◇拉氏变换的叠加性是: 两个时间函数 与 之和 的拉氏变换等于 、 的拉氏变换 、 之和即,,,,,,、,,,,,例2-1-1 求 及 的拉氏变换,解:根据欧拉公式; 则 ; 又根据拉普拉斯变换的线性性质,有; 所以 同理,,,,,,,,,,,,,例2-1-2 已知 ,求 的拉氏变换解:应用线性性质,则,,,,二、微分性质,若 则 推论: 当 , 则,,,,,,,例2-1-3已知 ,m为整数, 求的拉氏变换解:由于 ,且 ,由拉氏变换微分性质得 又因 故,,,,,,,,三、 积分性质,若 ,则推论:若 ,初始条件为0时,则,,,,,例2-1-4 已知 , 为实数,求 的拉氏变换。
解:根据拉氏变换的积分性质得,,,,,四、 延迟性质,如图2-1-2所示,原函数沿时间轴平移τ,平移后的函数为f (t-τ)该函数满足下述条件 t<0时,f (t)=0 t<τ时, f (t-τ)=0若L[f(t)]= F(s),则,,例2-1-5 求函数 的拉氏变换解:由延迟性质得:,,,五、 位移性质,若 ,则,,,例2-1-6 求,的拉氏变换解:因为,故 :,例2-1-7 求下面各图所示函数的拉氏变换解:图2-1-3可表示成如下时间函数:,,利用延迟性质,求得f (t)的拉氏变换为,图2-1-4三角波可表示为,利用延迟性质,求得f (t)的拉氏变换为,若 ,则,,,,,(6) 时间尺度性质,(7) 初值定理,若L[f(t)]= F(s),且,存在,则,(8) 终值定理,若L[f(t)]= F(s),且,存在,则,2.1.4 拉普拉斯反变换,1、部分分式法,在控制工程中,象函数F(s)常可表达为,=,和,F(s)=,式中a,,b,为实数,n,m。
可把F(s)写成因式相乘式,F(s)=,式中,是实数共轭复数是F(s)的极点,是F(s)的零点根据F(s)的极点形式不同,可分别按下面两种方法写出部分分式展开式,并确定待定系数,求出F(s)的拉式反变换f(t)一、F(s)只含有不同极点(即只有一阶极点)时,F(s)的部分分式展开式为,,,F(s)=,=,+,+,,,式中待定系数 (k=1,2,n)是常数 的值可用(s- )乘式(2-1-11)两边,并令s= 求得,即,,(2-1-11),(2-1-12),,,,,,二、 F(s)只含有m阶极点p时,F(s)的部分分式展开为,式中 分别由下式给出,C,=[,(s-p),],,C,,=,,[,(s-p),],…,C,=,,[,(s-p),],,C,=,,[,(s-p),],因为,L,[,]=,e,所以F(s)只含有m阶极点p时,F(s)的拉氏反变换为,对于简单的求反变换可用手工算法,而对于比较复杂的求反变换可采取计算机解决,后面一节就给大家讲解下面用具体实例讲解部分分式法的手工计算方法例2-1-10 已知,,求,解:因 的一阶极点,可得式中,,,所以,,例2-1-11 已知,,求,解:因,的三个一阶极点,且有一对共轭复极点出现,所以,,,,,所以,例2-1-12 求,的原函数。
解:,,,,,(提示:,所以,,查表可得,),例2-1-13 已知 1)用终值定理,求 时的f(t)的值2)通过取F(s)的拉氏反变换,求 时f(t)的值解:方法1,由终值定理知:,方法2,利用部分分式法将改写成,,则可知,的拉氏反变换为,则,,例2-1-14 已知,1)利用初值定理求,和,的值2)通过取F(s)的拉氏反,变换求,,并求,及,和,解:(1),,因为,两边取极限s→∞,,所以,(2)F(s)的拉氏反变换为,,则,,,,可见,两种方法结果相同例2-1-15 求,的拉氏反变换解:部分分式法,,其中,,所以,因此,的拉氏反变换为,,2.1.5 用MATLAB求拉氏变换与反变换1、用MATLAB计算拉氏变换 例2-1-16求函数f(t)为:(1)1(t);(2)At;(3)t2;(4)Aeαt的Laplace(拉氏)变换F(S)解:在命令窗口输入,>> syms s t A alpha; syms符号函数指令 F=laplace(1,s) F= laplace(A*t) F=laplace(t^2) F=laplace(A*exp(alpha*t)) 执行结果为: F =1/s F =A/s^2 F =2/s^3 F =A/(s-alpha),例2-1-17求函数f(t)为:(1)cos(ωt);(2)eαtsin(ωt);(3)δ(t);(4)A.t2+ B.t3的Laplace(拉氏)变换F(S)。
解:在命令窗口输入 >> syms s t alpha omega A B; F=laplace(cos(omega*t)) F=laplace(exp(alpha*t)*sin(omega*t)) F=laplace('Dirac(t)',t,s) F=laplace(A*t^2+B*t^3) 执行结果为: F =s/(s^2+omega^2) F =omega/((s-alpha)^2+omega^2) F =1 F =2*A/s^3+6*B/s^4 注意:在MATLAB中,单位脉冲函数δ(t)规定写成Dirac(t),而且第一个字母必须为大写;单位阶跃函数写成Heaviside(t);,2、利用留数将象函数表达式展开成部分分式,留数的概念在高等数学中学过,我们这里只讲留数部分分式展开,(1)若阶多项式A(S)不含重根,则以下展开称为部分分式展开,若阶多项式A(S)含m重根,那么相应部分则写为:,式中:P1,P2,…Pn为极点;部分分式的分子R1,R2,…Rn为留数;k(s)为直接项2),,在高等数学中,留数R1,R2,…Rn通常用待定系数法来计算计算留数MATLAB的函数命令,(3),格式:[R P K]=residue(B,A),其中B与A是分子多项式B(S)分母多项式A(S)以降幂排列的多顶式系数项量。
具体应用见下面例子例2-1-18 将象函数表达式,展开成部分分式解:在命令窗口输入 >> B=[1 2];A=[1 4 3];[R P K]=residue(B,A) 执行结果为: R = 0.50000.5000 P = -3-1 K =[] 即,,例2-1-19 将象函数表达式,展开成部分分式解:在命令窗口输入 >> syms s; a=expand(s*(s+1)^2*(s+3)) 执行结果为:a =s^4+5*s^3+7*s^2+3*s >> B=[1 2]; A=[1 5 7 3 0]; [R P K]=residue(B,A) R =0.0833-0.7500-0.50000.6667 P =-3.0000-1.0000-1.00000 K =[] 即,3、用Laplace反变化求原函数,例2-1-20 求象函数F(S)=1与,的原函数f(t)=L-1[F(S)]解:在命令窗口输入>> syms s t;f=ilaplace(1,t) 执行结果为: f =dirac(t);单位脉冲函数 (2)解:在命令窗口输入 syms s t a f=ilaplace(1/(s*(s+a))),。