5 Steps to getting started with mobile robots
So you have heard the buzzing term “robots” and want to get on the bandwagon but have one or more of these questions currently bugging you:
- How to get started with robotics?
- What are the various types of robots?
- What are the various niches/specializations within robotics?
- How can you build an academic career in robotics?
Then, this article is for you. Several years ago, I was where you are now and I went through the journey myself so believe me when I tell you, I can understand what it feels like to not have a clear path ahead in robotics.
But, unlike my situation, I will try my best to share my learnings with you so that you have all the relevant information you need to make your robotics journey smooth In this article, I give you a step-by-step guide to explain how you can get started with robotics and more specifically mobile robotics, a popular niche within robotics, and finding your core strength areas and publish top-tier peer reviewed scientific articles.
Step-1: Learn about various types of mobile robots
As a beginner, you would be asking yourself “How to start with robotics”? To answer this question, your very first step is to learn about the various types of robots.
As a beginner you may or may not know very well about the various types of robots but it is imperative to understand that the word “robot” is an umbrella term encompassing a variety of robot platforms like:
- ground rovers such as iRobot’s Roomba, Clearpath’s Husky, or a Turtlebot
- aerial robots such as DJI’s Mavic Air 2 or Sensefly’s fixed wing drone Ebee
- marine robots
- humanoid such as Softbank’s Nao
- manipulators such as the Universal Robot’s UR5
- and many others
When you are exploring your interests in robotics, you also need to carefully consider the various types of robots and identify the one type that is most intriguing for you. For instance, in my case I really love drones followed by ground rovers. Not only this, you would also need to realize that there are numerous challenges to real world deployment and you can’t really foresee all possible scenarios.
Step-2: Learn about various components of robots
Building a robot is a collaborative effort where you borrow some components from the community, industry or peers and assume that all aspects associated with that particular component will be addressed by the party in-charge. In essence, you want to identify the component for which you will be leading the charge.
As I am interested in mobile robots, I mostly talk about the process of identifying the components in that context but similar process would ensue in case you are interested in humanoids, manipulators or any other robot of choice that you hone in on after Step-1.
Some components you can choose to specialize in are (non-exhaustive in no particular order of preference):
- if you are good with circuit design and electronics in general, you can opt for specializing in sensors and signal processing
- if you are good with programming you can focus more on enhancing the autonomy of a mobile robot by working on Artificial Intelligence models such as Machine Learning, Deep Learning and developing algorithms with near real-time performance guarantees.
- if you are good in Mechanics, you can design innovative steering mechanisms that allow robustness in navigation across various terrains and environmental conditions
- if you are good in Mechanics and CAD modeling, you can even design your own custom robots
While going through this Step, you stand to gain two folds: 1.) identifying which component you would like to master and 2.) identifying which educational qualification(s) will help you master the chosen component.
You are essentially trying to balance the tradeoff to be able to deploy a robot while having sufficient control over its components for customization to the task at hand while avoiding reinventing the wheel. Also, at this point you should understand that there is no need to break your bank while learning robotics and you can easily learn robotics on a budget at home.
Step-3: Find your niche in robotics
There are a variety of specializations one could aim for when it comes to robotics but broadly speaking, they can be classified as:
- Software: this branch of robotics research primarily focuses on algorithmic foundations and covers various forms of Artificial Intelligence (A.I.) such as Deep Learning, Machine Learning, and developing algorithms such as for path and motion planning. Thus, you need to be conversant with programming. And if you are wondering how to start robotics programming, start with one language such as C++ or Python.
- Hardware: this involves aspects such as mechanics and computer aided design (CAD) for designing the robot platform and may extend to ancillary branches such as electronics and allied fields.
Step-4: Hands on exposure to robots
So you have found your niche within robotics and the component of the robot which you will be building your expertise in, and potentially your career.
The next step is to get your hands dirty and get some experience so you can get a taste of what it is that you wish to sign up for.
Consider this as a trailer to the journey ahead of you should you still continue on the path in robotics you have set aside for yourself.
There are numerous ways in which you can go about this. Below is a non-exhaustive list in no particular order meant to give you some pointers to build on.
- Hackathons: If you want an immersive environment wherein you can push the robot to its limits and see your “component” in action, you can consider participating in a Hackathon. Now there are numerous hackathons with different entry requirements so you should the guidelines before signing up but you should easily be able to find prominent ones online with a quick search.
For instance, in Europe you could consider joining the European Robotics Hackathon together with a group of some friends each of you specializing in a different component so you can complement each other and build and end-to-end robotic solution for the various challenges that these hackathons come up.
- Competitions: Often times, there are competitions organized by robotics associations and student-led clubs and if there is one happening near you, you should consider participating.
There might be numerous such competitions that suit the niche you selected above. For instance, if you want to play with humanoid robots, you could consider Robocup soccer league and have your robot team play soccer with the opposing team. If, you are also interested in mobile robots like and were always fascinated by RobotWars, you could consider signing up for Battlebots.
- Do it Yourself (DIY) kits: If speaking to people, managing them and building a team seems daunting to you and you would rather have something to do on your own, then you can always go for the do it yourself (DIY) route.
This would require some investment from your own pocket though mostly manageable but you can easily go for a simple LEGO Mindstorms or an Arduino robot car kit to build out robots of your choice. In doing so, you will get the chance to focus on the component that most excites you as the manufacturing and assembly will already be taken care of.
Back when I was at the University of Edinburgh I also designed a lego robot (see figure below) as a member of a small team and we organized friendly competitions to make them pass a simple obstacle course. Think of it like a scaled down version of the competitions.
However, if you thinking how to learn robotics at home, there is always a possibility to do without breaking your bank.
- Assembled robots: If however you are feeling like the LEGO kits would not suffice your needs and you want even more customization, you can opt for purchasing commercial off-the-shelf components and then assembling the robot yourself.
This gives you the ability to curate a robot that is specifically designed to serve your needs assuming you have the budget that allows this customization. During my Ph.D. at JAIST, Japan, I got the chance to custom build one such robot which I called Rusti and I customized it to be an all terrain rover meant to be our first outdoor robot.
- Learn in simulators: If you do not have the budget, time, and resources to invest in kits or participate in hackathons and competitions, you can opt for an alternative route, i.e., learn in simulators.
In robotics, we often resort to using the Robot Operating System (ROS) which comes with a set of simulators allowing you to get the hang of robots including mobile robots, manipulators, humanoids etc., without investing in hefty hardware.
- Remote robot labs: If the notion of being confined to simulations seems restricting to you as it does to me, I have one more alternative for you to get to grips with mobile robots.
In robotics, especially with mobile robots, we also say that there is a big gap in simulation and real world as the Physics cannot be perfectly captured in simulations. So, even if the robot seems to be performing the desired behaviors in simulators, it can go wrong, drastically wrong, in reality.
Thus, a rather nascent alternative to simulators would be sign up for a remote robot lab such as the RoBox by Construct which gives you access to a mobile robot from anywhere in the world. The good thing is that they take care of the management and upkeep of the robot while you can focus on deploying your algorithms on a real platform from anywhere on earth.
The downside is that they dictate which robots you can have access to and what environment the robot would operate in.
Step-5: Algorithmic exposure to robotics
Knowing how to assemble a physical robot platform is one thing but without the complementary software architecture to go with it, the robot would just be a show piece.
Here are some avenues for you to get algorithmic exposure towards developing autonomous mobile robots:
- Mapping algorithms: To understand the spatial environment the robot is being deployed in, it needs to build a map and encode the relevant information. Figure out how to build maps and what all types of maps exist.
- Localization algorithms: Given a map, unless a robot knows where it is, it cannot really figure out where it needs to go and where is the goal with respect to the current location. This is known as localization and there are several different ways of addressing this.
- Simultaneous Localization and Mapping (SLAM): In real world, it is hardly ever the case that the robot would be given a map or its starting location. Thus, it needs to simultaneously build a map and localize with respect to it iteratively. Learn about how this is achieved and what are the associated challenges that come with it.
Step-6: Share your robotics journey
In the era of social media, you have the golden opportunity to share your journey with others and grab the chance to get valuable feedback from seasoned robotics experts both from industry and academia to hone your skills. Sign up for professional social media networks such as LinkedIn, Twitter, YouTube, etc., and start showcasing your journey from the early days. By the time you mature in your robotics journey, you would have also build a community you can tap into for help, feedbacks, referrals and a lot more.
In this era, your network is your net worth so do focus on building your community.
This is the exact same framework I used in my own career and decided on mobile robotics as my specialty. I then went ahead and acquired relevant academic credentials and started carving out my research interests within the realm of mobile robotics.
After some thought and the practical wisdom I acquired over the years, the applications of mobile robots that excite me are urban search and rescue and defense such as persistent border patrolling.