So erstellen Sie eine Raspberry Pi Pico W-Widerstandsuhr
Dekodieren Sie die Farbcodes von Widerständen, um die Uhrzeit anzuzeigen
Farbcodes für Widerstände sind ein wesentlicher Bestandteil der Herstellerausbildung. Das Farbcodesystem wird seit den 1930er Jahren kontinuierlich verwendet und wurde von der Radio Manufacturer's Association als kompakte Methode zur Markierung numerischer Werte auf kleinen Bauteilen eingeführt. Der Code enthält nur 10 Farben, aber es kann dennoch eine Herausforderung sein, sich ihre Werte zu merken, es sei denn, Sie verwenden sie jeden Tag.
Dieses Projekt hilft Ihnen, jeden Tag den Widerstandscode zu verwenden, um die Uhrzeit anzuzeigen, und verwendet einen Raspberry Pi Pico W, um über WLAN eine Verbindung zu einem NTP-Server (Network Time Protocol) für die aktuelle Uhrzeit herzustellen. Sobald dies erledigt ist, verwendet die Pico W den WS2812B Neopixel-Streifen, um die aktuelle Zeit als Widerstandscodefarben anzuzeigen. Wenn Sie den Code jeden Tag in Aktion betrachten, werden Sie Widerstandswerte bald im Schlaf schneller dekodieren!
Die individuell adressierbaren RGB-LEDs WS2812B, allgemein als „NeoPixel“ bezeichnet, sind superhelle und leicht steuerbare LEDs, die jede Farbe haben können. Sie werden oft verwendet, um einem Projekt stimmungsvolle Beleuchtung zu verleihen, und sie können auch in Cosplay-Kostümen und Requisiten verwendet werden.
Der Neopixel Strip von Adafruit benötigt 5 V zum Ansteuern der LEDs, kann aber ein 3,3 V-Logiksignal auf der Datenleitung akzeptieren.
Die Verkabelung für den Widerstandstakt ist einfach, es sind nur GND, Daten und Strom erforderlich, um den NeoPixel mit dem Pico W zu verbinden. Es kann etwas knifflig sein, die Drähte so anzuschließen, dass sie in das 3D-gedruckte Gehäuse passen.
1.Beginnen Sie mit dem Pi PicoUndDer Neopixel-Stick muss nach oben zeigen, wobei sich das Eingangsende des NeoPixel in der Nähe der USB-Buchse befindet.
2.Schließen Sie die Drähte wie im Schaltplan gezeigt an und lassen Sie gerade genug Kabel übrig, um die gesamte Displaybaugruppe auf die Rückseite des Raspberry Pi Pico W zu klappen. Die Drähte müssen gelötet werden, was für die meisten Hersteller eine einfache Aufgabe ist. Wenn Sie keinen Lötkolben haben oder Lust auf ein Upgrade haben, werfen Sie einen Blick auf unsere Liste der besten Lötkolben. Seien Sie hier vorsichtig, denn der Neopixel-Streifen verfügt an beiden Enden über Anschlüsse, sodass diese miteinander verkettet werden können. Ein Ende des Streifens ist der Eingang, während das andere Ende der Ausgang ist. Sie sollten Drähte an das Eingangsende anlöten.
3.Klappen Sie die Displaybaugruppe auf die Rückseite des Pi Pico W, sodass die Reihe der LED-Leuchten an der Mittellinie des Pico ausgerichtet ist.
4.Befestigen Sie den LED-Streifen mit einem kleinen Quadrat doppelseitigem Schaumstoffklebeband.Durch den Schaumstoff kann der NeoPixel-Streifen parallel zum Raspberry Pi Pico W platziert werden und bietet darunter Platz, um überschüssiges Kabel zu verstauen.
Bei den meisten Projekten ist die Box, in die Sie alles stecken, nicht so wichtig. Der Widerstandstakt ist etwas anders, da wir etwas Geschicktes tun müssen, um alle Farben zu erhalten, die wir brauchen. Der Widerstandscode ist für die Markierung mit Farbe konzipiert und verwendet einige Farben, die durch Mischen des Lichts von LEDs etwas schwierig zu erhalten sind. Vor allem Schwarz, Braun und Grau sind nicht die Farben, die man mit einer LED erzielen kann. Hier hilft es, ein Stück schwarz getönten Kunststoff vor die LEDs zu legen, sodass der Kunststoff bei ausgeschalteter LED schwarz ist, bei eingeschalteter LED jedoch die Farben sichtbar sind. Durch die dunkle Tönung verringert sich die Leuchtkraft der LEDs, sodass Farben wie Braun und Orange leichter zu unterscheiden sind.
1.3D-Druck des Raspberry Pi Pico-Gehäuseteils.Sie können die Außenseite des Gehäuses so schleifen, füllen und bearbeiten, wie Sie es für am besten halten.
2.Stecken Sie die Pico-W so ein, dass sich der USB-Anschluss in der Aussparung am Gehäuse befindet, sodass Pico und NeoPixel in das bedruckte Gehäuse passen.
3.Schneiden Sie zwei Stücke getöntes Acryl so zu, dass sie oben und unten in das 3D-gedruckte Gehäuse passen.Wenn Sie Zugang zu einem Laserschneider haben, können Sie damit den Kunststoff schneiden und ätzen.
4.Geben Sie einen Tropfen Sekundenkleber auf die oberen Ecken (die Seite, auf der sich die LEDs befinden) des 3D-gedruckten Gehäuses und kleben Sie den getönten Kunststoff fest.Wenn Sie zum Färben des Kunststoffs einen Sharpie verwendet haben, legen Sie die Seite mit der Sharpie-Tinte in Richtung der Innenseite des Gehäuses.
5.Kleben Sie den anderen Kunststoff auf die Rückseite des 3D-gedruckten Gehäuses.Wenn Sie möchten, können Sie auf dieser Seite des Gehäuses Niedertemperatur-Heißkleber verwenden, damit sich die Pico W in Zukunft leichter entfernen lässt.
Der Raspberry Pi Pico nutzt MicroPython zur Steuerung des Neopixel-Sticks und zur Verbindung mit NTP-Servern über eine WLAN-Verbindung.
1.Folgen Sie dieser Anleitungum die MicroPython-Firmware herunterzuladen und auf dem Raspberry Pi Pico W zu installieren und dann Thonny einzurichten
2.Erstellen Sie eine neue Datei in Thonny und nenne es wifidetails.py. Diese Datei wird zum Speichern der Verbindungsdetails für das drahtlose Netzwerk verwendet.
3.Fügen Sie die folgenden Zeilen hinzuGehen Sie zu wifidetails.py und ersetzen Sie MYSSID und MYPASS durch die SSID und das Passwort für Ihr drahtloses Netzwerk.
4.Speichern Sie die Datei auf dem Raspberry Pi Pico W.
5.Erstellen Sie eine neue Datei in Thonny und nennen Sie sie main.py.Dies ist die Datei, die ausgeführt wird, wenn die Uhr angeschlossen ist. MicroPython ist so konfiguriert, dass main.py ausgeführt wird, wenn das Board eingeschaltet wird.
6.Importieren Sie die Module, mit denen Sie eine Verbindung zum NTP-Server herstellen, einschließlich der Anmeldedaten aus der Datei wifidetails.py, die Sie gerade erstellt haben.
7.Importieren Sie die Module, um auf die GPIO-Pins zuzugreifen und die NeoPixels zu steuern.
8.Erstellen Sie ein Python-Wörterbuch mit RGB-Werten für jede Farbe im Widerstandsfarbcode. Möglicherweise müssen Sie diese Werte anpassen, um die beste Übereinstimmung mit dem von Ihnen verwendeten getönten Kunststoff zu erzielen. Ein Wörterbuch ist ein Datenspeicherobjekt, das einen Schlüssel zum Abrufen eines Werts verwendet. In diesem Fall verwenden wir eine Zahl von 0 bis 9 als Schlüssel zum Abrufen des entsprechenden Werts.
9.Erstellen Sie ein Objekt, np, um unserem Code mitzuteilen, dass die NeoPixels mit Pin 0 auf dem Raspberry Pi Pico W verbunden sind.
10.Richten Sie die Verbindung zum Wi-Fi-Netzwerk ein und starten Sie sie mithilfe der SSID- und Passwortdetails von wifidetails.py.
11.Warten Sie, bis die Verbindung zum Wi-Fi-Netzwerk abgeschlossen ist.
12.Überprüfen Sie, ob die Netzwerkverbindung erfolgreich hergestellt wurde, und schlagen Sie bei Problemen ordnungsgemäß fehl.Wenn die Netzwerkverbindung gut ist, wird die IP-Adresse der Uhr an die Python-Shell ausgegeben.
13.Rufen Sie mithilfe des ntptime-Moduls die Uhrzeit von einem NTP-Server ab und setzen Sie die RTC (Echtzeituhr) des Pico W entsprechend zurück.
14. Erstellen Sie eine Schleife, um die Zeit aus der Echtzeituhr zu lesen und sie in der Variablen ct zu speichern. Verwenden Sie dann die Zeichenfolgenformatierung, um die Zeit als 6-stellige Zeichenfolge zu speichernWir können iterieren, um die NeoPixel-RGB-Werte festzulegen.
15. Die Timestring-Variable ist jetzt ein String mit dem Format „HHMMSS“.Wir durchlaufen diese Zeichenfolge, um die im rc-Wörterbuch gespeicherten RGB-Werte auf die ersten 6 NeoPixel auf dem Streifen festzulegen, und schreiben dann die Änderungen in die NeoPixel.Dies ist das Ende der Hauptschleife, daher fügen wir eine Verzögerung hinzu, um die Uhr zu „ticken“ und die Belastung des Pico W zu reduzieren.
16.Speichern Sie den Code auf dem Raspberry Pi Pico W und klicken Sie zum Starten auf „Ausführen“. Das Projekt erhält die aktuelle Uhrzeit und die NeoPixels ändern ihre Farbe, um die Uhrzeit anzuzeigen. Immer wenn der Pico eingeschaltet wird, wird der in main.py gespeicherte Code automatisch ausgeführt.
Schließen Sie sich den Experten an, die Tom's Hardware lesen, um Insider-Informationen zu PC-Tech-News für Enthusiasten zu erhalten – und das seit über 25 Jahren. Wir senden Ihnen aktuelle Nachrichten und ausführliche Rezensionen zu CPUs, GPUs, KI, Hersteller-Hardware und mehr direkt in Ihren Posteingang.
Andrew ist ein Hausmannsvater, Autor, Redakteur und professioneller Macher. In einer sich ständig weiterentwickelnden Werkstatt fertigt, modifiziert und repariert Andrew mit seiner Tochter an seiner Seite Projekte. Mehrere Jahrzehnte Branchenerfahrung und ein Doktortitel. vom Ironbridge Institute bedeuten, dass Andrews Veröffentlichungen ein vielseitiges Themenspektrum abdecken, darunter alte babylonische Schriftsysteme, Requisitenherstellung, Barrierefreiheitshilfen, medizinische Geräte und Wohlbefinden, Passwortsicherheit, 3D-Scannen und 3D-Drucken. Andrews Fähigkeiten umfassen additive und subtraktive Fertigung, Laserschneiden, Programmierung in über 40 Jahren beliebter Sprachen und Frameworks, Mikroprozessoren, elektromechanische Geräte, Schiffsmotoren und eine Reihe manueller und CNC-Werkzeuge für die Werkstatt. Andrew hat seinen Sitz in der Nähe von Ironbridge in England (dem Geburtsort der industriellen Revolution) und hat eine Vorliebe für traditionelle Fertigungstechniken und die Ästhetik des späten 19. und frühen 20. Jahrhunderts.
Milk-V bietet drei RISC-V-Raspberry-Pi-Alternativen
Raspberry PI Pico W Copter ist bereit zum Abheben
Das SilverStone Sugo SFF-Gehäuse unterstützt Quad-Slot-GPUs
Von Les Pounder, 23. April 2023
Von Avram Piltch, 22. April 2023
Von Brandon Hill, 21. April 2023
Von Avram Piltch, 20. April 2023
Von Brandon Hill, 16. April 2023
Von Les Pounder, 15. April 2023
Von Les Pounder 09. April 2023
Von Les Pounder, 25. März 2023
Von Jarred Walton, 19. März 2023
Von Les Pounder, 18. März 2023
Von Avram Piltch, 15. März 2023
Beginnen Sie mit dem Pi Pico, wobei der Neopixel-Stick nach oben zeigt und sich das Eingangsende des NeoPixel in der Nähe der USB-Buchse befindet. Schließen Sie die Drähte wie im Schaltplan gezeigt an und lassen Sie gerade genug Kabel übrig, um die gesamte Display-Baugruppe auf die Rückseite des Raspberry Pi Pico W zu klappen. Klappen Sie die Display-Baugruppe auf die Rückseite des Pi Pico W, sodass die LED-Reihe leuchtet ist an der Mittellinie des Pico ausgerichtet. Befestigen Sie den LED-Streifen mit einem kleinen Quadrat doppelseitigem Schaumstoffklebeband. 3D-Druck des Raspberry Pi Pico-Gehäuseteils. Stecken Sie die Pico-W so ein, dass sich der USB-Anschluss in der Aussparung am Gehäuse befindet, sodass Pico und NeoPixel in das bedruckte Gehäuse passen. Schneiden Sie zwei Stücke getöntes Acryl so zurecht, dass sie oben und unten in das 3D-gedruckte Gehäuse passen. Geben Sie einen Tropfen Sekundenkleber auf die oberen Ecken (die Seite, auf der sich die LEDs befinden) des 3D-gedruckten Gehäuses und kleben Sie den getönten Kunststoff fest. Kleben Sie den anderen Kunststoff auf die Rückseite des 3D-gedruckten Gehäuses. Befolgen Sie diese Anleitung. Erstellen Sie eine neue Datei in Thonny. Fügen Sie die folgenden Zeilen hinzu. Speichern Sie die Datei auf dem Raspberry Pi Pico W. Erstellen Sie eine neue Datei in Thonny und nennen Sie sie main.py. Importieren Sie die Module, mit denen Sie eine Verbindung zum NTP-Server herstellen. Importieren Sie die Module, um auf die GPIO-Pins zuzugreifen und die NeoPixels zu steuern. Erstellen Sie ein Python-Wörterbuch mit RGB-Werten. Erstellen Sie ein Objekt (np), um unserem Code mitzuteilen, dass die NeoPixel mit Pin 0 auf dem Raspberry Pi Pico W verbunden sind. Richten Sie die Verbindung zum Wi-Fi-Netzwerk ein und beginnen Sie mit der SSID und den Passwortdetails von wifidetails.py. Warten Sie, bis die Verbindung zum Wi-Fi-Netzwerk abgeschlossen ist. Überprüfen Sie, ob die Netzwerkverbindung erfolgreich hergestellt wurde, und schlagen Sie bei Problemen ordnungsgemäß fehl. Rufen Sie mithilfe des ntptime-Moduls die Uhrzeit von einem NTP-Server ab und setzen Sie die RTC (Echtzeituhr) des Pico W entsprechend zurück. Erstellen Sie eine Schleife, um die Zeit aus der Echtzeituhr zu lesen und sie in der Variablen ct zu speichern. Verwenden Sie dann die Zeichenfolgenformatierung, um die Zeit als 6-stellige Zeichenfolge zu speichern. Wir durchlaufen diese Zeichenfolge, um die im RC-Wörterbuch gespeicherten RGB-Werte auf die ersten 6 NeoPixel auf dem Streifen festzulegen, und schreiben dann die Änderungen in die NeoPixel. Speichern Sie den Code auf dem Raspberry Pi Pico W und klicken Sie zum Starten auf „Ausführen“.