Đề tài còn áp dụng machine learning để thực hiện việc chẩn đoán và đưa ra cảnh báo cho một số lỗi xảy ra trong quá trình vận hành động cơ.. Từ tất cả những vấn đề trên, nhóm sinh viên lự
Trang 1
VŨ MINH TRÍ
S K L 0 0 9 2 9 3
ĐỒ ÁN TỐT NGHIỆP NGÀNH CNKT ĐIỀU KHIỂN VÀ TỰ ĐỘNG HÓA
Trang 2TRƯỜNG ĐẠI HỌC SƯ PHẠM KĨ THUẬT THÀNH PHỐ HỒ CHÍ MINH
KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
Trang 3TRƯỜNG ĐẠI HỌC SƯ PHẠM KĨ THUẬT THÀNH PHỐ HỒ CHÍ MINH
KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
Trang 4CỘNG HÒA XÃ HỘI CHỦ NGHĨA
VIỆT NAM Độc lập – Tự do – Hạnh phúc
-*** -Tp Hồ Chí Minh, ngày 21 tháng 8 năm 2022
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ và tên sinh viên 1: TRẦN THANH TOÀN MSSV: 18151133
Họ và tên sinh viên 2: VŨ MINH TRÍ MSSV: 18151136
Ngành: Điều khiển và tự động hóa Lớp: 18151CL3B
Giảng viên hướng dẫn: TS TẠ VĂN PHƯƠNG ĐT: 0908248231
Ngày nhận đề tài: 21/02/2022 Ngày nộp đề tài: 06/08/2022
1 Tên đề tài: Chẩn đoán lỗi cho mô hình động cơ ba pha
2 Nội dung thực hiện đề tài:
- Điều khiển tốc độ động cơ thông qua giao thức MODBUS RTU và điều khiển ổn định bằng bộ điều khiển PID
- Chẩn đoán lỗi đặc tính của thiết bị bằng việc truy xuất mã lỗi của nhà sản xuất
- Chẩn đoán lỗi cho động cơ dựa vào cấu trúc mạng neural tích chập CNN
- Xây dựng giao diện người dùng (GUI) và hiển thị các thông số điều khiển động cơ và cảnh báo lên giao diện khi phát sinh lỗi
3.Sản phẩm:
- Mô hình phần cứng động cơ ba pha
- Chương trình phần mềm điều khiển ổn định động cơ, chương trình chẩn đoán lỗi dựa vào CNN và chương trình chẩn đoán theo thời gian thực
- Giao diện giám sát
Trang 5CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
-*** -PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN
Họ và tên sinh viên 1: TRẦN THANH TOÀN MSSV: 18151133
Họ và tên sinh viên 2: VŨ MINH TRÍ MSSV: 18151136
Ngành: Công nghệ Kỹ thuật Điều khiển và Tự động hóa
Tên đề tài: Chẩn đoán lỗi cho mô hình động cơ ba pha
Giáo viên hướng dẫn: TS TẠ VĂN PHƯƠNG
NHẬN XÉT:
1.Về nội dung đề tài và khối lượng thực hiện:
………
……… 2.Ưu điểm:
………
……… 3.Khuyết điểm:
………
……… 4.Đề nghị cho bảo vệ hay không ?
……… 5.Đánh giá loại:
……… 6.Điểm:………(Bằng chữ:………)
Tp Hồ Chí Minh, ngày tháng năm 2022
Giảng viên hướng dẫn
Trang 6CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
-*** -PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN
Họ và tên sinh viên 1: TRẦN THANH TOÀN MSSV: 18151133
Họ và tên sinh viên 2: VŨ MINH TRÍ MSSV: 18151136
Ngành: Công nghệ Kỹ thuật Điều khiển và Tự động hóa
Tên đề tài: Chẩn đoán lỗi cho mô hình động cơ ba pha
Giáo viên hướng dẫn: TS TẠ VĂN PHƯƠNG
NHẬN XÉT:
1.Về nội dung đề tài và khối lượng thực hiện:
………
……… 2.Ưu điểm:
………
……… 3.Khuyết điểm:
………
……… 4.Đề nghị cho bảo vệ hay không ?
……… 5.Đánh giá loại:
……… 6.Điểm:………(Bằng chữ:………)
Tp Hồ Chí Minh, ngày tháng năm 2022
Giảng viên phản biện
Trang 7LỜI CẢM ƠN
Để có thể hoàn thành tốt khóa đồ án tốt nghiệp Trước tiên, nhóm sinh viên xin gửi lời cảm ơn sâu sắc đến Khoa Đào tạo Chất lượng cao đã tạo mọi điều kiện thuận lợi
về cơ sở vật chất, phòng thí nghiệm, các thiết bị trong suốt quá trình thực hiện đề tài
Nhóm sinh viên cũng xin chân thành cảm ơn thầy Ts Tạ Văn Phương là giảng viên trực tiếp hướng dẫn nhóm sinh viên thực hiện đề tài này vì thầy đã nhiệt tình hướng dẫn và góp ý trong việc lựa chọn đề tài nghiên cứu, hướng tiếp cận Trong suốt quá trình thưc hiện đề tài, thầy luôn tận tâm theo dõi tiến độ thực hiện và có những góp ý, chỉnh sửa cần thiết nhằm giúp nhóm sinh viên kịp thời điều chỉnh để nâng cao kết quả của đề tài
Bên cạnh đó, nhóm cũng xin gửi lời cảm ơn đến tác giả của các sách, bài báo khoa học, các trang web học thuật đã giúp nhóm tiếp cận được với nguồn tài liệu phong phú
và chính xác để nâng cao kiến thức cho bản than
Cuối cùng, nhóm xin gửi lời cảm ơn đến các bạn cùng chuyên ngành Điều khiển
và Tự động hóa lớp 18151CL3B đã cùng nhau chia sẻ, trao đổi kiến thức và hỗ trợ nhau trong suốt quá trình thực hiện đề tài Thân chúc các bạn đạt được kết quả tốt trong kì bảo
vệ đồ án tốt nghiệp sắp tới
Xin chân thành cảm ơn!
Trang 8TÓM TẮT ĐỀ TÀI
Đề tài “Chẩn đoán lỗi cho mô hình động cơ ba pha” là một đề tài nghiên cứu về
điều khiển tốc độ cho động cơ ba pha chạy ổn định dựa vào bộ điều khiển PLC Đề tài còn áp dụng machine learning để thực hiện việc chẩn đoán và đưa ra cảnh báo cho một
số lỗi xảy ra trong quá trình vận hành động cơ Cuối cùng, thiết kế một giao diện trực quan PyQt5 cho người vận hành có thể nắm được quá trình hoạt động cũng như các lỗi phát sinh để có thể đưa ra các giải pháp khắc phục nhanh nhất
Sơ lược nội dung đề tài bao gồm:
Điều khiển ổn định tốc độ động cơ ba pha:
- Sử dụng PLC điều khiển biến tần chạy động cơ
- Giao tiếp giữa các thiết bị bằng giao thức MODBUS RTU và đường truyền RS485
- Tìm ra bộ thông số PID phù hợp để điều khiển ổn định tốc độ cho động cơ Chẩn đoán lỗi dựa vào đặc tính thiết bị:
- Truy xuất mã lỗi của các thiết bị
- Hiển thị mã lỗi và chẩn đoán trên giao diện
Chẩn đoán lỗi dựa vào CNN:
- Thu thập dữ liệu
- Chọn cấu trúc và huấn luyện dữ liệu theo cấu trúc đã chọn
- Đưa dữ liệu đã huấn luyện vào để chẩn đoán
- Chẩn đoán lỗi realtime trên mô hình thực
Thiết kế giao diện điều khiển:
- Thiết kế giao diện PyQt5
- Đưa các dữ liệu vào để thể hiện trực quan cho người vận hành
Trang 136.2 98
Trang 14DANH MỤC CÁC CHỮ VIẾT TẮT
CNN: Convolutional Neural Network
CPU: Central Processing Unit
PID: Proportional Integral Derivative
RAM: Random Access Memory
HMI: Human Machine Interface
UART: Universal Asynchronous Receiver/ Transmitter
TCP/IP: Transmission Control Protocol/ Internet Protocol
Profinet: Process Field Net
GUI: Graphical User Interface
Trang 15DANH MỤC CÁC BẢNG
BẢNG 3.10:THÔNG SỐ KỸ THUẬT CỦA BIẾN DÒNG HIMEL HLMKP63030 50
BẢNG 3.11:MÔ TẢ CÁC CHÂN CỦA BỘ CHUYỂN ĐỔI NGUỒN S82K-05024 51
BẢNG 3.12:THÔNG SỐ KỸ THUẬT CỦA BỘ CHUYỂN ĐỔI NGUỒN S82K-05024 52
BẢNG 3.13:THÔNG SỐ KỸ THUẬT CỦA APTOMAT LS2PBKN 52
Trang 16HÌNH 2.19:MẠNG GIAO TIẾP CÁC THIẾT BỊ SỬ DỤNG MODBUSRTU 32
HÌNH 2.20:CẤU TẠO MỘT PACKET CỦA GIAO THỨC UART 32
HÌNH 2.21:CHUẨN GIAO TIẾP RS485 33
HÌNH 2.22:SƠ ĐỒ CHÂN RS4852 DÂY 34
HÌNH 2.23:SƠ ĐỒ CHÂN RS4854 DÂY 34
HÌNH 2.24:ỨNG DỤNG CỦA RS485 TRONG CÔNG NGHIỆP 36
HÌNH 3.2:PLCS7-1200CPU1215CDC/DC/DC 40
HÌNH 3.10:MÀN HÌNH HIỂN THỊ CỦA POWERFLEX 525 47
Trang 17HÌNH 3.11:ĐỒNG HỒ ĐO DM6200HMETER 48
HÌNH 3.12:MẶT SAU CỦA ĐỒNG HỒ ĐO 49
HÌNH 3.13:BIẾN DÒNG HIMEL HLMKP63030 50
HÌNH 3.14:BỘ CHUYỂN ĐỔI NGUỒN OMRON S82K-05024 50
HÌNH 3.15:KÍCH THƯỚC CỦA BỘ CHUYỂN ĐỔI NGUỒN S82K-05024 51
HÌNH 3.16:SƠ ĐỒ CHÂN CỦA BỘ CHUYỂN ĐỔI S82K-05024 51
HÌNH 3.17:APTOMAT LS2PBKN 52
HÌNH 3.18:RELAY TRUNG GIAN 53
HÌNH 3.19:CÁC ĐIỆN TRỞ 10 OHM VÀ 20 OHM 100W 53
HÌNH 4.2:KHỐI PID_COMPACT 59
HÌNH 4.4:KHỐI MB_COMM_LOAD 60
HÌNH 4.5:KHỐI MB_MASTER 61
HÌNH 4.10:BIỂU ĐỒ GIÁ TRỊ A3 VÀ V12 TẠI SETPOINT 20 68
HÌNH 4.11:BIỂU ĐỒ GIÁ TRỊ V23 VÀ V31 TẠI SETPOINT 20 68
HÌNH 4.12:BIỂU ĐỒ GIÁ TRỊ A1 VÀ A2 TẠI SETPOINT 30 69
HÌNH 4.13:BIỂU ĐỒ GIÁ TRỊ A3 VÀ V12 TẠI SETPOINT 30 69
HÌNH 4.14:BIỂU ĐỒ GIÁ TRỊ V23 VÀ V31 TẠI SETPOINT 30 69
HÌNH 4.15:BIỂU ĐỒ GIÁ TRỊ A1 VÀ A2 TẠI SETPOINT 40 70
HÌNH 4.16:BIỂU ĐỒ GIÁ TRỊ A3 VÀ V12 TẠI SETPOINT 40 70
HÌNH 4.17:BIỂU ĐỒ GIÁ TRỊ V23 VÀ V31 TẠI SETPOINT 40 70
HÌNH 4.18:BIỂU ĐỒ GIÁ TRỊ A1 VÀ A2 TẠI SETPOINT 50 71
HÌNH 4.19:BIỂU ĐỒ GIÁ TRỊ A3 VÀ V12 TẠI SETPOINT 50 71
HÌNH 4.20:BIỂU ĐỒ GIÁ TRỊ V23 VÀ V31 TẠI SETPOINT 5 71
HÌNH 4.21:CẤU TRÚC CNN CHẨN ĐOÁN LỖI ĐỘNG CƠ 73
Trang 18HÌNH 4.26:HÀM THỰC HIỆN CHẨN ĐOÁN 76
HÌNH 4.27:GIAO DIỆN CỦA PHẦN MỀM QT DESIGNER 77
HÌNH 4.28:CÁC GIAO THỨC CỦA SNAP7 78
HÌNH 5.10:GIAO DIỆN CẢNH BÁO KHI PHÁT HIỆN LỖI 87
HÌNH 5.11:LỖI MẤT NGUỒN MODULE 87
HÌNH 5.12:TRẠNG THÁI HOẠT ĐỘNG BÌNH THƯỜNG 88
HÌNH 5.13:CẢNH BÁO Ở TRẠNG THÁI BÌNH THƯỜNG 88
HÌNH 5.14:THÔNG SỐ VÀ CẢNH BÁO KHI CÓ LỖI F1 89
HÌNH 5.15:THÔNG SỐ VÀ CẢNH BÁO KHI CÓ LỖI F2 90
HÌNH 5.16:THÔNG SỐ VÀ CẢNH BÁO KHI CÓ LỖI F3 91
HÌNH 5.17:THÔNG SỐ VÀ CẢNH BÁO KHI CÓ LỖI F4 92
HÌNH 5.18:THÔNG SỐ VÀ CẢNH BÁO KHI CÓ LỖI F5 93
HÌNH 5.19:THÔNG SỐ VÀ CẢNH BÁO KHI CÓ LỖI F6 94
HÌNH 5.20:THÔNG SỐ VÀ CẢNH BÁO KHI CÓ LỖI F7 95
Trang 19CHƯƠNG 1:
TỔNG QUAN VỀ ĐỀ TÀI
Trang 20Giới thiệu tổng quan về đề tài, đưa ra cái nhìn bao quát về tầm quan trọng cần phải thực hiện gắn liền với thực tế sau đó đặt ra mục tiêu, giới hạn và phương pháp để thực hiện
1.1 Tầm quan trọng của đề tài
Ngày nay, cùng với sự phát triển vượt bậc của khoa học, công nghệ và kỹ thuật thì lĩnh vực Tự động hóa cũng đang chứng tỏ ưu thế của mình trên mọi phương diện, mọi ngành nghề, đặc biệt là các ngành công nghiệp Nếu như trước đây các hoạt động sản xuất, các quy trình vận hành đều do con người thực hiện thì giờ đây các máy móc tự động sẽ đảm nhiệm những việc đó thay cho con người Đặc biệt đối với các ngành nghề đòi hỏi sự chính xác tuyệt đối thì sự tham gia của các thiết bị Tự động hóa là điều không cần phải bàn cãi Trong các hệ thống Tự động hóa công nghiệp, động cơ điện là một thiết
bị phổ biến và có nhiều vai trò quan trọng Tuy nhiên, với cường độ hoạt động cao, động
cơ điện thường dễ xảy ra một số hư hỏng mà người vận hành không thể nhận biết được ngay Vì vậy, việc điều khiển ổn định và phát hiện sớm sự cố cho động cơ điện là một yêu cầu hết sức cần thiết và quan trọng, góp phần hạn chế việc gián đoạn trong sản xuất công nghiệp
Hình 1.1: Động cơ cho mô hình
Trang 21Trong ngành kỹ thuật Tự động hóa, việc sử dụng bộ điều khiển PLC đem lại rất nhiều lợi ích như: làm việc chắc chắn, độ bển cao, độ tin cậy cao thích hợp với môi trường công nghiệp Đồng thời, PLC có kích thước nhỏ gọn, kết nối đơn giản và có thể lập trình dễ dàng so với các thiết bị mạch số khác Vì vậy, việc điều khiển động cơ thông qua PLC sẽ mang lại hiệu quả tối ưu, tính ổn định và tăng năng suất cho các doanh
nghiệp
Trong khi vận hành hệ thống, việc phát sinh lỗi là một điều khó tránh khỏi nên việc chẩn đoán lỗi kịp thời là một điều rất cần thiết Chẩn đoán lỗi là một công cụ hữu ích trong vận hành giúp giảm rủi ro và chi phí bảo trì hệ thống Tuy nhiên, dữ liệu về hoạt động và lỗi của hệ thống thường không được thu thập và lưu trữ một cách đầy đủ, gây khó khăn cho việc chẩn đoán cũng như đề xuất các biện pháp khắc phục Vì vậy đồ
án này đề xuất ứng dụng mạng học sâu CNN để nhận dạng một số lỗi thông dụng trên động cơ dựa vào việc thu thập và phân tích dòng điện Mạng CNN là một trong những
mô hình học sâu hiện đại nhất ngày nay thường được sử dụng nhiều trong các hệ thống thông minh do ưu điểm của mạng là có độ chính xác cao và tốc độ tính toán rất nhanh
Hình 1.2: Thuật toán CNN Ngoài việc điều khiển ổn định và đưa ra cảnh báo lỗi thì lưu trữ và hiển thị những
dữ liệu liên quan đến các sự cố trong quá trình vận hành cũng là một điều đáng quan tâm Vì vậy, việc thiết lập một giao diện giám sát là việc làm cần thiết giúp người vận
Trang 22hành có thể theo dõi và nắm bắt tình hình nhanh nhất về sự thay đổi các thông số, phát sinh lỗi và từ đó có thể nhanh chóng tìm ra cách khắc phục
Từ tất cả những vấn đề trên, nhóm sinh viên lựa chọn đề tài “ Chẩn đoán lỗi cho
mô hình động cơ ba pha “, là sự kết hợp giữa việc điều khiển ổn định cho động cơ thông
qua bộ điều khiển PID, chẩn đoán lỗi dựa vào machine learning (CNN) và thiết kế một giao diện trực quan trên phần mềm Visual Studio Code với ngôn ngữ Python
1.2 Mục tiêu của đề tài
Trong đề tài này, nhóm sinh viên đặt ra các mục tiêu sau:
- Sử dụng PLC kết nối với biến tần để điều khiển động cơ điện ba pha thông qua giao thức MODBUS RTU và các thiết bị điện khác: đồng hồ đo DM6200H
- Lập trình PLC điều khiển biến tần để cho động cơ ba pha hoạt động ổn định thông qua bộ điều khiển PID
- Chẩn đoán lỗi đặc tính của hệ thống bằng cách truy xuất mã lỗi của nhà sản xuất
- Sử dụng mạng học sâu CNN để nhận dạng một số lỗi thông dụng trên động
cơ như: lệch pha và quá tải
- Thiết kế được giao diện trực quan bằng thư viện PyQt5 của Python giúp cho người vận hành có thể dễ dàng nắm bắt được tình hình hoạt động ổn định hay không của động cơ
- Cảnh báo, truy xuất trực tiếp và lưu lại lịch sử lỗi trên giao diện cho người vận hành nếu phát hiện bất kỳ lỗi nào trong quá trình hoạt động
1.3 Giới hạn của đề tài
Nhóm sinh viên thực hiện mô hình trong phạm vi thí nghiệm nên khối lượng công việc cũng như quy mô của đề tài chưa thật sự lớn, mô hình chưa áp dụng vào thực tế một cách tối ưu mà chỉ là mô hình thí nghiệm để tạo tiền đề cho sự phát triển hơn trong tương lai gần
Trang 23Mô hình của nhóm không sử dụng HMI để hiển thị và điều khiển mà thiết lập giao diện điều khiển, hiển thì và cảnh báo lỗi bằng ngôn ngữ Python
Sử dụng phần mềm Tia Portal để lập trình, điều khiển PLC, xây dựng bộ PID để điều khiển động cơ ba pha hoạt động ổn định
Chưa giả lập được đầy đủ các lỗi có thể xảy ra trong thực tế
1.4 Phương pháp nghiên cứu
- Khảo sát các tài liệu trên internet bao gồm cả trong và ngoài nước liên quan đến đề tài
- Lựa chọn các thiết bị có thông số phù hợp
- Xây dựng một mô hình sử dụng PLC điều khiển động cơ ba pha thông qua mạng truyền thông RS485
- Sử dụng phần mềm Tia Portal V16 để lập trình điều khiển, tìm ra bộ PID tối
ưu để điều khiển ổn định cho động cơ
- Lập trình chẩn đoán lỗi bằng mạng học sâu CNN thông qua ngôn ngữ Python
- Thực hiện việc tạo giao diện điều khiển, giám sát và chẩn đoán lỗi
- Hoàn chỉnh mô hình thực tế và điều khiển, thu thập dữ liệu thực trên mô hình
1.5 Nội dung
Đề tài được trình bày gồm có các nội dung chính như sau:
Chương 1: Tổng quan về đề tài
Chương này trình bày tổng quan về đối tượng nghiên cứu, tầm quan trọng của đề tài, các mục tiêu, đối tượng và phạm vi nghiên cứu của đề tài
Chương 2: Cơ sở lý thuyết
Chương 2 trình bày những lý thuyết ở phần cơ sở, tổng quan về các thiết bị cần
sử dụng, bộ điều khiển ổn định PID, giao thức truyền thông công nghiệp và cấu trúc mạng CNN
Trang 25Chương 3: Thiết kế phần cứng
Trong chương này, trình bày những yêu cầu về việc thiết kế một mô hình cần sử dụng, quy trình hoạt động của mô hình, lựa chọn, đưa ra các thông số của thiết bị cần sử dụng và phương pháp giả lập lỗi trên phần cứng
Chương 4: Thiết kế phần mềm
Chương này trình bày về việc lập trình trên phần mềm để điều khiển mô hình thực
tế, thu thập dữ liệu, xây dựng ra model để huấn luyện, áp dụng model đã huấn luyện để chẩn đoán lỗi và thiết kế giao diện điều khiển, giám sát trực quan
Chương 5: Kết quả đạt được
Trong chương này nhóm sẽ trình bày các kết quả đã đạt được thông qua việc chạy bằng mô hình thực tế
Chương 6: Kết luận và hướng phát triển
Chương này, nhóm sẽ trình bày các ưu, nhược điểm của mô hình, trình bày kết luận tổng quát và đưa ra một số định hướng để phát triển đề tài trong tương lai để nâng cao chất lượng và có thể ứng dụng tối ưu vào thực tế
Trang 26CHƯƠNG 2:
CƠ SỞ LÝ THUYẾT
Trang 27Trong quá trình nghiên cứu, việc thu thập càng nhiều kiến thức là điều vô cùng quan trong, đặc biệt là đối với các ngành kỹ thuật Trong chương 2 này, nhóm trình bày tổng quan về kiến thức cơ sở về các thiết bị được dùng trong mô hình thí nghiệm: bộ PLC, mạng truyền thông công nghiệp RS485, động cơ 3 pha, … và ngôn ngữ lập trình cho trí tuệ nhân tạo là Python
2.1 Tổng quan về mô hình
Mô hình động cơ ba pha mô phỏng sát với thực tế một hệ thống điều khiển động
cơ trong công nghiệp, sử dụng tín hiệu từ bộ điều khiển PLC thông qua mạng truyền thông công nghiệp RS485 nên tín hiệu có thể truyền đi với quãng đường xa mà không bị nhiễu
2.2 Giới thiệu PLC và ứng dụng
2.2.1 Khái niệm
Bộ điều khiển PLC là thiết bị điều khiển lập trình, được thiết kế chuyên dùng trong công nghiệp để điều khiển các tiến trình xử lý từ đơn giản đến phức tạp, tùy thuộc vào người điều khiển mà nó có thể thực hiện một loạt các chương trình hoặc sự kiện, sự kiện này được kích hoạt bởi các tác nhân kích thích (hay còn gọi là đầu vào) tác động vào PLC hoặc qua các bộ định thời (Timer) hay được đếm qua bộ đếm
Khi một sự kiện được kích hoạt nó sẽ bật ON, OFF hoặc phát một chuỗi xung ra các thiết bị bên ngoài được gắn vào đầu ra của PLC Nếu ta thay đổi các chương trình được cài đặt trong PLC thì ta có thể thực hiện các chức năng khác nhau, trong các môi trường điều khiển khác nhau
Hiện nay có rất nhiều hãng sản xuất PLC như: Allen-Bradley, Omron, Mitsubishi, Panasonic, Delta,… Với mỗi dòng PLC của từng hãng khác nhau đều có những ưu và nhược điểm riêng
Trang 28Hình 2.1: PLC Allen Bradley
Hình 2.2: PLC Siemens
Hình 2.3: PLC Mitsubishi
2.2.2 Cấu trúc PLC
Thành phần chính của PLC là một bộ nhớ chương trình ( bộ nhớ trong RAM và
có thể mở rộng qua bộ nhớ ngoài EPROM ), một bộ vi xử lý có cổng giao tiếp dùng cho việc ghép nối với PLC và các modul vào, ra PLC có nhiều loại khác nhau và được phân biệt dựa trên thành phần chính của nó như: các ngõ vào và ra, dung lượng bộ nhớ, bộ đếm (counter), bộ định thời (timer), Bit nhớ, các chức năng đặc biệt, tốc độ xử lý, loại
Trang 29Đối với các PLC lớn thường lập trình trên máy tính nhằm hỗ trợ cho việc viết, đọc và kiểm tra chương trình Các đơn vị lập trình nối với PLC qua cổng mạng, RS232, RS422, RS485…
Hình 2.4: Cấu tạo bộ điều khiển PLC
2.2.3 Nguyên lý hoạt động của PLC
CPU điều khiển các hoạt động bên trong PLC Bộ xử lý sẽ đọc và kiểm tra chương trình được chứa trong bộ nhớ, sau đó sẽ thực hiện thứ tự từng lệnh trong chương trình,
sẽ đóng hay ngắt các đầu ra Các trạng thái ngõ ra ấy được phát tới các thiết bị liên kết
để thực thi Và toàn bộ các hoạt động thực thi đó đều phụ thuộc vào chương trình điều khiển được giữ trong bộ nhớ
Hệ thống Bus là tuyến dùng để truyền tín hiệu, hệ thống gồm nhiều đường tín hiệu song song:
- Address Bus: Bus địa chỉ dùng để truyền địa chỉ đến các Module khác nhau
Trang 30- Control Bus: Bus điều khiển dùng để truyền các tín hiệu định thì và điểu khiển đồng bộ các hoạt động trong PLC
Trong PLC các số liệu được trao đổi giữa bộ vi xử lý và các modul vào ra thông qua Data Bus Address Bus và Data Bus gồm 8 đường, ở cùng thời điểm cho phép truyền
8 bit của 1 byte một cách đồng thời hay song song
Nếu một modul đầu vào nhận được địa chỉ của nó trên Address Bus, nó sẽ chuyển tất cả trạnh thái đầu vào của nó vào Data Bus Nếu một địa chỉ byte của 8 đầu ra xuất hiện trên Address Bus, module đầu ra tương ứng sẽ nhận được dữ liệu từ Data bus Control Bus sẽ chuyển các tín hiệu điều khiển vào theo dõi chu trình hoạt động của PLC Các địa chỉ và số liệu được chuyển lên các Bus tương ứng trong một thời gian hạn chế
Hệ thống Bus sẽ làm nhiệm vụ trao đổi thông tin giữa CPU, bộ nhớ và I/O Bên cạch đó, CPU được cung cấp một xung Clock có tần số từ 1¸8 MHz Xung này quyết định tốc độ hoạt động của PLC và cung cấp các yếu tố về định thời, đồng hồ của hệ thống
2.2.4 Ứng dụng của PLC
Bộ lập trình PLC được ứng dụng rộng rãi trong lĩnh vực tủ bảng điện tự động hóa, phục vụ cho nhiều ngành, nhiều loại máy móc như: cấp nước, xử lý nước thải, giám sát năng lượng, giám sát hệ thống điện, máy đóng gói, máy đánh sợi, máy chế biến thực phẩm, hệ thống phân bổ giám sát trong dây chuyền,…
2.3 Tổng quan về bộ điều khiển PID
2.3.1 Khái niệm:
PID là một cơ chế phản hồi vòng điều khiển tổng quát được sử dụng rộng rãi trong các hệ thống điều khiển công nghiệp – bộ điều khiển PID là bộ điều khiển được sử dụng nhiều nhất trong các bộ điều khiển phản hồi PID sẽ tính toán giá trị sai số là hiệu
số giữa giá trị đo thông số biến đổi và giá trị đặt mong muốn Bộ điều khiển sẽ thực hiện giảm tối đa sai số bằng cách điều chỉnh giá trị điều khiển đầu vào Để đạt được kết quả
Trang 31tốt nhất, các thông số PID sử dụng trong tính toán phải điều chỉnh theo tính chất của hệ thống và các thông số phải phụ thuộc vào đặc thù của hệ thống
Hình 2.5: Các khâu điều khiển PID
P (Proportional): là phương pháp điều chỉnh tỉ lệ, giúp tạo ra tín hiệu điều chỉnh
tỉ lệ với sai lệch đầu vào theo thời gian lấy mẫu
I (Integral): là tích phân của sai lệch theo thời gian lấy mẫu, là phương pháp điều chỉnh để tạo ra các tín hiệu sao cho độ sai lệch giảm về 0 Từ đó cho biết tổng sai số tức thời theo thời gian hay sai số tích lũy trong quá khứ Khi thời gian càng nhỏ thì tác động điều chỉnh tích phân càng mạnh và độ lệch càng nhỏ
D (Derivative): là vi phân của sai lệch tạo ra tín hiệu điều chỉnh sao cho tỉ lệ với tốc độ thay đổi sai lệch đầu vào Thời gian càng lớn thì phạm vi điều chỉnh vi phân càng mạnh, tương ứng với bộ điều chỉnh đáp ứng với thay đổi đầu vào càng nhanh
2.3.2 Các khâu hiệu chỉnh PID:
Sơ đồ của hiệu chỉnh PID có 3 khâu:
- Khâu tỉ lệ còn gọi là độ lợi làm thay đổi các giá trị đầu ra Tỉ lệ với sai số hiện tại
Trang 32Trong đó:
: là thừa số tỉ lệ của đầu ra
: là hệ số tỉ lệ hay thông số điều chỉnh
: là sai số và được tính bằng SP-PV
: là thời gian hay chính là khoảng thời gian tức thời
- Khâu tích phân là khâu reset, tỉ lệ với biên độ sai số và thời gian sai số
Trong đó:
: là thừa số tích phân đầu ra
: là độ lợi tích phân
: là sai số theo thời gian
: là thời gian hoặc thời gian tức thời
: là một biến tích phân trung gian
- Khâu vi phân là biên độ của quá trình phân phối vi phân trên tất cả trạng thái giới hạn bơi độ lợi của vi phân
Trong đó:
Trang 33: là thừa số vi phân của đầu ra
: là độ lợi vi phân
: là sai số theo thời gian
: là thời gian hoặc thời gian tức thời
Trang 342.3.3 Các loại PID:
P – bộ điều khiển tỉ lệ
PI – bộ điều khiển tỉ lệ và tích phân
PD – bộ điều khiển tỉ lệ và đạo hàm
PID – bộ điều khiển tỉ lệ, tích phân, đạo hàm
2.3.4 Ứng dụng của PID:
Hiện nay, bộ điều khiển PID được đưa vào ứng dụng và dùng trong rất nhiều ngành nghề, lĩnh vực khác nhau Nó có thể được đưa vào để dùng giảm các sai số hoặc hạn chế sự dao động hay làm giảm đi thời gian xác lập và độ vọt lố,… Cụ thể các ứng dụng như:
- PID được đưa vào sử dụng để điều khiển mức nước
- PID được ứng dụng để điều khiển biến tần
- PID được dùng để kiểm soát đối với lưu lượng nước bằng cảm biến qua đường ống
- Ứng dụng điều khiển PID trong PLC
2.4 Biến tần
Biến tần là một thiết bị điện biến đổi tần số dòng điện đầu vào từ tần số này sang tần số khác ở đầu ra, biến tần chủ yếu sử dụng để điều khiển tăng giảm vận tốc động cơ xoay chiều bằng cách tăng, giảm tần số
Ngoài ra, biến tần còn có các chức năng:
- Bảo vệ động cơ điện: Biến tần bảo vệ chạm, chập động cơ, bảo vệ mất pha cho động cơ, bảo vệ rò điện động cơ,…
- Chống sụt áp hệ thống: Sử dụng biến tần sẽ giúp động cơ khởi động tăng tốc
từ từ theo thời gian cài đặt qua đó làm giảm dòng khởi động
- Bảo vệ hệ thống đường dây điện: Giảm dòng khởi động qua đó gián tiếp giúp
hệ thống dây dẫn điện chịu dòng điện đi qua nhỏ hơn và sẽ sử dụng bền hơn
Trang 35- Hỗ trợ động cơ dừng nhanh: Khi ngắt điện cấp cho động cơ, động cơ vẫn quay theo quán tính và sau một quãng thời gian mới dừng hẳn, sử dụng biến tần có thể giúp động cơ dừng ngay bằng cách hãm điện trở, hãm động năng, hãm tái sinh làm tăng năng suất, hiệu quả hoạt động của máy móc
- Điều khiển momen, giữ lực căng ổn định
- Tiết kiệm điện năng: Trường hợp động cơ có momen tải thay đổi liên tục như điều hòa trung tâm, bơm cấp nước, máy nén khí,… hoặc động cơ lắp dư công suất, tốc độ quay nhanh phải giảm tốc bằng các cơ cấu cơ khí như hộp số, hộp
ly hợp thì nên lắp biến tần sẽ tiết kiệm được nhiều điện năng
Hình 2.6: Biến tần Power Flex 525 Nguyên lý hoạt động của biến tần gồm 2 giai đoạn:
- Đầu tiên, nguồn điện xoay chiều một pha hay ba pha được chỉnh pha và lọc thành nguồn một chiều bằng phẳng Công đoạn này được thực hiện bởi bộ chỉnh lưu cầu diode và tụ điện
- Sau đó, điện áp một chiều này được nghịch lưu thành điện áp xoay chiều bap
ha đối xứng Công đoạn này được thực hiện thông qua hệ IGBT bằng phương pháp điều chế độ rộng xung (PWM)
Trang 37Hình 2.7: Cấu hình của một biến tần cơ bản
Thực tế hiện nay, biến tần tích hợp nhiều chế độ điều khiển khác nhau phù hợp với các loại tải khác nhau Biến tần được tích hợp chế độ điều khiển PID, tích hợp bộ điều khiển PLC đơn giản, có khả năng giao tiếp truyền thông với các thiết bị khác
Biến tần có nhiều loại, nếu chia theo nguồn điện đầu vào ta có 2 loại cơ bản là: Biến tần một pha và biến tần ba pha Trong đó, biến tần ba pha được sử dụng rộng rãi hơn trong công nghiệp
2.5 Visual Studio Code và ngôn ngữ lập trình Python
2.5.1 Phần mềm Visual Studio Code
Visual Studio Code là ứng dụng biên tập, trình soạn thảo mã nguồn mở gọn nhẹ nhưng có khả năng vận hành mạnh mẽ trên ba nền tảng là Windows, Linux và MacOS được phát triển bởi Microsoft Ứng dụng này cung cấp một hệ sinh thái mở rộng vô cùng phong phú cho nhiều ngôn ngữ lập trình khác nhau
Trang 38Hình 2.8: Biểu tượng ứng dụng Visual Studio Code
Các tính năng nổi bật của Visual Studio Code có thể kể đến như:
- Hỗ trợ nhiều ngôn ngữ lập trình: Visual Studio Code hỗ trợ nhiều ngôn ngữ lập trình như C/C++, C#, HTML, JavaScript, Python,…
Hình 2.9: Các ngôn ngữ lập trình
- Hỗ trợ đa nền tảng: Các trình viết code thông thường chỉ được sử dụng hoặc cho Windows hoặc Linux hoặc Mac Systems Nhưng Visual Studio Code có thể hoạt động tốt trên cả ba nền tảng trên
- Cung cấp kho tiện ích mở rộng: Trong trường hợp lập trình viên muốn sử dụng một ngôn ngữ lập trình không nằm trong số các ngôn ngữ mà ứng dụng hỗ trợ,
họ có thể tải xuống các tiện ích mở rộng Điều này không làm giảm hiệu năng của phần mềm vì phần mở rộng này hoạt động như một chương trình độc lập
- Kho lưu trữ an toàn: Với Visual Studio Code, người dùng có thể hoàn toàn yên tâm vì nó dễ dàng kết nối với Git hoặc bất kỳ kho lưu trữ hiện có nào
- Hỗ trợ web: Visual Studio Code hỗ trợ nhiều ứng dụng web Ngoài ra, còn có một trình soạn thảo và thiết kế website
- Lưu trữ dữ liệu dạng phân cấp hỗ trợ viết Code: Một số đoạn Code có thể thay đổi chút ít để thuận tiện cho người dùng
Trang 39- Hỗ trợ thiết bị đầu cuối: Visual Studio Code có tích hợp thiết bị đầu cuối, giúp người dùng khỏi phải chuyển đổi giữa hai màn hình hoặc trở về thư mục gốc khi thực hiện các thao tác.
- Màn hình đa nhiệm: Có thể mở cùng lúc nhiều tệp tin và thư mục – mặc dù chúng không hề liên quan với nhau
- Intellisense: Hầu hết các trình viết mã đều có tính năng nhắc mã Intellisense, nhưng ít chương trình nào chuyên nghiệp bằng Visual Studio Code Nó có thể phát hiện nếu có bất kì đoạn mã nào không đầy đủ Thậm chí, khi người lập trình quên không khai báo biến, Intellisense sẽ tự động giúp họ bổ sung các
Trang 40Ưu điểm khi sử dụng Visual Studio Code:
- Visual Studio Code có dung lượng nhỏ nên không chiếm nhiều RAM
- Có tốc độ làm việc nhanh, cho phép người dùng có thể sử dụng nhiều tính năng cùng lúc như: đối sánh dấu ngoặc, đánh dấu cú pháp,… Đồng thời, có thể xây dựng, chỉnh sửa và gỡ lối một cách đơn giản, dễ dàng
- Hỗ trợ nhiều ngôn ngữ lập trình khác nhau như: C#, C/C+, HTML, Python,…
Do vậy, có thể dễ dàng và phát hiện và đưa ra thông báo khi chương trình xuất hiện lỗi
- Giao diện Visual Studio Code rất dễ sử dụng đối với người mới bắt đầu lập trình
- Visual Studio Code hỗ trợ xây dựng ứng dụng một cách chuyên nghiệp