Obsah:

Box Juke pro velmi mladé aka Raspi-Music-Box: 5 kroků
Box Juke pro velmi mladé aka Raspi-Music-Box: 5 kroků

Video: Box Juke pro velmi mladé aka Raspi-Music-Box: 5 kroků

Video: Box Juke pro velmi mladé aka Raspi-Music-Box: 5 kroků
Video: 10 Призрачных СУЩНОСТЕЙ, Снятых На Камеру | Dark Insider 2024, Červen
Anonim
Box Juke pro velmi mladé … neboli Raspi-Music-Box
Box Juke pro velmi mladé … neboli Raspi-Music-Box

Inspirován instruktážním robotem „Raspberry-Pi-based-RFID-Music-Robot“popisujícím sestavu hudebního přehrávače ROALDH pro jeho 3leté dítě, rozhodl jsem se postavit juke box pro své ještě mladší děti. Je to v podstatě krabice se 16 tlačítky a Raspi 2 uvnitř, která přehrává skladby přes připojené stereo, kdykoli stisknete jakékoli tlačítko.

Co potřebuješ:

  • Raspberry Pi s napájecím zdrojem
  • 16 tlačítek - druh, který se při stisknutí dočasně zavře (nebo kolik tlačítek byste chtěli - rada: ne více, než máte vstupní piny …;)) Použil jsem toto: tlačítko za 0,50 EUR)
  • nějaký tenký drát
  • jeden 10kOhm a jeden 1kOhm rezistor na tlačítko (pokud se nechcete spoléhat na interní pull-up/down odpory Raspi, pak to můžete přeskočit)
  • stripboard
  • zásuvka (2x20 pin)
  • na stavbu krabice trochu tenkého dřeva (na přední a zadní stranu jsem použil 2 listy 5x400x400mm plus boční pásy o rozměru 2000x50x5mm)
  • 24 šroubů a trochu lepidla, aby se krabice dala dohromady
  • trochu barvy, aby to bylo barevné
  • zvukový kabel pro připojení Raspi ke stereofonním nebo aktivním reproduktorům (konektor k tomu, co potřebujete na druhém konci)
  • nářadí: páječka, nůžky na drát, v ideálním případě odizolovač, pila, vrtačka, šroubovák, štětec…
  • volitelně: Zvuková karta USB, pokud chcete, aby hudba zněla dobře
  • volitelně: wifi karta, pokud se chcete připojit ke starému Raspi bez otevření krabice

Vezměte prosím na vědomí, že toto je můj první instruktáž a tento projekt jsem dělal před docela dlouhou dobou … Dělám to tak, že se mě stále ptají na způsob přehrávání skladeb VLC v sekci komentářů výše zmíněného instruktážního programu (tam použil mplayer) pokud vím, již není podporován). Vím, že tyto pokyny nejsou příliš dobré, ale doufám, že je možné, abyste je dodržovali … pokud ne, podívejte se také na původní pokyny a zanechte prosím níže uvedené komentáře, kde mi řeknete, kde jste uvízli … Poté se pokusím zlepšit …

Krok 1: Postavte krabici…

Postavte krabici…
Postavte krabici…
Postavte krabici…
Postavte krabici…

Takže první věc, kterou musíte udělat, je postavit krabici … Udělal jsem svou docela velkou, protože jsem nechal pod každým tlačítkem nějaké místo pro štítek … Plánoval jsem vytisknout nějaké obrázky pro každou skladbu, možná je zalaminovat a označit je pod tlačítka … ponaučení: v době, kdy tisknete etikety, vaše děti znají všechny písničky natvrdo a požadují po vás nějaké změny … Takže příště bych postavil menší krabici a dal tlačítka blíž k sobě…

Takže zpět do své krabice … Koupil jsem dva listy překližky 400 x 400 x 5 mm a pás 2000 x 50 x 5 mm … pak první, nejdůležitější krok: mé dceři bylo dovoleno namalovat přední panel podle jejího výběru. barvy …:) Zatímco malovala, nastříhal jsem dlouhý kousek na 5 proužků - dva 400 mm dlouhé, dva 390 mm dlouhé a zbylé přesahy …;) ty jsem nalepil na zadní stranu čerstvě natřeného listu … pak jsem vyvrtal 12 děr zvenčí a zašrouboval 12 šroubů … Potom jsem opatrně zarovnal druhý list na zadní straně, vyvrtal dalších 12 otvorů pro dalších 12 šroubů, abych krabici zavřel, jakmile jsem skončil. (Vím, že 12 šroubů může být trochu přehnané, ale děti jsou silné …:))

Na jedné straně jsem pilníkem (k urychlení věcí můžete použít dremel) vyřízl kousek dřeva, které prošlo kabely. Potom jsem také vyvrtal otvory pro 16 tlačítek a nainstaloval je.

Krok 2: Zapojte tlačítka

Zapojte knoflíky
Zapojte knoflíky

Takže teď máte krabici se 16 tlačítky … další je musíte zapojit … Připojil jsem jeden z jejich pólů k zemi řetězovým způsobem. V ideálním případě k tomu budete mít malé konektory … Pájel jsem je, což byla velká noční můra a způsobí to ještě větší problémy, pokud budu muset někdy některá tlačítka vyndat. Poté jsem jejich další póly připojil každý k červenému vodiči … Ty jsem poté připájel na desku konektoru, kterou můžete vidět ležet uprostřed…

Které tlačítko ke kterému kolíku? Tlačítko 1-16 v tomto pořadí: GPIO 18. 27, 17, 04, 23, 24, 22, 05, 16, 12, 06, 13, 21, 20, 19, 26. Zkontrolujte také "události stisknutí tlačítka chytit" sekci “v kódu později.

(Prosím, neptejte se mě, k čemu byly stočené dráty … nepamatuji si)

Krok 3: Volitelné: Výroba desky s odpínači vytahováním a stahováním

Volitelné: Vytvoření desky s odpínači vytahováním a stahováním
Volitelné: Vytvoření desky s odpínači vytahováním a stahováním
Volitelné: Vytvoření desky s odpínači vytahováním a stahováním
Volitelné: Vytvoření desky s odpínači vytahováním a stahováním

Pokud si nejste jisti, co jsou to odpory nahoru a dolů, měli byste snadno najít spoustu informací online. Raspi má nějaké vestavěné nebo můžete udělat externí, jako jsem to udělal tady. Tento krok je volitelný, protože si myslím, že ho opravdu nepotřebujete.

Proč jsem to tedy udělal? Někdy se hudba začala přehrávat, když jsem v bytě zapínal/vypínal spotřebiče. Nejprve jsem si myslel, že to zachycuje elektromagnetické vlny nebo tak něco. Přidal jsem tedy odpory pull-up/down… Protože to situaci nezlepšilo, přidal jsem navíc několik kondenzátorů. To stále nepomohlo … další věc, kterou jsem chtěl vyzkoušet, bylo zakrýt vnitřek krabice hliníkovou fólií jako stínění. Když problém přestal, když jsme se přestěhovali, nikdy jsem neskončil tím, že bych to zkoušel … V čem tedy byl problém? Nevím … mohly to být odchylky v elektrickém vedení?

Závěr: Doporučil bych vám, abyste nejprve připojili tlačítka přímo (v kódu později uvidíte, které tlačítko na kterém pinu jde) a tento krok proveďte pouze v případě, že máte nějaké problémy. Doufám, že z výše uvedených obrázků vidíte, jak jsem to udělal. V zásadě je lišta uprostřed na putt na hlavičku a poté na každé straně jsem spojil dva odpory a kabely od tlačítek v jedné řadě.

Krok 4: Kód Pythonu

Zde naleznete kód (v pythonu), který spravuje musicbox. Přidal jsem několik komentářů, takže doufám, že to bude samo vysvětlující. Pro každý případ zde rychlé vysvětlení. Nejlepší je začít číst sekci proměnných nahoře a poté přeskočit úplně dolů.

Ve spodní části najdete smyčku, která běží pořád. Nejprve zkontroluje, zda byla stisknuta určitá sekvence tlačítek - to byl můj způsob používání rodičovské kontroly. Pak jsou tu funkce, které přehrávají hudbu.

Nad hlavní smyčkou najdete některé detektory událostí - ty se provádějí po stisknutí jednoho z tlačítek. Každé tlačítko volá funkci ButtonPress a předává identifikátor.

Jak tedy zajistit, aby přehrával hudbu? Aby to bylo jednoduché, pro každé tlačítko jsem vygeneroval pouze jednu složku. Ať už do těchto složek vložíte jakékoli mp3, funkce se přidá do seznamu skladeb.

Vezměte prosím na vědomí, že pokud jste nepoužili fyzické pull up rezistory, budete muset změnit sekci s číslováním BCM na toto:

# nastavení pomocí BCM číslování 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 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)

Krok 5: Nastavení Rapsi

Samozřejmě také budete muset nastavit raspi … Právě jsem použil standardní instalaci Noop. Jsem si jistý, že najdete spoustu návodů, jak to udělat …

Chcete-li použít python, budete muset "sudo apt-get install python-dev"

Můj program používá VLC k přehrávání hudby:

  • Odtud jsem získal připojení Python (doufám, že je to stále aktuální):
  • Poté jsem jej nainstaloval pomocí "sudo python setup.py install"
  • Poté nainstaloval VLC "sudo apt-get install vlc"
  • Vložte soubory vlc.py a vlc.pyc do stejného adresáře jako váš program
  • Více informací na

Moje poznámky říkají, že pro přístup ke pinům GPIO z pythonu musíte také nainstalovat následující (ale to může být zastaralé):

  • wget https://www.airspayce.com/mikem/bcm2835/bcm2835-1…. zxvf bcm2835-1.xx.tar.gz
  • cd bcm2835-1.xx
  • ./configure
  • udělat
  • sudo provést kontrolu
  • sudo provést instalaci

Aby váš program běžel, budete muset zavolat „sudo python yourfilename.py“.

Doporučuje: