Arduino is an open source microcontroller and programmable software based on the ATMega chip. Although Arduino is designed as a prototyping platform, it can be used in various electronic projects, whether temporary or embedded. The Arduino board can be programmed using the Arduino software. The syntax for this is similar to C/C++ and Java. It is designed to be simple and easy to use, and can be operated by anyone from beginner to expert.
Since Arduino is an open source platform, you can get the source code and schematics for it. This means you can go as deep as you want, even creating your own Arduino boards. There is also a huge community behind it, and you can find many tutorials and projects from all over the world online.
What can I do with an Arduino?
Almost anything you want! It has been used in so many different ways that the options are virtually limitless. Past projects have included robots, art installations, in-car computers, MIDI controllers, cocktail shakers, human-computer interfaces, Facebook “like” counters, advertising displays, clocks, musical instruments, custom mouse and keyboard, home automation. .. list goes on and on!
The main features of an Arduino board are its ability to read sensor data, send and receive digital signals, and can be connected via serial to your computer. It can control many things from LEDs and LCDs to motors and relays. It can also read values from sensors such as potentiometers, light dependent resistors (LDRs), and piezos.
The digital pins on an Arduino allow you to read or write 5v values. You can use a pin to light an LED (with a resistor). You can send a signal to a relay to operate higher voltage appliances like televisions and lights around the house. You can send messages to the motors to turn them on and off. You can check if a button has been pressed. It can even send and receive serial data, parallel data, and digital pulse width modulation. Basically anything that can be controlled via a little current can be used.
The analog pins allow you to read an incoming voltage between 0v and 5v. This will be how you read from the sensors. There are a multitude of sensors available, from simple handy pressure sensors and rotary potentiometers, to environmental sensors like pressure, gas, temperature, and even alcohol. If you have, for example, a slider set to exactly the middle of its range, it should output a voltage of 2.5v. The Arduino can read this and use the value to control something else.
You don’t have to limit yourself to controlling electronic circuits. It can send data to the computer to control software such as Processing and Max/MSP. You can send the data via USB with most models. Some models have Bluetooth and Ethernet ports, and with additional shields (such as an additional unit) you can communicate via WiFi and other protocols.
What can’t I do with one?
The Arduino doesn’t have a lot of processing power, so almost any major intensive task is out of the question. You will not be able to process, record, or send video or audio (although you can send graphics to TFT or LCD screens). It is not like a computer. You will not be able to connect your webcam or keyboard to it. There is no operating system with a GUI (like a Raspberry Pi). It is a completely different beast.
Can anyone use one?
That’s the beauty of it. Even if you have no knowledge or experience with electronics or programming, you can get a simple project up and running in an hour or two. Making an LED turn on and off in a pattern is as simple as adding an LED and resistor to a breadboard, connecting a few wires, and writing a few lines of code. Arduinos are used in classrooms around the world as an introduction to programming and electronics.