ROS Actions
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
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.Also, this course targets the first version of ROS, or ROS1. This is not a ROS2 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 ?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 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 aboutThis 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. Practicing 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.
Overview
Section 1: Introduction
Lecture 1 Welcome!
Lecture 2 Why ROS Actions ?
Lecture 3 What are ROS Actions ?
Lecture 4 Setup your Environment for this Course
Lecture 5 Check this if you are using ROS Noetic (instead of Melodic)
Lecture 6 How to get the most out of this course
Section 2: Discover Actions With SimpleActionClient/SimpleActionServer
Lecture 7 Intro
Lecture 8 Create an Action Definition and Generate the Action Messages
Lecture 9 Create a Server with the SimpleActionServer
Lecture 10 Create a Client with the SimpleActionClient
Lecture 11 Make your Client Asynchronous
Lecture 12 Send Feedback from the Server to the Client
Lecture 13 Set a Goal as Succeeded or Aborted
Lecture 14 Understand Goal Status
Lecture 15 Cancel a Goal
Lecture 16 Debug ROS Topics used in ROS Actions
Lecture 17 Use rqt_graph to Get More Info about ROS Topics
Lecture 18 C++ – Create a Server with the SimpleActionServer
Lecture 19 C++ – Create a Client with the SimpleActionClient
Lecture 20 Documentation Reference For SimpleActionClient and SimpleActionServer
Lecture 21 Section Conclusion
Section 3: Activity: Experiment on SimpleActionClient/SimpleActionServer
Lecture 22 Intro
Lecture 23 Create the Action Definition
Lecture 24 Create the Server
Lecture 25 Create the Client
Lecture 26 Cancel the Goal with Another Subscriber
Lecture 27 Use rqt_graph to Debug Your ROS Graph
Lecture 28 C++ – Create the Server
Lecture 29 C++ – Create the Client
Lecture 30 Section Conclusion
Section 4: Go To The Next Step: ActionClient and ActionServer Explained
Lecture 31 Intro
Lecture 32 What Are the SimpleActions Main Limitations ?
Lecture 33 When SimpleActions Are Just What You Need
Lecture 34 What is an ActionServer
Lecture 35 What is an ActionClient
Lecture 36 A Few Documentation Links Before You Start
Section 5: Activity: Create a Complete ActionClient and ActionServer
Lecture 37 Intro
Lecture 38 Create a Server With the ActionServer
Lecture 39 Create a Client With the ActionClient
Lecture 40 Send and Handle Multiple Goals
Lecture 41 Change the Goal Policy
Lecture 42 Place Goals in a Queue and Execute Them One by One
Lecture 43 C++ – Create a Server With the ActionServer
Lecture 44 C++ – Create a Client With the ActionClient
Lecture 45 Section Conclusion
Section 6: Conclusion
Lecture 46 What You’ve Learned
Section 7: Bonus
Lecture 47 A Few Examples of Existing Actions
Lecture 48 Bonus Lecture
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
Course Information:
Udemy | English | 6h 42m | 3.59 GB
Created by: Edouard Renard
You Can See More Courses in the Developer >> Greetings from CourseDown.com