LabVIEWForum.de
Input auf Output direkt ausgeben - PXIe-6259 - viel zu LANGSAM - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: Input auf Output direkt ausgeben - PXIe-6259 - viel zu LANGSAM (/Thread-Input-auf-Output-direkt-ausgeben-PXIe-6259-viel-zu-LANGSAM)



Input auf Output direkt ausgeben - PXIe-6259 - viel zu LANGSAM - Indigo - 08.09.2011 11:25

Hallo zusammen,

ich habe ein Problem, an dem ich mir schon die ganze Woche die Zähne ausbeiße.

Ich möchte ein gemessenes Signal einlesen und direkt, mit möglichst niedriger Latenz, wieder ausgeben. Leider erreiche ich mit meinem Programm lediglich 10 kHz Sampling-Frequenz. Ich benötige aber 40 kHz oder mehr.

Habe inzwischen alles mögliche ausprobiert. Mit und ohne Queue, interner vs. externer Sample-Takt... und noch vieles mehr. Kurzum, ich komme nicht über ca. 10 kHz.

Ein weiterer Effekt ist, dass die tatsächliche Samplingfrequenz immer viel niedriger ist als die eingestellte. Eine sinnvolle Implementierung von Filtern ist somit auch hinfällig. Sad

Habe auch schon die Beispiele "Multi-Function-Synch- AI-AO.vi" und "Simultaneous Sound IO.vi" betrachtet. Wirklich was gebracht hat es nicht.

Weiß jemand, warum keine höhere Samplingfrequenz erreicht wird und warum eingestellte und tatsächliche Samplingfrequenz voneinander abweichen???

Vielen Dank,
Thomas


RE: Input auf Output direkt ausgeben - PXIe-6259 - viel zu LANGSAM - jg - 08.09.2011 11:35

Wie sieht der Rest deiner Hardware/Software aus?
Wo steckt die PXIe-Karte drin?
Auf welcher Software-Plattform hast du das VI laufen? Windows? RT?

Gruß, Jens


RE: Input auf Output direkt ausgeben - PXIe-6259 - viel zu LANGSAM - Indigo - 08.09.2011 11:40

Es läuft auf einem PXIe-1071 System mit Dual-Core-Celeron und RT-System.

Grüße!


RE: Input auf Output direkt ausgeben - PXIe-6259 - viel zu LANGSAM - jg - 08.09.2011 21:29

Gut, RT-System, das erklärt dein RT-Wait-VI.

Trotzdem hast du immer noch einen DAQmx-Treiber, der dir die eingelesenen Werte erst einmal gepuffert liefern muss, und dann auch wieder gepuffert rausschreiben muss.

Ich habe jetzt etwas länger mit deinem VI (natürlich nur mit einer simulierten Karte und unter Windows) herumgespielt, und selbst da lief die Schreibschleife immer zu langsam.

Nach Ansicht von Bsp aus dem NI-Examplefinder habe ich für das Write-Task einmal die Position des Start-VI verschoben, und schon war dieser Effekt weg.

Anbei das abgeänderte VI, das ich auch so umgestellt habe, dass die Lese-Schleife immer genau dieselbe Anzahl von Werten ausliest. Damit hast du schon fast genau denselben Takt wie per Wait-VI.

Schau mal, wie es damit unter RT unter realer Hardware aussieht.

Gruß, Jens