LỜI MỞ ĐẦU Tính từ thời điểm máy tính đầu tiên được ra đời cho đến nay, thế giới đã chứng kiến sự thong tri vượt trội của công nghệ thông tin, với sự có mặt của nó ở mọi lĩnh vực đời sống. Các sản pham thông minh đáp ứng nhu cầu của con người đang trở thành đối tượng được nghiên cứu nhiều nhất và được coi là trung tâm của cuộc cách mạng công nghệ hiện nay. Trong số các sản phâm đó, robot dịch vụ đang nổi lên là một trong những sản phẩm có nhiều tiềm năng phát triển nhất và hoàn toàn có khả năng thương mại hóa. Rất nhiều loại robot dịch vụ đã được ra đời và trở nên phô biến như robot lau nhà, robot hướng dẫn tại các nơi công cộng như bệnh viện, sân bay, nhà ga, trung tâm thương mại,.
Các robot này đều hoạt động chủ yếu trong môi trường có diện tích giới hạn và có nhiều chướng ngại vật, do đó việc xác định chính xác vị trí tương đối của robot so với các đồ vật xung quanh sẽ làm giảm khả năng gây ra các va chạm khi robot di chuyền. Trên thị trường hiện đã có rất nhiều sản phẩm robot được nghiên cứu và áp dụng nhiều giải thuật và phương pháp khác nhau trong việc dẫn đường robot trong không gian trong nhà. Bên cạnh những thuật toán và phương pháp thực hiện đa dạng, nhiều loại cảm biến khác nhau đến từ nhiều nhà cung cấp cũng được sử dụng dé tạo ra các sản phẩm robot phục vụ cho nhiều mục đích khác nhau. Tuy nhiên, do đặc tính của từng loại cảm biến, các hệ thống robot thường sử dụng các loại cảm biến mang tính đặc thù dé đảm bảo yếu tố về hình dạng, kiểu dáng đặc trưng.
Vì vậy, tính mở rộng của hệ thông cũng là bài toán cân được quan tâm. Mục tiêu của dé tài là nghiên cứu, phát triển một hệ thống định vi trong bản đồ 3D và thực hiện nhiệm vụ leo cầu thang. Các mục tiêu được đặt ra bao gồm: sử dụng hệ điều hành ROS thu nhận dữ liệu từ bất kỳ loại cảm biến laser 2D và camera 3D nào, sử dụng thuật toán RFAB-Map để xác định vị trí tương đối của robot so với vị trí gốc khi robot di chuyền. Kết quả của dé tài sẽ được sử dụng dé phát triển robot dịch vụ có khả năng di chuyên trong các toà nhà cao tang, ứng dụng trong robot don dep, robot dan đường, robot vận chuyền hang.
TONG QUAN Phan Tông quan sé phân tích, đánh giá các hướng nghiên cứu đã có của các tác gia trong và ngoài nước liên quan đên đê tài, từ đó chỉ ra những van đê ma đê tài cân tập trung nghiên cứu giải quyết. Giới thiệu các nghiên cứu có liên quan 1. Nghiên cứu tích hợp ROS2 và RTOS cho robot tự hành Đây là đề tài khoá luận tốt nghiệp của Phùng Văn Hảo và Phan Hữu Đạt, sinh viên khoa Kỹ thuật Máy tính, trường Dai học Công nghệ thông tin. Hệ thống sử dụng kit Jetson TX2 với hệ điều hành ROS2 và STM32 sử dụng hệ điều hành RTOS tích hợp cùng với Micro-Ros.1 Robot định vị và tìm đường di trên bản đồ 2D đã tao Robot tái tạo môi trường và định vi trên bản đồ 2D bằng dữ liệu thu được từ cảm biến laser 2D và thực hiện nhiệm vụ di chuyển đến vị trí được chỉ định trên bản đô, đông thời đảm bảo né tránh các vật cản cô định hoặc di động.
Robot có thé di chuyên và xoay trên bề mặt phăng. Điểm hạn chế là robot sẽ gặp khó khăn khi chạy trên bề mặt ghồ ghé. Các sản phẩm robot có khả năng leo tréo trên bậc thang Sau đây là 3 loại hình robot đáp ứng tốt nhu cầu leo trèo trên bậc thang: e Mô hình “Legged Based Robot” (tạm dich: robot có chân) e Mô hình “Six-Wheel Robot” (tạm dich: robot sáu bánh xe) e M6 hình “Track Based Robot” (tạm dịch: robot với bánh xe xích) Ví dụ cho mô hình Legged Based Robot là Spot đến từ Boston Dynamics.2 Robot Spot cua Boston Dynamics Robot Spot được hãng Boston Dynamics giới thiệu với mục tiêu chính là hỗ trợ con người trong ngành xe hơi. Spot có trọng lượng 32 kg, có khả năng mang vật nặng lên đến 14 kg và tốc độ trung bình khi di chuyển đạt khoảng 5-6 km/h.
Thiết kế của Spot trông giống một chú chó với 4 chân, phần thân và bộ điều khiển nằm phía trước. Đặc biệt, Spot không tạo tiếng ồn khi di chuyển bởi các đệm cao su được bô trí ở phân chân tiêp xúc và các khớp truyền động. Phần thân của Spot có mang cảm biến Lidar để quét môi trường xung quanh và nhận diện vật thé. Khi gắn thêm camera 360°, Spot có thé quan sát môi trường, hỗ trợ cho tính năng dự báo thời tiết.
Ví dụ cho mô hình Six-Wheel Robot là Rocker Bogie Rover đến từ IJSR! - Tạp chí Khoa học và Nghiên cứu Quốc tế. Điểm nổi bật của robot này nằm ở chân và bánh xe của robot. Phần bánh xe với chất liệu cao su có độ ma sắt cao. Động cơ được thiết kế độc lập cho mỗi bánh xe.
Bánh xe phía sau (Rear wheel) được kết nối vào một thanh nối “Rocker” có hình dáng chữ V và vì được cô định trên thân xe (Body) tại điểm gấp khúc nên thanh nói này mới có tên gọi là Rocker (nghĩa là bập bênh). Đầu còn lại của thanh bập bênh “Rocker” được nỗi vào một khớp xoay dé kết nối với một thanh nối khác có tên gọi “Bogie” (nghĩa là giá chuyển hướng). Bogie được kết nối với cặp bánh xe trước (Middle wheel và Front wheel) có nhiệm vụ là các bánh lái của robot. Cấu trúc này được sử dụng khá phổ biến trên hệ thống treo (suspension system) của xe tải sơ mi ro moóc (semi-trailer truck).
! International Journal of Science and Research (www.4 Mô hình 3D cua Rocker Bogie Rover Rocker Bogie có thé chịu được độ nghiêng lên đến 50° theo bat kỳ hướng nào mà không bị lật. Ngoài ra nhờ khung gầm thoáng nên nó có thé vượt qua bat kì chướng ngại vật nào có kích thước, độ cao gấp đôi đường kính bánh xe. Với cấu tạo chân và bánh xe như trên, việc thực hiện nhiệm vụ leo bậc thang sẽ dễ dàng do lực kéo cũng như lực đây được phân bố đều cho mỗi bánh xe. Mô hình robot còn lại là Track Based Robot, sử dụng 2 day đai cao su dé tăng độ bám dính khi bắt đầu leo lên bậc thang, tăng cường lực kéo lên cho toàn bộ robot; chuỗi bánh xe ở phía sau có nhiệm vụ làm lực day robot về phía trước.5 Mô phỏng mô hình robot bánh xe xích Thiết kế này được ứng dụng trong rất nhiều loại xe cơ giới với phần bánh xe xích được thiết kế nâng lên 2 đầu dé xe có thé dé dàng leo trèo trên những địa hình có nhiêu sự chênh lệch vê độ cao hoặc có độ dôc lớn.
Dé tăng độ bám mặt đường khi di chuyên trên bề mặt ghd ghé, có độ dốc lớn hoặc bề mặt sụt lún, có thé kết hợp thiết kế 6 bánh xe và bánh xe xích như hình bên dưới [1]. Six-Wheel Design Track Based Design © eo. Optimal Design Hình 1.6 Mô hình kết hợp thiết kế 6 bánh và bánh xe xích Xét theo độ phức tạp khi xây dựng mô hình cũng như các vật liệu dễ tìm, đề tài sẽ sử dụng mô hình robot 6 bánh xe đề xây dựng robot tự hành leo cầu thang. Một điểm lợi thé khi sử dung mô hình này là giúp tăng độ linh hoạt khi robot di chuyển qua các bề mặt gh6 ghè bởi sự linh hoạt từ khớp xoay của 2 bánh xe trước và lực đây từ bánh sau được tận dụng tối đa.
Thuật toán HDL Graph SLAM HDL Graph SLAM là thuật toán SLAM thời gian thực dành cho laser quét 3D. Nó dựa trên một thuật toán SLAM 3D Graph với một biến đổi phân phối chuẩn? là một quá trình hợp nhất kết quả quét để xác định quỹ đạo. Nó phù hợp cho hệ toạ độ 6DOF gồm có 6 trục, trong đó có 3 trục toạ độ tịnh tiến và 3 trục chuyên động xoay. Thêm vào đó dé scan-matching (so khớp), các đầu vào cảm biến như IMU hoặc GPS có thé được sử dụng như điều kiện biên cho việc xác định quỹ đạo.7 mô tả khái quát 4 node cấu thành HDL Graph SLAM, bao gồm node Prefiltering, node Scan_matching_odometry, node Floor_detection va node thực hiện thuật toán chính hdl_graph_slam.
[3] ? NDT - Normal Distribution Transform 3 Six Degrees of Freedom - 6DOE /velodyne points /filter ed_points | scan matching | /odom /map points Prefiltering odometry hdl graph slam Floor.7 Tổng quan các node của hdl_graph_slam Đầu tiên, đám mây điểm đầu vào được lay mẫu xuống bang Prefiltering, sau đó được chuyên đến các node tiếp theo. Trong khi Scan_matching_odometry ước tính “tư thế” của cảm biến băng cách lặp lại áp dụng quét khớp giữa các khung liên tiếp (nghĩa là ước tinh do đường), thì Floor_detection phát hiện các mặt phang sàn bằng RANSAC. Số đo ước tính và mặt phẳng sàn được phát hiện được gửi tới hdl_graph_slam. Node này sẽ thực hiện loop-closure detection (phát hiện vòng lặp) dé bù cho lỗi tích lũy của quá trình scan matching (so khớp) và tối ưu hóa biéu đồ.
Dữ liệu môi trường thu được từ một cảm biến laser 3D với kiểu dit liệu là point cloud (đám mây điểm). Dữ liệu này được chuyên đến node Prefiltering. Trong node Prefiltering, dữ liệu quét laser được xử lý trước. Các điểm do quá gần hoặc quá xa đều bị loại bỏ.
Điều này có thể được xác định thông qua các giá tri ngưỡng (threshold value) distance_near_thresh và distance_far_thresh. Hơn nữa, các ngoại lệ (the outlires) có thể được loại bỏ khỏi các point cloud trong bước này, thông qua phương pháp bán kính hoặc phương pháp thống kê. e Phương pháp bán kính (radius method) xem xét số lượng điểm lân cận (mật độ lân cận) của một điểm nằm trong bán kính đã cho. Nếu giá tri thấp hơn số lân cận tối thiểu (radius min_neighbours) thì điểm sẽ bị xoá.
e© Phuong pháp thống kê (statistical method): các ngoại lệ có thé được xác định và loại bỏ thông qua độ lệch chuẩn (the standard deviation). Sau khi xử lý đầu vào ở dạng các point cloud, bộ lọc sẽ được xử lý bởi node Scan_matching odometry dé ước tính quỹ đạo và dé dành cho việc nhận diện mặt phẳng (ground surface detection). Việc sử dụng dau ra cho cả 2 node, quỹ đạo sau đó được tối ưu hoá trong node hdl_graph_slam, dẫn đến ban đồ đầu ra mong muốn (desired output map) bao gồm các điểm 3D đã ghi nhận.