|
Módulo Buzzer Ativo KY-012
Descrição
O módulo é um componente de geração de ruídos sonoros a partir da excitação elétrica. Ele possui um pequeno alto-falante destinado a emitir sinais sonoros a partir do fornecimento de corrente contínua. É muito utilizado em alarmes, impressoras, computadores, projetos robóticos e domóticos (automação residencial). A sua principal finalidade é a emissão de sinais sonoros como forma de alerta para que o operador fique informado que algo esta ocorrendo.
Caracteristicas
- Tensão de trabalho: 3,5 - 5V
- Corrente: < 42mA
- Saída de Som: > 85DB
- Temperatura de Operação: -20ºC ~ +45ºC
- Temperatura de armazenamento: -20ºC ~ +60ºC
Projeto(s) relacionado(s)
Projeto bengala para cego
Este projeto utiliza Módulo Sensor Ultrassônico HC-SR04, placa Arduino Uno R3 e Módulo Buzzer Ativo KY-012. Através do Sensor Ultrassônico é obtida a distancia que separa o sujeito dos obstáculos a frente. Conforme a aproximação é emitido um sinal sonoro mais frequente e intenso.
/*
Projeto: Bengala para cegos
Autor: André Silveira
Data: 02/04/2019
*/
#include "Ultrasonic.h"
int PINO_TRIG = 5;
int PINO_ECHO = 6;
int PINO_BUZZER = 10;
int distancia;
Ultrasonic ultrasonic(PINO_TRIG, PINO_ECHO);
void setup() {
Serial.begin(9600);
pinMode(PINO_BUZZER,OUTPUT); // Pino do buzzer
}
void loop() {
distancia = ultrasonic.read(); // Informe INC para obter distancia em polegadas
Serial.print("Distância em CM: ");
Serial.println(distancia);
// Distância menor que 1 metro
if (distancia <= 100) {
tone(PINO_BUZZER,262,300);
delay(1000); // Pausa pelo tempo de 1 segundo (milissegundos)
}
// Distância maior que 1 metro e menor que 2 metros
if (distancia > 100 and distancia <= 200 ) {
tone(PINO_BUZZER,262,300);
delay(2000); // Pausa pelo tempo de 2 segundos (milissegundos)
}
// Distância maior que 2 metros
if (distancia > 200 ) {
tone(PINO_BUZZER,262,300);
delay(3000); // Pausa pelo tempo de 3 segundos (milissegundos)
}
Serial.println(distancia);
} |
Na versão abaixo, a biblioteca "Ultrasonic.h" não é utilizada. O circuito utiliza Módulo Sensor Ultrassônico HC-SR04, placa Arduino Uno R3, Módulo Buzzer Ativo KY-012 e LED RGB. Através do Sensor Ultrassônico é obtida a distancia que separa o sujeito dos obstáculos a frente. Conforme a aproximação ao sensor é emitido um sinal sonoro mais frequente e intenso. Também é alterada a cor do LED.
/*
Projeto: Bengala para cegos
Autor: André Silveira
Data: 02/04/2019
*/
int PINO_TRIG = 6;
int PINO_ECHO = 5;
int PINO_BUZZER = 3;
int LED_RED = 11;
int LED_BLUE = 10;
int LED_GREEN = 9;
float distancia;
void setup() {
Serial.begin(9600);
pinMode(PINO_TRIG , OUTPUT);
pinMode(PINO_ECHO , INPUT);
pinMode(PINO_BUZZER,OUTPUT);
pinMode(LED_RED, OUTPUT);
pinMode(LED_BLUE, OUTPUT);
pinMode(LED_GREEN, OUTPUT);
ligaled(0, 0, 0);
}
void loop() {
distancia = Ultrasonic(PINO_TRIG, PINO_ECHO);
Serial.print("Distancia em cm: ");
Serial.println (distancia);
// -- Distância menor que 1 metro
if (distancia <= 100) {
tone(PINO_BUZZER,330,300);
ligaled(255, 0, 0);
delay(10);
} else {
// -- Distância maior que 1 metro e menor que 2 metros
if (distancia <= 200 ) {
tone(PINO_BUZZER,330,300);
ligaled(255, 255, 0);
delay(250);
} else {
// -- Distância maior que 2 metros e menor que 3 metros
if (distancia <= 300 ) {
tone(PINO_BUZZER,330,300);
ligaled(0, 0, 255);
delay(500);
} else{
ligaled(0, 0, 0);
}
}
}
}
float Ultrasonic (int PINO_TRIG, int PINO_ECHO) {
int distancia=0;
while(distancia == 0) {
digitalWrite(PINO_TRIG, 0);
delayMicroseconds (5);
digitalWrite(PINO_TRIG, 1);
delayMicroseconds(10);
float tempo = pulseIn (PINO_ECHO, 1);
distancia = (tempo/2/29.15);
}
return distancia;
}
int ligaled(int r, int g, int b) {
analogWrite(LED_RED, r);
analogWrite(LED_GREEN, g);
analogWrite(LED_BLUE, b);
} |
Projeto Do Ré Mi
O projeto toca a cantiga de roda Do Ré Mi, também conhecida como ciranda. Para tanto utiliza o módulo Buzzer Ativo KY-012 e uma placa Arduino Uno R3 ou Nano.
// Projeto: Do Ré Mi
// Autor: André Silveira
// Data: 15/02/2018
int buzzer = 10; // conectar um buzzer ao pino 10
void setup() {
pinMode(buzzer,OUTPUT); //Pino do buzzer
}
void loop() {
// Função tone: tone(pinoMode, frequencia, duração) // pinMode: informar o pino conectado ao arduino
// frequencia do tom: setar em hertz
// duração: setar em milisegundos
delay(2000);
tone(buzzer,262,200); //DO
delay(200);
tone(buzzer,294,300); //RE
delay(200);
tone(buzzer,330,300); //MI
delay(200);
tone(buzzer,349,300); //FA
delay(300);
tone(buzzer,349,300); //FA
delay(300);
tone(buzzer,349,300); //FA
delay(300);
tone(buzzer,262,100); //DO
delay(200);
tone(buzzer,294,300); //RE
delay(200);
tone(buzzer,262,100); //DO
delay(200);
tone(buzzer,294,300); //RE
delay(300);
tone(buzzer,294,300); //RE
delay(300);
tone(buzzer,294,300); //RE
delay(300);
tone(buzzer,262,200); //DO
delay(200);
tone(buzzer,392,200); //SOL
delay(200);
tone(buzzer,349,200); //FA
delay(200);
tone(buzzer,330,300); //MI
delay(300);
tone(buzzer,330,300); //MI
delay(300);
tone(buzzer,330,300); //MI
delay(300);
tone(buzzer,262,200); //DO
delay(200);
tone(buzzer,294,300); //RE
delay(200);
tone(buzzer,330,300); //MI
delay(200);
tone(buzzer,349,300); //FA
delay(300);
tone(buzzer,349,300); //FA
delay(300);
} |
Projeto Teclado de Piano
O projeto utiliza os módulos Buzzer Ativo KY-012, Touch Sensor - MPR121 12-Key e placa Arduino Uno R3 ou Mega. Para programação da placa é necessário instalar a biblioteca Adafruit_MPR121.
Conectando MPR121 12-Key ao Arduino UNO ou MEGA
- Conecte VCC à fonte de alimentação, 3.3V.
- Conecte GND ao terra
- Conecte SCL ao pino SCL de dados I2C (UNO pino A5, Mega pino digital 21)
- Conecte SDA ao pino SDA de dados I2C (UNO pino A4, Mega pino digital 20)
// Projeto: Sensor - teclado musical
// Autor: André Silveira
// Data: 07/05/2018
#include <Wire.h>
#include "Adafruit_MPR121.h"
Adafruit_MPR121 cap = Adafruit_MPR121();
int buzzer = 10; // conectar um buzzer ao pino 10
int tecla = 0;
int nota = 0;
void setup() {
pinMode(buzzer,OUTPUT); //Pino do buzzer
Serial.begin(9600);
// I2C 7-bit address 0x5A é padrão (pode ser setado para 0x5B, 0x5C or 0x5D)
if (!cap.begin(0x5A)) {
Serial.println("Sensor não Encontrado");
while (1);
}
Serial.println("Sensor encontrado");
}
void loop() {
tecla = cap.touched();
for (uint8_t i=0; i<12; i++) {
if (tecla & _BV(i)) {
nota = 262+(i*32); // --- DEFINE A NOTA MUSICAL Serial.print(i); Serial.print(" - Nota tocada: "); Serial.println(nota); tone(buzzer,nota,200);
}
}
} |
|