Talaan ng mga Nilalaman:

Mabilis na Prutas na Piano Sa MIDI: 6 na Hakbang (na may Mga Larawan)
Mabilis na Prutas na Piano Sa MIDI: 6 na Hakbang (na may Mga Larawan)

Video: Mabilis na Prutas na Piano Sa MIDI: 6 na Hakbang (na may Mga Larawan)

Video: Mabilis na Prutas na Piano Sa MIDI: 6 na Hakbang (na may Mga Larawan)
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, Nobyembre
Anonim
Image
Image
Mabilis na Prutas na Piano Sa MIDI
Mabilis na Prutas na Piano Sa MIDI

Ito ay isang talagang simpleng capacitive-touch piano. Mag-tap sa prutas, lata ng soda, bote ng tubig, piraso ng aluminyo foil, atbp. At makakakuha ka ng polyphonic piano na musika mula sa iyong computer. Ngayon na nakasulat ang software, ang proyekto ay hindi dapat tumagal ng higit sa 10 minuto upang maisama sa bersyon ng Arduino.

Kailangan mo:

  • isang Arduino (Mega para sa 8 mga susi, I-uno para sa 6 na mga susi) o isang itim na tableta na STM32F103C8 board ($ 2 sa Aliexpress) kasama ang isang UART-to-USB converter (hal. isang Arduino o isang CH340)
  • kable ng USB
  • ilang mga aluminyo foil
  • ideal na subukan ang mga clip, ngunit gagawin ng mga jumper at paperclips (ideya para rito mula rito)
  • prutas, o playdough, o mga piraso ng papel na may mga lugar na may kulay na isang lapis
  • computer

Walang kinakailangang mga karagdagang sangkap, dahil gumagamit ito ng code mula sa makinang na library ng ADCTouch ng martin2250 at ang Arduino ay nagpapadala ng mga utos ng MIDI sa serial sa computer. Ang audio playback ng Arduino ay alinman sa pamamagitan ng isang kasamang python script sa computer o walang buhok-midiserial.

Kung gagamitin mo ang board ng pag-unlad ng STM32F103C8, mas mabuti pa ito: ang piano ay nagiging isang tunay na USB MIDI controller, nang hindi nangangailangan ng walang buhok-midiserial.

Tandaan: Upang maiwasan ang pinsala sa Arduino / STM32F1 mula sa static na kuryente, lalo na sa isang tuyong araw o sa karpet, iminumungkahi kong huwag hawakan ang aluminyo foil o mga test clip kapag gumagana ang aparato. Sa halip, hawakan ang prutas, playdough, atbp., Na ang paglaban ay dapat magbigay ng ilang proteksyon sa ESD

Hakbang 1: Arduino Library

Mga Aklatan ng Arduino
Mga Aklatan ng Arduino

Sa Arduino IDE, piliin ang Sketch | Isama ang Library | Tagapamahala ng Library. Maghanap para sa aking ADCTouchSensor. I-install ang library.

Pagkatapos piliin ang File | Mga Halimbawa | ADCTouchSensor | CapacitivePiano.

Kung mayroon kang Arduino, i-plug ang iyong Arduino sa USB port ng iyong computer at i-upload ang CapacitivePiano sketch sa iyong Uno o Mega. Ang sketch ay magpapadala ng data sa computer sa pamamagitan ng USB serial kung alin sa 8 (Mega) o 6 (Uno) capacitive sensor ang na-trigger.

Kung mayroon kang isang STM32F103C8, i-install muna ang bootloader at i-set up ang Arduino IDE para dito (kasama ang aking sangay ng addMidiHID branch) sa pamamagitan ng pagsunod sa unang tatlong mga hakbang dito. Pagkatapos bumalik sa Library Manager, at hanapin ang aking USBHID_stm32f1 library. I-install ito

Hakbang 2: Maglakip Mag-hahantong sa Mga Piano Keys

Mag-attach ng Mga Lead sa Piano Keys
Mag-attach ng Mga Lead sa Piano Keys
Mag-attach ng Mga Lead sa Piano Keys
Mag-attach ng Mga Lead sa Piano Keys

Patakbuhin ang mga wire mula sa A0-A7 (A0-A5 sa Uno) na mga pin sa iyong Arduino o STM32F103C8 sa anumang nais mong gumana bilang mga piano key. Halimbawa, gumamit ako ng mga jumper na may mga clip ng buaya o mga test clip na pupunta sa mga piraso ng aluminyo palara sa bawat isa na inilalagay ko alinman sa isang lata ng soda o isang kahel bilang susi. Ang aluminyo palara ay maaaring magamit bilang isang susi nang direkta. O ang isa ay maaaring idikit ang isang kawad sa isang piraso ng prutas o gulay o playdough.

Hakbang 3: Mag-install ng Software: Pagpipilian A: Arduino at Walang Buhok na MIDI sa Serial Bridge

Maaari mong i-download at mai-install ang Hairless MIDI sa Serial Bridge (Win / OSX / Linux) upang mai-link ang USB-serial output ng Arduino sa synthesizer software ng iyong computer.

Kung mayroon kang Windows 7 o mas bago, maaari mong gamitin ang built-in na Microsoft Wavetable GS Synth, kaya ang kailangan mo lang mai-install ay Hairless. Ang ilang iba pang software ng pag-playback ay mangangailangan ng loopMIDI.

Sa iba pang mga system, maaaring kailanganin mo ang isang MIDI synthesizer tulad ng VirtualMidiSynth o Garageband. Maaari mo ring gamitin ang VirtualMidiSynth sa Windows kung nais mo.

Hakbang 4: I-install ang Software: Opsyon B: Arduino at Python

I-install ang Software: Opsyon B: Arduino at Python
I-install ang Software: Opsyon B: Arduino at Python

Maaari mo ring gamitin ang isang simpleng kasamang script ng Python na nagpe-play pabalik ng mga tala ng MIDI.

Tiyaking mayroon kang naka-install na Python sa iyong computer. Maaaring gawin ang alinman sa 2.7 o 3.x.

Tiyaking mayroon kang naka-install na pygame Python package. Kung hindi, patakbuhin ito mula sa commandline:

python -m pip install pygame

Alamin kung ano ang address ng serial port ng iyong Arduino. Ang iyong Arduino IDE ay magkakaroon ng mga serial port na nakalista sa ilalim ng Tools | Port.

Sa pakete ng CapacitivePiano na na-download mo, mahahanap mo ang music.py script na bahagi ng PC ng proyekto.

Hakbang 5: I-install ang Software: Opsyon C: STM32F103C at MIDI Synthesizer Software

I-install ang Software: Opsyon C: STM32F103C at MIDI Synthesizer Software
I-install ang Software: Opsyon C: STM32F103C at MIDI Synthesizer Software

Kung mayroon kang STM32F103C, maaari kang gumamit ng anumang software na gumagana sa isang MIDI keyboard controller.

Sa isang computer, gumagamit ako ng Virtual MIDI Piano Keyboard (VMPK). Gamit ang plug na STM32F103C, piliin ang I-edit | Mga Koneksyon sa MIDI | Mag-input ng Koneksyon sa MIDI, at pagkatapos ay piliin ang Maple MIDI o Diro Synth.

Sa isang Android device, matagumpay kong nagamit (na may isang USB OTG cable) Karaniwang Analog Synthesizer at Synth DX7 Piano.

Hakbang 6: Maglaro

Maglaro!
Maglaro!
Maglaro!
Maglaro!
Maglaro!
Maglaro!

I-plug ang Arduino gamit ang CapacitivePiano sketch sa computer. Huwag hawakan ang anuman sa mga "pindutan" hanggang sa ang power LED lamang ang tatakbo, upang payagan ang mga capacitive button na ma-calibrate.

Para sa pagpipilian na Walang Buhok, patakbuhin ang Hairless MIDI bridge, piliin ang serial port mula sa dropdown list. Pagkatapos pumili ng isang synthesizer. Sa Windows, kung pinili mo ang Microsoft Wavetable GS Synth, dapat gumana lang ang lahat.

Kung nais mong gamitin ang script ng Python sa halip, tiyaking nasa direktoryo ka kung saan mayroon kang piano.py, at patakbuhin:

python piano.py serialport

kung saan ang serialport ay ang serial port mula sa Arduino IDE (hal., COMx sa Windows).

Kung gagamitin mo ang STM32F103C8, pagkatapos ay gamitin ang iyong paboritong MIDI synthesizer software sa isang computer o mobile device.

Pindutin ngayon ang iyong "mga pindutan" at magsaya!

Mga ideya sa pang-edukasyon para sa mga bata na mag-eksperimento sa:

  • Eksperimento sa iba't ibang mga item sa aluminyo foil at makita kung alin ang gumagana at alin ang hindi - at pagkatapos ay pag-usapan kung bakit hindi gumagana ang mga ito at ang iba pa.
  • Ang Playdough ay gumagana nang maayos (at pagkatapos ay hindi mo na kailangan ng foil at mga clip - maaari mo lamang idikit ang mga wire sa playdough, kahit na aminin na parang bomba ito!).
  • Maaari ka ring kumuha ng isang piraso ng papel at lilim sa mga lugar na may lapis (hindi ito kailangang madilim, ngunit ang cross-hatching ay mabuti) at i-clip ang mga nasa.
  • Maaari kang maglakip ng isang clip ng buaya sa isang talagang malaking item sa metal, tulad ng gilid ng whiteboard, at gumawa ng mga higanteng susi.
  • Ang isang eksperimentong susubukan ay ang magkaroon ng isang maliit na tao na hawakan ang isang clip ng buaya na nakakabit sa isa sa mga wires, at pagkatapos ay magkaroon ng isang mas malaking tao na makipagkamay o may mataas na limang mas maliit na tao, at tingnan kung nagrerehistro iyon. Pagkatapos ay subukang muli sa isang mas malaking tao na may hawak nito at isang maliit na mahawakan nito.

Siguraduhin lamang na pagkatapos ng bawat pagbabago ng kung ano ang nakakabit sa Arduino, i-reset mo ang Arduino, alinman sa pamamagitan ng pagpindot sa pindutang "i-reset" o sa pamamagitan ng muling pag-replay ng koneksyon sa USB (at pagkatapos ay muling patakbuhin ang code ng sawa, dahil marahil ay mag-crash ito), upang mai-calibrate muli ang mga sensor.

Maaaring talakayin ng isa ang kapasidad ng elektrisidad at capacitive sensing.

Inirerekumendang: