fbpx

Utilizando o Buzzer Ativo no Arduino


O buzzer é um componente eletrônico que converte um sinal elétrico em onda sonora. Este dispositivo é utilizado para sinalização sonora, sendo aplicado em computadores, despertadores, carros, entre outros. O buzzer é composto por duas camadas de metal, uma terceira camada de cristal piezelétrico, envolvidas em um invólucro de plástico, e dois terminais para ligação elétrica.

Figura 1: Buzzer.


Existem dois tipos de buzzer: o buzzer ativo e o buzzer passivo. O buzzer ativo possui um circuito mais complexo que o passivo, no entanto seu uso é mais simples necessitando apenas de ser energizado para emitir um sinal sonoro. Este componente é apropriado para alarmes, avisos e sinais de alerta. No tutorial de hoje vamos aprender como utilizar o buzzer ativo no Arduino.

O propósito deste projeto será utilizar o buzzer ativo para emitir som cinco vezes. Apesar de bastante simples, este projeto nos ensinará sobre o acionamento deste componente em uma determinada frequência e intervalo de tempo. Para isso, aprenderemos como utilizar as funções tone() e noTone().

Além disso, esse projeto também visa colocar em prática o uso da estrutura de repetição for, utilizada para que certo trecho do código seja executado um determinado número de vezes, cinco neste caso.


MATERIAIS NECESSÁRIOS

1 x Placa UNO SMD R3 Atmega328 compatível com Arduino UNO;
1 x Cabo USB;
1 x Protoboard;
1 x Buzzer ativo;
Cabos jumpers macho-macho.


ESQUEMÁTICO DE LIGAÇÃO DOS COMPONENTES


Antes de iniciar a montagem elétrica do circuito, certifique-se que a sua placa Arduino esteja desligada. Monte o circuito da utilizando a protoboard, o buzzer ativo e os fios.


Ao montar seu circuito na protoboard preste atenção nos seguintes pontos:

• Assim como os LEDS, o buzzer possui polaridade. No corpo do componente você encontrará um símbolo “+” que indica a polaridade positiva;
• O terminal positivo do buzzer deve ser conectado à porta digital 8 da placa UNO e o outro terminal deve ser ligado ao GND.


ELABORANDO O CÓDIGO

Após a montagem do circuito, vamos a programação do Sketch. Conforme mencionado anteriormente, o objetivo deste projeto é fazer com o que o buzzer toque cinco vezes. Vamos entender a lógica de programação deste projeto com os seguintes passos:

1- Declarar a variável

A variável buzzer será utilizada para representar o pino digital 8, onde o terminar positivo do buzzer está conectado;

2- Definir o pino de saída

A variável buzzer (pino 8) deve ser definida como saída, ou seja, OUTPUT;

3- Realizar repetição

Inicializaremos o loop incluindo a estrutura de repetição for através da instrução for (i; i < 5; i++). Após o for, o primeiro parâmetro a ser incluído nos parênteses é a variável que será utilizada como contados. O outro parâmetro é uma condição, que deve ser satisfeita para que as instruções do laço for sejam executadas. Neste projeto, as instruções do for serão realizadas enquanto i for menor que 5. Por fim, deve ser incluído o incremento.

4- Acionar o buzzer

Utilizaremos a função tone() para gerar uma onda quadrada na frequência de 1500 Hz no pino digital 8 da placa UNO e damos um intervalo de 500 milissegundos;
Sintaxe da função tone: tone(pino, frequência);

Para interromper a geração da onda quadrada iniciada pela função tone() utilizaremos a função noTone(), desligando o buzzer e criamos um intervalo de 500 milissegundos;
Sintaxe da função noTone: noTone(pino);

Desta forma, o Sketch deste projeto ficará da seguinte maneira:

int buzzer = 8;//Atribui o valor 8 a variável buzzer, que representa o pino digital 8, onde o buzzer está conectado
int i = 0;//Variável para contar o número de vezes que o buzzer tocou

void setup() {
  pinMode(buzzer, OUTPUT);//Definindo o pino buzzer como de saída.
}

void loop() {
  for (i; i < 5; i++) {//Para i, enquanto i for menor que 5, realize o código e incremente 1 em i
    tone(buzzer, 1500);//Ligando o buzzer com uma frequência de 1500 Hz.
    delay(500);//Intervalo de 500 milissegundos
    noTone(buzzer);//Desligando o buzzer.
    delay(500);//Intervalo de 500 milissegundos
  }
}

Espero que tenham gostado deste tutorial. Em caso de dúvidas deixe seu comentário abaixo.

Att.,

Carol Correia Viana

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.