Comunicazione Modbus
Descrizione
Modbus è un protocollo client/server per la comunicazione tra dispositivi collegati in una rete. I dispositivi Modbus comunicano utilizzando una tecnica client/server in cui solo un dispositivo (client) può inviare messaggi di richiesta. Gli altri dispositivi nella rete (server) rispondono, restituendo i dati richiesti dal client o eseguendo l'azione contenuta nel messaggio inviato. Un server è un dispositivo collegato a una rete che elabora le informazioni e invia i risultati al client utilizzando il protocollo Modbus.
Il dispositivo client può inviare messaggi a singoli server o a tutti i server collegati alla rete (broadcast), mentre i dispositivi server possono solo rispondere ai messaggi singolarmente e al dispositivo client. Lo standard Modbus utilizza il codice RTU per la trasmissione dei dati.
Formato dati (RTU)
Il tipo di codifica utilizzato definisce la struttura dei messaggi trasmessi sulla rete e il modo in cui tali informazioni vengono decifrate. Il tipo di codifica viene in genere scelto in base a parametri specifici (velocità di trasmissione, parità, stop), inoltre alcuni dispositivi supportano solo tipi di codifica specifici. Utilizzare lo stesso tipo di codifica per tutti i dispositivi collegati a una rete Modbus.
Il protocollo utilizza il metodo binario RTU con il frame seriale configurato come segue:
-
8 bit per i dati
-
Bit di parità: nessuno (configurabile)
-
2 bit di stop
I parametri possono essere modificati da:
-
Interfaccia utente termostato
-
Invio di dati tramite protocollo Modbus direttamente a un singolo dispositivo o in broadcast utilizzando l'indirizzo 0 (broadcast)
Comandi Modbus disponibili e aree dati
Sono implementati i comandi seguenti:
|
Comando Modbus |
Descrizione |
|---|---|
|
03 (hex 0x03) |
Lettura risorse |
|
16 (hex 0x10) |
Scrittura risorse |
|
43 (hex 0x2B) |
Lettura ID dispositivo. È possibile leggere i 3 campi seguenti:
|
Configurazione
L'indirizzo di un dispositivo in un messaggio Modbus viene impostato tramite il parametro Adr.
L'indirizzo 0 è utilizzato per trasmettere messaggi riconosciuti da tutti i server. Il server risponde solo alle singole richieste.
I parametri di configurazione del dispositivo sono i seguenti:
|
Parametro |
Descrizione |
|---|---|
|
Adr |
Indirizzo server protocollo Modbus |
|
bAU |
Selezione della velocità di trasmissione |
|
Pty |
Imposta il BIT di parità protocollo Modbus e numero di BIT di stop:
|
Le modifiche apportate ai parametri vengono prese in considerazione dopo lo spegnimento e la riaccensione delle unità di raffreddamento.
Impostazione dei parametri Modbus dall'interfaccia utente
-
Tenere premuto SET per almeno 5 secondi.
-
Scorrere fino a PA1. Premere SET per inserire la password PA1 con i tasti
e
. Premere SET per confermare.
-
Scorrere fino a Adr con i tasti
e
e premere SET. Il valore predefinito è 1. Modificare il valore dell'indirizzo con i tasti
e
. Premere SET per confermare o premere
per annullare.
-
Scorrere fino a PtY e premere SET. Il valore predefinito è E. Modificare il valore con i tasti
e
. Premere SET per confermare o premere
per annullare.
-
Scorrere fino a bAU. Il valore predefinito è 96 (9600 baud). Modificare il valore con i tasti
e
. Premere SET per confermare o premere
per annullare l'Elenco delle risorse Modbus.
Elenco delle risorse Modbus
|
Descrizione dei dati |
Parametro |
Indirizzo Modbus |
R/W |
Dimensione dei dati |
Intervallo |
Unità |
|---|---|---|---|---|---|---|
|
Temperatura misurata dalla sonda Pb1 |
Pb1 (*10) |
4109 |
R |
1 parola (INT16) |
-67...302 |
0,1 °C / 0.1 °F |
|
Ingresso digitale: Sportello armadio aperto |
DI |
4118, bit 0 |
R |
1 bit |
0...1 |
Flag |
|
Uscita stato compressore |
RL1 |
4120, bit 0 |
R |
1 bit |
0...1 |
Flag |
|
Uscita segnalazione allarme esterno |
RL2 |
4120, bit 0 |
R |
1 bit |
0...1 |
Flag |
|
Uscita stato ventola |
RL3 |
4120, bit 0 |
R |
1 bit |
0...1 |
Flag |
|
Setpoint temperatura |
SEt (*10) |
32769 |
R/W |
1 parola (INT16) |
20 - 50 |
0,1 °C / 0.1 °F |
|
Errore sonda Pb1 |
E1 |
4121, bit 0 |
R |
1 bit |
0...1 |
Flag |
|
Stato sportello aperto (allarme) |
oPd |
4121, bit 3 |
R |
1 bit |
0...1 |
Flag |
|
Allarme bassa temperatura |
AL1 |
4121, bit 5 |
R |
1 bit |
0...1 |
Flag |
|
Allarme alta temperatura |
AH1 |
4121, bit 6 |
R |
1 bit |
0...1 |
Flag |
|
Soglia massima di allarme |
HAL |
32779 |
R/W |
1 parola (INT16) |
0...302 |
0,1 °C / 0.1 °F |
|
Soglia minima di allarme |
LAL |
32781 |
R/W |
1 parola (INT16) |
Da -67 a 50 |
0,1 °C / 0.1 °F |
|
Ore operative della ventola del condensatore |
tim_DEF2 (*10) |
4179 |
R |
1 parola (INT16) |
0...65535 |
Ora/10 |
|
Numero di cicli del compressore |
cnt_CP1 |
4172 |
R |
1 parola (INT16) |
0...65535 |
Num |
|
Stato standby unità di raffreddamento |
STD-BY |
4115, bit 0 |
R |
1 bit |
0...1 |
Flag |
|
Stato compressore |
CP1 |
4115, bit 1 |
R |
1 bit |
0...1 |
Flag |
|
Stato ventola |
FAN_C |
4115, bit 7 |
R |
1 bit |
0...1 |
Flag |
|
Comando di avvio unità di raffreddamento |
Ronon |
4123, bit 0 |
R/W |
1 bit |
0...1 |
Flag |
|
Comando di arresto unità di raffreddamento |
RoFFoFF |
4123, bit 3 |
R/W |
1 bit |
0...1 |
Flag |
|
Unità di misura (0 = °C, 1 = °F) |
Dro |
32969, bit 8 |
R/W |
1 bit |
0...1 |
Flag |