How to Make a Robot: Electronics Basics
By Abhinav Gandhi
This Robotics Guide will be dealing with the very basics of electronics required for developing Robotics systems. I have divided the post into sections, each section dealing with a different aspect of electronics. Delve deeper into the into each of these sections in DIY Hacking’s DIY Robotics page.
Robotics Guide on Electronic Systems
The electronics under the hood of any robot can be divided into a number of subcategories:
- Power Systems
- Microcontrollers and Processors
- Useful Software Tools
Some of these subcategories are repetitive in the sense that they can also be grouped under domains apart from electronics. For example actuators, they can also be grouped under the mechanical domain. For such subcategories we will look at the different properties under their respective domains.
Just like all humans robots need energy to function. Humans survive on air, food, water and WiFi whereas robots survive on electricity. So the number one system in this Robotics guide are Power Systems. Normally, robots have rechargeable batteries which makes them mobile and hence more useful. It goes without saying that the larger the battery (the greater the capacity of the battery), the longer the robot can operate. But we cannot have an infinitely large battery on a small robot! This is a tradeoff that power systems engineers try to figure out. Ideally the battery should be just large enough for the robot to be able to run for as long as you want it to in the worst case scenario but should be small enough such that it can fit on the robot and does not add too much extra weight on board. Now check out this robotics guide video:
Batteries are important and fun to play with. But what good are batteries without the rest of the onboard electronics. Just like the human sensory system which consists of eyes, nose, ears, taste buds and skin robots have a sensory system too. It goes without saying that the system is not as developed as ours (assuming that you are a human too!). In most cases but there have been some major advancements recently.
A typical robot’s sensory system would consist of a number of analog and digital sensors such as a camera for vision, microphones for perceiving sound, Ultrasonic or IR sensors for perceiving distance, (this is similar to echolocation in bats and whales), flex/ tactile sensors for perceiving physical feelings. You can check out some interesting sensors on SparkFun Electronics and Adafruit and check out their interesting tutorials and robotics guide as well. Try ordering some sensors for yourself online from RoboRium or Amazon and play around with them to find out more.
An actuator is a device which helps to induce motion in the robot. Actuators can be electronic, pneumatic or hydraulic. For smaller robots we generally use electronic actuators as they are easier to deal with and are widely available and inexpensive. Some common electronic actuators are:
This is a very broad classification of electronic actuators. They may have a number of subcategories depending upon various electronic and mechanical properties. The electronic attributes for an actuator are the voltage and the current that it requires to function. The mechanical attributes of actuators such as speed and torque are dependent on the electronic attributes. For now, lets just think about an actuator as a black-box which converts electrical energy to mechanical energy i.e: outputs some kind of rotational/ linear motion when some electrical energy is provided as input.
Microcontrollers and Processors
Next in this Robotics guide are Microcontrollers/processors. One of the most important parts of a robot is the brain! Just like a human brain, the robot’s brain is responsible for controlling all the robots actions. It consists of microcontrollers and microprocessors.
Microcontrollers are essentially small chips which are made up of hundreds of thousands of transistors, they have a set of programmable digital i/o pins called the GPIO(General Purpose Input/Output) pins, some flash memory, some RAM and a small processor core. A microcontroller would generally be used for more repetitive tasks. They can be programmed to perform a certain set of functions and they will carry out these functions one after the other repetitively. A good example of a microcontroller would be an ATmega which can often be seen on the Arduino compatible development boards. To learn more visit their beginner friendly Arduino tutorials.
Microprocessors however are slightly more funky in the sense that they don’t have onboard memory and you need to interface a separate memory with them, which gives them more room inside, hence they have more processing power. A good example of a microprocessor would be a Raspberry Pi. They are also more expensive than microcontrollers. You can think of your computer’s CPU to be a microprocessor, which would require a separate hard disk and RAM for memory storage. Microprocessors are much more powerful than microcontrollers and are generally used for advanced tasks such as image processing, artificial intelligence, mapping and path planning. The most common programming language for working with a Raspberry Pi is Python. There are a number of quality classes offered by the Univeristy of Michigan on Coursera for beginners.
Useful Software Tools
- Fritzing – It is a free software which provides you the tools to prototype circuits on a breadboard in software. It’s great for noobs as well as pros. Personally, I feel it’s the easiest and best way to represent/ document simple prototypes.
- Circuits.io – An online CAD tool for electronics engineers, designed by Autodesk. I haven’t used it much yet so no personal reviews, but I must say that I know a lot of people who do use it on a regular basis.
- EagleCAD – Autodesk’s CAD tool for hardcore electronics engineers. I have used it for creating a number of PCB designs and it is a widely accepted tool in the professional community.
- OrCAD – This is a CAD tool for electronics engineers, developed by Cadence. It is taught in most universities and is popular in the industry as well. The design is simple to use. It can also be used with PSPICE, to simulate circuits
- Circuit Wizard – An extremely intuitive and easy to use software for simulating circuits. However it is not a free software, you can only get the trial or student edition for free.
This Robotics guide has been intended to allow beginners to get started on DIY Robotics easily. Stay tuned to my page to read more. You can also connect with me on our online Slack channel to get more guidance and check out DIY Hackings Robotics learning path to become an expert.