如何融合一些传感器数据以获得准确的机器人定位?

问题描述 投票:0回答:0

我有一个配备 2DLidar、Stereo RGBD Camera、IMU Unit 和车轮编码器的移动机器人。我执行了 ORB_SLAM2 并得到了姿势,但有时它会丢失,所以它不够稳健,尤其是当机器人转动时。所以我想在船上使用其他传感器来获得更好的机器人姿态估计(定位)。

所以我有以下主题可以帮助我本地化。

  1. /robot/data/vehicle_state : 根据轮速计算的当前速度和横摆率。

  2. /robot/data/twist :根据车辆速度和 IMU 数据创建的扭曲数据。

  3. /robot/data/vslam_localization/pose :来自 ORB_SLAM 的输出姿势

  4. /camera/left/image_raw 和 /camera/right/image_raw :来自相机的图像

  5. /扫描:YDLidar扫描

  6. /imu/sensor_msgs/Imu : IMU 数据

然后当使用 EKF 时

  1. /robot/localization/ekf_base/set_pose 为 base_link 重置 EKF 位姿的外部命令

  2. /robot/localization/ekf_odom/set_pose 为 odom 重置 EKF 位姿的外部命令

以及以下 tf: /tf

  • 地图:地图框
  • odom:奥多姆框架
  • base_link : 车辆位姿(驱动轮轴心)
  • slam_base : ORB_SLAM 工作的框架

所以我的问题是可以使用 robot_localization 包或 google cartograper_ros 进行机器人定位以及如何使用?

谢谢

localization ros robot sensor-fusion
© www.soinside.com 2019 - 2024. All rights reserved.