Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Blocchi organizzativi 1
Parametri generali relativi alle
SFC 2
SIMATIC Funzioni di copiatura e di
3
blocco
PROFINET 17
04/2017 SFC e SFB per le CPU
A5E41911986-AA
PROFINET 18
Avvertenze di legge
Concetto di segnaletica di avvertimento
Questo manuale contiene delle norme di sicurezza che devono essere rispettate per salvaguardare l'incolumità
personale e per evitare danni materiali. Le indicazioni da rispettare per garantire la sicurezza personale sono
evidenziate da un simbolo a forma di triangolo mentre quelle per evitare danni materiali non sono precedute dal
triangolo. Gli avvisi di pericolo sono rappresentati come segue e segnalano in ordine descrescente i diversi
livelli di rischio.
PERICOLO
questo simbolo indica che la mancata osservanza delle opportune misure di sicurezza provoca la morte o gravi
lesioni fisiche.
AVVERTENZA
il simbolo indica che la mancata osservanza delle relative misure di sicurezza può causare la morte o gravi
lesioni fisiche.
CAUTELA
indica che la mancata osservanza delle relative misure di sicurezza può causare lesioni fisiche non gravi.
ATTENZIONE
indica che la mancata osservanza delle relative misure di sicurezza può causare danni materiali.
Nel caso in cui ci siano più livelli di rischio l'avviso di pericolo segnala sempre quello più elevato. Se in un
avviso di pericolo si richiama l'attenzione con il triangolo sul rischio di lesioni alle persone, può anche essere
contemporaneamente segnalato il rischio di possibili danni materiali.
Personale qualificato
Il prodotto/sistema oggetto di questa documentazione può essere adoperato solo da personale qualificato per il
rispettivo compito assegnato nel rispetto della documentazione relativa al compito, specialmente delle
avvertenze di sicurezza e delle precauzioni in essa contenute. Il personale qualificato, in virtù della sua
formazione ed esperienza, è in grado di riconoscere i rischi legati all'impiego di questi prodotti/sistemi e di
evitare possibili pericoli.
AVVERTENZA
I prodotti Siemens devono essere utilizzati solo per i casi d’ impiego previsti nel catalogo e nella rispettiva
documentazione tecnica. Qualora vengano impiegati prodotti o componenti di terzi, questi devono essere
consigliati oppure approvati da Siemens. Il funzionamento corretto e sicuro dei prodotti presuppone un trasporto,
un magazzinaggio, un’ installazione, un montaggio, una messa in servizio, un utilizzo e una manutenzione
appropriati e a regola d’ arte. Devono essere rispettate le condizioni ambientali consentite. Devono essere
osservate le avvertenze contenute nella rispettiva documentazione.
Marchio di prodotto
Tutti i nomi di prodotto contrassegnati con ® sono marchi registrati della Siemens AG. Gli altri nomi di prodotto
citati in questo manuale possono essere dei marchi il cui utilizzo da parte di terzi per i propri scopi può violare i
diritti dei proprietari.
Esclusione di responsabilità
Abbiamo controllato che il contenuto di questa documentazione corrisponda all'hardware e al software descritti.
Non potendo comunque escludere eventuali differenze, non possiamo garantire una concordanza perfetta. Il
contenuto di questa documentazione viene tuttavia verificato periodicamente e le eventuali correzioni o
modifiche vengono inserite nelle successive edizioni.
Avvertenza
Quali di queste funzioni e blocchi sono integrati in quale CPU viene descritto nella parte bibliografica
del manuale “Sistema di automazione S7-300, Configurazione e dati della CPU: CPU 31xC e
CPU 31x“ e "Sistema di automazione S7-300, Configurazione e dati della CPU: CPU 312 IFM 318-2
DP" /70/ o del manuale “Sistemi di automazione S7-400, M7-400, Dati delle unità /101/ o della lista
operazioni: “Sistema di automazione S7-400: Dati della CPU“ /102/, nella versione valida per la CPU
utilizzata. Le caratteristiche funzionali per le SFB di comunicazione per i collegamenti progettati e le
funzioni di segnalazione S7 si trovano nei manuali /70/ e /101/.
Informazioni relative ai sistemi operativi delle CPU, allo sviluppo di programmi e alle possibilità di
comunicazione e di diagnostica delle CPU sono riportate nel manuale /234/. Come potete richiamare
le funzioni e i blocchi funzionali dal proprio programma è spiegato nelle descrizioni dei linguaggi.
Tutte le funzioni indicate vengono programmate e parametrizzate con il software di base STEP 7, che
non viene spiegato in questo manuale. La relativa documentazione è offerta dal manuale /231/ e dalla
Guida online STEP 7.
Destinatari
I destinatari di questo manuale sono i programmatori e gli ingegneri che hanno familiarità con il
controllo dei processi e che scrivono programmi per i sistemi di automazione.
Guida in linea
Come completamento del manuale è possibile avvalersi in fase operativa della dettagliata Guida in
linea integrata nel software.
Il sistema della Guida è integrato nel software mediante differenti interfacce.
• Nel menu ? sono disponibili diversi comandi: Argomenti della Guida apre l'indice della Guida di
STEP 7.
• Uso della Guida offre istruzioni dettagliate sulla possibilità di reperire informazioni nella Guida in
linea.
• La Guida al contesto offre informazioni sul contesto attuale, p. es. su una finestra di dialogo
aperta o su una finestra attiva. È richiamabile con il pulsante "?" o con il tasto F1.
• Una forma ulteriore di Guida al contesto è data dalla barra di stato: appena il cursore del mouse
si trova su un comando viene visualizzata nella barra di stato una breve spiegazione.
• Una tale spiegazione viene riportata anche nella barra degli strumenti se il mouse si sofferma
brevemente su una icona.
Se si preferisce leggere le informazioni della Guida in linea su carta, sarà possibile stampare dei
singoli argomenti o libri della Guida, o perfino l'intera Guida.
Questo manuale è un'estratto della Guida in linea a STEP 7 basata sul formato HTML. Poichè la
struttura del manuale e della Guida in linea è quasi identica, è possibile passare facilmente dal
manuale alla Guida in linea.
Altri manuali
Le singole CPU dell’S7-300 e S7-400 nonché le unità S7-300 e S7-400 sono descritte
• per il sistema di automazione S7-300 nei manuali /70/, /71/ e in /72/.
• per il sistema di automazione S7-400 nel manuale /101/ e in /102/.
Guida
Il presente manuale è suddiviso in base ai seguenti temi.
• Il capitolo 1 spiega tutti i blocchi organizzativi.
• Il capitolo 2 descrive i parametri generali RET_VAL, REQ e BUSY.
• I capitoli da 3 a 29 descrivono le SFC, gli SFB e le IEC-FC.
• I capitoli da 30 a 35 contengono la struttura dei dati di diagnostica, la panoramica delle ID SZL, i
possibili eventi, le liste con SFC, SFB e FC di questo manuale, una panoramica degli SDB e la
bibliografia.
• Nel glossario vengono spiegati concetti importanti.
• L’indice analitico permette di trovare rapidamente i passi relativi a voci importanti.
Convenzioni
I riferimenti ad altra documentazione vengono indicati da un numero racchiuso tra due barre /.../. In
base a questo numero, nella bibliografia alla fine del manuale è possibile risalire al titolo esatto di tale
documentazione.
Ulteriore supporto
Per tutte le domande sull'uso dei prodotti descritti nel manuale, che non trovano risposta nella
documentazione, rivolgersi al rappresentante Siemens locale.
Sito Internet delle rappresentanze Siemens:
http://www.siemens.com/automation/partner
Per la guida alla documentazione tecnica dei singoli prodotti e sistemi SIMATIC, consultare il sito:
http://www.siemens.com/simatic-tech-doku-portal
Il catalogo in linea e il sistema di ordinazione in linea si trova al sito:
http://mall.automation.siemens.com/
Centro di addestramento
Per facilitare l'approccio al sistema di automazione SIMATIC S7, la Siemens organizza corsi specifici.
Rivolgersi a questo proposito al centro di addestramento locale più vicino o al centro di
addestramento centrale di Norimberga.
Internet: http://www.sitrain.com
Technical Support
Per tutti i prodotti Industry Automation and Drive Technology è possibile rivolgersi al Technical
Support
• mediante il modulo Web per la Support Request
http://www.siemens.com/automation/support-request
Per ulteriori informazioni sul Technical Support, consultare in Internet il sito
http://www.siemens.com/automation/service
Indicazioni di sicurezza:
Siemens commercializza prodotti e soluzioni dotati di funzioni Industrial Security che contribuiscono
al funzionamento sicuro di impianti, soluzioni, macchine e reti.
La protezione di impianti, sistemi, macchine e reti da minacce cibernetiche, richiede
l'implementazione e la gestione continua di un concetto globale di Industrial Security che corrisponda
allo stato attuale della tecnica. I prodotti e le soluzioni Siemens costituiscono soltanto una
componente imprescindibile di questo concetto.
È responsabilità del cliente prevenire accessi non autorizzati ad impianti, sistemi, macchine e reti. Il
collegamento di sistemi, macchine e componenti, se necessario, deve avvenire esclusivamente
nell'ambito della rete aziendale o tramite Internet previa adozione di opportune misure (ad es.
impiego di firewall e segmentazione della rete).
Attenersi inoltre alle raccomandazione Siemens concernenti misure di sicurezza adeguate. Ulteriori
informazioni su Industrial Security sono disponibili al sito
http://www.siemens.com/industrialsecurity
I prodotti e le soluzioni Siemens vengono costantemente perfezionati per incrementarne la
sicurezza. Siemens raccomanda espressamente di eseguire gli aggiornamenti non appena sono
disponibili i relativi update e di impiegare sempre le versioni aggiornate dei prodotti. L'uso di prodotti
non più attuali o di versioni non più supportate incrementa il rischio di attacchi cibernetici.
Per essere costantemente aggiornati sugli update dei prodotti, abbonarsi a Siemens Industrial
Security RSS Feed al sito
http://www.siemens.com/industrialsecurity
1 Blocchi organizzativi 11
1.1 Panoramica degli OB ................................................................................................................... 11
1.2 Programma ciclico (OB 1) ............................................................................................................ 15
1.3 OB di allarme dall'orologio (da OB 10 a OB 17) .......................................................................... 17
1.4 OB di allarme di ritardo (da OB 20 a OB 23) ............................................................................... 21
1.5 OB di schedulazione orologio (da OB 30 a OB 38) ..................................................................... 23
1.6 OB di interrupt di processo (da OB 40 a OB 47) ......................................................................... 25
1.7 OB di allarme di stato (OB 55) ..................................................................................................... 28
1.8 OB di allarme di aggiornamento (OB 56) ..................................................................................... 31
1.9 OB per allarmi produttore (OB 57) ............................................................................................... 34
1.10 OB di allarme di multicomputing (OB 60) .................................................................................... 37
1.11 OB di allarme in sincronismo di clock (da OB 61 a OB 64) ......................................................... 39
1.12 OB di allarme di sincronismo tecnologico (OB 65) ...................................................................... 40
1.13 OB di errore di ridondanza della periferia (OB 70) ...................................................................... 41
1.14 OB di errore di ridondanza della CPU (OB 72) ............................................................................ 44
1.15 OB di errore di ridondanza di comunicazione OB (OB73) ........................................................... 47
1.16 OB di errore temporale (OB 80) ................................................................................................... 48
1.17 OB di errore di alimentazione (OB 81) ......................................................................................... 52
1.18 OB di allarme di diagnostica (OB 82)........................................................................................... 55
1.19 OB di estrazione/inserimento (OB 83) ......................................................................................... 58
1.20 OB di errore hardware CPU (OB 84) ........................................................................................... 63
1.21 OB di errore esecuzione programma (OB 85) ............................................................................. 65
1.22 OB di guasto telaio di montaggio (OB 86) ................................................................................... 69
1.23 OB di errore di comunicazione (OB 87) ....................................................................................... 75
1.24 OB di interruzione di elaborazione (OB 88) ................................................................................. 77
1.25 OB di priorità bassa (OB 90) ........................................................................................................ 79
1.26 OB di avviamento (OB 100, OB 101 e OB 102) .......................................................................... 81
1.27 OB di errore di programmazione (OB 121) .................................................................................. 86
1.28 OB di errore di accesso alla periferia (OB 122) ........................................................................... 89
2 Parametri generali relativi alle SFC 91
2.1 Analisi degli errori con il parametro di uscita RET_VAL .............................................................. 91
2.2 Significato dei parametri REQ, RET_VAL e BUSY nelle SFC che lavorano
in modo asincrono ........................................................................................................................ 96
14 SFC per l'aggiornamento dell'immagine di processo e l'elaborazione del campo di bit 271
14.1 Aggiornamento dell'immagine di processo degli ingressi con la SFC 26 "UPDAT_PI" ............. 271
14.2 Aggiornamento delle uscite delle unità di periferia con la SFC 27 "UPDAT_PO" .................... 273
14.3 Aggiornamento con sincronizzazione di clock dell'immagine di processo parziale
degli ingressi con l'SFC 126 "SYNC_PI" ................................................................................... 275
14.4 Aggiornamento con sincronizzazione di clock dell'immagine di processo parziale
delle uscite con l'SFC 127 "SYNC_PO" ..................................................................................... 277
14.5 Impostazione del campo di bit nell'area periferia con la SFC 79 "SET" .................................... 279
14.6 Resettaggio del campo di bit nell'area periferia con la SFC 80 "RSET" .................................... 280
14.7 Realizzazione di un dispositivo di avanzamento a passi con l'SFB 32 "DRUM" ....................... 281
15 Funzioni di sistema per l'indirizzamento di unità 285
15.1 Rilevamento dell'indirizzo di base logico di un'unità con la SFC 5 "GADR_LGC"..................... 285
15.2 Rilevamento del posto connettore appartenente ad un indirizzo logico con la SFC 49
"LGC_GADR" ............................................................................................................................. 287
15.3 Rilevamento di tutti gli indirizzi logici di un'unità con la SFC 50 "RD_LGADR" ......................... 289
15.4 Determinazione dell'indirizzo iniziale di un'unità con la SFC 70 "GEO_LOG"........................... 290
15.5 Determinazione del posto connettore corrispondente a un indirizzo logico con la SFC 71
"LOG_GEO" ............................................................................................................................... 292
16 SFC per periferia decentrata o per PROFINET IO 295
16.1 Attivazione di un interrupt di processo nel master DP con l'SFC 7 "DP_PRAL" ....................... 295
16.2 Sincronizzazione di gruppi di slave DP con l'SFC 11 "DPSYC_FR" ......................................... 298
16.3 Disattivazione e attivazione di slave DP/PROFINET IO Device con l'SFC 12 "D_ACT_DP" .... 304
16.4 Lettura di dati di diagnostica (diagnostica slave) di uno slave DP
con l'SFC 13 "DPNRM_DG" ...................................................................................................... 311
16.5 Lettura di dati coerenti di uno slave standard DP/PROFINET IO Device con l'SFC 14
"DPRD_DAT" ............................................................................................................................. 315
16.6 Scrittura coerente di dati utili ad uno slave standard DP/PROFINET IO Device
con l'SFC 15 "DPWR_DAT" ....................................................................................................... 318
17 PROFINET 321
17.1 Informazioni sulle SFC 112, 113 e 114 ...................................................................................... 321
17.2 Aggiornamento degli ingressi dell'interfaccia del programma utente
dei componenti PROFINET CBA con l'SFC 112 "PN_IN" ......................................................... 324
17.3 Aggiornamento delle uscite dell'interfaccia PROFINET del componente PROFINET CBA
con l’SFC 113 "PN_OUT" .......................................................................................................... 325
17.4 Aggiornamento delle interconnessioni DP con l’SFC 114 "PN_DP" ......................................... 326
18 SFC e SFB per le CPU PROFINET 330
18.1 Attivazione/sincronizzazione di pagine Web personalizzate con l'SFC 99 "WWW" .................. 330
18.2 Impostazione della configurazione IP con l'SFB 104 "IP_CONF" ............................................. 332
Blocchi organizzativi
I blocchi organizzativi formano l'interfaccia tra il sistema operativo della CPU e il programma utente.
Con l'aiuto degli OB si possono far eseguire parti di programma:
• all'avviamento della CPU
• nell'esecuzione ciclica o anche nell'esecuzione temporizzata
• a determinati orari o giorni
• al termine di una durata di tempo assegnata
• quando si presentano errori
• quando si presentano interrupt di processo.
I blocchi organizzativi vengono elaborati in base alla priorità ad essi assegnata.
OB disponibili
Non tutte le CPU possono elaborare tutti gli OB disponibili per S7. Consultare le liste operazioni /72/
e /102/ della CPU per sapere quali OB sono inclusi nella CPU.
Altre informazioni
Altre informazioni possono essere rilevate dalla Guida in linea e dai seguenti manuali:
• /70/: Questo manuale contiene i dati tecnici che descrivono le potenzialità delle diverse
CPU S7-300.
• /101/: Questo manuale contiene i dati tecnici che descrivono le potenzialità delle diverse
CPU S7-400.
OB 36 13
OB 37 14
OB 38 15
1)
Le classi di priorità 27 e 28 sono valide nel modello della classe di priorità dell'avviamento.
2)
La classe di priorità 29 corrisponde alla priorità 0.29. Il ciclo di sfondo ha dunque una priorità più bassa rispetto al ciclo
libero.
Descrizione
Il sistema operativo della CPU S7 elabora ciclicamente l'OB 1; al termine dell'elaborazione dell'OB 1,
il sistema operativo inizia una nuova elaborazione dello stesso. L'elaborazione ciclica di OB 1 viene
iniziata al termine dell'avviamento. Si può usare OB 1 per richiamare altri blocchi funzionali (FB,
SFB) o altre funzioni (FC, SFC).
Funzionamento di OB 1
OB 1 ha la priorità più bassa rispetto a tutti gli altri OB. Ad eccezione di OB 90 tutti gli altri
OB possono interrompere l'elaborazione di OB 1. I seguenti eventi possono determinare il richiamo
di OB 1 da parte del sistema operativo:
• Fine dell'elaborazione dell'avviamento
• Fine dell'esecuzione di OB 1 (del ciclo precedente).
Quando l'elaborazione dell'OB 1 è terminata, il sistema operativo invia i dati globali. Prima di
riavviare OB 1, il sistema operativo scrive l'immagine di processo delle uscite nelle unità di uscita,
aggiorna l'immagine di processo degli ingressi e riceve i dati globali per la CPU.
S7 offre un controllo del tempo di ciclo massimo, con cui viene garantito il tempo di risposta
massimo. Il valore per il tempo di ciclo massimo è preimpostato su 150 ms; questo valore può essere
riparametrizzato o il tempo di controllo può essere avviato di nuovo in qualsiasi posizione del
programma con la SFC 43 "RE_TRIGR". Se il programma supera il tempo di ciclo massimo per
OB 1, il sistema operativo richiama OB 80 (OB di errore temporale); se OB 80 non è programmato, la
CPU passa in modalità STOP.
Oltre al controllo del tempo di ciclo massimo può essere garantita l'osservanza di un tempo ciclo
minimo. Il sistema operativo ritarda l'inizio di un nuovo ciclo (scrittura dell‘immagine di processo delle
uscite nelle unità di uscita) fino a quando non è stato raggiunto il tempo di ciclo minimo.
I campi dei valori per i parametri del tempo di ciclo massimo e minimo sono riportati nei manuali /70/
e /101/. La modifica dei parametri viene eseguita con STEP 7.
Descrizione
S7 mette a disposizione fino a otto blocchi organizzativi (dall'OB 10 all'OB 17) che vengono avviati
una volta o periodicamente. L'utente può parametrizzare la CPU con le SFC o con STEP 7 in modo
che questi OB vengano elaborati ai seguenti intervalli:
• Una volta
• Ogni minuto
• Ogni ora
• Giornalmente
• Settimanalmente
• Mensilmente
• Annualmente
• A fine mese
Avvertenza
In caso di elaborazione mensile di un OB di allarme dall'orologio, lo standard prevede soltanto i giorni
1, 2 ... 28.
Intervallo Descrizione
Non attivato L'OB di allarme dall'orologio non viene elaborato neppure se è caricato nella CPU.
L'allarme dall'orologio può essere attivato mediante richiamo della SFC 30.
Attivato una volta L'OB dell'allarme dall'orologio viene annullato automaticamente dopo che è stato
elaborato una volta come indicato.
Il programma utente può impostare di nuovo l'allarme dall'orologio con la SFC 28 e
attivarlo di nuovo con la SFC 30.
Attivato periodicamente Nel momento in cui viene impostato l'allarme dall'orologio la CPU rileva, in base
all'ora attuale e al periodo di tempo, l'istante in cui esso deve essere avviato.
Il comportamento degli allarmi dall'orologio durante la messa avanti o indietro dell'orologio è descritto
in /234/.
Avvertenza
Se si configura un allarme dall'orologio in modo che il relativo OB venga eseguito una volta, la data e
l'ora non devono essere nel passato (secondo l'orologio hardware della CPU).
Se si configura un allarme dall'orologio in modo che il relativo OB venga eseguito a intervalli
periodici, ma si imposta nel passato la data e l'ora di inizio, l'OB di allarme dall'orologio viene
eseguito al primo intervallo successivo rispetto all'ora attuale.
Gli allarmi dall'orologio possono essere disabilitati o ritardati e abilitati di nuovo con l'aiuto delle
SFC 39 fino a 42.
Condizione Risultato
Il programma richiama SFC 29 Il sistema operativo cancella l'evento di avvio (data e ora)
"CAN_TINT" e annulla un allarme dell'allarme dall'orologio. Occorre reimpostare e attivare l'evento
dall'orologio. di avvio prima di poter richiamare l'OB.
Il programma ha tentato di attivare un OB di Il sistema operativo chiama OB 85. Se OB 85 non è stato
allarme dall'orologio, che al momento programmato (caricato nella CPU), la CPU passa in STOP.
dell'attivazione non era caricato nella CPU.
Nel sincronizzare o correggere l'orologio di Il sistema operativo chiama OB 80 e codifica il numero di
sistema della CPU, si è impostata l'ora in OB (10) e le informazioni dell'evento di avvio in OB 80.
avanti e si è saltata la data o l'ora Il sistema operativo esegue quindi l'OB di allarme dall'orologio
dell'evento di avvio per l'OB ora del giorno. una volta, indipendentemente dal numero di volte che questo
OB sarebbe dovuto essere eseguito. Le informazioni di evento di
avvio dell'OB 80 mostrano la data e l'ora in cui l'OB di allarme
dall'orologio è stato saltato per la prima volta.
Nel sincronizzare o correggere l'orologio di CPU S7-400 e CPU 318:
sistema della CPU, l'ora è stata riportata Se l'OB di allarme dall'orologio era già attivato prima di riportare
indietro e si ripete la data o l'ora dell'evento indietro l'orologio, esso non viene di nuovo richiamato per i tempi
di avvio per un OB di allarme dall'orologio. già trascorsi.
CPU S7-300: viene eseguito l'OB di allarme dall'orologio
La CPU esegue un nuovo avviamento Ogni OB di allarme dall'orologio che è stato configurato con una
(avviamento a caldo) o un avviamento a SFC riprende la configurazione che è stata progettata con
freddo. STEP 7.
Se si configura un allarme dall'orologio in modo che il relativo
OB venga avviato una volta e l'allarme è stato impostato e
attivato con STEP 7 allora l'OB viene richiamato una volta dal
sistema operativo dopo un nuovo avviamento (avviamento a
caldo) oppure avviamento a freddo se l'istante di avvio
progettato è nel passato (riferito all'orologio hardware della CPU
).
Un OB di allarme dall'orologio viene ancora Il sistema operativo chiama OB 80. Se OB 80 non è
eseguito quando si verifica l'evento di avvio programmato, la CPU passa in STOP.
per il prossimo intervallo. Altrimenti, dopo l'esecuzione dell'OB 80 e dell'OB di allarme
dall'orologio, viene ripresa l'esecuzione di OB richiesta.
Descrizione
S7 mette a disposizione fino a quattro OB (da OB 20 a OB 23) che vengono eseguiti rispettivamente
dopo un tempo di ritardo parametrizzabile. Ogni OB di allarme di ritardo viene avviato da un richiamo
della SFC 32 "SRT_DINT". Il tempo di ritardo è un parametro di ingresso della SFC.
Quando il programma chiama SFC 32 "SRT_DINT", si specifica il numero di OB, il tempo di ritardo e
un carattere di identificazione specifico per l'utente. Dopo che è trascorso il tempo di ritardo
specificato, il relativo OB si avvia. L'esecuzione di un allarme di ritardo che non è stato ancora
avviato può essere annullata.
Descrizione
S7 mette a disposizione fino a nove OB di schedulazione orologio (da OB 30 a OB 38), con il cui
aiuto si possono avviare programmi in base ad intervalli di tempo equidistanti. La tabella seguente
mostra i valori preimpostati per i reticoli temporali e le classi di priorità degli OB di schedulazione
orologio.
OB di schedulazione orologio Valore di default per reticolo Valore di default per la classe di
temporale priorità
OB 30 5s 7
OB 31 2s 8
OB 32 1s 9
OB 33 500 MS 10
OB 34 200 MS 11
OB 35 100 MS 12
OB 36 50 MS 13
OB 37 20 MS 14
OB 38 10 MS 15
Avvertenza
È necessario provvedere affinché il tempo di esecuzione di ogni OB di schedulazione orologio sia
nettamente inferiore al suo clock. Se un OB di schedulazione orologio non è ancora terminato, ma è
di nuovo prossimo all'esecuzione a causa del clock decorso, viene avviato l'OB dell'errore temporale
(OB 80). Successivamente viene recuperata la schedulazione orologio che ha causato l'errore.
Gli allarmi di tempo possono essere disabilitati o ritardati e abilitati di nuovo con l'aiuto delle SFC da
39 a 42.
I campi dei valori per i parametri: clock, classe di priorità e spostamento delle fasi sono riportati nei
dati tecnici della CPU. La modifica dei parametri viene eseguita mediante parametrizzazione con
STEP 7.
Descrizione
S7 mette a disposizione fino a otto interrupt di processo indipendenti tra di loro con rispettivamente
un OB.
Mediante parametrizzazione con STEP 7 definire per ogni unità di ingresso/uscita, che deve attivare
gli interrupt di processo,
• quali canali devono attivare, con quale condizione marginale, un interrupt di processo
• quale OB di interrupt di processo viene assegnato ai singoli gruppi di canali (a default vengono
eseguiti tutti gli interrupt di processo tramite OB 40).
Nei CP e FM è necessario utilizzare il rispettivo software per l'unità.
Le classi di priorità per i singoli OB di interrupt di processo vengono definite con STEP 7.
Segnale
di processo
OB 40
Elaborazione dell'OB 40
• Se l'evento si presenta in un altro canale della stessa unità, momentaneamente non può essere
attivato nessun interrupt di processo. Esso non va tuttavia perso, ma viene attivato dopo la
conferma dell'interrupt di processo attivo.
Se viene attivato un interrupt di processo il cui rispettivo OB è attivo momentaneamente proprio a
causa di un interrupt di processo di un'altra unità, la nuova richiesta viene registrata e l'OB viene
elaborato al momento opportuno .
Gli interrupt di processo possono essere disabilitati o ritardati e abilitati di nuovo con l'aiuto delle
SFC da 39 a 42.
La parametrizzazione degli interrupt di processo di una unità può essere eseguita non solo con
STEP 7, ma anche con le SFC da 55 a 57.
Avvertenza
Se si utilizza una CPU che supporta slave DPV1, con l'aiuto dell'SFB 54 "RALRM" è possibile ottenere ulteriori
informazioni sull'allarme oltre a quelle di avvio dell'OB. Ciò vale anche quando il master DP viene utilizzato nei
modi S7 compatibili.
Avvertenza
L'OB di allarme di stato (OB 55) è disponibile solo per le CPU che supportano slave DPV1 e PROFINET.
Descrizione
Il sistema operativo della CPU richiama l'OB 55 in seguito a un allarme di stato attivato da un posto
connettore di uno slave DPV1 o di un IO Device. Ciò si può verificare quando un componente (unità
o modulo) di uno slave DPV1 o di un IO Device cambia stato di funzionamento, p. es. da RUN a
STOP. Gli eventi specifici che attivano un allarme di stato sono riportati nella documentazione del
produttore dello slave DPV1 o dell’IO Device.
Avvertenza
Il significato di OB55_LEN, OB55_TYPE, OB55_SLOT, OB55_SPEC indicato nella tabella
precedente è valido solo per un allarme di stato in DP. In caso di allarme di stato in PROFINET IO
organizzare le variabili locali come indicato nella tabella seguente.
Avvertenza
L'informazione supplementare completa sull'allarme del telegramma si ottiene richiamando l'SFB 54
"RALRM" all'interno dell'OB 55.
A seconda dell'evento di avvio, vengono fornite informazioni diverse alle variabili OB55_Z2 e
OB55_Z3. La tabella sottostante mostra questo comportamento nel dettaglio.
Significato dell'OB55_Z2
Significato dell'OB55_Z3
Avvertenza
L'OB di allarme di aggiornamento (OB 56) è disponibile solo per le CPU che supportano slave DPV1 o
PROFINET.
Descrizione
Il sistema operativo della CPU richiama l'OB 56 in seguito a un allarme di aggiornamento attivato da
un posto connettore di uno slave DPV1 o di un IO Device. Ciò si può verificare quando si esegue una
modifica di parametrizzazione nel posto connettore di uno slave DPV1o di un IO Device (con
accesso locale o remoto). Gli eventi specifici che attivano un allarme di aggiornamento sono riportati
nella documentazione del produttore dello slave DPV1o dell’IO Device.
Avvertenza
Il significato di OB56_LEN, OB56_TYPE, OB56_SLOT, OB56_SPEC indicato nella tabella
precedente è valido solo per un allarme di aggiornamento in DP. In caso di allarme di aggiornamento
in PROFINET IO organizzare le variabili locali come indicato nella tabella seguente.
Avvertenza
L'informazione supplementare completa sull'allarme del telegramma si ottiene richiamando l'SFB 54
"RALRM" all'interno dell'OB 56.
A seconda dell'evento di avvio, vengono fornite informazioni diverse alle variabili OB56_Z2 e
OB56_Z3. La tabella sottostante mostra questo comportamento nel dettaglio.
Significato dell'OB56_Z2
Significato dell'OB56_Z3
Avvertenza
L'OB per allarmi produttore (OB 57) è disponibile solo per le CPU che supportano slave DPV1
oppure PROFINET.
Descrizione
Il sistema operativo della CPU richiama l'OB 57 in seguito a un allarme produttore attivato da un
posto connettore di uno slave DPV1 o di un IO Device.
Avvertenza
Il significato di OB57_LEN, OB57_TYPE, OB57_SLOT, OB57_SPEC indicato nella tabella
precedente è valido solo per un allarme produttore in DP. In caso di allarme produttore in PROFINET
IO organizzare le variabili locali come indicato nella tabella seguente.
Avvertenza
L'informazione supplementare completa sull'allarme del telegramma si ottiene richiamando l'SFB 54
"RALRM" all'interno dell'OB 57.
A seconda dell'evento di avvio, vengono fornite informazioni diverse alle variabili OB57_Z2 e
OB57_Z3. La tabella sottostante mostra questo comportamento nel dettaglio.
Significato dell'OB57_Z2
Significato dell'OB57_Z3
Descrizione
Con l'aiuto dell'allarme di multicomputing nel funzionamento multicomputing è possibile reagire ad
un segnale in modo sincronico sulla relativa CPU. A differenza degli interrupt di processo, che
vengono attivati da unità di segnale, l'allarme di multicomputing può essere emesso solo dalle CPU.
Ciclo Ciclo
Ciclo Ciclo
Descrizione
Gli allarmi in sincronismo di clock consentono di avviare i programmi in modo sincrono rispetto al
clock DP. L'allarme in sincronismo di clock TSAL y è costituito dall'OB 6y , <= y <= 4 che funge da
OB di interfaccia. È possibile impostare la priorità degli OB da 61 a 64 assegnando un valore
compreso tra 0 (OB deselezionato) e 2 - 26.
! Cautela
Sia in caso di accessi diretti con comandi L e T (p. es. L PEB, T PAB) che in caso di impiego delle
SFC 14 "DPRD_DAT" e 15 "DPWR_DAT", evitare gli accessi ad aree della periferia le cui immagini
di processo parziali siano assegnate con collegamenti OB6x (allarmi in sincronismo di clock).
Avvertenza
L'OB di allarme di sincronismo tecnologico (OB 65) riguarda solamente le CPU tecnologiche.
Descrizione
L'allarme di sincronismo tecnologico offre la possibilità di avviare un programma in sincronismo di
clock con l'aggiornamento dei blocchi dati tecnologici. L'OB di allarme di sincronismo tecnologico
viene avviato di volta in volta dopo l'aggiornamento dei blocchi dati tecnologici.
La classe di priorità dell'OB di allarme di sincronismo tecnologico è fissata a 25 e non è modificabile.
Avvertenza
Al momento dell'avvio dell'OB di allarme di sincronismo tecnologico non sono ancora disponibili dati
di istanza aggiornati delle funzioni tecnologiche.
Avvertenza
L'OB di errore di ridondanza della periferia (OB 70) esiste solo con le CPU H.
Descrizione
Il sistema operativo della CPU H richiama l‘OB 70 se si verifica una perdita di ridondanza sul
PROFIBUS DP/sistema master DP oppure in caso di ripristino della stessa in almeno un IO
Device /slave DP.
Esempi di eventi di avvio dell’OB 70:
• Errore sull’interfaccia di un IO Device /slave DP.
• Guasto al bus sul master DP attivo che causa una perdita di ridondanza in almeno uno slave
DP.
Avvertenza: se in seguito ad un gusto in un sistema master DP o al ripristono dello stesso, lo
stato della ridondanza in tutti gli slave DP rimane invariato, viene richiamato l’OB 86.
Avvertenza
Se si utilizza una CPU che supporta slave DPV1, con l'aiuto dell'SFB 54 "RALRM" è possibile
ottenere ulteriori informazioni sull'allarme oltre a quelle di avvio dell'OB. Ciò vale anche quando il
master DP viene utilizzato nei modi S7 compatibili.
Avvertenza
L'OB d'errore di ridondanza della CPU (OB 72) esiste solo con le CPU H.
Descrizione
Il sistema operativo della CPU H richiama l'OB 72 quando compare uno degli eventi seguenti:
• Perdita di ridondanza delle CPU
• Commutazione riserva-master
• Errore di sincronizzazione
• Errore in un modulo SYNC
• Annullamento dell'operazione di aggiornamento
• Errore di confronto (p. es. RAM, PAA)
L'OB 72 viene eseguito da tutte le CPU che si trovano negli stati di funzionamento RUN o
AVVIAMENTO dopo un evento di avvio corrispondente.
Avvertenza
L'OB di errore di ridondanza di comunicazione (OB 73) esiste solo con firmware versione V2.0.x
della CPU 417-4H.
Descrizione
Il sistema operativo della CPU H richiama l'OB 73 alla prima perdita di ridondanza di un
collegamento S7 a elevata disponibilità (collegamenti S7 ad elevata disponibilità esistono
esclusivamente nella comunicazione S7, vedere "Sistema di automazione S7-400 H. Sistemi ad
elevata disponibilità".). In caso di perdita di ridondanza di altri collegamenti S7 ad elevata
disponibilità non viene più avviato l'OB73.
Un nuovo avvio dell'OB73 verrà eseguito nuovamente solo quando è stata ristabilita la ridondanza
per tutti i collegamenti S7 che erano a elevata disponibilità.
La CPU non passa allo stato di funzionamento STOP, se si verifica un evento di avvio corrispondente
e l'OB73 non è programmato.
Descrizione
Il sistema operativo della CPU chiama OB 80 ogni volta che vi è un evento che identifica un errore
correlato all'esecuzione di un OB: superamento del tempo di ciclo, errore di conferma
nell'esecuzione di un OB, spostamento in avanti dell'ora (salto dell'ora) per l'avvio di un OB, guasto e
ripristino dei telegrammi di sincronizzazione dell’ora, ritorno in RUN dopo una CiR. Per esempio, se
un evento di avvio per un OB di schedulazione orologio si verifica prima che sia terminata
l'esecuzione dello stesso OB, il sistema operativo richiama l'OB 80.
Se OB 80 non è stato programmato, la CPU passa in modalità STOP.
L'OB dell'errore temporale può essere disabilitato o ritardato e abilitato di nuovo con l'aiuto delle
SFC da 39 a 42.
Avvertenza
Se l'OB 80 viene richiamato due volte nello stesso ciclo a causa del superamento del tempo ciclo, la
CPU passa in STOP. Questo inconveniente può essere evitato richiamando la SFC43 "RE_TRIGR"
nel punto adatto.
Descrizione
Il sistema operativo della CPU richiama l'OB 81 ogni volta che si verifica un evento che identifica un
errore legato all'alimentatore (solo con S7-400) o alla bufferizzazione (sia con evento entrante sia
con evento uscente).
In S7-400 l'OB 81 viene richiamato in caso di errore della batteria solo se è attivata la verifica della
batteria con l'interruttore BATT.INDIC.
La CPU non passa in STOP quando l'OB 81 non è programmato.
L'OB dell'errore di alimentazione può essere disabilitato o ritardato e abilitato di nuovo con l'aiuto
delle SFC da 39 a 42.
Descrizione
Un'unità con funzioni di diagnostica che identifica una modifica dello stato della stessa, richiede un
allarme di diagnostica alla CPU. Nell'unità in oggetto deve essere stato abilitato l'allarme di
diagnostica.
• Si è in presenza di un guasto oppure uno o entrambi i componenti necessitano di manutenzione
(evento in entrata).
• Non si rilevano guasti, nessun componente necessita di manutenzione (evento in uscita).
Dopodiché il sistema operativo richiama l'OB 82.
L'OB 82 contiene, nelle sue variabili locali, l'indirizzo logico di base e un'informazione di diagnostica
lunga quattro byte dell'unità difettosa (vedere la tabella seguente).
Se l'OB 82 non è stato programmato, la CPU passa nello stato di funzionamento STOP.
L'OB di allarme di diagnostica può essere disabilitato o ritardato e abilitato di nuovo con l'aiuto delle
SFC da 39 a 42.
Nota
Nei Controller PROFINET IO è possibile indicare tramite la progettazione se gli allarmi di
comunicazione debbano provocare o no un richiamo dell’OB di diagnostica. Nel caso di questi
allarmi si tratta di eventi di diagnostica dell’interfaccia PROFINET.
Per default questi eventi non creano un richiamo OB 82.
Avvertenza
Se si utilizza una CPU che supporta slave DPV1, con l'aiuto dell'SFB 54 "RALRM" è possibile
ottenere ulteriori informazioni sull'allarme oltre a quelle di avvio dell'OB. Ciò vale anche quando il
master DP viene utilizzato nei modi S7 compatibili.
Descrizione
Il sistema operativo della CPU richiama l’OB 83 nei seguenti casi:
• dopo l’estrazione o l’inserimento di un’unità progettata
• dopo aver modificato dei parametri di un’unità in STEP 7 nel corso di una modifica all’impianto in
funzione (operazione CiR) ed aver caricato queste modifiche di parametri nella CPU in RUN.
Se non è stato programmato l'OB 83, la CPU commuta nello stato di funzionamento STOP.
L’OB di l’estrazione/inserimento può essere disabilitato o ritardato e abilitato di nuovo con l’aiuto
delle SFC da 9 a 42.
Estrazione ed inserimento di unità
Ogni estrazione e inserimento di un'unità progettata (non ammesse: unità di alimentazione, CPU,
capsule di adattamento e IM) negli stati di funzionamento RUN, STOP e AVVIAMENTO provoca un
allarme di estrazione/inserimento. Questo allarme determina una registrazione rispettivamente nel
buffer di diagnostica e nella lista di stato di sistema della rispettiva CPU. Inoltre, nello stato di
funzionamento RUN viene avviato l'OB di estrazione/inserimento. Se questo OB non è stato
programmato, la CPU passa nel modo di funzionamento STOP.
L’operazione di estrazione/l’inserimento di unità S7-400 nel sistema viene sorvegliata secondo per
secondo. Affinché la CPU rilevi l’estrazione e l’inserimento di un’unità S7-400, tra le due operazioni
deve intercorrere un tempo minimo di due secondi. Altre unità richiedo un intervallo più lungo.
L'OB 83 viene avviato quando si estrae nello stato di funzionamento RUN una unità progettata. È
possibile identificare prima un errore durante l'accesso diretto o l'aggiornamento dell'immagine di
processo.
Quando si inserisce una unità in un posto connettore progettato nello stato RUN, il sistema operativo
verifica se il tipo dell'unità innestata coincide con la progettazione. Successivamente viene avviato
l'OB 83, e, in caso di corrispondenza dei tipi di unità, ha luogo la parametrizzazione.
Particolarità dell'S7-300
• L'estrazione e l'inserimento di unità della periferia centrale non sono consentiti nell'S7-300.
• La CPU 318 si comporta, per quanto concerne la periferia decentrata, come una CPU S7-400.
Per quanto riguarda tutte le altre CPU S7-300, soltanto le CPU 31x PN/DP, e soltanto per i
componenti IO PROFINET, sono dotate dell'allarme di estrazione e inserimento.
• Nelle CPU/IM151 (CPU dell'ET 200S), l'allarme di estrazione e inserimento è disponibile soltanto
per la periferia a livello centrale.
Riparametrizzazione di unità
Le unità presenti possono essere riparametrizzate nel corso di una modifica all’impianto in funzione
(operazione CiR). La riparametrizzazione prevede il trasferimento dei record dati dei parametri nelle
unità desiderate.
Si svolge come segue:
1. L’OB 83 si avvia dopo l’esecuzione della modifica dei parametri di un’unità in STEP 7 ed il loro
caricamento nella CPU in RUN (evento di avvio W#16#3367). Tra le informazioni di avvio
dell’OB sono importanti l’indirizzo logico di base (OB83_MDL_ADDR) e il tipo di unità
(OB83_MDL_TYPE). Da questo momento i dati di ingresso e di uscita possono non essere più
corretti e possono non esservi più SFC attive che inviano record dati a questa unità.
2. Al termine dell’OB segue la riparametrizzazione dell’unità.
3. Al termine dell’operazione di riparametrizzazione l’OB 83 viene nuovamente avviato (evento di
avvio W#16#3267 in caso di parametrizzazione riuscita, o W#16#3268 in caso di
parametrizzazione non riuscita). I dati di ingresso e di uscita dell’unità si comportano come dopo
un allarme di inserimento, vale a dire che in alcuni casi da quel momento possono non essere
corretti. È ammesso il richiamo immediato delle SFC per l’invio dei record dati all’unità.
Riparametrizzazione di sottomoduli
Nell’ambito di una modifica all’impianto durante il funzionamento (processo CiR) è possibile
riparametrizzare i sottomoduli disponibili. La nuova parametrizzazione avviene inoltranto i set di dati
dei parametri ai sottomoduli interessati.
Questo processo si svolge con le seguenti modalità:
1. In seguito alla nuova parametrizzazione di un sottomodulo in STEP 7 e al caricamento delle
modifiche nella CPU durante il funzionamento in RUN, viene avviato l’OB 83 (evento di avvio
W#16#335A). L’indirizzo di base logico (OB83_MDL_ADDR) e il tipo di unità
(OB83_MDL_TYPE) costituiscono dati di rilievo nell’informazione di avvio dell’OB.
Se il sottomodulo da riparametrizzare appartiene a un gruppo CombinedObjectContainer,
l’indirizzo di base logico e il tipo di unità sostitutiva del gruppo COC, in quest caso dell’interfaccia,
vengono inseriti nell’informazione di avvio dell‘OB 83.
Nota: i sotto-moduli PDev (interfacce, porte) di uno slot vengono riuniti in un gruppo
CombinedObjectContainer (gruppo COC). Il sottomodulo di interfaccia è in questo caso l’unità
sostitutiva di questo gruppo COC.
Da questo momento i dati di ingresso e uscita del sottomodulo potrebbero non essere più
corretti, pertanto le SFC preposte all’invio di dati a questo sottomodulo non devono più essere
attive.
2. Al termine dell’OB 83, ha luogo la riparametrizzazione del sottomodulo.
3. Terminata la procedura di riparametrizzazione, l‘OB 83 viene nuovamente avviato (evento di
avvio W#16#325A, se la parametrizzazione è riuscita, oppure W#16#395B se la
parametrizzazione non è riuscita). I dati di ingresso e uscita del sottomodulo hanno un
comportamento analogo a quello che segue ad un allarme di inserimento, in altri termini, da
questo momento la loro correttezza non può ancora essere garantita. Il richiamo delle SFC che
inviano i set di dati al sottomodulo è ora nuovamente possibile.
Avvertenza
Se si utilizza una CPU che supporta slave DPV1 o PROFINET, con l'ausilio dell'SFB 54 "RALRM" è
possibile ottenere ulteriori informazioni sull'allarme oltre a quelle di avvio dell'OB. Ciò vale anche
quando il master DP viene utilizzato nei modi S7 compatibili.
Descrizione
Il sistema operativo della CPU richiama l'OB 84 nei seguenti casi:
• Dopo aver riconosciuto ed eliminato errori di memoria
• Nella progettazzione di CPU H fino alla versione V4.5 compresa: in caso di riduzione della
performance dell'accoppiamento di ridondanza tra le due CPU
Avvertenza: nella progettazzione di CPU H a partire dalla versione V6.0, in caso di riduzione
della performance dell'accoppiamento di ridondanza tra le CPU, viene richiamato l’OB di allarme
di diagnostica (OB 82).
• In WinAC RTX: errore nel sistema operativo del PC, ad es. blue screen
• Se non è stato programmato l'OB 84, la CPU commuta nello stato di funzionamento STOP.
L'OB di errore hardware CPU può essere inibito o ritardato e quindi riabilitato per mezzo delle
SFC da 39 a 42.
Descrizione
Il sistema operativo della CPU richiama l'OB 85 se si presenta uno dei seguenti eventi:
• Evento di avvio per un OB non caricato (eccetto OB 80, OB 81, OB 82, OB 83 e OB 86)
• Errore di accesso del sistema operativo ad un blocco
• Errore di accesso alla periferia all'aggiornamento dell'intera immagine di processo (nel caso in
cui il richiamo di OB85 non è stato soppresso mediante la progettazione) .
Avvertenza
Se l'OB 85 non è stato programmato, la CPU passa nel modo di funzionamento STOP se si presenta
uno dei suddetti eventi.
L'OB di errore di esecuzione programma può essere disabilitato o ritardato e abilitato di nuovo con
l'aiuto della SFC da 39 a 42.
Variabile Tipo
OB85_EV_CLASS BYTE
OB85_FLT_ID BYTE
OB85_PRIORITY BYTE
OB85_OB_NUMBR BYTE
OB85_DKZ23 BYTE
OB85_RESERVED_2 BYTE
OB85_Z1 WORD
OB85_Z23 DWORD
OB85_DATE_TIME DATE_AND_TIME
La tabella seguente indica quale evento ha causato l'avvio dell'OB 85 nonché l'assegnazione dei
valori alle variabili dipendenti dal codice di errore
Descrizione
Il sistema operativo della CPU richiama l'OB 86 nei seguenti casi:
• Riconoscimento di un guasto (sia con evento entrante che uscente) in un'apparecchiatura di
ampliamento centrale (non nell'S7 300).
• Riconoscimento di un guasto in un sistema master DP (sia con evento entrante che uscente).
• Riconoscimento di un guasto in una stazione della periferia decentrata (PROFIBUS DP o
PROFINET IO; sia con evento entrante che uscente).
• Disattivazione di una stazione della periferia decentrata (PROFIBUS DP o PROFINET IO) da
parte dell'utente con l'SFC 12 "D_ACT_DP" tramite MODE=4.
• Attivazione di una stazione della periferia decentrata (PROFIBUS DP o PROFINET IO) da parte
dell'utente con l'SFC 12 "D_ACT_DP" tramite MODE=3.
• Guasto di un sistema PROFINET IO, di una stazione PROFINET IO o di una parte dei
sotto-moduli di un PROFINET I Device.
Se l'OB 86 non è stato programmato e se si verifica uno di questi errori, la CPU passa nello stato di
funzionamento STOP.
L'OB 86 può essere disabilitato o ritardato e abilitato di nuovo con l'aiuto delle SFC da 39 a 42.
Variabile Tipo
OB86_EV_CLASS BYTE
OB86_FLT_ID BYTE
OB86_PRIORITY BYTE
OB86_OB_NUMBR BYTE
OB86_RESERVED_1 BYTE
OB86_RESERVED_2 BYTE
OB86_MDL_ADDR WORD
OB86_Z23 DWORD
OB86_DATE_TIME DATE_AND_TIME
Avvertenza
Se si utilizza una CPU che supporta slave DPV1 o PROFINET, con l'ausilio dell'SFB 54 "RALRM" è
possibile ottenere ulteriori informazioni sull'allarme oltre a quelle di avvio dell'OB. Ciò vale anche
quando il master DP viene utilizzato nei modi S7 compatibili.
Descrizione
Il sistema operativo della CPU richiama OB 87 ogni volta che si verifica un evento che identifica un
errore legato alla comunicazione.
Se l'OB 87 non è stato programmato e si verifica un evento di avvio per l'OB 87, la CPU si comporta
come segue:
• Una CPU S7-300 commuta nelllo stato di funzionamento STOP.
• Una CPU S7-400 commuta nelllo stato di funzionamento STOP.
L'OB di errore di comunicazione può essere disabilitato o ritardato e abilitato di nuovo con l'aiuto
delle SFC da 39 a 42.
Il tipo di blocco va rilevato da OB87_RESERVED_1 (B#16#88: OB, B#16#8A: DB, B#16#8C: FC,
B#16#8E: FB).
Descrizione
Il sistema operativo della CPU richiama l’OB 88 nel caso in caso di interruzione dell’elaborazione di
un modulo di programma. Le possibili cause di interruzione sono:
• Livello di annidamento eccessivo in caso di errori di sincronizzazione
• Livello di annidamento eccessivo di richiami di blocco (stack U)
• Errore di allocazione di dati locali
Se si verifica un’interruzione di elaborazione nel caso in cui l’OB 88 non sia programmato, la CPU
passa in modalità STOP (Evento W#16#4570).
La CPU passa in modalità STOP se l’interruzione di elaborazione si verifica nella classe di priorità
28.
L’OB di interruzione elaborazione può essere disabilitato o ritardato e abilitati di nuovo con l'aiuto
delle SFC da 39 a 42.
Descrizione
S7 offre il controllo di un tempo ciclo massimo e garantisce l'osservanza di un tempo ciclo minimo.
Se il tempo di esecuzione dell'OB 1, comprese tutte le esecuzioni di interrupt e le attività del sistema
annidate, è inferiore rispetto al tempo ciclo minimo assegnato
• il sistema operativo richiama l'OB di priorità bassa (se presente sulla CPU)
• il sistema operativo ritarda il successivo avviamento dell'OB 1 (se l'OB 90 non è presente sulla
CPU).
Avvertenza
In progettazioni in cui il tempo ciclo minimo ed il tempo di controllo ciclo sono molto vicini, quando
vengono richiamate le SFC e gli SFB è possibile che nell'OB di priorità bassa si verifichino
superamenti imprevisti del tempo ciclo.
Tipi di avviamento
Si distingue tra i tipi di avviamento seguenti:
• Riavviamento (non con S7-300 e S7-400H)
• Nuovo avviamento (avviamento a caldo).
• Avviamento a freddo
Dalla tabella seguente si può vedere quale OB viene richiamato dal sistema operativo
all'avviamento.
Informazioni più dettagliate sui tipi di avviamento sono riportate nei manuali "Programmazione con
STEP 7" e "Configurazione dell'hardware e progettazione dei collegamenti con STEP 7" e "Sistema
di automazione S7-400H".
Descrizione
Il sistema operativo della CPU richiama l'OB 121 ogni volta che viene rilevato un evento provocato
da un errore nell'elaborazione del programma. Per esempio, se nel programma viene rilevato un
blocco che non è stato caricato nella CPU, ciò determina il richiamo dell'OB 121.
Descrizione
Il sistema operativo della CPU chiama l'OB 122 ogni volta che viene rilevato un evento legato
all'accesso ai dati nelle unità. Per esempio, se la CPU rileva un errore di lettura nel tentativo di
accedere ai dati in un'unità di ingresso e di uscita, il sistema operativo chiama l'OB 122.
Avvertenza
Prima dell'analisi dei parametri di uscita specifici di una SFC è sempre opportuno procedere nel
modo seguente,
• analizzare per prima cosa il bit BIE della parola di stato.
• verificare infine il parametro di uscita RET_VAL
Se tramite il bit BIE venisse segnalata un'errata elaborazione della SFC oppure se in RET_VAL
fosse presente un codice di errore generale non è possibile analizzare il parametro di uscita specifico
della SFC.
Se,
Codice di errore, per esempio W#16#8081
15 8 7 0
1
X
Numero dell'evento o classe dell'errore e singolo
errore
Se x = 0" , si tratta di un codice di errore specifico di una SFC. Il codice di
errore specifico si trova nella descrizione delle singole SFC nel paragrafo
dedicato alle informazioni di errore
Se x > 0" si tratta di un codice di errore generale di una SFC. In questo caso
x è il numero del parametro della SFC che ha causato l'errore. I possibili
codici di errore generali si trovano nella siguiente tabella
8 7
Bit 15 0
1 numero di parametro numero di evento
segno
Avvertenza
Se è stato registrato un codice di errore generale nel RET_VAL,
• l'operazione relativa alla SFC può essere stata avviata o essere stata già completamente
eseguita.
• può essersi presentato un errore specifico della SFC durante l'operazione. A causa di un errore
generale supplementare, presentatosi successivamente, l'errore specifico non poteva più essere
indicato.
15 8 7 4 3 0
Bit
1 0 1 classe d'errore singolo errore
segno
Codice di Significato
errore
(W#16#...)
8x7F Errore interno.
Questo codice indica un errore interno al parametro x.
8x01 Identificazione sintassi non ammessa in uno parametro ANY-
8x22 Errore di dimensione nella lettura di un parametro.
8x23 Errore di dimensione nella scrittura di un parametro.
Questo codice indica che il parametro x si trova completamente o parzialmente al di fuori
dell'area di memoria di un operando oppure che la lunghezza di un campo di bit in un parametro
ANY non è divisibile per 8.
8x24 Errore di memoria nella lettura di un parametro.
8x25 Errore di memoria nella scrittura di un parametro.
Questo codice indica che il parametro x si trova in un'area di memoria non permessa alla
funzione di sistema. La descrizione delle singole funzioni riporta le aree di memoria non
permesse.
8x26 Il parametro contiene un numero di temporizzatore troppo grande.
Questo codice indica che il temporizzatore, dato nel parametro x, non è presente.
8x27 Il parametro contiene un numero di contatore troppo grande (errore numero contatore).
Questo codice indica che il contatore, dato nel parametro x, non è presente.
8x28 Errore di riferimento nella lettura di un parametro.
8x29 Errore di riferimento nella scrittura di un parametro.
Questo codice indica che il parametro x punta ad un operando, il cui indirizzo a bit è diverso da 0.
8x30 Il parametro si trova nel DB globale, protetto in scrittura.
8x31 Il parametro si trova nel DB di istanza, protetto in scrittura
Questo codice indica che il parametro x si trova in un blocco dati protetto in scrittura. Se il blocco
dati era stato aperto dalla funzione di sistema stessa, essa fornisce sempre il valore W#16#8x30.
8x32 Il parametro contiene un numero di DB troppo grande (errore numero DB).
8x34 Il parametro contiene un numero di FC troppo grande (errore numero FC).
8x35 Il parametro contiene un numero di FB troppo grande (errore numero FB).
Questo codice indica che il parametro x contiene un numero di blocco maggiore del massimo
numero di blocco ammesso.
8x3A Il parametro contiene il numero di un DB che non è stato caricato.
8x3C Il parametro contiene il numero di una FC che non è stato caricata.
8x3E Il parametro contiene il numero di un FB che non è stato caricato.
8x42 È avvenuto un errore di accesso, mentre il sistema voleva leggere un'area della periferia degli
8x43 ingressi.
È avvenuto un errore di accesso, mentre il sistema voleva scrivere un'area della periferia delle
uscite.
Codice di Significato
errore
(W#16#...)
8x44 Errore all'ennesimo (N > 1) accesso di lettura dopo che si è presentato un errore.
8x45 Errore all'ennesimo (N > 1) accesso di scrittura dopo che si è presentato un errore.
Questo codice indica che viene rifiutato l'accesso al parametro desiderato.
2.2 Significato dei parametri REQ, RET_VAL e BUSY nelle SFC che
lavorano in modo asincrono
La tabella seguente spiega per ogni SFC quali parametri di ingresso definiscono un job. Quando i
parametri qui indicati corrispondono ad un job non ancora concluso il richiamo SFC vale come
richiamo successivo.
Avvertenza
Se il primo e l'ultimo richiamo avvengono contemporaneamente, per RET_VAL e BUSY è valido
quanto detto per l'ultimo richiamo.
Avvertenza
Dopo ogni richiamo è necessario valutare i parametri di uscita rilevanti nel proprio programma.
Descrizione
Con la SFC 20 "BLKMOV" (block move) si copia il contenuto di un'area di memoria (= area
sorgente) in un'altra area di memoria (= area di destinazione).
Le aree sorgente consentite sono le seguenti:
• Parti di blocchi dati
• Merker
• Immagine di processo degli ingressi
• Immagine di processo delle uscite
Il parametro sorgente può trovarsi anche nella memoria di caricamento in un blocco dati non
rilevante per l'esecuzione del programma (DB che sono stati compilati con la parola chiave
UNLINKED).
Avvertenza
Se la CPU dell'utente è provvista di SFC 83, occorre utilizzarla per leggere i blocchi dati non rilevanti
per l'esecuzione nella memoria di caricamento. Se si utilizza la SFC 20 viene visualizzato il
messaggio di erorre W#16#8092.
DB10. DBW4 A B
DB10. DBW6 C D
DB10. DBW8 E F Copia
DB10. DBW10 G H
La copiatura
avviene in
direzione di
indirizzi crescenti
MW 10 A B
MW 12 C D
MW 14 E F
MW 16 G H
Area di memoria
Possibilità di interruzione
Fino a quando l'area sorgente non è parte di un blocco dati presente solo nella memoria di
caricamento, non esiste nessuna limitazione della profondità di annidamento.
In caso di interruzione di un'elaborazione della SFC 20, invece, durante la quale viene effettuata la
copiatura da un blocco dati non rilevante per l'esecuzione del programma, un'elaborazione simile
della SFC 20 non può essere più annidata.
Avvertenza
Se un DB non rilevante per l'esecuzione del programma viene copiato con l'SFC 20 BLKMOV nella
memoria di lavoro e contemporaneamente ricaricato, ad es. mediante PG, l'SFC può essere
ritardata di diversi millisecondi. Ciò causa un prolungamento del ciclo dell'OB e probabilmente la
reazione del controllo tempo di ciclo. Evitare di ricaricare questo blocco mentre la CPU copia questo
blocco con l'SFC 20.
Informazioni di errore
Descrizione
Con la SFC 81 "UBLKMOV" (uninterruptable block move) viene copiato il contenuto di un'area di
memoria (= area sorgente) in modo coerente in un'altra area di memoria (= area di destinazione). La
procedura di copia non può essere interrotta da altre attività del sistema operativo.
Con la SFC 81 "UBLKMOV" è possibile copiare tutte le aree di memoria eccetto:
• i blocchi seguenti: FB, SFB, FC, SFC, OB, SDB
• contatori
• temporizzatori
• aree di memoria dell'area della periferia
• blocchi dati non rilevanti per l'esecuzione.
La quantità max. di dati che si può copiare ammonta a 512 byte.
Osservare le limitazioni specifiche della CPU chesi possono ad es. prendere dall'elenco delle
operazioni.
Informazioni di errore
Descrizione
Con la SFC 21 "FILL" è possibile inizializzare un'area di memoria (area di destinazione) con il
contenuto di un'altra area di memoria (area sorgente). La SFC copia il contenuto nell'area di
destinazione assegnata, fino ad inizializzarla completamente.
FILL
A B MW 14 A B MW 100
C D MW 16 C D MW 102
BVAL
E F MW 18 E F MW 104
G H MW 20 G H MW 106
A B MW 108
BLK
C D MW 110
E F MW 112
G H MW 114
A B MW 116
C D MW 118
Eccezioni
Non sono ammessi come aree sorgente:
• Contatori
• Temporizzatori
Con la SFC 21 non è possibile scrivere valori in:
• seguenti blocchi: FB, SFB, FC, SFC, SDB
• contatori
• temporizzatori
• aree di memoria della periferia
Parametri
Informazioni di errore
La SFC 21 "FILL" non fornisce informazioni specifiche sugli errori ma soltanto generali. Vedere
Analisi degli errori con il parametro di uscita RET_VAL.
Descrizione
Con la SFC 22 "CREAT_DB" (create data block) è possibile creare un blocco dati nel programma
utente, che non contiene i valori inizializzati. Anziché questi valori vengono assegnati dati casuali. La
SFC crea un blocco dati con un numero compreso in un intervallo predefinito e con una dimensione
predefinita. La SFC assegna al DB il numero più piccolo possibile compreso nell'area data. Per
attribuire al DB un determinato numero occorre assegnare ai limiti massimi e minimi dell‘area lo
stesso valore, corrispondente al numero desiderato. Numeri di DB già utilizzati nel programma non
possono più venire assegnati. La lunghezza del DB deve essere un numero pari.
Possibilità di interruzione
La SFC "CREAT_DB" può essere interrotta da OB di più elevata priorità. Se, a sua volta, in un OB di
più elevata priorità viene richiamata una SFC 22 "CREAT_DB", questo richiamo viene respinto con il
codice di identificazione dell'errore W#16#8091.
Parametri
Informazioni di errore
Codice di Significato
errore
(W#16#...)
0000 Nessun errore
8091 La SFC 22 è stata richiamata annidata.
8092 La funzione "Creazione di blocchi dati" non è eseguibile al momento perché
• la funzione "Compressione della memoria utente" è attualmente attiva
• il numero dei DB presenti nella CPU ha già raggiunto il massimo valore consentito
• la CPU H è in fase di accoppiamento o aggiornamento
• la CPU del software WinAC ha rilevato un errore nel sistema operativo del computer sul
quale è stato installato WinAC
• la cancellazione precedente non è ancora terminata.
80A1 Errore nel numero del DB:
• il numero è 0
• il numero supera il numero massimo di DB ammesso per la CPU specifica
• limite inferiore > limite superiore
80A2 Errore nella lunghezza del DB:
• la lunghezza è 0
• la lunghezza è stata data come numero dispari
• la lunghezza è maggiore di quanto la CPU permetta
80B1 Nessun numero di DB è libero
80B2 La memoria libera a disposizione non è sufficiente
80B3 L'area di memoria contigua a disposizione non è sufficiente (comprimere la memoria!)
8xyy Informazione generale di errore, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
Con la SFC 23 "DEL_DB" (delete data block) è possibile cancellare un blocco dati presente nella
memoria di lavoro ed eventualmente nella memoria di caricamento della CPU. Il DB da cancellare
non deve essere aperto né nel livello di esecuzione attuale né in uno di priorità bassa. Ciò vuol dire
che non deve essere registrato né in uno dei due registri DB né in B-Stack, in quanto altrimenti la
CPU, al momento del richiamo della SFC 23, avvierebbe l'OB 121. Se l'OB 121 non è disponibile, la
CPU entra nello stato di STOP; nell'S7-300 (ad eccezione della CPU 318) la cancellazione del DB
avviene senza richiamo dell'OB 121.
Avvertenza
Cancellare DB di istanza con la SFC 23 "DEL_DB" non è un'operazione opportuna e comporta
sempre errori di programma. Evitare quindi di cancellare i DB di istanza con la SFC 23!
La tabella seguente spiega quando un blocco dati può essere cancellato con la SFC 23 "DEL_DB".
Possibilità di interruzione
La SFC 23 "DEL_DB" può essere interrotta da livelli di esecuzione di priorità più alta. Se poi la
SFC viene qui richiamata di nuovo, questo secondo richiamo viene interrotto e in RET_VAL viene
registrato W#16#8091.
Informazioni di errore
Codice di Significato
errore
(W#16#...)
0000 Nessun errore
8091 Nei richiami annidati della SFC 23 è stata superata la profondità di annidamento massima
delle CPU utilizzate.
8092 La funzione "Cancellazione di un DB" non è eseguibile al momento perché
• la funzione "Compressione della memoria utente" è attiva
• l'utente sta copiando il DB da cancellare dalla CPU in un progetto offline
• la CPU H è in fase di accoppiamento o aggiornamento
• la CPU del software WinAC ha rilevato un errore nel sistema operativo del computer sul
quale è stato installato WinAC
80A1 Errore nel parametro di ingresso DB_NUMBER: il parametro attuale selezionato
ha valore 0
è maggiore del numero di DB massimo ammesso per la CPU utilizzata
80B1 Il DB con il numero indicato non è presente nella memoria d lavoro della CPU.
80B2 Il DB con il numero indicato è stato creato con la parola chiave UNLINKED (soltanto
nell'S7-400).
80B3 Il DB si trova sulla flashcard.
80B4 Il DB non è stato cancellato perché
• fa parte di un programma F
• è un DB di istanza di un blocco dati della comunicazione S7 (solo per S7-400)
• è un DB tecnologico.
80C1 La funzione "Cancellazione di un DB" non è attualmente eseguibile per mancanza di risorse.
8xyy Informazione generale di errore, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
L'SFC 24 "TEST_DB" (test data block) consente di ottenere informazioni su un blocco dati contenuto
nella memoria di lavoro o di caricamento della CPU (S7-300) oppure informazioni su un blocco dati
contenuto nella memoria di lavoro della CPU (S7-400). L'SFC rileva il numero dei byte di dati per il
DB selezionato e verifica se il DB è protetto in scrittura.
Informazioni di errore
Codice di Significato
errore
(W#16#...)
0000 Nessun errore
80A1 Errore nel parametro di ingresso DB_NUMBER: il parametro attuale selezionato
ha il valore 0
è maggiore del numero di DB massimo ammesso per la CPU utilizzata
80B1 Il DB con il numero indicato non è presente nella CPU.
80B2 Il DB con il numero indicato è stato creato con la parola chiave UNLINKED.
8xyy Informazione generale di errore, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
Con la SFC 25 "COMPRESS" è possibile avviare la compressione sia della parte RAM della
memoria di caricamento che della memoria di lavoro. L'operazione di compressione è la stessa
come dopo un avvio esterno nello stato di funzionamento RUN-P (posizione del selettore dei modi
operativi).
Se la compressione è già attiva a causa di un avvio esterno, il richiamo della SFC 25 provoca una
visualizzazione di errore.
Informazioni di errore
Codice di Significato
errore
(W#16#...)
0000 Nessun errore. L'operazione di compressione è stata avviata dalla SFC 25. Solo in questo
caso è utile valutare tramite il programma utente (vedi sopra) i parametri di uscita BUSY e
DONE.
8091 L'operazione di compressione è già attiva a causa di un avvio esterno.
8092 La funzione "Avvio della compressione della memoria utente" non è eseguibile al momento
perché
• la funzione "Cancellazione blocchi" è attualmente attiva a causa di un avvio di STEP 7
• una funzione di test e di messa in servizio agisce al momento su un blocco (ad es. Stato)
• la funzione "Copiatura di blocchi" è attualmente attiva a causa di un avvio esterno
• la CPU H è in fase di accoppiamento o aggiornamento
8xyy Informazione generale di errore, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
Con la SFC 44 "REPL_VAL" (replace value) si può trasferire un valore nell'ACCU 1 del livello di
programma che ha causato l'errore.
Esempio applicativo
Nel caso in cui un'unità di ingresso è disturbata al punto tale che non è più possibile leggere alcun
valore, dopo ogni accesso a questa unità, viene avviato l'OB 122. Nell'OB 122 è possibile trasferire
nell'ACCU 1 del livello di programma interrotto un valore sostitutivo con l'ausilio della SFC 44, in
modo tale che il programma possa continuare ad operare con questo valore sostitutivo. Le
informazioni necessarie per la scelta di questo valore sostitutivo (ad es. il blocco in cui ha avuto luogo
l'errore, l'indirizzo interessato) vengono fornite dalle variabili locali dell'OB 122.
Parametri
Informazioni di errore
Codice di Descrizione
errore
(W#16#....)
0000 Nessun errore. È stato specificato un valore sostitutivo.
8080 La SFC 44 non è stata richiamata all'interno di un OB di errore di sincronismo (OB 121,
OB 122).
8xyy Informazione generale di errore, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
Con la SFC 82 "CREA_DBL" (create data block in load memory) si crea nella memoria di
caricamento (Micro Memory Card) un nuovo blocco dati. La SFC 82 crea un blocco dati con un
numero preso da un'area indicata e una dimensione predefinita. Dall'area indicata, la SFC 82
assegna al DB il numero più basso possibile. Per creare un DB con un determinato numero,
assegnare lo stesso numero al limite superiore e a quello inferiore dell'area da indicare. I numeri dei
DB già contenuti nel programma utente non si possono più assegnare. Se la memoria di lavoro e/o la
memoria di caricamento contengono già un DB con lo stesso numero o se questo esiste già come
variante copiata, la SFC viene conclusa mentre viene creata un'informazione d'errore.
Avvertenza
L'esistenza di un DB con lo stesso numero si può determinare con la SFC 24 "TEST_DB".
Il DB viene scritto con il contenuto dell'area di dati al quale fa riferimento il parametro SRCBLK
(source block). Questa area dati deve essere un DB o un'area di un DB. Per garantire la coerenza dei
dati, non è consentito modificare questa area dati nel corso dell'elaborazione della SFC 82 (vale a
dire finché il parametro BUSY ha il valore TRUE).
È possibile creare e inizializzare un DB con l'attributo READ_ONLY solo tramite SFC 82.
La SFC 82 non modifica la somma di controllo del programma utente.
Procedimento
La SFC 82 "CREA_DBL" è una SFC che lavora in modo asincrono, vale a dire che l'elaborazione si
estende per più richiami di SFC. Per avviare il job, richiamare la SFC 82 con REQ = 1.
Con i parametri di uscita RET_VAL e BUSY viene visualizzato lo stato del job.
Vedere anche Significato dei parametri REQ, RET_VAL e BUSY nelle SFC che lavorano in modo
asincrono
Informazioni di errore
Descrizione
Con la SFC 83 "READ_DBL" (read data block in load memory) è possibile copiare un DB o una parte
di un DB contenuto nella memoria di caricamento (Micro Memory Card) nell'area dati di un DB di
destinazione. Il DB di destinazione deve essere rilevante per l'esecuzione, vale a dire che non deve
essere stato creato con l'attributo UNLINKED. Il contenuto della memoria di caricamento non viene
modificato dall'operazione di copia.
Per garantire la coerenza dei dati, non è consentito modificare l'area di destinazione nel corso
dell'elaborazione della SFC 83 (vale a dire finché il parametro BUSY ha il valore TRUE).
Per i parametri SRCBLK (source block) e DSTBLK (destination block) valgono le seguenti limitazioni:
• Con un puntatore ANY del tipo BOOL, la lunghezza deve essere divisibile per 8.
• Con un puntatore ANY del tipo STRING, la lunghezza deve essere uguale a 1.
La lunghezza del DB sorgente può essere eventualmente determinata con la SFC 24 "TEST_DB".
Avvertenza
La SFC 83 viene elaborata in modo asincrono e non è adatta pertanto alla lettura frequente (ciclica)
di variabili nella memoria di caricamento.
Avvertenza
Una volta avviato, un job viene sempre portato a termine. Se si raggiunge il numero massimo di
SFC 83 attive contemporaneamente e si richiama allo stesso tempo la SFC 83 in una classe di
priorità maggiore, viene emesso il codice di errore W#16#80C3. Non è perciò opportuno riavviare
immediatamente il job con la priorità maggiore.
Procedimento
La SFC 83 "READ_DBL" è una SFC che lavora in modo asincrono, vale a dire che l'elaborazione si
estende per più richiami di SFC. Per avviare il job, richiamare la SFC 83 con REQ = 1.
Con i parametri di uscita RET_VAL e BUSY viene visualizzato lo stato del job.
Vedere anche Significato dei parametri REQ, RET_VAL e BUSY nelle SFC che lavorano in modo
asincrono
Informazioni di errore
Descrizione
Con la SFC 84 "WRIT_DBL" (write data block in load memory) è possibile trasferire il contenuto di un
DB o di un'area di un DB dalla memoria di lavoro in un DB o un'area di un DB nella memoria di
caricamento (Micro Memory Card). Il DB sorgente deve essere rilevante per l'esecuzione, vale a dire
che non deve essere stato creato con l'attributo UNLINKED. Esso può tuttavia essere stato creato
con la SFC 22 "CREAT_DB".
Per garantire la coerenza dei dati, non è consentito modificare l'area sorgente nel corso
dell'elaborazione della SFC 84 (vale a dire finché il parametro BUSY ha il valore TRUE)..
Per i parametri SRCBLK (soruce block) e DSTBLK (destination block) valgono le seguenti limitazioni:
• Con un puntatore ANY del tipo BOOL, la lunghezza deve essere divisibile per 8.
• Con un puntatore ANY del tipo STRING, la lunghezza deve essere uguale a 1.
La lunghezza del DB di destinazione può essere eventualmente determinata con la SFC 24
"TEST_DB".
La SFC 84 non modifica la somma di controllo del programma utente quando si scrive un DB creato
tramite SFC. Se si tratta di un DB caricato, invece, la prima scrittura nel DB modifica la somma di
controllo del programma utente.
Avvertenza
La SFC 84 non è adatta alla scrittura frequente (ciclica) di variabili nella memoria di caricamento
poiché la tecnologia della Micro Memory Card consente solamente un numero limitato di accessi in
scrittura. Vedere il manuale di riferimento "Sistemi di automazione SIMATIC S7-300, Configurazione
e dati della CPU: CPU 31xC e CPU 31x".
Procedimento
La SFC 84 "WRIT_DBL" è una SFC che lavora in modo asincrono, vale a dire che l'elaborazione si
estende per più richiami di SFC. Per avviare il job, richiamare la SFC 84 con REQ = 1.
Con i parametri di uscita RET_VAL e BUSY viene visualizzato lo stato del job.
Vedere anche Significato dei parametri REQ, RET_VAL e BUSY nelle SFC che lavorano in modo
asincrono
Informazioni di errore
Descrizione
Con la SFC 85 "CREA_DB" (create data block) è possibile creare nel programma utente un blocco
dati che non contiene valori preimpostati bensì dati casuali. La SFC crea un blocco dati con un
numero ripreso da un'area indicata e con dimensioni predefinite. Dall'area indicata, la SFC assegna
al DB il numero più basso possibile. Per creare un DB con un determinato numero occorre
assegnare lo stesso numero al limite inferiore e al limite superiore dell'area da predefinire. I numeri
dei DB già contenuti nel programma utente non sono più assegnabili. La lunghezza del DB deve
essere indicata con un numero pari.
A seconda del parametro ATTRIB scelto, il DB creato ha la proprietà RETAIN oppure NON_RETAIN:
• RETAIN (= a ritenzione) significa che il DB viene creato nell'area a ritenzione della memoria di
lavoro. In questo caso perciò i valori attuali del DB vengono mantenuti anche in caso di RETE
OFF/ON e in seguito a qualunque nuovo avviamento (a caldo).
• NON_RETAIN (= non a ritenzione) significa che il DB viene creato nell'area non a ritenzione
della memoria di lavoro. In questo caso perciò i valori attuali del DB saranno indefiniti in caso di
RETE OFF/ON e in seguito a qualunque nuovo avviamento (a caldo).
Se nella memoria di lavoro non esiste una suddivisione tra area a ritenzione e non, il parametro
ATTRIB viene ignorato e quindi i valori del DB vengono mantenuti in seguito a qualunque passaggio
RETE OFF/ON e a qualunque nuovo avviamento (a caldo).
Informazioni di errore
4.1 Retrigger del controllo tempo del ciclo con la SFC 43 "RE_TRIGR"
Descrizione
Con la SFC 43 "RE_TRIGR" (retrigger watchdog) si avvia di nuovo il controllo tempo del ciclo della
CPU.
Parametri
La SFC 43 "RE_TRIGR" non possiede parametri.
Informazioni di errore
La SFC 43 "RE_TRIGR" non fornisce alcuna informazione di errore.
Descrizione
Con la SFC 46 "STP" (stop) si conduce la CPU nello stato di funzionamento STOP.
Parametri
La SFC 46 "STP" non possiede parametri.
Informazioni di errore
La SFC 46 "STP" non fornisce alcuna informazione di errore.
Descrizione
Con la SFC 47 "WAIT" si possono programmare nel programma utente ritardi temporali o tempi di
attesa. È possibile programmare tempi di attesa fino a 32767 µs. Il tempo di attesa più breve
possibile dipende dalla particolare CPU e corrisponde al tempo di esecuzione della SFC 47.
Avvertenza
(solo per S7-300, ma non per la CPU 318)
Il tempo di ritardo programmato con la SFC 47 è un tempo minimo e si allunga del tempo di
esecuzione della classe di priorità annidata così come del carico del sistema!
Informazioni di errore
La SFC 47 "WAIT" non fornisce alcuna informazione di errore.
Descrizione
Nel funzionamento multicomputing il richiamo della SFC 35 "MP_ALARM" attiva l'allarme di
multicomputing. Di conseguenza su tutte le relative CPU avviene l'avvio sincronizzato dell'OB 60.
Nel funzionamento ad un processore e nel funzionamento nel telaio di montaggio segmentato
l'OB 60 viene avviato solo sulla CPU sulla quale è stata richiamata la SFC 35.
Con il parametro d'ingresso JOB è possibile contrassegnare la causa per l'allarme di multicomputing
desiderato. Questa identificazione di job viene trasmessa a tutte le CPU relative e può essere
analizzata nell'OB 60 (vedi /234/).
È possibile richiamare la SFC 35 "MP_ALM" in ogni punto del programma. Tuttavia, poiché il
richiamo ha senso solo nello stato di funzionamento RUN, l'allarme di multicomputing viene
soppresso nello stato di funzionamento AVVIAMENTO. Questo viene comunicato tramite un valore
di funzione.
Informazioni di errore
Avvertenza
Durante il tempo di sincronizzazione CiR le uscite sono congelate e gli ingressi non vengono
analizzati.
Parametri
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Il job è stato eseguito senza errori (questo codice di errore è ammesso solamente con MODE
=1 o MODE=2 o MODE=3.
0001 L’operazione CiR è abilitata (questo codice di errore è possibile solamente con MODE=0.)
0002 L’operazione CiR è completamente disabilitata (questo codice di errore è possibile
solamente con MODE=0.)
0003 L’operazione CiR è disabilitata in alcune circostanze (questo codice di errore è possibile
solamente con MODE=0.)
8001 La CPU non è pronta per un’operazione CiR. Utilizzare una CPU H nel sistema H
(funzionamento singolo) oppure lavorare con una CPU standard in funzionamento
multicomputing.
8xyy Informazione generale di errore, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
L’SFC 109 consente di impostare i seguenti livelli di protezione sulla CPU:
Avvertenza
L’SFC 109 "PROTECT" non consente di impostare un livello di protezione più basso di quello
progettato con STEP 7 "Configurazione Hardware".
Ad es.:
È stato progettato il livello di protezione 3 e successivamente richiamato l’SFC 109 con MODE=12.
Questo provoca un blocco dell’autorizzazione della password.
Richiamando nuovamente l’SFC 109 con MODE=0 o MODE=1 viene mantenuto il livello di
protezione 3 e la protezione in lettura e scrittura viene annullata immettendo la password valida.
Per ulteriori informazioni sull'efficacia del livello di protezione 2 e 3 dopo il richiamo dell'SFC 109,
consultare la lista parziale SZL con l'ID SZLW#16#0232 e l'indice W#16#0004.
Nota
Il livello di protezione della CPU viene indicato nella finestra di dialogo "Stato di funzionamento" di
SIMATIC Manager.
Effetti della commutazione del modo di funzionamento sul livello di protezione impostato
tramite l'SFC 109
Parametri
Informazione di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Il job è stato eseguito senza errori
8090 Valore non valido sul parametro MODE.
80C3 I mezzi operativi richiesti sono momentaneamente occupati.
Esempi applicativi
• Si intende proteggere la CPU nello stato di funzionamento RUN da qualsiasi accesso di lettura.
La rimozione della protezione deve avvenire esclusivamente impostando su STOP il selettore
dei modi operativi.
A tal fine nell'OB 100, richiamare l'SFC 109 con MODE = W#16#0001. In questo modo rimane
impostato il livello di protezione 2 anche dopo un nuovo avviamento (avviamento a caldo).
• Si intende, in funzione dallo stato di un ingresso o di una variabile comandata da un sistema di
servizio e supervisione, caricare un programma nella CPU senza dover commutare su STOp il il
selettore dei modi operativi.
Per eseguire quest'operazione, interrogare ciclicamente l'ingresso o la variabile interessati. In
presenza di un valore definito dell'ingresso o della variabile, richiamare l'SFC 109 tramite
MODE = W#16#0000. Successivamente è possibile caricare il programma nella CPU. Al
termine del caricamento richiamare l'SFC 109 tramite MODE = W#16#0001 per ripristinare il
livello di protezione 2.
• Si intende, in funzione dallo stato di un ingresso o di una variabile comandata da un sistema di
servizio e supervisione, impostare la protezione in scrittura e lettura sulla CPU.
Per eseguire quest'operazione, interrogare ciclicamente l'ingresso o la variabile interessati. In
presenza di un valore definito dell'ingresso o della variabile, richiamare l'SFC 109 tramite
MODE = W#16#000C. Successivamente la CPU è protetta in scrittura e lettura. Se si intende
riabilitare la CPU, richiamare l’SFC 109 con MODE = W#16#0000 e W#16#0001 per ripristinare
il livello di protezione originario.
Descrizione
Con il richiamo della SFC 0 "SET_CLK" (set system clock) si impostano l'ora e la data dell'orologio
della CPU. Esso inizia a girare a partire dall'ora e dalla data stabilite.
Se l'orologio è un orologio master, la CPU avvia inoltre, con il richiamo della SFC 0, la
sincronizzazione degli orologi. L'intervallo di sincronizzazione viene stabilito con STEP 7.
Data e ora
La data e l'ora vengono introdotte come tipi DT. Un esempio per il 15 Gennaio 1995, ore 10:30 e 30
secondi è : DT#1995-01-15-10:30:30.L'introduzione dell'ora è possibile solo in singoli secondi. Il
giorno della settimana viene calcolato della SFC "SET_CLK" in base alla data.
È possibile eseguire la formattazione del tipo di dati DT con la FC 3 "D_TOD_DT" (vedi Funzioni
temporali FC1, FC 3, FC 6, FC 7, FC 8, FC 33, FC 34, FC 35, FC 40.
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Nessun errore
8080 Errore nella data
8081 Errore nell'ora
8xyy Informazione generale di errore, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
Con la SFC 1 "READ_CLK" (read system clock) si legge l'orologio della CPU. In questo modo si
ricavano la data e l'ora attuali.
Informazioni di errore
Vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
La SFC 48 "SNC_RTCB" (synchronize real time clocks) permette di sincronizzare tutti gli orologi
slave presenti su un segmento di bus indipendentemente dall’intervallo di sincronizzazione
parametrizzato. Presupposto per effettuare la sincronizzazione è che la SFC 48 venga richiamata su
una CPU, il cui orologio in tempo reale è stato parametrizzato come orologio master per almeno un
segmento di bus. La parametrizzazione è stata eseguita con STEP 7.
Informazioni di errore
Descrizione
La SFC 100 "SET_CLKS" permette di impostare l'orologio della CPU dell'utente e il relativo stato.
Attenzione
Impiegare la SFC 100 soltanto se nella CPU dell'utente l'orologio non viene sincronizzato. In caso
contrario, a ogni sincronizzazione, viene ripreso lo stato dell'orologio master. Un valore predefinito
tramite SFC viene così sovrascritto.
Con il parametro MODE è possibile prestabilire se si desidera modificare solo l'orologio, solo lo stato
dell'orologio oppure entrambi i valori. La tabella seguente fornisce le informazioni necessarie.
MODE Significato
(B#16#...)
01 Impostazione dell'orologio
Il richiamo della SFC corrisponde a quello della SFC 0 "SET_CLK".
I parametri di ingresso CORR, SUMMER e ANN_1 non vengono analizzati.
02 Impostazione dello stato dell'orologio
Il parametro di ingresso PDT non viene analizzato. Dai restanti parametri di ingresso vengono
formati i seguenti elementi dello stato dell'orologio:
• Valore di correzione, incluso il segno +/-
• Ora di preavviso
• Indicazione dell'ora solare/legale
• La risoluzione dell'orologio viene impostata compatibilmente con quella della CPU. Il bit di
mancanza di sincronismo dello stato dell'orologio viene indicato con FALSE.
• L'ora resta invariata.
03 Impostazione dell'orologio e del relativo stato
Avvertenza
Lo stato dell'orologio della propria CPU può essere determinato leggendo l'ID SZL W#16#0132
indice W#16#0008 con la SFC 51 "RDSYSST".
Informazioni di errore
Introduzione
Le CPU dispongono di un certo numero di contatori del tempo di esercizio (vedere "Dati tecnici delle
CPU").
• Se la CPU è provvista di contatori del tempo di esercizio a 16 bit, con le SFC 2, 3 e 4 è possibile
impostare, avviare, arrestare e leggere tali contatori.
• Se la CPU è provvista di contatori del tempo di esercizio a 32 bit, con l’SFC 101 "RTM" è
possibile impostare, avviare, arrestare e leggere tali contatori.
Avvertenza
Le SFC 2, 3 e 4 possono essere utilizzate anche per contatori del tempo di esercizio a 32 bit. In
questo caso tuttavia i contatori del tempo di esercizio si comportano come contatori a 16 bit (campo
di validità da 0 a 32767 ore).
Vedi anche Set di dati dell'estratto della lista parziale con ID SZL W#16#0132 Indice W#16#000B.
Uso
Un contatore può essere usato per le applicazioni più disparate:
• calcolo della durata di esercizio della CPU
• calcolo della durata di esercizio delle apparecchiature di controllo.
Campo di validità
• CPU con contatori del tempo di esercizio a 16 bit: da 0 a 32 767 ore
• CPU con contatori del tempo di esercizio a 32 bit: da 0 a (2 elevato a 31esima potenza)
-1 ora= 2 147 483 647 ore
6.2 Gestione dei contatori del tempo di esercizio con la SFC 101
"RTM"
Descrizione
La SFC 101 "RTM" (run-time meter) permette di impostare, avviare, arrestare e leggere i contatori
del tempo di esercizio a 32 bit.
Per leggere tutti i contatori del tempo di esercizio a 32 bit della CPU, utilizzare la SFC 51 "RDSYSST"
con SZL_ID=W#16#0132 e INDICE=W#16#000B (per i contatori del tempo di esercizio da 0 a 7) o
INDICE=W#16#000C (per i contatori del tempo di esercizio da 8 a 15). (vedi anche Set di dati
dell'estratto della lista parziale con ID SZL W#16#0132 Indice W#16#000B..
Compatibilità con programmi concepiti per una CPU con contatori del tempo di esercizio a
16 bit
I contatori del tempo di esercizio a 32 bit possono essere utilizzati anche con le SFC 2 "SET_RTM",
3 "CTRL_RTM" e 4 "READ_RTM". In questo caso tuttavia questi contatori si comportano come
contatori a 16 bit (campo di validità da 0 a 32767 ore).
Nell’estratto della lista parziale con ID SZL-W#16#0132 e indice W#16#0008 i contatori del tempo di
esercizio da 0 a 7 vengono visualizzati come contatori a 16 bit. Questo consente di continuare ad
utilizzare programmi concepiti per una CPU con contatori del tempo di esercizio a 16 bit, e l’estratto
della lista parziale con ID SZL W#16#0132 e indice W#16#0008.
Informazioni di errore
Codice Spiegazione
errore
(W#16#...)
0000 Nessun errore
8080 Numero del contatore del tempo di esercizio errato
8081 È stato trasferito un valore negativo al parametro PV.
8082 Overflow del contatore del tempo di esercizio
8091 Il parametro di ingresso MODE contiene un valore non ammesso.
8xyy Informazione generale di errore, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
Con la SFC 2 "SET_RTM" (set run-time meter) si setta un contatore della CPU ad un valore
predefinito. Il numero dei contatori regolabili è specifico per la particolare CPU.
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Nessun errore
8080 Numero di contatore errato
8081 Al parametro PV è stato dato un valore negativo
8xyy Informazione generale di errore, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
Con la SFC 3 "CTRL_RTM" (control run-time meter) si avvia e si arresta un contatore del tempo di
esercizio.
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Nessun errore
8080 Errato numero di contatore
8xyy Informazione generale di errore, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
Con la SFC 4 "READ_RTM" (read run-time meter) si legge il valore di conteggio di un contatore. La
SFC 4 fornisce come parametri di uscita il numero di conteggio attuale e lo stato del contatore, cioè
"fermato" oppure "in conteggio".
Se il contatore supera la soglia di conteggio di 32767 ore, esso si blocca alla cifra di 32767 e fornisce
il messaggio di errore "Overflow".
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Nessun errore
8080 Numero errato del contatore delle ore di esercizio
8081 Overflow del contatore delle ore di esercizio
8xyy Informazione generale di errore, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
Con la SFC 64 "TIME_TCK" (time tick) si legge il tempo di sistema della CPU. Il tempo di sistema è
un "contatore di tempo", che conta ciclicamente tra 0 e un massimo di 2147483647 ms. Una volta
superato questo valore massimo il tempo di sistema torna al valore 0. Il clock e la precisione del
tempo di sistema sono di 1 ms. Il tempo di sistema viene influenzato unicamente dagli stati di
funzionamento della CPU.
Utilizzo
Il tempo di sistema può per esempio essere utilizzato per misurare la durata di operazioni mediante
la differenza dei risultati di due esecuzioni della SFC 64.
Informazioni di errore
La SFC 64 "TIME_TCK" non fornisce alcuna informazione di errore.
Principio
Esistono unità che dispongono di un campo dati di sistema, al quale è possibile accedere solo in
scrittura dal proprio programma. Questo campo contiene set di dati con i numeri da 0 fino a 240 al
massimo, e non ogni unità dispone di tutti i set di dati (vedere tabella seguente).
Inoltre le unità possono possedere anche un campo dati di sistema, al quale è possibile accedere
solo in lettura dal proprio programma. Questo campo contiene set di dati con i numeri da 0 a 240 al
massimo, e non ogni unità dispone di tutti i set di dati (vedere tabella seguente).
Avvertenza
Esistono unità che dispongono di entrambi i campi dati di sistema. Si tratta di campi a diversa
struttura fisica, che hanno in comune solo la suddivisione logica in set di dati.
Descrizione
Con la SFC 54 "RD_DPARM" (read defined parameter) il set di dati con il numero RECNUM
dell'unità indirizzata viene trasferito dai dati del sistema progettati con STEP7. Il set di dati letto viene
introdotto nel campo di destinazione indirizzato dal parametro RECORD.
Informazioni di errore
Vedere Parametrizzazione di unità con la SFC 57 "PARM_MOD".
Descrizione
Con la SFC 102 "RD_DPARA" è possibile leggere il set di dati con il numero RECNUM di un'unità
scelta dai dati del sistema progettati con STEP7. Il set di dati letto viene registrato nell'area di
destinazione aperta con il parametro RECORD.
Procedimento
La SFC 102 "RD_DPARA" è una SFC che lavora in modo asincrono, ciò significa che l'elaborazione
comprende più richiami della SFC. Il job viene avviato richiamando la SFC 102 con REQ = 1.
Con i parametri di uscita RET_VAL e BUSY viene visualizzato lo stato del job.
Vedere anche Significato dei parametri REQ, RET_VAL e BUSY nelle SFC che lavorano in modo
asincrono
Informazioni di errore
Vedere Parametrizzazione di unità con la SFC 57 "PARM_MOD"
Descrizione
Con la SFC 55 "WR_PARM" (write parameter) si trasferisce all'unità indirizzata il set di dati
RECORD. I parametri che vengono trasferiti all'unità non sovrascrivono i parametri generati con
STEP7.
Presupposti
Il set di dati da trasferire non può essere statico. (L'informazione relativa a quali set di dati di un'unità
sono statici può essere ricavata da /71/, /101/).
Informazioni di errore
Vedere Parametrizzazione di unità con la SFC 57 "PARM_MOD"
Avvertenza
(solo per S7-400)
Se si presenta l'errore generale W#16#8544, ciò indica solo che l'accesso ad almeno un byte
dell'area di memoria I/U contenente il set di dati era inibito. Il trasferimento dei dati è stato proseguito.
Descrizione
Con la SFC56 "WR_DPARM" (write default parameter) viene trasferito il set di dati con il numero
RECNUM dai dati di progettazione generati con STEP7 all'unità indirizzata. In tal caso non ha
importanza se i set di dati sono statici o dinamici.
Informazioni di errore
Vedere Parametrizzazione di unità con la SFC 57 "PARM_MOD".
Descrizione
Con la SFC 57 "PARM_MOD" (parametrize module) vengono trasferiti tutti i set di dati di un'unità,
che sono stati progettati con STEP 7, all'unità. In tal caso non ha importanza se i set di dati sono
statici o dinamici.
Informazioni di errore
Tra le informazioni di errore "vere" (codici di errore W#16#8xyz) si devono distinguere due casi:
• Errori temporanei (codici di errore da W#16#80A2 fino a 80A4, 80Cx):
con questo tipo di errore è possibile che l'errore stesso si risolva anche senza l'intervento esterno
cioè richiamando nuovamente la SFC (se necessario più volte).
Esempio di errore temporaneo: le apparecchiature necessarie sono momentaneamente
occupate (W#16#80C3).
• Errori permanenti (codici di errore W#16#809x, 80A1, 80Bx, 80Dx):
con questo tipo di errore non è possibile rimuovere l'errore senza intervento esterno. Un nuovo
richiamo della SFC è possibile solo quando l'errore è stato eliminato.
Esempio di errore permanente: la lunghezza del set di dati da trasferire è errata (W#16#80B1).
Avvertenza
Se si trasmettono set di dati con una delle SFC 55, 56 o 57 a uno slave DPV1 e quest'ultimo funziona
in modo DPV1, il master DP analizza l'informazione di errore ricevuta dallo slave nel modo seguente:
Se l'informazione di errore è compresa nei campi da W#16#8000 a W#16#80FF o da W#16#F000 a
W#16#FFFF, il master DP la inoltra alla SFC. Se invece non è compresa in questi campi, il master
DP fornisce il valore W#16#80A2 alla SFC e sospende lo slave.
Descrizione
Con la SFC 58 "WR_REC" (write record) si trasferisce il set di dati RECORD all'unità indirizzata.
L'operazione di scrittura viene avviata occupando il parametro di ingresso REQ con 1 al richiamo
della SFC 58. Se l'operazione di scrittura poteva essere eseguita immediatamente, la SFC fornisce il
valore di ritorno 0 sul parametro di uscita BUSY. Se BUSY ha il VALORE 1, l'operazione di scrittura
non è ancora terminata.
Avvertenza
Se uno slave DPV1 è stato progettato tramite file GSD (GSD dalla rev. 3) e l'interfaccia DP del
master DP è impostata su "Compatibile con S7", nel programma utente non è consentito scrivere set
di dati nelle unità degli ingressi e delle uscite con la SFC 58. Il master DP in questo caso indirizza il
posto connettore sbagliato (posto connettore progettato + 3).
Rimedio: reimpostare l'interfaccia del master DP su "DPV1".
Informazioni di errore
Vedere Lettura di set di dati con la SFC 59 "RD_REC"
Avvertenza
(solo per S7-400)
Se si presenta l'errore generale W#16#8544, ciò indica solo che l'accesso ad almeno un byte
dell'area di memoria I/U contenente il set di dati era inibito. Il trasferimento dei dati è stato proseguito.
Descrizione
Con la SFC 59 "RD_REC" (read record) si legge il set di dati con il numero RECNUM dall'unità
indirizzata. L'operazione di lettura viene avviata occupando il parametro di ingresso REQ con 1 al
richiamo della SFC 59. Se è stato possibile eseguire subito l'operazione di lettura, la SFC fornisce
sul parametro di uscita BUSY il valore 0. Quando BUSY ha valore 1 l'operazione di lettura non è
ancora terminata (vedi il capitolo 2.2). Il set di dati letto viene registrato nel campo di destinazione
aperto dal RECORD dopo un trasferimento dati senza errori.
Se il set di dati, il cui numero è maggiore di uno, viene letto da una FM o da un CP acquistati prima
del febbraio 1997 (di seguito indicati come "unità meno recenti"), la SFC 59 si comporterà in modo
differente rispetto a come si comporta in un'unità nuova. Questo caso particolare viene trattato nel
capitolo "Utilizzo di FM S7-300 e di CP S7-300 precedenti con numero DS > 1".
Avvertenza
Se si legge un set di dati, il cui numero è maggiore di uno, da una FM o da un altro CP che sono stati
acquistati prima del febbraio 1997, (di seguito definite "unità meno recenti"), la SFC 59 si comporta in
modo diverso rispetto ad una nuova unità. Questo caso particolare viene trattato nel capitolo "Utilizzo
di FM S7-300 e di CP S7-300 meno recenti con numero DS > 1".
Avvertenza
Se uno slave DPV1 è stato progettato tramite file GSD (GSD dalla rev. 3) e l'interfaccia DP del
master DP è impostata su "Compatibile con S7", nel programma utente non è consentito leggere set
di dati dalle unità degli ingressi e delle uscite con la SFC 59. Il master DP in questo caso indirizza il
posto connettore sbagliato (posto connettore progettato + 3).
Rimedio: reimpostare l'interfaccia del master DP su "DPV1".
Avvertenza
(solo per S7-400)
Se si presenta l'errore generale W#16#8745, ciò indica solo che durante l'operazione di scrittura
sull'immagine di processo l'accesso ad almeno un byte del campo di destinazione era inibito. Il set di
dati è stato letto regolarmente dall'unità e scritto nell'area di memoria I/O.
Avvertenza
Se si vuole essere certi che venga sempre letto tutto il set di dati, scegliere un campo di destinazione
con lunghezza di 241 byte. Se il trasferimento dei dati avviene in modo corretto in RET_VAL sarà
presente la reale lunghezza del set di dati.
Informazioni di errore
Tra le informazioni di errore "vere" (codici di errore W#16#8xyz) della tabella seguente si devono
distinguere due casi:
• Errori temporanei (codici di errore da W#16#80A2 fino a 80A4, 80Cx):
con questo tipo di errore è possibile che l'errore stesso si risolva anche senza l'intervento esterno
richiamando nuovamente la SFC (se necessario più volte).
Esempio di errore temporaneo: le apparecchiature necessarie (memoria, ecc.) sono
momentaneamente occupate (W#16#80C3).
• Errori permanenti (codici di errore W#16#809x, 80A1, 80Bx, 80Bx):
con questo tipo di errore non è possibile rimuovere l'errore senza intervento esterno. Un nuovo
richiamo della SFC è possibile solo quando l'errore è stato risolto.
Esempio di errore permanente: l'indicazione della lunghezza in RECORD è errata
(W#16#80B1).
Avvertenza
Se si trasmettono set di dati con la SFC 58 "WR_REC" a uno slave DPV1 o si leggono set di dati con
la SFC 59 "RD_REC" da uno slave DPV1 e quest'ultimo funziona in modo DPV1, il master DP
analizza l'informazione di errore ricevuta dallo slave nel modo seguente:
Se l'informazione di errore è compresa nei campi da W#16#8000 a W#16#80FF o da W#16#F000 a
W#16#FFFF, il master DP la inoltra alla SFC. Se invece non è compresa in questi campi, il master
DP fornisce il valore W#16#80A2 alla SFC e sospende lo slave. Per informazioni sulle informazioni di
errore provenienti dagli slave DPV1 consultare Allarme ricevuto da uno slave DP con l'SFB 54
"RALRM" STATUS[3].
Descrizione
L'SFB 81 "RD_DPAR" ("read device parameter") consente di leggere, dai dati di sistema progettati
con STEP 7, il set di dati con il numero INDEX del componente indirizzato. Si può trattare di un'unità
inserita a livello centrale o di un componente impiegato a livello decentrato (PROFIBUS DP o
PROFINET IO).
Il valore TRUE del parametro di uscita VALID indica che il set di dati è stato trasferito senza errori
nell'area di destinazione RECORD. In questo caso al parametro di uscita LEN viene assegnata la
lunghezza in byte dei dati letti.
Un eventuale errore che si dovesse verificare nel corso del trasferimento del set di dati viene
visualizzato con il parametro di uscita ERROR. In questo caso il parametro di uscita STATUS
contiene l'informazione di errore.
Funzionamento
L'SFB 81 "RD_DPAR" è un SFB con funzionamento asincrono, vale a dire che l'elaborazione si
estende su diversi richiami di SFB. Il trasferimento del set di dati si avvia richiamando l'SFB 81 con
REQ = 1.
Con il parametro di uscita BUSY e i byte 2 e 3 del parametro di uscita STATUS viene visualizzato lo
stato dell'ordine. I byte 2 e 3 di STATUS corrispondono al parametro di uscita RET_VAL delle
SFC asincrone (vedere anche Significato dei parametri REQ, RET_VAL e BUSY nelle SFC che
lavorano in modo asincrono).
Il trasferimento del set di dati può considerarsi concluso dopo che il parametro di uscita BUSY ha
assunto il valore FALSE.
Parametri
Informazioni di errore
Vedere anche Parametrizzazione di unità con la SFC 57 "PARM_MOD".
Avvertenza
L'interfaccia dell'SFB 52 "RDREC" è identica a quella dell'FB "RDREC" definito nella norma
"PROFIBUS Guideline PROFIBUS Communication and Proxy Function Blocks according to
IEC 61131-3".
Descrizione
L'SFB 52 "RDREC" (read record) consente la lettura del set di dati con il numero INDEX del
componente indirizzato tramite ID. Si può trattare di un'unità inserita a livello centrale oppure di un
componente della periferia decentrata (PROFIBUS DP oppure PROFINET IO).
Con MLEN è possibile predefinire il numero massimo di byte da leggere. Per questo motivo è
preferibile scegliere un'area di destinazione RECORD di almeno "MLEN" byte.
Il valore TRUE del parametro di uscita VALID indica che il set di dati è stato trasferito nell'area di
destinazione RECORD con successo. In questo caso, il parametro di uscita LEN avrà la lunghezza
dei dati letti in byte.
Se durante il trasferimento del set di dati si verifica un errore, questo viene visualizzato dal parametro
di uscita ERROR. Il parametro di uscita STATUS contiene in questo caso l'informazione di errore.
Avvertenza
Se uno slave DPV1 è stato progettato tramite file GSD (GSD dalla rev. 3) e l'interfaccia DP del
master DP è impostata su "Compatibile con S7", nel programma utente non è possibile leggere dalle
unità degli ingressi e delle uscite set di dati con l'SFB 52. Il master DP in questo caso indirizza il
posto connettore sbagliato (posto connettore progettato + 3).
Rimedio: reimpostare l'interfaccia del master DP su "DPV1".
Procedimento
L'SFB 52 "RDREC" è un SFB che opera in modo asincrono, vale a dire che l'elaborazione si estende
per più richiami di SFB. Avviare il trasferimento del set di dati richiamando l'SFB 52 con REQ = 1.
Nel parametro di uscita BUSY e nei due byte intermedi del parametro di uscita STATUS viene
visualizzato lo stato dell'ordine. In questo caso, i due byte intermedi del parametro STATUS
corrispondono al parametro di uscita RET_VAL delle SFC asincrone (vedere anche Significato dei
parametri REQ, RET_VAL e BUSY nelle SFC asincrone).
Il trasferimento del set di dati è concluso quando il parametro di uscita BUSY assume il valore
FALSE.
Finché la trasmissione del set di dati è in corso, l’area di destinazione non deve essere modificata,
ciò vale sia per la sua lunghezza che per il suo contenuto.
Avvertenza
Impiegando l'SFB 52 per la lettura di un set di dati in PROFINET IO, i valori negativi nei parametri
INDEX, MLEN e LEN vengono interpretati come numeri interi senza segno a 16 bit.
Informazioni di errore
Per l'interpretazione del parametro STATUS vedere Ricezione di un allarme con l'SFB 54 "RALRM"
Avvertenza
L'interfaccia dell'SFB 53 "WRREC" è identica a quella dell'FB "WRREC" definito nella norma
"PROFIBUS Guideline PROFIBUS Communication and Proxy Function Blocks according to
IEC 61131-3".
Descrizione
L'SFB 53 "WRREC" (write record) consente la trasmissione del set di dati RECORD al componente
indirizzato tramite ID. Si può trattare di un'unità inserita a livello centrale oppure di un componente
della periferia decentrata (PROFIBUS DP oppure PROFINET IO).
Con LEN è possibile predefinire la lunghezza del set di dati da trasferire in byte. Per questo motivo è
preferibile scegliere un'area sorgente RECORD di almeno "LEN" byte.
Il valore TRUE del parametro di uscita DONE indica che il set di dati è stato trasferito con successo.
Se durante il trasferimento del set di dati si verifica un errore, questo viene visualizzato dal parametro
di uscita ERROR. Il parametro di uscita STATUS contiene in questo caso l'informazione di errore.
Avvertenza
Se uno slave DPV1 è stato progettato tramite file GSD (GSD dalla rev. 3) e l'interfaccia DP del
master DP è impostata su "Compatibile con S7", nel programma utente non è possibile scrivere nelle
unità degli ingressi e delle uscite set di dati con l'SFB 53. Il master DP in questo caso indirizza il
posto connettore sbagliato (posto connettore progettato + 3).
Rimedio: reimpostare l'interfaccia del master DP su "DPV1".
Procedimento
L'SFB 53 "WRREC" è un SFB che opera in modo asincrono, vale a dire che l'elaborazione si estende
per più richiami di SFB. Avviare il trasferimento del set di dati richiamando l'SFB 53 con REQ = 1.
Nel parametro di uscita BUSY e nei due byte intermedi del parametro di uscita STATUS viene
visualizzato lo stato dell'ordine. In questo caso, i due byte intermedi di STATUS corrispondono al
parametro di uscita RET_VAL delle SFC asincrone (vedere anche Significato dei parametri REQ,
RET_VAL e BUSY nelle SFC asincrone).
Assicurarsi di aver assegnato al parametro attuale RECORD lo stesso valore per tutti gli ordini
appartenenti allo stesso ordine dell'SFB 53. Lo stesso vale per i parametri attuali di LEN.
Il trasferimento del set di dati è concluso quando il parametro di uscita BUSY assume il valore
FALSE.
Avvertenza
Impiegando l'SFB 53 per la scrittura di un set di dati in PROFINET IO, i valori negativi nei parametri
INDEX e LEN vengono interpretati come numeri interi senza segno a 16 bit.
Informazioni di errore
Per l'interpretazione del parametro STATUS vedere Ricezione di un allarme con l'SFB 54 "RALRM"
Avvertenza
L'interfaccia dell'SFB 54 "RALRM" è identica a quella dell'FB "RALRM" definito nella norma
"PROFIBUS Guideline PROFIBUS Communication and Proxy Function Blocks according to
IEC 61131-3".
Descrizione
L'SFB "RALRM" riceve un allarme con la relativa informazione da un'unità di periferia
(configurazione centrale) o da un componente di uno slave DP o di un PROFINET IO Device e mette
questa informazione a disposizione dei suoi parametri di uscita.
L'informazione nei parametri di uscita contiene sia le informazioni di avvio dell'OB richiamato che
quelle della sorgente dell'allarme.
Richiamare l'SFB 54 soltanto all'interno dell'OB di allarme avviato dal sistema operativo della CPU in
base all'allarme della periferia da verificare.
Avvertenza
Richiamando l'SFB 54 "RALRM" in un OB il cui evento di avvio non è un allarme della periferia,
l'SFB fornisce, nelle uscite, proporzionalmente meno informazioni.
Assicurarsi che, con il richiamo dell'SFB 54 "RALRM", vengano utilizzati diversi DB di istanza in
diversi OB. Se si analizzano i dati risultanti da un richiamo dell'SFB 54 al di fuori dell'OB di allarme
corrispondente, è persino necessario utilizzare un DB di istanza per ciascun evento di avvio di un
OB.
Richiamo dell'SFB 54
L'SFB 54 "RALRM" può essere richiamato in tre diversi tipi di funzionamento (MODE), che sono
elencati nella tabella seguente.
Attenzione
Se l'area di destinazione TINFO o AINFO scelta è troppo piccola, l'SFB 54 non è in grado di
registrare l'intera informazione.
Byte Significato
0 … 19 Informazione di avvio dell'OB nel quale attualmente è stato richiamato l'SFB 54
20 e 21 Indirizzo, descrizione dettagliata v. oltre
22 … 31 Informazione dell'amministrazione, descrizione dettagliata v. oltre
25 BYTE centrale: • 0
decentrato: Flag dell'interfaccia slave PROFIBUS DP
• Bit 0: EXT_DIAG_FLAG dal telegramma di diagnostica o 0 se
questo bit non è disponibile nell'allarme.
Il bit è 1 se lo slave DP è guasto.
• Bit 1 ... 7: Riservato
Flag dell'interfaccia PROFINET IO Controller
• Bit 0: ARDiagnosisstate oppure 0 se nell'allarme non è
disponibile alcuna informazione.
Il bit è 1 se l'IO Device è guasto.
• Bit 1 ... 7: Riservato
Struttura dei dati dell'area di destinazione AINFO con allarmi PROFIBUS DP o periferia centrale
I dati relativi a PROFINET IO sono indicati oltre.
Byte Significato
0 ... 3 Informazione dell'intestazione, per la descrizione dettagliata v. oltre
4 ... 199 Informazione supplementare dell'allarme: dati del rispettivo allarme:
centrale: ARRAY[0] ... ARRAY[195]
decentrato: ARRAY[0] ... ARRAY[59]
BYTE
decentrato: Specifier
Bit 0 e 1: 0: nessuna ulteriore informazione;
1: evento entrante, posto connettore guasto
2: evento uscente, posto connettore non più
guasto
3: evento uscente, posto connettore ancora
guasto
Bit 2: Add_Ack
Bit 3 ... 7: Numero sequenziale
Byte Significato
0 ... 25 Informazione dell'intestazione, per la descrizione dettagliata v. oltre
18 ... 1431 Informazione supplementare dell'allarme: dati di diagnostica standard del rispettivo allarme:
ARRAY[0] ... ARRAY[1405]
Avvertenza: l'informazione supplementare dell'allarme può essere tralasciata.
Avvertenza
La parte che si estende da "Numero di canale" a "Tipo di errore" può presentarsi da 0 a n volte.
Avvertenza
La parte a partire da "Tipo di blocco" può presentarsi da 1 a n volte.
Byte Significato
0…1 ID del formato W#16#8002
2…3 Numero di canale
4…5 Proprietà del canale
6…7 Tipo di errore
8…9 Valore supplementare dell'errore
10 … 13 Informazione supplementare di errore
Byte Significato
0…1 ID del formato W#16#8003
2…3 Numero di canale
4…5 Proprietà del canale
6…7 Tipo di errore
8…9 Valore supplementare dell'errore
10 … 13 Informazione supplementare di errore
14 … 17 Qualified Channel Qualifier
Byte Significato
0…1 ID del formato W#16#8100
2…3 Tipo di blocco
4…5 Lunghezza del blocco
6…7 Versione blocco
8…9 Riservato
10 … 13 Stato di manutenzione
Avvertenza
Per informazioni più dettagliate sulla configurazione dell'informazione di stato dell'allarme,
consultare il manuale di programmazione SIMATIC PROFINET IO Migrazione da PROFIBUS DP a
PROFINET IO e la Norma IEC 61158-6-10-1 aggiornata .
Informazioni di errore
Il parametro di uscita STATUS contiene informazioni di errore. Se viene interpretato come
ARRAY[1...4] OF BYTE, l'informazione di errore avrà la seguente struttura:
STATUS[4] viene trasmesso in caso di errori DPV1 dal master DP alla CPU e all'SFB. Senza errori
DPV1, il valore viene impostato a 0 con le eccezioni seguenti negli SFB 52 e 53:
• STATUS[4] contiene la lunghezza dell'area di destinazione di RECORD, con lunghezza
LEN > lunghezza dell'area di destinazione di RECORD
• STATUS[4]=LEN con lunghezza effettiva del set di dati < LEN < lunghezza dell'area di
destinazione di RECORD.
• STATUS[4]=0, se fosse necessario impostare STATUS[4] > 255.
• Negli errori DPV1 o PNIO l’elemento protocollo viene trasferito (0xDE, xx, xx, xx) o (0xDF, xx, xx,
xx). Per gli errori generati internamente (0xC0, xx, xx, xx), nei quali cioè manca un elemento
protocollo, l’ultimo byte è uguale a zero.
Avvertenza
L'interfaccia dell'SFB 75 "SALRM" è identica a quella dell'FB "SALRM" definito nella norma
"PROFIBUS Guideline PROFIBUS Communication and Proxy Function Blocks according to
IEC 61131-3".
Descrizione
Con l'SFB 75 "SALRM" il programma utente dello slave intelligente invia al master DP un allarme
proveniente da un posto connettore situato nell'area di trasferimento (posto connettore virtuale). Nel
master DP viene avviato l'OB corrispondente.
L'allarme può essere corredato di informazioni supplementari specifiche, leggibili nel master DP con
l'SFB 54 "RALRM".
L'SFB 75 è utilizzabile soltanto nel modo "compatibile con S7".
Metodo di lavoro
L'SFB 75 "SALRM" è un SFB operante in modo asincrono, ciò significa che l'elaborazione
comprende più richiami dell'SFB. La trasmissione dell'allarme viene avviata richiamando l'SFB 75
con REQ = 1.
La procedura di trasmissione rimane attiva fino a quando l'elaborazione dell'allarme viene
confermata o interrotta dal master DP.
Il parametro di uscita BUSY e i byte 2 e 3 del parametro di uscita STATUS permettono di visualizzare
lo stato dell'ordine. I byte 2 e 3 di STATUS corrispondono al parametro di uscita RET_VAL delle
SFC asincrone (vedere anche Significato dei parametri REQ, RET_VAL e BUSY nelle
SFC asincrone).
La trasmissione dell'allarme è conclusa quando il parametro di uscita BUSY assume il valore FALSE.
Identificazione dell'ordine
Se con l'SFB 75 viene attivato l'invio di un allarme al master DP e l'utente richiama nuovamente
l'SFB prima della conclusione dell'ordine in corso, la reazione dell'SFB dipende dalla possibilità che il
nuovo richiamo riguardi lo stesso ordine o meno.
Se i parametri ID e ATYPE coincidono con un ordine non ancora concluso, il richiamo dell'SFB vale
come richiamo successivo.
Parametro ATYPE
La seguente tabella indica, per ogni valore di ATYPE consentito, l'OB richiamato nel relativo master
DP ed il modo DP che permette il tipo di allarme.
Avvertenza
Oltre a quanto riportato nella tabella, la possibilità di utilizzare i diversi tipi di allarme dipende anche
dal master DP.
Parametro ASPEC
Questo parametro visualizza conformemente alla norma lo stato della diagnostica del posto
connettore virtuale. Per questo motivo è consentito assegnare ad ASPEC un valore diverso da 0
soltanto se si invia un allarme di diagnostica.
Poiché nelle informazioni di allarme supplementari S7 dell'allarme di diagnostica (set di dati 0) è
presente un'informazione di evento entrante / uscente (vedere Dati di diagnostica byte 0 bit 0), nel
byte 0 delle informazioni di allarme supplementari vanno assegnati al bit 0 (guasto all'unità) i
seguenti valori:
Parametro LEN
In LEN viene indicata la lunghezza in byte delle informazioni di allarme supplementari da inviare.
L'area di valori consentita va da 0 a 16.
La tabella seguente indica i valori di LEN consentiti per i diversi tipi di allarme nei modi operativi
assunti dallo slave intelligente.
La tabella seguente descrive la reazione dell'SFB 75 quando si assegna a LEN un valore diverso
dalla lunghezza di AINFO in BYTE.
Parametro AINFO
AINFO è l'area sorgente per le informazioni di allarme supplementari. Per quanto riguarda lo slave
intelligente, a quest'area può essere assegnato qualsiasi valore; tuttavia, se si utilizza un master S7
le informazioni supplementari inviate devono corrispondere agli standard S7.
Se si invia un allarme di diagnostica (ATYPE=1), occorre provvedere ad un'occupazione corretta
del set di dati 0 ed eventualmente del set di dati 1.
La tabella seguente riporta un esempio di occupazione conforme ad S7. Il bit "Guasto all'unità" (v.
sopra) è già impostato; fatta eccezione per tale bit, l'esempio corrisponde all'occupazione di default
(che si verifica dopo RETE ON, a seguito di un passaggio dello slave intelligente da STOP a RUN
oppure dopo un ritorno di stazione):
Effetti del richiamo dell'SFB 75 sulle informazioni di stato delle unità e sul LED di errore
cumulativo (SF)
Come accade per ogni CPU, anche lo slave intelligente memorizza le proprietà dei propri posti
connettore nell'informazione sullo stato delle unità (vedere SZL-ID W#16#xy91 - Informazione sullo
stato delle unità ).
Se si invia un allarme di diagnostica mediante SFB 75, il sistema operativo dello slave intelligente
modifica le informazioni locali dello slave sullo stato delle unità e influisce sul LED SF in dipendenza
del bit 0 nel byte 0 di AINFO (questo bit viene acquisito come "Unità guasta" nell'informazione di
stato). Nello slave intelligente non viene tuttavia effettuata alcuna registrazione nel buffer di
diagnostica e non viene avviato nessun OB di allarme di diagnostica.
Coerenza dell'informazione sullo stato delle unità tra master DP e slave intelligente
Nel seguito vengono illustrate diverse situazioni possibili e le loro conseguenze per l'informazione
sullo stato delle unità.
• Ritorno di stazione (conseguenza: attivazione dell'OB 86 nel master DP e nello slave
intelligente).
Sia nello I-slave che nel master S7 l'informazione sullo stato delle unità viene modificata (il bit
"Unità guasta" viene resettato). Se dopo il ritorno della stazione l'utente riscontra delle anomalie
nello I-slave, queste devono essere comunicate al master DP richiamando l'SFB 75.
• Passaggio da STOP a RUN del master DP (conseguenza: attivazione dell'OB 82 nello slave
intelligente).
L'informazione sullo stato delle unità nello I-slave non viene modificata. Il master DP resetta il bit
"Unità guasta" nella relativa informazione sullo stato delle unità.
Per garantire la coerenza dell'informazione sullo stato delle unità tra master DP e slave
intelligente nel modo "compatibile con S7" occorre intervenire sullo I-slave nel seguente modo:
- per ogni posto connettore virtuale senza guasti, inviare al master DP un allarme di
diagnostica uscente mediante SFB 75
- per ogni posto connettore virtuale guasto, inviare al master DP un allarme di diagnostica
entrante mediante SFB 75.
• Passaggio delle slave intelligente da STOP a RUN (conseguenza: attivazione dell'OB 82 nel
master DP).
L'informazione sullo stato delle unità nel master DP non viene modificata, quella dello slave
intelligente viene resettata (reset del bit "Unità guasta").
Per garantire la coerenza dell'informazione sullo stato delle unità tra master DP e slave
intelligente occorre intervenire sullo I-slave nel seguente modo:
- per ogni posto connettore virtuale senza guasti, inviare al master DP un allarme di
diagnostica uscente mediante SFB 75
- per ogni posto connettore virtuale guasto, inviare al master DP un allarme di diagnostica
entrante mediante SFB 75.
Avvertenza
Poiché l'SFB 75 funziona in modo asincrono, i richiami dell'SFB 75 negli OB di avviamento non
possono essere interrotti; essi devono essere portati a termine all'interno del programma ciclico.
Avvertenza
Le differenze tra l'informazione sullo stato delle unità nel master DP e quella nello slave intelligente
descritte sopra possono verificarsi soltanto nei posti connettore per i quali sono stati inviati al master
DP allarmi di diagnostica mediante SFB 75. Di conseguenza, i rimedi consigliati sono necessari
soltanto per tali posti connettore.
Informazioni di errore
Il parametro di uscita STATUS contiene informazioni di errore. Se viene interpretato come
ARRAY[1 ... 4] OF BYTE, le informazioni di errore hanno la seguente struttura:
Descrizione
Un I Device può ricevere un set di dati dal Controller di livello superiore. La ricezione si svolge nel
programma utente con l'SFB 73 "RCVREC" (receive record).
L'SFB 73 ha i seguenti modi di funzionamento:
• controlla se nell'I Device è presente una richiesta di ricezione di un set di dati
• mette il set di dati a disposizione nei parametri di uscita
• invia una risposta al Controller di livello superiore.
Il modo di funzionamento dell'SFB 73 si definisce con il parametro di ingresso MODE (vedere oltre).
L'I Device deve trovarsi in stato di funzionamento RUN o AVVIAMENTO.
Con MLEN è possibile definire il numero max. di byte da ricevere. L'area di destinazione RECORD
perciò deve essere scelta con una lunghezza che sia almeno pari ai byte di MLEN.
Dopo la ricezione di un set di dati (MODE=1 o MODE=2), il parametro di uscita NEW indica che il set
di dati è stato salvato in RECORD. Assicurarsi perciò che la lunghezza di RECORD sia sufficiente. Il
parametro di uscita LEN contiene la lunghezza effettiva del set di dati ricevuto in byte.
Per la risposta positiva da inviare al Controller di livello superiore scrivere zero in CODE1 e CODE 2.
Qualora il set di dati ricevuto dovesse essere respinto, indicare in CODE1 il codice di errore 1 e in
CODE2 il codice di errore 2 per indicare la risposta negativa al Controller superiore.
Avvertenza
Se l'I Device ha ricevuto una richiesta di ricezione di un set di dati, l'inoltro di questa richiesta deve
essere riconosciuto entro un determinato intervallo di tempo. Dopo il riconoscimento è necessario
che al Controller superiore venga inviata una risposta entro lo stesso intervallo di tempo. In caso
contrario nell'I Device si verifica un errore di timeout in seguito al quale il sistema operativo dell'I
Device invia una risposta negativa al Controller di livello superiore. Il valore per l'intervallo di tempo è
indicato nei dati tecnici della CPU.
Dopo che si è verificato un errore il parametro di uscita STATUS contiene l'informazione di errore.
MODE Significato
0 Viene verificata l'eventuale presenza di una richiesta di ricezione di un set di dati
Se nell'I Device è presente un set di dati del Controller di livello superiore, l'SFB 73 scrive solo i
parametri di uscita NEW, SLOT, INDEX e LEN. Se si richiama l'SFB 73 più volte consecutivamente
con MODE=0, i parametri di uscita si riferiscono sempre solo alla stessa richiesta.
1 Ricezione di un set di dati per un qualunque subslot dell'I Device
Se nell'I Device è presente un set di dati del Controller di livello superiore per un qualsiasi subslot
dell'I Device, l'SFB 73 scrive i parametri di uscita e trasferisce il set di dati nel parametro RECORD.
2 Ricezione di un set di dati per un determinato subslot dell'I Device
Se nell'I Device è presente un set di dati del Controller di livello superiore per un determinato subslot
dell'I Device, l'SFB 73 scrive i parametri di uscita e trasferisce il set di dati nel parametro RECORD.
3 Invio di una risposta positiva al Controller di livello superiore
L'SFB 73 controlla la richiesta di ricezione di un set di dati del Controller superiore, accetta il set di dati
e invia una conferma positiva al Controller superiore.
4 Invio di una risposta negativa al Controller di livello superiore
L'SFB 73 controlla la richiesta di ricezione di un set di dati del Controller superiore, respinge il set di
dati e invia una conferma negativa al Controller superiore. La ragione del rifiuto va indicata nei
parametri di ingresso CODE1 e CODE2.
Avvertenza
Dopo l'arrivo di un set di dati (NEW=1) è necessario richiamare ancora due volte l'SFB 73 per
garantire un'elaborazione completa. Attenersi al seguente ordine:
• primo richiamo con MODE=1 o MODE=2
• secondo richiamo con MODE=3 o MODE=4
Informazioni di errore
Per l'interpretazione del parametro STATUS vedere Ricezione di un allarme con l'SFB 54 "RALRM"
Descrizione
Un I Device può ricevere da parte del Controller di livello superiore una richiesta di messa a
disposizione di un set di dati. La messa a disposizione si svolge nel programma utente con
l'SFB 74 "PRVREC" (provide record).
L'SFB 74 ha i seguenti modi di funzionamento:
• controlla se nell'I Device è presente una richiesta di messa a disposizione di un set di dati
• trasferisce il set di dati richiesto al Controller superiore
• invia una risposta al Controller di livello superiore.
Il modo di funzionamento dell'SFB 74 si definisce con il parametro di ingresso MODE (vedere oltre).
L'I Device deve trovarsi in stato di funzionamento RUN o AVVIAMENTO.
Con LEN è possibile definire il numero max. di byte che può avere il set di dati da inviare. L'area di
destinazione RECORD perciò deve essere scelta con una lunghezza che sia almeno pari ai byte di
LEN.
Se è presente una richiesta di messa a disposizione di un set di dati (MODE=0), il parametro di uscita
NEW viene impostato a TRUE.
Se la richiesta di messa a disposizione del set di dati viene accettata, scrivere il set di dati richiesto in
RECORD e zero sia in CODE1 che in CODE 2 per indicare la risposta positiva da inviare al Controller
di livello superiore. Qualora la richiesta venisse respinta indicare in CODE1 il codice di errore 1 e in
CODE2 il codice di errore 2 per indicare la risposta negativa al Controller superiore.
Avvertenza
Se l'I Device ha ricevuto una richiesta di messa a disposizione di un set di dati, l'inoltro di questa
richiesta deve essere riconosciuto entro un determinato intervallo di tempo. Dopo il riconoscimento è
necessario che al Controller superiore venga inviata una risposta entro lo stesso intervallo di tempo.
In caso contrario nell'I Device si verifica un errore di timeout in seguito al quale il sistema operativo
dell'I Device invia una risposta negativa al Controller di livello superiore. Il valore per l'intervallo di
tempo è indicato nei dati tecnici della CPU.
Dopo che si è verificato un errore il parametro di uscita STATUS contiene l'informazione di errore.
MODE Significato
0 Viene verificata l'eventuale presenza di una richiesta di messa a disposizione di un set di dati
Se nell'I Device è presente una richiesta di messa a disposizione di un set di dati del Controller di
livello superiore, l'SFB 74 scrive solo i parametri di uscita NEW, SLOT, INDEX e RLEN. Se si
richiama l'SFB 74 più volte consecutivamente con MODE=0, i parametri di uscita si riferiscono
sempre solo alla stessa richiesta.
1 Ricezione di una richiesta di messa a disposizione di un set di dati per un qualunque subslot dell'I
Device
Se nell'I Device è presente una richiesta di questo tipo da parte del Controller di livello superiore per
un qualsiasi subslot dell'I Device, l'SFB 74 scrive i parametri di uscita.
2 Ricezione di una richiesta di messa a disposizione di un set di dati per un determinato subslot dell'I
Device
Se nell'I Device è presente una richiesta di questo tipo da parte del Controller di livello superiore per
un determinato subslot dell'I Device, l'SFB 74 scrive i parametri di uscita.
3 Messa a disposizione del set di dati e invio di una risposta positiva al Controller di livello superiore
L'SFB 74 controlla la richiesta di messa a disposizione di un set di dati del Controller superiore, rende
disponibile il set di dati richiesto in RECORD e invia una conferma positiva al Controller superiore.
4 Invio di una risposta negativa al Controller di livello superiore
L'SFB 74 controlla la richiesta di messa a disposizione di un set di dati del Controller superiore, la
respinge e invia una conferma negativa al Controller superiore. La ragione del rifiuto va indicata nei
parametri di ingresso CODE1 e CODE2.
Avvertenza
Dopo l'arrivo di una richiesta (NEW=1) è necessario richiamare ancora due volte l'SFB 74 per
garantire un'elaborazione completa. Attenersi al seguente ordine:
• primo richiamo con MODE=1 o MODE=2
• secondo richiamo con MODE=3 o MODE=4
Informazioni di errore
Per l'interpretazione del parametro STATUS vedere Ricezione di un allarme con l'SFB 54 "RALRM"
Definizione
Un allarme dall'orologio è la causa per il richiamo comandato a tempo di un OB di allarme
dall'orologio (OB 10 … OB 17).
Suggerimento
È possibile parametrizzare l'allarme dall'orologio con STEP 7 e poi attivarlo dal programma utente
(SFC 30 "ACT_TINT").
Descrizione
Con la funzione di sistema SFC 28 "SET_TINT" (set time-of-day interrupt) è possibile assegnare
data e ora di inizio dei blocchi organizzativi di servizio ad allarmi dall'orologio. Nell'ora di inizio
vengono ignorati i secondi ed i millesimi di secondo indicati e vengono azzerati.
Informazioni di errore
Codice di Descrizione
errore
(W#16#...)
0000 Non è avvenuto alcun errore.
8090 Il parametro OB_NR è errato
8091 Il parametro SDT è errato
8092 Il parametro PERIOD è errato
80A1 Il momento di avvio impostato si colloca nel passato (questo codice di errore si presenta
soltanto quando PERIOD = W#16#0000 .)
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
Con la funzione di sistema SFC 29 "CAN_TINT" (cancel time-of-day interrupt) è possibile revocare
data e ora di inizio di un blocco organizzativo di servizio ad allarmi dall'orologio assegnato.
Informazioni di errore
Codice di Descrizione
errore
(W#16#...)
0000 Non è avvenuto alcun errore.
8090 Il parametro OB_NR è errato
80A0 Per l'OB di allarme in questione non è stata impostata alcuna data/ora di inizio.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
Con la funzione di sistema SFC 30 "ACT_TINT" (activate time-of-day interrupt) è possibile attivare
un blocco organizzativo di servizio ad allarmi dall'orologio.
Informazioni di errore
Codice di Descrizione
errore
(W#16#...)
0000 Non è avvenuto alcun errore.
8090 Il parametro OB_NR è errato.
80A0 Per l'OB di allarme in questione non è stata impostata alcuna data/ora di inizio.
80A1 Il tempo attivato appartiene al passato; l'errore ha luogo solo in caso di esecuzione = una
sola volta.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
Con la funzione di sistema SFC 31 "QRY_TINT" (query time-of-day interrupt) è possibile verificare
per mezzo del parametro di uscita STATUS lo stato di un blocco organizzativo di servizio ad allarmi
dall'orologio.
Avvertenza
Se RET_VAL contiene un valore diverso da zero, non è consentito analizzare STATUS.
Bit Significato
0 • =0: la CPU è in RUN.
• =1: la CPU è in avviamento.
1 • =0: l'interrupt è abilitato.
• =1: l'interrupt è stato bloccato dal richiamo dell'SFC 39 "DIS_IRT".
2 • =0: l'interrupt non è attivo o si è concluso.
• =1: l'interrupt è attivo.
3 Sempre 0
4 • =0: non esiste un OB con il numero di OB_NR.
• =1: è stato caricato un OB con il numero di OB_NR.
Altri Sempre 0
Informazioni di errore
Codice di Descrizione
errore
(W#16#...)
0000 Non è avvenuto alcun errore.
8090 Il parametro OB_NR è errato
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Definizione
Dopo aver richiamato la SFC 32 "SRT_DINT", il sistema operativo genera un allarme al termine del
tempo di ritardo parametrizzato, cioè viene richiamato l'OB di allarme di ritardo parametrizzato.
Questo allarme viene chiamato allarme di ritardo.
Descrizione
Con la funzione di sistema SFC 32 "SRT_DINT" (start time-delay interrupt) è possibile avviare un
allarme di ritardo, il quale richiama, alla scadenza del tempo di ritardo parametrizzato (parametro
DTIME), un OB di allarme di ritardo.
Al parametro SIGN è possibile assegnare un'identificazione utente, in modo da identificare
univocamente l'avvio dell'allarme di ritardo. I valori di DTIME e SIGN compaiono di nuovo
nell'informazione di evento di avvio dell'OB indicato, se esso viene eseguito.
Precisione
Il tempo tra il richiamo della SFC 32 "SRT_DINT" e l'avvio dell'OB di allarme di ritardo è di un
millisecondo al massimo più piccolo del tempo parametrizzato, se nessun evento di interruzione
ritarda il richiamo.
Informazioni di errore
Codice di Descrizione
errore
(W#16#...)
0000 Non è avvenuto alcun errore.
8090 Il parametro OB_NR è errato
8091 Il parametro DTIME è errato
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
Con la funzione di sistema SFC 34 "QRY_DINT" (query time-delay interrupt) è possibile verificare lo
stato di un allarme di ritardo. Allarmi di ritardo vengono gestiti dai blocchi organizzativi di servizio ad
allarmi di ritardo OB 20 ... 23.
Avvertenza
Se RET_VAL contiene un valore diverso da zero, non è consentito analizzare STATUS.
Bit Significato
0 • =0: la CPU è in RUN.
• =1: la CPU è in avviamento.
1 • =0: l'interrupt è abilitato.
• =1: l'interrupt è stato bloccato dal richiamo dell'SFC 39 "DIS_IRT".
2 • =0: l'interrupt non è attivo o si è concluso.
• =1: l'interrupt è attivo.
3 Sempre 0
4 • =0: non esiste un OB con il numero di OB_NR.
• =1: è stato caricato un OB con il numero di OB_NR.
Altri Sempre 0
Informazioni di errore
Codice di Descrizione
errore
(W#16#...)
0000 Non è avvenuto alcun errore.
8090 Il parametro OB_NR è errato.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
Con la funzione di sistema SFC 33 "CAN_DINT" (cancel time delay interrupt) è possibile cancellare
un allarme di ritardo già attivato (vedere capitolo Attivazione di un allarme di ritardo con la SFC 32
"SRT_DINT"). L'OB di allarme di ritardo non viene allora richiamato.
Informazioni di errore
Codice di Descrizione
errore
(W#16#...)
0000 Non è avvenuto alcun errore.
8090 Il parametro OB_NR è errato.
80A0 L'allarme di ritardo non è attivato.
8xyy Informazione generale di errore, vedere Analisi degli errori con il parametro di uscita RET
VAL
Introduzione
Eventi di errori di sincronismo sono eventi dovuti ad errori di programma e di accesso. Tali eventi di
errore hanno luogo a causa della programmazione con campi o numeri di operandi errati o con
indirizzi errati. Mascherare questi eventi di errore significa che:
• eventi di errore mascherati non fanno scattare OB di errore e non comportano una programmata
reazione di servizio.
• la CPU memorizza in un registro di stato eventi gli errori mascherati verificatisi.
Demascherare eventi di errore significa ripristinare un mascheramento precedentemente effettuato
e cancellare il relativo bit nel registro di stato eventi della classe di priorità attuale. Il mascheramento
viene cancellato
• con un richiamo della SFC 37 "DMSK_FLT"
• quando la classe di priorità attuale dell'OB è terminata (soltanto con l‘S7-400).
• si può disabilitare il richiamo dell'OB di errore per ogni singola classe di priorità. In questo caso la
CPU non si porta in STOP quando nella classe di priorità ha luogo il relativo errore. Essa però
registra l'errore avvenuto in un registro di stato eventi. Non è comunque possibile riconoscere in
questa registrazione quando e quante volte l'errore in questione abbia avuto luogo.
Errore mascherato?
NO SÌ
Richiamo di un OB di er Il richiamo di un OB di er
rore. (la CPU si porta in rore viene disabilitato.
STOP se l'OB di errore (la CPU non si porta in
non è programmato). STOP nel caso che un er
rore abbia luogo).
Esempio
La figura seguente mostra l'aspetto della parola meno significativa della maschera per errori di
accesso con tutti gli errori possibili mascherati per tutte le CPU.
• come parametri di ingresso per la SFC 36
• come parametri di uscita per la SFC 36.
Errori di accesso
La tabella seguente contiene per tutte le CPU gli errori assegnati alla maschera per gli errori di
accesso. Ad ogni errore è associata la possibile causa
Descrizione
La SFC 36 "MSK_FLT" (mask synchronous faults) si usa per comandare la reazione della CPU ad
eventi di errori di sincronismo. A questo scopo occorre mascherare il corrispondente evento di errore
(mascheramento, vedere capitolo Mascheramento di eventi di errori di sincronismo). Con il richiamo
della SFC 36 si mascherano gli eventi di errori di sincronismo nell'attuale classe di priorità.
Se nei parametri di ingresso singoli bit delle maschere per errori di sincronismo vengono impostati su
"1", gli altri bit, già impostati in precedenza, conservano il loro valore "1" (operazione logica di OR). Si
ottengono quindi nuove maschere, leggibili mediante i parametri di uscita. Gli eventi di errori di
sincronismo mascherati non richiamano alcun OB, ma vengono soltanto registrati in un registro di
stato eventi. Tale registro è leggibile tramite la SFC 38 "READ_ERR".
Informazioni di errore
Codice di Descrizione
errore
(W#16#...)
0000 Nessuno degli errori era già mascherato.
0001 Almeno uno degli errori era già mascherato; gli altri errori vengono tuttavia mascherati.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
La SFC 37 "DMSK_FLT" (unmask synchronous faults) si usa per demascherare gli eventi di errore
mascherati con la SFC 36 "MSK_FLT". Per eseguire questa operazione occorre impostare su "1" nei
parametri di ingresso i corrispondenti bit delle maschere. Con il richiamo della SFC 37 si
demascherano gli eventi di errori di sincronismo corrispondenti. Contemporaneamente vengono
cancellate le registrazioni relative nel registro di stato eventi. Le nuove maschere sono poi leggibili
tramite i parametri di uscita.
Informazioni di errore
Codice di Descrizione
errore
(W#16#...)
0000 Tutti gli errori indicati sono stati demascherati.
0001 Almeno uno degli errori non era mascherato, gli altri errori vengono comunque demascherati.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
Con la SFC 38 "READ_ERR" (read error registers) si legge il registro di stato eventi. Tale registro
corrisponde, nella sua struttura, alle maschere per gli errori di programma e di accesso,
programmabili con le SFC 36 e 37 come parametri di ingresso.
Nei parametri di ingresso si indica quali eventi di errori di sincronismo del registro si vogliano
consultare. Con il richiamo della SFC 38 si leggono le registrazioni desiderate del registro di stato
eventi e le si cancellano contemporaneamente.
Dal registro di stato eventi si ottiene l'informazione su quale degli eventi di errore mascherati si sono
presentate almeno una volta nella lista attuale di priorità. Un bit impostato sta ad indicare che il
rispettivo evento di errori di sincronismo si è presentato almeno una volta.
Informazioni di errore
Codice di Descrizione
errore
(W#16#...)
0000 Tutti gli errori consultati vengono mascherati.
0001 Almeno uno degli errori consultati non è mascherato.
Classi di allarme
Gli allarmi sono suddivisi in diverse classi. La tabella seguente contiene tutte le classi di allarme e i
corrispondenti OB.
Classi di allarme OB
Allarmi dall'orologio OB 10 ... OB 17
Allarmi di ritardo OB 20 ... OB 23
Schedulazioni orologio OB 30 ... OB 38
Interrupt di processo OB 40 ... OB 47
Allarmi per DVP1 OB 55 … OB 57
Allarme di multicomputing OB 60
Allarmi d'errore di ridondanza OB 70, OB 72
Allarmi per errori di asincronismo OB 80 ... OB 87
Allarmi per errori di sincronismo OB 121, OB 122
(L'elaborazione di allarmi per errori di sincronismo viene
mascherata o demascherata con le SFC 36, 37 e 38.)
Descrizione
Con la SFC 39 "DIS_IRT" (disable interrupt) si disabilitano nuove richieste di allarmi ed eventi di
errori di asincronismo. Disabilitare significa che, al verificarsi di un evento di interruzione, la CPU
• né richiama un OB di allarme oppure un OB di errori di asincronismo,
• né provoca la reazione stabilita in caso di OB di allarme oppure di OB di eventi di errori di
asincronismo non programmati.
La disabilitazione delle richieste di allarmi e di eventi di errori di asincronismo rimane valida su tutte le
classi di priorità e durante più di un ciclo di programma. Tale disabilitazione può essere revocata solo
con la SFC 40 "EN_IRT" o con un nuovo avviamento (avviamento a caldo) e con avviamento a
freddo.
Se il sistema operativo registra l'avvenuta richiesta di allarme o l'avvenuto evento di errori di
asincronismo nel buffer di diagnostica dipende dalla scelta del parametro di ingresso MODE.
Avvertenza
Si osservi che con la programmazione della SFC 39 "DIS_IRT", vanno perduti tutti gli allarmi che
potrebbero eventualmente verificarsi.
MODE
MODE Significato
(B#16#...)
00 Tutte le nuove richieste di allarmi ed eventi di errori di asincronismo che si verificano vengono
disabilitate (non vengono disabilitati gli eventi di errori di sincronismo). Attribuire al parametro
OB_NR il valore 0. Continuano ad essere eseguite registrazioni nel buffer di diagnostica.
01 Tutti i nuovi eventi di una data classe di priorità che si verificano vengono disabilitati. Le classi
di allarme sono contrassegnate come segue:
• allarmi orologio: 10
• allarmi di ritardo: 20
• allarmi di schedulazione orologio: 30
• interrupt di processo: 40
• allarmi per DPV1: 50
• allarmi di multicomputing: 60
• allarmi per errori di ridondanza: 70
• allarmi per errori di sincronismo: 80
02 Tutte le nuove richieste di un determinato allarme che si verificano vengono disabilitate. Si
può contrassegnare un allarme mediante il numero di OB. Continuano ad essere eseguite
registrazioni nel buffer di diagnostica.
80 Tutte le nuove richieste di allarmi ed eventi di errori di asincronismo che si verificano vengono
disabilitate e non vengono più registrate nel buffer di diagnostica. Assegnare il valore 0 al
parametro OB_NR. Il sistema operativo registra l'evento W#16#5380 nel buffer di
diagnostica.
81 Tutti i nuovi eventi di una classe di allarme indicata vengono disabilitati e non vengono più
registrati nel buffer di diagnostica. Il sistema operativo registra l'evento W#16#5380 nel buffer
di diagnostica.
82 Tutti i nuovi eventi di un allarme indicato vengono disabilitati non vengono più registrati nel
buffer di diagnostica. Il sistema operativo registra l'evento W#16#5380 nel buffer di
diagnostica
Informazioni di errore
Codice di Descrizione
errore
(W#16#...)
0000 Non è avvenuto alcun errore.
8090 Il parametro di ingresso OB_NR contiene un valore non permesso.
8091 Il parametro di ingresso MODE contiene un valore non permesso.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
Con la SFC 40 "EN_IRT" (enable interrupt) si riabilitano richieste di allarmi e di eventi di errori di
asincronismo disabilitate. Abilitare significa che il sistema operativo della CPU, al verificarsi di un
evento di interruzione
• richiama un OB di allarme oppure un OB di errori di asincronismo
oppure
• provoca la reazione stabilita in caso di OB di allarme oppure di OB di errori di asincronismo non
programmati.
MODE
MODE Significato
0 Tutte le nuove richieste di allarmi ed eventi di errori di asincronismo che si verificano vengono
abilitate.
1 Tutte le nuove richieste di allarmi di una data classe di priorità che si verificano, vengono
disabilitate. Le classi di allarme sono contrassegnate come segue:
• allarmi orologio: 10
• allarmi di ritardo: 20
• allarmi di schedulazione orologio: 30
• interrupt di processo: 40
• allarmi per DPV1: 50
• allarmi di multicomputing: 60
• allarmi per errori di ridondanza: 70
• allarmi per errori di sincronismo: 80
2 Tutte le nuove richieste di un determinato allarme che si verificano vengono abilitate. Si può
contrassegnare l'allarme mediante il numero di OB.
Informazioni di errore
Codice di Descrizione
errore
(W#16#...)
0000 Non è avvenuto alcun errore.
8090 Il parametro di ingresso OB_NR contiene un valore non permesso.
8091 Il parametro di ingresso MODE contiene un valore non permesso.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
Con la SFC 41 "DIS_AIRT" (disable alarm interrupts) si ritarda l'esecuzione di OB di allarme e di
OB di errori di asincronismo con una priorità più elevata di quella dell'OB in esecuzione. È possibile
richiamare più volte la SFC 41 all'interno di un OB. Tali richiami della SFC 41 vengono contati dal
sistema operativo. La disabilitazione dura finché tutte le esecuzioni di OB di allarme o di OB di errori
di asincronismo, ritardate mediante la SFC 41, non vengono esplicitamente riabilitate con la SFC 42
"EN_AIRT" oppure finché l'elaborazione dell'OB attuale non è giunta al termine.
Le richieste di allarmi o di eventi di errori di asincronismo pendenti vengono elaborate non appena
viene revocata la disabilitazione tramite la SFC 42 "EN_AIRT" oppure quando l'elaborazione
dell'OB attuale è giunta al termine.
Valore di ritorno
La tabella seguente contiene il valore di ritorno della SFC 41, fornito dal parametro RET_VAL.
Valore di Descrizione
ritorno
n "n" indica, dopo l'esecuzione della SFC, il numero delle disabilitazioni, ossia dei richiami
della SFC 41 (l'elaborazione degli allarmi viene riabilitata solo quando n = 0; vedi capitolo
Abilitazione della risposta ad allarmi ed eventi di errori di asincronismo di più alta priorità con
la SFC 42 "EN_AIRT")
Descrizione
Con la SFC 42 "EN_AIRT" (enable alarm interupts) si abilita nuovamente l'esecuzione di allarmi e di
eventi di errori di asincronismo con più elevata priorità, precedentemente ritardata con la SFC 41
"DIS_AIRT". Affinché l'esecuzione possa essere riabilitata, è necessario revocare ogni singola
disabilitazione con SFC 42.
Esempio
Se sono stati disabilitati per 5 volte allarmi mediante 5 richiami della SFC 41, per revocare queste
disabilitazioni occorrono 5 richiami di SFC 42.
Valore di Descrizione
ritorno e
codice di
errore
n "n" indica, dopo l'esecuzione della SFC, il numero delle disabilitazioni, ossia dei richiami
della SFC 41 (l'elaborazione degli allarmi viene riabilitata solo quando n = 0).
W#16#8080 Sebbene l'elaborazione dell'allarme fosse già stata abilitata, la funzione è stata comunque
richiamata.
Descrizione
Con la SFC 6 "RD_SINFO" (read start information) si legge l'informazione di avvio
• dell'OB richiamato per ultimo e che non è stato elaborato completamente e
• dell'OB di avviamento avviato per ultimo
Entrambe le informazioni di avvio non contengono la registrazione del tempo. Se il richiamo si
verifica nell'OB 100 o 101 o 102, vengono fornite due informazioni di avvio identiche.
TOP_SI e START_UP_SI
I parametri di uscita TOP_SI e START_UP_SI sono due strutture dalla forma identica. La loro forma
è riprodotta nella tabella seguente.
Avvertenza
Dal punto di vista del contenuto degli elementi di struttura riportati nella tabella sopra corrispondono
esattamente alle variabili temporanee di un OB.
Tenere tuttavia presente che le variabili temporanee nei singoli OB possono avere altri nomi e altri
tipi di dati. Tenere inoltre presente che l'interfaccia di richiamo degli OB contiene inoltre la data e l'ora
in cui è stato richiamato l'OB.
Esempio
Supponiamo che l'OB richiamato per ultimo, che non è stato ancora elaborato completamente, sia
l'OB80 e che l'OB di avviamento avviato per ultimo sia l'OB100.
La tabella seguente mostra l'assegnazione degli elementi di struttura del parametro TOP_SI della
SFC 6 "RD_SINFO" alle relative variabili locali dell'OB 80.
TOP_SI OB 80
Elemento di struttura Tipo di Variabile locale corrispondente Tipo di
dati dati
EV_CLASS BYTE OB80_EV_CLASS BYTE
EV_NUM BYTE OB80_FLT_ID BYTE
PRIORITY BYTE OB80_PRIORITY BYTE
NUM BYTE OB80_OB_NUMBR BYTE
TYP2_3 BYTE OB80_RESERVED_1 BYTE
TYP1 BYTE OB80_RESERVED_2 BYTE
ZI1 WORD OB80_ERROR_INFO WORD
ZI2_3 DWORD OB80_ERR_EV_CLASS BYTE
OB80_ERR_EV_NUM BYTE
OB80_OB_PRIORITY BYTE
OB80_OB_NUM BYTE
La tabella seguente mostra l'assegnazione degli elementi di struttura del parametro START_UP_SI
della SFC 6 "RD_SINFO" alle relative variabili locali dell'OB 100.
START_UP_SI OB 100
Elemento di struttura Tipo di Variabile locale Tipo di
dati dati
EV_CLASS BYTE OB100_EV_CLASS BYTE
EV_NUM BYTE OB100_STRTUP BYTE
PRIORITY BYTE OB100_PRIORITY BYTE
NUM BYTE OB100_OB_NUMBR BYTE
TYP2_3 BYTE OB100_RESERVED_1 BYTE
TYP1 BYTE OB100_RESERVED_2 BYTE
ZI1 WORD OB100_STOP WORD
ZI2_3 DWORD OB100_STRT_INFO DWORD
Informazioni di errore
La SFC 6 (RD_SINFO) non fornisce informazioni sugli errori specifiche, ma solo generali. I codici
generali di errore e la loro analisi sono descritti in modo dettagliato nel capitolo Analisi degli errori con
il parametro di uscita RET_VAL.
13.3 Lettura di una lista parziale SZL o di un estratto della lista parziale
SZL con la SFC 51 "RDSYSST"
Descrizione
Con la SFC 51 "RDSYSST" (read system status) si può leggere una lista parziale SZL o un estratto
della lista parziale SZL.
La procedura di lettura viene avviata occupando con 1 il parametro di ingresso REQ al momento di
richiamo della SFC 51. Se è stato possibile eseguire subito la procedura di lettura, la SFC fornisce il
valore 0 al parametro di uscita BUSY. Nel caso in cui BUSY abbia il valore 1, la procedura di lettura
non è stata ancora portata a termine.
Avvertenza
Se viene richiamata la SFC 51 "RDSYSST" nell'OB di allarme di diagnostica mediante l'ID SZL
W#16#00B1 o W#16#00B2 oppure W#16#00B3 e si accede all'unità che ha posto l'allarme di
diagnostica, la procedura di lettura viene eseguita immediatamente.
Con la SFC51 "RDSYSST" vengono trasmessi solo record di dati completi.
Avvertenza
Nelle CPU S7-400 possono essere trasferiti con l'SFC 51 max. 432 byte nell'area di destinazione.
SZL_HEADER
Il parametro SZL_HEADER è una struttura, definita nel modo seguente:
SZL_HEADER: STRUCT
LENTHDR: WORD
N_DR: WORD
END_STRUCT
LENTHDR è la lunghezza in byte di un set di dati della lista parziale SZL oppure dell'estratto della
lista parziale SZL.
• Nel caso sia stata letta solo l'informazione di intestazione di una lista parziale SZL, N_DR
contiene il numero dei rispettivi set di dati presenti.
• Altrimenti N_DR contiene il numero dei set di dati trasmessi nel campo di destinazione.
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 nessun errore
0081 Lunghezza del campo DR troppo piccola. (Nonostante ciò, vengono forniti tanti set di dati
quanto possibile. L'intestazione SZL ne indica il numero.)
7000 Primo richiamo con REQ=0: trasferimento dati non attivo; BUSY ha il valore 0.
7001 Primo richiamo con REQ=1: trasferimento dati avviato; BUSY ha il valore 1.
7002 Richiamo intermedio (REQ irrilevante): trasferimento dati già attivo; BUSY ha il valore 1.
8081 Lunghezza del campo DR troppo piccola (non c'è abbastanza spazio per un set di dati)
8082 L'ID SZL è sbagliata nella CPU oppure la SFC è sconosciuta.
8083 INDEX errato o non ammesso
8085 Informazione momentaneamente non disponibile per cause interne di sistema (ad es.
mancanza di risorse)
8086 Set di dati non leggibile a causa di un errore di sistema (bus, unità, sistema operativo).
8087 Set di dati non leggibile perché l'unità non è disponibile o non conferma.
8088 Set di dati non leggibile perché l'identificazione unità attuale non corrisponde
all'identificazione unità di riferimento.
8089 Set di dati non leggibile perché l'unità non è in grado di fornire una diagnostica o il set di dati
stesso.
80A2 Errore di protocollo DP (errore livello 2) (errore temporaneo)
80A3 Errore di protocollo DP in user interface/user (errore temporaneo)
80A4 Comunicazione nel bus K disturbata (errore emerso tra CPU e collegamento DP esterno)
(errore temporaneo)
80C5 Periferia decentrata non disponibile (errore temporaneo)
80C6 Il trasferimento del set di dati è stato interrotto a causa di una interruzione della classe di
priorità (riavviamento oppure sfondo)
80D2 Set di dati non leggibile perché l'unità non è in grado di fornire una diagnostica.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
SZL_IDs
Avvertenza
Le liste parziali leggibili con la SFC 51 "RDSYSST"
• per S7-300 sono riportate in /72/
• per S7-400 sono indicate nella seguente tabella.
Buffer di diagnostica
(vengono forniti 21 set di dati al massimo)
00A0 Tutte le registrazioni fornibili nello stato di funzionamento Irrilevante
attuale
01A0 Le registrazioni più recenti, il numero viene indicato tramite Numero
l'indice
0FA0 Solo informazione intestazione della lista parziale SZL Irrilevante
Dati di diagnostica su unità
00B1 I primi quattro byte di diagnostica di un'unità (DS0) Indirizzo di base logico
00B2 Tutti i dati di diagnostica di un'unità (220 byte, DS1) (non Telaio, posto connettore
unità DP)
00B3 Tutti i dati di diagnostica di un'unità (220 byte, DS1) Indirizzo di base logico
00B4 Dati di diagnostica di uno slave DP Indirizzo di diagnostica progettato
Descrizione
Con la SFC 52 "WR_USMSG" (write user element in diagnosis buffer) si può scrivere un evento di
diagnostica definito dall'utente nel buffer di diagnostica. In più è possibile trasmettere i relativi
messaggi di diagnostica a tutti i nodi allacciati a questo scopo (tramite assegnazione del parametro
di ingresso SEND = TRUE). In caso di errore, il parametro di uscita RET_VAL fornisce l'informazione
di errore.
CPU Nodo
p. es. PG, OP
Buffer di trasmis
sione
SEND=
TRUE
1 2
...
Struttura generale
Un messaggio del buffer di diagnostica è strutturato internamente nel modo seguente:
Byte Contenuto
1e2 ID di evento
3 Classe di priorità
4 Numero di OB
5e6 Riservato
7e8 Informazione supplementare 1
9, 10, 11 e 12 Informazione supplementare 2
dal 13 al 20 Registrazione del tempo
ID di evento
Ad ogni evento è associato un ID di evento.
Informazione supplementare
L'informazione supplementare contiene ulteriori informazioni relative all'evento. Tali informazioni
possono avere contenuti differenti a seconda dell'evento. Se viene generato un evento di
diagnostica, è l'utente stesso a poterne stabilire il contenuto.
Quando si invia un messaggio di diagnostica definito dall'utente, le informazioni supplementari
possono essere integrate come variabili nel testo di segnalazione (specifico dell'ID di evento).
SEND
Con SEND = TRUE il messaggio di diagnostica definito dall'utente viene trasmessa a tutti i nodi
allacciati. La trasmissione avviene solo se è allacciato un nodo e se il buffer di trasmissione non è
pieno. La trasmissione avviene in maniera asincrona rispetto all'esecuzione del programma utente.
EVENTN
Il parametro EVENTN contiene l'ID dell'evento dell'utente. È possibile scrivere ID di evento della
forma W#16#8xyz, W#16#9xyz, W#16#Axyz, W#16#Bxyz.
Gli ID della forma W#16#8xyz e W#16#9xyz fanno parte degli eventi predefiniti, gli ID della forma
W#16#Axyz e W#16#Bxyz fanno parte degli eventi liberamente definibili.
Un evento entrante viene identificato da x = 1, un evento uscente da x = 0. Per eventi della classe A
e B vale: yz è il numero di messaggio in rappresentazione decimale assegnato durante la
progettazione del messaggio corrispondente.
INFO1
Il parametro INFO1 contiene una informazione lunga una parola. Per INFO1 sono permessi i
seguenti tipi di dato:
• WORD
• INT
• ARRAY [0...1] OF CHAR
È possibile integrare il parametro INFO1 come variabile nel testo di segnalazione, aggiungendo così
informazioni attuali al messaggio.
INFO2
Il parametro INFO2 contiene una informazione lunga due parole. Per INFO2 sono permessi i
seguenti tipi di dato:
• DWORD
• DINT
• REAL
• TIME
• ARRAY [0...3] OF CHAR
È possibile integrare il parametro INFO2 come variabile nel testo di segnalazione, aggiungendo così
informazioni attuali al messaggio.
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Nessun errore
0091 Nessun nodo è allacciato (registrazione dell'evento di diagnostica nel buffer di diagnostica
avvenuta)
8083 Tipo INFO1 non ammesso
8084 Tipo INFO2 non ammesso
8085 EVENTN non ammesso
8086 Lunghezza di INFO1 non ammessa
• CPU S7-300: come lunghezza dell’informazione aggiuntiva 1 viene preso il valore
massimo e viene eseguita la registrazione del buffer di diagnostica.
• CPU S7-400: non vi è alcuna registrazione nel buffer di diagnostica.
8087 Lunghezza di INFO2 non ammessa
• CPU S7-300: come lunghezza dell’informazione aggiuntiva 2 viene preso il valore
massimo e viene eseguita la registrazione del buffer di diagnostica.
• CPU S7-400: non vi è alcuna registrazione nel buffer di diagnostica.
8091 (Questo codice di errore compare solo nelle versioni meno recenti della CPU)
Nessun nodo è allacciato (registrazione dell'evento di diagnostica nel buffer di diagnostica
avvenuta)
8092 Trasmissione attualmente impossibile, il buffer di trasmissione è pieno (evento di diagnostica
registrato nel buffer di diagnostica)
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
Con l'SFC 78 "OB_RT" è possibile rilevare il tempo di esecuzione dei singoli OB in momenti diversi.
Avvertenza
La SFC 78 fornisce i valori temporali registrati per ultimi degli OB desiderati indipendentemente dal
fatto che siano caricati o meno. I dati della SFC 78 non vengono resettati in caso di cancellazione o di
sovraccarico ma solamente con un nuovo avviamento (avviamento a caldo).
Parametri
I tempi comprendono anche i tempi di esecuzione delle elaborazioni degli allarmi per gli errori di
sincronismo (OB 121, OB 122) eventualmente annidate.
Avvertenza
Se in OB_NR si specifica un numero di OB presente nella configurazione della CPU, ma il cui
OB corrispondente non è ancora stato richiamato dal sistema operativo o non ancora caricato nella
CPU, il numero di OB indicato è specificato in RET_VAL, la priorità progettata (se necessario di
default) dell’OB indicato è specificata in PRIO
I parametri runtime (CUR_RT, CUR_ET, LAST_RT, LAST_ET, NEXT_ET) restituiscono il valore
iniziale DW#16#FFFF FFFF.
Nei seguenti modi di avvio o nella commutazione del modo di funzionamento, i parametri runtime
vengono impostati sul rispettivo valore iniziale:
• CPU standard: nuovo avviamento, avviamento a freddo, riavviamento
• H-CPU: nuovo avviamento, avviamento a freddo, commutazione dal funzionamento RUN
singolo a quello RUN ridondato, commutazione dal funzionamento RUN ridondato a quello RUN
singolo.
Classe di Spiegazione
evento
Codice di
errore
Da 1 a 102 Numero dell'OB a cui vengono trasmesse delle informazioni.
W#16#8080 Il parametro OB NR contiene un valore non ammesso.
W#16#8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
Con la SFC 87 "C_DIAG" è possibile determinare lo stato attuale di tutti i collegamenti S7 e di tutti i
collegamenti S7 ad elevata disponibilità (o dei loro collegamenti parziali).
Con una corretta analisi di questi dati di collegamento, è possibile riconoscere il guasto di
collegamenti S7 e di collegamenti S7 ad elevata disponibilità, segnalandoli eventualmente a un
sistema di servizio e supervisione. I collegamenti non controllati possono essere quelli che
connettono un sistema di automazione con un altro oppure un sistema di automazione e un sistema
di servizio e supervisione.
Avvertenza
La commutazione dello stato di funzionamento RUN -> STOP -> RUN di una CPU non si ripercuote sullo stato
dei collegamenti progettati. Eccezione: quando una stazione H commuta dallo stato di sistema ridondato allo
stato di sistema Stop, nei collegamenti ad alta disponibilità vengono interrotti i collegamenti parziali che
terminano sulla CPU di riserva. In caso di caduta della tensione di rete, invece, tutti i collegamenti progettati
vengono nuovamente creati con conseguente modifica dello stato del collegamento. Al primo richiamo
dell'SFC 87 le informazioni sui collegamenti variano, durante o dopo l'avviamento, a seconda che l'ultimo stato
della CPU fosse STOP oppure RETE OFF.
Procedimento
La SFC 87 "C_DIAG" è una SFC che lavora in maniera asincrona, vale a dire che l'elaborazione si
può estendere a più richiami di SFC.
L'utente avvia il job richiamando la SFC 87 con REQ=1.
Quando è possibile avviare il job immediatamente, la SFC del parametro di uscita BUSY rimanda il
valore 0. Se BUSY ha valore 1, il job è ancora in corso.
MODE La SFC copia i dati del collegamento nel La SFC trasmette l'informazione di
(B#16#...) programma utente conferma al sistema operativo
00 No Sì
01 Sì Sì
02 • Sì, se i dati del collegamento sono SÌ
cambiati
• No, se i dati del non collegamento sono
cambiati
03 Sì No
Avvertenza
Utilizzando la SFC 87 in un OB di allarme di clock nel tipo di funzionamento "Copia forzata"
(MODE=B#16#02), occorre fare in modo che dopo l'avviamento a freddo della CPU nell'area di
destinazione non vi siano valori iniziali. Ciò è possibile richiamando una volta nell'OB 102 la SFC 87
con il tipo di funzionamento "Copia non forzata con conferma " (MODE=B#16#01).
Avvertenza
Quando i dati del collegamento vengono copiati dal sistema operativo all'area di destinazione
indicata dall'utente, la coerenza dei dati del collegamento è garantita.
Codice di Spiegazione
errore
(W#16#...)
0000 • MODE=B#16#00, 01 o 02: nessuna modifica dello stato del collegamento (elemento
della struttura STAT_CON) dall'ultimo richiamo. L'ordine è stato eseguito senza errori
• MODE=B#16#03: copia riuscita senza errori
0001 • MODE=B#16#00, 01 o 02: modifica dello stato del collegamento (elemento della
struttura STAT_CON) con almeno un collegamento dall'ultimo richiamo. Il job è stato
eseguito senza errori
• MODE=B#16#03: RET_VAL W#16#0001 impossibile:
7000 Primo richiamo con REQ=0. Il job definito con MODE non viene elaborato. BUSY ha il valore
0
7001 Primo richiamo con REQ=1. Il job definito con MODE è stato avviato. BUSY ha il valore 1.
7002 Richiamo intermedio (non rilevante per REQ). Il job attivato è ancora in corso. BUSY ha il
valore 1.
8080 Il parametro MODE ha un valore non valido
8081 Il parametro CON_ARR ha un tipo di dati non valido
8082 Il parametro CON_ARR ha una lunghezza insufficiente. La SFC non copia i dati nell'area di
destinazione
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
La SFC 103 "DP_TOPOL" permette di determinare la topologia di un sistema master DP
selezionato. Richiamando la SFC 103 vengono indirizzati tutti i repeater di diagnostica del sistema
master DP.
Avvertenza
La topologia può essere definita soltanto per un sistema master DP per volta.
La definizione della topologia è indispensabile per visualizzare i dettagli della localizzazione in caso
di guasti delle linee. Ripetere la definizione della topologia con la SFC 103 dopo la configurazione e
in seguito a ogni modifica della configurazione fisica di un sistema master DP.
Per modifica della configurazione fisica si intende:
• Modifica della lunghezza dei conduttori
• Inserimento o estrazione di nodi o componenti con funzioni di repeater
• Modifica di indirizzi dei nodi
Se un repeater di diagnostica segnala un errore, la SFC scrive le uscite DPR e DPRI per la durata di
un ciclo SFC. Se viene segnalato un errore da più repeater di diagnostica del sistema master DP
selezionato, la SFC scrive in DPR e DPRI le informazioni sul primo repeater di diagnostica che ha
segnalato l’errore. L’informazione di diagnostica completa può essere letta con la SFC 13
"DPNRM_DG" o con STEP7. Se nessun repeater di diagnostica segnala un errore, le uscite DPR e
DPRI hanno il valore ZERO.
Se in seguito al verificarsi di un errore si intende avviare nuovamente la definizione della topologia, è
necessario innanzitutto eseguire il resettaggio dell'SFC 103. Il resettaggio avviene richiamanfo
l'SFC 103 mediante REQ=0 e R=1.
Procedimento
La SFC 103 "DP_TOPOL" è una SFC a funzionamento asincrono, vale a dire che l’elaborazione
comprende più richiami di SFC. Per avviare la definizione della topologia di bus, richiamare SFC 103
con REQ=1. Per interrompere il processo richiamre la SFC 103 con R=1.
Per mezzo dei parametri di uscita RET_VAL e BUSY viene visualizzato lo stato del job, vedi anche
Significato dei parametri REQ, RET_VAL e BUSY nelle SFC che lavorano in modo asincrono.
Avvertenza
La definizione della topologia può richiedere diversi minuti.
Identificazione di un job
Il parametro di ingresso DP_ID definisce un job in modo univoco.
Se l’utente ha richiamato la SFC 103 "DP_TOPOL" e la richiama nuovamente prima di terminare la
definizione della topologia, la SFC si comporta in un determinato modo se è stato richiamato lo
stesso job: se il parametro DP_ID corrisponde a un job non ancora concluso, il richiamo della
SFC viene interpretato come richiamo successivo, e in RET_VAL viene registrato il valore
W#16#7002. Se invece si tratta di un altro job, la CPU lo respinge.
Guasti permanenti: nella rete sono stati rilevati guasti permanenti che impediscono di definire correttamente
la topologia. I dati esatti sulle cause dei guasti si possono leggere come informazioni di diagnostica con la
SFC 13 "DPNRM_DG" o con STEP 7.
Guasti temporanei: nella rete sono stati rilevati guasti temporanei che impediscono di definire correttamente
la topologia. Probabilmente si tratta di un contatto difettoso o di diversi errori indefiniti. Non è possibile rilevare
la causa precisa del guasto.
Informazioni di errore
Per quanto riguarda le informazioni di errore "vere e proprie" (codici di errore W#16#8xyz) della
tabella che segue occorre fare una distinzione:
• Errori temporanei (codici di errore da W#16#80A2 a 80A4, 80C3, 80C5):
Questo tipo di errore può essere eliminato senza l'intervento dell'utente, vale a dire che è
sufficiente richiamare nuovamente la SFC (eventualmente più volte).
Esempio di errore temporaneo: le risorse richieste sono momentaneamente occupate
(W#16#80C3).
• Errori permanenti (codici di errore W#16#8082, 80B0, 80B2):
Questo tipo di errore non può essere eliminato senza l'intervento dell'utente. È opportuno
richiamare nuovamente la SFC soltanto dopo aver eliminato l'errore. Esempio di errore
permanente: il master DP / la CPU non supportano questo servizio (W#16#80B0).
Codice di Spiegazione
errore
(W#16#...)
0000 Il job è stato eseguito senza errori.
7000 Primo richiamo con REQ=0. Non viene avviata alcuna definizione della topologia di bus.
BUSY ha il valore 0.
7001 Primo richiamo con REQ=1. Il job è stato impostato per definire la topologia. BUSY ha il
valore 1.
7002 Richiamo intermedio (REQ irrilevante): La definizione della topologia non è ancora terminata.
BUSY ha il valore 1.
7010 L'utente ha cercato di interrompere la definizione della topologia ma non è in corso nessun
job con il DP_ID indicato. BUSY ha il valore 0.
7011 Primo richiamo con R=1. L'interruzione della definizione della topologia è stata avviata.
BUSY ha il valore 1.
7012 Richiamo intermedio: l'interruzione della definizione della topologia non è ancora conclusa.
BUSY ha il valore 1.
7013 Ultimo richiamo: la definizione della topologia è stata interrotta. BUSY ha il valore 0.
8082 Non è stato progettato un sistema master DP con il DP_ID indicato.
80A2 Errore di definizione della topologia; informazioni più precise sono riportate nei parametri di
uscita DPR e DPRI
80A3 Errore di definizione della topologia; il tempo di controllo è scaduto (timeout)
80A4 Comunicazione disturbata nel bus di comunicazione
80B0 Il master DP / la CPU non supportano questo servizio.
80B2 Errore di definizione della topologia: nel sistema master DP selezionato non è stato
riconosciuto un repeater di diagnostica.
80C3 Le risorse richieste sono momentaneamente occupate. Cause possibili: l'utente ha avviato
una seconda definizione della topologia (è consentita una sola definizione della topologia per
volta) o nella CPU H è attualmente in corso un accoppiamento e aggiornamento.
80C5 Il sistema master DP non è attualmente disponibile.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
Con la SFC 26 "UPDAT_PI" (update process image) è possibile aggiornare l'immagine di processo
dell'OB1 (= immagine di processo parziale 0) degli ingressi o un‘immagine di processo parziale degli
ingressi definita con STEP 7.
Nel caso che come procedura di segnalazione per l'aggiornamento dell'immagine di processo da
parte del sistema sia stata progettata la segnalazione ripetuta di tutti gli errori di accesso alla
periferia, con la SFC 26 viene sempre eseguito l'aggiornamento dell'immagine di processo parziale
selezionata.
Altrimenti questo aggiornamento con la SFC 26 viene eseguito solo se l'immagine di processo
parziale selezionata non viene aggiornata da parte del sistema, vale a dire
• se questa immagine di processo parziale non è stata assegnata ad alcun OB di allarme,
oppure
• se è stata selezionata l'immagine di processo parziale 0 e (per mezzo della progettazione) è
stato disinserito l'aggiornamento dell'immagine di processo dell'OB1.
Avvertenza
Ogni indirizzo logico che è stato assegnato ad un'immagine di processo parziale degli ingressi non fa
più parte dell'immagine di processo dell'OB1 degli ingressi.
Un’immagine di processo parziale aggiornata con la SFC 26 non può essere aggiornata
contemporaneamente con la SFC 126 "SYNC_PI".
L'aggiornamento da parte del sistema dell'immagine di processo dell'OB1 degli ingressi e delle
immagini di processo parziali degli ingressi che sono stati assegnate ad un OB di allarme ha luogo
indipendentemente dai richiami della SFC 26.
Informazioni di errore
Avvertenza
Se si utilizza l'SFC 26 "UPDAT_PI" per immagini di processo parziale degli slave normalizzati DP per
cui sono state definite aree coerenti superiori a 32 byte, anche i codici di errore dell'SFC 14
"DPRD_DAT".
Descrizione
Con la SFC 27 "UPDAT_PO" (update process outputs) vengono trasmessi alle unità di uscita gli stati
di segnale dell'immagine di processo dell'OB1 (=immagine di processo parziale 0) delle uscite
oppure un immagine di processo parziale delle uscite definita con STEP 7.
Se per l'immagine di processo parziale scelta è stata definita un'area di coerenza, i dati
corrispondenti verranno trasmessi in modo coerente all'unità periferica opportuna.
Avvertenza
Ogni indirizzo logico che è stato assegnato con STEP 7 ad un'immagine di processo parziale delle
uscite non fa più parte dell'intera immagine di processo dell'OB1 delle uscite.
Le uscite aggiornate con la SFC 27 non possono essere aggiornate contemporaneamente con la
SFC 127 "SYNC_PO".
La trasmissione alle unità di uscita, da parte del sistema, dell'immagine di processo dell'OB1 delle
uscite e delle immagini di processo parziali delle uscite che sono state assegnate ad un OB di
allarme ha luogo indipendentemente dai richiami della SFC 27.
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Nessun errore.
8090 Valore non ammesso per il parametro PART
8091 L'immagine di processo parziale indicata non è stata ancora definita oppure non si trova
nell'area dell'immagine di processo ammessa della CPU
80A0 Durante l'accesso alla periferia è stato riconosciuto un errore di accesso.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Avvertenza
Se si utilizza SFC 27 "UPDAT_PO" per immagini di processo parziale degli slave normalizzati DP
per cui sono state definite aree coerenti superiori a 32 byte, anche i codici di errore dell'SFC 15
"DPWR_DAT".
Descrizione
Con l'SFC 126 "SYNC_PI" è possibile aggiornare l'immagine di processo parziale degli ingressi con
sincronizzazione di clock. L'SFC consente quindi a un programma utente collegato a un clock DP o a
un intervallo di trasmissione PN di aggiornare, in modo coerente e in sincronismo di clock, i dati
acquisiti in ingresso all'interno di un'immagine di processo parziale degli ingressi.
L'SFC 126 può essere interrotta ed è richiamabile unicamente negli OB 61, 62, 63 e 64.
Avvertenza
È consentito richiamare l'SFC 126 "SYNC_PI" negli OB 61 - 64 soltanto se la corrispondente
immagine di processo parziale è stata assegnata al rispettivo OB in Configurazione HW.
Un'immagine di processo parziale aggiornata con l'SFC 126 non può essere aggiornata
contemporaneamente con l'SFC 26 "UPDAT_PI".
Parametri
Classe di Spiegazione
evento
Codice di
errore
W#16#0001 Messaggio di avviso sulla coerenza. L'aggiornamento dell'immagine di processo parziale è
stato suddiviso in due cicli DP o PN. Tuttavia i dati interni a uno slave o a un IO Device sono
stati trasmessi coerentemente.
W#16#8090 Valore non ammesso per il parametro PART o l'aggiornamento dell'immagine di processo
parziale degli ingressi non è consentito in questo OB. L'immagine di processo parziale degli
ingressi non è stata aggiornata.
W#16#8091 L'immagine di processo parziale indicata non è stata ancora definita oppure non si trova
nell'area dell'immagine di processo ammessa della CPU. L'immagine di processo parziale
degli ingressi non è stata aggiornata.
W#16#80A0 Durante l'aggiornamento è stato rilevato un errore di accesso. Gli ingressi interessati sono
stati impostati a "0".
W#16#80A1 Il momento dell'aggiornamento è posteriore all'intervallo di accesso consentito. L'immagine di
processo parziale degli ingressi non è stata aggiornata.
Il ciclo DP o PN è troppo breve per garantire un tempo sufficiente per l'elaborazione dell'SFC.
Pertanto è necessario incrementare i tempi TDP (noto anche come T_DC), Ti e To in STEP 7.
W#16#80A2 Errore di accesso con avviso sulla coerenza
Durante l'aggiornamento dell'immagine di processo parziale degli ingressi è stato rilevato un
errore di accesso con simultaneo avviso di constatata incoerenza.
• I dati degli ingressi errati non sono stati letti dalla periferia. Nell'immagine di processo
parziale questi ingressi vengono impostati a zero.
L'aggiornamento dei dati degli ingressi non coinvolti dall'errore di accesso è stato suddiviso in
due cicli DP o PN.
W#16#80C1 Il momento dell'aggiornamento è anteriore all'intervallo di accesso. L'immagine di processo
parziale degli ingressi non è stata aggiornata.
W#16#8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Avvertenza
Se si impiega la SFC 126 "SYNC_PI" per parti dell'immagine di processo di slave DP normalizzati
per i quali sono state definite aree di coerenza maggiori di 32 byte, sono possibili anche i codici di
errore della SFC 14 "DPRD_DAT".
Descrizione
Con l'SFC 127 "SYNC_PO" è possibile aggiornare l'immagine di processo parziale delle uscite con
sincronizzazione di clock. L'SFC consente quindi a un programma utente collegato a un clock DP o a
un intervallo di trasmissione PN di trasmettere all'unità di periferia, in modo coerente e in sincronismo
di clock, i dati di uscita calcolati di un'immagine di processo parziale delle uscite.
L'SFC 127 può essere interrotta ed è richiamabile solo negli OB 61, 62, 63 e 64.
Avvertenza
È consentito richiamare l'SFC 127 "SYNC_PO" negli OB 61 - 64 soltanto se la corrispondente
immagine di processo parziale è stata assegnata al rispettivo OB in Configurazione HW.
Un'immagine di processo parziale aggiornata con l'SFC 127 non può essere aggiornata
contemporaneamente con l'SFC 27 "UPDAT_PO".
Parametri
Classe di Spiegazione
evento
Codice di
errore
W#16#0001 Messaggio di avviso sulla coerenza. L'aggiornamento dell'immagine di processo parziale è
stato suddiviso in due cicli DP o PN. Tuttavia i dati interni a uno slave o a un IO Device sono
stati trasmessi coerentemente.
W#16#8090 Valore non ammesso per il parametro PART o l'aggiornamento dell'immagine di processo
parziale delle uscite non è consentito in questo OB. Le uscite non sono state trasmesse
all'unità periferica. L'immagine di processo parziale delle uscite rimane inalterata.
W#16#8091 L'immagine di processo parziale indicata non è stata ancora definita oppure non si trova
nell'area dell'immagine di processo ammessa della CPU. Le uscite non sono state trasmesse
all'unità periferica. L'immagine di processo parziale delle uscite rimane inalterata.
W#16#80A0 Durante l'aggiornamento dell'immagine di processo parziale delle uscite è stato rilevato un
errore di accesso. Le uscite errate non sono state inoltrate alla periferia. Nell'immagine di
processo parziale queste uscite rimangono invariate.
W#16#80A1 Errore di accesso con avviso sulla coerenza
Durante l'aggiornamento dell'immagine di processo parziale delle uscite è stato rilevato un
errore di accesso con simultaneo avviso di constatata incoerenza.
• I dati delle uscite errate non sono stati inoltrati alla periferia. Nell'immagine di processo
parziale queste uscite rimangono invariate.
• L'aggiornamento dei dati delle uscite non coinvolte dall'errore di accesso è stato
suddiviso in due cicli DP o PN.
W#16#80A2 Il momento dell'aggiornamento è posteriore all'intervallo di accesso. Le uscite non sono state
trasmesse all'unità periferica. L'immagine di processo parziale delle uscite rimane inalterata.
W#16#80C1 Il momento dell'aggiornamento è anteriore all'intervallo di accesso. Le uscite non sono state
trasmesse all'unità periferica. L'immagine di processo parziale delle uscite rimane inalterata.
W#16#8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Avvertenza
Se si impiega la SFC 127 "SYNC_PO" per parti dell'immagine di processo di slave DP normalizzati
per i quali sono state definite aree di coerenza maggiori di 32 byte, sono possibili anche i codici di
errore della SFC 15 "DPWR_DAT".
Descrizione
Un richiamo della SFC 79 "SET" (set range of outputs) ha l'effetto seguente:
• il campo di bit selezionato nell'area di periferia tramite i parametri N e SA viene impostato
• anche i bit corrispondenti nell'immagine di processo delle uscite vengono impostati
indipendentemente se si trovano in un'immagine di processo parziale delle uscite.
Il campo di bit deve essere situato nella parte dell'area di periferia a cui è attribuita un'immagine di
processo.
In caso per una parte del campo di bit selezionato non esista una periferia, la SFC 79 tenta altrimenti
di impostare l'intero campo e fornisce in RET_VAL la corrispondente informazione di errore.
Avvertenza
Durante l'esecuzione della SFC 79, byte interi vengono sempre scritti nell'area di periferia.
Se il campo di bit selezionato tramite i parametri N e SA non inizia o termina su un limite byte, un
richiamo della SFC 79 ha l'effetto seguente:
• I bit sul primo e sull'ultimo dei byte da trasferire all'area della periferia che non appartengono al
campo di bit selezionato, ricevono il valore dei bit corrispondenti nell'immagine di processo delle
uscite. Ciò può dare luogo ad es. all'avviamento involontario di motori o alla disattivazione di
sistemi di raffreddamento
• Per i bit che appartengono al campo di bit selezionato vale quanto già detto sopra.
Se si parametrizza N con "0", un richiamo della SFC 79 non ha alcun effetto.
Se non è impostato il relè master control, il richiamo della SFC 79 non ha alcun effetto.
Informazioni di errore
Come analizzare le informazioni di errore del parametro RET_VAL è spiegato nel capitolo Analisi
degli errori con il parametro di uscita RET_VAL. In questo capitolo vengono riportate anche le
informazioni di errore generali delle SFC. La SFC 79 non fornisce informazioni sugli errori specifiche
per il parametro RET_VAL.
Descrizione
Un richiamo della SFC 80 "RSET" (reset range of outputs) ha l'effetto seguente:
• il campo di bit selezionato nell'area della periferia tramite i parametri N e SA viene resettato
• anche i bit corrispondenti nell'immagine di processo delle uscite vengono resettati
indipendentemente se si trovano in un'immagine di processo parziale delle uscite.
Il campo di bit deve essere situato nella parte dell'area di periferia a cui è attribuita un'immagine di
processo.
In caso per una parte del campo di bit selezionato non esista una periferia, la SFC 80 tenta altrimenti
di impostare l'intero campo e fornisce in RET_VAL la corrispondente informazione di errore.
Avvertenza
Con l'esecuzione della SFC 80, vengono sempre scritti interi byte nell'area della periferia.
Se il campo di bit selezionato tramite i parametri N e SA inizia o termina su un limite byte, un richiamo
della SFC 80 ha l'effetto seguente:
• I bit sul primo e sull'ultimo dei byte da trasferire all'area della periferia che non appartengono al
campo di bit selezionato, ricevono il valore dei bit corrispondenti nell'immagine di processo delle
uscite. Ciò può dare luogo ad es. all'avviamento involontario di motori o la disattivazione di
sistemi di raffreddamento.
• Per i bit che appartengono al campo di bit selezionato vale quanto già detto sopra.
Se si parametrizza N con "0", un richiamo della SFC 80 non ha alcun effetto.
Se il relè master control non è impostato, un richiamo della SFC 80 non ha alcun effetto.
Informazioni di errore
Come analizzare le informazioni di errore del parametro RET_VAL è spiegato nel capitolo Analisi
degli errori con il parametro di uscita RET_VAL. In questo capitolo vengono riportate anche le
informazioni di errore generali delle SFC. La SFC 80 non fornisce informazioni sugli errori specifiche
per il parametro RET_VAL.
Descrizione
L'SFB 32 "DRUM" realizza un dispositivo di avanzamento a passi con al massimo 16 passi. Il
numero del primo passo viene assegnato con il parametro DSP e il numero dell'ultimo passo con il
parametro LST_STEP.
In ogni passo vengono descritti tutti i 16 bit di uscita, da OUT0 a OUT15 e il parametro di uscita
OUT_WORD (in cui sono riuniti i bit di uscita). A un bit di uscita viene assegnato il bit relativo del
campo OUT_VAL oppure lo stesso bit d'uscita del passo precedente. Il valore assegnato dipende da
come vengono occupati i bit di maschera nel parametro S_MASK (vedere tabella seguente).
Avvertenza
La preimpostazione dei bit della maschera è 0. Per modificare l'impostazione attuale di uno o più bit
della maschera, procedere alla modifica nel DB di istanza.
L'SFB 32 "DRUM" si inserisce nel passo successivo se all'ingresso JOG di fronte al richiamo
dell'SFB precedente è emerso un fronte di salita. Se l'SFB si trova già nell'ultimo passo, le variabili Q
e EOD vengono poste in JOG con fronte di salita, DDC riceve valore 0 e l'SFB rimane nell'ultimo
passo fino a che l'ingresso RESET non viene occupato da 1.
Inoltre è possibile anche un avanzamento in funzione del tempo nel successivo passo. Per fare ciò è
necessario che il parametro DRUM_EN sia occupato da 1. Il passaggio nel passo successivo
avviene
• se è impostato il bit di evento EVENTi relativo al passo attuale e
• se è trascorso il tempo assegnato per il passo attuale.
Questo tempo risulta dal prodotto della base tempo DTBP e del fattore tempo valido per il passo
attuale (dal campo S_PRESET)
Avvertenza
Il tempo di esecuzione DCC rimasto ancora nel passo attuale viene ridotto solo se il relativo bit
d'evento EVENTi è impostato.
Avvertenza
Se è stato selezionato DRUM_EN a 1 si ha il particolare caso di
• avanzamento dei passi su interrupt periodico selezionando EVENTi = 1 per DSP i LST_STEP.
• avanzamento dei passi su interrupt di evento tramite i bit di evento EVENTi selezionando
DTBP = 0.
È inoltre possibile fare avanzare in qualsiasi momento il dispositivo di avanzamento a passi (anche
con DRUM EN=1) tramite l'ingresso JOG.
Informazioni di errore
Se dovesse verificare una delle condizioni indicate nella seguente tabella, l'SFC 32 "DRUM" rimane
nello stato attuale e l'uscita ERR_CODE viene impostata in base a ciò.
Codice di Spiegazione
errore
(W#16#...)
0000 Nessun errore.
8081 Valore non ammesso per LST_STEP
8082 Valore non ammesso per DSC
8083 Valore non ammesso per DSP
8084 Solo S7-400: il prodotto DCC = DTBP * S_PRESET [DSC] supera il valore 2**31-1 (circa
24,86 giorni)
Descrizione
Conoscendo il posto connettore di un canale di un'unità di ingresso/uscita e l'offset dell'area di
indirizzamento dati utili, è possibile con la SFC 5 "GADR_LGC" (convert geographical address to
logical address) rilevare l'indirizzo di base logico corrispondente di un'unità, ovvero l'indirizzo E o A
più piccolo.
Impiegando l'SFC 5 su moduli power o su moduli con indirizzi compressi (ET 200S), viene fornito
l'indirizzo di diagnostica.
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Nessun errore.
8093 Valore non consentito nel parametro SUBNETID (non è ammesso l'uso dell'SFC 5 per
PROFINET IO).
8094 Nessuna sotto-rete è stata configurata con la SUBNETID indicata.
8095 Valore non ammesso nel parametro RACK
8096 Valore non ammesso nel parametro SLOT
8097 Valore non ammesso nel parametro SUBSLOT
8098 Valore non ammesso nel parametro SUBADDR
8099 Il posto connettore non è stato progettato
809A Il sotto-indirizzo per il posto connettore selezionato non è progettato (possibile soltanto nella
periferia a livello centrale per la CPU e l'IM).
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
Con la SFC 49 "LGC_GADR" (convert logical address to geographical address) è possibile rilevare il
posto connettore dell'unità appartenente ad un indirizzo logico e l'offset nell'area di indirizzamento
dati utili dell'unità.
Avvertenza
L'applicazione della SFC 49 "LGC_GADR" a un modulo con indirizzi compressi (ET 200S) non è
ammessa.
Avvertenza
Se si impiega un sistema di automazione S7-400H in funzionamento ridondato e, richiamando la
SFC 49, si indica nel parametro LADDR l'indirizzo logico di un'unità di uno slave DP collegato,
nell'high byte del parametro RACK viene emessa l'ID del sistema master DP del canale attivo. Se
non esiste un canale attivo, viene emessa l'ID del sistema master DP corrispondente della CPU
master.
Informazioni di errore
Descrizione
Partendo da un indirizzo logico di un'unità, di un sotomodulo centrale o di un sottomodulo PNIO è
possibile, con l'SFC 50 "RD_LGADR" (read module logical addresses), determinare tutti gli indirizzi
logici convenzionati di questa unità o di questo sottomodulo. Gli indirizzi devono essere stati
assegnati alle unità o ai sottomoduli in precedenza con STEP 7. L'SFC 50 registra gli indirizzi logici
rilevati nel campo PEADDR o nel campo PAADDR in ordine crescente.
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Nessun errore.
8090 L'indirizzo logico indicato non è valido
80A0 Errore nel parametro di uscita PEADDR: il tipo dei dati degli elementi di campo non è WORD.
(Questo codice di errore esiste solo in S7-400 e nella CPU 318.)
80A1 Errore nel parametro di uscita PAADDR: il tipo dei dati degli elementi di campo non è WORD.
(Questo codice di errore esiste solo in S7-400 e nella CPU 318.)
80A2 Errore nel parametro di uscita PEADDR: il campo indicato non ha potuto accogliere tutti gli
indirizzi logici.
80A3 Errore nel parametro di uscita PAADDR: il campo indicato non ha potuto accogliere tutti gli
indirizzi logici.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
Dal canale di un'unità degli ingressi e delle uscite si ricava il rispettivo posto connettore dell'unità. La
SFC 70 "GEO_LOG" ("convert geographical address to logical address") consente di determinare da
tali dati il corrispondente indirizzo iniziale dell'unità, vale a dire l'indirizzo E o A più basso.
Impiegando l'SFC 70 su moduli power oppure su moduli con indirizzi compressi (ET 200S), viene
restituito l'indirizzo di diagnostica.
Parametri
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Non si sono verificati errori
8094 Non è stata configurata una sottorete con la SUBNETID indicata
8095 Valore non consentito per il parametro STATION
8096 Valore non consentito per il parametro SLOT
8097 Valore non consentito per il parametro SUBSLOT
8099 Il posto connettore non è stato progettato
809A L'indirizzo del sotto-modulo per il posto connettore selezionato non è stato progettato
8xyy Informazione di errore generale, vedere anche Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
La SFC 71 "LOG_GEO" ("convert logical address to geographical address") consente di determinare
il posto connettore dell'unità corrispondente a un indirizzo logico e l'offset nell'area di indirizzi dei dati
utili dell'unità.
Parametri
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Non si sono verificati errori
8090 L'indirizzo logico indicato non è valido
8xyy Informazione di errore generale, vedere anche Analisi degli errori con il parametro di uscita
RET_VAL
Campo di validità
L'SFC descritta in questo capitolo può essere utilizzata solo se si usa una CPU 315-2DP come slave
intelligente.
Descrizione
Con l'SFC 7 "DP_PRAL" viene attivato, dal programma utente di uno slave intelligente, un interrupt
di processo nel relativo master DP. Questo fa in modo che venga avviato l'OB 40 nel master DP.
Con il parametro di ingresso AL_INFO è possibile contrassegnare la causa dell'interrupt di processo
desiderato. Questa identificazione di interrupt viene trasferita al master DP e può essere analizzata
nell'OB 40 (variabile OB40_POINT_ADDR).
L'interrupt di processo richiesto viene definito in modo univoco tramite i parametri di ingresso IOID e
LADDR. Per ogni area di indirizzamento progettata nella memoria di trasferimento è possibile
attivare un interrupt di processo esattamente nel momento desiderato.
Metodo di lavoro
L'SFC 7 "DP_PRAL" è un'SFC asincrona, vale a dire che l'elaborazione comprende più richiami
dell'SFC. La richiesta di interrupt di processo viene avviata richiamando l'SFC 7 con REQ=1.
Lo stato dell'ordine viene visualizzato tramite i parametri di uscita RET_VAL e BUSY, vedere anche il
capitolo Significato dei parametri REQ, RET_VAL e BUSY nelle SFC asincrone. L'ordine è terminato
quando si è conclusa l'elaborazione dell'OB 40 nel master DP.
Avvertenza
Se lo slave DP viene utilizzato come uno slave standard, l'ordine è concluso non appena il
telegramma di diagnostica è stato ritirato dal master DP.
Identificazione di un ordine
I parametri di ingresso IOID e LADDR definiscono un ordine in modo univoco.
Se l'SFC 7 "DP_PRAL" è stata richiamata su uno slave DP e la si richiama nuovamente prima che il
master DP abbia confermato l'interrupt di processo richiesto, il successivo comportamento
dell'SFC dipende in maniera decisiva dal fatto che il nuovo richiamo riguardi lo stesso ordine: se i
parametri IOID e LADDR concordano con un ordine non ancora concluso, il richiamo SFC viene
interpretato come richiamo conseguente, indipendentemente dal valore del parametro AL_INFO, e
in RET_VAL viene registrato il valore W#16#7002.
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Il L'ordine è stato eseguito senza errori
7000 Primo richiamo con REQ=0. Nessuna richiesta di interrupt di processo attiva; BUSY ha
valore 0.
7001 Primo richiamo con REQ=1. È stato richiesto un interrupt di processo al master DP; BUSY ha
valore 1.
7002 Richiamo intermedio (REQ è irrilevante): l'interrupt di processo attivato non è stato ancora
confermato dal master DP; BUSY ha valore 1.
8090 Indirizzo di partenza dell'area di indirizzamento nella memoria di trasferimento errato.
8091 Interrupt inibito tramite la progettazione.
8093 Tramite la coppia di parametri IOID e LADDR viene indirizzata un'unità dalla quale non è
possibile una richiesta di interrupt di processo.
80B5 Richiamo nel master DP non ammesso
80C3 Alcune risorse necessarie (memoria ecc.) sono attualmente occupate.
80C5 La periferia decentrata non è attualmente disponibile (ad es. guasto della stazione).
80C8 Lo stato di funzionamento attuale del master DP non consente di eseguire questa funzione.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
Con l'SFC 11 "DPSYC_FR" è possibile sincronizzare uno o più gruppi di slave DP.
A tale scopo occorre inviare una delle seguenti istruzioni di comando, o una combinazione di esse, ai
gruppi interessati:
• SYNC (emissione e congelamento simultanei degli stati delle uscite con gli slave DP)
• UNSYNC (annulla nuovamente l'istruzione di comando SYNC)
• FREEZE (congelamento degli stati degli ingressi con gli slave DP)
• UNFREEZE (annulla nuovamente l'istruzione di comando FREEZE)
Avvertenza
Osservare che i comandi di controllo SYNC e FREEZE restano attivi anche in seguito a un nuovo
avviamento o a un avviamento a freddo.
Osservare inoltre che è consentito attivare un solo ordine SYNC/UNSYNC o un solo ordine
FREEZE/UNFREEZE alla volta.
Presupposti
Prima di inviare le istruzioni di comando sopra indicate, gli slave DP devono essere stati suddivisi in
gruppi con STEP 7 (vedere /231/). Occorre sapere a quale gruppo e con quale numero è stato
assegnato un determinato slave DP e quali caratteristiche hanno i singoli gruppi in merito al
comportamento SYNC/FREEZE.
Metodo di lavoro
L'SFC 11 "DPSYC_FR" è un'SFC asincrona, vale a dire che l'elaborazione comprende più richiami
dell'SFC. L'ordine viene avviato richiamando l'SFC 11 con REQ=1.
Lo stato dell'ordine viene visualizzato tramite i parametri di uscita RET_VAL e BUSY, vedere anche il
paragrafo Significato dei parametri REQ, RET_VAL e BUSY nelle SFC asincrone.
Identificazione di un ordine
Se è stato attivato un ordine SYNC/FREEZE e viene nuovamente richiamata l'SFC 11 prima che
questo ordine sia stato concluso, il successivo comportamento dell'SFC dipende in maniera decisiva
dal fatto che il nuovo richiamo riguardi lo stesso ordine. Se i parametri di ingresso LADDR, GROUP e
MODE concordano, il richiamo SFC viene interpretato come richiamo conseguente.
Funzione di SYNC
Con l'istruzione di comando SYNC gli slave DP dei gruppi indicati vengono commutati nel modo
Sync, ciò significa che il master DP ordina agli slave DP interessati di congelare le uscite sugli ultimi
valori ricevuti. Nei telegrammi di uscita successivi gli slave DP memorizzano i dati di uscita in un
buffer interno; lo stato delle uscite rimane invariato.
Dopo ogni istruzione di comando SYNC gli slave DP dei gruppi selezionati inviano i dati di uscita del
loro buffer interno alle uscite del processo.
Le uscite vengono di nuovo aggiornate ciclicamente solo quando viene data l'istruzione di comando
UNSYNC con l'ausilio dell'SFC 11 "DPSYC_FR".
Avvertenza
Se slave DP del gruppo/i selezionato/i non sono nella rete o sono guasti nell'istante in cui viene data
l'istruzione di comando, questi non vengono commutati nel modo Sync e non ne viene data
comunicazione tramite il valore di ritorno dell'SFC.
Funzione di FREEZE
Con l'istruzione di comando FREEZE gli slave DP interessati vengono commutati nel modo Freeze,
ciò significa che il master DP ordina agli slave DP interessati di congelare lo stato attuale degli
ingressi. Gli slave DP trasferiscono poi questo stato momentaneo al master DP nell'ambito del
trasferimento ciclico.
Dopo ogni istruzione di comando FREEZE gli slave DP congelano di nuovo lo stato degli ingressi.
Il master DP riceve allora lo stato attuale degli ingressi nuovamente in modo ciclico solo quando
viene data l'istruzione di comando UNFREEZE con l'ausilio dell'SFC 11 "DPSYC_FR".
Avvertenza
Se slave DP del gruppo/i selezionato/i non sono nella rete o sono guasti nell'istante in cui viene data
l'istruzione di comando, questi non vengono commutati nel modo Sync e non ne viene data
comunicazione tramite il valore di ritorno dell'SFC.
Possibili valori:
Con esattamente un identificativo per ordine:
B#16#04 (UNFREEZE),
B#16#08 (FREEZE),
B#16#10 (UNSYNC),
B#16#20 (SYNC)
Con più identificativo per ordine:
B#16#14 (UNSYNC, UNFREEZE),
B#16#18 (UNSYNC, FREEZE),
B#16#24 (SYNC, UNFREEZE),
B#16#28 (SYNC, FREEZE)
RET_VAL OUTPUT INT E, A, M, D, L Se durante l'elaborazione della funzione si
verifica un errore, il valore di ritorno contiene
un codice di errore.
RET_VAL è valido solo per un ciclo, ovvero
dal primo comando che segue il richiamo
dell'SFC fino al richiamo SFC successivo. Ne
consegue che RET_VAL deve essere
analizzato dopo ogni elaborazione del
blocco.
BUSY OUTPUT BOOL E, A, M, D, L BUSY=1:
L'ordine SYNC/FREEZE non è stato ancora
terminato.
Informazioni di errore
Avvertenza
Se si accede agli slave DPV1, è possibile inoltrare informazioni sugli errori di tali slave dal master DP
all'SFC. Per maggiori informazioni a riguardo vedere Ricezione di un allarme con l'SFB 54 "RALRM"
STATUS[3].
Codice di Spiegazione
errore
(W#16#...)
0000 L'ordine è stato eseguito senza errori
7000 Primo richiamo con REQ=0. L'ordine definito da LADDR, GROUP e MODE non è attivo;
BUSY ha valore 0.
7001 Primo richiamo con REQ=1. L'ordine definito da LADDR, GROUP e MODE è stato attivato;
BUSY ha valore 1.
7002 Richiamo intermedio (REQ è irrilevante): l'ordine SYNC/FREEZE attivato non è ancora in
corso; BUSY ha valore 1.
8090 L'unità selezionata tramite LADDR non è un master DP.
8093 Questa SFC non è ammessa per l'unità selezionata tramite LADDR (progettazione o
versione del master DP).
8094 Parametro GROUP errato
8095 Parametro MODE errato.
80B0 Il gruppo selezionato tramite GROUP non è stato progettato.
80B1 Il gruppo selezionato tramite GROUP non è stato assegnato a questa CPU.
80B2 L'ordine SYNC specificato tramite MODE non è ammesso sul gruppo selezionato tramite
GROUP.
80B3 L'ordine FREEZE specificato tramite MODE non è ammesso sul gruppo selezionato tramite
GROUP.
80C2 Mancanza temporanea di risorse del master DP: il master DP elabora momentaneamente il
massimo possibile di ordini per una CPU.
80C3 Questo ordine SYNC/UNSYNC non può essere momentaneamente attivato, in quanto in uno
stesso momento può essere attivato solo un ordine SYNC-/UNSYNC. Controllare il
programma utente.
80C4 Questo ordine FREEZE/UNFREEZE non può essere momentaneamente attivato, in quanto
in uno stesso momento può essere attivato solo un ordine FREEZE/UNFREEZE. Controllare
il programma utente.
80C5 Cortocircuito direttamente nell'interfaccia DP
80C6 Interruzione dell'ordine perché la CPU ha bloccato l'accesso alla periferia
80C7 Interruzione dell'ordine a causa del nuovo avviamento (avviamento a caldo) o avviamento a
freddo del master DP.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Descrizione
L'SFC 12 "D_ACT_DP" consente la disattivazione e la riattivazione mirate di slave DP/PROFINET
IO Device progettati. È inoltre possibile determinare, per ciascun slave DP o PROFINET IO Device
utilizzati, se questi componenti sono attualmente attivati o disattivati.
Disattivando un router di tipo IE/PB Link PN IO con l'ausilio dell'SFC 12, si avrà la disattivazione di
tutti gli slave PROFIBUS DP ad esso collegati. Il mancato funzionamento viene segnalato.
L'SFC 12 non è applicabile su apparecchiature da campo PROFIBUS PA che sono collegate ad un
sistema master DP tramite DP/PA Link.
Avvertenza
Finché sono attivi uno o più ordini SFC 12 non è possibile caricare dal PG alla CPU configurazioni
modificate (in ambito CiR).
Durante il caricamento dal PG alla CPU di una configurazione modificata in ambito CiR, la CPU
rifiuta l'attivazione di un ordine SFC 12.
L'elaborazione di un ordine di attivazione o di disattivazione richiede l'esecuzione di diversi cicli nel
punto di controllo del ciclo. In un loop programmato non è pertanto possibile attendere la fine di un
ordine di questo tipo.
Scopo
Se in una CPU vengono configurati slave DP/ PROFINET IO Device che non esistono realmente
oppure che al momento non sono necessari, la CPU accede regolarmente a questi slave DP/
PROFINET IO Device. Dopo la loro disattivazione non vi sono più altri accessi della CPU. In
PROFIBUS DP si ottiene così il ciclo di bus DP più veloce possibile e non compaiono più i relativi
eventi di errore.
Esempi applicativi
Nella costruzione di macchine in serie il costruttore prevede una varietà di opzioni. Ogni macchina
fornita comprende tuttavia solo una combinazione particolare di determinate opzioni.
Tutte le opzioni possibili della macchina sono progettate dal costruttore come slave DP/ PROFINET
IO Device al fine di creare e tenere aggiornato un programma utente comprendente tutte le opzioni
possibili. Con l'SFC 12 è possibile disattivare all'avviamento della macchina tutti gli slave DP /
PROFINET IO Device non disponibili.
Una situazione analoga esiste per le macchine utensili che comprendono molti utensili ma che ne
utilizzano solo pochi in un determinato momento. Qui gli utensili vengono realizzati come slave DP/
PROFINET IO Device. Il programma utente attiva con l'ausilio dell'SFC 12 gli utensili attualmente
necessari e disattiva gli utensili che vengono riutilizzati solo in un secondo momento.
Funzionamento
L'SFC 12 "D_ACT_DP" è una SFC asincrona, vale a dire che l'elaborazione comprende più richiami
dell'SFC. L'ordine viene avviato richiamando l'SFC 12 con REQ=1.
Lo stato dell'ordine viene visualizzato tramite i parametri di uscita RET_VAL e BUSY, vedere anche
Significato di REQ, RET_VAL e BUSY nelle SFC asincrone.
Identificazione di un ordine
Nel caso è stato avviato un ordine di disattivazione e attivazione e viene di nuovo richiamata
l'SFC 12 prima che questo sia stato concluso, il successivo comportamento dell'SFC dipende in
maniera decisiva dal fatto che il nuovo richiamo riguardi lo stesso ordine. Se il parametro LADDR
concorda con lo stesso parametro dell'ordine, il richiamo SFC viene interpretato come richiamo
conseguente.
Se una stazione DP/ PNO si guasta dopo essere stata disattivata con l'SFC 12, il guasto non viene
riconosciuto dal sistema operativo. Pertanto non avviene né un avvio dell'OB86 né un'introduzione
nel buffer di diagnostica.
Con PROFIBUS DP vale: se si intende disattivare slave DP che partecipano come mittenti alla
comunicazione diretta, si raccomanda di disattivare prima i riceventi (auditori) che ascoltano quali
dati di ricezione il mittente invia al proprio master DP. Solo al termine di questa procedura disattivare
il mittente.
Se si cerca di attivare con l'SFC 12 uno slave disattivato separato fisicamente dal bus DP l'SFC invia
il codice di errore W#16#80A2 e lo slave rimane disattivato. Nel caso sia di nuovo collegato al bus DP
in un secondo momento, occorre riattivare lo slave per mezzo dell'SFC 12 .
Se viene effettuato il tentativo di attivare un PROFINET IO Device fisicamente separato dal bus
PROFINET, l'SFC 12 rimane attiva. A differenza di quanto avviene negli slave DP, l'interruzione
automatica dopo un determinato intervallo in questo caso non ha luogo. L'interruzione dell'ordine in
corso deve essere eseguita dall'utente
Avvertenza
L'attivazione di uno slave DP/ PROFINET IO Device può durare un certo lasso di tempo. Se si
desidera interrompere un ordine di attivazione in corso, avviare l'SFC 12 con lo stesso valore per
LADDR e MODE = 2. Ripetere il richiamo dell'SFC 12 con MODE = 2 finché non viene visualizzata
l'avvenuta interruzione dell'ordine di attivazione con RET_VAL = 0.
Se si vogliono attivare slave DP che partecipano alla comunicazione diretta si raccomanda di attivare
prima i mittenti e poi i destinatari (auditori).
Avvertenza
La CPU S7-300-CPU non supporta un richiamo dell'SFC 12 negli OB di avviamento.
Parametri
Parametri dell'SFC 12 "D_ACT_DP"
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 L'ordine è stato eseguito senza errori
0001 Lo slave DP/ il PROFINET IO Device è attivato (questo codice di errore è solo possibile con
MODE = 0.)
0002 Lo slave DP/ il PROFINET IO Device è disattivato (questo codice di errore è solo possibile
con MODE = 0.)
7000 Primo richiamo con REQ=0. L'ordine definito con LADDR non è attivo; BUSY ha valore 0.
7001 Primo richiamo con REQ=1. L'ordine definito con LADDR è stato attivato; BUSY ha valore 1..
7002 Richiamo intermedio (REQ è irrilevante): L'ordine attivato è ancora in fase di esecuzione;
BUSY ha valore 1.
8090 • L'utente non ha progettato un'unità con l'indirizzo indicato in LADDR.
• L'utente utilizza la propria CPU come slave I e ha indicato in LADDR un indirizzo di
questo slave I.
8092 L'operazione di disattivazione in corso di uno slave DP /PROFINET IO Device (MODE=2) non
può essere interrotta dalla sua attivazione (MODE=1)
Attivare i componenti in un secondo momento.
8093 All'indirizzo indicato in LADDR non appartiene alcuno slave DP /PROFINET IO Device
(assenza di una progettazione ), oppure il parametro MODE non è noto.
8094 È stato effettuato il tentativo di attivare un dispositivo probabilmente partner della porta
alterna di uno strumento sulla quale attualmente è già attivato un altro dispositivo. Questo
dispositivo rimane attivato.
80A1 Non è stato possibile parametrizzare il componente indirizzato. (Questo codice di errore è
possibile soltanto con MODE = 1).
Avvertenza:
Quest'informazione di errore viene fornita dall'SFC soltanto in caso di guasto dello slave/del
dispositivo attivati durante la parametrizzazione. Se soltanto la parametrizzazione di una
singola unità non è riuscita, l'SFC fornisce l'informazione di errore W#16#0000.
80A2 Lo slave DP interrogato non risponde (quest'informazione di errore non esiste nei PROFINET
IO Device. L'operazione non è soggetta al controllo del tempo in PROFINET).
80A3 Il master DP /PROFINET IO Controller in oggetto non supporta questa funzione.
80A4 La CPU non supporta questa funzione per master DP/PROFINET IO Controller esterni.
80A6 Errore di posto connettore nello slave DP /PROFINET IO Device; non è possibile accedere a
tutti i dati utili (questo codice di errore è possibile solo con MODE=1).
Avvertenza:
Quest'informazione di errore viene fornita dall'SFC soltanto se dopo la relativa
parametrizzazione e prima della fine dell'SFC, il componente attivato subisce nuovamente un
guasto. Se il gusto concerne una singola unità, l'SFC fornisce l'informazione di errore
W#16#0000.
80C1 L'SFC 12 è stata avviata e viene continuata con un altro indirizzo logico (questo codice di
errore è possibile solo con MODE=1 e con MODE=2).
Codice di Spiegazione
errore
(W#16#...)
80C3 • Errore di risorse temporaneo: la CPU elabora momentaneamente il maggior numero
possibile di ordini di attivazione o disattivazione. (Questo codice di errore è possibile
soltanto con MODE = 1 e MODE = 2.)
• È in corso una modifica della configurazione della CPU. La disattivazione e l'attivazione
di slave DP /PROFINET IO Device non è per il momento possibile.
80C5 DP: gli ordini non ancora accettati dall'utente vengono ignorati dopo il riavviamento.
80C6 PROFINET: gli ordini non ancora accettati dall'utente vengono ignorati dopo il riavviamento.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Diagnostica slave
Con l'SFC 13 "DPNRM_DG" (read diagnosis data of a DP-slave) è possibile leggere i dati di
diagnostica di uno slave DP nella forma stabilita da EN 50 170 Volume 2, PROFIBUS.
La struttura generale della diagnostica slave è riportata nella seguente tabella, ulteriori informazioni
nei manuali relativi agli slave DP.
Byte Significato
0 Stato di stazione 1
1 Stato di stazione 2
2 Stato di stazione 3
3 Numero stazione master
4 Identificazione del costruttore (byte superiore)
5 Identificazione del costruttore (byte inferiore)
6 ... Altre diagnostiche specifiche dello slave
Descrizione
Con l'SFC 13 "DPNRM_DG" (read diagnosis data of a DP-slave) è possibile leggere i dati di
diagnostica di uno slave DP nella forma stabilita da EN 50 170 Volume 2, PROFIBUS. Al termine del
corretto trasferimento dati, i dati letti vengono registrati nell'area di destinazione rappresentata da
RECORD.
L'operazione di lettura viene avviata occupando con 1 il parametro di ingresso REQ al momento di
richiamo dell'SFC 13.
Metodo di lavoro
L'operazione di lettura viene eseguita in modo asincrono, cioè l'operazione si estende su un arco di
più chiamate dell'SFC 13. Tramite i parametri di uscita RET_VAL e BUSY viene visualizzato lo stato
dell'ordine, vedere il capitolo Significato dei parametri REQ, RET_VAL e BUSY nelle SFC asincrone.
Avvertenza
I parametri attuali di RECORD devono concordare in tutti i richiami che appartengono ad un ordine.
Un ordine è definito in modo univoco con il parametro di ingresso LADDR.
Avvertenza
Il numero di dati letti dipende, in uno slave DP, dal suo stato di diagnostica.
Informazioni di errore
Per analizzare le informazioni di errore del parametro RET_VAL, vedere anche Analisi degli errori
con il parametro di uscita RET_VAL. In questo capitolo sono riportate anche le informazioni di errore
generali delle SFC. Le informazioni di errore specifiche per l'SFC 13 sono una parte delle
informazioni sugli errori per l'SFC 59 "RD_REC", vedere Lettura di set di dati con la SFC 59
"RD_REC".
Scopo dell'SFC 14
L'SFC 14 "DPRD_DAT" è necessaria in quanto con i comandi di caricamento che hanno accesso
alla periferia e all'immagine di processo degli ingressi è possibile leggere in modo coerente un
massimo di quattro byte.
Avvertenza
I dati coerenti si possono eventualmente leggere anche attraverso l'immagine di processo degli
ingressi.
Per verificare se la CPU S7-300 utilizzata supporta questa funzionalità, leggere il manuale Sistemi di
automazione S7-300: Configurazione e dati della CPU.
Tutte le CPU S7-400 supportano questa funzionalità.
! Cautela
In caso di utilizzo dell'SFC 14 "DPRD_DAT" evitare gli accessi ad aree della periferia le cui immagini
di processo parziali sono assegnate con collegamento OB6x (allarmi in sincronismo di clock).
Descrizione
Con l'SFC 14 "DPRD_DAT" (read consistent data of a DP-normslave) è possibile leggere dati
coerenti da uno slave standard DP/PROFINET IO Device. Le informazioni relative alla lunghezza
massima per le CPU S7-300 sono indicate nei manuali Sistemi di automazione S7-300:
Configurazione e dati della CPU, ET 200S, Modulo di interfaccia IM151-7 CPU oppure Modulo di
base BM147 CPU. Per quanto riguarda le CPU S7-400, la lunghezza massima è indicata nel
manuale Sistema di automazione S7-400 Dati della CPU. Se il trasferimento dati è avvenuto
correttamente, i dati letti vengono registrati nell'area di destinazione rappresentata da RECORD.
L'area di destinazione deve avere la stessa lunghezza di quella programmata con STEP 7 per l'unità
selezionata.
Con uno slave standard DP con struttura modulare e varie identificazioni DP, è possibile con un
richiamo dell'SFC 14, accedere solo ai dati di un'unità/identificazione DP sotto l'indirizzo iniziale
progettato.
Informazioni di errore
Avvertenza
Se si accede agli slave DPV1, è possibile inoltrare informazioni sugli errori di tali slave dal master DP
all'SFC. Per maggiori informazioni a riguardo vedere Ricezione di un allarme con l'SFB 54 "RALRM"
STATUS[3].
Avvertenza
I dati coerenti si possono eventualmente scrivere anche attraverso l'immagine di processo delle
uscite.
Per verificare se la CPU S7-300 utilizzata supporta questa funzionalità, leggere il manuale Sistemi di
automazione S7-300: Configurazione e dati della CPU.
Tutte le CPU S7-400 supportano questa funzionalità.Non utilizzare, durante la scrittura di dati
coerenti, entrambe le funzioni contemporaneamente: optare o per l'SFC 15 o per la scrittura tramite
immagine di processo parziale delle uscite.
! Cautela
In caso di utilizzo dell'SFC 15 "DPWR_DAT" evitare gli accessi ad aree della periferia le cui immagini
di processo parziali sono assegnate con collegamento OB6x (allarmi in sincronismo di clock).
Scopo dell'SFC 15
L'SFC 15 "DPWR_DAT" è necessaria in quanto con i comandi di trasferimento che hanno accesso
alla periferia e all'immagine di processo degli ingressi è possibile scrivere in modo coerente un
massimo di quattro byte.
Descrizione
Con l'SFC 15 "DPWR_DAT" (write consistent data to a DP-normslave) vengono trasferiti i dati in
RECORD in modo coerente allo slave standard DP/PROFINET IO Device indirizzato ed
eventualmente all'immagine di processo (vale a dire se l'utente ha progettato l'area di indirizzamento
dello slave DP standard come area di coerenza in un'immagine di processo). Le informazioni relative
alla lunghezza massima dei dati da trasferire per le CPU S7-300 sono indicate nei manuali Sistemi di
automazione S7-300: Configurazione e dati della CPU, ET 200S, Modulo di interfaccia IM151-7
CPU oppure Modulo di base BM147 CPU. Per quanto riguarda le CPU S7-400, la lunghezza
massima è indicata nel manuale Sistema di automazione S7-400 Dati della CPU . Il trasferimento
avviene in modo sincrono, cioè al termine dell'SFC, anche l'operazione di scrittura è terminata.
L'area sorgente deve avere la stessa lunghezza di quella programmata con STEP 7 per l'unità
selezionata.
Con uno slave standard DP con struttura modulare e varie identificazioni DP, è possibile accedere
solo ad una unità dello slave DP.
Informazioni di errore
Avvertenza
Se si accede agli slave DPV1, è possibile inoltrare informazioni sugli errori di tali slave dal master DP
all'SFC. Per maggiori informazioni a riguardo vedere Ricezione di un allarme con l'SFB 54 "RALRM"
STATUS[3].
Codice di Spiegazione
errore
(W#16#...)
0000 Nessun errore.
808x Errore di sistema sull'interfaccia DP esterna
8090 • Nessuna unità progettata per l'indirizzo logico base indicato oppure
• non è osservata la limitazione relativa alla lunghezza dei dati oppure
• l'indirizzo iniziale del parametro LADDR non è stato indicato in formato esadecimale.
8092 Nel riferimento ANY è indicato un tipo non uguale a BYTE.
8093 Nessuna unità DP/nessun PROFINET IO Device per l'indirizzo logico indicato da LADDR su
cui si possono scrivere dati coerenti.
80A1 Durante l'accesso alla periferia è stato riconosciuto un errore di accesso.
80B0 Guasto dello slave con interfaccia DP esterna.
80B1 La lunghezza dell'area sorgente indicata non è uguale alla lunghezza dei dati utili progettata
con STEP 7.
80B2 Errore di sistema con interfaccia DP esterna
80B3 Errore di sistema con interfaccia DP esterna
80C1 I dati del ordine di scrittura precedente sull'unità non sono stati ancora elaborati dall'unità.
80C2 Errore di sistema con interfaccia DP esterna
80Fx Errore di sistema con interfaccia DP esterna
80xy Errore di sistema con interfaccia DP esterna
80x Errore di sistema con interfaccia DP esterna
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Avvertenza
Il sistema operativo aggiorna per default sia il componente PROFINET CBA che le interconnessioni
DP nel punto di controllo del ciclo. Questi aggiornamenti sono indispensabili e vanno eseguiti
comunque, anche se l'utente ha disattivato gli aggiornamenti automatici al momento della
progettazione (ad es. per incidere meglio sul comportamento temporale della CPU). In questo caso
occorre richiamare le SFC da 112 a 114 al momento opportuno.
Gli aggiornamenti indicati si possono disattivare al momento della progettazione solamente tutti
insieme.
Memoria nascosta
Il DB di interfaccia costituisce l'interfaccia del programma utente del componente PROFINET CBA.
Per garantire che i suoi ingressi e le sue uscite siano coerenti al momento dell'esecuzione delle
corrispondenti parti del programma, per ogni DB di interfaccia è disponibile un'area di memoria,
identica per configurazione, che viene gestita dal sistema operativo ed è definita memoria nascosta.
Nel programma utente è possibile accedere soltanto al DB di interfaccia, mentre altri componenti
(esterni) PROFINET CBA possono accedere soltanto alla memoria nascosta. In questo modo si evita
qualunque conflitto di accesso agli ingressi e alle uscite del DB di interfaccia.
L'aggiornamento da parte del sistema avviene sempre nel punto di controllo del ciclo.
Per eseguire l'aggiornamento tramite le SFC 112 e 113, richiamare la SFC 112 all'inizio dell'OB nel
quale si trova il programma appartenente al componente PROFINET CBA e l'SFC 113 alla fine dello
stesso OB. La figura seguente mostra un esempio utilizzando l'OB 30.
Descrizione
La SFC 112 "PN_IN" consente di copiare i dati di ingresso contenuti in PROFINET CBA dalla
memoria nascosta del componente PROFINET CBA al DB rispettivo di interfaccia. Al termine della
SFC i dati di ingresso attuali sono a disposizione dell'applicazione utente.
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Non si sono verificati errori.
8001 Progettazione PROFINET CBA mancante o non valida.
8002 Il numero del DB non corrisponde alla progettazione del componente.
8004 Il numero del DB corrisponde alla progettazione del componente ma il DB non è stato
caricato.
8005 Il DB di interfaccia è stato compilato con la parola chiave UNLINKED, questo indica che esso
si trova soltanto nella memoria di caricamento ma non nella memoria di lavoro.
8006 Il DB di interfaccia è protetto in scrittura nella CPU.
80B1 Errore di lunghezza in lettura o scrittura. La progettazione del componente non è compatibile
con il DB caricato.
8xyy Informazione di errore generale, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
La SFC 113 "PN_OUT" consente di copiare i dati di uscita creati nell'applicazione dell'utente dal DB
di interfaccia del componente PROFINET CBA nella corrispondente memoria nascosta. Al termine
della SFC i dati di uscita attuali sono a disposizione di altri componenti PROFINET CBA
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Non si sono verificati errori.
8001 La progettazione PROFINET CBA manca o non è valida.
8002 Il numero del DB non corrisponde alla progettazione del componente.
8004 Il numero del DB corrisponde alla progettazione del componente ma il DB non è stato
caricato.
8005 Il DB di interfaccia è stato compilato con la parola chiave UNLINKED, questo indica che esso
si trova soltanto nella memoria di caricamento ma non nella memoria di lavoro.
8006 Il DB di interfaccia è protetto in scrittura nella CPU.
80B1 Errore di lunghezza in lettura o scrittura. La progettazione del componente non è compatibile
con il DB caricato.
8xyy Informazione di errore generale, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
La SFC 114 "PN_DP" consente di aggiornare
• Tutte le interconnessioni tra componenti PROFINET CBA nel PROFIBUS locale e
• Tutte le interconnessioni con trasferimento ciclico tra componenti PROFINET CBA nel
PROFIBUS locale e componenti PROFINET CBA esterni. Queste interconnessioni sono valide
oltre i limiti di rete (tra Industrial Ethernet e PROFIBUS DP).
Procedimento
La SFC 114 "PN_DP" è una SFC asincrona, la cui elaborazione si può estendere per più richiami di
SFC. L'aggiornamento delle interconnessioni DP si avvia richiamando la SFC 114 con REQ=1.
Lo stato dell'ordine viene visualizzato attraverso i parametri di uscita RET_VAL e BUSY (vedere
anche: Significato dei parametri REQ, RET_VAL e BUSY nelle SFC che lavorano in modo
asincrono).
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Ordine eseguito senza errori.
7000 Primo richiamo con REQ=0. L'aggiornamento delle interconnessioni DP non viene avviato.
BUSY ha il valore 0.
7001 (di rilievo soltanto nell'S7-400:) Primo richiamo con REQ=1. BUSY ha il valore 1.
7002 (di rilievo soltanto nell'S7-400:) Richiamo intermedio (REQ è irrilevante). L'aggiornamento
delle interconnessioni DP non è ancora concluso. BUSY ha il valore 1.
8001 La progettazione PROFINET CBA manca o non è valida.
8095 È stato avviato un ulteriore aggiornamento delle interconnessioni DP in una classe di priorità
maggiore. Tuttavia l'aggiornamento nella classe con priorità inferiore (tramite sistema
operativo o elaborazione di una SFC 114) è ancora in corso.
8xyy Informazione di errore generale, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Introduzione
Il tool di configurazione S7-Web2PLC consente di integrare pagine Web personalizzate nei
programmi STEP 7 e nelle CPU S7-PROFINET.
Ogni applicazione Web nella CPU comprende i seguenti DB, che vengono creati da S7-Web2PLC:
• Un Web Control DB
• Diversi Fragment DB
Il Web Control DB contiene tutte le informazioni sulla struttura dell'applicazione Web. I Fragment DB
contengono le pagine Web personalizzate codificate. L'SFC 99 consente di attivare o sincronizzare
la propria applicazione Web nella CPU.
I contenuti delle pagine accedono ai dati della CPU automaticamente o perché coordinati dal
programma utente. Una descrizione più dettagliata è contenuta nella Guida in linea al tool di
configurazione S7-Web2PLC (vedere oltre).
Descrizione
Dopo l'avviamento della CPU il server Web non conosce nessuna pagina Web personalizzata,
perciò è necessario richiamare l'SFC 99 "WWW" per rendere nota la propria pagina Web al server. Il
richiamo si esegue ad es. nell'OB 100.
Gli ulteriori richiami dell'SFC 99 dipendono dalla modalità di aggiornamento delle pagine Web:
• Aggiornamento automatico delle pagine Web
Richiamare l'SFC 99 "WWW" finché nel Web Control DB non viene impostata nella struttura
"commandstate" la variabile "init" oppure, in caso di erore, la variabile "error". In caso di errore la
causa viene visualizzata nella variabile "last_error".
• Aggiornamento delle pagine Web comandato dal programma utente
L'SFC 99 "WWW" coordina il programma utente con le pagine Web. Il procedimento generale è
il seguente per ogni pagina Web:
• Richiamare l'SFC 99.
• Analizzare la struttura "requesttab" nel Web Control DB.
• Elaborare la richiesta manuale nel programma utente.
• Rispondere alla richiesta richiamando nuovamente l'SFC 99.
Informazioni di errore
Ulteriori informazioni
La descrizione dettagliata del Web Control DB è contenuta nella Guida in linea al tool di
configurazione S7-Web2PLC. La Guida è disponibile sul DVD di STEP 7, directory
DVD_Root\Optional Components\S7 Web2PLC nel file "Web2PLCAppx.chm" (x=e per la lingua
italiana, x=b per la lingua inglese).
Descrizione
L'SFB 104 "IP_CONF" consente una configurazione comandata da programma dell'interfaccia
PROFINET integrata della CPU. I dati di configurazione validi fino a questo momento vengono
sovrascritti.
Le possibili impostazioni per la configurazione dell'interfaccia sono le seguenti:
• Impostazioni IP: indirizzo IP, maschera sotto-rete, indirizzo router
• Nome del dispositivo PROFINET IO (se la CPU viene utilizzata come PROFINET IO Device)
I dati di configurazione vanno salvati in un DB di configurazione.
L'impostazione della configurazione IP comandata da programma con l'SFB 104 è un'alternativa alla
progettazione con STEP 7. Tuttavia essa è attiva solo dopo aver predefinito esplicitamente in
Configurazione HW l'assegnazione dei parametri IP "in altro modo" (rispetto a quanto indicato in
Configurazione HW).
Procedimento
L'SFB 104 "IP_CONF" è un SFB asincrono, la cui elaborazione si può estendere per più richiami di
SFB. Richiamando l'SFB 104 con REQ = 1 si avvia l'operazione di trasmissione.
Può essere attivo solo un ordine per volta.
Lo stato dell'ordine viene visualizzato attraverso i parametri di uscita BUSY e STATUS. STATUS
corrisponde al parametro di uscita RET_VAL delle SFC asincrone (vedere anche Significato dei
parametri REQ, RET_VAL e BUSY nelle SFC che lavorano in modo asincrono).
La tabella seguente mostra la correlazione tra BUSY, DONE ed ERROR. Essa consente di stabilire
in quale stato si trova attualmente l'SFB 104 o quando è conclusa la trasmissione dei dati di
configurazione.
Parametri
DB di configurazione
La figura seguente mostra come i dati di configurazione da trasferire vengono salvati nel DB di
configurazione.
Avvertenza
Attualmente è ammesso esattamente un campo, i cui parametri "field_type_id" e "field_id" devono
avere il valore zero. Ulteriori campi con altri valori per field_type_id e field_id sono riservati ad
ampliamenti futuri.
Sottocampi consentiti
• Sottocampo "SUB_IP_SUITE_IPV4"
TYPE "SUB_IP_SUITE_V4"
STRUCT
END_STRUCT
END_TYPE
• Sottocampo "SUB_NOS"
TYPE "SUB_NOS"
STRUCT
id: int := 40; // subfield_type_id
len: int := 246; // subfield_length
mode: int := 1; // subfield_mode (1: permanente,
// 2: temporaneo)
nos: ARRAY[1..240] of BYTE := 0; Nome del dispositivo: occorre assegnare i valori
all'ARRAY dal primo byte. Se l’ARRAY è più lungo del
nome di dispositivo da assegnare è necessario indicare un
byte zero dopo il nome effettivo del dispositivo (in
conformità con la norma IEC 61158-6-10). In caso
contrario "nos" viene respinto e l’SFB 104 registra il codice
di errore DW#16#C0809400 in STATUS.
Se si occupa il primo byte con zero, il nome del dispositivo
viene cancellato.
END_STRUCT
END_TYPE
Avvertenza
È possibile creare l'ARRAY "nos" anche con meno di 240 byte, tuttavia la lunghezza minima è di 2
byte. In questo caso è necessario adeguare opportunamente la variabile "len" (lunghezza del
sottocampo).
Informazioni di errore
Nella tabella, "f" indica field_id mentre "t" indica subfield_type_id del blocco di parametri causa degli
errori.
Manuale di riferimento
Comunicazione aperta tramite
Industrial Ethernet 24
Creazione di segnalazioni
riferite ai blocchi 25
Temporizzatore IEC e
contatore IEC 26
Funzioni IEC 27
Funzioni orologio 28
SFB per la regolazione
integrata 29
Dati di diagnostica 35
PERICOLO
questo simbolo indica che la mancata osservanza delle opportune misure di sicurezza provoca la morte o gravi
lesioni fisiche.
AVVERTENZA
il simbolo indica che la mancata osservanza delle relative misure di sicurezza può causare la morte o gravi
lesioni fisiche.
CAUTELA
indica che la mancata osservanza delle relative misure di sicurezza può causare lesioni fisiche non gravi.
ATTENZIONE
indica che la mancata osservanza delle relative misure di sicurezza può causare danni materiali.
Nel caso in cui ci siano più livelli di rischio l'avviso di pericolo segnala sempre quello più elevato. Se in un
avviso di pericolo si richiama l'attenzione con il triangolo sul rischio di lesioni alle persone, può anche essere
contemporaneamente segnalato il rischio di possibili danni materiali.
Personale qualificato
Il prodotto/sistema oggetto di questa documentazione può essere adoperato solo da personale qualificato per il
rispettivo compito assegnato nel rispetto della documentazione relativa al compito, specialmente delle
avvertenze di sicurezza e delle precauzioni in essa contenute. Il personale qualificato, in virtù della sua
formazione ed esperienza, è in grado di riconoscere i rischi legati all'impiego di questi prodotti/sistemi e di
evitare possibili pericoli.
AVVERTENZA
I prodotti Siemens devono essere utilizzati solo per i casi d’ impiego previsti nel catalogo e nella rispettiva
documentazione tecnica. Qualora vengano impiegati prodotti o componenti di terzi, questi devono essere
consigliati oppure approvati da Siemens. Il funzionamento corretto e sicuro dei prodotti presuppone un trasporto,
un magazzinaggio, un’ installazione, un montaggio, una messa in servizio, un utilizzo e una manutenzione
appropriati e a regola d’ arte. Devono essere rispettate le condizioni ambientali consentite. Devono essere
osservate le avvertenze contenute nella rispettiva documentazione.
Marchio di prodotto
Tutti i nomi di prodotto contrassegnati con ® sono marchi registrati della Siemens AG. Gli altri nomi di prodotto
citati in questo manuale possono essere dei marchi il cui utilizzo da parte di terzi per i propri scopi può violare i
diritti dei proprietari.
Esclusione di responsabilità
Abbiamo controllato che il contenuto di questa documentazione corrisponda all'hardware e al
software descritti. Non potendo comunque escludere eventuali differenze, non possiamo garantire
una concordanza perfetta. Il contenuto di questa documentazione viene tuttavia verificato
periodicamente e le eventuali correzioni o modifiche vengono inserite nelle successive edizioni.
34.21 ID SZL W#16#xy75 - Slave DP connessi nel sistema H / IO-Device ........................................ 780
34.22 ID SZL W#16#xy90 - Informazioni sul sistema master DP ........................................................ 782
34.23 ID SZL W#16#xy91 - Informazione sullo stato delle unità ........................................................ 784
34.24 ID SZL W#16#xy92 - Informazione sullo stato del telaio di montaggio/della stazione ............. 791
34.25 ID SZL W#16#0x94 – Telaio di montaggio / informazione di stato della stazione .................... 795
34.26 SZL-ID W#16#xy95 - Informazioni supplementari sul sistema master DP / PROFINET IO...... 797
34.27 ID SZL W#16#xy96 – Informazioni sullo stato delle unità PROFINET IO e PROFIBUS DP..... 800
34.28 ID SZL W#16#xy9C - Informazioni sui commutatori (PROFINET IO) ....................................... 803
34.29 ID SZL W#16#xyA0 - Buffer di diagnostica .............................................................................. 807
34.30 ID SZL W#16#00B1 - Informazione di diagnostica unità .......................................................... 808
34.31 ID SZL W#16#00B2 - Set di dati di diagnostica1 tramite indirizzo fisico .................................. 810
34.32 ID SZL W#16#00B3 - Dati di diagnostica unità tramite indirizzo di base logico ....................... 811
34.33 ID SZL W#16#00B4 - Dati di diagnostica di uno slave DP ........................................................ 812
35 Eventi 813
35.1 Eventi e ID di evento .................................................................................................................. 813
35.2 Classe di evento 1 - Eventi di OB standard ............................................................................... 814
35.3 Classe di evento 2 - Eventi di errore di sincronismo.................................................................. 815
35.4 Classe di evento 3 - Eventi di errore di asincronismo................................................................ 816
35.5 Classe di evento 4 - Eventi di stop ed altri passaggi tra diversi stati di funzionamento ............ 819
35.6 Classe di evento 5 - Elaborazione stati di funzionamento ......................................................... 823
35.7 Classe di evento 6 - Eventi di comunicazione ........................................................................... 824
35.8 Classe di evento 7 - Eventi H/F ................................................................................................. 826
35.9 Classe di evento 8 - Eventi di diagnostica per unità .................................................................. 829
35.10 Classe di evento 9 - Eventi utente standard .............................................................................. 831
35.11 Classe di evento A e B - Eventi utente liberi .............................................................................. 833
35.12 Classe di evento riservata .......................................................................................................... 833
36 Lista delle SFC e degli SFB 835
36.1 Lista delle SFC, in ordine numerico ........................................................................................... 835
36.2 Lista delle SFC, in ordine alfabetico .......................................................................................... 838
36.3 Lista degli SFB, in ordine numerico ........................................................................................... 841
36.4 Lista degli SFB, in ordine alfabetico........................................................................................... 843
Bibliografia 845
Glossario 847
19.1 Introduzione agli FB per l'accesso ciclico ai dati utili secondo PNO
Panoramica
Gli FB per l'accesso ciclico ai dati utili secondo PNO consistono nei seguneti blocchi (il cui significato
è spiegato in parentesi):
• FB 20 "GETIO" (lettura di tutti gli ingressi di uno slave DP standard /PROFINET IO Device)
• FB 21 "SETIO" (scrittura di tutte le uscite di uno slave DP standard /PROFINET IO Device)
• FB 22 "GETIO_PART" (lettura di una parte degli ingressi di uno slave DP standard /PROFINET
IO Device)
• FB 23 "SETIO_PART" (scrittura di una parte delle uscite di uno slave DP standard /PROFINET
IO Device)
Descrizione
L'FB 20 "GETIO" consente la lettura coerente di tutti gli ingressi di uno slave DP standard
/PROFINET IO Device. L'FB 20 richiama per questo scopo l'SFC 14 "DPRD_DAT". Se la
trasmissione dati avviene correttamente, i dati letti vengono inseriti nell'area di destinazione creata
da INPUTS.
La lunghezza dell'area di destinazione deve essere identica a quella progettata in STEP 7 per il
componente selezionato.
Utilizzando uno slave DP standard a struttura modulare o dotato di più identificativi DP, è possibile,
con un singolo richiamo dell'FB 20, accedere di volta in volta soltanto ai dati di un componente o ad
un identificativo DP nell'ambito degli indirizzi iniziali progettati.
Informazioni di errore
Vedere Lettura di dati coerenti di uno slave standard DP/PROFINET IO Device con l'SFC 14
"DPRD_DAT" .
Descrizione
L'FB 21 "SETIO" consente il trasferimento coerente dei dati dall'area sorgente creata da OUTPUTS
allo slave DP standard / PROFINET IO Device indirizzati ed eventualmente all'immagine di
processo (nel caso in cui l'area indirizzi interessata dello slave DP standard sia stata progettata
come area coerente in un'immagine di processo). L'FB 21 richiama per questo scopo l'SFC 15
"DPWR_DAT".
La lunghezza dell'area sorgente deve essere identica a quella progettata in STEP 7 per il
componente selezionato.
Utilizzando uno slave DP standard a struttura modulare o dotato di più identificativi DP, è possibile,
con un singolo richiamo dell'FB 20, accedere soltanto ad un componente o ad un identificativo dello
slave DP.
Informazioni di errore
Vedere Scrittura coerente di dati utili ad uno slave standard DP/PROFINET IO Device con l'SFC 15
"DPWR_DAT".
Descrizione
L'FB 22 "GETIO_PART" consente la lettura coerente dell'area di un'immagine di processo
appartenente ad uno slave DP standard / PROFINET IO Device. L'FB 22 richiama per questo scopo
l'SFC 81 "UBLKMOV".
Avvertenza
Assegnare un'immagine di processo parziale degli ingressi all'OB nel quale viene richiamato l'FB 22
"GETIO_PART". È inoltre necessario, prima del richiamo dell'FB 22, acquisire il relativo slave DP
standard o il relativo PROFINET IO Device nell'immagine di processo parziale degli ingressi. Se la
CPU non conosce le immagini di processo parziali o se si intende richiamare l'FB 22 nell'OB 1, è
necessario, prima di procedere al richiamo dell'FB 22, acquisire il relativo slave DP standard o il
relativo PROFINET IO Device nell'immagine di processo degli ingressi
I parametri OFFSET e LEN consentono di stabilire quale la parte dell'area dell'immagine di processo
dei componenti indirizzati tramite l'ID debba essere letta.
Se la trasmissione dati si è conclusa correttamente, al parametro ERROR viene assegnato il valore
FALSE e i dati letti vengono inseriti nell'area di destinazione creata da INPUTS.
Se durante la trasmissione dati si sono verificati errori, al parametro ERROR viene assegnato il
valore TRUE e nel parametro STATUS viene inoltrata l'informazione di errore dell'SFC 81
"UBLKMOV".
Se l'area di destinazione (parametro INPUTS) è inferiore a LEN, vengono trasmessi tanti byte quanti
è in grado di riceverne il parametro INPUTS. Al parametro ERROR viene assegnato il valore FALSE.
Se l'area di destinazione è superiore a LEN, vengono scritti i primi byte LEN dell'area di
destinazionne. Al parametro ERROR viene assegnato il valore FALSE.
Avvertenza
Nell'immagine di processo degli ingressi, l'FB 22 "GETIO_PART" non effettua il controllo dei limiti tra
i dati appartenenti ai diversi componenti PROFIBUS-DP e PROFINET IO. È pertanto compito
dell'utente accertarsi che l'area dell'immagine di processo determinata tramite i parametri OFFSET e
LEN appartenga ad un componente univoco. Una lettura globale dei dati dei componenti, in grado di
operare una distinzione di appartenenza degli stessi, non può essere garantita nel sistemi futuri. La
trasferibilità in sistemi di altri costruttori viene quindi compromessa.
Informazioni di errore
Vedere Copia della variabile senza interruzioni con la SFC 81 "UBLKMOV".
Descrizione
L'FB 23 "SETIO_PART" consente il trasferimento coerente di dati dall'area sorgente creata dal
parametro OUTPUTS ad una parte dell'area dell'immagine di processo appartenente ad uno slave
DP standard / PROFINET IO Device. L'FB 23 richiama per questo scopo l'SFC 81 "UBLKMOV".
Avvertenza
Assegnare un'immagine di processo parziale delle uscite all'OB nel quale viene richiamato l'FB 23
"SETIO_PART". È inoltre necessario, prima del richiamo dell'FB 23, acquisire il relativo slave DP
standard o il relativo PROFINET IO Device nell'immagine di processo parziale delle uscite. Se la
CPU non conosce le immagini di processo parziale o se si intende richiamare l'FB 23 nell'OB 1, è
necessario, prima di procedere al richiamo dell'FB 23, acquisire il relativo slave DP standard o il
relativo PROFINET IO Device nell'immagine di processo delle uscite
I parametri OFFSET e LEN consentono di stabilire in quale parte dell'area dell'immagine di processo
dei componenti indirizzati tramite l'ID debba avvenire la scrittura.
Se la trasmissione dati si è conclusa correttamente, al parametro ERROR viene assegnato il valore
FALSE.
Se durante la trasmissione dati si sono verificati errori, al parametro ERROR viene assegnato il
valore TRUE e nel parametro STATUS viene inoltrata l'informazione di errore dell'SFC 81
"UBLKMOV".
Se l'area sorgente (parametro OUTPUTS) è inferiore a LEN, vengono trasmessi tanti byte quanti ne
aono contenuri nel parametro OUTPUTS. Al parametro ERROR viene assegnato il valore FALSE.
Se l'area sorgente è superiore a LEN, vengono trasferiti i primi byte LEN dal parametro OUTPUTS.
Al parametro ERROR viene assegnato il valore FALSE.
Avvertenza
Nell'immagine di processo della uscite, l'FB 23 "SETIO_PART" non effettua il controllo dei limiti tra i
dati appartenenti ai diversi componenti PROFIBUS-DP e PROFINET IO. È pertanto compito
dell'utente accertarsi che l'area dell'immagine di processo determinata tramite i parametri OFFSET e
LEN appartenga ad un componente univoco. Una scrittura globale dei dati dei componenti, in grado
di operare una distinzione di appartenenza degli stessi, non può essere garantita nel sistemi futuri.
La trasferibilità in sistemi di altri costruttori viene quindi compromessa.
Informazioni di errore
Vedere Copia della variabile senza interruzioni con la SFC 81 "UBLKMOV".
Descrizione
Con la SFC 60 "GD_SND" (global data send) vengono raccolti i dati di un blocco GD, i quali vengono
poi trasmessi sul percorso definito nello stesso blocco GD. Il blocco GD deve essere progettato
precedentemente con STEP 7.
La SFC 60 "GD_SND" può essere richiamata in un qualsiasi punto del programma utente.
Il conteggio di scansione nonché la raccolta sistematica e la trasmissione dei dati al punto di controllo
del ciclo non vengono influenzati dai richiami della SFC 60.
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Nessun errore.
8081 Il blocco GD selezionato tramite i parametri CIRCLE_ID e BLOCK_ID non è progettato.
8082 Valore non ammesso per il parametro CIRCLE_ID o BLOCK_ID o in entrambi i parametri.
8083 Si è verificato un errore durante l'esecuzione della SFC. Questo tipo di errore è memorizzato
nella variabile progettata per l'informazione di stato. Quest'ultima può essere analizzata dal
programma.
8084 L'elaborazione della SFC è terminata prima del tempo perché la SFC 60 è stata richiamata
per lo stesso blocco GD in un livello di esecuzione di priorità più elevata (vedere "Interruzione
della funzione").
8085 Si è verificato un errore nella registrazione dell'informazione di stato nella rispettiva variabile
progettata.
8xyy Informazioni generali di errore, vedere Analisi degli errori con il parametro di uscita RET_VAL
Avvertenza
Dopo ogni richiamo della SFC 60 si deve analizzare lo stato del rispettivo blocco GD ed
eventualmente resettarlo.
Descrizione
Con la SFC 61 "GD_RCV" (global data receive) vengono ritirati i dati stabiliti esattamente per un
blocco GD di un telegramma GD ricevuto e registrati nel blocco GD di ricezione. Quest'ultimo deve
essere stato progettato con STEP 7.
La SFC 61 "GD_RCV" può essere richiamata in un qualsiasi punto del programma utente.
Il conteggio di scansione nonché il ritiro dei dati da parte del sistema al punto di controllo del ciclo non
vengono influenzati dai richiami della SFC 61.
Informazioni di errore
Avvertenza
Dopo ogni richiamo della SFC 61 "GD_RCV" si deve analizzare lo stato del rispettivo blocco GD ed
eventualmente resettarlo.
Criteri di scelta
Accanto alla comunicazione globale, per lo scambio dati tra CPU/FM di sistemi di automazione
SIMATIC S7 sono a disposizione dell'utente due metodi:
• lo scambio dati mediante la comunicazione di base S7
• lo scambio dati mediante la comunicazione S7
Quale metodo l'utente scelga di utilizzare per i propri compiti dipende sia dal sistema di automazione
della famiglia SIMATIC S7 in uso che da altri parametri dello scambio dati. La seguente tabella
riporta una lista di criteri in base ai quali effettuare la scelta.
Definizione
La dimensione dell'area di dati non modificabile contemporaneamente da processi simultanei, viene
definita area dei dati coerenti. Un'area dati le cui dimensioni superano la coerenza dei dati può quindi
essere danneggiata nella loro interezza.
Ciò significa che un'area di dati contigua con una dimensione superiore all'area coerente dati, in
alcuni momenti può essere parzialmente costituita da blocchi di dati coerenti nuovi e vecchi.
Esempio
Si può avere, ad esempio, un'incoerenza se un blocco di comunicazione viene interrotto da un OB di
interrupt di processo con priorità superiore. Se il programma utente modifica i dati
dell'OB parzialmente già elaborati dal blocco di comunicazione, i dati trasferiti saranno:
• in parte precedenti all'elaborazione dell'interrupt di processo
• e in parte successivi all'elaborazione dell'interrupt di processo.
I dati saranno quindi incoerenti (ovvero non contigui).
Conseguenza
Per trasferire grosse quantità di dati in modo coerente è necessario che il trasferimento non venga
interrotto. Ciò può, ad esempio, determinare un incremento del tempo di reazione all'allarme della
CPU.
Quindi, più estesa è la quantità di dati da trasferire in modo coerente, più aumenta il tempo di
reazione del sistema.
Nella S7-400 i dati di comunicazione non vengono invece elaborati nel punto di controllo del ciclo, ma
in fasi temporali fisse durante il ciclo del programma. Da parte del sistema viene garantita la
coerenza di una variabile.
A queste aree di comunicazione è possibile accedere in modo coerente, ad esempio da un OP o una
OS, con le funzioni PUT/GET o la lettura/scrittura delle variabili.
Suggerimento
Per ulteriori informazioni sulla coerenza dei dati, consultare la descrizione dei singoli blocchi e il
manuale Comunicazione con SIMATIC.
Classificazione
Per la comunicazione S7 è necessaria una progettazione dei messaggi. Il richiamo delle funzioni di
comunicazione integrate avviene nel programma utente tramite SFB/FB o un'SFC/FC.
Questi blocchi possono essere suddivisi nelle seguenti classi:
• SFB/FB per lo scambio dei dati
• SFB/FB per la modifica degli stati di funzionamento
• SFB per l‘interrogazione dello stato di funzionamento
• SFC/FC per l'interrogazione del collegamento.
Avvertenza
Non tutti gli SFB sono realizzati come FB nella S7-300.
SFB 15 FB 15 PUT Scrittura di variabili comandata dal programma senza che sia
presente una funzione di comunicazione specifica nel
programma utente del partner di comunicazione
- FB 35 PUT_E
Suggerimento:
Lo stato del collegamento attuale si può diagnosticare anche con la SFC 87 C_DIAG (solo per
S7-400).
Programma d'esempio
Con STEP 7 viene fornito un programma esemplificativo per S7-400 che illustra l'uso degli SFB di
comunicazione S7. Il progetto di esempio si chiama step7\examples\com_SFB e si trova in
"...\STEP7\Examples\ZIt01_10".
La comunicazione oltre i limiti della sotto-rete non è possibile con le SFC di comunicazione di base
S7.
Le SFC di comunicazione di base S7 sono operabili su tutte le CPU S7-300 e S7-400. Da queste
CPU è possibile anche scrivere delle variabili nelle CPU della S7-200 e leggerle da là.
Programmi esemplificativi
STEP 7 viene fornito con due programmi esemplificativi per le SFC di comunicazione di base S7
collocati nelle directory step7\examples\com_sfc1 e step7\examples\com_sfc2.
Quando viene avviato un job, il collegamento creato per esso può essere momentaneamente
utilizzato solo per questo job. Altri job per lo stesso partner di comunicazione possono essere
nuovamente svolti solamente quando il job in corso è stato terminato. Pertanto osservare la
seguente avvertenza:
Avvertenza
Se il programma contiene più job per lo stesso partner di comunicazione occorre far sì che quelle
SFC, nelle quali in RET_VAL viene visualizzato W#16#80C0, siano richiamate nuovamente in un
momento successivo opportuno.
Identificazione di un job
Qualora con una delle SFC di comunicazione di base S7 sia stato avviato un trasferimento dati
oppure un annullamento dei collegamenti e tale SFC venga nuovamente richiamata prima che il
trasferimento in corso sia stato concluso, il comportamento successivo della SFC dipende in
maniera decisiva dal fatto che il job al nuovo richiamo sia o meno lo stesso. La tabella seguente
evidenzia per ogni SFC quale parametro di ingresso stabilisce un job. Se i parametri citati nella
tabella corrispondono ad un job non ancora concluso, il richiamo della SFC vale come richiamo
successivo.
Comportamento all'interruzione
Le SFC di comunicazione di base S7 possono essere interrotte mediante OB con priorità superiore.
Qualora la stessa SFC venga nuovamente richiamata con l'identico job, questo secondo richiamo
viene interrotto e ne viene data visualizzazione in RET_VAL. Poi l'elaborazione della SFC interrotta
viene continuata.
Classificazione
I parametri degli SFB/FB di comunicazione S7 possono essere suddivisi, in base alla loro funzione,
nelle seguenti cinque classi:
1. Parametri di controllo: servono all'attivazione di un blocco
2. Parametri di indirizzamento: servono all'indirizzamento del partner di comunicazione remoto
3. Parametri di trasmissione: indicano i campi dei dati che devono essere trasmessi al partner
remoto
4. Parametri di ricezione: indicano i campi dei dati, nei quali vengono registrati i dati ricevuti dal
partner remoto
5. Parametri di stato: servono a verificare se il blocco ha terminato il suo compito senza errori e ad
analizzare gli errori.
Parametri di controllo
L'attivazione dello scambio dei dati avviene solo se, al richiamo dell'SFB/FB, i rispettivi parametri di
controllo hanno un campo definito (ad es. se sono impostati) o se il valore è cambiato rispetto
all'ultimo richiamo SFB/FB nel modo definito (ad es. fronte positivo).
Parametri di indirizzamento
Parametro Descrizione
ID Riferimento alla descrizione locale del collegamento (preimpostato durante la progettazione del
collegamento in STEP 7). Avvertenza: per i blocchi della comunicazione S7 non è consentito
l'ID W#16#EEEE.
R_ID Il parametro R_ID consente di definire il rapporto fra un SFB/FB di trasmissione e un SFB/FB di
ricezione. Il lato della trasmissione dell'SFB/FB e il lato di ricezione dell'altro SFB/FB devono
avere lo stesso valore per il parametro R_ID.
Viene così resa possibile la comunicazione di diverse coppie di SFB/FB con lo stesso
collegamento logico.
• R_ID deve essere specificato nel formato DW#16#wxyzWXYZ
• In un collegamento logico le coppie di blocchi definite mediante R_ID devono essere
univoche.
Il parametro PI_NAME è descritto solo negli SFB in cui è rilevante (solo S7-400).
Avvertenza
S7-300: i parametri di indirizzamento ID e R_ID si possono ridefinire durante l'esecuzione. I nuovi
parametri diventano attivi con ogni job, una volta terminato il job precedente. In questo modo è
possibile combinare tra loro più coppie di FB tramite una sola istanza.
Suggerimento: queste possibilità consentono di ridurre DB di istanza e di conseguenza di
risparmiare memoria di lavoro:
1. Con gli ID di variabili è possibile utilizzare più collegamenti mediante un blocco dati di istanza.
2. Con gli ID_R di variabili è possibile determinare con un'istanza più interdipendenze di coppie di
FB di trasmissione e ricezione.
3. È possibile combinare i punti 1 e 2.
Si tenga presente che i nuovi parametri diventano attivi solo dopo l'elaborazione del job precedente.
Se si attiva l'operazione di trasmissione, il parametro R_ID del mittente deve corrispondere a quello
del ricevente.
S7-400: i parametri di indirizzamento ID e R_ID vengono analizzati solo al primo richiamo del blocco
(i parametri attuali o i valori predefiniti dall'istanza). Con il primo richiamo viene così stabilito il
rapporto di comunicazione (collegamento) con il partner remoto, e cioè fino al successivo nuovo
avviamento (avviamento a caldo) oppure avviamento a freddo.
Parametri di stato
Con i parametri di stato si può controllare se il blocco ha terminato regolarmente il suo compito
oppure se è ancora attivo. Inoltre essi indicano i guasti presentatisi.
Avvertenza
I parametri di stato sono validi solo in un ciclo, cioè dal primo comando che segue il richiamo
dell'SFB/FB, fino al successivo richiamo dell'SFB/FB. Ne consegue che questi parametri devono
essere analizzati dopo ogni esecuzione di blocco.
Osservare le limitazioni relative alle dimensioni dei dati utili, contenute nei dati tecnici della CPU
utilizzata.
2. In base al valore individuato, cercare nella seguente tabella la lunghezza massima ammessa per
i dati utili espressa in byte come somma dei parametri utilizzati. Il valore è valido per lunghezze
pari delle aree SD_i, RD_i, ADDR_i. Per ogni area con lunghezza dispari la lunghezza massima
ammessa dei dati utili si riduce di un byte.
Presupposti
Qui di seguito sono indicati i presupposti per le S7-400:
• le descrizioni dei collegamenti (SDB) sulle unità sono presenti
• i collegamenti progettati sono stabiliti
• in ogni SFB il parametro attuale per l'ID coincide con l'ID di collegamento progettato.
Nuovo avviamento (avviamento a caldo) e avviamento a freddo negli SFB per lo scambio dati a
due vie
Generalmente negli SFB per lo scambio dati a due vie le unità non effettuano entrambe un nuovo
avviamento (avviamento a caldo) o avviamento a freddo. L'adattamento viene eseguito
implicitamente dagli SFB in base alle seguenti regole.
I blocchi di ricezione (SFB, URCV, BRCV) presentano il seguente comportamento:
• Se l'SFB ha ricevuto un job, ma non lo ha ancora confermato al momento del nuovo avviamento
(avviamento a caldo) o dell'avviamento a freddo, esso genera un telegramma di interruzione di
sequenza (SFB BRCV) e salta quindi direttamente nello stato NO_INIT.
• Nell'SFB BRCV può subentrare il caso che, nonostante l'interruzione di sequenza trasmessa, si
presenti un ulteriore segmento di dati. Quest'ultimo viene respinta a livello locale.
• Nell'SFB URCV ha luogo il passaggio immediato nello stato NO_INIT.
I blocchi di trasmissione (SFB USEND, BSEND) si comportano nel modo seguente:
• Se l'SFB BSEND ha iniziato una sequenza di job, che non è ancora terminata, esso trasmette
un'interruzione di sequenza al nuovo avviamento (avviamento a caldo) o all'avviamento a freddo.
Immediatamente dopo passa nello stato NO_INIT. Un'accettazione che arriva più tardi viene
respinta a livello locale.
• Se l'SFB BSEND ha già trasmesso o ricevuto un'interruzione di sequenza al momento della
richiesta di un nuovo avviamento, (avviamento a caldo) o un avviamento a freddo esso passa
immediatamente nello stato NO_INIT.
• In tutti gli altri casi, e se l'SFB trasmette solo messaggi (ad es. SFB USEND), l'elaborazione
locale viene interrotta e l'SFB passa immediatamente nello stato NO_INIT.
Nuovo avviamento (avviamento a caldo) e avviamento a freddo negli SFB per lo scambio dati
a una via
Si presuppone che dopo l'attivazione dei collegamenti il server sul partner di comunicazione sia in
grado di funzionare, cioè possa elaborare job o trasmettere messaggi in qualsiasi momento.
Gli SFB, che trasmettono job e attendono accettazioni, presentano il seguente comportamento:
L'elaborazione momentanea viene interrotta, e immediatamente dopo viene effettuato il passaggio
nello stato NO_INIT. Un'accettazione che si presenta più tardi per il job trasmesso prima del nuovo
avviamento (avviamento a caldo) o dell‘avviamento a freddo viene respinta a livello locale.
Può essere trasmesso già un nuovo job prima che sia arrivata l'accettazione ancora pendente.
Gli SFB che trasmettono o ricevono messaggi si comportano nel modo seguente:
• L'elaborazione momentanea viene interrotta, e viene effettuato il passaggio diretto nello stato
NO_INIT.
• Nell'SFB USTATUS vengono respinti a livello locale i messaggi che arrivano negli stati NO_INIT
e DISABLED.
Comportamento al riavviamento
Gli SFB di comunicazione S7 vengono trasferiti nello stato NO_INIT solo nel nuovo avviamento
(avviamento a caldo) o nell'avviamento a freddo. Ne risulta che essi si comportano come blocchi
funzionali utente proseguibili nel riavviamento.
Interruzione di collegamento
I collegamenti assegnati alle istanze SFB di comunicazione vengono controllati per identificare
eventuali interruzioni.
In caso di interruzione di un collegamento la reazione dell'SFB dipende dal suo stato interno:
Se l'interruzione di collegamento viene identificata negli stati IDLE o ENABLED, l'SFB reagisce nel
modo seguente:
• Esso passa nello stato ERROR ed emette l'identificazione di errore "Problemi di comunicazione"
tramite i parametri di uscita ERROR e STATUS.
• Al successivo richiamo del blocco esso assume di nuovo il suo stato originario e controlla di
nuovo il collegamento.
Un SFB che non si trova negli stati IDLE e DISABLED, reagisce nel modo seguente:
• Esso interrompe la sua elaborazione, passa immediatamente oppure al successivo richiamo del
blocco nello stato ERROR ed emette l'identificazione di errore "Problemi di comunicazione"
tramite i parametri di uscita ERROR e STATUS.
• Al successivo richiamo del blocco, quest'ultimo assume lo stato IDLE, DISABLED o ENABLED.
Negli stati IDLE e ENABLED viene controllato di nuovo il collegamento.
Questo procedimento viene eseguito anche se nel frattempo il collegamento è stato ristabilito.
Caduta di rete
Una caduta di rete bufferizzata con riavviamento provoca l'interruzione di tutti i collegamenti attivati.
Per tutti i blocchi interessati vale perciò quanto detto sopra.
Per una caduta di rete bufferizzata con nuovo avviamento (avviamento a caldo) o con avviamento a
freddo automatico vale quanto detto sia per l'interruzione del collegamento che per il nuovo
avviamento (avviamento a caldo) o l‘avviamento a freddo.
Nel caso speciale del nuovo avviamento (avviamento a caldo) o avviamento a freddo automatico non
bufferizzato, durante il quale viene eseguita automaticamente una cancellazione totale dopo il ritorno
della rete, gli SFB di comunicazione S7 si comportano come descritto nel capitolo "Comportamento
all'avviamento degli SFB di comunicazione S7".
Avvertenza
Per le CPU S7-300 sono disponibili le due versioni seguenti dell'FB 8 "USEND".
• Una versione nella Standard Library, da utilizzare in caso di collegamento con il partner remoto
tramite l'interfaccia PN.
• Una versione nella SIMATIC_NET_CP Library, da utilizzare in caso di collegamento con il
partner remoto tramite un CP.
Descrizione
L'SFB/FB 8 "USEND" trasmette dati a un partner SFB/FB remoto del tipo "URCV". La trasmissione
non è coordinata con l'SFB/FB partner, ovvero quest'ultimo non deve confermare la trasmissione dei
dati.
S7-300: la trasmissione ha luogo dopo un fronte di salita in REQ. Con ogni fronte di salita in REQ
vengono ripresi i parametri R_ID, ID e SD_1. Una volta terminato un job, è possibile assegnare nuovi
valori ai parametri R_ID, ID e SD_1.
S7-400: la trasmissione ha luogo dopo un fronte di salita nell'ingresso di comando REQ. I dati da
trasmettere vengono indirizzati dai parametri SD_1, ... SD_4, anche se questi quattro parametri di
trasmissione non devono essere tutti occupati.
Tuttavia occorre fare attenzione che le aree definite dai parametri da SD_1 a SD_4/SD_1 e da RD_1
a RD_4/RD_1 (nel corrispondente SFB/FB partner "URCV") coincidano per quanto riguarda:
• numero
• lunghezza
• tipo di dati.
Il parametro R_ID deve essere identico per entrambi gli SFB/FB.
Un 1 logico nel parametro di stato DONE indica che l'operazione di trasmissione si è conclusa
correttamente.
Informazioni di errore
Avvertenza
L'intera operazione di trasmissione è da considerarsi conclusa solo quando il parametro di stato
DONE assume il valore 1.
Descrizione
L'SFB/FB 9 "URCV" riceve in modo asincrono i dati da un SFB/FB partner remoto del tipo "USEND"
e li copia nelle aree di ricezione progettate.
Il blocco è pronto a ricevere quando nell'ingresso EN_R è presente un 1 logico. Con EN_R=0 è
possibile interrompere un job in corso.
S7-300: con ogni fronte di salita di EN_R, vengono ripresi i parametri R_ID, ID e RD_1. Al termine di
un job, è possibile assegnare ai parametri R_ID, ID e RD_1 nuovi valori.
S7-400: le aree di ricezione vengono indirizzate dai parametri RD_1 ... RD_4.
Occorre fare attenzione che le aree definite dai parametri RD_i/RD_1 e SD_i/SD_1 (nel relativo
SFB/FB partner "USEND") coincidano per quanto riguarda:
• numero
• lunghezza
• tipo di dati.
Un 1 logico nel parametro di stato NDR indica che l'operazione di trasmissione si è conclusa
correttamente.
Il parametro R_ID deve essere identico per entrambi gli FB.
Informazioni di errore
Descrizione
L'SFB/FB 12 "BSEND" trasmette dati ad un partner SFB/FB remoto di tipo "BRCV". Questo tipo di
trasferimento dati consente il traferimento di una maggiore quantità di dati tra i partner di
comunicazione rispetto a tutti gli altri SFB/FB di comunicazione per collegamenti S7 progettati. È
possibile trasferire dati nella seguente quantità:
• 32768 byte per S7-300 über SIMATIC-Net-CP
• 65534 byte per S7-400 e S7-300 urmediante interfaccia integrata.
L'area dati da trasmettere viene segmentata. Ogni segmento viene trasmesso singolarmente al
partner. L'ultimo segmento viene confermato dal partner già la suo arrivo, indipendentemente dal
relativo richiamo dell'SFB/FB "BRCV".
S7-300: l'operazione di trasmissione ha luogo dopo un fronte di salita a REQ. Con ogni fronte di
salita a REQ vengono ripresi i parametri R_ID, ID, SD_1 e LEN. Al termine di un job, è possibile
assegnare nuovi valori ai parametri R_ID,ID, SD_1 e LEN. Per la trasmissione di dati segmentati, il
blocco deve essere richiamato ciclicamente nel programma utente.
L'indirizzo iniziale e la lunghezza massima dei dati da trasmettere sono predefiniti da SD_1. La
lunghezza del blocco dati si definisce per ogni job con il parametro LEN.
S7-400 e S7-300 mediante interfaccia integrata: l'operazione di trasmissione viene attivata dopo il
richiamo del blocco e la presenza di un fronte di salita all'ingresso di comando REQ.
L'invio dei dati dalla memoria utente è asincrona rispetto all'elaborazione del programma utente.
L'indirizzo iniziale dei dati da trasmettere è predefinito da SD_1. La lunghezza dei dati da trasmettere
si può definire per ogni job tramite LEN. LEN sostituisce quindi la parte di lunghezza di SD_1.
Il parametro R_ID deve essere identico in entrambi gli SFB/FB.
Se all'ingresso di comando R è presente un fronte di salita, l'operazione di trasmissione in corso
viene interrotta.
Il parametro di stato DONE con 1 indica che l'operazione di trasmissione è stata portata a termine
con successo.
Il nuovo job di trasmissione può essere avviato solo dopo che è stata conclusa la trasmissione se i
parametri di stato DONE o ERROR hanno assunto il valore 1.
A causa della trasmissione asincrona dei dati una nuova trasmissione di dati può essere avviata solo
se i dati precedenti sono stati prelevati tramite il richiamo dell'SFB/FB partner. Finché non sono stati
prelevati i dati, viene emesso il valore di stato 7 (vedi sotto) al richiamo dell'SFB/FB "BSEND".
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche dell'SFB/FB 12, che possono
essere emesse con i parametri ERROR e STATUS.
Descrizione
L'SFB/FB 13 "URCV" riceve i dati da un remoto SFB/FB partner del tipo "BSEND". Dopo ogni
segmento di dati ricevuto, viene inviata una conferma all'SFB/FB partner il parametro LEN viene
attualizzato.
Il blocco è pronto a ricevere dopo il richiamo con il valore 1 all'ingresso di comando EN_R. Con
EN_R=0 è possibile interrompere un job in corso.
L'indirizzo iniziale e la lunghezza massima dell'area di ricezione vengono stabiliti da RD_1. La
lunghezza del blocco dati viene definita da LEN.
S7-300: con ogni fronte di salita di EN_R, vengono ripresi i parametri R_ID, ID e RD_1. Al termine di
un job, è possibile assegnare nuovi valori ai parametri R_ID, ID e RD_1. Per la trasmissione di dati
segmentati, il blocco deve essere richiamato ciclicamente nel programma utente.
S7-400 e S7-300 mediante interfaccia integrata: la ricezione dei dati dalla memoria utente avviene
in modo asincrono rispetto all'elaborazione del programma utente.
Il parametro R_ID deve essere identico in entrambi gli SFB/FB.
Se la ricezione di tutti i segmenti di dati è avvenuta senza errori, il parametro di stato NDR indica il
valore 1. I dati ricevuti rimangono immutati fino al richiamo successivo dell'SFB/FB 13 con EN_R=1.
Se il blocco viene nuovamente richiamato durante la ricezione asincrona, viene emesso un
messaggio di avviso al parametro di stato STATUS; se il richiamo ha luogo con il valore 0 all'ingresso
di comando EN_R, l'operazione di ricezione viene interrotta e l'SFB/FB passa allo stato di base.
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche dell'SFB/FB 13, che possono
essere emesse con i parametri ERROR e STATUS.
Avvertenza
Attualmente l'FB 28 "USEND_E" supporta solo collegamenti tramite l'interfaccia PN.
Descrizione
L'FB 28 "USEND_E" trasmette dati a un partner FB remoto del tipo "URCV_E". La trasmissione non
è coordinata con l'FB partner, ovvero quest'ultimo non deve confermare la trasmissione dei dati.
La trasmissione ha luogo dopo un fronte di salita nell'ingresso di comando REQ. I dati da trasmettere
vengono indirizzati dai parametri SD_1, ... SD_4, anche se questi quattro parametri di trasmissione
non devono essere tutti occupati.
Tuttavia occorre fare attenzione che le aree definite dai parametri da SD_1 a SD_4 e da RD_1 a
RD_4 (nel corrispondente FB partner "URCV_E") coincidano per quanto riguarda:
• numero
• lunghezza
• tipo di dati.
Il parametro R_ID deve essere identico per entrambi gli FB.
Un 1 logico nel parametro di stato DONE indica che l'operazione di trasmissione si è conclusa
correttamente.
Informazioni di errore
Avvertenza
L'intera operazione di trasmissione è da considerarsi conclusa solo quando il parametro di stato
DONE assume il valore 1.
Avvertenza
Attualmente l'FB 29 "URCV_E" supporta solo collegamenti tramite l'interfaccia PN.
Descrizione
L'FB 29 "URCV_E" riceve in modo asincrono i dati da un FB partner remoto del tipo "USEND_E" e li
copia nelle aree di ricezione progettate.
Il blocco è pronto a ricevere quando nell'ingresso EN_R è presente un 1 logico. Con EN_R=0 è
possibile interrompere un job in corso.
Le aree di ricezione vengono indirizzate dai parametri RD_1, ... RD_4.
Occorre fare attenzione che le aree definite dai parametri RD_i e SD_i (nel relativo FB partner
"USEND_E") coincidano per quanto riguarda:
• numero
• lunghezza
• tipo di dati.
Un 1 logico nel parametro di stato NDR indica che l'operazione di trasmissione si è conclusa
correttamente.
Il parametro R_ID deve essere identico per entrambi gli FB.
Informazioni di errore
22.10 Lettura dei dati da una CPU remota con l'FB 34 "GET_E"
Avvertenza
Attualmente l'FB 34 "GET_E" supporta solo collegamenti tramite l'interfaccia PN.
Descrizione
L'FB 34 "GET_E" consente di leggere i dati di una CPU remota.
In presenza di un fronte di salita nell'ingresso di comando REQ, l'FB viene avviato e i puntatori
rilevanti sulle aree da leggere (ADDR_i) vengono trasmessi alla CPU partner.
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche dell'FB 34 che possono essere
emesse con i parametri ERROR e STATUS.
Avvertenza
Attualmente l'FB 35 "PUT_E" supporta solo collegamenti tramite l'interfaccia PN.
Descrizione
L'FB 35 "PUT_E" consente di scrivere dati in una CPU remota.
In presenza di un fronte di salita nell'ingresso di comando REQ, l'FB viene avviato e i puntatori sulle
aree da scrivere (ADDR_i) e i dati (SD_i) vengono trasmessi alla CPU partner.
Il partner remoto colloca i dati inviati negli indirizzi indicati e invia una conferma di esecuzione
avvenuta.
Occorre fare attenzione che le aree definite tramite i parametri ADDR_i e SD_i siano compatibili per
numero, lunghezza e tipo di dati.
Se non si sono verificati errori, al successivo richiamo dell'FB il parametro di stato DONE indica 1.
L'operazione di scrittura può essere riattivata solo al termine della scrittura precedente.
La CPU remota può trovarsi in stato di funzionamento RUN o STOP.
Se si verificano problemi di accesso durante la scrittura dei dati o se viene rilevato un errore durante
il controllo della conferma di esecuzione, vengono segnalati errori o avvisi nei parametri ERROR e
STATUS.
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche dell'FB 35 che possono essere
emesse con i parametri ERROR e STATUS.
Avvertenza
L'intera operazione di trasmissione è da considerarsi conclusa solo quando il parametro di stato
DONE assume il valore 1.
Descrizione
Con l'SFB/FB 15 "PUT" è possibile scrivere dati in una CPU remota.
S7-300: l'operazione di trasmissione avviene dopo un fronte di salita a REQ. Con ogni fronte di salita
a REQ vengono ripresi i parametri ID, ADDR_1 e SD_1. Al termine di un job è possibile assegnare
nuovi valori ai parametri ID, ADDR_1 e SD_1.
S7-400: in presenza di un fronte di salita nell'ingresso di comando REQ, l'SFB viene avviato e i
puntatori sulle aree da scrivere (ADDR_i) e i dati (SD_i) vengono trasmessi alla CPU partner.
Il partner remoto colloca i dati inviati negli indirizzi indicati e invia una conferma di esecuzione
avvenuta.
Occorre fare attenzione che le aree definite tramite i parametri ADDR_i e SD_i siano compatibili per
numero, lunghezza e tipo di dati.
La conferma di esecuzione viene analizzata e, se non si sono verificati errori, al successivo richiamo
dell'SFB/FB il parametro di stato DONE indica 1.
L'operazione di scrittura può essere riattivata solo al termine della scrittura precedente.
La CPU remota può trovarsi in stato di funzionamento RUN o STOP.
Se si verificano problemi di accesso durante la lettura dei dati o se viene rilevato un errore durante il
controllo del tipo di dati, vengono segnalati errori o avvisi nei parametri ERROR e STATUS.
S7-300: IN_OUT ANY S7-300: Puntatori sulle aree della CPU utente che
SD_1 M, D contengono i dati da inviare.
Sono ammessi solo i tipi di dati BOOL (non
permesso: campo di bit), BYTE, CHAR,
S7-400: S7-400:
WORD, INT, DWORD, DINT, REAL,
SD_i E, A, M, D, T, Z COUNTER, TIMER.
(1≤ i ≤4) Avvertenza:
Se il puntatore ANY accede a un DB, il DB
deve sempre essere specificato (ad es.: P#
DB10.DBX5.0 byte 10).
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche dell'SFB/FB 15 che possono
essere emesse con i parametri ERROR e STATUS.
Avvertenza
L'intera trasmissione può considerarsi conlcusa il parametro di stato DONE assume il valore 1.
22.13 Lettura dei dati di una CPU remota con l'SFB/FB 14 "GET"
Descrizione
Con l'SFB/FB 14 "GET" si possono leggere i dati di una CPU remota.
S7-300: l'operazione di lettura ha luogo dopo un fronte di salita a REQ. Con ogni fronte di salita a
REQ vengono ripresi i parametri ID, ADDR_1 e RD_1. Al termine di un job è possibile assegnare
nuovi valori ai parametri ADDR_1 e RD_1.
S7-400: in presenza di un fronte di salita nell'ingresso di comando REQ, l'SFB/FB viene avviato e i
puntatori rilevanti sulle aree da leggere (ADDR_i) vengono trasmessi alla CPU partner.
S7-300: IN_OUT ANY S7-300: Puntatori sulle aree della CPU utente in cui
RD_1 M, D vengono memorizzati i dati letti.
Sono ammessi solo i tipi di dati BOOL (non
permesso: campo di bit), BYTE, CHAR,
S7-400: S7-400:
WORD, INT, DWORD, DINT, REAL,
RD_i E, A, M, D, T, Z COUNTER, TIMER.
(1≤ i ≤4) Avvertenza:
Se il puntatore ANY accede a un DB, il DB
deve sempre essere specificato (ad es.: P#
DB10.DBX5.0 byte 10).
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche dell'SFB/FB 14 che possono
essere emesse con i parametri ERROR e STATUS.
Descrizione
Con l'aiuto dell'SFB 16 "PRINT" è possibile trasmettere dati con un'informazione per la formattazione
ad una stampante remota.
Se all'ingresso di comando REQ è presente un fronte di salita, la descrizione di formato (FORMAT) e
i dati (SD_i) vengono trasmessi alla stampante selezionata tramite ID e PRN_NR.
Se non vengono utilizzate tutte e quattro le aree di trasmissione, si deve fare attenzione che la prima
area venga scritta dal parametro SD_1, la seconda (se disponibile) da SD_2 e la terza (se
disponibile) da SD_3.
Se il job è stato eseguito con successo il parametro di stato DONE visualizza 1, mentre eventuali
errori vengono visualizzati tramite i parametri di stato ERROR e STATUS.
Caratteri
Istruzione di conversione
Istruzione di comando
Per ogni area di trasmissione da stampare, da SD_1 a SD_4, deve essere disponibile in FORMAT
un'istruzione di conversione. Le istruzioni di conversione vengono applicate alle aree di trasmissione
SD_i in base alla loro successione. Caratteri e istruzioni possono invece susseguirsi a piacere.
• Caratteri
Sono ammessi
- tutti i caratteri stampabili
- $$ (carattere per dollari), $' (virgoletta semplice),
- $L e $l (line feed), $P e $p (page), $R e $r (carriage return),
- $T e $t (tabulatore)
• Istruzioni di conversione
La tabella sottostante indica i tipi di rappresentazione possibili nelle istruzioni di conversione del
parametro FORMAT
Nella tabella, nei punti in cui viene indicata la lunghezza massima della rappresentazione standard, l'effettiva
emissione può anche essere più corta.
Avvertenza
Nei tipi di dati C e S dipende dalla stampante collegata
• quali dati possono essere stampati
• ciò che la stampante emette nel caso di caratteri non stampabili, a meno che il driver stampante
non contenga una tabella di trasformazione per questi caratteri.
• Istruzione di comando
Con l'aiuto delle istruzioni di comando potete:
- stampare i caratteri % e \
- modificare le impostazioni della stampante
attivare Grassetto
b
disattivare
-
B
Scrittura ridotta
c
Scrittura espansa
e
corsivo
i
maiuscoletto
k
sottolineato
u
Quando viene richiesta la disattivazione di un tipo di carattere sebbene questo non sia mai stato
attivato, o quando deve essere eseguita una funzione che la stampante non conosce, l'istruzione
di comando viene ignorata.
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche per l'SFB 16 "PRINT" che
possono essere emesse tramite i parametri ERROR e STATUS
Descrizione
Se all'ingresso di comando REQ è presente un fronte di salita, l'SFB 19 "START" attiva un nuovo
avviamento (avviamento a caldo) o avviamento a freddo nel dispositivo remoto indirizzato tramite ID.
Se il dispositivo remoto è un sistema H, l'effetto del job di avvio dipende dal parametro PI_NAME: il
job di avvio riguarda o solamente un'unica CPU o tutte le CPU del sistema H. I seguenti presupposti
devono essere soddisfatti (se il dispositivo remoto è una CPU):
• la CPU deve trovarsi nello stato STOP
• l'interruttore a chiave della CPU deve essere posizionato su "RUN" o "RUN-P".
Al termine del nuovo avviamento (avviamento a caldo) o dell'avviamento a freddo, il dispositivo
passa allo stato di funzionamento RUN e invia una conferma di esecuzione positiva. Con la
valutazione della conferma positiva viene impostato a 1 il parametro di stato DONE. Eventuali errori
vengono indicati dai parametri di stato ERROR e STATUS.
Un nuovo avviamento (avviamento a caldo) o avviamento a freddo dello stesso dispositivo può
essere attivato solo dopo che l'ultima attivazione si è conclusa.
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche dell'SFB 19, che possono
essere emesse con i parametri ERROR e STATUS.
Descrizione
Con un fronte di salita all'ingresso di comando REQ, l'SFB 20 "STOP" attiva il passaggio del
dispositivo remoto indirizzato tramite ID nello stato di funzionamento STOP. Il passaggio dello stato
di funzionamento è possibile se il dispositivo si trova in uno degli stati di funzionamento RUN, ALT o
AVVIAMENTO.
Se il dispositivo remoto è un sistema H, il job di STOP ha validità per tutte le CPU del sistema H.
Se il job è stato portato a termine con successo, il parametro di stato DONE indica 1; eventuali errori
vengono emessi dai parametri di stato ERROR e STATUS.
Un'ulteriore esecuzione del passaggio di stato di funzionamento descritto all'interno dello stesso
dispositivo remoto è possibile solo se l'avvio precedente dell'SFB 20 è terminato.
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche dell'SFB 20, che possono
essere emesse con i parametri ERROR e STATUS.
Descrizione
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche dell'SFB 21, che possono
essere emesse con i parametri ERROR e STATUS.
Descrizione
Con l'ausilio dell'SFB 22 "STATUS" è possibile interrogare lo stato di un dispositivo partner remoto di
comunicazione.
Con un fronte di salita all'ingresso di comando REQ viene trasmesso un job al partner remoto. La
risposta viene quindi analizzata per verificare se ci sono stati errori. Se non si sono verificati errori, lo
stato ricevuto viene copiato con il prossimo richiamo dell'SFB nelle variabili PHYS, LOG e LOCAL.
Una volta terminata questa operazione, il parametro di stato NDR indica 1.
La possibilità di effettuare un'ulteriore interrogazione dello stesso partner di comunicazione è data
solo al termine dell'interrogazione precedente.
Informazioni di errore
La tabella seguente riporta tutte le informazioni specifiche sugli errori relativi all'SFB 22 che possono
essere emesse dai parametri ERROR e STATUS.
Descrizione
L'SFB 23 "USTATUS" riceve il cambiamento di stato di un dispositivo remoto partner della
comunicazione; quest'ultimo invia senza essere stato sollecitato il proprio stato in caso di un cambio
di questo se è la progettazione è avvenuta con STEP 7.
Se al momento del richiamo, l'ingresso di comando EN_R indica 1 e sussiste un telegramma da
parte del partner, con il prossimo richiamo dell'SFB viene depositata l'informazione di stato nelle
variabili PHYS, LOG e LOCAL. Al termine di tale operazione, il parametro di stato NDR indica 1.
Sul collegamento utilizzato da USTATUS, l'invio di messaggi sullo stato di funzionamento deve
essere abilitato.
Avvertenza
Per ogni collegamento è possibile collocare solo una istanza dell'SFB 23.
Parametri
Informazioni di errore
La tabella seguente riporta tutte le informazioni specifiche sugli errori relativi all'SFB 23 che possono
essere emesse dai parametri ERROR e STATUS.
Descrizione
Con la SFC 62 "CONTROL" è possibile rilevare nelle S7-400 lo stato del collegamento appartenente
ad un'istanza SFB di comunicazione locale.
Dopo il richiamo della funzione di sistema con il valore 1 all'ingresso di comando EN_R viene rilevato
lo stato momentaneo di quel collegamento che appartiene all'istanza SFB di comunicazione
selezionata tramite I_DB.
Informazioni di errore
Il parametro di uscita RET_VAL può assumere con la SFC 62 "CONTROL" i due valori seguenti:
• 0000H: non si sono verificati errori durante l'esecuzione della SFC.
• 8000H: si è verificato un errore durante l'esecuzione della SFC.
Avvertenza
Anche quando viene visualizzato il valore 0000H nel parametro di uscita RET_VAL, è necessario
valutare i parametri di uscita ERROR e STATUS.
Descrizione
Con la FC 62 "C_CNTRL" si determina lo stato di un collegamento nelle S7-300.
Dopo il richiamo della funzione di sistema con il valore 1 sull'ingresso di comando EN_R viene
determinato lo stato attuale del collegamento indirizzato tramite ID.
Avvertenza
I parametri di uscita ERROR e STATUS vanno analizzati anche quando nel parametro di uscita
RET_VAL viene visualizzato il valore 0000H.
Avvertenza
Un collegamento creato mediante CONT=1 può anche essere annullato esplicitamente con la
SFC 69 "X_ABORT" o con la SFC 74 "I_ABORT".
Informazioni di errore
Le "vere" informazioni di errore per le SFC dalla 65 alla 74 riportate, tra le altre, nella tabella
seguente si possono classificare come segue:
Codice Spiegazione
errore(W#16#
...)
809x Errore sulla CPU, sulla quale è in esecuzione la SFC
80Ax Errore di comunicazione permanente
80Bx Errore nel partner di comunicazione
80Cx Errore temporaneo
Descrizione
Con la SFC 65 "X_SEND" si trasmettono i dati ad un partner di comunicazione esterno alla propria
stazione S7. La ricezione dei dati nel partner di comunicazione avviene tramite la SFC 66 "X_RCV".
Il processo di trasmissione avviene dopo il richiamo della SFC con REQ=1.
Occorre fare attenzione affinché l'area di trasmissione (sulla CPU mittente), definita tramite il
parametro SD, sia minore o uguale all'area di ricezione (nel partner di comunicazione) definita
mediante il parametro RD. Se SD è del tipo di dati BOOL, anche RD deve essere del tipo BOOL
Informazioni di errore
Vedere Informazioni di errore delle SFC di comunicazione per collegamenti S7 non progettati e
Analisi degli errori con il parametro di uscita RET_VAL.
Descrizione
Con la SFC 66 "X_RCV" si ricevono i dati che uno o più partner di comunicazione esterni alla propria
stazione S7 hanno trasmesso con la SFC 65 "X_SEND".
Con la SFC 66 "X_RCV"
• si può stabilire se al momento attuale vi sono dati trasmessi disponibili: essi sono stati disposti in
fila dal sistema operativo eventualmente in una coda di attesa interna;
• si può copiare il blocco dati più vecchio, pronto nella lista di attesa, in un'area di ricezione
definita.
X_RCV
EN_DT REQ_ID
Risorse di ricezione 0
NDA
RD
Ricezione dati t2
Coda di
attesa
Ricezione dati t1
t1 t2
Ricezione dati
Coda di attesa
Trasferimento dati
X_RCV
EN_DT REQ_ID
1
NDA
RD
Area di
ricezione
Ricezione dati
Annullamento dati
Se non si vogliono confermare i dati, assegnare a RD il valore NIL. In questo caso il mittente riceve
una conferma di acknowledge negativa (RET_VAL della relativa SFC 65 "X_SEND" ha il valore
W#16#80B8), in RET_VAL con la SFC 66 "X_RCV" viene registrato 0.
Informazioni di errore
Vedere Informazioni di errore delle SFC di comunicazione per collegamenti S7 non progettati e
Analisi degli errori con il parametro di uscita RET_VAL.
Descrizione
Con la SFC 68 "X_PUT" si scrivono i dati in un partner di comunicazione esterno alla propria
stazione S7. Sul partner di comunicazione non c'è alcuna SFC corrispondente.
L'attivazione del processo di scrittura avviene dopo il richiamo della SFC con REQ=1. Poi richiamare
a lungo la SFC finché la ricezione della conferma di acknowledge non viene visualizzata con
BUSY=0.
Occorre fare attenzione che l'area di trasmissione (sulla CPU mittente), definita mediante il
parametro SD, abbia la stessa lunghezza dell'area di ricezione (nel partner di comunicazione)
definita dal parametro VAR_ADDR. Ne consegue che i tipi di dati di SD e VAR_ADDR devono
coincidere.
Informazioni di errore
Vedere Informazioni di errore delle SFC di comunicazione per collegamenti S7 non progettati e
Analisi degli errori con il parametro di uscita RET_VAL.
Descrizione
Con la SFC 67 "X_GET" si leggono i dati da un partner di comunicazione esterno alla propria
stazione S7. Sul partner di comunicazione non c'è alcuna SFC corrispondente.
L'attivazione del processo di lettura avviene dopo il richiamo della SFC con REQ=1. Poi richiamare a
lungo la SFC finché la ricezione dei dati non viene visualizzata con BUSY=0 . RET_VAL contiene
quindi la lunghezza in byte del blocco dati ricevuto.
Occorre fare attenzione che l'area di ricezione (sulla CPU ricevente), definita mediante il parametro
RD, sia almeno lunga quanto l'area di lettura (nel partner di comunicazione) definita dal parametro
VAR_ADDR. Ne consegue che i tipi di dati di RD e VAR_ADDR devono coincidere.
Informazioni di errore
Vedere Informazioni di errore delle SFC di comunicazione per collegamenti S7 non progettati e
Analisi degli errori con il parametro di uscita RET_VAL.
Descrizione
Con la SFC 69 "X_ABORT" si annulla il collegamento ad un partner di comunicazione esterno alla
propria stazione S7, il quale era stato creato con una delle SFC X_SEND, X_GET o X_PUT. Se è
stato terminato il job appartenente a X_SEND, X_GET o X_PUT (BUSY = 0), dopo il richiamo della
SFC 69 "X_ABORT" sono nuovamente abilitate su entrambi i lati le risorse di collegamento che
erano state occupate per il collegamento.
Se il job appartenente a X_SEND, X_GET o X_PUT (BUSY = 1) non è stato terminato, una volta
terminata l'interruzione del collegamento occorre richiamare nuovamente la relativa SFC con
REQ = 0 e CONT = 0 ed attendere BUSY = 0. Solo allora sono di nuovo abilitate tutte le risorse di
collegamento occupate.
Si può richiamare la SFC 69 "X_ABORT" solo su quel lato su cui è in esecuzione la SFC "X_SEND",
"X_PUT" o "X_GET".
L'attivazione dell'annullamento dei collegamenti avviene dopo il richiamo della SFC con REQ=1.
Informazioni di errore
Vedere Informazioni di errore delle SFC di comunicazione per collegamenti S7 non progettati e
Analisi degli errori con il parametro di uscita RET_VAL.
Descrizione
Con la SFC 73 "I_PUT" si scrivono i dati in un partner di comunicazione interno alla propria stazione
S7. Il partner di comunicazione può essere collocato nell'apparecchiatura centrale, in
un'apparecchiatura di ampliamento oppure in posizione decentrata. Fare attenzione che il partner di
comunicazione collocato in posizione decentrata sia stato assegnato con STEP 7 alla propria CPU.
Sul partner di comunicazione non c'è alcuna SFC corrispondente.
Il processo di trasmissione avviene dopo il richiamo della SFC con livello 1 sull'ingresso di comando
REQ.
Occorre fare attenzione affinché l'area di trasmissione (sulla CPU mittente), definita tramite il
parametro SD, abbia la stessa lunghezza dell'area di ricezione (nel partner di comunicazione)
definita mediante il parametro VAR_ADDR. Ne consegue che i tipi di dati di SD e VAR_ADDR
devono coincidere.
Informazioni di errore
Vedere Informazioni di errore delle SFC di comunicazione per collegamenti S7 non progettati e
Analisi degli errori con il parametro di uscita RET_VAL.
Descrizione
Con la SFC 72 "I_GET" si leggono i dati da un partner di comunicazione interno alla propria stazione
S7. Il partner di comunicazione può essere collocato nell'apparecchiatura centrale, in
un'apparecchiatura di ampliamento oppure in posizione decentrata. Fare attenzione che il partner di
comunicazione collocato in posizione decentrata sia stato assegnato con STEP 7 alla propria CPU.
Sul partner di comunicazione non c'è alcuna SFC corrispondente.
L'attivazione del processo di ricezione avviene dopo il richiamo della SFC con REQ=1. Poi
richiamare a lungo la SFC finché la ricezione dei dati non viene visualizzata con BUSY=0 . RET_VAL
contiene quindi la lunghezza in byte del blocco dati ricevuto.
Occorre fare attenzione che l'area di ricezione (sulla CPU ricevente), definita mediante il parametro
RD, sia almeno lunga quanto l'area di lettura (nel partner di comunicazione) definita dal parametro
VAR_ADDR. Ne consegue che i tipi di dati di RD e VAR_ADDR devono coincidere.
Informazioni di errore
Vedere Informazioni di errore delle SFC di comunicazione per collegamenti S7 non progettati e
Analisi degli errori con il parametro di uscita RET_VAL.
Descrizione
Con la SFC 74 "I_ABORT" si annulla il collegamento ad un partner di comunicazione interno alla
propria stazione S7, il quale era stato creato con la SFC 72 "I_GET" o la SFC 73 "I_PUT". Se è stato
terminato il job appartenente a I_GET o I_PUT (BUSY = 0), dopo il richiamo della SFC 74
"I_ABORT" sono nuovamente abilitate su entrambi i lati le risorse di collegamento che erano state
occupate per il collegamento.
Se il job appartenente a I_GET o I_PUT (BUSY = 1) non è stato terminato, una volta terminata
l'interruzione del collegamento occorre richiamare nuovamente la relativa SFC con REQ = 0 e
CONT = 0 ed attendere BUSY = 0. Solo allora sono di nuovo abilitate tutte le risorse di collegamento
occupate.
Si può richiamare la SFC 74 "I_ABORT" solo su quel lato su cui è in esecuzione la SFC "I_PUT" o la
"I_GET" (ossia sul lato client).
L'attivazione dell'annullamento dei collegamenti avviene dopo il richiamo della SFC con REQ=1.
24.1 Panoramica
Gli FB per la comunicazione aperta tramite Industrial Ethernet supportano i seguenti protocolli
orientati alla connessione:
- TCP secondo RFC 793
- ISO on TCP secondo RFC 1006
• Varianti di protocollo prive di connessione:
questi protocolli operano senza collegamento. La creazione e l’interruzione del collegamento
con il partner remoto non avvengono. I protocolli privi di connessione effettuano il trasferimento
dati al partner remoto senza conferma e quindi con scarsa sicurezza. I dati possono andare
perduti senza che la perdita venga segnalata nel blocco.
Gli FB per la comunicazione aperta tramite Industrial Ethernet supportano il seguente protocollo
privo di connessione:
• UDP secondo RFC 768
Il funzionamento dei blocchi funzionali, dipende dalla variante di protocollo impiegata. La descrizione
dettagliata di questi protocolli viene riportata nel seguito.
Area di ricezione
Nel seguito si ricorre sempre all'uso di questo termine che sta a indicare l'area nella quale il blocco
funzionale inserisce i dati ricevuti.
La determinazione dell'area di ricezione avviene sulla base di due grandezze:
• Puntatore all'inizio dell'area
• Lunghezza dell'area
La determinazione della lunghezza dell'area avviene, in funzione delle varianti di protocollo
impiegate, tramite il parametro LEN (se LEN <> 0) oppure mediante l'indicazione della lunghezza
del parametro DATA (seLEN = 0).
Nel parametro ANY Ponter sono consentiti i seguenti tipi di dati BOOL, BYTE, CHAR, WORD, INT,
DWORD, DINT, REAL, DATE, TIME_OF_DAY, TIME, S5TIME, DATE_AND_TIME.
TCP
Nel trasferimento dati non vengono fornite informazioni circa lunghezza, inizio e fine di un
messaggio. Ciò non costituisce alcun problema nel caso dell'invio in quanto l'emittente conosce il
numero dei byte che intende trasferire. Il ricevente tuttavia non può appurare, nel flusso dati, la fine di
un messaggio e l'inizio del successivo. Si raccomanda pertanto di selezionare, per l'area di ricezione
dell'FB 64 "TRCV", esattamente lo stesso valore del parametro LEN dell'FB 63 "TSEND" nel
partner di comunicazione (numero di byte da inviare).
Ricezione di dati in modalità Ad hoc:
L'area di ricezione è identica all'area predefinita nel parametro DATA dell'FB 64 "TRCV".
L'FB 64 "TRCV" provvede a trasferire, immediatamente dopo la ricezione, il blocco dati nell'area di
ricezione e a impostare su 1 il valore di NDR. La lunghezza max. è di 8192 byte.
• Qualora la lunghezza dell'area di ricezione superasse quella dei dati di invio, l'FB 64 "TRCV"
copia tutti i dati ricevuti nell'area di ricezione, imposta quindi su TRUE il parametro NDR e
inserisce in RCVD_LEN la lunghezza dei dati ricevuti.
Qualora la lunghezza dell'area di ricezione, fosse inferiore rispetto alla lunghezza dei dati inviati,
l'FB 64 copia nell'area di ricezione tanti byte quanti quest'area ne può contenere, imposta quindi
NDR su TRUE e inserisce nel parametro RCVD_LEN la lunghezza dell'area di ricezione. A ogni
richiamo successivo l'operatore riceve un ulteriore blocco dei dati inviati.
Qualora i dati ricevuti non bastassero a riempire interamente l'area di ricezione, essi vengono resi
disponibili soltanto dopo la ricezione di ulteriori dati, quando quest'area sarà stata completamente
riempita. Tenere presente in questo caso che nelle stessa area di ricezione si trovano dati
provenienti da due diversi ordini di invio, impossibili da distinguere se non sono individuabili la fine
del primo messaggio e l'inizio del successivo.
Qualora la lunghezza dell'area di ricezione, fosse inferiore rispetto alla lunghezza dei dati inviati,
l'FB 64 copia nell'area di ricezione tanti byte quanti quest'area ne può contenere.
ISO on TCP
Nel trasferimento dati vengono fornite informazioni circa lunghezza e la fine di un messaggio.
Qualora l'area di ricezione superasse la lunghezza dei dati di invio, l'FB 64 "TRCV" copia tutti i dati
inviati nell'area di ricezione, imposta quindi NDR su TRUE e inserisce nel parametro RCVD_LEN la
lunghezza dei dati inviati.
Qualora l'area di ricezione fosse inferiore rispetto alla lunghezza dei dati inviati, anziché copiare i dati
nell'area di ricezione, l'FB 64 emette la seguente informazione di errore: ERROR=1,
STATUS=W#16#8088.
UDP
Questi protocolli non effettuano la creazione del collegamento come avviene nei protocolli TCP e
ISO on TCP. È pertanto necessario, al richiamo del blocco di invio FB 67 "TUSEND", indicare un
riferimento ai parametri di indirizzo del ricevente (indirizzo IP e N. porta). Analogamente, al termine
del trasferimento da parte del blocco di ricezione FB 68 "TURCV", al ricevente viene indicato un
riferimento ai parametri di indirizzo del mittente (indirizzo IP e N. porta).
Per utilizzare gli FB 67 "TUSEND" e 68 "TURCV" è necessario aver in precedenza richiamato, sia
per il mittente che per il ricevente, il parametro FB 65 "TCON" per la configurazione del punto di
accesso alla comunicazione locale.
A ogni richiamo dell‘FB 67 "TUSEND" è possibile creare un nuovo riferimento al partner remoto
indicando il rispettivo indirizzo IP ed il numero della porta.
Con la trasmissione dei dati vengono inviate informazioni sulla lunghezza e fine di un messaggio.
Qualora l'area di ricezione superasse la lunghezza dei dati di invio, l'FB 68 "TURCV" copia tutti i dati
inviati nell'area di ricezione, imposta quindi NDR su TRUE e inserisce nel parametro RCVD_LEN la
lunghezza dei dati inviati.
Qualora l'area di ricezione fosse inferiore rispetto alla lunghezza dei dati inviati, anziché copiare i dati
nell'area di ricezione, l'FB 68 emette la seguente informazione di errore: ERROR = 1,
STATUS = W#16#8088.
Avvertenza
Non utilizzare i numeri di porta riservati all'assegnazione da parte del sistema.
Lunghezza e configurazione dell'ID TSAP locale e remoto nella comunicazione ISO on TCP
• Inizializzazione attiva del collegamento:
- ID TSAP locale:
Nell'interfaccia IE integrata sono consentite tutte le sequenza di caratteri con una lunghezza
compresa tra 1 e 16 byte. Ogni singolo carattere può avere un valore compreso tra B#16#00
e B#16#FF.
- ID TSAP remoto:
Sono consentite tutte le sequenza di caratteri con una lunghezza compresa tra 1 e 16 byte.
Ogni singolo carattere può avere un valore compreso tra B#16#00 e B#16#FF
• Inizializzazione passiva del collegamento:
- ID TSAP locale:
Incidenza delle varianti di protocollo TCP e ISO on TCP richieste dalla CPU sulla lunghezza dei
dati trasferibili
Il capitolo Incidenza delle varianti di protocollo (connection_type) richieste dalla CPU sulla lunghezza
dei dati trasferibili indica quale delle due varianti di protocollo, TCP e ISO on TCP, vada impiegata
per ogni singola CPU.
Il numero dei collegamenti possibili è indicato nei dati tecnici della CPU.
Struttura dei dati per la parametrizzazione del punto di accesso alla comunicazione locale
Per consentire la parametrizzazione del punto di accesso alla comunicazione locale, è necessario
creare un DB che contenga la struttura dei dati dell'UDT 65 "TCON_PAR". Questa struttura contiene
i parametri necessari per la configurazione del collegamento tra il programma utente ed il livello di
comunicazione del sistema operativo.
Il parametro di collegamento CONNECT dell'FB 65 "TCON" contiene un riferimento all’indirizzo della
descrizione del collegamento interessato (ad es. P#DB100.DBX0.0 byte 64).
Struttura della descrizione del collegamento con il protocollo UDP (UDT 65)
Incidenza della variante di protocollo UDP richiesta dalla CPU sulla lunghezza dei dati
trasferibili
Il capitolo Incidenza delle varianti di protocollo (connection_type) richieste dalla CPU sulla lunghezza
dei dati trasferibili indica le CPU che richiedono la variante di protocollo UDP.
Il numero dei collegamenti possibili tra il programma utente e il livello di comunicazione del sistema
operativo è indicato nei dati tecnici della CPU.
Panoramica
L‘FB 67 "TUSEND" consente di trasferire al parametro ADDR l’indirizzo del ricevente.
Quest’informazione deve presentare la struttura indicata nel seguito.
L‘FB 68 "TURCV" fornisce nel parametro ADDR l’indirizzo del mittente dei dati ricevuti.
Quest’informazione deve presentare la struttura indicata nel seguito.
Esempio 1: Comunicazione tra due CPU S7-400 tramite ISO on TCP e CP 443-1 Adv.
Entrambe i partner di comunicazione sono due CPU 414-2 con versione firmware V4.1.0. La
comunicazione si svolge tramite due CP 443-1 Advanced.con versione firmware V2.2.
La tabella sottostante indica i dati più significativi di entrambi i partner di comunicazione.
La tabella sottostante indica i parametri di rilievo, contenuti nel DB, per la creazione del collegamento
attivo da parte del partner di comunicazione A:
La tabella sottostante indica i parametri di rilievo, contenuti nel DB, per la creazione del collegamento
passivo da parte del partner di comunicazione B:
Esempio 2: comunicazione tra una CPU S7-400 ed una CPU S7-300 tramite TCP e interfaccia
integrata PROFINET
Un partner di comunicazione è costituito da una CPU 416-3 PN/DP con versione del firmware V5.0,
l'altro da una CPU 319-3 PN/DP con versione del firmware V2.4.0. La tabella sottostante indica i dati
più significativi di entrambi i partner di comunicazione:
La tabella sottostante fornisce i parametri di rilievo registrati nel DB per la creazione del
collegamento attivo per il partner di comunicazione A:
La tabella sottostante fornisce i parametri di rilievo registrati nel DB per la creazione del
collegamento passivo per il partner di comunicazione B:
Esempio 3: comunicazione tra una CPU S7-300 ed una CPU S7-400 tramite UDP e interfaccia
integrata PROFINET
Un partner di comunicazione è costituito da una CPU 319-3 PN/DP con versione del firmware V2.4.0,
l'altro da una CPU 414-3 PN/DP con versione del firmware V5.0. La tabella sottostante indica i dati
più significativi di entrambi i partner di comunicazione:
La tabella sottostante indica i parametri di rilievo per il mittente (partner di comunicazione A) registrati
nel DB per la parametrizzazione del punto di accesso alla comunicazione locale:
Esempio 4: Comunicazione tra due CPU S7-400 tramite ISO on TCP e interfaccia integrata
PROFINET
Un partner di comunicazione è costituito da una CPU 414-3 PN/DP con versione del firmware V5.0,
l'altro da una CPU 416-3 PN/DP con versione del firmware V5.0. La comunicazione si svolte tramite
interfaccia integrata PROFINET.
La tabella sottostante indica i dati più significativi di entrambi i partner di comunicazione:
La tabella sottostante indica tutti i parametri del partner di comunicazione A nel rispettivo DB.
La tabella sottostante indica tutti i parametri del partner di comunicazione B nel rispettivo DB
Funzionamento
L'FB 65 "TCON" è un FB che funziona in modo asincrono, ovvero l'elaborazione dell'ordine
comprende più richiami dell'FB. L'avvio dell'ordine per la creazione e la configurazione del
collegamento avviene richiamando FB 65 mediante REQ = 1.
Mediante i parametri di uscita BUSY e STATUS viene visualizzato lo stato dell'ordine. STATUS
corrisponde al parametro di uscita RET_VAL delle SFC operanti in modo asincrono (vedere anche:
Significato dei parametri REQ, RET_VAL e BUSY nelle SFC che lavorano in modo asincrono).
La tabella seguente mostra la correlazione tra i parametri BUSY, DONE e ERROR. Questi parametri
consentono di rilevare lo stato attuale dell'FB 65 ovvero il momento della creazione o della
configurazione del collegamento (con la comunicazione TCP e ISO on TCP).
Parametri
Informazioni di errore
Funzionamento
L'FB 66 "TDISCON" è un FB che funziona in modo asincrono, ovvero l'elaborazione dell'ordine
comprende più richiami dell'FB. L'attivazione dell'ordine di disconnessione avviene richiamando
l'FB 66 mediante REQ = 1.
Dopo l’esecuzione riuscita del parametro FB 66 "TDISCON", l’ID indicato nell‘FB 65"TCON" non è
più valido e non può più essere impiegato né per l’invio né per la ricezione.
Mediante i parametri di uscita BUSY e STATUS viene visualizzato lo stato dell'ordine. STATUS
corrisponde al parametro di uscita RET_VAL delle SFC operanti in modo asincrono (vedere anche:
Significato di REQ, RET_VAL e BUSY nelle SFC asincrone).
La tabella seguente mostra la correlazione tra i parametri BUSY, DONE e ERROR. Questi parametri
consentono di rilevare lo stato attuale dell'FB 66 ovvero quando l'inizializzazione del collegamento è
terminata.
Parametri
Informazioni di errore
24.10 Invio di dati tramite i protocolli TCP e ISO on TCP con l'FB 63
"TSEND
Descrizione
L'FB 63 "TSEND" invia dati mediante un collegamento di comunicazione esistente.
Funzionamento
L'FB 63 "TSEND" è un FB che funziona in modo asincrono, ovvero l'elaborazione comprende più
richiami dell'FB. Per iniziare l'operazione di invio, richiamare l'FB 63 mediante REQ = 1.
Mediante i parametri di uscita BUSY e STATUS viene visualizzato lo stato dell'ordine. STATUS
corrisponde al parametro di uscita RET_VAL delle SFC operanti in modo asincrono (vedere anche:
Significato di REQ, RET_VAL e BUSY nelle SFC asincrone).
Il parametro di uscita DONE viene impostato quando i dati da inviare sono stati trasferiti
completamente all'interfaccia locale.
La tabella sottostante mostra la correlazione tra i parametri BUSY, DONE ed ERROR. Questi
parametri consentono di rilevare lo stato attuale dell'FB 63.
Avvertenza
Per effetto del funzionamento asincrono dell‘FB 63 "TSEND", la coerenza dei dati presenti nell’area
di invio deve essere mantenuta fino a quando i parametri DONE o ERROR avranno assunto il valore
TRUE.
Parametri
Informazioni di errore
24.11 Ricezione di dati tramite i protocolli TCP e ISO on TCP con l'FB 64
"TRCV"
Descrizione
L'FB 64 "TRCV" riceve dati mediante un collegamento di comunicazione.
Area di ricezione
Questo termine indica l'area nella quale il blocco funzionale inserisce i dati ricevuti.
L'area di ricezione è determinata da due grandezze:
• Puntatore all'inizio dell'area
• Lunghezza dell'area
La determinazione della lunghezza dell'area avviene, in funzione delle varianti di protocollo
impiegate, tramite il parametro LEN (se LEN <> 0) oppure mediante l'indicazione della lunghezza
del parametro DATA (se LEN = 0).
Funzionamento
L'FB 64 "TRCV" è un FB che funziona in modo asincrono, ovvero l'elaborazione comprende più
richiami dell'FB. L'avvio dell'ordine di ricezione avviene richiamando FB 64 mediante EN_R = 1.
Mediante i parametri di uscita BUSY e STATUS viene visualizzato lo stato dell'ordine. STATUS
corrisponde al parametro di uscita RET_VAL delle SFC operanti in modo asincrono (vedere anche:
Significato di REQ, RET_VAL_e BUSY nelle SFC asincrone).
La tabella seguente mostra la correlazione tra i parametri BUSY, NDR e ERROR. Questi parametri
consentono di rilevare lo stato attuale dell'FB 64 "TRCV"ovvero quando l'operazione di ricezione è
terminata
Avvertenza
Per effetto del funzionamento asincrono dell‘FB 64 "TRCV", la coerenza dei dati presenti nell’area di
ricezione viene raggiunta soltanto quando il parametro NDR assume il valore TRUE.
Parametri
Informazioni di errore
Descrizione
L‘FB 67 "TUSEND" invia i dati tramite il protocollo UDP al partner remoto il cui indirizzo è indicato nel
parametro ADDR
! Avviso
Il protocollo UDP secondo RFC 768, effettua il trasferimento dati al partner remoto senza conferma
e quindi con scarsa sicurezza. I dati possono andare perduti senza che la perdita venga segnalata
nel blocco
Avvertenza
In presenza di una successione di operazioni di invio di cui sono destinatari partner diversi, è
necessario adeguare il parametro ADDR al richiamo dell‘FB 67 "TUSEND". Si rende invece
superfluo il richiamo degli FB 65 "TCON" e 66 "TDISCON".
Funzionamento
L'FB 67 "TUSEND" è un FB che funziona in modo asincrono, ovvero l'elaborazione dell'ordine
comprende più richiami dell'FB. L'attivazione dell’operazione di invio avviene richiamando FB 67
mediante REQ = 1.
Mediante i parametri di uscita BUSY e STATUS viene visualizzato lo stato dell'ordine. STATUS
corrisponde al parametro di uscita RET_VAL delle SFC operanti in modo asincrono (vedere anche:
Significato di REQ, RET_VAL e BUSY nelle SFC).
La tabella seguente mostra la correlazione tra i parametri BUSY, DONE e ERROR. Questi parametri
consentono di rilevare lo stato attuale dell'FB 67 ovvero quando l’operazione di invio è terminata.
Avvertenza
Per effetto del funzionamento asincrono dell‘FB 67 "TUSEND", la coerenza dei dati presenti
nell’area di invio deve essere mantenuta fino a quando i parametri DONE o ERROR avranno assunto
il valore TRUE.
Parametri
Informazioni di errore
Descrizione
L'FB 68 "TURCV" riceve i dati tramite il protocoll_o UDP. Al termine della ricezione da parte dell‘FB
68 "TURCV", nel parametro ADDR viene indicato l’indirizzo del partner remoto ovvero del mittente.
! Avviso
Il protocollo UDP secondo RFC 768, effettua il trasferimento dati al partner remoto senza conferma
e quindi con scarsa sicurezza. I dati possono andare perduti senza che la perdita venga segnalata
nel blocco.
Funzionamento
L'FB 68 "TURCV" è un FB che funziona in modo asincrono, ovvero l'elaborazione dell'ordine
comprende più richiami dell'FB. L'attivazione dell’ordine di invio avviene richiamando FB 68
mediante EN_R = 1.
Mediante i parametri di uscita BUSY e STATUS viene visualizzato lo stato dell'ordine. STATUS
corrisponde al parametro di uscita RET_VAL delle SFC operanti in modo asincrono (vedere anche:
Significato di REQ, RET_VAL e BUSY nelle SFC asincrone).
La tabella seguente mostra la correlazione tra i parametri BUSY, DONE e ERROR. Questi parametri
consentono di rilevare lo stato attuale dell'FB 68 ovvero quando la ricezione è terminata.
Avvertenza
Per effetto del funzionamento asincrono dell‘FB 68 "TURCV" la coerenza dei dati presenti nell’area
di invio deve essere mantenuta fino a quando il parametro NDR avrà assunto il valore TRUE.
Parametri
Informazioni di errore
Descrizione
L'FB 210 "FW_TCP" fornisce, come server, i servizi FETCH e WRITE. In questo contesto viene
richiesto, rispettivamente per i servizi FETCH e WRITE, un collegamento proprio. L'FB 210 deve
essere pertanto richiamato separatamente per ciascun servizio e, nel parametro CONNECT, deve
essere inserita la descrizione del rispettivo collegamento TCP passivo.
Parametri
Ulteriori informazioni
La descrizione dettagliata dell'FB 210 "FW_TCP" è disponibile sul DVD di STEP 7 nella directory
DVD_Root\Optional Components\Communication Blocks nel file "FetchWrite_PNCPU_x.pdf" (x=e
per la lingua italiana, x=b per la lingua inglese).
Descrizione
L'FB 220 "FW_IOT" fornisce, come server, i servizi FETCH e WRITE. In questo contesto viene
richiesto, rispettivamente per i servizi FETCH e WRITE, un collegamento proprio. L'FB 220 deve
essere pertanto richiamato separatamente per ciascun servizio e, nel parametro CONNECT, deve
essere inserita la descrizione del rispettivo collegamento ISO-on-TCP passivo.
Parametri
Ulteriori informazioni
La descrizione dettagliata dell'FB 220 "FW_IOT" è disponibile sul DVD di STEP 7 nella directory
DVD_Root\Optional Components\Communication Blocks nel file "FetchWrite_PNCPU_x.pdf" (x=e
per la lingua italiana, x=b per la lingua inglese).
Avvertenza
I parametri ID e EV_ID vengono rilevati solo al primo richiamo del blocco (i parametri attuali o i valori
predefiniti dall'istanza).
Descrizione
L'SFB 36 "NOTIFY" controlla un segnale. Sia in presenza di un fronte di salita (evento entrante), sia
in presenza di un fronte di discesa (evento uscente), l'SFB 36 genera una segnalazione, alla quale
possono essere attribuiti fino a dieci variabili. La segnalazione viene trasmessa a tutti i nodi allacciati
a questo scopo. Al primo richiamo viene trasmessa una segnalazione con lo stato di segnale attuale.
Le variabili vengono registrate al momento del rilevamento del fronte e assegnate alla segnalazione.
Per ogni istanza dell'SFB 36 "NOTIFY" è disponibile una memoria segnalazioni con due spazi.
Maggiori informazioni sulla memoria intermedia di transizioni di segnale vedi il paragrafo
"Rilevamento di transizioni di segnale" nell'introduzione alla creazione di segnalazioni riferite ai
blocchi con gli SFB.
L'SFB 36 "NOTIFY" è conforme alla norma IEC 1131-5.
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche per l'SFB 36 che possono
essere emesse tramite i parametri ERROR e STATUS.
Descrizione
L'SFB 31 "NOTIFY_8P" è la versione ampliata a otto segnali dell'SFB 36 "NOTIFY".
Viene creata una segnalazione se è stata rilevata una transizione di segnale in almeno un segnale.
Al primo richiamo dell'SFB 31 viene sempre creata una segnalazione. Per tutti gli otto segnali è
previsto un numero di segnalazione comune, che viene suddiviso in otto segnalazioni parziali nel
controllore.
Per ogni istanza dell'SFB 31 "NOTIFY_8P" è disponibile una memoria segnalazioni con due spazi.
Maggiori informazioni sulla memorizzazione intermedia di transizioni di segnale sono riportate nel
paragrafo "Rilevamento di transizioni di segnale" Introduzione alla creazione di segnalazioni riferite
ai blocchi con gli SFB.
Avvertenza
Nonostante la perdita di segnalazioni, al display vengono comunicati gli ultimi due cambiamenti di
ogni segnale.
! Pericolo
Prima di richiamare l'SFB 31 "NOTIFY_8P" in un sistema di automazione occorre essere certi che
tutti i display collegati riconoscano questo blocco. Ciò è possibile se la versione del sistema di
automazione utilizzato soddisfa almeno uno dei seguenti requisiti: STEP 7 dalla versione V5.1
Service Pack 3, WinCC dalla V5.1 Hot Fix 1, PCS 7 dalla V5.2 Service Pack 2, SIMATIC Device
Driver dalla versione V5.6.
In caso di mancata osservanza di tale indicazione, la comunicazione tra il sistema di automazione e
i display collegati verrà interrotta. Di conseguenza non sarà possibile accedere all'impianto con i
sistemi di visualizzazione collegati.
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche per l'SFB 31 che possono
essere trasmette tramite i parametri ERROR e STATUS.
Descrizione
L'SFB 33 "ALARM" controlla un segnale.
• Funzionamento standard (vale a dire che la segnalazione con conferma è disattivata): sia in
presenza di un fronte di salita (evento entrante), sia in presenza di un fronte di discesa (evento
uscente), il blocco genera una segnalazione, alla quale possono essere attribuite fino a dieci
variabili.
• Segnalazione con conferma attivata: dopo la creazione di una segnalazione entrante per il
segnale, il blocco non genera altre segnalazioni fino a quando il messaggio entrante non viene
confermato in un controllore (vedere anche Introduzione alla creazione di segnalazioni riferite ai
blocchi con gli SFB
La segnalazione viene trasmessa a tutti i nodi allacciati a questo scopo.
Al primo richiamo viene trasmessa una segnalazione con lo stato di segnale attuale.
L'uscita ACK_UP viene azzerata se è presente un fronte di salita. L'uscita viene impostata se la
conferma dell'evento in entrata proviene da un controllore visualizzato collegato.
Lo stesso vale per l'uscita ACK_DN, che viene azzerata in presenza di un fronte di discesa. L'uscita
viene impostata se la conferma dell'evento in uscita proviene da un controllore visualizzato
allacciato. Dopo l'arrivo della conferma da un controllore visualizzato collegato, l'informazione di
conferma viene comunicata a tutti i nodi collegati.
Per ogni istanza dell'SFB 33 "ALARM" è disponibile una memoria con due spazi. Per maggiori
informazioni sulla memorizzazione intermedia di transizioni di segnale vedi il paragrafo "Rilevamento
di transizioni di segnale" nell'introduzione alla creazione di segnalazioni riferite ai blocchi con gli SFB.
L'SFB 33 "ALARM" è conforme alla norma IEC 1131-5.
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche per l'SFB 33 che possono
essere emesse tramite i parametri ERROR e STATUS.
Avvertenza
Dopo il primo richiamo del blocco le uscite ACK_UP e ACK_DN hanno valore 1 e il valore storico
dell'ingresso SIG viene assunto a 0.
Descrizione
L'SFB 35 "ALARM_8P" è il lineare ampliamento a otto segnali dell'SFB 33 "ALARM".
Qualora la procedura di segnalazione con conferma non sia stata attivata, viene sempre generata
una segnalazione se almeno per un segnale è stato riconosciuta una transizione di segnale
(eccezione: al primo richiamo viene sempre trasmessa una segnalazione). Per tutti otto i segnali c'è
un numero di segnalazione comune, che viene suddiviso sul controllore visualizzato in otto
segnalazioni parziali. È possibile confermare ogni singola segnalazione parziale oppure più
segnalazioni parziali in una sola volta.
Tramite il parametro di uscita ACK_STATE è possibile continuare ad elaborare nel programma lo
stato di conferma delle singole segnalazioni. In caso di inibizione o di abilitazione di una
segnalazione di un blocco ALARM_8P, viene inibito o abilitato sempre tutto il blocco ALARM _8P.
Non è possibile inibire o abilitare singoli segnali.
Per ogni istanza dell'SFB 35 "ALARM_8P" è disponibile una memoria con due spazi. Per maggiori
informazioni sulla memorizzazione intermedia di transizioni di segnale vedi il paragrafo "Rilevamento
di transizioni di segnale" nell'introduzione alla creazione di segnalazioni riferite ai blocchi con gli SFB.
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche per l'SFB 35 che possono
essere emesse dai parametri ERROR e STATUS.
Avvertenza
Dopo il primo richiamo del blocco tutti i bit dell'uscita ACK_STATE sono impostati e i valori storici
delle entrate SIG_i, 1≤i≤8 sono assunti a 0.
Descrizione
L'SFB 34 "ALARM_8" - a prescindere dal fatto che le variabili D_1 ... SD_10 non sono presenti - è
identico all'SFB 35 "ALARM_8P".
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche per l'SFB 34 che possono
essere emesse dai parametri ERROR e STATUS.
Avvertenza
Dopo il primo richiamo del blocco tutti i bit dell'uscita ACK_STATE sono impostati e i valori storici
delle entrate SIG_i, 1≤i≤8 vengono assunti a 0.
Descrizione
L'SFB 37 "AR_SEND" trasmette dati di archivio a tutti i sistemi di servizio e di controllo collegati a
questo scopo. Questi comunicano nel telegramma di collegamento della CPU il numero di archivio
rilevante. A seconda della memoria di lavoro della CPU e dell'area di operandi utilizzata, i dati di
archivio possono arrivare fino a 65.534 byte. Nel creare i dati di archivio si deve tenere presente in
struttura predefinita del sistema di servizio e di controllo utilizzato.
L'attivazione del procedimento di trasmissione avviene dopo il richiamo del blocco e del fronte di
salita all'ingresso di comando REQ. L'indirizzo di partenza dei dati di archivio da trasmettere viene
assegnato attraverso SD_1, la lunghezza del blocco dati viene assegnata tramite LEN. La
trasmissione dei dati avviene in modo asincrono rispetto all'esecuzione del programma utente. La
conclusione positiva del procedimento di trasmissione viene visualizzata nel parametro di stato
DONE con 1. Il procedimento di trasmissione in corso viene interrotto in presenza di un fronte di
salita all'ingresso di comando R.
Informazioni di errore
La tabella seguente contiene tutte le informazioni di errore specifiche per l'SFB 37 che possono
essere emesse dai parametri ERROR e STATUS.
Descrizione
Con la SFC 10 "DIS_MSG" (disable message) vengono inibite segnalazioni riferite ai blocchi creati
con gli SFB, segnalazioni riferite ai simboli (SCAN) e segnalazioni cumulative tecnologiche. I
messaggi da inibire vengono definiti tramite i parametri di ingresso MODE e MESGN. La condizione
necessaria per l'avviamento positivo di un procedimento di inibizione con la SFC 10 "DIS_MSG" è
che non sia attivo al momento alcun ulteriore procedimento di inibizione della SFC 10.
Le segnalazioni che al richiamo della SFC 10 sono già pronti per essere trasmesse ma si trovano
ancora in un buffer interno, non subiscono più l'inibizione, cioè vengono ancora trasmesse.
Le uscite ERROR e STATUS degli SFB "NOTIFY", "NOTIFY_8P", "ALARM", "ALARM_8P" e
"ALARM_8" comunicano che la trasmissione di messaggi è inibita.
Il procedimento di inibizione viene avviato se, al richiamo della SFC 10, viene occupato il parametro
di ingresso REQ con 1.
Modo di funzionamento
Il procedimento di inibizione viene condotto in modo asincrono, cioè si può estendere a più richiami
della SFC 10 (vedere anche Significato dei parametri REQ, RET_VAL e BUSY nelle SFC che
lavorano in modo asincrono:
• Al primo richiamo (REQ = 1) la SFC 10 verifica i parametri di ingresso e cerca di occupare le
risorse di sistema necessarie. In caso di riuscita W#16#7001 viene registrato in RET_VAL,
BUSY viene impostato e l'inibizione avviata.
In caso contrario in RET_VAL viene registrata la relativa informazione di errore e il job è
terminato. BUSY in tal caso non può essere analizzato.
• Ad un eventuale richiamo intermedio in RET_VAL viene registrato W#16#7002 (il job viene
ancora elaborato dalla CPU) e BUSY viene impostato. Un richiamo intermedio non influisce sul
job in corso.
All'ultimo richiamo in RET_VAL viene registrato W#16#0000, se non è presente alcun errore. BUSY
in questo caso viene indicato con 0.
In caso di errore in RET_VAL viene registrata l'informazione di errore e BUSY non può essere
analizzato.
Valore Significato
0 Tutte le segnalazioni create con gli SFB riferite ai blocchi, riferite ai simboli e quelle cumulative
tecnologiche della CPU.
1 Tutte le segnalazioni della CPU riferite ai blocchi create con gli SFB, cioè tutte le segnalazioni degli
SFB "NOTIFY", "NOTIFY_8P","ALARM", "ALARM_8P" e "ALARM_8".
2 Tutte le segnalazioni cumulative tecnologiche della CPU
3 Tutte le segnalazioni della CPU riferite ai simboli (SCAN)
5 Segnalazione singola della classe "segnalazioni riferite ai simboli"
6 Segnalazione singola della classe "segnalazioni riferite ai blocchi create con gli SFB"
7 Segnale singolo della classe "segnalazioni cumulative tecnologiche"
Informazioni d'errore
Descrizione
Con la SFC 9 "EN_MSG" (enable message) vengono riabilitate le segnalazioni inibite riferite ai
blocchi e ai simboli e le segnalazioni cumulative tecnologiche inibiti. L'inibizione può essere stata
attivata da un controllore visualizzato o con la SFC 10 "DIS_MSG".
Le segnalazioni da abilitare devono essere definite tramite i parametri di ingresso MODE e MESGN.
Presupposto per l'avviamento positivo di un procedimento di abilitazione con la SFC 9 "EN_MSG" è
che momentaneamente non sia attivo alcun altro procedimento di abilitazione della SFC 9.
Il procedimento di abilitazione viene avviato se, al richiamo della SFC 9, il parametro di ingresso
REQ viene occupato con 1.
Modo di funzionamento
Il procedimento di abilitazione viene condotto in modo asincrono, cioè si può estendere a più richiami
della SFC 9 (vedere anche Significato dei parametri REQ, RET_VAL e BUSY nelle SFC che
lavorano in modo asincrono.
• Al primo richiamo (REQ = 1) la SFC 9 verifica i parametri di ingresso e cerca di occupare le
risorse di sistema necessarie. In caso di riuscita in RET_VAL viene registrato W#16#7001,
BUSY viene impostato e l'abilitazione avviata.
In caso contrario in RET_VAL viene registrata la relativa informazione di errore e il job è
terminato. BUSY in tal caso non può essere analizzato.
• Ad un eventuale richiamo intermedio in RET_VAL viene registrato W#16#7002 (il job viene
ancora elaborato dalla CPU) e BUSY viene impostato. Un richiamo intermedio non influisce sul
job in corso.
All'ultimo richiamo in RET_VAL viene registrato W#16#0000 se non è presente alcun errore. BUSY
in questo caso viene descritto con 0.
In caso di errore in RET_VAL viene registrata l'informazione di errore e BUSY non può essere
analizzato.
Valore Significato
0 Tutte le segnalazioni create con gli SFB riferite ai blocchi, riferite ai simboli e tutte quelle cumulative
tecnologiche della CPU.
1 Tutti le segnalazioni della CPU riferite ai blocchi create con gli SFB, cioè tutti le segnalazioni degli
SFB "NOTIFY", "NOTIFY_8P", "ALARM", "ALARM_8P" e "ALARM_8".
2 Tutte le segnalazioni cumulative tecnologiche della CPU
3 Tutte le segnalazioni della CPU riferite ai simboli (SCAN)
5 Segnalazione singola della classe "segnalazioni riferite ai simboli"
6 Segnalazione singola della classe "segnalazioni riferite ai blocchi create con gli SFB"
7 Segnale singolo della classe "segnalazioni cumulative tecnologiche"
Informazioni d'errore
Comportamento al riavviamento
Al riavviamento gli SFB per la creazione di segnalazioni riferite ai blocchi si comportano come
blocchi funzionali utente che possono essere ripresi. Essi proseguono dal punto di interruzione.
Interruzione di collegamento
I collegamenti assegnati alle istanze SFB vengono controllati in caso di interruzione. All'interruzione
del collegamento il nodo colpito viene tolto dalla lista interna della CPU dei nodi allacciati per le
segnalazioni riferite ai blocchi. Le segnalazioni ancora presenti per questo nodo vengono cancellate.
Se dopo un'interruzione di collegamento sono allacciati ancora altri nodi, essi continuano a ricevere
le segnalazioni. Gli SFB smettono di trasmettere solo quando i collegamenti a tutti i nodi allacciati
sono interrotti. Avviene allora una visualizzazione nei parametri d'uscita ERROR e STATUS
(ERROR = 1, STATUS = 1).
SFC 19 "ALARM_SC"
Con l'aiuto della SFC 19 "ALARM_SC" è possibile rilevare:
• lo stato di conferma dell'ultima "segnalazione arrivata" e lo stato di segnale all'ultimo richiamo
della SFC 17/SFC 107, oppure
• lo stato di segnale all'ultimo richiamo della SFC 18/SFC 108.
Avvertenza
Caricando un blocco già presente nella CPU con richiami delle SFC 17 e SFC 18 è possibile che il
blocco esistente abbia già trasferito una segnalazione entrante e che il nuovo blocco non trasferisca
la relativa segnalazione uscente. In questo modo la segnalazione rimane nella memoria delle
segnalazioni interna della CPU. Tale situazione si può verificare anche quando si cancellano dei
blocchi con richiami delle SFC 17 e SFC 18.
Queste segnalazioni possono essere eliminate dalla memoria delle segnalazioni interna della CPU
commutando la CPU nello stato di funzionamento STOP ed eseguendo poi un nuovo avviamento
(avviamento a caldo) o un avviamento a freddo.
Modifiche del programma utente che contiene richiami SFC 107/SFC 108
Anche se il programma dell'utente contiene richiami di SFC 107 e/o SFC 108, con le modifiche del
programma sopra descritte le segnalazioni possono restare nella memoria interna delle segnalazioni
e quindi occupare risorse del sistema in modo permanente.
Al contrario delle risorse di sistema occupate da richiami di SFC 17/SFC 18, quelle occupate dai
richiami delle SFC 107/SFC 108 possono essere riabilitate dall'utente senza dover portare la CPU in
stato di STOP. Ciò succede impiegando la SFC 106 "DEL_SI", vedere Abilitazione di risorse di
sistema a occupazione dinamica con la SFC 106 "DEL_SI". Prima di abilitare le risorse di sistema a
occupazione dinamica richiamando la SFC 106 "DEL_SI", può essere opportuno leggere con l'aiuto
della SFC 105 "READ_SI" le informazioni sulle risorse del sistema attualmente occupate
dinamicamente della propria CPU; vedere Lettura di risorse di sistema a occupazione dinamica con
la SFC 105 "READ_SI".
Avvertenza
Nei programmi nuovi è opportuno utilizzare solo le SFC 107 e 108 (a condizione che la CPU supporti
le SFC 107 e 108), perché offrono migliori funzioni di gestione delle risorse del sistema.
Descrizione
Le SFC 17 "ALARM_SQ" e SFC 18 "ALARM_S" generano ad ogni richiamo una segnalazione alla
quale è possibile aggiungere una variabile. La segnalazione viene trasmessa a tutti i nodi allacciati.
La SFC 17 e la SFC 18 mettono dunque a disposizione un semplice meccanismo di segnalazione. Si
deve fare attenzione a richiamare le SFC 17/SFC 18 solo quando il valore del segnale SIG, che
attiva le segnalazioni, è in negativo rispetto all'ultimo richiamo. Se ciò non avviene, se ne riceve
comunicazione tramite RET_VAL e non viene trasmessa alcuna segnalazione. Fare anche
attenzione che al primissimo richiamo delle SFC 17/SFC 18 all'ingresso SIG sia presente 1.
Altrimenti RET_VAL fornisce un'informazione di errore e non viene trasmessa alcuna segnalazione.
Avvertenza
Richiamare la SFC 17 e la SFC 18 da un FB al quale sono stati prima assegnati gli attributi di
sistema! Informazioni dettagliate per l'assegnazione di attributi di sistema ai blocchi si trovano in
/234/
t
t0 t1 t2
t0, t1 e t2 sono i punti di tempo di richiamo delle SFC 17/SFC 18. Se al punto di tempo t2 gli stati di
segnale di t0 e t1 non sono ancora stati trasmessi, gli stati di segnale di t1 e t2 vengono annullati e
allo stato di segnale di t0 viene impostata l'identificazione di overflow.
Overflow di istanza
Se il numero dei richiami di SFC 17/SFC 18 è maggiore del numero massimo di risorse di sistema
della CPU, si può arrivare ad una mancanza di risorse (overflow di istanze). Ciò viene comunicato sia
tramite un'informazione di errore in RET_VAL, sia nei controllori visualizzati collegati.
Il numero massimo di richiami delle SFC 17/SFC 18 dipende dalla CPU.
Queste informazioni si trovano in /70/ e /101/
Informazioni d'errore
Descrizione
Con l'aiuto della SFC 19"ALARM_SC" è possibile rilevare
• lo stato di conferma dell'ultima segnalazione ALARM_SQ/ALARM_DQ arrivata e lo stato del
segnale che attiva la segnalazione all'ultimo richiamo della SFC 17 "ALARM_SQ"/SFC 107
"ALARM_DQ" oppure
• lo stato del segnale che attiva la segnalazione all'ultimo richiamo della SFC 18
"ALARM_S"/SFC 108 "ALARM_D".
La segnalazione, oppure il segnale, è identificato in modo univoco tramite il numero della
segnalazione assegnato, se sono stati attribuiti numeri delle segnalazioni con l'aiuto della
progettazione delle segnalazioni.
La SFC 19 "ALARM_SC" accede alla memoria delle SFC 17/SFC 18/SFC 107/SFC 108
temporaneamente occupata.
Informazioni d'errore
Descrizione
Le SFC 107 "ALARM_DQ" e 108 "ALARM_D" generano, a ogni richiamo, una segnalazione alla
quale l'utente può annettere una variabile. Sotto questo aspetto esse coincidono con le SFC 17
"ALARM_SQ" e 18 "ALARM_S".
Al momento della creazione delle segnalazioni con le SFC 107 "ALARM_DQ" e 108 "ALARM_D" il
sistema operativo occupa una risorsa di sistema per la durata del ciclo del segnale.
Nell'SFC 180 "ALARM_S" il ciclo del segnale dura dal richiamo dell'SFC con SIG=1 fino al nuovo
richiamo con SIG=0. Nell'SFC 17 "ALARM_SQ" a questo tempo viene eventualmente aggiunto il
tempo fino alla conferma del segnale entrante da parte di uno dei controllori visualizzati.
Se all'interno del ciclo del segnale si verifica un sovraccarico o una cancellazione del blocco che
genera le segnalazioni, la relativa risorsa di sistema resta occupata fino al successivo nuovo avvio
(avvio a caldo).
La migliore funzionalità delle SFC 107 "ALARM_DQ" e 108 "ALARM_D" rispetto alle SFC 17 e 18
consiste nel fatto che l'utente può gestire le risorse del sistema occupate:
• con l'aiuto della SFC 105 "READ_SI" è possibile leggere informazioni sulle risorse del sistema
occupate
• con la SFC 106 "DEL_SI" è possibile abilitare nuovamente le risorse del sistema occupate.
Questo aspetto è particolarmente importante nel caso di risorse del sistema occupate in modo
duraturo. Una risorsa di sistema momentaneamente occupata, p. es., resta occupata in modo
duraturo se l'utente, modificando il programma, cancella un richiamo di FB che contiene richiami
di SFC107 o SFC108. Se nel modificare il programma si ricarica un FB con richiami di SFC 107
o SFC 108, può succedere che le SFC 107 e 108 non creino più le segnalazioni.
Le SFC 107 e 108 hanno un parametro in più rispetto alle SFC 17 e 18, vale a dire l'ingresso
CMP_ID. Questo permette di assegnare le segnalazioni create con le SFC 107 e 108 ad aree
logiche, p. es. a impianti parziali. Se si richiamano le SFC 107/SFC 108 in un FB, è possibile
occupare l'ingresso CMP_ID con il numero del relativo DB di istanza.
Informazioni di errore
Descrizione
Con la SFC 105 "READ_SI" è possibile leggere risorse di sistema occupate al momento della
creazione di segnalazioni con le SFC 107 e 108, grazie ai valori qui utilizzati di EV_ID e CMP_ID.
Questi vengono assegnati alla SFC 105 "READ_SI" nel parametro SI_ID.
La SFC 105 "READ_SI" dispone di 4 tipi di funzionamento possibili, descritti nella tabella seguente. Il
tipo di funzionamento desiderato si può impostare con il parametro MODE.
MODE Quali risorse di sistema occupate dalle SFC 107/SFC 108 vengono lette?
1 Tutte (richiamo della SFC 105 eseguito con SI_ID:=0)
2 La risorsa di sistema occupata da EV_ID:=ev_id al momento del richiamo delle
SFC 107/SFC 108 (richiamo della SFC 105 eseguito con SI_ID:=ev_id)
3 Tutte le risorse di sistema occupate da CMP_ID:=cmp_id al momento del richiamo delle
SFC 107/SFC 108 (richiamo della SFC 105 eseguito con SI_ID:=cmp_id)
0 Ulteriori risorse di sistema che nel richiamo precedente non hanno potuto essere lette con
MODE=1 o MODE=3 perché l'area di destinazione selezionata SYS_INST era troppo piccola
Procedimento
Se al momento del richiamo della SFC 105 con MODE=1 o MODE=3 si sceglie un'area di
destinazione SYS_INST sufficientemente grande, dopo il richiamo essa riporta il contenuto di tutte le
risorse di sistema selezionate tramite il parametro MODE attualmente occupate.
Se il numero delle risorse occupate al momento è molto elevato, il tempo di esecuzione della SFC è
proporzionalmente lungo. In caso di carico elevato della CPU è possibile che venga superato il
tempo massimo progettato per il controllo del ciclo.
Questo problema di tempo di esecuzione si può evitare nella maniera seguente: selezionare un'area
di destinazione SYS_INST abbastanza piccola. Se la SFC non è in grado di registrare in SYS_INST
tutte le risorse di sistema da leggere, il problema viene comunicato all'utente tramite
RET_VAL=W#16#0001. Richiamare quindi la SFC 105 con MODE=0 e la stessa SI_ID del richiamo
precedente finché RET_VAL non avrà il valore W#16#0000.
Avvertenza
Poiché il sistema operativo non coordina i richiami di SFC 105 relativi a un job di lettura, è opportuno
eseguire tutti i richiami di SFC 105 in una stessa classe di priorità.
Informazioni di errore
Descrizione
Con la SFC 106 "DEL_SI" è possibile cancellare risorse di sistema momentaneamente occupate.
La SFC 106 "DEL_SI" dispone di 3 tipi di funzionamento possibili, descritti nella tabella seguente. Il
tipo di funzionamento desiderato si può impostare con il parametro MODE.
MODE Quali risorse di sistema occupate dalle SFC 107/SFC 108 vengono cancellate?
1 Tutte (richiamo della SFC 106 eseguito con SI_ID:=0)
2 La risorsa di sistema occupata da EV_ID:=ev_id al momento del richiamo delle
SFC 107/SFC 108 (richiamo della SFC 106 eseguito con SI_ID:=ev_id)
3 Tutte le risorse di sistema occupate da CMP_ID:=cmp_id al momento del richiamo delle
SFC 107/SFC 108 (richiamo della SFC 106 eseguito con SI_ID:=cmp_id)
Informazioni di errore
Descrizione
L'SFB 3 "TP" crea un impulso di lunghezza PT. Il tempo trascorre solo negli stati di funzionamento
AVVIAMENTO e RUN.
Un fronte di salita all'ingresso IN causa l'avviamento dell'impulso.
L'uscita Q rimane impostata per la durata di tempo PT, indipendentemente dalla successiva
esecuzione del segnale di ingresso (cioè anche se l'ingresso IN cambia nuovamente da 0 a 1, prima
che il tempo PT sia trascorso).
L'uscita ET fornisce il tempo, mentre l'uscita Q è già impostata. Essa può assumere al massimo il
valore dell'ingresso PT e viene resettata se l'ingresso IN cambia in 0, tuttavia non prima che il tempo
PT sia trascorso.
L'SFB 3 "TP" è conforme alla norma IEC 1131-3.
Il sistema operativo resetta le istanze dell'SFB 3 "TP" all'avviamento a freddo. Nel caso le istanze di
questo SFB 3 "TP" debbano essere inizializzate dopo il nuovo avviamento (avviamento a caldo), è
necessario richiamare nell'OB 100 le istanze da inizializzare con PT = 0 ms. Se le istanze di questo
SFB sono contenute in un altro blocco, queste istanze vengono resettate p. es. inizializzando il
blocco sovraordinato.
Diagramma di tempo
IN
PT PT PT
ET
PT
Descrizione
L'SFB 4 "TON" ritarda un fronte di salita di un tempo PT. Il tempo trascorre solo negli stati di
funzionamento AVVIAMENTO e RUN.
Un fronte di salita all'ingresso IN ha come conseguenza un fronte di salita all'uscita Q dopo che è
trascorsa la durata di tempo PT. Q rimane impostato fino a che l'ingresso IN cambia in 0. Se
l'ingresso IN cambia in 0, prima che sia trascorso il tempo PT, l'uscita Q rimane su 0.
L'uscita ET fornisce il tempo che è trascorso all'ingresso IN dall'ultimo fronte di salita, tuttavia al
massimo fino al valore dell'ingresso PT. ET viene resettato se l'ingresso IN cambia in 0.
L'SFB 4 "TON" è conforme alla norma IEC 1131-3.
Il sistema operativo resetta le istanze dell'SFB 4 "TON" all'avviamento a freddo. Nel caso le istanze
di questo SFB debbano essere inizializzate dopo il nuovo avviamento (avviamento a caldo), le
istanze da inizializzare devono essere richiamate nell'OB 100 con PT = 0 ms. Se le istanze di questo
SFB sono contenute in un altro blocco, queste istanze vengono resettate p. es. inizializzando il
blocco sovraordinato.
Diagramma di tempo
IN
Q
PT PT
ET
PT
Descrizione
L'SFB 5 "TOF" ritarda un fronte di discesa di un tempo PT. Il tempo trascorre solo negli stati di
funzionamento AVVIAMENTO e RUN.
Un fronte di salita all'ingresso IN causa un fronte di salita all'uscita Q. Un fronte di discesa
all'ingresso IN ha come conseguenza un fronte di discesa all'uscita Q dopo che è trascorsa la durata
di tempo PT. Se l'ingresso IN cambia nuovamente in 1 prima che il tempo PT sia trascorso, l'uscita Q
rimane su 1.
L'uscita ET fornisce il tempo, che è trascorso all'ingresso IN dall'ultimo fronte di discesa, tuttavia al
massimo fino al valore dell'ingresso PT. ET viene resettato se l'ingresso IN cambia in 1.
L'SFB 5 "TOF" è conforme alla norma IEC 1131-3.
Il sistema operativo resetta le istanze dell'SFB 5 "TOF" all'avviamento a freddo. Nel caso le istanze di
questo SFB debbano essere inizializzate dopo il nuovo avviamento (avviamento a caldo), le istanze
da inizializzare devono essere richiamate nell'OB 100 con PT = 0 ms. Se le istanze di questo
SFB sono contenute in un altro blocco, queste istanze vengono resettate p. es. inizializzando il
blocco sovraordinato.
Diagramma di tempo
IN
PT PT
ET
PT
Descrizione
Con l'SFB 0 "CTU" è possibile contare in avanti. In presenza di un fronte di salita all'ingresso CU (di
fronte all'ultimo richiamo SFB) il contatore viene aumentato di 1. Quando il valore di conteggio
raggiunge il limite massimo di 32.767 non può essere più aumentato. Ogni ulteriore fronte di salita
all'ingresso CU rimane senza alcun effetto.
Il livello 1 all'ingresso R causa il resettaggio del contatore sul valore 0 indipendentemente da quale
valore sia presente all'ingresso CU.
All'uscita Q viene visualizzato se il valore di conteggio attuale è maggiore o se è uguale al valore
predefinito PV.
L'SFB 0 "CTU" è conforme alla norma IEC 1131-3.
Il sistema operativo resetta le istanze dell'SFB 0 "CTU" all'avviamento a freddo. Nel caso le istanze
di questo SFB debbano essere inizializzate dopo il nuovo avviamento (avviamento a caldo), le
istanze da inizializzare devono essere richiamate nell'OB 100 con PT = 0 ms. Se le istanze di questo
SFB sono contenute in un altro blocco, queste istanze vengono resettate p. es. inizializzando il
blocco sovraordinato.
Descrizione
Con l'SFB 1 "CTD" è possibile contare all'indietro. In presenza di un fronte di salita all'ingresso CD (di
fronte all'ultimo richiamo SFB) il contatore viene diminuito di 1. Quando il valore di conteggio
raggiunge il limite minimo di -32.768 non può essere più diminuito. Ogni ulteriore fronte di salita
all'ingresso CD rimane senza alcun effetto.
Il livello 1 all'ingresso LOAD fa in modo che il contatore venga preimpostato sul valore prestabilito
PV, indipendentemente da quale valore sia presente all'ingresso CD.
All'uscita Q viene visualizzato se il valore di conteggio attuale è minore o se è uguale a zero.
L'SFB 1 "CTD" è conforme alla norma IEC 1131-3.
Il sistema operativo resetta le istanze dell'SFB 1 "CTD" all'avviamento a freddo. Se le istanze di
questo SFB devono essere inizializzate dopo il nuovo avviamento (avviamento a caldo), le istanze
da inizializzare 1 devono essere richiamate nell'OB 100 con LOAD = 1 e PV = valore di partenza
desiderato per CV. Nel caso le istanze di questo SFB sono contenute in un altro blocco, queste
istanze vengono resettate p. es. inizializzando il blocco sovraordinato.
Descrizione
Con l'SFB 2 "CTUD" è possibile contare in avanti e all'indietro. Il contatore in presenza di un fronte di
salita (di fronte all'ultimo richiamo SFB)
• viene aumentato di 1 all'ingresso CU
• viene diminuito di 1 all'ingresso CD.
Se il valore di conteggio raggiunge
• il limite minimo di -32.768 non può più essere diminuito;
• il limite massimo di 32.767 non può più essere aumentato.
Se in un ciclo è presente un fronte di salita sia all'ingresso CU che all'ingresso CD il contatore
manterrà il suo valore attuale. Questo comportamento si discosta dalla norma IEC 1131-3, dove, se
i segnali CU e CD sono contemporanei, prevale l'ingresso CU. Questa proposta di modifica è stata
presentata alla IEC.
Il livello 1 all'ingresso LOAD fa in modo che il contatore venga preimpostato sul valore predefinito PV,
indipendentemente da quali valori siano presenti agli ingressi CU e CD.
Il livello 1 all'ingresso R causa il resettaggio del contatore sul valore 0, indipendentemente da quali
valori siano presenti agli ingressi CU, CD e LOAD. All'uscita QU viene visualizzato se il valore di
conteggio attuale è maggiore o uguale al valore predefinito PV: all'uscita QD viene visualizzato se è
minore o uguale a zero.
Il sistema operativo resetta le istanze dell'SFB 2 "CTUD" all'avviamento a freddo. Se le istanze di
questo SFB devono essere inizializzate dopo il nuovo avviamento (avviamento a caldo), le istanze
da inizializzare devono essere richiamate nell'OB 100 come segue:
• utilizzando come contatore in avanti con R = 1
• utilizzando come contatore all'indietro con R = 0 e LOAD = 1 e PV = valore di partenza
desiderato per CV.
Nel caso le istanze di questo SFB sono contenute in un altro blocco, queste istanze vengono
resettate p. es. inizializzando il blocco sovraordinato.
27.1 Sommario
È possibile copiare le funzioni IEC elencate qui di seguito (IEC: International Electrotechnical
Commission) dalla biblioteca di STEP 7 "S7libs\Stdlib30" nella directory di programma.
Informazioni sui blocchi di comunicazione conformi a IEC si trovano nella guida contestuale relativa
agli SFB/SFC (vedere: Differenze fra i blocchi di comunicazione S7 e i blocchi di comunicazione di
base S7)
La tabella seguente mostra la quantità di memoria di lavoro e di memoria di carico nonché la quantità
di byte di dati locali necessarie per le singole funzioni IEC.
Descrizione FC 1 AD_DT_TM
Con la funzione FC 1 è possibile aggiungere una durata di tempo (formato TIME) ad un istante
(formato DT) e fornire come risultato un nuovo istante (formato DT). L´istante (parametro T) deve
essere compreso tra DT#1990-01-01-00:00:00.000 e DT#2089-12-31-23:59:59.999. Con la funzione
non è possibile eseguire una verifica dell´ingresso. Se il risultato dell´addizione non si trova nel
campo specificato sopra, il risultato viene limitato al valore corrispondente e il risultato binario BIE
viene azzerato.
Per il parametro di ingresso T ed il parametro di uscita è possibile assegnare solo una variabile
definita in modo simbolico.
Descrizione FC 3 D_TOD_DT
Con la funzione FC 3 è possibile combinare i formati di dati DATE e TIME_OF_DAY (TOD) e
convertirli nel formato di dati DATE_AND_TIME (DT). Il valore di ingresso IN1 deve essere compreso
entro i limiti DATE#1990-01-01 e DATE#2089-12-31 (non si hanno verifiche). La funzione non
segnala errori.
Per il valore di ritorno è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 6 DT_DATE
Con la funzione FC 6 è possibile dissociare il formato di dati DATE dal formato DATE_AND_TIME.
DATE è compreso entro i limiti DATE#1990-1-1 e DATE#2089-12-31. La funzione non segnala
errori.
Per il valore di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 7 DT_DAY
Con la funzione FC 7 è possibile dissociare il giorno della settimana dal formato DATE_AND_TIME.
Il giorno della settimana è presente nel formato di dati INTEGER:
1. Domenica
2. Lunedì
3. Martedì
4. Mercoledì
5. Giovedì
6. Venerdì
7. Sabato
La funzione non segnala errori.
Per il valore di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 8 DT_TOD
Con la funzione FC 8 è possibile dissociare il formato di dati TIME_OF_DAY dal formato
DATE_AND_TIME. La funzione non segnala errori.
Per il valore di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 33 S5TI_TIM
Con la funzione FC 33 è possibile convertire il formato di dati S5TIME nel formato TIME. Se il
risultato della conversione si trova fuori del campo numerico TIME il risultato viene limitato al valore
corrispondente e il risultato binario BIE viene azzerato.
Descrizione FC 34 SB_DT_DT
Con la funzione FC 34 è possibile sottrarre due istanti (formato DT) e fornire come risultato una
durata di tempo (formato TIME). Gli istanti devono trovarsi in un campo compreso tra
DT#1990-01-01-00:00:00.000 e DT#2089-12-31-23:59:59.999. Con la funzione non è possibile
eseguire una verifica dell’ingresso. Quando il primo istante (parametro DT1) è maggiore (più
recente) del secondo (parametro T2), il risultato è positivo; quando il primo istante è minore (meno
recente) del secondo, il risultato è negativo. Se il risultato della sottrazione si trova fuori del campo
numerico di TIME, il risultato viene limitato al valore corrispondente ed il risultato binario BIE viene
azzerato.
Per i parametri di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 35 SB_DT_TM
Con la funzione FC 35 è possibile sottrarre una durata di tempo (formato TIME) da un istante
(formato DT) e fornire come risultato un nuovo istante (formato DT). L’istante (parametro T) deve
trovarsi nel campo compreso tra DT#1990-01-01-00:00:00.000 e DT#2089-12-31-23:59:59.999.
Con la funzione non è possibile eseguire una verifica dell’ingresso. Se il risultato della sottrazione
non si trova nel campo specificato sopra, il risultato viene limitato al valore corrispondente ed il
risultato binario BIE viene azzerato.
Per il parametro di ingresso T ed il parametro di uscita è possibile assegnare solo una variabile
definita in modo simbolico .
Descrizione FC 40 TIM_S5TI
Con la funzione FC 40 è possibile convertire il formato di dati TIME nel formato S5TIME. Durante la
conversione si arrotonda per difetto. Se il parametro di ingresso è maggiore del formato S5TIME
rappresentabile (maggiore di TIME#02:46:30.000), viene emesso come risultato S5TIME#999.3 ed il
risultato binario BIE viene azzerato.
Descrizione FC 9 EQ_DT
Con la funzione FC 9 è possibile determinare se i contenuti di due variabili nel formato
DATE_AND_TIME sono uguali ed emettere come valore di ritorno il risultato del confronto. Il valore
di ritorno ha lo stato di segnale "1", quando l´istante nel parametro DT1 è uguale all´istante nel
parametro DT2. La funzione non segnala errori.
Per i parametri di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 12 GE_DT
Con la funzione FC 12 è possibile determinare quale dei contenuti di due variabili nel formato
DATE_AND_TIME è maggiore o se sono uguali ed emettere come valore di ritorno il risultato del
confronto. Il valore di ritorno ha lo stato di segnale "1", quando l´istante nel parametro DT1 è
maggiore (più recente) dell´istante nel parametro DT2 oppure i due istanti sono uguali. La funzione
non segnala errori.
Per i parametri di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 14 GT_DT
Con la funzione FC 14 è possibile determinare quale dei contenuti di due variabili nel formato
DATE_AND_TIME è maggiore ed emettere come valore di ritorno il risultato del confronto. Il valore di
ritorno ha uno stato di segnale "1", quando l´istante nel parametro DT1 è maggiore (più recente)
dell´istante nel parametro DT2. La funzione non segnala errori.
Per i parametri di ingresso è possibile assegnare solo una variabile definita in modo simbolico .
Descrizione FC 18 LE_DT
Con la funzione FC 18 è possibile determinare quale dei contenuti di due variabili nel formato
DATE_AND_TIME è minore o se sono uguali ed emettere come valore di ritorno il risultato del
confronto. Il valore di ritorno ha lo stato di segnale "1", quando l´istante nel parametro DT1 è minore
(meno recente) dell´istante nel parametro DT2 oppure entrambi gli istanti sono uguali. La funzione
non segnala errori.
Per i parametri di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 23 LT_DT
Con la funzione FC 23 è possibile determinare quale dei contenuti di due variabili nel formato
DATE_AND_TIME è minore ed emettere come valore di ritorno il risultato del confronto. Il valore di
ritorno ha lo stato di segnale "1", quando l´istante nel parametro DT1 è minore (meno recente)
dell´istante nel parametro DT2. La funzione non segnala errori.
Per i parametri di ingresso è possibile assegnare solo una variabile definita in modo simbolico .
Descrizione FC 28 NE_DT
Con la funzione FC 28 è possibile determinare se i contenuti di due variabili nel formato
DATE_AND_TIME sono diversi ed emettere come valore di ritorno il risultato del confronto. Il valore
di ritorno ha lo stato di segnale "1", quando l´istante nel parametro DT1 è diverso dall´istante nel
parametro DT2 . La funzione non segnala errori.
Per i parametri di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 2 CONCAT
Con la funzione FC 2 è possibile combinare due variabili STRING in una stringa di caratteri. Se la
stringa di caratteri risultante è più lunga delle variabili definite nel parametro di uscita, la stringa di
caratteri risultante viene limitata alla lunghezza massima impostata e il bit BIE viene azzerato.
Per i parametri è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 4 DELETE
Con la funzione FC 4 è possibile cancellare caratteri L in una stringa di caratteri a partire dal carattere
P (incluso). Se L e/o P sono uguali a zero o se P è maggiore della lunghezza attuale della stringa di
caratteri di ingresso, viene fornita la stringa di caratteri di ingresso. Se la somma di L e P è maggiore
della stringa di caratteri di ingresso, verrà cancellato fino alla fine della stringa di caratteri. Se L e/o P
sono negativi, viene emessa una stringa vuota e il bit BIE viene azzerato.
Per il parametro di ingresso IN e il parametro di uscita è possibile assegnare solo una variabile
definita in modo simbolico.
Descrizione FC 11 FIND
Con la funzione FC 11 è possibile fornire la posizione della seconda stringa di caratteri (IN2)
all´interno della prima stringa di caratteri (IN1). La ricerca comincia a sinistra; viene segnalata la
comparsa della prima stringa di caratteri. Se la seconda stringa di caratteri non è presente nella
prima stringa, verrà segnalato zero. La funzione non segnala errori.
Per i parametri di ingresso IN1 e IN2 è possibile assegnare solo una variabile definita in modo
simbolico.
Descrizione FC 17 INSERT
Con la funzione FC 17 è possibile inserire la stringa di caratteri del parametro IN2 nella stringa di
caratteri del parametro IN1 dopo il carattere P. Se P è uguale a zero, la seconda stringa di caratteri
viene inserita prima della prima stringa. Se P è maggiore della lunghezza attuale della prima stringa
di caratteri, la seconda stringa di caratteri viene aggiunta alla prima. Se P è negativo viene emessa
una stringa vuota ed il bit BIE viene azzerato. Il bit BIE viene azzerato anche quando la stringa di
caratteri risultante è più lunga della variabile indicata nel parametro di uscita; in questo caso la
stringa di caratteri risultante viene limitata alla lunghezza massima impostata.
Per i parametri di ingresso IN1 e IN2 e i parametri di uscita è possibile assegnare solo una variabile
definita in modo simbolico.
Descrizione FC 20 LEFT
Con la funzione FC 20 vengono forniti i primi caratteri L di una stringa di caratteri. Se L è maggiore
della lunghezza attuale delle variabili STRING, viene fornito il valore di ingresso. In presenza di L = 0
e di una stringa vuota, come valore di ingresso viene fornita una stringa vuota. Se L è negativo viene
emessa una stringa vuota e il bit BIE viene azzerato.
Per il parametro IN e il valore di ritorno è possibile assegnare solo una variabile definita in modo
simbolico.
Descrizione FC 21 LEN
Una variabile STRING contiene due lunghezze: la lunghezza massima (che viene indicata in
parentesi quadre durante la definizione delle variabili) e la lunghezza attuale (che è la quantità di
caratteri validi momentaneamente). La lunghezza attuale è minore o uguale alla lunghezza
massima. La quantità dei byte occupati da una stringa di caratteri è maggiore di 2 della lunghezza
massima.
Con la funzione FC 21 è possibile emettere come valore di ritorno la lunghezza attuale di una stringa
di caratteri (quantità dei caratteri validi). Una stringa vuota (`') ha lunghezza zero. La lunghezza
massima ammonta a 254. La funzione non segnala errori.
Per il parametro di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 26 MID
Con la funzione FC 26 è possibile fornire la parte centrale di una stringa di caratteri (caratteri L a
partire dal carattere P incluso). Se la somma di L e P supera la lunghezza attuale delle variabili
STRING, viene fornita una stringa di caratteri partendo dal carattere P fino alla fine del valore di
ingresso. In tutti gli altri casi (se P si trova fuori della lunghezza attuale, se P e/o L sono uguali a zero
o negativi) viene emessa una stringa vuota e il bit BIE viene azzerato.
Per il parametro IN e il valore di ritorno è possibile assegnare solo una variabile definita in modo
simbolico.
Descrizione FC 31 REPLACE
Con la funzione FC 31 è possibile sostituire il numero di caratteri L della prima stringa di caratteri
(IN1) con la seconda stringa di caratteri (IN2) completa partendo dal carattere P (incluso). Se L e P
sono rispettivamente uguale e diverso da zero, viene fornita la prima stringa di caratteri. Se L e N
sono uguali a zero, la seconda stringa di carattere viene collocata davanti alla prima. Se L è diverso
da zero e P è uguale a zero o a uno, la sostituzione si ha a partire dal primo carattere (incluso). Se P
si trova fuori della prima stringa di caratteri, la seconda stringa di caratteri viene aggiunta alla prima.
Se L e/o P sono negativi viene emessa una stringa vuota e il bit BIE viene azzerato. Il bit BIE viene
azzerato anche quando la stringa di caratteri risultante è più lunga della variabile indicata nel
parametro di uscita; in questo caso la stringa di caratteri risultante viene limitata alla lunghezza
massima impostata.
Per i parametri di ingresso IN1 e IN2 e il parametro di uscita è possibile assegnare solo una variabile
definita in modo simbolico.
Descrizione FC 32 RIGHT
Con la funzione FC 32 è possibile fornire gli ultimi caratteri L di una stringa di caratteri. Se L è
maggiore della lunghezza attuale delle variabili STRING, viene fornito il valore di ritorno. Nel caso di
L = 0 e di una stringa vuota, come valore di ingresso viene fornita una stringa vuota. Se L è negativo
viene emessa una stringa vuota e il risultato binario BIE viene azzerato.
Per il parametro IN e il valore di ritorno è possibile assegnare solo una variabile definita in modo
simbolico.
Descrizione FC 10 EQ_STRNG
Con la funzione FC 10 è possibile determinare se sono uguali i contenuti di due variabili nel formato
STRING ed emettere come valore di ritorno il risultato di confronto. Il valore di ritorno ha lo stato di
segnale "1", quando la stringa di caratteri nel parametro S1 è uguale alla stringa di caratteri nel
parametro S2 . La funzione non segnala errori.
Per i parametri di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 13 GE_STRNG
Con la funzione FC 13 è possibile determinare quale dei contenuti di due variabili nel formato
STRING è maggiore o se sono uguali ed emettere come valore di ritorno il risultato del confronto. Il
valore di ritorno ha lo stato di segnale "1", quando la stringa di caratteri nel parametro S1 è maggiore
o uguale alla stringa di caratteri nel parametro S2. I caratteri vengono confrontati, partendo da
sinistra, sulla base del loro codice ASCII (ad es. è `a' maggiore di`A'). Il primo carattere diverso è
decisivo per il risultato del confronto. In caso di uguaglianza dei primi caratteri, viene considerata
maggiore la stringa di caratteri più lunga. La funzione non segnala errori.
Per i parametri di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 15 GT_STRNG
Con la funzione FC 15 è possibile determinare quale dei contenuti di due variabili nel formato
STRING è maggiore ed emettere come valore di ritorno il risultato del confronto. Il valore di ritorno ha
lo stato di segnale "1", quando la stringa di caratteri nel parametro S1 è maggiore della stringa di
caratteri nel parametro S2. I caratteri vengono confrontati, partendo da sinistra, sulla base del loro
codice ASCII (ad es. è `a' maggiore di `A'). Il primo carattere diverso è decisivo per il risultato del
confronto. In caso di uguaglianza dei primi caratteri, viene considerata maggiore la stringa di caratteri
più lunga. La funzione non segnala errori.
Per i parametri di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 19 LE_STRNG
Con la funzione FC 19 è possibile determinare quale dei contenuti di due variabili nel formato
STRING è minore o se sono uguali ed emettere come valore di ritorno il risultato del confronto. Il
valore di ritorno ha lo stato di segnale "1", quando la stringa di caratteri nel parametro S1 è minore o
uguale alla stringa di caratteri nel parametro S2. I caratteri vengono confrontati, partendo da sinistra,
sulla base del loro codice ASCII (ad es. è `A' minore di `a'). Il primo carattere diverso è decisivo per
il risultato del confronto. In caso di uguaglianza dei primi caratteri, viene considerata minore la stringa
di caratteri più corta. La funzione non segnala errori.
Per i parametri di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 24 LT_STRNG
Con la funzione FC 24 è possibile determinare quale dei contenuti di due variabili nel formato
STRING è minore ed emettere come valore di ritorno il risultato del confronto. Il valore di ritorno ha lo
stato di segnale "1", quando la stringa di caratteri nel parametro S1 è minore della stringa di caratteri
nel parametro S2. I caratteri vengono confrontati, partendo da sinistra, sulla base del loro codice
ASCII (ad es. è `A' minore di `a'). Il primo carattere diverso è decisivo per il risultato del confronto. Se
la parte sinistra della stringa più lunga è identica alla stringa più corta, viene considerata minore la
stringa di caratteri più corta. La funzione non segnala errori.
Per i parametri di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 29 NE_STRNG
Con la funzione FC 29 è possibile determinare se i contenuti di due variabili nel formato STRING
sono diversi ed emettere come valore di ritorno il risultato del confronto. Il valore di ritorno ha lo stato
di segnale "1", quando la stringa di caratteri nel parametro S1 è diversa dalla stringa di caratteri nel
parametro S2. La funzione non segnala errori.
Per i parametri di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 5 DI_STRNG
Con la funzione FC 5 è possibile convertire in una stringa di caratteri una variabile con formato DINT.
La stringa di caratteri viene rappresentata con un segno iniziale. Se la variabile indicata nel
parametro di ritorno è troppo corta, non avviene alcuna conversione ed il bit BIE viene azzerato.
Per il parametro di uscita è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 16 I_STRNG
Con la funzione FC 16 è possibile convertire in una stringa di caratteri una variabile con formato INT.
La stringa di caratteri viene rappresentata con un segno iniziale. Se la variabile indicata nel
parametro di ritorno è troppo corta, non avviene alcuna conversione ed il bit BIE viene azzerato.
Per il parametro di uscita è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 30 R_STRNG
Con la funzione FC 30 è possibile convertire in una stringa di caratteri una variabile nel formato
REAL. La stringa di caratteri viene rappresentata con 14 posizioni:
±v.nnnnnnnE±xx ± segno
v 1 posizione prima della virgola
n 7 posizioni dopo la virgola
x 2 posizioni esponenti
Se la variabile indicata nel parametro di ritorno è troppo corta oppure se nel parametro IN non vi è
alcun numero in punto mobile valido, non avviene alcuna conversione e il bit BIE viene azzerato.
Per il parametro di uscita è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 37 STRNG_DI
Con la funzione FC 37 è possibile convertire una stringa di caratteri in una variabile con formato
DINT. Il primo carattere nella stringa di caratteri può essere un segno o una cifra, i caratteri
successivi devono essere costituiti da cifre. Se la lunghezza della stringa di caratteri è zero o
maggiore di 11 oppure si trovano caratteri inammissibili nella stringa di caratteri, non avviene alcuna
conversione ed il bit BIE viene azzerato. Se il risultato della conversione si trova fuori del campo
numerico DINT, il risultato viene limitato al valore corrispondente ed il risultato binario BIE viene
azzerato.
Per il parametro di ingresso è possibile assegnare solo una variabile definita in modo simbolico .
Descrizione FC 38 STRNG_I
Con la funzione FC 38 è possibile convertire una stringa di caratteri in una variabile con formato INT.
Il primo carattere nella stringa di caratteri può essere un segno o una cifra, i caratteri successivi
devono essere costituiti da cifre. Se la lunghezza della stringa di caratteri è zero o maggiore di 6
oppure si trovano caratteri inammissibili nella stringa di caratteri, non avviene alcuna conversione e il
bit BIE viene azzerato. Se il risultato della conversione si trova fuori del campo numerico INT, il
risultato viene limitato al valore corrispondente e il risultato binario BIE viene azzerato.
Per il parametro di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 39 STRNG_R
Con la funzione FC 39 è possibile convertire una stringa di caratteri in una variabile con formato
REAL. La stringa di caratteri deve essere presente nel seguente formato:
±v.nnnnnnnE±xx ± Segno
v 1 Posizione prima della virgola
n 7 Posizioni dopo la virgola
x 2 Posizioni esponenti
Se la lunghezza della stringa di caratteri è minore di 14, oppure se non è strutturata come descritto
sopra, allora non avviene alcuna conversione ed il bit BIE viene azzerato. Se il risultato della
conversione è fuori del campo numerico REAL, il risultato viene limitato al valore corrispondente ed il
risultato binario BIE viene azzerato.
Per il parametro di ingresso è possibile assegnare solo una variabile definita in modo simbolico.
Descrizione FC 22 LIMIT
Con la funzione FC 22 è possibile limitare il valore numerico di una variabile a valori limite
parametrizzabili. Come valori di ingresso sono consentite variabili del tipo di dati INT, DINT e REAL .
Tutte le variabili parametrizzate devono presentare lo stesso tipo di dati. Il tipo di variabile viene
riconosciuto dal puntatore ANY. Il valore limite inferiore (parametro MN) deve essere minore del o
uguale al valore limite superiore (parametro MX).
Il valore di uscita rimane immutato ed il bit BIE viene azzerato, quando:
• una variabile parametrizzata ha un tipo di dati inammissibile,
• tutte le variabili parametrizzate non hanno tra loro lo stesso tipo di dati,
• il valore limite inferiore non è maggiore del valore limite superiore,
• una variabile REAL non rappresenta alcun numero in punto mobile valido.
Descrizione FC 25 MAX
Con la funzione FC 25 è possibile selezionare il maggiore di tre valori numerici di variabile. Come
valori di ingresso sono consentite variabili del tipo INT, DINT e REAL. Tutte le variabili
parametrizzate devono presentare lo stesso tipo di dati. Il tipo di variabile viene riconosciuto dal
puntatore ANY.
Il valore di uscita rimane immutato ed il bit BIE viene azzerato, quando:
• una variabile parametrizzata ha un tipo di dato inammissibile,
• tutte le variabili parametrizzate non hanno tra loro lo stesso tipo di dato,
• una variabile REAL non rappresenta alcun numero in punto mobile valido.
Esempio in AWL
CALL FC 25
IN1 := P#M 10.0 DINT 1
IN2 := MD20
IN3 := P#DB1.DBX 0.0 DINT 1
RET_VAL := P#M 40.0 DINT 1
= M 0.0
Avvertenza
I tipi di dati ammessi INT, DINT e REAL devono essere riportati nel puntatore ANY. Sono anche
ammessi parametri come ”MD20”; a tal fine ”MD20” deve tuttavia essere definito in ”Simbolo” con il
tipo di dati corrispondente.
Descrizione FC 27 MIN
Con la funzione FC 27 è possibile selezionare il minore di tre valori numerici di variabile. Come valori
di ingresso sono consentite variabili del tipo INT, DINT e REAL. Tutte le variabili parametrizzabili
devono presentare lo stesso tipo di dati. Il tipo di variabile viene riconosciuto dal puntatore ANY.
Il valore di uscita rimane immutato ed il bit BIE viene azzerato, quando:
• una variabile parametrizzata ha un tipo di dati inammissibile,
• tutte le variabili parametrizzate non hanno tra loro lo stesso tipo di dati,
• una variabile REAL non rappresenta alcun numero in punto mobile valido.
Esempio in AWL
CALL FC 27
IN1 := P#M 10.0 DINT 1
IN2 := MD20
IN3 := P#DB1.DBX 0.0 DINT 1
RET_VAL = P#M 40.0 DINT 1
= M 0.0
Avvertenza
I tipi di dati ammessi INT, DINT e REAL devono essere riportati nel puntatore ANY. Sono anche
ammessi parametri come ”MD20”; a tal fine ”MD20” deve tuttavia essere definito in ”Simbolo” con il
tipo di dati corrispondente.
Descrizione FC 36 SEL
Con la funzione FC 36 è possibile selezionare uno di due valori di variabile tramite un interruttore
(parametro G). Come valori di ingresso sui parametri IN0 e IN1 sono consentite variabili con tutti i tipi
di dati, corrispondenti alla larghezza di dati bit, byte, parola e doppia parola (non il tipo di dati DT e
STRING). Le due variabili di ingresso e la variabile di uscita devono presentare lo stesso tipo di dati.
Il valore di uscita rimane immutato e il bit BIE viene azzerato quando:
• una variabile parametrizzata ha un tipo di dati inammissibile,
• tutte le variabili parametrizzate tra loro non hanno lo stesso tipo di dati ,
• una variabile REAL non rappresenta un numero in punto mobile valido.
Introduzione
L'SFB/FB 41 "CONT_C" (continuous controller) consente di regolare processi tecnici con grandezze
di ingresso ed uscita continue per il sistema di automazione SIMATIC S7. Tramite la
parametrizzazione è possibile inserire o disinserire funzioni parziali del regolatore PID e adattarlo
così ai requisiti del sistema regolato. Quest’operazione può essere eseguita agevolmente con
l’ausilio del tool di parametrizzazione (richiamabile ad es. in Windows XP: da Start > Simatic > STEP
7 > Parametrizza PID Control). Il manuale elettronico di Windows XP, ad es. è accessibile da Start >
Simatic > Manuali S7 > PID Control tedesco.
Uso
Il regolatore può essere utilizzato come regolatore PID con setpoint fisso in regolazioni singole o a
più corse ripetute come regolatore in cascata, di miscela o di rapporto. Il modo di funzionamento si
basa sull'algoritmo di regolazione PID del regolatore digitale con segnale di uscita analogico,
eventualmente completato da un generatore di impulsi per la generazione di segnali di uscita
modulati alla durata dell'impulso per controlli a 2 o 3 punti con organi attuatori proporzionali.
Avvertenza
Il calcolo dei valori nei blocchi di regolazione è corretto solamente se il blocco viene richiamato a
intervalli regolari. Per questo motivo i blocchi di regolazione andrebbero richiamati in un OB di
allarme dall'orologio (OB 30 … OB 38). Il tempo di campionamento va indicato nel parametro
CYCLE.
Descrizione
Oltre alle funzioni nel ramo del valore di riferimento e nel ramo del valore attuale, l'SFB realizza un
regolatore PID completo con uscita continua per grandezze controllanti e possibilità di
influenzamento manuale del valore controllante.
Segue la descrizione delle funzioni parziali:
Ramo del valore di riferimento
Il valore di riferimento viene introdotto sull'ingresso SP_INT in formato di virgola mobile.
Ramo del valore attuale
Il valore attuale può essere letto nel formato della periferia o in virgola mobile. La funzione CRP_IN
converte il valore di periferia PV_PER in un formato di virgola mobile da -100 ... +100 % secondo la
regola seguente:
100
Uscita di CPR_IN = PV_PER ∗
27648
27648
LMN_PER = LMN ∗
100
Inizializzazione
L'SFB "CONT_C" dispone di una routine di inizializzazione che verrà eseguita quando il parametro di
ingresso COM_RST = TRUE è impostato.
Con l'inizializzazione, l'integratore viene impostato internamente sul valore di inizializzazione
I_ITVAL. Con un richiamo a livello di schedulazione orologio, esso continua ad operare a partire da
questo valore.
Tutte le altre uscite vengono impostate sui valori preassegnati corrispondenti.
Informazioni di errore
La parola di segnalazione di errore RET_VAL non viene utilizzata.
Schema a blocchi
SP_INT
PVPER_ON
GAIN
PV_IN DEADBAND
0
+ X
CRP_IN PV_NORM
-
1
PV_PER DEADB_W
%
ER
PV_FAC, PV
PV_OFF
1 P_SEL
LMN_P
0.0
INT 0
I_SEL DISV
1
_
0.0 _
0
+ +
TI, INT_HOLD,
I_ITL_ON,
I_ITLVAL LMN_I
DIF 1
0.0
0
TD, TM_LAG LMN_D
D_SEL
QLMN_HLM
QLMN_LLM
MAN_ON LMN
MAN 1 LMNLIMIT LMN_NORM
CRP_OUT
% LMN_PER
0
LMN_HLM, LMN_FAC,
LMN_LLM LMN_OFF
Parametri di ingresso
La tabella seguente contiene i parametri di ingresso dell'SFB 41 "CONT_C".
Parametri di uscita
La tabella seguente contiene i parametri di uscita dell'SFB 41 "CONT_C".
Introduzione
L'SFB/FB 42 "CONT_S" (step controller) serve per il controllo di processi tecnici con segnali di uscita
per valori controllanti binari per organi attuatori integranti del sistema di automazione SIMATIC S7.
Tramite la parametrizzazione è possibile inserire o disinserire funzioni parziali del regolatore a passi
PI e adattarlo così ai requisiti del sistema regolato.
Uso
Il regolatore può essere utilizzato singolarmente come regolatore PI con setpoint fisso o in loop di
sottoregolazione come regolatore in cascata, di miscela o di rapporto, ma non come regolatore
pilota. Il modo di funzionamento si basa sull'algoritmo di regolazione PI del regolatore digitale a
campionamento e viene completato dagli organi di funzione per la generazione del segnale di uscita
binario dal segnale di regolazione analogico.
Dalla V1.5 dell'FB e dalla V1.1.0 della CPU 314 IFM vale quanto segue:
Con TI = T#0ms è possibile disattivare il componente I del regolatore. In questo modo il blocco può
essere utilizzato come regolatore P.
Poiché il regolatore lavora senza segnalazione di risposta di posizione, la grandezza di regolazione
impostata internamente non coincide esattamente con la posizione del regolatore. Viene effettuato
un confronto quando la grandezza (ER * GAIN) diventa negativa. Quindi il regolatore imposta
l'uscita QLMNDN (segnale del valore di regolazione basso) finché viene impostato LMNR_LS
(segnale di arresto inferiore della segnalazione di risposta di posizione).
Il regolatore può anche essere impiegato in una struttura a cascata come regolatore sottoordinato.
Attraverso l'ingresso del valore di riferimento SP_INT viene predefinita la posizione del regolatore. In
questo caso l'ingresso del valore attuale e il parametro TI (tempo di integrazione) vengono azzerati.
Un esempio di applicazione pratica è p. es. la regolazione della temperatura con regolazione della
potenza calorifica tramite comando impulso-pausa e regolazione della potenza di raffreddamento
tramite una valvola a farfalla. Per chiudere completamente la valvola, la grandezza di regolazione
(ER * GAIN) dovrebbe diventare negativa.
Avvertenza
Il calcolo dei valori nei blocchi di regolazione è corretto solamente se il blocco viene richiamato a
intervalli regolari. Per questo motivo i blocchi di regolazione andrebbero richiamati in un OB di
allarme dall'orologio (OB 30 … OB 38). Il tempo di campionamento va indicato nel parametro
CYCLE.
Descrizione
Oltre alle funzioni nel ramo del valore attuale, l'SFB realizza un regolatore PI completo con uscita
binaria per valori controllanti e possibilità di influenzamento manuale del valore controllante. Il
regolatore a passi opera senza segnalazione di risposta di posizione.
Sono disponibili le seguenti funzioni parziali:
Ramo del valore di riferimento
Il valore di riferimento viene introdotto sull'ingresso SP_INT nel formato in virgola mobile.
Ramo del valore attuale
Il valore attuale può essere letto nel formato della periferia o in virgola mobile. La funzione CRP_IN
converte il valore di periferia PV_PER in un formato di virgola mobile da -100 ... +100 % secondo la
regola seguente:
100
Uscita di CPR_IN = PV_PER ∗
27648
Inizializzazione
L'SFB "CONT_S" dispone di una routine di inizializzazione che verrà eseguita quando il parametro di
ingresso COM_RST = TRUE è impostato.
Tutte le uscite vengono impostate ai valori preassegnati corrispondenti.
Informazioni di errore
La parola di segnalazione di errore RET_VAL non viene utilizzata.
Schema a blocchi
SP_INT
PVPER_ON
GAIN
PV_IN DEADBAND
0 + X
CRP_IN PV_NORM
-
1
PV_PER DEADB_W
%
ER
PV_FAC PV
PV_OFF
INT LMNLIMIT
LMNR_HS
LMNR_SIM
LMNR_LS
LMNRS_ON, 100.0 ,
LMNUP LMNRSVAL 0.0
LMNDN
LMNS_ON
1 PULSEOUT QLMNUP
DISV THREE_ST AND
0 AND
adapt
+ 1 QLMNDN
AND AND
-
1
MTR_TM 0 PULSE_TM, 100.0
BREAK_TM 0
0.0
1 +
-100.0
0
0.0
OR 1/MTR_TM X
LMNS_ON
1 INT +
0.0
1/TI 0
1 -
0.0
X 0
Parametri di ingresso
La tabella seguente contiene i parametri di ingresso dell'SFB 42 "CONT_S".
Parametri di uscita
La tabella seguente contiene i parametri di uscita dell'SFB 42 "CONT_S".
Introduzione
L'SFB/FB 43 "PULSEGEN" (pulse generator) serve per la creazione di un regolatore PID con uscita
a impulsi per organi attuatori proporzionali.
Il manuale elettronico è disponibile in Avvio > Simatic > Documentazione > Italiano > STEP7-PID
Control
Uso
Con l'SFB "PULSEGEN" è possibile creare regolatori PID a 2 o 3 punti con modulazione della durata
di impulso. La funzione viene usata di solito in collegamento con il regolatore continuo "CONT_C".
CONT_C PULSEGEN
LMN INV
Avvertenza
Il calcolo dei valori nei blocchi di regolazione è corretto solamente se il blocco viene richiamato a
intervalli regolari. Per questo motivo i blocchi di regolazione andrebbero richiamati in un OB di
allarme dall'orologio (OB 30 … OB 38). Il tempo di campionamento va indicato nel parametro
CYCLE.
Descrizione
La funzione PULSEGEN trasforma la grandezza di ingresso INV (= LMN del regolatore PID) tramite
modulazione della durata degli impulsi in una sequenza di impulsi con periodo costante che
corrisponde al tempo di ciclo con cui viene aggiornata la grandezza di ingresso e che deve essere
parametrizzata in PER_TM.
La durata di un impulso per periodo è proporzionale alla grandezza di ingresso. Il ciclo
parametrizzato tramite PER_TM non è uguale al ciclo di elaborazione dell'SFB "PULSEGEN". Infatti,
un ciclo PER_TM è formato da più cicli di elaborazione dell'SFB "PULSEGEN" e il numero dei
richiami dell'SFB "PULSEGEN" per ciclo PER_TM rappresenta il grado di precisione della
modulazione della durata dell'impulso.
INV 100
(LMN) 80
50
50
30
0 t
QPOS_P
1
0 t
Ciclo PULSEGEN
PER_TM (=Ciclo CONT_C)
Una grandezza di ingresso 30% e 10 richiami SFB "PULSEGEN" per ogni PER_TM significano
perciò:
• "uno" sull'uscita QPOS per i primi tre richiami dell'SFB "PULSEGEN (30% di 10 richiami)
• "zero" sull'uscita QPOS per sette altri richiami dell'SFB "PULSEGEN" (70% di 10 richiami)
Schema a blocchi
POS_P_ON
NEG_P_ON
SYN_ON
STEP3_ON
MAN_ON
ST2BI_ON
1
# _
_
_ QPOS_P
INV _ QNEG_P
_
_
0
PER_TM,
P_B_TM,
RATIOFAC
Avvertenza
La scansione della frequenza di richiamo deve essere programmata dall'utente.
Sincronizzazione automatica
Sussiste la possibilità di sincronizzare automaticamente l'emissione degli impulsi con il blocco che
aggiorna la grandezza di ingresso INV (ad esempio CONT_C). In questo modo si garantisce il fatto
che una grandezza di ingresso che cambia venga emessa al più presto possibile come impulso.
Il generatore di impulsi valuta sempre nell'intervallo di tempo del periodo PER_TM la grandezza di
ingresso INV e converte il valore in un segnale di impulso della lunghezza corrispondente.
Dato però che INV di solito viene calcolato in un livello di schedulazione orologio più lento, il
generatore di impulsi dovrebbe cominciare al più presto dopo l'aggiornamento di INV con la
conversione del valore digitale in un segnale di impulso.
Il blocco può sincronizzare l'inizio del periodo secondo il seguente procedimento:
se INV è modificato e il richiamo di blocco non si trova né nel primo né negli ultimi due cicli di richiamo
di un periodo, la sincronizzazione viene eseguita. La durata dell'impulso viene calcolata di nuovo e si
comincia con l'emissione al prossimo ciclo con un nuovo periodo.
Ciclo di CONT_C
Start periodo
1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 1 1
....
t
PER_TM PER_TM
CICLO di
PULSEGEN Sincronizzazione dello Nessuna sincronizzazione
start periodo necessaria
Avvertenza
Con l'inizio del nuovo periodo, il vecchio valore di INV (cioè di LMN) viene riportato a
sincronizzazione terminata più o meno esattamente al segnale di impulso.
Tipi di funzionamento
A seconda della parametrizzazione del generatore di impulsi, i regolatori PID possono essere
configurati a tre punti o con un'uscita a due punti bipolare o unipolare. La tabella seguente illustra
l'impostazione delle combinazioni degli interruttori per i vari tipi di funzionamento possibili.
Dalla grandezza di ingresso viene calcolata la durata dell'impulso mediante una curva caratteristica.
La forma di questa curva caratteristica viene definita dalla durata minima dell'impulso ovvero dalla
durata della pausa e dal fattore di rapporto.
Il valore normale per il fattore di rapporto è 1.
Le flessioni sulle curve caratteristiche sono causate dalla durata minima dell'impulso o della pausa.
Durata minima dell'impulso o della pausa
Se la durata minima dell'impulso o della pausa P_B_TM è parametrizzata in modo corretto, è
possibile evitare tempi di attivazione e disattivazione brevi, i quali compromettono la durata di attività
di organi comando e dispositivi di regolazione.
Avvertenza
I valori assoluti di piccola entità della grandezza di ingresso LMN, i quali potrebbero generare una
durata dell'impulso minore di P_B_TM vengono soppressi. I valori di ingresso di grande entità
invece, che potrebbero generare una durata dell'impulso maggiore di PER_TM - P_B_TM), vengono
impostati a 100% o -100%.
La durata degli impulsi positivi o negativi si calcola dalla grandezza di ingresso (in %) moltiplicata
per il periodo:
La figura sottostante illustra una linea caratteristica simmetrica del regolatore a tre punti
(fattore proporzionale = 1).
P_B_TM
-100 %
100 %
Off permanente
INV
Dur. dell'impulso pos. = ∗ PER_TM
100
INV
Dur. dell'impulso neg. = ∗ PER_TM ∗ RATIOFAC
100
La figura sottostante illustra una linea caratteristica asimmetrica del regolatore a tre punti
(fattore proporzionale = 0.5).
Durata dell'im-
pulso positivo
PER_TM
PER_TM – P_B_TM
-200% P_B_TM
P_B_TM 100%
PER_TM – P_B_TM
PER_TM
Durata dell'impulso negativo
INV
Dur. dell'impulso neg. = ∗ PER_TM
100
INV PER_TM
Dur. dell'impulso pos. = ∗
100 RATIOFAC
Regolazione a due punti con area del valore controllante bipolare (-100%...100%)
Off permanente
P_B_TM
Regolazione a due punti con area del valore controllante unipolare (0%...100%)
PER_TM
PER_TM - P_B_TM
P_B_TM
0.0 % 100.0 %
QNEG_P ha a disposizione il segnale di uscita negato, se il collegamento del regolatore a due punti
nel loop di regolazione richiede un segnale binario logico inverso per gli impulsi di regolazione.
Inizializzazione
L'SFB "PULSEGEN" dispone di una routine di inizializzazione che verrà eseguita quando il
parametro di ingresso COM_RST = TRUE è impostato.
Tutte le uscite di segnale vengono impostate a zero.
Informazioni di errore
La parola di segnalazione di errore RET_VAL non viene utilizzata.
Parametri di ingresso
Avvertenza
Nel blocco, i valori dei parametri di ingresso non vengono limitati. Non ha luogo una verifica dei
parametri.
Parametri di uscita
Loop di regolazione
Con il regolatore continuo CONT_C ed il generatore di impulsi PULSEGEN può essere realizzato un
regolatore con setpoint fisso con uscita a commutazione per organi attuatori proporzionali. La figura
seguente descrive lo svolgimento principale del segnale del loop di regolazione.
CONT_C PULSEGEN
LMN INV QPOS_P
QNEG_P
PV_PER
Percorso con
uscita a commu-
tazione
Il regolatore continuo CONT_C costituisce il valore controllante LMN che viene convertito dal
generatore di impulsi PULSEGEN in segnali di impulso e di pausa QPSO_P oppure QNEG_P.
PULS_CTR, DPULS_CTR
TRUE (OB 100) FB 50, DB 50
FALSE (OB35) COM_RST
T#10 CYCLE
200 RED_FAC
PULS_CTR, DPULS_CTR
FB 50, DB 50
COM_RST
CYCLE
RED_FAC
CONT_C PULSEGEN
COM_RST
COM_RST QPOS_P
SP_INT CYCLE CYCLE
QPOS_P
SP_INT PER_TM
PV_PER PV_PER
LMN
INV
Al richiamo di CONT_C
ridotto di RED_FAC
AWL Spiegazione
U #COM_RST //Routine di inizializzazione
SPBN M001
L 0
T #sCount
M001: L #CYCLE //Calcolo del tempo di campionamento
L #RED_FAC //della regolazione
*D
T #tCycCtr
L #sCount //Diminuzione del contatore e confronto con zero
L 1
-I
T #sCount
L 0
<=I
AWL Spiegazione
SPBN M002 /Richiamo di blocco condizionato e impostazione
CALL //del contatore
#DI_CONT_C
COM_RST
:=#COM_RST
CYCLE
:=#tCycCtr
SP_INT
:=#SP_INT
PV_PER
:=#PV_PER
L #RED_FAC
T #sCount
M002: L #DI_CONT_C.LMN
T
#DI_PULSEGEN.INV
CALL
#DI_PULSEGEN
PER_TM
:=#tCycCtr
COM_RST
:=#COM_RST
CYCLE
:=#CYCLE
QPOS_P
:=#QPOS_P
BE
Descrizione
Per il comando delle funzioni di posizionamento del programma utente, utilizzare l'SFB ANALOG
(SFB 44).
Un'uscita analogica assegnata in modo fisso comanda la parte di potenza con una tensione
(segnale di tensione) di +10 V o con una corrente (segnale di corrente) di +20 mA.
• Una volta conclusa la fase di accelerazione (RAM_UP), il traguardo viene avvicinato dapprima
con la velocità (VRif).
• Nel punto di inizio frenatura calcolato dalla CPU, il ritardo (RAMP_DN) viene introdotto fino al
punto di commutazione.
• Appena raggiunto il punto di commutazione, il movimento prosegue con l'avanzamento lento
(VLenta).
• Nel punto di disinserzione l'azionamento viene disattivato.
• Punto di commutazione e punto di disinserzione vengono definiti, per ogni traguardo da
avvicinare, attraverso i valori differenza di commutazione e differenza di disinserzione
predefiniti dall'utente nei parametri. La differenza di commutazione e quella di disinserzione
possono essere definite diversamente per la corsa in avanti (direzione +) e all'indietro
(direzione -).
• La corsa si conclude (WORKING = FALSE) una volta raggiunto il punto di disinserzione. A
partire da questo momento può iniziare una nuova corsa.
• Il traguardo predefinito è raggiunto (POS_RCD = TRUE) quando la quota reale della posizione
ha raggiunto la zona del traguardo. Se la quota reale della posizione lascia nuovamente la zona
del traguardo senza avvio di una nuova corsa, il segnale "Posizione raggiunta" non viene
nuovamente resettato.
Se la differenza di commutazione è minore della differenza di disinserzione, a partire dal punto di
inizio frenatura, il ritardo sarà lineare fino al valore di riferimento 0 della velocità.
Parametri di base:
Qui di seguito vengono descritti i parametri dell'SFB identici per tutti i modi di funzionamento. I
parametri specifici per modo di funzionamento sono descritti nei singoli modi di funzionamento.
Parametri:
Codice di Spiegazione
errore classe
evento
W#16#2002 SFB scorretto, utilizzare l'SFB 44
W#16#2004 Numero di canale scorretto (CHANNEL). Impostare "0" come numero di canale
W#16#3001 Il job di corsa non è stato accettato poiché il job nello stesso richiamo SFB è errato.
Correggere i parametri del job corrispondente
W#16#3002 Non è consentito modificare MODE_IN mentre l'azionamento è ancora in funzione. Attendere
la fine del posizionamento in corso.
W#16#3003 Modo di funzionamento sconosciuto (MODE_IN). Sono consentiti 1 (a impulsi), 3 (ricerca del
punto di zero), 4 (spostamento incrementale relativo) e 5 (spostamento incrementale
assoluto).
W#16#3004 È consentito impostare sempre solo una richiesta di avvio per volta. Le richieste di avvio
consentite sono DIR_P o DIR_M o START.
W#16#3005 Il job START è consentito solo con il modo di funzionamento "Spostamento incrementale
assoluto". Avviare la corsa con DIR_P o DIR_M
W#16#3006 DIR_P o DIR_M con asse lineare e modo di funzionamento "Spostamento incrementale
assoluto" non consentiti. Avviare la corsa con START
W#16#3007 Asse non sincronizzato. "Spostamento incrementale assoluto" possibile solo con asse
sincronizzato.
W#16#3008 Uscire dal campo di lavoro. La corsa è consentita all'indietro solo a impulsi in direzione del
campo di lavoro.
W#16#3101 Avvio non abilitato poiché l'asse non è stato parametrizzato. Parametrizzare il sotto-modulo
"Posizionamento" nella "Configurazione HW"
W#16#3102 Avvio non abilitato poiché manca l'abilitazione dell'azionamento. Impostare l'"Abilitazione
azionamento" nell'SFB (DRV_EN=TRUE)
W#16#3103 Avvio non abilitato poiché è impostato lo STOP. Cancellare lo STOP
nell'SFB (STOP=FALSE)
W#16#3104 Avvio non abilitato poiché l'asse è momentaneamente in posizione (WORKING=TRUE).
Attendere la fine del posizionamento in corso.
W#16#3105 Avvio non abilitato poiché è ancora presente almeno un errore esterno non confermato.
Eliminare e confermare prima tutti gli errori esterni e quindi riavviare la corsa.
W#16#3202 La preassegnazione della velocità SPEED è scorretta. La preassegnazione della velocità non
è compresa nel campo consentito dell'avanzamento lento fino a 1000000 impulsi/s. Ma al
massimo fino alla velocità massima parametrizzata.
W#16#3203 La preassegnazione dell'accelerazione ACCEL non è compresa nel campo consentito da 1 a
2
100000 impulsi/s .
W#16#3204 La preassegnazione del ritardo DECEL non è compresa nel campo consentito da 1 a 100000
2
impulsi/s .
W#16#3206 La preassegnazione della velocità SPEED deve essere maggiore/uguale alla frequenza di
riferimento parametrizzata.
Codice di Spiegazione
errore classe
evento
W#16#3301 Differenza di commutazione/disinserzione eccessiva. Predefinire la differenza di
8
commutazione/disinserzione max con 10
W#16#3304 Differenza di disinserzione insufficiente. La differenza di disinserzione deve essere almeno
uguale a metà della zona del traguardo.
W#16#3305 Differenza di commutazione insufficiente. La differenza di commutazione deve essere almeno
uguale a metà zona del traguardo.
W#16#3401 Preassegnazione del traguardo non compresa nel campo di lavoro. Con un asse lineare e uno
spostamento incrementale assoluto, la preassegnazione del traguardo deve essere
compresa nel finecorsa software (incluso).
W#16#3402 Preassegnazione del traguardo scorretta. Con un asse rotante, la preassegnazione del
traguardo deve essere maggiore di 0 e minore della fine dell'asse rotante.
W#16#3403 Indicazione scorretta del percorso. Con lo spostamento incrementale relativo, il tragitto da
percorrere deve essere positivo.
W#16#3404 Indicazione scorretta del percorso. Le coordinate assolute risultanti del traguardo devono
8
essere maggiori di -5x10 .
W#16#3405 Indicazione scorretta del percorso. Le coordinate assolute risultanti del traguardo devono
8
essere minori di 5x10 .
W#16#3406 Indicazione scorretta del percorso. Le coordinate assolute risultanti del traguardo devono
essere comprese nel campo di lavoro (+/- metà zona del traguardo)
W#16#3501 Campo corsa eccessivo. Coordinate traguardo + attuale percorso restante devono essere
8
maggiori/uguali a -5x10
W#16#3502 Campo corsa eccessivo. Coordinate traguardo + attuale percorso restante devono essere
8
minori/uguali a 5x10
W#16#3503 Campo corsa insufficiente. La corsa in direzione + deve essere maggiore della differenza di
disinserzione indicata per la direzione +
W#16#3504 Campo corsa insufficiente. La corsa in direzione - deve essere maggiore della differenza di
disinserzione indicata per la direzione -
W#16#3505 Campo corsa insufficiente o finecorsa già superato in direzione +. L'ultimo traguardo
raggiungibile in direzione + (campo di lavoro o limite del campo corsa) è troppo vicino alla
posizione attuale
W#16#3506 Campo corsa insufficiente o finecorsa già superato in direzione -. L'ultimo traguardo
raggiungibile in direzione - (campo di lavoro o limite del campo corsa) è troppo vicino alla
posizione attuale
Codice di Spiegazione
errore classe
evento
W#16#4001 Asse non parametrizzato. Parametrizzare il sotto-modulo "Posizionamento" nella
"Configurazione HW".
W#16#4002 JOB impossibile poiché vi è ancora un posizionamento in corso. Attendere finché WORKING
diventa = FALSE, quindi ripetere il job.
W#16#4004 JOB sconosciuto. Controllarne il numero e quindi ripetere il job.
W#16#4101 Con un asse lineare, le coordinate del punto di zero indicate non devono trovarsi fuori dei limiti
del campo di lavoro.
W#16#4102 Con un asse lineare, le coordinate del punto di zero indicate + attuale percorso restante
8
devono essere ancora maggiori/uguali a -5x10 .
W#16#4103 Con un asse lineare, le coordinate del punto di zero indicate + attuale percorso restante
8
devono essere ancora minori/uguali a 5x10 .
W#16#4104 Con un asse lineare, le coordinate del punto di zero indicate + attuale differenza rispetto al
8
punto di avvio della corsa devono essere ancora maggiori/uguali a -5x10 .
W#16#4105 Con un asse lineare, le coordinate del punto di zero indicate + attuale differenza rispetto al
8
punto di avvio della corsa devono essere ancora minori/uguali a 5x10 .
W#16#4106 Con un asse rotante, le coordinate del punto di zero non devono essere minore di 0 e
maggiori/uguali alla fine dell'asse rotante.
Errori di sistema
Un errore di sistema viene visualizzato con BIE = FALSE. Un errore di sistema viene causato da un
errore di scrittura/lettura del DB di istanza o dal richiamo multiplo dell'SFB.
Descrizione
Per il comando delle funzioni di posizionamento del programma utente, utilizzare l'SFB DIGITAL
(SFB46).
Quattro uscite digitali a 24 V assegnate in modo fisso all'azionamento comandano la parte di
potenza. Le uscite digitali comandano, a seconda del tipo di azionamento parametrizzato, la
direzione e i livelli di velocità (marcia veloce/lenta).
Il rilevamento del percorso avviene per mezzo di un trasduttore incrementale asincrono a 24 V con
due segnali sfasati di 90 gradi.
• Il traguardo viene avvicinato dapprima con la velocità (VVel)
• Nel punto di commutazione, la velocità viene commutata su un avanzamento lento (VLenta).
• Nel punto di disinserzione l'azionamento viene disattivato.
• Punto di commutazione e punto di disinserzione vengono definiti, per ogni traguardo da
avvicinare, attraverso i valori differenza di commutazione e differenza di disinserzione
predefiniti dall'utente nei parametri. La differenza di commutazione e quella di disinserzione
possono essere definite diversamente per la corsa in avanti (direzione +) e all'indietro
(direzione -).
• La corsa si conclude (WORKING = FALSE) una volta raggiunto il punto di disinserzione. A
partire da questo momento può iniziare una nuova corsa.
• Il traguardo predefinito è raggiunto (POS_RCD = TRUE) quando la quota reale della posizione
ha raggiunto la zona del traguardo. Se la quota reale della posizione lascia nuovamente la zona
del traguardo senza avvio di una nuova corsa, il segnale "Posizione raggiunta" non viene
nuovamente resettato.
Parametri di base:
Qui di seguito vengono descritti i parametri dell'SFB identici per tutti i modi di funzionamento. I
parametri specifici per modo di funzionamento sono descritti nei singoli modi di funzionamento.
Codice di Spiegazione
errore classe
evento
W#16#2001 SFB scorretto, utilizzare l'SFB 46
W#16#2004 Numero di canale scorretto (CHANNEL). Impostare "0" come numero di canale
W#16#3001 Il job di corsa non è stato accettato poiché il job nello stesso richiamo SFB è errato.
Correggere i parametri del job corrispondente
W#16#3002 Non è consentito modificare MODE_IN mentre l'azionamento è ancora in funzione.
Attendere la fine del posizionamento in corso.
W#16#3003 Modo di funzionamento sconosciuto (MODE_IN). Sono consentiti 1 (a impulsi), 3 (ricerca del
punto di zero), 4 (spostamento incrementale relativo) e 5 (spostamento incrementale
assoluto).
W#16#3004 È consentito impostare sempre solo una richiesta di avvio per volta. Le richieste di avvio
consentite sono DIR_P o DIR_M o START
W#16#3005 Il job START è consentito solo con il modo di funzionamento "Spostamento incrementale
assoluto". Avviare la corsa con DIR_P o DIR_M.
W#16#3006 DIR_P o DIR_M con asse lineare e modo di funzionamento "Spostamento incrementale
assoluto" non consentiti. Avviare la corsa con START.
W#16#3007 Asse non sincronizzato. "Spostamento incrementale assoluto" possibile solo con asse
sincronizzato.
W#16#3008 Uscire dal campo di lavoro. La corsa è consentita all'indietro solo a impulsi in direzione del
campo di lavoro.
W#16#3101 Avvio non abilitato poiché l'asse non è stato parametrizzato. Parametrizzare il sotto-modulo
"Posizionamento" nella "Configurazione HW".
W#16#3102 Avvio non abilitato poiché manca l'abilitazione dell'azionamento. Impostare l'"Abilitazione
azionamento" nell'SFB (DRV_EN=TRUE).
W#16#3103 Avvio non abilitato poiché è impostato lo STOP. Cancellare lo STOP
nell'SFB (STOP=FALSE).
W#16#3104 Avvio non abilitato poiché l'asse è momentaneamente in posizione (WORKING=TRUE).
Attendere la fine del posizionamento in corso.
W#16#3105 Avvio non abilitato poiché è ancora presente almeno un errore esterno non confermato.
Eliminare e confermare prima tutti gli errori esterni e quindi riavviare la corsa.
W#16#3201 La preassegnazione della velocità SPEED è scorretta. Il posizionamento con uscite digitali
consente soltanto la "Marcia lenta" (0) e la "Marcia veloce" (1).
W#16#3301 Differenza di commutazione/disinserzione eccessiva. Predefinire la differenza di
8
commutazione/disinserzione max uguale a 10
W#16#3303 Differenza di commutazione insufficiente. La differenza di commutazione deve essere
maggiore/uguale alla differenza di disinserzione.
W#16#3304 Differenza di disinserzione insufficiente. La differenza di disinserzione deve essere almeno
uguale a metà della zona del traguardo.
Codice di Spiegazione
errore classe
evento
W#16#3401 Preassegnazione del traguardo non compresa nel campo di lavoro. Con un asse lineare e
uno spostamento incrementale assoluto, la preassegnazione del traguardo deve essere
compresa nel finecorsa software (incluso).
W#16#3402 Preassegnazione del traguardo scorretta. Con un asse rotante, la preassegnazione del
traguardo deve essere maggiore di 0 e minore della fine dell'asse rotante.
W#16#3403 Indicazione scorretta del percorso. Con lo spostamento incrementale relativo, il tragitto da
percorrere deve essere positivo.
W#16#3404 Indicazione scorretta del percorso. Le coordinate assolute risultanti del traguardo devono
8
essere maggiori di -5x10 .
W#16#3405 Indicazione scorretta del percorso. Le coordinate assolute risultanti del traguardo devono
8
essere minori di 5x10 .
W#16#3406 Indicazione scorretta del percorso. Le coordinate assolute risultanti del traguardo devono
essere comprese nel campo di lavoro (+/- metà zona del traguardo)
W#16#3501 Campo corsa eccessivo. Coordinate traguardo + attuale percorso restante devono essere
8
maggiori/uguali a -5x10
W#16#3502 Campo corsa eccessivo. Coordinate traguardo + attuale percorso restante devono essere
8
minori/uguali a 5x10
W#16#3503 Campo corsa insufficiente. La corsa in direzione + deve essere maggiore della differenza di
disinserzione indicata per la direzione +
W#16#3504 Campo corsa insufficiente. La corsa in direzione - deve essere maggiore della differenza di
disinserzione indicata per la direzione -
W#16#3505 Campo corsa insufficiente o finecorsa già superato in direzione +. L'ultimo traguardo
raggiungibile in direzione + (campo di lavoro o limite del campo corsa) è troppo vicino alla
posizione attuale
W#16#3506 Campo corsa insufficiente o finecorsa già superato in direzione -. L'ultimo traguardo
raggiungibile in direzione - (campo di lavoro o limite del campo corsa) è troppo vicino alla
posizione attuale
Codice di Spiegazione
errore classe
evento
W#16#4001 Asse non parametrizzato. Parametrizzare il sotto-modulo "Posizionamento" nella
"Configurazione HW".
W#16#4002 JOB impossibile poiché vi è ancora un posizionamento in corso. I job sono eseguibili solo
quando non vi sono posizionamenti in corso. Attendere finché WORKING diventa = FALSE,
quindi ripetere il job.
W#16#4004 JOB sconosciuto. Controllarne il numero e quindi ripetere il job.
W#16#4101 Con un asse lineare, le coordinate del punto di zero indicate non devono trovarsi fuori dei
limiti del campo di lavoro.
W#16#4102 Con un asse lineare, le coordinate del punto di zero indicate + attuale percorso restante
8
devono essere ancora maggiori/uguali a -5x10 .
W#16#4103 Con un asse lineare, le coordinate del punto di zero indicate + attuale percorso restante
8
devono essere ancora minori/uguali a 5x10 .
W#16#4104 Con un asse lineare, le coordinate del punto di zero indicate + attuale differenza rispetto al
8
punto di avvio della corsa devono essere ancora maggiori/uguali a -5x10 .
W#16#4105 Con un asse lineare, le coordinate del punto di zero indicate + attuale differenza rispetto al
8
punto di avvio della corsa devono essere ancora minori/uguali a 5x10 .
W#16#4106 Con un asse rotante, le coordinate del punto di zero non devono essere minore di 0 e
maggiori/uguali alla fine dell'asse rotante.
Errori di sistema
Un errore di sistema viene visualizzato con BIE = FALSE. Un errore di sistema viene causato da un
errore di scrittura/lettura del DB di istanza o dal richiamo multiplo dell'SFB.
Descrizione
Per il comando del contatore dal programma utente utilizzare l'SFB COUNT (SFB47).
Sono disponibili le seguenti funzioni:
• Avvio/arresto del contatore con il gate software SW_GATE
• Abilitazione/comando dell'uscita DO
• Lettura dei bit di stato STS_CMP, STS_OFLW, STS_UFLW e STS_ZP
• Lettura dello stato attuale del contatore COUNTVAL
• JOB di lettura e scrittura dei registri interni del contatore
• Lettura della durata periodo attuale TIMEVAL
Parametri
Avvertenza
Se nella superficie di parametrizzazione è stato impostato il parametro "Comportamento dell'uscita"
su "Senza valore di confronto", vale quanto segue:
• l'uscita viene attivata come un'uscita normale
• i parametri di ingresso dell'SFB CTRL_DO e SET_DO non sono attivi
• i bit di stato STS_DO e STS_CMP (stato del comparatore nell'IDB) rimangono resettati.
Avvertenza
Ulteriori particolari sull'applicazione dell'SFB 47 sono contenute nel manuale Sistemi di automazione
S7-300 CPU 31xC, Funzioni tecnologiche.
Informazioni di errore
Codice di Spiegazione
errore classe
evento
W#16#0121 Valore di confronto troppo piccolo.
W#16#0122 Valore di confronto troppo grande.
W#16#0131 Isteresi troppo piccola.
W#16#0132 Isteresi troppo grande.
W#16#0141 Durata impulso troppo piccole.
W#16#0142 Durata impulso troppo grande.
W#16#0151 Valore di caricamento troppo piccolo.
W#16#0152 Valore di caricamento troppo grande.
W#16#0161 Stato del conteggio troppo piccolo.
W#16#0162 Stato del conteggio troppo grande.
W#16#01FF Numero job non valido.
Errori di sistema
Quando si verifica un errore di sistema, viene impostato il BIE = False.
Codice di Spiegazione
errore classe
evento
W#16#8001 Modo di funzionamento scorretto o errore di parametrizzazione. Impostare il modo di
funzionamento corretto nella "Configurazione HW" oppure utilizzare l'SFB adeguato al
modo di funzionamento impostato
W#16#8009 Numero di canale non valido. Impostare un numero di canale 3 (valore specifico della
CPU).
Descrizione
Il misuratore di frequenza può essere comandato dal programma utente utilizzando
l'SFB FREQUENC (SFB48).
Sono disponibili le seguenti funzioni:
• Avvio/arresto con il gate software SW_GATE
• Abilitazione/comando dell'uscita DO
• Lettura dei bit di stato STS_CMP, STS_OFLW e STS_UFLW
• Lettura del valore attuale della frequenza MEAS_VAL
• JOB di lettura e scrittura dei registri interni della misurazione di frequenza
Parametri
Avvertenza
Se il parametro "Comportamento dell'uscita" nella superficie di parametrizzazione è stato impostato
su "Senza valore di confronto", vale quanto segue:
• l'uscita viene attivata come unùscita normale;
• i parametri d'ingresso SFB CTRL_DO e SET_DO sono disattivati;
• il bit di stato STS_DO rimane resettato.
Avvertenza
Ulteriori particolari sull'applicazione dell'SFB 48 sono contenute nel manuale Sistemi di automazione
S7-300 CPU 31xC, Funzioni tecnologiche.
Codice di Spiegazione
errore classe
evento
W#16#0221 Tempo di integrazione insufficiente.
W#16#0222 Tempo di integrazione eccessivo.
W#16#0231 Limite inferiore della frequenza troppo piccolo.
W#16#0232 Limite inferiore della frequenza troppo grande.
W#16#0241 Limite superiore della frequenza troppo piccolo.
W#16#0242 Limite superiore della frequenza troppo grande.
W#16#02FF Numero job non valido.
Errori di sistema
Quando si verifica un errore di sistema, viene impostato il BIE = False.
Codice di Spiegazione
errore classe
evento
W#16#8001 Modo di funzionamento scorretto o errore di parametrizzazione. Impostare il modo di
funzionamento corretto nella "Configurazione HW" oppure utilizzare l'SFB adeguato al modo
di funzionamento impostato
W#16#8009 Numero di canale non valido. Impostare un numero di canale ≤ 3 (valore specifico della CPU).
Descrizione
Per il comando della modulazione di ampiezza degli impulsi dal programma utente utilizzare
l'SFB PULSE (SFB 49).
Sono disponibili le seguenti funzioni:
• Avvio/arresto con il gate software SW_EN
• Abilitazione/comando dell'uscita DO
• Lettura dei bit di stato STS_EN, STS_STRT e STS_DO
• Immissione del valore di uscita
• JOB di lettura e scrittura dei registri
Parametri
Avvertenza
Ulteriori particolari sull'applicazione dell'SFB 49 sono contenute nel manuale Sistemi di automazione
S7-300 CPU 31xC, Funzioni tecnologiche.
Codice di Spiegazione
errore classe
evento
W#16#0411 Durata periodo troppo breve.
W#16#0412 Durata periodo troppo lunga.
W#16#0421 Ritardo di inserzione troppo piccolo.
W#16#0422 Ritardo di inserzione troppo grande.
W#16#0431 Durata minima impulso troppo breve.
W#16#0432 Durata minima impulso troppo lunga.
W#16#04FF Numero job non valido.
Errori di sistema
Quando si verifica un errore di sistema, viene impostato il BIE = False.
Codice di Spiegazione
errore classe
evento
W#16#8001 Modo di funzionamento scorretto o errore di parametrizzazione. Impostare il modo di
funzionamento corretto nella "Configurazione HW" oppure utilizzare l'SFB adeguato al modo
di funzionamento impostato
W#16#8009 Numero di canale non valido. Impostare un numero di canale ≤ 3 (valore specifico della CPU).
Descrizione
Con l'SFB SEND_PTP (SFB 60) si invia un blocco di dati da un DB.
L'operazione di invio si attiva dopo il richiamo del blocco e un fronte di salita all'ingresso di comando
REQ.
L'area dei dati da inviare è predefinita da SD_1 (numero di DB e indirizzo iniziale), la lunghezza del
blocco dati da LEN.
Perché l'SFB possa elaborare il job, l'utente deve richiamare quest'ultimo con R(Reset)=FALSE.
Con un fronte di salita all'ingresso di comando R, l'operazione di invio in corso viene interrotta e
l'SFB viene riportato allo stato di base. I job interrotti si concludono con un messaggio di errore
(uscita STATUS).
LADDR consente di indicare l'indirizzo E/A del sotto-modulo definito dall'utente nella
"Configurazione HW".
O DONE viene impostato su TRUE, se il job si è concluso senza errori, oppure viene impostato
ERROR su TRUE, se il job si è concluso con errori.
Se il job è stato eseguito con DONE=TRUE, significa che:
• Con l'impiego del driver ASCII: i dati sono stati inviati al partner della comunicazione. Non è
sicuro che i dati siano anche stati ricevuti dal partner della comunicazione.
• Con l'impiego della procedura 3964(R): i dati sono stati inviati al partner della comunicazione e
confermati positivamente da questo. Non è sicuro che i dati siano anche stati trasmessi alla CPU
partner.
In caso di errore o di avviso, la CPU mostra in STATUS il numero dell'evento corrispondente.
DONE ed ERROR/STATUS vengono visualizzati anche in caso di RESET dell'SFB (R=TRUE).
Quando si verifica un errore, viene resettato il risultato binario BIE. Se il blocco si conclude senza
errori, il risultato binario ha lo stato TRUE.
Nota
L'SFB non ha controllo dei parametri: in caso di errori di parametrizzazione, la CPU può entrare in
stato di STOP.
DB di istanza
L'SFB SEND_PTP opera in combinazione con un DB di istanza. Il numero di DB viene indicato al
momento del richiamo. L'accesso ai dati del DB di istanza non è consentito.
Parametri
Descrizione
L'SFB RCV_PTP (SFB 61) permette di ricevere dati memorizzandoli in un blocco dati.
Dopo il richiamo, il blocco è pronto per la ricezione con il valore TRUE nell'uscita di comando EN_R.
Una trasmissione in corso può essere interrotta con lo stato di segnale FALSE nel parametro EN_R.
I job interrotti si concludono con un messaggio di errore (uscita STATUS). La ricezione resta
disattivata finché il parametro EN_R ha lo stato di segnale FALSE.
L'area di ricezione viene predefinita da RD_1 (numero DB e indirizzo iniziale), la lunghezza del
blocco di dati da LEN.
Perché l'SFB possa elaborare il job, l'utente deve richiamare quest'ultimo con R(Reset)=FALSE.
Con un fronte di salita all'ingresso di comando R, la trasmissione in corso viene interrotta e
l'SFB viene riportato allo stato di base. Un job di ricezione interrotto si conclude con un messaggio di
errore (uscita STATUS).
LADDR consente di indicare l'indirizzo E/A del sotto-modulo definito dall'utente nella
"Configurazione HW".
Viene impostato NDR su TRUE, se il job si è concluso senza errori, oppure ERROR su TRUE, se il
job si è concluso con errori.
In caso di errore o di avviso, la CPU mostra in STATUS il numero dell'evento corrispondente.
NDR ed ERROR/STATUS vengono visualizzati anche in caso di RESET dell'SFB (R=TRUE)
(parametro LEN == 16#00).
Quando si verifica un errore, viene resettato il risultato binario BIE. Se il blocco si conclude senza
errori, il risultato binario ha lo stato TRUE.
Nota
L'SFB non ha controllo dei parametri: in caso di errori di parametrizzazione, la CPU può entrare in
stato di STOP.
DB di istanza
L'SFB RCV_PTP opera in combinazione con un DB di istanza. Il numero di DB viene indicato al
momento del richiamo. L'accesso ai dati del DB di istanza non è consentito.
Parametri
Descrizione
L'SFB RES_RECV (SFB 62) permette di cancellare l'intero buffer ricevente dell'unità. Tutti i
telegrammi memorizzati vengono respinti. Un telegramma in entrata al momento del richiamo
dell'SFB RES_RCVB viene memorizzato.
Il job viene attivato dopo il richiamo del blocco e un fronte di salita nell'ingresso di comando REQ. Il
job può essere eseguito con più richiami (cicli di programma).
Perché l'SFB possa elaborare il job, l'utente deve richiamare quest'ultimo con R(Reset)=FALSE.
Con un fronte di salita all'ingresso di comando R la cancellazione viene interrotta e l'SFB viene
riportato allo stato di base. I job interrotti si concludono con un messaggio di errore (uscita STATUS).
LADDR consente di indicare l'indirizzo E/A del sotto-modulo definito dall'utente nella
"Configurazione HW".
O DONE viene impostato su TRUE, se il job si è concluso senza errori, oppure viene impostato
ERROR su TRUE, se il job si è concluso con errori.
In caso di errore o di avviso, la CPU mostra in STATUS il numero dell'evento corrispondente.
DONE ed ERROR/STATUS vengono visualizzati anche in caso di RESET dell'SFB (R=TRUE).
Quando si verifica un errore, viene resettato il risultato binario BIE. Se il blocco si conclude senza
errori, il risultato binario ha lo stato TRUE.
Nota
L'SFB non ha controllo dei parametri: in caso di errori di parametrizzazione, la CPU può entrare in
stato di STOP.
DB di istanza
L'SFB RES_RCVB opera in combinazione con un DB di istanza. Il numero di DB viene indicato al
momento del richiamo. L'accesso ai dati del DB di istanza non è consentito.
Parametri
Descrizione
Con l'SFB SEND_RK (SFB 63) si invia un blocco di dati da un DB.
L'operazione di invio si attiva dopo il richiamo del blocco e un fronte di salita all'ingresso di comando
REQ.
L'area dei dati da inviare è predefinita da SD_1 (numero di DB e indirizzo iniziale), la lunghezza del
blocco dati da LEN.
Indicare eventualmente nell'SFB l'area di ricezione del partner. Questa informazione viene riportata
dalla CPU nell'intestazione del telegramma e trasmessa al partner.
La destinazione viene indicata dal numero della CPU R_CPU (rilevante solo nella comunicazione
multiprocessore), dal tipo di dati R_TYPE (blocchi dati (DB) e blocchi dati ampliati (DX)), dal numero
di blocco dati R_DBNO e dall'offset R_OFFSET nel quale va scritto il primo byte.
Con R_CF_BYT e R_CF_BIT è possibile definire il byte e il bit del merker d'accoppiamento nella
CPU partner.
Il parametro SYNC_DB permette di determinare il DB in cui memorizzare i dati comuni a tutti gli
SFB utilizzati dall'utente per l'inizializzazione all'avviamento e la sincronizzazione. Il numero del DB
deve essere identico per tutti gli SFB utilizzati nel programma utente.
Perché l'SFB possa elaborare il job, l'utente deve richiamare quest'ultimo con R(Reset)=FALSE.
Con un fronte di salita all'ingresso di comando R l'operazione di invio in corso viene interrotta e
l'SFB viene riportato allo stato di base. I job interrotti si concludono con un messaggio di errore
(uscita STATUS).
LADDR consente di indicare l'indirizzo E/A del sotto-modulo definito dall'utente nella
"Configurazione HW".
O DONE viene impostato su TRUE, se il job si è concluso senza errori, oppure viene impostato
ERROR su TRUE, se il job si è concluso con errori.
Se il job è stato esguito con DONE = TRUE, i dati sono stati inviati al partner della comunicazione,
confermati positivamente da quest'ultimo e trasmessi alla CPU partner.
In caso di errore o di avviso, la CPU mostra in STATUS il numero dell'evento corrispondente.
DONE ed ERROR/STATUS vengono visualizzati anche in caso di RESET dell'SFB (R=TRUE).
Quando si verifica un errore, viene resettato il risultato binario BIE. Se il blocco si conclude senza
errori, il risultato binario ha lo stato TRUE.
Nota
L'SFB non ha controllo dei parametri: in caso di errori di parametrizzazione, la CPU può entrare in
stato di STOP.
DB di istanza
L'SFB SEND_RK opera in combinazione con un DB di istanza. Il numero di DB viene indicato al
momento del richiamo. L'accesso ai dati del DB di istanza non è consentito.
Parametri
Descrizione
L'SFB FETCH_RK (SFB 64) permetet di prelevare un blocco di dati dal partner memorizzandoli in
un blocco dati.
L'operazione di invio si attiva dopo il richiamo del blocco e un fronte di salita all'ingresso di comando
REQ.
L'area in cui memorizzare i dati prelevati è predefinita da RD_1 (numero di DB e indirizzo iniziale), la
lunghezza del blocco dati da LEN.
Indicare eventualmente nell'SFB l'area del partner dalla quale vengono prelevati i dati. Questa
informazione viene riportata dalla CPU nell'intestazione del telegramma RK512 (vedere anche
allegato F) e trasmessa al partner.
L'area del partner viene indicata dal numero della CPU R_CPU (rilevante solo nella comunicazione
multiprocessore), dal tipo di dati R_TYPE (blocchi dati, blocchi dati ampliati, merker, ingressi, uscite,
contatori e temporizzatori), dal numero di blocco dati R_DBNO (rilevante solo per blocchi dati e
blocchi dati ampliati) e dall'offset R_OFFSET nel quale va prelevato il primo byte.
Con R_CF_BYT e R_CF_BIT è possibile definire il byte e il bit del merker d'accoppiamento nella
CPU partner.
Il parametro SYNC_DB permette di determinare il DB in cui memorizzare i dati comuni a tutti gli
SFB utilizzati dall'utente per l'inizializzazione all'avviamento e la sincronizzazione. Il numero del DB
deve essere identico per tutti gli SFB utilizzati nel programma utente.
Perché l'SFB possa elaborare il job, l'utente deve richiamare quest'ultimo con R(Reset)=FALSE.
Con un fronte di salita all'ingresso di comando R la trasmissione in corso viene interrotta e
l'SFB viene riportato allo stato di base. I job interrotti si concludono con un messaggio di errore
(uscita STATUS).
LADDR consente di indicare l'indirizzo E/A del sotto-modulo definito dall'utente nella
"Configurazione HW".
O DONE viene impostato su TRUE, se il job si è concluso senza errori, oppure viene impostato
ERROR su TRUE, se il job si è concluso con errori.
In caso di errore o di avviso, la CPU mostra in STATUS il numero dell'evento corrispondente.
DONE ed ERROR/STATUS vengono visualizzati anche in caso di RESET dell'SFB (R=TRUE).
Quando si verifica un errore, viene resettato il risultato binario BIE. Se il blocco si conclude senza
errori, il risultato binario ha lo stato TRUE.
Nota
L'SFB non ha controllo dei parametri: in caso di errori di parametrizzazione, la CPU può entrare in
stato di STOP.
Nota
In caso di prelievo di dati dalla propria CPU, occorre programmare nella propria CPU un
SFB "SERVE_RK".
DB di istanza
L'SFB FETCH_RK opera in combinazione con un DB di istanza. Il numero di DB viene indicato al
momento del richiamo. L'accesso ai dati del DB di istanza non è consentito.
Parametri
In questo SFB i campi dei valori sono indicati con mnemonico tedesco.
Descrizione
L'SFB SERVE_RK (SFB 65) permette di ricevere e rendere disponibili dati.
• Ricezione di dati: i dati vengono memorizzati nell'area dati specificata dal partner
nell'intestazione del telegramma RK 512. Il richiamo dell'SFB è necessario se il partner della
comunicazione esegue un job "Invio dati" (job SEND).
• Messa a disposizione dei dati: i dati vengono prelevati dall'area dati specificata dal partner
nell'intestazione del telegramma RK 512. Il richiamo dell'SFB è necessario se il partner della
comunicazione esegue un job "Prelievo dati" (job FETCH).
L'SFB è pronto dopo il richiamo con il valore TRUE nell'ingresso di comando EN_R. Una
trasmissione in corso può essere interrotta con lo stato di segnale FALSE nel parametro EN_R. I
job interrotti si concludono con un messaggio di errore (uscita STATUS). La ricezione resta
disattivata finché il parametro EN_R ha lo stato di segnale FALSE.
Il parametro SYNC_DB permette di determinare il DB in cui memorizzare i dati comuni a tutti gli
SFB utilizzati dall'utente per l'inizializzazione all'avviamento e la sincronizzazione. Il numero del DB
deve essere identico per tutti gli SFB utilizzati nel programma utente.
Perché l'SFB possa elaborare il job, l'utente deve richiamare quest'ultimo con R(Reset)=FALSE.
Con un fronte di salita all'ingresso di comando R, la trasmissione in corso viene interrotta e
l'SFB viene riportato allo stato di base. I job interrotti si concludono con un messaggio di errore
(uscita STATUS).
LADDR consente di indicare l'indirizzo E/A del sotto-modulo definito dall'utente nella
"Configurazione HW".
Viene impostato NDR su TRUE, se il job si è concluso senza errori, oppure ERROR su TRUE, se il
job si è concluso con errori.
Con NDR=TRUE in un richiamo dell'SFB nei parametri L_TYPE, L_DBNO e L_OFFSET, la CPU
indica la posizione in cui sono stati memorizzati i dati o quella dalla quale sono stati prelevati. Per il
richiamo, inoltre, vengono visualizzati i parametri L_CF_BYT e L_CF_BIT e la lunghezza LEN del
job corrispondente.
In caso di errore o di avviso, la CPU mostra in STATUS il numero dell'evento corrispondente (vedere
allegato).
NDR ed ERROR/STATUS vengono visualizzati anche in caso di RESET dell'SFB (R=TRUE)
(parametro LEN == 16#00).
• Quando si verifica un errore, viene resettato il risultato binario BIE. Se il blocco si conclude senza
errori, il risultato binario ha lo stato TRUE.
Nota
L'SFB non ha controllo dei parametri: in caso di errori di parametrizzazione, la CPU può entrare in
stato di STOP.
DB di istanza
L'SFB SERVE_RK opera in combinazione con un DB di istanza. Il numero di DB viene indicato al
momento del richiamo. L'accesso ai dati del DB di istanza non è consentito.
SEND_RK
Gli accessi ai dati possono
Utilizza il bit di merker per la scrittura del DB
essere inibiti dai bit del
R_CF_BYT merker d'accoppiamento
R_CF_BIT TRUE/FALSE
R_TYPE = DB SERVE_RK
R_DBNO Merker d'accoppiamento
R_OFFSET MB100 7 6 5 4 3 2 1 0
L_CF_BYT
L_CF_BIT Assegnazione
L_TYPE = DB bit di merker
FETCH_RK L_DBNO a DB
L_OFFSET
R_CF_BYT
R_CF_BIT
R_TYPE = DB DB100
R_DBNO DB101
R_OFFSET Utilizza il bit di merker per la lettura del DB DB102
DB103
Merker d'accoppiamento
MB200
Una volta trasferiti i dati nel DB101, il merker d'accoppiamento 100.6 nella CPU dell'utente viene
impostato dall'SFB SERVE sul valore TRUE, mentre il byte e il bit del merker d'accoppiamento
nell'SFB SERVE vengono visualizzati (se NDR =TRUE) per un richiamo.
3. Analizzando il merker d'accoppiamento (merker d'accoppiamento 100.6 =TRUE) nel programma
utente è possibile riconoscere che il job si è concluso e che i dati trasmessi possono essere
elaborati.
4. Una volta elaborati i dati nel programma utente, occorre reimpostare il merker d'accoppiamento
100.6 su FALSE. Solo in seguito il partner del collegamento potrà rieseguire il job senza errori.
Parametri
In questo SFB i campi dei valori vengono indicati con mnemonico tedesco.
"Errori di invio"
Codice di Evento Rimedio
errore classe
evento
W#16#0701 Solo con 3964(R): La ripetizione non è un errore, tuttavia può essere indicativa di
Invio della prima ripetizione: disturbi sulla linea di trasmissione o di un comportamento
• Durante l'invio di un telegramma è errato del dispositivo partner. Se dopo il numero massimo di
stato rilevato un errore ripetizioni resta impossibile trasmettere il telegramma, viene
segnalato un numero di errore che descrive il primo errore che
• Il partner ha richiesto una ripetizione si è verificato.
attraverso un segnale negativo di
conferma (NAK).
W#16#0702 Solo con 3964(R): Verificare eventualmente il comportamento scorretto del
Errore di creazione del collegamento: dispositivo del partner con un dispositivo di interfaccia inserito
dopo l'invio di STX, sono stati ricevuti NAK nella linea di trasmissione.
o un qualunque altro segnale (eccetto
DLE o STX).
W#16#0703 Solo con 3964(R): Il dispositivo del partner è troppo lento o non è pronto per la
Tempo di ritardo conferma (QVZ) ricezione, oppure vi è ad es. una rottura del cavo di
superato: trasmissione. Verificare eventualmente il comportamento
dopo l'invio di STX, non è arrivata una scorretto del dispositivo del partner con un dispositivo di
risposta del partner entro il tempo di interfaccia inserito nella linea di trasmissione.
ritardo conferma.
W#16#0704 Solo con 3964(R): Verificare che non vengano visualizzati errori anche dal
Interruzione da parte del partner: partner poiché probabilmente non tutti i dati inviati sono
nel corso dell'invio il partner ha ricevuto arrivati (ad es. rottura del cavo di trasmissione), oppure vi
uno o più segnali. sono gravi disturbi o il comportamento del dispositivo del
partner non è corretto. Verificare eventualmente il
comportamento scorretto del dispositivo del partner con un
dispositivo di interfaccia inserito nella linea di trasmissione.
W#16#0705 Solo con 3964(R): Verificare che non vengano visualizzati errori anche dal
Conferma negativa durante l'invio partner poiché probabilmente non tutti i dati inviati sono
arrivati (ad es. rottura del cavo di trasmissione), oppure vi
sono gravi disturbi o il comportamento del dispositivo del
partner non è corretto. Verificare eventualmente il
comportamento scorretto del dispositivo del partner con un
dispositivo di interfaccia inserito nella linea di trasmissione.
W#16#0706 Solo con 3964(R): Verificare che non vengano visualizzati errori anche dal
Errore alla fine del collegamento: partner poiché probabilmente non tutti i dati inviati sono
• Il telegramma è stato respinto dal arrivati (ad es. rottura del cavo di trasmissione), oppure vi
partner alla fine con NAK o con un sono gravi disturbi o il comportamento del dispositivo del
segnale qualunque (eccetto DLE) partner non è corretto. Verificare eventualmente il
comportamento scorretto del dispositivo del partner con un
• Il segnale di conferma (DLE) è stato dispositivo di interfaccia inserito nella linea di trasmissione.
ricevuto troppo presto.
W#16#0707 Solo con 3964(R): Il dispositivo del partner è troppo lento o non è pronto per la
Il tempo di ritardo conferma è stato ricezione, oppure vi è ad es. una rottura nel cavo di
superato alla fine del collegamento / trasmissione. Verificare eventualmente con un dispositivo di
tempo di controllo risposta dopo il interfaccia inserito nella linea di trasmissione.
telegramma di invio:
dopo la creazione del collegamento con
DLE ETX non è arrivata una risposta dal
partner entro il QVZ.
"Errori di invio"
Codice di Evento Rimedio
errore classe
evento
W#16#0708 Solo con ASCII-Treiber: Il partner della comunicazione è disturbato, troppo lento o è
Il tempo di attesa per XON è scaduto. passato al modo offline. Controllare il partner della
comunicazione o eventualmente modificare la
parametrizzazione.
W#16#0709 Solo con 3964(R): Controllare il cavo dell'interfaccia o i parametri di
Non è possibile creare il collegamento: il trasmissione.
numero dei tentativi ammessi è stato Controllare anche nel partner che la funzione di ricezione tra
superato. CPU e CP sia parametrizzata correttamente.
W#16#070A Solo con 3964(R): Controllare il cavo dell'interfaccia o i parametri di
Non è stato possibile trasmettere i dati: il trasmissione.
numero dei tentativi ammessi è stato
superato.
W#16#070B Solo con 3964(R): Modificare la parametrizzazione.
Non è possibile risolvere il conflitto di
inizializzazione poiché entrambi i partner
hanno impostato la massima priorità.
W#16#070C Solo con 3964(R): Modificare la parametrizzazione.
Non è possibile ricolvere il conflitto di
inizializzazione poiché entrambi i partner
hanno impostato una priorità bassa.
"Errori di ricezione"
Codice di Evento Rimedio
errore classe
evento
W#16#0801 Solo con 3964(R): La ripetizione non è un errore, tuttavia può essere indicativa di
Attesa della prima ripetizione: disturbi sulla linea di trasmissione o di un comportamento
Durante la ricezione di un telegramma è errato del dispositivo partner. Se dopo il numero massimo di
stato rilevato un errore e la CPU ha ripetizioni resta impossibile trasmettere il telegramma, viene
richiesto una ripetizione da parte del segnalato un numero di errore che descrive il primo errore che
partner attraverso un segnale si è verificato.
negativo di conferma (NAK).
W#16#0802 Solo con 3964(R): Verificare eventualmente il comportamento scorretto del
Errore di creazione del collegamento: dispositivo del partner con un dispositivo di interfaccia inserito
• In posizione di riposo sono stati nella linea di trasmissione.
ricevuti uno o più segnali qualunque
(eccetto NAK o STX)
• Dopo aver ricevuto un STX, il partner
ha inviato altri segnali senza
attendere la risposta DLE.
Dopo RETE-ON del partner:
• Mentre viene attivato il partner, la
CPU riceve un segnale non definito.
"Errori di ricezione"
Codice di Evento Rimedio
errore classe
evento
W#16#0805 Solo con 3964(R): Controllare che il partner DLE nell'intestazione del
Errore logico nel corso della ricezione: telegramma e nella stringa di dati venga sempre raddoppiato
dopo la ricezione di DLE è stato ricevuto e che la creazione del collegamento venga sempre eseguita
un altro segnale qualunque (eccetto DLE, con DLE ETX. Verificare eventualmente il comportamento
ETX). scorretto del dispositivo del partner con un dispositivo di
interfaccia inserito nella linea di trasmissione.
W#16#0806 Tempo di ritardo carattere (ZVZ) superato: Il dispositivo del partner è troppo lento o disturbato. Verificare
• Due caratteri direttamente successivi eventualmente con un dispositivo di interfaccia inserito nella
non sono stati ricevuti entro il ZVZ. linea di trasmissione.
Solo con 3964(R):
• Il primo carattere dopo l'invio di DLE
alla creazione del collegamento non è
stato ricevuto entro il ZVZ.
W#16#0807 Lunghezza del telegramma non La ricezione di un telegramma con lunghezza 0 non è un
ammessa: errore.
È stato ricevuto un telegramma con Controllare per quale motivo il partner della comunicazione
lunghezza 0. invia telegrammi senza dati utili.
W#16#0808 Solo con 3964(R): Controllare l'entità del disturbo sulla linea; in questo caso sarà
errore nel carattere di controllo blocco eventualmente necessario osservare anche il codice errore.
BCC: Verificare eventualmente il comportamento scorretto del
Il valore formato internamente del BCC dispositivo del partner con un dispositivo di interfaccia inserito
non coincide con quello del partner alla nella linea di trasmissione.
fine del collegamento con il BCC ricevuto.
W#16#0809 Solo con 3964(R): Parametrizzare nel partner della comunicazione lo stesso
Tempo di attesa della ripetizione del tempo di attesa del blocco della propria unità. Verificare
blocco scaduto eventualmente il comportamento scorretto del dispositivo del
partner con un dispositivo di interfaccia inserito nella linea di
trasmissione.
W#16#080A Non vi è un buffer di ricezione libero: L'SFB RCV deve essere richiamato più spesso.
al momento della ricezione non era
disponibile nessun buffer di ricezione
vuoto.
W#16#080C Errore di trasmissione: I disturbi sulla linea di trasmissione causano ripetizioni dei
• È stato rilevato un errore di telegrammi, riducendo così la capacità di trasporto dei dati
trasmissione (errore di parità, bit di utili. Il pericolo di un errore non riconosciuto è maggiore.
stop, overflow). Modificare la propria configurazione nel sistema o la
Solo con 3964(R): definizione della lunghezza.
Controllare la linea di collegamento tra i partner della
• Se in posizione di riposo viene
comunicazione e che per entrambi i dispositivi siano stati
ricevuto un segnale disturbato,
impostati la stessa velocità di trasmissione, la stessa parità e
l'errore viene segnalato
lo stesso numero di bit di stop.
immediatamente in modo da poter
riconoscere tempestivamente i
disturbi sulla linea di trasmissione.
Solo con 3964(R):
• Se ciò si verifica in fase di invio o
ricezione, vengono attivate le
ripetizioni.
"Errori di ricezione"
Codice di Evento Rimedio
errore classe
evento
W#16#080D BREAK: Ricreare il collegamento o avviare il partner.
linea di ricezione verso il partner interrotta.
W#16#080E Overflow del buffer di ricezione con L'SFB di ricezione deve essere richiamato più spesso nel
controllo di flusso non abilitato. programma utente oppure occorre parametrizzare una
comunicazione con controllo di flusso.
W#16#0810 Errore di parità Controllare la linea di collegamento tra i partner della
comunicazione e che per entrambi i dispositivi siano stati
impostati la stessa velocità di trasmissione, la stessa parità e
lo stesso numero di bit di stop.
W#16#0811 Errore nella griglia Controllare la linea di collegamento tra i partner della
comunicazione e che per entrambi i dispositivi siano stati
impostati la stessa velocità di trasmissione, la stessa parità e
lo stesso numero di bit di stop.
Modificare la propria configurazione nel sistema o la
definizione della lunghezza.
W#16#0812 Solo con driver ASCII: Riparametrizzare il partner della comunicazione oppure
dopo che la CPU ha inviato XOFF, sono smaltire i dati più rapidamente.
stati ricevuti altri segnali.
W#16#0814 Solo con driver ASCII: Utilizzare per quanto possibile il controllo di flusso. Utilizzare
uno o più telegrammi sono andati persi l'intero buffer di ricezione. Nei parametri di base, impostare la
poiché non è stato impiegato il controllo di "Reazione allo stop della CPU" su "Continua".
flusso.
W#16#0816 La lunghezza di un telegramma ricevuto È necessario eseguire la correzione nel partner.
supera quella massima stabilita.
"Telegramma di conferma con errori o telegramma con errori ricevuti dal partner di collegamento"
Codice di Evento Rimedio
errore classe
evento
W#16#0902 Solo con RK 512: Controllare che l'area dati desiderata sia disponibile nel
Errore di accesso alla memoria da parte partner e che sia sufficientemente grande, oppure verificare i
del partner (memoria non disponibile) parametri del blocco funzionale di sistema richiamato.
Con SIMATIC S5 come partner: Controllare la lunghezza indicata nel blocco funzionale di
sistema.
• area errata nella parola di
visualizzazione
• area dati non disponibile (eccetto
DB/DX)
• area dati troppo breve (eccetto
DB/DX)
"Telegramma di conferma con errori o telegramma con errori ricevuti dal partner di collegamento"
Codice di Evento Rimedio
errore classe
evento
W#16#0903 Solo con RK 512: Controllare che l'area dati desiderata sia disponibile nel
Errore di accesso al DB/DX da parte del partner e che sia sufficientemente grande, oppure verificare i
partner (DB/DX non disponibile o troppo parametri del blocco funzionale di sistema richiamato.
breve) Controllare la lunghezza indicata nel blocco funzionale di
Con SIMATIC S5 come partner: sistema.
• DB/DX non disponibile
• DB/DX troppo breve
• N. DB/DX non ammesso
È stata superata l'area sorgente con il
job FETCH.
W#16#0904 Solo con RK 512: Comportamento errato da parte del partner in quanto dalla
Il partner segnala un "tipo di job non CPU non viene mai emesso un comando di sistema.
consentito".
W#16#0905 Solo con RK 512: Controllare che il partner possa trasmettere il tipo di dati
Errore nel partner/nel partner SIMATIC indicato.
S5: Controllare la configurazione dell'hardware nel partner.
• Tipo di sorgente/destinazione non Posizionare il selettore del PLC partner in posizione RUN.
ammesso
• Errore nella memoria del PLC del
partner
• Errore di comprensione tra CP/CPU
nel partner
• PLC del partner in stato di STOP
W#16#0908 Solo con RK 512: Questo errore si verifica al nuovo avviamento del proprio PLC
Il partner riconosce un errore di o di quello del partner. Si tratta di un normale comportamento
sincronizzazione: all'avviamento dell'impianto, e in questo caso non è un errore
da eliminare. In fase di funzionamento, questo errore
la sequenza dei telegrammi è disturbata.
potrebbe verificarsi invece in conseguenza di errori
precedenti. In caso contrario, è probabile che si tratti di un
comportamento errato da parte del partner.
W#16#0909 Solo con RK 512: Nel programma partner: dopo aver elaborato gli ultimi dati
DB/DX nel partner inibito da un merker di della trasmissione, resettare il merker di coordinamento.
coordinamento. Nel programma: ripetere il job.
W#16#090A Solo con RK 512: Controllare che l'errore non sia causato da disturbi o da un
Errori nell'intestazione del telegramma comportamento errato del partner. Verificare eventualmente
che vengono rilevati dal partner: il byte di con un dispositivo di interfaccia inserito nella linea di
comando 3 nell'intestazione è sbagliato trasmissione.
W#16#090C Solo con RK 512: Controllare che l'errore non sia causato da disturbi o da un
Il partner riconosce una lunghezza comportamento errato del partner. Verificare eventualmente
scorretta del telegramma (lunghezza con un dispositivo di interfaccia inserito nella linea di
totale). trasmissione.
"Telegramma di conferma con errori o telegramma con errori ricevuti dal partner di collegamento"
Codice di Evento Rimedio
errore classe
evento
W#16#090D Solo con RK 512: Eseguire il nuovo avviamento del PLC del partner o
Finora non è stato eseguito un nuovo posizionare il selettore dei modi di funzionamento in posizione
avviamento del partner. RUN.
W#16#090E Solo con RK 512: Controllare che l'errore non sia causato da disturbi o da un
Numero di errore sconosciuto nel comportamento errato del partner. Verificare eventualmente
telegramma di conferma ricevuto. con un dispositivo di interfaccia inserito nella linea di
trasmissione.
Descrizione
Con la SFC 90 "H_CTRL" si possono influenzare i sistemi H nel modo seguente:
• È possibile disabilitare l'accoppiamento nella CPU master. La disabilitazione dura finché non
viene di nuovo annullata con la SFC 90 "H_CTRL" o finché il sistema H non entra in stato di
funzionamento STOP.
Viene memorizzata una richiesta di accoppiamento dalla CPU di riserva che sopraggiunge
durante la disabilitazione.
• È possibile disabilitare l'aggiornamento nella CPU master. La disabilitazione dura finché non
viene di nuovo annullata con la SFC 90 "H_CTRL" o finché il sistema H non entra in stato di
funzionamento STOP.
Viene memorizzata una richiesta di aggiornamento dalla CPU di riserva che sopraggiunge
durante la disabilitazione.
! Attenzione
Se si blocca solo l'aggiornamento e non l'accoppiamento, il sistema H potrebbe assumere lo stato di
accoppiamento. Si noti che quando è attivo l'accoppiamento la CPU master non elabora allarmi di
estrazione/inserimento, allarmi di guasto e ripristino stazione e allarmi di guasto e ripristino dei telai
di montaggio.
Avvertenza:
Se si impiega una CPU 414-4H o 417-4H in un sistema sicuro, è opportuno tener conto di quanto
segue: se si blocca una componente dell'autotest ciclico per più di 24 h, la CPU va in STOP. Nei
sistemi sicuri infatti alcuni test devono essere elaborati una volta nell'arco delle 24 h.
• E‘ possibile eseguire una commutazione master-riserva programmata. Sono possibili le seguenti
commutazioni:
- La CPU di riserva attuale diventa CPU master.
- La CPU nel telaio di montaggio 0 diventa CPU master.
- La CPU nel telaio di montaggio 1 diventa CPU master.
Nella tabella seguente sono riportate le combinazioni dei parametri di ingresso MODE e SUBMODE
ammesse.
Nella tabella seguente è riportata l'assegnazione dei singoli componenti di prova dell'autotest ciclico
relativi ai valori dell'ingresso SUBMODE (rilevante solo per i valori 20, 21 e 22 dell'ingresso MODE).
Procedimento
La SFC 90 "H_CTRL" è una SFC che lavora in modo asincrono, ovvero l'elaborazione può
estendersi per numerosi richiami SFC.
Il job viene avviato richiamando la SFC 90 con REQ=1.
Se il job ha potuto essere eseguito subito, la SFC sul parametro di uscita BUSY rende il valore 0.
L'avvio di una funzione di test di lunga durata si conclude dopo il primo richiamo dell'SFC (BUSY=0),
e in particolare anche quando il test si estende per più cicli (RET_VAL=W#16#0001 con MODE=22).
Se BUSY ha il valore 1, il job è ancora in corso di esecuzione (vedi anche Significato dei parametri
REQ, RET_VAL e BUSY nelle SFC che lavorano in modo asincrono )
Identificazione di un job
I parametri di ingresso MODE e SUBMODE definiscono un job. Se questi coincidono con un job che
non è stato ancora concluso, il richiamo SFC vale come richiamo successivo.
Parametri
Informazioni di errore
Codice di Spiegazione
errore
(W#16#...)
0000 Il job è stato eseguito senza errori.
7000 Primo richiamo con REQ=0. Il job non è stato eseguito. BUSY ha il valore 0.
7001 Primo richiamo con REQ=1. Il job è stato avviato; BUSY ha il valore 1.
7002 Richiamo intermedio (REQ irrilevante). Il job attivato è ancora in funzione; BUSY ha il valore
1.
0001 • con MODE=1: L'aggiornamento è già stato disabilitato.
• con MODE=3: L'accoppiamento è già stato disabilitato.
• con MODE=22: Il componente di prova è già in corso di esecuzione e non può essere
avviato di nuovo
• con MODE=30: impossibile eseguire la commutazione master-riserva programmata in
quanto la CPU 0 è già CPU master.
• con MODE=31: impossibile eseguire la commutazione master-riserva programmata in
quanto la CPU 1 è già CPU master.
8080 • Impossibile eseguire la commutazione master-riserva con lo stato attuale del sistema
H perché non sprovvisto di funzionamento di ridondanza.
8082 • con MODE=1: Il procedimento di aggiornamento è già attivo e pertanto non può più
essere disabilitato.
• con MODE=3: Il procedimento di accoppiamento è già attivo e pertanto non può più
essere disabilitato.
• con MODE=20: il componente di prova specificato è già stato rimosso dall'autotest
ciclico.
• con MODE=21: Il componente di prova specificato non è stato rimosso dall'autotest
ciclico
• con MODE=22: Il componente di prova specificato non può essere eseguito poiché è
stato rimosso dall'autotest ciclico
8090 Il parametro di ingresso MODE contiene un valore non valido.
8091 Il parametro di ingresso SUBMODE contiene un valore non valido.
8xyy Informazione di errore generale, vedere Analisi degli errori con il parametro di uscita
RET_VAL
Descrizione
Con l'SFB 29 (HS_COUNT) è possibile influenzare la funzione integrata Contatore di una CPU con
ingressi/uscite integrati:
• definire e confermare il valore di avvio
• definire e settare valori di confronto
• abilitare il contatore
• abilitare le uscite digitali
• leggere l'attuale valore di conteggio e gli attuali valori di confronto
• rilevare il valore di conteggio in riferimento al valore di confronto
Informazioni supplementari
Il significato dei singoli parametri di SFB 29 in relazione alla parametrizzazione della funzione
integrata Contatore nonché agli ingressi e alle uscite HW della CPU, è descritto in modo dettagliato
nel manuale Sistema di controllori programmabili S7-300, Funzioni integrate.
Parametri
Descrizione
Con l'SFB 30 (FREQ_MES) è possibile influenzare la funzione integrata Misuratore di frequenza di
una CPU con ingressi/uscite integrati:
• definire e settare valori di confronto
• emettere una frequenza misurata
• leggere gli attuali valori di confronto
• rilevare la posizione della frequenza misurata in relazione al valore di confronto
Informazioni supplementari
Il significato dei singoli parametri di SFB 30 in relazione alla parametrizzazione della funzione
integrata Misuratore di frequenza nonché agli ingressi e uscite HW della CPU, è descritto in modo
dettagliato nel manuale Sistema di controllori programmabili S7-300, Funzioni integrate.
Parametri
Descrizione
Con l'SFB 38 (HSC_A_B) si può agire sulla funzione integrata Contatori A/B di una CPU con
ingressi/uscite integrati:
• prestabilire e confermare il valore iniziale
• prestabilire e definire i valori di confronto
• abilitare contatori
• abilitare uscite digitali
• leggere il valore di conteggio attuale e i valori di confronto attuali
• rilevare la posizione del valore di conteggio rispetto al valore di confronto
L'SFB 38 (HSC_A_B) legge o scrive i dati dal programma utente nel DB di istanza della funzione
integrata. Il contatore A/B consta di 2 contatori A e B che possono contare in maniera indipendente
l'uno dall'altro e simultaneamente (è possibile contare sia in avanti che all'indietro).
Il modo di funzionamento di entrambi i contatori è identico, possono essere rilevati impulsi di
conteggio fino a una frequenza di 10 kHz.
Informazioni supplementari
Che significato abbiano i singoli parametri dell'SFB 38 in relazione alla parametrizzazione della
funzione integrata Contatori A/B e agli ingressi e alle uscite HW della CPU, viene descritto in
dettaglio nel manuale Sistema di automazione S7-300, Funzioni integrate CPU 312 IFM/314 IFM.
Parametri
Descrizione
Con l'SFB 39 (POS) è possibile influire sulla funzione integrata Posizionamento di una CPU con
ingressi/uscite integrati. L'SFB 39 (POS) offre le funzioni:
• Sincronizzazione
• Esecuzione funzionamento ad impulsi
Posizionamento
L'SFB 39 (POS) per la funzione integrata Posizionamento, legge o scrive dati dal programma utente
nel DB di istanza della funzione integrata. La funzione integrata Posizionamento rileva segnali da
sensori asimmetrici da 24V in maniera incrementale fino a una frequenza di 10 kHz. Essa comanda
un dispositivo a due velocità oppure un convertitore di frequenza tramite uscite integrate prestabilite
della CPU 314 IFM (Posizionamento comandato).
Informazioni supplementari
Che significato abbiano i singoli parametri dell'SFB 39 in relazione alla parametrizzazione della
funzione integrata Posizionamento e agli ingressi e alle uscite HW della CPU, viene descritto in
dettaglio nel manuale Sistema di automazione S7-300, Funzioni integrate CPU 312 IFM/314 IFM.
Parametri
Descrizione
La SFC 63 (AB_CALL) richiama un blocco assemblatore.
I blocchi assemblatori sono blocchi di codice che sono stati scritti nel linguaggio di programmazione
"C" o in Assembler e quindi compilati.
Applicazione
I blocchi assemblatori possono essere impiegati esclusivamente per la CPU 614.
Informazioni supplementari
Per la programmazione dei blocchi assemblatori sono disponibili apposite istruzioni di
programmazione.
Parametri
Contenuto
Le liste di stato di sistema contengono informazioni relative a:
• dati di sistema
• informazione sullo stato dell'unità nella CPU
• dati di diagnostica nelle unità
Dati di sistema
I dati di sistema sono dati caratteristici fissi o parametrizzati di una CPU. Essi descrivono le seguenti
caratteristiche di potenzialità:
• struttura della CPU
• stato delle classi di priorità
• comunicazione.
Fondamenti
Una lista parziale o un estratto di lista possono essere letti con la SFC 51 "RDSYSST". Con i
parametri SZL_ID e INDEX si può definire che cosa si vuole leggere.
Struttura
Una lista parziale è composta da:
• intestazione
• set di dati
Intestazione
L'intestazione di una lista parziale è composta da:
• ID SZL
• indice
• lunghezza di un set di dati di questa lista parziale in byte
• numero dei set di dati che questa lista parziale contiene.
Indice
Per determinate liste parziali o estratti di liste parziali è necessario indicare una identificazione del
tipo di oggetto o un numero dell'oggetto. A tale scopo viene utilizzato l'indice. Se esso non è
necessario per una informazione, il suo contenuto è irrilevante.
Set di dati
Un set di dati di una SZL ha una certa lunghezza. Essa dipende dalle informazioni depositate nella
SZL stessa. Da quest'ultima dipende anche l'organizzazione delle parole di dati in un set di dati.
34.3 ID SZL
ID SZL
Ogni lista parziale in una SZL possiede un numero. L'emissione di una lista parziale può essere
richiesta in modo completo o parziale. I possibili estratti di una lista parziale sono definiti in modo
fisso e vengono a loro volta contrassegnati da un numero. L'ID SZL è composto dal numero della
lista parziale e dal numero dell'estratto della lista parziale e della classe di unità.
Struttura
L'ID SZL è lungo una parola. Esso si compone come segue:
15 12 11 8 7 0
Classe di unità
Esempi di classi di unità:
Sottoinsieme
In un'unità è sempre disponibile solo un sottoinsieme di tutte le liste parziali possibili. Quali liste
parziali siano disponibili dipende dall'unità.
Scopo
Mediante la lista parziale con ID SZL W#16xy11 si ricava l'identificazione di una determinata unità.
Intestazione
L'intestazione della SZL con ID SZL W#16#xy11 è strutturata come segue:
Contenuto Significato
SZL_ID ID SZL dell'estratto della lista parziale
W#16#0111: un singolo set di dati di identificazione
INDEX Numero di un determinato set di dati
W#16#0001: Identificazione dell'unità
W#16#0004: Identificazione della System Expansion Card
W#16#0006: Identificazione dell'hardware di base
W#16#0007: Identificazione del firmware di base
LENTHDR W#16#001C:un set di dati è lungo 14 parole (28 byte)
N_DR Numero dei set di dati
Set di dati
Un set di dati della SZL con ID SZL W#16#xy11 ha la seguente struttura:
Scopo
Unità del tipo CPU possiedono una serie di caratteristiche che dipendono dal relativo hardware. Ad
ognuna di queste caratteristiche è assegnato un codice. Mediante la SZL con ID SZL W#16#xy12 si
ricavano le caratteristiche dell'unità.
Intestazione
L'intestazione della SZL con ID SZL W#16#xy12 è strutturata come segue:
Contenuto Significato
SZL_ID ID SZL della lista parziale SZL:
W#16#0012: tutte le caratteristiche
W#16#0112: caratteristiche di un gruppo
Il gruppo si indica nel parametro INDEX
W#16#0F12: solo intestazione della lista parziale SZL
INDEX Gruppo
W#16#0000: unità di elaborazione MC7
W#16#0100: sistema temporale
W#16#0200: comportamento del sistema
W#16#0300: descrizione del linguaggio MC7 della CPU
W#16#0400: disponibilità di SFC 87 e SFC 88
LENTHDR W#16#0002: un set di dati è lungo 1 parola (2 byte)
N_DR Numero dei set di dati
Set di dati
Un set di dati della SZL con ID SZL W#16#xy12 è lungo una parola. Per ogni caratteristica presente
è assegnato un codice. Tale codice di caratteristica è lungo 1 parola.
Avvertenza
Tutti i set di dati rilevanti per la CPU vengono visualizzati in sequenza senza spazi vuoti.
Codice Significato
W#16#0000 - 00FF Unità di elaborazione MC7 (gruppo con indice 0000)
W#16#0001 Elaborazione MC7 con generazione di linguaggio macchina
W#16#0002 Interprete del linguaggio MC7
W#16#0100 - 01FF Sistema temporale (gruppo con indice 0100)
W#16#0101 Scansione temporale di 1 ms
W#16#0102 Scansione temporale di 10 ms
W#16#0103 Nessun orologio hardware
W#16#0104 Formato dell'orario BCD
W#16#0105 Funzionalità completa dell’orologio (impostazione orologio, impostazione e
lettura stato dell’orologio, sincronizzazione dell’orologio: slave dell’orologio
e master dell’orologio)
W#16#0106 SFC 78 "OB_RT" disponibile
W#16#0200 - 02FF Comportamento del sistema (gruppo con indice 0200)
W#16#0201 Funzionalità multiprocessore
W#16#0202 Avviamento a freddo, nuovo avviamento (avviamento a caldo) e
riavviamento disponibili
W#16#0203 Avviamento a freddo e nuovo avviamento (avviamento a caldo) disponibili
W#16#0204 Nuovo avviamento (avviamento a caldo) e riavviamento disponibili
W#16#0205 Solo nuovo avviamento (avviamento a caldo) disponibile
W#16#0206 Possibilità di riconfigurazione in RUN per periferia decentrata con l’impiego
di riserve predefinite
W#16#0207 CPU H nel funzionamento singolo: riconfigurazione in RUN per periferia
decentrata con l’impiego di riserve predefinite
W#16#0208 In considerazione della funzionalità Motion Control
W#16#0300 - 03FF Descrizione del linguaggio MC7 della CPU (gruppo con indice 0300)
W#16#0301 Riservato
W#16#0302 Tutti i comandi con operandi interi a 32 bit
W#16#0303 Tutti i comandi per operazioni su numeri in virgola mobile
W#16#0304 Sin, asin, cos, acos, tan, atan, sqr, sqrt, ln, exp
W#16#0305 ACCU3/ACCU4 con i comandi corrispondenti (ENT,PUSH,POP,LEAVE)
W#16#0306 Comandi per il relè master control
W#16#0307 Registro di indirizzo 1 presente con i corrispondenti comandi
W#16#0308 Registro di indirizzo 2 presente con i corrispondenti comandi
W#16#0309 Comandi per indirizzamento oltre i limiti dell'area
W#16#030A Comandi per indirizzamento interno alla memoria
W#16#030B Tutti i comandi per indirizzamento indiretto di memoria tramite M
W#16#030C Tutti i comandi per indirizzamento indiretto di memoria tramite DB
W#16#030D Tutti i comandi per indirizzamento indiretto di memoria tramite DI
W#16#030E Tutti i comandi per indirizzamento indiretto di memoria tramite LD
Codice Significato
W#16#030F Tutti i comandi per il trasferimento di parametri in FC
W#16#0310 Comandi di merker di fronte tramite E
W#16#0311 Comandi di merker di fronte tramite A
W#16#0312 Comandi di merker di fronte tramite M
W#16#0313 Comandi di merker di fronte tramite DB
W#16#0314 Comandi di merker di fronte tramite DI
W#16#0315 Comandi di merker di fronte tramite LD
W#16#0316 Interrogazione dinamica del bit ERAB
W#16#0317 Campo dinamico dei dati locali con i corrispondenti comandi
W#16#0318 Riservato
W#16#0319 Riservato
Scopo
Mediante la SZL con ID SZL W#16#xy13 si ricavano informazioni relative alle aree di memoria
dell'unità.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#xy13 è strutturata come segue:
Contenuto Significato
SZL_ID ID SZL della lista parziale SZL
W#16#0113: set di dati per un'area di memoria
L'area di memoria si assegna mediante il parametro INDEX
INDEX Indicazione di un'area di memoria (solo per ID SZL W#16# 0113)
W#16#0001: Memoria di lavoro
LENTHDR W#16#0024: un set di dati è lungo 18 parola (36 byte)
N_DR Numero dei set di dati
Set di dati
Un set di dati della lista parziale SZL con ID SZL W#16#xy13 ha la seguente struttura:
Scopo
Mediante la SZL con ID SZL W#16#xy14 si ricavano informazioni relative alle aree di sistema
dell'unità.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#xy14 è strutturata come segue:
Contenuto Significato
SZL_ID ID SZL dell'estratto della lista parziale
W#16#0014: Tutte le aree di sistema di un'unità
W#16#0F14: Solo intestazione della lista parziale SZL
INDEX Irrilevante:
LENTHDR W#16#0008: un set di dati è lungo 4 parole (8 byte)
N_DR Numero dei set di dati
Impostare il numero di record di dati almeno a 9. Se si sceglie un'area di destinazione
troppo piccola, la SFC 51 non fornisce alcun record di dati.
Set di dati
Un set di dati della SZL con ID SZL W#16#xy14 ha la seguente struttura:
Scopo
Mediante la SZL con ID SZL W#16#xy15 si ricavano i tipi di blocchi presenti in un'unità.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#xy15 è strutturata come segue:
Contenuto Significato
SZL_ID ID SZL dell'estratto della lista parziale
W#16#0015: Set di dati di tutti i tipi di blocchi di un'unità
INDEX Irrilevante
LENTHDR W#16#000A: un set di dati è lungo 5 parole (10 byte)
N_DR Numero dei set di dati
Set di dati
Un set di dati della SZL con ID SZL W#16#xy15 ha la seguente struttura:
Scopo
Mediante la SZL con ID SZL W#16#xy1C è possibile identificare la CPU o il sistema di automazione.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#xy1C è strutturata come segue:
Contenuto Significato
ID_SZL ID SZL dell'estratto della lista parziale
W#16#001C: Identificazione di tutti i componenti
W#16#011C: Identificazione di un componente
W#16#021C: Identificazione di tutti i componenti di una CPU di un sistema H
W#16#031C Identificazione di un componente di tutte le CPU ridondate di un
sistema H
W#16#0F1C: Solo informazione dell'intestazione della lista parziale SZL
INDEX • Identificazione del componente per estratto della lista parziale con ID SZL
W#16#011C e W#16#031C
- W#16#0001: Nome del sistema di automazione
- W#16#0002: Nome dell'unità
- W#16#0003: Sigla impianto dell'unità
- W#16#0004: Registrazione copyright
- W#16#0005: Numero di serie dell'unità
- W#16#0007: Nome del tipo di unità
- W#16#0008: Numero di serie della memory card
Le unità che non alloggiano memory card non vengono fornite
con set di dati
- W#16#0009: Produttore e profilo di un'unità CPU
- W#16#000A: Identificazione OEM di un'unità (solo S7-300)
- W#16#000B: Sigla topologica di un'unità
- W#16#000C: Numero di serie del modulo Sync 1
- W#16#000D: Numero di serie del modulo Sync 2
- W#16#000E: Numero di serie della scheda System Expansion Card
• N. di rack per l'estratto della lista parziale con ID SZL W#16#021C (byte0: n. rack,
byte1: B#16#00)
LENTHDR W#16#0022: Un set di dati è lungo 17 parole (34 byte)
N_DR Numero dei set di dati
Dati in dotazione
Negli elenchi parziali con gli ID SZL W#16#011C e W#16#031C, i dati in dotazione del set di dati, o
dei set di dati, sono formati esattamente da un INDEX.
Negli elenchi parziali con gli ID SZL W#16#001C e W#16#021C i dati in dotazione sono formati dalla
totalità di tutti i set di dati possibili.
Avvertenza
Con il richiamo dell‘SFC 51 con gli ID SZL W#16#001C e W#16#021C, il parametro di richiamo
INDEX ha un significato diverso da quello attribuitogli nei set di dati restituiti.
Con l‘ID SZL W#16#001C il parametro INDEX è irrilevante, con l‘ID SZL W#16#021C, nel
parametro di richiamo INDEX viene inoltrato il numero del rack (0 o 1).
Set di dati
Un set di dati della lista parziale con ID SZL W#16#xy1C ha la seguente struttura:
• INDEX = W#16#0001
• INDEX = W#16#0002
• INDEX = W#16#0003
• INDEX = W#16#0004
• INDEX = W#16#0005
• INDEX = W#16#0007
• INDEX = W#16#0008
• INDEX = W#16#0009
• INDEX = W#16#000A
• INDEX = W#16#000B
• INDEX = W#16#000C
Avvertenza
Se il modulo Sync 1 non è disponibile o non può essere identificato, al set di dati che segue la
variabile "Index" viene assegnato B#16#00.
• INDEX = W#16#000D
Avvertenza
Se il modulo Sync 2 non è disponibile o non può essere identificato, al set di dati che segue la
variabile "Index" viene assegnatot B#16#00.
• INDEX = W#16#000E
Scopo
La lista parziale con ID SZL W#16#xy22 fornisce informazioni sullo stato attuale di elaborazione e la
generazione degli allarmi dell'unità.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#xy22 ha la struttura seguente:
Contenuto Significato
ID SZL ID SZL dell'estratto della lista parziale
W#16#0222 Set di dati dell'allarme indicato. L'allarme
(n° OB) va indicato nel parametro INDEX.
INDEX Classe di allarme o n° di OB (con ID SZL W#16#0222)
W#16#0000: Ciclo libero
W#16#000A: Allarme dall'orologio
W#16#0014: Allarme di ritardo
W#16#001E: Schedulazione orologio
W#16#0028: Interrupt di processo
W#16#0032 Allarme DP
W#16#003C Allarme di multicomputing o in sincronismo di clock
W#16#0048: Allarme di ridondanza (solo sistemi S7-400H)
W#16#0050: Allarme di errori di asincronismo
W#16#005A: Background
W#16#0064 Avviamento
W#16#0078: Allarme di errori di sincronismo
Set di dati
Un set di dati della lista parziale con ID SZL W#16#xy22 ha la struttura seguente:
Scopo
Mediante la lista parziale con ID SZL W#16#xy25 si ricava l’assegnazione tra immagini di processo
parziali e OB.
La lista parziale fornisce informazioni su
• Immagini di processo parziali assegnate a singoli OB per l’aggiornamento da parte del sistema
• Immagini di processo parziali assegnate a singoli OB di allarme in sincronismo di clock (da
OB 61 a 64). In questo caso le immagini di processo parziali vengono aggiornate richiamando le
SFC 126 "SYNC_PI" e 127 "SYNC_PO".
L’assegnazione tra sistemi master DP e gli OB di allarme in sincronismo di clock avviene per
mezzo della SZL W#16#xy95.
Intestazione
L'intestazione della SZL con ID SZL W#16#xy25 è strutturata come segue:
Contenuto Significato
ID SZL L’ID SZL dell’estratto della lista parziale
• W#16#0025: assegnazione tra tutte le immagini di processo parziali e gli OB all’interno
della CPU
• W#16#0125: assegnazione tra un immagine di processo parziale e il rispettivo OB
Il numero dell’immagine di processo parziale si indica nel parametro INDEX.
• W#16#0225: assegnazione tra un OB e le rispettive immagini di processo parziali
Il numero dell’OB si indica nel parametro INDEX.
Avvertenza: è possibile assegnare più immagini di processo parziali solamente agli
OB di allarme in sincronismo di clock (da OB 61 a 64).
• W#16#0F25: solo informazioni sull’intestazione della lista parziale SZL
INDEX • Per ID SZL W#16#0025: irrilevante
• Per ID SZL W#16#0125: n. di immagine di processo parziale
• Per ID SZL W#16#0225: n. OB
• PEr ID SZL W#16#0F25: irrilevante
LENTHDR W#16#0004: un set di dati è lungo 2 parole (4 byte)
N_DR Numero dei set di dati
Set di dati
Un set di dati dell’estratto della lista parziale con ID SZL W#16#xy25 ha la seguente struttura:
Avvertenza
All’immagine di processo 0 è assegnato in modo fisso l’OB 1. Con l’informazione sull’immagine di
processo parziale 0 si riceve sempre un set di dati.
Avvertenza
Agli OB di allarme in sincronismo di clock si possono assegnare più immagini di processo parziali. In
questo caso vengono forniti più set di dati.
Scopo
Mediante la lista parziale con ID SZL W#16#xy32 si ricavano i dati di stato della comunicazione
dell'unità.
Intestazione
L'intestazione dell'estratto della lista parziale con ID SZL W#16#xy32 è strutturata come segue:
Contenuto Significato
SZL_ID ID SZL dell'estratto della lista parziale
• W#16#0132: tutti i dati sullo stato di una parte di comunicazione (sempre solo un set
di dati). La parte di comunicazione si indica nel parametro INDEX
• W#16#0232: dati sullo stato di una parte di comunicazione (con un sistema H nello
stato di funzionamento RUN-REDUNDANT o singolo vengono ritrasferiti 2 set di
dati). La parte di comunicazione si indica nel parametro INDEX
INDEX Parte di comunicazione
• Perr SZL-ID W#16#0132:
- W#16#0005 Diagnostica
- W#16#0008 Sistema temporale
- W#16#000B Sistema temporale
- W#16#000C Sistema temporale
• Per SZL-ID W#16#0232:
- W#16#0004 ivello di protezione CPU, posizioni del selettore di comando e
somme di controllo
LENTHDR W#16#0028: un set di dati è lungo 20 parole (40 byte)
N_DR Numero dei set di dati
Set di dati
Un set di dati della lista parziale con ID SZL W#16#xy32 è lungo sempre 20 parole. I set di dati sono
configurati in maniera differente. Tale configurazione dipende dal parametro INDEX, ossia varia a
seconda della parte di comunicazione alla quale appartiene il set di dati.
34.14 Set di dati dell'estratto della lista parziale con ID SZL W#16#0132
Indice W#16#0005
Contenuto
L'estratto della lista parziale con ID SZL W#16#0132 e con Indice W#16#0005 contiene informazioni
sullo stato della diagnostica dell'unità.
Set di dati
Un set di dati della lista parziale con ID SZL W#16#0132 e con Indice W#16#0005 ha la seguente
struttura:
34.15 Set di dati dell'estratto della lista parziale con ID SZL W#16#0132
Indice W#16#0008
Contenuto
L'estratto della lista parziale con ID SZL W#16#0132 e con Indice W#16#0008 contiene informazioni
sullo stato del sistema temporale dell'unità.
Set di dati
Un set di dati della lista parziale con ID SZL W#16#0132 e con Indice W#16#0008 ha la seguente
struttura:
stato
34.16 Set di dati dell’estratto della lista parziale con ID SZL W#16#0132
Indice W#16#000B
Contenuto
L’estratto della lista parziale con ID SZL W#16#0132 e con Indice W#16#000B contiene informazioni
sullo stato dei contatori del tempo di esercizio a 32 bit da 0 a 7 dell’unità.
Avvertenza
Nell’estratto della lista parziale con ID SZL W#16#0132 e con Indice W#16#0008 questi contatori del
tempo d’esercizio vengono indicati come contatori del tempo di esercizio a 16 bit.
Questo consente di continuare a utilizzare programmi concepiti per una CPU con contatori del tempo
d’esercizio a 16 bit, oltre a quelli per l’estratto della lista parziale con ID SZL W#16#0132 e con Indice
W#16#0008.
Set di dati
Un set di dati della lista parziale con ID SZL W#16#0132 e con Indice W#16#000B ha la seguente
struttura:
34.17 Set di dati dell’estratto della lista parziale con ID SZL W#16#0132
Indice W#16#000C
Contenuto
L’estratto della lista parziale con ID SZL W#16#0132 e con Indice W#16#000C contiene informazioni
sullo stato dei contatori del tempo di esercizio a 32 bit da 8 a 15 dell’unità.
Set di dati
Un set di dati della lista parziale con ID SZL W#16#0132 e con Indice W#16#000C ha la seguente
struttura:
34.18 Set di dati dell'estratto della lista parziale con ID SZL W#16#0232
Indice W#16#0004
Contenuto
L'estratto della lista parziale con ID SZL W#16#0232 e con indice W#16#0004 contiene informazioni
sul livello di protezione della CPU, le posizioni del selettore di comando e delle somme di controllo
della configurazione hardware e del programma utente.
Avvertenza
Nel caso di un sistema H nello stato di funzionamento RUN-RIDONDATO vengono ritrasferiti due set
di dati di cui è valido solo quello che ha un valore diverso da zero nel byte 0 della parola "Index".
Nel caso di un sistema H in stato di funzionamento singolo viene restituito un set di dati.
Set di dati
Un set di dati dell'estratto della lista parziale con ID SZL W#16#0232 e con Indice W#16#0004 ha la
seguente struttura:
Scopo
Mediante la lista parziale con ID SZL W#16#0071 si ricavano informazioni sullo stato attuale del
sistema H.
Intestazione
L'intestazione con ID SZL W#16#xy71 è strutturata come segue:
Contenuto Significato
SZL_ID ID SZL dell'estratto della lista parziale:
W#16#0071: Informazioni sullo stato attuale del sistema H
W#16#0F71: Solo informazioni sull'intestazione della lista parziale SZL
INDEX W#16#0000
LENTHDR W#16#0010: Un set di dati è lungo 8 parole (16 byte)
N_DR W#16#0001: Numero dei set di dati
Set di dati
Un set di dati della lista parziale con ID W#16#xy71 ha la struttura seguente:
Scopo
Mediante la lista parziale con ID SZL W#16#0074 si ricava lo stato dei LED dell'unità con le CPU
standard (purché presenti) e le CPU H.
Se le CPU H si trovano in uno stato di funzionamento H non ridondato esse ricevono lo stato dei LED
delle CPU indirizzate. In caso di CPU H nello stato di funzionamento RUN-REDUNDANT viene
fornito lo stato dei LED di tutte le CPU H ridondate, ovvero 2 set di dati.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#xy74 è strutturata come segue:
Contenuto Significato
SZL_ID ID SZL dell‘estratto della lista parziale
W#16#0174 Stato di un LED.
I LED vengono selezionati mediante il parametro INDEX.
Contenuto Significato
INDEX Identificazione LED (rilevante solo per ID SZL W#16#0174)
W#16#0001: SF (errore cumulativo)
W#16#0002: INTF (errore interno)
W#16#0003: EXTF (errore esterno)
W#16#0004: RUN
W#16#0005: STOP
W#16#0006: FRCE (forzamento)
W#16#0007: CRST (nuovo avviamento)
W#16#0008: BAF (errore batteria/sovraccarico,
cortocircuito tensione batteria sul bus)
W#16#0009: USR (definito dall'utente)
W#16#000A: USR1 (definito dall'utente)
W#16#000B: BUS1F (errore di bus interfaccia 1)
W#16#000C: BUS2F (errore di bus interfaccia 2)
e BUS5F (errore di bus interfaccia 5) nelle
CPU 414-3 PN/DP,416-3 PN/DP e 416F-3 PN/DP
W#16#000D: REDF (errore di ridondanza)
W#16#000E: MSTR (master)
W#16#000F: RACK0 (telaio di montaggio n° 0)
W#16#0010: RACK1 (telaio di montaggio n° 1)
W#16#0011: RACK2 (telaio di montaggio n° 2)
W#16#0012: IFM1F (errore modulo di interfaccia 1)
W#16#0013: IFM2F (errore modulo di interfaccia 2)
W#16#0014: BUS3F (errore di bus interfaccia 3)
W#16#0015: MAINT (richiesta di manutenzione)
W#16#0016: DC24V
W#16#0017: BUS5F (errore di bus interfaccia 5)
W#16#0018: BUS8F (errore di bus interfaccia 8)
Set di dati
Nelle CPU H nello stato di funzionamento RUN RIDONDANTE è in dotazione un set di dati per
ciascuna CPU: nel primo set di dati è memorizzata l’informazione LED della CPU master attuale, nel
secondo set di dati è memorizzata l’informazione LED della CPU di riserva attuale.
Un set di dati della lista parziale con ID SZL W#16#xy74 ha la struttura seguente:
Scopo
Nelle CPU di un sistema H che si trova in uno stato di funzionamento ridondante, la lista parziale con
ID SZL W#16#xy75 consente di ricavare informazioni sullo stato della comunicazione tra il sistema
H e gli slave DP / IO Device connessi.
La lista parziale indica in quale rack è inserita l'interfaccia del master DP / IO Controller tramite il
quale ha luogo la comunicazione con uno slave DP / IO Controller.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#xy75 è strutturata come segue:
Contenuto Significato
SZL_ID ID SZL dell‘estratto della lista parziale :
W#16#0C75: stato della comunicazione tra il sistema H e uno slave DP / IO
Device connesso.
Lo slave DP / IO Device può essere selezionato con i parametro
INDEX.
INDEX Indirizzo di diagnostica delle connessioni dello slave DP / IO Device
LENTHDR W#16#0010: un set di dati ha una lunghezza di 8 parole (16 byte)
N_DR W#16#0001: numero di set di dati
Set di dati
Un set di dati della lista parziale con l'ID SZL W#16#xy75 è strutturato come segue:
Scopo
La lista parziale con ID SZL W#16#xy90 fornisce informazioni sullo stato di tutti i sistemi master DP
conosciuti alla CPU.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#xy90 ha la struttura seguente:
Contenuto Significato
SZL_ID ID SZL dell'estratto della lista parziale
W#16#0090: Informazioni su tutti i sistemi master DP conosciuti alla CPU
W#16#0190: Informazioni su un sistema master DP
W#16#0F90: Solo informazione dell'intestazione della lista parziale SZL
INDEX • Per l'estratto della lista parziale con ID SZL W#16#0190:
- Low Byte: B#16#00
- High Byte: ID sistema master DP
• Per gli estratti della lista parziale con ID SZL W#16#0090 e W#16#0F90:
- W#16#0000
LENTHDR W#16#000E: Un set di dati è lungo 7 parole (14 byte)
N_DR Numero die set di dati
• Per l'estratto della lista parziale con ID SZL W#16#0190:
0-1
• Per l'estratto della lista parziale con ID SZL W#16#0090:
con una CPU standard:
0 - 14
Con un sistema H:
0 - 12 (in tutti gli stati di sistema tranne quello ridondato)
0 - 2 x 12 (nello stato di sistema ridondato)
Set di dati
Un set di dati della lista parziale con ID W#16#xy90 ha la seguente struttura:
Scopo
Mediante la lista parziale con ID SZL W#16#xy91 si ricavano informazioni sullo stato di tutte le unità
assegnate alla CPU.
Avvertenza
Non è possibile analizzare l'ID SZL W#16#xy91 per un modulo con indirizzi compressi (ET 200S).
Intestazione
L'intestazione della lista parziale con ID SZL W#16#xy91 è strutturata come segue:
Contenuto Significato
SZL-ID ID SZL dell'estratto della lista parziale
W#16#0091 Informazione di stato di tutte le unità e i sottomoduli inseriti e progettati
della CPU (solo S7-400)
W#16#0191 Informazione di stato di tutte le unità e i telai non disattivati con
identificazione errata (solo S7-400)
W#16#0291 Informazione di stato di tutte le unità guaste e non disattivate (solo
S7-400)
W#16#0391 Informazione di stato di tutte le unità non disponibili (solo S7-400)
W#16#0591 Informazione di stato di tutti i sottomoduli dell'unità host
W#16#0991 Informazione di stato di un sistema master DP
W#16#0A91 Informazione di stato di tutti i sottosistemi DP e i sistemi master DP (solo
S7-300 senza CPU 318-2 DP) e nei sistemi PROFINET IO.
W#16#0C91 Informazione di stato di un'unità in configurazione centrale o in
un'interfaccia DP o PROFINET integrata tramite indirizzo logico di base.
W#16#4C91 Informazione di stato di un'unità in un'interfaccia DP esterna tramite
indirizzo logico di base.
L'impiego di più di 4 interfacce DP può comportare l'emissione erronea
di RET_VAL W#16#80A4.
W#16#0D91 Informazione di stato di tutte le unità nel telaio o nella stazione indicati
(DP o PROFINET) e collegati all’interfaccia integrata
W#16#0E91 Informazione di stato di tutte le unità assegnate
W#16#0F91 Soltanto l'informazione dell'intestazione della lista parziale SZL
Contenuto Significato
INDEX • Per l'estratto della lista parziale con ID SZL W#16#0C91:
- S7-400: bit 0 ... 14: indirizzo di base logico dell'unità.
bit 15: 0 = ingresso, 1 = uscita
- S7-300: bit 0...14: qualunque indirizzo logico dell'unità,
bit 15: 0 = ingresso, 1 = uscita
• Per l'estratto della lista parziale con ID SZL W#16#4C91 (solo S7-400):
Bit 0 … 14: indirizzo di base logico dell'unità, bit 15: 0 = ingresso, 1= uscita
• Per l'estratto della lista parziale con ID SZL W#16#0091, W#16#0191,W#16#0291,
W#16#0391, W#16#0491, W#16#0591, W#16#0A91, W#16#0E91, W#16#0F91:
INDEX è irrilevante, tutte le unità (nel telaio di montaggio e nella periferia decentrata)
• Per l'estratto della lista parziale con ID SZL W#16#0991 (solo S7-400):
W#16#xx00: tutte le unità di un sistema master DP (xx contiene l'ID del sistema
master DP)
• Per l'estratto della lista parziale con ID SZL W#16#0D91
- W#16#00xx tutte le unità e i sottomoduli di un telaio di montaggio (xx contiene il
numero del telaio)
- W#16#xxyy tutte le unità di una stazione DP oppure tutti gli I/O Device di una
stazione PROFINET IO collegata ad un’interfaccia integrata (PROFIBUS DP: xx
contiene l'ID del sistema master DP yy il numero della stazione, PROFINET IO:
bit 0 ... 10: numero della stazione, bit 11 ... 14: gli ultimi due posti dell'ID del
sottosistema PNIO, bit 15: 1 (vedere la terza figura sottostante all'indirizzo1)
LENTHDR W#16#0010: un set di dati è lungo 8 parole (16 byte)
N_DR Numero dei set di dati; a seconda del prodotto il numero dei set di dati dell'SFC 51 può
essere inferiore
In W#16#0091, W#16#0191 e W#16#0F91 vengono forniti altri due set di dati per ciascun telaio di
montaggio:
• un set di dati per l'alimentazione, a meno che sia presente e sia stato progettato
• un set di dati per il telaio di montaggio.
• La sequenza dei set di dati nella configurazione centrale comprende: PS, posto connettore 1,
posto connettore 2, ..., posto connettore 18, telaio di montaggio.
Set di dati
Un set di dati della lista parziale con ID SZL W#16#xy91 ha la seguente struttura:
Parametro adr1
Il parametro adr1 contiene:
• il numero di telaio (0-31) in caso di configurazione centrale
Parametro adr2
Il parametro adr2 contiene:
• con configurazione centrale e decentrata con PROFIBUS DP, il numero di posto connettore e il
numero di posto connettore dei sottomoduli.
ID tipo Significato
(W#16#...)
8100 Viene registrato nel tipo prefissato e attuale se non è possibile eseguire una verifica del tipo
8101 Viene registrato nel tipo prefissato se la verifica del tipo è possibile
8101 Viene registrato come tipo attuale se prefissato=attuale
8102 Viene registrato come tipo attuale se prefissato<>attuale
Scopo
Tramite la lista parziale con ID SZL W#16#xy92 si ricavano informazioni sulla struttura prefissata e
su quella attuale di telai di montaggio nella configurazione centrale e nelle stazioni di un sistema
master DP.
Lettura della lista parziale mediante la SFC 51 "RDSYSST" in una CPU S7-400
Quando si legge la SZL con la SFC 51 è importante accertarsi che i parametri SZL_ID e INDEX
dell'SFC 51 siano compatibili.
SZL_ID INDEX
W#16#0092 oppure ID di un sistema master DP connesso mediante
W#16#0192 oppure interfaccia DP integrata.
W#16#0292 oppure
W#16#0392 oppure
W#16#0492 oppure
W#16#0592 oppure
W#16#0692 oppure
W#16#4092 oppure ID di un sistema master DP connesso mediante
W#16#4292 oppure interfaccia DP esterna.
W#16#4692 oppure
Intestazione
L'intestazione della lista parziale con ID SZL W#16#xy92 è strutturata come segue:
Contenuto Significato
SZL_ID • ID SZL dell'estratto della lista parziale:
• W#16#0092: stato prefissato dei telai di montaggio con configurazione centrale /
delle stazioni di un sistema master DP collegato mediante interfaccia DP integrata
• W#16#4092: stato prefissato delle stazioni di un sistema master DP collegato
mediante interfaccia DP esterna
• W#16#0192: stato di attivazione delle stazioni di un sistema master DP connesso
mediante interfaccia DP integrata
• W#16#0292: stato attuale dei telai di montaggio con configurazione centrale / delle
stazioni di un sistema master DP collegato mediante interfaccia DP esterna
• W#16#0392: stato di alimentazione della batteria di un rack / telaio di montaggio di
una CPU se è guasta almeno una batteria
• W#16#0492: stato dell'intera alimentazione della batteria di tutti i rack / telai di
montaggio di una CPU
• W#16#0592: stato dell'alimentazione a 24 V di tutti i rack / telai di montaggio di una
CPU
• W#16#4292: stato attuale delle stazioni di un sistema master DP collegato mediante
interfaccia DP esterna
• W#16#0692: stato di diagnostica delle apparecchiature di ampliamento con
configurazione centrale / delle stazioni di un sistema master DP collegato mediante
interfaccia DP integrata
• W#16#4692: stato di diagnostica delle stazioni di un sistema master DP collegato
mediante interfaccia DP esterna
INDEX 0/ ID del sistema master DP
LENTHDR W#16#0010: set di dati lungo otto parole (16 byte)
N_DR Numero dei set di dati
Set di dati
Un set di dati nella lista parziale con ID W#16#xy92 ha la seguente struttura:
Scopo
La lista parziale con ID SZL W#16#0x94 fornisce informazioni sulla configurazione prefissata e
quella attuale di telai di montaggio in presenza di una configurazione centrale e stazioni di un sistema
master PROFIBUS DP/sistema di controller PROFINET IO.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#0y94 ha la struttura seguente:
Contenuto Significato
ID SZL ID SZL dell'estratto della lista parziale:
• W#16#0094:
stato prefissato dei telai di montaggio con configurazione centrale / delle stazioni di un
sistema IO Controller
(bit di stato = 1: rack/stazione progettati)
• W#16#0194:
stato di attivazione di una stazione di un sistema IO Controller progettata e disattivata
(bit di stato =1)
• W#16#0294:
stato attuale del rack nella configurazione centrale / delle stazioni di un sistema IO
Controller
(bit di stato = 1: rack/stazione disponibili, attivati e non guasti)
• W#16#0694:
stato della diagnostica delle apparecchiature di ampliamento nella configurazione
centrale / delle stazioni di un sistema IO Controller
(bit di stato = 1: almeno un'unità del rack/della stazione è guasta o disattivata)
• W#16#0794:
stato di diagnostica / manutenzione del rack centrale / delle stazioni di un sistema IO
Controller (bit di stato = 0: nessun guasto, manutenzione non necessaria; bit di
stato = 1: rack / stazione guasti e/o manutenzione necessaria e/o richiesta di
manutenzione)
• W#16#0F94:
soltanto informazioni dell'intestazione
INDEX 0: unità centrale
1-32: unità decentrata nel PROFIBUS DP
100-115: unità decentrata in PROFINET IO
LENTHDR Lunghezza del set di dati successivo
N_DR Numero dei set di dati
Set di dati
Un set di dati della lista parziale con ID W#16#0y94 ha la struttura seguente:
Avvertenza
Differenza importante rispetto alla precedente SZL con ID W#16#xy92:
rispetto alla precedente SZL ID W#16#xy92 i dati sono stati spostati di un bit in quanto il bit status_0
ha funzione di informazione cumulativa.
Scopo
La lista parziale con ID SZL W#16#xy95 fornisce informazioni supplementari sullo stato di tutti i
sistemi master DP/PROFINET IO conosciuti alla CPU. Rispetto alla lista parziale con ID SZL
W#16#xy90 la suddetta lista contiene informazioni sui sistemi PROFINET IO e informazioni
supplementari sul sincronismo di clock di un sistema master DP.
Intestazione
L’intestazione della lista parziale con DI SZL W#16#xy95 ha la struttura seguente:
Contenuto Significato
ID SZL ID SZL dell’estratto della lista parziale
W#16#0195: Informazioni supplementari su un sistema master DP/PROFINET IO
W#16#0F95: Solo informazione sull’intestazione della lista parziale SZL
INDEX • Per l’estratto della lista parziale con ID SZL W#16#0195:
Low Byte: B#16#00
High Byte: ID sistema master DP / PROFINET IO
• Per l’estratto della lista parziale con ID SZL W#16#0F95:
W#16#0000
LENTHDR W#16#0028: Un set di dati è lungo 20 parole (40 byte)
N_DR Numero dei set di dati:
Per l’estratto della lista parziale con ID SZL W#16#0195: da 0 a 1
Set di dati
Un set di dati della lista parziale con ID W#16#xy95 ha la seguente struttura:
Scopo
La lista parziale con ID SZL W#16#xy96 fornisce informazioni supplementari su tutte le unità
assegnate alla CPU.
Oltre alla ID SZL W#16#xy91 viene messa a disposizione la lista parziale con ID SZL W#16#xy96
complementare, che contiene ulteriori dati sullo stato dei moduli e dei sottomoduli.
Le informazioni fornite riguardano sia PROFINET IO nello specifico che le unità PROFIBUS DP e le
unità centrali.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#xy96 ha la struttura seguente:
Contenuto Significato
ID SZL ID SZL dell'estratto della lista parziale
• W#16#0696
informazione sullo stato dell'unità di tutti i sottomoduli di un'unità indicata (con
PROFIBUS DP e unità centrali il livello dei sottomoduli non è disponibile).
• W#16#0C96
informazione sullo stato di un'unità/sottomodulo centrale o collegata a un'interfaccia
PROFIBUS DP/PROFINET tramite indirizzo iniziale.
INDEX Bit 0 ... 14: indirizzo dell'unità
Bit 15: 0 = ingresso, 1 = uscita
LENTHDR Lunghezza del set di dati successivo
N_DR Numero dei set di dati
Set di dati
Un set di dati della lista parziale con ID W#16#xy96 ha la struttura seguente:
Scopo
La lista parziale con ID SZL W#16#xy9C fornisce informazioni sui commutatori (del controllo
numerico) progettati e sui relativi utensili.
I commutatori sono IO Device che gestiscono degli utensili. Un utensile è costituito da uno o più IO
Device. Ogni utensile è assegnato in modo univoco a una porta di un commutatore.
Al cambio utensile vengono dapprima disattivati tutti gli IO Device appartenenti all'utensile attivo,
quindi vengono attivati tutti gli IO Device appartenenti al nuovo utensile. Disattivazione e attivazione
sono eseguite dall'SFC 12.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#xy9C ha la struttura seguente:
Contenuto Significato
ID SZL ID SZL dell'estratto della lista parziale
• W#16#009C
Informazioni su tutti i commutatori e sui relativi utensili in un sistema PROFINET IO
• W#16#019C
Informazioni su tutti i commutatori in un sistema PROFINET IO
• W#16#029C
Informazioni su un commutatori e sui relativi utensili
• W#16#039C
Informazioni su un utensile e sui relativi IO Device
• W#16#0F9C
Solo informazione intestazione della lista parziale SZL
INDEX Per l'estratto della lista parziale con ID SZL
• W#16#009C: ID del sistema PROFINET IO
• W#16#019C: ID del sistema PROFINET IO
• W#16#029C: indirizzo logico del commutatore
• W#16#039C: indirizzo logico di un qualsiasi IO Device dell'utensile
• W#16#0F9C: ID del sistema PROFINET IO
LENTHDR W#16#000C (lunghezza del set di dati successivo in byte: 12)
N_DR Numero dei set di dati
Set di dati
Un set di dati della lista parziale con ID W#16#xy9C ha la struttura seguente:
Avvertenza
Se un commutatore è dotato di più porte per la gestione degli utensili, viene fornito un set di dati per
ciascuna porta.
Esempio
L'esempio seguente spiega ulteriormente l'utilizzo delle singole liste parziali.
Nel ramo di un sistema PROFINET IO si trovano due commutatori (IOD 3 e IOD 10) i cui utensili
hanno la seguente struttura:
• Commutatore IOD 3 con gli utensili seguenti nella porta 2:
- Utensile 1 (IOD 4, IOD 5 e IOD 6)
- Utensile 2 (IOD 7)
- Utensile 3 (IOD 8 e IOD 9)
• Commutatore IOD 10 con due porte, ciascuna delle quali è dotata di due utensili
- Porta del commutatore 3: utensile 1 (IOD 11 e IOD 12), utensile 2 (IOD 13)
- Porta del commutatore 4: utensile 1 (IOD 14, IOD 15 e IOD 16), utensile 2 (IOD 17 e
IOD 18)
Scopo
Mediante la lista parziale con ID SZL W#16#xyA0 si ricavano le registrazioni nel buffer di
diagnostica dell'unità.
Avvertenza
Le CPU S7-300 forniscono un numero massimo di set di dati pari a quello delle registrazioni di
diagnostica visualizzate in stato di funzionamento RUN (valore preimpostato: 10). Le CPU S7-400
forniscono max. 21 set di dati.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#xyA0 è strutturata come segue:
Contenuto Significato
SZL_ID ID SZL dell'estratto della lista parziale:
W#16#00A0: tutte le registrazioni fornibili nell'attuale stato di funzionamento
W#16#01A0: le registrazioni più recenti; il numero delle registrazioni più recenti si
indica mediante il parametro INDEX.
Se il numero di messaggi nel buffer di diagnostica è inferiore al
numero massimo progettato, la SFC 51 potrebbe fornire valori non
validi in questo estratto della lista parziale. Si consiglia quindi di evitare
un "RETE OFF" in assenza di buffer.
W#16#0FA0: solo informazione intestazione della lista parziale SZL
INDEX Solo per la SZL con ID SZL W#16# 01A0:
numero delle registrazioni più recenti
LENTHDR W#16#0014: un set di dati è lungo 10 parole (20 byte)
N_DR Numero dei set di dati
Set di dati
Un set di dati della SZL con ID SZL W#16#xyA0 ha la seguente struttura:
Buffer di diagnostica
Ulteriori informazioni relative ad eventi nel buffer di diagnostica si ottengono tramite STEP 7.
Scopo
Mediante la SZL con ID SZL W#16#00B1 si ricavano i primi 4 byte di diagnostica di un'unità con
diagnostica possibile.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#00B1 è strutturata come segue:
Contenuto Significato
SZL_ID W#16#00B1
INDEX Bit 0 ... 14: indirizzo di base logico
Bit 15: 0 per ingresso, 1 per uscita
LENTHDR W#16#0004: un set di dati è lungo 2 parole (4 byte)
N_DR 1
Set di dati
Un set di dati della lista parziale con ID SZL W#16#00B1 ha la seguente struttura:
Scopo
Tramite la lista parziale con ID SZL W#16#00b2 si ricava il set di dati di diagnostica di un'unità
innestata centralmente (quindi non per DP e sottomoduli). L'unità va indicata tramite telaio e numero
del posto connettore.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#00B2 è strutturata come segue:
Contenuto Significato
SZL_ID W#16#00B2
INDEX W#16#xxyy: xx contiene il numero del telaio
Yy contiene il numero del posto connettore
LENTHDR La lunghezza del set di dati dipende dalla particolare unità
N_DR 1
Set di dati
La dimensione di un set di dati della SZL con ID SZL W#16#00B2 e l'assegnazione dello stesso
dipendono dalla particolare unità. Informazioni più dettagliate sono riportate in /70/, /101/ o nel
rispettivo manuale dall'unità.
Scopo
Tramite la lista parziale con ID SZL W#16#00B3 vengono ricavati tutti i dati di diagnostica di
un'unità. Questa informazione è possibile anche per DP e sottomoduli. Selezionare l'unità tramite il
proprio indirizzo di base logico.
Intestazione
L'intestazione della lista parziale con ID SZL W#16#00B3 è strutturata come segue:
Contenuto Significato
SZL_ID W#16#00B3
INDEX Bit 0 fino a 14: indirizzo di base logico
Bit 15: 0 per ingresso, 1 per uscita
LENTHDR Lunghezza di un set di dati (in funzione dell'unità)
N_DR 1
Set di dati
Quanto grande sia un set di dati della lista parziale con ID SZL W#16#00B3 e come esso sia
configurato, dipende dalla rispettiva unità. Informazioni più dettagliate sono riportate in /70/, /101/ o
nel rispettivo manuale dell'unità.
Tramite la lista parziale con ID SZL W#16#00B4 vengono ricavati tutti i dati di diagnostica di uno
slave DP. Questi dati di diagnostica sono strutturati in base a EN50 170 Volume 2, PROFIBUS.
Selezionare l'unità tramite il proprio indirizzo di diagnostica progettato.
L'intestazione della lista parziale con ID SZL W#16#00B4 è strutturata come segue:
Contenuto Significato
SZL_ID W#16#00B4
INDEX Indirizzo di diagnostica di uno slave DP progettato
LENTHDR Lunghezza di un set di dati. La lunghezza massima è di 240 byte; con gli slave standard,
in cui il numero dei dati di diagnostica standard è maggiore di 240 byte e che ammonta al
massimo a 244 byte, i primi 240 byte vengono letti e il relativo bit di overflow viene
impostato nei dati.
N_DR 1
Un set di dati della lista parziale con ID SZL W#16#00B4 ha la seguente struttura:
Evento
All'interno del sistema SIMATIC S7 tutti gli eventi sono dotati di un proprio numero. In questo modo è
possibile assegnare un messaggio ad un evento.
ID di evento
Ad ogni evento è assegnata un'identificazione (ID) di evento. Quest'ultima è strutturata come segue:
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Classe di evento
Le classi di evento sono suddivise come segue:
Codice
Il codice serve per poter distinguere il particolare tipo di un evento. I 4 bit di codice hanno il significato
seguente:
ID di evento Evento
W#16#1381 Richiesta manuale di nuovo avviamento (avviamento a caldo)
W#16#1382 Richiesta automatica di nuovo avviamento(avviamento a caldo)
W#16#1383 Richiesta manuale di riavviamento
W#16#1384 Richiesta automatica di riavviamento
W#16#1385 Richiesta manuale di avviamento a freddo
W#16#1386 Richiesta automatica di avviamento a freddo
W#16#1387 CPU master: richiesta manuale di avviamento a freddo
W#16#1388 CPU master: richiesta automatica di avviamento a freddo
W#16#138A CPU master: richiesta manuale di nuovo avviamento (avviamento a caldo)
W#16#138B CPU master: richiesta automatica di nuovo avviamento (avviamento a caldo)
W#16#138C CPU di riserva: richiesta manuale di avviamento
W#16#138D CPU di riserva: richiesta automatica di avviamento
ID di evento Evento OB
W#16#2521 Errore di conversione BCD OB 121
W#16#2522 Errore di lunghezza di campo in lettura OB 121
W#16#2523 Errore di lunghezza di campo in scrittura OB 121
W#16#2524 Errore di campo in lettura OB 121
W#16#2525 Errore di campo in scrittura OB 121
W#16#2526 Errore di numero di temporizzatore OB 121
W#16#2527 Errore di numero di contatore OB 121
W#16#2528 Errore di indirizzamento in lettura OB 121
W#16#2529 Errore di indirizzamento in scrittura OB 121
W#16#2530 Errore di scrittura durante accesso a DB OB 121
W#16#2531 Errore di scrittura durante accesso a DI OB 121
W#16#2532 Errore di numero del blocco al richiamo di un DB OB 121
W#16#2533 Errore di numero del blocco al richiamo di un DI OB 121
W#16#2534 Errore di numero del blocco al richiamo di FC OB 121
W#16#2535 Errore di numero del blocco al richiamo di FB OB 121
W#16#253A DB non caricato OB 121
W#16#253C FC non caricata OB 121
W#16#253D SFC non caricata OB 121
W#16#253E FB non caricato OB 121
W#16#253F SFB non caricato OB 121
W#16#2942 Errore di accesso alla periferia in lettura OB 122
W#16#2943 Errore di accesso alla periferia in scrittura OB 122
ID di evento Evento OB
W#16#3501 Superamento tempi di ciclo OB 80
W#16#3502 Interfaccia utente (OB oppure FRB) - errore di richiesta OB 80
W#16#3505 Allarmi dall'orologio terminati mediante salto nell'orario OB 80
W#16#3506 Allarmi dall'orologio terminati per reingresso nello stato RUN dopo lo OB 80
stato ALT
W#16#3507 Un errore multiplo di richiesta OB ha causato l'overflow nel buffer di OB 80
informazione interno
W#16#3508 Errore temporale di allarme in sincronismo di clock OB 80
W#16#3509 Perdita dell’allarme a causa di un elevato carico di allarmi OB 80
W#16#350A Ritorno in RUN dopo CiR OB 80
W#16#350B Errore temporale di sincronismo tecnologico OB 80
W#16#3921/3821 BATTF: avaria di almeno una batteria tampone dell'unità centrale OB 81
scarica/eliminata
Avvertenza: l'evento entrante si verifica solamente in caso di guasto
di una delle batterie (se le batterie tampone sono ridondate). Se si
guasta anche l'altra batteria, questo evento non si ripete.
W#16#3922/3822 BAF: avaria della tensione buffer nell'unità centrale /eliminata OB 81
W#16#3923/3823 Avaria dell'alimentazione a 24V nell'apparecchiatura OB 81
centrale/eliminata
W#16#3931/3825 BATTF: avaria di almeno una batteria tampone in almeno OB 81
un'apparecchiatura centrale ridondata/eliminata
W#16#3926/3826 BAF: avaria della tensione buffer in una delle apparecchiature OB 81
centrali ridondate/eliminata
W#16#3927/3827 Avaria dell‘alimentazione a 24V in un'apparecchiatura centrale OB 81
ridondata/ eliminata
W#16#3931/3831 BATTF: avaria di almeno una batteria tampone in almeno OB 81
un'apparecchiatura di ampliamento/ eliminata
W#16#3932/3832 BAF: avaria della tensione buffer in almeno una delle OB 81
apparecchiature di ampliamento / eliminata
W#16#3933/3833 Avaria dell'alimentazione 24V in almeno una apparecchiatura di OB 81
ampliamento/eliminata
W#16#3942 Allarme di diagnostica (presenza di uno o di entrambi gli allarmi: OB 82
modulo/sottomodulo guasto e manutenzione necessaria)
W#16#3842 Allarme di diagnostica (modulo/sottomodulo ok) OB 82
W#16#3951 Modulo PROFINET IO estratto OB 83
W#16#3954 Sottomodulo/modulo PROFINET IO estratto OB 83
W#16#3854 Sottomodulo/modulo PROFINET IO inserito, corrisponde al OB 83
sotto-modulo progettato
W#16#3855 Sottomodulo/modulo PROFINET IO inserito, ma non corrisponde al OB 83
sotto-modulo progettato
W#16#3856 Sottomodulo/modulo PROFINET IO inserito, ma errore di OB 83
parametrizzazione dell'unità
ID di evento Evento OB
W#16#3857 Sottomodulo/modulo PROFINET IO inserito, ma guasto o OB 83
manutenzione
W#16#3858 Errore di accesso al sottomodulo PROFINET IO eliminato OB 83
W#16#3861 Unità /modulo di interfaccia inserito, tipo di unità OK OB 83
W#16#3961 Unità/modulo di interfaccia estratto o non indirizzabile OB 83
W#16#3863 Unità/modulo di interfaccia inserito, tipo dell'unità comunque errato OB 83
W#16#3864 Unità/modulo di interfaccia inserito, comunque guasto (codice unità OB 83
non leggibile)
W#16#3865 Unità inserita, comunque errore nella parametrizzazione unità OB 83
W#16#3866 Unità nuovamente indirizzabile, errore di tensione di carico eliminato OB 83
W#16#3966 Unità non indirizzabile, errore di tensione di carico OB 83
W#16#3367 Inizio riparametrizzazione di un’unità OB 83
W#16#3267 Fine riparametrizzazione di un’unità OB 83
W#16#3968 Riparametrizzazione di un’unità conclusa con errore OB 83
W#16#3571 Livello di annidamento eccessivo di livelli di parentesi OB 88
W#16#3572 Livello di annidamento eccessivo di relè master control OB 88
W#16#3573 Livello di annidamento eccessivo in caso di errori di sincronismo OB 88
W#16#3574 Livello di annidamento eccessivo di richiami di blocco (stack U) OB 88
W#16#3575 Livello di annidamento eccessivo di richiami di blocco (stack B) OB 88
W#16#3576 Errore di allocazione di dati locali OB 88
W#16#3578 Istruzione sconosciuta OB 88
W#16#357A Istruzione di salto con traguardo all’esterno del blocco OB 88
W#16#3981 Errore interfaccia, entrante
W#16#3881 Errore interfaccia, uscente
W#16#3582 Errore di salvataggio riconosciuto ed eliminato dal sistema operativo OB 84
W#16#3583 Accumulo di errori di salvataggio riconosciuti e corretti OB 84
W#16#3585 Errore nel sistema operativo del PC (solo per Win AC Controller) OB 84
W#16#3986 Prestazioni di un accoppiamento H-Sync compromesse OB 84
W#16#3587 Errore di memoria a più bit riconosciuto e corretto OB 84
W#16#35A1 Interfaccia utente (OB o FRB) non disponibile OB 85
W#16#35A2 OB non caricato (avviato tramite SFC o sistema operativo a causa OB 85
della progettazione)
W#16#35A3 Errore di accesso a un blocco da parte del sistema operativo OB 85
W#16#35A4 DB di interfaccia PROFInet non indirizzabile OB 85
W#16#34A4 DB di interfaccia PROFInet nuovamente indirizzabile OB 85
W#16#39B1 Errore di accesso alla periferia durante l'aggiornamento OB 85
dell'immagine di processo degli ingressi
W#16#39B2 Errore di accesso alla periferia durante il trasferimento dell'immagine OB 85
di processo delle uscite
W#16#39B3/38B3 Errore di accesso alla periferia durante l'aggiornamento OB 85
dell'immagine di processo degli ingressi
W#16#39B4/38B4 Errore di accesso alla periferia durante l'aggiornamento OB 85
dell'immagine di processo delle uscite
ID di evento Evento OB
W#16#38C1 Ritorno di apparecchiatura di ampliamento (1 fino a 21), entrante OB 86
W#16#39C1 Avaria apparecchiatura di ampliamento (1 fino a 21), uscente OB 86
W#16#38C2 Ritorno apparecchiatura di ampliamento con differenza tra OB 86
configurazione prefissata e configurazione attuale
W#16#39C3 Periferia decentrata: avaria del sistema master entrante OB 86
W#16#39C4 Periferia decentrata: avaria di stazione (entrante) OB 86
W#16#38C5 Periferia decentrata: ripristinio stazione, tuttavia con guasto OB 86
W#16#38C6 Ritorno di apparecchiatura di ampliamento, tuttavia errore di OB 86
parametrizzazione dell'unità
W#16#38C7 DP: ritorno di stazione, tuttavia errore di parametrizzazione dell'unità OB 86
W#16#38C8 DP: ritorno di stazione con differenza tra configurazione prefissata e OB 86
configurazione attuale
W#16#39CA Guasto del sistema PROFINET IO OB 86
W#16#39CB Guasto della stazione PROFINET IO OB 86
W#16#38CB Ripristino della stazione PROFINET IO OB 86
W#16#38CC Ripristino della stazione PROFINET IO con guasto o manutenzione OB 86
W#16#39CD Ritorno della stazione PROFINET IO, configurazione prefissata OB 86
diversa da quella attuale.
W#16#39CE Ritorno della stazione PROFINET IO, errore di parametrizzazione OB 86
dell'unità
W#16#33CF/32CF Guasto/ripristino di un dispositivo PROFINET IO in seguito alla OB 86
disattivazione/attivazione da parte dell'SFC 12 "D_ACT_DP"
W#16#39F8/38F8 Guasto/ripristino di una parte dei sottomoduli di un PROFINET OB 86
I-Device
W#16#38F9 Ripristino di una parte dei sottomoduli di un PROFINET I-Device con OB 86
differenza di configurazione del dispositivo
W#16#35D2 Trasmettere i messaggi di diagnostica attualmente non possibile OB 87
W#16#35D3 I telegrammi di sincronizzazione non possono essere trasmessi OB 87
W#16#35D4 Salto nell'orario dovuto alla sincronizzazione non ammesso OB 87
W#16#35D5 Errore nel ricevere il tempo di sincronizzazione OB 87
W#16#35E1 Codice del telegramma errato per GD OB 87
W#16#35E2 Stato blocco GD non può essere registrato in DB OB 87
W#16#35E3 Lunghezza di telegramma per GD OB 87
W#16#35E4 Ricevere un numero di blocco GD non ammesso OB 87
W#16#35E5 Errore di accesso a DB con SFB di comunicazione per i collegamenti OB 87
S7 progettati
W#16#35E6 Stato generale GD non può essere registrato in DB OB 87
35.5 Classe di evento 4 - Eventi di stop ed altri passaggi tra diversi stati
di funzionamento
ID di evento Evento
W#16#4300 ALIMENTAZIONE ON in backup
W#16#4301 Transizione dello stato di funzionamento da STOP a AVVIAMENTO
W#16#4302 Transizione dello stato di funzionamento da AVVIAMENTO a RUN
W#16#4303 STOP a causa di manovra dell'interruttore di stop
W#16#4304 STOP a causa di comando di stop dal dispositivo di programmazione o a causa
dell'SFB 20 "STOP"
W#16#4305 ALT: Punto di arresto raggiunto
W#16#4306 ALT: Punto di arresto abbandonato
W#16#4307 Avvio della cancellazione totale mediante comando del PG
W#16#4308 Avvio della cancellazione totale mediante manovra di interruttore
W#16#4309 Avvio della cancellazione totale automatica (ALIMENTAZIONE ON non bufferizzato)
W#16#430A Abbandonare ALT. Passaggio in STOP
W#16#430D STOP comandato da altre CPU in funzionamento multicomputing
W#16#430E Cancellazione totale eseguita
W#16#430F STOP dell'unità dovuto allo STOP di una CPU
W#16#4510 STOP dovuto alla violazione dell'area della data della CPU
W#16#4318 Inizio dell’operazione CiR
W#16#4319 Operazione CiR terminata
W#16#4520 GUASTO: STOP non raggiungibile
W#16#4521 GUASTO: avaria del processore esecuzione ordini
W#16#4522 GUASTO: avaria del blocco orologio
W#16#4523 GUASTO: avaria dell'oscillatore
W#16#4524 GUASTO: avaria nell'aggiornamento delle celle temporali
W#16#4525 GUASTO: avaria della sincronizzazione MP
W#16#4926 GUASTO: avaria della sorveglianza di tempo per accessi alla periferia
W#16#4527 GUASTO: avaria della sorveglianza errori di accesso alla periferia
W#16#4528 GUASTO: avaria della sorveglianza del tempo di ciclo
W#16#4530 GUASTO: errore nel test di memoria, memoria interna
W#16#4531 GUASTO: errore nel test di memoria, modulo di memoria
W#16#4532 GUASTO: avaria di risorse centrali
W#16#4533 Errore nelle somme di controllo
W#16#4934 GUASTO: memoria non presente
W#16#4535 GUASTO: interruzione per sorveglianza tempo di reazione (Watchdog) / eccezioni del
processore
W#16#4536 GUASTO: guasto dell'interruttore dei modi di funzionamento
W#16#4540 STOP: ampliamento della memoria di lavoro interna con spazi vuoti. Il primo
ampliamento di memoria è troppo piccolo o manca.
W#16#4541 STOP dovuto al sistema di esecuzione Classi di priorità
ID di evento Evento
W#16#4542 STOP dovuto a OVS
W#16#4543 STOP dovuto a TIS
W#16#4544 STOP dovuto al sistema di diagnostica
W#16#4545 STOP dovuto al sistema di comunicazione
W#16#4546 STOP dovuto alla gestione della memoria della CPU
W#16#4547 STOP dovuto alla gestione dell'immagine di processo
W#16#4548 STOP dovuto alla gestione della periferia
W#16#4949 STOP a causa di un interrupt di processo continuo
W#16#454A STOP dovuto alla progettazione, durante il nuovo avviamento è stato caricato un OB non
selezionato
W#16#494D STOP dovuto a PRF (errore di periferia, errore di bus)
W#16#494E STOP dovuto a PSA (NAU)
W#16#494F STOP dovuto ad errore di configurazione
W#16#4550 GUASTO: errore di sistema interno
W#16#4555 limite del tempo di sorveglianza trascorso, riavviamento non possibile
W#16#4556 STOP: richiesta di cancellazione totale dovuta a comunicazione/ inconsistenza dati
W#16#4357 Tempo controllo unità avviato
W#16#4358 Tutte le unità sono pronte per l'uso
W#16#4959 non tutte le unità sono pronte per l'uso
W#16#4562 STOP dovuto a errore di programmazione (OB non caricato o non possibile)
W#16#4563 STOP dovuto a errore di accesso alla periferia (OB non caricato o non possibile)
W#16#4568 STOP dovuto a errore temporale (OB non caricato o non possibile, oppure nessun FRB
disponibile)
W#16#456A STOP dovuto a allarme di diagnostica (OB non caricato o non possibile)
W#16#456B STOP dovuto a estrazione/inserimento (OB non caricato o non possibile)
W#16#456C STOP dovuto a errore hardware CPU (OB non caricato o non possibile)
W#16#456D STOP dovuto a errore esecuzione programma (OB non caricato o non possibile)
W#16#456E STOP dovuto a errore di comunicazione (OB non caricato o non possibile)
W#16#456F STOP dovuto a avaria telaio (OB non caricato o non possibile)
W#16#4570 STOP dovuto a interruzione di elaborazione (OB non caricato o non possibile)
W#16#4571 STOP dovuto a errore stack di annidamento
W#16#4572 STOP dovuto a errore di stack relè master-control
W#16#4573 STOP dovuto a superamento della profondità di annidamento negli errori di sincronismo
W#16#4574 STOP dovuto ad annidamento eccessivo di stack U nello stack di classe di priorità
W#16#4575 STOP dovuto ad annidamento eccessivo di stack B nello stack di classe di priorità
W#16#4576 STOP dovuto a errore nell'allocazione di dati locali
W#16#4578 STOP dovuto a codice operazione sconosciuto
W#16#457A STOP dovuto a errore lunghezza codice
W#16#457B STOP dovuto a DB non caricato nella periferia onboard
W#16#497C STOP dovuto a tecnologia integrata
W#16#457D Richiesta di cancellazione totale causa modifica della versione dell'interfaccia interna con
la tecnologia integrata
ID di evento Evento
W#16#457F STOP dovuto a comando di STOP
W#16#4580 STOP: contenuto buffer di backup inconsistente (nessun passaggio RUN)
W#16#4590 STOP a causa di sovraccarico delle funzioni interne
W#16#49A0 STOP a causa di errore di parametrizzazione oppure differenza non ammessa tra
configurazione prefissata e configurazione attuale: avviamento inibito
W#16#49A1 STOP a causa di errore di parametrizzazione : richiesta di cancellazione totale
W#16#49A2 STOP a causa di errore durante la post-parametrizzazione: avviamento inibito
W#16#49A3 STOP a causa di errore alla post-parametrizzazione: richiesta di cancellazione totale
W#16#49A4 STOP: inconsistenza dei dati di progettazione
W#16#49A5 STOP: periferia decentrata: discordanze dell'informazione di progettazione caricata
W#16#49A6 STOP: periferia decentrata: informazione di progettazione non valida
W#16#49A7 STOP: periferia decentrata: informazione di progettazione non disponibile
W#16#49A8 STOP: visualizzazione di errore del collegamento per periferia decentrata
W#16#43B0 Back up /aggiornamento del firmware riuscito
W#16#49B1 Dati di aggiornamento firmware errati
W#16#49B2 Aggiornamento firmware: versione hardware incompatibile con il firmware
W#16#49B3 Aggiornamento firmware: tipo di unità incompatibile con il firmware
W#16#43B4 Errore di backup del firmware
W#16#43B6 Interruzione dell'aggiornamento firmware di unità ridondanti
W#16#49D1 Annullamento di ACCOPPIAMENTO/AGGIORNAMENTO
W#16#49D2 STOP della CPU di riserva dovuto a STOP della CPU master durante l‘accoppiamento
W#16#43D3 STOP di una CPU di riserva richiesto dall'utente
W#16#49D4 STOP di un master poiché la CPU partner è anche master (errore di accoppiamento)
W#16#45D5 Annullamento di ACCOPPIAMENTO/AGGIORNAMENTO dovuto a configurazione
memoria CPU non ammessa del dispositivo parziale
W#16#45D6 Annullamento di ACCOPPIAMENTO dovuto a programma di sistema non identico del
dispositivo parziale
W#16#49D7 Annullamento di ACCOPPIAMENTO dovuto a codice di programma utente non identico
nelle memory cards
W#16#45D8 DIFETTO: Errore di hardware riconosciuto da un altro errore
W#16#49D9 STOP dovuto a errore del modulo di sincronizzazione
W#16#49DA STOP dovuto a errore di sincronizzazione tra le CPU H
W#16#45DD Annullamento di ACCOPPIAMENTO dovuto a funzione di test in corso di esecuzione
W#16#43DF Annullamento definitivo dell'aggiornamento causa superamento di un tempo di controllo
dopo il numero massimo di tentativi; è necessario un nuovo comando
W#16#43E0 Passaggio da Funzionamento singolo a Accoppiamento
W#16#43E1 Passaggio da Accoppiamento ad Aggiornamento
W#16#43E2 Passaggio dallo stato di sistema Aggiornamento a Ridondato
W#16#43E3 CPU master: passaggio dallo stato di funzionamento Ridondato a Funzionamento
singolo
W#16#43E4 CPU di riserva: passaggio dallo stato di sistema Ridondato a DIAGNOSTICA
W#16#43E5 CPU di riserva: passaggio da DIAGNOSTICA ad Accoppiamento o STOP
W#16#43E6 Annullamento Accoppiamento della CPU di riserva
ID di evento Evento
W#16#43E7 Annullamento Aggiornamento della CPU di riserva
W#16#43E8 CPU di riserva: passaggio da Accoppiamento a Avviamento
W#16#43E9 CPU di riserva: passaggio da Avviamento a Accoppiamento
W#16#43F1 Commutazione riserva-master
W#16#43F2 Accoppiamento di CPU H non compatibili bloccati dal programma di sistema
W#16#43F3 Errore checksum del sistema operativo individuato e corretto
W#16#43F4 CPU di riserva: blocco accoppiamento/aggiornamento per mezzo di SFC90 nella CPU
master
ID di evento Evento
W#16#530D Nuove informazioni di avviamento nello stato di funzionamento STOP
W#16#510F In WinLC si è verificato un errore che ha causato lo stato STOP o AVARIA della CPU.
W#16#5311 Avviamento nonostante l'assenza della segnalazione di pronto nelle(a) unità
W#16#5545 Inizio della riparametrizzazione nell'ambito di una modifica dell'impianto in fase di
funzionamento
W#16#5445 Fine della riparametrizzazione nell'ambito di una modifica dell'impianto in fase di
funzionamento
W#16#5961 Errore di parametrizzazione
W#16#5962 Errore di parametrizzazione con impedimento avviamento
W#16#5963 Errore di parametrizzazione con richiesta di cancellazione totale
W#16#5966 Errore di parametrizzazione durante la commutazione
W#16#5967 Errore di parametrizzazione: dati di progettazione sconosciuti
W#16#5968/5858 Indirizzo di emergenza di un'interfaccia Ethernet attivo/disattivato
W#16#5969 Errore di parametrizzazione con impedimento dell'avvio
W#16#596A PROFINET IO: l'indirizzo IP di un IO Device esiste già
W#16#596B L'indirizzo IP di una delle interfacce Ethernet esiste già
W#16#596C Il nome di una delle interfacce Ethernet esiste già
W#16#596D La configurazione di rete disponibile non è compatibile con i requisiti di sistema o la
progettazione.
W#16#5371 Periferia decentrata: fine della sincronizzazione con un master DP
W#16#5979/5879 Messaggio di diagnostica dall'interfaccia DP: EXTF-LED on/off
W#16#597C Comando DP Global Control non eseguito o spostato
W#16#5380 Registrazioni del buffer di diagnostica degli eventi di allarme e di errore di asincronismo
disabilitate
W#16#5581 Mancano una o più licenze del software Runtime
W#16#5481 Tutte le licenze per del software Runtime sono nuovamente disponibili
W#16#558A Numero di ordinazione della CPU progettata diverso da quello della CPU inserita
W#16#558B Versione del firmware della CPU progettata diversa quella della CPU inserita
W#16#5966 Errore di parametrizzazione durante la commutazione
W#16#597C Istruzione operativa DP Global Control guasta o spostata
W#16#5395 Periferia decentrata: reset di un master DP
W#16#5598 Inizio di una potenziale incoerenza con sistemi master DP dovuta a CiR
W#16#5498 Fine di una potenziale incoerenza con sistemi master DP dovuta a CiR
W#16#59A0 Allarme nella CPU non assegnabile
W#16#59A1 Errore di configurazione della tecnologia integrata
W#16#53A2 Caricamento del firmware della tecnologia riuscito senza errori
W#16#59A3 Errore di caricamento della tecnologia integrata
W#16#53A4 Caricamento del DB della tecnologia riuscito senza errori
W#16#55A5 Conflitto di versione dell'interfaccia interna con la tecnologia integrata
W#16#55A6 Il numero max. di oggetti tecnologici è stato superato.
W#16#55A7 Esiste già un DB tecnologico di questo tipo.
W#16#53FF Resettaggio allo stato di fornitura
ID di evento Evento
W#16#6500 referenza di collegamento (ID) presente due volte sull'unità
W#16#6501 risorse di collegamento non sufficienti
W#16#6502 errore nella descrizione del collegamento
W#16#6905/6805 problema di risorse con collegamenti progettati fissi/eliminato
W#16#6510 errore di struttura di CFB nel DB di istanza riconosciuto durante la valutazione della
EPROM
W#16#6514 numero di blocco GD presente due volte sull'unità
W#16#6515 indicazioni di lunghezza nell'informazione di progettazione di GD sono inconsistenti
W#16#6316 errore di interfaccia in fase di avviamento di PLC
W#16#6521 assenza di moduli e di memoria interna
W#16#6522 modulo non ammesso: sostituzione del modulo e cancellazione totale necessaria
W#16#6523 richiesta di cancellazione totale dovuta a errore durante accesso al modulo
W#16#6524 richiesta di cancellazione totale dovuta a errore nell'intestazione di blocco
W#16#6526 richiesta di cancellazione totale dovuta a sostituzione di memoria
W#16#6527 sostituzione di memoria, per questo non è possibile un riavviamento
W#16#6528 funzione di gestione oggetti in STOP/ALT, non è possibile un riavviamento
W#16#6529 nessun avviamento durante la funzione "caricare il programma utente"
W#16#652A nessun avviamento poiché il blocco è presente due volte nella memoria utente
W#16#652B nessun avviamento poiché la lunghezza del blocco è troppo grande per il modulo.
Sostituzione del modulo necessaria
W#16#652C nessun avviamento a causa di OB non ammesso sul modulo
W#16#6532 nessun avviamento a causa di informazione di progettazione non ammessa sul modulo
W#16#6533 richiesta di cancellazione totale dovuta a contenuto del modulo non valido
W#16#6534 nessun avviamento: blocco presente più volte nel blocco
W#16#6535 nessun avviamento: memoria non sufficiente per salvare il blocco del modulo
W#16#6536 nessun avviamento: numero di blocco non ammesso
W#16#6537 nessun avviamento: lunghezza del blocco non ammessa
W#16#6538 dati locali o codice protezione dalla scrittura (in DB) di un blocco non ammessi per CPU
W#16#6539 comando non ammesso nel blocco (riconosciuto dal compilatore)
W#16#653A richiesta di cancellazione totale, poiché i dati locali OB sul modulo sono troppo corti
W#16#6543 nessun avviamento: tipo di blocco non ammesso
W#16#6544 nessun avviamento: attributi rilevanti per l'esecuzione non ammessi
W#16#6545 linguaggio di programmazione non ammesso
W#16#6546 numero massimo dei blocchi in un determinato tipo di blocco raggiunto
W#16#6547 errore di parametrizzazione durante parametrizzazione di unità (non tramite P-bus ma
tramite interruzione download)
W#16#6548 errore di plausibilità durante la verifica del blocco
W#16#6549 errore di struttura nel blocco
W#16#6550 un blocco contiene un errore nel valore di controllo (CRC)
ID di evento Evento
W#16#6551 un blocco non ha alcun valore di controllo (CRC)
W#16#6353 Aggiornamento del firmware: inizio del download del firmware tramite rete
W#16#6253 Aggiornamento del firmware: fine del download del firmware tramite rete
W#16#6353 Aggiornamento del firmware: inizio del download del firmware tramite rete
W#16#6253 Aggiornamento del firmware: fine del download del firmware tramite rete
W#16#6560 overflow di SCAN
W#16#6981 errore di interfaccia, entrante
W#16#6881 errore di interfaccia, uscente
W#16#6390 formattazione di una Micro Memory Card eseguita
ID di evento Evento OB
W#16#73A2 Guasto di un master DP o di un sistema master DP OB 70
W#16#72A3 Ritorno della ridondanza sullo slave DP OB 70
W#16#73A3 Perdita di ridondanza sullo slave DP OB 70
W#16#7301 Perdita di ridondanza (1v2) dovuta ad avaria di una CPU OB 72
W#16#7302 Perdita di ridondanza (1v2) dovuta a STOP della riserva causato OB 72
dall'utente
W#16#7303 Il sistema H (1v2 ) è passato in funzionamento ridondato OB 72
W#16#7320 Errore durante il confronto RAM OB 72
W#16#7521 Errore durante il confronto del valore iniziale dell'immagine di processo OB 72
W#16#7522 Errore durante il confronto di merker, temporizzatori e contatori OB 72
W#16#7323 Riconosciuti diversi dati del sistema operativo OB 72
W#16#7331 Commutazione riserva-master dovuta a guasto del master OB 72
W#16#7333 Commutazione riserva-master nel corso di una modifica all’impianto in OB 72
funzione
W#16#7334 Commutazione riserva-master dovuta a disturbo del collegamento sul OB 72
modulo di sincronizzazione
W#16#7340 Errore di sincronizzazione nel programma utente dovuto a tempo di attesa OB 72
scaduto
W#16#7341 Errore di sincronizzazione nel programma utente dovuto ad attesa in OB 72
diversi punti di sincronizzazione
W#16#7342 Errore di sincronizzazione nel sistema operativo dovuto ad attesa in OB 72
diversi punti di sincronizzazione
W#16#7343 Errore di sincronizzazione nel sistema operativo dovuto a tempo di attesa OB 72
scaduto
W#16#7344 Errore di sincronizzazione nel sistema operativo dovuto a dati errati OB 72
W#16#7950 Manca il modulo di sincronizzazione OB 72
W#16#7951 Modifica sul modulo di sincronizzazione senza ALIMENTAZIONE ON OB 72
W#16#7952/7852 Modulo di sincronizzazione estratto/inserito OB 72
W#16#7953 Modifica sul modulo di sincronizzazione senza cancellazione totale OB 72
W#16#7954 Modulo di sincronizzazione: doppia assegnazione di un numero di telaio OB 72
di montaggio
W#16#7955/7855 Errore del modulo di sincronizzazione/ eliminato OB 72
W#16#7956 N. telaio di montaggio non ammesso impostato nel modulo di OB 72
sincronizzazione
W#16#7960 Periferia ridondata: tempo di discrepanza nell’ingresso analogico
terminato
W#16#7961 Periferia ridondata: errore ingresso digitale: transizione segnale al termine
del tempo di discrepanza
W#16#7962 Periferia ridondata: errore ingresso digitale
W#16#7963 Periferia ridondata: errore di canale ingresso digitale
ID di evento Evento OB
W#16#7964 Periferia ridondata: errore ingresso digitale: commutazione segnale
decorso il tempo di discrepanza
W#16#796F Periferia ridondata: depassivazione completa della periferia eseguita
W#16#7970 Periferia ridondata: errore uscita digitale
W#16#7971 Periferia ridondata: errore di canale uscita digitale
W#16#7980 Periferia ridondata: tempo di discrepanza nell’ingresso analogico
terminato
W#16#7981 Periferia ridondata: errore ingresso analogico
W#16#7982 Periferia ridondata: errore di canale ingresso analogico
W#16#7983 Periferia ridondata: scadenza del tempo di discrepanza sul canale di
ingresso analogico
W#16#7984 Periferia ridondata: errore di canale ingresso analogico
W#16#7990 Periferia ridondata: errore uscita analogica -
W#16#7991 Periferia ridondata: errore di canale uscita analogica
W#16#73A2 Guasto ad un master DP oppure ad un sistema master DP OB 70
W#16#73A3/72A3 Perdita della ridondanza/ ripristino della ridondanza sullo slave DP OB 70
W#16#73A5/72A5 Perdita della ridondanza/ ripristino della ridondanza sull’IO Device OB 70
W#16#73C1 Collegamento/aggiornamento interrotti OB 72
W#16#73C2 Interruzione dell'aggiornamento causa superamento del tempo di OB 72
controllo all'n tentativo (1 n numero max. consentito di tentativi di
aggiornamento in seguito a interruzione per superamento del tempo)
W#16#75D1 Programma di sicurezza: errore interno alla CPU
W#16#75D2 Errore nel programma di sicurezza: superamento del tempo ciclo
W#16#79D3/78D3 Errore nella comunicazione PROFIsafe con la periferia F
W#16#79D4/78D4 Errore nella comunicazione di sicurezza tra le CPU F
W#16#79D5/78D5 Errore nella comunicazione di sicurezza tra le CPU F
W#16#75D6 Dati alterati programma di sicurezza prima dell’emissione alla periferia F
W#16#75D7 Dati alterati programma di sicurezza prima dell’emissione alla CPU F
partner
W#16#75D8 Funzionamento di sicurezza disattivato
W#16#75D9 Numero REAL non valido in un DB
W#16#75DA Programma di sicurezza: errore nel formato di protezione dati
W#16#73DB/72DB Programma di sicurezza: funzionamento di sicurezza attivato/disattivato
W#16#75DC Gruppo di esecuzione, errore di protocollo interno
W#16#75DD/74DD Programma di sicurezza: disabilitazione attiva/disattivata di un gruppo di
esecuzione ad elevata sicurezza da errore
W#16#75DE/74DE Programma di sicurezza: completa disabilitazione attiva/disattivata del
programma F
W#16#75DF/74DF Inizializzazione: inizio/fine programma F
W#16#73E0/72E0 Perdita di ridondanza della comunicazione/ ridondanza ripristinata OB 73
W#16#75E1 Programma di sicurezza: errore in FB "F PLK" o "F PLK" o F_CYC_CO" o
"F_TEST" o "F_TESTC"
W#16#75E2 Programma di sicurezza: errore di lunghezza area
ID di evento Evento OB
W#16#79E3 Canale di ingresso della periferia F passivato
W#16#78E3 Canale di ingresso della periferia F depassivato
W#16#79E4 Canale di uscita della periferia F passivato
W#16#78E4 Canale di uscita della periferia F depassivato
W#16#79E5 Periferia F passivata
W#16#78E5 Periferia F depassivata
W#16#79E3 Canale di ingresso della periferia F passivato
W#16#78E3 Canale di ingresso della periferia F depassivato
W#16#79E4 Canale di uscita della periferia F passivato
W#16#78E4 Canale di uscita della periferia F depassivato
W#16#79E5 Periferia F passivata
W#16#78E5 Periferia F depassivata
W#16#79E6 Programma di sicurezza incoerente
W#16#79E7 Blocco di simulazione (blocco di sistema F) caricato
W#16#73E8 Coerenza del programma di sicurezza verificata tramite controllo
W#16#73E9 Coerenza del programma di sicurezza non verificabile
ID di evento Evento
W#16#9001 Modo di funzionamento automatico
W#16#9101 Modo di funzionamento manuale
W#16#9x02 APERTO/CHIUSO, ON/OFF
W#16#9x03 Abilitazione comandi manuali
W#16#9x04 Comando di protezione aggregati (APERTO/CHIUSO)
W#16#9x05 Abilitazione del processo
W#16#9x06 Comando di protezione del sistema
W#16#9x07 Sorveglianza del valore attuale interpellata
W#16#9x08 Sorveglianza della grandezza regolatrice interpellata
W#16#9x09 Errore di regolazione più grande di quanto ammesso
W#16#9x0A Errore di fine posizione
W#16#9x0B Errore di tempo di esecuzione
W#16#9x0C Errore di esecuzione comando (comando esecuzione)
W#16#9x0D Stato di funzionamento è in svolgimento ³ APERTO
W#16#9x0E Stato di funzionamento è in svolgimento ³ CHIUSO
W#16#9x0F Blocco comando
W#16#9x11 Stato di processo APERTO/ON
W#16#9x12 Stato di processo CHIUSO/OFF
W#16#9x13 Stato di processo posizioni intermedie
W#16#9x14 Stato di processo ON attraverso AUTO
W#16#9x15 Stato di processo ON attraverso manuale
W#16#9x16 Stato di processo ON attraverso comando di protezione
W#16#9x17 Stato di processo OFF attraverso AUTO
W#16#9x18 Stato di processo OFF attraverso manuale
W#16#9x19 Stato di processo OFF attraverso comando di protezione
W#16#9x21 Errore di funzione in fase di approccio
W#16#9x22 Errore di funzione in fase di allontanamento
W#16#9x31 Componente efficace (DE/WE), fine posizione APERTO
W#16#9x32 Componente efficace (DE/WE), fine posizione non APERTO
W#16#9x33 Componente efficace (DE/WE), fine posizione CHIUSO
W#16#9x34 Componente efficace (DE/WE), fine posizione non CHIUSO
W#16#9x41 Stato non permesso, tempo di tolleranza (TZ) trascorso
W#16#9x42 Stato non permesso, tempo di tolleranza non trascorso
W#16#9x43 Errore di bloccaggio, Tempo tolleranza = 0
W#16#9x44 Errore di bloccaggio, Tempo tolleranza > 0
W#16#9x45 Reazione non avvenuta
W#16#9x46 Stato finale abbandonato in maniera non ammessa, TZ = 0
W#16#9x47 Stato finale abbandonato in maniera non ammessa, TZ > 0
ID di evento Evento
W#16#9x50 Limite superiore campo di segnale OSF
W#16#9x51 Limite superiore campo di misura OMF
W#16#9x52 Limite inferiore campo di segnale USF
W#16#9x53 Limite inferiore campo di misura UMF
W#16#9x54 Limite superiore di allarme OOG
W#16#9x55 Limite superiore di avvertimento OG
W#16#9x56 Limite superiore di tolleranza OT
W#16#9x57 Limite inferiore di tolleranza UT
W#16#9x58 Limite inferiore di avvertimento UG
W#16#9x59 Limite inferiore di allarme UUG
W#16#9x60 GRAPH 7 passo della sequenza viene / va
W#16#9x61 GRAPH 7 errore di bloccaggio
W#16#9x62 GRAPH 7 errore di esecuzione
W#16#9x63 GRAPH 7 errore di cui si è preso atto per conoscenza
W#16#9x64 GRAPH 7 errore confermato
W#16#9x70 Trend positivo superato
W#16#9x71 Trend negativo superato
W#16#9x72 Reazione non avvenuta
W#16#9x73 Stato finale abbandonato in maniera non ammessa
W#16#9x80 Valore limite superato, tempo tolleranza = 0
W#16#9x81 Valore limite superato, tempo tolleranza > 0
W#16#9x82 Valore limite superato, tempo tolleranza = 0
W#16#9x83 Valore limite superato, tempo tolleranza > 0
W#16#9x84 Gradiente superato, tempo tolleranza = 0
W#16#9x85 Gradiente superato, tempo tolleranza > 0
W#16#9x86 Gradiente superato, tempo tolleranza = 0
W#16#9x87 Gradiente superato, tempo tolleranza > 0
W#16#9190/9090 Errore di parametrizzazione utente entrante/uscente
W#16#91F0 Overflow
W#16#91F1 Underflow
W#16#91F2 Divisione per 0
W#16#91F3 Operazione di calcolo non ammessa
ID di evento Evento
W#16#Axyz Eventi liberamente disponibili
W#16#Bxyz
Riservato
Le seguenti classi di evento sono riservate per future estensioni:
• C
• D
• E
• F riservato per unità non centrali (ad es. CP, FM)
N. Abbr. Funzione
SFC 0 SET_CLK Imposta orologio
SFC 1 READ_CLK Leggi orologio
SFC 2 SET_RTM Imposta contatore del tempo di esercizio
SFC 3 CTRL_RTM Avvia/arresta contatore del tempo di esercizio
SFC 4 READ_RTM Leggi contatore delle ore di esercizio
SFC 5 GADR_LGC Determina indirizzo di base logico di una unità
SFC 6 RD_SINFO Leggi informazione di avvio dell'OB attuale
SFC 7 DP_PRAL Attiva un allarme di processo nel master DP
SFC 9 EN_MSG Abilita segnalazioni riferite ai blocchi e ai simboli e segnalazioni cumulative
tecnologiche
SFC 10 DIS_MSG Inibisci segnalazioni riferite ai blocchi e ai simboli e segnalazioni cumulative
tecnologiche
SFC 11 DPSYC_FR Sincronizza gruppi di slave DP
SFC 12 D_ACT_DP Disattiva e attiva slave DP
SFC 13 DPNRM_DG Leggi dati di diagnostica (diagnostica slave) di uno slave DP
SFC 14 DPRD_DAT Leggi dati coerenti di uno slave standard DP
SFC 15 DPWR_DAT Scrivi dati in modo coerente su uno slave standard DP
SFC 17 ALARM_SQ Crea segnalazioni confermabili riferite ai blocchi
SFC 18 ALARM_S Crea segnalazioni riferite ai blocchi sempre confermate
SFC 19 ALARM_SC Rileva lo stato di conferma dell'ultima segnalazione ALARM_SQ arrivata
SFC 20 BLKMOV Copia una variabile
SFC 21 FILL Inizializza un campo
SFC 22 CREAT_DB Crea un blocco dati
SFC 23 DEL_DB Cancella un blocco dati
SFC 24 TEST_DB Test di un blocco dati
SFC 25 COMPRESS Avvia compressione della memoria utente
SFC 26 UPDAT_PI Aggiorna immagine di processo degli ingressi
SFC 27 UPDAT_PO Aggiorna uscite sulle unità periferiche
SFC 28 SET_TINT Imposta un allarme dall'orologio
SFC 29 CAN_TINT Cancella un allarme dall'orologio
SFC 30 ACT_TINT Attiva un allarme dall'orologio
SFC 31 QRY_TINT Interroga un allarme dall'orologio
SFC 32 SRT_DINT Avvia un allarme di ritardo
SFC 33 CAN_DINT Cancella un allarme di ritardo
N. Abbr. Funzione
SFC 34 QRY_DINT Interroga stato di un allarme di ritardo
SFC 35 MP_ALM Attiva allarme di multicomputing
SFC 36 MSK_FLT Maschera eventi di errore di sincronismo
SFC 37 DMSK_FLT Smaschera eventi di errore di sincronismo
SFC 38 READ_ERR Leggi registro di stato eventi
SFC 39 DIS_IRT Inibisci elaborazione di nuovi eventi di allarme e di errori di asincronismo
SFC 40 EN_IRT Abilita elaborazione di nuovi eventi di allarme e di errori di asincronismo
SFC 41 DIS_AIRT Ritarda elaborazione di eventi di allarme e di errori di asincronismo di priorità
maggiore
SFC 42 EN_AIRT Abilita elaborazione di eventi di allarme e di errori di asincronismo di priorità
maggiore
SFC 43 RE_TRIGR Riattiva la sorveglianza del tempo di ciclo
SFC 44 REPL_VAL Sostituisci un valore in ACCU 1
SFC 46 STP Conduci la CPU nello stato di funzionamento STOP
SFC 47 WAIT Ritarda l'elaborazione
SFC 48 SNC_RTCB Sincronizza orologi slave
SFC 49 LGC_GADR Determina il posto connettore appartenente ad un indirizzo logico
SFC 50 RD_LGADR Determina tutti gli indirizzi logici di un'unità
SFC 51 RDSYSST Leggi la lista di stato di sistema
SFC 52 WR_USMSG Scrivi un evento di diagnostica definito dall'utente nel buffer di diagnostica
SFC 54 RR_DPARM Legge parametri predefiniti
SFC 55 WR_PARM Scrivi parametri dinamici
SFC 56 WR_DPARM Scrivi parametri predefiniti
SFC 57 PARM_MOD Parametrizza una scheda
SFC 58 WR_REC Scrivi un set di dati nella periferia
SFC 59 RD_REC Leggi un set di dati dalla periferia
SFC 60 GD_SND Trasmissione programmata di un blocco GD
SFC 61 GD_RCV Ricezione programmata di un blocco GD ricevuto
SFC 62 CONTROL Interroga lo stato del collegamento relativo ad una istanza SFB di comunicazione
SFC 63 AB_CALL Richiama un blocco Assembler
SFC 64 TIME_TCK Time Tick
SFC 65 X_SEND Invia dati ad un partner di comunicazione esterno alla propria stazione S7
SFC 66 X_RCV Ricevi dati da un partner di comunicazione esterno alla propria stazione S7
SFC 67 X_GET Leggi dati da un partner di comunicazione esterno alla propria stazione S7
SFC 68 X_PUT Scrivi dati in un partner di comunicazione esterno alla propria stazione S7
SFC 69 X_ABORT Annullamento di un collegamento con un partner di comunicazione esterno alla
propria stazione S7
SFC 70 GEO_LOG Determinazione dell'indirizzo iniziale di un'unità
SFC 71 LOG_GEO Determinazione del posto connettore corrispondente a un indirizzo logico
SFC 72 I_GET Leggi dati da un partner di comunicazione interno alla propria stazione S7
SFC 73 I_PUT Scrivi dati in un partner di comunicazione interno alla propria stazione S7
N. Abbr. Funzione
SFC 74 I_ABORT Annulla un collegamento esistente con un partner di comunicazione interno alla
propria stazione S7
SFC 78 OB_RT Rilevamento tempo di esecuzione programma OB
SFC 79 SET Imposta il campo bit in area periferia
SFC 80 RSET Resetta il campo bit in area periferia
SFC 81 UBLKMOV Copia variabile senza interruzioni
SFC 82 CREA_DBL Creazione di un blocco dati nella memoria di caricamento
SFC 83 READ_DBL Lettura da un blocco dati nella memoria di caricamento
SFC 84 WRIT_DBL Scrittura in un blocco dati nella memoria di caricamento
SFC 85 CREA_DB Creazione di un blocco dati
SFC 87 C_DIAG Determinazione dello stato attuale del collegamento
SFC 90 H_CTRL Incidenza sugli stati di funzionamento delle CPU H
SFC 99 WWW Attivazione/sincronizzazione di pagine Web personalizzate
SFC 100 SET_CLKS Impostazione ora e relativo stato
SFC 101 RTM Gestione di contatori del tempo di esercizio
SFC 102 RD_DPARA Lettura di parametri predefinici
SFC 105 READ_SI Lettura di risorse di sistema a occupazione dinamica
SFC 103 DP_TOPOL Definizione della topologia di bus in un sistema master DP
SFC 104 CiR Comando dell’operazione CiR
SFC 105 READ_SI Lettura di risorse di sistema a occupazione dinamica
SFC 107 ALARM_DQ Creazione di messaggi riferiti ai blocchi confermabili
SFC 108 ALARM_D Creazione di messaggi riferiti ai blocchi sempre confermati
SFC 109 PROTECT Attivazione e disativazione della protezione di accesso CPU
SFC 112 PN_IN Aggiornamento degli ingressi dell'interfaccia del programma utente dei
componenti PROFInet
SFC 113 PN_OUT Aggiornamento delle uscite dell'interfaccia del programma utente dei componenti
PROFInet
SFC 114 PN_DP Aggiornamento delle interconnessioni DP
SFC 126 SYNC_PI Aggiornamento dell'immagine parziale di processo degli ingressi in sincronismo
di clock
SFC 127 SYNC_PO Aggiornamento dell'immagine parziale di processo delle uscite in sincronismo di
clock
* La SFC 63 "AB_CALL" esiste solo nella CPU 614. La sua descrizione è riportata nel rispettivo manuale
Abbr. N. Funzione
AB_CALL SFC 63 Richiama un blocco Assembler
ACT_TINT SFC 30 Attiva un allarme dall'orologio
ALARM_D SFC 108 Creazione di messaggi confermabili riferiti al blocco
ALARM_DQ SFC 107" Creazione di messaggi sempre confermabili riferiti al blocco
ALARM_S SFC 18 Crea segnalazioni riferite ai blocchi sempre confermate
ALARM_SC SFC 19 Determinazione dello stato di accettazione dell'ultimo messaggio ALARM_SQ
arrivato
ALARM_SQ SFC 17 Crea segnalazioni accettabili riferite ai blocchi
BLKMOV SFC 20 Ricopia una variabile
C_DIAG SFC_87 Determinazione dello stato attuale del collegamento
CAN_DINT SFC 33 Cancella un allarme di ritardo
CAN_TINT SFC 29 Cancella un allarme dall'orologio
CiR SFC 104 Comando dell’operazione CiR
COMPRESS SFC 25 Avvia compressione della memoria utente
CONTROL SFC 62 Interroga lo stato del collegamento che appartiene ad all'istanza di -
un'SFB di comunicazione
CREA_DB SFC 85 Crea un blocco dati
CREA_DBL SFC 82 Crea un blocco dati nella memoria di caricamento
CREAT_DB SFC 22 Crea un blocco dati
CTRL_RTM SFC 3 Avvia/arresta il contatore delle ore di esercizio
D_ACT_DP SFC 12 Disattivazione e attivazione di slave DP
DEL_DB SFC 23 Cancella un blocco dati
DEL_SI SFC 106 Abilitazione di risorse di sistema con occupazione dinamica
DIS_AIRT SFC 41 Ritarda elaborazione di eventi di allarme e di errori di asincronismo di priorità
maggiore
DIS_IRT SFC 39 Inibisci elaborazione di nuovi eventi di allarme e di errori di asincronismo
DIS_MSG SFC 10 Inibisci segnalazioni riferite ai blocchi e ai simboli e segnalazioni cumulative
tecnologiche
DMSK_FLT SFC 37 Smaschera eventi di errori di sincronismo
DP_PRAL SFC 7 Attiva un allarme di processo nel master DP
DP_TOPOL SFC 103 Definizione della topologia di bus in un sistema master DP
DPNRM_DG SFC 13 Leggi dei dati di diagnostica (diagnostica slave) di uno slave DP
DPRD_DAT SFC 14 Leggi dati coerenti di uno slave standard DP
DPSYC_FR SFC 11 Sincronizza gruppi di slave DP
DPWR_DAT SFC 15 Scrivi dati in modo coerente su uno slave standard DP
EN_AIRT SFC 42 Abilita elaborazione di eventi di allarme e di errori di asincronismo di maggiore
priorità
EN_IRT SFC 40 Abilita elaborazione di nuovi eventi di allarme e di errori di asincronismo
EN_MSG SFC 9 Abilita segnalazioni riferite ai blocchi e ai simboli e segnalazioni cumulative
tecnologiche
Abbr. N. Funzione
FILL SFC 21 Inizializza un campo
GADR_LGC SFC 5 Determina l'indirizzo di base logico di una unità
GD_RCV SFC 61 Ricezione programmata di un pacchetto GD ricevuto
GEO_LOG SFC 70 Determinazione dell'indirizzo iniziale di un'unità
GD_SND SFC 60 Trasmissione programmata di un pacchetto GD
H_CTRL SFC 90 Incide sugli stati di funzionamento delle CPU H
I_ABORT SFC 74 Annulla un collegamento esistente con un partner di comunicazione interno alla
propria stazione S7
I_GET SFC 72 Leggi dati da un partner di comunicazione interno alla propria stazione S7
I_PUT SFC 73 Scrivi dati in un partner di comunicazione interno alla propria stazione S7
LOG_GEO SFC 71 Determinazione del posto connettore corrispondente a un indirizzo logico
LGC_GADR SFC 49 Determina il posto connettore appartenente ad un indirizzo logico
MP_ALM SFC 35 Attiva allarme di multicomputing
MSK_FLT SFC 36 Maschera eventi di errore di sincronismo
OB_RT SFC 78 Rilevazione del tempo di esecuzione programma dell'OB
PARM_MOD SFC 57 Parametrizza un'unità
PN_DP SFC 114 Aggiornamento delle interconnessioni DP
PN_IN SFC 112 Aggiornamento degli ingressi dell'interfaccia del programma utente dei
componenti PROFInet
PN_OUT SFC 113 Aggiornamento delle uscite dell'interfaccia del programma utente dei componenti
PROFInet
PROTECT SFC 109 Attivazione e disativazione della protezione di accesso CPU
QRY_DINT SFC 34 Interroga stato di un allarme di ritardo
QRY_TINT SFC 31 Interroga un allarme dall'orologio
RD_DPARA SFC 102 Legge parametri predefiniti
RD_DPARM SFC 54 Legge parametri predefiniti
RD_LGADR SFC 50 Determina tutti gli indirizzi logici di un'unità
RD_REC SFC 59 Leggi un set di dati dalla periferia
RD_SINFO SFC 6 Leggi informazione di avvio dell'OB attuale
RDSYSST SFC 51 Leggi lista di stato di sistema
RE_TRIGR SFC 43 Retrigger del controllo del tempo di ciclo
READ_CLK SFC 1 Leggi orologio
READ_DBL SFC 83 Lettura di un blocco dati nella memoria di caricamento
READ_ERR SFC 38 Leggi registro di stato eventi
READ_RTM SFC 4 Lettura del contatore ore di esercizio
READ_SI SFC 105 Lettura di risorse di sistema con occupazione dinamica
REPL_VAL SFC 44 Sostituisci un valore in ACCU 1
RSET SFC 80 Resetta campo di bit nell'area periferia
RTM SFC 101 Gestione di contatori del tempo di esercizio
SET SFC 79 Imposta campo di bit nell'area periferia
SET_CLK SFC 0 Imposta orologio
SET_CLKS SFC 100 Imposta orologio e relativo stato
Abbr. N. Funzione
SET_RTM SFC 2 Imposta il contatore del tempo di esercizio
SET_TINT SFC 28 Imposta un allarme dall'orologio
SNC_RTCB SFC 48 Sicronizza orologi slave
SRT_DINT SFC 32 Avvia allarme di ritardo
STP SFC 46 Conduci CPU nello stato di funzionamento STOP
SYNC_PI SFC 126 Aggiornamento dell'immagine parziale di processo degli ingressi
SYNC_PO SFC 127 Aggiornamento dell'immagine parziale di processo delle uscite
TEST_DB SFC 24 Test di un blocco dati
TIME_TCK SFC 64 Time Tick
UBLKMOV SFC 81 Copia la variabile senza interruzioni
UPDAT_PI SFC 26 Aggiorna l'immagine di processo degli ingressi
UPDAT_PO SFC 27 Aggiorna uscite sulle unità periferiche
WAIT SFC 47 Ritarda l'elaborazione
WR_DPARM SFC 56 Scrivi parametri predefiniti
WRIT_DBL SFC 84 Scrittura in un blocco dati nella memoria di caricamento
WR_PARM SFC 55 Scrivi parametri dinamici
WR_REC SFC 58 Scrivi set di dati nella periferia
WR_USMSG SFC 52 Scrivi evento di diagnostica definito dall'utente nel buffer di diagnostica
WWW SFC 99 Attivazione/sincronizzazione di pagine Web personalizzate
X_ABORT SFC 69 Annullamento di un collegamento con un partner di comunicazione esterno alla
propria stazione S7
X_GET SFC 67 Leggi dati da un partner di comunicazione esterno alla propria stazione S7
X_PUT SFC 68 Scrivi dati in un partner di comunicazione esterno alla propria stazione S7
X_RCV SFC 66 Ricevi dati da un partner di comunicazione esterno alla propria stazione S7
X_SEND SFC 65 Invia dati ad un partner di comunicazione esterno alla propria stazione S7
* La SFC 63 "AB_CALL" esiste solo nella CPU 614. La sua descrizione è riportata nel rispettivo manuale.
N. Abbr. Funzione
SFB 0 CTU Conta in avanti
SFB 1 CTD Conta all'indietro
SFB 2 CTUD Conta in avanti e all'indietro
SFB 3 TP Crea un impulso
SFB 4 TON Crea ritardo all'inserzione
SFB 5 TOF Crea ritardo alla disinserzione
SFB 8 USED Trasmissione incoordinata di dati
SFB 9 URCV Ricezione incoordinata di dati
SFB 12 BSEND Trasmissione di dati a blocchi
SFB 13 BRCV Ricezione di dati a blocchi
SFB 14 GET Leggi dati da una CPU remota
SFB 15 PUT Scrivi dati in una CPU remota
SFB 16 PRINT Invia dati a una stampante
SFB 19 START Esegui un nuovo avviamento (avviamento a caldo) o avviamento a freddo in un
dispositivo remoto
SFB 20 STOP Commuta un dispositivo remoto nello stato di funzionamento STOP
SFB 21 RESUME Esegui un riavviamento in una unità remota
SFB 22 STATUS Interroga lo stato del dispositivo di un partner remoto
SFB 23 USTATUS Ricezione incoordinata di uno stato di dispositivo remoto
SFB 29 HS_COUNT Contatore (high speed counter, integrated function)
SFB 30 FREQ_MES Misuratore di frequenza (frequency meter, integrated function)
SFB 31 NOTIFY_8P Crea segnalazioni riferite ai blocchi senza visualizzazione della conferma
SFB 32 DRUM Realizza un dispositivo di avanzamento a passi
SFB 33 ALARM Crea segnalazioni riferite ai blocchi con visualizzazione della conferma
SFB 34 ALARM_8 Crea segnalazioni riferite ai blocchi senza variabili per otto segnali
SFB 35 ALARM_8P Crea segnalazioni riferite ai blocchi con variabili per otto segnali
SFB 36 NOTIFY Crea segnalazioni riferite ai blocchi senza visualizzazione della conferma
SFB 37 AR_SEND Trasmetti dati d'archivio
SFB 38 HSC_A_B Contatore A/B (integrated function)
SFB 39 POS Posizionamento (integrated function)
1)
SFB 41 CONT_C Regolazione continua
1)
SFB 42 CONT_S Regolazione a passi
SFB 43 PULSEGEN Formazione di impulsi
1)
2)
SFB 44 ANALOG Posizionamento con uscita analogica
2)
SFB 46 DIGITAL Posizionamento con uscita digitale
2)
SFB 47 COUNT Comando del contatore
SFB 48 FREQUENC Comando della misurazione della frequenza
2)
N. Abbr. Funzione
2)
SFB 49 PULSE Comando della modulazione dell'ampiezza degli impulsi
SFB 52 RDREC Lettura di un set di dati
SFB 53 WRREC Scrittura di un set di dati
SFB 54 RALRM Ricezione di un allarme
SFB 60 SEND_PTP Invio di dati (ASCII, 3964(R))
2)
2)
SFB 61 RCV_PTP Ricezione di dati (ASCII, 3964(R))
SFB 62 RES_RCVB Cancellazione del buffer ricevente (ASCII, 3964(R))
2)
2)
SFB 63 SEND_RK Invio di dati (RK 512)
SFB 64 FETCH_RK Prelievo di dati (RK 512)
2)
Abbr. N. Funzione
ALARM SFB 33 Crea segnalazioni riferite ai blocchi con visualizzazione della conferma
ALARM_8 SFB 34 Crea segnalazioni riferite ai blocchi senza variabili per otto segnali
ALARM_8P SFB 35 Crea segnalazioni riferite ai blocchi con variabili per otto segnali
2)
ANALOG SFB 44 Posizionamento con uscita analogica
AR_SEND SFB 37 Trasmetti dati d'archivio
BRCV SFB 13 Ricezione di dati a blocchi
BSEND SFB 12 Trasmissione di dati a blocchi
1)
CONT_C SFB 41 Regolazione continuativa
1)
CONT_S SFB 42 Regolazione a passi
2)
COUNT SFB 47 Comando del contatore
CTD SFB 1 Conta in avanti
CTU SFB 0 Conta all'indietro
CTUD SFB 2 Conta in avanti e all'indietro
2)
DIGITAL SFB 46 Posizionamento con uscita digitale
DRUM SFB 32 Realizza un dispositivo di avanzamento a passi
2)
FETCH_RK SFB 64 Prelievo di dati (RK 512)
*
FREQ_MES SFB 30 Misuratore di frequenza (frequency meter, integrated function)
2)
FREQUENC SFB 48 Comando della misurazione della frequenza
GET SFB 14 Leggi dati da una CPU remota
HSC_A_B SFB 38 Contatore A/B (integrated function)
HS_COUNT SFB 29 Contatore (high speed counter, integrated function)
IP_CONF SFB 104 Impostazione della configurazione IP
NOTIFY SFB 36 Crea segnalazioni riferite ai blocchi senza visualizzazione della conferma
NOTIFY_8P SFB 31 Crea segnalazioni riferite ai blocchi senza visualizzazione della conferma
POS SFB 39 Posizionamento (integrated function)
PRINT SFB 16 Trasmetti dati a una stampante
PRVREC SFB 74 Messa a disposizione set di dati
2)
PULSE SFB 49 Comando della modulazione dell'ampiezza degli impulsi
1)
PULSEGEN SFB 43 Formazione di impulsi
PUT SFB 15 Scrivi dati in una CPU remota
RALRM SFB 54 Ricezione di un allarme
RD_DPAR SFB 81 Lettura di parametri predefiniti
RDREC SFB 52 Lettura di un set di dati
2)
RCV_PTP SFB 61 Ricezione di dati (ASCII, 3964(R))
RCVREC SFB 73 Ricezione set di dati
2)
RES_RCVB SFB 62 Cancellazione del buffer ricevente (ASCII, 3964(R))
RESUME SFB 21 Esegui un riavviamento in un dispositivo remoto
SALRM SFB 75 Trasmetti allarme al master DP
Abbr. N. Funzione
2)
SEND_PTP SFB 60 Invio di dati (ASCII, 3964(R))
2)
SEND_RK SFB 63 Invio di dati (RK 512)
2)
SERVE_RK SFB 65 Ricezione e messa a disposizione di dati (RK 512)
START SFB 19 Esegui un nuovo avviamento (avviamento a caldo) o avviamento a freddo in
un dispositivo remoto
STATUS SFB 22 Interroga lo stato del dispositivo di un partner remoto
STOP SFB 20 Commuta un dispositivo remoto nello stato di funzionamento STOP
TOF SFB 5 Crea ritardo alla disinserzione
TON SFB 4 Crea ritardo all'inserimento
TP SFB 3 Crea un impulso
URCV SFB 9 Ricezione incoordinata di dati
USEND SFB 8 Trasmissione incoordinata di dati
USTATUS SFB 23 Ricezione incoordinata di uno stato di dispositivo remoto
WRREC SFB 53 Scrittura di un set di dati
* L'SFB 29 "HS_COUNT" e l'SFB 30 "FREQ_MES" sono presenti solo sulla CPU 312 IFM e sulla CPU 314 IFM. L'SFB 38
"HSC_A_B" e l'SFB 39 "POS" sono presenti solo sulla CPU 314 IFM. La loro descrizione è riportata in /73/.
1) Gli SFB 41 "CONT_C", 42 "CONT_S" e 43 "PULSEGEN" sono presenti solo sulla CPU 314 IFM.
Accumulatore
Il termine accumulatore indica registri della CPU aventi la funzione di memoria intermedia per
funzioni di caricamento, trasferimento, confronto, calcolo e conversione.
Allarme
SIMATIC S7 conosce 10 differenti classi di priorità che regolano l'elaborazione del programma
utente. In queste classi rientrano p. es. gli allarmi e gli interrupt di processo. Al verificarsi di un errore
il sistema operativo richiama automaticamente un blocco organizzativo corrispondente, nel quale
l'utente può programmare la reazione desiderata (p. es. in un FB).
Allarme di diagnostica
Tramite gli allarmi di diagnostica le unità predisposte per la diagnostica segnalano alla unità centrale
gli errori di sistema riconosciuti.
Allarme di ritardo
L'allarme di ritardo fa parte di una delle classi di priorità di SIMATIC S7 e viene generato al termine di
un intervallo determinato nel programma utente. Successivamente viene elaborato il corrispondente
OB.
Avviamento a freddo
Tipo di avviamento della CPU. Questo tipo di avviamento a freddo fa sì che i blocchi dati generati con
le SFC nella memoria principale vengano cancellati, e che i restanti blocchi di dati abbiano il valore
reimpostato per default nella memoria di caricamento. L’immagine di processo, i tempi, i contatori ed
i merker vengono resettati indipendentemente dal fatto che siano stati parametrizzati come retentivi.
Nell’avviamento a freddo la CPU elabora l’OB 102, viene letta l'immagine di processo degli ingressi e
il programma utente viene elaborato iniziando dal primo comando nell'OB 1.
AWL
Lista istruzioni
Blocco dati
Blocchi dati (DB) sono aree dati nel programma utente, che contengono dati dell'utente. Esistono
blocchi dati globali, ai quali si può accedere da tutti i blocchi di codice, ed esistono blocchi dati di
istanza, che sono assegnati ad un determinato richiamo dell'FB.
Blocco di codice
Nel SIMATIC S7 il blocco di codice è un blocco contenente una parte del programma utente STEP 7.
Al contrario un blocco dati contiene solo dati. Esistono i seguenti blocchi di codice: blocchi
organizzativi (OB), blocchi funzionali (FB), funzioni (FC), blocchi funzionali di sistema (SFB), blocchi
funzionali standard (SFB), funzioni di sistema (SFC).
Blocco organizzativo
I blocchi organizzativi costituiscono l'interfaccia tra il sistema operativo della CPU e il programma
utente. Nei blocchi organizzativi viene definita la sequenza nella quale viene elaborato il programma
utente.
Buffer di diagnostica
Il buffer di diagnostica è un'area di memoria tamponata nell'unità centrale, nella quale sono
depositati tutti gli eventi di diagnostica secondo la sequenza nella quale si sono verificati.
Classe di priorità
Il sistema operativo di una CPU offre un massimo di 28 classi di priorità, alle quali sono assegnati
differenti blocchi organizzativi (OB). Le classi di priorità determinano quali OB interrompono altri OB.
Se una classe di priorità comprende più OB, questi non si interrompono reciprocamente ma vengono
elaborati in successione.
Componente I
Componente integrato del regolatore.
Dopo una variazione a gradino della grandezza regolata (deviazione di regolazione) la grandezza
regolata di uscita varia a forma di rampa nel tempo, e cioè con un tasso di variazione proporzionale al
fattore di azione integrale KI (= 1/TI). Il componente integrale fa sì che nel circuito di regolazione
chiuso la grandezza di uscita venga regolata fino a quando la differenza di regolazione è diventata
zero.
Controllore visualizzato
Il controllore visualizzato è un dispositivo sul quale vengono visualizzati i risultati del processo.
Costante
Le costanti sono nomi simbolici che rappresentano valori costanti nei blocchi di codice. Le costanti
vengono utilizzate per aumentare la leggibilità del programma. Esempio: invece di indicare
direttamente un valore (p. es. 10), viene indicato in un blocco funzionale il "numero max delle
esecuzioni di un ciclo"; al richiamo di questo blocco viene poi indicato il valore della costante (p. es.
10).
Dati di diagnostica
I dati di diagnostica sono informazioni contenute nei messaggi di errore (evento di diagnostica,
registrazione del tempo).
Dichiarazione di variabili
La Dichiarazione di variabili contiene la definizione di un nome simbolico, di un tipo di dato, ed
eventualmente valore di preinizializzazione, indirizzo e commento.
Dispositivo remoto
Dispositivi remoti sono dispositivi, p. es. stampante o computer, che vengono raggiunti attraverso
una rete. Essi si differenziano dai dispositivi locali per l'indirizzo di rete, che deve essere introdotto
durante l'installazione del dispositivo.
Errore cumulativo
La visualizzazione degli errori mediante spie luminose sul lato frontale dell'unità è prevista solo in
S7-300. In casi di errore si illumina la spia luminosa dell'unità nella quale si è verificato l'errore (errori
interni e errori esterni).
Errore di asincronismo
Errori di asincronismo sono errori a tempo di esecuzione che non possono essere attribuiti a nessun
punto particolare del programma utente. (es. guasto di alimentazione, superamento del tempo di
ciclo). Al verificarsi di questi errori il sistema operativo richiama gli OB corrispondenti nei quali
l'utente può programmare una reazione.
Errore di sincronismo
Errori di sincronismo sono errori a tempo di esecuzione che possono essere attribuiti ad una
determinata parte del programma utente (errore nell'accesso ad una determinata unità periferica). Al
verificarsi di questi errori il sistema operativo richiama i corrispondenti blocchi organizzativi nei quali
l'utente può programmare una determinata reazione.
Errori di sistema sono errori che possono presentarsi all'interno di un controllore programmabile
(dunque non nel processo). Sono errori di sistema p. es. gli errori di programma nella CPU e i guasti
sulle unità.
Eventi di avvio
Eventi di avvio sono eventi definiti come p. es. errori o allarmi che inducono il sistema operativo ad
avviare un corrispondente blocco organizzativo.
Funzioni di sistema
Una funzione di sistema (SFC) è una funzione integrata nel sistema operativo della CPU che può
essere richiamata dall'utente in caso di necessità.
Funzioni standard
Funzioni standard offerte dalla Siemens per la soluzione di problemi complessi.
Indirizzamento
Assegnamento di un indirizzo nel programma utente. Gli indirizzi possono essere assegnati a
determinati operandi o campi di operandi (p. es: ingresso E12.1; parola di merker MW25).
Indirizzo
Un indirizzo contrassegna un determinato operando o un campo di operandi; es: ingresso E12.1;
parola di merker MW25; blocco dati DB3.
Informazione di avvio
Se il sistema operativo avvia un blocco organizzativo, il sistema operativo trasmette un'informazione
di avvio, che può essere analizzata nel programma utente.
Interrupt di processo
Un interrupt di processo viene provocato da unità periferiche in grado di emettere interrupt a causa di
un determinato evento nel processo. L'interrupt di processo viene segnalato alla CPU e, a seconda
della priorità assegnata a tale interrupt, viene elaborato il corrispondente blocco organizzativo.
Istruzione
Un'istruzione (STEP 5 o STEP 7) è la più piccola unità autonoma di un programma utente creato in
un linguaggio testuale e rappresenta una sorta di direttiva di lavoro per il processore.
Merker
Un merker è una memoria di 1 bit. Con le operazioni fondamentali di STEP 7 l'accesso al merker è
possibile sia in lettura sia in scrittura (in bit, byte, a una parola e a due parole). Il campo dei merker
può essere utilizzato dall'utente per memorizzare risultati intermedi.
Messaggio di diagnostica
Il messaggio di diagnostica è formato da un evento di diagnostica e viene trasmesso dall'unità
centrale al dispositivo di visualizzazione.
Nuovo avviamento
All'avviamento di una unità centrale (p. es. dopo l'azionamento del selettore dei modi operativi da
STOP a RUN o con tensione di rete ON) l'elaborazione ciclica del programma (OB 1) elabora prima
il blocco organizzativo OB 101 (riavviamento; solo con S7-400) o il blocco organizzativo OB 101
(avviamento a freddo). Nel nuovo avviamento viene letta l'immagine di processo degli ingressi e il
programma utente STEP 7 viene elaborato iniziando dal primo comando nell'OB 1.
OB 1
L'OB 1 è l'interfaccia tra l'utente e il programma di sistema per l'elaborazione ciclica del programma.
OB di avviamento
Gli OB di avviamento sono blocchi organizzativi che vengono richiamati dal sistema di esecuzione in
caso di "Avviamento a freddo", "Nuovo avviamento (avviamento a caldo)" oppure "Riavviamento"
("riavviamento" solo in S7-400). Nell'OB di avviamento l'utente può ad esempio predefinire quale
avviamento deve essere richiamato a seguito della mancanza della tensione di rete.
Sono disponibili gli OB di avviamento seguenti:
• OB100 al nuovo avviamento (avviamento a caldo)
• OB101 al riavviamento
• OB102 all'avviamento a freddo
OB di errore
Gli OB di errore sono blocchi organizzativi con l'ausilio dei quali l'utente può programmare la
reazione ad errori. Una reazione programmata ad un errore è tuttavia possibile solo se l'errore non
conduce all'arresto del dispositivo di automazione. Ai diversi tipi di errore corrispondono differenti
OB di errore (es. OB di errore per errori di indirizzamento o per errori di accesso in S7).
Parametri
Parametri attuali
I parametri attuali sostituiscono i parametri formali al richiamo di un blocco funzionale (FB) o di una
funzione (FC). Es.: Il parametro formale "REQ" viene sostituito dal parametro attuale "E 3.6".
Parametri di ingresso
I parametri di ingresso sono presenti solo nelle funzioni e nei blocchi funzionali. Con l'ausilio dei
parametri di ingresso vengono trasferiti dati per l'elaborazione al blocco richiamato.
Parametri di unità
I parametri di unità sono valori con i quali può essere impostato il comportamento delle unità. Una
parte di questi parametri (specifici dell'unità) può essere modificato nel programma utente.
Parametri dinamici
I parametri dinamici delle unità, a differenza dei parametri statici, possono essere modificati durante
il servizio mediante richiamo di una SFC, p. es. valori limite di un'unità di ingresso analogica.
Parametri formali
Un parametro formale è un segnaposto per un parametro "reale" (parametro attuale) nei blocchi di
codice parametrizzabili. In FB e FC i parametri formali vengono dichiarati dall'utente, in SFB e in
SFC essi sono già disponibili. Al richiamo del blocco viene assegnato un parametro attuale al
parametro formale, per cui il blocco richiamato funziona con il suo valore attuale. I parametri formali
fanno parte dei dati locali del blocco e sono suddivisi in parametri di ingresso, di uscita e di transito.
Parametri statici
I parametri statici delle unità, a differenza dei parametri dinamici, non possono essere modificati nel
programma utente, bensì solo nell'applicazione STEP 7, p. es. il ritardo di ingresso di un'unità di
ingresso digitale.
Priorità
Con la priorità, che viene assegnata ai blocchi organizzativi dall'utente, viene determinata la
sequenza di interruzione degli eventi nel programma utente. Gli eventi di priorità superiore
interrompono gli eventi di priorità inferiore.
Priorità di OB
Il sistema operativo della CPU distingue diverse classi di priorità (es. elaborazione ciclica,
elaborazione comandata da interrupt di processo). A ogni classe di priorità sono assegnati blocchi
organizzativi (OB) nei quali l'utente S7 può programmare una reazione. Gli OB hanno diverse
priorità. Tali priorità determinano la sequenza di elaborazione o l'interruzione reciproca in caso di più
errori contemporanei. Le priorità preimpostate nella versione standard possono essere modificate
dall'utente S7.
Programma utente
Il programma utente contiene tutte le istruzioni e dichiarazioni nonché i dati per l'elaborazione dei
segnali, con i quali un impianto o un processo può essere controllato. Esso è assegnato ad un'unità
programmabile (p. es. CPU, FM) e può essere strutturata in unità più piccole (blocchi).
Programmazione simbolica
Il linguaggio di programmazione STEP 7 permette l'impiego di sequenze di caratteri simbolici al
posto di operandi STEP 7. Ciò significa che, per esempio, un operando STEP 7 "A 1.1" può essere
sostituito da "valvola 17".
La cosiddetta lista dei simboli in STEP 7 stabilisce il collegamento tra l'operando e la sequenza di
caratteri simbolici assegnati.
Registrazione di diagnostica
La registrazione definisce un evento di diagnostica nel buffer di diagnostica.
Regolatore
Un regolatore è un dispositivo che registra in permanenza la deviazione di regolazione
(comparatore) e che genera una funzione - se necessario, in funzione del tempo - per la formazione
del segnale di regolazione (grandezza di uscita), con l'obiettivo di far scomparire rapidamente e
senza sovraelongazione la deviazione di regolazione.
Regolatore a passi
Il regolatore a passi è un regolatore quasi continuo con uscita discontinua (e servoazionamento a
motore con effetto I). Il segnale di regolazione ha un comportamento a tre punti, p. es. verso l'alto -
arresto - verso il basso, oppure chiusura - stabilizzazione - apertura
(vedere Regolatore a tre punti).
Regolatore continuativo
Nel regolatore continuativo ogni variazione della deviazione di regolazione comporta una variazione
della grandezza di regolazione e quest'ultima può assumere qualsiasi valore nel campo di
regolazione.
Regolatore P
Algoritmo per il calcolo di un segnale di uscita, nel quale sussiste un rapporto proporzionale tra la
deviazione di regolazione e la variazione della grandezza di disturbo. Caratteristiche: deviazione di
regolazione stazionaria, non utilizzabile su sistemi di tempo morto.
Regolatore PI
Algoritmo per il calcolo di un segnale di uscita, nel quale la variazione della grandezza di disturbo è
costituita da un componente proporzionale alla deviazione di regolazione e da un componente I, che
è proporzionale al valore della deviazione di regolazione e del tempo. Caratteristiche: nessuna
deviazione di regolazione rimanente, correzione più rapida rispetto al regolatore I, adatta a tutti i
sistemi regolati.
Regolatore PID
Algoritmo per il calcolo di un segnale di uscita, che viene formato mediante moltiplicazione,
integrazione e differenziazione dalla deviazione di regolazione. L'algoritmo PID è eseguito in una
pura ! struttura parallela. Caratteristica: elevata qualità di regolazione raggiungibile, fino a quando il
tempo morto del sistema regolato non è maggiore della somma delle altre costanti di tempo.
Regolazione integrata
Una regolazione integrata è un blocco controllore finito, archiviato nel sistema operativo, che
contiene le principali funzioni di un'applicazione di regolazione. L'utente può inserire o disinserire le
funzioni con l'"interruttore di software".
Regolazione di miscela
La regolazione di miscela è una struttura di regolazione, nella quale il valore di riferimento per la
quantità intera SP viene convertito percentualmente nelle percentuali della quantità desiderata dei
singoli componenti regolati. La somma dei fattori di miscela FAC deve essere 1 (=100 %).
Riavviamento
All'avviamento di una unità centrale (p. es dopo l'azionamento del selettore dei modi operativi da
STOP a RUN o con tensione di rete ON) l'elaborazione ciclica del programma (OB 1) elabora prima
il blocco organizzativo OB 100 (nuovo avviamento) o il blocco organizzativo (OB 102) (avviamento a
freddo). Al riavviamento viene letta l'immagine di processo degli ingressi e l'elaborazione del
programma utente STEP 7 viene proseguita nel punto, in cui esso è stato terminato durante l'ultima
interruzione (STOP, interruzione di rete).
SCAN
Lo SCAN è una funzione del sistema operativo integrata nella CPU per leggere un segnale in un
reticolo temporale predefinito e per verificare se è presente un cambiamento di segnale.
Schedulazione orologio
La schedulazione orologio fa parte di una delle classi di priorità dell'elaborazione di programma di
SIMATIC S7. Essa viene generata in funzione di una data precisa (o giornalmente) e di un'ora (es.
9:50 oppure ogni ora o ogni minuto). Successivamente viene elaborato un OB corrispondente.
Segnalazione
Per segnalazione si intende l'avviso del verificarsi di un evento di segnalazione. La segnalazione può
essere emessa sul controllore di visualizzazione progettato a questo scopo e contiene priorità, luogo
e momento dell'evento di segnalazione e un'indicazione sul passaggio di stato (entrante/uscente).
SFB
Blocchi funzionali standard, ossia blocchi funzionali offerti dalla Siemens per la soluzione di problemi
complessi. Un blocco funzionale di sistema (SFB) è un blocco funzionale integrato nel sistema
operativo della CPU, che può essere richiamato, se necessario, nel programma utente STEP 7.
SFC
Una SFC (funzione di sistema) è una funzione integrata nel sistema operativo della CPU, che può
essere richiamata dall'utente in caso di necessità.
Sistema
! Sistema regolato
Sistema regolato
Con "sistema regolato" si indica il settore parziale dell'impianto nel quale la grandezza regolata viene
influenzata dalla grandezza regolante (mediante variazione dell'energia di regolazione o della
corrente di massa). Esso può essere suddiviso in apparecchiatura di attuazione e processo
influenzato.
Sotto-numero
Numero del segnale da controllare se il blocco di segnalazione può controllare più di un segnale.
STEP 7
Software di programmazione per la generazione di programmi utente di controllori SIMATIC S7.
Struttura parallela
La struttura parallela è un tipo speciale di elaborazione di segnali nel regolatore (tipo di elaborazione
matematica). I componenti P, I e D vengono calcolati come attivi in parallelo e senza interazione e
quindi sommati.
Tool
Un tool è uno strumento software per la progettazione e la programmazione.
Variabile
Una variabile definisce un dato con contenuto variabile che può essere utilizzato nel programma
utente STEP 7. Una variabile si compone di un operando (es. M 3.1), di un tipo di dato (es. BOOL) e
viene contraddistinta mediante un simbolo (p. es. BAND_EIN).
B C
Bibliografia 847 C_CNTRL 444
BLKMOV 105 C_DIAG 264
Blocchi dati Cambiamento di stato di un dispositivo 438
cancellazione con la SFC 23 113 ricezione del cambiamento di stato di un dispositivo
test con la SFC 24 115 remoto 438
Blocchi di comunicazione di base S7 371 Campo dati di sistema 151, 152
Panoramica 371 Campo di bit nell'area della periferia
Blocco assemblatore impostazione con la SFC 79 281
richiamo 733 Campo di bit nell'area di periferia
Determinazione della topologia di bus in un sistema Errore di canale 736, 737, 738
master DP 270 Errore di comunicazione 235
Determinazione dell'indirizzo iniziale di un'unità con la Errore di conversione BCD 225
SFC 70 "GEO_LOG" 292 Errore di esecuzione del programma 65
DI_STRNG 603 Errore di esecuzione programma 235
Diagnostica con SFC 87 264 Errore di indirizzamento
Diagnostica di sistema 243 in lettura 225
Differenze fra i blocchi di comunicazione S7 e i blocchi di in scrittura 225
comunicazione di base S7 363 Errore di lunghezza di campo 225
Dimensioni dei dati utili 378 in lettura 225
DIS_AIRT 241 in scrittura 230
DIS_IRT 237 Errore di modo comune
DIS_MSG 549 unità ingressi analogici: 739
Disabilitazione della risposta a nuovi allarmi ed eventi di unità uscite analogiche: 739
errori di asincronismo con la SFC39 "DIS_IRT" 237 Errore di modo comune: 739
Disabilitazione della risposta ad allarmi Errore di numero del blocco 225
con la SFC 39 DIS_IRT 237 Errore di parametrizzazione
Disabilitazione della risposta ad eventi di errori di unità ingressi analogici: 739
asincronismo unità uscite analogiche: 739
con la SFC 39 DIS_IRT 237 Errore di parametrizzazione: 739
Disattivazione e attivazione di slave DP/PROFINET IO Errore di progettazione
Device con l'SFC 12 "D_ACT_DP" 306 unità ingressi analogici: 739
DMSK_FLT 233 unità uscite analogiche: 739
DP_PRAL 297 Errore di progettazione: 739
DP_TOPOL 270 Errore di programma 225
DPNRM_DG 313 Errore di programmazione 86
DPRD_DAT 317 Errore di scrittura 230
DPWR_DAT 320 Blocco dati 230
DRUM 284 Blocco dati di istanza 230
DT_DATE 589 Errore di tempo 236
DT_DAY 589 Errore esterno 736
DT_TOD 590 Errore hardware CPU 63, 235
Errore interno 736
E Errori di sincronismo
OB 121 86
EN_AIRT 242 OB 122 89
EN_IRT 239 Esecuzione di un nuovo avviamento (avviamento a caldo)
EN_MSG 551 o un avviamento a freddo nel dispositivo remoto 426
EQ_DT 592 Esecuzione di un nuovo avviamento (avviamento a caldo)
EQ_STRNG 600 o un avviamento a freddo nel dispositivo remoto con
Errore canale di riferimento l'SFB 19 "START" 426
unità ingressi analogici: 739 Esecuzione di un riavviamento in un dispositivo remoto
Errore canale di riferimento: 739 con l'SFB21 "RESUME" 432
Errore del numero di contatore 225 Esempio con un blocco PULSEGEN 638
Errore del tempo di ciclo 48 Eventi di comunicazione 825
Errore di accesso 231 Eventi di errori di sincronismo 816
Errore di accesso alla periferia demascheramento con la SFC 37 DMSK_FLT 233
in lettura 225 mascheramento con la SFC 36 MSK_FLT 232
in scrittura 225 Eventi di OB standard 815
Errore di campo 229 Eventi di stop ed interruzioni 818
in lettura 225 Eventi e ID di evento 815
Interrogazione dello stato del collegamento appartenente Lettura del registro di stato eventi con la SFC 38
ad un'istanza SFB di comunicazione con la SFC 62 "READ_ERR" 234
"CONTROL" 441 Lettura del tempo di sistema
Interrogazione dello stato di un allarme di ritardo con la SFC 64 TIME_TCK 149
con la SFC 34 QRY_DINT 222 Lettura del tempo di sistema con la SFC 64 "TIME_TCK"
Interrogazione dello stato di un allarme di ritardo con la 149
SFC 34 "QRY_DINT" 222 Lettura dellinformazione di avvio dellOB attuale 243
Interrogazione dello stato di un dispositivo partner remoto Lettura dell'informazione di avvio dell'OB attuale con la
con l'SFB 22 "STATUS" 435 SFC 6 "RD_SINFO" 243
Interrogazione di un allarme dallorologio Lettura dellorologio
con la SFC 31 QRY_TINT 217 con la SFC 1 READ_CLK 138
Interrogazione di un allarme dall'orologio con la SFC 31 Lettura dell'orologio con la SFC 1 "READ_CLK" 138
"QRY_TINT" 217 Lettura di dati coerenti di uno slave standard DP con lSFC
Interrupt di processo 25, 235 14 "DPRD_DAT" 317
Interruzione del circuito Lettura di dati da un partner di comunicazione esterno alla
un 739, 740, 741 propria stazione S7 con la SFC 67 "X_GET" 462
unità ingressi analogici: 739 Lettura di dati da un partner di comunicazione interno alla
Interruzione del circuito: 739 propria stazione S7 con la SFC 72 "I_GET" 468
Introduzione alla creazione di segnalazioni riferite ai Lettura di dati di diagnostica (diagnostica slave) di uno
blocchi con gli SFB 527 slave DP con lSFC13 "DPNRM_DG" 313
Introduzione alla creazione di segnalazioni riferite ai Lettura di parametri predefiniti con la SFC 102
blocchi con le SFC 555 "RD_DPARA" 154
Invio di dati ad un partner di comunicazione esterno alla Lettura di parametri predefiniti con la SFC 54
propria stazione S7 con la SFC 65 "X_SEND" 453 "RD_DPARM" 153
Invio di dati ad una stampante con l'SFB 16 "PRINT" 419 Lettura di parametri predefiniti con l'SFB 81 "RD_DPAR"
Invio di dati con lFB 63 "TSEND" 508 168
Invio di dati tramite il protocollo UDP con lFB 67 Lettura di risorse di sistema a occupazione dinamica con
"TUSEND" 516 la SFC 105 "READ_SI" 567
Invio di un'area completa o parziale di un blocco dati a un Lettura di set di dati con la SFC 59 "RD_REC" 163
partner della comunicazione 689 Lettura di tutti gli ingressi di uno slave DP standard
Invio di un'area completa o parziale di un blocco dati a un /PROFINET IO Device tramite l'FB 20 "GETIO" 350
partner della comunicazione (RK 512) 697 Lettura di un blocco dati nella memoria di caricamento con
IP_CONF 334 la SFC 83 "READ_DBL" 122
Lettura di un set di dati con l'SFB 52 "RDREC" 171
L Lettura di una lista parziale SZL o di un estratto della lista
parziale SZL con la SFC 51 "RDSYSST" 246
LE_DT 593 Lettura di una parte degli ingressi di uno slave DP
LE_STRNG 601 standard /PROFINET IO Device con l'FB 22
LEFT 597 "GETIO_PART" 352
LEN 597 LGC_GADR 289
Lettura LIMIT 606
con SFC 51 RDSYSST 246 Lista degli SFB
dati coerenti in uno slave standard DP 317 in ordine alfabetico 845
dati di diagnostica di uno slave DP 313 in ordine numerico 843
Lettura dei dati da una CPU remota con l'FB 34 "GET_E" Lista delle SFC
406 in ordine alfabetico 840
Lettura dei dati di una CPU remota con l'SFB/FB 14 "GET" Lista delle SFC in ordine numerico 837
416 Lista di stato di sistema 743, 745
Lettura del contatore con la SFC4"READ_RTM" 148 liste parziali 746
Lettura del contatore del tempo di esercizio Liste parziali SZL possibili 746
con la SFC 4 READ_RTM 148 LOG_GEO 294
LT_DT 594 OB 70 41
LT_STRNG 602 OB 72 44
OB 73 47
M OB 88 77
OB di allarme dall'orologio
Maschera di errore 225 presupposti per la chiamata 209
Errore di programmazione 225 OB di allarme dall'orologio (da OB 10 a OB 17) 17
Maschera di errore di accesso 225 OB di allarme di aggiornamento (OB 56) 31
Maschera di errore di accesso per le CPU 417 e CPU OB di allarme di diagnostica (OB 82) 55
417H 225 OB di allarme di multicomputing (OB 60) 37
Maschera di errore di programma 225 OB di allarme di ritardo (da OB 20 a OB 23) 21
Mascheramento 225 OB di allarme di sincronismo tecnologico (OB 65) 40
Eventi di errore 225 OB di allarme di stato (OB 55) 28
Mascheramento di eventi di errori di sincronismo 225 OB di allarme in sincronismo di clock (da OB 61 a OB 64)
Mascheramento di eventi di errori di sincronismo con la 39
SFC 36 "MSK_FLT" 232 OB di errore 225
MAX 607 OB di errore di accesso alla periferia (OB 122) 89
Memoria nascosta 323, 324 OB di errore di alimentazione (OB 81) 52
Memoria utente OB di errore di comunicazione (OB 87) 75
compressione con la SFC 25 116 OB di errore di programmazione (OB 121) 86
Messa a disposizione di un set di dati con l'SFB 74 OB di errore di ridondanza della CPU (OB 72) 44
"PRVREC" 206 OB di errore di ridondanza della periferia (OB 70) 41
MID 598 OB di errore di ridondanza di comunicazione (OB73) 47
MIN 608 OB di errore esecuzione programma (OB 85) 65
Misuratore di frequenza (CPU 312) 729 OB di errore hardware CPU (OB 84) 63
Modifica dei valori numerici 606, 607, 608, 609 OB di errore temporale (OB 80) 48
Modifica della variabile STRING 595, 596, 597, 598, 599 OB di estrazione/inserimento (OB 83) 58
MSK_FLT 232 OB di guasto telaio di montaggio (OB 86) 69
OB di interrupt di processo (da OB 40 a OB 47) 25
N OB di interruzione elaborazione (OB 88) 77
OB di priorità bassa (OB 90) 79
NE_DT 594 OB di schedulazione orologio (da OB 30 a OB 38) 23
NE_STRNG 602 OB per allarmi produttore (OB 57) 34
NOTIFY 531 OB_RT 259
NOTIFY_8P 534 Ora
Nuovo avviamento (avviamento a caldo) 81, 82, 83, 84, master: 137
85, 426, 427 sincronizzazione: 137
Nuovo avviamento (avviamento a caldo) o avviamento a Ora master: 137
freddo 426 Ora: 137
O P
OB 100 Panoramica 371
OB 101 e OB 102 81 Panoramica degli OB 11
OB 55 28 panoramica della comunicazione TCP/IP aperta 473
OB 56 31 Panoramica della lista di stato di sistema (SZL) 743
OB 57 34 Panoramica della struttura dei dati di diagnostica: 735
OB 61 39 Parametri 375, 376, 377, 379, 447
OB 62 39 Comunicazione di base S7 447
OB 63 39 comunicazione S7 375, 376
OB 64 39 di unità di segnali 151
OB 65 40
Rilevamento del posto connettore appartenente ad un Scrittura di parametri predefiniti con la SFC 56
indirizzo logico con la SFC 49 "LGC_GADR" 289 "WR_DPARM" 157
Rilevamento del tempo di esecuzione del programma OB Scrittura di set di dati con la SFC 58 "WR_REC" 161
con l'SFC 78 "OB_RT" 259 Scrittura di tutte le uscite di uno slave DP standard
Rilevamento dell'indirizzo di base logico di un'unità con la /PROFINET IO Device con l'FB 21 "SETIO" 351
SFC 5 "GADR_LGC" 287 Scrittura di un evento di diagnostica definito dall'utente nel
Rilevamento dell'indirizzo logico buffer di diagnostica con la SFC52"WR_USMSG" 254
di un canale 287 Scrittura di un set di dati
Rilevamento dello stato di conferma dell'ultima con la SFC 58 WR_REC 161
segnalazione ALARM_SQ arrivata con la SFC 19 Scrittura di un set di dati con l'SFB 53 "WRREC" 174
"ALARM_SC" 562 Scrittura di una parte delle uscite di uno slave DP standard
Rilevamento di tutti gli indirizzi logici di ununità 291 /PROFINET IO Device con l'FB 23 "SETIO_PART" 354
Rilevamento di tutti gli indirizzi logici di un'unità con la SFC Scrittura e lettura di set di dati 151
50 "RD_LGADR" 291 Scrittura in modo coerente di dati utili ad uno slave
Rilevamento programmato di un blocco GD ricevuto con la standard DP con lSFC 15 "DPWR_DAT" 320
SFC 61 "GD_RCV" 360 SEL 609
Riparametrizzazione di unità 58 Set di dati 171, 172, 173, 174, 175, 176
Ritardo della risposta ad allarmi lettura 151, 152
con la SFC 41 DIS_AIRT 241 lettura con l'SFB 52 RDREC 171
Ritardo della risposta ad allarmi ed eventi di errori di lettura con SFC 59 RD_REC 163
asincronismo di più alta priorità con la SFC 41 scrittura 151
"DIS_AIRT" 241 scrittura con l'SFB 53 WRREC 174
Ritardo della risposta ad eventi di errori di asincronismo Set di dati dellestratto della lista parziale con ID SZL
con la SFC 41 DIS_AIRT 241 W#16#0132 Indice W#16#000B 772
Ritardo dellelaborazione del programma utente Set di dati dellestratto della lista parziale con ID SZL
con la SFC 47 WAIT 130 W#16#0132 Indice W#16#000C 773
Ritardo dell'elaborazione del programma utente con la Set di dati dell'estratto della lista parziale con ID SZL
SFC47 "WAIT" 130 W#16#0232 Indice W#16#0004 774
Ritardo e disabilitazione di allarmi ed eventi di errore di Set di dati dell'estratto della lista parziale con IDSZL
asincronismo 235 W#16#0132 IndiceW#16#0005 769
RSET 282 Set di dati dell'estratto della lista parziale con IDSZL
RTM 144 W#16#0132 IndiceW#16#0008 770
SET_CLK 137
S SET_CLKS 140
SET_RTM 146
S5TI_TIM 590 SET_TINT 213
SALRM 196 SETIO 351
SB_DT_DT 590 SETIO_PART 354
SB_DT_TM 591 SFB 0 CTU 579
Schedulazione orologio 23, 24, 235 SFB 1 CTD 580
Sconnessione con l'FB 66 "TDISCON" 506 SFB 104 IP_CONF 334
Scrittura di dati in un partner di comunicazione esterno alla SFB 12 BSEND 392
propria stazione S7 con la SFC 68 "X_PUT" 460 SFB 13 BRCV 396
Scrittura di dati in un partner di comunicazione interno alla SFB 14 GET 416
propria stazione S7 con la SFC 73 "I_PUT" 466 SFB 15 PUT 412
Scrittura di dati in una CPU remota con l'FB 35 "PUT_E" SFB 16 PRINT 419
409 SFB 19 START 426
Scrittura di dati in una CPU remota con l'SFB/FB 15 "PUT" SFB 2 CTUD 581
412 SFB 20 STOP 429
Scrittura di parametri dinamici con la SFC 55 "WR_PARM" SFB 21 RESUME: 432
155 SFB 22 STATUS 435
U X
Ulteriori informazioni di errore degli SFB da 60 a 65 713 X_ABORT 464
UPDAT_PI 273 X_GET 462
UPDAT_PO 275 X_PUT 460
URCV 388 X_RCV 455
URCV_E 403 X_SEND 453
USEND 384