MATLAB控制工具箱的应用及线性系统的运动分析.docx
- 文档编号:6142132
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:18
- 大小:151.64KB
MATLAB控制工具箱的应用及线性系统的运动分析.docx
《MATLAB控制工具箱的应用及线性系统的运动分析.docx》由会员分享,可在线阅读,更多相关《MATLAB控制工具箱的应用及线性系统的运动分析.docx(18页珍藏版)》请在冰豆网上搜索。
MATLAB控制工具箱的应用及线性系统的运动分析
实验报告
课程线性系统理论基础实验日期年月日
专业班级姓名学号同组人
实验名称MATLAB控制工具箱的应用及线性系统的运动分析
评分批阅教师签字
一、实验目的
1、学习掌握MATLAB控制工具箱中的基本命令的操作方法;
2、掌握线性系统的运动分析方法。
二、实验内容
(1)自选控制对象模型,应用以下命令,并写出结果。
1)step,damp,pzmap,rlocus,rlocfind,bode,margin,nyquist;
2)tf2ss,ss2tf,tf2zp,zp2ss;
3)ss2ss,jordan,canon,eig。
(2)掌握线性系统的运动分析方法
1)已知
,求
。
(用三种方法求解)
2)利用MATLAB求解书上例2.8题,并画出状态响应和输出响应曲线,求解时域性能指标。
(加图标题、坐标轴标注及图标)
3)利用MATLAB求解书上例2.12题(
),并画出状态响应和输出响应曲线。
(加图标题、坐标轴标注及图标)
4)P361.4
(2)1.5(3);P562.3(3)
三、实验环境
1、计算机120台;
2、MATLAB6.X软件1套。
四、实验原理(或程序框图)及步骤
1、学习掌握MATLAB控制工具箱中基本命令的操作
设系统的模型如式(1-1)所示:
(1-1)
其中A为n×n维系数矩阵;B为n×m维输入矩阵;C为p×n维输出矩阵;D为p×m维传递矩阵,一般情况下为0。
系统的传递函数阵和状态空间表达式之间的关系如式(1-2)所示:
(1-2)
式(1-2)中,
表示传递函数阵的分子阵,其维数是p×m;
表示传递函数阵的分母多项式,按s降幂排列的后,各项系数用向量表示。
五、程序源代码
(1)自选控制对象模型,应用以下命令,并写出结果。
1)step,damp,pzmap,rlocus,rlocfind,bode,margin,nyquist;
Step(系统单位阶跃响应)
程序:
num=[1,4];
den=[1,2,8];
step(num,den)
Damp(计算系统模型的固有频率)
程序:
num=[1];
den=[1,10,10];
sys=tf(num,den);
[wzeta]=damp(sys)
w=
3.8730
3.8730
zeta=
0.6455
0.6455
Pzmap:
(绘制连续系统的零极点图)
程序:
H=tf([1-13],[21-1]);
pzmap(H)
Rlocus:
(求系统根轨迹)
程序:
num=[0001];
den=conv([10],[14+sqrt(-1)]);
den=conv(den,[14-sqrt(-1)]);
rlocus(num,den);
v=[-41-22];
axis(v);
Rlocfind:
确定闭环根位置对应增益值K的函数rlocfind()
程序:
G=tf([1,5,6],[1,8,3,25]);
rlocus(G);
[k,r]=rlocfind(G)
G_c=feedback(G,1);
Bode:
计算给定线性系统的伯德图
程序:
num=[1,4];
den=[1,2,8];
bode(num,den)
Margin:
从频率响应数据中计算出幅值裕度、相角裕度以及对应的频率
num=[4];
den=[121];
margin(num,den),grid;
w=0.1:
1000;
[mag,phase,w]=bode(num,den);
Nyquist:
绘制系统奈氏图
n=[0011];
m=[1200];
sys=tf(n,m);
nyquist(sys);
2)tf2ss,ss2tf,tf2zp,zp2ss;
tf2ss:
传递函数阵转换为状态空间模型
num=[0153];
den=[1234];
[A,B,C,D]=tf2ss(num,den)
A=
-2-3-4
100
010
B=
1
0
0
C=
153
D=
0
Ss2tf:
状态空间模型转换为状态空间
A=[010;001;-4-3-2];
B=[1;3;-6];
C=[100];
D=0;
[num,den]=ss2tf(A,B,C,D,1)
num=
01.00005.00003.0000
den=
1.00002.00003.00004.0000
Tf2zp:
将系统的传递函数形式转换为零点,极点,增益形式
num=[0153];
den=[1234];
[z1,p1,k1]=tf2zp(num,den)
z1=
-4.3028
-0.6972
p1=
-1.6506+0.0000i
-0.1747+1.5469i
-0.1747-1.5469i
k1=
1
Zp2ss:
将系统零极点形式转换为传递函数形式
z=[-2-3];
p=[0;-1;-3;-5];
k=3;
[A,B,C,D]=zp2ss(z,p,k)
A=
-8.0000-3.873000
3.8730000
-3.0000-2.3238-1.00000
001.00000
B=
1
0
1
0
C=
0003
D=
0
3)ss2ss,jordan,canon,eig。
Ss2ss:
线性非奇异变换
A=[010;001;-4-3-2];
B=[1;3;-6];
C=[100];
D=0;
P=[111;-1-2-3;149];
sys_in=ss(A,B,C,D);
sys_out=ss2ss(sys_in,inv(P))
sys_out=
a=x1x2x3
x1-217
x22-4-14
x3-114
b=u1
x17.5
x2-9
x32.5
c=x1x2x3
y1111
d=u1
y10
Continuous-timestate-spacemodel.
Jordan:
将广义特征向量计算矩阵对应的约旦向量
A=[010;001;-4-3-2];
J=jordan(A)
J=-1.6506+0.0000i0.0000+0.0000i0.0000+0.0000i
0.0000+0.0000i-0.1747-1.5469i0.0000+0.0000i
0.0000+0.0000i0.0000+0.0000i-0.1747+1.5469i
Canon:
规范形转换函数
num_1=[121];
den_1=[156];
sys_1=tf(num_1,den_1,-1)
sys_can_ss=canon(sys_1,'model')
sys_1=
z^2+2z+1
-------------
z^2+5z+6
Sampletime:
unspecified
Discrete-timetransferfunction.
sys_can_ss=
a=x1x2
x1-30
x20-2
b=u1
x1-7.211
x2-5.657
c=x1x2
y10.5547-0.1768
d=
u1
y11
Sampletime:
unspecified
Discrete-timestate-spacemodel%即为所求的模型的对角线规范形实现
Eig:
求矩阵的全部特征值
A=[010;001;-4-3-2];
D=eig(A)
D=
-1.6506+0.0000i
-0.1747+1.5469i
-0.1747-1.5469i
(2)掌握线性系统的运动分析方法
1)已知
,求
。
(用三种方法求解)
法一:
状态转移矩阵的指数矩阵计算法
a=[01;-2-3];
symst;
eat1=expm(a*t)
法二:
拉氏反变换计算法
a=[01;-2-3];
symsst;
G=inv(s*eye(size(a))-a)
eat2=ilaplace(G)
G=
[(s+3)/(s^2+3*s+2),1/(s^2+3*s+2)]
[-2/(s^2+3*s+2),s/(s^2+3*s+2)]
法三:
非奇异变换法
a=[01;-2-3];
symst;
[P,D]=eig(a);
Q=inv(P);
eat3=P*expm(D*t)*Q
2)利用MATLAB求解书上例2.8题,并画出状态响应和输出响应曲线,求解时域性能指标。
(加图标题、坐标轴标注及图标)
a=[-10;0-2;];b=[1;1]
c=[1.50.5];d=0;
G=ss(a,b,c,d);
x0=[2;3]
symsst;
G0=inv(s*eye(size(a))-a);
x1=ilaplace(G0)*x0
G1=inv(s*eye(size(a))-a)*b
x2=ilaplace(G1/s)
x=x1+x2
y=c*x
forI=1:
61
tt=0.1*(I-1)
xt(:
I)=subs(x(:
),'t',tt)
yt(I)=subs(y,'t',tt)
end
plot(0:
60,[xt;yt])
3)利用MATLAB求解书上例2.12题(
),并画出状态响应和输出响应曲线。
(加图标题、坐标轴标注及图标)
G=[01;-0.16-1]
h=[1;1]
x0=[1;-1]
symsznk
thta=inv(z*eye(size(G))-G)*z
thtak=iztrans(thta,k)
uz=z/(z-1)
xk=iztrans(thta*x0+thta/z*h*uz)
4)P361.4
(2)1.5(3);P562.3(3)
1.4
(2)
A=[214;020;001]
B=[10;34;21]
C=[351]
D=[00]
[num,den]=ss2tf(A,B,C,D,1)
验证:
num=[020.000055.0000-4.0000]
den=[12-4-8]
[A,B,C,D]=tf2ss(num,den)
num=02055-4
den=12-4-8
1.5(3)
num=[1422;0311]
den=[1232]
[A,B,C,D]=tf2ss(num,den)
2.3
a=[01;-6-5]
b=[1;0]
c=[1-1]
d=0
G=ss(a,b,c,d)
x0=[1;1]
symsst
G0=inv(s*eye(size(a))-a)
x1=ilaplace(G0)*x0
G1=inv(s*eye(size(a))-a)*b
x2=ilaplace(G1/s)
x=x1+x2
y=c*x
六、实验数据、结果分析
(2)掌握线性系统的运动分析方法
1)已知
,求
。
(用三种方法求解)
eat1=
[-exp(-2*t)+2*exp(-t),exp(-t)-exp(-2*t)]
[-2*exp(-t)+2*exp(-2*t),2*exp(-2*t)-exp(-t)]
eat2=
[-exp(-2*t)+2*exp(-t),exp(-t)-exp(-2*t)]
[-2*exp(-t)+2*exp(-2*t),2*exp(-2*t)-exp(-t)]
eat3=
[-exp(-2*t)+2*exp(-t),exp(-t)-exp(-2*t)]
[-2*exp(-t)+2*exp(-2*t),2*exp(-2*t)-exp(-t)]
2)利用MATLAB求解书上例2.8题,并画出状态响应和输出响应曲线,求解时域性能指标。
(加图标题、坐标轴标注及图标)
3)利用MATLAB求解书上例2.12题(
),并画出状态响应和输出响应曲线。
(加图标题、坐标轴标注及图标)
G=01.0000
-0.1600-1.0000
h=1
1
x0=1
-1
thta=
[25*z*(z+1)/(25*z^2+25*z+4),25*z/(25*z^2+25*z+4)]
[-4*z/(25*z^2+25*z+4),25*z^2/(25*z^2+25*z+4)]
thtak=
[4/3*(-1/5)^k-1/3*(-4/5)^k,5/3*(-1/5)^k-5/3*(-4/5)^k]
[-4/15*(-1/5)^k+4/15*(-4/5)^k,-1/3*(-1/5)^k+4/3*(-4/5)^k]
uz=z/(z-1)
xk=
[-17/6*(-1/5)^n+22/9*(-4/5)^n+25/18]
[17/30*(-1/5)^n-88/45*(-4/5)^n+7/18]
4)P361.4
(2)
num=020.000055.0000-4.0000
den=12-4-8
验证:
A=-248
100
010
B=1
0
0
C=2055-4
D=0
1.5(3);
num=1422
0311
den=1232
A=-2-3-2
100
010
B=1
0
0
C=2-10
311
D=1
0
P562.3(3)
a=01
-6-5
b=1
0
c=1-1
d=0
a=x1x2
x101
x2-6-5
b=u1
x11
x20
c=x1x2
y11-1
d=u1
y10
Continuous-timemodel.
x0=1
1
G0=
[(s+5)/(s^2+5*s+6),1/(s^2+5*s+6)]
[-6/(s^2+5*s+6),s/(s^2+5*s+6)]
x1=
[-3*exp(-3*t)+4*exp(-2*t)]
[-8*exp(-2*t)+9*exp(-3*t)]
G1=
[(s+5)/(s^2+5*s+6)]
[-6/(s^2+5*s+6)]
x2=
[2/3*exp(-3*t)-3/2*exp(-2*t)+5/6]
[-1+3*exp(-2*t)-2*exp(-3*t)]
x=
[-7/3*exp(-3*t)+5/2*exp(-2*t)+5/6]
[-5*exp(-2*t)+7*exp(-3*t)-1]
y=
-28/3*exp(-3*t)+15/2*exp(-2*t)+11/6
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 控制 工具箱 应用 线性 系统 运动 分析
![提示](https://static.bdocx.com/images/bang_tan.gif)