collapse

* Posts Recentes

Arame de Estendal por almamater
[Hoje às 16:16]


O que é isto ? por SerraCabo
[12 de Abril de 2024, 14:20]


Amplificador - Rockboard HA 1 In-Ear por almamater
[11 de Abril de 2024, 20:46]


Emulador NES em ESP32 por dropes
[10 de Abril de 2024, 15:30]


Meu novo robô por josecarlos
[29 de Março de 2024, 18:30]


Bateria - Portátil por almamater
[25 de Março de 2024, 22:14]


Escolher Osciloscópio por jm_araujo
[06 de Fevereiro de 2024, 23:07]


TP4056 - Dúvida por dropes
[31 de Janeiro de 2024, 14:13]


Leitura de dados por Porta Serie por jm_araujo
[22 de Janeiro de 2024, 14:00]


Distancia Cabo por jm_araujo
[08 de Janeiro de 2024, 16:30]

Autor Tópico: Detectar Bass com Arduino  (Lida 12547 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: Detectar Bass com Arduino
« Responder #15 em: 21 de Agosto de 2012, 18:53 »
O esquema é um retificador de precisão.
Avr fanboy

Offline Pedrock

  • Mini Robot
  • *
  • Mensagens: 279
Re: Detectar Bass com Arduino
« Responder #16 em: 21 de Agosto de 2012, 19:31 »
Pelo que já percebi, uso um low pass filter (resistência e condensador) e fico com um sinal audio com os graves e pouco dos médios e agudos.
A seguir é preciso amplificar o sinal (com o LM358).
E como faço para tirar os negativos?

Offline dropes

  • Mini Robot
  • *
  • Mensagens: 2.193
Re: Detectar Bass com Arduino
« Responder #17 em: 21 de Agosto de 2012, 20:37 »
E como faço para tirar os negativos?

Depois de passar pelo amplificador ficas sem negativos se a saída deste for ligada directamente ao pino ADC do arduino (coloca uma resistência 10K em série).

Offline Pedrock

  • Mini Robot
  • *
  • Mensagens: 279
Re: Detectar Bass com Arduino
« Responder #18 em: 21 de Agosto de 2012, 20:56 »
E como faço para tirar os negativos?

Depois de passar pelo amplificador ficas sem negativos se a saída deste for ligada directamente ao pino ADC do arduino (coloca uma resistência 10K em série).
Mas não é suposto um amplificador não cortar os negativos? Apenas amplificar o sinal... ???


EDIT: Recebi um email a dizer que aceitaram o meu pedido de sample de 3 LM386.
« Última modificação: 21 de Agosto de 2012, 21:03 por Pedrock »

Offline metRo_

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 3.753
Re: Detectar Bass com Arduino
« Responder #19 em: 21 de Agosto de 2012, 21:09 »
E como faço para tirar os negativos?

Depois de passar pelo amplificador ficas sem negativos se a saída deste for ligada directamente ao pino ADC do arduino (coloca uma resistência 10K em série).
Mas não é suposto um amplificador não cortar os negativos? Apenas amplificar o sinal... ???


EDIT: Recebi um email a dizer que aceitaram o meu pedido de sample de 3 LM386.

Depende dos amplificadores, se vires a datasheet http://www.ti.com/lit/ds/symlink/lm158-n.pdf, mais precisamente esta parte:
Citar
Wide power supply range:
— Single supply: 3V to 32V
— or dual supplies: ±1.5V to ±16V
Podes ver que ele suporta single supply, logo o sinal amplificado vai ser entre 0v e o teu Vdd, ou +- estes valores.

Offline Pedrock

  • Mini Robot
  • *
  • Mensagens: 279
Re: Detectar Bass com Arduino
« Responder #20 em: 21 de Agosto de 2012, 21:36 »
Como se faz para fornecer dual supply?
E o LM386? Não tem essa informação.

O circuito que vi aqui:
http://arduino.cc/forum/index.php?topic=50021.0

Tem duas partes, bass e tremble. A de cima, que vai para o A0 é a do bass.
Não dá para fazer uma coisa deste género? É muito mais simples. E pelo vídeo que tem lá parece funcionar bem.

Offline dropes

  • Mini Robot
  • *
  • Mensagens: 2.193
Re: Detectar Bass com Arduino
« Responder #21 em: 21 de Agosto de 2012, 23:19 »
Bem que podias ter copiado da fonte do projecto.
O LM386 funciona com alimentação simples, há amplificadores assim, este é mais adequado para ser ligado directamente a um altifalante ou fones, mas funciona para outras aplicações.

Na saída de uma fonte de áudio tem um sinal analógico que varia entre +1V e -1V em relação ao GND por exemplo.
Este sinal entra num amp-op através de um condensador para ser eliminada a componente contínua.
Assim na entrada deste amp-op vai variar entre 2.5V+1V a 2.5V-1V, em qualquer dos casos a tensão nunca chega a ser negativa.
Na saída deste amp-op existirá um valor que pode variar entre 0V a 5V, e é esse valor que vai ser lido.

Obs: o esquema tem uma falha, ambas as entradas negativas do LM386 têm de ser ligadas ao GND.
A alimentação é feita por 3.3V para não saturar a entrada do ADC
« Última modificação: 21 de Agosto de 2012, 23:21 por dropes »

Offline Pedrock

  • Mini Robot
  • *
  • Mensagens: 279
Re: Detectar Bass com Arduino
« Responder #22 em: 21 de Agosto de 2012, 23:41 »
Bem que podias ter copiado da fonte do projecto.
Está mesmo assim da imagem.

Obs: o esquema tem uma falha, ambas as entradas negativas do LM386 têm de ser ligadas ao GND.
Também achei estranho não ter nada ali ligado, mas na foto da breadboard que tem no link deve estar.

Então este circuito serve?

Offline dropes

  • Mini Robot
  • *
  • Mensagens: 2.193
Re: Detectar Bass com Arduino
« Responder #23 em: 22 de Agosto de 2012, 00:05 »
Deve funcionar, embora o filtro esteja mal aplicado sendo este passivo não havendo frequência de corte, o que se passa é que quanto maior a frequência maior a atenuação.

Pela ficha técnica do LM386, a tensão mínima de alimentação é de 4 ou 5V dependendo do modelo, por isso é preferível alimentá-lo a 5V e colocar uma resistência de 10K entre a saída deste amp e o ADC do arduino.


Offline Pedrock

  • Mini Robot
  • *
  • Mensagens: 279
Re: Detectar Bass com Arduino
« Responder #24 em: 22 de Agosto de 2012, 00:33 »
Deve funcionar, embora o filtro esteja mal aplicado sendo este passivo não havendo frequência de corte, o que se passa é que quanto maior a frequência maior a atenuação.

Pela ficha técnica do LM386, a tensão mínima de alimentação é de 4 ou 5V dependendo do modelo, por isso é preferível alimentá-lo a 5V e colocar uma resistência de 10K entre a saída deste amp e o ADC do arduino.
E dá para substituir pelo LM358? Se der já tenho os componentes todos.
Desculpa as perguntas todas, mas como já deu para perceber, não percebo muito disto. Prefiro a parte da programação. ::)

Offline dropes

  • Mini Robot
  • *
  • Mensagens: 2.193
Re: Detectar Bass com Arduino
« Responder #25 em: 22 de Agosto de 2012, 03:14 »
O LM358 não tem nada de compatível com o LM386, sempre podes experimentar em breadboard para ver os resultados com o LM386.
Considero este site o melhor para procurar pdfs http://www.datasheetcatalog.net/
Tens à tua disposição as fichas técnicas dos ICs e montes de exemplos, não é preciso entender muito de electrónica mas saber procurar quando se tem interesse em realizar algo, assim que vais lendo também vais entendendo o seu funcionamento, quando se gosta não é chato.
Também gosto de programar mas sem electrónica não vou muito longe...

Offline Pedrock

  • Mini Robot
  • *
  • Mensagens: 279
Re: Detectar Bass com Arduino
« Responder #26 em: 22 de Agosto de 2012, 13:12 »
Vou ver o que consigo. Depois digo alguma coisa.

Offline Pedrock

  • Mini Robot
  • *
  • Mensagens: 279
Re: Detectar Bass com Arduino
« Responder #27 em: 24 de Agosto de 2012, 14:09 »
Fiz a ligação como neste esquema:

Só que com o LM358, e pus um LED entre o output e o ground e durante alguns minutos aquilo funcionou, o Led piscava quando havia bass, só que depois deixou de funcionar, acho que o LM358 queimou.  :-\
E usei 9v em vez de 3.3v.

Offline dropes

  • Mini Robot
  • *
  • Mensagens: 2.193
Re: Detectar Bass com Arduino
« Responder #28 em: 24 de Agosto de 2012, 14:44 »
Ligaste um LED directamente à saída do amplificador?
É suposto a saída deste ser analógica, com um GND virtual é possível utilizar o LM358, de outra forma não passa de um comparador.

Tem de levar uma resistência limitadora de corrente para o LED, o IC não suporta mais de 40mA com alimentação simétrica ou 20mA com alimentação simples.
« Última modificação: 24 de Agosto de 2012, 14:48 por dropes »

Offline Pedrock

  • Mini Robot
  • *
  • Mensagens: 279
Re: Detectar Bass com Arduino
« Responder #29 em: 24 de Agosto de 2012, 14:48 »
Ligaste um LED directamente à saída do amplificador?
É suposto a saída deste ser analógica, com um GND virtual é possível utilizar o LM358, de outra forma não passa de um comparador.
Era para ligar ao Arduino mas pus o LED para testar primeiro. Foi por isso que avariou?