Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

23
Họ và tên: Nguyễn Đình Việt Mssv: 20149583 Lớp: ĐK&TĐH (CN lên KS) - K56 Nhóm: Tổ 8 - Kíp 2 – Thứ 5 Số liệu: Giz5(T1,Foh); 21% BÁO CÁO THÍ NGHIỆM HỆ THỐNG ĐIỀU KHIỂN SỐ Bài số 2: Tổng hợp vòng điểu chỉnh dòng phần ứng (điều khiển mômen quay) Đối tượng Giz5 (tính theo phương pháp Foh, chu kì trích mẫu T1=0.1e -3s T tm1 =0,1 ms ) Giz 5= 0.003298 z 2 + 0.01046 z+0.001998 z 2 1.362 z+0.3656 Phương pháp Dead-Beat: với L( ) L 1 (z -1 ) = l 0 + l 1 .z -1 L 2 (z -1 ) = l 10 + l 11 z -1 + l 12 z -2 Phương pháp cân bằng mô hình đa thức: Gw2=x 1 .z -1 + x 2 .z -2 I. PHƯƠNG PHÁP DEAD-BEAT 1. Thiết kế bộ điều khiển theo phương pháp Dead – Beat với L 1 (z -1 ) = l 0 + l 1 .z -1 1.1. Thực hiện trên MATLAB Nhập lại các tham số của mô hình đối tượng và xây dựng lại hàm truyền với các hệ số mũ của z là nhỏ hơn hoặc bằng 0. >> b0=0.003298;b1=0.01046;b2=0.001998;a0=1;a1=- 1.362;a2=0.3656;T1=0.1e-3; >> l0=a0/((a0-a1)*(b0+b1+b2)) l0 = 26.8704 >> l1=-a1/((a0-a1)*(b0+b1+b2)) l1 = 36.5975 >> L1z=filt([l0 l1],1,T1)

Transcript of Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

Page 1: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

Họ và tên: Nguyễn Đình Việt

Mssv: 20149583

Lớp: ĐK&TĐH (CN lên KS) - K56

Nhóm: Tổ 8 - Kíp 2 – Thứ 5

Số liệu: Giz5(T1,Foh); 21%

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

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

Đối tượng Giz5 (tính theo phương pháp Foh, chu kì trích mẫu T1=0.1e -3s)

Giz5=0.003298 z2+0.01046 z+0.001998z2−1.362 z+0.3656

Phương pháp Dead-Beat: với L( ) L1(z-1) = l0 + l1.z-1 L2(z-1) = l10 + l11z-1 + l12z-2

Phương pháp cân bằng mô hình đa thức: Gw2=x1.z-1 + x2.z-2

I. PHƯƠNG PHÁP DEAD-BEAT1. Thiết kế bộ điều khiển theo phương pháp Dead – Beat với L1(z-1) = l0 + l1.z-1

1.1. Thực hiện trên MATLABNhập lại các tham số của mô hình đối tượng và xây dựng lại hàm truyền với các hệ số mũ của z là nhỏ hơn hoặc bằng 0.

>> b0=0.003298;b1=0.01046;b2=0.001998;a0=1;a1=-1.362;a2=0.3656;T1=0.1e-3;>> l0=a0/((a0-a1)*(b0+b1+b2))

l0 = 26.8704

>> l1=-a1/((a0-a1)*(b0+b1+b2))l1 = 36.5975>> L1z=filt([l0 l1],1,T1)Transfer function:

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

>> Az=filt([a0 a1 a2],1,T1) Transfer function:

Page 2: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

1 - 1.362 z^-1 + 0.3656 z^-2 Sampling time: 0.0001

Ta được hàm truyền: >> Gz=Bz/AzTransfer function:

0.003298 + 0.01046 z^-1 + 0.001998 z^-2--------------------------------------- 1 - 1.362 z^-1 + 0.3656 z^-2

Sampling time: 0.0001

Mô hình khâu Dead-Beat có hàm truyền là: >> GRi=(L1z*Az)/(1-L1z*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

Hàm truyền của khâu điều chỉnh dòng có thêm khâu Deat-Beat là:>> Gk1=(Gz*GRi)/(1+Gz*GRi)

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 - 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

Sampling time: 0.0001>> step(Gk1)

Page 3: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

>> pole(Gk1)

ans =

0

0

0

0

0

1.0000

0.9943

0.9943

-0.2796 + 0.0454i

-0.2796 - 0.0454i

0.3677

0.3677

0.0000 + 0.0000i

0.0000 - 0.0000i

Page 4: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

-0.0000

1.2. Mô phỏng khảo sátMô phỏng simulink cho bộ điều khiển thiết kế bằng phương pháp Dead-Beat:Thông số của khối Step, theo 4 số cuối của MSSV: 9583

Kết quả mô phỏng simulink với bộ điều khiển thiết kế bằng phương pháp Dead-Beat:

>>ScopeData

>> stairs(ScopeData.time,ScopeData.signals.values(:));

>> grid on

Page 5: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

Nhận xét : Từ kết quả của mô phỏng, ta thấy sau 3 chu kỳ trích mẫu thì hệ xác lập

2. Thiết kế theo phương pháp Dead – Beat với L2(z-1) = l01 + l11z-1 + l12z-2

2.1. Thực hiện trên Matlab

>>b0=0.003298;b1=0.01046;b2=0.001998;a0=1;a1=-1.362;a2=0.3656;T1=0.1e-3;>>MSC=(a0^2 + a1^2 - a0*(a1+a2))*(b0+b1+b2);>> l01=a0^2/MSCl01 = 16.4790

>> l11=-a0*a1/MSCl11 = 22.4444

>> l12=(a1^2-a0*a2)/MSCl12 = 24.5445

>> L2z=filt([l01 l11 l12],1,T1)Transfer function:16.48 + 22.44 z^-1 + 24.54 z^-2Sampling time: 0.0001

>> GRi2=(L2z*Az)/(1-L2z*Bz) Transfer function:16.48 + 3.553e-015 z^-1 - 8.882e-016 z^-2 - 25.22 z^-3 + 8.973 z^-4

Page 6: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

------------------------------------------------------------------- 0.9457 - 0.2464 z^-1 - 0.3486 z^-2 - 0.3016 z^-3 - 0.04904 z^-4 Sampling time: 0.0001>> Gk2=feedback(GRi2*Gz,1) Transfer function: 0.05435 + 0.1724 z^-1 + 0.03293 z^-2 - 0.08319 z^-3 - 0.2342 z^-4 + 0.04347 z^-5 + 0.01793 z^-6 -----------------------------------------------------------------------1 - 1.362 z^-1 + 0.3656 z^-2 - 5.551e-017 z^-3 - 2.776e-017 z^-4 - 1.388e-017 z^-5 + 3.469e-018 z^-6 Sampling time: 0.0001>> step(Gk2)

>> pole(Gk2)

ans =

0.9943 0.3677 0.0000 + 0.0000i 0.0000 - 0.0000i

Page 7: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

-0.0000 + 0.0000i -0.0000 - 0.0000i

2.2. Mô phỏng khảo sátMô phỏng simulink cho bộ điều khiển thiết kế bằng phương pháp Dead-Beat

Kết quả mô phỏng simulink với bộ điều khiển thiết kế bằng phương pháp Dead-Beat:

>>ScopeData1

>> stairs(ScopeData1.time,ScopeData1.signals.values(:));

>> grid on

Nhận xét: Kiểm tra điểm cực của Gk2 ta thấy hệ ổn định các điểm cực nằm trong vòng tròn đơn vị. Kiểm tra Step và qua mô phỏng ta cũng thấy được hệ thống ổn định sau 4 chu kỳ trích mẫu. Phương pháp Deat-Beat đưa ra là hợp lý.

Page 8: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

II. PHƯƠNG PHÁP CÂN BẰNG MÔ HÌNHII.1. Trường hợp tốc độ đáp ứng của giá trị thực là 2 chu kì trích mẫu

Cân bằng mô hình đa thức: Gw2=x1.z-1 + x2.z-2

Để hệ ổn định thì phương trình x1 .z−1+x2 .z−2=0 phải có nghiệm là điểm không nằm bên

ngoài vòng tròn đơn vị của Giz

Khi đó ta có: , với ,(Với điều kiện x1 +x2 =1 và x2 0)

Từ đó ta có: x1 =-0.5083; x2 =1.5083

2.1.1 Thực hiện trên MATLAB

>> x1=-0.50831; x2=1.5083;>> Gw2=filt([0 x1 x2],1,T1)Transfer function:-0.5083 z^-1 + 1.508 z^-2 Sampling time: 0.0001

>> GRi1=Gw2/((Bz/Az)*(1-Gw2))Transfer function: -0.5083 z^-1 + 2.201 z^-2 - 2.24 z^-3 + 0.5514 z^-4----------------------------------------------------------------------0.003298 + 0.01214 z^-1 + 0.002341 z^-2 - 0.01476 z^-3 - 0.003014 z^-4

Sampling time: 0.0001 >> Gk2=feedback(GRi1*Gz,1)Transfer function: -0.001676 z^-1 + 0.001941 z^-2 + 0.01461 z^-3 - 0.01722 z^-4 + 0.001292 z^-5 + 0.001102 z^-6 ------------------------------------------------------------------------0.003298 + 0.005968 z^-1 - 0.01104 z^-2 + 0.001103 z^-3 + 0.0007305 z^-4 Sampling time: 0.0001

>> step(Gk2)

Page 9: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

>> pole(Gk2)

ans =

0 0 -2.9675 0.9943 0.3677 -0.2042Sampling time: 0.0001

Nhận xét: Qua đồ thị Step ta có thể thấy hệ thống đã bị dao động, không ổn định. Kiểm tra điểm cực thì ta thấy có 1 điểm cực = -2.9675, nằm ngoài đường tròn đơn vị. Như vậy, phương pháp cân bằng mô hình đưa ra là không hợp lý.

2.1.2 Kiểm chứng bằng mô hình Simulink

Ta có kết quả mô phỏng:

Page 10: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

Nhận xét: Như vậy sau khi kiểm chứng bằng Simulink ta cũng thu được kết quả tương tự như hàm Step. Ta có thể kết luận được rằng phương pháp cân bằng mô hình không phù hợp với đối tượng Giz5.

2.2 Trường hợp tốc độ đáp ứng của giá trị thực là 3 chu kì trích mẫu

Khi đó ta có hàm truyền sẽ là:

Gw (z)=k1 .z−1+k2 .z−2+ k3.z , Để hệ ổn định thì phương trình k1 .z−1+k2 .z−2

+ k3.z

=0 phải có nghiệm là điểm không nằm bên ngoài vòng tròn đơn vị của Giz.

Ta chọn : k1=0.3; k2=0.6; k3=0.1;Thực hiện trên Matlab:>> Gw2=filt([0 0.3 0.6 0.1],1,0.1e-3) Transfer function:0.3 z^-1 + 0.6 z^-2 + 0.1 z^-3Sampling time: 0.0001

>> GRi2=Gw2/((Bz/Az)*(1-Gw2))Transfer function: 0.3 z^-1 + 0.1914 z^-2 - 0.6075 z^-3 + 0.08316 z^-4 + 0.03656 z^-5-------------------------------------------------------------------------0.003298 + 0.009471 z^-1 - 0.003119 z^-2 - 0.007205 z^-3 - 0.002245 z^-4 - 0.0001998 z^-5

Page 11: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

Sampling time: 0.0001

>> Gk2=feedback(GRi2*Gz,1)Transfer function: 0.0009894 z^-1 + 0.003769 z^-2 + 0.0005978 z^-3 - 0.005698 z^-4 - 0.0002234 z^-5 + 0.0005486 z^-6 + 7.305e-005 z^-7 -------------------------------------------------------------------------0.003298 + 0.005968 z^-1 - 0.01104 z^-2 + 0.001103 z^-3 + 0.0007305 z^-4 - 6.505e-019 z^-5 + 2.168e-019 z^-6 Sampling time: 0.0001>> step(Gk2)

>> pole(Gk2)

ans =

0 -2.9675 0.9943 0.3677 -0.2042 0.0000 + 0.0000i 0.0000 - 0.0000i

Page 12: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

Nhận xét: Cũng tương tự như với trường hợp hàm Gw bậc 2. Qua đồ thị Step ta có thể thấy hệ thống đã bị dao động, không ổn định. Kiểm tra điểm cực thì ta thấy có 1 điểm cực = -2.9675, nằm ngoài đường tròn đơn vị. Như vậy, phương pháp cân bằng mô hình đưa ra là không hợp lý.

Page 13: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

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

I. Xác định hàm truyền trên miền ảnh z

Số liệu: Dựa vào Hàm truyền của vòng điều chỉnh dòng phần ứng Gkín của bài số 2.

Độ quá điều chỉnh : Ϭ% = 21%Ta có đối tượng tốc độ quay :

Gn=G kb2. kMψ .1

2 πJs

Trong đó : Gkb2 là Gkín của bài 2 ; kM =38,2 ; ψ=0,04 Vs ; J= 0,012 kgm2.

Ta có Gkb2 được xấp xỉ thành 1 khâu quán tính tích phân bậc nhất:

Gkb2 =

12T t . s+1 Với Tt =100us

Thay số ta được:

Gn( s )=20 . 270 .0002 s 2̂ + s

Thực hiện trên Matlab :

>> Gns=tf([20.27],[2e-4 1 0])

Transfer function:

20.27

--------------

0.0002 s^2 + s

Chuyển sang miền ảnh Z bằng phương pháp ZOH, chu kì trích mẫu T1=0.1ms ta được:

>> Gnz=c2d(Gns,T1,'zoh')

Transfer function:

0.0004319 z + 0.0003657

-----------------------

z^2 - 1.607 z + 0.6065

Sampling time: 0.0001

Page 14: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

Nhập lại hàm truyền với số mũ âm:>> Gnz1=filt([0 0.0004319 0.0003657],[1 -1.607 0.6065],T1)

Transfer function:

0.0004319 z^-1 + 0.0003657 z^-2

-------------------------------

1 - 1.607 z^-1 + 0.6065 z^-2

Sampling time: 0.0001

>> step(Gnz1)

Nhận xét   : Qua đồ thị ta thấy đối tượng điều khiển tốc độ có dạng khâu tích phân I,hệ thống không ổn định. Như vậy nhiệm vụ đặt ra là phải thiết kế BĐK để đảm bảo đưa hệ thống đạt trạng thái xác lập ổn định sau N chu kì trích mẫu.

II. Thiết kế bộ điều chỉnh PI cho tốc độ động cơ bằng phương pháp gán điểm cựcHàm truyền trên miền ảnh z của đối tượng có dạng:

Bằng phương pháp zoh ở trên ta đã xác định được:

>> Gnz=c2d(Gns,T1,'zoh')

Page 15: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

Transfer function:

0.0004319 z + 0.0003657

-----------------------

z^2 - 1.607 z + 0.6065

Sampling time: 0.0001

Như vậy ta có: b0=0 ; b1= 0.0004319; b2= 0.0003657; a0=1 ; a1= -1.607; a2= 0.6065;

Thiết kế bộ điều chỉnh PI: GRn=r 0 z+r1

z+ p1=R z

P z

Ta có:

Gkb3=GRn .Gnz

1+GRn .Gnz=

R z

P z.Bnz

Anz

1+R z

P z.Bnz

Anz

=R z .Bnz

P z . Anz+R z. Bnz

Để hệ ổn định thì Gkb3 phải có đa thức đặc tính: N ( z )=P z . Anz+R z .Bnz có tất cả các nghiệm thuộc vòng tròn đơn vị.

Ta xét đa thức đặc tính:

N ( z )=P z . Anz+R z .Bnz=( z+ p1) . (a0 . z2+a1 . z+a2 )+(r 0 z+r1 ) .(b0 . z

2+b1 z+b2 ) = (a0+ r0b0)z3 + (a1 + p1a0 + r0b1 + r1b0)z2 + (a2 + p1a1 + r1b1 + r0b2)z + (a2p1 + b2r1)

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

N(z) = (z- z1) (z- z2) (z- z3)

= z3 - (z1 + z2 + z3)z2 + (z1z2 + z1z3+ z2z3)z - z1z2z3

Cân bằng hệ số ta có hệ phương trình:

{ a0+r 0.b0=1(luôn đúngvới r 0≠0)r 0.b1+r 1.b0+ p1.a0+a1=−(z1+z 2+z 3)

r 0b2+r1b1+a2+ p1a1=z1. z2+z 2. z 3+z3. z1b2. r 1+ p1a2=−z 1. z 2. z 3

Đặt z1+z2=m1; z1.z2=m2. Ta có hệ phương trình sau:

A.X=B

Page 16: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

[b1 b0 1b2 b1 −m10 b2 m 2 ][r 0

r 1z3 ]= [−m1−a1−a0 p1

m2−a2−p1a1−a2 p1 ]

Ta có: b0=0 ; b1= 0.0004319; b2= 0.0003657; a0=1 ; a1= -1.607; a2= 0.6065;

Chọn p1=-1; z1= 0.9393+0.0195i; z2= 0.9393-0.0195i => m1=z1+z2=1.8786; m2=z1.z2=0.8827

Giải hệ phương trình bằng MatLab:

>> b0=0 ; b1= 0.0004319; b2= 0.0003657; a0=1 ; a1= -1.607; a2= 0.6065;

>> p1=-1; m1=1.8786; m2=0.8827;

>> A=[b1 b0 1;b2 b1 -m1;0 b2 m2]

A =

0.0004 0 1.0000

0.0004 0.0004 -1.8786

0 0.0004 0.8827

>> B=[-m1-a1-a0*p1;m2-a2-p1*a1;-a2*p1]

B =

0.7284

-1.3308

0.6065

>> X=A\B

X =

49.5085

Page 17: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

-48.0154

0.7070

Như vậy: r0= 49.5085 r1= - 48.0154

Từ đó ta tìm được bộ điều khiển PI:

GRn=49.5085 z−48.0154

z−1= 49.5085−48.0154 z−1

1−z−1

Ta có hàm truyền hệ kín cho vòng điều chỉnh tốc độ quay:

>> GRn=filt([49.5085 -48.0154],[1 -1],T1)

Transfer function:

49.51 - 48.02 z^-1

------------------

1 - z^-1

Sampling time: 0.0001

>> Gk3=feedback(Gnz1*GRn,1)

Transfer function:

0.02138 z^-1 - 0.002633 z^-2 - 0.01756 z^-3

-------------------------------------------

1 - 2.586 z^-1 + 2.211 z^-2 - 0.6241 z^-3

Sampling time: 0.0001

>> step(Gk3)

Page 18: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

Kiểm chứng trên mô hình Simulink:

Kết quả mô phỏng:

Page 19: Báo cáo thí nghiệm hệ thống điều khiển số Tuần 2

Nhận xét: Độ quá điều chỉnh là 21% trùng khớp với số liệu đã cho trước. Thời gian xác lập ngắn, hệ thống ổn định sau: 0.01s Phương pháp gán điểm cực đưa ra là hợp lý.