LabVIEWForum.de - Encoder werte nach bestimmte steps in Array speichern

LabVIEWForum.de

Normale Version: Encoder werte nach bestimmte steps in Array speichern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo liebe community,

Ich hab ein frage zu Encoder werte auslesen und speichern. Ich hab ein Nanotec schritt motor mit Encoder und SMCP33 controller. Mit Hilfe labview jetzt kann ich diese motor steuern, strecke fahren, Encoder wert auslesen und sogar in ein Array Speichen.

Aber ich will nach bestimmte "Steps" Encoder wert speichern. z.b der Encoder fährt von 0 (null punkt) bis zu 1000 steps. Und ich will die werte nach jeder 3 steps speichern, so das in mein array steht 0,3,6,9...... Mit Hilfe for loops (fixed iterations) ich hab das Manual geschafft (siehe bild). aber ob so kann mann auch mit real werte von Encoder machen? Oder diese vorgehen is komplett falsch?

[attachment=57980]
Hallo Zia,
so geht es nicht.
In Deinem Programm werden alle Werte, die durch 3 teilbar sind übernommen.

Wenn Du z.B. eine Array mit den Werten 3,6,7,8,9 hast, wird am Ende 3,6,9 herauskommen.
Du möchtest aber nur die Werte 3,8 haben.
Nimm den Counter der zweiten Schleife und Teile durch 3.

Gruß
Freddy
Hallo,

oder probiere es doch einfach mal mit Dezimieren:
[attachment=57983]
Hallo,
elegante Lösung von GerdW.
Aber daran denken, wenn die Anzahl der Arrays nicht durch 3 teilbar ist, werden die restlichen eins oder zwei verworfen.

Gruß
Freddy
Array dezimieren ist immer dann elegant, wenn ich vorher schon weiß, jedes wievielte Element ich brauche. Zur Laufzeit kann ich ihm das leider nicht beibringen...


Gruß, Marko
Referenz-URLs