Índice:

Como fazer um visualizador de áudio de frequência para uma fantasia (Projeto Arduino): 8 etapas (com imagens)
Como fazer um visualizador de áudio de frequência para uma fantasia (Projeto Arduino): 8 etapas (com imagens)

Vídeo: Como fazer um visualizador de áudio de frequência para uma fantasia (Projeto Arduino): 8 etapas (com imagens)

Vídeo: Como fazer um visualizador de áudio de frequência para uma fantasia (Projeto Arduino): 8 etapas (com imagens)
Vídeo: Analisador de Spectro COMPLETASSO para seus Projetos de audio! ( Link Atualizado 2023) 2024, Novembro
Anonim
Image
Image
Materiais e Preços
Materiais e Preços

Neste Instuctable, fornecerei dicas, planos e códigos para fazer um visualizador de áudio empolgante embutido em um traje de espuma de fibra de vidro. Ao longo do caminho, compartilharei etapas úteis e códigos extras que alguns que desejam implementar bibliotecas FFT arduino em seus projetos podem considerar valiosos.

Etapa 1: Materiais e preços

Antes de fazer o traje de espuma, primeiro fiz um arranjo para aprender como fazer a biblioteca FFT funcionar. Os materiais necessários são:

  1. 2x 30 tiras de neopixel WS2812B ……………………………………………………………. $ 3,22 uma tira
  2. Arduino uno (chinês usado) ………………………………………………………………… Já possuído
  3. Conecte os fios ……………………………………………………………………………………. Já possuído
  4. Fonte de alimentação externa …………………………………………………………………………. Já possuído
  5. Superfície de montagem (cartão usado) ……………………………………………………… Já possuído
  6. Módulo amplificador de áudio LM386 …………………………………………………………….. $ 8,98 para 5 unidades
  7. Macho de áudio estéreo de 3,5 mm para conector fêmea de terminal de 3 parafusos AV ………. $ 6,50 para 5 unidades
  8. Tomada estéreo de 3,5 mm fêmea para fêmea ………………………………………………….. $ 5,99 para 6 unidades
  9. Breadboard ………………………………………………………………………………………… Já possuído

Para eventualmente adotar a configuração de um traje com microfone, é necessário o seguinte:

  1. 19 tira de neopixel ………………………………………………………………………… Corte de 5m de 300 LEDs por $ 26,67
  2. 5 tira de neopixel ……………………………………………………………………………….. Corte do mesmo rolo
  3. Arduino nano (chinês usado) ………………………………………………………. $ 3,00 (5 por $ 15)
  4. Conecte os fios ……………………………………………………………………………. Já possuído
  5. Bateria de íons de lítio recarregável de 6000mAh Talentcell ……………………………. $ 29,99
  6. Áudio estéreo de 3,5 mm macho para conector fêmea de terminal de 3 parafusos AV….. $ 6,50 para 5 unidades
  7. Tomada estéreo de 3,5 mm fêmea para fêmea ………………………………………….. $ 5,99 para 6 unidades
  8. Interruptores ……………………………………………………………………………………. Puxado de carro quebrado
  9. Uma fantasia …………………………………………………………………………………. $ 50 para itens variados

Etapa 2: Montagem e fiação

Montagem e fiação
Montagem e fiação
Montagem e fiação
Montagem e fiação
Montagem e fiação
Montagem e fiação

Comece com duas tiras de 30 tiras de LED WS2812 e corte-as em 5 tiras de LED ao longo das linhas de corte. Cole essas tiras em uma superfície plana. No meu exemplo, usei papelão. Em seguida, conecte os componentes conforme mostrado. Certifique-se de que é necessário tempo suficiente para garantir bons pontos de solda. Para ter certeza de que todos funcionam corretamente, use os exemplos da biblioteca Neopixel da Adafruit (o exemplo "Straintest" funciona muito bem).

Etapa 3: Código Arduino

Código Arduino
Código Arduino

Apenas duas bibliotecas são necessárias para este projeto.

Para a FFT, usei o ArduinoFFT do Open Music Lab https://wiki.openmusiclabs.com/wiki/ArduinoFFT. Certifique-se de seguir as instruções de instalação com precisão, caso contrário, não funcionará. Depois de instalá-lo corretamente, ainda receberia mensagens de erro sobre uma "biblioteca inválida", no entanto, tudo ainda funcionava para mim. Comente se você identificar o que perdi. Para os neopixels, usei a biblioteca NeoPixel da Adafruit (conforme mencionado anteriormente). Eu recomendo usar o Library Manager dentro do software arduino para instalar.

O arquivo SuitFFT é o código em execução no Suit com todas as entradas extras do meu controlador. LightShowFFT é para o conjunto de LEDs de 60 entradas auxiliares.

Ambos os códigos podem ser executados mais rapidamente reduzindo N. N em meus exemplos é 256 e descobri que é mais do que adequado para meus projetos. Eu descobri experimentalmente que todo o espectro de áudio funcionava bem além de 9 kHz, conforme testado na próxima etapa!

Etapa 4: O que o FFT está fazendo

Image
Image
O que a FFT está fazendo
O que a FFT está fazendo

Uma FFT ou Fast Fourier Transform pega um sinal e o transforma no domínio da frequência. O que cada uma das luzes mostra é um bin de frequência. Como o FFT é um cálculo matematicamente complexo, pode-se fazer o código rodar mais rápido limitando o número de amostras. No entanto, a resolução da frequência será prejudicada. Por falta de palavras, o FFT no Arduino é um ato de equilíbrio entre: taxa de amostragem, número de amostras, tempo de loop e muito mais. Eu incentivo outras pessoas a brincar com as configurações para descobrir o que funciona melhor para seus próprios projetos.

Agora é hora de fazer o terno.

Etapa 5: dicas para fantasias

Dicas para fantasias
Dicas para fantasias
Dicas para fantasias
Dicas para fantasias
Dicas para fantasias
Dicas para fantasias

Minha fantasia foi feita de espuma onde muitos outros Instrucatables Publicados cobriram melhor o assunto. A diferença com a minha foi que dei passos extras para bondo, fibra de vidro e pintura. As dicas para isso são as seguintes.

  • Faça um ótimo trabalho de preparação (gravação, mascaramento etc.), pois isso fará uma grande diferença no fuso horário mais tarde
  • Sempre misture bondo e fibra de vidro em pequenas quantidades
  • Use Bondo para preencher vazios
  • Use resina de fibra de vidro para vedar e fortalecer
  • Use um pano de fibra de vidro para endurecer melhor os pontos fracos
  • Tome seu tempo e seja paciente com seu trabalho
  • Para lixar

    • 40-100 grão para remoção de material
    • Grão 100-400 para preparação de primer
    • Grão 400-1000 para lixar primer
    • Grão 1000-3000 para lixar tinta

Para montar as tiras de neopixel, usei cola quente para fixá-las no lugar. Alguns desafios agora são torná-lo fornecido com bateria, sensor de microfone, operado por controlador e muito mais.

Etapa 6: fazer ou escolher um controlador, conectá-lo e codificá-lo

Fazendo ou escolhendo um controlador, conectando-o e codificando
Fazendo ou escolhendo um controlador, conectando-o e codificando
Fazendo ou escolhendo um controlador, conectando-o e codificando
Fazendo ou escolhendo um controlador, conectando-o e codificando
Fazendo ou escolhendo um controlador, conectando-o e codificando
Fazendo ou escolhendo um controlador, conectando-o e codificando
Fazendo ou escolhendo um controlador, conectando-o e codificando
Fazendo ou escolhendo um controlador, conectando-o e codificando

Qualquer interruptor ou interruptores podem ser usados. Para o meu projeto, descobri que os controles da janela de um Honda Prelude 96 funcionaram muito bem. Depois de remover os interruptores de sua caixa, usei um multímetro configurado no modo de continuidade para descobrir qual fio fazia o quê, uma vez que os interruptores foram pressionados (observe que às vezes os interruptores interrompem a continuidade). Decidi fazer a janela alternada travar, travar os controles de golpes acidentais, subir e descer a janela para controles de brilho e a última chave para "modos de luz".

Para que os interruptores funcionem corretamente, são necessários resistores pull down. Normalmente resistores de 50-100 kΩ funcionarão, mas alguns interruptores tiveram que usar um resistor muito menor (alguns em torno de 300 Ω) para alterar a tensão suficiente para o Arduino interromper adequadamente a entrada digital (aproximadamente menos de 0,3 * Vcc para baixo e maior de 0,6 * Vcc para alto). Qualquer pessoa que fizer isso precisa passar por switch por switch, de preferência com uma placa de pão primeiro para garantir que o controlador funcione corretamente.

Depois de descobrir a chave, soldei os componentes juntos usando o diagrama mostrado. Use uma placa de circuito PCB para melhor consertar os componentes. Consulte a imagem para uma visão detalhada. O arranjo de 19 LEDs desce pela lombada do meu traje e o outro na frente como um indicador do que está acontecendo.

Para fixar o controlador no traje, usei cola quente para colocá-lo. Então fiz cunhas de espuma menores e colei-as a quente também para apoiar o controlador.

Etapa 7: toques finais

Toques Finais
Toques Finais
Toques Finais
Toques Finais
Toques Finais
Toques Finais

Para terminar, faça fendas na espuma para passar o fio. Prenda os fios com cola quente. Para toques extras, também comprei alguns itens adicionais para "fechar o negócio". Eu imaginei … se você vai sair parecendo ridículo em um terno leve, vá além!

Etapa 8: É isso aí! (Mais dicas de solução de problemas)

É isso! (Mais dicas de solução de problemas)
É isso! (Mais dicas de solução de problemas)

Obrigado visitando meu instutável e divirta-se vocês DIY-ers!

Dicas de resolução de problemas com a experiência do projeto:

  • Se as luzes agirem de forma estranha (luz piscando, nem todas funcionando corretamente, cores incomuns)

    • Fonte de alimentação deficiente para as luzes

      • Múltiplas fontes de alimentação
      • Não amarre os neopixels juntos
      • Passe linhas de energia extras para tiras
    • Problema de código

      • Verifique se o número de luzes está correto
      • Verifique se o código está exibindo corretamente as luzes e os compartimentos de frequência
    • Fonte de alimentação fraca para Arduino

      Aumente a fonte de alimentação

    • Tensão do Arduino para neopixels desligada

      Use a mesma fonte de alimentação para alimentar ambos

  • Luzes acesas, mas sem FFT

    • Verifique o fio do amplificador e a potência, o aterramento e a entrada do amplificador
    • Aumentar / diminuir o ganho do amplificador
    • Pouca energia para as luzes

Recomendado: