NI-DAQmx - VIs und Funktionen zur Datenerfassung

Erstellen und Löschen von Tasks

  • Aktualisiert2023-02-21
  • 2 Minute(n) Lesezeit

In LabVIEW haben Sie zwei Möglichkeiten zum Erstellen von Tasks: entweder Sie wählen in einem Bedienelement oder einer Konstante des Typs DAQmx-Task-Name einen im DAQ-Assistenten erstellten oder gespeicherten Task aus oder Sie verwenden das VI DAQmx - Virtuellen Kanal erzeugen oder das VI DAQmx - Task erzeugen.

Wenn Sie einen Task in einer Konstante oder einem Element des Typs "NI-DAQmx-Task-Name" auswählen, wird der Task nur ein Mal in den Speicher geladen, auch wenn sich das Element oder die Konstante in einer Schleife befindet.

Wenn Sie mit dem VI "DAQmx - Virtuellen Kanal erzeugen" arbeiten und keinen Task angeben, zu dem die erzeugten Kanäle hinzugefügt werden sollen, dann erstellt NI-DAQmx einen neuen Task und reserviert die benötigten Ressourcen. Diese Ressourcen werden allerdings von LabVIEW bis zum Ausführungsende der Anwendung nicht automatisch wieder freigegeben. Wenn Sie das VI "DAQmx - Virtuellen Kanal erzeugen" also in einer Schleife laufen lassen, ohne einen Task anzugeben, wird in jeder Iteration der Schleife ein neuer Task angelegt, der bis zum Ausführungsende der Anwendung beibehalten wird.

Mit dem VI "DAQmx - Task erzeugen" wird ein neuer Task angelegt. Wenn Sie dieses VI in einer Schleife nutzen, wird in jeder Iteration der Schleife ein neuer Task erzeugt. Wie lange die Tasks im Speicher behalten werden, richtet sich nach der Einstellung des Eingangs Auto-Bereinigung des VIs.

Wenn Auto-Bereinigung TRUE ist, werden die erzeugten Tasks bis zum Ausführungsende der Anwendung gespeichert. Bei FALSE (Standardeinstellung) bleiben die Tasks bis zum Schließen von LabVIEW im Speicher. Auf diese Weise können Sie einen Task in einer Anwendung erstellen und in einer anderen weiterverwenden.

Damit das VI "DAQmx - Virtuellen Kanal erzeugen" oder das VI "DAQmx - Task erzeugen" in einer Schleife läuft, ohne dass bei jeder Iteration weiterer Speicherplatz belegt wird, fügen Sie ein VI des Typs DAQmx - Task löschen in die Schleife ein und rufen Sie es nach der Nutzung des Tasks auf.

Am Eingang Neuer Task-Name können Sie einen Task für die spätere Verwendung benennen. Beim Versuch, zwei Tasks mit dem gleichen Namen zu erstellen, wird ein Fehler ausgegeben. Daher können Sie das VI "DAQmx - Task erzeugen" nicht in einer Schleife laufen lassen, wenn am Eingang "Neuer Task-Name" ein Name angegeben ist. Wenn Sie also beispielsweise das VI "DAQmx - Task erzeugen" in eine Schleife setzen und Neuer Task-Name auf myTask setzen, läuft die Schleife ein Mal fehlerlos durch. Bei der zweiten Iteration verbleibt Task jedoch im Speicher, so dass bei der nächsten Ausführung des VIs ein Fehler ausgegeben wird. Setzen Sie zur Vermeidung dieses Problems ein VI des Typs "DAQmx - Task löschen" in die Schleife, um den Task nach seiner Verwendung zu entfernen.

Log in to get a better experience