A ON cuando alcanza el valor de preselección (contador de alta velocidad)
Si el valor actual del contador de alta velocidad alcanza el valor de preselección, un proceso de interrupción pasa inmediatamente a TRUE la salida especificada.
Entrada
Canal del contador de alta velocidad:
FP-S: 0–3
FP-X R: 0–11
FP-X T: 0–7
FP0: 0–3
F168_PulseOutput_Trapezoidal: 0–3
F171_PulseOutput_Trapezoidal: 0–5
especificar un valor de 32 bits para el valor de preselección dentro del siguiente rango:
FP0, F168_PulseOutput_Trapezoidal: -838808–+8388607
FPS, FP-X, F171_PulseOutput_Trapezoidal: -2147483467–+2147483648
Salida
salida que pasa a TRUE cuando el valor actual alcanza el valor de preselección:
FP-S, FP0, F168_PulseOutput_Trapezoidal: Y0–Y7
FP-S (V3.1 o mayor), F171_PulseOutput_Trapezoidal: Y0–Y1F
FP-X: Y0–Y29F
Diagrama de la instrucción "A ON cuando alcanza el valor de preselección"
Valor de preselección:: 10000
El PLC pasa a TRUE cuando el valor actual alcanza el valor de preselección. Además, la bandera de control del contador de alta velocidad pasa a FALSE y se desactiva la instrucción.
Si se especifica una salida que no está implementada, solo se pone a set o a reset, en la memoria interna, la dirección WY correspondiente.
El programa de interrupción se ejecutará cuando el valor actual alcance el valor de preselección. Cualquier interrupción que se introduzca en la lista de Tareas se activa automáticamente. Se asigna un número de programa de interrupción para cada canal.
Tipo de PLC |
FP0, FP-e |
FPS, FP0H |
FP-X (Modelos a relé), FP-XH |
FP-X (Modelos a transistor) |
FP0R |
---|---|---|---|---|---|
Interrupt0 |
Canal0 |
Canal0 |
Canal0 |
Canal0 |
Canal0 |
Interrupt1 |
Canal1 |
Canal1 |
Canal1 |
Canal1 |
Canal1 |
Interrupt2 |
Canal2 |
Canal2 |
|||
Interrupt3 |
Canal2 |
Canal2 |
Canal3 |
Canal3 |
Canal2 |
Interrupt4 |
Canal3 |
Canal3 |
Canal4 |
Canal4 |
Canal3 |
Interrupt5 |
Canal5 |
Canal5 |
|||
Interrupt6 |
Canal6 |
Canal6 |
Canal4 |
||
Interrupt7 |
Canal7 |
Canal7 |
Canal5 |
||
Interrupt8 |
Canal8 |
||||
Interrupt9 |
Canal9 |
||||
Interrupt10 |
|||||
Interrupt11 |
CanalA |
||||
Interrupt12 |
CanalB |
Seleccionar la entrada del contador de alta velocidad para el canal determinado en los registros del sistema.
FP-X, FP0R: Cuando se ejecuta una instrucción del contador de alta velocidad, la bandera control del contador de alta velocidad (por ejemplo, sys_bIsHscChannel0ControlActive) del canal utilizado pasa a TRUE. No se puede ejecutar otra instrucción del contador de alta velocidad utilizando el mismo canal mientras que la bandera de control esté a TRUE.
FP0, FP-e, FPS: La bandera de control del contador de alta velocidad (por ejemplo sys_bIsHscChannel0ControlActive) y la bandera de control de la salida de pulsos (por ejemplo sys_bIsPulseChannel0Active) están asignadas al mismo relé interno especial (R903A). Por lo tanto, cuando se ejecuta una instrucción del contador de alta velocidad o de salida de pulsos, tanto la bandera de control de contador de alta velocidad (por ejemplo sys_bIsHscChannel0ControlActive) como la bandera de control de la salida de pulsos (por ejemplo sys_bIsPulseChannel0Active) para el canal especificado, están a TRUE. No se puede ejecutar ninguna otra instrucción del contador de alta velocidad o de salida de pulsos mientras que está bandera esté a TRUE.
Si tanto el programa principal como el programa de interrupción contienen código para el mismo canal, asegurarse de que no se ejecutan simultáneamente.
Para poner la salida del PLC a FALSE que se había puesto a TRUE al ejecutar la instrucción, utilizar una instrucción de RST o MOVE.
Para cancelar la ejecución de la instrucción, poner a TRUE el bit 3 del registro de datos que almacena el código de control del contador de alta velocidad (sys_wHscOrPulseControlCode). La bandera de control del contador de alta velocidad pasa a FALSE. Para habilitar la ejecución de la instrucción del contador de alta velocidad, poner el bit 3 a FALSE.
El estado de la bandera de control del contador de alta velocidad o de la bandera de control de la salida de pulsos puede cambiar dentro del ciclo de scan.
En la Lista de Variables Globales, se definen las variables a las que pueden acceder todas las POUs del proyecto.
Todas las variables de entrada y de salida utilizadas para la programación de esta función han sido declaradas en la Cabecera de la POU. Se utiliza la misma cabecera de la POU para todos los lenguajes de programación.
VAR_EXTERNAL
out_0: BOOL:=FALSE;
(*output Y0 of PLC*)
END_VAR
VAR
start: BOOL:=FALSE;
(*start condition*)
END_VAR
Cuando la variable start está ajustada a TRUE, se ejecuta la función.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_F,F166_HighSpeedCounter_Set!,Instance,12,0,26,5,,?DEN?Hn_diHscChannel?Ds_diTargetValue?AENO?Cd_Y);
B(B_VARIN,,0,10,2,12,4,);
B(B_VARIN,,10,10,3,12,5,);
B(B_VAROUT,,out_0,26,2,28,4,);
B(B_CONTACT,,start,5,1,7,3,R);
L(1,2,5,2);
L(7,2,12,2);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
IF DF(start) then
F166_HighSpeedCounter_Set(n_diHscChannel := 0,
s_diTargetValue := 10,
d_Y => out_0);
END_IF;