《MATLAB及应用》实验指导书DOC.docx
《《MATLAB及应用》实验指导书DOC.docx》由会员分享,可在线阅读,更多相关《《MATLAB及应用》实验指导书DOC.docx(22页珍藏版)》请在冰点文库上搜索。
《MATLAB及应用》实验指导书DOC
MATLAB及应用
实验指导书
实验一MATLAB使用基础
一、实验目的
1、熟悉MATLAB基本的操作界面。
2、掌握MATLAB中变量、数组、向量等对象的生成方法。
3、掌握符号矩阵的生成和基本运算方法。
4、掌握MATLAB中平面绘图方法。
5、掌握MATLAB中的常用帮助命令使用方法。
二、实验设备
计算机,MATLAB语言环境
三、实验基础理论
1、常见数学函数
2、系统的在线帮助
(1)help命令:
1).当不知系统有何帮助内容时,可直接输入help以寻求帮助:
>>help(回车)
2).当想了解某一主题的内容时,如输入:
>>helpsyntax(了解Matlab的语法规定)
3).当想了解某一具体的函数或命令的帮助信息时,如输入:
>>helpsqrt(了解函数sqrt的相关信息)
(2)lookfor命令
现需要完成某一具体操作,不知有何命令或函数可以完成,如输入:
>>lookforline(查找与直线、线性问题有关的函数)
3、常量与变量
系统的变量命名规则:
变量名区分字母大小写;变量名必须以字母打头,其后
可以是任意字母,数字,或下划线的组合。
此外,系统内部预先定义了几个有特殊意
义和用途的变量,见下表:
(1)数值型向量(矩阵)的输入
1).任何矩阵(向量),可以直接按行方式输入每个元素:
同一行中的元素用逗号(,)
或者用空格符来分隔;行与行之间用分号(;)分隔。
所有元素处于一方括号([]内;
例1:
>>Time=[111212345678910]
>>X_Data=[2.323.43;4.375.98]
2).系统中提供了多个命令用于输入特殊的矩阵:
4、数组(矩阵)的点运算
运算符:
+(加)、-(减)、./(右除)、.\(左除)、.^(乘方),
例2:
>>g=[1234];h=[4321];
>>s1=g+h,s2=g.*h,s3=g.^h,s4=g.^2,s5=2.^h
5、矩阵的运算
运算符:
+(加)、-(减)、*(乘)、/(右除)、\(左除)、^(乘方)、’(转置)等;
常用函数:
det(行列式)、inv(逆矩阵)、rank(秩)、eig(特征值、特征向量)、rref
(化矩阵为行最简形)
例3:
>>A=[20–1;132];B=[17–1;423;201];
>>M=A*B%矩阵A与B按矩阵运算相乘
>>det_B=det(B)%矩阵A的行列式
>>rank_A=rank(A)%矩阵A的秩
>>X=A/B%矩阵右除,A/B是B左乘A的逆
>>Y=B\A%矩阵左除,B\A其计算结果是矩阵B的逆和矩阵A相乘
6、平面绘图
MATLAB能绘制表现非常丰富的平面图形,以下是一些常用的MATLAB绘图函数,以绘制不同平面图元和实现不同的平面图形绘制功能:
可以使用gridon绘图网格线和holdon同时绘制两个图形,还可以给图形加上各种注解和
处理:
例4:
>>x=-2*pi:
pi/10:
2*pi;
>>y=sin(x);
>>plot(x,y,’r*:
’)
>>gridon%绘制网格线
>>holdon
>>y2=2*cos(x);
>>plot(x,y2,’b+-‘)
>>xlabel('x轴');%x轴注解
>>ylabel('y轴');%y轴注解
>>title('正弦和余弦函数');%图形标题
>>legend({'y=sin(x)','y2=cos(x)'});%图形注解
(2).MATLAB还可以在同一图形窗口完成多个子图的功能,如:
>>x=-2*pi:
pi/10:
2*pi;
>>y=sin(x);
>>y2=cos(x);
>>y3=2*cos(x);
>>y4=sin(x)+cos(x);
>>subplot(2,2,1);
>>plot(x,y,‘r*:
’)
>>subplot(2,2,2);
>>plot(x,y2,‘b+-’)
>>subplot(2,2,3);
>>plot(x,y3,‘gp:
’)
>>subplot(2,2,4)
>>plot((x,y4,‘kx’)
四、实验内容与步骤:
1.练习数据和符号的输入方式,将前面的命令在命令窗口中执行通过;
2.输入A=[715;256;315],B=[111;222;333],在命令
窗口中执行下列表达式,掌握其含义:
A(2,3)A*BA.*BA^2A.^2B/AB./A
3.输入C=1:
2:
20,则C(i)表示什么?
其中i=1,2,3,…,10;
4.建立全1矩阵(ones);建立对角线为1的矩阵(eye)
zeros(3)ones(2,3)
5..练习把y=sin(x)./x,z=cos(x),u=2*sin(x),v=sin(x)./cos(x)在[0,2π]区间内的四个子图分别用不同的颜色、点型和线型绘制在同一个窗口中,并给其中加上纵坐标,标题、图例和网格线。
>>A=[715;256;315];B=[111;222;333];
>>A(2,3);
>>A(2,3)
ans=
6
>>A*B
ans=
242424
303030
202020
>>A^2
ans=
661766
423370
381346
>>A.^2
ans=
49125
42536
9125
>>B/A
ans=
0.18420.2105-0.2368
0.36840.4211-0.4737
0.55260.6316-0.7105
>>B./A
ans=
0.14291.00000.2000
1.00000.40000.3333
1.00003.00000.6000
>>C=1:
2:
20
C=
135791113151719
>>ones(3)
ans=
111
111
111
>>zeros(3)
ans=
000
000
000
>>ones(2,3)
ans=
111
111
x=-2*pi:
pi/10:
2*pi;
>>y=sin(x)./x;
>>z=cos(x);
>>u=2*sin(x);
>>v=sin(x)./cos(x);
>>subplot(2,2,1);
plot(x,y,'rp')
subplot(2,2,2);
>>plot(x,z,'b*')
subplot(2,2,3);
plot(x,u,'g:
')
>>subplot(2,2,4);
>>plot(x,v,'y-')
五、实验报告要求:
1、简述实验目的、实验原理、实验内容和实验过程
2、总结实验中的主要结论、实践技能和心得体会
3、附上实验过程中所用的程序
实验二控制系统的时域分析
一、实验目的
1、熟悉控制系统的时域分析方法;
2、掌握常用连续信号的MATLAB描述方法;
3、掌握控制系统的时域响应的MATLAB编程求解方法;
4、利用MATLAB为工具,通过控制系统定性及定量分析了解参数变化对动态特性的影响。
二、实验设备
计算机,MATLAB语言环境
三、实验内容与步骤:
1:
已知系统模型如下:
MATLAB编程求出该系统在单位速度信号、单位加速度、正弦信号、方波的响应曲线。
num=[251];
den=[1,2,3];
G=tf(num,den);
t=0:
0.1:
8;
r=t;
lsim(G,r,t)
figure
(2)
num=[251];
den=[1,2,3];
G=tf(num,den);
r=1/2*t.^2;
lsim(G,r,t)
figure(3)
[u,t]=gensig('sin',4,20,0.2);
G=tf([251],[123]);
lsim(G,u,t)
figure(4)
[u,t]=gensig('square',4,20,0.2);
G=tf([251],[123]);
lsim(G,u,t)
2:
典型二阶系统如下所示:
其中ωn为自然频率,ζ为阻尼系数。
要求:
(1)仿真观察
对时域响应的影响。
实验参数选择:
自然频率wn=2,阻尼比ζ=-0.1,0,0.2,1,2
(2)仿真观察附加闭环零点对时域响应的影响:
附加零点,设系统传递函数为
参数设置:
自然频率wn=2,阻尼比ζ=0.5,附加零点:
Z=-10,-2,-0.25
wn=2
zn=[-0.100.212]
t=0:
0.1:
9
holdon
fori=1:
length(zn)
sys=tf(wn^2,[1,2*zn(i)*wn,wn^2])
step(sys,t)
end
holdoff
gridon
gtext('sigma=-0.1');gtext('sigma=0');gtext('sigma=0.2');
gtext('sigma=1');gtext('sigma=2');
zeta=0.5;
wn=[2];
r=[0.1,0.5,4];
t=0:
0.1:
6;
holdon
fori=1:
length(r)
sys1=tf(wn^2/r(i),[1,2*zeta*wn,wn^2]);
sys2=tf([1r(i)],[1]);
sys=sys1*sys2;
subplot(2,2,i);
step(sys,t)
end
holdoff
gridon
gtext('zero=-10');
gtext('zero=-2');
gtext('zero=-0.25');
holdon
subplot(2,2,4);
step(sys1);
gtext('原始系统');
四、实验报告要求:
1、简述实验目的、实验原理、实验内容和实验过程
2、总结出二阶系统参数变化对时域系统响应特性影响的规律。
3、总结实验中的主要结论、实践技能和心得体会
4、附上实验过程中所用的程序。
实验三控制系统的根轨迹图
一、实验目的
1、熟悉控制系统的根轨迹图分析方法;
2、掌握控制系统的根轨迹图的MATLAB编程求解方法;
3、利用MATLAB为工具,通过根轨迹图分析控制系统性能。
二、实验设备
计算机,MATLAB语言环境
3、实验内容与步骤:
利用MATLAB编程绘制下例各控制系统根轨迹:
1、G(s)=ks/(s2+2s+2);
2、G(s)=(s3+s2+4)/(s3+3s2+7s);
3、G(s)=k(s2+2s+4)/[s(s+4)(s+6)(s2+1.4s+1)]
4、.给定控制系统如下图,其中K
0:
画出系统的根轨迹图,
1)准确记录根轨迹的起点、终点与根轨迹条数;
2)确定根轨迹的分离点与相应的K值;
3)确定稳定时的K取值范围;
4)分析K取值对系统阻尼特性的影响。
num=[10];
den=[122];
rlocus(num,den)
num=[114];
den=[1370];
rlocus(num,den)
num=[conv([10],[124])];
den=[conv(conv(conv([10],[14]),[16]),[11.41])];
rlocus(num,den)
控制系统框图
4、一种具有高性能的机器手的微型机器人的传递函数为:
z=[-1-2-3];
p=[0001];
k=1;
sys=zpk(z,p,k);
rlocus(sys)
(1)画出系统的根轨迹图。
(2)求使闭环系统稳定的增益范围。
四、实验报告要求迹图;
1、简述实验目的、实验原理、实验内容和实验过程
2、总结实验中的主要结论、实践技能和心得体会,总结出MATLAB对系统轨迹分析的帮助
3、附上实验过程中所用的程序。
实验四控制系统的频率特性分析
一、实验目的
1、熟悉控制系统的频域分析方法;
2、掌握控制系统伯德图和奈奎斯特图的MATLAB编程求解方法;
3、以MATLAB为工具,利用频域分析法分析控制系统性能。
二、实验设备
计算机,MATLAB语言环境
三、实验内容与步骤:
利用MATLAB编程绘制下例各控制系统伯德图和奈奎斯特图:
1、G=1/[s(s+1)];
2、G(s)=(2s2)/[(0.04s+1)(0.4s+1)];
3、一系统开环传递函数为:
,绘制系统伯德图,并求出系统的相角稳定裕量和幅值稳定裕量。
4、已知单位负反馈控制系统开环传递函数为:
,试用奈奎斯特稳定判据判定开环放大系数K为10和50时闭环系统的稳定性,并求系统脉冲响应。
四、实验报告要求:
1、简述实验目的、实验原理、实验内容和实验过程
2、总结实验中的主要结论、实践技能和心得体会,总结出MATLAB对系统频域分析的帮助
3、附上实验过程中所用的程序。
1
num=1
den=[110]
bode(num,den)
figure
(2)
nyquist(num,den)
2
num=[200]
den=conv([0.041],[0.41])
bode(num,den)
figure
(2)
nyquist(num,den)
3
num=500*[0.01671]
den=conv(conv(conv([0.00251],[0.0011]),[0.051]),[10])
G0=tf(num,den)
w=logspace(0,4,50)
bode(G0,w)
margin(G0)
[Gm,Pm,wcp]=margin(G0)
4
num=10
num0=50
den=conv([11],conv([0.51],[0.21]))
[num1,den1]=feedback(num,den,1,1)
[num2,den2]=feedback(num0,den,1,1)
figure
nyquist(num,den)
figure
nyquist(num0,den)
figure
impulse(num1,den1,20)
figure
impulse(num2,den2,20)
开环放大系数K为10
开环放大系数K为50
实验五控制系统的校正
一、实验目的
1、学习控制系统工具箱Simulink;
2、建立SIMULINK动态结构图对控制系统进行串联超前校正实验;
3、建立SIMULINK动态结构图对控制系统进行PID参数整定实验。
二、实验设备
计算机,MATLAB语言环境
三、实验内容与步骤:
1、串联超前校正实验:
1)设控制系统如图所示,建立Simulink动态结构图,观察其响应曲线。
2)加入超前校正装置,进行串联超前校正设计,观察响应曲线,进行校正前后系统性能指标对比。
2、PID参数整定
2.已知被控对象传递函数为
试用Z-N整定方法确定PID控制器的参数,并绘制整定后系统阶跃响应曲线。
四、实验报告要求:
1、简述实验目的、实验原理、实验内容和实验过程
2、超前校正对改善系统性能有什么作用?
什么情况下不宜采用串联超前校正?
3、调整PID各参数对系统性能有什么影响?