Mô tả

Would you like to build a real Self-Driving Robot using ROS2, the second and last version of Robot Operating System by building a real robot?


Would you like to get started with Autonomous Navigation of Robot and dive into the theoretical and practical aspects of Odometry and Localization from industry experts?


The philosophy of this course is the Learn by Doing and quoting the American writer and teacher Dale Carnegie

Learning is an Active Process. We learn by doing, only knowledge that is used sticks in your mind.


In order for you to master the concepts covered in this course and use them in your projects and also in your future job, I will guide you through the learning of all the functionalities of ROS both from the theoretical and practical point of view.


Each section is composed of three parts:

  • Theoretical explanation of the concept and functionality

  • Usage of the concept in a simple Practical example

  • Application of the functionality in a real Robot


There is more!


All the programming lessons are developed both using Python and C++ . This means that you can choose the language you are most familiar with or become an expert Robotics Software Developer in both programming languages!


By taking this course, you will gain a deeper understanding of self-driving robots and ROS 2, which will open up opportunities for you in the exciting field of robotics.

Bạn sẽ học được gì

Create a Real Self-Driving Robot

Mastering ROS2, the last version of the Robot Operating System

Implement Sensor Fusion algorithms

Simulate a Self-Driving robot in Gazebo

Programming Arduino for Robotics Applications

Use the ros2_control library

Develop a Controller

Odometry and Localization

Kalman Filters and Extended Kalman Filter

Probability Theory

Differential Kinematics

Create a Digital Twin of a Self-Driving Robot

Master the TF2 library

Yêu cầu

  • Basic knowledge of Python or C++
  • Basic knowledge of Linux
  • No prior knowledge of ROS or ROS 2 required
  • No prior knowledge of Robotics theory required
  • No hardware required. All the course can be followed also using only the PC

Nội dung khoá học

13 sections

Introduction

7 lectures
Course Motivation
02:53
The Self-Driving Program
03:16
Course Presentation
06:16
Meet your Teacher
02:27
[EXTRA]: Boost your Robotics Software Developer Career
00:56
Get the Most out of the Course
03:40
Course Material
01:05

Setup

4 lectures
Install Ubuntu on Virtual Machine
01:43
Install Ubuntu on Dual Boot
03:16
<LAB>Install ROS 2</LAB>
03:38
<LAB>Configure the Development Environment</LAB>
09:01

Introduction to ROS 2

16 lectures
Why a Robot Operating System?
04:18
What is ROS 2
03:13
Why a NEW Robot Operating System?
04:58
ROS 2 Architecture
03:12
Hardware Abstraction
02:53
Low-Level Device Control
01:22
Messaging Between Process
07:00
Package Management
01:41
Architecture of a ROS 2 Application
02:59
Introduction to ROS 2
6 questions
<LAB>Create and Activate a Workspace</LAB>
11:18
<PY>Simple Publisher</PY>
18:16
<C++>Simple Publisher</C++>
23:14
<PY>Simple Subscriber</PY>
13:15
<C++>Simple Subscriber</C++>
15:44
Workspaces, Publishers, Subscribers
5 questions

Locomotion

19 lectures
Robot Locomotions
05:54
Mobile Robots
04:15
Friction Effects
09:54
Robot Description
03:33
URDF
04:41
<LAB>Create the URDF Model</LAB>
31:24
Rviz 2
05:32
Parameters
01:55
<PY>Parameters</PY>
13:33
<C++>Parameters</C++>
17:04
<LAB>ROS 2 Parameter CLI</LAB>
06:36
URDF and Parameters
5 questions
<LAB>Visualize the Robot</LAB>
09:07
Launch Files
05:58
<LAB>Visualize the Robot with Launch Files</LAB>
20:23
Add a Can on top of your Robot
2 questions
Gazebo
04:48
<LAB>Simulate the Robot</LAB>
14:59
<LAB>Launch the Simulation</LAB>
15:06

Control

7 lectures
ROS 2 Control
08:43
Control Types
05:36
<LAB>ros2_control with Gazebo</LAB>
13:57
YAML Configuration File
02:43
<LAB>Configure ros2_control</LAB>
12:11
<LAB>Launch the Controller</LAB>
05:54
<LAB>ros2_control CLI</LAB>
07:53

Kinematics

10 lectures
Robot Kinematics
03:52
Pose of a Mobile Robot
03:53
Translation Vector
04:46
<LAB>Introduction to Turtlesim</LAB>
11:05
<PY>Translation Vector</PY>
16:34
<C++>Translation Vector</C++>
28:13
Rotation Matrix
08:14
<PY>Rotation Matrix</PY>
10:29
<C++>Rotation Matrix</C++>
10:22
Transformation Matrix
03:39

Differential Kinematics

12 lectures
Differential Kinematics
01:36
Velocity of a Mobile Robot
03:17
Linear Velocity
06:04
Angular Velocity
05:28
Velocity in World Frame
05:05
Differential Forward Kinematics
04:08
Simple Speed Controller
01:54
<PY>Simple Speed Controller</PY>
24:12
<C++>Simple Speed Controller</C++>
30:53
<LAB>Launch the Simple Controller</LAB>
14:03
<LAB>Teleoperating with Joystick</LAB>
15:40
<LAB>Using the diff_drive_controller</LAB>
22:28

TF2 Library

20 lectures
The TF2 Library
05:23
Operations with Transformations
05:31
Static and Dynamic Transformations
03:00
<PY>Simple TF2 Static Broadcaster</PY>
14:09
<C++>Simple TF2 Static Broadcaster</C++>
19:14
<PY>Simple TF2 Broadcaster</PY>
13:09
<C++>Simple TF2 Broadcaster</C++>
13:21
ROS 2 Services
05:43
<PY>Service Server</PY>
19:10
<C++>Service Server</C++>
21:05
<PY>Service Client</PY>
18:36
<C++>Service Client</C++>
23:31
<PY>Simple TF2 Listener</PY>
20:06
<C++>Simple TF2 Listener</C++>
23:12
Angle Rapresentations
01:41
Euler Angles
03:04
Quaternion
03:54
<PY>Euler to Quaternion</PY>
11:47
<C++>Euler to Quaternion</C++>
12:39
<LAB>TF2 Tools</LAB>
07:31

Odometry

15 lectures
Where is the Robot?
03:01
The Local Localization Challenge
05:22
Wheel Odometry
07:49
Differential Inverse Kinematics
05:33
<PY>Differential Inverse Kinematic</PY>
18:54
<C++>Differential Inverse Kinematic</C++>
20:40
Wheel Odometry - Position
03:17
Wheel Odometry - Orientation
03:38
<PY>Wheel Odometry</PY>
10:35
<C++>Wheel Odometry</C++>
10:47
<PY>Publish Odometry Message</PY>
14:47
<C++>Publish Odometry Message</C++>
16:16
Draw the Robot's Trajectory
3 questions
<PY>Broadcast Odometry Transform</PY>
11:45
<C++>Broadcast Odometry Transform</C++>
13:15

Probability for Robotics

12 lectures
Motivation
07:09
Random Variables
08:55
Conditional Probability
07:18
Probability Distributions
08:40
Gaussian Distributions
04:52
Total Probability Theorem
05:44
Bayes Rule
05:11
Sensor Noise
02:37
<PY>Adding Noise to Robot Motion</PY>
07:31
<C++>Adding Noise to Robot Motion</C++>
11:33
<LAB>Launch Noisy Controller</LAB>
13:29
<LAB>Odometry Comparison</LAB>
07:26

Sensor Fusion

18 lectures
Advantages of having Multiple Sensors
06:28
Gyroscope
03:38
Accelerometer and IMU
03:30
<LAB>Simulate IMU Sensor</IMU>
15:46
Kalman Filter
06:28
<PY>Filter Initialization</PY>
15:00
<C++>Filter Initialization</C++>
20:26
Measurement Update
02:23
<PY>Measurement Update</PY>
05:22
<C++>Measurement Update<C++>
05:17
State Prediction
02:33
<PY>State Prediction</PY>
09:16
<C++>State Prediction</C++>
10:15
<LAB>Localization with Kalman Filter</LAB>
06:29
Extended Kalman Filter (EKF)
04:24
<PY>IMU Republisher</PY>
06:45
<C++>IMU Republisher</C++>
08:44
<LAB>Sensor Fusion with robot_localization</LAB>
24:31

Build the Robot

22 lectures
Mechanics and Electronics
01:26
What you are going to need
00:20
Arduino and ROS 2
02:55
<HWLAB>Publisher Node with Arduino</HWLAB>
08:43
<PY>Publisher Node with Arduino</PY>
10:25
<C++>Publisher Node with Arduino</C++>
12:27
<HWLAB>Test Publisher Node with Arduino</HWLAB>
03:26
<HWLAB>Subscriber Node with Arduino</HWLAB>
03:28
<PY>Subscriber Node with Arduino</PY>
07:56
<C++>Subscriber Node with Arduino</C++>
07:50
<HWLAB>Test Subscriber Node with Arduino</HWLAB>
02:45
<HWLAB>DC Motors with Arduino</HWLAB>
13:48
<HWLAB>Encoders with Arduino</HWLAB>
19:20
ROS 2 Lifecycle Nodes
07:34
<C++>Create a Lifecycle Node</C++>
25:12
<LAB>ROS 2 Lifecycle CLI</LAB>
06:28
<C++>ros2_control Interface - Declaration</C++>
15:15
<C++>ros2_control Interface - Definition</C++>
36:57
<C++>ros2_control Interface - Plugin</C++>
12:29
<LAB>ros2_control Interface - Configure</LAB>
12:37
<HWLAB>Robot Control with Arduino</HWLAB>
37:36
<HWLAB>Launch the Complete Robot</HWLAB>
09:42

Conclusions

3 lectures
Recap
02:34
What's Next?
02:09
BONUS Lecture
00:56

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.