lina_232000

New Member

Download miễn phí Bài tập dài môn lý thuyết điều khiển tự động làm với matlab





Chỉnh định lại các tham số của luật điều khiển P
Như vậy với Kp = T/L chưa đạt mức chỉ tiêu yêu cầu là max dưới 20%.Ta chỉnh lại giá trị của Kp bằng 0.5*(T/L) thì được quá trình quá độ của hệ thống và các điểm cực điểm không mới như sau:(Hình 2)
T=15;L=9;Kp=1.2*(T/L);n=3;Ti=2*L;Td=0.5*L;
 
 
 
 
 
 
 
 
Hình 2
 
 
Từ đồ thị trên ta có max=4.25% < 20% và thời gian quá độ là 59sec<77.7sec
(Thời gian quá độ thực nghiệm Z-N).Vậy với Kp=0.5*(T/L) là đạt yêu cầu.
 



Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

Bµi tËp dµi m«n häc
Lý thuyÕt ®iÒu khiÓn tù ®éng
I.ThiÕt kÕ hÖ thèng ®iÒu khiÓn tù ®éng cã:
-Kh©u ®iÒu chØnh PID cã hµm truyÒn:
WPID(s)=Kp(1+ +Td.s)
-§èi t­îng ®iÒu khiÓn lµ mét kh©u qu¸n tÝnh bËc nhÊt vµ kh©u trÔ cã hµm truyÒn :
W§T(s)= e-Ls/(Ts+1)
-C¸c tham sè L,T cña ®èi t­¬ng ®iÒu khiÓn: L=9;T=15
*S¬ ®å khèi hÖ thèng ®iÒu khiÓn nh­ sau:
Kp
1
T.s+1
Ki/s
e-Ls
Input + + + Output
KD.s
- +
Ki=Kp/Ti;
Kd=Kp.Td;
II.TÝnh to¸n c¸c tham sè Kp,Ti,Td ®¶m b¶o tÝnh æn ®Þnh cña hÖ thèng:
-Theo Ziegler-Nichols th× ®Ó ®¶m b¶o tÝnh æn ®Þnh cña hÖ thèng trªn cÇn cã c¸c tham sè Kp,Ti,Td tho¶ m·n b¶ng sau øng víi tõng bé ®iÒu khiÓn:
C¸c bé ®iÒu khiÓn
Kp
Ti
Td
P
T/L
¥
0
PI
0.9T/L
L/0.3
0
PID
1.2T/L
2L
0.5L
III.XÐt tÝnh æn ®Þnh.T×m c¸c ®iÓm cùc vµ ®iÓm kh«ng.
Kh¶o s¸t chÊt l­îng cña hÖ thèng víi tõng kh©u ®iÒu khiÓn.
1.Kh©u ®iÒu khiÓn P :
a) Ch­¬ng tr×nh ch¹y trªn MATLAB:
>>L=9;T=15;Kp=T/L;n=3;
>> [n,d]=pade(L,n)
n =
-1.0000 1.3333 -0.7407 0.1646
d =
1.0000 1.3333 0.7407 0.1646
>> Wtre=tf(n,d)
Transfer function:
-s^3 + 1.333 s^2 - 0.7407 s + 0.1646
------------------------------------
s^3 + 1.333 s^2 + 0.7407 s + 0.1646
>> Wdt=tf(1,[T 1])*Wtre
Transfer function:
-s^3 + 1.333 s^2 - 0.7407 s + 0.1646
---------------------------------------------
15 s^4 + 21 s^3 + 12.44 s^2 + 3.21 s + 0.1646
>> Wpid=Kp;
>> W=feedback(Wpid*Wdt,1)
Transfer function:
-1.667 s^3 + 2.222 s^2 - 1.235 s + 0.2743
------------------------------------------------
15 s^4 + 19.33 s^3 + 14.67 s^2 + 1.975 s + 0.439
>> [p z]=pzmap(W)
p =
-0.5895 + 0.6817i
-0.5895 - 0.6817i
-0.0549 + 0.1817i
-0.0549 - 0.1817i
z =
0.4086 + 0.3899i
0.4086 - 0.3899i
0.5160
>> step(W)
MATLAB cho kÕt qu¶ sau:
H×nh 1
-NhËn thÊy r»ng víi Kp nhËn gi¸ trÞ trong b¶ng Ziegler-Nichols th× hÖ thèng æn ®Þnh víi thêi gian qu¸ ®é lµ 77.7sec
vµ chØ tiªu chÊt l­îng smax= 42% >20%
b)ChØnh ®Þnh l¹i c¸c tham sè cña luËt ®iÒu khiÓn P
Nh­ vËy víi Kp = T/L ch­a ®¹t møc chØ tiªu yªu cÇu lµ s max d­íi 20%.Ta chØnh l¹i gi¸ trÞ cña Kp b»ng 0.5*(T/L) th× ®­îc qu¸ tr×nh qu¸ ®é cña hÖ thèng vµ c¸c ®iÓm cùc ®iÓm kh«ng míi nh­ sau:(H×nh 2)
T=15;L=9;Kp=1.2*(T/L);n=3;Ti=2*L;Td=0.5*L;
H×nh 2
Tõ ®å thÞ trªn ta cã smax=4.25% < 20% vµ thêi gian qu¸ ®é lµ 59sec<77.7sec
(Thêi gian qu¸ ®é thùc nghiÖm Z-N).VËy víi Kp=0.5*(T/L) lµ ®¹t yªu cÇu.
-C¸c ®iÓm cùc vµ c¸c ®iÓm kh«ng míi:
>> [p z]=pzmap(W)
p =
-1.0096
-0.2899 + 0.1343i
-0.2899 - 0.1343i
-0.0771 + 0.0474i
-0.0771 - 0.0474i
z =
0.4086 + 0.3899i
0.4086 - 0.3899i
0.5160
-0.4208
-0.0792
2.Kh©u ®iÒu chØnh PI
a) Ch­¬ng tr×nh ch¹y trªn Matlab:
>> L=9;T=15;Kp=0.9*(T/L);Ti=L/0.3;n=3;
>> [n,d]=pade(L,n)
n =
-1.0000 1.3333 -0.7407 0.1646
d =
1.0000 1.3333 0.7407 0.1646
>> Wtre=tf(n,d)
Transfer function:
-s^3 + 1.333 s^2 - 0.7407 s + 0.1646
------------------------------------
s^3 + 1.333 s^2 + 0.7407 s + 0.1646
>> Wdt=tf(1,[T 1])*Wtre
Transfer function:
-s^3 + 1.333 s^2 - 0.7407 s + 0.1646
---------------------------------------------
15 s^4 + 21 s^3 + 12.44 s^2 + 3.21 s + 0.1646
>> Wpid=Kp*tf([Ti 1],[Ti 0])
Transfer function:
45 s + 1.5
----------
30 s
>> W=feedback(Wpid*Wdt,1)
Transfer function:
-45 s^4 + 58.5 s^3 - 31.33 s^2 + 6.296 s + 0.2469
------------------------------------------------------------
450 s^5 + 585 s^4 + 431.8 s^3 + 64.96 s^2 + 11.23 s + 0.2469
>> [p z]=pzmap(W)
p =
-0.5801 + 0.6553i
-0.5801 - 0.6553i
-0.0574 + 0.1592i
-0.0574 - 0.1592i
-0.0250
z =
0.4086 + 0.3899i
0.4086 - 0.3899i
0.5160
-0.0333
>> step(W)
MATLAB cho qu¸ tr×nh qu¸ ®é nh­ sau:
H×nh 3
- HÖ thèng æn ®Þnh
- ChØ tiªu chÊt l­îng: smax=8.75%
- Thêi gian qu¸ ®é:104sec
b)ChØnh ®Þnh l¹i c¸c tham sè cña luËt ®iÒu khiÓn PI
-Ta tiÕn hµnh chØnh ®Þnh l¹i c¸c tham sè nh­ sau: Kp=1;Ti=24:
*
>> step(W)
Qu¸ tr×nh qu¸ ®é míi nh­ sau:
H×nh 4
-HÖ thèng æn ®Þnh
-ChØ tiªu chÊt l­îng smax=0%<20%
-Thêi gian qu¸ ®é:90.4sec<104sec(Thêi gian qu¸ ®é tÝnh theo c¸c tham sè trong b¶ng thùc nghiÖm Z-N)
*C¸c ®iÓm cùc vµ ®iÓm kh«ng míi:
>> [p z]=pzmap(W)
p =
-0.5630 + 0.5799i
-0.5630 - 0.5799i
-0.0871 + 0.1245i
-0.0871 - 0.1245i
-0.0331
z =
0.4086 + 0.3899i
0.4086 - 0.3899i
0.5160
-0.0455
3.Kh©u ®iÒu chØnh PID:
a) Ch­¬ng tr×nh ch¹y trªn Matlab:
>> L=9;T=15;Kp=1.2*(T/L);Ti=2*L;Td=0.5*L;n=3;
>> [n,d]=pade(L,n)
n =
-1.0000 1.3333 -0.7407 0.1646
d =
1.0000 1.3333 0.7407 0.1646
>> Wtre=tf(n,d)
Transfer function:
-s^3 + 1.333 s^2 - 0.7407 s + 0.1646
------------------------------------
s^3 + 1.333 s^2 + 0.7407 s + 0.1646
>> Wdt=tf(1,[T 1])*Wtre
Transfer function:
-s^3 + 1.333 s^2 - 0.7407 s + 0.1646
---------------------------------------------
15 s^4 + 21 s^3 + 12.44 s^2 + 3.21 s + 0.1646
>> Wpid=Kp*tf([Ti*Td Ti 1],[Ti 0])
Transfer function:
162 s^2 + 36 s + 2
------------------
18 s
>> W=feedback(Wpid*Wdt,1)
Transfer function:
-162 s^5 + 180 s^4 - 74 s^3 + 2.667 s^2 + 4.444 s + 0.3292
----------------------------------------------------------
108 s^5 + 558 s^4 + 150 s^3 + 60.44 s^2 + 7.407 s + 0.3292
>> [p z]=pzmap(W)
p =
-4.9063
-0.0556 + 0.2906i
-0.0556 - 0.2906i
-0.0746 + 0.0391i
-0.0746 - 0.0391i
z =
0.4086 + 0.3899i
0.4086 - 0.3899i
0.5160
-0.1111 + 0.0000i
-0.1111 - 0.0000i
>> step(W)
*Qu¸ tr×nh qu¸ ®é:
H×nh 5
-HÖ thèng æn ®Þnh.
-ChØ tiªu chÊt l­îng :smax=250% >20%
-Thêi gian qu¸ ®é : t=42.4sec
b)ChØnh ®Þnh l¹i c¸c tham sè cña luËt ®iÒu khiÓn PID
*Qu¸ tr×nh qu¸ ®é víi tham sè chØnh ®Þnh: Kp=0.2;Ti=8;Td=1
H×nh 6
-HÖ thèng æn ®Þnh
-ChØ tiªu chÊt l­îng:smax=2.42% <20%
-Thêi gian qu¸ ®é:t=20.4sec < 42.4sec(Thêi gian qu¸ ®é tÝnh theo tham sè trong b¶ng thùc nghiÖm Z-N)
* C¸c ®iÓm cùc vµ c¸c ®iÓm kh«ng míi:
p =
-0.4453 + 0.3753i
-0.4453 - 0.3753i
-0.4644
-0.0342 + 0.0244i
-0.0342 - 0.0244i
z =
-0.8536
0.4086 + 0.3899i
0.4086 - 0.3899i
0.5160
-0.1464
IV.TÝnh tham sè tèi ­u cña bé ®iÒu khiÓn PID dïng hµm Least-quares.
1.Hµm Least-quares.
*Yªu cÇu cña ®Ò bµi lµ t×m c¸c tham sè Kp,Ki,Kd sao cho tæng sai sè trong suèt qu¸ tr×nh qu¸ ®é:
J= lµ nhá nhÊt (min).
*Do hÖ thèng xÐt lµ æn ®Þnh nªn ta chØ xÐt trong kho¶ng thêi gian [0 NT]
+ N ®ñ lín ®Õ cã sai sè taÞ ®ã gÇn b»ng 0.
+ T thêi gian lÊy mÉu.
ÞEi phô thuéc vµo c¸c tham sè PID
Þ J=
2.C¸c hµm ®Ó tÝnh to¸n c¸c tham sè tèi ­u PID.
a) Hµm asignpid:
function assignpid(pid)
assignin('base','Kp',pid(1));
assignin('base','Ki',pid(2));
assignin('base','Kd',pid(3));
*Thùc hiÖn g¸n 3 tham sè cña kh©u PID b»ng c¸c tham sè Kp,Ki,Kd.
b) Hµm yout_1:
function e=yout_1(pid,model,tspan)
opt=simset('solver','ode5');
assignpid(pid);
[t,x,y]=sim('bai_tap',tspan,opt);
e=y-1;
*Thùc hiÖn c¸c chøc n¨ng:
-TÝnh ra sai sè.
-G¸n c¸c tham sè.
-Tù ch¹y cöa sæ Simulink
c) Hµm lsqpid:
function pid=lsqpid(pid0,model,tspan)
options=foptions;
options=[1 0.01 0.01];
pid=leastsq('yout_1',pid0,options,[],'bai_tap',tspan);
3.Qu¸ tr×nh tÝnh to¸n trªn m¸y:
a)S¬ l­îc qu¸ tr×nh tÝnh:
-Dïng 2 cöa sæ Command window &Simulink trong Matlab.
-Víi s¬ kiÖn ban ®Çu Simulink sÏ ch¹y vµ ®­a ra kÕt qu¶ sai sè cho Command.Command tÝnh to¸n vµ ®­a trë l¹i kÕt qu¶ thm sè PID cho Simulink.Simulink l¹i ch¹y vµ ®­a ra tham sè...Qu¸ tr×nh sÏ kÕt thóc khi møc sai sè lµ kh«ng thay ®æi.
b)C¸c b­íc tiÕn hµnh.
*B­íc 1:Copy 3 file võa t¹o vµo th­ môc Optim/Toolbox/Matlab.
*B­íc 2:T¹o m« h×nh 'bai_tap' trªn Simulink:
H×nh 7
>> T=15;L=9;Kp=1.39;Ti=16.5;Td=3;
>>[n,d]=pade(L,3);
>>Wtre=tf(n,d);
>>Wdt=tf(1,[T 1])*Wtre;
>>Wpid=Kp*(1+tf(1,[Ti 0])+tf([Td 0],[1])) ;
>>W=feedback(Wpid*Wdt,1);
>> step(W)
Cöa sæ scope se cho kÕt qu¶ ra mµn h×nh :
H×nh 8
-LÊy c¸c gi¸ trÞ Kp,Ki,Kd ®· chØnh ®Þnh nhËp vµo kh©u PID sÏ ®­îc kÕt qu¶ trªn:(H×nh 8)
-G¸n c¸c tham sè trong kh©u PID lµ Kp,Ki,Kd.
Thêi gian trÔ lµ 9s
*B­íc 3:Trªn cöa sæ Command Window dïng 2 lÖnh sau:
>>pid0=[1.39 0.2 1.56];
>>...
 
Top