Course Overview
Would you like to build a real Self-Driving Robot using ROS, the Robot Operating System?
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, which will open up opportunities for you in the exciting field of robotics.
FAQ
FAQ area empty
Course curriculum
-
Why a Robot Operating System?
Xem trước -
What is ROS
Xem trước -
Hardware Abstraction
Xem trước -
Low-Level Device Control
Xem trước -
Messaging between Process
Xem trước -
Package Management
Xem trước -
Architecture of a ROS Application
Xem trước -
Introduction to ROS
-
<LAB>Create and Activate a Workspace</LAB>
Xem trước -
<PY>Simple Publisher</PY>
Xem trước -
<C++>Simple Publisher</C++>
Xem trước -
<PY>Simple Subscriber</PY>
Xem trước -
<C++>Simple Subscriber</C++>
Xem trước -
Workspaces, Publishers, Subscribers
-
Robot Locomotions
Xem trước -
Mobile Robots
Xem trước -
Friction Effects
Xem trước -
Robot Description
Xem trước -
URDF
-
<LAB>Create the URDF Model</LAB>
Xem trước -
RViz
Xem trước -
Parameter Server
Xem trước -
<LAB>Parameter Server</LAB>
Xem trước -
<LAB>Visualize the Robot</LAB>
Xem trước -
Launch Files
Xem trước -
<LAB>Visualize the Robot with Launch Files</LAB>
Xem trước -
Add a Can on top of your Robot
-
Gazebo
Xem trước -
<LAB>Simulate the Robot</LAB>
Xem trước -
<LAB>Launch the Simulation</LAB>
Xem trước
-
Robot Kinematics
Xem trước -
Pose of a Mobile Robot
Xem trước -
Translation Vector
Xem trước -
<LAB>Introduction to Turtlesim</LAB>
Xem trước -
<PY>Translation Vector</PY>
Xem trước -
<C++>Translation Vector</C++>
Xem trước -
Rotation Matrix
Xem trước -
<PY>Rotation Matrix</PY>
Xem trước -
<C++>Rotation Matrix</C++>
Xem trước -
Transformation Matrix
Xem trước
-
Differential Kinematics
Xem trước -
Velocity of a Mobile Robot
Xem trước -
Linear Velocity
Xem trước -
Angular Velocity
Xem trước -
Velocity in World Frame
Xem trước -
Differential Forward Kinematics
Xem trước -
Simple Speed Controller
Xem trước -
<PY>Simple Speed Controller</PY>
Xem trước -
<C++>Simple Speed Controller</C++>
Xem trước -
<LAB>Teleoperating with Joystick</LAB>
Xem trước -
<LAB>Using the diff_drive_controller</LAB>
Xem trước
-
The TF Library
Xem trước -
Operations with Transformations
Xem trước -
Static and Dynamic Transformations
Xem trước -
<PY>Simple TF Static Broadcaster</PY>
Xem trước -
<C++>Simple TF Static Broadcaster</C++>
Xem trước -
ROS Timer
Xem trước -
<PY>ROS Timer</PY>
Xem trước -
<C++>ROS Timer</C++>
Xem trước -
<PY>Simple TF Broadcaster</PY>
Xem trước -
<C++>Simple TF Broadcaster</C++>
Xem trước -
ROS Services
Xem trước -
<PY>Service Server</PY>
Xem trước -
<C++>Service Server</C++>
Xem trước -
<PY>Service Client</PY>
Xem trước -
<C++>Service Client</C++>
Xem trước -
<PY>Simple TF Listener</PY>
Xem trước -
<C++>Simple TF Listener</C++>
Xem trước -
Angle Rapresentations
Xem trước -
Euler Angles
Xem trước -
Quaternion
Xem trước -
<PY>Euler to Quaternion</PY>
Xem trước -
<C++>Euler to Quaternion</C++>
Xem trước -
<LAB>TF Tools</LAB>
Xem trước
-
Where is the Robot?
Xem trước -
The Local Localization Challenge
Xem trước -
Wheel Odometry
Xem trước -
Differential Inverse Kinematics
Xem trước -
<PY>Differential Inverse Kinematic</PY>
Xem trước -
<C++>Differential Inverse Kinematic</C++>
Xem trước -
Wheel Odometry - Position
Xem trước -
Wheel Odometry - Orientation
Xem trước -
<PY>Wheel Odometry</PY>
Xem trước -
<C++>Wheel Odometry</C++>
Xem trước -
<PY>Publish Odometry Message</PY>
Xem trước -
<C++>Publish Odometry Message</C++>
Xem trước -
Draw the Robot's Trajectory
-
<PY>Broadcast Odometry Transform</PY>
Xem trước -
<C++>Broadcast Odometry Transform</C++>
Xem trước
-
Motivation
-
Random Variables
Xem trước -
Conditional Probability
Xem trước -
Probability Distributions
Xem trước -
Gaussian Distributions
Xem trước -
Total Probability Theorem
Xem trước -
Bayes Rule
Xem trước -
Sensor Noise
Xem trước -
<PY>Adding Noise to Robot Motion</PY>
Xem trước -
<C++>Adding Noise to Robot Motion</C++>
Xem trước -
<LAB>Odometry Comparison</LAB>
Xem trước
-
Advantages of having Multiple Sensors
Xem trước -
Gyroscope
Xem trước -
Accelerometer and IMU
Xem trước -
<LAB>Simulate IMU Sensor</IMU>
Xem trước -
Kalman Filter
Xem trước -
<PY>Filter Initialization</PY>
Xem trước -
<C++>Filter Initialization</C++>
Xem trước -
Measurement Update
Xem trước -
<PY>Measurement Update</PY>
Xem trước -
<C++>Measurement Update<C++>
Xem trước -
State Prediction
Xem trước -
<PY>State Prediction</PY>
Xem trước -
<C++>State Prediction</C++>
Xem trước -
<LAB>Localization with Kalman Filter</LAB>
Xem trước -
Extended Kalman Filter (EKF)
Xem trước -
<PY>IMU Republisher</PY>
Xem trước -
<C++>IMU Republisher</C++>
Xem trước -
<LAB>Sensor Fusion with robot_localization</LAB>
Xem trước
Requirment
-
Basic knowledge of Python or C++
-
Basic knowledge of Linux
-
No prior knowledge of ROS required
-
No prior knowledge of Robotics theory required
-
No hardware required. All the course can be followed also using only the PC
Outcomes
-
Create a Real Self-Driving Robot
-
Mastering ROS, the Robot Operating System
-
Implement Sensor Fusion algorithms
-
Simulate a Self-Driving robot in Gazebo
-
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 TF library
Instructor
Nguyễn Đình Cường
1.2
-
1 Student
-
330 Courses
-
1253 reviews
Xin chào các bạn, tôi là Nguyễn Đình Cường, một lập trình viên và giảng viên đam mê công nghệ với hơn 15 năm kinh nghiệm trong ngành công nghiệp phần mềm. Tôi tốt nghiệp từ Bưu Chính Viễn Thông và đã từng làm việc cho một số công ty công nghệ hàng đầu như FPT Software và VinGroup. Với chuyên môn chính là phát triển ứng dụng web, tôi đã làm việc với nhiều công nghệ như HTML, CSS, JavaScript, React cho front-end và Node.js, Express, MongoDB cho back-end. Không chỉ dừng lại ở việc viết mã, tôi còn yêu thích tìm hiểu sâu về thiết kế hệ thống và kiến trúc phần mềm. Tôi tin rằng quá trình học lập trình không chỉ đơn thuần là lý thuyết, mà còn là sự trải nghiệm thực tế và giải quyết vấn đề. Trong các khóa học của mình, tôi cố gắng cung cấp cho học viên những bài giảng thú vị và dễ hiểu, cùng với các bài tập thực hành giúp củng cố kiến thức. Tôi hy vọng rằng qua các khóa học của mình, bạn sẽ không chỉ học được cách viết mã, mà còn phát triển tư duy lập trình và kỹ năng giải quyết vấn đề. Hãy cùng nhau khám phá thế giới lập trình và biến ý tưởng của bạn thành hiện thực! Nếu bạn có bất kỳ câu hỏi nào, đừng ngần ngại liên hệ với tôi. Tôi rất vui được hỗ trợ bạn trong hành trình học tập của mình!
View Details