ROS Actions
4.6 (32 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.
490 students enrolled

ROS Actions

Master ROS Actions and Create More Complex Robotics Applications
Highest Rated
4.6 (32 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.
490 students enrolled
Created by Edouard Renard
Last updated 11/2019
English
English [Auto-generated]
Current price: $97.99 Original price: $139.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 6.5 hours on-demand video
  • 2 articles
  • 3 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 actions
  • Use the SimpleActionServer, SimpleActionClient, ActionServer and ActionClient classes
  • Create more complex robotics applications
  • Get more practice on ROS with Object Oriented Programming
  • Unleash the potential of ROS communication
  • And even more ROS best practices
Course content
Expand all 46 lectures 06:40:18
+ Introduction
5 lectures 18:59
Setup your Environment for this Course
03:41
How to get the most out of this course
00:58
+ Discover Actions With SimpleActionClient/SimpleActionServer
15 lectures 02:05:31
Intro
01:48
Create a Server with the SimpleActionServer
18:27
Create a Client with the SimpleActionClient
13:54
Make your Client Asynchronous
05:24
Set a Goal as Succeeded or Aborted
09:50
Understand Goal Status
08:00
Cancel a Goal
07:39
Debug ROS Topics used in ROS Actions
08:17
C++ - Create a Server with the SimpleActionServer
13:49
C++ - Create a Client with the SimpleActionClient
11:12
Documentation Reference For SimpleActionClient and SimpleActionServer
00:14
Section Conclusion
01:05
+ Activity: Experiment on SimpleActionClient/SimpleActionServer
9 lectures 01:30:44
Intro
04:06
Create the Action Definition
06:07
Create the Server
35:23
Create the Client
12:50
Cancel the Goal with Another Subscriber
12:16
Use rqt_graph to Debug Your ROS Graph
01:32
C++ - Create the Server
09:33
C++ - Create the Client
07:39
Section Conclusion
01:18
+ Go To The Next Step: ActionClient and ActionServer Explained
6 lectures 18:27
Intro
00:49
What Are the SimpleActions Main Limitations ?
03:57
When SimpleActions Are Just What You Need
01:29
What is an ActionServer
06:58
What is an ActionClient
05:00
A Few Documentation Links Before You Start
00:14
+ Activity: Create a Complete ActionClient and ActionServer
9 lectures 02:12:24
Intro
01:55
Create a Server With the ActionServer
38:36
Create a Client With the ActionClient
25:46
Send and Handle Multiple Goals
23:54
Change the Goal Policy
05:32
Place Goals in a Queue and Execute Them One by One
08:53
C++ - Create a Server With the ActionServer
16:21
C++ - Create a Client With the ActionClient
10:19
Section Conclusion
01:08
+ Conclusion
1 lecture 01:11
What You've Learned
01:11
+ Bonus
1 lecture 13:01
A Few Examples of Existing Actions
13:01
Requirements
  • ROS basics (at least nodes, topics, services)
  • Some programming knowledge in Python or C++
  • You are familiar with Linux and how to use a terminal
Description

Learning ROS is hard... But you’ve made it. You have some good basics about ROS nodes, topics, services, … This is a pretty good start. And you want to take your skills to the next level.

Or you’re already in the process of learning ROS actions, but you have some real trouble finding documentation and tutorials online.

A great ROS developer must know about ROS actions, and must be able to use them efficiently when required. Topics, Services and Actions are the 3 communication tools that will allow you to create any complex robotic application.

Warning !!! Before continuing, I want to be sure you understand that this course is not a course for total ROS beginners. You have to get some ROS basics first if you want to be able to follow the pace of this course.


→ Why this course ?


When I first started with ROS actions, my progress was really, really slow. I didn’t find any structured resource or tutorial to go beyond the very basic stuff. It took me a very long time (several months) to finally have a clear understanding.

This course is the course that I wish I had when I started. Practical and to the point. Showing you directly how things work, how you can quickly start and build more more complex applications.


→  Now, why should you choose my course ?


For the last 2 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 Robot Operating System 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 more complex robotic applications.

And getting serious means mastering ROS actions. One day or another, you’ll need to use them or else you’ll be stuck.


→ What is this course about


This course is a complete course about ROS actions. I’ll show you each part of the process, step by step, and explain all the code that I write.

In the first part of the course, you’ll start using ROS actions with the SimpleActionServer and SimpleActionClient classes. Those parts will let you understand the key concepts behind ROS actions.

The second part is focused on using ActionServer and ActionClient classes. Those are more difficult to understand but allow you to create far more complex applications. You will learn how to handle multiple goals, how to change the server goal policy, how to put goals in a queue, etc.

During the course, you will practice through activities and challenges. Practising is the key if you want to learn efficiently.

I will mostly use Object Oriented Programming. That’s a great opportunity for you to improve your OOP skills, which is really working well with ROS. Also, all the code will be written in both Python and C++ !


So… Don’t wait too much and enroll in this course to go to the next level of ROS!


During the course I will also give you all the best practices that I know when developing with the Robot Operating System. So that’s another opportunity to get some practical insights that will help you develop better and more complex robotics applications.

Who this course is for:
  • Students who have learned ROS basics and want to go further
  • ROS developers who want to take their skill to the next level
  • And anyone desperately searching for documentation on ROS actions without finding something useful