fbpixel
Etiquetas: ,
5
(1)

É possível dotar o seu microcontrolador do sentido da audição ligando-o a um microfone. O microfone capta as vibrações no ar e transforma-as num sinal elétrico que pode ser analisado e processado com um algoritmo. Neste tutorial, veremos como detectar um nível sonoro utilizando o microcontrolador.

Material

  • Computador
  • Arduino UNO
  • Cabo USB A Macho/B Macho
  • Microfone

Princípio de funcionamento

O sensor utilizado neste tutorial é um microfone condensador elétrico. Ele é composto por duas superfícies, uma fixa e a outra móvel. As vibrações do ar geram o movimento da membrana móvel, causando a variação do potencial elétrico detectado pelo sensor, que então envia um sinal elétrico para o microcontrolador. Existem vários modelos de microfone com diferentes sensibilidades, para detectar sons mais ou menos fortes. O modelo mais adequado varia conforme o uso que se pretende fazer. Verifique a documentação do módulo.

Obs: Este tipo de módulo não permite gravar ou analisar sons complexos, mas principalmente níveis sonoros.

Esquema

O microfone requer pouca potência e pode ser alimentado diretamente no pino de 5V do Arduino. Ele devolve um valor analógico que é enviado para uma entrada analógica do microcontrolador. Dependendo do modelo, o módulo pode conter um potenciômetro para ajustar a sensibilidade do microfone.

  • AUD no pino A0
  • Vcc no pino 5V
  • GND no pino GND

Código

Para medir o nível sonoro, usamos a função AnalogRead(), como para a maioria dos sensores analógicos.

//Parameters
const int micPin  = A0;

//Variables
int micVal  = 0;

void setup() {
  //Init Serial USB
  Serial.begin(9600);
  Serial.println(F("Initialize System"));
  //Init Microphone
  pinMode(micPin, INPUT);
}

void loop() {
  readMicrophone();
}

void readMicrophone( ) { /* function readMicrophone */
  ////Test routine for Microphone
  micVal = analogRead(micPin);
  Serial.print(F("mic val ")); Serial.println(micVal);
  if (micVal > 600) {
    Serial.println("mic detected");
  }
}

Resultado

Depois de carregar o código no microcontrolador, podemos ver o valor analógico mudar conforme o ruído ambiente. Tente bater palmas, estalar os dedos ou falar para ver como o microfone se comporta. Isso ajudará a determinar o nível necessário para desencadear uma ação.

Aplicações

  • Ativar uma lâmpada batendo palmas
  • Criar um alarme ativado pelo ruído

Fontes

Retrouvez nos tutoriels et d’autres exemples dans notre générateur automatique de code
La Programmerie

How useful was this post?

Click on a star to rate it!

Average rating 5 / 5. Vote count: 1

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?