《自动控制原理MATLAB课程设计滞后超前校正》由会员分享,可在线阅读,更多相关《自动控制原理MATLAB课程设计滞后超前校正(17页珍藏版)》请在金锄头文库上搜索。
1、滞后-超前校正课程设计一、设计目的:1. 了解控制系统设计的一般方法、步骤。2. 掌握对系统进行稳定性的分析、稳态误差分析以及动态特性分析的方法。3. 掌握利用MATLAB对控制理论内容进行分析和研究的技能。4. 提高分析问题解决问题的能力。二、设计内容与要求:设计内容:1. 阅读有关资料。2. 对系统进行稳定性分析、稳态误差分析以及动态特性分析。3. 绘制根轨迹图、Bode图、Nyquist图。4. 设计校正系统,满足工作要求。设计条件:、被控制对象的传递函数是 ()、参数,和,因小组而异。设计要求:1. 能用MATLAB解复杂的自动控制理论题目。2. 能用MATLAB设计控制系统以满足具体
2、的性能指标。3. 能灵活应用MATLAB的CONTROL SYSTEM工具箱和SIMULINK仿真软件,分析系统的性能。三、设计步骤:、自学软件的基本知识,包括的基本操作命令。控制系统工具箱的用法等,并上机实验。、基于用频率法对系统进行串联校正设计,使其满足给定的领域性能指标。要求程序执行的结果中有校正装置传递函数和校正后系统开环传递函数,校正装置的参数,等的值。已知开环传递函数为G(S)= ,使用频率法设计串联滞后超前校正装置,使系统的相角裕度大于等于40,静态速度误差系数等于20。校正前根据上式可化简G(S)= ,所以公式G(S)= ,所以=1,则= 6.1310,相角裕度为9.3528。
3、校正后串联校正滞后超前校正装置, 由,取,又由 , ,;所以校正后的函数为 、利用函数求出校正前与校正后系统的特征根,并判断其系统是否稳定,为什么?校正前 % MATLAB PROGRAM j005.m % num=20; den= conv(1 0,conv(0.5 1,0.025 1); g=tf(num,den); sys=feedback(g,1); pzmap(g);den= conv(1 0,conv(0.5 1,0.025 1); t=tf(num,den); pzmap(t); p,z=pzmap(g); den=sys.den1; r=roots(den); disp(r)
4、-41.0006 -0.4997 + 6.2269i -0.4997 - 6.2269i系统没有零极点在右边,所以系统开环稳定。校正后 % MATLAB PROGRAM j005.m%num=conv(0.833 1,6.6 20); d3=conv(0.5 1,conv(0.025 1,1 0);d2=conv(0.125 1,3.33 1);den=conv(0 d3,0 d2); g=tf(num,den); sys=feedback(g,1); pzmap(g);conv(0.5 1,conv(0.025 1,1 0);d2=conv(0.125 1,4 1);den=conv(0 d
5、3,0 d2); t=tf(num,den); pzmap(t); p,z=pzmap(g); den=sys.den1; r=roots(den); disp(r)-40.7534 -4.8304 -1.6921 + 3.4339i -1.6921 - 3.4339i -1.3324 极点和特征根都在左半平面,故系统稳定、利用作出系统校正前与校正后的单位脉冲响应曲线,单位阶跃响应曲线,单位斜坡响应曲线,分析这三种曲线的关系?求出系统校正前与校正后的动态性能指标,ess,并分析其有何变化?脉冲响应校正前 % MATLAB PROGRAM j005.m % k=20;n1=1;d1=conv(1
6、 0,conv(0.5 1,0.025 1); s1=tf(k*n1,d1);sys=feedback(s1,1);impulse(sys)校正后 % MATLAB PROGRAM j005.m % k=conv(0.833 1,0.4 1);n1=20;d3=conv(0.5 1,conv(0.025 1,1 0);d2=conv(3.33 1,0.125 1);d1=conv(0 d3,0 d2);s1=tf(k*n1,d1);sys=feedback(s1,1);impulse(sys)阶跃响应校正前 % MATLAB PROGRAM j005.m % k=20;n1=1;d1=conv
7、(1 0,conv(0.5 1,0.025 1); s1=tf(k*n1,d1);figure(2);sys=feedback(s1,1);step(sys)由图可知:=76%,=0.272-0.093=0.179,=0.506,=6.09,ess=1-1=0校正后 % MATLAB PROGRAM j005.m%k=conv(0.833 1,0.4 1);n1=20;d3=conv(0.025 1,conv(0.125 1,1 0);d2=conv(0.5 1,3.33 1);d1=conv(0 d3,0 d2);s1=tf(k*n1,d1); figure(2);sys=feedback(
8、s1,1);step(sys)由图可知:=36%,=0.384-0.109=0.275,=0.697,=1.27,ess=1-1.01=-0.01斜坡响应校正前 % MATLAB PROGRAM j005.m % k=20;n1=1;d1=conv(1 0 0,conv(0.5 1,0.025 1); s1=tf(k*n1,d1);figure(2);sys=feedback(s1,1);step(sys)校正后 % MATLAB PROGRAM j005.m % k=conv(0.833 1,0.4 1);n1=20;d3=conv(0.5 1,conv(0.025 1,1 0);d2=co
9、nv(3.33 1,0.125 1);d4=conv(0 d3,0 d2);d1=conv(0 d4,1 0); s1=tf(k*n1,d1);figure(2);sys=feedback(s1,1);step(sys)三条曲线关系:斜坡响应曲线的导数是阶跃,阶跃响应曲线的导数是脉冲响应曲线。、绘制系统校正前与校正后的根轨迹图,并求其分离点,汇合点及虚轴交点的坐标和相应点的增益*值,得出系统稳定时增益K*的变化范围。绘制系统校正前与校正后的Nyquist图,判断系统的稳定性,并说明理由。校正前 % MATLAB PROGRAM j005.m % num=20; den=conv(1 0,con
10、v(0.5 1,0.025 1); g0=tf(num,den);rlocus(g0)分离点 -0.987,无汇合点, 虚轴交点的坐标 0.1299.37j和相应点的增益* =0.0244校正后 % MATLAB PROGRAM j005.m%d3=conv(0.5 1,conv(0.025 1,1 0);d2=conv(0.125 1,3.33 1);den=conv(0 d3,0 d2);num=20; g0=tf(num,den);rlocus(g0)分离点 -6.23,汇合点 0 虚轴交点的坐标没有,相应点的增益*=0校正前 % MATLAB PROGRAM j005.m % k=20
11、;n1=1;d1=conv(1 0,conv(0.5 1,0.025 1); s1=tf(k*n1,d1);nyquist(s1)判断稳定性:已知,开环不稳定极点个数P=0, 又Nyquist曲线包围(-1,j0)点两圈,所以系统不稳定 校正后 % MATLAB PROGRAM j005.m % k=conv(0.4 1,0.833 1);n1=20;d3=conv(0.5 1,conv(0.025 1,1 0);d2=conv(0.125 1,3.33 1);d1=conv(0 d3,0 d2);s1=tf(k*n1,d1);nyquist(s1)判断稳定性:已知,开环不稳定极点个数P=0,
12、又Nyquist曲线不包围(-1,j0)点,所以系统稳定6、绘制系统校正前与校正后的Bode图,计算系统的幅值裕量,相位裕量,幅值穿越频率和相位穿越频率。判断系统的稳定性,并说明理由?Bode图 校正前 % MATLAB PROGRAM j005.m % k=20;n1=1;d1=conv(1 0,conv(0.5 1,0.025 1); s1=tf(k*n1,d1);GM,PM,WCP,WCG=margin(s1)GM =2.1000PM = 9.3528WCP = 8.9443WCG =6.1310幅值裕量:2.1 相位裕量:9.3528幅值穿越频率:8.9443 相位穿越频率:6.131
13、0 % MATLAB PROGRAM j005.m % k=20;n1=1;d1=conv(1 0,conv(0.5 1,0.025 1); s1=tf(k*n1,d1);figure(1);margin(s1);hold on开环极点P=0,在L()0dB的频率范围内,对应的()对-线的正穿越都一次,所以系统不稳定。校正后 % MATLAB PROGRAM j005.m%k=conv(0.833 1,0.4 1);n1=20;d3=conv(0.5 1,conv(0.025 1,1 0);d2=conv(0.125 1,3.33 1);d1=conv(0 d3,0 d2);s1=tf(k*n1,d1); GM,PM,WCP,WCG=margin(s1)GM = 9.4589PM = 40.1015WCP = 15.9123WCG =