Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
16.04.2012, 13:20 (Dieser Beitrag wurde zuletzt bearbeitet: 16.04.2012 13:21 von Moeseph.)
Ich habe eine kleine Frage technischer Art. Sehr vereinfacht ausgedrückt habe ich ein VI, in dem der Status eines Boolean abgefragt wird. An anderer Stelle wird der Wert dieses Booleans im Rahmen einer While Schleife weiterverwendet. Und zwar nicht einmal, sondern an verschiedenen Stellen parallel. Ich möchte dazu eine lokale Varibale benutzen. Meine Frage ist, ob es einen Unterschied macht, ob ich einmal die lokale Varibale zum entsprechenden Boolean verwende und alles mit dieser einen Variable verdrahte, oder ob ich die lokale Varibale für eine bessere Übersichtlichkeit im VI so oft ich sie brauche vervielfältige und einzeln verdrahte.
Im Anhang ist ein stark vereinfachtes Bild davon, was ich ich meine. Sollte man das exzessive Benutzen einer lokalen Varibale vermeiden, oder spielt es keine Rolle, wie man hier programmiert?
Im richtigen VI habe ich natürlich keinen unverbundenen Schalter, sondern es handelt sich um einen Indicator, der den mechanischen Status eines Ventils einer Apparatur anzeigt. In dem Beispielbild habe ich es nur ganz einfach dargestellt.
Der Punkt ist halt, dass ich insgesamt gut 20 Ventile abfragen muss und deren Stellungen weiterverarbeiten muss. Wenn ich dann von dort aus wild durchs VI verdrahte, wird man wahrscheinlich am Ende nicht mehr erkennen können, welcher Draht nun zu welchem Ventil gehört.
Aber wenn man lokale Variablen möglichst vermeiden sollte, dann werde ich sie auf ein Minimum reduzieren. Denn letztlich ist mir ein einwandfrei funktionierendes Programm wichter, als ein kosmetisch perfekt verständliches Programm.
16.04.2012, 15:05 (Dieser Beitrag wurde zuletzt bearbeitet: 16.04.2012 15:08 von GerdW.)
Zitat:Denn letztlich ist mir ein einwandfrei funktionierendes Programm wichter, als ein kosmetisch perfekt verständliches Programm.
Wenn du beides haben willst (Form und Funktion), dann bündel die "Ventile" aka booleans entweder in Arrays oder Cluster...
Zitat:keinen unverbundenen Schalter, sondern es handelt sich um einen Indicator, der den mechanischen Status eines Ventils einer Apparatur anzeigt.
Ein Indicator zeigt nur den Wert von einem Draht an.
Du brauchst also keine Kopie dieses Indicators, sondern einen Abzweig deines Drahtes! THINK DATAFLOW!
wenn die 20 Ventile immer ähnlich abgefragt werden, bietet es sich ggf. an, einen Cluster zu erstellen. Wenn man das mit benannten Elementen macht, hat man auch sofort eine nicht allzu platzfressende Dokumentation, aber nur einen Draht durch's VI...
Man darf sie benutzen:
- wenn man sicherstellt, dass keine RaceConditions auftreten können
- wenn man sicherstellt, dass durch die Speicherkopien kein "out of memory" auftreten kann
- wenn man z.B. Controls mit neuen Werte beschreiben will
- es gibt viele Threads zum Thema "lokale Variablen", die du auch noch lesen könntest...