实验六 MATLAB用于采样控制系统
一、实验目的
1、熟悉MATLAB的数学模型处理
2、掌握用MATLAB分析采样控制系统的动态响应 3、掌握用MATLAB判断采样控制系统的稳定性判定 二、预备知识
自学课本“6线性离散系统的分析”小节的预备知识以及例7-31;掌握用c2d命令实现离散化;掌握用step、impulse、lsim函数命令来实现离散系统时域分析,进而判别系统的稳定性。 三、实验内容
1、完成p355的习题7-9、7-13、7-15。 7-9 (a)
G1=zpk([],[-2],[2]) G2=zpk([],[-5],[5]) G=G1*G2
Gz1=c2d(G,0.2,'zoh') Gz2=c2d(G,0.2,'zoh') Zero/pole/gain: 2 ----- (s+2)
Zero/pole/gain: 5 ----- (s+5)
Zero/pole/gain: 10 ----------- (s+2) (s+5) Zero/pole/gain: 0.12805 (z+0.6274) --------------------- (z-0.6703) (z-0.3679)
Sampling time: 0.2 Zero/pole/gain: 0.12805 (z+0.6274) --------------------- (z-0.6703) (z-0.3679)
Sampling time: 0.2 >>
(b)
G1=zpk([],[-2],[2]) G2=zpk([],[-5],[5]) G=G1*G2
Gz=c2d(G,0.5,'zoh') Zero/pole/gain: 2 ----- (s+2)
Zero/pole/gain: 5
----- (s+5)
Zero/pole/gain: 10 ----------- (s+2) (s+5) Zero/pole/gain: 0.44159 (z+0.314) ---------------------- (z-0.3679) (z-0.08208)
Sampling time: 0.5 >>
7-13 (1)
den1=[1 1] den2=[1 0.5] den3=[1 2]
A=conv(den3,conv(den1,den2)) den1 =
1 1 den2 =
1.0000 0.5000 den3 =
1 2 A =
1.0000 3.5000 3.5000 1.0000 >>r=roots(A) r =
-2.0000 -1.0000 -0.5000 >>
(2)
>> A=[1 0.2 1 0.36 0.8] A =
1.0000 0.2000 1.0000
>> r=roots(A) r =
0.4000 + 0.9165i 0.4000 - 0.9165i -0.5000 + 0.7416i -0.5000 - 0.7416i >>
(3)
t=5:0.01:5
G=tf([22.57],[1 1 0 0]) figure(1)
0.3600 0.8000
nyquist(G) axis equal
Nyquist Diagram2000150010005000-500-1000-1500-2000-6000-5000-4000-3000Real Axis-2000-10000Imaginary Axis
由图知系统不稳定.
7-15
T=0.2 k=10
G1=zpk([],[0 0],[k]) G2=zpk([-2],[],[0.5]) G=G1*G2
Gz=c2d(G,T,'zoh') T =
0.2000 k =
10
Zero/pole/gain: 10 --- s^2
Zero/pole/gain: 0.5 (s+2)
Zero/pole/gain: 5 (s+2) ------- s^2
Zero/pole/gain: 1.2 (z-0.6667) -------------- (z-1)^2
Sampling time: 0.2 >>
由于V=2,所以ka=inf kp=inf kv=0.4 Ess=T^2/ka=0.1
2、完成p356的习题7-16。 7-16
T=0.1 k=1
G=zpk([],[0 1],[k])
Gz=c2d(G,T,'zoh') T =
0.1000 k = 1
Zero/pole/gain: 1 ------- s (s-1)
Zero/pole/gain: 0.0051709 (z+1.034) ------------------- (z-1) (z-1.105)
Sampling time: 0.1 >>
由于V=1
得ka=0,kp=inf,kv=1 得ess=T/kv=1