Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
INTRODUCCIÓN..................................................................................................... 1
CAPÍTULO 1: LOS SISTEMAS DE SEGURIDAD PARA EDIFICIOS DE
DEPARTAMENTOS Y SU PROBLEMÁTICA ......................................................... 2
1.1. Análisis de la Situación Actual a Nivel Local ................................................. 2
1.2. Análisis de la Situación Actual a Nivel Global................................................ 3
1.3. Problemática y Situación Actual de los Sistemas de Seguridad .................... 4
CAPÍTULO 2: ASPECTOS TEÓRICOS Y ANTECEDENTES DE LOS SISTEMAS
DE SEGURIDAD ..................................................................................................... 5
2.1. El Estado del Arte ......................................................................................... 5
2.1.1. Presentación del Asunto de Estudio....................................................... 5
2.1.2. Estado de la Investigación...................................................................... 5
a) Zigbee......................................................................................................... 7
b) Z-Wave ....................................................................................................... 7
c) INSTEON.................................................................................................... 8
d) LonWorks...................................................................................................10
e) Wi-Fi ..........................................................................................................11
2.1.3. Síntesis sobre el Asunto de Estudio ......................................................12
2.2. Conceptualizaciones Generales...................................................................12
2.2.1. Sistemas de Seguridad .........................................................................12
2.2.1.1. Elementos ..........................................................................................12
a) Sensores ...................................................................................................12
b) Actuadores.................................................................................................12
c) Controladores ............................................................................................13
2.2.1.2. Subsistemas.......................................................................................13
a) Sistema de Seguridad Contra Incendios ....................................................13
b) Sistema de Seguridad Contra Robos .........................................................13
2.2.1.3. Elementos de Interconexión para el Control desde una WLAN ..........14
a) Gateway ....................................................................................................14
b) Router ADSL Inalámbrico ..........................................................................14
2.2. Modelo Teórico ............................................................................................15
CAPÍTULO 3: DEFINICIÓN DE LAS CARACTERÍSTICAS DE LA WLAN DE
SOPORTE Y DE LA RED ACTUADOR – SENSOR BASADA EN ZIGBEE SEGÚN
LOS REQUERIMIENTOS DEL MEDIO ..................................................................16
3.1. Hipótesis .................................................................................................16
3.1.1. Hipótesis Principal ...........................................................................16
i
3.1.2. Hipótesis Secundarias .....................................................................16
3.2. Objetivos .................................................................................................17
3.2.1. Objetivo General..............................................................................17
3.2.2. Objetivos Secundarios.....................................................................17
3.3. Consideraciones para el Diseño del Sistema de Seguridad ....................17
3.3.1. Identificación de los Requerimientos del Sistema de Seguridad ......17
a) Flexibilidad ..............................................................................................17
b) Comunicación .........................................................................................18
c) Seguridad................................................................................................18
d) Consumo de Energía ..............................................................................18
3.3.2. Identificación de los Componentes del Sistema de Seguridad.........18
a) Seguridad Contra Robos .........................................................................18
b) Seguridad Contra Incendios ....................................................................18
c) Control de Accesos .................................................................................19
d) Control de Iluminación.............................................................................19
3.3.3. Identificación del Edificio de Departamentos Donde Será Instalado el
Sistema de Seguridad.....................................................................................19
3.3.4. Coexistencia de Zigbee y Wi-Fi .......................................................20
3.3.5. Selección de los Protocolos de Comunicación.................................21
a) Protocolo de la Red de Soporte...............................................................21
b) Protocolo de la Red Actuador – Sensor...................................................21
c) Protocolo de Interconexión de Redes......................................................22
3.3.6. Selección de los Dispositivos del Sistema de Seguridad .................22
a) Módulos Zigbee.......................................................................................22
b) Módulo Wi-Fi ...........................................................................................23
c) Microcontrolador......................................................................................24
d) UPS.........................................................................................................25
CAPÍTULO 4: DISEÑO DEL SISTEMA DE SEGURIDAD BASADO EN UNA RED
ACTUADOR – SENSOR ZIGBEE CON SOPORTE EN LA WLAN DE UN EDIFICIO
DE DEPARTAMENTOS .........................................................................................26
4.1. Diseño de la Red Actuador - Sensor .......................................................26
4.1.1. Consideraciones Preliminares .........................................................26
4.1.2. Diseño del Acondicionamiento de Señal de los Sensores y
Actuadores......................................................................................................27
a) Acondicionamiento de Señal del Sensor de Movimiento .........................27
b) Acondicionamiento de Señal del Detector de Humo................................28
c) Acondicionamiento de Señal de la Cerradura Eléctrica ...........................29
ii
d) Acondicionamiento de Señal de las Luces ..............................................30
e) Acondicionamiento de Señal del Teclado Matricial..................................31
4.1.3. Diseño del Nodo Coordinador de la Red Actuador - Sensor ...........32
4.2. Diseño de la WLAN de Soporte...............................................................33
4.2.1. Consideraciones Preliminares .........................................................33
4.2.2. Diseño del Nodo de Acceso de la Red Actuador – Sensor a la WLAN
de Soporte ......................................................................................................34
4.3. Interconexión de la Red Actuador – Sensor con la WLAN de Soporte.....35
4.4. Ubicación de los Dispositivos del Sistema de Seguridad.........................36
4.5. Diseño del Interfaz de Usuario para el Control y Monitoreo del Sistema de
Seguridad ...........................................................................................................38
4.6. Instalación de las Aplicaciones de Programación y Configuración de los
Dispositivos Inalámbricos para las Pruebas del Sistema de Seguridad...............39
4.6.1. Configuración de los Xbee ZB con el X-CTU ...................................39
4.6.2. Configuración del Secure Socket iWiFi con el iChip Config Utility....42
4.7. Pruebas del Funcionamiento de los Componentes del Sistema de
Seguridad ...........................................................................................................45
4.8. Costos de Materiales...............................................................................48
CONCLUSIONES...................................................................................................49
RECOMENDACIONES...........................................................................................50
BIBLIOGRAFÍA......................................................................................................51
iii
ÍNDICE DE TABLAS Y FIGURAS
iv
Figura 4.12. Conexión serial entre el Secure Socket iWiFi y el Xbee ZB coordinador.
...............................................................................................................................34
Figura 4.13. Tarjeta del nodo de acceso a la WLAN de soporte. ............................35
Figura 4.14. Diseño de la interconexión del sistema del seguridad.........................36
Figura 4.15. Vista de planta del departamento con la ubicación de los dispositivos.
...............................................................................................................................38
Figura 4.16. Interfaces de usuario de los programas Seguridad y Monitoreo Portátil.
...............................................................................................................................39
Figura 4.17. Módulo de programación del Xbee ZB. ...............................................40
Figura 4.18. Configuración del Xbee ZB para la comunicación serial......................40
Figura 4.19. Configuración del Xbee ZB. ................................................................41
Figura 4.20. Configuración de los puertos digitales del Xbee ZB. ...........................42
Figura 4.21. Tarjeta de programación del Secure Socket iWiFi...............................42
Figura 4.22. Ventana principal del iChip Config Utility.............................................43
Figura 4.23. Configuración para registro del dispositivo en la WLAN. .....................43
Figura 4.24. Configuración para activar el modo SerialNET....................................44
Figura 4.25. Comandos ingresados desde el Dumb Terminal.................................44
Figura 4.26. Diagrama de pruebas del sistema de seguridad. ................................45
Figura 4.27. Modelo de pruebas y conexión de los dispositivos con el Xbee ZB.....46
Figura 4.28. Aplicación Seguridad y solicitudes realizadas por el usuario...............47
Figura 4.29. Aplicación Seguridad y detección de incidentes..................................48
v
INTRODUCCIÓN
Asimismo, los elementos internos de una vivienda como las instalaciones eléctricas
y de gas son un peligro potencial para la seguridad en casa; del mismo modo,
ocurren con los factores externos como la delincuencia. Sin embargo, es necesario
tomar medidas preventivas frente a un incidente que pueda ser ocasionado por
estos factores, y que pueda atentar contra la integridad física de las personas y
producir pérdidas materiales. Es por esto que los sistemas de seguridad son una
buena alternativa para prevenir grandes pérdidas causadas por estos incidentes.
1
CAPÍTULO 1: LOS SISTEMAS DE SEGURIDAD PARA EDIFICIOS DE
DEPARTAMENTOS Y SU PROBLEMÁTICA
Sin embargo, lo anterior, se contrasta con el alto índice de robos a viviendas, según
datos de la Encuesta de Opinión en Lima Metropolitana sobre Temas de Seguridad
realizado por la Pontificia Universidad Católica del Perú en el 2009. Por ejemplo, el
27% de encuestados afirma haber sido víctima de algún delito en el último año,
siendo los robos a viviendas, el 20% del total de las situaciones [1]; del mismo
modo, representa el cuarto problema que causa mayor preocupación en la ciudad
de Lima, según datos de la encuesta de IMASEN sobre la Percepción Sobre la
Seguridad Ciudadana del 2007 [2]. De esta manera, las personas se han visto en la
obligación de instalar mecanismos de protección contra robos como seguros
reforzados, rejas, etc., y en algunos casos sistemas de seguridad electrónicos
provistos por diferentes empresas en el rubro, como ayuda a la vigilancia externa
del edificio.
Estas soluciones cuentan con alarmas y sensores distribuidos por la vivienda. Por
el contrario, ofrecen poca flexibilidad, puesto que no se adapta a las necesidades
de cada usuario, ocasionando molestias, debido a las reglas que se deben tener en
cuenta para el correcto funcionamiento de estos sistemas de seguridad.
2
poca vigilancia en la mayoría de los edificios, se introducen en los departamentos
para extraer las pertenencias de las personas que allí habitan.
Es por esto que los residentes se han visto obligados a instalar sistemas de
seguridad contra robos que se encuentren a su alcance económico. Sin embargo,
en muchos casos, estos sistemas no ofrecen una flexibilidad adecuada a la
infraestructura, es decir, las soluciones no se adaptan a la distribución de
ambientes de cada departamento dentro del edificio.
Por otra parte, los sistemas contra incendios significan una inversión adicional y,
por lo general, no se encuentran integrados con otros sistemas disponibles en la
vivienda, es por eso que, análogamente a un control remoto para cada equipo
electrónico, éste debe contar con su propio controlador independiente, lo cual no es
muy eficiente y confortable para los usuarios finales.
3
que proveen estas soluciones, con lo cual no permite una regulación obligatoria que
asegure el correcto funcionamiento de los sistemas.
4
CAPÍTULO 2: ASPECTOS TEÓRICOS Y ANTECEDENTES DE LOS SISTEMAS
DE SEGURIDAD
Por otro lado, se busca que las redes domóticas sean seguras y confiables, con una
baja tasa de transmisión y un reducido consumo de energía; y además, que no
tengan un alto costo de inversión. A continuación, se presenta un análisis de las
diferentes tecnologías existentes en el mercado que se emplean para aplicaciones
en redes domóticas.
5
dispositivo inteligente. No obstante, la desventaja que se presenta es que si el
controlador principal falla, entonces todo el sistema dejará de operar, y además la
inversión inicial es elevada, ya que se tiene que adquirir un dispositivo complejo,
capaz de gestionar toda la red [7].
Por último, los sistemas mixtos tienen las características de ambas arquitecturas
anteriores, es decir, involucran pequeños módulos con inteligencia propia,
distribuidos por toda la red, capaces de controlar los componentes asociados a
cada uno. Asimismo, involucran las ventajas y desventajas de ambos sistemas [7].
Por otro lado, los medios inalámbricos son una alternativa que brinda mucha
flexibilidad en cuanto a la portabilidad de los componentes que integran las redes.
La comunicación inalámbrica está siendo comúnmente desarrollada para trabajar
en la banda de 2,4 GHz, debido a su libre uso en la mayoría de los países, y las
bandas de 800 MHz y 900 MHz, para aplicaciones dentro de los Estados Unidos y
Europa, respectivamente. No obstante, uno de los inconvenientes a que se
enfrentan las tecnologías que emplean este medio, es la interferencia que se puede
generar por otras tecnologías que operan sobre estas bandas de frecuencia. A
6
continuación, se presentan algunas tecnologías desarrolladas para sistemas
domóticos en general.
a) Zigbee
Zigbee es un protocolo inalámbrico desarrollado por la Alianza Zigbee, de libre uso
y está basado en el estándar IEEE 802.15.4, el cual ofrece una baja complejidad,
consumo mínimo de energía, bajo costo de dispositivos, instalación y
mantenimiento. Asimismo, soporta una alta densidad de nodos dentro de la red
gracias a su direccionamiento de capa de red de 16 bits que permite manejar hasta
65536 nodos, ofreciendo alta flexibilidad, coexistencia con otras tecnologías de
radiofrecuencia, transferencia segura de la información e incluso puede cubrir
grandes áreas dependiendo de la topología usada por la red, soportando los tipos
estrella, malla y árbol. En la figura 2.1, se muestran las diferentes capas que
conforman este protocolo.
Aplicación/Perfiles Definido por el usuario
Aplicación del Framework Definido por la
Capas de Red/Seguridad Alianza Zigbee
Capa MAC Definido por la
Capa Física IEEE
Figura 2.1. Modelo de capas de la tecnología Zigbee [9].
Zigbee opera en la banda libre de 2.4 GHz y en las bandas de 868/915 MHz. En la
tabla 2.1, se presentan las características de transmisión del protocolo.
b) Z-Wave
Z-Wave es un protocolo cerrado desarrollado por la compañía Zensys, de bajo
ancho de banda, con comunicación half duplex, confiable para comunicación
7
inalámbrica en una red de control de bajo costo. El principal propósito de este
protocolo es intercambiar pequeños mensajes de control entre los diferentes nodos.
El protocolo está conformado por cuatro capas. La capa MAC controla los datos
que se envían inalámbricamente a través de radiofrecuencia; la capa de
transferencia controla el transporte de las tramas; la capa de ruteo direcciona las
tramas de la red y la capa de aplicación controla la carga de las tramas a ser
transferidas. En la figura 2.2, se muestra la conformación de las capas
correspondientes a Z-Wave.
Capa de Aplicación
Capa de Ruteo
Capa de Transferencia
Capa MAC
RF Media
Figura 2.2. Modelo de capas de la tecnología Z-Wave [10].
Z-wave opera en las bandas 868/915 MHz para evitar interferencia con los equipos
de comunicación dentro de la vivienda, que transmiten en la banda de 2.4 GHz. En
la tabla 2.2, se presentan las características de transmisión del protocolo.
c) INSTEON
Es una tecnología de baja complejidad desarrollada por SmartLabs, Inc., y cuenta
con dispositivos de bajo costo. Utiliza el cableado eléctrico de la vivienda como
medio físico para enviar la información a través de las corrientes portadoras.
Asimismo, emplea ondas de radio como medio inalámbrico, y hasta incluso permite
8
aprovechar ambos medios para darle una mayor flexibilidad a los sistemas. Por otro
lado, todos los componentes basados en INSTEON son capaces de transmitir,
recibir o repetir otra información, realizando una comunicación punto a punto, y
eliminando así la necesidad de contar con un controlador principal y complejo.
INSTEON ha sido diseñado para ser compatible con cualquier equipo que funcione
bajo el protocolo X10 desarrollado por Pico Electronics y que fue muy utilizado en
los primeros sistemas domóticos, puesto que la idea es que INSTEON sea el
sucesor de éste, mejorando así la poca confiabilidad y flexibilidad de X10.
Los productos con esta tecnología se caracterizan principalmente por tener tiempos
de respuesta rápidos, ser fáciles de instalar, simples de usar y confiables. Además,
los dispositivos dentro de una red INSTEON pueden ser direccionados por el ID
Code de 24 bits, que se asigna al momento de su fabricación.
Por otro lado, INSTEON está basado en las capas del modelo OSI, lo que
representa buenas características de escalabilidad y eficiencia. En la figura 2.3, se
muestran las capas del modelo OSI.
Capa de Aplicación
Capa de Presentación
Capa de Sesión
Capa de Transporte
Capa de Red
Capa de Enlace de Datos
Capa Física
Figura 2.3. Modelo de capas de la tecnología INSTEON [11].
9
d) LonWorks
Es un protocolo abierto basado en el estándar ANSI/EIA 709.1 y fue desarrollado
por Echelon Corporation, el cual inventó el Neuron Chip para ser instalado por
cualquier fabricante en los equipos LonWorks como su componente principal.
Asimismo, posee buenos niveles de eficiencia, confiabilidad y seguridad, utilizando
una arquitectura descentralizada para ser implementada con dispositivos de bajo
costo.
Esta tecnología provee una serie de servicios que permiten aplicaciones para
intercambiar información sin la necesidad de conocer la topología de la red, los
nombres, las direcciones o las funciones de los elementos que la conforman,
proporcionando ventajas sobre la escalabilidad de los sistemas bajo esta
tecnología.
Por otro lado, LonWorks es un protocolo que ofrece transmisión de datos punto a
punto, basado en las capas del modelo OSI, lo que asegura la escalabilidad y
eficiencia del estándar. En la figura 2.4, se muestran las capas del modelo OSI.
Capa de Aplicación
Capa de Presentación
Capa de Sesión
Capa de Transporte
Capa de Red
Capa de Enlace de Datos
Capa Física
Figura 2.4. Modelo de capas de la tecnología LonWorks [12].
10
e) Wi-Fi
Es una tecnología de comunicación inalámbrica basada en el estándar IEEE802.11,
que presenta mayor difusión en la actualidad, debido a su compatibilidad con los
servicios de las redes de área local o LAN’s. Es así que la mayoría de equipos de
uso cotidiano como computadoras portátiles, celulares, PDA’s, etc. poseen tarjetas
de red inalámbricas compatibles con Wi-Fi, beneficiando la portabilidad y flexibilidad
para la transferencia de información a través de la red.
Wi-Fi utiliza ondas de radio en las bandas de frecuencia de 2.4 GHz y 5 GHz como
medio de transporte de datos. En la tabla 2.5, se presentan los protocolos basados
en el estándar IEEE 802.11 más conocidos actualmente [13].
11
utiliza un bloque simétrico encriptado para procesar la información en bloques de
128 bits con llaves de diferentes longitudes [14].
2.2.1.1. Elementos
a) Sensores
Son dispositivos que transforman magnitudes físicas o químicas, en magnitudes
eléctricas que los controladores del sistema puedan interpretar y procesar [16].
b) Actuadores
Son dispositivos capaces de generar la fuerza necesaria para mover o actuar sobre
algún elemento mecánico, de acuerdo a los comandos de control enviados por un
controlador [16].
12
c) Controladores
Son los encargados de llevar el control del sistema, procesando la información
enviada por los sensores o algún medio externo, para luego tomar una decisión y,
finalmente, transmitir los comandos de control necesarios a los actuadores, y de
esa forma modificar las variables del sistema [16].
2.2.1.2. Subsistemas
a) Sistema de Seguridad Contra Incendios
Estos sistemas están diseñados para alertar y proteger a las personas ante la
presencia de fuego, ya sea con algún tipo de alarma, las cuales son activadas por
detectores de humo o gas, permitiendo a los residentes tomar las medidas
preventivas de evacuación. Asimismo, permiten minimizar los daños materiales de
las viviendas, activando dispositivos para extinguir el fuego [7].
13
dentro y fuera de la casa, sensores magnéticos para puertas y ventanas, y en
ocasiones cámaras de vigilancia monitoreadas. Asimismo, los componentes para el
control de acceso poseen medios de autentificación y son implementados para
permitir el ingreso sólo a personas autorizadas [7].
14
Figura 2.7. Router ADSL inalámbrico en una WLAN con Internet.
15
CAPÍTULO 3: DEFINICIÓN DE LAS CARACTERÍSTICAS DE LA WLAN DE
SOPORTE Y DE LA RED ACTUADOR – SENSOR BASADA EN ZIGBEE SEGÚN
LOS REQUERIMIENTOS DEL MEDIO
3.1. Hipótesis
3.1.1. Hipótesis Principal
Dado que los sistemas de seguridad para edificios de departamentos no han sido
ampliamente adoptados, debido a los elevados costos de implementación y
mantenimiento, siendo el factor humano el de mayor utilización al momento de
prevenir los incidentes que pudiesen ocurrir dentro de estas instalaciones. Por otro
lado, los dispositivos electrónicos que vienen siendo implementados en los
sistemas de seguridad, hacen que los residentes deban seguir ciertas reglas para el
correcto funcionamiento de éstos. Asimismo, actualmente, existe un gran número
de viviendas que cuenta con redes locales inalámbricas, las cuales no vienen
siendo aprovechadas para aplicaciones de seguridad dentro de edificios de
departamentos. Entonces, el diseño de un sistema de seguridad inalámbrico, que
integre sensores y actuadores, controlados desde un sistema de monitoreo
automático, y que además pueda ser adaptado a la medida de la distribución de los
ambientes del edificio, es la solución más adecuada para resolver este problema,
debido al alto rendimiento que las nuevas tecnologías de comunicación pueden
brindar en cuanto a eficiencia, flexibilidad, escalabilidad y accesibilidad del usuario
desde cualquier dispositivo que sea compatible con la tecnología Wi-Fi, gracias al
uso de mecanismos de traducción de protocolos entre la red domótica y la red local
inalámbrica de las viviendas.
16
3.2. Objetivos
3.2.1. Objetivo General
Diseñar un sistema de seguridad para un edificio de departamentos basado en una
WLAN bajo la tecnología Wi-Fi para el control y monitoreo del sistema, así como el
protocolo Zigbee para la interconexión de los sensores y actuadores, asegurando la
escalabilidad y flexibilidad del mismo. La solución integrará sensores de
movimiento, detectores de humo, alarmas contra robos e incendios, control de
accesos y manejo de la iluminación de las instalaciones, que serán integrados para
formar parte de los componentes del sistema como la seguridad contra robos,
seguridad contra incendios, control de accesos y control de la iluminación, y
asimismo un dispositivo de respaldo de energía.
a) Flexibilidad
La flexibilidad del sistema de seguridad es muy importante para futuras
modificaciones que puedan surgir dentro del mismo, es así que a largo plazo esta
característica involucra en su mayoría modificaciones de los componentes físicos.
Por otro lado, la flexibilidad a corto plazo toma en cuenta los cambios en las
aplicaciones que controlan los dispositivos instalados en el sistema [7].
17
b) Comunicación
La comunicación dentro del sistema de seguridad es una de las características más
importantes para el correcto funcionamiento de éste, puesto que dependerá de su
disponibilidad para respaldar la adquisición de la información necesaria para el
control de los dispositivos del sistema [7].
c) Seguridad
La seguridad del sistema es una característica intrínseca de la solución planteada,
debido a que se debe tomar en cuenta la seguridad interna de la implementación,
considerando que el control de las funciones estará siendo supervisado desde un
equipo remoto inalámbricamente. Para esto es necesario habilitar mecanismos de
encriptación para reducir la vulnerabilidad del sistema ante posibles ataques [7].
d) Consumo de Energía
El consumo de energía es una característica que viene tomando mucha importancia
actualmente, debido a que la implementación de un sistema de seguridad
automatizado requiere reducir el costo energético para de esa manera validar la
inversión inicial por parte de los usuarios. Es por esta razón que el diseño de la
solución debe integrar diversos componentes de bajo consumo de energía, para de
esa manera reducir los costos operativos y contribuir con el medio ambiente [7].
18
c) Control de Accesos
El diseño de este componente integrará la cerradura eléctrica de la entrada a cada
departamento y una base de datos incluida en el sistema de control, donde se
registrarán diferentes códigos de acceso de acuerdo a la cantidad de miembros del
hogar. Una vez activado el sistema, para ingresar a la vivienda, cada miembro
deberá digitar su código en un teclado matricial que se encontrará en la parte
externa del departamento y se validará dicho código en la base de datos. Si éste es
correcto, la cerradura se abrirá automáticamente. Asimismo, se llevará el registro
de todos los intentos, sean éstos válidos o no, permitiendo a los usuarios realizar
consultas cuando así lo requieran.
d) Control de Iluminación
El diseño de este componente integrará la seguridad contra robos y parte de la
iluminación de la vivienda. Es así que al activarse los sensores de movimiento, el
sistema de control encenderá las luces de la sala y los pasadizos automáticamente
como mecanismo de disuasión de intrusos, debido a que estas áreas comprenden
las zonas comunes y se encuentran cerca de la entrada principal, siendo éste el
punto de acceso más vulnerable.
Figura 3.1. Vista de planta del departamento seleccionado ubicado en el tercer piso.
19
3.3.4. Coexistencia de Zigbee y Wi-Fi
Actualmente, la banda de 2.4GHz es compartida por diferentes tecnologías como
Wi-Fi, Bluetooth y más recientemente Zigbee. Es por esta razón que, para asegurar
un buen comportamiento, dichas tecnologías necesitan coexistir de manera pacífica
y sin ningún tipo de interferencia que pueda perjudicar la comunicación de
dispositivos con protocolos diferentes. Sin embargo, los diferentes niveles de
potencia y según los canales utilizados por cada una de estas tecnologías,
ocasionan que en situaciones específicas pueda existir interferencia.
Se han implementado algunas técnicas sobre Zigbee para disminuir el impacto por
interferencia y de ese modo asegurar la coexistencia con otras tecnologías de
comunicación. El estándar IEEE 802.15.4, que define la capa física y el control de
acceso al medio del protocolo Zigbee, utiliza una modulación de espectro disperso,
con lo cual se utiliza un ancho de banda mayor a lo necesario para la transmisión
de información. Asimismo, dicho estándar divide la banda de 2.4GHz en 16 canales
no traslapados, con un ancho de canal de 2MHz y una banda de guarda de 5MHz,
de los cuales cuatro de ellos no se superponen a los canales más usados para
tráfico Wi-Fi. En la figura 3.2, se observa que los canales 15, 16, 21 y 22 no se
superponen a los comúnmente utilizados canales 1, 7 y 13 en los estándares IEEE
802.11b/g de la tecnología Wi-Fi.
Por otro lado, antes del establecimiento de una nueva red, los dispositivos Zigbee
muestrean todos los canales y de esa manera pueden elegir el canal que presente
menor interferencia. Del mismo modo, Zigbee incluye comandos de confirmación de
los datos enviados por parte del receptor, por lo que la información es retransmitida
hasta que se confirme la recepción sin errores. Por último, Zigbee es una tecnología
diseñada bajo la topología tipo malla, con lo cual es posible transmitir los paquetes
a través de múltiples rutas, en caso de que alguna de ellas no se encuentre
disponible por interferencia. En la figura 3.3, se muestra el mecanismo que utilizan
20
los dispositivos basados en Zigbee implementados en una red tipo malla, los cuales
automáticamente generan otra ruta al encontrar interferencia en alguno de los
tramos de la red.
21
esta manera, la coexistencia de este estándar con la tecnología Wi-Fi proporcionará
la disponibilidad de comunicación en todo momento. Asimismo, la escalabilidad del
protocolo permitirá realizar ampliaciones en el sistema de manera sencilla, sin
importar la cantidad de nuevos dispositivos, gracias a su capacidad para manejar
una alta densidad de nodos. Finalmente, el uso de Zigbee proporcionará un
reducido consumo de energía y la transmisión segura de la información, puesto que
los paquetes serán encriptados con el Estándar Avanzado de Encriptación o AES.
22
WLAN de soporte bajo la tecnología Wi-Fi. En la tabla 3.1, se presentan las
especificaciones técnicas de algunos módulos Zigbee.
b) Módulo Wi-Fi
El módulo Wi-Fi deberá interconectarse con la WLAN de soporte bajo la tecnología
Wi-Fi, la cual servirá para el monitoreo del sistema y, a su vez, generará los
comandos de control para los diversos componentes que conforman la red actuador
- sensor. De esta manera, este dispositivo deberá contar con una amplia cobertura,
permitiendo la flexibilidad en cuanto a la ubicación del mismo. Asimismo, el módulo
Wi-Fi deberá ser de baja complejidad para su fácil configuración, además de contar
con los mecanismos de encriptación WEP, WPA y WPA2 para prevenir ataques, así
como con un puerto UART para la comunicación serial con el módulo Xbee ZB
coordinador. En la tabla 3.2, se presentan las especificaciones técnicas de algunos
módulos Wi-Fi.
23
Tabla 3.2. Especificaciones técnicas de algunos módulos Wi-Fi.
Especificación ConnectCore Airborne Secure Socket iWiFi
Fabricante Digi Quatech Connect One
Tecnología Wi-Fi Wi-Fi Wi-Fi
Frecuencia 2.4GHz 2.4GHz 2.4GHz
11Mbps (802.11b) 11Mbps (802.11b) 11Mbps (802.11b)
Tasa de Tx.
54Mbps (802.11g) 54Mbps (802.11g) 54Mbps (802.11g)
Alcance 45m 45m 45m
Voltaje DC 3.3V 3.3V 3.3V
Corriente Rx. 443mA 420mA 190mA
Corriente Tx. 554mA 620mA 260mA
Puerto Serial UART UART UART
Encriptación WEP, WPA, WPA2 WEP, WPA, WPA2 WEP, WPA, WPA2
Precio (USD) 414.00 89.00 56.00
De esta manera, se seleccionará el módulo Secure Socket iWiFi, debido a que
cumple con todos los requisitos antes mencionados, siendo un dispositivo
compatible con la tecnología Wi-Fi. Asimismo, cuenta con un alcance de hasta 45m
en interiores y es posible configurarlo de manera rápida, con ayuda de la aplicación
gratuita desarrollada por el fabricante. Del mismo modo, permite establecer
conexión con las diversas WLAN sin importar el tipo de encriptación, debido a que
posee compatibilidad con la mayoría de protocolos de seguridad. Por otra parte,
este módulo posee un puerto UART, manejando niveles de voltaje de 3.3VDC, lo
cual lo hace compatible para la comunicación serial con los módulos Xbee ZB.
Finalmente, la Pontificia Universidad Católica del Perú ha adquirido este módulo
para su uso en diferentes proyectos, proporcionando ventajas sobre la
disponibilidad del mismo.
c) Microcontrolador
El microcontrolador es uno de los elementos del control de accesos, debido a que la
lectura de los dígitos del teclado matricial tendrá que realizarse a través de ocho
pines; cuatro de ellos serán configurados como entradas; y cuatro, como salidas.
Asimismo, dichos dígitos ingresados deben ser incluidos dentro de una trama
Zigbee para la comunicación entre los módulos Xbee ZB, por lo cual el
microcontrolador deberá tener un puerto UART para la comunicación serial,
manejando niveles de voltaje de 3.3VDC para ser compatible con los módulos
Zigbee. En la tabla 3.3, se presentan las especificaciones técnicas de algunos
microcontroladores.
24
Tabla 3.3. Especificaciones técnicas de algunos microcontroladores.
Especificación ATmega8L PIC16F873
Fabricante ATmel Microchip
Velocidad 0-8MHz 0-20MHz
Voltaje DC 2.7-5.5V 2.0-5.5V
Bits de Registros 8 bits 8 bits
Puertos Digitales B,C,D A,B,C
Puerto Serial USART, SPI USART, SPI
Precio (USD) 5.90 5.20
De esta manera, se seleccionará el microcontrolador ATmega8L, debido a que
cumple con todos los requisitos antes mencionados. Es así que cuenta con dos
puertos de 8 bits y un puerto de 7 bits, los cuales pueden ser configurados
fácilmente como entradas y salidas. Del mismo modo, este dispositivo cuenta con
un puerto serial USART configurable, manejando niveles de voltaje de 2.7VDC –
5.5VDC. Finalmente, el ATmega8L es un dispositivo de buena disponibilidad en el
mercado local y, asimismo, los estudiantes de Ingeniería Electrónica estamos
familiarizados con este dispositivo, por cursos previos dentro del plan de estudios.
d) UPS
El sistema de seguridad requerirá de un UPS como respaldo de energía para evitar
desactivaciones ante un corte de energía [21]. De esta manera, el UPS deberá
proveer una potencia mínima de 300W, necesaria para el funcionamiento de los
principales elementos conectados a la línea eléctrica como los Xbee ZB, Secure
Socket iWiFi, microcontrolador, computador, pantalla, y router ADSL inalámbrico.
Asimismo, deberá contar con un mínimo de 6 conectores con voltaje de salida de
220-240VAC/60Hz. En la tabla 3.4, se presentan las especificaciones técnicas de
algunos UPS.
25
CAPÍTULO 4: DISEÑO DEL SISTEMA DE SEGURIDAD BASADO EN UNA RED
ACTUADOR – SENSOR ZIGBEE CON SOPORTE EN LA WLAN DE UN EDIFICIO
DE DEPARTAMENTOS
26
4.1.2. Diseño del Acondicionamiento de Señal de los Sensores y Actuadores
El diseño del acondicionamiento de señal de los sensores y actuadores, necesita
tomar en cuenta los niveles de voltaje que corresponderán a los valores lógicos de
activación y desactivación de éstos, debido a que los módulos Xbee ZB tomarán
lectura del estado de los sensores y, asimismo, activarán los actuadores, operando
con 3.3VDC para el nivel 1 lógico y 0VDC para el 0 lógico. A continuación, se
describe el diseño de cada tarjeta para el acondicionamiento de los dispositivos
finales que conforman el sistema de seguridad.
27
cual se alimentará la tarjeta. En la figura 4.2, se muestra el diagrama esquemático y
la tarjeta de acondicionamiento de señal del sensor de movimiento.
El detector de humo cuenta con una entrada para la alimentación con un rango de
6VDC – 12VDC, y por otro lado posee una salida de un relé N.O. o normalmente
abierto, que se activa o desactiva dependiendo del estado del detector [23].
28
bajo consumo de energía de los circuitos integrados basados en la tecnología
CMOS, ayudará a prolongar la vida de la batería de 9VDC con la cual se alimentará
la tarjeta. En la figura 4.4, se muestra el diagrama esquemático y la tarjeta de
acondicionamiento de señal del detector de humo.
29
Figura 4.5. Tarjeta del circuito de activación de la cerradura eléctrica.
Durante las pruebas, una salida digital del Xbee ZB será conectada a la entrada IN
para disparar el optoTRIAC desde el servidor. Por otro lado, la entrada VAC estará
conectada a una fuente de 12VAC para energizar la cerradura y activarla.
Finalmente, la salida LOCK se conectará a la cerradura eléctrica para activarla.
Durante las pruebas, una salida digital del Xbee ZB se conectará a la entrada IN
para disparar el optoTRIAC desde el servidor. Por otro lado, la entrada VAC estará
conectada a la línea eléctrica de 220VAC para energizar las lámparas cuando éstas
30
sean activadas. Finalmente, la salida LIGHT será conectada a las lámparas
incandescentes para activarlas.
31
Figura 4.8. Tarjeta de acondicionamiento de señal del teclado matricial.
Tabla 4.1. Trama Zigbee para enviar datos a través del Xbee ZB.
Trama para enviar datos recibidos por el puerto UART
00 13 A2 05 06
7E 00 13 10 01 00 40 54 00 00 00 00 07 08 5A
41 72 7E
Radio de Dirección
Dirección Datos
Longitud Tipo Broadcast de
ID de de a
Arranque de de (Máxima Opciones Destino Checksum
Trama Destino Enviar
Trama Trama Cantidad de 16
de 64 bits (Clave)
de Saltos) bits
32
la figura 4.9, se muestra la conexión serial entre el módulo Xbee ZB coordinador y
el módulo Secure Socket iWiFi, y en la figura 4.10, se muestra el diagrama
esquemático y la tarjeta del módulo Xbee ZB coordinador.
Figura 4.9. Conexión serial (UART) entre el Xbee ZB y el Secure Socket iWiFi.
Durante las pruebas, los pines DIN, DOUT y GND del Xbee ZB se conectarán con
los pines de TX1, RX1 y GND del Secure Socket iWiFi, respectivamente. Por otro
lado, la tarjeta del Zigbee coordinador se energizará con un adaptador de 9VDC
conectado a la entrada VDC.
33
mediante comunicación serial con el nodo coordinador de la red actuador – sensor,
manejando niveles de voltaje de 3.3VDC.
Figura 4.11. WLAN para hogar implementada por el proveedor de Internet [24].
Figura 4.12. Conexión serial entre el Secure Socket iWiFi y el Xbee ZB coordinador.
34
Figura 4.13. Tarjeta del nodo de acceso a la WLAN de soporte.
Durante las pruebas, los pines TX1, RX1 y GND del Secure Socket iWiFi se
conectarán con los pines DIN, DOUT y GND del Xbee ZB, respectivamente. Por
otro lado, se conectará un adaptador de 9VDC a la entrada VDC para energizar la
tarjeta del nodo de acceso a la WLAN de soporte.
La red actuador – sensor basado en el protocolo Zigbee estará conformada por tres
módulos Xbee ZB configurados en modo router para incrementar el alcance de los
dispositivos dentro de la vivienda, y los puertos digitales configurados como
entradas y salidas estarán conectados a los sensores y actuadores,
respectivamente mediante tarjetas de acondicionamiento de señal. Por otro lado, el
teclado matricial donde se digitará la clave para permitir el ingreso de las personas
desde el exterior, estará conectado a un microcontrolador ATmega8L programado
para recibir los dígitos ingresados e incluirlos en una trama Zigbee. De esta
manera, todos los nodos router enviarán información al nodo coordinador y
35
viceversa, ya que éste será el encargado de transmitir todos los comandos de
control del servidor.
MODEM ROUTER
WI-FI
XBEE ZB
ROUTERS
ETHERNET
SERVIDOR USUARIO
XBEE ZB
SECURE SOCKET COORDINADOR
IWIFI
WI-FI ZIGBEE
COMUNICACIÓN SERIAL
XBEE ZB
ROUTERS
MONITOR USUARIO
UPS
SENSOR DE DETECTOR DE
MOVIMIENTO HUMO
ALARMA
36
WLAN propia, lo cual proporciona aún mayor independencia para la implementación
de la solución final de cada vivienda.
37
Finalmente, el módulo Xbee ZB configurado como coordinador se encontrará
ubicado a pocos centímetros del Secure Socket iWiFi, que proporcionará el acceso
a la WLAN de soporte. Ambos estarán conectados físicamente y localizados en un
punto intermedio de la vivienda, proporcionando una mayor cobertura para controlar
a todos los dispositivos del sistema. En la figura 4.15, se muestra la vista de planta
del departamento con la ubicación de cada dispositivo.
Figura 4.15. Vista de planta del departamento con la ubicación de los dispositivos.
4.5. Diseño del Interfaz de Usuario para el Control y Monitoreo del Sistema
de Seguridad
El diseño del interfaz de usuario para el control y monitoreo del sistema de
seguridad está basado en una aplicación Seguridad desarrollada en Microsoft
Visual Basic 6.0. Se eligió este lenguaje de programación por su baja complejidad y
flexibilidad para manejar los diferentes puertos de un computador con sistema
operativo Windows XP en adelante. Esta aplicación será ejecutada en el servidor
del sistema de seguridad desde donde se realizará el control y monitoreo
automático del sistema. Por otro lado, se ha desarrollado una aplicación Monitoreo
Portátil únicamente para el monitoreo, que podrá ser ejecutada en cualquier
computador portátil que cuente con Windows XP en adelante. En este programa,
sólo se recibirán mensajes de alerta cuando se detecte alguna incidencia y no se
podrá realizar ningún tipo de control, para de esa manera evitar sabotajes en el
sistema. Asimismo, estas aplicaciones se incluyen en los anexos.
Finalmente, una vez desarrolladas las aplicaciones en Visual Basic, será posible
ingresar al programa Seguridad y Monitoreo Portátil, haciendo clic sobre los
respectivos íconos ubicados en el escritorio. En la figura 4.16, se muestran las
ventanas de interfaz de usuario de las aplicaciones Seguridad y Monitoreo Portátil.
38
Figura 4.16. Interfaces de usuario de los programas Seguridad y Monitoreo Portátil.
39
Figura 4.17. Módulo de programación del Xbee ZB.
40
la última configuración almacenada con el botón Read. Luego, proceder a
seleccionar en Baud Rate la tasa de baudios a 19200bps para la comunicación
serial y verificar que el tipo de dispositivo sea el correcto en Function Set. En
este caso, configurar el coordinador como Zigbee Coordinador API y los routers
como Zigbee Router API. Finalmente, guardar los cambios con el botón Write.
En la figura 4.19, se muestra la configuración detallada.
41
Figura 4.20. Configuración de los puertos digitales del Xbee ZB.
4.6.2. Configuración del Secure Socket iWiFi con el iChip Config Utility
Esta aplicación gratuita fue desarrollada por la compañía Connect One y es
compatible únicamente con Windows XP. A continuación, se detalla el
procedimiento para la configuración del módulo Secure Socket iWiFi.
3. Ingresar al programa, haciendo clic sobre el ícono del iChip Config Utility
ubicado en el escritorio.
42
4. En la ventana principal, ingresar a la opción Serial Ports, seleccionar la
velocidad deseada a 19200bps y el puerto para la comunicación serial. Luego,
ingresar a Full Configuration y seleccionar los parámetros para registrar el
dispositivo en la WLAN de soporte y, posteriormente, ingresar al ícono de Dumb
Terminal para establecer la conexión con la WLAN y activar el modo SerialNET.
En la figura 4.22, se muestra la ventana principal del iChip Config Utility.
43
6. Seguidamente, seleccionar la pestaña SerialNET e ingresar los parámetros de
configuración. En FCHR ingresar el carácter que permitirá enviar la información
almacenada en el buffer, en este caso, se seleccionará 0x7E, debido a que se
encuentra presente en el arranque de todas las tramas Zigbee. Asimismo, en la
opción SNSI, ingresar los parámetros para la comunicación serial, 19200bps,
8bits de datos, sin paridad, 1bit de parada, sin control de flujo. Luego, en la
opción HSRV, ingresar la dirección IP del servidor, así como el puerto de
comunicación, en este caso la 192.168.1.33:5100. Se debe tener en cuenta que
lo recomendable es seleccionar puertos a partir del 1024 de los 65536
disponibles, puesto que los primeros están reservados para la comunicación del
sistema operativo mediante diferentes protocolos. Finalmente, en la parte
inferior de la ventana, seleccionar Save para guardar los cambios y cerrar la
ventana. En la figura 4.24, se muestra la configuración para activar el modo
SerialNET del dispositivo.
44
4.7. Pruebas del Funcionamiento de los Componentes del Sistema de
Seguridad
Las pruebas del sistema de seguridad se realizaron a menor escala, simulando los
diferentes incidentes que pudiesen ocurrir dentro del departamento. De esta
manera, se utilizó un sensor de movimiento y un detector de humo, así como dos
lámparas incandescentes para simular la alarma en el primer caso; el control de la
iluminación y apertura de la cerradura eléctrica, en el segundo. Asimismo, se utilizó
un teclado matricial desde donde se ingresaba la clave de acceso a la vivienda. Por
otro lado, se ejecutó la aplicación Seguridad y Monitoreo Portátil en un computador
portátil con sistema operativo Windows 7. En la figura 4.26, se muestra el diagrama
de pruebas del sistema. A continuación, se detallan las pruebas realizadas.
45
En la figura 4.27, se muestra el modelo de pruebas y la conexión de los
dispositivos con el Xbee ZB router.
Figura 4.27. Modelo de pruebas y conexión de los dispositivos con el Xbee ZB.
46
Figura 4.28. Aplicación Seguridad y solicitudes realizadas por el usuario.
47
Figura 4.29. Aplicación Seguridad y detección de incidentes.
48
CONCLUSIONES
49
RECOMENDACIONES
50
BIBLIOGRAFÍA
[3] INEI
2010 Perú en Cifras. Consulta: 15 de mayo de 2010.
<http://www.inei.gob.pe/>
[6] CEDOM
2008 Instalaciones Domóticas. 2da. edición. Madrid: AENOR. Consulta: 11
de enero de 2010.
<http://www.cedom.es/fitxers/documents/publicacions/InstalDomot_C
uadernbuenaspract_CEDOM_2ed.pdf>
51
[8] DOMÓTICA VIVA
2003 “Bricolaje X-10 Curso de Domótica a través de la red eléctrica”.
Consulta: 18 de marzo de 2010.
<http://www.domoticaviva.com/X-10/X-10.htm>
52
[15] FUJITSU SIEMENS COMPUTERS
2007 “El Futuro del Hogar Digital”. CASADOMO.com. Consulta: 10 de
marzo de 2010.
<http://www.casadomo.com/noticiasDetalle.aspx?id=9914&c=6&idm=
10&pat=10>
[16] PÉRTIGA
2005 Sistemas de control: elementos componentes, variables, función de
transferencia y diagrama funcional. Material de enseñanza. Consulta:
15 de enero de 2010.
<http://www.jmrivas.es/pdf/tecnologia.pdf>
[18] EHOW
2007 “Types of Motion Detectors”. Consulta: 15 de abril de 2010.
<http://www.ehow.com/about_5373497_types-motion-detectors.html>
[20] FREEBSD
2004 “Serial and UART Tutorial”. Consulta: 25 de mayo de 2010.
<http://www.freebsd.org/doc/en_US.ISO8859-1/articles/serial-uart/>
53
[22] VISONIC
2008 Disc Miniature 360 Ceiling Mount PIR Detector. Consulta: 11 de
marzo de 2010.
<http://www.visonic.com/Products/Wired-Detectors/Disc>
[23] GE SECURITY
2009 Smoke Detector, NetworX PID, Photo, 2-wire, CleanMe®, 12-24VDC.
Consulta: 13 de marzo de 2010.
<http://www.gesecurity.com/portal/site/GESecurity/menuitem.f76d98c
cce4cabed5efa421766030730?selectedID=7267&seriesyn=true&seri
esID=>
[24] MOVISTAR
2010 “Línea ADSL RDSI”. Consulta: 27 de mayo de 2010.
<http://www.movistar.es/qx/Nav/qxTONavFichProdImp/0,,v_producto
+18162+v_idioma+es+v_segmento+AHOG,00.html>
[26] AULACLIC
2005 “Wi-Fi. La Comunicación Inalámbrica”. Consulta: 15 de enero de
2010.
<http://www.aulaclic.es/articulos/wifi.html>
54
ANEXOS
Anexo A
1
Anexo B
2
Anexo C
INICIO
Sistema de seguridad
inicia conexión
NO
Se activa la alarma, se
envía mensaje de alerta SI NO
¿Se activó detector ¿Se activó sensor
y se lee estado del
de humo? de movimiento?
detector después de 45
segundos
SI
SI
¿Sigue activo el NO
Se abre la puerta Se envía mensaje de
sensor de
principal falsa alarma
movimiento?
SI
Se activa la alarma
3
Diagrama de Flujo de la Aplicación Seguridad para el Control y Monitoreo
Manual
4
Anexo D
5
'obtiene la cantidad de Winsocks que tenemos
numElementos = Winsock2.UBound
'recorre el arreglo de sockets
For i = 0 To numElementos
'si el socket se encuentra conectado...
If Winsock2(i).State = sckConnected Then
'enviamos la trama para leer el sensor de movimiento ID 01
Winsock2(i).SendData
hex2ascii("7E000F17010013A20040544171FFFE02495351")
'apuntamos al final del contenido del TextBox e insertamos los nuevos datos
obtenidos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
Text1.Text = Text1.Text & "Conexión " & i & ": Servidor >" & "Solicitud de lectura del
sensor de movimiento" & vbCrLf & Date & " " & Time & vbCrLf 'mostramos
los datos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
'generamos un retardo de 1 seg para poder enviar nuevamente la trama y leer los
datos correctos
delay (1)
Winsock2(i).SendData
hex2ascii("7E000F170F0013A20040544171FFFE02495343")
End If
Next
End Sub
6
Winsock2(i).SendData
hex2ascii("7E001017060013A20040544171FFFE0244300470")
'apuntamos al final del contenido del TextBox e
'insertamos los nuevos datos obtenidos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
Text1.Text = Text1.Text & "Conexión " & i & ": Servidor >" & "Solicitud de apagado
de alarma" & vbCrLf & Date & " " & Time & vbCrLf 'mostramos los datos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
Else
'enviamos la trama para desactivar las luces
Winsock2(i).SendData
hex2ascii("7E001017050013A20040544171FFFE0244300471")
'apuntamos al final del contenido del TextBox e insertamos los nuevos datos
obtenidos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
Text1.Text = Text1.Text & "Conexión " & i & ": Servidor> " & "Solicitud de apagado
de iluminación" & vbCrLf & Date & " " & Time & vbCrLf 'mostramos los
datos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
End If
End If
Next
End Sub
7
Winsock2(i).SendData
hex2ascii("7E001017040013A20040544171FFFE0244300571")
'apuntamos al final del contenido del TextBox e
'insertamos los nuevos datos obtenidos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
Text1.Text = Text1.Text & "Conexión " & i & ": Servidor> " & "Solicitud de encendido
de alarma" & vbCrLf & Date & " " & Time & vbCrLf 'mostramos los datos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
Else
'enviamos la trama para activar las luces
Winsock2(i).SendData
hex2ascii("7E001017030013A20040544171FFFE0244300572")
'apuntamos al final del contenido del TextBox e insertamos los nuevos datos
obtenidos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
Text1.Text = Text1.Text & "Conexión " & i & ": Servidor> " & "Solicitud de encendido
de iluminación" & vbCrLf & Date & " " & Time & vbCrLf 'mostramos los
datos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
End If
End If
Next
End Sub
'Activa la cerradura
Private Sub Command7_Click()
Dim Clave As String
Dim mensaje As String
Dim numElementos As Integer 'numero de sockets
Dim i As Integer 'contador
'obtiene la cantidad de Winsocks que tenemos
numElementos = Winsock2.UBound
'recorre el arreglo de sockets
For i = 0 To numElementos
'si el socket se encuentra conectado...
If Winsock2(i).State = sckConnected Then
8
'apuntamos al final del contenido del TextBox e insertamos los nuevos datos
obtenidos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
Text1.Text = Text1.Text & "Conexión " & i & ": Servidor> " & "Solicitud interna de
apertura de puerta principal" & vbCrLf & Date & " " & Time & vbCrLf
'mostramos los datos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
Clave = Text2.Text
Text2.Text = ""
Select Case Clave
Case 1234
mensaje = "Código 1 válido"
valido = 1
Case 5678
mensaje = "Código 2 válido"
valido = 1
Case 9876
mensaje = "Código 3 válido"
valido = 1
Case 5432
mensaje = "Código 4 válido"
valido = 1
Case Else
mensaje = "Código inválido"
valido = 0
End Select
'apuntamos al final del contenido del TextBox e insertamos los nuevos datos
obtenidos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
Text1.Text = Text1.Text & "Conexión " & i & ": Servidor> " & mensaje & vbCrLf &
Date & " " & Time & vbCrLf 'mostramos los datos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
If valido = 1 Then
'enviamos la trama para apertura la puerta
Winsock2(i).SendData
hex2ascii("7E001017070013A20040544171FFFE024431056D")
delay (2)
9
'enviamos la trama para detener apertura de puerta después de 2 seg
Winsock2(i).SendData
hex2ascii("7E001017080013A20040544171FFFE024431046D")
End If
End If
Next
End Sub
'Recibe datos
Private Sub Winsock2_DataArrival(Index As Integer, ByVal bytesTotal As Long)
Dim Buffer As String 'variable para guardar los datos
'obtenemos los datos y los guardamos en una variable
Winsock2(Index).GetData Buffer
'verificamos el contenido de la trama
ValidaTrama (HexString(Buffer))
End Sub
'Escucha Conexiones
Private Sub Command2_Click()
'cerramos cualquier conexion previa
Winsock1.Close
'asignamos el puerto local que abriremos
Winsock1.LocalPort = Text3.Text
'deja el socket escuchando conexiones
Winsock1.Listen
'desplegamos un mensaje en la ventana
Text1.SelStart = Len(Text1.Text)
Text1.Text = Text1.Text & "*** Escuchando conexiones." & vbCrLf & Date & " " &
Time & vbCrLf
Text1.SelStart = Len(Text1.Text)
End Sub
'Cierra Conexiones
Private Sub Command3_Click()
'cierra la conexion
Winsock2(Index).Close
'desplegamos un mensaje en la ventana
10
Text1.SelStart = Len(Text1.Text)
Text1.Text = Text1.Text & "*** Conexión cerrada por el usuario." & vbCrLf & Date &
" " & Time & vbCrLf
Text1.SelStart = Len(Text1.Text)
End Sub
Private Sub Winsock2_Close(Index As Integer)
'cierra la conexión
Winsock2(Index).Close
'desplegamos un mensaje en la ventana
Text1.SelStart = Len(Text1.Text)
Text1.Text = Text1.Text & "Conexión " & Index & ":*** Conexión cerrada por el
cliente." & vbCrLf & Date & " " & Time & vbCrLf
Text1.SelStart = Len(Text1.Text)
End Sub
11
Text1.SelStart = Len(Text1.Text)
Text1.Text = Text1.Text & "Conexión " & numSocket & ":*** Conexión aceptada y
listo para interactuar." & vbCrLf & Date & " " & Time & vbCrLf
Text1.SelStart = Len(Text1.Text)
End Sub
12
Next
HexString = strHex
End Function
13
End If
End Select
End Function
14
ElseIf Mid(humo, 10, 1) = "C" And (Mid(humo, 57, 1) = "4" Or Mid(humo, 57, 1) = "5"
Or Mid(humo, 57, 1) = "0" Or Mid(humo, 57, 1) = "1") Then
message3 = "ALERTA detección de humo confirmada"
Else
message3 = "No se detectó humo"
'enviamos la trama para desactivar la alarma
Winsock2(i).SendData
hex2ascii("7E001017060013A20040544171FFFE0244300470")
End If
'apuntamos al final del contenido del TextBox e insertamos los nuevos datos
obtenidos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
Text1.Text = Text1.Text & "Conexión " & i & ": Servidor> " & message3 & vbCrLf &
Date & " " & Time & vbCrLf 'mostramos los datos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
End Function
15
valido = 1
Case "5 4 3 2"
mensaje = "Código 4 válido"
valido = 1
Case Else
mensaje = "Código inválido"
valido = 0
End Select
'apuntamos al final del contenido del TextBox e insertamos los nuevos datos
obtenidos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
Text1.Text = Text1.Text & "Conexión " & i & ": Servidor> " & mensaje & vbCrLf &
Date & " " & Time & vbCrLf 'mostramos los datos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
If valido = 1 Then
'enviamos la trama para apertura la puerta
Winsock2(i).SendData
hex2ascii("7E001017070013A20040544171FFFE024431056D")
delay (2)
'enviamos la trama para detener apertura de puerta después de 2 seg
Winsock2(i).SendData
hex2ascii("7E001017080013A20040544171FFFE024431046D")
End If
End Function
'Valida Incidente
Public Function Incidente(ByVal alerta As String)
Dim alertahumo As Integer
Dim alertamov As Integer
Dim message As String
Select Case Mid(alerta, 49, 1)
'se activó el sensor de movimiento
Case "8"
alertahumo = 0
alertamov = 1
message = "ALERTA se detectó presencia"
Case "9"
16
alertahumo = 0
alertamov = 1
message = "ALERTA se detectó presencia"
'se activó el detector de humo
Case "4"
alertahumo = 1
alertamov = 0
message = "ALERTA se detectó humo"
Case "5"
alertahumo = 1
alertamov = 0
message = "ALERTA se detectó humo"
'se activó el sensor de movimiento y detector de humo
Case "0"
alertahumo = 1
alertamov = 1
message = "ALERTA se detectó presencia y humo"
Case "1"
alertahumo = 1
alertamov = 1
message = "ALERTA se detectó presencia y humo"
End Select
Winsock2(i + 1).SendData message 'envia mensaje a equipos de monitoreo
If alertahumo = 1 Or alertamov = 1 Then
'apuntamos al final del contenido del TextBox e insertamos los nuevos datos
obtenidos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
Text1.Text = Text1.Text & "Conexión " & i & ": Servidor> " & message & vbCrLf &
Date & " " & Time & vbCrLf 'mostramos los datos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
End If
If alertamov = 1 Then
'enviamos la trama para encender las luces
Winsock2(i).SendData
hex2ascii("7E001017090013A20040544171FFFE024430056C")
delay (3)
'enviamos la trama para leer el sensor de movimiento
17
Winsock2(i).SendData
hex2ascii("7E000F170A0013A20040544171FFFE02495348")
'generamos un retardo de 2 seg para poder enviar nuevamente la trama y leer los
datos correctos
delay (1)
Winsock2(i).SendData
hex2ascii("7E000F170F0013A20040544171FFFE02495343")
ElseIf alertahumo = 1 Then
18
Anexo E
'Recibe datos
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim Buffer As String 'variable para guardar los datos
'obtenemos los datos y los guardamos en una variable
Winsock1.GetData Buffer
'apuntamos al final del contenido del TextBox e
'insertamos los nuevos datos obtenidos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
Text1.Text = Text1.Text & "Servidor >" & Buffer & vbCrLf & Date & " " & Time &
vbCrLf 'mostramos los datos
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
End Sub
'Solicita Conexión
Private Sub Command2_Click()
'asignamos los datos de conexion
Winsock1.RemoteHost = Text3.Text
Winsock1.RemotePort = Text4.Text
'conectamos el socket
Winsock1.Close
Winsock1.Connect
End Sub
19
'Cierra Conexión
Private Sub Command3_Click()
'cierra la conexión
Winsock1.Close
'desplegamos un mensaje en la ventana
Text1.Text = Text1.Text & "*** Conexión cerrada por el usuario." & vbCrLf
'desplazamos el scroll
Text1.SelStart = Len(Text1.Text)
End Sub
'Establece conexión
Private Sub Winsock1_Connect()
'desplegamos un mensaje en la ventana
Text1.Text = Text1.Text & "*** Conexión establecida." & vbCrLf
'desplazamos el scroll
Text1.SelStart = Len(Text1.Text)
End Sub
'Cierra Conexión
Private Sub Winsock1_Close()
'cierra la conexion
Winsock1.Close
'desplegamos un mensaje en la ventana
Text1.SelStart = Len(Text1.Text)
Text1.Text = Text1.Text & "*** Conexión cerrada por el servidor." & vbCrLf
Text1.SelStart = Len(Text1.Text)
End Sub
20
Anexo F
Diagrama de Flujo del Programa Matriz para la Lectura y Envío de Clave del
Teclado Matricial
INICIO
Configura UART
19200 bps, 8 bits, sin
paridad, 1 bit de parada
NO
¿Tecla presionada?
SI
NO Se almacena dígito de
¿Tecla = ENTER?
clave en pila
SI
Se lee clave
almacenada en pila
Se calcula checksum
Se incluye clave en
trama y se envía por
puerto serial
21
Anexo G
; ******************************************************
;PROGRAMA: MATRIZ
;DESCRIPCIÓN: LEE LOS DÍGITOS INGRESADOS EN EL TECLADO MATRICIAL
;Y LOS ENVÍA POR EL PUERTO USART EN UNA TRAMA ZIGBEE
; ******************************************************
.include "C:\VMLAB\include\m8def.inc"
.def checksum1=r22
.def checksum=r21
.def digito=r23 ; guarda el valor de la tecla presionada que será enviada
.def dato = r24 ; se almacena dato a ser enviado por USART
.def anterior = r25; se almacena el valor anterior de la tecla presionada
.dseg
.org $60
indice: .byte 1 ; desplazamiento del contador
columna: .byte 1 ; columna
clave: .byte 8
.cseg
.org $0
rjmp inicio
;********************************************************************************************
;INICIO DE PROGRAMA:
inicio:
22
out spl,r16
limpia:
ldi XL,low(clave) ;inicializo la ram para guardar digito
ldi XH,high(clave)
leer:
rcall LecturaTeclado ;Leo el Teclado MATRICIAL y en r17 se guarda el
valor de la tecla presionada
cpi r17,0b11110000
breq leer
23
st X+,digito ;almaceno en RAM digito hasta completar la clave
trama:
ldi ZH,high(TramaZigbee*2);inicializo tabla para enviar trama
ldi ZL,low(TramaZigbee*2)
rcall EnviaTrama ;envío primera parte de trama
rjmp limpia
;**********************************************************************
;Subrutina LecturaTeclado
;Lee el teclado matricial
;Entradas: Ninguna
;Salidas : r17 es el valor de la tecla presionada
;**********************************************************************
LecturaTeclado:
Seleccion:
out portb,r16 ; Selecciono COLUMNA
nop
24
nop
Sondeo:
; rjmp Seleccion
in r17,pinb ; Lectura de que fila se ha presionado
andi r17,0b11110000 ; Enmascaro
ComparaFilas:
lds r16,columna ; Cargo el valor de COLUMNA
cpi r17,0b11100000
breq Fila1
cpi r17,0b11010000
breq Fila2
cpi r17,0b10110000
breq Fila3
cpi r17,0b01110000
breq Fila4
inc r18
sec ; Seteo bandera de carry
rol r16 ; Pasamos a la siguiente columna
sts columna,r16 ; Almaceno la nueva COLUMNA
cpi r16,0b11101111 ; Se revisaron las 4 columnas
breq Fin_Lectura
rjmp seleccion
Fila1:
ldi r17,0 ; Primer elemento de la fila 1
add r17,r18 ; Le sumo el numero de columna
sts indice,r17 ; INDICE PARA SUMAR A LA TABLA
rjmp Fin_Lectura
Fila2:
ldi r17,4 ; Primer elemento de la fila 2
add r17,r18 ; Le sumo el numero de columna
sts indice,r17 ; INDICE PARA SUMAR A LA TABLA
rjmp Fin_Lectura
25
Fila3:
ldi r17,8 ; Primer elemento de la fila 3
add r17,r18 ; Le sumo el numero de columna
sts indice,r17 ; INDICE PARA SUMAR A LA TABLA
rjmp Fin_Lectura
Fila4:
ldi r17,12 ; Primer elemento de la fila 4
add r17,r18 ; Le sumo el numero de columna
sts indice,r17 ; INDICE PARA SUMAR A LA TABLA
rjmp Fin_Lectura
Fin_Lectura:
clr r18
ret
;**********************************************************************
;Subrutina EnviaTrama
;Envía la trama almacenada definida para el coordinador y validar la clave
;Entradas: Tabla Inicializada ZH,ZL
;Salidas : Ninguna
;**********************************************************************
EnviaTrama:
sbis UCSRA,UDRE
rjmp EnviaTrama
lpm dato,Z+
cpi dato,$FF
breq fin_cadena
out UDR,dato
rjmp EnviaTrama
fin_cadena:
ret
; rjmp ESPERA_RX
;**********************************************************************
;Subrutina EnviaClave
26
;Envía la trama almacenada definida para el coordinador y validar la clave
;Entradas: Dígitos de la clave almacenados en "dato"
;Salidas : Ninguna
;**********************************************************************
EnviaClave:
ld dato,X+
Continua:
sbis UCSRA,UDRE
rjmp Continua
out UDR,dato
cpi dato,$7E
breq Salir
rjmp EnviaClave
Salir:
ret
;**********************************************************************
;Subrutina EnviaChecksum
;Calcula y Envia el Checksum
;Entradas: Ninguna
;Salidas : Ninguna
;**********************************************************************
EnviaChecksum:
ldi ZH,high(TramaZigbee*2+3);inicializo tabla para calcular checksum
ldi ZL,low(TramaZigbee*2+3)
clr checksum
clr checksum1
Suma: lpm r16,Z+
cpi r16,$FF
breq Password
add checksum,r16
clr r16
adc checksum1,r16
rjmp Suma
Password:
ldi XL,low(clave) ;inicializo la ram para enviar digito
27
ldi XH,high(clave)
LeerPassword:
ld r16,X+
add checksum,r16
clr r18
adc checksum1,r18
cpi r16,$7E
breq envia
rjmp LeerPassword
Envia:
sbis UCSRA,UDRE
rjmp Envia
ldi dato,$FF
sub dato,checksum
out UDR,dato
ret
;**********************************************************************
TablaTeclado:
;.db 0,1,2,3,4,5,6,7,8,9,10,$7E,20,20,20,20
.db $7E,20,0,10,20,9,8,7,20,6,5,4,20,3,2,1
TramaZigbee:
;.db 1,2,3,4,5,6,7,8,$FF
.db $7E,$00,$13,$10,$0E,$00,$13,$A2,$00,$40,$54,$41,$72,$00,$00,$00,$00,$FF
;**********************************************************************
;Subrutina ConfiguraSerial
;Configura el USART para la comunicación serial asíncrona, 19200 bps, sin paridad,
1 bit de parada, 8 bits
;Entradas: Ninguna
;Salidas : Ninguna
;**********************************************************************
ConfiguraSerial:
;19200 baudios (fosc= 1MHz)
ldi r16,high(5)
28
out UBRRH,r16
ldi r16,low(5)
out UBRRL,r16
ret
;************************************************************************
29