Betrifft welche Produkte?
ESP-HMI1-P (HMI Designer Version 1.2 und höher)
Wie sieht die Reaktion aus?
In Direktbefehlen und Gleichungen führen mathematische Berechnungen mit Variablen vom Typ Floating Point zu fehlerhaften Ergebnissen.
Wann tritt das Problem auf?
In der Projektkomponente
Variable kann beim Definieren einer Variablen der Datentyp festgelegt werden. Es wird unterschieden zwischen Ganzzahlig (
Dword), Floating Point (
xxx.x;
xxx.xx;
xxx.xxx) und Zeichenketten (
String). Bei Variablen vom Typ Floating Point erfolgt eine automatische Skalierung von 1:10000. Damit wird die lineare Korrektur für Festkomma-Codestellen (FIXED32) automatisch vorgenommen.
Wird für Variablen vom Typ Floating Point zusätzlich im Register
Eingabegrenzen eine
Lineare Korrektur zur weiteren Skalierung des Wertes definiert, dann führt dies bei der Ausführung von mathematischen Berechnungen mit diesen Variablen in Direktbefehlen und Gleichungen zu fehlerhaften Ergebnissen.
Diagnosemöglichkeiten?
keine
Kurzfristige Maßnahmen/Empfehlungen?
- Verwenden Sie bei Variablen vom Typ Floating Point keine zusätzliche Skalierung. Stellen Sie für diese Variablen im Register Eingabegrenzen der Projektkomponente Variablen die Lineare Korrektur auf Keine ein.
- Sollte eine benutzerdefinierte Skalierung einer Variablen notwendig sein, dann stellen Sie für diese Variable anstelle von Floating Point als Datentyp Dword ein. Die Anzeige der Variablen auf der Seite erfolgt dann im Festkommaformat.
Bewertung:
Mathematische Berechnungen mit Variablen vom Typ Floating Point führen unter bestimmten Bedingungen zu fehlerhaften Ergebnissen. Diese Funktionseinschränkung wird spätestens bei der Inbetriebnahme erkannt. Die
Lineare Korrektur wird bei Variablen vom Typ Floating Point eher selten verwendet.