top of page

How to Get Started in
Robotics in 2024

So you want to build robots? Thinking about a career in robotics? Awesome choice! Robotics is an exciting and ever-growing field with applications in healthcare, space, manufacturing, education, extreme environments (nuclear, deep sea, offshore), transportation, defense and many more industries. This field is vast and can be a bit overwhelming when you get started, but don’t worry — I’m here to help you navigate your way. Let’s dive in!

Tips for Beginners

​​

  1. Choosing Your First Programming Language:

    Both Python and C++ are widely used in Robotics. While Python is easier to learn, I recommend starting with C++since it’s the base for the first microcontroller you will work with initially (Arduino). Once you are comfortable with C++, picking up Python will be a breeze. Start by commenting your code so you can go back to it and understand what logic you are following. For your programming platform, use Visual Studio Code — it’s free and user-friendly. Download here.

  2. Get Hands-On:

    Watching videos alone won’t cut it. You need to get practical experience! Start with small projects that you can complete in a week. Think of something simple but fun. It’s important to see results quickly to stay motivated. Here are some simple tutorials to follow to start:

  3. Learning Resources

    • YouTube Tutorials: Follow tutorials on the specific topics you’re interested in. You’ll encounter issues along the way, and that’s a good thing! It’s part of the learning process.

    • GitHub: Explore robotics projects you can replicate for yourself.

    • Stack Overflow: Use it as a resource to solve problems and learn from others.

  4. Start with Hardware

    Buy an Arduino kit to get started with basic electronics. Kits range from £15 to $70 and usually include a microcontroller, breadboard, electronic cables, sensors, and servo motors. Here are some examples:

  5. Embrace Problem Solving

    Debugging is a key skill in robotics. Your code won’t always work the first time, and that’s okay. Learn to enjoy the challenge and develop debugging processes. For example, start by adding print commands throughout your code to see where it stops or fails.

  6. Stay Inspired

    Watch videos about the latest in robotics to see where the field is heading. Understand Robotics terms like “Lidar, PID Control, Kinematics”. Read about cutting-edge projects and advancements to keep your passion alive.

  7. Keep Going!

    The first few months are the toughest. Don’t give up! I almost quit my robotics studies because I found coding so difficult. But I kept going and found it much more enjoyable after incorporating hardware into coding, and fnishing projects was so rewarding.

 

​

Intermediate Tips
  1. Learn Electronics

    Get familiar with sensors, motors, and servos. Understanding how motors work and troubleshooting common issues with them. Learn about the differences between brushless, servo, and stepper motors. Invest in basic tools like a multimeter for testing.

  2. Linux and ROS 2 Setup

    Set up Linux, Ubuntu, and ROS2 on your laptop. You have three main options: installing Linux With Ubuntu directly on your laptop, getting an external drive to install Linux and Ubuntu, or setting up a virtual machine for Ubuntu only.

    • Installing Linux with Ubuntu on your computer: This provides better performance and direct access to hardware but requires partitioning your drive, which can be complex for beginners.

    • Setting up a Virtual Machine: This is easier to set up and allows you to run Ubuntu alongside your existing OS, but it may have slower performance and limited access to hardware resources. In addition, you won’t have access to Linux which is a skill required for a lot of jobs.

    • Installing Linux with Ubuntu on an external hardware: This is likely the best option but requires you to buy an external hardware. With this, you don’t have to make changes to your computer and get the best performance for your robotics environment.

    This environment is crucial for robotics work. You can do this by creating a partition on your drive, using a virtual machine, or getting an external drive. Here are some guides:

  3. Master ROS 2

    Learn ROS 2 — Robot Operating System. ROS 2 is the backbone of robotics and can be used on most robot. It’s a structure and a set of software libraries and tools that help you build robot applications. ROS 2 includes hardware abstraction, device drivers, libraries, simulation, communication methods, package management and so much more! Just learning it can take a while. You can start here or use ROS Ignite Academy where you get access to courses and robots remotely (or watch their Youtube videos). Focus on understanding and knowing how to implement ROS 2 nodes, services, actions, topics, and transforms.​

  4. Develop a ROS 2 project

    Here are a couples projects you can develop:

    • Navigation: This tutorial will guide you through setting up and using ROS Navigation Stack, which is essential for enabling robots to navigate autonomously.

    • Manipulation: Develop a project using a robotic arm and execute pick-and-place tasks.

    • Computer vision: This covers the basics of computer vision using OpenCV, including setting up your environment, image processing, and object detection. Try getting your code to recognise you or your favourite mug using your computer’s camera!

  5. Document Your Projects

    Take pictures and write about your projects. Building a portfolio is important and something I wish I had done more of. It helps visualise your work.

  6. Research and Learn

    You can’t know everything. Develop the skill of effective searching / googling. Use forums, research papers, and online projects to expand your knowledge.

  7. Design your first Robot

    Start using Onshape  to create simple CAD (Computer-Aided Design). CAD is a technology used for creating precise drawings and technical illustrations of physical components. You can visualise and iterate on your designs before building them.

​

 

Advanced Tips
  1. Material Knowledge

    Learn about different materials commonly used (plastic, 3D printing, aluminum, carbon fibers) and their uses in robotics. For 3D printing, learn which settings and parameters are performing best.

  2. Library Skills

    Learn how to use and compare different libraries. Ensure they work for your environment (Linux, ROS version, Ubuntu version). For e.g.: should you use A* or Djikstra as your navigation algorithm for your robot to use? What are their pros and cons? In which conditions is one better to use than the other? How much computational space and time do they take to run? Many things you need to consider when you work on a microcontroller which has limited resources compared to a computer.

  3. Advanced Sensors

    Learn about commonly used sensors like 3D sensors and how to implement them in your projects. Start by looking at Lidar and RGBD cameras. These are quite expensive but you can find some under $100 if you can afford to spend the money: LIDAR-Lite v4 LED Rangefinder (10m) or TFmini Time-of-Flight Lidar Module.

  4. Build a Moving Robot

    If you have the budget, try building a robot that can move. Start with designing for e.g. a robotic arm from scratch, using CAD for design, MoveIt ROS 2 for controls, and develop some scripts to automate tasks. If you are lucky and have access to a 3D printer, that’s great! Else, you can use other material you have at hand.

  5. Learn Design Principles

    Understanding what makes a good or bad design is crucial in robotics. A good design is reliable, efficient, low to maintain, and easy to use. Start by studying existing robots and their designs. One tip: Keep your designs simple and modular to make troubleshooting and upgrades easier.

  6. Industry-Specific Knowledge

    If you’re interested in a specific industry, learn about the types of problems robotics can solve in that field and what challenges is robotics facing in this industry. For example, if you’re into space robotics, read up on In-Orbit Servicing and Manufacturing. 

  7. Leverage AI Tools

    Use ChatGPT as an assistant to help with coding, but remember, you need a solid understanding of coding to make the most of AI tools.

  8. Other Skills to Explore

    • Learn about how to use GitHub properly. This is useful when working on the same program with a team and code version managing.

    • Learn about Docker for containerized applications, which is useful for deploying and managing software in robotics projects.

    • NVIDIA ISAAC Simulation is another valuable tool for testing and developing robotics applications in a simulated environment.

    • Get familiar working with RTOS (Real-Time Operating Systems) for handling real-time tasks in robotics.

    • Learn about mechanical assembly techniques such as soldering. This is useful for building robust and reliable robotic systems, as well as for maintaining and repairing existing systems.

​

​

You must have realised by now — Robotics is very vast and includes a wide range of things to learn! On top of it, technology grows rapidly and you have to keep on top to adapt to new technologies and libraries. For e.g., ROS 1 is no longer the norm and new robots, libraries, and projects are being developed in ROS 2. Which is a different communication between systems to learn. While learning robotics, you might find that you have a preference for mechanical, or machine vision, or assembly. This can help you niche down what future skills you need to develop to get a job in that area.

​

I would love to hear your feedback on this guide and what you would want to hear next! Please let me know HERE

​

Remember to enjoy the process. Robotics is all about creativity and innovation!

bottom of page