Componentes Eletronicos

Módulo Sensor de Som: Descrição e Aplicações

Eletrogate 13 de julho de 2020

Introdução

Já pensou em conseguir apagar ou acender as luzes da sua casa apenas batendo palmas? A tecnologia já é avançada o suficiente para isso ser possível, e este post abordará o principal componente necessário para que você consiga implementar esse pequeno projeto dentro da sua própria casa. Falaremos sobre o Sensor de Som, seu funcionamento e suas principais aplicações.


Descrição e Funcionamento

O Sensor de Som é um componente eletrônico capaz de identificar a presença e a
intensidade do som em um determinado ambiente através de um microfone, e, a
partir disso, variar seu estado analógico ou digital com a finalidade desejada.

A estrutura desse componente é bem simples. Temos:

  • Microfone: Utilizado para captar o som, identificando a vibração das ondas no
    meio;
  • Trimpot: Potenciômetro utilizado para ajustar a sensibilidade do microfone;
  • Led de Alimentação: Indica se o sensor está sendo alimentado, acendendo sua
    luz;
  • Led de Saída Digital: Indica se a saída digital está sendo acionada, acendendo
    sua luz;

A pinagem do sensor é a seguinte:

  • GND: Terra;
  • DO: Saída Digital, retorna HIGH ou LOW;
  • AO: Saída Analógica, retorna o valor da intensidade do som captado;
  • Vcc: Tensão de entrada entre 3.3-5Vv.

A imagem a seguir ilustra os principais elementos que compõem um sensor de som:

Detalhamento do Sensor de Som

Detalhamento do Sensor de Som

Um ponto interessante a ser destacado é o funcionamento do potenciômetro. O pino
digital do sensor apenas retorna HIGH se o microfone captar algum som emitido,
porém, e se o som ambiente já for o suficiente para acionar a captação? É aí que entra
o potenciômetro, onde é possível regular o volume do som captado através do
pequeno parafuso em seu topo, basta apenas girá-lo para aumentar ou diminuir a
intensidade do som que se deseja identificar.


Aplicações

Há diversas aplicações na utilização do Sensor de Som. Já foi dito anteriormente que
uma dessas funcionalidades seria na implementação de um sistema para ligar ou
desligar as luzes de uma lâmpada apenas batendo palmas. Projetos deste tipo já são
largamente realizados na nossa sociedade, porém existem várias outras funções para o
sensor que também são bastante interessantes. Uma delas é na segurança residencial,
na qual o sensor seria utilizado para ativar um alarme caso houvesse um distúrbio
sonoro na área de atuação do componente.

Neste post, abordaremos também uma terceira utilidade para esse sensor: A sua
utilização em bibliotecas para avisar os alunos se estão fazendo muito barulho ou não.
Geralmente, bibliotecas são ambientes onde o silêncio é imprescindível para o
conforto dos estudantes. Porém, devido a alguns descuidos, essa regra pode ser
quebrada, causando desconforto para muitos. Portanto, seria interessante se
tivéssemos um dispositivo que avisasse os alunos se estão passando um pouco do
limite de silêncio desejado. Acompanhe o post até o final e descubra como
desenvolver esse projeto de maneira fácil e rápida.


Exemplos de Projetos

A parte teórica dos Sensores de Som já foi explicada, portanto chegou a hora de
colocar a mão na massa. Desenvolveremos aqui dois projetos utilizando o sensor
abordado, o primeiro será bem simples, visando apenas à familiarização do leitor com
o componente, já o segundo será um pouco mais complexo, visando treinar nossos
conhecimentos sobre o que já aprendemos. Vamos lá!

Iniciante

Neste primeiro projeto, o objetivo é acender um led batendo palmas, e,
posteriormente, apaga-lo da mesma maneira. Esta será uma versão simplificada do
que foi citado no começo deste artigo, porém a lógica é a mesma.

Materiais necessários para o projeto Iniciante

Os materiais necessários são os seguintes:

cta_cart

Diagrama

A imagem a seguir apresenta a montagem do diagrama do projeto do sensor de som:

Diagrama do Projeto - Iniciante

Diagrama do Projeto – Iniciante

Basicamente, a perna positiva do led é ligada na porta 2 do Arduino, sua outra perna é
conectada no resistor de 220 Ω, que por sua vez é conectado ao GND. Já o sensor tem
seu GND corretamente conectado, seu pino positivo é conectado no 5V do Arduino e
sua saída é conectada na porta 3.
Note que apenas a saída digital do sensor foi utilizada, já que não foi necessária a
utilização dos valores analógicos na medição.

Código

O código utilizado está representado na figura abaixo:

#define led 2 // pino em que o led será conectado
#define sensor 3 // pino em que o sensor será conectado
int som = 0; // variável criada para identificar a presença do som
int aceso = 0;// variável criada para identificar se a luz do led está acesa

void setup() {
  pinMode(led, OUTPUT);
  pinMode(sensor, INPUT);
}

void loop() {
  som = digitalRead(sensor); // é feita a leitura do sensor de som
  if(som == HIGH){ // é detectada a presença de som
    delay(300);
    switch(aceso){ // switch necessário para definir se o led vai acender ou apagar
      case 0: // caso o led esteja apagado...
        digitalWrite(led, HIGH); // ...ele se acenderá
        aceso = 1; // atribuição para definir que o led está aceso
        break;
      case 1: // caso o led esteja aceso...
        digitalWrite(led, LOW); // ...ele se apagará
        aceso = 0; // atribuição para definir que o led esta apagado
        break;
    }
  }
}

Apesar de ser autoexplicativo, acredito ser vantajoso detalhá-lo mais uma vez.
Basicamente, quando o sensor detectar qualquer tipo de som acima do volume
estipulado através do potenciômetro (calibrado fisicamente pelo pequeno parafuso
em seu topo), o Arduino checará se o led já está aceso, se sim, ele será apagado e, se
não, ele será aceso.

Avançado

Neste projeto, como citado anteriormente, montaremos um sinalizador de volume
sonoro. A ideia é bastante parecida com o anterior, porém há duas diferenças cruciais:
não utilizaremos a saída digital do sensor de som, mas sim a saída analógica, e as luzes
se acenderão de acordo com o valor analógico dado pelo sensor e estipulado para cada
led.

O projeto é o seguinte: o sensor enviará a todo o momento para o Arduino a
intensidade medida do som no ambiente. Serão dispostos na Protoboard 9 leds, 4
verdes, 3 amarelos e 2 vermelhos. Cada led será programado para acender de acordo
com a intensidade do som emitida. Os leds verdes acenderão com um volume de som
baixo, indicando que o barulho sendo feito está dentro do limite aceitável. Já os leds
amarelos serão acesos se o barulho feito for um pouco maior, quase chegando no
limite, porém ainda aceitável. E os vermelhos se acenderão quando a intensidade do
som ultrapassar o limite estipulado, indicando que se deve diminuir o barulho.

Materiais necessários para o projeto Avançado

Os materiais necessários são os seguintes:

Diagrama

A imagem a seguir apresenta a montagem do diagrama do projeto do sensor de som:

Diagrama do Projeto - Avançado

Diagrama do Projeto – Avançado

Nesta montagem, cada perna positiva dos leds está conectada em sua devida porta, e
suas pernas negativas estão conectadas aos resistores de 220 Ω, que estão conectados
ao GND. A saída do sensor está conectada a porta A0, por ser analógica, já seu pino
positivo está conectado ao 5V e o GND está conectado corretamente.
Note que, desta vez, a saída digital do sensor que não foi utilizada.

Código

A imagem a seguir representa a declaração de variáveis deste projeto:

#define led1 2 // pinos em que os leds serão conectado
#define led2 3
#define led3 4
#define led4 5
#define led5 6
#define led6 7
#define led7 8
#define led8 9
#define led9 10

void setup() {
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(led4, OUTPUT);
  pinMode(led5, OUTPUT);
  pinMode(led6, OUTPUT);
  pinMode(led7, OUTPUT);
  pinMode(led8, OUTPUT);
  pinMode(led9, OUTPUT);
}

A seguinte imagem contém o código utilizado neste projeto:

void loop() {
  int sensor = analogRead(A0); // é atribuida a variável 'sensor' o valor da intensidade do som captado

  if(sensor > 70){ // acende o primeiro led se a intensidade do som passar de 70
    digitalWrite(led1, HIGH);
  }else{
    digitalWrite(led1, LOW);
  }

  if(sensor > 140){ // acende o segundo led se a intensidade do som passar de 140
    digitalWrite(led2, HIGH);
  }else{
    digitalWrite(led2, LOW);
  }

  if(sensor > 210){ // acende o terceito led se a intensidade do som passar de 210
    digitalWrite(led3, HIGH);
  }else{
    digitalWrite(led3, LOW);
  }

  if(sensor > 280){ // acende o quarto led se a intensidade do som passar de 280
    digitalWrite(led4, HIGH);
  }else{
    digitalWrite(led4, LOW);
  }

  if(sensor > 350){ // acende o quinto led se a intensidade do som passar de 350
    digitalWrite(led5, HIGH);
  }else{
    digitalWrite(led5, LOW);
  }

  if(sensor > 420){ // acende o sexto led se a intensidade do som passar de 420
    digitalWrite(led6, HIGH);
  }else{
    digitalWrite(led6, LOW);
  }

  if(sensor > 490){ // acende o sétimo led se a intensidade do som passar de 490
    digitalWrite(led7, HIGH);
  }else{
    digitalWrite(led7, LOW);
  }

  if(sensor > 560){ // acende o oitavo led se a intensidade do som passar de 560
    digitalWrite(led8, HIGH);
  }else{
    digitalWrite(led8, LOW);
  }

  if(sensor > 630){ // acende o nono led se a intensidade do som passar de 630
    digitalWrite(led9, HIGH);
  }else{
    digitalWrite(led9, LOW);
  }
}

O código em si simplesmente compara o valor da intensidade do som medido e acende
cada led de acordo com suas estipulações.
É importante salientar que os valores utilizados para acender cada led são meramente
simbólicos, já que a leitura analógica varia de sensor para sensor, dependendo muito
de sua calibragem. Portanto, aconselho que o leitor verifique em seu próprio sensor
quais são os valores adequados para se utilizar nesse projeto.


Considerações Finais

A partir do que foi abordado neste post, é possível concluir que a utilização do Sensor
de Som é de extrema importância em vários projetos com o Arduino. Aqui,
aprendemos sobre seu funcionamento e suas principais aplicações, demonstrando
também como é possível implementá-lo em nosso dia-a-dia, dentro de casa ou até em
ambientes de estudo.

Por fim, espero que essa pequena explicação tenha fomentado
sua curiosidade e que, a partir dela, você possa explorar todas as possibilidades deste
componente.

Se curtiu o post e gostaria de aprender mais sobre Arduino e suas aplicações, siga-nos no Instagram: @eletrogate.

Até mais!

Tenha a Metodologia Eletrogate na sua Escola! Conheça nosso Programa de Robótica Educacional.


Sobre o Autor


Ricardo Lousada
@ricardo_lousada

Graduando em Engenharia de Controle e Automação pela UFMG. Ocupo meu tempo aprendendo cada vez mais sobre eletrônica e programação, áreas que mais gosto. Meus hobbies são cinema e livros.


Eletrogate

13 de julho de 2020

A Eletrogate é uma loja virtual de componentes eletrônicos do Brasil e possui diversos produtos relacionados à Arduino, Automação, Robótica e Eletrônica em geral.

Conheça a Metodologia Eletrogate e Lecione um Curso de Robótica nas Escolas da sua Região!

Eletrogate Robô

Cadastre-se e fique por
dentro de novidades!