ROS For Beginners
4.4 (812 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
3,068 students enrolled

ROS For Beginners

Master the Key ROS Concepts to Create Powerful and Scalable Robot Applications, Step By Step
Bestseller
4.4 (812 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
3,068 students enrolled
Created by Edouard Renard
Last updated 5/2020
English
English [Auto-generated]
Current price: $139.99 Original price: $199.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 5.5 hours on-demand video
  • 2 articles
  • 6 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Master ROS basics
  • Create, build, run, and debug your ROS program
  • Master ROS core functionalities
  • Learn ROS best practices to make your application readable and scalable
  • Create reusable code for any robot powered by ROS
  • Write ROS code with both Python and C++
  • Learn by doing, not just watching
Course content
Expand all 68 lectures 05:40:15
+ Install ROS and Setup Your Environment
7 lectures 23:48
Intro
00:46
[UPDATE] Quick note on versions - please read
00:46
Which ROS Version to Use ?
03:01
Install Ubuntu on a Virtual Machine
11:59
Install ROS
04:56
Launch Your First ROS Master
01:56
Section Conclusion
00:24
+ Run Your First ROS Program
11 lectures 50:18
Intro
00:42
Create a Catkin Workspace
03:54
Additional Note about Setting Up your ROS Environment
00:48
Create a ROS Package
04:33
What is a Node ?
08:09
Debug Your Nodes With Command Line Tools
05:57
Visualize Your ROS Graph With rqt_graph
01:58
Experiment on Nodes With Turtlesim
04:52
Section Conclusion
00:45
+ Communicate With ROS Topics
13 lectures 01:17:53
Intro
00:33
Create a Python Publisher
09:25
Create a Python Subscriber
06:02
Create a C++ Publisher
07:52
Create a C++ Subscriber
06:33
Use Anonymous Nodes to Launch Multiple Publishers/Subscribers
08:42
Debug Topics With Command Line Tools
05:09
Experiment on Topics With Turtlesim
03:59
Topic Activity
01:50
Topic Activity - Solution
14:16
Section Conclusion
00:39
+ Communicate With ROS Services
10 lectures 01:03:18
Intro
00:48
What is a Service ?
07:36
Create a Python Service Server
08:25
Create a Python Service Client
06:34
Create a C++ Service Server & Client
18:12
Experiment on Services With Turtlesim
05:50
Service Activity
01:24
Service Activity - Solution
10:02
Section Conclusion
00:29
+ Customize Your Application With Msg and Srv Files
9 lectures 57:14
Intro
00:45
What are Msg and Srv Definitions ?
07:40
Create and Build Your Own Custom Msg
08:20
Use Your Custom Msg in Your Code
06:37
Create Your Own Custom Srv
04:59
Debug Msg and Srv With Command Line Tools
06:04
Msg & Srv Activity
01:37
Msg & Srv Activity - Solution
20:32
Section Conclusion
00:40
+ Make Your Application Scalable With ROS Params and Launch Files
8 lectures 31:50
Intro
00:43
What is a ROS Parameter ?
02:26
Manipulate Parameters With Command Line Tools
02:43
Handle Parameters With Python
06:27
Handle Parameters With C++
06:55
What is a Launch File ?
03:01
Create a Launch File to Start all Your Parameters and Nodes
08:58
Section Conclusion
00:37
+ Bonus
4 lectures 20:04
Replay a Topic With ROS Bags
04:01
Use OOP With ROS - Python
03:47
Use OOP With ROS - C++
04:16
Work With Multiple Catkin Workspaces
08:00
+ Conclusion
3 lectures 04:20
What You've Learned
01:02
What to Do Next ?
01:41
Useful Resources
01:37
Requirements
  • Basic programming knowledge (Python or C++)
  • You are familiar with Linux and how to use a terminal
Description

Learning ROS is hard, and you know it. But why should it be that way?

There is a lack of structured resources for beginners. You can find some explanations and programming tutorials online about Robot Operating System, but they won’t really tell you which path to follow when you begin, where to go, what to focus on, ...

That’s why I’ve created this course, that I wish I had when I begun. So you can learn ROS much faster than I did.

The goal of this course is to remove the big learning curve that you face when you start to learn ROS by yourself. I will show you, step by step, what you need to know to get started and master ROS basics.

This course is :

  • Structured in a way that is easy to follow for a beginner

  • Going through all ROS core concepts that you need, step by step

  • Going to the point. No useless and over-complicated stuff that you won’t use anyway.

  • Full of practice and challenges to make you progress faster

Now, why should you choose my course?

For the last 3 years, I have developed a complete ROS software for an entire 6 axis robotic arm. I’m telling you that because by developing this robot, I learned (the hard way) what I really needed to know to build things that actually work.

My experience with ROS is not only about university work or a weekend hobby: I actually co-founded a business with a robot powered by ROS. By doing so, I had to focus on going to the point, finding what is useful, and what is not.

So today, with the practical vision that I’ve developed, I know exactly what you need to learn at the beginning if you want to get serious about building robotic applications.

What is this course about?

This course will guide you, step by step, through all the ROS core functionalities. We’ll focus on ROS basics, communication tools, and also on how to build a scalable application with Robot Operating System.

For each section, I will explain one concept in a way that is easy to understand, and then you will practice with me by writing, building, and running some code. I will show you what you need to pay attention to, what you need to focus on, and how to avoid common mistakes.

And, more importantly, I will give you some activities and challenges to make you practice on the concepts that you’ve just seen.

Note that all the code written in this course will be both in Python and C++, so you can decide to learn ROS with those 2 languages, or only one of them.

So… Start your learning today and build awesome robotic applications with ROS !

After installing ROS on a Ubuntu OS, you will learn the following ROS key concepts :

  • Nodes

  • Topics

  • Services

  • Msg and Srv definitions

  • Parameters

  • Launch Files

  • And much more!

By mastering those concepts, you will be 100% ready to start any other robotic application and build complete software from scratch using Robot Operating System.

You will also learn how to :

  • Debug your program

  • Use command-line tools for each key concept

  • Build your application

  • Correctly set up and manage your project structure

And as I want to make you develop great (not just good, because “good” is not good enough) and scalable robotic applications, I will share with you the best practices that I’ve learned from my own experience.

Who this course is for:
  • Students who want to learn ROS without wasting time
  • Developers who want to join the robotic side
  • Researchers/Teachers who want to use a great robot framework for teaching and testing
  • Engineers who want to create robot softwares faster
  • And anyone who wants to build scalable robot applications with ROS