ROS Tutorials#
Understanding ROS Topics#
http://wiki.ros.org/ROS/Tutorials/UnderstandingTopics
1. Setup#
Launch ROS:
roscore
In a new terminal, launch the turtlesim node:
rosrun turtlesim turtlesim_node
In another terminal, launch the keyboard teleoperation:
rosrun turtlesim turtle_teleop_key
2. ROS Topics#
First, install rqt_graph:
sudo apt-get install ros-melodic-rqt
sudo apt-get install ros-melodic-rqt-common-plugins
Next, we can launch rqt_graph:
rosrun rqt_graph rqt_graph
You can view some commands with:
rostopic -h
We can use the echo command to view the data published
rostopic echo /turtle1/cmd_vel
Now, the data that we publish to turtlesim_node through the turtle_teleop_key will appear in this terminal.
To view all topics currently subscribed to and published, use:
rostopic list -h
For a more detailed list, you can use the verbose (-v) option:
rostopic list -v
3. ROS Messages#
Communication between ROS nodes takes place in ROS messages from publisher to subscriber. In this case, turtle_teleop_key is our publisher and turtlesim_node is our subscriber.
rostopic type /turtle1/cmd_vel
To view the details of the message, we can use rosmsg:
rosmsg show geometry_msgs/Twist
4. rostopic Continued#
We can use messages to directly communicate with ROS nodes:
rostopic pub -l /turtle1/cmd_vel geometry_msgs/Twist --'[2.0, 0.0, 0.0]' '[0.0, 0.0, 1.8]'