You are on page 1of 32

1

Tabla de contenido
Nota del Alumno sobre este anteproyecto .................................................................. 4 Introduccin a la Domtica........................................................................................... 5 Aplicaciones. ............................................................................................................. 6 Objetivo General ........................................................................................................... 7 Objetivos Especficos. ................................................................................................... 8 El Protocolo X10 Marco Histrico. .............................................................................. 10 Aspectos Tcnicos. .................................................................................................. 11 Arquitectura de la Domtica. ............................................................................. 11 Modelo de casos de uso. ........................................................................................ 12 Teora de la transmisin X10. ..................................................................................... 13 Introduccin a la PLC (Power Line Communications). ............................................ 13 Transmisin de datos de los dispositivos X10 ........................................................ 14 El punto cero de la corriente. ............................................................................. 14 Los cdigos .......................................................................................................... 16 Implementacin de control domtico con Java X10 .................................................. 19 Paquetes ................................................................................................................. 20 Jerarqua de Clases ................................................................................................. 20 Descripcin de los mtodos .................................................................................... 21 Paquete X10. ....................................................................................................... 21 Paquete X10.awt ................................................................................................. 22 Paquete X10.net ................................................................................................. 22 Paquete X10.util.................................................................................................. 23 El CM11A ................................................................................................................. 24 Esquema de funcionamiento. ............................................................................. 24 Desventajas del Estndar X10 ..................................................................................... 25 Colisiones. ............................................................................................................... 25 Interferencias en la lnea elctrica.......................................................................... 25

Estudio Paralelo. Arduino como complemento a X10 ................................................ 26 Estudio de factibilidad del Complemento. Uso de Sensores. ................................. 27 Carta Gantt general mensual. ..................................................................................... 28 Temtica y profundizacin del tema. ......................................................................... 29 Ingeniera de software aplicada a este proyecto ....................................................... 30 Prototipado evolutivo. ............................................................................................ 30 Referencias bibliogrficas para el anteproyecto. ....................................................... 32

Nota del Alumno sobre este anteproyecto

Este anteproyecto da una visual macro del proyecto y en ningn momento se pretendi profundizar en los temas. Sin embargo si se har un estudio y profundizacin completa en la memoria de ttulo. Por lo mismo se omitieron referencias a otros mdulos X10 a utilizar en la memoria de ttulo, as como circuitos, teoras, formulas, cdigo fuente, etc. Cabe destacar que aun existiendo memorias de ttulo de domtica en Chile, ninguna ha hecho un estudio profundo de la tecnologa X10 ya que no se dispone de hardware en Chile. Sin embargo existe un distribuidor oficial de X10 en argentina y fue el pas al cual se le compr los mdulos para el estudio. Aunque algunos no les parece el utilizar X10 como alternativa domtica por el concepto de privativo, se destaca el hecho que utilice la red elctrica para el envo de datos, precursor actual de una tecnologa emergente como lo es la banda ancha de internet por medio de la corriente elctrica, an desconocida en Chile. Esto, sumado a que no es necesario interferir en nada la arquitectura del hogar lo hace un sistema digno de estudiar. Sin embargo posee sus desventajas y esto ser tambin un tem de estudio. Tambin se pretende dar un estudio de factibilidad del sistema en los hogares chilenos, analizando todos sus pros y contras del mismo. Otro punto importante es la escritura de la memoria en Latex.

Introduccin a la Domtica.
Sea rey o aldeano, quien encuentra paz, comodidad y seguridad en su hogar es, de todos los hombres, el ms feliz. -Johann Wolfang von Goethe-

El trmino Domtica proviene de la unin de las palabras domus (que significa casa en latn) y tica (de automtica, palabra en griego, 'que funciona por s sola'). Se entiende por domtica al conjunto de sistemas capaces de automatizar una vivienda, aportando servicios de gestin energtica, seguridad, bienestar y comunicacin. Se podra definir como la integracin de la tecnologa en el diseo inteligente de un recinto. A pesar de que la domtica lleg a Chile a comienzos de los 90, recin despus de 15 aos comienza a ganar espacio en el mercado de los proyectos inmobiliarios. Los expertos aseguran que al 2015, la Domtica ser una realidad en un buen nmero de hogares chilenos y un signo de esta tendencia es que la oferta se ha diversificado, con soluciones ofrecidas por empresas como TecHome, BTicino, Entel PCS, Home Control o Secant, que compiten en este mercado. Los precios para aumentar el Coeficiente Intelectual de un hogar son todava altos los ms evolucionados dirigidos a proyectos inmobiliarios de no menos de 3.500 UF-, pero hay alternativas ms econmicas y sin modificar la red elctrica como los es la tecnologa X10, que se pueden incorporar a cualquier departamento o casa. Para que un sistema pueda ser considerado "inteligente" a de incorporar elementos o sistemas basados en las nuevas tecnologas de la informacin, cuyo uso en la vivienda genera nuevas aplicaciones y tendencias basadas en la capacidad de proceso de informacin y en la integracin y comunicacin entre los equipos e instalaciones. As concebida, una vivienda inteligente puede ofrecer una amplia gama de aplicaciones.

Aplicaciones.
Sus aplicaciones son mltiples, pero la magia de la automatizacin va mucho ms all de la iluminacin, facilitando la vida de las personas al dejarle las tareas triviales a la propia casa. Por ejemplo, segn la hora del da algunos sistemas son capaces de abrir o cerrar las persianas y cortinas o se les puede programar para que todas las maanas abran algunas ventanas para ventilar el hogar. Tambin la duea de casa se puede relajar con las labores del jardn porque el patio es regado dependiendo de la humedad del da, la lluvia y la temperatura para evitar que se active cuando est lloviendo o cuando hay una helada. Sin embargo y una de las aplicaciones atractivas y tomada en cuenta en la memoria de ttulo es la relacionada con la seguridad. Por ejemplo se puede simular que hay personas en la casa encendiendo luces y artefactos elctricos en forma aleatoria durante el da, al igual que en la pelcula Mi Pobre Angelito, finge estar acompaado por adultos, para engaar a los ladrones subiendo el volumen del televisor y utilizando figuras de cartn. Otro de los beneficios y tal vez el ms importante es el acceso a las personas con discapacidad. De hecho, mediante su celular pueden controlar la mayora de las funciones bsicas de una casa. Si nos damos cuenta incluso el solo hecho de encender una luz es un problema para las personas con silla de ruedas. Nuestra sociedad no est preparada para acoger a personas con discapacidad, por lo que entregar herramientas que permitan hacer la vida menos complicada a quienes lamentablemente deben movilizarse con silla de ruedas, es una responsabilidad social. Tambin podemos con un celular manejar el "centro de control" de una casa inteligente, abriendo incontables posibilidades. Y si esto no es suficiente tambin podemos controlar desde una pgina web las funciones de nuestro hogar. Imagine poder controlar la seguridad de su hogar desde su oficina.

Objetivo General
Estudio e implementacin de un sistema domtico basado en Tecnologas X10 para simulacin de actividad (seguridad), comodidad y mejoramiento de la calidad de vida de las personas con movilidad reducida. Estudio de Factibilidad de la tecnologa X10 en hogares Chilenos tanto en su aceptacin, costos, confiabilidad e instalacin.

Objetivos Especficos.

La propuesta va dirigida especficamente a 2 grupos de personas. Una de ellas y la de mayor importancia son aquellas personas con discapacidad para realizar ciertas actividades cotidianas. Dentro de este grupo de la poblacin es frecuente encontrarse con dificultades de interaccin con los objetos del hogar, como consecuencia directa o indirecta de la condicin particular del individuo. Actividades cotidianas de la vida en casa pueden tornarse una labor complicada. Lo anterior tambin es vlido para las personas afectadas por discapacidades temporales, que al tener que guardar reposo mdico o debido a fracturas ven restringida su movilidad. Tareas sencillas, como presionar el interruptor de una luz, abrir una puerta o ventana, utilizar una toma de corriente o alcanzar un control remoto pueden transformarse en tareas complicadas cuando se utiliza una silla de ruedas, un andador o si se debe permanecer inmvil debido al reposo mdico o a fracturas. Esto ocurre principalmente producto de la posicin del objeto o dispositivo en la vivienda (interruptores de luz, tomas de corriente, etc.) donde no se considera la utilizacin de stos por personas con limitaciones de movilidad. El segundo grupo de personas son aquellas que ven en la domtica una alternativa de confort y seguridad. Es solo cosa de imaginarse un escenario en la cual nos dirigimos a casa despus de una agotadora jornada laboral. Tener la posibilidad de mediante el celular o internet poder activar que al llegar a casa nos espere la radio encendida con nuestra msica favorita, una aclimatacin adecuada y el agua caliente en la baera. Es realmente un escenario de comodidad ideal. En el mbito de la seguridad podemos imaginar un escenario en la cual nuestro hogar queda solo mucho tiempo, un viaje quizs; nuestra casa queda expuesta al ojo vigilante de la delincuencia. Pero, si existiese actividad durante todo el da en el hogar es muy probable que sea mucho menos atractiva. Esto se puede lograr con la domtica. Encender luces de habitaciones distintas a intervalos aleatorios de tiempo, encender radios, televisin, etc. Actividad normal de una casa habitada. Si sumamos detectores de movimiento o integracin de cmaras esto se vuelve ms eficaz. Aunque suena muy bonito e interesante podra asaltarnos algunas dudas. Por qu si esta tecnologa existe, la domtica no forma parte de nuestras viviendas?, Es una tecnologa cara? Antiguamente s, pero en la actualidad se vuelve muy accesible y en muchos hogares de clase media estadounidenses es algo absolutamente normal. En Chile la domtica est ingresando recientemente y esto puede verificarse en algunas instalaciones del metro de Santiago y ciertos edificios y hogares acomodados. 8

En el objetivo de esta propuesta tambin se encuentra el estudio de factibilidad respecto a los costos, disponibilidad, arquitectura y aceptacin por parte de la sociedad chilena. Resumiendo, los puntos ms importantes para el desarrollo del proyecto son: Estudio Profundo de las tecnologas X10 para control domtico tal de comprobar su eficacia, futuras aplicaciones y factibilidad de implementacin en los hogares Chilenos. Lograr desarrollar un sistema de automatizacin de casas de costo accesible y de instalacin sin interferir la red elctrica del hogar. Disear y construir un sistema de Domtica que permita mejorar la calidad de vida de personas con limitaciones severas de movimiento. Disear y construir un sistema de Domtica que permita realizar simulaciones de actividad en el hogar, con esto se pretende disminuir el atractivo de una casa por parte de delincuentes. Diseo de un software Cliente- servidor de control Domtico basado en Java X10 para control de los mdulos X10 que componen el Domo-hogar. Implementacin de un programa para Celulares de Tercera Generacin basado en Java ME para controlar a distancia el hogar por medio de internet. Se habla de distancia no importando el lugar fsico, pudiendo estar perfectamente en un pas lejano y controlar su hogar con su celular. Se pretende como ideal incorporar el Hardware Arduino ya que es un hardware libre. En esta memoria de ttulo se analizar la convivencia de sensores Arduinos como complemento a los dispositivos X10. Se toma como un ideal por las siguientes razones: o Arduino se conecta a travs de cables. La idea de utilizar X10 era no utilizar cableado externo. Si bien existe una versin de Arduino que se conecta por bluetooth (DEV-08255) es caro y no se pretende incurrir en gastos altos sin probar que X10 con Arduino puedan convivir juntos. o No se ha encontrado informacin sobre la convivencia de Arduino y el CM11A de X10. Segn estudios de este anteproyecto, existe una versin de Arduino que utiliza un puerto USB (emulando el puerto serie) y eventualmente podra convivir con el puerto serie del CM11A. Se comprobar esta convivencia en la memoria y si no existe interbloqueo se utilizar en la maqueta.

El Protocolo X10 Marco Histrico.


X-10 ha cambiado mucho con el paso de los aos y yo he crecido con l. Tena 23 aos cuando me incorpor a Pico Electronic y eso fue hace 25 aos. He pasado ms de media vida con X10! Ha sido divertido durante estos 25 aos y estoy ansioso por ver que nos trae el futuro. Vicepresidente y Director Tcnico de X10 (EEUU)Inc.

En 1970 un grupo de ingenieros inici una compaa llamada Pico Electronics en Glenrothes, Escocia. Pico revolucion la industria de las calculadoras desarrollando el primer chip que funcionaba solo. (La mayora de las calculadoras de la poca usaban al menos cinco, stos eran los conocidos circuitos integrados, ICs). En 1974 los ingenieros de Pico se unieron al desarrollo de un cambiador de registros (record changer) que seleccionaba pistas de un vinilo de LP regular, ste fue denominado Accutrac y poda ser manejado a distancia con un control remoto basado en un dispositivo desarrollado por Pico usando seales ultrasnicas. Esto condujo directamente a la idea de controlar remotamente luces y aparatos. En 1975 el proyecto X10 fue concebido. (Corresponda al dcimo proyecto en que Pico trabajaba. Existan 8 diferentes proyectos de calculadoras IC y el Accutrac fue el proyecto X-9). El concepto de usar el cableado de corriente alterna existente para transmitir seales para controlar luces y aparatos naci. En 1978, luego de varios aos refinando la tecnologa, los productos X10 comenzaron a aparecer en las tiendas de Radio Shack. Se form una sociedad con BSR, conocida como X10 Ltd, y el sistema X10 BSR naci. Aquel sistema consista de una consola de comando de 16 canales, un mdulo Lmpara, y un mdulo Aparato. Pronto apareci el mdulo Interruptor de pared y el primer temporizador X10. En 1989, X10 introdujo el primer sistema de seguridad inalmbrico de bajo costo y de fcil instalacin. Que contena un discador por voz, sistema de monitoreo, entre otras caractersticas. En 1995, X10 configur su propia estacin de monitoreo llamado Orca en Seattle, Washington. Hoy este sistema monitorea los sistemas de seguridad desarrollados y manufacturados por X10 para Radio Shack, Phillips Consumer Electronics, (Magnavox) y el nuevo X10 Powerhouse.

10

Aspectos Tcnicos.
Arquitectura de la Domtica.

La solucin Domtica puede variar desde un solo mdulo que controle toda una casa o un conjunto de mdulos interconectados que trabajen en forma independiente. Segn diversas arquitecturas estudiadas escog la centralizada en la cual un controlador centralizado recibe informacin de mltiples sensores y, una vez procesada, genera las rdenes oportunas para los actuadores. Arquitectura Centralizada En un sistema de domtica de arquitectura centralizada, un controlador centralizado, enva la informacin a los actuadores e interfaces segn el programa, la configuracin y la informacin que recibe de los sensores, sistemas interconectados y usuarios.

Esquema de Arquitectura de Sistema Domtica Centralizada

11

Modelo de casos de uso.

12

Teora de la transmisin X10.


Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas. Albert Einstein.

Introduccin a la PLC (Power Line Communications).


Power Line Communications o servicio por lnea elctrica (PLC), tambin conocida como Lnea de energa Lnea de Abonado Digital (PDSL), red de comunicacin, telecomunicaciones de lnea de alimentacin (PLT), o la lnea elctrica de redes (PLN), es un sistema para transportar datos sobre un conductor. Tambin se utiliza para transmisin de energa elctrica. La energa elctrica se transmite a travs de lneas de transmisin de alto voltaje, distribuidos en bajo tensin media, y se utiliza dentro de los edificios y casas de bajo voltaje (110v-220v). Todas las comunicaciones de lnea elctrica de sistemas funcionan al excitar a una seal portadora modulada en el sistema de cableado. Los diferentes tipos de comunicaciones por lneas elctricas utilizan bandas de frecuencia diferentes, dependiendo de las caractersticas de la seal de transmisin de los cables de alimentacin utilizada. Dado que el sistema de cableado de alimentacin fue pensado originalmente para la transmisin de corriente alterna de uso convencional, los circuitos de alimentacin de alambre slo tienen una capacidad limitada para llevar a frecuencias ms altas. El problema de propagacin es un factor limitante para cada tipo de comunicaciones por lnea elctrica.

13

Transmisin de datos de los dispositivos X10


La comunicacin entre dispositivos X10 se hace a travs de la red elctrica inyectando y leyendo seales contenidas en sta. Las seales son transmitidas con rfagas de radiofrecuencia de 120kHz que representan la informacin digital. Esta forma de transmisin se llama PLC (PowerLine Carrier, ver introduccin al PLC). La transmisin de seales se sincroniza con el punto de cruce en cero de la corriente elctrica (de 50Hz a 60Hz). Se intenta transmitir lo ms cerca del punto cero como sea posible, pero se acepta una variacin de 200 microsegundos desde el punto cero.

El punto cero de la corriente.

Muchos circuitos electrnicos operan con doble polaridad, el detector de cruce por cero identifica el punto exacto cuando se produce el cambio de polaridad. Los detectores de cruce por cero se utilizan para detectar los tipos de seales, o diferentes significados de seales. Algo muy simple sera considerar una seal que 'en su parte positiva' indicar un 'uno lgico' y en su parte negativa un 'cero lgico'. El detector de cruce por cero es parte del circuito de deteccin 'por nivel' para determinar si se ha recibido un 'uno' o un 'cero'. Con seales analgicas los detectores de cruce por cero operan con formas de ondas mucho mas variantes que las del caso digital, se pueden utilizar para determinar el tipo de la forma de onda, el nivel promedio de la seal, ayudar a integrar o diferenciar seales, etc. En palabras simples, cuando se pasa de la zona positiva a la negativa o viceversa en una seal alterna. En el momento que se pasa por cero, existe un tiempo en que ninguno de los transistores est polarizado y la seal se distorsiona al mantenerse continua durante un instante en el nivel cero.

14

Figura: Forma de onda en transmisin X10.

Para representar el 1 binario se inyecta una rfaga de 120kHz de 1 milisegundo de duracin, est rfaga debe inyectarse en el punto cero de cruce de un medio ciclo de la corriente elctrica. Para compatibilidad con sistemas trifsicos el 1 binario se transmite 3 veces, como 3 rfagas de 120kHz para coincidir con el punto cero de las tres fases de la corriente. La ausencia de la rfaga de 120kHz representa el 0 binario. En la figura se observan las 3 rfagas para representar el 1 binario en relacin al punto cero de cruce de la corriente de 60Hz. Un 1 binario es representado por un pulso de un milisegundo en el punto de corte cero y un binario 0 por la ausencia de 120 KHz. Se modula sus entradas con 120 KHZ, por lo tanto solo 1 paquete necesita ser aplicado a las entradas.

Codificacin de un 1 binario.

Este pulso de 1 milisegundo deber de hecho ser transmitido tres veces para coincidir con los puntos de cortes cero de las tres fases en un sistema de distribucin de tres fases. 15

Los cdigos

Una transmisin de cdigo completa abarca once ciclos de la lnea elctrica. Los primeros dos ciclos representan un "Start Code". Los siguientes cuatro representan el "House Code" y los ltimos cinco ciclos representan un Number Code (1 hasta 16) o un Function Code (On, Off, etc). Este bloque completo (Start Code, House Code, Key Code) debera ser siempre transmitido en grupos de dos con tres ciclos de la lnea elctrica entre cada grupo de dos cdigos. Bright y dim son excepciones a esta regla y deberan ser transmitidos continuamente (al menos dos veces) sin saltos entre cdigos.

Codificacin de una seal completa

En cada bloque de datos, cada cuatro o cinco bits de cdigo, debe transmitirse y de forma complementaria en cada medio ciclo de corriente siguiente dejar de transmitir. Por ejemplo si cada 1 milisegundo representa una seal transmitida en medio ciclo (1 binario), despus ninguna seal debe transmitirse en el siguiente medio ciclo (0 binario).

Tabla de cdigos de Hogar.

16

A cada unidad que exista en la casa (sensor, dimmer, persiana, etc.) se le asigna un cdigo de casa y un cdigo llave. Esta unidad slo responder a la unidad central cuando sus cdigos de casa y llave coincidan con los de la peticin. Si hay alguna unidad que tenga los mismos cdigos que otra, ambas respondern al llamado. Se tienen 16 posibles cdigos de casa y 16 posibles cdigos llave para una unidad, con estas combinaciones se pueden controlar 256 unidades en total en una instalacin elctrica. Cada ciclo de corriente alterna tiene un lado positivo y un lado negativo. Cada uno de estos lados es capaz de transportar un bit. El cdigo de inicio '1110' se transmite dentro de 2 ciclos de onda, es decir, 4 semiciclos, cada uno conteniendo un bit.

Tabla de cdigos de llave.

17

Los cdigos de las tablas 1 y 2 se transmiten de forma diferente. Para transmitir un bit es necesario que haya 2 cruces por cero, es decir, un ciclo de onda. Primero se transmite el bit en el lado positivo de la onda, y en el lado negativo se transmite el bit complemento. Un bloque completo de datos consiste en el cdigo de inicio, el cdigo de casa, el cdigo llave y el sufijo. Cada bloque de datos es enviado dos veces, con 3 ciclos de onda entre cada par de bloques de datos. Por ejemplo, para encender un mdulo X-10 asignado a casa A, unidad 2, el siguiente tren de datos debe ser mandado sobre la lnea elctrica, un bit enviado por cada cruce por cero.

18

Implementacin de control domtico con Java X10


Primero resuelve el problema. Entonces, escribe el cdigo. John Johnson

Java X10 es una librera para controlar los mdulos CM11A y CM17A. Este permite controlar dispositivos X10 desde programas Java a travs de un puerto serial. Para controlar los dispositivos necesitamos variables de nmero de dispositivo y casa, para ello contamos con las siguientes variables:
public static enum MODE {CM11A, NET} public static int maxDimsCM11A = 22; public static int maxDimsNet = 210; /*Variables para cdigos de dispositivos*/ public static final int X10_DEVICE_CODE_1 public static final int X10_DEVICE_CODE_2 public static final int X10_DEVICE_CODE_3 public static final int X10_DEVICE_CODE_4 /* 5,6,7 ...16*/ public static final int X10_DEVICE_CODE_16 /*Variables para cdigos de casa*/ public static final int X10_HOUSE_CODE_A = public static final int X10_HOUSE_CODE_B = public static final int X10_HOUSE_CODE_C = /* 4,5,6...16*/ public static final int X10_HOUSE_CODE_P =

= = = =

1; 2; 3; 4;

= 16; 1; 2; 3; 16;

Implementando podemos controlar las variables para los mdulos X10 por medio de la CM11A.
public public public public public public public public static static static static static static static static final final final final final final final final byte byte byte byte byte byte byte byte X10_FUNCTION_ALL_UNITS_OFF = (byte)0; X10_FUNCTION_ALL_LIGHTS_ON = (byte)1; X10_FUNCTION_ON = (byte)2; X10_FUNCTION_OFF = (byte)3; X10_FUNCTION_DIM = (byte)4; X10_FUNCTION_BRIGHT = (byte)5; X10_FUNCTION_ALL_LIGHTS_OFF = (byte)6; X10_FUNCTION_EXTENDED_CODE = (byte)7;

: public static final byte X10_FUNCTION_STATUS_OFF = (byte)14; public static final byte X10_FUNCTION_STATUS_REQUEST = (byte)15;

Necesitamos implementar las funciones de los mdulos (apagar, apagar todas, control de brillo, etc.).

19

Paquetes
x10 x10.awt x10.net x10.util API del ncleo para la construccin de software basado en mdulos de X10, y as poder comunicarse con el hardware basado en mdulos de X10. API para la construccin AWT basado en X10 en mdulos y controladores virtuales. Cliente de red y las clases de servidor que utilizan la base X10 API para proporcionar control de X10 en una red. Utilidades utilizadas por los paquetes de X10.

Jerarqua de Clases
o

class java.lang.Object o class x10.CM11ASerialController (implements x10.Controller, java.lang.Runnable) o class x10.CM17ASerialController (implements x10.Controller, java.lang.Runnable) o class x10.Command (implements java.io.Serializable) o class java.awt.Component (implements java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable) o class java.awt.Container o class java.awt.Panel (implements javax.accessibility.Accessible) o class x10.awt.UnitPanel (implements x10.UnitListener) o class x10.awt.ApplianceUnitPanel (implements java.awt.event.ActionListener) o class x10.awt.ApplicationUnitPanel (implements java.awt.event.ActionListener, java.lang.Runnable) o class x10.awt.LightUnitPanel (implements java.awt.event.ActionListener, java.awt.event.AdjustmentListener) o class x10.awt.MasterUnitPanel (implements java.awt.event.ActionListener) class x10.util.LogHandler class x10.net.SocketController (implements x10.Controller, java.lang.Runnable) class java.lang.Thread (implements java.lang.Runnable) o class x10.net.ControllerServer o class x10.net.ServerDispatchProxy (implements x10.UnitListener) o class x10.UnitEventDispatcher class x10.util.ThreadSafeQueue class java.lang.Throwable (implements java.io.Serializable) o class java.lang.Exception o class x10.OperationTimedOutException class x10.UnitEvent (implements java.io.Serializable)

20

Descripcin de los mtodos


Paquete X10.

API del ncleo para la construccin de software basado en mdulos de X10, y comunicarse con el hardware basado en mdulos de X10.

Resumen de la interfaz
Controller Controller es implementado por cualquier clase que pueda actuar como un punto de entrada para el control de los dispositivos x10. UnitListener es la interfaz implementada por los objetos que quieren recibir UnitEvents.

UnitListener

Resumen de la clase
CM11ASerialController es un controlador X10 que puentea CM11ASerialController el hardware y software x10 mediante la comunicacin a travs de un puerto serie con el mdulo "CM11A". CM17ASerialController es un controlador X10 que puentea el CM17ASerialController hardware y software X10 mediante la comunicacin a travs de un puerto serie con el mdulo x10 "fireCracker". Command UnitEvent Representa un comando X10. UnitEvent es un evento que representa un cambio en el estado de hardware x10, o un mdulo de software. UnitEventDispatcher llama a cada UnitListener registrado cuando un evento entra en funcionamiento.

UnitEventDispatcher

Resumen de excepcin
OperationTimedOutException Es una excepcin que se produce cuando una operacin caduca dentro de su tiempo de ejecucin asignado. 21

Paquete X10.awt API para la construccin AWT basado en mdulos X10 y controladores virtuales.

Resumen de la clase
ApplianceUnitPanel ApplianceUnitPanel es un panel basado en AWT que se puede utilizar para controlar un mdulo de aparato X10. ApplicationUnitPanel es un UnitPanel que puede ser utilizado para ejecutar programas externos. LightUnitPanel es un panel basado en AWT que se puede utilizar para controlar un mdulo de lmpara X10. MasterUnitPanel es un panel basado en AWT que se puede utilizar para controlar todos los mdulos X10 conectado. UnitPanel es la superclase extendida por todos los paneles de AWT x10 para unidades virtuales.

ApplicationUnitPanel

LightUnitPanel

MasterUnitPanel

UnitPanel

Paquete X10.net Clases de cliente y servidor de red que utilizan la base X10 API para proporcionar control de X10 en una red.

Resumen de la clase
ControllerServer ControllerServer es un demonio de red para proporcionar acceso a un controlador en una red. ServerDispatchProxy es el servidor proxy de eventos que recibe rdenes del SocketController asignados a este objeto. SocketController es un controlador client-side virtual que se conecta a un ControllerServer a travs de socket TCP.

ServerDispatchProxy

SocketController

22

Paquete X10.util

Utilidades que son llamados por los paquetes de X10.

Resumen de la clase
LogHandler LogHandler proporciona una API simple y estndar para el manejo de registro de eventos de aplicacin. ThreadSafeQueue se trata de una implementacin de una estructura de datos FIFO.

ThreadSafeQueue

23

El CM11A

El dispositivo CM11A se destina a monitorear y comunicarse con otros dispositivos X10 en la lnea elctrica. Tiene memoria interna en la que las macros pueden ser almacenadas. Una macro funciona as: se activa cuando se recibe un cdigo de unidad determinado para un determinado cdigo de casa, ser entonces la salida de una secuencia de cdigos a otras unidades de X10, para que un interruptor de luz pueda utilizarse para desencadenar una secuencia completa de los acontecimientos. El CM11A tiene batera de respaldo para que se almacene las macros cuando el computador est apagado o incluso en los cortes de energa. El software le permitir programar las macros, controlar los dispositivos X10, etc. La interfaz utiliza 4800 baudios, bastante lento para los estndares de hoy sin embargo para efectos prcticos funciona. En segundo lugar, tiene un tamao mximo de bfer de 10 bytes. Puesto que cada seal X10 se compone de mltiples bytes, y dado que la velocidad de transmisin es lenta, el software utilizando el CM11A debe ser escrito para realizar la transmisin de datos desde el PC a la CM11A como prioridad alta.

Esquema de funcionamiento.

Serial - RJ11 Interfaz CM11A

PC CON SOFTWARE JAVA ENVA LAS INSTRUCCIONES AL CM11A. ESTE A SU VEZ ENVA LAS INSTRUCCIONES A LOS MDULOS X10.

24

Desventajas del Estndar X10


Un pesimista es un optimista con experiencia Franois Truffaut.

Colisiones.
El protocolo X10 estndar, vigente desde 1978, no recoge ningn tipo de protocolo de acceso al medio, como podra ser CSMA/CD 3. Sin embargo, el protocolo X10 extendido bidireccional, que ahora empieza a surgir en los nuevos mdulos, si es que dispone de un protocolo de acceso al medio CSMA4, que hace que un emisor escuche la lnea elctrica para saber si en el momento de transmitir ya est transmitiendo otro emisor. En este caso, esperara un tiempo prudente para volver a intentar transmitir. Los nuevos mdulos X10, son bidireccionales y utilizan este protocolo que, por otra parte, permite conocer el estado del receptor en caso de ser tambin bidireccional. Es interesante resaltar que en EEUU los mdulos bidireccionales han sido un fiasco comercial, ya que a la gente no le interesa la bidireccionalidad (porque es ms cara) sino la prctica, facilidad de uso, y desde luego el econmico precio de la tecnologa X10.

Interferencias en la lnea elctrica.


La transmisin de seales de pulsos a alta frecuencia a travs de la red elctrica puede verse afectada por interferencias. Las fuentes tpicas que producen interferencias son aparatos elctricos como TV, VCR, equipos de sonido, computadoras, monitores, transformadores, etc. Aunque muchos de los nuevos aparatos electrnicos que se utilizan para uso domiciliario utilizan circuitos para evitar sus ruidos elctricos. Cuando el ruido elctrico es grande, esto puede afectar las seales enviadas por los dispositivos X10.

25

Estudio Paralelo. Arduino como complemento a X10


Arduino es una plataforma de hardware libre basada en una sencilla placa de entradas y salidas simple y un entorno de desarrollo que implementa el lenguaje de programacin Processing/Wiring. Arduino se puede utilizar para desarrollar objetos interactivos autnomos o puede ser conectado a software del ordenador (por ejemplo: Macromedia Flash, Processing, Max/MSP, Pure Data). Las placas se pueden montar a mano o adquirirse. El entorno de desarrollo integrado libre se pueden descargar gratuitamente.

Esquema de tarjeta Arduino.

Las plataformas Arduino estn basadas en los microcontroladores Atmega168 o en el ATmega8, chips sencillos y de bajo coste que permite el desarrollo de mltiples diseos. Al ser open-hardware, tanto su diseo como su distribucin es libre. Es decir, puede utilizarse libremente para el desarrollo de cualquier tipo de proyecto sin haber adquirido ninguna licencia. El proyecto Arduino recibi una mencin honorfica en la categora de Comunidades Digital en el Prix Ars Electronica 2006 (en ingls). Consta de 14 entradas digitales configurables entrada i/o salidas que operan a 5 voltios. Cada pin puede proporcionar o recibir como mximo 40 mA. 26

Estudio de factibilidad del Complemento. Uso de Sensores.


El estudio de factibilidad incluye el utilizar hardware no diseado para X10 como complemento del mismo. La idea principal es utilizar los sensores tradicionales en conjunto con Arduino tal que sirva de alimentador de informacin para los mdulos X10. En el peor de los casos, el conector USB de Arduino (que es en realidad serie) sera mutuamente excluyente con el CM11A Serie.

Photocell: Esta es una clula fotoelctrica muy pequea (tambin llamada una clula fotoelctrica, CDs o clula fotoconductora) ofrece resistencia en funcin de la cantidad de luz que est expuesto. Al detectar cierta cantidad de iluminacin la luz artificial podra realizar una variacin automtica de intensidad por medio del Mdulo de lmpara Lm465 X10. Esto a decisin del usuario. Thermistor: Se utiliza como sensor de Temperatura, bajo ciertas condiciones enviara un comando a los mdulos de aplicacin X10 que estn conectados a, por ejemplo, el aire acondicionado. Movimiento: Sensor de movimiento que podra gatillar una accin especfica en el sistema. Se determinar a lo largo de la memoria de ttulo cuales seran las alternativas de respuesta ideales. Si esto funciona podra reemplazar mdulos X10 ms costosos que controlan movimiento, temperatura y otros. Sin embargo a pesar de ser ms costosos tienen el beneficio de no utilizar cables visibles ni instalaciones en el hogar. El pro es el bajo costo de utilizar Hardware abierto.

27

Carta Gantt general mensual.


Esta es una carta Gantt general. Los rombos rojos representan hitos del proyecto.

28

Temtica y profundizacin del tema.


TEMA EN FORMA MACRO
Teora de la transmisin X La Domtica (Como tema) X La Discapacidad (Como tema) X El Estndar X10 (Anlisis terico y clculos) X Mdulos X10 y circuitos X Java X10 Java ME Maqueta (Prototipo real) X Estudio de factibilidad de la tecnologa. X Arduino (sensores) X Estudio de circuitos utilizados Control de dispositivos X10 Latex Otros: X X X X X

baja

media

alta
X

Muy alta

El grado de profundizacin indica en qu nivel el tema ser estudiado e incorporado en la memoria de ttulo. Un nivel bajo significa que el estudio ser incluido, pero que tiene un menor estudio y/o inclusin en la memoria con respecto a los dems temas, sin embargo, esto no refleja en absoluto su grado de importancia en el proyecto.

29

Ingeniera de software aplicada a este proyecto


Dado que este proyecto abarca tanto el estudio como la interaccin directa entre software hardware es necesario determinar etapas intermedias que permitan una apreciacin de los avances del proyecto. Es por ello que decido elegir el modelo de prototipos de ingeniera de software entregando avances por etapas de proyecto hasta concluir en una maqueta final.

Prototipado evolutivo.
Mediante el diseo rpido, se crea una representacin de aquellos aspectos del software y hardware que sern visibles para el cliente o el usuario final (por ejemplo, la configuracin de la interfaz de usuario controlando el hardware). El diseo rpido conduce a la construccin de un prototipo, el cual es evaluado por el usuario para una retroalimentacin; gracias a sta se refinan los requisitos del software que se desarrollar. La iteracin ocurre cuando el prototipo se ajusta para satisfacer las necesidades del cliente. Esto permite que al mismo tiempo el desarrollador entienda mejor lo que se debe hacer y el cliente vea resultados a corto plazo. Un ejemplo de primera etapa sera la comunicacin directa entre la programacin y el controlador CM11A para desarrollar un segundo prototipo que permita visualizar como el controlador CM11A enva comandos a los mdulos de aplicacin. En una tercera etapa se podra utilizar los sensores que alimentan ciertas respuestas de reaccin a los dispositivos de aplicacin y/o control de luces. En una cuarta etapa sera el ambiente completo en la cual mediante el celular podemos controlar los diversos dispositivos y as sucesivamente. La clave es definir las reglas del juego desde el principio; es decir, el cliente y el desarrollador se deben poner de acuerdo en: Segn los requisitos a qu nivel de avance se presentar el prototipo. Que el prototipo se descarte, al menos en parte segn su complejidad para derivar en dos sub prototipos de menor plazo de presentacin. Que despus se desarrolle el software real con un enfoque hacia la calidad.

30

El modelo es til si el cliente conoce los objetivos generales del proyecto, pero no identifica los requisitos detallados de entrada, procesamiento o salida. Tambin ofrece un mejor enfoque cuando el responsable del desarrollo del proyecto est inseguro de la eficacia de un algoritmo, de la adaptabilidad de un sistema operativo (compatibilidad con ciertas plataformas respecto a puertos) o de la forma que debera tomar la interaccin humano-mquina como sera en este caso de estudio de nuevas tecnologas emergentes no comunes en Chile. La construccin de prototipos puedo utilizarlo como un modelo del proceso independiente, en la cual establezco los lmites tcnicos factibles de implementarse dentro del contexto de cualquiera de los modelos del proceso expuestos. Sin importar la forma en que ste se aplique, el paradigma de construccin de prototipos nos ayudara a entender de mejor manera cul ser el resultado de la construccin cuando los requisitos estn satisfechos. Sin embargo a travs del proceso el o los usuarios (en este caso el profesor gua y la empresa interesada) pueden tender a crearse ciertas expectativas cuando ve el prototipo de cara al sistema final. A causa de la intencin de crear un prototipo de forma rpida, se suelen desatender aspectos importantes, tales como la calidad y el mantenimiento a largo plazo, lo que obligara en la mayor parte de los casos a reconstruirlo una vez que el prototipo ha cumplido su funcin. Esto se pretende evitar a toda costa priorizando la factibilidad y eliminando los obstculos que se puedan encontrar al tratar de optimizar el proyecto para ciertos casos que escapan al estudio principal. Como ejemplo se puede dar el caso de probar el proyecto en un escenario real en el cual es necesario determinar el nivel de ruido elctrico que interferira negativamente en los dispositivos obligando a adquirir un dispositivo atenuador de ruido que por limitaciones econmicas no podra satisfacerse a corto plazo influyendo negativamente en el avance del proyecto. Aun cuando estos casos se deben contemplar y destacar no todos los casos pueden ser cubiertos dada la envergadura del proyecto, adems en favor de desarrollar rpidamente el prototipo, se podran tomar algunas decisiones de implementacin poco convenientes (por ejemplo, elegir un lenguaje de programacin o forma de modelado incorrecto porque proporcione un desarrollo ms rpido).

31

Referencias bibliogrficas.

X10 WorldWideWeb (1998). X10 Transmission Theory. Disponible en:


http://www.x10.com/support/technology1.htm

Wikipedia: Domtica http://es.wikipedia.org/wiki/Dom%C3%B3tica Smart Home Systems. The X10 History. 2004. Disponible en:
http://www.smarthomeusa.com/info/x10story/x10story/

Eward B. Driscoll Jr. the history of X10. Disponible en:


http://home.planet.nl/~lhendrix/x10_history.htm

Automatizacin del Hogar, Casa Domo.


http://www.casadomo.com/noticiasDetalle.aspx?c=14

Power Line Comunicators.


http://en.wikipedia.org/wiki/Power_line_communication#Internet_access_.28broa dband_over_powerlines.2C_BPL.29

The X10 Package: http://www.agaveblue.org/projects/x10/docs/ El Proceso Unificado de desarrollo de Software. Addison Wesley. Fondo Nacional de la Discapacidad, Chile http://www.fonadis.cl Digital Transmission Theory. Prentice Hall, 1987, 784 pages, English Getting Started with Arduino. Author: Massimo Banzi. ISBN: 9780596155513 Protecting domestic power-line communications. ISBN:1-59593-448-0 Publisher ACM New York, NY, USA Ingeniera del software. Un enfoque prctico (sexta edicin), R. S. Pressman. McGraw Hill

32