Cuprins:
- Pasul 1: tăierea cu laser
- Pasul 2: Instalați LED-uri
- Pasul 3: Asamblare
- Pasul 4: lipire
- Pasul 5: Instalați SPI Display
- Pasul 6: Instalați Pi
- Pasul 7: Cablare și sursă de alimentare
- Pasul 8: Configurați Pi
- Pasul 9: Cod, test și simulator Python
- Pasul 10: Test final și furnir
- Pasul 11: Rezultatul
Video: Afișaj pentru jocuri LED din lemn, alimentat de Raspberry Pi Zero: 11 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
Acest proiect realizează un afișaj LED bazat pe WS2812 de 20x10 pixeli cu o dimensiune de 78x35 cm, care poate fi instalat cu ușurință în sufragerie pentru a juca jocuri retro. Prima versiune a acestei matrice a fost construită în 2016 și reconstruită de mulți alți oameni. Această experiență a fost utilizată pentru a rezuma toate îmbunătățirile pentru a construi o nouă versiune a matricei și pentru a aduce aceasta acum la instructables.com. Principalele caracteristici noi sunt actualizarea la un Raspberry Pi Zero în schimb, folosind și Pi A plus un Arduino și înlocuirea controlerului mare anterior cu un gamepad Bluetooth. De asemenea, software-ul a fost îmbunătățit, inclusiv simulatorul, care vă permite să dezvoltați codul pe un computer, chiar dacă nu aveți acces la hardware-ul matricei.
O caracteristică specială a acestei matrice de LED-uri este furnirul special din lemn, care este utilizat pentru a acoperi LED-ul și pentru a le ascunde, atunci când LED-urile sunt dezactivate. Acest lucru mărește foarte mult factorul de acceptare al persoanelor care nu sunt tehnologice;-) Desigur, dacă acest furnir special nu este disponibil în țara dvs., puteți utiliza și alt material difuz, cum ar fi acrilul, pentru a ascunde LED-urile. De asemenea, este planificată furnizarea unor părți cheie în viitor pentru a facilita reconstruirea proiectului.
Provizii:
- Raspberry Pi Zero W (cu unele adaptări, toate celelalte modele vor funcționa, de asemenea)
- 200 LED / s (benzi LED WS2812B cu 30 LED / m)
- Afișaj cu matrice LED 4x SPI cu MAX7219
- Cabluri
- Gamepad Bluetooth (de exemplu, acesta de la Pimoroni)
- Alimentare 5V cu cel puțin 5A
- Lemn MDF pentru tăiere cu laser
- Furnir din lemn sau placă acrilică de difuzie
- Condensator, rezistor
- Niște șuruburi
Pasul 1: tăierea cu laser
Structura de bază a matricei este realizată din lemn MDF cu grosimea de 3 mm și tăiată de un tăietor cu laser. Dacă nu dețineți un dispozitiv de tăiat cu laser, puteți utiliza un serviciu online precum ponoko.com sau formulor.de sau contactați următorul fablab / makerspace din mediul dvs. De asemenea, este posibil să se utilizeze carton sau alte materiale mai ușoare, dar fișierele atașate sunt concepute pentru grosimea de 3 mm, astfel încât materialele mai subțiri sau mai groase necesită o reproiectare a fișierelor. Proiectarea a fost realizată în Fusion 360. Majoritatea pieselor se țin împreună doar glisându-le în poziție, doar unele dintre părți, precum marginile exterioare, ar trebui lipite împreună folosind lipici pentru lemn. Asigurați-vă că matricea dvs. funcționează pe deplin înainte de a aplica orice adeziv! De asemenea, furnirul de lemn trebuie lipit, dar acesta este ultimul pas după asigurarea faptului că totul funcționează.
În partea dreaptă (inferioară) a panoului din spate, există un segment decupat pentru a fixa componentele electronice la matrice și a avea în continuare acces la aceste componente atunci când furnirul este lipit.
Pasul 2: Instalați LED-uri
Benzi LED sunt benzi standard 30 LED / m WS2812, care sunt disponibile la Amazon, eBay sau alte magazine online din întreaga lume. Aceasta este, în mod normal, și cea mai ieftină bandă LED adresabilă disponibilă. Dacă doriți să utilizați alte LED-uri, trebuie să vă asigurați distanța de 30 LED / m pentru a se potrivi cu modelul matricei. Segmentele tăiate cu laser au regiuni mici decupate pentru a se potrivi cu lățimea LED-ului de 10 cm. Aceste dungi LED au bandă dublă pe spate, astfel încât să le puteți lipi direct pe MDF după o poziționare precisă. Verificați orientarea corectă a fiecărei dungi înainte de a utiliza banda (direcția DIN-DOUT).
Modelul de cablare este un zig-zag, astfel încât la sfârșit există un singur pin de intrare în matrice, iar lungimile cablurilor sunt cât mai scurte posibil. Pentru a distribui corect puterea și a reduce carcasa din partea de sus a matricei, fiecare bandă LED este conectată la 5V și GND în partea de jos a matricei. Puteți utiliza fie fire simple, fie PCB-uri de prototipare pentru a distribui linia 5V și GND.
Pasul 3: Asamblare
Vizualizarea exploziei ajută la identificarea pieselor corecte pentru asamblare. Doar urmați imaginile de instalare pas cu pas. Planul din spate are structuri transversale pentru a ține pereții laterali lungi și unii dintre pereții scurți. Dacă aveți probleme la instalarea pieselor, utilizați hârtie de nisip pentru a o remedia.
Pasul 4: lipire
Există diferite moduri de a lipi acolo liniile de alimentare pentru diferitele dungi împreună. Fie puteți utiliza fire simple sau un fel de șină comună din cupru pentru a lipi diferitele fire. În acest caz, bucăți de PCB-uri prototip au fost folosite pentru a ghida șinele de alimentare către dungi. Benzile WS2812B au deja cabluri de alimentare separate, pe care le puteți utiliza pentru a conecta șina de alimentare la prima intrare de bandă (partea stângă a imaginii).
Pasul 5: Instalați SPI Display
Pentru a afișa scorurile și textul jocului, este utilizat un afișaj cu matrice LED bazat pe driverul LED MAX7219. Este conectat prin SPI (Serial Peripheral Interface) la Raspberry Pi. Patru afișaje 8x8 sunt combinate cu un afișaj cu matrice de puncte de 32x8 pixeli. Puteți cumpăra aceste afișaje de 8x8 pixeli pentru de ex. la eBay, sunt disponibile și afișaje combinate de 32x8 pixeli. De asemenea, aveți diferite opțiuni de culoare; în acest caz au fost utilizate afișaje roșii. Deoarece SPI funcționează ca un registru de schimbare, afișajele sunt conectate împreună în serie prin conectarea datelor din prima matrice la datele din a doua și așa mai departe începând din partea dreaptă a afișajului.
Acest afișaj poate fi citit numai din exterior, dacă este plasat direct în spatele stratului de furnir. Dacă nu, este vizibilă doar o estompare roșie. Deci, trebuie să-l montați pe partea de sus a segmentului decupat al planului din spate, cu o distanță de 30 mm între suprafața planului din spate și suprafața matricei. Am folosit câteva piese și șuruburi din lemn pentru a adapta lipsa de 19 mm dintre panoul din spate și PCB-uri, dar puteți, de asemenea, orice tip exterior de distanțiere.
Cablarea afișajului este prezentată la pasul 7.
Pasul 6: Instalați Pi
În această instalare, se folosește un Raspberry Pi Zero. Puteți utiliza, de asemenea, orice alt model Raspberry Pi, dar cele mai noi cu WiFi și Bluetooth integrate vă permit să vă conectați cu ușurință la gamepad-uri fără fir și să simplificați programarea. Puteți fixa Pi utilizând cel puțin două șuruburi și distanțieri mici pentru a-l înșuruba pe fundal.
Pentru Raspberry Pi Zero W, sunt utilizați următorii pini:
- PIN 2: 5V
- PIN 6: GND
- GPIO18 -> Benzi LED
- GPIO11: SPI CLK -> MAX7219 matrice CLK
- GPIO10: SPI MOSI -> MAX7219 matrice DIN
- GPIO8: SPI CS -> MAX7219 matrice CS
Unii oameni au raportat probleme cu utilizarea GPIO18 pentru LED-uri. Vă rugăm să utilizați GPIO21 în acest caz. Dacă da, trebuie să schimbați codul din linia 21 în pixel_pin = board. D21.
Banda WS2812B este utilizată aici în afara specificațiilor sale. În mod normal necesită un nivel logic de 5V pe DIN, dar Pi oferă doar 3, 3V. Chiar dacă acest lucru funcționează în majoritatea cazurilor, ar trebui să testați acest lucru cu banda dvs. Dacă nu funcționează, puteți adăuga un convertor de nivel ca un 74HCT245 sau orice alt convertor de 3V3 la 5V între Pi și bandă.
Pasul 7: Cablare și sursă de alimentare
Cablarea se face conform schemei de cablare. Sursa de alimentare este o sursă de 5V DC.
Pentru o pornire / oprire ușoară a matricei, se adaugă un comutator între mufa de alimentare și circuitele matricei. Cu toate acestea, deoarece Raspberry Pi nu-i place oprirea dură, există o opțiune de oprire în software pentru a opri în siguranță Pi prin Gamepad înainte de a comuta matricea.
Pinul DIN cu bandă LED este conectat printr-un rezistor la Pi, de asemenea, este adăugat un condensator mare (4700uF) pentru tamponarea sursei de alimentare. Vă rugăm să consultați Adafruit Überguide pentru Neopixels pentru mai multe detalii.
LED-urile consumă un curent maxim de 60mA per LED, deci este posibil un curent maxim de 200x60mA = 12A !!! Reducând luminozitatea și nu folosind toate LED-urile în alb complet, aceasta este mai mult o valoare teoretică, dar depinde de codul la care se atinge curentul maxim. Așadar, selectarea unei surse de alimentare suficient de mari este foarte importantă. Pentru majoritatea aplicațiilor ar trebui să fie suficientă o sursă de alimentare cu 5V / 5A (25W).
Pentru a fixa panoul de fundal cu afișajul Pi și Matrix, unele bucăți mici de lemn pot fi folosite pentru a le scruma în margini și, de asemenea, cu șuruburi pentru a ține panoul de fundal în poziție.
Pasul 8: Configurați Pi
1. Descărcați cea mai recentă imagine Raspbian lite de pe raspberrypi.org
2. Copiați-l pe cardul SD și 8 GB este suficient. Puteți utiliza de ex. gravor pentru a face acest lucru.
3. Înainte de a porni Pi cu cardul SD, pregătiți accesul WIFI și ssh
4. Introduceți cardul SD pe orice computer, ar trebui să fie accesibil un folder de boot
5. Copiați următoarele linii în fișierul wpa_supplicant.conf (generați-l dacă nu există) și modificați parametrii în funcție de Wifi și regiune
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. Adăugați un fișier gol numit ssh (fără nicio extensie) pentru a porni pentru a permite accesul ssh
7. Acum introduceți cardul SD în Raspberry Pi și porniți-l. Verificați routerul WiFi pentru a obține adresa IP a dispozitivului Pi
8. porniți o conexiune SSH la Pi utilizând un terminal (Linux, Mac) sau de ex. Puneți un Windows. Introduceți adresa IP a Pi în loc de 192.168.x.y
9. Actualizați Pi (durează ceva timp!)
sudo apt-get update
sudo apt-get upgrade
10. Instalați pip și instrumentul de configurare
sudo apt-get install python3-pip
sudo pip3 install --upgrade setuptools
11. Instalați driverul Neopixel, ws281x lib, pygame și libsdl
sudo pip3 instalează rpi_ws281x adafruit-circuitpython-neopixel
sudo pip3 install pygame sudo apt-get install libsdl1.2-dev sudo pip3 install --upgrade luma.led_matrix
12. Activați SPI apelând raps-config, navigați la 5 Opțiuni de interfațare / P4 SPI / Activare
sudo raspi-config
13. Adăugați Bluetooth Gamepad
sudo bluetoothctl
[bluetooth] # agent on [bluetooth] # pairable on [bluetooth] # scan on [bluetooth] # pair aa: bb: cc: dd: ee: ff [bluetooth] # trust aa: bb: cc: dd: ee: ff [bluetooth] # conectare aa: bb: cc: dd: ee: ff [bluetooth] # renunțare
unde aa: bb: cc: dd: ee: ff este rochia MAC a gamepad-ului dvs. bluetooth. Această adresă trebuie afișată după apelarea comenzii „scan on”. Asigurați-vă că controlerul Bluetooth este gata de asociere, vă rugăm să consultați manualul controlerului cum să faceți acest lucru.
14. Acum vă puteți conecta la dvs. prin Pi, parola implicită este zmeură (utilizatorii Windows pot folosi Putty):
Pasul 9: Cod, test și simulator Python
Codul este disponibil pe Github. games_pi_only.py și toate fișierele BMP sunt necesare.
git clone href = https://github.com/makeTVee/ledmatrix/tree/master/python/pi_only
Codul are o opțiune pentru a rula în modul de simulare în afara Pi folosind pygame pentru a simula matricea. Acest lucru este foarte util pentru a dezvolta noi caracteristici fără a avea acces direct la hardware-ul matricei. De asemenea, depanarea este mult mai ușoară. Trebuie să setați constanta PI pentru a activa modul de simulare (Linia 15):
PI = Fals
În acest mod de simulare, altfel se folosește tastatura în locul gamepad-ului Bluetooth. Butoanele 1, 2, 3, 4 sunt mapate la A, B, X, Y ale gamepadului, tastele săgeți pentru direcții, „s” pentru start și „x” pentru selectare. Puteți utiliza un editor standard plus consola sau câteva IDE integrate, cum ar fi Micosoft Visual Studio Code sau Jetbrain PyCharm pentru a face dezvoltarea pe computerul dvs.
Dacă utilizați matricea și Raspberry Pi, trebuie să definiți:
PI = Adevărat
Pentru a copia codul în Raspberry Pi, puteți utiliza comanda scp (Windows WinSCP). Deschideți o fereastră de consolă, comutați la folderul care conține fișierele Github și apelați
scp games_pi_only [email protected]: / home / pi
scp *.bmp [email protected]: / home / pi
apoi conectați-vă la Pi prin ssh (utilizatorii Windows pot folosi Putty):
după conectarea cu succes, puteți porni codul python apelând:
sudo python3 games_pi_only.py
Dacă codul rulează corect, puteți activa pornirea automată apelând:
sudo nano /etc/rc.local
și adăugați următoarea linie înainte de ieșirea 0:
/ usr / bin / nice -n -20 python3 /home/pi/games_pi_only.py &
Salvați (Ctrl + O) și Ieșiți (Ctrl + X)
Pasul 10: Test final și furnir
Înainte ca furnirul să fie lipit pe partea din față, matricea trebuie testată pentru a se asigura că toate LED-urile funcționează. Este mult mai ușor să reparați ceva înainte ca furnirul să fie lipit.
Furnirul de lemn folosit este o hârtie specială pentru furnir de arțar numită Microwood, care este acoperită cu o singură parte cu hârtie și are o grosime de 0, 1 mm. Partea de hârtie poate fi lipită direct pe mdf folosind lipici de hârtie standard fără apă.
Pasul 11: Rezultatul
Distrează-te și bucură-te de joc!
Marele Premiu la Concursul Raspberry Pi 2020
Recomandat:
Cadru de afișaj pentru laptop pentru laptop, din lemn: 6 pași (cu imagini)
Cadru de afișaj pentru laptop pentru laptopuri: Când laptopul meu vechi a murit în cele din urmă, nu am vrut toate componentele perfect funcționale care umpleau un depozit de deșeuri. Prin urmare, am recuperat panoul LCD și am construit un cadru simplu din lemn pentru a-l ține pentru a fi utilizat ca monitor autonom. Am proiectat acest produs
Volan și pedale DIY pentru computer din carton! (Feedback, schimbătoare de palete, afișaj) pentru simulatoare de curse și jocuri: 9 pași
Volan și pedale DIY pentru PC din carton! (Feedback, schimbătoare de palete, afișaj) pentru jocuri și simulatoare de curse: Hei tuturor! În aceste vremuri plictisitoare, ne întoarcem cu toții în căutarea a ceva de făcut. Evenimentele de curse din viața reală au fost anulate și au fost înlocuite cu simulatoare. Am decis să construiesc un simulator ieftin care să funcționeze impecabil, cu condiția
Cum se utilizează câteva bucăți de lemn pentru a se asambla într-un braț de robot din lemn drăguț și puternic: 10 pași
Cum se utilizează câteva bucăți de lemn pentru a se asambla într-un braț de roboți din lemn drăguț și puternic: numele brațului robot este WoodenArm. Arată foarte drăguț! Dacă doriți mai multe detalii despre WoodenArm, vă rugăm să consultați www.lewansoul.com Acum putem face o introducere despre WoodenArm, să mergem mai departe
Suport telefonic pentru mașină din lemn pentru încărcare fără fir Google Home: 7 pași (cu imagini)
Google Home Wireless Wireless Charging Mount Car Phone Mount: Bun venit! Ați dorit vreodată să puneți o întrebare Google în timp ce conduceți fără să vă deschideți telefonul? Asistentul Google este o aplicație excelentă, cu funcții interesante, dar necesită să deblocați telefonul și să aveți aplicația deschisă sau să țineți apăsat acasă, dar
Mod pentru laptop pentru furnir din lemn: 9 pași (cu imagini)
Mod pentru laptop pentru furnir din lemn: acesta este primul meu instructiv YAY! În acest Instructable vă voi arăta cum să aplicați un finisaj de furnir de lemn laptopului dvs. pentru a obține un aspect vechi de școală tehnologiei moderne