Top Banner
Making things sense Day 3: Basic Electronics with DFRduino
43

Arduino Training - Day 3.ppt

Jan 21, 2016

Download

Documents

Cassio Paz
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Arduino Training - Day 3.ppt

Making things sense

Day 3:Basic Electronics with DFRduino

Page 2: Arduino Training - Day 3.ppt

Schedule – Day 3

Basic electronics•Arduino in detail•

• Introduction Activity

• Activity

Page 3: Arduino Training - Day 3.ppt

Making things sense

Page 4: Arduino Training - Day 3.ppt

Books

Page 5: Arduino Training - Day 3.ppt

Physical computing

Transduction•Transforming energy•

Digital and analog•Parallel and serial•Stages of input, output and•processing

Page 6: Arduino Training - Day 3.ppt

OverviewWorkshop hardware components•

http://www.littlebirdelectronics.com/ http://toysdownunder.com/Parts:•Physical computing•Arduino board•Arduino code•Arduino IDE•Writing a program•Download and install Arduino•Arduino Hello World / Blink•

http://www.ladyada.net/learn/arduino/index.htmlTutorials:•http://www.sparkfun.com/commerce/tutorials.php

Page 7: Arduino Training - Day 3.ppt

Arduino starter kit

Page 8: Arduino Training - Day 3.ppt

Arduino code

Code in a C-like high-level language (Wiring)•Inbuilt functions to read and set digital and analog•inputs and outputs

Includes libraries to perform common hardware•or software tasks

Sketches•Many language bindings:•

Flash & Flex, Processing, Python, Ruby, Java,C. C++,•Objective-C, .NET

Page 9: Arduino Training - Day 3.ppt

Arduino IDE

Page 10: Arduino Training - Day 3.ppt

Breadboard basics

Page 11: Arduino Training - Day 3.ppt

Blink circuit

Connections

Schematic

LED: Anode / Cathode

Page 12: Arduino Training - Day 3.ppt

Arduino IDE install

Install Arduino 22 (http://www.arduino.cc/en/•Guide/HomePage)

(Install USB driver)•Select serial port•Select board•

Examples: Blink•Compile and upload process•Write to Serialport•

Page 13: Arduino Training - Day 3.ppt

Blink modifications

1. Talk to the serial console

2. Experiment with intervals

3. Change 4. Try this!pins

Page 14: Arduino Training - Day 3.ppt

Basic electronics

Page 15: Arduino Training - Day 3.ppt

Basic electronicsWater analogy•

Page 16: Arduino Training - Day 3.ppt

Basic electronicsCurrent,Voltage and Power•

Voltage is measured in Volts (V) → V•Current is measured in Amperes (A) → I•Power is measured in Watts (W) → P•Power = Current x Voltage (P = I x V)•Arduino•

5V (or 3.3V)•40mA (0.04A) output pin•

Direct current (DC) and alternating current (AC)•Mains is nasty!•

Page 17: Arduino Training - Day 3.ppt

Basic electronicsElectricity flow•

Path of least resistance•All electrical energy must•be used

Basic electrical circuit•Components in series•

Same current, decreasing voltage•Components in parallel•

Different current, same voltage•Short circuit•

Page 18: Arduino Training - Day 3.ppt

Basic electronicsSchematic / Circuit diagram•

Page 19: Arduino Training - Day 3.ppt

Basic electronics

• Resistor• Conductors, insulators and resistance• Resist the flow of electricity (current)• Precise control of electrical current• Measured in Ohm (1Ω - 1MΩ)

• Symbol• Colour-code

Page 20: Arduino Training - Day 3.ppt

Basic electronics

Page 21: Arduino Training - Day 3.ppt

Basic electronics• Types of resistors

Thermistor•Photocell (LDR)•Potentiometer (trim•pot, variable resistor)

Force sensitive resistor•(FSR)

Flex sensor•

Page 22: Arduino Training - Day 3.ppt

Basic electronics

Resistor and resistance•

Resistors in series•R = R1 + R2•

Resistors in parallel•R = R1 x R2 / (R1 + R2)•

Page 23: Arduino Training - Day 3.ppt

Basic electronics

• Diodes and LEDs• Diodes are polarised

• Electricity flows in onedirection

• Anode (+), Cathode (-)• LED (Light-emitting diode)

Page 24: Arduino Training - Day 3.ppt

Basic electronics• Ohm’s law and current limiting

V

I R

Ohm’s triangle

R =V / II =V / RV=IxR

• Data sheets are your friend!

Page 25: Arduino Training - Day 3.ppt

Adjusting brightness

http://www.ladyada.net/learn/arduino/LEDs.html

Page 26: Arduino Training - Day 3.ppt

Basic electronics

• CapacitorStore electricity•

Farad (F) (mF or μF, pF, nF)•Polarised , unpolarised•Ceramic, tantalum, electrolytic•Common sizes:•

22pF / 0.01μF / 0.1μF ceramic•1μF / 10μF electrolytic•

Page 27: Arduino Training - Day 3.ppt

Basic electronics

Capacitors•

Capacitors in series•C = C1 x C2 / (C1 + C2)•

Capacitors in parallel•C = C1 + C2•

Page 28: Arduino Training - Day 3.ppt

The Arduino in detail

Page 29: Arduino Training - Day 3.ppt

OverviewDigital pins•Pull-up and pull-down resistors•Analogue input pins•Pulse with modulation (PWM)•Other•

ICSP•Interrupts•I2C communication•Analogue reference•

Page 30: Arduino Training - Day 3.ppt

Digital pinsPins 0-13 (GPIO pins)•Either input our output (default to input)•Can output 40 mA•pinMode•digitalWrite•

Page 31: Arduino Training - Day 3.ppt

Digital pinsdigitalRead (http://www.ladyada.net/learn/arduino/•lesson5.html)

Page 32: Arduino Training - Day 3.ppt

Digital pinsdigitalRead•

/** Switch test program*/int switchPin = 2; // Switch connected to digital pin 2

void setup() // run once, when the sketch starts{

Serial.begin(9600); // set up Serial library at 9600 bpspinMode(switchPin, INPUT); // sets the digital pin as input to read switch

}

void loop() // run over and over again{

Serial.print("Read switch input: ");Serial.println(digitalRead(switchPin)); // Read the pin and display the valuedelay(100);

}

Page 33: Arduino Training - Day 3.ppt

Digital pinsSwitching•

Page 34: Arduino Training - Day 3.ppt

Digital pinsPull-up and pull-down resistors•

Pull-up

Pull-down

Page 35: Arduino Training - Day 3.ppt

Digital pinsArduino schematic / Reset•

Page 36: Arduino Training - Day 3.ppt

Digital pinsWhat happens if we digitalRead a pin that is not connected?•20K internal pull-up resistor•

Serial pins 0 (RX) and 1 (TX). Connected to FTDI USB-to-TTL•Pin 13 is different (input) (RES + LED)•Analogue pins A0-A5 can be used as digital pins 14-19 (GPIO)•Read up to 5V. Don’t fry your pin!•

Page 37: Arduino Training - Day 3.ppt

Analogue input pinsPins A0-A5•6 channel analog-to-digital (A/D) converter•10 bit resolution (from 0-5V to int 0-1023)•100 microseconds (0.0001 s) to read an analog input,•maximum reading rate is about 10,000 times a second.

Pull-up resistor same as digital pins•Unexpected readings?•

Has pin been set to input?•Check pull-up resistor [digitalWrite(A0, HIGH); ]?•

Page 38: Arduino Training - Day 3.ppt

Analogue input pinsAnalogRead (use A1 instead of 1)•

Page 39: Arduino Training - Day 3.ppt

Pulse with modulationPWM used to create analogue output on digital pins•

Simulate voltage between 5V and 0V using square waves•(signal switching between on and off)

Pins 3, 5, 6, 9, 10, and 11•

Page 40: Arduino Training - Day 3.ppt

• AnalogWrite

Page 41: Arduino Training - Day 3.ppt

Other pinsICSP (In Circuit Serial Programming) directly•program AVR micro-controllers

I2C / TWI (Two-wire interface) communication•Inter IC control•Arduino analog input A4 = I2C SDA (serial data line)•Arduino analog input A5 = I2C SCL (serial clock line)•

External interrupts•Event-handling without polling•Interrupt 0 (on digital pin 2) and 1 (on digital pin 3)•

Analogue reference•Set analogue reference for ADC•

Page 42: Arduino Training - Day 3.ppt

Activity

Page 43: Arduino Training - Day 3.ppt

Activity overviewPair up•Use a switch & LED•Use a poti & LED•Design challenges: http://www.ladyada.net/learn/arduino/•lesson5.html

Draw a circuit diagram•Fade 2 LEDs•Use multicolour LED•http://www.arduino.cc/en/Reference/HomePage•[Use your digital temperature sensor]•