当前位置:文档之家› 控制系统数字仿真大作业.

控制系统数字仿真大作业.

《控制系统数字仿真》课程大作业姓名:学号:班级:日期:同组人员:目录一、引言 (2)二、设计方法 (2)1、系统数学模型 (2)2、系统性能指标 (4)2.1 绘制系统阶跃响应曲线、根轨迹图、频率特性 (4)2.2 稳定性分析 (6)2.3 性能指标分析 (6)3、控制器设计 (6)三、深入探讨 (9)1、比例-微分控制器(PD) (9)2、比例-积分控制(PI) (12)3、比例-微分-积分控制器(PID) (14)四、设计总结 (17)五、心得体会 (18)六、参考文献 (18)一、引言MATLAB语言是当今国际控制界最为流行的控制系统计算机辅助设计语言,它的出现为控制系统的计算机辅助分析和设计带来了全新的手段。

其中图形交互式的模型输入计算机仿真环境SIMULINK,为MATLAB应用的进一步推广起到了积极的推动作用。

现在,MATLAB语言已经风靡全世界,成为控制系统CAD领域最普及、也是最受欢迎的软件环境。

随着计算机技术的发展和应用,自动控制理论和技术在宇航、机器人控制、导弹制导及核动力等高新技术领域中的应用也愈来愈深入广泛。

不仅如此,自动控制技术的应用范围现在已发展到生物、医学、环境、经济管理和其它许多社会领域中,成为现代社会生活中不可或缺的一部分。

随着时代进步和人们生活水平的提高,在人类探知未来,认识和改造自然,建设高度文明和发达社会的活动中,控制理论和技术必将进一步发挥更加重要的作用。

作为一个自动化专业的学生,了解和掌握自动控制的有关知识是十分必要的。

利用MATLAB软件及其SIMULINK仿真工具来实现对自动控制系统建模、分析与设计、仿真,能够直观、快速地分析系统的动态性能和稳态性能,并且能够灵活的改变系统的结构和参数,通过快速、直观的仿真达到系统的优化设计,以满足特定的设计指标。

二、设计方法1、系统数学模型美国卡耐尔基-梅隆大学机器人研究所开发研制了一套用于星际探索的系统,其目标机器人是一个六足步行机器人,如图(a)所示。

该机器人单足控制系统结构图如图(b)所示。

要求:(1)建立系统数学模型;(2)绘制系统阶跃响应曲线、根轨迹图、频率特性;(3)分析系统的稳定性,及性能指标;(4)设计控制器Gc(s),使系统指标满足:ts<10s,ess=0,,超调量小于5%。

在不加入任何控制器的情况下,由控制系统结构图可得其开环传递函数为)102(1)(20++=S S S S G Simulink 仿真得在单位阶跃信号作用下系统响应曲线为10203040506070809010000.10.20.30.40.50.60.70.80.91单位阶跃响应曲线2、系统性能指标2.1 绘制系统阶跃响应曲线、根轨迹图、频率特性编写M文件如下:%set up system math modlenum=[1];den=[1 2 10 0];G0=tf(num,den)G=feedback(G0,1)figure(1);t=0:100;step(G,t);grid;title('单位阶跃响应曲线')[y t]=step(G,t);[Y k]=max(y);tp=t(k)ess=1-y;figure(2);plot(t,ess);grid;title('单位阶跃响应误差曲线') figure(3);pzmap(G0);title('零极点分布图')figure(4);margin(G0);title('系统开环对数特性曲线') grid;figure(5);nyquist(G0);title('nyquist曲线')figure(6);rlocus(G0)title('系统根轨迹特性曲线') sgridstepinfo(G) MATLAB命令窗口中运行后得到结果为:Transfer function:1----------------------s^3 + 2 s^2 + 10 sTransfer function:1---------------------------s^3 + 2 s^2 + 10 s + 1ans =RiseTime: 21.5386SettlingTime: 38.5480SettlingMin: 0.9001SettlingMax: 0.9997Overshoot: 0Undershoot: 0PeakTime: 79.1536以上各图依次为系统单位阶跃响应曲线、单位阶跃响应误差曲线、零极点分布图、系统开环对数特性曲线、系统根轨迹特性曲线、奈奎斯特曲线。

01020304050607080901000.20.40.60.811.21.4单位阶跃响应曲线Time (sec)A m p l i t u d e0102030405060708090100-0.20.20.40.60.811.2单位阶跃响应误差曲线-1.4-1.2-1-0.8-0.6-0.4-0.2-3-2-101230.130.190.260.380.520.80.511.522.530.511.522.530.040.0850.130.190.260.380.520.80.040.085零极点分布图Real AxisI m a g i n a r y A x is-150-100-5050M a g n i t u d e (d B )10-210-110101102-270-225-180-135-90P h a s e (d e g )系统开环对数特性曲线Frequency (rad/sec)-1-0.9-0.8-0.7-0.6-0.5-0.4-0.3-0.2-0.10-10-8-6-4-20246810nyquist 曲线Real AxisI m a g i n a r y A x i s-25-20-15-10-5510-20-15-10-5051015200.140.30.440.580.720.840.920.980.140.30.440.580.720.840.920.98510152025系统根轨迹特性曲线Real AxisI m a g i n a r y A x i s2.2 稳定性分析由闭环零极点分布图可知,系统闭环传递函数的极点全部位于s 左半平面,因此系统闭环稳定。

2.3 性能指标分析(1)系统稳态误差ss e =0。

由以上分析可知在加入控制器之前,ss e =0,符合设计要求。

(2)系统调节时间s t <10s 。

在加入控制器之前,调节时间s t =38s ,不满足设计要求,因此需要加入控制器来缩短调节时间,以提高系统响应速度。

(3)系统阶跃响应的超调量σ%<5%。

在加入控制器之前,超调量σ%=0,符合设计要求。

3、控制器设计由以上分析可知,要减小系统的调节时间,使其快速性能得到改善,同时不影响系统的稳态误差和超调量,因此,可以利用比例控制器来实现这一目的。

P 控制方式只是在前向通道上加上比例环节,相当于增大了系统的开环增益,减小了系统的稳态误差,减小了系统的阻尼,从而增大了系统的超调量和振荡性。

P控制方式的系统结构图如下:P 控制器的传递函数为:p c K S G =)(加上P 控制后的系统开环传递函数为:)102()(2p++=S S S K S G0510********0.20.40.60.811.21.4←Kp=1←Kp=15取Kp=1至15,步长为1,进行循环测试系统,将不同Kp 下的阶跃响应曲线绘制在一张坐标图下: MATLAB 源程序:%对于P 控制的编程实现 num=[1];den=[1 2 10 0]; t=0:0.01:30; for Kp=1:1:15 num1=Kp*num; G0=tf(num1,den) G=feedback(G0,1) y=step(G,t); plot(t,y)If ishold~=1,hold on ,end endgrid;下面通过列表的方式给出在不同Kp 值作用下系统的调节时间、稳态误差以及超调量: Kp 123 4 5 6 7 8 9 10 Ts29.56 14.589.607.135.574.913.483.263.154.730Ess 0.048 0.0027.788*e-52.725*e-6 8.913*e-8 2.854*e-9 1.239*e-40.006 0.028 0.055Pos4.782 0.204 0.008 2.725*e-48.913*e-62.854*e-70.012 0.604 2.840 5.541从上表可以看出,随着Kp 值的增大,系统的调节时间、超调量和稳态误差都逐渐减小,但是,当Kp 增大到一定值后,系统的调节时间、超调量和稳态误差又都随Kp 增大而增大,稳定性下降。

当Kp=6时,调节时间s t =4.96s ,稳态误差ss e 近似为0,超调量σ%近似为0,满足设计要求。

不同Kp 下的阶跃响应曲线051015202530354045500.20.40.60.81←Kp=1←Kp=6Step ResponseTime (sec)A m p l i t u d e此时系统的阶跃响应曲线如图所示: MATLAB 源程序:%对于P 控制的编程实现%(Kp=6) clearnum0=[1];den=[1 2 10 0]; t=0:0.01:50; Kp=6;num=Kp*num0;G0=tf(num0,den); G=feedback(G0,1); G1=tf(num,den); G2=feedback(G1,1); step(G,G2,t) grid;gtext('\leftarrowKp=1') gtext('\leftarrowKp=6')综上所述,采用比例控制器时,满足设计要求的最合理的Kp 值为6,此时系统的超调量为0,调节时间为4.96秒,稳态误差为0。

由上图可看出加入比例控制器后,系统的调节时间大幅度减小,快速性得到了很大的提高,同时系统的稳定性和准确性并没有受到明显影响。

此时,加入比例控制器后,系统开环传递函数为:)102(6)(2++=S S S S G 性能比较: 加入P 之前加入P 之后MATLAB 命令窗口运行结果 ans =RiseTime: 21.5386 SettlingTime: 38.5480 SettlingMin: 0.9001 SettlingMax: 0.9997 Overshoot: 0 Undershoot: 0PeakTime: 79.1536MATLAB 命令窗口运行结果 ans = RiseTime: 2.9072 SettlingTime: 5.7436 SettlingMin: 0.9090 SettlingMax: 0.9996 Overshoot: 0 Undershoot: 0PeakTime: 11.8768三、深入探讨通过以上讨论,单独使用比例控制器就已经满足各项要求,接下来将深入探讨是否还有其他控制器,能更好的满足各项性能指标。

相关主题