1. Trang chủ
  2. » Luận Văn - Báo Cáo

bài tập lớn xây dựng chương trình giao tiếp với hệ cơ điện tử ứng dụng xử lý ảnh thiết kế hệ thống điều khiển cho hệ thống phân loại sản phẩm ứng dụng xử lý ảnh

15 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 15
Dung lượng 2,79 MB

Nội dung

Hệ thống phân loại sản phẩm nhằm chia sản phẩm ra các nhóm cócùng thuộc tính với nhau để thực hiện đóng gói hay loại bỏ sản phẩm hỏng.. Do đó dựa trên nền tảng kiến thức đã học, vốn hiểu

Trang 1

ĐẠI HỌC BÁCH KHOA HÀ NỘI

TRƯỜNG CƠ KHÍ

BÀI TẬP LỚN Xây dựng chương trình giao tiếp với hệ cơ

điện tử ứng dụng xử lý ảnh

Đề tài: Thiết kế hệ thống điều khiển cho hệ thống phân

loại sản phẩm ứng dụng xử lý ảnh

Giảng viên hướng dẫn: TS Nguyễn Thành Hùng

Nguyễn Hải Anh

MSSV: 20184413 MSSV: 20184342

HÀ NỘI, 1/2022

Trang 2

Đánh giá của giảng viên hướng dẫn

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Kết quả đánh giá Hà Nội, ngày tháng năm 2022

Giảng viên hướng dẫn

Phạm Ngọc Dương

Nguyễn Hải Anh

Trang 3

MỤC LỤC

CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI 1

1.1 Giới thiệu chung 1

1.2 Nguyên lý hoạt động của hệ thống 1

1.3 Các thành phần cơ bản của hệ thống 1

1.3.1 Phần cứng 1

1.3.2 Phầm mềm 4

CHƯƠNG 2 THIẾT KẾ PHẦN MỀM ĐIỀU KHIỂN 7

2.1 Thuật toán xử lý ảnh 7

2.2 Phương thức giao tiếp và thuật toán điều khiển 7

2.2.1 Phương thức giao tiếp 7

2.2.2 Thuật toán điều khiển 8

CHƯƠNG 3 MÔ HÌNH THỰC NGHIỆM VÀ PHÂN TÍCH 9

3.1 Mô hình thực nghiệm 9

3.2 Kết quả thực nghiệm 9

3.3 Thảo luận kết quả thực nghiệm 9

CHƯƠNG 4 KẾT LUẬN 10

4.1 Kết luận 10

4.2 Hướng phát triển của đề tài trong tương lai 10

TÀI LIỆU THAM KHẢO 11

PHỤ LỤC 12

Trang 4

CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI

1.1 Giới thiệu chung

- Ngày nay, xã hội ngày càng phát triển Công nghiệp hóa, hiện đại hóa ngày càng được nâng cao để phát triển đất nước và cải thiện cuộc sống của người dân

Vì vậy việc ứng dụng khoa học kỹ thuật ngày càng rộng rãi, phổ biến và mang lại hiệu quả cao trong hầu hết các lĩnh vực kinh tế, kỹ thuật cũng như trong đời sống

xã hội

- Trong đó có một khâu quan trọng ảnh hưởng đến chất lượng sản phẩm là phân loại sản phẩm Hệ thống phân loại sản phẩm nhằm chia sản phẩm ra các nhóm có cùng thuộc tính với nhau để thực hiện đóng gói hay loại bỏ sản phẩm hỏng Do

đó dựa trên nền tảng kiến thức đã học, vốn hiểu biết về điện tử và công nghệ xử

lý ảnh nhóm chúng em chọn đề tài: “Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm”

- Mục tiêu thiết kế là mô hình phân loại sản phẩm theo màu sắc (đỏ, xanh, vàng) 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 Arduino Uno Ở đây sử dụng các đặc điểm riêng biệt của từng màu sắc để đi nhận dạng và sau đó phân loại từng sản phẩm Kết quả thực hiện của đề tài đã nhận dạng được những sản phẩm có màu sắc (đỏ, xanh, vàng)

1.2 Nguyên lý hoạt động của hệ thống

