《自动控制原理》MATLAB仿真实验控制系统理论、计算方法与计算机技术的结合是当代控制理论发展的标志,因此在以MATLAB为代表的软件平台上,对控制系统进行分析、设计与仿真就成了控制工程师必须熟练掌握的重要知识与技能。
控制系统CAD及仿真是建立在古典控制理论、现代控制理论、计算方法、计算机技术等多方面知识上的综合性学科,是一门综合性与实践性较强的专业课,目前已成为自动化学科重要的研究分支,灵活地掌握与运用它有助于我们深刻理解已学过的有关课程内容,为今后从事控制系统领域的研究与开发工作提供坚实的基础。
本书是编者们对教学、实验与科研工作的总结,并在借鉴国内外控制领域专家、学者研究成果的基础上编写而成的。
在内容编排上具有如下几方面的特点:1、将MATLAB的使用方法和程序设计以简练的篇幅进行介绍,使得直接、快速地了解和掌握MATLAB软件平台成为可能,并采用由浅到深,由易到难逐步深入的方式对控制系统应用MATLAB软件进行刻化;2、在已学习的古典与现代控制理论的基础上,介绍在MATLAB软件平台上对系统进行分析和设计的方法;3、重点介绍目前控制系统仿真技术中状态空间法和Simulink仿真的主要思想,达到学以致用的效果;4、所有的实验、习题都经过精心选择,书中所有的用MATLAB描述的程序都经过严格的上机调试,保证所写程序的可用性,是本书的最重要的特色。
准备工作 熟悉MATLAB的仿真实验环境一、实验目的1.学习了解MATLAB的仿真实验环境2.练习MATLAB命令的基本操作;3.练习MATLAB的m文件的基本操作。
二、实验步骤1.学习了解MATLAB仿真实验环境开机执行程序进入MATLAB环境在命令提示符位置键入下述命令:help显示MATLAB的功能目录.并浏览内容。
intro显示MATLAB语言的基本介绍,如矩阵输人、数值激位计算、曲线绘图等,阅读命令平台上的注释,内容,以尽快MATLAB函数的应用方法。
内容,以尽快了解毗LAn函数的应用方法。
help heLp显示联机帮助查阅功能(要求用中文作简要记录)。
info显示工具箱中各种工具箱组件信息和开发商的联络信息;demoMATLAB的各种功能演水。
help control阅读控制系统工具箱命令清单,阅读如下命令的帮助文件内容:help stephelp impulehelp cloophelp printsys2.练习MATLAB命令的基本操作键人常数矩阵输人命令a=[1 2 3]与a=[1;2;3]记录结果,比较显示结果有何不同、b=[1 2 5]与b=[l 2 5];记录结果,比较显示结果有何不同!a a’b b’记录结果,比较变量加“'”后的区别。
c=a*b c=a*b'记录显示结果与出错原因。
a=[1 2 3;4 5 6;7 8 0] a^2 a^0.5记录显示结果。
作循环命令程序makesum=0;for i=1:1:100makesum=makesum+i;end键入makesum,按回车键,记录计算结果。
分别执行下列命令a=[1 2 3;4 5 6;7 8 0]poly(a) rank(a) det(a) trace(a)inv(a) eig(a)观察、记录显示结果,键人help函数名,查问相应m函数的意义和函数格式,并作记录。
3.练习m文件的基本操作打开用file菜单,其中有“Open m-file” 用于打开m文件“Run m-file” 用于执行m文件可以自由练习上述两项操作。
(注意:大部分m文件需要相应的数据才可以运行.此时命令平台上给出警告提示。
)例如打开:plot. m 阅读绘图命令的功能以及变量格式执行:penddemo.m 可以观察倒立摆控制系统的演示实验一 数学模型的处理一、实验目的1.观察学习、掌握Laplace 的变换与反变换;2.观察学习、掌握一般多项式的运算;3.观察学习、掌握一般微分方程的求解;二、实验步骤1.开机执行程序c :\matlab \bin \matlab.exe(或用鼠标双击图标)进人MATLAB 命令窗口2.建立系统模型系统模型的建立一般从时域开始,根据实际系统的各种物理关系与实际联接的关系导出表述系统逻辑关系的微分方程式。
(关系较复杂)为便于进一步处理,使用微分方程表述系统逻辑关系的时域表达式进入复数域进行分析与计算,即拉普拉斯变换与反变换,进而前涉到多项式的运算。
(a )微分方程的求解:命令(微分方程的求解):dsolve('方程l','方程2',…)函数应用格式说明:(]) 可多至12个微分方程的求解;(2) 默认白变量为'x',并可任意指定自变量为‘t ’、’u ’等;(3) 微分方程的各阶导数项以大写字母’D ’作为标识,后接数字阶数,再接解变量名,例如:Dy 表示dy/dx 、D2y 表示d 2y/dx 2等(4) 初始条件以符号代数方程结出,如‘y(a)=b'、Dy(a)=b'等,其中a 、b 为常数。
如果初始始条件项省缺,其默认常数为C1,C2,…等。
(5)返回变量格式为:[Y1,Y2,…]=dsolve(…)返回方程得解Y1,Y2,…。
例: 已知0输入线型微分方程与初始条件为0)(2)(2)(22=++x c x c dx d x c dx d c(0)=0, c’(0)=0 求该微分方程得解;再MATLAB 环境下,输入下列语句:>> y=dsolve('D2c+2*Dc+2*c=0','c(0)=1','Dc(0)=0','x') %求解微分方程>> ezplot(y,[1,10]); %作出响应图>> grid %作出网格 得到微分方程的解与响应图。
y =exp(-x)*sin(x)+exp(-x)*cos(x)(b )求Laplace 变换命令(求Laplace 变换):laplace(ft,t,s)例求方程22)(2++=t t t f 的拉是变换;解:在MATLAB 命令窗口上,键入以下命令;syms s t %定义变量Ft=t^2+2*t+2;St=laplace(Ft,t,s)得到拉普拉斯变换式为:St =2/s^3+2/s^2+2/s ;即:ss s s F 222)(23++=求F(s)的逆变换:Syms s tFt=2/s^3+2/s^2+2/s ;St=ilaplace(Ft,s,t) 运行程序得到:St =t^2+2*t+2求f(t)=sinwt 得拉氏变换,输入以下程序syms s t w %定义变量Ft=sin(w*t);St=laplace(Ft,t,s)运行得到:St = w/(s^2+w^2) %w 再MATLAB 中代表频率ω; 例 求1-e -at的拉氏变换解:该题是两项拉氏变换之和,即1*t 0和(-e -at )拉氏变换之和。
syms t a %定义变量fb=laplace(-exp(-a*t))syms t %定义变量fc=laplace(1*t^0)fa=fc+fb运行后得到;fa =1/s-1/(s+a)=a/s(+a);(c) 多项式运算命令(多项式运算): roots(p); poly(r); conv(p,q); polyval(n,s); 求根用:roots(p);由根建立多项式:poly(r);多项式运算:conv(p,q);多项式求值:polyval(n,s);例 求多项式43)(23++=s s s p 的根解:在MATLAB 命令窗口上,键入以下命令;p=[1 3 0 4]r=roots(p)运行求得根为:r1 = -3.3553 (负实根) 和共轭虚根 r2=0.1777 + 1.0773i r3= 0.1777 - 1.0773i 键入:p=poly(r)求得多项式系数为:p = 1.0000 3.0000 0.0000 4.0000 即原方程。
例 求两多项式相乘)4)(123(3+++s s s ,求s=-5时的值。
键入:p=[3 2 1];q=[1 4];n=conv(p,q)运行得到:n = 3 14 9 4键入:vlaue=polyval(n,-5) 运行得到值:vlaue = -66(d) z 变换与反变换命令(z 变换与反变换): 求f 的z 变换可用: F =ztrans(f)求F 的z 反变换可用:f=iztrans(F,t)例 求 f(t)=t 的z 变换输入以下程序:%%%% 求f的z变换syms t T;f=t*T;F=ztrans(f) %F=T*z/(z-1)^2%%%% 求F的反变换syms z Tf=iztrans(F,t); %=t*T三. 实验内容(a )求解下列微分方程:(1)6)(6)(5)(22=++t y dxt dy dx t y d 初始条件: c(0)=0, c’(0)=2 (2)29)(29)(4)(2233=++dx t dy dx t y d dx t y d 初始条件: c(0)=0, c’(0)=17,c’’=-122 (b )求下列函数拉氏变换及反变换(1) t t t f 4cos 4sin )(+=(2) 2)(42++=t e t t f(3) at n e t t f =)((4) t e t t f 22)1()(−=(c )求下列函数z 变换;及反变换(1) k a t e =)((2) t a t e at ωsin )(−= (3) )()(a s s ks E +=(4)))((1)(b s a s s E ++=(d )求下列函数z 反变换 (1) )5.0()(−=z zz E(2) )2)(1()(−−=z z zz E (3) ))(()(bT aT e z e z zz E −−−−=四、按要求完成实验报告;(1)求解(a)微分方程;(2)求解(b)函数拉氏变换及反变换;(3) 求解(c)、(d) 的z变换与z反变换;。