Kazalo:

Hitri sadni klavir z MIDI: 6 korakov (s slikami)
Hitri sadni klavir z MIDI: 6 korakov (s slikami)

Video: Hitri sadni klavir z MIDI: 6 korakov (s slikami)

Video: Hitri sadni klavir z MIDI: 6 korakov (s slikami)
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, November
Anonim
Image
Image
Hitri sadni klavir z MIDI
Hitri sadni klavir z MIDI

To je res preprost klavir z kapacitivnim dotikom. Dotaknite se sadja, pločevinke sode, steklenic vode, trakov aluminijaste folije itd. In iz računalnika dobite večglasno klavirsko glasbo. Zdaj, ko je programska oprema napisana, projekt ne sme trajati več kot 10 minut, da bi bil sestavljen z različico Arduino.

Potrebujete:

  • Arduino (Mega za 8 ključev, Uno za 6 ključev) ali črna tableta STM32F103C8 (2 USD na Aliexpressu) plus pretvornik UART v USB (npr. Arduino ali CH340)
  • USB kabel
  • nekaj aluminijaste folije
  • v najboljšem primeru preizkusite posnetke, vendar bodo to naredili skakalci in sponke (ideja za to od tu)
  • sadje ali igralno testo ali koščke papirja z območji, obarvanimi s svinčnikom
  • računalnik.

Dodatne komponente niso potrebne, saj ta uporablja kodo iz briljantne knjižnice ADCTouch martin2250 in Arduino pošilja ukaze MIDI preko serijske v računalnik. Predvajanje zvoka Arduina poteka bodisi prek vključenega python skripta v računalniku bodisi brez dlake-midiserial.

Če uporabljate razvojno ploščo STM32F103C8, potem je še lepše: klavir postane pravi USB MIDI krmilnik, brez potrebe po brezdlaki.

Opomba: Da preprečite poškodbe Arduina/STM32F1 zaradi statične elektrike, zlasti v suhem dnevu ali na preprogi, predlagam, da se ne dotikate aluminijaste folije ali preskusnih sponk, ko naprava deluje. Namesto tega se dotaknite sadja, igralnega testa itd., Katerih odpornost naj bi zagotovila nekaj zaščite pred ESD

Korak: Knjižnice Arduino

Knjižnice Arduino
Knjižnice Arduino

V Arduino IDE izberite Sketch | Vključi knjižnico | Upravitelj knjižnice. Poiščite moj ADCTouchSensor. Namestite knjižnico.

Nato izberite Datoteka | Primeri | ADCTouchSensor | Kapacitivni klavir.

Če imate Arduino, priključite svoj Arduino v vrata USB računalnika in naložite skico CapacitivePiano v svoj Uno ali Mega. Skica bo v serijo USB računalniku poslala podatke o tem, kateri od 8 (Mega) ali 6 (Uno) kapacitivnih senzorjev je bil sprožen.

Če imate STM32F103C8, najprej namestite zagonski nalagalnik in zanj nastavite Arduino IDE (z mojo vejo veje addMidiHID), tako da sledite prvim trem korakom tukaj. Nato se vrnite v Upravitelj knjižnic in poiščite mojo knjižnico USBHID_stm32f1. Namestite ga.

Korak: Pritrdite vodile na klavirske ključe

Pritrdite vodila na klavirske ključe
Pritrdite vodila na klavirske ključe
Pritrdite vodila na klavirske ključe
Pritrdite vodila na klavirske ključe

Prenesite žice od nožic A0-A7 (A0-A5 na Uno) na Arduinu ali STM32F103C8 do vsega, kar želite delovati kot klavirske tipke. Na primer, uporabil sem skakalce z aligatorskimi sponkami ali testne posnetke, ki gredo na koščke aluminijaste folije, na vsako od njih sem za ključ dal pločevinko sode ali pomarančo. Aluminijasto folijo lahko neposredno uporabite kot ključ. Ali pa lahko žico vtaknete v košček sadja ali zelenjave ali v igralno testo.

3. korak: Namestite programsko opremo: Možnost A: Arduino in MIDI brez dlake na serijski most

Lahko prenesete in namestite brezdlačni MIDI na serijski most (Win/OSX/Linux), da povežete serijski USB izhod Arduino s programsko opremo za sintetizacijo vašega računalnika.

Če imate Windows 7 ali novejši, lahko uporabite vgrajen Microsoft Wavetable GS Synth, zato morate namestiti samo Hairless. Nekatera druga programska oprema za predvajanje bo zahtevala loopMIDI.

V drugih sistemih boste morda potrebovali sintetizator MIDI, kot sta VirtualMidiSynth ali Garageband. VirtualMidiSynth lahko uporabite tudi v sistemu Windows, če želite.

4. korak: Namestite programsko opremo: Možnost B: Arduino in Python

Namestite programsko opremo: Možnost B: Arduino in Python
Namestite programsko opremo: Možnost B: Arduino in Python

Uporabite lahko tudi preprosto vključen skript Python, ki predvaja zapiske MIDI.

Prepričajte se, da imate v računalniku nameščen Python. Dovolj bo 2.7 ali 3.x.

Prepričajte se, da imate nameščen paket pygame Python. Če ne, zaženite to iz ukazne vrstice:

python -m pip namestite pygame

Ugotovite, kateri naslov je serijsko pristanišče vašega Arduina. Vaš Arduino IDE bo imel serijska vrata navedena pod Orodja | Pristanišče.

V paketu CapacitivePiano, ki ste ga prenesli, boste našli skript music.py, ki je računalniški del projekta.

5. korak: Namestite programsko opremo: Možnost C: programska oprema STM32F103C in MIDI Synthesizer

Namestite programsko opremo: Možnost C: programska oprema STM32F103C in MIDI Synthesizer
Namestite programsko opremo: Možnost C: programska oprema STM32F103C in MIDI Synthesizer

Če imate STM32F103C, lahko uporabite katero koli programsko opremo, ki deluje s krmilnikom tipkovnice MIDI.

V računalniku uporabljam navidezno klavirsko tipkovnico MIDI (VMPK). Ko je STM32F103C priključen, izberite Uredi | MIDI povezave | Vnesite povezavo MIDI in izberite Maple MIDI ali Diro Synth.

V napravi Android sem uspešno uporabil (s kablom USB OTG) skupni analogni sintetizator in klavir Synth DX7.

6. korak: Igrajte se

Igrajte!
Igrajte!
Igrajte!
Igrajte!
Igrajte!
Igrajte!

Arduino s skico CapacitivePiano priključite v računalnik. Ne dotikajte se nobenega od "gumbov", dokler ne zasveti samo LED za vklop, da omogočite umerjanje kapacitivnih gumbov.

Za možnost Brez dlake zaženite most brez dlake MIDI, izberite serijska vrata s spustnega seznama. Nato izberite sintetizator. Če izberete Microsoft Wavetable GS Synth v sistemu Windows, bi moralo vse delovati.

Če želite namesto tega uporabiti skript Python, se prepričajte, da ste v imeniku, kjer imate piano.py, in zaženite:

python piano.py serijski port

kjer je serialport serijska vrata iz Arduino IDE (npr. COMx v sistemu Windows).

Če uporabljate STM32F103C8, uporabite svojo najljubšo programsko opremo za sintetizacijo MIDI v računalniku ali mobilni napravi.

Zdaj pritisnite "gumbe" in se zabavajte!

Izobraževalne ideje za otroke, s katerimi lahko eksperimentirajo:

  • Eksperimentirajte z različnimi predmeti na aluminijasti foliji in poglejte, kateri delujejo in kateri ne-in se nato pogovorite, zakaj ti delujejo in drugi ne.
  • Playdough deluje zelo dobro (potem pa sploh ne potrebujete folije in sponk-v igralno testo lahko vtaknete samo žice, čeprav je res videti kot bomba!).
  • Lahko celo vzamete kos papirja in zasenčite območja s svinčnikom (ni nujno, da je zelo temno, vendar je navzkrižno valjenje dobro) in jih izrežite.
  • Na res velik kovinski predmet, kot je rob bele table, lahko pritrdite aligatorsko sponko in naredite velikanske ključe.
  • Poskus, ki ga je treba poskusiti, je, da manjša oseba drži aligatorsko sponko, pritrjeno na eno od žic, nato pa naj večja oseba stisne roko z manjšo osebo ali jo popestri, in preveri, ali se to registrira. Nato poskusite znova z večjo osebo, ki jo drži, in manjšo, ki se jih dotakne.

Prepričajte se le, da po vsaki spremembi tega, kar je priloženo Arduinu, ponastavite Arduino, bodisi s pritiskom na gumb "ponastavi" ali tako, da znova priključite povezavo USB (in nato znova zaženete kodo python, ker se bo verjetno zrušila), za ponovno umerjanje senzorjev.

Lahko se razpravlja o električni zmogljivosti in kapacitivnem zaznavanju.

Priporočena: