Watchdog : Wenn Nichts mehr geht !

,
Print Friendly, PDF & Email
Hier im Forum gab es bereits verschiedene softwareseitige Ansätze für die Realisierung eines Watchdogs. Anlass war meist ein Hängenbleiben der CCU , die durch den Watchdog wieder zum Leben erwachen soll. Der Watchdog ist also so etwas wie der Defibrillator in der Medizin. Wenn das Herz nicht oder nicht mehr richtig schlägt wird mit purer Gewalt der Herzschlag neu gestartet. Genauso ist es mit dem elektronischen Watchdog: wenn der Rechner beispielsweise eingefroren ist oder sich anderweitig „aufgehängt“ hat, dann soll ein Watchdog dies möglichst erkennen und den Rechner resetten. Im „normalen“ Betrieb bekommt der Watchdog vom Rechner regelmässige Signale, die ein Funktionieren signalisieren sollen. Ob die Funktion des Rechners richtig ist oder ob vieleicht schon bestimmte Dienste sich „verabschiedet“ haben lässt sich dabei nur schwer erkennen. Also, um bei der Medizin zu bleiben: ein Watchdog kann nur erkennen , ob der Patient lebt ; er kann aber nicht erkennen ob der Patient gesund ist!Deshalb halte ich persönlich eigentlich vom Watchdog gar nichts, weil er oft nur eine softwareseitig oder hardwareseitig fehlerhafte Funktion oder eine insgesamt schlechte Konstruktion kaschiert.Ein robust und fehlerarm konstruiertes System braucht keinen Watchdog!Aber warum dann die nachfolgende Bauanleitung?
Ganz einfach, ich hatte ein relativ gut funktionierendes Homematic-System auf Basis der CCU1. Zur Zeit habe ich leider ein weniger zuverlässig funktionierendes System auf Basis der CCU2. Ein oder zwei Tage läuft es mit den auf der alten CCU1 problemlos funktionierenden und nahezu unverändert übernommenen Programmen einwandfrei, bis dann unregelmässig bestimmte Funktionen ausfallen. Bei mir ist es beispielsweise das altbekannte Tageszeit-Skript, welches nach einiger Zeit immer mal stehen bleibt. Da von dieser Funktion bei mir viele Funktionen und u.a. auch die Rolladen und Lüftungsfenster ausgelöst werden, hat dies inbesondere bei Urlaubsabwesenheit bei mir zu (gelinde gesagt) unschönen Effekten geführt. Damit wenigstens in so einer Situation das System neu gestartet wird und ich die Hoffnung haben kann , dass die Homematic danach die nächsten Stunden nicht einfriert, habe ich mir notgedrungen einen Hardware-Watchdog aufgebaut. Wenn dann hoffentlich in nächster Zeit die Software der CCU2 zufriedenstellend läuft, dann kann ich vielleicht dieses Gerätchen entsorgen.
Die Schaltung ist simpel und kann innerhalb einer Stunde leicht zusammengelötet werden.schaltplan_watchdogBild 1: Schaltplan WatchdogDie Versorgungsspannung vom Homematic-Netzteil wird über ein 5V-Relais (Ruhestellung durchgeschaltet) auf einen baugleichen Versorgungsspannungsstecker an die CCU gegeben. Nach dem Einschalten wird der 1000uF-Kondensator über den 1MOhm-Widerstand langsam aufgeladen, bis dann nach etwa 14 Minuten der FET durchschaltet und das Relais betätigt. Damit wird dann die Versorgungsspannung für die CCU kurz unterbrochen, was zu einem Hardware-Reset führt. Dieser Vorgang wird aufgehalten, solange regelmässig beispielsweise alle 10 Minuten mit dem Funk-Schaltaktor der 1000uF-Elko entladen wird. Der 22uF-Tantal-Kondensator mit dem vorgeschalteten 1MOhm-Widerstand sorgt dafür, dass die Versorgungsspannung für die CCU etwa 1 Sekunde lang unterbrochen wird. Dies reicht bei mir für einen ordentlichen Reset der CCU2.watchdog_kaestchenBild 2: Das Watchdog-KästchenWenn nun der Watchdog regelmässig alle 10 Minuten angestossen wird, dann läuft die CCU ganz normal weiter. Erst wenn die regelmässigen Impulse ausbleiben, wird ein Reset ausgelöst. An dem Vorhandensein dieser Impulse wird also eine ordnungsgemässe Funktion der CCU festgemacht.Anmerkung: Wenn ein Firmware-Update erfolgt und/oder das Flash programmiert wird, muß der Watchdog abgeschaltet sein. Man kann auch mit einem Überbrückungsschalter den 1000uF-Kondensator kurzschliessen und so den Watchdog abschalten.Ein entsprechendes Programm für das Auslösen eines regelmässigen Impulses kann im einfachsten Fall eine einfache Zeitsteuerung sein. Besser wäre aber eine Art Testprogramm, mit dem die verschiedenen Funktionen der CCU getestet würden, um erst bei richtiger Funktion den Impuls regelmässig (bei mir alle 10 Minuten) auszugeben. Ich verwende zur Zeit noch eine einfache Skript- Zeitsteuerung. Hier sind kreative Homematiker gefragt, um bessere Software zu entwickeln. Für entsprechende Anregungen wäre ich dankbar.
Wau, Wau !!

Haftungs- und Sicherheitshinweise

Beim Nachbau müssen natürlich alle wichtigen einschlägigen Sicherheitsvorschriften für den Umgang mit gefährlichen Spannungen  eingehalten werden. Fundierte theoretische und praktische Fachkenntnisse der Elektrotechnik und für den Umgang mit gefährlichen Spannungen sind unverzichtbar!!

Durch eine unsachgemäße Installation gefährden Sie ihr Leben und das Leben ihrer Mitmenschen! Darüberhinaus riskieren Sie erhebliche Sachschäden , welche durch Brand etc. hervorgerufen werden können ! Für alle Personen- und Sachschäden durch falsche Installation etc. ist nicht der Hersteller sondern nur der Betreiber verantwortlich.

Ich verweise hier unbedingt auf  die  „Sicherheitshinweise und Haftungsausschluss„-Seite dieses Blogs.

Skills

Posted on

19. Juni 2013