Indholdsfortegnelse:

Midi -kontrolleret optagelys til Logic Pro X: 9 trin (med billeder)
Midi -kontrolleret optagelys til Logic Pro X: 9 trin (med billeder)

Video: Midi -kontrolleret optagelys til Logic Pro X: 9 trin (med billeder)

Video: Midi -kontrolleret optagelys til Logic Pro X: 9 trin (med billeder)
Video: Все что вы хотели знать про MIDI клавиатуры 2024, Juli
Anonim
Midi -kontrolleret optagelys til Logic Pro X
Midi -kontrolleret optagelys til Logic Pro X

Denne vejledning indeholder oplysninger om, hvordan du opbygger og programmerer en grundlæggende MIDI -grænseflade til styring af et optagelseslys med Logic Pro X. Billedet viser et blokdiagram over hele systemet fra Mac -computeren, der kører Logic Pro X til venstre til SainSmart Relay, der bruges til at tænde og slukke lyset til højre. Logic Pro X bruger en funktion kaldet kontrolflader til at sende MIDI -data, når optagelse startes eller stoppes. Et USB til MIDI -kabel forbinder computeren med MIDI -interfacet for at overføre signalet. Interfacet bruger en 6N138 optoisolator -chip til fysisk at adskille MIDI -input fra computeren og output til et Arduino Uno -controllerkort. Ud over hardware og skematisk diagram over MIDI -grænsefladen vil vi diskutere programmet eller "Arduino -skitse", der er uploadet til Arduino -controllerkortet, der bruges til at fortolke MIDI -signalerne fra Logic Pro X og efterfølgende tænde og slukke relæet.

Jeg sender to ledsagende videoer, der dækker dette projekt, på min YouTube -kanal (Chris Felten), som kan være en hjælp til at bygge projektet. Jeg vil også integrere dem i slutningen af denne vejledning. Tjek også referencerne på den sidste side af denne instruktionsbog, som vil være yderst nyttig til bedre at forstå MIDI og interfacekredsløbet

Trin 1: Skematisk

Skematisk
Skematisk

MIDI -indgangen til venstre er orienteret, som om den ser ud på bagsiden af et kvindeligt chassis -monteret MIDI -stik, hvor ledningerne skal tilsluttes. Så den forreste beholder på MIDI -stikket peger mod skærmen. Pin 4 på MIDI -stikket er forbundet til en 220 ohm modstand, som er forbundet til den båndede side af en 1N4148 -diode og til pin 2 på optoisolatoren. Pin 5 på MIDI -stikket er forbundet til dioden modsat den båndede side og til pin 3 på optoisolatoren. Sørg for at lokalisere båndet på den lille diode og orientere det korrekt!

Bemærk, at Arduino Uno controller -kortet giver en 5V output, der bruges til at drive både optoisolatorchippen ved pin 8 og SainSmart 2 Channel Relay Board ved VCC -stiften. Arduino Uno -jorden binder til pin 5 på optoisolatoren og GND -stiften på SainSmart Relay Board. Pin 7 på optoisolatoren er bundet til jorden gennem en 10.000 ohm modstand. Optoisolatorens output ved pin 6 er forbundet til pin 2 på Arduino Uno. Nogle andre lignende kredsløbsskemaer kan vise, at det går ind i pin 0 på Arduino, men vores særlige skitse (program) tildeler input til pin 2. Outputstift 7 på Arduino Uno tilsluttes IN1 -pin på SainSmart -relækortet.

Jumperen på SainSmart Relay Board bør forblive på plads. Relæudgangen er mellem de to skrueforbindelser som vist. Når det relevante MIDI -signal modtages, vil Arduino Uno gøre pin 7 positiv (høj) og derved instruere relæet om at lukke og fuldføre et kredsløb mellem et lys og dets strømkilde og tænde lyset. Du vil måske bruge et lavspændingslys for ikke at skulle bringe 110V AC ind i MIDI interface kabinettet, selvom jeg mener, at SainSmart Relay Board, der blev brugt i dette projekt, er klassificeret til 110V AC.

Arduino Uno drives via et tønde -stik, der er bygget på kortet. En standard 9V vægmonteret strømforsyning bør være tilstrækkelig. De fleste af disse kommer med flere tønde tips, hvoraf den ene vil rumme tønde stik på Arduino.

Trin 2: Deleliste

Deleliste til MIDI -interface -optagelys:

MIDI-stik: Digikey CP-2350-ND

220 Ohm 1/4watt modstand: Digikey CF14JT220RCT-ND

