Tải bản đầy đủ (.docx) (40 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 (634.84 KB, 40 trang )

Báo cáo thí nghiệm ĐKS

Bài 1: Tìm mô hình gián đoạn của ĐCMC

Sơ đồ cấu trúc của ĐCMC kích từ độc lập
Các tham số của động cơ:
• Điện trở phần ứng : RA=250mΩ.
• Điện cảm phần ứng: LA=4mH.
• Từ thông danh định: R=0,04Vs.
• Mômen quán tính : J=0,012kgm2.
• Hằng số động cơ : ke=236,8; km=38,2.

Hàm truyền đạt của đối tượng dòng phần ứng:

Câu 1: Tìm mô hình gián đoạn của Gi(s) bằng phép biến đổi z
Với = 0.1ms →
= 0.01ms →
Hàm truyền trên miền Z:

1


Báo cáo thí nghiệm ĐKS

Trong đó:

Do nên:

Trong đó:
Thay số vào ta được:
• Với = 0.1ms



• Với T=0.01ms

Câu 2: Sử dụng lệnh ‘c2d’ của Matlab để tìm hàm truyền đạt trên miền Z
theo các phương pháp giữ mẫu tín hiệu ZOH, FOH, TUSTIN.
Tính toán các tham số:
>> Ra=250e-3;La=4e-3;Ta=La/Ra;Tt=100e-6;T1=0.1e-3;T2=0.01e-3;
>> Gi=tf([1],[Tt 1])*(1/Ra)*tf([1],[Ta 1])
Transfer function:
4
--------------------------------2


Báo cáo thí nghiệm ĐKS

1.6e-006 s^2 + 0.0161 s + 1
>> step(Gi)
Step Response
4

3.5

3

Amplitude

2.5

2


1.5

1

0.5

0

0

0.01

0.02

0.03

0.04

0.05
Time (sec)

>> Giz3 = c2d(Gi,T1,'zoh')

Transfer function:
0.009176 z + 0.006577
--------------------------z^2 - 1.362 z + 0.3656
>> Giz4 = c2d(Gi,T1,'foh')
Transfer function:
0.003298 z^2 + 0.01046 z + 0.001998
---------------------------------------------3


0.06

0.07

0.08

0.09

0.1


Báo cáo thí nghiệm ĐKS

z^2 - 1.362 z + 0.3656
>> Giz5 = c2d(Gi,T1,'tustin')
Transfer function:
0.004154 z^2 + 0.008307 z + 0.004154
----------------------------------------------z^2 - 1.327 z + 0.3313
>> Giz6 = c2d(Gi,T2,'zoh')
Transfer function:
0.0001209 z + 0.0001169
------------------------------z^2 - 1.904 z + 0.9043
>>Giz7 = c2d(Gi,T2,'zoh')

Transfer function:
4.064e-005 z^2 + 0.0001585 z + 3.865e-005
----------------------------------------z^2 - 1.904 z + 0.9043
>>Giz8 = c2d(Gi,T2,'tustin')
Transfer function:

5.951e-005 z^2 + 0.000119 z + 5.951e-005
---------------------------------------------------4


Báo cáo thí nghiệm ĐKS

z^2 - 1.904 z + 0.9042

Câu 3: Mô phỏng và khảo sát các MHGĐ thu được ở câu 1 & câu 2
Nhập bằng tay Giz1 và Giz2:
>> Giz1 = tf([0.009176376 0.006577356],[1 -1.361648932 0.365587365],0.1e-3)
Transfer function:
0.009176 z + 0.006577
--------------------------z^2 - 1.362 z + 0.3656
>> Giz2 = tf([0.00012091 0.000116922],[1 -1.904212613 0.904272071],0.01e-3)
Transfer function:
0.0001209 z + 0.0001169
------------------------------z^2 - 1.904 z + 0.9043

Dùng các lệnh step và hold on để vẽ và giữ đồ thị trên cùng một hình
>> step(Gi)
>> hold on
>> step(Giz1)
>> step(Giz2)
>> step(Giz3)
>> step(Giz4)
>> step(Giz5)
5



Báo cáo thí nghiệm ĐKS

>> step(Giz6)
>> step(Giz7)
>> step(Giz8)
Kết quả:
Step Response
4

3.5
Gi
Giz1
Giz2
Giz3
Giz4
Giz5
Giz6
Giz7
Giz8

3

Amplitude

2.5

2

1.5


1

0.5

0

0

0.01

0.02

0.03

0.04

0.05
Time (sec)

Phóng to đồ thị đáp ứng:

6

0.06

0.07

0.08

0.09


0.1


Báo cáo thí nghiệm ĐKS

Step Response
2.606
Gi
Giz1
Giz2
Giz3
Giz4
Giz5
Giz6
Giz7
Giz8

2.604

2.602

Amplitude

2.6

2.598

2.596


2.594

2.592
0.0167

0.0168

0.0168

0.0169

0.0169

0.017

0.017

0.017

Time (sec)

Nhận xét:
Khi T = 0.01ms, kết quả mô phỏng đồ thị của 3 phương pháp ZOH, FOH,
TUSTIN đều bám sát nhau và gần sát với kết quả biến đổi bằng tính tay.
Hệ có thời gian quá độ rất lớn so với Ttm.
- Khi T = 0.1ms, có sự khác biệt khá lớn giữa đồ thị áp ứng của các
phương pháp.
-

Câu 4: Xây dựng mô hình trạng thái của ĐCMC

Hàm truyền đạt của động cơ 1 chiều có dạng:

7


Báo cáo thí nghiệm ĐKS

Đặt Gđc có dạng:

Tính toán trên MATLAB:
>> Ke=236.8;J=0.012;phi=0.04;Km=38.2;
>> b01=Km*phi;a03=Ke*Km*phi*phi;a02=2*pi*Ra*J;a01=2*pi*Ra*Ta*J;
>> [A,B,C,D]=tf2ss([b01],[a01 a02 a03])
A=
1.0e+004 *
-0.0062 -4.7989
0.0001
0

B=
1
0

C=
1.0e+003 *
0

5.0664

D=

8


Báo cáo thí nghiệm ĐKS

0
>> [Ak1,Bk1] = c2d(A,B,0.1)
Ak1 =
-0.0438 -2.9549
0.0001 -0.0399

Bk1 =
1.0e-004 *
0.6157
0.2167
>> [Ak2,Bk2] = c2d(A,B,0.01)

Ak2 =

-0.4987 -133.8774
0.0028 -0.3244

Bk2 =

0.0028
0.0000
9


Báo cáo thí nghiệm ĐKS


>> G1 = ss(Ak1,Bk1,C,D,0.1)

a=
x1

x2

x1 -0.04378

-2.955

x2 6.157e-005

-0.03994

b=
u1
x1 6.157e-005
x2 2.167e-005

c=
x1 x2
y1

0 5066

d=
u1
y1 0


Sampling time: 0.1
10


Báo cáo thí nghiệm ĐKS

Discrete-time model.
>> G2 = ss(Ak2,Bk2,C,D,0.01)

a=
x1

x2

x1 -0.4987 -133.9
x2 0.00279 -0.3244

b=
u1
x1 0.00279
x2 2.76e-005

c=
x1 x2
y1

0 5066

d=

u1
y1 0

Sampling time: 0.01
Discrete-time model.
11


Báo cáo thí nghiệm ĐKS

So sánh đáp ứng:
>> step (A,B,C,D)
>> hold on
>> step (G1)
>> step (G2)
Ta được:
Step Response
0.18
sys
G1

0.16

G2

0.14

Amplitude

0.12

0.1
0.08
0.06
0.04
0.02
0
0

0.05

0.1

0.15

0.2

0.25

Time (sec)

Nhận xét: Với chu kỳ trích mẫu 0.1s, đáp ứng bước nhảy gần như bỏ qua quá trình
quá độ. Còn với chu kỳ trích mẫu 0.01s, đáp ứng đã bám gần giống với đáp ứng
của hệ liên tục.

Bài 2: Tổng hợp vòng điều chỉnh dòng phần ứng (điều khiển momen
quay)

Đối tượng Giz4 (tính theo phương pháp FOH, Ttm1 = 0.1e-3(s))
Thiết kế bộ điều khiển dòng theo phương pháp Dead-Beat, Lz1 và Lz2
12



Báo cáo thí nghiệm ĐKS

1. Thiết kế bộ điều khiển theo phương pháp Dead-Beat bậc 1

Ta có = +
Áp dụng công thức:
=
=
=
Dùng Matlab:
>> b0=0.03298;b1=0.01046;b2=0.001998;a0=1;a1=-1.362;a2=0.3656;
>> l0=a0/((a0-a1)*(b0+b1+b2))
l0 =
26.8704
>> l1=-a1/((a0-a1)*(b0+b1+b2))

l1 =

36.5975
>> Lz1=filt([l0 l1],1,0.1e-3)
Transfer function:
26.87 + 36.6 z^-1

Sampling time: 0.0001
13


Báo cáo thí nghiệm ĐKS


>>Az=filt([a0 a1 a2],1,0.1e-3)
Transfer function:
1 - 1.362 z^-1 + 0.3656 z^-2

Sampling time: 0.0001
>>Bz=filt([b0 b1 b2],1,0.1e-3)
Transfer function:
0.003298 + 0.01046 z^-1 + 0.001998 z^-2

Sampling time: 0.0001
>>Gri=(Lz1*Az)/(1-Lz1*Bz)

Transfer function:

26.87 - 40.02 z^-2 + 13.38 z^-3
-----------------------------------------------------------0.9114 - 0.4018 z^-1 - 0.4365 z^-2 - 0.07312 z^-3

Sampling time: 0.0001
>> Gz4=filt([b0 b1 b2],[a0 a1 a2],0.1e-3)
14


Báo cáo thí nghiệm ĐKS

Transfer function:
0.003298 + 0.01046 z^-1 + 0.001998 z^-2
--------------------------------------------------1 - 1.362 z^-1 + 0.3656 z^-2
>> Gk1=(Gri*Gz4)/(1+Gri*Gz4)


Transfer function:

0.08077 + 0.1106 z^-1 - 0.4938 z^-2

- 0.0547 z^-3 + 0.7352 z^-4

- 0.289 z^-5 - 0.1604 z^-6

+ 0.05889 z^-7 + 0.01642 z^-8
15


Báo cáo thí nghiệm ĐKS

- 0.003208 z^-9 - 0.0007147 z^-10

---------------------------------------------------------0.9114 - 2.884 z^-1 + 3.015 z^-2 - 0.8308 z^-3

- 0.4078 z^-4 + 0.1919 z^-5

+ 0.01448 z^-6 - 0.009774 z^-7

+ 4.668e-019 z^-8 - 5.791e

-019 z^-9 - 9.275e-020 z^-10

>> Gk2=feedback(Gri*Gz4,1)
Transfer function:

0.08862 + 0.2811 z^-1 - 0.07831 z^-2 - 0.3745 z^-3 + 0.05999 z^-4 + 0.02673 z^-5

---------------------------------------------------------------------------------------------------1 - 1.362 z^-1 + 0.3656 z^-2 + 1.388e-017 z^-4 + 3.469e-018 z^-5

>>step(Gk1)
>>hold on
16


Báo cáo thí nghiệm ĐKS

>>step(Gk2)
Ta được:
Step Response
Gk1
Gk2

1

Amplitude

0.8

0.6

0.4

0.2

0
0


0.2

0.4

0.6

0.8

1
Time (sec)

Mô phỏng với Simulink:

Kết quả:

17

1.2

1.4

1.6

1.8

2
x 10

-3



Báo cáo thí nghiệm ĐKS

Nhận xét: Từ 2 kết
quả mô phỏng bằng
dung câu lệnh và
dùng Simulink ta thấy
đầu ra đạt giá trị xác
lập sau 3 chu kỳ trích
mẫu.

2. Thiết kế bộ

điều khiển theo
phương pháp
Dead-Beat bậc
2
Ta có:
= + +
Với:
=
=
=
Tiếp tục tìm Gri theo công thức ở câu trước
Dùng matlab:
>> MS=[a0*a0+a1*a1-a0*(a1+a2)]*(b0+b1+b2)
MS =
0.0607
>> l01=(a0*a0)/MS
18



Báo cáo thí nghiệm ĐKS

l01 =
16.4790
>> l11=-(a0*a1)/MS
l11 =
22.4444
>> l12=(a1*a1-a0*a2)/MS
l12 =
24.5445
>> Lz2=filt([l01 l11 l12],1,0.0001)
Transfer function:
16.48 + 22.44 z^-1 + 24.54 z^-2
>> Gri1=(Lz2*Az)/(1-Lz2*Bz)
Transfer function:

16.48 + 3.553e-015 z^-1 - 8.882e-016 z^-2 - 25.22 z^-3 + 8.973 z^-4
----------------------------------------------------------------------------------0.9457 - 0.2464 z^-1 - 0.3486 z^-2 - 0.3016 z^-3 - 0.04904 z^-4
>>Gk3=(Gri1*Gz4)/(1+Gri1*Gz4)
Transfer function:

0.05139 + 0.07961 z^-1 - 0.2153 z^-2 - 0.06732 z^-3 - 0.05585 z^-4 + 0.4136 z^-5
- 0.1353 z^-6 - 0.05655 z^-7 - 0.04227 z^-8 + 0.02335 z^-9 + 0.00651 z^-10 0.001559 z^-11 - 0.0003214 z^-12
19


Báo cáo thí nghiệm ĐKS


---------------------------------------------------------------------------------------------------0.9457 - 2.822 z^-1 + 2.768 z^-2 - 0.9309 z^-3 + 0.2426 z^-4 - 0.3321 z^-5 +
0.1269 z^-6 + 0.008528 z^-7 - 0.006555 z^-8 - 7.606e-019 z^-9 + 1.914e-018 z^10 + 9.802e-020 z^-11 - 6.22e-020 z^-12

>> step(Gk3)
Kết quả:
Step Response
1.4

1.2

Amplitude

1

0.8

0.6

0.4

0.2

0

0

0.2

0.4


0.6

0.8

1

1.2

Time (sec)

Mô phỏng Simulink

20

1.4

1.6

1.8

2
x 10

-3


Báo cáo thí nghiệm ĐKS

Kết quả:


Nhận xét: Đầu ra đạt ổn định sau 4 chu kỳ trích mẫu.
21


Báo cáo thí nghiệm ĐKS

Bài 3: Tổng hợp vòng điều chỉnh tốc độ quay

1. Xác định hàm truyền đạt trên miền ảnh z của đối tượng

Đối tượng tốc độ ở bài này được tính bằng :
Gn = Gk (bài2) .Km.ψ .

1 1
2π J s

Gk(bài 2) được tính xấp xỉ thành 1 khâu quán tính tích phân bậc nhất:
Gk (bài 2) =

1
2Tt s + 1

(với Tt = 100

Thay số vào ta tính được :
Chuyển sang miền ảnh với số mũ âm, Ttm1=0.1e-3(s)
Dùng matlab :
>> Gn = tf(20.27,[0.0002 1 0])
22


µs

)


Báo cáo thí nghiệm ĐKS

>> Gz = c2d(Gn,Ttm1,'foh')

>> Gz4 = filt([0.0001497 0.0005312 0.0001167],[1 -1.607 0.6065],0.1e-3)

Vậy : =
Ta có hệ số như sau:
>> b0 = 0.0001497; b1 = 0.0005312; b2 = 0.0001167; a0 =1; a1= - 1.607;
a2=0.6065;
2. Tổng hợp bộ điều chỉnh PI theo phương pháp gán điểm cực

Viết lại hàm truyền đạt đối tượng:
=
Bộ điều khiển có cấu trúc:
r0 + r1 z −1 r0 + r1 z −1 r0 z + r1 R ( z )
GR ( z ) =
=
=
=
1 + pz −1
1 − z −1
z −1
P( z)


Đa thức đặc tính của hàm truyền chủ đạo:

Giả sử điểm cực của đối tượng chủ đạo là thì ta có:

Chọn z1=0.8, z2=0.85
23


Báo cáo thí nghiệm ĐKS

Cân bằng hệ số ta tính được:
r0 = 594.12
r1 = -487.11
z3 = 0.63
Vậy bộ điều khiển:

Sơ đồ mô phỏng simulink

24


Báo cáo thí nghiệm ĐKS

Sơ đồ Simulink kiểm tra sai lệch

25


×