0
$\begingroup$

Rosanswers logo

Hi,

I have a mobile robot and would like it to navigate around the building. I already have a map of the building. I am using Wheel Encoders to generate odometry. I am feeding the output of Wheel encoders and IMU to robot_pose_ekf (http://wiki.ros.org/robot_pose_ekf) and then using AMCL for localization. Finally, I have the move_base package which plans the path and sends command velocities to the motors.
Assuming robot is at its starting position and it knows its path to the goal, my question is what is the sequence of steps after that:: ?

  1. Local planner generates command velocities and sends its to the motors and then Wheel encoders start and generate odometry message which is fed into move_base. But again move_base needs some input odometry message, will that be just NULL to begin with?
  2. Or, you give some initial default odometry message from wheel encoders to move_base which is used by move_base to generate command velocities and the cycle continues?

Hope I have made myself clear.

Thanks in advance.
Naman


Originally posted by Naman on ROS Answers with karma: 1464 on 2015-04-24

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

I guess its a mix of both of your suggestions. The motor node needs to start sending odometry as soon as amcl and move_base start (even if it hasn't moved). The odometry and imu (through the localization node) and amcl will allow the robot to be positionned adequatly on the map with its tf. Then, using the position of the robot, the map and the currently seen obstacles, move_base will compute a local plan to follow the global plan according to various parameters (see base_local_planner parameters). As the robot moves, the position and obstacles are updated and move_base updates its local plan continuously until it reaches the goal.

The graph on the move_base page illustrates quite well how nodes and topics interact.


Originally posted by yohtm with karma: 66 on 2015-04-24

This answer was ACCEPTED on the original site

Post score: 1

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.