Post on 01-Dec-2019
ESCUELA POLITÉCNICA DEL EJÉRCITO
DEPARTAMENTO DE ELÉCTRICA Y ELECTRÓNICA
CARRERA DE INGENIERÍA EN ELECTRÓNICA,
AUTOMATIZACIÓN Y CONTROL
PROYECTO DE GRADO PARA LA OBTENCIÓN DEL TÍTULO EN INGENIERÍA
“DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE UN SIMULADOR DE CONTROL DOMÓTICO PARA UNA VIVIENDA
MEDIANTE UN SISTEMA DE COMUNICACIÓN VÍA SMS”
KARLA PATRICIA ACOSTA PEÑA
SANGOLQUÍ - ECUADOR
2008
CERTIFICACIÓN
Sangolquí, de Agosto del 2008
Quienes al pie de la presente firmamos, damos fe y testimonio que el
proyecto de grado, previo a la obtención del título en Ingeniería en Electrónica,
titulado como: “DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE UN SIMULADOR DE CONTROL DOMÓTICO PARA UNA VIVIENDA MEDIANTE UN SISTEMA DE COMUNICACIÓN VÍA SMS”, fue desarrollado íntegramente por la
señorita Karla Patricia Acosta Peña, bajo nuestra dirección y tutela.
Certificando lo antepuesto para su uso de la manera que se creyere
conveniente, nos suscribimos,
Atentamente,
____________________
Ing. Paúl Ayala T.
DIRECTOR
____________________
Ing. Jaime Andrango
CODIRECTOR
III
DEDICATORIA
Quiero dedicar este trabajo de grado que no solo es la culminación de
una etapa, si no, es el inicio de toda una vida; a mis padres, a mis
hermanas, a mi sobrina, a mi novio y sobre todo a Dios.
A mis padres Carlos y María del Carmen, por no dejarme caer
nunca, por darme consejos que aunque no los quiera escuchar son los
mejores para mi vida, que día a día han estado pendientes de mi tesis y
tratando de ayudarme aunque no entiendan de lo que les hablo, por
esforzarse tanto para darme lo mejor, por creer en mi y saber todo lo que
puedo lograr.
A mis hermanas Paulina y María Fernanda, porque ellas me han
enseñado que todo lo que se quiere se puede, que me han mostrado siempre
el camino para no desfallecer y porque aun en las buenas y en las malas
siempre he descubierto el gran amor que por ser la más chiquita me han
brindado. A mi sobrinita, Romina, quien con sus risas me da los ánimos de
seguir avanzando.
A mi novio Santiago, porque en el me he apoyado cuando ya no he
sabido que hacer con el proyecto, por sus ideas, su gran ayuda y sus ganas
de que yo salga adelante, y que sea mejor cada día.
A Dios, quien me ha acompañado a lo largo de toda mi vida pero, en
este caso esta dedicatoria es por escucharme y ayudarme ante todos mis
gritos de auxilio, dándome fuerza y serenidad en aquellos momentos que
tenia ganas de tirar la toalla.
IV
AGRADECIMIENTO
Al término de esta etapa de mi vida, quiero expresar un profundo
agradecimiento a todos aquellos que con su ayuda, apoyo y comprensión me
alentaron a logar esta hermosa realidad.
Primero, quiero empezar agradeciendo a mis padres: Carlos y María
del Carmen, quienes fueron los artífices para cumplir esta meta, que sin su
apoyo, paciencia y cariño no lo hubiera logrado. Ellos que me guiaron e
hicieron de mi quien soy hoy en día, quienes son mi inspiración y como
quisiera ser en el futuro.
También, quiero agradecer a mis hermanas: Paulina y María
Fernanda, quienes han estado a mi lado siempre, dándome fuerzas para
seguir adelante, quienes me han enseñado a luchar por lo que he querido y
siempre tener la cabeza levantada en los momentos difíciles.
Un agradecimiento especial a mi novio Santiago, por estar siempre
junto a mí, dándome su amor y cariño, pero sobre todo, por ser esa persona
que me ha enseñado a valorar las cosas más sencillas, porque veo en el a esa
persona que nunca se da por vencida y que siempre quiere ser el mejor en todo
momento, y que de una forma u otra, me ha contagiado eso. También un
agradecimiento especial a la familia Dávalos Ávila, por recibirme como un
miembro más de su familia y darme todas las oportunidades para poder
realizar este proyecto.
A Dios, por ser la luz de mi vida, el guía en mi camino y por darme a
mi familia que tanto amo y admiro. A todos ustedes, y a aquellos que de una
forma u otra han sido parte de este largo camino,
Gracias.
RESUMEN V
RESUMEN
Este proyecto de desarrollo tecnológico, nuevo en nuestro país, a más de
abrir nuevos campos a la automatización de las viviendas, brindando confort,
seguridad y bienestar a los usuarios, permite ir un paso más adelante del simple
sistema de seguridad que se promociona hoy en día.
Este prototipo de control domótico, que brinda un sistema de seguridad,
simulador de presencia y domoportero mediante un sistema de comunicación vía
SMS, está basado en los pilares básicos de la domótica como son; seguridad,
comunicaciones, confort y bienestar y control energético. Todo esto hace que este
proyecto sea de gran interés para muchos constructores para mejorar y elevar de
nivel sus obras.
El proyecto va orientado para la comodidad de los usuarios, los mismos
que con un mensaje de texto desde su celular puede controlar su vivienda,
también lo puedo hacer desde el panel de control que se encuentra situado dentro
de la misma. Para cualquier configuración o activación / desactivación del sistema
lo debe realizar mediante una clave de cuatro dígitos, la cual puede ser
modificada por el usuario.
El simulador de presencia es de gran ayuda al momento de hablar de
seguridad, ya que el sistema realiza la activación de luminarias en cualquier
momento y de cualquier luminaria, sin la necesidad de que el usuario tenga que
configurarlo constantemente.
PROLOGO VI
PROLOGO
El primer capítulo del proyecto da una breve descripción de lo que significa
domótica, dando características generales tanto del simulador de presencia como
del domoportero a ser diseñado e implementado.
El segundo capítulo muestra los diferentes tipos de sistemas de
comunicación que han existido, e indica el tipo de MODEM se ha escogido para la
realización de este proyecto, dando sus características.
En el tercer capítulo se muestra todo el diseño del hardware del sistema,
indicando paso a paso los estudios realizados y la selección de elementos para la
elaboración del mismo.
En el cuarto capítulo se encuentra la información acerca de cómo
implementar todo el sistema, con pasos detallados y gráficos para mejor
entendimiento.
El quinto capítulo indica las pruebas y resultados realizadas al proyecto,
con sus respectivas observaciones.
En el sexto y último capítulo se encuentran las conclusiones y
recomendaciones se que han podido extraer sobre la realizacion de este
PROLOGO VII
proyecto. Las mismas que tratan de identificar los posibles beneficios y mejoras
que se pueden realizar en el futuro.
Además, se encuentran los anexos, los cuales cuentan con los planos,
diagramas, programas, entre otros que son de vital importancia en la realización
del proyecto.
VIII
ÍNDICE
DEDICATORIA……………………………………………………………………IIIAGRADECIMIENTO……………………………………………….…………….IVRESUMEN………………………………………………………………..………..VPROLOGO……………………………………………………………………......VIÍNDICE……………………………………………………………………………VIII CAPÍTULO I.........…………………………………………………………………2 INTRODUCCIÓN………………………………………………………………….2SISTEMAS DOMÓTICOS………………………………………………………………...2
1.1.1 Características de los sistemas domóticos……………………………………2
1.1.2 Tipos de sistemas domóticos…………………………………………………...5
1.2. DESCRIPCIÓN DEL PROYECTO………………………………………………8 1.2.1 Características de los domoporteros…………………………………………...8
1.2.2 Características de los simuladores de presencia……………………………..9
1.3. CARACTERÍSTICAS GENERALES DE SISTEMA………………………….10
CAPÍTULO II…………………………………………………………….………..12 SISTEMAS DE COMUNICACIÓN……………………………………………..12 SISTEMAS MÓVILES CELULARES…………………………………………………...12
2.1.1. Sistemas GSM…………………………………………………………………..15
2.2. MODEMS DE DATOS…………………………………………………………..18 2.2.1. Funcionamiento…………………………………………………………………18
2.2.2. Estándares de modulación…………………………………………………….19
2.2.3. Tipos de modulación……………………………………………………………20
2.2.4. Comandos Hayes……………………………………………………………….22
9
CAPÍTULO III……………………………………………………………………..24 DISEÑO DEL HARDWARE DEL SISTEMA………………………………….24 3.1. DESARROLLO DE ESPECIFICACIONES……………………………………24
3.1.1. Medios de transmisión………………………………………………………….25
3.1.2. Elementos………………………………………………………………………..26
3.2. ESTUDIO DE LOS PLANOS DE LA VIVIENDA……………………………..32 3.2.1. Determinación del numero de circuitos de iluminación…………………….32
3.2.2. Determinación de la ubicación de sensores de movimiento y
contactos magnéticos…………………………….…………………………….33
3.2.3. Estudio de planos eléctricos y otras instalaciones de
interés en la vivienda…………………………………………………………...34
3.3. DISEÑO DEL HARDWARE DE CONTROL…………………………………..35 3.3.1. Conceptos preliminares………………………………………………………...35
3.3.2. Tipos de sistemas de control…………………………………………………..38
3.3.3. Protocolo de comunicación entre MODEM y controlador…………………..41
3.3.4. Herramientas de desarrollo…………………………………………………….49
3.3.5. Requerimientos de funcionamiento…………………………………………...51
3.4. PROGRAMACIÓN DEL CONTROLADOR…………………………………...52 3.4.1. Lógica de programación………………………………………………………..53
3.4.2. Hardware de programación……………………………………………………72
3.5. DISEÑO DE LA ETAPA DE POTENCIA……………………………………...72
3.6. DISEÑO DE LA PLACA PCB…………………………………………………..74 3.6.1. Parámetros de diseño………………………………………………………….74
3.7. LISTA DE MATERIALES Y COSTOS REFERENCIALES
DEL PROYECTO………………………………………………………………..77 3.7.1. Elementos empleados en la central…………………………………………..78
3.7.2. Elementos empleados en el panel…………………………………………....79
3.7.3. Elementos empleados en los periféricos……………………………………..80
3.7.4. Mano de obra……………………………………………………………………80
3.7.5. Varios…………………………………………………………………………….82
3.7.6. Dirección técnica………………………………………………………………..82
CAPÍTULO IV…………………………………………………………………….84 IMPLEMENTACIÓN DEL SISTEMA…………………………………………..84 4.1. PREINSTALACIÓN……………………………………………………………...84
10
4.2. INSTALACIÓN…………………………………………………………………...88 4.2.1. Sensores de movimiento……………………………………………………….89
4.2.2. Contactos magnéticos………………………………………………………….92
4.2.3. Domoportero…………………………………………………………………….94
4.2.4. Panel de control………………………………………………………………..100
4.2.5. Central del sistema……………………………………………………………104
CAPÍTULO V……………………………………………………………………108 PRUEBAS AL SISTEMA Y RESULTADOS………………………………………...108 5.1. PRUEBAS AL SISTEMA………………………………………………………108
5.2. RESULTADOS…………………………………………………………………110
CAPÍTULO VI…………………………………………………………………...119 CONCLUSIONES Y RECOMENDACIONES………………………………………..119 6.1. CONCLUSIONES………………………………………………………………119
6.2. RECOMENDACIONES………………………………………………………..121
REFERENCIAS BIBLIOGRÁFICAS…………………………………………123 ANEXOS…………………………………………………………………………126 PLANOS DEL SISTEMA DE ILUMINACIÓN………………………………………………….127
PLANO DE SENSORES DE MOVIMIENTO………………………………………………….129
PLANO DE CONTACTOS MAGNÉTICOS…………………………………………………...131
PLANO DE UBICACIONES DE ELEMENTOS……………………………………………….133
PLANO DE ZONAS…………………………………………………………………………135
PLANO DE TUBERÍAS……………………………………………………………………..137
COMANDOS AT…………………………………………………………………………...139
SOFTWARE PICKIT 2……………………………………………………………………..148
ESQUEMÁTICOS DE PLACAS……………………………………………………………..158 Esquemático placa – Panel de control………………………………………………..159
Esquemático placa – Central del sistema…………………………………………….161
Esquemático placa – Potencia………………………………………………………...163
DISEÑO DE PLACAS PCB………………………………………………………………...165 Central del sistema……………………………………………………………………..166
Potencia………………………………………………………………………………….169
11
Panel de control…………………………………………………………………………172
PROGRAMA DE LA CENTRAL DEL SISTEMA………………………………………………175
PROGRAMA DEL PANEL DE CONTROL……………………………………………………191
PROGRAMA DE PERIFÉRICOS…………………………………………………………….213
ÍNDICE DE FIGURAS………………………………………………………….221
ÍNDICE DE TABLAS……………………………………………………………224
ÍNDICE DE DATASHEETS……………………………………………………225
CAPÍTULO I – INTRODUCCIÓN 2
1
CAPÍTULO I
INTRODUCCIÓN 1.1. SISTEMAS DOMÓTICOS 1.1.1. Características de los sistemas domóticos
La domótica se conoce y se aplica desde los años 80 y su desarrollo más
importante ha tenido lugar en países como Estados Unidos y Japón, aunque de
manera diferente. En los últimos años a esta corriente se ha unido países
europeos y especialmente los nórdicos, impulsados por las nuevas tecnologías en
comunicaciones. En países en vías de desarrollo, hasta ahora, la situación ha
sido bastante diferente y, aunque también se conoce desde hace unos años,
nunca ha acabado de alzar el vuelo.1
El término domótica proviene de la unión de las palabras domus (que
significa casa en latín) y robótica (de robota, que significa esclavo, sirviente en
checo). Se entiende por domótica al conjunto de sistemas capaces de automatizar
una vivienda, aportando servicios de gestión energética, seguridad, bienestar y
comunicación, y que pueden estar integrados por medio de redes interiores y
exteriores de comunicación, cableadas o inalámbricas, y cuyo control goza de
1
upcommons.upc.edu, Sistemas Domóticos
CAPÍTULO I – INTRODUCCIÓN 3
cierta ubicuidad, desde dentro y fuera del hogar. Se podría definir como la
integración de la tecnología en el diseño inteligente de un recinto.2
Una de las funciones de la Domótica es la de crear un entorno más
amigable, según sean las capacidades del individuo. Además de crear diversos
sistemas que mejoran la calidad de vida, da la posibilidad de su monitorización y
control a distancia, gracias al bus domótico. De esta manera, se habla de un
control local que permite estar al tanto del funcionamiento de la gran parte de los
servicios que se tienen al alcance de la mano (como pueden ser; la temperatura
del termostato, en que ciclo se encuentra la lavadora, el estado del horno
microondas entre otros) y a su vez modificarlos (cambiar la temperatura, acelerar
el proceso de lavado). Pero por otro lado también existe un control remoto,
mediante el cual se puede obtener información, y modificarla si es requerido,
mediante otras interfaces, y controlar los dispositivos también desde interfaces
diferentes.
Para que un sistema pueda ser considerado inteligente ha de incorporar
sistemas basados en las Nuevas Tecnologías de la Información (NTI).
El uso de las NTI en la vivienda genera nuevas aplicaciones y tendencias
basadas en la capacidad de proceso de información y en la integración y
comunicación entre los equipos e instalaciones. Así concebida, una vivienda
inteligente puede ofrecer una amplia gama de aplicaciones en áreas tales como:
• Monitorización de salud
• Seguridad
• Gestión de la energía
• Automatización de tareas domésticas
2 es.wikipedia.org/wiki/ Dom%C3%B3tica, Domótica
CAPÍTULO I – INTRODUCCIÓN 4
• Formación, cultura y entretenimiento
• Teletrabajo
• Operación y mantenimiento de las instalaciones3
Estas aplicaciones, junto con las consecuencias inmediatas emanadas de
su uso, son las siguientes:
• Control remoto desde dentro de la vivienda: A través de un esquema
de comunicación con los distintos equipos (mando a distancia, bus de
comunicación, etc.). Reduce la necesidad de moverse dentro de la
vivienda, este hecho puede ser particularmente importante en el caso
de personas de la tercera edad o minusválidos.
• Control remoto desde fuera de la vivienda: Presupone un cambio en
los horarios en los que se realizan las tareas domésticas (por ejemplo:
la posibilidad de que el usuario pueda activar la cocina desde el exterior
de su vivienda, implica que previamente ha de preparar los alimentos) y
como consecuencia permite al usuario un mejor aprovechamiento de su
tiempo.
• Programabilidad: El hecho de que los sistemas de la vivienda se
pueden programar ya sea para que realicen ciertas funciones con sólo
tocar un botón o que las lleven a cabo en función de otras condiciones
del entorno (hora, temperatura interior o exterior) produce un aumento
del confort y un ahorro de tiempo.
3 upcommons.upc.edu, Sistemas Domóticos
CAPÍTULO I – INTRODUCCIÓN 5
• Acceso a servicios externos: Servicios de información, telecompra,
telebanco. Para ciertos colectivos estos servicios pueden ser de gran
utilidad ya que producen un ahorro de tiempo.4
1.1.2. Tipos de sistemas domóticos
Existe una gran variedad de sistemas domóticos con diversas aplicaciones
y en constante evolución. Orientados a pequeñas construcciones o a grandes
edificios, sencillos y limitados, como así también expandibles y complicados, la
forma clásica e intuitiva de clasificar los sistemas disponibles es la basada en el
tipo de soporte que utilizan para transmitir los datos de comunicación entre los
dispositivos. De acuerdo a éste criterio, los sistemas más importantes son:
• Corrientes portadoras
• Soporte metálico
• Fibra óptica
• Conexión sin hilos
La esencia que debe caracterizar a todos los sistemas domóticos, es la
INTEGRACIÓN. Asimismo, todas las mejoras, ventajas y posibilidades se pueden
agrupar en torno a cuatro grupos o pilares básicos, que son los siguientes:
1. Seguridad o protección patrimonial
2. Control energético
3. Confort, bienestar y calidad de vida
4. Unificación de las comunicaciones
4 www.theslogan.es, Domótica, la Revolución del Bienestar.
CAPÍTULO I – INTRODUCCIÓN 6
SEGURIDAD
UNIFICACIÓNCOMUNICACIONES
CONFORT,BIENESTAR
CALIDAD DE VIDA
CONTROLENERGÉTICO
DOMÓTICA
Figura. 1.1. Pilares básicos de la domótica
En el pilar de la protección patrimonial se encuentran:
• Simulación de presencia.
• Detección de conatos de incendio, fugas de gas, escapes de agua.
• Alerta médica. Teleasistencia.
• Cerramiento de persianas puntual y seguro.
• Acceso a cámaras IP.
En el pilar de la eficiencia y ahorro energético se encuentran:
• Climatización: programación y zonificación.
• Gestión eléctrica.
• Racionalización de cargas eléctricas: desconexión de equipos de uso
CAPÍTULO I – INTRODUCCIÓN 7
no prioritario en función del consumo eléctrico en un momento dado.
Reduce la potencia contratada.
• Gestión de tarifas, derivando el funcionamiento de algunos aparatos a
horas de tarifa reducida.
• Uso de energías renovables.
En el pilar del nivel de confort, bienestar y calidad de vida se encuentran:
• Iluminación.
• Apagado general de todas las luces de la vivienda.
• Automatización del apagado/ encendido en cada punto de luz.
• Regulación de la iluminación según el nivel de luminosidad ambiente.
• Automatización de todos los distintos sistemas, instalaciones y equipos
dotándolos de control eficiente y de fácil manejo.
• Integración del portero al teléfono, o del videoportero al televisor.
• Control vía Internet.
• Gestión multimedia y del ocio electrónicos.
• Generación de macros y programas de forma sencilla por parte del
usuario.
En el pilar de la unificación de las comunicaciones se encuentran:
• Ubicuidad en el control tanto externo como interno, control remoto
desde Internet, PC, mandos inalámbricos.
• Transmisión de alarmas.
• Intercomunicaciones.
CAPÍTULO I – INTRODUCCIÓN 8
1.2. DESCRIPCIÓN DEL PROYECTO 1.2.1. Características de los domoporteros
El domoportero consiste en la integración del portero automático
convencional en la red de telefonía interior de la vivienda. Se pueden hacer
desvíos de llamada a teléfonos móviles y hablar con la placa de la calle aún
estando a gran distancia, la casa siempre parecerá que está ocupada y sirve
como elemento de seguridad.
El domoportero se encarga de conectar el portero automático de la vivienda
con la red de telefonía interna. De esta forma, cuando alguien llama al portero
automático, el usuario ya no tiene porqué levantarse para ir hasta el citófono para
hablar y abrir la puerta. Puede utilizar cualquier teléfono de la vivienda, incluso el
inalámbrico. Como funciones extra, realiza desvío de llamadas y advierte al
usuario mediante voz, cuando descuelga el teléfono, de la procedencia de la
llamada.
Figura. 1.2. Domoportero
CAPÍTULO I – INTRODUCCIÓN 9
1.2.2. Características de los simuladores de presencia Los simuladores de presencia consisten en encender y apagar luces y/o
electrodomésticos dentro del hogar en horarios preprogramados o aleatorios,
simulando que el lugar está realmente habitado cuando no hay moradores en el
mismo.
El encendido de las luces se realiza únicamente en la noche por un tiempo
predeterminado aleatorio, es decir que se programan a distinta hora el encendido
y apagado de las mismas en cada noche para así dar la apariencia de que
realmente alguien se encuentra en la vivienda.
Los aparatos electrónicos más comúnmente utilizados para este propósito
son los televisores y equipos de audio y video, estos son encendidos y apagados
automáticamente en un horario preprogramado durante todo el día.
Este concepto brinda mayor seguridad al hogar, evitando que posibles
intrusos opten por irrumpir en el mismo ya que tiene la apariencia de estar
habitado.
CAPÍTULO I – INTRODUCCIÓN 10
Figura. 1.3. Simulador de presencia
1.3. CARACTERÍSTICAS GENERALES DEL SISTEMA
El sistema a desarrollar comprende básicamente de dos servicios; el
primero que es un domoportero y el segundo un simulador de presencia. Tanto el
domoportero como el simulador de presencia están pensados para la seguridad
del hogar, teniendo en cuenta que son sistemas preventivos, haciendo que las
personas que habitan en el mismo se sientan tranquilos al momento de
abandonar su vivienda, ya sea por trabajo, viaje o cualquier otro motivo. Lo que
hace que este sistema se base en el ámbito de la protección patrimonial.
La principal característica de este sistema es que a más de dar seguridad
en la vivienda, es de fácil manejo para el usuario, pudiéndose setear parámetros
como; luces o electrodomésticos a encender, tiempo de respuesta, número a
marcar en caso de emergencia, entre otros.
El domoportero simula la presencia de usuarios en una vivienda, mediante
la transferencia de llamadas a un número telefónico; convencional o móvil,
CAPÍTULO I – INTRODUCCIÓN 11
cuando alguien timbra el portero de la casa. La característica de este sistema es
que aunque las personas no se encuentren en la vivienda, quien timbre el portero
eléctrico pensará que sí lo están, debido a la transferencia de llamada que se
realiza y se podrá responder la llamada como si se estuviera en casa, desde
cualquier lugar.
Por otra parte, el simulador de presencia, como su nombre lo indica,
permite simular la presencia de usuarios en una casa mediante la activación de
luces o electrodomésticos. La simulación de activación de elementos en el hogar
es programada vía SMS o mediante el panel de control en la misma vivienda.
Este prototipo es diseñado mediante el uso de un controlador, el cual actúa
con las señales de entrada de los distintos sensores y manipula los diferentes
dispositivos electrónicos a encender. El sistema se basa en soporte metálico, lo
que quiere decir que cada sensor, actuador, panel de control, entre otros, son
cableados hacia la central, teniendo cada dispositivo su propio cableado.
La activación tanto del simulador de presencia como del domoportero, se la
realiza mediante el envío de mensajes de texto desde cualquier teléfono celular o
Internet hacia el MODEM que se encuentra en la vivienda, el cual funciona a base
de tecnología GSM. También se podrá realizar esta activación desde la vivienda
misma mediante el uso del panel de control.
La activación del sistema se la realiza mediante el ingreso de una clave
personal, la misma que puede ser elegida por el usuario. Una vez ingresada esta
clave el sistema ejecuta el simulador de presencia y el domoportero, y solamente
se detiene si el usuario desactiva el mismo con la clave.
CAPÍTULO II – SISTEMAS DE COMUNICACIÓN 12
CAPÍTULO II
SISTEMAS DE COMUNICACIÓN
En el presente capítulo se analizará los distintos tipos de módems, ya que
con este dispositivo se realizará la comunicación entre el usuario y la central.
Además se tratará sobre las tecnologías móviles celulares, debido a que se
utilizará un teléfono celular como módem para la realización del proyecto.
2.1. SISTEMAS MÓVILES CELULARES
A los sistemas móviles celulares se los puede dividir en tres distintas
generaciones, teniendo cada una diferentes características y protocolos. Estas
generaciones son las siguientes:
Primera generación (1G)
Es la más antigua, también conocida como TACS (Total Access
Communications System), y engloba a todas aquellas tecnologías de
comunicaciones móviles analógicas. El sistema TACS es un sistema de
comunicaciones para telefonía móvil celular dúplex en la banda de 900 MHz, con
capacidad para transmitir voz pero no datos. Dado que el estándar TACS sólo
CAPÍTULO II – SISTEMAS DE COMUNICACIÓN 13
define el protocolo de acceso radio entre una estación móvil y su correspondiente
estación base, y no cubre aspectos relativos a la gestión de la movilidad,
surgieron toda una serie de estándares diferentes en diversos países: NTT-MTS
(Japón), MNT (Escandinavia) y C450 (Alemania), con los correspondientes
problemas de incompatibilidades. En la actualidad esta generación está en
desuso y pronto se la dejará de utilizar definitivamente.
Segunda generación (2G)
Las limitaciones de la primera generación de telefonía móvil condujeron al
desarrollo del sistema GSM (Global System for Mobile Communications). GSM es
una tecnología digital cuya primera funcionalidad es la transmisión de voz, pero
que también permite la transmisión de datos a baja velocidad: 9,6 kbit/s. Esta
velocidad es baja pero permite el servicio de envío de mensajes cortos (SMS),
superando con creces las mejores expectativas que podían imaginar los
operadores. El sistema europeo GSM opera en torno a los 900 MHz, si bien
surgió también una variante conocida como DCS (Digital Cellular System) que
trabaja a 1800 MHz y cuyo objetivo es proporcionar mayor capacidad en zonas
urbanas. A diferencia del sistema TACS, GSM define un sistema completo que
incluye no sólo la interfaz radio, sino también una completa arquitectura de red, lo
que permite el desarrollo de multitud de nuevos servicios sobre el estándar GSM.
Segunda generación y media (2.5G)
Aquí se incluyen todas aquellas tecnologías de comunicaciones móviles
digitales que permiten una mayor capacidad de transmisión de datos y que
surgieron como paso previo a las tecnologías 3G. Una de estas tecnologías 2.5G
es GPRS (General Packet Radio System), basada en la transmisión de paquetes
y donde los canales de comunicación se comparten entre los distintos usuarios de
forma dinámica. La velocidad teórica máxima que puede alcanzar GPRS es de
CAPÍTULO II – SISTEMAS DE COMUNICACIÓN 14
171,2 kbit/s. Las principales ventajas que aporta GPRS respecto a GSM son,
además de una mayor velocidad de transmisión, la conexión permanente y la
tarificación por tráfico, convirtiéndolo en el portador ideal para los servicios WAP
(Wireless Application Protocol), el acceso a Internet (web browsing, ftp, e-mail) y
el acceso a intranets de empresas.
Por otro lado, el HSCSD (High Speed Circuit Switched Data) es una
especificación de la fase 2+ de GSM homologada por el ETSI1. Con esta
tecnología, el número de canales equivalentes de GSM utilizados en cada
instante por una comunicación de datos es variable, permitiendo velocidades de
transmisión de hasta 57,6 kbit/s. La ventaja de HSCSD es que la inversión para
ser implantado es mínima, aunque tiene como desventaja un mayor coste para los
usuarios, pues pagan por el uso de cada canal. Por último, la tecnología EDGE
(Enhanced Data Rates for Global Evolution) es otro de los desarrollos de las
redes GSM, permitiendo teóricamente velocidades de datos de hasta 384 kbit/s.
Se trata de una tecnología que mejora el ancho de banda de la transmisión de los
datos en GSM y GPRS.
Tercera generación (3G)
Las tecnologías 3G se encuentran contenidas dentro del IMT-2000
(International Mobile Telecommunications-2000) de la ITU2, el cual puede
considerarse como la guía que marca los puntos en común que deben cumplirse
para conseguir el objetivo de la itinerancia global, es decir, que un terminal de
usuario de 3G pueda comunicarse con cualquier red 3G del mundo. Los servicios
que ofrecen las tecnologías 3G son básicamente: acceso a Internet, servicios de
banda ancha, roaming internacional e interoperatividad. Pero fundamentalmente,
estos sistemas permiten el desarrollo de entornos multimedia para la transmisión
1 European Telecommunications Standards Institute 2 International Telecommunication Union
CAPÍTULO II – SISTEMAS DE COMUNICACIÓN 15
de vídeo e imágenes en tiempo real, fomentando la aparición de nuevas
aplicaciones y servicios tales como videoconferencia o comercio electrónico3.
Criterio Primera Segunda Tercera Generación Generación Generación
Servicios Voz
Voz y
mensajería
corta
Voz y datos
Calidad de
servicio (QoS) Baja Alta Alta
Nivel
estandarización Bajo Fuerte Fuerte
Velocidad de
transmisión Baja Baja Alta
Tipo de
conmutación Circuitos Circuitos
Paquetes
(IP)
Tabla. 2.1. Comparación entre diferentes generaciones de servicios móviles.
2.1.1. Sistemas GSM
El sistema de comunicaciones móviles GSM (Global System for Mobile
Communications) es un sistema ampliamente utilizado que representa el estándar
europeo de comunicaciones móviles de segunda generación.
Aunque el enorme incremento en el número de usuarios de
comunicaciones móviles ha venido de la mano de este sistema, todavía existe
cierta preocupación por dos aspectos fundamentales; esto es, la privacidad y la
3 http://www.radioptica.com/Radio/telefonia_movil.asp
CAPÍTULO II – SISTEMAS DE COMUNICACIÓN 16
autenticación, que son la pieza fundamental en la seguridad de las
comunicaciones, pero que en el caso de GSM se ha demostrado poco robusta
con respecto a lo indicado anteriormente. A pesar de ello, la considerable mejora
en la calidad del servicio ofrecido a los usuarios y el abaratamiento de los costes
de los terminales no ha impedido la masiva utilización del sistema, que ya se
encuentra en fase de adaptación al nuevo sistema de tercera generación UMTS4.
GSM es un sistema de conmutación de circuitos, diseñado originalmente
para voz al que posteriormente se le adicionaron algunos servicios de datos:
servicio de mensajes cortos, un servicio de entrega de mensajes de texto de
hasta 160 caracteres y un servicio de datos GSM, que permite una tasa de
transferencia de 9.6 kbps.
Por otro lado, GPRS coexiste con GSM, compartiendo gran parte de la
infraestructura desplegada en el mismo, pero ofreciendo al usuario un servicio
portador más eficiente para las comunicaciones de datos, especialmente en el
caso de los servicios de acceso a redes IP como Internet.
Figura. 2.1. Módulo Siemens XT55, Tribanda GSM/GPRS5
4 Universal Mobile Telecommunications System 5 http://www.mc-technologies.net/images/cellular/xt55.gif
CAPÍTULO II – SISTEMAS DE COMUNICACIÓN 17
La arquitectura del sistema se compone de cuatro bloques o subsistemas
que engloban el conjunto de elementos de la jerarquía del sistema. Cada uno de
estos subsistemas desempeña funciones específicas para ofrecer el servicio de
telefonía móvil al usuario final. Estos son:
• Estación móvil (MS)
• Estación base (BSS)
• Subsistema de conmutación y de red (NSS)
• Subsistema de operación y mantenimiento (OMC)
Figura. 2.2. Arquitectura del sistema GSM
La estación móvil comprende todos los elementos utilizados por el abonado
del servicio. La estación base engloba los elementos que desempeñan las
funciones de interconexión entre la radio con la estación móvil. El subsistema de
CAPÍTULO II – SISTEMAS DE COMUNICACIÓN 18
conmutación y de red realiza las operaciones de interconexión con otras redes de
telefonía y de gestión de la información del abonado. Finalmente el subsistema de
operación y mantenimiento se encarga de supervisar el funcionamiento del resto
de bloques.
2.2. MODEMS DE DATOS
Un módem es un equipo que sirve para modular y demodular (en amplitud,
frecuencia, fase u otro sistema) una señal llamada portadora mediante otra señal
de entrada llamada moduladora.
2.2.1. Funcionamiento
El modulador emite una señal denominada portadora, que, generalmente,
se trata de una simple señal eléctrica sinusoidal de mucha mayor frecuencia que
la señal moduladora. La señal moduladora constituye la información que se
prepara para una transmisión (un módem prepara la información para ser
transmitida, pero no realiza la transmisión). La moduladora modifica alguna
característica de la portadora (que es la acción de modular), de manera que se
obtiene una señal, que incluye la información de la moduladora. Así el
demodulador puede recuperar la señal moduladora original, quitando la portadora.
Las características que se pueden modificar de la señal portadora son:
• Amplitud, dando lugar a una modulación de amplitud (AM/ASK).
• Frecuencia, dando lugar a una modulación de frecuencia (FM/FSK).
CAPÍTULO II – SISTEMAS DE COMUNICACIÓN 19
• Fase, dando lugar a una modulación de fase (PM/PSK).
También es posible una combinación de demodulaciones o modulaciones
más complejas como la modulación de amplitud en cuadratura.
2.2.2. Estándares de modulación
Dos módems para comunicarse necesitan emplear la misma técnica de
modulación. La mayoría de los módem son full-duplex, lo cual significa que
pueden transferir datos en ambas direcciones. Hay otros módems que son half-
duplex y pueden transmitir en una sola dirección al mismo tiempo. Algunos
estándares permiten sólo operaciones asíncronas y otros síncronas o asíncronas
con el mismo módem.
A continuación se enlistan los tipos de modulación más frecuentes:
TIPO CARACTERÍSTICAS
Bell 103 Especificación del sistema Bell para un módem de 300 baudios, asíncrono y full-duplex
Bell 201 Especificación del sistema Bell para un módem de 2400 BPS, síncrono, y Full- duplex.
Bell 212 Especificación del sistema Bell para un módem de 2400 BPS, asíncrono, y Full-duplex.
V.22 bis Módem de 2400 BPS, síncrono / asíncrono y full-duplex
V.29 Módem de 4800 / 7200 / 9600 BPS, síncrono y full-duplex
V.32 Módem de 4800 / 9600 BPS, síncrono / asíncrono y full-duplex
CAPÍTULO II – SISTEMAS DE COMUNICACIÓN 20
V.32 bis Módem de 4800 / 7200 / 9600 / 7200 / 12000 / 14400 BPS, síncrono / asíncrono y full-duplex
Hayes Express
Módem de 4800 / 9600 BPS, síncrono / asíncrono y half-duplex.
USR-HST Módem de USRobotics de 9600 / 14400 BPS. Sólo compatibles consigo mismo aunque los mas modernos soportan V.32.
Vfast
Vfast es una recomendación de la industria de fabricantes de módem. La norma Vfast permite velocidades de transferencia de hasta 28.800 bps.
V34 Estándar del CCITT para comunicaciones de módem en velocidades de hasta 28.800 bps.
Tabla. 2.2. Estándares de modulación
2.2.3. Tipos de modulación
Dependiendo de si el módem es digital o analógico se usa una modulación
de la misma naturaleza. Para una modulación digital, por ejemplo, se emplean los
siguientes tipos de modulación:
• ASK, (Amplitude Shift Keying, Modulación en Amplitud): la amplitud de
la portadora se modula a niveles correspondientes a los dígitos binarios
de entrada 1 ó 0.
• FSK, (Frecuency Shift Keying, Modulación por Desplazamiento de
Frecuencia): la frecuencia portadora se modula sumándole o
restándole una frecuencia de desplazamiento que representa los
dígitos binarios 1 ó 0. Es el tipo de modulación común en modems de
baja velocidad en la que los dos estados de la señal binaria se
transmiten como dos frecuencias distintas.
CAPÍTULO II – SISTEMAS DE COMUNICACIÓN 21
• PSK, (Phase Shift Keying, Modulación de Fase): tipo de modulación
donde la portadora transmitida se desplaza cierto número de grados en
respuesta a la configuración de los datos.
En el canal telefónico existen perturbaciones que el módem debe enfrentar
para poder transmitir la información. Estos trastornos se pueden enumerar en:
• Distorsiones
• Deformaciones
• Ecos
• Ruidos aleatorios
• Ruidos impulsivos
• Interferencias
Para una modulación analógica se tienen, por ejemplo, los siguientes tipos
de modulación:
• AM Amplitud Modulada: la amplitud de la portadora se varía por medio
de la amplitud de la moduladora.
• FM Frecuencia Modulada: la frecuencia de la portadora se varía por
medio de la amplitud de la moduladora.
• PM Phase Modulation. Modulación de fase: en este caso el parámetro
que se varía de la portadora es la fase de la señal, matemáticamente
es casi idéntica a la modulación en frecuencia. Igualmente que en AM y
FM, es la amplitud de la moduladora lo que se emplea para afectar a la
portadora.
CAPÍTULO II – SISTEMAS DE COMUNICACIÓN 22
2.2.4. Comandos Hayes
Hayes es el nombre de una empresa que en los orígenes de la
comunicación por módem definió una serie de comandos u órdenes para que el
software de comunicaciones pudiera comunicarse con el módem. Estos
comandos tuvieron tanto éxito que se convirtieron en el virtual estándar de
comunicaciones, y los módems que los comprenden (el 99,99% de los módems
modernos) se denominan compatibles Hayes.
Los comandos Hayes son también conocidos como comandos AT, ya que
todos los comandos empiezan con AT de Attention, y sirven para configurar el
módem.
Los comandos Hayes se dividen en dos grandes grupos:
• De ejecución de acciones inmediatas.
• De configuración de algún parámetro del módem.
El módem telefónico posee dos modos de funcionamiento:
• Modo comando: Es cuando el módem responde a los comandos que
le envía la terminal local, es decir, que la información que recibe el
módem la procesa sin transmitirla por la línea y le envía su respuesta a
la terminal. En este modo es posible configurar el módem o realizar
operaciones de marcado y conexión. Antes de que se pueda enviar un
comando al módem, este debe estar en el presente modo.
CAPÍTULO II – SISTEMAS DE COMUNICACIÓN 23
Figura. 2.3. Modo comando
• Modo en línea: Es cuando el módem se conecta con otro. Aquí,
cualquier información que envíe la terminal local al módem será
transmitida al módem remoto. En este caso el módem no procesa
ningún tipo de información y simplemente la transmite a través de la
línea. Lo que si puede hacer es añadir a los datos información adicional
para la corrección de errores y verificar si los datos que recibe del otro
módem no han sido adulterados.
Figura. 2.4. Modo en línea
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 24
CAPÍTULO III
DISEÑO DEL HARDWARE DEL SISTEMA
3.1. DESARROLLO DE ESPECIFICACIONES En el siguiente capítulo se exponen las especificaciones definitivas y
detalladas que tendrá el hardware del prototipo de simulador domótico y el diseño
que le corresponde.
En el campo de la domótica, a nivel nacional, todavía no están definidas un
conjunto de normas y especificaciones técnicas reglamentarias a seguir, por lo
que las detalladas a continuación, son datos recopilados de varios centros
domóticos del mundo. Por ejemplo; ISDE Ing. S.L.1 se rige bajo la Especificación
AENOR – PEA 0026 (Instalación de Sistemas Domóticos para Viviendas) y las
Normas UNE-EN 50090-9-1, UNE-EN 50065-4-1, UNE-EN 61508, entre otras.
En primer lugar se realiza una preinstalación domótica, con lo que se dota
a la vivienda con los elementos necesarios (tuberías, cables, cajas, entre otros)
1 ISDE es una empresa cuyo objetivo es el de diseñar y fabricar equipos electrónicos de control destinados a la automatización de viviendas y edificios.
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 25
para posteriormente poder instalar los servicios avanzados de control y
seguridad.2
Para poder realizar esta preinstalación, se debe haber definido el lugar
exacto de cada componente dentro de la vivienda, es decir, saber la ubicación de
cada sensor, controlador, portero y otros elementos en la casa.
3.1.1. Medios de transmisión Para este prototipo de simulador; cada componente del sistema de control
domótico desarrollado, tiene como medio de transmisión líneas de cobre, siendo
para cada tipo de elemento un diferente tipo de cable, siendo estos los siguientes:
Los sensores de movimiento son conectados con la central del sistema,
mediante un cable de 2 pares, 22 AWG, del cual, 1 par de hilos es para la
alimentación del sensor, y el otro par para la activación o desactivación del
mismo, según las especificaciones del sensor de movimiento Talon TLC-15, el
cual va a ser utilizado en este proyecto.
Los contactos magnéticos, los cuales son los sensores para puertas y
ventanas, se conectan con la central del sistema mediante un cable gemelo
multifilar, 20 AWG, según las especificaciones de los contactos magnéticos a ser
utilizados en el proyecto.
2 www.isde-ing.com
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 26
La comunicación entre la Central y el Panel del sistema, se la realiza con
cable UTP, categoría 5e, para la transmisión serial de datos, alimentación del
panel, y señales auxiliares del sistema.
Se utiliza un cable de 4 pares trenzados entre el portero eléctrico y la
central, los cuales se distribuyen de la siguiente manera:
• Un par se utiliza para el funcionamiento normal del portero eléctrico.
• Un par se utiliza para el funcionamiento del micrófono del domoportero.
• Un par se utiliza para el funcionamiento del parlante del domoportero.
• El último par se lo utiliza para detectar el timbre del domoportero.
3.1.2. Elementos
• Alimentación: - Fuente switching de 12 V con corriente máxima de 2000mA.
• Sensores:
Sensores de movimiento
Modelo TALON, TLC-15
Tipo PIR (passive infrared sensor)
Método de detección Elemento PIR Dual
Sensibilidad ∆1.1 º C a 0.9m/s
Velocidad de detección 0.15 – 3.6m/s
Alimentación 8.2 a 16 VDC
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 27
Standby: 14mA Activado con LED: 8mA Corriente Activado sin LED: 5mA
Compensación de temperatura Si
Ancho de pulso Ajustable
Período de alarma 2 +/- 1 s
Período de calentamiento ~ 60 s
Indicador LED El LED está encendido durante el movimiento.
Rango de operación de temperatura -20 º C a +60 º C
Protección RFI3 30 V/m 10 – 1000 MHz.
Protección EMI4 50,000 V de interferencia eléctrica proveniente de luz o fuente de poder.
Dimensiones 90 mm x 63 mm x 45 mm
Peso 78g
Ángulo: 90,5 º 15m x 21m Cobertura Alcance: 9 º 21m x 3,5m
Normas CE (Comisión Europea)
Tabla. 3.1. Especificaciones técnicas de los sensores de movimiento
Figura. 3.1. Sensor de movimiento TALON TLC-15 3 Interferencia de Radio Frecuencia 4 Interferencia Electromagnética
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 28
Se eligió este tipo de sensor de movimiento, debido a sus características,
como son alcance y ángulo de detección, las cuales cumplen con los
requerimientos del proyecto.
Contactos de puertas y ventanas
Modelo MSC-1102
Tipo Contacto magnético
Tipo de lazo Cerrado
Contacto magnético Normalmente abierto
Brecha 24 mm
Resistencia máxima de contacto inicial
0,150 Ω
Potencia máxima 10 W
Distancia de conexión máx 50 m
Voltaje máximo 100 VAC / VDC
Corriente máxima 0,5A
Dimensiones 13.5 mm x 6.73 mm x 33.5 mm
Normas CE (Comisión Europea) UL (Underwriters Laboratories) ULC (Underwriters Laboratories of Canada)
Tabla. 3.2. Especificaciones técnicas de los contactos de puertas y ventanas
Figura. 3.2. Contacto magnético MSC-1102
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 29
Se escogió este tipo de sensores debido a su facilidad para la instalación,
su funcionamiento, y la distancia a la que pueden ser colocados con respecto a la
central.
• Controladores:
Microcontrolador
Modelo PIC18F442
Memoria de programa Bytes 16K
(flash) Palabras 8Kx16
Bytes EEPROM 256 Memoria de datos
Bytes RAM 768
Conversor A/D 8 (10 bits)
BOR (detección de baja tensión) Sí
33 líneas Líneas I/O 5 puertos USART/ Comunicación serie MSSP
CCP (captura, comparación y ancho de pulso) 2
1: 16 bits 2: 8 bits Temporizadores 1: WDT
Frecuencia máxima (MHz) 40
ICSP (programación serie en circuito) Sí
40-pin DIP 44-pin PLCC Encapsulado 44-pin TQFP
Fuentes de interrupción 18
Comunicación paralelo Sí
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 30
Resets
POR, BOR, Reset instruction,
stack full, Stack underflow,
(pwrt, ost) Instruction set 75
Voltaje 2,0 V a 5,5 V
Tabla. 3.3. Características microcontrolador 18F442
Figura. 3.3. Diagrama general del microcontrolador 18F442
Microcontrolador
Modelo PIC 16F877A
Memoria de programa Bytes 14336 (flash) Palabras 8192x14
Bytes EEPROM 256 Memoria de datos
Bytes RAM 368
Conversor A/D 8 (10 bits)
BOR (detección de baja tensión) Sí
33 líneas Líneas I/O 5 puertos
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 31
USART/ Comunicación serie
MSSP
CCP (captura, comparación y ancho de pulso) 2
1: 16 bits 2: 8 bits Temporizadores 1: WDT
Frecuencia máxima (MHz) 20
ICSP (programación serie en circuito) Sí
Resets POR, BOR, (PWRT, OST)
40-pin DIP 44-pin PLCC 44-pin TQFP
Encapsulado
44-pin QFN Fuentes de interrupción 14
Comunicación paralelo Sí
Instruction set 75
Voltaje 2,0 V a 5,5 V
Tabla. 3.4. Características microcontrolador 16F877A
Figura. 3.4. Diagrama general del microcontrolador 16F877A
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 32
Se utilizan estos dos microcontroladores debido al número de puertos que
poseen. El PIC 18F442 se escogió ya que tiene mayor memoria que el PIC
16F877A y los programas a ser creados para la central y panel de control
requieren gran cantidad de memoria. El PIC 16F877A es usado para controlar los
periféricos, el cual no requiere de memoria elevada.
3.2. ESTUDIO DE LOS PLANOS DE LA VIVIENDA
En función del nivel de automatización y sus futuras ampliaciones el
proyecto domótico cambia, así como las diferentes instalaciones a integrar. Es por
esto que para cada sistema se tiene que realizar un estudio previo de las
características de la vivienda en donde se va a instalar el proyecto, tomando en
cuenta las necesidades del usuario y la topología física de la casa.
Por lo tanto, el prototipo desarrollado es un sistema centralizado, con
servicio domótico básico, el cual brinda una gestión y control de alarmas técnicas
y de seguridad básico, que cuenta con:
• Gestión de seguridad
• Gestión de las comunicaciones
• Interfaces de usuario.
3.2.2. Determinación del número de circuitos de iluminación
Para determinar el número de luminarias a encender para el simulador de
presencia, se tomó en cuenta las luminarias que dan a los exteriores, es decir,
todas aquellas luminarias que se pueden observar desde fuera de la vivienda,
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 33
esto es para ahorrar energía, y que personas ajenas a la vivienda puedan percibir
que se encuentra alguien en la misma. Por lo cual, se escogieron siete luminarias,
las cuales se encenderán aleatoriamente5.
3.2.3. Determinación de la ubicación de sensores de movimiento y
contactos magnéticos
Los sensores de movimiento se instalan normalmente en todas las
estancias, su ubicación depende de la tipología de la habitación, pero una vez
estudiado los planos de la vivienda, se establece la ubicación únicamente de tres
sensores, debido al tamaño y morfología de la vivienda para el caso del sistema
de seguridad. Estos sensores se encuentran en la sala-comedor, cocina y en el
hall de la planta alta.
Para la ubicación de estos sensores, se tomó en cuenta las siguientes
especificaciones:
• Evitar la ubicación en superficies donde reciban directamente la luz
solar.
• Evitar ubicarlos en áreas donde puedan existir cambios bruscos de
temperatura.
• Evitar la ubicación de los sensores en áreas con ductos de aire.
• Elegir una ubicación donde se pueda interceptar rápidamente una
intrusión.
• Tener en cuenta que los sensores de movimiento reaccionan mejor ante
un ambiente estable.
5 Plano de Iluminación ver Anexo 1
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 34
Además de estos tres sensores, se instalan dos más para el simulador de
presencia, los cuales se ubican en el exterior de la vivienda, tomando los ángulos
donde se puedan observar merodeadores6.
Los contactos magnéticos también se instalan normalmente en todas las
puertas y ventanas de la vivienda, pero debido a que existe en la vivienda un patio
interno, y ciertas ventanas dan a ese patio, se opta por no ubicar allí estos
contactos. Por lo que se tienen en total siete contactos para ventanas, y cuatro
contactos para puertas7.
3.2.4. Estudio de planos eléctricos y otras instalaciones de interés a instalar en la vivienda
El estudio de los planos eléctricos sirve para tener en cuenta donde realizar
las conexiones y poder ubicar los elementos. Con esto, se ubican los siguientes
elementos:
• Una central de control en la alacena, ya que es un lugar poco asequible
para que intrusos no puedan tener acceso a ella, con suficiente espacio
para poder realizar todas las conexiones y con alimentación para su
funcionamiento.
• Un panel de control; cerca de la puerta principal de entrada, para que
de esta forma el usuario tenga la facilidad de activar o desactivar el
sistema al momento de abandonar o llegar a su residencia.
6 Plano de Sensores de Movimiento ver Anexo 2 7 Plano de Contactos Magnéticos ver Anexo 3
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 35
• Una sirena; cuya ubicación habitual es en la fachada principal de la
vivienda, en un lugar visible y de difícil acceso desde la calle, por lo que
se la ubicó en el frente del tercer piso8.
• Un portero en la fachada de la casa con dos citófonos, en el primer
citófono se realiza la conmutación de parlante y micrófono para el
domoportero.
3.3. DISEÑO DEL HARDWARE DE CONTROL
3.3.2. Conceptos preliminares
3.3.1.1 Sensores de movimiento
Los sensores de movimiento son uno de los tipos de sensores más usados
en viviendas y edificios. Permiten controlar la iluminación, la climatización y el
sistema de seguridad.
Estos sensores no deben activarse por sí solos con señales falsas como
ser variaciones en la luminosidad natural, presencia de animales o variaciones
bruscas de temperatura.
Los sensores de movimiento deben ser seleccionados según el área que
se desee supervisar, el tipo de movimiento que se desee sensar y el tipo de carga
que se desee comandar.
8 Plano de Ubicación de Elementos ver Anexo 4
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 36
Muchos sensores de movimiento tienen integrados dispositivos como por
ejemplo sensores de luminosidad, receptores de IR, temporizadores y
controladores horarios.
Los sensores de movimiento a ser utilizados son de tipo PIR (Passive Infra
Red), los cuales son los más adecuados en cuanto a un sistema de seguridad se
refiere, ya que ofrecen una garantía en la detección de intrusiones gracias a su
amplio radio de acción, y de modelo TALON TLC-15, cuyo alcance de hasta 21
metros y 90º.
A continuación se muestran los lóbulos de detección del sensor de
movimiento TALON TLC-15, a ser utilizado en este prototipo de simulador de
control domótico:
Figura. 3.5. Cobertura del alcance del sensor de movimiento
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 37
Figura. 3.6. Ángulo de detección del lente del sensor de movimiento
3.3.1.2. Contactos magnéticos (sensores de puertas y ventanas)
Un contacto magnético es un dispositivo que se utiliza para indicar el
estado abierto o cerrado de un punto de acceso. Normalmente, es un dispositivo
sin contacto que contiene un imán posicionado en la puerta o ventana y un
receptor magnético posicionado en el marco que activa un interruptor interno. El
controlador es capaz de interpretar la situación de la puerta mediante el cambio
de estado del dispositivo.
El contacto magnético es el más común de los contactos de puerta y
ventana y puede adquirirse en múltiples formatos (montaje en superficie,
empotrado, y otros). Este dispositivo no determina si la puerta está bloqueada o
no, sino solamente si está abierta o cerrada. En el control de accesos, se usa
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 38
para comprobar si un punto de acceso ha sido forzado o ha sido mantenido
abierto durante más tiempo del necesario.9
A continuación se muestran distintos tipos de sensores de puertas y
ventanas, siendo la primera imagen desde la izquierda de la Figura. 3.7. el tipo de
sensor a ser utilizado en este proyecto.
Figura. 3.7. Contactos magnéticos10
3.3.2. Tipos de sistemas de control
3.3.2.2. Sistema de lazo abierto Son los sistemas en los cuales la salida no afecta la acción de control. En
un sistema en lazo abierto no se mide la salida ni se realimenta para compararla
con la entrada.
En cualquier sistema de control en lazo abierto, la salida no se compara
con la entrada de referencia. Por tanto a cada entrada de referencia le
corresponde una condición operativa fija; como resultado, la precisión del sistema
depende de la calibración. Ante la presencia de perturbaciones, un sistema de
control en lazo abierto no realiza la tarea deseada. En la práctica, el control en
9 http://www.casmar.es/accesos/Keyking/index_archivos/Page4042.htm 10 http://www.homesecuritystore.com/ezStore123/DTProductList.asp?p=2_1_1_1_0_0_45
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 39
lazo abierto sólo se utiliza si se conoce la relación entre la entrada y la salida y si
no hay perturbaciones internas ni externas. Es evidente que estos sistemas no
son de control realimentado.11
Figura. 3.8. Sistema lazo abierto
3.3.2.3. Sistema de lazo cerrado
Los sistemas de control realimentados se denominan también sistemas de
control de lazo cerrado. En la práctica, los términos control realimentado y control
en lazo cerrado se usan indistintamente.
En un sistema de control en lazo cerrado, se alimenta al controlador la
señal de error de actuación, que es la diferencia entre la señal de entrada y la
salida de realimentación (que puede ser la señal de salida misma o una función
de la señal de salida y sus derivadas o/y integrales) a fin de reducir el error y
llevar la salida del sistema a un valor conveniente. El término control en lazo
cerrado siempre implica el uso de una acción de control realimentando para
reducir el error del sistema.12
11 http://usuarios.lycos.es/automatica/temas/tema2/pags/la_lc/la.HTM 12 http://usuarios.lycos.es/automatica/temas/tema2/pags/la_lc/lc.htm
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 40
Figura. 3.9. Sistema lazo cerrado
Al conocer las características de los distintos tipos de sistemas de control
se elige el Sistema de Control de Lazo Abierto, puesto que éste se adapta a la
forma de controlar el simulador de presencia y el domoportero, en donde la salida
no tiene efecto sobre la acción de control, es decir, la salida no se mide ni se
retroalimenta para compararla con la entrada.
Tanto en el simulador de presencia, como en el domoportero, se envía la
orden desde un teléfono celular o desde el panel del sistema (entradas), y los
distintos periféricos la ejecutan (salidas), entonces, al no comparar la entrada con
la salida para efectuar la acción, por consiguiente el sistema de control ha
utilizarse es el de lazo abierto.
La visión general del control a realizarse se presenta en la figura 3.10.
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 41
Figura. 3.1. Diagrama de bloques del hardware de control
3.3.1. Protocolo de comunicación entre MODEM y controlador
3.3.1.2. Comunicación serial
La forma más común de intercambiar información entre equipos
electrónicos es la comunicación serial. Esta comunicación consiste en la
transmisión y recepción de pulsos digitales, a una misma velocidad.
Existen dos tipos diferentes de comunicación serial; síncrona y asíncrona.
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 42
La comunicación entre el MODEM y el controlador es serial asíncrona, en
este tipo de comunicación, el pulso de cada bit está determinado por la velocidad
con la cual se realiza la transferencia de datos.
Normalmente cuando no se realiza ninguna transferencia de datos, la línea
del transmisor se encuentra en estado de (idle), lo que quiere decir en estado alto.
Para iniciar la transmisión de datos, el transmisor coloca la línea del
transmisor en bajo durante determinado tiempo, lo cual se le conoce como bit de
arranque (start bit) y a continuación empieza a transmitir con un intervalo de
tiempo los bits correspondientes al dato, empezando siempre por el BIT menos
significativo (LSB), y terminando con el BIT mas significativo (MSB).13
Tanto el receptor como el transmisor deben tener los mismos parámetros
de velocidad, paridad, número de bits del dato transmitido y de BIT de parada, los
cuales son:
Bits por segundo 2400
Bits de datos 8
Paridad ninguno
Bits de parada 1
Control de flujo ninguno
Tabla. 3.5. Configuración de bits comunicación serial
En los circuitos digitales, cuyas distancias son relativamente cortas, se
pueden manejar transmisiones en niveles lógicos TTL (0-5V), pero cuando las
13 http://wk3.iespana.es/Serial_RS232.pdf
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 43
distancias aumentan, estas señales tienden a distorsionarse debido al efecto
capacitivo de los conductores y su resistencia eléctrica. El efecto se incrementa a
medida que se incrementa la velocidad de la transmisión. Para evitar este
problema se emplea el protocolo RS-232, el cual trabaja con niveles de voltaje de
-12V y +12V.
El MODEM a utilizar es el del teléfono celular Nokia 3220, se utiliza este
celular debido a la gran cantidad de información que existe sobre la utilización del
mismo, además porque tiene todas las funciones que se necesitan para el
desarrollo de este proyecto como es la aceptación de comandos AT. También,
este teléfono es relativamente económico comparado con otros teléfonos que
poseen las mismas características.
El MÓDEM del teléfono mencionado anteriormente se comunica
serialmente con el controlador mediante comandos AT, estos comandos son instrucciones codificadas que conforman un lenguaje de comunicación entre el hombre y un
terminal modem. Los comandos AT se denominan así por la abreviatura de attention.
Para realizar esta comunicación serial entre el MÓDEM y el controlador se
necesitan únicamente los pines correspondientes a transmisión, recepción y tierra
del celular.
A continuación se describen los pines del teléfono Nokia 3220:
Figura. 3.11. Conector MODEM celular Nokia 3220
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 44
1 V. In
2 GND
3 ACI (Auto connect ignition)
4 V. Out
5 USBPowDet (USB power detection)
6 FBUS Rx
7 FBUS Tx
8 GND
9 Microphone (-)
10 Microphone (+)
11 Earphone L (-)
12 Earphone L (+)
13 Earphone R (-)
14 Earphone R (+)
Tabla. 3.6. Pines Nokia 3220
Una vez especificados los pines del teléfono celular, se puede realizar la
comunicación entre el controlador y el MODEM, teniendo en cuenta que los
voltajes del celular son inferiores a los TTL, siendo estos entre 2.7V y 3.3V, por lo
cual se tiene que implementar un regulador de voltaje. Entonces, la comunicación
serial entre el microcontrolador y el MODEM tiene el siguiente diagrama:
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 45
Figura. 3.12. Esquema de comunicación controlador – MODEM
RA0
2
RA1
3
RA2
4
RA3
5
RA4/
T0CK
I6
RA5/
SS7
RB0/
INT
33
RB1
34
RB2
35
RB3
36
RB4
37
RB5
38
RB6
39
RB7
40
RC0/
T0O
SI/T
1CK
I15
RC1/
T0O
SO16
RC2/
CCP1
17
RC3/
SCK
/SCL
18
RC4/
SDI/S
DA
23
RC5/
SDO
24
RC6
25
RC7
26
RD0/
PSP0
19
RD1/
PSP1
20
RD2/
PSP2
21
RD3/
PSP3
22
RD4/
PSP4
27
RD5/
PSP5
28
RD6/
PSP6
29
RD7/
PSP7
30
RE0/
RD8
RE1/
WR
9
RE2/
CS10
VSS
12
VSS
31
MCL
R/V
PP1
OSC
1/CL
KI
13
OSC
2/CL
KO
14
VD
D11
VD
D32
PIC1
8F44
2
3.9K
1/4W
100
1/4W
1K1/
4W
3.9K
1/4W
XTL
1u 16V
33p
16V
33p
16V
OE1
1
A1
2
A2
4
A3
6
A4
8Y
412
Y3
14Y
216
Y1
18
Y5
3
Y6
5
Y7
7
Y8
9
GN
D10
A8
11A
713
A6
15A
517
OE2
19V
CC20
Buff
er
74F2
44PC
3.3V
+5
+5
+5
TxTx
2Rx
3G
ND
44
55
66
Celu
lar
+5
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 46
Para las conexiones de los PICs tanto del oscilador (OSC1 - pin 13 y OSC2
– pin 14) como del master clear (MCLR - pin 1), se tomó en cuenta las
recomendaciones del fabricante, las cuales son las mismas tanto para el
PIC16F877A como para el PIC18F442, e indican lo siguiente:
Para el modo de oscilador HS, usado en este proyecto, un cristal es
conectado a los pines OSC1 y OSC2 para establecer la oscilación. La siguiente
figura indica las conexiones requeridas:
Figura. 3.13. Configuración para la operación con cristal14
Como se eligió usar un cristal de 20MHz, se debe elegir los capacitores
entre 15pF y 33pF, como muestra la siguiente tabla:
14 Datasheet PIC 18F442
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 47
Tabla. 3.7. Selección del capacitor para un determinado cristal
La conexión requerida para el MCLR, se muestra en la siguiente figura, la
misma que indica el valor de las resistencias necesarias para el correcto
funcionamiento, habiéndose elegido las dos resistencias del mismo valor (4KΩ) y
el del capacitor de 1uF.
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 48
Figura. 3.14. Circuito recomendado para el MCRL
Como este circuito es de control únicamente, las resistencias utilizadas son
de ¼W; ya que la corriente máxima que va a circular por éstas no sobrepasa los
50mA como se puede observar en el siguiente cálculo, el cual es el más extremo,
ya que se eligió la resistencia de menor valor, siendo por esta la que circula
mayor corriente, además, el mismo sirve de ejemplo para todas las resistencias
de los diferentes circuitos:
mAP
VR
VP
RVIVIP
25.0
1005
;
22
=
Ω==
==
Ecuación. 3.1. Cálculo de potencia máxima
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 49
3.3.4. Herramientas de desarrollo
Se utilizan varias herramientas de desarrollo para la elaboración de este
proyecto, las cuales intervienen en diferentes aspectos del mismo. Todas las
herramientas a continuación mencionadas se aplican en este prototipo, pero se
las utiliza dependiendo de las características que cada una posee, por lo cual, se
puede observar que se utilizan dos herramientas para la programación de los
microcontroladores, y dos compiladores para los mismos. Esto se debe a la
facilidad de programación de cada uno en diferentes aspectos.
Desarrolladores IDE:
• MicroCode Studio
Es un poderoso ambiente visual de desarrollo integrado (IDE),
desarrollado exclusivamente para trabajar con PICBASIC15.
Se utiliza este programa para el desarrollo del código fuente de
la Central y Periféricos debido a su facilidad en el uso de la
comunicación serial.
• MPLAB
MPLAB es una herramienta para escribir y desarrollar código en
lenguaje ensamblador para los microcontroladores PIC. MPLAB
incorpora todas las herramientas necesarias para la realización de
cualquier proyecto, ya que además de un editor de textos cuenta con un
simulador en el que se puede ejecutar el código paso a paso para ver
así su evolución y el estado en el que se encuentran sus registros en
cada momento16.
15 Se explicará lo que es PICBASIC más adelante 16 http://micropic.wordpress.com/2007/01/22/mplab/
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 50
Este programa es usado en el desarrollo del código fuente del
Panel, debido a su facilidad en la programación de interrupciones y
trabajo con teclado y LCD.
Compiladores:
• PICBASIC
El compilador PicBasic es un lenguaje de programación de
nueva generación que hace más fácil y rápido la programación de
microcontroladores Pic.
Es el compilador para MicroCode Studio. PicBasic compila
cualquier tipo de PIC, sin importar la serie.
• HI-TECH PICC 18
PICC 18 es un potente compilador ANSI C de Microchip para la
gama de 8-bit RISC microcontroladores.
Programador:
• PICkit 2
PICkit 2 es una herramienta de desarrollo de bajo costo con una
interfaz fácil de usar para la programación y depuración de
microcontroladores de la familia Microchip.
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 51
Diseñador de placas PCB:
• Altium
Altium es un líder mundial en el desarrollo y suministro de
diseños automáticos electrónicos para escritorio EDA y herramientas de
diseño para trabajo bajo ambiente Windows. El cual permite elaborar
los distintos diagramas del circuito, y fácilmente permite la elaboración
del ruteado de la placa.
3.3.5. Requerimientos de funcionamiento
Los diferentes tipos de sistemas domóticos ofrecen distintas características
de funcionamiento. La variedad de sensores y las características propias del
sistema, hacen que cada uno tenga requerimientos diferentes. Por cual, este
sistema cumple con los siguientes requerimientos:
• Poseer una central, la cual es la encargada de controlar todo el sistema
en general, como; la activación, programación, encendido de luces y
control del panel.
o Debe poseer un MODEM, el cual es el encargado de receptar todos
los SMS, para que luego el microcontrolador realize la acción
requerida.
o Debe controlar los periféricos, tanto los de entrada (sensores) como
los de salida (sirena, iluminación).
o Una vez que esté activado el sistema, empezar el simulador de
presencia, el cual es el encargado de encender las luces
aleatoriamente, a partir de una hora establecida.
o Controlar el domoportero, activando el micrófono y parlante tanto del
portero como del MODEM, respectivamente.
o Activar la sirena, una vez que ha habido intrusión dentro de la
vivienda.
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 52
o Controlar el domoportero, el cual entra en funcionamiento una vez
que se active el sistema.
• Poseer un panel de control, desde el cual se pueda activar / desactivar
el sistema, activar / desactivar zonas, configurar la hora, y otros.
Una zona es el elemento con conjunto de elementos del mismo tipo que
abarcan un área en común, es decir, una zona pueden ser los sensores
de puertas y ventanas de la sala y comedor, pero no el sensor de
movimiento que se encuentra allí. Por lo general, cada sensor de
movimiento pertenece a una zona diferente, asimismo la sirena también
pertenece a otra zona ya que tiene una función específica muy distinta
a las demás.
• Debe poseer una batería para que el sistema siga funcionando aun
cuando el suministro de energía eléctrica falle.
• Se deben instalar sensores de movimiento y sensores de puertas y
ventanas en los lugares necesarios para la seguridad de la vivienda,
para que estos sensores sean los encargados de determinar alguna
intrusión en la misma.
3.4. PROGRAMACIÓN DEL CONTROLADOR
Para la programación de los distintos controladores se emplean dos
programas diferentes; MPLAB con PicCLite18 y MicroCode con PICBasic. El
programa de la central y de los periféricos se lo desarrolla con PICBasic, y el del
panel de control con MPLAB.
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 53
Se utilizan ambos programas debido a las características propias de cada
uno, siendo para la central y periféricos primordial la comunicación serial entre
ellos y con otros dispositivos como son el MODEM y el panel de control, se utiliza
el PICBasic. PICBasic es un programa sumamente utilizado para cuando se
requiera trabajar con comunicación serial, ya que este programa puede realizar
que cualquier pin I/O del microcontrolador, sea Tx o Rx para cualquier
comunicación, de esta forma no se está limitando a tener comunicación serial
solamente con un dispositivo, si no que se puede comunicar con varios
dispositivos a la vez.
Mientras que el programa del panel de control se caracteriza por trabajar
bajo interrupciones, y siendo MPLAB un programa sumamente sencillo en este
aspecto, se lo aplica.
3.4.1. Lógica de programación
3.4.1.2. Central La lógica de programación se representa en el diagrama de flujo de la
figura 3.14, pero a continuación se explica de forma detallada su contenido:
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 54
INICIALIZACIÓN MODEM
INICIO
SISTEMA ACTIVADO
SE RECIBIÓ SMS
ACTIVAR/DESACTIVAR
SISTEMA
CAMBIAR CLAVE
CAMBIAR NÚMERO
TELÉFONO
ACTIVAR ZONAS
ACTIVAR FOCOS
NO
NO
NO
NO
SI
SI
SI
NO
SI
SE CONFIGURÓ
DESDE PANEL
SI
PROGRAMA FOCOS
SI
PROCESO SISTEMA
ACTIVADO
NO
PROGRAMA ZONAS
PROGRAMA TELEFONO
PROGRAMA CLAVE
SISTEMA ACTIVADO/
DESACTIVADO
INICIALIZACIÓN GENERAL DEL SISTEMA
NO
NO
SI
SI
Figura. 3.15. Diagrama de flujo central
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 55
• Configuración de los parámetros del MÓDEM.
• Detección de la llegada de un SMS a la central.
• Realización de la comunicación con el panel de control.
• Activación o desactivación del sistema según indique el SMS o el panel
de control.
• Monitoreo de los distintos sensores tanto de presencia como de puertas
y ventanas.
• Control de la activación o desactivación de la sirena.
• Activación o desactivación de zonas e iluminación de acuerdo a los
SMS o al panel de control.
• Control del encendido o apagado de las luces.
Como se puede observar en la Figura 3.14., primero se realiza una
inicialización general del sistema, esto es para inicializar los periféricos. Esto se
realiza mediante el seteo o reseteo de varios pines del microcontrolador, los
cuales son los siguientes:
ESTADO PIN NOMBRE FUNCION
0 PORTD.3 SIRENA Desactiva la sirena
1 PORTC.5 DESACT Indica que el sistema está
desactivado
0 PORTD.5 DOMO Señal que indica que alguien timbró
el portero
1 PORTE.0 PARLANTE Señal que desactiva el parlante del
domoportero
1 PORTE.1 MIC Señal que desactiva el micrófono del
domoportero
0 PORTD.0 RECIBIR_DAT Señal para que el panel envíe datos
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 56
0 PORTD.1 S_ACTIV Señal para indicar al panel que está
desactivado el sistema
0 PORTD.2 COM_CLAVE Señal para comparar las claves
0 PORTC.4 ACTIV Señal que indica que está activado el
sistema
0 PORTD.6 SIMULADOR Señal para indicar que puede iniciar
el simulador de presencia
1 PORTE.2 CARGAR Señal para cargar el celular
Tabla. 3.8. Pines de inicialización del sistema
Luego de esta inicialización, se configura el MÓDEM con los siguientes
comandos AT17:
• ATZ&F
Este comando restaura los valores de los parámetros de uno de los
perfiles de usuario recordando los respectivos ajustes de la memoria.
También restaura todos los ajustes de fábrica incluyendo los del
Registro S, pero no los guarda.
El registro S permite el control sobre operaciones específicas del
módem. Este registro puede ser leído, escrito, o simplemente usado
como referencia.
Comando:
ATZ&F
• AT+CMGF
Este comando le indica a los datos que tipo de formato de texto se va a
utilizar para enviar, leer y escribir SMS. Estos formatos pueden ser PDU
17 Sintaxis de comandos en Anexo 7
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 57
o tipo Texto. Para este proyecto se utiliza el formato tipo Texto, en el
cual el encabezado y el cuerpo del mensaje son diferentes parámetros.
Comando:
AT+CMGF=1
• AT+CNMI
Este comando selecciona la forma en como se van a recibir los nuevos
mensajes desde la red de telefonía celular.
Comando:
AT+CNMI=2,1
• AT+CMGD
Este comando borra todos los mensajes guardados en el celular, tanto
los de entrada como los de salida.
Comando:
AT+CMGD=1,4
• AT+CPMS
Con este comando se selecciona en que parte del teléfono se van
guardar los mensajes de entrada y salida. Se puede guardar en la SIM
Card o en la memoria del teléfono, para este proyecto se van a guardar
todos los mensajes en la SIM Card.
Comando:
AT+CPMS=”SM”,”SM”
En el programa principal, se ejecutan todas las acciones que el usuario
necesite y que desee realizar; verifica si el usuario desea cambiar de clave, de
teléfonos a discar, de zonas a activar, entre otros.
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 58
En el siguiente diagrama de flujo se explica la forma en que el sistema
actúa cuando el mismo está activado para todas las zonas:
PROCESO SISTEMA ACTIVADO
SENSAR ZONAS
SENSOR INTRUSIÓN ACTIVADO
SISTEMA PENETRADO
SIMULADOR PRESENCIA
SI
SISTEMA ACTIVADO
FIN
NO
TIMBRE PORTERO
DOMO-PORTERO
ZONA1 ACTIVADA
NO
SI
NOSI
NO
SI
Figura. 3.16. Diagrama de flujo del sistema activado
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 59
Al momento de activar el sistema desde el panel de control se tienen dos
opciones, las cuales se activan automáticamente:
• Activación completa
• Activación parcial
Activación completa: Esta activación se utiliza cuando la vivienda queda
deshabitada, es decir ningún usuario está dentro de la misma, e incluye lo
siguiente:
o Activación de todos los contactos magnéticos de puertas y ventanas.
o Activación de todos los sensores de movimiento del sistema de
seguridad
o Activación de los sensores de movimiento del simulador de
presencia.
o Activación del domoportero.
Activación parcial: Esta activación se utiliza cuando existen personas
dentro de la vivienda pero se requiere el sistema de seguridad, comúnmente
utilizado en la noche mientras los habitantes duermen, incluye lo siguiente:
o Activación de todos los contactos magnéticos de puertas y ventanas.
El sistema elige automáticamente que tipo de activación ejecutar, esto lo
realiza mediante el sensamiento de la puerta principal de la vivienda. Si el sistema
sensa que la puerta principal fue abierta durante el tiempo que tiene el usuario
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 60
mientras se activa el mismo, significa que el usuario abandonó la vivienda y se
necesita que se realice una activación completa, mientras que, si el sistema no
sensó ninguna apertura de puerta, significa que el usuario no salió de la vivienda,
por lo tanto solo necesita que se active parcialmente el sistema.
Si el sistema es activado vía SMS, se realiza la activación completa, ya que
se entiende que si el sistema fue activado de esta forma, el o los usuarios no se
encuentran en la vivienda y se necesita que la misma quede completamente
protegida.
Si el sistema ha sido penetrado, figura 3.15., lo que significa que se activó
algún sensor de movimiento o contacto magnético estando el sistema activado, se
envía un SMS indicando al usuario que el sistema ha sido violado, señalando la
zona quebrantada, además se enciende la sirena. Una vez transcurridos 30
segundos, la sirena se apaga, y se desactiva la zona violada, quedando el resto
de zonas activadas. No se deja todo el tiempo encendida la sirena hasta que
alguien desactive el sistema ya que esto perturba a los vecinos debido al elevado
sonido que la misma emite.
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 61
Figura. 3.17. Diagrama de flujo del sistema penetrado
Para enviar un SMS desde la central se utilizan los siguientes comandos
AT:
• AT+CSCA
Este comando actualiza el número de la central de servicio, a través del
cual, el SMS originado es transmitido.
Comando:
AT+CSCA=”+59397995040”
Este es el número de la central de mensajería de PORTA.
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 62
• AT+CMGS
Este comando le dice a los datos que tipo de formato de mensajes se
va a utilizar para enviar, leer y escribir SMS.
Comando:
AT+CMGS=”xxxxxxxxx”texto<Ctrl.+Z>
Siendo:
xxxxxxxxx, el número predefinido por el usuario a cual se enviará el
mensaje.
Texto, el mensaje a ser enviado.
Ctrl.+Z, finalización del mensaje.
Figura. 3.18. Diagrama de flujo para enviar SMS
Cuando el sistema está activado, y funcionando el domoportero, al
momento de que una persona timbre el portero, se ejecutan los siguientes
comandos:
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 63
• ATD
Este comando realiza una llamada.
Comando:
ATD<num>;
Siendo:
num, el número establecido para generar la llamada.
• AT+CPAS
Este comando verifica el estado de la actividad del celular, es decir,
dice si el teléfono está listo para generar una llamada, o no se puede
generar una llamada, está timbrando, o está una llamada en progreso.
Comando:
AT+CPAS
Se utiliza este comando para determinar el momento en el que se ha
contestado la llamada y poder activar el micrófono y parlante del
domoportero.
• AT+CHUP
Este comando cierra la llamada en curso.
Comando:
AT+CHUP
Para el domoportero, se especifican tres números de teléfonos, sean estos
fijos o celulares. Esto es para prevenir que si la primera persona no contesta el
teléfono, puede hacerlo la siguiente, ya que el sistema marca automáticamente el
siguiente número, y de esta forma alguien atiende el domoportero.
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 64
Figura. 3.19. Diagrama de flujo del domoportero
A continuación se muestran los diagramas de flujo de las diferentes
opciones que ofrecen el panel y la configuración mediante SMS:
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 65
PROGRAMA CLAVE
COMPARAR CLAVES
Clave Ing = Clave Sist
CLAVE SISTEMA = CLAVE NUEVA
FIN
SI
NO
Figura. 3.20. Diagrama de flujo para cambiar la clave
Figura. 3.21. Diagrama de flujo para cambio de teléfonos
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 66
PROGRAMA FOCOS
COMPARAR CLAVES
Clave Ing = Clave Sist
FIN
ACTIVAR FOCOS
DESACTIVAR FOCOS
SELECCIONAR LOS FOCOS
SELECCIONAR LOS FOCOS
SI
SI
SI
NO
NO
NO
Figura. 3.22. Diagrama de flujo de activación / desactivación focos
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 67
PROGRAMA ZONAS
COMPARAR CLAVES
Clave Ing = Clave Sist
FIN
ACTIVAR ZONAS
DESACTIVAR ZONAS
SELECCIONAR LAS ZONAS
SELECCIONAR LAS ZONAS
SI
SI
SI
NO
NO
NO
Figura. 3.23. Diagrama de flujo para activación / desactivación zonas
3.4.1.3. Periféricos
En el programa de periféricos, se establece toda la comunicación con los
sensores e iluminación.
El siguiente diagrama de flujo indica la forma de operación del simulador de
presencia:
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 68
Figura. 3.24. Diagrama de flujo del simulador de presencia
Para el caso del simulador de presencia, se maneja un reloj interno, que
especifica en que momento debe empezar a funcionar el simulador, ya que este
solo debe funcionar en la noche, es por esto que se emite una señal pasada las
18h30, ya que por lo general a partir de esta hora se necesita iluminación
adicional. Y se deja activada la señal hasta las 6h00 de la mañana del día
siguiente, porque a partir de esta hora empieza a salir el sol.
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 69
Existen dos sensores que activan al simulador de presencia, cada uno
manejando diferentes áreas de la casa y enciendo diferentes luminarias. Si estos
sensores no se llegan a activar, existe el simulador general, que enciende la
iluminación aleatoriamente de las distintas luminarias de la casa
Figura. 3.25. Conexiones de los periféricos
+5
RA0
2
RA1
3
RA2
4
RA3
5
RA4/
T0CK
I6
RA5/
SS7
RB0/
INT
33
RB1
34
RB2
35
RB3
36
RB4
37
RB5
38
RB6
39
RB7
40
RC0/
T0O
SI/T
1CK
I15
RC1/
T0O
SO16
RC2/
CCP1
17
RC3/
SCK
/SCL
18
RC4/
SDI/S
DA
23
RC5/
SDO
24
RC6
25
RC7
26
RD0/
PSP0
19
RD1/
PSP1
20
RD2/
PSP2
21
RD3/
PSP3
22
RD4/
PSP4
27
RD5/
PSP5
28
RD6/
PSP6
29
RD7/
PSP7
30
RE0/
RD8
RE1/
WR
9
RE2/
CS10
VSS
12
VSS
31
MCL
R/V
PP1
OSC
1/CL
KI
13
OSC
2/CL
KO
14
VD
D11
VD
D32
PIC2
3.9K
1/2W
3.9K
1/2W
12
XTL
1u 16V
33p
16V
33p
16V
+5
+5
1M 1/2W
1M 1/2W
+12
+5
+12
110
29
38
47
56
SEN
_MO
V
18 9
410 11
512 13
714
632
Ven
t_Pu
er+5
+5
1 2 3 4 5 6 A
123456
B
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 70
Para los sensores, a la casa se le ha dividido en zonas18, haciendo que un
grupo de sensores, sean estos de movimiento o contactos magnéticos, manejen
distintas áreas de la vivienda. Estos sensores son conectados al controlador
según muestra el diagrama esquemático anterior.
3.4.1.4. Panel
Para el programa del panel, se establece primero la comunicación con el
LCD, teclado y con la central.
La comunicación con la central se la realiza de forma serial unidireccional,
es decir, solamente el panel envía datos serialmente a la central. Estos datos son
los que indican que acción debe realizar la central, ya que desde el panel se
puede modificar la clave, los teléfonos, las zonas, las luminarias y lo más
importante se puede activar y desactivar el sistema.
El teclado es conectado de forma paralela al controlador, y se maneja con
interrupciones, al presionar cada tecla se genera una interrupción y el controlador
realiza la acción solicitada.
El LCD trabaja con un bus de datos de 4 bits y 3 bits de control.
Todos estos periféricos están conectados según muestra la siguiente
figura:
18 Plano de Zonas ver Anexo 5
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 71
Figura. 3.26. Conexiones del panel
RA0
2
RA1
3
RA2
4
RA3
5
RA4/
T0CK
I6
RA5/
SS7
RB0/
INT
33
RB1
34
RB2
35
RB3
36
RB4
37
RB5
38
RB6
39
RB7
40
RC0/
T0O
SI/T
1CK
I15
RC1/
T0O
SO16
RC2/
CCP1
17
RC3/
SCK
/SCL
18
RC4/
SDI/S
DA
23
RC5/
SDO
24
RC6
25
RC7
26
RD0/
PSP0
19
RD1/
PSP1
20
RD2/
PSP2
21
RD3/
PSP3
22
RD4/
PSP4
27
RD5/
PSP5
28
RD6/
PSP6
29
RD7/
PSP7
30
RE0/
RD8
RE1/
WR
9
RE2/
CS10
VSS
12
VSS
31
MCL
R/V
PP1
OSC
1/CL
KI
13
OSC
2/CL
KO
14
VD
D11
VD
D32
PIC1
8F44
2
3.9K 1/
2W3.
9K1/
2W
12
20M
hz
1u 16V33
p 16V
33p
16V
+5
+5
123456789
10111213141516
LCD
123456789
TECL
AD
O
C1+
1V
DD
2
C1-
3
C2+
4
C2-
5
VEE
6
T2O
UT
7
R2IN
8R2
OU
T9
T2IN
10T1
IN11
R1O
UT
12R1
IN13
T1O
UT
14
GN
D15
VCC
16
MA
X23
2ACP
E
+51u
F50
V1u
F
50V
1uF
50V
1uF
50V
1uF
50V
+5Po
t 5K
+5
1 2 3 4 5 6
Cone
ctor
A
TRIG
2
OU
T3
RST
4
CVO
LT5
THR
6D
ISC
7
VCC
8
GN
D1
LM55
5
+515
0M1/
2W
+510
u
16V 22
0n
16V
Pot_
100K
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 72
3.4.2. Hardware de programación Para la programación de los PICs 18F442 y 16F877A, se ha utilizado el
programador PICkit 2, de Microchip, el cual se conecta serialmente a la
computadora, y mediante su software permite la fácil selección del programa a
grabar y en que dispositivo.19
Figura. 3.27. Programador PICkit 2
3.5. DISEÑO DE LA ETAPA DE POTENCIA De los diferentes puertos de salida del controlador, se obtienen las señales
necesarias para la activación de las distintas luces de la vivienda, controlando el
tiempo a estar las mismas encendidas.
Para el acoplamiento entre la etapa de control y la etapa de potencia se
utilizarán los optoacopladores; PC81720, para posteriormente amplificar la
corriente mediante el uso de transistores Darlington (ULN 2003A) que permitirán
suministrar a los relés la corriente necesaria para su activación. El uso de
optoacopladores sirve para aislar eléctricamente la etapa de control de la de
19 Información sobre el funcionamiento del Software PICkit 2 ver el Anexo 8 20 Información sobre las características y funcionamiento de los optoacopladores en el datasheet adjunto.
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 73
potencia, con un acoplamiento óptico, lo que protege a la etapa de control de
cortos u otras anomalías eléctricas provenientes de la etapa de potencia.
Figura. 3.28. Diagrama de flujo de la etapa de potencia
La corriente máxima en el fotodiodo de la entrada de los optoacopladores
es de 50mA, por lo que se utiliza una resistencia de 220Ω para limitar la corriente
a 23mA por la ley de Ohm, lo que nos asegura tener la señal adecuada para su
óptimo funcionamiento.
En la etapa de salida del optoacoplador se utiliza un pull-up a 5V para
alimentar la base del transistor Darlington, el cual es utilizado como amplificador
de corriente para la bobina del relé de potencia.
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 74
K 10
IN66
OUT7 12IN77 OUT6 13OUT5 14
IN33
OUT4 15
IN11
OUT3 16IN22
OUT8 11
GND9
IN44
IN88
IN55
OUT1 18
OUT2 17
ULN2803A
2201/2W
2201/2W
2201/2W
2201/2W
2201/2W
2201/2W
2201/2W
+5
+5
+5
+5
+5
+5
+55K
1/2W
5K1/2W
5K1/2W
5K1/2W
5K1/2W
5K1/2W
5K1/2W
+5
+5
+5
+5
+5
+5
+5
+5 FASE1234567
FASE_FOCOS
1N4005
3
4
5
6
7
1N4005
1N4005
1N4005
1N4005
1N4005
1N4005
123456
ConectorA
123456
ConectorB
Opto1
PC817
Opto2
PC817
Opto3
PC817
Opto4
PC817
Opto5
PC817
Opto6
PC817
Opto7
PC817
Figura. 3.29. Diagrama de conexiones de la etapa de potencia
3.6. DISEÑO DE LA PLACA PCB 3.6.1. Parámetros de diseño
Para la elaboración de las placas, se estableció previamente que todos los
elementos a utilizar sean “Through Hole”, ya que son simples de soldar y
conseguir. Estos elementos “Through Hole” son aquellos también conocidos de
“Inserción”, los cuales atraviesan la placa y se los suelda del otro lado de la
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 75
misma. Además las placas a utilizar son de doble lado, con recubrimiento de
cobre y sustrato tipo FR421, con “Solder Mask”, la cual es una laca como capa de
polímero que ofrece una protección permanente al revestimiento de las pistas de
cobre de la placa de circuito impreso (PCB) y evita la soldadura entre los
conductores, lo que crea cortocircuitos, y “Screen Laminado”, para agilitar la
ubicación de los componentes en las placas.
Los planos de los esquemáticos de las placas se encuentran en el Anexo
9, y los diseño PCB en el Anexo 10. Los parámetros de diseño que se siguieron
son los siguientes:
• El tamaño de la placa debe ser lo más reducida posible, con el fin de
abaratar costos. Tomando en cuenta la separación mínima entre pistas
dependiendo de la corriente que va a circular por cada una.
• Se busca que el largo de los trazos de las pistas sean lo mas corto
posible para evitar interferencia y ruido.
El costo de la elaboración de las placas depende de:
• Material con el que se las realice
• Simple lado o doble lado
• Screen Laminado
• Screen Serigráfico
• Solder Mask
21 Fibra de Vidrio
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 76
Si la placa tiene las siguientes características; recubrimiento de cobre y
sustrato FR4, doble lado, solder mask y screen laminado, el precio aproximado
por cm2 es de $0.25.
A continuación se muestran las placas terminadas:
Panel:
Figura. 3.30. Placa terminada del panel de control
Periféricos:
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 77
Figura. 3.31. Placa terminada de periféricos
Central:
Figura. 3.32. Placa terminada de la central del sistema
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 78
3.7. LISTA DE MATERIALES Y COSTOS REFERENCIALES DEL PROYECTO
3.7.1. Elementos empleados en la central
Descripción Cantidad ValorPrecio
Unitario Precio Total
74F244 1 - 0,50 0,50
Capacitor 1 1n 0,06 0,06
Capacitor 1 47n 0,06 0,06
Capacitor 1 22n 0,06 0,06
Capacitor 4 33p 0,10 0,40
Capacitor electrolítico 1 220u 0,05 0,05
Capacitor electrolítico 8 1uF 0,05 0,40
Cable DKU-5 de celular 1 - 10,00 10,00
Celular Nokia 3220 1 - 50,00 50,00
Chip Porta 1 - 8,00 8,00
Conector 2x7 2 - 1,00 2,00
Conector 6 pines 3 - 0,50 1,50
Conector 2x5 1 - 1,00 1,00
Cristal oscilador 2 20M 0,50 1,00
Diodo de propósito general 5 - 0,10 0,50
Diodo zener 1 3.3V 0,20 0,20
LM386 1 - 0,55 0,55
Max232 1 - 0,80 0,80
Optoacoplador 5 - 0,40 2,00
PIC 16F877A 1 - 8,90 8,90
PIC 18F442 1 - 10,20 10,20
Potenciómetro 1 10K 0,40 0,40
Relay 5V 3 - 0,95 2,85
Relay 5V doble contacto 2 - 1,25 2,50
Resistencia 1 100 0,04 0,04
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 79
Resistencia 4 3.9K 0,04 0,16
Resistencia 1 10 0,04 0,04
Resistencia 1 10M 0,04 0,04
Resistencia 5 220 0,04 0,20
Resistencia 16 1M 0,04 0,64
Resistencia 5 5K 0,04 0,20
Resistencia 6 1K 0,04 0,24
Sócales 16 pines 3 - 0,20 0,60
Sócalos 40 pines 3 - 0,30 0,90
Timer 555 1 - 0,30 0,30
Transistores NPN 5 - 0,30 1,50
Subtotal 109,75
Tabla. 3.9. Elementos para la central
3.7.2. Elementos empleados en el panel
Descripción Cantidad ValorPrecio
Unitario Precio Total
Capacitor 2 33p 0,10 0,20
Capacitor 1 22n 0,06 0,06
Capacitor electrolítico 6 1u 0,05 0,30
Conector 16 pines 1 - 0,80 0,80
Conector 6 pines 1 - 0,50 0,50
Conector 9 pines 1 - 0,60 0,60
Cristal Oscilador 1 20M 0,50 0,50
LCD 1 - 9,00 9,00
MAX 232 1 - 0,80 0,80
PIC 18F422 1 - 10,20 10,20
Capacitor electrolítico 1 10u 0,05 0,05
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 80
Potenciómetro 1 100K 0,50 0,50
Potenciómetro 1 5K 0,40 0,40
Resistencia 1 150K 0,04 0,04
Resistencia 2 3.9K 0,04 0,08
Teclado 1 - 10,50 10,50
Timer 555 1 - 0,30 0,30
Subtotal 34,83
Tabla. 3.10. Elementos para el panel
3.7.3. Elementos empleados en los periféricos
Descripción Cantidad ValorPrecio
Unitario Precio Total
Conector 6 pines 2 - 0,50 1,00
Diodo de propósito general 7 - 0,10 0,70
Conector 5x2 1 - 1,00 1,00
Optoacoplador 7 - 0,40 2,80
Relay 5V 7 - 0,95 6,65
Resistor 7 220 0,04 0,28
Transistor Darlington 1 - 1,20 1,20
Subtotal 13,91
Tabla. 3.11. Elementos de periféricos
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 81
3.7.4. Mano de obra
3.7.4.2. Instalación de tuberías
Descripción Nº días ValorPrecio diario
Precio total
Maestro mayor
(electricista) 1 - 23,00 23,00
Ayudante 1 - 17,00 17,00
Subtotal 40,00
Tabla. 3.12. Costo de la instalación de tuberías
3.7.4.3. Instalación de cableado
Descripción Nº días ValorPrecio diario
Precio total
Electricista 2 - 23,00 46,00
Subtotal 46,00
Tabla. 3.13. Costo de la instalación de cableado
3.7.4.4. Instalación de sensores de movimiento, contactos magnéticos y puesta en marcha
Descripción Nº días ValorPrecio diario
Precio total
Técnico 1 - 50,00 50,00
Subtotal 50,00
Tabla. 3.14. Costo de la instalación de sensores y puesta en marcha del sistema
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 82
3.7.5. Varios
Descripción Cantidad ValorPrecio
Unitario Precio Total
Cable 2 pares 140 - 0,25 35,00
Cable 20 AWG 200 - 0,20 40,00
Cable 4 pares trenzado 22 - 0,45 9,90
Cable UTP 5e 20 - 0,50 10,00
Contactos magnéticos 11 - 2,00 22,00
Sensores de movimiento 5 - 16,80 84,00
Elaboración de placas 1 - 64,36 64,36
Subtotal 265,26
Tabla. 3.15. Elementos varios
3.7.6. Dirección técnica
El costo de dirección técnica se calcula en base al total del proyecto,
siendo este el 40% del valor del mismo. Por lo tanto, a continuación se calcula el
costo del proyecto:
Subtotal central 109,75
Subtotal panel 34,83
Subtotal periféricos 13,91
Subtotal tuberías 40,00
Subtotal cableado 46,00
Subtotal puesta en
marcha 50,00
Subtotal varios 265,26
TOTAL 559,75
Tabla. 3.16. Costo del proyecto
CAPÍTULO III - DISEÑO DEL HARDWARE DEL SISTEMA 83
Ya teniendo el costo del proyecto, se calcula el valor de dirección técnica:
225)75.559%(40
)%(40
≈==
DT
DT
DT
VV
CostoTotalV
Dentro del costo de dirección técnica está incluida la ganancia.
Una vez expuestos todos los costos de los elementos, la mano de obra y la
ganancia del proyecto, se define que tiene un costo referencial de $785
(setecientos ochenta y cinco dólares) al mes de mayo del 2008.
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 84
CAPÍTULO IV
IMPLEMENTACIÓN DEL SISTEMA
4.1. PREINSTALACIÓN
Para la implementación del prototipo, se realizó un estudio previo detallado
de los planos de la vivienda, esto es para identificar los lugares óptimos para la
instalación de sensores.
Figura. 4.1. Ubicación de la central del sistema
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 85
Una vez identificados todos los elementos a ser instalados y el lugar de los
mismos, se realiza una preinstalación, la cual se la debe hacer cuando la vivienda
está en construcción y al momento de fundir las lozas, y comprende de los
siguientes pasos:
• Instalación de tuberías, tanto en la planta baja como en la planta alta,
estas son para pasar los cables necesarios para los distintos sensores,
sirena, panel de control, central del sistema y domoportero.
El diámetro de la tubería depende del número de cables que se van a
introducir en cada una1.
Figura. 4.2. Tuberías instaladas en planta baja
1 Planos de Tuberías ver Anexo 6
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 86
• Instalación de cajetines, para ubicar los sensores de movimiento, el
panel de control, la central, portero y citófonos.
Figura. 4.3. Cajetín para panel de control
• En la preinstalación, también se instalan los cables de bus, sensores y
sondas para evitar que una vez acabada la vivienda, estos no entren
por rotura de los tubos corrugados.
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 87
Figura. 4.4. Instalación de cableado para sensores de movimiento
Figura. 4.5. Cables de luminarias en la central
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 88
Esta preinstalación se la realiza con el propósito de obtener las siguientes
ventajas:
• Bajo coste.
• Mayor valor añadido a la vivienda.
• Innovación respecto a otras promociones Inmobiliarias.
• Vivienda abierta y con posibilidad de ampliación2.
Cuando la vivienda está prácticamente acabada en cuanto a obra se
refiere, comienza la fase de instalación. Lo que quiere decir que se procede a
realizar la conexión e instalación de los sensores de movimiento y contactos
magnéticos, panel de control, central del sistema, citófonos, portero y sirena.
4.2. INSTALACIÓN
En domótica, en cuanto a instalación, se refiere a la conexión física de
todos los elementos con la central del sistema. Esto es, la conexión de todos los
sensores, focos, panel de control, sirena y domoportero con la central.
Para esto se siguieron los siguientes pasos:
2 www.isde-ing.com
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 89
1.2.1. Sensores de movimiento
a. Para remover la cubierta frontal, destornillar el tornillo e insertar un
destornillador plano en la ranura entre la cara frontal y posterior
haciendo un poco de presión hasta que la cubierta frontal se
desenganche.
Figura. 4.6. Remover la cubierta frontal
b. Para remover la placa del sensor, destornille cuidadosamente todos los
tornillos que sostienen la placa.
c. Realice los huecos necesarios para una correcta conexión del
cableado.
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 90
A. Acceso de cableado
B. Usados para montar en
pared
C. Huecos para soporte en
esquina
D. Para soporte externo
Figura. 4.7. Distribución de huecos para cableado y soporte
d. Inserte el cable a través del hueco realizado anteriormente, y ubique la
base del detector de movimiento en el lugar deseado, sujetándolo con
el número de tornillos necesarios y el soporte adecuado.
e. Reubicar la placa del sensor.
f. Realizar la conexión de los cables tomando en cuenta el siguiente
diagrama:
Figura. 4.8. Conexiones del sensor de movimiento
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 91
Terminal 1 “-” (GND) Conectar a tierra de la central.
Cable Azul/Blanco.
Terminal 2 “+” (+ 12V) Conectar a una salida de voltaje
positiva de 8.2 V a 16 V.
Cable Azul.
Terminal 3 y 4 “Relay” Son las salidas a relé del sensor.
Conectar a las entradas de los
sensores en la central.
Cables Tomate/Blanco y Tomate.
Terminal 5 y 6 “Tamper” No conectar.
g. Colocar la cubierta frontal.
Figura. 4.9. Sensor de movimiento instalado
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 92
1.2.2. Contactos magnéticos
a. Es altamente recomendado ubicar el imán del contacto magnético en la
parte movible, sea este puerta o ventana, y el switch ubicarlo en el
marco de la misma. Como se puede observar en la siguiente figura:
Figura. 4.10. Ubicación típica de los contactos magnéticos
b. Limpiar todas las superficies donde se van a instalar los contactos
magnéticos, para que su adhesión sea firme y permanente.
c. La separación máxima entre el imán y el switch debe ser de 6mm.
d. Quitar los antiadhesivos del imán y del switch y proceder a colocarlos
en los lugares previstos.
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 93
Figura. 4.11. Diagrama de ubicación del contacto magnético
e. Realizar la conexión del cable.
Figura. 4.12. Contacto magnético instalado
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 94
1.2.3. Domoportero
1.2.3.1. Precauciones
Para instalar un portero automático en general con toda seguridad, es
fundamental seguir estas recomendaciones:
- Cortar el suministro eléctrico, antes de realizar cualquier operación,
desconectando el interruptor general.
- Respetar las normas de instalación.
- Utilizar productos y herramientas normalizados.
- No instalar el transformador en un lugar húmedo o en el exterior.
1.2.3.2. Montaje y conexiones del equipo
Placa de calle:
a. Empotrar la caja a la pared, y ajustarlo con tornillos para que quede fija.
Figura. 4.13. Caja empotrada
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 95
b. Localizar el cable y cortarlo, dejando un margen suficiente para
manipularlos con comodidad. Conectarlos según el esquema de
montaje.
Figura. 4.14. Conexión de la placa de calle
Figura. 4.15. Esquema de básico de montaje
Figura. 4.16. Conector de la placa de calle
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 96
Nº Conexión Color cable
1 5 Citófono Azul / Blanco
2 6 Citófono Azul
3 Parlante + Verde
4 Parlante - Verde / Blanco
5 Pulsador + Café
6 Pulsador - Café / Blanco
Tabla. 4.1. Conectores placa de calle
c. Colocar la placa de calle sobre la caja empotrada.
Figura. 4.17. Placa de calle empotrada
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 97
Citófono:
a. Marcar la ubicación de los tornillos de fijación del soporte del citófono.
Taladrar, colocar los tacos y fijar el soporte.
Figura. 4.18. Instalación del soporte del citófono
b. Cortar los cables, dejando un margen suficiente para manipularlos con
comodidad. Conectarlos según el esquema de montaje.
a. b.
Figura. 4.19.
1.3. Conector del citófono 1 1.4. Conector citófono 2
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 98
Nº Conexión Cable Color cable
1 1 Citófono B UTP2 Azul
2 2 Citófono B UTP2 Azul / Blanco
3 3 Citófono B UTP2 Café
4 4 Citófono B UTP2 Café / Blanco
5 5 Citófono B
1 Placa Calle
UTP2
UTP1
Tomate
Azul / Blanco
6 2 Placa Calle UTP1 Azul
7 7 Citófono B UTP2 Tomate / Blanco
M+ Micrófono + UTP2 Verde
M- Micrófono - UTP2 Verde / Blanco
Tabla. 4.2. Conectores citófono A
Nº Conexión Cable Color cable
1 1 Citófono A UTP2 Azul
2 2 Citófono A UTP2 Azul / Blanco
3 3 Citófono A UTP2 Café
4 4 Citófono A UTP2 Café / Blanco
5 5 Citófono A UTP2 Tomate
6 No conectar - -
7 7 Citófono A UTP2 Tomate / Blanco
Tabla. 4.3. Conectores citófono B
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 99
Figura. 4.20. Conexión citófono A
c. Colocar el citófono en el soporte.
Figura. 4.21. Colocar citófono en soporte
d. Conectar el equipo a la línea de tensión.
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 100
Figura. 4.22. Conexión portero
Figura. 4.23. Citófono colocado en soporte y conectado
4.2.4. Panel de control
Para la instalación del panel de control se deben seguir los siguientes
pasos:
a. Conectar el LCD y el teclado a la placa como muestran las figuras:
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 101
Figura. 4.24. Conexión del teclado al panel
Figura. 4.25. Conexión LCD al panel
Figura. 4.26. LCD y teclado conectados al panel
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 102
b. Conectar la placa del panel de control con la placa de la central del
sistema utilizando el cable UTP instalado con anterioridad, siguiendo el
orden que se muestra a continuación:
Nº Conexión Cable Color cable
Vcc Vcc Central UTP Azul
GND GND Central UTP Azul / Blanco
1 1 Central UTP Café
2 2 Central UTP Café / Blanco
3 3 Central UTP Tomate
Max Max Central UTP Tomate /
Blanco
Tabla. 4.4. Conectores panel de control
Figura. 4.27. Conexión cable de datos con central
Cable de Conexión entre Panel y Central
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 103
c. Montar el LCD y el teclado en la caja fabricada para este propósito, y
empotrarla en la pared como se muestra:
Figura. 4.28. Tapa de la caja del panel de control
Figura. 4.29. LCD y teclado montado en la tapa establecida
Figura. 4.30. Panel empotrado e instalado
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 104
4.2.5. Central del sistema
Para instalar la central del sistema se debe controlar que todo este
conectado correctamente, y desconectado todos los equipos que intervienen en
este proyecto del suministro eléctrico, antes de realizar cualquier operación.
A continuación se procede a realizar las conexiones de la siguiente
manera:
a. Conectar la placa de la central del sistema con la placa de periféricos.
Figura. 4.31. Conexión placa central y placa periféricos
b. Conectar el panel de control a la placa de la central.
Placa de la Central
Placa de Periféricos
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 105
Figura. 4.32. Conexión panel de control a la central
c. Conectar los periféricos, es decir; sensores de movimiento, contactos
magnéticos, sirena y domoportero.
Figura. 4.33. Conexión sensores de movimiento
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 106
Figura. 4.34. Conexión de contactos magnéticos
Figura. 4.35. Placa conectada
CAPÍTULO IV – IMPLEMENTACIÓN DEL SISTEMA 107
d. Conectar los cables de las luminarias.
Figura. 4.36. Conexión de luminarias
e. Conectar la fuente de alimentación a la placa de la central.
f. Conectar todos los equipos y la fuente de alimentación al suministro
eléctrico.
CAPÍTULO V – PRUEBAS AL SISTEMA Y RESULTADOS 108
CAPÍTULO V
PRUEBAS AL SISTEMA Y RESULTADOS
5.1. PRUEBAS AL SISTEMA
Luego de finalizada la instalación de elementos (sensores de movimiento,
contactos magnéticos, sirena, portero eléctrico), etapa de control y de potencia del
prototipo de control domótico, se procede a realizar las pruebas necesarias para
comprobar el funcionamiento correcto del mismo.
Para este fin se hicieron primero pruebas por separado de cada placa del
prototipo; del panel de control, de la central del sistema y de la etapa de potencia.
Panel de control:
• Comprobación del correcto funcionamiento del teclado y LCD.
• Verificación del envío correcto de datos del panel de control mediante la
conexión del mismo con la computadora y utilizando el programa Hyper
Terminal.
CAPÍTULO V – PRUEBAS AL SISTEMA Y RESULTADOS 109
Etapa de potencia:
• Medición de la corriente necesaria para la activación de los relés.
• Comprobación de la activación / desactivación de cada relé con la
activación / desactivación de cada optoacoplador.
Central de sistema: Para la verificación de la placa de la central del sistema se tiene que tomar
en cuenta que el óptimo funcionamiento de ésta depende de la conexión de todos
y cada uno de los componentes del sistema y de la interacción con las demás
placas. Por este motivo, las pruebas básicas que se hicieron a la placa de la
central del sistema son:
• Verificar la activación / desactivación de los distintos relés de la placa
mediante un programa de prueba que se hizo exclusivamente para este
propósito.
• Comprobar la comunicación con el MÓDEM.
• Probar la conectividad entre los dos PIC’s de la placa de la central.
Una vez efectuadas estas pruebas se procede a realizar la conexión de
todas las placas del prototipo de control domótico para la prueba final del sistema.
Para este fin se hicieron las siguientes pruebas:
• Verificar la interconexión entre la placa del panel de control y la placa
de la etapa de potencia.
CAPÍTULO V – PRUEBAS AL SISTEMA Y RESULTADOS 110
• Realizar pruebas de comunicación entre el panel de control y la central
del sistema:
o Activación / desactivación del sistema.
o Cambios de clave y teléfonos.
o Configuración de hora, luminarias y zonas.
• Comprobar la comunicación entre el MODEM y la central:
o Lectura / escritura de mensajes.
o Realización de llamadas.
• Comprobar el funcionamiento del domoportero.
• Verificar la activación / desactivación de sensores tanto de movimiento
como de puertas y ventanas.
5.2. RESULTADOS
Los resultados obtenidos en las pruebas realizadas se detallan a
continuación:
Panel de control:
• Comprobación del correcto funcionamiento del teclado y LCD.
- Realizar programa de prueba para la verificación en pantalla del
LCD si los datos son transmitidos correctamente.
CAPÍTULO V – PRUEBAS AL SISTEMA Y RESULTADOS 111
Figura. 5.1. Envío correcto de datos del PIC hacia el LCD
- Verificar el funcionamiento del teclado
Figura. 5.2. Funcionamiento de teclado
• Verificación del envío correcto de datos del panel de control mediante la
conexión del mismo con la computadora y utilizando el programa Hyper
Terminal.
CAPÍTULO V – PRUEBAS AL SISTEMA Y RESULTADOS 112
Figura. 5.3. Envío de datos del panel de control
Etapa de potencia:
• Medición de la corriente necesaria para la activación de los relés.
• Comprobación de la activación / desactivación de cada relé con la
activación / desactivación de cada optoacoplador.
Figura. 5.4. Activación / desactivación de reles
CAPÍTULO V – PRUEBAS AL SISTEMA Y RESULTADOS 113
Central de sistema:
• Verificar la activación / desactivación de los distintos relés de la placa
mediante un programa de prueba que se hizo exclusivamente para este
propósito.
• Comprobar la comunicación con el MÓDEM.
Figura. 5.5. Comunicación con el Módem mediante cable DKU-5
• Probar la conectividad entre los dos PIC’s de la placa de la central.
Figura. 5.6. Funcionamiento de reles e interconexión entre PIC’s con programa de prueba
CAPÍTULO V – PRUEBAS AL SISTEMA Y RESULTADOS 114
Pruebas generales:
• Verificar la interconexión entre la placa del panel de control y la placa
de la etapa de potencia.
Figura. 5.7. Funcionamiento correcto entre el panel y la central
• Realizar pruebas de comunicación entre el panel de control y la central
del sistema:
CAPÍTULO V – PRUEBAS AL SISTEMA Y RESULTADOS 115
o Activación / desactivación del sistema.
Figura. 5.8. Sistema activado
Figura. 5.9. Sistema armado
o Cambios de clave y teléfonos.
Figura. 5.10. Cambio de clave y teléfonos del sistema
CAPÍTULO V – PRUEBAS AL SISTEMA Y RESULTADOS 116
o Configuración de hora, luminarias y zonas.
Figura. 5.11. Configuración del simulador de presencia y sistema de seguridad
Figura. 5.12. Cambio de hora
• Comprobar la comunicación entre el MODEM y la central:
o Lectura / escritura de mensajes.
CAPÍTULO V – PRUEBAS AL SISTEMA Y RESULTADOS 117
A. B.
Figura. 5.13.a. Mensaje recibido
Figura. 5.14.b. Mensaje leído
o Realización de llamadas.
Figura. 5.15. Realización de llamadas
CAPÍTULO V – PRUEBAS AL SISTEMA Y RESULTADOS 118
• Comprobar el funcionamiento del domoportero.
Se realizó la prueba del domoportero, y el resultado mostró que
funciona correctamente, se timbró el portero estando el sistema
activado, y el mismo realizó las llamadas a los distintos números de
teléfono seleccionados previamente, se realizó la conexión de la
llamada y se escuchó desde ambos lados con un sonido adecuado.
También se realizó la prueba cuando el sistema no estaba activado, y el
resultado fue que no realizó ninguna llamado el sistema, lo que muestra
que también funcionó adecuadamente.
• Verificar la activación / desactivación de sensores tanto de movimiento
como de puertas y ventanas.
Se probaron uno por uno los sensores de movimiento y de puertas y
ventanas y se verificó el correcto funcionamiento de los mismos,
haciendo que el sistema activado envíe SMS y encienda la sirena, y si
el sistema no está activado no realiza ninguna acción.
CAPÍTULO VI – CONCLUSIONES Y RECOMENDACIONES 119
CAPÍTULO VI
CONCLUSIONES Y RECOMENDACIONES
6.1. CONCLUSIONES
• El uso de SMS hace que el sistema sea flexible y de confort para el
usuario, ya que no necesita acercarse al panel de control para realizar
una operación que el mismo necesite.
• La ubicación de los elementos del prototipo del sistema domótico en el
plano, antes de empezar la construcción, es de gran ayuda para
cablearlos adecuadamente entre las paredes y lozas de la vivienda, y
así evitar pasar cables visibles.
• La utilización de un LCD en el panel de control es de mayor comodidad
y facilidad para el usuario, ya que los tradicionales paneles de control
únicamente muestran mediante LED’s la configuración del sistema y
esto hace que sea confuso para el usuario.
• La realización de un diagrama de conexiones facilitó al desarrollo
óptimo del diseño, siendo de gran utilidad al momento de instalar todos
los elementos del sistema.
CAPÍTULO VI – CONCLUSIONES Y RECOMENDACIONES 120
• Una buena elaboración de la placa PCB, con fibra de vidrio, solder
mask y screen laminado; hace que la misma funcione correctamente, y
de esta manera evitar inconvenientes con pistas cortadas, vías sin
continuidad, entre otras.
• El Módem del teléfono Nokia 3220 utilizado en este proyecto, es el de
más fácil manejo con respecto a módems de otros teléfonos celulares,
ya que tiene comunicación serial, con comandos AT, los cuales son
sencillos de aprender y manejar.
• Se diseñó e implementó un prototipo de un simulador de control
domótico para una vivienda mediante un sistema de comunicación vía
SMS.
• La utilización de un microcontrolador para el manejo exclusivo de los
periféricos del sistema fue de gran ayuda, ya que de esta forma, se
pudo manejar a los sensores del proyecto con mayor facilidad, sin
recargar el trabajo al microcontrolador principal del prototipo.
• La elaboración de una placa por separado para la etapa de potencia, es
esencial para el correcto funcionamiento del proyecto, esto hace que las
corrientes elevadas que circulan por las pistas de la placa de potencia
no interfieran en el funcionamiento correcto del sistema en general.
CAPÍTULO VI – CONCLUSIONES Y RECOMENDACIONES 121
6.2. RECOMENDACIONES
• Realizar un sistema distribuido en lugar de un sistema centralizado,
esto reduce el cableado y por ende costos, ya que en un sistema
distribuido no se necesita que todos los componentes del sistema estén
cableados hacia la central. Además en un sistema distribuido no existe
un punto único de falla, lo que hace un sistema más confiable y rápido,
ya que no todo el procesamiento lo realiza un solo controlador.
• No olvidar de poner un reinicio en el sistema y en cada placa, para
evitar el tener que desconectar el sistema completo al momento de una
falla, prueba, o cambio de componentes en el mismo.
• Si se requiere que los sensores de puertas y ventanas no se vean, se
puede utilizar sensores empotrados, los cuales se insertan en el interior
del marco de la puerta o ventana, lo que hace que los mismos no se
observen.
• Tener cuidado al momento de instalador el domoportero, ya que la
conexión errónea del mismo genera interferencia y baja calidad de la
señal, lo que hace que la persona que timbra el portero se de cuenta de
que la persona que se comunica al otro lado de la línea no se encuentra
en la vivienda.
• Para la conexión de los distintos elementos con la central, es preferible
hacerlo con borneras en lugar de conectores, ya que con conectores se
tiene que realizar empalmes entre los conectores y los cables de los
CAPÍTULO VI – CONCLUSIONES Y RECOMENDACIONES 122
elementos, mientras que con borneras, solamente se le sujeta el cable
atornillándolo a la bornera.
• Para la alimentación e interconexión de las distintas placas, es
recomendable tener un conector separado para cada una, ya que de
esta forma se facilitan las pruebas y la conexión en sí de los diferentes
elementos del sistema.
• Es importante familiarizar al usuario con el sistema, para que no tenga
inconvenientes con el uso del mismo, y así evitar posibles daños que se
puedan generar por el mal manejo del sistema.
REFERENCIAS BIBLIOGRÁFICAS 123
REFERENCIAS BIBLIOGRÁFICAS
TEXTOS:
• ROMERO, Cristóbal, Domótica e Inmótica. Viviendas y Edificios Inteligentes, edición Ra-Ma, pág. 45 – 51.
• HUIDOBRO, J. Manuel, MILLÁN, Ramón, Domótica: Edificios Inteligentes, edición Cre. Copyright, pág. 17 – 21.
• MORENO, José, Instalaciones Automatizadas en Viviendas y Edificios,
edición Thomson Paraninfo S.A., pág. 47 – 49.
• ISDE Ing S.L., Guía de Prescripción: Diseño de Proyectos Domóticos,
Tercera edición, ISDE Ing S.L., Madrid 2005, pág. 1 – 25.
• HENTEL, Yanez Avalos Cia. Ltda.., Curso de Certificación Queso Technologies, pág. – 28.
• GORMAZ, Isidoro, Técnicas y Procesos en las Instalaciones Singulares en Edificios, edición Thomson, pág. 1 – 36, 45 – 74.
• MEYER, Gordon, Domótica: Los Mejores Trucos, primera edición,
Madrid 2005, pág. 23 – 26.
• JUNESTRAND, Stefan, Domótica y Hogar Digital, primera edición,
Madrid 2004, pág. 57 – 61.
REFERENCIAS BIBLIOGRÁFICAS 124
PÁGINAS WEB – INTERNET:
• https://upcommons.upc.edu/pfc/bitstream/2099.1/2859/2/42654-2.pdf,
Sistemas Domóticos
• es.wikipedia.org/wiki/ Dom%C3%B3tica, Domótica
• www.theslogan.es, Domótica, la Revolución del Bienestar.
• http://www.radioptica.com/Radio/telefonia_movil.asp, Telefonía móvil:
GSM, GPRS y UMTS
• www.isde-ing.com, Sistemas de Automatización de Viviendas DOMOLON
• http://www.casmar.es/accesos/Keyking/index_archivos/Page4042.htm,
Contactos Magnéticos
• http://www.homesecuritystore.com/ezStore123/DTProductList.asp?p=2_1_
1_1_0_0_45, Door Window Hardwired Contacts & Magnets
• http://usuarios.lycos.es/automatica/temas/tema2/pags/la_lc/la.HTM,
Sistemas en lazo abierto
• http://usuarios.lycos.es/automatica/temas/tema2/pags/la_lc/lc.htm,
Sistemas en lazo cerrado
• http://wk3.iespana.es/Serial_RS232.pdf, Ingeniería en Microcontroladores
• http://micropic.wordpress.com/2007/01/22/mplab/, MPLAB
REFERENCIAS BIBLIOGRÁFICAS 125
• http://domoticaviva.com/demo/despacho2.htm, Domoportero
• http://www.monografias.com/trabajos5/edin/edin.shtml, Edificios
Inteligentes y Casa Domóticas.
• http://www.aie.eu/files/PDF%20HBES%20&%20SH%20TF/PEA%200026-
%20AENOR-SPAIN.pdf, Especificación Aenor, Instalación de Sistemas
Domóticos para Viviendas
• http://www.coettc.com/varios/diada2005/documents/resums/Taula8/t8a.pdf,
Sistemas de Control de Edificios y Domótica.Entorno Legal y Normativo
• http://www.ffii.nova.es/puntoinfomcyt/Archivos/rbt/guias/guia_bt_51_feb07R
1.pdf, Instalaciones de Sistemas de Automatización, Gestión Técnica de la
Energía y Seguridad para Viviendas y Edificios.
• http://www.cedom.es/fitxers/documents/normativa/Informacion_sobre_el_S
C_205.pdf, Información Sobre Normalización en Domótica.
• http://legislaciones.iespana.es/domotica.htm, Seguridad de las Personas y
del Patrimonio.
ANEXOS 126
ANEXOS
ANEXOS 127
ANEXO 1
Plano del Sistema de Iluminación
ANEXOS 129
ANEXO 2
Plano de Sensores de Movimiento
ANEXOS 131
ANEXO 3
Plano de Contactos Magnéticos
ANEXOS 133
ANEXO 4
Plano de Ubicación de Elementos
ANEXOS 135
ANEXO 5
Plano de Zonas
ANEXOS 137
ANEXO 6
Plano de Tuberías
ANEXOS 139
ANEXO 7
Comandos AT Celular Nokia 3220
ANEXOS 140
Z Reset to Default Configuration This command restores the parameter values of one of the user profiles by recalling the respective settings from the memory. Settings that are not stored in a profile will be reset to their factory defaults. If the product does not have memory profiles (or has only one of them) it shall accept both the command Z0 and Z1 (and reset to factory defaults).
&F Restore Factory Settings This command restores all the factory settings including all the S-register settings but does not save them. Command parameters (if implemented) that are reset to their factory defaults are: S3, S4, S5, E, Q, V, X, &C, &D, +IFC, +ILRR, S25, &S, &Q, +CSCS, S0, S7, S8, S10, +DS, +DR, +ES, +EB, +ESR, +EFCS, +ER, +ETBM, S2, S12, +CSTA, +CMOD, +CBST, +CRLP, +CR, +CRC, +CSNS, +CHST, +CHSN, +CVHU, +CREG, +COPS (only <format>), +CLIP, +CLIR, +COLP, +CCUG, +CCWA (only <n>), +CUSD (only <n>), +CSSN, +CMEC, +CMER, +CPBS, +CMEE, +CSMS, +CPMS, +CMGF, +CSCA, +CSMP, +CSDH, +CSCB, +CNMI, +VGT, +VLS.
+CMGF Message Format This command tells the TA, which input and output format of messages to use. <mode> indicates the format of messages used with send, list, read and write commands and unsolicited result codes resulting from received messages. Mode can be either PDU mode (entire TP data units used) or text mode (headers and body of the messages given as separate parameters). Text mode uses the value of parameter <chset> specified by command Select TE Character Set +CSCS to inform the character set to be used in the message body in the TA-TE interface.
ANEXOS 141
+CNMI New Message Indications to TE This command selects the procedure how the receiving of new messages from the network is indicated to the DTE. For a detailed description of the syntax of indication responses, see Result Codes at page 75.
+CMGD Delete Message Execution command deletes message from preferred message storage <mem1> location <index>. If deleting fails, final result code +CMS ERROR: <err> is returned.
ANEXOS 142
+CPMS Preferred Message Storage This command selects memory storages to be used for reading/deleting <mem1>, writing/sending <mem2>, and receiving <mem3> short messages. Amount of used and available message locations in each memory is returned as response.
+CSCA Service Centre Address This command updates the short message service centre (SMSC) address, through which mobile originated short messages are transmitted (local TA SMSC address). SMSC address may also change when +CRES is actioned. If this value is not set (i.e. not restored from ME or set with this command during the current session) before using +CMGS, +CMGW (in case of SMS-SUBMIT or SMS-COMMAND) or +CMGC command, it must be automatically read from SIM/ME.
ANEXOS 143
+CMGS Send Message This command sends a message to the network. A message reference value <mr> is returned to the DTE on successful message delivery. Sending can be cancelled by using the <ESC> character. <ctrl-Z> must be used to indicate the ending of the message body. Values can be used to identify message upon unsolicited delivery status report result code. If sending fails in a network or an ME error, final result code +CMS ERROR: <err> is returned.
D Dial This command initiates a call. When a call is initiated, the command must contain the called party's number or a directory entry which contains the stored number. The ATD command can also be used for sending DTMF tones and for switching call mode from voice to data when an alternating call is active. When the product tries to reach a number and fails to establish a connection, further attempts will be delayed, i.e., successive attempts to dial the same number will be rejected for a short period of time, and the response DELAYED will be displayed. The delay period only lasts for a few seconds at first, however, if you continue to try to get the call through and fail, the delay will be prolonged for a few minutes. Finally, the called number will be included on a list of so-called blacklisted numbers. The response BLACKLISTED will be seen on the screen. The data software will not accept any new attempts to that number before you press any key on the cellular phone keypad. This user action erases the number from the list and enables you to call the number again. The purpose of blacklisting numbers is to conserve the network's resources. NOTE: +VTS command or comma modifier (e.g. "ATD,1234"; in this case the first comma do not cause a pause) can be used to send DTMF digits.
ANEXOS 144
+CPAS Phone Activity Status Returns the general status of ME. Supported <pas> values are product specific. If TA and ME are disconnected from each other <pas>=1 (ME unavailable) shall be reported. If TA and ME are in one physical entity, test command shall still report that <pas>=1 is available although it could not be reported ever.
ANEXOS 145
+CHUP Hang Up Call This command hangs up the call, also when an alternating mode call is active. This is an assured procedure to terminate an alternating mode call.
+CBC Battery Charge Returns ME battery charging status and charge level. In NMP products <bcs>=1 shall mean that battery is being charged.
ANEXOS 146
+CMGL List Messages This command returns messages with a status value from a preferred message storage selected with the AT+CPMS command (see page 37). <alpha> and CBM memory not supported by NMP products. In the case of some products, only <stat>=0 and 4 are applicable with older Nokia phone models.
ANEXOS 147
+CMGR Read Message This command returns a message with a location value <index> from a preferred message storage selected with the AT+CPMS command. If status of the message is 'received unread', status in the storage changes to 'received read'. If reading fails, final result code +CMS ERROR: <err> is returned. <alpha> and CBM memory are not supported by NMP products.
ANEXOS 148
ANEXO 8
Software PICKit 2
ANEXOS 149
MANUAL DE USUARIO DE PICKIT 2 1. Instalación del Hardware de PICKit 2
• Conecte un terminal del cable USB en el conector USB del PICKit 2. Conecte el lado opuesto del cable al Puerto USB de su computadora.
• Conecte el PICKit 2 al protoboard, previamente armado para la
programación de PIC’s con un conector de 6 pines. Como muestra la siguiente figura:
Al momento de conectar el PICKit 2 al puerto USB, es recomendable que el mismo se encuentre desconectado del protoboard, de igual forma al momento de encender o reiniciar la computadora.
2. Instalación de la Aplicación del Programa de PICKit 2
Inserte el CD de instalación del PICKit 2 en la unidad de reproducción de CD’s. En pocos momentos, una pantalla de presentación aparecerá. Siga las direcciones en la pantalla para la instalación de la aplicación del programa de PICKit 2. Si la pantalla de presentación no aparece, explore el directorio del CD y abra el archivo PICkit StarterKit Welcome.htm file. Una vez instalado, inicie el programa de PICKit 2 seleccionando Start>Procirams>Microchiy>PICkit 2. La interface del programa aparece como se muestra en la siguiente figura:
ANEXOS 150
3. Conexión con el Dispositivo
El PICKit 2 es capaz de programar una gran variedad de microcontroladores PIC’s y dispositivos EEPROM. Cuando el programa de PICKit 2 es abierto por primera vez, éste reconocerá el dispositivo conectado, como se muestra en la siguiente figura:
ANEXOS 151
Si el dispositivo en la placa no es identificado correctamente, verifique la alimentación de la tarjeta y las conexiones del dispositivo antes de seleccionar manualmente el dispositivo. En cualquier momento, la familia del dispositivo puede ser seleccionada para buscar conectividad con algún dispositivo de esa familia haciendo clic en “Device Family” del menú como se muestra en la siguiente figura:
4. Selección de la Alimentación de la Tarjeta
PICKit 2 puede brindar la alimentación necesaria a la tarjeta, o la misma puede ser alimentada por una fuente externa.
4.1 Alimentación desde PICKit 2
Si usted va a alimentar la tarjeta desde PICKit 2, no conecte ninguna fuente de alimentación a la misma, o PICkit 2 la detectará y no le dará a usted la opción de usar la alimentación de PICKit 2. Para una tarjeta no conectada a una fuente de alimentación externa, se observará las opciones mostradas en la siguiente figura:
ANEXOS 152
Para habilitar la alimentación al dispositivo de la tarjeta, seleccione “On” en el recuadro respectivo. La configuración de fábrica es “Off”. Nota: Si la alimentación de la tarjeta no es detectada, el PICKit 2 siempre brindará alimentación a la tarjeta durante la alimentación sin tomar en cuenta la selección “On” del recuadro. El voltaje brindado a la tarjeta puede ser ajustado antes o después de habilitar la alimentación ajustando el VDD del cuadro de voltaje del PICKit 2. Si se detecta una corriente muy pequeña o muy grande en el VDD del programador, usted recibirá un error y el VDD se deshabilitará automáticamente, como se muestra en la siguiente figura:
Precaución: La corriente máxima del puerto USB es de 100mA. Si la corriente de la tarjeta sumada con la corriente de PICKit 2 excede esta corriente límite, el puerto USB se desactiva. La tarjeta puede ser alimentada externamente si se requiere mayor corriente. Para evitar errores por altas cargas de corriente, es recomendable mantener el consumo de la tarjeta menor a 25mA. Grandes capacitancias de VDD se pueden evitar mientras menor sea el tiempo de crecimiento del VDD. El tiempo de crecimiento permitido debe ser de 500ts o menor.
4.2 Alimentación de la Tarjeta con Fuente Externa
La tarjeta tambien puede ser alimentada por una fuente externa. De fábrica, el PICKit 2 detectará automáticamente una fuente externa. El encabezado de “VDD PICKit 2” será cambiado por “VDD Tarjet”, el recuadro “On” será reemplazado por uno denominado “Check”, y el voltaje VDD detectado será mostrado según la siguiente figura:
Cuadro de Voltaje
ANEXOS 153
5. Importación de un Archivo .HEX Para importar un programa compilado (archivo .hex) al dispositivo conectado en la tarjeta, seleccione FiIe>Import HEX como se muestra en la siguiente figura:
Busque el archivo .hex deseado, selecciónelo y hago click en Open. El código es mostrado en “Program Memory” y en “EEPROM Data”, como se puede observar en la siguiente figura:
ANEXOS 154
El programador de PICKit 2 le advertirá si el archivo .hex seleccionado no contiene ninguna palabra de configuración. También se le advertirá si el archivo .hex seleccionado es mas grande que la memoria del dispositivo. El programa que exceda este límite no será importado.
6. Grabar el Programa en el Dispositivo Después de seleccionar el modelo del dispositivo e importar el archivo .hex, se puede grabar el dispositivo haciendo clic en Write, como se muestra en la siguiente figura. El dispositivo será borrado y grabado con el archivo .hex previamente importado.
El estado del la operación de escritura se muestra en la barra de estado ubicada debajo de la ventana de la Configuración del Dispositivo. Si la escritura es exitosa, la barra de estado se torna verde y muestra “Programming Succesful” como muestra la figura:
Si la grabación falla, la barra de estado se torna roja y muestra “Programming Failed”, como muestra la figura. Este error indica que el ha habido un error durante la grabación. Si se muestra este error, trate de grabar nuevamente el dispositivo.
Si existen otros problemas durante la grabación del dispositivo, se mostrarán advertencias y la barra de estado se torna amarilla como se muestra a continuación:
ANEXOS 155
7. Verificar el Dispositivo La función Verify, verifica que el programa en la memoria del dispositivo coincida con el archivo .hex importado en el programa del PICKit 2. Compara todas las áreas de memoria incluyendo memoria de programa, memoria EEPROM, ID’s y bits de configuración. Para verificar el código, importe el archivo .hex y haga clic en Verify, como muestra la figura a continuación.
Al realizar una operación de escritura “Write” automáticamente se realiza la verificación si es seleccionado Programmer> Verify on Write Si el código tanto en el dispositivo como en PICKit 2 es el mismo, la barra de estado se vuelve de color verde y muestra “Device Verified”, caso contrario la barra se vuelve de color rojo y muestra donde ha ocurrido el error: “Error in Program Memory, Data EEPROM Memory o Configuration Bits”.
8. Lectura de la Memoria del Dispositivo Para visualizar el código escrito en el dispositivo, haga clic sobre el botón Read:
El código se muestra en las ventanas de Program Memory y EEPROM Data. Si se muestra todo cero, es posible que el programa en el dispositivo tenga protección de código.
9. Protección de Código en el Dispositivo Las funciones de protección de código y datos habilitan las características de protección de lectura del dispositivo. Para proteger el código de memoria del programa, siga los siguientes pasos:
• Importe el archivo .hex. • Selecciones del menú Tools>Enable Code Protectas, mostrado en la
figura. • Haga clic en el botón Write.
ANEXOS 156
Dispositivos que tienen memoria EEPROM pueden protegerla seleccionado Tools>Enable
Nota: Si el dispositivo es leído después de que haya sido protegido, se mostrará todas las regiones de memoria protegida como cero.
10. Borrar el Dispositivo y Función “Blank Checking” La función “Erase” borra completamente el dispositivo, tanto la memoria de programa, la memoria EEPROM, ID’s y bits de configuración, sin tomar en cuenta si están seleccionadas las opciones de protección de código y de memoria. Sin embargo, esta función no es comúnmente utilizada, ya que la función Write borra el dispositivo antes de realizar una programación en el mismo. Para borrar el dispositivo haga clic en el botón Erase:
La función “Blank Check” leerá todo el dispositivo para determinar si la memoria de programa, memoria EEPROM, ID’s y bits de configuración están borradas. Para realizar esta función haga clic en el botón “Blank Check”.
11. Procedimientos Automáticos de Lectura / Escritura
El programa de PICKit 2 tiene dos botones para realizar múltiples funciones automáticas.
ANEXOS 157
11.1 Botón Automático de Importación del Archivo .hex y Escritura del Dispositivo
Esta característica permite al programa PICKit 2 automáticamente importar un archivo .hex y escribirlo en el dispositivo conectado cuando se cargue un archivo .hex. Para utilizar esta opción, haga clic en el botón “Auto Import Hex – Write Device”.
11.2 Botón Automático de Lectura del Dispositivo y Exportación a un
Archivo .hex Cuando se haga clic en este botón, se leerá el dispositivo y se abrirá automáticamente un diálogo de exportación de archivos .hex.
ANEXOS 158
ANEXO 9
Esquemáticos de Placas
ANEXOS 159
Esquemático Placa – Panel de Control
ANEXOS 160
RA0
2
RA1
3
RA2
4
RA3
5
RA4/
T0CK
I6
RA5/
SS7
RB0/
INT
33
RB1
34
RB2
35
RB3
36
RB4
37
RB5
38
RB6
39
RB7
40
RC0/
T0O
SI/T
1CK
I15
RC1/
T0O
SO16
RC2/
CCP1
17
RC3/
SCK
/SCL
18
RC4/
SDI/S
DA
23
RC5/
SDO
24
RC6
25
RC7
26
RD0/
PSP0
19
RD1/
PSP1
20
RD2/
PSP2
21
RD3/
PSP3
22
RD4/
PSP4
27
RD5/
PSP5
28
RD6/
PSP6
29
RD7/
PSP7
30
RE0/
RD8
RE1/
WR
9
RE2/
CS10
VSS
12
VSS
31
MCL
R/V
PP1
OSC
1/CL
KI
13
OSC
2/CL
KO
14
VD
D11
VD
D32
PIC1
8F44
2
3.9K 1/
2W3.
9K1/
2W
12
20M
hz
1u 16V33
p 16V
33p
16V
+5
+5
123456789
10111213141516
LCD
123456789
TECL
AD
O
C1+
1V
DD
2
C1-
3
C2+
4
C2-
5
VEE
6
T2O
UT
7
R2IN
8R2
OU
T9
T2IN
10T1
IN11
R1O
UT
12R1
IN13
T1O
UT
14
GN
D15
VCC
16
MA
X23
2ACP
E
+51u
F50
V1u
F
50V
1uF
50V
1uF
50V
1uF
50V
+5Po
t 5K
+5
1 2 3 4 5 6
Cone
ctor
A
TRIG
2
OU
T3
RST
4
CVO
LT5
THR
6D
ISC
7
VCC
8
GN
D1
LM55
5
+515
0K1/
2W
+510
u
16V 22
0n
16V
Pot_
100K
ANEXOS 161
Esquemático Placa – Central del Sistema
RA02
RA13
RA24
RA35
RA4/T0CKI6
RA5/SS7
RB0/INT33
RB134
RB235
RB336
RB437
RB538
RB639
RB740
RC0/T0OSI/T1CKI 15
RC1/T0OSO 16
RC2/CCP1 17
RC3/SCK/SCL 18
RC4/SDI/SDA 23
RC5/SDO 24
RC6 25
RC7 26
RD0/PSP0 19
RD1/PSP1 20
RD2/PSP2 21
RD3/PSP3 22
RD4/PSP4 27
RD5/PSP5 28
RD6/PSP6 29
RD7/PSP7 30
RE0/RD 8
RE1/WR 9
RE2/CS 10VSS12
VSS31
MCLR/VPP1 OSC1/CLKI13
OSC2/CLKO 14
VDD 11
VDD 32
PIC18F442
3.9K
100
1K
3.9K
XTL
1u
33p
33p
OE1 1
A1 2
A2 4
A3 6
A4 8Y412 Y314 Y216 Y118
Y53
Y65
Y77
Y89
GND 10
A8 11A7 13A6 15A5 17
OE2 19VCC20Buffer
74F244PC3.3
+5
+5
+5
+5
10
220u
47n
VS 6
GND4 GAIN 8
3
25
BYP 7
GAIN 1
LM386
TRIG 2
OUT3
RST 4
CVOLT 5
THR 6DISC7
VCC8
GND 1
LM555
+5 22n1u
10M+5
11 2 2
3 3
44 5 5
6 6
77 8 8
11 2 2
3 3
44 5 5
6 6
77 8 8
220
220
220
1K
2N3904
+5
55 4 4
3 3
11 2 2+5
1K
2N3904
+5
+5
1K
2N3904
+5
+5
C1+1 VDD 2
C1-3
C2+4
C2-5
VEE 6
T2OUT 7
R2IN 8R2OUT9
T2IN10 T1IN11
R1OUT12 R1IN 13
T1OUT 14
GND15
VCC 16
MAX232
+5
1uF
1uF
1uF
1uF
1uF
5K
5K
5K
+5
+5
+5
+5
RA02
RA13
RA24
RA35
RA4/T0CKI6
RA5/SS7
RB0/INT33
RB134
RB235
RB336
RB437
RB538
RB639
RB740
RC0/T0OSI/T1CKI 15
RC1/T0OSO 16
RC2/CCP1 17
RC3/SCK/SCL 18
RC4/SDI/SDA 23
RC5/SDO 24
RC6 25
RC7 26
RD0/PSP0 19
RD1/PSP1 20
RD2/PSP2 21
RD3/PSP3 22
RD4/PSP4 27
RD5/PSP5 28
RD6/PSP6 29
RD7/PSP7 30
RE0/RD 8
RE1/WR 9
RE2/CS 10VSS12
VSS31
MCLR/VPP1 OSC1/CLKI13
OSC2/CLKO 14
VDD 11
VDD 32
PIC2
3.9K3.9K
12
XTL
1u
33p
33p
+5
+5
+12
+5
220
1K
2N3904
+5
+5
5K
+555 3 3
4 4
11 2 2
+12
+12
1 102 93 84 75 6
SEN_MOV
1 89
41011
5 1213
7 146
32
Vent_Puer+5
+5
+51n
1 1413
41211
5 109
7 86
32
VARIOS
10K
123456
A
123456
B
123456
Celular
Opto1
Opto
Opto2
Opto
Opto3
Opto
Opto4
Opto
220
1K
2N3904
+5
+5
5K
+5
+12
Opto5
Opto
55 4 4
3 3
11 2 2
ANEXOS 163
Esquemático Placa – Potencia
K 10
IN66
OUT7 12IN77 OUT6 13OUT5 14
IN33
OUT4 15
IN11
OUT3 16IN22
OUT8 11
GND9
IN44
IN88
IN55
OUT1 18
OUT2 17
ULN2803A
2201/2W
2201/2W
2201/2W
2201/2W
2201/2W
2201/2W
2201/2W
+5
+5
+5
+5
+5
+5
+55K
1/2W
5K1/2W
5K1/2W
5K1/2W
5K1/2W
5K1/2W
5K1/2W
+5
+5
+5
+5
+5
+5
+5
+5 FASE1234567
FASE_FOCOS
1N4005
3
4
5
6
7
1N4005
1N4005
1N4005
1N4005
1N4005
1N4005
123456
ConectorA
123456
ConectorB
Opto1
PC817
Opto2
PC817
Opto3
PC817
Opto4
PC817
Opto5
PC817
Opto6
PC817
Opto7
PC817
ANEXOS 165
ANEXO 10
Diseño de Placas PCB
ANEXOS 166
Central del Sistema
ANEXOS 167
Assembly Drawings
Composite Drawing
ANEXOS 168
Capa Superior
Capa Inferior
ANEXOS 169
Potencia
ANEXOS 170
Assembly Drawings
Composite Drawing
ANEXOS 171
Capa Superior
Capa Inferior
ANEXOS 172
Panel de Control
ANEXOS 173
Assembly Drawings
Composite Drawing
ANEXOS 174
Capa Superior
Capa Inferior
ANEXOS 175
ANEXO 11
Programa de la Central del Sistema
ANEXOS 176
'**************************************************************** '* Name : TELEFONO 3220.BAS recibe mensaje y domoportero * '* Author : KARLA ACOSTA * '* Notice : Copyright (c) 2008 2008-01 * '* : All Rights Reserved * '* Date : 25/01/2008 * '* Version : 1.0 * '**************************************************************** 'DEFINE PARA SERIAL DEFINE OSC 20 ' Oscillator DEFINE HSER_BAUD 2400 ' Hser baud rate DEFINE HSER_SPBRG 129 ' Hser spbrg init DEFINE HSER_RCSTA 90h ' Set receive register to receiver enabled DEFINE HSER_TXSTA 20h ' Set transmit register to transmitter enabled '********************************************************************* 'INICIALIZACIONES DE REGISTROS ADCON1 = %00000110 TRISE.4 = 0 'Configuración de PUERTOS SPBRG = 129 ' Set baud rate 2400MHZ con un osc 20MHz con'BRGH = 0 TRISA = %00010000 TRISB = %11110111 ' Set PORTB (3, 4, 5 y 6) in TRISC = %00000010 ' Set TX (PORTB.0 ) to in TRISD = %00100000 TRISE = %00000000 RCSTA = %10010000 ' USART, Enable continuous receive,8 bits TXSTA = %00100010 ' USART,Transmision de 8bits, ' Transmit enable, BRGH low speed, asincrono, ' TSR vacio 'CONSTANTES SERIAL VEL CON 396 ' Velocidad para Recepción SERIN2 ESPERA CON 500 ' Tiempo entre cada instrucción DEMORA CON 500 ' Tiempo para leer el mensaje 'Variables Sistema SIRENA VAR PORTD.3 ' sEÑAL PARA ACTIVAR LA SIRENA DESACT VAR PORTC.5 ' sEÑAL QUE INDICA QUE ESTA DESACTIVADO EL SISTEMA A_SIRENA VAR WORD ' Señal auxiliar de SIRENA AUXCLAVE VAR BYTE ' Señal que me indica si leer o no de la memoria EEPROM PUERTOIN VAR PORTB.2 ' Puerto para recibir los datos del celular 'SEÑALES PARA INDICAR QUE SE HA ACTIVADO ALGUNA ZONA CZONA1 VAR WORD ' Señal para mandar un solo SMS a la vez CZONA2 VAR WORD ' Señal para mandar un solo SMS a la vez CZONA3 VAR WORD ' Señal para mandar un solo SMS a la vez
ANEXOS 177
CZONA4 VAR WORD ' Señal para mandar un solo SMS a la vez A_Z1 VAR BYTE ' Señal para desactivar zonas A_Z2 VAR BYTE ' Señal para desactivar zonas A_Z3 VAR BYTE ' Señal para desactivar zonas A_Z4 VAR BYTE ' Señal para desactivar zonas N_Z VAR BYTE[1] F_Z VAR BYTE[1] 'SEÑALES DOMOPORTERO TIEMPO VAR WORD ' Tiempo para que contesten el telf TERMINAR VAR WORD ' Espero que cuelguen DOMO VAR PORTD.5 ' Señal que indica que alguien timbró el portero PARLANTE VAR PORTE.0 ' Señal que activa el parlante del domo MIC VAR PORTE.1 ' Señal que activa el microfono del domo 'SEÑALES DE COMUNICACION CON PANEL VPANEL VAR BYTE[1] ' Señal que llega desde el panel (A-D-C) RECIBIR_DAT VAR PORTD.0 ' Señal para que el panel envie datos S_ACTIV VAR PORTD.1 ' Señal para informar al panel si esta o no activado COM_CLAVE VAR PORTD.2 ' Señal para comparar las claves 'SEÑALES CON PERIFERICOS ACTIV VAR PORTC.4 ' sEÑAL QUE INDICA QUE ESTA ACTIVADO EL SISTEMA SIMULADOR VAR PORTD.6 ' Señal para indicar que puede empezar el simulador Z1 VAR PORTB.4 ' Señal de la zona Z2 VAR PORTB.5 ' Señal de la zona Z3 VAR PORTB.6 ' Señal de la zona Z4 VAR PORTB.7 ' Señal de la zona ENVIAR_DAT VAR PORTB.0 ' Señal para poder enviar datos 'SEÑALES PARA FOCOS N_F VAR BYTE[1] F_F VAR BYTE[1] 'SEÑALES PARA CAMBIAR LA CLAVE DEL SISTEMA CLAVE1 VAR BYTE[1] ' Clave del sistema CLAVE2 VAR BYTE[1] ' Clave del sistema CLAVE3 VAR BYTE[1] ' Clave del sistema CLAVE4 VAR BYTE[1] ' Clave del sistema CCLAVE1 VAR BYTE[1] ' Clave desde celular CCLAVE2 VAR BYTE[1] ' Clave desde celular CCLAVE3 VAR BYTE[1] ' Clave desde celular CCLAVE4 VAR BYTE[1] ' Clave desde celular USU1 VAR BYTE[1] ' Clave del usuario USU2 VAR BYTE[1] ' Clave del usuario USU3 VAR BYTE[1] ' Clave del usuario USU4 VAR BYTE[1] ' Clave del usuario 'SEÑALES PARA LA HORA HORDEC VAR BYTE[1] HORUNI VAR BYTE[1] MINDEC VAR BYTE[1] MINUNI VAR BYTE[1]
ANEXOS 178
'SEÑALES PARA CARGAR BATERIA CARGADOR VAR BYTE ' Verificar si esta o no conectado el cargador BATERIA VAR BYTE ' Nivel de Bateria CHANCE VAR WORD ' Señal para comprobar bateria CARGAR VAR PORTE.2 ' Señal para cargar el telefono 'SEÑALES PARA CAMBIAR LOS NUMEROS DE TELEFONO TELEFONO1A VAR BYTE[3] ' Numero de telefono para enviar mensajes y marcar domoportero TELEFONO1B VAR BYTE[3] ' Numero de telefono para enviar mensajes y marcar domoportero TELEFONO1C VAR BYTE[3] ' Numero de telefono para enviar mensajes y marcar domoportero TELEFONO2A VAR BYTE[3] ' Numero de telefono para marcar domoportero TELEFONO2B VAR BYTE[3] ' Numero de telefono para enviar mensajes y marcar domoportero TELEFONO2C VAR BYTE[3] ' Numero de telefono para enviar mensajes y marcar domoportero TELEFONO3A VAR BYTE[3] ' Numero de telefono para enviar mensajes y marcar domoportero TELEFONO3B VAR BYTE[3] ' Numero de telefono para enviar mensajes y marcar domoportero TELEFONO3C VAR BYTE[3] ' Numero de telefono para enviar mensajes y marcar domoportero TELF VAR BYTE ' Escoge el telefonop a cambiar TELFA VAR BYTE[3] ' Numero recibido desde el panel TELFB VAR BYTE[3] ' Numero recibido desde el panel TELFC VAR BYTE[3] ' Numero recibido desde el panel 'CONFIGURACION INTERRUPCIONES GIE VAR INTCON.7 PEIE VAR INTCON.6 RBIE VAR INTCON.3 RBIF VAR INTCON.0 GIE = 1 PEIE = 1 RBIE = 1 RBIF = 0 'CONFIGURACIONES INICIALES PORTA = $00 ' Encerar las salidas del puerto A PORTC = $00 ' Encerar las salidas del puerto C A_Z1 = 1 A_Z2 = 1 A_Z3 = 1 A_Z4 = 1 cargar = 1 CHANCE = 0 CZONA1 = 0 ' Encerar Señal de SMS CZONA2 = 0 ' Encerar Señal de SMS CZONA3 = 0 ' Encerar Señal de SMS CZONA4 = 0 ' Encerar Señal de SMS s_activ = 0
ANEXOS 179
PARLANTE = 1 ' Señal para activar parlante portero MIC = 1 ' Señal para activar mic portero DOMO = 0 ' Encerar Señal de Portero Eléctrico TERMINAR = 1 ' Setear para domoportero COM_CLAVE = 0 ' Señal para comparar las claves ACTIV = 0 ' sEÑAL QUE INDICA QUE ESTA ACTIVADO EL SISTEMA DESACT = 1 RECIBIR_DAT= 0 ' Señal para que el panel envie datos '************************************************************** 'Inicialización Modem pause 10000 PAUSE espera hserout ["ATZ&F",13,10] ' REINICIO DEL FONO PAUSE ESPERA hserout ["AT+CMGF=1",13,10] ' MODO TEXTO PAUSE ESPERA HSEROUT ["AT+CNMI=0,0",13,10] ' MODO RECONOCIMIENTO DEL MENSAJE PAUSE ESPERA HSEROUT ["AT+CMGD=1,4",13,10] ' Borra todos los Mensajes PAUSE ESPERA ON INTERRUPT GOTO INTERRUPCION GOTO INICIO DISABLE INTERRUPCION: DISABLE IF ACTIV == 1 THEN IF RBIF == 1 THEN RBIF = 0 IF (Z1 == 1) AND (A_Z1 == 1) AND (CZONA1 == 1) THEN GOSUB ZONA1 IF (Z2 == 1) AND (A_Z2 == 1) AND (CZONA2 == 1) THEN GOSUB ZONA2 IF (Z3 == 1) AND (A_Z3 == 1) AND (CZONA3 == 1) THEN GOSUB ZONA3 IF (Z4 == 1) AND (A_Z4 == 1) AND (CZONA4 == 1) THEN GOSUB ZONA4 ELSE ENDIF ELSE ENDIF RESUME ENABLE INICIO: READ $0,AUXCLAVE SEROUT2 PORTB.3,VEL,["AUXCLAVE: ",DEC AUXCLAVE,13,10] IF AUXCLAVE < $30 OR AUXCLAVE > $39 THEN SEROUT2 PORTB.2,VEL,["ENTRO AL IF",13,10] CLAVE1 = "0" CLAVE2 = "0" CLAVE3 = "0" CLAVE4 = "0"
ANEXOS 180
TELEFONO1A[1] = "8" TELEFONO1A[2] = "6" TELEFONO1A[3] = "4" TELEFONO1B[1] = "6" TELEFONO1B[2] = "7" TELEFONO1B[3] = "5" TELEFONO1C[1] = "6" TELEFONO1C[2] = "2" TELEFONO1C[3] = "2" TELEFONO2A[1] = "9" TELEFONO2A[2] = "6" TELEFONO2A[3] = "0" TELEFONO2B[1] = "1" TELEFONO2B[2] = "9" TELEFONO2B[3] = "1" TELEFONO2C[1] = "4" TELEFONO2C[2] = "4" TELEFONO2C[3] = "4" TELEFONO3A[1] = "2" TELEFONO3A[2] = "2" TELEFONO3A[3] = "5" TELEFONO3B[1] = "9" TELEFONO3B[2] = "3" TELEFONO3B[3] = "6" TELEFONO3C[1] = "0" TELEFONO3C[2] = "3" TELEFONO3C[3] = "3" ELSE SEROUT2 PORTB.3,VEL,["ENTRO AL ELSE",13,10] READ $00,CLAVE1 : READ $01,CLAVE2 : READ $02,CLAVE3 : READ $03,CLAVE4 GOSUB LEER ENDIF 'ENVIO SERIAL SEROUT2 PORTB.3,VEL,["CLAVE: ",DEC CLAVE1,DEC CLAVE2, DEC CLAVE3,DEC CLAVE4,13,10] hserout ["AT+CMGF=1",13,10] ' MODO TEXTO PAUSE ESPERA HSEROUT ["AT+CPMS=",34,"SM",34,",",34,"SM",34,13,10] ' GRABAR MENSAJES EN MEMORIA SIM PAUSE ESPERA HSEROUT ["AT+CNMI=2,1",13,10] ' MODO RECONOCIMIENTO DEL MENSAJE "+CMTI" PAUSE ESPERA WRITE $0,CLAVE1 : WRITE $1,CLAVE2 : WRITE $2,CLAVE3 : WRITE $3,CLAVE4 GOSUB ESCRIBIR SENSAR: RECIBIR_DAT = 0 COM_CLAVE = 0 IF (A_SIRENA <= 300) AND (SIRENA == 1) THEN A_SIRENA = A_SIRENA + 1 ELSE SIRENA = 0 A_SIRENA = 0 ENDIF
ANEXOS 181
IF CHANCE == 2400 then hserout ["AT+CBC",13,10] ' VERIFICAR BATERIA SERIN2 PUERTOIN, VEL, DEMORA, PASO2, [WAIT ("+CBC: "), STR CARGADOR\1, SKIP 1, DEC BATERIA]' espero a detectar OK IF CARGADOR == 48 && BATERIA <= 50 THEN CARGAR = 1 IF CARGADOR == 49 && BATERIA >= 92 THEN CARGAR = 0 CHANCE = 0 else CHANCE = CHANCE + 1 endif PASO2: if ACTIV == 1 then IF DOMO == 1 THEN ' Alguien Timbró el Portero DOMO = 0 gosub portero ELSE ENDIF ELSE ENDIF RECIBIR: SERIN2 PUERTOIN, VEL, 500, PASO3, [WAIT ("CMTI")] ' espero a detectar un SMS GOSUB MENSAJES PASO3: RECIBIR_DAT = 1 serin2 PORTB.1, VEL, 80, SENSAR, [WAIT ("1"), str vpanel\1, STR TELF\1, STR TELFA\3, STR TELFB\3, STR TELFC\3] ' ESPERO AQUE EL PANEL ENVIE DATOS RECIBIR_DAT = 0 GOSUB PANEL GOTO sensar end '*****AQUI SE ACABA EL PROGRAMA******************************** '************************************************************** '***********SUBRUTINAS*********** MENSAJES: hserout ["AT+CMGL=",34,"REC UNREAD",34,13,10]' PARA Q NO APAREZCA COMO SIN LEER PAUSE ESPERA HSEROUT ["AT+CMGR=1",13,10] ' LEER LOS SMS SERIN2 PUERTOIN, VEL, DEMORA, MENSAJE, [WAIT ("ACTIVAR"), SKIP 1, STR USU1\1, STR USU2\1, STR USU3\1, STR USU4\1]' espero a detectar OK if clave1==usu1 && clave2==usu2 && clave3==usu3 && clave4==usu4 THEN ACTIV=1 DESACT=0 CZONA1=1 CZONA2=1 CZONA3=1 CZONA4=1 s_activ=1 ELSE ENDIF GOTO BORRADO
ANEXOS 182
MENSAJE: HSEROUT ["AT+CMGR=1",13,10] ' LEER LOS SMS SERIN2 PUERTOIN, VEL, DEMORA, MENSAJE1, [WAIT ("DESPROGRAMAR"), SKIP 1, STR USU1\1, STR USU2\1, STR USU3\1, STR USU4\1]' espero a detectar OK if clave1==usu1 && clave2==usu2 && clave3==usu3 && clave4==usu4 THEN PORTC.3=0 PORTC.2=0 ACTIV=0 DESACT=1 CZONA1=0 CZONA2=0 CZONA3=0 CZONA4=0 s_activ=0 SIRENA=0 A_SIRENA=0 ELSE ENDIF GOTO BORRADO MENSAJE1: HSEROUT ["AT+CMGR=1",13,10] ' LEER LOS SMS SERIN2 PUERTOIN, VEL, DEMORA, MENSAJE2, [WAIT ("CLAVE"),SKIP 1,STR USU1\1,STR USU2\1,STR USU3\1,STR USU4\1,SKIP 1,STR CCLAVE1\1,STR CCLAVE2\1,STR CCLAVE3\1,STR CCLAVE4\1]' espero a detectar OK if clave1==usu1 && clave2==usu2 && clave3==usu3 && clave4==usu4 THEN CLAVE1=CCLAVE1 CLAVE2=CCLAVE2 CLAVE3=CCLAVE3 CLAVE4=CCLAVE4 WRITE $0,CLAVE1 : WRITE $1,CLAVE2 : WRITE $2,CLAVE3 : WRITE $3,CLAVE4 ELSE ENDIF goto BORRADO MENSAJE2: HSEROUT ["AT+CMGR=1",13,10] ' LEER LOS SMS SERIN2 PUERTOIN, VEL, DEMORA, MENSAJE3, [WAIT ("TELEFONO"),SKIP 1,STR USU1\1,STR USU2\1,STR USU3\1,STR USU4\1,SKIP 1,STR TELF\1,SKIP 1,STR TELFA\3,STR TELFB\3,STR TELFC\3]' espero a detectar OK if clave1==usu1 && clave2==usu2 && clave3==usu3 && clave4==usu4 THEN SELECT CASE telf CASE "1" TELEFONO1A[1] = TELFA[1] TELEFONO1A[2] = TELFA[2] TELEFONO1A[3] = TELFA[3] TELEFONO1B[1] = TELFB[1] TELEFONO1B[2] = TELFB[2] TELEFONO1B[3] = TELFB[3] TELEFONO1C[1] = TELFC[1] TELEFONO1C[2] = TELFC[2] TELEFONO1C[3] = TELFC[3] CASE "2" TELEFONO2A[1] = TELFA[1] TELEFONO2A[2] = TELFA[2] TELEFONO2A[3] = TELFA[3] TELEFONO2B[1] = TELFB[1] TELEFONO2B[2] = TELFB[2]
ANEXOS 183
TELEFONO2B[3] = TELFB[3] TELEFONO2C[1] = TELFC[1] TELEFONO2C[2] = TELFC[2] TELEFONO2C[3] = TELFC[3] CASE "3" TELEFONO3A[1] = TELFA[1] TELEFONO3A[2] = TELFA[2] TELEFONO3A[3] = TELFA[3] TELEFONO3B[1] = TELFB[1] TELEFONO3B[2] = TELFB[2] TELEFONO3B[3] = TELFB[3] TELEFONO3C[1] = TELFC[1] TELEFONO3C[2] = TELFC[2] TELEFONO3C[3] = TELFC[3] END SELECT GOSUB ESCRIBIR ELSE ENDIF GOTO BORRADO MENSAJE3: HSEROUT ["AT+CMGR=1",13,10] ' LEER LOS SMS SERIN2 PUERTOIN, VEL, DEMORA, MENSAJE4, [WAIT ("ZONAS"),SKIP 1,STR USU1\1,STR USU2\1,STR USU3\1,STR USU4\1,SKIP 1,STR N_z\1,STR F_Z\1] if clave1==usu1 && clave2==usu2 && clave3==usu3 && clave4==usu4 THEN SELECT CASE F_Z CASE "A" F_Z = 1 CASE "D" F_Z = 0 END SELECT SELECT CASE N_Z CASE "1" A_Z1 = F_Z CASE "2" A_Z2 = F_Z CASE "3" A_Z3 = F_Z CASE "4" A_Z4 = F_Z END SELECT ELSE ENDIF GOTO BORRADO MENSAJE4: HSEROUT ["AT+CMGR=1",13,10] ' LEER LOS SMS SERIN2 PUERTOIN, VEL, DEMORA, BORRADO, [WAIT ("FOCOS"),SKIP 1,STR USU1\1,STR USU2\1,STR USU3\1,STR USU4\1,SKIP 1,STR N_F\1,STR F_F\1] if clave1==usu1 && clave2==usu2 && clave3==usu3 && clave4==usu4 THEN SELECT CASE F_F CASE "A" F_F = 1 CASE "D" F_F = 0 END SELECT
ANEXOS 184
SELECT CASE N_F CASE "1" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F1",F_F,13,10] CASE "2" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F2",F_F,13,10] CASE "3" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F3",F_F,13,10] CASE "4" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F4",F_F,13,10] CASE "5" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F5",F_F,13,10] CASE "6" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F6",F_F,13,10] CASE "7" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F7",F_F,13,10] END SELECT ELSE ENDIF GOTO BORRADO BORRADO: HSEROUT ["AT+CMGD=1,4",13,10] PAUSE ESPERA RETURN PORTERO: TERMINAR = 1 ' Señal para colgar la llamada 'INTENTO 1 TIEMPO = 1 ' Señal de tiempo para marcar a otro numero HSEROUT ["ATD0", TELEFONO1A[1], TELEFONO1A[2], STR TELEFONO1B\3, STR TELEFONO1C\3,";",13,10] ' Marcar del Domoportero pause espera WHILE TIEMPO <= 25 HSEROUT ["AT+CPAS",13,10] ' Verificar estado telefono, timbrando o contestaDA SERIN2 PUERTOIN, VEL, 500, CONTIEMPO, [WAIT ("+CPAS: 4")]' espero a Q CONTESTEN MIC = 0 PARLANTE = 0 GOTO TERMINAR_LLAMADA CONTIEMPO: TIEMPO = TIEMPO + 1 WEND HSEROUT ["AT+CHUP",13,10] ' Cuelgo la llamada PAUSE ESPERA 'INTENTO 2 TIEMPO = 1 HSEROUT ["ATD0", TELEFONO2A[1], TELEFONO2A[2], STR TELEFONO2B\3, STR TELEFONO2C\3,";",13,10] ' Marcar del Domoportero
ANEXOS 185
pause espera WHILE TIEMPO <= 25 HSEROUT ["AT+CPAS",13,10] ' Verificar estado telefono, timbrando o contestada SERIN2 PUERTOIN, VEL, 500, CONTIEMPO1, [WAIT ("+CPAS: 4")]' espero a Q CONTESTEN MIC = 0 PARLANTE = 0 GOTO TERMINAR_LLAMADA CONTIEMPO1: TIEMPO = TIEMPO + 1 WEND HSEROUT ["AT+CHUP",13,10] ' Cuelgo la llamada PAUSE ESPERA 'INTENTO 3 TIEMPO = 1 HSEROUT ["ATD0", TELEFONO3A[1], TELEFONO3A[2], STR TELEFONO3B\3, STR TELEFONO3C\3,";",13,10] ' Marcar del Domoportero pause espera WHILE TIEMPO <= 25 HSEROUT ["AT+CPAS",13,10] ' Verificar estado telefono, timbrando o contestada SERIN2 PUERTOIN, VEL, 500, CONTIEMPO2, [WAIT ("+CPAS: 4")]' espero a q CONTESTEN MIC = 0 PARLANTE = 0 GOTO TERMINAR_LLAMADA CONTIEMPO2: TIEMPO = TIEMPO + 1 WEND HSEROUT ["AT+CHUP",13,10] ' Cuelgo la llamada PAUSE ESPERA GOTO TER_FIN TERMINAR_LLAMADA: while terminar = 1 HSEROUT ["AT+CPAS",13,10] ' Verificar estado telefono, timbrando o contestada SERIN2 PUERTOIN, VEL, 500, term, [WAIT ("+CPAS: 0")]' espero a q cuelguen HSEROUT ["AT+CHUP",13,10] ' Cuelgo la llamada MIC = 1 PARLANTE = 1 terminar = 0 goto ter_fin TERM: terminar = 1 wend TER_FIN: HSEROUT ["AT+CHUP",13,10] ' Cuelgo la llamada MIC = 1 PARLANTE = 1 terminar = 0 RETURN ZONA1: if CZONA1 == 1 then CZONA1 = 0
ANEXOS 186
HSEROUT ["AT+CSCA=",34,"+59397995040",34,13,10] ' se envia el centro de mensajeria 34(comillas) y 13 (enter) pause espera HSEROUT ["AT+CMGS=",34,"0",TELEFONO1A[1],TELEFONO1A[2],STR TELEFONO1B\3,STR TELEFONO1C\3,34,13,10] ' se envia el # de celular 34(comillas) y 13 (enter) pause ESPERA HSEROUT ["SE HA ACTIVADO LA ZONA 1",26] ' ascii 26 (finaliza los comandos AT: ctrl+Z) pause ESPERA SIRENA=1 else CZONA1 = 0 ENDIF RETURN ZONA2: if CZONA2 == 1 then CZONA2 = 0 HSEROUT ["AT+CSCA=",34,"+59397995040",34,13,10] ' se envia el centro de mensajeria 34(comillas) y 13 (enter) pause espera HSEROUT ["AT+CMGS=",34,"0",TELEFONO1A[1],TELEFONO1A[2],STR TELEFONO1B\3,STR TELEFONO1C\3,34,13,10] ' se envia el # de celular 34(comillas) y 13 (enter) pause ESPERA HSEROUT ["SE HA ACTIVADO LA ZONA 2",26] ' ascii 26 (finaliza los comandos AT: ctrl+Z) pause ESPERA SIRENA=1 else CZONA2 = 0 ENDIF RETURN ZONA3: if CZONA3 == 1 then CZONA3 = 0 HSEROUT ["AT+CSCA=",34,"+59397995040",34,13,10] ' se envia el centro de mensajeria 34(comillas) y 13 (enter) pause espera HSEROUT ["AT+CMGS=",34,"0",TELEFONO1A[1],TELEFONO1A[2],STR TELEFONO1B\3,STR TELEFONO1C\3,34,13,10] ' se envia el # de celular 34(comillas) y 13 (enter) pause ESPERA HSEROUT ["SE HA ACTIVADO LA ZONA 3",26] ' ascii 26 (finaliza los comandos AT: ctrl+Z) pause ESPERA SIRENA=1 else CZONA3 = 0 ENDIF RETURN ZONA4: if CZONA4 == 1 then CZONA4=0 HSEROUT ["AT+CSCA=",34,"+59397995040",34,13,10] ' se envia el centro de mensajeria 34(comillas) y 13 (enter) pause espera
ANEXOS 187
HSEROUT ["AT+CMGS=",34,"0",TELEFONO1A[1],TELEFONO1A[2],STR TELEFONO1B\3,STR TELEFONO1C\3,34,13,10] ' se envia el # de celular 34(comillas) y 13 (enter) pause ESPERA HSEROUT ["SE HA ACTIVADO LA ZONA 4",26] ' ascii 26 (finaliza los comandos AT: ctrl+Z) pause ESPERA SIRENA=1 else CZONA4=0 ENDIF RETURN PANEL: select case vpanel case "A" 'ACTIVAR SISTEMA ACTIV=1 DESACT=0 CZONA1=1 CZONA2=1 CZONA3=1 CZONA4=1 S_ACTIV=1 CASE "D" 'DESACTIVAR SISTEMA PORTC.3=0 PORTC.2=0 ACTIV=0 DESACT=1 CZONA1=0 CZONA2=0 CZONA3=0 CZONA4=0 S_ACTIV=0 SIRENA=0 A_SIRENA=0 CASE "C" 'CAMBIO DE CLAVE CLAVE1=telfa[1] CLAVE2=telfa[2] CLAVE3=telfa[3] CLAVE4=telfb[1] WRITE $0,CLAVE1 : WRITE $1,CLAVE2 : WRITE $2,CLAVE3 : WRITE $3,CLAVE4 CASE "T" ' CAMBIO DE TELEFONOS SELECT CASE telf CASE "1" TELEFONO1A[1] = TELFA[1] TELEFONO1A[2] = TELFA[2] TELEFONO1A[3] = TELFA[3] TELEFONO1B[1] = TELFB[1] TELEFONO1B[2] = TELFB[2] TELEFONO1B[3] = TELFB[3] TELEFONO1C[1] = TELFC[1] TELEFONO1C[2] = TELFC[2] TELEFONO1C[3] = TELFC[3] CASE "2" TELEFONO2A[1] = TELFA[1]
ANEXOS 188
TELEFONO2A[2] = TELFA[2] TELEFONO2A[3] = TELFA[3] TELEFONO2B[1] = TELFB[1] TELEFONO2B[2] = TELFB[2] TELEFONO2B[3] = TELFB[3] TELEFONO2C[1] = TELFC[1] TELEFONO2C[2] = TELFC[2] TELEFONO2C[3] = TELFC[3] CASE "3" TELEFONO3A[1] = TELFA[1] TELEFONO3A[2] = TELFA[2] TELEFONO3A[3] = TELFA[3] TELEFONO3B[1] = TELFB[1] TELEFONO3B[2] = TELFB[2] TELEFONO3B[3] = TELFB[3] TELEFONO3C[1] = TELFC[1] TELEFONO3C[2] = TELFC[2] TELEFONO3C[3] = TELFC[3] END SELECT GOSUB ESCRIBIR CASE "I" ' COMPARACION DE CLAVES (PANEL - CENTRAL) IF CLAVE1==telfa[1] && CLAVE2==telfa[2] && CLAVE3==telfa[3] && CLAVE4==telfb[1] THEN COM_CLAVE=1 ELSE COM_CLAVE=0 ENDIF PAUSE 1500 CASE "F" 'ACTIVA FOCOS SELECT CASE telf CASE "1" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F11",13,10] CASE "2" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F21",13,10] CASE "3" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F31",13,10] CASE "4" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F41",13,10] CASE "5" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F51",13,10] CASE "6" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F61",13,10] CASE "7" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F71",13,10] END SELECT CASE "O" 'DESACTIVA FOCOS SELECT CASE telf CASE "1" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F10",13,10]
ANEXOS 189
CASE "2" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F20",13,10] CASE "3" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F30",13,10] CASE "4" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F40",13,10] CASE "5" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F50",13,10] CASE "6" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F60",13,10] CASE "7" WHILE enviar_dat == 0 : WEND SEROUT2 PORTB.3,VEL,["F70",13,10] END SELECT CASE "Z" 'ACTIVA ZONAS SELECT CASE telf CASE "1" A_Z1 = 1 CASE "2" A_Z2 = 1 CASE "3" A_Z3 = 1 CASE "4" A_Z4 = 1 END SELECT CASE "N" 'DESACTIVA ZONAS SELECT CASE telf CASE "1" A_Z1 = 0 CASE "2" A_Z2 = 0 CASE "3" A_Z3 = 0 CASE "4" A_Z4 = 0 END SELECT CASE "H" HORDEC=telfa[1] HORUNI=telfa[2] MINDEC=telfa[3] MINUNI=telfb[1] IF (HORDEC == 1) AND (HORUNI == 8) AND (MINDEC == 3) AND (MINUNI == 0) THEN SIMULADOR = 1 if (HORDEC == 2) AND (HORUNI == 3) AND (MINDEC == 0) AND (MINUNI == 0) THEN SIMULADOR = 0 end select RETURN ESCRIBIR: WRITE $04,TELEFONO1A[1] WRITE $05,TELEFONO1A[2] WRITE $06,TELEFONO1A[3]
ANEXOS 190
WRITE $07,TELEFONO1B[1] WRITE $08,TELEFONO1B[2] WRITE $09,TELEFONO1B[3] WRITE $0A,TELEFONO1C[1] WRITE $0B,TELEFONO1C[2] WRITE $0C,TELEFONO1C[3] WRITE $0D,TELEFONO2A[1] WRITE $0E,TELEFONO2A[2] WRITE $0F,TELEFONO2A[3] WRITE $10,TELEFONO2B[1] WRITE $11,TELEFONO2B[2] WRITE $12,TELEFONO2B[3] WRITE $13,TELEFONO2C[1] WRITE $14,TELEFONO2C[2] WRITE $15,TELEFONO2C[3] WRITE $16,TELEFONO3A[1] WRITE $17,TELEFONO3A[2] WRITE $18,TELEFONO3A[3] WRITE $19,TELEFONO3B[1] WRITE $1A,TELEFONO3B[2] WRITE $1B,TELEFONO3B[3] WRITE $1C,TELEFONO3C[1] WRITE $1D,TELEFONO3C[2] WRITE $1E,TELEFONO3C[3] RETURN LEER: READ $04,TELEFONO1A[1] READ $05,TELEFONO1A[2] READ $06,TELEFONO1A[3] READ $07,TELEFONO1B[1] READ $08,TELEFONO1B[2] READ $09,TELEFONO1B[3] READ $0A,TELEFONO1C[1] READ $0B,TELEFONO1C[2] READ $0C,TELEFONO1C[3] READ $0D,TELEFONO2A[1] READ $0E,TELEFONO2A[2] READ $0F,TELEFONO2A[3] READ $10,TELEFONO2B[1] READ $11,TELEFONO2B[2] READ $12,TELEFONO2B[3] READ $13,TELEFONO2C[1] READ $14,TELEFONO2C[2] READ $15,TELEFONO2C[3] READ $16,TELEFONO3A[1] READ $17,TELEFONO3A[2] READ $18,TELEFONO3A[3] READ $19,TELEFONO3B[1] READ $1A,TELEFONO3B[2] READ $1B,TELEFONO3B[3] READ $1C,TELEFONO3C[1] READ $1D,TELEFONO3C[2] READ $1E,TELEFONO3C[3] RETURN
ANEXOS 191
ANEXO 12
Programa del Panel de Control
ANEXOS 192
#include <pic18.h> #include <string.h> #include "D:\PROGRAMAS\PRUEBA18-SERIAL\delay.c" #include "D:\PROGRAMAS\PRUEBA18-SERIAL\lcdfuncion.c" static bit ENVIAR_DATOS @ ((unsigned)&PORTC*8+0); // Register select static bit SIST_DATOS @ ((unsigned)&PORTC*8+1); // Register select static bit IGUAL @ ((unsigned)&PORTC*8+2); // Register select unsigned char fila=0x00, portb_antes=0xF0,i=0x00,i_barr=0x00, columna[4]=0x07,0x0B,0x0D,0x0E; unsigned char aux1=0, aux2=0, aux3=0, h=0, activ_1=0, codigo=0, clave[4]=0; unsigned char SMS=0, f, g, tecla, datorx1[100], k[7], veces_t0if=0, clave1[4]=0; unsigned char aux4=0, telf=0, m=0, num=0, telefono[9]=0; unsigned char clavecentral[4]=0; const char *usuario="5936", *mensaje; int n=0, o=0, p=0, q=0; unsigned char segundos=0,minutos=0,horas=0,aux_hora=0,hora[4]=0; unsigned char aux_flechas=1,a_foco=0,af_act=0,af_des=0; unsigned char a_zona=0,az_act=0,az_des=0; void rutina_enter(void); void rutina_tecla_1(void); void rutina_tecla_2(void); void rutina_tecla_3(void); void rutina_tecla_4(void); void rutina_tecla_5(void); void rutina_tecla_6(void); void rutina_tecla_7(void); void tecla_abajo(void); void tecla_arriba(void); void rutina_tecla_clear(void); void teclas(int); void serial_putch(unsigned char); void serial_puts(const char * s); void sistema_apagado(void); void sistema_activado(void); void sistema_apagado1(void); void sistema_activado1(void); void interrupt isr(void) @ 0x04 unsigned char cod_tecla, j; if (RBIF) RBIF=0; for(j=0;j<0xff;j++); for(j=0;j<0xff;j++); for(j=0;j<0xff;j++); for(j=0;j<0xff;j++); fila=PORTB&0xF0; if (fila!=0xF0) //para que no responda en el cambio de L-H al soltar la tecla, solo en H-L cod_tecla = fila|columna[i_barr];
ANEXOS 193
for(j=0;j<0xff;j++); for(j=0;j<0xff;j++); for(j=0;j<0xff;j++); for(j=0;j<0xff;j++); switch(cod_tecla) case 0xEE: //1 teclas('1'); rutina_tecla_1(); break; case 0xDE: //2 teclas('2'); rutina_tecla_2(); break; case 0xBE: //3 teclas('3'); rutina_tecla_3(); break; case 0xED: //4 teclas('4'); rutina_tecla_4(); break; case 0xDD: //5 teclas('5'); rutina_tecla_5(); break; case 0xBD: //6 teclas('6'); rutina_tecla_6(); break; case 0xEB: //7 teclas('7'); rutina_tecla_7(); break; case 0xDB: //8 teclas('8'); break; case 0xBB: //9 teclas('9'); break; case 0xD7: //0 teclas('0'); break; case 0x7E: //FLECHA ARRIBA tecla_arriba(); break; case 0x7D: //FLECHA ABAJO tecla_abajo(); break; case 0x77: //ENTER rutina_enter (); break; case 0xE7: rutina_tecla_clear(); break; case 0x7B: //2ND break; case 0xB7: break;
ANEXOS 194
default: break; //switch cod_tecla while((PORTB&0xF0)!=0xF0); //detecta flanco asc L-H RBIF=0; if (T0IF) veces_t0if++; if(veces_t0if==76) if (SIST_DATOS) sistema_activado1(); else sistema_apagado1(); veces_t0if=0; if (aux_hora == 0) hora[0]=horas/10; //obtiene las decenas hora[0]=hora[0]+0x30; hora[1]=horas%10; //obtiene las unidades hora[1]=hora[1]+0x30; hora[2]=minutos/10; //obtiene las decenas hora[2]=hora[2]+0x30; hora[3]=minutos%10; //obtiene las unidades hora[3]=hora[3]+0x30; segundos++; if (segundos==60) segundos=0; minutos++; while(!ENVIAR_DATOS); serial_puts("1H "); serial_puts(hora); serial_puts(" \n"); if (minutos==60) minutos=0; horas++; if (horas==24) horas=0; TMR0L = 0x00; // preload timer T0IF = 0; void main()
ANEXOS 195
PSPMODE = 0; //deshabilita el modo PSPMODE de PORTD y PORTE DelayMs(10); ADCON1=0x06; //todos los puertos multiplexados con entradas del A/D, por default son analogos. Hay que ponerlos para digital I/O TRISD = 0x00; //PORTD como OUT inicialmente TRISE2 = 0; //configura la direccion de estos bits de PORTE TRISE1 = 0; // TRISE0 = 0; // TRISC = 0x87; PORTC = 0x00; TRISB = 0xF0; /*** INICIALIZACION PUERTO C PARA SERIAL *******************************************************************************************/ SPBRG = 129; //estoy usando un xtal de 20MHz, esto segun el data sheet ma genera 2400 baudios a baja velocidad BRGH = 0; SYNC = 0; //para habilitar el modo ASINCRONO (SYNC=0) SPEN = 1; //para habilitar el modo ASINCRONO (SPEN=1) TX9 = 0; //por seguridad deshab modo 9 bits TXEN = 1; //habilita transmision RX9 = 0; //por seguridad deshab modo 9 bits RCIE = 1; //habilita int serial CREN = 1; //habilita recepcion (el RSR registro de desplaz) RCIF = 0; //reseteo la bandera de recepcion /*** INICIALIZACION TIMER0 ***************************/ TMR0ON = 1; T08BIT = 1; T0CS = 0; // select internal clock (como timer) T0SE = 0; // flanco ascendente PSA = 0; // PSA=0 Prescaler asignado a timer0, en 1 para WDT T0PS2 = 1; T0PS1 = 1; T0PS0 = 1; TMR0L = 0x00; // preload timer, para probar cargar numeros altos ej 0xE0 TMR0IE = 1; // enable timer interrupt T0IF = 0; // antes de habilitar, por seguridad se encere el overflow flag /*** INICIALIZACION DE INTERRUPCIONES ***********************************************************************************************/ RBPU = 0; RBIE = 1; RBIF = 0; PEIE = 1; //habilita todas las interr perifericas GIE = 1; //habilitacion global de las 14 interr
ANEXOS 196
/*** INICIALIZACION LCD *************************************************************************************************************/ lcd_init(); lcd_clear(); lcd_puts("1.ACTIVACION"); lcd_goto(0x28); //Escribe en la linea 2 lcd_puts("2.CONFIGURACION"); lcd_write(0x0C); while(1) RBIE = 0; //deshabilita Interr PORTB Changes i++; i_barr=i&0x03; portb_antes=(PORTB&0xF0)|(columna[i_barr]); PORTB=portb_antes; RBIE = 1; //habilita Interr PORTB Changes. Habia un problema al formar el codigo, porque a veces se interrumpia luego //de incrementar i, pero sin hacer el barrido de la col todavia, entonces p.ej. se presionaba el 0 y se veia el 1, asi void rutina_enter (void) while(!ENVIAR_DATOS); serial_puts("1I "); serial_puts(clave); serial_puts(" \n"); for(f=0;f<=250;f++) for(g=0;g<=20;g++) DelayUs(250); if (aux1==0 && aux2==0 && aux3==0 && aux4==0 && codigo==1 && h==4 && IGUAL==1 && aux_hora==0) while(!ENVIAR_DATOS); serial_puts("1A \n"); sistema_activado(); if (aux1==1 && aux2==0 && aux3==0 && aux4==0 && codigo==1 && h==4 && IGUAL==1 && aux_hora==0) while(!ENVIAR_DATOS); serial_puts("1D \n"); sistema_apagado(); if (codigo==1 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && h==4 && IGUAL==1 && aux_hora==0) lcd_clear_intr(); lcd_puts_intr("1.CLAVE"); lcd_goto_intr(0x28); lcd_puts_intr("2.TELEFONOS "); lcd_putch_intr(126);
ANEXOS 197
h=0; *clave=0; codigo=0; if (aux3==1 && h==4 && aux4==0 && aux_hora==0) usuario=clave1; while(!ENVIAR_DATOS); serial_puts("1C "); serial_puts(usuario); serial_puts(" \n"); aux3=0; h=0; *clave=0; lcd_clear_intr(); lcd_puts_intr("Clave Modificada"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.CLAVE"); lcd_goto_intr(0x28); lcd_puts_intr("2.TELEFONOS "); lcd_putch_intr(126); if (codigo==1 && IGUAL==0 && aux_hora==0) lcd_clear_intr(); lcd_puts_intr("Clave Incorrecta"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); codigo=0; h=0; *clave=0; if (aux1==1) lcd_clear_intr(); lcd_puts_intr("1.DESACTIVACION"); else lcd_clear_intr(); lcd_puts_intr("1.ACTIVACION"); lcd_goto_intr(0x28); lcd_puts_intr("2.CONFIGURACION"); aux2=0; if (aux4==1 && num==1 && aux_hora==0) lcd_clear_intr(); if (telf==1) while(!ENVIAR_DATOS); serial_puts("1T1"); serial_puts(telefono); serial_puts("\n");
ANEXOS 198
lcd_puts_intr("TELF 1 CAMBIADO"); if (telf==2) while (!ENVIAR_DATOS); serial_puts("1T2"); serial_puts(telefono); serial_puts("\n"); lcd_puts_intr("TELF 2 CAMBIADO"); if (telf==3) while (!ENVIAR_DATOS); serial_puts("1T3"); serial_puts(telefono); serial_puts("\n"); lcd_puts_intr("TELF 3 CAMBIADO"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.CLAVE"); lcd_goto_intr(0x28); lcd_puts_intr("2.TELEFONOS "); lcd_putch_intr(126); //aux2=0; aux4=0; num=0; m=0; telf=0; if (aux_hora==1) horas=(hora[0]-0x30)*10+(hora[1]-0x30); minutos=(hora[2]-0x30)*10+(hora[3]-0x30); lcd_write_intr(0x0C); lcd_clear_intr(); lcd_puts_intr("Hora Modificada"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.CLAVE"); lcd_goto_intr(0x28); lcd_puts_intr("2.TELEFONOS "); lcd_putch_intr(126); veces_t0if=75; segundos=59; aux_hora=0; q=0; void rutina_tecla_1(void) if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==1 && af_des==0 && a_zona==0 && az_act==0 && az_des==0)
ANEXOS 199
lcd_clear_intr(); lcd_puts_intr("Foco 1 Activado"); while(!ENVIAR_DATOS); serial_puts("1F1 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==0 && af_des==1 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Foco 1 Desact"); while(!ENVIAR_DATOS); serial_puts("1O1 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==1 && az_act==1 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Zona 1 Activada"); while(!ENVIAR_DATOS); serial_puts("1Z1 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Zona1 2.Zona2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Zona3 4.Zona4"); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==1 && az_act==0 && az_des==1) lcd_clear_intr(); lcd_puts_intr("Zona 1 Desact"); while(!ENVIAR_DATOS); serial_puts("1N1 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Zona1 2.Zona2"); lcd_goto_intr(0x28);
ANEXOS 200
lcd_puts_intr("3.Zona3 4.Zona4"); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==0 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); af_act=1; if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==1 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("1.Zona1 2.Zona2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Zona3 4.Zona4"); az_act=1; if (codigo==0 && aux2==0 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Ingrese Codigo"); lcd_goto_intr(0x28); codigo=1; if (codigo==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Nuevo Codigo"); lcd_goto_intr(0x28); codigo=0; aux3=1; //aux2=0; *clave1=0; if (codigo==0 && aux3==0 && aux2==1 && aux4==1 && num==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Ingrese Telefono"); lcd_goto_intr(0x28); telf=1; num=1; void rutina_tecla_2(void) if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==1 && af_des==0 && a_zona==0 && az_act==0 && az_des==0)
ANEXOS 201
lcd_clear_intr(); lcd_puts_intr("Foco 2 Activado"); while(!ENVIAR_DATOS); serial_puts("1F2 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==0 && af_des==1 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Foco 2 Desact"); while(!ENVIAR_DATOS); serial_puts("1O2 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==1 && az_act==1 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Zona 2 Activada"); while(!ENVIAR_DATOS); serial_puts("1Z2 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Zona1 2.Zona2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Zona3 4.Zona4"); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==1 && az_act==0 && az_des==1) lcd_clear_intr(); lcd_puts_intr("Zona 2 Desact"); while(!ENVIAR_DATOS); serial_puts("1N2 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Zona1 2.Zona2"); lcd_goto_intr(0x28);
ANEXOS 202
lcd_puts_intr("3.Zona3 4.Zona4"); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==0 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); af_des=1; if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==1 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("1.Zona1 2.Zona2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Zona3 4.Zona4"); az_des=1; if (codigo==0 && aux3==0 && aux2==1 && aux4==1 && num==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Ingrese Telefono"); lcd_goto_intr(0x28); telf=2; num=1; if (codigo==0 && aux3==0 && aux1==0 && aux2==1 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("1.TELEFONO 1"); lcd_goto_intr(0x28); lcd_puts_intr("2.TELEFONO 2 "); lcd_putch_intr(126); aux4=1; if (codigo==0 && aux1==0 && aux2==0 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Ingrese Codigo"); lcd_goto_intr(0x28); codigo=1; aux2=1; void rutina_tecla_3(void) if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==1 && af_des==0 && a_zona==0 && az_act==0 && az_des==0)
ANEXOS 203
lcd_clear_intr(); lcd_puts_intr("Foco 3 Activado"); while(!ENVIAR_DATOS); serial_puts("1F3 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==0 && af_des==1 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Foco 3 Desact"); while(!ENVIAR_DATOS); serial_puts("1O3 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==1 && az_act==1 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Zona 3 Activada"); while(!ENVIAR_DATOS); serial_puts("1Z3 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Zona1 2.Zona2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Zona3 4.Zona4"); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==1 && az_act==0 && az_des==1) lcd_clear_intr(); lcd_puts_intr("Zona 3 Desact"); while(!ENVIAR_DATOS); serial_puts("1N3 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Zona1 2.Zona2"); lcd_goto_intr(0x28);
ANEXOS 204
lcd_puts_intr("3.Zona3 4.Zona4"); if (codigo==0 && aux3==0 && aux2==1 && aux4==1 && num==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Ingrese Telefono"); lcd_goto_intr(0x28); telf=3; num=1; if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("1.Activar Focos"); lcd_goto_intr(0x28); lcd_puts_intr("2.Desactivar F."); a_foco=1; void rutina_tecla_4(void) if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==1 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Foco 4 Activado"); while(!ENVIAR_DATOS); serial_puts("1F4 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==0 && af_des==1 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Foco 4 Desact"); while(!ENVIAR_DATOS); serial_puts("1O4 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126);
ANEXOS 205
if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==1 && az_act==1 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Zona 4 Activada"); while(!ENVIAR_DATOS); serial_puts("1Z4 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Zona1 2.Zona2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Zona3 4.Zona4"); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==1 && az_act==0 && az_des==1) lcd_clear_intr(); lcd_puts_intr("Zona 4 Desact"); while(!ENVIAR_DATOS); serial_puts("1N4 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Zona1 2.Zona2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Zona3 4.Zona4"); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("1.Activar Zonas"); lcd_goto_intr(0x28); lcd_puts_intr("2.Desactivar Z."); a_zona=1; void rutina_tecla_5(void) if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==1 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Foco 5 Activado"); while(!ENVIAR_DATOS); serial_puts("1F5 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4");
ANEXOS 206
lcd_putch_intr(126); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==0 && af_des==1 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Foco 5 Desact"); while(!ENVIAR_DATOS); serial_puts("1O5 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==0 && af_act==0 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Ingrese la Hora"); lcd_goto_intr(0x28); lcd_putch_intr(hora[0]); lcd_putch_intr(hora[1]); lcd_puts_intr(":"); lcd_putch_intr(hora[2]); lcd_putch_intr(hora[3]); lcd_goto_intr(0x28); lcd_write_intr(0x0F); aux_hora=1; void rutina_tecla_6(void) if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==1 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Foco 6 Activado"); while(!ENVIAR_DATOS); serial_puts("1F6 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==0 && af_des==1 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr();
ANEXOS 207
lcd_puts_intr("Foco 6 Desact"); while(!ENVIAR_DATOS); serial_puts("1O6 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); void rutina_tecla_7(void) if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==1 && af_des==0 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Foco 7 Activado"); while(!ENVIAR_DATOS); serial_puts("1F7 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); if (codigo==0 && aux1==0 && aux2==1 && aux3==0 && aux4==0 && aux_hora==0 && a_foco==1 && af_act==0 && af_des==1 && a_zona==0 && az_act==0 && az_des==0) lcd_clear_intr(); lcd_puts_intr("Foco 7 Desact"); while(!ENVIAR_DATOS); serial_puts("1O7 \n"); for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); void rutina_tecla_clear(void) if (codigo==0 && aux3==0 && aux1==0 && aux4==0 && a_foco == 0 && a_zona==0) aux2=0; lcd_clear_intr(); lcd_puts_intr("1.ACTIVACION"); lcd_goto_intr(0x28);
ANEXOS 208
lcd_puts_intr("2.CONFIGURACION"); if (codigo==0 && aux3==0 && aux1==0 && aux4==1 && num==0 && a_foco == 0 && a_zona==0) aux_flechas=1; lcd_clear_intr(); lcd_puts_intr("1.CLAVE"); lcd_goto_intr(0x28); lcd_puts_intr("2.TELEFONOS "); lcd_putch_intr(126); aux4=0; if ((a_foco == 1 && af_act == 0 && af_des == 0) || (a_zona == 1 && az_act == 0 && az_des == 0)) aux_flechas=1; a_zona=0; a_foco=0; lcd_clear_intr(); lcd_puts_intr("1.CLAVE"); lcd_goto_intr(0x28); lcd_puts_intr("2.TELEFONOS "); lcd_putch_intr(126); if (aux3==1) lcd_clear_intr(); lcd_puts_intr("Nuevo Codigo"); lcd_goto_intr(0x28); *clave1=0; h=0; if (codigo==1) lcd_clear_intr(); lcd_puts_intr("Ingrese Codigo"); lcd_goto_intr(0x28); *clave=0; h=0; if (num==1) lcd_clear_intr(); lcd_puts_intr("Ingrese Telefono"); lcd_goto_intr(0x28); *telefono=0; m=0; if (af_act == 1 || af_des == 1) af_act=0; af_des=0; lcd_clear_intr(); lcd_puts_intr("1.Activar Focos"); lcd_goto_intr(0x28); lcd_puts_intr("2.Desactivar F."); if (az_act == 1 || az_des == 1) az_act=0;
ANEXOS 209
az_des=0; lcd_clear_intr(); lcd_puts_intr("1.Activar Zonas"); lcd_goto_intr(0x28); lcd_puts_intr("2.Desactivar Z."); void tecla_abajo (void) aux_flechas++; if (aux_flechas > 3) aux_flechas = 3; if (aux_flechas == 2) if (codigo==0 && aux3==0 && aux1==0 && aux2==1 && aux4==0 && a_foco == 0 && a_zona==0) lcd_clear_intr(); lcd_puts_intr("3.SIMULADOR "); lcd_putch_intr(127); lcd_goto_intr(0x28); lcd_puts_intr("4.SEGURIDAD "); lcd_putch_intr(126); if (aux_flechas == 3) if (codigo==0 && aux3==0 && aux1==0 && aux2==1 && aux4==0 && a_foco == 0 && a_zona==0) lcd_clear_intr(); lcd_puts_intr("5.HORA "); lcd_putch_intr(127); if (codigo==0 && aux3==0 && aux1==0 && aux2==1 && aux4==1 && a_foco == 0 && a_zona==0) lcd_clear_intr(); lcd_puts_intr("3.TELEFONO 3 "); lcd_putch_intr(127); if (codigo==0 && aux3==0 && aux1==0 && aux2==1 && aux4==0 && a_foco == 1 && (af_act == 1 || af_des == 1) && a_zona==0) lcd_clear_intr(); lcd_puts_intr("5.Foco5 6.Foco6"); lcd_putch_intr(127); lcd_goto_intr(0x28); lcd_puts_intr("7.Foco7 "); void tecla_arriba (void) aux_flechas--;
ANEXOS 210
if (aux_flechas < 1) aux_flechas = 1; if (aux_flechas == 2) if (codigo==0 && aux3==0 && aux1==0 && aux2==1 && aux4==0 && a_foco == 0 && a_zona==0) lcd_clear_intr(); lcd_puts_intr("3.SIMULADOR "); lcd_putch_intr(127); lcd_goto_intr(0x28); lcd_puts_intr("4.SEGURIDAD "); lcd_putch_intr(126); if (aux_flechas == 1) if (codigo==0 && aux3==0 && aux1==0 && aux2==1 && aux4==0 && a_foco == 0 && a_zona==0) lcd_clear_intr(); lcd_puts_intr("1.CLAVE"); lcd_goto_intr(0x28); lcd_puts_intr("2.TELEFONOS "); lcd_putch_intr(126); if (codigo==0 && aux3==0 && aux1==0 && aux2==1 && aux4==1 && a_foco == 0 && a_zona==0) lcd_clear_intr(); lcd_puts_intr("1.TELEFONO 1"); lcd_goto_intr(0x28); lcd_puts_intr("2.TELEFONO 2 "); lcd_putch_intr(126); if (codigo==0 && aux3==0 && aux1==0 && aux2==1 && aux4==0 && a_foco == 1 && (af_act == 1 || af_des == 1)) lcd_clear_intr(); lcd_puts_intr("1.Foco1 2.Foco2"); lcd_goto_intr(0x28); lcd_puts_intr("3.Foco3 4.Foco4"); lcd_putch_intr(126); void teclas(tecla) if (h<4) if (codigo==1) clave[h]=tecla; lcd_puts_intr("*"); h++; if (aux3==1)
ANEXOS 211
clave1[h]=tecla; lcd_puts_intr("*"); h++; if (m<9) if (num==1) telefono[m]=tecla; lcd_putch_intr(tecla); m++; if (q<4) if (aux_hora==1) hora[q]=tecla; lcd_putch_intr(tecla); if (q==1) lcd_puts_intr(":"); q++; void serial_putch(unsigned char c) while(!TRMT) // TRMT1 is set when TSR is empty continue; TXREG = c; // load the register void serial_puts(const char * s) while(*s) serial_putch(*s++); void sistema_activado (void) lcd_clear_intr(); lcd_puts_intr("Sistema Activado"); for(f=0;f<=250;f++) for(g=0;g<=26;g++) DelayUs(250); codigo=0; h=0; *clave=0; aux1=1; lcd_clear_intr(); lcd_puts_intr("1.DESACTIVACION"); void sistema_apagado(void) lcd_clear_intr(); lcd_puts_intr("Sistema Apagado");
ANEXOS 212
for(f=0;f<=250;f++) for(g=0;g<=25;g++) DelayUs(250); codigo=0; h=0; *clave=0; aux1=0; lcd_clear_intr(); lcd_puts_intr("1.ACTIVACION"); lcd_goto_intr(0x28); lcd_puts_intr("2.CONFIGURACION"); void sistema_activado1(void) if (activ_1==1) activ_1=0; codigo=0; h=0; *clave=0; aux1=1; lcd_clear_intr(); lcd_puts_intr("1.DESACTIVACION"); void sistema_apagado1(void) if (activ_1==0) activ_1=1; codigo=0; h=0; *clave=0; aux1=0; lcd_clear_intr(); lcd_puts_intr("1.ACTIVACION"); lcd_goto_intr(0x28); lcd_puts_intr("2.CONFIGURACION");
ANEXOS 213
ANEXO 13
Programa de Periféricos
ANEXOS 214
'**************************************************************** '* Name : PERIFERICOS CONTROLA SENSORES * '* Author : KARLA ACOSTA * '* Notice : Copyright (c) 2008 2008-01 * '* : All Rights Reserved * '* Date : 25/01/2008 * '* Version : 1.0 * '**************************************************************** 'OJO 'PORTA.4 NO VALE '@ ERRORLEVEL -306 ; turn off crossing page boundary message 'DEFINE PARA SERIAL DEFINE OSC 20 ' Oscillator DEFINE HSER_BAUD 2400 ' Hser baud rate DEFINE HSER_SPBRG 129 ' Hser spbrg init DEFINE HSER_RCSTA 90h ' Set receive register to receiver enabled DEFINE HSER_TXSTA 20h ' Set transmit register to transmitter enabled '********************************************************************* 'INICIALIZACIONES DE REGISTROS ADCON1 = %00000110 TRISE.4 = 0 'Configuración de PUERTOS SPBRG = 129 ' Set baud rate 2400MHZ con un osc 20MHz con'BRGH = 0 TRISA = %00000000 TRISB = %11111111 TRISC = %11111111 TRISD = %00000011 TRISE = %00000000 'Variables 'ENTRADAS SIMULADOR VAR PORTD.0 ALARMA VAR PORTD.1 'Focos - SALIDAS F1 VAR PORTD.3 F2 VAR PORTD.4 F3 VAR PORTD.5 F4 VAR PORTD.6 F5 VAR PORTD.7 F6 VAR PORTE.0 F7 VAR PORTE.1 'Sensores de Movimento - ENTRADAS SM1 VAR PORTB.3 SM2 VAR PORTB.4 SM3 VAR PORTB.5 SM4 VAR PORTB.6 SM5 VAR PORTB.7 'Sensores de Puertas - ENTRADAS P1 VAR PORTB.0 P2 VAR PORTB.1 P3 VAR PORTB.2 P4 VAR PORTC.0
ANEXOS 215
'Sensores de Ventanas - ENTRADAS V1 VAR PORTC.1 V2 VAR PORTC.2 V3 VAR PORTC.3 V4 VAR PORTC.4 V5 VAR PORTC.5 V6 VAR PORTC.6 V7 VAR PORTC.7 'ZONAS - SALIDAS Z1 VAR PORTA.0 Z2 VAR PORTA.1 Z3 VAR PORTA.2 Z4 VAR PORTA.3 'AUXILIARES A_F1 VAR BYTE A_F2 VAR BYTE A_F3 VAR BYTE A_F4 VAR BYTE A_F5 VAR BYTE A_F6 VAR BYTE A_F7 VAR BYTE RECIBIR_DAT VAR PORTD.2 'CONTADORES AUX VAR BYTE 'Enciende el led de funcionamiento CONT_SM1 VAR byte CONT_SM2 VAR BYTE CONT_SM3 VAR BYTE TIEMPO1 VAR WORD TIEMPO2 VAR WORD TIEMPO3 VAR WORD TIEMPO4 VAR WORD TIEMPO5 VAR WORD TIEMPO6 VAR WORD TIEMPO7 VAR WORD AUXT1 VAR WORD AUXT2 VAR WORD AUXT3 VAR WORD AUXT4 VAR WORD AUXT5 VAR WORD AUXT6 VAR WORD AUXT7 VAR WORD SIM1 VAR BYTE ' Para que solo se prenda un foco a la vez SIM2 VAR BYTE ' Para que solo se prenda un foco a la vez AUX_SIM3 VAR BYTE ' Señal que indica a que hora empieza la simulacion VEL CON 396 N_F VAR BYTE[1] ' Señal que llega desde la central F_F VAR BYTE[1] ' Señal que llega desde la central 'INICIALIZACIONES DE VARIABLES
ANEXOS 216
AUX = 0 A_F1 = 1 A_F2 = 1 A_F3 = 1 A_F4 = 1 A_F5 = 1 A_F6 = 1 A_F7 = 1 RANDOM AUXT1 RANDOM AUXT2 RANDOM AUXT3 RANDOM AUXT4 RANDOM AUXT5 RANDOM AUXT6 RANDOM AUXT7 SIM1 = 0 SIM2 = 0 'INICIALIZO TIEMPOS TIEMPO1 = 1 TIEMPO2 = 1 TIEMPO3 = 1 TIEMPO4 = 1 TIEMPO5 = 1 TIEMPO6 = 1 TIEMPO7 = 1 PORTA = %00100000 PORTB = %11111111 PORTC = %11111111 PORTD = %11111000 'APAGO TODOS LOS FOCOS (LOGICA INVERSA) F1 = 1 : F2 = 1 : F3 = 1 : F4 = 1 : F5 = 1 : F6 = 1 : F7 = 1 'INICIO INICIO: RECIBIR_DAT = 1 SERIN2 PORTE.2,VEL,80,CONTINUACION,[WAIT ("F"),str N_F\1,STR F_F\1] ' ESPERO AQUE EL PANEL ENVIE DATOS GOSUB ACCION CONTINUACION: RECIBIR_DAT = 0 'IDENTIFICAR QUE ESTA CORRIENDO EL PIC AUX=AUX+1 IF AUX == 10 THEN TOGGLE PORTA.5 : AUX = 0 'SEROUT2 PORTE.2, VEL, ["AUXT3: ",DEC AUXT3," TIEMPO3: ",DEC TIEMPO3," AUXT6: ",DEC AUXT6," TIEMPO6: ",DEC TIEMPO6," AUXT7: ",DEC AUXT7," TIEMPO7: ",DEC TIEMPO7,13,10,"CONT_SM2: ",DEC CONT_SM2,13,10] IF F1 == 0 THEN TIEMPO1 = TIEMPO1 + 1 IF F2 == 0 THEN TIEMPO2 = TIEMPO2 + 1 IF F3 == 0 THEN TIEMPO3 = TIEMPO3 + 1 IF F4 == 0 THEN TIEMPO4 = TIEMPO4 + 1 IF F5 == 0 THEN TIEMPO5 = TIEMPO5 + 1 IF F6 == 0 THEN TIEMPO6 = TIEMPO6 + 1
ANEXOS 217
IF F7 == 0 THEN TIEMPO7 = TIEMPO7 + 1 IF TIEMPO1 >= AUXT1 THEN F1 = 1 : TIEMPO1 = 1 : RANDOM AUXT1 : SIM1 = 0 IF TIEMPO2 >= AUXT2 THEN F2 = 1 : TIEMPO2 = 1 : RANDOM AUXT2 : SIM1 = 0 IF TIEMPO3 >= AUXT3 THEN F3 = 1 : TIEMPO3 = 1 : RANDOM AUXT3 : SIM2 = 0 : SIM1 = 0 IF TIEMPO4 >= AUXT4 THEN F4 = 1 : TIEMPO4 = 1 : RANDOM AUXT4 : SIM1 = 0 IF TIEMPO5 >= AUXT5 THEN F5 = 1 : TIEMPO5 = 1 : RANDOM AUXT5 : SIM1 = 0 IF TIEMPO6 >= AUXT6 THEN F6 = 1 : TIEMPO6 = 1 : RANDOM AUXT6 : SIM2 = 0 : SIM1 = 0 IF TIEMPO7 >= AUXT7 THEN F7 = 1 : TIEMPO7 = 1 : RANDOM AUXT7 : SIM2 = 0 IF (SIMULADOR == 1) and (ALARMA == 1) THEN IF SM1 == 0 THEN GOSUB SIMULADOR1 IF SM2 == 0 THEN GOSUB SIMULADOR2 GOSUB SIMULADOR3 ELSE ENDIF IF ALARMA == 1 THEN IF SM2 == 0 THEN GOSUB SIMULADOR2 if sm1 == 0 THEN Z1 = 1 IF SM3 == 0 THEN Z2 = 1 IF SM4 == 0 THEN Z3 = 1 IF SM5 == 0 THEN Z4 = 1 ' IF (SM3 == 0) OR (P1 == 0) OR (V1 == 0) THEN Z1 = 1 ' IF (SM4 == 0) OR (P2 == 0) OR (V2 == 0) OR (P3 == 0) THEN Z2 = 1 ' IF (SM5 == 0) OR (P4 == 0) OR (V3 == 0) OR (V4 == 0) THEN Z3 = 1 ' IF (V5 == 0) OR (V6 == 0) OR (V7 == 0) THEN Z4 = 1 ELSE Z1 = 0 : Z2 = 0 : Z3 = 0 : Z4 = 0 F1 = 1 : F2 = 1 : F3 = 1 : F4 = 1 : F5 = 1 : F6 = 1 : F7 = 1 TIEMPO1 = 1 : TIEMPO2 = 1 : TIEMPO3 = 1 : TIEMPO4 = 1 TIEMPO5 = 1 : TIEMPO6 = 1 : TIEMPO7 = 1 SIM1 = 0 : SIM2 = 0 ENDIF GOTO INICIO END '*****AQUI SE ACABA EL PROGRAMA******************************** '***********SUBRUTINAS*********** SIMULADOR1: IF (A_F1 == 0) AND (A_F2 == 0) AND (A_F3 == 0) AND (A_F4 == 0) AND (A_F5 == 0) AND (A_F6 == 0) THEN GOTO FIN1 ELEGIR1: RANDOM CONT_SM1 CONT_SM1 = CONT_SM1 // 6 CONT_SM1 = CONT_SM1 + 1 if (A_F1 == 0) AND (CONT_SM1 == 1) THEN GOTO ELEGIR1 if (A_F2 == 0) AND (CONT_SM1 == 2) THEN GOTO ELEGIR1 if (A_F3 == 0) AND (CONT_SM1 == 3) THEN GOTO ELEGIR1
ANEXOS 218
if (A_F4 == 0) AND (CONT_SM1 == 4) THEN GOTO ELEGIR1 if (A_F5 == 0) AND (CONT_SM1 == 5) THEN GOTO ELEGIR1 if (A_F6 == 0) AND (CONT_SM1 == 6) THEN GOTO ELEGIR1 IF SIM1 == 0 THEN SIM1 = 1 IF CONT_SM1 == 1 THEN repeat RANDOM AUXT1 AUXT1 = AUXT1 // 300 until AUXT1 > 30 F1 = 0 ELSE ENDIF IF CONT_SM1 == 2 THEN repeat RANDOM AUXT2 AUXT2 = AUXT2 // 300 until AUXT2 > 30 F2 = 0 ELSE ENDIF IF CONT_SM1 == 3 THEN repeat RANDOM AUXT3 AUXT3 = AUXT3 // 300 until AUXT3 > 30 F3 = 0 ELSE ENDIF IF CONT_SM1 == 4 THEN repeat RANDOM AUXT4 AUXT4 = AUXT4 // 300 until AUXT4 > 30 F4 = 0 ELSE ENDIF IF CONT_SM1 == 5 THEN repeat RANDOM AUXT5 AUXT5 = AUXT5 // 300 until AUXT5 > 30 F5 = 0 ELSE ENDIF IF CONT_SM1 == 6 THEN repeat RANDOM AUXT6 AUXT6 = AUXT6 // 300 until AUXT6 > 30 F6 = 0 ELSE ENDIF
ANEXOS 219
ELSE SIM1 = 1 ENDIF FIN1: RETURN SIMULADOR2: IF A_F3 == 0 AND A_F6 == 0 AND A_F7 == 0 THEN GOTO FIN2 ELEGIR2: RANDOM CONT_SM2 CONT_SM2 = CONT_SM2 // 3 CONT_SM2 = CONT_SM2 + 1 if A_F3 == 0 AND CONT_SM2 == 3 THEN GOTO ELEGIR2 if A_F6 == 0 AND CONT_SM2 == 6 THEN GOTO ELEGIR2 if A_F7 == 0 AND CONT_SM2 == 7 THEN GOTO ELEGIR2 IF SIM2 == 0 THEN SIM2 = 1 IF CONT_SM2 == 1 THEN repeat RANDOM AUXT3 AUXT6 = AUXT3 // 300 until AUXT3 > 30 F3 = 0 ELSE ENDIF IF CONT_SM2 == 2 THEN repeat RANDOM AUXT6 AUXT6 = AUXT6 // 300 until AUXT6 > 30 F6 = 0 ELSE ENDIF IF CONT_SM2 == 3 THEN repeat RANDOM AUXT7 AUXT7 = AUXT7 // 300 until AUXT7 > 30 F7 = 0 ELSE ENDIF ELSE SIM2 = 1 ENDIF FIN2: RETURN SIMULADOR3: IF (A_F1==0) AND (A_F2==0) AND (A_F3==0) AND (A_F4==0) AND (A_F5==0) AND (A_F6==0) AND (A_F7==0) THEN GOTO FIN3 ELEGIR3: RANDOM CONT_SM3 CONT_SM3 = CONT_SM3 // 7
ANEXOS 220
CONT_SM3 = CONT_SM3 + 1 if (A_F1 == 0) AND (CONT_SM3) == 1 THEN GOTO ELEGIR3 if (A_F2 == 0) AND (CONT_SM3) == 2 THEN GOTO ELEGIR3 if (A_F3 == 0) AND (CONT_SM3) == 3 THEN GOTO ELEGIR3 if (A_F4 == 0) AND (CONT_SM3) == 4 THEN GOTO ELEGIR3 if (A_F5 == 0) AND (CONT_SM3) == 5 THEN GOTO ELEGIR3 if (A_F6 == 0) AND (CONT_SM3) == 6 THEN GOTO ELEGIR3 if (A_F7 == 0) AND (CONT_SM3) == 7 THEN GOTO ELEGIR3 IF CONT_SM3 == 1 THEN F1 = 0 IF CONT_SM3 == 2 THEN F2 = 0 IF CONT_SM3 == 3 THEN F3 = 0 IF CONT_SM3 == 4 THEN F4 = 0 IF CONT_SM3 == 5 THEN F5 = 0 IF CONT_SM3 == 6 THEN F6 = 0 IF CONT_SM3 == 7 THEN F7 = 0 FIN3: RETURN ACCION: SELECT CASE F_f CASE "1" F_F = 1 CASE "0" F_F = 0 END SELECT SELECT CASE N_F CASE "1" A_F1 = F_F CASE "2" A_F2 = F_F CASE "3" A_F3 = F_F CASE "4" A_F4 = F_F CASE "5" A_F5 = F_F CASE "6" A_F6 = F_F CASE "7" A_F7 = F_F END SELECT RETURN
ÍNDICE DE FIGURAS 221
ÍNDICE DE FIGURAS
Figura. 1.1. Pilares básicos de la domótica............................................................ 6
Figura. 1.2. Domoportero ....................................................................................... 8
Figura. 1.3. Simulador de presencia..................................................................... 10
Figura. 2.1. Módulo Siemens XT55, Tribanda GSM/GPRS.................................. 16
Figura. 2.2. Arquitectura del sistema GSM........................................................... 17
Figura. 2.3. Modo comando.................................................................................. 23
Figura. 2.4. Modo en línea ................................................................................... 23 Figura. 3.1. Sensor de movimiento TALON TLC-15............................................. 27
Figura. 3.2. Contacto magnético MSC-1102 ........................................................ 28
Figura. 3.3. Diagrama general del microcontrolador 18F442 ............................... 30
Figura. 3.4. Diagrama general del microcontrolador 16F877A............................. 31
Figura. 3.5. Cobertura del alcance del sensor de movimiento.............................. 36
Figura. 3.6. Ángulo de detección del lente del sensor de movimiento.................. 37
Figura. 3.7. Contactos magnéticos....................................................................... 38
Figura. 3.8. Sistema lazo abierto.......................................................................... 39
Figura. 3.9. Sistema lazo cerrado......................................................................... 40
Figura. 3.10. Diagrama de bloques del hardware de control ................................ 41
Figura. 3.11. Conector MODEM celular Nokia 3220 ............................................ 43
Figura. 3.12. Esquema de comunicación controlador – MODEM......................... 45
Figura. 3.13. Configuración para la operación con cristal .................................... 46
Figura. 3.14. Circuito recomendado para el MCRL .............................................. 48
Figura. 3.15. Diagrama de flujo central ................................................................ 54
Figura. 3.16. Diagrama de flujo del sistema activado........................................... 58
Figura. 3.17. Diagrama de flujo del sistema penetrado ........................................ 61
Figura. 3.18. Diagrama de flujo para enviar SMS................................................. 62
Figura. 3.19. Diagrama de flujo del domoportero ................................................. 64
ÍNDICE DE FIGURAS 222
Figura. 3.20. Diagrama de flujo para cambiar la clave ......................................... 65
Figura. 3.21. Diagrama de flujo para cambio de teléfonos ................................... 65
Figura. 3.22. Diagrama de flujo de activación / desactivación focos .................... 66
Figura. 3.23. Diagrama de flujo para activación / desactivación zonas ................ 67
Figura. 3.24. Diagrama de flujo del simulador de presencia ................................ 68
Figura. 3.25. Conexiones de los periféricos ......................................................... 69
Figura. 3.26. Conexiones del panel...................................................................... 71
Figura. 3.27. Programador PICkit 2...................................................................... 72
Figura. 3.28. Diagrama de flujo de la etapa de potencia ...................................... 73
Figura. 3.29. Diagrama de conexiones de la etapa de potencia........................... 74
Figura. 3.30. Placa terminada del panel de control .............................................. 76
Figura. 3.31. Placa terminada de periféricos........................................................ 77
Figura. 3.32. Placa terminada de la central del sistema....................................... 77 Figura. 4.1. Ubicación de la central del sistema................................................... 84
Figura. 4.2. Tuberías instaladas en planta baja.................................................... 85
Figura. 4.3. Cajetín para panel de control ............................................................ 86
Figura. 4.4. Instalación de cableado para sensores de movimiento..................... 87
Figura. 4.5. Cables de luminarias en la central .................................................... 87
Figura. 4.6. Remover la cubierta frontal ............................................................... 89
Figura. 4.7. Distribución de huecos para cableado y soporte............................... 90
Figura. 4.8. Conexiones del sensor de movimiento.............................................. 90
Figura. 4.9. Sensor de movimiento instalado ....................................................... 91
Figura. 4.10. Ubicación típica de los contactos magnéticos................................. 92
Figura. 4.11. Diagrama de ubicación del contacto magnético.............................. 93
Figura. 4.12. Contacto magnético instalado ......................................................... 93
Figura. 4.13. Caja empotrada............................................................................... 94
Figura. 4.14. Conexión de la placa de calle ......................................................... 95
Figura. 4.15. Esquema de básico de montaje ...................................................... 95
Figura. 4.16. Conector de la placa de calle .......................................................... 95
Figura. 4.17. Placa de calle empotrada................................................................ 96
Figura. 4.18. Instalación del soporte del citófono ................................................. 97
Figura. 4.19. ......................................................................................................... 97
Figura. 4.20. Conexión citófono A ........................................................................ 99
Figura. 4.21. Colocar citófono en soporte ............................................................ 99
ÍNDICE DE FIGURAS 223
Figura. 4.22. Conexión portero........................................................................... 100
Figura. 4.23. Citófono colocado en soporte y conectado ................................... 100
Figura. 4.24. Conexión del teclado al panel ....................................................... 101
Figura. 4.25. Conexión LCD al panel ................................................................. 101
Figura. 4.26. LCD y teclado conectados al panel ............................................... 101
Figura. 4.27. Conexión cable de datos con central ............................................ 102
Figura. 4.28. Tapa de la caja del panel de control.............................................. 103
Figura. 4.29. LCD y teclado montado en la tapa establecida ............................. 103
Figura. 4.30. Panel empotrado e instalado......................................................... 103
Figura. 4.31. Conexión placa central y placa periféricos .................................... 104
Figura. 4.32. Conexión panel de control a la central .......................................... 105
Figura. 4.33. Conexión sensores de movimiento ............................................... 105
Figura. 4.34. Conexión de contactos magnéticos............................................... 106
Figura. 4.35. Placa conectada............................................................................ 106
Figura. 4.36. Conexión de luminarias................................................................. 107
Figura. 5.1. Envío correcto de datos del PIC hacia el LCD ................................ 111
Figura. 5.2. Funcionamiento de teclado ............................................................. 111
Figura. 5.3. Envío de datos del panel de control ................................................ 112
Figura. 5.4. Activación / desactivación de reles.................................................. 112
Figura. 5.5. Comunicación con el Módem mediante cable DKU-5 ..................... 113
Figura. 5.6. Funcionamiento de reles e interconexión entre PIC’s con programa de
prueba ................................................................................................................ 113
Figura. 5.7. Funcionamiento correcto entre el panel y la central ........................ 114
Figura. 5.8. Sistema activado............................................................................. 115
Figura. 5.9. Sistema armado .............................................................................. 115
Figura. 5.10. Cambio de clave y teléfonos del sistema ...................................... 115
Figura. 5.11. Configuración del simulador de presencia y sistema de seguridad116
Figura. 5.12. Cambio de hora............................................................................. 116
Figura. 5.13.a. Mensaje recibido ........................................................................ 117
Figura. 5.13.b. Mensaje leído ............................................................................. 117
Figura. 5.14. Realización de llamadas ............................................................... 117
ÍNDICE DE TABLAS 224
ÍNDICE DE TABLAS
Tabla. 2.1. Comparación entre diferentes generaciones de servicios móviles. .... 15
Tabla. 2.2. Estándares de modulación ................................................................. 20
Tabla. 3.1. Especificaciones técnicas de los sensores de movimiento ................ 27
Tabla. 3.2. Especificaciones técnicas de los contactos de puertas y ventanas.... 28
Tabla. 3.3. Características microcontrolador 18F442........................................... 30
Tabla. 3.4. Características microcontrolador 16F877A ........................................ 31
Tabla. 3.5. Configuración de bits comunicación serial ......................................... 42
Tabla. 3.6. Pines Nokia 3220 ............................................................................... 44
Tabla. 3.7. Selección del capacitor para un determinado cristal .......................... 47
Tabla. 3.8. Pines de inicialización del sistema ..................................................... 56
Tabla. 3.9. Elementos para la central................................................................... 79
Tabla. 3.10. Elementos para el panel................................................................... 80
Tabla. 3.11. Elementos de periféricos .................................................................. 80
Tabla. 3.12. Costo de la instalación de tuberías................................................... 81
Tabla. 3.13. Costo de la instalación de cableado................................................. 81
Tabla. 3.14. Costo de la instalación de sensores y puesta en marcha del sistema
............................................................................................................................. 82
Tabla. 3.15. Elementos varios .............................................................................. 82
Tabla. 3.16. Costo del proyecto............................................................................ 83
Tabla. 4.1. Conectores placa de calle .................................................................. 96
Tabla. 4.2. Conectores citófono A ........................................................................ 98
Tabla. 4.3. Conectores citófono B ........................................................................ 98
Tabla. 4.4. Conectores panel de control............................................................. 102
ÍNDICE DE DATASHEETS 225
ÍNDICE DE DATASHEETS
OPTOACOPLADOR PC-817…………………………………………………………......226
BUFFER 74N244…….…………………………………………………………………..231
TRANSISTOR DARLINGTON ULN2803........…….………………………………………236
DATASHEETS 226
DATASHEET 1
Optoacoplador PC-817
PC817 Series
PC817 Series High Density Mounting TypePhotocoupler
Features1. Current transfer ratio
2. High isolation voltage between input and
3. Compact dual-in-line package
Applications1. Computer terminals2. System appliances, measuring instruments3. Registers, copiers, automatic vending
4. Electric home appliances, such as fan output ( Viso
machines
heaters, etc.
Outline Dimensions ( Unit : mm)
data books, etc. Contact SHARP in order to obtain the latest version of the device specification sheets before using any SHARP's device.”“ In the absence of confirmation by device specification sheets, SHARP takes no responsibility for any defects that occur in equipment using any of SHARP's devices, shown in catalogs,
4. Recognized by UL, file No. E64380
θθ
PC847diagramInternal connection
PC
817
Ano
de m
ark
PC
817
PC
817
PC
817
PC
817
PC
817
Ano
de m
ark
PC
817
Internal connectiondiagram
PC837
PC827P
C81
7
PC
817
PC
817
PC817
1 2
4 3
1 2
34
θθ
1 Anode
2 Cathode
3 Emitter4 Collector
θ = 0 to 13 ˚
1 2 3 4
5678
1 2 3 4
5678
1 3 Anode2 4 Cathode5 7 Emitter6 8 Collector
Anodemark
θ θ
θ= 0 to 13 ˚
1 2 3 4 5 6 7 8
9
1
9
1 3 5 7 Anode2 4 6 8 Cathode
θ θ
θ = 0 to 13 ˚
1 2 3 4 5 6
789
1 2 3 4 5 6
789
1 3 5 Anode2 4 6 Cathode7 9 Emitter8 Collector
θ = 0 to 13 ˚9 Emitter
Collector
Internal connection diagram Internal connection diagram
PC817 : 1-channel type PC827 : 2-channel type PC837 : 3-channel type PC847 : 4-channel type
5. Signal transmission between circuits of different potentials and impedances
Anode mark
TUV ( VDE0884 ) approved type is also available as an option.
( CTR: MIN. 50% at I F = 5mA ,VCE=5V)
CTRrank mark
Lead forming type ( I type ) and taping reel type ( P type ) are also available. (PC817I/PC817P )
: 5 000V rms )
4.58 ± 0.5
3.5
±0.
53.
0±
0.5
0.5 ± 0.1
7.62 ± 0.3
0.26 ± 0.1
1.2 ± 0.30.9 ± 0.2
6.5
±0.
5
2.54 ± 0.25
2.7
±0.
5
0.5T
YP
.
2.54 ± 0.25
6.5
±0.
5
0.9 ± 0.2
1.2 ± 0.3
9.66 ± 0.5
3.5
±0.
53.
0±
0.5
0.5T
YP
.
0.5 ± 0.1
2.7
±0.
5
0.26 ± 0.1
7.62 ± 0.3
2.54 ± 0.25
6.5
±0.
5
0.9 ± 0.2
1.2 ± 0.3
19.82 ± 0.5
3.5
±0.
53.
0±
0.5
0.5T
YP
.
0.5 ± 0.1
2.7
±0.
5
0.26 ± 0.1
7.62 ± 0.3
2.54 ± 0.25
6.5
±0.
5
0.9 ± 0.2
1.2 ± 0.3
14.74 ± 0.5
0.5T
YP
.
3.5
±0.
53.
0±
0.5
0.5 ± 0.1
2.7
±0.
2
0.26 ± 0.1
7.62 ± 0.3
..
1111
1212
11
12
111213141516 111213141516
11
12
13
14
15
16
1010
2 3 4 5 6 7 8
10
1010
10
*1 Pulse width <=100µs, Duty ratio : 0.001
*3 For 10 seconds
Parameter Symbol Rating Unit
Input
Forward current IF 50 mA*1Peak forward current I FM 1 A
Reverse voltage V R 6 V
Power dissipation P 70 mW
Output
Collector-emitter voltage V CEO 35 V
Emitter-collector voltage V ECO 6 V
Collector current IC 50 mA
Collector power dissipation P C 150 mW
Total power dissipation P tot 200 mW*2Isolation voltage V iso
Operating temperature T opr - 30 to + 100 ˚C
Storage temperature T stg - 55 to + 125 ˚C*3Soldering temperature T sol 260 ˚C
*4 Classification table of current transfer ratio is shown below.
PC817 Series
Absolute Maximum Ratings
Electro-optical Characteristics
Model No. CTR ( % )
PC817APC817BPC817CPC817D
Rank mark
A
B
C
D
A or B
B or C
C or D
A, B or C
B, C or D
A, B, C or D
80 to 160
130 to 260
200 to 400
300 to 600
80 to 260
130 to 400
200 to 600
80 to 400
130 to 600
80 to 600
50 to 600A, B, C, D or No mark0- 25
30
0 25 50 75 100 125
40
50
60
20
10
Fig. 1 Forward Current vs. Ambient Temperature
Ambient temperature Ta (˚C)
( Ta= 25˚C)
( Ta= 25˚C)
Forw
ard
curr
ent I
F (
mA
)
5 000
*2 40 to 60% RH, AC for 1 minute
Parameter Symbol Conditions MIN. TYP. MAX. Unit
Input
Forward voltage V F IF = 20mA - 1.2 1.4 V
Peak forward voltage V FM IFM = 0.5A - - 3.0 V
Reverse current IR VR = 4V - - 10 µ A
Terminal capacitance Ct V = 0, f = 1kHz - 30 250 pF
Output Collector dark current ICEO VCE = 20V - - 10 - 7 A
Transfercharac-teristics
*4Current transfer ratio CTR IF = 5mA, V CE = 5V 50 - 600 %
Collector-emitter saturation voltage V CE(sat) IF = 20mA, I C = 1mA - 0.1 0.2 V
Isolation resistance R ISO DC500V, 40 to 60% RH 5 x 1010 1011 - ΩFloating capacitance Cf V = 0, f = 1MHz - 0.6 1.0 pF
Cut-off frequency fc VCE = 5V, I C = 2mA, R L = 100 Ω, - 3dB - 80 - kHz
Response timeRise time t r
VCE = 2V, I C = 2mA, R L = 100 Ω- 4 18 µ s
- 3 18 µ sFall time tf
V rms
PC87ABPC87BCPC87CDPC87ACPC87BDPC87ADPC8 7
: 1 or 2 or 3 or 4
Duty ratio
55
Pulse width <=100 µ s
10
20
100
50
200
500
210 - 3 10 - 25 2 10 - 15 2 5
Fig. 3 Peak Forward Current vs. Duty Ratio
01
Cur
rent
tran
sfer
rat
io C
TR
(%
)
200
2 5 10 20 50
160
120
80
40
20
60
100
140
180
100
0
50
150
0 25 50 75 100
Rel
ativ
e cu
rren
t tra
nsfe
r ra
tio (
%)
Fig. 7 Relative Current Transfer Ratio vs. Ambient Temperature
00
5
1
10
15
20
25
30
2 3 4 5 6 7 8 9
20mA
10mA
5mA
Fig. 6 Collector Current vs. Collector-emitter Voltage
Peak
for
war
d cu
rren
t IFM
(m
A)
Fig. 4 Current Transfer Ratio vs. Forward Current
Forward current I F ( mA )
Col
lect
or c
urre
nt I
C (
mA
)
Collector-emitter voltage V CE (V) Ambient temperature T a (˚C)
00 125
100
200
50
150
25 50 75 100
Ambient Temperature
C (
mW
)
- 30
Fig. 2 Collector Power Dissipation vs.
PC817 Series
a (˚C)
Col
lect
or p
ower
dis
sipa
tion
P
Ambient temperature T
1
VCE = 5V
IF = 30mA
PC(MAX.)
IF = 5mAVCE = 5V
Fig. 5 Forward Current vs. Forward Voltage
10 000
5 000
2 000
1 000
Ta = 25˚C
Ta = 25˚C50˚C 25˚C
0˚C
0
2
0.5 1.0 1.5 2.0 2.5 3.0 3.5
5
10
20
50
100
200
500
1
- 25˚C
Ta = 75˚CFo
rwar
d cu
rren
t IF
(m
A)
Forward voltage V F ( V)
- 30
Ta= 25˚C
0
0.02
- 25 0 25 50 75 100
0.04
0.06
0.08
0.10
0.12
0.14
0.16
Fig. 8 Collector-emitter Saturation Voltage vs. Ambient Temperature
250 50 75 100
Col
lect
or d
ark
curr
ent I
CE
O( A
)
Fig.11 Frequency Response
Frequency f (kHz )
-20
0
0.5 1 2 5
-10
200100502010 500
1k Ω100 Ω
Fig. 9 Collector Dark Current vs.C
E( s
at)
( V)
Ambient Temperature
Vol
tage
gai
n A
v( d
B)
0.2
0.1
0.5
Res
pons
e tim
e ( µ
s)
1
2
0.1 1 10
5
10
20
50
100
200
500
L (k Ω )
Col
lect
or-e
mitt
er s
atur
atio
n vo
ltage
VC
E( s
at)
( V)
Forward current I F ( mA )
00
1
2
3
4
5
5 10
6
15
7mA
Fig.12 Collector-emitter Saturation Voltage vs. Forward Current
PC817 Series
Test Circuit for Response Time
VCC
ttr
ts90%
10%
td
Output
Input
RLInput OutputRD
VCC
RL OutputRD
Test Circuit for Frepuency Response
Col
lect
or-e
mitt
er s
atur
atio
n vo
ltage
V
Ambient temperature T a (˚C)
f
IF = 20mA
IC = 1mA
10 - 11
10 - 10
10 - 9
10 - 8
10 - 7
10 - 6
10 - 5
- 25
VCE = 20V
Ambient temperature T a (˚C)
t r
t f
t s
t d
VCE = 2V
IC = 2mA
Ta = 25˚C
RL = 10k Ω
VCE = 2V
1mA
3mA
5mA
Ta = 25˚C
IC = 2mA
IC = 0.5mA
Ta = 25˚C
Please refer to the chapter “Precautions for Use ”
Fig.10 Response Time vs. Load Resistance
Load resistance R
DATASHEET 231
DATASHEET 2
Buffer 74N244
5-1
FAST AND LS TTL DATA
OCTAL BUFFER/LINE DRIVERWITH 3-STATE OUTPUTS
The SN54/74LS240, 241 and 244 are Octal Buffers and Line Driversdesigned to be employed as memory address drivers, clock drivers andbus-oriented transmitters/receivers which provide improved PC boarddensity.
• Hysteresis at Inputs to Improve Noise Margins• 3-State Outputs Drive Bus Lines or Buffer Memory Address Registers• Input Clamp Diodes Limit High-Speed Termination Effects
LOGIC AND CONNECTION DIAGRAMS DIP (TOP VIEW)
18 17 16 15 14 13
1 2 3 4 5 6 7
20 19
8
VCC
1G
2G 1Y1 2A4 1Y2 1Y32A3 2A2
1A1 2Y4 1A2 2Y3 1A3 2Y2 1A49 10
2Y1 GND
12 11
1Y4 2A1
18 17 16 15 14 13
1 2 3 4 5 6 7
20 19
8
VCC
1G
2G 1Y1 2A4 1Y2 1Y32A3 2A2
1A1 2Y4 1A2 2Y3 1A3 2Y2 1A49 10
2Y1 GND
12 11
1Y4 2A1
18 17 16 15 14 13
1 2 3 4 5 6 7
20 19
8
VCC
1G
2G 1Y1 2A4 1Y2 1Y32A3 2A2
1A1 2Y4 1A2 2Y3 1A3 2Y2 1A49 10
2Y1 GND
12 11
1Y4 2A1
SN54/74LS240
SN54/74LS241
SN54/74LS244
SN54/74LS240SN54/74LS241SN54/74LS244
OCTAL BUFFER/LINE DRIVERWITH 3-STATE OUTPUTS
LOW POWER SCHOTTKY
ORDERING INFORMATION
SN54LSXXXJ CeramicSN74LSXXXN PlasticSN74LSXXXDW SOIC
20
1
J SUFFIXCERAMIC
CASE 732-03
20
1
N SUFFIXPLASTIC
CASE 738-03
20
1
DW SUFFIXSOIC
CASE 751D-03
5-2
FAST AND LS TTL DATA
SN54/74LS240 • SN54/74LS241 • SN54/74LS244
TRUTH TABLES
SN54/74LS240
INPUTSOUTPUT
1G, 2G DOUTPUT
LLH
LHX
HL
(Z)
SN54/74LS244
INPUTSOUTPUT
1G, 2G DOUTPUT
LLH
LHX
LH(Z)
SN54/74LS241
INPUTSOUTPUT
INPUTSOUTPUT
1G DOUTPUT
2G DOUTPUT
LLH
LHX
LH(Z)
HHL
LHX
LH(Z)
H = HIGH Voltage LevelL = LOW Voltage LevelX = ImmaterialZ = HIGH Impedance
GUARANTEED OPERATING RANGES
Symbol Parameter Min Typ Max Unit
VCC Supply Voltage 5474
4.54.75
5.05.0
5.55.25
V
TA Operating Ambient Temperature Range 5474
–550
2525
12570
°C
IOH Output Current — High 54, 74 –3.0 mA
5474
–12–15
mA
IOL Output Current — Low 5474
1224
mA
5-3
FAST AND LS TTL DATA
SN54/74LS240 • SN54/74LS241 • SN54/74LS244
DC CHARACTERISTICS OVER OPERATING TEMPERATURE RANGE (unless otherwise specified)
S b l P
Limits
U i T C di iSymbol Parameter Min Typ Max Unit Test Conditions
VIH Input HIGH Voltage 2.0 VGuaranteed Input HIGH Voltage forAll Inputs
VIL Input LOW Voltage54 0.7
VGuaranteed Input LOW Voltage for
VIL Input LOW Voltage74 0.8
Vp g
All Inputs
VT+–VT– Hysteresis 0.2 0.4 V VCC = MIN
VIK Input Clamp Diode Voltage –0.65 –1.5 V VCC = MIN, IIN = –18 mA
VOH Output HIGH Voltage54, 74 2.4 3.4 V VCC = MIN, IOH = –3.0 mA
VOH Output HIGH Voltage54, 74 2.0 V VCC = MIN, IOH = MAX
VOL Output LOW Voltage54, 74 0.25 0.4 V IOL = 12 mA VCC = VCC MIN,
VIN = VIL or VIHVOL Output LOW Voltage74 0.35 0.5 V IOL = 24 mA
VIN = VIL or VIHper Truth Table
IOZH Output Off Current HIGH 20 µA VCC = MAX, VOUT = 2.7 V
IOZL Output Off Current LOW –20 µA VCC = MAX, VOUT = 0.4 V
IIH Input HIGH Current20 µA VCC = MAX, VIN = 2.7 V
IIH Input HIGH Current0.1 mA VCC = MAX, VIN = 7.0 V
IIL Input LOW Current –0.2 mA VCC = MAX, VIN = 0.4 V
IOS Output Short Circuit Current (Note 1) –40 –225 mA VCC = MAX
I
Power Supply CurrentTotal, Output HIGH 27
A V MAXITotal, Output LOW LS240 44
mA V MAXICC LS241/244 46mA VCC = MAX
Total at HIGH Z LS240 50
LS241/244 54
Note 1: Not more than one output should be shorted at a time, nor for more than 1 second.
AC CHARACTERISTICS (TA = 25°C, VCC = 5.0 V)
S b l P
Limits
U i T C di iSymbol Parameter Min Typ Max Unit Test Conditions
tPLHtPHL
Propagation Delay, Data to OutputLS240
9.012
1418 ns
C 45 FtPLHtPHL
Propagation Delay, Data to OutputLS241/244
1212
1818 ns CL = 45 pF,
RL = 667 Ω
tPZH Output Enable Time to HIGH Level 15 23 ns
L
tPZL Output Enable Time to LOW Level 20 30 ns
tPLZ Output Disable Time from LOW Level 15 25 ns CL = 5.0 pF,
tPHZ Output Disable Time from HIGH Level 10 18 nsL p ,
RL = 667 Ω
AC WAVEFORMS
1.3 V
1.3 V 1.3 V
1.3 V
1.3 V 1.3 V
1.3 V
VIN
VOUT
tPLH tPHL
1.3 V
1.3 V
VIN
VOUT SW2CL*
5 kΩ
SW1
VCC
RL
TO OUTPUTUNDER TEST
1.3 V
tPHL tPLH
VE
VE
VOUT
VE
VE
VOUT
tPHZ
1.3 V 1.3 V
tPZL tPLZ
VOL1.3 V
≥VOH
0.5 V
tPZH
1.3 V
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
≈ 1.3 V
0.5 V
≈ 1.3 V
SWITCH POSITIONS
5-4
FAST AND LS TTL DATA
SN54/74LS240 • SN54/74LS241 • SN54/74LS244
SYMBOL SW1 SW2
tPZH Open Closed
tPZL Closed Open
tPLZ Closed Closed
tPHZ Closed Closed
DATASHEET 236
DATASHEET 3
Transistor Darlington ULN2803
ULN2003A-ULN2004AULN2001A-ULN2002A
September 1998
SEVEN DARLINGTON ARRAYS
.SEVEN DARLINGTONS PER PACKAGE.OUTPUT CURRENT 500mA PER DRIVER(600mA PEAK).OUTPUT VOLTAGE 50V. INTEGRATED SUPPRESSION DIODES FORINDUCTIVE LOADS.OUTPUTS CAN BE PARALLELED FORHIGHER CURRENT.TTL/CMOS/PMOS/DTL COMPATIBLE INPUTS. INPUTS PINNED OPPOSITE OUTPUTS TOSIMPLIFY LAYOUT
DESCRIPTION
The ULN2001A, ULN2002A, ULN2003 andULN2004Aare high voltage,high current darlingtonarrays each containing seven open collector dar-lington pairs with common emitters. Each channelrated at 500mA and can withstandpeak currents of600mA.Suppressiondiodesare included for induc-tive load driving and the inputs are pinned oppositethe outputs to simplify board layout.Thefourversionsinterfacetoall common logic fami-lies :
ULN2001A General Purpose, DTL, TTL, PMOS,CMOS
ULN2002A 14-25V PMOS
ULN2003A 5V TTL, CMOS
ULN2004A 6–15V CMOS, PMOS
Theseversatile devicesare useful for driving a widerange of loads including solenoids, relays DC mo-tors, LED displays filament lamps, thermal print-headsand high power buffers.The ULN2001A/2002A/2003Aand 2004A are sup-plied in 16 pin plastic DIP packages with a copperleadframe to reduce thermal resistance. They areavailable also in small outline package (SO-16) asULN2001D/2002D/2003D/2004D.
DIP16
ORDERING NUMBERS: ULN2001A/2A/3A/4A
SO16
ORDERING NUMBERS: ULN2001D/2D/3D/4D
PIN CONNECTION
1/8
SCHEMATIC DIAGRAM
Series ULN-2001A(each driver)
Series ULN-2002A(each driver)
Series ULN-2003A(each driver)
Series ULN-2004A(each driver)
THERMAL DATA
Symbol Parameter DIP16 SO16 Unit
Rth j-amb Thermal Resistance Junction-ambient Max. 70 100 °C/W
ABSOLUTE MAXIMUM RATINGS
Symbol Parameter Value Unit
Vo Output Voltage 50 V
Vin Input Voltage (for ULN2002A/D - 2003A/D - 2004A/D) 30 V
Ic Continuous Collector Current 500 mA
Ib Continuous Base Current 25 mA
Tamb Operating Ambient Temperature Range – 20 to 85 °C
Tstg Storage Temperature Range – 55 to 150 °C
Tj Junction Temperature 150 °C
ULN2001A - ULN2002A - ULN2003A - ULN2004A
2/8
ELECTRICAL CHARACTERISTICS (Tamb = 25oC unless otherwise specified)
Symbol Parameter Test Conditions Min. Typ. Max. Unit Fig.
ICEX Output Leakage Current VCE = 50VTamb = 70°C, VCE = 50V
Tamb = 70°Cfor ULN2002A
VCE = 50V, Vi = 6Vfor ULN2004A
VCE = 50V, Vi = 1V
50100
500
500
µAµA
µA
µA
1a1a
1b
1b
VCE(sat) Collector-emitter SaturationVoltage
IC = 100mA, IB = 250µAIC = 200 mA, IB = 350µAIC = 350mA, IB = 500µA
0.91.11.3
1.11.31.6
VVV
222
Ii(on) Input Current for ULN2002A, Vi = 17Vfor ULN2003A, Vi = 3.85Vfor ULN2004A, Vi = 5VVi = 12V
0.820.930.35
1
1.251.350.5
1.45
mAmAmAmA
3333
Ii(off) Input Current Tamb = 70°C, IC = 500µA 50 65 µA 4
Vi(on) Input Voltage VCE = 2Vfor ULN2002A
IC = 300mAfor ULN2003A
IC = 200mAIC = 250mAIC = 300mA
for ULN2004AIC = 125mAIC = 200mAIC = 275mAIC = 350mA
13
2.42.73
5678
V 5
hFE DC Forward Current Gain for ULN2001AVCE = 2V, IC = 350mA 1000 2
Ci Input Capacitance 15 25 pF
tPLH Turn-on Delay Time 0.5 Vi to 0.5 Vo 0.25 1 µs
tPHL Turn-off Delay Time 0.5 Vi to 0.5 Vo 0.25 1 µs
IR Clamp Diode Leakage Current VR = 50VTamb = 70°C, VR = 50V
50100
µAµA
66
VF Clamp Diode Forward Voltage IF = 350mA 1.7 2 V 7
ULN2001A - ULN2002A - ULN2003A - ULN2004A
3/8
TEST CIRCUITS
Figure 1a. Figure 1b.
Figure 2. Figure 3.
Figure 4. Figure 5.
Figure 6. Figure 7.
ULN2001A - ULN2002A - ULN2003A - ULN2004A
4/8
0 100 200 300 400 500 Ib(µA)0
100
200
300
400
500
Ic (mA)
Tj=25°C
D96IN453
TYPICAL
Max
Figure 8: Collector Current versus Input Current
0.0 0.5 1.0 1.5 Vce(sat)0
100
200
300
400
500
Ic (mA)
Tj=25°C
D96IN454
Max
TYPICAL
Figure 9: Collector Current versus SaturationVoltage
0 20 40 60 80 DC0
100
200
300
400
500
Ic peak (mA)
Tamb=70°C (DIP16)
7 6 5 4 3 2
NUMBER OF ACTIVE OUTPUT
D96IN451
Figure 10: Peak Collector Current versus DutyCycle
0 20 40 60 80 100 DC0
100
200
300
400
500
Ic peak (mA)
D96IN452A
7
5
3
2
NUMBER OF ACTIVE OUTPUT
Tamb=70°C (SO16)
Figure 11: Peak Collector Current versus DutyCycle
ULN2001A - ULN2002A - ULN2003A - ULN2004A
5/8
DIP16 PACKAGE MECHANICAL DATA
DIM.mm inch
MIN. TYP. MAX. MIN. TYP. MAX.
a1 0.51 0.020
B 0.77 1.65 0.030 0.065
b 0.5 0.020
b1 0.25 0.010
D 20 0.787
E 8.5 0.335
e 2.54 0.100
e3 17.78 0.700
F 7.1 0.280
I 5.1 0.201
L 3.3 0.130
Z 1.27 0.050
ULN2001A - ULN2002A - ULN2003A - ULN2004A
6/8
SO16 PACKAGE MECHANICAL DATA
DIM.mm inch
MIN. TYP. MAX. MIN. TYP. MAX.
A 1.75 0.069
a1 0.1 0.25 0.004 0.009
a2 1.6 0.063
b 0.35 0.46 0.014 0.018
b1 0.19 0.25 0.007 0.010
C 0.5 0.020
c1 45 (typ.)
D 9.8 10 0.386 0.394
E 5.8 6.2 0.228 0.244
e 1.27 0.050
e3 8.89 0.350
F 3.8 4.0 0.150 0.157
L 0.4 1.27 0.016 0.050
M 0.62 0.024
S 8 (max.)
ULN2001A - ULN2002A - ULN2003A - ULN2004A
7/8
HOJA DE RECEPCIÓN
Sangolquí, Agosto del 2008
ELABORADO POR:
___________________________
Srta. Karla Patricia Acosta Peña
COORDINADOR:
___________________________
Ing. Víctor Proaño Rosero
Coordinador de la Carrera de
Ingeniería en Electrónica, Automatización y Control