Introduzione (Soluzione IoT per gestione irrigazione)
Utilizzando i servizi cloud Microsoft Azure e gli SDK open source è possibile realizzare una applicazione IoT completa in brevissimo tempo. Tutti i servizi cloud utilizzati per realizzare l’applicazione descritta sono disponibili gratuitamente selezionando il piano di servizio free.
L’applicazione che andremo a realizzare in questa serie di post è costituita da:
- Panoramica del progetto – Parte 1
- Dispositivi di campo (sensori e attuatori)
- Sensore livello acqua dei serbatoi – Parte 2
- Collegare i dispositivi di campo al cloud – Parte 3
- Componente cloud per analisi ed elaborazione dati
- Stream Analitics Job – Parte 4
- Dashboard online per visualizzazione dati realtime
- App mobile per monitoraggio dell’impianto
PowerBI
PowerBI (https://powerbi.microsoft.com/it-it/) è un prodotto Microsoft relativamente recente dedicato all’analisi e alla visualizzazione dei dati, disponibile anche in versione gratuita.
Stream Analytics Jobs
Per visualizzare i dati dei sensori raccolte dall’IOT Hub è possibile utilizzare un “Processo di Analisi di Flusso” (Stream Analytics Job) configurando l’event hub come input e PowerBI come output.

Dopo la crezione è necessario configurare INPUT e OUTPUT del processo. In questo caso l’input sarà l’IOT Hub, mentre l’output sarà un dataset di PowerBI.
Aggiungere un input al processo di analisi di flusso
- Aprire il processo di analisi di flusso.
- In Topologia processo fare clic su Input.
- Nel riquadro Input fare clic su Aggiungi, quindi immettere le informazioni seguenti:Alias di input: l’alias univoco per l’input.Origine: selezionare Hub IoT.Gruppo di consumer: selezionare il gruppo di consumer appena creato.
- Fare clic su Crea.
Aggiungere un output al processo di analisi di flusso
- In Topologia processo fare clic su Output.
- Nel riquadro Output fare clic su Aggiungi, quindi immettere le informazioni seguenti:Alias di output: l’alias univoco per l’output.Sink: selezionare Power BI.
- Fare clic su Autorizza e quindi accedere all’account di Power BI.
- Dopo aver concesso l’autorizzazione immettere le seguenti informazioni:Area di lavoro del gruppo: selezionare l’area di lavoro del gruppo di destinazione.Nome set di dati: immettere un nome per il set di dati.Nome tabella: immettere un nome per la tabella.
La connessione a PowerBI avviene tramite le API di PowerBI e utilizza le credenziali dell’account.

Elaborazione Dati
Il flusso dati da IOT Hub verso PowerBI può essere filtrato e modificato scrivendo una query in linguaggio SQL nella sezione “Query” della configurazione del job. La query può essere testata in maniera interattiva prima dell’avvio del job di analisi.
Configurare la query del processo di analisi di flusso
- In Topologia processo fare clic su Query.
- Sostituire
[YourInputAlias]
con l’alias di input del processo. - Sostituire
[YourOutputAlias]
con l’alias di output del processo. - Fare clic su Salva.
- Modificare i dati
- Eseguire campionamento e test
- Avviare Job
Dopo aver avviato il job (l’esecuzione dei test non è sufficiente: dopo la creazione il job deve essere avviato per vedere il dataset in PowerBI!) il dataset configurato come output sarà visibile in PowerBI ed utilizzabile in report e dashboard come qualsiasi altro dataset.