91 lines
2.0 KiB
C++
91 lines
2.0 KiB
C++
#include <math.h>
|
|
#include <ESP8266HTTPClient.h>
|
|
#include <ESP8266WiFiMulti.h>
|
|
|
|
#include <WiFiClient.h>
|
|
|
|
// defino credenciales red
|
|
const char* ssid = "CASA";
|
|
const char* password = "Caramel0";
|
|
float val;
|
|
float temp;
|
|
String ids = "T00";
|
|
int id = 1;
|
|
int temp1;
|
|
int hume1;
|
|
|
|
|
|
WiFiClient client;
|
|
void setup() {
|
|
Serial.begin(115200);
|
|
|
|
WiFi.begin(ssid, password);
|
|
Serial.print("Conectando...");
|
|
while (WiFi.status() != WL_CONNECTED) {
|
|
delay(500);
|
|
Serial.print(".");
|
|
}
|
|
Serial.println("Conexión OK!");
|
|
Serial.print("IP Local: ");
|
|
Serial.println(WiFi.localIP());
|
|
|
|
}
|
|
|
|
void loop() {
|
|
|
|
val = analogRead(A0);
|
|
temp = log(((10240000 / val) - 10000));
|
|
temp = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * temp * temp )) * temp );
|
|
temp = temp - 318.15;
|
|
Serial.print(temp);
|
|
Serial.println("°C");
|
|
delay(10000);
|
|
|
|
EnvioDatos();
|
|
double temp;
|
|
|
|
|
|
|
|
}
|
|
|
|
// rutina de envio de datos por POST
|
|
void EnvioDatos() {
|
|
if (WiFi.status() == WL_CONNECTED) {
|
|
temp1 = random(2,8);
|
|
hume1 = random(2,8);
|
|
HTTPClient http; // creo el objeto http
|
|
String datos_a_enviar = "idsensor=" + ids + id + "&temp=" + temp1 + "&hume=" + hume1;
|
|
|
|
http.begin(client, "http://server.mxsig.com.mx:9000/sensoresf/");
|
|
http.addHeader("Content-Type", "application/x-www-form-urlencoded"); // defino texto plano..
|
|
|
|
int codigo_respuesta = http.POST(datos_a_enviar);
|
|
|
|
if (codigo_respuesta > 0) {
|
|
Serial.println("Código HTTP: " + String(codigo_respuesta));
|
|
if (codigo_respuesta == 200) {
|
|
String cuerpo_respuesta = http.getString();
|
|
Serial.println("El servidor respondió: ");
|
|
Serial.println(cuerpo_respuesta);
|
|
}
|
|
} else {
|
|
Serial.print("Error enviado POST, código: ");
|
|
Serial.println(codigo_respuesta);
|
|
}
|
|
if (id < 4){
|
|
id++ ;
|
|
} else {
|
|
id =1 ;
|
|
}
|
|
Serial.print("temp: ");
|
|
Serial.print(temp1);
|
|
Serial.print(" hume: ");
|
|
Serial.println(hume1);
|
|
http.end(); // libero recursos
|
|
|
|
} else {
|
|
Serial.println("Error en la conexion WIFI");
|
|
}
|
|
delay(500); //espera 60s
|
|
}
|