Tải bản đầy đủ (.docx) (55 trang)

BÁO CÁO THÍ NGHIỆM ĐIỀU KHIỂN SỐ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (723.11 KB, 55 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN


BÁO CÁO THÍ NGHIỆM
HỆ THỐNG ĐIỀU KHIỂN SỐ
Họ tên: Hoàng Ngọc Hưng
MSSV: 20121858
Lớp: KT ĐK & TĐH 06 – K57


BÀI 1: TÌM MÔ HÌNH GIÁN ĐOẠN CỦA ĐỘNG CƠ MỘT CHIỀU
 Các tham số của động cơ một chiều
-

Điện trở phần ứng: =250 mΩ

-

Điện cảm phần ứng: =4 mH

-

Từ thông danh định: =0.04

-

Moomen quán tính : J=0.012

-


Hằng số động cơ: =236.8 , kM =38.2

 Sơ đồ hệ thống điều khiển ĐCMC theo cấu trúc Cascade

1.Xác định hàm truyền đạt trên miền ảnh z để thiết kế vòng điều khiển dòng
điện phần ứng.
Hàm truyền đạt dòng phần ứng:
Trong đó : s ;
Thay số ta có: (s) =
(s) =
Cân bằng hệ số ta có : A=4; B=2.5 . ; C= = - 0.0644025
Nên ta có:
Hi(z) =

(với T là chu kì trích mẫu)

→ Gi(z)=(1-z-1 )Hi(z) =


Với chu kì trích mẫu T=0.1ms Ta có:
Giz7 =



Với chu kì trích mẫu T=0.01ms Ta có:
Giz8 =


2.Tìm hàm truyền đạt trên miền ảnh z theo phương pháp ZOH, FOH,
TUSTIN

Các lệnh trong matlab
>> Ra=250e-3;Tt=100e-6;
La=4e-3;J=0.012;Ke=236.8;Km=38.2;phi=0.04;Ta=La/Ra;
>> Ttm1=1e-4;Ttm2=1e-5;
>> Gi=(1/Ra)*tf([1],[Ta 1])*tf([1],[Tt 1])
Transfer function:
4
----------------------------------1.6e-006 s^2 + 0.0161 s + 1

-

Với chu kì trích mẫu 0.1ms
Phương pháp ZOH :
>> Giz1=c2d(Gi,Ttm1,'zoh')
Transfer function:
0.009176 z + 0.006577
----------------------------z^2 - 1.362 z + 0.3656
Sampling time: 0.0001

-

Phương pháp FOH

>> Giz2=c2d(Gi,Ttm1,'foh')
Transfer function:
0.003298 z^2 + 0.01046 z + 0.001998
---------------------------------------------z^2 - 1.362 z + 0.3656
Sampling time: 0.0001



-

Phương pháp Tustin

>> Giz3=c2d(Gi,Ttm1,'tustin')
Transfer function:
0.004154 z^2 + 0.008307 z + 0.004154
------------------------------------------------z^2 - 1.327 z + 0.3313
Sampling time: 0.0001

-

Với chu kì trích mẫu 0.01ms
Phương pháp ZOH

>> Giz4=c2d(Gi,Ttm2,'zoh')
Transfer function:
0.0001209 z + 0.0001169
----------------------z^2 - 1.904 z + 0.9043
Sampling time: 1e-005
-

Phương pháp FOH

>> Giz5=c2d(Gi,Ttm2,'foh')
Transfer function:
4.064e-005 z^2 + 0.0001585 z + 3.865e-005
----------------------------------------z^2 - 1.904 z + 0.9043
Sampling time: 1e-005
-


Phương pháp TUSTIN

>> Giz6=c2d(Gi,Ttm2,'tustin')
Transfer function:
5.951e-005 z^2 + 0.000119 z + 5.951e-005


---------------------------------------z^2 - 1.904 z + 0.9042
Sampling time: 1e-005
3. Mô phỏng khảo sát, so sánh kết quả mô phỏng với 4 mô hình gián đoạn
thu được
Viết lại các hàm Giz7 và Giz8 có từ việc tính toán câu 1 vào MATLAB:
>> Giz7=tf([0.000916 0.00065],[1 1.3618 0.3655],Ttm1)
Transfer function:
0.000916 z + 0.00065
---------------------z^2 + 1.362 z + 0.3655
Sampling time: 0.0001
>> Giz8=tf([0.00001197 0.0001165],[1 1.9042 0.90428],Ttm2)
Transfer function:
1.197e-005 z + 0.0001165
-----------------------z^2 + 1.904 z + 0.9043
Sampling time: 1e-005
- Dùng các lệnh trong matlab để mô phỏng:
+ Với chu kì trích mẫu 0.1ms
>> hold on
>> step(Gi)
>> step(Giz1)
>> step(Giz2)
>> step(Giz3)

>> step(Giz4)
>> step(Giz5)


>> step(Giz6)
>> step(Giz7)
>> step(Giz8)


Dựa vào đồ thị đáp ứng bước nhảy ta có thể thấy, kết quả thu được từ 2 mô hình
Giz1( Phương pháp ZOH) và Giz7( phương pháp tính toán) gần như nhau(có sai khác
do làm tròn khi tín bằng tay). Mô hình Giz2( Phương pháp FOH) cho kết quả xấp xỉ
mô hình Giz3( Phương pháp tustin) và khác với mô hình Giz1 và Giz7. Kết quả tính
tay cho ra kết quả trên đồ thị gần với phương pháp ZOH nhất. Với T=0,1ms thì dựa
vào đồ thị 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 và giống kết quả thu được khi tính bằng tay

Dựa vào đồ thị đáp ứng bước nhảy ta có thể thấy, kết quả thu được từ 2 mô hình
Giz4( Phương pháp ZOH) và Giz8( phương pháp tính toán) gần như nhau. Mô hình
Giz5( Phương pháp FOH) cho kết quả xấp xỉ mô hình Giz6( Phương pháp tustin) và
khác với mô hình Giz4 và Giz8.

4. Xây dựng mô hình trạng thái của ĐCMC trên miền thời gian liên tục
Mô hình trạng thái của đối tượng;
xk+1=A.xk+ B.uk

x=A.x + B.u

yk=C.xk+D.uk


y=C.x+D.u

Bằng MATLAB, khai báo ban đầu:

Ra=250e-3;Tt=100e-6;
La=4e-3;J=0.012;Ke=236.8;Km=38.2;phi=0.04;Ta=La/Ra;


Ta có hàm truyền vòng hở Gh:
>> Gh=(1/Ra)*tf(1,[Ta 1])*Km*phi*tf(1,[2*pi*J 0])
Gh =
6.112
----------------------0.001206 s^2 + 0.0754 s
Continuous-time transfer function.
Hàm truyền của động cơ là

>> Gdc=feedback(Gh,Ke*phi)
Gdc =
6.112
------------------------------0.001206 s^2 + 0.0754 s + 57.89
Continuous-time transfer function.

Ta được các ma trận A B C D
>> [A,B,C,D]=tf2ss(6.112,[0.001206 0.0754 57.89])
A=
1.0e+04 *
-0.0063 -4.8002


0.0001


0

B=
1
0
C=
1.0e+03 *
0

5.0680

D=
0
>>step(Gdc)
Ta được hình ảnh của hàm truyền động cơ


>>[Ak1,Bk1]=c2d(A,B,0.1)
Ak1 =
-0.0438 -2.9271
0.0001 -0.0399
Bk1 =
1.0e-04 *
0.6098
0.2166
>>[Ak2,Bk2]=c2d(A,B,0.01)


Ak2 =


-0.4989 -133.8566
0.0028 -0.3245
Bk2 =
0.0028
0.0000
>> H1=ss(Ak1,Bk1,C,D,0.1)
H1 =
a=
x1
x1 -0.04376

x2
-2.927

x2 6.098e-05 -0.03995
b=
u1
x1 6.098e-05
x2 2.166e-05
c=
x1 x2
y1

0 5068

d=
u1
y1 0



Sample time: 0.1 seconds
>> H2=ss(Ak2,Bk2,C,D,0.01)
H2 =
a=
x1

x2

x1 -0.4989

-133.9

x2 0.002789 -0.3245
b=
u1
x1 0.002789
x2 2.759e-05
c=
x1 x2
y1

0 5068

d=
u1
y1 0
Sample time: 0.01 seconds
-


Kiểm tra tính điều khiển được,quan sát được

+ Kiểm tra tính điều khiển được
>> q1=ctrb(Ak1,Bk1)
q1 =
1.0e-04 *


0.6098 -0.6608
0.2166 -0.0086
>> rank(q1)
ans = 2
Suy ra điều khiển được
>> q2=ctrb(Ak2,Bk2)
q2 =
0.0028 -0.0051
0.0000 -0.0000
>> rank(q2)
ans =2
Suy ra điều khiển được
+ Kiểm tra tính quan sát được
>> m1=obsv(Ak1,C)
m1 =
1.0e+03 *
0

5.0680


0.0003 -0.2024

>> rank(m1)
ans = 2
Suy ra quan sát được

>> m2=obsv(Ak2,C)
m2 =
1.0e+03 *
0

5.0680

0.0141 -1.6446
>> rank(m2)
ans = 2
Suy ra quan sát được


Ta nhận thấy mô hình rời rạc hóa với chu kỳ trích mẫu là 0.01 s thì thời gian quá độ
của hệ thống đã giảm đi khoảng 1 nửa và ta có thể dễ dàng nhận thấy mô hình hệ
thống đã bị thay đổi mất tính tổng quát.
Vơi chu kỳ chích mẫu là 0.1s thì ta có thể thấy rằng toàn bộ tính chất của hệ thống đã
bị thay đổi không còn là mô hình liên tục nữa,hình dạng đồ thị khác hẳn với ban đầu
của hệ thống.
5. Gián đoạn hóa hàm truyền đạt của mô hình động cơ theo phương pháp đã
học và sử dụng lệnh c2d của matlab để xác định hàm truyền đạt trên miền ảnh
Z thích hợp theo phương pháp Tustin, ZOH, FOH với các chu kì trích mẫu như
sau: T 1 = 0,1s và T 2 =0,01 s.
a) Hàm truyền đạt của mô hình động cơ khi bỏ qua sự ảnh hưởng của mô men tải
Trên miền ảnh Laplace:
-


Hàm truyền đạt hệ hở :

=== =
]
Trong đó: D==5066.432 , x==62.5 , y= =47989.2 , A= = ,
(s) = D. [ + . ]

B= , C=-x. =


Đặt E= (s) = D. [ + . ]
(z)= D.[A. +B. +E.
Đặt m= , n= , k=
(z)= D.[A. +B. +E. ]
(z)=(1-(z)= D.[A+ B. +D. ]
=D.
+) Chu kì trích mẫu T=0.1ms m=0.996646, n=0.021612, k=0.993769

+) Chu kì trích mẫu T=0.01msm=0.999685, n=2.16752.e-3, k=0.9993751

b)Dùng lệnh c2d của MATLAB để tìm hàm truyền đạt của mô hình động cơ
trên miền ảnh Z theo các phương pháp ZOH, FOH, TUSTIN
>> Gh=(1/Ra)*tf([1],[Ta 1])*Km*phi*tf([1],[2*pi*J 0])
Chương trình Matlab:
>> Gh=(1/Ra)*tf(1,[Ta 1])*km*phi*tf(1,[2*pi*j 0])
Gh =
6.112
----------------------0.001206 s^2 + 0.0754 s
>> Gdc=feedback(Gh,Ke*phi)

Gdc =
6.112
------------------------------0.001206 s^2 + 0.0754 s + 57.89
+) Với chu kì trích mẫu T=0.1ms
>> Gdc1=c2d(Gdc,0.1e-3,'zoh')
Gdc1 =
2.528e-05 z + 2.523e-05


----------------------z^2 - 1.993 z + 0.9938
Sample time: 0.0001 seconds
>> Gdc2=c2d(Gdc,0.1e-3,'foh')
Gdc2 =
8.431e-06 z^2 + 3.367e-05 z + 8.404e-06
--------------------------------------z^2 - 1.993 z + 0.9938
Sample time: 0.0001 seconds
>> Gdc3=c2d(Gdc,0.1e-3,'tustin')
Gdc3 =
1.263e-05 z^2 + 2.525e-05 z + 1.263e-05
--------------------------------------z^2 - 1.993 z + 0.9938
Sample time: 0.0001 seconds
+) Với chu kì trích mẫu T=0.01ms
>> Gdc4=c2d(Gdc,0.01e-3,'zoh')
Gdc4 =
2.533e-07 z + 2.532e-07
----------------------z^2 - 1.999 z + 0.9994
Sample time: 1e-05 seconds
>> Gdc5=c2d(Gdc,0.01e-3,'foh')
Gdc5 =
8.443e-08 z^2 + 3.377e-07 z + 8.44e-08

-------------------------------------z^2 - 1.999 z + 0.9994


Sample time: 1e-05 seconds
>> Gdc6=c2d(Gdc,0.01e-3,'tustin')
Gdc6 =
1.266e-07 z^2 + 2.532e-07 z + 1.266e-07
--------------------------------------z^2 - 1.999 z + 0.9994
Sample time: 1e-05 seconds

Gdc7=tf([ ],[1 ],Ttm1)
Gdc8=tf([],[1 ],Ttm2)

Dựa vào đồ thị đáp ứng bước nhảy ta có thể thấy, kết quả thu được từ 2 mô hình
Gdc1( Phương pháp ZOH) và Gdc7( phương pháp tính toán) xấp xỉ như nhau(có sai
khác do làm tròn khi tín bằng tay). Mô hình Gdc2( Phương pháp FOH) cho kết quả
xấp xỉ mô hình Gdc3( Phương pháp tustin) và khác với mô hình Gdc1 và Gdc7.


Dựa vào đồ thị đáp ứng bước nhảy ta có thể thấy, kết quả thu được từ 2 mô hình
Gdc4( Phương pháp ZOH) và Gdc8( phương pháp tính toán) xấp xỉ như nhau. Mô
hình Gdc5( Phương pháp FOH) cho kết quả xấp xỉ mô hình Gdc6( Phương pháp
tustin) và khác với mô hình Gdc4 và Gdc8.

BÀI 2: TỔNG HỢP VÒNG ĐIỀU CHỈNH DÒNG PHẦN
ỨNG(ĐIỀU KHIỂN MOMEN QUAY)
1.Thiết kế bộ ĐC dòng theo phương pháp Dead-Beat.
Sử dụng hàm truyền Gi4, bộ điều khiển L(z-1) là bậc 1 và bậc 2:
Gi4 =
Áp dụng phương pháp Dead-Beat ta có 2 bộ ĐC bậc 1 và bậc 2:


Với :

b0 = 0; b1 = 0.0001209; b2 = 0.0001169; a0 = 1; a1 = -1.904; a2 = 0.9043;
Ttm2 = 1e-5


l0 = a0/((a0-a1)*(b0+b1+b2));
l1 = -a1/((a0-a1)*(b0+b1+b2));
L1 = filt([l0 l1],1,Ttm2);
Az = filt([a0 a1 a2],1,Ttm2);
Bz = filt([b0 b1 b2],1,Ttm2);
GR1 = (L1*Az)/(1-L1*Bz)
l10 = (a0*a0)/((a0*a0+a1*a1-a0*(a1+a2))*(b0+b1+b2));
l11 = (-a0*a1)/((a0*a0+a1*a1-a0*(a1+a2))*(b0+b1+b2));
l12 = (a1*a1-a0*a2)/((a0*a0+a1*a1-a0*(a1+a2))*(b0+b1+b2));
L2 = filt([l10 l11 l12],1,Ttm2);
Az = filt([a0 a1 a2],1,Ttm2);
Bz = filt([b0 b1 b2],1,Ttm2);
GR2 = (L2*Az)/(1-L2*Bz)
Ta có:
GR1 =

1448 - 3940 z^-2 + 2493 z^-3
------------------------------------------1 - 0.1751 z^-1 - 0.5026 z^-2 - 0.3223 z^-3
Sample time: 1e-05 seconds
GR2 =

747.6 - 3.411e-13 z^-2 - 2586 z^-3 + 1839 z^-4
---------------------------------------------------------1 - 0.09039 z^-1 - 0.2595 z^-2 - 0.4123 z^-3 - 0.2378 z^-4

Sample time: 1e-05 seconds

>> Gz=Bz/Az


Gz =
0.0001209 z^-1 + 0.0001169 z^-2
------------------------------1 - 1.904 z^-1 + 0.9043 z^-2
Sample time: 1e-05 seconds

+ Kết quả của bộ điều khiển:

GR2=
+ Hàm truyền:
Gk1 = feedback(GR1*Bz/Az,1)
Gk2 = feedback(GR2*Bz/Az,1)
Gk1 =
0.1751 z^-1 + 0.1693 z^-2 - 0.4764 z^-3 - 0.1592 z^-4 + 0.2915 z^-5
------------------------------------------------------------------1 - 1.904 z^-1 + 0.9043 z^-2 - 5.551e-17 z^-3 + 5.551e-17 z^-5
Sample time: 1e-05 seconds
Gk2 =
0.09039 z^-1 + 0.0874 z^-2 - 4.123e-17 z^-3 - 0.3126 z^-4 - 0.07989 z^-5 +
0.215 z^-6
------------------------------------------------------------------------------------1 - 1.904 z^-1 + 0.9043 z^-2 + 1.428e-17 z^-3 + 5.551e-17 z^-4 - 2.776e-17
z^-5
Sample time: 1e-05 seconds
>> hold on
>> step(Gk1)
>> step(Gk2)



Đồ thị:

Mô phỏng bằng simulink
MSSV : 20121858
Step 1 : Step time =0, Final value=1858
Step 2 : Step time=4e-5, Final value=858
Step 3 : Step time=8e-5, Final value=58


Kết quả :
Step

Đáp ứng đầu ra của bộ điều khiển GR1


Đáp ứng đầu ra của bộ điều khiển GR2

Ta thấy khi dùng bộ điều chỉnh Deat-Beat thứ nhất đầu ra đạt giá trị xác lập sau 3
chu kỳ trích mẫu, còn với bộ điều chỉnh Deat- Beat thứ hai thì đầu ra đạt giá trị xác
lập sau 4 chu kỳ trích mẫu.
2.Phương pháp cân bằng mô hình (phương pháp bù):
Sử dụng bộ điều khiển cân bằng mô hình với 2 trường hợp:
a.Sau 2 bước giá trị của đối tượng điều khiển sẽ đạt giá trị đặt của giá trị chủ đạo, thì
hàm truyền vòng kín sẽ là:
Gw2(z)=x1.z-1+x2.z-2 với x1+x2 =1


b. Sau 3 bước giá trị của đối tượng điều khiển sẽ đạt giá trị đặt của giá trị chủ đạo, thì
hàm truyền vòng kín sẽ là:

Gw3(z)=x1.z-1+x2.z-2 +x3.z-3 với x1+x2+x3 =1

>> Gz=Bz/Az
Gz =
0.0001209 z^-1 + 0.0001169 z^-2
------------------------------1 - 1.904 z^-1 + 0.9043 z^-2
Sample time: 1e-05 seconds
Chọn Gw2(z)=0.65.z-1+0.35.z-2. Chương trình matlab là:
>> Gw2=filt([0 0.65 0.35],[1],Ttm2)
Gw2 =
0.65 z^-1 + 0.35 z^-2
Sample time: 1e-05 seconds

>>Gr2=Gw2/[Gz*(1-Gw2)]
Gr2 =
0.65 - 0.8876 z^-1 - 0.0786 z^-2 + 0.3165 z^-3
-----------------------------------------------------------0.0001209 + 3.831e-05 z^-1 - 0.0001183 z^-2 - 4.091e-05 z^-3
Sample time: 1e-05 seconds
Hàm truyền:

Gk3 = feedback(Gr2*Bz/Az,1)
Gk3 =
7.859e-05 z^-1 - 3.133e-05 z^-2 - 0.0001133 z^-3 + 2.908e-05 z^-4 + 3.7e-05
z^-5
-------------------------------------------------------------------------------0.0001209 - 0.0001133 z^-1 - 0.0001132 z^-2 + 0.0001057 z^-3 + 6.776e-21
z^-4


×