Critical Security Update

To help protect your systems, customers using NI driver software 2026 Q2 or earlier should visit ni.com/ni-pal-update and follow the recommended actions.

Verwendung und Implementierung des Watchdog-Timers mit NI-DAQmx

Überblick

Der Watchdog-Timer ist in der NI-DAQmx-API für das cDAQ-9183/9185/9187/9189, DAQ-Geräte der X-Serie von NI und verschiedene DIO-Geräte (Industrie-Digital-I/O) enthalten. Erfahren Sie, was ein Watchdog-Timer ist, wie er funktioniert, welche Funktionen er bietet und wie Sie ihn in Ihrer Anwendung implementieren können.

Inhalt

Was ist ein Watchdog-Timer und wie funktioniert er?

Kritische Systeme erfordern in der Regel Redundanz- oder Ausfallsicherheitsmechanismen. Im Falle eines unerwarteten Ausfalls einer Komponente des Systems übernimmt der Fail-Safe-Mechanismus und versetzt das System in einen bekannten sicheren Zustand. Der Watchdog-Timer bietet eine Methode zur Bereitstellung eines solchen Mechanismus. Der Watchdog-Timer dient zur Überwachung und Identifizierung, ob das System ordnungsgemäß funktioniert. Wenn das System nicht ordnungsgemäß funktioniert, kann es in einen sicheren Zustand versetzt werden. Sie können den Watchdog-Timer für Ihr Gerät so konfigurieren, dass er den Ausgangskanal übernimmt und das System in einen bekannten sicheren Zustand versetzt, wenn ein unerwünschtes Ereignis auftritt, z. B. ein Software-Hängevorgang, der dazu führt, dass eine Bestätigung nicht innerhalb einer programmierbaren Timeout-Periode empfangen wird. Beachten Sie, dass die NI-DAQmx-Watchdog-Funktion ein System vor Softwarefehlern und Aufhängen schützen soll. Bei einem PXI-System mit Fernbedienung über MXI kann ein Verlust der MXI-Verbindung zu einem unerwarteten Watchdog-Verhalten und damit zu unsachgemäß implementierten Watchdog-Zuständen führen. 

Der Watchdog-Timer funktioniert, indem das Gerät ständig eine Bestätigung erhält, dass der Computer noch ordnungsgemäß funktioniert oder dass das Gerät noch mit dem Netzwerk verbunden ist. Wenn diese Bestätigung nicht innerhalb eines programmierbaren Timeouts empfangen wird, werden die sicheren Zustände an die konfigurierten Ausgänge geschrieben. Sobald der Watchdog-Timer konfiguriert und gestartet ist, muss die Softwareanwendung den Timer kontinuierlich zurücksetzen, um einen Ablauf zu vermeiden. Dieses Zurücksetzen bestätigt dem Gerät, dass der Computer ordnungsgemäß funktioniert. Abbildung 1 zeigt den Informationsfluss während des normalen Betriebs zwischen der Software- und Hardwareebene.

Das Ablaufdiagramm des Watchdog-Timers zeigt verschiedene Hardware- und Softwareebenen an

Abbildung 1. Das Ablaufdiagramm des Watchdog-Timers zeigt verschiedene Hardware- und Softwareebenen an.

Wenn ein Fehler auftritt, zählt die Hardware bis zum Ablauf des Timers weiter herunter. Zu diesem Zeitpunkt werden die vordefinierten sicheren Zustände in die konfigurierten Ausgänge geschrieben. Damit das Gerät wieder auf Hardwarebefehle reagiert, muss der Ablauf des Watchdog-Timers gelöscht werden. Abbildung 2 zeigt ein Ablaufdiagramm der Soft- und Hardware-Level, die auf das Hängenbleiben des Computers reagieren. Im Ablaufdiagramm sehen Sie, dass die Hardware bis zum Ablauf des Timeouts weiter herunterzählt. Nach Ablauf des Timeouts werden die vordefinierten sicheren Zustände an die Ausgänge übertragen und alle zukünftigen Schreibvorgänge an das Gerät ignoriert.

Das Ablaufdiagramm zeigt den Ablauf des Watchdog-Timers an

Abbildung 2. Das Ablaufdiagramm zeigt den Ablauf des Watchdog-Timers an.

Warum Watchdog-Timer verwenden?

