Arduino is officially an open source electronic prototyping system, which is sold with the slogan “So easy, my granny can use it”. It is not quite as simple as that but it is pretty easy to buy a successful project and implement it quickly. So if your idea has already been done, Arduino makes it straightforward to carry it out.
Arduino has two parts, hardware and software that go to make up the system. It was developed in Italy, mainly by a university, with the aim of getting more people interested in electronics. It was called Arduino to make it easy to copyright, not for some deeper reason. Both the hardware and software are available under an open source license so that any one can copy it and sell the results. If you want to use the name Arduino though, you have to buy a license. Most Arduino hardware is now made by third parties plus there are loads of knock-off copies coming from China.
Arduino hardware consists of a simple baseboard, which contains a microcontroller and its support circuitry with two rows of output pins, the Arduino Uno is shown in the picture.
There are newer more complicated boards but this was the starting point. The microcontroller on here is an AVR ATmega328P but this is not made clear as they prefer to hide the workings from you. Into this base board, separate modules called shields are fitted. Hundreds of different shields have been developed, covering everything from robots to dope plant monitoring. If someone has done what you need, then just buy it, plug it in and it is virtually job done.
The software is also open source and freely available for download for Windows, MAC or Linux. It runs a simplified control language called Wiring. This makes it easy to write scripts to carry out different tasks on the microcontroller. These scripts are called Sketches by Arduino and most shields come with a sketch to run on them. The Arduino software also lets you download the sketch to the Uno (or other hardware) provided the microcontroller on the board has a downloader in it.
Advantages of Arduino
- Low cost start
- No programmer need to download to hardware
- Many sketches and shields available
- No real knowledge or skill needed
Disadvantages of Arduino
- You get no understanding of the AVR microcontroller
- Hard to modify sketches and shields for your own project
- You do not get experience of underlying principles
- No learning about professional development tools
- No debugging capability
Arduino is excellent if you have a specific aim in mind, such as a project to check the health of your plants or monitor your home brew kit. It is also pretty good for putting together a basic robot controller. However, you will not learn anything about microcontrollers and how to write code for them in better languages such as C. You will also miss out on the basics of programming like logic and program planning.
Alternatives to Arduino
Without trying to be too partisan, Kanda have been making trainers for AVR and PIC microcontrollers for years and they include microcontroller courses for beginners. If you want a quick result, go for Arduino, if you want to learn microcontrollers, please look at our training kits.