Il gestore Modbus viene usato per il protocollo Modbus RTU o ASCII in modalità master o slave.
Per aggiungere un gestore Modbus al controller, selezionare il
nel , trascinarlo nella e rilasciarlo su uno dei nodi evidenziati.Per maggiori informazioni sull'aggiunta di un dispositivo nel progetto, vedere:
• Uso del Catalogo hardware
• Uso del Menu contestuale o pulsante Più
Per configurare il gestore Modbus Manager del controller, fare doppio clic su
nella struttura .La finestra di configurazione di Modbus Manager viene visualizzata come illustrato di seguito:
Impostare i parametri come descritto in questa tabella:
Elemento |
Descrizione |
---|---|
|
Specificare la modalità di trasmissione da utilizzare:
Impostare questo parametro a un valore identico per ogni dispositivo Modbus sul collegamento. |
|
Specificare il tipo di dispositivo:
|
|
Indirizzo Modbus del dispositivo, quando lo slave è selezionato. |
|
Tempo per evitare la collisione tra bus. Impostare questo parametro a un valore identico per ogni dispositivo Modbus sul collegamento. |
|
Parametri specificati nella finestra di configurazione Linea seriale. |
Quando il controller è configurato come un Master Modbus, i seguenti blocchi funzione sono supportati dalla libreria PLCCommunication:
ADDM
READ_VAR
SEND_RECV_MSG
SINGLE_WRITE
WRITE_READ_VAR
WRITE_VAR
Per ulteriori informazioni, vedere Descrizioni dei blocchi funzione della libreria PLCCommunication.
Quando il controller è configurato come slave Modbus, sono supportate le seguenti richieste Modbus:
Codice funzione Dec (Hex) |
Funzione secondaria Dec (Hex) |
Funzione |
---|---|---|
1 (1 hex) |
– |
Lettura uscite digitali (%Q) |
2 (2 hex) |
– |
Lettura ingressi digitali (%I) |
3 (3 hex) |
– |
Lettura più registri (%MW) |
6 (6 hex) |
– |
Scrittura registro singolo (%MW) |
8 (8 hex) |
– |
Diagnostica |
15 (F hex) |
– |
Scrittura su più uscite digitali (%Q) |
16 (10 hex) |
– |
Scrittura su registri multipli (%MW) |
23 (17 hex) |
– |
Lettura/scrittura registri multipli (%MW) |
43 (2B hex) |
14 (E hex) |
Lettura identificazione dispositivo |
Questa tabella contiene i codici delle sottofunzioni supportate dalla richiesta di diagnostica Modbus 08:
Codice sottofunzione |
Funzione |
|
---|---|---|
Dec |
Hex |
|
10 |
0A |
Azzera contatori e registro di diagnostica |
11 |
0B |
Restituisce conteggio messaggio bus |
12 |
0C |
Restituisce conteggio errori di comunicazione bus |
13 |
0D |
Restituisce conteggio errori di eccezione bus |
14 |
0E |
Restituisce conteggio messaggi slave |
15 |
0F |
Restituisce conteggio nessuna risposta slave |
16 |
10 |
Restituisce conteggio NAK slave |
17 |
11 |
Restituisce conteggio occupato slave |
18 |
12 |
Restituisce conteggio overrun caratteri bus |
In questa tabella sono elencati gli oggetti che possono essere letti con una richiesta di lettura identificazione dispositivo (livello di identificazione di base):
ID oggetto |
Nome oggetto |
Tipo |
Valore |
---|---|---|---|
00 hex |
Codice produttore |
Stringa ASCII |
Schneider Electric |
01 hex |
Codice prodotto |
Stringa ASCII |
Codice di riferimento controller es.: TM241CE24T |
02 hex |
Revisione maggiore/ minore |
Stringa ASCII |
aa.bb.cc.dd (uguale al descrittore dispositivo) |
La seguente sezione descrive le differenze esistenti tra il mapping di memoria Modbus del controller e il mapping Modbus dell'HMI. Se non si programma l'applicazione affinché riconosca queste differenze nel mapping, il controller e l'HMI non comunicheranno correttamente. In questo modo i valori non corretti potranno essere scritti in aree di memoria responsabili delle operazioni di uscita.
AVVERTIMENTO | |
---|---|
Quando il controller e l'HMI Magelis sono collegati via Modbus (HMI è il master delle richieste Modbus), lo scambio di dati utilizza richieste a parola semplice.
Quando si utilizzano le parole doppie, vi è una sovrapposizione delle parole semplici nella memoria dell'HMI, ma non nella memoria del controller (vedere lo schema che segue). Affinché l'area di memoria dell'HMI e l'area di memoria del controller corrispondano, il rapporto tra le parole doppie della memoria dell'HMI e le parole doppie della memoria del controller deve essere 2.
Di seguito è fornito un esempio di corrispondenza della memoria per le parole doppie:
L'area di memoria %MD2 dell'HMI corrisponde all'area di memoria %MD1 del controller poiché le stesse parole semplici sono utilizzate dalla richiesta Modbus.
L'area di memoria %MD20 dell'HMI corrisponde all'area di memoria %MD10 del controller poiché le stesse parole semplici sono utilizzate dalla richiesta Modbus.
Di seguito è fornito un esempio di corrispondenza della memoria per i bit:
L'area di memoria %MW0:X9 dell'HMI corrisponde all'area di memoria %MX1.1 del controller poiché le parole semplici sono suddivise in 2 byte distinti nella memoria del controller.
Per aggiungere un modem al gestore Modbus, fare riferimento a Aggiunta di un modem a un gestore.