meta data de esta página
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| electronica:esp8266:nube [2016/08/31 22:34] – [2 Temperatura y Humedad en la nube] lc | electronica:esp8266:nube [2023/01/18 13:36] (actual) – editor externo 127.0.0.1 | ||
|---|---|---|---|
| Línea 4: | Línea 4: | ||
| En primer lugar vamos a usar la plataforma [[http:// | En primer lugar vamos a usar la plataforma [[http:// | ||
| + | |||
| + | <sxh c> | ||
| + | // wiki.intrusos.info | ||
| + | |||
| + | // Librerias | ||
| + | #include " | ||
| + | #include " | ||
| + | |||
| + | // Parámetros de Conexión a la WiFi | ||
| + | const char* ssid = " | ||
| + | const char* password = " | ||
| + | |||
| + | // Pin del ESP8266 al que está conectado. | ||
| + | // El GPIO 4 corresponde al D2 del ESP8266-12E NodeMCU v3 | ||
| + | #define DHTPIN 4 | ||
| + | |||
| + | // tipo de sensor DHT | ||
| + | #define DHTTYPE DHT11 // DHT 11 | ||
| + | |||
| + | // Inicializa el sensor | ||
| + | DHT dht(DHTPIN, DHTTYPE); | ||
| + | |||
| + | // Host al que nos vamos a conectar | ||
| + | const char* host = " | ||
| + | |||
| + | void setup() { | ||
| + | Serial.begin(115200); | ||
| + | delay(100); | ||
| + | |||
| + | // Inicializamos el sensor | ||
| + | dht.begin(); | ||
| + | |||
| + | // Conectamod a la red WIFI | ||
| + | Serial.println(); | ||
| + | Serial.println(); | ||
| + | Serial.print(" | ||
| + | Serial.println(ssid); | ||
| + | WiFi.begin(ssid, | ||
| + | while (WiFi.status() != WL_CONNECTED) { | ||
| + | delay(500); | ||
| + | Serial.print(" | ||
| + | } | ||
| + | Serial.println("" | ||
| + | Serial.println(" | ||
| + | Serial.println(" | ||
| + | Serial.println(WiFi.localIP()); | ||
| + | } | ||
| + | |||
| + | void loop() { | ||
| + | // Usa la clase WiFiClient para crear una conexión TCP | ||
| + | WiFiClient client; | ||
| + | const int httpPort = 80; | ||
| + | if (!client.connect(host, | ||
| + | Serial.println(" | ||
| + | return; | ||
| + | } | ||
| + | |||
| + | // Obtiene la Humedad | ||
| + | float h = dht.readHumidity(); | ||
| + | |||
| + | // Obtiene la Temperatura en Celsius | ||
| + | float t = dht.readTemperature(); | ||
| + | |||
| + | delay(3000); | ||
| + | // Control de errores, valida que se obtuvieron valores para los datos medidos | ||
| + | if (isnan(h) || isnan(t)) { | ||
| + | Serial.println(" | ||
| + | client.print(" | ||
| + | return; | ||
| + | } | ||
| + | |||
| + | // Enviamos los datos al servidor. | ||
| + | |||
| + | client.print(String(" | ||
| + | " | ||
| + | " | ||
| + | |||
| + | |||
| + | // Leemos la respuesta del servidor y la sacamos por el puerto serie | ||
| + | while (client.available()) { | ||
| + | String line = client.readStringUntil(' | ||
| + | Serial.print(line); | ||
| + | } | ||
| + | |||
| + | Serial.println(); | ||
| + | Serial.println(" | ||
| + | |||
| + | // Repetir cada 10s | ||
| + | delay(10000); | ||
| + | |||
| + | } | ||
| + | </ | ||
| + | |||
| + | Si toda ha ido correctamente deberías de ver por el puerto serial algo similar a | ||
| + | < | ||
| + | {" | ||
| + | Cerramos la conexión | ||
| + | HTTP/1.1 200 OK | ||
| + | Access-Control-Allow-Origin: | ||
| + | Content-Type: | ||
| + | Content-Length: | ||
| + | Date: Wed, 31 Aug 2016 22:04:49 GMT | ||
| + | Connection: close | ||
| + | </ | ||
| + | |||
| + | ==== Visualizar gráficamente nuestros datos ==== | ||
| + | Como última parte de esta práctica vamos a visualizar gráficamente las medidas de humedad y temperatura usando la plataforma [[https:// | ||
| + | |||
| + | Lo primero es crear una cuenta y una vez creada debemos seguir estos pasos: | ||
| + | - Añadir un **DATASOURCE** | ||
| + | - Pulsamos el botón **Add Panel** y dentro del panel pulsamos el botón **+** para añadir un WIDGET {{ : | ||
| + | |||
| + | |||
| + | Con esto ya podemos ver gráficamente nuestro dispositivo | ||
| + | {{ : | ||
| ==== Referencias ==== | ==== Referencias ==== | ||
| * https:// | * https:// | ||