SetzeBitWaehrendTasteGedrueckt ?

Burns848

Level-2
Beiträge
22
Reaktionspunkte
4
Zuviel Werbung?
-> Hier kostenlos registrieren
Habe bei einem OP177B das Problem das bei manchen Funktionstasten die Variable andauernt gesetzt bleibt mit der Funktion "SetzeBitWährendTasteGedrückt"
Es handelt sich um WinCC Flexible 2007 in der Standart edition
Hier ein Zitat aus der Hilfe :

Verwendung
Setzt ein Bit der angegebenen Variablen auf 1 (TRUE), solange der Benutzer die projektierte Taste gedrückt hält.
Die Systemfunktion überträgt nach der Änderung des angegebenen Bits die gesamte Variable wieder an die Steuerung. Es wird nicht geprüft, ob sich zwischenzeitlich andere Bits in der Variablen geändert haben. Bediener und Steuerung dürfen auf die angegebene Variable nur lesend zugreifen, bis die Variable wieder an die Steuerung übertragen wurde. Um Probleme mit sich zeitlich überschneidenden Zugriffen auf die selbe Variable zu vermeiden, sollten Sie mit dieser Funktion ausschließlich auf Variablen vom Typ BOOL zugreifen.

Hinweis Durch einen für eine Taste projektierten Bildwechsel werden alle Funktionen am Ereignis "Loslassen" sofort ausgeführt, auch wenn die Taste noch gedrückt ist.
Wenn bei einer Funktionstaste die Systemfunktion "SetzeBitWaehrendTasteGedrueckt" projektiert ist, wird sofort nach dem Ausführen des Bildwechsels das Bit zurückgesetzt. Dieses Verhalten ist notwendig, da sich die Tastenbelegung nach dem Bildwechsel ändert.
Verwenden Sie diese Systemfunktion nicht, wenn die Steuerung BOOL-Variablen unterstützt. Verwenden Sie statt dessen die Systemfunktion "SetzeBit".
Syntax
SetzeBitWaehrendTasteGedrueckt (Variable, Bit)
Im Skript verwendbar: nein
Parameter
Variable
Die Variable, in der ein Bit zeitweilig auf 1 (TRUE) gesetzt wird. Verwenden Sie, soweit dies die Steuerung zulässt, ausschließlich Variablen vom Typ BOOL.
Bit
Die Nummer des Bits, das zeitweilig auf 1 (TRUE) gesetzt wird.


Erst wird gesagt man soll wenn die Steuerung Bool Variablen unterstützt die funktion "SetzeBit" verwenden und weiter unten wird gesagt man soll die Funktion am besten nur mit Variablen des Types bool verwenden :confused:
Was ist denn jetzt richtig ?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
"SetzeBitWährendTasteGedrückt"

Hallo Burns848

Ich hatte auch schon Probleme mit den Tasten Bit's
und Programmiere nur noch "Setze Bit" wenn Taste gedrückt
und die gleiche Taste "Rücksetze Bit" (gleiches Bit) wenn Taste loslassen
damit habe ich nie mehr Probleme gehabt.

gruss Chris
 
"SetzeBitwaehrendTasteGedrückt" war eine Funktion welche eigentlich für Zeilen- und Grafikgeräte ala OP7/17 entwickelt wurde. Bei winbased Panel funktioniert die Funktion eigentlich kaum.
Nimm dafür am besten bei Drücken "setzeBit" und bei loslassen "RueksetzeBit"... sollte zuverlässiger gehen.
 
ich benutze SetzeBitWaehrendTasteGedrueckt mit TPs zig-fach und kann von keinerlei Schwierigkeiten damit berichten. Die Geräte haben diese Tasten aus Protool-Text-OP-Zeiten geerbt. Neue Panels, aber eben alte SPS-Programme, die diese Tasten benutzen.

Möglicher Weise habe ich aber deswegen keine Probleme, weil ich die Tasten in der Steuerung hinwiederum flankenauswerte. Weil ja schon immer das Problem bestand: geht das Panel aus (oder reisst die MPI-Verbindung ab), bleibt die in diesem Moment gedrückte Taste hängen.
 
Zurück
Oben