All you need to know about TF and TF2 in ROS | Tutorial
Автор: Soft illusion
Загружено: 14 мар. 2021 г.
Просмотров: 19 304 просмотра
Soft_illusion is here with a new tutorial series on "'All you need to know about". (A channel that aims to help the robotics community). This series will focus on several important ROS topics and will aim at providing ROS users with a good foundational understanding of various concepts. This series has been started to enlighten new ROS enthusiasts with understanding the basics and applications of different projects before diving deep into complex projects.
In the first tutorial of this series we introduce the viewers to ROS TF and TF2.
#tf #tf2 #ros_basics
0:35 Introductions to transformations in Robotics
01:50 What is tf2 ?
02:43 Applications of tf
04:51 Setting up tf of Robot with URDF
06:02 Example of turtlesim
07:41 rqt_gui
08:50 rviz
09:57 static publisher
12:10 tf echo
13:25 Summary
We start with the basic definition of TF which is the relationship between any two parts of a system.
Eg. Joint motion to end effector motion. Here we give an example of what TF looks like in a basic scenario of a robotic system with the following links: base_link, lidar_link and right_wheel_link, and how these links can be mapped to the universal "map" link.
Next we move on to TF2 which is the second generation of the transform library, which lets the user keep track of multiple coordinate frames over time. tf2 maintains the relationship between coordinate frames in a tree structure buffered in time, and lets the user transform points, vectors, etc between any two coordinate frames at any desired point in time.
Now that the users know the basics, we move on to why it's important and the applications of TF. The applications that have been introduced in the video are:
1. Compute inverse and forward kinematics of multi joint robots.
2. Carry out obstacle avoidance.
3. Convey location of robot.
4. Convert sensor data from one reference to another.
5. Control robot about a particular point.
6. Analyze multiple robot data in global frame.
7. Referencing external object wrt robot frame.
Then we explain what a URDF file. The URDF (Universal Robot Description Format) model is a collection of files that describe a robot's physical description to ROS. These files are used by a program called ROS (Robot Operating System) to tell the computer what the robot actually looks like in real life. A robot state publisher can then be used to broadcast different Transforms from the URDF. The robot state publisher is a package that allows you to publish the state of a robot to tf. Once the state gets published, it is available to all components in the system that also use tf. The package takes the joint angles of the robot as input and publishes the 3D poses of the robot links, using a kinematic tree model of the robot.
http://wiki.ros.org/urdf/Tutorials/Us...
Finally we show a very interesting implementation of TF using turtlesims. You can follow this link for instructions. http://wiki.ros.org/tf2/Tutorials/Int...
Here you will see the turtlesim start with two turtles. Once the turtlesim is started you can drive the center turtle around in the turtlesim using the keyboard arrow keys, select the roslaunch terminal window so that your keystrokes will be captured to drive the turtle. As you can see that one turtle will continuously move to follow the turtle you are driving around.
This demo uses the tf2 library to create three coordinate frames: a world frame, a turtle1 frame, and a turtle2 frame. This tutorial uses a tf2 broadcaster to publish the turtle coordinate frames and a tf2 listener to compute the difference in the turtle frames and move one turtle to follow the other.
Hope you enjoyed the video. Do comment if you have any doubts or concerns.

Доступные форматы для скачивания:
Скачать видео mp4
-
Информация по загрузке: