Professional Documents
Culture Documents
ĐỒ ÁN TỐT NGHIỆP
ĐẠI HỌC
NGÀNH: CÔNG NGHỆ KỸ THUẬT ĐIỀU KHIỂN VÀ
TỰ ĐỘNG HÓA
ĐỀ TÀI:
ĐỒ ÁN TỐT NGHIỆP
ĐẠI HỌC
NGÀNH: CÔNG NGHỆ KỸ THUẬT ĐIỀU KHIỂN VÀ
TỰ ĐỘNG HÓA
ĐỀ TÀI:
• Xác định phương pháp điều khiển công suất, đối tượng điều khiển.
• Thiết kế và hoàn thiện phần cứng là mô hình bộ điều khiển nhiệt độ bao gồm
module mạch điều khiển, mạch công suất, cảm biến và thiết bị gia nhiệt.
3. Kết quả dự kiến đạt được
• Xây dựng được bộ điều khiển PID mờ và mô phỏng thành công trên phần
mềm Matlab & Simulink.
• Nhúng giải thuật điều khiển vào vi điều khiển, bộ điều khiển PID mờ ổn định
theo yêu cầu công nghệ, độ quá điều chỉnh thấp hơn so với bộ PID thông
thường.
• Thiết kế mạch công suất, đảm bảo mạch cấp công suất phù hợp với yêu cầu
điều khiển. Hoàn thiện mô hình.
4. Giới hạn đề tài
Với mục tiêu ứng dụng thành công bộ PID mờ để ổn định tham số đặt nên trong
đề tài này chỉ đi mô phỏng và thiết kế mô hình cho đối tượng lò nhiệt. Tức là chỉ điều
khiển ổn định nhiệt độ khi gia nhiệt cho lò một nhiệt độ lớn hơn so với nhiệt độ ban
đầu. Đề tài này không thực hiện trường hợp điều khiển nhiệt độ thấp hơn so với nhiệt
độ ban đầu của lò.
{Trang trắng này dùng để dán bản Nhiệm vụ đồ án tốt nghiệp, hoặc thay trang
này bằng Nhiệm vụ đồ án tốt nghiệp}
LỜI NÓI ĐẦU
Hiện nay năng lượng nhiệt có vai trò rất quan trọng trong công nghiệp và đời
sống sinh hoạt. Trong công nghiệp, nhiệt được sử dụng để nung nấu vật liệu: gang,
thép...; sưởi ấm, sấy khô sản phẩm; tạo nhiệt độ thích hợp để bảo quản, thúc đẩy sự
phát triển của sản phẩm nông nghiệp... Vì vậy, việc điều khiển nhiệt độ một cách chính
xác là yêu cầu bắt buộc để đảm bảo hiệu quả sản xuất, năng cao chất lượng sản phẩm.
Quá trình gia nhiệt là một mô hình phi tuyến, để lò nhiệt đạt tới nhiệt độ mong
muốn cần một khoảng thời gian khá dài. Nên việc ứng dụng những thuật toán kinh
điển như sử dụng bộ điều khiển PI, PID vào bộ điều khiển nhiệt độ mang lại những kết
quả khả quan cho quá trình gia nhiệt. Tuy nhiên, hàm truyền lò nhiệt là một hàm có hai
thành phần gồm quán tính bật nhất và khâu trễ sẽ làm cho việc chỉnh định tham số bộ
điều khiển PID kinh điển gặp nhiều khó khăn nếu như nhiệt độ đặt mong muốn thay
đổi trong quá trình vận hành.
Trong điều khiển hiện đại, lý thuyết mờ giúp ta xây dựng những hệ thống mờ
thuần túy hay mờ lai với nhiệm vụ nâng cao chất lượng của các bộ điều khiển kinh
điển. Vì vậy, trong khuôn khổ đồ án tốt nghiệp, em xin trình bày đề tài "Thiết kế bộ
điều khiển nhiệt độ sử dụng giải thuật PID mờ" nhằm nâng cao chất lượng điều khiển
của bộ PID và khả năng chỉnh định tham số PID khi nhiệt đồ đặt thay đổi trong quá
trình vận hành.
Đồ án tốt nghiệp là một công cụ giúp em tổng kết lại tất cả kiến thức đã học
trên ghế nhà trường trong bốn năm qua. Tuy vậy, với kinh nghiệm và kiến thức chưa
nhiều chắc chắn không thể tránh khỏi những hạn chế và thiếu sót. Em rất mong nhận
được nhiều ý kiến đóng góp của quý thầy cô trong hội đồng để em có được những kiến
thức quý báu.
Em xin gửi lời cảm ơn sâu sắc nhất đền thầy Võ Khánh Thoại đã tận tình hướng
dẫn em trong suốt quá trình thực hiện đồ án này. Xin gửi những lời biết ơn trân trọng
nhất đến quý thầy cô Bộ môn Tự động hóa cũng như tất cả thầy cô trong khoa Điện -
Điện tử đã giảng dạy chúng em những kiến thức quý báu trong suốt những năm qua.
Con cảm ơn gia đình đã ủng hộ hỗ trợ con trong quãng thời gian này.
Xin chân thành cảm ơn!
i
CAM ĐOAN
Kính gửi Hội đồng bảo vệ đồ án tốt nghiệp ngành Công nghệ Kỹ thuật Điều
khiển và Tự động hóa. Em tên là Phạm Văn Sang, mã số sinh viên 1811505520266,
sinh viên lớp 18TDH2. Em xin cam đoan đề tài “Thiết kế bộ điều khiển nhiệt độ sử
dụng giải thuật PID mờ” được thực hiện dưới sự hướng dẫn của thầy ThS. Võ Khánh
Thoại, các nội dung và kết quả của đồ án này là trung thực, không sao chép từ bất kỳ
đồ án hoặc công trình nghiên cứu đã có từ trước. Em xin chịu hoàn toàn trách nhiệm
với nội dung đồ án này.
Người cam đoan
ii
MỤC LỤC
iii
2.2.3. Thành phần tích phân (I) ...........................................................................12
2.2.4. Thành phần vi phân (D) ............................................................................12
2.2.5. Chỉnh định tham số PID ............................................................................13
2.2.6. Bộ điều khiển PID số ................................................................................13
2.3. Lý thuyết điều khiển mờ (Fuzzy Logic Control) [8] .......................................15
2.3.1. Định nghĩa tập mờ .....................................................................................15
2.3.2. Cấu trúc bộ điều khiển mờ ........................................................................19
2.3.3. Nhược điểm của bộ điều khiển mờ thuần túy ...........................................20
2.4. Kết luận chương ...............................................................................................20
Chương 3: Xây dựng bộ điều khiển PID mờ cho bộ điều khiển nhiệt độ .....................21
3.1. Giới thiệu chương ............................................................................................21
3.2. Xây dựng hàm truyền lò nhiệt .........................................................................21
3.3. Chỉnh định tham số mờ PID ............................................................................25
3.3.1. Phương pháp chỉnh định ...........................................................................25
3.3.2. Cấu trúc bộ mờ và các hàm thuộc .............................................................26
3.3.3. Xây dựng luật hợp thành ...........................................................................28
3.3.4. Kết quả mô phỏng .....................................................................................30
3.4. Kết luật chương ................................................................................................32
Chương 4: Thiết kế hệ thống điều khiển – hoàn thiện mô hình ....................................33
4.1. Giới thiệu chương ............................................................................................33
4.2. Lưu đồ giải thuật PID.......................................................................................34
4.2.1. Lưu đồ thuật toán ......................................................................................34
4.2.2. Sơ đồ khối chương trình ............................................................................35
4.3. Sơ đồ mô hình và giải thích nguyên lý ............................................................36
4.3.1. Sơ đồ nguyên lý.........................................................................................36
4.3.2. Mạch công suất .........................................................................................38
4.4. Kết luận chương ...............................................................................................46
4.4.1. Một số kết quả mạch chạy thực tế .............................................................46
4.4.2. Kết luận chương ........................................................................................49
KẾT LUẬN ...................................................................................................................51
TÀI LIỆU THAM KHẢO .............................................................................................52
PHỤ LỤC ..........................................................................................................................
iv
DANH SÁCH CÁC BẢNG, HÌNH VẼ
BẢNG
Bảng 1.1 So sánh lò điện trở, lò hồ quang, lò cảm ứng .................................................6
Bảng 2.1 Các tham số PID theo phương pháp Ziegler-Nichols 1................................13
Bảng 3.1 Bảng luật hợp thành mờ................................................................................29
HÌNH VẼ
Hình 1.1 Sơ đồ khối chức năng bộ điều khiển nhiệt độ ................................................4
Hình 1.2 Cấu tạo lò hồ quang ........................................................................................5
Hình 1.3 Lò cảm ứng trong công nghiệp .......................................................................6
Hình 1.4 Đặc tính của lò nhiệt .......................................................................................8
Hình 1.5 Sơ đồ nguyên lý hệ thống ...............................................................................9
Hình 1.6 Sơ đồ điều khiển công suất lò .......................................................................10
Hình 2.1 Hệ thống điều khiển vòng kín với bộ điều khiển PID ..................................11
Hình 2.2 Miền xác định và miền tin cậy của tập mờ ...................................................15
Hình 2.3 Một số dạng hàm thuộc ................................................................................16
Hình 2.4 Ví dụ về liên hệ giữa biến ngôn ngữ và biến vật lý ......................................17
Hình 2.5 Giải mờ theo phương pháp cực đại ..............................................................19
Hình 2.6 Sơ đồ cấu trúc bộ điều khiển mờ ..................................................................19
Hình 3.1 Đặc tính của lò nhiệt. ....................................................................................21
Hình 3.2 Chương trình Simulink đọc giá trị nhiệt độ được gửi từ Arduino Uno ........22
Hình 3.3 Đồ thị lò nhiệt được khảo sát ........................................................................22
Hình 3.4 Thu thập dữ liệu thật bằng System Identification ........................................23
Hình 3.5 Các giá trị tham số của hàm truyền ..............................................................23
Hình 3.6 So sánh hàm truyền được xây dựng và đồ thị thực ......................................24
Hình 3.7 Khối hàm truyền ...........................................................................................24
Hình 3.8 Khối hàm truyền và khâu lấy mẫu ................................................................25
Hình 3.9 Mờ hóa bộ chỉnh định mờ cho PID ..............................................................26
Hình 3.10 Cấu trúc của khối mờ ....................................................................................26
Hình 3.11 Các hạm thuộc của sai lệch 𝑒(𝑡) ..................................................................27
Hình 3.12 Các hàm thuộc của đạo hàm sai lệch 𝑑𝑒(𝑡) .................................................27
Hình 3.13 Các hàm thuộc của biến ra 𝐾𝑃′, 𝐾𝐼′, 𝐾𝐷′ .....................................................28
v
Hình 3.14 Luật hợp thành và phương pháp giải mờ được sử dụng ...............................28
Hình 3.15 Luật hợp thành mờ ........................................................................................29
Hình 3.16 Sơ đồ khối bộ điều khiển PID mờ ................................................................30
Hình 3.17 So sánh đáp ứng của bộ PID (Ziegler-Nichols 1) và PID mờ ......................30
Hình 3.18 Kéo thả hàm truyền xuống khối To Workspace để lưu giá trị .....................31
Hình 3.19 Mở hộp Công cụ Turning và Import khối To Workspace ............................31
Hình 3.20 Lựa chọn kiểu PID ta được các thông số dưới góc phải màn hình...............31
Hình 3.21 So sánh đáp ứng của bộ PID (Tuning toolbox) và PID mờ ..........................32
Hình 4.1 Sơ đồ khối nhúng giải thuật vào vi điều khiển .............................................33
Hình 4.2 Chương trình chiếm đến 137% bộ nhớ của Arduino Mega .........................33
Hình 4.3 Lưu đồ giải thuật PID ...................................................................................34
Hình 4.4 Sơ đồ khối Simulink điều khiển bộ PID số ..................................................35
Hình 4.5 Giá trị PID suất ra trong khoảng từ 0 -255. ..................................................35
Hình 4.6 Sơ đồ nguyên lý mô hình ..............................................................................36
Hình 4.7 Sơ đồ nối dây phần cứng ..............................................................................37
Hình 4.8 Sơ đồ chân cảm biến LM35 ..........................................................................37
Hình 4.9 Lưu đồ giải thuật mạch công suất .................................................................38
Hình 4.10 Sơ đồ nguyên lý mạch công suất. .................................................................39
Hình 4.11 Hàm xử lý tín hiệu PWM .............................................................................39
Hình 4.12 Chu kì hoạt động của điện áp xoay chiều .....................................................40
Hình 4.13 Mạch phát hiện điểm 0 .................................................................................40
Hình 4.14 Sơ đồ chân thực tế PC817 ............................................................................41
Hình 4.15 Cầu Diode KBP206 ......................................................................................41
Hình 4.16 Lệnh ngắt gọi hàm kích dẫn Triac. ...............................................................42
Hình 4.17 Mạch kích góc mở Triac ...............................................................................42
Hình 4.18 Hàm xử lý thời gian kích Triac.....................................................................43
Hình 4.19 Sơ đồ chân và kích thước MOC3023 ...........................................................43
Hình 4.20 Sơ đồ chân Triac BTA12 ..............................................................................44
Hình 4.21 Khối quét 3 led 7 đoạn. .................................................................................44
Hình 4.22 Mã hex led 7 đoạn Anode chung ..................................................................45
Hình 4.23 Chương trình quét led 7 đoạn. ......................................................................45
Hình 4.24 Khai báo IC 74HC595 ..................................................................................46
Hình 4.25 Kết quả với giá trị 𝐾𝐼 = 10.5; 𝐾𝐼 = 0.06; 𝐾𝐷 = 2 ...................................47
Hình 4.26 Kết quả với giá trị 𝐾𝐼 = 10.5; 𝐾𝐼 = 0.03; 𝐾𝐷 = 0 ...................................47
Hình 4.27 Kết quả với giá trị 𝐾𝐼 = 10.5; 𝐾𝐼 = 0.06; 𝐾𝐷 = 0 ...................................48
vi
Hình 4.28 Kết quả với giá trị 𝐾𝐼 = 10.5; 𝐾𝐼 = 0.09; 𝐾𝐷 = 0.01 ..............................48
Hình 4.29 Kết quả với giá trị 𝐾𝐼 = 12; 𝐾𝐼 = 0.06; 𝐾𝐷 = 0 ......................................49
49
Hình 4.30 Kết quả với giá trị 𝐾𝐼 = 9; 𝐾𝐼 = 0.06; 𝐾𝐷 = 0.........................................49
vii
DANH SÁCH CÁC KÝ HIỆU, CHỮ VIẾT TẮT
viii
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
MỞ ĐẦU
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 1
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 2
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
• Dây điện trở bằng kim loại thường dùng những vật liệu có nhiệt độ nóng chảy
cao như Molipden, Tantan và Wonfram dùng cho các lò điện trở chân không hoặc
lò điện trở có khí bảo vệ.
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 3
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
• Dây điện trở bằng hợp kim thường là hợp kim Crôm – Niken hay hợp kim
Crôm – Nhôm. Thường có độ bền cơ học cao, dễ gia công, điện trở suất lớn và hệ
số nhiệt điện trở bé.
Để điều chỉnh công suất nhằm khống chế và ổn định nhiệt độ lò điện trở ta có
thể thực hiện bằng các phương pháp:
• Hạn chế công suất cấp cho dây điện trở bằng cách đấu thêm điện trở phụ.
• Dùng biến áp tự ngẫu, hoặc biến áp có nhiều đầu dây sơ cấp cấp cho lò điện trở.
• Thay đổi sơ đồ đấu dây của dây điện trở (từ tam giác → sao, hoặc nối tiếp →
song song).
• Đóng cắt nguồn cấp cho dây điện trở theo chu kì.
• Dùng bộ điều áp xoay chiều để thay đổi trị số điện áp cấp cho dây điện trở.
Để nâng cao độ chính xác khi khống chế và ổn định nhiệt độ của lò điện trở, hệ
thống điều chỉnh nhiệt độ lò điện trở là hệ thống kín (có mạch vòng phản hồi)
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 4
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
1.2.2. Lò hồ quang
Lò hồ quang điện là loại lò dùng năng lượng của hồ quang điện làm nóng và
đun chảy loại vật liệu chất vào lò [2]. Một lò hồ quang bất kì có cấu tạo như hình sau:
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 5
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 6
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Nhược điểm Tiêu thụ nhiều điện Có thể xảy ra hiện Giá thành tương đối
năng. Nếu lò có công tượng phóng hồ quang cao, đa số được áp
suất lớn phải tính điện gây hỏng hóc dụng trong sản xuất
chọn các thiết bị bảo thiết bị, gây cháy nổ công nghiệp, không sử
vệ. Cần người có ảnh hưởng đến an dụng cho những máy
chuyên môn vận hành toàn lao động. gia dụng. Tiêu hao
và bảo vệ. nhiều điện năng.
Từ những đặc điểm trình bày trên, mục đích và phương pháp nghiên cứu của đề
tài nhằm thí nghiệm một bộ điều khiển ổn định phục vụ cho đồ án tốt nghiệp và nghiên
cứu các nội dung liên quan đến lý thuyết điều khiển tự động nên yêu cầu nhiệt độ đặt
không quá cao. Do vậy mô hình lò nhiệt điện trở được lựa chọn là đối tượng điều
khiển vì được làm từ những vật liệu đơn giản, dễ chế tạo, giá thành rẻ, phù hợp với mô
hình thí nghiệm.
1.3. Một số phương pháp gia nhiệt
1.3.1. Phương pháp dùng máy biến áp
Là phương pháp điều chỉnh điện áp theo cấp, đòi hỏi công suất lớn. Đây là
phương pháp ít dùng trong điều khiển tự động và điều khiển một đối tượng lớn. Không
thích hợp sử dụng trong đề tài này.
1.3.2. Phương pháp dùng rơle
Đặc điểm của phương pháp này là khống chế mức nhiệt độ, mức điện áp khác
nhau nhưng không mang tính chất liên tục do rơle chỉ tác dụng điều khiển ở một số
thời điểm nhất định. Quá trình điều khiển thường xuyên bị dao động, phụ thuộc vào
các thời điểm đặt khác nhau vì thế độ chính xác điều chỉnh không cao, độ tin cậy kém.
Tuy vậy phương pháp dùng rơle có ưu điểm là đơn giản, phù hợp với yêu cầu
công nghệ, đòi hỏi độ chính xác cao.
1.3.3. Phương pháp dùng hai Thyristor mắc song song ngược
Khi có xung điều khiển thì hai Thyristor sẽ lần lượt mở cho dòng đi qua. Ta có
thể điều khiển cho Thyristor liên tục di chuyển từ đóng sang mở tương ứng với công
suất của lò thay đổi. Ưu điểm của phương pháp này là cho phép điều chỉnh trong phạm
vi rộng, độ chính xác tương đối cao, độ nhạy và điều chỉnh tương đối lớn có khả năng
tương đối liên tục và đều đặn. Phương pháp điều khiển hai Thyristor có thể điều khiển
theo biên độ hoặc độ rộng xung.
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 7
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 8
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
1
Do tín hiệu vào là hàm nấc đơn vị (𝑃 = 100%) nên 𝑅 (𝑠 ) =
𝑠
CẢM BIẾN
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 9
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 10
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Trong đó 𝑢 là tín hiệu điều khiển và 𝑒 là sai lệch điều khiển (𝑒 = 𝑦𝑠𝑝 − 𝑦).
Hình 2.1 Hệ thống điều khiển vòng kín với bộ điều khiển PID
- Nếu e(t) càng lớn thì thông qua thành phần tỉ lệ (khâu P) làm cho tín hiệu
điều khiển càng lớn.
- Nếu e(t) chưa bằng không thì thành phần tích phân (khâu I) vẫn tạo ra tín
hiệu điều chỉnh bất kể sai lệch đó nhỏ hay lớn.
- Nếu e(t) thay đổi lớn thành phần vi phân (khâu D) sẽ thực hiện vai trò dự
đoán đầu ra của quá trình và đưa ra phản ứng thích hợp nhằm tăng tốc độ
đáp ứng của hệ.
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 11
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Tín hiệu điều khiển là tổng của 3 thành phần: Tỉ lệ, tích phân và vi phân. Ta có
hàm truyền của bộ điều khiển PID:
𝑈(𝑠) 1 1
𝐺𝑃𝐼𝐷 (𝑠) = = 𝐾𝑃 + 𝐾𝐼 + 𝐾𝐷 𝑠 = 𝐾𝑃 (1 + + 𝑇𝐷 𝑆) (2.2)
𝐸(𝑠) 𝑠 𝑇𝐼 𝑆
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 12
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Nhược điểm của thành phần vi phân là rất nhạy với nhiễu đo hay của giá trị đặt
do tính đáp ứng nhanh nêu ở trên.
2.2.5. Chỉnh định tham số PID
Vì những thành phần tham số bộ PID có vai trò khác nhau và không thể đồng
thời đạt đạt được tất cả các tiêu chí chất lượng một cách tối ưu nên cần lựa chọn, chỉnh
định một cách hợp lý dựa tùy vào yêu cầu chất lượng và mục đích điều khiển.
Có nhiều phương pháp xác định tham số cho bộ điều khiển PID, Ở đây, vì giới
hạn về mặt nội dung nên chỉ trình bày phương pháp phổ biến nhất. Đó là phương pháp
Ziegler-Nichols 1, phương pháp này dựa trên đặc tính quá độ của quá trình thu được từ
thực nghiệm với giá trị thay đổi dạng bậc thang.
Thông số của bộ điều khiển được lựa chọn theo bảng sau [6]:
Bảng 2.1 Các tham số PID theo phương pháp Ziegler-Nichols 1
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 13
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Ta có hàm truyền của các khâu hiệu chỉnh PID số (PID rời rạc):
Khâu tỉ lệ:
𝐺𝑃 (𝑧) = 𝐾𝑃 (2.6)
Khâu vi phân:
Công thức sai phân lùi được sử dụng chủ yếu để tính hàm truyền khâu vi phân
rời rạc:
𝑒(𝑘)−𝑒(𝑘−1)
𝑢(𝑘 ) = 𝐾𝐷 (2.6)
𝑇𝑇
𝐸(𝑧)−𝑧 −1 𝐸(𝑧)
𝑈(𝑧) = 𝐾𝐷 (2.7)
2𝑇
𝑈(𝑧) 𝐾𝐷 𝐾𝐷 𝑧−1
𝐺𝐷 (𝑧) = = (1 − 𝑧 −1 ) = (2.8)
𝐸(𝑧) 𝑇 𝑇 𝑧
𝐾𝐼 𝑇
𝑢 (𝑘𝑇) = 𝑢 [(𝑘 − 1)𝑇] + (𝑒[(𝑘 − 1)𝑇] + 𝑒(𝑘𝑡)) (2.10)
2
𝐾𝐼 𝑇
𝑈(𝑧) = 𝑧 −1 𝑈(𝑧) + (𝑧 −1 𝐸 (𝑧) + 𝐸 (𝑧)) (2.11)
2
𝑈(𝑧) 𝐾𝐼 𝑇 𝑧 −1 +1 𝐾𝐼 𝑇 𝑧+1
𝐺𝐼 (𝑧) = = = (2.12)
𝐸(𝑧) 2 1−𝑧 −1 2 𝑧−1
Từ các khâu riêng biệt trên, ta có hàm truyền của bộ điều khiến PID số [7]:
𝑈(𝑧) 𝐾𝐼 .𝑇 𝑧+1 𝐾𝐷 𝑧−1
𝐺𝑃𝐼𝐷 (𝑧) = = 𝐾𝐷 + + (2.13)
𝐸(𝑧) 2 𝑧−1 𝑇 𝑧
↔ 2𝑇𝑧(𝑧 − 1)𝑈(𝑧)
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 14
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Hình 2.2 Miền xác định và miền tin cậy của tập mờ
• Độ cao tập mờ 𝐹 là giá trị ℎ = 𝑆𝑢𝑝. 𝜇𝐹 (𝑥), trong đó 𝑆𝑢𝑝. 𝜇𝐹 (𝑥) chỉ giá trị nhở
nhất trong tất cả các chặn trên của hàm 𝜇𝐹 (𝑥)
• Miền xác định của tập mờ 𝐹, ký hiệu là 𝑆 là tập con thỏa mãn:
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 15
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
• Miền tin cậy của tập mờ 𝐹, ký hiệu là 𝑇 là tập con thỏa mãn:
𝑇 = {𝑥 ∈ 𝐵 | 𝜇𝐹 (𝑥) = 1}
• Các dụng hàm thuộc (membership function) trong logic mờ: Gaussian, PI-
shape, S-shape, Sigmoidal, Z-shape…
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 16
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 17
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 18
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
∫𝑆 𝑦𝜇(𝑦)𝑑𝑦
𝑦′ = Trong đó 𝑆 là miền xác định của tập mờ 𝐵′
∫𝑆 𝜇(𝑦)𝑑𝑦
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 19
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 20
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Chương 3: Xây dựng bộ điều khiển PID mờ cho bộ điều khiển nhiệt độ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 21
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Hình 3.2 Chương trình Simulink đọc giá trị nhiệt độ được gửi từ Arduino Uno
Công suất của lò nhiệt được khảo sát sẽ là tối đa, đảm bảo không có thay đổi
trong suốt quá trình khảo sát. Cảm biến nhiệt độ sẽ đọc giá trị tại mỗi thời điểm khác
nhau với chu kì trích mẫu là 1000ms.
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 22
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 23
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Hình 3.6 So sánh hàm truyền được xây dựng và đồ thị thực
Suy ra được hàm truyền của lò nhiệt với độ chính xác 98,09%
4.079.𝑒 −9.51𝑠
𝐺 (𝑠 ) = (3.1)
1+239.8𝑠
Hàm truyền lò nhiệt được thể hiện trong Simulink bởi các khối Transfer Fcn
như sau:
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 24
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
𝐾𝐼 −𝐾𝐼𝑚𝑖𝑛
𝐾𝐼′ = (3.3)
𝐾𝐼𝑚𝑎𝑥 − 𝐾𝐼𝑚𝑖𝑛
𝐾𝐷 −𝐾𝐷𝑚𝑖𝑛
𝐾𝑃′ = (3.4)
𝐾𝐷𝑚𝑎𝑥 −𝐾𝐷𝑚𝑖𝑛
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 25
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Khi đó, các giá trị 𝐾𝑃′ , 𝐾𝐼′ , 𝐾𝐷′ 𝜖 [0,1], và các bộ PID được tính lại:
Khi đó bộ chỉnh định mờ của Malleshan – Rajani bao gồm hai đầu vào: sai lệch
𝑒(𝑡) và đạo hàm sai lệch 𝑑𝑒(𝑡). Và ba đầu ra cho ba tham số bộ PID: 𝐾𝑃′ , 𝐾𝐼′ , 𝐾𝐷′ như
hình 3.7:
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 26
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Hình 3.12 Các hàm thuộc của đạo hàm sai lệch 𝑑𝑒(𝑡)
Khoảng giá trị của các biến vật lý cho các hàm thuộc của đạo hàm sai lệch
𝑑𝑒(𝑡) ta cũng lấy tương tự như đối với 𝑒(𝑡). Tuy nhiên có một chú ý là khoảng giá trị
này phụ thuộc vào thời gian lấy mẫu 𝑇. Thời gian lấy mẫu ở đây là 𝑇 = 1.
Các đầu ra 𝐾𝑃′ , 𝐾𝐼′ , 𝐾𝐷′ có dạng giống nhau là dạng chuẩn, nên hàm thuộc ta cũng
lấy cùng dạng như hình 3.11. Khoảng giá trị biến ra là chính tắc [0; 1]
𝐾𝑃′ , 𝐾𝐼′ , 𝐾𝐷′ = {𝑆, 𝑀𝑆, 𝑀, 𝑀𝐵, 𝐵}
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 27
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Hình 3.13 Các hàm thuộc của biến ra 𝐾𝑃′ , 𝐾𝐼′ , 𝐾𝐷′
3.3.3. Xây dựng luật hợp thành
Phương pháp Mallesham – Rajani sử dụng luật hợp thành Min – Max và giải
mờ theo phương pháp điểm trọng tâm.
Hình 3.14 Luật hợp thành và phương pháp giải mờ được sử dụng
Các luật hợp thành đều có dạng chung cho ba đầu ra 𝐾𝑃′ , 𝐾𝐼′ , 𝐾𝐷′ như sau:
If 𝑒(𝑡) is NB and 𝑑𝑒(𝑡) is DF, then 𝐾𝑃′ , 𝐾𝐼′ , 𝐾𝐷′ is S
Tổng kết lại ta có bảng luật hợp thành như bảng 3.1 và hình 3.10 với hai giá tri
đầu vào, ba giá trị đầu ra và hai mươi lăm luật hợp thành.
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 28
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
𝑑𝑒(𝑡)/𝑒(𝑡) NB NS ZE PS PB
DF S S MS MS M
DS S MS MS M MB
MT MS MS M MB MB
IS MS M MB MB B
IF M M MB B B
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 29
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
𝑇𝐼 = 2 ∗ 𝑇1 = 2 ∗ 4 = 19.02 (3.8)
𝑇𝐷 = 0.5 ∗ 4 = 4.755 (3.9)
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 30
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Hình 3.18 Kéo thả hàm truyền xuống khối To Workspace để lưu giá trị
Hình 3.20 Lựa chọn kiểu PID ta được các thông số dưới góc phải màn hình
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 31
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Hình 3.21 So sánh đáp ứng của bộ PID (Tuning toolbox) và PID mờ
Sau khi sử dụng công cụ PID Tuning toolbox, ta so sánh đáp ứng của bộ này
với bộ PID mờ.
3.4. Kết luật chương
Từ các đồ thị trên, ta nhận thấy rõ chất lượng đáp ứng của bộ PID mờ tốt hơn
hẳn hai bộ PID theo Ziegler – Nichols 1 và theo công cụ PID Turning ở tất cả các tiêu
chí. Với thời gian đáp ứng nhanh, không có sai lệch tĩnh và độ lọt vố thấp (6% so với
7.5% của PID Turning và 43% của PID Ziegler – Nichols).
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 32
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Em rất tiếc về sự cố này và nhận trách nhiệm về sự thiếu sót khi lựa chọn vi
điều khiển. Phương án khắc phục được đề cập ở phần kết luận và có thể thực hiện
trong tương lai.
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 33
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 34
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Trong báo cáo này, với sự cho phép của giáo viên hướng dẫn, để tiếp tục nội
dung đề tài và hoàn thiện mô hình, phương án giải thuật thay thế được đưa ra là sử
dụng bộ PID số thuần túy để điều khiển nhiệt độ lò nhiệt. Các thông số về hàm truyền,
thời gian lấy mẫu, phương pháp điều khiển công suất vẫn được giữ nguyên. Yêu cầu
đặt ra là bộ PID số vẫn đảm bảo tính ổn định, đáp ứng được nhiệt độ đặt mong muốn.
4.2.2. Sơ đồ khối chương trình
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 35
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 36
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
sáng đèn tương ứng với (1𝑚𝑠 − 9𝑚𝑠). Nguyên tắc kích dẫn điều chỉnh thời gian đèn
sáng sẽ được giải thích ở mục 4.2.2.
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 37
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Cảm biến nhiệt độ LM35 hoạt động bằng cách cho ra một điện áp tại chân số 2
ứng với mỗi mức nhiệt độ. Điện áp thay đổi tuyến tính theo mức nhiệt độ 10𝑚𝑉/ 𝑜𝐶 .
Board Arduino đọc giá trị 𝑉𝑜𝑢𝑡 của LM35 bằng các chân Analog. Tại các chân
Analog giá trị điện áp đọc được trong khoảng (0 − 5𝑉) sẽ được quy đổi về (0 −
1023). Vì giá trị LM35 gửi về là 10𝑚𝑉 nên khi quy đổi ta cần phải nhân 100 với giá
trị quy đổi để hiển thị nhiệt độ đọc được một cách chính xác nhất. Từ đó ta có công
thức đọc giá trị nhiệt độ của cảm biến LM35:
𝑛ℎ𝑖ệ𝑡 độ = (𝑢 ∗ 5/1023) ∗ 100 (4.1)
Với 𝑢 là giá trị điện áp ra từ chân số 2 của cảm biến LM35.
4.3.2. Mạch công suất
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 38
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 39
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Công suất mở của triac phụ thuộc vào sự thay đổi của góc kích 𝛼. Khi góc kích
𝛼 thay đổi thì điện áp đầu ra cũng thay đổi. Nguyên tắc điều khiển góc kích 𝛼 được sử
dụng là tìm được điểm 0, tức là điểm giao nhau giữa chu kì âm và chu kì dương của
điện áp xoay chiều. Quá trình được biểu thị ở hình 4.2
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 40
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
thuận và được xem như một diode bán dẫn bình thường. Khi Diode zenner dẫn nghịch
được xem như một nguồn 4.7 𝑉 cung cấp điện áp cho led trong opto PC817 phát sáng
kích dẫn chân 3 và 4 với nhau.
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 41
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 42
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Trong đó:
- t1 tương ứng với góc mở của Triac.
- t2 là thời gian xung kích của chân G để kích dẫn.
- t3 là khoảng thời gian mà dòng điện đóng ngắt trong nửa chu kì.
Với thời gian t1 được điều khiển dài hay ngắn phụ thuộc từ tín hiệu PWM gửi
vào Arduino Nano.
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 43
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 44
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Khối quét 3 led 7 đoạn bao gồm một con led 7 đoạn 3 số Anode được kết nối
với IC 74HC595 và 3 Transistor NPN tương ứng với 3 số của led. Arduino Nano sẽ
điều khiển IC 74HC595 và Transitor để hiển thị thời gian sáng đèn trên led 7 đoạn.
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 45
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
- Các chân Q0 đến Q7 là các chân đầu ra, được nối vào các thanh led của led
7 đoạn. Chân Q7’ được sử dụng để xếp tầng với các IC 74HC595 khác.
- Chân SH_CP là chân Clock phát xung nhịp không đổi để giữ thời gian.
- Chân DS là chân Data gửi dữ liệu về chân đầu ra nào phải ở mức thấp và
chân nào sẽ ở mức cao.
- Chân ST_CP là chân Latch cập nhật dữ liệu nhận được vào các chân đầu ra
khi đặt mức cao.
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 46
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 47
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Hình 4.28 Kết quả với giá trị 𝐾𝐼 = 10.5; 𝐾𝐼 = 0.09; 𝐾𝐷 = 0.01
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 48
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 49
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
Ta cũng nhận thấy hệ thống hoạt động ổn định nhất khi 𝐾𝐷 = 0, nếu tăng giá trị
𝐾𝐷 thì hệ thống xuất hiện sai số xác lập.
Thực nghiệm cho thấy lò nhiệt hoạt động tốt với giải thuật PID số, giá trị dao
động quanh nhỏ, xuất hiện dao động chủ yếu do các yếu tố phụ như môi trường, nhiễu
đo… Lò nhiệt hoạt động ổn định nhất khi dùng bộ điều khiển tích phân tỉ lệ PI với giá
trị 𝐾𝑃 = 10.5, 𝐾𝐼 = 0.06, thời gian lấy mẫu 0.1s và nhiệt độ đặt là 600C.
SVTH: Phạm Văn Sang Người hướng dẫn: ThS. Võ Khánh Thoại 50
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
KẾT LUẬN
1. Kết quả đạt được:
Xây dựng và chạy thành công chương trình mô phỏng bằng Simulink các bộ
điều khiển PID và PID mờ, so sánh chất lượng đáp ứng các bộ điều khiển.
Thiết kế và hoàn thiện mô hình phần cứng bao gồm mạch điều khiển, mạch
công suất. Giải quyết được vấn đề điều khiển lò nhiệt thực tế với bộ điều khiển PID số.
Hệ thống thực tế hoạt động ổn định, không xuất hiện lọt vố và thời gian đáp ứng
tương đối nhanh.
2. Một số mặt hạn chế
Giải thuật điều khiển sử dụng là PID số, khác với mục tiêu đề tài là bộ điều
khiển PID mờ.
Hạn chế về công cụ hỗ trợ cần thiết, khả năng xuất hiện sai số dao động quanh
nhiệt độ đặt do mô hình thủ công chưa được chuẩn hóa nên việc nhận dạng hàm truyền
chưa được chính xác nhất, dẫn đến việc chất lượng điều khiển chưa được như mong
đợi.
3. Hướng phát triển đề tài
Vì bộ nhớ giải thuật điều khiển PID mờ tương đối lớn, không thể nhúng được
trên các vi điều khiển thông thường, nên sử dụng những vi điều khiển có bộ nhớ lớn
hơn như STM32, Raspberry pi… Hoặc có thể xây dựng thư viện của các thông số mờ,
quy tắc giải mờ bằng ngôn ngữ lập trình trên vi điều khiển, từ đó việc xây dựng giải
thuật hoàn toàn dựa trên các ngôn ngữ lập trình, không phụ thuộc vào phân mềm
Matlab & Simulink. Khi đấy bộ PID sẽ được xác định theo công thức (2.20).
Về phần cứng, sử dụng các bộ khảo sát lò nhiệt đạt chuẩn trong phòng thí
nghiệm, thiết kế mạch công suất nguồn đảm bảo cho việc xác định hàm truyền được
chuẩn xác.
Về thuật toán, thay đổi các dạng và số lượng hàm thuộc, sử dụng các luật hợp
thành và phương pháp giải mờ khác để tìm được phương pháp tối ưu.
Ngoài ra, trong đề tài này chỉ thể hiện dạng sóng thời gian thực trên khối Scope
của Simulink. Cần chú ý phát triển thêm các dạng hiển thị để giúp cho việc quan sát
trực quan và dễ dàng hơn.
PHỤ LỤC
Chương trình kích mở Triac:
#define TRIAC_PIN 7
float thoigian;
int i,j,output;
double adc;
char MA7DOAN[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};
char madem;
uint8_t Thoigianquet=1;
uint8_t Tranled1 = 5;
uint8_t Tranled2 = 4;
uint8_t Tranled3 = 3;
uint8_t latchpin = 9;
uint8_t clockpin = 10;
uint8_t datapin = 8;
void TriacControl()
{
QuetLed();
delayMicroseconds((1000-output)*10);
digitalWrite(TRIAC_PIN,HIGH);
delayMicroseconds(100);
digitalWrite(TRIAC_PIN,LOW);
QuetLed();
}
void setup()
{
Serial.begin(9600);
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
pinMode(TRIAC_PIN,OUTPUT);
attachInterrupt(0, TriacControl, RISING);
pinMode(Tranled1,OUTPUT);
pinMode(Tranled2,OUTPUT);
pinMode(Tranled3,OUTPUT);
pinMode(latchpin , OUTPUT);
pinMode(clockpin, OUTPUT);
pinMode(datapin, OUTPUT);
output=100;
digitalWrite(latchpin, LOW);
madem=MA7DOAN[0];
shiftOut(datapin, clockpin, MSBFIRST,(madem));
digitalWrite(latchpin, HIGH);
}
void loop()
{
adc=0;
for(i=0;i<1000;i++)
adc+=analogRead(A0);
adc=adc/1000;
output=map(adc,0,1023,100,900);
}
void QuetLed()
{
Thoigianquet++;
if(Thoigianquet>3) Thoigianquet=1;
if(Thoigianquet==1)
{
Thiết kế bộ điều khiển nhiệt độ sử dụng giải thuật PID mờ
digitalWrite(latchpin, LOW);
madem=MA7DOAN[output/100];
shiftOut(datapin, clockpin, MSBFIRST,(madem-128));
digitalWrite(latchpin, HIGH);
digitalWrite(Tranled3,HIGH);
digitalWrite(Tranled1,LOW);
}
else if(Thoigianquet==2)
{
digitalWrite(latchpin, LOW);
madem=MA7DOAN[output/10%10];
shiftOut(datapin, clockpin, MSBFIRST,(madem));
digitalWrite(latchpin, HIGH);
digitalWrite(Tranled1,HIGH);
digitalWrite(Tranled2,LOW);
}
else
{
digitalWrite(latchpin, LOW);
madem=MA7DOAN[output%10];
shiftOut(datapin, clockpin, MSBFIRST,(madem));
digitalWrite(latchpin, HIGH);
digitalWrite(Tranled2,HIGH);
digitalWrite(Tranled3,LOW);
}
}