Caminho:  Equipamentos (Dispositivos) > RUW100 > Ladder > Data Transfer >

MUX2

Multiplexador

Previous pageReturn to chapter overviewNext page

Bloco que cria uma nova variável DWORD a partir da concatenação de 32 variáveis BOOL.

 

Representação Ladder

 

MUX2_block

 

Estrutura do Bloco

 

Tipo de Variável

Nome

Tipo de Dado

Descrição

VAR_INPUT

EN

BOOL

Habilitação do bloco


Bit0 – Bit31

BOOL

Bit da posição correspondente na nova palavra

VAR_OUTPUT

ENO

BOOL

Fim de operação


DWord

DWORD UDINT DINT

Nova palavra formada a partir dos bits de entrada

 

Funcionamento

 

Este bloco, quando tem um valor TRUE em EN, concatena os valores booleanos das variáveis de entrada e armazena este valor na variável Dword. O Bit0 corresponde ao LSB (bit menos significativo) e Bit31 corresponde ao MSB (bit mais significativo).

 

Quando EN possui valor FALSE, Dword permanece inalterado.

 

O valor de ENO repassa para o próximo bloco Ladder o valor de EN após finalizada a operação.

 

Fluxograma do Bloco

 

MUX2_flowchart

 

Exemplo em Ladder

 

MUX2_example01

 

O exemplo acima concatena os valores booleanos dos bits de entrada do bloco, formando a palavra de saída armazenada em MYDWORD. O bloco finaliza com sucesso e a saída ENO é ativada.

 

Exemplo em ST

 

 O exemplo abaixo, exibe as instruções para aplicação do exemplo acima na linguagem ST.

 

 

VAR

   ARRAY_BOOL : ARRAY[0..31] OF BOOL := [

      0, 1, 1, 0, 1, 0, 0, 0,

       0, 0, 0, 1, 1, 0, 1, 0,

       0, 0, 1, 0, 1, 0, 1, 1,

       0, 1, 1, 0, 1, 0, 1, 0];

  MYDWORD : DWORD;

END_VAR

 

MYDWORD := FB_MUX2(

   EN:=DI1,

   Bit0:=ARRAY_BOOL[0],

   Bit1:=ARRAY_BOOL[1],

   Bit2:=ARRAY_BOOL[2],

   Bit3:=ARRAY_BOOL[3],

   Bit4:=ARRAY_BOOL[4],

   Bit5:=ARRAY_BOOL[5],

   Bit6:=ARRAY_BOOL[6],

   Bit7:=ARRAY_BOOL[7],

   Bit8:=ARRAY_BOOL[8],

   Bit9:=ARRAY_BOOL[9],

   Bit10:=ARRAY_BOOL[10],

   Bit11:=ARRAY_BOOL[11],

   Bit12:=ARRAY_BOOL[12],

   Bit13:=ARRAY_BOOL[13],

   Bit14:=ARRAY_BOOL[14],

   Bit15:=ARRAY_BOOL[15],

   Bit16:=ARRAY_BOOL[16],

   Bit17:=ARRAY_BOOL[17],

   Bit18:=ARRAY_BOOL[18],

   Bit19:=ARRAY_BOOL[19],

   Bit20:=ARRAY_BOOL[20],

   Bit21:=ARRAY_BOOL[21],

   Bit22:=ARRAY_BOOL[22],

   Bit23:=ARRAY_BOOL[23],

   Bit24:=ARRAY_BOOL[24],

   Bit25:=ARRAY_BOOL[25],

   Bit26:=ARRAY_BOOL[26],

   Bit27:=ARRAY_BOOL[27],

   Bit28:=ARRAY_BOOL[28],

   Bit29:=ARRAY_BOOL[29],

   Bit30:=ARRAY_BOOL[30],

   Bit31:=ARRAY_BOOL[31],

   ENO=>DO1);