Node-RED è un linguaggio di programmazione a blocchi, sviluppato per gestire agevolmente flussi di dati che viaggiano in ambiente IoT , o generati dai sensori gestiti da baord come arancino.cc attraverso la programmazione flow-based . Node-red mette a disposizione degli utenti un editor di flussi (fig.1) basato su browser, che grazie ad un’ampia galleria di nodi presenti nella palette della dashboard, semplifica il collegamento e la realizzazione dei flussi, che possono essere distribuiti in runtime con un semplice click. Le funzioni JavaScript possono essere create all’interno dell’editor utilizzando un editor di testo avanzato. Le funzioni, i modelli o i flussi creati dall’utente, grazie ad una libreria integrata, possono essere salvati per il riutilizzo.
Node-red si basa sul protocollo MQTT (Message Queuing Telemetry Transport) di IBM, lo standard di riferimento della comunicazione per l’Internet delle Cose. Le informazioni tra i nodi di ogni flusso viaggiano sotto forma di messaggi (msg) alfa-numerici o di altro tipo (json), contenuti nei blocchi payload o msg.payload ; ogni messaggio inviato ad un nodo del flusso, può essere inviato al nodo successivo, che lo userà a sua volta per l’operazione per cui è stato programmato.
Il runtime leggero è basato su Node.js, sfruttando appieno il suo modello non bloccante basato sugli eventi. Questo lo rende ideale per funzionare ai margini della rete su hardware a basso costo e nel Cloud. I flussi creati in Node-RED vengono archiviati utilizzando JSON che può essere facilmente importato ed esportato per la condivisione. Una libreria di flussi online consente di condividere i flussi realizzati
Installazione in ambiente Windows
Prima di installare Node-Red sul proprio pc è necessario installare Node.js e Git (ed in automatico npm (Node Package Manager) sul proprio computer. Per verificarne la corretta installazione aprire il prompt dei comandi (combinazione di tasti Win+R e digitare cmd) e digitare il seguente comando:
node --version
npm --version
Saranno mostrati a video le versioni di node ed npm installate. Successivamente si potrà installare Node-RED digitando il seguente comando:
npm install -g --unsafe-perm node-red
Terminata l’installazione è possibile avviare Node-Red da prompt dei comandi digitando il comando
c:>node-red
Dopo aver caricato tutti i componenti del programma comparirà a video una finestra simile a quella mostrata in figura:
Come descritto in figura, per utilizzare l’interfaccia grafica di Node-Red è necessario aprire il proprio browser web all’indirizzo http://127.0.0.1:1880/
E’ possibile aumentare il numero di oggetti (nodi) a disposizione nella colonna a sinistra (Palette) aggiungendo le specifiche librerie. La figura seguente mostra ad esempio come installare i nodi necessari per gestire la comunicazione seriale attraverso una porta COM del pc. Sono tuttavia disponibili tante altre librerie (dashboard, worldmap, random) tra le quali node-red-email , necessaria per ricevere/inviare email ad un account di posta elettronica. Per installare le librerie basta cliccare sulle 3 lineette in alto a destra, selezionare la voce “Manage Palette“, cercare nel campo “search” la libreria richiesta e premere sul pulsante “Install”.
Nella sezione “Esempi con Mikroe Click” Abbiamo realizzato alcuni esempi di utilizzo delle board arancino.cc con interfaccia grafica Node-red.
(author: ing. Giulio De Meo)