Step 7 Problem mit Zahlenformat in Variable

spirit

Level-1
Beiträge
961
Reaktionspunkte
23
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi Ihr! ;)

Ich stehe vor einem Problemchen; und zwar benötige ich auf dem Display eine Eingabevariable mit Nullkommastellen. Eingegeben werden soll z.B. der Wert 0,2. Die Variable verweist auf einen DB mit dem Typ REAL.

Wenn ich jetzt im Display die Eingabe 0,2 tätige und mir das mittels Variablen-Tabelle ansehe, so bekomme ich folgenden "seltsamen" Wert:

Unbenannt.JPG


Woran könnte das liegen; evtl. daran, dass ich das Zahlenformat nicht verstehe? :confused:
 
Hi, habe nochmal ne Frage zu den Zahlenformaten ...

In einer Variablen A steht ein Zahlenwert (DINT). Dieser soll durch den Faktor 10 geteilt werden und das Ergebnis in die Variable B geschrieben werden.

Steht nun beispielsweise in Variable A der Wert 2 und teilt man diesen durch 10, so erhält man ja den Zahlenwert 0,2.

Wie müsste ich das nun wandeln, damit in Variable B auch wirklich 0,2 angezeigt wird; muss ich da mit dem Zweierkomplement arbeiten? :confused:
 
Da müsstest Du schon in REAL wandeln.

Wenn es aber nur um die Anzeige am HMI geht, brauchst Du mit der Variablen eigentlich gar nichts machen. Auch nicht teilen.
Du läßt entweder die Variable am HMI mit 0,1 linear skalieren. Oder in meinen Augen noch einfacher, einfach in dem EA-Feld eine Kommastelle definieren. Dann wird die 2 zwar als 0,2 angezeigt, aber intern arbeitest Du immer noch mit Ganzzahlen. Auch bei der Eingabe gibt der Bediener zwar eine 0,2 ein, das HMI wandelt es aber zurück in eine 2.

Ich verwende das oft bei Timern mit Millisekundenangaben. Das ist für den Bediener immer schwer vorstellbar. Also am EA-Feld 3 Kommastellen definiert, schon kann der Bediener Sekunden mit Nachkommastellen eingeben, ohne das sich was für die SPS ändert. Intern immer noch Ganzzahlen.

Auf diese Weise ungeht man auch die besonderen Probleme mit Realzahlen, die hier ja schon oft aufgeführt wurden.
 
Zurück
Oben