Guida alla comunicazione
Modbus RTU


In questo articolo, spiegheremo tutti gli aspetti relativi alla comunicazione Modbus RTU. Qual è la differenza tra Modbus RTU vs ASCII e Modbus RTU rispetto a TCP/IP? Come testare il protocollo Modbus RTU con il software di monitoraggio Modbus RTU.

Contenuto

  1. Qual è il protocollo Modbus RTU?
  2. Come testare Modbus RTU con Serial Port Monitor
  3. Come funziona Modbus RTU?
  4. Modbus RTU vs TCP
  5. Modbus RTU vs ASCII

Qual è il protocollo Modbus RTU?


Il protocollo Modbus RTU è un mezzo di comunicazione che consente lo scambio di dati tra controllori logici programmabili (PLC) e computer. I dispositivi elettronici possono scambiare informazioni su linee seriali usando il protocollo Modbus.

È diventato ampiamente accettato ed è ampiamente utilizzato nella costruzione di Sistemi di gestione degli edifici (BMS) e sistemi di automazione industriale (IAS). La sua adozione è stata stimolata dalla facilità d'uso, dall'affidabilità e dal fatto che è open source e può essere utilizzata gratuitamente in qualsiasi dispositivo o applicazione.

Il protocollo è stato sviluppato e pubblicato da Modicon® nel 1979 per l'uso con i suoi controllori logici programmabili. È costruito utilizzando un'architettura master/slave e supporta dispositivi seriali che utilizzano i protocolli RS232/RS485/RS422. Il Modbus viene spesso utilizzato in scenari in cui più strumenti di strumentazione e di controllo trasmettono segnali a un controller o sistema centrale per raccogliere e analizzare i dati. Automazione industriale e controllo di supervisione e acquisizione dati(SCADA) i sistemi utilizzano spesso il protocollo Modbus.

Cosa significa Modbus RTU?


Modbus RTU (Remote Terminal Unit) è una delle due modalità di trasmissione definite nella specifica Modbus originale. Le due modalità sono Modbus RTU e ASCII e sono entrambe progettate per essere utilizzate con dispositivi seriali che supportano i protocolli RS232, RS485 e RS422. Una caratteristica distintiva di Modbus RTU è l'uso della codifica binaria e il controllo degli errori CRC. Modbus RTU è l'implementazione del protocollo Modbus che viene spesso utilizzato in applicazioni industriali e impianti di produzione automatizzati.

Come testare Modbus RTU con Serial Port Monitor


Ci sono alcune situazioni in cui l'uso di un tester Modbus RTU può essere molto utile. Se stai sviluppando o debug di dispositivi o applicazioni seriali, ti piacerebbe essere in grado di monitorare e analizzare la trasmissione dei dati tra dispositivi e applicazioni. Un altro caso in cui un'utilità di monitoraggio Modbus RTU si rivelerà indispensabile se si è incaricati di mantenere la rete e i dispositivi associati in un impianto di produzione industriale automatizzato.

Serial Port Monitor è un software efficiente per testare ed eseguire il debug del protocollo Modbus RTU.
Serial Port Monitor logo

Serial Port Monitor

Annota ed analizza l'attività della porta seriale
4.8 Rango basato su 41+ utenti, Recensioni(75)
Scarica 14 dias do ensaio totalmente funcional
Serial Port Monitor

Serial Port Monitor di Eltima è un software Modbus RTU. È un'applicazione completa e completa che consente il monitoraggio e l'analisi di tutte le attività dell'interfaccia Modbus RTU sul proprio sistema. Tutti i dispositivi che supportano i protocolli RS232, RS485 e RS422 possono avere le loro trasmissioni monitorate e analizzate per assistere nelle attività di debug o di sviluppo.

Questo strumento software è stato progettato con un'interfaccia flessibile e intuitiva, un terminale integrato e funzionalità di esportazione dei dati. È una risorsa preziosa per diagnosticare i problemi di comunicazione Modbus RTU nell'ambiente Windows. Ecco alcuni punti salienti dall'elenco delle funzionalità che fanno parte di Serial Port Monitor.

  • Analisi dell'attività Modbus RTU. Questo sniffer per porta seriale può aprire qualsiasi porta seriale, anche quelle già aperte da un'altra applicazione, e iniziare immediatamente a monitorare tutte le attività che si spostano attraverso quell'interfaccia. La raccolta dati in tempo reale consente di rintracciare rapidamente problemi e problemi. I dati monitorati possono essere reindirizzati a file o copiati negli appunti da utilizzare per analisi successive.
  • Monitora più porte seriali contemporaneamente. L'utilizzo di questa funzione consente di osservare le applicazioni che interagiscono con più porte o dispositivi all'interno della stessa sessione di monitoraggio. I dati acquisiti vengono presentati in base al principio "first-in-first-out" in un file di registro centrale per semplificarne l'analisi.
  • Scegli tra più visualizzazioni di dati. Vi sono quattro viste che possono essere utilizzate separatamente o viste tutte allo stesso tempo. Sono la tabella, la linea, il dump e le modalità terminali e ciascuno di essi offre una visione diversa dei dati. La vista di dump ti consente di indagare le impostazioni della porta e puoi utilizzare filtri di monitoraggio per ridurre l'ingombro dello schermo e concentrarti sugli eventi importanti.
  • Emulazione della trasmissione dei dati. È possibile inviare dati a dispositivi seriali in vari formati come stringa, binario, decimale e esadecimale per monitorare la reazione del dispositivo seriale a specifici comandi o stringhe di dati.
  • Opzione di riproduzione della sessione. È possibile ripetere una trasmissione su una porta seriale per ottenere informazioni di monitoraggio più precise. Le sessioni possono essere confrontate tra loro e le differenze vengono automaticamente evidenziate per una facile analisi.
  • Esportare i dati monitorati in vari formati. È possibile esportare i dati in un file in formato HTML, testo ASCII, testo UNICODE o formato CSV Exсel e può avere i dati monitorati correntemente in un file precedentemente salvato.
  • Interfaccia user-friendly. Serial Port Monitor è progettato per consentire l'accesso a porte seriali e interfacce senza la necessità di alcuna competenza di programmazione. I filtri per controllare i dati visualizzati sono facilmente personalizzabili nella barra degli strumenti dell'applicazione.
  • Traccia i codici di controllo di input/output. È possibile ottenere i dettagli e i parametri completi di tutti i codici di controllo di input/output seriali (IOCTL) utilizzando Serial Port Monitor.

Questo analizzatore di protocollo Modbus RTU dovrebbe essere nella casella degli strumenti di chiunque lavori in modo estensivo con i dispositivi seriali e il protocollo Modbus. Puoi usarlo in modalità RTU o ASCII, rendendolo una versatile utility software. È una soluzione efficiente che consente di monitorare tutte le interfacce seriali del sistema senza requisiti hardware aggiuntivi. Il Serial Port Monitor di Eltima funziona sia con il sistema operativo Windows 10 sia con Windows Server 2012 e 2016.

Come funziona Modbus RTU?


Il protocollo Modbus è fondamentalmente un sistema che elabora richieste e risposte da dispositivi elettronici. L'architettura master/slave viene utilizzata con le richieste di creazione matrice a cui i dispositivi slave rispondono.

Cos'è un master Modbus RTU?

Un master Modbus RTU è il dispositivo centrale che effettua richieste di informazioni dai dispositivi slave collegati. Un controller centrale in un sistema di produzione automatizzato può svolgere il ruolo di un master Modbus RTU. Un'implementazione Modbus ha un master. I dispositivi master ottengono informazioni dagli slave e possono anche scrivere sui registri dei dispositivi slave.

Cos'è uno slave Modbus RTU?

Lo slave Modbus RTU è il dispositivo che risponde alla richiesta effettuata dal dispositivo master. Non può avviare trasferimenti di informazioni e si trova in uno schema di attesa fino a quando non risponde a una richiesta avanzata dal master.

Come detto, c'è un dispositivo master in un'implementazione Modbus RTU e possono esserci fino a 247 dispositivi slave. Ogni dispositivo slave viene identificato da un indirizzo slave da 1 a 247.

Il cuore del protocollo Modbus è il componente noto come Protocol Data Unit (PDU). La PDU è costituita da un codice funzione e dati ed è costruita in modo coerente indipendentemente dalla modalità di trasmissione Modbus utilizzata. Il codice funzione specifica quali dati sono richiesti dal master.

Nella modalità di trasmissione Modbus RTU, ulteriori informazioni sono avvolte attorno alla PDU per creare l'intera Application Data Unit (ADU). Nel flusso del segnale e prima del codice funzione, in modalità Modbus RTU viene inviato un ID slave di 1 byte per identificare il dispositivo slave che dovrebbe soddisfare la richiesta. Aggiunto alla PDU è un CRC da 2 byte che assicura che sia stata inviata e ricevuta la giusta quantità di byte.

I dispositivi Modbus supportano quattro tabelle dati che sono utilizzate per facilitare la comunicazione tra i dispositivi. Sono ingressi discreti, uscite discrete (bobine), registri di ingresso e registri di attesa. I registri svolgono funzioni diverse e non sono tutti inclusi in ogni dispositivo. In alcuni casi, solo i registri di mantenimento vengono utilizzati per la funzionalità I/O.

Campo Accesso Taglia Descrizione
Ingressi discreti
solo lettura
1 bit
usato come input
Uscite di bobine
lettura/scrittura
1 bit
usato per controllare discreti
Registri di ingresso
solo lettura
16 bit
usato per l'input
Registri
lettura/scrittura
16 bit
usato per una varietà di cose inclusi input, output, dati di configurazione, ecc.

I codici funzione indicano come il master interagisce con il dispositivo slave specificato nell'ID slave. In base al codice funzione inviato, il dispositivo master può leggere uno dei registri dello slave o scrivere su di essi.

Gli slave restituiscono i codici di errore quando ricevono un pacchetto che contiene un errore nella richiesta. I codici di errore vengono restituiti per problemi come la richiesta di una funzione illegale, gli indirizzi di registri illegali che non possono essere raggiunti dallo slave specificato e i messaggi che indicano che il dispositivo slave è occupato o ha subito un errore.

Modbus RTU richiede che tu conosca o definisca parametri come la velocità di trasmissione, il formato dei caratteri (8 bit senza parità, ecc.) E l'ID slave quando si avvia la comunicazione. Una mancata corrispondenza in uno di questi parametri provocherà il fallimento del tentativo di comunicazione.

Modbus RTU vs TCP


Modbus RTU è una delle modalità di trasmissione originali definite nel protocollo Modbus. Modbus TCP è un'estensione del protocollo sviluppata di recente che consente il trasferimento dei protocolli Modbus su reti TCP/IP. La latenza intrinseca e altri aspetti della comunicazione su una rete, ha richiesto alcune modifiche su come mantenere le richieste e le risposte sincronizzate tra loro e garantire che i dati errati non vengano ricevuti da un dispositivo slave.

Modbus TCP mostra una differenza nel modo in cui la PDU viene avvolta rispetto a Modbus RTU. Il frame TCP che contiene la PDU inizia con un identificativo di transazione MODBUS Application Protocol (MBAP) di 2 byte anziché l'ID slave. Non è inoltre necessario che CRC esegua il controllo degli errori poiché il livello TCP gestisce tale funzione.

Modbus RTU vs ASCII


Poiché erano entrambe parti della specifica del protocollo Modbus originale, ci si potrebbe chiedere quale sia la differenza tra Modbus ASCII e Modbus RTU. Modbus RTU utilizza la codifica binaria e il controllo degli errori CRC. Queste scelte sono state fatte per motivi di efficienza e sono la ragione principale per cui la modalità RTU è quella più comunemente utilizzata nelle impostazioni industriali. Come si può immaginare, Modbus ASCII utilizza caratteri ASCII quando si inviano messaggi.

L'uso di caratteri ASCII rende i messaggi più leggibili, ma sono un mezzo di trasmissione meno efficiente. Un'altra importante differenza è nel livello di controllo degli errori che viene eseguito. Modbus ASCII utilizza il metodo LRC meno efficace per il controllo degli errori piuttosto che il CRC più forte della modalità RTU.

Sebbene sia Modbus RTU sia Modbus ASCII siano progettati per essere utilizzati con dispositivi e protocolli seriali, sono incompatibili tra loro a causa delle differenze sopra descritte. Se lavori con dispositivi seriali, dovresti essere pronto a utilizzare il protocollo Modbus.

Serial Port Monitor

Requisiti: Windows (32-bit e 64-bit): XP/2003/2008/Vista/7/8/10, Windows Server 2012, Windows Server 2016 , 9.16MB dimensione
Versione 7.0.342 (13 Genn, 2018) Note di rilascio
Categoria: Communication Application