LabVIEWForum.de
Ich werd nicht: QSM steht, Arrays machen Ärger - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Ich werd nicht: QSM steht, Arrays machen Ärger (/Thread-Ich-werd-nicht-QSM-steht-Arrays-machen-Aerger)



Ich werd nicht: QSM steht, Arrays machen Ärger - ExXeQtor - 07.02.2014 10:35

Hallo,

irgendwie ist es mir peinlich hier mit diesem Problem aufzukreuzen, weil ich ich eigentlich sicher war, dass das für mich kein Problem sein sollte (und eine "Lösung" hatte) - offensichtlich falsch:

Ich habe eine Queued-State-Machine (Producer/Consumer)-Architektur aufgebaut. Im Consumer soll nun im State "PROCESS" einfach ein angekommener Datenblock in das richtige von 32 Arrays eingearbeitet werden (siehe Anhang).

Die Berechnung des Array-Index ist nicht weiter wichtig, wichtig ist nur, dass sich aus der Kombination von Modul-/Channel-/und Lambdanummer eine eindeutige Zahl von 0-35 ergibt, die ich zum Indizieren des Arrays nutze, das 32 Signale trägt (Cluster aus Wert- und Zeit-Arrays).

Nun gelingt mir einfach das anhängen der Daten nicht und ich frage mich langsam wirklich wo heute morgen etwas quer sitzt. Meiner Meinung nach sollte der Ausschnitt im Bild:

- aus den 32 signalen durch den index den richtigen cluster heraussuchen
- dann an das jeweilige Signal/Zeit-Array des Clusters den wert anhängen
- dann alles wieder einfügen (durch replace array subset): Am selben Index, von dem ich das alte array gelesen habe.

Was ich aber bekomme im "output cluster 2" sind nicht zwei arrays, die immer länger werden sondern zwei immer aktuelle werte an index 0.

Wo hängts?! :-(


RE: Ich werd nicht: QSM steht, Arrays machen Ärger - GerdW - 07.02.2014 11:10

Hallo Alex,

vielleicht solltest du dein Schieberegister auch mal mit einer Arraykonstanten initialisieren, die schon 32 gültige Elemente enthält!?
Zumindest das 33. Element (welches man im BD sieht) ist jedenfalls nicht initialisiert…

Merke: nicht vorhandene Elemente kann man auch nicht ersetzen!

Und: AUTO-Cleanup schadet hier überhaupt nicht!


RE: Ich werd nicht: QSM steht, Arrays machen Ärger - jg - 07.02.2014 11:13

In einem leeren Array kannst du kein Element ersetzen. Bloß weil du den Array Index auf 32 einstellst, heißt das noch nicht, dass das Array jetzt Elemente enthält.
Gruß, Jens
EDIT: Wie üblich kommt Gerd zum selben Ergebnis.


RE: Ich werd nicht: QSM steht, Arrays machen Ärger - ExXeQtor - 07.02.2014 11:57

Danke Gerd und Jens,
natürlich hattet ihr recht. ich schreibs mir hinter die ohren! Smile


RE: Ich werd nicht: QSM steht, Arrays machen Ärger - GerdW - 07.02.2014 12:28

Hallo Alex,

kannst du mal deine Tastatur reparieren!?


RE: Ich werd nicht: QSM steht, Arrays machen Ärger - ExXeQtor - 08.02.2014 14:12

Wie meinst du das? Ist dir die Groß-/Kleinschreibung so wichtig oder übersehe ich etwas Anderes?
Grüße


RE: Ich werd nicht: QSM steht, Arrays machen Ärger - jg - 08.02.2014 16:44

(08.02.2014 14:12 )ExXeQtor schrieb:  Wie meinst du das? Ist dir die Groß-/Kleinschreibung so wichtig oder übersehe ich etwas Anderes?
Grüße
Ja, (einigermaßen) korrekte Groß-/Kleinschreibung ist uns hier im LVF wichtig, s. auch LVF-Regeln.

Danke, Jens