Bối cảnh và vấn đề nghiên cứu

Trong xu thế phát triển của khoa học công nghệ, các hệ thống thông minh phục vụ đời sống con người đang trở thành tâm điểm nghiên cứu, trong đó robot dịch vụ (như robot hút bụi, lau nhà, robot dẫn đường, vận chuyển hàng tại bệnh viện, sân bay, trung tâm thương mại) là nhóm sản phẩm có tiềm năng ứng dụng thực tế cao. Phần lớn các dòng robot tự hành hiện nay chủ yếu vận hành trên bề mặt phẳng và trong không gian giới hạn có chướng ngại vật cố định hoặc di động. Khi đối mặt với môi trường địa hình phân tầng như các tòa nhà nhiều tầng nối nhau bằng hệ thống cầu thang, các giải pháp di chuyển truyền thống bộc lộ rõ hạn chế. Đồng thời, việc tích hợp các cảm biến đặc thù vào hệ thống robot thường gây khó khăn cho việc mở rộng kiến trúc phần cứng và giải thuật.

Khóa luận tốt nghiệp của tác giả Huỳnh Ngọc Hiệp Ý và Trịnh Đăng Dương (ngành Kỹ thuật Máy tính, Trường Đại học Công nghệ Thông tin, Đại học Quốc gia TP.HCM, thực hiện năm 2023 dưới sự hướng dẫn của ThS. Phạm Minh Quân) tập trung giải quyết bài toán định vị trong bản đồ 3D kết hợp khả năng vượt địa hình cầu thang.

Mục tiêu nghiên cứu của đề tài được xác định cụ thể gồm:

  1. Sử dụng hệ điều hành ROS (Robot Operating System) thu nhận dữ liệu từ cảm biến laser 2D và camera 3D.
  2. Sử dụng thuật toán RTAB-Map để xác định vị trí tương đối của robot so với vị trí gốc khi robot di chuyển.
  3. Thực hiện di chuyển đến vị trí được chỉ định và thực hiện nhiệm vụ leo trèo trên các bậc thang từ chân cầu thang.

Đối tượng nghiên cứu của khóa luận là hệ thống định vị và lập bản đồ đồng thời (Simultaneous Localization And Mapping - SLAM) trong không gian 3 chiều và mô hình robot tự hành 6 bánh (Six-Wheel Robot).

Phạm vi nghiên cứu được giới hạn bởi các thông số kỹ thuật và điều kiện vận hành sau:

  • Không gian hoạt động: Môi trường trong nhà và khu vực cầu thang thực tế (khảo sát trực tiếp tại các tòa nhà A, B, C, E của Trường Đại học Công nghệ Thông tin, trong đó lấy kích thước bậc thang ngoài trời tại sân trước tòa nhà B làm chuẩn thiết kế).
  • Khả năng cơ học: Robot được thiết kế để leo tối thiểu 1 tầng lầu (tương đương 10 bậc thang); không có khả năng nhảy qua vật cản hoặc bay; chuyển động bắt đầu từ chân cầu thang.
  • Vận tốc: Tốc độ di chuyển trung bình đạt 1 km/h, tốc độ tối đa cho phép là 5 km/h.
  • Tốc độ xử lý giải thuật: Tốc độ khung hình xử lý SLAM đạt tối thiểu 15 khung hình/giây (fps).
  • Sai số hệ thống (khi qua bộ lọc): Sai số vị trí không vượt quá 0.1 m và sai số góc quay tối đa là 1 độ.
  • Cơ chế vận hành: Tự chủ hoàn toàn (robot tự quyết định hướng đi dựa trên cảm biến và điểm chỉ định), không có sự can thiệp thủ công từ con người sau khi bắt đầu tác vụ.
  • Nguồn cấp: Sử dụng bộ nguồn pin LiPo gắn trực tiếp trên robot với tổng dung lượng 10400 mAh, đảm bảo thời gian vận hành liên tục ước tính khoảng 15 phút ở mức công suất tối đa.

Cơ sở lý thuyết và phương pháp

Khóa luận kết hợp chặt chẽ giữa lý thuyết động lực học cơ khí, hệ thống nhúng và xử lý dữ liệu cảm biến đa luồng trong không gian ba chiều:

  1. Khung lý thuyết và mô hình tính toán:

    • Hệ điều hành robot (ROS): Ứng dụng nền tảng ROS Melodic Morenia chạy trên hệ điều hành Ubuntu Bionic (18.04). ROS đóng vai trò trừu tượng hóa phần cứng, quản lý giao tiếp giữa các thành phần thông qua kiến trúc phân tán gồm Master (khởi tạo qua XMLRPC trên cổng mặc định 11311), các Node (thực thi tác vụ độc lập), Topic (kênh trao đổi message theo cơ chế Publish/Subscribe qua TCPROS/XMLRPC), Service (giao tiếp đồng bộ hai chiều Client/Server) và hệ thống đóng gói Catkin Workspace.
    • Giải thuật SLAM và Visual SLAM (vSLAM): Khảo sát nguyên lý ước tính quỹ đạo di chuyển đồng thời với việc tái tạo bản đồ môi trường, hạn chế sai số trượt bánh xe thông qua so khớp khung hình liên tiếp.
    • Thuật toán RTAB-Map (Real-Time Appearance-Based Mapping): Sử dụng phương pháp tiếp cận đồ thị RGB-D (RGB-D Graph SLAM) kết hợp bộ phát hiện vòng lặp kín (Loop Closure Detector) dựa trên kỹ thuật từ vựng thị giác (Bag of Visual Words - BoVW) và thuật toán ICP (Iterative Closest Point). Cấu trúc quản lý bộ nhớ của RTAB-Map được chia thành ba tầng: Bộ nhớ ngắn hạn (STM - Short-Term Memory), Bộ nhớ làm việc (WM - Working Memory) và Bộ nhớ dài hạn (LTM - Long-Term Memory). Khi số lượng node trong WM vượt quá ngưỡng thời gian xử lý cho phép, STM sẽ chuyển bớt các node cũ sang LTM, giúp tối ưu hóa biểu đồ tư thế (pose graph) và duy trì khả năng tính toán thời gian thực trong không gian rộng lớn.
    • Động lực học và công suất động cơ: Áp dụng Định luật II Newton để phân tích hợp lực trên mặt phẳng nghiêng góc $\alpha = 45^\circ$. Với khối lượng xe ước tính $m = 5\text{ kg}$, gia tốc trọng trường $g = 10\text{ m/s}^2$, trọng lượng $P = 50\text{ N}$, lực kéo động cơ $F_k$ phải thắng được thành phần trọng lực song song mặt phẳng nghiêng, lực ma sát và lực quán tính ($F_k - P\sin\alpha - T_{ms} = ma$). Để đảm bảo mô-men xoắn thắng lực đối ngẫu của bánh xe ($T_{motor} > T_{wheel}$), hệ thống dẫn động yêu cầu tỉ số truyền hộp số $N > 1$ và công suất động cơ tối thiểu đạt 25W.
  2. Phương pháp nghiên cứu thực nghiệm:

    • Phương pháp khảo sát thực địa: Tiến hành đo đạc kích thước thực tế hệ thống bậc thang tại các tòa nhà A, B, C, E trong khuôn viên trường đại học để xác định kích thước tới hạn mà khung gầm robot phải vượt qua.
    • Phương pháp thiết kế mô hình hóa: Lựa chọn cấu trúc Six-Wheel Robot lấy cảm hứng từ cơ cấu Rocker-Bogie Rover (khung gầm có khớp xoay bập bênh, có khả năng chịu độ nghiêng 50 độ không lật và vượt chướng ngại vật cao gấp đôi đường kính bánh). Thiết lập góc nghiêng chân robot 45 độ so với phương thẳng đứng, kết hợp các khớp nối 90 độ và 135 độ tạo thành các tam giác vuông cân để tối ưu phân bổ lực.
    • Phương pháp tích hợp và hợp nhất dữ liệu cảm biến: Thiết lập chuỗi truyền nhận dữ liệu đồng bộ giữa cảm biến laser 2D quét góc 360 độ, camera đo độ sâu RGB-D và cảm biến góc quay bánh xe (wheel encoder).
  3. Nguồn dữ liệu:

    • Dữ liệu đám mây điểm 3D (Point Cloud) và ảnh màu/độ sâu thu nhận từ cảm biến máy ảnh ORBBEC Astra 3D Camera qua chuẩn giao tiếp USB 2.0.
    • Dữ liệu quét laser khoảng cách 2D (LaserScan) từ cảm biến RP-LiDAR A1M8 qua giao thức nối tiếp UART.
    • Dữ liệu xung tốc độ (Odometry) từ cảm biến Encoder quang học tích hợp trên trục động cơ một chiều, thu thập thông qua vi điều khiển Arduino UNO R3.

Thiết kế và triển khai

Hệ thống robot tự hành leo thang được xây dựng hoàn chỉnh từ phần cứng cơ khí, mạch điện tử đến tầng phần mềm điều khiển:

Kiến trúc phần cứng và thiết kế cơ khí

Khung robot được chia thành hai phần chính:

  • Phần thân trên là bộ khung hộp kích thước $250 \times 240 \times 140\text{ mm}$, dùng để cố định máy tính nhúng, các board vi điều khiển, mạch công suất và cụm cảm biến.
  • Phần khung chân di động có tổng chiều cao khoảng $520\text{ mm}$. Cấu trúc chân trước có chiều dài khoảng $26\text{ cm}$, chân sau dài $51\text{ cm}$, thanh đỡ cảm biến dài $25\text{ cm}$, khoảng cách giữa chân trước và thanh đỡ là $26\text{ cm}$.
Thiết bị / Linh kiện Thông số kỹ thuật chính Vai trò trong hệ thống
NVIDIA Jetson TX1 CPU 64-bit ARM Cortex-A57, GPU Maxwell 256 nhân (1 TFLOP/s), 4GB LPDDR4, 16GB eMMC, nguồn cấp 19VDC - 5A Máy tính xử lý trung tâm, chạy hệ điều hành ROS, thực thi thuật toán RTAB-Map và xử lý dữ liệu 3D
STM32F429 Discovery MCU 32-bit ARM Cortex-M4, 2MB Flash, 256KB RAM, màn hình LCD 2.4 inch QVGA, 144 chân GPIO Kit phát triển vi điều khiển hỗ trợ các tác vụ điều khiển nhúng
Arduino UNO R3 Vi điều khiển ATmega328P (16 MHz), 14 chân Digital (6 chân PWM ~500Hz), 6 chân Analog, 32KB Flash Vi điều khiển trung gian, tạo xung PWM điều khiển tốc độ động cơ và đọc xung ngắt từ Encoder
RP-LiDAR A1M8 Tần số quét 10Hz, tầm đo 0.3m – 12m, góc quét 360°, tốc độ lấy mẫu 8000 mẫu/giây, giao tiếp UART (5VDC) Quét mặt phẳng 2D, phát hiện vật cản và cung cấp dữ liệu scan-matching cho odometry
ORBBEC Astra 3D Độ phân giải RGB và Depth: 640x480 @ 30fps, tầm quan sát $60^\circ\text{H} \times 49.5^\circ\text{V} \times 73^\circ\text{D}$, sai số $\pm 1 - 3\text{ mm}/1\text{m}$ Thu nhận hình ảnh màu và bản đồ độ sâu phục vụ tái tạo bản đồ 3D và phát hiện vòng lặp
Driver XY-160D Điện áp 7 – 24VDC, dòng điều khiển 3 – 11mA, công suất tối đa 160W/động cơ, cách ly quang, tần số PWM 0 – 10 kHz Mạch cầu H điều khiển đảo chiều và điều chế tốc độ cho 2 động cơ DC độc lập
Động cơ JGB37-545 Động cơ DC Servo 12VDC, tốc độ 37 RPM, tích hợp sẵn Encoder tương đối 2 kênh A/B (16 xung/vòng/kênh) Dẫn động bánh xe giữa ở mỗi bên chân robot, cung cấp lực kéo chính và phản hồi quãng đường
Động cơ GB37-520 Động cơ DC giảm tốc 12VDC, tốc độ quay 7 RPM, mô-men xoắn lớn Dẫn động các trục bánh phụ chịu lực
Pin LiPo (2 bộ) Điện áp 12V, dung lượng 5200 mAh/bộ, dòng xả 45C (ghép song song thành 10400 mAh) Cung cấp nguồn năng lượng độc lập toàn hệ thống

Bảng phân tích công suất tiêu thụ tối đa của toàn bộ thiết bị: $$\sum P = P_{\text{STM}} + P_{\text{TX1}} + 4 \times P_{\text{M520}} + 2 \times P_{\text{M545}} + 6 \times P_{\text{Driver}}$$ Thời gian vận hành liên tục lý thuyết được tính toán theo công thức: $$t = \frac{10400 \times 10^{-3}\text{ (Ah)} \times 12\text{ (V)}}{P_{\text{tổng}}}\text{ (h)}$$ Kết quả tính toán thực tế cho thấy với công suất xả tối đa, bộ pin đáp ứng thời gian chạy liên tục khoảng 15 phút.

Bảng điều khiển trạng thái động cơ qua mạch công suất XY-160D:

ENA / ENB IN1 / IN3 IN2 / IN4 Chức năng hoạt động
Tùy chọn 0 0 Phanh động cơ
Tùy chọn 1 1 Thả tự do động cơ
PWM 1 0 Quay thuận (tiến) với tốc độ điều biến
PWM 0 1 Quay nghịch (lùi) với tốc độ điều biến
1 1 0 Chạy tiến với tốc độ tối đa
1 0 1 Chạy lùi với tốc độ tối đa

Kiến trúc phần mềm và triển khai nút ROS

Hệ thống RTAB-Map trên ROS Melodic được tổ chức thành các nút liên kết chặt chẽ:

  • Nút Lidar: Đọc dữ liệu quét laser từ cảm biến RP-LiDAR A1M8 và xuất ra topic sensor_msgs/LaserScan đến nút rtabmap.
  • Nút Camera3D: Đọc dữ liệu ảnh màu và ảnh chiều sâu kèm thông số cấu hình nội suy, xuất ra các topic sensor_msgs/Image (rgb), sensor_msgs/Image (depth) và sensor_msgs/CameraInfo.
  • Nút Rgbd_sync: Tiếp nhận các luồng dữ liệu từ camera để đồng bộ tem thời gian (timestamp) trước khi chuyển tiếp thành dữ liệu rtabmap_ros/rgbd_image.
  • Nút Rtabmap: Trung tâm xử lý thuật toán SLAM, tiếp nhận tín hiệu quét laser, hình ảnh đã đồng bộ và thông tin tư thế từ nav_msgs/Odometry. Nút xuất ra dữ liệu bản đồ rtabmap/MapData cùng lưới tọa độ 2D (nav_msgs/OccupancyGrid) và lưới không gian 3D (OctoMap / Point Cloud).
  • Nút Rviz / rtabmapviz: Công cụ trực quan hóa hỗ trợ người lập trình theo dõi trực tiếp quỹ đạo di chuyển và bản đồ 3D trong thời gian thực.
  • Giao tiếp tầng thấp: Arduino UNO R3 đảm nhận đọc tín hiệu xung dịch pha 90 độ giữa kênh A và kênh B của Encoder (tạo độ phân giải 32 xung/vòng) và xuất xung PWM điều khiển động cơ qua driver XY-160D, kết nối dữ liệu hai chiều với ROS qua giao tiếp nối tiếp.

Nội dung chính theo từng chương

Chương 1: Tổng quan

Chương 1 khái quát các nghiên cứu liên quan đến robot tự hành và giải thuật SLAM trong và ngoài nước. Tác giả phân tích khóa luận tốt nghiệp của Phùng Văn Hảo và Phan Hữu Đạt (Trường Đại học Công nghệ Thông tin) về việc tích hợp ROS2 và RTOS trên kit Jetson TX2 kết hợp STM32, chỉ ra điểm hạn chế là robot chỉ di chuyển và định vị 2D trên bề mặt phẳng, gặp khó khăn lớn khi tiếp cận địa hình gồ ghề.

Khảo sát các cấu trúc cơ khí leo thang gồm 3 dạng:

  • Legged Based Robot: Điển hình là robot Spot của Boston Dynamics (nặng 32 kg, tải trọng 14 kg, tốc độ 5 - 6 km/h, sử dụng 4 chân đệm cao su giảm chấn, tích hợp LiDAR và camera 360 độ).
  • Six-Wheel Robot: Cấu trúc Rocker Bogie Rover với thanh bập bênh Rocker chữ V kết nối khớp xoay Bogie, giúp phân bổ đều lực kéo, vượt vật cản gấp đôi đường kính bánh và chịu nghiêng tới 50 độ không lật.
  • Track Based Robot: Thiết kế bánh xích kết hợp đai cao su tăng diện tích tiếp xúc và độ bám dốc lớn.

Từ phân tích so sánh độ phức tạp gia công và tính sẵn có của vật liệu, nhóm tác giả lựa chọn mô hình 6 bánh xe. Về mặt giải thuật, chương phân tích chuyên sâu hai thuật toán SLAM 3D: HDL Graph SLAM (gồm 4 node: Prefiltering lọc ngoại lệ bằng bán kính/thống kê, Scan_matching_odometry ước tính tư thế bằng NDT/ICP/GICP/VGICP, Floor_detection nhận diện mặt phẳng sàn bằng RANSAC, và node tối ưu hdl_graph_slam) và RTAB-Map. Tác giả chỉ ra RTAB-Map có ưu thế vượt trội về tính linh hoạt phần cứng, cho phép kết hợp đa dạng cảm biến giá thành thấp và tự động chuyển đổi cấu hình khi thiếu hụt thiết bị. Cuối chương xác lập rõ các mục tiêu và giới hạn kỹ thuật của đề tài.

Chương 2: Cơ sở lý thuyết

Chương 2 thiết lập nền tảng lý thuyết và cơ sở tính toán cho toàn bộ đồ án:

  • Lý thuyết hệ điều hành ROS: Trình bày chi tiết các thành phần Master, Node, Package, Topic, Message, Service; các công cụ dòng lệnh kiểm tra topic (rostopic bw, delay, echo, find, hz, info, list, pub, type); quy trình tạo Catkin Workspace, biên dịch gói bằng catkin_make và quản lý thực thi bằng tệp .launch.
  • Thuật toán RTAB-Map: Mô tả cơ chế phối hợp đa node, xử lý TF (Transform) xác định tọa độ không gian của từng cảm biến, và cơ chế chuyển đổi node giữa các phân vùng bộ nhớ STM, WM, LTM nhằm kiểm soát kích thước biểu đồ tối ưu hóa.
  • Tính toán động lực học: Thiết lập hệ phương trình cân bằng lực trên dốc nghiêng 45 độ, tính toán mô-men xoắn cần thiết của trục bánh xe $T_{\text{wheel}} = r \times T_{\text{motor}}$ để thắng lực ma sát và phản lực mặt đường.
  • Khảo sát kích thước cầu thang thực tế:
Địa điểm khảo sát Chiều cao bậc (mm) Chiều rộng bậc (mm) Ghi chú
Cầu thang tiêu chuẩn phổ biến 150 300 Tiêu chuẩn an toàn xây dựng
Tòa nhà A, B, E (UIT) 180 310 Cầu thang bộ trong nhà
Tòa nhà C (UIT) 150 320 Cầu thang bộ trong nhà
Sân trước tòa nhà B (UIT) - Bậc 1 240 810 Bậc thềm ngoài trời
Sân trước tòa nhà B (UIT) - Các bậc sau 180 790 Bậc thềm ngoài trời

Dựa trên kích thước bậc thềm sân trước tòa nhà B (chiều cao bậc lên tới 180 - 240 mm, lớn hơn tiêu chuẩn trong nhà), nhóm tác giả chọn bộ thông số này làm mốc giới hạn để tính toán hình học khung chân 6 bánh: chiều cao chân tối thiểu 18 cm, chân trước 26 cm, chân sau 51 cm, đặt nghiêng góc 45 độ.

  • Tính toán nguồn năng lượng: Xác định tổng công suất tiêu thụ tối đa của các thành phần mạch điện (STM32: 0.18W; Jetson TX1: 95W; 4 động cơ GB37-520: 10W; 2 động cơ JGB37-545: 40W; 6 driver XY-160D: 35W) và tính toán dung lượng bộ pin LiPo 10400 mAh đảm bảo duy trì vận hành liên tục khoảng 15 phút.

Chương 3: Thiết lập robot tự hành

Chương 3 đi sâu vào quá trình hiện thực hóa mô hình thực nghiệm:

  • Trình bày đặc tả kỹ thuật chi tiết của từng linh kiện: Jetson TX1, STM32F429 Discovery, Arduino UNO R3, RP-LiDAR A1M8, Astra 3D Camera, mạch công suất XY-160D và các động cơ DC.
  • Hiện thực mạch điều khiển và đọc tín hiệu Encoder: Phân tích cơ chế lệch pha giữa hai kênh A và B để xác định chiều quay và vận tốc; lập trình hàm analogWrite() trên Arduino để điều biến độ rộng xung PWM (tần số 500Hz, chu kỳ nhiệm vụ 0 - 255) điều khiển tốc độ qua driver XY-160D.
  • Kết nối hệ thống vi xử lý và cảm biến: Sơ đồ nối dây giữa cụm cảm biến quét laser, camera chiều sâu với máy tính nhúng qua cổng USB; kết nối Arduino với driver điều khiển động cơ qua các chân logic IN/EN và chân cấp nguồn động lực độc lập.
  • Xây dựng hệ thống RTAB-Map trên ROS: Cấu hình môi trường Ubuntu 18.04, thiết lập các file launch đồng bộ dữ liệu đa cảm biến và khởi chạy mô hình thử nghiệm.
  • Kết quả kiểm thử thực nghiệm:
    • Hoàn thiện chế tạo khung vỏ cơ khí và đấu nối toàn bộ hệ thống điện tử.
    • Thu nhận thành công dữ liệu quét 360 độ từ RP-LiDAR A1M8 qua package rplidar_ros.
    • Thiết lập kênh truyền thông ổn định giữa Arduino và ROS.
    • Tiến hành lập bản đồ 2D thời gian thực thông qua thuật toán hector_slam và tích hợp thành công dữ liệu wheel encoder với dữ liệu quét laser để cung cấp odometry cho RTAB-Map tái tạo không gian 3D. Tốc độ di chuyển trung bình thực nghiệm đạt 1 km/h.

