Damit der Datenlogger autonom funktioniert, verfügt er über einen per SPI angeschlossenen MicroSD-Kartenleser. Für den Nachbau zu Hause empfehlen sich kleine Breakouts, die kaum größer sind als der Kartenleser. Ob sich ein Kartenleser für den Einsatz unter den harten Bedingungen in Tansania mit hoher Temperatur und Luftfeuchtigkeit eignet, wird erst das laufende Projekt zeigen. Eine Ausweichmöglichkeit bieten Flash-Chips, die die SD-Schnittstelle emulieren. Das Auslesen der Daten gestaltet sich jedoch deutlich schwieriger als bei einer physischen Karte. Statt eines externen Kartenlesers am PC verlangt das Setup dann ein spezielles Programm zum Herunterladen der Daten.
Regelmäßig Daten zu erfassen, klingt gut, aber neben deren Auswertung interessieren ebenso die aktuellen Messwerte. Im Heimbereich fällt das leicht, da die Logger die Daten an ein zentrales System senden können. Das stellt anschließend ein Dashboard für die Anzeige bereit, konkret ein physisches Display oder eine Webseite. Ohne Netz bleibt dem Datenlogger nur, die Messwerte selbst anzuzeigen. Damit schlägt die Stunde der E-Ink-Displays: Sie behalten die Information auch im ausgeschalteten Zustand. Im tansanischen Projekt ist die endgültige Entscheidung noch nicht gefallen. Zur Auswahl stehen die günstigen Monochrome-Displays Inky Pack [5] von Pimoroni oder Alternativen [6] von Adafruit [7].
Auf die Strombilanz wirken sich die E-Ink-Displays negativ aus. Das liegt nicht so sehr an den Bildschirmen selbst, sondern daran, dass die Aufbereitung der Daten für die Anzeige sowie die Aktualisierung der Displays dauert. Ein einzelnes Messintervall verlängert sich damit um den Faktor zwei bis drei.
Drei Blöcke
Wie schon angedeutet, fiel die Entscheidung bei der Software auf Python, da letztlich die Vorteile die Nachteile überwiegen. Die Software verkörpert den Teil des Gesamtsystems, bei dem Sie am meisten Strom sparen können. Allein der Austausch der tabellarischen Aufbereitung aus Abbildung 3 durch eine terminalartige Alternative verlängerte zum Beispiel die prognostizierte Laufzeit von 10 auf 18 Wochen.
Strukturell betrachtet gibt es drei Verarbeitungsblöcke. Der erste prüft die interne Uhrzeit des Pico auf Plausibilität und aktualisiert die Systemzeit mit der Zeit der externen RTC. Erweist sich deren Uhrzeit ebenfalls als nicht plausibel, kommt die Zeit von einem Zeit-Server. Letzteres passiert nur einmal beim initialen Systemstart oder wenn die Batterien ausgefallen sind.
Der zweite Block liest die verwendeten Sensoren aus einer Konfigurationsdatei und erzeugt die passenden Softwareobjekte. Diese Flexibilität benötigt eine Anwendung zu Hause nicht, für einen breit gestreuten Einsatz mit unterschiedlichen Sensoren ist sie jedoch essenziell. Der dritte Block fragt daraufhin die einzelnen Sensoren ab und speichert die Messwerte auf der SD-Karte oder sendet sie an die Zentrale. Zu guter Letzt setzt der Pico den nächsten Aufwachzeitpunkt in der RTC und schaltet danach den Strom ab.
Fazit
Die Entwicklung eines anspruchsvollen Datenloggers für das tansanische Projekt entpuppte sich als überaus interessante Aufgabe. Für den Betrieb zu Hause können Sie bedenkenlos auf eine Spezialplatine verzichten, denn selbst auf einem Breadboard können Sie alles mit billigen Standardkomponenten und Breakouts nachbauen.
Auf der Github-Seite zum Projekt [8] finden Sie neben den Designdateien für die selbst entwickelte Platine die Software sowie diverse Links zu Tutorials und den Datenblättern der eingesetzten Sensoren. Inzwischen ist der Support für eine große Anzahl gängiger Breakouts implementiert. Für das Anbinden neuer Bausteine genügt in der Regel eine halbe Seite Python-Code. (csi)
Der Autor
Bernhard Bablok arbeitet bei der Allianz Technology SE als SAP-HR-Entwickler. Wenn er nicht Musik hört oder mit dem Rad respektive zu Fuß unterwegs ist, beschäftigt er sich mit Themen rund um Linux, Programmierung und Kleincomputer. Sie erreichen ihn unter mailto:[email protected].
Infos
- Tansania-Projekt: https://opendeved.net/programmes/ilce-in-tanzania/
- Pico-Schlafmodus: Bernhard Bablok, “Sparschwein”, RPG 10/2022, S. 72, https://www.raspi-geek.de/45786
- Alkaline Application Manual: https://data.energizer.com/pdfs/alkaline_appman.pdf
- Spannung von AA-Zellen abhängig vom Füllstand: https://en.wikipedia.org/wiki/Alkaline_battery
- Inky Pack: https://shop.pimoroni.com/products/pico-inky-pack
- Adafruit 2.13-Zoll-Mono-Display: https://adafru.it/4197
- Adafruit 1.54-Zoll-Mono-Display: https://adafru.it/4196
- Datalogger (Github-Projekt): https://github.com/bablokb/pcb-pico-datalogger
- Chronodot: https://shop.pimoroni.com/products/chronodot-ultra-precise-real-time-clock-v2-1





