Inhaltsverzeichnis:
- Lieferungen
- Schritt 1: Digispark und PlatformIO
- Schritt 2: Schaltplan und Verdrahtung
- Schritt 3: Firmware
- Schritt 4: Gehäuse & Finishing Touch
Video: Digispark & WS2812 Rainbow Wheel in einer Box - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:16
Dieses winzige Projekt wurde um eine schön geschnitzte 10x6x5cm Holzkiste herum gemacht, die ich in einem Geschäft gefunden habe.
Sein bestes Feature, das eigentlich nicht richtig von der Kamera eingefangen wurde, ist, die Seiten des baumgeschnitzten Deckels der Box mit hellen, gesättigten Farben zu beleuchten.
Beachten Sie auf der anderen Seite, dass die Verwendung eines Regenbogeneffekts auf einem Streifen schmaler RGB 5050-LEDs immer zu einer weißlichen Beleuchtung innerhalb einiger Zentimeter von den LEDs führt, da sich die Farbe jedes Pixels bald mit seinen Nachbarn vermischt. Wenn Sie diesen Effekt vermeiden möchten, können Sie versuchen, eine Fokussierlinse zu verwenden
Die Helligkeit der Lampe wird dank eines LDR proportional zum Umgebungslicht gehalten: Die Lampe leuchtet bei Tageslicht und wird als Nachtlicht im Dunkeln nicht zu hell.
Lieferungen
Stückliste:
- ein Attiny85 Digispark (Klon) Board mit seinem Micronucleus Bootloader
- ein 8x WS2812 bar
- ein LDR, um die Helligkeit der Lampe abhängig von der Umgebung abzustimmen
- ein 10KΩ Pull-Up-Widerstand für den LDR
- ein USB-Mikrokabel, um den Digispark zu programmieren und die Lampe anschließend mit Strom zu versorgen
- eine hohle Holzkiste
- eine 5V⎓ Stromquelle (die nicht weniger als 500mA liefern kann)
Fähigkeiten und Werkzeuge:
- PlatformIO (ausgeführt auf Visual Studio Code) als IDE - jede Arduino IDE wird jedoch die Arbeit erledigen
- ein Lötkolben, etwas Lötdraht und grundlegende Lötkenntnisse
- etwas Verkabelung, Schere
- etwas Kleber, Pinzette
- etwas undurchsichtige Farbe (um Digispark LED abzudecken und den LDR vor Beeinflussung durch das Lampenlicht zu schützen)
Schritt 1: Digispark und PlatformIO
Digispark (und jeder Klon mit demselben 8-Bit-Mikrocontroller) ist ein Breakout-Board, das um einen AVR Attiny85 herum aufgebaut ist und dank eines Micronucleus-Bootloaders eine direkte USB-Kommunikation ermöglicht. Weitere Informationen finden Sie in seinem Wiki:
PlatformIO ist das Ökosystem, mit dem ich den Digispark programmiert habe. Um damit zu arbeiten, müssen Sie Visual Studio Code installieren
Schritt 2: Schaltplan und Verdrahtung
Löten
- Verbinden Sie drei Drähte mit der WS2812-Leiste (Masse, Stromeingang und Dateneingang)
- Drahtmasse und Vcc an 5V und GND-Pin des Digispark
- Löten Sie den verbleibenden Draht an den P0-Pin von Digispark
- Löten Sie einen 10KΩ Widerstand an GND und P2 Pins der Platine
- Verwenden Sie zwei Drähte, um den LDR an 5V- und P2-Pins anzuschließen (ich habe aus ästhetischen Gründen kaum sichtbare Lackdrähte verwendet)
Schritt 3: Firmware
Den Code für dieses Projekt finden Sie auf meinem GitHub:
Gut zu wissen:
- #include muss während der Arbeit mit PlatformIO verwendet werden
- Die Parameter, wie Pinbelegung, Anzahl der WS2812 LEDs, Rainbow Wheel Speed und Dark/Hell Thresholds für LEDs und LDR stehen am Anfang des Codes
- Adafruit Neopixel ist die Bibliothek zur Steuerung der WS2812 LEDs
- Die RunningMedian-Bibliothek wird verwendet, um die LDR-Messwerte stabiler zu machen. Aufgrund der eingestellten Grenzen, die die LED-Helligkeitsgrenzen abbilden, ist dies besonders schön bei geringer Helligkeit, wo eine winzige Schwankung zu einem störenden Flackern führen kann
- Sie werden keinen Versuch finden, den Attiny85 zu sperren, sodass das Projekt weiterhin bearbeitet werden kann
Einige Hinweise (die auch in der Datei README.md auf GitHub erscheinen):
- Um den Code hochzuladen, vergewissern Sie sich, dass Sie ein USB-Kabel haben, bei dem jeder Pin verkabelt ist: Billige Ladekabel haben oft nur +5V und Massekabel
- Das Hochladen von PlatformIO zu DigiSpark erfordert, dass Sie den DigiSpark nach dem Kompilieren anschließen, obwohl die Konsole nicht warnt "jetzt ist es Zeit, Ihren DigiSpark anzuschließen", wie dies bei der Arduino IDE der Fall ist.
- Schnelle Behebung des Problems beim Hochladen von PlatformIO zu DigiSpark unter MacOS: PIO-Problem 111
- Billige USB-Ladegeräte können eine schmutzige / verrauschte Ausgabe liefern, was dazu führen kann, dass LEDs insbesondere bei geringer Helligkeit seltsam flackern: Stellen Sie sicher, dass Sie eine saubere 5 VDC-Quelle haben, oder filtern Sie einen Kondensator (oder eine geeignetere Schaltung) hinzu.
Schritt 4: Gehäuse & Finishing Touch
- Schnitzen Sie ein Loch in die Box Ihrer Wahl, um das Projekt zu hosten, um Ihr USB-Kabel anzuschließen. Beachten Sie, dass je größer das Loch um den Micro-USB-Anschluss herum ist, desto mehr Licht aus Ihrer LED-Leiste austritt, es sei denn, Sie bieten keine undurchsichtige Versiegelung.
- Schnitze ein Loch für den LDR; Achten Sie darauf, dass es nicht auf den Bereich zeigt, der von den LEDs beleuchtet wird, da sonst die Auto-Regulierung in eine Schleife fällt
- Gravieren Sie die Innenfläche, um Platz für die LED-Leiste zu schaffen, da Sie die LEDs beim Betrachten Ihrer Lampe nicht direkt sehen möchten
- Versiegeln Sie die Unterseite des LDR mit einem lichtundurchlässigen Medium, um Störungen der Helligkeit der Sensorumgebung durch den WS2812-Balken zu vermeiden
- Verwenden Sie einen Tropfen undurchsichtiger Farbe, um die Strom-LED von Digispark zu maskieren, um zu vermeiden, dass sie in der Box glänzt
- Kleben Sie Digispark-Platine, LED-Leiste, LDR und jedes Kabel, damit das Innere Ihrer Hohlbox nicht unordentlich aussieht
- Sehen Sie ein USB-Kabel mit Schalter vor, um die Lampe einfach ein- und auszuschalten
Empfohlen:
Erstellen und Einfügen einer Tabelle und Hinzufügen zusätzlicher Spalten und/oder Zeilen zu dieser Tabelle in Microsoft Office Word 2007 – wikiHow
Erstellen und Einfügen einer Tabelle und Hinzufügen zusätzlicher Spalten und/oder Zeilen zu dieser Tabelle in Microsoft Office Word 2007: Hatten Sie schon einmal viele Daten, mit denen Sie arbeiten, und dachten Sie sich … dieser Daten besser und verständlicher aussehen?" Wenn ja, dann könnte eine Tabelle in Microsoft Office Word 2007 Ihre Antwort sein
So leiten Sie ein USB-Modem zu einer virtuellen VMware ESXi-Maschine um – wikiHow
So leiten Sie ein USB-Modem zu einer virtuellen VMware ESXi-Maschine um: Hallo zusammen! Heute erkläre ich Ihnen, wie Sie ein USB-Modem auf eine virtuelle VMware ESXi-Maschine umleiten. Auf die gleiche Weise können Sie einen Speicherstick und einige andere USB-Geräte umleiten. Diese altbewährte VMware-Funktion hat ihre Vor- und Nachteile, daher haben wir
Exportieren einer SVG-Datei in Fusion 360: 5 Schritte (mit Bildern)
Exportieren einer SVG-Datei in Fusion 360: Ein Freund hat kürzlich einen neuen Laserschneider gekauft und mich gefragt, wie man mit Fusion 360 SVG-Dateien exportiert. Ich schlug vor, stattdessen einfach DXF-Dateien zu exportieren, aber es stellte sich heraus, dass die von ihm gekaufte Lasermarke nur SVG-Dateien akzeptiert. Das war das gleiche Problem wie ich
So installieren Sie ein SSL-Zertifikat auf einer WordPress-Website: 5 Schritte
So installieren Sie das SSL-Zertifikat auf der WordPress-Website: Wir werden eine Anleitung zur Installation des SSL-Zertifikats auf der WordPress-Website teilen. Aber bevor Sie das Zertifikat installieren, müssen Sie einen günstigen SSL-Zertifikatanbieter wie das Comodo SSL-Zertifikat finden
So rufen Sie Daten aus einer Firebase-Datenbank auf NodeMCU ab – wikiHow
So rufen Sie Daten aus einer Firebase-Datenbank auf NodeMCU ab: Für dieses anweisbare holen wir Daten aus einer Datenbank in Google Firebase und holen sie mit einer NodeMCU zur weiteren Analyse ab. PROJEKTANFORDERUNGEN: 1) NodeMCU oder ESP8266 Controller2) G-Mail Konto zum Erstellen einer Firebase-Datenbank.3) Laden Sie die