visualizza l'elenco degli articoli
STEP 7-Micro/WIN -- Messa a punto dell'ambiente di sviluppo -- Installazione e upgrade del software
Per quale motivo durante l'installazione di STEP 7-Micro/WIN V4.0 in Windows 7 non viene installato automaticamente anche il file "WinHlp32.exe" per i Field PG?
Quale software SIMATIC si può installare in sistemi operativi a 64 bit?
Come si può eseguire un aggiornamento ad un sistema operativo che la versione STEP 7-Micro/WIN esistente non supporta?
Come si può realizzare una comunicazione MODBUS con S7-200?
Dove si trovano in STEP 7 - Micro/WIN le librerie delle operazioni per il protocollo Modbus RTU ed il protocollo USS?
Come si disinstalla STEP 7-Micro/WIN V4.0 dopo una installazione interrotta?
S7-200 CPU -- Progettazione e programmazione della comunicazione -- Comunicazione con USS, Modbus o Freeport
Come si può realizzare una comunicazione MODBUS con S7-200?
Dove si trovano in STEP 7 - Micro/WIN le librerie delle operazioni per il protocollo Modbus RTU ed il protocollo USS?
Come si può realizzare una comunicazione MODBUS con S7-200?
Numero di ordinazione:

Istruzioni
Con l’aiuto del seguente esempio si può realizzare una semplice comunicazione MODBUS-Master-Slave tra due CPU S7-200.
L'esempio tratta il codice funzione 6 MODBUS (scrittura nel registro di hold slave) e può essere impiegato come base per la modifica a passi dei parametri per gli altri codici funzione supportati 1, 2, 3, 4, 5, 15 e 16.

Requisito
Per il funzionamento del protocollo MODBUS occorre procurarsi ed installare per prima la libreria dei comandi di STEP 7-Micro/WIN, poi STEP 7-Micro/WIN (nell’articolo con ID 17470979).
Il protocollo Modbus-Master viene supportato da STEP 7-Micro/WIN V4.0 Service Pack 5.

1. Struttura hardware
L'esempio è strutturato per una comunicazione MODBUS tra le porte 0 di due CPU S7-200- (preferibilmente ciascuna con due interfacce di comunicazione). Lato master sarebbe anche possibile la scelta della porta 1 con la corrispondente scelta di blocco di libreria "MBUS_CTRL_P1" e "MBUS_MSG_P1". Ciascuna porta è collegata con un PC opp. PG con il software Micro/WIN. La comunicazione tra le CPU tramite la porta 1 avviene con l'aiuto di un cavo PPI (collegamento seriale dei pin 2, 3, 7 e 8 -> vedi la Figura 01). Inoltre deve ancora essere garantito il collegamento della massa del sensore (M).


Figura 01

2. Coincidenza dei parametri
Per la comunicazione MODBUS lato master sono necessari i blocchi di libreria "MBUS_CTRL" e "MBUS_MSG", e sul lato slave i blocchi "MBUS_INIT" e "MBUS_SLAVE".
In Micro/WIN creare un nuovo progetto, uno per master opp. slave con le reti ed i parametri indicati nella Figura 02.
Occorre fare attenzione che i parametri "Baud" e "Parity" sono identici, così come l'indirizzo "Slave" del blocco "MBUS_MSG" coincide con "Addr" del blocco "MBUS_INIT" (vedi la Figura 02).
Le impostazioni dei baudrate per l'interfaccia Porta 0 nella vista Micro/WIN "Blocco dati di sistema" è irrilevante per il protocollo MODBUS ("Mode" = "1").


Figura 02

Le tabelle seguenti descrivono significato e possibilità di scelta per i parametri di blocco di libreria:

MASTER

MBUS_CTRL
 

Parametro

Significato

Possibilità di scelta

EN

Abilitazione

 

Mode

Presentazione del protocollo

0=PPI, 1=MODBUS

Baud

Velocità di trasferimento in kbit/s

1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200

Parity

Parità

0= nessuna, 1= dispari, 2= pari

Timeout

Massimo tempo per la risposta della slave in ms 

 

Done

Segnalazione di finito

 

Error

Codice di errore

1)

Tabella 01

1) vedi la guida STEP 7-Micro/WIN: "Codice di errore per l'esecuzione della Modbus-Master-Opration MBUS_MSG"

MBUS_MSG
 

Parametro

Significato

Possibilità di scelta

EN

Abilitazione

 

First

Attivazione

 

Slave

Indirizzo slave

 

RW

"lettura" opp. "scrittura"

0= lettura, 1= scrittura

Addr

Indirizzo di inizio MODBUS

0 .. 128 = uscite digitali A0.0 .. A15.7
 1001 .. 10128 = ingressi digitali I0.0 .. I15.7
 30001 .. 30092 = ingressi analogici AIW0 .. AIW62
 40001 .. 49999 = registro di hold2

Count

Numero di bit (0xxxx, 1xxxx) /parole (3xxxx, 4xxxx)

 

DataPtr

Pointer sull'inizio della memoria delle variabili

 

Done

Segnalazione di finito

 

Error

Codice di errore

1)

Tabella 02

1) vedi la guida STEP 7-Micro/WIN: "Codice di errore per l'operazione della Modbus-Master-Operation MBUS_MSG"

SLAVE

MBUS_INIT
 

Parametro

Significato

Possibilità di scelta

EN

Abilitazione

 

Mode

Presentazione del protocollo

0=PPI, 1=MODBUS

Addr

Indirizzo slave

 

Baud

Velocità di trasferimento in kbit/s

1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200

Parity

Parità

0=nessuna, 1=dispari, 2=pari

Delay

Allungamento del segnale in ms

 

MaxIQ

Numero degli ingressi e delle uscite digitali disponibili

2)

MaxAI

Numero delle parole di ingresso analogiche disponibili

2)

MaxHold

max. numero delle voci di registro di hold

2)

HoldStart

Pointer sull'inizio del registro di hold (40001)

 

Done

Segnalazione di finito

 

Error

Codice di errore

3)

Tabella 03

2) I massimi indirizzi real utilizzabili dipendono dal tipo di CPU utilizzata e dal suo valore max.
3) vedi la Guida STEP 7-Micro/WIN: "Codice di errore per l'esecuzione del protocollo Modbus-Slave"

MBUS_SLAVE
 

Parametro

Significato

Possibilità di scelta

EN

Abilitazione

 

Done

Segnalazione di finito

 

Error

Codice di errore

3)

Tabella 04

3) vedi la guida STEP 7-Micro/WIN: "Codice di errore per l'esecuzione del protocollo Modbus-Slave"

3. Indirizzamento della memoria per le librerie
Dopo aver terminato il progetto si deve ancora definire nel contenitore dei blocchi di programma Micro/WIN la memoria per la libreria. Nel riservare la memoria per la libreria fare attenzione che l'area scelta non si sovrapponga all'area di memoria delle variabili per i dati (nel master: "DataPtr" + "Count" e nello slave: "HoldStart" + "MaxHold")!


Figura 03

4. Trasferimento di valori del registro di hold
Dopo il caricamento dei progetti nella singola CPU, tramite l'attivazione dello stato tabella si può scrivere sull'area di memoria delle variabili del master selezionato e sorvegliarla sul lato slave.
Con l'attivazione dell'ingresso master I0.0 il contenuto della parola di variabile VW2 viene trasmesso alla CPU slave e qui scritto il valore di variabile VW2.

Questo trasferimento di valori del registro di hold viene ripartito nella Figura 04:
il pointer "DataPtr" rappresenta l'inizio dell'aria di memoria delle variabili da leggere.
Il parametro "Count" stabilisce nell'indirizzamento "Addr" = "4xxxx" (registro di hold) il numero delle parole da leggere.
L'area di memoria delle variabili deve essere scritta ("RW" = "1") all'indirizzo di start del registro di hold "Addr" = "40002".
Il registro di hold funziona a parole come salvaposto per l'area della memoria delle variabili slave:
il pointer "HoldStart" stabilisce l'indirizzo di inizio della memoria delle variabili equivalente all'indirizzo di start del registro del registro hold 40001.
Il pointer della memoria delle variabili slave può essere calcolato come segue:

2 * (Addr - 40001) + HoldStart = 2 * (40002 - 40001) + &VB0 = &VB2

Inoltre si deve ancora fare attenzione che il numero massimo di voci delle parole di registro di hold "MaxHold" copra anche quest'area:

MaxHold >= Addr - 40001 + Count = 40002 - 40001 + 1 = 2


Figura 04

Ulteriori informazioni sulla libreria STEP 7-Micro/WIN-MOBDUS si trovano nel manuale di sistema dell'S7-200 (nell’articolo con ID 1109582) e nella guida di STEP 7-Micro/WIN.

 Articolo con ID:27832511   Data:2008-05-30 
Questo articoloè stato utilenon è stato utile                                 
mySupport
My Documentation Manager 
Newsletter 
CAx-Download-Manager 
Support Request
Vai all'articolo
Stampa
Creazione PDF 
Invia l'articolo
QuickLinks
Strumento di compatibilità 
Argomenti
Aiuto
Aiuto on-line
Guided Tour