Akku-Betrieb Raspberry Pi mit An-Zeit-Management durch NE555

Prototyp der zeitgesteuerten Energieversorgung für den Raspberry Pi Zero im Akku-Betrieb

Der Raspberry Pi Zero W ist ein universell einsetzbarer Kleinrechner für IoT-Geräte, der Akku-Betrieb über einen längeren Zeitraum stellt den Maker aber vor besondere Herausforderungen. Das Mönchengladbacher Unternehmen clabremo GmbH und die Hochschule Niederrhein entwickeln daher Methoden, die die Laufzeit von Akku-gestützten IoT-Systemen verlängern. Hier ist ein Beitrag mit dem Timer-IC NE555.

Die Schaltung soll zum einen in den Schulkooperationen der Hochschule eingesetzt werden, zum anderen für die Versorgung der internetgestützten Temperatursensoren für die Überwachung von Bienenstöcken.

Problemstellung – Akku-Betrieb erfordert Energiemanagement

Der Raspberry Pi Zero W ist ein idealer Rechner, um in studentischen Projekten oder mit Schülern IoT-Fragestellungen zu bearbeiten. Allerdings ist der Raspi mit einem durchschnittlichen Strombedarf von 110 mA anspruchsvoll, und i.d.R. erfordert die Stromversorgung einen Anschluss in der Nähe. Steht dies nicht zur Verfügung, denkt man schnell über Akkus nach. Experimente mit NiMH-Akkus (Eneloop mit 1900 mAh) und verschiedenen Bleigelakkus (12 Volt mit 10 Ah oder 4,5 Ah, 6 Volt mit 10 Ah, 4,5 Ah und 1,2 Ah) brachten schon ermutigende Ergebnisse, die allerdings einen erheblichen Materialeinsatz erfordern. Ein 12 Volt Bleigel-Akku eignet sich gut, aber selbst ein 20W Solarpanel reicht im Winter nicht aus, um die notwendige Strommenge nachzuliefern. Das Problem verschärft sich dadurch, dass ein 12 Volt Bleigel-Akku ein Lademanagement, einen Entladungsschutz und einen 5 Volt DC-DC Konverter benötigt – alles Komponenten, die ebenfalls Energiebedarf haben.

Lösungsidee

Allgemeines

Eine Möglichkeit, den Strombedarf des Raspberry Pi Zero W im Akku-Betrieb zu senken, ist, ihn für Messaufgaben einzuschalten und dann, in einer Messpause, auszuschalten und dadurch den Akku zu schonen. Die Einsparung können Sie wie nachfolgend abschätzen.

Tages-Strombedarf Rasperry Pi Zero W

Bei 110 mA Strombedarf ergibt sich für einen Tag eine benötigte Kapazität von

110 mA * 24 h = 2.640 mAh = 2,64 Ah.

Das heißt, ein Akku-Pack mit vier NiMH-Akkus je 1900 mAh schaffen es nicht, den Raspberry einen ganzen Tag zu betreiben.

Tages-Strombedarf Raspberry Pi Zero W bei zyklischer Einschaltung

Die meisten Messaufgaben (Umweltdaten, Bild aufnehmen oder anderes) erledigt ein IoT-Gerät oft in weniger als einer Minute. Das Hochfahren eines Raspberry Pi dauert mit dem aktuellen Raspi OS etwa 46 Sekunden. Das gezielte Herunterfahren dauert weitere 20 Sekunden. Insgesamt reichen also drei Minuten aus, um

  1. den Raspi hochzufahren,
  2. eine Mess- oder Beobachtungsaufgabe zu lösen und die Daten über das Internet zu übertragen und
  3. den Raspi herunterzufahren

Das Herunterfahren ist wichtig, damit beim Ausschalten der Stromversorgung das Dateisystem auf der SD-Karte keinen Schaden nimmt – Debian Linux, auf dem Raspi OS basiert, ist hier empfindlich.

Der Stromverbrauch des Raspi in einem solchen drei Minuten Zeitraum ist durch das Einbuchen in das WLAN etwas höher, Messungen ergaben einen Wert von etwa  120 mA.

Gehen wir davon aus, dass der Raspberry nun für drei Minuten eingeschaltet und nach drei Minuten die Stromversorgung für weitere acht Minuten gekappt wird, so ergibt sich für einen Zyklus von nun 11 Minuten eine deutlich niedrigerer mittlerer Strombedarf. Hinzu kommt allerdings der Strombedarf einer kleinen elektronischen Schaltung, die das Ein- und Ausschalten steuert. Die Schaltung hat einen Bedarf von 9 mA. Damit ergibt sich für einen Zyklus von 11 Minuten eine benötigte Kapazität von

3 min * (120 mA + 9 mA) + 8 min * (0 mA + 9 mA) =

387 mAmin + 72 mAmin = 459 mAmin * 1Ah / (1000 mA * 60 min) = 0,00765 Ah

Am Tag ergibt sich damit eine benötigte Kapazität von

0,00765 * (24 h * 60 min / 11 min) = 1 Ah

Das ist nur etwas mehr als ein Drittel des „ungeschalteten“ Verbrauchs von 2,64 Ah.

Realisierung

Design Entscheidungen für den Akku-Betrieb

Es liegt nahe, für eine solche Aufgabenstellung eine Mikroprozessor-Lösung z.B. mit dem AtTiny85 einzusetzen. Das würde die Möglichkeit bieten, die Schaltzeit dynamisch zu verkürzen und weitere Reduzierung des Verbrauchs zu erreichen. Davon sehen wir allerdings im ersten Schritt ab. Ziel war, eine robuste, einfache und leicht verständliche Lösung bereitzustellen. Daher setzen wir auf einen preiswerternTimerbaustein, den NE555. Die Schaltung ist eine leicht modifizierte Standard-Beschaltung des NE555 und hält keine Überraschungen bereit. Das Einschalten des Raspberry übernimmt ein Leistungs-MOSFET IRL3034.

Elektronik

Die Schaltung lässt sich einfach auf einer Lochraster-Platine oder einem Steckbrett aufbauen.

Schaltplan zeitgesteuerte Versorgung des Raspberry Pi Zero für den Akku-Betrieb

Abb.1: Schaltplan

Aufbau der Energiemanagment Schaltung mit dem NE555 auf einem Breadboard für den Akku-Betrieb

Abb. 2: Aufbau auf einem Breadboard

Eine astabile Kippstufe (Multivibrator) mit dem Timer NE555 ist das Herzstück der Schaltung. Die Kombination von zwei Dioden und den Widerständen R1 und R2 ermöglicht unterschiedliche Schaltzeiten mit einer langen Aus- und einer kürzeren Ein-Phase. Der Ladekondensator C2 erhält seinen Ladestrom über die Widerstände R2 und R3. Während der Ladezeit ist der Ausgang des NE555 positiv, der MOSFET schaltet die Minusleitung durch und die Betriebsspannung liegt am Raspberry an. Erreicht die Spannung am Ladekondensator C1 etwa zwei Drittel der Betriebsschaltung, schaltet der Ausgang des NE555 am Pin 3 auf Masse, ebenso schaltet Pin 7 auf Masse und entlädt somit der Kondensator langsam über R1. Während der Entladezeit bleibt der Raspberry stromlos. Die LEDs dienen lediglich dazu, den Zustand der Schaltung anzuzeigen – Sie können sie auch inkl. der Vorwiderstände weglassen.

Programmierung für den Akku-Betrieb

Sie brauchen noch einen Prozess, der das Herunterfahren abschließt, bevor die Elektronik den Strom ausschaltet.

Dazu tragen Sie in CRON einen Prozess ein, der das Ausschalten übernimmt. Für Wartungsaufgaben ist das jedoch nachteilig. Also ist in dem Ausschalteprozess ein Mechanismus implementiert, der das Ausschalten steuerbar macht: Wenn es im Verzeichnis /boot eine Datei autoshutdown gibt, schaltet das Programm den Raspi ausg. Wenn es die Datei nicht gibt, bleibt der Raspi an. Um das Verhalten des Raspis nun zu steuern, können Sie die SD-Karte in Ihren Rechner stecken (das Verzeichnis /boot ist als FAT-Partition sichtbar) und mit einem Texteditor die Datei anlegen oder sie umbenennen.

Den Cron-Eintrag erzeugen Sie mit

crontab -e

Dann in CRON einfügen:

@reboot sleep 120; sudo /home/pi/autoshutdown.sh

Das Programm autoshutdown.sh erzeugen Sie mit dem Editor nano im Verzeichnis /home/pi

nano autoshutdown.sh

Das Programm:

#!/bin/bash

# Herunterfahren aus cron

# erwartet Datei autoshutdown in /boot

# wenn vorhanden: herunterfahren, sonst: nicht

# 12.09.2020 Claus Brell

if [ ! -f /boot/autoshutdown ]; then

    echo "Keine Datei /boot/autoshutdown gefunden"

fi

if [ -f /boot/autoshutdown ]; then

    echo "Ok: /boot/autoshutdown gefunden"

    sleep 1

    echo "automatisches Herunterfahren"

    sleep 1

    /sbin/shutdown now 

fi

Testergebnisse

Vortest

Über drei Tage durchlitten die Schaltung und der Raspi den Test des Akku-Betrieb. Mit einem Monitor wurde stichprobenartig kontrolliert, ob der Raspi vor dem Ausschalten herunterfährt. Das funktioniert gut, mit noch deutlichem Zeitpuffer.

Labortest

Im Labortest wurde das Verhalten mit zwei Akkutypen geprüft. Es kamen jeweils vier AA NiMH-Akkus mit einer Kapazität von 2500 mAh und vier NiMH-Akkus AAA mit einer Kapazität von 1000mAh zum Einsatz. Die Akkus wurden vor jederm Messdurchlauf jeweils vollgeladen (Ladegerät Ansmann). Mit einem vollen Akkusatz wurde einmal die Laufzeit ohne die Energiemanagement-Schaltung und einmal mit Energiemanagement-Schaltung gemessen.

Um ein deutlicheres Ergebnis zu erzielen, wurden C=1000muF und R1=220kOhm gesetzt. Ein Gesamtzyklus beträgt mit dieser Diemensionierung etwa 20 Minuten. Die An-Zeit ist etwa drei Minuten, so dass der Raspberry jeweils nach zwei Minuten sauber herunterfährt.

Energie Management Laufzeit
AAA 2500mAh ohne 23:33 h
AAA 2500mAh mit nicht gemessen
AA 1000mAh ohne 06:00 h
AA 1000mAh mit 23:56 h

Es scheint also möglich, einer Raspberry als IoT-Gerät fast 24 Stunden Stunden mit einem kleinen AAA-Akkusatz betreiben zu können. Bemerkenswert ist, dass ohne Energiemanagement die Laufzeit des Akkusatzes mit 1000mAh deutlich weniger als 1/2,5*Laufzeit des Akkusatzes mit 2500mAh (erwartet: etwa 09:20 h) beträgt. Vermutlich liefern die kleinen Akkus, wenn sie schon etwas erschöpft sind, nicht mehr die hohen Stromspitzen, die selbst der Raspberry Zero beim Hochfahren bzw. bei der WLAN-Übertragung benötigt.

Feldtest

Der Feldtest findet derzeit draußen auf einem Garagendach statt. Mit einem sechs Volt / fünf Watt Solarpanel wird über eine 3A Schutzdiode ein 1,2Ah Bleigel-Akku geladen. Über zwei 1 A Schutzdioden, die die Akkusppannung auf ein für den Raspberry erträgliches Maß (max. 6,5 Volt) reduzieren, ist die Energiemanagement-Schaltung und der Raspberry Pi Zero angeschlossen. Erwartet wird, dass der Akku ohne Lademanagement (wegen des geringen Ladestroms des Solarpanels) den energiegemanageten Raspberry ohne Unterbrechung betreibt. Der Feldtest wird über den ganzen Winter 20 / 21 erfolgen.

 

Fazit Zeitsteuerung für den Akku-Betrieb

Mit dem hier vorgestellten Verfahren ist es möglich, eine deutliche Strombedarfsreduzierung bei IoT-Projekten mit dem Raspberry Pi zu erreichen. Der Aufwand für die Variante mit Steckbrett beträgt etwa 2 Stunden. Die Bauteile kosten nur wenige Euro. Im Akku-Betrieb wird eine Raspberry fast drei mal so lange laufen wie ohne die Schaltung.

Quellen (und weiterlesen)

Coole Raspberry Pi Projekte im Wirtschaftsinformatik Studium

Raspberry Pi Lehrerworkshop

Raspberry Pi Grundsystem aufsetzen

Raspberrry Pi SD-Karte schützen

Ein paar Infos zum Timer-IC NE555

Datenblatt NE555

Datenblatt IRLB3034

Bezugsquelle NE555

Bezugsquelle IRLB3034

Solarbetrieb Test für Raspberry Pi mit vs. ohne Akku

 

 

Teile diesen Beitrag.

Schreibe einen Kommentar

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