ARDUINO - Alessandro Contini · 2012-02-13 · Arduino ed un software in esecuzione sul Computer...
Transcript of ARDUINO - Alessandro Contini · 2012-02-13 · Arduino ed un software in esecuzione sul Computer...
ARDUINOWorkshop intensivo di Arduino
NABAFebbraio 2012
http://arduinonaba2012.wordpress.com
Alessandro Contini – [email protected]
disclaimer
In questo workshop si gioca(giocare = mettersi in gioco)
e si impara facendo!
contesto
TINKERING
cosa vuol dire?
“Tinkering is what happens when you try
something you donʼt quite know how to do, guided by
whim, imagination and curiosity”
- M. Banzi
circuit bending
PERCHEʼ UN CORSO SU ARDUINO?
il successo di Arduino
il physical computing“Physical Computing is about prototyping with electronics, turning sensors, actuators and microcontrollers into materials for designers and artists.”
“It involves the design of interactive objects that can communicate with humans using sensors and actuators controlled by a behaviour implemented as software running inside a microcontroller.”
Massimo Banzi,Tinker.it & Arduino Co-Founder
il physical computing
interaction design
una definizione
Alan Cooper, Robert Reimann and Dave Cronin - “About Face 3: The Essentials Of Interaction Design”
interaction design!
COSA CI FACCIO CON ARDUINO?
diy, hacking, tinkering...
COSA Eʼ ARDUINO?
definizione
“Arduino è una piattaforma di prototipazione elettronicaopen-source basata su un connubio hardware e software flessibile e facile da utilizzare”
- Arduino, sito internet
...ovvero?~ Arduino è un dispositivo programmabile in grado di leggere, scrivere ed elaborare dati da fonti esterne
~ Arduino è costituito da una scheda prestampata dalle dimensioni ridotte che permette di collegarlo ad un Computer attraverso una porta USB
~ Arduino può essere programmato grazie allʼutilizzo di un linguaggio di programmazione simil-C attraverso unʼambiente di sviluppo multi piattaforma scaricabile gratuitamente
~ Arduino è destinato ad artisti, designer e chiunque sia appassionato nel creare oggetti ed ambienti interattivi
in pratica
Hardware Software Community+ +
CARATTERISTICHE TECNICHE
comparazione tecnologica
ArduinoIBM 286
schematics
Analog reference pin
Digital groundDigital pins 2-13
Serial In / Out
Power status LED
Reset button
Analog input pins 0-5Power and Ground pins
External Powersupply input
USB connection
External Power /USB Power
switch
DIGITAL vs ANALOG
definizione
Digitale - può assumere due valori, 1 e 0, acceso o spento
Analogico - può assumere molti (infiniti) valori
esempio
glossario
“sketch” - un programma che viene eseguito dal processore“pin” - un Input o Output della scheda“digital” - che può assumere due valori 1 (HIGH) o 0 (LOW)“analog” - può assumere molti valori allʼinterno di un range“schematic drawing” - la rappresentazione grafica di un circuito elettrico
ARDUINO I/O
sensori
attuatori
PROGRAMMARE
programmare...
sketch workflow
1. si scrive un programma
2. si compila il programma (si fa un check degli errori)
3. si carica il programma nel microcontrollore
sketch struttura
> variabili globali
> setup()
> loop()
~ inizializzazione~ definizione dei pin usati
~ corpo del programma~ contiene i comandi~ viene eseguito ripetutamente
HELLO WORLD!
blink a LED!
blink a LED!
blink a LED!
link
COMUNICARE CON ALTRI SOFTWARE
Pure Data
Pduino - link
Processing
Arduino Processing library - link
Processing
Firmata
Firmata è un protocollo di comunicazione tra Arduino ed un software in esecuzione sul
Computer
Firmata library è una libreria nativa compresa nel software Arduino che implementa il protocollo di comunicazione, in modo che non sia necessario scrivere di volta in volta uno sketch Arduino, ma
comandare la scheda direttamente dal software in esecuzione sul Computer
RISORSE E STRUMENTI
link utili
› Sito ufficiale, www.arduino.cc› Forum di Arduino, http://arduino.cc/forum/› Fritzing, http://fritzing.org
› Smart Projects, www.smartprj.com› Sparkfun, www.sparkfun.com› Adafruit, www.adafruit.com
› Top 40 Arduino projects, http://hacknmod.com/hack/top-40-arduino-projects-of-the-web/› Arduino Projects, http://arduino.org/m/articles/index/
› Processing, http://processing.org› Pure Data, http://puredata.info
bibliografia
› Getting started with Arduino, M. Banzi, OʼReilly, link› Making Things Talk, Tom Igoe, OʼReilly, link› Make: Electronics, Charles Platt, OʼReilly, link› Programming Interactivity, Joshua Noble, OʼReilly, link
› About Face 3: The Essentials Of Interaction Design, Alan Cooper, Robert Reimann and Dave Cronin, Wiley Publishing, link
the end!