martes, 12 de febrero de 2019

0

Proyecto: Análisis de los datos

Con los datos obtenidos, y a modo de conclusión, se puede realizar un análisis, que es el objetivo principal de una aplicación IoT como esta. Por lo tanto, se ha elegido la realización de un control difuso para determinar la sensación térmica empleando las dos variables de las que se dispone: humedad y temperatura.

Un controlador difuso de estas características dispone de una serie de reglas que se van a evaluar para cada punto. De cada uno de ellos, se pretende extraer un estado como el se la siguiente tabla:



Pero antes de seleccionar uno de los estados resultado de esta tabla, se debe conocer a qué clase pertenecen la temperatura y humedad, y para ello se va a realizar una evaluación con funciones trapezoidales de cada uno de los puntos.
Para ello, se va a dividir en dos puntos:


Temperatura

La temperatura puede variar desde valores negativos pequeños hasta valores no por encima de los 40, debido a que la zona en la que residimos no tiene picos extremos, los datos tenderán a estar muy agrupados. Esto va a dificultar la calidad de la medida, ya que va a ser mas complicado establecer la diferencia entre un grupo y otro. La distinción que se ha realizado es la siguiente:



Para valores muy bajos se considera frío, las temperaturas medias estarán entre fresco y templado y las extremas por encima se situaran en caluroso. La manera de evaluar donde se sitúa el punto es la siguiente:
Cuando se analiza una temperatura, por ejemplo 17 grados, esta cruza varias rectas, en concreto la de fresco y templado. La clase que se le va a aplicar a esta temperatura, sera el valor más alto obtenido al cruzar por ellas, es decir, unos 0,7 en templado y unos 0,3 en fresco. Por lo tanto, el valor más alto indica que 17 grados es una temperatura templada mayoritariamente. 
Para el análisis de los puntos, se ha creado una estructura condicional en MatLAB:


Esta estructura devuelve siempre 4 valores, que corresponden a las clases. El valor más alto define la clase de temperatura.

Humedad

Para la humedad se va a realizar un análisis idéntico. Sin embargo, en este caso, se ha decidido realizar una división en tres clases de la zona de la gráfica, que oscila entre el 0 y el 100%:

Esto deja tres rangos situados entre baja, suave y alta. La función de evaluación va a ser idéntica a la anterior, devolviendo tres funciones con valor entre cero y la unidad:


Evaluación

Entonces, una vez analizadas ambas variables, toca a continuación realizar una serie de condiciones que encajen con la primera tabla expuesta:

  • Si la temperatura es fría y la humedad baja, entonces la sensación es soportable.
  • Si la temperatura es fría y la humedad suave, entonces la sensación es mala.
  • Si la temperatura es fría y la humedad alta, entonces la sensación es inclemente.
  • Si la temperatura es fresca y la humedad baja, entonces la sensación es agradable.
  • Si la temperatura es fresca y la humedad suave, entonces la sensación es soportable.
  • Si la temperatura es fresca y la humedad alta, entonces la sensación es mala.
Y así con todas las condiciones que dan como resultado un único valor dentro de la tabla de resultados.

Sin embargo, la forma de programar estas funciones, difiere de las anteriores. Entre otros métodos, se ha elegido la funciona mínima como método de evaluación, que consiste en buscar el valor mínimo de las funciones cruzadas que se han visto previamente. Por ejemplo:

  • Estado 1: La temperatura es fría y la humedad es baja. Las funciones previas darían como resultado 1 en temperatura y 1 en humedad, por lo que el valor mínimo de ambos es 1. Al ser el valor máximo, con toda probabilidad la sensación térmica es soportable.
Todas estas funciones se programan de esta manera:



Esta función entonces devuelve la probabilidad de que la temperatura pertenezca a uno de los estados de la tabla de sensaciones térmicas. Sin embargo, siguiendo con la programación, se puede depurar un programa que devuelva exactamente la sensación térmica:

La ejecución de esta función devuelve un caso como este:




Con esto se puede analizar del lote de datos, por ejemplo una muestra cada tiempo configurable:


Se ha realizado una división exacta cada 60 muestras, lo que equivale a 10 minutos. Esto devuelve la siguiente ejecución:



No hay comentarios :

Publicar un comentario

ir arriba