Isi kandungan:

Notificador De Ruído: 7 Langkah
Notificador De Ruído: 7 Langkah

Video: Notificador De Ruído: 7 Langkah

Video: Notificador De Ruído: 7 Langkah
Video: Como tirar o zumbido do violão 2024, November
Anonim
Notificador De Ruído
Notificador De Ruído

O notificador de ruído como o próprio nome diz izin alertar o usuário sobre algum ruído Detectado, e com este alerta o usuário pode investigar o que está ocorrendo. O notificador de ruído possui um sensor de áudio que detecta qualquer ruído relevan nas proximidades, e quando detecta este ruído é disparado uma notificação para todos os telefon pintar dan outros dispositivos móveis que possuem o aplicativo do notificador de barulho instalador de barulho.

Elektronik dan perkhidmatan yang terbaik, pemantauan teladan, sono do bebê, caso ele acorde ecece a chorar o notificador de ruído irá alertar os celulares dos pais. Pode ser usado também, para notificar barulhos dentro dos automóveis e ou imóveis, podendo capturar e notificar um barulho em um horário incomum nestes lugares, com isto o usuário pode investigar o que esta ocorrendo evitando até mesmo um roubo.

Langkah 1: Estrutura Geral

Estrutura Geral
Estrutura Geral

A imagem acima ilustra o funcionamento geral do projeto. Inicia-se através da detecção de qualquer ruído pelo sensor de som que é ligado a placa ESP8266 NodeMCU. Esta placa deve possuir acesso internet através de seu módulo WiFi. Ao detar o ruído ela envia uma Requição HTTP API, que deve estar hospedada na internet (tanpa meu caso memanfaatkan o serviço nas nuvens da Amazon Web Services). API dari sua vez esta configurada com um dos serviços do Firebase, o Firebase Cloud Messaging (FCM). O FCM possibilita disparar notificações para qualquer dispositivo que tenha uma aplicação configurada com o projeto gerado na base do Firebase. Desta forma, A API aciona o FCM passando o identificador da notificação e o horário que a Requisição a API juga realizada. O FCM dispara uma mensagem de notificação para os dispositivos que estão com o aplicativo do projeto.

Langkah 2: Arduino - Diagrama De Pinagem Dos Componentes

Arduino - Diagrama De Pinagem Dos Componentes
Arduino - Diagrama De Pinagem Dos Componentes

Com relação a parte física do Arduino, são poucos componentses αναγκαários e bem simples de se montar, sesuai dengan kebanyakan rajah.

Os sensores foram interligados a placa ESP8266 através de uma protoboard dan alguns jumpers. O sensor de som possui 3 pinos, sendo que um é o GND (ligado em um pino terra da placa), outro é o VCC (ligado em um pino de 3.3 volt da placa) eo OUT (ligado no pino D3 da placa), responsável por enviar os sinainis analógicos para a placa ao detar um ruído.

Neste projeto o LED melayani apenas para identificar quando o sensor identificou um ruído e acionou a API para enviar a notificação, não é um komponene vital, mas auxilia a entendermos o processo em funcionamento. O LED possui 2 pinos, o pino menor (catodo) l ligado na porta D2 da placa e o pino maior (anodo) l ligado em uma porta GND, para que o LED ascenda corretamente.

Abaixo a lista de componentses Needários para montar o projeto de acordo com o diagram:

• 1 Placa NodeMCU ESP8266

• 1 Sensor de Som (Ligado na porta D3)

• 1 Protoboard

• 1 LED (Ligado na porta D2)

• 1 Resistor de 3v

• 5 Jumpers Macho / Femea

Langkah 3: Arduino - Código Do Projeto

Arduino - Código Do Projeto
Arduino - Código Do Projeto

Assim como a ligação dos komponenes eletrônicos do arduíno, o código dele também é bastante simples. Estou deixando o link do projeto no Github para poderem baixa-lo e executa-lo.

Inicialmente is mustário importar algumas bibliotecas da própria placa ESP8266 Needárias para o módulo WiFi dan para realizar Requisição HTTP. Depois dan keperluan definisi komponen yang sesuai, porta sensor, dan sensor juga perlu D2 que sesuai dengan GPIO0 definido como komponene de entrada, e o LED no pino D3 que sesuai dengan GPIO4 definido como komponene de saída. Lembaran rajah dan gambarajah da ESP8266 kemungkinan maklumatção diferente ao referenciar no código, veja o diagram neste link para melhor entendimento.

Defini-se também sebagai credencias da rede WiFi e o mode de conexão como estação (WIFI_STA). Ape a definição é verificado se a placa conseguiu se conectar na rede WiFi especificada. Enquanto a conexão não é estabelecida a verificação ocorre de meio em meio segundo.

Com a conexão internet estabelecida via WiFi, o Arduíno fica rodando em loop infinito, verificando se o sensor detoug algum ruído no ambiente. Caso não tenha Detectado, ele desliga o LED, caso contrário ele liga o LED e chama o método callAPI () responsável por fazer a requisição HTTP a API. Di que a chamada a API não ocorra várias vezes col colocado um delay de 5 segundos, assim mesmo que o ruído seja intermitente a API será acionada de 5 em 5 segundos, se preferir pode estender este tempo.

Ao chamar o método callAPI (), is definido o tipo de requisição (no caso GET) e o endpoint da API, este endpoint vai variar de acordo com o IP do seu servidor e da rota que você criou. Caso a requisição ocorra corretamente is mostrado a mensagem de sucesso no console, caso contrário é mostrado a mensagem de erro gerado pela API tidak ada konsol lakukan Arduíno IDE. Aps exibir a mensagem is finalizado a conexão

Langkah 4: Configurando O Firebase

O Firebase adalah penerima yang bertanggungjawab, API pela nota nota notaa e envia-las aos dispositivos móveis que possuem a aplicação deste projeto. Ele deve ser configurando tanto na API quanto na aplicação Android.

Primeiramente deve-se criar um projeto no Firebase, acessando o site firebase.google.com. Ao criar o projeto, será possível adicionar o Firebase ao aplicativo que será criado untuk penerima sebagai pemberitahuan. Ao criar o aplicativo será possível baixar uma arquivo chamado google-services.json este arquivo deve ser colocado na raiz do seu projeto no Android. O arquivo contém detalhes de configuração, como chaves e identificadores, para os serviços que você ativar eu seu projeto no Firebase. Ainda no painel do Firebase, dan konfigurasi e Depois em Cloud Messaging. Guarde o valor da chave herdada do servidor e do código do remetente, estas dados serão mustários para configurar a API.

Langkah 5: Configurando API Com O Firebase

Tidak ada referensi estrutura geral do projeto já foi passado a funcionalidade da API. Ela responsável por atender a requisição do Arduíno e acionar o Firebase enviando os dados que irão compor a mensagem de notificação. API pode ser construídas em diversas linguagens, como Java, Python, Node. JS, e outras linguagens que possuem suporte sebagai bibliotecas melakukan Firebase Cloud Messaging.

Neste projeto foi criado uma API dan ASP. Net C # hospedada em um servidor Windows na Amazon Web Services. Este tutorial não tem como objetivo explicar detalhadamente a configuração da API, mas vou deixar o link contendo o código fonte desta API no GitHub.

Untuk mengetahui API solução desta criada pelo prioprio Visual Studio ao criar um projeto do tipo WEB ASP. NET API. A configuração da API juga realizada em apenas um arquivo (DefaultController.cs). Neste arquivo juga definido o nome da rota, o tipo da rota (GET), os dados da notificação, Requição ao FCM (passando as chaves e o código gerado ao criar o projeto no Firebase), e o retorno da rota quando ela untuk chamada.

Langkah 6: Penerima Para Criando Aplicativo Sebagai API Notificações Da

Apss ter criado a projeto no Firebase e vinculado as chaves geradas a rota configurado em sua API, falta apenas criar o aplicativo que receberá sebagai notificações enviadas pela API ao Firebase. Neste projeto juga mendesakvolvido um aplicativo nativo para Android, mas poderia ter sido feito para iOS, UWP, ou até mesmo um aplicativo multiplataforma. Da mesma forma que API, está sendo disponibilizado um link para acessar o código fonte do aplicativo desenvolvido neste projeto.

O aplicativo criado possui apenas a função de receiver sebagai pemberitahuan yang membuktikan adanya Firebase, e salvá-las no banco local do aplicativo (utilizando o Realm), e apresentá-las na tela inicial em forma de lista (adaptor utilizando). Penerima sebagai notifikasi yang dilakukan Firebase, deve-se importar a biblioteca do FCM para o código fonte colocando-o no Gradle, e configurar uma classe que herde o método onMessageReceived da classe de serviço FirebaseMessagingService. Este método que irá penerima sebagai pemberitahuan Pemesejan Cloud Firebase Cloud Messaging.

Penerima Ao uma notificação do FCM, o código faz o tratamento da notificação jogando ela em uma model do tipo Realm para salvar no banco local do aplicativo. Além disto, é gerado uma notificação no celular para alertar o usuário o mais rápido possível.

Langkah 7: Kesimpulannya

Podemos ver no vídeo que o Arduíno consegue identificar o barulho ao estalar os dedos, e com isto ele ascende o LED e envia uma Requição a API configurada para enviar a data e hora da requisição ao Firebase Cloud Messaging, o FCM então dispara a notificação os dispositivos que possuem instalado o aplicativo criado e registrado untuk penerima maklumat estas notificações.

Komuniti projeto podemos concluir que o emprego do Arduíno em conjunto com algumas outras tecnologias, como uma API Rest-Full e um serviço de Push Notification, possibilitam inúmeras aplicações que podem Facitar sebagai atividades do dia-a-dia. Este tutorial mostra um projeto básico que pode ser realizado com estas tecnologias, mas se pode fazer algo muito mais avançado utilizando outros sensores para Arduíno, que se encaixe em outros contextos de uso mais abrangentes.

Disyorkan: