You’ve probably come across the terms “physical computing,” “microcontroller” or even “Arduino” before. The purpose of this series of articles will be to give our users a general introduction to these concepts: what they are, and what they can be used for. In this first part, we’ll be exploring these concepts by taking a look at the hardware of the Arduino Uno, using the diagram below. We won’t be getting into every chip and circuit on the Uno; this is a basic overview for the beginner. Our goal is to give you a basic understanding of what the Arduino is and what you can do with it.
- The heart of the Arduino is the microcontroller. All the other components, bells and whistles are designed around interfacing with, feeding information into, and extracting information from the microcontroller. It is, in simplest terms, the “computer” in the device. By using various sensors to input data a user can produce a nearly infinite number of effects. A simple example is, by attaching a photosensor to the Arduino that measures light, the Arduino can be used to turn on a light when it senses that the ambient light around it has dropped below a certain level. A more complex light-based example would be using the Arduino to turn your living room lights off when you start your DVD player. It’s from examples like these that we get the term “physical computing;” the Arduino can measure phenomena in the real world and react to it in real, physical ways that you can see, hear, and experience through various output devices.
But how do we input data, and how do we transfer the data that the microcontroller processes into other devices?
- The digital pin headers, at the top right side of the diagram, are numbered from 0-13. These are what give you access to the microcontroller chip. They can read input from sensors or other devices, and can also act as outputs. The six digital pins marked with the tilde symbol (~) can apply pulse width modulation, which is just a fancy way of saying that they can adjust the amount of voltage they output from 0-5 volts. Resisters, LEDs or other components can be inserted into the pin headers, which allows them to interact with the chip.
The headers marked 0 and 1 are special cases that deserve attention. You’ll notice that, next to their numbers, they’re marked “RX” and “TX,” respectively. RX stands for “receive,” whereas TX stands for “transmit.” These are the pins that are used to communicate with your computer or with other devices.
- The TX and RX LED lights are what allow you to know when your Arduino is transmitting or receiving information. These are excellent tools for troubleshooting your programs. If the program your Uno is running should be sending information to another device, but the TX LED isn’t blinking, you know something is wrong. Similarly, if you’re trying to send information to your Uno but the RX LED isn’t blinking, something is wrong.
- Your analog header pins, marked A0 through A5, are analog to digital converters. That means that they can take an analog signal, for example a volume knob, and convert the input into a digital signal that the Arduino can understand. These analog headers can also be used exactly like the digital pins (2) we talked about earlier.
- The power pin headers can do a few different things, so let’s take a look at them one by one. The slots marked 3.3V and 5V are, when the Arduino is hooked up to a power supply (through the power jack on the left side of the diagram), able to transmit 3.3 and 5 volts, respectively. The slot marked “reset” will, when 0 volts is applied to the pin, reset the program. What that means is discussed below in section 6, the reset button, which works exactly the same way when pressed. The slots marked GND give you access to the lowest voltage that the Arduino is capable of putting out. The other slots will be used most often by more advanced users, so we’ll get into them in a subsequent article.
- The reset button, as the name implies, resets the program that your Arduino is running. When you press it, the program will instantly stop and start running from the very beginning. This can allow you to interrupt a program that may not be acting the way you want it to, and by replaying it a few times you can often figure out where the error lies.
- The power LED will let you know when your Arduino is powered on and running.
- The USB jack is what you’ll be using to hook your Arduino up to your computer via a USB cable.
There are obviously several other components to the Arduino, but what we just covered is what you need to know when you’re just starting out. This is a lot of information to take in, so don’t be put off if you feel a little confused at first. As we get into programming and actually using the Arduino, the function and importance of the different parts will become clearer.
In our next installment we’ll talk about downloading and installing the Arduino IDE, and then we’ll get working on our first project! If you want to get your hands dirty and start playing around with the Arduino Uno before then, you’ll find a link below to take you to the Karlsson Robotics page where you can buy your very own, as well as every component you could ever want or need (and tons of other cool stuff, too). See you next time!
Click here to get your very own Arduino Uno!