DOMANDA:
I valori non vengono trasmessi o vengono trasmessi solo in parte. Come si può eliminare il problema?
RISPOSTA:
Se i valori analogici non vengono trasferiti oppure vengono trasferiti solo in parte, oppure i dati trasmessi sono sbagliati, allora questo può essere legato alla lunghezza dei dati consistenti dello slave (riguarda le CU S7-300/400).
Se su tutta la lunghezza sono consistenti più di 4 byte (oppure 3 byte), allora si deve accedere ai valori analogici dello slave con gli SFC 14 "DPRD_DAT" e 15 "DPWR_DAT". La descrizione degli SFC si trova nel manuale "Software di sistema per S7-300/400 Funzioni standard e di sistema". L'informazione sulla lunghezza dei dati consistenti dello slave PROFIBUS DP si ottiene nella HW Config.
Modo di procedere:
Selezionare in HW Config lo slave PROFIBUS DP.
Fare doppio clic sull'unità di cui si vuole conoscere quali campi dati consistenti abbia. Nel registro "Indirizzo/Codice" della finestra "Proprietà slave DP" si viene a conoscere quanto sono lunghi i dati consistenti.
Quali articoli trattano dei dati consistenti in relazione alla periferia decentrata?
Dati consistenti, panoramica ed applicazioni nella periferia decentrata. Nella seguente descrizione si trova un riepilogo relativo al trattamento dei dati consistenti sotto STEP 7.
Descrizione
Un accesso a dati consistenti > 4 byte è adesso possibile anche senza le funzioni di sistema SFC14/15. Questa possibilità di poter accedere a dati > 4 byte tramite comandi di caricamento/trasferimento offre una possibilità di accesso particolarmente confortevole e con grande performance (carico limitato della runtime).
Il campo dati di uno slave DP opp. IO-Device, che deve essere trasferito in modo consistente, viene trasferito ad una immagine di processo opp. a una parte dell'immagine stessa. Le informazioni in questo campo sono sempre consistenti. Si può poi, tramite comandi di caricamento/trasferimento (p. es. L PEW 1), accedere all'immagine di processo o a parte dell'immagine stessa. Una limitazione di campo dell'indirizzamento non esiste.
L'aggiornamento dell'immagine di processo viene pilotato autonomamente dal sistema operativo.
L'aggiornamento dell'immagine di processo parziale avviene o lato utente con l'aiuto di SFC opp. lato sistema in modo automatico con l'accoppiamento ad un OB.
In caso di un accesso diretto (p. es. L PEW opp. T PAW) non ha luogo alcun errore di accesso alla periferia.
Avvertenza Se la CPU in uso supporta immagine di processo parziale è rilevabile nei dati tecnici.
Panoramica
Per la progettazione senza "SFC 14/15" si possono utilizzare le seguenti CPU.
Listino N.
S7-CPU
dalla versione firmware
6ES7 31..
CPU 31x
2.5
6ES7 41..
CPU 41x
3.0
Limiti
Trasferimento di dati utili consistenti su uno slave DP
Per il trasferimento dei dati utili consistenti ad uno slave DP, la norma PROFIBUS DP pone dei limiti superiori. Di conseguenza in uno slave DP normalizzato possono essere trasferiti in un blocco max. 64 parole = 128 byte di dati utili consistenti.
Nella progettazione si definisce quanto grande è il campo consistente. Qui si può impostare in un formato di codice speciale una lunghezza massima dei dati consistenti di 64 parole = 128 byte (128 byte per ingressi e 128 byte per uscite): una lunghezza maggiore non è possibile.
Questo limite superiore vale per i puri dati utili. Dati di diagnostica e di parametri vengono raccolti in record di dati interi e quindi sono di principio trasferiti in modo consistente.
Nel codice di contrassegno generale (AKF) è impostabile una lunghezza massima dei dati consistenti di 16 parole = 32 byte (32 byte per ingressi e 32 byte per uscite): una lunghezza maggiore non è possibile.
In questo contesto tenere conto anche che una CPU 41x come slave DP su un master di terzi (collegamento tramite GSD) deve essere configurabile con il codice di contrassegno generale. Per questo motivo la memoria di trasferimento per ogni slot virtuale di una CPU 41x come slave DP su PROFIBUS DP è grande max. 16 parole = 32 byte. In totale sono progettabili 32 di tali slot virtuali nello i-Slave, il N. di slot più elevato è 35.
Trasferimento di dati utili consistenti su un IO-Device
Per il trasferimento di dati utili consistenti su un IO-Device vale il limite superiore di 255 byte (254 byte dati utili + 1 byte come valore accompagnatorio). Anche se si possono trasferire più di 255 byte su un IO-Device, si possono trasferire in modo consistente max. 255 byte.
Importante
Non utilizzare contemporaneamente le funzioni di sistema e l'immagine di processo. La consistenza tra i valori dell'immagine di processo ed i valori della funzione di sistema SFC14 non è garantita, poiché nella lettura l'immagine di processo con la funzione di sistema SFC14 non viene copiata. Di principio è vero che nella scrittura con la funzione di sistema SFC15 viene copiata anche l'immagine di processo, ma questo non avviene nella lettura. Questo significa che la consistenza tra i valori dell'immagine di processo ed i valori della funzione di sistema SFC14 non è garantita.
Esempio Il seguente esempio (per l'immagine di processo parziale 3 "TPA 3" di una CPU S7-400) mostra una possibile progettazione nella HW Config.
Requisito: l'immagine di processo parziale è stata precedentemente aggiornata tramite SFC 26/27 opp. l'aggiornamento dell'immagine di processo è stato collegata ad un OB.
TPA 3 su uscita: questi 50 byte si trovano in modo consistente nell'immagine di processo parziale 3 e possono quindi essere letti tramite il normale comando "Carica Ingresso xy".
"---" sotto ingresso significa: nessun deposito in una immagine di processo. È possibile solo l'handling con la funzione di sistema SFC14/15.
Ricerca Progettazione hardware, consistenza, aggiornamento
Perché lo SFC 13 non viene elaborato correttamente nella nuova CPU 315-2DP (N. di ordinazione: 6ES7 315-2AG10-0AB0)?
Descrizione:
Se finora si è impiegata una vecchia CPU 315-2DP ed ora si è passati alla nuova CPU 315-2DP (6ES7 315-2AG10-0AB0), allora tenere conto del seguente comportamento al richiamo dello SFC13.
Alcuni SFC che lavoravano in modo asincrono sulle vecchie CPU venivano elaborati già subito dopo il primo richiamo ("quasi sincroni").
Sulle nuove CPU questi SFC girano in modo asincrono. L'elaborazione asincrona può estendersi a più cicli OB 1. Di conseguenza un loop di attesa all'interno di un OB in determinate circostanze può portare ad un superamento del tempo di ciclo.
Sulle vecchie CPU al richiamo in OB 82 SFC 13 lavora sempre "quasi sincrono", sulle nuove CPU al contrario SFC 13 lavora generalmente in modo asincrono.
Nel programma applicativo dovrebbe avvenire quindi solo l'avvio del job in OB 82. L'analisi dei dati tenendo conto dei bit BUSY e della risposta in RET_VAL dovrebbe avvenire nel programma ciclico.
Consiglio Se si impiegano le nuove CPU 315-2DP (N. di ordinazione: 6ES7 315-2AG10-0AB0), si raccomanda al posto dello SFC 13 "DPNRM_DG" l'utilizzo dello SFB 54 "RALRM". Un esempio dettagliato per l'impiego dell'SFB 54 si trova nell'articolo con ID: 21445066
Avvertenza
Ulteriori informazioni si trovano nel manuale "SIMATIC CPU 31xC e CPU 31x, Dati tecnici" nel capitolo A.1 nell'articolo con ID 12996906.
Come si riceve un allarme con lo SFB 54 "RALRM" secondo DPV1?
Istruzioni
Il seguente esempio mostra come si riceve e si analizza un allarme con l'SFB 54 "RALRM", allarme che è stato inviato da un apparecchio di periferia decentrata. Esso contiene i punti più importanti per la parametrizzazione dell'unità, la programmazione e l'analisi dei dati ricevuti.
Nell'esempio è stata utilizzata come master DPV1 una CPU S7 315-2DP (Listino N. 6ES7 315-2AG10-0AB0), che gestisce un ET200M con IM 153-2 HighFeature (Listino N. 6ES7 153-2BA00-0XB0) come interfaccia PROFIBUS decentrata. Sulla unità di I/O analogici (AI 2x12 bit) viene interrotta la tensione di alimentazione così che dallo slave DP viene inviato un allarme al master DP.
Per poter ricevere un allarme con l'SFB 54 "RALRM", i componenti coinvolti devono supportare la norma DPV1. Questo significa che sia il master che anche lo slave utilizzato devono supportare tassativamente la norma DPV1 e quindi lo Alarm handling.
Dopo aver creato la HW Config, occorre abilitare lo Alarm handling. Affinché un ET200M possa generare un allarme di diagnostica, questo dev'essere abilitato nei parametri del modulo. Di default gli allarmi di diagnostica sono disattivati.
Figura 01
Richiamare poi direttamente l'SFB 54 nel corrispondente OB di allarme. Nell'esempio esso viene richiamato direttamente nell'OB degli allarmi di diagnostica OB (OB 82). Se l'SFB 54 viene richiamato in più OB di allarme, allora è necessario richiamarlo con diversi DB di istanza, per garantire una esecuzione senza errore del blocco.
Figura 02
Il contenuto per il parametro F_ID sull'SFB 54 si trova nella HW Config (vedi Figura T1-03). Qui serve l'indirizzo di periferia dell'unità dalla quale si devono ricevere gli allarmi. Fare attenzione che il valore decimale della HW Config deve essere convertito in formato esadecimale per l'SFB 54. Se si utilizza, così come nell'esempio, la modalità 1, il parametro F_ID è irrilevante.
Figura 03
Dopo che nel progetto è stato generato un allarme di diagnostica, l'SFB 54 riempie i due campi dati indicati da un lato con le informazioni di gestione (DB1) e dall'altro con tutte le informazioni di allarme ricevute (DB2 - vedi Figura 04).
Figura 04
Le informazioni di diagnostica possono essere analizzate nel modo seguente.
I primi 3 byte Standard Alarm Information vengono analizzati con la Guida in linea dell'SFB 54.
Le informazioni addizionali di allarme (a partire dal byte 4) possono essere analizzate con l'aiuto del manuale del singolo sistema decentrato. In esso si trova, nel capitolo Diagnostica, una sezione sull'argomento Allarmi.
Avvertenza
Se si utilizza l'SFB 54 su uno slave DPV0, nelle informazioni di allarme si ottiene il contenuto completo del telegramma di diagnostica dallo slave. Questo è descritto in un modo ancora più preciso nella Guida in linea dello STEP 7 (voce di ricerca "SFB 54").
DOMANDA
Come si può, con l'impiego della funzione di sistema SFC12
"D_ACT_DP", ottenere una panoramica di tutti gli slave DP attivati
opp. disattivati?
RISPOSTA Con la funzione di sistema SFC12 "D_ACT_DP"
c'è la possibilità, con l'indicazione di un indirizzo logico sul
parametro "LADDR" ed il codice di job 0 sul parametro "MODE". di
rilevare lo stato di uno slave DP. Per sorvegliare tutti gli slave
DP del sistema master si dovrebbe eseguire questa opzione di
sistema per ogni slave DP.
Per questo compito è meglio utilizzare la funzione di sistema
SFC51 "RDSYSST". Con questa funzione di sistema si può rilevare lo
stato di tutti gli slave in un sistema master DP utilizzando un
singolo richiamo. La necessaria limitazione dei parametri dello
SFC51 si trova nella tabella seguente.
Tipo I/O
Parametro
Valore
Tipo
Significato
I
REQ
True
BOOL
Avvio dell'elaborazione con TRUE
I
SZL_ID
W#16#0692
WORD
Stato OK di tutti gli slave DP
I
INDEX
B#16#1
WORD
Numero del sistema master, p. es.
1
O
RET_VAL
INT
Valore di ritorno
O
BUSY
BOOL
L'elaborazione è ancora attiva
O
SZL_HEADER
STRUCT
O
DR
ANY
Campo di destinazione per i dati
rilevati
Tabella 1 Alimentazione dei parametri della funzione di sistema
SFC51
Note sui parametri di Tabella 1
REQ
La funzione di sistema SFC51 è una funzione con esecuzione
asincrona. Questo significa che la durata del elaborazione può
estendersi anche a più cicli. Perciò prima di un nuovo richiamo
della funzione, analizzare il parametro BUSY. Solo se questo non è
più impostato, si può avviare un nuovo job.
SZL_ID
Il valore indicato nella Tabella 1 vale solo per sistemi master su
interface DP integrate. Per interfacce DP esterne (p. es. CP443-5
Ext.) si deve utilizzare il valore W#16#4692.
INDEX
Il valore per questo parametro si ottiene dalla HW Config
(PROFIBUS(x); sistema master DP(1)).
SZL_HEADER
Questo parametro non è necessario, si deve però in ogni caso
dichiararlo. La variabile STRUCT da trasferire a questo parametro è
costituita da due variabili WORD.
DR
Su questo parametro indicare la variabile per i dati rilevati. In
questo caso applicativo la variabile deve essere un ARRAY OF BYTE
[1...16]. Per ogni slave DP in questo ARRAY è riservato un bit (16
x 8 = 128). Lo stato dello slave DP con l'indirizzo si trova nel
bit 0 del primo byte. Se questo bit è impostato, allora questo
slave DP è in anomalia opp. disattivato.
Avvertenza
Informazioni dettagliate sulla funzione di sistema SFC51 si trovano
nella Guida ONLINE STEP 7 opp. sotto Start > SIMATIC >
DOCUMENTAZIONE nel manuale "SIMATIC Software di sistema per
S7-300/400 Funzioni standard e di sistema". Il manuale è
disponibile nell'articolo con ID 1214574.
È possibile utilizzare contemporaneamente la funzione "Segnalazione di errore di sistema", il blocco funzionale FB 126 e la funzione di sistema SFC 13 "DPNRM_DG"?
La funzione "Segnalazione di errore di sistema" e il blocco funzionale FB126 "PNIODiag" utilizzano la funzione di sistema SFC 13 "DPNRM_DG" per il rilevamento dei dati di diagnostica specifici slave.
La funzione di sistema SFC 13 lavora in modo asincrono, cioè l'elaborazione della funzione può estendersi a diversi richiami SFC e quindi eventualmente su alcuni cicli di CPU. Questo ha come conseguenza che per ogni CPU possono essere attivi contemporaneamente diversi job di SFC 13. Il numero dei richiami attivi contemporaneamente presenti per SFC 13 non può però superare un determinato limite specifico della CPU. I job che possono essere attivi contemporaneamente sono indicati nella tabella seguente.
CPU
Numero di richiami
S7-300
4
S7-318
8
S7-400
8
Tabella 01: numero dei richiami di SFC 13 contemporaneamente attivi
Si possono quindi utilizzare contemporaneamente le funzioni sopra indicate. Si deve però garantire che il numero massimo di richiami di SFC 13 contemporaneamente attivi indicato nella tabella 01 non venga superato.
Il download dell'FB126 "PNIODiag" è disponibile nell'articolo con ID: 26996747.
Avvertenza
Ulteriori informazioni sulla funzione di sistema SFC 13 "DPNRM_DG" si trovano nel manuale "SIMATIC Software di sistema per S7-300/400 Funzioni standard e di sistema Volume 1 e Volume 2" nell'articolo con ID: 44240604 e nella Guida in linea di STEP 7.
Avvertenze sull'uso della funzione di sistema SFC12 "D_ACT_DP"
DOMANDA
Quante volte è possibile richiamare contemporaneamente la funzione
di sistema SFC12 "D_ACT_DP"?
RISPOSTA La SFC12 "D_ACT_DP" lavora in modo asincrono, cioè
questa funzione di sistema elabora un ordine in più cicli. Per fare
in modo che l'elaborazione avvenga quando richiesto, bisogna
impostare il parametro "REQ" per tutto il tempo in cui l'ordine è
in elaborazione. In altre parole, bisogna fare in modo che il
parametro "REQ" rimanga su "TRUE" fino a quando il parametro "BUSY"
non assuma nuovamente il valore "FALSE".
Con le CPU dell'S7-300 che hanno l'interfaccia DP integrata, la
SFC12 può essere richiamata quattro volte contemporaneamente.
Con le CPU dell'S7-400, la SFC12 può essere richiamata
quattro volte contemporaneamente per ogni ramo DP (interno e
esterno).
Avvertenza Utilizzando il CP342-5 come DP-Master, la
SFC12 non può essere usata per l'attivazione/disattivazione dei
DP-Slave.
L'attivazione di un DP-Slave può durare anche a lungo. Nel caso
in cui si desidera interrompere un ordine di attivazione in corso,
occorre avviare la funzione di sistema con lo stesso valore per
LADDR e MODE = 2. Ripetere il richiamo con MODE = 2 fino a quando
l'interruzione dell'ordine di attivazione non venga evidenziata con
il RET_VAL = 0. Questo procedimento è possibile solo con le CPU
della serie S7-300. Con le CPU dell'S7-400 non è possibile
interrompere l'ordine.
Avvertenza
Maggiori informazioni sull'SFC12 si trovano sia nel manuale
"SIMATIC Software di sistema per l'S7-300/400 Sistema e funzioni
standard" nell'articolo con ID: 1214574", che nell'Help ON LINE
dello STEP 7 (evidenziare blocco SFC nel contenitore dei blocchi e
premere il tasto F1).
Descrizione La dimensione del campo dati che non può
essere modificata contemporaneamente da processi concorrenti viene
definita campo dati consistente. Un campo dati che è maggiore del
campo dati consistenti può quindi nella sua globalità essere
alterato.
Si vuole definire il valor medio di una serie di numeri. Per
questo esempio si assumono le seguenti condizioni al contorno.
All'inizio del calcolo gli elementi della serie numerica devono
essere rilevati.
I dati sorgente vengono posti a disposizione in un buffer e
devono essere posizionati in un secondo buffer.
Il trasferimento dei dati sorgente tra i buffer avviene in modo
seriale ed impegna un tempo di durata variabile.
Se si esegue il calcolo in un ciclo costante, allora non tutti
gli elementi contengono il valore più attuale e si ottiene un
valore medio errato. Se la serie numerica nel suo insieme viene
considerata come una unità opp. una struttura unica, allora il
calcolo avviene sempre quando tutti gli elementi della serie
numerica hanno un valore valido. È poi irrilevante in quale
sequenza avviene il rilevamento degli elementi opp. quanto tempo
risulta necessario. Questa serie numerica è quindi consistente.
Come si possono leggere i dati da un normslave DP e scriverli in modo consistente su un normslave DP?
Istruzioni
Con l'SFC 14 "DPRD_DAT" (read consistent data of a DP-normslave) si leggono in modo consistente i dati di un normslave DP. Se durante il trasferimento dati non è comparso alcun errore, i dati letti vengono registrati nel campo di destinazione aperto tramite RECORD. Il campo di destinazione deve presentare la stessa lunghezza che è stata progettata con STEP7 per l'unità selezionata. Con ogni richiamo dell'SFC 14 si può accedere ai dati di una unità/codice DP con l'indirizzo di inizio progettato.
Con l'SFC 15 "DPWR_DAT" (write consistent data to a DP-normslave) si trasferiscono i dati con la consistenza di RECORD al normslave DP indirizzato. Il campo di destinazione deve avere la stessa lunghezza che è stata progettata con STEP7 per l'unità selezionata.
Massimo limite superiore per il trasferimento di dati utili consistenti su uno slave DP.
Per il trasferimento di dati utili consistenti ad uno slave DP la norma PROFIBUS DP definisce i limiti superiori. Perciò in un DP normslave si possono trasferire in un blocco max. 64 parole = 128 byte di dati utili consistenti.
Nella progettazione definire quanto grande è il campo consistente. Per questo nel formato di codice speciale (SKF) si può impostare una lunghezza massima dei dati consistenti di 64 parole = 128 byte (128 byte per gli ingressi e 128 byte per le uscite): una lunghezza maggiore non è possibile.
Essa è valida solo per i puri dati utili. I dati di diagnostica e parametrizzazione vengono raccolti in interi record di dati e quindi di principio sono trasferiti in modo consistente.
Nel formato di codice generale (AKF) si può impostare una lunghezza massima dei dati consistenti di 16 parole = 32 byte (32 byte per gli ingressi e 32 byte per le uscite): una lunghezza maggiore non è possibile.
In questo contesto fare attenzione anche che una CPU 41x / 31x come slave DP nel contesto generale su un master di terzi (collegamento tramite GSD) deve essere configurabile nel formato di codice generale. Per questo motivo la memoria di trasferimento di una CPU 41x / 31x come slave DP su PROFIBUS DP ha la dimensione max. 16 parole = 32 byte.
Limiti superiori massimi per il trasferimento di dati utili consistenti ad IO-Device Per il trasferimento di dati utili consistenti ad IO-Device vale il limite superiore di 255 byte (254 byte di dati utili + 1 byte di valore accompagnatorio). Anche se ad un IO-Device possono essere trasferiti anche più di 255 byte, sussiste il limite superiore a 255 byte di dati utili consistenti.
Per i processori di comunicazione elencati valgono invece i seguenti limiti superiori.
CP
N. di listino
Limiti superiori
CP 343-1
6GK7343-1EX21-0XE0
128 byte
CP 343-1
6GK7343-1EX30-0XE0
240 byte
CP 343-1 Advanced
6GK7343-1GX21-0XE0
128 byte
CP 443-1
6GK7443-1EX20-0XE0
240 byte
CP 443-1 Advanced
6GK7443-1EX40-0XE0
128 byte
CP 443-1 Advanced
6GK7443-1EX41-0XE0
240 byte
Tabella 1: Limiti superiori
Avvertenze
La norma PROFIBUS DP definisce i limiti superiori per il trasferimento di dati utili. I normslave DP rispettano questi limiti superiori. Con le CPU più vecchie (<1999) c'erano limitazioni specifiche per ogni CPU relativamente al trasferimento di dati utili consistenti.
Con queste CPU la lunghezza massima dei dati che la CPU può leggere in modo consistente da un normslave DP opp. scrivere in modo consistente su un normslave DP è indicata nei dati tecnici sotto la voce "DP-Master – Dati utili per slave DP". CPU più recenti superano con questo valore la lunghezza dei dati che un normslave DP rende disponibili opp. riceve.
Importante
La lettura e scrittura decentrata di dati consistenti (< 4 byte) è possibile anche senza le funzioni di sistema SFC14 e SFC15. Quali sono le unità che possono essere utilizzate per questo scopo è descritto nell’articolo con ID 8751062.
La tabella seguente descrive gli accessi a dati consistenti con l'esclusione dell'immagine di processo e delle CPU più vecchie
Lunghezza campo dati
Accesso di lettura/scrittura
Consistenza dei dati
1 byte
Caricamento/Trasferimento
Consistenza su unità
2 byte
Caricamento parola/Trasferimento parola
Consistenza su intera lunghezza
3 byte
SFC14 / SFC15
Consistenza su intera lunghezza
4 byte
Caricamento doppia parola / trasferimento doppia parola
Consistenza su intera lunghezza
5 byte
SFC14 / SFC15
Consistenza su intera lunghezza
Tabella 2 Campi dati e accesso al programma
Esempio
Nel registro "Indirizzi" degli slave DP nella Configurazione hardware con queste unità si può definire il campo di consistenza tramite i campi "Lunghezza","Unità" e "Consistenza su". Nel campo "Immagine di processo parziale" si può associare ai dati una immagine di processo parziale (p. es. TPA3).
Figura 1 Proprietà slave DP - Scelta del TPA3 (Immagine di processo parziale 3)
Il sistema operativo trasferisce questi dati in modo consistente al momento dell'aggiornamento dell'immagine di processo. Con comandi di caricamento e trasferimento si può poi accedere a questi dati nell'immagine di processo. In alternativa a questo l'aggiornamento delle immagini processo SFC 26 "UPDAT_PI" opp. SFC 27 "UPDAT_PO" può avvenire in qualsiasi punto del programma, però questo TPA non può essere aggiornato dal sistema. Se i dati non possono essere depositati in una immagine di processo, allora utilizzare gli SFC14 e SFC15 per lo scambio dati.
Ulteriori informazioni sull'argomento si trovano negli articoli:
"Dati consistenti nell'S7-400, riepilogo dei meccanismi" - nell’/ articolo con ID11646774
"Utilizzo delle immagini di processo parziali negli occhi organizzativi" - nell’articolo con ID 18325216
DOMANDA
È possibile disattivare uno slave DP durante l'avviamento della CPU?
RISPOSTA
No, non è possibile disattivare uno slave DP durante l'avviamento della CPU, poiché non è consentito richiamare lo SFC 12 negli OB di avviamento di una CPU S7 (con S7-300 OB100 e con S7-400 OB100, 101, 102).
C'è però la possibilità di disattivare uno slave DP direttamente dopo l'avviamento della CPU con lo SFC 12 "D_ACT_DP", cioè il job di disattivazione viene avviato nel primo ciclo OB 1.
Nell'operazione di disattivazione è irrilevante se lo slave DP durante il job è collegato a PROFIBUS opp. esso non si trova sul bus.
Ulteriori informazioni sullo SFC 12 si trovano nella Guida in linea dello STEP7 opp. nel manuale "Software di sistema per S7-300/400 Funzioni standard e di sistema" nell'articolo con ID 1214574. Un esempio applicativo completo per l'impiego dello SFC12 "D_ACT_DP" è disponibile nell'articolo con ID 5608020.
Il seguente download contiene un blocco che, con un richiamo, può disattivare opp. attivare più slave DP. Si può così ad esempio all'inizio della elaborazione ciclica disattivare una serie di slave DP. Questo blocco si basa sullo SFC12.
Copiare il file FB12_D_ACT_DYN.exe in una directory separata ed avviare il file con un doppio clic. La libreria realizzata con STEP 7 V5.3 SP1 viene così scompattata con tutte le subdirectory corrispondenti. Poi si può aprire la libreria scompattata con l'uso di SIMATIC Manager ed impiegare i blocchi in essa contenuti.
Informazioni di diagnostica dell'FB125 con slave DP disattivato
DOMANDA
Quali informazioni vengono fornite dallo FB 125 quando uno slave DP
è stato disattivato tramite SFC 12?
RISPOSTA
Si utilizza FB125 come confortevole possibilità di diagnostica per
sorvegliare PROFIBUS DP - vedi l'articolo con ID 387257.
Poi tramite SFC 12 si disattiva uno slave DP progettato.
Poiché lo FB125 verifica l'effettiva presenza su PROFIBUS DP
degli slave DP sottoposti a polling, esso segnala ora lo slave DP
come stazione in anomalia.
Se si vuole leggere lo stato di attivazione delle stazioni di un
sistema master DP, sulla interfaccia DP integrata tramite SFC 51 si
può analizzare la lista di stato di sistema con SZL-ID
W#16#0192.
Con una interfaccia DP esterna tramite SFC 12 si legge lo stato di
attivazione dei singoli slave DP.
Ulteriori informazioni sull'impiego di SFC 12 opp. SFC 51 si
trovano nel manuale " Software di sistema per S7-300/400 Funzioni
standard e di sistema" nell'articolo con ID 1214574 opp. nella
Guida in linea di STEP 7.
Attivazione con SFC 12 "D_ACT_DP" di uno slave DP disattivato
DOMANDA
Che cosa succede se si attiva tramite SFC 12 uno slave DP già
disattivato che risulta fisicamente separato dal bus DP?
RISPOSTA
Se si cerca di attivare con SFC 12 "D_ACT_DP" uno slave disattivato
che è fisicamente separato dal bus DP, lo SFC 12 per ca. 1 minuto
fornisce il codice di errore W#16#7002 con bit BUSY = 1, per
segnalare che il job attivato è ancora in elaborazione. Dopo ca. 1
minuto RET_VAL fornisce per la lunghezza di un ciclo CPU il valore
W#16#80A2. Questo significa che la slave DP chiamato non fornisce
alcuna risposta. Dopo questa procedura lo slave DP rimane
disattivato. Il LED BF del master corrispondente durante questa
procedura resta spento.
Avvertenza
Se lo slave DP in un momento successivo è nuovamente collegato al
bus DP e deve essere attivato, occorre avviare nuovamente lo SFC
12.
Ulteriori informazioni sul comportamento dello SFC 12 si trovano
nella Guida in linea dello STEP7 opp. nel manuale "Software di
sistema per S7-300/400 Funzioni standard e di sistema"
nell'articolo con ID 1214574.
Parametrizzazione di SFC 103 / SFC 59 per il rilevamento e la lettura dei dati di topologia
DOMANDA
Di quali parametri si devono dotare le funzioni di sistema SFC103
"DP_TOPOL" e SFC59 "RD_REC" affinché esse possano rilevare e
leggere i dati di topologia di un repeater di diagnostica (DR)?
RISPOSTA Con la funzione di sistema SFC103 "DP_TOPOL"
viene avviato il rilevamento della topologia del sistema master DP
selezionato. Per poter utilizzare questa funzione di sistema, la
CPU deve soddisfare determinati requisiti. Quali sono questi è
descritto in dettaglio nell'articolo con ID 17452619.
Con un richiamo di SFC103 vengono chiamati tutti i repeater di
diagnostica presenti su un sistema master DP.
Parametro
Significato
Tipo dati
I/O
REQ
Avvio del rilevamento della topologia
BOOL
I
R
Interruzione del rilevamento della
topologia
BOOL
I
DP_ID
ID del sistema master DP la cui topologia deve
essere rilevata (vedi Figura 1)
INT
I
RET_VAL
Valore di ritorno dello stato del job
INT
O
BUSY
Rilevamento della topologia non ancora
concluso
BOOL
O
DPR
Indirizzo PROFIBUS del repeater di diagnostica
che segnala errore
BYTE
O
DPRI
Segmento di misura del repeater di diagnostica
che segnala errore
BYTE
O
Tabella 1 Parametri dello SFC103 "DP_TOPOL" - Richiamo del
rilevamento della topologia
Con il richiamo di SFC59 "RD_REC" vengono letti i dati
memorizzati in un repeater di diagnostica. Il volume di dati che
possono essere letti con un richiamo di SFC59, è limitato a 240
byte. Il repeater di diagnostica rende disponibili solo per la
topologia 675 byte. I dati per la topologia del repeater di
diagnostica vengono memorizzati in 4 record di dati diversi,
ciascuno dei quali ha la dimensione di 170 opp. 165 byte. In questo
modo con un quadruplice richiamo dello SFC 59 si possono leggere
tutti i dati di topologia di un repeater di diagnostica.
Parametro
Significato
Tipo dati
I/O
REQ
Richiesta di lettura di un record di
dati
BOOL
I
IOID
Codice del campo di indirizzi - il DR viene
parametrizzato come ingresso di periferia (PE) (B#16#54)
BYTE
I
LADDR
Indirizzo logico dell'unità - con il DR
occorre utilizzare l'indirizzo di diagnostica (vedi Figura
1)
WORD
I
RECNUM
Numero di record di dati (valori ammessi per
il rilevamento dei dati di topologia 32h...35h per i record di dati
50...53)
BYTE
I
RET_VAL
Se durante l'elaborazione della funzione
compare un errore, il valore di ritorno contiene un codice di
errore. Inoltre: lunghezza in byte del record di dati
effettivamente trasferito (valori possibili: 165 opp. 170), se il
campo destinazione è maggiore del record di dati trasferito e nel
trasferimento non è comparso alcun errore.
INT
O
BUSY
L'operazione di lettura non è ancora
terminata
BOOL
O
RECORD
Campo di destinazione per il record di dati
letto
BYTE
O
Tabella 2 Parametri dello SFC59 "RD_REC" - Lettura di record di
dati
Raccomandazione per la programmazione
La struttura dei quattro record di dati per la tabella della
topologia è identica. Se si crea un UDT, nel quale la struttura
viene definita una volta, allora questo UDT può essere utilizzato
più volte per definire la struttura dei blocchi dati richiesti. Si
risparmia così di dover creare nuovamente la struttura per ogni
blocco dati. In caso di eventuali modifiche occorre poi modificare
solo lo UDT.
Avvertenza
Ulteriori informazioni su questo argomento si trovano nella Guida
in linea STEP7 opp. nel capitolo 13.7 "Rilevamento della topologia
di bus in un sistema master DP con l'SFC 103 DP_TOPOL" del manuale
"SIMATIC Software di sistema per S7-300/S7-400 Funzioni standard e
di sistema". Il manuale è disponibile nell'articolo con ID
1214574.
A quali requisiti occorre fare attenzione quando si vuole utilizzare la funzione "Preparazione della diagnostica dei cavi"?
Avvertenze di configurazione
Nel seguito si trovano i requisiti per la funzione STEP7 "Preparazione della diagnostica dei cavi" opp. l'impiego della funzione di sistema SFC103 "DP_TOPOL".
Avvertenza
Con la funzione di sistema SFC103 "DP_TOPOL" è possibile avviare la funzione "Preparazione della diagnostica dei cavi" dall'interno di un programma STEP7. Un esempio di programma si trova nel manuale "SIMATIC Repeater di diagnostica per PROFIBUS DP" nell'articolo con ID !7915183!.
Requisiti di sistema S7
Le seguenti CPU S7-300 supportano la funzione di sistema SFC 103.
CPU
Numeri di ordinazione
313C-2 DP*
6ES7313-6CF03-0AB0
314C-2 DP*
6ES7314-6CG03-0AB0
315-2 DP*
6ES7315-2AG10-0AB0
315-2 PN/DP*
6ES7315-2EH13-0AB0
315F-2 DP*
6ES7315-6FF01-0AB0
315F-2 PN/DP*
6ES7315-2FH13-0AB0
315T-2 DP*
6ES7315-6TH13-0AB0
317-2 DP*
6ES7317-2AJ10-0AB0
317-2 PN/DP*
6ES7317-2EK13-0AB0
317F-2 DP*
6ES7317-6FF03-0AB0
317F-2 PN/DP*
6ES7317-2FK13-0AB0
317T-2 DP*
6ES7317-6TK13-0AB0
CPU 319-3 PN/DP
6ES7318-3EL00-0AB0
* solo con CPU con firmware a partire da V2.5.0
Se non si vuole avviare la rilevazione della topologia tramite la CPU, ma bensì esclusivamente prelevare le informazioni di diagnostica dal repeater di diagnostica, allora basta semplicemente la funzione di sistema SFC59 opp. il blocco funzionale di sistema SFB52. Questi sono anche implementati nelle altre CPU S7-300 attuali.
Le seguenti CPUS7-400 supportano la funzione di sistema SFC103.
CPUs
Numeri di ordinazione
CPU 412-1
6ES7412-1XF03-0AB0
CPU 412-2
6ES7412-2XG00-0AB0
CPU 412-2 PCI
6ES7612-2QH00-0AB4
CPU 414-2
6ES7414-2XG03-0AB0
CPU 414-3
6ES7414-3XJ00-0AB0
CPU 414-4 H
6ES7414-4HJ00-0AB0
CPU 416-2
6ES7416-2XK02-0AB0
CPU 416-2 PCI
6ES7616-2QL00-0AB4
CPU 416-3
6ES7416-3XL00-0AB0
CPU 417-4
6ES7417-4XL00-0AB0
CPU 417-4 H
6ES7417-4HL01-0AB0
Se, tramite la CPU, si vuole avviare il rilevamento della topologia tramite SFC 103, serve la versione firmware V 3.1 per le CPU S7-400. Questa funzione corrisponde al punto di menù "Preparazione della diagnostica dei cavi" in STEP 7. Se si vogliono solo prelevare informazioni di diagnostica dal repeater di diagnostica, allora basta solo la funzione di sistema SFC 59. Questa è già implementata in tutte le versioni precedenti, cioè solo per la lettura dei dati di diagnostica non è tassativo l'aggiornamento FW. Dalla versione firmware 3.0 della CPU S7-400 oltre allo SFC59 è implementato il blocco funzionale di sistema SFB52 per la lettura delle informazioni di diagnostica.
Avvertenza
Se non si collega PROFIBUS sul repeater di diagnostica direttamente sull'interfaccia della CPU, ma bensì tramite un CP, allora per l'esecuzione della funzione "Preparazione della diagnostica dei cavi" questa deve essere supportata non solo dalla CPU, ma bensì anche dal CP.
I seguenti CPS7-400 supportano la funzione "Preparazione della diagnostica dei cavi"
CP
Numeri di ordinazione
Firmware
CP 433-5 Extended
6GK7 443-5DX04-0XE0
da 6.1
Requisiti di sistema PG/PC
Impostazioni necessarie su "Imposta di interfaccia PG/PC" Con l'impostazione di interfaccia "CPxxxx(Auto)" non è possibile eseguire la misura dei partecipanti su PROFIBUS DP. L'interfaccia deve essere impostata su "CPxxxx(PROFIBUS)".
Processori di comunicazione impiegabili Le interfacce onboard MPI con PG740, MPI-ISA Card (6ES7 793-2AA..-0AA0) e PC-Adapter (USB e seriale) non supportano la funzione "Preparazione della diagnostica dei cavi".
Se, ciononostante, la funzione viene avviata in STEP7, dopo il trascorrere di un tempo di sorveglianza, la misura viene arrestata. In questo caso in STEP7 compare lo stato "Rilevamento bloccato" con il testo addizionale "Sorveglianza tempo intervenuta".
Le seguenti schede di interfaccia supportano la funzione per la misura dei partecipanti su PROFIBUS DP:
CP5511
CP5512
CP5611
Software necessario Per l'avvio della funzione "Preparazione della diagnostica dei cavi" che viene supportata 6ES7 972-0AB01-0XA0, serve almeno STEP 7 Versione 5.2 con Service Pack 1. Questo Service Pack si trova nell'articolo con ID 16540057