El siguiente ejemplo muestra cómo se comporta en el tiempo un programa SFC, las banderas asociadas y algunas variables Booleanas activadas directamente en la ventana de asociación de acción y en las acciones o transiciones. En particular, el ejemplo muestra el significado de los calificadores de acción.
Se ha asignado el paso Step1 a:
una variable Booleana bVarStep1_P con un calificador de pulso P que pasa a TRUE solamente en el primer ciclo de scan de Step1
una variable Booleana bVarStep1_S_R con un calificador de retención S que pasa a TRUE durante el paso Step1 y permanece a TRUE después de salir del Step1 hasta que se pone a FALSE explícitamente en el paso Step3
una variable Booleana bVarStep1_N con el calificador por defecto de no retención N que está a TRUE solamente durante la ejecución del paso
un programa en la acción Action1 con el calificador N que solo se ejecuta cuando el paso Step 1 está activo.
En esta acción:
bVarAction1_N es TRUE o FALSE dependiendo del estado de la bandera del paso Step1.X, que está a TRUE durante la ejecución del paso Step1 y a FALSE en el último ciclo del pasoStep1. Nota: Tener en cuenta que el comportamiento no es idéntico a bVarStep1_N.
bVarAction1_S es TRUE durante la ejecución del paso Step1 y mantiene su valor después de salir del paso Step1.
Step2 no tiene asignada ninguna acción.
Step3 tiene asignada la variable Booleana bVarStep1_S_R con el calificador de reset R que resetea la variable en el primer ciclo de scan del paso.
ciclo de scan del PLC |
![]() |
pasos y transiciones |
acciones |
Utilizar la bandera del paso para verificar que el paso está en el último ciclo de scan después de que la siguiente condición de transición pase a TRUE. En este caso el valor de la banderas del paso es FALSE.
Utilizar la variable del sistema sys_bIsFirstScanOfSfcStep para verificar que el paso está en el primer ciclo de scan. La variable debe ser TRUE.