SlideShare a Scribd company logo
Arduino Workshop Slides
 What is Arduino?
 What can I make with Arduino?
 Getting started
 Digital Inputs and Outputs
 Analog Inputs and Outputs
 Motors
 Putting It AllTogether
 Summary
“Arduino is an open-source electronics
prototyping platform based on flexible, easy-
to-use hardware and software. It's intended for
artists, designers, hobbyists, and anyone
interested in creating interactive objects or
environments.“
http://www.arduino.cc/
 A programming environment forWindows,
Mac or Linux
 A hardware specification
 Software libraries that can be reused in your
programs
All for FREE!*
* Except the price of the hardware you purchase
 There are many types of hardware for
different needs
 The most commonly used Arduino board
 We will be using this board in this workshop
• Microprocessor – Atmega328
• 16 Mhz speed
• 14 Digital I/O Pins
• 6 Analog Input Pins
• 32K Program Memory
• 2K RAM
• 1k EEPROM
• Contains a special program
called a “Bootloader”
• Allows programming from
USB port
• Requires 0.5K of Program
Memory
• USB Interface
• USB client device
• Allows computer to
program the
Microprocessor
• Can be used to
communicate with
computer
• Can draw power from
computer to run Arduino
• Power Supply
• Connect 7V – 12V
• Provides required 5V to
Microprocessor
• Will automatically pick USB or
Power Supply to send power to
the Microprocessor
• Indicator LEDs
• L – connected to digital
pin 13
• TX – transmit data to
computer
• RX – receive data from
computer
• ON – when power is
applied
• Quartz Crystal which provides
16Mhz clock to Microprocessor
• Reset Button
• Allows you to reset the
microprocessor so
program will start from
the beginning
• Input/Output connectors
• Allows you to connect
external devices to
microprocessor
• Can accept wires to
individual pins
• Circuit boards “Shields”
can be plugged in to
connect external devices
 Many companies have created
Shields that can be used with
Arduino boards
 Examples
 Motor/Servo interface
 SD memory card interface
 Ethernet network interface
 GPS
 LED shields
 Prototyping shields
 Alarm Clock
 http://hackaday.com/2011/07/04/alarm-clock-forces-you-to-play-tetris-to-prove-you-are-awake/
 Textpresso
 http://www.geekwire.com/2012/greatest-invention-textspresso-machine-change-coffee-
ordering/
 Automatic PetWater Dispenser
 http://hackaday.com/2011/05/24/automated-faucet-keeps-your-cat-watered/
Arduino Workshop Slides
 Get the hardware
 Buy an Arduino UNO
 Buy (or repurpose) a USB cable
 Get the software
 http://arduino.cc/en/GuideHomePage
 Follow the instructions on this page to install
the software
 Connect the Arduino to your computer
 You are ready to go!
 Blink the onboard LED
Congratulations!!!
/*
Blink
. . .
*/
// set the LED on
// wait for a second
 These are comments
 The computer ignores them
 Humans can read them to learn about the
program
void setup() {
pinMode(13, OUTPUT);
}
 Brackets { and } contain a block of code
 Each line of code in this block runs sequentially
 void setup() tells the program to only run
them once
 When the board turns on
 When the reset button is pressed
void setup() {
pinMode(13, OUTPUT);
}
 Tells the Arduino to setup pin 13 as an Output
pin
 Each pin you use needs be setup with
pinMode
 A pin can be set to OUTPUT or INPUT
void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
 void loop () runs the code block over and over
until you turn off the Arduino
 This code block only runs after setup is
finished
void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
 HIGH tells the Arduino to turn on the output
 LOW tells theArduino to turn off the output
 13 is the pin number
void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
 Code runs very fast
 Delay tells theArduino to wait a bit
 1000 stands for 1,000 milliseconds or one
second
void loop() {
digitalWrite(13, HIGH);
delay(500);
digitalWrite(13, LOW);
delay(500);
}
 Change the 1000’s to 500
 Upload the code to the Arduino
 What happens now?
 These pins are used to communicate with the
outside world
 When an output pin is HIGH, it can provide 5V
at 40mA maximum
 Trying to get more than 40mA out of the pin will
destroy the Microprocessor!
 When the output pin is LOW, it provides no
current
 You can use a transistor and/or a relay to
provide a higher voltage or more current
 Most LEDs will work with 5V at 20mA or
30mA
 Make sure to check them before connecting
to your Arduino! – Use your volt meter
 An LED requires a resistor to limit the current
 Without the resistor, the LED will draw too much
current and burn itself out
 LEDs are polarized devices
 One side needs to be connected to + and one
side needs to be connected to –
 If you connect it backwards, it will not light
 Usually:
 Minus is short lead and flat side
 Plus is long lead and rounded side
 A resistor is non-polarized
 It can be connected either way
 Connect the two LEDs on the breadboard
 Modify the code to blink the second LED, too
 Blink them all
 The pins can be used to accept an input also
 Digital pins can read a voltage (1) or no
voltage (0)
 Analog pins can read voltage between 0V and
5V.You will read a value of 0 and 1023.
 Both of these return a value you can put into
a variable and/or make decisions based on
the value
 Example
int x;
x = digitalRead(2);
if ( x == HIGH ) {
digitalWrite(13, HIGH);
} else {
digitalWrite(13, LOW);
}
 A push button can be connected to a
digital pin
 There is an open circuit normally
 There is a closed circuit when pressed
 If connected between 5V and a pin, we
get 5V when pressed, but an open
circuit when not pressed
 This is a problem – we need 0V when
not pressed
 There is a solution
 A resistor to 5V will make the pin HIGH when
the button is not pressed
 Pressing it will make the pin LOW
 The resistor makes sure we don’t connect 5V
directly to Ground
 This is a common method for using push
buttons
 The resistor is called a “Pull Up Resistor”
 TheArduino has built in pull up resistors on
the digital pins
 We need to enable them when we need them
 This code enables the pull up resistor:
pinMode(2, INPUT);
digitalWrite(2, HIGH);
Or, the one line version:
pinMode(2, INPUT_PULLUP);
 Connect a push button
 Load the basic button code
 Turn LEDs on/off based on button press
 Load the toggle code. Pay attention to
reactions to your button presses, and count in
the Serial terminal.
 Try again with the debounce code. Did that
help?
 There are many other devices you can
connect to an Arduino
 Servos to move things
 GPS to determine location/time
 RealTime Clock to know what time it is
 Accelerometers, Chemical detectors…
 LCD displays
 Memory cards
 More!
 So far we’ve dealt with the on/off digital
world.
 Many interesting things we want to measure
(temperature, light, pressure, etc) have a
range of values.
 Very simple analog input – used to control
volume, speed, and so on.
 It allows us to vary two resistance values.
 You can communicate between the Arduino
and the computer via the USB cable.
 This can help you out big time when you are
debugging.
 It can also help you control programs on the
computer or post information to a web site.
Serial.begin(9600);
Serial.println(“Hello World.”);
 Connect potentiometer
 Upload and run code
 Turn the knob
 Watch the value change in the Serial Monitor
 There are many, many sensors based on
varying resistance: force sensors, light
dependent resistors, flex sensors, and more
 To use these you need to create a ‘voltage
divider’.
Arduino Workshop Slides
 R2 will be our photocell
 R1 will be a resistor of our choice
 Rule of thumb is: R1 should be in the middle
of the range.
 Wire up the photocell
 Same code as Lab 3
 Take note of the max and min values
 Try to pick a value for a dark/light threshold.
 Flashing a light is neat, but what about fading
one in and out?
 Or changing the color of an RGB LED?
 Or changing the speed of a motor?
Arduino Workshop Slides
 Wire up the Breadboard
 Load the code.Take note of the for loop.
 Watch the light fade in and out
 Experiment with the code to get different
effects
 So far we’ve communicated with the world by
blinking or writing to Serial
 Let’s make things move!
 Used in radio controlled planes and cars
 Good for moving through angles you specify
#include <Servo.h>
Servo myservo;
void setup() {
myservo.attach(9);
}
void loop() {}
 Wire up the breadboard
 Upload the code
 Check it out, you can control the servo!
 The map function makes life easy and is very,
very handy:
map(value, fromLow, fromHigh, toLow,
toHigh);
 Upload the code for random movement.
 Watch the values in the Serial monitor. Run
the program multiple times. Is it really
random?
 Try it with ‘randomSeed’, see what happens.
 For moving and spinning things
 Are cheap and can often be taken from old
and neglected toys (or toys from Goodwill)
 Here we learn three things:
 Transistors
 Using PWM to control speed
 Why you don’t directly attach a motor
 Wire it up
 Speed it up, slow it down (rawhide!)
 With a piezo or small speaker, your Arduino
can make some noise, or music (or ‘music’).
 As with game controllers, vibrating motors
can stimulate the sense of touch.
 Arduino projects exist that involve smell
(breathalyzer, scent generators).
 For taste…KegBot? ZipWhip’s cappuccino
robot?
 Combine previous projects (photocell and the
piezo playing music) to create an instrument
that generates a pitch based on how much
light is hitting the photocell
 Feel free to get really creative with this.
 We have learned
 The Arduino platform components
 how to connect an Arduino board to the computer
 How to connect LEDs, buttons, a light sensor, a
piezo buzzer, and motors
 How to send information back to the computer
 http://www.arduino.cc
 Getting StartedWith Arduino (Make:
Projects) book
 BeginningArduino book
 Arduino: A Quick Start Guide book
 The adafruit learning system:
https://learn.adafruit.com/
 Adafruit http://www.adafruit.com/
 Spark Fun http://www.sparkfun.com/
 Maker Shed http://www.makershed.com/
 Digikey http://www.digikey.com/
 Mouser http://www.mouser.com/
 Radio Shack http://www.radioshack.com/
 Find parts: http://www.octopart.com/
 Sometimes Amazon has parts too
 Ebay can have deals but usually the parts are
shipped from overseas and take a long time
 http://arduino.cc/forum/
 Your local Hackerspace!
 Electronic devices depend on the movement of
electrons
 The amount of electrons moving from one
molecule to another is called Current which is
measured in Amps
 Batteries provide a lot of electrons that are
ready to move
 The difference in potential (the number of free
electrons) between two points is called
Electromotive Force which is measured in Volts
 Materials that allow easy movement of
electrons are called Conductors
 Copper, silver, gold, aluminum are examples
 Materials that do not allow easy movement
of electrons are called Insulators
 Glass, paper, rubber are examples
 Some materials are poor conductors and
poor insulators.
 Carbon is an example
 Materials that aren’t good conductors or
good inductors provide Resistance to the
movement of electrons
 Resistance is measured in Ohms
 Electrons flow from the negative
terminal of the battery through the
circuit to the positive terminal.
 But – when they discovered this,
they thought current came from
the positive terminal to the
negative
 This is called conventional current
flow
I
Oops!
 There needs to be a complete circuit for
current to flow
No Flow! Current will Flow!
 Volts, Amps and Ohms are related
 This is called Ohms Law
I = Current in Amps
E = EMF inVolts
R = Resistance in Ohms
I=E
R
 Example
 BAT = 9 volts
 R1 = 100 ohms
 How many amps?
 I = 0.09 Amps or 90mA
I= 9V
100W
 When dealing with really big numbers or
really small numbers, there are prefixes you
can use
 k = kilo = 1,000 (e.g. 10 kHz = 10,000 Hz)
 M = mega = 1,000,000 (e.g 1 MHz = 1,000 kHz)
 m = milli = 1/1,000 (e.g 33mA = 0.033A)
 u = micro = 1/1,000,000 (e.g 2uV = 0.000002V)
 n = nano = 1/1,000,000,000
 p = pico = 1/1,000,000,000,000

More Related Content

What's hot (20)

Fun with arduino
Fun with arduinoFun with arduino
Fun with arduino
Ravikumar Tiwari
 
Arduino slides
Arduino slidesArduino slides
Arduino slides
sdcharle
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
baabtra.com - No. 1 supplier of quality freshers
 
Introduction to the Arduino
Introduction to the ArduinoIntroduction to the Arduino
Introduction to the Arduino
Wingston
 
IOTC08 The Arduino Platform
IOTC08 The Arduino PlatformIOTC08 The Arduino Platform
IOTC08 The Arduino Platform
Eoin Brazil
 
Introduction to arduino!
Introduction to arduino!Introduction to arduino!
Introduction to arduino!
Makers of India
 
Arduino
ArduinoArduino
Arduino
LetzkuLetz Castro
 
Arduino course
Arduino courseArduino course
Arduino course
Ahmed Shelbaya
 
Arduino Introduction Guide 1
Arduino Introduction Guide 1Arduino Introduction Guide 1
Arduino Introduction Guide 1
elketeaches
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
yeokm1
 
Arduino Platform with C programming.
Arduino Platform with C programming.Arduino Platform with C programming.
Arduino Platform with C programming.
Govind Jha
 
ARDUINO AND ITS PIN CONFIGURATION
 ARDUINO AND ITS PIN  CONFIGURATION ARDUINO AND ITS PIN  CONFIGURATION
ARDUINO AND ITS PIN CONFIGURATION
soma saikiran
 
Getting started with arduino workshop
Getting started with arduino workshopGetting started with arduino workshop
Getting started with arduino workshop
Sudar Muthu
 
Lecture6
Lecture6Lecture6
Lecture6
Mahmut Yildiz
 
2015-10-21 - Arduino workshop
2015-10-21 - Arduino workshop2015-10-21 - Arduino workshop
2015-10-21 - Arduino workshop
trygvis
 
Arduino
ArduinoArduino
Arduino
Jerin John
 
Arduino uno
Arduino unoArduino uno
Arduino uno
Muhammad Khan
 
Arduino Robotics workshop Day1
Arduino Robotics workshop Day1Arduino Robotics workshop Day1
Arduino Robotics workshop Day1
Sudar Muthu
 
Arduino Uno Pin Description
Arduino Uno Pin DescriptionArduino Uno Pin Description
Arduino Uno Pin Description
Niket Chandrawanshi
 
Introduction to Arduino Hardware and Programming
Introduction to Arduino Hardware and ProgrammingIntroduction to Arduino Hardware and Programming
Introduction to Arduino Hardware and Programming
Emmanuel Obot
 
Arduino slides
Arduino slidesArduino slides
Arduino slides
sdcharle
 
Introduction to the Arduino
Introduction to the ArduinoIntroduction to the Arduino
Introduction to the Arduino
Wingston
 
IOTC08 The Arduino Platform
IOTC08 The Arduino PlatformIOTC08 The Arduino Platform
IOTC08 The Arduino Platform
Eoin Brazil
 
Introduction to arduino!
Introduction to arduino!Introduction to arduino!
Introduction to arduino!
Makers of India
 
Arduino Introduction Guide 1
Arduino Introduction Guide 1Arduino Introduction Guide 1
Arduino Introduction Guide 1
elketeaches
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
yeokm1
 
Arduino Platform with C programming.
Arduino Platform with C programming.Arduino Platform with C programming.
Arduino Platform with C programming.
Govind Jha
 
ARDUINO AND ITS PIN CONFIGURATION
 ARDUINO AND ITS PIN  CONFIGURATION ARDUINO AND ITS PIN  CONFIGURATION
ARDUINO AND ITS PIN CONFIGURATION
soma saikiran
 
Getting started with arduino workshop
Getting started with arduino workshopGetting started with arduino workshop
Getting started with arduino workshop
Sudar Muthu
 
2015-10-21 - Arduino workshop
2015-10-21 - Arduino workshop2015-10-21 - Arduino workshop
2015-10-21 - Arduino workshop
trygvis
 
Arduino Robotics workshop Day1
Arduino Robotics workshop Day1Arduino Robotics workshop Day1
Arduino Robotics workshop Day1
Sudar Muthu
 
Introduction to Arduino Hardware and Programming
Introduction to Arduino Hardware and ProgrammingIntroduction to Arduino Hardware and Programming
Introduction to Arduino Hardware and Programming
Emmanuel Obot
 

Viewers also liked (11)

Controlo de motores dc através de Scratch
Controlo de motores dc através de ScratchControlo de motores dc através de Scratch
Controlo de motores dc através de Scratch
Ana Carneirinho
 
Arduino & Scratch na Escola - Aula 1
Arduino & Scratch na Escola - Aula 1Arduino & Scratch na Escola - Aula 1
Arduino & Scratch na Escola - Aula 1
Ana Carneirinho
 
Arduino & Scratch na Escola - Aula 3
Arduino & Scratch na Escola - Aula 3Arduino & Scratch na Escola - Aula 3
Arduino & Scratch na Escola - Aula 3
Ana Carneirinho
 
Arduino - iniciação à linguagem C: LCD 1602
Arduino - iniciação à linguagem C: LCD 1602Arduino - iniciação à linguagem C: LCD 1602
Arduino - iniciação à linguagem C: LCD 1602
Ana Carneirinho
 
Arduino & Scratch na Escola - Aula 2
Arduino & Scratch na Escola - Aula 2Arduino & Scratch na Escola - Aula 2
Arduino & Scratch na Escola - Aula 2
Ana Carneirinho
 
Controlo de servo motor através de Scratch
Controlo de servo motor através de ScratchControlo de servo motor através de Scratch
Controlo de servo motor através de Scratch
Ana Carneirinho
 
Bitraf Arduino workshop
Bitraf Arduino workshopBitraf Arduino workshop
Bitraf Arduino workshop
Jens Brynildsen
 
Arduino Robotics workshop day2
Arduino Robotics workshop day2Arduino Robotics workshop day2
Arduino Robotics workshop day2
Sudar Muthu
 
Programação de arduinos com S4A (exercícios com entradas e saídas digitais)
Programação de arduinos com S4A (exercícios com entradas e saídas digitais)Programação de arduinos com S4A (exercícios com entradas e saídas digitais)
Programação de arduinos com S4A (exercícios com entradas e saídas digitais)
Ana Carneirinho
 
LED RGB e saída PWM - estudo orientado com S4A
LED RGB e saída PWM - estudo orientado com S4ALED RGB e saída PWM - estudo orientado com S4A
LED RGB e saída PWM - estudo orientado com S4A
Ana Carneirinho
 
Workshop Arduino + Scratch
Workshop Arduino + ScratchWorkshop Arduino + Scratch
Workshop Arduino + Scratch
Ana Carneirinho
 
Controlo de motores dc através de Scratch
Controlo de motores dc através de ScratchControlo de motores dc através de Scratch
Controlo de motores dc através de Scratch
Ana Carneirinho
 
Arduino & Scratch na Escola - Aula 1
Arduino & Scratch na Escola - Aula 1Arduino & Scratch na Escola - Aula 1
Arduino & Scratch na Escola - Aula 1
Ana Carneirinho
 
Arduino & Scratch na Escola - Aula 3
Arduino & Scratch na Escola - Aula 3Arduino & Scratch na Escola - Aula 3
Arduino & Scratch na Escola - Aula 3
Ana Carneirinho
 
Arduino - iniciação à linguagem C: LCD 1602
Arduino - iniciação à linguagem C: LCD 1602Arduino - iniciação à linguagem C: LCD 1602
Arduino - iniciação à linguagem C: LCD 1602
Ana Carneirinho
 
Arduino & Scratch na Escola - Aula 2
Arduino & Scratch na Escola - Aula 2Arduino & Scratch na Escola - Aula 2
Arduino & Scratch na Escola - Aula 2
Ana Carneirinho
 
Controlo de servo motor através de Scratch
Controlo de servo motor através de ScratchControlo de servo motor através de Scratch
Controlo de servo motor através de Scratch
Ana Carneirinho
 
Arduino Robotics workshop day2
Arduino Robotics workshop day2Arduino Robotics workshop day2
Arduino Robotics workshop day2
Sudar Muthu
 
Programação de arduinos com S4A (exercícios com entradas e saídas digitais)
Programação de arduinos com S4A (exercícios com entradas e saídas digitais)Programação de arduinos com S4A (exercícios com entradas e saídas digitais)
Programação de arduinos com S4A (exercícios com entradas e saídas digitais)
Ana Carneirinho
 
LED RGB e saída PWM - estudo orientado com S4A
LED RGB e saída PWM - estudo orientado com S4ALED RGB e saída PWM - estudo orientado com S4A
LED RGB e saída PWM - estudo orientado com S4A
Ana Carneirinho
 
Workshop Arduino + Scratch
Workshop Arduino + ScratchWorkshop Arduino + Scratch
Workshop Arduino + Scratch
Ana Carneirinho
 
Ad

Similar to Arduino Workshop Slides (20)

02 Sensors and Actuators Understand .pdf
02 Sensors and Actuators Understand .pdf02 Sensors and Actuators Understand .pdf
02 Sensors and Actuators Understand .pdf
engsharaf2025
 
Arduino-workshop.computer engineering.pdf
Arduino-workshop.computer engineering.pdfArduino-workshop.computer engineering.pdf
Arduino-workshop.computer engineering.pdf
AbhishekGiri933736
 
Starting with Arduino
Starting with Arduino Starting with Arduino
Starting with Arduino
MajdyShamasneh
 
Arduino Workshop (3).pptx
Arduino Workshop (3).pptxArduino Workshop (3).pptx
Arduino Workshop (3).pptx
HebaEng
 
01 Intro to the Arduino and it's basics.ppt
01 Intro to the Arduino and it's basics.ppt01 Intro to the Arduino and it's basics.ppt
01 Intro to the Arduino and it's basics.ppt
pindi2197
 
Arduino Comic-Jody Culkin-2011
Arduino Comic-Jody Culkin-2011Arduino Comic-Jody Culkin-2011
Arduino Comic-Jody Culkin-2011
ΚΔΑΠ Δήμου Θέρμης
 
Arduino comic v0004
Arduino comic v0004Arduino comic v0004
Arduino comic v0004
DO!MAKERS
 
Introduction To Arduino-converted for s.pptx
Introduction To Arduino-converted for s.pptxIntroduction To Arduino-converted for s.pptx
Introduction To Arduino-converted for s.pptx
rtnmsn
 
Physical prototyping lab2-analog_digital
Physical prototyping lab2-analog_digitalPhysical prototyping lab2-analog_digital
Physical prototyping lab2-analog_digital
Tony Olsson.
 
Physical prototyping lab2-analog_digital
Physical prototyping lab2-analog_digitalPhysical prototyping lab2-analog_digital
Physical prototyping lab2-analog_digital
Tony Olsson.
 
Making things sense - Day 1 (May 2011)
Making things sense - Day 1 (May 2011)Making things sense - Day 1 (May 2011)
Making things sense - Day 1 (May 2011)
markumoto
 
Hardware Hacking and Arduinos
Hardware Hacking and ArduinosHardware Hacking and Arduinos
Hardware Hacking and Arduinos
Howard Mao
 
Intro to Arduino
Intro to ArduinoIntro to Arduino
Intro to Arduino
avikdhupar
 
13223971.ppt
13223971.ppt13223971.ppt
13223971.ppt
SuYee13
 
Basic arduino sketch example
Basic arduino sketch exampleBasic arduino sketch example
Basic arduino sketch example
mraziff2009
 
Arduino workshop sensors
Arduino workshop sensorsArduino workshop sensors
Arduino workshop sensors
Jhonny Wladimir Peñaloza Cabello
 
publish manual
publish manualpublish manual
publish manual
John Webster
 
Arduino Programming Basic
Arduino Programming BasicArduino Programming Basic
Arduino Programming Basic
LITS IT Ltd,LASRC.SPACE,SAWDAGOR BD,FREELANCE BD,iREV,BD LAW ACADEMY,SMART AVI,HEA,HFSAC LTD.
 
Arduino and Circuits.docx
Arduino and Circuits.docxArduino and Circuits.docx
Arduino and Circuits.docx
Ajay578679
 
Basics of mechatronics - Arduino tutorial
Basics of mechatronics - Arduino tutorialBasics of mechatronics - Arduino tutorial
Basics of mechatronics - Arduino tutorial
ManasShrivastava6
 
02 Sensors and Actuators Understand .pdf
02 Sensors and Actuators Understand .pdf02 Sensors and Actuators Understand .pdf
02 Sensors and Actuators Understand .pdf
engsharaf2025
 
Arduino-workshop.computer engineering.pdf
Arduino-workshop.computer engineering.pdfArduino-workshop.computer engineering.pdf
Arduino-workshop.computer engineering.pdf
AbhishekGiri933736
 
Starting with Arduino
Starting with Arduino Starting with Arduino
Starting with Arduino
MajdyShamasneh
 
Arduino Workshop (3).pptx
Arduino Workshop (3).pptxArduino Workshop (3).pptx
Arduino Workshop (3).pptx
HebaEng
 
01 Intro to the Arduino and it's basics.ppt
01 Intro to the Arduino and it's basics.ppt01 Intro to the Arduino and it's basics.ppt
01 Intro to the Arduino and it's basics.ppt
pindi2197
 
Arduino comic v0004
Arduino comic v0004Arduino comic v0004
Arduino comic v0004
DO!MAKERS
 
Introduction To Arduino-converted for s.pptx
Introduction To Arduino-converted for s.pptxIntroduction To Arduino-converted for s.pptx
Introduction To Arduino-converted for s.pptx
rtnmsn
 
Physical prototyping lab2-analog_digital
Physical prototyping lab2-analog_digitalPhysical prototyping lab2-analog_digital
Physical prototyping lab2-analog_digital
Tony Olsson.
 
Physical prototyping lab2-analog_digital
Physical prototyping lab2-analog_digitalPhysical prototyping lab2-analog_digital
Physical prototyping lab2-analog_digital
Tony Olsson.
 
Making things sense - Day 1 (May 2011)
Making things sense - Day 1 (May 2011)Making things sense - Day 1 (May 2011)
Making things sense - Day 1 (May 2011)
markumoto
 
Hardware Hacking and Arduinos
Hardware Hacking and ArduinosHardware Hacking and Arduinos
Hardware Hacking and Arduinos
Howard Mao
 
Intro to Arduino
Intro to ArduinoIntro to Arduino
Intro to Arduino
avikdhupar
 
13223971.ppt
13223971.ppt13223971.ppt
13223971.ppt
SuYee13
 
Basic arduino sketch example
Basic arduino sketch exampleBasic arduino sketch example
Basic arduino sketch example
mraziff2009
 
Arduino and Circuits.docx
Arduino and Circuits.docxArduino and Circuits.docx
Arduino and Circuits.docx
Ajay578679
 
Basics of mechatronics - Arduino tutorial
Basics of mechatronics - Arduino tutorialBasics of mechatronics - Arduino tutorial
Basics of mechatronics - Arduino tutorial
ManasShrivastava6
 
Ad

Recently uploaded (20)

What is FIle and explanation of text files.pptx
What is FIle and explanation of text files.pptxWhat is FIle and explanation of text files.pptx
What is FIle and explanation of text files.pptx
Ramakrishna Reddy Bijjam
 
june 10 2025 ppt for madden on art science is over.pptx
june 10 2025 ppt for madden on art science is over.pptxjune 10 2025 ppt for madden on art science is over.pptx
june 10 2025 ppt for madden on art science is over.pptx
roger malina
 
Publishing Your Memoir with Brooke Warner
Publishing Your Memoir with Brooke WarnerPublishing Your Memoir with Brooke Warner
Publishing Your Memoir with Brooke Warner
Brooke Warner
 
Unit 3 Poster Sketches with annotations.pptx
Unit 3 Poster Sketches with annotations.pptxUnit 3 Poster Sketches with annotations.pptx
Unit 3 Poster Sketches with annotations.pptx
bobby205207
 
Analysis of Quantitative Data Parametric and non-parametric tests.pptx
Analysis of Quantitative Data Parametric and non-parametric tests.pptxAnalysis of Quantitative Data Parametric and non-parametric tests.pptx
Analysis of Quantitative Data Parametric and non-parametric tests.pptx
Shrutidhara2
 
How to Create an Event in Odoo 18 - Odoo 18 Slides
How to Create an Event in Odoo 18 - Odoo 18 SlidesHow to Create an Event in Odoo 18 - Odoo 18 Slides
How to Create an Event in Odoo 18 - Odoo 18 Slides
Celine George
 
Basic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Basic English for Communication - Dr Hj Euis Eti Rohaeti MpdBasic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Basic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Restu Bias Primandhika
 
Final Sketch Designs for poster production.pptx
Final Sketch Designs for poster production.pptxFinal Sketch Designs for poster production.pptx
Final Sketch Designs for poster production.pptx
bobby205207
 
Overview of Employee in Odoo 18 - Odoo Slides
Overview of Employee in Odoo 18 - Odoo SlidesOverview of Employee in Odoo 18 - Odoo Slides
Overview of Employee in Odoo 18 - Odoo Slides
Celine George
 
ABCs of Bookkeeping for Nonprofits TechSoup.pdf
ABCs of Bookkeeping for Nonprofits TechSoup.pdfABCs of Bookkeeping for Nonprofits TechSoup.pdf
ABCs of Bookkeeping for Nonprofits TechSoup.pdf
TechSoup
 
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdfFEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
ChristinaFortunova
 
How to Manage Multi Language for Invoice in Odoo 18
How to Manage Multi Language for Invoice in Odoo 18How to Manage Multi Language for Invoice in Odoo 18
How to Manage Multi Language for Invoice in Odoo 18
Celine George
 
How to Manage Inventory Movement in Odoo 18 POS
How to Manage Inventory Movement in Odoo 18 POSHow to Manage Inventory Movement in Odoo 18 POS
How to Manage Inventory Movement in Odoo 18 POS
Celine George
 
Energy Balances Of Oecd Countries 2011 Iea Statistics 1st Edition Oecd
Energy Balances Of Oecd Countries 2011 Iea Statistics 1st Edition OecdEnergy Balances Of Oecd Countries 2011 Iea Statistics 1st Edition Oecd
Energy Balances Of Oecd Countries 2011 Iea Statistics 1st Edition Oecd
razelitouali
 
