Startseite
  • Registrieren

Beitragsseiten

susv1Gefreut hat es mich, als mich die Firma Seprotronic anschrieb, ob ich nicht als Raspberry Pi Benutzer der ersten Stunde und Betreiber der Seite raspiprojekt.de den Prototypen der S.USV ausgiebig testen möchte. Natürlich habe ich da gerne zugesagt, zumal es genug Zusatzmodule für den Raspberry Pi gibt, welche die Entwickler vielleicht gut fanden, aber die an den Wünschen der Nutzer vorbeigingen.

Also wartete ich gespannt auf den mir versprochenen C-Prototypen der S.USV advanced. Die S.USV, wohlgemerkt ein C-Prototyp, kam in einem soliden professionell gestalteten Karton, der, wenn er nicht zu klein wäre, auch ohne den Polsterumschlag den Postweg gut überstanden hätte. Aber keine Angst, ich beschreibe nun weder das Auspacken der Teile, noch habe ich eines der geliebten „unpacking“-Videos veröffentlicht!


Zu Testzwecken erhielt ich das USV-Modul, ein Befestigungskit, einen Akku mit 300mAh sowie einen Akku mit 3Ah. Zum Lieferumfang der Kaufversionen sollen sowohl bei der S.USV basic als auch bei der S.USV advanced das Modul selbst, das Befestigungskit und der 300mAh-Akku gehören. Optional soll ein zusätzlicher 3Ah Akku und ein Adapter für ältere Raspberry Pi Modelle erhältlich sein.
Das Modul der S.USV advanced ist zusätzlich mit einem Spannungsregler ausgestattet, der es erlaubt, den Raspberry Pi bei Bedarf über das Modul mit Spannungen von 7 bis 24V zu versorgen, ansonsten sind beide Module baugleich und HAT-konform. Durch das Befestigungskit lassen sich Raspberry Pi und S.USV sehr stabil zusammenfügen.
Laut Produktbeschreibung soll die S.USV folgendes bieten:

  • Plug & Play
  • Laden der benötigten Module über ID EEPROM
  • ansprechbar über I²C-Schnittstelle
  • Ein- und Ausschalten über Tasten
  • Echtzeituhr
  • Akkumanagement und -Monitoring
  • Betrieb mit Akku
  • Betrieb mit externer Spannungsversorgung von 7 bis 24V (nur S.USV advanced)
  • kompatibel mit Raspberry Pi A+, B+ und 2B, mit Adapter auch mit Rapberry Pi A und B

 

In annähernd der Reihenfolge habe ich dann auch getestet. Für die Testphase stand mir telefonisch ein kompetenter Mitarbeiter der Firma Seprotronic zur Verfügung, der mir nicht nur Fragen beantworten konnte, sondern auch meine Vorschläge und Anmerkungen gleich mit in die Teambesprechungen nahm. Da ich alle Modelle des Raspberry Pi durchgetestet habe und die S.USV mit allen ohne Besonderheiten funktionierte, erwähne ich im Weiteren keine bestimmten Modelle, es sei denn es gibt Unterschiede die zu beachten sind. 


 

Plug & Play und ID EEPROM

Nimmt man den Begriff wörtlich und steckt das Modul auf, schließt den Akku an und steckt das Netzteil ein, beginnt die S.USV tatsächlich Ihren Dienst zu verrichten. Die LEDs zeigen den Zustand des Modules als auch des Akkus an. Das ist gut so, denn es wird angezeigt, dass der Akku noch etwas Zeit benötigt, damit alles richtig funktioniert. Irgendwo muss der „Saft“ bei Stromausfall ja herkommen. Nachdem die Anzeigen sagen, dass der Akku soweit ist, lasse ich einfach mal den Strom ausfallen und siehe da, der Raspberry Pi läuft weiter und läuft und läuft und … Da war doch was? Genau irgendwann müsste er ja mal runterfahren, aber das muss dem Teil ja auch gesagt werden. Der C-Prototyp der S.USV hat noch keinen fertig programmierten ID EEPROM, der zumindest dem System sagen könnte, welche Treiber geladen werden sollen und was eigentlich auf dem Raspberry Pi klemmt. Dazu hatte ich aber von der Firma eine ausführliche Beschreibung bekommen, was manuell zu tun ist. Mit den Modellen vor dem B+ geht das sowieso nicht automatisch, weil diese ja bereits bei Pin 26 aufhören und die Abfrage über Pin27 und 28 erfolgt. Also I²C-Modul manuell laden und System mit i2cdetect abfragen ergibt, dass auf 2 Adressen Geräte gefunden werden. Einmal das Modul selbst und dann ist da ja noch die Echtzeituhr. Das reicht natürlich noch nicht, um irgendwas am Raspberry Pi auszurichten. Noch kann ich an den Tasten drücken oder die Stromversorgung kappen, es passiert nichts. Der ID EEPROM wird in der finalen Version auch nur die I²C-Treiber laden und vielleicht noch die Uhr ins System bringen. Für die Software ist und bleibt der User in der Verantwortung. Als Software steht ein deb-Paket zur Verfügung, das sich einfach über den Paketmanager installieren lässt. Auch dazu gibt es eine ausführliche Anleitung vom Hersteller. Es werden ein Dienst (susvd), der die Steuerung übernimmt und Daten bereitstellen kann und ein Client (susv), der Daten abrufen und auch an den Dienst übergeben kann, installiert. Bei der Installation kann man bereits festlegen, ob man den Dienst beim Hochfahren automatisch starten lassen möchte oder nicht. Diese Einstellungen lassen sich jederzeit über den Client oder die Konfigurationsdatei ändern. Tatsächlich lässt sich nun der Raspberry Pi mit den Tasten auf der S.USV neustarten, ausschalten und auch wieder einschalten. Sobald der Strom ausfällt, fährt der Raspberry Pi automatisch runter. Dafür, dass das alles so funktioniert sorgt ein Mikroprozessor vom Typ Atmega8A der die Geschehnisse auf dem Board überwacht und dies über die I²C-Schnittstelle weitergibt. Der ständig laufende Dienst susvd verursacht beim verwendeten Betriebssystem Raspbian kaum messbar weniger als 1% Prozessorlast. 


 

Echtzeituhr

Die Echtzeituhr ist eine gute Zugabe, vor allem, wenn man aus den verschiedensten Gründen den Raspberry Pi nicht mit einem Netzwerk verbunden hat. Dies kann z.B. im Auto, an einer Solar- oder Windkraftanlage oder auch im Schaltschrank so sein. Bei einem Neustart wird die Uhr des Raspberry Pi wieder gestellt und alles ist in Ordnung. Als RTC kommt eine DS1308 zum Einsatz. Leider ist diese eher durch ihre Gangabweichung bekannt, reicht aber für die meisten Anwendungsfälle aus. Zudem kann man auch softwareseitig einiges tun, um die Abweichung zu reduzieren. Die Entwickler prüfen aktuell, ob das Leiterplattendesign es erlaubt, eine bedeutend genauere DS3231 zu verwenden.
Akkumanagement- und Monitoring
Der Atmega8A sorgt auch für die gute Behandlung der verwendeten Akkus. Er erkennt Kapazität und Ladezustand des verwendeten Akkus. Die Beobachtung und Auswertung des Akkuzustandes läuft über die im Mikroprozessor gespeicherte Firmware, die aktualisierbar ist und der Community in der Endversion nach jetzigem Stand als open source zur Verfügung gestellt werden soll. Das eröffnet natürlich für das gesamte Modul Möglichkeiten der weiteren Anpassung, nicht nur im Akkumanagement. Der Mikroprozessor gibt alle erfassten Werte über die I²C-Schnittstelle weiter und nimmt Werte entgegen, so dass es auch über die Software möglich ist in das Management einzugreifen. Es lassen sich z.B. Ladezustand, Stromentnahme und aktuelle Spannung über den Client abfragen.
Eine erwähnenswerte Funktion des Akkumanagements ist es, die Ladefunktion über den Client komplett auszuschalten. Dadurch könnten als „Notstromquelle“ auch Batterien verwendet werden. Dies ist sinnvoll möglich, weil sobald die Stromversorgung auf normalem Wege läuft, nur wenige µA Strom aus den Batterien gezogen werden.
Meine Idee, über das Akkumanagement auch verschiedene Ladeströme einzustellen zu können, wurde gehört. Nach anfänglichen Überlegungen die Ladeströme über Jumper oder Schalter manuell einstellbar zu machen, hat das Argument, dass die S.USV nicht unbedingt das einzige Modul ist und unter Umständen schlecht zugänglich sein kann gezogen und es wird zusätzlicher Aufwand betrieben, um das per Software regeln zu können. Noch vor Abschluss dieses Berichts erhielt ich die Information, dass sich bei der Testschaltung die Ladeströme von 300, 500 und 1000mA nun über den Client einstellen lassen.
Die Anzeige und Änderung aller Werte über den Client funktionierte auf der Konsole ohne Probleme. Ein Webinterface bzw. eine App war zum Zeitpunkt des Tests noch nicht verfügbar, sollte jedoch keine Herausforderung sein, da die Werte ja zur Verfügung stehen.



Betrieb mit Akku und externer Stromversorgung

Von dem standardmäßig verwendeten 300mA-Akku kann man nicht erwarten, dass er längere Zeit den Raspberry Pi versorgt, deswegen fährt der Raspberry Pi nach wenigen Sekunden ohne Stromversorgung automatisch runter und, sobald der Strom wieder da ist, hoch. Das kann man dann natürlich nicht Akkubetrieb nennen. Über den Client ist es jedoch möglich, die Zeit, bis der Raspberry Pi runter fährt, einzustellen. Diese Zeit versucht der Akku den Betrieb des Raspberry Pi aufrecht zu erhalten. Sinkt der Ladezustand jedoch unter einen definierten Wert, greift das Akkumanagement und der Raspberry Pi wird heruntergefahren, um den Akku nicht zu zerstören. Im Test lief ein nur mit einem Netzwerkkabel verbundener Raspberry PI 2 Model B und einem gemessenen Stromverbrauch von ca. 400mA mit dem 300mAh Akku trotzdem gute 30 Minuten weiter.
Was beim 3Ah-Akku auffiel, war die enorm lange Zeit, bis die Ladezustandsanzeige der S.USV die vollständige Ladung des Akkus anzeigte. Kein Wunder, denn der gemessene Ladestrom betrug 95mA. Eine Nachfrage bestätigt diesen Wert, denn der Ladestrom ist beim Prototyp hardwaremäßig auf 100mA begrenzt. Wie gut, dass ich nicht meinen 12Ah Modellakku benutzt habe! Das war letztendlich auch der Auslöser für die Idee mit dem einstellbaren Ladestrom. 1A sollte ausreichend sein, um z.B. Akkus zu laden, die die Nachtphase einer Solarversorgung überbrücken sollen. Bei 100mA würde das wohl eher schlecht was werden. Laut letzten Informationen ist nun der minimal einstellbare Ladestrom 300mA. Der 3Ah-Akku ließ jedenfalls beim ersten Test den Raspberry Pi A+ gute 7 Stunden laufen, bei knapp 200 mA gemessenem Verbrauch ist das auch keine Herausforderung. Was mich dann doch anfänglich etwas wunderte, waren die beinahe 9 Stunden des Raspberry Pi B+ bei 300mA gemessenem Verbrauch. Wenn man jedoch berücksichtigt, dass ein Lithium-Akku erst nach ein paar Ladungen seine volle Kapazität erreicht, ist das ganze gar nicht mehr verwunderlich. In einem erneuten Test mit den Raspberry A+ lief dieser dann auch 14 Stunden, bis dass Akkumanagement dem Treiben ein Ende setzte.
Die Laufzeiten sind natürlich abhängig von der angeschlossenen Peripherie. Niemand kann ernsthaft erwarten, dass so eine USV ein NAS am Leben erhält. Aber versuchen kann man es ja. Zumindest mit einer älteren externen Festplatte, die ohne die Einstellungen der USB-Versorgung auf 1,2 A mit ihren 700mA Stromverbrauch gar nicht am Raspberry Pi 2 Model B funktionieren würde. Normalerweise hätte die S.USV das wegstecken müssen, da sie insgesamt 2,5A liefern kann. Das klappte leider gar nicht. Bei Wegfall der Stromversorgung ging sofort alles aus, selbst die USV. Die Meldung an das Entwicklerteam sorgte natürlich für einige Aufregung. Änderungen in der Firmware konnten keine Verbesserung bringen, aber letztendlich wurden der verwendete Spannungskonverter und seine Ansteuerung als Ursache identifiziert. Der Spannungskonverter sollte mit einem „Softstart“ den Akku schonen. Das bedeutet der Akku sollte stufenweise bis zur vollen Entnahme belastet werden, das hat die Festplatte jedoch wenig interessiert. Leider war der „Softstart“ hardwareseitig implementiert. Nach 2 Tagen Entwicklung war dieses Problem mit einer Änderung der Hardware des Prototyps gelöst.
Der Betrieb mit einer externen Spannungsversorgung gestaltete sich dafür absolut problemlos. Am Labornetzteil konnte ich schnell oder langsam die Spannungen zwischen 7 und 24V wechseln. Die S.USV lieferte immer brav ihre 5,1V, egal was noch so am Raspberry Pi dran hing. Selbst 15V Rechteckspannung wurde geschluckt. Erst bei unter 20Hz merkte das Management an, dass ich evtl. mal eine konstantere Spannung anlegen sollte. Auch dieses Verhalten ist klar, der Dienst fragt standardmäßig jede Sekunde den Zustand ab und findet dann, umso niedriger die Frequenz wird, immer öfter mal eine Stelle mit 0V am Eingang der externen Spannung. Diese Abtastrate ist über den Client einstellbar und kann je nach Bedarf geändert werden. Ein kurzer Test an der Autobatterie bei mehrfachem Starten konnte die S.USV ebenfalls nicht aus der Ruhe bringen. An einem Solarpanel konnte ich sogar auf einen Laderegler verzichten. Allerdings wurde der 3Ah-Akku nie wirklich voll, sodass das ein Raspberry Pi B Rev. 2 trotz 10 Stunden Sonne Nachts eine Pause einlegte, kein Wunder bei 100mA Ladestrom. Aber wie gesagt, das wird gefixt!



Kompatibilität

Die S.USV lief mit allen Raspberry Pi ohne Probleme. Die Versionen A und B benötigen einen Adapter. In Ermangelung eines solchen habe ich das Modul einfach mit einer 26-poligen Buchsenleiste mit langen Pins etwas höher gesetzt. Seprotronic bietet dazu einen Adapter, der das ganze etwas stabiler gestaltet.
Zusätzlich habe ich die S.USV mit verschiedenen Erweiterungen getestet. Wegen des verwendeten I²C-Busses lag dort mein Schwerpunkt. Erweiterungen wie das DVK512-Entwicklerboard mit eigener I²C Uhr, die PiFace Shim RTC, ein noname I²C Display sowie einige selbstgebaute Module wie ein I²C Rangeextender mit dem P82B715 oder ein Portextender mit dem MCP23017 konnten problemlos betrieben werden. In der finalen Version soll die I²C-Adresse der S.USV einstellbar sein, so dass es auch mit anderen Erweiterungen die den I²C-Bus nutzen keine Konflikte geben sollte.
Erweiterungen, welche die Pins des I²C-Busses für andere Zwecke nutzen, sind nicht mit der S.USV kompatibel, weil die Fremdsignale auf dem Bus die Datenübertragung stören. Inzwischen haben aber die meisten Entwickler begriffen, dass ihre Erweiterungen nicht die einzigen sind und halten die Busse möglichst frei oder nutzen sie als solche.
HAT-konforme Erweiterungen lassen sich problemlos stapeln, man muss sich nur entscheiden, welche man oben haben möchte. Ein Display macht die Entscheidung leicht, da es meist oben liegen sollte. Da kommt dann aber auch ein kleines Luxusproblem zum Vorschein. Die Taster zum Hoch- und Runterfahren liegen etwas ungünstig auf dem Board. Sowohl beim Einbau in ein Gehäuse, aber auch bei einem darüber liegenden HAT-Modul ist die Bedienung kompliziert. Auf dem Prototypen sind Lötaugen vorgesehen, um die Schalter nach außen zu legen. Wären diese im Rastermaß 2,54mm jeweils paarweise zusammen, könnte man dort Stiftleisten einlöten und handelsübliche konfektionierte Schalter, wie z.B. den eines PC‘s nutzen. Auch diesen Hinweis haben die Entwickler wohlwollend zur Kenntnis genommen.



Fazit

susv2Selbst der Prototyp im C-Stadium hat mich von der Funktion und vom Design überzeugt. Wenn in der Endversion die angesprochenen Mankos beseitigt sind, wovon ich fest ausgehe, sollte dies eine Erweiterung sein, welche wirklich so gut wie überall eingesetzt werden kann. Ich hoffe, dass ich mit dem Test etwas helfen konnte. Die S.USV wird ab dem 10.10.2015 im Handel verfügbar sein.

Warenkorb

0 Produkte - 0,00 EUR
Zum Warenkorb

Deutsches Raspberry Pi Forum

Neue Produkte

miniUSB Verbindungskabel 15cm (Artikelnummer: MINIUSB15CM)
0,65 EUR
Raspberry Pi 3 Modell B+ (Artikelnummer: RASPI3BPLUS)
36,50 EUR
Acrylgehäuse NanoPi NEO AIR (Artikelnummer: GEHNANOPINEOAIR)
5,50 EUR
3D Druck Gehäuse NanoPi NEO (Artikelnummer: GEHNANOPINEO)
4,50 EUR
NanoHat Proto (Artikelnummer: NANOHATPROTO)
7,45 EUR