Bloque que crea una nueva variable WORD a partir de la concatenación de 16 variables BOOL.
Representación Ladder

Estructura del Bloque
Tipo de Variable |
Nombre |
Tipo de Dato |
Descripción |
VAR_INPUT |
EN |
BOOL |
Habilitación del bloque |
Bit0 – Bit15 |
BOOL |
Bit de la posición correspondiente en la nueva palabra |
|
VAR_OUTPUT |
ENO |
BOOL |
Fin de operación |
Word |
WORD UINT INT |
Nueva palabra formada a partir de los bits de entrada |
Operación
Este bloque, cuando tiene un valor TRUE en EN, concatena los valores booleanos de las variables de entrada y almacena este valor en la variable Word. El Bit0 corresponde al LSB (bit menos significativo) y Bit15 corresponde al MSB (bit más significativo).
Cuando EN tiene valor FALSE, Word permanece inalterado.
El valor de ENO pasa al próximo bloque Ladder el valor de EN luego de finalizada la operación.
Diagrama de Flujo del Bloque

Ejemplo en Ladder

El ejemplo de arriba concatena los valores booleanos de los bits de entrada del bloque, formando la palabra de salida almacenada en MYWORD. El bloque finaliza exitosamente y la salida ENO es activada.
Ejemplo en ST
El siguiente ejemplo muestra las instrucciones para aplicar el ejemplo anterior en el lenguaje ST.
VAR MYWORD : WORD; END_VAR
MYWORD := FB_MUX( EN:=DI1, Bit0:=DI2, Bit1:=DI3, Bit2:=DI2, Bit3:=DI2, Bit4:=DI2, Bit5:=DI2, Bit6:=DI3, Bit7:=DI3, Bit8:=DI3, Bit9:=DI2, Bit10:=DI3, Bit11:=DI2, Bit12:=DI3, Bit13:=DI3, Bit14:=DI3, Bit15:=DI2, ENO=>DO1);
|
|---|