Utilizzare Node-RED per la creazione in serie di dispositivi e dashboard via MQTT

Sfruttando le funzionalità di template dispositivo e template dashboard, è possibile fare in modo che ad ogni connessione di un'istanza Node-RED in Databoom, vengano generati automaticamente un dispositivo ed una dashboard.

 


 

1. Creazione del template di un dispositivo

Il template rappresenta il "modello" che verrà utilizzato per la creazione di tutti i dispositivi. Ogni nuova istanza Node-RED collegata avrà quindi le stesse impostazioni e segnali.

Per la creazione del template di un dispositivo:

    • Selezionare il tipo di dispositivo Template Device;
    • Impostare a piacere gli altri campi del riquadro Informazioni;
    • Nel riquadro Template Device selezionare il Tipo dispositivo MQTT;
    • Aggiungere dei segnali al template, nell'esempio sono stati aggiunti due segnali template_signal e template_virtual;
      • template_virtual è il template di un segnale virtuale che utilizza template_signal come variabile
      • Ogni dispositivo che verrà generato avrà gli stessi segnali
      • Una volta aggiunti dei segnali al template, è possibile accedere alla loro pagina di modifica dalla pagina del template una volta salvato, è sufficiente cliccare sull'etichetta del segnale corrispondente
      • La rimozione del segnale dal template avviene direttamente dalla pagina di modifica del template, cliccando sulla X accanto al segnale che si vuole eliminare
    • Impostare un progetto, nell'esempio viene utilizzato MQTTTest;
    • Impostare i topic di pubblicazione dati e ricezione informazioni, nell'esempio data e info;
    • Dopo aver compilato tutti i campi la situazione dovrebbe rispecchiare quella dell'immagine seguente:

    • Per la configurazione di Node-RED è necessario prender nota:
      • del token del template
      • dei token dei segnali
      • del ClientID
      • del topic per la pubblicazione dei dati

 


 

2. Configurazione di Node-RED

Per il flusso di esempio vengono utilizzati il blocco di input inject, il blocco di output mqtt e il blocco function function.

 

Per creare un dispositivo da template in Databoom è possibile strutturare il diagramma di flusso come il seguente (in allegato all'articolo)

Il blocco timestamp costituisce un intervallo temporale, alla fine del quale viene generato un valore random per popolare il segnale template_signal da inoltrare a Databoom. Il valore dell'intervallo dev'essere di almeno 60 secondi, non vengono registrati valori sotto questa soglia.

Nel blocco prepare-data-to-push vanno specificati i valori annotati in precedenza:

  • il token del template del segnale template_signal (riga 8);
  • il token del template di dispositivo (alla riga 16 della funzione);

Nel blocco mqtt-to-databoom vanno specificati i campi per la trasmissione MQTT

  • nelle proprietà del nodo, nel campo Topic, va specificato il topic di pubblicazione MQTTTest/<valore unico arbitrario>/data, come valore unico arbitrario impostiamo NodeRED (valore da cambiare per ogni eventuale altro deploy di NodeRED), il topic sarà quindi MQTTTest/NodeRED/data

  • cliccando l'icona della matita accanto al campo server, si accede alla finestra di modifica dove è possibile specificare il Client ID V9Gg-<valore unico arbitrario>, popolato con il valore unico arbitrario NodeRED sarà V9Gg-NodeRED;

  • nella scheda Security vanno specificate le credenziali per l'autenticazione
    • il nome utente è lo username per l'accesso in Databoom
    • la password è un OAuth token creato in Databoom con permessi di Pubblicazione Creazione
      • Nel menù laterale Impostazioni -> Credenziali, cliccare il pulsante Aggiungi OAuth nel riquadro Chiavi OAuth
      • Per garantire una sicurezza ottimale, si consiglia di generare un OAuth token diverso per ogni istanza del template che si vuole configurare


 

3. Trasmettere ad un template/Generazione dispositivo

Una volta creato il template in Databoom e configurato Node-RED, alla prima trasmissione verrà generato un dispositivo con le stesse impostazioni del template.

  • Come descrizione viene utilizzato il token del template seguito dal <valore unico arbitrario> impostato, avremo quindi il dispositivo 0ay3at2v1i-NodeRED
  • La descrizione può essere modificata a piacere dalla pagina di modifica del dispositivo

 


 

4. Creazione di una dashboard come modello per il template

Per poter creare un template di una dashboard è necessario creare una dashboard che contenga i segnali di un dispositivo generato da un template, che potranno quindi essere sostituiti con segnali di altri dispositivi generati dallo stesso template.

Nella dashboard di esempio template_signals sono stati inseriti dei widget rappresentanti i segnali template_signal e template_virtual del dispositivo generato da template.

 


 

5. Creazione del template di una dashboard

Per generare il template è sufficiente cliccare il pulsante + all'interno del Dashboard Manager in corrispondenza della dashboard creata nel passaggio precedente. Confermando la modale, il template verrà visualizzato nell'elenco apposito.

 


 

6. Associare il template della dashboard al template dispositivo

Accedendo alla pagina di modifica del template di dispositivo sarà quindi possibile specificare nel campo Template dashboard il template di dashboard appena creato.

 


 

7. Configurazione completata

Una volta associato il template della dashboard al template di dispositivo, la configurazione è completata. Ad ogni connessione di una nuova istanza Node-RED verranno quindi creati automaticamente il dispositivo e la dashboard associata.

Altre domande? Invia una richiesta

0 Commenti

Accedi per aggiungere un commento.