Modbus - Control System IO Device

Modbus

È un protocollo fieldbus di automazione industriale basato su una comunicazione master/slave o client/server, in cui i dispositivi scambiano dati con PLC, sensori, attuatori, e Control System. Il sistema nella sua interezza include il protocollo di comunicazione, la configurazione degli indirizzi dei devices, il mapping dei registri per la lettura e la scrittura dei dati, e l’integrazione con BMS quali il NeuroN di MIRA La sua semplicità lo rende ideale per applicazioni in ambito energetico, HVAC, automazione di processo e controllo remoto. 

Bi System supporta il sistema Modbus.

Feature

Aspetti normativi

Modbus è un protocollo di comunicazione aperto, sviluppato nel 1979, pensato inizialmente per la comunicazione tra PLC, e poi diffuso . Ecco i punti salienti dal punto di vista normativo:

  • Protocollo libero da royalties: chiunque può implementarlo senza costi di licenza, il che ne ha favorito la diffusione in ambito industriale.
  • Standardizzazione informale: pur non essendo uno standard ISO o IEC ufficiale, è ampiamente riconosciuto e adottato come de facto standard per la comunicazione industriale e il control system.
  • Documentazione ufficiale: la Modbus Application Protocol Specification definisce formalmente struttura, codici funzione e modelli di indirizzamento.
  • Compatibilità multi-piattaforma: può essere implementato su diversi mezzi fisici (RS232, RS485, Ethernet) e supporta vari formati (RTU, ASCII, TCP/IP).

 

🧩 Modello ISO/OSI e Modbus

Il protocollo si colloca in modo specifico, secondo il tipo, nel modello ISO/OSI che suddivide la comunicazione in 7 livelli. A differenza di protocolli più evoluti quali LonTalk e BACnet che occupano tutti e 7 i layer della pila, i tipi RTU e ASCII si fermano al livello 2 (DataLink), mentre Modbus TCP si estende fino al livello 4 grazie all’uso di TCP/IP.

 

 

 

 

Modbus Modello OSI per control system

Feature

Cenni tecnici

  • Modbus RTU / ASCII: trasmettono i dati in formato binario esadecimale con controllo errori tramite CRC il tipo RTU, in caratteri ASCII e controllo errori LRC il tipo ASCII. Entrambi i tipi utilizzano la trasmissione differenziale su doppino intrecciato e schermato da 120 ohm tramite il transceiver RS485, trasmettono ad una velocità massima di 115 kbps, e necessitano di impedenze di fine e inizio linea. l’ Accesso al bus è di tipo master/slave, la distribuzione è vincolata alla topologia “entra ed esci”, e non prevede protezione e cifratura dei dati.

 

  • Modbus TCP: incapsula i frame in pacchetti TCP/IP, permettendo la comunicazione su reti Ethernet o via WiFi. L’accesso alla rete è di tipo client/server con il pregio di poter disporre di più client(master) contemporaneamente; ogni nodo oltre a disporre di Id Modbus detiene anche un indirizzo IP. La velocità, la distribuzione, le infrastrutture, la sicurezza e cifratura disponibili sono quelle della rete. Di contro l’ utilizzo del TCP/IP introduce un certo overhead che può essere inefficiente in reti congestionate condivise con il control system.

Esempio di Frame RTU

[01][03][00][6B][00][03][76][87]
Slave ID: 01
Function: 03 (Read Holding Registers)
Start Address: 006B
Quantity: 0003
CRC: 7687

Esempio di Frame ASCII

:0103006B0003F6\r\n
Start: :
Slave ID: 01
Function: 03
Start Address: 006B
Quantity: 0003
LRC: F6
End: \r\n

Punti di forza e debolezze

Come ogni protocollo di comunicazione per Control System anche questo protocollo presenta vantaggi e svantaggi secondo l’impianto o l’applicazione da gestire.

