É muito comum ver em desenhos animados, filmes e novelas as pessoas ativarem lâmpadas, motores e outros objetos por meio de palmas, assovios ou até mesmo gritos. Até certo ponto parece ser algo difícil de funcionar na prática, mas não é o que este Módulo Sensor de Som em conjunto com um microcontrolador (Arduino, por exemplo) promete fazer. Vamos aos post de hoje: Sensor de Som Arduino em Projeto com Relé.
O sensor é capaz de captar ruídos e transformá-los em sinais, estes sinais podem ser receptados pelo Arduino (por exemplo) que em conjunto com outros acessórios podem acionar lâmpadas, motores ou os mais diversos equipamentos eletrônicos.
Na prática ele fica atento ao som provocado no ambiente e quando o recepta ele amplifica este sinal e transforma-o em sinais reconhecíveis pelo Arduino ou microcontroladores geral. É um dispositivo ideal para ser aplicado no ramo da automação residencial ou até mesmo em dispositivos para iluminação de festas, entre outros, incluindo projetos robóticos.
A seguir, apresentaremos o controle de um relé por meio de palmas, que poderá estar sendo aplicado para os mais diversos fins utilizando a plataforma Arduino.
Teste prático:
Produtos utilizados no teste:
- 1 x Modulo Sensor de som;
- 1 x Arduino;
- 1 x Relé;
- 1 x Protoboard;
- 1 x Jumpers.
Montagem Física do Projeto Sensor de Som Arduino em com Relé (Hardware):
A montagem é muito simples, basta seguir as orientações da imagem abaixo:
Funcionamento do Código (Biblioteca):
O código tem a função de fazer a leitura do Sensor de Som e quando detectado algum ruído alto e instantâneo ele ativará o relé, caso detectar um novo ruído ele o desligará.
Código para teste: Download AQUI.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
// Código exemplo sensor de som; // Sensor de palma. int microfone = 8; // pino 8 digital para o microfone int relay1 = 13; //pino do relay int contadorPalmasRelay = 0; //Contador de Palmas int palmasRequeridaLigaRelay1 = 2; // Contagem para acionar o relay int palmasRequeridaDesligaRelay1 =2; // Contagem para desativar o relay unsigned long tempoMaximoSom = 1000; //tempo maximo entre o pulso seguinte unsigned long tempoMinimooSom = 300; //tempo minimo entre o pulso seguinte unsigned long comprimentoSonoro = 100; //comprimento do som esperado unsigned long time; unsigned long startTime = 0; void setup() { //rotina ao iniciar o programa pinMode(microfone, INPUT); //inicia os pino do microfone como entrada pinMode(relay1, OUTPUT); //inicia os pino do relay como saida digitalWrite(relay1, HIGH); // desliga relay (o relay é invertido HIGH =desliga / LOW = liga) } void loop() { //rotina infinita //inicia a contagem de tempo time = millis(); //verifica o tempo entre o pulso inicial e o seguinte unsigned long tempoAposPalma = time - startTime; if (tempoAposPalma >= comprimentoSonoro && digitalRead(microfone) == LOW) { //verifica se o pulso recebido respeita o intervalo entre 1 pulso e outro if (tempoAposPalma < tempoMinimooSom || tempoAposPalma > tempoMaximoSom) { //senao for dentro do intervalo reseta a contagem e o tempo contadorPalmasRelay = 0; startTime = millis(); } else { //se for inicia a contagem de pulso e o tempo contadorPalmasRelay ++; startTime = millis(); } //verifica se a contagem de palma é igual ou superior ao numro esperado e se o rele esta desarmado if ((contadorPalmasRelay >= palmasRequeridaLigaRelay1 - 1) &&(digitalRead(relay1) == HIGH)) { //liga relay e zera contagem digitalWrite(relay1, LOW); contadorPalmasRelay = 0; } //verifica se a contagem de palma é igual ou superior ao numro esperado e se o rele esta armado if ((contadorPalmasRelay >= palmasRequeridaDesligaRelay1 - 1) &&(digitalRead(relay1) ==LOW)) { //desliga relay e zera contagem digitalWrite(relay1, HIGH); contadorPalmasRelay = 0; } } } |
Conclusão
O Sensor de Som Arduino em Projeto com Relé mostra-se uma aplicação muito eficiente nos mais diversos projetos de automação residencial e robóticos.
O sensor é um dispositivo realmente compacto e útil em diversas áreas, como na demonstração do vídeo podemos estar fazendo o controle da iluminação de sua residência, por exemplo, sendo de fácil aplicação, pois não são necessários componentes externos, para facilitar ainda mais, possui um trimpot para regular a intensidade da detecção.
Conheça toda Linha Arduino no Site da UsinaInfo.
Boa noite,
Preciso de uma ajuda!
Necessito desse sistema
Porém necessito que o rele receba um pulso temporário exemplo preciso que o relé arme 0,5 segundos e desligue e tenha uma pausa de 5 segundos para eu poder emitir outro som
Não tenho muita prática com Arduino poderia me ajudar?
victor88.srocha@gmail.com
Olá Victor!
Infelizmente não trabalhamos com o desenvolvimento de projetos, porém o único passo que terá que explorar é quanto ao delay de resposta e funcionamento, vale lembrar que o tempo é dado em milissegundos.
preciso criar um código para esse projeto porem preciso usar 5 módulos de som.
ele sera usado em uma maquina de lançamento de prato
o funcionamento deste projeto é o seguinte
o atleta emite um som (qualquer) e o projeto envia um sinal instantâneo para um rele lançar o prato
necessito que tenha um intervalo de 5 segundos entre os lançamentos
podem me ajudar por gentileza
Bom dia!
Infelizmente não realizamos o desenvolvimento de projetos.
Neste caso deve adicionar cada módulo de forma individual e definir os comandos para cada um deles da maneira que desejar.
Olá, como ficaria o código só para ligar o aparelho e ou lampada e não desligar, o desligamento seria feito pelo usuário quando ele quisesse. Grato!
Olá Valmir!
Para isto, basta eliminar a variável responsável por desligar a lâmpada e desenvolver um sistema de reset para o cliente poder desligar a mesma.
Serve para ligar um fita de led rgb no som do meu carro
Boa Tarde Osvaldo!
O projeto é possível, porém será necessário incrementar o mesmo tanto o Hardware do mesmo quanto o seu Software.
gostaria de setar adiquirindo oss componentes para estar montando este projeto, como faço para compar e uanto custa
Bom dia Marcio! A lista completa do que foi utilizado para o referente projeto você encontra no subtítulo “Produtos utilizados no teste” ao abri-los será direcionado ao respectivo produto para venda no site da Usinainfo.
Estou à procura de um aparelho que ascenda uma lâmpada normal (led 110v) somente no momento que detectar conversas ou risadas altas mas que apague assim que o som diminur ou seja só no momento que o “ruído” atingir os decibéis que eu qualificar no trimpot. Esse sistema me entederia?
Bom dia Claudio!
Este módulo deve atender suas necessidades junto com um microcontrolador e módulo relé, como demonstrado no vídeo.