LabVIEWForum.de - Benutzeraktionen abfragen

LabVIEWForum.de

Normale Version: Benutzeraktionen abfragen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

habe schon die Hilfe rauf und runter bemüht, weiß aber langsam nicht mehr nach was ich suchen soll.

Aufgabenstellung: Mein VI-Programm für eine Prüfmaschine soll nach einer einstellbaren Zeit (z.b. 10min) den Servomotor stromlos machen, wenn in dieser Zeit keine Benutzeraktionen erfolgt sind, also keine Tasten gedrückt wurden oder die Maus bewegt wurde. Entsprechend dem Bildschirmschoner in Windows, hier als Energiesparmodus gedacht.

Ich hätte das jetzt mit einer Eventstruktur mit entsprechend langem Timeout realisiert, aber den Timeout Event habe ich schon belegt mit anderen Aufgaben, die im 200ms Raster ablaufen.

Als letzte Möglichkeit sehe ich jetzt nur noch, ein Event für die Tastatureingaben zu machen, eins für die Mausbewegungen, bei jedem der beiden einen Timerwert (ms) auslesen und diesen dann im Timeout Event mit der aktuellen Zeit vergleichen und bei einem Wert > x ms das Bit für den Servomotor wegschalten.

Geht das auch komfortabler?


Vielen Dank und Gruß, SPS-Fuzzi
Versuchs mal mit dem VI "Auf Benutzeraktivität warten" (unter Dialog/Benutzeroberfläche) und dem VI "verstrichene Zeit"
Bei Benutzeraktivität muß dann das VI "Verstrichene Zeit" jedesmal rückgesetzt werden. (vielleicht kann man auch den Timeout von Benutzeraktivität verwenden und braucht dann das VI verstrichene Zeit gar nicht)
Das muß natürlich in einer parallelen Schleife laufen, damit das andere nicht blockiert wird.
Hallo,

ich bekomme es einfach nicht hin. Wenn das VI "Auf Benutzeraktivität warten" einen Ausgang hätte, der mir zeigt, dass es eine oder eben keine Aktivität gab, könnte ich damit den Zähler "Verstrichene Zeit" reseten. Gibt es aber leider nicht, nur den Timer-Wert. Bleibt also nichts übrig als Timer-Werte merken, subtrahieren und ab einer gewissen Differenz Aktionen starten?

SPS-Fuzzi
Ja, die Funktion "auf Benutzeraktivität warten" ist schon bescheuert. Habe mal ein kleines Beispiel gemacht, wie es gehen könnte. (Das VI wird beendet, wenn 10 sek lang nicht an dem Bedientaster herumgefummelt wird. Selbstverständlich könnte man das mit einem Taster als einziges Bedienelelement einfacher machen, aber der Taster steht hier stellvertretend für 100 weitere Elemente)
Allerdings wußte ich auf die Schnelle nicht, wie ich die untere Schleife stoppe und habe die Notbremse mit "Stop" gezogen. (Bitte nur anmeckern in Verbindung mit besserem Vorschlag)
[attachment=45063]
Hier ein alternativer Vorschlag:
[attachment=45064]
Sollte zur Programm-Struktur von SPS-Fuzzi passen, zumindest soweit er sie erläutert hat.
Referenz-URLs