Controller Node - AtlasBuggy/BabyBuggyROS GitHub Wiki
Dead Reckoning
To Run
Run rosrun controller controller_node
Subscribed Topics
/amcl_pose
, PoseWithCovarianceStamped
/odom
, Odometry
/wheel_vel
, Float64
/ch3
, UInt16
Published Topics
/steering_angle
, Float64
Details
The controller node is the primary control scheme on BabyBuggy. It relies on getting a pose estimate in some global world frame, which in this case is the map frame given from /amcl_pose. Further, internally, the node contains a list of waypoints that it aims to reach. To do so, it calculates a steering angle using a method known as Pure Pursuit, which you can read more about here. This steering angle is published to /steering_angle, which is used by another node to directly control the linear actuator.