Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ AWS Certified Developer - Associate
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Mindfulness Personal Development Personal Transformation Life Purpose Meditation Emotional Intelligence Neuroscience
Web Development JavaScript React CSS Angular PHP WordPress Node.Js Python
Google Flutter Android Development iOS Development Swift React Native Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Retargeting
SQL Microsoft Power BI Tableau Business Analysis Business Intelligence MySQL Data Analysis Data Modeling Big Data
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Online Business Business Plan Startup Freelancing Blogging Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee
Development Software Engineering Robot Operating System

ROS For Beginners (ROS Noetic, Melodic, Kinetic)

Master the Key ROS (Robot Operating System) Concepts to Create Powerful and Scalable Robot Applications, Step By Step
Highest Rated
Rating: 4.6 out of 54.6 (1,178 ratings)
4,366 students
Created by Edouard Renard
Last updated 1/2021
English
English [Auto]
30-Day Money-Back Guarantee

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
Curated for the Udemy for Business collection

Course content

9 sections • 70 lectures • 6h 9m total length

  • Preview03:13
  • What is ROS, When to use it, and Why ?
    Preview06:35
  • How to get the most out of this course
    01:41

  • Intro
    00:46
  • [UPDATE] Quick note on versions - please read
    00:48
  • Which ROS Version to Use ? Kinetic, Melodic, Noetic ? What about ROS2?
    06:41
  • [If you use ROS Noetic] Install Ubuntu 20.04 on a Virtual Machine
    19:06
  • [If you use ROS Noetic] Install ROS Noetic on Ubuntu 20.04
    05:55
  • [If you use ROS Melodic] Install Ubuntu 18.04 on a Virtual Machine
    11:59
  • [If you use ROS Melodic] Install ROS Melodic on Ubuntu 18.04
    04:56
  • Launch Your First ROS Master
    02:01
  • Section Conclusion
    00:24

  • 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
  • Preview07:34
  • Preview11:06
  • 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

  • Intro
    00:33
  • What is a Topic ?
    Preview09:10
  • 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
  • Preview03:43
  • Experiment on Topics With Turtlesim
    03:59
  • Topic Activity
    01:50
  • Topic Activity - Solution
    14:16
  • Section Conclusion
    00:39

  • 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
  • Preview03:58
  • Experiment on Services With Turtlesim
    05:50
  • Service Activity
    01:24
  • Service Activity - Solution
    10:02
  • Section Conclusion
    00:29

  • 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

  • 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

  • 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

  • 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

[Updated with ROS Noetic! This course is now valid for ROS Kinetic, ROS Melodic, and ROS Noetic]

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?

In the past 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.

UPDATE:

Note: this course targets the first version of ROS, or "ROS1". This is not a ROS2 course.

--> Should you learn ROS1 or ROS2?

Well, ROS2 is the future of ROS, that is for sure. But for now, ROS1 is much more stable and mature than ROS2. Almost all serious projects and community packages target ROS1, and many of them are lacking in ROS2. You still have a few years before ROS2 will surpass ROS1.

Learning ROS1 will allow you to work today on existing projects and get all the available features. Also many companies still work with ROS1, so if you want to get a job soon that's the way to go.

Finally, once you have the basics with ROS1 and a few projects under your belt, switching to ROS2 actually won't be that hard. Most of the concepts are identical for the 2 versions.

The best option would be to learn ROS1, AND ROS2. So you can work with any existing ROS project, and also work with the new framework.

All in all, don't hesitate too much: the best thing you can do is to start learning ROS today, whether it's ROS1 and ROS2.

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

Featured review

Saurabh Rahatekar
Saurabh Rahatekar
5 courses
2 reviews
Rating: 5.0 out of 57 months ago
I thought the ROS would take around a year to learn its basics. But because of this course, I completely learned all the basic concepts of the ROS within few hours. Thank you for your efforts to teach newcomers in robotics. Not just me, many people who went through this course would love if you take another course on building a real robotic application.

Instructor

Edouard Renard
Software engineer and entrepreneur
Edouard Renard
  • 4.6 Instructor Rating
  • 2,341 Reviews
  • 10,950 Students
  • 6 Courses

Hi, I’m Edouard. I am a software engineer, entrepreneur, and robotics teacher.

I really enjoy teaching new technologies to people, and making complex stuff easy to understand. My method is simple, and contains only 3 words : Step By Step. I know how hard it can be to learn a new topic and just be lost in an ocean of information, without knowing what to do. In my courses, I make sure that you learn one step at a time, through practicing, and that you also learn the best practices.

I am passionate about robotics. I found that it’s amazing how many cool projects you can do with a robot, when you have the required programming knowledge!

I also co-founded a robotics startup in 2016, building a complete robotic arm, from scratch, with Arduino, Raspberry Pi, Ubuntu and ROS. Thus, I am aware of things that work and things that don’t work, thanks to a lot of practice. This will save you a precious time and make you progress faster.

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.