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.

pdf6 trang | Chia sẻ: linhmy2pp | Ngày: 18/03/2022 | Lượt xem: 136 | Lượt tải: 0download
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:

  • pdfthiet_ke_bo_dieu_khien_pid_va_bo_dieu_khien_flc_fuzzy_logic.pdf