Wachdog bei Aquariensteuerung

Da ich bis jetzt Schwierigkeiten mit einer "wackeligen" Steuerung meines Aquariums mittels Ardino hatte, wurde mir ein "Watchdog" empfohlen.
Meine Frage:
Es werden erst alle ungefähr drei Minuten Sensoren abgefragt.
Kann ich da überhaupt die Watchdog-Funktion benutzen?

180903_aquarium.ino.ino (16.3 KB)

Dein Programm habe ich mir noch nicht angesehen...
Weiß aber, dass man wackelige Hard- Software stabilisieren sollte.

Dann brauchst du den WDT nur, wenn nebenan eine Supernova erscheint.

--

Der WDT ist evtl. gut geeignet hier Leben zu retten.
Also ja, nutze ihn.

Tiff48317:
Da ich bis jetzt Schwierigkeiten mit einer "wackeligen" Steuerung meines Aquariums mittels Ardino hatte, wurde mir ein "Watchdog" empfohlen.
Meine Frage:
Es werden erst alle ungefähr drei Minuten Sensoren abgefragt.
Kann ich da überhaupt die Watchdog-Funktion benutzen?

Da solltest du mal 2 Begriffe überlegen.
Redundanz und Diversifikation.

Wenn du deiner Steuerung nicht traust ist es fraglich ob die selbe Steuerung auch die Überwachung machen soll.
Redundanz = eine andere Steuerung macht die Überwachung.
Ist ja schön wenn du einen anderen Arduino zur Überwachung nimmst aber in beiden einen Programmierfehler hast.

Diversifikation = eine andere Technik (Technologie) macht die Überwachung.

Was ist der schlimmste Fall ?
Vermutung: Das Wasser wird zu heiß - Fische tot.
Wie lange muss die Heizung irrtümlich in Dauerbetrieb sein, damit das Wasser zu heiß wird?

Variante 1 - Betriebsdauer der Heizung erfassen - Notbremse ziehen
Variante 2 - Mit einem Thermostat die Wassertemperatur erfassen - Notbremse ziehen (Spannung aus schalten)

Damit hast du eine Redundanz (Thermostat) und eine Diversifikation (Netzabschaltung) aber auch mehr Aufwand. Dein Fische werden es dir vielleicht danken.

LG
Viktor

Ich habe mich für Redundanz entschieden und ein externes Thermostat bestellt.
Da hast du vollkommen Recht, es geht um Lebewesen.

Der WDT Watch Dog Time überwacht ob er alle x Zeit "aufgerufen" wird. Falls nicht wird ein Reset ausgeführt. Der WDT funktioniert in Hardware und ist somit von Sketch (Software) unabhängig.

Der WDT hift nur bedingt bei Programmproblemen. Der Sketch muß sich schon aufhängen (nicht mehr ausgeführt werden) daß der WDT eingreift.

Ein WDT rettet Dich nicht vor schlecht programmierten Sketchs.

Ein System um die Sicherheit zu erhöhen muß redundant sein und unabhängig. Wenn Der Zusatztermostat ausfällt muß er das System abschalten.

Grüße Uwe

uwefed:
...

Ein WDT rettet Dich nicht vor schlecht programmierten Sketchs.
...

Dann hoffen wir mal, es ist nicht der Sketch.
Trotzdem würde ich gerne einen Watchdog einbauen.
Gibt es im Forum ein Tutorial auf deutsch?

Oder ist es wirklich so einfach, dasss folgende in den Sketch einzufügen???

#include <avr/wdt.h>
void setup(){
wdt_enable(WDTO_2S);
}
void loop(){
//der konplette Sketch
// und ganz am Ende:
wdt_reset();
}

Hättest du es gerne komplizierter?

Das ist problemlos möglich, in dem du die betreffenden Register händisch manipulierst.
Und Assemblerstatements einstreust.

Aber einen nennenswerten Unterschied macht das nicht.

combie:
Hättest du es gerne komplizierter?

Das ist problemlos möglich, in dem du die betreffenden Register händisch manipulierst.
Und Assemblerstatements einstreust.

Aber einen nennenswerten Unterschied macht das nicht.

Kein Wunder, dass ich kein Tutorial finde....

combie:
Hättest du es gerne komplizierter?

Das ist problemlos möglich, in dem du die betreffenden Register händisch manipulierst.
Und Assemblerstatements einstreust.

Aber einen nennenswerten Unterschied macht das nicht.

Kein Wunder, dass ich kein Tutorial finde... 8)

Falls das ein Nano ist, dann solltest du evtl. vorher den neuen Bootloader aufspielen.