Introduzione a ThingSpeak | DAQ code laboratory per dispositivi IoT

Introduzione a ThingSpeak

Introduzione a thingspeak

Thingspeak è un servizio offerto dalla mathworks che consente di aggregare, visualizzare e analizzare flussi di dati live nel cloud provenienti da dispositivi IoT. La piattaforma è intuitiva e particolarmente adatta a chi è abituato ad utilizzare matlab. Infatti, oltre alle varie visualizzazioni istantanee dei dati provenienti dai dispositivi IoT, la piattaforma consente di eseguire codice matlab su tali dati. Anche se sul sito è riportato come utilizzo quello di prototipazione e prova di sistemi IoT, è possibile pensare il suo utilizzo per piccoli esperimenti hobbistici in cui i dati provenienti dai nostri sensori debbano essere accessibili anche dall’esterno.

Accesso al serivzio thingspeak

Per accedere al servizio basta andare sul sito thingspeak.com e cliccare in alto su Sign In. Nel caso di primo accesso sarà necessario registrarsi cliccando su Sign up for the first time. In questo caso sarà necessario inserire i soliti dati e ricevere una mail di conferma della registrazione.

Altrimenti, basta inserire mail e password per accedere al servizio. La registrazione così effettuata è per fini non commerciale, e limitata. Per utilizzo commerciale bisogna seguire il link in alto (Commercial Use).

Schermata di login a thingspeak
Log In a thingspeak

Finestra di accesso a thingspeak

La pagina principale che si apre la prima volta è vuota e permette con il tasto in evidenza di creare un nuovo canale. Il canale è il contenitore dei dati provenienti dal nostro progetto e al suo interno definiremo le caratteristiche di tale progetto. In particolare, nella finestra che si apre cliccando sul tasto ci verrà richiesto di inserire il nome e la descrizione del canale. N.B. essendo una versione limitata il numero di canali che si può creare è limitato. Dopo la descrizione del canale c’è la lista dei campi che il canale conterrà. Di default è abilitato un solo campo, ma basta flaggare i successivi per abilitarli. La versione è limitata pure per la quantità dei dati che si possono salvare, quindi meno sensori faranno parte del nostro progetto, meno spesso sarà necessario svuotare la memoria del nostro canale. Nel mio caso ho abilitato due canali il primo l’ho chiamato temperature sensor room 1, mentre l’altro temperature sensor room 2.

New channel 1
Pima parte della finestra di creazione di un canale
New channel part 2
Creazione di un canale

Per i successivi campi, c’è un help con la descrizione in inglese sulla destra, ma per un progetto veloce di utilizzo pratico non credo servano a molto.

Cliccato su Save Channel, il canale è creato e funzionante. Inizialmente di default si ha una visualizzazione grafica dei due canali in basso è possibile altri widget con visualizzazioni tramite gaudge o indicatori numerici.

In channel settings è riprodotto il menù di configurazioni in cui è aggiunta la possibilità di cancellare i dati memorizzati (clear channel) o di cancellare l’intero canale.

Finestra principale del canale creato con thingspeak
Finestra principale del canale creato con thingspeak

Il link più interessante ed importante è API keys. In questo linnk abbiamo tutte le informazioni per interagire dall’esterno con il servizio thingspeak. In particolare, abbiamo:

la write e read API key da inserire nelle librerie già disponibili ad esempio per arduino, al fine di inserire o richiedere dati a thingspeak

Write e read API keys per utilizzare thingSpeak da altri dispositivi
Write e read API keys

Oppure sulla destra abbiamo i link per interagire tramite http con il nostro canale. I dettagli sono dati sul sito della mathworks al link.

API request per l'utilizzo di thingspeak tramite HTTP
API request