Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-23 15:02
To mój pierwszy projekt arduino (mikrokontrolera) o nazwie Lune. Chciałem nauczyć się arduino za pomocą użytecznego i dużego projektu, więc postanowiłem stworzyć kontroler midi DJ, który ma wszystkie funkcje potrzebne do samodzielnego miksowania.
Każdy rodzaj czujnika (potencjometr, przycisk, …) można nauczyć się niezależnie i myślę, że najlepszym sposobem jest nauczenie się „jak to działa” i „jak jest podłączone” dla każdego czujnika krok po kroku.
Wszystko działa tak:
- Czujnik podłączony do arduino wykrywa zmianę
- Arduino wysyła tę zmianę do komputera
- Oprogramowanie na komputerze konwertuje informacje szeregowe (arduino) w MIDI, których można użyć na przykład wableton
Mój kontroler ma
- 6 potencjometrów osiowych dla EQ
- 3 osiowe potencjometry efektów
- 6 potencjometrów liniowych dla głośności
- 2 przycisk do odtwarzania
- 2 Czujnik ultradźwiękowy (SR04) dla efektów z odległości moich rąk
- 2 przyciski dla Cue
- 2x4 przyciski pad led RGB
- 1 enkoder dla Scratch
Krok 1: Samodzielny lub programowy
Przede wszystkim zbadałem różne samouczki dotyczące kontrolera MIDI z arduino.
Możesz zrobić kontroler MIDI z oprogramowaniem, które tłumaczy to, co robisz w MIDI (co zrobiłem)
Będziesz potrzebować:
- Oprogramowanie do wysyłania/odbierania danych midi https://projectgus.github.io/hairless-midiserial/ Nie zapomnij ustawić szybkości transmisji w "preferencjach" zgodnie z tą w kodzie arduino (u mnie 9600 ponieważ "Serial.begin (9600);")
- Wirtualne urządzenie midi
Inny przykład:
www.instructables.com/id/Easy-3-Pot-Potencjometr-Arduino-Uno-Effects-Midi-/
_
Możesz zrobić "prawdziwy" kontroler MIDI, który bez oprogramowania uruchomionego na twoim komputerze do tłumaczenia tego, co robisz na kontrolerze w MIDI, wysyła MIDI do komputera
Na razie z arduino Uno lub Mega musisz sflashować pokój arduino lub coś w tym stylu, aby bezpośrednio wysłać midi. Z tego, co rozumiem, jeśli to zrobiłeś, musisz być pewien kodu, który wysyłasz na arduino, ponieważ gdy arduino jest flashowane, nie możesz już wysłać kodu (potrzebujesz ponownie reflasha). Zrobiłem wiele kodów testowych, więc wybrałem drugą opcję, ale na pewno lepiej mieć urządzenie MIDI typu plug and play.
Przykład, aby przejść dalej:
create.arduino.cc/projecthub/etiennedesportes/ableton-live-midi-controller-9182b3
28.02.2018: https://www.arduino.cc/en/Reference/MIDIUSB Najprostszy sposób, jeśli masz "mikrokontroler z natywnymi możliwościami USB (płyty oparte na atmega32u4 lub płyty ARM)" (Nie OK dla arduino UNO)
Krok 2: Drewno i obudowa
Projekt obudowy drewnianej: użyłem generatora skrzynek https://www.makercase.com/, usunąłem górę i szczelinę na górę. Aby określić wzrost szukam wysokości mojego najwyższego guzika i dodaję 2cm.
Na blat użyłem jednej płyty MDF i jednej sklejki Topola 3mm, która jest grawerowana.
Wycinamy laserem deski z planami.
Wyciąć/wywiercić otwór na kabel USB.
Dołączyłem do moich planów, ale na tym etapie o wiele bardziej interesujące jest zrobienie osobistego kontrolera.
Złożenie:
Do boków przykleiłem i zmontowałem różne deski boczne.
Na górę wywierciłem 4 otwory w 2 górnych płytach MDF. (średnica mojej śruby + 1mm)
Wkręcam śrubę i przyklejam nakrętkę do kątownika cztery razy, aby następnie przykręcić 2 górne deski drewniane od góry.
W ten sposób mam 4 kątowniki z jedną przyklejoną nakrętką, otwory z nakrętką to otwory na wkręty do mocowania górnych desek. W rzeczywistości nie mam dostępu do nakrętki poniżej, kiedy przykręcam górne drewniane deski.
Wywierciłem otwory w deskach bocznych (skrzynka), zamocowałem (przykręć i po przyklejeniu wszystkiego) kątowniki do boków.
Umieść dwie górne deski i przykręć je.
W ten sposób nie ma widocznej nakrętki, a górna deska nie wymaga mocowania drewnianej listwy, jest zaskakująco solidna, ale może jest lepszy sposób.
Polskie:
Użyłem "Vernis bois brillant 125 ml Avel Louis XIII" (francuski polski), który działa bardzo dobrze.
Trochę to trwało, bo ułożyłem kilka warstw i czekałem 24h między każdą.
Blat świetnie wygląda, a drewno jest zabezpieczone. To był mój pierwszy raz, więc nie czekałem tyle ile potrzeba lub nałożyłem zbyt dużo lakieru na niektóre części, ponieważ pasta czasami nie była twarda nawet po wyschnięciu, teraz (2 miesiące później) jest w porządku.
Grafika: montaż dzieł Fornasetiego oraz rysunek osobisty.
p.s: porady jak zaprojektować kontroler midi, na moim planie pad z dwoma przyciskami RGB 4 są zbyt blisko siebie
www.instructables.com/id/A-Framework-For-Making-Affordable-Stylish-Modula/
Krok 3: Elektroniczne
Wszystko umieściłem (dla mojego projektu) w pliku Fritzing.
Dla każdego typu czujnika trzeba się dowiedzieć jak on działa lub co daje arduino.
Aby to zrobić, obejrzyj tutoriale na przykład na inctructable (" potencjometr arduino", …).
Użyłem:
- Potencjometr
- Podkładka RGB (Sparkfun
- Ultradźwięki HC-SR04 (detektor odległości)
- Koder
- Przycisk (przycisk zręcznościowy)
Kiedy chciałeś wykonać ostatni montaż, polecam zrobić to na fryzowaniu w tym samym czasie, ponieważ trudno jest zauważyć, kiedy jest tona kabli.
Zamówienie:
Po poznaniu wszystkiego, czego chcę, a przynajmniej większej części, zamówiłem swoje komponenty. W ten sposób masz mniejsze koszty wysyłki.
Z mojej strony zamawiam najwięcej na Conradzie lub RS (jestem we Francji) i bardziej konkretne elementy jak pad RGB na robotshop.
Jeden przykład mojego polecenia Conrad na zdjęciach
Krok 4: Kod Arduino
Jest mój kod dla arduino. Musisz go wysłać, po zmianach, jeśli robisz inny kontroler, z Arduino IDE do mikrokontrolera przez USB (youtube ma tutoriale). W załącznikach:
- Ostatnia
- Wystarczy tylko pracować z 2 padami RGB z możliwymi 6 kolorami (RGB + cyjan + róż + żółty).
- Napisałem stare fragmenty kodu, aby nauczyć się działania czujnika differents
Niektóre fragmenty zostały zaczerpnięte z niektórych napisanych przeze mnie.
Musisz zainstalować biblioteki arduino (spójrz na błąd i "include"), takie jak Keypad.h dla podkładki.
Różne klasy znajdują się na końcu plików.
Możesz zauważyć, że jedna klasa jest tutaj, aby wysłać informacje o numerze seryjnym.
void MIDImessage(polecenie bajtowe, dane bajtowe1, dane bajtowe2) // --------- KONIECZNE, przekaż wartości za pomocą standardowego polecenia Midi
{ Serial.zapis(polecenie); Serial.zapis(dane1); Serial.zapis(dane2); }"
Krok 5: Ulepszenia
Wszystko działa, ale to prototyp. Jest kilka pytań lub punktów poprawy.
Energia:
- Kiedy używałem podkładki RGB z każdym czujnikiem, diody RGB świecą bardzo mało. Czy arduino 5v jest za mało dla mojego projektu? Kiedy używam tylko ich, nie ma problemu.
Kod:
- Mam serial z enkodera ale nie wiem jak to działa w MIDI. Mam na myśli to, czego chcą w wyjściu MIDI. Jeśli wiesz jak ustawić enkoder do scratchowania na traktorze skontaktuj się ze mną.
- Niektóre z moich kodów przycisków nie nadają się do aplikacji muzycznych. Potrzebujemy jak najszybszego reagowania i zauważyłem, że niektóre z moich kodów przycisków nie są napisane w najlepszy sposób, aby to zrobić (przycisk Play, jeśli dobrze pamiętam).
Zalecana:
Budowa urządzeń domowych dla IoT lub automatyki domowej: 7 kroków (ze zdjęciami)
Budowanie domowych urządzeń dla IoT lub automatyki domowej: Ta instrukcja jest częścią mojej serii DIY Home Automation, sprawdź główny artykuł „Planowanie systemu automatyki domowej DIY”. Jeśli jeszcze nie wiesz, co to jest Homie, zajrzyj na homie-esp8266 + homie od Marvina Rogera. Sen jest bardzo dużo
„MicroDot” dla LattePanda (lub Raspberry Pi): 7 kroków (ze zdjęciami)
„MicroDot” dla LattePanda (lub Raspberry Pi): MicroDot to domowej roboty „przycisk” Alexa zaprojektowany do podłączenia do LattePanda lub Raspberry Pi, z zainstalowaną aplikacją Alexa Sample App. Jest to mały głośnik z diodami LED i aktywacją dotykową/mową, idealny do użytku na biurku lub w samochodzie. *Ten
Kontroler oświetlenia taśmy LED 5V MIDI dla Spielatrona lub innego syntezatora MIDI: 7 kroków (ze zdjęciami)
Kontroler oświetlenia taśmy LED 5V MIDI dla Spielatronu lub innego syntezatora MIDI: Ten kontroler miga trójkolorowymi paskami LED dla 50mS na nutę.Niebieski dla G5 do D#6, czerwony dla E6 do B6 i zielony dla C7 do G7. Kontroler jest urządzeniem ALSA MIDI, więc oprogramowanie MIDI może wysyłać sygnały do diod LED w tym samym czasie, co syntezator MIDI
Tworzenie obrazów bez szwu tylko w poziomie lub w pionie (dla „GIMP”) .: 11 kroków (ze zdjęciami)
Tworzenie obrazów bez szwu tylko w poziomie lub w pionie (dla „GIMP”).: Jeśli wypróbujesz wtyczkę „Make seamless” w GIMP, sprawi to, że obraz będzie płynny zarówno w poziomie, jak i w pionie w tym samym czasie. Nie pozwoli na bezproblemowe wykonanie go tylko w jednym wymiarze. Ta instrukcja pomoże ci stworzyć im
Alarm telefonu komórkowego dla motocykla, samochodu lub czegokolwiek, co chcesz: 7 kroków (ze zdjęciami)
Alarm telefonu komórkowego na motocykl, samochód lub cokolwiek chcesz: Mam dość normalnych alarmów, które wydają dużo hałasu i nikt już ich nie zauważa. Nie wiem też, czy ktoś zadzierał z moim rowerem, bo byłem za daleko, żeby usłyszeć alarm. Postanowiłem więc zrobić ten alarm za pomocą starej komórki