1、8.1 控制系统的数学模型控制系统的数学模型8.1.1 创建系统的模型并相互转换创建系统的模型并相互转换1.传递函数模型传递函数模型sys=tf(num,den,Ts)%sys=tf(num,den,Ts)%由分子分母得出传递函数由分子分母得出传递函数由分子分母得出传递函数由分子分母得出传递函数sys=tf(num,den,Ts,Property1,v1,Porperty2,v2,)sys=tf(num,den,Ts,Property1,v1,Porperty2,v2,)%创建传递函数并设置属性创建传递函数并设置属性创建传递函数并设置属性创建传递函数并设置属性a)numa)num和和和和den
2、den分别是分子和分母系数,对于分别是分子和分母系数,对于分别是分子和分母系数,对于分别是分子和分母系数,对于SISOSISO系统都是行系统都是行系统都是行系统都是行向量,对于向量,对于向量,对于向量,对于MIMOMIMO系统则是矩阵。系统则是矩阵。系统则是矩阵。系统则是矩阵。2 2)TsTs是采样周期,为标量。连续系统是采样周期,为标量。连续系统是采样周期,为标量。连续系统是采样周期,为标量。连续系统TsTs省略;离散系统,省略;离散系统,省略;离散系统,省略;离散系统,Ts=-1Ts=-1时采样周期不确定。时采样周期不确定。时采样周期不确定。时采样周期不确定。3 3)Property1Pr
3、operty1是传递函数属性,是传递函数属性,是传递函数属性,是传递函数属性,v1v1是属性值。是属性值。是属性值。是属性值。4 4)syssys是系统模型,是是系统模型,是是系统模型,是是系统模型,是TF objectTF object类型。类型。类型。类型。2.零极点增益模型零极点增益模型G=zpk(z,p,k,Ts)%由零点、极点和增益创建由零点、极点和增益创建模型模型G=zpk(z,p,k,Property1,v1,Porperty2,v2,)%创建模型并设置属性创建模型并设置属性z为零点列向量,为零点列向量,p为极点列向量,为极点列向量,k为增益,为增益,TS为采样周期,省略时为连续
4、系统。为采样周期,省略时为连续系统。3.状态方程模型状态方程模型G=ss(a,b,c,d,Ts)%由由a、b、c、d参数创参数创建模型建模型G=ss(a,b,c,d,Ts,Property1,v1,Porperty2,v2,)%创建模型并设置属性创建模型并设置属性对于含有对于含有N个状态,个状态,Y个输出和个输出和U个输入的个输入的模型,模型,a是是NXN的矩阵,的矩阵,b是是NXU的矩阵,的矩阵,c是是YXN的矩阵,的矩阵,d是是YXU的矩阵。的矩阵。4.4.模型的转换模型的转换模型的转换模型的转换5.5.连续系统与离散系统模型的转换连续系统与离散系统模型的转换连续系统与离散系统模型的转换连
5、续系统与离散系统模型的转换MATLABMATLAB控制工具箱提供了控制工具箱提供了控制工具箱提供了控制工具箱提供了c2dc2d、d2cd2c和和和和d2dd2d函函函函数实现连续系统和离散系统的相互转换。数实现连续系统和离散系统的相互转换。数实现连续系统和离散系统的相互转换。数实现连续系统和离散系统的相互转换。8.1.2系统的模型参数系统的模型参数2.2.获取模型的参数获取模型的参数获取模型的参数获取模型的参数(1 1)获取模型参数的函数)获取模型参数的函数)获取模型参数的函数)获取模型参数的函数tfdatatfdata、zpkdatazpkdata和和和和ssdatassdata、dssda
6、tadssdata函数分别用来获取函数分别用来获取函数分别用来获取函数分别用来获取传递函数模型(传递函数模型(传递函数模型(传递函数模型(num,den,Tsnum,den,Ts)、零极点增益模型()、零极点增益模型()、零极点增益模型()、零极点增益模型(z,p,kz,p,k)和状态方程模型的参数(和状态方程模型的参数(和状态方程模型的参数(和状态方程模型的参数(a,b,c,d,Tsa,b,c,d,Ts),这些函数名都是在),这些函数名都是在),这些函数名都是在),这些函数名都是在创建模型的函数名后面加创建模型的函数名后面加创建模型的函数名后面加创建模型的函数名后面加“data”data”。
7、(2 2)获取模型尺寸的函数)获取模型尺寸的函数)获取模型尺寸的函数)获取模型尺寸的函数n=ndims(sys)n=ndims(sys)%获取模型的维数获取模型的维数获取模型的维数获取模型的维数d=size(sys,n)d=size(sys,n)%获取模型的参数获取模型的参数获取模型的参数获取模型的参数d=size(sys,order)d=size(sys,order)%获取模型的阶数获取模型的阶数获取模型的阶数获取模型的阶数n n省略时,省略时,省略时,省略时,d d为模型的输入输出参数为模型的输入输出参数为模型的输入输出参数为模型的输入输出参数Y,U;n=1Y,U;n=1时,时,时,时,d
8、 d为模为模为模为模型输出数;型输出数;型输出数;型输出数;n=2n=2时时时时,d,d为模型输入数;为模型输入数;为模型输入数;为模型输入数;n=2+kn=2+k时,时,时,时,d d为为为为LTILTI阵列阵列阵列阵列的第的第的第的第k k维阵列的长度。维阵列的长度。维阵列的长度。维阵列的长度。8.1.3系统模型的连接和简化系统模型的连接和简化1.串联环节串联环节G=series(G1,G2,outputs1,inputs1)%计算串联模型计算串联模型G1G2为为串联串联的模块,必须都是连续系统或的模块,必须都是连续系统或采样周期相同的离散系统;采样周期相同的离散系统;outputs1,i
9、nputs1分别是分别是串联串联模块模块G1的输出的输出和和G2的输入,当的输入,当G1的输出端口数和的输出端口数和G2的输的输入端口数相同时可同时省略,当省略时,入端口数相同时可同时省略,当省略时,G1和和G2的端口正好对应连接。的端口正好对应连接。串联环节的运算也可以直接使用串联环节的运算也可以直接使用G=G1*G2u(t)G1(s)G2(s)y(t)8.1.3系统模型的连接和简化系统模型的连接和简化2.并联环节并联环节G=parallel(G1,G2,in1,in2,out1,out2)%计算并联模型计算并联模型G1G2为为并联并联的模块,必须都是连续系统或的模块,必须都是连续系统或采样
10、周期相同的离散系统;采样周期相同的离散系统;in1,in2分别是分别是并并联联模块模块G1和和G2的输入端口,的输入端口,out1,out2分别分别是是并联并联模块模块G1和和G2的输出端口。都可省略,的输出端口。都可省略,当省略时,当省略时,G1和和G2的端口数相同正好对应的端口数相同正好对应连接。连接。u(t)y(t)u(t)G1(s)G2(s)3.反馈环节反馈环节G=feedback(G1,G2,feedin,feedout,sign)%计算反馈模型计算反馈模型说明:说明:G1和和G2模型必须都是连续系统或采模型必须都是连续系统或采样周期相同的离散系统;样周期相同的离散系统;sign表示
11、反馈符号,表示反馈符号,当当sign省略或省略或=-1时为负反馈;时为负反馈;feedin和和feedout分别是分别是G2的输入端口和的输入端口和G1的输出端的输出端口,可省略,当省略时口,可省略,当省略时G1与与G2端口正好对应端口正好对应连接。连接。y(t)u(t)G1(s)G2(s)4.4.复杂模型的连接复杂模型的连接复杂模型的连接复杂模型的连接(1 1)对框图中的每个框进行编号并建立它们的对象模型)对框图中的每个框进行编号并建立它们的对象模型)对框图中的每个框进行编号并建立它们的对象模型)对框图中的每个框进行编号并建立它们的对象模型(2 2)建立无连接的状态空间模型,使用)建立无连接
12、的状态空间模型,使用)建立无连接的状态空间模型,使用)建立无连接的状态空间模型,使用appendappend函数实现,函数实现,函数实现,函数实现,appendappend的命令格式如下:的命令格式如下:的命令格式如下:的命令格式如下:G=append(G1,G2,G3,)G=append(G1,G2,G3,)(3 3)写出系统的联接矩阵)写出系统的联接矩阵)写出系统的联接矩阵)写出系统的联接矩阵QQQQ是联接矩阵,第一列是各框图的编号,其后各列是与该框图连接的是联接矩阵,第一列是各框图的编号,其后各列是与该框图连接的是联接矩阵,第一列是各框图的编号,其后各列是与该框图连接的是联接矩阵,第一列
13、是各框图的编号,其后各列是与该框图连接的输入框图编号,如果是负连接则加负号;输入框图编号,如果是负连接则加负号;输入框图编号,如果是负连接则加负号;输入框图编号,如果是负连接则加负号;(4 4)列出系统总的输入和输出端的编号,使用)列出系统总的输入和输出端的编号,使用)列出系统总的输入和输出端的编号,使用)列出系统总的输入和输出端的编号,使用inputsinputs列出输入端编列出输入端编列出输入端编列出输入端编号,号,号,号,outputsoutputs列出输出端的编号;列出输出端的编号;列出输出端的编号;列出输出端的编号;(5 5)使用)使用)使用)使用connectconnect函数生成
14、组合后系统的状态空间模型,函数生成组合后系统的状态空间模型,函数生成组合后系统的状态空间模型,函数生成组合后系统的状态空间模型,connectconnect函数的命令格式为:函数的命令格式为:函数的命令格式为:函数的命令格式为:Sys=connect(G,Q,inputs,outputs)Sys=connect(G,Q,inputs,outputs)例例8-7 根据图根据图8-6所示的模型结构框图计算所示的模型结构框图计算模型的总传递函数,其中模型的总传递函数,其中R1=1,R2=2,C1=3,C2=4。练习练习 g1=1;g2=tf(1,3,0);g3=0.5;g4=tf(1,4,0);g5
15、=1;g6=1;g7=1;g1=1;g2=tf(1,3,0);g3=0.5;g4=tf(1,4,0);g5=1;g6=1;g7=1;n=append(g1,g2,g3,g4,g5,g6,g7);n=append(g1,g2,g3,g4,g5,g6,g7);q=1,-6,0;2,-7,1;3,-5,2;4,3,0;5,4,0;6,2,0;7,3,0;q=1,-6,0;2,-7,1;3,-5,2;4,3,0;5,4,0;6,2,0;7,3,0;sys=connect(n,q,1,4)sys=connect(n,q,1,4)Transfer function:Transfer function:0.
16、04167 0.04167-s2+0.625 s+0.04167s2+0.625 s+0.041678.1.4 将将Simulink模型结构图转化为模型结构图转化为系统模型系统模型MATLABMATLAB提供了提供了提供了提供了linmodlinmod和和和和linmod2linmod2函数命令将函数命令将函数命令将函数命令将SimulinkSimulink模型转换为数学模模型转换为数学模模型转换为数学模模型转换为数学模型。型。型。型。例例例例8-88-8 根据图根据图根据图根据图8-68-6的模型结构框图在的模型结构框图在的模型结构框图在的模型结构框图在SimulinkSimulink环境中
17、创建系统模型,使用函环境中创建系统模型,使用函环境中创建系统模型,使用函环境中创建系统模型,使用函数命令转化为传递函数。(数命令转化为传递函数。(数命令转化为传递函数。(数命令转化为传递函数。(r1,r2,c1,c2r1,r2,c1,c2为变量)为变量)为变量)为变量)r1=1;r2=2;c1=3;c2=4;r1=1;r2=2;c1=3;c2=4;A B C D=linmod(ex8_8);A B C D=linmod(ex8_8);num,den=ss2ts(A B C D);num,den=ss2ts(A B C D);sys=tf(num,den)sys=tf(num,den)模型做出来
18、模型做出来模型做出来模型做出来8.2 时域分析的时域分析的MATLAB实现实现8.2.1线性系统的时域分析线性系统的时域分析1.1.阶跃响应阶跃响应阶跃响应阶跃响应step(G,T)step(G,T)%绘制系统绘制系统绘制系统绘制系统GG的阶跃响应曲线的阶跃响应曲线的阶跃响应曲线的阶跃响应曲线y,t,x=step(G,y,t,x=step(G,T)%T)%得出系统得出系统得出系统得出系统GG的阶跃响应数据的阶跃响应数据的阶跃响应数据的阶跃响应数据GG为系统模型(为系统模型(为系统模型(为系统模型(tf,ss,zpktf,ss,zpk均可),若绘制多个系均可),若绘制多个系均可),若绘制多个系均
19、可),若绘制多个系统,用逗号隔开;统,用逗号隔开;统,用逗号隔开;统,用逗号隔开;T T表示时间范围,可以是向量,表示时间范围,可以是向量,表示时间范围,可以是向量,表示时间范围,可以是向量,或标量(表示或标量(表示或标量(表示或标量(表示0T0T),若省略则为自动时间范围。),若省略则为自动时间范围。),若省略则为自动时间范围。),若省略则为自动时间范围。y y为时间响应,为时间响应,为时间响应,为时间响应,t t为时间向量为时间向量为时间向量为时间向量,x,x为状态变量响应,为状态变量响应,为状态变量响应,为状态变量响应,t t和和和和x x可省略。可省略。可省略。可省略。2.2.脉冲响应
20、脉冲响应脉冲响应脉冲响应系统的脉冲响应使用系统的脉冲响应使用系统的脉冲响应使用系统的脉冲响应使用impulseimpulse函数命令绘制,命函数命令绘制,命函数命令绘制,命函数命令绘制,命令格式与令格式与令格式与令格式与stepstep函数相同。函数相同。函数相同。函数相同。3.3.斜坡响应和加速度响应斜坡响应和加速度响应斜坡响应和加速度响应斜坡响应和加速度响应斜坡响应斜坡响应斜坡响应斜坡响应=阶跃响应阶跃响应阶跃响应阶跃响应*s s加速度响应加速度响应加速度响应加速度响应=阶跃响应阶跃响应阶跃响应阶跃响应*s2s2在输入所求传递函数时,将其分母乘以在输入所求传递函数时,将其分母乘以在输入所求
21、传递函数时,将其分母乘以在输入所求传递函数时,将其分母乘以s s(或(或(或(或s2 s2),再求此时的阶跃),再求此时的阶跃),再求此时的阶跃),再求此时的阶跃响应,即为所求原输入传递函数的对应响应。响应,即为所求原输入传递函数的对应响应。响应,即为所求原输入传递函数的对应响应。响应,即为所求原输入传递函数的对应响应。4.4.任意输入响应任意输入响应任意输入响应任意输入响应lsim(G,U,T)lsim(G,U,T)%绘制系统绘制系统绘制系统绘制系统GG的任意响应曲线的任意响应曲线的任意响应曲线的任意响应曲线y,t,x=lsim(G,U,T)%y,t,x=lsim(G,U,T)%得出系统得出
22、系统得出系统得出系统GG的任意响应数据的任意响应数据的任意响应数据的任意响应数据U U为输入序列,每一列对应一个输入。为输入序列,每一列对应一个输入。为输入序列,每一列对应一个输入。为输入序列,每一列对应一个输入。T,t,xT,t,x可省略。可省略。可省略。可省略。5.5.零输入响应零输入响应零输入响应零输入响应initial(G,x0,T)%initial(G,x0,T)%绘制系统绘制系统绘制系统绘制系统GG的零输入响应曲线的零输入响应曲线的零输入响应曲线的零输入响应曲线y,t,x=initial(G,x0,T)%y,t,x=initial(G,x0,T)%得出系统得出系统得出系统得出系统G
23、G的零输入响应的数据的零输入响应的数据的零输入响应的数据的零输入响应的数据GG必须是状态空间模型;必须是状态空间模型;必须是状态空间模型;必须是状态空间模型;x0 x0是初始条件,是初始条件,是初始条件,是初始条件,x0 x0与状态的个数相同与状态的个数相同与状态的个数相同与状态的个数相同6.6.离散系统响应离散系统响应离散系统响应离散系统响应和上面几种连续系统的函数命令相对应,函数名前加和上面几种连续系统的函数命令相对应,函数名前加和上面几种连续系统的函数命令相对应,函数名前加和上面几种连续系统的函数命令相对应,函数名前加“d”d”。例例例例8-128-12 使用使用使用使用lsimlsim
24、函数绘制正弦响应曲线,系统函数绘制正弦响应曲线,系统函数绘制正弦响应曲线,系统函数绘制正弦响应曲线,系统的传递函数为,绘制的曲线如图的传递函数为,绘制的曲线如图的传递函数为,绘制的曲线如图的传递函数为,绘制的曲线如图8-118-11所示。所示。所示。所示。t=0:0.1:10;t=0:0.1:10;u=sin(t);u=sin(t);G=tf(1,2 1)G=tf(1,2 1)Transfer function:Transfer function:1 1-2 s+12 s+1 lsim(G,u,t)lsim(G,u,t)%正弦响应正弦响应正弦响应正弦响应8.2.2 线性系统的结构参数与时域性能
25、指标线性系统的结构参数与时域性能指标1.1.线性系统的结构参数线性系统的结构参数线性系统的结构参数线性系统的结构参数(1 1)polepole和和和和zerozerop=pole(G)p=pole(G)%获得系统获得系统获得系统获得系统GG的极点的极点的极点的极点z=zero(G)z=zero(G)%得出系统得出系统得出系统得出系统GG的零点的零点的零点的零点GG只能是只能是只能是只能是SISOSISO系统,极点为重根,只计算一次。系统,极点为重根,只计算一次。系统,极点为重根,只计算一次。系统,极点为重根,只计算一次。(2 2)pzmappzmappzmap(G)pzmap(G)%绘制系统的
26、零极点分布图绘制系统的零极点分布图绘制系统的零极点分布图绘制系统的零极点分布图p,z=pzmap(G)p,z=pzmap(G)%获得系统的零极点值获得系统的零极点值获得系统的零极点值获得系统的零极点值零极点分布图中零极点分布图中零极点分布图中零极点分布图中,”X”,”X”表示极点,表示极点,表示极点,表示极点,“o”o”表示零点。表示零点。表示零点。表示零点。(3 3)dampdampwn,zeta,p=damp(G)wn,zeta,p=damp(G)%获得获得获得获得GG的阻尼系数、固有频率和极点的阻尼系数、固有频率和极点的阻尼系数、固有频率和极点的阻尼系数、固有频率和极点(4 4)ord2
27、ord2A,B,C,D=ord2(wn,zeta)%A,B,C,D=ord2(wn,zeta)%由阻尼系数、固有频率获得状态空间模型由阻尼系数、固有频率获得状态空间模型由阻尼系数、固有频率获得状态空间模型由阻尼系数、固有频率获得状态空间模型num,den=ord2(wn,zeta)%num,den=ord2(wn,zeta)%由阻尼系数、固有频率获得传递函数由阻尼系数、固有频率获得传递函数由阻尼系数、固有频率获得传递函数由阻尼系数、固有频率获得传递函数(5 5)sgridsgridsgrid(zeta,wn)sgrid(zeta,wn)%绘制绘制绘制绘制s s平面网格并指定平面网格并指定平面网
28、格并指定平面网格并指定zetazeta和和和和wnwn绘制的网格阻尼系数范围绘制的网格阻尼系数范围绘制的网格阻尼系数范围绘制的网格阻尼系数范围0101,步长,步长,步长,步长0.10.1,固有频率为,固有频率为,固有频率为,固有频率为010rad/s,010rad/s,步长为步长为步长为步长为1rad/s1rad/s,z z和和和和wnwn可省略。可省略。可省略。可省略。2.时域分析的性能指标时域分析的性能指标在自动控制原理中,时域分析常用的系统性在自动控制原理中,时域分析常用的系统性能指标有超调量能指标有超调量p、上升时间、上升时间tr、峰值时间、峰值时间tp和过渡时间和过渡时间ts,通过性
29、能指标来分析系统暂态,通过性能指标来分析系统暂态性能的稳定性。性能的稳定性。例:例:detap=exp(-pi*zeta/sqrt(1-zeta2)*100%计算超调量计算超调量 tr=(pi-acos(zeta)/(wn*sqrt(1-zeta2)%计算上升时间计算上升时间8.3 频域分析的频域分析的MATLAB实现实现8.3.1 线性系统的频域分析线性系统的频域分析1.1.线性系统的幅频特性和相频特性线性系统的幅频特性和相频特性线性系统的幅频特性和相频特性线性系统的幅频特性和相频特性Gw=freqresp(G,w)Gw=freqresp(G,w)%计算计算计算计算ww处系统处系统处系统处系
30、统GG的频率特性的频率特性的频率特性的频率特性ww是标量,则是标量,则是标量,则是标量,则GwGw是由实部和虚部组成的频率特性值;是由实部和虚部组成的频率特性值;是由实部和虚部组成的频率特性值;是由实部和虚部组成的频率特性值;ww是是是是向量,向量,向量,向量,GwGw是三维数组。最后一维是频率。是三维数组。最后一维是频率。是三维数组。最后一维是频率。是三维数组。最后一维是频率。2.nyquist2.nyquist曲线曲线曲线曲线nyquist(G,w)%nyquist(G,w)%绘制系统绘制系统绘制系统绘制系统GG的的的的nyquistnyquist曲线曲线曲线曲线nyquist(G1,ny
31、quist(G1,线型线型线型线型,G2,G2,线型线型线型线型,.w)%.w)%绘制多个系统绘制多个系统绘制多个系统绘制多个系统的的的的nyquistnyquist曲线曲线曲线曲线Re,Im,w=nyquist(G)%Re,Im,w=nyquist(G)%得出实部虚部和频率得出实部虚部和频率得出实部虚部和频率得出实部虚部和频率Re,Im=nyquist(GRe,Im=nyquist(G,w)%w)%得出得出得出得出ww处的实部虚部处的实部虚部处的实部虚部处的实部虚部3.bode3.bode图图图图bode(G,w)bode(G,w)%绘制系统绘制系统绘制系统绘制系统GG的的的的bodebod
32、e图图图图bode(G1,bode(G1,线型线型线型线型,G2,G2,线型线型线型线型,.w)%.w)%绘制多个绘制多个绘制多个绘制多个系统的系统的系统的系统的bodebode图图图图mag,pha,w=bode(G)%mag,pha,w=bode(G)%得出幅值相位角和频得出幅值相位角和频得出幅值相位角和频得出幅值相位角和频率率率率mag,pha=bode(G,w)%mag,pha=bode(G,w)%得出得出得出得出ww处的幅值和相位处的幅值和相位处的幅值和相位处的幅值和相位角角角角mag,pha=bode(G,w)%mag,pha=bode(G,w)%得出得出得出得出ww处的幅值和相角
33、处的幅值和相角处的幅值和相角处的幅值和相角4.nichols4.nichols图图图图nicholsnichols(GG)%将对数幅频和对数相频特性绘在将对数幅频和对数相频特性绘在将对数幅频和对数相频特性绘在将对数幅频和对数相频特性绘在一个图中。一个图中。一个图中。一个图中。例例例例8-198-19 根据传递函数绘制系统的根据传递函数绘制系统的根据传递函数绘制系统的根据传递函数绘制系统的bodebode图和对数幅频图和对数幅频图和对数幅频图和对数幅频特性曲线,已知系统的传递函数分别为特性曲线,已知系统的传递函数分别为特性曲线,已知系统的传递函数分别为特性曲线,已知系统的传递函数分别为 。G=t
34、f(10,conv(1 1,5 1 0);G=tf(10,conv(1 1,5 1 0);subplot(1,2,1);subplot(1,2,1);bode(G)bode(G)%绘制系统的绘制系统的绘制系统的绘制系统的bodebode图图图图 subplot(1,2,2);subplot(1,2,2);bodemag(G)bodemag(G)%只绘制对数幅频特性曲线只绘制对数幅频特性曲线只绘制对数幅频特性曲线只绘制对数幅频特性曲线8.3.2 频域分析性能指标频域分析性能指标1.1.开环频率特性的相角域度和幅值域度开环频率特性的相角域度和幅值域度开环频率特性的相角域度和幅值域度开环频率特性的相
35、角域度和幅值域度margin(G)%margin(G)%绘制绘制绘制绘制bodebode图并标出幅值裕度和相角裕图并标出幅值裕度和相角裕图并标出幅值裕度和相角裕图并标出幅值裕度和相角裕度度度度Gm,Pm,Wcg,Wcp=margin(G)%Gm,Pm,Wcg,Wcp=margin(G)%得出幅值裕度和得出幅值裕度和得出幅值裕度和得出幅值裕度和相角裕度和相应的频率相角裕度和相应的频率相角裕度和相应的频率相角裕度和相应的频率例:例:例:例:Gm,Pm,Wcg,Wcp=margin(G)Gm,Pm,Wcg,Wcp=margin(G)Gm=Gm=0.1200 0.1200Pm=Pm=-38.7743
36、-38.7743Wcg=Wcg=0.4472 0.4472Wcp=Wcp=1.1395 1.13958.4 根轨迹分析的根轨迹分析的MATLAB实现实现8.4.1 线性系统的根轨迹分析线性系统的根轨迹分析1.1.绘制根轨迹绘制根轨迹绘制根轨迹绘制根轨迹rlocus(G)rlocus(G)%绘制根轨迹绘制根轨迹绘制根轨迹绘制根轨迹r,k=rlocus(G)%r,k=rlocus(G)%得出系统得出系统得出系统得出系统GG的闭环极点的闭环极点的闭环极点的闭环极点r r和增益和增益和增益和增益k kr=rlocus(G,k)%r=rlocus(G,k)%根据根据根据根据k k得出系统得出系统得出系统
37、得出系统GG的闭环极点的闭环极点的闭环极点的闭环极点r r2.2.得出给定根的根轨迹增益得出给定根的根轨迹增益得出给定根的根轨迹增益得出给定根的根轨迹增益rlocfindrlocfind函数可以获得根轨迹上给定根的增益和闭函数可以获得根轨迹上给定根的增益和闭函数可以获得根轨迹上给定根的增益和闭函数可以获得根轨迹上给定根的增益和闭环根。环根。环根。环根。k,p=rlocfind(G)%k,p=rlocfind(G)%得出根轨迹上某点的闭环极点得出根轨迹上某点的闭环极点得出根轨迹上某点的闭环极点得出根轨迹上某点的闭环极点和和和和k k函数运行后根轨迹图形窗口中显示十字光标,当用函数运行后根轨迹图形
38、窗口中显示十字光标,当用函数运行后根轨迹图形窗口中显示十字光标,当用函数运行后根轨迹图形窗口中显示十字光标,当用户选择某点并单击,就可获得相应的增益和闭环根。户选择某点并单击,就可获得相应的增益和闭环根。户选择某点并单击,就可获得相应的增益和闭环根。户选择某点并单击,就可获得相应的增益和闭环根。8.4.2 根轨迹设计工具根轨迹设计工具MATLABMATLAB控制工具箱还提供了根轨迹设计器,根控制工具箱还提供了根轨迹设计器,根控制工具箱还提供了根轨迹设计器,根控制工具箱还提供了根轨迹设计器,根轨迹设计器是一个分析系统根轨迹的图形界面。轨迹设计器是一个分析系统根轨迹的图形界面。轨迹设计器是一个分析
39、系统根轨迹的图形界面。轨迹设计器是一个分析系统根轨迹的图形界面。rltool(G)rltool(G)%打开系统打开系统打开系统打开系统GG的根轨迹设计器的根轨迹设计器的根轨迹设计器的根轨迹设计器8.5 稳定性分析的稳定性分析的MATLAB实现实现8.5.1使用特征根判定系统的稳定性使用特征根判定系统的稳定性可以通过可以通过roots函数计算闭环传递函数分母函数计算闭环传递函数分母的根,也可以使用的根,也可以使用pzmap显示系统的闭环零显示系统的闭环零极点分布图或获取系统的闭环零极点,查看极点分布图或获取系统的闭环零极点,查看是否在是否在s的左半平面,从而判断系统的稳定性。的左半平面,从而判断
40、系统的稳定性。8.5.2 用频率特性法判定系统稳定性用频率特性法判定系统稳定性1.使用使用bode图判定系统稳定性图判定系统稳定性在在在在bodebode图上判定系统稳定性可以针对开环图上判定系统稳定性可以针对开环图上判定系统稳定性可以针对开环图上判定系统稳定性可以针对开环SISOSISO的的的的连续或离散系统进行,稳定判据是在连续或离散系统进行,稳定判据是在连续或离散系统进行,稳定判据是在连续或离散系统进行,稳定判据是在bodebode图上查看图上查看图上查看图上查看在在在在Lg()0Lg()0的范围内相频特性没有穿越的范围内相频特性没有穿越的范围内相频特性没有穿越的范围内相频特性没有穿越-
41、180-180度线,即度线,即度线,即度线,即00时系统稳定。时系统稳定。时系统稳定。时系统稳定。例:例:例:例:Gm,Pm,Wcg,Wcp=margin(G)Gm,Pm,Wcg,Wcp=margin(G)Gm=Gm=Inf InfPm=Pm=101.4434 101.4434Wcg=Wcg=Inf InfWcp=Wcp=0.0102 0.01028.5.3 用根轨迹法判定系统稳定性用根轨迹法判定系统稳定性根轨迹是开环系统中某个参数从根轨迹是开环系统中某个参数从0变化变化时,闭环根的移动轨迹,根轨迹在时,闭环根的移动轨迹,根轨迹在s的左半平的左半平面时系统稳定。判定稳定的方法是先用面时系统稳定
42、。判定稳定的方法是先用rlocus函数绘制系统的闭环根轨迹,然后使函数绘制系统的闭环根轨迹,然后使用用rlocfind函数找出临界稳定点时的对应参函数找出临界稳定点时的对应参数值。数值。8.6 稳态误差分析的稳态误差分析的MATLAB实现实现稳态误差是系统稳定误差的终值,稳态误稳态误差是系统稳定误差的终值,稳态误差可表示为,在自动控制原理中使用位置误差可表示为,在自动控制原理中使用位置误差系数、速度误差系数和加速度误差系数来差系数、速度误差系数和加速度误差系数来计算稳态误差,计算稳态误差,。MATLAB没有提供专门的计算函数,可以没有提供专门的计算函数,可以使用求极限的使用求极限的limit函
43、数来计算稳态误差。函数来计算稳态误差。练习练习根据系统框图得出系统总传递函数,系统框根据系统框图得出系统总传递函数,系统框图如图图如图8-35所示,其中所示,其中 ,。,。G1=tf(1,1 2 5);G2=tf(1,1 1);G3=tf(3,1 5);G4=tf(1,1 1 1);G34=parallel(G3,G4)%计算并联环节G134=series(G1,G34)%计算串联环节G=feedback(G2,G134)%计算反馈环节练习练习使用以下命令创建开环传递函数:使用以下命令创建开环传递函数:syms s G G=10/(s*(s+1)则计算其位置误差系数的语句为则计算其位置误差系数的语句为_A.kp=limit(G,s,0)B.kp=limit(G*s,s,0)C.kp=limit(G,s,0,left)D.kp=limit(G,s,0,right)D