MENU
    Come fare: Utilizzare la seriale con Node-RED
    • 04 Nov 2023
    • 3 Minuti da leggere
    • Contributori

    Come fare: Utilizzare la seriale con Node-RED


    Sommario dell'articolo

    Come fare: Usare la seriale con Node-RED

    Guida alla connessione a un dispositivo seriale, alla configurazione di una porta seriale in node-RED e all'introduzione ai flussi di libreria di node-RED.

    Questo articolo descrive come leggere e scrivere dati seriali dai dispositivi Tulip Edge utilizzando Node-RED. Verrà illustrato come collegarsi alle diverse porte seriali di ciascun tipo di dispositivo Edge e due flussi di libreria Tulip Node-RED che utilizzano la comunicazione seriale.

    Sono necessari

    • Un Edge IO o Edge MC registrato al vostro account Tulip.

    • Un dispositivo che comunichi via seriale con il dispositivo Edge.

      • Edge IO supporta dispositivi seriali che utilizzano:

        • RS-232

        • RS-485 (half-duplex)

        • Seriale su USB

          • Edge MC supporta i dispositivi seriali che utilizzano:
        • Seriale su USB

        • TTY UART con TX/RX

    1. Configurazione hardware: Collegamento alla periferica seriale

    Per prima cosa, assicuratevi di collegare fisicamente la periferica seriale al dispositivo Edge.

    Opzionale: se si desidera testare il flusso Node-RED comunicando con una periferica host (ad esempio il laptop, un'altra periferica Tulip Edge, ecc.), è possibile utilizzare cavi RS-232 con un modem nullo o USB-UART con linee TX/RX incrociate ( non collegare l'alimentazione).

    Esempi di programmi da utilizzare sul dispositivo host per comunicare con il dispositivo Edge sono:

    • screen (MacOS): Un'utilità a riga di comando per la comunicazione seriale.
    • PuTTY (Windows/Linux): Un emulatore di terminale gratuito che può fungere da console seriale.
    • Node-RED: Creare un flusso Node-RED complementare in un'istanza di Node-RED in esecuzione sul dispositivo host.

    2. Configurazione di Node-RED: Configurazione della porta seriale

    Per le comunicazioni seriali in Node-RED utilizzeremo i nodi del pacchetto node-red-contrib-serialport. Se si utilizza un dispositivo Tulip Edge OS44+, questo pacchetto è preinstallato. Altrimenti, è possibile aggiungere i nodi alla tavolozza utilizzando l'editor di Node-RED come descritto qui.

    I nodi seriali appariranno nella scheda Rete:

    Node RED Serial Setup Port Config

    Per leggere gli ingressi seriali, trascinare e rilasciare il nodo serial in. Per scrivere le uscite seriali, trascinare il nodo serial out. In entrambi i nodi, per configurare la porta seriale, fare clic sul pulsante di modifica della proprietà "Serial Port":

    Node RED Serial Set Up Edit Port Modal

    A questo punto si inseriscono le seguenti proprietà:

    • Porta seriale: il percorso della porta seriale (ad esempio: /dev/ttyS0). Questo dipende dal dispositivo Edge e dalla porta seriale fisica a cui ci si collega (vedere gli articoli relativi a Edge IO o Edge MC). I percorsi disponibili possono essere visualizzati facendo clic sul pulsante di ricerca, come mostrato di seguito.

    Node RED Serial Setup Add New Port

    Nota: attualmente non esiste un supporto per l'inserimento a caldo dei dispositivi USB in Node-RED. Ciò significa che il dispositivo USB deve essere collegato all'avvio del dispositivo affinché Node-RED possa accedervi.

    • Impostazioni: La velocità di trasmissione e le altre impostazioni devono corrispondere alla velocità di trasmissione del dispositivo seriale con cui si comunica.

    Node RED Serial Setup Settings

    • Ingresso: Scegliere quando il nodo emetterà un messaggio. Le opzioni includono l'attesa di un carattere diviso (come un'interruzione di riga, una virgola o uno spazio), l'attesa ogni n caratteri se l'output è a lunghezza fissa, oppure è possibile impostare un timeout per ottenere un output ogni n secondi.

    Node RED Serial Setup Input

    • Uscita: Aggiunge carattere al messaggio di uscita (ad esempio, aggiunge l'interruzione di riga).

    Node RED Serial Setup Output

    Si può vedere che si è connessi a una porta seriale valida se, dopo la distribuzione, lo stato del nodo è "connesso":

    Node RED Serial Setup Connected Status

    3. Flussi della libreria Node-RED: Comunicare con Tulip

    Tulip fornisce diversi flussi di libreria per leggere gli ingressi seriali e scrivere le uscite seriali sui dispositivi Tulip Edge utilizzando Node-RED. Per informazioni su come importare un flusso di libreria Tulip, vedere Importazione di flussi Tulip Node-RED.

    Per scrivere un'uscita seriale su un dispositivo Tulip Edge da un'applicazione Tulip, è possibile utilizzare il flusso serial_http_endpoint e impostare un connettore HTTP sulla propria istanza Tulip in esecuzione sull'host del connettore del dispositivo Edge. È necessario aggiungere a questo connettore una funzione che invii richieste POST all'endpoint HTTP /serial e richiamare tale funzione dall'applicazione. Per saperne di più sulla scrittura di valori in Node-RED utilizzando l'host connettore, consultare la sezione Comunicare con le macchine utilizzando l'host connettore e Node-RED di Edge MC.

    Node RED Serial Setup Flow1

    Per leggere l'input seriale su un dispositivo Tulip Edge e inviarlo a Tulip, è possibile utilizzare l'API Tabelle (per scrivere i dati in una tabella) o l'API Macchina (per scrivere i dati in un attributo macchina). Il flusso di libreria serial_to_tulip_table è un esempio di come scrivere input seriali delimitati da newline in una tabella Tulip. È necessario configurare il nodo seriale e i due nodi delle tabelle Tulip con le impostazioni corrette per il caso d'uso. Per saperne di più su come usare il nodo Tulip Tables API, vedere Utilizzo di Node-RED con Tulip API.

    Node RED Serial Setup Flow2


    Questo articolo è stato utile?