LabVIEWForum.de - Quelle des DAQmx - Timing ändern

LabVIEWForum.de

Normale Version: Quelle des DAQmx - Timing ändern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Mit Hilfe der Beispiele und der Tipps hier im Forum, habe ich Funktionen für mein VI schon einzeln ausprobiert und getestet (Auslesen, Schreiben, Ausgeben, alles ohne Express-VIs etc.). Beim Erstellen des eigentlichen VIs bin ich nun auf ein Problem gestoßen:

In meinem LV-VI möchte ich u.a. analoge Daten winkelsynchron auslesen und speichern. Dazu soll ein Drehgeber (mittels ICs auf 512 Inkremente/Umdrehung reduziert) den Sample-Takt vorgeben.
Die maximale Rate des Signals liegt bei 51,2 kHz.

Derzeitig verwende ich eine NI 6024E, eine NI 6343 liegt aber schon bereit, es fehlt nur noch der passende Rechner.

Da das VI auch laufen soll, wenn sich der angeschlossene Motor noch nicht dreht, wollte ich die externe Quelle des Sample-Taktes abhängig vom Status des Motors in einem Case (n=0?) auswählen lassen.
Motor dreht: externe Quelle
Motor steht: OnBoardClock

Im Anhang befindet sich der Screenshot der betreffenden Programmecke und das zugehörige Haupt, sowie Sub-VI.
Der untere Bereich des Haupt-VIs ist noch in Arbeit, nicht erschrecken.^_^

Task erstellen, Kanal erzeugen, Timing und Task starten liegen alle außerhalb der While-Schleife, ich kann die Takt-Quelle also nicht einfach mit einer Leitung an das Timingmodul übergeben, so weit ist es klar. Task stoppen und zurücksetzen sind dann natürlich auch wieder außerhalb der Schleife.
Die Übergabe mittels Eigenschaftsknoten, der seine Referenz auf der source (Anzeige der ausgewählten Quelle) hat funktioniert allerdings nicht. (Kontrolle durch source aktuell)

Welche Möglichkeit bietet sich zur Übergabe der Quelle an? Unsure
Timing und Task starten in die Schleife zu verlegen dürfte der Performance abträglich sein.
[attachment=22182]

Lv86_img
[attachment=22187][attachment=22188]
Vielen, vielen Dank im Vorraus!

Roman
Hi,

ich weiß nicht ob der Task das checkt...

Du könntest mal probieren, mittels der RoutingVIs den jeweils gültigen Takt (bzw. Pin bzw. Quelle) auf den passenden Eingang zu routen...

A.
Thanx
Interessante Funktion!

Das hat mein Problem gelöst!
Poste doch noch nen Screenshot, wie du das jetzt genau gemacht hast!
[attachment=22235]
In dem Bsp. wird der PFI8, der die Quelle des Sampletaktes bildet, je nach case mit einem anderen PFI verbunden.
Motor steht: PFI4
Motor dreht: PFI6
In der Sequenz wird vorher der PFI8 von den vor verbundenen Anschlüssen getrennt.
Hübsch!

Kann ich sicher auch mal gebrauchen und es ist gut zu wissen, das es so funzt!
Referenz-URLs