Thiết kế bộ điều khiển pid và bộ điều khiển FLC (Fuzzy logic controller) cho hệ thống gia nhiệt
Với kết quả thực nghiệm (Hình 11 đến Hình
16) trên ta thấy rằng bộ điều khiển gia nhiệt
sử dụng điều khiển mờ (FuzzyController) cho
đáp ứng tốt hơn bộ điều khiển PID khi đặt
nhiệt độ khoảng từ 600C đến 1000C, và khi
cho nhiễu tác động cụ thể là độ quá điều
chỉnh, tuy nhiên thời gian đáp ứng của bộ PID
tốt hơn so với Fuzzy Controller. Hệ điều
khiển thiết kế dựa trên phần mền Visual Basic
có thể thay đổi linh hoạt các tham số điều
khiển đối với bộ điều khiển PID và với bộ
điều khiển mờ, có thể thay đổi đỉnh cũng như
miền xác định của các tập mờ đồng thời có
nhiều tùy chọn các phương pháp giải mờ khác
nhau. Từ đó, sẽ đưa ra các bài thí nghiệm phù
hợp với từng môn học cụ thể của bộ môn.
Hơn nữa hệ thống cũng có thể điều khiển linh
hoạt thông qua phần mềm MATLAB/
SIMULINK. Cuối cùng, hệ điều khiển gia
nhiệt này cũng có thể áp dụng các phương
pháp hiện đại như điều khiển dự báo, điều
khiển thích nghi, điều khiển tối ưu mà tác giả
đang thực hiện.
6 trang |
Chia sẻ: linhmy2pp | Ngày: 18/03/2022 | Lượt xem: 287 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Thiết kế bộ điều khiển pid và bộ điều khiển FLC (Fuzzy logic controller) cho hệ thống gia nhiệt, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Nguy ễn Th ị Thanh Qu ỳnh và Đtg Tạp chí KHOA H ỌC & CÔNG NGH Ệ 112(12)/2: 39 - 44
THI ẾT K Ế B Ộ ĐIỀU KHI ỂN PID VÀ B Ộ ĐIỀU KHI ỂN FLC
(FUZZY LOGIC CONTROLLER) CHO H Ệ TH ỐNG GIA NHI ỆT
Nguy ễn Th ị Thanh Qu ỳnh *, Ph ạm V ăn Thiêm
Tr ường Đạ i h ọc K ỹ thu ật Công nghi ệp –ĐH Thái Nguyên
TÓM T ẮT
Vấn đề ổn đị nh nhi ệt độ cho h ệ th ống gia nhi ệt g ặp nhi ều khó kh ăn do các h ệ th ống này th ường có
quán tính nhi ệt r ất l ớn, nh ất là khi có nhi ễu tác độ ng và có sai l ệch v ề giá tr ị đo. V ề m ặt lý thuy ết
có nhi ều ph ươ ng pháp điều khi ển được áp d ụng cho bài toán này [1],[2],[5]. Bài báo này trình bày
tóm t ắt v ề hai ph ươ ng pháp thi ết k ế b ộ điều khi ển nhi ệt độ dùng PID và FLC (Fuzzy Logic
Controller) để ổn đị nh nhi ệt độ cho h ệ th ống gia nhi ệt CRT 916921 t ại tr ường Đạ i h ọc Kỹ thu ật
Công nghi ệp. Đồng th ời bài báo này c ũng kh ảo sát ch ất l ượng c ủa h ệ th ống gia nhi ệt khi có nhi ễu
tác động. Vi ệc th ực thi lu ật điều khi ển trên được xây d ựng trên môi tr ường Visual Basic 6.0 s ử
dụng chu ẩn giao ti ếp RS232 và được đóng gói để thu ận ti ện cho vi ệc cài đặt.
Từ khóa: Ổn đị nh nhi ệt độ , PID,FLC,CRT916921,Visual Basic 6.0
* −τ s
ĐẶT V ẤN ĐỀ G s= Ke CL
CL( ) CL (1)
Hệ th ống thí nghi ệm điều khi ển gia nhi ệt CRT
Bộ giao ti ếp ( đọc tín hi ệu đo và xu ất tín hi ệu
916921 đã được nhà tr ường mua t ừ nh ững n ăm
điều khi ển) s ử d ụng thêm PIC18F778.
2000, để ph ục v ụ cho công tác thí nghi ệm.
Hình 1. Hệ th ống thí nghi ệm điều khi ển gia nhi ệt Hình 2. Mô hình h ệ th ống thí nghi ệm điều khi ển
CRT 916921 gia nhi ệt CRT 916921
Mô hình c ủa h ệ th ống gia nhi ệt được th ể hi ện
nh ư Hình 2, trong đó:
Đầu đo nhi ệt độ , dùng c ảm bi ến PT
100(RTD) được c ấu t ạo t ừ kim lo ại Platinum
và qu ấn tùy theo hình dáng c ủa đầ u dò nhi ệt
có giá tr ị điện tr ở khi ở 0 0C là 100 Ohm, đây
là m ột lo ại cảm bi ến th ụ độ ng nên khi s ử Hình 3. Bộ giao ti ếp AD/DA c ũ (trái)
dụng c ần m ột ngu ồn ngoài ổn đị nh, có dải đo và b ộ giao ti ếp AD/DA sau khi c ải ti ến
từ -200 0C đến 600 0C. Hai b ơm ( pump1 và pump2 ) dùng để b ơm
Bộ ch ỉnh l ưu c ầu 1 pha điều khi ển theo nước l ạnh vào bình gia nhi ệt ( coi là nhi ễu ph ụ
ph ươ ng pháp pha đứng có hàm truy ền: tải), l ượng n ước b ơm vào ph ụ thu ộc vào độ
mở van tính theo ph ần tr ăm ( 0% đến 100% )
* Tel: 0912.667.268; Email: quynhruby@gmail.com của van Noise.
39
Nguy ễn Th ị Thanh Qu ỳnh và Đtg Tạp chí KHOA H ỌC & CÔNG NGH Ệ 112(12)/2: 39 - 44
Hi ện nay mô hình này không s ử d ụng được vì Sử d ụng ph ươ ng pháp nh ận d ạng mô hình có
nh ững lý do sau đây: tham s ố v ới ph ươ ng pháp ARX được l ập trình
+ Ph ần m ềm được tích h ợp s ẵn, đóng kín, b ản trong MATLAB v ới c ấu trúc l ệnh:
cài đặt được l ưu trên đĩa m ềm cho nên khi đĩa %% Chu ky trich mau
mềm h ỏng d ẫn đế n không còn b ản để cài đặt, a=size(u);
do v ậy h ệ th ống không có ph ần m ềm điều b=size(y); %%Chu ky trich mau
khi ển và không ch ạy được. T= 0.4
+ Sau kho ảng thời gian dài làm vi ệc, các Tm=857.2;
thông s ố c ủa đố i t ượng b ị thay đổ i, hàm %% thoi gian tien hanh thuc nghiem
truy ền c ủa đố i t ượng không còn đúng, do v ậy t=(0:T:Tm)'; %%thoi gian mo phong
vi ệc nh ận d ạng l ại h ệ th ống là c ần thi ết. data1 = iddata(y,u,T);
+ H ệ th ống giao ti ếp v ới c ổng COM 25 chân, data2 = detrend(data1);
mà hi ện nay các máy tính ph ần nhi ều đã b ỏ đi figure(1)
cổng giao ti ếp này mà máy tính ngày nay đa subplot(211)
số trang b ị c ổng giao ti ếp USB, d ẫn đế n plot(t(1:a),data1(1:a(:,)), 'r' ,t(1:a(
không linh ho ạt khi s ử d ụng. :,1)),data2(1:a(:,1)), 'b' )
title( 'ouput y21' ,'FontSize' ,11)
Do v ậy, tr ước h ết ta c ần ph ục h ồi và thay th ế
xlabel( ' t[s]' ,
lại b ộ giao ti ếp AD/DA c ũ b ằng vi điều khi ển 'FontSize' ,11)
PIC có ch ức n ăng AD/DA, và c ải ti ến b ộ giao legend( 'trend' ,'detrend' )
ti ếp qua c ổng COM 25 chân sang c ổng COM grid on
9 chân (RS232) và giao ti ếp USB [3]. subplot(212);
Ti ếp theo c ần nh ận d ạng l ại h ệ th ống để được plot(t(1:a(:,1)),u(1:a(:,)), 'r' ,t(1:a
mô hình, sau đó s ử d ụng mô hình này để thi ết (:,1)),data2.u(1:a(:,1)), 'b' )
kế b ộ điều khi ển PID. Nâng cao ch ất l ượng h ệ title( 'input u1' ,'FontSize' ,11)
th ống b ằng cách thi ết k ế b ộ điều khi ển m ờ grid on
động FLC. Do v ậy n ội dung của bài báo g ồm data1e = data(1:a(:,)/2); %bo du
các ph ần sau: ph ần 1 là đặt v ấn đề , ph ần 2 là lieu uoc luong,doi tuong nhan dang
nh ận d ạng h ệ th ống, ph ần 3 trình bày v ề cách data1v =
thi ết k ế b ộ điều khi ển, ph ần 4 là l ập trình lu ật data((a(:,)/2+1):a(:,)); %bo du lieu
điều khi ển và thi ết k ế giao di ện, cu ối cùng là kiem chung, doi tuong kiem chung
kết lu ận. nk=1:6;
NN =struc(2,2,nk); %NN =
NH ẬN D ẠNG H Ệ TH ỐNG STRUC(NA,NB,NK)
Lấy b ộ m ẫu vào/ra b ằng cách thu th ập 1294 V1
tập d ữ li ệu vào ra v ới pump1 và pump 2 mở =arxstruc(data1e,data1v,NN); %Compute
mức 50%: and compare loss functions for
single-output ARX models
[nk,Vm1]=selstruc(V1,0)
ARX2u1y1 =arx(data1e,[2 2 1]);
ARX5u1y1 =arx(data1e,[5 5 1]);
ARX10u1y1 =arx(data1e,[10 10 1]);
figure(2)
compare(data1v,ARX2u1y1,ARX5u1y1,ARX1
0u1y1)
title( 'ouput
y1' ,'FontSize' ,11);
ylabel( 'input
u1' ,'FontSize' ,11);
Hình 4. Tập d ữ li ệu vào ra dùng để nh ận d ạng
40
Nguy ễn Th ị Thanh Qu ỳnh và Đtg Tạp chí KHOA H ỌC & CÔNG NGH Ệ 112(12)/2: 39 - 44
ta thu được hàm truy ền c ủa h ệ gia nhi ệt v ới
độ fit : 74,69% có d ạng nh ư sau:
-0.003604 s + 0.02688
G s =
() 2
s+3.247 s + 0.01005 (2)
THI ẾT K Ế B Ộ ĐIỀU KHI ỂN
de( t )
Theo [1],[4] có r ất nhi ều các ph ươ ng pháp Hình 6. Tập m ờ đầ u vào đạo hàm sai l ệch
điều khi ển đố i v ới hàm truy ền d ạng (3), v ới Tập m ờ đầ u ra:
bài báo này tác gi ả s ử d ụng ph ươ ng pháp thiêt
kế b ộ điều khi ển theo tiêu chu ẩn “ph ẳng”.
Tuy nhiên, khi nh ận d ạng đố i t ượng s ẽ có sai
số v ề mô hình và ch ỉ đúng trong tr ường h ợp
khi m ở pump1 và pump 2 là 50%, v ậy để
nâng cao ch ất l ượng điều khi ển c ủa h ệ gia
nhi ệt tác gi ả s ử d ụng b ộ điều khi ển m ờ ( Fuzzy u( t )
Controller ) [6] vì b ộ điều khi ển m ờ không Hình 7. Tập m ờ đầ u ra
cần bi ết chính xác mô hình đối t ượng. Lu ật điều khi ển được cho nh ư sau:
Bộ điều khi ển theo tiêu chu ẩn “ph ẳng”
Từ (4), vì 0.003604 << 0.02688 cho nên ta
xấp x ỉ hàm truy ền có d ạng:
0.02688
G() s =
s2 + 3.247 s + 0 .01005
2.6748
⇔G() s =
322.8051s+ 1 0.308 3 s + 1
( )( ) (3) Quy t ắc h ợp thành được xác đị nh theo MAX-
MIN.
K=2.6748, T= 322.8051, T = 0.3083
Do vây, 1 b
TH ỰC THI B Ộ ĐIỀU KHI ỂN
Theo [4], b ộ điều khi ển ở đây được ch ọn là PI:
322.8051s + 1 1 Vi ệc th ực thi b ộ điều khi ển được th ực hi ện
Gm () s = =195.7223 +
1.6493s 1.6493 s (4) dựa trên môi tr ưởng Visual Basic 6.0 [7] có
Bộ điều khi ển m ờ ( Fuzzy Logic Controller ) giao di ện nh ư sau:
e t
Với d ải sai l ệch đầ u vào ( ) và tín hi ệu điều
u t
khi ển ( ) được xác đị nh:
e t =0 ÷ 70
( ) được quy đổ i sang 0C
ut=0 V ÷ 100 V
( ) ( ) ( )
Ta ti ến hành ch ọn b ộ điều khi ển m ờ độ ng
dạng PD v ới d ạng t ập m ờ đầ u vào và đầu ra
được ch ọn d ạng hình tam giác nh ư sau [6]:
Tập m ờ đầ u vào:
Hình 8. Giao di ện c ủa ch ươ ng trình điều khi ển
Lưu đồ thu ật toán điều khi ển theo PID và
e t
Hình 5 Tập m ờ đầ u vào sai l ệch ( ) FLC
41
Nguy ễn Th ị Thanh Qu ỳnh và Đtg Tạp chí KHOA H ỌC & CÔNG NGH Ệ 112(12)/2: 39 - 44
Kết qu ả thu được t ừ th ực nghi ệm nh ư sau:
Hình 11. Đặc tính đầ u ra c ủa h ệ gia nhi ệt
với b ộ điều khi ển PID
Hình 9. Lưu đồ thu ật toán c ủa b ộ điều khi ển PID
Hình 12. Đặc tính đầ u ra c ủa h ệ gia nhi ệt
với b ộ điều khi ển FLC
Khi có nhi ễu tác độ ng:
Tr ường h ợp 1 : Cho pump1 m ở với 20% v ới
th ời gian 140 giây
Th ời điểm
pump1 m ở 20%
Hình 13. Đặc tính đầ u ra khi có nhi ễu tác độ ng
của h ệ gia nhi ệt v ới b ộ điều khi ển PID
Th ời điểm
pump1 m ở 20%
FLC
Hình 10. Lưu đồ thu ật toán c ủa b ộ điều khi ển m ờ
Hình 14. Đặc tính đầ u ra khi có nhi ễu tác độ ng
5≤<e 17;500 ≤< de 1000
cho tr ường h ợp của h ệ gia nhi ệt v ới b ộ điều khi ển FLC
42
Nguy ễn Th ị Thanh Qu ỳnh và Đtg Tạp chí KHOA H ỌC & CÔNG NGH Ệ 112(12)/2: 39 - 44
Tr ường h ợp 2 : Cho pump1 và pump2 m ở v ới khi ển thi ết k ế d ựa trên ph ần m ền Visual Basic
20% có th ể thay đổ i linh ho ạt các tham s ố điều
khi ển đố i v ới b ộ điều khi ển PID và v ới b ộ
điều khi ển m ờ, có th ể thay đổ i đỉ nh c ũng nh ư
mi ền xác đị nh c ủa các t ập m ờ đồ ng th ời có
nhi ều tùy ch ọn các ph ươ ng pháp gi ải m ờ khác
Th ời điểm
pump1,2 nhau. T ừ đó, s ẽ đưa ra các bài thí nghi ệm phù
mở 20% hợp v ới t ừng môn h ọc c ụ th ể c ủa b ộ môn.
Hơn n ữa h ệ th ống c ũng có th ể điều khi ển linh
ho ạt thông qua ph ần m ềm MATLAB/
Hình 15. Đặc tính đầ u ra khi có nhi ễu tác độ ng SIMULINK. Cu ối cùng, h ệ điều khi ển gia
của h ệ gia nhi ệt v ới b ộ điều khi ển PID nhi ệt này c ũng có th ể áp d ụng các ph ươ ng
pháp hi ện đạ i nh ư điều khi ển d ự báo, điều
khi ển thích nghi, điều khi ển t ối ưu mà tác gi ả
đang th ực hi ện.
TÀI LI ỆU THAM KH ẢO
Th ời điểm
pump2 mở 20%
1. Otaga (2007), Modern Control Enginerring ,
Edition 3 th , Prace Hill.
2. Nguy ễn Doãn Ph ước (2010), Lý thuy ết điều
khi ển tuy ến tính , Nxb Khoa h ọc K ỹ thu ật.
Hình 16. Đặc tính đầ u ra khi có nhi ễu tác độ ng 3. Vũ Th ị Nguy ệt (2011), Đồ án t ốt nghi ệp, Ph ục
của h ệ gia nhi ệt v ới b ộ điều khi ển FLC hồi và thi ết k ế h ệ th ống gia nhi ệt CRT916920 .
KẾT LU ẬN 4. Nguy ễn Th ươ ng Ngô (2008), Lý thuy ết điều
khi ển thông th ường và hi ện đạ i, Quy ển 1: H ệ điều
Với k ết qu ả th ực nghi ệm (Hình 11 đến Hình khi ển tuy ến tính, Nxb Khoa h ọc K ỹ thu ật.
16 ) trên ta th ấy r ằng b ộ điều khi ển gia nhi ệt 5. Camacho E. F. & Bordons C. (2007), Model
sử d ụng điều khi ển m ờ ( FuzzyController ) cho predictive control , Springer, London.
đáp ứng t ốt h ơn b ộ điều khi ển PID khi đặ t 6. Nguy ễn Doãn Ph ước, Phan Xuân Minh (2009),
nhi ệt độ kho ảng t ừ 60 0C đến 100 0C, và khi Lý thuy ết điều khi ển m ờ, Nxb Khoa h ọc K ỹ thu ật.
7. Nguy ễn Th ị Ng ọc Mai (2005), Microsoft
cho nhi ễu tác độ ng c ụ th ể là độ quá điều
Visual Basic 6.0 l ập trình c ơ s ỡ d ữ li ệu, Nxb Lao
ch ỉnh, tuy nhiên th ời gian đáp ứng c ủa b ộ PID động xã h ội.
tốt h ơn so v ới Fuzzy Controller. H ệ điều
43
Nguy ễn Th ị Thanh Qu ỳnh và Đtg Tạp chí KHOA H ỌC & CÔNG NGH Ệ 112(12)/2: 39 - 44
SUMMARY
PID CONTROLLER DESIGN AND FUZZY LOGIC CONTROLLER FOR
HEATING SYSTEM
Nguyen Thi Thanh Quynh *, Pham Van Thiem
College of Technology - TNU
Temperature stability problem for the heating system were difficult because these systems often
have very high heat inertia , especially when there is noise and bias effects on measured values .
Theoretically there are many control methods are applied to this problem [1],[2],[5]. However, the
purposes of scientific research and experimental work , this report presents a summary of the two
design approaches PID controllers and controllers FLC ( Fuzzy Logic Controller ) for the
temperature to stabilize CRT 916 921 heating system and quality survey of the heating system
when the noise impact. The implementation of the controller is built on Visual Basic 6.0
environment using standard RS232 interface and is packaged for easy installation.
Key words: Temperature stability, PID,FLC,CRT916921, Visual Basic 6.0
Ph ản bi ện khoa h ọc: TS. Nguy ễn V ăn Chí – Tr ường Đại h ọc Kỹ thu ật Công nghi ệp – ĐH Thái Nguyên
* Tel: 0912.667.268; Email: quynhruby@gmail.com
44
Các file đính kèm theo tài liệu này:
- thiet_ke_bo_dieu_khien_pid_va_bo_dieu_khien_flc_fuzzy_logic.pdf