当前位置:文档之家› 计算机仿真技术与CAD

计算机仿真技术与CAD

《自控系统数字仿真》实验指导书西安建筑科技大学信息与控制工程学院目录目录 (1)1 课程简介,实验内容及学时安排 (1)1.1 课程简介 (1)1.2 实验内容及学时安排 (1)2 《线性系统理论基础》课程实验 (3)实验一 MATLAB的基本运算和符号运算的使用 (3)实验二 MATLAB语言程序设计和图形绘制 (8)实验三 Simulink基础 (12)实验四连续系统数值积分法仿真 (17)附录一MATLAB 函数参考........................................................ 错误!未定义书签。

附录二控制工具箱介绍............................................................... 错误!未定义书签。

1 课程简介,实验内容及学时安排1.1 课程简介《自控系统数字仿真》课程是电子信息类专业及仪器测量类专业本科生的专业应用技术课程,通过本课程的学习,使学生建立系统仿真的基本概念、掌握常用的仿真方法、模型的建立、仿真常用参数的选择、系统参量间的配合,能够分析仿真结果与实际系统响应的关系,掌握系统仿真在控制系统设计中应用等。

同时对当今最具代表性的控制系统数字仿真语言——MATLAB/Simulink进行学习,掌握MATLAB 的基本概念和原理,侧重于学习MATLAB语言编程基础与技巧,数值分析算法的MATLAB实现,着重掌握动态系统的数学模型及仿真工具SIMULINK等。

《自控系统数字仿真》课程作为联系理论教学内容与“课程设计”、“毕业设计”等实践教学环节的一门专业类课程,是以提高学生能力为主要目的的,《自控系统数字仿真实验》是学习数字仿真技术的一个重要环节。

通过该实验课的基本训练,使学生充分理解控制系统仿真的原理,掌握基本的仿真步骤和方法,熟悉MATLAB软件的使用,具备对一般控制过程的仿真能力,为学生在今后的学习、工作中提供一个强有力的工具,能有效地加强教学中的实践教学环节,培养学生的独立工作能力和创造性思维能力,为学生今后从事该领域的科学研究和技术开发工作打下扎实的基础。

1.2 实验内容及学时安排本课程的实践环节单元实验和综合实验构成,目前实验主要基于MATLAB仿真软件进行仿真实验。

单元实验每个实验2学时,综合实验4学时,要求学生一人一机,独立完成,由此使学生得到较全面的基础训练。

通过该课程的实验训练,应达到下列要求:1. 使学生掌握控制系统仿真的基本方法和手段;2. 使学生了解MATLAB仿真软件的使用方法和基本编程方法,重点掌握MATLAB控制工具箱的使用方法;学会使用Simulink;3. 能对简单的实际系统进行仿真计算和分析。

2 《线性系统理论基础》课程实验实验一 MATLAB的基本运算和符号运算的使用一、实验目的1.熟悉MATLAB 开发环境,掌握矩阵、变量、表达式的各种基本运算;2.熟悉符号对象和符号表达式;掌握符号表达式和符号函数的操作,学习求解符号代数方程。

二、实验基本知识(一)熟悉MATLAB 环境:MATLAB环境是一种为数值计算、数据分析和图形显示服务的交互式的环境。

MATLAB有3种窗口,即:命令窗口(The Command Window)、m-文件编辑窗口(The Edit Window)和图形窗口(The Figure Window),而Simulink另外又有Simulink模型编辑窗口。

熟悉MATLAB 桌面和命令窗口、命令历史窗口、帮助信息浏览器、工作空间浏览器、文件和搜索路径浏览器。

(二)掌握矩阵、变量、表达式的各种基本运算;●●MATLAB变量与运算符表1 MATLAB 的特殊变量与常量表2 MATLAB 算术运算符表5 MATLAB 特殊运算●表6 子数组访问与赋值常用的相关指令格式●表7 两种运算指令形式和实质内涵的异同表MATLAB 的常用函数表8 标准数组生成函数(三) 符号运算基本指令1、符号对象的生成和使用:syms三、实验内容练习A1、新建一个文件夹(自己的名字命名);2、启动MATLAB,将该文件夹添加到MATLAB 路径管理器中(File→Set Path→Add Folder);3、学习使用help 命令,例如在命令窗口输入help eye ,然后根据帮助说明,学习使用指令eye(其它不会用的指令,依照此方法类推);4、学习使用clc、clear,了解其功能和作用,观察command window 、command history 和workspace 等窗口的变化结果;练习B1输入一个2 维数值数组,体会标点符号的作用(空格和逗号的作用);2两种运算指令形式和实质内涵的比较。

设有3 个二维数组A(2×4),B(2×4),C(2×2),写出所有由2 个数组参与的合法的数组运算和矩阵指令;3学习使用表8 列出的常用函数(通过help 方法);4利用diag(),ones()生成下如下矩阵5 0 -2 0 0 0 0 00 4 0 -2 0 0 0 00 0 3 0 -2 0 0 00 0 0 2 0 -2 0 03 0 0 0 1 0 -2 00 4 0 0 0 0 0 -20 0 5 0 0 0 -1 00 0 0 6 0 0 0 -2四、实验设备及注意事项1.计算机174台;2.MATLAB软件1套。

注意不同版本MATLAB软件的异同。

五、实验报告要求记录完成实验内容所采取的步骤、方法和结果。

六、预习要求及思考题要求实验前,必须预习实验知识点,按实验内容的要求的做好设计,并写出根据自己的理解应得的结果,以便在实验时进行比较、验证。

实验二 MATLAB语言程序设计和图形绘制一、实验目的1.熟悉MATLAB 程序编辑与设计环境,掌握各种编程语句语法规则及程序设计方法;2.函数文件的编写和设计;3.学习MATLAB 图形绘制的基本方法,熟悉和了解MATLAB 图形绘制程序编辑的基本指令;4.熟悉掌握利用MATLAB 图形编辑窗口编辑和修改图形界面,并添加图形的各种标注。

二、实验基本知识(一)程序流程控制语句1、for 循环结构语法:for i=初值:增量:终值语句1…语句nend说明:1)i=初值:终值,则增量为1。

2)i=初值、增量、终值,则增量可正可负,可以是整数,也可以是小数,只须符合数学逻辑。

2、while 循环结构语法:while 逻辑表达式循环体语句end说明:1)whiIe 结构依据逻辑表达式的值判断是否执行循环体语勾。

若表达式的值为真,执行循环体语句一次,在反复执行时,每次都要进行判断。

若表达式的值为假,则程序执行end 之后的语句。

2)为了避免因逻辑上的失误,而陷入死循环,建议在循环体语句的适当位置加break 语句、以便程序能正常执行。

(执行循环体的次数不确定;每一次执行循环体后,一定会改变while 后面所跟关系式的值。

)3)while 循环也可以嵌套、其结构如下:while 逻辑表达式1循环体语句1while 逻辑表达式2循环体语句2end循环体语句3end3、if-else-end 分支结构语法:if 表达式1语句1else if 表达式2(可选)语句2else(可选)语句3Endend说明:1)if 结构是一个条件分支语句,若满足表达式的条件,则往下执行;若不满足,则跳出if 结构。

2)if 表达式2 与else 为可选项,这两条语句可依据具体情况取舍。

3)每一个if都对应一个end,即有几个if,记就应有几个end 。

4、switch-case 结构语法:switch 表达式case 常量表达式1语句组1case 常量表达式2语句组2……otherwise语句组nend说明:1)switch 后面的表达式可以是任何类型,如数字、字符串等。

2)当表达式的值与case 后面常量表达式的值相等时,就执行这个case 后面的语句组如果所有的常量表达式的值都与这个表达式的值不相等时,则执行otherwise 后的执行语句。

5、程序流程控制指令break 、return 、pause(二) 函数文件的结构和编写方法函数只能在函数体内对变量进行操作,也就是只能访问函数本身工作空间中的变量。

M 函数文件的结构:1. 函数定义行(function )2. H1 行(函数帮助文本的第一行)3. 函数帮助文本4. 函数体5.注释注意:① 函数文件编写后,保存时,其文件名必须与函数名相同;② 函数名不要与MATLAB 自身的函数命令相同。

(三) 线性坐标图形绘制1) plot(x,y)——绘制由x,y 所确定的曲线;2) 多组变量绘图:plot(x1, y1, 选项1, x2, y2, 选项2, ……); 3) 双Y 轴绘图:plotyy( )函数; 4) 图形窗口的分割(subplot );5) 图形编辑窗口的使用(Edit →Figure Properties )。

三、实验内容 (一) 程序设计熟悉MATLAB 程序编辑与设计环境。

在MATLAB 的m-文件编辑窗口完成下面编程任务。

(在MATLAB 主界面上选择菜单“File →New →M-file ”就打开了一个新的m-文件编辑窗口;选择菜单“File/Open ”就可以打开一个已经存在的m-文件。

) 1、用for 循环语句实现求1~100 的和。

2、编写命令文件:计算1000321<++++n 的最大n 值。

3、编写函数文件:分别用for 和while 循环结构编写程序,求2的0到n 次幂的和。

(二)图形绘制1、输入所给程序,观察产生的图形,分析各语句的功能,再按要求进行相关的实验。

(1)t=(0:pi/50:2*pi)'; k=0.4:0.1:1; Y=cos(t)*k; plot(t,Y)再实验plot(t), plot(Y), plot(Y,t),观察产生图形的不同。

(2)用图形表示连续调制波形y=sin(t)sin(9t) 及其包络线。

t=(0:pi/100:pi)';y1=sin(t)*[1,-1];y2=sin(t).*sin(9*t);t3=pi*(0:9)/9;y3=sin(t3).*sin(9*t3);plot(t,y1,'r:',t,y2,'b',t3,y3,'bo');axis([0,pi,-1,1])2、运行下列程序,观察结果,请用命令为图形加标题“受热压力容器温度与压力的阶跃响应曲线”,为x轴加标注“时间t(s)”、y轴分别加标注“温度C(\circ)”及“压力F(MPa)”。

相关主题