09.07.2008, 12:48
Seiten: 1 2
09.07.2008, 13:37
Hi,
vielleicht ist die Case-Struktur eine falsche Lösung. Hat vielleciht jemand einen anderen Vorschlag wie man das dynamisch gestalten kann.
Mir geht es eigentlich darum, dass ich Variablen, die aus dem Gerät kommen, ordnen kann.
Die Verarbeitung dieser Variablen ist dann ja eine andere Sache.
Gruß Joe
vielleicht ist die Case-Struktur eine falsche Lösung. Hat vielleciht jemand einen anderen Vorschlag wie man das dynamisch gestalten kann.
Mir geht es eigentlich darum, dass ich Variablen, die aus dem Gerät kommen, ordnen kann.
Die Verarbeitung dieser Variablen ist dann ja eine andere Sache.
Gruß Joe
09.07.2008, 14:07
' schrieb:Hat vielleciht jemand einen anderen Vorschlag wie man das dynamisch gestalten kann.Klar geht das.
Mir geht es eigentlich darum, dass ich Variablen, die aus dem Gerät kommen, ordnen kann. <- Und genau da liegt mein Problem es eben dynamisch zu gestalten. Es muss doch irgendwie möglich sein, dass ich in einer externen Liste die Variablen(384, 385,...) festlege und diese dann in meinem Hauptprogramm nach der Liste ordnen kann.
Mach ein Array of Cluster of (Kennung, Data). Die Kennung ist dabei der Variablenname (384 etc). Data (respektive wieder ein Cluster, eben je nach Anforderungen) sind dabei die Daten, die zur Kennung gehören. Das Verfahren ist praktisch ein serielles. Je nach Vorgabe in der externen Liste kannst du mehr oder weniger Array-Elemente angelegen. Willst du Daten ändern, musst du zuerst den richtigen Index suchen (dafür ist Softwareaufwand notwendig, der aber von LV unterstützt wird) und dann über diesen Index das Array ändern.
10.07.2008, 13:25
' schrieb:Klar geht das.
Mach ein Array of Cluster of (Kennung, Data). Die Kennung ist dabei der Variablenname (384 etc). Data (respektive wieder ein Cluster, eben je nach Anforderungen) sind dabei die Daten, die zur Kennung gehören. Das Verfahren ist praktisch ein serielles. Je nach Vorgabe in der externen Liste kannst du mehr oder weniger Array-Elemente angelegen. Willst du Daten ändern, musst du zuerst den richtigen Index suchen (dafür ist Softwareaufwand notwendig, der aber von LV unterstützt wird) und dann über diesen Index das Array ändern.
Hi,
also ich bin jetzt soweit, dass ich ein Cluster mit (Kennung, Data) habe. In diesem Cluster sind auch nur die Werte, die ich in meiner vroherigen Liste ausgewählt habe. So, nun will ich das irgendwie selektieren, aber wie?
Bsp:
ClusterArray{(384, Data1), (385, Data1), (384, Data2), (385, Data2), (384, Data3), (385, Data3), (384, Data4), (385, Data4)}
Nun muss ich irgendwie n (n= die Anzahl der verschiedenen IDs) Arrays erzeugen, und die Werte dort einfach hineinschreiben.
Ergebnis:
Array1{(384, Data1), (384, Data2), (384, Data3), (384, Data4)}
Array2{(385, Data1), (385, Data2), (385, Data3), (385, Data4)}
Ich denke, es wäre sogar besser ein 3D-Array zu erstellen, welcher die 2 Arrays beinhaltet. Mir fehlt jedoch die Idee, wie ich das selektieren kann!!!
Gruß Joe
10.07.2008, 14:16
Hi,
kennt jemand diese Symbol:
[attachment=13408]
Wenn ich es schaffen könnte diese Symbol anhand meiner Liste mit den IDs variabel zu machen, dann könnte ich so mein Cluster nach IDs ohne die Case-Struktur sortieren!!!
Gruß Joe
kennt jemand diese Symbol:
[attachment=13408]
Wenn ich es schaffen könnte diese Symbol anhand meiner Liste mit den IDs variabel zu machen, dann könnte ich so mein Cluster nach IDs ohne die Case-Struktur sortieren!!!
Gruß Joe
10.07.2008, 15:09
10.07.2008, 15:38
' schrieb:Meinst Du in etwa so?
[attachment=40722:Sortieren.vi]
[attachment=40723:Sort_2D_..._string_.vi]
Gruß Markus
Naja. Ich brauche halt am Ausgang ein 3D-Array. Die 3te Dimension sollte dann zwischen den einzelnen Arrays switchen. Siehe:
[attachment=13413]
[attachment=13414]
Ansonsten ist das schon die richtige Richtung.
Gruß Joe
10.07.2008, 16:10
' schrieb:Naja. Ich brauche halt am Ausgang ein 3D-Array. Die 3te Dimension sollte dann zwischen den einzelnen Arrays switchen.Naja, du könntest ja folgendes machen:
Index des Elementes suchen (in While-Schleife), das als erstes ungleich dem ersten Element ist. Diesen Indexbereich schneidest du aus und fügst ihn zu dem bestehenden 3D-Array hinzu. Mit dem Rest verfährst du genausso. Und zwar solange, bis der Rest die Länge 0 hat.
11.07.2008, 12:58
Zufällg hab ich gerade ein ähnliches Problem gehabt.
Ein 1D-Array (array of cluster of data) soll in ein 2D-Array (array of cluster of (kennung, array of cluster of data)) überführt werden. Im Data-Cluster steht neben diversen Daten auch eine Kennung. Nach dieser Kennung sollen die Data-Cluster nun sortiert werden. Die Kennung soll dann als Index in genau dieses Array genommen werden, um an die Daten dieser Kennung zu kommen. Dumm nur, dass die Anzahl der Data-Cluster pro Kennung unterschiedlich ist.
Das Datenkonstrukt "array of cluster of (kennung, array of cluster of data)" hat den Vorteil, dass man damit quasi unterschiedlich lange Arrays machen kann - was mit einem 2D-Array leider nicht geht.
Hier mal einlv85Muster.
Ein 1D-Array (array of cluster of data) soll in ein 2D-Array (array of cluster of (kennung, array of cluster of data)) überführt werden. Im Data-Cluster steht neben diversen Daten auch eine Kennung. Nach dieser Kennung sollen die Data-Cluster nun sortiert werden. Die Kennung soll dann als Index in genau dieses Array genommen werden, um an die Daten dieser Kennung zu kommen. Dumm nur, dass die Anzahl der Data-Cluster pro Kennung unterschiedlich ist.
Das Datenkonstrukt "array of cluster of (kennung, array of cluster of data)" hat den Vorteil, dass man damit quasi unterschiedlich lange Arrays machen kann - was mit einem 2D-Array leider nicht geht.
Hier mal einlv85Muster.
Seiten: 1 2