top of page

Recursos didácticos de Machine Learning: Series Temporales 2. Visualizando los datos

fjroar
2 mar
4 min de lectura

Tras una espera de algo más de una semana de mi proyecto de toma de datos de la realidad, los datos han llegado y parece que todo ha funcionado bien.


Mientras que en anterior post, monté la estación de medición esférica, ésta grababa datos cada 10 minutos de temperatura, humedad y presión atmosférica con lo que se generan estas gráficas que comienzan a partir del 2026-02-21 a las 21h y finalizan el 2026-03-02 a las 18h:



El dispositivo para obtener los datos consta básicamente de los siguientes elementos que repaso brevemente y que remito al interesado a la primera parte si quiere más detalle:


  • Una placa esp32 que orquesta todo el mecanismo

  • Un sensor que es capaz de leer la temperatura, humedad y la presión atmosférica

  • Un dispositivo reloj para fijar el tiempo en el que se leen los datos

  • Un lector de tarjeta sd con su tarjeta de 2GB

  • Y un led verde que se enciende cada 10 minutos para indicar si el dispositivo sigue funcionando


Lo anterior como ya comenté está en una esfera de 12 cm comprada en el chino de mi barrio a la que le hice un agujero para meterle un cable una fuente de 5V en continua. Apenas me gasta luz porque la placa está durmiendo 10 minutos, se enciende para tomar el dato, enciende el led verde 5 segundos y listo, siguiendo el siguiente:


ESP32

├── Pin 21 (SDA)

│ ├── AHT20 (SDA) ---> Sensor de Temperatura y Humedad

│ ├── BMP280 (SDA) ---> Sensor de Presión

│ └── DS3231 (SDA) ---> Reloj en Tiempo Real

├── Pin 22 (SCL)

│ ├── AHT20 (SCL) ---> Sensor de Temperatura y Humedad

│ ├── BMP280 (SCL) ---> Sensor de Presión

│ └── DS3231 (SCL) ---> Reloj en Tiempo Real

├── Pin 5 (CS)

│ └── SD ---> Lector de Tarjeta SD

├── Pin 23 (MOSI)

│ └── SD ---> Lector de Tarjeta SD

├── Pin 19 (MISO)

│ └── SD ---> Lector de Tarjeta SD

├── Pin 18 (SCK)

│ └── SD ---> Lector de Tarjeta SD

├── Pin 25 (LED)

│ └── LED (Anodo) ---> Indicador LED

└── GND

├── AHT20 (GND) ---> Sensor de Temperatura y Humedad

├── BMP280 (GND) ---> Sensor de Presión

├── DS3231 (GND) ---> Reloj en Tiempo Real

├── SD (GND) ---> Lector de Tarjeta SD

└── LED (Cátodo) ---> Indicador LED

└── 3.3V

├── AHT20 (VCC) ---> Sensor de Temperatura y Humedad

├── BMP280 (VCC) ---> Sensor de Presión

├── DS3231 (VCC) ---> Reloj en Tiempo Real

├── SD (VCC) ---> Lector de Tarjeta SD

└── LED (opcional) ---> Indicador LED


Dicho lo anterior hoy me puse a recoger el dato que llevaba grabado y empecé a tratarlo en el siguiente código de python que se puede consultar en mi git:



Que se puede encontrar en la carpeta code, mientras que los datos están en la carpeta data.


Pues a partir de aquí se puede empezar a observar algunas cosas en base a los datos anteriores y es que:


  • Es claro el comportamiento de la serie de temperatura inverso con el de la serie de humedad y es que cuando la primera baja, lógicamente la humedad sube tal y como se puede observar



  • Por otro lado se observa que la serie de presión va como "a su bola" y claramente con una semana de datos no se tiene suficiente material para analizar relaciones de esta serie con las anteriores (nótese que el valor de la presión atmosférica tiene en cuenta que Madrid está casi a 700 m de altitud y no a nivel del mar donde ésta sería mayor):



No obstante, cuando haya pasado más tiempo, se van a analizar esas posibles conexiones y relaciones con otros efectos atmosféricos como si llueve o no llueve por ejemplo, pero sólo para donde yo vivo que es la zona de Manoteras ya que la estación está colocada en el jardín de mi casa en un lugar sombrío emitiendo y grabando lo que pasa sistemáticamente (espero que no se me rompa).


Así pues para poder llegar a montar un modelo predictivo de cierto interés y vistos los datos que tenemos por el momento, lo que resulta factible en el corto plazo es llegar a construir un modelo de reglas que al menos pueda anticipar precipitaciones en el plazo de 24h Como se observa, el último dato del 1-2 de Marzo marca una caída en las presiones durante el día (en la siguiente parte de este post, veremos como fue la historia) y la probabilidad de lluvia de hoy 2 de Marzo en la aplicación AccuWheather era del 60%, mientras que mañana pasa a ser 55% y del 65% pasado mañana, por tanto a partir de ahora voy a ir anotando esta información en una excel aparte para poder hacer una regla que sea útil y por tanto generar un primer modelo a enriquecer con más registros.


Finalmente y para no extenderme demasiado varias cosillas:


  1. Me considero afortunado que no se me haya roto el invento y espero que en la próximas semanas sobreviva, ya que hacer un aparato y ponerlo a la intemperie, me ha supuesto un reto técnico porque hay que pensar tanto en el prototipo como en la caja (en este caso esfera) que va a acoger al mecanismo y el cómo suministrarle energía


  2. Toda la información, incluidos los datos están en mi git, si alguien quiere reproducirlo, me puede pillar el contacto por linkedin y le puedo dar más detalle, para mí lo importante empieza ahora que extraigo el dato, aunque 1, no estuvo mal pensarlo


  3. Básicamente estoy haciendo uso de un hecho bastante conocido y es que los cambios de presión anticipan cambios de tiempo a corto plazo, no obstante, un modelo con datos a más largo plazo permitiría la deducción de variables adicionales tanto horarias, como diarias y de tipo calendario que sin necesidad de recurrir a fuentes oficiales y tan sólo con medidas internas, nos va permitir conocer como funcionan los modelos meteorológicos y en que está basada esa "magia" de prever el tiempo con cierto grado de acierto como actualmente se tiene


  4. No se olvide que nuestro objetivo principal es el uso de Machine Learning pero con nuestras propias medidas tomadas con medios no profesionales pero eso sí, tratando de seguir una metodología lo más científica y sistemática posible


Comentarios


© 2021 by Francisco J. Rodríguez Aragón. Proudly created with Wix.com

bottom of page