Erstellen Sie Stimmungsbeleuchtung mit blockbasierter Codierung auf Raspberry Pi Pico
Der Raspberry Pi Pico-Mikrocontroller kann mit textbasierten Sprachen wie C, MicroPython und CircuitPython programmiert werden. Für diejenigen, die das Programmieren lernen, ist die blockbasierte Codierung möglicherweise weniger entmutigend. BIPES (Block Based Integrated Platform für eingebettete Systeme) ist jetzt für Pico verfügbar und eine hervorragende Option.
Blockbasierte Codierung mit BIPES
BIPES ist eine blockbasierte Codierungsumgebung für MicroPython-Geräte und ermöglicht das Erstellen von Programmen durch Ziehen und Ablegen von Scratch-ähnlichen Blöcken in einer Chrome-Weboberfläche.
In diesem Handbuch erstellen Sie mit BIPES ein einfaches blockbasiertes Programm für einen Raspberry Pi Pico, mit dem Sie die Farbe eines RGB-LED-Stimmungslichts steuern können. Drei Drehpotentiometer dienen zur Einstellung der roten, grünen und blauen Komponenten – der additiven Primärfarben des Lichts. So können Sie ein bisschen Physik lernen.
1. Erstellen Sie das Multicolor Mood Light
Um das Stimmungslicht aufzubauen, benötigen Sie eine Auswahl elektronischer Standardkomponenten.
Was du brauchen wirst:
- Raspberry Pi Pico mit gelöteten Stiftleisten
- 800-Punkt-Steckbrett (oder 2x verknüpfte 400-Punkt-Steckbretter)
- RGB LED
- 3x 330-Ohm-Widerstände
- 3x Drehpotentiometer
- Überbrückungskabel von Stecker zu Stecker (M2M)
Hinweis: Wenn Sie keine Lust haben, männliche Stiftleisten an Ihren Raspberry Pi Pico zu löten, können Sie einen Pico mit bereits angebrachten Kopfzeilen kaufen.
Bevor Sie alles verkabeln, sehen Sie sich die Unterseite des Pico an, um die Stiftetiketten zu sehen.
Oben auf dem Pico können Sie auch sehen, wie die physische Pin-Nummerierung von 1 bis 40 gegen den Uhrzeigersinn links vom Micro-USB-Anschluss funktioniert.
Sie können auch ein Diagramm der Pinbelegung des Pico auf der Registerkarte Gerät der BIPES-Weboberfläche anzeigen, die wir verwenden werden.
Führen Sie auf dem Steckbrett die Stecknadeln des Pico in die Löcher an einem Ende ein. Drücken Sie es fest nach unten, um eine gute Verbindung zu gewährleisten – es sollte fest sitzen.
Schließen Sie nun Ihre RGB-LED mit vier Überbrückungskabeln an, wie in der folgenden Abbildung dargestellt. Das längere Bein ist mit einem GND-Pin (Masse) verbunden, während die anderen über Widerstände mit den Pins GP13, GP14 und GP15 für die Farben Rot, Grün und Blau verbunden sind.
Hinweis: Wir verwenden eine RGB-LED mit gemeinsamer Kathode und verdrahten den langen Pin mit Masse. Wenn es sich bei Ihrem Typ um einen Common-Anode-Typ handelt, müssen Sie ihn stattdessen mit 3V3 verbinden.
Als nächstes verdrahten Sie die drei Drehpotentiometer. Sie benötigen ein 800-Punkt-Steckbrett in voller Größe, um sie anzubringen. Alternativ können Sie zwei 400-Punkte-Modelle verwenden.
Jedes Potentiometer hat drei Stifte. Die äußeren sind mit 3V3-Strom und GND verbunden, während der mittlere Pin mit einem der ADC-Eingangspins des Pico verbunden ist. Dadurch kann das analoge Signal gelesen und in eine Zahl von 0 bis 65535 umgewandelt werden. In unserem Beispiel verwenden wir ADC0 / GP26 für das Potentiometer, das die rote Komponente steuert, ADC1 / GP27 für grün und ADC2 / GP28 für blau.
Schließen Sie Ihren Pico schließlich über ein Micro-USB-zu-USB-Kabel an einen Computer an.
2. Programmieren des Stimmungslichts
Damit die blockbasierte BIPES-Codierung funktioniert, müssen Sie MicroPython auf Ihrem Pico installieren (sofern Sie dies noch nicht getan haben). Dieser Prozess umfasst vier einfache Schritte:
- Laden Sie MicroPython für Raspberry Pi Pico von der Raspberry Pi-Website herunter
- Schließen Sie den Pico über die Micro-USB-Buchse an Ihren Computer an, während Sie die BOOTSEL-Taste gedrückt halten
- Warten Sie, bis der Pico als externes Laufwerk angezeigt wird
- Ziehen Sie die .uf2 MicroPython-Datei per Drag & Drop, um sie auf den Pi Pico zu kopieren. Es wird automatisch neu gestartet
Öffnen Sie nun auf dem angeschlossenen Computer den Google Chrome-Webbrowser. Damit BIPES ohne zusätzliche Software über USB mit dem Pico kommunizieren kann, müssen Sie eine experimentelle Funktion in Chrome aktivieren. Geben Sie chrome: // flags / in die Adressleiste ein und aktivieren Sie die Option Experimental Web Platform-Funktionen .
Gehen Sie zu https://bipes.net.br/beta2serial/ui/ , um mit dem Codieren mit BIPES zu beginnen. Wählen Sie im Dropdown-Menü Zielgerät die Option Raspberry Pi Pico .
Um eine Verbindung zum Pico herzustellen, wählen Sie die Registerkarte Konsole und klicken Sie auf Verbinden (Web Serial) . Wählen Sie im Dialogfeld die Option Karte im FS-Modus aus und klicken Sie dann auf Verbinden .
Wählen Sie die Registerkarte Blöcke , um mit der Erstellung Ihres blockbasierten Programms zu beginnen. Ziehen Sie aus der Kategorie " Funktionen " im linken Bereich die oberste Stelle , um einen Block in den Hauptcodebereich zu verschieben.
Dies entspricht dem Definieren einer Funktion in MicroPython. Nennen Sie es rot , da diese erste Funktion Ihr Potentiometer liest, um den roten Wert der RGB-LED anzupassen.
Wählen Sie im linken Bereich die Kategorie Variablen und dann Variable erstellen . Nennen Sie es pot1 . Ziehen Sie einen Set Pot1 zum Blockieren in die Mitte Ihres roten Funktionsblocks.
Ziehen Sie aus der Kategorie Maschine> In / Out-Pins einen Read RPI Pico ADC-Eingabeblock neben Ihren Set Pot1 , um die Funktion zu blockieren. Von seinem Stift Drop-Down – Menü wählen Pin 26 / ADC0 / GP26.
Ziehen Sie aus der Kategorie Maschine> In / Out-Pins einen PWM- Block und platzieren Sie ihn unter dem Block set pot1 . Wählen Sie Pin 17 / GP13 aus der Pin- Dropdown-Liste.
Ziehen Sie aus der Kategorie " Variablen " einen pot1- Block, um 50 im Abschnitt " Duty " des PWM-Blocks zu ersetzen. Sie haben jetzt die Funktion, ein Potentiometer abzulesen und die rote Komponente der RGB-LED entsprechend einzustellen. Replizieren Sie dies für die grünen und blauen Komponenten.
Klicken Sie mit der rechten Maustaste auf den Funktionsblock und wählen Sie Duplizieren, um die gesamte Funktion zu kopieren. Benennen Sie es grün um und ändern Sie die Pin-Werte in Pin 27 / ADC1 / GP27 und Pin 19 / GP14 . Erstellen Sie eine neue pot2- Variable und ziehen Sie sie in das Feld Duty . Verwenden Sie das Dropdown- Menü, um den Set Pot1 in Block zu ändern und Pot2 auf Set zu setzen .
Duplizieren Sie die Funktion erneut, benennen Sie sie blau um und ändern Sie die Namen und Einstellungen entsprechend. Die Pin-Werte sind Pin 28 / ADC2 / GP28 und Pin 20 / GP15 . Die Variable ist pot3 .
Erstellen Sie schließlich eine Endlosschleife, um alle drei Funktionen auszuführen. Aus der Kategorie Loops, ziehen Sie eine Wiederholung während der Block auf den Code – Bereich. Ziehen Sie aus der Kategorie Logik einen echten Block und hängen Sie ihn an. Ziehen Sie dann aus den Funktionen rote , grüne und blaue Blöcke in die Schleife.
3. Testen Sie das Stimmungslicht
Das Programm ist jetzt abgeschlossen, also ist es Zeit, es auszuführen und unser Stimmungslicht auszuprobieren. Klicken Sie auf die Registerkarte Konsole und wählen Sie Blockbasiertes Programm ausführen .
Versuchen Sie nun, jedes Potentiometer zu drehen, um die roten, grünen und blauen Komponenten des Lichts einzustellen. Sie können unzählige Farbtöne erstellen.
Programm Raspberry Pi Pico mit blockbasierter Codierung: Erfolg
Sie haben untersucht, wie Sie Ihren Raspberry Pi Pico mithilfe der blockbasierten Codierung mit der BIPES-Weboberfläche in Google Chrome programmieren.
Dabei haben Sie auch ein mehrfarbiges Stimmungslicht erstellt. Um das Licht zu streuen, versuchen Sie, eine durchscheinende Kunststoffabdeckung darüber zu legen – wir haben eine von einem PIR-Sensor verwendet.