Ich möchte einen numerischen Wert in ein Array schreiben. Der Wert und der Index stehen zur Verfügung. Allerdings kann ich keine geeignete VI finden um diese Aktion durchzuführen. Ich hatte versucht die VI "array subset" zu verwenden, allerdings hatte ich damit keinen Erfolg. Die Verwendung einer For-Schleife scheidet auch aus, da ich das Auto-Indexing nicht verwenden kann. Die sollen in beliebiger Reihenfolge in das array geschrieben werden können.
Um Array Subset verwenden zu können, musst du zuerst dein Array initialisieren. Dazu musst du schon vorher wissen wie gross dein Array sein wird.
Gruss, Eugen
Die Arraygröße ist konstant bzw. von mir definiert.
Vielleicht hilft es wenn ich das Problem etwas genauer beschreibe.
Ich erhalte von einem Messgerät einen String der folgendermaßen formatiert ist : [Messwert 1, Messkanal x, Messwert2, Messkanal y................]. Ich zerlege nun den String in Messwert (double) und Messkanal (integer). Nun möchte ich den Messwert in ein Array schreiben und dabei die Nr. des Messkanals als Index nutzen. Diese Nr. ist nicht immer fortlaufend und auch nicht immer aufsteigend (z.B. 1;5;17;3;7.......). Deshalb ist es wichtig, dass ich den Wert ganz beliebig in ein Feld eintragen kann. Ich kann mir einfach nicht vorstellen, dass es dafür keine Funktion gibt. Möglicherweise unterschätze ich ja die Komplexität dieser Operation.
Danke
ganz einfach:
benutze das VI "Replace Array Subset".
damit kannst du z.B. "in einem Rutsch" eine ganze Zeile/Spalte in einem 2D Array ersetzen, oder z.B. einen einzelnen Wert an Index X in einem 1D Array, oder auch einen einzelnen Wert in einem 2D Array ...
ACHTUNG: in LV 8 ist ein Bug in diesem VI, funktioniert nur in LV 7.1.x zuverlässig ... (genaueres dazu gibt's
hier)
Leider funktioniert das auch nicht so richtig. Ich habe auch schon Versuche mit "replace subset array" angestellt.
Egal, ich stell das Prog mal rein.
So...Problem gelöst. Wenn man in dem von mir geposteten Beispiel noch das Schieberegister mit einem richtigen array initialisiert funktionierts.