MP277 - Schaltfläche mit Zeitverzögerung

kassla

Level-1
Beiträge
135
Reaktionspunkte
10
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Forum,

unser Kunde hat "Wurstfinger" und gelangt beim Arbeiten immer ungewollt auf die projektierten Schaltflächen des Touchpanel MP277.
Nun wünscht er, die Befehle mit Zeitverzögerung zu bearbeiten, z.b. erst nach Drücken von 3 Sekunden die Befehle in der CPU auszuwerten.
Wir möchten aber nicht jedes Bit in der SPS, welches mittels Befehl "Bit setzen bei Tastendruck", gesetzt wird, mit einem Timer zeitverzögert (SE Timer) auswerten, auch weil wir hier eine Unmenge an Timern benötigen würden.
Gibt's eine elegantere Lösung oder einen einfachen Befehl auf dem Panel?


Gruß und vielen Dank,
kassla

Übrigens: wir projektieren mit WinCCFlex 2007 HF4 und würden eine Lösung auch für andere HMI's benötigen ...
 
Hallo,
für die Visu fällt mir zu deinem Problem nichts ein ...
In der SPS gäbe es da schon eine Möglichkeit, wenn deine Befehls-Bits in einem zusammenhängenden Bereich liegen würden.
Du könntest dann den Bereich (z.B. ein DWORD) mit den gespeicherten Zustand dieses Bereiches vergleichen. Ist der unterschiedlich (idealerweise ungleich 0) dann startest du einen Timer. Kann der Timer (SE) ablaufen dann gibst du ein Freigabe-Bit und kopierst das aktuelle DWORD auf das gespeicherte DWORD. Geht dein aktuelles DWORD wieder auf 0 dann kopierst du es gleich auf das gespeicherte ...
So in etwa ...

Gruß
LL
 
Zuviel Werbung?
-> Hier kostenlos registrieren
hi,
eine Lösung hab ich grad nicht, aber eine Frage: wenn er das Panel berührt, dann doch sicher, um es zu bedienen. wenn er also eine Taste betätigt und dabei aufgrund seiner Finger aus Versehen eine zweite Taste berührt, was bringt dann die Verzögerung? weil dann werden ja beide verzögert und beide dann aktiviert...??? und wenn er nix steuern will, muss er das Panel ja auch nicht berühren. ansonsten gibt es auch so "Stifte" für Touch-Panels...
 
Wir hängen in solchen Fällen auch immer diese Stifte an einer Kette an die Panels. Damit können dann auch Kunden mit Wurstfingern das Panel gut bedienen :)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Es gebe noch die möglichkeit über ein Script eine Zeitverzögerung zu
machen. Das hier ist nicht getestet müste noch Probiert werden.
Dazu setzt du beim Tastendruck eine interne Variable "Taste_OP" und
rufst das Script auf. Da läuft als erstes die Wartezeit ab und dann
kannst du die Tasten Variablen nach der wirklichen Variablen "Taste_CPU"
umladen. Aber nicht vergessen beim loslassen der Taste beide Variablen
wieder zurückzusetzen.

Code:
[COLOR=yellowgreen]'Verzögerung [/COLOR]
Dim StartTime, StopTime, i
StartTime = Now
StopTime = StartTime + DelayTime / 24 / 360000
Do
Loop Until Now >= StopTime 
 
[COLOR=yellowgreen]'Variablen umladen[/COLOR] 
SmartTags("Taste_OP")  =  SmartTags("Taste_CPU")

gruß Helmut
 
@Helmut:
gewagter Ansatz ... :rolleyes:
Bitte bedenke :
- läuft ein Script, so kann kein anderes mehr ausgeführt werden. In Falle von Kassla können da schon mal 3 Sek. vergehen.
- du müßtest noch einbauen, dass das Script (die Schleife) wieder abgebrochen wird, wenn die Taste nicht mehr gedrückt ist.
-was ist, wenn du relativ flott von einer Taste auf die andere gewechselt wird ? Das bekommt das Script ggf. nicht mit ...

Gruß
LL
 
@Helmut:
gewagter Ansatz ... :rolleyes:
Bitte bedenke :
- läuft ein Script, so kann kein anderes mehr ausgeführt werden. In Falle von Kassla können da schon mal 3 Sek. vergehen.
- du müßtest noch einbauen, dass das Script (die Schleife) wieder abgebrochen wird, wenn die Taste nicht mehr gedrückt ist.
-was ist, wenn du relativ flott von einer Taste auf die andere gewechselt wird ? Das bekommt das Script ggf. nicht mit ...

Gruß
LL

ich würde das überhaubt nicht so lösen Larry, ich würde den
kunden die Wursfinger abschneiden.

Das muss mann schon verfeinern und testen, Scripterei in den Panels
ist so eine sache, gerade wenn mehrere gleichzeitig aufgerufen werden.
Einfach mal probieren und optimieren.

gruß
 
Zurück
Oben