Arduino is a development board based on Atmel Microcontroller introduced in 2005. It is intended for beginners in the field of electronics. This can take inputs from different switches, sensors and can given output to surroundings through light, sound, motion etc. This is the most convenient method for computer based students to develop electronic projects with basic knowledge in electronics. It is an open source system which is flexible and is easy to use. Arduino has its own programming language which is based on Wiring and has a very simple development environment based on Processing. Using Arduino we can develop stand-alone, network based projects or they can communicate with software running on your PC.
Arduino is usually based on an 8-bit Atmel AVR microcontroller or a 32-bit Atmel ARM. The main factors which makes Arduino differ from other microcontroller platforms are it is open source, inexpensive, it is cross platform that is it will run on operating systems like Windows, Linux etc. It has simple and clear programming environment that is the programming environment is flexible and easy to use for the beginners. Small Robots, Digital Thermometer Motion Detectors and LED Cube are the common projects for beginners.
The microcontroller in Arduino is programmed using Arduino Programming Language and Arduino Development Environment. Arduino Programming Language is a simplified form of C or C++ which include a lot of library functions which enable as to program it without much hardware knowledge. Arduino IDE include code editor which have a lot of features such as syntax highlighting, brace matching, automatic indentation etc. It is also capable of compiling and uploading programs to the board with a single click. User need to define only two functions setup() and loop(). Where setup() is the preparation and loop() is the operation. Sketch is the term used to indicate program or code written for Arduino.
Arduino products differ in various parameters like number of inputs and outputs (how many sensors, LEDs, and buttons you can use on a single board), speed, operating voltage, and form factor. Some of the Arduino products are Arduino Uno, Arduino Due, Yun, Leonardo, Tre, Micro etc. You can built these board by hand or can purchase pre-assembled ones. You can download the software here, free of cost and hardware design files are available under open source license.
Some Common Arduino Boards
Arduino Uno
Arduino Uno is the most common version among Arduino boards. It is based on ATmega328. The factor which make Arduino Uno differ from others is that it does not use USB-to-serial driver chip. Arduino Uno has an Atmega8U2 which is programmed as USB-to-serial converter. It has a USB interface, 6 analog input pins and 14 digital input output pins which allows the user to extend connection with other boards.
Arduino Mega 2560
Arduino Mega 2560 is also an important Arduino board. It is based on ATmega2560. The factor which makes it differ from others is that it have more digital input output pins (54) while Uno has only 14. It also does not uses USB-to serial converter, instead it features the ATmega16U2. It is an updated version of Arduino Mega (based on ATmega1280).