Índice:

Estrutura de LED controlada por MIDI: 7 etapas
Estrutura de LED controlada por MIDI: 7 etapas

Vídeo: Estrutura de LED controlada por MIDI: 7 etapas

Vídeo: Estrutura de LED controlada por MIDI: 7 etapas
Vídeo: Шумеры - падение первых городов 2024, Julho
Anonim
Image
Image

Como um verdadeiro amante da música e estudante de eletrônica e ciência da computação, sempre quis construir dispositivos MIDI, que pudesse usar para a criação de música eletrônica.

Depois de assistir a vários shows e festivais de música, comecei a me interessar muito por shows de luzes durante as apresentações.

Depois de muita pesquisa, na maioria das vezes eu só encontrei dispositivos que usam microfone e não podiam permitir o controle de LEDs exatamente como você gostaria.

Ao me familiarizar cada vez mais com os sinais DAW e MIDI, decidi começar com este projeto!

Consiste em uma estrutura 3D com LEDs incorporados, que na verdade são controlados por sinais MIDI (NoteOn, NoteOff e Mensagens CC).

Para isso, o músico poderia controlar a cor e a intensidade de cada LED, apenas por meio de sinais MIDI, gerados por qualquer DAW.

Com essa ideia, eu queria aumentar a criatividade por meio de shows de luzes e permitir que cada um construísse a sua, para tornar cada performance visual única.

Etapa 1: Materiais

Basicamente, este projeto consiste em duas partes: um circuito de recepção de MIDI e a estrutura de LED; e um microcontrolador para conectar essas partes e "traduzir" os sinais MIDI vindos da DAW para as tiras de LED. Aqui está uma lista dos materiais necessários para cada parte.

Circuito de recepção MIDI:

  • 1 x 6N138 optoacoplador
  • 1 x diodo 1N914
  • 1 x Din Jack de 5 pinos (MIDI Jack)
  • 2 x resistores de 220 ohms
  • 1 x Resisor de 4,7 K Ohm
  • 1 conector USB / MIDI

Estrutura do LED:

Usei faixas de LEDs RGB baseadas em LEDs WS2812B que podem ser controladas com apenas 1 porta digital. Se você planeja usar um grande número de LEDs, deve se preocupar com a corrente máxima necessária (1 LED pode consumir no máximo 60mA). Se o microcontrolador não puder suportar este valor máximo, você precisará de outra fonte de alimentação de 5 V que pode fornecer corrente suficiente. Usei um adaptador CA / CC de 5 V - 8 A com o adaptador de saída dedicado e um switch.

Nota: Parece que você pode usar uma fonte de alimentação de computador, pois eles são conhecidos por serem capazes de fornecer uma corrente muito alta, mas você terá que se certificar de que fornece uma tensão de 5 V CC estável, talvez usando um Resistência de potência de 36 Ohm e 5 Watts entre o terra (preto) e a saída de 5 V (vermelho) para fazer com que haja corrente suficiente passando pelo resistor e, assim, fornecer 5 V estáveis.

Por fim, usei um Arduino Uno simples com uma blindagem de parafuso para fazer a ligação entre os sinais MIDI e as tiras de LED.

Etapa 2: Construindo o Circuito de Entrada MIDI

Construindo o Circuito de Entrada MIDI
Construindo o Circuito de Entrada MIDI
Construindo o Circuito de Entrada MIDI
Construindo o Circuito de Entrada MIDI

Se você está interessado em saber o que é exatamente o protocolo MIDI e como ele funciona, recomendo veementemente que você verifique o canal Notes and Volts no YouTube, onde há muitos tutoriais interessantes e inovadores e projetos MIDI Arduino.

Nesta parte, vou me concentrar apenas no circuito de entrada MIDI. Pode ser uma boa ideia construir um protótipo em um protoboard e verificar se os sinais MIDI vindos do DAW são bem recebidos pelo microcontrolador antes de iniciar a soldagem dos componentes.

Os dois vídeos a seguir descrevem como construir e testar o circuito:

  • Construindo o circuito
  • Testando o circuito

Finalmente, também pode ser uma boa ideia verificar este vídeo para entender as mensagens CC e como os clipes de automação podem ser interpretados pelo seu microcontrolador para controlar o brilho do LED, por exemplo.

Etapa 3: Configurando FL Studio (opcional)

Configurando FL Studio (opcional)
Configurando FL Studio (opcional)
Configurando FL Studio (opcional)
Configurando FL Studio (opcional)
Configurando FL Studio (opcional)
Configurando FL Studio (opcional)

Como me sinto confortável usando o FL Studio, explicarei como configurar corretamente sua interface MIDI, mas tenho certeza de que este procedimento não deve ser drasticamente diferente se você estiver usando outra estação de trabalho de áudio digital.

Primeiro, você só precisa conectar o conector USB / MIDI ao computador. Normalmente, esses dispositivos vêm com um firmware embutido e são reconhecidos como dispositivos MIDI, mesmo que sejam unpleggud. Em seguida, abra a janela "Configurações" (pressionando F10). Se tudo funcionar corretamente, você notará alguns dispositivos MIDI de saída na seção de saída. Selecione o seu dispositivo e certifique-se de que está LIGADO.

Então você terá que definir seu número de porta e mantê-lo em mente (0 por exemplo). Basta fechar esta janela (os parâmetros são salvos automaticamente) e adicionar um novo canal: Saída MIDI.

Então, a última coisa que você terá que fazer é definir a porta deste novo canal: certifique-se de escolher o mesmo número de porta que você definiu na seção "Configurações": ao fazer isso, as mensagens MIDI vindas de seu canal agora são ligado à saída MIDI.

Agora, quando uma nota é tocada pelo canal MIDI Out, uma mensagem "NoteOn" será enviada através da interface MIDI. Da mesma forma, uma mensagem "NoteOff" será enviada quando a nota for liberada.

Outro recurso interessante que vem com o canal MIDI Out é a capacidade de controlar diferentes parâmetros com potenciômetros. Ao clicar com o botão direito em um deles e selecionar "Configurar …", você pode fazê-los enviar CCMessages (um valor que vai de 0 a 127) que serão usados para controlar o brilho dos LEDs: escolha CC e depois Aceitar.

Normalmente o FL Studio agora está pronto para enviar dados para sua interface MIDI! O próximo é escrever o código para piscar no Arduino e adaptá-lo à sua estrutura de LED.

Etapa 4: Conectando os LEDs

Conectando os LEDs
Conectando os LEDs

Conectar as fitas de LED é bastante simples, pois elas requerem apenas + 5V, GND e Dados. No entanto, como planejava conectar mais de 20 deles, decidi usar vários pinos PWM do Arduino e declarar várias instâncias de Adafruit_NeoPixel (no coeficiente) para evitar qualquer tipo de atraso não intencional.

A imagem anexa também pretende explicar como funciona a eletrônica:

  • As tiras de LEDs são alimentadas diretamente pela fonte de alimentação.
  • Um botão liga / desliga é usado para alimentar o Arduino
  • o circuito de entrada MIDI é alimentado pelo Arduino ao ligar o interruptor

Etapa 5: Desenhando a Estrutura 3D

Desenhando a Estrutura 3D
Desenhando a Estrutura 3D
Desenhando a Estrutura 3D
Desenhando a Estrutura 3D
Desenhando a Estrutura 3D
Desenhando a Estrutura 3D
Desenhando a Estrutura 3D
Desenhando a Estrutura 3D

Até agora, esta parte foi a mais longa, pois eu era totalmente novo com impressão 3D (e modelagem). Eu queria projetar uma estrutura que se parecesse com um icosaedro truncado meio explodido (sim, demorei um pouco para encontrar o nome exato da forma).

Claro que você está livre para projetar seu próprio modelo com a forma que desejar! Não vou detalhar o processo de modelagem, mas você encontrará os arquivos STL se quiser projetar essa estrutura.

A montagem das diferentes partes demorou um pouco, pois tive que colocar um LED em cada face e conectar todos eles soldando um grande número de fios dentro do núcleo que atualmente está bem bagunçado!

Nota: se você deseja projetar tal estrutura, você precisará de 10 peças hexagonais (cerca de 3 horas cada usando uma mini impressora PP3DP UP) e 6 peças pentagonais (2 horas).

Uma vez que há um LED em cada parte, você terá que conectar todos os terminais 5V e GND juntos e conectar os vários terminais de entrada e saída de cada LED da maneira que eles serão conectados.

Por fim, usei acrílico difusivo de LED para cobrir cada face e torná-las iluminadas de forma consistente.

Só resta o código, que se revela não tão complicado!

Etapa 6: O Código

O código
O código

Como mencionei na parte anterior, o código se revela bastante simples!

Na verdade, ele consiste apenas em uma instância MIDI e várias instâncias Adafruit_NeoPixel (por mais que haja tiras diferentes).

Basicamente, uma vez declarada, a classe MIDI trabalha com tipos de "interrupções": NoteOn, NoteOff e CCMessage. Quando o circuito de entrada MIDI transmite um desses sinais específicos para o Arduino, a sub-rotina associada é chamada. Então, tudo o que o código está fazendo é acender um LED específico no sinal NoteOn, diminuí-lo no sinal NoteOff associado e atualizar o brilho de uma faixa no CCMessage.

Além disso, defini uma função simples que dá a possibilidade de escolher a cor dos LEDs lendo a velocidade que vem com o sinal NoteOn e cada LED pode ser vermelho, roxo, azul, turquesa, verde, amarelo, laranja ou branco, dependendo do valor da velocidade que vai de 0 a 127.

Uma coisa importante a notar é que você terá que desconectar o pino RX (vindo do circuito de entrada MIDI) ao enviar seu esboço, pois a porta serial (usada durante este processo) está conectada a esse pino!

Etapa 7: e agora?

Atualmente estou trabalhando em um gabinete personalizado para incorporar toda a eletrônica e também estou pensando em um nome para a estrutura! Por favor, deixe-me saber se você gostou deste projeto, e estou trabalhando em diferentes programas, pois pretendo atualizar este instrutível com mais vídeos!

Recomendado: