MATLAB基础应用与系统仿真实验指导书新编225.docx

上传人:b****8 文档编号:9687366 上传时间:2023-05-20 格式:DOCX 页数:35 大小:158.07KB
下载 相关 举报
MATLAB基础应用与系统仿真实验指导书新编225.docx_第1页
第1页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第2页
第2页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第3页
第3页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第4页
第4页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第5页
第5页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第6页
第6页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第7页
第7页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第8页
第8页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第9页
第9页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第10页
第10页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第11页
第11页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第12页
第12页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第13页
第13页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第14页
第14页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第15页
第15页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第16页
第16页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第17页
第17页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第18页
第18页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第19页
第19页 / 共35页
MATLAB基础应用与系统仿真实验指导书新编225.docx_第20页
第20页 / 共35页
亲,该文档总共35页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

MATLAB基础应用与系统仿真实验指导书新编225.docx

《MATLAB基础应用与系统仿真实验指导书新编225.docx》由会员分享,可在线阅读,更多相关《MATLAB基础应用与系统仿真实验指导书新编225.docx(35页珍藏版)》请在冰点文库上搜索。

MATLAB基础应用与系统仿真实验指导书新编225.docx

MATLAB基础应用与系统仿真实验指导书新编225

北方民族大学

 

《MATLAB基础应用与系统仿真》

实验指导书

主编王福平

 

西北第二民族学院电气信息工程学院

二○○七年三月

 

目 录

MATLAB基础应用与系统仿真实验教学大纲………………………………………3

实验一 MATLAB语言基础实验……………………………………………………5

实验二 MATLAB数值运算实验……………………………………………………9

实验三 MATLAB符号运算实验……………………………………………………13

实验四 MATLAB图形绘制实验……………………………………………………16

实验五 系统控制仿真

(一)实验………………………………………………19

实验六 系统控制仿真

(二)实验………………………………………………21

实验七 SIMULINK仿真分析………………………………………………………25

 

《MATLAB基础应用与系统仿真》实验教学大纲

适用专业:

信息工程

课程类别:

专业任选课

课程性质:

选修课

实验类别:

专业实验

一、学时与学分

1.课程总学时:

54

2.课程总学分:

2.5

3.实验学时:

12

4.实验学分:

0

二、实验教学目标与基本要求

本课程是实践性极强的课程,实验教学可以加深学生对理论教学内容的理解,提高学习的兴趣和动手能力,上机操作是本课程重要的教学环节,学生只有通过上机实习,才能领会MATLAB中众多功能,达到熟练应用的程度。

通过实验教学要求学生初步掌握应用MATLAB语言进行控制系统仿真分析与研究。

三、内容简介

实验内容包括:

(12学时)

实验一:

MATLAB语言基础实验

实验二:

MATLAB数值运算实验

实验三:

MATLAB符号运算实验

实验四:

MATLAB图形绘制实验

实验五:

系统控制仿真

(一)实验

实验六:

系统控制仿真

(二)实验

实验七:

SIMULINK仿真分析

四、参考教材

西北第二民族学院电信系自编的《MATLAB语言与控制系统仿真指导书》

五、考核方式

实验成绩以实验课表现和实验报告为评判,实验成绩占课程总成绩的30%。

六、实验设备及器材配置

计算机及MATLAB软件

七、试验项目一览

适用专业、年级

信息工程专业三、四年级

总学时/实验学时

54/12

序号

实验项目名称

实验内容摘要

学时

实验

要求

实验

类型

每组

人数

面向专业编号

备注

1

MATLAB语言基础实验

熟悉MATLAB软件环境和基本操作命令

2

必做

验证型

1

2

MATLAB数值运算实验

熟悉MATLAB数值运算方法

2

必做

验证型

1

3

MATLAB符号运算实验

熟悉MATLAB符号运算方法

2

选做

验证型

1

4

MATLAB图形绘制实验

掌握熟悉MATLAB图形绘制方法

2

必做

验证型

1

5

系统控制仿真实验

(一)

掌握控制系统的阶跃、脉冲响应曲线分析

2

必做

综合性

1

6

系统控制仿真实验

(二)

掌握应用MATLAB绘制波德图、根轨迹图判断系统稳定性仿真分析

2

选做

综合性

1

7

SIMULINK仿真分析

掌握结构图系统仿真方法

2

必做

设计型

1

大纲执笔人:

王福平

大纲审定人:

2006年3月6日

实验一MATLAB语言基础实验

(验证型实验)

一、实验目的

1.熟悉MATLAB运行环境和MATLAB语言的主要特点。

2.掌握MATLAB语言的基本语法规则及基本操作命令的使用。

3.学会m文件的建立和使用方法。

二、实验仪器与软件

1.PC机1台

2.MATLAB6.5环境

三、实验原理

MATLAB环境是一种为数值计算、数据分析和图形显示服务的交互式的环境。

MATLAB有3种窗口,即:

命令窗口(TheCommandWindow)、m-文件编辑窗口(TheEditWindow)和图形窗口(TheFigureWindow),而Simulink另外又有Simulink模型编辑窗口。

1.命令窗口(TheCommandWindow)

当MATLAB启动后,出现的最大的窗口就是命令窗口。

用户可以在提示符“>>”后面输入交互的命令,这些命令就立即被执行。

在MATLAB中,一连串命令可以放置在一个文件中,不必把它们直接在命令窗口内输入。

在命令窗口中输入该文件名,这一连串命令就被执行了。

因为这样的文件都是以“.m”为后缀,所以称为m-文件。

2.m-文件编辑窗口(TheEditWindow)

我们可以用m-文件编辑窗口来产生新的m-文件,或者编辑已经存在的m-文件。

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

四、实验内容

1.打开MATLAB语言操作界面

打开[开始]-〉[程序]-〉matlab7.00,观察界面布局,了解commandwindow、workspace、commandhistory等板块的功能及用法

2.MATLAB帮助系统

在命令行输入intro、demo、help

例如:

help或helpformat

3.练习Dos相似命令和变量查询

在命令行输入:

cd、dir、type、path、who、whos、what、which

4.MATLAB的数据格式

Short、long、hex、shorte、longe、rational

使用format、formatshort、formatlong、formathex、formatshorte、formatlonge、formatrational分别格式化数据

例如:

formatshort,a=pi或b=exp

(1)

5.练习MATLAB基本语句

在命令行输入以下语句,观察运行结果

a=3

A=[123;456]

f1=‘Thisisastring’

f2=‘exp(-2*a)*sin(a/5)’

size(a),size(f2)

6.练习m文件的建立和运行

在命令行输入edit,或者在matlab环境中打开[File]-〉[New]-〉M-file,或者点击快捷菜单[NewM-file],打开m文件编辑窗口,输入以下语句:

xx=1:

10

xx=linspace(-1,1,10)

xx=logspace(-1,1,10)

打开[Debug]-〉[Run]运行,或者点击快捷菜单[Run]运行,并在主窗口观察运行结果,与在命令行输入相比较。

五、实验要求

利用所学知识,完成上述1至6项实验内容,并将实验结果写在实验报告上。

六、实验思考题

1.MATLAB软件有哪些功能特点?

MATLAB与C语言语法有和相同之处?

2.在MATLAB语言中“:

”和“;”的含义什么?

实验二MATLAB数值运算实验

(验证型实验)

一、实验目的

l.熟悉Matlab中各类数据,尤其是矩阵的定义、赋值和运用。

2.了解Matlab的矩阵分析函数以及求线性方程组的数值解;

3.熟悉多项式运算函数、数值插值。

二、实验仪器与软件

1.PC机1台

2.MATLAB7.0环境

三、实验原理

1.创建矩阵的方法

a.直接输入法规则:

矩阵元素必须用[]括住;矩阵元素必须用逗号或空格分隔;在[]内矩阵的行与行之间必须用分号分隔。

逗号和分号的作用:

逗号和分号可作为指令间的分隔符,matlab允许多条语句在同一行出现。

分号如果出现在指令后,屏幕上将不显示结果。

b.用matlab函数创建矩阵:

空阵[]—matlab允许输入空阵,当一项操作无结果时,返回空阵;rand——随机矩阵;eye——单位矩阵;zeros——全部元素都为0的矩阵;ones——全部元素都为1的矩阵

c.矩阵的修改:

可用键找到所要修改的矩阵,用键移动到要修改的矩阵元素上即可修改;指令修改:

可以用A(,)=来修改。

2.矩阵运算

a.矩阵加、减(+,-)运算规则:

(1)相加、减的两矩阵必须有相同的行和列两矩阵对应元素相加减。

(2)允许参与运算的两矩阵之一是标量。

标量与矩阵的所有元素分别进行加减操作。

b.矩阵乘(,./,.\)运算规则:

A矩阵的列数必须等于B矩阵的行数

标量可与任何矩阵相乘。

c.矩阵乘方——a^n,a^p,p^a

a^p——a自乘p次幂,对于p的其它值,计算将涉及特征值和特征向量,如果p是矩阵,a是标量,a^p使用特征值和特征向量自乘到p次幂;如a,p都是矩阵,a^p则无意义。

d.多项式运算

matlab语言把多项式表达成一个行向量,该向量中的元素是按多项式降幂排列的。

f(x)=anxn+an-1xn-1+……+loa0

可用行向量p=[anan-1……a1+a0]表示;poly——产生特征多项式系数向量

e.代数方程组求解

matlab中有两种除运算左除和右除。

四、实验内容

1.输入下列向量(矩阵)

>>g=[1234];h=[4321];

2.分别执行以下数组点运算

>>s1=g+h,s2=g.*h,s3=g.^h,s4=g.^2,s5=2.^h

3.输入下列特殊矩阵

〉〉A=[]

〉〉A=eye(10)

〉〉A=ones(5,10)

>>A=rand(10,15)

>>A=randn(5,10)

>>A=zeros(5,10)

4.输入下列矩阵及矩阵函数

>>A=[20–1;132];B=[17–1;423;201];

>>M=A*B%矩阵A与B按矩阵运算相乘

>>det_B=det(B)%矩阵A的行列式

>>rank_A=rank(A)%矩阵A的秩

>>inv_B=inv(B)%矩阵B的逆矩阵

>>[V,D]=eig(B)%矩阵B的特征值矩阵V与特征向量构成的矩阵D

>>X=A/B%A/B=A*B-1,即XB=A,求X

>>Y=B\A%B\A=B-1*A,即BY=A,求Y

5.多项式运算

>>p=[120-56]%表示多项式

>>rr=roots(p)%求多项式p的根

>>pp=poly(rr)%由根的列向量求多项式系数

>>s=[00123]%表示多项式

>>c=conv(p,s)%多项式乘积

>>d=polyder(p)%多项式微分

>>x=-1:

0.1:

2;

>>y=polyval(p,x)%计算多项式的值

6.有理多项式:

>>n=conv([10],[13])%定义分子多项式

>>d=conv([11],[113])%定义分母多项式

>>[r,p,k]=residue(n,d)%进行部分分式展开

>>p1=[1-p

(1)],p2=[1-p2]%定义两个极点多项式p1(s)=s-p

(1),p2(s)=s-p

(2)

>>den=conv(p1,p2)%求分母多项式den=p1(s)*p2(s)

>>num=conv(r1,p2)+conv(r2,p1)%求分子多项式

〉〉[num,den]=residue(r,p,k)%根据r,p,k的值求有理多项式

7.函数插值运算

(1)线形样条插值

〉〉x=0:

10

>>y=sin(x)

>>x0=[3.44.76.58.2]

>>y0=interp1(x,y,x0)%线形插值

>>x1=0:

0.1:

10

>>y1=sin(x1)

