Съдържание:
- Стъпка 1: Изградете кутия …
- Стъпка 2: Свържете бутоните
- Стъпка 3: По избор: Изработка на дъска с издърпващи и резистори надолу
- Стъпка 4: Кодът на Python
- Стъпка 5: Настройка на вашия Rapsi
Видео: Juke Box за много младите Aka Raspi-Music-Box: 5 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
Вдъхновен от инструктирания „Raspberry-Pi-based-RFID-Music-Robot“, описващ изграждането на ROALDH за музикален плейър за неговото 3-годишно дете, реших да направя кутия за Juke за още по-малките ми деца. Това е основно кутия с 16 бутона и Raspi 2 вътре, който възпроизвежда песни чрез свързаното стерео, когато някой от бутоните е натиснат.
От какво имаш нужда:
- Raspberry Pi с захранване
- 16 бутона - вида, който временно се затваря при натискане (или колкото и бутони да искате - съветвайте: не повече, отколкото имате входни щифтове …;)) Използвах този: бутон за € 0,50)
- малко тънка жица
- един 10kOhm и един 1kOhm резистор на бутон (освен ако не искате да разчитате на вътрешните резистори за изтегляне/надолу на Raspi, тогава можете да пропуснете това)
- лента
- женска глава (2x20 щифт)
- малко тънко дърво за изграждане на кутията (използвах 2 листа 5x400x400 мм за предната и задната страна плюс лента 2000x50x5 мм за изрязване на страните)
- 24 винта и малко лепило, за да сглобите кутията
- малко боя, за да стане цветна
- аудио кабел за свързване на Raspi към вашите стерео или активни високоговорители (жак към всичко необходимо от другия край)
- инструменти: поялник, машинки за подстригване, маша за тел, в идеалния случай, трион, бормашина, отвертка, четка за боядисване …
- по избор: USB звукова карта, ако искате музиката да звучи добре
- по избор: wifi карта, ако искате да се свържете със стар Raspi, без да отваряте кутията
Моля, обърнете внимание, че това е първият ми инструктаж и направих този проект преди доста време … Правя го, докато продължавам да бъда питан за VLC начина на възпроизвеждане на песните в секцията за коментари на посочените по -горе инструкции (използваният там mplayer вече не се поддържа, доколкото знам). Знам, че тези инструкции не са много добри, но се надявам, че е възможно да ги следвате … ако не, моля, погледнете и оригиналните инструкции и моля, оставете коментари по -долу, казвайки ми къде сте заседнали… След това ще се опитам да подобря…
Стъпка 1: Изградете кутия …
Така че първото нещо, което трябва да направите, е да изградите кутия … Направих моята доста голяма, защото оставих малко място под всеки бутон за етикет … Планирах да отпечатам няколко снимки за всяка песен, може би да ги ламинирам и да ги маркирам синьо под бутони … научен урок: докато отпечатате етикетите, децата ви знаят трудно всички песни и изискват от вас да промените някои … Така че следващия път щях да построя по -малка кутия и да сложа бутоните по -близо един до друг …
И така, обратно към моята кутия … Купих два листа шперплат 400 x 400 x 5 mm и лента 2000 x 50 x 5 mm … след това първата, най -важна стъпка: дъщеря ми имаше право да рисува предния панел по свой избор цветове …:) Докато рисуваше, нарязах дългото парче на 5 ленти - две с дължина 400 мм, две с дължина 390 мм и лявата част …;) тези, които залепих към задната част на прясно боядисания лист … след това пробих 12 дупки отвън и завинтвам 12 винта … След това внимателно подравних другия лист на гърба, пробих още 12 дупки за още 12 винта, за да затворя кутията, след като приключих. (Знам, че 12 винта може да са малко прекалени, но децата са силни …:))
От едната страна използвах пила (можете да използвате дремел, за да ускорите нещата), за да изрежете малко от дървесината, за да преминете през кабелите. След това също пробих дупките за 16 -те бутона и ги инсталирах.
Стъпка 2: Свържете бутоните
Така че сега имате кутия с 16 бутона … след това трябва да ги свържете … Свързах един от полюсите им към земята по верижка от маргаритка. В идеалния случай ще имате малки конектори, за да го направите … Запоях ги, което беше голям кошмар и ще причини още повече проблеми, ако някога се наложи да извадя някой от бутоните. След това прикрепих другите им полюси към всеки червен проводник … След това запоех към съединителната платка, която можете да видите лежаща в средата …
Кой бутон към кой щифт? Бутон 1-16 в този ред: GPIO 18. 27, 17, 04, 23, 24, 22, 05, 16, 12, 06, 13, 21, 20, 19, 26. Моля, проверете и събитията за натискане на бутон раздел в кода по -късно.
(Моля, не ме питайте за какво са били навитите жици … не мога да си спомня)
Стъпка 3: По избор: Изработка на дъска с издърпващи и резистори надолу
Ако не сте сигурни какво представляват резисторите за издърпване и издърпване, лесно трябва да намерите много информация онлайн. Raspi има вградени такива или можете да направите външни, както направих тук. Тази стъпка не е задължителна, тъй като не мисля, че наистина се нуждаете от нея.
И така, защо го направих? Понякога музиката започваше да свири, когато включих/изключих уредите в апартамента. Първо си помислих, че улавя електромагнитни вълни или нещо подобно. Затова добавих издърпващи/надолу резистори … Тъй като това не подобри ситуацията, добавих и някои кондензатори. Това все още не помогна … следващото нещо, което исках да опитам, беше да покрия вътрешността на кутията с алуминиево фолио като екраниране. Тъй като проблемът спря, когато се преместихме, така и не успях да опитам това … И така, какъв беше проблемът? Не знам … може да е имало вариации в електропровода?
Заключение: Бих ви посъветвал първо да свържете директно бутоните (по -късно ще видите в кода кой бутон на кой щифт отива) и направете тази стъпка само ако имате някои проблеми. Надявам се, че можете да видите от горните снимки как направих това. По принцип има лента за поставяне на заглавката в средата и след това от всяка страна свързах двата резистора и кабелите от бутоните в един ред.
Стъпка 4: Кодът на Python
Прикачен тук ще намерите кода (в python), който управлява музикалната кутия. Добавих доста коментари, така че се надявам, че това е обяснително. За всеки случай тук кратко обяснение. Най -добре е да започнете да четете секцията с променливи в горната част и след това да прескочите чак до дъното.
В долната част ще намерите цикъл, който работи през цялото време. Първо проверява дали е била натисната определена последователност от бутони - това беше моят начин да използвам някакъв родителски контрол. След това има функции, които възпроизвеждат музиката.
Над главния цикъл ще откриете някои открити събития - те се изпълняват, ако се натисне един от бутоните. Всеки бутон извиква функцията ButtonPress, предаваща идентификатор.
И така, как да го накараме да възпроизвежда музиката? За да бъде просто, просто генерирах по една папка за всеки бутон. Каквито и mp3 файлове да поставите в тези папки, функцията добавя към списъка за възпроизвеждане.
Моля, обърнете внимание, ако не сте използвали физически резистори за издърпване, ще трябва да промените секцията с BCM номериране на тази:
# настройка с BCM номериране GPIO.setmode (GPIO. BCM) GPIO.setup (04, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (17, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (27, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (22, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (05, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (06, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (13, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (19, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (26, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (18, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (23, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (24, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (12, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (16, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (20, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (21, GPIO. IN, pull_up_down = GPIO. PUD_UP)
Стъпка 5: Настройка на вашия Rapsi
Разбира се, ще трябва да настроите и raspi … Току -що използвах стандартната инсталация на Noop. Сигурен съм, че ще намерите много инструкции как да направите това …
За да използвате python, ще трябва да "sudo apt-get install python-dev"
Моята програма използва VLC за възпроизвеждане на музика:
- Получих връзката с Python от тук (надявам се, че това все още е актуално):
- След това го инсталирах с помощта на „sudo python setup.py install“
- След това инсталира VLC "sudo apt-get install vlc"
- Залепете файловете vlc.py и vlc.pyc в същата директория като вашата програма
- Повече информация на
Моите бележки казват, че също трябва да инсталирате следното за достъп до GPIO Pins от python (но това може да е остаряло):
- wget https://www.airspayce.com/mikem/bcm2835/bcm2835-1…. zxvf bcm2835-1.xx.tar.gz
- cd bcm2835-1.xx
- ./конфигуриране
- направете
- sudo направи проверка
- sudo make install
За да стартирате програмата си, ще трябва да извикате „sudo python yourfilename.py“.
Препоръчано:
Прототип на интелигентен мотоциклет HUD (навигация от завой до завой и много други): 9 стъпки
Прототип на интелигентен HUD мотоциклет (навигация от завой до завой и много други): Здравейте! Тази инструкция е историята за това как проектирах и изградих платформа HUD (Heads-Up Display), предназначена за монтиране на мотоциклетни каски. Той е написан в контекста на конкурса „карти“. За съжаление не успях да завърша напълно
Лесен BLE с много ниска мощност в Arduino, част 2 - Монитор за температура/влажност - Rev 3: 7 стъпки
Лесен BLE с много ниска мощност в Arduino, част 2 - Монитор за температура/влажност - Ред. 3: Актуализация: 23 ноември 2020 г. - Първа подмяна на 2 x AAA батерии от 15 януари 2019 г., т.е. 22 месеца за 2xAAA алкални Актуализация: 7 април 2019 г. - Ред. 3 на lp_BLE_TempHumidity, добавя графики за дата/час, използвайки pfodApp V3.0.362+и автоматично регулиране, когато
(Много просто) Моделиране на болести (с помощта на Scratch): 5 стъпки
(Много просто) Моделиране на болести (с помощта на Scratch): Днес ще симулираме огнище на болест, като това е всяка болест, а не непременно COVID-19. Тази симулация е вдъхновена от видеоклип от 3blue1brown, към който ще дам линк. Тъй като това е плъзгане и пускане, не можем да направим толкова, колкото можем с JS или Pyt
Как да си направите много евтина 4500 MAh Power Bank: 3 стъпки
Как да си направим много евтина 4500 MAh Power Bank: Когато търсих в магазините за захранващи банки, най -евтиното, което можах да намеря, не винаги беше надеждно, така че в тази инструкция ще ви покажа как да направите много евтина захранваща банка
Много проста Но много ефективна шега (компютърна шега): 3 стъпки
Много проста … Но много ефективна шега (компютърна шега): Тази инструкция е МНОГО проста, но МНОГО ефективна! Това, което ще се случи, е: Скривате всички икони на работния плот на жертвата. Жертвата ще полудее, когато види компютъра, след като направите шегата. Това изобщо не може да навреди на компютъра