Dein RevPi Connect ist mit einem Hardware-Watchdog ausgestattet.
Ein Watchdog ist eine Zeitschaltuhr, die nach dem Einschalten 60 Sekunden läuft und dann den RevPi neu startet. Solange Dein System ordnungsgemäß funktioniert, muss deshalb die Zeitschaltuhr immer wieder neu gestartet werden. Wenn ein Fehler auftritt (z. B. wenn der Applikationprozess abstürzt), erfolgt dieser Neustart nicht und der Watchdog startet das System neu.
Watchdog aktivieren
Wir liefern Dir einen Stecker mit, der bereits vorverkabelt ist. Durch die Steckbrücke auf den Klemmen 0V und WD ist der Watchdog deaktiviert.
Der Watchdog ist ohne dieses Kabel aktiv und der Watchdog-Timer muss von deiner Anwendungssoftware zyklisch neu gestartet werden, damit Dein System nicht neu gestartet wird. Bis Du eine solche Software hast, ist es deshalb sinnvoll, den Watchdog zu deaktivieren. Es wäre sonst möglich, dass er Dich während Deiner Entwicklungsarbeiten stört.
- Entferne das Überbrückungskabel von Klemme 0V auf Klemme WD, um den Watchdog zu aktivieren.
Angeschlossene Geräte überwachen
Ein Relais-Ausgang ermöglicht es, dass auch Geräte, die an den X2-Anschluss angeschlossen sind, durch den Watchdog überwacht werden können.
Du kannst den Relais-Ausgang im Prozessabbild (RevPiLED, Bit 6) bitweise schalten. Damit kannst Du z. B. auch einstellen, dass das Relais schaltet, wenn der Watchdog einen Fehler gemeldet hat.
Auf Deinem RevPi Connect findest Du ein Beispielscript dazu.
Die Datei „watchdog.sh“ findest Du im Verzeichnis „/etc/rc.local“.
Du kannst das Script ausführen, indem Du folgenden Befehl in die Kommandozeile schreibst:
/home/pi/connect/revpi-connect-watchdog.sh/>dev/null_&
Dieses Script ist nur ein Beispiel und eignet sich nicht dazu, Watchdog oder Relais anzusteuern. Du kannst es jedoch als Vorlage verwenden, um einen eigenen Befehl in einem Anwendungsprogramm (z. B. logiRTS) zu erstellen.
So verwendest Du den Watchdog, um auch das Relais neu zu starten:
- Patche das FTDI-EEPROM:
devnum=$(cat /sys/bus/usb/devices/1-1.5.2/devnum)
sudo /home/pi/connect/patch_eeprom d:1/$devnum 0x14=0xaa 0x15=0x00
Diesen Arbeitsschritt musst Du nicht mehr erledigen, wenn Du den Watchdog bereits zum Ansteuern des Relais verwendet hast.
- Starte RevPi Connect neu.
sudo reboot
- Gib einen der folgenden Befehle ein, um das Relais bei einer Rückmeldung des Watchdogs ein- oder auszuschalten:
Einschalten:
sudo /home/pi/connect/enable_relay_watchdog.py
Ausschalten:
sudo /home/pi/connect/disable_relay_watchdog.py
Den gewünschten Befehl musst Du nach jedem Reboot erneut aufrufen.
Wenn Du diesen Befehl eingegeben hast, ist es möglich, dass die Schnittstelle „/dev/ttyRS485“ kurzzeitig verschwindet.