manankharwar/fusioncore
ROS 2 sensor fusion SDK: UKF, 3D native, proper GNSS, zero manual tuning. Apache 2.0.
解決的問題
FusionCore 為現實世界的機器人提供魯棒的感測器融合,解決了諸如 IMU 校準漂移、時間戳抖動、GPS 訊號延遲和輪式打滑等常見的硬體問題。透過提供自適應、高頻(100 Hz)的狀態估計系統,它取代了耗時的手動參數調優以及像 robot_localization + navsat_transform 這樣複雜的堆疊。
工作原理
它使用 23 狀態的無跡卡爾曼濾波器 (UKF) 來融合來自 IMU、輪式編碼器和 GPS 的數據。關鍵技術特性包括:
- 自適應雜訊估計:根據創新序列(innovation sequence)持續更新雜訊協方差,以應對變化的感測器品質。
- IMU 環形緩衝區:重放緩衝的更新,以便在延遲的 GPS 定位到達時準確重建濾波器狀態。
- ECEF 融合:直接在地球中心地球固定 (ECEF) 座標系中融合 GPS 數據,以避免 UTM 分區邊界問題。
- 非完整約束 (NHC):將橫向和垂直速度歸零,以防止輪式機器人的漂移。
- 硬體優化:使用 Eigen 自動檢測 ARM (NEON) 和 x86 (AVX) 指令,確保在 Raspberry Pi 和 Jetson 設備上的低延遲。
適用對象
機器人工程師和開發人員,正在構建在室外或混合環境中運行,並且在不需要大量手動調優的情況下需要穩定、高頻定位的自主移動機器人 (AMR)。
亮點
- 零手動調優:僅使用基礎的 IMU 數據手冊值即可即時適應感測器雜訊。
- 對現實世界雜訊的魯棒性:自動處理校準不良、GPS 延遲和輪式打滑。
- 高性能:在 Raspberry Pi 4 上執行時間低於 1ms。
- 即插即用替代方案:設計為 ROS 2 中
robot_localization堆疊的直接替代方案。 - 整合支援:相容 RTK GPS,並與 Nav2 和 rtabmap_ros 等工具整合。
相關
- 專案
- 專案
- 專案
- 專案
- 專案