Está en la página 1de 9

DATOS NUEVOS CON EL NUEVO PROYECTO

TECNOPURA
OBTACULOS (HC-SR04) 5500______________________________
CONTAMINACION AIRE (mq-135) 10000 (modulo detección de aire)
Temperatura (BMP280)
HUMEDAD (Sensor dht11)
NIVELES DE RUIDO (sensor de sonido KY-037)
PRESION AFMOSFERICA (BMP280)
LUMINISCENCIA (LDR) 1500

Mini jumpers de 10cm x40 6000


Protoboard adhesiva de 830 puntos 16.5x5.5cm 8500

Valor total 31500


CODIGO COMPLETO
#include <ESP8266WiFi.h>//library ESP
#include <NewPing.h>//library HC-SR04
//library bmp280
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BMP280.h>
#include <MQUnifiedsensor.h> // Library MQ-135

Adafruit_BMP280 bmp;//Variable estructura bmp280


String apiKey = "U0OVYZRR7GU8S29Z";//completa la clave de API de
Thingspeak
const char* ssid = "PASSWORD";//nombre de wifi
const char* password = "516535892020";//contraseña wifi
const char* server = "api.thingspeak.com"; //servidor enlace hombre-
maquina
WiFiClient client;
//Estructura LDR
int sensorPin = A0;//entrada para LDR
int enable1 = 15;// habilitacion entrada LDR
int sensorValue1 = 0;// variable para almacenar el valor procedente del
sensor LDR
//Estructura HC-SR04
#define TRIGGER_PIN D6 //config. trigger sensor HC-SR04
#define ECHO_PIN D5 //config. Echo sensor HC-SR04
#define MAX_DISTANCE 200 // Distancia máxima sensor HC-SR04
NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);//Crear el objeto
de la clase NewPing
//Estructura MQ-135
int s_analogica_mq135=0;//entrada para MQ-135
int aire = D0;// habilitacion entrada MQ-135
//Estructura KY-037
int led = D4;//entrada para KY-03
int sound_digital = D3;//entrada Digital sonido para KY-03
int sound_analog = A0;//entrada analogica sonido para KY-03
//(((((((((((((((((((((((((((((((((Configuracion dispositivos para ESTACION
METEREOLOGICA)))))))))))))))))))))))))))))))))))))))))
void setup() {
//LDR
pinMode(enable1, OUTPUT);//habilitación y ledPin como una SALIDA
//Estructuracion de todos los dispositivos para obtencion de datos atravez de
Hombre-maquina
Serial.begin(115200);
delay(10);
// MQ-135
pinMode(aire,OUTPUT);
digitalWrite(aire,LOW);
// KY-037
pinMode(led, OUTPUT);
pinMode(sound_digital, INPUT);
//////////CONF. WIFI
WiFi.begin(ssid, password);
Serial.println();
Serial.println();
Serial.print("Connecting to ");
Serial.println(ssid);
Serial.print("..........");
Serial.println();
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
}
Serial.println("WiFi connected");
Serial.println();
}
void loop() {
//Sensor BMP280
if (!bmp.begin(0x76)) {
Serial.println(F("Could not find a valid BMP280 sensor, check wiring or
"//advertencia de sensor mal conectado o dañado
"try a different address!"));
while (1) delay(10);
}
Serial.print(F("Temperature = "));
Serial.print(bmp.readTemperature());//variable temperatura
Serial.println(" *C");//Valor en celcius de temepratura
Serial.print(F("Pressure = "));
Serial.print(bmp.readPressure());//variable Presion afmosferica
Serial.println(" Pa");//Valor de Presion afmosferica
Serial.print(F("Approx altitude = "));
Serial.print(bmp.readAltitude(1013.25)); //variable en altitud
Serial.println(" m");//Valor en metros altitud
//Sensor HC-SR04
delay(500); // Esperar medio segundo entre mediciones
// Muestra la distancia medida a la consola serial
Serial.print("Ping: ");
// Calcular la distancia con base en una constante
Serial.print(sonar.ping_cm());//Variable distancia objeto obstaculo
Serial.println("cm.");//Valor en cm de objeto obstaculo
//Sensor LDR
digitalWrite(enable1, HIGH); //variable de sensor iluminacion alta
sensorValue1 = analogRead(sensorPin);
sensorValue1 = constrain(sensorValue1, 300, 850);
sensorValue1 = map(sensorValue1, 300, 850, 0, 1023);
Serial.print("Light intensity: ");//Variable de valor de iluminacion
Serial.println(sensorValue1);// Valor de la iluminacion
digitalWrite(enable1, LOW);
delay(100);
//Sensor MQ-135
{
s_analogica_mq135 = analogRead(0);//estructura de valor analogico
Serial.print(s_analogica_mq135, DEC);//valor del aire en tiempo real
Serial.println(" ppm");//valor en ppm (Unidad de Medida)
delay(250);
//aire
if(s_analogica_mq135<=55)//formula para medir el aire
{
Serial.println("aire normal");//variabel concideracion aire normal
digitalWrite(aire,LOW);//valor en baja con el aire contaminado
delay(50);
}
// Sensor KY-037
int val_digital = digitalRead(sound_digital);//variable sonido digital
int val_analog = analogRead(sound_analog);//variable sonido analogico
Serial.print(val_analog);//formula sensor KY-037
Serial.print("\t");//variable en tiempo
Serial.println(val_digital);//valores cuando se activa sonido digital del sensor
KY-037
if (val_digital == HIGH)//formula digital
{
digitalWrite (led, HIGH);//valor cuando digital esta en (valor 1) sube el
sonido de alerta
delay(3000);
}
else
{
digitalWrite (led, LOW);//valor cuando digital esta en (valor 0) baja el
sonido de alerta
delay(3000);
}
//Configuracion thingspeak Sensores aplicados
if (client.connect(server,80)) { //Servidor "184.106.153.149" or
api.thingspeak.com
String postStr = apiKey;
postStr +="&field1=";//orden de grafica en maquina
postStr += String(bmp.readPressure());//variable sensor BMP280 (Presion
afmosferica)
postStr +="&field2=";//orden de grafica en maquina
postStr += String(bmp.readTemperature());//Variable sensor BMP280
(Temperatura)
postStr +="&field3=";//orden de grafica en maquina
postStr += String(bmp.readAltitude(1013.25));//Variable altitud sensor
BMP280 (Altitud)
postStr +="&field4=";//orden de grafica en maquina
postStr += String(sonar.ping_cm ()); //Variable sensor HC-SR04 (Obstaculos)
postStr +="&field5=";//orden de grafica en maquina
postStr += String(sensorValue1);//Variable sensor LDR (Iluminacion)
postStr +="&field6=";//orden de grafica en maquina
postStr += String(s_analogica_mq135, DEC);//Varibale sensor MQ-135
(Contaminacion aire)
postStr +="&field7=";//orden de grafica en maquina
postStr += String(val_analog);//Variable sensor KY-037 (Niveles de ruido
analogica)
postStr +="&field8=";//orden de grafica en maquina
postStr += String(val_digital);//Variable sensor KY-037 (Niveles de ruido
digital)
postStr += "\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n";
//Configuracion basica para visualizacion hombre-maquina(thingspeak)
client.print("POST /update HTTP/1.1\n");
client.print("Host: api.thingspeak.com\n");
client.print("Connection: close\n");
client.print("X-THINGSPEAKAPIKEY: "+apiKey+"\n");
client.print("Content-Type: application/x-www-form-urlencoded\n");
client.print("Content-Length: ");
client.print(postStr.length());
client.print("\n\n\n\n\n\n\n\n");
client.print(postStr);

}
client.stop();//thingspeak toma 15 segundos para actualizaciones
delay(20000);//retraso 20 segundos entre actualizaciones
}
}

También podría gustarte