Node-RED, uno strumento open-source basato sulla programmazione in streaming, offre agli sviluppatori un approccio flessibile alla programmazione visiva, consentendo di IOTRouter Gateway di Edge Computing EG di connettersi facilmente a una serie di fonti di dati per l'elaborazione e la conversione dei dati. Il gateway EG Edge Computing è in grado di raccogliere e analizzare inizialmente i dati in tempo reale presso il punto in cui vengono generati, riducendo così i requisiti di larghezza di banda e migliorando l'efficienza dell'elaborazione dei dati. Può anche raccogliere i dati attraverso vari protocolli (ad esempio, Modbus, MQTT, OPC UA, ecc.) ed eseguire la conversione e l'archiviazione necessarie dei dati.
I. Funzioni di base del gateway di Edge Computing EG
EG Edge Computing Gateway svolge il ruolo di livello intermedio di raccolta ed elaborazione dei dati nel sistema ed elabora in modo flessibile i dati provenienti da più sensori e dispositivi per il filtraggio in tempo reale e l'analisi preliminare. Gateway di Edge Computing EG ha le seguenti funzioni:
Conversione del protocollo: Supportare i protocolli di trasmissione dati tra diversi dispositivi, come Modbus, OPC UA, MQTT, ecc.
Elaborazione e analisi locale: Fornisce potenza di calcolo per filtrare, convertire e analizzare semplicemente i dati.
Memorizzazione e trasmissione dei dati: Trasmette i dati elaborati attraverso la rete a un database nel cloud o a un server locale.
II. Meccanismo di funzionamento del Nodo-RED
Node-RED offre un editor di flussi basato su browser che consente agli utenti di trascinare e rilasciare i nodi per creare flussi di elaborazione dei dati. Ogni nodo ha caratteristiche di ingresso e di uscita ed è in grado di eseguire compiti specifici di elaborazione dei dati. Node-RED dispone di un ricco supporto di plug-in, come Modbus, MQTT, OPC UA, ecc. che lo rendono in grado di integrare diverse fonti di dati.
III. Acquisizione ed elaborazione dei dati
Processo di riferimento: raccogliere regolarmente i dati dai dispositivi slave attraverso il gateway EG, formattare i dati raccolti in un formato riconoscibile dal database MySQL e caricare il database MySQL dell'utente. Prendendo come esempio la raccolta dei dati degli slave Modbus RTU, il flusso di operazioni è il seguente:
1. Connettersi al database MySQL
Per prima cosa assicurarsi di installare il nodo MySQL, quindi nell'editor Node-RED aggiungere il nodo MySQL e configurare i parametri di connessione al database, tra cui host, porta, nome utente, password e nome del database.
Usare il nodo MySQL per configurare i parametri di connessione al database MySQL dell'utente; la configurazione viene completata e distribuita e il display connesso indica che la connessione è riuscita.
2. Raccogliere i dati dello slave
Utilizzare l'acquisizione dati Modbus RTU
Configurare l'indirizzo host e la porta del nodo Modbus e specificare i registri dati da raccogliere.
Creare un processo di raccolta dati per collegare il nodo Modbus al nodo MySQL. Impostare un nodo timer per attivare periodicamente l'attività di raccolta dati per garantire dati accurati e in tempo reale.
3. Formattazione dei dati
Quando i dati vengono caricati nel database MySQL, devono essere formattati nella corretta istruzione SQL secondo i requisiti di MySQL. Per formattare i dati, utilizzare il nodo di calcolo delle funzioni. Il formato dei dati da convertire è il seguente:
Formato dei dati di uscita del nodo Modbus | Descrizione | Formato SQL MySQL per il caricamento dei dati |
{
"temp": 31.0, "hum": 45.5 } |
Converte i dati dell'oggetto emessi dal nodo Modbus a sinistra nell'istruzione SQL richiesta da MySQL a destra. | INSERT INTO my_table (temp, hum) VALUES (25.55, 45.5); |
Codice campione:
var data = msg.payload var sql = `INSERT INTO my_table (temp, hum) VALUES(${data.temp},${data.hum});` msg.topic = sql restituire msg;
4. Caricamento dei dati
Una volta completata la formattazione dei dati, collegare il nodo di calcolo delle funzioni e il nodo MySQL e fare clic sul nodo di iniezione per realizzare la raccolta e il caricamento dei dati. Se il test è andato a buon fine, è possibile impostare il nodo di iniezione in modo che venga eseguito periodicamente per realizzare la raccolta e il caricamento dei dati nel database MySQL a intervalli regolari.
Il gateway di edge computing di EG raccoglie i dati a intervalli regolari e li converte in formati supportati da MySQL, un metodo che consente di elaborare in tempo reale e archiviare a lungo termine grandi quantità di dati dei dispositivi di campo. Migliora l'efficienza dell'elaborazione dei dati e può fornire una base per la successiva analisi dei dati e il processo decisionale. L'introduzione dell'edge computing consente di completare l'elaborazione iniziale dei dati vicino alla fonte, riducendo la dipendenza dal cloud computing e diminuendo la latenza e il costo della trasmissione dei dati.
Nota: se è necessario ottenere dati dal database MySQL, si può anche caricare un nodo MySQL passando un'istruzione SQL di riferimento alla proprietà msg.topic per effettuare una richiesta di dati.