30.06.2012, 17:17
Beitrag #1
|
Oliver84
LVF-Neueinsteiger
Beiträge: 4
Registriert seit: Jun 2012
2011
2012
DE
Deutschland
|
Bei true einen Wert um +1 addieren
Hallo allerseits,
ich versuche seit einiger Zeit folgendes Problem zu lösen:
Jedesmal wenn ein true signalisiert wird, soll sich eine vorher eingegebener Wert um +1 erhöhen, dh.
wenn ich einen startwert von 3 habe und ich den boolschen button drücke soll mir der Wert 4 ausgegeben werden. Wenn ich den button 3mal drücke entsprechend der Wert 6 ausgegeben werden, also sich pro klick um +1 erhöhen. Bei einem false signal soll der Wert nicht tangiert werden.
Vielen Dank und beste Grüße
Oli
|
|
|
30.06.2012, 21:29
Beitrag #2
|
|
|
01.07.2012, 15:38
Beitrag #3
|
Oliver84
LVF-Neueinsteiger
Beiträge: 4
Registriert seit: Jun 2012
2011
2012
DE
Deutschland
|
RE: Bei true einen Wert um +1 addieren
Hi NWO,
vielen Dank für deine Antwort. Habe mit der selben Struktur rumprobiert, nur versucht das Problem in einer for oder while Schleife zu lösen.
Habe eben deinen Vorschlag ausprobiert, komm aber auf das gleiche ergebniss wie bei den oben genannten schleifen.
Der eingegebene Wert ändert sich nur einmal, auch wenn ich den button öfter drücke.
Ich versuche beispielsweise einen wert von 2 vorzugeben und bei x betätigungen des boolschen schalters das ergebniss 2+x zu erhalten.
Ich arbeite mich erst seit 3 wochen in Labview ein, also bitte verzeih meine "noch" Unwissenheit.
Grüße,
Oli
|
|
|
01.07.2012, 18:15
(Dieser Beitrag wurde zuletzt bearbeitet: 01.07.2012 18:16 von Kiesch.)
Beitrag #5
|
|
|
02.07.2012, 12:21
(Dieser Beitrag wurde zuletzt bearbeitet: 02.07.2012 12:21 von Soean.)
Beitrag #6
|
|
|
02.07.2012, 12:58
Beitrag #7
|
Kiesch
LVF-Stammgast
Beiträge: 415
Registriert seit: Mar 2009
2019, 2018, 2016
2009
DE
04519
Deutschland
|
RE: Bei true einen Wert um +1 addieren
Der Unterschied zwischen beiden Varianten ist: Mit Event ziehst du genau so viel CPU Zeit wie nötig und die Steuerung funktioniert trotzdem so schnell wie möglich und beliebig genau (Event triggert immer dann einen Schleifendurchlauf wenn der Button gedrückt wird).
Bei der zweiten Variante musst du noch ein Wait einbauen da du sonst einen CPU Kern voll auslastest (ungebremste While Schleife). Je nachdem wie lang du das Wait wählst sinkt dabei die CPU last, allerdings könntest du bei einem zu kurzen Wait theoretisch Ereignisse verlieren (wenn du den Button schnell genug wieder aus klickst, bevor deine Schleife durchläuft).
Zitat:Märchen und Geschichten werden erzählt am Lagerfeuer, technischen Fakten werden mitgeteilt (oder so). (Genauso wie Software nicht auf einem Server "herumliegt", die ist dort installiert.)
*Zitat: IchSelbst*
|
|
|
02.07.2012, 13:48
Beitrag #8
|
|
|
02.07.2012, 14:21
Beitrag #9
|
Oliver84
LVF-Neueinsteiger
Beiträge: 4
Registriert seit: Jun 2012
2011
2012
DE
Deutschland
|
RE: Bei true einen Wert um +1 addieren
Erstmal vielen Dank für eure Hilfe und Beteiligung UND ja man kann als blutiger Anfänger doch etwas falsch machen ^^ ... aber Problem gelöst.
Ich hätte noch eine Frage rein aus Interesse: Ist es möglich die von NWO gepostete Ereignisschleife statt über ein boolsches Bedienelement, über ein boolsches anzeigeelement bzw nur über true signal zu starten?
beste Grüße und Dank,
Oli
|
|
|
02.07.2012, 14:30
|
Soean
LVF-Gelegenheitsschreiber
Beiträge: 140
Registriert seit: Sep 2010
2012
2009
EN
Deutschland
|
RE: Bei true einen Wert um +1 addieren
Ja, das geht auch: Erstelle eine Property Node des Elemntes, welches das Ereignis auslösen soll. Die PropertyNode, die du dafür verwenden musst, nennt sich Value (Signaling). Funktioniert nicht nur bei boolschen Elementen, sondern auch bei (allen?) anderen.
Achte darauf, dass du die Property-Node nicht jeden Zyklus schreibst, sondern wirklich nur bei einer Wertänderung, da diese u.U. zu Laufzeitproblemen führen können. (PropertyNodes erzwingen einen Wechsel in den "UI-Thread", das kann durchaus Rechenleistung fressen)
|
|
|
| |