Mit sunwait bestimmen, ob es Tag oder Nacht ist

Die Frage, ob es Tag oder Nacht ist, lässt sich in der Regel mit einem Blick aus dem Fenster beantworten. Manchmal genügt dies aber nicht und man möchte vielleicht die Ausführung bestimmer Skripte davon abhängig machen, ob es Tag oder Nacht ist. Bisher habe ich dazu eine Wetter API benutzt, die Sonnenaufgangs- und untergangszeiten liefert. Das ist aber ein wenig umständlich, setzt eine Internetverbindung voraus und ist nicht immer zuverlässig. Eine bessere Lösung bildet in meinen Augen sunwait, welches die Frage durch Berechnen beantwortet.

Installation

Unter Arch Linux ist die Installation meist einfach, da das Paket im Arch User Repository enthalten ist:

Eigentlich möchte ich es aber auf einem Debian bzw. Raspbian einsetzen. Dort muss man es kurz herunterladen und kompilieren. Eine geforkte, etwas erweiterte Version namens sunwait4windows existiert und lässt sich auch unter Linux kompilieren und ausführen:

Benutzung

Die erste Hürde bei der Benutzung von sunwait ist die Ermittlung des Breiten- und Längengrades für den eigenen Standort. Hierzu habe ich OpenStreetMap verwendet, meinen Standort auf höchster Zoomstufe herausgesucht und mir die Daten aus der URL herauskopiert.

Wer nicht nur herausfinden möchte, ob es Tag oder Nacht ist, sondern mit sunwait warten möchte, bis Sonnenaufgang oder -untergang eintreten, kann andere Modi wie z.B. wait anstatt poll verwenden. Die Hilfe kann angezeigt werden, indem sunwait ohne weitere Parameter aufgerufen wird.

Ich kombiniere sunwait mit einem Raspberry Pi samt 433 MHz Funksteckdosen-Schaltung, um einige Lichter abhängig von der Tageszeit und einiger anderer Parameter ein- oder auszuschalten. Einsatzmöglichkeiten gibt es glücklicherweise genug.

3 Gedanken zu „Mit sunwait bestimmen, ob es Tag oder Nacht ist

  1. Eine etwas komische Art und Weise zu erkennen, ob die Sonne noch scheint oder bereits untergegangen ist. Normalerweise reicht ein Blick auf die Uhr, wer es ganz genau machen will kann auch noch den aktuellen Monat berücksichtigen und das in ein Skript verpacken.
    Allerdings berücksichtigt das alles keineswegs die Wetterlage und selbst im schönsten Sommer kann es aufgrund schlechten Wetters schon sehr viel früher dunkel werden als sunwait & Co. ausgeben. Die einzig verlässliche Methode wäre ein zeitgesteuerter Timer im Kombination eines Lichtsensors.

    • Stimmt natürlich, ein Helligkeitssensor würde etwas sinnvoller sein, aber der Raspberry steht dafür an einer zu ungünstigen Stelle. Der Blick auf die Uhr allein reicht ja nicht, im Dezember ist um 17 bereits dunkel und im Juni ist es um 21 oder 22 noch recht hell.

      Jedenfalls ist nur ein wenig Deko-Licht am Raspberry angeschlossen, also nichts wichtiges.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.