arduino training - day 3.ppt

Post on 21-Jan-2016

75 Views

Category:

Documents

11 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Making things sense

Day 3:Basic Electronics with DFRduino

Schedule – Day 3

Basic electronics•Arduino in detail•

• Introduction Activity

• Activity

Making things sense

Books

Physical computing

Transduction•Transforming energy•

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

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

Arduino starter kit

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

Arduino IDE

Breadboard basics

Blink circuit

Connections

Schematic

LED: Anode / Cathode

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•

Blink modifications

1. Talk to the serial console

2. Experiment with intervals

3. Change 4. Try this!pins

Basic electronics

Basic electronicsWater analogy•

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!•

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•

Basic electronicsSchematic / Circuit diagram•

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

Basic electronics

Basic electronics• Types of resistors

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

Force sensitive resistor•(FSR)

Flex sensor•

Basic electronics

Resistor and resistance•

Resistors in series•R = R1 + R2•

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

Basic electronics

• Diodes and LEDs• Diodes are polarised

• Electricity flows in onedirection

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

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!

Adjusting brightness

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

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•

Basic electronics

Capacitors•

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

Capacitors in parallel•C = C1 + C2•

The Arduino in detail

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

ICSP•Interrupts•I2C communication•Analogue reference•

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

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

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);

}

Digital pinsSwitching•

Digital pinsPull-up and pull-down resistors•

Pull-up

Pull-down

Digital pinsArduino schematic / Reset•

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!•

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); ]?•

Analogue input pinsAnalogRead (use A1 instead of 1)•

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•

• AnalogWrite

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•

Activity

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]•

top related