ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
1

What are the odometry msg type in ROS SLAM?

asked 2018-07-24 07:27:17 -0500

Ricco gravatar image

We are building a three wheel holonomic motion system. Is there a standard way to publish odometer values? How odometer values are present in gmapping package?

edit retag flag offensive close merge delete

Comments

1

Could you link the stack/package you are looking at?

Hypomania gravatar image Hypomania  ( 2018-07-24 08:11:41 -0500 )edit
1

Is this what you're looking for?

stevejp gravatar image stevejp  ( 2018-07-24 12:50:01 -0500 )edit

Actually I'm looking for how to acquire odometer data from motor encoders. I need to know what exactly I have to publish from encoders.

Ricco gravatar image Ricco  ( 2018-07-24 13:22:07 -0500 )edit

2 Answers

Sort by » oldest newest most voted
0

answered 2018-07-24 15:30:47 -0500

The odometry information should be published by the ROS driver for your mobile robot base. Usually, the robot sends encoder ticks via serial or whatever, and the ROS driver then computes the odometry message (i.e., pose and twist; see the link by @stevejp). The formula how to compute the ROS odometry message from encoder ticks depends on your kinematics.

Example 1: Generic differential drive platform

https://github.com/ros-controls/ros_c...

Example 2: PR2 robot (four-wheeled holonomic robot)

https://github.com/PR2/pr2_controller...

edit flag offensive delete link more

Comments

thanks. this is what I was looking for.

Ricco gravatar image Ricco  ( 2018-07-25 00:46:47 -0500 )edit
0

answered 2018-07-24 19:26:52 -0500

ROS wheel odometry is based on the linear and angular velocity(s) of the platform. You just need to find those values for your 3 wheeled car. For 2 wheeled, the calculations are very simple. I assume if you've made a 3 wheel car then you have some complex controller which you're already feeding that into.

You just need to publish those values in the message with an appropriate covariance and you should be on your way.

Odometry is not directly just encoder ticks, its the speed and / or pose of the robot given the ticks.

edit flag offensive delete link more

Comments

Thanks that was very helpful

Ricco gravatar image Ricco  ( 2018-07-25 00:46:01 -0500 )edit

Question Tools

Stats

Asked: 2018-07-24 07:27:17 -0500

Seen: 484 times

Last updated: Jul 24 '18