Skript WinCC Flexible

Ruud

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

Ich habe volgende code an eine button in WinCC Flexible geschrieben:

Set Object = HmiRuntime.Screens("Screen_1").ScreenItems("Bar_1")
Object.ProcessValue =SmartTags("TestRuud")


wenn mann jetzt auf die button druckt wird einmal die "Bar_1" mit den wert "TestRuud" angezeigt. andert sich jetzt den wert "TestRuud" dan muss man erst auf die button drucken, anders wird den "Bar_1" nicht correct angezeigt.

Ist es auch moglich um das so zu machen das das continu "refreshed" wird?
 
Bar_1 mit ein internen Variabel verknüpfen (z.B. "Bar_1_wert").
Taster mit Funktion SetValue verknüpfen. SetValue Parameter Tag="Bar_1_wert", Parameter Wert=Tag "TestRuud".

edit:
Oder habe ich els falsch verstanden ?
Willst du einfach ein Bar mit den Tag TestRuud verknüpfen so das es ständig den aktuellen Wert von Testruud anzeigt ?
Es ist den normalen funktionalität. Du brauchst nicht weiter zu tun als den Bar mit den Tag TestRuud als Parameter zu konfigurieren.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Ruud,

entsprechend der Beschreibung von Flex legst du so den gerade im Moment des Tastendrucks aktuellen Wert der Variablen an das von dir gewählte Objekt - du stellst aber keine Verbindung zwischen dem TagName und dem Object her, wie es der Flex-Eigenschaften-Editor tut.

So, wie ich das lese kannst du auf diese Weise die Objekte und die Variablen nicht miteinander verlinken ...

Gruß
Larry
 
Selbe wie die code

Bar_1 mit ein internen Variabel verknüpfen (z.B. "Bar_1_wert").
Taster mit Funktion SetValue verknüpfen. SetValue Parameter Tag="Bar_1_wert", Parameter Wert=Tag "TestRuud".

Hallo Jasper, Danke aber das aktualisiert die Bar_1 auch nur eimal und nicht constant. eigentlich will ich einmal auf den knopf drucken und danach musste die wert continu aktualisiert werden.

edit:
Oder habe ich els falsch verstanden ?
Willst du einfach ein Bar mit den Tag TestRuud verknüpfen so das es ständig den aktuellen Wert von Testruud anzeigt ?
Es ist den normalen funktionalität. Du brauchst nicht weiter zu tun als den Bar mit den Tag TestRuud als Parameter zu konfigurieren.

Hallo Jasper, Danke aber das aktualisiert die Bar_1 auch nur eimal und nicht constant. eigentlich will ich einmal auf den knopf drucken und danach musste die wert continu aktualisiert werden.
 
eigentlich will ich einmal auf den knopf drucken und danach musste die wert continu aktualisiert werden.
Das hört sich an, als ob diese Funktion im SPS gehört.

Sonnst konnte man mit visibility Animation, etwas in dieselben Stil erreichen.
Per Tastendruck interne Variabel "update_on" zwisschen 0 und 1 wechseln.
Interne Variabel "update_on" = 0 --> Eine konstante als Tekst "0" anzeigen. (Ausgabefeld ausblenden)
Interne Variabel "update_on" = 1 --> Ausgabefeld mit die gewünschte SPS Variabel anzeigen. (Tekstfeld ausblenden)
Aber das ist m.M.n. eine Bastellösung.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Meine losung

Eigentlich wolte ich ja ein "bildfenster" (winCC) wo ich bei jede verschiedene knopf verschiedene data anzeige.
Jetzt funktioniert es so,

schreibe mit den knopfdruck ein nr in eine interne variable (PID_Nr). Schreibe auch ein bool in die SPS die dan eine 1sec puls Pauze aktieviert, diese bit aus SPS triggert dan das Skript, und aktualiesiert mein bild.....



n = (PID_Nr * 26) -26
n = n + 1
Dim Gain
Gain = SmartTags("DB_PID")(n) '
...=....
...=....


'DB_PID is ein Array, so habe ich nur ein tag, und ein fenster, fur alle verschiedene regeler.
 
:confused: das könntest du doch auch in der SPS machen ...
Je nach Auswahl (von deinem Radiobutton oder ähnlich) schaltest du eine andere Variable auf die eigenliche Lese-variable, die mit dem Anzeigeelement verbunden ist. Ich halte das so für einfacher und es erspart dir die Script-Jonglierei ... :cool:

Gruß
Larry
 
sps losung

Inzwischen habe ich es auch so, weil die zyklischen Aufruf des Skript nicht schnell genug ist.


gruss Ruud
 
Zurück
Oben