Arduino: Micro-controlling your mundane tasks for you
Recently, I was watching DIY or Do-It-Yourself video on YouTube about controlling the lights at home. The project involves something called microcontroller. That increased my curiosity and I searched about it. Interestingly there is a whole new field of creative projects in which microcontrollers are used, and not only professionals but individual with some knowledge of electronics, with interest in basic programming can do that. I find out that Arduino microcontrollers are the front runner in this field.
The best part of Arduino is that it is
open source, which means that anyone can use it. Anyone with a project in mind,
which involves some control over electronics or electro-mechanical gadgets or
devices, then be it designer, architect, artists or just an enthusiast, with
the flexibility of Arduino, the project can be taken to next level.
How it all began
The story behind the naming of Arduino
is also very interesting. The microcontroller is named after the bar in Ivrea,
Italy, which in turn is named after the King of Italy, from 1002 to 1014. The
founders used to meet at this bar to discuss about the project. It all started
in 2003 as an idea to make a device which can be used to interact with the
environmental factors and perform tasks. The vision was that it should be
simple and affordable (BASIC microcontroller cost $100) for starters but
flexible and powerful at the same time to implement the project. The founders
of project, Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, and
David Mellis, reinvent and renamed the project as Arduino.
what is Arduino
In simple words Arduino is like a
computer but with limited functionality and is much simpler in architecture but
the working is same as to read and control the electronic components attached to
it. Arduino helps in building electronics projects. For. e.g. switch on the fan
automatically if temperature rise above 28 degrees Celsius. Water the plants if
the humidity level reach below certain level Or, switch on the light if the
ambient light is decreased to certain lumen etc. The possibilities are endless
for a day to day life. It’s like you tell microcontroller what you will be
sending as input and what output will be generated by it, both physical and
digital.
Imagine how much simpler we can make
our working, if we know how to use this device. The Arduino's products are
distributed as open-source hardware and software, licensed under the GNU,
Lesser General Public License (LGPL) or the GNU General Public License (GPL).
Anyone can openly use, modify and reuse the associated hardware and software
for their projects. The hardware blueprints are distributed under a Creative
Commons Attribution Share-Alike 2.5 license and are available on the Arduino
website.
High Level Design
Arduino has two parts to it the first
is physical programmable circuit board or microcontroller and second is a
software which is used to program this microcontroller. The software or IDE
(Integrated Development Environment) runs on the computer on which we write
program or computer code which then is transferred to microcontroller through
USB to perform programmed logic on defined conditions. The programming language
which is used to create program for microcontroller is simplified version of
c++. The IDE is cross-platform application and itself it is written in Java/c/c++.
It provides editing features like cut, copy, paste, brace matching etc. and
also, compilation, upload of program and much more.
How does it work
The microcontroller comes preprogrammed
with boot loader. Which in simple language means that it comes in ready to use
state. User can directly upload the program into the on-chip flash memory
through USB cable. The bootloader is the program which executes as soon as the
microcontroller is turned on.
Common Components
Arduino is technically an AVR 8bit
microcontroller. AVR is a group of microcontrollers developed by Atmel in 1996.
It means that this microcontroller can understand the instruction in simple
8bit instruction set. Based on the requirements there are many components which
can be attached to microcontrollers for desired functionalities. The components
include wide variety of inputs, outputs, resistors, wires and breadboards, sensors,
actuators, plugin boards for additional functionality, lights etc.
Components can be categorized but not
limited to -
Microcontroller - most of
them comes with internal clock of 8mhz, bootloader and circuit.
Breadboard is a board with
grid of holes to plug in the components and wires to complete the circuit without
the need of soldering. This is best match for the prototyping projects where
soldering can cause permanent fixing of the component.
Sensors are electronic devices that can measure light, temperature,
degree of flex, pressure, proximity, acceleration, carbon monoxide,
radioactivity, humidity, barometric pressure and other wide variety of factors.
Shields are ready to use expansions of Arduino on separate circuit
boards which can be connected to the Arduino to provide additional capabilities
from controlling hardware, online connectivity, networking, display control,
and much more.
Power management - for most Arduinos operate on 5v to power the
microcontroller and anything connected to it, although there are some 3.3volt
versions also.
Libraries- open source code that is created be other users to make
things easier for starters and novice. They can be imported in IDE and used to
avoid low level programming to control components and works as bridge to make
program code more human readable format.
Programs
Programming the board is simple but
with some learning curve. First, we have
to setup the environment and tell the IDE that which Arduino we are going to
program in Tools menu. There are two versions of IDE online and offline. The
online version is always the latest, the projects are saved online on cloud
which means that they are available anywhere with internet connection and no
installation is required. While offline version is more reliable where internet
connectivity is limited. There are many free libraries created by third party users
which can be used to augment the projects. A program written with the IDE for
Arduino is called a sketch with file extension .ino. or .pde for earlier
version.
Products
It is advised that if you are new to microcontrollers,
go for the UNO board. It is the simplest and most affordable to make prototype
and commit mistakes to learn and grow.
At the time of writing the current version of UNO is R3. And the IDE
software is readily available on the Arduino website free of cost due to its Open
Source nature. Then there are others like Arduino Mega which is more featureful
version than UNO. Or, Arduino Leonardo which is microcontroller with built in
USB. The whole list is available on Arduino website.
Where to get it
With increasing popularity of DIY
projects and awareness of microcontrollers. Arduino is now mostly available on
online store such as amazon etc. It is also available on RadioShack. The price
of Arduino basic starter kit known as UNO is most affordable with around INR350
in India. The cost of project will increase with additional sensors, wires,
breadboards, motors or any additional components which are sold separately. There
are many distributors who are selling them in local areas for school projects,
office buildings etc.
Path forward
It is estimated by Adafruit Industries,
a New York City supplier of Arduino boards, parts, and assemblies, that by 2013
more than 700,000 were sold out. It can only be guessed that this figure would
have increased by many folds. With new applications like IoT applications,
wearable, 3D printing, and embedded environments, Arduino board started
evolving to address the needs and challenges of these new applications.
My Opinion
It’s not that Arduino is the only
available microcontroller out their platforms such as Parallax Basic Stamp,
Netmedia's BX-24, Phidgets, MIT's Handyboard, and many others offer similar
functionality. The difference is the ease of use, learning curve, flexibility
and wide array of shields and community around Arduino bring it to its
maturity. It is low cost, runs on windows, mac, Linux, simple, open source, non-copyrighted
hardware
I am seriously thinking some of the
projects to give it a try like 1. Auto proximity detection to turn light, fan
on and off, 2. Water tank auto filling. I will let you AZs know once I
build it.
More On
Arduino -
Repository -
https://github.com/arduino/Arduino
Written in -
Java, C, C++
Operating
system -Windows, macOS, Linux
Platform -
IA-32, x86-64, ARM
Type -
Integrated development environment
License - LGPL
or GPL license
Website - www
.arduino .cc
My Other Links
----------------------------------------------------------------------------
Articles List
: https://azblogs4u.blogspot.in/p/articles-list.html
Youtube
Channel : Learnitium - https://www.youtube.com/channel/UChlqyi2M5ywy85FSHI0i-tg
----------------------------------------------------------------------------
Credits -
References -
The Absolute
Beginner's Guide to Arduino | Forefront.io:
http://forefront.io/a/beginners-guide-to-arduino/
Arduino -
Home: https://www.arduino.cc/
Arduino -
Wikipedia: https://en.wikipedia.org/wiki/Arduino
What is an
Arduino? - learn.sparkfun.com:
https://learn.sparkfun.com/tutorials/what-is-an-arduino
Arduino -
Introduction: https://www.arduino.cc/en/Guide/Introduction
How does the
arduino work? What does each component do? How ...:
https://www.quora.com/How-does-the-arduino-work-What-does-each-component-do-How-does-it-all-come-together
Images -
Comments
Post a Comment