Up to this point, we have been focused on creating the URDF file. We then used the urdf_tutorial package to launch the URDF file, RViz, and other related nodes and topics to display the TFs in RViz.

In this section, we will explore what the urdf_tutorial package was doing.
Let’s first launch the robot that we created in the previous section using the urdf_tutorial package:
ros2 launch urdf_tutorial display.launch.py model:=/home/sahel/my_robot.urdf
Let’s now launch the RQT graph to see that topic and nodes that are currently running:
rqt_graph

Nodes (Oval shapes):
- /joint_state_publisher:
- This node publishes joint states of the robot to the /joint_states topic.
- It is responsible for simulating the state of the robot's joints, especially when no physical hardware is available.
- /robot_state_publisher:
- This node listens to the /joint_states topic and uses the data, along with the URDF model provided on the /robot_description parameter, to compute the transforms between all robot links.
- It publishes these transforms to the /tf topic, which is used to visualize and analyze the robot's kinematic structure in tools like RViz.
- /transform_listener_impl_60f18864e3a0:
- This node (or process) is a TF listener. It subscribes to the /tf topic to receive transform data and uses it to determine spatial relationships between robot links.
Topics (Rectangles):
- /robot_description:
- This is a parameter where the robot's URDF description is stored.
- The /robot_state_publisher node reads this parameter to understand the robot's kinematic and visual model.
- /joint_states:
- This topic carries the joint position, velocity, and effort values for each joint in the robot.
- It is published by the /joint_state_publisher and subscribed to by the /robot_state_publisher.
- /tf:
- This topic is used to broadcast and share the transforms between different links of the robot.
- It is published by the /robot_state_publisher and subscribed to by the TF listener to determine the relative positions and orientations of the robot's links.
Information Flow: