Olá pessoal, neste projeto será um pouco barulhento pois, vamos fazer um alarme com sonorizador piezo conectado a um pino de saída digital, podendo ser criado um som de sirene. Iremos gerar uma onda senoidal para gerar os pulsos e criando o som. Os códigos serão todos comentados para melhor entendimento, podendo ser retirados após a compreensão de cada linha. Bom trabalho !!!
COMPONENTES NECESSÁRIOS
1 Arduino Uno R3
1 Protoboard
1 Sonorizador piezo (ou disco piezo)
Fios jumpers
CONECTANDO OS COMPONENTES
Primeiro, certifique-se de que seu Arduino esteja desligado, desconectando-o do cabo USB. Agora, pegue sua protoboard, o sonorizador piezo e os fios, e conecte tudo como mostra a figura.
Observação importante: Verifique a polaridade do sonorizador piezo.
Não importa se você utiliza fios de cores diferentes ou furos diferentes na protoboard, desde que os componentes e os fios estejam conectados na mesma ordem da figura. Tenha cuidado ao inserir os componentes na protoboard. Caso sua protoboard seja nova, a superfície dos furos ainda estará rígida. A não inserção cuidadosa dos componentes pode resultar em danos. Certifique-se de que todos os componentes estejam conectados corretamente. Quando você estiver seguro de que tudo foi conectado corretamente, ligue seu Arduino e conecte o cabo USB.
AGORA VAMOS AO CÓDIGO
// Projeto 3 – Alarme com sonorizador piezo
// Armazena o valor de seno que fazer o valor se elevar e diminuir
float sinVal;
// Pega o valor armazenado em sinVal e converte-o para frequência...
//solicitada
int toneVal;
void setup() {
pinMode(8, OUTPUT); // Declara o pino 8 como saída
}
void loop() {
// Converte graus para radianos, e depois obtém o valor do seno
for (int x=0; x<180; x++) {
// Gera uma frequência a partir do valor do seno
sinVal = (sin(x*(3.1416/180)));
// Pega 2000 e adiciona sinVal multiplicando por 1000, gerando um...
//bom intervalo de frequências para o tom crescente e decrescente da...
//onda senoidal
toneVal = 2000+(int(sinVal*1000));
// O comando ton( ) é definido como ton(pin, frequency), o pin...
//corresponde o pino digital de saída e frequency é a frequência do...
//tom em Hertz
tone(8, toneVal);
delay(2); // Espera dois milissegundos entre as alterações de frequência
}
}
Para certificar se o código está correto pressione o botão Verify/Compile. Se tudo estiver correto pressione o botão Upload para fazer o upload do código para seu Arduino. Pronto, no seu terceiro projeto você ouvirá o som sendo emitido pelo sonorizador piezo.
fonte: facacomarduino.info