Il protocollo Modbus RTU è implementato nei moduli processore AC500. Modbus è un protocollo master-slave (client-server). Il client invia una richiesta al server e riceve le risposte.
La modalità operativa Modbus di un'interfaccia seriale viene impostata nella configurazione del PLC ⮫ «Configurazione di Modbus RTU su interfaccia seriale».
Per utilizzare il PLC come client Modbus RTU è possibile utilizzare due metodi di programmazione:
-
ModRtuMast
-
ModRtuToken con blocchi funzione di lettura/scrittura
ModRtuMast
Con questo metodo il blocco funzione client Modbus ModRtuMast viene utilizzato per programmare tutti i lavori di lettura e/o scrittura in una sequenza. Se viene utilizzato più di un blocco funzione ModRtuMast, ad esempio per diverse connessioni di tipo sever, la sequenza deve fare in modo che solo uno di questi blocchi funzione ModRtuMast sia attivo alla volta.
Una sintesi dei codici funzione supportati per la comunicazione Modbus RTU con un PLC AC500 è riportata nell'esempio applicativo ⮫ Modbus RTU e nel blocco funzione ModRtuMast.
ModRtuToken con blocchi funzione di lettura/scrittura
Con questo metodo il blocco funzione ModRtuToken viene utilizzato insieme a ModRtuRead e/o ModRtuWrite e/o ModRtuReadWrite23.
Invece di programmare una sequenza, per garantire la funzionalità sequenziale di Modbus RTU è necessario un semplice collegamento tramite variabili di struttura tra i blocchi funzione.
Un progetto di esempio per Modbus client e server per abilitare la comunicazione Modbus RTU con un AC500 PLC è fornito nell'esempio applicativo ⮫ Modbus RTU e nel blocco funzione ModRtuMast.
Per utilizzare il protocollo Modbus RTU su un PLC AC500-eCo, il modulo processore deve essere dotato di una scheda opzionale per la comunicazione seriale COMx TA5141-RS232I, TA5142-RS485 o TA5142-RS485I. Il tipo di adattatore della scheda opzionale deve essere selezionato in base al tipo di interfaccia seriale fisica necessaria.
A seconda del tipo di CPU, è possibile utilizzare fino a 3 schede opzionali per la comunicazione seriale COMx⮫ «Collegare una scheda opzionale per la comunicazione seriale COMx».
Modbus La RTU può essere utilizzata per la comunicazione tra un PLC AC500-eCo e un pannello di controllo. Il principio di collegamento è descritto utilizzando come esempio il pannello di controllo CP604: ⮫ Collegamento del CP604 tramite Modbus RTU.
Modbus cliente
In questa modalità operativa, il traffico di telegrammi con il/i server viene gestito tramite il blocco funzione ModRtuMast.
Questo blocco funzione invia telegrammi di richiesta Modbus al/i server tramite l'interfaccia impostata e riceve telegrammi di risposta Modbus dal/i server tramite questa interfaccia.
I blocchi Modbus trasferiti dal server contengono le seguenti informazioni:
-
Modbus indirizzo del server interrogato (1 byte)
-
Codice funzione che definisce la richiesta del client (1 byte)
-
Dati da scambiare (n byte)
-
Codice di controllo CRC16 (2 byte)
Modbus server
In questa modalità operativa, non è necessario alcun blocco funzione per la comunicazione Modbus. L'invio e la ricezione dei telegrammi Modbus avvengono automaticamente.
Le CPU AC500 elaborano i seguenti codici operativi Modbus:
|
Codice funzione |
Descrizione |
|
|---|---|---|
|
DEC |
ESADECIMALE |
|
|
01 o 02 |
01 o 02 |
Lettura di n bit |
|
03 o 04 |
03 o 04 |
Leggere n parole |
|
05 |
05 |
Scrivere un bit (codificato in una parola) |
|
06 |
06 |
Scrivere una parola |
|
15 |
0F |
Scrivere n bit (codificati in un byte) |
|
16 |
10 |
Scrivere n parole |
|
22 |
16 |
Scrittura della maschera |
|
23 |
17 |
Lettura/scrittura di più parole in un unico telegramma |
Le seguenti restrizioni si applicano alla lunghezza dei dati da inviare:
|
Codice funzione |
Lunghezza massima |
|
|---|---|---|
|
DEC |
ESADECIMALE |
|
|
01 o 02 |
01 o 02 |
2000 bit |
|
03 o 04 |
03 o 04 |
125 parole / 62 parole doppie |
|
05 |
05 |
1 bit |
|
06 |
06 |
1 parola |
|
15 |
0F |
2000 bit |
|
16 |
10 |
123 parole / 61 parole doppie |
|
22 |
16 |
Scrivere: 1 parola |
|
23 |
17 |
Leggi: 125 parole / 62 parole doppie Scrivere: 121 parole / 60 parole doppie |