Suchcode

Kurs Lektion 5 von 10: Steuerung der RGB-LED WS2812B mit dem Raspberry Pi Pico

Diese Lektion ist Teil von: Raspberry Pi Pico 4WD Smart Car

Kurs Lektion 5 von 10: Steuerung der RGB-LED WS2812B mit dem Raspberry Pi Pico

Diese Lektion, Teil des Robojax Raspberry Pi Pico Smart Car Kurses, konzentriert sich auf die Steuerung des RGB-LED-Streifens (WS2812B) am SunFounder 4-Rad-Antriebs-Kit. Sie gehen über die einfache Ein-/Aus-Steuerung hinaus und lernen, wie Sie Rot-, Grün- und Blauwerte mischen, um jede Farbe zu erzeugen, einzelne LEDs zu steuern und dynamische Lichtsequenzen wie einen „wandernden" Lichteffekt zu erstellen. Diese Fähigkeit ist grundlegend, um Ihren Robotikprojekten visuelles Feedback und Persönlichkeit zu verleihen.

Die Steuerung von RGB-LEDs ist eine Kernfähigkeit für jedes Robotik- oder Elektronikprojekt. Hier sind einige praktische Dinge, die Sie mit diesem Wissen bauen können:

  • Benutzerdefinierte Statusanzeigen: Verwenden Sie verschiedene Farben, um den Zustand Ihres Roboters anzuzeigen, z. B. Grün für „bereit", Blau für „arbeitet" und Rot für „Fehler".
  • Interaktive Lichteffekte: Erstellen Sie „Jagd"- oder „Knight-Rider"-Lichtmuster für einen dynamischeren und ansprechenderen Roboter.
  • Visuelles Feedback für Sensoren: Programmieren Sie die LEDs so, dass sie basierend auf Sensordaten die Farbe ändern, z. B. Rot bei einem nahen Hindernis oder Blau beim Folgen einer Linie.
  • Ambientbeleuchtung: Stellen Sie die LEDs auf eine zufällige Farbe oder einen bestimmten Farbton ein, um eine individuelle Atmosphäre für Ihr Auto oder andere Projekte zu schaffen.

Hardware/Komponenten

Dieses Projekt verwendet die Komponenten, die mit dem SunFounder Raspberry Pi Pico 4-Rad-Antriebs-Kit geliefert werden. Die Schlüsselkomponente ist der RGB-LED-Streifen selbst, der vom Raspberry Pi Pico gesteuert wird.

  • Raspberry Pi Pico
  • SunFounder 4-Rad-Antriebs-Kit (das den WS2812B RGB-LED-Streifen enthält)
  • Batteriepack für das Auto (um die LEDs mit Strom zu versorgen, wie im Video erwähnt)

Verdrahtungsanleitung

Die Videolektion geht nicht auf den Verdrahtungsprozess ein, da dieser Teil des vormontierten Designs des Auto-Kits ist. Die LEDs sind bereits mit dem Raspberry Pi Pico verbunden. Für ein individuelles Setup würden Sie normalerweise den Datenpin des WS2812B-Streifens mit einem GPIO-Pin am Pico verbinden, zusammen mit Strom (5V) und Masse (GND). Da diese Lektion das Auto-Kit verwendet, ist keine zusätzliche Verdrahtung erforderlich.

Wenn Sie dies auf einem Breadboard aufbauen, würden Sie die Datenleitung Ihres LED-Streifens mit einem GPIO-Pin (z. B. GP0) verbinden und ihn mit einer externen 5V-Versorgung speisen.

Code-Erklärung

Die Lektion konzentriert sich auf die Verwendung der vorgefertigten Funktionen aus der Bibliothek des Auto-Kits. Die Kernfunktion zur Steuerung der Lichter ist set_light_color(). Diese Methode wird auf dem Auto-Objekt aufgerufen und nimmt zwei Hauptargumente: die ID-Nummer des Lichts und eine Liste von drei Werten, die die Rot-, Grün- und Blauintensität (RGB) darstellen.

Hier ist eine Aufschlüsselung, wie die im Video gezeigten Schlüsselfunktionen verwendet werden:

  • car.set_light_color(LED_ID, [R, G, B]): Dies ist der direkteste Weg, eine einzelne LED zu steuern. Die LED_ID ist eine Ganzzahl von 0 bis 23, und die Farbe ist eine Liste wie [255, 0, 0] für Rot.
  • Hilfsfunktionen der Bibliothek: Die Bibliothek des Kits bietet Funktionen auf höherer Ebene wie set_all_light_color(), set_bottom_left_color() und set_bottom_right_color(), um Gruppen von LEDs einfacher zu steuern.

Um eine benutzerdefinierte Farbe zu erstellen, können Sie die drei Werte in der Liste anpassen. Zum Beispiel ergibt [255, 255, 0] Gelb, [0, 255, 255] Cyan und [255, 0, 255] Pink oder Magenta. Das Video demonstriert die Erstellung dieser Farben durch Mischen der primären RGB-Werte.

Für zufällige Farben können Sie die Funktion random.randint(0, 255) verwenden, um zufällige Werte für R, G und B zu generieren, wie im „Zufalls"-Beispiel gezeigt. Dies weist jeder der 24 LEDs eine eindeutige, zufällige Farbe zu.

Live-Projekt/Demonstration

Im Video demonstriert der Dozent die Konzepte live. Er zeigt zuerst, wie man alle unteren Lichter auf ein durchgehendes Grün schaltet, indem man die RGB-Werte auf [0, 255, 0] setzt. Dann ändert er die Farbe auf Rot, indem er [255, 0, 0] setzt. Die Demonstration fährt fort, indem sie zeigt, wie man einzelne LEDs über ihre ID-Nummer (0-23) steuert und ihre Farben unabhängig einstellt.

Ein bedeutender Teil des Videos ist der Erstellung eines „wandernden Licht"-Effekts gewidmet. Dies wird mit einer for-Schleife gemacht, die von 1 bis 24 iteriert. In jeder Iteration schaltet sie die aktuelle LED für eine festgelegte Zeit (z. B. 300 Millisekunden) ein und dann für eine sehr kurze Zeit (z. B. 10 Millisekunden) aus, bevor sie zur nächsten übergeht. Dies erzeugt die Illusion eines Lichts, das sich entlang des Streifens bewegt. Der Dozent zeigt auch, wie man die Geschwindigkeit dieses Effekts durch Ändern der Verzögerungswerte anpassen kann.

Schließlich demonstriert er das Programm „Zufallsfarbe", das die Bibliothek random verwendet, um bei jeder Ausführung des Codes eine eindeutige Farbe für jede der 24 LEDs zu generieren, was eine lebendige, mehrfarbige Anzeige erzeugt.

Kapitel

  • [00:00] Einführung in RGB-LEDs und den Smart Car Kurs
  • [02:36] Verständnis des RGB-Farbmodells
  • [05:00] Steuerung der Lichter mit Bibliotheksfunktionen
  • [09:01] So steuern Sie einzelne LEDs (0-23)
  • [13:08] Erstellen eines wandernden Lichteffekts
  • [15:32] Generieren zufälliger Farben für jede LED
Kein Code angehängt.

Ressourcen & Referenzen

Noch keine Ressourcen vorhanden.

Dateien📁

Keine Dateien verfügbar.