|
Istruzioni Durante losvolgimento di un processosi possono verificare eventi ai quali occorre reagine il più rapidamente possibile nel ciclo di programma attualemnte in corso. Vi sono parimenti degli eventi che non permangono per un tempo sufficiente tale da essere riconosciuti nel ciclo di programma attualmente in corso. Per i controllori programmabili SIMATIC S7-400 è disponibile per questo l'elaborazione su interrupt di processo.
Insieme ai moduli in grado di generare interrupt di processo:
- unità di ingressi analogici (AI),
- unità di ingressi digitali (DI) e
- unità funzionali (FM)
si può richiamare - quasi in tempo reale - un programma adatto all'evento.
Questo articolo vuole essere una guida per gli interrupt di processo con le CPU S7-400.
Generalità:
Se durante l'elaborazione del programma si verifica un evento che genera un interrupt, il sistema operativo richiama il relativo OB di allarme e l'elaborazione ciclica del programma o del blocco di programma si interrompe. Tramite i dati locali temporanei dell'OB di allarme viene specificato con precisione l'evento (oppure gli eventi (si possono impostare diversi bit)) che ha generato l'interrupt. I dati locali temporanei possono essere valutati dal programma applicativo nell'OB di allarme.
Se al verificarsi di un evento che genera un interrupt non è disponibile nella CPU l'OB di allarme, la CPU si porta in STOP.
Eventi che generano un interrupt di processo con i differenti moduli:
Unità di ingressi analogici: nelle unità di ingressi analogici in grado di generare interrupt di processo si può controllare un valore. L'interrupt di processo può essere parametrizzato in modo tale che, al superamento verso l'alto o verso il basso del valore, si generi un interrupt di processo. Ulteriori informazioni sulle singole unità di ingressi analogici sono riportati nel manuale "Sistema di automazione S7-400, dati delle unità" di cui si parla nell’articolo con ID: 1117740 al capitolo 5 .
Unità di ingressi digitali: con le unità di ingressi digitali in grado di generare interrupt di processo si possono controllare i singoli bit. L'interrupt di processo può essere parametrizzato in modo tale che si generi un interrupt di processo con il fronte positivo o negativo del bit. Ulteriori informazioni sulle singole unità di ingressi analogici sono riportate nel manuale "Sistema di automazione S7-400, dati delle unità" di cui si parla nell’articolo con ID: 1117740 al capitolo 4.
Unità funzionali: poiché le unità funzionali in grado di generare interrupt di processo svolgono compiti molto diversi tra di loro e quindi anche gli interrupt di processo possono essere parametrizzati per eventi diversi, faremo riferimento in questo articolo alla sola unità funzionale FM 450-1.
Con l'unità FM 450-1 si può generare un interrupt di processo nella CPU al raggiungimento del valore di confronto, al suo superamento verso l'alto o verso il basso e/o al passaggio per lo zero del contatore. Ulteriori informazioni sull'unità funzionale FM 450-1 sono riportate nel manuale "Unità funzionale FM 450-1" di cui si parla nell’articolo con ID: 1118412. Informazioni sulle altre unità funzionali sono riportate nella documentazione specifica.
Attenzione
Per diverse unità funzionali è necessario disporre di uno speciale software di parametrizzazione fornito con l'unità e la relativa documentazione. Gli eventi che generano interrupt di processo possono essere parametrizzate solo con STEP 7 e questo software aggiuntivo.
(Unità di comumnicazione): nelle unità di comunicazione non vi è alcuna possibilità di parametrizzare eventi in gradi di generare interrupt di processo. Le unità di comunicazione però trasmettere alla CPU interrupt di processo provenienti da unità in grado di generarli. Esempio:
nel rack centrale si inserisce un processore di comunicazione CP 443-5 Ext (6GK7 443-5DX01-0XE0). Si parametrizzi il CP 443- 5 Ext come master e lo si associ ad una IM 153-1 (6ES7 153-1AA02-0XB0). Nella IM 153-1 si può installare una unità in grado di generare interrupt (vedere la figura 01). Se questa unità genera un allarme, esso viene inviato alla CPU via CP 443. La CPU richiama quindi l'OB di allarme ad esso associato.
  Figura 01
OB di allarme con SIMATIC S7-400: Per le CPU SIMATIC S7-400 sono disponibili gli OB di allarme 40 ... 47. Ad ogni unità può essere associato l'OB di allarme desiderato nell'HW Config. (Proprietà oggetto dell'unità > Indirizzi > Generazione interrupt:). In ogni OB di allarme sono messi a disposizione dati locali temporanei. Tramite questi dati locali temporanei si specifica il canale/il bit che ha generato l'evento d iinterrupt.
La descrizione degli OB di allarme è riportata in STEP 7 creando un OB di allarme nella cartella blocchi della CPU (tasto destro del mouse > Inserire nuovo oggetto > Blocco organizzativo > OB[40...47]), selezionare il nuovo OB creato e premere quindi "F1". Si apre così l'help S7 per gli OB di allarme. Se gli OB di allarme sono già disponibili, si può ovviamente selezionarne uno e premere poi "F1".
Ulteriori informazioni sull'analisi dei dati locali specifica per unità sono riportate nel manuale "Sistema di automazione S7-400, dati delle unità" di cui si parla nell’articolo con ID: 1117740 al capitolo 4 (unità digitali) e al capitolo 5 (unità analogiche) oppure nei manuali specifici delle unità funzionali.
Per la CPU 318-2DP sono disponibili 2 OB di allarme (40 e 41). Per tutte le altre CPU S7-300 è disponibile solo l'OB 40 di allarme.
Ulteriori informazioni sugli allarme di processo con il SIMATIC S7-300 sono riportate nell'articolo con ID: 23657941
Configurazione di un interrupt di processo: Gli allarmi di processo si possono configurarenella configurazione hardware quando si impostano le proprietà dell'unità in grado di generare interrupt.
Un esempio per il calcolo del tempo di reazione con S7-400 è riportato nel manuale "Sistema di automazione S7-400, dati delle CPU" di cui si parla nell’articolo con ID: 14016796 al capitolo 5.8 e seguenti.
Con le funzioni di sistema SFC 55 (WR_PARM), SFC 56 (WR_DPARM) und SFC57 (PARM_MOD) si possono parametrizzare le unità in grado di generare interrupt anche nel ciclo di programma in corso. Come si parametrizzano con le funzioni di sistema le unità tramite i corrispondenti set di dati è riportato nel manuale "Sistema di automazione S7-400, dati delle unità" di cui si parla nell’articolo con ID: 1117740.
Informazioni sui diversi SFC sono riportate nell'help online di S7 e nel manuale "Software di sistema per S7-300/400, funzioni standard e di sistema" di cui si parla nell’articolo con ID: 1214574 al capitolo 7.1.
Attenzione
Le funzioni di sistema SFC 55, SFC56 ed SFC 57 non si possono utilizzare via PROFINET IO.
Bloccare, ritardare e abilitare interrupt di processo:
Con il supporto delle funzioni di sistema SFC 39 (DIS_IRT IRT_FUNC), SFC 40 (EN_IRT IRT_FUNC), SFC 41 (DIS_AIRT IRT_FUNC) ed SFC 42 (EN_AIRT IRT_FUNC) si possono bloccare, ritardare e nuovamente abilitare gli interrupt di processo.
Informazioni sui diversi SFC si trovano nell'help online di S7 e nel manuale "Software di sistema per S7-300/400, funzioni standard e di sistema" di cui si parla nell’articolo con ID: 1214574 al capitolo 12.
|