ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
The navigation stack assumes you have a working compliant robot. It will not produce odometry or positioning for you. It is expected you have a robot base with a valid map->odom->base_link transformation tree which you must provide, and a topic to publish a command velocity for the wheels to achieve. That's all part of the "you must provide this" before we can talk about navigation.
It sounds like you need to learn some of these mechanical basics before you're ready to start with Navigation. You need to use your wheel encoders and IMU to provide odometry for the robot base, usually over an /odom
topic and TF with a odom->base_link
transformation. Then hector slam or a localizer will provide the map->odom
transform. Using robot_localization will help fuse your IMU and encoder information into a better state estimate (and the lidar odometry from Hector if you choose, or in place of the encoders).