Un bus RS-485 per Modbus RTU è un'unica linea principale a coppia intrecciata, collegata in sequenza da un dispositivo all'altro, con una terminazione a ciascuna estremità fisica e polarizzazione in un solo punto. Molti guasti RS-485 derivano dalla violazione di una di queste regole: una diramazione a stella, una terza terminazione, polarizzazione su due dispositivi o conduttori invertiti. Questa guida spiega ogni regola e come verificare l'impianto realizzato.
La guida fa parte della serie su Modbus e RS-485. La guida a RS-485 e Modbus chiarisce che cosa definisce ciascun nome. Qui usiamo la guida Modbus per la linea seriale per i valori specifici del protocollo. Confrontali sempre con le istruzioni dei dispositivi esatti.
Realizza un'unica linea principale
Porta un solo cavo dal primo all'ultimo dispositivo e collega ogni dispositivo lungo il percorso. Non diramare il bus a stella.
Il collegamento dalla linea principale a un dispositivo è una derivazione (stub nella terminologia tecnica; la guida Modbus la chiama derivation). Tienila corta quanto consentono i morsetti. La guida Modbus per la linea seriale fissa una lunghezza massima di 20 m per una derivazione e, per una presa multipla, di 40 m divisi per il numero delle derivazioni. Un ramo lungo verso un contatore lontano è una seconda linea principale, non una derivazione: richiede un ripetitore.
Disegna il bus come è stato installato: percorso del cavo, lunghezza di ogni tratto, ogni dispositivo, giunzione e ripetitore. Il master non deve necessariamente trovarsi a un'estremità. Un controllore in un quadro intermedio si trova nel mezzo della linea principale.
Termina le due estremità, e solo quelle
La terminazione impedisce che il segnale si rifletta dall'estremità del cavo. Va collegata tra i due conduttori di segnale a ciascuna estremità fisica della linea principale. La guida Modbus per la linea seriale richiede una terminazione vicino a ogni estremità, ne ammette non più di due sulla stessa coppia e vieta la terminazione sulle derivazioni.
Il valore deve corrispondere all'impedenza caratteristica del cavo, in genere 120 Ω per la coppia intrecciata RS-485. La guida Modbus propone due soluzioni:
- una resistenza da 150 Ω, 0,5 W; oppure
- una resistenza da 120 Ω, 0,25 W in serie a un condensatore da 1 nF, preferibile quando la linea è polarizzata.
Molti contatori e interfacce hanno una terminazione integrata, inseribile con un interruttore o un ponticello. Conta tutte quelle attive. Le terminazioni sono in parallelo, perciò ogni terminazione aggiuntiva riduce la resistenza vista dai driver:
| Terminazioni da 120 Ω attive | Resistenza equivalente |
|---|---|
| 2 (corretto) | 60 Ω |
| 3 | 40 Ω |
| 4 | 30 Ω |
Il verificatore di terminazione e polarizzazione RS-485 individua contraddizioni come tre terminazioni o due punti di polarizzazione:
Polarizza in un solo punto, se necessario
Quando nessun dispositivo trasmette, il bus non è pilotato. Il rumore può allora essere interpretato come dati da un ricevitore. La polarizzazione (bias, chiamata polarisation nella guida Modbus) mantiene uno stato definito a riposo: una resistenza di pull-up tra D1 e 5 V e una di pull-down tra D0 e il conduttore comune. La guida Modbus fissa queste regole:
- la documentazione di ogni dispositivo deve indicare se richiede e se fornisce polarizzazione;
- se un dispositivo la richiede, installa una sola coppia di resistenze da 450 a 650 Ω, in un unico punto del bus, di solito presso il master;
- nessun altro dispositivo deve applicare polarizzazione;
- con la polarizzazione installata, il numero di dispositivi ammessi sul bus si riduce di quattro.
Molti ricetrasmettitori moderni sono failsafe: leggono correttamente un bus inattivo senza polarizzazione. Controlla la documentazione, invece di aggiungere il bias per abitudine.
Come interagiscono terminazione e polarizzazione
Per riconoscere uno stato definito, un ricevitore richiede almeno 200 mV tra i due conduttori. La polarizzazione produce questa tensione attraverso un partitore che comprende le terminazioni. Per un bus inattivo, un'alimentazione di polarizzazione da 5 V e resistenze da 650 Ω:
| Terminazioni | Carico tra i conduttori | Tensione a riposo |
|---|---|---|
| Due resistenze da 150 Ω | 75 Ω | 0,27 V |
| Due resistenze da 120 Ω | 60 Ω | 0,22 V |
| Due resistenze da 120 Ω con condensatori da 1 nF | Nessun carico in continua | Ben oltre 0,2 V |
Con semplici terminazioni da 120 Ω, il margine sopra 200 mV è quasi nullo già prima di considerare tolleranze e rumore. Per questo la guida Modbus preferisce la versione con condensatore su un bus polarizzato: il condensatore blocca la corrente continua del bias, mentre la resistenza termina comunque i fronti rapidi del segnale. Questi valori non comprendono i ricevitori, il cavo e le tolleranze dei componenti. Servono a capire il progetto, non ad accettare un bus.
Polarità, comune e schermatura
Le lettere A e B non sono coerenti tra i costruttori. La guida Modbus per la linea seriale chiama i conduttori D0 e D1 e li associa ai morsetti RS-485 A/A' e B/B'. Non tutti i costruttori seguono questa convenzione: alcuni scambiano A e B; altri usano D+/D−, 485+/485− o TX+/TX−. Segui la definizione dei segnali nel manuale di ciascun dispositivo, non la sola lettera sul morsetto. I colori raccomandati dalla guida Modbus sono giallo per D1, marrone per D0 e grigio per il comune.
Collega il comune. RS-485 è differenziale, ma le tensioni dei due conduttori devono restare entro l'intervallo di modo comune dei ricevitori. La guida Modbus prevede un conduttore comune collegato alla terra di protezione in un solo punto, di norma presso il master. Le interfacce isolate modificano questa regola. Segui la documentazione dei dispositivi e il progetto di messa a terra del sito.
Tratta la schermatura separatamente. Schermatura, comune del segnale e terra di protezione hanno funzioni diverse. Non collegarli tra loro per abitudine.
Lunghezza del cavo, dispositivi e velocità
| Limite | Valore nella guida Modbus per la linea seriale |
|---|---|
| Lunghezza della linea principale | 1.000 m fino a 9.600 baud con cavo AWG 26 o più grosso; metà se si usa come linea a due fili un cavo a quattro fili |
| Cavo di categoria 5 | Fino a 600 m |
| Lunghezza della derivazione | 20 m al massimo |
| Dispositivi senza ripetitore | 32, oppure di più con dispositivi a basso carico unitario documentati per questo uso; quattro in meno con polarizzazione |
| Indirizzi | Da 1 a 247 |
Velocità più elevate, più dispositivi e cavi di qualità inferiore riducono la portata. La guida di progettazione TI spiega come la capacità del cavo e il tempo di salita del segnale determinano il limite pratico.
Un bus elettricamente corretto può comunque essere troppo lento. Il calcolatore dei tempi Modbus RTU indica la durata di un ciclo di interrogazione. Una velocità in baud maggiore riduce il tempo di trasmissione, non il tempo di risposta dei dispositivi; un solo dispositivo offline può aggiungere un intero timeout a ogni ciclo.
Sintomi e possibili cause
| Sintomo | Prima verifica |
|---|---|
| Nessun dispositivo risponde | Impostazioni seriali, indirizzi, polarità dei morsetti del master |
| Un dispositivo non risponde mai | Indirizzo, impostazioni seriali, polarità e derivazione di quel dispositivo |
| Risposte con errori CRC, più frequenti a velocità elevate | Terminazioni nei punti sbagliati, derivazioni lunghe, ramificazione a stella |
| Errori con bus a riposo o sulla prima trama | Polarizzazione assente o duplicata |
| Errori dopo il collegamento di un secondo master | Due master sullo stesso bus: uno solo può interrogare |
| Risposte corrette ma valori errati | Non è un guasto di cablaggio: verifica mappa dei registri e tipo di dato |
Modifica un solo parametro alla volta e annota la modifica. La guida alla risoluzione dei problemi Modbus prosegue con i guasti di protocollo.
Mantieni il bus corto con una ZMB
Un'interfaccia Modbus ZMB si installa vicino alle apparecchiature che legge e invia i registri al Gateway attraverso la rete mesh Zigbee. Il cavo RS-485 percorre così pochi metri all'interno di un quadro anziché attraversare l'edificio; la ZMB è il master a un'estremità di questa breve linea. La guida alla messa in servizio di Modbus RS-485 descrive l'intera procedura.
Domande frequenti
Dove si installano le resistenze di terminazione RS-485?
Tra i due conduttori di segnale a ciascuna estremità fisica della linea principale, e solo lì. La regola è due terminazioni per bus: la guida Modbus per la linea seriale non ne consente più di due sulla stessa coppia. Se il master è nel mezzo del cavo, non va terminato.
Quale valore deve avere una terminazione RS-485?
Deve corrispondere all’impedenza caratteristica del cavo, in genere 120 Ω per una coppia intrecciata RS-485. La guida Modbus ammette 150 Ω (0,5 W), oppure 120 Ω (0,25 W) in serie a un condensatore da 1 nF quando la linea è polarizzata.
Che cos’è la polarizzazione (bias) RS-485?
Una resistenza di pull-up su un conduttore di segnale e una di pull-down sull’altro, installate in un solo punto, affinché i ricevitori rilevino uno stato definito quando nessun dispositivo trasmette. La guida Modbus specifica resistenze da 450 a 650 Ω verso 5 V e verso il comune.
Quanto può essere lungo un cavo RS-485?
La guida Modbus per la linea seriale indica 1.000 m a 9.600 baud con cavo AWG 26 o più grosso; la lunghezza si dimezza se si usa come linea a due fili un cavo a quattro fili. Velocità maggiori, più dispositivi e cavi peggiori la riducono.
Quanti dispositivi si possono collegare a un bus RS-485?
Senza ripetitore, 32 carichi unitari standard. Dispositivi con carico unitario inferiore ne consentono di più, se la loro documentazione lo prevede. Secondo la guida Modbus, la polarizzazione riduce di quattro il numero ammesso.