Tips for Getting Started with Robotics

3 min readMay 2, 2020

Robotics is an interdisciplinary research area in which deep theoretical knowledge as well as software and hardware skills are required. As a mechanical engineer, my approach was to “Jack of all Trade and Master of one”. In current time, most of robotics research is growing in field of AI, ML and Vision. So, it was a little bit challenging for a mechanical engineers to choose a research field. “Control And Planning of Multi-Robot System” and “Control and Dynamical System” are my favorite one. Current era is of computation, so you should be very good in one programming language. Because at end we have to validate our algorithm either on hardware or through any software visualization (like gazebo). I am going to mention a road map of my journey into robotics.

  1. Play with Arduino, Sensors(IR, Ultrasonic, Encoders etc), Actuators(DC, stepper, servo).
  2. Experience of IMUs ( accelerometer, gyroscope and magnetometer), because it will also help in understanding various sensor fusion algorithm like Complementary, Kalman, Madgwick / Manhony filter as well as quaternion system.
  3. CAD software like Solidworks.
  4. MATLAB programming. Use MATLAB Robotics toolbox and open source code/packages. Understand their code, modify and see the changes. You could try robot kinematic models, controllers (PID) and mathematics.
  5. Participate in any Robotics Competition, this will help in critical thinking for robot design-manufacturing.
  6. Be familiar with Linux (Ubuntu) and command lines. This is most basic and most important step toward ROS.
  7. Now, work on at least one Single Board Computer like Raspberry Pi.
  8. Code in Python and practice OOPS concept. Few python libraries are: Numpy, PyTorch, Scipy, Pandas, etc.
  9. For coding two tools which i prefer, Sublime-Text Editor and Jupyter Notebook. Sublime has many shortcuts and colorful graphics. Jupyter Notebook is like rough notebook where i play with modified algorithms.
  10. Learn Git and Github because most of the time we will use open source code.
  11. Now start the Robot Operating System(ROS). If you are good in command lines and python then ROS is going to be very easy for you. Be clear with terms “Publisher”, “Subscriber” “Node” and “Topic”. From here you are no more beginner in robotics. You should be able to search and use free ROS packages available on github. This is 100% sure you will struggle here a lot. But keep in mind every problem has a solution and you have to search it. Various online discussion forums will help to debug your problem.
  12. We need multiple Terminal to run our projects, so you can use “Terminator” software, it provides the ability to create multiple terminals in one window and faster your work progress.
  13. After learning ROS, it is easy to grasp RViz (Visualtion tool of ROS) and Gazebo (Physics simulator).
  14. I replaced Windows with Ubuntu and Microsoft Word with Overleaf (Latex). Whatever project it is do a proper documentation with video and update it on the Github account.

These are only skill sets, if you want to go in research you should focus more on theoretical knowledge. There is no single book or source which will solve all of your problem, so never hesitate to use Google.

For robotics, the most important thing is knowledge of Applied Engineering Mathematics. Lecture series of Steve Brunton on Mathematics motivate the implementation on MATLAB. Playlist of Modern Robotics by Northwestern Robotics is all in one series for Manipulators and Mobile Robotics (i have never seen all). For beginner, it is important to know the Syllabus and Table of content first; Kinematics, Perception, Localization, Control, Planning and Navigation. Best book is “Introduction to Autonmous Mobile Robots”.

--

--

Responses (1)