Tổng quan nghiên cứu

Trong bối cảnh xã hội hiện đại, việc ứng dụng robot dịch vụ ngày càng trở nên phổ biến nhằm hỗ trợ con người trong các công việc lặp đi lặp lại, đặc biệt là trong gia đình. Robot hút bụi là một trong những thiết bị được quan tâm nhiều do khả năng tiết kiệm thời gian và công sức cho người dùng. Theo báo cáo của ngành, các robot hút bụi thương mại hiện nay đa dạng về mẫu mã và công nghệ, tuy nhiên vẫn tồn tại những hạn chế về hiệu quả bao phủ và định vị trong môi trường phức tạp. Luận văn tập trung xây dựng chương trình điều khiển robot hút bụi iRobot trên môi trường ROS (Robot Operating System), sử dụng robot Kobuki kết hợp cảm biến laser Hokuyo UTM-30LX và phần mềm giả lập Gazebo. Mục tiêu nghiên cứu là phát triển hệ thống quét bản đồ, định vị và điều khiển robot di chuyển bao phủ toàn bộ khu vực cần làm sạch với độ chính xác cao. Phạm vi nghiên cứu bao gồm môi trường giả lập và thực tế tại các không gian trong nhà, với thời gian thực hiện từ năm 2018 đến 2020. Kết quả nghiên cứu có ý nghĩa quan trọng trong việc nâng cao hiệu quả hoạt động của robot hút bụi, góp phần phát triển các ứng dụng robot dịch vụ thông minh trong đời sống.

Cơ sở lý thuyết và phương pháp nghiên cứu

Khung lý thuyết áp dụng

Luận văn dựa trên hai lý thuyết và mô hình nghiên cứu chính:

  • Hệ điều hành robot ROS: ROS cung cấp framework và thư viện mã nguồn mở hỗ trợ phát triển ứng dụng robot, bao gồm các thành phần như node, topic, service, message, và các công cụ quản lý package. ROS cho phép tích hợp các cảm biến, bộ điều khiển và thuật toán định vị, lập bản đồ một cách linh hoạt và hiệu quả.
  • Thuật toán bao phủ CCD*: Thuật toán Complete Coverage D* (CCD*) kết hợp thuật toán D* tìm đường đi ngắn nhất và thuật toán Path Transform để sinh đường đi bao phủ toàn bộ bản đồ lưới. CCD* có khả năng tự động phát hiện vật cản và lập lại đường đi, phù hợp với môi trường thay đổi động.

Các khái niệm chính bao gồm:

  • Bản đồ lưới (Grid Map): Bản đồ được chia thành các ô vuông (cell), mỗi cell biểu diễn một khu vực nhỏ trong thực tế, có giá trị thể hiện vật cản hay không.
  • Định vị AMCL (Adaptive Monte Carlo Localization): Thuật toán định vị dựa trên phương pháp Monte Carlo, sử dụng dữ liệu laser và bản đồ để xác định vị trí robot trên bản đồ lưới.
  • Điều khiển robot dựa trên mô hình publisher/subscriber trong ROS: Robot nhận lệnh di chuyển qua các topic velocity và gửi thông tin vị trí qua topic odom.

Phương pháp nghiên cứu

Nguồn dữ liệu chính bao gồm dữ liệu thu thập từ cảm biến laser Hokuyo UTM-30LX gắn trên robot Kobuki, dữ liệu bản đồ thu được từ quá trình quét môi trường giả lập và thực tế, cùng các thông tin vị trí từ hệ thống định vị AMCL.

Phương pháp phân tích gồm:

  • Quét bản đồ môi trường sử dụng hai công cụ hector_slam và gmapping trên ROS, cả trong môi trường giả lập Gazebo và thực tế.
  • Chuyển đổi dữ liệu bản đồ ảnh (.pgm) sang bản đồ lưới để thuận tiện cho việc xử lý thuật toán bao phủ.
  • Áp dụng thuật toán AMCL để định vị robot trên bản đồ lưới, xử lý sai số định vị bằng cách kết hợp dữ liệu từ topic odom.
  • Xây dựng các hàm điều khiển robot (di chuyển thẳng, quay) dựa trên message Twist trong ROS, đồng thời xử lý các trường hợp ngoại lệ phát sinh trong thực tế.
  • Triển khai thuật toán CCD* để sinh đường đi bao phủ toàn bộ bản đồ, tự động điều chỉnh khi phát hiện vật cản mới.

Quá trình nghiên cứu được thực hiện trong khoảng thời gian từ 2018 đến 2020, với cỡ mẫu là robot Kobuki thực tế và môi trường giả lập mô phỏng căn hộ, tòa nhà. Phương pháp chọn mẫu dựa trên tính đại diện của robot Kobuki và cảm biến laser Hokuyo trong các ứng dụng robot hút bụi phổ biến. Phân tích dữ liệu sử dụng các công cụ ROS, Gazebo, và các thuật toán lập trình C++.

Kết quả nghiên cứu và thảo luận

Những phát hiện chính

  1. Quét bản đồ chính xác trên môi trường giả lập và thực tế: Sử dụng công cụ hector_slam và gmapping, bản đồ môi trường được quét với độ phân giải 0.05m/pixel, cho kết quả chính xác cao. Ví dụ, bản đồ căn hộ giả lập và tòa nhà B1 thực tế được xây dựng rõ ràng với các vật cản được nhận diện đúng vị trí.
  2. Định vị robot bằng AMCL hiệu quả nhưng có độ trễ: Thuật toán AMCL giúp xác định vị trí robot trên bản đồ lưới với sai số nhỏ, tuy nhiên dữ liệu trả về có độ trễ và không liên tục, gây khó khăn trong việc điều khiển chính xác khi robot quay.
  3. Hàm điều khiển robot hoạt động ổn định với sai số chấp nhận được: Các hàm di chuyển tiến, lùi và quay được xây dựng dựa trên message Twist, cho phép robot di chuyển chính xác trong phạm vi sai số nhỏ, đủ để thực hiện nhiệm vụ quét và bao phủ.
  4. Thuật toán CCD thành công trong việc sinh đường đi bao phủ toàn bộ bản đồ*: Thuật toán CCD* kết hợp D* và Path Transform giúp robot tự động phát hiện vật cản mới và lập lại đường đi, đảm bảo robot đi hết các ô trống trên bản đồ. So với các thuật toán ngẫu nhiên, CCD* giảm tỷ lệ bỏ sót và lặp lại đường đi đáng kể.

Thảo luận kết quả

Kết quả quét bản đồ và xây dựng bản đồ lưới cho thấy việc sử dụng laser Hokuyo kết hợp ROS là giải pháp hiệu quả cho bài toán định vị và điều khiển robot hút bụi. Độ phân giải bản đồ 0.05m/pixel cân bằng tốt giữa chi tiết và khối lượng dữ liệu xử lý. Định vị AMCL tuy có độ trễ, nhưng kết hợp với dữ liệu odom giúp cải thiện độ chính xác định vị. Hàm điều khiển robot dựa trên mô hình publisher/subscriber của ROS cho phép điều khiển linh hoạt và dễ dàng tích hợp các thuật toán cao cấp. Thuật toán CCD* thể hiện ưu thế vượt trội trong việc bao phủ toàn bộ khu vực, đặc biệt trong môi trường có vật cản động, so với các phương pháp di chuyển ngẫu nhiên hoặc dựa trên camera trực quan. Các biểu đồ so sánh tỷ lệ bao phủ và thời gian làm việc giữa CCD* và các thuật toán khác có thể minh họa rõ ràng hiệu quả của phương pháp này. Kết quả phù hợp với các nghiên cứu gần đây về ứng dụng thuật toán D* trong robot dịch vụ.

Đề xuất và khuyến nghị

  1. Tối ưu hóa thuật toán định vị AMCL: Cải thiện tốc độ xử lý và độ mượt của dữ liệu định vị bằng cách kết hợp thêm các cảm biến khác như IMU hoặc camera để giảm độ trễ, nâng cao độ chính xác trong môi trường thực tế. Thời gian thực hiện: 6-12 tháng, chủ thể: nhóm nghiên cứu robot.
  2. Phát triển thuật toán điều khiển thích ứng: Xây dựng các hàm điều khiển robot có khả năng tự điều chỉnh tốc độ và góc quay dựa trên dữ liệu cảm biến thời gian thực, giảm sai số di chuyển trong môi trường phức tạp. Thời gian thực hiện: 6 tháng, chủ thể: kỹ sư phần mềm.
  3. Mở rộng ứng dụng thuật toán CCD cho các loại robot khác*: Áp dụng và điều chỉnh thuật toán CCD* cho các robot hút bụi có cấu hình cảm biến và kích thước khác nhau nhằm tăng tính phổ biến và hiệu quả. Thời gian thực hiện: 12 tháng, chủ thể: viện nghiên cứu và doanh nghiệp robot.
  4. Xây dựng hệ thống giám sát và điều khiển từ xa: Phát triển giao diện người dùng trực quan trên nền tảng web hoặc di động để giám sát quá trình làm việc của robot, điều khiển và cập nhật bản đồ từ xa. Thời gian thực hiện: 9 tháng, chủ thể: nhóm phát triển phần mềm.

Đối tượng nên tham khảo luận văn

  1. Nhà nghiên cứu và phát triển robot dịch vụ: Có thể áp dụng các phương pháp quét bản đồ, định vị và thuật toán bao phủ để phát triển các robot hút bụi hoặc robot dịch vụ khác.
  2. Kỹ sư phần mềm ROS: Tham khảo cách tích hợp các node ROS, xây dựng hệ thống điều khiển robot và xử lý dữ liệu cảm biến trong môi trường ROS.
  3. Doanh nghiệp sản xuất robot hút bụi: Áp dụng thuật toán CCD* và các giải pháp định vị để nâng cao hiệu quả và độ chính xác của sản phẩm.
  4. Sinh viên và giảng viên ngành hệ thống thông tin, kỹ thuật máy tính: Sử dụng luận văn làm tài liệu học tập, nghiên cứu về ứng dụng ROS, thuật toán lập trình robot và xử lý bản đồ lưới.

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

  1. Robot hút bụi iRobot sử dụng cảm biến gì để quét bản đồ?
    Robot sử dụng cảm biến laser Hokuyo UTM-30LX với phạm vi quét từ 100mm đến 30m, độ chính xác ±30mm, quét trong góc 270º để thu thập dữ liệu môi trường phục vụ xây dựng bản đồ.

  2. Thuật toán CCD có ưu điểm gì so với các thuật toán bao phủ khác?*
    CCD* kết hợp thuật toán D* để tìm đường đi ngắn nhất khi gặp vật cản mới và thuật toán Path Transform để sinh đường đi bao phủ toàn bộ, giúp giảm tỷ lệ bỏ sót và lặp lại đường đi so với các thuật toán ngẫu nhiên hoặc dựa trên camera.

  3. Làm thế nào để robot định vị chính xác trên bản đồ?
    Robot sử dụng thuật toán AMCL dựa trên dữ liệu laser và bản đồ lưới đã quét, kết hợp với dữ liệu odom từ node kobuki để xác định vị trí hiện tại trên bản đồ với sai số nhỏ.

  4. Phương pháp điều khiển robot trong ROS được thực hiện như thế nào?
    Robot được điều khiển thông qua mô hình publisher/subscriber, trong đó các lệnh vận tốc được gửi dưới dạng message Twist đến topic /mobile_base/commands/velocity, và vị trí robot được nhận từ topic /odom.

  5. Có thể áp dụng hệ thống này cho các loại robot khác không?
    Có thể, hệ thống được thiết kế dựa trên ROS và các thuật toán chuẩn, do đó có thể điều chỉnh và áp dụng cho các robot có cấu hình cảm biến và kích thước khác nhau với một số tùy biến phần mềm.

Kết luận

  • Đã xây dựng thành công hệ thống điều khiển robot hút bụi iRobot trên môi trường ROS, tích hợp robot Kobuki và cảm biến laser Hokuyo.
  • Quét bản đồ môi trường chính xác trên cả giả lập và thực tế, chuyển đổi dữ liệu sang bản đồ lưới phục vụ thuật toán bao phủ.
  • Thuật toán định vị AMCL và các hàm điều khiển robot hoạt động ổn định, đáp ứng yêu cầu di chuyển và định vị trong môi trường phức tạp.
  • Thuật toán CCD* triển khai thành công, giúp robot bao phủ toàn bộ khu vực làm việc, tự động xử lý vật cản mới.
  • Đề xuất các hướng phát triển tiếp theo bao gồm tối ưu định vị, điều khiển thích ứng, mở rộng ứng dụng và phát triển hệ thống giám sát từ xa.

Luận văn mở ra cơ hội ứng dụng rộng rãi cho các hệ thống robot dịch vụ thông minh, góp phần nâng cao chất lượng cuộc sống và hiệu quả lao động. Để tiếp tục phát triển, nhóm nghiên cứu khuyến khích các nhà phát triển và doanh nghiệp áp dụng, thử nghiệm và cải tiến các giải pháp trong thực tế.