Mundarija:

Avtomatik MIDI ksilofon: 6 qadam (rasmlar bilan)
Avtomatik MIDI ksilofon: 6 qadam (rasmlar bilan)

Video: Avtomatik MIDI ksilofon: 6 qadam (rasmlar bilan)

Video: Avtomatik MIDI ksilofon: 6 qadam (rasmlar bilan)
Video: fastest piano player playing the longest piano in the world😲 2024, Iyul
Anonim
Image
Image

Bu yo'riqnomada biz Arduino Uno va MIDI signallari yordamida solenoidlar qanday yonishini o'rganamiz. Buning uchun eng yaxshi dasturlardan biri - avtomatlashtirilgan ksilofon yaratish. Bu faqat qo'llanma bo'lsa -da, Arduino kodi va elektr sxemalari taqdim etiladi.

Ushbu loyihani amalga oshirishdan oldin sizda quyidagilar bo'lishi kerak:

  • Yog'ochni qayta ishlashning asosiy ko'nikmalari
  • Lehimlash qobiliyati
  • Arduino platformasi haqida tushuncha
  • Ko'p sabr.

Ehtiyot qismlar va materiallarni siz tanlagan sotuvchidan topishingiz mumkin, lekin agar siz elektronika sohasida yangi bo'lsangiz, ehtiyot qismlaringizni sotib olish uchun Adafruit -dan foydalanish tavsiya etiladi.

Qismlar ro'yxati. (Eslatma: Siz sotib olgan ksilofondagi turli xil farqlar qo'shimcha va/yoki boshqa qismlarga muhtoj bo'lishi mumkin)

  • 16 kalitli ksilofon
  • MIDI Jek
  • Arduino Uno R3
  • Arduino Dev. Qalqon
  • MCP23017 I2C kengayishi
  • 6N136 yuqori tezlikli optokupl
  • Mini 12V solenoidlar - x16
  • 1N4007 diodi - x17
  • 470 ohmli qarshilik - x2
  • 1K ohmli qarshilik - x17
  • 10K ohmli qarshilik
  • C1815 NPN tranzistorli
  • C4811 Darlington tranzistorli yoki TIP120 tranzistorli - x16
  • Sarlavha pinlari va rozetkalari
  • 12V - quvvat manbai. (Solenoidlar biroz kuch talab qilishi mumkin, men 10A quvvat manbasini tavsiya qilaman)
  • LED (rang tanlovi)
  • 3/4 dyuymli shkaf dubli - 6 fut
  • 3/4 dyuymli kontrplak yoki MDF
  • Perfboard
  • USB - MIDI interfeysi kabeli (agar kompyuterdan boshqarilsa)
  • 4 mm m2 vintlardek - x32
  • m2 tekis yuvish mashinalari - x32
  • Tel
  • Har xil yog'och vintlardek

Asboblar ro'yxati (Izoh: Ushbu loyiha yog'och ishlab chiqarishni talab qiladi va qo'shimcha yog'och ishlov berish asboblari tavsiya etiladi.)

  • Lehimlash temir
  • Tel -striptizchilar
  • Tornavidalar.
  • Pense
  • Issiq yopishtiruvchi qurol
  • Super elim
  • Matkap.
  • Matkap uchlari. (3/4 dyuymli belkurak va uchuvchi teshiklari uchun bitlar)
  • O'lchov vositasi (men tekis qirrani ishlatardim.)
  • Qalam.
  • Jigsaw

Ixtiyoriy asboblar

  • Tozni tozalash vositasi (agar siz lehimlashda yangi bo'lsangiz)
  • Cımbızlar

1 -qadam: Midi tekshirgichini ulash

Midi tekshirgichini ulash
Midi tekshirgichini ulash
Midi tekshirgichini ulash
Midi tekshirgichini ulash
Midi tekshirgichini ulash
Midi tekshirgichini ulash

Birinchi qadam MIDI tekshirgichini yig'ishdir.

Buning uchun sizga kerak bo'ladi:

  • MIDI Jek
  • Arduino Dev. Qalqon
  • MCP23017 I2C kengayishi
  • 6N136 yuqori tezlikli optokupl
  • 1N4007 diodi - x1
  • 470 ohmli qarshilik - x2
  • 1K ohmli qarshilik - x1
  • 10K ohmli qarshilik
  • C1815 NPN tranzistorli
  • Sarlavha pinlari va rozetkalari
  • LED
  • Tel

MIDI sxemasi yangi boshlanuvchilar uchun qo'rqinchli ko'rinishi mumkin, lekin aslida juda to'g'ri. Agar siz sxemaga amal qilsangiz, sizda hech qanday muammo bo'lmasligi kerak.

Komponentlarni joylashtirish juda muhim bo'ladi. Xonadan tezda chiqib ketish juda oson, shuning uchun tugmachaning rasmini ko'rsatma sifatida ishlating. Bu bosqichda ishlaydigan bir nechta sxemalar mavjud, shuning uchun agar siz joylashtirish bilan o'ynasangiz, sizga yaxshiroq ishlaydigan usulni topishingiz mumkin.

Bu loyihada hamma narsa umumiy nuqtai nazarga ega bo'ladi; bu keyingi bosqichda muhim bo'ladi.

Biz 12 voltli quvvat manbai, 12 voltli solenoidlar va 12 voltli Arduino -ni ishlatish uchun ruxsat etilgan diapazonda ishlayotganimiz uchun, biz hamma narsada bir xil quvvat manbasidan foydalanishimiz mumkin.

Agar siz yangi lehim bilan shug'ullanayotgan bo'lsangiz, men sizga bu loyihani davom ettirishdan oldin Adafruit -ning lehimlash bo'yicha qo'llanmasini o'rganib chiqishni va ba'zi taxtalarda mashq qilishni maslahat beraman.

Xuddi shunday, agar siz sxemalarni yangi o'qiyotgan bo'lsangiz, endi ramzlar va qutblar haqida o'qish uchun ajoyib vaqt bo'ladi. Barcha davralar haqida - buning uchun ajoyib manba.

2 -qadam: Solenoid davrlarini ulash

Solenoid davrlarini ulash
Solenoid davrlarini ulash
Solenoid davrlarini ulash
Solenoid davrlarini ulash

Keyin biz solenoid sxemasiga o'tamiz.

Ushbu qadam uchun sizga kerak bo'ladi:

  • 1 1N4007 diod - x16
  • 1K ohmli qarshilik - x16
  • Darlington tranzistorli yoki TIP120 tranzistorli - x16
  • Sarlavha pinlari va rozetkalari
  • Tel

Solenoid sxemasi qo'rqitmaydi. Bu sxemalar juda kichkina bo'lgani uchun, agar siz ularni yonboshlab qo'ysangiz, perfboard qismlarini ishlatish uchun yaxshi vaqt. Siz ulardan 16tasini yasashingiz kerak bo'ladi. Fotosuratda har bir taxtada 4 ta sxemalar tuzilgan va u mukammal ishlangan.

Solenoid zanjirlaringizning topraklama simlarini Arduino yoqilgan er tekisligiga ulashni unutmang.

Misoldagi hamma narsa modulli, shuning uchun testlarni qulayroq qilish uchun sarlavhalar va rozetkalar ishlatilgan. Ammo, agar siz bir necha dollar tejashni xohlasangiz, simlarni to'g'ridan -to'g'ri taxtalarga lehimlashingiz mumkin.

Misolda ishlatilgan elektromagnitlar zavoddan 2 pinli JST ulagichlari bilan ta'minlangan. O'z asboblar qutisida hech qanday JST porti qulay bo'lmasa -da, ba'zi bir tasodifiy to'g'ri burchakli ulagichlar ular bilan yaxshi bog'langan. Hurda materiallardan yana bir yaxshi foydalanish.

3 -qadam: ramka yaratish

Ramkani qurish
Ramkani qurish
Ramkani qurish
Ramkani qurish
Ramkani qurish
Ramkani qurish

Uchinchi va eng katta qadam - bu ramkani yig'ish.

Sizga kerak bo'ladi:

  • 16 kalitli Xylophone Mini 12V
  • 3/4 dyuymli shkaf dubli - 6 fut
  • 3/4 dyuymli kontrplak yoki MDF
  • Har xil yog'och vintlardek

Ramka - bu asosan o'zingiz bo'ladigan birinchi maydon. Sizda men ishlatgan ksilofon bo'lmasligi mumkin va sizning o'lchovlaringiz menikidan farq qiladi. Ammo qo'rqmang, men dizayn jarayoni haqida iloji boricha ko'proq ma'lumot beraman.

Avval men ksilofonimning uchta o'lchovini oldim:

  • Balandlik
  • Uzunlik
  • Past oktava tomonining kengligi (eng keng nuqta)

Keyin kontrplakdan to'rtburchak kesib tashladim; to'rtburchaklar uzunligi ksilofonning kengligiga mos kelishi kerak. Balandlik sizga ksilofonni qaysi sirtdan joylashtirsangiz, uni bir necha dyuym ko'tarish uchun etarli joy berishi kerak. Shuningdek, u markaziy barga solenoidlar va tranzistorlar sxemalarini joylashtirish uchun etarli joy ajratishi kerak.

To'rtburchaklarimni kesib bo'lgandan so'ng, har birining burchagini kesib, ularga chiroyli shakl berdim. Bu qadam ixtiyoriy, lekin agar siz xuddi shu belgini bajarishni xohlasangiz, burchakning boshlanishi mening ksilofonim tugmachalari bilan bir xil bo'ladi va markazning yuqori qismiga kesiladi. Ikkala tomon ham bir -biriga o'xshash bo'lishi kerak.

Men ikki tomonni bir -biriga bog'lab qo'ydim va 3/4 dyuymli belkurak yordamida teshiklarni burab qo'ydim.

Bu tugagandan so'ng, men ksilofonni ushlab turish uchun tayanch sifatida yana 2 ta kontrplakni kesib oldim (tokchalarga o'xshash). Qo'llab -quvvatlashlarni o'lchash uchun men ishlatgan formula quyida tushuntirilgan.

Qo'llab -quvvatlash o'lchamlari:

  • Ksilofonni qo'llab -quvvatlash 1 (balandligi = 1 dyuym, uzunlik = ksilofonning past oktava tomonining kengligi)
  • Ksilofonni qo'llab -quvvatlash 2 (balandligi = 1 dyuym, uzunlik = ksilofonning yuqori oktavli tomonining kengligi)

Qo'llab -quvvatlovchilarni ksilofon darajasida ushlab turishlariga ishonch hosil qilib, ularni ramkaga yopishtirdim va vidaladim. Men shkaf dübelini yarmini kesib, 2 qismini teshiklariga surdim. Men hamma narsaning asosiy mosligini tekshirdim va uni yopishtirdim. Yelim quriganidan so'ng, men shkaf dübelining qo'shimcha qismlarini kesib tashladim va yon tomonlariga tekis qilib silliqladim.

Markaziy bar - eng qiyin va muhim qism. U juda to'g'ri bo'lishi kerak va siz markaziy chiziq va kalitlar o'rtasida deyarli mukammal bo'sh joy qoldirishingiz kerak bo'ladi. Ortiqcha bo'shliq va sizning solenoidlaringiz aloqa qilmaydi, juda oz bo'shliq va ksilofon to'g'ri eshitilmaydi.

Men markaziy chiziqni ksilofonning ikki tomoni orasiga mahkam o'rnashish uchun kesib oldim. Men bu qadamni silliqladim, o'lchadim va takrorladim, shunda markaziy panjaram iloji boricha tekis bo'lmaguncha. Keyin qalinligi 4 mm bo'lgan jurnalni to'g'ridan -to'g'ri ksilofonim kalitlariga qo'ydim va uni markaziy chiziqni kerakli joyda ushlab turish uchun ko'rsatma sifatida ishlatdim. Men markaziy chiziqni joyida ushlab turish uchun har tomondan 2 vintni ishlatardim.

Tabriklaymiz, siz ramkani tugatdingiz!

4 -qadam: Solenoidlarni joylashtirish

Solenoidlarni joylashtirish
Solenoidlarni joylashtirish
Solenoidlarni joylashtirish
Solenoidlarni joylashtirish
Solenoidlarni joylashtirish
Solenoidlarni joylashtirish

4 -qadam - solenoidlarni markaziy chiziqqa ulash.

Sizga kerak bo'ladi:

  • Mini 12v solenoidlar - x16
  • 4 mm m2 vintlardek - x32
  • m2 tekis yuvish mashinalari - x32
  • Har xil yog'och vintlardek
  • Hunarmandchilik tayoqchalari

Solenoidlarni qanday bo'shatish ksilofonga bog'liq. Men qo'liga tayoq qo'ydim, shunda u har bir ksilofon kalitining o'rtasiga tegib turadigan joylarni belgilab qo'ydi. Bo'shliq har bir tayoqchaga 4 ta solenoid bo'lib qoldi.

Misolda ishlatiladigan solenoidlar M2 o'lchamdagi vintlar uchun oldindan urilgan. M2 tekis yuvgichli 4 mm M2 vintli solenoidni mahorat tayog'iga mukammal mahkamlab qo'ydi. Men vintlar uchun teshiklarni oldindan burg'uladim va solenoidlarni mahorat tayoqchalariga mahkam bog'ladim.

Keyin men yana bir nechta hunarmand tayoqchalarini kesib, ularni elektromagnit aranjirovkaning orqa tomoniga yopishtirdim; bu ikki narsani qildi. Birinchidan, u elektromagnit konstruktsiyani markaziy chiziqdan etarlicha uzoqlashtirdi, shuning uchun solenoidlarning orqa qismiga o'rnatilgan M2 vintli boshlari markaziy nurga qarshi o'tirmaydi. Ikkinchidan, bu solenoid tuzilishini mustahkamlash imkonini berdi, bu esa vidalanish uchun ko'proq materiallarni taqdim etdi.

Aranjirovkani markaziy nurga mahkamlash uchun men elektromagnit aranjirovkani kerakli joyga qo'yib, bo'sh joyni bo'shatdim; ular ksilofon tugmachalarini bir tekis urishlariga ishonch hosil qilish uchun solenoid pistonlarimni qo'lda pastga tushirdim; va keyin uni o'rta barga ulash uchun kichik yog'och vintlardek ishlatilgan.

5 -qadam: Arduino -ni kodlash va MIDI -ni tushunish

Arduino -ni dasturlash uchun siz eng yangi Arduino IDE -ni o'rnatishingiz va Arduino -ga yuklash va kutubxonalarni o'rnatish kabi bir qancha asosiy ishlarni bajarishni o'rganishingiz kerak bo'ladi. Internetda buni qanday qilish kerakligi haqida ko'plab qo'llanmalar mavjud va bu jarayon ushbu tuzilish doirasiga to'g'ri kelmaydi.

Arduino IDE -dan foydalanish qulay bo'lganda sizga quyidagi kutubxonalar kerak bo'ladi.

  • Arduino MIDI kutubxonasi
  • Adafruit MCP23017 kutubxonasi

Kutubxonalarni o'rnatganingizdan so'ng, ushbu ko'rsatmali kodni yuklab oling va Arduino IDE -ga nusxa ko'chiring.

O'zingiz yaratgan MIDI kartasini biriktirmasdan, kodni Arduino -ga yuklang. Kod yuklanganidan so'ng, hamma narsani ulang, Arduino -dagi reset tugmasini bosing va hamma narsa kerakli darajada ishlayotganini tekshiring.

ESLATMA*

Turli xil ksilofonlarda turli xil nota tuzilmalari mavjud, shuning uchun men yozgan aniq kod sizning ksilofoningiz uchun to'g'ri ishlamasligi mumkin. Ammo bu oson tuzatish. Ushbu MIDI eslatmalar jadvaliga murojaat qiling va Arduino kodidagi nota raqamini ksilofoningiz notalariga mos keladigan qilib o'zgartiring.

Malumot uchun, menda oldindan o'rnatilgan eslatmalar quyidagicha:

  • 79 - G.
  • 77 - F.
  • 76 - E.
  • 74 - D.
  • 72 - S
  • 71 - B.
  • 69 - A.
  • 67 - G.
  • 65 - F.
  • 64 - E.
  • 62 - D.
  • 60 - C - o'rta C
  • 59 - B.
  • 57 - A.
  • 55 - G.
  • 53 - F.

6 -qadam: Musiqa dasturi

Musiqa dasturi
Musiqa dasturi

Videoda ko'rib turganingizdek, bu dastur - Guitar Pro 6. Bu unchalik qimmat emas, lekin uni ishlatish oson va MIDI -ni men xohlagan tarzda chiqarishi mumkin. GP6 -ning yana bir yaxshi xususiyati shundaki, siz yozuvlarni muddatidan oldin chiqarish orqali ksilofonning ovozini yaxshilashga butun trekka stakkato qo'shishingiz mumkin.

Keyingi muhim tafsilot shundaki, mening ksilofonim atigi 2 oktava tabiiy notalardan iborat; ya'ni u o'tkir yoki tekis o'ynay olmaydi.

Agar siz ushbu loyihani qurgan bo'lsangiz, iltimos, men ushbu sahifaga qo'shgan Tetris mavzusini yuklab oling.

Tavsiya: