I think the best way to introduce such a vast field is to take as an example, an automated soap dispenser, and then break down how its system works in order to get into key points.
Therefore, there are 2 main questions we can ask here: How does the automated soap dispenser detect our hands? How does it dispense soap? To continue, we are going to address the automated soap dispenser as the system, and we are going to discover its parts.
The answer for the first question is that the soap dispenser uses an IR (Infra-red) sensor to detect objects or changes in the environment, it is the input part of the system. The answer for the second question however is that it uses a pump or a motor to push the soap out of the container, in this case, the pump/motor plays the actuator part of the system, which is considered as an output.
Great! Now we have discovered that a robotic system contains inputs (sensors) and outputs (actuators), but a new question comes in: What is the link between the input and the output? The output needs to get a signal from the input, and here a processing part comes in, which can be done by a microcontroller or a microprocessor, usually we call them the brain of the system.
Now that we understand the basic structure of a robotic system—input, processing, and output—we can dive deeper into what defines robotics, the rules that guide it, and the technologies it relies on.
What is Robotics?
Robotics is a branch of STEM, particularly within mechatronics engineering. It acts as an interface between computer science, electronics, mechanical systems, control engineering, and more… Its aim is to solve and automated human tasks and activities as much as possible by designing, constructing and operating robots. We can say that Robotics = Computer Science + Engineering.
As we discussed earlier, a robot is composed of 3 main parts: Sensors -> Brain -> Actuators. Sensor data is sent to the brain of the robot—typically a microcontroller—which we, as programmers, configure using conditions, loops, and libraries. The microcontroller then sends signals to actuators to perform the desired actions.

Bonus : List of sensors – Wikipedia.
Given the freedom to act independently, robots must be guided by ethical rules. Isaac Asimov, who introduced the term robotics in a 1940s short story, proposed three laws to guide robots. These laws are:
- Robots must not harm humans.
- Robots must obey humans, unless it conflicts with the first law.
- Robots must protect themselves, as long as it doesn’t violate the first two laws.
How can you start learning Robotics?

The hardest step is always the first, therefore I am going to give you a general roadmap where you can start your journey.
1. Essential Tools to Get Started
One of the challenges with robotics is that it can be more expensive to start compared to fields like computer science, where all you need is a computer and internet access. In robotics, you’ll need extra components to begin building, such as an embedded system (a microcontroller or microprocessor), electronics tools (like multimeters, oscilloscopes, power supplies…), and sometimes even a 3D printer for more intermediate or advanced projects.
My advice—especially if your wallet is as empty as most of us in the robotics world—is to join a robotics, electronics, or mechatronics club at your school or in your city. These clubs usually provide access to the materials and components you’ll need, without having to buy everything yourself.
2. Learn how to use Arduino Uno
You’ve probably heard of it—it’s one of the most popular boards out there. But if not, the Arduino Uno is a beginner-friendly embedded system based on the ATmega328P microcontroller. It allows you to:
- Read and write digital signals (0s and 1s),
- Handle analog input (values from 0 to 1023),
- Use PWM for motor control and dimming LEDs,
- And much more!
So why did I recommend Arduino Uno over boards like Raspberry Pi or ESP32?
Simply because it’s the most beginner-friendly option, thanks to massive community support, tons of tutorials and documentation and a wide compatibility with sensors and modules.
That doesn’t mean you won’t use other boards later—Raspberry Pi and ESP32 are fantastic too—but Arduino Uno is the perfect place to start.
As for programming, it might not seem essential at the beginner level, since you can find many ready-to-use codes on websites like GitHub and Instructables. However, as you progress to intermediate and advanced projects, having solid coding skills using C/C++ languages becomes important.
3. Learn about CAD (Computer Aided Design)
This one is important! Computer-Aided Design (CAD) allows you to model 3D components on your computer using software like SolidWorks or Catia V5, two of the most popular options. These tools are particularly valuable for designing components for your projects, prototyping, and preparing files for 3D printing. Additionally, CAD software enables you to simulate assemblies, which helps identify potential issues like collisions, constraints, or exceeded joint limits before physical production.
Although CAD may initially seem complex, focusing primarily on the concepts of Part Design and Assembly Design is sufficient for most practical uses.
4. Learn about Control Systems (Optional For Now)
This is a good topic to know. When our hardware or firmware lacks precision, we often use mathematical algorithms to correct measurement errors—and that’s where control systems come into play.
A control system is a system that manages and regulates the behavior of other systems or devices using control loops, often through feedback, to achieve desired outcomes automatically.

Most control theory can feel complex at first, but I can recommend learning PID controller if you want to get into control systems, since it is widely used in many projects such as auto balancing robots and advanced line followers.
Overall, robotics covers a lot—it requires you to be a generalist, but also efficient in everything you learn. For me, that’s not an obstacle; it’s actually a motivation.
What made me fall in love with robotics, even more than computer science, is the teamwork it encourages. Whether it’s for a hackathon or a hands-on project, there’s so much to explore that you naturally form multidisciplinary teams. In contrast, I often felt that computer science pushed me to work alone.
Happy learning!
1 comment