' schrieb:<div align="left">
Ich bin kein Programmierer, aber mein Projekt ist wirklich riesig.
</div>
Ein riesiges Projekt ist genau der Fall, der eigentlich einen Programmierer erfordert. Da ist es eben nicht mehr mit 'einfach drauflos programmieren' getan. Zumindest solltest Du einen 'Programmierer Deines Vertrauens' zu Rate ziehen (o.k., mit Deiner Frage an das Forum hast Du das ja auch irgendwie getan).
' schrieb:<div align="left">
Welche Möglichkeiten hätte ich denn bei diesem Aufbau des Programms noch gehabt, auf Variablen zu verzichten? Denn ich kenne leider nur diese Methode um von einer While-Schliefe in die andere mittels Varibalen Werte zu übergeben.
Welche Möglichkeiten gibt es Werte von einer Do-While-Schleife in eine anderen zu übergeben, ohne Varibalen zu benutzen?
</div>
<div align="left">
Die best geeignete Möglichkeit sind Queues. Das Beispiel-VI "<LabVIEW>examplesgeneralqueue.llbQueue Multiplexer.vi" zeigt einen Anwendungsfall, der Deinem vielleicht nahe kommt.
Weitere Möglichkeiten sind
- sogenannte LV2-style globals. Im Prinzip wird dabei ein Schieberegister in einer subVI als Datepuffer genutzt. Eine uralte aber extrem flexible Methode.
- normale globale Variablen
- Ab LV8: shared variables (Umgebungsvariablen in der deutschen LV Version).
All diese Methoden können auch über subVI-Grenzen hinaus kommunizieren, und die shared variable in einem Netzwerk sogar über Rechnergrenzen. Das wirst Du auch brauchen, denn mit nur einer VI kannst due ein 'riesiges' Projekt eh nicht bewältigen (siehe unten).
Welche Methode Du auch nutzt, Du solltest auf jeden Fall überlegen, ob Deine Daten, z.B. in Clustern, sinnvoll zusammengefasst werden können. Eine sinnvoll konzipierte Datenstruktur ist oft schon mehr als die Hälfte der Problemlösung!
Des weiteren: es hört sich so an, als würdest Du die verschiedenen Prüflinge in Deinem Programm alle dadurch bedienen, dass Du jeweils die entsprechende Schleife in einem Diagramm kopierst (da Du ja von lokalen Vars sprichst). Sinnvoll wäre aber hier eine subVI, die Du dann halt für jeden Prüfling (eventuell dynamisch) aufrufst. Dann wärst Du aber mit locals eh am Ende. Queues gehen dann aber immer noch.
Wenn Du noch relativ neu in LabVIEW bist, wird Dir einiges von dem Gesagten spanisch vorkommen.
Das ist normal, frag einfach weiter hier im Forum nach, ein Spanisch-Übersetzer findet sich immer.
-Franz
</div>