Camino:  Equipo (Dispositivos) > RUW100 > Ladder > Logic > Logic Bit >

TESTBIT

Previous pageReturn to chapter overviewNext page

Bloque lógico que retorna al valor de un bit específico en un campo.

 

Representación Ladder

 

TESTBIT_block

 

Estructura del Bloque

 

Tipo de Variable

Nombre

Tipo de Dato

Descripción

VAR_INPUT

Data

BYTE USINT SINT WORD UINT INT DWORD UDINT DINT

Variable cuyo bit será probado

EN

BOOL

Habilitación del bloque

Position

BYTE USINT

Posición del bit que será alterado

VAR_OUTPUT

Q

BOOL

Valor del bit probado

 

Operación

 

Este bloque, cuando tiene un valor TRUE en EN, envía a la salida Q el valor del bit indicado en Position en la variable Data.

 

Cuando EN tiene valor FALSE, Q también recibe FALSE.

 

wpshelp_common_fig_note

¡NOTA!

Es importante verificar que Position esté dentro del rango de valores de bits correspondiente al tipo de variable en Fecha. Por ejemplo: si Data es un BYTE, Logo posee 8 bits, y Position debe comprender un valor entre 0 y 7.

 

Diagrama de Flujo del Bloque

 

TESTBIT_flowchart

 

Ejemplo en Ladder

 

TESTBIT_example01

 

El ejemplo de arriba envía el valor del bit de la posición cero de AUX, cuyo valor inicial es 74 (0100_1010 en binario) a la salida Q. Como este bit tiene valor 0, la salida queda deshabilitada.

 

TESTBIT_example02

 

El ejemplo de arriba envía el valor del bit de la posición tres de AUX a la salida Q. Como este bit tiene valor 1, la salida queda habilitada.

 

TESTBIT_example03

 

El ejemplo de arriba envía el valor del bit de la posición diez de AUX a la salida Q. Como AUX es una variable del tipo BYTE, tiene solamente ocho bits. Siendo así, el ejemplo de arriba genera un error de ejecución en el bloque y, por eso, la salida queda deshabilitada.

 

Ejemplo en ST

 

 El siguiente ejemplo muestra las instrucciones para aplicar el ejemplo anterior en el lenguaje ST.

 

 

VAR

   AUX : BYTE := 2#0100_1010;

   POS : BYTE := 3;

END_VAR

 

DO1 := FB_TESTBIT(

   EN:=DI1,

   Data:=AUX,

   Position:=POS);