Certamente è uno dei protocolli più longevi e forse anche il più conosciuto, la sua diffusione è mondiale, e il suo utilizzo accessibile a tutti.

Molti hanno cercato di farne versioni personalizzate, ma alla fine non s’è fatto altro che ottenere delle copie più o meno fedeli dell’originale.

Di seguito una serie di pregi e di mancanze:

agsdi-myspace-2

Protocollo libero e aperto

È gratuito e senza licenza, e questo favorisce la diffusione e la standardizzazione semplificando l’interoperabilità tra dispositivi, e riducendo e accellerando i costi di sviluppo e integrazione.

agsdi-world

Ampia compatibilità

Supportato da migliaia di dispositivi, consente aggiornamenti e comunicazioni efficienti tra hardware di marchi diversi; ideale per impianti eterogenei di control system.

agsdi-book

Implementazione semplice

La struttura intuitiva, semplice e lineare, e i comandi essenziali e chiari permettono l’utilizzo anche su dispositivi e sistemi economici, con minime risorse e poche richieste.

agsdi-gear

Flessibilità nelle funzionalità

Sacrificando un po’ la struttura standard Modbus supporta comandi custom personalizzati e implementazioni parziali, e in questo modo può adattarsi alle esigenze specifiche dei singoli produttori.

agsdi-share

Ottimale per Control System

Utilizza un semplice ed econonico cavo bifilare intrecciato per collegare i dispositivi remoti, riducendo così i cablaggi e semplificando la ricerca dei guasti e la manutenzione.

agsdi-hand-watch

Sincronizzazione temporale delicata

RTU e ASCII dipendono dalla temporizzazione per delimitare i frame. Errori nei tempi possono causare perdite di comunicazione, soprattutto a velocità elevate.

agsdi-message-2

Trasmissione half-duplex

La trasmissione su RS485 è consentita a un solo dispositivo alla volta, limitando di conseguenza la velocità e richiedendo controlli rigorosi della sequenza dei messaggi.

agsdi-security-camera

TCP soggetto a congestioni

La comunicazione tramite TCP dipende molto dalla qualità della rete Ethernet o della rete WiFi. In ambienti industriali trafficati o in presenza di interferenze elevate, può subire ritardi o disconnessioni.

agsdi-padlock

Sicurezza limitata nativamente

I tipi RTU e ASCII non prevedeno cifratura o autenticazione. In contesti sensibili è necessario affiancare al Modbus altri protocolli esterni per proteggere i dati.

agsdi-error

Gestione errori non strutturata

Il controllo si limita a un algoritmo di checksum e ad alcuni codici di eccezione. Non sono previsti sistemi di ritrasmissione o monitoraggio delle prestazioni.

Tech

La topologia dei tipi RTU e ASCII

Il protocollo Modbus prevede un sistema di comunicazione seriale la cui topologia impiantistica è tipicamente a bus lineare, dove tutti i dispositivi sono connessi lungo un unico cavo seriale (RS-485). Ogni nodo ha un indirizzo univoco e comunica in modalità master-slave, con un solo master che interroga i dispositivi slave uno alla volta. È fondamentale rispettare la terminazione alle estremità del bus per evitare riflessioni del segnale, e a questo scopo si adottano delle impedenze di inizio e fine linea con valore di 120 ohm.

La lunghezza massima e il numero di dispositivi dipendono molto dalla velocità di trasmissione e dalla qualità del cablaggio. La regola d’oro vuole che il doppino bus entra ed esca dallo stesso nodo senza ulteriori derivazioni, tuttavia delle volte per ragioni pratiche la connessione va fatta dentro scatole di derivazione a qualche metro di distanza dal nodo. Il ramo di cavo che va dalla scatola di derivazione al nodo viene chiamato “stub“, ed è fondamentale che gli stub siano assenti o quanto più corti possibile.

Modbus - protocollo per control system

I Comandi

Di seguito una lista dei comandi standard più comuni: