Archivi tag: iot

Progetto automazione e internet of things con Raspberry Pi

iot433-01
E’ da tempo che sto pensando di ristrutturare il laboratorio di domotica che ho nella mia scuola, aggiungendo agli apparati di note aziende del settore, anche sistemi fortemente open e gratuiti a basso costo e facilmente espandibile in modo che gli studenti possano poi avere uno spettro pi ampio sulle tecnologie disponibili. Ovviamente il lavoro per riformulare la didattica in tal senso enorme e quindi il mio intento era quello di assegnare una serie di tesine di maturit ad allievi di buona volont 🙂 tesine da usare come mattoni di partenza per aggiungere nei prossimi anni scolastici argomenti nuovi.

Fortunatamente ho avuto l’occasione di conoscere alcune settimane fa via e-mail Rocco Musolino, un bravissimo programmatore che mi ha inviato la segnalazione del suo splendido lavoro, che parte della sua tesi di laurea magistrale e tratta appunto del controllo di sistemi a 433mhz mediante Raspberry Pi, quindi se desiderate sperimentare “un vero IoT” provate il lavoro di Rocco Musolino, io lo far certamente con le mie classi 4′ e 5′ elettrici.

iot433-02

Grazie quindi a Rocco, che mi ha inviato la sua recensione che vi allego, per vi invito alla consultazione del suo sito su cui trovate un tutorial ben dettagliato che vi guider passo passo all’installazione del sistema.

Nelle prossime settimane sul sito di Rocco Musolino il PDF della tesi con il lavoro completo.

iot433-03

Di seguito la sua presentazione.

Il progetto iot-433mhz nasce con l’idea di offrire una dashboard o “centralina” di controllo per sensori e attuatori funzionanti sulla frequenza 433mhz, gi largamente diffusi sul mercato.
La dashboard costruita usando interamente tecnologie per il Web e rilasciata sotto licenza MIT, open source.
Persino l’unit di controllo, che gestisce la comunicazione seriale con il gateway di trasmissione radio (un arduino connesso a dei moduli radio operanti a 433mhz) realizzato in Javascript e basato su Node.js.

Node.js garantisce alte performance e un supporto multipiattaforma: Windows, Mac, Linux. Quindi se sul vostro sistema possibile installare Node.js ed il suo gestore di pacchetti NPM, allora il software pu tranquillamente essere installato velocemente ed eseguito senza alcun problema.

Sulla pagina git ufficiale del progetto presente la documentazione che meglio spiega come effettuare l’installazione sui vari OS e le relative dipendenze necessarie.
Sulla pagina dedicata all’Hardware invece, una panoramica sui moduli radio consigliati e i dispositivi radio con cui il software compatibile.
Sono molti i dispositivi radio con cui possibile interagire, prese telecomandate, sensori di movimento piroelettrici e sensori per porte e finestre magnetici.

La peculiarit del progetto, oltre a garantire una pratica dashboard di controllo, in linea con le guidelines di google sul Material Design, quella di aver la possibilit di sviluppare parallelamente un sistema che si appoggi alle API offerte da iot-433mhz, per estenderne le capacit o personalizzarne i casi d’uso.
Ogni singola API documentata sulla repository ufficiale. L’interazione immediata e da poco sono stati introdotti i webHooks, componenti che similmente alle API, estendono le capacit del sistema, permettono di registrare una URL all’interno del sistema stesso e far si che venga richiamata al verificarsi di un evento.

Un’altra feature interessante sono le notifiche Telegram. Telegram uno dei pochi client di messaggistica che permette la creazione di Bot automatici. Ogni istanza di iot-433mhz installata su un PC in grado di comunicare con un unico back-end che gestisce per l’appunto l’interazione con il bot telegram. Attivare le notifiche telegram per il proprio account semplice, basta andare nelle Impostazioni copiare la stringa che appare e incollarla al bot @my_iot_bot. Dunque ogniqualvolta un’allarme armata scatter, il sistema attraverso il bot di telegram lo far sapere all’utente in tempo reale.

Il progetto iot-433mhz attualmente giunto alla versione 1.0.24, e viene costantemente aggiornata per risolvere bug o introdurre nuove feature.
E’ utilizzabile in “produzione” e si contano gi oltre 1000 download (npm), 104 stars e 7 fork. Che non affatto male considerando si tratti di un progetto nuovo, altamente specifico, pensato per hobbysti e in generale appassionati di automazione e domotica.

Blynk – liberi di creare applicazioni per i vostri progetti con Arduino, Raspberry Pi, ESP8266 e molto altro

blynk01

S proprio cos Blynk, come afferma il titolo di questo post, semplicit assoluta nel creare applicazioni e “governare l’elettronica” con estrema semplicit attraverso i vostri dispositivi mobili. I test che sto conducendo questa giornata mi confermano l’utilit del sistema ed aggiungono un mattoncino in pi a quanto insegno ai miei allievi. Grazie a Rossano M. che mi ha inviato la segnalazione e che mi chiede di risolvere alcuni dubbi sul suo utilizzo, cercher di rispondere in prossimi post.

blynk02

Blynknasce come progettofinanziato mediante Kickstarter e vi consente di controllare i vostri progetti elettronici attraverso dispositivi iOS e Android mediante apposite app per il controllo di Arduino, Raspberry Pi e altri dispositivi.

In estrema sintesi l’app dispone di una dashboard dove potrete costruire un’interfaccia per il vostro progetto semplicemente trascinando e rilasciando i widget.

Come affermato sul sito, confermo perch sperimentato, in 5 minuti sarete in grado di operare e in 5 minuti potrete capire cosa vuol dire Internet Of Your Things.

Partite dal Getting started dopo di che passate seguite i tutorial del sito di riferimento, sono ben fatti.

Buona sperimentazione a tutti.

LightBlue Bean – programmare un microcontrollore Arduino da dispositivo mobile… e non solo

Si so cosa state pensando in questo momento: “perché ti stai concentrando sulla sperimentazione di così tante schede di prototipazione?”
Sto selezionando una serie di tecnologie che possano essere utilizzate in diversi ambiti, sia didattici per ordine di scuola, che soluzioni per progetti principalmente afferenti alla categoria IoT… e poi se non aggiungo l’aspetto di ricerca nel mio mestiere dove sta il divertimento? 🙂

Tra questi ho trovato straordinario LightBlue Bean una piccolissima scheda Arduino che incorpora un Bluetooth 4.0 a basso consumo che può essere programmato in modalità wireless sia direttamente da un’IDE residente su dispositivo mobile disponibile per sistemi iOS che Android oppure può essere programmata direttamente su computer dall’IDE di Arduino. Devo dirvi che, almeno per me, programmare una scheda Arduino compliant, senza la necessità di un computer mi entusiasma parecchio perché mi permette in piena libertà e “leggerezza tecnologica”.

LightBlueBean01

Nella fotografia che vi allego potete immediatamente vedere le dimensioni paragonate ad una moneta da 1€, piccolissimo!

LightBlueBean02

LightBlueBean03

Questo un video che ne mostra le funzionalità:

LightBlue Bean from Punch Through on Vimeo.

Cosa troviamo su questa scheda?

  • Accelerometro a 3 assi
  • Sensore di temperatura
  • LED RGB
  • una batteria CR2032
  • ATmega 328p con clock a 8MHz
  • Bluetooth LE
  • Tensione di lavoro 3V
  • 6 ingressi/uscite digitali di cui 4 ti tipo PWM
  • 2 pin analogici
  • Possibilità di utilizzare i protocolli i2C e SPI

LightBlueBean04

LightBlueBean05

Come vi dicevo:

  • programmazione wireless
  • supporto su OSX e iOS
  • supporto Windows 8

Per incominciare ad utilizzarlo su iOS prelevate le due App:

LightBlue Explorer – Bluetooth Low Energy

LightBlueBean09

potrete verificare il funzionamento di LightBlue Bean e non solo, infatti potrete effettuare uno scan di tutte le periferiche Bluetooth 4.0 a basso consumo di energia e controllarne una serie di funzionalità.

Bean Loader – LightBlue Bean

LightBlueBean10

è l’IDE di programmazione che vi consentirà di programmare la scheda direttamente da iPhone, iPad o iPod Touch.

Tra le caratteristiche più importanti di Bean Loader:

