Мазмуну:

Жаштар үчүн Juke Box Aka Raspi-Music-Box: 5 кадам
Жаштар үчүн Juke Box Aka Raspi-Music-Box: 5 кадам

Video: Жаштар үчүн Juke Box Aka Raspi-Music-Box: 5 кадам

Video: Жаштар үчүн Juke Box Aka Raspi-Music-Box: 5 кадам
Video: ТАКОВ МОЙ ПУТЬ В L4D2 2024, Декабрь
Anonim
Жаштар үчүн Juke Box… Aka Raspi-Music-Box
Жаштар үчүн Juke Box… Aka Raspi-Music-Box

"Малина-Пи негизделген RFID-Музыка-Роботтун" 3 жашар баласы үчүн ROALDH музыкалык плееринин сүрөттөлүшүнөн шыктануу менен мен кичинекей балдарым үчүн джук кутусун курууну чечтим. Бул негизинен 16 баскычтуу куту жана Raspi 2 ичинде, кайсы бир баскыч басылганда тиркелген стерео аркылуу ырларды ойнойт.

Эмне керек:

  • Электр энергиясы менен камсыздалган Raspberry Pi
  • 16 баскычтар - басылганда убактылуу жабылган түр (же сиз каалаган көптөгөн баскычтар - кеңеш: сизде кирүү төөнөгүчтөрүңүз көп эмес;;)) Мен муну колдондум: баскыч 0,50 еврого)
  • кээ бир жука зым
  • бир баскычка бир 10kOhm жана 1kOhm каршы (эгер сиз Raspiдин ички тартма/ылдый каршылыгына таянгыңыз келбесе, анда муну өткөрүп жибере аласыз)
  • стриптиз
  • аял башы (2x20 пин)
  • кутучаны куруу үчүн бир аз ичке жыгач (мен алдыңкы жана арткы 5x400x400mm 2 баракты колдондум жана капталдарын кесүү үчүн 2000x50x5mm тилкесин колдондум)
  • Кутучаны бириктирүү үчүн 24 бурамалар жана бир аз клей
  • түстүү кылуу үчүн кээ бир боектор
  • аудио кабель Raspi'ни стерео же активдүү динамиктериңизге туташтыруу үчүн (башка учунда сизге керектүү нерсеге джек)
  • инструменттер: ширетүүчү, темир кесүүчү, идеалдуу сым тазалоочу, араа, бургулоочу, буроочу, щетка …
  • кошумча: USB үн картасы, эгер сиз музыканын жакшы угулушун кааласаңыз
  • милдеттүү эмес: эгер сиз эски Raspiге туташууну кааласаңыз, анда wifi карт

Көңүл буруңуз, бул менин биринчи үйрөткүчүм жана мен бул долбоорду бир аз мурун жасаганмын … Мен муну VLC ырларын ойнотуу боюнча суроону улантып жатам, жогоруда айтылган инструкциянын комментарий бөлүмүндө (ал жерде колдонулган mplayer) мындан ары мен билгенче колдоого алынбайт). Мен билем, бул көрсөтмөлөр анча жакшы эмес, бирок сиз аны аткарсаңыз болот деп үмүттөнөм … эгер андай болбосо, анда нускама нускасын карап көрүңүз жана төмөндө комментарий калтырып, кайда тыгылып калганыңызды айтып бериңиз … Мен андан кийин жакшыртууга аракет кылам …

1 -кадам: кутуча куруңуз…

Куту куруу…
Куту куруу…
Куту куруу…
Куту куруу…

Ошентип, сиз кыла турган биринчи нерсе - бул кутучаны куруу … Мен өзүмдү абдан чоң кылдым, анткени мен ар бир баскычтын астына боштук калтырдым … Мен ар бир ыр үчүн кээ бир сүрөттөрдү басып чыгарууну пландаштырып, ламинаттап, астына көк түстү белгилөөнү пландадым. баскычтар … алынган сабак: сиз этикеткаларды басып чыгарганда, сиздин балдарыңыз бардык ырларды жакшы билишет жана сизден кээ бирлерин алмаштырууңузду талап кылышат … Ошентип, кийинки жолу мен кичинекей кутучаны куруп, баскычтарды бири -бирине жакындатмакмын …

Ошентип, менин кутучага кайтамын … Мен 400 х 400 х 5 мм фанеранын эки баракчасын жана 2000 x 50 x 5 мм тилкесин сатып алдым … андан кийин биринчи, эң маанилүү кадам: кызыма өзүнүн тандоосу боюнча алдыңкы панельди боёого уруксат берилди. Түстөр …:) Ал сүрөт тартып жатканда, мен 5 тилкени кесип алдым - узундугу 400 мм, узундугу 390 мм, экөө сол жагы …;) буларды жаңы боёлгон баракчанын артына чаптадым … анан 12 тешик бургуладым Сырттан жана 12 бураманы бурап койдум … Мен башка баракты кылдаттык менен арткы бетине тегиздеп, дагы 12 тешик бургулап, бүткөндөн кийин кутучаны жаап салышты. (Мен билем, 12 бурама бир аз ашык болушу мүмкүн, бирок балдар күчтүү …:))

Бир жагынан мен кабелдерден өтүү үчүн бир аз жыгачты кесип алуу үчүн файлды (тездетүү үчүн дремелди колдоно аласыз) колдондум. Андан кийин 16 баскычтын тешиктерин бургулап, орноттум.

2 -кадам: Баскычтарды тартыңыз

Wit Up Buttons
Wit Up Buttons

Эми сизде 16 баскычтуу куту бар … кийинчерээк буларды зым менен жабышыңыз керек … Мен алардын түркүктөрүнүн бирин ромашка чынжыры менен жерге туташтырдым. Идеалында, анча -мынча туташтыргычтарыңыз болот … Мен аларды коштоштурдум, бул чоң коркунучтуу түш болчу жана эгерде мен кандайдыр бир баскычты алып салуум керек болсо, андан да көп көйгөйлөрдү жаратат. Анан мен алардын башка мамыларын кызыл зымга байладым … Буларды мен туташтыргыч тактага туташтырып койгом.

Кайсы кнопкага кайсы баскыч? Бул тартипте 1-16 баскычы: GPIO 18. 27, 17, 04, 23, 24, 22, 05, 16, 12, 06, 13, 21, 20, 19, 26. Ошондой эле "кармоо баскычын басуу окуяларын" текшериңиз бөлүм "кийинчерээк коддо.

(Суранам, оролгон зымдар эмне үчүн болгонун сурабаңыз … Эсимде жок)

3 -кадам: Кошумча: Резисторлорду өйдө жана ылдый түшүрүү менен такта жасоо

Кошумча: Резисторлорду тартып алуу жана түшүрүү менен такта жасоо
Кошумча: Резисторлорду тартып алуу жана түшүрүү менен такта жасоо
Кошумча: Резисторлорду өйдө жана ылдый түшүрүү менен такта жасоо
Кошумча: Резисторлорду өйдө жана ылдый түшүрүү менен такта жасоо

Эгерде сиз резисторлордун эмне тартыларын жана түшөрүн билбесеңиз, Интернеттен көптөгөн маалыматты оңой табышыңыз керек. Распинин кээ бирлери бар же сиз бул жердегидей эле тышкы нерселерди жасай аласыз. Бул кадам милдеттүү эмес, анткени сизге чындап эле керек эмес деп ойлойм.

Анда эмне үчүн мен муну кылдым? Кээде мен батирдеги шаймандарды күйгүзүп/өчүргөндө музыка ойноп баштады. Мен биринчи жолу электр магниттик толкундарды же бир нерсени алып жатат деп ойлогом. Ошентип, мен өйдө/ылдый каршылыгын коштум … Бул абалды жакшыртпагандыктан, мен кээ бир конденсаторлорду коштум. Бул дагы деле жардам бербеди … кийинки аракет кылгым келгени коробка катары алюминий фольга менен кутунун ичин жабуу болду. Көйгөй биз үйгө көчкөндө токтоп калгандыктан, мен муну эч качан токтоткон эмесмин … Анда көйгөй эмнеде эле? Билбейм … бул электр линиясынын өзгөрүшү болушу мүмкүнбү?

Корутунду: Мен сизге алгач жөн гана баскычтарды туташтырууну кеңеш кылар элем (коддо кийинчерээк кайсы баскыч кайсы пиндин үстүндө экенин көрөсүз) жана кээ бир көйгөйлөр болсо, бул кадамды жасаңыз. Мен муну кантип кылганымды жогорудагы сүрөттөрдөн көрө аласыз деп үмүттөнөм. Негизинен үстү жагына башын коюуга тилкеси бар, андан кийин ар бир жагында мен эки каршылыкты жана кабелдерди бир катардагы баскычтардан туташтырдым.

4 -кадам: Python коду

Бул жерде музыка кутусун башкаруучу кодду (питондо) таба аласыз. Мен бир нече комментарийлерди коштум, ошондуктан бул түшүнүктүү деп үмүттөнөм. Болгону бул жерде тез түшүндүрмө. Үстүнкү жагындагы өзгөрмөлөр бөлүмүн окууну баштоо жана андан аягына чейин өткөрүп жиберүү эң жакшы.

Төмөндө сиз дайыма иштей турган циклди таба аласыз. Ал алгач баскычтардын белгилүү бир ырааттуулугу басылганын текшерет - бул менин ата -эненин көзөмөлүн колдонуунун жолу. Андан кийин музыканы ойнотуучу функциялар бар.

Негизги циклдин үстүндө сиз кээ бир окуяларды аныктай аласыз - бул баскычтардын бири басылганда аткарылат. Ар бир баскыч идентификатор аркылуу ButtonPress функциясын чакырат.

Анда кантип музыканы ойнотуу керек? Жөнөкөй болуш үчүн, мен ар бир баскыч үчүн бирден папка түздүм. Бул папкаларга кандай mp3 киргизсеңиз да, функция ойнотмо тизмесине кошулат.

Көңүл буруңуз, эгер сиз физикалык тартма резисторлорду колдонгон жок болсоңуз, анда BCM номери бар бөлүмдү төмөнкүдөй өзгөртүүгө туура келет:

BCM номерин колдонуу менен # орнотуу 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 орнотуусун колдондум. Мен муну кантип жасоо боюнча көптөгөн көрсөтмөлөрдү табаарыңа ишенем …

Питонду колдонуу үчүн сизге "sudo apt-get install python-dev" керек болот

Менин программам музыканы ойнотуу үчүн VLC колдонот:

  • Мен бул жерден Python байланышын алдым (бул дагы эле актуалдуу деп үмүттөнөм):
  • Анан мен аны "sudo python setup.py install" аркылуу орноттум
  • Андан кийин VLC орнотулган "sudo apt-get install vlc"
  • Vlc.py жана vlc.pyc файлдарын программаңыз менен бир каталогго чаптаңыз
  • Көбүрөөк маалымат

Менин эскертүүлөрүм GPIO пинтерине pythonдон кирүү үчүн төмөнкүлөрдү орнотушуңуз керектигин айтат (бирок бул эскирип калган болушу мүмкүн):

  • wget https://www.airspayce.com/mikem/bcm2835/bcm2835-1…. zxvf bcm2835-1.xx.tar.gz
  • cd bcm2835-1.xx
  • ./configure
  • жасоо
  • sudo текшерүү
  • sudo make install

Программаңызды иштетүү үчүн "sudo python yourfilename.py" деп атоо керек болот.

Сунушталууда: