Arduino IoT Cloud, come configurare un dispositivo

Arduino IoT Cloud è una funzione di Arduino Create che permette di creare dispositivi connessi in grado di interagire con un’app Android o Ios. Nell’era digitale in cui viviamo, la connettività è diventata un elemento fondamentale della nostra quotidianità. Dai nostri smartphone ai dispositivi domestici, tutto sembra essere connesso in una rete sempre più intricata. In questo contesto, l’Internet delle Cose (IoT) sta emergendo come una delle tecnologie più rivoluzionarie, trasformando le nostre case in ambienti intelligenti e interconnessi.

Uno degli attori principali dietro questa rivoluzione è proprio Arduino, un nome noto tra gli appassionati di elettronica e prototipazione. Ma cosa succede quando si combina la potenza di Arduino con la flessibilità e la scalabilità dell’IoT? La risposta è semplice: Arduino IoT Cloud.

Arduino IoT Cloud è una piattaforma innovativa che offre un accesso senza soluzione di continuità all’Internet of Things, consentendo a chiunque, dai principianti agli esperti, di creare progetti IoT personalizzati e di farli comunicare con facilità attraverso il cloud. Questo articolo è il primo di una serie che ti guiderà attraverso le diverse sfaccettature di Arduino IoT Cloud, dalla sua installazione e configurazione, all’implementazione di progetti pratici che trasformeranno la tua casa in un ambiente intelligente e connesso.

Scoprirai come Arduino IoT Cloud può migliorare la tua vita quotidiana, rendendo la gestione delle tue apparecchiature domestiche più efficiente e rendendoti parte di una rete globale di dispositivi intelligenti. Quindi, preparati a esplorare le infinite possibilità offerte da Arduino IoT Cloud e a immergerti nel futuro dell’IoT domestico.

In questo primo tutorial configuriamo insieme un dispositivo IoT in grado di leggere il livello di luminosità all’interno della nostra stanza. Ci occorreranno una scheda Arduino dotata di connettività di rete, una breadboard, cavi jumper, un resistore e una fotoresistenza.

Iniziamo a creare con Arduino IoT Cloud

Per utilizzarlo dobbiamo creare un account ed installare il plugin Arduino Create Agent. La procedura è molto semplice ed è descritta passo passo nel link che abbiamo allegato.

Iniziamo a creare con Arduino IoT Cloud

arduino iot cloud

Per configurare il nostro primo dispositivo dobbiamo cliccare sul pulsante “IoT Cloud“. Il primo step consiste nel creare un “oggetto” cliccando su “Add new thing“.

Il sito ci guiderà in questa procedura: per prima cosa diamo un nome all’oggetto (io lo chiamo IoT); successivamente dovremo scegliere la scheda da associare.

Configurare un nuovo dispositivo IoT

Visto che è la prima volta, andremo a configurare un nuovo dispositivo: scegliendo questa voce veniamo reindirizzati ad una nuova pagina web.

Arduino iot cloud

Dal momento che Arduino è un progetto open source, abbiamo la possibilità di scegliere tra un prodotto ufficiale oppure una scheda di terze parti.

Le schede ufficiali compatibili sono le seguenti (aggiornato a settembre 2023):

  • Arduino NANO 33 IoT
  • Arduino MKR WiFi 1010
  • Arduino MKR WAN 1310
  • Arduino MKR WAN 1300
  • Arduino MKR NB 1500
  • Arduino MKR GSM 1400
  • Arduino MKR1000
  • Arduino UNO R4 WiFi
  • Arduino Portenta X9
  • Arduino Portenta H7
  • Opta
  • Arduino Nicla Vision
  • Arduino Nano RP2040 Connect
  • Arduino Giga R1
  • Arduino Nano ESP32

Le schede di terze parti sono diverse, tra cui le board ESP32 ed ESP8266.

Fatta la nostra scelta non dobbiamo far altro che collegare il dispositivo tramite USB e la piattaforma riconoscerà in automatico la scheda.

Se la procedura è corretta, confermiamo cliccando su “configure“. Dopo aver dato un nome alla scheda il setup farà tutto da solo.

arduino iot cloud

A questo punto clicchiamo su “done” e torniamo alla creazione del nostro “oggetto“, confermando nome e scheda.

Quando vorremo creare nuovi oggetti non ci sarà bisogno di configurare la scheda (a meno che, ovviamente, non ne abbiamo acquistata una nuova).

Creare una proprietà

arduino iot cloud

Adesso dobbiamo creare una “proprietà“: vediamo di cosa si tratta.

Nella finestra di configurazione dobbiamo assegnarle un nome e associarle una variabile (che utilizzeremo poi nel codice da caricare sulla scheda). di quest’ultima dobbiamo anche scegliere la tipologia, impostare i valori minimi e massimi, scegliere se impostarla di sola lettura o meno e scegliere in che modo verrà aggiornata sull’app dove la visualizzeremo.

Queste le scelte che dovremmo indicare nel nostro caso.

Lo sketch

Dopo aver creato la proprietà, dobbiamo andare ad editare lo sketch (il codice che andrà caricato sulla scheda) cliccando sul pulsante in alto a destra. Verremo reindirizzati sull’editor online anche se nessuno ci vieta di scaricare il tutto ed utilizzare l’IDE trazionale (anche se dovremo installare le due librerie arduino_secrets.h e thingProperties.h).

arduino iot cloud

Lo sketch ha quattro schede:

  • nella prima abbiamo il codice che permette la comunicazioni via cloud (noi dobbiamo editare solamente il loop);
  • in ReadME.adoc abbiamo una breve documentazione;
  • in thingProperties.h abbiamo la configurazione della proprietà che abbiamo creato in precedenza;
  • in Secret dobbiamo inserire l’SSID della nostra rete wifi (in altre parole il nome della rete che visualizziamo, ad esempio, quando ci colleghiamo con lo smartphone) e la relativa password (per permettere la connessione della scheda Arduino).

Nel nostro caso la variabile “luce” è uguale alla lettura analogica del pin A0, quindi dobbiamo solamente inserire nel loop la seguente riga:

luce = analogRead(0);

Nel complesso quindi il codice sarà il seguente:

#include "arduino_secrets.h"
#include "thingProperties.h"

void setup() {
  // Initialize serial and wait for port to open:
  Serial.begin(9600);
  // This delay gives the chance to wait for a Serial Monitor without blocking if none is found
  delay(1500); 

  // Defined in thingProperties.h
  initProperties();

  // Connect to Arduino IoT Cloud
  ArduinoCloud.begin(ArduinoIoTPreferredConnection);
  
  /*
     The following function allows you to obtain more information
     related to the state of network and IoT Cloud connection and errors
     the higher number the more granular information you’ll get.
     The default is 0 (only errors).
     Maximum is 4
 */
  setDebugMessageLevel(2);
  ArduinoCloud.printDebugInfo();
}

void loop() {
  ArduinoCloud.update();
  // Your code here 
luce = analogRead(0);
}

Il codice andrà caricato sulla scheda seguendo la procedura classica.

Arduino IOT Cloud

Il circuito per utilizzare il sensore di luce è questo: nel caso in cui si stia utilizzando un’altra schdea dovremo avere l’accortezza di fare riferimento ai pin del dispositivo che stiamo effettivamente utilizzando.

Visualizzare i dati con Arduino IoT Cloud

Una volta caricato lo sketch sulla scheda possiamo tornare ad Arduino IoT Cloud cliccando sul pulsante omonimo che si trova in alto nell’editor.

L’ultimo step è quello di creare, cliccando in alto su dashboard, l’interfaccia dove visualizzare i dati che la scheda Arduino sta inviando in cloud.

arduino iot cloud

Anche in questo caso, visto che si tratta del nostro primo progetto, dovremo cliccare su “create dashboard“. In alto possiamo andare a impostare un nome e poi, in alto a sinistra, possiamo aggiungere degli elementi cliccando su “add“. Per visualizzare il valore letto dalla scheda scegliamo un widget di tipo “value” e inseriamolo nella dashboard.

A destra si aprirà un riquadro che ci permetterà di configurare quanto abbiamo appena inserito.

Arduino iot cloud

Dopo aver dato il nome dobbiamo far click su “Link Property” in modo di selezionare l’oggetto e la proprietà da associare al widget selezionato.

Se non abbiamo commesso errori, la dashboard ci mostrerà il valore letto dalla scheda Arduino.

Ora non ci resta altro che installare sul nostro smartphone (Android o Ios) l’app Arduino IoT Cloud Remote e loggarci con le nostre credenziali. Qui potremo visualizzare le nostre dashboard e leggere da remoto le informazioni che ci sta inviando il dispositivo che abbiamo appena configurato.

arduino iot cloud

Conclusioni

Nel prossimo tutorial vedremo come utilizzare Arduino IoT Cloud per realizzare una fioriera intelligente in grado di monitorare l’umidità, la temperatura e lo stato del terriccio direttamente dal nostro smartphone. Qui i link:

In caso di dubbi o suggerimenti puoi contattarci utilizzando il form qui sotto. Se sei un docente e vuoi portare esperienze di questo tipo nella tua scuola consulta la nostra offerta didattica STEM.

Se invece stai muovendo i primi passi in questo mondo e cerchi dei contenuti che possano guidarti nelle basi di Arduino, ti consigliamo il corso online che abbiamo realizzato.

    Acconsento al trattamento dei dati personali ai sensi del Regolamento UE 2016/679. Leggi la Privacy Policy.