How to Build a Digital-Physical System-Lab Assegid Kidané Fall 2012
Outline Week 1- Introduction, overview, breadboard, safety, rules, Fritzing, LED demo Week 2 - Basic electronics, components, ohms law, conventions, test equipment, Wire stripping and soldering Week 3 - Arduino hardware and software Week 4 and on - Various functions and combination setups
The Big Picture
Steps Define problem and goals clearly Develop flowchart and algorithm Select main components Develop hardware and software Put it together and test Iterate until goals are met
Outline Electricity/Water analogy Electrical/Electronic circuit elements Basic formulae Reading and drawing schematics Using datasheets Microcontrollers, Arduino, Sensors, Actuators, Media Software environments Experiential media integration
Goal Basic electronics Use of Arduino environment Interactive environment design
Circuit Elements Resisitors, Capacitors, Diodes, Transistors Integrated Circuits Subgroup of ICs Microcontrollers (pic, Atmega etc.) Microcontroller development boards Arduino
Breadboarding Provides connectivity Allows reconfiguration
Connectivity Under the Hood
Breadboard in Kit
Wiring Pattern
Soldering Make permanent connections on the PCB
Test Equipment Multimeter Oscilloscope Signal Generator Power Supply Logic Analyzer Hand tools
Multimeter Use to measure Voltage, Current and Resistance Some measure frequency, capacitance, temperature and more *** Caution*** Take extra care when measuring current Start with a selection higher than the highest expected value
Oscilloscope Provides detailed graphic representation of signals Essential for signals with ac components Usefull for monitoring noise
Datasheets Your crucial companion Consult the manufacturer's datasheet if unsure of a device's specific behaviour Of special interest Pinouts Absolute maximum ratings Typical application circuit
PCB Design Eagle software
Eagle 6.02 Details Easy to use Output files compatible with and accepted by most PCB fabs IDE available for Windows, Mac and Linux Frequently updated library Freeware version available limited to 100 x 80 mm boards, 2 signal layers and 1 sheet
Fabrication!
General Architecture Participatory Environment ( Installation, Performance) Sensing Data Processing Actuation and Feedback
environment sensing Computing Feedback & Actuators
Sensors Motion Position, Acceleration, Rotation Pressure Light Sound Temperature Biometric sensors
Some Sensors
Data Processing Desktop, Laptop Single Board Computer (SBC, Raspberry pi, Beagleboard) Physical Computing Platform (Arduino, Parallax, mbed) Develop using a microcontroller (Pic, Atmega, 8051)
Some Processors
Introduction to the Arduino Environment Arduino Uno Arduino mini (Stamp) Arduino mini pro (5V, 3.3V, 8Mhz, 16Mhz) Arduino Mega Arduino Nano Arduino Lilypad ATmega Micro controllers Bootloader Installed Open Source IDE for Windows, OSx and Linux
Arduino Uno 14 Digital I/Os 6 Analog Inputs 6 PWM Outputs USB Connectivity and Programming USB bus or External Power 16MHz Clock and 32KB Flash Memory
Arduino Uno Cont’d USB Port External Power Digital I/Os, PWM, Serial Port Analog Inputs Power and Reset
Arduino Mini Pro Small footprint 16k Flash Program ROM 14 Digital and 6 Analog I/Os All UNO features except it needs external hardware for programming
Arduino Nano Most Versatile Arduino Arduino Mini(stamp) with built-in USB interface and ICSP header All desirable features of Atmega 328 controller All analog inputs available in standard DIP layout
Other Hardware Include ArduinoBT ArduinoXBee Wee Various Sheilds
Arduino Programming Simple Fast No programming hardware needed*
Sample Code Read a sensor Data = analogRead(pin) Control analog devices(motor, light, etc) analogWrite(pin, strength) Read a digital signal digitalRead(pin) Output a digital signal digitalWrite(pin, HIGH)
Output & Actuation Video displays, Projectors Speakers Lights Motors Haptic feedback devices
Actuators & Output Devices
Max/MSP Allows sophisticated audio and video manipulation and feedback Puredata for an OpenSource alternative with little graphics Many objects exist to interface with almost anything. Either direct or from 3 rd party developers.
Experiential Media System
Lab Class Kit Arduino Uno LEDs (4) RGB LEDs (3) Stepper motor Stepper driver FSR Piezzo CDS light sensor Mini breadboard USB cable Push button switch IR ranger IR ranger connector 10K potentiometer
AME Digital Culture Kit
Collect Checkout Forms and Regulation Sheet Tool checkout form Electronic Kit checkout form Lab and equipment maintenance regulations
Safety Considerations Avoid cobweb wiring Monitor current consumptionwhen using power supplies Use solid wires on breadboards
LED Demo Power from Arduino Use push button switch to turn LED on
Resources Books Physical Computing, O'Sullivan and Igoe The Art of Electronics, Horowitz and Hill
Web and Contact Info (cell)
Questions?? Thank you