Verificare codice Arduino sul vostro dispositivo iOS mediante il Bean Cloud Compiler

  • Programmare il vostro Bean in modalità wireless via Bluetooth a basso consumo
  • Editor di codice integrato con sintassi C evidenziata
  • Collegamento con Dropbox per sincronizzare i vostri sketch ovunque
  • Collezione di esempi per incominciare subito con il vostro Bean

LightBlueBean11

Negli esempi che potete visionare sul sito di riferimento, la componentistica elettronica viene direttamente saldata sulla scheda, tale azione impone l’uso per un solo tipo di progetto e quindi per rendere la scheda riusabile potete adottare la soluzione che seguirò io e dettagliata nelle immagini che seguono, cioè saldare sulla schedina una serie di piedini che ne permettano l’inserimento su una breadboard.

LightBlueBean06

LightBlueBean07

LightBlueBean08

Ma quanto costa questa scheda? 30$
Vengono proposte soluzioni meno costose all’aumentare delle schede acquistate.

Alcuni riferimenti utili:

Spero di avervi incuriosito.

Qualche giorno fa, prima di decidere di acquistare LightBlue Bean, pensavo a quante volte durante le lezioni sono costretto a richiamare gli allievi perché li sorprendo ad usare il cellulare in classe, certo è che se lo usassero con LightBlue Bean i richiami e le note di demerito si trasformerebbero in voti stupendi 😉

Sarà la volta buona?

Buona sperimentazione a tutti.

Annikken Andee – estendere in modo semplice il controllo di progetti Arduino utilizzando dispositivi mobili

Annikken-Andee

Tra breve incomincerò un ciclo di lezioni a scuola in cui ad una classe quinta (manutentori) sottoporrò una serie di moduli didattici da tre ore settimanali in cui saranno rivisti concetti di elettronica e misure elettroniche, impiantistica civile ed industriale, per poi giungere all’automazione realizzata con PLC e successivamente con Arduino, ovviamente il tutto finalizzato per l’esame di Maturità.
Mostrerò come realizzare semplici sistemi demotici o di controllo su impianti industriali utilizzando tecnologia a basso costo. Tutte le lezioni avranno quindi una forte connotazione sperimentale.

Da circa due giorni sto disegnando la parte delle lezioni che riguarda brevi esercitazioni in cui il controllo viene effettuato utilizzando Annikken Andee, uno shield che permette di controllare attuatori e sensori direttamente da uno dispositivo iOS o Android. La caratteristica più importante del prodotto risiede nella possibilità di poter realizzare l’interfaccia grafiche per azionare o leggere dati e visualizzare grafici, direttamente dall’IDE di Arduino senza la necessità di implementare un’App apposita per le due piattaforme.
Dovrete installare l’App gratuita Andee e collegarvi allo shield Andee via Bluetooth, nel momento in cui farete l’upload dello sketch su Arduino, all’interno dell’App Andee apparirà l’interfaccia grafica che avrete codificato nello sketch.

Annikken-Andee-b

Andee è disponibile per iOS, per Android ed esiste una versione nominata “Andee U” venduta con il kit Sentry Gun che supporta contemporaneamente sia iOS che Android.

Dal punto di vista dei tempi didattici e del “divertimento” dello studente, il prodotto è estremamente utile ed anche se si possiede una competenza di base nella programmazione di Arduino, si potranno ottenere buoni risultati in poco tempo soprattutto perché programmare l’interfaccia grafica non è complicato.

Vi rimando alla visione del video che trovate di seguito (perdonate la scarsa qualità), nel primo effettuo con il il mio smartphone: l’accensione e lo spegnimento di una lampada a 220V, di una sirena, rilevazione della temperatura ambiente.
Con circuiti analoghi, affiancati ai normali pannelli per impianti elettrici civili ed industriali, farò controllare: l’accensione di lampade, apertura e chiusura di cancelli, rilevazioni allarmi di qualsiasi genere, controllo motori elettrici e molto altro.
Interessante la possibilità che ho sperimentato del controllo di rotazione di servomotori, stabilire l’angolo di rotazione di un motorino passo passo, oppure far inviare SMS al cellulare in caso di allarmi impostati da programma… e tantissimo altro…

Vi allego inoltre i seguenti video:

Tutte le informazioni utili potrete trovarle sul sito di riferimento.
su cui potrete seguire, nella sezione: resource tutte le lezioni che vi condurranno ad un’utilizzo completo dello scheda.

Per poter utilizzare Andee dovrete quindi: installare l’App corrispondente per il dispositivo mobile che possedete, installare la libreria Andee nell’IDE Arduino e procedere al collegamento tra dispositivo e Andee.

In successivi articoli pubblicherò spiegazioni ed esercitazioni con relativi sketch.

Un caro saluto a tutti.

VIPER, la suite made in Italy per la programmazione degli oggetti intelligenti, è disponibile online

VIPER

Come di consueto riservo questa parte dell’anno alla progettazione didattica e formazione personale in modo da impostare nuovi argomenti o soluzioni a problematiche riscontrate durante le mie attività di formazione.

E’ da tempo che desideravo proporre un’alternativa all’insegnamento della programmazione e dell’automazione, detta usando la frase del momento 🙂 “interazione con il mondo reale (IoT)” da proporre ai miei studenti. L’idea è quella di proporre una soluzione basata sul linguaggio di programmazione Python che come sicuramente saprete ben si adatta in ambito didattico.
Da circa un mese ho incominciato a costruire un manuale “semplice” su Python estremamente pratico però avevo la necessità di trovare una soluzione altrettanto facile e coinvolgente che potesse in qualche modo permettermi, usando Python, di interagire con il mondo reale.
Fortunatamente negli scorsi giorni sono stato contattato direttamente dalla startup italiana Viper, nella persona di Gabriele Montelisciani, che ringrazio e che mi segnalava il rilascio della prima versione della piattaforma di programmazione che permette di programmare nel semplice linguaggio Python la maggior parte delle schede a 32bit attualmente presenti sul mercato compreso Arduino.
L’anello mancante al mio nuovo progettare 🙂 che sperimenterò intensamente.

Qualche dettaglio in più su Viper che vi invito a sperimentare.

La startup italiana VIPER ha rilasciato lo scorso 24 giugno la prima versione della sua nuova piattaforma di programmazione. La campagna di raccolta fondi su Kickstarter, conclusasi con successo lo scorso Marzo, ha permesso di ultimare lo sviluppo del prodotto.
VIPER è una suite di sviluppo multipiattaforma (Linux, Windows e Mac) che permette di programmare nel semplice linguaggio Python la maggior parte delle schede a 32bit attualmente presenti sul mercato: sia le schede professionali basate su chip 32bit, che le schede di prototipazione più note al momento come Arduino DUE, UDOO, Particle e ST Nucleo.
L’idea è stata concepita dopo aver condotto alcune dettagliate analisi di mercato, dove il team ha scoperto che designers, “makers” e programmatori si trovano quotidianamente ad affrontare le stesse sfide di semplificazione e ottimizzazione dei processi di sviluppo di nuovi prodotti interattivi. VIPER nasce quindi dall’esigenza di ottimizzare tali processi, attraverso un’interfaccia web per gestire e programmare le schede, una macchina virtuale “real time” e una vasta libreria di funzioni pronte per l’uso. La suite include inoltre un’App per mobile che permette di controllare gli oggetti VIPER attraverso gli smartphone senza dover sviluppare nessuna applicazione mobile. Il tutto è già “nativamente connesso al cloud”. Tale configurazione permette di ridurre tempi ed energie per lo sviluppo.

Con poche righe di codice, gli utenti possono sviluppare una vasta gamma di applicazioni del mondo dell’internet degli oggetti, che vanno dalla domotica al fitness, dalla robotica alla nautica, dalle applicazioni industriali ai controlli manutentivi da remoto, fino all’agricoltura intelligente. Per il consumatore finale ciò si traduce nella possibilità di collegare e comandare le smart TV, le lampade intelligenti, i termostati di nuova generazione, ma anche di sincronizzare le sveglie con la macchina da caffè, la lavatrice, l’aspirapolvere.
La campagna Kickstarter ha dato ottimi risultati, oltre 400 utenti da 25 paesi diversi hanno creduto in Viper. Ora la suite diventa disponibile in modalità opensource per tutti gli interessati allo sviluppo di soluzioni non commerciali, nonché a provarne le potenzialità anche nel campo della formazione.

VIPER è disponibile per il download al sito ufficiale.

Buona sperimentazione a tutti!