El recorrido que debe cubrir la entrega
A la estación ambiental se añade el envío periódico de un objeto JSON mediante POST, cada diez segundos. El receptor PHP comprueba el contenido y conserva diez muestras para que la página pueda representarlas.
Comprobar circuito, destino y mensaje
| Elemento | Configuración |
|---|---|
| OLED | SDA21, SCL22, alimentación a 3V3. |
| DHT22 | La señal DATA debe coincidir con la definida en el firmware del aula y alimentarse a 3V3. Hay referencias con GPIO15 y código publicado con GPIO33; verifica cuál utilizas. |
| Servidor | En php.h, serverUrl debe contener la dirección de tu servidor. Para la placa, localhost no identifica al ordenador sino al propio ESP32. |
| HTTPS | Adecua el protocolo y la comprobación de certificados del cliente a la configuración real del servidor. |
| Bibliotecas | El material de clase combina WiFiManager, U8g2, DHTesp, HTTPClient y ArduinoJson; comprueba las dependencias del ejemplo que cargues. |
{"accion":"guardarTemHum","temp":23.5,"hum":45.0}Antes de consultar la gráfica, comprueba que el firmware lee el sensor correcto, usa el GPIO conectado y genera el formato que espera PHP.
Evidencias del trayecto de las medidas
ESP32 · WiFiManager · OLED · DHT22 → PHP.
Cada diez segundos, el ESP32 transmite las dos magnitudes del DHT22 dentro de una petición HTTP POST con cuerpo JSON a php.php, donde se recibe el mensaje. El registro se limita a las diez muestras más recientes de json.json y esta página las muestra en directo.
Últimas lecturas
Comprobando json.json…
■ Temperatura (°C) ■ Humedad (%)
| HORA | TEMP. | HUM. |
|---|---|---|
| Sin datos todavía | ||
Visualización de los datos
-- °C
-- % HR
Esperando datos
La extensión de la barra va del mínimo al máximo; la marca interior señala el promedio.
Cómo viajan los datos
El DHT22 aporta las dos magnitudes ambientales al controlador.
Cada 10 s envía {"accion":"guardarTemHum","temp":..,"hum":..} por WiFi.
Después de validar el objeto, PHP incorpora la fecha de recepción y actualiza el registro de diez muestras en json.json.
Lee json.json cada cinco segundos para renovar indicadores, historial y representaciones.
URL en el código del ESP32
En la pestaña php.h del IDE, establece una URL que termine en el receptor de este proyecto:
// Servidor del profesor (hosting): const char* serverUrl = "https://alumnos2026.unicarlos.es/ruben_delegido_munoz/MER/4_esp32_wifimanager_oled_dht22_php/php.php"; // Servidor Debian del ordenador: //const char* serverUrl = "http://192.168.50.46/MER/4_esp32_wifimanager_oled_dht22_php/php.php";
El proceso PHP necesita permiso de escritura en la carpeta publicada en Debian para poder actualizar json.json:
sudo chmod -R 777 /var/www/html/MER/4_esp32_wifimanager_oled_dht22_php
Si al abrir php.php en el navegador sale {"exito":false,"mensaje":"Método no permitido"}, la respuesta es coherente: esa visita usa GET, mientras el receptor espera POST.