WinCC Flex Problem beim laden von Werten aus DB in HMI

Hennessy_Hoh

Level-1
Beiträge
3
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

seit einigen Tage beschäftige ich mich mit folgender Problematik und komme auf keinen grünen Zweig.

Hardware/Software:
CPU 1518F-4 PN/DP / TIA Portal V15 SP1 Upd 5
IPC277E / WinCC Advanced V14 SP1 Upd 5

Auf dem HMI kann ich, über ein PopUp, Variablen mit Werten füllen. Diese werden im Nachhinein über einen Button (SetzeVariableWährendGedrückt) in einen IDB (optimiert) geschrieben. Direkt danach soll das HMI wieder die neuen Werte in einem Ausgabefeld anzeigen und genau da liegt denke ich das Problem. Das ziehen der Werte aus dem DB scheint aus irgendeinem Grund "zu langsam" oder "störungsbehaftet" abzulaufen, da manchmal die Werte aus dem IDB und die angezeigten Werte im HMI voneinander abweichen. Undzwar in sofern, dass das HMI den Wert, der zuvor im IDB gestanden hat, anzeigt.

Hat einer eine Idee?

Danke schonmal für eure Hilfe :)

Gruß Hennessy
 
Mit der HMI im IDB rumzustochern ist eine ganz schlechte Idee. Wenn da gleichzeitig SPS und HMI auf die Variablen schreiben, wer ist dann der Sieger?
Wenn du dann noch eine 1518 am Start hast, also ein sehr schnelles Stück Hardware und (noch) ganz wenig Programm, dann werden genau diese Probleme sehr oft zu sehen sein.

Such mal in der Forensuche mit dem Stichwort "Zykluskontrollpunkt".
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Kannst Du mal etwas genauer erklären was und wie Du das tust?

Auf dem HMI kann ich, über ein PopUp, Variablen mit Werten füllen.
Was sind das für Variablen? HMI-interne Variablen? Rezeptur-Variablen? Ist das ein EA-Feld? Welcher Modus? (Eingabe, Ausgabe, Ein/Ausgabe)

Diese werden im Nachhinein über einen Button (SetzeVariableWährendGedrückt) in einen IDB (optimiert) geschrieben.
Wie meinst Du das? Eine Systemfunktion "SetzeVariableWährendGedrückt" kennt die TIA-Dokumentation nicht. (und ich auch nicht - ich habe kein TIA V15)
Und wie kommen dadurch vorher eingegebene Werte in den IDB? Ist da in der SPS eine Kopierfunktion programmiert?

Das ziehen der Werte aus dem DB scheint aus irgendeinem Grund "zu langsam" oder "störungsbehaftet" abzulaufen, da manchmal die Werte aus dem IDB und die angezeigten Werte im HMI voneinander abweichen. Undzwar in sofern, dass das HMI den Wert, der zuvor im IDB gestanden hat, anzeigt.
Was meinst Du mit "ziehen der Werte aus dem DB"?
Mit welcher PLC-Variable ist die HMI-Variable des EA-Feldes verbunden?
Schreibt das SPS-Programm auch (zyklisch?) in die Variablen im IDB?

Harald
 
Servus Ralle, vielen Dank für den Hinweis, ich versuche mal mein Glück.

Servus Harald,

Habe mich oben verschrieben, ich nutze TIA V14 und meinte den Befehl (SetzeBitWährendGedrückt) dieses triggert das unten beschriebene Schreiben der Daten

ich bin in ein laufendes Projekt gekommen und soll dort aktuelle Fehler in Zusammenhang mit der SPS ausmärzen.

Es gibt:
HMI-Bild mit Übersicht des Teilezählers
Pop-Up zum Manipulieren der Zählerwerte
FB mit IDB zum Verarbeiten der Werte

Die Variablen die im Pop-Up manipuliert werden, werden über ein E/A-Feld bearbeitet. Diese HMI-Variablen sind mit entsprechenden PLC-Variablen verknüpft. Die PLC-Variablen werden dann, beim betätigen des Save-Buttons, in einem FB verarbeitet. Dort werden die Werte aus dem Pop-Up auf andere PLC-Variablen im IDB geschrieben. Diese sind wiederum mit HMI-Variablen verknüpft die dann im HMI-Bild mit Übersicht des Teilezählers visualisiert werden.

Die SPS läuft zyklisch und das Programm ist schon sehr umfangreich (Produktionslinie in der Industrie)

Sorry das meine Beschreibungen noch recht schwammig sind, bin neu im Geschäft und muss noch einiges lernen.
Ich hoffe das ich euch mein Problem einigermaßen Beschreiben konnte.

Gruß
Hennessy
 
Hallo,

um das Thema abzuschließen folgendes:

Mein Problem lag ganz wo anders. Die Werte wurden über ein E/A-Feld in einem Bildbaustein ausgegeben. Dort war ein Skript angelegt, welches für die Aktualisierung der Werte zuständig ist.
Besagtes Skript wurde bei Wertänderung der "Speichern-Taste" einmalig ausgeführt.
Loesung: Neue Variable, die 1 wird wenn das Pop-Up zum Bearbeiten der Werte aktiv ist. So stelle ich sicher, dass das Skript mehrere Zyklen durchläuft und die Werte aus dem DB sicher in den Bildbaustein überträgt.

Gruss
Hennessy
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Loesung: Neue Variable, die 1 wird wenn das Pop-Up zum Bearbeiten der Werte aktiv ist. So stelle ich sicher, dass das Skript mehrere Zyklen durchläuft
Wie machst Du das, daß das Skript mehrmals durchläuft - enthält das Skript eine Schleife (und blockiert solange alle anderen Skripte)?

und die Werte aus dem DB sicher in den Bildbaustein überträgt.
Naja, "sicher" ist bei solchem Vorgehen relativ. Woher weiß der Bildbaustein, wann alle Werte aus dem DB gelesen wurden? Muß der Bediener kontrollieren und warten(!), bis alle verarbeiteten Werte wieder ausgelesen wurden?

Wirklich sicher bekommt man Werte nur als Rezeptur ins HMI eingelesen. Benutze mal die Forumssuche nach GetDataRecordTagsFromPLC

Harald
 
Zurück
Oben