Professional Documents
Culture Documents
Chapter 1
ARDUINO
ARDUINO-Infinity exist
Anyone can buy this device through online auction site or search engine.Since the Arduino is
an open-source hardware designs and ccreate their own clones of the Arduino and sell them,so the
market for the boards is competitive.An official Arduino costs about $30,and a clone often less
than $20.
The name Arduino is reserved by the original makers. However, clone Arduino designs often
have the letters duino on the end of their name, for example, Freeduino or DFRduino. The
software for programming your Arduino is easy to use and also freely available for Windows,
Mac, and LINUX computers at no cost.
1.1.1 Microcontroller
Microcontroller can be described as a computer embedded on a rather small circuit
board.To describe the function of a microcontroller more precisely,it is a single chip that can
perform various calculations and tasks,and send/receive signals from other devices via the
available pins. Precisely what tasks and
communication with the world it does, is what is governed by what instructions we give to
the Microcontroller. It is this job of telling the chip what to do, is what we refer to as
programming on it.
However, the uC by itself, cannot accomplish much; it needs several external inputs:
power, for one; a steady clock signal, for another. Also, the job of programming it has to be
accomplished by an external circuit. So typically, a uC is used along with a circuit which
provides these things to it; this combination is called a microcontroller board. The Arduino Uno
that you have recieved, is one such microcontroller board. The actual microcontroller at its heart
is the chip called Atmega328. The advantages that Arduino offers over other microcontroller
boards are largely in terms of reliability of the circuit hardware as well as the ease of
programming and using it.
ARDUINO-Infinity exist
ARDUINO-Infinity exist
Cheap (about 20 euros, the cost of going out for pizza in Europe)
More powerful than a BASIC stamp
Something you could build/fix yourself
Units Sold
2005
200
2006
10 000
2010
120 000
2011
300 000
1.2.3 Competitors
Before Arduino, the largest players in the design/hobbyist market segment were the PIC
microcontroller family (made by Microchip) and the BASIC Stamp (made by Parallax). Since
the introduction of the Arduino, other large companies have tried to enter the hobbyist market,
including Texas Instruments , and even Microsoft . However, the open-sourced tools
of the Arduino and the size of its community are large barriers for new platforms to overcome.
1.2.4
Community
ARDUINO-Infinity exist
As the project is aimed at students and hobbyists who may not have any formal electronics
background, there are many excellent guides online covering everything from making a light
blink to creating a laser harp. The official forum has almost 60 000 registered users, and along
with helping users with their projects, is extremely active in developing new libraries to extend
the functionality of the Arduino . The open-source share and share alike sentiment is very strong,
and the vast majority of users freely publish the code to their projects.
1.3 PHYSICAL COMPUTING
Physical Computing is an approach to learn how humans communicate through computers
that starts by considering how humans express themselves physically.
Chapter 2
PLATFORM
2.1 HARDWARE
2.1.1 ARDUINO Board Layout
ARDUINO-Infinity exist
2.1.2.1 ATmega8(Microcontroller)
16 MHz
8 Kbyte Flash RAM(1K taken by the boot loader)
1 Kbyte RAM(eg.for auto/local variables and stack)
14 digital Input/Output Ports
Figure 5 ATmega8
ARDUINO-Infinity exist
AC)
should be between 9V and 12V DC
must be rated for a minimum of 250mA current
output, although you will likely want something
more like 500mA or 1A output, as it gives you the
Current rating: Since you'll probably be connecting other things to the Arduino (LEDs, LCDs,
servos) you should get an adapter that can supply at least 500mA, or even 1000 mA (1 ampre).
That way you can be sure you have enough juice to make each component of the circuit function
reliably.
The Arduino's on-board regulator can actually handle up to 20V or more, so you can actually use
an adapter that puts out 20V DC. The reasons you don't want to do that are twofold: you'll lose
most of that voltage in heat, which is terribly inefficient. Secondly, the nice 9V pin on the
Arduino board will actually be putting out 20V or so, which could lead to potential disaster when
7
ARDUINO-Infinity exist
ARDUINO-Infinity exist
Note: around
March
1st,
2009,
the
Duemilanove
started
to
ship
with
of
theATmega168.
4. Arduino Fio:
An Arduino intended for use as a wireless node.
Has a header for an XBee radio, a connector for
a LiPobattery, and a battery chargingcircuit.
5. LilyPad Arduino:
A stripped-down,
circular Arduino
board
6. Arduino Diecimila:
The main change in the Arduino Diecimila is that
it can be reset from the computer, without the
need to physically press the reset button on the
board. The Diecimila uses a low dropout voltage
regulator which lowers the board's power
consumption when powered by an external
9
ARDUINO-Infinity exist
8. Arduino NG Rev.C
10
ARDUINO-Infinity exist
9. Arduino Extreme
The Arduino Extreme uses many more surface mount components than previous USB
Arduino boards and comes with female pin headers. It also has RX and TX LEDs that
indicate
when data
is
being sent
to
or
from
the board.
10.
Arduino Mini 04
On this version of the Arduino Mini, two of the pins changed. The third pin became reset
(instead of ground) and fourth pin became ground (instead of being unconnected). These
boards are labelled "Mini 04".
Still there are ,Arduino Serial,Arduino Serial v2.0,Arduino Nano 3.0,Arduino Nano
2.x,Serverino(S3V3),Arduino Stamp 02,Mini USB
adapter 03,Mini USB Adapter,Arduino Bluetooth.
11
ARDUINO-Infinity exist
12
ARDUINO-Infinity exist
setup() a function run once at the start of a program that can initialize settings
13
ARDUINO-Infinity exist
Figure 10 A screenshot of the Arduino IDE showing the "Blink"program,a simple biginner
program
A typical first program for a microcontroller simply blinks a LED on and off. In the Arduino
environment, the user might write a program like this:
#define LED_PIN 13
void setup () {
pinMode (LED_PIN, OUTPUT);
}
14
ARDUINO-Infinity exist
void loop () {
digitalWrite (LED_PIN, HIGH);
delay (1000);
milliseconds)
digitalWrite (LED_PIN, LOW);
delay (1000);
}
For the above code to work correctly, the positive side of the LED must be connected to pin 13
and the negative side of the LED must be connected to ground. The above code would not be
seen by a standard C++ compiler as a valid program, so when the user clicks the "Upload to I/O
board" button in the IDE, a copy of the code is written to a temporary file with an extra include
header at the top and a very simple main() function at the bottom, to make it a valid C++
program.
The Arduino IDE uses the GNU toolchain and AVR Libc to compile programs, and
uses avrdude to upload programs to the board.
For educational purposes there is third party graphical development environment called Minibloq
available under a different open source license.
2.3.3.1 language reference
Arduino programs can be divided in three main parts: structure, values (variables and
constants), and functions.
Available datatypes in ARDUINO IDE are
void
boolean
char ( 0 255)
byte - 8 bit data ( 0 255)
15
ARDUINO-Infinity exist
16
ARDUINO-Infinity exist
Logical operators are usually a way to logically combine two expressions and return a TRUE or
FALSE depending on the operator.
There are three logical operators, AND, OR, and NOT.
e.g. ,
Logical AND:
if (x > 0 && x < 5) // true only if both expressions are true
Logical OR:
if (x > 0 || y > 0) // true if either expression is true
Logical NOT:
if (!x > 0) // true only if expression
TRUE/FALSE
These are Boolean constants that define logic levels of the arduino.
FALSE is easily defined as 0 (zero)
TRUE is often defined as 1, but can also be anything else except zero. So in a Boolean sense, -1,
2, and -200 are all also defined as TRUE.
e.g. ,
if (abcd== TRUE);
{
DoSomethingNice;
}
else
{
DoSomethingHorrible;
}
HIGH/LOW
These constants define pin levels as HIGH or LOW and are used when reading or writing to
digital pins.
HIGH is defined as logic level 1, ON, or 5 volts
LOW is logic level 0, OFF, or 0 volts.
17
ARDUINO-Infinity exist
e.g. ,
digitalWrite(13, HIGH);
INPUT/OUTPUT
These constants define pin levels as HIGH or LOW and are used when reading or writing to
digital pins.
HIGH is defined as logic level 1, ON, or 5 volts
LOW is logic level 0, OFF, or 0 volts
e.g. ,
pinmode(13, OUTPUT);
2.3.3.2 Arduino/processing language Comparision
The Arduino language (based on Wiring) is implemented in C/C++, and therefore has some
differences from the Processing language, which is based on Java.
18
ARDUINO-Infinity exist
Chapter 3
19
ARDUINO-Infinity exist
APPLICATIONS OF ARDUINO
Arduino was basically designes to make the process of using electronics in
multidisciplinary projects more accessible.It is intended for artists,designers,hobbyists,and
anyone interested in creating interactive objects or environments.Arduino can sense the
environment by receiving input from a variety of sensors and can affect its surroundings by
controlling lights,motors,and other actuators.because of these features,arduino finds extensive
application in various fields.Arduino projects can be stand-alone or they can communicate with
software running on a computer.
Arduino received an Honarary Mention in Digital Communication section of the 2006 Ars
Electronica Prix
Arduino is used by all class of people in a different way.some students use it in their
projects,some using arduino for fun,some went out to become entreupreuners.This only shows
how useful is this tiny device.
ARDUINO is spreading rapidly across the globe. Arduino is actually an open source
hardware project that can be pro grammed to read temperatures, control a motor, and sense
touch.
the Arduino is both a cute, blue micro controller platform that fits nicely in the palm of your
hand and an expanding community of developers who support it, distributed across two dozen
coun tries, four continents, and counting.
20
ARDUINO-Infinity exist
The Arduino board is for anyone who wants to build a basic level of intelligence into an object.
Once programmed, it can read sensors, make simple deci sions, and control myriad devices in the
real world. Using it is a snap: first, hook up a few sensors and output devices to the Arduino, then
program it using the free developers software. Next, debug your code and disconnect the
Arduino.Then,the little blue Arduino becomes a standalone computer.
The original intention of the Arduino project was to see what would happen if community
support were substituted for the corporate support that is usually required for electronics
development. The first developers Massimo Banzi, David Cuartielles, David Mellis, and
Nicholas Zambetti ran a series of workshops on assembling the Arduino, giving away the
board to stimulate development.
Thousands of projects have been done worldwide using this tiny little device.some of which to
mention are:
21
ARDUINO-Infinity exist
LCD Thermostat
Computer
controlled fan
hypnotizer
Miscellaneous
The
Projects
Lie
like
detector
Magnetic door lock
Infrared remote
Lilypad
binary
clock
Just to name a few.as the trademark goes,there are nearly infinite possible projects
using this tiny device,which we still yet to discover
Some of the major applications are 3D printers,whos founder went out to become an
euntreuprenuer,and major pride came to ARDUINO,when giant firm GOOGLEs
most ambitious ANDROID,deployed ARDUINO in its new venture ANDROID
OPEN ACCESSORY DEVELOPMENT KIT.which allows external USB hardware
to interact with an Android-powered device in a special accessory mode.ANDROID
executive announced this in annual GOOGLE IO meet conference 2011.ANDROID
calls that device made of arduino as ADK(Android development kit).
Arduino also has won annual 2012 INTERACTION AWARD sponsored by
GOOGLE,for its extensive applications in various fields.
22
ARDUINO-Infinity exist
Starter Projects: Editing and rewriting is often easier than writing from scratch. Its the
same with electronics. Its easier to mod an idea than start with a blank slate.Thats where
the BeagleBoard falls short. It has virtually no example application that you can just
copy and hack to learn from, says Massimo Banzi, one of the co-founders of the
Arduino project. Its a chicken-and-egg problem for the BeagleBoard. Unless there are
more example codes out there, it is difficult to draw in the audience. And without the
audience it is challenging to get enough sample projects into the community.
A Thriving Community: Arduinos popularity means its easy to get started. Companies
such as Adafruit, SparkFun and Liquidware not only sell chips, but they also host blogs
that suggest ideas on how to use your Arduino while providing extensive project plans to
guide you in completing your creations. Will Chellman, a student who has played with
Arduino for years, says hes now experimenting with the BeagleBoard. But finding
documentation and information to work off is not easy, he says. The lack of welldocumented projects done with the BeagleBoard can be intimidating to new users as well,
says Banzi. Theres lots of of interesting stuff (about the BeagleBoard) but it is very
technical, he wrote in a comment recently on Gadget Lab in response to the launch of
23
ARDUINO-Infinity exist
Maturity is the key: Arduino has had a head start on the BeagleBoard. By October 2008,
about 50,000 Arduino boards had already been shipped. That year, the first BeagleBoards
started making their way into the hands of hardware enthusiasts. The BeagleBoard is just
two years old. Since it hasnt been around long enough, theres not enough people
building apps based on it, says Chellman. Thats not to say that BeagleBoard isnt
catching up. Earlier this month, we showed five projects ranging from a videowall to the
iPad of ham radios that use the BeagleBoard. Theres also a build-your-own tablet kit that
is based off the BeagleBoard.
24
ARDUINO-Infinity exist
REFERENCES
1. http://www.arduino.cc
2. http://en.wikipedia.org/wiki/Arduino -wikipedia
3. Jonathan Oxer,Hugh Blemings Practical Arduino-cool projects for open source hardware
4.Simon monk 30 ARDUINO PROJECTS for the EVIL GENIUS.
5. http://www.arduino.cc/playground/Projects/ArduinoUsers
6.http://www.arduinothedocumentary.org
7.http://www.google.com
8.http://www.accessories.android.com
25
ARDUINO-Infinity exist
CONTACT DETAILS
Ravishankar patil M J
Mail id:ravipatilmj@gmail.com
Ph no:8722557629
26