Raspberry Pi per RTC-Timer an- und ausschalten

© Anastasia Alforova, 123RF

Aufgewacht!

,

Der Raspberry Pi fährt auf Kommando herunter, doch zum Aufwachen fehlt ihm eine Echtzeituhr. Mit einer RTC und ein paar Schaltungen steuern Sie den Schlaf- und Wachrhythmus des Mini-Rechners.

Eine der Ausstattungslücken des Raspberry Pi betrifft das Fehlen einer Echtzeituhr. Eine solche Real-Time-Clock (RTC) lässt sich aber problemlos nachrüsten, etwa in Form des weit verbreiteten RTC-Moduls DS3231 [1]. Es kostet nur wenige Euro und funktioniert bestens mit dem RasPi; zahlreiche Tutorials im Internet beschreiben den Einsatz des Uhrenchips.

Einen wichtigen Aspekt der RTC verschweigen die Tutorials aber: Der Chip vermag zwei unabhängige Alarme auszulösen. Da liegt die Idee nahe, dass die Uhr den RasPi wieder anschalten kann, vorausgesetzt, er programmiert den Aufwachzeitpunkt in der RTC vor dem Shutdown selbst. Von der Idee bis zur Umsetzung mussten wir dann allerdings noch ein paar Hürden überwinden.

Ein typischer Anwendungsfall der Schaltung wäre etwa ein Server, der sich spät am Abend selbst herunterfährt und morgens wieder automatisch bootet. Während sich dieses Beispiel noch mit einer zeitgesteuerten Steckdose realisieren ließe, kommt ein Videorecorder auf RasPi-Basis [2] damit nicht hin, da Abschalten und Neustart nicht zu festen Zeiten stattfinden.

Der Ablauf

Abbildung 1 zeigt von links nach rechts den generellen Ablauf. Ein Taster (S1) schaltet den Strom für den RasPi ein, der Rechner bootet. Am Ende des Shutdowns setzt der RasPi den Pegel eines Pins auf High (A1 im Schaubild). Das führt zum Abschalten des Stroms, der Pegel des Pins fällt dadurch sofort wieder auf null (A2).

Abbildung 1: Das Ablaufschema der Stromschaltung.

Zum Zeitpunkt B1 löst der in der RTC hinterlegte Alarm aus. Der DS3231-Chip zieht dazu den per Pullup auf High gelegten Pin INT auf Low. Dieser Pegel bleibt vorerst so, bis der Alarm gelöscht wird. Ein Low auf der Interrupt-Leitung schaltet den Strom für den RasPi wieder ein; der fährt hoch und löscht im Rahmen des Boot-Prozesses den Alarm (B2). Daneben lässt sich der Raspberry Pi auch ohne aktivierten RTC-Alarm herunterfahren. Danach muss man ihn allerdings über den Taster S1 starten.

Die Hardware

Im Internet gibt es verschiedene Ausführungen des DS3231-Chips auf kleinen Platinen für wenig Geld. Hier gilt es, genau hinzusehen: Minimalistische Varianten führen nur VCC, GND, SDA und SCL heraus. Das genügt zwar für den Betrieb als RTC, doch lassen sich aus den internen Alarmregistern solcher Platinen ausgelöste Alarme nicht abgreifen.

Dafür bedarf es mindestens noch eines weiteren Pins, üblicherweise INT/SQW genannt. INT steht dabei für Interrupt und SQW für Square Wave. Bei Bedarf lässt sich beim Eintreten eines Alarms über diesen Ausgang statt eines Interrupts (Pegelwechsel von High auf Low) auch ein Rechtecksignal ausgeben. Im aktuellen Projekt kommt der Chronodot [3] zum Einsatz, dessen Design vollständig offenliegt.

Die Herausforderungen seitens der Elektronik liegen darin, dass die Schaltung auf drei Signale reagieren muss, teilweise auf Pegel (Taster S1) und teilweise ausschließlich auf steigende Flanken (RTC/INT). Diese Anforderungen erfüllt ein diskretes Flipflop (D-FF oder kurz FF) vom Typ 74HCT74 (5V-Typ). Die logischen Verknüpfungen der beiden Eingangspegel von RTC/INT und dem RasPi-GPX erfolgen über ein logisches Oder.

Der Einschaltvorgang initiiert das FF und schaltet den RasPi über S2 ein. Die Invertierungen erledigt ein 74HCT04 (sechs Inverter). Optimal ist diese Konfiguration noch nicht, die Verfügbarkeit aus der Bastelkiste war ausschlaggebend. Wer also das diskrete Oder nicht mag, nimmt einen IC 74HCT02 mit vier NOR-Gattern, einem Gatter für das NOR und zwei Gattern für die Inverter; dabei bleibt ein Gatter ungenutzt. Damit würde man sogar mit nur einem IC für die erste Baugruppe auskommen.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 5 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Raspberry Pi Geek kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Aktuelle Ausgabe

10/2018
Weltweiter Empfang

Diese Ausgabe als PDF kaufen

Preis € 7,99
(inkl. 19% MwSt.)

Stellenmarkt

Neuigkeiten

  • Physiklabor

    Der Java-Dialekt Processing zielt auf interaktive Animationen ab und eignet sich auch für Programmiernovizen.

  • Abstand halten

    Der VL53L0X misst präzise Entfernungen bis zu zwei Metern. Das macht ihn zum passenden Kandidaten für RasPi-Projekte.

  • Tux-Funk

    Der SDR-Empfänger RSP2pro von SDRplay bringt Amateurfunk auf den Raspberry Pi.

  • Himbeersieb

    Die aus Österreich stammende Upribox auf Basis des Raspberry Pi schützt wirkungsvoll vor Gefahren aus dem Internet. Jetzt ist das System in der zweiten Version erschienen.

  • Unter Kontrolle

    Das programmierbare Steuermodul Controllino bietet mit seinen zahlreichen Ein- und Ausgängen vielfältige Möglichkeiten.

  • Dehnübungen

    Ein RasPi eignet sich bestens zum Steuern eines Fischertechnik-Roboters. Damit dabei kein Chaos entsteht, gilt es, die Steuerung genau zu programmieren.

  • Klangmaschine

    Der RasPi bringt genügend Performance mit, um als kleine DAW zu dienen. Mit Waveform 9 haben Sie die passende Software zur Hand.

  • Fremdgehen

    Nicht jedes Programm gibt es auch für die ARM-Architektur. Der kommerzielle Emulator Exagear Desktop fungiert als Übersetzer zwischen der ARM- und x86-Welt.

  • Ausfallsicher

    Eine selbst gebaute USV für den RasPi verschafft Ihnen die entscheidenden Sekunden, um bei unerwarteten Stromausfällen einem Datenverlust vorzubeugen.

  • Am laufenden Band

    Die Kombination aus einem Fischertechnik-Bausatz und dem Controllino-Modul bietet eine ideale Basis, um ein funktionierendes Industriemodell zu gestalten.