ROS2 for Beginners Level 2 – TF | URDF | RViz | Gazebo

ROS2 for Beginners Level 2 – TF | URDF | RViz | Gazebo

English | MP4 | AVC 1920×1080 | AAC 44KHz 2ch | 62 lectures (9h 8m) | 5.46 GB

Understand TFs, Design a custom robot with URDF, Simulate the robot in Gazebo – Your Next Step with ROS 2.

You have learned ROS2 basics and want to go to the next step?

You want to design a custom application for a robot? And maybe also create a simulation for the robot?

Or, you are already working on this, but you feel lost with TF, URDF and Gazebo?

This course is for you. At the end of the course you will be able to design a custom robot with ROS 2, and run this robot in a simulated world.

– Why this course?

I have designed myself a ROS application for a custom robot, while working on a startup project. And I started like everybody, as a beginner.

Not only learning ROS2 basics was hard, but then when adding TF, URDF, and Gazebo, it seemed impossible. It actually took me a few months/years to really be comfortable with those.

When you look at the existing online resources, it’s very hard to find any process that explains in simple terms how to start from scratch and build a project.

That’s why I’ve created this course, so you can benefit from my years of experience with ROS. I made the course I wish I had when I got started.

My goal is to make you save tons of hours and frustration, by giving you a step by step approach, with a real project that we do together, from beginning to end.

– How do I teach?

If you’ve taken other ROS 2 courses from me you know that I’m not here to waste your time.

My teaching method is quite simple:

  • Step by step
  • Going to the point
  • Learn while doing

Also I strongly focus on the “why” behind what you learn. The goal is not just to make you blindly repeat some steps, but to understand why those steps matter.

– What will you do and learn in the course?

This course is project based. We will start a project together, from scratch. Then, step by step, you will build the application, while learning new concepts.

Here’s a quick overview of what you’ll do (non exhaustive list):

  • Understand what TF is (with RViz) and why we need it.
  • Start the project by writing a URDF file, to describe the physical properties of a robot – we’ll start with a mobile robot.
  • Generate TF using the robot state publisher and the URDF.
  • Improve and clean the URDF using the Xacro tool.
  • Adapt the URDF for Gazebo, spawn the robot in Gazebo.
  • Control the robot with Gazebo plugins.
  • Simulate a sensor in Gazebo.
  • Create ROS2 packages and XML launch files to start the entire application with one command line.

Everything is hands-on, so you’ll practice right from the start, and I will show you every step that I do.

You also get some extra activities during the course, so you can practice even more by being challenged on key points.

And there is a big final project, where we create yet another robot (robotic arm) from scratch, using everything that you’ve learned in the course. You will also learn how to combine 2 robots together.

What you’ll learn

  • Understand what TF (TransForm) is and why we need it
  • Create a URDF for any robot (ex: mobile base, robotic arm)
  • Simulate and control your robot in Gazebo
  • Add Links, Joints, Collisions, Inertia tags in the URDF file
  • Understand how to correctly specify links and joints origin
  • Use Gazebo plugins to simulate the hardware control of the robot
  • Improve and clean up the URDF with Xacro (properties, macros)
  • Learn how to use the Robot State Publisher node to publish TF
  • Visualize TFs with RViz
  • Create XML and Python launch files
  • Save and reuse a RViz config in a launch file
  • Create a world in Gazebo
  • Add a sensor in Gazebo
  • Make your robot spawn in a custom Gazebo world
  • Learn best practices right from the start
  • Practice with additional activities and projects
Table of Contents

Introduction
1 Welcome!
2 Course Overview – How to Follow the Course
3 Install and setup ROS2 [recap]
4 Install Quick Fix (Gazebo)
5 Programming tools for this course

TF (TransForm) Overview
6 Intro
7 Visualise a Robot TFs in RViz 2
8 Relationship Between TFs, TF tree
9 What problem are we trying to solve with TF

Create a URDF for a Robot
10 Intro – What is URDF
11 Your first URDF file Create and Visualize a Link
12 Material – Add Some Colors
13 Combine 2 Links with a Joint
14 Another example of the process to write the URDF right the first time
15 Different Types of Joints in a URDF
16 Add a Wheel to the Robot
17 Activity 01 – Complete the URDF for the Robot
18 Activity 01 – Solution

Broadcast TFs with the Robot State Publisher
19 Intro
20 How the Robot State Publisher and URDF Work Together
21 Run the Robot State Publisher with URDF in the Terminal (Command Line)
22 Create a Robot Description Package to Install the URDF
23 Write a Launch file to Start the Robot State Publisher with URDF (XML)
24 Python Launch File
25 Activity 02 – Add Rviz Config in the Launch File
26 Activity 02 – Solution

Improve the URDF with Xacro
27 Intro
28 Make the URDF Compatible with Xacro
29 Create Variables with Xacro Properties
30 Activity 03 – Xacro Properties
31 Activity 03 – Solution
32 Create Functions with Xacro Macros
33 Include a Xacro File in Another Xacro File
34 The Xacro Command to Generate the URDF
35 Real Meshes – Quick Overview

Simulate Your Robot with Gazebo
36 Intro
37 Run Gazebo
38 How Gazebo Works with ROS
39 Add Inertia Tags in the URDF
40 Activity 04 – Inertia Macros
41 Activity 04 – Solution
42 Add Collision Tags in the URDF
43 Spawn the Robot in Gazebo
44 Activity 05 – Launch File to Start Robot in Gazebo
45 Activity 05 – Solution
46 Fixing the Inertia Values
47 Fixing the Colors with Gazebo Material
48 Add a Gazebo Plugin to Control the Robot
49 Create a World in Gazebo
50 Launch the Robot in the World

Add a Sensor in Gazebo
51 Intro
52 Add a Camera to the URDF
53 Add a Gazebo Plugin for the Camera
54 (Optional) Quick Fix For the Camera to Work with ROS

Final Project
55 Intro – Final Project Overview
56 Step 1 – URDF Links and Joints
57 Step 2 – Adapt the Robot for Gazebo
58 Step 3 – Add Gazebo Plugins
59 Step 4 – Combine the 2 Robots

Conclusion
60 What you’ve learned – Recap
61 What to do next
62 Bonus Lecture

Homepage