In ROS, we view everything as relative. It is a system called tf2 that maps out the location of every single part of the robot relative to one another. The whole idea is relativity. Questions such as how far is this frame, from another frame.
3 Key Terminologies
- Link
- A named, physical fixed part of the robot
- e.g. chassis, wheel, sensor mount
base_linkis the actual chassis of the robot, which will be used for transform trees
- Frame
- A local coordinate system attached to a link
- It has its own origin (0,0,0) and directional axes (x,y,z)
- There are physical frames that have obvious physical links
- There are also frames that are abstract such as
odomandmapthat do not have physical hardware attached - e.g. chassis, wheel, sensor mount
- Unified Robot Description Format (URDF)
- A named, physical fixed part of the robot
- e.g. chassis, wheel, sensor mount
- TF2 Library
- Contains broadcasters, a buffer, and listeners
- The buffer subscribes to both
/tf(dynamic movement) and/tf_static(fixed physical offsets), these topics are published by the built-in ROS 2 publisher nodes likejoint_state_publisherandrobot_state_publisher
It relies on 2 main components: