Internet delle cose ed i Makers 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Internet delle cose, cos’è? 
L’espressione Internet of Things o “Internet delle cose” indica un insieme di tecnologie il cui scopo è rendere 
qualunque oggetto in grado di godere delle caratteristiche che hanno i prodotti nati per utilizzare la rete”. 
Scopi principali? monitoraggio e controllo! 
Controllo 
gli oggetti possono essere comandati a 
distanza senza tecnologie particolari, 
attraverso la connessione ad internet. 
Es. La Domotica è uno dei migliori esempi 
di questi ultimi anni, cioè poter gestire la 
propria abitazione (elettrodomestici, 
illuminazione, ecc...) e/o altre strutture a 
distanza. 
Monitoraggio 
l'oggetto può comportarsi come 
sensore, ovvero essere in grado di 
produrre informazioni su di sé o 
sull'ambiente circostante. 
Es. Un palo dell’illuminazione 
pubblica, oltre a far sapere se è 
accesso o spento, può analizzare i 
livelli di inquinamento nell’aria e 
dare molte altre informazioni. 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Maker: artigiani digitali 
Gli artigiani digitali, o "maker", costituiscono un movimento culturale contemporaneo che rappresenta l’evoluzione 
tecnologica del tradizionale mondo del fai da te. 
Gli interessi tipici dei makers? 
Realizzare apparecchiature elettroniche, robot, droni, stampa 3D, ma anche semplici strumenti che possono 
migliorare la vita di ogni giorno!!! 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Alcuni esempi 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Il mondo reale: il Physical Computing 
Sensori 
Esistono numerosi sensori che possono 
essere utilizzati per acquisire grandezze 
fisiche nel mondo reale. 
Attuatori 
Gli attuatori vengono utilizzati per 
interagire con il mondo reale. 
Un motore è un attuatore, mette in 
movimento un oggetto (es. una ventola di 
raffreddamento) così come un relé che 
viene utilizzato come interruttore ad 
esempio per accendere una lampadina al 
cambiamento di stato di un sensore PIR. 
Temperatura Umidità Luce 
(fotoresistenza) 
Ultrasuoni Pir 
(Movimento) 
Umidità 
Servo-motore Relé 5V - 220V
“Vecchia scuola” 
Tempi lunghi di prototipazione, ottima 
conoscenza dell’Hardware, ecc… 
PIC PCB (printed circuit board) 
PROCESSOR 16F628 
RADIX DEC 
INCLUDE "P16F628.INC" 
__CONFIG 11110100010000B 
ORG 0 
BSF STATUS,RP0 ;Attiva banco 1 
CLRF TRISB ;Rende PORTB un'uscita 
BCF STATUS,RP0 ;Ritorna al banco 0 
MOVLW 10101110B ;Carica 174 nell'accumulatore 
MOVWF PORTB ;Mandalo sui pin di uscita 
SLEEP ;Stop programma 
END 
Esempio linguaggio assembly 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
La nuova era 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Arduino 
Arduino nasce nel 2005 ad Ivrea da una idea di Massimo Banzi, creò una scheda (board) dotata di un 
microcontrollore con un minimo di circuiteria; il tutto, è rilasciato sotto forma di open hardware, quindi 
possiamo rifarcene una a casa. Questa board è programmabile per fare parecchie cose: i programmi 
(SKETCH) sono creati tramite il suo ambiente di sviluppo (IDE - Integrated development environment), con un 
linguaggio piuttosto semplice creato a partire da C e C++. 
Modelli Arduino 
IDE e SKETCH Community 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Arduino un “mostro” di potenza! 
Caratteristiche tecniche 
Salvare Sketch 
Salvare Variabili 
Salvare dati e parametri 
Velocità processore 
Arduino UNO Rev 3 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Raspberry PI 
Raspberry Pi è una board con tutto quello che possiamo aspettarci da un computer. 
Al suo interno vi è un sistema operativo (una distribuzione derivata da Debian). Questo significa che mentre Arduino 
viene usato per la gestione di segnali e altro attraverso il microcontrollore, su Raspberry possiamo anche far girare i nostri 
software, ossia qualcosa di “meno elettronico“. Infatti, può essere utsata per la gestione casalinga (e non) del software, 
sono diversi i linguaggi da poter usare: Python, Java, C/C++, Rugby, PHP, Perl, ecc... 
Biagio (Gino) Zingales Alì Sistema Operativo 
Internet delle cose ed i Makers 
Raspberry PI model B+ 
Raspberry PI model B
Raspberry PI: Hardware e Software 
● Piccolo come una carta di credito 
● Video: HDMI o RCA analogico 
● Input: tastiere e mouse USB 
● Audio: jack 3.5 o HDMI audio 
● 2 porte USB (modello B) 
● Scheda SD 
● Alimentazione: Micro USB 
● RAM: 512 MB 
● CPU ARM Broadcom 700 Mhz + GPU Videocore 
● Connettore GPIO di comunicazione 
● Ethernet 10/100 (o WiFi USB compatibili) 
Schema dispositivo 
Al contrario di Arduino, il Raspberry ha un vero e proprio 
sistema operativo. 
Per semplificare il tutto la Raspberry Pi Foundation ha creato 
NOOBS (New Out Of the Box Software). 
Questo software permette di scegliere tramite una finestra di 
dialogo al primo avvio quale tra i vari sistemi operativi si 
vuole installare. 
RASPBIAN PIDORA RASPBMC RISC OS OPENELEC 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Qualche esempio! 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Esempio Arduino: KNOCK LOCK 
Aprire la porta di casa con un combinazione segreta! 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Esempio Arduino: KNOCK LOCK 
Aprire la porta di casa 
con un combinazione 
segreta. 
● 1 Megaohm Resistenza 
● 10 Kilohm Resistenza 
● 3 x 220 ohm Resistenza 
● 100 uF Condensatore 
● Piezo 
● Servo motore 
● Pulsante 
● 1 x Rosso LED 
● 1 x Giallo LED 
● 1 x Verde LED 
void loop(){ 
if(locked == false){ 
switchVal = digitalRead(switchPin); 
if(switchVal == HIGH){ 
locked = true; 
digitalWrite(greenLed,LOW); 
digitalWrite(redLed,HIGH); 
myServo.write(90); 
Serial.println("the box is locked!"); 
delay (1000); 
} 
} 
if(locked == true){ 
knockVal = analogRead(piezo); 
if(numberOfKnocks < 6 && knockVal > 0){ 
if(checkForKnock(knockVal) == true){ 
numberOfKnocks++; 
} 
Serial.print(6 - numberOfKnocks); 
Serial.println(" more knocks to go"); 
} 
if(numberOfKnocks >= 6){ 
locked = false; 
myServo.write(0); 
delay(20); 
digitalWrite(greenLed,HIGH); 
digitalWrite(redLed,LOW); 
Serial.println("the box is unlocked!"); 
numberOfKnocks = 0; 
} 
} 
} 
boolean checkForKnock(int value){ 
if(value > quietKnock && value < loudKnock){ 
digitalWrite(yellowLed, HIGH); 
delay(50); 
digitalWrite(yellowLed, LOW); 
Serial.print("Valid knock of value "); 
Serial.println(value); 
return true; 
} 
else { 
Serial.print("Bad knock value "); 
Serial.println(value); 
return false; 
} 
} 
50 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Esempio Raspberry PI: Streaming Tweet 
Twython 
Pure Python wrapper for the Twitter API 
Streming 
Twitter 
Quando vengono trovate le parole all’ 
interno dello Streaming di Twitter 
possiamo decidere cosa farne e/o cosa far 
fare al nostro Raspberry. 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Arduino Robot 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Arduino Mega 2560 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Un piccolo video! 
Fonte: Econocom Smartlife 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
UN PO’ DI LINK 
http://arduino.cc/ - Sito ufficiale di Arduino 
http://www.raspberrypi.org/ - Sito ufficiale di Raspberry Pi 
http://www.instructables.com/ - Sito con tante idee da creare 
http://www.makerfairerome.eu/ - Evento dedicato al mondo dei Maker 
https://twython.readthedocs.org - Pure Python wrapper for the Twitter API. Supports both normal and 
streaming Twitter APIs 
/biagio.zingales 
/+BiagioZingalesAlì 
@biagio_zingales 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
Fate viaggiare la vostra fantasia! 
Biagio (Gino) Zingales Alì Internet delle cose ed i Makers

Internet delle cose

  • 1.
    Internet delle coseed i Makers Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
  • 2.
    Internet delle cose,cos’è? L’espressione Internet of Things o “Internet delle cose” indica un insieme di tecnologie il cui scopo è rendere qualunque oggetto in grado di godere delle caratteristiche che hanno i prodotti nati per utilizzare la rete”. Scopi principali? monitoraggio e controllo! Controllo gli oggetti possono essere comandati a distanza senza tecnologie particolari, attraverso la connessione ad internet. Es. La Domotica è uno dei migliori esempi di questi ultimi anni, cioè poter gestire la propria abitazione (elettrodomestici, illuminazione, ecc...) e/o altre strutture a distanza. Monitoraggio l'oggetto può comportarsi come sensore, ovvero essere in grado di produrre informazioni su di sé o sull'ambiente circostante. Es. Un palo dell’illuminazione pubblica, oltre a far sapere se è accesso o spento, può analizzare i livelli di inquinamento nell’aria e dare molte altre informazioni. Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
  • 3.
    Maker: artigiani digitali Gli artigiani digitali, o "maker", costituiscono un movimento culturale contemporaneo che rappresenta l’evoluzione tecnologica del tradizionale mondo del fai da te. Gli interessi tipici dei makers? Realizzare apparecchiature elettroniche, robot, droni, stampa 3D, ma anche semplici strumenti che possono migliorare la vita di ogni giorno!!! Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
  • 4.
    Alcuni esempi Biagio(Gino) Zingales Alì Internet delle cose ed i Makers
  • 5.
    Il mondo reale:il Physical Computing Sensori Esistono numerosi sensori che possono essere utilizzati per acquisire grandezze fisiche nel mondo reale. Attuatori Gli attuatori vengono utilizzati per interagire con il mondo reale. Un motore è un attuatore, mette in movimento un oggetto (es. una ventola di raffreddamento) così come un relé che viene utilizzato come interruttore ad esempio per accendere una lampadina al cambiamento di stato di un sensore PIR. Temperatura Umidità Luce (fotoresistenza) Ultrasuoni Pir (Movimento) Umidità Servo-motore Relé 5V - 220V
  • 6.
    “Vecchia scuola” Tempilunghi di prototipazione, ottima conoscenza dell’Hardware, ecc… PIC PCB (printed circuit board) PROCESSOR 16F628 RADIX DEC INCLUDE "P16F628.INC" __CONFIG 11110100010000B ORG 0 BSF STATUS,RP0 ;Attiva banco 1 CLRF TRISB ;Rende PORTB un'uscita BCF STATUS,RP0 ;Ritorna al banco 0 MOVLW 10101110B ;Carica 174 nell'accumulatore MOVWF PORTB ;Mandalo sui pin di uscita SLEEP ;Stop programma END Esempio linguaggio assembly Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
  • 7.
    La nuova era Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
  • 8.
    Arduino Arduino nascenel 2005 ad Ivrea da una idea di Massimo Banzi, creò una scheda (board) dotata di un microcontrollore con un minimo di circuiteria; il tutto, è rilasciato sotto forma di open hardware, quindi possiamo rifarcene una a casa. Questa board è programmabile per fare parecchie cose: i programmi (SKETCH) sono creati tramite il suo ambiente di sviluppo (IDE - Integrated development environment), con un linguaggio piuttosto semplice creato a partire da C e C++. Modelli Arduino IDE e SKETCH Community Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
  • 9.
    Arduino un “mostro”di potenza! Caratteristiche tecniche Salvare Sketch Salvare Variabili Salvare dati e parametri Velocità processore Arduino UNO Rev 3 Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
  • 10.
    Raspberry PI RaspberryPi è una board con tutto quello che possiamo aspettarci da un computer. Al suo interno vi è un sistema operativo (una distribuzione derivata da Debian). Questo significa che mentre Arduino viene usato per la gestione di segnali e altro attraverso il microcontrollore, su Raspberry possiamo anche far girare i nostri software, ossia qualcosa di “meno elettronico“. Infatti, può essere utsata per la gestione casalinga (e non) del software, sono diversi i linguaggi da poter usare: Python, Java, C/C++, Rugby, PHP, Perl, ecc... Biagio (Gino) Zingales Alì Sistema Operativo Internet delle cose ed i Makers Raspberry PI model B+ Raspberry PI model B
  • 11.
    Raspberry PI: Hardwaree Software ● Piccolo come una carta di credito ● Video: HDMI o RCA analogico ● Input: tastiere e mouse USB ● Audio: jack 3.5 o HDMI audio ● 2 porte USB (modello B) ● Scheda SD ● Alimentazione: Micro USB ● RAM: 512 MB ● CPU ARM Broadcom 700 Mhz + GPU Videocore ● Connettore GPIO di comunicazione ● Ethernet 10/100 (o WiFi USB compatibili) Schema dispositivo Al contrario di Arduino, il Raspberry ha un vero e proprio sistema operativo. Per semplificare il tutto la Raspberry Pi Foundation ha creato NOOBS (New Out Of the Box Software). Questo software permette di scegliere tramite una finestra di dialogo al primo avvio quale tra i vari sistemi operativi si vuole installare. RASPBIAN PIDORA RASPBMC RISC OS OPENELEC Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
  • 12.
    Qualche esempio! Biagio(Gino) Zingales Alì Internet delle cose ed i Makers
  • 13.
    Esempio Arduino: KNOCKLOCK Aprire la porta di casa con un combinazione segreta! Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
  • 14.
    Esempio Arduino: KNOCKLOCK Aprire la porta di casa con un combinazione segreta. ● 1 Megaohm Resistenza ● 10 Kilohm Resistenza ● 3 x 220 ohm Resistenza ● 100 uF Condensatore ● Piezo ● Servo motore ● Pulsante ● 1 x Rosso LED ● 1 x Giallo LED ● 1 x Verde LED void loop(){ if(locked == false){ switchVal = digitalRead(switchPin); if(switchVal == HIGH){ locked = true; digitalWrite(greenLed,LOW); digitalWrite(redLed,HIGH); myServo.write(90); Serial.println("the box is locked!"); delay (1000); } } if(locked == true){ knockVal = analogRead(piezo); if(numberOfKnocks < 6 && knockVal > 0){ if(checkForKnock(knockVal) == true){ numberOfKnocks++; } Serial.print(6 - numberOfKnocks); Serial.println(" more knocks to go"); } if(numberOfKnocks >= 6){ locked = false; myServo.write(0); delay(20); digitalWrite(greenLed,HIGH); digitalWrite(redLed,LOW); Serial.println("the box is unlocked!"); numberOfKnocks = 0; } } } boolean checkForKnock(int value){ if(value > quietKnock && value < loudKnock){ digitalWrite(yellowLed, HIGH); delay(50); digitalWrite(yellowLed, LOW); Serial.print("Valid knock of value "); Serial.println(value); return true; } else { Serial.print("Bad knock value "); Serial.println(value); return false; } } 50 Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
  • 15.
    Esempio Raspberry PI:Streaming Tweet Twython Pure Python wrapper for the Twitter API Streming Twitter Quando vengono trovate le parole all’ interno dello Streaming di Twitter possiamo decidere cosa farne e/o cosa far fare al nostro Raspberry. Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
  • 16.
    Arduino Robot Biagio(Gino) Zingales Alì Internet delle cose ed i Makers
  • 17.
    Arduino Mega 2560 Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
  • 18.
    Un piccolo video! Fonte: Econocom Smartlife Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
  • 19.
    UN PO’ DILINK http://arduino.cc/ - Sito ufficiale di Arduino http://www.raspberrypi.org/ - Sito ufficiale di Raspberry Pi http://www.instructables.com/ - Sito con tante idee da creare http://www.makerfairerome.eu/ - Evento dedicato al mondo dei Maker https://twython.readthedocs.org - Pure Python wrapper for the Twitter API. Supports both normal and streaming Twitter APIs /biagio.zingales /+BiagioZingalesAlì @biagio_zingales Biagio (Gino) Zingales Alì Internet delle cose ed i Makers
  • 20.
    Fate viaggiare lavostra fantasia! Biagio (Gino) Zingales Alì Internet delle cose ed i Makers