Page 1
Sinh viên :Mai Thế Hòa
MSSV:20081090
Lớp :TDH1-K53
Bài Thực Hành Số 1
Tìm mô hình gián đoạn của ĐCMC
>> Ra=0.25;La=0.004;J=0.012;ke=236.8;km=38.2;fi=0.04;
>> Ta=La/Ra;
>> Wh=1/Ra *tf(1,[Ta 1])*km*fi*tf(1,[2*3.14*J 0])
Transfer function:
6.112
------------------------
0.001206 s^2 + 0.07536 s
>> Wk=feedback(Wh,ke*fi)
Transfer function:
6.112
--------------------------------
0.001206 s^2 + 0.07536 s + 57.89
>> step(Wk)
1
Page 2
>> Wz1=c2d(Wk,0.1e-3)
Transfer function:
2.529e-005 z + 2.524e-005
-------------------------
z^2 - 1.993 z + 0.9938
Sampling time: 0.0001
>> step(Wz1)
2
Page 3
>> Wz2=c2d(Wk,0.01e-3)
Transfer function:
2.534e-007 z + 2.533e-007
-------------------------
z^2 - 1.999 z + 0.9994
Sampling time: 1e-005
>> step(Wz2)
3
Page 4
Cách chuyển sang miền rời rạc tính bằng tay:
4
Page 6
>> Wz3=c2d(Wk,0.1e-3,'zoh')
Transfer function:
2.529e-005 z + 2.524e-005
-------------------------
z^2 - 1.993 z + 0.9938
Sampling time: 0.0001
>> step(Wz3)
>> Wz4=c2d(Wk,0.01e-3,'zoh')
Transfer function:
2.534e-007 z + 2.533e-007
-------------------------
z^2 - 1.999 z + 0.9994
Sampling time: 1e-005
>> step(Wz4)
6
Page 7
>> Wz5=c2d(Wk,0.1e-3,'foh')
Transfer function:
8.435e-006 z^2 + 3.369e-005 z + 8.409e-006
------------------------------------------
z^2 - 1.993 z + 0.9938
Sampling time: 0.0001
>> step(Wz5)
7
Page 8
>> Wz6=c2d(Wk,0.01e-3,'foh')
Transfer function:
8.447e-008 z^2 + 3.378e-007 z + 8.444e-008
------------------------------------------
z^2 - 1.999 z + 0.9994
Sampling time: 1e-005
>> step(Wz6)
8
Page 9
>> Wz7=c2d(Wk,0.1e-3,'tustin')
Transfer function:
1.263e-005 z^2 + 2.526e-005 z + 1.263e-005
------------------------------------------
z^2 - 1.993 z + 0.9938
Sampling time: 0.0001
>> step(Wz7)
9
Page 10
>> Wz8=c2d(Wk,0.01e-3,'tustin')
Transfer function:
1.267e-007 z^2 + 2.534e-007 z + 1.267e-007
------------------------------------------
z^2 - 1.999 z + 0.9994
Sampling time: 1e-005
>> step(Wz8)
10
Page 11
>> [A,B,C,D] = tf2ss(6.112,[0.001206 0.07536 57.89])
A =
1.0e+004 *
-0.0062 -4.8002
0.0001 0
B =
1
0
C =
1.0e+003 *
0 5.0680
D =0
11
Page 12
>> SYS = SS(A,B,C,D,0.1e-3)
a =
x1 x2
x1 -62.49 -4.8e+004
x2 1 0
b =
u1
x1 1
x2 0
c =
x1 x2
y1 0 5068
d =
u1
y1 0
Sampling time: 0.0001
Discrete-time model.
>> SYS = SS(A,B,C,D,0.01e-3)
a =
x1 x2
x1 -62.49 -4.8e+004
x2 1 0
b =
u1
x1 1
x2 0
12
Page 13
c =
x1 x2
y1 0 5068
d =
u1
y1 0
Sampling time: 1e-005
Discrete-time model.
Bài Thực Hành Số 2
Tổng Hợp Vòng Điều Chỉnh Phần Ứng(Điều Khiển Mô Men Quay)
Ta có :
>> Gz1=c2d(Wk,0.1e-3,'zoh')
Transfer function:
2.529e-005 z + 2.524e-005
-------------------------
z^2 - 1.993 z + 0.9938
Sampling time: 0.0001
Theo Phương pháp Dead-Beat
- Bac 1 voi L( ) = L0 +L1*
>> Gz=filt([0 2.529e-005 2.524e-005],[1 -1.993 0.9938])
Transfer function:
13
Page 14
2.529e-005 z^-1 + 2.524e-005 z^-2
---------------------------------
1 - 1.993 z^-1 + 0.9938 z^-2
Sampling time: unspecified
>> Bz=filt([0 2.529e-005 2.524e-005],1)
Transfer function:
2.529e-005 z^-1 + 2.524e-005 z^-2
>> Az=filt([1 -1.993 0.9938],1)
Transfer function:
1 - 1.993 z^-1 + 0.9938 z^-2
Sampling time: unspecified
>> l0=1/((1+1.993)*(2.529e-5+2.524e-5))
l0 =
6.6122e+003
>> l1=1.993/((1+1.993)*(2.529e-5+2.524e-5))
l1 =
1.3178e+004
>> Lz=filt([l0 l1],1)
Transfer function:
6612 + 1.318e004 z^-1
Sampling time: unspecified
>> GR=(Lz*Az)/(1-Lz*Bz)
Transfer function:
6612 - 1.969e004 z^-2 + 1.31e004 z^-3
14
Page 15
-------------------------------------------
1 - 0.1672 z^-1 - 0.5002 z^-2 - 0.3326 z^-3
Sampling time: unspecified
Ta có mô phỏng simulink như sau:
Kết quả
15
Page 16
-Bac 2 voi L( ) = L0 +L1* + L2*
>> Wz1=c2d(Wk,0.1e-3)
Transfer function:
2.529e-005 z + 2.524e-005
-------------------------
z^2 - 1.993 z + 0.9938
>> Bz=filt([0 2.529e-5 2.524e-5],1)
Transfer function:
2.529e-005 z^-1 + 2.524e-005 z^-2
Sampling time: unspecified
>> Az=filt([1 -1.993 0.9938],1)
Transfer function:
1 - 1.993 z^-1 + 0.9938 z^-2
Sampling time: unspecified
>> mtc=1+1.993*1.993-(-1.993+0.9938);
>> L0=1/mtc *(2.529e-5+2.524e-5)
L0 =
8.4622e-006
>> L1=1.993/mtc
L1 =
0.3338
>> L2=(1.993*1.993-0.9938)/mtc
L2 =
0.4988
16
Page 17
>> Lz=filt([L0 L1 L2],1)
Transfer function:
8.462e-006 + 0.3338 z^-1 + 0.4988 z^-2
>> GR=Lz*Az/(1-Lz*Bz)
Transfer function:
8.462e-006 + 0.3337 z^-1 - 0.1664 z^-2 - 0.6623 z^-3 + 0.4957 z^-4
-----------------------------------------------------------------------------------------
1 - 2.14e-010 z^-1 - 8.441e-006 z^-2 - 2.104e-005 z^-3 - 1.259e-005 z^-4
Sơ đồ mô phỏng như sau:
17
Page 18
Theo Phương Pháp Cân Bằng Mô Hình
Sơ đồ mô phỏng simulink
18
Page 19
- Với tốc độ đáp ứng của giá trị thực là 3 chu kì T1=0.1e-3Ta có: GW(z)=
trong đó: x1=3;x2=2;x3=1
Hàm truyền đạt của bộ điều chỉnh là:
>> Gw=filt([0 3 -1 -1],1)
Transfer function:
3 z^-1 - z^-2 - z^-3
Sampling time: unspecified
>> GR=Gw/(Gz*(1-Gw))
Transfer function:
3 - 6.979 z^-1 + 3.974 z^-2 + 0.9992 z^-3 - 0.9938 z^-4
--------------------------------------------------------------------------------------------------------
2.529e-005 - 5.063e-005 z^-1 - 5.043e-005 z^-2 + 5.053e-005 z^-3 + 2.524e-005 z^-4
19
Page 20
Phân tích kết quả mô phỏng Qua kết quả mô phỏng ở 2 trường hợp trên ta thấy dạng của tín hiệu hoàn toàn đúng với
yêu cầu đề ra chứng tỏ các bước tính toán và mô phỏng là đúng.
Bài Thực Hành Số 3
Tổng Hợp Vòng Điều Chỉnh Tốc Độ Quay
Ta có :
>> Gw1=filt([0 0.5 0.5],1)
Transfer function:
0.5 z^-1 + 0.5 z^-2
>> Gn1 = 38.2*0.04*tf([1],[2*pi*0.012 0])
20
Page 21
Transfer function:
1.528
--------
0.0754 s
>> Gn1z = c2d(Gn1,0.1e-3)
Transfer function:
0.002027
--------
z - 1
Sampling time: 0.0001
>> Gn = Gw1*Gn1z
Transfer function:
0.001013 z^-2 + 0.001013 z^-3
-----------------------------
1 - z^-1
Sampling time: 0.0001
>> step(Gn/(1+Gn))
21
Page 22
0 0.05 0.1 0.15 0.2 0.25 0.30
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1Step Response
Time (sec)
Am
plitu
de
3.1tổng hợp bộ điều khiển PI theo tiêu chuẩn tích phân bình phương: - bộ điều khiển :
Gr(z) =
-Đối tượng điều khiển Gn
Ta có sai lệch điều chỉnh:
E(z) = W(z).
Viết sai lệch điều chỉnh dưới dạng sai phân:
= + (a1-1) - a1 – (a1-1+ b1) - (-a1+ b2+ b1) - ( b3+ b2)
- b3
Chọn = 20 và với ai,bi xác định theo Gn ta cần tính sao cho :
22
Page 23
= nhỏ nhất
Điều kiện: suy ra:
Ta lần lượt tính được:
= 1
= 1
= 0.997974
= 0.991896 – 0.0001013
= 0.981766 – 0.0004052
Từ đó ta tính được r1 = 2.52e-004
Chọn = -20
Gr =
>> Gr = filt([20 -20],1)/filt([1 -1],1)
Transfer function:
20 - 20 z^-1
------------
1 - z^-1
Sampling time: unspecified
>> Gz = Gr*Gn
Transfer function:
23
Page 24
0.02027 z^-2 - 0.02027 z^-4
---------------------------
1 - 2 z^-1 + z^-2
Sampling time: 0.0001
>> step(Gz/(1+Gz))
0 0.002 0.004 0.006 0.008 0.01 0.012 0.0140
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1Step Response
Time (sec)
Am
plitu
de
24
Page 25
3.2 tổng hợp bộ điều khiển PI theo phương pháp gán điểm cực:
hàm truyền đạt của đối tượng:
0.001013 z^-2 + 0.001013 z^-3
25
Page 26
Gn(z) = ------------------------------- =
1 - z^-1
Bộ điều khiển có dạng:
Gr(z) = =
Đa thức đặc tính của hàm truyền:
N(z) = P(z).A(z) +R(z).B(z)
= (z-1)( ) + ( ).(b1 )
= + (a1-1+b1 ) + (-a1 +b1 +b2 ) +(b3. +b2. )z +b3.
Giả sử các điểm cực của đối tượng là: z1,z2,z3,z4
N(z) = (z-z1).(z-z2).(z-z3).(z-z4)
= - (z1+z2+z3+z4) + (z1.z2+z3.z4-z1.z3-z1.z4-z2.z3-z2z4) -
(z1.z2.z3+z1.z2.z4+z1.z3.z4+z2.z3.z4)z + z1.z2.z3.z4
Chọn z1,2 = 0.5 0.35i
Cân bằng hệ số ta được:
= 27.08
= -26.24
>> Gr = filt([27.08 -26.24],1)/filt([1 -1],1)
Transfer function:
27.08 - 26.24 z^-1
------------------
26
Page 27
1 - z^-1
Sampling time: unspecified
>> Gz = Gr*Gn
Transfer function:
0.02744 z^-2 + 0.0008512 z^-3 - 0.02659 z^-4
--------------------------------------------
1 - 2 z^-1 + z^-2
Sampling time: 0.0001
0 0.005 0.01 0.015 0.02 0.0250
0.2
0.4
0.6
0.8
1
1.2
1.4Step Response
Time (sec)
Am
plitu
de
Nhận xét: với bộ điều khiển thiết kế ở trên ta thấy thoae mãn yêu cầu
Thay đổi giá trị đặt của tốc độ quay dưới dạng bước nhảy:
27
Page 28
Phụ tải thay đổi đột biến dưới dang bước nhảy:
28
Page 30
Bài Thực Hành Số 4
Tổng Hợp Bộ Điều Chỉnh Tốc Độ Quay Trên KGTT
>> [A,B,C,D] = tf2ss(6.112,[0.001206 0.07536 57.89])
A =
1.0e+004 *
-0.0062 -4.8002
0.0001 0
B =
1
0
C =
1.0e+003 *
0 5.0680
D =0
1.Với Ttm = 0.1s
>> [Ad1,Bd1,Cd1,Dd1]=c2dm(A,B,C,D,0.1,'zoh')
30
Page 31
Ad1 = -0.0438 -2.9297
0.0001 -0.0400 Bd1 = 1.0e-004 * 0.6103
0.2167 Cd1 = 1.0e+003 * 0 5.0680 Dd1 = 0
>> P1 = [0 0];
>> P2 = [0.2 0.3];
>> K = acker(Ad1,Bd1,P1)
K =
1.0e+003 *
-0.0276 -3.7924
>> H1=ss(Ad1-Bd1*K,Bd1,Cd1,Dd1,0.1)
a =
x1 x2
x1 -0.04215 -2.698
x2 0.0006584 0.04215
b =
u1
x1 6.103e-005
x2 2.167e-005
c =
x1 x2
31
Page 32
y1 0 5068
d =
u1
y1 0
Sampling time: 0.1
Discrete-time model.
>> step(H1)
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20
0.02
0.04
0.06
0.08
0.1
0.12Step Response
Time (sec)
Am
plitu
de
>> H2=ss(Ad1-Bd1*K,Bd1,Cd1,Dd1,0.01)
a =
x1 x2
x1 -0.04215 -2.698
x2 0.0006584 0.04215
32
Page 33
b =
u1
x1 6.103e-005
x2 2.167e-005
c =
x1 x2
y1 0 5068
d =
u1
y1 0
Sampling time: 0.01
Discrete-time model.
>>step(H2)
33
Page 34
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.20
0.02
0.04
0.06
0.08
0.1
0.12Step Response
Time (sec)
Am
plitu
de
>> K = acker(Ad1,Bd1,P2)
K =
1.0e+004 *
-0.1315 -2.3244
>> H3=ss(Ad1-Bd1*K,Bd1,Cd1,Dd1,0.01)
a = x1 x2 x1 0.0364 -1.511 x2 0.02854 0.4636
b = u1 x1 6.103e-005 x2 2.167e-005
c =
34
Page 35
x1 x2 y1 0 5068
d = u1 y1 0
Sampling time: 0.01Discrete-time model.>> step(H3)
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.20
0.05
0.1
0.15
0.2
0.25Step Response
Time (sec)
Am
plit
ude
>> H4=ss(Ad1-Bd1*K,Bd1,Cd1,Dd1,0.1)
a =
x1 x2
x1 -0.1855 -31.78
x2 0.005889 0.6855
b =
u1
x1 0.002789
35
Page 36
x2 2.759e-005
c =
x1 x2
y1 0 5076
d =
u1
y1 0
Sampling time: 0.1
Discrete-time model.
>> step(H4)
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5Step Response
Time (sec)
Am
plitu
de
1. Với Ttm = 0.1s
>> [Ad1,Bd1,Cd1,Dd1]=c2dm(A,B,C,D,0.1,'zoh')
36
Page 37
Ad1 =
-0.0438 -2.9271
0.0001 -0.0399
Bd1 =
1.0e-004 *
0.6098
0.2166
Cd1 =
1.0e+003 *
0 5.0763
Dd1 =
0
>> K = acker(Ad1,Bd1,P1)
K =
1.0e+003 *
-0.0275 -3.7862
>> H5=ss(Ad1-Bd1*K,Bd1,Cd1,Dd1,0.01)
a =
x1 x2
x1 -0.04208 -2.696
x2 0.0006568 0.04208
b =
u1
37
Page 38
x1 6.098e-005
x2 2.166e-005
c =
x1 x2
y1 0 5076
d =
u1
y1 0
Sampling time: 0.01
Discrete-time model.
>> step(H5)
0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.10
0.02
0.04
0.06
0.08
0.1
0.12Step Response
Time (sec)
Am
plitu
de
>> H6=ss(Ad1-Bd1*K,Bd1,Cd1,Dd1,0.1)
a =
38
Page 39
x1 x2
x1 -0.04208 -2.696
x2 0.0006568 0.04208
b =
u1
x1 6.098e-005
x2 2.166e-005
c =
x1 x2
y1 0 5076
d =
u1
y1 0
Sampling time: 0.1
Discrete-time model.
>> step(H6)
39
Page 40
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
0.02
0.04
0.06
0.08
0.1
0.12Step Response
Time (sec)
Am
plitu
de
>> K = acker(Ad1,Bd1,P2)
K =
1.0e+004 *
-0.1315 -2.3241
>> H7=ss(Ad1-Bd1*K,Bd1,Cd1,Dd1,0.01)
a =
x1 x2
x1 0.03643 -1.51
x2 0.02855 0.4636
b =
u1
x1 6.098e-005
40
Page 41
x2 2.166e-005
c =
x1 x2
y1 0 5076
d =
u1
y1 0
Sampling time: 0.01
Discrete-time model.
>> step(H7)
0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.10
0.05
0.1
0.15
0.2
0.25Step Response
Time (sec)
Am
plitu
de
>> H8=ss(Ad1-Bd1*K,Bd1,Cd1,Dd1,0.1)
a =
41
Page 42
x1 x2
x1 0.03643 -1.51
x2 0.02855 0.4636
b =
u1
x1 6.098e-005
x2 2.166e-005
c =
x1 x2
y1 0 5076
d =
u1
y1 0
Sampling time: 0.1
Discrete-time model.
>> step(H8)
42
Page 43
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
0.05
0.1
0.15
0.2
0.25Step Response
Time (sec)
Am
plitu
de
43