If we look at the launch/do-slam-navigation.launch file we can see how each of the nodes involved is configured:
1. Stage_Sim. It displays the stageros node and its argument is the world file /world/willow-erratic.world
Publications:
* /tf [tf/tfMessage]
* /odom [nav_msgs/Odometry]
* /rosout [roslib/Log]
* /base_scan [sensor_msgs/LaserScan]
* /clock [roslib/Clock]
* /base_pose_ground_truth [nav_msgs/Odometry]
Subscriptions:
* /time [unknown type]
* /clock [roslib/Clock]
* /cmd_vel [geometry_msgs/Twist]
2. Teleop_Base: It runs the teleop_base_keyboard node and it tells it to subscribe to the cmd_vel topic.
Publications:
* /cmd_vel [geometry_msgs/Twist]
* /rosout [roslib/Log]
Subscriptions:
* /time [unknown type]
* /clock [roslib/Clock]
3. TF_Broadcaster: Runs the tf_broadcaster.cpp node that makes the transform between /base_laser_link and base_scan frames (as will be later explained).
Publications:
* /tf [tf/tfMessage]
* /rosout [roslib/Log]
Subscriptions:
* /time [unknown type]
* /clock [roslib/Clock]
4. Gmapping: Runs the slam_gmapping node and publishes the laser scan information under the base_scan node.
Publications:
* /map_metadata [nav_msgs/MapMetaData]
* /tf [tf/tfMessage]
* /map [nav_msgs/OccupancyGrid]
* /rosout [roslib/Log]
Subscriptions:
* /time [unknown type]
* /base_scan [sensor_msgs/LaserScan]
* /tf [tf/tfMessage]
* /clock [roslib/Clock]
* /reset_time [unknown type]
5. map_server: Runs the map_server node whose function is to load the image that informs of the occupancy state of the map. (/world/willow-full.pgm)
Publications:
* /map_metadata [nav_msgs/MapMetaData]
* /map [nav_msgs/OccupancyGrid]
* /rosout [roslib/Log]
Subscriptions:
* /time [unknown type]
* /clock [roslib/Clock]
6. move_base.xml: determines the characteristics of the costmaps
* move_base node
* costmap_common_params.yaml
* local_costmap_params.yaml
* global_costmap_params.yaml
* base_local_planner_params.yaml
7. amcl_node.xml: determines the configuration of the amcl node.
Hola Laura, muy buen post. Tengo una duda respecto a como supiste a que topicos se subscribia el nodo teleop_base, no lo hayo. Saludos!!
ResponderEliminar