Configurazione & Programmazione
PLC Siemens S7-300 Master DP
Configurazione
Creare Oggetto
Profibus DP
Connettere l’
interfaccia DP alla
rete Profibus
Optional:
Aggiungere File GSD
Inserire Slaves
Assegnare Indirizzi
DP
Configurare la rete
Configurazione
Proprietà Rete Profibus:
 Indirizzo più alto
 Velocità (bit rate)
 Parametri del Bus
1008
515
 Definizione Gruppi di Slaves
(Servizi Freeze/Sync)
1008
515
11
11
240
515
31012
62.0
30
Configurazione
Configurazione Laboratorio Multi-Master:
DP Master PC Applicom #5
DP Master PLC Siemens #6
DP Slave RIO 16O #30
DP Slave RIO 16I #20
DP Slave PLC SAIA #10
PC controlla gli Slave 10 e 20
PLC Siemens controlla lo Slave 30
Programmazione della
Comunicazione
La programmazione della comunicazione
dipende dalla modalità di scambio
informativo tra Master e Slaves
Esistono differenti modalità in Profibus-DP
In dipendenza dalla presenza di I-Slaves
Programmazione della
Comunicazione
 In questa configurazione avviene lo scambio di dati tra il master DP e slave DP
semplici
 Il Master DP interroga in successione ogni Slave DP configurato nel Master e
trasmette i dati di uscita o riceve i valori di ingresso di ritorno (Data
Exchange).
 Il Master DP può sincronizzare gli Slave DP (se essi lo consentono) ed
accedere all’area I/Q
Programmazione della
Comunicazione
 I compiti di automazione possono essere scomposti in compiti parziali
eseguiti come "pre-elaborazione" su uno slave DP intelligente dotato di
CPU.
 Nelle configurazioni con slave DP intelligenti (I-slave) il master DP non
accede alle unità I/Q dello slave DP intelligente ma solo all'area degli
operandi della CPU dell' I-slave
Programmazione della
Comunicazione
 Comunicazione Diretta (DX): In questa configurazione i dati di slave
DP intelligenti possono essere letti direttamente dal master DP di un
altro sistema master DP della stessa sotto-rete PROFIBUS-DP fisica.
Programmazione della
Comunicazione
 Comunicazione Diretta (DX): Con questa configurazione possono
essere trasmessi molto rapidamente i dati di slave DP a slave DP
intelligenti sulla sotto-rete PROFIBUS-DP.
 Solo Slave DP intelligenti, come p.es. CPU 315- 2DP, possono
essere utilizzati come riceventi di questi dati.
Programmazione della
Comunicazione
 Uno slave DP intelligente, come p.es. una CPU 315-2DP
può far trasmettere i dati di slave DP "semplici" anche da
diversi sistemi master DP (sistema a più master)
direttamente alla sua area dati di ingresso.
Programmazione della
Comunicazione
Nel corso verrà presa in
esame solo la
comunicazione MasterSlaves non Intelligenti
Verrà illustrato:
Scambio Dati basato su Data Exchange
Scambio Dati basato su Sync/Freeze
Scambio Dati basato su Data
Exchange
Servizi di Comunicazione per Interfacce Profibus
DP interne della serie S7:
Lettura/Scrittura basata su accesso diretto I/O
Scambio Dati Consistente
Accesso Diretto I/O
 Lo scambio dati basato su accesso diretto I/O si realizza grazie al
meccanismo di aggiornamento delle immagini di processo
degli ingressi e delle uscite
 Si ha una corrispondenza di tale meccanismo con il servizio
Data Exchange.
 L’aggiornamento avviene ad ogni scansione ciclica
Area I/O
program
scan
Byte n
Interfaccia
DP Master
Byte n
DP Slave
Byte n
Token
Data Exchange
Accesso Diretto I/O
L’accesso agli ingressi e alle uscite di uno Slave DP si
basa sull’uso dei comandi di accesso diretto agli
ingressi e alle uscite.
 Esempio di Comandi di Accesso Diretto: Contatti o
Coil in Ladder
Si utilizzano gli indirizzi I/Q assegnati durante la
configurazione hardware degli Slaves DP
Accesso Diretto I/O
Esempio di Programmazione
I0.4 start
T_ON
T_ON
IN
T/2
Q
IN
T/2
Q0.0
Q
start
Scambio Dati Consistente
Lo scambio dati basato sui meccanismi di accesso diretto ha il
limite di essere legato alla scansione ciclica del PLC.
Alcune volte è richiesto uno scambio dati Master/Slave anche
nell’ambito della stessa scansione ciclica.
l'aggiornamento dei dati scambiati tra Master e Slave deve essere
sganciato dal meccanismo di aggiornamento dell'immagine di
processo:
 aggiornamento immediato a seguito di una operazione di
lettura o scrittura da/verso lo Slave DP.
In tal caso, sono necessarie particolari funzioni che garantiscano la
lettura e la scrittura dell'area I/O del DP Slave
Scambio Dati Consistente
Utilizzo di funzioni di libreria
DPWR_DAT (SFC 15) per scrivere bytes di
dati in modo consistente
DPRD_DAT (SFC 14) per leggere bytes di
dati in modo consistente
Scambio Dati Consistente
Master DP
Slave DP
Area Dati sulla CPU
SFC 15
Dati di Uscita
SFC 14
Dati di Ingresso
Area Dati sulla CPU
Area Dati sulla CPU
SFC 14
Dati di Ingresso
SFC 15
Dati di Uscita
Area Dati sulla CPU
 Come si vede si svincola lo scambio dati dalla scansione
ciclica
 Lo scambio dati dipende solo dall’arrivo del Token
Programmazione della
Comunicazione - SYNC
Master
Slaves Output
uscite
Sync
uscite
Le uscite vengono bufferizzate
uscite
Sync
uscite
uscite
Sync
UnSync
uscite
time
Aggiornamento uscite
ma non aggiornate
Aggiornamento ultime uscite ricevute dal Master
Le uscite vengono bufferizzate
ma non aggiornate
Aggiornamento ultime uscite ricevute dal Master
Aggiornamento uscite
Programmazione della
Comunicazione - SYNC
CALL SFC 11
Funzione DPSYC_FR
REQ
Se 1 si attiva la chiamata
:=M30.0
LADDR :=W#16#3FF
Indirizzo Fisico Interfaccia DP
GROUP :=B#16#2
Indirizzo Gruppo SYNC
MODE :=B#16#20
20=SYNC, 10=UNSYNC
RET_VAL:=MW14
Word error code
BUSY :=M30.1
Se 1 la chiamata non è stata
ancora terminata
Programmazione della
Comunicazione - SYNC
I 124.6
M 40.0
M 30.0
Ciclo di scansione OB1
Programmazione della
Comunicazione - SYNC
Programmazione della
Comunicazione - SYNC
Programmazione della
Comunicazione - Freeze
Master
Lettura ingressi
Slaves
Valore corrente degli ingressi
Freeze
Lettura ingressi
Aggiornamento valore
corrente degli ingressi
Valore congelato degli ingressi
Freeze
Lettura ingressi
Tempo
Gli ingressi cambiano ma non
vengono aggiornati dagli
Slaves
Aggiornamento valore
corrente degli ingressi
Valore congelato degli ingressi
UnFreeze
Programmazione della
Comunicazione - Freeze
CALL SFC 11
Funzione DPSYC_FR
REQ
Se 1 si attiva la chiamata
:=M30.0
LADDR :=W#16#3FF
Indirizzo Fisico Interfaccia DP
GROUP :=B#16#1
Indirizzo Gruppo Freeze
MODE :=B#16#8
8=Freeze, 4=UnFreeze
RET_VAL:=MW14
Word error code
BUSY :=M30.1
Se 1 la chiamata non è stata
ancora terminata
Programmazione della
Comunicazione - Freeze
Scarica

Programmazione Profibus