Skip to main content

FB_SCALING

Descripción Bloque de funciones

El FB_SCALING el bloque de funciones se utiliza para multiplicar el AnalogIn ingresado por el factor de escala y luego dividido y agregado al desplazamiento de escala. El AnalogIn la entrada se puede negar. En el caso de tipos de datos INT y DINT, esto corresponde a la multiplicación por –1. Para los tipos de datos UINT y UDINT, esto corresponde a un XOR concatenación con 16#FFFFFF o 32#FFFFFFFFFF.

El bFloor, bCeil, y bRound Las entradas se pueden utilizar para especificar qué método de redondeo se aplicará para la división interna.

además, el tWatchdog La entrada se puede utilizar para definir que el AnalogIn La entrada debe haber cambiado dentro del tiempo especificado. Si el AnalogIn entrada permanece sin cambios dentro del tiempo especificado, el bStuckAtError la salida está configurada en TRUE. Si el tWatchdog la entrada está configurada en t#0ms o no se utiliza, entonces la verificación se desactiva. El bStuckAtError La salida no es un error de FB. Como resultado, el TwinSAFE El grupo no entra en estado de error. Debe reaccionar ante ello en el programa de aplicación.

EL6900

El FB_SCALING El bloque de funciones no es compatible con el EL6900.

EL6900_SCALING.png
tabla 50. VAR_ENTRADA

Nombre

Tipo de datos

Valor inicial

Descripción, valores de parámetros

AnalogIn

LINT

0

Entrada para escalar. La entrada se puede negar.

Tipos de datos permitidos: UINT, INT, UDINT, DINT

uiMultiplier

SAFEUINT

0

Factor de escala Multiplicador

Sólo se permite un valor constante (sin variable)

uiDivisor

SAFEUINT

0

Divisor del factor de escala

Sólo se permite un valor constante (sin variable)

bFloor

SAFEBOOL

FALSE

Método de redondeo: los decimales se truncan.

Sólo se permite un valor constante (sin variable)

Sólo uno de los bFloor, bCeil, y bRound las entradas pueden serTRUE.

bCeil

SAFEBOOL

FALSE

Método de redondeo: se devuelve como resultado el siguiente entero más grande.

Sólo se permite un valor constante (sin variable)

Sólo uno de los bFloor, bCeil, y bRound las entradas pueden serTRUE.

bRound

SAFEBOOL

FALSE

Método de redondeo: redondeado desde cero (por ejemplo, 2,5 se redondea a 3).

Sólo se permite un valor constante (sin variable)

Sólo uno de los bFloor, bCeil, y bRound las entradas pueden serTRUE.

bMultiplicationFirst

SAFEBOOL

FALSE

TRUE: Al escalar, después de la negación opcional, primero se realiza la multiplicación.

FALSE: Al escalar, primero se realiza la división de negación opcional.

diScalingOffset

SAFEDINT

0

Offset que se suma al valor analógico

Sólo se permite un valor constante (sin variable)

tWatchdog

SAFETIME

TIME#0ms

Tiempo (en ms) dentro del cual AnalogIn el valor de entrada debe cambiar

Si el valor es t#0ms, entonces la verificación se desactiva.



tabla 51. VAR_SALIDA

Nombre

Tipo de datos

Valor inicial

Descripción, valores de parámetros

bStuckAtError

SAFEBOOL

FALSE

se convierte TRUE Si el AnalogIn El valor de entrada no ha cambiado para el tWatchdog tiempo.

AnalogOut

SAFEUSINT

0

Salida con la señal de entrada escalada.

  • Negación AnalogIn

  • Numerador del factor de escala de multiplicación

  • Denominador del factor de escala de división

  • Compensación de escala adicional

Tipos de datos permitidos: UINT, INT, UDINT, DINT. El tipo de datos debe seleccionarse de acuerdo con los tipos de datos de entrada.

bError

SAFEBOOL

FALSE

TRUE:

  • El AnalogOut la salida tiene un desbordamiento o un desbordamiento insuficiente.

  • En el caso de la multiplicación se produce un desbordamiento de 32 bits.

  • En el caso de la división se produce un desbordamiento de 32 bits debido al redondeo.

FALSE: No se ha producido ningún error.