SlideShare a Scribd company logo
Arduino: domotica open source
                                             Emanuele Palazzetti




      Feedback: http://tinyurl.com/arduinold2011




Perugia, 22 ott 2011    GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                             1
Physical Computing


                                                  Costruire dei sistemi fisici interattivi 
                                                tramite l'uso di software e di hardware 
                                                     in grado di percepire e rispondere 
                                                                    al mondo “analogico”


                                       Può essere visto come un framework creativo


                                Progetti che usano sensori e microcontrollori 
                        per tradurre l'input analogico ad un sistema software



Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                                            2
Arduino
   Sviluppato in Italia dal team Massimo Banzi, David Cuartielles, Tom Igoe,
   Gianluca Martino e David Mellis.


   Framework open-source per la creazione rapida di prototipi


   Licenza Creative Commons Attribution-ShareAlike 3.0


   Dispone di una base software comune che permette di interfacciarsi a
   qualsiasi oggetto elettronico quale computer, sensore, display o
   attuatore


   Ha una grande community


Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                             3
Arduino (2)




                                                 (Arduino Uno)



Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                            4
Arduino (3)




          (Arduino Uno)                  (Arduino Mega 2560)                  (Arduino Ethernet
                                                                                     POE)




                                           (Arduino LilyPad)

Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                                                5
Arduino (4)




                (Ethernet Shield)                                       (Color display Shield)




                       (GPS Shield)                                             (GSM Shield)

Perugia, 22 ott 2011     GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                                               6
Campi di applicazione


            Domotica
            Agricoltura
            Controllo accessi
            Robotica amatoriale
            Dispositivi di allarme
            Stazioni meteo
            Sistemi di controllo, anche remoti (esclusi quelli real time)
            Dispositivi wireless
            Dispositivi con accesso LAN
            Utilizzo per scopi didattici e sperimentali


Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                            7
Funzionamento




                                                                 Volt IN: 7-12V
                                                                 Microcontrollore ATmega328
                                                                 14 pin digitali (I/O)
                                                                 6 uscite analogiche (~)
                                                                 6 ingressi analogici




Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                                            8
Funzionamento (2)
                       PIN digitale                                            PIN analogico


       Input ed Output a scelta                                   Input oppure Output
       Assume un valore booleano                                  Può assumere una gamma di
       {HIGH, LOW} (acceso o spento)                              valori [0, 255]
       Attiva o disattiva un dispositivo                          Permette la lettura di valori
                                                                  continui (sensori di temperatura)
                                                                  oppure regola l'intensità
                                                                  luminosa (LED RGB)




Perugia, 22 ott 2011    GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                                                    9
Programmazione arduino
   Basato su un linguaggio open source (Wiring) analogo al linguaggio C /
   C++ seppur è stato notevolmente semplificato


   Vasta gamma di librerie, incluse quelle ausiliarie per l'utilizzo degli
   shield collegati


   L'ambiente di sviluppo integrato è multipiattaforma (Linux, OSX,
   Windows)


   Tutta la parte software è rilasciata sotto licenza GPL o LGPL


   Arduino viene programmato con un attacco seriale oppure via USB se la
   board la include

Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                            10
Programmazione arduino (2)


                                                                 Derivato da Processing


                                                                 Raccoglie i programmi sviluppati
                                                                 in sketchbook


                                                                 Compila lo sketch e lo carica
                                                                 nella board arduino


                                                                 Prevede un serial monitor per
                                                                 monitorare gli impulsi seriali
                                                                 trasmessi e ricevuti



Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                                              11
Programmazione arduino (3)

                                                             Dichiarazioni globali da riutilizzare
                                                             nel programma (MAC address, IP,
                                                             intensità LED RGB, ecc...)

                                                             Inizializzazione   dei   PIN   ed
                                                             attivazione degli shield connessi
                                                             (viene abilitata la connessione di
                                                             rete)


                                                             Ciclo principale di esecuzione che
                                                             contiene il programma vero e
                                                             proprio




Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                                               12
Esempio




                                    → digitalWrite(pin, HIGH); ←


Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                            13
Android Device Kit (ADK)
   Kit di sviluppo impiegato per lo sviluppo di applicazioni Android in grado
   di interagire con un dispositivo Arduino-compatibile


   E' disponibile per le versioni Android successive al 3.1 (tablet) e 2.3.4
   (smartphone)




Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                            14
Home automation


                   Uso della logica impiegata nella domotica tradizionale
                                                          +
                                 Uso delle potenzialità di Arduino
                                                          +
              Uso delle capacità dei nuovi dispositivi (smartphone, tablet)
                                                          =
                                             Home automation


                                                     o anche
                                         Domotica open source


Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                            15
Home automation (2)
   Esempio presentato:


       Pannello di controllo al cui interno sono presenti 3 relè in grado di
       pilotare una ventola e due lampadine con relativi LED di stato


       Batteria da 12V per alimentare i dispositivi esterni


       Arduino Ethernet con POE


       Tablet Android Honeycomb 3.2.1 che, tramite applicazione, pilota la
       ventola e le due lampadine



Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                            16
Home automation (3)




Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                            17
GRAZIE PER L'ATTENZIONE!



                             Sito di riferimento: http://www.arduino.cc




                            Feedback: http://tinyurl.com/arduinold2011
                           Slide: http://tinyurl.com/arduinold2011slide




Perugia, 22 ott 2011   GNU/Linux User Group Perugia – www.perugiagnulug.org

Emanuele Palazzetti, Arduino: domotica open source                            18

More Related Content

What's hot (20)

PDF
Lezione 3 arduino - corso 20 ore
Mirko Mancin
 
PDF
Corso Arduino Base - MUST
OPS Italia
 
PDF
Alfabeto di Arduino - lezione 2
Michele Maffucci
 
PPTX
Arduino primo v1
Elisa Rubino
 
PDF
Alfabeto di Arduino - lezione 1
Michele Maffucci
 
PDF
Intro to Arduino
trevisoAUG
 
PDF
Arduino lezione 01 - a.s 2010-2011
Michele Maffucci
 
PDF
Lezione introduttiva su Arduino
Mirko Mancin
 
PDF
Electronics LAB [with Arduino] | DAY 1
Daniele Costarella
 
PDF
CoderDojo - Scratch 4 Arduino
Mirco Piccin
 
PDF
Alfabeto di arduino - lezione 4
Michele Maffucci
 
PDF
Lezione 2 arduino - corso 20 ore
Mirko Mancin
 
PDF
Arduino prima spiegazione
Flaviano Fior
 
PDF
Arduino&Raspberry
Mirko Mancin
 
PPTX
Presentazione Arduino
Antonio Serra
 
PDF
Alfabeto di Arduino - lezione 5
Michele Maffucci
 
PDF
Alfabeto di Arduino - lezione 6
Michele Maffucci
 
PDF
Alfabeto di Arduino - lezione 3
Michele Maffucci
 
PPT
Presentazione Arduino
guest01fc9d
 
Lezione 3 arduino - corso 20 ore
Mirko Mancin
 
Corso Arduino Base - MUST
OPS Italia
 
Alfabeto di Arduino - lezione 2
Michele Maffucci
 
Arduino primo v1
Elisa Rubino
 
Alfabeto di Arduino - lezione 1
Michele Maffucci
 
Intro to Arduino
trevisoAUG
 
Arduino lezione 01 - a.s 2010-2011
Michele Maffucci
 
Lezione introduttiva su Arduino
Mirko Mancin
 
Electronics LAB [with Arduino] | DAY 1
Daniele Costarella
 
CoderDojo - Scratch 4 Arduino
Mirco Piccin
 
Alfabeto di arduino - lezione 4
Michele Maffucci
 
Lezione 2 arduino - corso 20 ore
Mirko Mancin
 
Arduino prima spiegazione
Flaviano Fior
 
Arduino&Raspberry
Mirko Mancin
 
Presentazione Arduino
Antonio Serra
 
Alfabeto di Arduino - lezione 5
Michele Maffucci
 
Alfabeto di Arduino - lezione 6
Michele Maffucci
 
Alfabeto di Arduino - lezione 3
Michele Maffucci
 
Presentazione Arduino
guest01fc9d
 

Similar to Arduino: domotica OpenSource (20)

KEY
Introduzione ad Arduino
Simone Lusenti
 
PDF
Software libero nei sistemi embedded
Daniele Costarella
 
PDF
Arduino : l'esperienza di IRES FVG - OpenSourceDay2012
Mirco Piccin
 
PDF
Electronics LAB [with Arduino] | DAY 1
Salvatore Carotenuto
 
PDF
Csp@scuola uav corso1_lez3
CSP Scarl
 
PDF
Csp@scuola uav corso1_lez2
CSP Scarl
 
PPTX
Arduino + Azure: Dal circuito allo sketch e controllo remoto con una app web ...
Giuseppe Cramarossa
 
PDF
CommSEC - linea prodotti InterLINK (IT)
iBLio
 
PPTX
An IoT prototype: from ideation to promotion
Jennifer De Filicaia
 
PPTX
SIAM domotica open source Fiera Elettronica 2014
bbcslide
 
PDF
Arduino day 2017
Enrico La Sala
 
PDF
Electronics LAB [with Arduino] | DAY 3
Daniele Costarella
 
PDF
Electronics LAB [with Arduino] | DAY 3
Salvatore Carotenuto
 
PDF
Arduino wifi logger node
Mirco Piccin
 
PPTX
Arduino base
Amedeo Lepore
 
PDF
Workshop Arduino by Fiore Basile
Commit University
 
PDF
Internet delle cose
Biagio (Gino) Zingales Alì
 
PDF
LinoLab - Laboratorio di Arduino
Matteo Troìa
 
ODP
Hardware Libero - Linux Day 2007
pino_otto
 
PDF
Arduino nella-pmi
trevisoAUG
 
Introduzione ad Arduino
Simone Lusenti
 
Software libero nei sistemi embedded
Daniele Costarella
 
Arduino : l'esperienza di IRES FVG - OpenSourceDay2012
Mirco Piccin
 
Electronics LAB [with Arduino] | DAY 1
Salvatore Carotenuto
 
Csp@scuola uav corso1_lez3
CSP Scarl
 
Csp@scuola uav corso1_lez2
CSP Scarl
 
Arduino + Azure: Dal circuito allo sketch e controllo remoto con una app web ...
Giuseppe Cramarossa
 
CommSEC - linea prodotti InterLINK (IT)
iBLio
 
An IoT prototype: from ideation to promotion
Jennifer De Filicaia
 
SIAM domotica open source Fiera Elettronica 2014
bbcslide
 
Arduino day 2017
Enrico La Sala
 
Electronics LAB [with Arduino] | DAY 3
Daniele Costarella
 
Electronics LAB [with Arduino] | DAY 3
Salvatore Carotenuto
 
Arduino wifi logger node
Mirco Piccin
 
Arduino base
Amedeo Lepore
 
Workshop Arduino by Fiore Basile
Commit University
 
Internet delle cose
Biagio (Gino) Zingales Alì
 
LinoLab - Laboratorio di Arduino
Matteo Troìa
 
Hardware Libero - Linux Day 2007
pino_otto
 
Arduino nella-pmi
trevisoAUG
 
Ad

Arduino: domotica OpenSource

  • 1. Arduino: domotica open source Emanuele Palazzetti Feedback: http://tinyurl.com/arduinold2011 Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 1
  • 2. Physical Computing Costruire dei sistemi fisici interattivi  tramite l'uso di software e di hardware  in grado di percepire e rispondere  al mondo “analogico” Può essere visto come un framework creativo Progetti che usano sensori e microcontrollori  per tradurre l'input analogico ad un sistema software Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 2
  • 3. Arduino Sviluppato in Italia dal team Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino e David Mellis. Framework open-source per la creazione rapida di prototipi Licenza Creative Commons Attribution-ShareAlike 3.0 Dispone di una base software comune che permette di interfacciarsi a qualsiasi oggetto elettronico quale computer, sensore, display o attuatore Ha una grande community Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 3
  • 4. Arduino (2) (Arduino Uno) Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 4
  • 5. Arduino (3) (Arduino Uno) (Arduino Mega 2560) (Arduino Ethernet POE) (Arduino LilyPad) Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 5
  • 6. Arduino (4) (Ethernet Shield) (Color display Shield) (GPS Shield) (GSM Shield) Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 6
  • 7. Campi di applicazione Domotica Agricoltura Controllo accessi Robotica amatoriale Dispositivi di allarme Stazioni meteo Sistemi di controllo, anche remoti (esclusi quelli real time) Dispositivi wireless Dispositivi con accesso LAN Utilizzo per scopi didattici e sperimentali Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 7
  • 8. Funzionamento Volt IN: 7-12V Microcontrollore ATmega328 14 pin digitali (I/O) 6 uscite analogiche (~) 6 ingressi analogici Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 8
  • 9. Funzionamento (2) PIN digitale PIN analogico Input ed Output a scelta Input oppure Output Assume un valore booleano Può assumere una gamma di {HIGH, LOW} (acceso o spento) valori [0, 255] Attiva o disattiva un dispositivo Permette la lettura di valori continui (sensori di temperatura) oppure regola l'intensità luminosa (LED RGB) Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 9
  • 10. Programmazione arduino Basato su un linguaggio open source (Wiring) analogo al linguaggio C / C++ seppur è stato notevolmente semplificato Vasta gamma di librerie, incluse quelle ausiliarie per l'utilizzo degli shield collegati L'ambiente di sviluppo integrato è multipiattaforma (Linux, OSX, Windows) Tutta la parte software è rilasciata sotto licenza GPL o LGPL Arduino viene programmato con un attacco seriale oppure via USB se la board la include Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 10
  • 11. Programmazione arduino (2) Derivato da Processing Raccoglie i programmi sviluppati in sketchbook Compila lo sketch e lo carica nella board arduino Prevede un serial monitor per monitorare gli impulsi seriali trasmessi e ricevuti Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 11
  • 12. Programmazione arduino (3) Dichiarazioni globali da riutilizzare nel programma (MAC address, IP, intensità LED RGB, ecc...) Inizializzazione dei PIN ed attivazione degli shield connessi (viene abilitata la connessione di rete) Ciclo principale di esecuzione che contiene il programma vero e proprio Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 12
  • 13. Esempio → digitalWrite(pin, HIGH); ← Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 13
  • 14. Android Device Kit (ADK) Kit di sviluppo impiegato per lo sviluppo di applicazioni Android in grado di interagire con un dispositivo Arduino-compatibile E' disponibile per le versioni Android successive al 3.1 (tablet) e 2.3.4 (smartphone) Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 14
  • 15. Home automation Uso della logica impiegata nella domotica tradizionale + Uso delle potenzialità di Arduino + Uso delle capacità dei nuovi dispositivi (smartphone, tablet) = Home automation o anche Domotica open source Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 15
  • 16. Home automation (2) Esempio presentato: Pannello di controllo al cui interno sono presenti 3 relè in grado di pilotare una ventola e due lampadine con relativi LED di stato Batteria da 12V per alimentare i dispositivi esterni Arduino Ethernet con POE Tablet Android Honeycomb 3.2.1 che, tramite applicazione, pilota la ventola e le due lampadine Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 16
  • 17. Home automation (3) Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 17
  • 18. GRAZIE PER L'ATTENZIONE! Sito di riferimento: http://www.arduino.cc Feedback: http://tinyurl.com/arduinold2011 Slide: http://tinyurl.com/arduinold2011slide Perugia, 22 ott 2011 GNU/Linux User Group Perugia – www.perugiagnulug.org Emanuele Palazzetti, Arduino: domotica open source 18