Principios básicos del PLC
4.1
Ejecución del programa de usuario
La CPU soporta los siguientes tipos de bloques lógicos que permiten estructurar
eficientemente el programa de usuario:
● Los bloques de organización (OBs) definen la estructura del programa. Algunos OBs
● Las funciones (FCs) y los bloques de función (FBs) contienen el código de programa
● Los bloques de datos (DBs) almacenan datos que pueden ser utilizados por los bloques
La ejecución del programa de usuario comienza con uno o varios bloques de organización
(OB) de arranque que se ejecutan una vez al cambiar a estado operativo RUN, seguidos de
uno o varios OB de ciclo que se ejecutan cíclicamente. También es posible asociar un OB a
un evento de alarma que puede ser un evento estándar o de error y que se ejecuta cada vez
que ocurre el evento en cuestión.
Una función (FC) o un bloque de función (FB) es un bloque de código del programa que
puede llamarse desde un OB, o bien desde otra FC u otro FB. Son posibles las
profundidades de anidamiento siguientes:
● 16 desde OB de ciclo o de arranque
● 4 desde OB de alarma de retardo, de alarma cíclica, de alarma horaria, de alarma de
Las FCs no están asociadas a ningún bloque de datos (DB) en particular, mientras que los
FBs están vinculados directamente a un DB que utilizan para transferir parámetros, así
como para almacenar valores intermedios y resultados.
El tamaño del programa de usuario, los datos y la configuración está limitado por la memoria
de carga disponible y la memoria de trabajo de la CPU. No hay un límite determinado para
el número de cada bloque OB, FC, FB y DB individual. No obstante, el número total de
bloques se limita a 1024.
En cada ciclo se escribe en las salidas, se leen las entradas, se ejecutan las instrucciones
del programa de usuario y se realiza el procesamiento en segundo plano. En inglés, el ciclo
también se llama "scan cycle" o "scan".
Los módulos (SM, SB, BB, CB, CM o CP) solo se detectan e incorporan en el proceso de
arranque.
Controlador programable S7-1200
Manual de sistema, 04/2012, A5E02486683-06
tienen reacciones y eventos de arranque predefinidos. No obstante, también es posible
crear OBs con eventos de arranque personalizados. Los rangos de números de OB
válidos se indican en Prioridades de ejecución de eventos y cola de espera (Página 76).
correspondiente a tareas específicas o combinaciones de parámetros. Cada FC o FB
provee parámetros de entrada y salida para compartir datos con el bloque invocante. Un
FB utiliza también un bloque de datos asociado (denominado DB instancia) para
conservar el estado de valores durante la ejecución que pueden utilizar otros bloques del
programa. Los números válidos para FC y FB van de 1 a 65535.
del programa. Los números válidos para DB van de 1 a 65535.
proceso, de alarma de error de tiempo o de alarma de error de diagnóstico
4
67