WinCC Unified Bildbaustein Trigger

PENT89

Level-2
Beiträge
56
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Zusammen,

ich bin gerade dabei Bild baustein mit Textfelder zu erstellen.

Über die Schnittstelle wird ein Wstring übergeben, darin enthalt ist eine Json struktur. Über ein Skript soll die Struktur ausgelesen werden und an die einzelnen Textfelder übergeben werden. Dazu habe ich Interne Variablen angelegt.

Die Frage ist nur wie bekomme ich das Skript angesteuert?
 
Hallo Pent89!

Ich würde den JSON schon in der SPS zerlegen, dann ergibt sich die Frage erst garnicht.
Ansonsten gibt es doch bestimmt Timer in Unified, an die Du das Skript hängen kannst.
Zur Not eine Blink-Variable in der SPS anlegen, die bei Wertänderung das Skript triggert.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich will das nicht in der SPS zerlegen, weil es sich um ein Array of Wstring handelt, das ist auch nur ein Workaround, weil Siemens aus HMI Anwender Datentypen kein Array machen kann.

Ausserdem gehen meine Powertags dann extrem weit nach oben.
 
Der Wstring ist eine PLC-Variable? Dann gibt es die Möglichkeit, das Skript zu triggern, wenn der Wstring sich ändert. Sollte automatisch erfolgen, wenn du die Variable im Skript liest. Ansonsten kannst du über das Wecker-Symbol den Trigger für das Skript festlegen1712562894800.png
 
Deine "JSON"-Variable ist aber doch nicht intern, sondern kommt aus der SPS.
Das heißt, sie ändert irgendwann ihren Wert.
Daran kannst Du das Script hängen, um die internen Variablen zu befüllen.
Nein, die Variable mit dem Wstring ist Intern im HMI angelegt.

Das senden zur SPS kommt erst später und ist eine andere Funktion.
Das ganze soll eine Produktionsliste werden. Die Daten kommen entweder aus Eingabe Feldern des HMI oder einem Barcode später dann eventuell noch aus dem ERP-System.

Jeder WString ist quasi ein Spalte in der Tabelle über den Array Index kann ich Daten die Positionen verschieben um Prioritäten zu setzen oder zu Daten zu löschen.

Funktioniert mit anderern Programmiersprachen super. Leider nicht so gut mit Siemens.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Jetzt bin ich verwirrt:
Über die Schnittstelle wird ein Wstring übergeben, darin enthalt ist eine Json struktur. Über ein Skript soll die Struktur ausgelesen werden und an die einzelnen Textfelder übergeben werden. Dazu habe ich Interne Variablen angelegt.
Nein, die Variable mit dem Wstring ist Intern im HMI angelegt.

Das senden zur SPS kommt erst später und ist eine andere Funktion.

Kommt der WSTring nun aus der SPS und wird im Panel zerlegt, um angezeigt zu werden oder wird er im Panel aus Benutzereingaben zusammengebastelt, um an die SPS geschickt zu werden?

Wenn Du den im Panel zusammenbaust, kannst Du den Trigger eventuell an den Fokus hängen? Wenn ein Eingabefeld seinen Fokus verliert/ändert, wird das Skript getriggert, um den String zusammenzubauen?

Sonst eben über einen Tastendruck "Speichern", der dann den Zusammenbau antriggert und damit die Daten in die SPS überträgt.
 
Trigger: Wenn das nur funktionieren muss, wenn am HMI auch eine SPS angeschlossen ist und die HMI-Verbindung aufgebaut ist, dann könntest du bei Ereignissen, die den Wstring ändern, eine Variable zur SPS ändern und die SPS ändert eine Variable zum HMI.
 
Nein, die Variable mit dem Wstring ist Intern im HMI angelegt.
Die interne Variable musst du doch erst dem Bildbaustein übergeben.
Unter "Variablen Schnittstelle".
Dann kannst du die Variable auch als Trigger für Scripte verwenden:
Ansonsten kannst du über das Wecker-Symbol den Trigger für das Skript festlegen
1712562894800.png


Gibt es bei WinCC Unified bei internen Variablen kein Ereignis "Wertänderung" oder kommt das Ereignis nur nicht?
Nein. Und für SPS Variablen auch nicht.
Aber man sie als Trigger verwenden und damit Scripte anstoßen.
 
PENT89 schrieb im Eröffnungspost, dass es sich um einen Bildbaustein handelt. Es geht also sehr wahrscheinlich um die Schnittstelle des Bildbausteins
Jetzt bin ich im Bild(baustein) ;)

Können sich die Texte ändern, während der Bildbaustein angezeigt wird?
Falls die statisch sind: Gibt es dann eventuell im Bildbaustein das Event "Bild aufgebaut"? Kann man da das Skript nicht starten, um den String zu zerlegen und auf die Textfelder zu verteilen?
Falls sie sich ändern können: ggf. das Skript zyklisch triggern?
 
Zurück
Oben