REAL

NOTA
  • Pour FP-e et FP0 uniquement : les instructions REAL ne doivent pas être utilisées dans des programmes d’interruption.

  • Littéraux entiers tels que '123' sont convertis implicitement en REAL.

Les variables de type REAL sont des nombres réels de 32 bits basés sur IEEE754. La mantisse est de 23 bits et l’exposant de 8 bits.

  1.  (1) Position du bit
  2.  (2) Bit de signe : 0 positif, 1 négatif
  3.  (3) Exposants (8 bits)
  4.  (4) Mantisse (23 bits)

Intervalle des valeurs REAL :

-3.402823466*E38 à -1.175494351*E-38

0.0

+1.175494351*E-38 à +3.402823466*E38

La valeur initiale par défaut, par ex. pour la déclaration de variable dans l’en-tête de POU ou la liste des variables globales :

0.0

Vous pouvez entrer les valeurs de type REAL dans le format suivant : [+-] Integer.Integer [(Ee) [+-] Integer]

Exemple

5.983e-7

-33.876e12

3.876e3

0.000123

123.0

Fonction utilisateur de contrôle de validité d’un nombre réel

Problème :

Pour les instructions à virgule flottante, des nombres réels valides sont requis.

Intervalle des valeurs REAL :

-3.402823466*E38 à -1.175494351*E-38

0,0

+1.175494351*E-38 à +3.402823466*E38

Si un nombre réel est inférieur à -3.402823466*E38 ou supérieur à +3.402823466*E38, les variables système sys_bIsOperationErrorHold et sys_bIsOperationErrorNonHold sont activées et l’opération est interrompue lorsque le registre système 26 est défini sur Stop.

Cette condition est contrôlée par les fonctions IsValidReal et IsValidReal2.

Si un nombre réel est situé entre -1.175494351*E-38 et +1.175494351*E-38, l’automate le considère comme = 0.0 et aucun drapeau d’erreur n’est activé.

NOTA

Certains types d’automates anciens tels que le FP1 ou le FP-M ne prennent pas en charge les nombres réels.

Exemple avec IsValidReal

Dans cet exemple, les fonctions IsValidReal et IsValidReal2 sont programmées en schémas à contacts (LD) et en listes d’instructions (LI). Le même en-tête de POU est utilisé pour tous les langages de programmation.

En-tête du POU

Toutes les variables d’entrée et de sortie utilisées pour programmer cette fonction sont déclarées dans l’en-tête du POU.

LD : IsValidReal

LD : IsValidReal2

Modifié le : 2023-05-16Commentaires sur cette pageAssistance téléphonique