linorobot/linorobot2

Autonomous mobile robots (2WD, 4WD, Mecanum Drive)

解決的問題

linorobot2 為從裸機硬體到完全自主導航的機器人提供了一個完整的基礎。它消除了手動串接 Nav2、SLAM Toolbox 和 robot_localization 等複雜 ROS2 元件的需要,提供一個預先整合的堆疊,可在物理硬體與 Gazebo 模擬中同時運作。

工作原理

此專案整合了多個關鍵的 ROS2 套件,以處理自主性的不同面向:

  • 導航與建圖: 使用 Nav2 實現自主導航,使用 SLAM Toolbox 實現建圖。

  • 定位: 採用 robot_localization 的 EKF(擴展卡爾曼濾波器)實現精確定位。

  • 硬體整合: 支援 2WD、4WD 和 Mecanum 驅動配置。使用 micro-ROS 固件(如 Teensy)在微控制器上發布里程計與 IMU 資料作為 ROS2 節點。

  • 模擬: 提供具備雷達與深度相機的機器人模板 URDF,允許使用者在部署至硬體前於 Gazebo 中測試設定。也包含將平面圖影像或 SLAM 地圖轉換為 3D Gazebo 世界的工具。

適用對象

  • 希望從現成零件組裝物理機器人並快速實現自主性的機器人建構者。
  • 希望在可重現的模擬環境中對新硬體設計進行原型設計或測試自主性程式碼(如路徑規劃器與感知流程)的開發者。
  • 將此專案作為學習 Nav2 堆疊的逐步指南的學生與學習者。

主要亮點

  • 統一設定: 模擬與物理硬體使用相同的 YAML 設定檔,確保調校可直接遷移。
  • 真實世界模擬: 包含 image_to_gazebocreate_worlds_from_maps 工具,可將真實世界的平面圖或 SLAM 地圖轉換為精確的 3D 模擬環境。
  • 廣泛感測器支援: 原生支援多種 2D 激光雷達(如 RPLIDAR、LD06)與 RGBD 深度相機(如 Intel RealSense、ZED、OAK-D)。
  • 硬體到模擬同步: 與 micro-ROS 無縫整合,實現微控制器級別的資料發布。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案