电子科大工程控制基础上机.ppt

上传人:牧羊曲112 文档编号:6188067 上传时间:2023-10-03 格式:PPT 页数:41 大小:873.01KB
返回 下载 相关 举报
电子科大工程控制基础上机.ppt_第1页
第1页 / 共41页
电子科大工程控制基础上机.ppt_第2页
第2页 / 共41页
电子科大工程控制基础上机.ppt_第3页
第3页 / 共41页
电子科大工程控制基础上机.ppt_第4页
第4页 / 共41页
电子科大工程控制基础上机.ppt_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《电子科大工程控制基础上机.ppt》由会员分享,可在线阅读,更多相关《电子科大工程控制基础上机.ppt(41页珍藏版)》请在三一办公上搜索。

1、基于Matlab的控制系统的计算机辅助设计、分析及仿真,1、Matlab简介2、控制系统的数学描述与建模3、控制系统分析方法(稳定性、时域和频域 分析)4、Simulink仿真,1 MATLAB 简介,MATLAB 语言的简洁高效性MATLAB 语言的科学运算功能MATLAB 语言的绘图功能MATLAB 庞大的工具箱与模块集MATLAB 强大的动态系统仿真功能,MATLAB 语言是当前国际上控制领域的首选计算机语言,也是很多理工科专业最适合的计算机数学语言。通过学习可更深入理解和掌握数学问题的求解思想,提高求解数学问题的能力,为今后其他专业课程的学习提供帮助。,直接赋值语句 赋值变量赋值表达式

2、 例:a=pi2 a=9.8696 例:表示矩阵 B=1+9i,2+8i,3+7j;4+6j 5+5i,6+4i;7+3i,8+2j 1iB=1.0000+9.0000i 2.0000+8.0000i 3.0000+7.0000i 4.0000+6.0000i 5.0000+5.0000i 6.0000+4.0000i 7.0000+3.0000i 8.0000+2.0000i 0+1.0000i,MATLAB的基本语句,函数调用语句返回变量列表函数名(输入变量列表)例:a,b,c=my_fun(d,e,f,c)冒号表达式 v=s1:s2:s3 该函数生成一个行向量v,其中s1是起始值,s2是

3、步长(若省略步长为1),s3是最大值。例:用不同的步距生成(0,p)间向量。v1=0:0.2:piv1=Columns 1 through 9 0 0.2000 0.4000 0.6000 0.8000 1.0000 1.2000 1.4000 1.6000 Columns 10 through 16 1.8000 2.0000 2.2000 2.4000 2.6000 2.8000 3.0000,循环结构for 结构while 结构,MATLAB 语言流程控制,二维图形绘制,二维图形绘制基本语句,构造向量:,2、控制系统的数学描述与建模,控制系统的数学建模函数命令tf(),用法:sys=tf

4、(num,den)建立控制系统的传递函数模型,或者将零极点模型或者状态空间模型转换为传递函数模型;函数命令zpk(),用法:sys=zpk(z,p,k)建立控制系统的零极点模型;函数命令ss(),用法:sys=ss(A,B,C,D)建立控制系统的状态空间模型;函数命令tf2ss(),tf2zp(),zp2ss(),zp2tf(),ss2tf(),ss2zp()数学模型的转化;基于Simulink的动态结构模型.,传递函数,单输入单输出线性连续系统的传递函数为,其中mn。G(s)的分子多项式的根称为系统的零点,分母多项式的根称为系统的极点。令分母多项式等于零,得系统的特征方程:,D(s)=a0s

5、n+a1sn1+an1s+an=0,因传递函数为多项式之比,所以我们先研究MATLAB是如何处理多项式的。MATLAB中多项式用行向量表示,行向量元素依次为降幂排列的多项式各项的系数,例如多项式P(s)=s3+2s+4,其输入为,P=1 0 2 4,注意尽管s2项系数为0,但输入P(s)时不可缺省0。,MATLAB下多项式乘法处理函数调用格式为,C=conv(A,B),例如给定两个多项式A(s)=s+3和B(s)=10s2+20s+3,求C(s)=A(s)B(s),则应先构造多项式A(s)和B(s),然后再调用conv()函数来求C(s),A=1,3;B=10,20,3;C=conv(A,B)

6、C=10 50 63 9即得出的C(s)多项式为10s3+50s2+63s+9,MATLAB提供的conv()函数的调用允许多级嵌套,例如 G(s)=4(s+2)(s+3)(s+4)可由下列的语句来输入,G=4*conv(1,2,conv(1,3,1,4),对于其它复杂的表达式,如,可由下列语句来输入,num=conv(1,1,conv(1,2,6,1,2,6);den=conv(1,0,0,conv(1,3,1,2,3,4);G=tf(num,den),Transfer function:,控制系统的典型连接串联环节,用法:sys=series(sys1,sys2)or sys=sys1*s

7、ys2*sys3*sysn 并联环节,用法:sys=parallel(sys1,sys2)or sys=sys1+sys2+sys3+sysn 反馈环节,用法:等效传递函数G=feedback(G,H,sign),解 编程如下:num1=0.1,1;den1=0.4,0;sys1=tf(num1,den1);num2=15;den2=0.054,1;sys2=tf(num2,den2);num3=1.5;den3=0.12,1;sys3=tf(num3,den3);sys123=sys1*sys2*sys3,运行结果,所以系统等效传递函数为,Transfer function:2.25 s+2

8、2.5-0.002592 s3+0.0696 s2+0.4 s,已知某系统前向通道三个模块的传递函数分别为。,试求串联连接的等效传递函数,解 编程如下num1=3;den1=1,1;sys1=tf(num1,den1);num2=6,10;den2=1,2,1;sys2=tf(num2,den2);sys=sys1+sys2;num=sys.num1den=sys.den1,运行结果,所以系统的等效传递函数为,num=0 9 22 13den=1 3 3 1,已知两子系统传递函数分别为:,试求两系统并联连接的等效传递函数的num与den向量。,3 控制系统的分析方法,控制系统的稳定性分析,特征

9、方程的根,即闭环极点应具有负实部或分布在左半s平面上。直接判断困难。劳斯(Routh)稳定性判据:由特征方程的系数来判断。根轨迹法频率响应特性,已知系统传递函数为 绘制零极点图和根轨迹图.MATLAB命令为:num=0,0,2,8,12,8,2;den=1,5,10,10,5,1,0;sys=tf(num,den);subplot(1,2,1)pzmap(sys)p,z=pzmap(sys)subplot(1,2,2)rlocus(sys),运行结果:,p=0-1.0010+0.0007i-1.0010-0.0007i-0.9996+0.0012i-0.9996-0.0012i-0.9988

10、z=-1.0002-1.0000+0.0002i-1.0000-0.0002i-0.9998,试绘制 的根轨迹图。,num=1 3;den1=1 6 5;den=conv(den1,den1);rlocus(num,den)title(root locus)k,p=rlocfind(num,den),例:,Select a point in the graphics windowselected_point=-0.0508+4.2363ik=154.9620p=-8.8375-0.0299+4.2267i-0.0299-4.2267i-3.1027,Kg-2,Kg+2,例:,结 论,系统的零极

11、点改变时,根轨迹的形状也发生变化,系统的性能也跟着变化。为了满足性能指标的要求,可以采用零极点对消的办法,或加入新的零极点,来改善系统的性能。,控制系统的时域分析方法,直接在时域内对系统进行分析;从输出量的时域表达式分析系统的稳定性、动态性能和稳态误差;常用命令函数,step(),impulse(),initial(),任意函数作用下系统的响应,用线性仿真函数lsim来实现,其调用格式为 y,x=lsim(num,den,u,t)式中;y(t)为系统输出响应;x(t)为系统状态响应;u为系统输入信号;t为仿真时间。,求 的单位阶跃响应。,解:编制Matlab程序如下:num=25;den=1,

12、4,25;g=tf(num,den);step(g)或num=25;den=1,4,25;step(num,den),求 当 时的单位冲击响应。,解:编制Matlab程序如下:wn=5;zeta=0.6;num=wn.2;den=1,2*zeta*wn,wn.2;impulse(num,den),例:已知一单位负反馈系统,其开环零极点增益模型为试分析在单位阶跃信号作用下系统的稳态误差。,利用Matlab进行稳态误差分析,单位阶跃信号,t=0.1;k=6;z=-0.5;p=-2 1 0;n1,d1=zp2tf(z,p,k);s=tf(n1,d1);sys=feedback(s,1);roots(

13、sys.den1),ans=-0.1084+1.9541i-0.1084-1.9541i-0.7832,系统稳定,(a)系统稳定性判断,y=step(sys);t1=0:t:300;subplot(121),plot(t1,y),grid;subplot(122),ess=1-y;plot(t1,ess),gridess(length(ess),阶跃响应及稳态误差,ans=-8.5931e-014,系统为一型系统,其Kp=,即ess=0。,控制系统的频域分析方法,以系统的频率特性来研究系统的性能;对数频率特性图(Bode图),mag,phase,w=bode(sys)极坐标图(Nyquist图

14、)re,im,w=nyquist(sys,w)求系统增益裕度和相位裕度的函数,margin();Gm,Pm,Wcp,wcg=margin(sys)根轨迹图,p,z=pzmap(sys),p,z=rlocus(sys).,对数频率特性,Matlab提供的相关函数为:函数bode()绘制线性离散系统对数频率特性图。函数bode()的使用格式如下:mag,phase,w=bode(sys)当包含左方变量时,屏幕上不显示伯德图,返回角频率点w处的幅值和相位角(单位为度)。函数Gm,Pm,cg,cp=margin(sys)除绘制线性离散系统对数频率特性图外,还可以求出系统的幅值裕度Gm、相位裕度Pm以及

15、所在点对应的频率值cg,cp,已知系统开环传递函数为,编制Matlab程序如下:num=3*5,2;den=conv(1,2,2,0,1,1);sys=tf(num,den)Bode(sys)grid onGm,Pm,Wcg,Wcp=margin(sys),解:,画出系统的bode图,判断系统的稳定性,并求出系统的幅值稳定裕度、相角稳定裕度及各自对应的频率。,系统的相位裕度 Pm=-23.8341幅值裕度 Gm=0.4789相角穿越频率 Wcg=1.7497幅值穿越频率 Wcp=2.3627系统性能:不稳定。,结论:,极坐标频率特性,Matlab提供的相关函数为:nyquist(num,den

16、),4 Simulink仿真,例 图的Simulink的仿真框图可演示系统对典型信号的时间响应曲线,图中给出阶跃响应曲线。,练习 反馈系统如图(a)所示,系统输入信号为图(b)所示的三角波,求取系统输出响应。,MATLAB实现指令num=10,20;den=1,10,0;num,den=feedback(num,den,-1);v1=0:0.1:2;v2=1.9:-0.1:-2;v3=-1.9:0.1:0;t=0:0.1:8;u=v1,v2,v3;y,x=lsim(num,den,u,t);plot(t,y,t,u);xlabel(Time sec);,练习:已知单位反馈系统的开环零极点传递函数为(1)试绘制根轨迹图,分析闭环系统的稳定性.(2)试确定系统开环增益的取值范围.,练习:已知单位反馈系统的开环零极点传递函数为(1)分析在单位阶跃及斜坡信号作用下系统 的响应.(2)绘制其Bode图,Nyquist图,并求出其频域性能指标.(3)绘制系统的零极点图和根轨迹图.,练习:一阶系统的闭环传递函数可写成如下的标准形式:分别取 试用simulink表示,该二阶系统的阶跃响应的仿真框图.,

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号