A cosa devo prestare attenzione quando creo una rete Modbus RTU?
Che cos'è la comunicazione Modbus RTU (RS485)?
Modbus RTU è un protocollo seriale aperto derivato dall'architettura master/slave (ora client/server) originariamente sviluppata da Modicon (ora Schneider Electric). È un protocollo a livello seriale ampiamente accettato grazie alla sua facilità d'uso e affidabilità. Modbus RTU è ampiamente utilizzato nei sistemi di gestione degli edifici (BMS) e nei sistemi di automazione industriale (IAS). I messaggi Modbus RTU sono una semplice struttura a 16 bit con un checksum ridondante ciclico. La semplicità di questi messaggi garantisce affidabilità. Grazie a questa semplicità, la struttura di registro Modbus RTU a 16 bit di base può essere utilizzata per creare pacchetti di dati in virgola mobile, tabelle, testo ASCII, code e altri dati non correlati. Questo protocollo utilizza principalmente interfacce seriali RS-232 o RS-485 per le comunicazioni ed è supportato da ogni SCADA commerciale, HMI, server OPC e programma software di acquisizione dati sul mercato. Ciò semplifica l'integrazione di apparecchiature compatibili con Modbus in applicazioni di monitoraggio e controllo nuove o esistenti.
RS485 è un protocollo simile a RS232 utilizzato per implementare la comunicazione dati seriale. I due protocolli utilizzano segnali elettrici diversi per consentire la trasmissione dei dati. Uno dei motivi per cui l'interfaccia RS485 viene impiegata in ambienti industriali è la sua capacità di servire diversi dispositivi collegati allo stesso bus. Ciò elimina la necessità di disporre di diverse interfacce quando si interrogano più dispositivi. Puoi farlo utilizzando un terminatore del bus, spostando un interruttore o con un piccolo resistore avvitato su un terminale. È necessario prestare attenzione per garantire che venga utilizzata l'interfaccia corretta poiché i protocolli RS485 e RS232 non sono completamente compatibili. Puoi costruire un gateway tra le interfacce RS232 e RS485, ma di solito vedrai il protocollo RS485 collegarsi direttamente alle porte USB o Ethernet. Questo approccio meno costoso elimina la necessità di utilizzare qualsiasi componente aggiuntivo.
I dispositivi che utilizzano porte RS485 utilizzano solitamente il protocollo Modbus e forniscono una trasmissione half-duplex su una linea bilanciata che copre distanze fino a 1200 m. Un sistema half-duplex è composto da uno o più trasmettitori e ricevitori in cui può essere attivo un solo trasmettitore alla volta. La comunicazione è attuata da un trasmettitore che effettua una richiesta diretta a un destinatario specifico. Il trasmettitore quindi attende una risposta per un periodo di tempo predeterminato o decide che non arriverà alcuna risposta dal ricevitore.
Una rete RS485 è costruita sulla base di un framework master/slave. Il master svolge il ruolo di trasmettitore, effettuando richieste a uno slave designato che funge da ricevitore. Il master resta in ascolto della risposta e se non ottenuta entro un congruo lasso di tempo terminerà la comunicazione. In una rete Modbus RS485, la comunicazione inizia quando il dispositivo master invia una richiesta a uno slave connesso. Un dispositivo slave passa il suo tempo a monitorare la rete per le query specificamente indirizzate ad esso. Quando viene ricevuta una query, eseguirà un'azione o risponderà con una risposta al master. Le query vengono avviate solo dal dispositivo master.
Il protocollo Modbus offre al master la scelta di indirizzare i messaggi a dispositivi slave specifici o di comunicare con tutti gli slave contemporaneamente. Questo viene fatto utilizzando uno speciale indirizzo "Broadcast". Alcuni prodotti come quelli di Integra e SPR non supportano l'uso di questo indirizzo broadcast. Le operazioni di lettura e scrittura vengono inviate tramite messaggi Modbus utilizzando le bobine. Una bobina è composta da parole a 16 bit e registri binari. Uno slave può solo rispondere a un messaggio ricevuto e non avvia mai la comunicazione con il master.
A ciascun dispositivo slave collegato al bus RS485 in parallelo viene assegnato un ID slave Modbus univoco. Tutte le comunicazioni Modbus iniziano con l'invio dell'ID slave, per avvisare un dispositivo slave di accettare una richiesta o per informare il master quale dispositivo ha fornito la risposta. Allo stesso modo in cui funziona la connettività RS232, i dispositivi slave e master devono essere configurati correttamente. Parametri come velocità e parità devono essere sincronizzati in tutta la rete.
Il formato del messaggio utilizzato nella comunicazione Modbus tra master e slave è definito nel protocollo:
- Una query Modbus è composta dall'indirizzo del dispositivo (o broadcast), un codice funzione che definisce qualsiasi azione richiesta, i dati restituiti con la richiesta e un campo di controllo degli errori.
- Una risposta Modbus è composta da campi che verificano che l'azione richiesta sia stata intrapresa, i dati inviati con la risposta e un campo per il controllo degli errori. Il dispositivo slave creerà un messaggio di errore come risposta se non è in grado di soddisfare la richiesta o se gli errori hanno influito sulla ricezione del messaggio.
La modalità Modbus RTU (Remote Terminal Unit) trasmette i messaggi in un formato diverso. In questo caso, un messaggio a 8 bit contiene due caratteri esadecimali a 4 bit. I dati che utilizzano questa modalità di trasmissione devono essere inviati in un flusso continuo e consentono un throughput migliore per una velocità di trasmissione comparabile rispetto alla modalità ASCII.
Terminazione del bus di rete Modbus o NBT
La maggior parte dei bus di comunicazione che utilizziamo sono specificati con Network Bus Termination (NBT) o anche chiamati End of Line (EoL). È un resistore di terminazione di linea utilizzato per il cavo di comunicazione RS485/Modbus RTU. Una riflessione in una linea di trasmissione è il risultato di una discontinuità di impedenza che un'onda viaggiante vede mentre si propaga lungo la linea. Per ridurre al minimo le riflessioni dall'estremità del cavo di rete è necessario posizionare una terminazione di linea vicino a ciascuna delle 2 estremità del bus. L'NBT deve essere installato sull'ultimo dispositivo del loop. Alcuni dispositivi Sentera forniscono un ponticello NBT interno, i modelli più recenti offrono un registro di mantenimento Modbus (HR 9) in cui è possibile impostare o meno l'NBT per attivare la terminazione della linea di rete. Nel caso in cui il ponticello NBT o il controllo del registro non siano disponibili sul dispositivo, è necessario posizionare una resistenza da 120Ω 1/2 W tra la coppia differenziale.
Le terminazioni bus non sono sempre necessarie
In campo queste terminazioni non sono sempre presenti, soprattutto nelle piccole tirature. Ne abbiamo bisogno? C'è un'analogia che illustra perché abbiamo bisogno di terminazioni di fine linea: un bus si comporta come una corda tenuta tra due persone. Quando una persona vuole parlare, frusta gli impulsi lungo la corda verso il proprio partner. L'altra persona sente questi impulsi e capisce cosa significa il messaggio. Quegli impulsi non scompaiono, però, si rifletteranno sulla persona che l'ha frustato lungo la linea. Continuerà a riflettere avanti e indietro, un po' più debole ogni volta che le perdite lo consumano. Queste riflessioni confondono entrambe le persone, che perdono tempo cercando di decodificare questo falso messaggio più e più volte. Un bus terminato su entrambe le estremità è come una fune fissata su entrambi i lati con molle. Quando le pulsazioni raggiungono la fine, la persona lì può sentirle e quindi le pulsazioni vengono assorbite dalle molle. Se le molle sono opportunamente dimensionate, gli impulsi saranno "completamente smorzati" e non ci sarà alcun riflesso di ritorno.
Poiché in genere utilizziamo RS-485, la terminazione di fine linea viene selezionata in base a qualcosa chiamato impedenza caratteristica del cavo che stai utilizzando. Questo è qualcosa che il produttore timbra sulla scatola in cui arriva il cavo, quindi non è un segreto. Tipicamente usiamo qualcosa intorno a 108-120 ohm. Non è necessario utilizzare esattamente quel valore, ma cerca di essere vicino e non utilizzare resistori che sono molto inferiori a quello!
Hai sempre bisogno di una terminazione di fine linea? Non proprio no. Dipende da due cose: velocità di comunicazione (baud rate) e lunghezza del bus. Più bassa è la velocità in baud, minore sarà la riflessione. Maggiore è la distanza, maggiore sarà la riflessione. i bus ad alta velocità sono molto più sensibili perché tutto avviene in tempi molto più brevi. Un singolo bit trasferito a 38400 bps dura solo 26 microsecondi. Per 9600 bps, sono 104 microsecondi. Un picco di tensione nel punto sbagliato che dura la lunghezza di un bit può causare errori di comunicazione. i bus più lunghi sono più sensibili alla riflessione perché qualsiasi riflessione tenderà a dissiparsi dopo diversi viaggi avanti e indietro lungo l'autobus. Per un bus più lungo, tale dissipazione richiede più tempo. Se è abbastanza lungo, i controller potrebbero inviare nuovi messaggi sul bus mentre i riflessi più vecchi continuano a rimbalzare.
Linee guida per il cablaggio di una rete Modbus
Una rete Modbus RS485 RTU collega un dispositivo master a uno o più dispositivi slave. D'ora in poi considereremo i dispositivi Slave come strumenti di misura con comunicazione seriale, anche se il cablaggio è simile per tutti i dispositivi Modbus. 9 regole principali da seguire per il cablaggio di questo tipo di rete:
1. Porta di connessione
Ogni dispositivo dispone di una porta di comunicazione con 2 segnali indicati con A e /B. Questi due segnali collegano il cavo di comunicazione in modo che tutti i dispositivi che partecipano alla comunicazione siano collegati in parallelo. Tutti i terminali 'A' devono essere collegati insieme e tutti i terminali '/B' devono essere collegati rispettivamente insieme. Per evitare errori quando si collegano più dispositivi, si consiglia di utilizzare cavi dello stesso colore per collegare i morsetti A e cavi dello stesso colore per tutti i collegamenti ai morsetti /B dei vari dispositivi (es. blu (/verde-bianco) per A e verde(/blu-bianco) per /B). Nota: l'inversione dei collegamenti 'A' e '/B' di un dispositivo non solo ne impedisce la comunicazione ma può anche bloccare il funzionamento dell'intero sistema di comunicazione a causa di una errata tensione continua (di polarizzazione) rilevata sui collegamenti del dispositivo collegato in modo errato . Ciò semplifica l'identificazione degli errori di cablaggio.
2. Collegamento tra dispositivi
A differenza di quanto accade in molti sistemi di distribuzione dell'energia, è importante il modo in cui i dispositivi sono collegati in parallelo. Il sistema RS485 utilizzato per la comunicazione Modbus prevede un cavo principale (bus o dorsale), al quale tutti i dispositivi devono essere collegati con rami il più corti possibile. Nota: la lunghezza totale non deve superare i 1200 m! Linee di comunicazione di rete più lunghe potrebbero causare riflessioni di segnale e generare disturbi e conseguenti errori nella ricezione dei dati.
3. Distanza massima e numero massimo di dispositivi
Il cavo principale non deve essere più lungo di 700 m! Questa distanza non comprende i rami (che devono comunque essere brevi). Il numero massimo di dispositivi collegabili ad un cavo principale è 247, incluso il Master. Nota: tenere presente il consumo massimo di corrente e il numero di dispositivi quando si utilizza PoM (Power over Modbus) durante il cablaggio. Consulta sempre le schede informative degli articoli utilizzati all'interno della rete.
4. Uso di ripetitori
Per aumentare l'estensione della rete Modbus è possibile utilizzare i ripetitori con dispositivi di amplificazione e rigenerazione del segnale dotati di due porte di comunicazione che trasferiscono all'uno quanto ricevuto dall'altro. Utilizzando un ripetitore, il cavo principale è diviso in diversi segmenti e collega 32 dispositivi (questo numero include i ripetitori). Il numero massimo di ripetitori che devono essere collegati in serie è 3. Un numero superiore introduce ritardi eccessivi nel sistema di comunicazione.
5. Tipo di cavo da utilizzare
Il cavo da utilizzare è un doppino intrecciato schermato tipo UTP cat 5e o cat6, ma possono essere utilizzati diversi tipi di cavo con caratteristiche equivalenti. Il gemello è costituito da due conduttori intrecciati insieme. La schermatura può essere intrecciata (formata da una maglia di sottili fili conduttori) o essere una lamina (costituita da un foglio di metallo avvolto attorno ai conduttori). Nota: Questa disposizione migliora l'immunità ai disturbi elettromagnetici perché il cavo forma una serie di spire successive, ciascuna rivolta in direzione opposta a quella successiva. In questo modo qualsiasi campo magnetico dell'ambiente attraversa ciascuna coppia di spire in direzioni opposte e il suo effetto risulta così molto ridotto (teoricamente l'effetto su ciascuna spira è esattamente l'opposto dell'effetto sulla successiva quindi l'effetto si annulla)
6. Collegamento dei dispositivi
In alcuni paesi è consentito l'inserimento di due cavi nello stesso morsetto a vite. In questo caso è possibile collegare il terminale principale di ingresso e uscita direttamente ai terminali di un articolo senza creare una diramazione. Se invece ogni morsetto può accettare un solo cavo, è necessario creare un'apposita diramazione utilizzando tre morsetti ausiliari per ogni articolo da collegare. Consultare i nostri addetti alle vendite per l'articolo dell'adattatore corretto da utilizzare (come ADPT-3RJ-TB). In caso di collegamento di dispositivi con doppino intrecciato schermato e connettori RJ45, il problema non si presenta.
7. Collegamento a terra della schermatura
La schermatura del cavo deve essere messo a terra in un solo punto. Normalmente, questa connessione viene effettuata a un'estremità del cavo principale.
8. Resistenza di terminazione bus di rete
Per evitare riflessioni di segnale, è necessario installare una resistenza di terminazione da 120 Ohm su ciascuna estremità del cavo principale. La resistenza di estremità deve essere utilizzata solo alle estremità del cavo principale. Se la lunghezza totale del cavo principale è inferiore a 50 m si possono evitare resistenze di terminazione alle estremità del cavo principale.
9. Collegamento a PC o SenteraWeb
Se il master utilizzato è un personal computer o quando è necessario verificare il cablaggio di rete prima della messa in servizio, un convertitore seriale da USB a RS485 (CNVT-USB-RS485-V2) fornisce la connessione al bus per verificare il corretto cablaggio e funzionalità. In caso di connessione ad internet è necessario un articolo Internet Gateway che può essere inserito all'interno della rete Modbus RTU come bridge di comunicazione per connettersi a SenteraWeb. Questa opzione ti offre completa libertà di connessione ai dispositivi installati da qualsiasi luogo. Si prega di consultare direttamente il nostro ufficio vendite per i codici articolo corretti.