Nghiên cứu, thiết kế, chế tạo mobile robot tự hành tích hợp một số công nghệ xử lý ảnh và thuật toán hiện đại

0 44 0
Nghiên cứu, thiết kế, chế tạo mobile robot tự hành tích hợp một số công nghệ xử lý ảnh và thuật toán hiện đại

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

Thông tin tài liệu

Nghiên cứu, thiết kế, chế tạo mobile robot tự hành tích hợp một số công nghệ xử lý ảnh và thuật toán hiện đại Nghiên cứu, thiết kế, chế tạo mobile robot tự hành tích hợp một số công nghệ xử lý ảnh và thuật toán hiện đại luận văn tốt nghiệp thạc sĩ

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ - - TRỊNH TUẤN DƯƠNG NGHIÊN CỨU, THIẾT KẾ, CHẾ TẠO MOBILE ROBOT TỰ HÀNH TÍCH HỢP MỘT SỐ CÔNG NGHỆ XỬ LÝ ẢNH VÀ THUẬT TỐN HIỆN ĐẠI LUẬN VĂN THẠC SĨ CƠNG NGHỆ KỸ THUẬT CƠ ĐIỆN TỬ HÀ NỘI - 2020 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ - - TRỊNH TUẤN DƯƠNG NGHIÊN CỨU, THIẾT KẾ, CHẾ TẠO MOBILE ROBOT TỰ HÀNH TÍCH HỢP MỘT SỐ CƠNG NGHỆ XỬ LÝ ẢNH VÀ THUẬT TỐN HIỆN ĐẠI Ngành: Công nghệ kỹ thuật điện tử Chuyên ngành: Kỹ thuật điện tử Mã số: 8520114.01 LUẬN VĂN THẠC SĨ CÔNG NGHỆ KỸ THUẬT CƠ ĐIỆN TỬ NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS PHẠM MẠNH THẮNG HÀ NỘI - 2020 i LỜI CAM ĐOAN Tôi xin cam đoan: Luận văn cơng trình nghiên cứu cá nhân, không chép lại Tất nội dung có tham khảo từ tài liệu khác ghi lại đầy đủ phần tài liệu tham khảo Hà Nội, ngày 18 tháng năm 2020 Học viên Trịnh Tuấn Dương ii LỜI CẢM ƠN Tôi xin gửi lời cảm ơn chân thành đến Giáo viên hướng dẫn PGS.TS Phạm Mạnh Thắng giúp đỡ, hướng dẫn tận tình thầy Những dẫn, giúp đỡ có vai trị quan trọng giúp tơi hồn thành Luận văn Tơi xin gửi lời cảm ơn đến Gia đình, Bạn bè, Đồng nghiệp, người có giúp đỡ, động viên kịp thời thời gian thực Luận văn Xin chân thành cảm ơn! Hà Nội, ngày 18 tháng năm 2020 Học viên Trịnh Tuấn Dương iii MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN ii MỤC LỤC iii DANH MỤC BẢNG BIỂU vi DANH MỤC HÌNH VẼ vii MỞ ĐẦU CHƯƠNG TỔNG QUAN VỀ LUẬN VĂN 1.1 Giới thiệu chung 1.1.1 Giới thiệu robot tự hành 1.1.2 Bài toán xác định vị trí tìm đường 1.2 Mục đích, đối tượng, nội dung nghiên cứu, giới hạn luận văn 1.2.1 Mục đích, đối tượng nghiên cứu luận văn 1.2.2 Nội dung nghiên cứu luận văn 1.2.3 Giới hạn luận văn CHƯƠNG THIẾT KẾ MOBILE ROBOT 10 2.1 Cấu tạo tổng quát mobile robot 10 2.2 Thiết kế phần khung, vỏ cho mobile robot 10 2.2.1 Ứng dụng công nghệ in 3D FDM việc thiết kế khung, vỏ cho robot 10 2.2.2 Thiết kế, chế tạo khung vỏ robot công nghệ in 3D FDM 13 2.3 Thiết kế mạch nguyên lý cho mobile robot 15 2.4 Thiết lập chế độ làm việc cho linh kiện 15 2.4.1 Arduino Uno 15 2.4.2 QTR – 5RC 16 2.4.3 Module thu phát sóng Radio nRF24L01 18 2.4.4 Động DC 19 iv 2.4.5 Module điều khiển động L298 20 2.4.6 Thiết lập giao tiếp cho robot 21 2.5 Viết chương trình điều khiển cho mobile robot 22 CHƯƠNG XÂY DỰNG CHƯƠNG TRÌNH XỬ LÝ ẢNH VÀ ĐỊNH HƯỚNG CHO MOBILE ROBOT 27 3.1 Mục đích nội dung chương trình 27 3.2 Ứng dụng công nghệ xử lý ảnh luận văn 27 3.2.1 Tổng quan xử lý ảnh 27 3.2.2 Khai thác thư viện OpenCV để hỗ trợ trình xử lý ảnh luận văn 28 3.2.3 Một số khái niệm thuật ngữ quan trọng xử lý ảnh sử dụng luận văn 29 3.3 Xây dựng nguyên lý hoạt động chương trình xử lý ảnh 31 3.4 Tạo đồ 32 3.4.1 Dùng ROI để xác định vùng hoạt động robot 32 3.4.2 Xác định đường robot (tìm line) 33 3.4.3 Thu nhỏ kích thước vạch 35 3.4.4 Chia nút xác định thông số nút 36 3.5 Ứng dụng thuật toán Camshift việc truy bắt, định vị robot 37 3.5.1 Giới thiệu thuật toán Camshift 37 3.5.2 Truy bắt robot theo thuật toán Camshift 42 3.6 Tìm đường cho robot 46 3.6.1 Giới thiệu thuật toán A* 49 3.6.2 Ứng dụng thuật tốn A* tìm đường cho robot 50 3.1 Dẫn hướng cho robot 50 3.2 Kết thử nghiệm tìm đường, định vị dẫn hướng cho robot theo thời gian thực 51 3.2.1 Kết lần thử nghiệm 52 3.2.2 Kết thử nghiệm lần 54 v 3.2.3 Kết thử nghiệm lần 56 3.2.4 Kết thử nghiệm lần 58 KẾT LUẬN 60 DANH MỤC CƠNG TRÌNH KHOA HỌC CỦA TÁC GIẢ LIÊN QUAN ĐẾN LUẬN VĂN 62 TÀI LIỆU THAM KHẢO 63 PHỤ LỤC 1: MỘT SỐ HÌNH ẢNH VỀ SẢN PHẨM, VÀ MÔI TRƯỜNG THỬ NGHIỆM CỦA LUẬN VĂN 65 PHỤ LỤC 2: CƠNG TRÌNH KHOA HỌC CỦA TÁC GIẢ LIÊN QUAN ĐẾN LUẬN VĂN 72 vi DANH MỤC BẢNG BIỂU Bảng 1-1 So sánh ưu, nhược điểm mobile robots bám vạch không bám vạch Bảng 2-1 Một vài ưu, nhược điểm công nghệ in 3D FDM 12 Bảng 2-2 So sánh hành vi robot luận văn robot bám vạch sử dụng thuật toán bám đường trái bám đường phải 24 Bảng 2-3 Kết xác định ngã rẽ hành vi robot dựa tín hiệu trả cảm biến dị line 25 vii DANH MỤC HÌNH VẼ Hình 1.1 Một mobile robots đơn giản [27] Hình 1.2 Nhiều cơng nghệ áp dụng lúc để định vị định hướng cho mobile robots [16] Hình 1.3 Thiết bị BLE Beacons sử dụng công nghệ bluetooth [11] Hình 1.4 Hệ thống đánh dấu AprilTags [11] Hình 1.5 Hệ thống định vị sóng radio [17] Hình 1.6 Hệ thống NFC tags [11] Hình 1.7 Hệ thống RFID passive tags [11] Hình 1.8 Một mobile robot bám vạch có nhiệm vụ vận chuyển nguyên vật liệu [23] Hình 1.9 Hệ thống đánh dấu cho mobile robots bám vạch từ [18] Hình 1.10 Bản đồ chứa vịng lặp khiến cho số thuật tốn dị đường bám biên giải Hình 1.11 Nguyên lý hoạt động hệ thống Hình 2.1 Một mơ hình in theo công nghệ FDM [22] 11 Hình 2.2 Mặt trước mơ hình 3D mobile robot 13 Hình 2.3 Mặt sau mơ hình 3D mobile robot 14 Hình 2.4 Mơ hình mobile robot hoàn thiện 14 Hình 2.5 Mạch nguyên lý hệ thống gồm hai phần: module phát tín hiệu mobile robot 15 Hình 2.6 Board Arduino Uno [9] 16 Hình 2.7 Cảm biến QTR - 5RC [16] 17 Hình 2.8 Module thu phát sóng radio NRF24L01 [12] 18 Hình 2.9 Động DC GA25 [10] 19 Hình 2.10 Module điều khiển động L298 [20] 20 Hình 2.11 Cấu tạo IC điều khiển động L298 21 Hình 2.12 Sơ đồ truyền liệu từ chương trình xử lý ảnh đến robot 21 Hình 2.13 Nguyên lý hoạt động mobile robot 23 Hình 3.1 Các module thư viện OpenCV [25] 28 Hình 3.2 Khơng gian màu RGB [24] 30 Hình 3.3 Khơng gian màu HSV [26] 30 Hình 3.4 Nguyên lý hoạt động chương trình xử lý ảnh 31 Hình 3.5 Bản đồ trước áp dụng ROI (trái) đồ sau áp dụng ROI (phải) 32 Hình 3.6 Kết xác định vạch theo phương pháp phân ngưỡng nhị phân viii ngược đồ 34 Hình 3.7 Kết xác định vạch theo phương pháp phân ngưỡng nhị phân ngược đồ 34 Hình 3.8 Kết làm giảm kích thước vạch đồ phép toán co ảnh 36 Hình 3.9 Kết làm giảm kích thước vạch đồ phép toán co ảnh 36 Hình 3.10 Ví dụ việc chia lưới đồ mà đường có kích thước lớn [8] 37 Hình 3.11 Cửa sổ lọc trượt đến trọng tâm tập hợp điểm [15] 38 Hình 3.12 Trong thuật tốn meanshift, kích thước cửa sổ lọc không thay đổi theo thay đổi đối tượng [15] 40 Hình 3.13 Trong thuật tốn Camshift, kích thước hướng cửa sỏ lọc thay đổi theo thay đổi đối tượng [15] 41 Hình 3.14 Sự thay đổi Histogram dải chia lưới thay đổi [2] 42 Hình 3.15 Ảnh gốc, histogram backprojection tương ứng [13] 43 Hình 3.16 Robot tự hành đánh dấu nhận dạng hai vùng màu khác thân 44 Hình 3.17 Kết định vị mobile robot số vị trí khác 45 Hình 3.18 Kết giảm nhiễu nhờ việc tinh chỉnh giá trị HSV dùng để phân ngưỡng 46 Hình 3.19 Thuật tốn tìm đường theo quy tắc bám phải [30] 46 Hình 3.20 Thuật tốn Pledge giúp khỏi vật cản phức tạp [30] 47 Hình 3.21 Kết tìm đường thuật tốn A* (trái) thuật toán Dijkstra (phải) 49 Hình 3.22 Kết tìm đường lần thử nghiệm 52 Hình 3.23 Kết dẫn hướng cho robot theo thời gian thực lần thử nghiệm 53 Hình 3.24 Kết tìm đường lần thử nghiệm 54 Hình 3.25 Kết dẫn hướng cho robot theo thời gian thực lần thử nghiệm 55 Hình 3.26 Kết tìm đường lần thử nghiệm 56 Hình 3.27 Kết dẫn hướng cho robot theo thời gian thực lần thử nghiệm 57 Hình 3.28 Kết tìm đường lần thử nghiệm 58 Hình 3.29 Kết dẫn hướng theo thời gian thực lần thử nghiệm thứ 59 ix Phụ lục 1 Môi trường thử nghiệm hoạt động robot 65 Phụ lục Chương trình xử lý ảnh máy tính kết nối với Module phát qua giao tiếp Serial 66 Phụ lục Góc nhìn chéo Robot 67 Phụ lục Mặt bên Robot 68 Phụ lục Mặt lưng Robot 69 Phụ lục Mặt sau robot 70 Phụ lục Mặt đáy Robot 71 MỞ ĐẦU Luận văn thạc sĩ “Nghiên cứu, thiết kế, chế tạo mobile robot tự hành tích hợp số cơng nghệ xử lý ảnh thuật tốn đại” có nhiệm vụ thiết kế, chế tạo mơ hình mobile robot tự hành dạng bám vạch định vị, tìm đường dẫn hướng nhờ vào kết hợp công nghệ xử lý ảnh thuật tốn tìm đường Hướng tiếp cận mang đến điểm so với mobile robot bám vạch truyền thống khả giải đồng thời ba tốn định vị, tìm đường dẫn hướng Nhờ áp dụng cơng nghệ xử lý ảnh nên robot đến vị trí đường mà không cần tạo dấu đồ phương pháp truyền thống Đồng thời, nhờ áp dụng công nghệ xử lý ảnh, tương tác người dùng với robot bám vạch tăng lên người dùng lựa chọn vị trí đích cho robot cách đơn giản thơng qua việc kích chuột ảnh đồ Nội dung báo cáo luận văn gồm có phần sau: Chương Tổng quan luận văn Chương Thiết kế mobile robot dạng bám vạch Chương 3: Xây dựng chương trình xử lý ảnh định hướng cho mobile robot dạng bám vạch Hướng phát triển luận văn cịn rộng Vì vậy, tác giả tiếp tục nghiên cứu, phát triển nội dung luận văn để tìm hiểu sâu lĩnh vực mobile robot hoàn thiện, nâng cao tính ứng dụng luận văn vào thực tiễn Báo cáo khơng tránh khỏi cịn có sai sót, tầm hiểu biết tác giả có hạn nên mong nhận ý kiến đóng góp để tác giả sửa chữa cải tiến, hoàn thiện làm phong phú thêm nội dung luận văn Xin chân thành cảm ơn! TÁC GIẢ CHƯƠNG TỔNG QUAN VỀ LUẬN VĂN 1.1 Giới thiệu chung 1.1.1 Giới thiệu robot tự hành Robot tự hành, hay gọi AMR (autonomous mobile robot) AGV (autonomous guided vehicle) robot có khả di chuyển cách tự động Khác với robot cơng nghiệp (industrial robots) robot có tính di động hơn, mobile robot thường có khả tự hành mơi trường khơng kiểm sốt (các robot dạng AMR) có khả sử dụng cảm biến định hướng để di chuyển theo đường định trước (các robot dạng AGV) Hình 1.1 Một mobile robots đơn giản [27] Mobile robots ngày trở nên phổ biến công nghiệp sống Tất lĩnh vực từ y tế, quân sự, giáo dục, sản xuất hay sinh hoạt thường nhật có xuất mobile robots Ví dụ, bệnh viện nhà máy sử dụng mobile robots suốt nhiều năm việc vận chuyển dụng cụ, nguyên vật liệu Trong gia đình, robot hút bụi tự động ngày phổ biến, hoạt động hiệu giá thành rẻ Ngoài ra, mobile robots sử dụng nhiệm vụ thám hiểm, hay nhiệm vụ liên quan đến môi trường độc hại nguy hiểm cho người [27] 3 1.1.2 Bài tốn xác định vị trí tìm đường Trong vấn đề nghiên cứu liên quan đến mobile robots tốn xác định vị trí tìm đường tốn quan trọng nghiên cứu, phát triển giải pháp hiệu Đối với tốn tìm đường, mục tiêu tốn tìm đường phù hợp cho robots Đường phù hợp đường thỏa mãn hai tiêu chí: Có khả dẫn tới đích, đường ngắn Bài tốn giải cách thủ cơng nhờ người lập trình giải việc cho robot dò đường Tuy nhiên, nhược điểm cách đường khơng khơng phải đường ngắn nhất, đồ phức tạp độ khó việc tìm đường tăng lên Phương hướng giải thứ hai áp dụng thuật tốn tự động Theo đó, đường đến đích phù hợp tìm cách tự động, tốc độ việc tìm đường phụ thuộc vào loại thuật toán áp dụng Ưu điểm phương pháp đường tìm cách tự động, số thuật tốn tìm đường tự động chứng minh tìm đường ngắn Tuy nhiên, để áp dụng thuật tốn tìm đường tự động cần phải có thơng tin đồ Ngồi tốn tìm đường tốn khác cần giải để mobile robots đến đích, tốn định vị (localization) Bài tốn phân thành hai loại, dựa theo môi trường hoạt động robot sau: Định vị trời (outdoor localization) định vị nhà (indoor localization) Hình 1.2 Nhiều cơng nghệ áp dụng lúc để định vị định hướng cho mobile robots [16] Trong tốn định vị ngồi trời giải đơn giản cách sử dụng cảm biến GPS tốn định vị nhà lại khó giải nhiều tín hiệu GPS bị yếu, thường không ổn định môi trường nhà Do đó, tốn định vị nhà nghiên cứu, tìm phương pháp giải thích hợp, ví dụ áp dụng lúc nhiều công nghệ để định vị định hướng cho robot (hình 1.2) Hiện có số phương pháp giải toán sử dụng bluetooth, xử lý ảnh, hệ thống định vị sóng radio, NFC, RFID, hay wifi [4, 11]: - BLE Beacons: Đây thiết bị kích thước nhỏ gắn tường bề mặt thiết kế chuyên dụng việc định vị nhà Theo đó, mobile robots phát tín hiệu từ BLE Beacons, tính tốn vị trí thơng qua việc tính tốn khoảng cách so với BLE Beacons Hình 1.3 Thiết bị BLE Beacons sử dụng công nghệ bluetooth [11] - AprilTags: Đây phương pháp giá rẻ sử dụng công nghệ xử lý ảnh để định vị Theo đó, điểm đánh dấu (markers) làm theo mẫu AprilTags dán vị trí cần thiết Mobile robots trang bị camera nhận diện ký hiệu tính tốn vị trí Hình 1.4 Hệ thống đánh dấu AprilTags [11] - Ngồi phương pháp trình bày cịn số phương pháp khác sử dụng hệ thống định vị sóng radio (hình 1.5), sử dụng hệ thống NFC tags (hình 1.6) hay hệ thống RFID tags (hình.17) Một số nhược điểm tồn phương pháp sau: o Giá thành cao o Một số phương pháp có độ linh động khơng cao, vị trí cần xác định lại phải gắn module o Nhiều phương pháp giải toán định vị định hướng, khơng giải tốn đường Hình 1.5 Hệ thống định vị sóng radio [17] Hình 1.6 Hệ thống NFC tags [11] 6 Hình 1.7 Hệ thống RFID passive tags [11] 1.2 Mục đích, đối tượng, nội dung nghiên cứu, giới hạn luận văn 1.2.1 Mục đích, đối tượng nghiên cứu luận văn Hình 1.8 Một mobile robot bám vạch có nhiệm vụ vận chuyển nguyên vật liệu [23] 7 Đối tượng nghiên cứu luận văn mobile robot dạng bám vạch Có thể phân loại mobile robots thành hai loại bám vạch không bám vạch Mỗi loại mobile robots có ưu nhược điểm riêng bảng 1-1 Bảng 1-1 So sánh ưu, nhược điểm mobile robots bám vạch không bám vạch Mobile robots không bám Mobile robots bám vạch vạch Ưu điểm Độ linh động cao phạm vi Hoạt động ổn định hoạt động khơng bị giới hạn Chi phí thường thấp so với vạch mobile robots không bám vạch Nhược điểm Cần kết hợp nhiều loại cảm Độ linh động so với biến phương mobile robots bám vạch pháp định hướng để hoạt động ổn định, chi phí thường đắt Hiện tại, mobile robots bám vạch di chuyển thường định vị cách đánh dấu (tạo markers) sau: Tại vị trí cần định vị (thường ngã rẽ) sử dụng thêm mã hóa IR [7] LED [1] để làm dấu Tuy nhiên, nhược điểm phương pháp áp dụng môi trường làm việc không yêu cầu độ linh hoạt cao vị trí cần đến phương tiện lại phải đặt dấu (markers) muốn thay đổi lại vị trí phải can thiệp vào việc xếp dấu Hình 1.9 Hệ thống đánh dấu cho mobile robots bám vạch từ [18] 8 Ngoài ra, mobile robots dạng này, khơng muốn tìm đường thủ cơng cho robots cho robots tiến hành dị đường Tuy nhiên, việc cho robots dị đường tốn cơng sức thời gian trường hợp đồ phức tạp việc dị đường cịn khơng thể thực trường hợp đồ có chứa vịng lặp Hình 1.10 Bản đồ chứa vịng lặp khiến cho số thuật tốn dị đường bám biên khơng thể giải Vì vậy, mục đích đối tượng nghiên luận văn tìm ứng dụng cơng nghệ xử lý ảnh thuật tốn tìm đường vào mobile robots bám vạch để giải đồng thời tốn định vị, tìm đường, dẫn hướng khắc phục số nhược điểm tồn việc di chuyển mobile robots dạng bám vạch nêu 1.2.2 Nội dung nghiên cứu luận văn Để đạt mục đích mục đích trên, luận văn tập trung vào nội dung sau: - Ứng dụng công nghệ xử lý ảnh việc tạo đồ, truy bắt định vị robots - Ứng dụng thuật tốn tìm đường tự động việc tìm đường cho robots - Ứng dụng công nghệ in 3D việc thiết kế, chế tạo khung vỏ cho robots - Thiết kế, chế tạo robots có khả bám vạch có khả dẫn hướng thơng qua công nghệ giao tiếp không dây 9 Hệ thống xây dựng gồm chương trình xử lý ảnh mobile robot có khả liên kết với hoạt động theo nguyên lý hình 1.11 Hình 1.11 Nguyên lý hoạt động hệ thống Ảnh gửi từ camera gắn thu thập chương trình xử lý ảnh laptop Sau đó, chương trình xử lý ảnh xử lý, phân tích gửi liệu đường tới robot theo thời gian thực Mobile robots liên tục cập nhật liệu từ cảm biến liệu gửi từ chương trình xử lý ảnh để di chuyển đến đích 1.2.3 Giới hạn luận văn Từ lý thuyết đến thực tế chặng đường dài, với tốc độ phát triển cơng nghệ kiến thức thay đổi không ngừng Với tầm hiểu biết hạn hẹp tác giả khó lịng giải nhiều u cầu thực tế nhiều cần thêm yêu cầu khiến khối lượng kiến thức liên quan độ khó tăng lên nhiều lần Do đó, luận văn tập trung vào xây dựng hệ thống chứng minh tính khả thi luận văn giới hạn sau: - Mobile robots việc đáp ứng yêu cầu luận văn khơng cịn nhiệm vụ khác, ví dụ tải nặng - Hệ thống thiết kế lấy ảnh đầu vào từ camera, thỏa mãn yêu cầu luận văn chưa thiết kế để xử lý hết tình đặc biệt, đột xuất xảy 10 CHƯƠNG THIẾT KẾ MOBILE ROBOT 2.1 Cấu tạo tổng quát mobile robot Mobile robot thiết kế luận văn gồm có phận sau: - Bộ phận khung, vỏ: Phần khung, vỏ có tác dụng liên kết phận khác robot Đồng thời, có tác dụng việc tăng độ cứng vững, bảo vệ robot khỏi tác động từ bên - Bộ phận cơng suất: Bộ phận cơng suất có tác dụng cung cấp lượng cho robot hoạt động Bộ phận phải cung cấp công suất đủ lớn khối lượng khơng q nặng Do đó, mobile robot sử dụng hệ pin Li-Ion làm nguồn cung cấp lượng - Bộ phận truyền động: Mobile robot dẫn động hai bánh chủ động bánh dẫn hướng Các bánh chủ động điều khiển hai động DC giảm tốc - Hệ thống cảm biến giao tiếp: Cảm biến có nhiệm vụ thu thập thơng tin từ mơi trường hỗ trợ q trình điều khiển robot Robot luận văn trang bị cảm biến dị line QTR-5RC để hỗ trợ bám vạch Ngồi ra, robot trang bị module NRF24L01+ để hỗ trợ giao tiếp với chương trình xử lý ảnh máy tính - Bộ phận mạch điều khiển: Module điều khiển trung tâm có vai trị điều khiển hoạt động mobile robot thơng qua q trình xử lý tín hiệu từ cảm biến, điều khiển động thông qua module L298N giao tiếp với máy tính qua NRF24L01+ Board điều khiển sử dụng Arduino Uno 2.2 Thiết kế phần khung, vỏ cho mobile robot Để mobile robot hoạt động ổn định phần khung, vỏ đóng vai trò quan trọng Khung, vỏ robot giúp kết nối, cố định xếp hợp lý phận robot bánh xe, linh kiện, bảng mạch pin Từ đó, giúp cho robot có ổn định vững trình vận hành Ngồi ra, phần khung vỏ cịn có tác dụng tăng tính cá nhân hóa thẩm mỹ cho robot Xuất phát từ yêu cầu trên, phần khung vỏ robot thiết kế chế tạo dựa vào công nghệ in 3D FDM 2.2.1 Ứng dụng công nghệ in 3D FDM việc thiết kế khung, vỏ cho robot Cơng nghệ in 3D q trình cơng nghệ nhằm tạo mơ hình vật thể 3D từ 11 mơ hình 3D thiết kế máy tính (CAD) Q trình thường liên tục đắp lớp vật liệu theo lớp điều khiển máy in 3D để tạo thành vật thể, cịn có tên gọi khác cơng nghệ sản xuất đắp dần (Additive Manufacturing – AM) Công nghệ in 3D có lịch sử phát triển lâu đời có bước tiến lớn xuất ngày rộng rãi sống sản xuất Các máy in 3D giá rẻ có độ xác cao nên sử dụng rộng rãi việc nghiên cứu, học tập để tạo mẫu Trong cơng nghiệp, tính đến năm 2019, xác máy in 3D tăng cao, cộng với khả hoạt động bền bỉ, phạm vi nguyên liệu mở rộng đưa cơng nghệ in 3D góp mặt nhiều trình sản xuất Một lợi lớn công nghệ in 3D khả chế tạo vật thể có hình dạng kết cấu phức tạp, ví dụ phận rỗng có kết cấu đặc biệt bên Công nghệ in 3D ứng dụng nhiều lĩnh vực khác như: - Thời trang Giáo dục, nghiên cứu Xây dựng Giao thông Quân Y tế - Hình 2.1 Một mơ hình in theo cơng nghệ FDM [22] Có nhiều cơng nghệ khác phát triển để in 3D, ví dụ FDM, SLA, SLS Trong đó, cơng nghệ FDM ( fused deposition modeling – tạo mơ hình cách hợp lắng đọng) sử dụng phổ biến cả, chiếm tới 12 46% theo thống kê năm 2018 [22] Công nghệ đời sau, có ưu điểm giá thành rẻ nên có độ phổ biến cao, công nghệ lựa chọn để chế tạo phần khung vỏ cho mobile robot luận văn 2.2.1.1 Quy trình tạo mẫu theo cơng nghệ in 3D FDM: - Tạo mơ hình 3D: Mơ hình 3D tạo cách thiết kế phần mềm chuyên dụng thông qua việc quét mẫu máy quét laser (laser scanner) - Tạo file in 3D: Đây trình tạo file để nạp trực tiếp vào máy in 3D Quá trình chất nhằm chia mơ hình thành lớp để in 3D (slicing) thực trợ giúp phần mềm chuyên dụng Trong q trình này, việc thiết lập thơng số, ví dụ độ rỗng, nhiệt độ in, tốc độ in ảnh hưởng trực tiếp đến chất lượng vật thể in 3D tạo thành - In 3D vật thể: Trong trình này, máy in 3D in lớp xếp chồng lên để tạo thành vật thể Theo đó, vật liệu sử dụng sợi nhựa PLA hay ABS kéo làm nóng chảy qua module sinh nhiệt Sau đó, theo di chuyển đầu phun in thành lớp xếp chồng lên Các lớp trình nguội liên kết với tạo thành vật thể - Hậu xử lý: Đây trình loại bỏ phần nâng đỡ vật thể trình in (support) đánh bóng vật thể theo nhiều phương pháp khác để vật thể đạt độ bóng độ thẩm mỹ mong muốn 2.2.1.2 Ưu, nhược điểm công nghệ in 3D FDM: Cơng nghệ in 3D FDM có số ưu, nhược điểm trình bày bảng 2-1 Bảng 2-1 Một vài ưu, nhược điểm công nghệ in 3D FDM Ưu điểm - Nhược điểm - Thời gian in lâu - Các máy giá rẻ in vật liệu dễ nóng chảy Giá thành rẻ Nguyên liệu sử dụng đa dạng Độ phổ biến cao nên dễ tiếp cận Thích hợp cho trình tạo mẫu 13 PLA - Việc thiết kế mơ hình thiết lập thơng số ảnh hưởng lớn đến chất lượng mơ hình, u cầu kinh nghiệm người sử dụng - Không phù hợp cho trình sản xuất hàng loạt 2.2.2 Thiết kế, chế tạo khung vỏ robot công nghệ in 3D FDM Mobile robot thiết kế để đảm bảo yêu cầu sau: - Dễ dàng tháo lắp Sắp xếp hợp lý phận Tiện lợi trình sử dụng Đủ độ cứng vững Có tính thẩm mỹ Dựa u cầu trên, mơ hình 3D robot thiết kế hình 2.2 2.3 hồn thiện hình 2.4 Hình 2.2 Mặt trước mơ hình 3D mobile robot 14 Hình 2.3 Mặt sau mơ hình 3D mobile robot Hình 2.4 Mơ hình mobile robot hồn thiện 15 2.3 Thiết kế mạch nguyên lý cho mobile robot Mạch nguyên lý hệ thống thiết kế hình 2.5 Trong bao gồm module chính: - Module truyền liệu gồm board Arduino chip NRF24L01+ Chương trình xử lý ảnh gửi liệu tới mobile robot qua module truyền liệu - Module nhận liệu mobile robot, gồm chip Arduino, cảm biến, nguồn, động cơ, module L298 module NRF24L01+ Hình 2.5 Mạch nguyên lý hệ thống gồm hai phần: module phát tín hiệu mobile robot 2.4 Thiết lập chế độ làm việc cho linh kiện 2.4.1 Arduino Uno Board Arduino Uno trọn làm điều khiển trung tâm robot Board Arduino Uno phát triển để hỗ trợ cho việc học tập, nghiên cứu, dự án tạo mẫu (phát triển sản phẩm thử nghiệm) Board có đặc tính kỹ thuật để đáp ứng cho mục đích luận văn như: 16 - Tần số làm việc cao: 16MHz Bộ nhớ flash: 32 KB Số lượng chân vào số: 14 (6 chân tạo xung PWM) Số lượng chân tương tự: Hỗ trợ giao tiếp SPI, I2C, Serial [9] Arduino Uno thực nhiệm vụ sau: - Đọc tín hiệu từ cảm biến dị line - Giao tiếp với module NRF24L01 để truyền nhận liệu - Điều khiển hoạt động robot dựa liệu từ cảm biến dò line liệu nhận qua giao tiếp không dây - Xuất tín hiệu module L298 để điều khiển động Hình 2.6 Board Arduino Uno [9] 2.4.2 QTR – 5RC Để robot bám đường cảm biến hồng ngoại sử dụng phổ biến đặc điểm đường dạng vạch (line) thường đen vạch trắng trắng vạch đen Tia hồng ngoại bị hấp thụ gần hoàn toàn đen bị phản xạ gần hoàn toàn trắng giúp cho cảm biến hồng ngoại gần lựa chọn đơn giản hiệu muốn robot bám theo vạch Có nhiều loại cảm biến hồng ngoại sản xuất để sử dụng ứng dụng khác ví dụ cảm biến hồng ngoại tiệm cân hay cảm biến 17 PIR Trong số đó, QTR-RC loại cảm biến hồng ngoại sản xuất để phục vụ việc dò line với đặc điểm gồm nhiều cặp led thu phát giá trị trả liên tục Một vài thơng số cảm biến sau: Hình 2.7 Cảm biến QTR - 5RC [16] - Điện áp sử dụng: 3.3~5VDC Dòng tiêu thụ: 𝛼 { 𝑋, 𝐷𝑖 < 𝛽 𝑁𝐴, 𝑘ℎô𝑛𝑔 𝑥é𝑡 Với: - Di: Giá trị analog tín hiệu cặp thu phát thứ i - 𝛼: Giá trị ngưỡng lọc - 𝛽: Giá trị ngưỡng lọc Bảng 2-3 Kết xác định ngã rẽ hành vi robot dựa tín hiệu trả cảm biến dò line Cặp thu phát Cặp thu phát Cặp thu phát Cặp thu phát Cặp thu phát O O O O O Gặp ngã rẽ O Ngã rẽ phải ngã rẽ phải thẳng Cần thêm khoảng inch đọc lại tín hiệu đường cụt rẽ phải Nếu khơng phải tức trường hợp ngã rẽ phải thẳng X Ngã rẽ trái ngã rẽ trái thẳng Cần thêm khoảng inch X O NA NA O O NA NA Kết hành vi 26 đọc lại tín hiệu đường cụt rẽ trái Nếu tức trường hợp ngã rẽ trái thẳng X X X X X Đường cụt X X X X O Không gặp ngã rẽ, bám vạch X X X O O Không gặp ngã rẽ, bám vạch X X X O X Không gặp ngã rẽ, bám vạch X X O O X Không gặp ngã rẽ, bám vạch X X O X X Không gặp ngã rẽ, bám vạch X O O X X Không gặp ngã rẽ, bám vạch X O X X X Không gặp ngã rẽ, bám vạch O O X X X Không gặp ngã rẽ, bám vạch O X X X X Không gặp ngã rẽ, bám vạch 27 CHƯƠNG XÂY DỰNG CHƯƠNG TRÌNH XỬ LÝ ẢNH VÀ ĐỊNH HƯỚNG CHO MOBILE ROBOT 3.1 Mục đích nội dung chương trình Chương trình xử lý ảnh viết ngôn ngữ C++ kết hợp với việc sử dụng thư viện OpenCV có mục đích định vị, tìm đường dẫn hướng cho robot trình di chuyển theo thời gian thực Để đạt mục tiêu đó, chương trình cần phải giải nội dung sau: - Có khả tương tác với người sử dụng Người dùng chương trình chọn vị trí đích cho robot cách kích chuột - Tạo đồ xác định đường công nghệ xử lý ảnh, Tìm đường ngắn đến đích theo thuật tốn tìm đường - Định vị robot Chương trình phải có khả định vị robot theo thời gian thực để cập nhật vị trí robot - Giao tiếp với thiết bị ngoại vi để gửi tín hiệu dẫn hướng cho robot theo thời gian thực 3.2 Ứng dụng công nghệ xử lý ảnh luận văn 3.2.1 Tổng quan xử lý ảnh Theo [25], Xử lý ảnh hay gọi thị giác máy (Computer Vision) lĩnh vực liên quan đến việc xử lý liệu thu từ ảnh để giúp máy tính có thơng tin cần thiết từ ảnh Từ góc nhìn kỹ thuật nhiệm vụ xử lý ảnh cố gắng tiếp cận với tự động hóa mà hệ thống thị giác người thực Các nhiệm vụ xử lý ảnh bao gồm thu thập, xử lý, phân tích hiểu loại ảnh, từ trích lọc lớp liệu giới thực để thu liệu dạng số Các lĩnh vực xử lý ảnh bao gồm tái tạo cảnh, phát kiện, nhận diện vật thể, ước lượng chuyển động Xử lý ảnh ứng dụng rộng rãi nhiều lĩnh vực từ gia đình công nghiệp Một số ứng dụng xử lý ảnh kể đến như: - Tự động chẩn đốn: Ví dụ lĩnh vực chế tạo - Trợ giúp người nhiệm vụ phân loại, nhận diện - Kiểm sốt, điều khiển q trình: Ví dụ lĩnh vực robot công nghiệp 28 - Phát kiện Ví dụ: Các lĩnh vực giám sát thị giác đếm người - Tương tác Ví dụ: Trong lĩnh vực hỗ trợ tương tác người máy - Mơ hình hóa đối tượng mơi trường xung quanh Ví dụ: Trong lĩnh vực y tế - Định hướng Ví dụ: Trong loại phương tiện tự hành mobile robot 3.2.2 Khai thác thư viện OpenCV để hỗ trợ trình xử lý ảnh luận văn Luận văn sử dụng thư viện mã nguồn mở OpenCV (Open Source Computer Vision Library) phiên 3.2 để hỗ trợ trình xử lý ảnh Đây thư viện áp dụng sử dụng ngơn ngữ lập trình khác C++ hay Python Nhờ có trợ giúp OpenCV, người lập trình thuận tiện nhanh chóng việc xây dựng chương trình, ứng dụng liên quan đến xử lý ảnh OpenCV bao gồm 2500 thuật toán xử lý ảnh thuật toán máy học (machine learning) tối ưu Các thuật tốn sử dụng để nhận diện khuôn mặt, phân biệt vật thể, phân loại hành động người, truy bắt chuyển động vật thể hay giải nhiều toán xử lý ảnh máy học khác OpenCV thức mắt vào năm 1999 tính đến nay, sau nhiều phiên phát hành phiên thức 4.3 phát hành vào ngày 3/4/2020 Hình 3.1 Các module thư viện OpenCV [25] 29 OpenCV gồm module hình 3.1: - Module CV hỗ trợ trình xử lý ảnh - Module MLL gồm công cụ thống kế, phân loại hỗ trợ trình máy học (machine learning) - HighGUI hỗ trợ trình tạo giao diện, tương tác với người dùng - CXCore bao gồm cấu trúc liệu [29] 3.2.3 Một số khái niệm thuật ngữ quan trọng xử lý ảnh sử dụng luận văn - Điểm ảnh (Pixel): Điểm ảnh đơn vị nhỏ tạo thành ảnh Mỗi ảnh coi tập hợp gồm nhiều điểm ảnh Ảnh có độ phân giải cao chứa nhiều điểm ảnh dù kích thước Ảnh có độ phân giải cao độ sắc nét chi tiết gần với thực tế, xử lý khiến tốc độ chương trình chậm khối lượng liệu nhiều - Ảnh số (Digital Image): Đây ảnh số hóa nhằm phục vụ q trình lưu trữ xử lý , trích xuất liệu Có thể coi ảnh số ma trận nhiều chiều chứa liệu số hóa ảnh - Khơng gian màu: Có nhiều cách khác để đánh giá màu sắc tạo thành từ yếu tố Và cách đánh giá, biểu diễn khơng gian màu Do đó, ảnh có ma trận liệu khác lưu trữ khơng gian màu khác Có hai không gian màu thường sử dụng RGB HSV Trong không gian màu RGB, màu sắc cụ thể coi pha trộn kết hợp theo tỉ lệ định ba màu Đỏ (Red), Lục (Green) Lam (Blue) [24] Ảnh số thu OpenCV mặc định lưu không gian màu Trong khơng gian màu HSV màu sắc cụ thể lại coi kết hợp ba yếu tố Sắc thái (Hue), Độ bão hòa màu (Saturtion) Cường độ sáng (Value -Brightness) [26] Trong đó, Hue định giá trị màu sắc bản, Saturation định độ đậm nhạt màu (mức độ có mặt màu, hay cịn gọi độ bão hòa màu) giá trị Value định mức độ sáng tối màu Việc phân chia theo ba yếu tố thuận lợi ứng dụng liên quan đến việc nhận diện màu sắc, ảnh số khơng gian màu RGB thường chuyển sang không gian màu HSV 30 - Ảnh xám (grey scale image) ảnh nhị phân (binary image) Khác với ảnh màu, ảnh xám ảnh lưu không gian chiều, pixel có giá trị từ đến 255 thể mức xám khác Ảnh xám tạo từ kết hợp thành phần không gian màu ảnh màu Ảnh nhị phân ảnh chiều mà điểm ảnh có hai giá trị Hình 3.2 Khơng gian màu RGB [24] Hình 3.3 Không gian màu HSV [26] 31 3.3 Xây dựng nguyên lý hoạt động chương trình xử lý ảnh Chương trình xử lý ảnh có ngun lý hoạt động hình 3.4 Khi hoạt động, chương trình tạo đồ số từ ảnh thu từ camera Bước gồm loạt trình như: Cho phép người sử dụng xác định vùng quan tâm ảnh kỹ thuật ROI, xác định line kỹ thuật phân ngưỡng nhị phân ngược, thu gọn kích thước line, tiến hành chia lưới để phục vụ cho thuật tốn tìm đường áp dụng sau Hình 3.4 Nguyên lý hoạt động chương trình xử lý ảnh 32 Sau đó, chương trình khởi tạo trình nhận diện robot Trong trình này, người dùng xác định vùng đánh dấu robot tiến hành thay đổi giá trị HSV để thu liệu tốt phục vụ cho trình chương trình xử lý ảnh truy bắt robot sau Tiếp đến, người dùng chọn vị trí đích robot thơng qua việc kích chuột đồ Sau xác nhận, trình tìm đường tự động thuật toán A* diễn Sau tìm đường phù hợp, chương trình truy bắt robot gửi lệnh điều khiển theo thời gian thực hướng dẫn robot tới đích 3.4 Tạo đồ 3.4.1 Dùng ROI để xác định vùng hoạt động robot ROI viết tắt Region of Interest – vùng quan tâm, kỹ thuật rất hữu dụng xử lý ảnh [2] Kỹ thuật giúp thiết lập lên ảnh vùng quan tâm, từ đó, việc tính tốn xảy vùng quan tâm Điều mang lại lợi ích sau: - Khối lượng tính tốn giảm bớt - Các vùng không quan tâm loại bỏ đồng nghĩa với việc giảm thiểu khả tính tốn sai ảnh hưởng “nhiễu” Hình 3.5 Bản đồ trước áp dụng ROI (trái) đồ sau áp dụng ROI (phải) 33 Chương trình xử lý ảnh luận văn cho phép người sử dụng kiện chuột để khoanh vùng ROI Trong mô hình xây dựng để thử nghiệm khoảng cách camera đồ tương đối gần Do đó, kỹ thuật ROI sử dụng để cắt phần nhỏ đồ để tránh việc phần robot di chuyển nằm vùng quan tâm Tuy giảm phần nhỏ khối lượng tính tốn, việc áp dụng ROI có ý nghĩa quan trọng việc giúp ảnh có tính chất bimodal, thuận lợi việc xác định đường Trên hình 3.5, việc áp dụng ROI giúp làm giảm phần đồ quan trọng loại bỏ phần màu vàng nhà, từ giúp ảnh có tính chất bimodal, giúp chương trình thuận lợi trình phân ngưỡng tìm line 3.4.2 Xác định đường robot (tìm line) Vạch đồ đường để giúp AGV di chuyển Do đó, chương trình cần xác định đâu vạch đồ để áp dụng thuật tốn tìm đường Dù vạch tạo từ băng dính thường, sơn hay vạch từ (magnetic line) có đặc điểm màu sắc thường tương phản lớn so với Vì vậy, thuật toán phân ngưỡng nhị phân ngược áp dụng để tìm đường [2]: 0, 𝑑𝑠𝑡(𝑥, 𝑦) = { 𝑚𝑎𝑥𝑣𝑎𝑙, 𝑠𝑟𝑐(𝑥, 𝑦) > 𝑡ℎ𝑟𝑒𝑠ℎ 𝑠𝑟𝑐(𝑥, 𝑦) ≤ 𝑡ℎ𝑟𝑒𝑠ℎ Trong đó: 𝑑𝑠𝑡(𝑥, 𝑦) giá trị pixel sau phân ngưỡng 𝑠𝑟𝑐(𝑥, 𝑦) giá trị gốc pixel trước phân ngưỡng 𝑚𝑎𝑥𝑣𝑎𝑙 giá trị lớn pixel 𝑡ℎ𝑒𝑠ℎ ngưỡng dùng để phân ngưỡng Việc xác định Thresh kết tốt tương đối phức tạp giá trị phụ thuộc vào đồ thực tế, điều kiện ánh sáng chiếu vào đồ Nếu chọn giá trị không xác khiến việc xác định line khơng xác (thừa line) Do đó, chương trình xây dựng với giá trị thresh nằm trượt Điều giúp người dùng thay đổi cách nhanh chóng giá trị thresh xem kết thu để từ tinh chỉnh cho kết tốt 34 Trong điều kiện ảnh thỏa mãn tính chất bi-modal histogram (ảnh có histogram dạng phân thành hai cực gần đều) dùng phân ngưỡng Otsu (Otsu’ method) để tìm ngưỡng cách tự động [6] Kết thu thử nghiệm đồ (hình 3.6 3.7) cho thấy vạch xác định hồn tồn xác khơng bị nhiễu điều kiện ánh sáng không đồng đều, vùng ảnh có độ sáng khơng Hình 3.6 Kết xác định vạch theo phương pháp phân ngưỡng nhị phân ngược đồ Hình 3.7 Kết xác định vạch theo phương pháp phân ngưỡng nhị phân ngược đồ 35 3.4.3 Thu nhỏ kích thước vạch Khác với loại đồ khác, đường AGV bám vạch vạch với đặc điểm dài, mảnh Điều khiến cho việc chia lưới mỏng gặp nhiều khó khăn khả xảy tình trạng sai thiếu thơng tin vạch Do đó, pixel ảnh xác định nút Vì vậy, cần phải làm giảm kích thước vạch để phần giảm khối lượng tính tốn mà đảm bảo khơng làm sai lệch liệu tính tốn Có thể sử dụng thuật tốn tự động skeleton để thu nhỏ vạch, nhược điểm sinh đường nét thừa làm đứt vạch Đây điều chấp nhận làm sai lệch tính chất thơng tin đường robot Do đó, hình thái co ảnh kết hợp với trượt định giá trị kernel sử dụng để thu nhỏ đường Phép toán hình thái co ảnh (erosion) [2]: 𝑑𝑠𝑡(𝑥, 𝑦) = 𝑥 ′ ,𝑦 ′ ∈ 𝑘𝑒𝑟𝑛𝑒𝑙 𝑠𝑟𝑐(𝑥 + 𝑥 ′ , 𝑦 + 𝑦 ′ ) Trong đó: 𝑑𝑠𝑡(𝑥, 𝑦) giá trị pixel sau áp dụng co ảnh 𝑠𝑟𝑐(𝑥 + 𝑥 ′ , 𝑦 + 𝑦 ′ ) giá trị pixel thuộc vùng ma trận mỏ neo có vị trí 𝑥 + 𝑥 ′, 𝑦 + 𝑦′ 𝑘𝑒𝑟𝑛𝑒𝑙 kích thước ma trận mỏ neo Kết hình 3.8 3.9 cho thấy phạm vi vạch giảm đáng kể sau áp dụng thuật toán co ảnh Phạm vi vạch giảm đồng nghĩa với việc số nút thuộc vạch giảm, từ làm tăng tốc độ tìm đường áp dụng thuật tốn A* số nút phải xét giảm 36 Hình 3.8 Kết làm giảm kích thước vạch đồ phép toán co ảnh Hình 3.9 Kết làm giảm kích thước vạch đồ phép toán co ảnh 3.4.4 Chia nút xác định thông số nút Thuật tốn tìm đường thực với sở xét nút Do đó, đồ cần chia thành nút với đầy đủ thông số để áp dụng thuật tốn tìm đường Ví dụ việc chia nút cho đồ thể hình 3.10 Với đặc tính vạch kích thước dài mảnh, nên để khơng bỏ xót gây sai lệch thơng tin vạch pixel ảnh gán nút với 37 liệu sau [8]: - Vị trí nút Nút có thuộc đường hay khơng Giá trị chi phí tổng Giá trị chi phí từ nút xuất phát Giá trị chi phí tương đối đến đích Có phải nút xuất phát hay nút đích khơng Đã nằm danh sách nút xét chưa Vị trí nút mẹ nút Hình 3.10 Ví dụ việc chia lưới đồ mà đường có kích thước lớn [8] 3.5 Ứng dụng thuật toán Camshift việc truy bắt, định vị robot 3.5.1 Giới thiệu thuật toán Camshift Thuật toán Camshift thuật toán dạng phân đoạn ảnh phát triển Gary Bradski Thuât toán dựa thuật toán meanshift phát triển với ưu điểm kích thước cửa sổ lọc thay đổi Thuật toán Camshift thường sử dụng truy bắt đối tượng theo thời gian thực (real-time object tracking) 38 3.5.1.1 Thuật tốn meanshift Hình 3.11 Cửa sổ lọc trượt đến trọng tâm tập hợp điểm [15] Thuật tốn meanshift hoạt động dựa ngun lý tìm cực đại phân phối xác suất Trên hình 3.11 chấm đỏ thể tập hợp điểm (có thể phân phối pixel histogram back projection – hình chiếu ngược histogram) Cửa sổ lọc tạo sẵn (ở hình trịn xanh da trời C1 với tâm C1_o) Ý tưởng thuật toán meanshift liên tiếp dịch chuyển cửa sổ lọc hội tụ trọng tâm tập hợp điểm Rõ ràng, phạm vi C1 tâm C1 C1_o không trùng với trọng tâm tập hợp điểm vùng C1_r Do đó, cửa sổ lọc trượt đến vị trí cho tâm trùng với C1_r Tại vị trí cửa sổ lọc, thuật toán lại tiếp tục tính trọng tâm tập hợp điểm phạm vi cửa sổ lọc, so sánh với trọng tâm cửa cửa sổ lọc tiếp tục trượt cửa sổ lọc Cuối cùng, tâm cửa sổ lọc hội tụ tâm tập hợp điểm cho Và vậy, cuối cùng, cửa sổ lọc thu có phân phối điểm lớn [15] 3.5.1.2 Thuật toán Camshift Thuật toán Camshift giống thuật toán meanshift, tức hoạt động dựa nguyên lý tìm cực đại phân phối xác suất Nhưng điểm khác biệt quan trọng kích thước cửa sổ lọc thay đổi liên tục thích nghi theo kích thước hướng quay đối tượng Đây điều quan trọng thực tế đối tượng truy bắt xoay hướng có kích thước thay đổi khoảng cách từ đối tượng đến camera thay đổi Do đó, kích thước 39 cửa sổ lọc thay đổi thích nghi theo đối tượng giúp nâng cao độ xác việc truy bắt Hình 3.12 thể kết truy bắt đối tượng cụ thể tơ Có thể thấy được, ô tô tiến gần tới camera kích thước lớn Tuy nhiên, kích thước cửa sổ lọc (hình chữ nhật màu xanh cây) không thay đổi trình Điều dẫn đến việc thuật tốn truy bắt đối tượng lệch khỏi tâm đối tượng khiến cho khả không truy bắt đối tượng tăng lên Trong đó, hình 3.13 thể kết truy bắt đối tượng thuật tốn Camshift Có thể thấy, kích thước cửa sổ lọc thay đổi thích nghi với kích thước đối tượng, nên kết truy bắt không bị lệch khỏi đối tượng đối tượng thay đổi kích thước 40 Hình 3.12 Trong thuật tốn meanshift, kích thước cửa sổ lọc khơng thay đổi theo thay đổi đối tượng [15] 41 Hình 3.13 Trong thuật tốn Camshift, kích thước hướng cửa sỏ lọc thay đổi theo thay đổi đối tượng [15] 42 3.5.2 Truy bắt robot theo thuật toán Camshift 3.5.2.1 Giới thiệu histogram Histogram phương pháp biểu diễn liệu dạng phân phối Trong xử lý ảnh, liệu dùng để tạo histogram đa dạng, ví dụ cường độ ảnh xám, giá trị dải HSV, RGB Để tạo histogram dải bin (các vùng giới hạn liệu) cần phải tạo Sau đó, liệu nằm dải giá trị bin thống kê vào bin tương ứng Tiêu chí để xét việc thống kê, phân loại phụ thuộc vào mục đích việc tạo Histogram Vẽ đồ thị giá trị thống kê theo bin thu biểu đồ histogram Dữ liệu biểu diễn dạng biểu đồ histogram cung cấp cho người sử dụng nhìn rõ ràng, trực quan việc phân phối liệu, từ xử lý cho phù hợp Hình 3.14 Sự thay đổi Histogram dải chia lưới thay đổi [2] Hình 3.14 cho thấy kết việc tạo Histogram thay đổi theo dải chia lưới Khi chia làm q dải, kết Histogram lập khơng cho thấy nhiều ý nghĩa phân bố liệu Còn việc chia lưới dày cho kết xác tạo nhiều đỉnh cục giảm ý nghĩa việc đưa nhìn tổng thể phân bố liệu 43 3.5.2.2 Giới thiệu histogram back projection Back projection việc sử dụng histogram việc tìm thuộc tính liên quan đến histogram ảnh Mỗi pixel ảnh đầu vào thay giá trị tương ứng xác suất liệu pixel histogram tạo Do đó, back projection dùng để tạo liệu truy bắt thuật tốn Meanshift Camshift [13] Hình 3.15 Ảnh gốc, histogram backprojection tương ứng [13] 3.5.2.3 Xác định vị trí xác định hướng robot Thuật tốn Camshift áp dụng để truy bắt robot, từ xác định vị trí hướng robot [3] Để áp dụng thuật tốn điều quan trọng tạo liệu cho việc truy bắt (ở tập hợp điểm để thuật tốn tìm phân bố cực đại) Do đó, thân robot đánh dấu hai vùng có màu sắc khác (hình 3.16) thỏa mãn yêu cầu: - Nếu có nhiều robot hoạt động robot đánh dấu khác để phân biệt - Đánh dấu cho dựa vào vùng đánh dấu để xác định hướng robot - Việc đánh dấu thực băng dính màu đèn led điều kiện khơng đủ ánh sáng 44 Hình 3.16 Robot tự hành đánh dấu nhận dạng hai vùng màu khác thân Từ đó, liệu phục vụ truy bắt thơng qua việc tính histogram back projection cho hai vùng thực sau: - Thiết lập ROI để giới hạn phạm vị tính toán vùng đánh dấu - Lọc dải màu tính histogram Từ đó, robot định vị thơng qua việc liên tiếp tính back projection áp dụng thuật tốn camshift cho vịng lặp chương trình (hình 3.17) Các giá trị HSV dùng để phân ngưỡng chỉnh để đạt kết định vị tốt hình 3.18 Kết cho thấy sau chọn giá trị HSV thích hợp việc phân ngưỡng đạt kết tốt, nhiễu ảnh loại bỏ nhiều 45 Hình 3.17 Kết định vị mobile robot số vị trí khác 46 Hình 3.18 Kết giảm nhiễu nhờ việc tinh chỉnh giá trị HSV dùng để phân ngưỡng 3.6 Tìm đường cho robot Có thể phân loại cách giải tốn tìm đường cho robot theo hai trường hợp sau: Trường hợp 1: Robot chưa biết trước thông tin đồ Trong trường hợp đồ có, khơng sử dụng cảm biến bao quát đồ camera, nên thông tin đồ robot coi chưa có Trong trường hợp dựa theo dạng đồ mà robot lập trình để tới đích cách thủ cơng phải lập trình theo hướng tiến hành chạy dị line Sau dị line xong, robot thơng qua thuật tốn thu đường thích hợp để đến đích Một số thuật tốn dị đường phổ biến sau [30]: - Thuật toán bám theo tường: Thuật toán áp dụng với điều kiện mê cung liền mạch, không bị đứt đoạn Với mê cung thỏa mãn điều kiện trên, robot cần liên tục bám theo tường trái tường phải đến đích Hình 3.19 Thuật tốn tìm đường theo quy tắc bám phải [30] 47 - Thuật toán Pledge: Phương pháp thực thuật toán kết hợp việc bám tường có xét đến việc đếm góc quay Nhờ đó, robot đến đích (thốt khỏi mê cung) đồ phức tạp hơn, việc robot đặt vị trí xuất phát bên tách hẳn khỏi phần cịn lại đồ Hình 3.20 Thuật toán Pledge giúp thoát khỏi vật cản phức tạp [30] Ngồi ra, cịn nhiều thuật tốn khác áp dụng để dị đường thuật toán ngẫu nhiên, thuật toán Tremaux, thuật toán lấp kín đường cụt Tuy nhiên, phương pháp tồn nhìn chung tồn nhược điểm sau: - Robot phải tiến hành chạy dị đường Càng có nhiều cặp vị trí xuất phát vị trí đích việc chạy dò đường phải tiến hành nhiều lần - Với dạng đồ người lập trình phải lập trình cho robot theo thuật tốn phù hợp khơng robot khơng tìm đường Ngồi ra, kết việc dị đường khơng cho kết đường ngắn phù hợp - Nếu lập trình thủ cơng đường cho robot khối lượng cơng việc tăng lên đồ phức tạp lên số lượng vị trí xuất phát, vị trí đích ngã rẽ tăng lên Đồng thời, có thay đổi đồ tồn q trình phải thực lại từ đầu 48 Trường hợp 2: Robot biết trước thông tin đồ Để robot biết trước thơng tin đồ robot cần phải trang bị loại cảm biến có khả bao qt mơi trường xung quanh cảm biến Lidar camera Trong đó, việc sử dụng camera gắn ngồi có khả bao qt mơi trường hoạt động kết nối không dây với robot giải phát hiệu việc thu thập thơng tin đồ Sau có thơng tin đồ thuật tốn tìm đường tự động áp dụng để tìm đường Thuật tốn tìm đường tự động thuật tốn giúp tìm đường cách tự động dựa liệu biết Việc tìm đường tự động dựa việc phân chia đồ thành nút, sau áp dụng thuật tốn lên nút để tìm đường Do đó, để áp dụng thuật tốn tìm đường tự động liệu đồ phải biết, để từ thu thập thơng tin nút, ví dụ nút thuộc đường đi, nút khơng thuộc đường Có nhiều thuật tốn tìm đường tự động phát triển Grass Fire, Greedy Best First Search, Dijkstra hay A* [21]: - Thuật toán Grass Fire: Trong thuật toán Grass Fire, nút lân cận với nút xét chọn làm nút xét kế tiếp, nút lân cận thuộc vật cản bỏ qua khơng xét Thuật tốn lặp lại nút đích nút xét Ưu điểm thuật toán đơn giản, tìm đường ngắn tốc độ chậm số lượng nút phải xét lớn tăng nhanh số lượng nút tăng - Thuật toán Dijkstra: Ý tưởng thuật tốn tìm kiếm có lựa chọn Tức nút lân cận nút xét thuật toán ưu tiên chọn nút làm nút xét dựa theo giá trị chi phí (cost) từ nút lân cận với nút xét Nút có chi phí nhỏ lựa chọn Thuật tốn Dijkstra phức tạp so với Grass Fire có tốc độ tìm đường nhanh số lượng nút phải xét - Thuật tốn Greedy Best First Search: Thuật tốn thuật tốn tìm kiếm có lựa chọn Nhưng thay ưu tiện lựa chọn giá trị chi phí nút lân cận nút xét thuật tốn ưu tiên lựa chọn giá trị chi phí ước lượng nút lân cận nút xét so với nút đích (heuristic) Ưu điểm thuật toán tốc độ nhanh so với Dijkstra nhược điểm đường tìm khơng phải ngắn - Thuật tốn A*: Thuật tốn A* coi kết hợp thuật 49 toán Dijkstra thuật tốn Greedy Best First Search sử dụng đồng thời giá trị chi phí từ nút lân cận so với nút giá trị chi phí ước lượng từ nút lân cận tới nút đích làm tiêu chí lựa chọn nút xét Nhờ đó, thuật tốn A* có khả tìm đường ngắn thuật toán Dijkstra, đồng thời phần lớn trường hợp có kết tìm đường nhanh thuật tốn Dijkstra, hình 3.21 Hình 3.21 Kết tìm đường thuật tốn A* (trái) thuật tốn Dijkstra (phải) [8] Trong luận văn này, thông tin đồ coi hồn tồn biết trước thu từ camera Việc tìm đường cho robot diễn tự động theo thuật toán A* với ưu điểm tóm lược sau: - Việc tìm đường diễn hồn tồn tự động mà phân chia trường hợp thủ công - Tốc độ tìm đường nhanh - Robot khơng cần phải chạy dị đường - Đường tìm xác ngắn 3.6.1 Giới thiệu thuật toán A* A* thuật tốn tìm đường giới thiệu lần đầu vào năm 1968 Peter Hart, Nils Nilsson, Bertram Raphael Sau nhiều năm phát triển từ năm 1964 để tăng tốc độ cho thuật tốn Dijkstra tới năm 1968 thuật toán A* giới thiệu chứng minh thu hoạt động tối ưu sử dụng đánh giá heuristic thích hợp Thuật tốn A* tìm đồng thời tất đường từ nút xuất phát đến tìm thấy đích Trong đường A* ưu tiên đường có khả dẫn đến đích A* giống với Dijkstra chỗ có xét đến khoảng cách qua Tuy nhiên, điểm A* cịn xét đến giá trị heuristic khoảng cách tương đối từ nút đến đích từ làm tăng tốc độ thuật tốn [5,8] 50 3.6.2 Ứng dụng thuật tốn A* tìm đường cho robot Sau chọn nút đích (đích đến) nút xuất phát (vị trí xuất phát robot) thuật tốn A* triển khai cách luận văn sau: - Chọn nút xuất phát làm nút xét cho vào danh sách nút xét - Cập nhật giá trị chi phí so với nút xuất phát G(n) nút lân cận với nút xét Việc cập nhật chi phí phải thỏa mãn điều kiện: Nút lân cận xét chưa nằm danh sách nút xét chi phí vừa tìm nhỏ chi phí trước nút Nếu chi phí cập nhật gán nút xét nút mẹ nút lân cận xét Nếu trình qt nút lân cận phát nút đích nút lân cận cập nhật giá trị nút mẹ nút đích dừng việc cập nhật chi phí nút lân cận - Tiến hành quét chọn nút làm nút xét từ danh sách nút chưa xét dựa theo giá trị chi phí F(n): F(n) = G(n) + alpha*H(n) Trong đó: G(n) chi phí từ nút xuất phát nút lân cận xét, H(n) giá trị chi phí ước lượng từ nút lân cận nút xét đến nút đích Tăng trọng số H(n) lớn giá trị thực từ nút đến nút đích làm tăng tốc độ tìm đường làm giảm độ xác kết thu Trong đó, giảm trọng số H(n) làm tăng độ xác đường tìm lại làm giảm tốc độ chương trình, số nút phải xét nhiều Nếu alpha*H(n) nhỏ chi phí xác từ nút đến đích để đảm bảo thuật tốn tìm đường xác - Sau dừng vịng lặp, tạo vector chứa điểm để lưu thông tin đường vừa tìm [8] 3.1 Dẫn hướng cho robot Chương trình xử lý ảnh dẫn hướng cho robot để đến đích thơng qua việc gửi liệu điều khiển Dữ liệu điều khiển gửi từ chương trình xử lý ảnh qua giao tiếp Serial đến module phát, module phát tiếp tụ gửi liệu điều khiển qua giao tiếp sóng radio đến robot Về để mobile robot đến đích vừa thỏa mãn yêu cầu bám vạch trơn tru, vừa kết hợp nhận lệnh điều khiển từ chương trình máy tính để bỏ bám vạch cần thiết thực hành vi khác chương trình xử lý ảnh gửi xuống cho robot liệu điều khiển sau: 51 - Một byte chứa lệnh điều khiển cho phép robot di chuyển hay dừng Lệnh điều khiển kết loạt điều kiện vị trí robot so với nút đích, chương trình cịn nhận dạng robot khơng, hay u cầu dừng robot đột ngột từ người dùng chương trình - Một byte chứa góc hướng robot hướng đường cần Hướng robot xác định thông qua việc nhận diện hai điểm robot, hướng đường cần lấy từ hai điểm thuộc đường tập điểm thuộc đường xác định thuật toán A* Robot kết hợp hai bytes với liệu từ cảm biến dò line đủ điều kiện cần để di chuyển đến đích 3.2 Kết thử nghiệm tìm đường, định vị dẫn hướng cho robot theo thời gian thực Các kết thử nghiệm tìm đường, định vị dẫn hướng cho robot vị trí khác thể hình 3.22 đến 3.29 Kết thu cho thấy đường tìm xác, robot dẫn hướng theo thời gian thực để đến đích 52 3.2.1 Kết lần thử nghiệm Hình 3.22 Kết tìm đường lần thử nghiệm 53 Hình 3.23 Kết dẫn hướng cho robot theo thời gian thực lần thử nghiệm 54 3.2.2 Kết thử nghiệm lần - Vị trí robot, vị trí chọn làm đích kết tìm đường tương ứng thể hình 3.24 - Kết dẫn hướng cho robot theo thời gian thực thể hình 3.25 Hình 3.24 Kết tìm đường lần thử nghiệm 55 Hình 3.25 Kết dẫn hướng cho robot theo thời gian thực lần thử nghiệm 56 3.2.3 Kết thử nghiệm lần - Vị trí robot, vị trí chọn làm đích kết tìm đường tương ứng thể hình 3.26 - Kết dẫn hướng cho robot theo thời gian thực thể hình 3.27 Hình 3.26 Kết tìm đường lần thử nghiệm 57 Hình 3.27 Kết dẫn hướng cho robot theo thời gian thực lần thử nghiệm 58 3.2.4 Kết thử nghiệm lần - Vị trí robot, vị trí chọn làm đích kết tìm đường tương ứng thể hình 3.28 - Kết dẫn hướng cho robot theo thời gian thực thể hình 3.29 Hình 3.28 Kết tìm đường lần thử nghiệm 59 Hình 3.29 Kết dẫn hướng theo thời gian thực lần thử nghiệm thứ 60 KẾT LUẬN Mobile robots nói chung mobile robots bám vạch nói riêng ngày phổ biến có vai trị quan trọng sống Do đó, nghiên cứu thuộc lĩnh vực thiết thực có tính ứng dụng cao Luận văn thiết kế, chế tạo mobile robot bám vạch dụng công nghệ xử lý ảnh để giải đồng thời tốn định vị, tìm đường dẫn hướng cho robot Kết đạt được: Một số kết cụ thể luận văn đạt sau: - Ứng dụng công nghệ in 3D việc thiết kế, chế tạo phần khung, vỏ cho mobile robot - Thiết kế, chế tạo mobile robot bám vạch ổn định, có khả nhận lệnh điều khiển theo thời gian thực từ chương trình xử lý ảnh qua giao tiếp không dây - Xây dựng chương trình xử lý ảnh sử dụng ảnh thu trực tiếp từ camera Chương trình áp dụng số cơng nghệ xử lý ảnh để lập đồ, định vị robot, tìm đường cho robot theo thuật tốn tìm đường A* Chương trình gửi lệnh điều khiển theo thời gian thực qua giao tiếp không dây để dẫn hướng cho robot trình hoạt động Hướng tiếp cận luận văn có ưu điểm so với cách điều khiển mobile robot bám vạch truyền thống sau: - Robot khơng cần tiến hành q trình dị đường để tìm đường - Người sử dụng tùy ý chọn đích đến cho robot nhờ kích chuột lên ảnh thu từ camera, từ nâng cao tính tương tác người sử dụng robot - Robot không cần hệ thống đánh dấu vạch để định vị, ký hiệu vị trí cần đến Nhờ sử dụng camera gắn ngồi, robot chương trình xử lý ảnh định vị nên di chuyển đến vị trí đồ mà không cần đánh dấu đường Điều làm tăng độ linh hoạt hoạt động robot - Robot không cần lập trình đường cách thủ cơng Đường robot đến vị trí đích tìm tự động việc kết hợp công nghệ xử lý ảnh thuật tốn tìm đường A* Đây ưu điểm lớn xét khía cạnh người sử dụng Nếu hệ thống đồ thay đổi, người sử 61 dụng khơng cần th chun gia lập trình lại đường cho robot, mà đường ln tìm tự động nhờ chương trình Hướng phát triển: Tuy nhiên, từ nghiên cứu đến thực tế có khoảng cách lớn Một số hướng phát triển cần nghiên cứu để nâng cao tính ứng dụng luận văn: - Cần xử lý đầu vào từ nhiều camera chương trình phải có tính liên kết để từ tăng phạm vi hoạt động mobile robots - Cải tiến thuật tốn tìm đường để tìm đường hiệu có nhiều robots hoạt động - Nâng cấp chương trình xử lý ảnh để hoạt động môi trường ánh sáng không ổn định - Ứng dụng công nghệ deep learning việc nhận dạng robots nhận diện đường - Tùy thuộc vào ứng dụng cụ thể mà trang bị thêm tính cho robot chương trình xử lý ảnh 62 DANH MỤC CƠNG TRÌNH KHOA HỌC CỦA TÁC GIẢ LIÊN QUAN ĐẾN LUẬN VĂN Trịnh Tuấn Dương (2020), “Ứng dụng xử lý ảnh việc định vị, tìm đường dẫn hướng cho phương tiện tự hành bám vạch”, Kỷ yếu Hội nghị khoa học giảng viên khoa khí doanh nghiệp, Khoa Cơ khí – Trường Đại học Giao thơng Vận tải, tr 95-102 63 TÀI LIỆU THAM KHẢO Tài liệu tiếng Anh [1]: Abdul Hannan Shaukat (2013), “A Localization Algorithm Using IR Receivers and LEDs for a Line Following Robot”, International Journal of Engineering Research and Reviews (IJERR), Vol 1, Issue 1, pp 1-4 [2]: Adrian Kaehler, Gary Bradski (2008), Learning Open CV, O’Reilly Media, pp.1-40 [3]: Chaoli Wang, Zhenyu Fu (2014), “A new way to detect the position and orientation of the wheeled mobile robot on the image plane”, IEEE International Conference on Robotics and Biomimetics [4]: Faheem Zafari, Athanasios Gkelias, Kin K Leung (2019), “A Survey of Indoor Localization Systems and Technologies”, IEEE Communications Surveys & Tutorials, Vol 21 , (Issue 3) [5]: Hart, P E.; Nilsson, N J.; Raphael, B (1968), “A Formal Basis for the Heuristic Determination of Minimum Cost Paths”, IEEE Transactions on Systems Science and Cybernetics, Vol 4, (2), pp 100–107 [6]: Kittler, Josef & Illingworth, John (1985), “On threshold selection using clustering criteria” IEEE Transactions on Systems, Man and Cybernetics, Vol 15, (5), pp 652–655 [7]: Tarneem Omar Barayyan, Enayyah Mohammed Barnawi, “Enhanced Line Follower Robot Using IR coding as an Artificial Landmark”, Confscoop.org Tài liệu tiếng Việt [8]: Trịnh Tuấn Dương (2019), “Tìm đường cho Mobile robots dựa việc tìm đường biên áp dụng thuật tốn A*”, Cơ khí Việt Nam, số Tài liệu tham khảo khác [9]: Arduino Uno datasheet [10]: DC GA25 datasheet [11]: Intorobotics.com, Cheap Methods For Indoor Robot Localization: BLE Beacon, AprilTags, WiFi SubPos, NFC and RFID 64 [12]: Nordic semiconductor, NRF24L01 datasheet [13]: Opencv.org, Back projection tutorial [14]: Opencv.org, Eroding and dilating [15]: Opencv.org, Mean-shift tutorial [16]: Popolu.com, QTR sensor [17]: Robotshop.com, Indoor localization [18]: Roboteq.com, Magnetic guide sensors [19]: Sciencenorway.no, Making robots work out where they are and where they are going [20]: ST microelectronic, L298N datasheet [21]: Theory.stanford.edu, Introduction to A* [22]: Wikipedia.org, 3D printing [23]: Wikipedia.org, AGV [24]: Wikipedia.org, Color spaces with RGB primaries [25]: Wikipedia.org, Computer Vision [26]: Wikipedia.org, HSL and HSV [27]: Wikipedia.org, Mobile Robot [28]: Wikipedia.org, OpenCV [29]: Wikipedia, Serial peripheral interface [30]: Wikipedia, Thuật tốn tìm đường mê cung 65 PHỤ LỤC 1: MỘT SỐ HÌNH ẢNH VỀ SẢN PHẨM, VÀ MƠI TRƯỜNG THỬ NGHIỆM CỦA LUẬN VĂN Phụ lục 1 Môi trường thử nghiệm hoạt động robot 66 Phụ lục Chương trình xử lý ảnh máy tính kết nối với Module phát qua giao tiếp Serial 67 Phụ lục Góc nhìn chéo Robot 68 Phụ lục Mặt bên Robot 69 Phụ lục Mặt lưng Robot 70 Phụ lục Mặt sau robot 71 Phụ lục Mặt đáy Robot 72 PHỤ LỤC 2: CƠNG TRÌNH KHOA HỌC CỦA TÁC GIẢ LIÊN QUAN ĐẾN LUẬN VĂN Hội nghị khoa học giảng viên khoa khí doanh nghiệp Khoa khí - Trường Đại học Giao thông Vận tải, năm 2020 MỤC LỤC NGUYỄN VĂN CƢỜNG, Ảnh hƣởng số thông số công nghệ đến sai lệch kích thƣớc đƣờng kính độ khơng trịn bề mặt lỗ gia cơng tia lửa điện PHẠM VĂN TIẾN, Nghiên cứu sở lý thuyết tổ hợp chỉnh lƣu 12 đập mạch hệ thống cấp điện kéo cho đồn tàu đƣờng sắt thị 10 NGUYỄN THÀNH CÔNG, Nghiên cứu ứng dụng phần mềm Solidwork xây dựng phƣơng pháp thiết kế nhanh khung xƣơng xe khách 19 PHẠM HUY KHƢƠNG, Thiết kế tổng thể hệ thống hãm toa xe khách cao cấp vận hành tin cậy đến tốc độ 120 km/h 27 NGUYỄN ĐỨC TỒN, Tính tốn độ bền má giá giá chuyển hƣớng toa xe hàng có mui phần mềm sap2000 35 NGUYỄN QUANG CƢỜNG, NGUYỄN VĂN ANG, NGUYỄN THIẾT LẬP, Phân tích rung động khung vỏ tơ có kể đến kích thích động 43 NGUYỄN VĂN HÀO, Nghiên cứu ảnh hƣởng thông số hàn đến độ bền kéo khảo sát cấu trúc tế vi liên kết hàn ma sát khuấy hợp kim nhôm 5052-O 51 VŨ DUY ĐỨC, Phƣơng pháp tối ƣu đƣờng chạy dao trình phay bề mặt dạng tự máy phay dựa việc xác định khoảng gia công hiệu 58 LÊ TOÀN THẮNG, Nghiên cứu thực nghiệm đánh giá hiệu cánh tay rô bốt bị động cho công việc nâng vật cao 67 10 PHẠM VĂN KHÁ, Nghiên cứu mô thông số hoạt động hệ thống phần mềm Enginnering Equation Solver (EES) 75 11 ĐỖ KHẮC SƠN, Mô ảnh hƣởng thông số đến tr nh làm việc pin nhiên liệu ô tô 82 12 VŨ XUÂN THIỆP, Mô xác định hệ số nạp động diesel xylanh 89 13 TRỊNH TUẤN DƢƠNG, Ứng dụng xử lý ảnh việc định vị, t m đƣờng dẫn hƣớng cho phƣơng tiện tự hành bám vạch 95 Hội nghị khoa học giảng viên khoa khí doanh nghiệp Khoa khí - Trường Đại học Giao thơng Vận tải, năm 2020 14 NGUYỄN QUANG MINH, PHẠM ANH TUẤN, ây dựng mơ h nh l thuyết tính tốn động học cho cánh tay công tác máy kıểm tra cầu 103 15 NGUYỄN THỊ THÙY DUNG, Nghiên cứu tr nh ngƣng dòng lƣu chất chế độ hình xuyến 113 16 NGUYỄN CAO VĂN, Nghiên cứu ảnh hƣởng tỷ lệ biodiesel thời điểm phun tới đặc tính cháy phát thải động diesel 119 Hội nghị khoa học giảng viên khoa khí doanh nghiệp Khoa khí - Trường Đại học Giao thơng Vận tải, năm 2020 ỨNG DỤNG XỬ LÝ ẢNH TRONG VIỆC ĐỊNH VỊ, TÌM ĐƢỜNG VÀ DẪN HƢỚNG CHO CÁC PHƢƠNG TIỆN TỰ HÀNH BÁM VẠCH Application of computer vision in line follower automated guided vehicle localization and navigation TRỊNH TUẤN DƢƠNG Bộ mơn Kỹ thuật máy - Khoa Cơ khí Trường Đại học Giao thơng vận tải Tóm tắt: Báo cáo trình bày kết áp dụng công nghệ xử lý ảnh thuật tốn tìm đường việc giải b i to n định vị, t m đường dẫn hướng theo thời gian thực cho c c phương tiện tự hành bám vạch Kết báo cáo mang tới giải pháp hoàn chỉnh cho b i to n định vị, t m đường, dẫn hướng đồng thời giúp cho c c phương tiện tự hành bám vạch c độ linh hoạt cao chuyển động Summary: The report presents the results in applying computer vision and planning algorithm to localize and navigate line follower AGV (automated guided vehicle) The results of this research provide a complete solution for AGV localization and navigation; and those results also assist the AGV in motion flexibility ĐẶT VẤN ĐỀ Ngày nay, sản xuất ng nhƣ uộc sống, AGV (tên gọi ho phƣơng tiện tự hành, robot tự hành n i phƣơng tiện tự hành dạng bám vạch nói riêng ngày ph biến có vai trị ngày quan trọng Hình Một vài AGV dạng bám vạ h làm việc Đối với loại phƣơng tiện định vị tìm đƣờng, d n hƣớng toán quan trọng, ảnh hƣởng trực tiếp đến trình hoạt động Đối với AGV hoạt động ngồi trời phƣơng pháp đƣợc sử dụng ph biến hiệu đ định vị (outdoor localization) GPS Trong đ , t n hiệu GPS thƣờng yếu m i trƣờng nhà kín, nên kh ng đƣợc sử dụng đ định vị ho phƣơng tiện hoạt động nhà Do đ , ài toán định vị ho phƣơng tiện hoạt động nhà phức tạp có số cơng nghệ có th áp dụng nhƣ: Wifi, luetooth, Zig ee, RFID, A ousti signal, Ultrasound, [4] Tuy nhi n, 95 Hội nghị khoa học giảng viên khoa khí doanh nghiệp Khoa khí - Trường Đại học Giao thơng Vận tải, năm 2020 phƣơng pháp th t n nhƣợ m giá thành cao, ho c giải toán định vị hƣa th giải đ ng thời ài tốn tìm đƣờng Riêng AGV bám vạ h đ định vị, vị trí cần định vị sử dụng thêm mã hóa IR [7] ho c LED [1] đ làm dấu Tuy nhi n, nhƣợ m phƣơng pháp hỉ áp dụng m i trƣờng làm việc không yêu cầu độ linh hoạt cao vị trí cần đến phƣơng tiện lại phải đ t dấu (markers) muốn thay đ i lại vị trí phải can thiệp vào việc xếp dấu Hình Hệ thống đánh dấu cho AGV bám vạch Tận dụng có m t ngày ph biến amera, áo áo đƣa cách giải đ ng thời ài tốn định vị, tìm đƣờng d n hƣớng cho AGV dạng bám vạch nhờ công nghệ xử lý ảnh Ƣu m phƣơng pháp hi ph thấp (chỉ cần amera hƣơng trình tr n máy t nh , tăng độ linh hoạt việc chuy n động, vận hành phƣơng tiện (tìm đƣờng d n hƣớng theo thời gian thực nhanh chóng xác, có th tới vị trí đ mà khơng cần phải thêm dấu đ hay thêm cảm biến khác) XÂY DỰNG HỆ THỐNG THỬ NGHIỆM VÀ LẬP BẢN ĐỒ SỐ 2.1 Nguyên lý hoạt động hệ thống Hệ thống ao g m thành phần, nguy n l hoạt động nhƣ hình Trong đ , amera gắn ngoài, phù hợp treo tr n trần hƣớng xuống có nhiệm vụ thu thập hình ảnh gửi cho phần mềm xử lý ảnh máy tính Phần mềm xử lý ảnh thực nhiệm vụ li n quan đến tạo đ , định vị tìm đƣờng cho robot r i gửi liệu đến module phát tín hiệu Module gửi liệu điều n qua s ng radio đến robot bám vạch (line follower) Robot kết hợp liệu điều n ng nhƣ liệu t cảm biến dò vạ h đ đến đ h Hình Nguyên lý hoạt động hệ thống định vị, tìm đƣờng d n hƣớng cho AGV 2.2 Tạo đồ số T ảnh thu đƣợc t amera, hƣơng trình xử lý ảnh phải có khả tăng tạo đ số 96 Hội nghị khoa học giảng viên khoa khí doanh nghiệp Khoa khí - Trường Đại học Giao thơng Vận tải, năm 2020 đ phục vụ cho việ định vị tìm đƣờng th a mãn yêu cầu : - Giới hạn phạm vi đ - Xá định vạch (line) đ Thu hẹp k h thƣớc vạch - Chia n t, xá định thông số nút 22 Giới hạn phạm vi đồ Phạm vi đ cần đƣợc giới hạn đ loại b vùng không mong muốn ảnh kh i đ Điều đ ng thời làm giảm khối lƣợng t nh tốn ho hƣơng trình Đ giới hạn phạm vi đ , kỹ thuật ROI vùng quan t m đƣợc áp dụng [ ] Theo đ , ngƣời dùng có th dùng chuột đ khoanh vùng quan tâm đ Hình Kết áp dụng ROI đ giới hạn phạm vi đ Kết cho thấy đ có th cắt bớt phần th a phạm vi làm việc AGV 2 Xác định vạch đồ Vạch đ h nh đƣờng đ giúp AGV có th di chuy n Do đ , hƣơng trình cần xá định đƣợ đ u vạch đ đ có th áp dụng thuật tốn tìm đƣờng Dù vạ h đƣợc tạo t ăng d nh thƣờng, sơn hay vạch t magneti line đ m màu sắ thƣờng tƣơng phản lớn so với Vì vậy, thuật toán ph n ngƣ ng nhị ph n ngƣợc [ ] đƣợc áp dụng đ tìm đƣờng theo cơng thức: ( ) ( ) ( ) Trong đ : ( ) giá trị pixel sau ph n ngƣ ng - ( ) giá trị gốc pixel trƣớ ph n ngƣ ng giá trị lớn pixel ngƣ ng dùng đ ph n ngƣ ng Trong thiết lập, thresh đƣợ đƣa vào hƣơng trình dƣới dạng trƣợt đ có th tinh chỉnh kết tốt Trong điều kiện ảnh th a mãn tính chất bi-modal histogram có th dùng ph n ngƣ ng Otsu Otsu’ method đ tìm ngƣ ng cách tự động [6] 97 Hội nghị khoa học giảng viên khoa khí doanh nghiệp Khoa khí - Trường Đại học Giao thơng Vận tải, năm 2020 Hình Kết ph n ngƣ ng nhị ph n ngƣợ theo phƣơng pháp Otsu 22 Làm giảm kích thước vạch Khác với loại đ , đƣờng AGV bám vạch vạch với đ m dài, mảnh Điều khiến cho việ hia lƣới m ng g p nhiều kh khăn khả xảy tình trạng sai ho c thiếu thơng tin vạch Do đ , pixel ảnh đƣợ xá định nút Vì vậy, cần phải làm giảm k h thƣớc vạ h đ phần giảm đƣợc khối lƣợng tính tốn mà v n đảm bảo khơng làm sai lệch liệu tính tốn Làm giảm k h thƣớc vạ h đƣợc thực thông qua việc áp dụng phép tốn hình thái co ảnh (erosion) [2]: ( ) ) ( Trong đ : ( ) giá trị pixel sau áp dụng co ảnh - - ( ) giá trị pixel thuộc vùng ma trận m neo có vị trí k h thƣớc ma trận m neo Hình Kết làm giảm k h thƣớc vạch phép tốn co ảnh 2.2.4 Chia nút, xác định thơng số nút Chia nút yêu cầu cần thiết đ có th áp dụng thuật tốn tìm đƣờng Với đ c tính vạ h k h thƣớc dài mảnh, n n đ khơng b xót ho c gây sai lệch thơng tin vạch pixel ảnh đƣợc gán nút với liệu sau [8]: - Vị trí nút - Nút có thuộ đƣờng hay khơng - Giá trị chi phí t ng - Giá trị chi phí t nút xuất phát 98 Hội nghị khoa học giảng viên khoa khí doanh nghiệp Khoa khí - Trường Đại học Giao thông Vận tải, năm 2020 - Giá trị hi ph tƣơng đối đến đ h Có phải nút xuất phát hay n t đ h kh ng - Đ nằm danh sá h n t đ x t hƣa Vị trí nút mẹ n t đ ĐỊNH VỊ VÀ TÌM ĐƢỜNG CHO AGV 3.1 Định vị AGV Đ dễ dàng nhận diện AGV, phía AGV đƣợc đánh dấu vùng màu sắc khác th a mãn yêu cầu: - Nếu có nhiều AGV hoạt động AGV đƣợ đánh dấu đ có th phân biệt đƣợc - Đánh dấu cho có th dựa vào vùng đánh dấu đ xá định đƣợ hƣớng AGV Việ đánh dấu có th thực ăng d nh màu ho ánh sáng đèn led điều kiện kh ng đủ Hình Robot tự hành đƣợc ký hiệu nhận dạng hai vùng màu khác thân Với AGV đ th a m n điều kiện thuật tốn Camshift đƣợc áp dụng với vị tr đánh dấu đ định vị xá định hƣớng AGV [3] Các giá trị HSV dùng đ phân ngƣ ng đƣợ ăn hỉnh đ đạt kết định vị tốt nhƣ hình Hình Kết giảm nhiễu nhờ việc tinh chỉnh giá trị HSV dùng đ ph n ngƣ ng 3.2 T m đƣờng cho AGV T vị trí AGV đƣợ oi nhƣ n t xuất phát, hƣơng trình ho ph p ngƣời sử dụng kích vào vị trí vạ h đ làm đ h đến Sau đ , đƣờng phù hợp nút xuất phát n t đ h đƣợc tìm theo thuật tốn tìm đƣờng A* [ ] Đ y thuật toán đƣợc phát tri n t thuật toán Dijkstra với ƣu m tố độ tìm đƣờng nhanh so với Dijkstra 99 Hội nghị khoa học giảng viên khoa khí doanh nghiệp Khoa khí - Trường Đại học Giao thơng Vận tải, năm 2020 Hình Kết tìm đƣờng sử dụng thuật tốn A* vị trí robot m đến đƣợc chọn ng u nhiên 3.3 Dẫn hƣớng cho AGV Hình 10 Kết d n hƣớng cho robot theo thời gian thực 100 Hội nghị khoa học giảng viên khoa khí doanh nghiệp Khoa khí - Trường Đại học Giao thơng Vận tải, năm 2020 Về ản đ AGV đến đ h v a th a mãn yêu cầu bám vạ h trơn tru, v a kết hợp nhận lệnh điều n t hƣơng trình tr n máy t nh đ b bám vạch cần thiết ho c thực hành vi hƣơng trình xử lý ảnh gửi xuống cho AGV liệu điều n nhƣ sau: - Một byte chứa lệnh điều n cho phép robot di chuy n hay d ng Lệnh điều n kết loạt điều kiện nhƣ vị trí robot so với n t đ h, hƣơng trình n nhận dạng đƣợc robot không, hay yêu cầu d ng ro ot đột ngột t ngƣời dùng hƣơng trình - Một byte chứa góc hƣớng ro ot hƣớng đƣờng cần Robot kết hợp hai bytes với liệu t cảm biến d line đ đủ điều kiện cần đ di chuy n đƣợ đến đ h Kết việc d n hƣớng cho robot tự hành bám vạ h đƣợc th nhƣ tr n hình Chƣơng trình xử lý ảnh đ đƣa lệnh điều n xác theo thời gian thực dựa đƣờng đ tìm đƣợc giúp robot di chuy n đến đ h KẾT LUẬN Kết thực nghiệm cho thấy hƣơng trình khả tìm đƣờng xác, có khả định vị d n hƣớng cho thiết bị AGV dạng bám vạch theo thời gian thự Phƣơng pháp tiếp cận ng mang đến độ linh hoạt trình vận hành thiết bị Thiết bị có th đến vị trí đ mà không cần phải thêm cảm biến, hay tiến hành tạo dấu vạch Bên cạnh đ , th ng qua hƣơng trình, khả tƣơng tá ngƣời sử dụng thiết bị ng đƣợ n ng ao Ngƣời sử dụng có th chủ động điều n đ h đến cho thiết bị với thao tác kích chuột đ ho ng th cố định m đ h ho thiết bị việc vẽ lên ảnh đ thu đƣợc t camera (tạo dấu ảo) Việc sử dụng xử lý ảnh đ giải ài tốn định vị, tìm đƣờng d n hƣớng cho thiết bị AGV bám vạ h ng h tiếp cận phù hợp đ có th phát tri n ứng dụng thêm thuật toán khác nhằm quản lý vận hành nhiều thiết bị AGV lúc Tài liệu tham khảo [1]: Abdul Hannan Shaukat (2013): “A Localization Algorithm Using IR Receivers and LEDs for a Line Following Robot‖; International Journal of Engineering Research and Reviews (IJERR) Vol 1, Issue 1, pp: (1-4) [2]: Adrian Kaehler, Gary Bradski (2017): “Learning Open CV 3”; O’Reilly Media, Inc [3]: Chaoli Wang ; Zhenyu Fu (2014): “A new way to detect the position and orientation of the wheeled mobile robot on the image plane”; IEEE International Conference on Robotics and Biomimetics [4]: Faheem Zafari, Athanasios Gkelias, Kin K Leung (2019) : “A Survey of Indoor Localization Systems and Technologies”; IEEE Communications Surveys & Tutorials ( Volume: 21 , Issue: 3) 101 Hội nghị khoa học giảng viên khoa khí doanh nghiệp Khoa khí - Trường Đại học Giao thông Vận tải, năm 2020 [5]: Hart, P E.; Nilsson, N J.; Raphael, B (1968): ―A Formal Basis for the Heuristic Determination of Minimum Cost Paths‖; IEEE Transactions on Systems Science and Cybernetics (2): 100–107 [6]: Kittler, Josef & Illingworth, John (1985): ―On threshold selection using clustering criteria” IEEE Transactions on Systems, Man and Cybernetics SMC-15 (5): 652– 655 [7]: Tarneem Omar Barayyan, Enayyah Mohammed Barnawi: “Enhanced Line Follower Robot Using IR coding as an Artificial Landmark”; Conf-scoop.org [8]: Trịnh Tuấn Dƣơng (2019): “T m đường cho Mobile robots dựa việc t m đường biên áp dụng thuật toán A*”; Cơ kh Việt Nam số 102 ...ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ - - TRỊNH TUẤN DƯƠNG NGHIÊN CỨU, THIẾT KẾ, CHẾ TẠO MOBILE ROBOT TỰ HÀNH TÍCH HỢP MỘT SỐ CÔNG NGHỆ XỬ LÝ ẢNH VÀ THUẬT TỐN HIỆN ĐẠI... lưng Robot 69 Phụ lục Mặt sau robot 70 Phụ lục Mặt đáy Robot 71 MỞ ĐẦU Luận văn thạc sĩ ? ?Nghiên cứu, thiết kế, chế tạo mobile robot tự hành tích hợp số cơng nghệ xử lý. .. số cơng nghệ xử lý ảnh thuật tốn đại? ?? có nhiệm vụ thiết kế, chế tạo mơ hình mobile robot tự hành dạng bám vạch định vị, tìm đường dẫn hướng nhờ vào kết hợp công nghệ xử lý ảnh thuật tốn tìm đường

Ngày đăng: 14/02/2021, 18:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan