Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
ich habe ein Programm geschrieben, mit dem Spannungen angelegt und ausgelesen werden sollen. Das klappt soweit auch ganz gut, nur dass eine Messung (ein Schleifendurchlauf) fast eine Sekunde dauert, ist nicht ganz optimal.
Der Messablauf erfolgt in einer StateMachine, da die einzelnen Punkte automatisch abgefahren werden sollen.
Zuerst wird an eine Spannungsquelle, die über GPIB verbunden ist, eine Spannung angelegt. Anschließend werden über ein NI-USB 6229 7 Kanäle ausgelesen und zusätzlich über VISA mit einem Multimeter von Keithley eine Spannung gemessen. Mit dem NI Gerät werden die ersten 3 Kanäle von 0-10 Volt, die nächsten 3 von 0-0.2 V, der letzte wieder von 0-10V ausgelesen, jeweils 20 Samples.
Erst hatte ich das Multimeter in Verdacht, aber wenn ich das einzeln auslese, dauert die Messung zwischen 30-150ms. Ich könnte mir jetzt vorstellen, dass vielleicht die ungünstige Verteilung der Bereiche in der USB-6229 den Monsteranteil an der Messzeit hat. Oder hab ich, abgesehen von der etwas wirren Verdrahtung, nen grundsätzlichen Fehler bei der Programmierung gemacht?
wozu bitte die Sequenzstruktur beim DatenLesen? Die verhindert nur die parallele Abarbeitung potenziell simultaner Prozesse (bei dir: 3mal Datenlesen von unabhängigen (?) Quellen)!
- Dann liest du bis zu 4096 Werte vom seriellen Port. Das kann dauern...
Außerdem ist nicht ersichtlich, wie du die DAQmx-Reads konfiguriert hast (Samplerate, Anzahl Samples)...