Hardwaregetaktete Zähler-Tasks
- Aktualisiert2025-12-03
- 3 Minute(n) Lesezeit
Vorteile
- Mit zählergestützten Tasks ist ein flexibles Timing und eine schnelle Reaktion auf Ereignisse möglich, die Einfluss auf den Regelkreis haben könnten. Der Regelkreis kann also eine dynamische Taktrate haben.
- Wenn die Funktion/das VI "DAQmx - Auf nächsten Sample-Takt warten" nicht vor der nächsten Sample-Takt-Flanke startet, wird ein Fehler ausgegeben.
Nachteile
Das Lesen, Verarbeiten und Schreiben von Daten ist auf den Zeitraum zwischen dem Start der Datenerfassung und der nächsten Sample-Takt-Flanke beschränkt.
Beispiel-Anwendung für hardwaregetaktete Zähler-Tasks
Ein Anwendungsbeispiel ist ein Regelkreis mit zählergestützter Erfassung (z. B. Flankenzählung), der digitale Leitungen basierend auf einer vordefinierten Steuerlogik steuert. Bei diesem Beispiel erfolgt die Kommunikation mit Hilfe von Echtzeit-FIFO-Funktionen. In LabWindows/CVI können statt der Echtzeit-FIFOs auch threadsichere Signale verwendet werden.
Diagramm zur Zeitsteuerung
Beispiel-Anwendung 2 für hardwaregetaktete Zähler-Tasks
Ein weiteres Anwendungsbeispiel ist ein Regelkreis, der verschiedene Eingänge überwacht und die Werte für einen zählergestützten Ausgabe-Task verwendet, wobei die Regelsignale mit dem Impulsfrequenzmodus impulsbreitenmoduliert werden. Bei diesem Beispiel erfolgt die Kommunikation mit Hilfe von Echtzeit-FIFO-Funktionen. In LabWindows/CVI können statt der Echtzeit-FIFOs auch threadsichere Signale verwendet werden.
Diagramm zur Zeitsteuerung
LabVIEW-Beispiel für hardwaregetaktete Zähler-Tasks
- Verbinden Sie das VI "DAQmx - Auf nächsten Sample-Takt warten" mit dem Task zur zählergestützten Signalerfassung.
- Wird das VI "DAQmx - Auf nächsten Sample-Takt warten" vor der nächsten Flanke des Sample-Takts ausgeführt, wird ein Fehler ausgegeben.
Beispiel-Blockdiagramm

Beispiel 2
- Verbinden Sie das VI "DAQmx - Auf nächsten Sample-Takt warten" mit dem Task zur zählergestützten Signalausgabe.
- Wird das VI "DAQmx - Auf nächsten Sample-Takt warten" nicht vor der nächsten Flanke des Sample-Takts ausgeführt, wird ein Fehler ausgegeben.
Beispiel-Blockdiagramm

- Verwenden Sie nur ein Exemplar des VIs "DAQmx - Auf nächsten Sample-Takt warten" in einer LabVIEW-Schleife. Befinden sich mehrere hardwaregetaktete I/O-Tasks in derselben LabVIEW-Schleife, können Sie das VI "DAQmx - Auf nächsten Sample-Takt warten" mit einem beliebigen hardwaregetakteten Einzelpunkt-Task in der Schleife verbinden.
- Wenn im Falle eines Überlaufs eine Warnung statt einer Fehlermeldung ausgegeben werden soll, setzen Sie die Eigenschaft DAQmx - Real-Time»Verspätungsfehler in Warnung umwandeln auf TRUE.
- Bei der hardwaregetakteten zählergestützten Erfassung oder Ausgabe von Signalen findet keine Umwandlung statt, wie z. B. bei der Messung analoger Signale im Multiplexmodus. Daher kann die Echtzeit-FIFO an jeder beliebigen Stelle in der LabVIEW-Schleife eingefügt werden.
- Wenn bei der zählergestützten Ausgabe eine Sample-Takt-Flanke verpasst wurde, können Sie mit NI-DAQmx das verpasste Sample nachholen. Wenn das nicht mehr möglich ist, gibt NI-DAQmx einen Fehler aus und die nachfolgenden Samples in diesem Task sind nicht mehr hardwaregetaktet.
- Mit Hilfe der Eigenschaft DAQmx - Real-Time»Aufholmodus bei Schreibvorgängen können Sie zwischen den Modi "Auf Interrupt warten" und "Poll" auswählen. Die Standardeinstellung lautet "Auf Interrupt warten". Damit können Prozesse mit geringerer Priorität im Hintergrund weiterlaufen. Der Poll-Modus ermöglicht dafür höhere Sample-Raten.