Connettere Adafruit Feather HUZZAH ESP8266 ad Azure IoT Hub nel cloud

Connessione tra DHT22, Feather HUZZAH ESP8266 e l'hub IoT

Operazioni da fare

Connettere Adafruit Feather HUZZAH ESP8266 a un hub IoT che è stato creato. Eseguire un'applicazione di esempio in ESP8266 per raccogliere dati di temperatura e umidità da un sensore DHT22. Infine inviare i dati del sensore all'hub IoT.

Nota

Se si usano altre schede ESP8266, è comunque possibile seguire questa procedura per connetterle all'hub IoT. A seconda della scheda ESP8266 usata, potrebbe essere necessario riconfigurare il LED_PIN. Ad esempio se si usa ESP8266 di AI-Thinker, è possibile modificarne l'impostazione da 0 a 2. Se non si ha ancora un kit, è possibile ottenerlo nel sito Web Azure.

Contenuto dell'esercitazione

  • Come creare un hub IoT e registrare un dispositivo per Feather HUZZAH ESP8266
  • Come connettere Feather HUZZAH ESP8266 al sensore e al computer
  • Come raccogliere i dati del sensore eseguendo un'applicazione di esempio in Feather HUZZAH ESP8266
  • Come inviare i dati del sensore all'hub IoT

Elementi necessari

Componenti necessari per l'esercitazione

Per completare questa operazione è necessario disporre dei componenti seguenti di Feather HUZZAH ESP8266 Starter Kit:

  • Scheda Feather HUZZAH ESP8266
  • Cavo USB Micro/tipo A

Per l'ambiente di sviluppo sono necessari anche gli elementi seguenti:

  • Una sottoscrizione di Azure attiva. Se non si ha un account Azure, creare un account Azure gratuito in pochi minuti.
  • Mac o PC che esegue Windows o Ubuntu.
  • Rete wireless a cui Feather HUZZAH ESP8266 deve connettersi.
  • Connessione Internet per scaricare lo strumento di configurazione.
  • IDE Arduino 1.6.8 o versione successiva. Le versioni precedenti non funzionano con la libreria AzureIoT.

Gli elementi seguenti sono facoltativi nel caso in cui non si disponga di un sensore. È possibile anche usare dati di sensori simulati.

  • Sensore di temperatura e umidità Adafruit DHT22
  • Basetta sperimentale
  • Cavi ponticello M/M

Creare un hub IoT

  1. Nel portale di Azure fare clic su Nuovo > Internet delle cose > Hub IoT.

    Creare un hub IoT nel portale di Azure

  2. Nel riquadro Hub IoT immettere le informazioni seguenti per l'hub IoT:

    Nome: immettere il nome dell'hub IoT. Se il nome immesso è valido, viene visualizzato un segno di spunta verde.

    Piano tariffario e livello di scalabilità: selezionare il livello F1 gratuito. Questa opzione è sufficiente per questa demo. Per altre informazioni, vedere Piano tariffario e livello di scalabilità.

    Gruppo di risorse: creare un gruppo di risorse per ospitare l'hub IoT o usarne uno esistente. Per altre informazioni, vedere Usare i gruppi di risorse per gestire le risorse di Azure.

    Percorso: selezionare la posizione più vicina all'utente in cui viene creato l'hub IoT.

    Aggiungi al dashboard: selezionare questa opzione per semplificare l'accesso all'hub IoT dal dashboard.

    Immettere le informazioni per creare l'hub IoT

    Importante

    L'hub IoT sarà individuabile pubblicamente come endpoint DNS, quindi evitare di indicare informazioni riservate nell'assegnazione del nome.

  3. Fare clic su Crea. La creazione dell'hub IoT può richiedere alcuni minuti. È possibile visualizzare lo stato di avanzamento nel riquadro Notifiche.

    Vedere le notifiche relative allo stato dell'hub IoT

  4. Dopo aver creato l'hub IoT, selezionarlo nel dashboard. Annotare il Nome host, quindi fare clic su Criteri di accesso condiviso.

    Ottenere il nome host dell'hub IoT

  5. Nel riquadro Criteri di accesso condivisi fare clic sul criterio iothubowner, quindi copiare e annotare la Stringa di connessione dell'hub IoT. Per altre informazioni, vedere Controllare l'accesso all'hub IoT.

Nota

Per questa esercitazione di configurazione non è necessaria la stringa di connessione iothubowner. Potrebbe essere tuttavia necessaria per alcune delle esercitazioni in altri scenari IoT, dopo aver completato questa configurazione.

Ottenere la stringa di connessione dell'hub IoT

Registrare un dispositivo nell'hub IoT per il dispositivo

  1. Nel portale di Azure, aprire l'hub IoT.

  2. Fare clic su Esplora dispositivi.

  3. Nel riquadro Esplora dispositivi fare clic su Aggiungi per aggiungere un dispositivo all'hub IoT. Eseguire quindi le operazioni seguenti:

    ID dispositivo: immettere l'ID del nuovo dispositivo. Gli ID dispositivo fanno distinzione tra maiuscole e minuscole.

    Tipo di autenticazione: selezionare Chiave simmetrica.

    Genera chiavi automaticamente: selezionare questa casella di controllo.

    Connetti dispositivo all'hub IoT: fare clic su Abilita.

    Aggiungere un dispositivo a Device Explorer nell'hub IoT

    Importante

    L'ID dispositivo può essere visibile nei log raccolti per il supporto tecnico e la risoluzione dei problemi, quindi evitare di indicare informazioni riservate nell'assegnazione del nome.

  4. Fare clic su Salva.

  5. Dopo la creazione del dispositivo, aprire il dispositivo nel riquadro Esplora dispositivi.
  6. Annotare la chiave primaria della stringa di connessione.

    Ottenere la stringa di connessione del dispositivo

Connettere Feather HUZZAH ESP8266 con il sensore e il computer

In questa sezione si connettono i sensori alla scheda. Quindi si collega il dispositivo al computer per poterlo usare.

Connettere un sensore di temperatura e umidità DHT22 a Feather HUZZAH ESP8266

Usare la basetta sperimentale e i cavi ponticello per stabilire la connessione come indicato di seguito. Se non si dispone di un sensore, ignorare questa sezione in quanto è possibile usare i dati di sensori simulati.

Riferimento per le connessioni

Per i pin dei sensori usare i collegamenti seguenti:

Inizio (sensore) Fine (scheda) Colore del cavo
VDD (Pin 31F) 3V (Pin 58H) Cavo rosso
DATI (Pin 32F) GPIO 2 (Pin 46A) Cavo blu
GND (Pin 34F) GND (PIn 56I) Cavo nero

Per altre informazioni, vedere la configurazione del sensore Adafruit DHT22 e la piedinatura di Adafruit Feather HUZZAH Esp8266.

Ora Feather Huzzah ESP8266 è connesso con un sensore funzionante.

Connettere DHT22 a Feather HUZZAH

Connettere Feather HUZZAH ESP8266 al computer

Usare il cavo USB Micro/tipo A per connettere Feather HUZZAH ESP8266 al computer.

Connettere Feather HUZZAH al computer

Aggiungere le autorizzazioni per la porta seriale (solo Ubuntu)

Se si usa Ubuntu, assicurarsi di avere le autorizzazioni per operare sulla porta USB di Feather HUZZAH ESP8266. Per aggiungere autorizzazioni sulla porta seriale, seguire questi passaggi:

  1. Eseguire i comandi seguenti in un terminale:

    ls -l /dev/ttyUSB*
    ls -l /dev/ttyACM*
    

    Si ottiene uno degli output seguenti:

    • crw-rw---- 1 root uucp xxxxxxxx
    • crw-rw---- 1 root dialout xxxxxxxx

    Nell'output osservare che uucp o dialout è il nome del proprietario del gruppo della porta USB.

  2. Aggiungere l'utente al gruppo eseguendo il comando seguente:

    sudo usermod -a -G <group-owner-name> <username>
    

    <group-owner-name> è il nome del proprietario gruppo ottenuto nel passaggio precedente. <username> è il nome utente di Ubuntu.

  3. Disconnettere Ubuntu, quindi accedere di nuovo per visualizzare la modifica.

Raccogliere i dati del sensore e inviarli all'hub IoT

In questa sezione si distribuisce un'applicazione di esempio in Feather HUZZAH ESP8266. L'applicazione di esempio fa lampeggiare il LED sulla scheda Feather HUZZAH ESP8266 e invia i dati di temperatura e umidità raccolti dal sensore DHT22 all'hub IoT.

Ottenere l'applicazione di esempio da Github

L'applicazione di esempio è ospitata in GitHub. Clonare il repository di esempio che contiene l'applicazione di esempio da GitHub. Per clonare il repository di esempio, seguire questi passaggi:

  1. Aprire un prompt dei comandi o una finestra del terminale.
  2. Passare alla cartella in cui archiviare l'applicazione di esempio.
  3. Eseguire il comando seguente:

    git clone https://github.com/Azure-Samples/iot-hub-feather-huzzah-client-app.git
    

Installare il pacchetto per Feather HUZZAH ESP8266 nell'IDE Arduino:

  1. Aprire la cartella in cui è archiviata l'applicazione di esempio.
  2. Aprire il file app.ino nella cartella dell'app nell'IDE Arduino.

    Aprire l'applicazione di esempio nell'IDE Arduino

  3. Nell'IDE di Arduino fare clic su File > Preferenze.

  4. Nella finestra di dialogo Preferences (Preferenze) fare clic sull'icona accanto alla casella Additional Boards Manager URLs (URL di gestione schede aggiuntivi).
  5. Nella finestra a comparsa immettere l'URL seguente e quindi fare clic su OK.

    http://arduino.esp8266.com/stable/package_esp8266com_index.json

    Puntare all'URL di un pacchetto nell'IDE Arduino

  6. Nella finestra di dialogo Preferenza fare clic su OK.

  7. Fare clic su Strumenti > Bacheca > Boards Manager (Gestione bacheche) e quindi cercare esp8266.

    Boards Manager indica che è installata ESP8266 con una versione 2.2.0 o successiva.

    Il pacchetto esp8266 è installato

  8. Fare clic su Strumenti > Bacheca > Adafruit HUZZAH ESP8266.

Installare le librerie necessarie

  1. Nell'IDE di Arduino fare clic su Schizzo > Include Library (Includi libreria) > Gestisci librerie.
  2. Cercare i seguenti nomi di libreria uno alla volta. Per ogni libreria trovata fare clic su Install (Installa).
    • AzureIoTHub
    • AzureIoTUtility
    • AzureIoTProtocol_MQTT
    • ArduinoJson
    • DHT sensor library
    • Adafruit Unified Sensor

Non si dispone di un sensore DHT22 reale?

L'applicazione di esempio consente di simulare i dati di temperatura e umidità nel caso non si disponga di un sensore DHT22 reale. Per abilitare l'applicazione di esempio all'uso di dati simulati, seguire questa procedura:

  1. Aprire il file config.h nella cartella app.
  2. Individuare la seguente riga di codice e modificare il valore da false a true:

    define SIMULATED_DATA true
    

    Configurare l'applicazione di esempio per l'uso di dati simulati

  3. Salvare il file con Control-s.

Distribuire l'applicazione di esempio in Feather HUZZAH ESP8266

  1. Nell'IDE di Arduino fare clic su Strumento > Porta e quindi fare clic sulla porta seriale per Feather HUZZAH ESP8266.
  2. Fare clic su Schizzo > Carica per compilare e distribuire l'applicazione di esempio in Feather HUZZAH ESP8266.

Immettere le credenziali

Una volta completato l'upload, seguire questa procedura per immettere le credenziali:

  1. Nell'IDE di Arduino fare clic su Strumenti > Serial Monitor (Monitoraggio seriale).
  2. Nella finestra del monitoraggio seriale notare i due elenchi a discesa nell'angolo inferiore destro.
  3. Selezionare No line ending (Senza terminazione di riga) per la casella di riepilogo a discesa a sinistra.
  4. Selezionare 115200 baud per la casella di riepilogo a discesa a destra.
  5. Nella casella di input nella parte superiore della finestra del monitoraggio seriale immettere le informazioni seguenti, se viene richiesto di fornirle, e quindi fare clic su Invia.
    • Wi-Fi SSID
    • Password Wi-Fi
    • Stringa di connessione del dispositivo
Nota

Le informazioni sulle credenziali sono archiviate in EEPROM di Feather HUZZAH ESP8266. Se si fa clic sul pulsante di reset della scheda Feather HUZZAH ESP8266, l'applicazione di esempio chiede se si vuole cancellare le informazioni. Immettere Y per cancellare le informazioni. Viene chiesto di specificare nuovamente le informazioni.

Verificare che l'applicazione di esempio venga eseguita correttamente

Se si vede il seguente output dalla finestra di monitoraggio seriale e il LED di Feather HUZZAH ESP8266 lampeggia, significa che l'applicazione di esempio si esegue correttamente.

Output finale nell'IDE Arduino

Passaggi successivi

La scheda Feather HUZZAH ESP8266 è stata connessa all'hub IoT e i dati acquisiti dal sensore sono stati inviati all'hub IoT.

Per altre informazioni sulle attività iniziali con l'hub IoT di Azure e per esplorare altri scenari IoT, vedere: