J'ai une petite question qui me trotte dans la tête depuis ma dernière mise en service concernant un soucis que j'ai eut sur control expert.
J'ai fait un bout de code comme suit :
Code : Tout sélectionner
VAR
NIV_CUVE : REAL; (*NIVEAU DANS LA CUVE*)
HMI_SEUIL_NIV_CUVE_OK : WORD; (*SEUIL NIVEAU OK DANS LA CUVE*)
NIV_OK : BOOL; (*NIVEAU OK DANS LA CUVE*)
END_VAR
IF NIV_CUVE < WORD_TO_REAL(HMI_SEUIL_NIV_CUVE_OK) THEN
NIV_OK := TRUE;
ELSE
NIV_OK := FALSE;
END_IF;
Hors, la variable NIV_OK été toujours en FALSE.
Après quelques temps, je me suis rendu compte que c'était la conversion WORD_TO_REAL qui empechait de valider cette condition.
J'ai donc passer ma variable HMI_SEUIL_NIV_CUVE_OK en REAL et la plus aucun soucis.
Est-ce que quelqu'un de plus expert que moi sur Control Expert/Unity saurait m'expliquer pourquoi le programme réagit de cette manière?
Merci d'avance pour vos réponses


