TRƯỜNG ĐẠI HỌC DUY TÂN KHOA ĐIỆN ĐIỆN TỬ NGUYỄN THANH BÌNH NGHIÊN CỨU BÀI TOÁN TRÁNH VẬT CẢN CHO ROBOT ĐỘNG BẰNG CẢM BIẾN LIDAR KHÓA LUẬN CỬ NHÂN ĐIỆN – ĐIỆN TỬ Đà Nẵng, 2022 TRƯỜNG ĐẠI HỌC DUY TÂN KH. MỤC LỤC CHƯƠNG 1: TỔNG QUAN .............................................................................1 1.1.Tổng quan chung về lĩnh vực nghiên cứu ......................................................1 1.2. Các nghiên cứu trong và ngoài nước .............................................................2 1.2.1. Nghiên cứu ngoài nước..............................................................................2 1.2.2. Nghiên cứu trong nước ..............................................................................2 1.3. Mục đích của đề tài.......................................................................................3 1.4. Đối tượng và phạm vi của đề tài ..................................................................3 1.4.1.Đối tượng ...................................................................................................3 1.4.2. Phạm vi nghiên cứu ...................................................................................3 1.5. Phương pháp nghiên cứu..............................................................................4 1.5.1. Nghiên cứu lý thuyết..................................................................................4 1.5.2. Nghiên cứu thực nghiệm............................................................................4 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT .................................................................5 2.1. Giới thiệu về RPLIDAR A1.........................................................................5 2.1.1.Thông số kỹ thuật của RPLIDAR A1..........................................................5 2.1.3.Nguyên lý hoạt động.................................................................................10 2.1.4.Các ứng dụng và đặc tính của RPLIDAR A1 ............................................11 2.1.4.1. Ứng dụng..............................................................................................11 2.1.4.2.Các đặc tính của RPLIDAR A1..............................................................11 CHƯƠNG 3: ĐIỀU KHIỂN ROBOT TRÁNH VẬT CẢN BẰNG RPLIDAR A1 .....................................................................................................................13 3.1.Mô hình ROBOT di động hai bánh vi sai.....................................................13 3.1.2.Các Module điều khiển chuyển động ........................................................14 3.1.3. Cảm biến RP Lidar ..................................................................................18 3.2. Điều khiển ROBOT tránh vật cản dùng thuật toán Bug với Lidar RPLIDAR A1 .....................................................................................................................18 3.2.1.Thuật toán tránh vật cản Bug ....................................................................19 3.2.2.Điều khiển Robot tránh vật cản bằng thuật toán Bug ................................20 3.2.3.Chương trình lập trình tránh vật cản viết trên nền tảng Python và Adruino21 3.2.4.Giải bài toán tìm đường cho robot ............................................................23 3.2.5.Bài toán tránh vật cản cho robot lidar a1...................................................24 CHƯƠNG 4 : THỰC NGHIỆM VÀ BÁO CÁO KẾT QUẢ.........................29 4.1.Đánh giá thực nghiệm..................................................................................29 4.2. Nhận xét và kết luận ...................................................................................29 4.2.Kết luận và hướng phát triển........................................................................30 PHU ̣ LU C̣ .........................................................................................................32 TÀ I LIỆU THAM KHẢ O...............................................................................37 1 CHƯƠNG 1: TỔNG QUAN 1.1.Tổng quan chung về lĩnh vực nghiên cứu Hiện nay, công nghệ phần mềm cũng như trí tuệ nhân tạo ngày càng phát triển mạnh mẽ. Những công việc mà con người có thể thực hiện đã dần được tự động hóa thông qua các côngnghệ tự hành thông minh. Trong đó, xe tự hành là một trong những ứng dụng đã và đang đượcchú trọng nghiên cứu và ứng dụng nhiều trong cuộc sống. Có rất nhiều công nghệ được sử dụng để tạo ra một chiếc xe tự hành thông minh, đồng thời cũng có rất nhiều ứng dụng được đặt lên một chiếc xe tự hành để giúp cho nó ngày càng thông minh và tiện ích hơn và Lidar làmột trong những lựa chọn như vậy. Việc nghiên cứu và ứng dụng Lidar trên xe tự hành có thểkhắc phục được một vài các nhược điểm trước đây mà các công nghệ như xử lý ảnh còn mắcphải. Lidar được biết tới như một thiết bị quét với khả năng phát ra tia sáng laser hồng ngoại để thu thập và nhận lại các dữ liệu mà từ đó có thể thiết lập để hình thành nên sự mô phỏng môi trường xung quanh nơi mà Lidar hoạt động. Với khả năng này, việc chúng ta ứng dụng thiết bị Lidar lên xe tự hành có thể giúp cho chúng ta dễ dàng phát hiện sự xuất hiện của các vật cản trong khu vực mà xe tự hành hoạt động và đưa ra được thuật toán giúp cho xe có thể tránh được vật cản mà vẫn đảm bảo xe hoạt động ổn định trong một khu vực cố định. Để làmđược điều này, chúng ta có rất nhiều hướng tiếp cận như: có thể sử dụng Lidar quét để thu thập dữ liệu giúp mô phỏng môi trường hoạt động của xe tự hành từ đó hình thành nên một bản đồ và thông qua bản đồ này ta có thể đưa ra tín hiệu điều khiển chuyển động chính xác thông qua việc định vị vị trí của xe tự hành trên bản đồ đã được thiết lập. Sau đó, thông qua các thuật toán được lập trình để tìm ra được quãng đường ngắn nhất vừa có thể tránh được vậtcản mà vẫn di chuyển đến vị trí được định sẵn. Ngoài ra, còn có một hướng tiếp cận khác đượcđặt ra đó là trong quá trình hoạt động của xe tự hành sẽ được chia làm hai giai đoạn khác nhauđầu tiên là quá trình di chuyển bình thường trong khu vực đã được cố định và sau đó là quá trình phát hiện và thực hiện tránh vật cản đồng thời ổn định di chuyển ngay sau đó. Đó là nộidung mà đề tài này tập trung nghiên cứu và đưa ra hướng giải quyết. Để giải quyết vấn đề này, thuật toán mà đề tài sử dụng là sự kết hợp giữa công nghệ xử lý ảnh và việc sử dụng RPLIDARA1. Trong quá trình di chuyển bình thường trong khu vực cố định chúng ta áp dụng thuật toánxử lí ảnh để xe hoạt động dựa trên CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1. Giới thiệu về RPLIDAR A1 2.1.1.Thông số kỹ thuật của RPLIDAR A1 Điện áp sử dụng: 5VDC Phương pháp phát hiện vật cản: Laser Khoảng cách phát hiện vật cản tối đa: 12m Góc quay: 360° Tốc độ lấy mẫu tối đa: 8000 Sas Tần số quét tối đa: 10 Hz Kích thước: 98.5mm x 70mm x 60mm Chuẩn giao tiếp: UART Hình 2.1: RPLIDAR A16 Hình 2.2: Kích thước của RPLIDAR A1 Hình 2.3: Sơ đồ chân của cổng giao tiếp UARTUSB UART có tên đầy đủ là Universal Asynchronus Receiver – Transmitter. Nó là một mạch tíchhợp được sử dụng trong việc truyền dẫn dữ liệu nối tiếp giữa máy tính và các thiết bị ngoại vi.UART có chức năng chính là truyền dữ liệu nối tiếp. Trong7 UART giao tiếp giữa hai thiết bị có thể thực hiện theo hai phương thức là giao tiếp dữ liệu nối tiếp và giao tiếp giữ liệu song song. Trong đó: Giao tiếp dữ liệu nối tiếp có nghĩa là dữ liệu có thể được truyền qua một cáp hoặc một đường dây ở dạng bitbit và nó chỉ cần hai cáp. Nó yêu cầu số lượng mạch hay như dây rất ít.Giao tiếp này rất hữu ích trong các mạch ghép hơn giao tiếp song song. Giao tiếp dữ liệu song song có nghĩa là dữ liệu có thể được truyền qua nhiều cáp cùng mộtlúc. Truyền dữ liệu song song yêu số lượng mạch và dây nhiều. Vì vậy, giao tiếp song song tốn kém nhưng đổi lại rất nhanh, nó đòi hỏi phần cứng và cáp bổ sung. Hình 2.4: Cấu tạo của RPLIDAR A1 RPLIADR A1 bao gồm hai hệ thống chính: Hệ thống quét phạm vi (Range Scanner System) Hệ thống động cơ (Motor System) Ngoài ra, còn có các bộ phận khác như: Communication interface: UARTUSB Fix platform (customizable Power Interface8 Hình 2.5: Fix platform Hình 2.6: RPLIDAR A1 Power Interface9 Dưới đây là bản vẽ chi tiết có đầy đủ các thông số kích thước của RPLIDAR A1 Hình 2.7: Bản vẽ chi tiết của RPLIDAR A110 2.1.3.Nguyên lý hoạt động Sau khi cấp nguồn, RPLIDAR A1 bắt đầu quay và quét theo chiều kim đồng hồ. Dữ liệu nhận được nhờ thông qua giao diện giao tiếp UART(cổng nối tiếp)USB. RPLIDAR A1 đi kèm với một hệ thống thích ứng và phát hiện tốc độ. Hệ thống sẽ điều chỉnhtần số của máy quét laser tự động theo tốc độ động cơ. Và hệ thống máy chủ có thể nhận đượctốc độ thực RPLIDAR A1 qua giao diện giao tiếp. RPLIDAR A1 hoạt động dựa trên nguyên lý phạm vi tam giác laser và khả năng thu lại tầmnhìn với tốc độ cao. RPLIDAR A1 phát ra tín hiệu laser hồng ngoại và ngay sau đó tín hiệu này được phản hồi lại khi phát hiện các đối tượng nằm trong phạm vi quét của tia laser hồng ngoại. Tín hiệu phản hồi này sẽ được hệ thống thu nhận tầm nhìn của RPLIDAR A1 thu nhậnvà được xử lý để đưa ra giá trị khoảng cách và giá trị góc thông qua giao diện giao tiếp
TRƯỜNG ĐẠI HỌC DUY TÂN KHOA ĐIỆN- ĐIỆN TỬ NGUYỄN THANH BÌNH NGHIÊN CỨU BÀI TỐN TRÁNH VẬT CẢN CHO ROBOT ĐỘNG BẰNG CẢM BIẾN LIDAR KHÓA LUẬN CỬ NHÂN ĐIỆN – ĐIỆN TỬ Đà Nẵng, 2022 TRƯỜNG ĐẠI HỌC DUY TÂN KHOA ĐIỆN- ĐIỆN TỬ KHÓA LUẬN TỐT NGHIỆP NGHIÊN CỨU BÀI TOÁN TRÁNH VẬT CẢN CHO ROBOT ĐỘNG BẰNG CẢM BIẾN LIDAR CHUYÊN NGÀNH: ĐIỆN – ĐIỆN TỬ GVHD : TS.TRẦN THUẬN HỒNG SVTH : NGUYỄN THANH BÌNH LỚP : K23 EDT MSSV : 2321632765 Đà Nẵng, 2022 MỤC LỤC CHƯƠNG 1: TỔNG QUAN 1.1.Tổng quan chung lĩnh vực nghiên cứu 1.2 Các nghiên cứu nước 1.2.1 Nghiên cứu nước 1.2.2 Nghiên cứu nước 1.3 Mục đích đề tài 1.4 Đối tượng phạm vi đề tài 1.4.1.Đối tượng 1.4.2 Phạm vi nghiên cứu 1.5 Phương pháp nghiên cứu 1.5.1 Nghiên cứu lý thuyết 1.5.2 Nghiên cứu thực nghiệm CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Giới thiệu RPLIDAR A1 2.1.1.Thông số kỹ thuật RPLIDAR A1 2.1.3.Nguyên lý hoạt động 10 2.1.4.Các ứng dụng đặc tính RPLIDAR A1 11 2.1.4.1 Ứng dụng 11 2.1.4.2.Các đặc tính RPLIDAR A1 11 CHƯƠNG 3: ĐIỀU KHIỂN ROBOT TRÁNH VẬT CẢN BẰNG RPLIDAR A1 13 3.1.Mơ hình ROBOT di động hai bánh vi sai 13 3.1.2.Các Module điều khiển chuyển động 14 3.1.3 Cảm biến RP Lidar 18 3.2 Điều khiển ROBOT tránh vật cản dùng thuật toán Bug với Lidar RPLIDAR A1 18 3.2.1.Thuật toán tránh vật cản Bug 19 3.2.2.Điều khiển Robot tránh vật cản thuật toán Bug 20 3.2.3.Chương trình lập trình tránh vật cản viết tảng Python Adruino21 3.2.4.Giải tốn tìm đường cho robot 23 3.2.5.Bài toán tránh vật cản cho robot lidar a1 24 CHƯƠNG : THỰC NGHIỆM VÀ BÁO CÁO KẾT QUẢ 29 4.1.Đánh giá thực nghiệm 29 4.2 Nhận xét kết luận 29 4.2.Kết luận hướng phát triển 30 PHỤ LỤC 32 TÀ I LIỆU THAM KHẢO 37 DANH MỤC HÌNH ẢNH Hình 2.1 RPLIDAR A1 Hình 2.2 Kích thước RPLIDAR A1 Hình 2.3 Sơ đồ chân cổng giao tiếp UART/USB Hình 2.4 Cấu tạo RPLIDAR A1 Hình 2.5 Fix platform Hình 2.6 RPLIDAR A1 Power Interface Hình 2.7 Bản vẽ chi tiết RPLIDAR A1 Hình 2.8 Nguyên lý phạm vi tam giác laser RPLIDAR A1 10 Hình Hình ảnh tập hợp đám mây điểm mà RPLIDAR A1 trả 11 Hình 2.10 Đặc tính hoạt động RPLIDAR A1 11 Hình 2.11 Biểu đồ xu hướng độ lệch giá trị thực giá trị RPLIDAR A1 đưa 12 Hình 3.1: Bản vẽ khung robot 13 Hình 3.2 Mă ̣t đáy khung robot thực tế 13 Hình 3.3: Mặt thực tế Robot 14 Hình 3.4 Vi điề u khiể n Arduino MEGA 2560 14 Hình 35: Module điề u khiể n đô ̣ng VNH2SP30 15 Hình 3.6: Sơ đồ nguyên lý module VNH2SP30 16 Hình 3.7: Động DC 16 Hình 3.8: Bánh xe thu ̣ ̣ng 17 Hình 3.9: Pin cell 18650 17 Hình 3.10 Cảm biến RPLidar A1 18 Hình 3.11: Sơ đồ thuật tốn 20 Hình 12: Sơ đồ đấu dây phần điều khiển 21 Hình 3.13 Các đồ bị chồng lên trình xoay Lidar 23 Hình 4.1 Phòng thử nghiệm kết 29 LỜI CAM ĐOAN Em xin cam đoan đề tài cơng trình nghiên cứu em thực hiện, hướng dẫn khoa học thầy TS.Trần Thuận Hoàng Các nội dung nghiên cứu, số liệu thu thập kết phân tích đề tài trung thực có nguồn gốc rõ ràng Những thơng tin tham khảo khóa luận trích dẫn cụ thể nguồn sử dụng Sinh viên thực NGUYỄN THANH BÌNH LỜI CẢM ƠN Trong trình thực đề tài em xin gửi lời cảm ơn sâu sắc đến Thầy Trần Thuận Hoàng tạo điều kiện thuận lợi để em thực tốt đề tài thời gian ngắn Các thầy cô giáo trung tâm Điện – Điện tử CEE truyền đạt kiến thức chuyên môn giúp em định hướng theo hiểu biết khả để thực tốt đề tài “ Nghiên cứu toán tránh vật cản cho robot động cảm biến Lidar ” Sau gửi lời cảm ơn tới gia đình bạn nhiệt tình giúp đỡ em trình thực CHƯƠNG 1: TỔNG QUAN 1.1.Tổng quan chung lĩnh vực nghiên cứu Hiện nay, công nghệ phần mềm trí tuệ nhân tạo ngày phát triển mạnh mẽ Những cơng việc mà người thực dần tự động hóa thơng qua cơngnghệ tự hành thơng minh Trong đó, xe tự hành ứng dụng đượcchú trọng nghiên cứu ứng dụng nhiều sống Có nhiều cơng nghệ sử dụng để tạo xe tự hành thông minh, đồng thời có nhiều ứng dụng đặt lên xe tự hành để giúp cho ngày thơng minh tiện ích Lidar làmột lựa chọn Việc nghiên cứu ứng dụng Lidar xe tự hành có thểkhắc phục vài nhược điểm trước mà công nghệ xử lý ảnh mắc phải Lidar biết tới thiết bị quét với khả phát tia sáng laser hồng ngoại để thu thập nhận lại liệu mà từ thiết lập để hình thành nên mơ môi trường xung quanh nơi mà Lidar hoạt động Với khả này, việc ứng dụng thiết bị Lidar lên xe tự hành giúp cho dễ dàng phát xuất vật cản khu vực mà xe tự hành hoạt động đưa thuật toán giúp cho xe tránh vật cản mà đảm bảo xe hoạt động ổn định khu vực cố định Để làmđược điều này, có nhiều hướng tiếp cận như: sử dụng Lidar quét để thu thập liệu giúp mô môi trường hoạt động xe tự hành từ hình thành nên đồ thông qua đồ ta đưa tín hiệu điều khiển chuyển động xác thơng qua việc định vị vị trí xe tự hành đồ thiết lập Sau đó, thơng qua thuật tốn lập trình để tìm quãng đường ngắn vừa tránh vậtcản mà di chuyển đến vị trí định sẵn Ngồi ra, cịn có hướng tiếp cận khác đượcđặt trình hoạt động xe tự hành chia làm hai giai đoạn khác nhauđầu tiên trình di chuyển bình thường khu vực cố định sau q trình phát thực tránh vật cản đồng thời ổn định di chuyển sau Đó nộidung mà đề tài tập trung nghiên cứu đưa hướng giải Để giải vấn đề này, thuật toán mà đề tài sử dụng kết hợp công nghệ xử lý ảnh việc sử dụng RPLIDAR A1 Trong trình di chuyển bình thường khu vực cố định áp dụng thuật tốnxử lí ảnh để xe hoạt động dựa việc quan sát hai bên lane đường Còn trường hợp muốn tránh vật cản ta sử dụng liệu mà RPLIDAR A1 thu thập trả thơng qua q trình quét để phát tiến hành chạy chương trình lập trình viết để tránh vật cản Sự kết hợp mang lại khả giúp xe tự hành hoạt động ổn định, đồng thời với tính hoạt động RPLIDAR A1 có khả giúp tránh vật cản môi trường mà độ tương phản ánh sáng không cao (như trời tối) 1.2 Các nghiên cứu nước 1.2.1 Nghiên cứu nước Sự đời Velodyne đua xe tự lái Grand Challenge Darpa vào tháng năm 2004 Barstow, cách Los Angeles hai phía đơng bắc Trong q trình diễn đua, kỹ sư có tên Dave Hall giám đốc điều hành cơng ty sản xuất có tên Velodyne chế tạo đưa vào sử dụng hệ thống quét laser phát 64 tia sáng laser thực việc thu thập tổng hợp liệu để nâng cao tầm quan sát xe tự hành Mặc dù đua không mang lại kết thực tiễn hoàn toàn nhưngđây bước khởi đầu cho việc phát triển ứng dụng Lidar mơ hình xe tự hành đua vài năm sau phổ biến Velodyne xe tự hành Và phát triển sản phẩm xe tự hành thơng minh google Năm 2014, Audi trình làng công nghệ tự lái “Piloted Driving” ứng dụng Audi A7với trang bị radar tầm xa phía trước đồng thời sử dụng Lidar đặt phía sau lưới tản nhiệt vớinhiệm vụ cảm biến phụ để giúp radar phát vật thể rắn Vào năm 2017, Waymo hợp tác với Fiat cho đời Chrysler Pacifica Hybrid có trang bị Lidar sản phẩm mang tính cạnh tranh cao, đặc biệt phát tín hiệu tay màngười xe đạp sử dụng để đoán hướng người xe đạp Đồng thời, Fiat Chrysler Google tuyên bố hợp tác để đưa sản phẩm vào thử nghiệm thực tế trụ sở Michigan Arizona đưa thị trường 1.2.2 Nghiên cứu nước Luận văn thạc sĩ “Nghiên cứu ứng dụng Lidar thành lập đồ 3D khu vực đô thị” tác giả Đặng Thanh Tùng Trong đề tài đề cập đến phương pháp thành lập đồ 3D cách xử lí liệu Lidar để ứng dụng vào việc thành lập đồ 3D 24 Trong toán cục bộ, mơi trường làm việc robot hồn tồn khơng biết trước có phần, robot hồn tồn phải nhờ vào cảm nhận mơi trường thơng qua cảm biến gán để dị đường Lợi thế: u cầu tính tốn, dung lượng nhớ thấp, tính linh hoạt cao (tránh vật cản vật di chuyển) Hạn chế: robot tìm đường cục biết thơng tin xung quanh thông qua sensor cảm nhận môi trường gắn nên robot tìm đường cục khơng hồn thành việc tới đích Trong tốn tồn cục, đồ mơi trường làm việc robot hoàn toàn biết trước, vấn đề cần giải tìm đường cho robot trước xuất phát Lợi thế: ta biết trước có đường tối ưu tới đích hay khơng trước robot khởi hành Hạn chế: địi hỏi nhiều lệnh tính tốn nhớ, tình xấu xảy đồ môi trường làm việc không khai báo xác, u cầu biết trước hồn tồn mơi trường hoạt động nhược điểm Trong đề tài em tập trung vào việc giải tốn tìm đường cục mức độ đơn giản Môi trường làm việc robot mặt phẳng, giới hạn gổ, vật cản xem vật cản chiều , tĩnh hồn tồn 3.2.5.Bài tốn tránh vật cản cho robot lidar a1 Phương pháp đề cập đến sử dụng cảm biến Lidar dò đường xác định khoảng cách từ bánh xe tùy động tới vật cản tùy vào khoảng cách tới vật cản ứng với cảm biến, ta xác định phương hướng di chuyển robot phù hợp 25 Các cảm biến đặt lệch góc α ( chọn α=25°) khoảng cách lớn tính từ D mà cảm biến nhận diện vật cản dmax, dmax α phải đảm bảo cho cảm biến có vùng kiểm tra đủ rộng để tiến thẳng robot nhận diện vật cản Hình 3.14: Khơng gian làm việc robot mặt phẳng chiều Gọi: Các ứng xử robot sensor phát vật cản Có tình khác sensor phát vật cản, tình cần có cách ứng xử riêng Tình 1: cảm biến phát vật cản 26 - ⃗⃗⃗⃗⃗⃗ Ox) Nếu dl>dr robot quay sang trái: 𝜃𝑎 = (𝐵𝐴, - ⃗⃗⃗⃗⃗⃗ Ox) Nếu dl 0) { if (distance < robot_radius) obstacle = true; else { float angle_offset = abs(angle - 180); float angle_cal = asin(robot_radius / distance) * 180 / PI; if (angle_offset < angle_cal && distance < 1.5 * robot_radius) obstacle = true; } } } } else { analogWrite(RPLIDAR_MOTOR, 0); //stop the rplidar motor // try to detect RPLIDAR rplidar_response_device_info_t info; if (IS_OK(lidar.getDeviceInfo(info, 100))) { //detected lidar.startScan(); analogWrite(RPLIDAR_MOTOR, 255); delay(1000); } } } void tranh_catcan(bool obstacle) { 35 if (obstacle) { Serial.println("xoay"); usMotor_Status1 = CW; usMotor_Status2 = CW; motorGo(MOTOR_1, usMotor_Status1, 30); motorGo(MOTOR_2, usMotor_Status2, 30); } else { Serial.println("di thang"); usMotor_Status1 = CCW; usMotor_Status2 = CW; motorGo(MOTOR_1, usMotor_Status1, 45); motorGo(MOTOR_2, usMotor_Status2, 45); } } void motorGo(uint8_t motor, uint8_t direct, uint8_t pwm) //Function that controls the variables: motor(0 ou 1), direction (cw ou ccw) e pwm (entra e 255); { if (motor == MOTOR_1) { if (direct == CW) { digitalWrite(MOTOR_A1_PIN, LOW); digitalWrite(MOTOR_B1_PIN, HIGH); } else if (direct == CCW) { digitalWrite(MOTOR_A1_PIN, HIGH); digitalWrite(MOTOR_B1_PIN, LOW); } else { digitalWrite(MOTOR_A1_PIN, LOW); digitalWrite(MOTOR_B1_PIN, LOW); } analogWrite(PWM_MOTOR_1, pwm); 36 } else if (motor == MOTOR_2) { if (direct == CW) { digitalWrite(MOTOR_A2_PIN, LOW); digitalWrite(MOTOR_B2_PIN, HIGH); } else if (direct == CCW) { digitalWrite(MOTOR_A2_PIN, HIGH); digitalWrite(MOTOR_B2_PIN, LOW); } else { digitalWrite(MOTOR_A2_PIN, LOW); digitalWrite(MOTOR_B2_PIN, LOW); } analogWrite(PWM_MOTOR_2, pwm); } } 37 TÀ I LIỆU THAM KHẢO [1] Trầ n Quang Vinh, bài giảng: Robot thông minh 2012, khoa ho ̣c công nghê ̣ Điê ̣n tử- Viễn Thông, đa ̣i ho ̣c Công Nghê ̣ –ĐH Quố c Gia Hà Nô ̣i [2] Đỗ Năng Toàn, Xử lý ảnh, giáo trình môn ho ̣c, khoa ho ̣c công nghê ̣ thông tin – ĐH Thái Nguyên 2007, Thái Nguyên Tài liê ̣u tiế ng anh [3] Gary Bradski and Adrian Kaehler,Learning Computer vision whith thi OpenCV Library [4] R Patrick Goebel, “ROS By Example”, January 2015 [5] "Automotive fully integrated H-bridge motor driver," STMicroelectronics, 2017 [6] Anaya Roy, Mashuq-un-Nabi, "A review on modeling of few MEMS devices and further issues," Recent Developments in Control, Automation & Power Engineering (RDCAPE), pp 137 - 141, Oct 2017 [7] Ming-Yi Ju, Yu-Jen Chen, and Wei-Cheng Jiang, “Implementation of Odometry with EKF in Hector SLAM Methods”, March 1, 2018 [8] S Thrun, W Burgard, D.Fox, "Robot Motion," in Probabilistic Robotics, The MIT Press, 2005, pp 91-119 [9] S Thrun, W Burgard, D Fox, "Measurements," in Probabilistic Robotics, The MIT Press, 2005, pp 121-157 [10] S Thrun, W Burgard, D Fox, "The Particle Filter," in Probabilistic Robotics, The MIT Press, 2005, pp 77-89 [11] S Thrun, W Burgard, D Fox, "Monte Carlo Localization," in Probablilistic Robotics, The MIT Press, 2005, pp 200-209 [12] Aleksandar Tomović , “Path Planning Algorithms For The Robot Operating System”, Computer Science Saint Cloud State University Saint Cloud, 2014 [13] L Breiman, “Random forests,” Machine learning, 2001 [14] R Kalman, “A new approach to linear filtering and prediction problems,” Journal of Basic Engineering, 1960 [15] Angus Leigh, Joelle Pineau, Nicolas Olmedo, Hong Zhang, “Person Tracking and Following with 2D Laser Scanners”, IEEE International Conference of Robotics and Automation (ICRA), 2015 103 38 [ 16] Lentin Joseph, “ROS Robotics Projects”, March 2017 [17] Martin Ester, Hans-Peter Kriegel, Jiirg Sander, Xiaowei Xu, “A Density Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise” [18] Hồ Văn Bôn, Trần Minh Lợi, “Ứng Dụng KINECT WebRTC để phát triển Telepresence Robot”, Đại Học Bách Khoa TP Hồ Chí Minh, Hồ Chí Minh, 2018 ... Điều khiển ROBOT tránh vật cản dùng thuật toán Bug với Lidar RPLIDAR A1 18 3.2.1.Thuật toán tránh vật cản Bug 19 3.2.2.Điều khiển Robot tránh vật cản thuật toán Bug ... tốn tránh vật cản cho robot lidar a1 Phương pháp đề cập đến sử dụng cảm biến Lidar dò đường xác định khoảng cách từ bánh xe tùy động tới vật cản tùy vào khoảng cách tới vật cản ứng với cảm biến, ... tài “ Nghiên cứu toán tránh vật cản cho robot động cảm biến Lidar ” Sau gửi lời cảm ơn tới gia đình bạn nhiệt tình giúp đỡ em trình thực 1 CHƯƠNG 1: TỔNG QUAN 1.1.Tổng quan chung lĩnh vực nghiên