Mundarija:

Yog'ochli LED displey Raspberry Pi Zero tomonidan quvvatlanadi: 11 qadam (rasmlar bilan)
Yog'ochli LED displey Raspberry Pi Zero tomonidan quvvatlanadi: 11 qadam (rasmlar bilan)

Video: Yog'ochli LED displey Raspberry Pi Zero tomonidan quvvatlanadi: 11 qadam (rasmlar bilan)

Video: Yog'ochli LED displey Raspberry Pi Zero tomonidan quvvatlanadi: 11 qadam (rasmlar bilan)
Video: เคยเป็นกันหรือเปล่า บอร์ด Raspberry Pi Zero ไฟ LED ไม่ติดตั้งแต่ครั้งแรกที่ใช้ #Shorts 2024, Noyabr
Anonim
Raspberry Pi Zero bilan ishlaydigan yog'ochdan yasalgan LED displey
Raspberry Pi Zero bilan ishlaydigan yog'ochdan yasalgan LED displey
Raspberry Pi Zero bilan ishlaydigan yog'ochdan yasalgan LED displey
Raspberry Pi Zero bilan ishlaydigan yog'ochdan yasalgan LED displey
Raspberry Pi Zero tomonidan ishlangan yog'ochdan yasalgan LED displey
Raspberry Pi Zero tomonidan ishlangan yog'ochdan yasalgan LED displey

Ushbu loyiha 78x35 sm o'lchamdagi 20x10 pikselli WS2812 asosidagi LED displeyni amalga oshiradi, uni retro o'yinlarni o'ynash uchun yashash xonasiga osongina o'rnatish mumkin. Ushbu matritsaning birinchi versiyasi 2016 yilda qurilgan va boshqa ko'plab odamlar tomonidan qayta tiklangan. Bu tajriba matritsaning yangi versiyasini yaratish va uni instablesables.com saytiga olib kelish uchun barcha yaxshilanishlarni yakunlash uchun ishlatilgan. Asosiy yangi xususiyatlar - bu Raspberry Pi Zero -ning yangilanishi va Pi A plus Arduino -dan foydalanish va oldingi katta boshqaruvni Bluetooth -gamepad bilan almashtirish. Bundan tashqari, dasturiy ta'minot takomillashtirildi, simulyator, shu jumladan, matritsaning apparatiga kirish imkoni bo'lmasa ham, kompyuterda kodni ishlab chiqish imkonini beradi.

Ushbu LED matritsaning o'ziga xos xususiyati - bu LEDni o'chirish uchun uni yopish va yashirish uchun ishlatiladigan maxsus yog'och qoplamasi. Bu texnologik bo'lmagan odamlarni qabul qilish omilini oshiradi;-) Albatta, agar bu maxsus qoplama sizning mamlakatingizda mavjud bo'lmasa, siz LEDlarni yashirish uchun akril kabi boshqa tarqoq materiallardan ham foydalanishingiz mumkin. Loyihani qayta qurishni osonlashtirish uchun kelajakda ba'zi asosiy qismlarni taqdim etish ham rejalashtirilgan.

Ta'minot:

  • Raspberry Pi Zero W (ba'zi moslashuvlar bilan boshqa barcha modellar ham ishlaydi)
  • 200 LED/s (30 LED/m bo'lgan WS2812B LED chiziqlar)
  • MAX7219 bilan 4x SPI LED matritsali displey
  • Kabellar
  • Bluetooth geympad (masalan, bu Pimoroni)
  • Kamida 5A kuchlanishli 5V quvvat manbai
  • MDF yog'och lazer bilan kesish uchun
  • Yog'och qoplamali yoki diffuzion akril plastinka
  • Kondensator, rezistor
  • Ba'zi vintlardek

1 -qadam: lazerni kesish

Lazerli kesish
Lazerli kesish
Lazerli kesish
Lazerli kesish
Lazerli kesish
Lazerli kesish

Matritsaning tayanch tuzilishi 3 mm qalinlikdagi MDF yog'ochdan yasalgan va lazer bilan kesilgan. Agar sizda lazerli kesuvchi bo'lmasa, siz ponoko.com yoki formulor.de kabi onlayn xizmatdan foydalanishingiz yoki o'zingizning muhitingizdagi keyingi fablab/makerspace bilan bog'lanishingiz mumkin. Bundan tashqari, karton yoki boshqa engil materiallardan foydalanish mumkin, lekin biriktirilgan fayllar 3 mm qalinlikdagi dizaynga ega, shuning uchun ingichka yoki qalinroq materiallar fayllarni qayta loyihalashni talab qiladi. Dizayn Fusion 360 -da qilingan. Aksariyat qismlar bir -biriga mahkam o'rnashganda ushlab turiladi, faqat tashqi chegaralar kabi qismlarni yog'och elim yordamida yopishtirish kerak. Har qanday elim ishlatishdan oldin matritsangiz to'liq ishlaganligiga ishonch hosil qiling! Bundan tashqari, yog'och qoplamani yopishtirish kerak, lekin bu hamma narsa ishlashini ta'minlaganidan keyingi oxirgi qadam.

Orqa panelning o'ng (pastki) tomonida elektron komponentlarni matritsaga mahkamlash uchun kesilgan segment mavjud va shpon yopishtirilganda ham bu komponentlarga kira oladi.

2 -qadam: LEDlarni o'rnating

LEDlarni o'rnating
LEDlarni o'rnating
LEDlarni o'rnating
LEDlarni o'rnating
LEDlarni o'rnating
LEDlarni o'rnating

LED chiziqlar 30 LED/m WS2812 standart chiziqlar bo'lib, ular Amazon, eBay yoki butun dunyodagi boshqa onlayn -do'konlarda mavjud. Bu, odatda, mavjud bo'lgan eng arzon LED tasmasi. Agar siz boshqa LEDlarni ishlatmoqchi bo'lsangiz, matritsaga mos keladigan 30 LED/m masofani ta'minlashingiz kerak. Lazerli kesilgan segmentlarda LED kengligi 10 sm bo'lgan kichik kesilgan joylar mavjud. Bu LED chiziqlar orqa tarafida ikki tomonlama lentaga ega, shuning uchun ularni aniq joylashuvdan so'ng to'g'ridan-to'g'ri MDFga yopishtirish mumkin. Lentani ishlatishdan oldin har bir chiziqning to'g'ri yo'nalishini tekshiring (DIN-DOUT yo'nalishi).

Ulanish sxemasi zig-zag, shuning uchun oxirida matritsaga faqat bitta kirish pimi bor va kabel uzunligi iloji boricha qisqa. Quvvatni to'g'ri taqsimlash va matritsaning yuqori qismidagi kabelni kamaytirish uchun har bir LED chizig'i matritsaning pastki qismida 5V va GND ga ulangan. 5V va GND chizig'ini tarqatish uchun siz bitta simli yoki PCB prototipini ishlatishingiz mumkin.

3 -qadam: yig'ish

O'rnatish
O'rnatish
O'rnatish
O'rnatish
O'rnatish
O'rnatish

Portlash ko'rinishi yig'ilish uchun to'g'ri bo'laklarni aniqlashga yordam beradi. Bosqichma-bosqich o'rnatish rasmlariga amal qiling. Orqa panelda uzun yon devorlarni va ba'zi qisqa devorlarni ushlab turish uchun o'zaro faoliyat tuzilmalar mavjud. Agar siz qismlarni o'rnatishda muammolarga duch kelsangiz, uni tuzatish uchun qumli qog'ozdan foydalaning.

4 -qadam: Lehimlash

Lehimlash
Lehimlash
Lehimlash
Lehimlash

U erda turli chiziqlar uchun elektr uzatish liniyalarini lehimlashning turli usullari mavjud. Turli simlarni lehimlash uchun siz bitta simli yoki misdan yasalgan oddiy temir yo'lni ishlatishingiz mumkin. Bunday holda, elektr relslarni chiziqlarga yo'naltirish uchun PCB prototiplari bo'laklari ishlatilgan. WS2812B chiziqlari allaqachon alohida quvvat kabellariga ega, ular yordamida siz temir yo'lni birinchi chiziqli kirishga ulashingiz mumkin (rasmning chap tomonida).

5 -qadam: SPI displeyini o'rnating

SPI displeyini o'rnating
SPI displeyini o'rnating

O'yin ballari va matnni ko'rsatish uchun MAX7219 LED drayveriga asoslangan LED matritsali displey ishlatiladi. U SPI (ketma -ket periferik interfeys) orqali Raspberry Pi -ga ulangan. 8x8 o'lchamdagi to'rtta displey 32x8 pikselli nuqta matritsali displeyga birlashtirilgan. Masalan, 8x8 pikselli displeylarni sotib olishingiz mumkin. eBay -da 32x8 pikselli birlashtirilgan displeylar ham mavjud. Bundan tashqari, sizda turli xil rang variantlari mavjud; bu holda qizil displeylar ishlatilgan. SPI siljish registri kabi ishlaganligi sababli, displeylar ketma -ket bir -biriga ulanadi, bu birinchi matritsadagi ma'lumotlarni ikkinchisiga va shu bilan birga displeyning o'ng tomonidan boshlanadi.

Bu displeyni faqat tashqi tomondan o'qish mumkin, agar u to'g'ridan -to'g'ri qoplama qatlamining orqasida joylashgan bo'lsa. Aks holda, faqat qizil loyqalik ko'rinadi. Shunday qilib, siz uni orqa panel va matritsa yuzasi orasidagi masofa 30 mm bo'lgan orqa panelning kesilgan segmentining yuqori qismiga o'rnatishingiz kerak. Yog'ochdan yasalgan qismlar va vintlardek 19 mm masofani orqa va tenglikni o'rtasida moslashtirish uchun ishlatganman, lekin siz har qanday tashqi bo'shliqlarni ham ishlatishingiz mumkin.

Displeyni ulash 7 -bosqichda ko'rsatilgan.

6 -qadam: Pi -ni o'rnating

Pi -ni o'rnating
Pi -ni o'rnating
Pi -ni o'rnating
Pi -ni o'rnating
Pi -ni o'rnating
Pi -ni o'rnating

Ushbu o'rnatishda Raspberry Pi Zero ishlatiladi. Siz boshqa Raspberry Pi modelini ham ishlatishingiz mumkin, lekin Wi -Fi va Bluetooth -ning yangi versiyalari simsiz geympadlarga osongina ulanish va dasturlashni soddalashtirish imkonini beradi. Siz Pi -ni kamida ikkita vint va kichik ajratgich yordamida orqa panelda mahkamlashingiz mumkin.

Raspberry Pi Zero W uchun quyidagi pinlar ishlatiladi:

  • PIN 2: 5V
  • PIN 6: GND
  • GPIO18 -> LED chiziqlar
  • GPIO11: SPI CLK -> MAX7219 matritsali CLK
  • GPIO10: SPI MOSI -> DIN MAX7219 matritsasi
  • GPIO8: SPI CS -> MAX7219 matritsa CS

Ba'zi odamlar LEDlar uchun GPIO18 -dan foydalanish bilan bog'liq muammolar haqida xabar berishdi. Iltimos, bu holda GPIO21 dan foydalaning. Agar shunday bo'lsa, siz 21 -satrdagi kodni pixel_pin = board. D21 ga o'zgartirishingiz kerak.

WS2812B tasmasi bu erda o'z xususiyatlaridan tashqarida ishlatiladi. Odatda bu DINda 5V mantiqiy darajani talab qiladi, lekin Pi faqat 3, 3V ni ta'minlaydi. Agar bu ko'p hollarda ishlasa ham, buni tasmangiz bilan sinab ko'rishingiz kerak. Agar u ishlamasa, siz Pi va tasma o'rtasida 74HCT245 yoki boshqa 3V3 dan 5V gacha bo'lgan konvertorni qo'shishingiz mumkin.

7 -qadam: simlar va elektr ta'minoti

Kabel va elektr ta'minoti
Kabel va elektr ta'minoti
Kabel va elektr ta'minoti
Kabel va elektr ta'minoti
Kabel va elektr ta'minoti
Kabel va elektr ta'minoti

Kabellarni ulash sxemaga muvofiq amalga oshiriladi. Quvvat manbai 5V doimiy quvvat manbai.

Matritsani oson yoqish/o'chirish uchun elektr vilkasi va matritsa sxemalari o'rtasida kalit qo'shiladi. Shunga qaramay, Raspberry Pi qattiq o'chirishni yoqtirmagani uchun, matritsani almashtirishdan oldin Gamepad orqali Pi -ni xavfsiz o'chirish uchun dasturiy ta'minotda o'chirish imkoniyati mavjud.

LED chiziqli DIN pin rezistor orqali Pi ga ulanadi, shuningdek, quvvat manbaini tamponlash uchun katta kondansatör (4700 uF) qo'shiladi. Qo'shimcha ma'lumot uchun Adafruit Überguide -ni tekshiring.

LEDlar har bir LED uchun 60mA maksimal oqimni iste'mol qiladilar, shuning uchun maksimal oqim 200x60mA = 12A bo'lishi mumkin !!! Yorqinlikni kamaytirib, barcha LEDlarni to'liq oq rangda ishlatmasak, bu nazariy jihatdan ko'proq qiymat, lekin bu maksimal oqimga erishilgan kodga bog'liq. Shuning uchun etarlicha katta quvvat manbaini tanlash juda muhim. Ko'pgina ilovalar uchun 5V/5A (25W) quvvat manbai etarli bo'lishi kerak.

Orqa panelni Pi va Matrix displeyi yordamida mahkamlash uchun, yog'ochdan yasalgan kichik bo'laklarni qirralarning bo'ylab siljitish, shuningdek, orqa panelni joyida ushlab turish uchun vintlarni ishlatish mumkin.

8 -qadam: Pi -ni o'rnating

Pi o'rnatish
Pi o'rnatish

1. Raspberrypi.org saytidan so'nggi Raspbian lite tasvirini yuklab oling

2. Uni va SD -kartaga nusxalash, 8 Gb etarli. Masalan, foydalanishingiz mumkin. buni qilish uchun etcher.

3. Pi -ni SD -karta bilan yuklashdan oldin, WIFI va ssh -ga kirishni tayyorlang

4. SD -kartani istalgan kompyuterga joylashtiring, yuklash papkasiga kirish mumkin

5. Quyidagi satrlarni wpa_supplicant.conf fayliga ko'chiring (agar mavjud bo'lmasa, uni yarating) va Wi -Fi va mintaqangizga qarab parametrlarni o'zgartiring.

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

mamlakat = AQSh update_config = 1 tarmoq = {ssid = "Uy Wi-Fi" psk = "mypassword" key_mgmt = WPA-PSK}

6. Sshga kirishni yoqish uchun yuklash uchun ssh deb nomlangan bo'sh faylni (kengaytmasiz) qo'shing

7. Endi SD -kartani Raspberry Pi -ga joylashtiring va uni yuklang. Pi -ning IP -manzilini olish uchun Wi -Fi routeringizni tekshiring

8. terminali (Linux, Mac) yoki boshqalar yordamida Pi ga SSH ulanishini boshlang. Windows uchun macun. Pi IP manzilini 192.168.x.y o'rniga kiriting

ssh [email protected]

9. Pi -ni yangilang (biroz vaqt ketadi!)

sudo apt-get yangilanishi

sudo apt-get upgrade

10. Pip va sozlash vositasini o'rnating

sudo apt-get python3-pip ni o'rnating

sudo pip3 install -setuptools -ni yangilang

11. Neopixel drayverini, ws281x lib, pygame va libsdl -ni o'rnating

sudo pip3 rpi_ws281x adafruit-circuitpython-neopixel-ni o'rnating

sudo pip3 pygame o'rnatish sudo apt-get install libsdl1.2-dev sudo pip3 install-luma.led_matrix-ni yangilang

12. Raps-config-ga qo'ng'iroq qilib, SPI-ni yoqing, 5 Interfacing Options / P4 SPI / Enable-ga o'ting.

sudo raspi-config

13. Bluetooth Gamepad -ni qo'shing

sudo bluetoothctl

[bluetooth]# bluetooth -da# agent [bluetooth] -da# ulanishi mumkin [bluetooth -da]# skanerlash: aa: bb: cc: dd: ee: ff [bluetooth]# ishonch aa: bb: cc: dd: ee: ff [bluetooth]# ulanish aa: bb: cc: dd: ee: ff [bluetooth]# chiqish

bu erda aa: bb: cc: dd: ee: ff - bluetooth geympadingizning MAC libosi. Bu manzil "skanerlash" buyrug'i chaqirilgandan keyin ko'rsatilishi kerak. Bluetooth -kontrolleringiz ulanishga tayyor ekanligiga ishonch hosil qiling, buni qanday qilish kerakligi tekshirgich qo'llanmasiga qarang.

14. Endi siz Pi orqali ulanishingiz mumkin, standart parol - malina (Windows foydalanuvchilari Putty -dan foydalanishlari mumkin):

ssh [email protected]

9 -qadam: Python kodi, test va simulyator

Python kodi, test va simulyator
Python kodi, test va simulyator
Python kodi, test va simulyator
Python kodi, test va simulyator
Python kodi, test va simulyator
Python kodi, test va simulyator

Kod Github -da mavjud. games_pi_only.py va barcha bmp fayllari kerak.

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

Kodda matritsani simulyatsiya qilish uchun pygame yordamida Pi tashqarisida simulyatsiya rejimida ishlash imkoniyati mavjud. Bu matritsa apparatiga to'g'ridan -to'g'ri kirmasdan yangi funktsiyalarni ishlab chiqish uchun juda foydali. Bundan tashqari, disk raskadrovka qilish ancha oson. Simulyatsiya rejimini yoqish uchun siz PI konstantasini o'rnatishingiz kerak (15 -qator):

PI = noto'g'ri

Ushbu simulyatsiya rejimida, Bluetooth o'yin paneli o'rniga klaviatura ishlatiladi. 1, 2, 3, 4 tugmachalari geympadning A, B, X, Y xaritalari, yo'nalish uchun o'q tugmalari, boshlash uchun "s" va tanlash uchun "x" xaritasi bilan belgilanadi. Kompyuteringizda ishlab chiqish uchun siz standart muharrirni, konsolni yoki Micosoft Visual Studio Code yoki Jetbrain PyCharm kabi ba'zi integratsiyalashgan ID -lardan foydalanishingiz mumkin.

Agar siz matris va Raspberry Pi dan foydalansangiz, quyidagilarni aniqlashingiz kerak bo'ladi.

PI = To'g'ri

Kodni Raspberry Pi -ga nusxalash uchun siz scp buyrug'idan foydalanishingiz mumkin (Windows WinSCP). Konsol oynasini oching, Github fayllari joylashgan papkaga o'ting va qo'ng'iroq qiling

scp games_pi_only [email protected]:/home/pi

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

keyin ssh orqali Pi -ga ulaning (Windows foydalanuvchilari Putty -dan foydalanishlari mumkin):

ssh [email protected]

muvaffaqiyatli kirgandan so'ng, siz qo'ng'iroq qilib, python kodini ishga tushirishingiz mumkin:

sudo python3 games_pi_only.py

Agar kod to'g'ri ishlayotgan bo'lsa, qo'ng'iroq qilib, avtomatik ishga tushirishni yoqishingiz mumkin:

sudo nano /etc/rc.local

va 0 chiqishidan oldin quyidagi qatorni qo'shing:

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

Saqlash (Ctrl+O) va chiqish (Ctrl+X)

10 -qadam: Yakuniy sinov va qoplama

Yakuniy test va qoplama
Yakuniy test va qoplama
Yakuniy test va qoplama
Yakuniy test va qoplama
Yakuniy test va qoplama
Yakuniy test va qoplama

Qoplama old tomondan yopishtirilmasdan oldin, barcha LEDlarning ishlashini ta'minlash uchun matritsani tekshirish kerak. Shpon yopishtirilmasdan oldin biror narsani tuzatish ancha oson.

Ishlatilgan yog'och qoplamasi Microwood deb nomlangan maxsus chinor qoplamali qog'oz bo'lib, u bir tomoni qog'oz bilan qoplangan va qalinligi 0,1 mm. Qog'oz tomoni to'g'ridan -to'g'ri MDF -ga standart suvsiz qog'ozli elim yordamida yopishtirilishi mumkin.

11 -qadam: Natija

Natija
Natija
Natija
Natija

O'yin -kulgidan zavqlaning va zavqlaning!

Raspberry Pi tanlovi 2020
Raspberry Pi tanlovi 2020
Raspberry Pi tanlovi 2020
Raspberry Pi tanlovi 2020

Raspberry Pi tanlovining bosh mukofoti - 2020

Tavsiya: