WinCC Flex - Bedienung erst beim zweiten tasten

eYe

Level-1
Beiträge
759
Reaktionspunkte
80
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin,

ich bin gerade dabei eine Visu für eine Mittelspannungsschaltanlage zu machen und der Kunde möchte gerne das die Schaltbefehle nicht schon beim ersten Tastendruck, sondern erst nach einer erneuten Abfrage gesendet werden.

Wie handhabt ihr sowas?

Ich habe es nun soweit das ich mit meinem Ein/Aus Taster eine interne Variable setze, die ein PopUp(Verdeckte Objekte sichtbar machen) öffnet und erst wenn man dort auf den Taster drückt wird der Befehl gesendet.

Das ganze ist grundsätzlich ganz ok, allerdings stören mich zwei Dinge ungemein.

1) Ist es ein ziemlicher Aufwand, da ich für 15 Schalter jeweils ein PopUp für Ein und Aus bauen muss und zig Variablen für Sichtbarkeit, Schaltbefehl, etc vergeben muss.

2) Sobald man einmal den ersten Taster gedrückt hat, bleibt das PopUp solange geöffnet bis man es bedient hat. Wenn nun also ein DAU an den Rechner geht sind am Ende 30 öffene PopUps auf der Visu *ROFL*
(Ich könnte diese natürlich automatisch über die SPS nach einigen Sekunden wieder schließen lassen, würde den Aufwand aber noch weiter erhöhen...)


Also wie würdet/habt ihr sowas realsiert, bin auf eure Vorschläge gespannt :)

greetz, eYe
 
... was hast du für ein Bediengerät ? Wenn du Scripte kannst/könntest dann hätte ich da schon eine Idee ...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Habe ein Industrie TP auf dem die WInCC FLex Advance RT läuft, Skripte sollten also möglich sein.

Nur muss ich leider zu meiner Schande gestehen das ich noch nicht ein Skript in WinCC Flex geschrieben habe :icon_rolleyes:
 
Hallo,
mit Scripting wäre es elegant.Das ist ja kein Hexenwerk
Sag mal, wieso Popup?? (Ein/Ausblenden), mit sowas hast du viele Screen_items auf dem gleichen Bild.
Wieso kannst du dir z.B diese Abfrage als Bild [(zum Beisp beim Ein/Ausschalten:
einen Text: "Wollen Sie wirklich die Anlagex Einschlaten?"
2 Buttons : "Ja" & "Nein" (Beim Scripting ist hinter jedem Button ein Skript)]

anlegen ?

johnij
 
Mein Vorschlag hierzu wäre:
Du baust ein Funktion-Script, dass eine Rückgabe-Variable hat (die die letztlich gesetzt werden soll). Dieses Script für deine Popup-Geschichte durch und aktiviert (oder auch nicht) deine Rückgabe-Variable. Das Svcript selbst mit entsprechender Parametrierung ruftst du bei Tastendruck in deinem Bild auf ...
Du kannst dem Script auch eine Übergabe-Variable mitgeben, die dann z.B. als Überschrift fungiert ...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
noch was,
ohne Skripting ist das auch machbar
und zwar:
du hast ein Abfrage_Bild mit einigen Buttons und du kannst jedem Buttons
ein Ereignis zuordnen z.B beim Klicken->AktiviereVorherigesBild
Klicken->........

johnij
 
Ja genau mein reden, mit den "PopUps" sind es mir einfach zuviele Items und zu viele Variablen die ich verknüpfen muss.

Aussehen tut es momentan so (Siehe Anhang)

Wenn ihr da nen Vorschlag habt wie es mit nem Skript besser geht, bin ich der letzte der das nicht ausprobiert :)

Vorgefertigte Systemmeldeungen ala Windows "Sind Sie sicher das sie das wollen" gibt es in WinCC Flex wohl nicht oder?
 

Anhänge

  • popups.jpg
    popups.jpg
    370,9 KB · Aufrufe: 47
Nein, diese Systemmedlungen gibt es nicht.
Wie gesagt, an deiner Stelle würde ich statt ein Popup ein Bild erstellen, wie ich es vorhin geschildert habe.
Popup siehen meiner Meinung nach nicht sauber aus.:rolleyes:

johnij
 
Zuviel Werbung?
-> Hier kostenlos registrieren
... da habe ich mich mit meinem Vorschlag ein bißchen weit aus dem Fenster gelehnt ...

Dennoch ein Lösungs-Vorschlag - ob es dir den Aufwand wert ist, das mußt du selbst entscheiden ...

Zunächst legst du eine Global-Variable an vom Typ INT, die nicht unbedingt Verbindung zur SPS haben muß ...
Für jede deiner Tasten legst du nun für dich einen Index fest (1 = Taste 1 in Bild 1 , 2 = Taste 2 in Bild 1 usw.). Den mußt du dir merken, denn er findet schließlich Anwendúng in dem Script.
Durch Druck deines Aktivierungs-Buttons rufst du nun ein neues Fenster auf oder machst ein Object auch deinem Bild sichtbar. Diese Object hat den Überschriftstext deiner Wahl und die Tasten "Ja" und "Nein". Mit den Tasten rufst du das Script auf und übergibst demselben dann als Parameter das "ja" oder "Nein" und die Index-Nummer. Im Script wertest du die Index-Nummer dann aus und weist entsprechend die zuständige Variable zu.
Im Script könnte das Ganze dann ungefähr so aussehen :
Code:
if Index_Nr = 1 and Tasten_Code = "Ja" then Setz_Variable_1 = true
if Index_Nr = 2 and Tasten_Code = "Ja" then Setz_Variable_2 = true
 
usw.
Index_Nr und Tasten_Code sind hier die Übergabe-Variablen und anstelle von Setz_Variable_x müßtest du dann den Namen der Variablen einfügen, die in Wirklichkeit zugewiesen werden soll.

Ich hoffe, du kannst damit etwas anfangen ... Etwas Besseres fällt mir dazu im Augenblick nicht ein. Bei Interesse können wir dann ja ggf. daran weiterbasteln ...

Gruß
LL
 
Hallo

... Zunächst legst du eine Global-Variable an vom Typ INT, die nicht unbedingt Verbindung zur SPS haben muß ...
Für jede deiner Tasten legst du nun für dich einen Index fest (1 = Taste 1 in Bild 1 , 2 = Taste 2 in Bild 1 usw.). Den mußt du dir merken, denn er findet schließlich Anwendúng in dem Script.
Durch Druck deines Aktivierungs-Buttons rufst du nun ein neues Fenster auf oder machst ein Object auch deinem Bild sichtbar. Diese Object hat den Überschriftstext deiner Wahl und die Tasten "Ja" und "Nein". Mit den Tasten rufst du das Script auf und übergibst demselben dann als Parameter das "ja" oder "Nein" und die Index-Nummer. Im Script wertest du die Index-Nummer dann aus und weist entsprechend die zuständige Variable zu. ....

*ACK*

Wir machen das fast gleich, ausser: Die Indexvariable senden wir sofort nach Tastendruck in die SPS. Danach werden (wie von LL beschrieben) die Tasten "Ja" und "Nein" oder "Start" und "Stopp" eingeblendet welche mit je ein Bit zur Steuerung verknüpft sind. Die Indexauswertung machen wir dann in der SPS.

Vorteile:
- Mit einer Integer und zwei Binary I/O-Variablen können bis zu 65535 Funktionen gestartet oder gestoppt werden (sehr geringer Kommunikationsaufwand).
- Die in der SPS mit der Interger und der Binary Variable erzeugten Tastenbits können sehr einfach verriegelt werden.

Nachteil:
-Für die Status-Anzeige müssen unter Umständen zusätzliche Variablen kommuniziert werden.

Wir verwenden zwar nicht WinCC Flex. Ist hier aber sicher auch machbar.

Gruss Hoyt
 
Zurück
Oben