Overview of Off Boarding in Odoo 18 Employees
Overview of Off Boarding in Odoo 18 EmployeesOverview of Off Boarding in Odoo 18 Employees
Overview of Off Boarding in Odoo 18 Employees
Celine George
 
Nice Dream.pdf /
Nice Dream.pdf                              /Nice Dream.pdf                              /
Nice Dream.pdf /
ErinUsher3
 
Webcrawler_Mule_AIChain_MuleSoft_Meetup_Hyderabad
Webcrawler_Mule_AIChain_MuleSoft_Meetup_HyderabadWebcrawler_Mule_AIChain_MuleSoft_Meetup_Hyderabad
Webcrawler_Mule_AIChain_MuleSoft_Meetup_Hyderabad
Veera Pallapu
 
GEOGRAPHY-Study Material [ Class 10th] .pdf
GEOGRAPHY-Study Material [ Class 10th] .pdfGEOGRAPHY-Study Material [ Class 10th] .pdf
GEOGRAPHY-Study Material [ Class 10th] .pdf
SHERAZ AHMAD LONE
 
How to Configure Vendor Management in Lunch App of Odoo 18
How to Configure Vendor Management in Lunch App of Odoo 18How to Configure Vendor Management in Lunch App of Odoo 18
How to Configure Vendor Management in Lunch App of Odoo 18
Celine George
 
Sustainable Innovation with Immersive Learning
Sustainable Innovation with Immersive LearningSustainable Innovation with Immersive Learning
Sustainable Innovation with Immersive Learning
Leonel Morgado
 
What is FIle and explanation of text files.pptx
What is FIle and explanation of text files.pptxWhat is FIle and explanation of text files.pptx
What is FIle and explanation of text files.pptx
Ramakrishna Reddy Bijjam
 
june 10 2025 ppt for madden on art science is over.pptx
june 10 2025 ppt for madden on art science is over.pptxjune 10 2025 ppt for madden on art science is over.pptx
june 10 2025 ppt for madden on art science is over.pptx
roger malina
 
Publishing Your Memoir with Brooke Warner
Publishing Your Memoir with Brooke WarnerPublishing Your Memoir with Brooke Warner
Publishing Your Memoir with Brooke Warner
Brooke Warner
 
Unit 3 Poster Sketches with annotations.pptx
Unit 3 Poster Sketches with annotations.pptxUnit 3 Poster Sketches with annotations.pptx
Unit 3 Poster Sketches with annotations.pptx
bobby205207
 
Analysis of Quantitative Data Parametric and non-parametric tests.pptx
Analysis of Quantitative Data Parametric and non-parametric tests.pptxAnalysis of Quantitative Data Parametric and non-parametric tests.pptx
Analysis of Quantitative Data Parametric and non-parametric tests.pptx
Shrutidhara2
 
How to Create an Event in Odoo 18 - Odoo 18 Slides
How to Create an Event in Odoo 18 - Odoo 18 SlidesHow to Create an Event in Odoo 18 - Odoo 18 Slides
How to Create an Event in Odoo 18 - Odoo 18 Slides
Celine George
 
Basic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Basic English for Communication - Dr Hj Euis Eti Rohaeti MpdBasic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Basic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Restu Bias Primandhika
 
Final Sketch Designs for poster production.pptx
Final Sketch Designs for poster production.pptxFinal Sketch Designs for poster production.pptx
Final Sketch Designs for poster production.pptx
bobby205207
 
Overview of Employee in Odoo 18 - Odoo Slides
Overview of Employee in Odoo 18 - Odoo SlidesOverview of Employee in Odoo 18 - Odoo Slides
Overview of Employee in Odoo 18 - Odoo Slides
Celine George
 
ABCs of Bookkeeping for Nonprofits TechSoup.pdf
ABCs of Bookkeeping for Nonprofits TechSoup.pdfABCs of Bookkeeping for Nonprofits TechSoup.pdf
ABCs of Bookkeeping for Nonprofits TechSoup.pdf
TechSoup
 
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdfFEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
ChristinaFortunova
 
How to Manage Multi Language for Invoice in Odoo 18
How to Manage Multi Language for Invoice in Odoo 18How to Manage Multi Language for Invoice in Odoo 18
How to Manage Multi Language for Invoice in Odoo 18
Celine George
 
How to Manage Inventory Movement in Odoo 18 POS
How to Manage Inventory Movement in Odoo 18 POSHow to Manage Inventory Movement in Odoo 18 POS
How to Manage Inventory Movement in Odoo 18 POS
Celine George
 
Energy Balances Of Oecd Countries 2011 Iea Statistics 1st Edition Oecd
Energy Balances Of Oecd Countries 2011 Iea Statistics 1st Edition OecdEnergy Balances Of Oecd Countries 2011 Iea Statistics 1st Edition Oecd
Energy Balances Of Oecd Countries 2011 Iea Statistics 1st Edition Oecd
razelitouali
 
Overview of Off Boarding in Odoo 18 Employees
Overview of Off Boarding in Odoo 18 EmployeesOverview of Off Boarding in Odoo 18 Employees
Overview of Off Boarding in Odoo 18 Employees
Celine George
 
Nice Dream.pdf /
Nice Dream.pdf                              /Nice Dream.pdf                              /
Nice Dream.pdf /
ErinUsher3
 
Webcrawler_Mule_AIChain_MuleSoft_Meetup_Hyderabad
Webcrawler_Mule_AIChain_MuleSoft_Meetup_HyderabadWebcrawler_Mule_AIChain_MuleSoft_Meetup_Hyderabad
Webcrawler_Mule_AIChain_MuleSoft_Meetup_Hyderabad
Veera Pallapu
 
GEOGRAPHY-Study Material [ Class 10th] .pdf
GEOGRAPHY-Study Material [ Class 10th] .pdfGEOGRAPHY-Study Material [ Class 10th] .pdf
GEOGRAPHY-Study Material [ Class 10th] .pdf
SHERAZ AHMAD LONE
 
How to Configure Vendor Management in Lunch App of Odoo 18
How to Configure Vendor Management in Lunch App of Odoo 18How to Configure Vendor Management in Lunch App of Odoo 18
How to Configure Vendor Management in Lunch App of Odoo 18
Celine George
 
Sustainable Innovation with Immersive Learning
Sustainable Innovation with Immersive LearningSustainable Innovation with Immersive Learning
Sustainable Innovation with Immersive Learning
Leonel Morgado
 

Arduino Workshop Slides

  • 2.  What is Arduino?  What can I make with Arduino?  Getting started  Digital Inputs and Outputs  Analog Inputs and Outputs  Motors  Putting It AllTogether  Summary
  • 3. “Arduino is an open-source electronics prototyping platform based on flexible, easy- to-use hardware and software. It's intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments.“ http://www.arduino.cc/
  • 4.  A programming environment forWindows, Mac or Linux  A hardware specification  Software libraries that can be reused in your programs All for FREE!* * Except the price of the hardware you purchase
  • 5.  There are many types of hardware for different needs
  • 6.  The most commonly used Arduino board  We will be using this board in this workshop
  • 7. • Microprocessor – Atmega328 • 16 Mhz speed • 14 Digital I/O Pins • 6 Analog Input Pins • 32K Program Memory • 2K RAM • 1k EEPROM • Contains a special program called a “Bootloader” • Allows programming from USB port • Requires 0.5K of Program Memory
  • 8. • USB Interface • USB client device • Allows computer to program the Microprocessor • Can be used to communicate with computer • Can draw power from computer to run Arduino
  • 9. • Power Supply • Connect 7V – 12V • Provides required 5V to Microprocessor • Will automatically pick USB or Power Supply to send power to the Microprocessor
  • 10. • Indicator LEDs • L – connected to digital pin 13 • TX – transmit data to computer • RX – receive data from computer • ON – when power is applied
  • 11. • Quartz Crystal which provides 16Mhz clock to Microprocessor
  • 12. • Reset Button • Allows you to reset the microprocessor so program will start from the beginning
  • 13. • Input/Output connectors • Allows you to connect external devices to microprocessor • Can accept wires to individual pins • Circuit boards “Shields” can be plugged in to connect external devices
  • 14.  Many companies have created Shields that can be used with Arduino boards  Examples  Motor/Servo interface  SD memory card interface  Ethernet network interface  GPS  LED shields  Prototyping shields
  • 15.  Alarm Clock  http://hackaday.com/2011/07/04/alarm-clock-forces-you-to-play-tetris-to-prove-you-are-awake/
  • 17.  Automatic PetWater Dispenser  http://hackaday.com/2011/05/24/automated-faucet-keeps-your-cat-watered/
  • 19.  Get the hardware  Buy an Arduino UNO  Buy (or repurpose) a USB cable  Get the software  http://arduino.cc/en/GuideHomePage  Follow the instructions on this page to install the software  Connect the Arduino to your computer  You are ready to go!
  • 20.  Blink the onboard LED Congratulations!!!
  • 21. /* Blink . . . */ // set the LED on // wait for a second  These are comments  The computer ignores them  Humans can read them to learn about the program
  • 22. void setup() { pinMode(13, OUTPUT); }  Brackets { and } contain a block of code  Each line of code in this block runs sequentially  void setup() tells the program to only run them once  When the board turns on  When the reset button is pressed
  • 23. void setup() { pinMode(13, OUTPUT); }  Tells the Arduino to setup pin 13 as an Output pin  Each pin you use needs be setup with pinMode  A pin can be set to OUTPUT or INPUT
  • 24. void loop() { digitalWrite(13, HIGH); delay(1000); digitalWrite(13, LOW); delay(1000); }  void loop () runs the code block over and over until you turn off the Arduino  This code block only runs after setup is finished
  • 25. void loop() { digitalWrite(13, HIGH); delay(1000); digitalWrite(13, LOW); delay(1000); }  HIGH tells the Arduino to turn on the output  LOW tells theArduino to turn off the output  13 is the pin number
  • 26. void loop() { digitalWrite(13, HIGH); delay(1000); digitalWrite(13, LOW); delay(1000); }  Code runs very fast  Delay tells theArduino to wait a bit  1000 stands for 1,000 milliseconds or one second
  • 27. void loop() { digitalWrite(13, HIGH); delay(500); digitalWrite(13, LOW); delay(500); }  Change the 1000’s to 500  Upload the code to the Arduino  What happens now?
  • 28.  These pins are used to communicate with the outside world  When an output pin is HIGH, it can provide 5V at 40mA maximum  Trying to get more than 40mA out of the pin will destroy the Microprocessor!  When the output pin is LOW, it provides no current  You can use a transistor and/or a relay to provide a higher voltage or more current
  • 29.  Most LEDs will work with 5V at 20mA or 30mA  Make sure to check them before connecting to your Arduino! – Use your volt meter  An LED requires a resistor to limit the current  Without the resistor, the LED will draw too much current and burn itself out
  • 30.  LEDs are polarized devices  One side needs to be connected to + and one side needs to be connected to –  If you connect it backwards, it will not light  Usually:  Minus is short lead and flat side  Plus is long lead and rounded side  A resistor is non-polarized  It can be connected either way
  • 31.  Connect the two LEDs on the breadboard  Modify the code to blink the second LED, too  Blink them all
  • 32.  The pins can be used to accept an input also  Digital pins can read a voltage (1) or no voltage (0)  Analog pins can read voltage between 0V and 5V.You will read a value of 0 and 1023.  Both of these return a value you can put into a variable and/or make decisions based on the value
  • 33.  Example int x; x = digitalRead(2); if ( x == HIGH ) { digitalWrite(13, HIGH); } else { digitalWrite(13, LOW); }
  • 34.  A push button can be connected to a digital pin  There is an open circuit normally  There is a closed circuit when pressed  If connected between 5V and a pin, we get 5V when pressed, but an open circuit when not pressed  This is a problem – we need 0V when not pressed
  • 35.  There is a solution  A resistor to 5V will make the pin HIGH when the button is not pressed  Pressing it will make the pin LOW  The resistor makes sure we don’t connect 5V directly to Ground
  • 36.  This is a common method for using push buttons  The resistor is called a “Pull Up Resistor”  TheArduino has built in pull up resistors on the digital pins  We need to enable them when we need them
  • 37.  This code enables the pull up resistor: pinMode(2, INPUT); digitalWrite(2, HIGH); Or, the one line version: pinMode(2, INPUT_PULLUP);
  • 38.  Connect a push button  Load the basic button code  Turn LEDs on/off based on button press  Load the toggle code. Pay attention to reactions to your button presses, and count in the Serial terminal.  Try again with the debounce code. Did that help?
  • 39.  There are many other devices you can connect to an Arduino  Servos to move things  GPS to determine location/time  RealTime Clock to know what time it is  Accelerometers, Chemical detectors…  LCD displays  Memory cards  More!
  • 40.  So far we’ve dealt with the on/off digital world.  Many interesting things we want to measure (temperature, light, pressure, etc) have a range of values.
  • 41.  Very simple analog input – used to control volume, speed, and so on.  It allows us to vary two resistance values.
  • 42.  You can communicate between the Arduino and the computer via the USB cable.  This can help you out big time when you are debugging.  It can also help you control programs on the computer or post information to a web site. Serial.begin(9600); Serial.println(“Hello World.”);
  • 43.  Connect potentiometer  Upload and run code  Turn the knob  Watch the value change in the Serial Monitor
  • 44.  There are many, many sensors based on varying resistance: force sensors, light dependent resistors, flex sensors, and more  To use these you need to create a ‘voltage divider’.
  • 46.  R2 will be our photocell  R1 will be a resistor of our choice  Rule of thumb is: R1 should be in the middle of the range.
  • 47.  Wire up the photocell  Same code as Lab 3  Take note of the max and min values  Try to pick a value for a dark/light threshold.
  • 48.  Flashing a light is neat, but what about fading one in and out?  Or changing the color of an RGB LED?  Or changing the speed of a motor?
  • 50.  Wire up the Breadboard  Load the code.Take note of the for loop.  Watch the light fade in and out  Experiment with the code to get different effects
  • 51.  So far we’ve communicated with the world by blinking or writing to Serial  Let’s make things move!
  • 52.  Used in radio controlled planes and cars  Good for moving through angles you specify #include <Servo.h> Servo myservo; void setup() { myservo.attach(9); } void loop() {}
  • 53.  Wire up the breadboard  Upload the code  Check it out, you can control the servo!  The map function makes life easy and is very, very handy: map(value, fromLow, fromHigh, toLow, toHigh);
  • 54.  Upload the code for random movement.  Watch the values in the Serial monitor. Run the program multiple times. Is it really random?  Try it with ‘randomSeed’, see what happens.
  • 55.  For moving and spinning things  Are cheap and can often be taken from old and neglected toys (or toys from Goodwill)  Here we learn three things:  Transistors  Using PWM to control speed  Why you don’t directly attach a motor
  • 56.  Wire it up  Speed it up, slow it down (rawhide!)
  • 57.  With a piezo or small speaker, your Arduino can make some noise, or music (or ‘music’).  As with game controllers, vibrating motors can stimulate the sense of touch.  Arduino projects exist that involve smell (breathalyzer, scent generators).  For taste…KegBot? ZipWhip’s cappuccino robot?
  • 58.  Combine previous projects (photocell and the piezo playing music) to create an instrument that generates a pitch based on how much light is hitting the photocell  Feel free to get really creative with this.
  • 59.  We have learned  The Arduino platform components  how to connect an Arduino board to the computer  How to connect LEDs, buttons, a light sensor, a piezo buzzer, and motors  How to send information back to the computer
  • 60.  http://www.arduino.cc  Getting StartedWith Arduino (Make: Projects) book  BeginningArduino book  Arduino: A Quick Start Guide book  The adafruit learning system: https://learn.adafruit.com/
  • 61.  Adafruit http://www.adafruit.com/  Spark Fun http://www.sparkfun.com/  Maker Shed http://www.makershed.com/  Digikey http://www.digikey.com/  Mouser http://www.mouser.com/  Radio Shack http://www.radioshack.com/  Find parts: http://www.octopart.com/  Sometimes Amazon has parts too  Ebay can have deals but usually the parts are shipped from overseas and take a long time
  • 63.  Electronic devices depend on the movement of electrons  The amount of electrons moving from one molecule to another is called Current which is measured in Amps  Batteries provide a lot of electrons that are ready to move  The difference in potential (the number of free electrons) between two points is called Electromotive Force which is measured in Volts
  • 64.  Materials that allow easy movement of electrons are called Conductors  Copper, silver, gold, aluminum are examples  Materials that do not allow easy movement of electrons are called Insulators  Glass, paper, rubber are examples  Some materials are poor conductors and poor insulators.  Carbon is an example
  • 65.  Materials that aren’t good conductors or good inductors provide Resistance to the movement of electrons  Resistance is measured in Ohms
  • 66.  Electrons flow from the negative terminal of the battery through the circuit to the positive terminal.  But – when they discovered this, they thought current came from the positive terminal to the negative  This is called conventional current flow I Oops!
  • 67.  There needs to be a complete circuit for current to flow No Flow! Current will Flow!
  • 68.  Volts, Amps and Ohms are related  This is called Ohms Law I = Current in Amps E = EMF inVolts R = Resistance in Ohms I=E R
  • 69.  Example  BAT = 9 volts  R1 = 100 ohms  How many amps?  I = 0.09 Amps or 90mA I= 9V 100W
  • 70.  When dealing with really big numbers or really small numbers, there are prefixes you can use  k = kilo = 1,000 (e.g. 10 kHz = 10,000 Hz)  M = mega = 1,000,000 (e.g 1 MHz = 1,000 kHz)  m = milli = 1/1,000 (e.g 33mA = 0.033A)  u = micro = 1/1,000,000 (e.g 2uV = 0.000002V)  n = nano = 1/1,000,000,000  p = pico = 1/1,000,000,000,000