This node subscribes from “/ar_pose_marker” topic and sends message to "/mobile_base/commands/velocity" topic. According to the relative position of the AR tag, it does the path planning and sends the Turtlebot velocity message to the topic.
This node subscribes from “/blobs_3d” topic and sends message to "/mobile_base/commands/velocity". According to the relative position of the color blob, it does the path planning and sends the Turtlebot velocity message to the topic.
This node subscribes from “/joy” topic and runs the bash command to save the map when the X button on the joystick is pressed.
This node subscribes from “/joy” topic and runs the bash command to start tracking the AR tagwhen the START button on the joystick is pressed.
This node subscribes from “/joy” topic and runs the bash command to start tracking the color when the LB button on the joystick is pressed.
This node subscribes from “/joy” topic and runs the bash command to view Turtlebor navigation in Rviz when the BACK button on the joystick is pressed.
This node subscribes from “/joy” topic and runs the bash command to view start the voice control nodes when the right axle on the joystick is pressed.
This node subscribes from “/joy” topic and runs corresponding bash commands to:
-
- Stop AR tag tracking when A button on the joystick is pressed.
-
- Stop color tracking when RB button on the joystick is pressed.
-
- Kill all the nodes to top the system by pressing the mid button on the joystick when emergency happens
This launch file firstly launches minimal.launch in turtlebot_bringup package to start the necessary nodes for running the turtlebot. Then it launches 3dsensor.launch in turtlebot_bringup package to get depth image from the kinect. This launch file is run on the turtlebot.
This launch file start autonomous mapping by using the operator node in nav2d_operator package to do autonomous obstacle avoidance and navigator node in nav2d_navigator package to do path planning cooperating with launching the gmapping.launch to do the SLAM. This launch file is run on the workstation.
This launch file launches a bunch of nodes we wrote to do the specific tasks. This launch file is run on the workstation.
This launch file loads the map the robot generated, launches the nodes in turtlebot_navigation package, the ar_track_alvar node in ar_track_alvar package to recognize the AR tag and nodes in cmvision_3d package to recognize the specific color we set. This launch file is run on Turtlebot.
This package was used for fast color blob detection and usually combined with Cmvision_3d Packages for the 3D color tracking.
Joy Package publishes topic(/joy) depend on the inputs of the controller and it includes the state of each one of the joystick's buttons and axes.
This package includes a well-developed voice dictionary, a voice recognizer, and corresponding movements using python based interface.
This package is a ROS wrapper for Alvar, an AR tag tracking library. The published topic, ar_pose_marker, includes a list of the poses of the observed AR tag, with respect to the output frame.
Cmvision_3d uses the topic produced by cmvision to publish the position of each color blob relative to its camera frame, and the frames in the tf stack for each color.
This package includes the obstacle avoidance, a simple path planner, and a graph based SLAM (Simultaneous Localization and Mapping) node that allows robots generate a map of a planar environment.
The gmapping package provides a ros node (slam_gmapping), which has a laser-based SLAM feature.
Map Generated and Cost Map During Mapping
AR Tag Recognition and Color Recognition