Arduino - Buzzer Piezo
Neste tutorial, vamos aprender a usar o buzzer com o Arduino. Em detalhes, vamos aprender:
- Buzzer ativo vs buzzer passivo
- Como o buzzer funciona
- Como conectar o buzzer piezo ao Arduino
- Como programar o Arduino para controlar o buzzer piezo e gerar som e melodia
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables STEM V3 Starter Kit (Arduino included) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre o Buzzer
Os buzzers são usados para gerar som, bipes ou até a melodia de uma música. Eles existem em vários tipos, classificados por características distintas. Vamos conhecer essas categorias com base nas seguintes características:
- Método de Controle:
- Buzzers Ativos
- Buzzers Passivos
- Mecanismo de Geração de Som:
- Buzzers Piezo
- Buzzers Comuns
- Tensão de Operação:
- Baixa Tensão (3-5V)
- Alta Tensão (12V)
- Buzzer Ativo:
- Produz som quando uma tensão é aplicada.
- Precisa de um sinal elétrico contínuo para emitir som.
- Mais fácil de usar, exigindo apenas uma fonte de tensão.
- Normalmente usado em aplicações básicas de alerta.
- Buzzer Passivo:
- Requer um sinal oscilante externo para criar som.
- Pode produzir tons diferentes mudando a frequência de entrada.
- Requer um circuito mais complexo para funcionar.
- Comumente usado em aplicações musicais e tarefas de geração de tons.
- Buzzer Piezo:
- Usa cristais piezoelétricos.
- Produz sons agudos e nítidos.
- Versátil, com vários tons e frequências.
- Eficiente e comumente usado em alarmes e dispositivos musicais.
- Buzzer Comum:
- Usa bobinas eletromagnéticas.
- Produz sons básicos e zumbidos.
- Variação de tom limitada.
- Usado em aplicações mais simples, como campainhas e alarmes básicos.
- Quando você conecta esse buzzer diretamente ao pino do Arduino, ele cria um som normal ⇒ adequado para indicação sonora, como o som de um teclado
- Quando você conecta esse buzzer a uma alta tensão através de um relé, ele cria um som alto ⇒ adequado para som de alerta.
- Pino negativo (-): conecte este pino ao GND (0V).
- Pino positivo (+): este pino recebe o sinal de controle do Arduino, diretamente ou através de um relé.
- Pino GND: conecte este pino ao GND (0V).
- Pino VCC: conecte este pino a uma fonte de alimentação (5V ou 3,3V).
- Pino I/O: este pino recebe o sinal de controle PWM de um pino GPIO do ESP32.
- Se você conectar o VCC ao pino positivo, o buzzer piezo gera um som constante
- Se você gerar uma onda quadrada com uma frequência específica (e ciclo de trabalho de 50%) no pino positivo, o buzzer piezo gera tons. Cada frequência produz um tom diferente. Mudando a frequência do sinal no pino positivo, podemos criar a melodia de uma música.
- Diferente do buzzer ativo, se você apenas conectar o VCC ao pino positivo, o buzzer passivo NÃO gera um som constante
- Assim como no buzzer ativo, se você gerar uma onda quadrada com uma frequência específica (e ciclo de trabalho de 50%) no pino positivo, o buzzer piezo gera tons. Cada frequência produz um tom diferente. Mudando a frequência do sinal no pino positivo, podemos criar a melodia de uma música
Vamos ver mais detalhes.
Buzzer Ativo vs Buzzer Passivo
Buzzer Piezo vs Buzzer Comum
No mercado, existe um buzzer ativo de 3V-24V, que você pode usar como buzzer ativo de 3-5V ou como buzzer de alta tensão (12V...),
Neste tutorial, vamos aprender sobre o buzzer piezo ativo e passivo de 3-5V. Para o buzzer de 12V, consulte o Arduino - tutorial de buzzer de 12V
Pinagem

Pinagem do Buzzer
Um buzzer padrão normalmente tem dois pinos:
Pinagem do Módulo Buzzer Piezo
Um módulo Buzzer Piezo geralmente tem três pinos:
Como um Buzzer Ativo Funciona


Como um Buzzer Passivo Funciona
Diagrama de Ligação
- A ligação entre o Arduino e o buzzer piezo

This image is created using Fritzing. Click to enlarge image
- A ligação entre o Arduino e o módulo buzzer piezo

This image is created using Fritzing. Click to enlarge image
Como Programar o Buzzer
Graças à biblioteca do Arduino, tocar uma melodia é fácil. NÃO precisamos saber como gerar a onda quadrada. Só precisamos usar duas funções da biblioteca: tone() e noTone().
Código Arduino
Passos Rápidos
- Conecte o Arduino ao PC via cabo USB
- Abra o Arduino IDE, selecione a placa e a porta corretas
- Copie o código acima e abra-o no Arduino IDE
- Crie o arquivo pitches.h no Arduino IDE da seguinte forma:
- Clique no botão logo abaixo do ícone do serial monitor e escolha New Tab, ou use as teclas Ctrl+Shift+N.
- Dê ao arquivo o nome pitches.h e clique no botão OK
- Copie o código abaixo e cole-o no arquivo pitches.h criado.
- Clique no botão Upload no Arduino IDE para carregar o código no Arduino
- Aproveite a melodia



Modificando o Código Arduino
Agora, vamos modificar o código para tocar a música "Jingle Bells".
Só precisamos mudar o valor de dois arrays: int melody[] e int noteDurations[].
Vídeo
O vídeo de demonstração abaixo usa o código a seguir. Observe que o vídeo mostra o Arduino Uno R4, mas funciona da mesma forma no Arduino Uno R3:
Desafie-se
- Use o Buzzer Piezo para tocar a música que você ama
- Faça um alarme tocar automaticamente quando alguém se aproximar dos seus objetos de valor. Dica: Consulte Arduino - Sensor de Movimento.