| 
	
		
			| 
					30.11.2009, 08:37  
				  Beitrag #1 |  
			| 
					
                                                 | dualsbiker
   LVF-Gelegenheitsschreiber
 
   
 
 Beiträge: 115
 Registriert seit: Sep 2009
 
 8.6 & 2010
 2009
 DE_EN
 
 15745
 Deutschland
 
 | Kniffliges Schalterproblem 
					Hallo alle beisammen,
 ich habe folgendes Problem:
 
 In meinem Programm werden über Schalter Befehle an ein Netzteil gesendet (RS232). Ein anderer Befehl der regelmäßig gesendet wird fragt den Zustand des Netzteils ab. Ich habe 5 Schalter (Befehle). Einer heißt PUP, damit schalte ich alle 4 Kanäle auf einmal an. Dann habe ich noch 4 Schalter um die 4 Kanäle einzeln anzuschalten.
 Nun mein Problem; wenn ich den PUP-Befehl gesendet habe, sind alle Kanäle an, aber die Schalter für die einzelnen Kanäle stehen noch auf Off. Wenn ich nun einen Kanal einzeln ausstellen möchte, muss ich zu erst den Schalter auf On stellen um ihn im Anschluss wieder auf Off stellen zu können.
 Genauso andersrum, wenn ich alle 4 Kanäle einzeln angeschalten habe, befindet der PUP-Schalter in der Off-Stellung.
 
 Was gibt es für Möglichkeiten dieses Problem zu lösen ?
 
				
				 |  |  
			|  |  
	
		
			| 
					30.11.2009, 08:56  
				  Beitrag #2 |  
			| 
					
                                                 |   dimitri84
   Astronaut
 
      
 
 Beiträge: 1.496
 Registriert seit: Aug 2009
 
 2020 Developer Suite
 2009
 DE_EN
 
 53562
 Deutschland
 
 | Kniffliges Schalterproblem 
					Wenn du das VI hochlädst können dir kompentente Leute bestimmt eine bessere Lösung vorschlagen. ' schrieb:wenn ich den PUP-Befehl gesendet habe, sind alle Kanäle an, aber die Schalter für die einzelnen Kanäle stehen noch auf Off. 
... also wenn der PUP-Schalter ein Case bedient, dann setz doch da drin einfach die anderen Schalter per Proberty auf on.
 Zitat:wenn ich alle 4 Kanäle einzeln angeschalten habe, befindet der PUP-Schalter in der Off-Stellung. 
auch einfach ein Case einrichten mit der Bedingung "wenn alle 4 Kanäle auf on" (logisches UND), und dann da drin den PUP-Schalter per Proberty Node auf on.
				
 
„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius) 
				
				 |  |  
			|  |  
	
		
			| 
					30.11.2009, 09:02  
				  Beitrag #3 |  
			| 
					
                                                 |   jg
   CLA & CLED
 
   
 Beiträge: 15.864
 Registriert seit: Jun 2005
 
 20xx / 8.x
 1999
 EN
 
 Franken...
 Deutschland
 
 | Kniffliges Schalterproblem 
					Der Vorschlag von dimitri84 hört sich gut an. Würde bloß statt PropertyNodes lokale Variablen empfehlen.
 Gruß, Jens
 
 
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)!! BITTE !!  stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
 
Einführende Links zu LabVIEW, s. GerdWs Signatur . 
				
				 |  |  
			|  |  
	
		
			| 
					30.11.2009, 09:03  
				  Beitrag #4 |  
			|  |  
			|  |  
	
		
			| 
					30.11.2009, 09:17  
				  Beitrag #5 |  
			|  |  
			|  |  
	
		
			| 
					30.11.2009, 09:27  (Dieser Beitrag wurde zuletzt bearbeitet: 30.11.2009 09:28  von jg.) Beitrag #6 |  
			| 
					
                                                 |   jg
   CLA & CLED
 
   
 Beiträge: 15.864
 Registriert seit: Jun 2005
 
 20xx / 8.x
 1999
 EN
 
 Franken...
 Deutschland
 
 | Kniffliges Schalterproblem 
					' schrieb:Was ist der Unterschied? Ist es grundsätzlich besser Lokale Variablen zu nehmen, wenn es um die Proberty 'Value' geht? 
Im Prinzip ja... 
Property-Nodes sind 1. langsam, und 2. erzwingen bei jeder Instanz ein UI-Update. 
Wenn du natürlich mehrere Eigenschaften in einer Node auf einmal aktualisierst, kann man auch noch "Value" gleich mit setzen.
 
Die Regel lautet aus Performance-Gründen also. 
Erst Terminal, dann lokale Variable, und dann erst Property-Node.
 
@dualsbiker:  
Du hast doch schon den TimeOut-Case in deiner Event-Struktur, da machst du das Setzen des PUP-Schalters. 
Eines verstehe ich nicht so richtig? Wieso verwendest du "Mouse-Down"-Events, um das Schalten eines Taster/Schalters in der Event-Struktur abzufangen? Ein Value-Change-Event sollte da vollkommen ausreichen.
 
Gruß, Jens
				 
 
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)!! BITTE !!  stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
 
Einführende Links zu LabVIEW, s. GerdWs Signatur . 
				
				 |  
    |  
			|  |  
	
		
			| 
					30.11.2009, 09:32  (Dieser Beitrag wurde zuletzt bearbeitet: 30.11.2009 09:33  von dualsbiker.) Beitrag #7 |  
			| 
					
                                                 | dualsbiker
   LVF-Gelegenheitsschreiber
 
   
 
 Beiträge: 115
 Registriert seit: Sep 2009
 
 8.6 & 2010
 2009
 DE_EN
 
 15745
 Deutschland
 
 | Kniffliges Schalterproblem 
					wenn ich die "Wertänderung" nehme, dann reagiert er auf das Drücken der Maus und dann noch einmal auf das Loslassen der Maus, frag mich nicht wieso, aber ist so,ich nehme das Drücken der Maustaste, da es von der Bedienung einfacher ist, bei dem Event Maustaste losgelassen reagiert er nur wenn die Maus über dem Schalter losgelassen wird, das macht sich echt blöde.
 
 Achja, wie soll ich das machen, mit dem Timeout ?
 
				
				 |  |  
			|  |  
	
		
			| 
					30.11.2009, 09:33  
				  Beitrag #8 |  
			| 
					
                                                 |   Lucki
   Tech.Exp.2.Klasse
 
   
 Beiträge: 7.699
 Registriert seit: Mar 2006
 
 LV 2016-18 prof.
 1995
 DE
 
 01108
 Deutschland
 
 | Kniffliges Schalterproblem 
					' schrieb:Was ist der Unterschied? Ist es grundsätzlich besser Lokale Variablen zu nehmen, wenn es um die Proberty 'Value' geht? 
Der Property Varlue Wert ist ca. 200 mal langsamener als die lokale Veraiable. Also die Property "Wert" nur nehmen, wenn entweder der Property Node wegen anderer Eigenschaften sowieso aufgerufen wird, oder in Verbindung mit Referenzen, wo es nicht anders geht.
				 
				
				 |  |  
			|  |  
	
		
			| 
					30.11.2009, 09:52  (Dieser Beitrag wurde zuletzt bearbeitet: 30.11.2009 09:53  von jg.) Beitrag #9 |  
			| 
					
                                                 |   jg
   CLA & CLED
 
   
 Beiträge: 15.864
 Registriert seit: Jun 2005
 
 20xx / 8.x
 1999
 EN
 
 Franken...
 Deutschland
 
 | Kniffliges Schalterproblem 
					' schrieb:wenn ich die "Wertänderung" nehme, dann reagiert er auf das Drücken der Maus und dann noch einmal auf das Loslassen der Maus, frag mich nicht wieso, aber ist so,ich nehme das Drücken der Maustaste, da es von der Bedienung einfacher ist, bei dem Event Maustaste losgelassen reagiert er nur wenn die Maus über dem Schalter losgelassen wird, das macht sich echt blöde.
 
Das kommt von deinem Schaltverhalten, "Switch Until Released", das löst 2 Value-Change-Events aus. Wenn du "Latch when Released" oder "Switch when Pressed" nimmst (das sind die beiden "Standard"-Schaltverhalten), dann hast du das Problem nicht.
 ' schrieb:Achja, wie soll ich das machen, mit dem Timeout ? 
Naja, das hat dimitri84 doch beschrieben. Im Timeout-Case liest du deine 4 anderen Schalter per lokaler Variablen aus, dann kommt ein logisches Und oder Oder dahinter (je nachdem, ob dein PUP-Schalter erst bei allen 4 Schaltern auf HIGH sein soll, oder schon bei einem), und dann setzt du den PUP-Schalter. 
Sollte eigentlich so gehen.
 
Gruß, Jens
 
P.S.: Noch eleganter wird es, wenn du den Status deiner Schalter in einem Schieberegister speicherst, dann kannst du dir eine Menge lokale Variable sparen.
				 
 
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)!! BITTE !!  stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
 
Einführende Links zu LabVIEW, s. GerdWs Signatur . 
				
				 |  
    |  
			|  |  
	
		
			| 
					30.11.2009, 10:18  
				 |  
			| 
					
                                                 | dualsbiker
   LVF-Gelegenheitsschreiber
 
   
 
 Beiträge: 115
 Registriert seit: Sep 2009
 
 8.6 & 2010
 2009
 DE_EN
 
 15745
 Deutschland
 
 | Kniffliges Schalterproblem 
					wow, das geht, super danke.mensch das war ja einfach
 
				
				 |  |  
			|  |  |  |