Llamada de eventos de alarma en el programa
El tipo de observación Evento (API) se proporciona para definir una alarma en el grupo de alarmas, entre otras cosas. A diferencia de los tipos de observación en los que la alarma se activa en función de las condiciones, con este tipo de observación la alarma se puede activar llamando a una instancia de bloque de funciones.
Definición de la alarma de evento en el grupo de alarmas
Crear un grupo de alarmas.
Definir una alarma del tipo de observación Evento (API) en el grupo de alarmas.
En el Clase columna, seleccione una clase de alarma con la Acuse de recibo método de reconocimiento o crear una nueva clase de alarma.
Llamada al programa para activar la alarma del evento
Coloque el cursor en la posición del programa donde debe realizarse la llamada al bloque de función.
Utilice el
RaiseEvent
función de laAlarmManager
biblioteca:Introduzca “AlarmManager” seguido de un punto.
Se abre una ventana que contiene una lista de todos los elementos insertables (función "Listar componentes").
Seleccionar
AlarmGlobals
e introduzca un punto.De la misma manera, inserte los elementos
g_AlarmHandler
yRaiseEvent
.Obtendrás la siguiente línea:
Alarmmanager.AlarmGlobals.g_AlarmHandler.RaiseEvent
.Ahora defina las variables de transferencia
AlarmGroup_ID
yAlarm_ID
Para ello, introduzca un paréntesis de apertura.Aparece una información sobre herramientas que muestra información sobre las variables de transferencia.
Prensa F2
Se abre el Asistente de entrada
En el Categorías pestaña (
), seleccione la categoría Variables (
).
Seleccione la variable de identificación del grupo deseada (
).
La variable se aplica en la línea del programa.
Ingrese una coma e inserte la variable de ID de alarma deseada (2) de la misma manera que en el Paso 7. Ingrese un paréntesis de cierre y un punto y coma.
Obtendrás la siguiente línea de programa:
Alarmmanager.AlarmGlobals.g_AlarmHandler.RaiseEvent(Alm_AlarmConfiguration_Alarmgroup_IDs.ID_AlarmGroup1, Alm_AlarmGroup1_Alarm_IDs.ID_0);
Generación de eventos desde instancias de plantilla de alarma
Los eventos de instancias de alarma se pueden generar pasando la dirección de la instancia a la que pertenece la alarma.
Cuando se genera el evento, la variable latch que apunta a la instancia se escribe automáticamente de forma correcta.
El IAlarmHandler7
Se proporciona una interfaz con las siguientes funciones en el AlarmManager
biblioteca para este propósito.
RaiseEventAlarmInstance
RaiseEventAlarmInstanceByName

MyalarmFB
bloque de función con RaiseEvent
método
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);
Programa: 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');