Bloque que calcula el valor de Value elevado a la potencia Power, almacenando el resultado en Result.
Representación Ladder

Estructura del Bloque
Tipo de Variable |
Nombre |
Tipo de Dato |
Descripción |
VAR_INPUT |
EN |
BOOL |
Habilitación del bloque |
Value |
REAL |
Base de la operación |
|
Power |
REAL |
Potencia de la operación |
|
VAR_OUTPUT |
Done |
BOOL |
Fin de operación |
Result |
REAL |
Variable que almacena el resultado de la operación |
Operación
Este bloque, cuando tiene un valor TRUE en EN, envía a la salida Result el valor de Value elevado a la potencia Power. No habiendo errores, la variable Done es ajustada. En caso de que haya algún error en la operación, Done no será ajustada, permaneciendo en estado FALSE, mientras que Result permanecerá con su valor inalterado.
Cuando EN tiene valor FALSE, Result permanece inalterado y Done permanece en FALSE.
Diagrama de Flujo del Bloque

Ejemplo en Ladder

El ejemplo de arriba calcula el valor de la variable VALUE elevada a la potencia de la variable POWER, almacenando el resultado final en RESULT. El bloque finaliza exitosamente y la salida Done es activada.

El ejemplo de arriba calcula el valor de la variable VALUE elevada a la potencia de la variable POWER, almacenando el resultado final en RESULT. El bloque finaliza exitosamente y la salida Done es activada.

El ejemplo de arriba calcula el valor de la variable VALUE elevada a la potencia de la variable POWER, almacenando el resultado final en RESULT. Como el resultado es superior al valor máximo soportado por el tipo REAL, el bloque genera un error y la salida Done es desactivada.
Ejemplo en ST
El siguiente ejemplo muestra las instrucciones para aplicar el ejemplo anterior en el lenguaje ST.
VAR VALUE : REAL := 16; POWER : REAL := -40; RESULT : REAL; END_VAR
RESULT := FB_POW( EN:=DI1, Value:=VALUE, Power:=POWER, Done=>DO1);
|
|---|