Skip to main content

Chiamata di eventi di allarme nel programma

Le Evento (API) tipo di osservazione viene fornito, tra le altre cose, per definire un allarme nel gruppo di allarmi. A differenza dei tipi di osservazione in cui l'allarme viene attivato in base alle condizioni, con questo tipo di osservazione l'allarme può essere attivato richiamando un'istanza del blocco funzionale

Definizione dell'allarme evento nel gruppo allarmi

  1. Crea un gruppo di allarmi.

  2. Definire un allarme del tipo di osservazione Evento (API) nel gruppo di allarme.

  3. Nel Classe colonna, seleziona una classe di allarme con Riconoscimento metodo di conferma o creare una nuova classe di allarme.

Chiamata del programma per attivare l'allarme dell'evento

  1. Posizionare il cursore nella posizione del programma in cui deve avvenire la chiamata del blocco funzione.

  2. Utilizzare il RaiseEvent funzione dal AlarmManager biblioteca:

    Immettere "AlarmManager" seguito da un punto.

    Si apre una finestra contenente l'elenco di tutti gli elementi inseribili (funzione "Elenca componenti").

    _cds_img_autocomplete_alarms.png
  3. Selezionare AlarmGlobals e inserisci un punto.

  4. Allo stesso modo, inserisci gli elementi g_AlarmHandler E RaiseEvent.

    Si ottiene la seguente riga: Alarmmanager.AlarmGlobals.g_AlarmHandler.RaiseEvent.

  5. Definiamo ora le variabili di trasferimento AlarmGroup_ID E Alarm_ID. Per fare ciò, inserisci una parentesi aperta.

    Viene visualizzato un suggerimento che mostra informazioni sulle variabili di trasferimento

  6. Premere La F2

    Si apre l'Assistente di immissione

  7. Sul Categorie scheda (_3_r.png), seleziona la categoria Variabili (_4_r.png).

    _cds_img_input_assistant_alarms.png
  8. Selezionare la variabile ID gruppo desiderata (_1_r.png).

    La variabile viene applicata nella riga del programma.

  9. Immettere una virgola e inserire la variabile ID allarme desiderata (2) allo stesso modo del passaggio 7. Immettere una parentesi di chiusura e un punto e virgola.

    Si ottiene la seguente riga di programma:

    Alarmmanager.AlarmGlobals.g_AlarmHandler.RaiseEvent(Alm_AlarmConfiguration_Alarmgroup_IDs.ID_AlarmGroup1, Alm_AlarmGroup1_Alarm_IDs.ID_0);

Generazione di eventi da istanze di modelli di allarme

Gli eventi provenienti da istanze di allarme possono essere generati passando l'indirizzo dell'istanza a cui appartiene l'allarme.

Quando l'evento viene generato, la variabile latch che punta all'istanza viene automaticamente scritta correttamente.

IL IAlarmHandler7 è fornita un'interfaccia con le seguenti funzioni AlarmManager biblioteca per questo scopo.

  • RaiseEventAlarmInstance

  • RaiseEventAlarmInstanceByName

Esempio 22. Esempio
_visu_alarm_group_template_example_raise_event.png

MyalarmFB blocco funzione con RaiseEvent metodo

FUNCTION_BLOCK MyAlarmFB
VAR_INPUT
	xCondition : BOOL;
END_VAR
METHOD RaiseEvent : BOOL
VAR_INPUT
END_VAR
Alarmmanager.AlarmGlobals.g_AlarmHandler.RaiseEventAlarmInstance(THIS, Alm_AlarmGroupTemplate_Alarm_IDs.ID_3);

Programma: PLC_PRG

PROGRAM PLC_PRG
VAR
    // Alarm Instances
    myInst : MyAlarmFB;
    myInst2 : MyAlarmFB;
END_VAR
Alarmmanager.AlarmGlobals.g_AlarmHandler.RaiseEventAlarmInstance(ADR(myInst), Alm_AlarmGroupTemplate_Alarm_IDs.ID_3); 
Alarmmanager.AlarmGlobals.g_AlarmHandler.RaiseEventAlarmInstanceByName(ADR(pouInst), Alm_AlarmGroupTemplate2_Alarm_IDs.ID_0, 'AlarmGroupTemplate2');