控制系统MATLAB仿真实验指导书Word文件下载.docx

上传人:b****8 文档编号:22274624 上传时间:2023-02-03 格式:DOCX 页数:49 大小:207.97KB
下载 相关 举报
控制系统MATLAB仿真实验指导书Word文件下载.docx_第1页
第1页 / 共49页
控制系统MATLAB仿真实验指导书Word文件下载.docx_第2页
第2页 / 共49页
控制系统MATLAB仿真实验指导书Word文件下载.docx_第3页
第3页 / 共49页
控制系统MATLAB仿真实验指导书Word文件下载.docx_第4页
第4页 / 共49页
控制系统MATLAB仿真实验指导书Word文件下载.docx_第5页
第5页 / 共49页
点击查看更多>>
下载资源
资源描述

控制系统MATLAB仿真实验指导书Word文件下载.docx

《控制系统MATLAB仿真实验指导书Word文件下载.docx》由会员分享,可在线阅读,更多相关《控制系统MATLAB仿真实验指导书Word文件下载.docx(49页珍藏版)》请在冰豆网上搜索。

控制系统MATLAB仿真实验指导书Word文件下载.docx

MATLAB有下列输出

x=

0.33330.0000

如果在矩阵中至少有一个元素不是严格的整数,则有多种可能的输出格式。

显示的输出量可以用【File】菜单的【Preferences】命令设置,或用下列命令加以控制:

formatshort(0.33330.0000)

formatlong(0.333333333333330.00002000000000)

formatshorte(3.3333e-0012.0000e-005)

formatlonge(3.333333333333333e-0012.000000000000000e-005)

9.退出MATLAB时如何保存变量

当退出MATLAB时,工作空间中的所有变量都将消失。

如果在退出之前输入命令save,则所有的变量都被保存在磁盘文件matlab.mat文件中。

当再次进入MATLAB时,命令load将使工作空间恢复到以前的状态。

如果要保存/恢复部分变量,可用如下命令:

save文件名变量名(变量名之间用空格分割)/load文件名

参见save命令的帮助文件。

2.2MATLAB函数

在当前的MATLAB5.0及以上版本中,MATLAB函数的调用格式和其它编程语言是不同的,其典型的调用格式为

[返回变量列表]=func_name(输入变量列表)

其中等号左边的变量为返回变量,等号右边的变量为输入变量。

MATLAB允许在函数调用时返回多个变量。

而一个函数又可以由多种格式进行调用,例如bode()函数可以由下面的格式调用

[mag,phase]=bode(num,den,w)

其中bode()函数用来求取或绘制系统的Bode图,而系统在这里由传递函数分子num和分母den表示,还可以用下面的格式调用此函数

[mag,phase]=bode(A,B,C,D,w)

其中(A,B,C,D)为系统的状态方程模型。

尽管两种调用格式是完全不同的,MATLAB函数还是会自动识别到底是用哪种格式调用该函数的,从而得出正确的结论。

在当前版本的控制系统工具箱中还允许用线性模型对象变量G来描述系统,例如

[mag,phase]=bode(G,w)

MATLAB函数在返回变量的格式上也可以不同,例如若上面的语句中若没有返回变量,则将自动地绘制系统的Bode图,否则返回计算结果数据。

2.3绘制响应曲线

MATLAB具有丰富的获取图形输出的程序集。

命令plot可以产生线性x-y图形(用命令loglog、semilogx、semilogy或polar取代plot,可以产生对数坐标图和极坐标图)。

所有这些命令的应用方式都是相同的,它们只对坐标轴的分度和数据的显示产生影响。

1.X-Y图

如果X和Y是同一长度的向量,则命令

plot(X,Y)

将画出Y值对于X值的关系图。

2.画多条曲线

为了在一幅图上画出多条曲线,采用具有多个自变量的plot命令:

plot(X1,Y1,X2,Y2,…,Xn,Yn)

变量X1,Y1,X2,Y2等等是一些向量对。

每一个X-Y对都可以图解表示出来,因而在一幅图上形成多条曲线。

多重变量的优点是它允许不同长度的向量在同一幅图上显示出来,每一对向量采用不同的线型。

在一幅图上画一条以上的曲线时,也可以利用命令hold。

hold命令可以保持当前的图形,并且防止删除和修改比例尺。

因此,随后的一条曲线将会重叠地画在原曲线上。

再次输入命令hold,会使当前的图形复原。

3.加进网格线、图形标题、X轴标记和Y轴标记

一旦在屏幕上显示出图形,就可以画出网格线,定出图形标题,并且标定x轴标记和y轴标记。

MATLAB中关于网格线、标题、X轴标记和Y轴标记的命令如下:

grid(网格线)

title(图形标题)

xlabel(X轴标记)

ylabel(Y轴标记)

4.在图形屏幕上书写文本

为了在图形屏幕上的点(x,y)书写文本,采用命令:

text(x,y,'

text'

例如,利用语句

text(3,0.45,'

sint'

将从点(3,0.45)开始,水平地写出sint。

5.图形类型

下列语句:

plot(x,y,'

x'

将利用标记符号×

画出一个点状图。

MATLAB能够提供的线和点的类型如下:

线的类型

点的类型

实线

-

圆点

.

短划线

--

加号

+

虚线

:

星号

*

点划线

-.

圆圈

o

×

x

6.颜色

plot(X,Y,'

+g'

表明用绿色“+”号划线。

MATLAB提供的颜色如下:

红色

r

绿色

g

蓝色

b

白色

w

无色

i

参见plot的帮助文件。

7.自动绘图算法

在MATLAB中,图形是自动定标的。

在另一幅图形画出之前,这幅图形作为现行图将保持不变,但是在另一幅图形画出后,原图形将被删除,坐标轴自动地重新定标。

8.手工坐标定标

如果需要在下列语句指定的范围内绘制曲线:

V=[x-minx-maxy-miny-max]

则因输入命令axis(V),式中V是一个四元向量。

axis(V)把坐标轴定在规定的范围内。

2.4MATLAB语言的联机帮助功能

下面的实验中,我们将较为详细地学习使用MATLAB的语言基础和控制系统仿真,但是MATLAB的内容及其丰富,在学习和使用中,可以利用MATLAB的联机帮助功能。

MATLAB的联机帮助既可以由help命令来直接获得,又可以由MATLAB图形界面下的Help菜单来查询,还可以用lookfor命令查询有关的关键词:

>

>

helpplot

lookforplot

3.MATLAB语言基础实验

3.1实验一MATLAB语言平台

一、实验目的

1.学习了解MATLAB语言环境;

2.练习MATLAB命令的基本操作;

3.练习m文件的基本操作。

二、实验内容

1.学习了解MATLAB语言环境

(1)MATLAB语言操作界面

开机双击相应图标即可进入MATLAB命令窗口,如图1.1所示。

在命令提示符位置键入命令,完成下述练习。

图1.1MATLAB窗口

(2)练习DOS相似命令

MATLAB语言与DOS操作系统有如下相似的命令,在操作界面上练习这些命令。

dirdir('

c:

\windows'

typetypeexpm.m

cdcdc:

\matlab6p5\help

(3)MATLAB的数据格式

合法的数据格式有:

short,long,hex,shorte,longe,rational等。

键入

a=pi;

b=exp

(1)

由File/Preferences…改变数据格式,观察变量值。

(4)变量查询

变量查询命令有who,whos,查询变量。

(5)路径函数与搜索路径

path路径函数

which文件定位

路径函数path列出MATLAB自动搜索路径清单,执行该命令。

path(path,'

newpath'

addpath('

用于在搜索路径清单中增加新的路径项,练习该命令。

或由File/SetPath…设置路径。

说明:

在命令窗口键入一命令并按下回车键,MATLAB就在搜索路径中搜索相应的命令文件(内部命令和函数除外),找到后就执行该文件,若未找到,就给出错误提示“File'

xxxx'

notfound.”。

(6)联机帮助

helphelp

阅读help函数的使用说明。

help

列出help项。

查询前面使用过的命令

helpwho

helppath

阅读上述函数的功能、使用格式等。

(7)字符串查询

helplookfor

阅读MATLAB函数lookfor的功能与使用方法,并使用该命令查询相应的关键词字符串。

(8)MATLAB语言演示

demo

MATLAB语言功能演示。

2.练习MATLAB命令的基本操作

(1)键入常数矩阵输入命令

a=[123]

a=[1;

2;

3]

比较显示结果有何不同。

b=[125]

b=[125];

(2)作循环命令程序

makesum=0;

fori=1:

1:

100

makesum=makesum+i;

end

键入makesum,按回车键,观察计算结果。

(3)分别执行下面命令:

a=[123;

456;

780]

poly(a)

rank(a)

det(a)

trace(a)

inv(a)

eig(a)

观察显示结果。

使用联机帮助help查阅相应函数的意义和函数的格式。

3.2实验二MATLAB数值运算

1.学习MATLAB的基本矩阵运算;

2.学习MATLAB的点运算。

在下面的实验操作中,认真执行每项操作,掌握其作用和目的。

1.基本矩阵运算

(1)创建数值矩阵

a=[123;

789];

观察

a(3,2)

a(:

1)

t=0:

10;

u=0:

0.1:

观察向量t,u的值。

3)=[2;

3;

4];

a

观察矩阵a的变化。

b=[11+2i;

3+4i3];

观察复数矩阵。

(2)特殊矩阵

a=ones(3,3);

b=zeros(2,2);

c=eye(4);

magic(4);

观察特殊矩阵。

(3)矩阵运算

a=[010;

001;

-6-11-6];

b=[12;

34;

56];

c=[110;

011];

作矩阵乘运算:

v1=c*a;

v2=a*b;

v3=c*a*b;

v4=b*c;

v5=c*b;

矩阵乘方运算:

a^2

a^(1/2)

矩阵加减运算:

a1=a+b*c;

a2=c*b-a(1:

2,1:

2);

a3=a(1:

2,2:

3)+c*b;

矩阵右除(常规除):

ar=a/b;

矩阵左除:

al=a\b

注意矩阵运算时的维数匹配。

(4)矩阵特征

完成如下矩阵特征运算:

a'

inv(a)diag(a)tril(a)triu(a)

poly(a)rank(a)det(a)trace(a)eig(a)

2.MATLAB的点运算

(1)练习点乘与点除

a1=[12;

34];

a2=0.2*a1;

[a1a2]

[a1.*a2a1./a2]

(点乘与点除是数组运算)

(2)正弦、余弦函数

2*pi/180:

2*pi;

y1=sin(t);

y2=cos(t);

y=y1.*y2;

plot(t,[y'

y1'

y2'

]

(3)复变函数

w=0.1:

2;

g1=(1+0.5*w*i)/(1-0.5*w*i)

g2=(1+0.5*w*i)./(1-0.5*w*i)

plot(g2);

xlabel('

realg2(w)'

);

ylabel('

imageg2(w)'

axis('

square'

3.多项式运算

(1)建立多项式向量

ap=[1331]

b=[-1-2-3]

bp=poly(b)

(2)多项式乘与根

p=conv(ap,bp)

root(p)

(3)多项式运算

a=[1234];

b=[1-1];

c=a+[zeros(1,length(a)-length(b)),b]

poly2str(c,'

polyvalm(a,3)

4.代数方程组

(1)给定方程组

Ax=Bxn×

1,An×

n,Bn×

方程组的解

x=A-1Borx=A\B

方程为

这时不能用第一种方法,A-1只能用于方阵,这时可用广义逆矩阵解:

A=[123;

234];

B=[1;

2];

x=pinv(A)*B

x=

0.8333

0.3333

-0.1667

3.3实验三MATLAB绘图

1.学习MATLAB的各种二维绘图;

2.学习MATLAB的三维绘图;

3.学习MATLAB的绘图修饰(多种绘图,图形注释,绘图颜色,色图矩阵)。

在下面的实验操作中,认真执行每项操作,掌握其作用和目的,每个命令的含义和用法查看帮助文件。

1.基本二维绘图

(1)向量绘图

x=0:

2*pi/100:

2*pi;

y1=sin(2*x);

y2=cos(2*x);

plot(x,y1)

plot(x,y2)

plot(x,y1,x,y2)

保持作图:

plot(x,y1);

holdon

plot(x,y2);

holdoff

矩阵作图:

plot(x'

[y1'

])

设定颜色与线型:

plot(x,y1,'

'

x,y2,'

ro'

多窗口绘图:

figure

(1);

figure

(2);

子图绘图:

subplot(221);

subplot(222);

subplot(223);

plot(x,y1,x,y1+y2)

subplot(224);

plot(x,y2,x,y1-y2)

复变函数绘图:

w=0.01:

0.01:

10;

g=1./(1+2*w*i);

subplot(121);

plot(g)

subplot(122);

plot(real(g),imag(g))

插值绘图:

2*pi/8:

y=sin(x);

plot(x,y,'

holdon;

xi=0:

yi=spline(x,y,xi);

plot(xi,yi,'

m'

反白绘图与绘图背景色设定:

whitebg

whitebg('

b'

k'

(2)函数绘图

fplot('

sin'

[04*pi])

f='

sin(x)'

;

fplot(f,[04*pi])

sin(1/x)'

[0.010.1],1e-3)

[tan(x),sin(x),cos(x)]'

[-2*pi,2*pi,-2*pi,2*pi])

(3)符号函数快捷绘图:

exp(-0.5*x)*sin(x)'

ezplot(f,[0,10])

x^2+y^2-9'

ezplot(f)

axisequal

2.多种二维绘图

(1)半对数绘图(频率特性绘图)

w=logspace(-1,1);

横坐标对数分度

g=20*log10(1./(1+2*w*I))幅值纵坐标取分贝

p=angle(1./(1+2*w*I))*180/pi相角纵坐标取度

subplot(211);

semilogx(w,g);

grid;

幅频特性子图,半对数绘图,加网线

subplot(212);

semilogx(w,p);

相频特性子图,半对数绘图,加网线

(2)极坐标绘图

mo=cos(2*t);

polar(t,mo);

(3)直方图绘图

y=sin(t);

bar(t,y);

(4)离散棒图

stem(t,y);

(5)阶梯图

stairs(t,y);

(6)彗星绘图

t=-pi:

pi/200:

pi;

comet(t,tan(sin(t))-sin(tan(t)));

3.图形注释

[sin(t),cos(t)]'

[0,5]);

title('

曲线'

时间t'

幅值y'

gtext('

正弦函数'

余项函数'

grid

4.三维绘图

(1)三维线图

pi/50:

10*pi;

plot3(sin(t),cos(t),t);

comet3(sin(t),cos(t),t);

(2)单变量高度网线图

Z2=[11;

1–1];

Z4=[Z2Z2;

Z2–Z2];

Z8=[Z4Z4;

Z4–Z4];

mesh(Z8)

(3)3变量马鞍面网线图

x=-4:

0.5:

4;

y=x;

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

Z=X.^2-Y.^2;

mesh(X,Y,Z)

(4)圆锥面网线图

t1=0:

0.9;

t2=0:

2;

r=[t1,-t2+2];

[x,y,z]=cylinder(r,40);

mesh(x,y,z)

(5)视角修饰

subplot(2,2,1);

mesh(x,y,z);

view(0,0);

subplot(2,2,2);

view(-20,20);

subplot(2,2,3);

view(-30,30);

subplot(2,2,4);

view(-40,40);

(6)暖色(hot)色图

peaks(20);

off'

colormap(hot);

colorbar('

horiz'

(7)光照修饰

surfl(peaks(20));

colormap(gray);

shadinginterp;

(8)透视与消隐

P=peaks(30);

mesh(P);

hiddenoff;

hiddenon;

3.4实验四MATLAB句柄绘图

1.学习图形对象(griphics)和句柄(handle)的基本知识;

2.学习图形对象属性(objectproperties)的获得与设置;

3.基本句柄绘图(handlegriphics)操作;

二、句柄绘图的基本原理

1.基本图形对象

根屏幕(Root)

图形窗口(Figure)

界面控制(Uicontrol)

界面菜单(Uimenu)

轴(Axes)

线(Line)

块(Patch)

面(Surface)

像(Image)

字(Text)

2.图形对象创建函数

h=figure(n);

n为窗口号数

h=uicontrol('

property'

value);

确定控制类型

h=uimenu('

确定菜单形式

h=axes('

position'

[left,bottom,width,height]);

丁一周对象的位置与大小

h=line(x,y,z);

x,y用于二维画线,x,y,z用于三维画线

h=patch(x,y,z,c);

x,y,z定义多边形,c确定填充

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

当前位置:首页 > 成人教育 > 自考

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1