Conoscenza/Interfacce spiegate/Modbus TCP

Interfacce spiegateModbus TCP

Che cos’è il Modbus TCP? Il Modbus in rete spiegato

Il Modbus TCP trasporta il collaudato protocollo Modbus su Ethernet invece che su una linea seriale. Registri e codici funzione restano gli stessi, ma ogni apparecchio ha un indirizzo IP e più sistemi possono accedervi contemporaneamente.

L’essenziale in breve

  • Il Modbus TCP usa TCP/IP e per impostazione predefinita la porta 502.
  • Un client chiede, il server risponde. Nel mondo Modbus RTU si chiamavano master e slave.
  • Invece della somma di controllo CRC, ogni telegramma porta un’intestazione MBAP con numero di transazione e Unit ID.
  • Registri e codici funzione sono gli stessi del Modbus RTU.
  • Il Modbus TCP non ha un’autenticazione integrata: gli apparecchi di misura vanno messi in un segmento di rete dedicato.

In questa pagina

Come funziona il Modbus TCP?

Il client stabilisce una connessione TCP con l’apparecchio, di solito sulla porta 502, e invia la sua richiesta. L’apparecchio risponde sulla stessa connessione. A differenza del Modbus RTU nessuno deve aspettare che il bus sia libero: più client possono essere collegati contemporaneamente, per esempio la supervisione e un sistema di gestione dell’energia.

La somma di controllo della variante seriale viene meno, perché il TCP protegge da sé la trasmissione. Al suo posto ogni telegramma è preceduto dall’intestazione MBAP (Modbus Application Protocol Header):

CampoLunghezzaContenuto
Numero di transazione2 byteassocia la risposta alla richiesta
Identificativo di protocollo2 bytesempre 0 per Modbus
Lunghezza2 bytenumero di byte seguenti
Unit ID1 byteindirizzo dell’apparecchio dietro un gateway; sull’EMU Professional II sempre 1

Qual è la differenza tra Modbus TCP e Modbus RTU?

CaratteristicaModbus RTUModbus TCP
TrasmissioneRS485, due filiEthernet
IndirizzamentoIndirizzo slave 1–247Indirizzo IP, più la Unit ID
ProtezioneSomma di controllo CRC16TCP, intestazione MBAP
Interrogazioniun solo masterpiù client contemporaneamente
TopologiaLinea con resistenze di terminazioneRete con switch
Velocitàtipicamente da 9600 a 19 200 baud10 o 100 Mbit/s

Le due varianti sono confrontate in dettaglio nell’articolo Modbus TCP o Modbus RTU?.

Come si portano in rete gli apparecchi Modbus RTU?

Con un gateway. Un gateway semplice riceve le richieste Modbus TCP e le inoltra sul bus RS485; la Unit ID nell’intestazione MBAP stabilisce quale apparecchio sul bus è interessato.

Un data logger come l’EMU M-Center va oltre: legge da sé gli apparecchi, memorizza i valori e li mette a disposizione come server Modbus TCP in una propria tabella di registri. La supervisione non interroga più ogni contatore tramite il bus, ma l’M-Center in rete.

Di che cosa ha bisogno l’IT per il Modbus TCP?

  • un indirizzo IP fisso o una prenotazione DHCP per apparecchio
  • una VLAN o un segmento di rete dedicato agli apparecchi di misura
  • una regola firewall che consenta l’accesso alla porta 502 solo al sistema che interroga
  • l’elenco dei registri con tipi di dati e ordine delle parole tratto dal manuale

Il Modbus TCP di per sé non conosce né password né crittografia. Chiunque raggiunga l’apparecchio in rete può leggerne i registri. L’estensione Modbus/TCP Security con TLS sulla porta 802 funziona solo con apparecchi che la supportano esplicitamente.

Il Modbus TCP con gli apparecchi EMU

Il contatore di energia EMU Professional II con Modbus TCP è disponibile come EMU Professional II 3/100 per inserzione diretta fino a 100 A e come 3/5 per inserzione tramite TA. La tabella dei registri si trova nella pagina del prodotto. In che cosa Modbus TCP e MQTT differiscono sullo stesso contatore lo mostra la pagina TCP/IP sull’EMU Professional II.

L’EMU M-Center mette a disposizione i contatori M-Bus e Modbus RTU come server Modbus TCP, vedi M-Bus a Modbus TCP. Per Loxone esistono modelli per l’EMU Professional II, vedi Contatori EMU in Loxone.

Domande frequenti


Quale porta usa il Modbus TCP?

Per impostazione predefinita la porta TCP 502. La variante crittografata Modbus/TCP Security usa la porta 802.

Il Modbus TCP funziona su Ethernet?

Sì. Il Modbus TCP usa TCP/IP e quindi la normale rete Ethernet, con switch, VLAN e router. Non serve una linea di bus dedicata.

Con il Modbus TCP serve un indirizzo slave?

L’apparecchio viene indirizzato tramite il suo indirizzo IP. La Unit ID nell’intestazione MBAP conta soprattutto dietro i gateway, dove seleziona l’apparecchio sul bus RS485. Sull’EMU Professional II vale sempre 1.

Più sistemi possono interrogare lo stesso contatore?

Sì, è uno dei vantaggi rispetto al Modbus RTU. Quante connessioni contemporanee un apparecchio consente è indicato nel manuale.

Qual è la differenza tra Modbus TCP e MQTT?

Con il Modbus TCP un client va a prendere i valori, con l’MQTT il contatore li invia di propria iniziativa a un broker. Il confronto si trova nella pagina TCP/IP sull’EMU Professional II.

Per approfondire


SEITEContatore di energia con Modbus TCPEMU Professional II, registri ed esempi SEITEM-Bus su Modbus TCPGateway con l’EMU M-Center SEITEModbus TCP o RTU?Guida alla scelta per i progetti di misura SEITEInterfacce spiegateLe cinque interfacce a confronto

Portare i contatori in rete?


Ci invii il numero di punti di misura e il sistema di destinazione. Le diremo se sono più adatti contatori con Modbus TCP o un M-Center.

Telefono
+41 (0)41 545 03 00

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