Der Watchdog-Timer bietet eine Möglichkeit, die Ausgänge eines Geräts im Falle eines Systemfehlers oder -ausfalls in bekannte sichere Zustände zu versetzen. Dieser fehlersichere Mechanismus, den der Watchdog-Timer bietet, schützt Ihre mit Ihrem Gerät verbundene Hardware, wenn das System nicht mehr wie vorgesehen funktioniert. Nehmen Sie zum Beispiel die Überwachung in einer Holzmühle in Betracht. In diesem Fall können Sie mit dem Chassis cDAQ-9183/9185/9187/9189 verschiedene Elemente in der Mühle überwachen, wie die Geschwindigkeit der Klinge, die Position und Vibration der Klinge und die Temperatur des Ofens. Die CompactDAQ-Hardware würde außerdem kontinuierlich eine Benachrichtigung an den Controller senden, der die gesamten Maschinen steuert, und den Controller darüber informieren, dass die CompactDAQ-Hardware noch mit dem Netzwerk verbunden ist und die verschiedenen Werte überwachen kann. Wenn das Chassis die Verbindung zum Netzwerk verliert und der Benutzer die verschiedenen Werte nicht mehr überwachen kann, sendet es ein digitales Signal an die Steuerung, um den gesamten Maschinenpark zum Schutz der Sicherheit herunterzufahren. Ohne den Watchdog-Timer als Sicherheitsmechanismus in dieser Anwendung hätte die Maschine beschädigt werden können und repariert oder ersetzt werden müssen. Mehrere Anwendungen verwenden Watchdog-Timer als ausfallsicheren Mechanismus, der dazu führt, dass das System die Produktion unter Verwendung der vordefinierten sicheren Zustände beendet und Schäden am System vermeidet.

Was sind die verschiedenen Funktionen der Watchdog-Timer-API?

In der Watchdog-API, die im NI-DAQmx-Gerätetreiber enthalten ist, können Sie den Watchdog-Timer für die Ausgangskanäle Ihrer Geräte einrichten und konfigurieren. Die konfigurierbaren Watchdog-Optionen ändern sich je nachdem, welches der Watchdog-Timer unterstützten Geräte, die Sie haben. Die Optionen zur Konfiguration des Watchdog-Timers ändern sich je nach Gerät. In Abbildung 3 sehen Sie einen Screenshot der Watchdog-API in NI LabVIEW. Die Palette enthält folgende VIs:

  • DAQmx - Watchdog-Timer-Task erzeugen
  • DAQmx - Watchdog-Ablaufzustände konfigurieren
  • DAQmx - Watchdog-Task steuern
  • DAQmx - Watchdog (Eigenschaftsknoten)

Mit diesen Funktionen können Sie den Watchdog-Timer in Ihrer Anwendung erstellen, einrichten und steuern.

Die VIs innerhalb der Watchdog-API erstellen, konfigurieren und steuern den Watchdog-Timer

Abbildung 3. Die VIs innerhalb der Watchdog-API erstellen, konfigurieren und steuern den Watchdog-Timer.

Sie können den Watchdog-Timer für die digitalen Ausgänge von Geräten der X-Serie und verschiedenen industriellen DIO-Geräten konfigurieren. Bei Chassis des Typs cDAQ-9183/9185/9187/9189 können Sie den Watchdog-Timer für Ihre Digitalausgänge sowie Analog- und Zählerausgänge konfigurieren. Zusätzlich zu den erweiterten Ausgangstypen für das Chassis können Sie auch den Eigenschaftsknoten "DAQmx - Watchdog" verwenden, um den Ablauf bei einem Netzwerkverbindungsverlust vom Chassis aus auszulösen. Mit dieser Funktion können Sie den Timer jetzt ablaufen lassen, wenn das System einen unerwarteten Ausfall hat oder wenn die Netzwerkverbindung zwischen dem Chassis und dem Host unterbrochen wird. In Tabelle 1 sind die in der Watchdog-API enthaltenen Funktionen und die Geräte aufgeführt, die diese verwenden können.

 Watchdog-unterstützte Geräte
FeatureGeräte der X-SerieIndustrielle DIO-ProduktecDAQ-9183/9185/9187/9189
Sicherer DigitalausgangLow/High/Tristate/Keine ÄnderungLow/High/Tristate/Keine ÄnderungLow/High/Tristate/Keine Änderung
Sicherer Zustand der Analogausgabe (Strom)−−Aktueller Pegel/keine Änderung
Sicherer Zustand der Analogausgabe (Spannung)−−Spannungspegel/keine Änderung
Zählergestützte Ausgabe im sicheren Zustand−−Low/High/Keine Änderung
Ablauf bei Netzwerkverbindungsverlust auslösen (Eigenschaft)−−Aktiviert/Deaktiviert

 

Tabelle 1: Verfügbare Funktionen für die unterstützte Watchdog-Hardware

 

Wie kann der Watchdog-Timer mit NI-DAQmx implementiert werden?

Der Watchdog-Timer wird auf die gleiche Weise implementiert, wie jeder NI-DAQmx-Task erstellt wird. Zuerst erstellen Sie einen Watchdog-Timer-Task mit Hilfe des VIs "DAQmx - Watchdog-Timer-Task erstellen". Mit diesem VI konfigurieren Sie die Referenz auf Ihr Gerät und die Länge des Timeouts für den Timer.

Nachdem Sie den Task erstellt haben, können Sie ihn mit dem VI "DAQmx - Watchdog-Ablaufzustände konfigurieren" konfigurieren. Mit diesem polymorphen VI können Sie die Ablaufzustände der Ausgangskanäle konfigurieren, die Sie mit dem Watchdog-Timer beobachten. Bei der Ausgabe von Digitalsignalen können Sie wählen, ob der Kanal High- oder Low-Pegel schreiben soll oder ob nach Ablauf des Timers in den Tristate-Modus gewechselt werden soll. Mit dem Watchdog-Timer-Task für Chassis des Typs cDAQ-9183/9185/9187/9189 können Sie auch Analog- und Zählerausgänge konfigurieren. Bei der analogen Ausgabe können Sie auswählen, ob es sich um einen Strom- oder Spannungs-Task handelt, und dann festlegen, welchen Wert der Kanal nach Ablauf des Timers schreiben soll. Bei den zählergestützten Ausgangskanälen können Sie festlegen, ob der Kanal High oder Low schreiben oder nach Ablauf des Timers gleich bleiben soll. Ein weiteres Werkzeug zur Konfiguration des Watchdog-Tasks ist der Eigenschaftsknoten "DAQmx - Watchdog". Mit diesem Knoten können Sie alle Ablaufzustände konfigurieren, den Timeout-Wert festlegen und die Option für das Chassis aktivieren/deaktivieren, bei der der Ablauf des Timers durch einen Netzwerkverbindungsverlust ausgelöst werden kann.

Nach der Konfiguration des Tasks muss dieser mit dem VI "DAQmx - Starten" gestartet werden. Wenn der Watchdog-Task gestartet wird, sucht er ständig nach der Bestätigung, dass der Computer noch ordnungsgemäß funktioniert. Um dem Task mitzuteilen, dass der Computer ordnungsgemäß funktioniert, wird der Timer mit dem VI "DAQmx - Watchdog-Task steuern" vor dem konfigurierten Timeout-Wert zurückgesetzt. Abbildung 4 zeigt ein Beispiel für einen Watchdog-Task, der für das Chassis cDAQ-9183/9185/9187/9189 verwendet wird. In diesem Beispiel wird ein Watchdog-Task für das Chassis eingerichtet und verfügt über einen analogen Ausgangskanal, der konfiguriert ist, um in den sicheren Zustand zu wechseln, wenn der Timer in den Ablaufzustand eintritt oder wenn das Chassis vom Netzwerk getrennt ist.

Abbildung 4. Der Watchdog-Task hat einen analogen Kanal, der im cDAQ-9185/9189 konfiguriert ist.

Wenn der Timer abläuft und die Kanäle in ihren sicheren Zustand übergehen, muss der Ablauf gelöscht werden, damit das Gerät wieder auf Hardwarebefehle reagiert. Löschen Sie den Ablauf mit Hilfe des VIs "DAQmx - Watchdog-Task steuern" (siehe Abbildung 5) oder setzen Sie das Gerät zurück. Bei Verwendung des Chassis cDAQ-9183/9185/9187/9189 kann der Watchdog-Timer-Ablauf nur durch Zurücksetzen der Hardware gelöscht werden.

Abbildung 5. Löschen Sie den Ablauf mit dem VI "DAQmx - Watchdog-Task steuern".

Der Watchdog-Timer kann einen ausfallsicheren Mechanismus oder eine Redundanz im Falle eines unerwarteten Ausfalls einer Systemkomponente in Ihrer Anwendung bieten. Mit dem Watchdog-Timer können Sie die Ausgänge eines Geräts im Falle eines Systemfehlers oder -ausfalls in bekannte sichere Zustände versetzen. Mit Multifunktions-DAQ-Karten der X-Serie oder industriellen DIO-Produkten können Sie einen Watchdog-Timer an den digitalen Ausgangskanälen einstellen. Bei Chassis des Typs cDAQ-9183/9185/9187/9189 kann der Watchdog-Timer auf die digitalen, analogen (Spannung oder Strom) oder zählergestützten Ausgänge gesetzt werden. Außerdem kann er die Netzwerkverbindung überwachen und bei Verbindungsverlust die sicheren Zustände aktivieren.

Was this information helpful?

Yes

No