使用惯性导航系统计算航向

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

我有一个 INS 系统,它提供以下信息作为 ROStopics:

/sensor/BarometricPressure
/sensor/FilterStatus
/sensor/Imu
/sensor/ImuRaw
/sensor/MagneticField
/sensor/NavSatFix
/sensor/Pose
/sensor/SystemStatus
/sensor/Temperature
/sensor/Twist
/sensor/parameter_descriptions
/sensor/parameter_updates

imu rostopic 提供以下方向读数,angular_velocity 和 linear_acceleration:

orientation:
  x: 0.0043632921040835555
  y: 0.028681200762949235
  z: -0.23280684959901166
  w: 0.9720901816110443
orientation_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
angular_velocity:
  x: -2.8747113901772536e-05
  y: 9.642770237405784e-06
  z: -5.8703310060082003e-05
angular_velocity_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
linear_acceleration:
  x: -0.01883181557059288
  y: 0.0012574937427416444
  z: 0.003820727113634348
linear_acceleration_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]

我的问题是:我想计算航向,做位置估计。我想知道是否需要计算“R”矩阵,即身体坐标系和惯性坐标系之间的旋转矩阵?例如使用 Mahony 过滤器。或者系统已经为我做了所有这些计算?

我尝试通过二重积分来使用线性加速度数据来获得位置。但这并不准确,估计的位置漂移很多。

谢谢

navigation imu inertial-navigation visual-odometry odometry
© www.soinside.com 2019 - 2024. All rights reserved.