Chương 5: Hướng phát triển

Chương 5 đề xuất các hướng cải tiến kỹ thuật cho hệ thống:

  • Tối ưu hóa thuật toán RTAB-Map để giảm tải tiêu thụ bộ nhớ và tài nguyên xử lý trên máy tính nhúng, cho phép mở rộng quy mô bản đồ lớn hơn.
  • Cải thiện kết cấu cơ khí chân robot, nghiên cứu bổ sung vật liệu giảm chấn và cơ cấu tăng ma sát bám đường nhằm tăng tính ổn định khi di chuyển trên các bề mặt cầu thang trơn trượt hoặc có độ dốc thay đổi.
  • Tích hợp thêm các bộ lọc trạng thái và cảm biến góc nghiêng (IMU) chuyên dụng để bù trừ sai số tích lũy khi di chuyển trên địa hình phức tạp kéo dài.

Kết quả và đóng góp

Khóa luận đã hoàn thành các mục tiêu đề ra với những kết quả định lượng cụ thể:

  • Chế tạo thành công mô hình robot 6 bánh tự hành có kích thước thân $250 \times 240 \times 140\text{ mm}$, chiều cao khung chân $\sim 520\text{ mm}$, góc nghiêng chân $45^\circ$, đáp ứng khả năng leo bậc thang có chiều cao từ 180 mm đến 240 mm (theo chuẩn khảo sát sân tòa nhà B, UIT).
  • Tích hợp và đồng bộ hóa thành công 3 luồng dữ liệu cảm biến: Camera ORBBEC Astra 3D (ảnh màu và ảnh độ sâu 640x480 @ 30fps), cảm biến RP-LiDAR A1M8 (tần số quét 10Hz, tầm đo 0.3 - 12m) và cảm biến vận tốc Encoder (độ phân giải 32 xung/vòng).
  • Triển khai thành công hệ thống định vị và tái tạo bản đồ 3D dựa trên thuật toán RTAB-Map trên nền tảng ROS Melodic Morenia.
  • Vận tốc di chuyển trung bình của robot đạt 1 km/h, tốc độ khung hình xử lý SLAM đạt trên 15 fps, sai số vị trí kiểm soát dưới 0.1 m và sai số góc quay dưới 1 độ.
  • Hệ thống hoạt động hoàn toàn bằng nguồn pin tích hợp LiPo 12V - 10400 mAh với thời gian vận hành liên tục khoảng 15 phút ở công suất tối đa.

Giải pháp và kiến nghị kỹ thuật do nhóm tác giả đề xuất:

  • Khai thác kiến trúc bộ nhớ phân tầng (STM, WM, LTM) của RTAB-Map để xử lý triệt để hiện tượng tràn bộ nhớ tính toán trong các bài toán SLAM không gian lớn.
  • Đề xuất các kịch bản cấu hình dự phòng linh hoạt cho nút ROS khi phần cứng cảm biến bị thiếu hụt: sử dụng thuật toán ICP thông qua package laser_scan_matcher hoặc hector_slam để tạo odometry từ dữ liệu laser 2D khi thiếu encoder; mô phỏng dữ liệu quét laser từ ảnh độ sâu qua package depthimage_to_laserscan khi thiếu cảm biến LiDAR.
  • Lựa chọn động cơ một chiều có tỉ số truyền $N > 1$ và công suất từ 25W trở lên nhằm đảm bảo mô-men xoắn thắng lực đối ngẫu của bánh xe khi leo dốc nghiêng.

Đóng góp so với nghiên cứu trước (theo tự đánh giá của tác giả):

  • Khắc phục hạn chế của các đề tài trước đó (như nghiên cứu của Phùng Văn Hảo và Phan Hữu Đạt, vốn chỉ dừng lại ở bản đồ 2D và di chuyển trên mặt sàn phẳng, mất khả năng vận hành khi gặp địa hình gồ ghề).
  • Hiện thực hóa thành công giải pháp kết hợp giữa cấu trúc cơ khí vượt địa hình 6 bánh và giải thuật SLAM 3D đa cảm biến (RGB-D Graph SLAM), mở ra khả năng ứng dụng thực tế cho robot phục vụ trong các tòa nhà cao tầng mà không bị cô lập giữa các tầng lầu.

Hạn chế và hướng nghiên cứu tiếp

Khóa luận tự chỉ ra các hạn chế kỹ thuật trong quá trình thực nghiệm:

  • Thời lượng hoạt động của pin còn ngắn (khoảng 15 phút ở công suất tối đa), do máy tính nhúng và hệ thống 6 động cơ dẫn động tiêu thụ năng lượng lớn.
  • Robot bị giới hạn về khả năng vượt chướng ngại vật: không thể bay hoặc nhảy qua các khoảng hở lớn; quá trình leo thang bắt buộc phải tiếp cận và xuất phát từ chân cầu thang.
  • Cấu hình các node trong RTAB-Map phức tạp, phụ thuộc nhiều vào năng lực tính toán của phần cứng; trường hợp không có camera 3D thì hệ thống sẽ mất hoàn toàn khả năng phát hiện vòng lặp kín bằng hình ảnh trực quan (Visual BoVW).
  • Khả năng vượt địa hình cầu thang mới chỉ được kiểm nghiệm trên mô hình bậc thang ngoài trời sân tòa nhà B và cầu thang tiêu chuẩn của các tòa nhà UIT, chưa đánh giá toàn diện trên các bề mặt vật liệu trơn trượt (như đá hoa cương bóng, gỗ trơn) hoặc bậc thang hở.

Các hướng mở rộng tiếp theo:

  • Tối ưu hóa việc phân bổ tài nguyên xử lý giữa tầng tính toán cấp cao (ROS) và tầng nhúng cấp thấp (Arduino/STM32) nhằm giảm tải tiêu thụ điện năng.
  • Nâng cấp dung lượng pin hoặc bổ sung cơ chế quản lý năng lượng thông minh cho từng module động cơ.
  • Bổ sung cảm biến đo quán tính (IMU 6DOF/9DOF) để tăng cường độ chính xác cho việc ước lượng tư thế robot khi di chuyển trên bề mặt nghiêng lớn.
  • Hoàn thiện giải thuật điều khiển chuyển động tự động bám quỹ đạo khi chuyển tiếp giữa mặt sàn phẳng và bậc cầu thang.

Giá trị tham khảo

Báo cáo khóa luận có giá trị tham khảo thiết thực cho:

  • Sinh viên, học viên cao học và kỹ sư thuộc các chuyên ngành Kỹ thuật Máy tính, Cơ điện tử, Kỹ thuật Điều khiển và Tự động hóa, Khoa học Máy tính đang thực hiện đề tài tốt nghiệp hoặc dự án nghiên cứu về robot tự hành, xe tự hành trong nhà và ngoài trời.
  • Các nhóm nghiên cứu ứng dụng hệ điều hành ROS (ROS1/ROS2), tích hợp giải thuật SLAM 2D/3D (RTAB-Map, Hector SLAM, HDL Graph SLAM), xử lý dữ liệu đám mây điểm (Point Cloud) và thị giác máy tính RGB-D.
  • Các nội dung có giá trị tham khảo chuyên sâu:
    • Phương pháp phân tích hợp lực và tính toán công suất động cơ trên mặt phẳng nghiêng kết hợp cơ cấu chân 6 bánh vượt bậc thang (Mục 2.4, 2.6).
    • Quy trình cấu hình, đồng bộ hóa dữ liệu đa cảm biến (LiDAR 2D, Camera 3D, Encoder) và tổ chức các nút chức năng trong package rtabmap_ros (Mục 2.3, Bảng 2.1, Hình 2.2, Hình 2.3).
    • Bản đặc tả kỹ thuật, sơ đồ phối ghép chân và logic điều khiển giữa vi điều khiển, mạch cầu H công suất lớn XY-160D và động cơ DC có Encoder phản hồi (Mục 3.1, Bảng 3.1 đến 3.11).

Câu hỏi thường gặp

