Ich habe schon seit längerem nach einer Raspberry Pi USV gesucht, die meinen Anforderungen gerecht wird. Eigentlich will ich nur den zukünftigen Raspberry Pi in der Werkstatt, der demnächst für die Wetterstation und ein Bluetooth Radio zuständig sein soll, vor Stromausfall schützen. Das Problem fängt aber schon mit der Spannungversorgung an. Ich möchte gerne das 12V Netzteil nutzen, welches auch alle anderen Geräte versorgt. Zudem soll der “Energiespeicher” über einen Laderegler automatisch geladen werden.
Die Wahl ist auf die von der insolventen Firma CW2 entwickelte und mittlerweile von der RITTER Elektronik GmbH produzierte RPI USV+ (Affiliate-Link) gefallen.
Jedem Raspberry Pi Nutzer sollte bewusst sein, dass ein Stromausfall schnell zu einem schweren Fehler im Dateisystem auf der SD Karte führen kann. Vor allem wenn der Raspberry Pi als Server oder mit einer Smart Home Software wie FHEM oder openHAB betrieben wird, kann ich eine Raspberry Pi USV nur empfehlen. Es ist nicht witzig auch nach einem Stromausfall weiterhin im dunkeln zu sitzen. 🙂
Die Qual der Wahl
Es gibt unterschiedliche Ansätze mit Akkus und Batterien aber auch Lösungen mit Superkondensatoren sind teilweise zu finden. Ich habe mich wie gesagt für die RPI USV+ (Affiliate-Link) von RITTER Elektronik entschieden aber auch ein paar Kerndaten der anderen Lösungen zur Übersicht mit eingefügt. Wenn etwas fehlen oder nicht richtig sein sollte, dann meldet euch gerne! Da ich die anderen Lösungen nicht getestet habe, kann ich dazu nicht viel sagen.
Hersteller / Produkt |
Ritter RPI USV+ |
JOY-IT Strom Pi |
JOY-IT Strom Pi 2 |
SEPotronic S.USV Basic |
SEPotronic S.USV Advanced |
Nelectra Juice4Halt HV Version |
---|---|---|---|---|---|---|
Akku Laderegler | Ja | Nein | Nein | Ja | Ja | SuperCap *1 |
40 Pin I/O | Ja | Nein | Ja | Ja | Ja | Ja |
Wide-Range DC-In / Volt | Ja *2 / 5-25 Volt |
Ja / 6-36 Volt |
Ja / 6-61 Volt |
Nein / – |
Ja *2 / 7-24 Volt |
Ja *2 / 7-28 Volt |
5V USB In/Out | Ja / Nein | Ja / Ja | Ja / Ja | Nein / Nein | Nein / Nein | Nein / Nein |
*1 – Fest auf der Platine verlötet
*2 – Gleichzeitige Nutzung des Wide-Range Eingangs und einer Speicherquelle (Akkus/Superkondensator) möglich
Eine Alternative ist natürlich das Steckernetzteil oder das Hutschienen-Netzteil für den Raspberry Pi mit einer normalen USV wie der APC Back-UPS Pro 900 abzusichern. Theoretisch müsste über USB mit der passenden Linux Software auch ein Shutdown-Befehl bei Stromausfall möglich sein. Eine Raspberry Pi USV ist aber gerade für dezentrale und kleinere Projekte besser geeignet, alleine durch das einfache Handling und die verschiedensten Möglichkeiten.
Die Raspberry Pi USV (RPI USV+)
Die RPI USV+ hat einen Laderegler mit dem LiPo Akkus aufgeladen werden können. Mit dem Akku ist es dann möglich, Stromausfälle zu überbrücken oder den Raspberry Pi nach einer frei definierbaren Zeit, sicher herunterzufahren. Sehr praktisch ist auch der Wide-Range Eingang mit einem Spannungsbereich von 7 und 25 Volt. Mit diesem kann der Raspberry Pi zusätzlich zum USB Anschluss z. B. über ein 12 Volt Hutschienen-Netzteil oder einer Autobatterie betrieben werden. Theoretisch sollte der Betrieb auch mit einer Solarzelle möglich sein.
Praktischwerweise verfügt die RPI USV+ Platine über einen Schalter zum Ein- und Ausschalten des Raspberry Pi. Somit entfällt das lästige Herunterfahren über die SSH Console. Über einen Jumper auf der Unterseite kann eingestellt werden, wie sich der Raspberry Pi verhalten soll, sobald die Spannung an einem der primären Eingänge anliegt. Es stehen “automatisch starten” oder “manuell per Taster” zur Auswahl.
Nicht ganz unwichtig für den Betrieb der USV ist die leider noch etwas rudimentäre Software. Hier würde ich mir wünschen, dass die Werte für Status, Spannung und Fehler etwas einfacher für ein externes Monitoring abgefragt werden können. Die Logdatei gibt zwar schon etwas her, dazu aber später mehr. Immerhin werden direkt an der RPI USV+ über 4 LEDs Akku-Betrieb, Status Akku, Status USV und Betrieb über Primäreingang der Raspberry Pi USV angezeigt, was die Diagnose vor Ort erleichtert.
LiPo Akku
Eine wichtige Komponente einer USV ist der Akku. Ich habe mir einen 2000mAh LiPo Akku (Affiliate-Link) mit folgenden Eigenschaften gekauft.
Typ | Lithium Polymer |
Anzahl der Zellen | 1 / 1S |
Gewicht inkl. Kabel | 40 g |
Maße L x B x H | 75 x 44 x 5,5 mm |
Steckertyp | JST-SYP-2P |
Nennspannung | 3,7 V |
Ladeschlussspannung | 4,2 V |
Entladeschlussspannung | 3,0 V |
Tiefentladegrenze | 2,3 V |
Max. Ladestrom | 1C –> 2000 mA |
Max. Entladestrom | 2C –> 4000 mA |
Software
Bevor wir mit der Installation vom PIUPSMON starten, müssen die für I2C Kommunikation benötigten Pakete installiert werden.
sudo apt-get install python-smbus i2c-Tools
Danach das Raspberry Pi Configuration Tool öffnen und unter 8 Advanced Options => A6 I2C => Enable wählen. Nach einem Neustart sollte dann die I2C Kommunikation möglich sein.
sudo raspi-config
Für die Installation der Software sind nur wenige Schritte notwendig.
cd /tmp wget http://cdn-reichelt.de/documents/datenblatt/A300/PIUPSMON-0.9.zip unzip PIUPSMON-0.9.zip sudo dpkg -i piupsmon-0.9.deb
Die Konfigurationsdatei liegt unter dem folgenden Pfad.
/etc/piupsmon/piupsmon.conf
In der Konfiguration habe ich nur die Einstellung vom ShutdownTimer auf 120 geändert. Dies bewirkt, dass nachdem die Spannungsversorgung auf den Akku gewechselt hat, erst nach 120 Sekunden ein Shutdown initiiert wird.
Logging
Das Logfile ist eigentlich nur interessant wenn man die Einstellung LogLevel in der Konfiguration auf Debug gestellt hat. Der Standard Notice reicht aber für ein sehr einfaches Monitoring aus. Zu finden ist das Logfile unter dem folgenden Pfad.
/var/log/piupsmon.log
Wenn man in der Konfiguration die Einstellung LogLevel auf Debug stellt, können zusätzlich Spannung und Strom vom LiPo Akku ausgegeben werden. Im Standard würde man nur die Meldungen mit Notice also Statuswechsel und den Shutdown Timer (Zeit bis zum Shutdown) sehen. Hier ein Beispiel von einem kurzem Stromausfall mit aktivertem Debug LogLevel.
2016-08-10 16:00:52 [DEBUG] Current Status: 9 2016-08-10 16:00:52 [DEBUG] U: 4111mV, I: 252mA 2016-08-10 16:00:52 [DEBUG] Current Status: 2 2016-08-10 16:00:52 [NOTICE] Status changed from 9 (primary power,charging) to 2 (battery power) 2016-08-10 16:00:52 [DEBUG] U: 4117mV, I: 226mA 2016-08-10 16:00:52 [NOTICE] Shutdown timer: 1 / 120 2016-08-10 16:00:53 [DEBUG] Current Status: 2 2016-08-10 16:00:53 [DEBUG] U: 4117mV, I: 226mA ... 2016-08-10 16:01:02 [DEBUG] Current Status: 2 2016-08-10 16:01:02 [DEBUG] U: 4111mV, I: 226mA 2016-08-10 16:01:02 [NOTICE] Shutdown timer: 10 / 120 2016-08-10 16:01:02 [DEBUG] Current Status: 9 2016-08-10 16:01:02 [NOTICE] Status changed from 2 (battery power) to 9 (primary power,charging) 2016-08-10 16:01:02 [DEBUG] U: 4203mV, I: 226mA 2016-08-10 16:01:03 [DEBUG] Current Status: 9
Danke für den Bericht.
Dann kann ich mal vergleichen.
Ich habe mich für die S.USV Basic von https://www.s-usv.de entschieden mit einem 3000 mA Akku.
Der Support dort ist sehr gut im Forum. Und die Software hat auch sehr viele Möglichkeiten.
Müste man mal vergleichen was besser ist.
Sollten sie ihre Wetterstation installieren kann ich ihnen Weewx empfehlen.
http://rothlive.de/de/content/raspberry-pi-weewx-installieren-wetterstation-datenlogger-software-wettersoftware
Hallo Markus,
für meine Anforderung (Laderegler für LiPo Akku & Wide-Range Eingang) hätte auch die S.USV Advanced gepasst, diese ist aber doppelt so teuer wie die RPI USV+.
Kannst du mir sagen ob man bei der S.USV per CLI Befehl die aktuellen USV Werte abfragen kann?
Die Weewx Software hatte ich mir damals auch angeschaut, hatte mich dann aber für die wfrog Software entschieden. Da wfrog doch langsam in die Jahre gekommen ist, werde ich mir die Weewx Software nochmal anschauen.
Viele Grüße
Stefan
Also man kann die Werte Auslesen.
Es gibt auch Informationen zu den I2C-Registern.
http://forum.seprotronic.com/viewtopic.php?f=9&t=113
Und ein Plugin zur darstellung.
http://forum.seprotronic.com/viewtopic.php?f=14&t=163
(Nicht getestet)
Aber auch Befehle zum Auslesen.
https://www.s-usv.de/files/pdf/SUSVpi_Manual_Rev1_4_GER.pdf
https://www.s-usv.de/downloads.html
PDF Seite 25 Unten.
Aber auch so hilft jemand vom Hersteller im Forum bei technischen Fragen.
Für weewx gibt es auch noch unter https://github.com/weewx/weewx/wiki Skins.
https://github.com/mcrossley/SteelSeries-Weather-Gauges
http://sensors.geonovum.nl/weewx/gauges/
Die sehen echt gut aus muss ich mal testen wenn ich zeit habe.
Aber es gibt noch so viel zu tun.
Für die Solar Anlage wollte ich noch https://github.com/Tafkas/solarpi installiern. Ist aber bisher gescheitert.
http://solarpi.tafkas.net
Weil keiner eine gescheite Anleitung dazu hat.
Hallo Markus,
vielen Dank für die ausführliche Antwort, ich werde mir das mal anschauen.
Viele Grüße
Stefan
Moin… hast Du ne genaue Bezeichnung oder einen Link zu deinem Akku?
Grüße,
Peter
Hallo Peter,
ich habe diesen 2000mAh Lipo-Akku (Affiliate-Link) bei eBay gekauft. Alternativ gibt es auch bei EXP-TECH eine gute Auswahl.
Viele Grüße
Stefan
Hallo,
erst mal super Anleitung, Danke.
Bin Linux leihe, wenn ich /etc/piupsmon/piupsmon.conf kommt bei mir immer:
openhabian@openHABianPi:~ $ /etc/piupsmon/piupsmon.conf
bash: /etc/piupsmon/piupsmon.conf: Permission denied
Ich weiß leider nicht warum ich keine berechtigung habe für diese Datei.
Hallo Basti,
falls du noch nicht weitergekommen bist, die Datei piupsmon.conf ist eine Textdatei in der nur die Konfiguration steht. Du musst die Datei entweder über WinSCP oder über einen lokalen Texteditor wie nano öffnen.
nano /etc/piupsmon/piupsmon.conf
Viele Grüße
Stefan
Vielen Dank.
Hallo,
ich hätte es nach anleitung instaliert, aber bei der abfrage des Status erhalte ich immer
“/var/run/piupsmon.pid found, but piupsmon is not running”
und wenn ich mir dann die log ansehe mit : ~# tail /var/log/piupsmon.log
erhalte ich
2017-10-25 11:37:00 [NOTICE] piupsmon started
2017-10-25 11:37:02 [ERROR] could not communicate with piupsmon!
Auch bei der Abfrage mit: i2cdetect -y 1
wird mir nichts angezeigt:
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: — — — — — — — — — — — — —
10: — — — — — — — — — — — — — — — —
20: — — — — — — — — — — — — — — — —
30: — — — — — — — — — — — — — — — —
40: — — — — — — — — — — — — — — — —
50: — — — — — — — — — — — — — — — —
60: — — — — — — — — — — — — — — — —
70: — — — — — — — —
Hat vieleicht jemand eine Idee wo sich der Fehlertaufel eingeschlichen haben könnte?
Danke im Voraus
Jürgen
Hallo Jürgen,
ich gehe mal davon aus, dass du I2C auch über rasp-config aktiviert hast?! Blinken die LEDs den wenigstens? Ich weiß es aktuell nicht mehr genau, aber es müssen zwingend Akku und/oder Spannungsquelle an der RPI USV angeschlossen sein. Wenn alles nicht hilft, hast du vielleicht wirklich eine fehlerhafte RPI USV erwischt?! Eine defekte Platine hatte ich auch schon … die wurde aber ohne Probleme bei Reichelt durchgetauscht. Ich hoffe du kannst dein Problem mit der RPI USV lösen!
Viele Grüße
Stefan
Hallo Stefan,
nach 8(!) Jahren, wie ist denn nun Deine Langzeiterfahrung? Ich bn auf der Suche nach einr von Dir beschriebenen Lösung und habe mir für teuer Geld den StromPi3 besorgt, mit dem ich aber nicht zurecht komme.
Also, irgendetwas berichtenswertes?