Introduction to the
Arduino
Global School of Media
Media Robotics Lab.
http://mr.ssu.ac.kr
Professor Kang-Hee Lee
Overview
What is Arduino?
What is it used for?
How to get started
Demonstration
Questions are welcome at any time.
What is Arduino?
“Arduino is an open-source physical
computing platform based on a
simple i/o board and a development
environment that implements the
Processing / Wiring language.
Arduino can be used to develop
stand-alone interactive objects or
can be connected to software on
your computer.“ ( www.arduino.cc, 2006 )
Arduino is a platform
A physical Input / Output board (I/O) with a
programmable Integrated Circuit (IC).
Physical computing
platform
Open source
“Hardware
Abstracted” Wiring
Language
USB programmable
Large community
Inexpensive ($31.95
from Sparkfun)
Based on
ATmega8
w. USB interface
Voltage regulator
The “power” is in:
Standard board
design
Wiring language
Open Source
Arduino Board Overview
Arduino is a platform
Also including an
Integrated
Development
Environment (IDE) for
programming.
The language itself is
based in C but is
largely modeled upon
the
www.processing.org
language.
What is it used for?
Physical Computing projects /
research
Interactive Installations
Rapid prototyping
When you wish to move beyond the
traditional Mouse, Keyboard and
Monitor to develop novel and custom
interactions in your project work.
What can it do?
Sensors ( to sense stuff )
Push buttons, touch pads, tilt switches.
Variable resistors (eg. volume knob / sliders)
Photoresistors (sensing light levels)
Thermistors (temperature)
Ultrasound (proximity range finder)
Actuators ( to do stuff )
Lights, LED’s
Motors
Speakers
Displays (LCD)
Why Arduino?
It is Open Source, both in terms of Hardware and
Software.
It is cheap, the hardware can be built from
components or a prefab board can be purchased
for approx $35 AUD
It can communicate with a computer via serial
connection over USB (Bluetooth model coming
soon!).
It can be powered from USB or standalone DC
power.
Why Arduino?
It can run standalone from a computer
(chip is programmable) and it has
memory (a small amount).
It can work with both Digital and
Analogue electronic signals. Sensors and
Actuators.
You can make cool stuff! Some people
are even making simple robots, and we
all know robots are just cool.
How to get started
You’ll need a board of course, INFENV has the
newest USB Extreme version, along with the
USB cable and DC power supplies.
Read about, understand what you are working
with and download the IDE:
http://www.arduino.cc
Mac, Windows and Penguin friendly versions
available
Then you are ready to plug it in!
Not so fast!
It’s important to note at this stage that
Arduino’s are electronic devices.
This means you MUST consider electrical
safety and understand the basics before
diving straight in.
The board itself doesn’t operate at what
would normally be considered dangerous
Voltages or Amperage, but if in doubt at any
stage of use you should seek more expert
advice.
Basic Electrical knowledge
A fantastic guide to electronics in theory,
practice and of course safety is available
as a PDF at:
http://www.ibiblio.org/obp/electricCircuits/
What you want is Volume 1, DC circuits.
This will help you greatly in understanding
how to wire circuits when using sensors
and actuators. (Hint: This kind of research should be included in
academic papers and portfolio reflection)
Getting up and running
The power mode must be selected
before you plug the board into
anything.
When powering from the USB cable
(5 volts) the jumper should be
closest to the USB input, for DC
supply the jumper should be closest
to the DC input.
The Basics...
• Open Source Hardware
• Open Source Development Kit
• User Community Driven
What do these do?
Digital IO (LEDs, switches)
Analog IO (resistive sensor data)
Serial Connection (Sensors, GPS, etc)
Program from your computer
Your limit is only your creativity!
Terminology
• I/O Board - main microcontroller
• Shield - add-on boards
• Sketch - the program
• Sensor - components (thermistors, etc.)
• Modules - serial data (GPS module, etc.)
Arduino I/O Boards
14 current boards
Big Brother: Wiring ($79.95)
Shields
Shields
Datalogging Shield
Shields
Wave Shield
Touchscreen Shield
More Shields…
XBee Shield
Ethernet Shield Wifi Shield
Even more shields!
APRS Shield
Sensors Fingerprint Scanner
Gas Sensor Temp & Humidity
Flex Sensor
Geiger Counter
Sensors
Photo/thermistor, infared, force sensitive resistor, Hall effect,
Piezo, tilt sensor..
Demonstration
It’s time for a simple demonstration.
Pushbutton Example
On the following few slides is an example pushbutton
circuit using a pull-up resistor (2.2K)
The orange wire is in place of a real button, its currently
connected so the button is in the ‘on’ state making a
connection.
The circuit works by running power from the 5V through
the 2.2K resistor (this limits the full 5 volts going
straight back into the ground, which is bad because
without the resistor it would overheat). When the
orange wire ‘pushbutton’ is connected the power going
to the digital input drops significantly because the
button is redirecting power through to the ground
instead. When the power drops enough it registers as a
‘LOW’ in the Arduino and we can sense a button press
with our code.
Pushbutton Example
Pushbutton Example
Pushbutton Example
Conclusion
There’s heaps more to explore, I’ve barely
scratched the surface of what you can really do
with this technology.
Make it happen. If you want to use an Arduino
in your project you’ll have to be proactive
about it and do the research yourself. It really
isn’t hard, just get stuck in.
Use the website and associated forum for
tutorials, code samples and general help:
www.arduino.cc