1N4148 diode: Digikey1N4148-TAPCT-ND (Alternativer: 1N914, 1N916, 1N448

10k Ohm 1/4watt modstand: Digikey CF14JT10K0CT-ND

470 Ohm 1/4watt modstand: Digikey CF14JT470RCT-ND (jeg brugte 2x220 i stedet)

6N138 Optoisolator: Digikey 751-1263-5-ND (Frys-NTE3093 Part#: 1001023)

Arduino Uno - R3+: OSEPP (OSEPP.com) og steges: #7224833

SainSmart 2-kanals 5V relæmodul: Dette kan findes på Amazon. Du kan erstatte et solid state-relæ med input på 5-12V til lydløs drift i studiet. Det fysiske relæ er højt.

Brødbræt: Fry’s Electronics eller andet

Jumperwires: Fry’s Electronics eller andet. Jeg bruger SchmartBoard -

9V DC vægadapter strømforsyning: Frys eller andet (Leveres normalt 600-700mA, kan ofte justeres for at give forskellige spændinger 3-12 volt og leveres med forskellige tips. Eksempel: Fry's 7742538)

USB-kabel A-B: Bruges til at slutte din computer til Arduino-kort for at uploade skitsen (program). Fry’s Electronics eller andet

Kabinet: Fry’s Electronics eller andet. Jeg brugte en æske fra Michael's Arts and Crafts Shop.

Møtrikker, bolte og afstandsstykker til montering af brædder: Fry’s Electronics eller andet

Optagelseslys: Ethvert lys fungerer. Gerne noget med en lavspændingsforsyning, så du ikke behøver at køre 110V AC ind i midi -kabinetrelæet. Jeg brugte et batteridrevet, rødt nødlys, jeg fandt billigt hos yngel, men du vil måske have noget mere avanceret.

Trin 3: Arduino Uno

Arduino Uno
Arduino Uno

Til venstre for Arduino Uno -kortet er et tønde -stik til en 9V strømforsyning. En simpel vægmonteret strømforsyning bør være tilstrækkelig (se deleliste). Den store metalport over strømstikket er USB-porten til et USB-kabel A-B. Dette forbinder Arduino Uno med din computer, så skitsen (programmet) kan uploades. Når programmet er uploadet til Arduino Uno, kan kablet afbrydes. Bemærk, at du vil montere enden af Arduino Uno -kortet med strømstikket og USB -porten tæt på siden af kabinettet, så du kan skære åbninger og have let adgang til dem. Du vil bruge 5V pin og GND benene langs bunden af billedet for at levere strøm til 6N138 optoisolatorchippen og SainSmart Relay Board. Pin 2, der modtager optoisolatorudgangen og pin 7, der går ud til relæet, er øverst på billedet. SchmartBoard laver jumperwires, headers og wirehuse, der kan tilsluttes Arduino Uno -kortet. Disse overskrifter og præfabrikerede jumpertråde i forskellige længder gør det let at fastgøre de forskellige moduler og kan spare lidt loddetid. Hvis du har en Fry's Electronics i nærheden, kan du gennemse midtergangen, hvor de har Arduino -enheder og andre små projekter eller robotik for at få en idé om headers, jumperwires og stik til rådighed. Tjek også:

Trin 4: SainSmart 2-kanals relæmodul

SainSmart 2-kanals relæmodul
SainSmart 2-kanals relæmodul

Outputtet fra pin 7 på Arduino Uno tilsluttes IN1 -pin på SainSmart Relay Board til venstre på billedet. Den 5v, der leveres fra Arduino Uno, tilsluttes VCC. GND -benene på Arduino Uno og SainSmart Relay Board bør også forbindes sammen. Jumperen på SainSmart Relay Board forbliver på plads som vist på billedet. Relæudgangen er de to øverste skrueforbindelser på det øverste relæ, da det er orienteret i dette billede. De to skrueforbindelser er øverst til højre på billedet. Det ene skruestik er forbundet til lyset, som derefter tilsluttes den ene side af lysets strømkilde og derefter tilbage til det andet skruestik på relæet, så når det lukker, tilføres strøm til lyset, og det lyser. Jeg tilsluttede relæudgangsskruerne til et 1/4 phono -stik monteret på kabinettet, som derefter sluttes til det faktiske lys og dets batteristrømkilde. Det gør det muligt for mig let at afbryde lyset fra interfacekabinettet.

Dette SainSmart Relay Board er et fysisk relæ, så det er noget højt i indstillingen af et optagestudie. En mere støjsvag mulighed ville være at bruge et solid state relæ i stedet.

Trin 5: Kort MIDI -overblik

MIDI - Musical Instrument Digital Interface

BEMÆRK: For en mere detaljeret forklaring af MIDI, tjek Amanda Gassaei's Instructable om emnet:

Dette er en kort oversigt over MIDI -formatet, der skal hjælpe med at forstå, hvordan Arduino -skitsen (programmet) bruger MIDI -data sendt af Logic Pro X til at styre relæet og efterfølgende optagelyset.

MIDI -oplysninger sendes i bytes, som er sammensat af 8 bit ('xxxxxxxx').

I binært format er hver bit enten et '0' eller et '1'.

Den første byte er en status- eller kommandobyte, f.eks. 'NOTE-ON', 'NOTE-OFF', 'AFTERTOUCH' eller 'PITCH BEND'. De bytes, der følger efter kommandobyten, er databyte for at give flere oplysninger om kommandoen.

Status eller kommandobyte starter altid med 1: 1sssnnnn

Kommandobyte gemmer data for kommandoen i de første 4 bit (1sss) og kanalen i de sidste 4 bit (nnnn).

Lad os bruge en 'NOTE-ON' kommandobyte sendt på kanal 2 som et eksempel:

Hvis kommandobyten er: 10010001

Byten starter med et 1 og fortolkes som en kommandobyte

Ved at vide, at dette er en kommandobyte, tager MIDI den første halvdel som 10010000

Dette = 144 i decimal, som er kommandoværdien for 'NOTE-ON'

Den anden halvdel af byte fortolkes derefter som 00000001

Dette = 1 i decimal, der betragtes som MIDI -kanal ‘2’

Databyte følger kommandobyte og starter altid med 0: 0xxxxxxx

I tilfælde af en NOTE-ON-kommandobyte sendes der yderligere 2 databyte. En til PITCH (note) og en til VELOCITY (volumen).

Logic Pro X optagelys -kontroloverflade sender følgende MIDI -data, når optagelsen startes eller stoppes:

Startet (lyser tændt): Kommandobyte 'NOTE-ON'/MIDI-kanal, Pitchbyte ignoreres, Hastighedsbyte = 127

Stoppet (lys slukket): Kommandobyte 'NOTE-ON'/MIDI-kanal, Pitchbyte ignoreres, Hastighedsbyte = 0

Bemærk, at MIDI-kommandoen altid er 'NOTE-ON', og det er hastigheden, der ændres for at tænde eller slukke lyset. Pitch -byte bruges ikke i vores applikation.

Trin 6: Arduino Sketch (program)

Det vedhæftede dokument er en pdf -fil af den faktiske skitse indlæst i Arduino Uno -kortet for at køre MIDI -grænsefladen. Der er en MIDI -vejledning skrevet af Staffan Melin, der tjente som grundlag for denne skitse på:

libremusicproduction.com/tutorials/arduino-…

Du skal downloade den gratis Arduino-software til din computer (https://www.arduino.cc/) for at redigere og indlæse skitsen i Arduino Uno-kortet ved hjælp af et USB-kabel A-B.

Jeg har også oprettet og lagt to tutorialvideoer på min YouTube -kanal (Chris Felten), der går over dette projekt og forklarer Arduino -skitsen mere detaljeret. Hvis du er interesseret i at bygge MIDI -grænsefladen og programmere den, kan de to tilhørende videoer være en hjælp.

Trin 7: Gennemført grænseflade

Gennemført grænseflade
Gennemført grænseflade
Gennemført grænseflade
Gennemført grænseflade

Jeg valgte at huse MIDI -interfacet i en trækasse fra Michael's Arts and Crafts. Selvom den er praktisk og billig, fungerer trækassen som et slagværk, når det fysiske relæ skifter! Et solid state -relæ ville være en værdifuld forbedring for at slippe af med koblingsstøj.

Bemærk Arduino Uno -forbindelserne i slutningen af boksen til venstre. Huller blev skåret for at give adgang til USB -porten og strømstikket. Det kvindelige chassis -MIDI -stik kan også ses for enden af kassen.

Der er også et billede af indersiden. Selvom projektet let kunne forbindes til et perforeret brødbræt, havde jeg ekstra kobberbeklædning og ætsningsmateriale, så jeg lavede et printkort til projektet. Jeg brugte præfabrikerede jumperwires og headers fra SchmartBoard (https://schmartboard.com/wire-jumpers/) til at forbinde interfacekortet, Arduino Uno og SainSmart Relay board.

Trin 8: Logic Pro X

Logic Pro X har en funktion kaldet kontrolflader. En af disse er en kontrolflade til optagelys, der når den er installeret, sender MIDI -signaler, når optagelse er tilkoblet, startet og stoppet. Du kan installere kontroloverfladen ved at klikke på 'Logic Pro X' på den øverste menulinje efterfulgt af 'Control Surfaces' og 'Setup'. Dette åbner en ny dialogboks. Ved derefter at klikke på rullemenuen 'Installer' kan du finde optagelseslysstyringen på listen og tilføje den. Det er værd at tage et kig på min MIDI Controlled Recording Light -video på YouTube for at få en fuldstændig forklaring på, hvordan jeg konfigurerer Logic Pro X Recording Light Control Surface -parametre til at fungere for denne grænseflade.

Trin 9: Nyttige referencer

Send og modtag MIDI med Arduino af Amanda Gassaei:

www.instructables.com/id/Send-and-Receive-M…

Arduino og MIDI i tutorial af Staffan Melin:

libremusicproduction.com/tutorials/arduino-…

Anbefalede: