MicroPython

MicroPython: Watchdog-Timer (WDT)

Ein Watchdog-Timer (WDT) ist ein interner Countdown-Timer in Mikrocontrollern, der einen Reset auslöst, wenn er nicht rechtzeitig zurückgesetzt wird. Er sorgt für einen automatischen Neustart bei Systemfehlern, insbesondere in unbeaufsichtigten Anwendungen. In MicroPython kann der WDT mit einem Timeout von bis zu 8333 ms konfiguriert werden und muss regelmäßig „gefüttert“ werden, um einen Reset zu vermeiden. Der WDT kann nicht deaktiviert werden und erkennt nicht, ob ein Programm normal beendet wurde.


Raspberry Pi als Logging-Modul für einen Mikrocontroller

Ich hatte noch einen älteren Raspberry Pi herumliegen und wollte ihn sinnvoll weiterverwenden. Dabei bin ich auf die Idee gekommen, ihn nicht als eigenständiges System einzusetzen, sondern eher als eine Art Erweiterungsmodul für einen beliebigen Mikrocontroller.

Schon länger interessiere ich mich für das Logging von Sensordaten. Mikrocontroller stoßen dabei schnell an ihre Grenzen: begrenzter Speicher, meist keine sauber geführte Uhrzeit und nur eingeschränkte Möglichkeiten zur späteren Auswertung der Daten. Genau hier kann ein Raspberry Pi ins Spiel kommen und diese Aufgaben übernehmen.

Aus dieser Idee heraus sind schließlich zwei Implentierungen entstanden.

Wichtig dabei: Beide Projekte sind eher als funktionale Beispiele zu verstehen und nicht als fertige, produktionsreife Lösung. Sie zeigen aber gut, wie flexibel sich ein Raspberry Pi als Ergänzung zu Mikrocontrollern einsetzen lässt.

Logging mit journald

Im ersten Ansatz habe ich das integrierte Linux-Logging-System „journald“ genutzt, um die Daten strukturiert zu speichern und später auswerten zu können.

Logging mit Datenbank und Weboberfläche

Im zweiten Ansatz ging ich einen Schritt weiter: Die Sensordaten werden in einer Datenbank abgelegt und über eine Weboberfläche visualisiert, die übers Netzwerk erreichbar ist. Der Raspberry Pi übernimmt dabei nicht nur das Logging, sondern auch gleich die tabellarische Darstellung der Daten.


Elektronik-Set Timer Edition

NE555 als akustischer Signalgeber

Natürlich ist der N555 kein Tongenerator. Es gibt tatsächlich ein paar Anwendungsfälle, die man dem Bereich Akustik zuordnen kann. Fairerweise muss man sagen, dass das nichts mit Musik zu tun hat, sondern ausgangsseitig nur ein Summer oder Lautsprecher statt einer LED verwendet wird. Die Frage ist trotzdem, welche Töne man einem NE555 entlocken kann.

 


MicroPython

MicroPython: Laufzeit messen

Die Laufzeitmessung eines Mikrocontroller-Systems wie dem Raspberry Pi Pico ist wichtig für sicherheitskritische Anwendungen, Performance-Optimierung, Stromverbrauchsreduzierung und den Vergleich von Implementierungen. Die Messung erfolgt mit einem Timer und ermöglicht die Ermittlung der Laufzeit im Programmcode. Ein Beispiel zeigt, wie die Laufzeit durch einen Millisekundenzähler erfasst wird.


Elektronik-Set Timer Edition

NE555 als monostabile Kippstufe

Didaktisch gesehen ist die monostabile Kippstufe die bevorzugte Schaltung. Allerdings ist sie aus meiner Sicht die schwerste. Allerdings stecken ein paar interessante Anwendungsfälle dahinter.