Vous êtes sur la page 1sur 51

Casa inteligente y segura

Universidad aUtnoma de CiUdad JUrez

Javier snchez Carlos Rector david ramrez Perea Secretario General antonio Guerra Jaime Director del Instituto de Ingeniera y Tecnologa martha Patricia Barraza de anda Coordinadora General de Investigacin y Posgrado servando Pineda Jaimes Director General de Difusin Cultural y Divulgacin Cientfica

Universidad Autnoma de Ciudad Jurez

Casa inteligente y segura

Jenaro Carlos Paz gutirrez Jess rodarte dvila riCardo enrique Prez BlanCo

rea: ingeniera y tecnologa

CoordinaCin General de investiGaCin y PosGrado Lisbeily Domnguez Ruvalcaba Coordinadora de la ColeCCin

Paz Gutirrez, Jenaro Carlos. Casa inteligente y segura / Comp. Jenaro Carlos Paz Gutirrez, Jess rodarte, ricardo Prez Blanco. Ciudad Jurez, Chih. : Universidad autnoma de Ciudad Jurez, 2010. (Coleccin textos Universitarios, serie investigacin) 50 p.; 30cm. incluye bibliografa Coleccin reportes tcnicos de investigacin isBn: 978-607-7953-80-7 serie iit, vol. 1, isBn: 978-607-7953-85-2 durante el proyecto con duracin de ocho meses, se trabaj con dispositivos como el arduino, el XPort de Lantronix, el Wiznet, las tablillas shield para ambos, el dispositivo PsC05 de X10, la programacin en lenguaje C++ con varias bibliotecas de funciones que ha desarrollado la comunidad mundial y el propio cdigo embebido en dispositivos para controlarlos. se desarrollaron nuevos dispositivos a partir de unos ya existentes, y se configuraron con nuevas partes, alambrados y programacin para que los obtenidos permitan adaptarlos a las necesidades del entorno, para hacer una casa inteligente y segura. domtica investigacin edificios inteligentes investigacin vivienda innovaciones tecnolgicas investigacin tK7881.25 P47 2010

d.r. 2011 Jenaro Carlos Paz Guitirrez, Jess rodarte dvila, ricardo enrique Prez Blanco La edicin, diseo y produccin editorial de este documento estuvo a cargo de la direccin General de difusin Cultural y divulgacin Cientfica, a travs de la subdireccin de Publicaciones Correccin: Jorge Hernndez martnez Diagramacin: diana Prado Gonzlez Diseo de cubierta: diana Prado Gonzlez
Primera edicin, 2011 2011 Universidad autnoma de Ciudad Jurez av. Plutarco elas Calles 1210 Fovissste Chamizal, C.P. 32310 Ciudad Jurez, Chihuahua, mxico tel. +52 (656) 688 2260 http://www2.uacj.mx/publicaciones

rti-Fi-001

ndiCe
Resumen Abstract Palabras clave Usuarios potenciales Reconocimientos 9 11 12 12 12

i. introduCCin
1.1 Descripcin del proyecto 1.2 Justificacin del proyecto 13 13

ii. Planteamiento
2.1 Antecedentes y marco terico 2.2 Qu es el Tnel Serial? Figura 1. Conexin entre dos servidores de dispositivos 2.3 Qu es X10? Figura 2. Ejemplo de una instalacin X10 2.4 Qu es HTTP? 2.4.1 Qu son los recursos? 2.4.2 Estructura de las transacciones HTTP 2.5 Descripcin Figura 3. Diferentes tipos de Arduinos 2.5.1 Configuracin de entradas y salidas 2.5.1.1 Elementos con los que se puede interactuar Figura 4. Pins de configuracin tomando como ejemplo la placa USB 2.5.2 Tipos de placas 2.5.2.1 Placa serie 2.5.2.2 Placa USB 2.5.2.3 Placa de prototipos 15 15 17 17 18 18 18 19 19 20 20 20 20 21 21 21 21

2.5.2.4 Bluetooth 2.5.2.5 XBee 2.5.2.6 ArCan 2.6 Arduino Ethernet Shield Figura 5. Ethernet Shield, mdulo para Arduino 2.6.1 Configuracin de pins Motores paso a paso Figura 6. Rotor Figura 7. Estator y bobinas Figura 8. Conexiones de nuestro motor 2.7 Secuencia para el manejo de motores paso a paso Cmara de video IP 2.8 Cmara AIRLINK AIC250W inalmbrica Figura 9. Cmara de video IP

21 21 22 22 22 22 23 24 24 24 24 25 25 26

iii. metodologa
3.1 Control de luces y dispositivos elctricos mediante un Arduino y un mdem PSC05 de X10 Figura 10. Cable con conector RJ11 Figura 11. Mdem PSC05 Figura 12. Mdulo de lmpara LM465 3.2 Procedimiento Figura 13. El circuito impreso Figura 14. Arduino alambrado al mdem PSC05 Figura 15. Mdem PSC05 de X10 Figura 16. Conexin del cable telefnico al mdem PSC05 Figura 17. Cargando el programa al Arduino Tabla 1. Cdigo embebido en Arduino para prender y apagar dispositivos Tabla 2. Cdigo embebido en Arduino para control de luces Figura 18. La lmpara comienza a incrementar su intensidad 3.3 Envo de correo electrnico cuando un sensor de movimiento se activa Figura 19. Arduino Mega y Duemilanove Figura 20. Mdulo Lantronix para Arduino Figura 21. Configuracin de Lantronix mediante DeviceInstaller 4.2 Tabla 3. Cdigo de Arduino para interactuar con Lantronix y Arduino Mega 27 27 28 28 28 29 29 30 30 31 32 33 34 34 34 35 36 37

iv. resultados
Figura 22. Correo electrnico recibido por interesados 39

v. ConClusiones
Bibliografa Anexo 1 Conexin entre mdulos Figura 1. Diagrama de alambrado entre Arduino Mega y un mdem PSC05 Anexo 2 Controlador para motor paso a paso Figura 1. LM7805, regulador de voltaje de 5V, 1A Figura 2. 74HC595 Figura 3. Estructura interna de un transistor tipo Darlington Figura 4. Conexiones del ULN2803 y los motores unipolares paso a paso Figura 5. Circuito de tablilla controladora 43 45 45 45 46 46 46 47 48 48 49

resumen

l problema de robo a casa-habitacin es, en la actualidad, si no el ms grave, s el que tiene un mayor ndice delictivo. de acuerdo al Bur Federal de investigacin (FBi, por sus siglas en ingls), un robo ocurre cada 15.4 segundos en estados Unidos. Las estadsticas nos dicen que el 70% de los ladrones, utilizan algn tipo de fuerza para ingresar a una vivienda, pero su preferencia es ganar acceso fcil a travs de una puerta o ventana abierta. Herramientas caseras como destornilladores, pinzas de corte, pequeas barras como palanca y martillos pequeos, son los ms utilizados por los maleantes. esta modalidad de robo, se considera en aumento, dado que la polica slo puede aclarar alrededor del 13% de todos los robos denunciados y rara vez atrapa al ladrn en el acto. este problema se magnifica en Ciudad Jurez, donde el robo a casas-habitacin, oficinas, comercios, empresas y organizaciones en general, se estima que rebasa los promedios nacionales como en muchos otros renglones relacionados con la inseguridad de la poblacin. existen en la ciudad empresas que proporcionan servicios de monitoreo, que haciendo uso de dispositivos de deteccin de movimiento o apertura de puertas y ventanas, mandan una seal va telefnica local a la central y sta al contratante y a los servicios de seguridad pblica. dependiendo de la organizacin, es el cobro que se hace por los servicios de monitoreo y la instalacin del equipo. el ms bajo puede ser de $500.00 al mes y de $3500.00 en una exhibicin, con contratos de uno o dos aos. La domtica (casa robot) abarca todas las fases de la tecnologa de hogar inteligente, incluidos los sensores altamente sofisticados y controles que automatizan la temperatura, iluminacin, sistemas de seguridad y muchas otras funciones. Un sistema de seguridad de una manera econmica, a mediano plazo, se implementa para esta fase de casa inteligente, el cual est formado por una red de sensores de movimiento con comunicacin, a travs de la red de alimentacin de la casa, con el uso del protocolo X10, logrando un proceso de enlace a un sistema de hardware libre arduino, para que ste, a su vez, sirva como interfaz al entorno del hogar y tambin a la Web.

10

Con el crecimiento que han tenido los servicios de internet y la gran expansin de esta red, hoy en da una gran cantidad de hogares de clase media y alta, cuentan con una conexin 24/7 para navegar y hacer consultas en muy diversos sitios, segn las preferencias de los cibernautas. Por otro lado, los proveedores de equipo cada da van incorporando nuevos dispositivos, que de una u otra forma, mediante diferentes protocolos, pueden comunicarse entre ellos o enlazarse a internet para poner a disposicin algn tipo de servicio o informacin. aunado a lo anteriormente expuesto y con el surgimiento de sistemas Web embebido como Lantronix; sistemas de comunicacin de bajo consumo, como el zigBee; y tecnologas o protocolos, como UPnP, bluetooth, tCP/iP, X10 y ms, que pudiendo interconectarse, adaptarse y programarse, nos permiten producir verdaderas soluciones a diferentes problemas de la vida diaria. desde hace varios aos, han surgido en el mercado tecnologas que pueden conjuntarse para prestar un servicio de monitoreo para seguridad, que haga uso de internet ya instalado en el lugar, proveyendo al usuario final con notificaciones y vigilancia los 365 das del ao las 24 horas, prescindiendo as de la contratacin de compaas externas, con la finalidad de bajar costos y contar con informacin en el momento, inclusive en el propio telfono celular. este sistema de seguridad interactivo propuesto, tiene inicialmente un costo mayor al que se dara con la contratacin de servicios de seguridad privada; sin embargo, ya realizada la inversin, se considera poder cubrir sus costos en aproximadamente tres aos, por lo que quedara el usuario libre de rentas y con un potencial enorme de hacer crecer este sistema.

Casa inteligente y segura

aBstraCt

ouse robbery is today a problem, currently not very serious, but it has a higher crime rate. according to the Federal Bureau of investigation (FBi), a burglary occurs every 15.4 seconds in the United states. statistics tell us that 70% of thieves use some sort of force to enter a home, but their preference is to gain easy access through an open door or window. Household tools, such as screwdrivers, cutting pliers, small bar clamps as lever, and small hammers are the most frequently used by burglars. this type of theft is considered on the rise since the police can only clear only around 13% of all robberies reported and rarely catch the thief in the act. this problem is magnified in Ciudad Jurez where theft to homes, offices, shops, businesses and organizations, is in general estimated to exceed national averages, as in many other lines related to insecurity among the population. there are city companies like adt that provide monitoring services using motion detection or devices when a door or window is opened, sending a signal via local telephone central to the contractor and then to public safety services. depending on the organization is the collection that is done by monitoring services and equipment installation. the lowest can be $40.00 Usd per month and up to $280.00 Usd on an exhibit with a contract by one or two years. domotics (robot house) covers all phases of smart home technology, including highly sophisticated sensors and controls to automate the temperature, lighting, security systems and many other features. a security system in an economical manner, in the medium term, is implemented for this phase of smart home, which form a network of motion sensors in conjunction with the power supply of the house, using the X10 protocol, achieving a binding process to a system of free hardware arduino. this serves as an interface to the home environment and the World Wide Web. With the growth shown by the internet service and the great expansion of this network, at present, a large number of middle and upper classes households have a connection 24/7 for browsing and querying in many different places depending on the
11 resumen

12

preferences of internet users. on the other hand, equipment suppliers every day incorporate new devices which in one way or another, using different protocols, can communicate with each other or link to the internet to make available any information or service. in addition to the above, and the emergence of Web systems embedded as Lantronix, low power consumption communication systems such as zigBee, and technologies or protocols such as UPnP, Bluetooth, tCP/iP, X10 and more that can interconnect, tailored and programmed allow us to produce real solutions to various problems of daily life. For several years there have been on the market technologies that can be combined to provide a security monitoring service to make use of the internet already installed on site, providing end users with notifications and surveillance 24 hours and 365 days a year, thus ignoring the hiring of outside companies in order to cut costs and obtain information at the moment, even in your own cellular phone. However, this interactive security system proposed in a home is initially at a higher cost that would occur with the hiring of private security services, because it includes the use of a Web camera, making iterative surveillance. Furthermore already made the investment, is considered to cover the costs in approximately three years, so the user would be free of income and with a huge potential to grow the system facilities.

Palabras clave:
domtica, tCP/iP, X10.

Usuarios potenciales:
Casas-habitacin, comercios, instituciones pblicas (escuelas, hospitales, etctera).

Reconocimientos:
nuestro agradecimiento al departamento de ingeniera elctrica y Computacin, por las facilidades brindadas para la realizacin del proyecto; al Laboratorio de elctrica y el Centro de Cmputo avanzado, por su tiempo; a los alumnos nidia Carolina verdugo Gonzlez y surinam zambrano snchez.

Casa inteligente y segura

i. introduCCin

1.1 Descripcin del proyecto

l problema de inseguridad en la repblica mexicana, es uno de los ms graves con que cuenta la poblacin. ste se magnifica en Ciudad Jurez, donde el robo a casas-habitacin, oficinas, comercios, empresas y organizaciones en general, se estima que rebasa los promedios nacionales como en muchos otros renglones relacionados con la inseguridad de la poblacin. existen en la ciudad negocios de monitoreo, que haciendo uso de dispositivos de deteccin de movimiento o apertura de puertas y ventanas, mandan una seal va el servicio telefnico local a la central y sta al contratante y a los servicios de seguridad pblica. dependiendo de la organizacin, es el cobro que se hace por los servicios de monitoreo y la instalacin del equipo. el ms bajo puede ser de $500.00 al mes y hasta de $3500.00 en una exhibicin, con contratos de uno o dos aos. La UaCJ cuenta con varios sistemas de monitoreo en sus instalaciones y, por consiguiente, tiene que realizar un pago mensual por el servicio, el cual asciende a varios miles de pesos.

1.2 Justificacin del proyecto


desde hace varios aos, han surgido en el mercado tecnologas que pueden conjuntarse para prestar un servicio de monitoreo para seguridad, que haga uso de internet ya instalado en el lugar, proveyendo al usuario final con notificaciones y vigilancia los 365 das del ao las 24 horas, prescindiendo as de la contratacin de compaas externas, con la finalidad de bajar costos y contar con informacin en el momento, inclusive en el propio telfono celular.

13

ii. Planteamiento

2.1 Antecedentes y marco terico

on el crecimiento que han tenido los servicios de internet y su gran expansin, hoy en da, una gran cantidad de hogares de clase media y alta cuentan con una conexin 24/7 para navegar y hacer consultas en muy diversos sitios, segn las preferencias de los cibernautas. Por otro lado, los proveedores de equipo cada da van incorporando nuevos dispositivos, que de una u otra forma, mediante diferentes protocolos, pueden comunicarse entre ellos o enlazarse a internet para poner a disposicin algn tipo de servicio o informacin. as es que vemos surgir equipo de marcas como: Lantronix, zigBee, arduino, y tecnologas o protocolos como: UPnP, bluetooth, tCP/iP, X10 y ms, que pudiendo interconectarse, adaptarse y programarse, nos permiten producir verdaderas soluciones a diferentes problemas de la vida diaria. Tnel Serial

2.2 Qu es el Tnel Serial?


Los dispositivos seriales, se conectan directamente mediante un cable, lo cual resulta muy sencillo cuando esta distancia es pequea. Pero si se necesita que sta sea de varios cientos o miles de metros, esta distancia rebasa lo permisible para la conexin serial y, por lo tanto, se necesita de un mtodo que sirva de puente a la distancia y que permita pasar a los datos, a pesar de tan grande distancia y ser transparente a los dispositivos que los manejarn. Para esta empresa, el mtodo ms factible de utilizar es tCP/iP, ya que puede transportar los datos de un punto a otro, sin que haya ninguna prdida, y esto se
15

16

debe a la manera como estn estructurados estos protocolos, que pueden pasar datos en una red local o a travs de una red de rea extendida, utilizando ruteadores o, en trminos generales, entre dos puntos cualesquiera de internet. se pueden utilizar varios medios de transmisin, como son: redes cableadas, inalmbricas, mdems y postera o satelital, lo cual quiere decir que los paquetes iP pueden enviarse a cualquier parte del mundo, para: Lograr que los puertos Com conecten equipos PC o servidores con dispositivos serie remotos sobre Ethernet Comunicar simultneamente con mltiples dispositivos serie de una red Utilizar Ethernet para sustituir conexiones de mdem de conexin telefnica preexistentes administrar el puerto de consola de equipos remotos (servidores, ruteadores, conmutadores, etctera) sobre Ethernet La funcin de conversin de los datos seriales a iP, es llevada a cabo por un servidor (de conversin) y encargndose otro de reconvertirlos de iP a seriales de nuevo. este proceso se conoce como tnel serial (Serial Tunneling). en el caso de conexiones tCP, un servidor es el encargado de iniciar la conexin, mientras que el otro est slo esperando una conexin entrante. Una vez establecida la conexin, los datos se pueden mover en cualquier direccin de manera bidireccional. este empaquetado tCP/ iP, permite a un usuario conectar un servidor de dispositivos serie a un dispositivo serie existente y lograr que la comunicacin con otro tenga lugar sobre ethernet, sin realizar ningn cambio en aplicaciones de red crticas. instalar un servidor de dispositivos serie a ethernet en un extremo de una Lan y otro en otro punto de la Lan, para permitir el paso de datos rs232, es lo indicado para acceder a dispositivos seriales que se encuentran fsicamente en posiciones remotas. veamos un ejemplo: un servidor de dispositivos serie, puede conectarse al puerto serie de un equipo que ejecuta una aplicacin crtica en una oficina central o un centro de datos. el segundo servidor de dispositivos serie, se conecta al puerto serie de un dispositivo de adquisicin de datos situado en otra poblacin. Cuando ambos servidores de dispositivos serie, disponen de conexin Lan y reciben alimentacin, se inicia automticamente una sesin entre los dos servidores de dispositivos dedicados. dicho de otro modo: una vez que ambos servidores de dispositivos serie, se utilizan formando un tnel serie, transfieren automticamente datos a travs de la Lan como si sta fuera transparente. La aplicacin del equipo central slo abre el puerto Com y enva datos.

Casa inteligente y segura

17
Aplicacin de equipo central Device Server Device Server

Dispositivo de adquisicin de datos serie

Figura 1. Conexin entre dos servidores de dispositivos


Red

el hecho de que la funcin de creacin de tneles serie, convierta la Lan en transparente, hace que resulten factibles otras aplicaciones. Un lector de tarjetas puede enviar datos a una pantalla o una cmara de seguimiento, puede enviar informacin a una controladora en una lnea de fabricacin. Protocolo X10

2.3 Qu es X10?
X10 es un protocolo de comunicacin para el control remoto de dispositivos, que funciona a travs del cableado elctrico. es un estndar para transmitir seales entre equipos elctricos en formato digital, para su automatizacin a travs de la red elctrica (220v o 110v). es la tecnologa que le permite construir una instalacin inteligente para el hogar, oficina, empresa o taller. debido a que no se necesitan instalar cables adicionales, este tipo de transmisin fue adoptado por varias marcas de equipos de automatizacin y seguridad en todo el mundo, hacindolos compatibles entre s. X10 fue desarrollado en 1975 por Pico electronics de Glenrothes, escocia. Fue la primera tecnologa domtica en aparecer y sigue siendo la ms ampliamente disponible. actualmente, X10 es un protocolo que est presente en el mercado mundial, sobre todo en norteamrica y europa (espaa y Gran Bretaa, fundamentalmente). Las seales de control de X10, se basan en la transmisin de rfagas de pulsos de rF (120 Khz), que representan informacin digital. estos pulsos se sincronizan en el cruce por cero de la seal de red (50 Hz o 60 Hz). Con la presencia de un pulso en un semiciclo y la ausencia del mismo en el siguiente semiciclo, representa un 1 lgico y a la inversa, se representa un 0. a su vez, cada orden se transmite dos veces, con lo cual toda la informacin transmitida tiene cudruple redundancia. Cada orden involucra 11 ciclos de red (220 ms para 50 Hz y 183.33 para 60 Hz). de esta manera
ii. Planteamiento

18

la comunicacin es eficaz. el sistema de corrientes portadoras, trabaja tanto en redes de corriente alterna monofsica como trifsica.

Figura 2. Ejemplo de una instalacin X10

en el uso del protocolo de control X10, primero se transmite un comando con el cdigo de casa (house code), que consta de cuatro bits; luego el nmero de mdulo (number code), que consta de 5 bits y, al final, el cdigo de funcin (function code), que consta de otros 4 bits. HTTP 1.0

2.4 Qu es HTTP?
HttP significa Hypertext transfer Protocol (protocolo de transferencia de hipertexto). es el protocolo de red usado para entregar virtualmente todos los archivos y datos (llamados recursos por la comunidad) en la Web, ya sean archivos HtmL, imgenes, resultados de preguntas (querys) o cualquier cosa. Usualmente, HttP se lleva a cabo mediante sockets tCP/iP. Un navegador de internet es un cliente de HttP, ya que enva solicitudes (requests) a un servidor de HttP (servidor Web), quien luego enva sus respuestas (responses) de regreso al cliente. el puerto estndar (y por defecto) para que los servidores HttP escuchen, es el 80, pero pueden usarse otros puertos. 2.4.1 Qu son los recursos?

Casa inteligente y segura

el HttP se usa para transmitir recursos, no slo archivos. Un recurso en un conglomerado de informacin, que puede ser identificado por un UrL (Universal resource Locator). el tipo ms comn de recurso es el archivo, pero tambin puede ser el resultado dinmicamente generado de una pregunta que se formula, el de un guin CGi, asP o PHP o cualquier otra cosa. mientras se aprende HttP, ayudar el pensar en un recurso como un archivo pero mucho ms general. Como cuestin prctica, actualmente casi todos los recursos HttP son como archivos o la salida de un programa en el lado del servidor. 2.4.2 Estructura de las transacciones HTTP Como la mayora de los protocolos, HttP usa el modelo cliente-servidor: un cliente HttP abre una conexin y enva un mensaje de requisicin a un servidor HttP, donde el servidor regresa un mensaje de respuesta, usualmente conteniendo el recurso que fue solicitado. despus de entregar la respuesta, el servidor cierra la conexin (haciendo de HttP un protocolo sin estado; i.e., no manteniendo ninguna informacin de conexin entre transacciones). el formato de los mensajes de solicitud y respuesta son similares, y orientados al ingls. ambos tipos de mensajes consisten de: Una lnea inicial Cero o ms lneas de encabezado Una lnea en blanco (por ejemplo, un CrLF), y Un cuerpo de mensaje opcional (por ejemplo, un archivo, datos, otros)

19

Arduino

2.5 Descripcin
arduino es una plataforma de hardware libre basada en una sencilla placa de entradas y salidas y un entorno de desarrollo, que implementa el lenguaje de programacin Processing/Wiring. se puede utilizar para desarrollar objetos interactivos autnomos o puede ser conectado a software de la computadora (por ejemplo, macromedia Flash, Processing, max/msP, Pure data). Las placas se pueden montar a mano o adquirirse. el entorno libre de desarrollo integrado, se puede descargar gratuitamente. Las plataformas arduino estn basadas en los microcontroladores atmega328, atmega168 o en el atmega8, chips sencillos y de bajo costo que permiten el desarrollo de mltiples diseos. al ser open-hardware, tanto su diseo como su distribucin son libres, es decir, se puede utilizar libremente para el desarrollo de cualquier tipo de proyecto sin haberse adquirido ninguna licencia.

ii. Planteamiento

20

Figura 3. Diferentes tipos de Arduinos

2.5.1 Configuracin de entradas y salidas Consta de 14 entradas digitales configurables como entradas y/o salidas, que operan a 5 volts. Cada pin puede proporcionar o recibir como mximo 40 ma. Los pins 3, 5, 6, 8, 10 y 11, pueden proporcionar una salida PWm (Pulse Width modulation). si se conecta cualquier dispositivo a los pins 0 y 1, eso interferir con la comunicacin UsB. diecimila tambin tiene seis entradas analgicas, que proporcionan una resolucin de 10 bits. Por defecto miden desde 0 hasta 5 volts, aunque es posible cambiar el nivel ms alto, utilizando el pin aref y algn cdigo de bajo nivel. 2.5.1.1 Elementos con los que se puede interactuar Figura 4. Pins de configuracin tomando como ejemplo la placa USB

Casa inteligente y segura

21

empezando en el sentido de las manecillas del reloj, desde el centro de la parte superior: Pin de referencia analgica (naranja) seal de tierra digital (verde claro) Pins digitales 3-13 (verde) Pins digitales 1-2/entrada y salida del puerto serie: tX/rX (verde oscuro) Botn de reset (azul oscuro) entrada del circuito del programador serie (azul turquesa) Pins de entrada analgica 0-5 (azul claro) Pins de alimentacin y tierra (voltaje: naranja; tierra: naranja claro) entrada de la fuente de alimentacin externa (9-12v dC)-X1 (rosa) Conmuta entre fuente de alimentacin externa o alimentacin, a travs del puerto UsB-sv1 (violeta) Puerto UsB (amarillo) 2.5.2 Tipos de placas 2.5.2.1 Placa serie es la placa bsica y se emplea una interfaz rs-232. sta puede ser utilizada, adems, para la programacin de la placa para comunicarse con otros elementos externos que utilicen el puerto serie, por ejemplo, una PC. 2.5.2.2 Placa USB es igual a la placa serie, pero en vez de un puerto serie como tal, tenemos un conector UsB (para poder conectar equipos PC sin puerto serie, como las porttiles de ahora) ms un convertidor a serie. si conectamos un aparato que siga la interfaz UsB, no funcionar, pues en realidad es un puerto serie, no UsB.

ii. Planteamiento

22

2.5.2.3 Placa de prototipos esta placa est pensada para poder incorporar hardware adicional al diseo base de arduino. incorpora una matriz de agujeros, en la que se puede aadir hardware adicional. no dispone de puerto serie ni UsB y por ese motivo es necesario disponer de otro programador que utilice iCsP. 2.5.2.4 Bluetooth es la ltima versin en la que se est trabajando. elimina la necesidad de cables para comunicarse con la PC. 2.5.2.5 XBee esta placa arduino posee el estndar XBee, para comunicarse con otras arduino XBee.

2.5.2.6 ArCan este shield dota a arduino con la capacidad de intercomunicarse va Can-Bus. el microcontrolador arduino diecimila y arduino duemilanove, estn basados en atmega168 y atmega328, respectivamente. Ethernet Shield

2.6 Arduino Ethernet Shield


el arduino Ethernet Shield, permite a una placa arduino conectarse a internet. est basado en el chip Ethernet Wiznet W5100, que maneja los protocolos iP y tCP como UdP. soporta hasta cuatro conexiones de socket simultneamente. Utiliza la librera Ethernet para escribir programas, los cuales se conectan a internet utilizndolo. Figura 5. Ethernet Shield, mdulo para Arduino

el Ethernet Shield, se conecta a una placa de arduino utilizando alfileres de coCasa inteligente y segura

nexin largos, los cuales se extienden a travs del shield. esto mantiene la disposicin de alfiler intacta y permite a otro shield, ser apilado en la parte superior. arduino utiliza los pins digitales 10, 11, 12 y 13 (sPi), para comunicarse con el W5100 en el Ethernet Shield. estos pins no pueden ser usados para entradas y salidas (e/s) generales. el shield proporciona un conector Ethernet rJ45 estndar y cuenta con un botn que reinicia tanto el W5100 como la placa arduino. 2.6.1 Configuracin de pins el shield contiene un nmero de Leds informativos: PWR: indica que la placa y el shield son alimentados (con una fuente de energa externa) LINK: indica la presencia de un enlace de red y parpadea cuando el shield transmite o recibe datos FULLD: indica que la conexin de red es full duplex 100M: indica la presencia de una conexin de red de 100 mb/s (a diferencia de 10 mb/s) RX: parpadea (destellos) cuando el shield recibe datos TX: parpadea cuando el shield enva datos COLL: parpadea cuando se detectan las colisiones de red el jumper de soldadura marcado como int, puede ser conectado para permitir que la placa arduino reciba interrupciones de notificacin de eventos del W5100, pero ste no es soportado con la librera de Ethernet. el jumper conecta el pin int del W5100 al pin digital 2 del arduino. Motores paso a paso Los motores paso a paso, son ideales para la construccin de mecanismos en donde se requieren movimientos muy precisos. La caracterstica principal es el hecho de poder mover un paso a la vez por cada pulso que se le aplique. este paso puede variar desde 90 hasta pequeos movimientos de tan slo 1.8, es decir, que se necesitarn cuatro pasos en el primer caso (90) y 200 para el segundo (1.8) para completar un giro completo de 360. en la aplicacin que se implementar y que se describe ms adelante, utilizamos un motor que gira 3.6; por lo tanto, son necesarios 100 pasos para poder girar una vuelta completa (360/3.6 = 100 pasos). estos motores poseen la habilidad de poder quedar enclavados en una posicin o bien, totalmente libres. si una o ms de sus bobinas estn energizadas, el motor estar enclavado en la posicin correspondiente y, por el contrario, quedar completamente libre si no circula corriente por ninguna de sus bobinas.

23

iii. lanteamiento ii. Pmetodologa

24

Bsicamente estos motores estn constituidos normalmente por un rotor (figura 6), sobre el que van aplicados distintos imanes permanentes, y por un cierto nmero de bobinas excitadoras bobinadas en su estator (figura 7). Las bobinas son parte del estator y el rotor es un imn permanente. toda la conmutacin (o excitacin de las bobinas) debe ser externamente manejada por un controlador.

Figura 6. Rotor

Figura 7. Estator y bobinas

Figura 8. Conexiones de nuestro motor

Casa inteligente y segura

estos motores suelen tener seis o cinco cables de salida, dependiendo de su conexin interna. el motor que utilizamos tiene cinco cables (figura 8). este tipo de motores, se caracterizan por ser ms simples de controlar.

2.7 Secuencia para el manejo de motores paso a paso


estos motores necesitan la inversin de la corriente que circula en sus bobinas en una secuencia determinada. Cada inversin de la polaridad, provoca el movimiento del eje en un paso, cuyo sentido de giro est determinado por la secuencia seguida. todas las secuencias comienzan nuevamente por el paso 1, una vez alcanzado el paso final. Para poder lograr la inversin de la corriente, utilizaremos el circuito ULn2803, el cual es un arreglo de ocho transistores tipo darlington capaces de manejar cargas de hasta 500ma, con el cual podremos controlar los dos motores necesarios. Las entradas de activacin pueden ser directamente activadas por un microcontrolador. en nuestro caso, es el atmega con la placa de arduino. esta es la secuencia ms usada y la que generalmente se recomienda. Con sta el motor avanza un paso por vez y debido a que siempre hay, al menos, dos bobinas activadas, se obtiene un alto torque de paso y de retencin. Cmara de video IP Una cmara de video iP tambin conocida como cmara de red puede ser descrita como la combinacin de una cmara y una computadora en una sola unidad, la cual captura y transmite imgenes en vivo a travs de una red iP, habilitando a usuarios autorizados a ver, almacenar y administrar el video sobre una infraestructura de red estndar basada en el protocolo iP. Una cmara de red tiene su propia direccin iP, se conecta a la red y tiene interconstruidos una serie de aplicaciones, funciones y servicios. a diferencia de cualquier otro tipo de cmara, las cmaras de red no necesitan estar conectadas a una compu-

iii. lanteamiento ii. Pmetodologa

26

tadora ni dependen de ella, porque son totalmente independientes y autoadministrables, lo cual incrementa an ms su funcionalidad. en resumen, podemos decir que todo lo necesario para tomar y transmitir imgenes est dentro de la cmara y lo nico que se necesita afuera de ella es el medio para ver el video, que es una computadora con un explorador de internet, las cuales se pueden encontrar prcticamente en cualquier lugar del mundo.

2.8 Cmara AIRLINK AIC250W inalmbrica


soporta conectividad inalmbrica ieee802.11g visualiza video de movimiento total, a travs de internet, con una resolucin de 640 x 480 soporta para configuracin de la Web con proteccin a travs de contrasea Funciones de captura de imgenes, grabacin de video y notificacin por correo electrnico Utiliza hasta 16 cmaras para el control completo de un rea

Figura 9. Cmara de video IP

La skyiPCam 250W, se conecta directamente con una red inalmbrica ieee802.11g, sin la necesidad de utilizar una computadora. a travs de la interfaz grfica y configuracin fcil de utilizar, podr estar tranquilo dondequiera que est. La skyiPCam 250W funciona correctamente con la red dHCP de internet por Casa inteligente y segura

cable o dLs y slo se tiene que registrar en cualquier servicio de dns dinmico en la Web. adems, incluye el software iPviewPro para la visualizacin de hasta 16 cmaras a la vez.

iii. metodologa

3.1 Control de luces y dispositivos elctricos mediante un Arduino y un mdem PSC05 de X10
n esta parte del proyecto, se utiliza un arduino, un mdem PsC05, un cable de cuatro hilos con conector rJ11 y un mdulo de lmpara Lm465.
27 ii. Planteamiento

28

Figura 10. Cable con conector RJ11

Cable telefnico es un conector usado para enlazar redes de telefona. es de medidas reducidas y tiene cuatro contactos para soportar cuatro vas de dos cables. es el conector ms difundido globalmente para la conexin de aparatos telefnicos convencionales, donde se suelen utilizar generalmente slo los dos pins centrales para una lnea simple o par telefnico. Una vez sujeto al cable, resulta casi imposible desarmarlo sin provocar su inutilizacin. Figura 11. Mdem PSC05

esta interfaz de red elctrica de dos vas proporciona un enlace a la red elctrica mediante comandos de X10. Cuenta con un buffer de recepcin, que le permite almacenar los mensajes recibidos a la espera de ser consultados por el producto oem conectado. Figura 12. Mdulo de lmpara LM465

Casa inteligente y segura

29

PsC05 interfaz x10

es una de las piezas clave del sistema de domtica X10. acta como receptor de +5v 4 3 seal X10, es decir, recibe una orden a travs de la corriente elctrica 2 la que est a 1 conectado y la ejecuta. a cada mdulo, se le asigna un cdigo consistente en una le10k tra y un nmero. tan sencillo como girar los mandos frontales a la posicin deseada, lo cual quiere decir que cuando se activa un interruptor o un control remoto con un cdigo, la lmpara que est conectada a dicho mdulo se encender. se puede enviar pin de datos - a pin digital de arduino la orden de encenderse, apagarse, atenuar la seal o encender la lmpara muy lentamente, al pin cruce por cero - a pin digital de arduino igual que un regulador de luz normal, pero todo ello a distancia.

3.2 Procedimiento
realizar la correcta configuracin para la conexin entre el cable con conector rJ11 y el arduino. del cable telefnico se separan los hilos, los cuales se conectan al arduino con la siguiente configuracin: Figura 13. El circuito impreso

negro: zero crossing 1 = pin 2 de arduino rojo: ground de arduino


iii. metodologa

30

verde: sin conexin amarillo: resistencia de 10 k, pin 3 de arduino, 5 volts Figura 14. Arduino alambrado al mdem PSC05

1234

Cuando se desea transmitir y recibir usando este dispositivo PsC05 de X10, debe tenerse en mente la siguiente configuracin: deteccin cruce cero Comn (tierra) recepcin X10 transmisin X10

Figura 15. Mdem PSC05 de X10

el otro extremo del cable rJ11, va conectado al mdem PsC05.

Casa inteligente y segura

31
Figura 16. Conexin del cable telefnico al mdem PSC05

se procede a la conexin del arduino con la PC, mediante un cable UsB, para tener comunicacin entre ellos y cargar el programa. Figura 17. Cargando el programa al Arduino

iii. metodologa

32

el siguiente cdigo, se puede utilizar para el encendido y apagado de aparatos elctricos:

Tabla 1. Cdigo embebido en Arduino para prender y apagar dispositivos

//Encendido y apagado de lmpara y aparatos elctricos #include <x10.h> #include <x10constants.h> // ************ Pins usados del ARDUINO ********************** // La consola conectada por USB usando los pins 0 y 1 // Transmite bits mediante al mdem PSC05 usando los pins 2 y 3 #define zcPin 2 // zero crossing pin #define dataWPin 3 // pin de transmisin #define RPT_SEND 2 // nmero de veces que se reenva un cdigo X10 // Crear una nueva instancia de X10 X10 myHouse = X10(zcPin, dataWPin);

Casa inteligente y segura

33
void setup() { // Establece la velocidad de transmisin-recepcin para la consola Serial.begin(9600); // Configura el pin especificado como una entrada pinMode(zcPin, INPUT); // Configura el pin especificado como una salida pinMode(dataWPin, OUTPUT); // Se polariza la entrada con 5V (HIGH) digitalWrite(zcPin, HIGH); }

void loop() { //Mensaje a la consola Serial.println("Prender dispositivo"); // Enva datos al mdem PSC5 conectado al Arduino myHouse.write(A,UNIT_1,RPT_SEND); myHouse.write(A, ON,RPT_SEND); //Detiene el programa un momento (en milisegundos) delay(3000); Serial.println ("Apagar dispositivo"); // Enva datos al mdem PSC05 conectado al Arduino myHouse.write(A,UNIT_1,RPT_SEND); myHouse.write(A, OFF,RPT_SEND); //Detiene programa de nuevo delay(3000); }

el siguiente cdigo, se puede utilizar para el control de lmparas: Tabla 2. Cdigo embebido en Arduino para control de luces
#include <x10.h> #include <x10constants.h> #define zcPin 2 #define dataWPin 3 #define RPT_SEND 2 // nmero de veces que se reenva un cdigo X10 // set up a new X10 instance: X10 myHouse = X10(zcPin, dataWPin);

iii. metodologa

34

void setup() { // Establece la velocidad de transmisin-recepcin para la consola Serial.begin(9600); // Configura el pin especificado como una entrada pinMode(zcPin, INPUT); // Configura el pin especificado como una salida pinMode(dataWPin, OUTPUT); // Se polariza la entrada con 5V (HIGH) digitalWrite(zcPin, HIGH); // Enva un comando "Lights ON" 2 veces myHouse.write(A,UNIT_1, RPT_SEND); myHouse.write(A, ON, RPT_SEND); }

void loop() { // Mensaje a la consola Serial.println("Encendiendo luces:"); // Enviando un comando "lights BRIGHT" 19 veces // Le toma 19 BRIGHT or DIM comandos para // una lmpara incandescente encender. myHouse.write(A,UNIT_1, RPT_SEND); myHouse.write(A, BRIGHT,19); delay(500); Serial.println("Lights down:"); // Enviar el comando "lights DIM" 19 veces: myHouse.write(A,UNIT_1, RPT_SEND); myHouse.write(A, DIM,19); delay(500); }

en la figura 18, se puede observar el efecto de enviar los cdigos X10 al mdem PsC05 desde el arduino.

Figura 18. La lmpara comienza a incrementar su intensidad

Casa inteligente y segura

35

3.3 Envo de correo electrnico cuando un sensor de movimiento se activa


en este proyecto se utilizan un arduino mega y otro duemilanove, un mdulo Lantronix para arduino, un cable de cuatro hilos con conector rJ11, un mdem PsC05, un sensor inalmbrico de movimiento ms16a y un mini transceiver tm751, los 3 ltimos de X10.

Figura 19. Arduino Mega y Duemilanove

Figura 20. Mdulo Lantronix para Arduino

iii. metodologa

36

el mdulo Lantronix para arduino, es un dispositivo que provee gran flexibilidad al agregar conectividad para internet a los arduinos. se puede insertar en el mdulo, el modelo XPort de Lantronix para darle esta funcin. se puede usar un XPort, un XPort direct o un XPort direct+. estos dispositivos tienen una direccin maC preasignada de fbrica y un cliente dHCP. Lo anterior indica que el proyecto que lo incorpora, puede conectarse a una red, sin que tenga que reconfigurarse. todos los dispositivos XPort usan protocolos seriales para comunicarse y, por lo tanto, tambin para configurarse. slo puede tenerse una comunicacin a la vez. toda la familia de protocolos tCP/iP, se encuentran en el dispositivo, haciendo sumamente fcil de entablar comunicacin con l. Para usarse slo es necesario utilizar cuatro pins del Lantronix (y del arduino). el uso del mdulo Lantronix para arduino, se puede utilizar solamente con el arduino duemilanove, ya que la redistribucin de funciones en los pins del mega lo hacen incompatible. Las bibliotecas de funciones Ethernet publicadas en el sitio web de arduino, son completamente compatibles con este mdulo de red. el mdulo Lantronix utilizado tiene un XPort direct+ instalado y se puede conectar a un microcontrolador (como el arduino), usando comunicacin de dos pins. Para hacer una conexin, simplemente mande un comando en la forma C127.0.0.1/80, donde C indica conectar, 127.0.0.1 es la direccin iP (ya que los XPort no soportan resolucin dns) del servidor web al que se desea conectar y /80 es el puerto de comunicacin. el XPort, adems de poderse comunicar, puede aceptar conexiones, pues cuenta con un servidor web interno que puede ejecutar applets de Java. es conveniente indicar que esta aplicacin no utiliza para nada la biblioteca de funciones Ethernet publicadas en el sitio web de arduino. Para que el mdulo Lantronix acepte conexiones mediante el puerto serial (Tunneling, vase la seccin 2.2), es necesario configurarlo mediante una consola de hyperterminal o un programa de la compaa Lantronix conocido como deviceinstaller. en la figura 21 se muestra la aplicacin.

Casa inteligente y segura

37

Figura 21. Configuracin de Lantronix mediante DeviceInstaller 4.2

Una vez configurado el Lantronix XPort direct+, se puede programar el arduino para que haya comunicacin tipo tnel entre el arduino y el Lantronix. el siguiente cdigo en C, es el cdigo embebido en el duemilanove para interactuar con el mega y el Lantronix.

iii. metodologa

Tabla 3. Cdigo de Arduino para interactuar con Lantronix y Arduino Mega

39

41

iv. resultados

urante el desarrollo de este proyecto, fueron algunos los resultados obtenidos, tales como el encendido de una lmpara como indicador visual de la activacin de un estado de alarma. Fueron algunos otros eventos tambin como el encendido de la cmara iP, para enviar video en tiempo real cuando se activaron las condiciones dadas para ello. sin embargo, uno de los resultados ms concluyentes y significativos, pero no por ello ms importante que los anteriores, fue el de poder enviar mediante correo electrnico avisos de eventos informando la intrusin al espacio sensado. en la figura 22 se muestra el correo electrnico enviado a las personas registradas para recibirlo, con los cdigos que el mdem PsC05 detect de la red elctrica. Figura 22. Correo electrnico recibido por interesados

41

v. ConClusiones

urante ocho meses, se trabaj con la idea de que un ingeniero en sistemas Computacionales puede desarrollar nuevos sistemas integrados por equipo y programas computacionales, que le hagan ms agradable la vida, sabiendo que la inmensa mayora de todo aquello que es desarrollado por la humanidad debe de permitrselo. en nuestro caso, el haber trabajado con dispositivos como el arduino, el XPort de Lantronix, el Wiznet, las tablillas shield para ambos, el dispositivo PsC05 de X10, la programacin en lenguaje C++ con varias bibliotecas de funciones que ha desarrollado la comunidad mundial y nuestro propio cdigo embebido en dispositivos para controlarlos, ha sido una experiencia muy enriquecedora, en donde se ponen a prueba los conocimientos adquiridos en las diferentes materias de una currcula de sistemas, as como aquellos que mediante la investigacin documental y aplicada se adquieren. este proyecto no se habra podido llevar a cabo, si por parte de todos los participantes no se hubiera contribuido con alguna aportacin en dispositivos, tiempo, esfuerzo y dedicacin. Finalmente, alcanzamos nuestras metas y pudimos desarrollar nuevos dispositivos a partir de unos ya existentes, y configurarlos con nuevas partes, alambrados y programacin para que los obtenidos nos permitan adaptarlos a las necesidades del entorno, para hacer una Casa inteLiGente Y seGUra. este proyecto no termina, tal vez el da de maana cambie de nombre, pero pretendemos seguir contribuyendo con dispositivos y programacin, para que el mundo en el que vivimos sea ms cmodo, inteligente, seguro y divertido.

43

43

BiBliografa
Tnel Serial serial to ethernet Converters/adapters http://www.perle.com/products/serial-to-ethernet.shtml http://www.gridconnect.com/net232.html http://www.lantronix.com/ Dispositivos X10 http://www.X10.com http://www.TheHomeAutomationStore.com http://en.wikipedia.org/wiki/X10_(industry_standard) http://www.x10pro.com/pro/pdf/technote.pdf http://www.scribd.com/doc/12843158/powerline-communication-using-x10-protocol http://www.8051projects.net/_X10_protocol Protocolo de transferencia de hipertexto http://en.wikipedia.org/wiki/Hypertext_transfer_Protocol http://www.webopedia.com/term/H/HttP.html http://www.jmarshall.com/easy/http/ traduccin por daniel morales r. y J. Paz http://www.freesoft.org/Cie/topics/102.htm Arduino http://www.arduino.cc http://www.arduino.cc/en/main/Hardware http://arduino.cc/en/reference/HomePage http://arduino.cc/en/tutorial/HomePage http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl http://www.arduino.cc/playground/main/similarBoards http://www.ladyada.net/make/eshield/ http://adafruit.com/index.php?main_page=index&cPath=17_21 Cmara de video IP

http://www.airlink101.com/products/aic250w.php

45

46

anexo 1
Conexin entre mdulos
ado que el mdulo PsC05, se encargar de recoger los cdigos de la red elctrica y sern ledos por un arduino mega, que los procesar mediante su programacin interna, se muestra el diagrama de conexin:

Figura 1. Diagrama de alambrado entre Arduino Mega y un mdem PSC05

Casa inteligente y segura

47

anexo 2
Controlador para motor paso a paso
A2.1 Fuente de voltaje La fuente de voltaje que se utiliza en este proyecto es de 12v/300ma, lo necesario para el motor unipolar paso a paso. Los dems circuitos se alimentarn de 5v, por lo que se necesita un regulador de voltaje. el L7805 puede tener una entrada de hasta 35v y el voltaje de salida ser de 5v, con el mximo de corriente de salida de 1a. se coloc un capacitor en la entrada del regulador para poder mantener el voltaje estable y se coloc un Led para poder saber si el circuito se encuentra encendido. Para poder calcular la resistencia necesaria para el Led, se utiliza la Ley de ohm. Para el Led, la corriente mxima de funcionamiento es de 20ma, y la calculamos de la siguiente manera: V=1*R sustituyendo: R= vR = v 1 1 5v = 250 R = 5v = 250 R 20 mA 20 mA (1)

(2) (3)

Calculando: R =

Por no ser un valor comercial, se coloca una resistencia de 220 ohms. Figura 1. LM7805, regulador de voltaje de 5V, 1A

anexo

48

A2.2 Convertidor de serial a paralelo esta es la primera etapa en el circuito de la tablilla del control de los motores. el convertidor de serial a paralelo, se utilizar para poder mandar la informacin del microprocesador en paralelo al controlador del motor, debido que la informacin que se transmite del microprocesador en el pin de dato es en serie. este circuito se alimenta de 5v en el pin 16 (vCC) con la respectiva tierra en el pin 8. Los pins que se van a utilizar como salida son: 1-7 y 15, donde la informacin sale en paralelo. el pin 14 es el de entrada de datos. en el pin 12, al momento de mantenerse en 0v, el buffer del circuito se llena de informacin y el orden que se obtiene es del valor menos significativo al ms significativo. al momento de poner un pulso positivo (5v), el buffer se descarga en paralelo y el pin 11 es el que da el ritmo en el cual el buffer se llenar (8 bits). se utiliza un capacitor entre el pin 12 hacia tierra, para poder mantener el pulso bajo y limpio. Figura 2. 74HC595

A2.3 Circuito controlador el transistor darlington es un dispositivo semiconductor, que combina dos transistores bipolares para obtener una alta ganancia de corriente.

Casa inteligente y segura

Figura 3. Estructura interna de un transistor tipo Darlington

49

dentro del ULn2803, se encuentran ocho transistores nPn darlington. es un circuito integrado ideal para ser empleado como interfaz entre las salidas de un microprocesador o cualquier integrante de las familias ttL o Cmos y dispositivos que necesiten una corriente ms elevada para funcionar. en este caso, los motores utilizados para el movimiento de la cmara. todas sus salidas son a colector abierto y dispone de un diodo para evitar las corrientes inversas.

Figura 4. Conexiones del ULN2803 y los motores unipolares paso a paso

A2.4 Construccin de tablilla controladora A2.4.1 Diseo elctrico en el circuito que se muestra a continuacin, se encuentran todas las etapas descritas anteriormente:

anexo