ROS2 (Foxy) For Beginners I: Basics and Fundamental Concepts




ROS2 (Foxy) For Beginners I: Basics and Fundamental Concepts

Note

The course title was changed from ROS2 (Foxy): The Next-Generation ROS to the new title ROS2 (Foxy) For Beginners I: Basics and Fundamental Concepts. The reason is to be in line with my course series ROS For Beginners.

UPDATE

The course is updated with the latest LTS ROS2 version, ROS2 Foxy, on March 2022.

Are you in the right place?

You are a ROS user, and you have heard about ROS2 as being the next generation ROS, but,

  • you are still unsure what ROS2 is?

  • How does it improve on and differ from ROS1?

  • Is it time to migrate to ROS2?

  • Is it easy to install ROS2 and get it up and running?

  • How to create a workspace, a package, and write programs with ROS?

This course is the right place to address all the questions about ROS2.

ROS2 is the next generation of Robot Operating System (ROS) and the community is starting the migration to this new framework.

Why do you need to take a ROS2 course now?

ROS1 has emerged since 2009 and has been evolving as the defacto standard Ecosystem for developing all kinds of robotics applications, including mobile robots, robotics arms, unmanned aerial systems and drones, self-driving cars, and much more. In ROSCon 2014 conference, the Open Source Robotics Foundations (OSRF) and the ROS community started to discuss and identify some gaps in ROS1, including (1) single point of failure with the ROS Master Node, (2) nonsupport of multi-robots systems as ROS1 was designed for a single robot usage, (3) and no support of real-time guarantee or quality of service profiles, and thus its reliability was questionable.

The ROS community has formed several working groups to design and develop the next-generation version of ROS1, which is currently ROS2. Alpha and Beta versions started to show up from August 2015 until September 2017, and the first official ROS2 release, known as Ardent Apalone, was launched. On December 8th, 2017. Despite the release of ROS2, ROS1 was still being used more actively than ROS2 until 2022, and the main reason is that ROS2 has been under continuous development and did not reach the same level of maturity as ROS1. In fact, the ROS2 developers created the ROS1 Bridge package to be able to communicate between ROS1 and ROS2 when ROS1 is needed from missing functionalities in ROS2.

However, things have been changing since 2021, where ROS2 has accomplished most of the missing functionalities, including navigation, transformations, and others. It is expected that ROS2 will completely dominate or at least start to dominate ROS1 in 2023. For this reason, learning about ROS2, even if you are an experience ROS1 developer, is becoming more and more in need of coping with the future changes and transition from ROS1 and ROS2. As a matter of fact, the latest ROS1 version, ROS Noetic, released in May 2020, has an end of life in May 2025, while ROS2 will continue developing.

I provide this course to all ROS users, with prior knowledge on ROS1 or even entirely new to the ROS ecosystem, to present the features of ROS2 and how it differs and compares with ROS1.


Course Objectives:

The objectives of this course are as follow:

  1. Unveil the secrets of ROS2

  2. Explain the concepts of ROS2 using a hands-on approach

  3. Clarify the differences between ROS1 and ROS2

  4. Provide comprehensive coverage of the ROS2 ecosystem

  5. Demonstrate how to create a ROS2 workspace and packages using C++ and Python

  6. Discuss in detail the implementation aspects of ROS2 topics, services, messages, and actions


Course Learning Outcomes

At the end of the course, you will be able to:

  • Install ROS2 on Ubuntu

  • Recognize the concepts of ROS2 and its ecosystem

  • Understand the difference between ROS1 and ROS2

  • Recognize the features of Data Distribution Service (DDS) used in ROS2

  • Create ROS2 workspaces and packages

  • Develop programs with ROS2 (C++ and Python)

  • Execute applications using ROS2

  • Practice ROS2 Computation Graph Concepts using Hands-on with Turtlesim


Pre-Requisites

  • Familiarity or ROS1 basic concepts

  • Knowledge in C++ and/or Python programming languages

  • Basic understanding of Linux Ubuntu Operating System

Enroll now!

If you want to be one of the first ROS users to learn ROS2 and be up to date with the next-generation robot operating system framework, which sooner or later, will be fully replacing ROS2, as the ROS developer community is actively pushing towards ROS2, then, do not let time running out and enroll right away in this course to start your ROS2 experience.

Become an expert of ROS2 next generation robot software development framework

Url: View Details

What you will learn
  • Install ROS2 on Ubuntu
  • Recognize the concepts of ROS2 and its ecosystem
  • Understand the difference between ROS1 and ROS2

Rating: 4.18518

Level: Beginner Level

Duration: 2.5 hours

Instructor: Anis Koubaa


Courses By:   0-9  A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z 

About US

The display of third-party trademarks and trade names on this site does not necessarily indicate any affiliation or endorsement of course-link.com.


© 2021 course-link.com. All rights reserved.
View Sitemap