PowerPlug
Einleitung
Manchmal kam es vor, dass das Kabelmodem unseres Internetzugangs hängen blieb, dh. die Verbindung ins Internet funktionierte nicht mehr. Da ich aber meist nur an den Wochenenden zu Hause bin, musste jedes Mal jemand aus meiner Familie hinauf in den Dachboden das Modem aus- und einschalten. Seit kurzer Zeit hosten wir unsere Domain (das.cc) selbst. Deswegen sollte, wenn es das Modem wieder einmal verlangt, der Reset sehr schnell durchgeführt werden, auch in der Nacht.
Darum habe ich mir eine vom Computer aus schaltbare Steckdose gebaut.
PowerPlug ist dazu gedacht die Stromzufuhr zu den daran angeschlossenen Geräten kurzzeitig zu unterbrechen. Durch Drücken des Tasters oder Aktivierung durch den Computer wird der Stromkreis unterbrochen.
Hardware
Die schaltbare Steckdose wird per RS232 mit der seriellen Schnittstelle des Computers verbunden. Wenn die DTR-Leitung (Pin 4) des seriellen Anschlusses auf high gesetzt wird, wird die Steckdose vom Netz getrennt. Sobald DTR wieder auf low geht, wird der Stromkreis wieder geschlossen.
Software
Um bei der Verwendung von PowerPlug eine größere Flexibilität zu erreichen, habe ich die Software zur Überwachung des Internetzugangs in zwei Teile aufgeteilt.
powerplug
Dieses Programm ist nur dafür zuständig die PowerPlug zu aktivieren, dh. den Laststromkreis für eine bestimmte Zeit zu unterbrechen.
network_test
Das Skript network_test wird per crontab alle fünf Minuten ausgeführt. Es testet ob der Server des ISP erreichbar ist, wird der Ping zweimal hintereinander nicht beantwortet, wird das Programm powerplug aktiviert, das das Kabelmodem für zehn Sekunden ausschaltet. Kann die Verbindung zum ISP nach weiteren 30 Sekunden noch immer nicht beantwortet, wird der Computer neu gestartet.
Download
Schaltplan (png, Protel)
powerplug Sourcecode (v1.0.0)
network_test Sourcecode (v1.0.0)
Tags: C++, Elektronik, Linux