MATLAB与控制系统仿真实验_第1页
MATLAB与控制系统仿真实验_第2页
MATLAB与控制系统仿真实验_第3页
MATLAB与控制系统仿真实验_第4页
MATLAB与控制系统仿真实验_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MATLAB与控制系统仿真实验 /241/24MATLAB及控制系统仿真实验指导书2011年第一版)西安邮电学院自动化学院2011年6月目录TOC o 1-5 h z HYPERLINK l bookmark4 o Current Document 前言1 HYPERLINK l bookmark10 o Current Document MATLAB语言实验项目3 HYPERLINK l bookmark12 o Current Document 实验一熟悉MATLAB集成环境及基础运算3 HYPERLINK l bookmark46 o Current Document 实验二MATLAB

2、的基本计算7 HYPERLINK l bookmark64 o Current Document 实验三MATLAB图形系统9实验四MATLAB程序设计13 HYPERLINK l bookmark105 o Current Document 实验五MATLAB函数文件15 HYPERLINK l bookmark121 o Current Document 实验六MATLAB数据处理及多项式计算17 HYPERLINK l bookmark165 o Current Document 实验七SIMULINK仿真实验21MATLAB与控制系统仿真实验MATLAB与控制系统仿真实验 /249/2

3、4 /241/24前言MATLAB产品家族是美国MathWorks公司开发的用于概念设计、算法开发、建模仿真、实时实现的理想的集成环境。是矩阵实验室(MatrixLaboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和SIMULINK两大部分。MATLAB由于其完整的专业体系和先进的设计开发思路,使得MATLAB在多种领域都有广阔的应用空间,特别是在科学计算、建模仿真以及系统工程的设计开发上已经成为行业内的首选设计工具,它将数值分析、矩阵计算、科学数据可视化以及非线性动态系

4、统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。MATLAB软件工具在自动化专业、测控技术及仪器和电气工程及其自动化等专业的本科生学习中,经常用来计算、仿真和设计,尤其是MATLAB软件的仿真功能,能使学生对所学知识有更加深入的理解和分析。MATLAB及控制系统仿真课程,和自动控制原理、现代控制理论、数字信号处理、电力电子技术等重要的专业课程相互支撑、相辅相成,同时也有利于学生完成课

5、程设计和毕业设计等实践教学环节。本实验指导书共设置了12个实验项目,分别从MATLAB工作环境熟悉MATLAB的基本计算、MATLAB绘图功能、MATLAB基本程序设计、SIMULINK仿真实验、滤波器设计及仿真、控制系统仿真及电力电子系统仿真等实验项目,通过选取的上机实验,可使学生更好的熟悉MATLAB软件的功能,掌握MATLAB程序设计的一般方法,培养学生的应用开发能力。每个实验2个小时左右,不同的专业可根据需求自行选择。实验注意事项实验开始前,应先检查本组电脑设备是否工作正常,MATLAB软件工作是否正常。2实验时每位同学应独立完成实验任务,避免抄袭。3实验后应及时将实验数据进行记录及存

6、盘,避免因电脑故障或其它原因造成实验数据的丢失。4测量数据或观察现象要认真细致,实事求是。5实验结束后,实验记录交指导教师查看并认为无误后,方可关掉电脑离开。6自觉遵守学校和实验室管理的其它有关规定。实验报告要求(包含预习报告要求和最终报告要求)每次实验后,应对实验进行总结,即实验数据进行整理,绘制波形和图表,分析实验现象,撰写实验报告。实验报告除写明实验名称、日期外,还包括:1实验名称2实验目的3实验设备及条件4实验内容及要求5实验程序设计程序代码6实验结果及结果分析实验结果要求必须客观,有数据的可以记录数据,没有数据的简单描述实验现象。结果分析是对实验结果的理论评判。7实验中出现的问题及解

7、决方法8实验的收获及体会MATLAB语言实验项目实验一熟悉MATLAB集成环境及基础运算一、实验目的熟悉启动和退出MATLAB软件的方法、熟悉MATLAB软件的运行环境熟悉MATLAB命令窗口的组成。熟悉MATLAB的基本操作。掌握建立矩阵的方法。掌握MATLAB各种表达式的书写规则以及常用函数的使用。二、实验设备及条件计算机一台(带有MATLAB6.5或以上版本的软件环境)。三、实验原理1MATLAB的启动MATLAB系统的启动有三种常见方法:1)使用Windows“开始”菜单。2)运行MATLAB系统启动程序matlab.exe。3)利用快捷方式。2MATLAB系统的退出要退出MATLAB

8、系统,也有三种常见方法:)在MATLAB主窗口File菜单中选择Exitmatlab命令。)在MATLAB命令窗口输入Exit或Quit命令。 /244/24MATLAB与控制系统仿真实验3)单击MATLAB主窗口的“关闭”按钮。3MATLAB帮助窗口进入帮助窗口可以通过以下三种方法:1)单击MATLAB主窗口工具栏中的help按钮。2)在命令窗口中输入helpwin、helpdesk或doc。3)选择help菜单中的“matlabhelp”选项。4MATLAB帮助命令1)help命令在MATLAB命令窗口直接输入help命令将会显示当前帮助系统中所包含的所有项目,即搜索路径中所有的目录名称。

9、同样,可以通过help加函数名来显示该函数的帮助说明。2)lookfor命令help命令只搜索出那些关键字完全匹配的结果,lookfor命令对搜索范围内的m文件进行关键字搜索,条件比较宽松。3)模糊查询用户只要输入命令的前几个字母,然后按tab键,系统就会列出所有以这几个字母开头的命令。5赋值语句1)变量=表达式2)表达式6矩阵的建立1)直接输入法:将矩阵的元素用方括号括起来,按矩阵行的顺序输入各元素MATLAB与控制系统仿真实验 /249/24同一行的各元素之间用空格或逗号分开,不同行的元素之间用分号分开。2)利用m文件建立矩阵3)利用冒号表达式建立一个向量e1:e2:e34)利用linsp

10、ace函数产生行向量linspace(a,b,n).四、实验内容1练习下面指令:cd,clear,help,who,whos,dir,path,save,load。建立自己的工作目录MYWORK和MYDATA,并将它们分别加到搜索路径的前面或者后面。求12+2*(7-4)十32的算术运算结果。先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。21+2i0.455(1)z二In(x+x2),其中x二22/、eo.3ae-o.3a0.3+az=-sin(a+0.3)+In-,a=3.0,2.9,2.&.,2.8,2.9,3.032212,0t1z1211t2,其中t二0:0

11、.5:2.54t22t+1,2tv3提示:用逻辑表达式求分段函数值。利用MATLAB的帮助功能分别查询path、plot2d、min、round函数的功能和用法。1234-4-13-6.已知A=34787,B=20336573-27求下列表达式的值:A+6*B和A-B+I(其中I为单位矩阵)A*B和A.*BAA3和A.A3A/B及BAA,B和A(1,3,:;BA27.设有矩阵A和B12345-301667891017-69A=1112131415,B=023-416171819209702122232425_41311(1)求它们的乘积C;将矩阵C的右下角3*2子矩阵赋给D;察看MATLAB工

12、作空间的使用情况。8完成下列操作:求100,999之间能被21整除的数的个数。提示:先利用冒号表达式,再利用find和length函数建立一个字符串向量,删除其中的大写字母。提示:利用find函数和空矩阵实验二MATLAB的基本计算一、实验目的1掌握建立矩阵的方法。掌握MATLAB各种表达式的书写规则以及常用函数的使用。能用MATLAB进行基本的数组、矩阵及符号运算。4掌握矩阵分析的方法以及能用矩阵求逆法解线性方程组。二、实验设备及条件计算机一台(带有MATLAB6.5或以上版本的软件环境)。三、实验内容1.利用diag等函数产生下列矩阵。2利用reshape函数将1题中的a和b变换成行向量。

13、产生一个均匀分布在(-5,5)之间的随即矩阵(10X2),要求精确到小数点后一位。4已知:求下列表达式的值:K11二A+6*B和K12=A-B+1(其中I为单位矩阵)K21二A*B和K22二A.*B(3)K31=A人3和K32=A/3K41二A/B和K42二BAK51=A,B和K52二A(l,3,:);B人25下面是一个线性方程组:1/21/31/4_x10.951/31/41/5x2=0.671/41/51/6x30.52(1)求方程的解。(2)将方程右边向量元素b改为0.53,再求解,并比较b的变化和解的相对33变化。利用randn函数产生均值为0,方差为1的6X6正态分布随机矩阵C,然后

14、统计C中大于-0.3,小于0.3的元素个数t。建立一个矩阵A,找出矩阵中值大于1的元素,并将它们重新排列成行向031-459-238-8量B,例如A=0362-100551-28读以下程序,解释指令sprintf、fprintf、sscanf的作用?rand(state,0);a=rand(2,2);s1=num2str(a)s_s=sprintf(%.10en,a)fprintf(%.5g,a)s_sscan=sscanf(s_s,%f,3,2)实验三MATLAB图形系统一、实验目的1掌握绘制二维图形的常用函数。2掌握绘制三维图形的常用函数。3熟悉利用图形对象进行绘图操作的方法。4掌握绘制图

15、形的辅助操作。二、实验仪器和设备计算机一台(带有MATLAB6.5或以上版本的软件环境)。三、实验原理1二维数据曲线图(1)绘制单根二维曲线plot(x,y);绘制多根二维曲线plot(x,y)当x是向量,是有一维及x同维的矩阵时,则绘制多根不同颜色的曲线。当x,y是同维矩阵时,则以x,y对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。含有多个输入参数的plot函数plot(xl,yl,x2,y2,,xn,yn)具有两个纵坐标标度的图形plotyy(x1,y1,x2,y2)2图形标注及坐标控制title(图形名称);xlabel(x轴说明)3)ylabel(y轴说明)MATLAB与

16、控制系统仿真实验MATLAB与控制系统仿真实验 /2411/24 /2410/244)text(x,y图形说明)legend(图例1,图例2,)axis(xminxmaxyminymaxzminzmax)3图形窗口的分割subplot(m,n,p)4三维曲线plot3(x1,y1,z1,选项1,x2,y2,选项2,.,xn,yn,zn,选项n)5三维曲面mesh(x,y,z,c)及surf(x,y,z,c)。一般情况下,x,y,z是维数相同的矩阵。X,y是网格坐标矩阵,z是网格点上的高度矩阵,c用于指定在不同高度下的颜色范围。6图像处理imread和imwrite函数这两个函数分别用于将图象文

17、件读入MATLAB工作空间,以及将图象数据和色图数据一起写入一定格式的图象文件。image和imagesc函数这两个函数用于图象显示。为了保证图象的显示效果,一般还应使用colormap函数设置图象色图。四、预习要求1复习二维及三维图形的绘图函数。2复习图形辅助操作。五、实验内容及步骤设,在x=02n区间取101点,绘制函数曲线。2.已知y1=x2,y2=cos(2x),y3=y1*y2,完成下列操作:在同一坐标系下用不同的颜色和线型绘制三条曲线;分别用条形图、阶梯图、杆图和填充图绘制三条曲线。已知e2In(x+1+x2),、2在一5v=xv=5区间绘制函数曲线。绘制函数的曲面图和等高线其中x

18、的21个值均匀分布在-5,5范围,y的31个值均匀分布在0,10,要求使用subplot(2,1,1)和subplot(2,1,2)将产生的曲面图和登高图画在同一个窗口上。将图形窗口分成两格,分别绘制正割和余割函数曲线,并加上适当的标注要求:1)必须画出0到2,即一个周期的曲线。正割曲线为红色点划线输出,余割曲线为蓝色实线输出。图形上面表明正割和余割公式,横轴标x,纵轴标y。将图形窗口分成两格,正割在上,余割在下。绘制极坐标曲线p=asin(b+n0),并分析参数a、b、n对曲线形状的影响。将图形窗口分成两个窗格,分别绘制出函数: /2412/24MATLAB与控制系统仿真实验在0,3区间上的

19、曲线,并利用axis调整轴刻度纵坐标刻度,使y1在0,12区间上,y2在-2,1.5区间上。8画出函数z=x2+y2+sin(xy)的曲面及等高线图。9综合实例中,还有一种最常用的电力系统无源滤波器单调谐滤波器,其阻抗表达式为:11Z=R+j(L)=R+j(nWL)fnwC1nWCn1式中,W为n次谐波角频率,W为基波角频率。当设W=1,R=0.10,n11L=0.164609053H,C=0.3F,n在0.5,25取值时,单调谐滤波器的阻抗Z及fn谐波次数n的曲线如图3-4所示,试编写程序完成曲线的画取(注意图中各个地方的标注均用程序实现)。用曲面图表现函数z二x2+y2,x和y的范围从-4

20、到4,设置当前图形的颜色板从黑色到暗红、洋红、黄色、白色的平滑变化,打开网格。根据绘制平面曲线,并分析参数a对其形状的影响。MATLAB与控制系统仿真实验 /2413/24实验MATLAB程序设计一、实验目的掌握利用if语句实现选择结构的方法。掌握利用switch语句实现多分支选择结构的方法。掌握利用for语句实现循环结构的方法。掌握利用while语句实现循环结构的方法。二、实验设备及条件计算机一台(带有MATLAB6.5或以上版本的软件环境)。三、实验内容1.编写求解方程ax2+bx+c=0的根的函数(这个方程不一定为一元二次方程,因a、b、c的不同取值而定),这里应根据a、b、c的不同取值

21、分别处理,有输入参数提示,当a=0,b=0,c=0时应提示“为恒不等式!”。并输入几组典型值加以检验。2输入一个百分制成绩,要求输出成绩等级A+、A、B、C、D、E。其中100分为A+,90分99分为A,80分89分为B,70分79分为C,60分69分为D,60分以下为E。要求:(1)用switch语句实现。(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。利用for循环语句编写计算n!的函数程序,取n分别为-89、0、3、5、10验证其正确性(输入n为负数时输出出错信息)。Fibonacci数组的元素满足Fibonacci规则:a=a+a,(k=1,2,);k+2kk

22、+1 /2414/24MATLAB与控制系统仿真实验且a二a二1。现要求该数组中第一个大于10000的元素。12根据二=丄+丄+丄+丄,求“的近似值。当n分别取100、1000、TOC o 1-5 h z6122232n210000时,结果是多少?有一分数序列:135813212,35T百编写一段程序,求前16项的和。7已知:ff=1,n=1J1f=0,n=23nn-1n-2n-3求ff中:1100(1)最大值、最小值、各数之和;(2)正数、零、负数的个数。建立5X6矩阵,要求输出矩阵第n行元素,当n值超过矩阵的行数时,自动转为输出矩阵最后一行元素,并给出出错信息。9.根据=丄+丄+丄+.+丄

23、,求兀的近似值。当n分别取100,1000,6122232n210000时,结果是多少?MATLAB与控制系统仿真实验MATLAB与控制系统仿真实验 /2416/24 /2415/24实验五MATLAB函数文件一、实验目的1理解函数文件的概念;2掌握定义和调用MATLAB函数的方法。二、实验仪器和设备计算机一台(带有MATLAB6.5或以上版本的软件环境)。三、实验原理1函数文件的定义:函数文件是另一种形式的m文件,每一个函数文件都定义一个函数,事实上MATLAB提供的标准函数大部分都是由函数文件定义的。2函数文件的基本结构函数文件由function语句引导,其基本结构为:Function输出

24、形参表=函数名(输入形参表)注释说明部分函数体语句其中以function开头的一行为引导行,表示该m文件是一个函数文件。3函数调用函数文件编制好之欧,就可以调用函数进行计算了,函数调用的一般格式是输出实参表=函数名(输入实参表)四、预习要求1复习函数的定义及编写原则。2复习函数的调用。五、实验内容1一个自然数是素数,且它的数字位置经过任意对换后仍为素数,则称为绝对素数。例如13是绝对素数。试求所有的两位绝对素数。要求:定义一个判断素数的函数文件。2已知当f(n)二n+10In(n2+5)时,求y值;当f(n)=1*2+2*3+3*4+.+n*(n+1)时,求y值。MATLAB与控制系统仿真实验

25、 /2417/24实验六MATLAB数据处理及多项式计算一、实验目的1掌握数据统计和分析的方法;2掌握数值插值及曲线拟合的方法;3掌握多项式计算的常用运算。二、实验仪器和设备计算机一台(带有MATLAB6.5或以上版本的软件环境)。三、实验原理1数据统计处理1)最大值及最小值(a)求向量的最大值及最小值y=max(X)及y,I=max(X)(b)求矩阵的最大值和最小值max(A)及Y,U=max(A),max(A,dim)2)求和及求积sum(X),prod(X)sum(A)3)标准方差及相关系数a)Y=std(A,flag,dim)b)corrcoef(X)2数据差值a)一维数据差值Y1=i

26、nterp1(X,Y,X1,method)b)二维数据差值Z1=interp2(X,Y,Z,X1,Y1,method)MATLAB与控制系统仿真实验3曲线拟合P,S=polyfit(X,Y,m)4多项式计算1)多项式的加减计算2)多项式乘法运算Y=conv(P1,P2)3)多项式除法Q,r=deconv(P1,P2)4)多项式的导函数p=polyder(P):求多项式P的导函数p=polyder(P,Q):求P.Q的导函数p,q=polyder(P,Q):求P/Q的导函数,导函数的分子存入p,分母存入q。5多项式求值代数多项式求值Y=polyval(P,x)矩阵多项式求值polyvalm6多项

27、式求根x=roots(P)四、预习要求1复习MATLAB多项式数值分析函数。2复习MATLAB曲线拟合及多项式计算函数。五、实验内容及步骤利用MATLAB提供的rand函数生成30,000个符合均匀分布的随机数,然后检验随机数的性质:18/2418/24MATLAB与控制系统仿真实验MATLAB与控制系统仿真实验 /2420/24 /2419/24均值和标准方差;最大元素及最小元素;大于0.5的随机数个数占总数额百分比。2将100个学生5门功课的成绩存入矩阵P中,进行如下处理:分别求每门课的最高分、最低分及相应学生序号;分别求每门课的平均分和标准方差;5门课总分的最高分、最低分及相应学生序号;将5门课总分按照从大到小的顺序存入zcj中,相应学生序号存入xsxh。提示:上机调试时,为避免输入学生成绩的麻烦,可用取值范围在45,95之间的随机矩阵来表示学生成绩。3已知lgx在1,101区间10个整数采样点的函数值如下

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论