Spisu treści:

Szybkie pianino owocowe z MIDI: 6 kroków (ze zdjęciami)
Szybkie pianino owocowe z MIDI: 6 kroków (ze zdjęciami)

Wideo: Szybkie pianino owocowe z MIDI: 6 kroków (ze zdjęciami)

Wideo: Szybkie pianino owocowe z MIDI: 6 kroków (ze zdjęciami)
Wideo: 🎹 Sto lat - Piano Tutorial (MEGA ŁATWA wersja) 🎵 NUTY W OPISIE 🎼 2024, Lipiec
Anonim
Image
Image
Szybkie pianino owocowe z MIDI
Szybkie pianino owocowe z MIDI

To naprawdę proste pianino pojemnościowo-dotykowe. Stuknij w owoce, puszki po napojach gazowanych, butelki z wodą, paski folii aluminiowej itp., a otrzymasz polifoniczną muzykę fortepianową z komputera. Teraz, gdy oprogramowanie jest napisane, poskładanie projektu w całość z wersją Arduino nie powinno zająć więcej niż 10 minut.

Potrzebujesz:

  • Arduino (Mega na 8 klawiszy, Uno na 6 klawiszy) lub płytka STM32F103C8 z czarną pigułką (2 USD na Aliexpress) oraz konwerter UART na USB (np. Arduino lub CH340)
  • Kabel USB
  • trochę folii aluminiowej,
  • najlepiej przetestować klipsy, ale zworki i spinacze do papieru wystarczą (pomysł na to stąd)
  • owoce lub ciasto lub kawałki papieru z obszarami pokolorowanymi ołówkiem
  • komputer.

Nie są potrzebne żadne dodatkowe komponenty, ponieważ wykorzystuje kod z genialnej biblioteki ADCTouch Martin2250, a Arduino wysyła polecenia MIDI przez port szeregowy do komputera. Odtwarzanie dźwięku przez Arduino odbywa się za pomocą dołączonego skryptu Pythona na komputerze lub bezwłosego midserialu.

Jeśli użyjesz płytki rozwojowej STM32F103C8, to będzie jeszcze przyjemniej: pianino staje się prawdziwym kontrolerem USB MIDI, bez potrzeby korzystania z bezwłosego mid-diserialu.

Uwaga: Aby zapobiec uszkodzeniu Arduino/STM32F1 przez elektryczność statyczną, szczególnie w suchy dzień lub na dywanie, sugeruję nie dotykać folii aluminiowej ani zacisków testowych podczas pracy urządzenia. Zamiast tego dotykaj owoców, ciasta itp., których opór powinien zapewnić pewną ochronę przed wyładowaniami elektrostatycznymi

Krok 1: Biblioteki Arduino

Biblioteki Arduino
Biblioteki Arduino

W Arduino IDE wybierz Szkic | Dołącz bibliotekę | Kierownik Biblioteki. Wyszukaj mój czujnik ADCTouchSensor. Zainstaluj bibliotekę.

Następnie wybierz Plik | Przykłady | Czujnik dotykowy ADC | PojemnościowyFortepian.

Jeśli masz Arduino, podłącz Arduino do portu USB komputera i prześlij szkic CapacitivePiano do Uno lub Mega. Szkic wyśle dane do komputera przez port szeregowy USB, który z 8 (Mega) lub 6 (Uno) czujników pojemnościowych został wyzwolony.

Jeśli masz STM32F103C8, najpierw zainstaluj bootloader i skonfiguruj dla niego Arduino IDE (z moją gałęzią gałęzi addMidiHID), wykonując trzy pierwsze kroki tutaj. Następnie wróć do Menedżera bibliotek i wyszukaj moją bibliotekę USBHID_stm32f1. Zainstaluj to.

Krok 2: Dołącz przewody do klawiszy fortepianu

Dołącz przewody do klawiszy fortepianu
Dołącz przewody do klawiszy fortepianu
Dołącz przewody do klawiszy fortepianu
Dołącz przewody do klawiszy fortepianu

Poprowadź przewody z pinów A0-A7 (A0-A5 na Uno) na Arduino lub STM32F103C8 do tego, co chcesz pełnić jako klawisze fortepianu. Na przykład użyłem zworek z zaciskami krokodylowymi lub zacisków testowych przechodzących na kawałki folii aluminiowej, na których jako klucz położyłem puszkę sody lub pomarańczę. Folia aluminiowa może być używana bezpośrednio jako klucz. Można też wbić drut w kawałek owocu, warzyw lub ciasta.

Krok 3: Zainstaluj oprogramowanie: Opcja A: Arduino i bezwłosy MIDI do mostka szeregowego

Możesz pobrać i zainstalować Hairless MIDI to Serial Bridge (Win/OSX/Linux), aby połączyć wyjście szeregowe USB Arduino z oprogramowaniem syntezatora komputera.

Jeśli masz Windows 7 lub nowszy, możesz użyć wbudowanego syntezatora Microsoft Wavetable GS, więc wszystko, co musisz zainstalować, to Hairless. Niektóre inne oprogramowanie do odtwarzania będzie wymagało loopMIDI.

W innych systemach możesz potrzebować syntezatora MIDI, takiego jak VirtualMidiSynth lub Garageband. Możesz także użyć VirtualMidiSynth w systemie Windows, jeśli chcesz.

Krok 4: Zainstaluj oprogramowanie: Opcja B: Arduino i Python

Zainstaluj oprogramowanie: Opcja B: Arduino i Python
Zainstaluj oprogramowanie: Opcja B: Arduino i Python

Możesz także użyć prostego dołączonego skryptu Pythona, który odtwarza nuty MIDI.

Upewnij się, że masz zainstalowany Python na swoim komputerze. Albo 2.7 lub 3.x wystarczy.

Upewnij się, że masz zainstalowany pakiet pygame Python. Jeśli nie, uruchom to z wiersza poleceń:

python -m pip zainstaluj pygame

Dowiedz się, jaki jest adres portu szeregowego Arduino. Twoje Arduino IDE będzie miało porty szeregowe wymienione w Narzędzia | Port.

W pobranym pakiecie CapacitivePiano znajdziesz skrypt music.py, który jest stroną projektu na komputery PC.

Krok 5: Zainstaluj oprogramowanie: Opcja C: STM32F103C i oprogramowanie syntezatora MIDI

Zainstaluj oprogramowanie: Opcja C: STM32F103C i oprogramowanie syntezatora MIDI
Zainstaluj oprogramowanie: Opcja C: STM32F103C i oprogramowanie syntezatora MIDI

Jeśli masz STM32F103C, możesz użyć dowolnego oprogramowania, które współpracuje z kontrolerem klawiatury MIDI.

Na komputerze używam wirtualnej klawiatury MIDI Piano Keyboard (VMPK). Po podłączeniu STM32F103C wybierz Edytuj | Połączenia MIDI | Wprowadź połączenie MIDI, a następnie wybierz Maple MIDI lub Diro Synth.

Na urządzeniu z Androidem z powodzeniem użyłem (za pomocą kabla USB OTG) Common Analog Synthesizer i Synth DX7 Piano.

Krok 6: Graj

Bawić się!
Bawić się!
Bawić się!
Bawić się!
Bawić się!
Bawić się!

Podłącz Arduino ze szkicem CapacitivePiano do komputera. Nie dotykaj żadnego z „przycisków”, dopóki nie zostanie uruchomiona tylko dioda LED zasilania, aby umożliwić kalibrację przycisków pojemnościowych.

W przypadku opcji Hairless uruchom mostek Hairless MIDI, wybierz port szeregowy z listy rozwijanej. Następnie wybierz syntezator. W systemie Windows, jeśli wybierzesz Microsoft Wavetable GS Synth, wszystko powinno po prostu działać.

Jeśli zamiast tego chcesz użyć skryptu Python, upewnij się, że jesteś w katalogu, w którym masz plik piano.py i uruchom:

python piano.py serialport

gdzie serialport to port szeregowy z Arduino IDE (np. COMx w systemie Windows).

Jeśli używasz STM32F103C8, użyj swojego ulubionego oprogramowania syntezatora MIDI na komputerze lub urządzeniu mobilnym.

Teraz naciśnij swoje "przyciski" i baw się dobrze!

Pomysły edukacyjne dla dzieci do eksperymentowania:

  • Poeksperymentuj z różnymi przedmiotami na folii aluminiowej i zobacz, które z nich działają, a które nie, a następnie porozmawiaj o tym, dlaczego te działają, a inne nie.
  • Playdough działa naprawdę dobrze (i wtedy nie potrzebujesz nawet folii i klipsów - możesz po prostu włożyć przewody do playdough, choć wygląda to jak bomba!).
  • Możesz nawet wziąć kawałek papieru i zacienić miejsca ołówkiem (nie musi być super ciemne, ale kreskowanie jest dobre) i przypiąć je.
  • Możesz przymocować zacisk krokodylkowy do naprawdę dużego metalowego przedmiotu, takiego jak krawędź tablicy i zrobić gigantyczne klucze.
  • Eksperyment, którego należy spróbować, polega na tym, aby mniejsza osoba trzymała zacisk krokodylkowy przymocowany do jednego z przewodów, a następnie większa osoba uścisnęła dłoń lub przybiła mniejszą osobę i sprawdziła, czy to się zarejestruje. Następnie spróbuj ponownie z większą osobą trzymającą i mniejszą dotykającą ich.

Tylko upewnij się, że po każdej zmianie tego, co jest podłączone do Arduino, zresetujesz Arduino, albo naciskając przycisk "reset", albo ponownie podłączając połączenie USB (a następnie ponownie uruchom kod pythona, ponieważ prawdopodobnie ulegnie awarii), w celu ponownej kalibracji czujników.

Można omówić pojemność elektryczną i wykrywanie pojemnościowe.

Zalecana: