Innehållsförteckning:
- Steg 1: Laserskärning
- Steg 2: Installera lysdioder
- Steg 3: Montering
- Steg 4: Lödning
- Steg 5: Installera SPI Display
- Steg 6: Installera Pi
- Steg 7: Kabeldragning och strömförsörjning
- Steg 8: Konfigurera Pi
- Steg 9: Python -kod, test och simulator
- Steg 10: Slutprov och faner
- Steg 11: Resultatet
Video: Trä LED -spelskärm Driven av Raspberry Pi Zero: 11 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:35
Detta projekt förverkligar en 20x10 pixlar WS2812 -baserad LED -skärm med en storlek på 78x35 cm som enkelt kan installeras i vardagsrummet för att spela retrospel. Den första versionen av denna matris byggdes 2016 och byggdes om av många andra människor. Denna erfarenhet användes för att sammanfatta alla förbättringar för att bygga en ny version av matrisen och föra detta nu till instructables.com. De viktigaste nya funktionerna är uppdateringen till en Raspberry Pi Zero istället för att använda och Pi A plus en Arduino och ersätta den tidigare stora kontrollen med en Bluetooth -spelkontroll. Även mjukvaran förbättrades inklusive simulatorn, som låter dig utveckla koden på en dator även om du inte har tillgång till matrishårdvaran.
En speciell egenskap hos denna LED -matris är den speciella träfaner, som används för att täcka lysdioden och dölja dem när lysdioder är inaktiverade. Detta ökar starkt acceptansfaktorn för icke-tekniska människor;-) Naturligtvis, om denna speciella faner inte är tillgänglig i ditt land, kan du också använda något annat diffust material som akryl för att dölja lysdioderna. Det är också planerat att tillhandahålla några viktiga delar i framtiden för att göra det lättare att bygga om projektet.
Tillbehör:
- Raspberry Pi Zero W (med viss anpassning fungerar alla andra modeller också)
- 200 LED/s (WS2812B LED -ränder med 30 LED/m)
- 4x SPI LED -matrisdisplay med MAX7219
- Kablar
- Bluetooth -spelkontroll (t.ex. detta från Pimoroni)
- Strömförsörjning 5V med minst 5A
- MDF -trä för laserskärning
- Träfaner eller diffusionsplatta av akryl
- Kondensator, motstånd
- Några skruvar
Steg 1: Laserskärning
Matrisens basstruktur är gjord av MDF -trä med en tjocklek av 3 mm och skärs av en laserskärare. Om du inte äger en laserskärare kan du använda en onlinetjänst som ponoko.com eller formulor.de eller kontakta nästa fablab/makerspace i din miljö. Det är också möjligt att använda kartong eller andra lättare material men de bifogade filerna är konstruerade för 3 mm tjocklek, så tunnare eller tjockare material behöver en omdesign av filerna. Designen gjordes i Fusion 360. De flesta delarna håller ihop bara genom att skjuta dem på plats, bara några av delarna som de yttre kanterna ska limmas ihop med trälim. Se till att din matris fungerar helt innan du applicerar något lim! Även träfaner måste limas på, men detta är det sista steget efter att ha säkerställt att allt fungerar.
På den högra (nedre) sidan av bakplanet finns ett utklippt segment för att fästa de elektroniska komponenterna i matrisen och fortfarande ha tillgång till dessa komponenter när faner limmas på.
Steg 2: Installera lysdioder
LED -ränderna är standard 30 LED/m WS2812 -ränder, som finns på Amazon, eBay eller andra onlinebutiker över hela världen. Detta är normalt också den billigaste adresserbara LED -stripen som finns. Om du vill använda andra lysdioder måste du se till att 30 LED/m -avståndet passar till matrismönstret. De laserskurna segmenten har små utskurna områden för att passa LED -bredden på 10 cm. Dessa LED-ränder har dubbelsidig tejp på ryggen, så att du kan limma dem direkt på MDF efter exakt placering. Kontrollera att varje remsa är riktad innan du använder tejpen (DIN-DOUT-riktning).
Ledningsmönster är en sicksack så i slutet finns det bara en ingångsstift till matrisen och kabellängderna är så korta som möjligt. För att fördela kraften ordentligt och minska kablage överst på matrisen är varje LED -rand ansluten till 5V och GND i botten av matrisen. Du kan använda antingen enstaka ledningar eller prototyper för att distribuera 5V- och GND -linjen.
Steg 3: Montering
Explosionsvyn hjälper till att identifiera rätt delar för montering. Följ bara de steg-för-steg installationsbilderna. Bakplanet har korsstrukturer för att hålla de långa sidoväggarna och några av de korta väggarna. Om du har problem med att installera bitarna, använd sandpapper för att fixa det.
Steg 4: Lödning
Det finns olika sätt att löda där kraftledningar för de olika ränderna tillsammans. Antingen kan du använda enstaka trådar eller någon form av common rail av koppar för att löda de olika trådarna. I detta fall användes bitar av prototyp PCB för att styra kraftskenorna till ränderna. WS2812B -ränder har redan separata strömkablar som du kan använda för att ansluta kraftskenan till den första ingången (vänster sida på bilden).
Steg 5: Installera SPI Display
För att visa spelresultat och text används en LED -matrisdisplay baserad på LED -drivrutinen MAX7219. Den är ansluten via SPI (Serial Peripheral Interface) till Raspberry Pi. Fyra 8x8 -skärmar kombineras till en 32x8 pixel dotmatrisdisplay. Du kan köpa denna 8x8 pixel skärmar för t.ex. på eBay finns det också kombinerade 32x8 pixlar. Du har också olika färgalternativ; i detta fall användes röda displayer. Eftersom SPI fungerar som ett skiftregister, är displayerna anslutna i serie genom att ansluta data från den första matrisen till data i den andra och så vidare från höger sida av displayen.
Denna display kan bara läsas utifrån om den är placerad direkt bakom fanerlagret. Om inte, är det bara en röd suddighet som syns. Så du måste montera den ovanpå backplane-utskärningssegmentet med ett avstånd på 30 mm mellan bakplanets yta och matrisens yta. Jag har använt några rester av träbitar och skruvar för att anpassa de 19 mm som saknas mellan bakplanet och kretskortet, men du kan också välja vilken yttre distans som helst.
Kabeldragning av displayen visas i steg 7.
Steg 6: Installera Pi
I denna installation används en Raspberry Pi Zero. Du kan också använda alla andra Raspberry Pi -modeller, men nyare med integrerad WiFi och Bluetooth gör att du enkelt kan ansluta till trådlösa spelkontroller och förenkla programmeringen. Du kan säkra Pi genom att använda minst två skruvar och små distanser för att skruva fast den på bakplanet.
För Raspberry Pi Zero W används följande stift:
- PIN 2: 5V
- PIN 6: GND
- GPIO18 -> LED -ränder
- GPIO11: SPI CLK -> MAX7219 matrix CLK
- GPIO10: SPI MOSI -> MAX7219 matris DIN
- GPIO8: SPI CS -> MAX7219 matrix CS
Vissa rapporterade problem med att använda GPIO18 för lysdioderna. Använd GPIO21 i det här fallet. Om så är fallet måste du ändra koden på rad 21 till pixel_pin = board. D21.
WS2812B -remsan används här utanför dess specifikation. Normalt kräver det en 5V logisk nivå på DIN, men Pi ger bara 3, 3V. Även om detta fungerar i de flesta fall bör du testa detta med din remsa. Om det inte fungerar kan du lägga till en nivåomvandlare som en 74HCT245 eller någon annan 3V3 till 5V -omvandlare mellan Pi och remsan.
Steg 7: Kabeldragning och strömförsörjning
Kabeldragning görs enligt kopplingsschemat. Strömförsörjningen är en 5V likström.
För en enkel på/av -omkoppling av matrisen läggs en omkopplare till mellan strömkontakten och matrikkretsarna. Eftersom Raspberry Pi inte gillar hård avstängning finns det dock ett avstängningsalternativ i programvaran för att säkert stänga av Pi via Gamepad innan matrisen byts.
LED -remsan DIN -stift är ansluten via ett motstånd till Pi, även en stor kondensator (4700uF) läggs till för att buffra strömförsörjningen. Kolla in Adafruit Überguide för Neopixels för mer information.
Lysdioder förbrukar en maximal ström på 60mA per LED, så en maximal ström på 200x60mA = 12A är möjlig !!! Genom att minska ljusstyrkan och inte använda alla lysdioder i helvitt är detta mer ett teoretiskt värde, men det beror på koden vilken maximal ström som uppnås. Så att välja en tillräckligt stor strömförsörjning är mycket viktigt. För de flesta applikationer bör en strömförsörjning med 5V/5A (25W) vara tillräcklig.
För att fixera bakplanet med Pi och Matrix -displayen kan några små träbitar användas för att skruva dem i kanterna och även använda skruvar för att hålla bakplanet på plats.
Steg 8: Konfigurera Pi
1. Ladda ner den senaste Raspbian lite -bilden från raspberrypi.org
2. Kopiera den till och SD -kort, 8 GB räcker. Du kan använda t.ex. etsare för att göra detta.
3. Innan du startar Pi med SD -kortet, förbered WIFI och ssh -åtkomst
4. Sätt i SD -kortet i vilken dator som helst, en startmapp ska vara tillgänglig
5. Kopiera följande rader till filen wpa_supplicant.conf (generera den om den inte finns) och ändra parametrarna beroende på din Wifi och region
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev
country = US update_config = 1 nätverk = {ssid = "Home Wifi" psk = "mypassword" key_mgmt = WPA-PSK}
6. Lägg till en tom fil som heter ssh (utan tillägg) för att starta för att aktivera ssh -åtkomst
7. Sätt nu in SD -kortet i Raspberry Pi och starta det. Kontrollera din wifi -router för att få Pi: ns IP -adress
8. starta en SSH -anslutning till Pi med hjälp av en terminal (Linux, Mac) eller t.ex. Spackla ett Windows. Sätt in IP: n för Pi istället för 192.168.x.y
9. Uppdatera Pi (tar lite tid!)
sudo apt-get uppdatering
sudo apt-get uppgradering
10. Installera pip och installationsverktyg
sudo apt-get install python3-pip
sudo pip3 install -uppgradera setuptools
11. Installera Neopixel -drivrutinen, ws281x lib, pygame och libsdl
sudo pip3 installera rpi_ws281x adafruit-circuitpython-neopixel
sudo pip3 install pygame sudo apt-get install libsdl1.2-dev sudo pip3 install --upgrade luma.led_matrix
12. Aktivera SPI genom att anropa raps-config, navigera till 5 gränssnittsalternativ / P4 SPI / Aktivera
sudo raspi-config
13. Lägg till Bluetooth -spelkontroll
sudo bluetoothctl
[bluetooth]# agent på [bluetooth]# parbar på [bluetooth]# skanning på [bluetooth]# par aa: bb: cc: dd: ee: ff [bluetooth]# trust aa: bb: cc: dd: ee: ff [bluetooth]# connect aa: bb: cc: dd: ee: ff [bluetooth]# avsluta
där aa: bb: cc: dd: ee: ff är MAC -klänningen på din bluetooth gamepad. Den här adressen ska visas efter att du har ringt kommandot "scan on". Se till att din Bluetooth -kontroller är redo att para ihop, se handboken för kontrollen hur du gör detta.
14. Du kan nu ansluta till dig Pi, standardlösenordet är hallon (Windows -användare kan använda kitt):
Steg 9: Python -kod, test och simulator
Koden är tillgänglig på Github. games_pi_only.py och alla bmp -filer behövs.
git clone href = https://github.com/makeTVee/ledmatrix/tree/master/python/pi_only
Koden har ett alternativ att köra i simuleringsläge utanför Pi med hjälp av pygame för att simulera matrisen. Detta är till stor hjälp för att utveckla nya funktioner utan att ha direktåtkomst till matrishårdvaran. Det är också mycket lättare att felsöka. Du måste ställa in PI -konstanten för att aktivera simuleringsläget (rad 15):
PI = falskt
I detta simuleringsläge används tangentbordet i stället för Bluetooth -spelkontrollen. Knapparna 1, 2, 3, 4 mappas till A, B, X, Y på spelkontrollen, piltangenter för vägbeskrivning, “s” för start och “x” för val. Du kan använda en standardredigerare plus konsolen eller några integrerade IDE som Micosoft Visual Studio Code eller Jetbrain PyCharm för att göra utvecklingen på din PC.
Om du använder matrisen och Raspberry Pi måste du definiera:
PI = Sant
För att kopiera koden till Raspberry Pi kan du använda kommandot scp (Windows WinSCP). Öppna ett konsolfönster, växla till mappen som innehåller Github -filerna och ring
scp games_pi_only [email protected]:/home/pi
scp *.bmp [email protected]:/home/pi
anslut sedan till Pi via ssh (Windows -användare kan använda kitt):
efter lyckad inloggning kan du starta pythonkoden genom att ringa:
sudo python3 games_pi_only.py
Om koden fungerar korrekt kan du aktivera autostart genom att ringa:
sudo nano /etc/rc.local
och lägg till följande rad före avfart 0:
/usr/bin/nice -n -20 python3 /home/pi/games_pi_only.py &
Spara (Ctrl+O) och Avsluta (Ctrl+X)
Steg 10: Slutprov och faner
Innan faner är lim ovanpå fronten, bör matrisen testas för att säkerställa att alla lysdioder fungerar. Det är mycket lättare att fixa något innan faner limmas på.
Det använda träfaner är ett speciellt lönnfanerpapper som kallas Microwood, som är täckt med papper på en sida och har en tjocklek på 0, 1 mm. Papperssidan kan limas direkt på mdf med vanligt vattenfritt papperslim.
Steg 11: Resultatet
Ha kul och njut av spelet!
Stora priset i Raspberry Pi Contest 2020
Rekommenderad:
Raspberry Pi-driven internetradio: 5 steg (med bilder)
Raspberry Pi-driven internetradio: Det är något tillfredsställande med att vrida rattar och trycka på knappar, som de på gamla radioapparater. Tyvärr är många av dessa radioer trasiga eller stationerna har tystnat. Lyckligtvis är det inte för svårt att uppdatera någon radio till en internetradio med
Pool Pi Guy - AI -driven larmsystem och poolövervakning med Raspberry Pi: 12 steg (med bilder)
Pool Pi Guy - AI -driven larmsystem och poolövervakning med Raspberry Pi: Att ha en pool hemma är kul, men medför ett stort ansvar. Min största oro är att övervaka om någon är nära poolen utan uppsikt (särskilt yngre barn). Min största irritation är att se till att poolvattenledningen aldrig går under pumpens entré
USB -driven RGB LED -julgran: 9 steg (med bilder)
USB -driven RGB LED -julgran: Jag bestämde mig för att jag skulle göra några julklappar före några av mina andra nördiga vänner på Makerspace. Jag är medlem i fizzPOP. Jag bestämde att istället för att bygga dem helt själv skulle jag producera ett kit så att de kunde ha roligt att bygga
USB -driven LED -julgran: 9 steg (med bilder)
USB -driven LED -julgran: Under semestern ville jag ge ett par av mina vänner något coolt, vid den tiden hade jag lärt mig enkel kretsteori och var förälskad i lysdioder. SÅ, jag beställde lysdioderna två veckor från jul, tänkte att det här skulle vara gott om tid för
USB -driven brännare! Detta projekt kan bränna igenom plast / trä / papper (roligt projekt måste också vara mycket fint trä): 3 steg
USB -driven brännare! Detta projekt kan brinna genom plast / trä / papper (roligt projekt måste också vara mycket fint trä): GÖR INTE DETTA MED USBEN !!!! Jag fick reda på att det kan skada din dator från alla kommentarer. min dator mår bra. Använd en 600ma 5v telefonladdare. jag använde detta och det fungerar bra och ingenting kan skadas om du använder en säkerhetsplugg för att stoppa strömmen