Descripción breve
El bloque "Instrucción aritmética" calcula el valor AQ de una ecuación formada por operandos y operadores definidos por el usuario.
|
Conexión |
Descripción |
|
Entrada En |
Un flanco ascendente en la entrada En habilita el bloque de función "Instrucción aritmética" |
|
Parámetro |
V1: valor 1: primer operando V2: valor 2: segundo operando V3: valor 3: tercer operando V4: valor 4: cuarto operando Rango de valores: de -32768 a 32767 Operador 1: primer operador Operador 2: segundo operador Operador 3: tercer operador Prioridad 1: prioridad de la primera operación Prioridad 2: prioridad de la segunda operación Prioridad 3: prioridad de la tercera operación p: número de decimales Ajustes posibles: 0, 1, 2, 3 |
|
Salida AQ |
La salida AQ es el resultado de la ecuación de valores de operandos y operadores. AQ se pone a 32767 si ocurre una división por 0 o un rebase por exceso, o bien a -32768 si ocurre un rebase por defecto. |
|
|
0BA1- 0BA5: El bloque de función "Instrucción aritmética" está disponible solo a partir de la serie de dispositivos 0BA6. |
Parámetros V1, V2, V3 y V4
Los valores de V1, V2, V3 y V4 también pueden ser el valor real de otra función preprogramada:
Comparador analógico: Ax - Ay
Conmutador analógico de valor umbral: Ax
Amplificador analógico: Ax
Multiplexor analógico: AQ
Rampa analógica: AQ
Instrucción aritmética: AQ
Regulador PI: AQ
Contador adelante/atrás: Cnt
En los dispositivos 0BA7 y superiores se pueden utilizar adicionalmente los valores reales de las siguientes funciones preprogramadas:
Retardo a la conexión: Ta
Retardo a la desconexión: Ta
Retardo a la conexión/desconexión: Ta
Retardo a la conexión con memoria: Ta
Relé de barrido (salida de impulso): Ta
Relé de barrido activado por flancos: Ta
Generador de impulsos asíncrono: Ta
Interruptor de alumbrado para escalera: Ta
Interruptor multifuncional: Ta
Cronómetro: AQ
Filtro analógico: AQ
Valor medio: AQ
Máx/Mín: AQ
Selector de umbral: Fre
Seleccione la función deseada mediante el número de bloque.
Parámetro p (número de decimales)
El parámetro p solo es válido para visualizar los valores V1, V2, V3, V4 y AQ en un texto de aviso.
Descripción de la función
La función "Instrucción aritmética" combina los cuatro operandos y los tres operadores para formar una ecuación. El operador puede ser uno de los cuatro operadores estándar: +, -, * o /. Para cada operador es preciso ajustar una prioridad unívoca, a saber: High ("H"), Medium ("M") o Low ("L"). La operación con la prioridad High es la primera que se ejecuta, luego la operación con la prioridad Medium y, por último, la operación con la prioridad Low. Debe haber exactamente una operación de cada prioridad. Los valores de operandos pueden hacer referencia a una función definida previamente para proveer el respectivo valor. La función "Instrucción aritmética" redondea el resultado al valor entero más próximo.
La cantidad de valores de operandos se ha fijado a 4, en tanto que la cantidad de operadores se ha fijado a 3. Si necesita menos operandos, utilice construcciones tales como " + 0" o " * 1" para especificar los demás parámetros.
También puede configurar la reacción de la función cuando el parámetro de habilitación "En"=0. El bloque de función puede conservar su último valor, o bien ponerse a 0.
Errores posibles: división por cero y desbordamiento
Si la ejecución del bloque de función de la instrucción aritmética resulta en una división por cero o un desbordamiento, se activan bits internos que indican el tipo de error que ha ocurrido. Es posible programar un bloque de función de detección de error de la instrucción aritmética para detectar estos errores y controlar la reacción del programa de la manera deseada. Para cada bloque de función de la instrucción aritmética se programa un bloque de función de detección de error de la instrucción aritmética.
Ejemplos
Las tablas siguientes muestran algunos ejemplos sencillos de parámetros de bloques de la instrucción aritmética con la ecuación resultante y los valores de salida:
|
V1 |
Operator1 (prioridad 1) |
V2 |
Operator2 (prioridad 2) |
V3 |
Operator3 (prioridad 3) |
V4 |
|
12 |
+ (M) |
6 |
/ (H) |
3 |
- (L) |
1 |
Ecuación: (12 + (6 / 3)) - 1
Resultado: 13
|
V1 |
Operator1 (prioridad 1) |
V2 |
Operator2 (prioridad 2) |
V3 |
Operator3 (prioridad 3) |
V4 |
|
2 |
+ (L) |
3 |
* (M) |
1 |
+ (H) |
4 |
Ecuación: 2 + (3 * (1 + 4))
Resultado: 17
|
V1 |
Operator1 (prioridad 1) |
V2 |
Operator2 (prioridad 2) |
V3 |
Operator3 (prioridad 3) |
V4 |
|
100 |
- (H) |
25 |
/ (L) |
2 |
+ (M) |
1 |
Ecuación: (100 – 25) / (2 + 1)
Resultado: 25