Inhoudsopgave:
- Stap 1: Standalone of software
- Stap 2: Hout en koffer
- Stap 3: Elektronisch
- Stap 4: Arduino-code
- Stap 5: Verbeteringen
Video: Lune - MIDI-controller met Arduino (voor DJ of muzikant) - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:15
Dit is mijn eerste arduino (microcontroller) projectnaam Lune. Ik wilde Arduino leren met een handig en groot project, dus besloot ik een midi DJ-controller te maken die alle functies heeft die nodig zijn om standalone te mixen.
Elk soort sensor (potentiometer, drukknop, …) kan onafhankelijk worden geleerd en ik denk dat de beste manier is om stap voor stap te leren "hoe het werkt" en "hoe het is aangesloten".
Alles werkt als volgt:
- Sensor aangesloten op de Arduino detecteert een verandering
- De arduino stuurt deze wijziging naar de computer
- Een software op de computer zet de seriële (arduino) informatie om in MIDI die je bijvoorbeeld in staat kunt gebruiken
Mijn controller heeft
- 6 potmeter axiaal voor EQ
- 3 potmeter axiaal voor effecten
- 6 potentiaalmeter lineair voor Volume
- 2 drukknop voor Play
- 2 Ultrasone sensor (SR04) voor effecten met de afstand van mijn handen
- 2 drukknop voor Cue
- RGB led-pad met 2 x 4 knoppen
- 1 encoder voor Scratch
Stap 1: Standalone of software
Allereerst heb ik de verschillende tutorials van MIDI-controller met arduino onderzocht.
Je kunt een MIDI-controller gebruiken met software die vertaalt wat je doet in MIDI (wat ik heb gedaan)
Je zal nodig hebben:
- Software voor het verzenden/ontvangen van midi-gegevens https://projectgus.github.io/hairless-midiserial/ Vergeet niet de baudrate in "voorkeuren" in te stellen in overeenstemming met die in uw arduino-code (voor mij 9600 omdat "Serial.begin (9600);")
- Een virtueel midi-apparaat
Een ander voorbeeld:
www.instructables.com/id/Easy-3-Pot-Potentiometer-Arduino-Uno-Effects-Midi-/
_
Je kunt een "echte" MIDI-controller gebruiken die zonder software op je computer te vertalen wat je op de controller in MIDI doet, MIDI naar de computer stuurt
Op dit moment moet je met een arduino Uno of Mega de arduino-kamer of iets dergelijks flashen om direct midi te sturen. Van wat ik heb begrepen als je dit hebt gedaan, moet je zeker zijn van de code die je op de arduino verzendt, want als de arduino flash is, kun je geen code meer verzenden (je hebt opnieuw reflash nodig). Ik heb veel testcodes gedaan, dus ik koos voor de tweede optie, maar het is beter om zeker een plug-and-play MIDI-apparaat te hebben.
Voorbeeld om verder te gaan:
create.arduino.cc/projecthub/etiennedesportes/ableton-live-midi-controller-9182b3
MAJ 2018-02-28: https://www.arduino.cc/en/Reference/MIDIUSB De eenvoudigste manier als je een "microcontroller met native USB-mogelijkheden (atmega32u4-gebaseerde boards of ARM-boards)" hebt (Niet OK voor Arduino UNO)
Stap 2: Hout en koffer
Ontwerp van houten behuizing: ik gebruikte een hoesgenerator https://www.makercase.com/, verwijderde de bovenkant en de gleuf voor de bovenkant. Om de hoogte te bepalen zoek ik de hoogte van mijn hoogste knoop en tel daar 2cm bij op.
Voor het blad gebruikte ik een MDF-plaat en een Plywood Poplar 3 mm die gegraveerd is.
Lasergesneden de houten planken met de plannen.
Knip/geboord een gat voor de USB-kabel.
Ik heb me aangesloten bij mijn plannen, maar bij deze stap is het een stuk interessanter om je persoonlijke controller te doen.
In elkaar zetten:
Voor de zijkanten heb ik de verschillende zijkanten gelijmd en gemonteerd.
Voor de bovenkant heb ik 4 gaten geboord in de 2 bovenste MDF. (diameter van mijn schroef + 1mm)
Ik schroef een bout en lijm de moer vier keer op de hoek, om daarna de 2 bovenste houten planken aan de bovenkant vast te schroeven.
Op deze manier heb ik 4 hoeken met een moer gelijmd, de gaten met de moer zijn de gaten voor de schroeven om de bovenplanken te bevestigen. Ik kan zelfs niet bij de onderste moer als ik de bovenste houten planken vastschroef.
Ik boorde gaten in zijplanken (de doos), bevestigde (schroef en lijm alles) de hoeken aan de zijkanten.
Plaats de twee bovenste planken en schroef ze vast.
Op deze manier is er geen zichtbare moer en het bovenblad hoeft niet te worden bevestigd, het is verrassend solide, maar er is misschien een betere manier.
Pools:
Ik heb "Vernis bois brillant 125 ml Avel Louis XIII" (French Pools) gebruikt dat heel goed werkt.
Het was een beetje lang omdat ik verschillende lagen heb gelegd en 24 uur tussen elk heb gewacht.
Het blad ziet er geweldig uit en het hout is beschermd. Het was mijn eerste keer, dus ik heb niet zo lang gewacht als nodig was of ik heb te veel vernis aangebracht op sommige delen omdat de lak soms niet stevig was, zelfs niet na het drogen, nu (2 maanden later) is het ok.
Grafisch: montage van Fornaseti-kunstwerken en persoonlijke tekeningen.
p.s: adviezen om de midi-controller te ontwerpen, op mijn plan staan de twee RGB 4-knoppen pad te dicht bij elkaar
www.instructables.com/id/A-Framework-For-Making-Affordable-Stylish-Modula/
Stap 3: Elektronisch
Ik heb alles (voor mijn project) op een Fritzing-bestand gezet.
Voor elk type sensor moet je leren hoe het werkt of wat hij aan de Arduino heeft gegeven.
Bekijk hiervoor tutorials over bijvoorbeeld inctructable ("potentiometer arduino", …).
Ik gebruikte:
- Potentiometer
- RGB-pad (Sparkfun
- Echografie HC-SR04 (afstandsdetector)
- Encoder
- Drukknop (arcadeknop)
Ik raad aan wanneer je je uiteindelijke montage wilt doen om het in dezelfde tijd te doen, omdat het moeilijk te zien is wanneer er veel kabels zijn.
Volgorde:
Nadat ik alles wist wat ik wilde, of in ieder geval het grootste deel, bestelde ik mijn componenten. Zo heb je minder verzendkosten.
Van mijn kant bestel ik het meest op Conrad of RS (ik ben in Frankrijk) en meer specifieke stukken zoals RGB-pad op robotshop.
Een voorbeeld van mijn Conrad-commando in de afbeeldingen
Stap 4: Arduino-code
Daar is mijn code voor arduino. Je moet het, na je wijzigingen als je een andere controller doet, met Arduino IDE naar je microcontroller sturen via USB (youtube heeft tutorials). In bijlagen:
- De laatste
- Eentje om gewoon te werken de 2 RGB Pads met 6 kleuren mogelijk (RGB +cyaan+rose+geel).
- Oude delen van code die ik heb geschreven om de verschillende sensoren te leren
Sommige delen zijn door mij geschreven.
Je moet arduino-bibliotheken installeren (kijk naar de fout en de "include") zoals Keypad.h voor de pad.
De verschillende klassen staan aan het einde van de bestanden.
U kunt er rekening mee houden dat één klasse hier is om de seriële informatie te verzenden.
void MIDImessage (byte command, byte data1, byte data2) // --------- NOODZAKELIJK, geef waarden door via standaard Midi Command
{ Serieel.schrijven (opdracht); Serieel.schrijven(data1); Serieel.schrijven(data2); }"
Stap 5: Verbeteringen
Alles werkt, maar het is een prototype. Er zijn wat vragen of verbeterpunten.
Energie:
- Toen ik de RGB-pad met elke sensor gebruikte, schenen de RGB-leds heel weinig. De 5v arduino zijn ze te weinig voor mijn project? Als ik ze alleen gebruik, geen probleem.
Code:
- Ik heb het serienummer van de encoder, maar ik weet niet hoe het werkt in MIDI. Ik bedoel wat ze willen in MIDI-uitvoer. Als je weet hoe je de encoder moet instellen om te scratchen op traktor, neem dan contact met me op.
- Sommige van mijn codes voor knoppen zijn niet geschikt voor een muziektoepassing. We hebben de snelste respons nodig en ik zag dat sommige van mijn knopcodes niet op de beste manier zijn geschreven om dat te doen (Play-knop als ik me goed herinner).
Aanbevolen:
Installatie voor externe Bluetooth GPS-provider voor Android-apparaten: 8 stappen
Installatie voor externe Bluetooth GPS-provider voor Android-apparaten: deze instructable legt uit hoe u uw eigen externe Bluetooth-compatibele GPS voor uw telefoon kunt maken, wat dan ook voor ongeveer $ 10. Materiaallijst: NEO 6M U-blox GPSHC-05 bluetooth-module Kennis van interface Blutooth Low energy-modulesArdui
Idee voor doe-het-zelf-activiteit voor weerstations voor 12+ jaar: 4 stappen
Idee voor doe-het-zelf-weerstationactiviteit voor 12-plussers: in deze activiteit zullen deelnemers hun weerstation opzetten, de lucht in sturen en de opnames (licht, temperatuur, vochtigheid) in realtime volgen via de Blynk-app. Bovendien leert u hoe u de geregistreerde waarden publiceert
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino - Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter - RC Helikopter - RC-vliegtuig met Arduino: 5 stappen (met afbeeldingen)
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino | Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter | RC Helikopter | Rc-vliegtuig met Arduino: een Rc-auto besturen | Quadcopter | Drone | RC vliegtuig | RC-boot, we hebben altijd een ontvanger en zender nodig, stel dat we voor RC QUADCOPTER een 6-kanaals zender en ontvanger nodig hebben en dat type TX en RX is te duur, dus we gaan er een maken op onze
Relaisbord voor Arduino voor minder dan $8: 5 stappen
Relaisbord voor Arduino voor minder dan $8.: Hallo vrienden, vandaag ga ik je vertellen hoe je een relaisbord voor Arduino maakt voor minder dan $8. In dit circuit gaan we geen IC of transistor gebruiken. Dus laten we het doen
Bereid enkele overtollige PIR-sensoren voor robotica voor: 3 stappen (met afbeeldingen)
Bereid wat overtollige PIR-sensoren voor robotica voor: ik vond een aantal PIR-sensoren op eBay. Ze zijn gemonteerd op een print die is gemaakt voor een handsfree set voor mobiele telefoons. Ik beschrijf hier graag hoe je de sensor voorbereidt voor gebruik in robotica-projecten. Als je niet weet wat een PIR-sensor is