Codesys V2 und NaN bei Real Werten

hkic

Level-1
Beiträge
16
Reaktionspunkte
2
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen!

Ich hab das Problem bei Codesys V2 dass die CPU bei einem NaN auf einer Real-Variable auf Stop geht.
NaN kommt von der Visualsierung wenn ein Zustand undefiniert ist.
Bei Beckhoff kann ich NaN mit der Function IsFinite abfangen.
Gibt es für Codesys V2 eine Lösung?

Danke in vorraus,

Herbert

[h=1][/h]
 
Wie eine Steuerung mit NaN umgeht, das hängt von der Steuerung ab. Manche Steuerungen "rechnen" mit NaN und manche nicht. Die Prozessoren haben da mitunter unterschiedliche Modi, die vom Steuerungshersteller eingestellt werden.

Normalerweise kann man NaN einfach abprüfen mit
IF (Real != Real) THEN

NaN ist zu keinem Wert gleich, nicht mal zu sich selbst.
 
Irgendwie habe ich den Dagobert übersehen, ist die gleiche Antwort ...
Wenn das nicht geht, dann kann man nur das Bitmuster aus der IEEE-Definition in ein DWORD kopieren und über Pointer vergleichen, dann ist sicher keine FPU im Spiel
Also in etwa
IF (pdwNaNDefinition^ != ADR(Real)^) THEN
 
Zurück
Oben