Spisu treści:
- Krok 1: Czujniki
- Krok 2: Montaż podciągany
- Krok 3: Kod Arduino
- Krok 4: Komunikacja szeregowa Arduino Raspberry
- Krok 5: Otrzymano poprawkę PureData
- Krok 6: Rozwój PureData
Wideo: Muzyczny interfejs cyfrowy: 6 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:32
Witam wszystkich, Chciałbym pokazać wam mój własny muzyczny interfejs cyfrowy. Zrobiłem to podczas mojego dyplomu technicznego, to są moje prace badawcze. Na początek zapytałem mnie, jak mogę komponować muzykę bez DAW, z materiałami z recyklingu i możliwością samodzielnego grania.
W tej instrukcji nauczę Cię, jak używać komunikacji szeregowej do wysyłania/odbierania informacji z czujników (analogowych i cyfrowych) z Arduino do Raspberry pi w kierunku oprogramowania puredata do wyzwalania dźwięku.
Wymagane materiały to:
x1 malina PI3
x1 Zabezpieczenie PI3
1x karta microSD (32G)
x1 Arduino UNO
x1 czujnik podczerwieni Sharp GP2Y0E02B
x1 tabliczka chlebowa
x1 Płytowy miernik testowy (0,2)
x28 Rezystancja 10MΩ
x2 Rezystancja 1,8kΩ
x1 Rezystancja 10kΩ
x20 Końcówki zaciskowe męskie/żeńskie
x1 lutownica
x1 zwój cyny (1 metr)
x1 lutownica
x25 Elastyczne paski męskie/męskie
Krok 1: Czujniki
Użyłem 4 piezoelektrycznych pilota "Guitar Hero" Harmonix XBOX 360. Użyłem przycisku włącz/wyłącz, ponieważ kontaktron magnetyczny pedału gitarowego zaciął się.
Użyłem czujnika podczerwieni Sharp GP2Y0E02B. Do wszystkich tych czujników wykonałem montaż pull-up do efektywnego działania…
Tak więc empirycznie znalazłem wartość rezystancji czujnika przycisku i czujnika IR. Jednak przetestowałem piezoelektryk, aby poznać pełną skalę tego i ustaloną wartość rezystancji wymaganą i zastosowaną dla 4 czujników analogowych.
Krok 2: Montaż podciągany
Po przetestowaniu piezoelektryka z generatorem napięcia ustaliłem wartość rezystancji na 7MΩ.
Podciąganie zespołu rezystancji przycisku wynosiło 10 kΩ.
Do czujnika podczerwieni użyłem dwóch rezystancji 1,8kΩ pomiędzy odpowiednio napięciem zasilania a SDA (dane) i SCL (zegar).
Bądź ostrożny, ponieważ te wartości rezystancji dotyczą RTX Arduino UNO; co warto wiedzieć o wejściu impedancji Arduino: 10MΩ.
Możesz zobaczyć montaż podciągający na ostatnim zdjęciu tego kroku; Naprawiłem paski piezoelektryczne w 0 1 2 3 pinach na UNO, pasek przycisku na 2 pinach cyfrowych, ale przekazuję wartość na 6 pinach na UNO i pasku czujnika IR w 4 5 pinach na UNO, wszystkie wejścia analogowe Arduino Uno.
Krok 3: Kod Arduino
Aby upewnić się, że operacja była skuteczna, przetestowałem wysyłanie/odbieranie informacji z czujników do Arduino.
Umieściłem pliki w opisie, ale można je znaleźć w przykładowym dziale programowania Arduino Genuino, poza czujnikiem podczerwieni, ponieważ nie jest kompletny, zmieniłem kilka informacji w sekcji "definiuj" jak "przesunięcie" i zmieniłem obliczanie pomiaru na regularne w różnych odległościach. Prawdopodobnie widziałeś "Wire" w kodzie czujnika podczerwieni. Rzeczywiście, do komunikacji używałem protokołu I2C. Zapraszam do obejrzenia protokołu I2C, bardzo interesującego, możesz go użyć do przesyłania w czasie rzeczywistym wszystkich czujników cyfrowych, które chcesz.
Krok 4: Komunikacja szeregowa Arduino Raspberry
Tak: D
Jak widać na pierwszym zdjęciu, łącze Arduino-Raspberry to wtyczka USB.
Znalazłem sposób na otrzymywanie informacji z czujników bezpośrednio przez PureData Extented, który jest zainstalowany w Raspberry PI. Dlaczego PureData jest rozszerzony? Ponieważ wersja Vanilla nie używa tej samej biblioteki, co aplikacja w środowisku Raspbian.
Uruchom więc StandardFirmata w Arduino Genuino, aby naprawić we/wy i zmiany wartości we właściwy sposób!
Aby odzyskać informacje o wartościach w Raspberry PI, istnieją 2 protokoły: Firmata i Msg.
Wybrałem Firmatę z jednego powodu, łatwiej było uzyskać informacje w PureData poprzez patch Pduino, jedno środowisko.
Zapraszam do odkrycia Msg, jeśli używasz protokołu OSC.
Krok 5: Otrzymano poprawkę PureData
Rzeczywiście, po tygodniach kodowania na Genuino udało mi się otrzymać wszystkie informacje z mojego czujnika na jednej stronie, co pozwoliło zobaczyć zmiany w czasie rzeczywistym dzięki Pduino, łatce w Puredata, dodatkowym bibliotekom sekcji.
Od tego kroku nie dotykamy już kodu Arduino. Informacje o wartości są czytelne.
Jak zauważyłem w kroku 3, otrzymałem informacje z przycisku cyfrowego w 6 pin analogowy, łatwo było zobaczyć efektywną pracę komunikacji. Wszystko w jednej linii.
Krok 6: Rozwój PureData
PureData to specyficzny język i musisz poświęcić swój wolny czas, aby odnieść sukces, robiąc fajny patchwork.
Część poprawek PureData będzie dostępna w serwisie GitHub.
Mam nadzieję, że to, co tu napisałem, pomogło Ci rozpocząć własny projekt bliski mojemu.
Zalecana:
Juuke - odtwarzacz muzyczny RFID dla osób starszych i dzieci: 10 kroków (ze zdjęciami)
Juuke - odtwarzacz muzyki RFID dla osób starszych i dzieci: To jest pudełko Juuke. Juuke Box to Twój własny muzyczny przyjaciel, zaprojektowany tak, aby był jak najłatwiejszy w użyciu. Jest specjalnie zaprojektowany do użytku przez osoby starsze i dzieci, ale oczywiście może być używany przez wszystkie inne grupy wiekowe. Powodem, dla którego to stworzyliśmy, jest
Stwórz własny niskobudżetowy system muzyczny Bluetooth: 5 kroków (ze zdjęciami)
Stwórz własny, niskobudżetowy system muzyczny Bluetooth: W tym projekcie pokażę, jak „połączyłem się”; tani jak barszcz odbiornik muzyczny bluetooth z moim starym głośnikiem. Główny nacisk zostanie położony na zaprojektowanie taniego obwodu wzmacniacza audio wokół LM386 i NE5534. Odbiór bluetooth
Cyfrowy Theremin: bezdotykowy instrument muzyczny: 4 kroki
Cyfrowy Theremin: bezdotykowy instrument muzyczny: W tym eksperymencie z elektroniką cyfrową pokażę ci, jak generować muzykę (w pobliżu:P) bez dotykania instrumentu muzycznego, używając oscylatorów i amp; Wzmacniacz operacyjny Zasadniczo instrument ten nazywa się Theremin, oryginalnie skonstruowany w
Samouczek Jak 4-cyfrowy interfejs wyświetlacza z Arduino UNO: 6 kroków (ze zdjęciami)
Samouczek Jak korzystać z 4-cyfrowego interfejsu wyświetlacza z Arduino UNO: Ten samouczek nauczy Cię podstaw korzystania z 4-cyfrowego wyświetlacza z Arduino UNO
Łatwy interfejs muzyczny przycisku: 5 kroków (ze zdjęciami)
Interfejs muzyczny Easy Button: Ten projekt modyfikuje przycisk Easy Button firmy Staple o wartości 5 USD i niedrogą klawiaturę USB, dzięki czemu mogą być używane jako urządzenie wejściowe do występów muzycznych na żywo (lub czegokolwiek innego, co wymaga przycisku lub przełącznika nożnego). Pozwala tworzyć tanie guziki