Inhaltsverzeichnis:

Lune - MIDI-Controller mit Arduino (für DJ oder Musiker) - Gunook
Lune - MIDI-Controller mit Arduino (für DJ oder Musiker) - Gunook

Video: Lune - MIDI-Controller mit Arduino (für DJ oder Musiker) - Gunook

Video: Lune - MIDI-Controller mit Arduino (für DJ oder Musiker) - Gunook
Video: #1 How to Build a MIDI controller with an Arduino: The DIY MIDI Controller Workshop 2.0 2024, Juli
Anonim
Image
Image
Lune - MIDI-Controller mit Arduino (für DJ oder Musiker)
Lune - MIDI-Controller mit Arduino (für DJ oder Musiker)
Lune - MIDI-Controller mit Arduino (für DJ oder Musiker)
Lune - MIDI-Controller mit Arduino (für DJ oder Musiker)
Lune - MIDI-Controller mit Arduino (für DJ oder Musiker)
Lune - MIDI-Controller mit Arduino (für DJ oder Musiker)

Dies ist mein erster Arduino (Mikrocontroller) Projektname Lune. Ich wollte Arduino mit einem nützlichen und großen Projekt lernen, also beschloss ich, einen Midi-DJ-Controller zu entwickeln, der alle Funktionen hat, die zum Mischen benötigt werden.

Jede Art von Sensor (Potentiometer, Taster, …) kann unabhängig voneinander gelernt werden und ich denke, der beste Weg ist, "wie es funktioniert" und "wie es angeschlossen wird" für jeden Sensor Schritt für Schritt zu lernen.

Alles funktioniert so:

  1. Mit dem Arduino verbundener Sensor erkennt eine Änderung
  2. Das Arduino sendet diese Änderung an den Computer
  3. Eine Software auf dem Computer wandelt die seriellen (arduino) Informationen in MIDI um, die Sie beispielsweise in Ableton verwenden können

Mein Controller hat

  • 6 Potenometer axial für EQ
  • 3 Potientometer axial für Effekte
  • 6 Potientometer linear für Volumen
  • 2 Taster für Play
  • 2 Ultraschallsensor (SR04) für Effekte mit dem Abstand meiner Hände
  • 2 Druckknöpfe für Cue
  • 2 x 4 Tasten RGB-LED-Pad
  • 1 Encoder für Scratch

Schritt 1: Standalone oder Software

Zuerst habe ich die verschiedenen Tutorials von MIDI-Controller mit arduino recherchiert.

Sie können einen MIDI-Controller mit einer Software erstellen, die das, was Sie in MIDI tun, übersetzt (was ich getan habe)

Du wirst brauchen:

  1. Software zum Senden/Empfangen von Midi-Daten https://projectgus.github.io/hairless-midiserial/ Vergessen Sie nicht, die Baudrate in den "Einstellungen" entsprechend der in Ihrem Arduino-Code einzustellen (für mich 9600, weil "Serial.begin." (9600);")
  2. Ein virtuelles Midi-Gerät

Ein anderes Beispiel:

www.instructables.com/id/Easy-3-Pot-Potentiometer-Arduino-Uno-Effects-Midi-/

_

Sie können einen "echten" MIDI-Controller erstellen, der ohne eine Software, die auf Ihrem Computer läuft, um das, was Sie auf dem Controller tun, in MIDI zu übersetzen, MIDI an den Computer sendet

Im Moment müssen Sie mit einem Arduino Uno oder Mega den Arduino-Raum oder ähnliches flashen, um Midi direkt zu senden. Nach allem, was ich verstanden habe, müssen Sie sich des Codes sicher sein, den Sie auf dem Arduino senden, denn wenn das Arduino flasht, können Sie keinen Code mehr senden (Sie müssen erneut reflash). Ich habe viele Testcodes durchgeführt, also habe ich die zweite Option gewählt, aber es ist auf jeden Fall besser, ein Plug-and-Play-MIDI-Gerät zu haben.

Beispiel um weiter zu gehen:

create.arduino.cc/projecthub/etiennedesportes/ableton-live-midi-controller-9182b3

MAJ 28.02.2018: https://www.arduino.cc/en/Reference/MIDIUSB Der einfachste Weg, wenn Sie "Mikrocontroller mit nativen USB-Fähigkeiten (atmega32u4-basierte Boards oder ARM-Boards)" haben (Kein OK für Arduino UNO)

Schritt 2: Holz und Fall

Holz und Koffer
Holz und Koffer
Holz und Koffer
Holz und Koffer
Holz und Koffer
Holz und Koffer

Holzgehäusedesign: Ich habe einen Gehäusegenerator https://www.makercase.com/ verwendet, das Oberteil und den Schlitz für das Oberteil gelöscht. Um die Höhe zu bestimmen suche ich die Höhe meines höchsten Knopfes und füge 2cm hinzu.

Für die Oberseite habe ich eine MDF-Platte und eine Sperrholz-Pappel 3mm verwendet, die graviert ist.

Laserschneiden Sie die Holzbretter mit den Plänen.

Schneiden/bohren Sie ein Loch für das USB-Kabel.

Ich habe mich meinen Plänen angeschlossen, aber bei diesem Schritt ist es viel interessanter, Ihren persönlichen Controller zu erstellen.

Montage:

Für die Seiten habe ich die verschiedenen Seitenbretter geklebt und montiert.

Für die Oberseite bohrte ich 4 Löcher in die 2 oberen MDF. (Durchmesser meiner Schraube + 1mm)

Ich schraube eine Schraube an und klebe die Mutter viermal auf den Winkel, um die 2 oberen Holzbretter nach oben zu schrauben.

Auf diese Weise habe ich 4 Winkel mit einer Mutter verklebt, die Löcher mit der Mutter sind die Löcher für die Schrauben zur Befestigung der Deckbretter. Tatsächlich kann ich nicht auf die Mutter unten zugreifen, wenn ich die oberen Holzbretter schraube.

Ich habe Löcher in Seitenbretter (die Box) gebohrt, die Winkel an den Seiten befestigt (angeschraubt und nachgeklebt).

Setzen Sie die beiden oberen Bretter ein und schrauben Sie sie fest.

Auf diese Weise gibt es keine sichtbare Nuss und das Deckbrett muss nicht befestigt werden, es ist überraschend solide, aber es gibt vielleicht einen besseren Weg.

Polieren:

Ich habe "Vernis bois brillant 125 ml Avel Louis XIII" (französischer Lack) verwendet, der sehr gut funktioniert.

Es war ein bisschen lang, weil ich mehrere Schichten gelegt habe und dazwischen jeweils 24 Stunden gewartet habe.

Die Oberseite sieht toll aus und das Holz ist geschützt. Es war mein erstes Mal, also habe ich nicht so lange gewartet wie nötig oder ich habe an einigen Stellen zu viel Lack aufgetragen, weil die Politur manchmal auch nach dem Trocknen nicht fest war, jetzt (2 Monate später) ist es ok.

Grafik: Montage von Fornaseti-Kunstwerken und persönlicher Zeichnung.

p.s: Ratschläge zum Design des Midi-Controllers, auf meinem Plan sind die beiden RGB 4-Tasten-Pads zu nahe beieinander

www.instructables.com/id/A-Framework-For-Making-Affordable-Stylish-Modula/

Schritt 3: Elektronisch

Elektronisch
Elektronisch
Elektronisch
Elektronisch
Elektronisch
Elektronisch

Ich habe alles (für mein Projekt) auf eine Fritzing-Datei gelegt.

Für jeden Sensortyp müssen Sie lernen, wie er funktioniert oder was er dem Arduino gibt.

Sehen Sie sich dazu zum Beispiel Tutorials zu inctrectable an ("Potentiometer Arduino", …).

Ich benutzte:

  • Potentiometer
  • RGB-Pad (Sparkfun
  • Ultraschall HC-SR04 (Entfernungsdetektor)
  • Encoder
  • Taster (Arcade-Taste)

Wenn Sie Ihre endgültige Montage durchführen möchten, empfehle ich, dies gleichzeitig mit Fritzing zu tun, da es bei vielen Kabeln schwer zu sehen ist.

Befehl:

Nachdem ich alles wusste, was ich will oder zumindest den größten Teil, habe ich meine Komponenten bestellt. Auf diese Weise haben Sie weniger Versandkosten.

Ich für meinen Teil bestelle am meisten bei Conrad oder RS (ich bin in Frankreich) und spezifischere Stücke wie RGB-Pads bei Robotshop.

Ein Beispiel für meinen Conrad-Befehl in den Bildern

Schritt 4: Arduino-Code

Arduino-Code
Arduino-Code

Es gibt meinen Code für Arduino. Sie müssen es nach Ihren Änderungen, wenn Sie einen anderen Controller verwenden, mit Arduino IDE per USB an Ihren Mikrocontroller senden (youtube hat Tutorials). In Anhängen:

  • Der letzte
  • Eins nur um die 2 RGB-Pads mit 6 möglichen Farben zu bearbeiten (RGB+Cyan+Rosa+Gelb).
  • Alte Codeteile, die ich geschrieben habe, um den Differenzsensor zu lernen

Einige Teile sind übernommen, andere von mir geschrieben.

Sie müssen Arduino-Bibliotheken installieren (siehe Fehler und "include") wie Keypad.h für das Pad.

Die verschiedenen Klassen stehen am Ende der Dateien.

Sie können beachten, dass eine Klasse hier ist, um die Seriennummerninformationen zu senden.

void MIDImessage (Byte-Befehl, Byte-Daten1, Byte-Daten2) // --------- NOTWENDIG, Werte über den Standard-Midi-Befehl übergeben

{ Serial.write (Befehl); Serial.write (Daten1); Serial.write (Daten2); }"

Schritt 5: Verbesserungen

Alles funktioniert, aber es ist ein Prototyp. Es gibt einige Fragen oder Verbesserungspunkte.

Energie:

- Wenn ich das RGB-Pad mit jedem Sensor verwendet habe, leuchten die RGB-LEDs sehr wenig. Die 5v arduino sind sie zu wenig für mein Projekt? Wenn ich sie nur benutze, kein Problem.

Code:

- Ich habe die Seriennummer vom Encoder, weiß aber nicht, wie es in MIDI funktioniert. Ich meine, was sie in der MIDI-Ausgabe wollen. Wenn Sie wissen, wie man den Encoder auf dem Traktor auf Scratch setzt, kontaktieren Sie mich.

- Einige meiner Codes für Tasten sind für eine Musikanwendung nicht gut. Wir brauchen die schnellste Reaktionsfähigkeit und ich habe gesehen, dass einige meiner Tastencodes nicht optimal geschrieben sind (Play-Taste, wenn ich mich gut erinnere).

Empfohlen: