Skip to main content

Gestione degli allarmi nelle librerie

Come sviluppatore di librerie, puoi definire condizioni di allarme per un blocco funzionale o un tipo di struttura specifico.

In termini concreti, ciò significa che si crea un oggetto modello di gruppo di allarmi per le variabili di tali POU e si configurano le definizioni di allarme al loro interno. L'oggetto modello di gruppo di allarmi per l'oggetto POU viene quindi posizionato parallelamente nell'albero POU o nell'albero dei dispositivi. Le definizioni di allarme derivanti da questo vengono successivamente istanziate nell'applicazione in Configurazione dell'allarme oggetto per eseguire un controllo di allarme in fase di esecuzione.

Come sviluppatore di applicazioni, puoi utilizzare POU di libreria che includono definizioni di allarme per la creazione supportata di una configurazione di allarme. Riceverai supporto per la configurazione degli allarmi durante l'intero processo di sviluppo della tua applicazione. Aggiungi una configurazione di allarme sotto l'applicazione. Un ciclo di generazione speciale crea quindi gli allarmi per le istanze dei blocchi funzione con definizioni di allarme. Per fare ciò, esegui il comando Crea o aggiorna istanze di allarme comando in modo che le istanze di allarme vengano create anche per tutte le istanze.

È possibile continuare a modificare la configurazione dell'allarme. Ad esempio, è possibile deselezionare singole istanze di allarme.

Per mantenere il codice applicativo coerente con la configurazione dell'allarme, la completezza e la correttezza delle istanze di allarme vengono verificate durante la compilazione del codice IEC. Il risultato viene visualizzato nella vista messaggi in modo da essere sempre informati sullo stato della configurazione dell'allarme. Se non si desidera che ciò accada, è possibile disabilitare Controllare le istanze di allarme durante la compilazione opzione nella configurazione dell'allarme.

Puoi usare il alarm_creation_default pragma di attributo per controllare come dovrebbe essere l'impostazione predefinita per questa istanza in relazione alla creazione.

Figura 6. Configurazione dell'allarme
Configurazione dell'allarme


Per ulteriori informazioni, vedere quanto segue: Modello di gruppo di allarme, Alarm Configuration, E Attributo: alarm_creation_default

Definizione centralizzata delle classi di allarme nella libreria

È possibile definire le classi di allarme centralmente in una libreria separata. Il vantaggio è che è possibile definire, modificare e gestire centralmente le proprietà e il comportamento delle classi di allarme. Le classi di allarme vengono quindi referenziate nelle librerie di implementazione, che consistono in blocchi funzione con i rispettivi modelli di gruppo di allarme.

Le classi di allarme di altre librerie devono essere elencate con gli spazi dei nomi per evitare ambiguità con le classi di allarme locali con lo stesso nome.

Poiché attualmente è presente una sola memoria di allarme, la configurazione nel gruppo di allarmi non è necessaria. La classe di allarme determina se un allarme viene salvato o meno.

_vis_img_library_alarmclass.png

Il comportamento delle classi di allarme può essere definito centralmente nelle librerie se vengono implementate classi di allarme di libreria, a cui è possibile fare riferimento nelle librerie di implementazione.

Nota

Il predefinito in precedenza Errore, Informazioni, E Avvertimento le classi di allarme sotto la configurazione di allarme possono essere eliminate se si desidera utilizzare solo classi di allarme provenienti da librerie.

Utilizzo di blocchi funzionali con un modello di gruppo di allarmi in una libreria

Le condizioni di allarme per le variabili del tipo possono essere definite nei modelli del gruppo di allarmi.

  1. Seleziona la tua applicazione.

    Clic Aggiungi oggetto → Modello Ragruppa allarme e specificare un nome nel Aggiungi modello Ragruppa di allarme dialogo.

    Il nuovo oggetto modello del gruppo di allarmi AGT_FB_DoIT viene creato sotto la tua applicazione.

    Suggerimento: l'oggetto può anche essere memorizzato in POU.

  2. In Tipo per la definizione dell'allarme, seleziona il tipo (blocco funzionale o struttura) per il quale vuoi definire gli allarmi.

    FB_DoIt

  3. In Dettagli, definisci un allarme per il tipo:

    • Sotto Dettagli, programmare una condizione di allarme.

    • Sotto Classe, specificare una classe di allarme, idealmente una da una libreria di classi di allarme.

    _vis_img_alarm_group_template.png

Blocco funzionale con ereditarietà

Se si dispone di un blocco funzione di base che estende altri blocchi funzione, è anche possibile creare un modello di gruppo di allarmi per questo blocco funzione di base e definire lì gli allarmi.

In alternativa, è possibile creare un modello di gruppo di allarmi per un blocco funzione derivato. È anche possibile accedere alle variabili del blocco funzione di base in modo da poter programmare definizioni di allarme per le variabili ereditate.

_vis_img_library_alarmgroup.png

Creazione e rinnovo di istanze di allarme

È possibile aggiornare la configurazione dell'allarme in modo che tutte le istanze dichiarate nell'applicazione vengano elencate lì.

  1. In CODESYS, apri il Configurazione dell'allarme oggetto sotto l'applicazione.

  2. Fare clic su Crea o aggiorna istanze di allarme pulsante.

    Tutte le istanze con modelli di gruppo di allarme dell'applicazione sono attualmente elencate in Istanze di allarme tavolo.

Controllo del progetto

È possibile abilitare o disabilitare la generazione di allarmi per le istanze. Per impostazione predefinita, tutte le istanze di allarme vengono aggiunte alla configurazione degli allarmi. Sotto Creare colonna, è possibile deselezionare singole istanze in modo che non venga effettuata alcuna valutazione dell'allarme per un'istanza specifica.

Se si desidera dividere le istanze di allarme in gruppi diversi, è possibile effettuare l'assegnazione in Ragruppa di allarme colonna. I gruppi di allarme devono essere prima creati sotto la configurazione degli allarmi.

Per ulteriori informazioni, vedere quanto segue: Alarm Configuration E Attributo: alarm_creation_default