1. Robot sử dụng cơ cấu cơ khí nào để leo cầu thang và kích thước khung gầm được thiết kế ra sao? Robot sử dụng cấu trúc Six-Wheel Robot (6 bánh xe) lấy cảm hứng từ cơ cấu Rocker-Bogie Rover, có khả năng chịu độ nghiêng 50 độ không lật. Phần thân trên có kích thước $250 \times 240 \times 140\text{ mm}$ dùng để đặt vi điều khiển và cảm biến; hệ thống chân có chiều cao $\sim 520\text{ mm}$, đặt nghiêng góc 45 độ so với phương thẳng đứng, gồm chân trước dài 26 cm, chân sau dài 51 cm và thanh đỡ cảm biến dài 25 cm.

2. Giải thuật RTAB-Map kiểm soát hiện tượng bùng nổ tài nguyên tính toán khi lập bản đồ không gian lớn bằng cách nào? RTAB-Map phân chia bộ nhớ thành ba tầng gồm bộ nhớ ngắn hạn (STM), bộ nhớ làm việc (WM) và bộ nhớ dài hạn (LTM). Khi số lượng node lưu trữ trong WM đạt ngưỡng thời gian xử lý cho phép, STM sẽ chủ động chuyển các node ít tương quan nhất sang LTM, giúp giữ kích thước WM luôn cố định và đảm bảo thời gian cập nhật bản đồ thời gian thực.

3. Hệ thống nguồn điện trên robot được thiết kế như thế nào và thời gian hoạt động liên tục là bao lâu? Hệ thống sử dụng 2 bộ pin LiPo 12V dung lượng 5200 mAh dòng xả 45C mắc song song, tạo thành bộ nguồn tổng $12\text{V} - 10400\text{ mAh}$. Khi toàn bộ thiết bị (gồm máy tính nhúng Jetson TX1, vi điều khiển STM32, 6 động cơ DC và 6 mạch driver) vận hành ở công suất tối đa, thời gian sử dụng liên tục ước tính đạt khoảng 15 phút.

4. Kích thước bậc thang thực tế nào được nhóm nghiên cứu sử dụng làm chuẩn thiết kế hình học cho robot? Nhóm nghiên cứu đã khảo sát trực tiếp cầu thang các tòa nhà A, B, C, E tại UIT và chọn kích thước bậc thang ngoài trời tại sân trước tòa nhà B làm chuẩn. Bậc đầu tiên tại đây có chiều cao 240 mm, chiều rộng 810 mm; các bậc tiếp theo có chiều cao 180 mm, chiều rộng 790 mm (đều lớn hơn kích thước cầu thang tiêu chuẩn trong nhà là cao 150 mm, rộng 300 mm).

5. Khi hệ thống bị thiếu cảm biến Wheel Odometry hoặc thiếu cảm biến Laser 2D, giải thuật RTAB-Map được xử lý dự phòng như thế nào? Nếu thiếu odometry từ bánh xe, hệ thống sẽ sử dụng dữ liệu quét từ cảm biến laser 2D kết hợp thuật toán so khớp ICP thông qua package laser_scan_matcher hoặc hector_slam để tạo ra node icp_odometry. Trường hợp thiếu cảm biến laser 2D, hệ thống sử dụng package depthimage_to_laserscan để mô phỏng dữ liệu quét laser từ hình ảnh độ sâu của camera 3D.

Kết luận

Khóa luận tốt nghiệp của tác giả Huỳnh Ngọc Hiệp Ý và Trịnh Đăng Dương đã hiện thực hóa thành công một giải pháp kỹ thuật tích hợp hoàn chỉnh giữa cơ cấu cơ khí vượt địa hình 6 bánh và hệ thống định vị, lập bản đồ 3D tự hành bằng giải thuật RTAB-Map trên nền tảng ROS Melodic. Nghiên cứu đã giải quyết được bài toán phối hợp đa cảm biến gồm camera RGB-D Astra 3D, RP-LiDAR A1M8 và cảm biến Encoder để xây dựng bản đồ không gian ba chiều với sai số dưới 0.1 m ở vận tốc 1 km/h. Đồ án cung cấp hệ thống số liệu tính toán động lực học, kích thước hình học khảo sát thực tế và cấu hình phần mềm cụ thể, đóng vai trò tài liệu kỹ thuật có giá trị tham khảo cao cho các nghiên cứu phát triển robot dịch vụ leo cầu thang trong môi trường nhà cao tầng.