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 Definizione Gruppi di Slaves (Servizi Freeze/Sync) 1008 1008 515 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 Master-Slaves 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 program scan Token Data Exchange 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 Byte n Interfaccia DP Master DP Slave Area I/O program scan 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
Esempio di Programmazione Accesso Diretto I/O Esempio di Programmazione IN T/2 Q T_ON start Q0.0 I0.4
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 Area Dati sulla CPU SFC 15 Dati di Uscita SFC 14 Dati di Ingresso Master DP Slave DP Come si vede si svincola lo scambio dati dalla scansione ciclica Lo scambio dati dipende solo dall’arrivo del Token
Programmazione della Comunicazione - SYNC Slaves Output Aggiornamento uscite Aggiornamento ultime uscite ricevute dal Master Le uscite vengono bufferizzate ma non aggiornate Master uscite Sync UnSync time
Programmazione della Comunicazione - SYNC CALL SFC 11 Funzione DPSYC_FR REQ :=M30.0 Se 1 si attiva la chiamata 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 Ciclo di scansione OB1
Programmazione della Comunicazione - SYNC
Programmazione della Comunicazione - SYNC
Programmazione della Comunicazione - Freeze Tempo Master Slaves Lettura ingressi Valore corrente degli ingressi Freeze UnFreeze Aggiornamento valore corrente degli ingressi Valore congelato degli ingressi Gli ingressi cambiano ma non vengono aggiornati dagli Slaves
Programmazione della Comunicazione - Freeze CALL SFC 11 Funzione DPSYC_FR REQ :=M30.0 Se 1 si attiva la chiamata 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