Created
August 10, 2018 17:32
-
-
Save tashima42/5d4c495c0877293ccb6f84d407f8a02b to your computer and use it in GitHub Desktop.
Alarme caseiro feito com nodemcu esp8266 e HC-SR04
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Codigo feito por Pedro Tashima, com inspiracao no de Abhrodeep Chanda (https://www.youtube.com/channel/UCzW9WY9u_T-Xdsd2TKIvfmw) | |
#include <ESP8266WiFi.h> | |
#include <ESP_Notify.h> | |
// define as variaveis | |
long duracao; | |
int distancia; | |
int distanciasegura; | |
//definindo wifi | |
const char* ssid ("SEU_SSID"); //SSID da sua rede (0 nome dela) | |
const char* pswd ("SUA_SENHA"); //Senha da sua rede | |
//id do seu celular | |
#define DEVICE_ID "D0dXcLSc2TCeIskQXAVTFJnfmOAhoRFkV8tIlE88ARG9iaqnPyhMbDfh6MV-Qbx-LQY4chX9jE4PI6xGAX4rfybztwC1uB5AsoF6BUk8FFkhLclcFc0jsSmS29LfY7N_UYHWDZEnbL3Q" | |
///////////////////////////////////////////////////////////////////////// | |
ESP_Notify notifier; | |
// numeros | |
const int trigPin = D0; | |
const int echoPin = D1; | |
//const int ledPin = D2; | |
void setup() { | |
pinMode(trigPin, OUTPUT); // Define trigPin como uma saida | |
pinMode(echoPin, INPUT); // deifne echoPin como uma entrada | |
// pinMode(ledPin, OUTPUT); // Define ledPin como saida | |
Serial.begin(9600); // Comeca o Serial Monitor | |
WiFi.begin(ssid, pswd); //inicia a conexao com o wifi | |
} | |
void loop() { | |
// Limpa o Trig | |
digitalWrite(trigPin, LOW); | |
delayMicroseconds(2); | |
// Deixa o trig em HIGH por 10 microsegundos | |
digitalWrite(trigPin, HIGH); | |
delayMicroseconds(10); | |
digitalWrite(trigPin, LOW); | |
// Le o echopin | |
duracao = pulseIn(echoPin, HIGH); | |
// calculando a distancia | |
distancia = duracao * 0.034 / 2; | |
distanciasegura = distancia; //define a constante distancia segura = a distancia | |
if (distanciasegura <= 90) { //mude a seu gosto | |
// digitalWrite(ledPin, HIGH); //liga o led | |
notifier.sendNotification(DEVICE_ID, "ALARME!", "O sensor detectou movimento"); //envia a notificacao para o app, mude o texto a seu gosto | |
} | |
else { | |
// digitalWrite(ledPin, LOW); | |
} | |
distanciasegura = distancia; | |
if (distanciasegura >= 110) { //caso a distancia fique maior que a desejada, tambem ativa o alarme | |
// digitalWrite(ledPin, HIGH); | |
notifier.sendNotification(DEVICE_ID, "ALARME!", "O sensor detectou movimento"); //envia a notificacao para o app, mude o texto a seu gosto | |
} | |
// Mostra a distancia no monitor serial | |
Serial.print("Distancia: "); | |
Serial.println(distancia); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment