array jede 2. iteration rechts neben ein array einfügen - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +--- Thema: array jede 2. iteration rechts neben ein array einfügen (/Thread-array-jede-2-iteration-rechts-neben-ein-array-einfuegen) |
array jede 2. iteration rechts neben ein array einfügen - GrauerStar - 18.01.2006 11:28 Ich hab mal wieder ne Frage. =) Ich habe eine Aufgabe bei der zwei Arrays unterschiedlicher Länge zu einem Array zusammengefasst werden müssen, wobei kürzere Array immer rechts neben dem längeren erscheinen soll, und das auch noch geordnet. Also bspw.: Ich messe jede Sekunde Ströme und nach jeder 2. Sekunde Spannungen. Dadurch ergeben sich natürlich Messwertarrays unterschiedlicher Länge. Aus diesen soll jetzt eine Tabelle entstehen, wobei die Ströme rechts neben der Zeit-Spalte, und die Spannungen dann dort rechts daneben, jeweils den Zeiten richtig zugeordnet, erscheinen sollen. Dabei soll eine Tabelle nach folgendem Schema entstehen: t | I | U ----------------------------------------- 0,1 1 2 3 4 1,5 2,5 3,5 4,5 0,2 1 2 3 4 0,3 1 2 3 4 1,5 2,5 3,5 4,5 0,4 1 2 3 4 usw., sofern Spannungen und Ströme konstant bleiben. Hierfür habe ich versucht ein kleines Bsp.programm zu erstellen, welches aber nicht funktioniert. Vielleicht kann sich jemand dieses Programm ansehen, und mir bitte sagen, wo der Fehler liegt? Vielen Dank Grüße array jede 2. iteration rechts neben ein array einfügen - Svente - 18.01.2006 14:00 Hallo Grauer Star, kannst Du noch mal detailierter beschreiben welche meßwerte an welcher Stelle stehen sollen? (oder im Vi zuordnungen vergeben..) Vieleicht fällt mir dann etwas ein. Sven array jede 2. iteration rechts neben ein array einfügen - GrauerStar - 18.01.2006 14:34 Hallo Sven, ja also im VI werden zwei Arrays verwendet. Das eine Array hat Strommesswerte mit den Inhalten 1;2;3;4;5;6;7;8 die ich der Einfachheit halber hier konstant halte. Dieses Array wird nach jeder Iteration an sich selbst gehängt, so dass sich am Ende eine Tabelle mit Strömen ergibt, so der Normalfall. Nun soll aber das andere Array welches hier wieder konstante Werte (Spannung) von 1,5;2,5;3,5;4,5;5,5;6,5;7,5;8,5 hat nach jeder zweiten Iteration auch noch hinzu kommen. Somit ergibt sich für jede ungerade Iteration für die gewünschte Tabelle ein Zuwachs von einer Reihe mit folgenden Werten 1;2;3;4;5;6;7;8; und für jede gerade Iteration ein Zuwachs von einer Reihe mit diesen Werten 1;2;3;4;5;6;7;8;1,5;2,5;3,5;4,5;5,5;6,5;7,5;8,5. Das Problem, das ich nun habe ist, es erst einmal so hinzubekommen, dass die Tabelle also nach 5 Iterationen so aussieht: 1; 2; 3; 4; 5; 6; 7; 8; 1; 2; 3; 4; 5; 6; 7; 8; 1,5; 2,5; 3,5; 4,5; 5,5; 6,5; 7,5; 8,5 1; 2; 3; 4; 5; 6; 7; 8; 1; 2; 3; 4; 5; 6; 7; 8; 1,5; 2,5; 3,5; 4,5; 5,5; 6,5; 7,5; 8,5. 1; 2; 3; 4; 5; 6; 7; 8; Die Zuordnung zu den Zeiten zu gestalten, so dass bspw nicht jede 2. Iteration die Spannungen (,5-Werte) hinzukommen, sondern erst jede 5., 6. oder sonstige Iteration, ist dann der nächste Schritt. Diesen habe ich in VI noch nicht weiter betrachtet. Zum Schluss soll dann das gesamte Array in eine Excel-Datei geschrieben werden. Das ist auch der Grund der Anstrengung. Ziel ist es, nicht zwei getrennte Dateien für Spannungs- und Strommesswerte zu erstellen, sondern eine einzige, in der beides vorhanden ist. Vielen Dank für deine Mühe, es wäre schön wenn sich eine Lösung finden würde, Grüße array jede 2. iteration rechts neben ein array einfügen - Svente - 18.01.2006 14:57 Hallo Grauer Star, habe da mal schnell was zusammengepfiemelt. Hoffe das hilft Dir weiter. Sven array jede 2. iteration rechts neben ein array einfügen - GrauerStar - 18.01.2006 15:11 Danke, genau so wollte ich das =) Wenn es nun noch gelingt, statt Nullen zu schreiben, die entsprechenden Felder leer zu lassen, dann ist's perfekt. Denn ungewollte Nullen verfälschen natürlich das Messergebnis. Grüße array jede 2. iteration rechts neben ein array einfügen - Svente - 18.01.2006 15:51 Nun kommt es darauf an was Du mit den Daten vorhast. Willst Du zuerst die Daten auswerten und dann wegspeichern (in Excel lesbarem Format) oder erst im Nachgang mit anderer Software auswerten. (oder gar wieder einlesen?) Erwartest Du relevante Meßwerte mit dem Wert "0" ? Könnte man nämlich in einer Auswertung außen vorlassen. Sven array jede 2. iteration rechts neben ein array einfügen - GrauerStar - 18.01.2006 16:21 Nun, was habe ich mit den Daten vor... Das ist etwas kompliziert. Ich messe von bis zu 100 Dioden jeweils Strom und Spannungswerte, dabei Spannungen in größeren Zeitabständen wie Ströme. Die Daten sollen in LV nur graphisch dargestellt und gespeichert werden, um nachher im Excel-Format xls zur Archivierung (und u.U. erneuter Erstellung von Graphen) zur Verfügung zu stehen. Normaler Weise messe ich keine Nullwerte, aber wenn eine Diode ausfällt, soll dies u.a. durch Auftreten eines Nullwerts erkannt werden. Das nachträgliche Filtern der Nullwerte ist mir auch schon eingefallen. Jedoch besteht meiner Ansicht nach hierbei die Gefahr, dass die Daten durcheinander geraten und nicht mehr jeder der bis zu 100 Dioden explizit zugeordnet werden können. Grüße array jede 2. iteration rechts neben ein array einfügen - Svente - 18.01.2006 16:33 Hallo GrauerStar, dann würde ich der Einfachheit halber vorschlagen, die Werte nicht einander zuzuordnen. Das erspart Dir einiges, da LV die leeren Zellen immer mit Nullen auffüllt. Sobald Du aber die Sachen getrennt auswertest läuft alles viel einfacher. Sven array jede 2. iteration rechts neben ein array einfügen - GrauerStar - 18.01.2006 16:44 Ja dann werde ich das so machen. Ich wollte zwar die Erstellung von zwei xls-Dateien pro Messboard vermeiden, da bei bis zu 10 Messboards dann immerhin 20 Dateien und eine Logging Datei entsteht und das für den Benutzer etwas unhandlich werden könnte. Aber letztendlich ist das vielleicht wirklich die für mich einfachste Variante. Ich danke dir nochmals für deine Hilfe. Grüße |