Tải bản đầy đủ (.pdf) (100 trang)

Đồ án tốt nghiệp Công nghệ kỹ thuật điều khiển và tự động hóa: Ứng dụng xử lý ảnh để phân loại sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (7.04 MB, 100 trang )

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
KHOA ĐIỆN – ĐIỆN TỬ

ĐỒ ÁN TỐT NGHIỆP
 ĐẠI HỌC
NGÀNH: CƠNG NGHỆ KỸ THUẬT ĐIỀU KHIỂN VÀ 
TỰ ĐỘNG HỐ
ĐỀ TÀI:

ỨNG DỤNG XỬ LÝ ẢNH ĐỂ PHÂN LOẠI SẢN 
PHẨM THEO HÌNH DẠNG, ĐIỀU KHIỂN VÀ 
GIÁM SÁT QUA WINCC
Người hướng dẫn :  ThS. Phan Thị Thanh Vân 
Sinh viên thực hiện :  Bùi Anh Dũng 
   Phạm Lê Bảo Hồng
Mã sinh viên
: 1811505520113
  1811505520217
Lớp
: 18TDH1
  18TDH2

Đà Nẵng, tháng 6/2022


ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
KHOA ĐIỆN – ĐIỆN TỬ

ĐỒ ÁN TỐT NGHIỆP


 ĐẠI HỌC
NGÀNH: CƠNG NGHỆ KỸ THUẬT ĐIỀU KHIỂN VÀ 
TỰ ĐỘNG HỐ
ĐỀ TÀI:

ỨNG DỤNG XỬ LÝ ẢNH ĐỂ PHÂN LOẠI SẢN 
PHẨM THEO HÌNH DẠNG, ĐIỀU KHIỂN VÀ 
GIÁM SÁT QUA WINCC
Người hướng dẫn :  ThS. Phan Thị Thanh Vân 
Sinh viên thực hiện :  Bùi Anh Dũng 
   Phạm Lê Bảo Hồng
Mã sinh viên
: 1811505520113
  1811505520217
Lớp
: 18TDH1
  18TDH2

Đà Nẵng, tháng 6/2022


NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN


NHẬN XÉT CỦA NGƯỜI PHẢN BIỆN


TĨM TẮT ĐỒ ÁN
Tên đề tài: “  Ứng dụng xử lý  ảnh để  phân loại sản phẩm theo hình dạng, điều khiển 
và giám sát qua WinCC”.

Sinh viên thực hiện:  
Bùi Anh Dũng
Mã SV: 1811505520113
Phạm Lê Bảo Hồng
Mã SV: 1811505520217
Lớp: 18TDH1, 18TDH2
Nội dung: 
Mơ hình xử lý ảnh để phân loại sản phẩm theo hình dạng, điều khiển và giám sát qua 
WinCC sử  dụng Kit Raspberry Pi 4B và PLC S7 – 1200.  Ở  đây nhóm đã sử  dụng CPU  
1214C DC/DC/DC, dịng CPU đời mới, hiện đã và đang được ứng dụng trong các nhà máy  
lớn với chức năng điều khiển quy trình hoạt động lớn của một hệ thống sản xuất của một  
nhà máy.
Đề  tài nghiên cứu tập trung vào sử  dụng ngơn ngữ  lập trình Python để  xử  lý ảnh, tín 
hiệu được gửi tới PLC S7 – 1200 thơng qua cổng Ethernet, quy trình điều khiển tuần tự mà 
từ đó viết chương trình phân loại sản phẩm dựa theo hình dạng.
Báo cáo về đề tài gồm có 5 phần chính:
Chương 1: Tổng quan về hệ thống phân loại sản phẩm theo hình dạng.
­ Giới thiệu tổng quan về hệ  thống phân loại sản phẩm theo hình dạng. Ngun lý  
hoạt động của hệ thống. Các cơng nghệ  sử dụng trong hệ thống  : sử dụng Kit Raspberry 
4B để xử lý ảnh, sử dụng PLC S7 – 1200 để phân loại sản phẩm. Đưa ra nhiều phương án  
thiết kế, so sánh, đánh giá rồi chọn ra phương án thiết kế phù hợp nhất với đề tài.
Chương 2: Giới thiệu về Rapberry và ngơn ngữ lập trình Python.
­ Trình bày tổng quan về Raspberry, giới thiệu ngơn ngữ lập trình Python và thư viện  
OpenCV. Tổng quan về xử lý ảnh và tiến hành xử lý ảnh.
Chương 3: Giới thiệu về PLC S7­1200 và phần mềm TIA Portal.
­ Trình bày tổng quan về PLC và giới thiệu PLC S7 – 1200, làm việc với phần mềm  
Tia Portal V16. Phương pháp kết nối giữa PLC và WinCC, thiết kế giao diện WinCC.
Chương 4: Thiết kế và thi cơng mơ hình “Ứng dụng xử lý ảnh để  phân loại sản phẩm 
theo hình dạng, điều khiển và giám sát trên WinCC”.
­ Trình bày u cầu cơng nghệ của hệ thống. Sơ đồ khối. Lựa chọn thiết bị phù hợp  

với đề tài. Sơ đồ bố trí hệ thống. Sơ đồ đấu nối của hệ thống.  
Chương 5: Chương trình điều khiển và giám sát hệ thống.
­ Lập bảng phân cơng đầu vào/ra. Xây dựng lưu đồ thuật tốn. Vẽ giãn đồ thời gian.  
Lập trình, điều khiển hệ  thống. Phương pháp giao tiếp và truyền thơng giữa PLC và  
Raspberry thơng qua thư viện Snap 7.
Kết luận và hướng phát triển
Tài liệu tham khảo
Phụ lục


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT 
KHOA ĐIỆN – ĐIỆN TỬ

CỘNG HỊA XàHƠI CHỦ NGHĨA VIỆT NAM
Độc lập ­ Tự do ­ Hạnh phúc

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Giảng viên hướng dẫn: ThS. Phan Thị Thanh Vân
Sinh viên thực hiện:  Bùi Anh Dũng
 Phạm Lê Bảo Hồng

Mã SV: 1811505520113
Mã SV: 1811505520217

1.  Tên đề tài:

“Ứng dụng xử lý ảnh để phân loại sản phẩm theo hình dạng, điều khiển và giám sát  
trên WinCC”.
2. Các số liệu, tài liệu ban đầu:
­ PLC S7­1200, Raspberry Pi 4B, camera, động cơ, cảm biến, xi lanh…

­ Trần Văn Hiếu, “Tự Động Hóa PLC S7 – 1200 Với TIA Portal”, năm 2019, nhà xuất  
bản khoa học ­ kỹ thuật.
3. Nội dung chính của đồ án:
Chương 1: Tổng quan về hệ thống phân loại sản phẩm theo hình dạng.
Chương 2: Giới thiệu về Rapberry và ngơn ngữ lập trình Python.
Chương 3: Giới thiệu về PLC S7­1200 và phần mềm TIA Portal.
Chương 4: Thiết kế và thi cơng mơ hình “Ứng dụng xử lý ảnh để phân loại sản phẩm theo 
hình dạng, điều khiển và giám sát trên WinCC”.
Chương 5: Chương trình điều khiển và giám sát hệ thống.
ĐÁNH GIÁ KẾT QUẢ THỰC HIỆN CỦA ĐỀ TÀI
HƯỚNG PHÁT TRIỂN ĐỀ TÀI
4. Các sản phẩm dự kiến
­ Mơ hình “Ứng dụng xử lý ảnh để phân loại sản phẩm theo hình dạng, điều khiển  
và giám sát trên WinCC”.
­ Báo cáo thuyết minh đề tài.
­ Chương trình xử lý ảnh trên Python.
­ Chương trình điều khiển hệ thống trên TIA Portal.
5.  Ngày giao đồ án: 21/02/2022 
6.  Ngày nộp đồ án: 30/05/2022
Trưởng Bộ mơn
    

Đà Nẵng, ngày 21 tháng 02 năm 2022
Người hướng dẫn


    ThS. Phan Thị Thanh Vân


LỜI NĨI ĐẦU

Cơng nghiệp hóa – hiện đại hóa đất nước là một trong một trong những mục tiêu mà  
nước ta hiện và đang chú trọng trong những năm vừa qua. Việc áp dụng những dây chuyền  
sản xuất tự động ngày càng được áp dụng nhiều trong các nhà máy, xí nghiệp nhằm tăng 
năng suất làm việc, tăng lợi nhuận đầu ra, giảm thời gian sản xuất… đáp ứng cầu của thị 
trường, sự phát triển hàng ngày hàng giờ của kinh tế và cơng nghệ. Từ đó ngành kỹ thuật 
điều khiển và tự động hóa ra đời và càng phát triển hơn, đáp ứng đủ nhu cầu và nguồn lực 
cho cơng nghiệp thời đại mới cũng như sự phát triển của nước nhà.
Sau khoảng thời gian học tập và rèn luyện, được nhận những kiến thức chun  
ngành của thầy và cơ khoa Điện – Điện tử, Trường ĐH Sư  phạm Kỹ thuật – Đại học Đà  
Nẵng, nhóm chúng em đã tiến hành thực hiện đồ  án “Ứng dụng xử  lý  ảnh để  phân loại  
sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC”.
Đồ án ứng dụng những kiến thức được nhận trên trường lớp cùng với việc tìm hiểu  
thơng qua Internet để giải quyết vấn đề đặt ra cũng như đánh giá cơ sở lý thuyết đến giải  
quyết thực tiễn. Từ đó là cơ sở nền, vững chắc thêm kiến thức suốt 4 năm đại học.
Em xin chân thành cảm ơn ThS.Phan Thị Thanh Vân đã tận tình hướng dẫn và giúp 
chúng em thực hiện đồ án này. Trong q trình thực hiện đồ án mặc dù đã cố gắng hết sức 
nhưng vẫn sẽ khơng thể tránh thiếu sót, mong sự đóng góp ý của thầy/cơ.

8


LỜI CAM ĐOAN
Tên đề  tài : “Ứng dụng xử  lý ảnh để  phân loại sản phẩm theo hình dạng, điều khiển và 
giám sát qua WinCC.”
Sinh viên thực hiện:
Bùi Anh Dũng

Mã SV: 1811505520113

Phạm Lê Bảo Hồng


Mã SV: 1811505520217

Lớp: 18TDH1, 18TDH2
“Tơi xin cam đoan đồ án tốt nghiệp này là do chính chúng tơi nghiên cứu và thực hiện. Tơi  
khơng sao chép từ bất kì một bài viết nào đã được cơng bố mà khơng trích dẫn nguồn gốc. 
Nếu có bất kì một sự vi phạm nào, chúng tơi xin chịu hồn tồn trách nhiệm.”
Sinh viên thực hiện

Bùi Anh Dũng Phạm Lê Bảo Hồng

9


MỤC LỤC

10


DANH SÁCH BẢNG, HÌNH ẢNH
BẢNG 1. 1 Đặc điểm hình dạng sản phẩm

11


DANH SÁCH CÁC KÝ HIỆU, CHỮ VIẾT TẮT
Đ
Đúng
S
Sai

PLC 
Programmable Logic Control
I/O 
Input/Output
LAD 
Ladder Diagram
FBD 
Function Block Diagram
STL 
Instruction List
HMI 
Human Machine Interface
Scada 
Supervisory Control And Data Acquisition
AI 
Analog Input
DI 
Digital Input
ĐC 
Động cơ
WinCC 
Windows Control Center
CPU
Central Procecssing Unit
Power Supply
Nguồn cấp
Input voltage DI
Điện áp đầu vào 
Output Voltage DOĐiện áp đầu ra
Working Memory

Bộ nhớ làm việc
Protocols
Các giao thức
Programming Language Ngơn ngữ lập trình
Class of Protection Lớp bảo vệ

12


Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC

MỞ ĐẦU

Trong thời đại mà các dây chuyền sản xuất, đóng gói và phân loại sản phẩm của các  
nhà máy khơng chỉ  ở  nước ta mà trên tồn thế  giới đang dần dần chuyển hồn tồn thành 
dây chuyền tự  động hóa. Mục đích nhằm tăng năng suất sản phẩm, rút ngắn thời gian  
thành phẩm, có thể  làm việc liên tục, giảm sức người và nhân cơng nhằm đem lại lợi  
nhuận lớn hơn cho doanh nghiệp và nhà đầu tư. 
Đồ  án “Ứng dụng xử lý ảnh để  phân loại sản phẩm theo hình dạng, điều khiển và  
giám sát qua WinCC” thơng qua việc sử dụng Kit Raspbbery Pi 4B, PLC Siemens S7 – 1200  
và WinCC giám sát cơng đoạn phân loại sản phẩm theo hình dạng của từng sản phẩm, 
giúp kiểm sốt được những sản phẩm bị  lỗi, phân loại sản phẩm theo hình dạng mong 
muốn.
Đồ án gồm 5 chương chính:
Chương 1: Tổng quan về hệ thống phân loại sản phẩm theo hình dạng.
Chương 2: Giới thiệu về Rapberry và ngơn ngữ lập trình Python.
Chương 3: Giới thiệu về PLC S7­1200 và phần mềm TIA Portal.
Chương 4: Thiết kế và thi cơng mơ hình “Ứng dụng xử lý ảnh để  phân loại sản phẩm 
theo hình dạng, điều khiển và giám sát trên WinCC”.
Chương 5: Chương trình điều khiển và giám sát hệ thống.

ĐÁNH GIÁ KẾT QUẢ THỰC HIỆN CỦA ĐỀ TÀI
HƯỚNG PHÁT TRIỂN ĐỀ TÀI


Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC

TỔNG QUAN VỀ HỆ THỐNG PHÂN LOẠI SẢN PHẨM THEO HÌNH 
DẠNG

a.

Tổng quan về hệ thống
Ngày nay, nước ta đang thực chính sách “Cơng nghiệp hố – hiện đại hố đất nước”. 
Nền Cơng nghiệp đang hướng tới Cơng nghiệp 4.0, là sự  kết hợp các cơng nghệ  lại với  
nhau, làm mờ  ranh giới giữa vật lý, kỹ  thuật số  và sinh học. Với sự  phát triển của cơng  
nghệ  kỹ  thuật, các bộ  điều khiển đang có ứng dụng rộng rãi trong các lĩnh vực khoa học 
kỹ thuật và đời sống xã hội, đặc biệt là trong tự  động hố và điều khiển. Từ  đó  mà việc 
đưa tự động hóa vào sản xuất như diễn ra một điều tất yếu. 
Việc tạo ra các sản phẩm tự  động hố khơng những trong cơng nghiệp mà ngay cả 
trong đời sống con người ngày càng được phổ biến.  Phân loại sản phẩm là một bài tốn đã 
và đang được ứng dụng rất nhiều trong thực tế hiện  nay.  Cơng việc này địi hỏi sự  tập 
trung  cao  và  có  tính  lặp  lại,  nên  các  cơng  nhân  khó  đảm  bảo  được  sự  chính  xác trong 
cơng việc. Chưa kể  đến có những phân loại dựa trên các chi tiết kĩ thuật rất nhỏ mà mắt 
thường khó có thể nhận ra. Điều đó sẽ ảnh hưởng trực  tiếp tới chất lượng sản phẩm và 
uy tín của nhà sản xuất. Vì vậy, hệ  thống tự  động nhận dạng và phân loại sản phẩm ra 
đời là một sự phát triển tất yếu nhằm đáp ứng nhu cầu cấp bách  này.
b.
Ngun lý hoạt động của hệ thống
Đề  tài “Ứng dụng xử lý  ảnh để  phân loại sản phẩm theo hình dạng, điều khiển và  
giám sát qua WinCC” là mơ hình phân loại sản phẩm theo hình dạng (hình trịn, hình vng, 

hình tam giác và hình chữ nhật). Dựa trên ngơn ngữ Python với thư viện chính là OpenCV  
và được thực hiện trên Kit Raspberry Pi 4B và PLC S7 ­ 1200. Tại đây sử  dụng các đặc 
điểm riêng biệt của từng hình dạng để đi nhận dạng rồi sau đó phân loại từng sản phẩm.  
Hệ thống gồm camera, Raspberry, PLC. Camera sẽ chụp  ảnh sản phẩm cần phân loại rồi 
sau đó gửi đến Rasppberry để xử lí, sau khi xử lí được ảnh thì Rasppberry sẽ gửi đến PLC  
để  điều khiển và phân loại sản phẩm. Kết quả  thực hiện của đề  tài là nhận dạng được 
những sản phẩm có hình dạng (hình trịn, hình vng, hình tam giác và hình chữ nhật) cùng  
với việc đếm được sản phẩm theo hình dạng của từng sản phẩm, hiển thị trên màn hình.
c.

Các cơng nghệ sử dụng trong hệ thống
 Phương pháp xử lý ảnh dùng phần mềm Matlab
Matlab là ngơn ngữ lập trình bậc cao dùng cho kỹ thuật. Đồng thời nó là mơi trường  
tương tác có thể  thực hiện nhiều nhiệm vụ, phát triển giải thiết, phân tích dữ  liệu, tính  
tốn các phép tính số  học và hình  ảnh hố số  liệu. So với các ngơn ngữ  lập trình truyền 
thống như  C, C++ hay Fortran thì Matlab có nhiều  ưu điểm hơn do được tích hợp các hỗ 
trợ rất mạnh.
­ Ưu điểm : Phần mềm dễ sử dụng
­ Nhược điểm : 
+ Độ chính xác khơng cao
+ Việc truyền thơng, giao tiếp với các phần mềm rất khó
 Phương pháp xử lý ảnh dùng phần mềm Labview

14


Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC

Labview là một phần mềm lập trình mơ phỏng robot được sáng chế ra với mục đích  
hỗ trợ người dùng tạo ra các thiết bị ảo dựa trên nhu cầu cá nhân.

­ Ưu điểm : 
+ Phần mềm dễ sử dụng nên được nhiều người sử dụng
+ Khả  năng phát hiện hình dạng của chương trình LabView là cực kì nhanh  
chóng. Có thể  sử  dụng các chứng năng mở  rộng có sẵn trong Labview đê  
tăng khả năng phân biệt nhiều sản phẩm 
+ Kết quả xử lý ảnh với tỷ lệ sai lệch nhỏ và có độ chính xác cao
­ Nhược điểm : Khó khăn về  kết hợp giữa phần mềm Labview với các phần mềm 
khác
Trên đây là 2 phương pháp được sử  dụng rất nhiều hiện nay. Tuy nhiên, trong một 
hệ thống địi hỏi độ chính xác cao, việc giao tiếp và truyền thống với các thiết bị khác phải 
đảm bảo tính  ổn định và nhanh chóng. Trong các nhà máy, xí nghiệp hiện nay thì việc sử 
dụng phương pháp xử lý ảnh thơng qua Raspberry kết hợp với PLC đang dần thay thế các 
phương pháp khác. Do vậy, trong đề tài này sử dụng các cơng nghệ như sau: 
­ Sử dụng Kit Raspberry Pi 4B thơng qua thư viện OpenCV để xử lý ảnh
­ Sử dụng PLC S7 – 1200 để phân loại sản phẩm
­ Sử dụng WinCC để giám sát q trình hoạt động và hiện thị số lượng lên màn 
hình
d.
Phương pháp phân loại sản phẩm theo hình dạng
Với đề tài “Ứng dụng xử lý ảnh để  phân loại sản phẩm theo hình dạng, điều khiển 
và giám sát qua WinCC”. Ở phần này sẽ đi tìm hiểu chi tiết phương pháp nhận dạng của 
từng sản phẩm và phân loại sản phẩm theo từng hình dạng đã được nhận dạng.
d.i.

Các hình dạng cơ bản của sản phẩm
Trong cuộc sống hiện nay, nhu cầu về  kiểu dáng sản phẩm ngày càng được chứ 
trọng, để  đáp  ứng nhu cầu thiết yếu đó nên trên thị  trường ra nhiều sản phẩm có hình  
dạng và kiểu dáng đa dạng.  Ở  đề  tài này, để  gần với thực tế, nhóm chọn sản phẩm có 
hình dạng phổ biến. Chủ  yếu là các hình dạng  ở ngồi cuộc sống (hình trịn, hình vng, 
hình tam giác và hình chữ nhật). 

Đặc điểm cơ bản của sản phẩm có hình dạng phổ biến:

Đặc điểm nhận dạng hình chữ nhật: Có 4 đỉnh, 4 cạnh, 4 góc vng, 2 cạnh đối 
diện đều bằng nhau khác với so với hình vng là 2 cạnh kề khơng bằng nhau,…
Đặc điểm nhận dạng hình vng : Có 4 đỉnh, 4 cạnh, 4 góc vng, 2 cạnh đối 
diện đều bằng nhau, 2 cạnh kề bằng nhau,…
Đặc điểm nhận dạng hình trịn: Một hình trịn là một vùng trên mặt phẳng nằm 
"bên trong" đường trịn. Bán kính tính từ tâm đến đường trịn. Đặc điểm nhận dạng: Bán 
kính đều bằng nhau,…
Đặc điểm nhận dạng hình tam giác: có 3 đỉnh và 3 cạnh là hình tam giác,…
d.ii.
Phương pháp nhận dạng hình dạng
Phương pháp nhận dạng hình  ảnh là giai đoạn quan trọng của hệ  thống xử lý  ảnh. 
Nhận dạng là q trình phân loại các đối tượng được biểu diễn theo một mơ hình nào đó. 
Ảnh được chụp sẽ được phân tích thành các đặc trưng riêng biệt, với những đặc trưng đó 
ta đem đi nhận dạng.

15


Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC

Như đã đề cập ở trên thì các hình dạng của sản phẩm sẽ có các đặc điểm riêng biệt.  
Tuy nhiên, thì vẫn có một số  đặc điểm giống nhau, đặc điểm khác nhau, cùng với đó có  
thêm một số đặc điểm bị dư thừa trong việc so sánh với các sản phẩm khác. Chính vì vậy,  
ở   đề tài này, ta cần chọn lọc ra từng đặc điểm riêng biệt của từng hình mà các hình khác 
khơng có và loại bỏ  các đặc điểm khơng cần thiết. Như  vậy, để  nhận dạng được hình  
dạng của sản phẩm cần xác định các đặc điểm đặc trưng riêng biệt của từng hình dạng. 
Ở  đây chỉ có 4 hình dạng sản phẩm (hình chữ nhật, hình vng, hình trịn, hình tam giác)  
cần phân loại, chính vì vậy sẽ có một số đặc điểm hình dạng khơng cần xét tới.

Sản phẩm hình chữ nhật
Hình chữ nhật là hình có 4 đỉnh, 4 cạnh, 4 góc vng, 2 cạnh đối diện bằng nhau,... 
Từ đặc điểm đó ta đi so sánh với 3 hình cịn lại và phân tích thấy: Đặc điểm thứ nhất có 4 
đỉnh, nhưng sản phẩm hình vng cũng có 4 đỉnh. Vì vậy ta có đặc điểm thứ hai để so sánh 
sự khác biệt với hình vng, đó là 2 cạnh kề khơng bằng nhau với hình chữ nhật, với hình  
vng thì chúng bằng nhau. Như vậy, đặc điểm nhận dạng sản phẩm hình chữ  nhật, gồm 
4 đỉnh và 2 cạnh kề khơng bằng nhau.

Hình 1. : Đặc điểm hình chữ nhật
Sản phẩm hình vng
Đặc điểm nhận dạng: Có 4 đỉnh, 4 cạnh, 4 góc vng, 2 cạnh đối diện đều bằng  
nhau, 2 cạnh kề bằng nhau,… Từ đặc điểm đó ta đi so sánh với 3 hình cịn lại và phân tích  
thấy: Đặc điểm thứ nhất có 4 đỉnh, nhưng sản phẩm hình chữ nhật cũng có 4 đỉnh như đã 
đề  cập  ở  trên. Chính vì vậy ta có đặc điểm thứ  hai để  so sánh sự  khác biệt với hình chữ 
nhật, đó là 2 cạnh bằng nhau. Như vậy, đặc điểm nhận dạng sản phẩm hình vng, gồm 4 
đỉnh và 2 cạnh kề bằng nhau.

16


Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC

Hình 1. : Đặc điểm hình vng
Sản phẩm hình trịn
Đặc điểm nhận dạng: Bán kính đều bằng nhau,… Từ đặc điểm đó ta đi so sánh với 3 
hình cịn lại và phân tích thấy: bán kính tính từ tâm đến đường trịn bên ngồi tất cả chúng  
đều bằn nhau chính vì vậy đó là đặc điểm riêng biệt của hình trịn.

Hình 1. : Đặc điểm hình trịn
Sản phẩm hình tam giác

Đặc điểm nhận dạng: có 3 đỉnh và 3 cạnh là hình tam giác,… Từ  đặc điểm đó ta đi 
so sánh với 3 hình cịn lại và phân tích thấy: Chỉ có hình tam giác có 3 đỉnh, và đó chính là  
đặc điểm đặc trưng riêng biệt của tam giác.

Hình 1. : Đặc điểm hình tam giác

17


Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC

Bảng 1.  Đặc điểm hình dạng sản phẩm
Đặc điểm

Hình vng

Hình chữ nhật

Hình trịn

Hình tam giác

đỉnh

4 đỉnh

4 đỉnh

khơng


3 đỉnh

2 cạnh kề bằng

2 cạnh kề khơng

nhau

bằng nhau

khơng

3 cạnh

khơng

Khơng

bằng nhau

khơng

cạnh
bán kính

Như vậy ta có thể thấy, ta chỉ cần tìm ba đặc điểm chính: Đỉnh, cạnh và bán kính. 
Trong đó đỉnh liên quan đến hình tam giác, hình chữ  nhật và hình vng. Cạnh chỉ  có hai 
hình là hình vng và hình chữ nhật. Bán kính chỉ liên quan tới hình trịn.
d.iii.


Phương pháp tìm đặc điểm hình dạng để phân loại sản phẩm
Để  phân loại sản phẩm ta cần có đặc điểm của hình dạng, từ  đó ta đi so sánh để 
phân loại sản phẩm theo hình dạng.
Đỉnh của hình dạng
Đầu tiên ta tìm số đỉnh của các hình. Có 3 hình dạng có đặc điểm liên quan tới đỉnh là  
hình chữ nhật, hình vng và hình tam giác. Đặc điểm gồm:
Có 4 đỉnh là hình vng và hình trịn
Có 3 đỉnh là hình tam giác
Cạnh của hình dạng
Vấn đề về cạnh chỉ có 2 hình là liên quan tới chúng là: hình chữ nhật và hình vng.  
Đặc điểm gồm:
Hai cạnh kề bằng nhau là hình vng
Hai cạnh kề khơng bằng nhau là hình chữ nhật
Bán kính của hình dạng
Bán kính là độ dài tính từ tâm tới điểm ngồi đường trịn, ở đây thì liên quan có duy  
nhất một hình là hình trịn.
Có đặc điểm: bán kính bằng nhau.
Phương pháp tìm đỉnh

Hình 1. : Đỉnh của hình
Sử dụng thuật tốn Ramer­Douglas­Peucker để tìm đường bao xấp xỉ, từ  đường bao 
ta suy ra được đỉnh.

18


Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC

Hình 1. : Đoạn Ramer – Douglas – Peucker 
Ý tưởng cơ  bản của thuật tốn Ramer­Douglas­Peucker là xét xem khoảng cách lớn 

nhất từ  đường cong tới đoạn thẳng nối hai điểm đầu và điểm cuối đường cong, có lớn 
hơn ngưỡng θ khơng. Đầu tiên ta có điểm đầu và điểm cuối (tạm gọi là A, E) của sẽ được  
giữ lại, sau đó tìm điểm có khoảng cách lớn nhất đến đường thẳng AB (tạm gọi là điểm  C 
và độ dài tạm gọi là h). Nếu khoảng h < θ thì điểm C sẽ bị loại bỏ, ngược lại nếu h ≥ θ thì 
điểm C sẽ được giữ lại và sẽ được chia thành 2 đoạn thẳng là AC và CB. Với từng đoạn  
AC và CB, thuật tốn sẽ được lặp lại tương tự như với AB ban đầu.
Ở  đây hình dạng sản phẩm là đa giác tức là đường viền couar nó chính là đường  
khép kín từ đó có thể thấy điểm đầu và điểm cuối trùng nhau.

Hình 1. : Đường xấp xỉ
Giả xử điểm đầu và điểm cuối là A, tiếp tục so sánh đoạn AC với θ nếu > θ thì C là 
đỉnh ngược lại thì khơng phải. Tương tự ta sử dụng thuật tốn đó để tìm ra đỉnh B và đỉnh  
D.
Phương pháp tìm độ dài cạnh

Hình 1. : Độ dài cạnh
Giả  sử ta có tọa độ  của 2 đỉnh tìm được ở  bước tìm đỉnh là A() và B(), ta tìm cạnh  
với cơng thức:

19


Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC

Với AB là độ dài cạnh. Tương tự cho các cạnh cịn lại
Phương pháp tìm tâm và bán kính
Bán kính là khoảnh cách từ tâm tới các điểm trên đường trịn.

Hình 1. : Bán kính bằng nhau
Tìm tâm O theo phương pháp tìm tâm đường trịn ngoại tiếp tam giác, đường trịn đi 

qua 3 đỉnh của tam giác ABC được gọi là đường trịn ngoại tiếp tam giác ABC khi đó tam 
giác ABC nội tiếp đường trịn tâm O. Tâm đường trịn ngoại tiếp tam giác là giao điểm của  
3 đường trung trực, tam giác ở đây ta chọn bất kì 3 điểm trên dườn trịn giả sử chọn 3 đỉnh 
A(), B(), C(). Gọi tâm O(x,y), tìm tâm theo cơng thức sau:

Với AO, BO, CO chính là bán kính đường trịn, từ đó ta có:
  tâm O(x,y)
Phương án thiết kế
u cầu thiết kế
Với mục tiêu là mơ hình phục vụ cho đồ án tốt nghiệp nên khơng thể đáp ứng được 
đầy đủ  các u cầu trong thực tế cũng như  các điều kiện phân loại phức tạp. Tuy nhiên,  
mơ hình thiết kế phải đảm bảo một số u cầu kỹ thuật chung như sau:
­ Mơ hình cơ bản phải phù hợp với ngun lý phân loại trong thực tế;
­ Lắp ráp, đấu nối và vận hành điều khiển dễ dàng;
­ Sử dụng các vật tư, thiết bị, linh kiện thơng dụng để dễ dàng thay thế sữa chữa;
­ Đảm bảo tính thẩm mỹ và gọn gàng. Các cơ cấu truyền động, kết nối phải đảm bảo  
cứng vững và tuổi thọ cao
e.ii.
Lựa chọn phương án thiết kế
Với những u cầu kỹ  thuật đã phân tích  ở  trên, kết hợp với một số  tài liệu tham 
khảo, nhóm quyết định sẽ sử dụng cơng nghệ phân loại sản phẩm bằng phương pháp xử 
lý ảnh thơng qua Raspberry kết hợp với PLC S7 – 1200 cho đề tài “Ứng dụng xử lý ảnh để 
phân loại sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC”.
Nhóm chọn phương án thiết kế  này vì nó dễ  lắp đặt và thi cơng mơ hình   chi phí 
khơng cao, cịn những phương án thiết kế  khác thì chi phí lắp đặt cao, nhiều thiết bị  vật 
liệu khó tìm kiếm.
Mơ hình của nhóm mơ phỏng lại một hệ thống như trong thực tế. 
Phương án thiết kế mơ hình gồm các phần chính như sau:
e.
e.i.


20


Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC

 Phần cơ khí:
Sử dụng băng tải để vận chuyển sản phẩm
Kích thước ước tính của mơ hình : D/R/C: 120/60/40 cm
Sử dụng xilanh để đẩy sản phẩm vào ơ chứa
Sử dụng cảm biến để đếm sản phẩm
 Phần điện:
Sử dụng nguồn điện 220, nguồn tổ ong 24V
Sử dụng Raspberry để xử lý ảnh thơng qua thư viện OpenCV
Sử dụng PLC S7 1200 CPU 1214C DC/DC/DC để lập trình điều khiển q trình hoạt  
động của mơ hình
Mơ hình ở đề tài được hướng thiết kế theo mơ hình phân loại sản phẩm thực tế với  
các chức năng được mơ phỏng tương tự gồm có:
­
Bảng điều khiển trên tủ điện 
Nút nhấn Start
Nút nhấn Stop
Nút nhấn E – Stop
4 nút điều khiển bằng tay ( Băng tải, Xilanh 1, Xilanh 2, Xilanh 3)

GIỚI THIỆU VỀ RASPPBERRY VÀ NGƠN NGỮ LẬP TRÌNH 
PYTHON

21



Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC

f.

Tổng quan về Raspberry
Raspberry Pi là cái máy tính giá 35USD kích cỡ như iPhone và chạy HĐH Linux. Với  
mục tiêu chính của chương trình là giảng dạy máy tính cho trẻ  em. Được phát triển bởi 
Raspberry Pi Foundation – là tổ  chức phi lợi nhuận với tiêu chí xây dựng hệ  thống mà  
nhiều người có thể sử dụng được trong những cơng việc tùy biến khác nhau.
Nhiệm vụ ban đầu của dự án Raspberry Pi là tạo ra máy tính rẻ tiền có khả năng lập  
trình cho những sinh viên , nhưng Pi đã được sự  quan tầm từ nhiều đối tượng khác nhau.  
Đặc tính của Raspberry Pi xây dựng xoay quanh bộ xử lí SoC Broadcom BCM2835 ( là chip 
xử  lí mobile mạnh mẽ  có kích thước nhỏ  hay được dùng trong điện thoại di động ) bao 
gồm CPU , GPU , bộ xử lí âm thanh /video , và các tính năng khác … tất cả được tích hợp  
bên trong chip có điện năng thấp này .
Raspberry Pi khơng thay thế  hồn tồn hệ  thống để  bàn hoặc máy xách tay . Bạn  
khơng thể chạy Windows trên đó vì BCM2835 dựa trên cấu trúc ARM nên khơng hỗ trợ mã  
x86/x64 , nhưng vẫn có thể  chạy bằng Linux với các tiện ích như  lướt web , mơi trường  
Desktop và các nhiệm vụ khác . Tuy nhiên Raspberry Pi là một thiết bị đa năng đáng ngạc  
nhiên với nhiều phần cứng có giá thành rẻ  nhưng rất hồn hảo cho những hệ thống điện  
tử , những dự án DIY , thiết lập hệ thống tính tốn rẻ tiền cho những bài học trải nghiệm  
lập trình …
Model B bao gồm những phần cứng và những cổng giao diện:
­ SoC 700MHz với 512MB RAM.
­ 1 cổng HDMI cho đầu ra âm thanh / video số.
­ 1 cổng video RCA cho đầu ra video Analog.
­ Jack Headphone Stereo 3.5mm cho đầu ra âm thanh Analog.
­ 2 cổng USB.
­ 1 đầu đọc thẻ nhớ SD để tải hệ điều hành.

­ 1 cổng Ethernet LAN.
­ 1 giao diện GPIO (General Purpose Input/Output) .
Về  cơ  bản Raspberry Pi có khá nhiều OS linux chạy được nhưng vẫn có sự  thiếu 
vắng của Ubuntu (do CPU ARMv6).
Điểm danh một số Distributions Linux (nhúng) chạy trên Raspberry Pi như Raspbian,  
Pidora, openSUSE, OpenWRT, OpenELEC,….

Hình 2. : Raspberry Pi

22


Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC

g.
g.i.

Giới thiệu ngơn ngữ lập trình Python
Giới thiệu ngơn ngữ Python
Python là một ngơn ngữ  lập trình được sử  dụng phổ  biến ngày nay từ  trong mơi 
trường học đường cho tới các dự án lớn. Ngơn ngữ phát triển nhiều loại  ứng dụng,  phần 
mềm khác nhau như  các chương trình chạy trên desktop, server, lập trình các  ứng dụng  
web... Ngồi ra Python cũng là ngơn ngữ   ưa thích trong xây dựng các chương trình trí tuệ 
nhân tạo trong đó bao gồm machine learning. Ban đầu, Python được phát triển để chạy trên 
nền Unix, nhưng sau này, nó đã chạy trên mọi hệ  điều hành từ  MS­DOS đến Mac OS,  
OS/2, Windows, Linux và các hệ điều hành khác thuộc họ Unix.
Python do Guido van Rossum tạo ra năm 1990. Python được phát triển trong một dự 
án mã mở, do tổ chức phi lợi nhuận Python Software Foundation quản lý. Mặc dù sự phát 
triển của Python có sự đóng góp của rất nhiều cá nhân, nhưng Guido van Rossum hiện nay 
vẫn là tác giả chủ yếu của Python. Ơng giữ vai trị chủ chốt trong việc quyết định hướng  

phát triển của Python.
g.ii.
Đặc điểm nổi bật của Python
Python là ngơn ngữ có hình thức đơn giản, cú pháp ngắn gọn, sử dụng một số lượng  
ít các từ khố, do đó Python là một ngơn ngữ dễ học đối với người mới bắt đầu tìm hiểu. 
Python là ngơn ngữ có mã lệnh (source code hay đơn giản là code) khơng mấy phức tạp. 
Cả  trường hợp bạn chưa biết gì về  Python bạn cũng có thể  suy đốn được ý nghĩa của  
từng dịng lệnh trong source code.
Python có nhiều  ứng dụng trên nhiều nền tảng, chương trình phần mềm viết bằng 
ngơn ngữ Python có thể được chạy trên nhiều nền tảng hệ điều hành khác nhau bao gồm 
Windows, Mac OSX và Linux.
h.
Giới thiệu thư viện OpenCV
h.i.
Giới thiệu OpenCV
OpenCV là tên viết tắt của open source computer vision library – có thể được hiểu là 
một thư  viện nguồn mở  cho máy tính. Cụ  thể  hơn OpenCV là kho lưu trữ  các mã nguồn 
mở được dùng để xử lý hình ảnh, phát triển các ứng dụng đồ họa trong thời gian thực.
OpenCV cho phép cải thiện tốc độ  của CPU khi thực hiện các hoạt động real time.  
Nó cịn cung cấp một số lượng lớn các mã xử  lý phục vụ  cho quy trình của thị  giác máy  
tính hay các learning machine khác.
Thư  viện OpenCV được phát hành với giấy phép BDS. Do đó các dịch vụ  nó cung 
cấp là hồn tồn miễn phí và được hạn chế tối đa các rào cản thơng thường. Cụ thể, bạn 
được phép sử  dụng phần mềm này cho cả  hoạt động thương mại lẫn phi thương mại.  
OpenCV sở hữu giao diện thiên thiện với mọi loại ngơn ngữ lập trình, ví dụ  như  C++, C,  
Python hay Java… Ngồi ra, nó cũng dễ dàng tương thích với các hệ điều hành khác nhau,  
bao gồm từ Windows, Linux, Mac OS, iOS cho đến cả Android.
Kể  từ  lần đầu xuất hiện từ  năm 1999, giờ  đây OpenCV đã sở  hữu đội ngũ người  
dùng hùng hậu, con số ước tính có thể lên tới 47.000 người. Tất cả là nhờ những ưu điểm  
vượt trội của OpenCV.

Thư viện Ooencv được ứng dụng vào rất nhiều trường hợp khác nhau. Như các phần 
mềm định vị, bản đồ nói chung,  nhà cung cấp dữ liệu hình ảnh cho các app về Map, khởi  
tạo ra những hình ảnh 3 chiều phức tạp, tất cả những  ứng dụng cơng nghệ  như  robot, xe  
tự lái, bảng cảm ứng thơng minh… 
Thư  viện sử  dụng nhiều ngơn ngữ  lập trình phổ  biến như: ngơn ngữ  lập trình C+
+/C# ngơn ngữ lập trình Java và Python.
Và  ở  đây, ta sử  dụng ngơn ngữ  lập trình Python cho đề  tài. Với  phần mềm khơng 
q phức tạp mà thiên hướng gọn nhẹ  thì ngơn ngữ  Python sẽ  là sự  lựa chọn chính xác 

23


Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC

nhất. Nhờ các câu lệnh ngắn gọn cùng thuộc tính đơn giản, Python giúp cho q trình phát  
triển phần mềm OpenCV diễn ra dễ dàng hơn. Sử dụng ngơn ngữ Python sẽ là biện pháp  
tốt nhất cho những người khơng mạnh mảng lập trình. Điểm trừ  của Python là vì có cấu 
tạo q đơn giản nên một số tính năng cần sự phức tạp sẽ bị hạn chế.
h.ii.
Đặc điểm OpenCV
OpenCV Là một thư viện mở nên sử dụng các thuật tốn một cách miễn phí, cùng 
với việc chúng ta cũng có thể đóng góp thêm các thuật tốn giúp Thư viện thêm ngày càng  
phát triển.
Các tính năng của thư viện OpenCV:
­ Đối với hình ảnh, chúng ta có thể đọc và lưu hay ghi chúng.
­ Về Video cũng tương tự như hình ảnh cũng có đọc và ghi.
­ Xử lý hình ảnh có thể lọc nhiễu cho ảnh, hay chuyển đổi ảnh.
­ Thực hiện nhận dạng đặc điểm của hình dạng trong ảnh.
­ Phát hiện các đối tượng xác định được xác định trước như khn mặt, mắt, xe trong  
video hoặc hình ảnh.

­ Phân tích video,...  ước lượng chuyển động của nó, trừ  nền ra và theo dõi các đối 
tượng trong video.
i.
Tổng quan về xử lý ảnh
i.i.
Giới thiệu xử lí ảnh
Xử  lý  ảnh khơng cịn là đề  tài q mới, nó được áp dụng từ  trong các hoạt động 
thường ngày cho đến việc nâng cao sản xuất. Nó khơng những giúp ích cho cá nhân hay gia 
đình, mà cịn ứng dụng cả trong Chính trị, Y tế, Giáo dục,… Xử lý tín hiệu là một mơn  học 
trong kỹ thuật điện tử, viễn thơng và trong tốn học. Liên quan đến nghiên cứu và xử lý tín 
hiệu kỹ  thuật số và analog, giải quyết các vấn đề  về  lưu trữ, các thành phần bộ  lọc, các  
hoạt động khác trên tín hiệu. Các tín hiệu này bao gồm truyền dẫn tín hiệu, âm thanh hoặc  
giọng nói, hình ảnh, và các tín hiệu khác,…
Trong số các phương pháp xử lý tín hiệu kể trên, lĩnh vực giải quyết với các loại tín 
hiệu mà đầu vào là một hình ảnh và đầu ra cũng là một hình ảnh, sản phẩm đầu ra được  
thực hiện trong một q trình xử lý, đó chính là q trình xử lý  ảnh. Nó có thể được chia 
thành xử lý hình ảnh tương tự và xử lý hình ảnh kỹ thuật số. Để có 1 bức ảnh số ta có qúa 
trình thực hiện như sau: Chụp  ảnh từ một máy ảnh là một q trình vật lý. Ánh sáng mặt 
trời sử  dụng như  một nguồn năng lượng. Một dãy cảm biến được sử  dụng cho việc thu  
lại của hình ảnh. Vì vậy, khi ánh sáng mặt trời rơi trên người đối tượng, sau đó số  lượng 
ánh sáng phản xạ của đối tượng được cảm nhận từ các cảm biến, và một tín hiệu điện áp  
liên tục được tạo ra bởi số lượng dữ liệu cảm biến đó. Để  tạo ra một hình ảnh  kỹ  thuật 
số, chúng ta cần phải chuyển đổi dữ liệu này thành một dạng kỹ  thuật số. Điều này liên 
quan đến việc lấy mẫu và lượng tử hóa. Kết quả của việc lấy mẫu và lượng tử  hóa sau 
một q trình xử lý là một hình ảnh kỹ thuật số.
i.ii.

Những vấn đề trong xử lý ảnh
Có những vấn đề cơ bản như sau :
Điểm ảnh 

Là đơn vị cơ bản nhất để tạo nên một bước  ảnh kỹ thuật số. Địa chỉ của điểm  ảnh 

24


Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC

được xem như  là một tọa độ  (x,y) nào đó. Một bức  ảnh kỹ  thuật số, có thể  được tạo ra 
bằng cách chụp hoặc bằng một phương pháp đồ họa nào khác, được tạo nên từ hàng ngàn 
hoặc hàng triệu pixel riêng lẻ. Bức  ảnh càng chứa nhiều pixel thì càng chi tiết. Một triệu 
pixel thì tương đương với 1 megapixel.
Biến đổi ảnh
Nói một cách đơn giản thì biến đổi  ảnh thành dạng  ảnh khác:  ảnh màu sang  ảnh  
xám, ảnh xám sang nhị phân, RGB ­> HSV,…
Lọc màu ảnh
Có 2 cách để lọc màu ảnh theo dãy màu HSV và dãy màu BGR.
­
Dãy màu HSV :
Thơng thường ảnh được biểu diễn trong khơng gian màu BGR, nhưng  khơng  gian màu 
HSV lại dễ dàng xử  lý hơn.  Dãy  màu  của kênh  Hue  là “bảy  sắc cầu  vồng”  từ  đỏ  đến 
tím rồi lại về đỏ, nên có thể  xác định được ngay nó  là màu  gì. Do  đó trong hầu  hết bài 
tốn đều phải tiến hành chuyển ảnh  ban  đầu sang khơng  gian màu  HSV  trước khi xử  lý 
những bước tiếp theo.

Hình 2. : Dãy màu HSV
­
Dãy màu RGB :
RGB là khơng gian màu phổ  biến dùng trong máy tính, máy ảnh, điện thoại và nhiều 
thiết bị kĩ thuật số  khác nhau. Khơng gian màu này  khá  gần  với  cách mắt  người tổng hợp 
màu sắc. Ngun lý cơ  bản là sử  dụng 3 màu sắc cơ  bản R (red ­ đỏ), G (green ­ xanh lục) 

và B (blue ­ xanh lam) để biểu diễn tất cả các màu sắc.
Thơng thường, trong mơ hình 24 bit mỗi kênh  màu  sẽ  sử  dụng  8bit để  biểu  diễn, 
tức là giá trị  R, G, B nằm trong khoảng 0 ­ 255.  Bộ   3 số  này   biểu diễn cho từng điểm 
ảnh, mỗi số  biểu diễn cho cường độ  của một màu. Với mơ hình màu  24bit thì số  màu  tối 
đa có thể tạo ra là 255 x 255 x 255 = 16581375  màu.
Bên cạnh hệ  màu RGB thì ta sẽ  nghe đến RGBA, thực ra đây là một hệ  màu  được 
lấy căn bản từ  hệ  màu RGB tuy nhiên có thêm một kênh alpha (α). Kênh α được sử  dụng 
như là kênh mờ, nếu một pixel có giá trị 0% trong kênh α của nó thì nó hồn tồn trong suốt, 
trong khi giá trị  100%  sẽ  khiến cho điểm  đó  bị  mờ  đục. Điều này   được ứng   dung  rất 
nhiều trong việc ghép các ảnh lại và mang một độ chân thực nhất định.

25


×