OpenSourceDay 2012 - 24 novembre 2012

Arduino
l'esperienza di IRES FVG
Mirco Piccin aka pitusso
mirco.piccin@xuni.it



                   CC BY-SA
Cos'è Arduino
Arduino è una piattaforma di prototipazione elettronica
                       OpenSource
basata su hw e sw semplici da usare.




In sostanza un microcontrollore (ATmel) con intorno
l'elettronica e un ide (ambiente di sviluppo) per utilizzarlo in
modo semplice
                            CC BY-SA
Easy to use!

Arduino è dotato di porta
usb per connettersi al pc,
i pin sono facilmente accessibili
per una rapida prototipazione



                                    IDE con 6 bottoni:
                                    essenziale, molto semplice,
                                    rende possibile lavorare
                                    con i microcontrollori anche
                                    ai profani!


                           CC BY-SA
La community




Arduino è anche e soprattutto la community che lo
utilizza, ne parla, condivide conoscenze e progetti, lo
apprende, ci lavora, ci gioca ...

                         CC BY-SA
Boards




  Arduino UNO R3      Arduino Leonardo    Arduino DUE




  Arduino MEGA 2560   Arduino MEGA ADK   Arduino Ethernet




     Arduino Mini       Arduino Micro    Arduino LilyPad
                          CC BY-SA
Shields




    Wifi Shield        Ethernet Shield   Motor Shield




                                                 ..e molti altri...




 Wireless SD Shield   GSM/GPRS Shield




                              CC BY-SA
ambiti di utilizzo

  ●   domotica
  ●   monitoraggio energetico/ambientale
  ●   robotica (controllati o droni)
  ●   automazione industriale
  ●   medicina e assistenza
  ●   arte e design
  ●   prototipazione 3d
  ●   prototipazione elettronica
  ●   tempo libero
  ●   ....
                                              Approfondimenti:
                                OpenHardware: Arduino @LD2011
                                     Arduino nella PMI @LD2012
                     CC BY-SA
Dettagli del corso

"Tecniche di sviluppo di oggetti interattivi con Arduino"

Docenti:
Michele Viel
Mirco Piccin
Uwe Federer
Tutor:
Massimiliano Basello

                                                                       Moduli :
                                     Comprendere la piattaforma di Arduino
               Predisporre le fasi di realizzazione del prototipo con Arduino
                         Project work – Realizzare il prototipo con Arduino


                      per un totale di 60 ore

                                 CC BY-SA
Programma del corso : dettaglio 1/3

                  Comprendere la piattaforma di Arduino

  L’unità intende fornire tutte le abilità necessarie per applicare con successo
     il metodo del tinkering e del circuit bending, per riconoscere le
    componenti di un circuito elettronico e la relativa applicazione con la
  piattaforma Arduino oltre che la capacità di realizzare semplici circuiti e
                   applicare semplici blink di programmazione.




              - Principi e concetti di introduzione
              - I componenti hardware di Arduino




                                  CC BY-SA
Programma del corso : dettaglio 2/3

       Predisporre le fasi di realizzazione del prototipo con Arduino

  L’unità intende fornire tutte le conoscenze relative alle principali tecniche di
    rappresentazione grafica sia bidimensionale che tridimensionale di parti
  solide. Tali abilità sono fondamentali per ‘schizzare’ l’idea progettuale
    dell’oggetto interattivo e preventivare la composizione in termini di
  materiali e parti elettroniche e/o meccaniche se necessarie. L’unità, inoltre,
  è volta a fornire abilità nella programmazione degli step del processo
                        di produzione dell’oggetto interattivo.



          - Sviluppo creativo e concettuale dell’idea
                - Ipotesi delle fasi di lavorazione


                                   CC BY-SA
Programma del corso : dettaglio 3/3

               Project work – Realizzare il prototipo con Arduino

L’unità intende fornire tutte le competenze necessarie per realizzare il prototipo
     di un oggetto interattivo. [...] fornire le abilità relative all’applicazione della
programmazione dei micro controller attraverso il software IDE della piattaforma
    Arduino, alla predisposizione di tutte le componenti (elettroniche e non) che
   comporranno il prototipo, alla realizzazione di tutti i circuiti e alla relativa
 valutazione di corretto funzionamento. [...] La possibilità di sperimentare su un’
idea progettuale individuata dai partecipanti tutte le singole fasi di realizzazione del
            prototipo permetterà una maggior efficacia di apprendimento.


                 - Il software (Arduino IDE)
- Modalità di programmazione di un dispositivo interattivo
     - Attuazione del prototipo con il kit di Arduino


                                      CC BY-SA
Partecipanti: formazione




                   CC BY-SA
Modello di insegnamento

           ●   doing
Learn by   ●   examples
           ●   direct experience




                         CC BY-SA
Aspetti di elettronica affrontati
 input, output
 bottoni, potenziometri, led, buzzer, lcd, ...

 sensori
 luce, suono, corrente, colore, temperatura...

 attuatori
 relay, transistor, ...

 espansioni
 rete Wifi e Wired, SD, RFID, bluetooth, ...

 ..e driver, espansioni I2C, shift register, .... anche secondo
 le esigenze emerse dai progetti



                                         CC BY-SA
Aspetti di programmazione affrontati
  input, output
  digitalRead, digitalWrite

  sensori
  analogRead

  attuatori
  digitalWrite, analogWrite

  espansioni
  library


  ...e funzioni, variabili e costanti, blocchi condizionali, ...


                                     CC BY-SA
Project work

  - realizzare lo schema di funzionamento (disegno / flowchart / ...):
  input, computazione, output
  - che cosa serve per la realizzazione? Varianti / opzioni e
  considerazioni su componenti (costi, dimensioni, supporto,
  etc etc);
  - contestuale realizzazione prototipo (scrittura firmware +
  eventuale breadboard)
  - test su prototipo e perfezionamenti
  - rendere stabile/definitivo il circuito (eventuali millefori / proto
  shield / pcb / etc)
  - package: dove lo metto (inscatolamento)?




                               CC BY-SA
Documentazione e condivisione
  - viene richiesto che tutta la documentazione, flow chart, eventuali
  foto prodotti durante il corso, vadano tenuti in uno spazio online
  condiviso tra docenti e corsisti

  - piattaforma di scambio email / newsletter / chat per eventuali
  comunicazioni dentro e fuori il corso utilizzata regolarmente da
  IRES FVG: Dokeos (OpenSource e-learning system)




                               CC BY-SA
Progetti realizzati dai corsisti




                     CC BY-SA
Spectroduino



 "Uno strumento di laboratorio per
 misure di luminanza e cromaticità"




                            CC BY-SA
i-Therm
"Il progetto consiste nel realizzare un primo sistema generico e minimale in
grado di rilevare la corrente passante attraverso un determinato ramo
della rete elettrica e una temperatura ambiente. Questi due valori sono
rappresentativi di una popolazione di misure simili che in un futuro serviranno a
dosare l’energia con parsimonia.

Un requisito fondamentale
della misura di potenza è
quello di non necessitare
interventi sull’impianto
elettrico.
Il dispositivo deve essere in
grado di comunicare
immediatamente con l’
esterno mediante dei LED."




                                   CC BY-SA
Line Control
  "Stazione di controllo domotico via internet; Arduino, connesso alla
  lan, dovrebbe poter controllare l'azionamento di qualche dispositivo
  controllandone i consumi elettrici e potendo intervenire con il distacco
  degli stessi al superamento di determinate soglie di consumo elettrico."




                                CC BY-SA
Controllo Ventole
"Controller per ventole pc, magari con un piccolo display per visualizzare
velocità ventole e forse un sensore di temperatura, qualche pulsante per
variarne la velocità o settarlo in modalità termocontrollata dal sensore."




                                CC BY-SA
Sistema anti-crash per elicottero RC

  "Hackare un elicottero
  radiocomandato che ho qui a caso
  ed in pratica con arduino fare un
  sistema di controllo che legge i
  segnali del radiocomando e usando
  dei sensori di distanza (credo
  bastino 4) , 3 accelerometri ed
  eventualmente dei sensori per la
  misura della velocità e pressione
  sia in grado di evitare eventuali
  ostacoli e mantenere la posizione
  nello spazio se si trova in aria e non
  si agisce sui comandi."




                                   CC BY-SA
Cubo led 4x4x4




                 CC BY-SA
Fades Walkman
 "La caratteristica di Fades è quella di essere una musica generativa,
 ossia non registrata o basata su campioni, ma generata in tempo reale
 con tecniche di sintesi elettronica e quella di essere costituita
 esclusivamente da onde sinusoidali pure accordate in Just Intonation."




                              CC BY-SA
GPS Connect
 "Alla pressione del bottone, rilevo posizione GPS ed invio via GSM/GPRS
 le coordinate ad un sito. Sul sito, su una mappa (google o osm), appare il
 punto da cui è partito il segnale."




                                CC BY-SA
domande?




                Mirco Piccin aka pitusso
                mirco.piccin@xuni.com

Per i riferimenti alle risorse citate, è possibile click-are sulle immagini delle singole slide!
                 Tutti i marchi riportati appartengono ai legittimi proprietari.

                                       CC BY-SA

Arduino : l'esperienza di IRES FVG - OpenSourceDay2012

  • 1.
    OpenSourceDay 2012 -24 novembre 2012 Arduino l'esperienza di IRES FVG Mirco Piccin aka pitusso mirco.piccin@xuni.it CC BY-SA
  • 2.
    Cos'è Arduino Arduino èuna piattaforma di prototipazione elettronica OpenSource basata su hw e sw semplici da usare. In sostanza un microcontrollore (ATmel) con intorno l'elettronica e un ide (ambiente di sviluppo) per utilizzarlo in modo semplice CC BY-SA
  • 3.
    Easy to use! Arduinoè dotato di porta usb per connettersi al pc, i pin sono facilmente accessibili per una rapida prototipazione IDE con 6 bottoni: essenziale, molto semplice, rende possibile lavorare con i microcontrollori anche ai profani! CC BY-SA
  • 4.
    La community Arduino èanche e soprattutto la community che lo utilizza, ne parla, condivide conoscenze e progetti, lo apprende, ci lavora, ci gioca ... CC BY-SA
  • 5.
    Boards ArduinoUNO R3 Arduino Leonardo Arduino DUE Arduino MEGA 2560 Arduino MEGA ADK Arduino Ethernet Arduino Mini Arduino Micro Arduino LilyPad CC BY-SA
  • 6.
    Shields Wifi Shield Ethernet Shield Motor Shield ..e molti altri... Wireless SD Shield GSM/GPRS Shield CC BY-SA
  • 7.
    ambiti di utilizzo ● domotica ● monitoraggio energetico/ambientale ● robotica (controllati o droni) ● automazione industriale ● medicina e assistenza ● arte e design ● prototipazione 3d ● prototipazione elettronica ● tempo libero ● .... Approfondimenti: OpenHardware: Arduino @LD2011 Arduino nella PMI @LD2012 CC BY-SA
  • 8.
    Dettagli del corso "Tecnichedi sviluppo di oggetti interattivi con Arduino" Docenti: Michele Viel Mirco Piccin Uwe Federer Tutor: Massimiliano Basello Moduli : Comprendere la piattaforma di Arduino Predisporre le fasi di realizzazione del prototipo con Arduino Project work – Realizzare il prototipo con Arduino per un totale di 60 ore CC BY-SA
  • 9.
    Programma del corso: dettaglio 1/3 Comprendere la piattaforma di Arduino L’unità intende fornire tutte le abilità necessarie per applicare con successo il metodo del tinkering e del circuit bending, per riconoscere le componenti di un circuito elettronico e la relativa applicazione con la piattaforma Arduino oltre che la capacità di realizzare semplici circuiti e applicare semplici blink di programmazione. - Principi e concetti di introduzione - I componenti hardware di Arduino CC BY-SA
  • 10.
    Programma del corso: dettaglio 2/3 Predisporre le fasi di realizzazione del prototipo con Arduino L’unità intende fornire tutte le conoscenze relative alle principali tecniche di rappresentazione grafica sia bidimensionale che tridimensionale di parti solide. Tali abilità sono fondamentali per ‘schizzare’ l’idea progettuale dell’oggetto interattivo e preventivare la composizione in termini di materiali e parti elettroniche e/o meccaniche se necessarie. L’unità, inoltre, è volta a fornire abilità nella programmazione degli step del processo di produzione dell’oggetto interattivo. - Sviluppo creativo e concettuale dell’idea - Ipotesi delle fasi di lavorazione CC BY-SA
  • 11.
    Programma del corso: dettaglio 3/3 Project work – Realizzare il prototipo con Arduino L’unità intende fornire tutte le competenze necessarie per realizzare il prototipo di un oggetto interattivo. [...] fornire le abilità relative all’applicazione della programmazione dei micro controller attraverso il software IDE della piattaforma Arduino, alla predisposizione di tutte le componenti (elettroniche e non) che comporranno il prototipo, alla realizzazione di tutti i circuiti e alla relativa valutazione di corretto funzionamento. [...] La possibilità di sperimentare su un’ idea progettuale individuata dai partecipanti tutte le singole fasi di realizzazione del prototipo permetterà una maggior efficacia di apprendimento. - Il software (Arduino IDE) - Modalità di programmazione di un dispositivo interattivo - Attuazione del prototipo con il kit di Arduino CC BY-SA
  • 12.
  • 13.
    Modello di insegnamento ● doing Learn by ● examples ● direct experience CC BY-SA
  • 14.
    Aspetti di elettronicaaffrontati input, output bottoni, potenziometri, led, buzzer, lcd, ... sensori luce, suono, corrente, colore, temperatura... attuatori relay, transistor, ... espansioni rete Wifi e Wired, SD, RFID, bluetooth, ... ..e driver, espansioni I2C, shift register, .... anche secondo le esigenze emerse dai progetti CC BY-SA
  • 15.
    Aspetti di programmazioneaffrontati input, output digitalRead, digitalWrite sensori analogRead attuatori digitalWrite, analogWrite espansioni library ...e funzioni, variabili e costanti, blocchi condizionali, ... CC BY-SA
  • 16.
    Project work - realizzare lo schema di funzionamento (disegno / flowchart / ...): input, computazione, output - che cosa serve per la realizzazione? Varianti / opzioni e considerazioni su componenti (costi, dimensioni, supporto, etc etc); - contestuale realizzazione prototipo (scrittura firmware + eventuale breadboard) - test su prototipo e perfezionamenti - rendere stabile/definitivo il circuito (eventuali millefori / proto shield / pcb / etc) - package: dove lo metto (inscatolamento)? CC BY-SA
  • 17.
    Documentazione e condivisione - viene richiesto che tutta la documentazione, flow chart, eventuali foto prodotti durante il corso, vadano tenuti in uno spazio online condiviso tra docenti e corsisti - piattaforma di scambio email / newsletter / chat per eventuali comunicazioni dentro e fuori il corso utilizzata regolarmente da IRES FVG: Dokeos (OpenSource e-learning system) CC BY-SA
  • 18.
    Progetti realizzati daicorsisti CC BY-SA
  • 19.
    Spectroduino "Uno strumentodi laboratorio per misure di luminanza e cromaticità" CC BY-SA
  • 20.
    i-Therm "Il progetto consistenel realizzare un primo sistema generico e minimale in grado di rilevare la corrente passante attraverso un determinato ramo della rete elettrica e una temperatura ambiente. Questi due valori sono rappresentativi di una popolazione di misure simili che in un futuro serviranno a dosare l’energia con parsimonia. Un requisito fondamentale della misura di potenza è quello di non necessitare interventi sull’impianto elettrico. Il dispositivo deve essere in grado di comunicare immediatamente con l’ esterno mediante dei LED." CC BY-SA
  • 21.
    Line Control "Stazione di controllo domotico via internet; Arduino, connesso alla lan, dovrebbe poter controllare l'azionamento di qualche dispositivo controllandone i consumi elettrici e potendo intervenire con il distacco degli stessi al superamento di determinate soglie di consumo elettrico." CC BY-SA
  • 22.
    Controllo Ventole "Controller perventole pc, magari con un piccolo display per visualizzare velocità ventole e forse un sensore di temperatura, qualche pulsante per variarne la velocità o settarlo in modalità termocontrollata dal sensore." CC BY-SA
  • 23.
    Sistema anti-crash perelicottero RC "Hackare un elicottero radiocomandato che ho qui a caso ed in pratica con arduino fare un sistema di controllo che legge i segnali del radiocomando e usando dei sensori di distanza (credo bastino 4) , 3 accelerometri ed eventualmente dei sensori per la misura della velocità e pressione sia in grado di evitare eventuali ostacoli e mantenere la posizione nello spazio se si trova in aria e non si agisce sui comandi." CC BY-SA
  • 24.
  • 25.
    Fades Walkman "Lacaratteristica di Fades è quella di essere una musica generativa, ossia non registrata o basata su campioni, ma generata in tempo reale con tecniche di sintesi elettronica e quella di essere costituita esclusivamente da onde sinusoidali pure accordate in Just Intonation." CC BY-SA
  • 26.
    GPS Connect "Allapressione del bottone, rilevo posizione GPS ed invio via GSM/GPRS le coordinate ad un sito. Sul sito, su una mappa (google o osm), appare il punto da cui è partito il segnale." CC BY-SA
  • 27.
    domande? Mirco Piccin aka pitusso mirco.piccin@xuni.com Per i riferimenti alle risorse citate, è possibile click-are sulle immagini delle singole slide! Tutti i marchi riportati appartengono ai legittimi proprietari. CC BY-SA