Indholdsfortegnelse:

Hurtigt frugtklaver med MIDI: 6 trin (med billeder)
Hurtigt frugtklaver med MIDI: 6 trin (med billeder)

Video: Hurtigt frugtklaver med MIDI: 6 trin (med billeder)

Video: Hurtigt frugtklaver med MIDI: 6 trin (med billeder)
Video: Lærke - Vi skal ikke være kærester 2024, November
Anonim
Image
Image
Hurtigt frugtklaver med MIDI
Hurtigt frugtklaver med MIDI

Dette er et virkelig enkelt kapacitivt berøringspiano. Tryk på frugt, dåser sodavand, flasker vand, strimler af aluminiumsfolie osv., Og du får polyfonisk klavermusik fra din computer. Nu hvor softwaren er skrevet, bør projektet ikke tage mere end 10 minutter at sammensætte med Arduino -versionen.

Du mangler:

  • en Arduino (Mega til 8 nøgler, Uno til 6 nøgler) eller en sort pille STM32F103C8-tavle ($ 2 på Aliexpress) plus en UART-til-USB-konverter (f.eks. en Arduino eller en CH340)
  • USB -kabel
  • noget aluminiumsfolie
  • testklip ideelt, men jumpere og papirclips vil gøre (idé til det herfra)
  • frugt eller legedej eller stykker papir med områder farvet med en blyant
  • computer.

Ingen yderligere komponenter er nødvendige, da denne bruger kode fra martin2250s geniale ADCTouch -bibliotek, og Arduino sender MIDI -kommandoer over seriel til computeren. Arduino's lydafspilning er enten via et inkluderet python-script på computeren eller hårløs-midiserial.

Hvis du bruger udviklingsbordet STM32F103C8, så er det endnu pænere: klaveret bliver en ægte USB MIDI-controller uden behov for hårløs-midiserial.

Bemærk: For at forhindre beskadigelse af Arduino/STM32F1 fra statisk elektricitet, især på en tør dag eller på et tæppe, foreslår jeg ikke at røre aluminiumsfolien eller testclips, når enheden er i drift. I stedet skal du røre ved frugt, legedej osv., Hvis modstand skal give en vis ESD -beskyttelse

Trin 1: Arduino Libraries

Arduino biblioteker
Arduino biblioteker

Vælg Sketch | i Arduino IDE Inkluder bibliotek | Bibliotekschef. Søg efter min ADCTouchSensor. Installer biblioteket.

Vælg derefter File | Eksempler | ADCTouchSensor | Kapacitivt klaver.

Hvis du har en Arduino, skal du slutte din Arduino til computerens USB -port og uploade CapacitivePiano -skitsen til din Uno eller Mega. Skitsen sender data til computeren via USB -seriel, hvilken af de 8 (Mega) eller 6 (Uno) kapacitive sensorer der blev udløst.

Hvis du har en STM32F103C8, skal du først installere bootloaderen og konfigurere Arduino IDE for den (med min gren af addMidiHID -grenen) ved at følge de tre første trin her. Gå derefter tilbage til Library Manager, og søg efter mit USBHID_stm32f1 bibliotek. Installer det.

Trin 2: Fastgør elektroder til klavertaster

Fastgør elektroder til klavertaster
Fastgør elektroder til klavertaster
Fastgør elektroder til klavertaster
Fastgør elektroder til klavertaster

Kør ledninger fra A0-A7 (A0-A5 på Uno) benene på din Arduino eller STM32F103C8 til det, du vil fungere som klavertaster. For eksempel brugte jeg jumpere med alligatorklemmer eller testklip, der gik til stykker aluminiumsfolie, som jeg hver især lagde enten en dåse sodavand eller en appelsin som nøglen. Aluminiumsfolien kan bruges som en nøgle direkte. Eller man kan stikke en ledning ind i et stykke frugt eller grøntsag eller legedej.

Trin 3: Installer software: Mulighed A: Arduino og Hairless MIDI til Serial Bridge

Du kan downloade og installere Hairless MIDI til Serial Bridge (Win/OSX/Linux) for at forbinde Arduinos USB-serielle output med din computers synthesizer-software.

Hvis du har Windows 7 eller nyere, kan du bruge den indbyggede Microsoft Wavetable GS Synth, så alt hvad du skal installere er Hairless. Nogle andre afspilningssoftware kræver loopMIDI.

På andre systemer har du muligvis brug for en MIDI -synthesizer som VirtualMidiSynth eller Garageband. Du kan også bruge VirtualMidiSynth på Windows, hvis du vil.

Trin 4: Installer software: Mulighed B: Arduino og Python

Installer software: Mulighed B: Arduino og Python
Installer software: Mulighed B: Arduino og Python

Du kan også bare bruge et enkelt inkluderet Python -script, der afspiller MIDI -noter.

Sørg for, at du har Python installeret på din computer. Enten 2.7 eller 3.x vil gøre.

Sørg for, at du har pygame Python -pakken installeret. Hvis ikke, skal du køre dette fra kommandolinjen:

python -m pip installer pygame

Find ud af, hvilken adresse din Arduinos serielle port er. Din Arduino IDE vil have de serielle porte, der er angivet under Værktøjer | Havn.

I CapacitivePiano -pakken, som du downloadede, finder du scriptet music.py, der er pc -siden af projektet.

Trin 5: Installer software: Mulighed C: STM32F103C og MIDI Synthesizer Software

Installer software: Mulighed C: STM32F103C og MIDI Synthesizer Software
Installer software: Mulighed C: STM32F103C og MIDI Synthesizer Software

Hvis du har STM32F103C, kan du bruge enhver software, der fungerer med en MIDI -tastaturcontroller.

På en computer bruger jeg Virtual MIDI Piano Keyboard (VMPK). Når STM32F103C er tilsluttet, skal du vælge Rediger | MIDI -forbindelser | Indtast MIDI -forbindelse, og vælg derefter Maple MIDI eller Diro Synth.

På en Android -enhed har jeg med succes brugt (med et USB OTG -kabel) Common Analog Synthesizer og Synth DX7 Piano.

Trin 6: Spil

Spil!
Spil!
Spil!
Spil!
Spil!
Spil!

Tilslut Arduino med CapacitivePiano -skitsen til computeren. Rør ikke ved nogen af "knapperne", før kun strømindikatoren er tændt, så de kapacitive knapper kan kalibreres.

For indstillingen Hairless skal du køre Hairless MIDI -broen, vælge den serielle port på rullelisten. Vælg derefter en synthesizer. Hvis du vælger Microsoft Wavetable GS Synth i Windows, skal alt bare fungere.

Hvis du vil bruge Python -scriptet i stedet, skal du sørge for at være i biblioteket, hvor du har piano.py, og køre:

python piano.py serielport

hvor serielport er den serielle port fra Arduino IDE (f.eks. COMx på Windows).

Hvis du bruger STM32F103C8, skal du derefter bruge din foretrukne MIDI -synthesizer -software på en computer eller mobilenhed.

Tryk nu på dine "knapper" og hav det sjovt!

Uddannelsesidéer til børn at eksperimentere med:

  • Eksperimenter med forskellige ting på aluminiumsfolien, og se, hvilke der virker, og hvilke der ikke gør-og tal derefter om, hvorfor disse virker og andre ikke.
  • Playdej fungerer rigtig godt (og så har du ikke engang brug for folie og clips-du kan bare stikke ledninger ind i playdeigen, selvom det ganske vist ligner en bombe!).
  • Du kan endda tage et stykke papir og skygge i områder med en blyant (det behøver ikke at være supermørkt, men krydskravning er godt) og klippe dem ind.
  • Du kan vedhæfte et krokodilleklip til en virkelig stor metalgenstand, f.eks. Whiteboardets kant, og lave gigantiske nøgler.
  • Et eksperiment, der skal prøves, er at få en mindre person til at holde et krokodilleklip fastgjort til en af ledningerne og derefter få en større person til at give hånden til eller high-five den mindre person, og se om det registreres. Prøv derefter igen med en større person, der holder den, og en mindre rører ved dem.

Bare sørg for, at du efter hver ændring af det, der er knyttet til Arduino, nulstiller Arduino, enten ved at trykke på "reset" -knappen eller ved at genoprette USB-forbindelsen (og derefter køre pythonkoden igen, da den sandsynligvis vil gå ned), for at kalibrere sensorerne igen.

Man kan diskutere elektrisk kapacitet og kapacitiv sansning.

Anbefalede: