10/6/2015
Mechatronics Student Lecture On Arduinos
*Some slides courtesy of Eoin Brazil
http://www.slideshare.net/eoinbrazil/imediaarduino08#btnNext
Overview
• Hardware: What is Arduino?
– Physical Computing
– Versions and Capabilities
– I/O and interfacing
• Software: Programming Arduinos
– Sketches and their elements
– Demo
1
10/6/2015
Physical Computing
“Physical Computing is about prototyping with
electronics, turning sensors, actuators and
microcontrollers into materials for designers and
artists.”
– Massimo Banzi, Tinker.it & Arduino Co-Founder
Daniel Pickem
More info at
http://arduino.cc/en/Guide/Introduction
Daniel Pickem
2
10/6/2015
What can you do with it?
• The LED Cube – an 8x8x8 3D
display
– Contains 512 LEDs
– Controlled by one Arduino
– Instructions to build it yourself
freely
available
• Animatronic Hand
– 5 flex sensors
– 5 servos
– 1 Arduino
– Wireless transmission using XBees
Rowland O’Flaherty
Advantages of Arduinos
• Inexpensive
• Cross-platform
• Simple, clear programming
environment
• Open source and extensible
software
• Open source and extensible
hardware
• Extensive project databases,
Howtos and guides online
• Large number of hardware
extensions (shields) available
online
Daniel Pickem
3
10/6/2015
Available Versions
Arduino Uno Arduino Mega
Arduino Due
Arduino Nano
Daniel Pickem
Comparison
Nano Uno Mega Due
Clock Speed 16 MHz 16 MHz 16 MHz 84 MHz
Digital I/O 14 14 54 54
Analog I/O 8 6 16 12
Flash Memory 16/32 KB 32 128 512
SRAM 1/2 KB 2 8 96
EEPROM 0.5/1 KB 1 4 0
Price 13 $1 15 $1 20 $1 45.70 $2
1 www.dealextreme.com
2 www.mouser.com
4
10/6/2015
Daniel Pickem
Daniel Pickem
Daniel Pickem
5
10/6/2015
Extending the Hardware
• Done with extension boards or shields
• Plug into an Arduino directly (most are made
for Uno and Mega)
• Extend capabilities of the microcontroller
• Examples include
– Ethernet shield
– Wifi shield
– GSM shield
– Motor control shield
Daniel Pickem
Interfacing with an Arduino
• Serial Rx, Tx Line (UART)
• Serial Peripheral Interface (SPI)
• Inter-Integrated Circuit (I2C)
• External Interrupts (falling or rising edges)
• Pulse Width Modulation (PWM)
• Reset Pin
• More information available at:
http://en.wikipedia.org/wiki/Arduino
Daniel Pickem
6
10/6/2015
Daniel Pickem
Daniel Pickem
7
10/6/2015
Daniel Pickem
Daniel Pickem
8
10/6/2015
Daniel Pickem
Daniel Pickem
9
10/6/2015
Daniel Pickem
Daniel Pickem
10
10/6/2015
Mechatronics (ME 6405) Student Lecture On Arduinos
Daniel Pickem and Rowland O’Flaherty
12/04/2012
*Some slides courtesy of Eoin Brazil
http://www.slideshare.net/eoinbrazil/imediaarduino08#btnNext
Rowland O’Flaherty
11
10/6/2015
Rowland O’Flaherty
Rowland O’Flaherty
12
10/6/2015
Rowland O’Flaherty
Rowland O’Flaherty
13
10/6/2015
Rowland O’Flaherty
Rowland O’Flaherty
14
10/6/2015
Rowland O’Flaherty
Rowland O’Flaherty
15
10/6/2015
Extending the Software
• Libraries are used to extend software functionality
(implemented in a superset of C/C++)
• Large variety of libraries available online as open
source
• Examples
– Communication: GSM, I2C, SPI libraries
– Localization: GPS
– Control: PWM, motor control libraries
– Sensing: temperature, light, acceleration, ...
• Simple to implement your own and make available to
IDE
Rowland O’Flaherty
The Arduino IDE
• Used to create
sketches, the Arduino
term for a program.
• Allows programming
the Arduino via USB.
• Allows reflashing of
the firmware on the
microcontroller.
• Runs on all major
operating systems.
Rowland O’Flaherty
16
10/6/2015
How to program an Arduino
1. Create your sketch in
the Arduino IDE
2. Compile and debug
your sketch
3. Select the correct
serial port for
uploading
4. Select the board 1.
corresponding to
your hardware
5. Upload the sketch to
your Arduino
DEMO
17
10/6/2015
Distributors
• www.sparkfun.com
– Lots and lots of shields, arduinos, and resources
– Pricey, US-based
• www.dealextreme.com
– Extremely cheap
– Long shipping times, based in Hong Kong
• www.adafruit.com
– US-based distributor
– Nice selection of Arduino and related products
– Reasonably priced
Rowland O’Flaherty
References and Resources
• Manufacturer and Introduction
– http://www.arduino.cc/en/
• Projects and Tutorials
– http://www.bildr.org/
• Lectures
– http://www.slideshare.net/eoinbrazil/imediaardui
no08
Rowland O’Flaherty
18
10/6/2015
Questions?
19