Съдържание:
- Стъпка 1: Лазерно рязане
- Стъпка 2: Инсталирайте светодиоди
- Стъпка 3: Монтаж
- Стъпка 4: Запояване
- Стъпка 5: Инсталирайте SPI дисплей
- Стъпка 6: Инсталирайте Pi
- Стъпка 7: Окабеляване и захранване
- Стъпка 8: Настройка на Pi
- Стъпка 9: Python код, тест и симулатор
- Стъпка 10: Последен тест и фурнир
- Стъпка 11: Резултатът
Видео: Дървен LED игрален дисплей, захранван от Raspberry Pi Zero: 11 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:49
Този проект реализира 20x10 пиксел WS2812 базиран LED дисплей с размер 78x35 см, който може лесно да бъде инсталиран в хола за игра на ретро игри. Първата версия на тази матрица е построена през 2016 г. и възстановена от много други хора. Този опит беше използван, за да обобщи всички подобрения, за да се изгради нова версия на матрицата и да се пренесе това сега на instructables.com. Основните нови функции са актуализацията до Raspberry Pi Zero вместо това да се използва и Pi A плюс Arduino и да се замени предишния голям контролер с Bluetooth геймпад. Също така софтуерът беше подобрен, включително симулатора, който ви позволява да разработвате кода на компютър, дори ако нямате достъп до хардуера на матрицата.
Една особеност на тази LED матрица е специалният дървен фурнир, който се използва за покриване на LED и за тяхното скриване, когато светодиодите са деактивирани. Това значително увеличава коефициента на приемане на нетехнологичните хора;-) Разбира се, ако този специален фурнир не е наличен във вашата страна, можете да използвате и друг дифузен материал като акрил, за да скриете светодиодите. Също така се планира да се предоставят някои ключови части в бъдеще, за да се улесни възстановяването на проекта.
Консумативи:
- Raspberry Pi Zero W (с известна адаптация, всички други модели също ще работят)
- 200 LED/s (WS2812B LED ленти с 30 LED/m)
- 4x SPI LED матричен дисплей с MAX7219
- Кабели
- Bluetooth геймпад (напр. Това от Pimoroni)
- Захранване 5V с поне 5А
- MDF дърво за лазерно рязане
- Дървен фурнир или дифузна акрилна плоча
- Кондензатор, резистор
- Някои винтове
Стъпка 1: Лазерно рязане
Основната конструкция на матрицата е изработена от MDF дърво с дебелина 3 мм и е изрязана с лазерен нож. Ако не притежавате лазерен нож, можете да използвате онлайн услуга като ponoko.com или formulalor.de или да се свържете със следващия fablab/makerspace във вашата среда. Възможно е също да се използват картон или други по -леки материали, но приложените файлове са с дебелина 3 мм, така че по -тънките или по -дебели материали се нуждаят от препроектиране на файловете. Дизайнът е направен във Fusion 360. Повечето от частите се държат заедно само като ги плъзнете на място, само някои от частите като външните граници трябва да бъдат залепени заедно с помощта на лепило за дърво. Уверете се, че вашата матрица работи напълно, преди да нанесете лепило! Също така дървеният фурнир трябва да бъде залепен, но това е последната стъпка, след като се гарантира, че всичко работи.
В дясната (долната) страна на задната платка има изрязан сегмент, който закрепва електронните компоненти към матрицата и все още има достъп до тези компоненти, когато фурнирът е залепен.
Стъпка 2: Инсталирайте светодиоди
LED лентите са стандартни 30 LED/m WS2812 ивици, които се предлагат в Amazon, eBay или други онлайн магазини по целия свят. Обикновено това е и най -евтината налична адресируема LED лента. Ако искате да използвате други светодиоди, трябва да осигурите 30 LED/m разстояние, за да пасне на матричния модел. Лазерно изрязаните сегменти имат малки изрязани участъци, които да пасват на LED ширината от 10 cm. Тези LED ленти имат двустранна лента на гърба, така че можете просто да ги залепите директно към MDF след прецизно позициониране. Проверете правилната ориентация на всяка лента, преди да използвате лентата (посока DIN-DOUT).
Моделът на окабеляване е зиг-заг, така че в края има само един входен щифт към матрицата и дължините на кабела са възможно най-къси. За правилно разпределение на мощността и намаляване на кабелите в горната част на матрицата, всяка LED лента е свързана към 5V и GND в долната част на матрицата. Можете да използвате или единични проводници, или прототипиране на печатни платки за разпространение на 5V и GND линия.
Стъпка 3: Монтаж
Изгледът на експлозия помага да се идентифицират правилните парчета за монтажа. Просто следвайте снимките за инсталиране стъпка по стъпка. Задната платка има напречни конструкции, които държат дългите странични стени и някои от късите стени. Ако имате проблеми с инсталирането на парчетата, използвайте шкурка, за да го поправите.
Стъпка 4: Запояване
Има различни начини за запояване на електропроводи за различните ивици заедно. Или можете да използвате единични проводници или някакъв вид Common Rail от мед за запояване на различните проводници. В този случай парчета прототипни печатни платки бяха използвани за насочване на релсите към ивиците. Ивиците WS2812B вече имат отделни захранващи кабели, които можете да използвате, за да свържете захранващата шина към първия вход на лентата (лявата страна на снимката).
Стъпка 5: Инсталирайте SPI дисплей
За показване на резултатите от играта и текст се използва LED матричен дисплей, базиран на LED драйвера MAX7219. Той е свързан чрез SPI (сериен периферен интерфейс) към Raspberry Pi. Четири 8x8 дисплея са комбинирани с матричен дисплей с размери 32x8 пиксела. Можете да закупите този 8x8 пикселен дисплей за напр. в eBay има и комбинирани 32x8 пикселни дисплеи. Също така имате различни цветови опции; в този случай бяха използвани червени дисплеи. Тъй като SPI работи като регистър за смяна, дисплеите се свързват последователно чрез свързване на данни от първата матрица към данни от втората и така нататък, започвайки от дясната страна на дисплея.
Този дисплей може да се чете само отвън, ако е поставен директно зад слоя фурнир. Ако не, се вижда само червено замъгляване. Така че трябва да го монтирате върху изрязания сегмент на задната платка с разстояние 30 мм между повърхността на задната платка и повърхността на матрицата. Използвал съм няколко останали дървени парчета и винтове, за да приспособя липсващите 19 мм между задната платка и печатните платки, но можете да използвате и всеки външен тип дистанционни елементи.
Окабеляването на дисплея е показано в стъпка 7.
Стъпка 6: Инсталирайте Pi
В тази инсталация се използва Raspberry Pi Zero. Можете също да използвате всеки друг модел Raspberry Pi, но по -новите с интегриран WiFi и Bluetooth ви позволяват лесно да се свързвате с безжични геймпади и опростявате програмирането. Можете да закрепите Pi, като използвате поне два винта и малки дистанционни елементи, за да го завиете към задната платка.
За Raspberry Pi Zero W се използват следните щифтове:
- ПИН 2: 5V
- ПИН 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 се използва тук извън спецификациите си. Обикновено това изисква 5V логическо ниво по DIN, но Pi осигурява само 3, 3V. Дори ако това работи в повечето случаи, трябва да тествате това с вашата лента. Ако не работи, можете да добавите преобразувател на ниво като 74HCT245 или друг преобразувател 3V3 в 5V между Pi и лентата.
Стъпка 7: Окабеляване и захранване
Окабеляването се извършва съгласно схемата на окабеляване. Захранването е 5V DC захранване.
За лесно включване/изключване на матрицата се добавя превключвател между захранващия щепсел и матричните вериги. Въпреки това, тъй като Raspberry Pi не харесва твърдото изключване, в софтуера има опция за изключване, за безопасно изключване на Pi чрез геймпад преди превключване на матрицата.
DIN щифтът на LED лентата е свързан чрез резистор към Pi, също така е добавен голям кондензатор (4700uF) за буфериране на захранването. Моля, проверете Adafruit Überguide за неопиксели за повече подробности.
Светодиодите консумират максимален ток от 60mA на светодиод, така че максимален ток от 200x60mA = 12A е възможен !!! Като се намали яркостта и не се използват всички светодиоди в пълен бял цвят, това е по -скоро теоретична стойност, но зависи от кода кой максимален ток е достигнат. Така че изборът на достатъчно голямо захранване е много важен. За повечето приложения трябва да е достатъчно захранване с 5V/5A (25W).
За да фиксирате задната платка с дисплея Pi и Matrix, някои малки парчета дърво могат да бъдат използвани, за да ги разбият в краищата и също да използват винтове, за да задържат задната платка на място.
Стъпка 8: Настройка на Pi
1. Изтеглете най -новото изображение на Raspbian lite от raspberrypi.org
2. Копирайте го на и SD карта, 8GB са достатъчни. Можете да използвате напр. гравиране, за да направите това.
3. Преди да стартирате Pi със 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 = "Домашен Wifi" psk = "mypassword" key_mgmt = WPA-PSK}
6. Добавете празен файл, наречен ssh (без никакво разширение), за да стартирате, за да разрешите ssh достъп
7. Сега поставете SD картата в Raspberry Pi и я стартирайте. Проверете вашия wifi рутер, за да получите IP адреса на Pi
8. стартирайте SSH връзка с Pi, използвайки терминал (Linux, Mac) или напр. Шпакловка на Windows. Вмъкнете IP на Pi вместо 192.168.x.y
9. Актуализирайте Pi (отнема известно време!)
sudo apt-get update
sudo apt-get надстройка
10. Инсталирайте pip и инструмент за настройка
sudo apt-get install python3-pip
sudo pip3 install -надстройка инструменти за настройка
11. Инсталирайте Neopixel драйвер, ws281x lib, pygame и libsdl
sudo pip3 инсталирайте rpi_ws281x adafruit-circuitpython-neopixel
sudo pip3 install pygame sudo apt-get install libsdl1.2-dev sudo pip3 install --upgrade luma.led_matrix
12. Активирайте SPI, като извикате raps-config, отидете до 5 Опции за взаимодействие / P4 SPI / Активиране
sudo raspi-config
13. Добавете Bluetooth геймпад
sudo bluetoothctl
[bluetooth]# агент на [bluetooth]# pakable на [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 е MAC роклята на вашия геймпад за bluetooth. Този адрес трябва да се показва след извикване на командата „сканиране при“. Уверете се, че вашият Bluetooth контролер е готов за сдвояване, моля, проверете ръководството на контролера как да направите това.
14. Вече можете да се свържете с вас чрез Pi, паролата по подразбиране е малинова (потребителите на Windows могат да използват Putty):
Стъпка 9: Python код, тест и симулатор
Кодът е достъпен в Github. games_pi_only.py и всички bmp файлове са необходими.
git clone href = https://github.com/makeTVee/ledmatrix/tree/master/python/pi_only
Кодът има опция да се изпълнява в режим на симулация извън Pi, използвайки pygame за симулиране на матрицата. Това е много полезно за разработване на нови функции, без да имате директен достъп до хардуера на матрицата. Също така отстраняването на грешки е много по -лесно. Трябва да настроите PI константата, за да активирате режима на симулация (ред 15):
PI = невярно
В този режим на симулация, вместо клавиатурата за Bluetooth се използва клавиатурата. Бутоните 1, 2, 3, 4 са съпоставени с A, B, X, Y на геймпада, клавишите със стрелки за посоки, „s“за начало и „x“за избор. Можете да използвате стандартен редактор плюс конзолата или някои интегрирани IDE като Micosoft Visual Studio Code или Jetbrain PyCharm, за да направите разработката на вашия компютър.
Ако използвате матрицата и Raspberry Pi, трябва да дефинирате:
PI = Вярно
За да копирате кода в Raspberry Pi, можете да използвате командата scp (Windows WinSCP). Отворете прозореца на конзолата, преминете към папката, съдържаща файловете на Github, и се обадете
scp games_pi_only [email protected]:/home/pi
scp *.bmp [email protected]:/home/pi
след това се свържете с Pi чрез ssh (потребителите на Windows могат да използват Putty):
след успешно влизане, можете да стартирате кода на python, като се обадите:
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: Последен тест и фурнир
Преди фурнирът да се залепи отгоре отпред, матрицата трябва да бъде тествана, за да се гарантира, че всички светодиоди работят. Много по -лесно е да поправите нещо, преди фурнирът да бъде залепен.
Използваният дървен фурнир е специална хартия от кленов фурнир, наречена Microwood, която е едностранно покрита с хартия и има дебелина 0, 1 mm. Страната на хартията може да бъде залепена директно върху MDF с помощта на стандартно лепило за хартия без вода.
Стъпка 11: Резултатът
Забавлявайте се и се наслаждавайте на играта!
Голямата награда в конкурса Raspberry Pi 2020
Препоръчано:
Arduino захранван мултицет: 8 стъпки (със снимки)
Arduino захранван мултицет: В този проект ще изградите волтметър и омметър, използвайки функцията digitalRead на Arduino. Ще можете да получите отчитане почти на всяка милисекунда, много по -прецизно от обикновен мултицет. И накрая, данните могат да бъдат достъпни на
Дървен сватбен часовник с LED осветление: 8 стъпки (със снимки)
Дървен сватбен часовник с LED осветление: Започнах този проект, за да направя уникален, единствен по рода си сватбен часовник за моята сестра и зет. Искаха да направят нещо, което биха могли да светят и да покажат някакъв аспект от сватбения си ден за дълго време. Мина през много дизайни
Дървен LED часовник: 5 стъпки (със снимки)
Дървен LED часовник: Дървеният LED часовник прилича на скучна дървена кутия с изключение на това, че времето свети през предната му част. Вместо парче сива пластмаса за гледане, имате по -хубаво парче дърво. Той все още запазва всичките си функции, включително
Хакерски хардуер за счупен игрален дрон: 12 стъпки (със снимки)
Хардуерен хак на Broken Toy Drone: В тази инструкция ще ви покажа как да конвертирате практически всеки счупен дрон -играчка, който има дистанционно управляеми светлини в универсална двойка устройства. Първото устройство, направено от старото дистанционно управление, открива нещо с помощта на сензорен модул
Дървен LED часовник - аналогов стил: 11 стъпки (със снимки)
Дървен LED часовник - аналогов стил: Това е дървен LED часовник в аналогов стил. Не знам защо не съм виждал някое от тези преди … въпреки че цифровите типове са много често срещани. Хайде, ето ни