![]() |
while-schleife - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +--- Thema: while-schleife (/Thread-while-schleife--15457) |
while-schleife - Azmodan - 16.06.2006 10:01 Die Funktionen im zweiten Bild (deine Bildnamen werden übrigens nicht mit angezeigt hier im Forum, also muss ich mal raten, was "test2" ist) findest du in der Funktionen-Palette "Datei-I/O". So ist das zumindest in Version 8. Bei früheren Versionen kann die Einteilung leicht abweichen. Gruß, Niko P.S.: Ich schau mal, ob ich dir da schnell einen Lösungsansatz zusammenfummeln kann, Moment... while-schleife - blitzgeist - 16.06.2006 10:03 danke ich schaue parallel dazu... while-schleife - Azmodan - 16.06.2006 10:08 Sodele... Ich hoffe mal, das Beispiel hier gibt dir einen Anhaltspunkt. Gruß, Niko [attachment=2351] while-schleife - blitzgeist - 16.06.2006 12:11 hi nico, also ich habe herumprobiert und komme zu folgendem (leider noch nicht funktionierendem) ergebnis ich schaffe es nicht, mein array an die schreib-case anweisung anzubinen... wie ist das zu realisieren? danke für anregungen Timo while-schleife - Kvasir - 16.06.2006 12:29 Prinzipiell musst du einfach den Array dort hingeben, wo du nun "Hallo" stehen hast. Du schaltest dann die Indizierung an (offene Klammern beim Array Eingang in die For Schleife - rechte Maustaste auf Eingang - Indizierung aktivieren), und entfernst die Angabe für die Anzahl der Schleifendurchläufe. Dadurch läuft die For Schleife automatisch so oft durch, wie dein Array lang ist und schreibt die einzelnen Elemente in die Datei. while-schleife - Azmodan - 16.06.2006 12:42 ' schrieb:Dadurch läuft die For Schleife automatisch so oft durch, wie dein Array lang ist und schreibt die einzelnen Elemente in die Datei.@Kvasir: Das stimmt so meines Wissens nach nicht ganz. Wie in meinem obigen Beispiel zu sehen, empfiehlt es sich mittels "Array-Größe" die Länge/Größe des Arrays zu bestimmen und diese dann direkt an 'N' anzubinden. So, wie es jetzt ist, wird die Schleife immer 10 mal durchlaufen. @Timo: Und um dein Array aus einer verschachtelten Struktur in eine andere verschachtelte Struktur zu übergeben, bietet sich wirklich eine lokale Variable an: Füge am Array-Ausgang deiner WHILE-Schleife ein Anzeigeelement an, füge im CASE (aber ausserhalb der FOR-Schleife) eine lokale Variable hinzu und binde diese mittels Anklicken und Auswählen an dein Array-Anzeigeelement. Dann änderst du die Variable wenn nötig von "Schreiben" in "Lesen" und verbindest sie durch einen autoindizierten Tunnel mit "In Textdatei schreiben". Fertig. ![]() Gruß, Niko while-schleife - Kvasir - 16.06.2006 12:47 ' schrieb:Das stimmt so nicht ganz. Wie in meinem obigen Beispiel zu sehen, empfiehlt es sich mittels "Array-Größe" die Länge/Größe des Array zu bestimmen und diese dann direkt an 'N' anzubinden. So, wie es jetzt ist, wird die Schleife immer 10 mal durchlaufen. Das stimmt so auch nicht ganz. Deine zusätzliche Angabe der Schleifendurchläufe mittels Arraysize ist zwar nicht falsch, aber vollkommen unnötig. LV errechnet sich bei eingeschaltener Indizierung die Anzahl der Durchläufe selbst. Eine Konstante anzugeben ist schlecht, da du damit nur Arrays fixer Länge bearbeiten kannst. Gibst du die Länge, wie Niko mittels Arraysize vor, bleibst du dynamisch. Lässt du LV das ganze machen hast du denselben Effekt und sparst dir eine Funktion while-schleife - Azmodan - 16.06.2006 12:53 ' schrieb:LV errechnet sich bei eingeschaltener Indizierung die Anzahl der Durchläufe selbst.Ok, schon wieder was dazugelernt. Danke für die Erläuterungen; ich war mir da etwas unsicher, da ich erst seit März mit LabVIEW programmiere... ![]() Gruß, Niko while-schleife - blitzgeist - 16.06.2006 15:53 jetzt sieht das ganze so aus, nur folgende fehlermeldung tritt ein: Mögliche Gründe: LabVIEW: Ein Ausgabeparameter ist ungültig. --- NI-488: Befehl erfordert, daß der GPIB-Regler der aktive Regler ist. ...und die datei ist leer... ps. welche einstellung muss ich tätigen, um (wenn ich endlich die messwerte in einer datei stehen habe, kann noch ein wenig dauern =)) einen zeilenumsprung nach jedem messwert zu erzwingen? while-schleife - Kvasir - 16.06.2006 16:40 Zu dem Fehler kann ich dir leider nichts sagen. Hast du vielleicht die Möglichkeit dein Vi hochzuladen? Zeilenumsprung kannst du hinzufügen, indem du einfach per "String zusammenführen" (concentate strings) noch eine "End of Line" Konstante hinzufügst. Grüße |