Los Bloques de Función (FB) son pequeños programas. Al contrario que las funciones, los bloques de función disponen de memoria propia para almacenar los valores. Dependiendo del valor almacenado, que puede ser sumado a, restado de, etc., los mismos valores de entrada pueden proporcionar resultados diferentes. Se puede utilizar la misma FB tantas veces como sea necesario. Por esta razón, cada vez que se carga un FB, se crea una copia. Hay que proporcionar un nombre a esta copia (instancia) de forma que sus valores no sean sobrescritos ni procesados por un bloque de función del mismo tipo.
Control FPWIN Pro7 proporciona dos tipos de bloques de función:
Bloques de función del sistema
IEC standard library: por ejemplo TON, TOF
FP library: por ejemplo CT_FB, PID_FB
Bloques de Funciones definidos por el usuario
Estos FBs pueden ser escritos en cuatro lenguajes de programación:
Diagrama de Contactos (LD) o Diagrama de Bloques de Funciones (FBD)
Texto Estructurado (ST)
Lista de Instrucciones (IL)
La primera vez que se llama al FB "TON" (temporizador con retardo a la conexión), para arrancar un motor con un determinado retardo, por ejemplo, podría llamarse "delay_motor". La siguiente vez que se llama a este FB se puede dar un nombre diferente, por ejemplo, "delay_heating" etc.
No se puede asignar un bloque de función directamente a una tarea, ya que solo puede ser llamado por un programa o por otro bloque de función.
Un bloque de función no puede ser llamado de forma recursiva.
FB1() -> FB2() -> FB3() -> FB1()
no está permitida.
No se puede superar el número máximo de llamadas a bloques de función anidadas, por ejemplo, FB1(FB2(FB3(FB4(FB5(x))))).
Número máximo de llamadas a bloques de función anidadas |
Tipos de PLCs |
---|---|
16 |
FP7 |
10 |
Nuevos tipos de PLC de 16 bits, como FP0H, FP_XH, FP0R |
15 |
Tipos de PLC de 16 bits antiguos |