自动控制实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验1 控制系统的复数域数学模型
一实验要求
掌握复数域数学模型即传递函数的表示方法,能够熟练对各种表示进行相互转换。
二实验步骤
(1)熟悉课本41页传递函数的各种表示方法,包括一般形式、零极点形式和部分分式形式。熟悉控制系统中常用的连接方式,包括串联、并联和反馈连接。
(2)掌握在Matlab中各种形式转换的函数:tf2zp();zp2tf();residue()等。
掌握各种连接方式在Matlab中的表示方法:series();parallel();feedback()等。
(3)在Matlab中输入课本42页中例2-16的程序,观察并记录结果。
Num=[2 4];den=[1 9 23 15];
Sys1=tf(num,den)
[z,p,k]=tf2zp(num,den);
Sys2=zpk(z,p,k)
[r,pp,kk]=residue(num,den)
>>Transfer function:
2 s + 4
-----------------------
s^3 + 9 s^2 + 23 s + 15
Zero/pole/gain:
2 (s+2)
-----------------
(s+5) (s+3) (s+1)
r = -0.7500
0.5000
0.2500
pp =-5.0000
-3.0000
-1.0000
kk =[]
(4)在Matlab中输入课本42页中例2-17的程序,观察并记录结果。
num1=[1 1];den1=[1 5 6];sys1=tf(num1,den1);
num2=[1];den2=[1 4];sys2=tf(num2,den2);
精选文库
sys3=tf(1,1);
[num,den]=series(num1,den1,num2,den2); sys=tf(num,den); sysb=feedback(sys,sys3)
Transfer function: s + 1
----------------------- s^3 + 9 s^2 + 27 s + 25
(5)编程实现思考题中所要求的内容。
三 思考题
(1)已知两个系统的传递函数分别为
13
208)54(5)(232+++++=s s s s s s φ 324
()324s s s s φ=+++
在Matlab
num=[5 20 25];den=[1 8 20 13]; sys1=tf(num,den) [z,p,k]=tf2zp(num,den); sys2=zpk(z,p,k)
[r,pp,kk]=residue(num,den)
Transfer function: 5 s^2 + 20 s + 25 ----------------------- s^3 + 8 s^2 + 20 s + 13 Zero/pole/gain: 5 (s^2 + 4s + 5) --------------------- (s+1) (s^2 + 7s + 13) r =1.7857 + 3.5053i 1.7857 - 3.5053i 1.4286 pp = -3.5000 + 0.8660i -3.5000 - 0.8660i -1.0000 kk =[]
(2)已知系统的闭环传递函数为:32
()(5)(3)(1)
s s s s s φ+=+++,将此传递函数在Matlab
中表示成一般形式和部分分式形式。
精选文库
k=3;
z=[-2/3]';
p=[-5 -3 -1]';
sys=zpk(z,p,k)
[num,den]=zp2tf(z,p,k)
[r,p,k]=residue(num,den)
Zero/pole/gain:
3 (s+0.6667)
-----------------
(s+5) (s+3) (s+1)
num =0 0 3 2
den =1 9 23 15
r =-1.6250
1.7500
-0.1250
p =-5.0000
-3.0000
-1.0000
k =[]
(3)控制系统结构图如下图所示,用Matlab求出系统的闭环传递函数。
)s
num1=[1];den1=[1 0];sys1=tf(num1,den1);
k=5;
z=[0]';
p=[-2 -4]';
[num2,den2]=zp2tf(z,p,k);
sys2=tf(num2,den2);
num3=[2 1];den3=[1];sys3=tf(num3,den3);
[num,den]=series(num1,den1,num2,den2);
sys=tf(num,den);
sysb=feedback(sys,sys3)
>>Transfer function:
5 s
-------------------
s^3 + 16 s^2 + 13 s
(4) 控制系统结构图如下图所示,用Matlab求出系统的闭环传递函数。
num1=[1];den1=[1 0];sys1=tf(num1,den1);
num2=[1];den2=[1 0 1];sys2=tf(num2,den2);
[num3,den3]=parallel(num1,den1,num2,den2);sys3=tf(num3,den3);
num4=[2 2];den4=[1 2 5];sys4=tf(num4,den4);
num5=[3];den5=[1 2];sys5=tf(num5,den5);
[num,den]=series(num3,den3,num4,den4);
sys=tf(num,den);
sysb=feedback(sys,sys5)
>>Transfer function:
2 s^4 + 8 s^
3 + 12 s^2 + 10 s + 4
-------------------------------------------------
s^6 + 4 s^5 + 10 s^4 + 20 s^3 + 21 s^2 + 22 s + 6
(5) 控制系统结构图如下图所示,用Matlab分别求出系统的开环和闭环传递函数。
)
num1=[1];den1=[3 1];
num2=[1];den2=[1 0];
[num3,den3]=parallel(num1,den1,num2,den2);
num4=[1 2];den4=[0 1];
num5=[2];den5=[1 1];
[num6,den6]=parallel(num4,den4,num5,den5);
num7=[2 1];den7=[1 3 7];
[num8,den8]=series(num3,den3,num6,den6);
[num,den]=series(num8,den8,num7,den7);sys=tf(num,den)
num9=[3];den9=[1 2];sys9=tf(num9,den9);
sysb=feedback(sys,sys9)
>>Transfer function: