Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 65 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
65
Dung lượng
1,82 MB
Nội dung
ĐẠ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 h NGÀNH: CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ-VIỄN THÔNG ĐỀ TÀI THIẾT KẾ VÀ THI CÔNG DÂY CHUYỀN PHÂN LOẠI ĐAI ỐC ỨNG DỤNG XỬ LÝ ẢNH Người hướng dẫn Sinh viên thực Mã Sinh Viên Lớp : TS Nguyễn Linh Nam : Nguyễn Xuân Thành : Nguyễn Viết Nhật : 1811505410131 : 1811505410125 : 18DT1 Đà Nẵng , 06/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 h NGÀNH: CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ VIỄN THÔNG ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG DÂY CHUYỀN PHÂN LOẠI ĐAI ỐC ỨNG DỤNG XỬ LÝ ẢNH Người hướng dẫn Sinh viên thực Mã sinh viên Lớp : TS Nguyễn Linh Nam : Nguyễn Xuân Thành : Nguyễn Viết Nhật : 1811505410131 : 1811505410125 : 18DT1 Đà Nẵng, 06/2022 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ự - Hạnh phúc NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Giảng viên hướng dẫn: TS Nguyễn Linh Nam Sinh viên thực hiện: Nguyễn Viết Nhật Nguyễn Xuân Thành Mã SV: 1811505410125 Mã SV: 1811505410131 Tên đề tài: “THIẾT KẾ VÀ THI CÔNG DÂY CHUYỀN PHÂN LOẠI ĐAI ỐC ỨNG DỤNG XỬ LÝ ẢNH” Các số liệu, tài liệu ban đầu: Tìm hiểu cách thức hoạt động hệ thông phân loại ứng dụng xứ ảnh - Tìm hiểu tổng quan đề tài - Tìm hiểu chuẩn giao tiếp UART, động servo, cảm biến hồng ngoại, encoder - Tìm hiểu vi điều khiển STM32 - Thiết kế thi cơng mơ hình dây chuyền phân loại h - Thiết kế thi công mạch điện cho hệ thống - Viết chương trình xử lý ảnh máy tính dùng phần mềm PyCharm - Viết chương trình điều khiển cho vi điều khiển STM32 - Chạy thử nghiệm mơ hình, chinh sửa hồn thiện hệ thống - Viết báo cáo đồ án tốt nghiệp Nội dung đồ án: - Tìm hiểu tổng quan, xác định mục tiêu đề tài - Thiết kế thi công hệ thống dây chuyền phân loại đai ốc sử dụng xử lý ảnh - Viết báo cáo đồ án tốt nghiệp Các sản phẩm dự kiến - Báo cáo tổng kết đồ án tốt nghiệp - Mơ hình thực tế Hệ thống phân loại sản phẩm Ngày giao đồ án: 21/02/2022 Ngày nộp đồ án: 05/06/2022 Đà Nẵng, ngày 25 tháng 02 năm 2022 Trưởng Bộ môn Người hướng dẫn TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM KHOA ĐIỆN – ĐIỆN TỬ Độc lập - Tự - Hạnh phúc ĐỀ CƯƠNG ĐỒ ÁN TỐT NGHIỆP Giảng viên hướng dẫn: TS Nguyễn Linh Nam Sinh viên thực hiện: Nguyễn Viết Nhật Nguyễn Xuân Thành Mã SV: 1811505410125 Mã SV: 1811505410131 Tên đề tài: “THIẾT KẾ VÀ THI CÔNG DÂY CHUYỀN PHÂN LOẠI ĐAI ỐC ỨNG DỤNG XỬ LÝ ẢNH” Thời gian thực hiện: Từ ngày 21/02/2022 đến ngày 05/06/2022 Mục tiêu: - Tìm hiểu tổng quan, xác định mục tiêu đề tài - Thiết kế thi công hệ thống phân loại đai ốc ứng dụng xử lý ảnh - Hoàn thành sản phẩm đồ án tốt nghiệp bao gồm báo cáo đồ án, sản phẩm theo kế hoạch h Nội dung - Tìm hiểu STM32, tổng quan xử lý ảnh - Thiết kế hệ thống, viết chương trình - Thiết kế thi cơng mơ hình - Chạy thử nghiệm cân chỉnh mơ hình - Viết báo cáo đồ án tốt nghiệp Kết dự kiến đạt Nhóm mong muốn đạt thành tựu định thơng qua việc nghiên cứu, tìm hiểu đối tượng liên quan đến đề tài, thiết kế mơ hình thực tế hồn chỉnh, tinh gọn nhẹ đáp ứng yêu cầu đặt từ lúc đầu Cụ thể sau: - Hiểu vận dụng vấn đề kỹ thuật xử lý ảnh - Nghiên cứu sử dụng STM32, ứng dụng vào đồ án tốt nghiệp - Tính tốn, thiết kế thi cơng hồn chỉnh hệ thống phân loại đại ốc - Hoàn thành báo cáo đồ án tốt nghiệp tiến độ yêu cầu đặt Tiến độ thực TT Thời gian Nội dung công việc Kết dự kiến đạt Tuần Gặp giảng viên hướng dẫn trao đổi đề tài đồ án tốt nghiệp Tuần Viết đề cương nhiệm vụ thực đồ án tốt nghiệp Tuần Tìm hiểu đề tài lựa chọn thiết bị Tuần Tìm hiểu nguyên lý hoạt động đề tài Tuần Thiết kế sơ đồ khối, sơ đồ nguyên lý Tuần Viết chương trình, kiểm tra chức điều khiển bo mạch Tuần Lập trình hệ thống Tuần Tiến hành thi công phần cứng Tuần Thi công phần cứng, lắp ráp mơ hình 10 Tuần 10 Thi cơng phần cứng, lắp ráp mơ hình 11 Tuần 11 Thi cơng phần cứng, lắp ráp mơ hình 12 Tuần 12 Hồn thiện mơ hình, đóng gói hệ thống chạy thử nghiệm Tuần 13 Chạy thử nghiệm cân chỉnh toàn hệ thống Đánh giá kết đạt được, viết báo cáo Tuần 14 Chạy thử nghiệm cân chỉnh toàn hệ thống Đánh giá kết đạt được, viết báo cáo Tuần 15 Chạy thử nghiệm cân chỉnh toàn hệ thống Đánh giá kết đạt được, hoàn thiện báo cáo 13 14 15 h Đà Nẵng, ngày 25 tháng 02 năm 2022 BỘ MÔN DUYỆT NGƯỜI HƯỚNG DẪN SINH VIÊN LỜI NĨI ĐẦU Lời đầu tiên, nhóm thực đề tài xin gửi lời cảm ơn chân thành đến thầy TS Nguyễn Linh Nam - giảng viên khoa Điện – Điện tử, theo sát hỗ trợ hướng dẫn nhóm cách chi tiết q trình thực đề tài Thầy ln hỗ trợ hết mình, giải đáp thắc mắc, sai sót gợi ý phương án thực cho khả thi dễ tiếp cận Trong trình thực Đồ án tốt ngiệp chúng em nhận giúp đỡ ủng hộ thầy, cô khoa Điện – Điện tử Sự hỗ trợ thầy, góp phần khơng nhỏ giúp chúng em hồn thành đề tài Nhóm đề tài xin cảm ơn bạn sinh viên khoa Điện – Điện tử nhiệt tình giúp đỡ, hỗ trợ nhóm, chia sẻ kinh nghiệm Những đóng góp bạn ln nhóm tiếp nhận xem xét kĩ lưỡng Cuối cùng, nhóm xin cảm ơn chân thành sâu sắc đến người thân đặc biệt quý phụ huynh - người bên cạnh hỗ trợ tài tinh thần suốt trình học tập thực đề tài Dù cố gắng nỗ lực nhiên với hạn chế kiến thức kinh nghiệm, h đề tài khơng thể tránh cịn nhiều thiếu sót Nhóm mong nhận đóng góp, nhận xét để thầy, bạn bè để hoàn thiện đề tài Xin chân thành cảm ơn! Người thực đề tài Nguyễn Xuân Thành Nguyễn Viết Nhật LỜI CAM ĐOAN Đề tài “Thiết kế thi công dây chuyền phần loại đai ốc ứng dụng xử lý ảnh” nhóm em tự thực dựa vào tham khảo số tài liệu trước khơng chép từ tài liệu hay nguồn khác Người thực đề tài Nguyễn Xuân Thành Nguyễn Viết Nhật h MỤC LỤC Nhận xét người hướng dẫn Nhận xét người phản biện Tóm tắt LỜI NÓI ĐẦU vi LỜI CAM ĐOAN vii MỤC LỤC viii DANH SÁCH CÁC BẢNG, HÌNH VẼ x MỞ ĐẦU Chương TỔNG QUAN VỀ ĐỀ TÀI 1.1 Đặt vấn đề 1.2 Nhà máy sản xuất đai ốc 1.3 Dây chuyền phân loại sản phẩm 1.4 Đai ốc h 1.5 Mơ hình phân loại sản phẩm 1.6 Mục tiêu giới hạn 1.7 Nội dung nghiên cứu 1.8 Giới hạn 1.9 Bố cục Chương CƠ SỞ LÝ THUYẾT 10 2.1 Tổng quan xử lý ảnh 10 2.2 Tìm đường biên ảnh 17 2.3 Giao tiếp uart 19 2.4 Vi điều khiển STM32 21 2.5 Thiết bị sử dụng hệ thống 28 2.5.1 Cảm biến hồng ngoại 28 2.5.2 Xi lanh 30 2.5.3 Van điện từ 3/2 31 2.5.4 Servo SG90 33 2.5.5 Module relay 34 2.5.6 Băng tải 35 2.5.7 Nguồn tổ ong 36 Chương TÍNH TỐN VÀ THIẾT KẾ HỆ THỐNG MƠ HÌNH 38 3.1 Thiết kế sơ đồ khối 38 3.2 Lưu đồ giải thuật 39 3.3 Phần mềm pycham 40 3.4 Các tính pycharm 40 3.5 Ngơn ngữ lập trình python 41 3.6 Sơ lược trình biên dịch KeilC 43 3.7 Thi công mạch điện 44 3.8 Sơ đồ đấu nối thiết bị 45 3.9 Thi cơng mơ hình 46 h KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 49 A Kết luận 49 B Hướng phát triển 49 C Các trường hợp 49 D Kết 50 TÀI LIỆU THAM KHẢO PHỤ LỤC DANH SÁCH CÁC BẢNG, HÌNH VẼ Hình 1: Từ trái sang phải: Đai ốc cánh, đai ốc cạnh, đai ốc cạnh có gờ nổi, đai ốc hàn có gờ .7 Hình 2: Từ trái sang phải: Đai ốc xẻ rãnh, vịng đệm vng, đai ốc chữ T, đai ốc có mũi, đai ốc nylon, đai ốc hoa Hình 3: Bản vẽ đai ốc .7 Hình 4: Máy phân loại đai ốc Hình 1: Xử lý ảnh 10 Hình 2: Hình ảnh Webcam Logitech C270 12 Hình 4: Ví dụ phần tử trung vị 15 Hình 5: Các hướng xét giá trị 19 Hình 6: Mạch STM32 22 Hình 7: Sơ đồ cấu trúc khối STM32 22 Hình 8: Sơ đồ nguồn xung clock STM32 24 h Hình 9: Thanh ghi cấu hình chức chân GPIO port 25 Hình 10: Thanh ghi đọc giá trị ngõ vào 26 Hình 11: Thanh ghi chọn giá trị ngõ port .27 Hình 12: Led phát hồng ngoại 28 Hình 13: Kí hiệu đi-ốt quang .29 Hình 14: Kí hiệu transistor quang .29 Hình 15: Cảm biến hồng ngoại phát vật cản .30 Hình 16: xi lanh khí nén airtac 30 Hình 17: van điện từ 3/2 airtac 32 Hình 18: sơ đồ van điện từ khí nén 3/2 .32 Hình 19: SERVO SG90 33 Hình 20: Module Relay Với Opto Cách Ly Kích H/L (5VDC) 34 Hình 21: Băng tải mini 35 Hình 22: Nguồn tổ ong 24V – 5A[ 36 Đồ án tốt nghiệp 40 GVHD: Nguyễn Linh Nam Bắt đầu chương trình hệ thống băng tải chạy cấp phơi tới vị trí cảm biến hồng ngoại, cảm biến nhận phôi dừng băng tải, camera đồng thơi chụp vật để STM32 xử lý sau cho băng tải chạy ốc 10 cấp tín hiệu cho servo gạt qua phải, ốc cấp tín hiệu cho servo gạt qua trái, ốc gửi tín hiệu cho xi lanh đẩy thùng chứa, kết thúc chu trình sau lập lập lại đến dừng chương trình 3.3 Phần mềm pycham [13]Pycharm tảng kết kết hợp JetBrains phát triển IDE (Mơi trường phát triển tích hợp) để phát triển ứng dụng cho lập trình Python Một số ứng dụng lớn Tweeter, Facebook, Amazon Pinterest sử dụng Pycharm để làm IDE Python họ Bài viết giới thiệu chi tiết cho bạn Pycharm hướng dẫn cách cài đặt sử dụng Pycharm h Hình 3: PYCHAM[13] 3.4 Các tính pycharm Pycharm chạy Windows, Linux, Mac OS Ngồi ra, chứa Mơ đun gói giúp lập trình viên phát triển phần mềm Python thời gian ngắn với cơng sức Hơn nữa, có khả tùy chỉnh theo yêu cầu nhà phát triển Khi cài đặt Pycharm, LTV sử dụng số tính sau: Trình chỉnh sửa mã thơng minh: - Giúp lập trình viên viết mã chất lượng cao - Bao gồm lược đồ màu cho từ khóa, lớp hàm Điều giúp tăng khả đọc hiểu mã - Xác định lỗi cách dễ dàng - Cung cấp tính tự động hồn thiện hướng dẫn hồn thiện mã SVTH: Nguyễn Xuân Thành Nguyễn Viết Nhật Thiết kế thi công dây chuyền phân loại đai ốc ứng dụng xử lý ảnh Đồ án tốt nghiệp 41 GVHD: Nguyễn Linh Nam Điều hướng mã - Giúp nhà phát triển việc chỉnh sửa nâng cao mã với nỗ lực thời gian - Với việc điều hướng mã, nhà phát triển dễ dàng điều hướng lớp,hàm tệp - LTV xác định vị trí phần tử, ký hiệu biến mã nguồn thời gian ngắn sử dụng Pycharm - Bằng việc sử dụng chế độ thấu kính, nhà phát triển kiểm tra gỡ lỗi toàn mã nguồn Tái cấu trúc - Sử dụng Pycharm có lợi thực thay đổi hiệu nhanh chóng biến cục biến tồn cục - Tái cấu trúc Pycharm cho phép nhà phát triển cải thiện cấu trúc bên mà khơng thay đổi hiệu suất bên ngồi mã - Nó cho phép phân chia lớp với chức mở rộng 3.5 Ngơn ngữ lập trình python h Hình 4: Ngơn ngữ python[14] [14]Python ngơn ngữ lập trình hướng đối tượng, cấp cao, mạnh mẽ, tạo Guido van Rossum Nó dễ dàng để tìm hiểu lên ngơn ngữ lập trình nhập mơn tốt cho người lần đầu tiếp xúc với ngôn ngữ lập trình Python hồn tồn tạo kiểu động sử dụng chế cấp phát nhớ tự động Python có cấu trúc liệu cấp cao mạnh mẽ cách tiếp cận đơn giản hiệu lập trình hướng đối tượng Cú pháp lệnh Python điểm cộng vơ lớn rõ ràng, SVTH: Nguyễn Xuân Thành Nguyễn Viết Nhật Thiết kế thi công dây chuyền phân loại đai ốc ứng dụng xử lý ảnh Đồ án tốt nghiệp 42 GVHD: Nguyễn Linh Nam dễ hiểu cách gõ linh động làm cho nhanh chóng trở thành ngơn ngữ lý tưởng để viết script phát triển ứng dụng nhiều lĩnh vực, hầu hết tảng Lịch sử Python [14]Python ngôn ngữ cũ tạo Guido Van Rossum Thiết kế bắt đầu vào cuối năm 1980 phát hành lần vào tháng năm 1991 Vào cuối năm 1980, Guido Van Rossum làm việc Amoeba, phân phối nhóm hệ điều hành Ơng muốn sử dụng ngơn ngữ thơng dịch ABC (ABC có cú pháp dễ hiểu) để truy cập vào gọi hệ thống Amoeba Vì vậy, ơng định tạo ngôn ngữ mở rộng Điều dẫn đến thiết kế ngơn ngữ mới, Python sau Tính Python Ngơn ngữ lập trình đơn giản, dễ học: Python có cú pháp đơn giản, rõ ràng Nó dễ đọc viết nhiều so sánh với ngôn ngữ lập trình khác C++, Java, C# Python làm cho việc lập trình trở nên thú vị, cho phép bạn tập trung vào giải pháp cú pháp Miễn phí, mã nguồn mở: Bạn tự sử dụng phân phối Python, chí dùng cho mục đích thương mại Vì mã nguồn mở, bạn khơng sử h dụng phần mềm, chương trình viết Python mà cịn thay đổi mã nguồn Python có cộng đồng rộng lớn, khơng ngừng cải thiện lần cập nhật Khả di chuyển: Các chương trình Python di chuyển từ tảng sang tảng khác chạy mà khơng có thay đổi Nó chạy liền mạch hầu hết tất tảng Windows, macOS, Linux Khả mở rộng nhúng: Giả sử ứng dụng đòi hỏi phức tạp lớn, bạn dễ dàng kết hợp phần code C, C++ ngôn ngữ khác (có thể gọi từ C) vào code Python Điều cung cấp cho ứng dụng bạn tính tốt khả scripting mà ngơn ngữ lập trình khác khó làm Ngôn ngữ thông dịch cấp cao: Không giống C/C++, với Python, bạn lo lắng nhiệm vụ khó khăn quản lý nhớ, dọn dẹp liệu vô nghĩa, Khi chạy code Python, tự động chuyển đổi code sang ngơn ngữ máy tính hiểu Bạn khơng cần lo lắng hoạt động cấp thấp SVTH: Nguyễn Xuân Thành Nguyễn Viết Nhật Thiết kế thi công dây chuyền phân loại đai ốc ứng dụng xử lý ảnh Đồ án tốt nghiệp 43 GVHD: Nguyễn Linh Nam Thư viện tiêu chuẩn lớn để giải tác vụ phổ biến: Python có số lượng lớn thư viện tiêu chuẩn giúp cho cơng việc lập trình bạn trở nên dễ thở nhiều, đơn giản khơng phải tự viết tất code Ví dụ: Bạn cần kết nối sở liệu MySQL Web server? Bạn nhập thư viện MySQLdb sử dụng Những thư viện kiểm tra kỹ lưỡng sử dụng hàng trăm người Vì vậy, bạn chắn khơng làm hỏng code hay ứng dụng Hướng đối tượng: Mọi thứ Python hướng đối tượng Lập trình hướng đối tượng (OOP) giúp giải vấn đề phức tạp cách trực quan Với OOP, bạn phân chia vấn đề phức tạp thành tập nhỏ cách tạo đối tượng Ứng dụng python: Lập trình ứng dụng web: Bạn tạo web app có khả mở rộng (scalable) cách sử dụng framework CMS (Hệ thống quản trị nội dung) tích hợp Python Vài tảng phổ biến để tạo web app là: Django, Flask, Pyramid, Plone, Django CMS Các trang Mozilla, Reddit, Instagram PBS viết Python Khoa học tính tốn: Có nhiều thư viện Python cho khoa học tính tốn h số liệu, SciPy NumPy, sử dụng cho mục đích chung chung tính tốn Và, có thư viện cụ thể như: EarthPy cho khoa học trái đất, AstroPy cho Thiên văn học, Ngoài ra, Python sử dụng nhiều machine learning, khai thác liệu deep learning Tạo nguyên mẫu phần mềm: Python chậm so sánh với ngôn ngữ biên dịch C++ Java Nó lựa chọn tốt nguồn lực bị giới hạn yêu cầu hiệu bắt buộc Tuy nhiên, Python ngôn ngữ tuyệt vời để tạo nguyên mẫu (bản chạy thử - prototype) Ví dụ, bạn sử dụng Pygame (thư viện viết game) để tạo nguyên mẫu game trước Nếu thích nguyên mẫu dùng C++ để viết game thực Ngơn ngữ tốt để dạy lập trình: Python nhiều công ty, trường học sử dụng để dạy lập trình cho trẻ em người lần đầu học lập trình Bên cạnh tính khả tuyệt vời cú pháp đơn giản dễ sử dụng lý cho việc 3.6 Sơ lược trình biên dịch KeilC SVTH: Nguyễn Xuân Thành Nguyễn Viết Nhật Thiết kế thi công dây chuyền phân loại đai ốc ứng dụng xử lý ảnh Đồ án tốt nghiệp 44 GVHD: Nguyễn Linh Nam Ngày thị trường có nhiều trình biên dịch ngơn ngữ C cho dịng vi điều khiển, IAR, Keil C … Những phần mềm gọi mơi trường phát triển tích hợp (IDE: viết tắt Integrated Development Environment) Chúng đóng vai trị trình soạn thảo ngơn ngữ C, assembly, trình biên dịch, hỗ trợ debug-phát lỗi sửa câu lệnh vừa viết Ngoài chúng hỗ trợ biên dịch câu lệnh viết người sử dụng thành file hex qua nạp vào dịng vi xử lý Trong Keil C phần mềm chuyên dụng để tạo mơi trường lập trình hỗ trợ cho nhiều dòng vi xử lý từ ARM, AVR, 8051, PIC, với ngôn ngữ chủ yếu C assembly h Hình 5: Keilc 3.7 Thi cơng mạch điện Linh kiện sử dụng mạch điện Để thi cơng mạch điện, nhóm sử dụng linh kiện liệt kê bảng sau Bảng Danh sách linh kiện SVTH: Nguyễn Xuân Thành Nguyễn Viết Nhật STT Tên linh kiện Số lượng STM32 Module relay Thiết kế thi công dây chuyền phân loại đai ốc ứng dụng xử lý ảnh Đồ án tốt nghiệp 45 GVHD: Nguyễn Linh Nam Cảm biến hồng ngoại Servo SG90 LM2596 USB TTL h Hình 1: Mạch sau hàn linh kiện 3.8 Sơ đồ đấu nối thiết bị SVTH: Nguyễn Xuân Thành Nguyễn Viết Nhật Thiết kế thi công dây chuyền phân loại đai ốc ứng dụng xử lý ảnh Đồ án tốt nghiệp 46 GVHD: Nguyễn Linh Nam Hình 6: Sơ đồ nối module hệ thống h Mạch hạ áp LM2596 STM32 Cảm biến hồng ngoại Servo 90 Module relay 5V Miêu tả hệ thống: Hạ áp nguồn điện áp 24v xuống 5v sau cấp nguồn cho module khác Module STM32 tiếp nhận hình ảnh từ camera xử lý tín hiệu cảm biến hồng ngoại sau gửi tín hiệu tới module relay kích kênh điều khiển xi lanh servo 90 3.9 Thi cơng mơ hình Mơ hình chia làm phần băng tải cấu phân loại Các phần nằm khung nhơm định hình Vì điều kiện kinh phí có hạn khả hạn chế thiết kế khí nên nhóm sử dụng vật liệu nhơm định hình, mica foam để thi cơng mơ hình Một số chi tiết tận dụng từ đồ vật có sẵn, nhiên SVTH: Nguyễn Xuân Thành Nguyễn Viết Nhật Thiết kế thi công dây chuyền phân loại đai ốc ứng dụng xử lý ảnh Đồ án tốt nghiệp 47 GVHD: Nguyễn Linh Nam mơ hình thể ý tưởng nhóm dây chuyền hoạt động thực tế Vật liệu, linh kiện sử dụng Các linh kiện, vật liệu sử dụng mơ hình: Bảng Các linh kiện, vật liệu sử dụng mơ hình Stt Tên linh kiện Số lượng Cảm biến hồng ngoại Servo SG90 Nguồn tổ ong Nhôm 20x20 1m Xi lanh Van điều tiết Camera Băng tải Hộp nhận phơi h Hình 2: Mơ hình nhìn từ xuống SVTH: Nguyễn Xuân Thành Nguyễn Viết Nhật Thiết kế thi công dây chuyền phân loại đai ốc ứng dụng xử lý ảnh Đồ án tốt nghiệp 48 GVHD: Nguyễn Linh Nam h Hình 3: Mơ hình nhìn từ phía trước SVTH: Nguyễn Xn Thành Nguyễn Viết Nhật Thiết kế thi công dây chuyền phân loại đai ốc ứng dụng xử lý ảnh Đồ án tốt nghiệp 49 GVHD: Nguyễn Linh Nam KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN A Kết luận - Sau thời gian nghiên cứu làm việc chăm nhóm đạt mục tiêu đề - Viết chương trình xử lý ảnh máy tính có giao diện Nhận dạng đai ốc có kích thước khác Giao tiếp từ máy tính tới vi điều khiển ổn định xác - Các phận khí hoạt động tương đối tốt Đạt kiến thức ứng dụng xử lý ảnh B Hướng phát triển Đề tài cịn nhiều thiếu sót nhóm đề xuất số hướng để phát triển thêm: - Thay webcam loại camera có tốc độ chụp nhanh giúp xử lý - Hoàn thiện phần mềm máy tính để đóng gói sử dụng cách hồn h - hình ảnh tốc độ cao Nghiên cứu thêm thuật toán hiệu việc phát lỗi Thiết kế mạch phù hợp với môi trường công nghiệp, tiêu chuẩn công nghiệp chỉnh - Cải tiến cấu khí để hoạt động hiệu phù hợp với yêu cầu thực tế - Phát triển thêm giao diện giám sát điều khiển qua web serve hoạt mạng nội nhà máy C Các trường hợp Ban đầu ta cấp nguồn cho băng tải sau băng tải chạy ta đặt loại ốc 10 Sau đặt loại ốc vào truyền di chuyển đến cảm biến Sau cảm biến nhận tín hiệu băng truyền dừng, băng truyền dừng camera xử lý ảnh truyền tín hiệu xuống STM32 để xử lí Sau xử lý ảnh xong băng truyền tiếp tục chạy phân loại theo đai ốc pittong đẩy ốc 4, 5, 6, tiếp tục bỏ loại ốc 8, 10, nhận tín hiệu từ STM32 SVTH: Nguyễn Xuân Thành Nguyễn Viết Nhật Thiết kế thi công dây chuyền phân loại đai ốc ứng dụng xử lý ảnh Đồ án tốt nghiệp 50 GVHD: Nguyễn Linh Nam Sau sevro nhận tín hiệu từ tín hiệu STM32 gạt qua lại để phân loại theo ốc 8, 10 D Kết Khi ta bật giao diện lên ta có start stop lúc camera xử lý dám sát loại ốc Lúc xử lý ảnh hư hỏng lỗi đẩy qua hộp ốc hồn thiện cho vào hộp Giao diện nhận xử lý bao nhiều lần kích vào giao diện nhận ốc vs số lương tương ứng h SVTH: Nguyễn Xuân Thành Nguyễn Viết Nhật Thiết kế thi công dây chuyền phân loại đai ốc ứng dụng xử lý ảnh TÀI LIỆU THAM KHẢO [1] Bách khoa toàn thư, “ Đai ốc” , https://vi https://vi.wikipedia.org/ [2] https://www.youtube.com/watch?v=AMtCUe7fY8M [3] Nguyễn Đình Phú, “Giáo trình vi xử lý”, Trường ĐHSPKT, Tp.HCM, 2013 [4] “Webcam Logitech C270”, https://dtssmart.com/san-pham/webcam-logitechc270/ [5] Nguyễn Đình Phú, “Giáo trình: Thực hành vi điều khiển - ARM STM32”, Trường ĐHSPKT, Tp.HCM, 2014 [6] Nshopvn.com, “Cảm Biến Vật Cản Hồng Ngoại”, https://nshopvn.com/product/cam-bien-vat-can-hong-ngoai/ [7] Vinfasttauto.com, “Xi lanh gì? Phân loại, cấu tạo ý nghĩa ký hiệu xi lanh” , https://vinfastauto.com/vn_vi/xi-lanh [8] Thuận Hưng, “ Van Khí Nén 3/2 Là Gì? Nguyên Lý Hoạt Động Của Van Điện Từ Khí Nén 3/2” , https://khinenthuanhung.vn/van-khi-nen-3-2-la-gi-nguyen-lyhoat-dong-cua-van-dien-tu-khi-nen-3-2/ [9] Điện tử 360, “ ĐỘNG CƠ SERVO SG90”, https://dientu360.com/dong-co-servo- h sg90 [10] Iotmaker , “Module Relay 2-Channel 5V”, https://iotmaker.vn/relay-2-channel5v.html [11] Cosmovina, “Băng tải mini”, https://www.cosmovina.com/bang-tai-mini [12] Điện tử 360, “NGUỒN TỔ ONG 24V-5A”, https://dientu360.com/nguon-toong-24v-5a 1#:~:text=GI%E1%BB%9AI%20THI%E1%BB%86U%20CHUNG%20Ngu%E1% BB%93n%20t%E1%BB%95,%3A%20AC%20220V%20(%20 [13] Viện cơng nghệ thơng tin T3H, “PYCHARM LÀ GÌ? HƯỚNG DẪN CÀI ĐẶT VÀ SỬ DỤNG PYCHARM”, https://t3h.edu.vn/tin-tuc/pycharm-la-gi-huong-dancai-dat-va-su-dung-pycharm [14] Bách khoa tồn thư, “Python (ngơn ngữ lập trình)”, https://vi.wikipedia.org/wiki/Python_(ng%C3%B4n_ng%E1%BB%AF_l%E1%BA %ADp_tr%C3%ACnh) PHỤ LỤC Chương trình hệ thống xử lý ảnh #img = cv2.imread("1.jpg") img = imgout[200:800, 350:1000] contours = detector.detect_objects(img) # Draw objects boundaries for cnt in contours: # Get rect rect = cv2.minAreaRect(cnt) (x, y), (w, h), angle = rect # Get Width and Height of the Objects by applying the Ratio pixel to cm object_width = w / 28 print(object_width) if (object_width > and object_width < ): # if(c==0): h STM32.write(('c').encode()) c=1 tgb=40 tga=40 if (object_width > and object_width < ): # if(b==0): STM32.write(('b').encode()) b=1 tga=40 tgc=40 if (object_width > and object_width < 11 ): # if(a==0): STM32.write(('a').encode()) tgc=40 tgb=40 a=1 cv2.circle(img, (int(x), int(y)), 5, (0, 0, 255), -1) cv2.putText(img, "Loai {} mm".format(round(object_width)), (int(x - 100), int(y 20)), cv2.FONT_HERSHEY_PLAIN, 2, (100, 200, 0), 2) cv2.imshow("Image", img) cv2.imshow("Image1", imgout) key = cv2.waitKey(1) if key == 27: break cap.release() cv2.destroyAllWindows() Chương trình xử lý STM32 import cv2 class HomogeneousBgDetector(): def init (self): h pass def detect_objects(self, frame): # Convert Image to grayscale gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) # Create a Mask with adaptive threshold mask = cv2.adaptiveThreshold(gray, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY_INV, 19, 5) # Find contours contours, _ = cv2.findContours(mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) #cv2.imshow("mask", mask) objects_contours = [] for cnt in contours: area = cv2.contourArea(cnt) if area > 10000: #cnt = cv2.approxPolyDP(cnt, 0.03*cv2.arcLength(cnt, True), True) objects_contours.append(cnt) return objects_contours # def get_objects_rect(self): h # box = cv2.boxPoints(rect) # cv2.boxPoints(rect) for OpenCV 3.x # box = np.int0(box)