Implemention and doubt regarding base controller for a custom robot
Hi all,
I have a mobile robot which is navigating around a room with a given map. I am using wheel encoders for odometry, robot_pose_ekf for fusing data from wheel encoders and IMU. I have a hokuyo laser for navigation and is using amcl for localization and move_base for planning with SBPL Lattice Planner as the global planner and TrajectoryPlanner as the local planner.
Now my question is, as seen in move_base_diagram once I get the velocities on the "cmd_vel" from the local planner, I need to implement a base_controller (blue box), right? But the local planner is already doing something similar by taking in the odometry message and generating the relevant command velocities. Can someone please explain the significance of the base controller and should it be implemented for all the robots? Also, I already have a piece of code which takes command velocities as input and generates motor commands which is sent to the motors (thats it, there is no control loop running here). It might be a very basic question but it would be great if someone can throw some light on it.
Thanks in advance.
Naman Kumar