Hallo,
bei der Funktion FLOAT_TO_REAL wird ein String der Länge 20 als Eingabe genommen.
Gibt man aber z.B. den String '0,2504802518' an (12 Zeichen), so wird leider nicht das korrekte
Ergebnis geliefert, weil intern ein Überlauf der DINT-Variablen tmp entsteht... UDINT verschiebt den Überlauf
auch nur um eine Stelle.
Zur Lösung des Problems fallen mir nur zwei Möglichkeiten ein (die aber beide nicht so toll sind..)
entweder muss nach einer bestimmten Anzahl an Ziffern runden oder es muss als Zwischenvariable ein REAL verwendet werden...
das ist natürlich für die Steuerungen ohne FPU nicht gut...
Hat sonst noch jemand Ideen?