STRING_TO_LREAL

STRING en LREAL

STRING_TO_LREAL convertit une chaîne de caractères en format à virgule flottante en une valeur du type de données LREAL.

D’abord, la chaîne de caractères est convertie en une valeur du type de données STRING[64]. Ensuite, cette dernière est convertie en une valeur du type de données LREAL via un sous-programme nécessitant 580 pas environ.

Unnamed input (STRING)

Type de données d’entrée

Sortie

Unnamed output (LREAL)

Résultat de la conversion

Remarques

Format accepté : '[espace][signe][nombres décimaux].[nombres décimaux][espace]', par exemple ' 1.45620752 '

Caractères acceptés :

Espace

Espace “

Nombres décimaux

Nombres décimaux "0"-"9"

L’analyse se termine avec le premier nombre non décimal.

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
		lrValue: LREAL:=0.0;
		bStart: BOOL:=FALSE;
		sValue: STRING[64]:='';
	END_VAR

Corps en LD

La fonction est exécutée lorsque la variable bStart est définie sur TRUE.

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 6 ;
        NETWORK_BODY
B(B_CONTACT,,bStart,3,2,5,4,);
B(B_F,E_STRING_TO_LREAL!,,10,1,20,5,,?DEN?D?AENO?C);
B(B_VARIN,,sValue,8,3,10,5,);
B(B_VAROUT,,lrValue,20,3,22,5,);
L(1,0,1,6);
L(1,3,3,3);
L(5,3,10,3);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Corps en ST

if (bStart) then
    lrValue:=STRING_TO_LREAL(sValue);
end_if;

Modifié le : 2022-09-26Commentaires sur cette pageAssistance téléphonique