Satura rādītājs:

Koka LED spēļu displejs, ko nodrošina Raspberry Pi Zero: 11 soļi (ar attēliem)
Koka LED spēļu displejs, ko nodrošina Raspberry Pi Zero: 11 soļi (ar attēliem)

Video: Koka LED spēļu displejs, ko nodrošina Raspberry Pi Zero: 11 soļi (ar attēliem)

Video: Koka LED spēļu displejs, ko nodrošina Raspberry Pi Zero: 11 soļi (ar attēliem)
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, Jūlijs
Anonim
Koka LED spēļu displejs, ko nodrošina Raspberry Pi Zero
Koka LED spēļu displejs, ko nodrošina Raspberry Pi Zero
Koka LED spēļu displejs, ko nodrošina Raspberry Pi Zero
Koka LED spēļu displejs, ko nodrošina Raspberry Pi Zero
Koka LED spēļu displejs, ko nodrošina Raspberry Pi Zero
Koka LED spēļu displejs, ko nodrošina Raspberry Pi Zero

Šis projekts realizē uz 20x10 pikseļu WS2812 balstītu LED displeju ar izmēru 78x35 cm, ko var viegli uzstādīt dzīvojamā istabā, lai spēlētu retro spēles. Pirmā šīs matricas versija tika uzbūvēta 2016. gadā, un to pārbūvēja daudzi citi cilvēki. Šī pieredze tika izmantota, lai apkopotu visus uzlabojumus, lai izveidotu jaunu matricas versiju un tagad to ievietotu vietnē instructables.com. Galvenās jaunās funkcijas ir Raspberry Pi Zero atjauninājums, izmantojot un Pi A plus Arduino, un iepriekšējā lielā kontroliera aizstāšana ar Bluetooth spēļu tastatūru. Tika uzlabota arī programmatūra, ieskaitot simulatoru, kas ļauj izstrādāt kodu datorā, pat ja jums nav piekļuves matricas aparatūrai.

Viena šīs LED matricas īpatnība ir īpašs koka finieris, ko izmanto, lai aizklātu gaismas diodi un tās paslēptu, kad gaismas diodes ir atspējotas. Tas ievērojami palielina citu cilvēku pieņemšanas koeficientu;-) Protams, ja šis īpašais finieris jūsu valstī nav pieejams, varat arī izmantot kādu citu izkliedētu materiālu, piemēram, akrilu, lai paslēptu gaismas diodes. Nākotnē plānots nodrošināt arī dažas galvenās detaļas, lai atvieglotu projekta atjaunošanu.

Piegādes:

  • Raspberry Pi Zero W (ar dažiem pielāgojumiem darbosies arī visi pārējie modeļi)
  • 200 LED/s (WS2812B LED svītras ar 30 LED/m)
  • 4x SPI LED matricas displejs ar MAX7219
  • Kabeļi
  • Bluetooth spēļu tastatūra (piemēram, šī no Pimoroni)
  • Barošanas avots 5V ar vismaz 5A
  • MDF koksne lāzera griešanai
  • Koka finieris vai difūzijas akrila plāksne
  • Kondensators, rezistors
  • Dažas skrūves

1. solis: griešana ar lāzeru

Griešana ar lāzeru
Griešana ar lāzeru
Griešana ar lāzeru
Griešana ar lāzeru
Griešana ar lāzeru
Griešana ar lāzeru

Matricas pamatstruktūra ir izgatavota no 3 mm biezas MDF koka un sagriezta ar lāzera griezēju. Ja jums nav lāzera griezēja, varat izmantot tiešsaistes pakalpojumu, piemēram, ponoko.com vai formulor.de, vai sazināties ar nākamo fablab/makerspace savā vidē. Ir iespējams izmantot arī kartonu vai citus vieglākus materiālus, bet pievienotie faili ir paredzēti 3 mm biezumam, tāpēc plānākiem vai biezākiem materiāliem ir jāpārveido faili. Dizains tika veikts programmā Fusion 360. Lielākā daļa detaļu turas kopā, tikai bīdot tās vietā, tikai dažas detaļas, piemēram, ārējās robežas, ir jāpielīmē kopā, izmantojot koka līmi. Pirms līmes uzklāšanas pārliecinieties, vai jūsu matrica pilnībā darbojas! Arī koka finieris ir jāpielīmē, bet tas ir pēdējais solis pēc tam, kad ir nodrošināts, ka viss darbojas.

Aizmugurējās plāksnes labajā (apakšējā) pusē ir izgriezts segments, kas nodrošina elektronisko komponentu piestiprināšanu pie matricas un joprojām var piekļūt šīm sastāvdaļām, kad tiek pielīmēts finieris.

2. darbība: uzstādiet gaismas diodes

Instalējiet gaismas diodes
Instalējiet gaismas diodes
Instalējiet gaismas diodes
Instalējiet gaismas diodes
Instalējiet gaismas diodes
Instalējiet gaismas diodes

LED svītras ir standarta 30 LED/m WS2812 svītras, kas pieejamas Amazon, eBay vai citos tiešsaistes veikalos visā pasaulē. Parasti šī ir arī lētākā pieejamā adresējamā LED josla. Ja vēlaties izmantot citas gaismas diodes, jums jānodrošina 30 LED/m attālums, lai tas atbilstu matricas modelim. Lāzergrieztiem segmentiem ir mazi izgriezti apgabali, lai tie atbilstu 10 cm LED platumam. Šīm LED svītrām aizmugurē ir abpusēja lente, tāpēc pēc precīzas pozicionēšanas tās var vienkārši pielīmēt MDF. Pirms lentes lietošanas pārbaudiet katras svītras pareizo orientāciju (virziens DIN-DOUT).

Elektroinstalācijas modelis ir zigzaga veidā, tāpēc beigās matricai ir tikai viena ievades tapa, un kabeļu garumi ir pēc iespējas īsāki. Lai pareizi sadalītu jaudu un samazinātu kabeļus matricas augšdaļā, katra LED josla ir savienota ar 5V un GND matricas apakšā. Lai izplatītu 5V un GND līniju, varat izmantot atsevišķus vadus vai PCB prototipus.

3. solis: montāža

Montāža
Montāža
Montāža
Montāža
Montāža
Montāža

Sprādziena skats palīdz noteikt pareizos mezgla gabalus. Vienkārši sekojiet soli pa solim instalēšanas attēliem. Aizmugures plaknei ir šķērssienas, lai noturētu garās sānu sienas un dažas īsās sienas. Ja jums ir problēmas ar gabalu uzstādīšanu, izmantojiet smilšpapīru, lai to labotu.

4. solis: lodēšana

Lodēšana
Lodēšana
Lodēšana
Lodēšana

Ir dažādi veidi, kā lodēt elektropārvades līnijas dažādām svītrām kopā. Dažādu vadu lodēšanai jūs varat izmantot atsevišķus vadus vai kādu kopēju sliedi no vara. Šajā gadījumā PCB prototipa gabali tika izmantoti, lai vadītu strāvas sliedes līdz svītrām. WS2812B svītrām jau ir atsevišķi barošanas kabeļi, kurus varat izmantot, lai savienotu strāvas sliedi ar pirmo svītru ieeju (kreisajā pusē attēlā).

5. darbība: instalējiet SPI displeju

Instalējiet SPI displeju
Instalējiet SPI displeju

Lai parādītu spēles rezultātus un tekstu, tiek izmantots LED matricas displejs, kura pamatā ir LED draiveris MAX7219. Tas ir savienots ar SPI (Serial Peripheral Interface) ar Raspberry Pi. Četri 8x8 displeji ir apvienoti ar 32x8 pikseļu punktu matricas displeju. Jūs varat iegādāties šo 8x8 pikseļu displeju, piemēram, vietnē eBay ir pieejami arī kombinēti 32x8 pikseļu displeji. Arī jums ir dažādas krāsu iespējas; šajā gadījumā tika izmantoti sarkani displeji. Tā kā SPI darbojas kā maiņu reģistrs, displeji ir savienoti kopā sērijveidā, savienojot datus no pirmās matricas uz datiem otrajā un tā tālāk, sākot no displeja labās puses.

Šis displejs ir nolasāms tikai no ārpuses, ja tas ir novietots tieši aiz finiera slāņa. Ja nē, ir redzams tikai sarkans izplūdums. Tātad jums tas ir jāuzstāda aizmugurējās plāksnes izgriezuma segmenta augšpusē ar 30 mm attālumu starp aizmugures plāksnes virsmu un matricas virsmu. Esmu izmantojis dažus koka gabalus un skrūves, lai pielāgotu trūkstošos 19 mm starp aizmugurējo plāksni un PCB, bet jūs varat arī izmantot jebkāda veida ārējos starplikas.

Displeja elektroinstalācija ir parādīta 7. darbībā.

6. darbība: instalējiet Pi

Instalējiet Pi
Instalējiet Pi
Instalējiet Pi
Instalējiet Pi
Instalējiet Pi
Instalējiet Pi

Šajā instalācijā tiek izmantots Raspberry Pi Zero. Varat arī izmantot jebkuru citu Raspberry Pi modeli, bet jaunāki ar integrētu WiFi un Bluetooth ļauj ērti izveidot savienojumu ar bezvadu spēļu pultīm un vienkāršot programmēšanu. Jūs varat nostiprināt Pi, izmantojot vismaz divas skrūves un mazus starplikas, lai pieskrūvētu to aizmugurējai plāksnei.

Raspberry Pi Zero W tiek izmantotas šādas tapas:

  • PIN 2: 5V
  • PIN 6: GND
  • GPIO18 -> LED svītras
  • GPIO11: SPI CLK -> MAX7219 matrica CLK
  • GPIO10: SPI MOSI -> MAX7219 matrica DIN
  • GPIO8: SPI CS -> MAX7219 matrica CS

Daži cilvēki ziņoja par problēmām, kas saistītas ar GPIO18 izmantošanu gaismas diodēm. Lūdzu, izmantojiet GPIO21 šajā gadījumā. Ja tā, jums jāmaina 21. rindas kods uz pixel_pin = board. D21.

WS2812B sloksne šeit tiek izmantota ārpus tās specifikācijas. Parasti tas prasa 5V loģikas līmeni DIN, bet Pi nodrošina tikai 3, 3V. Pat ja tas vairumā gadījumu darbojas, jums tas jāpārbauda ar sloksni. Ja tas nedarbojas, starp Pi un sloksni varat pievienot līmeņa pārveidotāju, piemēram, 74HCT245 vai jebkuru citu 3V3 līdz 5V pārveidotāju.

7. darbība: elektroinstalācija un barošanas avots

Elektroinstalācija un barošanas avots
Elektroinstalācija un barošanas avots
Elektroinstalācija un barošanas avots
Elektroinstalācija un barošanas avots
Elektroinstalācija un barošanas avots
Elektroinstalācija un barošanas avots

Elektroinstalācija tiek veikta saskaņā ar elektroinstalācijas shēmu. Barošanas avots ir 5 V līdzstrāvas avots.

Lai viegli ieslēgtu/izslēgtu matricu, starp strāvas kontaktdakšu un matricas ķēdēm tiek pievienots slēdzis. Tomēr, tā kā Raspberry Pi nepatīk stingra izslēgšana, programmatūrā ir izslēgšanas iespēja, lai pirms matricas pārslēgšanas droši izslēgtu Pi, izmantojot Gamepad.

LED sloksnes DIN tapa caur rezistoru ir savienota ar Pi, kā arī tiek pievienots liels kondensators (4700uF), lai buferizētu barošanas avotu. Lai iegūtu sīkāku informāciju, lūdzu, skatiet Adafruit Überguide for Neopixels.

Gaismas diodes patērē maksimālo strāvu 60mA uz LED, tāpēc ir iespējama maksimālā strāva 200x60mA = 12A !!! Samazinot spilgtumu un neizmantojot visas gaismas diodes pilnā baltā krāsā, tā ir vairāk teorētiska vērtība, taču tas ir atkarīgs no koda, kura maksimālā strāva tiek sasniegta. Tāpēc ir ļoti svarīgi izvēlēties pietiekami lielu barošanas avotu. Lielākajai daļai lietojumprogrammu vajadzētu pietikt ar barošanas avotu ar 5V/5A (25W).

Lai nofiksētu aizmugurējo plāksni ar Pi un Matrix displeju, dažus mazus koka gabalus var izmantot, lai tos sašķobītu malās, kā arī izmantot skrūves, lai noturētu aizmugurējo plāksni vietā.

8. darbība. Iestatiet Pi

Iestatiet Pi
Iestatiet Pi

1. Lejupielādējiet jaunāko Raspbian lite attēlu no raspberrypi.org

2. Kopējiet to un SD karti, pietiek ar 8 GB. Jūs varat izmantot, piem. etcher, lai to izdarītu.

3. Pirms Pi palaišanas ar SD karti sagatavojiet WIFI un ssh piekļuvi

4. Ievietojiet SD karti jebkurā datorā, jābūt pieejamai sāknēšanas mapei

5. Nokopējiet šādas rindiņas failā wpa_supplicant.conf (ģenerējiet to, ja tāda nav) un mainiet parametrus atkarībā no sava Wifi un reģiona

ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev

valsts = ASV update_config = 1 tīkls = {ssid = "Home Wifi" psk = "mypassword" key_mgmt = WPA-PSK}

6. Pievienojiet sākšanai tukšu failu ar nosaukumu ssh (bez paplašinājuma), lai iespējotu piekļuvi ssh

7. Tagad ievietojiet SD karti Raspberry Pi un ielādējiet to. Pārbaudiet savu wifi maršrutētāju, lai iegūtu Pi IP adresi

8. sāciet SSH savienojumu ar Pi, izmantojot termināli (Linux, Mac) vai, piem. Ielīmējiet Windows. Ievietojiet Pi IP, nevis 192.168.x.y

ssh [email protected]

9. Atjauniniet Pi (aizņem kādu laiku!)

sudo apt-get update

sudo apt-get jauninājums

10. Instalējiet pip un iestatīšanas rīku

sudo apt-get instalēt python3-pip

sudo pip3 instalēt -atjaunināt iestatīšanas rīkus

11. Instalējiet Neopixel draiveri, ws281x lib, pygame un libsdl

sudo pip3 instalējiet rpi_ws281x adafruit-circuitpython-neopixel

sudo pip3 instalēt pygame sudo apt-get install libsdl1.2-dev sudo pip3 install --upgrade luma.led_matrix

12. Iespējot SPI, zvanot uz raps-config, dodieties uz 5 saskarnes opcijas / P4 SPI / Iespējot

sudo raspi-config

13. Pievienojiet Bluetooth Gamepad

sudo bluetoothctl

[bluetooth]# aģents [bluetooth]# savienojams pārī [bluetooth]# skenēšana [bluetooth]# pāris aa: bb: cc: dd: ee: ff [bluetooth]# trust aa: bb: cc: dd: ee: ff [bluetooth]# connect aa: bb: cc: dd: ee: ff [bluetooth]# iziet

kur aa: bb: cc: dd: ee: ff ir jūsu Bluetooth spēļu pults MAC kleita. Šī adrese jāparāda pēc komandas “skenēt” izsaukšanas. Pārliecinieties, vai jūsu Bluetooth kontrolieris ir gatavs savienošanai pārī, lūdzu, pārbaudiet kontroliera rokasgrāmatu, kā to izdarīt.

14. Tagad jūs varat izveidot savienojumu ar jums, izmantojot Pi, noklusējuma parole ir aveņu (Windows lietotāji var izmantot Putty):

ssh [email protected]

9. darbība: Python kods, tests un simulators

Python kods, tests un simulators
Python kods, tests un simulators
Python kods, tests un simulators
Python kods, tests un simulators
Python kods, tests un simulators
Python kods, tests un simulators

Kods ir pieejams vietnē Github. games_pi_only.py un visi bmp faili ir nepieciešami.

git clone href = https://github.com/makeTVee/ledmatrix/tree/master/python/pi_only

Kodam ir iespēja darboties simulācijas režīmā ārpus Pi, izmantojot pigame, lai simulētu matricu. Tas ir ļoti noderīgi, lai izstrādātu jaunas funkcijas bez tiešas piekļuves matricas aparatūrai. Arī atkļūdošana ir daudz vienkāršāka. Lai aktivizētu simulācijas režīmu (15. rinda), jums ir jāiestata PI konstante:

PI = nepatiesa

Šajā simulācijas režīmā Bluetooth spēļu pults vietā tiek izmantota tastatūra. Pogas 1, 2, 3, 4 ir kartētas uz A, B, X, Y no gamepad, bulttaustiņi norādēm, “s” sākumam un “x” izvēlei. Lai veiktu izstrādi datorā, varat izmantot standarta redaktoru, kā arī konsoli vai dažus integrētus IDE, piemēram, Micosoft Visual Studio Code vai Jetbrain PyCharm.

Ja izmantojat matricu un Raspberry Pi, jums ir jādefinē:

PI = taisnība

Lai kopētu kodu uz Raspberry Pi, varat izmantot komandu scp (Windows WinSCP). Atveriet konsoles logu, pārslēdzieties uz mapi, kurā ir Github faili, un zvaniet

scp games_pi_only [email protected]:/home/pi

scp *.bmp [email protected]:/home/pi

pēc tam izveidojiet savienojumu ar Pi, izmantojot ssh (Windows lietotāji var izmantot Putty):

ssh [email protected]

pēc veiksmīgas pieteikšanās, jūs varat sākt python kodu, zvanot:

sudo python3 games_pi_only.py

Ja kods darbojas pareizi, varat iespējot automātisko palaišanu, zvanot:

sudo nano /etc/rc.local

un pirms izejas 0 pievienojiet šādu rindu:

/usr/bin/nice -n -20 python3 /home/pi/games_pi_only.py &

Saglabāt (Ctrl+O) un iziet (Ctrl+X)

10. solis: galīgais tests un finieris

Galīgais tests un finieris
Galīgais tests un finieris
Galīgais tests un finieris
Galīgais tests un finieris
Galīgais tests un finieris
Galīgais tests un finieris

Pirms finiera uzklāšanas uz priekšpuses ir jāpārbauda matrica, lai pārliecinātos, ka visas gaismas diodes darbojas. Pirms finiera pielīmēšanas ir daudz vieglāk kaut ko salabot.

Izmantotais koka finieris ir īpašs kļavas finiera papīrs ar nosaukumu Microwood, kura viena puse ir pārklāta ar papīru un kuras biezums ir 0, 1 mm. Papīra pusi var pielīmēt tieši uz mdf, izmantojot standarta papīra līmi bez ūdens.

11. solis: rezultāts

Rezultāts
Rezultāts
Rezultāts
Rezultāts

Izklaidējieties un izbaudiet spēli!

Raspberry Pi konkurss 2020
Raspberry Pi konkurss 2020
Raspberry Pi konkurss 2020
Raspberry Pi konkurss 2020

Galvenā balva konkursā Raspberry Pi 2020

Ieteicams: