You are on page 1of 17

Bài tập dài LTĐKTĐ

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:
1
WPID(s)=Kp(1+ +Td.s)
Ti.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

Input + + + 1 Output
Ki/s e-
Ls
- + T.s+1
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 Kp Ti Td
khiển
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;
Bài tập dài LTĐKTĐ
>> [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=
Bài tập dài LTĐKTĐ

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 σmax= 42% >20%
b)Chỉnh định lại các tham số của luật điều khiển P
Bài tập dài LTĐKTĐ
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.
-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
Bài tập dài LTĐKTĐ
-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
Bài tập dài LTĐKTĐ
>> 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:


Bài tập dài LTĐKTĐ

Hình 3

- Hệ thống ổn định
- Chỉ tiêu chất lượng: σmax=8.75%
Bài tập dài LTĐKTĐ
- 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 σmax=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)
Bài tập dài LTĐKTĐ

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
Bài tập dài LTĐKTĐ
---------------------------------------------
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á độ:
Bài tập dài LTĐKTĐ

Hình 5
-Hệ thống ổn định.
-Chỉ tiêu chất lượng :σmax=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
Bài tập dài LTĐKTĐ

Hình 6

-Hệ thống ổn định


-Chỉ tiêu chất lượng:σmax=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
Bài tập dài LTĐKTĐ

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= ∫ e^ 2(t )dt là nhỏ nhất (min).
0

*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
N
⇒ J= ∑ e^ 2i( PID )
i =1

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:
Bài tập dài LTĐKTĐ

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 :


Bài tập dài LTĐKTĐ

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];
>>pid=lsqpid(pid0,' bai_tap',[0 500])
Màn hình sẽ hiện ra kết quả :

> In C:\MATLAB6p5\toolbox\optim\leastsq.m at line 53


In C:\MATLAB6p5\work\lsqpid.m at line 4

f-COUNT RESID STEP-SIZE GRAD/SD LAMBDA


4 1542.38 1 -111
10 1522.7 0.206 -87.3 1633.72
16 1487.42 0.923 -0.00732 1634.33
Bài tập dài LTĐKTĐ

25 1486.02 11.1 -0.0105 70.4185


31 1485.96 0.989 9.98e-006 70.4201
38 1485.96 2.18 -1.65e-005 22.0823
45 1485.95 2.48 7.21e-007 11.0412

52 1485.95 1.94 -9.9e-006 3.74873


59 1485.94 2.73 -1.05e-005 1.00495
66 1485.92 1.58 8.06e-005 1.00563
72 1485.9 1.11 -0.000112 1.0088
79 1485.88 1.65 -6.91e-005 1.00899
85 1485.87 1.07 8.62e-005 1.01183
92 1485.86 1.74 -8e-005 0.367525
99 1485.84 1.56 -4.61e-006 0.143634
105 1485.82 1.11 -4.2e-005 0.151586
111 1485.81 1.08 -6.12e-005 0.152571
117 1485.8 1.22 -4.21e-005 0.15354
123 1485.8 1.07 2.59e-005 0.153756
129 1485.8 1.2 -3.22e-005 0.153987
135 1485.8 1.13 1.38e-005 0.154009
141 1485.8 1.1 -1.3e-005 0.154077
147 1485.8 1.29 2.21e-006 0.0770384
153 1485.8 1 5.13e-008 0.0770649
159 1485.8 1.17 4.34e-007 0.0385324
Optimization Terminated Successfully

pid =

1.7531 0.0609 5.7370

Cửa sổ scope se cho kết quả ra màn hình :


Bài tập dài LTĐKTĐ

Hình 9

Thời gian quá độ là 40,6 s


độ quá độ điều chỉnh là 4.25%

Kết luận : các tham số tối ưu của hệ thống là


Kp*= 1.7531
Ki*= 0.0609
Kd*=5.7370

You might also like