Hình ảnh kỹ thuật số được sử dụng để trích xuất các tính năng khác nhau bằng cách thực hiện một số quy trình trên hình ảnh bằng cách sử dụng máy tính và quá trình này có thể tự động.. Vì
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH
KHOA ĐIỆN ĐIỆN TỬ
BỘ MÔN KỸ THUẬT MÁY TÍNH - VIỄN THÔNG
ĐỒ ÁN TỐT NGHIỆP
ĐỀ TÀI:
NGÀNH CÔNG NGHỆ KỸ THUẬT MÁY TÍNH
Sinh viên: Nguyen Van A
Trang 2L I C M N Ờ Ả Ơ
Trong quá trình th c hi n đềề tài này, em đã nh n đự ệ ậ c rấất nhiềều s hỗỗ tr ,ượ ự ợ
góp ý và h ng dấỗn c a rấất nhiềều ngướ ủ ười.
Đấều tiền, em muỗấn g i l i c m n chấn thành đềấn ThS……… gi ngử ờ ả ơ ả
viền c a khoa Đi n – Đi n t Trủ ệ ệ ử ường Đ i h c S Ph m Kyỗ Thu t Thành phỗấ Hỗềạ ọ ư ạ ậ
Chí Minh đã h ng dấỗn, giúp đ t n tình trong suỗất quá trình làm đềề tài.ướ ỡ ậ
Ngoài ra, em cũng muỗấn c m n các thấềy cỗ trong Khoa CLC trả ơ ường Đ iạ
h c S Ph m Kyỗ Thu t TP.HCM đã t o điềều ki n thu n l i đ em th c hi n đỗềọ ư ạ ậ ạ ệ ậ ợ ể ự ệ
án tỗất nghi p này.ệ
Xin c m n tấất c các b n thành viền trong l p, nh ng ngả ơ ả ạ ớ ữ ười đỗềng hành và gắấn bó v i nhóm trong suỗất 4 nắm h c, đã có nh ng góp ý và giúp đ em trongớ ọ ữ ỡ
nh ng th i đi m khó khắn khi làm đềề tài.ữ ờ ể
Cuỗấi cùng, em xin c m n giáo viền ph n bi n và các thấềy cỗ trong h iả ơ ả ệ ộ
đỗềng b o v đỗề án đã dành th i gian nh n xét, đánh giá và giúp đ em trongả ệ ờ ậ ỡ
quá trình b o v đỗề án.ả ệ
Đỗề án này seỗ khỗng đ ược hoàn thành tỗất đ p nềấu khỗng có s giúp đ đóẹ ự ỡ
c a tấất c m i ngủ ả ọ ười M t lấền n a nhóm xin chấn thành c m nộ ữ ả ơ
Tp Hỗề Chí Minh, Tháng 6 nắm 2023 Sinh viền th c hi n ự ệ
Trang 3TÓM TẮẮT ĐỀỀ TÀI
Xử lý hình ảnh là một trong những lĩnh vực đang phát triển nhất hiện nay Xử
lý hình ảnh bao gồm chuyển đổi hình ảnh tương tự vào hình ảnh kỹ thuật số Hìnhảnh kỹ thuật số được sử dụng để trích xuất các tính năng khác nhau bằng cách thựchiện một số quy trình trên hình ảnh bằng cách sử dụng máy tính và quá trình này cóthể tự động Một hoạt động quan trọng nhất và cần thiết trên hình ảnh kỹ thuật số lànhận biết và phân loại các loại khác nhau của khiếm khuyết Vì vậy, để nhận ra lỗi
từ hình ảnh nhất định, một số các phương pháp được thiết lập và định vị, trong đóthuật toán phát hiện cạnh về cơ bản là một quá trình tìm ra lỗi trong một hình ảnh.Phát hiện lỗi là một trong số các ứng dụng quan trọng của việc kiểm tra khảnăng hiển thị quang học của các sản phẩm công nghiệp Bởi vì nhu cầu tự động hóangày càng tăng trong ngành sản xuất, phát hiện lỗi có thể được tìm thấy trong hầuhết các các lĩnh vực sản xuất Mặc dù các sản phẩm đầu ra của các ngành khác nhau
có nhiều loại đặc điểm Rút lại đối với các sản phẩm bị lỗi từ một lĩnh vực có thểhữu ích cho các nhà sản xuất từ các lĩnh vực khác
Đỗề án này gỗềm có mỗ hình h thỗấng phấn lo i lỗỗi s n ph m nh lem m c,ệ ạ ả ẩ ư ự
in sai bao bì, s n ph m b rách, h thỗấng đả ẩ ị ệ c điềều khi n bắềng PLC và kềất h pượ ể ợ
x lý nh và máy h c, h thỗấng ho t đ ng chính xác và n đ nh ng d ng x lýử ả ọ ệ ạ ộ ổ ị Ứ ụ ử
nh và máy h c đ phát hi n lỗỗi, ngoài ra còn có h thỗấng giám sát, điềều khi nả ọ ể ệ ệ ể
và thu th p thỗng tin trền màn hình giao di n thiềất kềấ bắềng phấền mềềm Python.ậ ệ
Trang 4M C L C Ụ Ụ
NHI M V ĐỒỒ ÁN TỒET NGHI PỆ Ụ Ệ
PHIÊEU NH N XÉT C A GIÁO VIÊN HẬ Ủ ƯỚNG DẪẪN
PHIÊEU NH N XÉT C A GIÁO VIÊN PH N BI NẬ Ủ Ả Ệ
L I C M N Ờ Ả Ơ i
L I M ĐẪỒUỜ Ở ii
M C L CỤ Ụ iii
LI T KÊ HÌNH VẼẪỆ vi
LI T KÊ B NGỆ Ả ix
DANH M C CÁC T VIÊET TẮETỤ Ừ x
Chương 1 : T NG QUANỔ 1
1.1 Đ t vấấn đềềặ 1
1.2 M c tiềuụ 1
1.3 Đỗấi tượng nghiền c u ứ 2
1.4 Ph m vi nghiền c uạ ứ 2
1.5 N i dung đềề tàiộ 2
Ch ươ 2: C S LÝ THUYÊET ng Ơ Ở 4
2.1 Phát hiện sản phẩm lỗi dựa trên xử lý ảnh truyền thống 4
2.1.1 Phương pháp thống kê 4
2.1.2. Phương pháp quang phổ 4
2.1.3 Phương pháp mô hình 5
2.2 Tổng quan về xử lý ảnh 5
2.3 Giới thiệu ngôn ngữ lập trình Python 10
2.4 Thư viện OpenCV 11
2.5 Tổng quan về PLC 13
2.6 Tổng quan về MobileNet 19
2.6.1 Giới thiệu về MobileNet 19
2.6.2. Cấu trúc mạng MobileNet 19
Trang 52.6.3 Cấu trúc mạng và đào tạo 22
2.7 Giao thức TCP Modbus 24
Ch ươ 3: TÍNH TOÁN VÀ THIÊET KÊE 28 ng 3.1 Yều cấều chung c a h thỗấng.ủ ệ 28
3.2 S đỗề kềất nỗấi t ng quan.ơ ổ 28
3.2.1 Thiềất kềấ khỗấi nguỗền 29
3.2.2 Khỗấi x lý trung tấm.ử 30
3.2.3 Khối điều khiển và giám sát 31
3.2.4 Khối cơ cấu chấp hành 31
3.2.5 Khỗấi Camera 32
3.2.6 Khỗấi đ ng c ộ ơ 33
3.2.7 Khỗấi Driver 34
3.2.7 Khối nút nhấn 36
3.3 S đỗề kềất nỗấi c a h thỗấng.ơ ủ ệ 38
Ch ươ 4: THI CỒNG H THỒENG ng Ệ 39
4.1 Giới thiệu 39
4.2 Thi công mô hình 39
4.2.1 Băng tải 40
4.2.2 Thi công phần khung tủ điện 41
4.3 Phấền mềềm 44
4.3.1 Lập trình cho PLC 44
4.3.2 Phần mềm lập trình cho Python 48
4.3.3 Cài đặt phần mềm Anaconda 52
4.4 L u đỗề gi i thu tư ả ậ 56
4.5 Hướng dẫn quy trình nhận dạng phân loại sản phẩm và sử dụng 59
Ch ươ 5: KÊET QU NH N XÉT ĐÁNH GIÁ ng Ả Ậ 63
5.1 Hệ thống mô hình 63
5.2 Hệ thống điện 64
Trang 65.3 Kết quả chạy thực nghiệm 65
5.4 Kềất qu thỗấng kềả 68
Ch ươ 6:KÊET LU N VÀ H ng Ậ ƯỚNG PHÁT TRI N Ể 69
6.1 Kềất lu n ậ 69
6.1.1 Ưu điểm 69
6.1.2 Nhược điểm 69
6.2 Hướng phát tri n ể 70
TÀI LI U THAM KH OỆ Ả 71
PH L C Ụ Ụ 72
Trang 7LIỆT KÊ HÌNH VẼ
Hình Trang
Hình 2.1 Hình ảnh giao thông bình thường và một hình ảnh VIPS với các vùng phát
hiện 8
Hình 2.2 Tái tạo hình ảnh bị hỏng bằng xử lý hình ảnh 9
Hình 2.3 Sơ đồ cấu trúc PLC 18
Hình 2.4 Các bộ lọc tích chập tiêu chuẩn trong (a) được thay thế bằng hai lớp: tích chập theo chiều sâu trong (b) và tích chập theo điểm trong (c) để xây dựng bộ lọc có thể phân tách theo chiều sâu 20
Hình 2.5 Bên trái: Lớp tích chập tiêu chuẩn với định mức batchnorm và ReLU. Đúng: Các kết chập có thể phân tách theo chiều sâu với Depthwise và các lớp Pointwise theo sau là batchnorm và ReLU 23
Hình 2.6 Cấu trúc mạng giao tiếp nối tiếp 27
Hình 2.7 Cấu trúc mạng giao tiếp Modbus TCP/IP 27
Hình 3.1 S đỗề t ng quan c a h thỗấngơ ổ ủ ệ 28
Hình 3.2 Nguồn tổ ong 29
Hình 3.3 PLC S7-1200 30
Hình 3.4 MCB LS BKN 2P 31
Hình 3.5 Module 1 relay 32
Hình 3.6 Webcam Logitech C270 720p 33
Hình 3.7 Đ ng c Nema 17ộ ơ 34
Hình 3.8 Driver TB6600 34
Hình 3.9 Mô-đun trình điều khiển động cơ bước TB6600 4A 35
Hình 3.10 Nút bấm tủ điện 37
Hình 3.11 Nút dừng khẩn 37
Hình 3.12 Sơ đồ kết nối của hệ thống 38
Hình 4.1 Băng tải mini 40
Hình 4.2 Vỏ hộp tủ điện 42
Hình 4.3 Cầu đấu khối 42
Hình 4.4 Tủ điện 43
Hình 4.5 Mô hình hệ thống phân loại sản phẩm 43
Hình 4.6 Tạo project mới 44
Hình 4.7 Đặt tên project mới 44
Trang 8Hình 4.8 Chọn cấu hình 45
Hình 4.9 Chọn CPU 45
Hình 4.10 Chương trình chính của PLC 46
Hình 4.11 Giao diện vùng viết chương trình PLC 46
Hình 4.12 Kết nối CPU và module mở rộng 47
Hình 4.13 Thêm các khối 47
Hình 4.14 Giao diện Spyder 48
Hình 4.15 Download phần mềm Spyder 48
Hình 4.16 Cài đặt Spyder 49
Hình 4.17 Đồng ý cài đặt Spyder .49
Hình 4.18 Chọn chế độ cài đặt Spyder 50
Hình 4.19 Chọn đường dẫn cài đặt Spyder 50
Hình 4.20 Quá trình cài đặt Spyder 51
Hình 4.21 Hoàn thành cài đặt Spyder 51
Hình 4.22 Giao diện viết chương trình trên Spyder 52
Hình 4.23 Cài đặt Anaconda 52
Hình 4.24 Đồng ý cài đặt Anaconda 53
Hình 4.25 Chọn chế độ cài đặt Anaconda 53
Hình 4.26 Chọn đường dẫn cài đặt Anaconda 54
Hình 4.27 Chọn chế độ cài đặt window cho Anaconda 54
Hình 4.28 Chạy cài đặt Anaconda 55
Hình 4.29 Cài đặt code với Anaconda 55
Hình 4.30 Hoàn tất cài đặt Anaconda 56
Hình 4.31 Lưu đồ giải thuật nhận dạng và điều khiển 57
Hình 4.32 : Lưu đồ giải thuật hệ thống 58
Hình 4.33 Sản phẩm không lỗi 59
Hình 4.34 Sản phẩm lỗi in sai 59
Hình 4.35 Sản phẩm lỗi lem mực 59
Hình 4.36 Sản phẩm lỗi rách 59
Hình 4.37 Giao diện điều khiển 62
Hình 5.1 Mô hình thực tế 63
Trang 9Hình 5.2 Hệ thống điện trong mặt tủ 64
Hình 5.3 Hệ thống điện ngoài mặt tủ 64
Hình 5.4 Hệ thống hoạt động 65
Hình 5.5 Hệ thống dừng hoạt động 65
Hình 5.6 Hình ảnh sản phẩm phân loại tốt 66
Hình 5.7 Hình ảnh sản phẩm phân loại lỗi lem mực 66
Hình 5.8 Hình ảnh sản phẩm phân loại khi không train 67
Hình 5.9 Hình ảnh sản phẩm phân loại lỗi bị rách 67
Hình 5.10 Hình ảnh sản phẩm phân loại khi không train 68
Trang 10LIỆT KÊ B5NG
B6ng Trang
Bảng 2.1 Kiến trúc cơ thể MobileNet 24Bảng 2.2 Tài nguyên trên mỗi loại lớp 24Bảng 4.1 Danh sách các linh kiện 39Bảng 5.1 Kết quả thử nghiệm chạy hệ thống khi sản phẩm chưa được huấn luyện 68Bảng 5.2 Kết quả thử nghiệm chạy hệ thống khi sản phẩm được huấn luyện 68
Trang 11DANH M C CÁC T VIỀẮT TẮẮT Ụ Ừ
IDLE Integrated Development and Learning Environment
Aka PTVS Python Tools for Visual Studio
calib3d Camera Calibration and 3D Reconstruction
MySQLdb Relational Database Management System
Trang 12ASCII American Standard Code for Information
InterChange
EEPROM Electrically Erasable Programmable Read Only
Memory
Trang 13Ứng dụng tự động hóa trong hệ thống phát hiện sản phẩm lỗi trên bao bì đemlại hiệu quả cao bằng cách sử dụng kết hợp các thiết bị như PLC, xử lý ảnh kết hợpmáy học, cảm biến, động cơ và xây dựng giao diện điều khiển và giám sát trên phầnmềm Python tạo điều kiện cho người vận hành theo dõi quy trình công nghệ dễdàng, đầy đủ, có thể can thiệp kịp thời khi có lỗi hệ thống Chính vì những lý do đó,
em đã chọn đề tài: “ứng dụng xử lý ảnh phát hiện sản phẩm lỗi dùng PLC S7 1200”
để nghiên cứu và tìm hiểu tiếp cận những thành tựu khoa học mới có cơ hội họcthêm nhiều kiến thức và kinh nghiệm, góp phần phát triển bản thân và giúp ích chocông nghiệp nước nhà
Trang 141.2 M c tiều ụ
Thiềất kềấ và thi cỗng đ ược m t mỗ hình đó là h thỗấng phấn lo i s n ph mộ ệ ạ ả ẩ
lỗỗi mang tính t đ ng cao điềều khi n bắềng PLC S7 1200 và các thiềất b t đ ngự ộ ể ị ự ộ
khác nh camera, đ ng c servor, đ ng c bư ộ ơ ộ ơ ướ Ức ng d ng x lý nh và máyụ ử ả
h c trong vi c phát hi n ra các lỗỗi s n ph m trền bao bì, xấy d ng giao di nọ ệ ệ ả ẩ ự ệ
điềều khi n và giám sát thỗng qua màn hình trền phấền mềềm Python.ể
1.3 Đốấi t ượ ng nghiền c u ứ
Trong đềề tài này, em muỗấn h ướng đềấn gi i pháp phát hi n lỗỗi trền s nả ệ ả
ph m bắềng các thu t toán x lý nh và máy h c m t cách tỗấi u nhấất Lỗỗi trongẩ ậ ử ả ọ ộ ư
s n ph m có th đả ẩ ể ược phát hi n bắềng cách s d ng lỗỗi tiềền x lý hình nh v iệ ử ụ ử ả ớ
các kềnh màu, phát hi n ánh sáng khỗng đỗềng đềều và x lý h u kỳ lỗỗi hình nhệ ử ậ ả
do đó tách ra phấền khiềấm khuyềất t hình nh ban đấều v i tính nắng phát hi nừ ả ớ ệ
c nh và đạ ng nét kềất h p máy h c Do đó, đấều ra seỗ rõ nét và chính xác h n soườ ợ ọ ơ
v i hình nh ban đấều.ớ ả
1.4 Ph m vi nghiền c u ạ ứ
Trong đềề tài này, em seỗ tiềấn hành nghiền c u các n i dung gỗềm có: các lỗỗiứ ộ
th ường x y ra trền bao bì, phấn tích và ch n ra các thu t toán phát hi n lỗỗi tỗấiả ọ ậ ệ
u nhấất khi dùng x lý nh kềất h p máy h c, nghiền c u xấy d ng điềều khi n hư ử ả ợ ọ ứ ự ể ệ
thỗấng và giao tiềấp gi a các thiềất b s d ng.ữ ị ử ụ
Trang 15Ch ươ ng 2: C s lý thuyềất ơ ở
Giới thiệu về lý thuyết phát hiện lỗi sản phẩm bằng xử lý ảnh và máy học, các
lý thuyết liên quan đến đề tài
Ch ng 3: Thiềất kềấ và xấy d ng h thốấng ươ ự ệ
Trình bày các s đỗề khỗấi, b n thiềất kềấ mỗ hình và nguyền lý ho t đ ng c a hơ ả ạ ộ ủ ệ
thỗấng Phấn tích và l a ch n linh ki n phù h p v i đềề tài.ự ọ ệ ợ ớ
Ch ươ ng 4: Thi cống h thốấng ệ
Trình bày quá trình th c hi n mỗ hình phấền c ng và các bự ệ ứ ước đ có thể ể
hoàn thành h thỗấng phát hi n lỗỗi s n ph m trền bao bì.ệ ệ ả ẩ
Ch ươ ng 5: Kềất qu so sánh, th c nghi m, phấn tích, t ng h p ả ự ệ ổ ợ
Trình bày nh ng kềất qu đ t đữ ả ạ ượ ừ ực t th c nghi m Phấn tích, đánh giá vàệ
so sánh v i m c tiều ban đấều đ t ra.ớ ụ ặ
Ch ươ ng 6: Kềất lu n và h ậ ướ ng phát tri n ể
Trình bày nh ng đi m m nh và nh ng điềều ch a đ t đữ ể ạ ữ ư ạ ượ ủc c a h thỗấngệ
và đ a ra các gi i pháp phát tri n cho đềề tài trong tư ả ể ương lai.
Trang 16Ch ươ 2: ng
C S LÝ THUYỀẮT Ơ Ở2.1 Phát hi n s n ph m lốỗi d a trền x lý nh truyềền thốấng ệ ả ẩ ự ử ả
Phát hiện khuyết tật bề mặt dựa trên xử lý hình ảnh truyền thống của các sảnphẩm công nghiệp cần thiết kế một phương pháp trích xuất các tính năng hình ảnhtheo các tính năng kết cấu của hình ảnh, không yêu cầu một số lượng lớn dữ liệuđược dán nhãn để huấn luyện mô hình Các phương pháp được thực hiện nhưphương pháp thống kê, phương pháp quang phổ và phương pháp mô hình thườngđược sử dụng trong xử lý ảnh truyền thống
2.1.1 Ph ươ ng pháp thốấng kề
Phương pháp thống kê là phương pháp phân tích kết cấu và xác định cáckhuyết tật theo đặc điểm phân phối thống kê của hình ảnh Phương pháp này có thểđược chia thành thang độ xám phương pháp thống kê, phương pháp thống kê mẫu
và phương pháp thống kê gradient Mô tả của tính năng kết cấu bằng phương phápthống kê là một quá trình tính toán từng điểm, về cơ bản là không bị ảnh hưởng bởiánh sáng và nhiễu, và có sự ổn định Tuy nhiên, do không lấy được thông tin đầy đủnên không thể nghiên cứu sự phụ thuộc giữa các pixel
2.1.2 Ph ươ ng pháp quang ph ổ
Đỗấi v i m t sỗấ lỗỗi khó xác đ nh hi u qu ch bắềng thang đ xám pixel, các nhàớ ộ ị ệ ả ỉ ộ
nghiền c u tin rắềng s xuấất hi n c a các khiềấm khuyềất phá h y tính nhấất quánứ ự ệ ủ ủ
vềề cấấu trúc c a đỗềng ph c h a tiềất Chúng ta có th chuy n đ i hình nh trongủ ụ ọ ể ể ổ ả
miềền th i gian Sau khi chuy n đ i miềền th i gian, phát hi n chính xác cácờ ể ổ ờ ệ
khuyềất t t có th đ t đậ ể ạ ược theo các ph n ng khác nhau c a kềất cấấu bìnhả ứ ủ
th ng và kềất cấấu khiềấm khuyềất Lo i phườ ạ ương pháp này có th để ược chia thành Fourier Transform (FT), b l c Gabor và biềấn đ i wavelet Biềấn đ i Fourier nh nộ ọ ổ ổ ậ
ra s tách bi t và chuy n đ i t miềền th i gian sang miềền tấền sỗấ và nó phù h pự ệ ể ổ ừ ờ ợ
v i các tín hi u cỗấ đ nh và tín hi u cỗấ đ nh Nó thu c vềề phấn tích t ng quát vàớ ệ ị ệ ị ộ ổ
đ c bi t phù h p đ phấn tích các tín hi u tặ ệ ợ ể ệ ương đỗấi n đ nh cho m t th i gianổ ị ộ ờ
dài Biềấn đ i Gabor th c hi n n i đ a hóa phấn tích tấền sỗấ th i gian và là m tổ ự ệ ộ ị ờ ộ
phấn tích tấền sỗấ th i gian v i m t đ phấn gi i duy nhấất, đ c bi t nh y c m v iờ ớ ộ ộ ả ặ ệ ạ ả ớ
Trang 17mô hình được xác định trước Phương pháp không chỉ xem xét tính ngẫu nhiên cục
bộ của kết cấu mà còn xem xét tính đều đặn của toàn bộ kết cấu, linh hoạt hơn.nhưng rất khó để ước tính các tham số của mô hình, và số lượng tính toán lớn.Phương pháp sử dụng trường ngẫu nhiên Gaussian Markov để mô hình kết cấu hìnhảnh của các loại sản phẩm không có khiếm khuyết Mô hình tự hồi quy (MR-SAR)
để phân loại và phân đoạn kết cấu Đầu tiên, mô hình đa biến tự hồi quy đồng thờibất biến xoay vòng (RISAR) dựa trên mô hình hồi quy tự động (CAR) Thựcnghiệm cho thấy mô hình RISAR đa biến vượt trội so với mô hình CAR trong phânloại kết cấu Phương pháp chia hình ảnh khuyết tật bề mặt của sản phẩm thành hailoại: “nền” và “khuyết tật”, đồng thời sử dụng các mô hình Cây Markov ẩn (HMT)
để lập mô hình và đạt được phân đoạn khuyết tật đa quy mô tương ứng Theo quanđiểm về tỷ lệ lỗi phân đoạn cao trong kết quả phân đoạn tỷ lệ tốt thu được từ môhình HMT, Markov ẩn thích ứng theo ngữ cảnh phương pháp cây (CAHMT) đượcgiới thiệu để kết hợp các kết quả phân đoạn của các tỷ lệ khác nhau, trong đó làmgiảm đáng kể tỷ lệ lỗi phân đoạn của phân đoạn tỷ lệ nhỏ
2.2 T ng quan vềề x lý nh ổ ử ả
Tr ước khi chuy n sang x lý hình nh, trể ử ả ước tiền chúng ta cấền hi u chínhể
xác nh ng gì cấấu thành m t hình nh M t hình nh đữ ộ ả ộ ả ược th hi n bắềng kíchể ệ
th c c a nó (chiềều cao và chiềều r ng) d a trền sỗấ lướ ủ ộ ự ượng pixel Ví d : nềấu kíchụ
th ướ ủc c a hình nh là 500 x 400 (r ng x cao), t ng sỗấ pixel trong hình nh làả ộ ổ ả
200000 Pixel này là m t đi m trền hình nh có sắấc thái, đ m ho c màu cộ ể ả ộ ờ ặ ụ
th Nó thể ường đ ượ ạc đ i di n trong m t trong nh ng điềều sau đấy:ệ ộ ữ
Trang 18Thang đ xám - M t pixel là m t sỗấ nguyền có giá tr t 0 đềấn 255 (0 làộ ộ ộ ị ừ
màu đen hoàn toàn và 255 là màu trắấng hoàn toàn).
RGB - M t pixel độ c t o thành t 3 sỗấ nguyền t 0 đềấn 255 (các sỗấượ ạ ừ ừ
nguyền bi u th cể ị ường đ c a màu đ , xanh l c và xanh lam).ộ ủ ỏ ụ
RGBA - Đấy là phấền m r ng c a RGB v i trở ộ ủ ớ ường alpha được thềm vào,
bi u th đ m c a hình nh.ể ị ộ ờ ủ ả
Quá trình x lý hình nh yều cấều các chuỗỗi ho t đ ng cỗấ đ nh đử ả ạ ộ ị ược th c hi n ự ệ ở
mỗỗi pixel c a hình nh B x lý hình nh th c hi n chuỗỗi thao tác đấều tiền trềnủ ả ộ ử ả ự ệ
hình nh, t ng pixel m t Khi điềều này đả ừ ộ c th c hi n đấềy đ , nó seỗ bắất đấềuượ ự ệ ủ
th c hi n thao tác th hai, v.v Giá tr đấều ra c a các ho t đ ng này có th đự ệ ứ ị ủ ạ ộ ể ược tính toán t i bấất kỳ pixel nào c a hình nh.ạ ủ ả
X lý hình nh và phấn lo i x lý ử ả ạ ử
X lý hình nh là quá trình chuy n đ i hình nh thành d ng kyỗ thu t sỗấ và th cử ả ể ổ ả ạ ậ ự
hi n m t sỗấ thao tác nhấất đ nh đ lấấy m t sỗấ thỗng tin h u ích t hình nh đó.ệ ộ ị ể ộ ữ ừ ả
H thỗấng x lý hình nh thệ ử ả ường x lý tấất c các hình nh dử ả ả ướ ại d ng tín hi u 2Dệ
khi áp d ng m t sỗấ phụ ộ ương pháp x lý tín hi u đ nh trử ệ ị ước.
Có nắm lo i x lý nh chính:ạ ử ả
Tr c quan hóa - Tìm các đỗấi tự ượng khỗng nhìn thấấy trong hình nh.ả
Recognition - Phấn bi t ho c phát hi n các đỗấi tệ ặ ệ ượng trong hình nh.ả
Làm sắấc nét và ph c hỗềi - T o hình nh nấng cao t hình nh gỗấc.ụ ạ ả ừ ả
Nh n d ng mấỗu - Đo các mấỗu khác nhau xung quanh các đỗấi tậ ạ ượng trong nh.
ả
Truy xuấất - Duy t và tìm kiềấm hình nh t c s d li u l n vềề hình nhệ ả ừ ơ ở ữ ệ ớ ả
kyỗ thu t sỗấ tậ ương t nh hình nh gỗấc.ự ư ả
Các b ướ ử ả c x lý nh c b n ơ ả
Thu nh n nh ậ ả
Thu nh n nh là bậ ả ước đấều tiền trong x lý nh Bử ả ước này còn đ ược g i là tiềềnọ
x lý trong x lý nh Nó liền quan đềấn vi c truy xuấất hình nh t m t nguỗền,ử ử ả ệ ả ừ ộ
th ường là nguỗền d a trền phấền c ng.ự ứ
Trang 19Nấng cao hình nh ả
Tắng c ường hình nh là quá trình đ a ra và làm n i b t m t sỗấ tính nắng quanả ư ổ ậ ộ
tấm trong m t hình nh đã b che khuấất Điềều này có th liền quan đềấn vi c thayộ ả ị ể ệ
đ i đ sáng, đ tổ ộ ộ ương ph n, v.v.ả
Khối ph c hình nh ụ ả
Ph c hỗềi hình nh là quá trình c i thi n di n m o c a hình nh Tuy nhiền,ụ ả ả ệ ệ ạ ủ ả
khỗng giỗấng nh tắng cư ường hình nh, vi c khỗi ph c hình nh đả ệ ụ ả ược th c hi nự ệ
bắềng cách s d ng các mỗ hình toán h c ho c xác suấất nhấất đ nh.ử ụ ọ ặ ị
X lý nh màu ử ả
X lý nh màu bao gỗềm m t sỗấ kyỗ thu t t o mỗ hình màu trong miềền kyỗ thu tử ả ộ ậ ạ ậ
sỗấ B ước này đã tr nền n i b t do vi c s d ng đáng k các hình nh kyỗ thu tở ổ ậ ệ ử ụ ể ả ậ
sỗấ qua internet.
Wavelet và x lý đa phấn gi i ử ả
Wavelet đ ượ ử ục s d ng đ bi u diềỗn hình nh các m c đ phấn gi i khácể ể ả ở ứ ộ ả
nhau Các hình nh đả ược chia nh thành wavelet ho c các vùng nh h n đ nénỏ ặ ỏ ơ ể
d li u và bi u diềỗn hình chóp.ữ ệ ể
Nén
Nén là m t quá trình độ ượ ử ục s d ng đ gi m dung lể ả ượng l u tr cấền thiềất đư ữ ể
l u hình nh ho c bắng thỗng cấền thiềất đ truyềền hình nh Điềều này đư ả ặ ể ả ược th cự
hi n đ c bi t khi hình nh đệ ặ ệ ả ượ ử ục s d ng trền Internet.
X lý hình thái ử
X lý hình thái là m t t p h p các ho t đ ng x lý đ biềấn hình nh d a trềnử ộ ậ ợ ạ ộ ử ể ả ự
hình d ng c a chúng.ạ ủ
Phấn đo n ạ
Phấn đo n là m t trong nh ng bạ ộ ữ ước khó nhấất c a x lý nh Nó liền quan đềấnủ ử ả
vi c phấn vùng m t hình nh thành các phấền ho c đỗấi tệ ộ ả ặ ượng cấấu thành c a nó ủ
Trang 20Bi u diềỗn và mố t ể ả
Sau khi m t hình nh độ ả ược phấn đo n thành các vùng trong quá trình phấnạ
đo n, mỗỗi vùng đạ ược bi u diềỗn và mỗ t d ng phù h p đ máy tính x lýể ả ở ạ ợ ể ử
thềm Bi u diềỗn liền quan đềấn các đ c đi m c a hình nh và các thu c tính khuể ặ ể ủ ả ộ
v c Mỗ t liền quan đềấn vi c trích xuấất thỗng tin đ nh lự ả ệ ị ượng giúp phấn bi t m tệ ộ
l p đỗấi tớ ượng này v i l p đỗấi tớ ớ ượng khác.
đ phát hi n s m ung th vú bắềng cách s d ng thu t toán phát hi n nỗất sấềnể ệ ớ ư ử ụ ậ ệ
ph c t p trong quá trình quét vú Do vi c s d ng trong y tềấ yều cấều các b xứ ạ ệ ử ụ ộ ử
lý hình nh đả ược đào t o chuyền sấu nền các ng d ng này yều cấều tri n khaiạ ứ ụ ể
và đánh giá đáng k trể ước khi chúng có th để ược chấấp nh n s d ng.ậ ử ụ
Cống ngh c m biềấn giao thống ệ ả
Trong tr ường h p c m biềấn giao thỗng, chúng tỗi s d ng h thỗấng x lý hìnhợ ả ử ụ ệ ử
nh video ho c VIPS H thỗấng này bao gỗềm a) h thỗấng ch p nh b) h thỗấngả ặ ệ ệ ụ ả ệ
viềỗn thỗng và c) h thỗấng x lý nh Khi quay video, VIPS có m t sỗấ vùng phátệ ử ả ộ
hi n seỗ phát tín hi u “b t” bấất c khi nào có phệ ệ ậ ứ ương ti n đi vào vùng đó và sauệ
đó phát tín hi u “tắất” bấất c khi nào phệ ứ ương ti n ra kh i vùng phát hi n Cácệ ỏ ệ
vùng phát hi n này có th đệ ể ược thiềất l p cho nhiềều làn đậ ường và có th để ượ ửc s
d ng đ c m nh n l u lụ ể ả ậ ư ượng truy c p trong m t tr m c th ậ ộ ạ ụ ể
Trang 21Hình 2.1: Hình nh giao thỗng bình thả ường và m t hình nh VIPS v i các vùngộ ả ớ
X lý hình nh có th đử ả ể ượ ử ục s d ng đ khỗi ph c và điềền vào các phấền b thiềấuể ụ ị
ho c b h ng c a hình nh Điềều này liền quan đềấn vi c s d ng các h thỗấngặ ị ỏ ủ ả ệ ử ụ ệ
x lý hình nh đã đử ả ược đào t o r ng rãi v i b d li u nh hi n có đ t o cácạ ộ ớ ộ ữ ệ ả ệ ể ạ
phiền b n m i h n c a nh cũ và nh b h ng ả ớ ơ ủ ả ả ị ỏ
Hình 2.2: Tái t o hình nh b h ng bắềng x lý hình nhạ ả ị ỏ ử ả
Phát hi n khuốn m t ệ ặ
Trang 22M t trong nh ng ng d ng ph biềấn nhấất c a x lý nh mà chúng ta s d ngộ ữ ứ ụ ổ ủ ử ả ử ụ
ngày nay là nh n di n khuỗn m t Nó tuấn theo các thu t toán h c sấu trong đóậ ệ ặ ậ ọ
máy được đào t o đấều tiền v i các đ c đi m c th c a khuỗn m t ngạ ớ ặ ể ụ ể ủ ặ ười,
ch ng h n nh hình d ng khuỗn m t, kho ng cách gi a hai mắất, v.v Sau khiẳ ạ ư ạ ặ ả ữ
d y cho máy các đ c đi m khuỗn m t ngạ ặ ể ặi này, nó seỗ bắất đấều chấấp nh n tấất cườ ậ ả
các đỗấi t ượng trong m t hình nh giỗấng v i khuỗn m t c a con ngộ ả ớ ặ ủ ười Nh nậ
di n khuỗn m t là m t cỗng c quan tr ng đệ ặ ộ ụ ọ ượ ử ục s d ng trong b o m t, sinhả ậ
Hình nh kyỗ thu t sỗấ có th đả ậ ể ược cung cấấp bấất kỳ đ nh d ng mongở ị ạ
muỗấn nào (hình nh c i tiềấn, X-Ray, nh ấm b n, v.v.).ả ả ả ả
Nó giúp c i thi n hình nh đ gi i thích cho con ngả ệ ả ể ả ười Thỗng tin có thể
đ ượ ửc x lý và trích xuấất t ừ hình nh đ gi i thích máy.ả ể ả
Các pixel trong hình nh có th đả ể ược điềều ch nh theo bấất kỳ m t đ và đỉ ậ ộ ộ
t ương ph n mong muỗấn nào.ả
Hình nh có th đả ể ượ ưc l u tr và truy xuấất dềỗ dàng.ữ
Nó cho phép truyềền hình nh đi n t dềỗ dàng đềấn các nhà cung cấấp bềnả ệ ử
Trang 23Phát triển phần mềm,
Toán học,
Kịch bản hệ thống
Chức năng của Python
Python có thể được sử dụng trên máy chủ để tạo các ứng dụng web.Python có thể được sử dụng cùng với phần mềm để tạo quy trình công việc.Python có thể kết nối với các hệ thống cơ sở dữ liệu Nó cũng có thể đọc vàsửa đổi các tập tin
Python có thể được sử dụng để xử lý dữ liệu lớn và thực hiện các phép toánphức tạp
Python có thể được sử dụng để tạo nguyên mẫu nhanh hoặc để phát triểnphần mềm sẵn sàng sản xuất
Lợi ích khi sử dụng Python
Python hoạt động trên các nền tảng khác nhau (Windows, Mac, Linux,Raspberry Pi, v.v.)
Python có cú pháp đơn giản tương tự như ngôn ngữ tiếng Anh
Python có cú pháp cho phép các nhà phát triển viết chương trình với ít dònghơn một số ngôn ngữ lập trình khác
Python chạy trên một hệ thống thông dịch, nghĩa là mã có thể được thực thingay khi nó được viết Điều này có nghĩa là việc tạo mẫu có thể rất nhanhchóng
Python có thể được xử lý theo cách thủ tục, hướng đối tượng hoặc chứcnăng
Cú pháp Python so với các ngôn ngữ lập trình khác
Python được thiết kế để dễ đọc và có một số điểm tương đồng với ngôn ngữtiếng Anh với ảnh hưởng từ toán học
Python sử dụng các dòng mới để hoàn thành một lệnh, trái ngược với cácngôn ngữ lập trình khác thường sử dụng dấu chấm phẩy hoặc dấu ngoặc đơn
Trang 24Python dựa vào thụt đầu dòng, sử dụng khoảng trắng, để xác định phạm vi;chẳng hạn như phạm vi của vòng lặp, hàm và lớp Các ngôn ngữ lập trìnhkhác thường sử dụng dấu ngoặc nhọn cho mục đích này.
2.4 Thư viện OpenCV
Giới thiệu về OpenCV
OpenCV (OpenSource Computer Vision Library) là một thư viện phần mềmthị giác máy tính và máy học mã nguồn mở OpenCV được xây dựng để cung cấp
cơ sở hạ tầng chung cho các ứng dụng thị giác máy tính và để đẩy nhanh việc sửdụng nhận thức máy móc trong các sản phẩm thương mại Là một sản phẩm đượccấp phép của Apache 2, OpenCV giúp các doanh nghiệp dễ dàng sử dụng và sửa đổimã
Thư viện có hơn 2500 thuật toán được tối ưu hóa, bao gồm một bộ toàn diện cácthuật toán học máy và thị giác máy tính cổ điển cũng như hiện đại Các thuật toánnày có thể được sử dụng để phát hiện và nhận dạng khuôn mặt, xác định đối tượng,phân loại hành động của con người trong video, theo dõi chuyển động của camera,theo dõi đối tượng chuyển động, trích xuất mô hình 3D của đối tượng, tạo đám mâyđiểm 3D từ camera âm thanh nổi, ghép các hình ảnh lại với nhau để tạo ra độ phângiải cao hình ảnh toàn cảnh, tìm hình ảnh tương tự từ cơ sở dữ liệu hình ảnh, loại bỏmắt đỏ khỏi hình ảnh được chụp bằng đèn flash, theo dõi chuyển động của mắt,nhận dạng phong cảnh và thiết lập điểm đánh dấu để phủ nó bằng thực tế tăngcường, v.v OpenCV có hơn 47 nghìn người dùng cộng đồng và số lượt tải xuốngước tính vượt quá 18 triệu Thư viện được sử dụng rộng rãi trong các công ty, nhómnghiên cứu và các cơ quan chính phủ
Cùng với các công ty lâu đời như Google, Yahoo, Microsoft, Intel, IBM, Sony,Honda, Toyota sử dụng thư viện, có nhiều công ty khởi nghiệp như Applied Minds,VideoSurf và Zeitera sử dụng rộng rãi OpenCV Các ứng dụng được triển khai củaOpenCV trải rộng trên phạm vi từ ghép các hình ảnh chế độ xem phố lại với nhau,phát hiện sự xâm nhập trong video giám sát ở Israel, giám sát thiết bị khai thác mỏ
ở Trung Quốc, giúp rô-bốt điều hướng và nhặt đồ vật tại Nhà để xe Willow, phát
Trang 25hiện tai nạn chết đuối ở bể bơi ở châu Âu, chạy nghệ thuật tương tác ở Tây Ban Nha
và New York, kiểm tra các mảnh vỡ trên đường băng ở Thổ Nhĩ Kỳ, kiểm tra nhãntrên sản phẩm tại các nhà máy trên khắp thế giới để phát hiện khuôn mặt nhanhchóng ở Nhật Bản
Nó có giao diện C++, Python, Java và MATLAB và hỗ trợ Windows, Linux,Android và Mac OS OpenCV chủ yếu dựa vào các ứng dụng tầm nhìn thời gianthực và tận dụng các hướng dẫn MMX và SSE khi có sẵn Giao diện CUDA vàOpenCL đầy đủ tính năng hiện đang được tích cực phát triển Có hơn 500 thuậttoán và số hàm cấu thành hoặc hỗ trợ các thuật toán đó nhiều gấp khoảng 10 lần.OpenCV được viết nguyên bản bằng C++ và có giao diện khuôn mẫu hoạt độngtrơn tru với các bộ chứa STL
Ứng dụng Open CV với Python
Với sự trợ giúp của Open CV trong python, có thể xử lý hình ảnh, video dễ dàng và
có thể trích xuất thông tin hữu ích từ đó, vì có rất nhiều chức năng có sẵn Một sốứng dụng phổ biến là:
Xử lý hình 6nh:
Hình ảnh có thể được đọc, viết, hiển thị và xử lý bằng OpenCV, chẳng hạn như cóthể tạo hình ảnh mới từ hình ảnh đó bằng cách thay đổi hình dạng, màu sắc hoặctrích xuất nội dung hữu ích từ hình ảnh đã cho và ghi vào hình ảnh mới
Phát hiện khuôn mặt:
Từ phát trực tiếp bằng camera web hoặc từ các video/hình ảnh được lưu trữ cục bộbằng Haar-Cascade Classifiers
Nhận dạng khuôn mặt:
Tiếp theo là nhận diện khuôn mặt từ các video bằng cách sử dụng cv mở bằng cách
vẽ các hộp giới hạn, tức là hình chữ nhật, sau đó đào tạo mô hình bằng thuật toán
ML để nhận dạng khuôn mặt
Phát hiện đối tượng:
Open CV cùng với YOLO, một thuật toán phát hiện đối tượng có thể được sử dụng
để phát hiện các đối tượng từ hình ảnh, video, đối tượng chuyển động hoặc tĩnh
Trang 26Giới thiệu về PLC
PLC được sử dụng để điều khiển dây chuyền, thiết bị công nghiệp riêng lẻ(Rơ-le, timer, contactor ) hoặc kết hợp với nhau tuỳ theo mức độ yêu cầu thànhmột hệ thống điện điều khiển đáp ứng được bài toán công nghệ đặt ra
Công việc này diễn ra khá phức tạp trong thi công vì phải thao tác chủ yếutrong việc đấu nối, lắp đặt mất khá nhiều thời gian mà hiệu quả lại không cao vì mộtthiết bị có thể cần được lấy tín hiệu nhiều lần mà số lượng lại rất hạn chế, bởi vậylượng vật tư là rất nhiều đặc biệt trong quá trình sửa chữa bảo trì, hay cần thay đốiquy trình sản xuất gặp rất nhiều khó khăn và mất rất nhiều thời gian trong việc tìmkiếm hư hỏng và đi lại dây bởi vậy năng suất lao động giảm đi rõ rệt
Với những nhược điểm trên các nhà khoa học, nhà nghiên cứu đã nỗ lực đểtìm ra một giải pháp điều khiển tối ưu nhất đáp ứng mong mỏi của ngành côngnghiệp hiện đại đó là tự động hoá quá trình sản xuất làm tăng sức lao động, giúpngười lao động không phải làm việc ở những khu vực nguy hiểm, độc hại mà năngsuất lao động lại tăng cao gấp nhiều lần
Trang 27Một hệ thống điều khiển ưu việt mà phải chọn để điều khiển cho ngành côngnghiệp hiện đại cần phải hội tụ đủ các yếu tố sau: Tính tự động cao, kích thước vàkhối lượng nhỏ gọn, giá thành hạ, dễ thi công, sửa chữa, chất lượng làm việc ổnđịnh linh hoạt
Từ đó, hệ thống PLC ra đời đầu tiên năm 1968 Tuy nhiên hệ thống còn kháđơn giản và cồng kềnh, người sử dụng gặp nhiều khó khăn trong việc vận hành hệthống, vì vậy qua nhiều năm cải tiến và phát triển không ngừng khắc phục nhữngnhược điểm còn tồn tại để có được bộ điều khiển PLC như ngày nay Từ đó đã giảiquyết được các vấn đề nêu trên với các ưu việt như sau:
- Là bộ điều khiển số nhỏ gọn, dễ thay đổi thuật toán điều khiển
- Khả năng mở rộng các module vào ra khi cần thiết
- Ngôn ngữ lập trình dễ hiểu thích hợp với nhiều đối tượng lập trình
- Có khả năng chống nhiễu với độ tin cậy cao và có rất nhiều ưu điểm khác
- Có khả năng truyền thông đó là trao đổi thông tin với môi trường xung quanhnhư với máy tính, các PLC khác, các thiết bị giám sát, điều khiển Hiện nay trên thế giới có nhiều hãng PLC khác nhau cùng phát triển như hãngOmron, Misubishi, Hitachi, ABB, Siemens, đều có chung một nguyên lý cơ bản,tuy nhiên có vài điểm khác biệt phù hợp với từng ngành
Lợi ích của việc sử dụng PLC
Cùng với sự phát triển của phần cứng lẫn phần mềm, PLC ngày càng tăngđược các tính năng cũng như lợi ích trong hoạt động công nghiệp Kích thước củaPLC hiện nay được thu nhỏ lại để bộ nhớ và số lượng I/O nhiều hơn, các ứng dụngcủa PLC mạnh hơn nâng cao khả năng giải quyết được nhiều vấn đề phức tạp trongđiều khiển hệ thống
Lợi ích đầu tiên của PLC là hệ thống điều khiển chỉ cần lắp đặt một lần (đốivới sơ đồ hệ thống, các đường nối dây, các tín hiệu ở ngõ vào/ra ), mà không phảithay đổi kết cấu của hệ thống sau này, giảm được sự tốn kém khi phải thay đổi lắpđặt khi đổi thứ tự điều khiển (đối với hệ thống điều khiển rơ-le ) khả năng chuyểnđổi hệ điều khiển cao hơn (như giao tiếp giữa các PLC để luôn truyền dữ liệu điềukhiển lẫn nhau), hệ thống điều khiển linh hoạt hơn
Trang 28Không như các hệ thống cũ, PLC có thể dễ dàng lắp đặt do chiếm mộtkhoảng không gian nhỏ hơn nhưng điều khiển nhanh, nhiều hơn các hệ thống khác.Điều này thuận lợi hơn đối với các hệ thống điều khiển lớn, phức tạp, và quá trìnhlắp đặt hệ thống PLC ít tốn thời gian hơn các hệ thống khác Có thể nhận biết cácvấn đề trong hệ thống của PLC nhờ giao diện qua màn hình máy tính (một số PLCthế hệ sau có thể nhận biết và thông báo trực tiếp cho người sử dụng)
Tiêu chuẩn hoá các chức năng chính của PLC trong các hệ điều khiển gồm : Điều khiển chuyên gia giám sát:
- Thay thế cho điều khiển rơ-le
- Thay thế cho các Panel điều khiển, mạch in
- Điều khiển tự động, bán tự động bằng tay, các máy và các quá trình
- Có các khối điều khiển thông dụng (thời gian, bộ đếm)
Điều khiển dãy:
- Các phép toán số học
- Cung cấp thông tin
- Điều khiển liên tục các quá trình (nhiệt độ, áp suất )
- Điều khiển động cơ chấp hành
- Điều khiển động cơ bước
Điều khiển mềm dẻo:
- Điều hành quá trình báo động
- Phát hiện lỗi khi chạy chương trình
- Ghép nối với máy tính (RS232/ RS485)
- Thực hiện mạng tự động hoá xí nghiệp
Trang 29lĩnh vực phức tạp, đòi hỏi tính chính xác cao, ứng dụng các thuật toán trong sảnxuất Các lĩnh vực tiêu biểu ứng dụng PLC hiện nay bao gồm:
- Hóa học và dầu khí: định áp suất (dầu), bơm dầu, điều khiến hệ thống dẫn
- Chế tạo máy và sản xuất: Tự động hóa trong chế tạo máy, đo đạc, quá trìnhlắp đặt máy, điều khiển nhiệt độ lò kim loại
- Thực phẩm, rượu bia, thuốc lá: Phân loại sản phấm, đếm sản phẩm, kiểm trasản phẩm
- Kim loại: Điều khiển quá trình cán, cuốn (thép), quy trình sản xuất, kiểm trachất lượng
- Năng lượng: Điều khiển nguyên liệu (cho quá trình đốt, xử lý các tuabin )các trạm cần hoạt động tuần tự khai thác vật liệu một cách tự động (than, gỗ,dầu mỏ)
Ưu, nhược điểm khi lập trình hệ thống điều khiển PLC
Ưu điểm của PLC:
Từ thực tế sử dụng thấy rằng PLC có những điểm mạnh như sau:
- Chương trình PLC dễ thay đổi và sửa chữa: Chương trình tác động đến bêntrong bộ PLC có thể được lập trình thay đổi bằng xem xét việc thực hiện vàgiải quyết tại chỗ những vấn đề liên quan đến sản xuất Người lập trình PLCđược trang bị các công cụ phần mềm hỗ trợ để tìm ra lỗi, từ đó sửa chữa thaythế hay theo dõi được cả phần cứng và phần mềm dễ dàng hơn Chỉ cần thayđổi phần mềm sẽ có thể tạo nên hệ thống tối ưu mà các hệ điều chỉnh trướckhông có được
- Dễ dàng nối mạch và thiết lập hệ thống: Với chi phí rất lớn cho việc hànmạch hay nối mạch trong cấp điều khiển rơ-le, thì ở PLC những công việc đóđơn giản được thực hiện bởi chương trình
- Các tín hiệu đưa ra từ bộ PLC có độ tin cậy cao hơn so với các tín hiệu đượccấp từ bộ điều khiển bằng rơ-le
- Với hệ thống điều khiển dùng PLC vừa có thể tiến hành hiệu chỉnh sửa chữa
mà hệ thống vẫn làm việc, tức là vẫn đảm bảo dây chuyền công nghệ không
bị dừng, vì vậy cho phép hiệu chỉnh để đạt được kết quả hiệu chỉnh là tối ưu
Trang 30Nhược điểm của PLC:
- Do chưa tiêu chuẩn hoá nên mỗi công ty sản xuất ra PLC đều đưa ra cácngôn ngữ lập trình khác nhau, dẫn đến thiếu tính thống nhất về hợp thức hoá
- Trong các mạch điều khiển với quy mô nhỏ, giá của một bộ PLC đắt hơn khi
sử dụng bằng phương pháp rơ-le
- Dòng đầu ra của PLC thường nhỏ hơn 500 mA Nên khi đấu nối với các thiết
bị công suất lớn thường phải sử dụng thiết bị trung gian là rơ-le
- Để thực hiện lập trình được chương trình điều khiển bắt buộc phải có máytính hoặc máy lập trình đi kèm với cáp chuẩn hóa
Cấu trúc PLC
Hệ thống PLC thông dụng có 5 bộ phận cơ bản, gồm bộ xử lý, bộ nhớ, bộnguồn, giao diện nhập/ xuất (I/O), và thiết bị lập trình
Hình 2.3: Sơ đồ cấu trúc PLC
- Bộ xử lý của PLC
Bộ xử lý còn gọi là bộ xử lý trung tâm (CPU), là linh kiện chứa bộ vi xử lý,biên dịch các tín hiệu nhập và thực hiện các hoạt động điều khiển theo chương trìnhđược lưu động trong bộ nhớ của CPU, truyền các quyết định dưới dạng tín hiệu hoạtđộng đến các thiết bị xuất
- Bộ nguồn
Bộ nguồn có nhiệm vụ chuyển đổi điện áp AC thành điện áp thấp DC (5V)cần thiết cho bộ xử lý và các mạch điện có trong các module giao diện nhập và xuất
Trang 31- Bộ nhớ
Bộ nhớ là nơi lưu chương trình được sử dụng cho các hoạt động điều khiển,dưới sự kiểm tra của bộ vi xử lý.Trong hệ thống PLC có nhiều loại bộ nhớ : Bộ nhớchỉ để đọc ROM cung cấp dung lượng lưu trữ cho hệ điều hành và dữ liệu cố địnhđược CPU sử dụng, bộ nhớ truy cập ngẫu nhiên RAM dành cho chương trình củangười dùng Bộ nhớ chỉ đọc có thể xoá và lập trình được là các ROM có thể đượclập trình, sau đó các chương trình này được thường trú trong ROM Toàn bộ chươngtrình điều khiển được nhớ trong bộ nhớ của PLC dưới dạng các khối chương trình
và được thực hiện theo chu kỳ vòng quét
Như vậy, PLC thực chất hoạt động như một máy tính cá nhân nghĩa là phải
có bộ vi xử lý, hệ điều hành, bộ nhớ để lưu giữ chương trình điều khiển, dữ liệu, cócổng vào ra đế giao tiếp với các thiết bị bên ngoài Bên cạnh đó PLC còn có các bộCounter, Timer để phục vụ bài toán điều khiển
- Cấu trúc bên trong cơ b6n của PLC
Cấu trúc cơ bản bên trong của PLC bao gồm bộ xử lý trung tâm (CPU) chứa
bộ vi xử lý hệ thống, bộ nhớ, và mạch nhập/ xuất CPU điều khiển và xử lý mọihoạt động bên trong của PLC Bộ xử lý trung tâm được trang bị đồng hồ có tần sốtrong khoảng từ 1 đến 8 MHz Tần số này quyết định tốc độ vận hành của PLC,cung cấp chuẩn thời gian và đồng bộ hóa tất cả các thành phần của hệ thống Thôngtin trong PLC được truyền dưới dạng các tín hiệu digital
- Cấu hình CPU tùy thuộc vào bộ vi xử lý Nói chung CPU có:
Bộ thuật toán và logic (ALU) chịu trách nhiệm xử lý dữ liệu, thực hiện các phéptoán số học (cộng, trừ, nhân, chia) và các phép toán logic AND, OR, NOT,EXCLUSIVE – OR
Bộ nhớ còn gọi là các thanh ghi, bên trong bộ vi xử lý, được sử dụng để lưu trữthông tin liên quan đến sự thực thi của chương trình
Bộ điều khiển được sử dụng để điều khiển chuẩn thời gian của các phép toán Bộnhớ: Trong hệ thống PLC có nhiều loại bộ nhớ như: Bộ nhớ chỉ để đọc (ROM), bộnhớ truy cập ngẫu nhiên (RAM), bộ nhớ chỉ đọc có thể xoá và lập trình được(EPROM) Các loại bộ nhớ này đã được trình bày ở trên
Trang 322.6 Tổng quan về MobileNet
2.6.1 Giới thiệu về MobileNet
MobileNet được phát triển bởi đội ngũ Google, mô hình sử dụng cách tính chập tíchmang tên DSC (Depthwise Separable Convolution) nhằm giảm kích thước mô hình
và giảm độ phức tạp tính toán Do đó, MobileNet thường được sử dụng cho các ứngdụng Computer Vision trên các thiết bị nhỏ gọn như điện thoại thông minh hay thiết
bị nhúng
2.6.2 Cấu trúc mạng MobileNet
Tích chập có thể phân tách theo chiều sâu
Mô hình MobileNet dựa trên khả năng phân tách theo chiều sâu tích chập là mộtdạng của tích chập thừa số yếu tố nào tạo ra một tích chập tiêu chuẩn thành một tíchchập chiều sâu và tích chập 1×1 được gọi là tích chập điểm Đối với MobileNets,tích chập theo chiều sâu áp dụng một bộ lọc duy nhất cho mỗi kênh đầu vào theochiều kim đồng hồ tích chập sau đó áp dụng tích chập 1×1 để kết hợp xuất ra tíchchập theo chiều sâu Tích chập tiêu chuẩn cả bộ lọc và kết hợp các đầu vào thànhmột bộ đầu ra mới trong một bước Tích chập có thể phân tách theo chiều sâu chiatách điều này thành hai lớp, một lớp riêng biệt để lọc và một lớp riêng biệt lớp đểkết hợp Yếu tố hóa này có tác dụng giảm đáng kể tính toán và kích thước mô hình.Hình 2 chỉ ra cách một tích chập tiêu chuẩn 2(a) được phân tích thành một tích chậptheo chiều sâu 2(b) và tích chập theo điểm 1 × 1 2(c)
(a) Bộ lọc tích chập tiêu chuẩn
(b) B l c tích ch p sấuộ ọ ậ
Trang 33(c) B l c tích ch p 1×1 độ ọ ậ ượ ọc g i là Tích ch p theo chiềều trong bỗấi c nh Tíchậ ả
ch p có th phấn tách theo chiềều sấuậ ể
Hình 2.4: Các b l c tích ch p tiều chu n trong (a) độ ọ ậ ẩ ược thay thềấ bắềng hai l p: tích ch p theo chiềều sấu trong (b) và tích ch p theo đi m trongớ ậ ậ ể
(c) đ xấy d ng b l c có th phấn tách theo chiềều sấu.ể ự ộ ọ ể
D F x M đ c tr ng B n đỗề F và t o Dặ ư ả ạ F x D x N b n đỗề đ c tr ng G trong đó D F ả ặ ư F là chiềều r ng và chiềều cao khỗng gian c a m t b n đỗề tính nắng đấều vào hìnhộ ủ ộ ả
vuỗng, M là sỗấ đấều vào kềnh (đ sấu đấều vào), Dộ G là chiềều r ng và chiềều caoộ
khỗng gian c a b n đỗề tính nắng đấều ra hình vuỗng và N là sỗấ lủ ả ượng đấều ra kềnh (đ sấu đấều ra) L p tích ch p tiều chu n độ ớ ậ ẩ ược tham sỗấ hóa b i nhấn tíchở
ch p K có kích thậ ước D K x D x M x N trong đó D là kích th K K ước khỗng gian c aủ
h t nhấn đạ c coi là hình vuỗng và M là sỗấ kềnh đấều vào và N là sỗấ lượ ượng kềnh đấều ra nh đư ược xác đ nh trị ước đó.
B n đỗề tính nắng đấều ra cho tích ch p tiều chu n gi s s i chấn m t và phấềnả ậ ẩ ả ử ả ộ
đ m đệ ược tính nh sau:ư
Các phép ch p tiều chu n có chi phí tính toán là:ậ ẩ
DK · DK · M · N · DF · DF trong đó chi phí tính toán ph thu c cấấp sỗấ nhấn vào sỗấ lụ ộ ượng kềnh đấều vào M, sỗấ lượng đấều ra kềnh N kích thước h t nhấn Dạ k x D và b n đỗề tính nắng kích k ả
thước D F x D Các mỗ hình MobileNet gi i quyềất t ng vấấn đềề này thu t ng và F ả ừ ậ ữ
t ng tác c a chúng Đấều tiền, nó s d ng các kềất cấấu có th phấn tách theoươ ủ ử ụ ể
chiềều sấu đ phá v s tể ỡ ự ương tác gi a sỗấ lữ ượng kềnh đấều ra và kích thướ ủc c a
Trang 34nhấn Ho t đ ng tích ch p tiều chu n có tác d ng l c các tính nắng d a trềnạ ộ ậ ẩ ụ ọ ự
các h t tích ch p và kềất h p các tính nắng đ t o ra m t bi u diềỗn m i Cácạ ậ ợ ể ạ ộ ể ớ
b ướ ọc l c và kềất h p có th đợ ể ược chia thành hai các bước thỗng qua vi c sệ ử
d ng các tích ch p nhấn t đụ ậ ử ược g i là theo chiềều sấu các kềất cấấu có th táchọ ể
r i đ gi m đáng k chi phí tính toán.ờ ể ả ể
Tích ch p có th tách sấu đậ ể ượ ạc t o thành t hai l p: tích ch p theo chiềều sấu vàừ ớ ậ
tích ch p theo đi m S d ng các kềất cấấu theo chiềều sấu đ áp d ng m t b l cậ ể ử ụ ể ụ ộ ộ ọ
cho mỗỗi mỗỗi kềnh đấều vào (đ sấu đấều vào), tích ch p theo chiềều kim, m t tíchộ ậ ộ
ch p 1×1 đ n gi n, sau đó đậ ơ ả ượ ử ục s d ng đ t o t h p tuyềấn tính c a đấều raể ạ ổ ợ ủ
c a l p theo chiềều sấu M ng di đ ng s d ng c phi tuyềấn tính cho c hai l p.ủ ớ ạ ộ ử ụ ả ả ớ
Tích ch p sấu v i m t b l c trền mỗỗi kềnh đấều vào (đ sấu đấều vào) có thậ ớ ộ ộ ọ ộ ể
đ ược viềất là:
trong đó là h t nhấn tích ch p theo chiềều sấu có kích thạ ậ ước DK x DK x M trong
đó b l c th m trong độ ọ ứ ược áp d ng cho kềnh th m trong F đ t o ra kềnh thụ ứ ể ạ ứ
m c a b n đỗề tính nắng đấều ra đủ ả ượ ọc l c
Tích ch p theo chiềều sấu có chi phí tính toán là:ậ
DK · DK · M · DF · DF Tích ch p theo chiềều sấu c c kỳ hi u qu so v i tích ch p chu n Tuy nhiền, nóậ ự ệ ả ớ ậ ẩ
ch l c các kềnh đấều vào, nó khỗng kềất h p chúng đ t o ra các tính nắng m i Vìỉ ọ ợ ể ạ ớ
thềấ
m t l p b sung tính toán s kềất h p tuyềấn tính c a đấều ra c a tích ch p theoộ ớ ổ ự ợ ủ ủ ậ
chiềều sấu thỗng qua tích ch p 1 x 1 là cấền thiềất đ t o ra các tính nắng m i này.ậ ể ạ ớ
S kềất h p gi a tích ch p theo chiềều sấu và 1 x 1 (theo đi m) tích ch p đự ợ ữ ậ ể ậ ượ ọc g i
là tích ch p phấn tách theo chiềều sấu.ậ
Chi phí tích ch p có th tách sấu:ậ ể
DK · DK · M · DF · DF + M · N · DF · DF
Trang 35đó là t ng c a các tích ch p theo chiềều sấu và 1 × 1 theo chiềều d c Bắềng cáchổ ủ ậ ọ
bi u diềỗn phép tích ch p nh m t quá trình l c và kềất h p gỗềm hai bể ậ ư ộ ọ ợ ước, chúng
ta seỗ gi m đả ược vi c tính toán:ệ
MobileNet s d ng các t h p có th phấn tách theo chiềều sấu 3 x 3 s d ng tínhử ụ ổ ợ ể ử ụ
toán ít h n t 8 đềấn 9 lấền so v i các kềất cấấu tiều chu n.ơ ừ ớ ẩ
2.6.3 Cấấu trúc m ng và đào t o ạ ạ
Cấấu trúc MobileNet được xấy d ng d a trền kh nắng phấn tách theo chiềều sấuự ự ả
xoắấn nh đã đềề c p trong phấền trư ậ ước ngo i tr l p đấều tiền là m t tích ch pạ ừ ớ ộ ậ
đấềy đ Bắềng cách xác đ nh m ng theo nh ng thu t ng đ n gi n nh v y,ủ ị ạ ữ ậ ữ ơ ả ư ậ
chúng ta có th dềỗ dàng khám phá cấấu trúc liền kềất m ng đ tìm m t m ng tỗất.ể ạ ể ộ ạ
M ng kiềấn trúc di đ ng đạ ộ ược xác đ nh trong B ng 1 Tấất c các l p đị ả ả ớ ược theo sau b i m t batchnorm [13] và ReLU phi tuyềấn tính v i ngo i l c a l p đở ộ ớ ạ ệ ủ ớ ược kềất nỗấi đấềy đ cuỗấi cùng khỗng có phi tuyềấn và đ a vào m t l p softmax đủ ư ộ ớ ể
phấn lo i Hình 3 tạ ương ph n m t l p v i các kềất cấấu thỗng thả ộ ớ ớ ường, đ nh m cị ứ
hàng lo t và ReLU phi tuyềấn tính cho l p nhấn tỗấ theo chiềều sấuạ ớ
tích ch p, tích ch p theo chiềều 1 × 1 cũng nh batchnorm và ReLU sau mỗỗi l pậ ậ ư ớ
tích ch p Lấấy mấỗu xuỗấng đậ ượ ửc x lý v i tích ch p theo chiềều sấu kềất ch p cũngớ ậ ậ
nh trong l p đấều tiền Trung bình cuỗấi cùng t ng h p làm gi m đ phấn gi iư ớ ổ ợ ả ộ ả
khỗng gian xuỗấng 1 tr c khi hoàn toàn l p kềất nỗấi Đềấm các t h p theo chiềềuướ ớ ổ ợ
sấu và theo đi m nh các l p riềng bi t, MobileNet có 28 l p Ch đ n gi n đ nhể ư ớ ệ ớ ỉ ơ ả ị
nghĩa các m ng theo m t sỗấ lạ ộ ượng nh Multi - Adds Nó cũng quan tr ng đ làmỏ ọ ể
cho chắấc chắấn rắềng các ho t đ ng này có th đạ ộ ể ược th c hi n m t cách hi uự ệ ộ ệ
qu Vì ví d ho t đ ng ma tr n th a th t khỗng có cấấu trúc thả ụ ạ ộ ậ ư ớ ường khỗng nhanh h n ho t đ ng ma tr n dày đ c cho đềấn khi tỗấc đ rấất cao m c đ th aơ ạ ộ ậ ặ ộ ứ ộ ư
th t Cấấu trúc mỗ hình c a chúng đ t gấền nh tấất c các tính toán thành cácớ ủ ặ ư ả
tích ch p 1 × 1 dày đ c Điềều này có th đậ ặ ể ược th c hi n v i phép nhấn ma tr nự ệ ớ ậ
chung đ ược tỗấi u hóa cao ch c nắng (GẼMM) Thư ứ ường tích ch p đậ ược th cự
hi n b i GẼMM nh ng yều cấều sắấp xềấp l i ban đấều trong b nh đệ ở ư ạ ộ ớ ược g i làọ
Trang 36im2col đ ánh x nó t i GẼMM Các phép ch p 1x1 khỗng yều cấều sắấp xềấp l i bể ạ ớ ậ ạ ộ
nh này và có th đớ ể ược th c hi n tr c tiềấp v i GẼMM, đấy là m t c a các thu tự ệ ự ớ ộ ủ ậ
toán đ i sỗấ tuyềấn tính sỗấ đạ ược tỗấi u hóa nhấất.ư
MobileNet dành 95% th i gian tính toán trong 1 x 1 tích ch p mà cũng có 75%ờ ậ
tham sỗấ càng tỗất đ c xem trong B ng 2 Gấền nh tấất c các thỗng sỗấ b sungượ ả ư ả ổ
nắềm trong l p đớ c kềất nỗấi đấềy đ ượ ủ
Hình 2.5: Bền trái: L p tích ch p tiều chu n v i đ nh m c batchnorm và ReLU ớ ậ ẩ ớ ị ứ
Bền ph i: Các kềất ch p có th phấn tách theo chiềều sấu v i Depthwise và các l pả ậ ể ớ ớ
Pointwise theo sau là batchnorm và ReLU
B ng 2.1 Kiềấn trúc c th MobileNetả ơ ể
Trang 37B ng 2.2 Tài nguyền trền mỗỗi lo i l pả ạ ớ
2.7 Giao thức TCP Modbus
Khái quát TCP/IP
TCP/IP là mô –t mô hình khái niê –m và mô –t tâ –p hợp các giao thức truyền thông dùngtrong mạng internet và các hê – thống mạng máy tính tương tự
Bô – giao thức TCP/IP có thể được coi là mô –t tâ –p hợp các tầng, mỗi tầng giải quyết
mô –t tâ –p vấn đề liên quan đến viê –c truyền dữ liê –u Gồm có 4 tầng: tầng 1 liên kết,tầng 2 mạng, tầng 3 giao vâ –n, tầng 4 ứng dụng
TPC được sử dụng để chỉ định cách các thiết bị giao tiếp qua mạng, phân tách cácgói IP xác định đường đi của gói tin, thiết lâ –p lô – trình truyền gối tin, đảm bảorằng tín hiê –u được truyền đến được đích
Trang 38TCP/IP quyết định các giao thức mà các ứng dụng sử dụng để trao đổi dữ liê –u baogồm các giao thức Ethernet, FDDI, Token Hầu hết các TCP/IP hoạt đô –ng vớimạng LAN sử dụng Ethernet.
Thiết bị khác là bất kỳ thiết bị ngoại vi nào (bộ chuyển I/O, Valve, Driver hoặcthiết bị đo lường khác…) xử lý thông tin và gửi đầu ra của nó đến thiết bị chínhbằng Modbus Các Mô-đun I /O tạo thành các thiết bị máy khách và máy chủ,trong khi thiết bị chính là một máy tính chủ chạy phần mềm ứng dụng thích hợp,
và các thiết bị khác có thể hoạt động như máy chủ và máy khách
Giao tiếp nối tiếp Modbus là giao thức máy chủ và máy khách, ví dụ: một máychủ điều khiển và giao tiếp với nhiều máy khách đáp ứng yêu cầu của máy chủ đểđọc từ hoặc ghi dữ liệu vào các máy khách Cấu trúc mạng giao tiếp được thể hiệntrong
Hình 2.6: Cấu trúc mạng giao tiếp nối tiếp
Trang 39Trong cách giao tiếp nối tiếp này, chỉ có một máy chủ duy nhất và có tới 247 máykhách, mỗi máy khách có một địa chỉ duy nhất Và chúng ta có hai loại giao tiếpModbus nối tiếp, là Modbus RTU và Modbus ASCII.
Sự khác nhau giữa Modbus RTU và Modbus ASCII Chỉ có hai cách truyền cơ bảntrong kết nối Modbus RTU và ASCII Các chế độ truyền này xác định cách thức
mã hóa các thông điệp MODBUS tức là code Ở định dạng ASCII, thì các thôngđiệp có thể đọc được, trong khi đó trong RTU, các thông điệp ở dạng mã nhị phân
và không thể đọc được trong khi giám sát
Đánh đổi là các thông điệp RTU có kích thước nhỏ hơn, cho phép trao đổi dữ liệunhiều hơn trong một khoảng thời gian giống nhau Tuy nhiên thì tất cả các núttrong một mạng MODBUS phải có cùng một kiểu truyền dẫn, có nghĩa là ModbusASCII không thể giao tiếp với Modbus RTU và ngược lại
Modbus TCP (Ethernet), còn được gọi là Modbus TCP / IP, sử dụng kiến trúc máychủ và máy khách Modbus TCP thường được gọi với cái tên là Modbus truyềnqua Ethernet Modbus TCP (cũng là ModbusTCP / IP) chỉ đơn giản là giao thứcModbus RTU với giao diện TCP chạy trên Ethernet Trong đó, thì cấu trúc truyềntin Modbus là giao thức ứng dụng xác định các quy tắc tổ chức dữ liệu độc lập vớiphương tiện truyền dữ liệu TCP / IP cho phép giao thức điều khiển truyền và giaothức Internet, cung cấp phương tiện truyền dẫn cho việc nhắn tin Modbus TCP /IP
Điều này cho phép các thiết bị Modbus / TCP kết nối và giao tiếp ngay lập tức và
dễ dàng qua các mạng cáp quang và Ethernet hiện có Modbus / TCP cũng chophép nhiều địa chỉ hơn dùng RS-485, sử dụng nhiều máy chủ và tốc độ trongphạm vi gigabit Trong khi Modbus RTU có giới hạn là 247 nút trên mỗi mạng,mạng Modbus / TCP có thể có nhiều máy khách như lớp vật lý có thể xử lý.Thường thì con số này là khoảng 1.024
Sự thích ứng nhanh chóng của Ethernet trong ngành điều khiển quá trình và tựđộng hóa có cho phép Modbus / TCP trở thành giao thức công nghiệp được sửdụng rộng rãi nhất, phát triển nhanh nhất và được hỗ trợ qua Ethernet
Trang 40Hình 2.7: Cấu trúc mạng giao tiếp Modbus TCP/IP
Mức đô – phổ biến của Modbus: trên thị trường hiện nay, phần lớn các dòng thiết bịđiều khiển và tự động hóa đều được hỗ trợ chuẩn truyền thông Modbus Điển hìnhnhư là cảm biến nhiệt độ, cảm biến áp suất, đồng hồ điện năng, PLC, biến tần…Bên cạnh đó với sự phát triển ngày càng lớn mạnh của cộng đồng IoT thì càngngày càng có nhiều thiết bị điện-điện tử đã và đang sử dụng chuẩn Modbus
Ta không còn quá xa lạ với các hãng đình đám như: Schneider, Mitsubishi,Siemens, Omron…
Ch ươ ng 3:
TÍNH TOÁN VÀ THIỀẮT KỀẮ3.1 Yều cấều chung c a h thốấng ủ ệ
Dựa vào các đặc điểm, chức năng của hệ thống phát hiện lỗi sản phẩm trên thực tế,
mô hình hệ thống có các yêu cầu thiết kế tổng quát như sau: