LabVIEWForum.de - Signal mit DAQmx senden und empfangen

LabVIEWForum.de

Normale Version: Signal mit DAQmx senden und empfangen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo
Ich versuche ein im LabVIEW erzeugtes Sinussignal (Waveform) über einen NI USB-6251 auf eine PT1-Strecke zu senden und das neue Signal wieder in mein Programm (VI_zerocrossing_phase shift) einzulesen. Das Programm sorgt dann für die Frequenzgangauswertung, welches im Simulationsmodus einwandfrei funktioniert.

Nun habe ich Probleme mit dem Aus- und Einlesen des Signales. Erstens würde ich gerne die ganze DMQ-Geschichte in ein Sub-VI verpacken. D.h. ohne while-schlaufe. Und zweitens muss ich die Ein- und Ausgänge auf dem Frontpanel einstellen können (somit keine Express-Signals?).

Ich habe noch nie mit den DMQ-Bausteinen gearbeitet und habe keine Ahnung wie ich das bewerkstelligen kann. Ich habe mal versucht anhand eines Beispiel-VI ein eigenes Sub-VI (Sub-VI_real_system) mit Flat sequence structure anstelle einer While-Schlaufe zu erstellen. Doch leider funktioniert so überhaupt nichts...

Ich währe sehr froh um jede Hilfe, da ich das Projekt bereits in einer Woche abgeben muss.

EDIT jg: Thementitel angepasst
Hallo denzlair,

Zitat:Ich habe noch nie mit den DMQ-Bausteinen gearbeitet und habe keine Ahnung wie ich das bewerkstelligen kann.
Ich nehme mal an, wenn du "DMQ" schreibst, dass du dann "DAQmx" meinst...

Zitat:Ich habe mal versucht anhand eines Beispiel-VI ein eigenes Sub-VI (Sub-VI_real_system) mit Flat sequence structure anstelle einer While-Schlaufe zu erstellen.
Wenn du fortlaufend Messwerte aufnehmen willst, musst du wohl oder übel eine Schleife verwenden. Die muss aber nicht zwingend im subVI sein, welches die Messdaten abfragt. Dann sollte aber in diesem subVI nicht dauernd der/die Task neu erstellt und wieder gelöscht werden...

Zitat:Doch leider funktioniert so überhaupt nichts...
Das ist jetzt keine sehr erschöpfende Fehlerbeschreibung...

- Hatte ich schon mal erwähnt, dass RS-FF überbewertet sind und meist mit einfachen booolschen Operationen ersetzt werden können? Besonders wenn sie aus Sequenzstrukturen und Case-Strukturen zusammengesetzt werden?
[attachment=42438]

- Hatte ich angesichts deines MainVI schon mal erwähnt, dass man dort die Anzahl der lokalen Variablen verringern könnte, wenn man stattdessen Schieberegister verwenden würde? ("Reset 1/2").

- Das in deinem "subVI_real_..." verlinkte Beispiel-VI (Get Terminal Name with Device Prefix) habe ich leider nicht...
Hallo GerdW

Ja, ich meine DMQmx.

Ich verstehe aber nicht ganz, wenn ich doch keine While-schleife in einer While-schliefe programieren sollte, wie soll ich dann innerhalb meines Programms eine schleife machen?

Na ja, mit "funktioniert überhaupt nichts, meine ich, das ich kein Signal am Ausgang erhalte und ich weiss nicht wo der Fehrler genau liegt.
Hallo denzlair,

Zitat:Na ja, mit "funktioniert überhaupt nichts, meine ich, das ich kein Signal am Ausgang erhalte und ich weiss nicht wo der Fehrler genau liegt.
Dann betreibt man Debugging und sucht die Fehlerquelle mit Sonden und Highlighting...
Offtopic2
DAQmx, nicht DMQmx...

Außerdem Verschoben
Hallo jg

Sorry, dass dieser Thread am falschen Ort landete.

Vielleicht kannt du mir ja weiterhelfen. Denn ich habe mein Problem noch nicht lösen können.

Ich würde gerne das Angehängte VI ohne Whileloop programmieren. Denn ich muss Daten in einem Programm aus und einlesen, welches sich bereits in einem Whileloop befindet. Und trotzdem muss ich meine Waveform kontinuierlich einlesen.

Ein weiteres Problem, ist noch dass das Timing der zwei Signale übereinstimmen muss. Ich habe mal versucht im Timing DAQ die Waveform als Timing zu nehmen?

Danke für deine Hilfe.
Referenz-URLs