Usare il gateway IoT per connettere oggetti al cloud: SensorTag ad Azure IoT Hub

Nota

Prima di iniziare questa esercitazione, assicurarsi di aver completato Configurare Intel NUC come gateway IoT di Azure. In Configurare Intel NUC come gateway IoT di Azure si configura il dispositivo Intel NUC come gateway IoT.

Contenuto dell'esercitazione

Informazioni su come usare un gateway IoT per connettere un SensorTag di Texas Instruments (CC2650STK) ad Azure IoT Hub. Il gateway IoT invia dati di temperatura e umidità raccolti dal SensorTag ad Azure IoT Hub.

Contenuto dell'esercitazione

  • Creare un hub IoT.
  • Registrare un dispositivo nell'hub IoT per SensorTag.
  • Abilitare la connessione tra il gateway IoT e il SensorTag.
  • Eseguire un'applicazione di esempio BLE per inviare i dati del sensore SensorTag all'hub IoT.

Elementi necessari

  • Completare l'esercitazione Configurare Intel NUC come gateway IoT di Azure in cui si configura il dispositivo Intel NUC come gateway IoT.
  • Un client SSH in esecuzione nel computer host. Si consiglia l'uso di PuTTY in Windows. Linux e macOS sono già dotati di un client SSH.
  • L'indirizzo IP, il nome utente e la password per accedere al gateway dal client SSH.
  • Una connessione Internet.

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

Nota

Qui è possibile registrare questo nuovo dispositivo per SensorTag

Abilitare la connessione tra il gateway IoT e SensorTag

In questa sezione vengono eseguite le attività seguenti:

  • Ottenere l'indirizzo MAC di SensorTag per la connessione Bluetooth.
  • Avviare una connessione Bluetooth dal gateway IoT per SensorTag.

Ottenere l'indirizzo MAC di SensorTag per la connessione Bluetooth

  1. Nel computer host eseguire il client SSH e connettersi al gateway IoT.
  2. Sbloccare il Bluetooth eseguendo il comando seguente:

    sudo rfkill unblock bluetooth
    
  3. Avviare il servizio Bluetooth sul gateway IoT e immettere una shell Bluetooth per configurare il Bluetooth eseguendo i comandi seguenti:

    sudo systemctl start bluetooth
    bluetoothctl
    
  4. Accendere il controller Bluetooth eseguendo il comando seguente nella shell del Bluetooth:

    power on
    

    accendere il controller Bluetooth sul gateway IoT con bluetoothctl

  5. Avviare l'analisi per dispositivi Bluetooth circostanti eseguendo il comando seguente:

    scan on
    

    Analizzare i dispositivi Bluetooth citcostanti con bluetoothctl

  6. Premere il pulsante di associazione su SensorTag. Il LED verde su SensorTag lampeggia.

  7. Nella shell del Bluetooth viene visualizzato il SensorTag rilevato. Prendere nota dell'indirizzo MAC di SensorTag. In questo esempio l'indirizzo MAC di SensorTag è 24:71:89:C0:7F:82.
  8. Arrestare l'analisi eseguendo il comando seguente:

    scan off
    

    Interrompere l'analisi dei dispositivi Bluetooth circostanti con bluetoothctl

Avviare una connessione Bluetooth dal gateway IoT per SensorTag

  1. Connettersi a SensorTag eseguendo il comando seguente:

    connect <MAC address>
    

    Connettersi a SensorTag con bluetoothctl

  2. Disconnettersi da SensorTag e chiudere la shell del Bluetooth eseguendo i comandi seguenti:

    disconnect
    exit
    

    Disconnettersi da SensorTag con bluetoothctl

La connessione tra il gateway IoT e SensorTag è stata abilitata correttamente.

Eseguire un'applicazione di esempio BLE per inviare i dati del sensore SensorTag all'hub IoT

L'applicazione di esempio Bluetooth Low Energy (BLE) viene offerta da Azure IoT Edge. L'applicazione di esempio raccoglie i dati dalla connessione BLE e li invia all'hub IoT. Per eseguire l'applicazione di esempio è necessario:

  1. Configurare l'applicazione di esempio.
  2. Eseguire l'applicazione di esempio nel gateway IoT.

Configurare l'applicazione di esempio

  1. Passare alla cartella dell'applicazione di esempio eseguendo il comando seguente:

    cd /usr/share/azureiotgatewaysdk/samples/ble_gateway
    
  2. Aprire il file di configurazione usando il comando seguente:

    vi ble_gateway.json
    
  3. Nel file di configurazione, inserire i valori seguenti:

    IoTHubName: il nome dell'hub IoT.

    IoTHubSuffix: ottenere IoTHubSuffix dalla chiave primaria della stringa di connessione del dispositivo di cui si è preso nota. Assicurarsi di ottenere la chiave primaria della stringa di connessione del dispositivo, non la chiave primaria della stringa di connessione dell'hub IoT. La chiave primaria della stringa di connessione del dispositivo ha il formato HostName=IOTHUBNAME.IOTHUBSUFFIX;DeviceId=DEVICEID;SharedAccessKey=SHAREDACCESSKEY.

    Transport: il valore predefinito è amqp. Questo valore mostra il protocollo durante il trasporto. Potrebbe essere http, amqp o mqtt.

    macAddress: l'indirizzo MAC di SensorTag di cui si è preso nota.

    deviceID: ID del dispositivo creato nell'hub IoT.

    deviceKey: la chiave primaria della stringa di connessione del dispositivo.

    Completare il file di configurazione dell'applicazione di esempio BLE

  4. Premere ESC e digitare :wq per salvare il file.

Eseguire l'applicazione di esempio

  1. Assicurarsi che SensorTag sia acceso.
  2. Eseguire il comando seguente:

    ./ble_gateway ble_gateway.json
    

Passaggi successivi

Usare il gateway IoT per la trasformazione dei dati del sensore con Azure IoT Edge