Conoscenza/Interfacce spiegate/RS485 e Modbus RTU

Interfacce spiegateRS485

Che cosa sono RS485 e Modbus RTU? Linea e protocollo spiegati

RS485 e Modbus RTU vengono spesso nominati insieme, ma sono due cose diverse. RS485 stabilisce come i segnali viaggiano sulla linea, Modbus RTU che cosa contengono i telegrammi. Insieme sono una delle interfacce per contatori più diffuse nell’industria e nella tecnica degli edifici.

L’essenziale in breve

  • RS485 (TIA/EIA-485) trasmette i dati come differenza di tensione su due fili, robusto contro i disturbi e fino a circa 1200 m.
  • Modbus RTU è un protocollo master-slave: un master chiede, gli slave con indirizzi da 1 a 247 rispondono.
  • La linea viene posata a catena e terminata con 120 Ω a entrambe le estremità.
  • I valori misurati si trovano in registri a 16 bit. I valori a 32 e 64 bit occupano due o quattro registri.
  • Ogni telegramma è protetto da una somma di controllo CRC16.

In questa pagina

Che cos’è l’RS485?

RS485 è una norma per la trasmissione elettrica, non un protocollo. I dati viaggiano come differenza di tensione tra due fili, di solito chiamati A e B, a volte D+ e D−. Poiché il ricevitore valuta solo la differenza, i disturbi che colpiscono allo stesso modo entrambi i fili si annullano in gran parte. Per questo l’RS485 funziona anche in quadri con inverter e su lunghe distanze.

Classicamente un segmento sopporta 32 utenti (unit load); i driver moderni caricano il bus solo con una frazione di questo valore. La linea può essere lunga circa 1200 m, meno a baud rate elevati.

Sull’RS485 funzionano diversi protocolli, oltre al Modbus RTU per esempio il BACnet MS/TP. Per un contatore di energia RS485 è quindi solo insieme al protocollo che si sa come leggerlo.

Come si cabla correttamente un bus RS485?

  • Posare a linea: da apparecchio ad apparecchio, senza stella e senza lunghe derivazioni.
  • Inserire una resistenza di terminazione da 120 Ω a ciascuna delle due estremità della linea, non su ogni apparecchio.
  • Usare un cavo dati twistato e schermato, idealmente con un’impedenza caratteristica di circa 120 Ω.
  • Portare con sé la massa di riferimento (GND) se gli apparecchi sono lontani o alimentati in modo diverso.
  • Impostare su tutti gli apparecchi lo stesso baud rate, la stessa parità e gli stessi bit di stop.

Gli ostacoli più frequenti nella realizzazione del bus sono descritti nell’articolo Modbus RTU su RS-485: i cinque ostacoli più frequenti.

Che cos’è il Modbus RTU?

Il Modbus è un protocollo aperto che Modicon ha sviluppato nel 1979 per i controllori. RTU sta per Remote Terminal Unit e indica la variante binaria per le linee seriali. Un master, per esempio un PLC, un data logger o un sistema di gestione dell’energia, invia una richiesta a un indirizzo slave e solo quell’apparecchio risponde. Uno slave non trasmette mai di propria iniziativa.

Un telegramma è composto da indirizzo, codice funzione, dati e una somma di controllo CRC16. Tra due telegrammi c’è una pausa di almeno 3,5 caratteri, dalla quale gli apparecchi riconoscono inizio e fine.

Codice funzioneSignificatoImpiego tipico
03Leggere holding registerValori misurati e impostazioni
04Leggere input registerValori misurati
06Scrivere un registroModificare un’impostazione
16Scrivere più registriScrivere più valori in un blocco

Come si leggono correttamente i registri Modbus?

Il Modbus conosce solo registri a 16 bit. Una lettura a 32 o 64 bit si distribuisce su due o quattro registri consecutivi. Se la parola più significativa venga prima lo decide ogni costruttore. Se un sistema fornisce valori senza senso, di solito l’ordine dei byte o delle parole è invertito.

Anche la numerazione degli indirizzi varia: alcuni manuali contano da 0, altri da 1. Se un valore è spostato esattamente di un registro, il motivo è quasi sempre questo.

Quando è adatto il Modbus RTU su RS485?

Il Modbus RTU è adatto quando un controllore o un data logger interroga direttamente contatori nello stesso quadro o edificio e nessuna rete arriva ai contatori. Con molti contatori in più edifici o più sistemi di destinazione conviene un gateway. Il confronto con la variante di rete si trova nell’articolo Modbus TCP o Modbus RTU? e nella pagina Che cos’è il Modbus TCP?.

RS485 e Modbus RTU con gli apparecchi EMU

Il contatore di energia RS485 EMU Professional II parla Modbus RTU, come EMU Professional II 3/100 per inserzione diretta fino a 100 A o come 3/5 per inserzione tramite TA.

L’EMU M-Center ha due porte RS485, legge fino a 64 apparecchi Modbus RTU e inoltra i valori via BACnet IP o MQTT.

Domande frequenti


Qual è la differenza tra RS485 e Modbus?

RS485 è la trasmissione elettrica su due fili, Modbus RTU il protocollo che vi passa sopra. Sull’RS485 possono funzionare anche altri protocolli, e il Modbus esiste anche su Ethernet come Modbus TCP.

Si può posare un bus RS485 a stella?

No. Funziona in modo affidabile solo una linea con derivazioni brevi. Stelle e derivazioni lunghe generano riflessioni che rendono illeggibili i telegrammi. Se gli apparecchi sono distribuiti a stella, aiutano un ripetitore o un distributore con segmenti separati.

Dove va la resistenza di terminazione?

Alle due estremità fisiche della linea, 120 Ω ciascuna tra A e B. Una resistenza su ogni apparecchio carica troppo il bus.

Quanti apparecchi su un bus Modbus RTU?

Il protocollo consente 247 indirizzi. Elettricamente l’RS485 limita un segmento a 32 unit load; con driver che ne assorbono solo una frazione sono possibili più apparecchi. In pratica il limite è spesso il tempo di interrogazione: più apparecchi, più dura un ciclo.

Quali impostazioni devono coincidere?

Baud rate, bit di dati, parità e bit di stop devono essere uguali sul master e su tutti gli slave. Sono diffusi 9600 o 19 200 baud con 8 bit di dati.

Per approfondire


SEITEContatore di energia RS485EMU Professional II con Modbus RTU SEITEOstacoli dell’RS485I cinque ostacoli più frequenti nella realizzazione del bus SEITEModbus TCP o RTU?Guida alla scelta per i progetti di misura SEITEInterfacce spiegateLe cinque interfacce a confronto

Domande sul Suo bus RS485?


Ci invii il numero di apparecchi, le lunghezze delle linee e il sistema di destinazione. Le diremo quale struttura funziona in modo affidabile.

Telefono
+41 (0)41 545 03 00

Supporto tecnico
helpdesk [at] emuag.ch
Modulo di supporto →