Мазмуну:
- 1 -кадам: Лазердик кесүү
- 2 -кадам: LED орнотуу
- 3 -кадам: Ассамблея
- 4 -кадам: ширетүү
- 5 -кадам: SPI дисплейин орнотуңуз
- 6 -кадам: Pi орнотуу
- 7 -кадам: Зым жана электр менен камсыздоо
- 8 -кадам: Pi орнотуу
- 9 -кадам: Python Code, Test жана Simulator
- 10 -кадам: Final Test жана Veneer
- 11 -кадам: Жыйынтык
Video: Жыгач LED оюн дисплейи Raspberry Pi Zero менен иштейт: 11 кадам (сүрөттөр менен)
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:36
Бул долбоор 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 орнотуу
Жарык диоддуу тилкелер - бул стандарттык 30 LED/m WS2812 тилкелери, алар Amazon, eBay же башка онлайн дүкөндөрдө жеткиликтүү. Бул адатта эң арзан даректүү LED тилкеси. Эгерде сиз башка светодиоддорду колдонууну кааласаңыз, анда 30 LED/m аралыкты матрицанын үлгүсүнө туура келүүсүн камсыз кылышыңыз керек. Лазерленген сегменттердин диаметри LED диаметри 10 см болгон чакан жерлери бар. Бул LED тилкелеринин артында эки тараптуу лента бар, андыктан так жайгашуудан кийин аларды MDFке түз эле чаптап койсоңуз болот. Тасманы колдонуудан мурун, ар бир тилкенин туура багытын текшериңиз (DIN-DOUT багыты).
Зымдардын үлгүсү-бул зиг-заг, аягында матрицага бир гана кирүүчү пин бар жана кабелдин узундугу мүмкүн болушунча кыска. Күчтү туура бөлүштүрүү жана матрицанын үстүндөгү кабелдерди азайтуу үчүн, ар бир LED тилкеси матрицанын ылдый жагында 5V жана GNDге туташкан. Сиз 5V жана GND линиясын жайылтуу үчүн жалгыз зымдарды же ПТБларды колдоно аласыз.
3 -кадам: Ассамблея
Жарылуу көрүнүшү жыйын үчүн туура бөлүктөрдү аныктоого жардам берет. Жөн гана этап-этабы менен орнотулган сүрөттөрдү ээрчиңиз. Арткы планда узун каптал дубалдарды жана кээ бир кыска дубалдарды кармоо үчүн кайчылаш структуралар бар. Эгер бөлүктөрдү орнотууда кыйынчылыктар болсо, аны оңдоо үчүн кум кагазын колдонуңуз.
4 -кадам: ширетүү
Ал жерде ар кандай тилкелер үчүн электр линияларын кошуунун ар кандай жолдору бар. Же ар кандай зымдарды ширетүү үчүн жезден жалгыз зымдарды же кандайдыр бир жалпы темир жолду колдонсоңуз болот. Бул учурда, ПРБнын прототиптери электр рельстерин тилкелерге багыттоо үчүн колдонулган. WS2812B тилкелеринде электр темир жолун биринчи тилке киришине туташтыруу үчүн колдоно турган өзүнчө электр кабелдери бар (сүрөттө сол жагы).
5 -кадам: SPI дисплейин орнотуңуз
Оюндун упайларын жана текстти көрсөтүү үчүн MAX7219 LED драйверине негизделген LED матрицасы колдонулат. Бул SPI (Serial Perifheral Interface) аркылуу Raspberry Pi менен туташкан. Төрт 8x8 дисплей 32x8 пиксель чекиттүү матрицага бириктирилген. Сиз бул үчүн 8x8 пикселдик дисплейлерди сатып ала аласыз. eBayде 32x8 пикселдик экрандар да бар. Ошондой эле сизде ар кандай түстөр бар; бул учурда кызыл дисплейлер колдонулган. SPI сменалык реестр сыяктуу иштегендиктен, дисплейлер биринчи матрицадан чыккан маалыматтарды экинчисине жана экрандын оң жагына чейин туташтыруу менен сериялык түрдө туташат.
Бул дисплей сырттан гана окулат, эгерде ал венир катмарынын артына жайгаштырылган болсо. Болбосо, бир гана кызыл бүдөмүк көрүнүп турат. Ошентип, аны арткы бетинин бети менен матрицанын бетинин ортосунда 30мм аралыкта болгон арткы плитанын кесилген сегментинин үстүнө орнотушуңуз керек. Мен жыгачтан калган бөлүктөрдү жана бурамаларды 19 ммди арткы панел менен ПХБнын ортосуна ыңгайлаштыруу үчүн колдондум, бирок сиз ар кандай сырткы бөлүктөрдү жасай аласыз.
Дисплейдин зымдары 7 -кадамда көрсөтүлгөн.
6 -кадам: 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 орнотуу
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 киргизиңиз
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 колдонушу мүмкүн):
9 -кадам: 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 колдонушу мүмкүн):
ийгиликтүү киргенден кийин, сиз питон кодун чакырып баштасаңыз болот:
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
Шпондун алдыңкы бетине клей жабыштырылганга чейин, бардык диоддор иштеп жатканын текшерүү үчүн матрицаны текшерүү керек. Фонер жабыштырылганга чейин бир нерсени оңдоо оңой.
Колдонулган жыгач шыбы-бул Microwood деп аталган атайын клен каптоочу кагаз, анын бир жагы кагаз менен капталган жана калыңдыгы 0,1 мм. Кагаз жагы стандарттык суусуз кагаз желимин колдонуу менен түздөн -түз mdfге жабыштырылышы мүмкүн.
11 -кадам: Жыйынтык
Көңүл ачып, оюндан ырахат алыңыз!
Raspberry Pi конкурсунун башкы сыйлыгы 2020
Сунушталууда:
DIY Raspberry Pi Zero портативдүү оюн консолу: 6 кадам (сүрөттөр менен)
DIY Raspberry Pi Zero портативдүү оюн консолу: Бул долбоордо мен сизге Raspberry Pi Zero, NiMH батареяларын, үйдө ашыкча агып кетүүдөн коргоо схемасын, арткы экранды жана аудио ампти кантип колдонгонуңузду көрсөтөм. ретро оюндары. Кел, баштайлы
DIY Ambilight Raspberry Pi жана NO Arduino менен! Бардык HDMI булактарында иштейт.: 17 кадам (сүрөттөр менен)
DIY Ambilight Raspberry Pi жана NO Arduino менен! Ар кандай HDMI булактарында иштейт. Менде электроника жөнүндө эң негизги түшүнүк бар, ошондуктан мен өзүмдүн каалаганымда жарыкты күйгүзүү жана өчүрүү жөндөмү бар негизги жыгач корпуста DIY Ambilight орнотуу менен сыймыктанам. Ambilight эмне экенин билбегендер үчүн;
Саймон Оюн - Кызыктуу Оюн !: 5 кадам
Саймон Оюн - Көңүлдүү Оюн !: Шилтеме: Бул жерде Узак дем алыштан кийин, сиз чындыгында бардык тапшырмаларды аткарууга жана сиз жооптуу болгон жумушту аткарууга аракет кылышыңыз керек. Мээбизди машыктыра турган убак келди, туурабы? Ошол кызыксыз жана маанисиз оюндардан тышкары, Simon Game деген оюн бар
Arduino негизделген DIY оюн контролери - Arduino PS2 оюн контроллери - DIY Arduino Gamepad менен Tekken ойноо: 7 кадам
Arduino негизделген DIY оюн контролери | Arduino PS2 оюн контроллери | DIY Arduino Gamepad менен Tekken ойноо: Саламатсыздарбы балдар, оюндарды ойноо ар дайым кызыктуу, бирок өзүңүздүн DIY колдонмо оюнуңузду башкаруучу менен ойноо алда канча кызыктуу. Ошентип, биз бул инструкцияларда arduino pro micro колдонуп оюн контроллерин жасайбыз
Оюн сатып алардан мурун сиздин компьютерде оюн иштей тургандыгын кантип текшерсе болот: 4 кадам
Оюн сатып алардан мурун сиздин компьютерде оюн иштей тургандыгын кантип текшерсе болот: Жакында мен досумдан Call of Duty 4 сатып алдым (бекер кошуп алам), анткени анын компьютеринде иштебейт. Ооба, анын компьютери абдан жаңы, жана ал эмнеге иштебей турганын таң калтырды. Ошентип, интернетте бир нече сааттан кийин издеп таптым