WinCC: EA-Feld für kleine Dezimalzahlen e-006

jussa

Level-1
Beiträge
10
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
WinCC: EA-Feld für kleine Dezimalzahlen e-006 [gelöst]

Hallo zusammen, ich hab grad ein kleines Problem mit meiner WinCC-GUI: Ich verwende WinCC 7. + SP2 + Upd1 in Verbindung mit einer CPU 351-2 DP mit Step7. Über die GUI möchte ich einige Parameter vorgeben (bzw Werte anzeigen lassen) und das klappt im Prinzip auch. Allerdings zicken mir die EA-Felder bei kleinen Dezimalzahlen herum. Zum Beispiel möchte ich den Wert 4,00e-006 als Schwellwert für mein System einstellen. Also hab ich ein EA-Feld angelegt und das Ausgabeformat mit 9,99e definiert. Dazu über den Dynamik-Dialog mit der passenden Variablen, die auf den DB-Baustein verweist, verknüpft. Wenn ich da aber jetzt eben 4,00e-006 eintrage, so zeigt mir das Fenster danach nur 0,00e+000 an, obwohl in Step7 im Datenbaustein der eigentlich eingegebene Wert steht. Damit mir das EA-Feld den Wert richtig anzeigt, so muss ich es mit 9,999999e-6 definieren, dann bekomme ich auch 4,000000e-006 angezeigt. Daneben hab ich auch noch Druckwerte mit e-007 und e-008, bei denen ich dementsprechend mehr Nachkommastellen anzeigen lassen muss, damit ich nicht nur 0 angezeigt bekomme. Aber eine Anzeige von 5,09378273e-008 ist imho Blödsinn, 5,09e-008 würden locker ausreichen... Wahrscheinlich gibt es da irgendwo eine Option für, die ich im Moment nur nicht finde. Wäre also nett, wenn mir jemand auf die Sprünge helfen könnte. Vielen Dank.
 
Zuletzt bearbeitet:
REAL-Zahlen können nicht als z.B. 0,000004321 angezeigt werden.
Das REAL-Format hat nur ca. 6 signifikante Digits, die Du bei Deinem E/A-Feld schon VOR der eigentlichen Mantisse verballern würdest (0,00000xxxx). Solche "unnormal" kleinen Zahlen können nur in der Exponentendarstellung 4,321e-006 angezeigt werden.
Du solltest die E/A-Werte möglichst so "normieren" (skalieren), daß die erste Ziffer vor oder nach dem Komma steht (dann bleibt außerdem auch noch etwas Auflösung für Nachkommastellen übrig).
Speichere Deine Druck-Grenzwerte in der SPS also nicht als z.B. 0,000004 bar, sondern als 0,004 mbar oder 4,0 µbar. Eigentlich müßte auch eine Skalierung der Variablen direkt in WinCC 7 möglich sein, mit dieser Version habe ich aber keine Erfahrung.

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Eine feste Einstellung dafür gibt es nicht. Sprich, wenn sich die Werte ändern reagiert WinCC darauf nicht, das es diese automatisch anpasst.
Das einzigste, was möglich ist, das die Skallierung dazu über ein Script bearbeitet wird. Also bei Ausgabeformat soll der Wert der Variable in der SPS
ausgelesen werden und dann im Script überprüft werden, in welchem Bereich er sich befindet und dann das jeweilige Format zurückgegeben werden.

Was anderes kenn ich jetzt nicht.
 
Vielen Dank für die Antworten.
REAL-Zahlen können nicht als z.B. 0,000004321 angezeigt werden. Das REAL-Format hat nur ca. 6 signifikante Digits, die Du bei Deinem E/A-Feld schon VOR der eigentlichen Mantisse verballern würdest (0,00000xxxx). Solche "unnormal" kleinen Zahlen können nur in der Exponentendarstellung 4,321e-006 angezeigt werden.
Und genau das mit der Exponentendarstellung will ich ja. Und deswegen hab ich ja das Ausgabeformat mit 9,99e definiert.
Du solltest die E/A-Werte möglichst so "normieren" (skalieren), daß die erste Ziffer vor oder nach dem Komma steht (dann bleibt außerdem auch noch etwas Auflösung für Nachkommastellen übrig).
das macht WinCC ja eigentlich von alleine, dachte ich. Bzw. macht es das auch. Aber im Moment muss ich ihn halt auch zig Nachkommastellen anzeigen lassen, damit er überhaupt was anderes als 0,00e000 anzeigt. Und das Problem tritt ja schon im GraphicsDesigner auf: Ich hab eben ein neues EA-Feld eingefügt und mit keiner Variablen verknüpft. In den Objekteigenschaften hab ich dann das Ausgabeformat von 999,999 auf 999,999e geändert und als Ausgabewert 4e-8 eingegeben. Und dann bekomme ich gleich im Entwurfsfenster nur noch 0,000e+000 angezeigt. Erst wenn ich das Format auf 999,99999999e ändere (also 8 Nachkommastellen), dann bekomme ich die Ausgabe 4,00000000e-008. Wenn ich wieder eine Nachkommastelle wegnehme, dann erscheint wieder 0,0000000e+000. Aber: Nachdem ich eben festgestellt hab, dass es auf einem anderes System genau so funktioniert, wie ich es mir vorstelle, habe ich bemerkt, dass auf dem "Problem-System" das Update2 fehlt, obwohl es eine frischgekaufte Version ist. Nach dem Installieren von dem Update geht alles wie gewünscht. Nochmal vielen Dank für die Antworten.
 
Zurück
Oben