Professional Documents
Culture Documents
Dieu Khien So - Nguyen Phung Quang
Dieu Khien So - Nguyen Phung Quang
VIỆN ĐIỆN
BỘ MÔN ĐIỀU KHIỂN TỰ ĐỘNG
om
.c
BÁO CÁO ng
co
an
Lớp: TBĐ1-K52
Gz4 T=0.01ms
Phương pháp trích mẫu: ZOH
Hà Nội , 28/4/2011
CuuDuongThanCong.com https://fb.com/tailieudientucntt
BÁO CÁO THÍ NGHIỆM ĐIỀU KHIỂN SỐ
Bài thực hành số 1 : Tìm mô hình gián đoạn của ĐCMC
Động cơ có các tham số :
om
Mô hình động cơ 1 chiều :
.c
ng
co
an
th
ng
1 1 1
Gh(s)= . .kM . .
cu
RA 1 s.TA 2. .J .s
- Thay số ta có :
81, 06
Gh(s)=
0, 016s 2 s
CuuDuongThanCong.com https://fb.com/tailieudientucntt
2.Sử dụng lệnh trong MATLAB để tìm hàm truyền đạt trên miền ảnh z
theo các phương pháp FOH, ZOH, TUSTIN.
Chương trình Matlab:
>> num=[81.06];
>> den=[0.016, 1, 767.8];
>> Gk=tf(num,den) % Hàm truyền đạt của hệ kín mô hình động cơ.
Transfer function:
81.06
---------------------------
om
0.016 s^2 + s + 767.8
.c
Với chu kì trích mẫu 0,1ms:
ng
>> Gz1=c2d(Gk,0.0001,'foh') % Phương pháp FOH
Transfer function:
co
8.43e-006 z^2 + 3.367e-005 z + 8.404e-006
-----------------------------------------------------
an
Transfer function:
2.528e-005 z + 2.522e-005
o
---------------------------------
du
Transfer function:
1.262e-005 z^2 + 2.525e-005 z + 1.262e-005
------------------------------------------------------
z^2 - 1.993 z + 0.9938
Sampling time: 0.0001
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Sampling time: 1e-005
>> Gz4=c2d(Gk,0.00001,'zoh') % Phương pháp ZOH
Transfer function:
2.533e-007 z + 2.532e-007
-------------------------
z^2 - 1.999 z + 0.9994
om
Transfer function:
1.266e-007 z^2 + 2.532e-007 z + 1.266e-007
.c
-------------------------------------------------------
z^2 - 1.999 z + 0.9994
. . .
+) FOH : Gz1= ( T=0,1ms)
. .
th
. . .
ng
Gz2= ( T=0,01ms)
. .
o
du
. .
+)ZOH : Gz3= ( T=0,1ms)
. .
u
. .
cu
Gz4= ( T=0,01ms)
. .
. . .
+)TUSTIN : Gz5= ( T=0,1ms)
. .
. . .
Gz6= (T=0,01ms)
. .
CuuDuongThanCong.com https://fb.com/tailieudientucntt
om
.c
Với T=0,1ms
ng
co
an
th
o ng
du
u
cu
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Với T=0,01ms
om
.c
ng
co
an
th
o ng
du
u
cu
Nhận xét:
+ Với T=0,1ms
-Dựa vào đồ thị trên ta thấy phép biến đổi Z theo các phương pháp FOH, ZOH,
TUSTIN cho kết quả mô phỏng giống nhau.
CuuDuongThanCong.com https://fb.com/tailieudientucntt
om
.c
ng
co
an
th
o ng
du
Ta thấy trong 1 chu kì trích mẫu phương pháp FOH và TUSTIN cho kết quả xấp
u
+ Với T=0,01ms
- Dựa vào đồ thị ta thấy sự khác biệt rõ ràng hơn giữa 3 phương pháp.
So với trường hợp T=0.1ms thì hệ dao động nhiều hơn do các điểm cực đã bị đẩy
ra xa hơn, gần với biên của đường tròn đơn vị.
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Bài thực hành số 2 : Tổng hợp vòng điều chỉnh dòng phần ứng
(điều khiển mômen quay).
-Thay số ta có :
om
4
Gi(s)= 6 2
.
1, 6.10 .s 0, 0161s 1
.c
-Sử dụng lệnh c2d ta tìm được hàm truyền đạt trên miền ảnh z của đối tượng theo
ng
phương pháp ZOH (với chu kỳ trích mẫu 0,00001s):
% Chương trình Matlab: co
>> G=tf(4,[1.6e-6 0.0161 1])
an
Transfer function:
4
th
---------------------------
1.6e-006 s^2 + 0.0161 s + 1
ng
>> Gz=c2d(G,0.01e-3,'zoh')
o
du
Transfer function:
0.0001209 z + 0.0001169
u
cu
-----------------------
z^2 - 1.904 z + 0.9043
Transfer function:
0.0001209 z^-1 + 0.0001169 z^-2
-------------------------------
1 - 1.904 z^-1 + 0.9043 z^-2
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Ta thu được hàm truyền của đối tượng dòng như sau:
. .
Gi(z) =
. .
om
với b0=0 , b1=0.0001209, b2=0,0001169.
a0=1, a1= -1.904 , a2=0.9043.
.c
-Theo phương pháp Dead-Beat ta tìm được :
a0 a1
l0= 2
=1448.1 ; l1= 2
= 2757.1
ng
(a0 a1 ) bi (a0 a1 ) bi
i 0 i 0
co
Do đó : L(z-1)=1448.1+2757.1z-1
an
1 L( z 1 ).B( z 1 )
% Chương trình Matlab tìm bộ điều khiển:
ng
>>l0=1448.1;l1=2757.1;
>>L=filt([l0 l1],[1],0.01e-3)
o
du
Transfer function:
u
Transfer function:
1448 - 3940 z^-2 + 2493 z^-3
------------------------------------------------------
1 - 0.1751 z^-1 - 0.5026 z^-2 - 0.3223 z^-3
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Transfer function:
0.1751 z^-1 + 0.5026 z^-2 + 0.3223 z^-3
Sampling time: 1e-005
>>step(Gk) % Mô phỏng đặc tính của hệ kín khi có bộ điều khiển.
Ket qua mo phong:
Step Response
1
0.9
om
0.8
0.7
.c
0.6
Amplitude
ng
0.5
0.4
co
0.3
an
0.2
th
0.1
ng
0
0 1 2
o
Time (sec) -4
x 10
du
u
cu
l2= ( ).∑
= -1901.7
10
CuuDuongThanCong.com https://fb.com/tailieudientucntt
-Do đó : L(z-1)=2102.9+4004z-1 – 1901.7z-2
-Từ đó ta xác định được bộ điều khiển
L( z 1 ). A( z 1 )
GR(z-1) =
1 L( z 1 ).B( z 1 )
%Chương trình sử dụng Matlab xác định công thức bộ điều khiển
>>l0=2102.9;l1=4004;l2=-1901.7
>>L=filt([l0 l1 l2],[1],0.01e-3)
Transfer function:
om
2103 + 4004 z^-1 - 1902 z^-2
.c
Sampling time: 1e-005
ng
>>Gr=L*A/(1-L*B) %Hàm truyền đạt của bộ điều khiển co
Transfer function:
an
-------------------------------------------------------------------------
ng
Transfer function:
>>step(Gk) % Hàm mô phỏng đặc tính của hệ kín khi có bộ điều khiển
11
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Kết quả mô phỏng:
Step Response
1.4
1.2
om
0.8
Amplitude
.c
0.6
ng
0.4
co
an
0.2
th
0
0 1 2
ng
Time (sec) -4
x 10
o
Nhận xét:
du
Ta thấy khi dùng bộ ĐK Deat-Beat 1 đầu ra đạt giá trị xác lập sau 3 chu kì trích
u
mẫu, khi dùng bộ ĐK Deat-Beat 2 đầu ra đạt giá trị xác lập sau 4 chu kì trích mẫu.
cu
Bộ ĐK Deat-Beat 2 bắt đầu làm cho đối tượng trên có dao động, chất lượng không
bằng bộ ĐK Deat-Beat 1.
A ) Giả sử sau 2 bước, giá trị của đối tượng điều khiển sẽ đuổi kịp giá
trị đặt của đại lượng chủ đạo, tức hàm truyền đạt vòng kín sẽ là :
Gw(z)=x1.z-1+x2.z-2. Với điều kiện x1+x2=1
+) Chọn GW(z)=0.6.z-1+0.4.z-2
Bộ điều khiển cần tìm :
12
CuuDuongThanCong.com https://fb.com/tailieudientucntt
1 G ( z)
GR= . W
Gs ( z ) 1 GW ( z )
Transfer function:
om
Sampling time: 1e-005
.c
>> B=filt([0 0.0001209 0.0001169],[1],0.01e-3)
ng
Transfer function:
Transfer function:
ng
>> Gz4=B/A
cu
Transfer function:
------------------------------------------
13
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Transfer function:
------------------------------------------------------------------------------------
om
1 G ( z)
GR= . W
.c
Gs ( z ) 1 GW ( z )
Transfer function:
>> Gz4=B/A
Transfer function:
----------------------------------------
14
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Sampling time: 1e-005
>> Gr=Gw/[Gz4*(1-Gw)]
om
Transfer function:
.c
------------------------------------------------------------------------------
ng
0.0001209 + 0.0001048 z^-1 - 0.0001205 z^-2 - 0.0001052 z^-3
co
Sampling time: 1e-005
an
15
CuuDuongThanCong.com https://fb.com/tailieudientucntt
om
.c
ng
co
an
Nhận xét:
th
Từ đồ thị ta thấy đúng sau 2 bước đối tượng điều khiển đuổi kịp giá trị đặt của
ng
đại lượng chủ đạo. Kết thúc chu kì trích mẫu đầu tiên đầu ra đạt tới giá trị x1 của
bộ điều khiển(0.6 hoặc 0.1). Dựa vào đặc điểm này ta có thể dễ dàng chọn bộ điều
o
C. Giả sử sau 3 bước, giá trị của đối tượng điều khiển sẽ đuổi kịp giá trị
đặt của đại lượng chủ đạo, tức hàm truyền đạt vòng kín sẽ là :
-Với tốc độ đáp ứng của giá trị thực là 3 chu kì TI
Ta có: GW(z)= 2 z 1 z 2 2 z 3
1 GW ( z )
GR(z)=
G S ( z ) 1 GW ( z )
16
CuuDuongThanCong.com https://fb.com/tailieudientucntt
% Chương trình sử dụng Matlab tìm hàm truyền đạt của bộ điều khiển và kết
quả mô phỏng.
Transfer function:
om
>> B=filt([0 0.0001209 0.0001169],[1],0.01e-3)
.c
Transfer function:
ng
Sampling time: 1e-005
co
>> A=filt([1 -1.904 0.9043],[1],0.01e-3)
an
th
Transfer function:
ng
>> Gz4=B/A
u
cu
Transfer function:
-------------------------------------------
Transfer function:
17
CuuDuongThanCong.com https://fb.com/tailieudientucntt
2 - 2.808 z^-1 - 2.095 z^-2 + 4.712 z^-3 - 1.809 z^-4
-----------------------------------------------------------------------------------------------
>> step(Gw) % Hàm mô phỏng đặc tính của hệ khi có bộ điều khiển.
om
.c
Step Response
3
ng
2.5 co
2
an
Amplitude
th
1.5
ng
1
o
du
0.5
u
cu
0
0 1 2
Time (sec) -4
x 10
18
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Nhận xét:
Từ đồ thị ta thấy đúng sau 3 bước đối tượng điều khiển đuổi kịp giá trị đặt của
đại lượng chủ đạo. Kết thúc chu kì trích mẫu đầu tiên đầu ra đạt tới giá trị x1 của
bộ điều khiển(0.8). Kết thúc chu kì trích mẫu thứ 2 đầu ra đạt tới giá trị x1+x2 của
bộ điều khiển(0.9).
om
+Thiết kế bộ điều chỉnh theo phương pháp cân bằng mô hình thì sai lệch tĩnh sau N
bước trở về 0 theo quĩ đạo mong muốn.
.c
+Thiết kế bộ điều khiển theo phương pháp Dead-Beat thì sai lệch tĩnh cũng trở về
0 nhưng ta không thể áp đặt quĩ đạo mong muốn.
ng
co
an
th
o ng
du
u
cu
19
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Bài thực hành số 3 : Tổng hợp vòng điều chỉnh tốc độ quay .
-Theo phương pháp cân bằng mô hình ta có hàm truyền hệ kín của phần điều chỉnh
dòng là : GiW(z)=0.6.z-1+0.4.z-2
-Do đó ta có hàm truyền đạt của đối tượng điều khiển vòng điều chỉnh tốc độ là :
Gn(z)= GiW(z).kM.ψ.Z( ) ( Tính ảnh Z theo ZOH, chu ki trích mẫu 0.00001s).
П.
. .
Gn(z)=
om
1.Tổng hợp bộ điều chỉnh PI theo tiêu chuẩn tích phân bình phương
.c
r0 r1.z 1
-Bộ điều khiển : GR(z)= .
1 z 1
ng
co
-Đối tượng điều khiển : Gn(z)=
an
E(z)=W(z)..
o
.
du
-Chọn r0=20 và với ai , bi xác định theo Gn(z) ta cần tìm r1 sao cho
n
IQ= ek2 nhỏ nhất .
k 0
u u 0 ≤
Điều kiện : 1 suy ra
r r (1 r .b ) ≤ −20
1 0 0 1
20
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Ta lần lượt tính được :
e0=1
e1=1
e2=0.998
e3= 0.9924-1.27*10^-4*r1
e4= 0.9864-2.134*10^-4*r1
om
-Từ đó để IQ nhỏ nhất ta tính được r1 2.086
.c
Vậy bộ điều khiển theo tiêu chuẩn tích phân bình phương :
ng
GR(z)=.
co
an
th
2.Tổng hợp bộ điều khiển PI cho tốc độ theo phương pháp gán điểm
cực
ng
. .
Gn(z)= =.
u
cu
r0 r1.z 1 r0 .z r1 ( )
GR(z)= = =
1 z 1 z 1 ( )
N(z)=P(z).A(z)+R(z).B(z).
=(z-1).(z3+a1.z2)+(r0.z+r1).(b1.z2+b2z+b3)
21
CuuDuongThanCong.com https://fb.com/tailieudientucntt
-Giả sử điểm cực của đối tượng chủ đạo là z1,z2,z3,Z4 thì ta có :
N(z)=(z-z1).(z-z2).(z-z3).(z-z4)
om
Cân bằng hệ số ta tính được :
.c
z3= 0.5+i.0,265
ng
z4= 0.5-i.0.265 co
r0= 27.08
an
r1= - 26.24
th
. .
Vậy bộ điều khiển : GR(z)=
ng
a.Giá trị đặt động cơ thay đổi dưới dạng bước nhảy :
u
cu
1)Trong phương pháp theo tiêu chuẩn tích phân bình phương : GR=.
22
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Đặc tính thu được khi có bộ điều khiển:
om
.c
Sai lệch điều chỉnh:
ng
co
an
th
o ng
du
u
cu
Nhận xét: Chất lượng của hệ đáp ứng tốt với yêu cầu đặt ra
. .
Công thức bộ điều khiển: GR(z)=
23
CuuDuongThanCong.com https://fb.com/tailieudientucntt
om
Đặc tính của hệ:
.c
ng
co
an
th
o ng
du
24
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Nhận xét:Với bộ điều khiển thiết kế ở trên ta thấy:
+) Độ quá điều chỉnh lớn,thời gian xác lập dài Chưa đáp ứng được yêu cầu đặt
ra.
Cần hiệu chỉnh lại các tham số của bộ điều khiển để đạt được chất lượng động
học tốt hơn:
om
+) Sơ đồ Simulink mô phỏng với bộ điều khiển sau hiệu chỉnh:
.c
ng
co
an
th
ng
25
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Sai lệch tĩnh:
om
.c
ng
Nhận xét: Từ đồ thị ta thấy độ quá điều chỉnh vẫn tương đối lớn(khoảng 30%),
thời gian xác lập: 0.002s. Để chất lượng động học tốt hơn ta nên chọn điểm cực
co
nằm gần gốc tọa độ.
an
b.Phụ tải thay đổi đột biến dưới dạng bước nhảy : (momen tải có dạng
bước nhảy)
th
ng
Với bộ điều khiển PI lập theo tiêu chuẩn tích phân bình phương :
o
GR=
du
u
cu
26
CuuDuongThanCong.com https://fb.com/tailieudientucntt
+) Kết quả mô phỏng đặc tính của hệ.
om
.c
ng
co
+)Sai lệch điều chỉnh:
an
th
o ng
du
u
cu
27
CuuDuongThanCong.com https://fb.com/tailieudientucntt
om
.c
+) Kết quả mô phỏng đặc tính của hệ khi có nhiễu tác động.
ng
co
an
th
o ng
du
u
cu
28
CuuDuongThanCong.com https://fb.com/tailieudientucntt
om
Nhận xét: Với cả 2 bộ điều khiển, khi có phụ tải thay đổi đột biến dưới dạng bước
.c
nhảy, chất lượng động học của hệ xấu hơn, sai lệch điều chỉnh lớn hơn, thời gian
quá độ dài hơn .
ng
co
an
th
o ng
du
u
cu
29
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Bài thực hành số 4 : Tổng hợp bộ ĐC tốc độ quay trên KGTT
A.Tổng hợp bộ điều khiển tốc độ quay theo 2 phương pháp:
Phản hồi trạng thái sao cho đáp ứng có dạng PT1( điểm cực nhận giá trị thực
dương trên miền z)
Chọn 2 điểm cực: z1=0.5, z2=0.6
Gk là mô hình động cơ đã xây dựng ở bài 1.
Sử dụng lện trong MATLAB:
Với chu kỳ trích mẫu là: T=0.1s
>> num=[81.06];
>> den=[0.016,1,767.8];
om
>> Gk=tf(num,den)
.c
Transfer function:
81.06
ng
---------------------
0.016 s^2 + s + 767.8
co
>> [A,B,C,D]=tf2ss(num,den)% Các ma trận trên miền liên tục
an
A=
th
1.0e+004 *
ng
-0.0063 -4.7987
0.0001 0
o
B=
du
1
0
u
C=
cu
1.0e+003 *
0 5.0663
D=
0
>> [phi,H]=c2dm(A,B,C,D,0.1)% Chuyển sang gián đoạn
phi =
-0.0438 -2.9585
0.0001 -0.0399
H=
1.0e-004 *
0.6165
0.2167
30
CuuDuongThanCong.com https://fb.com/tailieudientucntt
>> p1=[0.5 0.6];
>> Ka=acker(phi,H,p1)% Bộ điều khiển cần tìm
Ka =
1.0e+004 *
-0.5440 -3.9147
Đáp ứng hữu hạn( Dead-Beat: gán điểm cực tại gốc tọa độ trên miền ảnh z)
>> p2=[0 0];
>> Kb=acker(phi,H,p2)
Kb =
1.0e+003 *
-0.0272 -3.7854
om
Với chu kỳ trích mẫu là: T=0.01s
>> num=[81.06];
.c
>> den=[0.016,1,767.8];
>> Gk=tf(num,den)
ng
Transfer function:
81.06
co
---------------------
0.016 s^2 + s + 767.8
an
>> [A,B,C,D]=tf2ss(num,den)
A=
th
1.0e+004 *
-0.0063 -4.7987
ng
0.0001 0
o
B=
du
1
0
u
C=
cu
1.0e+003 *
0 5.0663
D=
0
>>[phi,H]=c2dm(A,B,C,D,0.01)%
phi =
-0.4987 -133.8787
0.0028 -0.3243
H=
0.0028
0.0000
31
CuuDuongThanCong.com https://fb.com/tailieudientucntt
>> p1=[0.5 0.6];
Ka=acker(phi,H,p1)% Bộ điều khiển cần tìm
Ka =
1.0e+004 *
-0.0255 -4.3918
Đáp ứng hữu hạn( Dead-Beat: gán điểm cực tại gốc tọa độ trên miền ảnh z)
>> p2=[0 0];
Kb=acker(phi,H,p2)
Kb =
1.0e+004 *
-0.0022 -2.7639
om
B. Mô phỏng 2 bộ điều khiển phản hồi trạng thái
Với chu kỳ trích mẫu là: T=0.1s
.c
>> H1=ss(phi-H*Ka,B,C,D,0.1)
a=
ng
x1 x2
x1 0.2916 -0.545
co
x2 0.1179 0.8084
b=
an
u1
x1 1
th
x2 0
c=
ng
x1 x2
o
y1 0 5066
du
d=
u1
u
y1 0
cu
CuuDuongThanCong.com https://fb.com/tailieudientucntt
x1 x2
y1 0 5066
d=
u1
y1 0
Sampling time: 0.1
Discrete-time model.
>>step(Gk)
>> step(H1)
>> step(H2)
% Kết quả mô phỏng trên không gian trạng thái.
om
Step Response
.c
0.18
0.16
0.14
ng
co
0.12
an
0.1
Amplitude
th
0.08
ng
0.06
o
0.04
du
0.02
u
cu
0
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
Time (sec)
33
CuuDuongThanCong.com https://fb.com/tailieudientucntt
om
.c
ng
co
an
th
>> H1=ss(phi-H*Ka,B,C,D,0.01)
a=
x1 x2
u
x1 0.2123 -11.35
cu
x2 0.009823 0.8877
b=
u1
x1 1
x2 0
c=
x1 x2
y1 0 5066
d=
u1
y1 0
34
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Sampling time: 0.01
Discrete-time model.
>> H2=ss(phi-H*Kb,B,C,D,0.01)
a=
x1 x2
x1 -0.4384 -56.77
x2 0.003386 0.4384
b=
u1
x1 1
x2 0
om
c=
x1 x2
.c
y1 0 5066
ng
d=
u1
co
y1 0
Sampling time: 0.01
an
Discrete-time model.
>> step(Gk)
th
>> step(H1)
>> step(H2)
o ng
du
Step Response
0.18
0.16
0.14
0.12
0.1
Amplitude
0.08
0.06
0.04
0.02
0
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
Time (sec)
35
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Step Response
250
200
Amplitude 150
100
om
50
.c
0
0 0.05 0.1 0.15 0.2 0.25
Time (sec)
ng
PT1
co
Step Response
18
an
16
th
14
ng
12
10
Amplitude
o
du
6
u
4
cu
0
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
Time (sec)
Nhận xét:
+ Tổng hợp bộ điều khiển tốc độ quay theo phương pháp phản hồi trạng thái sao
cho đáp ứng có dạng PT1 thì sau nhiều chu kì trích mẫu đầu ra mới xác lập.
+ Tổng hợp bộ điều khiển tốc độ quay theo phương pháp đáp ứng hữu hạn thì sau 2
chu kì trích mẫu đầu ra đạt giá trị xác lập do 2 điểm cực được gán đều nằm ở gốc
tọa độ.
36
CuuDuongThanCong.com https://fb.com/tailieudientucntt
om
.c
ng
co
an
th
o ng
du
u
cu
37
CuuDuongThanCong.com https://fb.com/tailieudientucntt