Đầu tiên camera sẽ thu nhận hình ảnh chụp sản phẩm, sau đó đưa đến phần mềm xử lý ảnh để xử lý, ở đây sản phẩm sẽ được phân loại theo màu sắc, khi có tín hiệu nhận biết được sản phẩm ta tiếp tục gửi tín hiệu đến cho vi điều kiển( ở đây là arduino), vi điều khiển sẽ nhận tín hiệu và điều khiển các cơ cấu chấp hành

1.3 Các thành phần cơ bản của hệ thống

1.3.1 Phần cứng

+) Kit Arduino uno R3

Một board mạch chủ chính dùng để truyền và nhận dữ liệu từ người sử dụng đến các thiết bị điện tử khác

Trang 5

Các thông số cơ bản:

Vi điều khiển ATmega328 họ 8bit

Điện áp hoạt động 5V DC (chỉ được cấp qua cổng USB) Tần số hoạt động 16 MHz

Dòng tiêu thụ khoảng 30mA

Điện áp vào khuyên dùng 7-12V DC

Điện áp vào giới hạn 6-20V DC

Số chân Digital I/O 14 (6 chân hardware PWM)

Số chân Analog 6 (độ phân giải 10bit)

Dòng tối đa trên mỗi chân I/O 30 mA

Dòng ra tối đa (5V) 500 mA

Dòng ra tối đa (3.3V) 50 mA

Bộ nhớ flash 32 KB (ATmega328) với 0.5KB dùng bởi

bootloader

+) Động cơ Servo SG -90

2

Trang 6

- Servo là một dạng động cơ điện đặc biệt Không giống như động cơ thông thường cứ cắm điện vào là quay liên tục, servo chỉ quay khi được điều khiển (bằng xung PPM) với góc quay nằm trong khoảng bất kì từ 0 – 180 0 0

Mỗi loại servo có kích thước, khối lượng và cấu tạo khác nhau

- Động cơ servo được thiết kế hệ thống hồi tiếp vòng kín Tín hiệu ra của động cơ được nối với một mạch điều khiển Khi động cơ quay, vận tốc và

vị trí sẽ được hồi tiếp về mạch điều khiển này

Thông số kĩ thuật:

Khối lượng : 9g

Kích thước: 22.2x11.8.32 mm

Momen xoắn: 1.8kg/cm

Tốc độ hoạt động: 60 độ trong 0.1 giây

Điện áp hoạt động: 4.8V(~5V)

Nhiệt độ hoạt động: 0 ºC – 55 ºC

Kết nối dây màu đỏ với 5V, dây màu nâu với mass, dây màu cam với chân phát xung của vi điều khiển Ở chân xung cấp một xung từ 1ms-2ms theo để điều khiển góc quay theo ý muốn

+) Camera USB

- Do tình hình dịch bệnh nên phần cứng của bọn em cũng bị hạn chế, ở đây bọn

em chỉ sử dụng 1 con webcam thông thường có thể kết nối USB

Trang 7

1.3.2 Phầm mềm

+) Thư viện opencv

- OpenCV (Open Computer Vision) là một thư viện mã nguồn mở hàng đầu cho

xử lý về thị giác máy tính, machine learning, xử lý ảnh OpenCV đươc viết bằng C/C++, vì vậy có tốc độ tính toán rất nhanh, có thể sử dụng với các ứng dụng liên quan đến thời gian thực Opencv có các interface cho C/C++, Python Java vì vậy

hỗ trợ được cho Window, Linux, MacOs lẫn Android, iOS OpenCV có cộng đồng hơn 47 nghìn người dùng và số lượng download vượt quá 6 triệu lần

4

Trang 8

- Opencv có rất nhiều ứng dụng:

Hình ảnh street view

Kiểm tra và giám sát tự động

Robot và xe hơi tự lái

Phân tích hình ảnh y học

Tìm kiếm và phục hồi hình ảnh/video

Phim – cấu trúc 3D từ chuyển động

Nghệ thuật sắp đặt tương tác

- Tính năng và các module phổ biến của OpenCV:

Xử lý và hiển thị Hình ảnh/ Video/ I/O (core, imgproc, highgui)

Phát hiện các vật thể (objdetect, features2d, nonfree)

Geometry-based monocular hoặc stereo computer vision (calib3d, stitching, videostab)

Computational photography (photo, video, superres)

Machine learning & clustering (ml, flann)

CUDA acceleration (gpu)

+) Pycharm IDE

- PyCharm là môi trường phát triển tích hợp đa nền tảng (IDE) được phát triển bởi Jet Brains và được thiết kế đặc biệt cho Python PyCharm có mặt trên cả 3 nền tảng Windows, Linux và Mac OS

Trang 9

- Pycharm là một giải pháp phù hợp cho Python developers vì IDE này hỗ trợ nhiều extensions, môi trường ảo (Virtual Environment), nhiều tính năng thông minh như bộ code completion, tự động thụt lề, phát hiện văn bản trùng lặp và kiểm tra lỗi Ngoài ra còn có các tính năng tìm kiếm mã nguồn thông minh để tìm kiếm từng từ một trong nháy mắt

+) Arduino IDE

Arduino IDE là một phần mềm mã nguồn mở chủ yếu được sử dụng để viết và biên dịch mã vào module Arduino Nó có các phiên bản cho các hệ điều hành như MAC, Windows, Linux và chạy trên nền tảng Java đi kèm với các chức năng và lệnh có sẵn đóng vai trò quan trọng để gỡ lỗi, chỉnh sửa và biên dịch mã trong môi trường

Mỗi module chứa một bộ vi điều khiển trên bo mạch được lập trình và chấp nhận thông tin dưới dạng mã Mã chính, còn được gọi là sketch, được tạo trên nền tảng IDE sẽ tạo ra một file Hex, sau đó được chuyển và tải lên trong bộ điều khiển trên bo

Môi trường IDE chủ yếu chứa hai phần cơ bản: Trình chỉnh sửa và Trình biên dịch, phần đầu sử dụng để viết mã được yêu cầu và phần sau được sử dụng để biên dịch và tải mã lên module Arduino Môi trường này hỗ trợ cả ngôn ngữ C và C ++

6

Trang 10

CHƯƠNG 2 THIẾT KẾ PHẦN MỀM ĐIỀU KHIỂN

2.1 Thuật toán xử lý ảnh

- Với ảnh chụp thu thập được từ Camera sẽ cho không gian màu của ảnh là RGB, không gian màu RGB không thích hợp cho việc nhận dạng màu sắc, để phân biệt màu sắc người ta thường dùng không gian màu HSV Vì vậy ta cần chuyển đổi ảnh gốc ( ảnh có không gian màu RGB) sang ảnh có không gian màu HSV Các bước thực hiện xử lý ảnh:

+) Thuật toán nhận dạng vật thể theo màu sắc

- Trước tiên ta chuyển sang hệ màu HSV

- Tìm ngưỡng màu của vật thể muốn phân loại

- Tạo lớp mặt nạ của vật nằm trong ngưỡng màu

- Sử dụng các phép hình thái học để xử lý và lọc nhiễu ( vd như opening, erosion, )

- Sau khi đã có lớp mặt nạ đầy đủ nhất của vật, ta tiến hành thực hiện một số công việc để thuận tiện cho việc gửi tín hiệu xuống vi điều khiển, ví dụ như tìm tất cả các contours của vật có trong khung hình, tìm diện tích hoặc bán kính của đường tròn nhỏ nhất bao quanh contours để check xem đó có phải là vật thể cần phân loại không hay là một số thành phần nhiễu

2.2 Phương thức giao tiếp và thuật toán điều khiển

2.2.1 Phương thức giao tiếp

+) Chuẩn giao tiếp UART:

• Theo định nghĩa, UART là một giao thức truyền thông phần cứng sử dụng giao tiếp nối tiếp không đồng bộ với tốc độ có thể định cấu hình Không đồng bộ có nghĩa là không có tín hiệu đồng hồ để đồng

bộ hóa các bit đầu ra từ thiết bị truyền đi đến bên nhận

• Trong giao tiếp UART, hai UART giao tiếp trực tiếp với nhau UART truyền chuyển đổi dữ liệu song song từ một thiết bị điều khiển như CPU thành dạng nối tiếp, truyền nó nối tiếp đến UART nhận, sau đó chuyển đổi dữ liệu nối tiếp trở lại thành dữ liệu song song cho thiết bị nhận

• Hai đường dây mà mỗi thiết bị UART sử dụng để truyền dữ liệu đó là:

Trang 11

+ Transmitter (Tx)

+ Receiver (Rx)

2.2.2 Thuật toán điều khiển

Vi điều khiển sẽ nhận tín hiệu được gửi xuống từ phầm mềm xử lý ảnh, ứng với từng tín hiệu thì vi điều khiển sẽ điều khiển các cơ cấu chấp hành sao cho phù hợp với yêu cầu mình đặt ra

8

Trang 12

CHƯƠNG 3 MÔ HÌNH THỰC NGHIỆM VÀ PHÂN TÍCH

3.1 Mô hình thực nghiệm

Dưới đây là mô hình thực nghiệm cùng với các phần tử đã nêu ở trên và bộ khung mô hình làm bằng xốp mô phỏng cụm cấp phôi và trả phôi về nơi chứa

Trang 13

3.2 Kết quả thực nghiệm

Theo như thực nghiệm thì kết quả đạt được khá là tốt:

Hệ thống nhận dạng và phân loại được sản phẩm theo màu sắc bằng ngôn ngữ Python dựa vào thư viện OpenCV

Giao tiếp được Arduino với laptop thông qua pyserial, để điều khiển servo

Thiết kế thành công mô hình phân loại sản phẩm theo màu sắc, mặc dù còn chưa được tối ưu, và còn đơn giản chưa có nhiều tính năng

Mô hình hoạt động khá ổn định Bộ xử lý trung tâm xử lý tín hiệu khá tốt Phân loại thành công các sản phẩm đỏ, xanh, vàng, nếu không thuộc một trong các màu sắc kể trên thì được xem là sản phẩm khác, hệ thống cấp phôi cũng như hệ thống máng trượt sản phẩm hoạt động khá ổn định

3.3 Thảo luận kết quả thực nghiệm

- Sau 5 lần thực nghiệm trên mỗi sản phẩm, hệ thống phân loại sản phẩm cho thấy hoạt động tương đối ổn định với độ chính xác cao, không bị nhầm lẫn trong việc phân loại giữa các màu với nhau và phân loại rõ ràng từng sản phẩm Tuy nhiên, ở đây chỉ thực hiện 3 màu và mỗi màu 5 sản phẩm, khi thực hiện liên tục nhiều sản phẩm hơn sẽ có xuất hiện những sai sót do ảnh hưởng của nhòe ảnh, nhiễu, cường độ sáng,…và thuật toán cũng chưa được tối ưu nếu ta nhận diện nhiều màu hơn, gây nhận diện không chính xác được sản phẩm

- Do tình hình dịch bệnh phức tạp nên phần cứng còn đơn giản, thiếu sót dẫn đến cũng ảnh hưởng để hệ thống chung

10

Trang 14

CHƯƠNG 4 KẾT LUẬN 4.1 Kết luận

+) Kết quả đạt được:

Biết cách thiết kế 1 hệ thống phân loại sản phẩm đơn giản

Ứng dụng được xử lý ảnh vào trong hệ thống

Kết nối được các phần cứng với nhau, cũng như là các phần mềm, và hiểu được các phương thức giao tiếp

Biết cách làm việc nhóm với nhau

+) Hạn chế:

o Tốc độ xử lý còn chậm, các tín hiệu giống nhau gửi liên tiếp do số khung hình trên giây lớn

o Hệ thống buồng ảnh chưa đáp ứng được ánh sáng tốt nhất

o Chỉ phân loại được sản phẩm theo màu sắc, không phát hiện được sản phẩm bị lỗi

o Do dịch bệnh nên khả năng làm việc nhóm chưa được tối ưu, cũng như phần cứng còn hạn chế

4.2 Hướng phát triển của đề tài trong tương lai

- Từ những mặt hạn chế của đề tài, để đề tài hoạt động tốt hơn và có thể áp dụng vào thực tế sau này nhóm đã đề ra những hướng phát triển như sau: Làm thành dây chuyền sản xuất với cấu hình mạnh hơn, fix các lỗi còn tồn đọng, cải tiến thêm chức năng phát hiện được sản phẩm lỗi, tìm hiểu và phát triển thêm chức năng vận hành và giám sát từ xa để có thể áp dụng trực tiếp vào các dây truyền ví

dụ như phân loại hoa quả chín, hư hỏng,…

Trang 15

TÀI LIỆU THAM KHẢO

12

Ngày đăng: 18/06/2024, 17:23

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w