Camino:  Equipo (Dispositivos) > PLC300 > Ladder > Hardware >

READENC3

Lector de Encoder con Diferencial

Previous pageReturn to chapter overviewNext page

Bloque que lee el valor de pulsos de un encoder de acuerdo con un tipo de lectura escogido, calculando diferenciales entre llamadas al bloque.

 

Representación Ladder

 

READENC3_block

 

Estructura del Bloque

 

Tipo de Variable

Nombre

Tipo de Dato

Descripción

VAR_INPUT

EN

BOOL

Habilitación del bloque

Source#

BYTE

Fuente de conteo

VAR_OUTPUT

ENO

BOOL

Habilitación de salida

Value

DINT DWORD UDINT

Valor de conteo

Delta

DINT DWORD UDINT

Diferencial entre conteo actual y conteo anterior

 

Operación

 

Este bloque, cuando tiene un valor TRUE en EN, obtiene el número de pulsos contados en el encoder desde la energización del PLC300, conforme seleccionado en Source#, y los transfiere a Value. El valor de Delta será la diferencia entre los pulsos contados en esa ejecución y en la ejecución anterior.

 

Cuando EN tiene valor FALSE, Value y Delta permanecen inalterados.

 

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

 

READENC3_flowchart

 

Ejemplo en Ladder

 

READENC3_example01

 

El ejemplo de arriba, al identificar un flanco de subida en DI1, obtiene el número de pulsos en la entrada A desde la energización del equipo, almacenando el valor en VALUE. La diferencia entre el valor actual y el valor leído anteriormente es almacenada en DIFFERENCE. 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

  VALUE : UDINT;

   DIFFERENCE : UDINT;

END_VAR

 

DO1 := FB_READENC3(

   EN:=DI1,

   Source:=1,

  Value=>VALUE,

  Delta=>DIFFERENCE);