Inhaltsverzeichnis:
- Schritt 1: Laserschneiden
- Schritt 2: LEDs installieren
- Schritt 3: Montage
- Schritt 4: Löten
- Schritt 5: SPI-Anzeige installieren
- Schritt 6: Pi. installieren
- Schritt 7: Verkabelung und Stromversorgung
- Schritt 8: Pi. einrichten
- Schritt 9: Python-Code, Test und Simulator
- Schritt 10: Abschlusstest und Veneer
- Schritt 11: Das Ergebnis
Video: Hölzernes LED-Gaming-Display mit Raspberry Pi Zero - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:15
In diesem Projekt wird ein 20x10 Pixel WS2812 basierendes LED Display mit einer Größe von 78x35 cm realisiert, das einfach im Wohnzimmer installiert werden kann um Retro-Spiele zu spielen. Die erste Version dieser Matrix wurde 2016 gebaut und von vielen anderen Leuten umgebaut. Diese Erfahrung wurde verwendet, um alle Verbesserungen zusammenzufassen, um eine neue Version der Matrix zu erstellen und diese jetzt zu instructables.com zu bringen. Die wichtigsten neuen Funktionen sind das Update auf einen Raspberry Pi Zero anstelle von Pi A plus einen Arduino und das Ersetzen des bisherigen großen Controllers durch ein Bluetooth-Gamepad. Auch die Software wurde verbessert, einschließlich des Simulators, der es Ihnen ermöglicht, den Code auf einem Computer zu entwickeln, auch wenn Sie keinen Zugriff auf die Matrix-Hardware haben.
Eine Besonderheit dieser LED-Matrix ist das spezielle Holzfurnier, das verwendet wird, um die LED abzudecken und bei deaktivierten LEDs zu verbergen. Dies erhöht die Akzeptanz bei Nicht-Technikern enorm;-) Wenn dieses spezielle Furnier in Ihrem Land nicht verfügbar ist, können Sie natürlich auch ein anderes diffuses Material wie Acryl verwenden, um die LEDs zu verbergen. Es ist auch geplant, in Zukunft einige wichtige Teile bereitzustellen, um den Wiederaufbau des Projekts zu erleichtern.
Lieferungen:
- Raspberry Pi Zero W (mit einigen Anpassungen funktionieren auch alle anderen Modelle)
- 200 LED/s s (WS2812B LED-Streifen mit 30 LED/m)
- 4x SPI LED-Matrix-Display mit MAX7219
- Kabel
- Bluetooth-Gamepad (z. B. dieses von Pimoroni)
- Netzteil 5V mit mindestens 5A
- MDF-Holz zum Laserschneiden
- Holzfurnier oder Diffusionsacrylplatte
- Kondensator, Widerstand
- Einige Schrauben
Schritt 1: Laserschneiden
Die Grundstruktur der Matrix besteht aus MDF-Holz mit einer Dicke von 3 mm und wird mit einem Laserschneider geschnitten. Wenn Sie keinen Laserschneider besitzen, können Sie einen Online-Dienst wie ponoko.com oder formulor.de nutzen oder sich an das nächste Fablab/Makerspace in Ihrer Umgebung wenden. Es ist auch möglich, Karton oder andere leichtere Materialien zu verwenden, aber die beigefügten Dateien sind für eine Dicke von 3 mm ausgelegt, sodass dünnere oder dickere Materialien eine Neugestaltung der Dateien erfordern. Das Design wurde in Fusion 360 erstellt. Die meisten Teile halten zusammen, indem sie einfach aufgeschoben werden, nur einige der Teile wie die Außenränder sollten mit Holzleim zusammengeklebt werden. Stellen Sie sicher, dass Ihre Matrix vollständig funktioniert, bevor Sie Klebstoff auftragen! Auch das Holzfurnier muss aufgeklebt werden, aber dies ist der letzte Schritt, nachdem sichergestellt wurde, dass alles funktioniert.
Auf der rechten (unteren) Seite der Backplane befindet sich ein ausgeschnittenes Segment, um die elektronischen Bauteile an der Matrize zu befestigen und beim Aufkleben des Furniers noch Zugriff auf diese Bauteile zu haben.
Schritt 2: LEDs installieren
Die LED-Streifen sind standardmäßige 30 LED/m WS2812-Streifen, die bei Amazon, eBay oder anderen Online-Shops auf der ganzen Welt erhältlich sind. Dies ist normalerweise auch der günstigste verfügbare adressierbare LED-Streifen. Wenn Sie andere LEDs verwenden möchten, müssen Sie sicherstellen, dass der Abstand von 30 LEDs/m zum Matrixmuster passt. Die lasergeschnittenen Segmente haben kleine ausgeschnittene Bereiche, um der LED-Breite von 10 cm zu entsprechen. Diese LED-Streifen haben doppelseitiges Klebeband auf der Rückseite, sodass Sie sie nach präziser Positionierung einfach direkt auf das MDF kleben können. Überprüfen Sie die korrekte Ausrichtung jedes Streifens, bevor Sie das Band verwenden (DIN-DOUT-Richtung).
Das Verdrahtungsmuster ist ein Zickzack, sodass am Ende nur ein Eingangspin zur Matrix vorhanden ist und die Kabellängen so kurz wie möglich sind. Um die Leistung richtig zu verteilen und die Verkabelung oben in der Matrix zu reduzieren, ist jeder LED-Streifen an der Unterseite der Matrix mit 5V und GND verbunden. Sie können entweder Einzeldrähte oder Prototyping-Leiterplatten verwenden, um die 5V- und GND-Leitung zu verteilen.
Schritt 3: Montage
Die Explosionsansicht hilft, die richtigen Teile für die Baugruppe zu identifizieren. Folgen Sie einfach den Schritt-für-Schritt-Installationsbildern. Die Rückwand hat Kreuzstrukturen, um die langen Seitenwände und einige der kurzen Wände zu halten. Wenn Sie Probleme beim Installieren der Teile haben, verwenden Sie Sandpapier, um es zu reparieren.
Schritt 4: Löten
Es gibt verschiedene Möglichkeiten, die Stromleitungen für die verschiedenen Streifen zusammenzulöten. Entweder können Sie einzelne Drähte oder eine Art Common Rail aus Kupfer verwenden, um die verschiedenen Drähte zu verlöten. In diesem Fall wurden Teile von Prototyp-Leiterplatten verwendet, um die Stromschienen zu den Streifen zu führen. WS2812B Stripes verfügen bereits über separate Stromkabel, mit denen Sie die Stromschiene an den ersten Stripe-Eingang (linke Seite im Bild) anschließen können.
Schritt 5: SPI-Anzeige installieren
Zur Anzeige von Spielständen und Text wird ein LED-Matrix-Display auf Basis des LED-Treibers MAX7219 verwendet. Es ist über SPI (Serial Peripheral Interface) mit dem Raspberry Pi verbunden. Vier 8x8-Displays werden zu einem 32x8-Pixel-Dot-Matrix-Display kombiniert. Sie können diese 8x8 Pixel Displays für z. B. bei eBay gibt es auch kombinierte 32x8 Pixel Displays. Außerdem haben Sie verschiedene Farboptionen; in diesem Fall wurden rote Anzeigen verwendet. Da SPI wie ein Schieberegister funktioniert, werden die Displays seriell miteinander verbunden, indem Daten aus der ersten Matrix mit Daten aus der zweiten verbunden werden und so weiter, beginnend von der rechten Seite des Displays.
Diese Anzeige ist von außen nur lesbar, wenn sie direkt hinter der Furnierschicht platziert wird. Wenn nicht, ist nur eine rote Unschärfe sichtbar. Sie müssen es also oben auf dem Backplane-Ausschnittssegment mit einem Abstand von 30 mm zwischen der Oberfläche der Backplane und der Oberfläche der Matrix montieren. Ich habe ein paar übrig gebliebene Holzstücke und Schrauben verwendet, um die fehlenden 19 mm zwischen der Backplane und den Platinen anzupassen, aber Sie können auch alle äußeren Arten von Abstandshaltern verwenden.
Die Verdrahtung des Displays wird in Schritt 7 gezeigt.
Schritt 6: Pi. installieren
In dieser Installation wird ein Raspberry Pi Zero verwendet. Sie können auch jedes andere Raspberry Pi-Modell verwenden, aber neuere mit integriertem WiFi und Bluetooth ermöglichen Ihnen eine einfache Verbindung zu drahtlosen Gamepads und vereinfachen die Programmierung. Sie können den Pi befestigen, indem Sie ihn mit mindestens zwei Schrauben und kleinen Abstandshaltern an der Backplane festschrauben.
Für den Raspberry Pi Zero W werden folgende Pins verwendet:
- PIN 2: 5V
- PIN 6: GND
- GPIO18 -> LED-Streifen
- GPIO11: SPI CLK -> MAX7219-Matrix CLK
- GPIO10: SPI MOSI -> MAX7219 Matrix DIN
- GPIO8:SPI CS -> MAX7219 Matrix CS
Einige Leute haben Probleme mit der Verwendung von GPIO18 für die LEDs gemeldet. Bitte verwenden Sie in diesem Fall GPIO21. In diesem Fall müssen Sie den Code in Zeile 21 in pixel_pin = board. D21 ändern.
Der WS2812B-Streifen wird hier außerhalb seiner Spezifikation verwendet. Normalerweise benötigt es einen 5V Logikpegel auf DIN, aber der Pi liefert nur 3, 3V. Auch wenn dies in den meisten Fällen funktioniert, sollten Sie dies mit Ihrem Streifen testen. Wenn es nicht funktioniert, können Sie einen Pegelwandler wie einen 74HCT245 oder einen anderen 3V3-zu-5-V-Wandler zwischen dem Pi und dem Streifen hinzufügen.
Schritt 7: Verkabelung und Stromversorgung
Die Verdrahtung erfolgt nach dem Verdrahtungsschema. Die Stromversorgung ist eine 5V DC-Versorgung.
Zum einfachen Ein-/Ausschalten der Matrix wird ein Schalter zwischen dem Netzstecker und den Matrixschaltungen eingefügt. Da der Raspberry Pi jedoch kein hartes Ausschalten mag, gibt es in der Software eine Shutdown-Option, um den Pi vor dem Umschalten der Matrix sicher per Gamepad herunterzufahren.
Der DIN-Pin des LED-Streifens ist über einen Widerstand mit dem Pi verbunden, außerdem ist ein großer Kondensator (4700uF) hinzugefügt, um die Stromversorgung zu puffern. Weitere Informationen finden Sie im Adafruit Überguide für Neopixel.
LEDs verbrauchen maximal 60mA pro LED, somit ist ein maximaler Strom von 200x60mA = 12A möglich!!! Durch die Reduzierung der Helligkeit und die Verwendung nicht alle LEDs in Vollweiß ist dies eher ein theoretischer Wert, jedoch hängt es vom Code ab, welcher Maximalstrom erreicht wird. Daher ist die Auswahl eines ausreichend großen Netzteils sehr wichtig. Für die meisten Anwendungen sollte ein Netzteil mit 5V/5A (25W) ausreichen.
Um die Backplane mit dem Pi und dem Matrix-Display zu fixieren, kann man sie mit einigen kleinen Holzstücken in die Kanten schieben und auch mit Schrauben die Backplane festhalten.
Schritt 8: Pi. einrichten
1. Laden Sie das neueste Raspbian Lite-Image von raspberrypi.org herunter
2. Kopieren Sie es auf eine SD-Karte, 8 GB sind genug. Sie können z. B. ätzen, um dies zu tun.
3. Bevor Sie den Pi mit der SD-Karte booten, bereiten Sie WIFI und SSH-Zugriff vor
4. Legen Sie die SD-Karte in einen beliebigen Computer ein, ein Boot-Ordner sollte zugänglich sein
5. Kopieren Sie die folgenden Zeilen in die Datei wpa_supplicant.conf (generieren Sie diese, falls nicht vorhanden) und ändern Sie die Parameter je nach Ihrem WLAN und Ihrer Region
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
country=US update_config=1 network={ ssid="Home Wifi" psk="mypassword" key_mgmt=WPA-PSK }
6. Fügen Sie eine leere Datei namens ssh (ohne Erweiterung) zum Booten hinzu, um den SSH-Zugriff zu ermöglichen
7. Stecken Sie nun die SD-Karte in den Raspberry Pi und booten Sie diesen. Überprüfen Sie Ihren WLAN-Router, um die IP-Adresse des Pi. zu erhalten
8. Starten Sie eine SSH-Verbindung zum Pi über ein Terminal (Linux, Mac) oder z. B. Putty und Windows. Geben Sie die IP des Pi anstelle von 192.168.x.y ein
9. Aktualisieren Sie den Pi (dauert etwas!)
sudo apt-get update
sudo apt-get upgrade
10. Pip und Setup-Tool installieren
sudo apt-get install python3-pip
sudo pip3 install --upgrade setuptools
11. Installieren Sie Neopixel-Treiber, ws281x lib, pygame und libsdl
sudo pip3 install rpi_ws281x adafruit-circuitpython-neopixel
sudo pip3 install pygame sudo apt-get install libsdl1.2-dev sudo pip3 install --upgrade luma.led_matrix
12. Aktivieren Sie SPI, indem Sie raps-config aufrufen, navigieren Sie zu 5 Schnittstellenoptionen / P4 SPI / Aktivieren
sudo raspi-config
13. Bluetooth-Gamepad hinzufügen
sudo bluetoothctl
[Bluetooth]# Agent auf [Bluetooth]# Paarbar auf [Bluetooth]# Scan auf [Bluetooth]# Paar aa:bb:cc:dd:ee:ff [Bluetooth]# Vertrauen aa:bb:cc:dd:ee:ff [bluetooth]# verbinden aa:bb:cc:dd:ee:ff [bluetooth]# beenden
wobei aa:bb:cc:dd:ee:ff das MAC-Kleid Ihres Bluetooth-Gamepads ist. Diese Adresse sollte nach Aufruf des Befehls „scan on“angezeigt werden. Stellen Sie sicher, dass Ihr Bluetooth-Controller zum Pairing bereit ist. Lesen Sie dazu die Anleitung des Controllers.
14. Sie können sich jetzt mit Ihrem Pi verbinden, das Standardpasswort ist raspberry (Windows-Benutzer können Putty verwenden):
Schritt 9: Python-Code, Test und Simulator
Code ist auf Github verfügbar. games_pi_only.py und alle bmp-Dateien werden benötigt.
git clone href= https://github.com/makeTVee/ledmatrix/tree/master/python/pi_only
Der Code kann im Simulationsmodus außerhalb des Pi ausgeführt werden, indem pygame verwendet wird, um die Matrix zu simulieren. Dies ist sehr hilfreich, um neue Funktionen zu entwickeln, ohne direkten Zugriff auf die Matrix-Hardware zu haben. Auch das Debuggen ist viel einfacher. Sie müssen die PI-Konstante setzen, um den Simulationsmodus zu aktivieren (Zeile 15):
PI=Falsch
In diesem Simulationsmodus wird auch die Tastatur anstelle des Bluetooth-Gamepads verwendet. Die Tasten 1, 2, 3, 4 sind A, B, X, Y des Gamepads zugeordnet, Pfeiltasten für Richtungen, „s“für Start und „x“für Auswahl. Sie können einen Standardeditor plus die Konsole oder einige integrierte IDEs wie Microsoft Visual Studio Code oder Jetbrain PyCharm verwenden, um die Entwicklung auf Ihrem PC durchzuführen.
Wenn Sie die Matrix und den Raspberry Pi verwenden, müssen Sie Folgendes definieren:
PI=Wahr
Um den Code auf den Raspberry Pi zu kopieren, können Sie den scp-Befehl (Windows WinSCP) verwenden. Öffnen Sie ein Konsolenfenster, wechseln Sie in den Ordner mit den Github-Dateien und rufen Sie. auf
scp games_pi_only [email protected]:/home/pi
scp *.bmp [email protected]:/home/pi
Verbinden Sie sich dann über ssh mit dem Pi (Windows-Benutzer können Putty verwenden):
Nach erfolgreicher Anmeldung können Sie den Python-Code starten, indem Sie Folgendes aufrufen:
sudo python3 games_pi_only.py
Wenn der Code korrekt ausgeführt wird, können Sie den Autostart aktivieren, indem Sie Folgendes aufrufen:
sudo nano /etc/rc.local
und fügen Sie die folgende Zeile vor Exit 0 hinzu:
/usr/bin/nice -n -20 python3 /home/pi/games_pi_only.py &
Speichern (Strg+O) und Beenden (Strg+X)
Schritt 10: Abschlusstest und Veneer
Bevor das Furnier auf die Vorderseite geklebt wird, sollte die Matrix getestet werden, um sicherzustellen, dass alle LEDs funktionieren. Es ist viel einfacher, etwas zu fixieren, bevor das Furnier aufgeklebt wird.
Das verwendete Holzfurnier ist ein spezielles Ahornfurnierpapier namens Microwood, das einseitig mit Papier belegt ist und eine Stärke von 0,1 mm hat. Die Papierseite kann mit handelsüblichem wasserfreiem Papierkleber direkt auf das MDF geklebt werden.
Schritt 11: Das Ergebnis
Viel Spaß und viel Spaß beim Spiel!
Großer Preis beim Raspberry Pi Contest 2020
Empfohlen:
Heimwerken -- Einen Spinnenroboter herstellen, der mit einem Smartphone mit Arduino Uno gesteuert werden kann – wikiHow
Heimwerken || Wie man einen Spider-Roboter herstellt, der mit einem Smartphone mit Arduino Uno gesteuert werden kann: Während man einen Spider-Roboter baut, kann man so viele Dinge über Robotik lernen. Wie die Herstellung von Robotern ist sowohl unterhaltsam als auch herausfordernd. In diesem Video zeigen wir Ihnen, wie Sie einen Spider-Roboter bauen, den wir mit unserem Smartphone (Androi
Raspberry Pi mit Node.js mit der Cloud verbinden – wikiHow
So verbinden Sie Raspberry Pi mit Node.js mit der Cloud: Dieses Tutorial ist nützlich für alle, die einen Raspberry Pi mit Node.js mit der Cloud, insbesondere mit der AskSensors IoT-Plattform, verbinden möchten. Sie haben keinen Raspberry Pi? Wenn Sie derzeit keinen Raspberry Pi besitzen, empfehle ich Ihnen, sich einen Raspberry Pi zuzulegen
Raspbian in Raspberry Pi 3 B ohne HDMI installieren - Erste Schritte mit Raspberry Pi 3B - Einrichten Ihres Raspberry Pi 3: 6 Schritte
Raspbian in Raspberry Pi 3 B ohne HDMI installieren | Erste Schritte mit Raspberry Pi 3B | Einrichten Ihres Raspberry Pi 3: Wie einige von Ihnen wissen, sind Raspberry Pi-Computer ziemlich großartig und Sie können den gesamten Computer nur auf einer einzigen winzigen Platine bekommen. Das Raspberry Pi 3 Model B verfügt über einen Quad-Core 64-Bit ARM Cortex A53 mit 1,2 GHz getaktet. Damit ist der Pi 3 ungefähr 50
Task Zero: 7 Schritte (mit Bildern)
Task Zero: In einer leistungs- und erfolgsbetonten Gesellschaft vergisst man vielleicht, dass es ein Leben neben der Arbeit gibt. Bei Task Zero geht es um die Aufgabe vor der ersten. Aufgabe 0: Schätze dein Privatleben. Verschieben Sie diese Aufgaben nicht, die sich kultivieren
Ein hölzernes Divot-Reparaturwerkzeug herstellen – wikiHow
Wie man ein hölzernes Divot-Reparaturwerkzeug herstellt: Das Divot-Reparaturwerkzeug oder Pitchfork wird verwendet, um die Einkerbung, Divot, die durch eine Golfballlandung auf dem Putting Green verursacht wird, zu entfernen. Es ist zwar nicht erforderlich, diese zu beheben, aber es ist üblich, dies zu tun. Der Wikipedia-Artikel ist hier, da er