>>plot(x1,y1,'r:

',x,y,'b*',x0,y0,'g.')%插值比较

(2)三次样条插值

〉〉x=0:

10

>>y=sin(x)

>>x0=[3.44.76.58.2]

>>y0=interp1(x,y,x0,‘spline’)%线形插值

>>x1=0:

0.1:

10

>>y1=sin(x1)

>>plot(x1,y1,'r:

',x,y,'b*',x0,y0,'g.')%插值比较

五、实验要求

利用所学知识,完成上述1至7项实验内容,并将实验结果写在实验报告上。

六、实验思考题

1.矩阵建立与有哪几种方法?

2.矩阵的加、减、乘、除运算规则什么?

实验三MATLAB符号运算实验

(验证型实验)

一、实验目的

l.了解Matlab的符号数据类型及符号运算工具箱。

2.运用符号数据类型求导数、积分和级数。

3.掌握代数方程和常微分方程的符号求解。

二、实验仪器与软件

1.PC机1台

2.MATLAB7.0环境

三、实验原理

1.符号变量与符号表达式

f='sin(x)+5x';f—符号变量名sin(x)+5x—符号表达式;''——符号标识;符号表达式一定要用''单引号括起来matlab才能识别;''的内容可以是符号表达式,也可以是符号方程。

例:

f1='ax^2+bx+c'——二次三项式

f2='ax^2+bx+c=0'——方程

f3='Dy+y^2=1'——微分方程

符号表达式或符号方程可以赋给符号变量,以后调用方便;也可以不赋给符号变量直接参与运算

2.符号矩阵的创建

a.数值矩阵A=[1,2;3,4]

A=[a,b;c,d]——不识别

b.用matlab函数sym创建矩阵(symbolic的缩写)

命令格式:

A=sym('[]');符号矩阵内容同数值矩阵;需用sym指令定义;需用''标识。

3.符号矩阵运算

数值运算中,所有矩阵运算操作指令都比较直观、简单。

例如:

a=b+c;a=a*b;A=2*a^2+3*a-5等。

而符号运算就不同了,所有涉及符号运算的操作都有专用函数来进行,符号矩阵运算的函数:

symadd(a,d)——符号矩阵的加

symsub(a,b)——符号矩阵的减

symmul(a,b)——符号矩阵的乘

symdiv(a,b)——符号矩阵的除

sympow(a,b)——符号矩阵的幂运算

symsize——求符号矩阵维数

charploy——特征多项式

determ——符号矩阵行列式的值

eigensys——特征值和特征向量

inverse——逆矩阵

transpose——矩阵的转置

jordan——约当标准型

simple——符号矩阵简化

……

四、实验内容

1.符号表达式运算

>>f='2*x-5'%定义符号表达式f

>>g='x^2-x+7'%定义符号表达式g

>>y=symadd(f,g)%求f+g

>>y=symsub(g,f)%求g-f

>>y=symdiv(g,f)%求g/f

>>y=sympow(g,f)%求

〉〉x=3

>>z=eval(y)%求y的值

2.微分和积分

>>f=sym('sin(w*t+pi/3)')%定义函数

>>f1=diff(f,'t')%对时间t的导数

>>f2='cos(2*x)+s^2'

>>int(f2,'s','m','n')%对s求从m到n的定积分

>>f3=taylor(f,'t',4)%在t=0邻域展开泰勒级数的前4项

3.符号表达式画图

>>y='2*x^2-3*x+10'

>>ezplot(y)%自动选择自变量范围绘图

>>ezplot(y,[-10,10])%确定自变量范围绘图

4.符号表达式简化

>>f=sym('cos(x)/(sin(3*x))^2-5^x')

>>pretty(f)%有理分式显示符号表达式

>>f=sym('(x^2-1)*(x-2)')%

>>f1=collect(f)%合并同类项

>>horner(f1)%化成嵌套形式多项式

>>factor(f)%将表达式分解成因式

>>expand(f)%展开表达式成降幂排列形式

>>y=sym('sin(x)^2-2*x+cos(x)^2')

>>simplify(y)%将表达式简化

5.可变精度算术运算

>>pi%已知

的值

>>digits%当前运算缺省位数

>>vpa('pi')%用缺省精度显示

>>vpa('pi',15)%用20位精度显示

6.符号方程求解

(1)解代数方程

>>solve('a*x^2+b*x+c')

>>solve('a*x^2+b*x+c','b')

>>solve('a*x^2=c+b')

>>solve('a*x^2=c+b','b')

(2)解代数方程组

>>f1='x+y+z=2*b'

>>f2='2*x+y+2*z=2*b'

>>f3='2*x+2*y+z=5*b'

>>[xx,yy,zz]=solve(f1,f2,f3,'x,y,z')

(3)解微分方程

>>dsolve('Dy=1+y^2')%求一阶微分方程的通解

>>dsolve('Dy=1+y^2','y(0)=1')%给定初始条件,求特解,缺省变量t

>>dsolve('Dy=1+y^2','y(0)=1','x')%对变量x求特解

>>dsolve('D2y=cos(t)-y','Dy(0)=0','y(0)=1')%解二阶微分方程

(4)解微分方程组

>>[x,y]=dsolve('Dx=3*x+4*y','Dy=-4*x+3*y')%求通解

>>[x,y]=dsolve('Dx=3*x+4*y','Dy=-4*x+3*y','x(0)=0,y(0)=1')

%给定初始条件,求特解

7.符号矩阵和运算

>>y=sym('[cos(t),sin(t);-sin(t),cos(t)]')%定义符号矩阵y

>>yt=transpose(y)%求转置矩阵

>>yy=symmul(y,yt)%计算y*yt

>>simplify(yy)%简化yy

>>inv(y)%求逆矩阵

>>det(y)%计算符号矩阵行列式

>>poly(y)%求解矩阵的特征多项式

五、实验要求

利用所学知识,完成上述1至7项实验内容,并将实验结果写在实验报告上。

六、实验思考题

1.什么是符号变量和符号表达式?

2.符号矩阵和数值矩阵的创建有何异同?

实验四MATLAB图形绘制实验

(验证型实验)

一、实验目的

l.通过图形可以从一堆杂乱的数据中观察数据间的内在关系,感受由图形所传递的内在本质。

本实验主要练习并掌握二维曲线绘图的基本操作。

2.进一步熟悉M文件调试过程。

3.熟悉图形交互指令的使用。

二、实验仪器与软件

1.PC机1台

2.MATLAB7.0环境

三、实验原理

1.二维曲面绘图

plot——最基本的二维图形指令:

plot命令自动打开一个图形窗口Figure,用直线连接相邻两数据点来绘制图形;根据图形坐标大小自动缩扩坐标轴,将数据标尺及单位标注自动加到两个坐标轴上,可自定坐标轴,可把x,y轴用对数坐标表示

a.plot(x)——缺省自变量绘图格式,x为向量,以x元素值为纵坐标,以相应元素下标为横坐标绘图

b.plot(x,y)——基本格式,以y(x)的函数关系作出直角坐标图,如果y为n×m的矩阵,则以x为自变量,作出m条曲线

c.plot(x1,y1,x2,y2)——多条曲线绘图格式

2.三维曲面绘图

plot3——基本的三维图形指令,其调用格式:

plot3(x,y,z)——x,y,z是长度相同的向量

plot3(X,Y,Z)——X,Y,Z是维数相同的矩阵

plot3(x,y,z,s)——带开关量

plot3(x1,y1,z1,'s1',x2,y2,z2,'s2',…)

四、实验内容

1.连续函数的可视化——用图形表示连续调制波形y=sin(t)sin(9t)。

编写m文件并执行,代码如下:

t1=(0:

11)/11*pi;

y1=sin(t1).*sin(9*t1);

t2=(0:

100)/100*pi;

y2=sin(t2).*sin(9*t2);

subplot(2,2,1),plot(t1,y1,'r.'),axis([0,pi,-1,1]),title('子图

(1)')

subplot(2,2,2),plot(t2,y2,'r.'),axis([0,pi,-1,1]),title('子图

(2)')

subplot(2,2,3),plot(t1,y1,t1,y1,'r.')

axis([0,pi,-1,1]),title('子图(3)')

subplot(2,2,4),plot(t2,y2)

axis([0,pi,-1,1]),title('子图(4)')

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

编写m文件并执行,代码如下:

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])

3.采用模型

画一组椭圆。

编写m文件并执行,代码如下:

th=[0:

pi/50:

2*pi]';

a=[0.5:

.5:

4.5];

X=cos(th)*a;

Y=sin(th)*sqrt(25-a.^2);

plot(X,Y)

axis('equal')

xlabel('x'),ylabel('y')

title('AsetofEllipses')

4.显示三维网格曲面

编写m文件并执行,代码如下:

x=-10:

0.5:

10

y=-8:

0.5:

8

[X,Y]=meshgrid(x,y)

Z=sin(sqrt(X.^2+Y

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2