Robotics StackExchange | Archived questions

Anyone who has ever written SLAM or Localization codes?

Hi, I'm using ROS kinetic on Ubuntu 16.04.

My current work is making ROS package kinds of using the SLAM algorithm.

In the SLAM algorithm, I have to update not only pose but also the velocity of landmarks or mobile robots.

Generally, people use geometrymsg/PoseWithCovariance and geometrymsg/TwistWithCovariance to save topic data.

A state covariance in the SLAM algorithm usually consists of XYZ position and roll, pitch, yaw angle, (in topic message, they should be converted to a type of Querternion) AND velocities.

But as you know, there is no message kinds of covariance covering pose and velocity simultaneously as far as I know.

So I have no choice but to update PoseWithCovariance with any of velocities. How can I find the proper solution to my current problem?

Thank you :)

Asked by kane_choigo on 2019-10-18 00:10:26 UTC

Comments

You can define your own message type that contains one PoseWithCovariance and one TwistWithCovariance and include it with your package.

Asked by Jari on 2019-10-18 00:38:40 UTC

It's a little bit of abuse of the namesake but nav_msgs/Odometry will do what you're asking. As Jari points out, describing a new message is also a routine action if there's not a message that easily fits your application and its encouraged.

Asked by stevemacenski on 2019-10-19 00:32:42 UTC

Answers