LN

Logarithme népérien

La fonction LN calcule le logarithme de base e (nombre d’Euler = 2,7182818) de la variable d’entrée (valeur > 0,0) et écrit le résultat dans la variable de sortie. C’est la fonction inverse de la fonction EXP.

Paramètres

Entrée

Unnamed input (REAL, LREAL)

Valeur d’entrée

Sortie

Unnamed output (REAL, LREAL)

Sortie comme entrée : logarithme népérien de la valeur d’entrée

Drapeaux d’erreur

sys_bIsOperationErrorHold (passe à TRUE et reste TRUE)

Si la variable d’entrée n’est pas du type de données REAL, LREAL ou si la variable d’entrée n’est pas > 0,0.

sys_bIsOperationErrorNonHold (passe à TRUE pendant un cycle)

Si la variable d’entrée n’est pas du type de données REAL, LREAL ou si la variable d’entrée n’est pas > 0,0.

sys_bIsEqual (passe à TRUE et reste TRUE)

Si la variable de sortie est = 0.

sys_bIsCarry (passe à TRUE pendant un cycle)

Si le résultat du traitement est supérieur à la variable de sortie.

Exemple

En-tête du POU

Toutes les variables d’entrée et de sortie utilisées pour programmer cette fonction ont été déclarées dans l’en-tête du POU. Le même en-tête de POU est utilisé pour tous les langages de programmation.

	VAR
		input_value: REAL:=0.0;
			(*number > 0.0*)
		output_value: REAL:=0.0;
			(*number unequal 0*)
	END_VAR
	VAR
		input_value: REAL:=0.0;
			(*number > 0.0*)
		output_value: REAL:=0.0;
			(*number unequal 0*)
	END_VAR

Cet exemple utilise des variables. Vous pouvez également utiliser une constante pour la variable d’entrée.

Corps en LD

Le logarithme de la valeur d’entrée (input_value) est calculé en base e et est écrit dans la valeur de sortie (output_value).

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 2 ;
        NETWORK_BODY
B(B_F,LN!,Instance,8,0,13,2,,?D?C);
B(B_VARIN,,input_value,6,0,8,2,);
B(B_VAROUT,,output_value,13,0,15,2,);
L(1,0,1,2);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Corps en ST

output_value:=LN(input_value);

Corps en IL

LD

input_value

LN

ST

output_value

Modifié le : 2022-09-26Feedback on this pagePanasonic hotline