Índice:
- Etapa 1: Conceitos
- Etapa 2: Prototipagem de tábua de pão
- Etapa 3: Fabricação
- Etapa 4: Mock-up e layout de CAD
- Etapa 5: Design de PCB
- Etapa 6: montagens de tela
- Etapa 7: Gabinete
- Etapa 8: Uh-Oh
- Etapa 9: pintar
- Etapa 10: Fiação
- Etapa 11: Código Arduino
- Etapa 12: Conclusão
Vídeo: Controlador de pedal Arduino MIDI: 12 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:36
Recentemente, projetei este controlador MIDI para operar o looper de frase embutido no pedal de delay Boss DD500. Eu controlo todo o meu equipamento de guitarra usando uma placa Behringer FCB MIDI, e isso me permite mudar os patches no pedal de delay no loop de efeitos, enquanto troco os canais do amplificador ao mesmo tempo.
O DD500 tem uma função de looper muito básica incorporada, mas uma das desvantagens disso é que quando o looper está ativo, ele é controlado pelos pedais do pedal. Isso significa que você não pode alterar os patches no pedal enquanto o loop estiver ativo, pois ele basicamente captura as funções dos pedais. Como estou usando MIDI, essa limitação não existe, pois é simplesmente um problema físico. Isso significava reservar 5 pedais em meu controlador MIDI principal para o looper, então decidi construir um controlador separado para eles.
Meu plano inicial para isso era pegar um pequeno gabinete Hammond e colocar 5 pedais e aprender alguns códigos básicos do Arduino. Conforme comecei a aprender mais e meu código estava funcionando, isso acabou me motivando a tentar mais coisas e, em seguida, basicamente virou uma bola de neve para algo maior.
Etapa 1: Conceitos
Uma das primeiras ideias era ter apenas 5 botões consecutivos com LEDs de status. Isso foi bastante simples de fazer um mock-up em uma placa de ensaio com o Arduino. A adição de novos recursos e hardware acabou sendo um processo no qual eu estava constantemente projetando e redesenhando o layout físico no papel e construindo no projeto breadboard. Mesmo com muito planejamento, muito do trabalho nisso foi feito em tempo real no início.
As 2 fotos acima mostram o primeiro desenho que coloquei no papel, que deu o pontapé inicial na ideia, seguido por um mês de anotações feitas seguindo o que moldou os layouts físicos e PCB.
Etapa 2: Prototipagem de tábua de pão
Todo o projeto foi construído em uma placa de ensaio e totalmente testado para garantir que funcionasse totalmente com o DD500 antes de iniciar qualquer trabalho de alojá-lo permanentemente. Alguns recursos extras foram adicionados ao código, o que deu ao controlador algumas funções extras que faltavam ao DD500. Eles serão discutidos mais detalhadamente na seção de código.
O pedal possui 5 pedais, 4 LEDs de status, 5 telas LCD I2C e é controlado por um Arduino Nano Every. Ele obtém energia de uma PSU de pedal de guitarra de 9V por meio de uma breakout box separada que transporta essa energia pelo cabo MIDI usando os 2 pinos que normalmente não são usados em um conector MIDI.
Etapa 3: Fabricação
Eu examinei várias caixas possíveis para abrigar o projeto e até considerei a ideia de tentar dobrar minha própria caixa com folhas de alumínio. Acabei escolhendo um gabinete Hammond que era largo o suficiente para abrigar as 5 telas LCD 16X2 que eu tinha escolhido.
Os pedais eram interruptores de toque suave momentâneos genéricos.
Nesse estágio, decidi fazer engastes de tela de montagem personalizada para manter a parte frontal limpa, pois cortaria os orifícios da tela à mão com uma Dremel e sabia que provavelmente haveria algumas áreas menos perfeitas. Mandei cortá-los por um estúdio de design local que faz o corte a laser, primeiro como modelos de papelão para ter certeza de que meus tamanhos estavam todos corretos, e depois em acrílico branco de 3 mm para a peça final.
Etapa 4: Mock-up e layout de CAD
A partir de meus esboços de papel, usei o Inkscape para dispor todos os componentes físicos e finalizar os tamanhos e posições. Eu também vim com o método de montagem da tela neste ponto. A fim de minimizar a quantidade de parafusos visíveis na frente, decidi montar todas as telas em algumas placas de alumínio da parte traseira usando espaçadores, e então precisaria de apenas 4 parafusos por placa para fixá-los ao gabinete, que também manteria os engastes da tela no lugar.
Etapa 5: Design de PCB
Para criar o PCB, usei um site chamado EasyEDA. Possui um ambiente de editor no qual você pode desenhar um esquema de seus componentes, transformá-lo em um layout de PCB e, em seguida, exportá-lo diretamente para o JLCPCB para transformá-lo em placas. Eu nunca tinha feito nada parecido antes, mas eles têm um excelente guia no site que explica como o editor funciona, e em uma hora eu já tinha o quadro projetado e encomendado.
Algumas áreas da placa foram mal projetadas na época devido à inexperiência, como usar um único barramento de 5 V para a alimentação da tela, por exemplo, ao invés de dar a cada uma uma alimentação separada. Felizmente, quaisquer quedas de tensão ocorridas não foram suficientes para causar problemas nas telas.
As placas chegaram cerca de 2 semanas depois e felizmente funcionaram sem quaisquer problemas.
Etapa 6: montagens de tela
As primeiras peças feitas foram as montagens de tela. Usei alumínio de 3 mm para isso e fiz furos para isoladores. As dimensões foram determinadas colocando tudo sobre a mesa como eu queria que o pedal final fosse e medindo a partir dos orifícios de montagem nos PCBs da tela. Também coloquei os pedais com eles para obter as distâncias para eles.
Depois que todos os orifícios foram perfurados, as telas foram montadas e verificadas quanto à sua esquadria, segurando uma régua contra as bordas inferiores planas. Tudo alinhado até agora.
Etapa 7: Gabinete
O próximo passo foi modificar o caso. Os pedais e LEDs eram simples, pois cada um exigia um orifício de 12 mm e 5 mm, respectivamente.
A maior parte do trabalho físico veio ao cortar os orifícios da tela. Usei uma Dremel com alguns discos de corte resistentes e várias limas para limpar os orifícios posteriormente. Esta parte levou cerca de 2 horas no total.
O gabinete que usei foi projetado para fins industriais e foi feito dobrando uma única peça de metal e soldando por pontos os cantos. Isso significava que algum trabalho seria necessário para limpar esses cantos usando enchimento de carroceria para nivelar os pontos baixos e preencher as lacunas nas bordas.
Neste ponto, o caso estava totalmente preparado e eu fiz um mock up de tudo apenas para ver como ficaria.
Etapa 8: Uh-Oh
E então percebi que, apesar de todo o meu planejamento e medição, cometi um ENORME erro. Eu projetei o layout da placa e da caixa independentemente um do outro. Na minha cabeça, o tabuleiro ficaria quase nivelado com a parede superior, com um pequeno impasse atrás dele. Mas não havia absolutamente nenhuma maneira que isso pudesse caber. E também não havia espaço para colocá-lo de lado. Um descuido enorme, mas felizmente que consegui retificar, pois ainda havia um pouco de espaço entre as montagens da tela na tampa traseira do gabinete. Mais alguns furos nas montagens da tela e alguns espaçadores, e estamos de volta ao trabalho, com espaço suficiente para colocar a tampa.
Etapa 9: pintar
Tudo foi desmontado novamente, e a caixa foi pintada em Vermelho Metálico Doce, seguida de algumas camadas de laca. O caso foi deixado para curar por uma semana, embora eu descobrisse que a laca ainda estava um pouco mole neste ponto, quando eu estava construindo tudo. Algumas pequenas áreas da tinta foram danificadas por causa disso. Algo que pretendo evitar no meu próximo projeto.
Durante esse tempo, comprei uma impressora 3D e decidi usá-la para fazer algumas arruelas para os pedais, já que as de náilon que comprei tinham uma coloração amarelada horrível e eram mal dimensionadas.
Etapa 10: Fiação
A última parte da montagem física foi conectar tudo. Mais uma vez, os problemas com o design da caixa / design do PCB surgiram novamente e algumas das posições do cabeçote no PCB significaram cruzar muitos fios uns sobre os outros, tornando as coisas um pouco mais confusas do que eu esperava.
Os fios para as telas foram agrupados em conjuntos de 4 e usando termorretrátil e envoltório trançado, feitos em uma única peça.
Etapa 11: Código Arduino
Como um iniciante na codificação do Arduino, eu estava aprendendo sozinho à medida que avançava. O código é provavelmente o equivalente de programação a um "longo caminho", mas fiquei satisfeito por ter funcionado conforme o esperado.
O looper no DD500 tem 5 funções básicas:
- Looper ligado / desligado
- Gravar / Overdub / Reproduzir
- Tocar loop gravado
- Pare a reprodução
- Limpar loop gravado
Cada uma dessas funções tem um pedal correspondente e, com exceção do botão de parada, um LED de status. As telas de LCD também são atualizadas com informações relevantes para mostrar se o pedal está no modo de gravação, overdubbing ou reprodução, bem como qual função cada pedal fará, dependendo do que está acontecendo naquele momento.
Um outro recurso que adicionei foi para controlar quantas vezes o recurso de gravação / overdub foi ativado. Isso é mantido no código incrementando um número inteiro, que é exibido na tela de 'buffer', listando quantas faixas são gravadas. Embora o DD500 não possa apagar trilhas individuais, adicionei isso apenas como um exercício de codificação para ver se conseguia fazer funcionar.
Parece haver um problema ao enviar arquivos para o Instructables, então coloquei uma cópia do código no Pastebin em:
2 bibliotecas foram usadas no código:
LiquidCrystal_I2C
Biblioteca de MIDI FortySevenEffects
Etapa 12: Conclusão
Uma das maiores coisas que aprendi com este projeto é que planejar o máximo que puder com antecedência pode evitar possíveis problemas. Os problemas com a montagem do meu PCB destacam a importância disso. Manter boas anotações também é algo que eu recomendo fortemente. Sem eles, posso ter encontrado mais problemas do que antes. No momento, estou construindo meu segundo controlador MIDI e, desta vez, fiz maiores esforços para otimizar meu código e projetar meu hardware em torno de como o PCB deve ser montado.
Recomendado:
Controlador de jogo DIY baseado em Arduino - Controlador de jogo Arduino PS2 - Jogando Tekken com gamepad Arduino DIY: 7 etapas
Controlador de jogo DIY baseado em Arduino | Controlador de jogo Arduino PS2 | Jogando Tekken com DIY Arduino Gamepad: Olá pessoal, jogar é sempre divertido, mas jogar com seu próprio controlador de jogo DIY personalizado é mais divertido. Portanto, faremos um controlador de jogo usando arduino pro micro neste instructables
Controlador de pedal: 5 etapas
Pedal Controller: Estamos prestes a criar um dispositivo HID USB personalizado com uma placa Digispark. Um dispositivo USB pode atuar como um teclado para enviar toques nas teclas ou atuar como um mouse, dependendo de suas necessidades. O Digispark é como um irmão mais novo de o Arduino, mas é especialmente útil
Pedal e pedal de amplificador de guitarra de bolso: 10 etapas
Pedal e pedal de amplificador de bolso de guitarra: Olá! Esse é meu primeiro instrutível e procuro dar o meu melhor com algo que amo, que é a música. Sou um cara do som e nas horas vagas toco violão. Então, aqui está um amplificador de bolso de guitarra com uma saída de 1 watt e mínimo de 4 ohms. Eu usei e
Pedal do Mac OS em um pedal de amplificador de guitarra: 12 etapas
Pedal de um pedal de guitarra do Mac OS: Precisa de um pedal para o seu Mac? Tem um pedal de guitarra com dois interruptores e uma placa Arduino por aí? Alguns fios, três pinos 1/4 " jack e está tudo pronto. Tive que fazer uma transcrição de áudio e usei meu pedal para reproduzir / pausar e pular ba
Pedal / pedal Stealth fácil para minimizar janelas e mostrar a área de trabalho: 10 etapas
Footswitch / Pedal Stealth Easy para Minimizar Janelas e Mostrar Área de Trabalho: Passo a maior parte do tempo programando um computador, e em um piscar de olhos termino com toda a tela cheia de janelas. Além disso, na maioria das vezes meus pés são muito preguiçosos, então peguei a ideia que vi em algum lugar para fazer um pé muito fácil e barato