Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Brouchy, Carolina Vanesa. Gonzlez, Omar Marcelo. Facultad de Ingeniera, Universidad Nacional de Jujuy caro.brouchy@gmail.com marcelogonzalez5@yahoo.com.ar
Resumen
1 Introduccin
La integracin de sistemas de domtica, multimedia y de comunicaciones en una vivienda nos permiten aumentar el confort, la seguridad, el ahorro energtico, y disfrutar de nuevas formas de entretenimiento. La tecnologa sensible al contexto y mas aun, la realidad aumentada nos brinda la posibilidad de lograr que la vivienda responda a nuestras preferencias y en este caso, hacer que se adapte a nuestro estado de animo, todo esto sin tener que presionar botones o escribir comandos. El objetivo de este trabajo es realizar el modelado de un sistema para un hogar inteligente para su posterior implementacin.
Una casa cuenta con una serie de sensores que miden diversos aspectos funcionales de la misma. Un sistema informtico puede establecer el estado de nimo de una persona. El sistema tiene almacenado en su base de datos una serie de perfiles asociados a los estados de
animo de una persona. Esos perfiles contienen valores de intensidad para las luces de la casa, tipo de msica de fondo, una serie de canales de televisin y una lista de recetas. A su vez, la casa cuenta con una heladera con compartimentos ya definidos para diferentes tipos de verduras, lcteos, carnes y bebidas donde cada compartimiento tiene sensores de peso que determinan si es que el compartimiento contiene el elemento que debe contener y cuanto de ese elemento contiene. La heladera cuenta con una pantalla exterior donde se muestra el valor del contenido de cada compartimiento y una serie de recetas que pueden prepararse con el contenido de la heladera. Al estar estas recetas asociadas a un perfil correspondiente a un estado de animo, cuando se detecta que la persona se acerca a la heladera, esta muestra una serie de recetas segn el perfil activo.
2.2.1
Requerimientos Funcionales
Determinar el estado de animo de la persona. Habilitar un perfil asociado al estado de animo detectado. Brindar un conjunto de recetas de acuerdo al perfil activo y a la cantidad de ingredientes existentes. Preseleccionar una serie de canales de acuerdo al perfil activo. Preseleccionar un conjunto de temas musicales de acuerdo al perfil activo. Permitirle al usuario configurar sus gustos en cada perfil.
2.2.2
Las capas del sistema van a estar contenidas en tres grandes grupos:
HARDWARE o Este grupo contendr capas orientadas al manejo de los sensores y su interaccin con el sistema. o Este grupo ser el encargado de recibir informacin en bruto de los sensores y transformarla en informacin til para el sistema. LOGICA o A partir de la informacin que entrega la capa de hardware, la capa de lgica se encarga de activar el subcontexto apropiado y define los servicios a ser ejecutados para ese subcontexto. SERVICIO
SUBCAPA DE ABSTRACCION DE HARDWARE: o En esta capa se encuentra la representacin en objetos de los dispositivos de hardware que se utilizan para obtener informacin del entorno (ej. GPS, sensor de peso, sensor de temperatura, etc.) o Las clases que contiene esta capa se encargan de digitalizar la informacin proveniente de los sensores. SUBCAPA DE SENSADO: o Esta capa contiene un conjunto de clases encargadas de realizar la conexin entre los datos obtenidos de los sensores (por medio de la capa de abstraccin de hardware) y los aspectos del contexto modelado. o Las clases de esta capa se encargan de transformar la informacin en bruto entregada por la abstraccin de hardware en informacin til para el sistema.
o Esta capa contiene las clases necesarias para decidir que subcontexto activar. CAPA DE DEFINICION DE SERVICIO: o Esta capa contiene las clases necesarias para definir qu servicios se van a ejecutar.
VISTA: o Contiene las interfaces grficas para mostrar los resultados de un proceso. CONTROLADOR: o Contiene las clases necesarias para ejecutar un servicio (ej. Proceso necesario para seleccionar una receta). DATOS: o Contiene las clases necesarias para interactuar con una base de datos (ej. Obtener una lista de recetas de la base de datos).
2.3
Diseo
2.3.1 Capa abstraccin de hardware. En esta capa se ven siete clases (SensorUbicacion, SensorPeso, SensorTemperatura, DysplayHeladera, Televisor, Estereo, Luz), cada clase es una representacin en objeto del sensor y del actuador que simboliza (sensor de ubicacin, sensor de peso, sensor de temperatura, actuador televisor, actuador estreo, etc.). Las clases que representan sensores contienen mtodos para adquirir datos, y las que representan actuadores contienen los mtodos necesarios para ejecutar tareas . 2.3.2 Capa de Sensado. En base a los datos que arrojan los sensores (objetos de la capa anterior), se genera informacin til para el sistema. Para esto se emplea el patrn de diseo Strategy. El patrn Estrategia (Strategy)[2] define una familia de algoritmos, los encapsula y los hace intercambiables. Permitiendo a cada algoritmo variar independientemente de los clientes que lo utilizan.
Se utiliza para encapsular aquellas partes del cdigo que varan, haciendo que stas variaciones no afecten al resto del cdigo, evitando as consecuencias inesperadas y brindando a nuestro cdigo una mayor flexibilidad. Para nuestro caso, cada sensor arroja datos diferentes (el sensor de ubicacin arroja coordenadas de posicin X,Y, el sensor de temperatura arroja temperatura en grados centgrados, etc.) y cada uno de estos datos en bruto genera un tipo de dato til para el sistema (las coordenadas X,Y se trasforman en un lugar fsico donde se encuentra el usuario como la sala, la cocina, etc.). Si en el futuro se agregan nuevos tipos de sensores (como ser los sensores de intensidad de luz que se pueden utilizar para determinar si es de da o de noche), el patrn Strategy al encapsular los mtodos para obtener informacin til, nos permitir implementar los nuevos mtodos de los nuevos tipos de sensores con gran facilidad y sin afectar a los ya existentes. La clase SensingConcern decide como convertir los datos que recibe de los sensores en informacin til. Cada manera de obtener informacin til est concentrada dentro de clases que se corresponden con cada sensor (por ejemplo, para el sensor de ubicacin existe la clase Ubicacion que transforma las coordenadas X, Y en una ubicacin dentro de la casa). La primera informacin que se debe obtener es la ubicacin, ya que de ella depende que se active uno de los subcontextos. 2.3.3 Capa de seleccin de contexto. La clase ActualizadorContexto recoge las variaciones de ubicacin. En la capa Seleccin de Contexto se emplea un patrn Observer[2] siendo la clase ActualizadorContexto la observada y las clases Cocina, Habitacion y Comedor las observadoras. Cuando la clase ActualizadorContexto recibe un cambio de ubicacin esta les notifica a las observadoras que la ubicacin ha cambiado de modo que solo una observadora estar activa por vez. 2.3.4 Grupo de servicios (capas controlador, datos y vista)
El grupo de servicios que contiene las capas de controlador, datos y vista se trata de la forma convencional; como si se tratara de una aplicacin separada.
3 Conclusiones
El avance de la tecnologa a hecho posible que tecnologa que antes era de uso exclusivo de ciertas reas de la investigacin cientfica o de costosos entornos empresariales, ahora pueda emplearse en usos domsticos. Tal es el caso aqu planteado donde se usa realidad aumentada para hacer mas confortable el hbitat de las personas. Si bien aqu solo mostramos una marco de referencia para desarrollar sistemas que le brinden cierta inteligencia a los hogares, el costo de implementar estos sistemas no seria tan elevado como en aos anteriores.
4 Bibliografia
[1] Anind K. Dey. Providing architectural support for building context-aware aplications. PhD thesis, Georgia Institute of Technology, 2000. Director-Gregory D. Abowd. [2] Gamma, E., Helm, R., Johnson, R., and Vlissides, J.Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley. 1995