Controller come dispositivo slave su Modbus TCP

Panoramica

Questa sezione descrive la configurazione del M241 Logic Controller come Dispositivo slave Modbus TCP.

Il Dispositivo slave Modbus TCP aggiunge un'altra funzione del server Modbus al controller. Questo server viene indirizzato dall'applicazione client Modbus specificando un ID unità configurato (indirizzo Modbus) nell'intervallo 1...247. Il server Modbus integrato del controller slave non richiede configurazione e viene indirizzato specificando un ID unità uguale a 255. Consultare Configurazione Modbus TCP.

Per configurare il M241 Logic Controller come Dispositivo slave Modbus TCP, occorre aggiungere la funzionalità Dispositivo slave Modbus TCP al controller (vedere Aggiunta di un dispositivo slave Modbus TCP di seguito). Questa funzionalità crea una specifica area di I/O nel controller accessibile con il protocollo Modbus TCP. Tale area di I/O viene usata qualora un master esterno richieda di accedere agli oggetti %IW e %QW del controller. Questa funzionalità Dispositivo slave Modbus TCP consente di fornire a questa area gli oggetti di I/O del controller a cui è poi possibile accedere con una singola richiesta dei registri di lettura/scrittura Modbus.

Gli ingressi/uscite vengono visti dal controller slave: gli ingressi sono scritti tramite il master e le uscite sono lette dal master.

Il Dispositivo slave Modbus TCP può anche definire un'applicazione client Modbus privilegiata, la cui connessione non viene chiusa forzatamente (le connessioni Modbus integrate possono essere chiuse quando sono necessarie più di 8 connessioni).

Il watchdog associato alla connessione privilegiata permette di verificare se il controller è interrogato dal master privilegiato. Se non vi sono richieste Modbus entro la durata del timeout, il dato di diagnostica i_byMasterIpLost è impostato a 1 (TRUE). Per maggiori informazioni, vedere le Variabili di sistema in sola lettura delle porte.

Per ulteriori informazioni su Modbus TCP, consultare il sito Web www.odva.org.

Aggiunta di un dispositivo slave Modbus TCP

Passo

Azione

1

Aggiungere un modulo di espansione TM4ES4 alla configurazione. Per fare questo, occorre aver aggiunto Gestore_Ethernet_industriale al proprio logic controller.

2

Selezionare Dispositivo slave Modbus TCP nel Catalogo hardware.

3

Selezionarlo e trascinarlo nella struttura Dispositivi su uno dei nodi evidenziati.

Per maggiori informazioni sull'aggiunta di un dispositivo nel progetto, vedere:

• Uso del metodo di trascinamento

• Uso del Menu contestuale o pulsante Più

Configurazione Modbus TCP

Per configurare il Dispositivo slave Modbus TCP, fare doppio clic su Ethernet_1 > Dispositivo_sla­ve_ModbusTCP in Dispositivi.

Appare questa finestra di dialogo:

G-SE-0076165.1.gif-high.gif

 

 

Elemento

Descrizione

Indirizzo IP Master

Indirizzo IP del master Modbus

Le connessioni non sono chiuse su questo indirizzo.

Watchdog

Watchdog in incrementi di 500 ms

NOTA: Il watchdog si riferisce all'indirizzo IP Master a meno che l'indirizzo sia 0.0.0.0.

Porta slave

Porta di comunicazione Modbus (502)

NOTA: È possibile modificare il numero di porta tramite il comando script changeModbusPort.

ID unità

Invia le richieste al dispositivo slave Modbus TCP (1...247) anziché al server Modbus integrato (255).

Registri di mantenimento (%IW)

Numero dei registri %IW da utilizzare nello scambio (2...120) (ciascun registro è 2 byte)

Registri di ingresso (%QW)

Numero dei registri %QW da utilizzare nello scambio (2...120) (ciascun registro è 2 byte)

Scheda Mapping I/O dispositivo slave Modbus TCP

Gli I/O sono assegnati ai registri Modbus dal punto di vista del Master nel modo seguente:

oGli %IW sono assegnati dal registro 0 a n-1 e sono in lettura/scrittura (R/W) (n = numero registri in attesa; dimensione di un registro %IW: 2 byte).

oGli %QW sono mappati dal registro n a n+m -1 e sono di sola lettura (m = numero dei registri di ingresso, dimensione di un registro %QW è 2 byte).

Una volta che il Dispositivo slave Modbus TCP è stato configurato, i comandi Modbus inviati al relativo ID Unità (indirizzo Modbus) sono gestiti in modo diverso se lo stesso comando fosse stato inviato a ogni altro dispositivo Modbus sulla rete. Ad esempio, quando il comando Modbus 3 (3 hex) viene inviato a un dispositivo standard Modbus, legge e restituisce il valore di uno o più registri. Quando questo comando viene inviato allo slave TCP Modbus, esso facilita l'operazione di lettura tramite uno scanner degli I/O esterno.

Dopo aver configurato il Dispositivo slave Modbus TCP, i comandi Modbus inviati al relativo ID Unità (indirizzo Modbus) accederanno agli oggetti %IW e %QW del controller, anziché alle parole standard Modbus (a cui si accede quando l'ID Unità è 255). Questo semplifica le operazioni di lettura/scrittura da parte di un'applicazione scanner degli I/O Modbus TCP.

Il dispositivo slave Modbus TCP risponde a un subset di comandi Modbus con lo scopo di scambiare i dati con lo scanner degli I/O esterno. I seguenti comandi Modbus sono supportati dal dispositivo slave Modbus TCP:

Codice funzione dec (hex)

Funzione

Commento

3 (3)

Lettura registro di mantenimento

Consente al master di leggere gli oggetti %IW e %QW del dispositivo

6 (6)

Scrittura singolo registro

Consente al master di scrivere gli oggetti %IW del dispositivo

16 (10)

Scrittura registri multipli

Consente al master di scrivere gli oggetti %IW del dispositivo

23 (17)

Lettura/scrittura registri multipli

Consente al master di leggere gli oggetti %IW e %QW del dispositivo e di scrivere gli oggetti %IW del dispositivo

Altro

Non supportato

NOTA: Le richieste Modbus che provano ad accedere ai registri sopra n+m-1 ricevono come risposta il codice di eccezione 02 - ILLEGAL DATA ADDRESS.

Per collegare gli oggetti I/O alle variabili, selezionare la scheda Mapping I/O del dispositivo slave Modbus TCP:

G-SE-0076160.1.gif-high.gif

 

 

Canale

Tipo

Descrizione

Ingresso

IW0

WORD

Registro di mantenimento 0

...

...

...

IWx

WORD

Registro di mantenimento x

Uscita

QW0

WORD

Registro di ingresso 0

...

...

...

QWy

WORD

Registro di ingresso y

Il numero di parole dipende dai parametri Registri di mantenimento (%IW) e Registri di ingresso (%QW) della scheda Modbus TCP.

NOTA: Output significa OUTPUT dal controller di origine (= %IW per il controller). Input significa INPUT dal controller di origine (= %QW per il controller).

NOTA: Il Dispositivo slave Modbus TCP aggiorna i registri %IW e %QW come singolo unità con coerenza dell'ora con i task IEC (task MAST per impostazione predefinita). Per contro, il server integrato Modbus TCP garantisce solo la coerenza dell'ora per 1 parola (2 byte). Se l'applicazione richiede coerenza dell'ora per più di 1 parola (2 byte), utilizzare il Dispositivo slave Modbus TCP.

Il parametro Aggiorna variabili sempre viene impostato a Attivato 1 (usare il task del ciclo del bus se non è utilizzato in alcun task) e non è modificabile.

Opzioni del ciclo di bus

Nella scheda Mapping I/O dispositivo slave Modbus TCP, selezionare il task ciclo bus da utilizzare:

oUtilizza impostazioni di ciclo del bus di livello superiore (predefinito),

oMAST

oUn task esistente del progetto: è possibile selezionare un task esistente e associarlo allo scanner. Per ulteriori informazioni sui task applicazione, consultare la Guida alla programmazione di EcoStruxure Machine Expert.

NOTA: È presente un parametro Task ciclo bus corrispondente nell'editor mapping degli I/O del dispositivo che contiene il Dispositivo slave Modbus TCP. Questo parametro definisce il task responsabile dell'aggiornamento dei registri %IW e %QW.