ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:286.43KB ,
资源ID:9737989      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9737989.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(自动控制理论.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

自动控制理论.docx

1、自动控制理论一、设计目的1了解matlab软件的基本特点和功能,熟悉其界面、菜单和工具条;掌握线性系统模型的计算机表示方法、变换以及模型间的相互转换。了解控制系统工具箱的组成、特点及应用;掌握求线性定常连续系统输出响应的方法,运用连续系统时域响应函数(impulse,step,lsim),得到系统的时域响应曲线。2掌握使用MATLAB软件作出系统根轨迹;利用根轨迹图对控制系统进行分析;掌握使用MATLAB软件作出开环系统的波特图,奈奎斯特图;观察控制系统的开环频率特性,对控制系统的开环频率特性进行分析;3掌握MATLAB软件中simulink工具箱的使用;熟悉simulink中的功能模块,学会

2、使用simulink对系统进行建模;掌握simulink的仿真方法。二、设计原理被控对象模型的建立1、在线性系统理论中,一般常用的描述系统的数学模型形式有:(1)传递函数模型有理多项式分式表达式(2)传递函数模型零极点增益表达式状态空间模型(系统的内部模型)这些模型之间都有着内在的联系,可以相互进行转换。2、传递函数模型有理多项式分式表达式若已设系统的传递函数模型为知系统的传递函数为:(1)对线性定常系统,式中s的系数均为常数,且an不等于零。(2)这时系统在MATLAB中可以方便地由分子和分母各项系数构成的两个向量唯一地确定,这两个向量常用num和den表示。num=bm,bm-1,b1,b

3、0den=an,an-1,a1,a0(3)注意:它们都是按s的降幂进行排列的。分子应为m项,分母应为n项,若有空缺项(系数为零的项),在相应的位置补零。(4)然后写上传递函数模型建立函数:sys=tf(num,den)。这个传递函数便在MATLAB平台中被建立,并可以在屏幕上显示出来。3、环节串联、并联、反馈连接时等效的整体传递函数的求取(1)串联在MATLAB中求取整体传递函数的功能,采用如下的语句或函数来实现。.G=G1*G2G=series(G1,G2)num,den=series(num1,den1,num2,den2)(2)并联两环节G1(s)与G2(s)并联,则等效的整体传递函数为

4、G(s)=G1(s)+G2(s)在MATLAB中求取整体传递函数的功能,采用如下的语句或函数来实现。 G=G1+G2 G= parallel (G1,G2) num,den= parallel (num1,den1,num2,den2)(3)反馈:feedback 在MATLAB中采用如下的语句或函数来求取闭环传递函数 G= feedback(G1,G2,sign) num,den=feedback(num1,den1,num2,den2,sign) G= cloop (G1, sign) numc,denc=cloop(num,den,sign) (这里,sign=1时采用正反馈;当sign

5、= -1时采用负反馈;sign缺省时,默认为负反馈三、简述MATLAB语言的特点及其主要功能MATLAB具备高性能的数值计算和可视化的科学工程计算功能,支持解释性语言输入,编程实现简单,具有丰富的数学函数功能支持。MATLAB允许与、Fortran语言接口,其部件Simulink可以采用图形输入的方式来搭构所研究的系统。包含丰富的工具包,在系统仿真、数字信号处理、图形图像分析、数理统计、通信及自动控制领域得到广泛的应用。MATLAB具有以下几个特点:1MATLAB编程的过程就是在编辑、编译、连接以及执行和调试之间作瀑布型的循环。Matlab语言与其它语言相比,较好地决了上述问题,把编辑、编译、

6、连接和执行融为一体。它能在同一画面上进行灵活操作快速排除输入程序中的书写错误、语法错误以至语意错误,从而加快了用户编写、修改和调试程序的速度,可以说在编程和调试过程中它是一种比VB还要简单的语言。 2.运算符丰富。由于MATLAB是用C语言编写的,MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短。3.高级但简单的程序环境,与其它语言编写的程序结合和输入输出格式化数据的能力;MATLAB既具有结构化的控制语句(如for循环,while循环,break语句和if语句),又有面向对象编程的特性。4. 程序限制不严格,程序设计自由度大。例如,在MATLAB

7、里,用户无需对矩阵预定义就可使用。有大量事先定义的数学函数,并且有很强的用户自定义函数的能力;5.程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。6. MATLAB的图形功能强大。在FORTRAN和C语言里,绘图都很不容易,但在MATLAB里,数据的可列绘图函数(命令),例如线性坐标、对数坐标,半对数坐标及极坐标,均只需调用不同的绘图函数(命令),在图上标出图题、XY轴标注,格(栅)绘制也只需调用相应的命令,简单易行。另外,在调用绘图函数时调整自变量可绘出不变颜色的点、线、复线或多重线。这种为科学研究着想的设计是通用的编程语言所不及的。7.语言简洁紧凑,使用方便灵活

8、,库函数极其丰富。有高性能数值计算的高级算法,特别适合矩阵代数领域;MATLAB程序书写形式自由,利用起丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。可以说,用MATLAB进行科技开发是站在专家的肩膀上。8.功能强大的工具箱是MATLAB的另一特色。MATLAB包含两个部分:核心部分和各种可选的工具箱。核心部分中有数百个核心内部函数。其工具箱又分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能,图示建模仿真功能,文字处理功能以及与硬件实时交互功能。功能性工具箱用于多种学科。而学科性工具箱是专

9、业性比较强的,如(control、signal proceessing 、commumnication) toolbox等。这些工具箱都是由该领域内学术水平很高的专家编写的,所以用户无需编写自己学科视化非常简单。它有一系范围内的基础程序,而直接进行高,精,尖的研究。9.源程序的开放性。开放性也许是MATLAB最受人们欢迎的特点。除内部函数以外,所有MATLAB的核心文件和工具箱文件都是可读可改的源文件,用户可通过对源文件的修改以及加入自己的文件构成新的工具箱。 (二)基本功能MATLAB是主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线

10、性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据

11、单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C+,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。四、详细说明用MATLAB进行控制系统仿真时常用的方法和指令axis 控制轴刻度和风格的高层指令clear 清除内存变量和函数conv 多

12、项式乘、卷积disp 显示数组error 显示出错信息并中断执行exist 检查变量或函数是否已定义 exit 退出Matlab环境 exp 指数函数feedback 反馈连接for 构成for环用gamma 函数 gammainc 不完全 函数series 串联连接step 阶跃响应指令impulse脉冲响应指令rlocus 根轨迹曲线指令pzmap 零极点分布图指令bode 波德图指令nyquist 奈奎斯特指令五、实训内容1.用matlab语言编制程序,实现以下系统:1) 解:可以由下面的命令输入到MATLAB工作空间中去:num=5 24 0 18;den=1 4 6 2 2;G=tf

13、(num,den) Transfer function: 5 s3 + 24 s2 + 18-s4 + 4 s3 + 6 s2 + 2 s + 22)解:可以借助多项式乘法函数conv来描述传递函数,如下语句:num=4*conv(1,2,conv(1 6 6,1 6 6);den=conv(1,0,conv(1,1,conv(1 1,conv(1 1,1 3 2 5); G=tf(num,den) Transfer function: 4 s5 + 56 s4 + 288 s3 + 672 s2 + 720 s + 288-s7 + 6 s6 + 14 s5 + 21 s4 + 24 s3

14、+ 17 s2 + 5 s 其中conv()函数(标准的MATLAB函数)用来计算两个向量的卷积,多项式乘法当然也可以用这个函数来计算。该函数允许任意地多层嵌套,从而表示复杂的计算。2.两环节G1、G2串联,求等效的整体传递函数G(s) 解:可采用sys=series(sys1,sys2)或sys=sys1*sys2两种调用格式:G1=tf(2,1 3); 或 G1=tf(2,1 3);G2=tf(7,1 2 1); G2=tf(7,1 2 1);G=G1*G2 G=series(G1,G2)Transfer function: 14-s3 + 5 s2 + 7 s + 33.两环节G1、G2

15、并联,求等效的整体传递函数G(s) 解:可采用sys=parallel(sys1,sys2)或sys=sys1+sys2两种调用格式: G1=tf(2,1 3); G1=tf(2,1 3); G2=tf(7,1 2 1); G2=tf(7,1 2 1);G=G1+G2 G=parallel(G1,G2)Transfer function: 2 s2 + 11 s + 23-s3 + 5 s2 + 7 s + 34.已知系统结构如图,求闭环传递函数。其中的两环节G1、G2分别为解:反馈函数调用格式:G=feedback(G1,G2,sign)其中变量sign用来表示正反馈或负反馈结构,若sign

16、=-1表示负反馈系统的模型,若省略sign变量,则仍将表示负反馈结构。G1和G2分别表示前向模型和反馈模型的LTI(线性时不变)对象。负反馈G1=tf(3 100,1 2 81);G2=tf(2,2 5);G=feedback(G1,G2) Transfer function: 6 s2 + 215 s + 500-2 s3 + 9 s2 + 178 s + 605正反馈G1=tf(3 100,1 2 81);G2=tf(2,2 5);G=feedback(G1,G2,1) Transfer function: 6 s2 + 215 s + 500-2 s3 + 9 s2 + 166 s +

17、2055.已知某闭环系统的传递函数为,求其单位阶跃响应曲线,单位脉冲响应曲线。 解: sys=tf(10 25,0.16 1.96 10 25);impulse(sys);title(脉冲响应);sys=tf(10 25,0.16 1.96 10 25); G=tf(10 25,0.16 1.96 10 25);step(G);title(阶跃响应);6.典型二阶系统的传递函数为 , 为自然频率, 为阻尼比,试绘出当=0.5,分别取-2、0、2、4、6、8、10时该系统的单位阶跃响应曲线;分析阻尼比分别为0.5、1时系统的稳定性。解:(1)分别取-2、0、2、4、6、8、10时该系统的单位阶跃

18、响响应 w=0:2:10;kosai=0.5;figure(1)hold onfor Wn=w num=Wn2; den=1,2*kosai*Wn,Wn2; step(num,den);endhold offgrid on;title(单位阶跃响应)xlabel(时间)ylabel(振幅) (2)求系统的单位阶跃响应w=0:2:10; kosai=-0.5; figure(1)hold onfor Wn=w num=Wn2; den=1,2*kosai*Wn,Wn2; step(num,den);endhold offgrid on;title(单位阶跃响应)xlabel(时间)ylabel(

19、振幅) (3)求系统的单位阶跃响应 w=0:2:10;kosai=-1;figure(1)hold onfor Wn=w num=Wn2; den=1,2*kosai*Wn,Wn2; step(num,den);endhold offgrid on;title(单位阶跃响应)xlabel(时间)ylabel(振幅)7. 设有一高阶系统开环传递函数为,试绘制该系统的零极点图和闭环根轨迹图。 解:系统的零极点图: num=0.016 0.218 1.436 9.359; den=0.06 0.268 0.635 6.271;pzmap(num,den) 闭环根轨迹图 num=0.016 0.218

20、 1.436 9.359; den=0.06 0.268 0.635 6.271;rlocus(num,den) 8.单位反馈系统前向通道的传递函数为: ,试绘制该系统的Bode图和Nyquist曲线,说明软件绘制曲线与手动绘制曲线的异同。解:软件绘制曲线是用指令,手动绘制曲线是用渐进线,软件绘制用编程操作,比手动绘制更为方便简洁,易于维护。系统的Bode图: num=2 8 12 8 2;den=1 5 10 10 5 1 0;bode(num,den)grid Nyquist曲线 num=2 8 12 8 2;den=1 5 10 10 5 1 0;nyquist(num,den) 9已知

21、某控制系统的开环传递函数,试绘制系统的开环频率特性曲线,并求出系统的幅值与相位裕量。 解: num=1.5;den1=conv(1 0,1 1);den2=1 2;den=conv(den1,den2);Go=tf(num,den);w=logspace(0,4,50);bode(Go,w)%稳定裕量margin(Go)Gm,Pm=margin(Go)Gm =4.0000Pm =41.5340开环频率特性曲线图:10.在SIMULINK中建立系统,该系统阶跃输入时的连接示意图如下。k为学生学号后三位。绘制其单位阶跃响应曲线,分析其峰值时间tp、延迟时间td、上升时间tr、调节时间ts及超调量。

22、峰值时间tp、延迟时间td、上升时间tr、调节时间ts及超调量如下图 num=336;den=1 9 336;G=tf(num,den);grid;step(G)t=0:0.1:2.5;y,t=step(G);Y,K=max(y);tp=t(K)tp =0.1753 C=dcgain(G);percentovershoot=100*(Y-C)/Cpercentovershoot =45.2500 i=length(t);while(y(i)0.98*C&(y(i)10分贝、相位裕度45解:为了满足上述要求,我们试探地采用超前校正装置Gc(s),使系统变为如下图的结构。 校正后系统首先用下面地M

23、ATLAB语句得出原系统的幅值裕量与相位裕量。 G=tf(100, 0.04, 1, 0);Gw, Pw, Wcg, Wcp=margin(G)Gw = Pw =Inf 28.0243Wcg = Wcp =Inf 46.9701可以看出,这个系统有无穷大的幅值裕量,并且其相位裕量28o,幅值穿越频率Wcp=47rad/sec。 引入一个串联超前校正装置:我们可以通过下面的MATLAB语句得出校正前后系统的Bode图如图28,校正前后系统的阶跃响应图如图29。其中、ts1分别为校正前系统的幅值穿越频率、相角裕量、调节时间, 2、ts2分别为校正后系统的幅值穿越频率、相角裕量、调节时间。 G1=t

24、f(100,0.04,1,0); % 校正前模型G2=tf(100*0.025,1,conv(0.04,1,0,0.01,1) % 校正后模型% 画伯德图,校正前用实线,校正后用短划线。bode(G1)hold bode(G2)% 画时域响应图,校正前用实线,校正后用短划线。figureG1_c=feedback(G1,1)G2_c=feedback(G2,1)step(G1_c)hold step(G2_c) 六、实训心得。经过为期四天的MATLAB实训已经结束,虽然时间很短,但我还是从中学到了很多,对MATLAB软件的特性与功能变得更为熟练,同时也体会到了MATLAB软件在自动控制系统设计

25、的过程中所带来的方便与快捷的确是一款不错的设计软件。这次我们实训的要求是利用MATLAB实现对自动控制系统的设计,在此次实习中我们学会了怎样使用MATLAB软件解决自动控制原理中的各种函数问题,还了解到了MATLAB软件是以负数矩阵作为基本编程单元的一种程序设计软件,它提供了各种矩阵运算与操作,并具有较强的绘图功能,作为国际上最流行的控制系统计算机辅助设计的软件,它具有广泛应用前景的计算机高级编程语言。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从而提高自己的实际动手能力和独立思考的能力。同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。在设计的过程当中,我们也进一步回顾了学过的知识,并进一步认识到了课程设计的艰辛,在设计中遇到了很多问题,最后在指导老师的辛勤指导下,终于迎刃而解,在这里,我们由衷的感谢我们的指导教师。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1