Talaan ng mga Nilalaman:

Isang Juke Box para sa Napakabata Aka Raspi-Music-Box: 5 Hakbang
Isang Juke Box para sa Napakabata Aka Raspi-Music-Box: 5 Hakbang

Video: Isang Juke Box para sa Napakabata Aka Raspi-Music-Box: 5 Hakbang

Video: Isang Juke Box para sa Napakabata Aka Raspi-Music-Box: 5 Hakbang
Video: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, Nobyembre
Anonim
Isang Juke Box para sa Napakabata… Aka Raspi-Music-Box
Isang Juke Box para sa Napakabata… Aka Raspi-Music-Box

May inspirasyon ng itinuturo na "Raspberry-Pi-based-RFID-Music-Robot" na naglalarawan sa isang music player na ROALDH build para sa kanyang 3 taong gulang, nagpasya akong bumuo ng isang juke box para sa aking mas bata pang mga bata. Karaniwan ito ay isang kahon na may 16 na mga pindutan at isang Raspi 2 sa loob na nagpe-play ng mga kanta sa pamamagitan ng nakalakip na stereo tuwing ang anumang mga pindutan ay pinindot.

Ang iyong kailangan:

  • Isang Raspberry Pi na may power supply
  • 16 na mga pindutan - ang uri na pansamantalang sarado kapag itinulak (o gayunpaman maraming mga pindutan na nais mong - payuhan: hindi hihigit sa mayroon kang mga input pin…;)) Ginamit ko ang isang ito: pindutan para sa € 0.50)
  • ilang manipis na kawad
  • isang 10kOhm at isang 1kOhm resister bawat pindutan (maliban kung nais mong umasa sa panloob na pull-up / down na resistors ng Raspi, pagkatapos ay maaari mong laktawan ito)
  • stripboard
  • babaeng header (2x20 pin)
  • ilang manipis na kahoy upang maitayo ang kahon (Gumamit ako ng 2 sheet 5x400x400mm para sa harap at likod kasama ang isang 2000x50x5mm strip upang i-cut ang mga gilid mula sa)
  • 24 na mga turnilyo at isang piraso ng pandikit upang magkasama ang kahon
  • ilang pintura upang gawin itong makulay
  • audio cable upang ikonekta ang Raspi sa iyong stereo o mga aktibong speaker (jack sa anumang kailangan mo sa kabilang dulo)
  • mga tool: isang bakal na panghinang, mga wire clipping, wire stripper na perpekto, lagari, drill, driver ng tornilyo, brush ng pintura…
  • opsyonal: USB Sound Card kung nais mong maganda ang tunog ng musika
  • opsyonal: wifi card kung nais mong kumonekta sa isang lumang Raspi nang hindi binubuksan ang kahon

Mangyaring tandaan na ito ang aking unang natuturo at ginawa ko ang proyektong ito kanina pa … Ginagawa ko ito habang patuloy akong tinanong tungkol sa paraan ng VLC ng pagtugtog ng mga kanta sa seksyon ng komento ng itinuro na nabanggit sa itaas (ginamit ng mplayer doon ay hindi na suportado sa pagkakaalam ko). Alam kong ang mga tagubiling ito ay hindi napakahusay, ngunit inaasahan kong posible para sa iyo na sundin … kung hindi, mangyaring tingnan din ang orihinal na itinuro at mangyaring mag-iwan ng mga komento sa ibaba na sinasabi sa akin kung saan ka natigil … Susubukan kong pagbutihin…

Hakbang 1: Bumuo ng isang Box …

Bumuo ng isang Box …
Bumuo ng isang Box …
Bumuo ng isang Box …
Bumuo ng isang Box …

Kaya ang unang bagay na kailangan mong gawin ay bumuo ng isang kahon … Ginawa kong malaki ang minahan dahil iniwan ko ang ilang puwang sa ilalim ng bawat pindutan para sa isang label … Plano kong i-print ang ilang mga larawan para sa bawat kanta, laminate ang mga ito marahil at asul na i-tag ang mga ito sa ilalim ng mga pindutan … natutunan ng aralin: sa oras na mag-print ka ng mga label, alam ng iyong mga anak ang lahat ng mga kanta nang mahirap at hinihiling ka na baguhin ang ilan … Kaya sa susunod na magtatayo ako ng isang mas maliit na kahon at isama ang mga pindutan nang magkakasama …

Kaya, bumalik sa aking kahon … Bumili ako ng dalawang sheet ng playwud 400 x 400 x 5 mm at isang 2000 x 50 x 5 mm strip … pagkatapos ang una, pinakamahalagang hakbang: pinayagan ang aking anak na magpinta sa harap ng panel sa kanyang pinili mga kulay …:) Habang siya ay pagpipinta pinutol ko ang mahabang piraso sa 5 piraso - dalawang 400 mm ang haba, dalawang 390 mm ang haba at ang kaliwang overs…;) ang mga ito ay nakadikit ako sa likuran ng sariwang pinturang sheet … pagkatapos ay nag-drill ako ng 12 butas mula sa labas at na-tornilyo sa 12 mga turnilyo … Pagkatapos ay maingat kong pinantay ang ibang sheet sa likuran, nag-drill ng isa pang 12 butas para sa isang karagdagang 12 turnilyo upang isara ang kahon sa sandaling natapos ako. (Alam ko na 12 mga turnilyo ay maaaring maging isang labis na labis ngunit ang mga bata ay malakas …:))

Sa isang gilid ay gumamit ako ng isang file (maaari kang gumamit ng isang dremel upang mapabilis ang mga bagay) upang maputol ang kaunting kahoy upang dumaan sa mga kable. Pagkatapos ay nag-drill din ako ng mga butas para sa 16 na mga pindutan at na-install ang mga ito.

Hakbang 2: Wire Up the Buttons

Wire Up the Buttons
Wire Up the Buttons

Kaya ngayon nakuha mo ang isang kahon na may 16 na mga pindutan … susunod na kailangan mong i-wire ang mga ito … Ikinonekta ko ang isa sa kanilang mga poste sa lupa sa isang daisy chain fashion. Sa isip na magkakaroon ka ng maliit na mga konektor upang gawin ito … Inhinang ko ang mga ito, na kung saan ay isang pangunahing bangungot at magdulot ng mas maraming mga problema kung kailangan kong kumuha ng anuman sa mga pindutan. Pagkatapos ay ikinabit ko ang kanilang iba pang mga poste sa isang pulang kawad bawat isa… Ang mga ito pagkatapos ay na-solder ko sa board ng konektor maaari mong makita ang nakahiga sa gitna …

Aling pindutan sa aling pin? Button 1-16 sa ganitong pagkakasunud-sunod: GPIO 18. 27, 17, 04, 23, 24, 22, 05, 16, 12, 06, 13, 21, 20, 19, 26. Mangyaring suriin din ang "mga pindutan ng pindutan ng catch button seksyon "sa code sa paglaon.

(Mangyaring huwag tanungin ako kung para saan ang mga rolyo na wires … Hindi ko matandaan)

Hakbang 3: Opsyonal: Paggawa ng isang Lupon na May Pull Up at Hilahin Down Resistors

Opsyonal: Paggawa ng isang Lupon Na May Pull Up at Hilahin Down Resistors
Opsyonal: Paggawa ng isang Lupon Na May Pull Up at Hilahin Down Resistors
Opsyonal: Paggawa ng isang Lupon Na May Pull Up at Hilahin Down Resistors
Opsyonal: Paggawa ng isang Lupon Na May Pull Up at Hilahin Down Resistors

Kung hindi ka sigurado kung ano ang pull up at pull down resistors, dapat mong madaling makahanap ng maraming impormasyon sa online. Ang raspi ay may ilang built in na o maaari mong gawin ang panlabas tulad ng ginawa ko rito. Ang hakbang na ito ay opsyonal dahil sa palagay ko hindi mo talaga ito kailangan.

Kaya bakit ko ito nagawa? Minsan nagsimulang tumugtog ang musika nang buksan ko / i-off ang mga kagamitan sa flat. Una kong naisip na kumukuha ito ng electro magnetic waves o kung ano man. Kaya idinagdag ko ang mga pull-up / down na resistors … Dahil hindi nito napabuti ang sitwasyon, nagdagdag ako ng ilang mga capacitor bilang karagdagan. Hindi pa rin ito nakakatulong … ang susunod na nais kong subukan ay ang takpan ang loob ng kahon ng aluminyo palara bilang panangga. Habang tumigil ang problema nang lumipat kami ng bahay, hindi ko natapos na subukan ito … Kaya ano ang problema? Hindi ko alam … maaaring iba-iba ito sa linya ng kuryente?

Konklusyon: Payo ko sa iyo na ikonekta lamang muna ang mga pindutan nang direkta (makikita mo sa code sa paglaon kung aling pindutan ang napupunta sa aling pin) at gagawin lamang ang hakbang na ito kung mayroon kang ilang mga isyu. Inaasahan kong makita mo mula sa mga larawan sa itaas kung paano ko ito nagawa. Karaniwan mayroong isang bar upang ilagay sa header sa gitna at pagkatapos sa bawat panig ay kinonekta ko ang dalawang resistors at ang mga cable mula sa mga pindutan sa isang hilera.

Hakbang 4: Ang Python Code

Nakalakip dito makikita mo ang code (sa sawa) na namamahala sa musicbox. Nagdagdag ako ng ilang mga puna kaya sana ito ay nagpapaliwanag sa sarili. Kung sakali dito isang mabilis na paliwanag. Mahusay na simulang basahin ang seksyon ng mga variable sa itaas at pagkatapos ay laktawan ang lahat hanggang sa ibaba.

Sa ibaba makikita mo ang isang loop, na tumatakbo sa lahat ng oras. Sinusuri muna nito kung ang isang tiyak na pagkakasunud-sunod ng mga pindutan ay pinindot - ito ang aking paraan ng paggamit ng ilang kontrol ng magulang. Pagkatapos ay may mga pagpapaandar na tumutugtog ng musika.

Sa itaas ng pangunahing loop ay mahahanap mo ang ilang mga natukoy na kaganapan - ito ay naisakatuparan kung ang isa sa mga pindutan ay pinindot. Ang bawat pindutan ay tumatawag sa pagpapaandar ng ButtonPress na nagpapasa ng isang identifier.

Kaya kung paano ito patugtugin ang musika? Upang mapanatili itong simple, gumawa lang ako ng isang folder para sa bawat pindutan. Anumang mga mp3 na inilagay mo sa mga folder na ito, ang pag-andar ay nagdaragdag sa listahan ng pag-play.

Mangyaring tandaan, kung hindi ka gumamit ng mga pisikal na pull up resistors, kakailanganin mong baguhin ang seksyon na may bilang ng BCM dito:

# setup using BCM numberingGPIO.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)

Hakbang 5: Pag-set up ng Iyong Rapsi

Kakailanganin mo ring i-set up ang raspi syempre … Ginamit ko lang ang karaniwang pag-install ng Noop. Sigurado akong makakakita ka ng maraming mga tagubilin sa kung paano ito gawin…

Upang magamit ang python kakailanganin mong "sudo apt-get install python-dev"

Gumagamit ang aking programa ng VLC upang patugtugin ang musika:

  • Nakuha ko ang koneksyon sa Python mula dito (inaasahan kong napapanahon pa rin ito):
  • Pagkatapos ay na-install ko ito gamit ang "sudo python setup.py install"
  • Pagkatapos naka-install ng VLC "sudo apt-get install vlc"
  • Idikit ang mga file na vlc.py at vlc.pyc sa parehong direktoryo ng iyong programa
  • Higit pang impormasyon sa

Sinasabi ng aking mga tala na kailangan mo ring i-install ang sumusunod upang ma-access ang mga GPIO Pins mula sa sawa (ngunit maaaring wala na sa panahon na ito):

  • wget https://www.airspayce.com/mikem/bcm2835/bcm2835-1…. zxvf bcm2835-1.xx.tar.gz
  • cd bcm2835-1.xx
  • ./ configure
  • gumawa
  • sudo gumawa ng tseke
  • sudo gumawa ng pag-install

Upang mapatakbo ang iyong programa, kailangan mong tawagan ang "sudo python yourfilename.py".

Inirerekumendang: