Raspberry Pi Pico im Stand-alone-Betrieb
„Stand-alone-Betrieb“ bedeutet, dass ein System oder eine Anwendung unabhängig von anderen Systemen oder Netzwerken funktioniert. Der Raspberry Pi Pico ist dann eine eigenständige Einheit, die keine Verbindung zu anderen Geräten oder Diensten benötigt, um zu arbeiten.
Stand-alone-Betrieb bedeutet für einen Raspberry Pi Pico, dass er ohne Verbindung zu einem Host-Computer funktioniert.
Die Frage ist, was ist zu tun, damit der Raspberry Pi Pico ohne Probleme im Stand-alone-Betrieb funktioniert?
Folgende Anforderungen stellen wir dabei an das System:
- Es ist nicht vorgesehen, dass es einen Benutzer gibt, der den Raspberry Pi Pico auf Funktion überwacht.
- Die Stromversorgung erfolgt nicht über einen stabilen USB-Anschluss eines Computers, sondern durch eine Batterie oder ein Netzteil.
- Die Programmierung muss so erfolgen, dass im Fehlerfall ein Neustart ausgelöst wird und das System in einen stabilen Betriebszustand zurückkehren kann.
Übersicht
- Stromversorgung im Stand-alone-Betrieb
- Temperaturentwicklung überwachen und begrenzen
- Software-Architektur mit Fehlerbehandlung
- Automatischer Start des Programmcodes
Stromversorgung im Stand-alone-Betrieb
Die Stromversorgung ist die kritischste Komponente im Stand-alone-Betrieb. Sie unterscheidet sich meist erheblich von der Stromversorgung im Entwicklungsbetrieb.
Art der Stromversorgung
Wenn man den Raspberry Pi Pico programmiert und einen Aufbau testet, dann ist der Pico per USB-Kabel mit einem Computer verbunden und wird auch über das USB-Kabel mit Strom versorgt. Wenn sich der Pico im Stand-alone-Betrieb befindet, dann ist die Stromversorgung kein Computer mehr, sondern vielleicht ein USB-Netzteil, eine Batterie oder etwas anderes.
Stromverbrauch des Aufbaus
Im Batterie-Betrieb ist der Stromverbrauch des Aufbaus zu ermitteln. Denn es geht dabei nicht nur um die Batterie-Laufzeit, sondern auch darum die Strombelastbarkeit der Batterie nicht zu überschreiten.
- Raspberry Pi Pico: Stromverbrauch und Stromkosten
- Raspberry Pi Pico W: Stromverbrauch und Stromkosten
Stromverbrauch reduzieren
Wenn ein Raspberry Pi Pico ohne Host-Computer laufen soll und die Stromversorgung noch nicht geklärt ist, dann kann man sich vielleicht noch darüber Gedanken machen, wie man den Stromverbrauch des Aufbaus reduzieren kann. Eventuell ergeben sich dann mehr Alternativen, wie die Stromversorgung realisiert werden kann. Beispielsweise auch der Batterie-Betrieb.
Strombelastbarkeit
Zu bedenken ist immer, dass die Spannung jeder Stromversorgung unter Last sinkt und instabil werden kann. Nicht jedes Mikrocontroller-System kommt damit klar.
Die maximale Ausgangsleistung bzw. Strombelastbarkeit sollte großzügig dimensioniert sein. Es sollte mindestens 20 bis 30 Prozent über dem maximalen Strombedarf liegen, der im Betrieb auftreten kann. Wenn der Stromverbrauch im laufenden Betrieb 30 mA und in der Spitze 40 mA beträgt, dann sollte man in der Praxis mit 50 besser 60 mA Nennstrom rechnen. Und dass muss die Stromversorgung in Form eines Netzteils oder Batterien liefern können, damit typische Betriebs- und Umgebungsschwankungen locker abgefangen werden können und nicht die Stromversorgung zum Problem wird.
Temperaturentwicklung überwachen und begrenzen
Elektronische Bauteile entwickeln im laufenden Betrieb Wärme. Das ist kein Problem, solange die Temperatur in und um die Bauteile nicht zu hoch wird. Denn hohe Temperaturen verkürzen die Lebensdauer von Halbleitern, beschleunigen die Alterung von Elektrolyt-Kondensatoren und können Timing-Probleme verursachen. Es gilt also eine übermäßige Wärmeentwicklung zum Beispiel in Gehäusen zu vermeiden.
Effiziente Bauteile verwenden
Bei der Auswahl der Bauteile sollte man deren Effizienz berücksichtigen. Das bezieht sich insbesondere auch auf die Stromversorgung und datenverarbeitende Bauteile.
Temperatur überwachen
Prozessoren verfügen oft über On-Chip- oder On-Board-Temperatursensoren, die man nutzen kann, um eine zu hohe Temperatur softwareseitig zu erkennen, um die Leistungsaufnahme und Wärmeentwicklung zu begrenzen und zu reduzieren (Thermal Throttling).
Leistungsaufnahme minimieren
Wenn Geräte nicht dauernd etwas tun müssen, dann kann man mit Energiespar-Modi arbeiten, in denen die Leistungsaufnahme auf das notwendigste reduziert wird.
Taktfrequenz reduzieren
Die Taktfrequenz ist oft ein Maß für die Verarbeitungsgeschwindigkeit. Sie hat aber auch Einfluss auf den Stromverbrauch und damit die Wärme- und Temperaturentwicklung. Je geringer die Taktfrequenz, desto geringer der Stromverbrauch.
Wärmeleitung und -verteilung
Luft ist ein guter Wärmeleiter, der sich leicht bewegen lässt. Durch mehr Platz im Gehäuse kann sich auch die Wärme besser verteilen. Durch Öffnungen kann ein Temperaturaustausch stattfinden.
Aktive Kühlung
Wenn eine passive Kühlung mit und ohne Kühlkörper nicht reicht, dann muss man mit Lüftern arbeiten, die kalte Luft ansaugen oder warme Luft wegblasen. Lüfter belasten allerdings zusätzlich die Stromversorgung.
Software-Architektur mit Fehlerbehandlung
Kaum ein Programmcode ist frei von Fehlern. Dabei sind keine Programmier- oder Syntax-Fehler gemeint. Die korrigiert man im Laufe der Entwicklung. Probleme verursachen oft korrekt funktionierende Codezeilen, die für einen bestimmten Fall oder optimale Bedingungen geschrieben sind. Wenn aber durch äußere Ereignisse diese Bedingungen nicht mehr erfüllt sind, können Fehler auftreten und die Programmausführung wird abgebrochen.
Fehlertoleranz und Fehlerbehandlung
Ein Programmcode, der nicht bei jeder Kleinigkeit ausfällt, wäre wünschenswert. Leider ist das nicht ganz so einfach, weil man einen Programmcode unter verschiedenen Bedingungen testen muss. Außerdem bedarf es auch bei externen Komponenten einer gewissen Fehlertoleranz, weil man nicht jeden Fehler im Vorfeld erdenken kann. Hier hilft meist nur Erfahrung und umfassende Analysefähigkeiten.
Unbekannnte Fehlerzustände lassen sich mit einer Fehler- und Ausnahmebehandlung abfangen, um das Abbrechen des Programmcodes zu verhindern, und bei Bedarf einen Neustart einzuleiten.
Watchdog
Der Raspberry Pi Pico hat einen unabhängigen Watchdog, der regelmäßig getriggert werden muss, wenn er gestartet wird. Bleibt das Rücksetzen des Timers aus, dann löst er einen Reset aus, der zu einem Neustart führen kann.
Automatischer Start des Programmcodes
Damit der Programmcode im Stand-alone-Betrieb (ohne Thonny und Host-Computer) automatisch startet, muss der Programmcode auf dem Raspberry Pi Pico mit dem Dateinamen „main.py“ gespeichert werden.
Erweiterung: Autostart mit Abbruch, Fehlerbehandlung und Neustart
Die Frage ist, wie realisiert man einen Autostart mit der Datei main.py, einer integrierten Fehlerbehandlung mit Logging und Neustart, wobei man in der Thonny Python IDE noch die volle Kontrolle behält? Außerdem wäre es gut, den bereits bestehenden Programmcode nicht umbauen zu müssen.
Erweiterung: Hardware-Reset und Neustart mit Taster
Wenn ein Raspberry Pi Pico im Stand-alone-Betrieb läuft, dann kann es sein, dass sein Programmablauf aus irgendwelchen Gründen gestört wurde und einfach nicht mehr weiterläuft. In so einem Fall würde man den Pico gerne neu starten wollen. Hierfür wäre es notwendig, den Pico vom Strom zu trennen und wieder zu verbinden. Je nach Aufbau ist das aber nicht so ohne Weiteres möglich. Eine Alternativ ist ein Taster, mit dem an den Mikrocontroller neu starten kann.
Wenn was nicht geht
- Raspberry Pi Pico: Troubleshooting - Wenn was nicht geht
- Raspberry Pi Pico: Troubleshooting Thonny Python IDE - Fehler, Probleme und Lösungen
- Raspberry Pi Pico: Troubleshooting I2C - Fehler, Probleme und Lösungen
- Raspberry Pi Pico: Troubleshooting Autostart - Fehler, Probleme und Lösungen
- Raspberry Pi Pico W: Troubleshooting WLAN - Fehler, Probleme und Lösungen
Weitere verwandte Themen:
- Raspberry Pi Pico: Erste Schritte
- Raspberry Pi Pico: Alternativen
- Raspberry Pi Pico: 10 nützliche Anwendungen und Projekte zum Nachbauen
- Raspberry Pi Pico: 10 einfache Experimente und Ideen für Anfänger zum Nachbauen und Experimentieren
- Raspberry Pi Pico: Smart Home (Ideen und Projekte)
Frag Elektronik-Kompendium.de
Hardware-nahes Programmieren mit dem Raspberry Pi Pico und MicroPython
Das Elektronik-Set Pico Edition ist ein Bauteile-Sortiment mit Anleitung zum Experimentieren und Programmieren mit MicroPython.
- LED: Einschalten, ausschalten, blinken und Helligkeit steuern
- Taster: Entprellen und Zustände anzeigen
- LED mit Taster einschalten und ausschalten
- Ampel- und Lauflicht-Steuerung
- Elektronischer Würfel
- Eigene Steuerungen programmieren
Online-Workshop: Programmieren mit dem Raspberry Pi Pico
Gemeinsam mit anderen und unter Anleitung experimentieren? Wir bieten unterschiedliche Online-Workshops zum Raspberry Pi Pico und MicroPython an. Einführung in die Programmierung, Sensoren programmieren und kalibrieren, sowie Internet of Things und Smart Home über WLAN und MQTT.
Besuchen Sie unser fast monatlich stattfindendes Online-Meeting PicoTalk und lernen Sie uns kennen. Die Teilnahme ist kostenfrei.