Today, I would like to dedicate the episode to all of you that are starting with ROS. This is going to be tough, you are going to feel confused sometimes. Please, do not surrender. Start with small steps. Do not try to get all the knowledge at once. Keep pushing your ROS learning. And soon you will succeed. You have entered into an amazing and exciting world, which also has a big future. This episode is dedicated to you.
In this episode, I will talk about the basic knowledge we have to have in order to be called a ROS Developer. That is, what is the basics of ROS.
There is a lot to learn about ROS. But when you learn the basics of it, you are more than half the way done. The other half, I would divide it into finding errors in programs and learning new ROS parts like navigation, Moveit, OpenCV with ROS or so.
I would say that the main problems for learners of ROS are two:
to learn the basics
and then to generate the ROS instinct about which questions to ask to the system when there is an error, in order to catch it.
In this episode, we are going to concentrate on the former, since the latter is a matter of practice, practice, practice.
Prior to the basics: the pre-requisites for ROS
Before going into the basics of ROS you must already master the foundation that will allow you to understand ROS. That is:
Linux. You must know how Linux works because at present (March 2020) most of the robots that run ROS run a Linux system. If you don’t know Linux, take this free online course, we specially prepared for learners of ROS: Linux for Robotics.
Python or C++. ROS is programmed using any of those two languages. So you need to master at least one of them. If you don’t know any of them, then start learning Python. This will simplify your learning curve. We created a special Python learning course for ROS learners which you can take here: Python for robotics
Which are the basics of ROS?
What do I mean by the basics of ROS? Those are the concepts of ROS that you need to master in order to be able to create your own ROS programs, debug them and understand third party ROS programs. If you master those concepts, then you will be able to manage yourself in the ROS world. Of course, there will be more to learn about ROS than the basics: the ROS Navigation stack, MoveIt, behavior trees, ROS web programming,… but all those advanced concepts are basically more of the same basics. If you know the basics, you will deeply understand the basics of ROS you will understand how to manage the.
I identify 17 basic subjects required to master ROS. Each of those subjects is at the same time divided by subtopics.
Let’s have a look at all of them:
ROS core
ROS nodes
ROS CLI
ROS environmental variables
ROS packages
Catkin
ROS topics
ROS messages
ROS parameter server
ROS debugging tools
ROS services
ROS actions
ROS logging
Callback Queue
ROS URDF
ROS TF
ROS installation
I have included an infographic that includes all the basic ROS subjects together with their subtopics. The infographic can provide you with a quick vision of the whole ROS map, as well as links to the proper entries in the ROS wiki where to learn more about the subject or subtopic. I call this infographic as the ROS Basics knowledge map. It is more interesting than the classical ROS cheat-sheets because cheat-sheet only focus on the terminal commands and their options. This infographic contains more knowledge and quick access to clarification in the
The ROS Classic Basic Knowledge Map
Here the infographic with all the elements that you need to master in order to become a ROS Developer.
ROS-Basics-knowledge-mind-map
Click on the figure to get the pdf version of it that contains links directly to the ROS wiki that explains the concept. This is very useful in order to remind you of the code of a publisher when you do not remember it, how to create a tf listener or the usage of a ROS parameter. I personally use this a lot because many times I do not remember the actual code when it has been a long time since the last time I used it.
Remember that we have an online course where we teach you all those elements of ROS, plus with practice with online simulations. That is called the ROS Basics in 5 days. On the course, we teach you the concepts along with practical exercises in online simulations that allow you to start building your ROS instinct. Everything without requiring any installation, so you can use any type of computer (Linux, Windows, Mac).
In the close future…
We will publish the ROS2 basics knowledge map, with the proper list of concepts to master as well as the links to the places where to find them. Stay tuned to the ROS Developers Podcast!
Subscribe to the podcast using any of the following methods
Today, I would like to dedicate the episode to all those ROS developers that are Gazebo simulation as their primary tool to test their robot code before pushing to the real robot. This episode is dedicated to you.
Today we are going to talk with the lead developer of Gazebo simulator and she is going to tell us about the next generation of Gazebo which is a complete rewriting of the simulator based on a new set of libraries, the Ignition libraries. Well, those are the questions that we are going to have answered today.
But before going into that, let me remind you about our ROS online academy. Yes, at the Construct we have created an online academy named The Robot Ignite Academy which contains a ROS learning path for beginners. We start by teaching you Linux and Python for robotics, and we continue teaching you all the basic ROS concepts required to become a master of ROS. We conclude with a course that teaches you how to build your own robot and how to ROSify it, add ROS control to it so you can finally become a ROS Developer.
By the way, have you checked our latest course about how to program web interfaces for robots. That is a course that teaches you how to build web pages that connects to to ROS robots and allows you to present robot status information on the screen as well as command the robot. Check it out because it is a very good course pioneer in the world. Find it at www.robotigniteacademy.com
So now, it is my pleasure to introduce you to Louise Poubel. This is the second time I interview her in the podcast about her work on Gazebo simulator. Louise is a senior software engineer at Open robotics. But more than that, she is the Tech Lead developer of simulation at Open robotics. Specifically, she is leading the development of the newest version of Gazebo based on the Ignition libraries called Ignition Gazebo.
On top of that, she describes herself as a citizen of the world! I love that!
Welcome to the podcast Louise!
Lousie shows us her super cool T-shirt about Ignition Citadel
Today, I would like to dedicate the episode to those ROS developers that want to build their own robot for doing ROS experiments and learning.
Today we are going to talk with a ROS Developer that has built a ROS robot based on Nvidia Jetson nano in order to do deep learning experiments with ROS robots
But before going into that, let me remind you about our ROS online academy. Yes, at the Construct we have created an online academy named The Robot Ignite Academy which contains a full path of lessons and courses clearly specified to become a ROS Developer. We start by teaching you Linux and Python for robotics, and we continue teaching you all the basic ROS concepts required to become a master of ROS. We conclude with a course that teaches you how to build your own robot and how to rosily, add ROS control to it. Check it out at www.robotigniteacademy.com.
Apart from that, let me tell you that we have prepared a live course in Barcelona to teach how to program robot manipulators. In collaboration with Robotnik company, we are going to deliver a one week live course in Barcelona to teach how to make a mobile manipulator equipped with cameras, arm and wheels move in a warehouse and do the typical pick and fill in the box task. We are going to practice with real robot RB-Kairos from Robotnik and learn how to create a complete application including the web interface to easily control the robot by non-experts. Check it out at masteringros.com.
So now, it is my pleasure to introduce you again Miguel Angel Rodriguez. Miguel Angel is the CTO of The Construct . There he builds robots, develops ROS code and creates online courses for learning ROS. He is also the host of Morpheus Chair, a Youtube show where he shows how to interact with ROS and real hardware.
He is here today to explain us about his latest robot built on top of Nvidia Jetson Nano.
Today, I would like to dedicate the episode to all those ROS developers that are considering moving into ROS2. I know, we are very comfortable with ROS 1 because we already know how it works, and we have a big base of code created to support our future developments. ROS2 is a little bit more scary, we need to start almost from scratch and construct all that ecosystem for our robot or product once again. I know, but, after all, aren’t we engineers? Aren’t we here to take technological challenges and beat them? Yes we are! So, now it is a good moment to accept the challenge and start with ROS2. For those of you that take the step forward, this episode is dedicated to you.
Today we are going to talk with one of the persons behind Fast-RTPS, you know the default DDS mechanism that Open Robotics ships with ROS2. What is Fast-RTPS? Why is it shipped by default on ROS2? How can we take the most of it? Well, those are the questions that we are going to have answered today.
But before going into that, let me remind you about our ROS online academy. Yes, at the Construct we have created an online academy named The Robot Ignite Academy which contains a ROS learning path for beginners. We start by teaching you Linux and Python for robotics, and we continue teaching you all the basic ROS concepts required to become a master of ROS. We conclude with a course that teaches you how to build your own robot and how to ROSify it, add ROS control to it so you can finally become a ROS Developer.
By the way, have you checked our latest course about how to program web interfaces for ROS robots. That is a course that teaches you how to build web pages that connects to to ROS robots and allows us to present information on the screen and also command the robot. Check it out because it is a very good course pioneer in the world (www.robotigniteacademy.com).
So now, it is my pleasure to introduce you to Jaime Martin Losa. Jaime is the CEO of eProsima the company developing Fast RTPS. He is an expert in middlewares, and as such, he leads also the eProsima OMG membership, and he is the responsible of eProsima contribution to the DDS standards.
DDS implementations benchmark rosject containing everything required to reproduce the benchmark (includes full documentation). No need to install anything in your computer.
This is the first podcast episode of the year 2020. Also, we are celebrating that we have been here with you for 2 years. Yes, we are entering into the 3rd season of the podcast.
That is why today, I would like to dedicate the episode to all the listeners of this podcast. It is thanks to you that are listening, that we can keep doing this podcast. Thanks to your support, to your comments, to your shares in the social networks, that our podcast has a reason of being.
I really enjoy when I attend different events around the world and meet people that tell me they are followers of the podcast. I’m very happy to hear that the podcast is useful for you, because that is the main aim of this podcast: to be entertaining and useful
Today we are going to do a review the whole 2019 year in terms of the podcast. Which episodes were the most listened ones? Which platform is the most used to listen? What can we say about the audience? Those are the questions that we are going to answer along this episode.
But before going into that, let me remind you about our ROS online academy. Yes, at the Construct we have created an online academy named The Robot Ignite Academy which contains a ROS learning path for beginners. We start by teaching you Linux and Python for robotics, and we continue teaching you all the basic ROS concepts required to become a master of ROS. We conclude with a course that teaches you how to build your own robot and how to ROSify it, add ROS control to it so you can finally become a ROS Developer.
Apart from that, let me tell you that we have prepared a live course in Barcelona to teach how to program robot manipulators. In collaboration with Robotnik company, we are going to deliver a one-week live course in Barcelona to teach how to make a mobile manipulator equipped with cameras, arm and wheels move in a warehouse and do the typical pick and fill in the box task. We are going to practice with real robot RB-Kairos from Robotnik and learn how to create a complete application including the web interface to easily control the robot by non-experts. Check it out at masteringros.com
Podcast published in the following platforms
We publish the podcast in two main platforms: iTunes, for the listeners that use MacOs devices like the iPhone or iPad, and Stitcher, for the listeners in other platforms like Android. You can get the links to those on the show notes.
However, during during 2019 we decided to publish the podcast also in two other platforms:
* We started to publish the podcast in our Youtube channel.
* In May of 2019, Spotify launched its podcast service, and we started to publish the podcast there
Audience
We have an average of 1.022 listeners per episode at the end of 2019. That is more than double what we had in 2018. In 2018 we had an average of 473 listeners per episode. Our goal for 2020 is to 10x the number of listeners per episode.
In Youtube, we usually have around 170 visualisations more per podcast. However some specific episodes have had peaks of 350 visualisations.
Spotify just provides a few more visualisations (around 40 more), but we can see a clear tendency into growing. Spotify has incorporated in May of 2019 their service of podcasts.
1. United States (19%)
2. India (9.16%)
3. Germany (7.59%)
4. South Korea (3.83%)
5. Japan (3.8%)
6. Spain (3.67%)
7. UK (3.29%)
8. China (3%)
Feedback received
We accept compliments as well as criticisms. For example, we got a lot of complains about the sound of some of the episodes. This is now first priority for me to improve. Also got complains about the frequency of publication. It should be weekly but sometimes it took longer. I’m working on that on delivering an episode every week on Mondays.
Those two are the main goals to improve the quality of the podcast for this year. We will push hard to accomplish, but do not hesitate to let us know when we are failing on those..
We are not receiving any complain about the deepness of the subjects. Are we doing it ok? Would you like us to deal more technically with the subjects, or you would even like to go less into technical details and go more about the story and anecdote around the ROS development of the week?
Then before finishing, I would like to remind you that our goal is to achieve the 10x increase in number of listeners.
How can we achieve that? Only with your help. If you like the podcast please help us reach that goal. How can you do it?
– Recommend to your colleagues
– Give us 5 stars on iTunes or Stitcher
At present we only have one feedback in Stitcher from Pito Salas which says:
If you do ROS, you need to listen to this podcast!
I’ve listened to most of the episodes so far and I feel that they are excellent if you are technical and want to know as much as possible about ROS. I really like the interviewer’s style!
We have no feedback on iTunes.
We need your feedback about the podcast! Please give us a review. We accept criticisms. I’m not afraid of the critics, since I strongly believe that they are the source for improvement.
I need to clarify also that we love your support messages like the one of Pito since they allow us to see that we are doing something which is useful for you.
How can you suggest us a subject or person to interview for the podcast? Send me an email at rtellez@theconstructsim.com
You can even propose yourself for the interview. Remember that the goal of the podcast is to provide useful content to the ROS Developers out there. They need to learn about the latests technologies on ROS, which ones they should apply to their projects, how can they make best usage. If you think that your development is going to help the ROS developers out there, you can propose yourself.
That is all for today. Please leave us a review in iTunes telling us what you think about the podcast and what you would like to have. Thank you very much for your 5 stars in iTunes!!
See you next week with a new lesson from the experts. Until then, keep pushing your ROS learning!
Related links
The Robot Ignite Academy, our online academy that teaches you ROS in 5 days using simulations
The ROS Development Studio, our online platform to program ROS online only with a browser
Subscribe to the podcast using any of the following methods
Hi ROS Developers and welcome to the ROS Developers Podcast: the program, the podcast that gives you insights from the experts about how to program your robots with ROS.
This is Ricardo Tellez, from The Construct.
Today, I would like to dedicate the episode to all those ROS developers that attended the ROSCON 2019 some weeks ago. I can tell you that it was the best ROSCON ever. I hope that you enjoyed it as much as I did, and that you learned as much as I did. I mean, you can learn so much in such a conference that at the end of the day you can feel how your brain cannot handle anymore. Amazing!
Today, we are going to talk with one ROS student that attended the last ROSCON thanks to the Diversity Scholarship that Open Robotics offers.
But before going into that, let me remind you about our ROS online academy. Yes, at the Construct we have created an online academy named The Robot Ignite Academy which contains a ROS learning path for beginners. We start by teaching you Linux and Python for robotics, and we continue teaching you all the basic ROS concepts required to become a master of ROS. We conclude with a course that teaches you how to build your own robot and how to ROSify it, add ROS control to it so you can finally become a ROS Developer. Check it out here: www.robotigniteacademy.com
So now, it is my pleasure to introduce you to Drashti Patel. Drashti is Master student of the Master of Science and computer engineering of the New Jersey Institute of Technology in Newark. There she also works as teaching assistant. She is a ROS developer specialized in Embedded systems and SLAM. Let’s talk with her about her experience in her first ROSCON.
Welcome to the podcast Drashti!
Drahsti_Patel_roscon_1 (picture by Drashti Patel)
Drashti_Patel_ROSCON_Ricardo_Tellez (picture by Drashti Patel)