Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched.
Close
Der Trick wäre, dass du nicht mit REAL, sondern mit Ganzzahlen arbeitest. Da musst du halt ein bisschen rumtricksen. Eine Möglichkeit wäre z.B., Vorkomma- und Nachkomma-Stellen als jeweils eine Ganzzahl zu bearbeiten. Oder so wie es in obigem Link beschrieben wird.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Die Applikation ist ein Teil meiner Diplomarbeit. Deshalb werde ich die Applikation frühstens nach Abgabe und Benotung meiner Diplomarbeit online stellen.
@SPSstudent:
Danke vielmals!!!
War echt ein super Link. Ich habe das Problem mit der Einbindung der OSCAT-Bibliothek gelöst. Mit der Funktion REAL_TO_STRF kann man gezielt die Ausgabe beinflussen.
Grüße
ATS
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hallo Leute,
ich habe in CoDeSys 3.3 einen Taschenrechner realisiert sowie visualisiert. Bin sehr begeistert, welche Möglichkeiten CoDeSys bietet.
Allerdings habe ich ein kleines Problem. Wenn ich Zahlen < 1.8 mit einer anderen Zahl addiere, bekomme ich nicht das richtige Ergebnis.
Bsp.:
1.3 + 3 = 4.299999 statt 4.3
.
.
.
1.7 + 3 = 4.699999 statt 4.7
1.8 + 3 = 4.8
Da es um eine Visualisierung handelt, habe ich als Ausgabe und Eingabe den Datentyp STRING verwendet.
Die Eingabe wird mit STRING_TO_REAL ohne Probleme konvertiert.
Die Addition erfolgt in REAL. Das Ergebnis der Addition ist richtig, da die Addition in REAL stattfindet.
Bei der Konvertierung REAL_TO_STRING habe ich im ONLINE-MODUS den FEHLER festhalten können. Siehe Anhang!
Gibt es einen Trick, womit man dieses Problem beheben kann.
mfg
ats
Anhang
Hallo ATS,
poste Deine Applikation doch, damit alle etwas davon haben.
Auch sVar:=REAL_TO_STRING(4.7) ergibt sVar=4.699999. Das liegt nicht am Programm.
REAL-Zahlen sind ein bisschen Sonderzahlen, da die nicht als normale Kommazahl im Speicher stehen, sondern in Exponenten-Darstellung.
Hier gab es dasselbe Problem: http://www.sps-forum.de/archive/index.php/t-19801.html
Der Trick wäre, dass du nicht mit REAL, sondern mit Ganzzahlen arbeitest. Da musst du halt ein bisschen rumtricksen. Eine Möglichkeit wäre z.B., Vorkomma- und Nachkomma-Stellen als jeweils eine Ganzzahl zu bearbeiten. Oder so wie es in obigem Link beschrieben wird.
Hallo,
@Herr Schuster:
Die Applikation ist ein Teil meiner Diplomarbeit. Deshalb werde ich die Applikation frühstens nach Abgabe und Benotung meiner Diplomarbeit online stellen.
@SPSstudent:
Danke vielmals!!!
War echt ein super Link. Ich habe das Problem mit der Einbindung der OSCAT-Bibliothek gelöst. Mit der Funktion REAL_TO_STRF kann man gezielt die Ausgabe beinflussen.
Grüße
ATS