Boolsches Element - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +--- Thema: Boolsches Element (/Thread-Boolsches-Element) Seiten: 1 2 |
Boolsches Element - tosi - 04.07.2005 10:25 Hallo zusammen, kann mir jemand sagen, wie ich das Drücken auf ein Boolsches Element simulieren kann? Allerdings: Das Schaltverhalten sollte "Latch, wenn gedrückt" sein! Also zurücksetzen, wenn der Schalter von LabVIEW ausgelesen wurde. Über einen Eigenschaftsknoten läßt sich das bei einem normalen Schalter ja einfach machen, indem ich an einer beliebigen Stelle in meinem Programm den Wert auf 0 bzw. 1 setze. Bei einer gelatchten Aktion geht das nicht, oder? Gibts da ne "einfache" Möglichkeit, oder muß ich des zu Fuß hinbasteln? Gruß, Tosi Boolsches Element - Buhrz - 04.07.2005 14:12 Hi Ich Versuch mal deine Frage zu beantworten Also wenn du den Schalter als Latch defenierst kannst du ihn nicht wieder so einfach beschreiben da dann der datentype varriant ist. Also defenierst du den Taster kannst normal als Schalter und wenn dann dein Programm an die Stelle kommt wo der schalter abgefragt wird setzt du ihn wieder zurück. dieses kannst du mit eine property node tun oder wenn es in einem SubVI ist nimmst du eine Reference auf den Taster. So ich habe fertig Ich hoffe es hilft dir ein wenig, wenn nicht kannst du ja ein VI hochladen Gruß Jürgen Boolsches Element - tosi - 04.07.2005 14:21 Danke für deine Antwort. Okay dann bleibt mir wohl nichts anderes übrig, als es so zu machen. Ich glaube, das bekomme ich hin...sonst meld ich mich wieder. Gruß, Tosi Boolsches Element - tosi - 04.07.2005 16:38 Na es wär ja auch zu schön gewesen. Vielleicht kannst du mir doch nochmal helfen: Ich tu mich grad schwer, ein lauffähiges Beispiel zu basteln...aber vielleicht gehts ja schon mit diesem Fragment. Also es sollte so funktionieren, als wenn das Verhalten der Schaltfläche "Latch wenn gedrückt" wäre. D.h. innerhalb des SubVIs "Koeff. der Exp.anpassung" sollte die Schaltfläche zurückgesetzt werden, sobald der Schalter von LabVIEW ausgelesen wurde. Dann könnte ich den Schalter an einer beliebigen Stelle meines Programms mit einem normalen Eigenschaftsknoten wieder setzen und so weiter... Danke und Gruß, Tosi Boolsches Element - Buhrz - 05.07.2005 07:49 Hi tosi Habe dein Beispiel ein wenig erweitert so wie ich es verstehe Gruß Jürgen Boolsches Element - tosi - 05.07.2005 09:20 Hi Jürgen, danke für die Erweiterung, aber ich glaube es ist nicht das, was ich brauche (oder ich checks nicht). Das VI "Koeffizienten der Exponentialanpassung.vi" ist quasi das SubVI (also nicht die Sequenz, die du aussenrum gemacht hast). Und in diesem möchte ich den Schalter wieder zurücksetzen. In diesem VI gibt es einen Init-Case der ausgeführt wird, wenn init true ist. Ich will danach aber nicht den Schalter von Hand auf false schalten, sondern er soll auf false schalten, wenn die Initialisierung durchgeführt wurde (eben: mit einem Schalter mit Latchfunktion geht das, nur kann ich den ja nicht - wie du auch sagtest - an einer anderen Stelle im Ablauf wieder auf true setzen). Ich müßte doch dazu das mitgelieferte VI "Koeffizienten der Exponentialanpassung.vi" ändern und als neues SubVI abspeichern? Ist das zu umständlich? Freundliche Grüße, Tosi Boolsches Element - Buhrz - 05.07.2005 11:17 Hi tosi Um es für mich klar zu haben Soll das Koeffizienten der Exponentialanpassung.vi in deinem Programm mehrmal zurückgesetzt werden oder nur einmal beim Programm start ?? Da indem VI eine Funktion(First Call ?) enthalten ist die das VI automatisch beim ersten mal initialisiert. Andere Möglichkeit Wenn das VI in einer whileschleife läuft könntest du den schleifenzähler auf null abfragen und damit beim ersten durchlauf das VI initialisieren Oder du speichers das VI unter einen neuen Namen ab und baust es in das VI ein. Boolsches Element - tosi - 05.07.2005 12:18 Hi Jürgen, es soll mehrmals zurückgesetzt werden. Vielleicht ein kleiner Ablauf: Meine Applikation(Datenerfassung/Messungen) läuft -> ein betimmtes Ereignis tritt ein und ich springe in einen Case, in dem das besagte VI ausgeführt wird -> mit den Historie Daten wird z.B. ein Graph gezeichnet -> ich springe wieder raus und meine Applikation läuft weiter -> nächtes Ereignis und die Geschichte beginnt von vorne. Also wenn ich den Schleifenzähler auf Null abfragen will, dann muß das doch intern in dem VI Koeffizienten der Exponentialanpassung.vi geschehen, oder? Habs grad probiert aber er meckert, dass Verbindung Teil eines Kreises ist. Was mach ich denn jetzt schon wieder falsch? Gruß, Tosi Boolsches Element - tosi - 05.07.2005 12:28 Hmmm...wird der Schleifenzähler überhaupt Null, nur wenn ich aus dem Case springe? Boolsches Element - Buhrz - 05.07.2005 12:32 OK Noch ein paar fragen Wenn dein Ereignis eintritt möchtest du das VI neu initalisieren ??? Die Koeffizient willst du sie immer berechnen lassen ??? Die wihleschleife müßte um das VI sein Ich hoffe wir nähern uns an Gruß Jürgen PS Bitte füll doch in deinem Profil zzumindesten die verwendete LabVIEW Version und vielleicht noch wo du herr kommst ich denke diese daten sind nicht so geheim oder ??? |