Мазмуну:

Жыгач LED оюн дисплейи Raspberry Pi Zero менен иштейт: 11 кадам (сүрөттөр менен)
Жыгач LED оюн дисплейи Raspberry Pi Zero менен иштейт: 11 кадам (сүрөттөр менен)

Video: Жыгач LED оюн дисплейи Raspberry Pi Zero менен иштейт: 11 кадам (сүрөттөр менен)

Video: Жыгач LED оюн дисплейи Raspberry Pi Zero менен иштейт: 11 кадам (сүрөттөр менен)
Video: Посещение крупнейшего в мире ресторана с торговыми автоматами в Японии | 105 машин 2024, Июль
Anonim
Жыгач LED оюн дисплейи Raspberry Pi Zero менен иштейт
Жыгач LED оюн дисплейи Raspberry Pi Zero менен иштейт
Жыгач LED оюн дисплейи Raspberry Pi Zero менен иштейт
Жыгач LED оюн дисплейи Raspberry Pi Zero менен иштейт
Жыгач LED оюн дисплейи Raspberry Pi Zero менен иштейт
Жыгач LED оюн дисплейи Raspberry Pi Zero менен иштейт

Бул долбоор 78x35 см өлчөмдөгү 20x10 пикселдүү WS2812 негизделген LED дисплейди ишке ашырат, аны ретро оюндарын ойноо үчүн конок бөлмөсүнө оңой эле орнотсо болот. Бул матрицанын биринчи версиясы 2016 -жылы курулган жана башка көптөгөн адамдар тарабынан кайра курулган. Бул тажрыйба матрицанын жаңы версиясын куруу үчүн бардык жакшыртууларды жыйынтыктоо үчүн колдонулду жана азыр аны instablesables.com сайтына алып келди. Негизги жаңы функциялар - бул Raspberry Pi Zero ордуна жаңыртуу жана Pi A плюс Arduino жана мурунку чоң контроллерди Bluetooth геймпадына алмаштыруу. Программалык камсыздоо жакшыртылды, анын ичинде симулятор, бул матрицанын жабдууларына кирүү мүмкүнчүлүгүңүз жок болсо да, компьютерде кодду иштеп чыгууга мүмкүндүк берет.

Бул LED матрицасынын бир өзгөчөлүгү - бул LEDди өчүрүү үчүн, аны жабуу үчүн жана аларды жашыруу үчүн колдонулган атайын жыгач каптоо. Бул технологиялуу эмес адамдардын кабыл алуу факторун жогорулатат;-) Албетте, эгерде бул атайын каптоочу материал сиздин өлкөдө жок болсо, анда сиз дагы башка диффузиялуу материалды колдонуп, LEDди жашыруу үчүн акрилди колдонсоңуз болот. Долбоорду кайра курууну жеңилдетүү үчүн келечекте кээ бир негизги бөлүктөрдү берүү пландаштырылууда.

Берилиштер:

  • Raspberry Pi Zero W (кээ бир адаптация менен, башка бардык моделдер да иштейт)
  • 200 LED/s (30 LED/m менен WS2812B LED тилкелери)
  • MAX7219 менен 4x SPI LED матрицалык дисплей
  • Кабелдер
  • Bluetooth геймпад (мисалы, бул Pimoroniден)
  • Энергия менен камсыздоо 5В, жок дегенде 5А
  • Лазердик кесүү үчүн MDF жыгач
  • Жыгач шпон же диффузиялык акрил табак
  • Конденсатор, резистор
  • Кээ бир бурамалар

1 -кадам: Лазердик кесүү

Лазердик кесүү
Лазердик кесүү
Лазердик кесүү
Лазердик кесүү
Лазердик кесүү
Лазердик кесүү

Матрицанын базалык структурасы жоондугу 3 мм болгон MDF жыгачынан жасалган жана лазердик кескич менен кесилген. Эгерде сизде лазер кескич жок болсо, ponoko.com же formulor.de сыяктуу онлайн кызматын колдоно аласыз же айланаңыздагы кийинки fablab/makerspace менен байланышсаңыз болот. Картон же башка жеңил материалдарды колдонууга да болот, бирок тиркелген файлдар 3мм калыңдыкка ылайыкталган, ошондуктан ичке же калыңыраак материалдар файлдарды кайра иштеп чыгууну талап кылат. Дизайн Fusion 360та жасалды. Бөлүктөрдүн көбү аларды жылдырып гана кармашат, сырткы чектер сыяктуу айрым бөлүктөрдү жыгач клейи менен жабыштыруу керек. Сиздин клавиатураны колдонуудан мурун матрицаңыздын толук иштешин камсыз кылыңыз! Ошондой эле жыгач шыбын жабыштыруу керек, бирок бул баарынын иштешин камсыз кылгандан кийинки акыркы кадам.

Арткы пландын оң (төмөнкү) капталында электрондук компоненттерди матрицага бекитүү үчүн кесилген сегмент бар жана шпон жабыштырылганда дагы бул компоненттерге кирүү мүмкүнчүлүгү бар.

2 -кадам: LED орнотуу

LED орнотуу
LED орнотуу
LED орнотуу
LED орнотуу
LED орнотуу
LED орнотуу

Жарык диоддуу тилкелер - бул стандарттык 30 LED/m WS2812 тилкелери, алар Amazon, eBay же башка онлайн дүкөндөрдө жеткиликтүү. Бул адатта эң арзан даректүү LED тилкеси. Эгерде сиз башка светодиоддорду колдонууну кааласаңыз, анда 30 LED/m аралыкты матрицанын үлгүсүнө туура келүүсүн камсыз кылышыңыз керек. Лазерленген сегменттердин диаметри LED диаметри 10 см болгон чакан жерлери бар. Бул LED тилкелеринин артында эки тараптуу лента бар, андыктан так жайгашуудан кийин аларды MDFке түз эле чаптап койсоңуз болот. Тасманы колдонуудан мурун, ар бир тилкенин туура багытын текшериңиз (DIN-DOUT багыты).

Зымдардын үлгүсү-бул зиг-заг, аягында матрицага бир гана кирүүчү пин бар жана кабелдин узундугу мүмкүн болушунча кыска. Күчтү туура бөлүштүрүү жана матрицанын үстүндөгү кабелдерди азайтуу үчүн, ар бир LED тилкеси матрицанын ылдый жагында 5V жана GNDге туташкан. Сиз 5V жана GND линиясын жайылтуу үчүн жалгыз зымдарды же ПТБларды колдоно аласыз.

3 -кадам: Ассамблея

Ассамблея
Ассамблея
Ассамблея
Ассамблея
Ассамблея
Ассамблея

Жарылуу көрүнүшү жыйын үчүн туура бөлүктөрдү аныктоого жардам берет. Жөн гана этап-этабы менен орнотулган сүрөттөрдү ээрчиңиз. Арткы планда узун каптал дубалдарды жана кээ бир кыска дубалдарды кармоо үчүн кайчылаш структуралар бар. Эгер бөлүктөрдү орнотууда кыйынчылыктар болсо, аны оңдоо үчүн кум кагазын колдонуңуз.

4 -кадам: ширетүү

Soldering
Soldering
Soldering
Soldering

Ал жерде ар кандай тилкелер үчүн электр линияларын кошуунун ар кандай жолдору бар. Же ар кандай зымдарды ширетүү үчүн жезден жалгыз зымдарды же кандайдыр бир жалпы темир жолду колдонсоңуз болот. Бул учурда, ПРБнын прототиптери электр рельстерин тилкелерге багыттоо үчүн колдонулган. WS2812B тилкелеринде электр темир жолун биринчи тилке киришине туташтыруу үчүн колдоно турган өзүнчө электр кабелдери бар (сүрөттө сол жагы).

5 -кадам: SPI дисплейин орнотуңуз

SPI дисплейин орнотуу
SPI дисплейин орнотуу

Оюндун упайларын жана текстти көрсөтүү үчүн MAX7219 LED драйверине негизделген LED матрицасы колдонулат. Бул SPI (Serial Perifheral Interface) аркылуу Raspberry Pi менен туташкан. Төрт 8x8 дисплей 32x8 пиксель чекиттүү матрицага бириктирилген. Сиз бул үчүн 8x8 пикселдик дисплейлерди сатып ала аласыз. eBayде 32x8 пикселдик экрандар да бар. Ошондой эле сизде ар кандай түстөр бар; бул учурда кызыл дисплейлер колдонулган. SPI сменалык реестр сыяктуу иштегендиктен, дисплейлер биринчи матрицадан чыккан маалыматтарды экинчисине жана экрандын оң жагына чейин туташтыруу менен сериялык түрдө туташат.

Бул дисплей сырттан гана окулат, эгерде ал венир катмарынын артына жайгаштырылган болсо. Болбосо, бир гана кызыл бүдөмүк көрүнүп турат. Ошентип, аны арткы бетинин бети менен матрицанын бетинин ортосунда 30мм аралыкта болгон арткы плитанын кесилген сегментинин үстүнө орнотушуңуз керек. Мен жыгачтан калган бөлүктөрдү жана бурамаларды 19 ммди арткы панел менен ПХБнын ортосуна ыңгайлаштыруу үчүн колдондум, бирок сиз ар кандай сырткы бөлүктөрдү жасай аласыз.

Дисплейдин зымдары 7 -кадамда көрсөтүлгөн.

6 -кадам: Pi орнотуу

Pi орнотуу
Pi орнотуу
Pi орнотуу
Pi орнотуу
Pi орнотуу
Pi орнотуу

Бул орнотууда Raspberry Pi Zero колдонулат. Сиз дагы башка Raspberry Pi моделин колдонсоңуз болот, бирок интеграцияланган WiFi жана Bluetooth менен жаңылары зымсыз геймпаддарга оңой туташууга жана программалоону жөнөкөйлөтүүгө мүмкүндүк берет. Пиди арткы панелге бурап коюу үчүн, жок эле дегенде, эки бураманы жана кичине аралыкты колдонуу менен камсыздай аласыз.

Raspberry Pi Zero W үчүн төмөнкү төөнөгүчтөр колдонулат:

  • PIN 2: 5V
  • PIN 6: GND
  • GPIO18 -> LED тилкелери
  • GPIO11: SPI CLK -> MAX7219 матрицасы CLK
  • GPIO10: SPI MOSI -> MAX7219 DIN матрицасы
  • GPIO8: SPI CS -> MAX7219 матрицасы CS

Кээ бир адамдар светодиоддор үчүн GPIO18 колдонуу менен байланышкан көйгөйлөрдү айтышты. Сураныч, бул учурда GPIO21 колдонуңуз. Андай болсо, сиз 21 -саптагы кодду pixel_pin = board деп өзгөртүшүңүз керек. D21.

WS2812B тилкеси бул жерде анын өзгөчөлүгүнөн тышкары колдонулат. Адатта ал DIN боюнча 5V логикалык деңгээлди талап кылат, бирок Pi 3, 3V гана камсыз кылат. Көпчүлүк учурда бул иштесе дагы, муну тилкесиңиз менен сынап көрүшүңүз керек. Эгерде ал иштебесе, сиз 74HCT245 же башка 3V3 сыяктуу деңгээлдеги конверторду Pi менен тилкенин ортосуна 5Вка чейин кошо аласыз.

7 -кадам: Зым жана электр менен камсыздоо

Зым жана электр менен камсыздоо
Зым жана электр менен камсыздоо
Зым жана электр менен камсыздоо
Зым жана электр менен камсыздоо
Зым жана электр менен камсыздоо
Зым жана электр менен камсыздоо

Кабелдөө зым схемасына ылайык жүргүзүлөт. Электр энергиясы менен камсыздоо 5В туруктуу ток болуп саналат.

Матрицаны оңой эле күйгүзүү/өчүрүү үчүн, штепсель менен матрицалык схемалардын ортосуна которгуч кошулат. Ошентсе да, Raspberry Pi катуу өчүрүүнү жактырбагандыктан, матрицаны которгонго чейин Gamepad аркылуу Пиди коопсуз түрдө өчүрүү үчүн программалык камсыздоонун өчүрүү варианты бар.

LED тилкеси DIN пини резистор аркылуу Пи -ге туташтырылган, ошондой эле электр менен камсыздоонун буферине чоң конденсатор (4700uF) кошулган. Көбүрөөк маалымат алуу үчүн Adafruit Überguide'ди текшериңиз.

Светодиоддор 60мА максималдуу светодиодду жалмап жатат, ошондуктан максималдуу ток 200х60мА = 12А болушу мүмкүн !!! Жарыкты азайтып, бардык LED ди толугу менен ак түстө колдонбостон, бул теориялык мааниге ээ, бирок бул максималдуу токко жеткен коддон көз каранды. Ошентип, чоң электр энергиясын тандоо абдан маанилүү. Көпчүлүк тиркемелер үчүн 5V/5A (25W) кубаттуулугу жетиштүү болушу керек.

Арткы панелди Pi жана Matrix дисплейи менен бекитүү үчүн, кээ бир кичинекей жыгачтарды четтеринде кыркуу үчүн, ошондой эле арткы панелди кармап туруу үчүн бурамаларды колдонуу менен колдонсо болот.

8 -кадам: Pi орнотуу

Pi орнотуу
Pi орнотуу

1. Raspberrypi.org сайтынан акыркы Raspbian Lite сүрөтүн жүктөп алыңыз

2. Аны жана SD картага көчүрүү, 8ГБ жетиштүү. Сиз колдоно аласыз, мис. этчер муну кылуу үчүн.

3. Пиди SD карта менен жүктөөдөн мурун, WIFI жана ssh мүмкүнчүлүгүн даярдаңыз

4. SD картаны каалаган компьютерге салыңыз, жүктөө папкасы жеткиликтүү болушу керек

5. Төмөнкү саптарды wpa_supplicant.conf файлына көчүрүңүз (эгер жок болсо, аны түзүңүз) жана Wifiга жана аймакка жараша параметрлерди өзгөртүңүз

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. ssh жеткиликтүүлүгүн иштетүү үчүн жүктөө үчүн ssh деп аталган бош файлды (эч кандай кеңейтүүсүз) кошуңуз

7. Эми SD картаны Raspberry Piге салып, жүктөңүз. Pi'дин IP дарегин алуу үчүн wifi роутериңизди текшериңиз

8. терминалга (Linux, Mac) же Пи аркылуу SSH туташуусун баштоо же мис. Putty a Windows. 192.168.x.y ордуна Pi IP киргизиңиз

ssh [email protected]

9. Пи жаңыртуу (бир аз убакыт талап кылынат!)

sudo apt-get update

sudo apt-get жогорулатуу

10. Пипти жана орнотуу куралын орнотуңуз

sudo apt-get python3-pip орнотуу

sudo pip3 install -upu setuptools

11. Neopixel драйверин, ws281x lib, pygame жана libsdl орнотуңуз

sudo pip3 rpi_ws281x adafruit-circuitpython-neopixel орнотуу

sudo pip3 pygame орнотуу sudo apt-get libsdl1.2-dev sudo pip3 орнотуу-luma.led_matrix жаңыртуу

12. Рапс-конфигурацияны чакырып SPI иштетүү, 5 Interfacing Options / P4 SPI / Enable өтүңүз

sudo raspi-config

13. Bluetooth Gamepad кошуу

sudo bluetoothctl

[bluetooth]# агент [bluetooth] боюнча# жупташуу [bluetooth] боюнча# сканерлөө [bluetooth]# жуп aa: bb: cc: dd: ee: ff [bluetooth]# ишеним aa: bb: cc: dd: ee: ff [bluetooth]# туташуу aa: bb: cc: dd: ee: ff [bluetooth]# чыгуу

бул жерде aa: bb: cc: dd: ee: ff - бул Bluetooth геймпадынын MAC кийими. Бул дарек "сканерлөө" командасын чакыргандан кийин көрсөтүлүшү керек. Bluetooth контроллериңиз жупташууга даяр экенин текшериңиз, муну кантип жасоо боюнча контроллердин нускамасын текшериңиз.

14. Сиз азыр Pi аркылуу сизге туташа аласыз, демейки сырсөз малина (Windows колдонуучулары Putty колдонушу мүмкүн):

ssh [email protected]

9 -кадам: Python Code, Test жана Simulator

Python Code, Test жана Simulator
Python Code, Test жана Simulator
Python Code, Test жана Simulator
Python Code, Test жана Simulator
Python Code, Test жана Simulator
Python Code, Test жана Simulator

Код Githubда жеткиликтүү. games_pi_only.py жана бардык bmp файлдары керек.

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

Коддун матрицаны симуляциялоо үчүн pygame аркылуу Pi сыртында симуляция режиминде иштөө мүмкүнчүлүгү бар. Бул матрицанын жабдууларына түз жетпей туруп, жаңы функцияларды иштеп чыгуу үчүн абдан пайдалуу. Ошондой эле мүчүлүштүктөрдү оңдоо кыйла оңой. Сиз симуляция режимин иштетүү үчүн PI константасын орнотушуңуз керек (15 -сап):

PI = жалган

Бул симуляция режиминде, башкача айтканда, клавиатура Bluetooth геймпадынын ордуна колдонулат. 1, 2, 3, 4 баскычтары геймпаддын A, B, X, Y, багыттар үчүн жебе баскычтары, баштоо үчүн "s" жана тандоо үчүн "x" картага түшүрүлөт. Компьютериңизде иштеп чыгуу үчүн стандарттык редакторду плюс консолун же Micosoft Visual Studio Code же Jetbrain PyCharm сыяктуу интеграцияланган IDEлерди колдонсоңуз болот.

Эгерде сиз матрицаны жана Raspberry Pi колдонсоңуз, анда төмөнкүлөрдү аныкташыңыз керек:

PI = Чын

Кодду Raspberry Piге көчүрүү үчүн scp командасын колдонсоңуз болот (Windows WinSCP). Консоль терезесин ачыңыз, Github файлдары камтылган папкага өтүңүз жана чалыңыз

scp games_pi_only [email protected]:/home/pi

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

андан кийин ssh аркылуу Piге туташыңыз (Windows колдонуучулары Putty колдонушу мүмкүн):

ssh [email protected]

ийгиликтүү киргенден кийин, сиз питон кодун чакырып баштасаңыз болот:

sudo python3 games_pi_only.py

Эгерде код туура иштесе, сиз автоматтык түрдө баштоону иштете аласыз:

sudo nano /etc/rc.local

жана 0 чыгуудан мурун төмөнкү сапты кошуңуз:

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

Сактоо (Ctrl+O) жана Чыгуу (Ctrl+X)

10 -кадам: Final Test жана Veneer

Final Test жана Veneer
Final Test жана Veneer
Final Test жана Veneer
Final Test жана Veneer
Final Test жана Veneer
Final Test жана Veneer

Шпондун алдыңкы бетине клей жабыштырылганга чейин, бардык диоддор иштеп жатканын текшерүү үчүн матрицаны текшерүү керек. Фонер жабыштырылганга чейин бир нерсени оңдоо оңой.

Колдонулган жыгач шыбы-бул Microwood деп аталган атайын клен каптоочу кагаз, анын бир жагы кагаз менен капталган жана калыңдыгы 0,1 мм. Кагаз жагы стандарттык суусуз кагаз желимин колдонуу менен түздөн -түз mdfге жабыштырылышы мүмкүн.

11 -кадам: Жыйынтык

Жыйынтык
Жыйынтык
Жыйынтык
Жыйынтык

Көңүл ачып, оюндан ырахат алыңыз!

Raspberry Pi сынагы 2020
Raspberry Pi сынагы 2020
Raspberry Pi сынагы 2020
Raspberry Pi сынагы 2020

Raspberry Pi конкурсунун башкы сыйлыгы 2020

Сунушталууда: