WinCC Flexible Taster (SetzeBitWaehrendTasteGedrueckt) bleibt nicht gesetzt

justbql

Level-2
Beiträge
66
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich habe einen Taster in WinCC Flexible. Eine Schaltfläche ruft beim Ereignis "drücken" die Funktion "SetzeBitWaehrendTasteGedrueckt" auf. Das in einer Variablen gesetzte Bit wird während des Drückens nach 1-2 Sekunden einfach zurückgesetzt. Ich muss die Schaltfläche loslassen und erneut drücken. In der Simulation funktioniert es einwandfrei. Das Projekt läuft als Runtime. Was mache ich falsch?

Vielen Dank
justbql
 
Hallo,
ich nehme einmal an, dass du einen Touch-Screen hast ...
Hast du schon mal "SetzeBit" bei Drücken und "RücksetzeBit" beim Loslassen versucht ...?

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Larry,
ja, hatte ich bereits versucht und ja, ich setze Touch-Panel ein.
Die Funktion "SetzeBitWaehrendTasteGedrueckt" bei Ereignis "Drücken" kannte ich noch gar nicht und hatte zuvor immer bei Ereignis "Klicken" die Funktion "SetzeBit" und bei "Loslassen" die Funktion "RuecksetzeBit" aufgerufen. Z.B. beim Quittierung von Alarmen habe ich diese Taste auch früher genutzt. Dass das gesetzte Bit jedoch auch bei gedrückter Schaltfläche einfach zurückgesetzt wird viel mir heute zum ersten Mal auf.

Gruß
Volker
 
Hallo Larry,
...... Dass das gesetzte Bit jedoch auch bei gedrückter Schaltfläche einfach zurückgesetzt wird viel mir heute zum ersten Mal auf.

Gruß
Volker

Das wird es normalerweise auch nicht. Selbst wenn du während des Dücken auf dem Panel von der Taste rutscht bleibt das Bit gesetzt. Erst wenn du den Finger (oder Stift) vom Screen nimmt wird das Bit zurückgesetzt. Dein Problem muss laso woanders liegen.

Wird zum Beispiel das Bit irgendwo anderes im Programm zurückgesetzt ? Evtl. als Byte, Word, Doppelword-Funktion. Das würde ich als erstes überprüfen.
 
Hallo Larry,
ja, hatte ich bereits versucht und ja, ich setze Touch-Panel ein.
Die Funktion "SetzeBitWaehrendTasteGedrueckt" bei Ereignis "Drücken" kannte ich noch gar nicht und hatte zuvor immer bei Ereignis "Klicken" die Funktion "SetzeBit" und bei "Loslassen" die Funktion "RuecksetzeBit" aufgerufen.

Hatte mal festgestellt, dass bei Spannungsausfall und Betätigung mit "SetzeBitWaehrendTasteGedrueckt" , das Bit hinter der Taste nicht zurückgesetzt wurde. Deshalb setzte ich nur noch die von Larry vorgeschlagene Variante (Setzen / Loslassen) ein.

MfG
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich hab das gleiche Problem. Fahre über eine Taste mit (SetzeBitWährendTasteGedrückt) die Anlage in Grundstellung.
Beim frischen Hochlauf müssen die Achsen sich referenzieren, das dauert dann etwas länger.

Aber die Taste bleibt meistens nur so 20s. gesetzt. Auch wenn man richtig fest gleichmäßig auf der Taste bleibt...
 
Versuche es auch einmal mit dem Löschen der "temporären Dateien" ("Extras" - "Temporären Dateien löschen"). Ich denke es hat bei mir geholfen. "Fehler", wie diese, die man nicht reproduzieren kann, machen mich immer unsicher. Suche im Forum mal nach "temporäre Dateien löschen"! Der Siemens Support riet mir ebenfalls das Projekt immer komplett neu zu generieren.
Zusätzlich hatte ich noch das Problem, das die Toucherkennung des Panels Limits für Dauerberührung hatte. Wurde der Taster mit der Mouse betätigt funktionierte er, die Toucherkennung setzte dagegen das Bit nach 1-2 Sekunden einfach zurück.
 
Hatte mal festgestellt, dass bei Spannungsausfall und Betätigung mit "SetzeBitWaehrendTasteGedrueckt" , das Bit hinter der Taste nicht zurückgesetzt wurde. Deshalb setzte ich nur noch die von Larry vorgeschlagene Variante (Setzen / Loslassen) ein.

MfG

Dieses Problem hast du auch mit "SetzteBit" und "RücksetzeBit". Das Ereignis Loslassen wird vom Panel nicht mehr erkannt - klar bei Spannungsausfall. Und somit wird auch kein Telegramm mehr geschickt. Um da die Füße anständig auf den Boden zu bekommen wären evtl. DP-Direkttasten ein Ansatz. Hab ich aber auch noch nicht verwendet.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Dass das gesetzte Bit jedoch auch bei gedrückter Schaltfläche einfach zurückgesetzt wird viel mir heute zum ersten Mal auf.

Hallo,
ich nutze diese Funktion "SetzeBitWaehrendTasteGedrückt" auch, allersings auf einer PC-Station mit WinCCflex RT. Jedoch bleibt das Bit in der RT solange gesetzt wie die Taste betätigt wird.Evtl ist es so wie Lipperlandstern schreibt, dass das Bit irgendwo im Programm überschriebn wird

mfg
 
Ich nutze die Funktion auch. Allerdings habe ich noch nie getestet, wie lange man da drücken kann. Eine zeitliche Begrenzung macht aber keinen Sinn :???:

Häng doch mal zum Test einen freien Merker mit an die Taste. Vmtl. wird das Tastenbit ja noch woanders genutzt.

Zu der Problematik mit der Hochlaufphase: Ich habe einen eigenen DB für die OP-Tasten. Dieser wird im 1. Zyklus der SPS 1x glattgebügelt. Da der "Fehler" nicht unbedingt reproduzierbar ist, kann ich nicht sicher sagen, ob das wirklich hilft. Probleme dieser Art hatte ich aber auch noch nie...
 
schau mal in den einstellungen des touchscreens. dort lässt dich das in der regel einstellen.
 
Zurück
Oben