arduino( - cs.ubc.cacs543/2015w2/classnotes/543-cw03b-ardui… ·...
TRANSCRIPT
![Page 1: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/1.jpg)
Arduino
part 1: the beginning
Labs and suppor4ng material were devised in collabora4on with Camille Mousse<e -‐ Umeå Ins4tute of Design. Core assignment is adapted with permission from Mouse<e’s August 2011 workshop at UBC. image from Fritzing.org
![Page 2: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/2.jpg)
What is Arduino?
• Arduino Board (I/O device with microcontroller)
• Arduino IDE (programming applica4on)
• Open Source hardware + community • h<p://www.arduino.cc
• Many varia4ons
![Page 3: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/3.jpg)
Arduino Family (ever changing!)
Uno R3 + Arduino soXware = official reference designs (original: Nov 2011)
Mega more channels
Mini ,ny jobs
Fio wireless; XBee
Lilypad wearables
![Page 4: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/4.jpg)
Useful Peripherals (examples)
![Page 5: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/5.jpg)
As of 2016 Jan: • Atmel microcontroller:
ATMega328P • 14 digital I/O pins (6 PWM) • 6 analog inputs • 16 MHz crystal oscillator • USB connec4on • power jack • reset bu<on
Uno Overview https://www.arduino.cc/en/Main/ArduinoBoardUno
![Page 6: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/6.jpg)
Atmel microcontroller -‐ ATMega processor family ATmega328
Uno: Processor
![Page 7: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/7.jpg)
Uno: External Power Connections
power supply -‐ DC or USB auto-‐switching on newer boards (including R3) jumper on older boards
USB
DC jack
![Page 8: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/8.jpg)
Uno: Serial Communication
USB/Serial communica4on (TX/RX)
![Page 9: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/9.jpg)
Uno: Digital I/O
14 digital I/O pins @ 20 Amps DC (6 usable as PWM outputs)
![Page 10: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/10.jpg)
Uno: onboard LED indicator
Pin 13 has an onboard LED a<ached
![Page 11: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/11.jpg)
Uno: analog input
6 analog input lines (A0-‐A5) 10 bits (1024 values) -‐-‐ measured from GND to 5V
![Page 12: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/12.jpg)
Uno: power output & other special lines
Your breadboard can access the Arduino’s Power, Ground, Reset, 5V, 3.3V
![Page 13: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/13.jpg)
Uno: physical reset button & ICSP
Physically reset the Uno board (restart the loaded program); or externally program it using the ICSP block (more advanced)
![Page 14: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/14.jpg)
Arduino IDE (integrated development environment)
h<p://www.arduino.cc
plain old c, but friendlier Install USB driver first
Follow well-‐illustrated instruc4ons for your OS at:
h<p://arduino.cc/en/Guide/HomePage
![Page 15: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/15.jpg)
import libraries + ini4alize variables
setup() runs once at start
loop() runs non-‐stop un4l power off
structure of “Blink” program
![Page 16: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/16.jpg)
IDE controls
![Page 17: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/17.jpg)
hardware context of Blink
![Page 18: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/18.jpg)
add a digital bu<on using a breadboard
![Page 19: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/19.jpg)
conver4ng rotary to linear mo4on
![Page 20: Arduino( - cs.ubc.cacs543/2015W2/classNotes/543-cw03b-ardui… · Arduino(part1:(the(beginning(Labs(and(suppor4ng(material(were(devised(in(collaboraon(with(Camille( Mousse](https://reader034.vdocument.in/reader034/viewer/2022042203/5ea4202bad6310687f32bd7c/html5/thumbnails/20.jpg)
Tinkering
Tinkering is what happens when you try something you don't quite know how to do, guided by whim, imagina4on, and curiosity. When you 4nker, there are no instruc4ons, but there are also no failures, no right or wrong way of doing things. It's about figuring out how things work and reworking them.
—Massimo Banzi