MATLAB控制系统仿真实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

清华大学自动化工程学院

实验报告

课程:控制系统仿真

专业自动化班级 122

姓名学号

指导教师:

时间: 2015 年 10 月 19 日— 10 月 28 日

目录

实验一 MATLAB环境的熟悉与基本运算 (1)

实验二 MATLAB语言的程序设计 (6)

实验三 MATLAB的图形绘制 (9)

实验四采用SIMULINK的系统仿真 (14)

实验五控制系统的频域与时域分析 (17)

实验六控制系统PID校正器设计法 (23)

实验一 MATLAB环境的熟悉与基本运算

一、实验时间及地点:

实验时间:2015.10.19上午8:30—9:30

实验地点:计算中心

二、实验目的:

1.熟悉MATLAB开发环境

2.掌握矩阵、变量、表达式的各种基本运算

三、实验内容:

1、新建一个文件夹(自己的名字命名,在机器的最后一个盘符)

2、启动MATLAB6.5,将该文件夹添加到MATLAB路径管理器中。

3、保存,关闭对话框

4、学习使用help命令,例如在命令窗口输入help eye,然后根据帮助说明,学习使用指

令eye(其它不会用的指令,依照此方法类推)

5、学习使用clc、clear,观察command window、command history和workspace等窗口的

变化结果。

6、初步程序的编写练习,新建M-file,保存(自己设定文件名,例如exerc1、exerc2、

exerc3……),学习使用MATLAB的基本运算符、数组寻访指令、标准数组生成函数和数组操作函数。

注意:每一次M-file的修改后,都要存盘。

练习A:

(1)help rand,然后随机生成一个2×6的数组,观察command window、command history和workspace等窗口的变化结果

(2)学习使用clc、clear,了解其功能和作用

(3)输入一个2维数值数组,体会标点符号的作用(空格和逗号的作用)。

(4)一维数组的创建和寻访,创建一个一维数组(1×8)X,查询X数组的第2个元素,查询X数组的第3个元素到第6个元素,查询X数组的第5个元素到最后

一个元素,查询X数组的第3、2、1个元素,查询X数组中≤5元素,将X数

组的第2个元素重新赋值为111,实例expm1。

(5)二维数组的创建和寻访,创建一个二维数组(4×8)A,查询数组A第2行、第3列的元素,查询数组A第2行的所有元素,查询数组A第6列的所有元素,

查询数组A按列拉长形成新的数组B(1×8),查询数组A按行拉长形成新的数组

C(1×8),以全元素赋值的方式对数组A赋值。

(6)两种运算指令形式和实质内涵的比较。设有3个二维数组A2×4,B2×4,C2×2,写出

所有由2个数组参与的合法的数组运算和矩阵指令

(7) 学习使用表8列的常用函数(通过help 方法)

(8) 学习使用表9数组操作函数

(9) 学习字符串的创建,a='This is an example.'

串数组的大小size(a)

串数组的元素标识a14=a(1:4) ra=a(end:-1:1)

对字符串ASCLL 码的数组操作

w=find(a>='a'&a<='z');

ascii_a(w)=ascii_a(w)-32;%英文大小写字母ASCLL 值差32(小-32=大)

char(ascii_a)

练习B

(10) 创建符号对象与函数命令sym ()、syms ()与 class ()的熟悉和运用。有

符号表达式:

kp cky bpx bcxy apx y acx e +++++=221,p cy e +=2 试计算?21=e 与?\21=e e

四、实验操作过程(实验说明)

>>help rand %用help 指令学习rand 的用法

rand - Uniformly distributed pseudorandom numbers

This MATLAB function returns a pseudorandom scalar drawn from the standard

uniform distribution on the open interval (0,1).

r = rand

r = rand(n)

r = rand(sz1,...,szN)

r = rand(sz)

r = rand(classname)

r = rand(n,classname)

r = rand(sz1,...,szN,classname)

r = rand(sz,classname)

r = rand('like',p)

r = rand(n,'like',p)

r = rand(sz1,...,szN,'like',p)

r = rand(sz,'like',p)

>> rand(2,6) %随机生成一个2×6的数组

ans =

0.8147 0.1270 0.6324 0.2785 0.9575 0.1576

0.9058 0.9134 0.0975 0.5469 0.9649 0.9706

>> clear %清除命令窗口

>> [1 2;3 4] %输入一个二维数组

ans =

1 2

3 4

>> [1,2;3,4] %将空格改为逗号效果一致

ans =

1 2

3 4

>> a=[1 2 3 4;5 6 7 8];

>> b=a(2:2,3:4) %逗号前面是行,后面是列,冒号前后的数表示所选范围

b =

7 8

>> eye(3) %产生单位矩阵

相关文档
最新文档