Professional Documents
Culture Documents
Por
Clara Elisa Gonzlez Len
Por
Clara Elisa Gonzlez Len
TUTOR INDUSTRIAL:
RESUMEN
El proyecto consiste en desarrollar un sistema que permita controlar dispositivos simples
mediante el uso de un portal Web que reciba comandos a travs de mensajes de texto (SMS)
enviados por el usuario. El portal se disea para recibir los mensajes y almacenarlos hasta que una
aplicacin que se ejecuta en un computador remoto, descargue dichos comandos y los ejecute
sobre los dispositivos comerciales correspondientes, para as controlar algunas de sus funciones.
Dichos dispositivos pueden ser cmaras, sensores de movimiento, controles on-off, entre otros.
El usuario recibir en su celular notificaciones de comandos invlidos, notificaciones de las
alarmas generadas por los dispositivos a ser controlados y mensajes de texto (SMS) desde el portal
indicndole que el comando ha sido recibido.
PALABRAS CLAVES
Mensajes de Texto, SMS, Pginas Web, Dispositivos simples, X10, Domtica, Automatizacin,
Control, Hogar.
Aprobado con mencin:________
Postulado para el premio: _______
Sartenejas, Septiembre de 2004
Al futuro
porque veamos en cada da
que nace la oportunidad de ser las
personas que verdaderamente queremos ser
Agradecimientos
A Dios, por haberme regalado esta experiencia que me dio la oportunidad de crecer, de conocer a
muchas personas nuevas y de aprender un poco ms del mundo.
A mi familia, a mis padres, hermano, abuelos, tos, primos y ahijados, por estar pendientes en
todo momento de los avances del proyecto, por compartir mis tristezas y angustias, y por festejar
conmigo cuando por fin llegu a la meta. Los quiero mucho.
A Rosa Prez de Obanos, mi tutora industrial, por darme la oportunidad de demostrar lo que s y
lo que puedo aprender, y por mostrarme como gira el mundo que est afuera de la universidad.
A Trina Adrin, mi tutora acadmica, por su orientacin y apoyo en todo momento y por estar
dispuesta a resolver cualquier obstculo. Gracias por haberme permitido compartir con usted mi
ltima materia universitaria.
A Marco Cuttin, por ser una persona tan humana, tan clida y siempre dispuesta a ayudar a los
dems. Gracias por haber sido la pieza clave en la solucin de los problemas. Te considero mi
amigo.
A Juan C. Zambrano y Francisco Alcal, de Intelcon System, por haberse armado de paciencia y
haber respondido tantas dudas, por haberme dado tanto apoyo tcnico en todo lo que se refiere a
BlickSMS y al resto de las herramientas Web.
A mi novio, Carlos Alberto Prez, por haberme escuchado tantas veces, por la solidaridad y la
comprensin, por haber sido el mayor apoyo en momentos difciles y por compartir conmigo la
inmensa alegra de haber terminado con xito. Te quiero muchsimo.
A mis amigos, Dani, Leslie, Diani, Caro, Carolina, Asdrub, Julio, Cape, Frank, Mug, por apoyarme
y acompaarme cada uno desde sus actividades. Gracias por su amistad, con la que cuento desde
hace mucho tiempo, y espero que sigamos siendo amigos por siempre.
A Liliana Serrano, Eduardo Ruiz, Alvaro Monsalve y Fredy Marquina por poner sus granotes de
arena para que esta pasanta pudiese finalizar con xito.
INDICE GENERAL
CAPTULO 1 INTRODUCCIN...................................................................................... 1
1.1 IDENTIFICACIN DE LA EMPRESA ................................................................................................... 2
1.1.1 Resea Histrica............................................................................................................................. 2
1.1.2 Evolucin tecnolgica ....................................................................................................................... 2
1.1.3 Estructura Organizativa ................................................................................................................. 4
1.2 DESCRIPCIN Y JUSTIFICACIN DEL PROYECTO ........................................................................... 6
1.3 VISIN GENERAL DE LOS CAPTULOS............................................................................................. 8
CAPTULO 2 MARCO TERICO .................................................................................... 9
2.1 CDMA ................................................................................................................................................. 10
2.1.1 Historia de CDMA ..................................................................................................................... 10
2.1.2 Definicin de la Red CDMA ....................................................................................................... 11
2.1.3 Componentes de una red CDMA.................................................................................................. 12
2.1.4 Interfaces de Red en CDMA ........................................................................................................ 14
2.1.5 La Comunicacin en CDMA....................................................................................................... 15
2.1.6 Canalizacin en CDMA y Secuencia PN..................................................................................... 17
2.2 SERVICIO DE MENSAJERA DE TEXTO (SMS)............................................................................... 20
2.2.1 Visin general del Servicio de Mensajera de Texto ........................................................................ 20
2.2.2 Estructura de la Red de Mensajera de Texto ................................................................................ 21
2.2.3 Procesamiento de los mensajes de texto entre estaciones mviles ........................................................ 25
2.2.4 Descripcin General del Protocolo SMPP ...................................................................................... 26
2.2.5 Conexiones de Red para SMPP.................................................................................................... 27
2.2.6 Procesamiento de mensajes de texto entre una ESME y el SMSC.................................................. 28
CAPTULO 3 DESARROLLO DEL PROYECTO ......................................................... 37
3.1 OBJETIVOS DEL PROYECTO ............................................................................................................ 38
3.2 FASE DE INVESTIGACIN ................................................................................................................ 39
3.2.1 Estndares y equipos para la automatizacin del hogar .................................................................. 39
3.2.2 Herramienta para el manejo de mensajes de texto BlickSMS ................................................. 44
Septiembre 2004
ii
Septiembre 2004
iii
INDICE DE FIGURAS
Septiembre 2004
iv
Septiembre 2004
Septiembre 2004
vi
ABREVIATURAS
ABA: Acceso a Banda Ancha
ADODC: (ActiveX Data Object Data Control) Objeto de Control de Datos ActiveX.
ADSL: (Asymmetric Digital Subscriber Line) Lnea Asimtrica de Suscripcin Digital
AMPS: (Advanced Mobile Phone Service) Servicio Avanzado de Telefona Mvil.
AuC: (Autentication Center) Centro de Autenticacin.
BS: (Base Station) Estacin Base.
BSC: (Base Station Controller) Controlador de Estacin Base.
BTS: (Base Transceiver Station) Estacin Base Transceptora
CDMA: (Code Division Mltiple Access) Acceso Mltiple por Divisin de Cdigo.
CMT: (Celular Messaging Teleservice) Teleservicio de Mensajera Celular.
CPT: (Cellular Paging Teleservice) Teleservicio de Buscapersonas
DHCP: (Dynamic Host Configuration Protocol) Protocolo de Configuracin Dinmica del Host.
D-AMPS: (Digital -Advanced Mobile Phone Service) Servicio Digital Avanzado de Telefona Mvil.
EIR: (Equipment Information Register) Centro de Registros e Identidades de los Equipos.
ESME: (External Short Message Entity) Entidad Externa de Mensajera de Texto.
FDMA: (Frecuency Division Multiple Access) Acceso Mltiple por Divisin de Frecuencia.
GPS: (Global Position System) Sistema de Posicionamiento Global.
Septiembre 2004
vii
GSM: (Global System for Mobile Communications) Sistema Global de Comunicacin Mvil
HLR: (Home Location Register) Centro de Registro de Localizacin de Suscriptores Locales.
HTML: (Hyper Text Markup Language) Lenguaje de Etiquetas por Hipertexto.
HTTP: (Hyper Text Transfer Protocol) Protocolo de Transferencia de Hipertexto
IP: (Internet Protocol) Protocolo Internet.
ISDN: (Integrated Services Digital Network) Red Digital de Servicios Integrados.
LAN: (Local Area Network) Red de rea Local
MB: (Mobile Station) Estacin Mvil.
MIN: (Mobil Identification Number) Nmero de Identificacin del Mvil.
MSC: (Master Switching Center) Central de Conmutacin Celular.
MS- SME: (Mobil Station- Short Message Entity) Entidad Mvil de Mensajera de Texto.
NMC: (Network Management Center) Centro de Manejo de la Red.
ODBC: (Open Database Connectivity) Conectividad Abierta a Bases de Datos.
OMC: (Operation and Maintenance Center) Centro de Operaciones y Mantenimiento
PC: (Personal Computer) Computador Personal
PDU: (Protocol Data Unit) Unidad de Datos del Protocolo.
PLMN: (Public Land Mobile Network) Redes Almbricas Privadas.
PN: (Pseudo noise) Pseudo ruido.
Septiembre 2004
viii
Septiembre 2004
ix
GLOSARIO
All Lights On: Funcin que indica que todas las luces de una determinada zona se deben
encender.
All Units Off: Funcin que indica que todos los equipos de una determinada zona se deben
apagar.
Bright: Funcin que indica que debe aumentar la intensidad o brillo de una determinada lmpara.
Dim: Funcin que indica que debe disminuir la intensidad de una determinada lmpara.
Function Code: Cdigo que corresponde a una determinada funcin, segn el protocolo X10.
House Code: Cdigo que corresponde a la seccin de la letra en la direccin de un dispositivo
X10.
Number Code: Cdigo que corresponde a la seccin del nmero en la direccin de un
dispositivo X10.
Off: Funcin que indica que se debe apagar un dispositivo.
On: Funcin que indica que se debe encender un dispositivo.
Paging Channel: Canal de Localizacin.
Password: Contrasea
Pilot Channel: Canal Piloto.
Roaming: Es un trmino utilizado en comunicaciones mviles que se refiere a extender el
servicio a otra red diferente a la red en la cual la estacin mvil est registrada.
Septiembre 2004
Start Code: Cdigo de inicio con el cual se comienza a enviar la trama X10 a travs de la red
elctrica.
Sync Channel: Canal de Sincronizacin.
Septiembre 2004
CAPTULO 1
INTRODUCCIN
Identificacin de la Empresa.
Septiembre 2004
En 1996 Movilnet migr de la telefona celular analgica al modo digital, sobre TDMA o
Acceso Mltiple por Divisin de Tiempo, con el fin de aumentar la capacidad del sistema y
ofrecer nuevos y mejores servicios.
Con la instalacin de TDMA, la operadora del 0416 fue la primera en digitalizar su red, lo
cual le ha permitido consolidarse como lder en innovacin, servicios y cobertura digital nacional.
En la actualidad, el porcentaje de digitalizacin de la red alcanza 99% del territorio nacional y ms
de 98% de sus abonados posee terminales celulares digitales.
An cuando TDMA ofrece amplias oportunidades de crecimiento y posibilita el
desarrollo de variados servicios de valor agregado, la empresa decidi implantar una red CDMA
1X, que funciona superpuesta a la otra red y que le permite a Movilnet avanzar hacia la tercera
generacin y optimizar el espacio libre disponible en el espectro haciendo un uso ms eficiente del
mismo.
CDMA1X le permite a la empresa ofrecer servicios avanzados de Internet mvil a alta
velocidad, tanto en mensajera instantnea, como en acceso a la Web a velocidades de transmisin
de datos de hasta 153 kbits pico por segundo.
La red 1X coexiste con la red TDMA sobre el mismo espectro de radiofrecuencia. Con
esto, Movilnet es la primera empresa del mundo en colocar, en un mismo espacio espectral, dos
estndares de tecnologa distintos.
La existencia de las dos redes pretende ampliar la variedad de productos y servicios
disponibles, lo que permite entregar mayor valor al cliente, de acuerdo con sus necesidades.
Movilnet ha logrado un posicionamiento basado en el liderazgo en servicios y cobertura
digital nacional, apoyados en tecnologa de punta, cuyo valor se asocia a la medida en que permite
desarrollar aplicaciones valiosas para la vida y resaltar el compromiso con sus clientes. [1]
Septiembre 2004
Septiembre 2004
de nuevos negocios. Tambin es responsable de todos los procesos asociados al contacto directo
con los clientes antes, durante y despus de la venta de los productos y servicios.
En la figura 2 se muestra el organigrama correspondiente a la Vicepresidencia de
Operaciones Comerciales. En l se pueden observar las ocho Direcciones que lo integran, entre
ellas la Direccin de Desarrollo Comercial, en la cual se llev a cabo este proyecto de pasanta
(especficamente en la Gerencia de Desarrollo Comercial).
Septiembre 2004
Septiembre 2004
indicando que el comando ha sido recibido y, en caso de que el mensaje enviado sea invlido, un
aviso del estado del mismo.
En la figura se muestra un esquema general del proyecto
Septiembre 2004
Septiembre 2004
CAPTULO 2
MARCO TERICO
CDMA
10
2.1 CDMA
2.1.1 Historia de CDMA
La compaa Qualcomm, ubicada en San Diego, California, fue la primera en proponer un
sistema digital basado en la distribucin del espectro (spread spectrum) y el Acceso Mltiple por
Divisin de Cdigos o CDMA (Code Division Multiple Access).
En CDMA, se asignan diversos cdigos para que mltiples usuarios puedan acceder al
mismo espectro de frecuencia simultneamente, mientras que el Acceso Mltiple por Divisin de
Tiempo (TDMA) define, para cada canal, varias ranuras de tiempo y el Acceso Mltiple por
Divisin de Frecuencia (FDMA) asigna, dinmicamente, diferentes bandas de frecuencia por
usuario.
CDMA permite que todos los usuarios transmitan al mismo tiempo, en la misma
frecuencia y ancho de banda y elimina la idea de la transmisin en un solo canal de frecuencia
especfico por usuario.
A pesar de que en 1942 Hedy Lamarr patenta los fundamentos de la teora de espectro
disperso que ofrece fortalecer la transmisin frente al ruido a cambio de un aumento del ancho de
banda ocupado, muchos ingenieros pensaron que no era posible de implementar. Sin embargo en
1989 Qualcomm se propuso aplicarlo y as, un ao ms tarde, se logr demostrar la
implementacin de CDMA.
En 1995, el Comit TR-45.5 de la Asociacin de la Industria de las Telecomunicaciones
(TIA) publica el estndar IS-95A para CDMA, con un codificador de voz o vocoder de 9600 bps
que luego aumenta a 14400 bps en su Boletn Tcnico 74. En 1996, se publica el Estndar
Conjunto 008 para operar CDMA en la banda de 1900MHz.
Hoy en da, existen dos estndares de tercera generacin que se basan en CDMA. Una de
las principales diferencias entre ellos es el ancho de banda. Por ejemplo, para CDMA 2000 es de
3,6864 MHz para su versin 3x y para W-CDMA es de 3,84MHz. [2]
Septiembre 2004
11
Figura 4. Relacin entre la interferencia, calidad del sistema y el nmero de llamadas cadas
Septiembre 2004
12
Por otra parte, CDMA brinda de 6 a 10 veces ms la capacidad que el sistema analgico.
La capacidad del sistema o cantidad de usuarios que puede soportar simultneamente un canal
CDMA, depende de la interferencia entre los cdigos de los usuarios, la cual es muy baja si son
slo dos, pero puede sobrepasar el nivel aceptable cuando se toma en cuenta la interferencia
acumulada entre todos cdigos asignados. [2]
La funcin de los componentes en una red CDMA es casi igual que en las redes GSM y
D-AMPS, aunque sus nombres difieren un poco. La figura 6 muestra los elementos de una red
CDMA.
Septiembre 2004
13
Las Estaciones Mviles o Mobile Station (MB) se comunican con el sistema de la Radio
Base o Base Station (BS) a travs de la interfaz de aire. El sistema de la BS lo conforman una
Estacin Base Tranceptora (BTS) y un Controlador de la Estacin Base (BSC). La BTS
proporciona el enlace RF a los suscriptores.
Los usuarios se comunican directamente con la BTS. El BSC se ocupa de enrutar los
datos, codificar la voz y de otras funciones relacionadas con el handoff. El sistema solo necesita
un BSC. El BSC puede estar ubicado en la Central de Conmutacin Celular (MSC), lugar en
donde generalmente suele encontrarse.
La Central de Conmutacin Celular (MSC) controla el trfico entre las radio bases. Si una
MSC tiene muchas celdas, se pueden usar varias MSCs para ayudarla a controlar el procesamiento
de las llamadas. Cada MSC tiene un Centro de Registros de Localizacin de Visitantes (VLR) con
toda la informacin de los mviles en Roaming.
Cada MSC est conectada a un Centro de Registros de Localizacin de Suscriptores
Locales (HLR), un Centro de Autenticacin (AuC) y un Centro de Registros e Identidades de los
Equipos (EIR) que verifican la legitimidad de los usuarios y los equipos, para facilitar el control de
fraude del sistema.
Septiembre 2004
14
La interfaz de aire usa la sealizacin RF como capa 1 y una modificacin del protocolo
ISDN como capas 2 y 3. Todos los proveedores de las estaciones mviles y radio bases cumplen
con esta interfaz en forma estricta.
La interfaz A es la que se utiliza entre la BTS y el BSC. La interfaz fsica es una E1. La
capa 2 usa la sealizacin ISDN y la capa 3 una modificacin del ISDN.
Septiembre 2004
15
Septiembre 2004
16
Los canales CDMA coexisten dentro de las bandas de frecuencias AMPS. Para la banda
celular de 800 MHz, los canales CDMA se definen con 1,23MHz de ancho. La diferencia de
frecuencias entre los canales de subida y de bajada es de 45MHz en el caso del sistema celular.
Figura 9. Ejemplo de comunicacin entre un mvil y la radio base, por medio del Cdigo Secreto
N 2 en un determinado bloque de frecuencia de 1,23 MHz.
Septiembre 2004
17
cual se genera un espectro que se distribuye a lo largo de un amplio ancho de banda, a causa de la
alta tasa de bits del PBRS.
Durante el proceso de deteccin, los receptores comparan la seal recibida con su propio
cdigo PBRS. Los mviles que podrn detectar el mensaje sern slo aquellos que tienen el
mismo cdigo PBRS que se utiliz en la codificacin, mientras que todos los dems perciben el
mensaje como ruido. [2]
Los cdigos Walsh son cdigos ortogonales. Esta propiedad matemtica garantiza que al
aplicarles la funcin lgica XOR a cualesquiera dos de ellos, el resultado es un producto que
contiene igual cantidad de unos y ceros, resultando ortogonales.
Septiembre 2004
18
Aplicando la funcin lgica XOR a un cdigo Walsh consigo mismo, se genera un valor
muy grande que equivale a la cantidad de bits que hay en el cdigo. Este proceso le permite a los
receptores detectar la seal que llega con su propio cdigo y no escuchar las seales que tienen
otros cdigos.
El cdigo Walsh 0 siempre define el canal piloto o pilot channel. Los canales piloto usan la
compensacin de los cdigos PN ms cortos, para identificar la celda o sector que transmite lo
que esta recibiendo el mvil.
Los cdigos Walsh del 1 al 7 definen los canales de localizacin o paging y son los que
envan la informacin sobre el inicio de una llamada, la asignacin del canal, los parmetros del
sistema, los mensajes de autenticacin, los mensajes generales y la ordenes del sistema.
El cdigo Walsh 32 siempre define el canal de sincronizacin o sync channel que se usa para
sincronizar el tiempo y transmitir otros datos clave. El canal sync se demodula cuando el mvil
ubica el canal piloto. Los otros cdigos definen los canales de comunicacin que se usan para
transmitir voz o datos.
Todas las radio bases usan la misma secuencia pseudoaletoria (PN), pero cada una de estas
radio base puede utilizar hasta 512 desfasajes distintos de la secuencia PN, que se diferencian
entre s por la relacin de fase que tiene cada una.
Una vez que la radio base se sincroniza con un canal piloto, le es muy fcil conseguir los
pilotos adyacentes, que estn a una distancia de 64 ciclos de reloj del piloto conocido.
Cada radio base cuenta con un sistema de posicionamiento global (GPS) con el cual se
sincroniza con todas las estaciones base, ya que la precisin en la regulacin de tiempo entre las
diversas estaciones base es esencial para que el sistema CDMA pueda funcionar.
El producto del canal de subida tiene la misma funcionalidad que el canal de bajada, pero
se identifica en forma distinta. Segn el estndar IS-95, los cdigos Walsh no se pueden utilizar
para identificar las estaciones mviles.
Septiembre 2004
19
La limitacin se debe a que todos los mviles necesitaran una fuente precisa para regular
el tiempo, como un GPS receptor y estar a la misma distancia de la radio base, adems el sistema
no podra tener ms de 64 estaciones mviles.
El canal de subida usa otro cdigo denominado cdigo largo, para distribuir, decodificar y
diferenciar las diversas estaciones mviles en la direccin de subida. Este cdigo largo admite
4300 millones de combinaciones.
El sistema tiene un reloj que se repite cada 41 das. Como este reloj se enmascara desde
cada mvil se crean cdigos de identificacin individuales que, a su vez, crean una gran cantidad
de canales seguros.
Cada canal de subida queda identificado por la frecuencia de su portadora RF de CDMA y
la compensacin PN del cdigo largo nico correspondiente a cada equipo porttil. [2]
Septiembre 2004
20
El servicio de mensajera de texto est conformado por dos tipos de servicios: Servicio de
Transporte SMS y Teleservicios SMS. Estos servicios requieren dos componentes adicionales a los
utilizados en el sistema bsico de telecomunicaciones: El Centro de Mensajes o SMSC (Short
Message Service Center), y las Entidades de Mensajera Corta o SME (Short Message Entity). Estos
servicios y sus entidades funcionales se describen en detalle en las siguientes secciones. [3]
Septiembre 2004
21
Figura 11. Arquitectura bsica de la red que describe IS-41. En la figura se observa la estructura de la red
CDMA (recuadro rojo) conectada a la red de Mensajera de Texto (recuadro azul).
Septiembre 2004
22
Teleservicios SMS
Los Teleservicios SMS se definen como servicios para mensajera de texto que ofrecen
amplias capacidades de comunicacin entre usuarios del SMS, acorde con los protocolos de
aplicacin establecidos entre ambos usuarios. Estos han sido diseados como aplicaciones
especiales que deben utilizar el Servicio de Transporte SMS. Dos de los teleservicios
estandarizados por la TIA son: el Teleservicio de Buscapersonas (Cellular Paging Teleservice, CPT) y
el Teleservicio de Mensajera Celular (Cellular Messaging Teleservice, CMT).
En la figura 12 se muestra el modelo en capas de los Teleservicios SMS como aplicaciones
soportadas por el Servicio de Transporte SMS. Se puede observar que X.25, IP o SS7 se utilizan
como mecanismo de transporte de los mensajes de texto entre el origen y el destino.
Septiembre 2004
23
Figura 12. Modelo en capas de los Teleservicios SMS como aplicaciones soportadas por el Servicio de
Transporte SMS para IS-41. A nivel de capa de transporte, se utilizan los protocolos X.25, IP o SS7
Septiembre 2004
24
Septiembre 2004
25
Figura 13. Secuencia de envo y recepcin de un mensaje de texto entre dos MS-SME.
Septiembre 2004
26
Septiembre 2004
27
Septiembre 2004
28
Se espera que la Capa de Red de la entidad que enva el mensaje tenga la capacidad de
segmentarlo y enviarlo a travs del medio como una serie de paquetes fragmentados, los cuales
debern ser reensamblados por la Capa de Red en la entidad destino, a fin de que puedan ser
entregados en el formato requerido a la capa SMPP. [4]
Septiembre 2004
29
a. bind_ transmitter
b. bind_transceiver
c. bind_receiver
Existe otra operacin llamada OUTBIND, la cual es enviada por el SMSC a fin de
solicitar que el ESME emita un bind_receiver para poder establecer la conexin.
UNBIND: Esta operacin tiene como objetivo finalizar la sesin que le permite a una
determinada ESME enviar y/o recibir mensajes del SMSC.
SUBMIT_SM: Esta operacin es ejecutada por un ESME para enviar un mensaje de
texto al SMSC, para su posterior envo al correspondiente MS-SME.
DELIVER_SM: Esta operacin es realizada por el SMSC para entregar un mensaje de
texto al correspondiente ESME.
DATA_SM: Este comando es utilizado para la transferencia de datos entre el ESME y el
SMSC. Este comando se utiliza para sustituir al SUBMIT_SM y DELIVER_SM cuando la
conexin est establecida en modo transceptor. El ESME puede utilizar esta operacin para
transmitirle un mensaje al SMSC, dirigido a una MS-SME. De igual manera, el SMSC puede
utilizar este comando para transmitirle al ESME un mensaje proveniente de una MS-SME.
QUERY_SM: Este comando es utilizado para solicitar informacin relacionada con un
mensaje enviado previamente.
Septiembre 2004
30
Figura 16. Secuencia de sesin entre un ESME en modo transmisor y el SMSC. Puede observarse el inicio
de la sesin (bind_transmiter), la transmisin de los mensajes hacia el SMSC (submit_sm) y el final de la
sesin (unbind)
Para una ESME en modo receptor, la secuencia tpica de sesin se muestra en la siguiente
figura. Es importante resaltar que la operacin submit_sm, utilizada en el modo transmisor, es
sustituida por deliver_sm en el modo receptor, adems del cambio correspondiente en la
operacin bind.
Septiembre 2004
31
Figura 17. Secuencia de sesin entre un ESME en modo receptor y el SMSC. Ntese que se utilizan los
comandos bind_receiver y deliver_sm para iniciar la sesin y recibir los mensajes, respectivamente. Al igual
que en la figura anterior, el comando unbind finaliza la sesin entre ambas entidades
Por ltimo, en una ESME que opera en modo transceiver, la secuencia tpica de sesin se
muestra en la figura 18. Como era de esperarse, se utiliza la operacin data_sm para la
transferencia de datos entre ambas entidades, en lugar de submit_sm y deliver_sm para los
modos de operacin anteriores. Adems, se utiliza el comando bind_transceiver al inicio de la
sesin para indicarle al SMSC cul ser el modo de operacin del ESME.
Es importante resaltar que los intercambios de PDU entre el SMSC y el ESME, en
cualquiera de sus tres modos de transmisin, puede ser implementado en forma sncrona o
asncrona. De esta manera, cualquiera de las dos entidades puede enviar un submit_sm,
deliver_sm o data_sm sin tener que esperar sincronizadamente por la respuesta correspondiente.
Tal y como se muestra en las figuras anteriores, las solicitudes asncronas SMPP pueden o no
recibir la respuesta asociada inmediatamente despus de haberse hecho la solicitud.
Septiembre 2004
32
Figura 18. Secuencia de sesin entre un ESME en modo tranceptor y el SMSC. Como se puede apreciar,
el ESME inicia la sesin con el comando bind_transceiver, lo cual le permite enviar y recibir mensajes en la
misma sesin por medio del comando data_sm. La sesin culmina una vez enviado el comando unbind.
En las figuras anteriores tambin se observa que tanto el ESME como el SMSC responden
a la entidad que realiza la solicitud en el mismo orden en el que fueron enviadas las peticiones. Sin
embargo, no es obligatorio hacerlo de acuerdo a la definicin del protocolo SMPP, por lo que
dichas entidades podran recibir las respuestas fuera de secuencia.
Mecanismos de entrega
Almacenamiento y Envo
Con este mtodo, cuando el mensaje es enviado al SMSC, es almacenado en una base de
datos hasta que se pueda entregar en el recipiente del MS-SME. Es decir, en este modelo el
Septiembre 2004
33
ESME enva mensaje a un mvil, el cual permanece guardado en forma segura en el SMSC hasta
que pueda ser entregado exitosamente o hasta que expire su perodo de validez.
El modo de almacenamiento y envo soporta las operaciones submit_sm y data_sm, as
como tambin facilita operaciones subsiguientes sobre los mensajes almacenados. El comando
submit_sm ofrece la facilidad de reemplazar un mensaje que se encuentra almacenado y que aun
no se haya entregado.
Septiembre 2004
34
Septiembre 2004
35
Figura 20. Secuencia de entrega de un mensaje mediante el mecanismo de Mensajes como Datagramas. El
ESME slo recibe la confirmacin de que el SMSC ha recibido el mensaje (data_sm_resp), pero no tiene
seguridad de que el mensaje haya sido entregado al MS-SME satisfactoriamente
Transaccin de Mensajes
Este mecanismo le permite al ESME emisor una confirmacin de entrega, la cual le
indicar si el mensaje fue enviado o no exitosamente. Este mtodo fue diseado para aplicaciones
que implican mensajera en tiempo real en la cual el ESME requiere una entrega sncrona sin la
necesidad de almacenamiento durante un largo perodo de tiempo. La Transaccin de Mensajes
solo soporta la operacin data_sm.
La diferencia principal entre los Mensajes como Datagramas y la Transaccin de Mensajes
est en que en la ltima, el ESME recibe el data_sm_resp luego de que el MS-SME haya recibido
el mensaje. En el caso de los Datagramas, dicha confirmacin se recibe cuando el SMSC recibe el
mensaje a travs de la conexin SMPP.
En la figura 21 se muestra la comunicacin entre el ESME y el SMSC a manera de enviar
un mensaje de texto a un MS-SME por medio del mtodo de Transaccin de Mensajes. Al igual
que en las figuras anteriores se han omitido algunos detalles a fin de simplificar el dibujo. [4]
Septiembre 2004
36
Septiembre 2004
CAPTULO 3
Fase de Investigacin
Fase de Implementacin
38
Septiembre 2004
39
Septiembre 2004
40
Home RF: es una tecnologa de transmisin digital inalmbrica abierta. El objetivo es que
computadoras, impresoras, telfonos, modems y cualquier otro dispositivo digital pudieran
intercambiar datos sin necesidad de usar cables. Una de las aplicaciones ms interesantes es la
capacidad de distribuir video y audio en dispositivos con escasos recursos de hardware, como los
equipos HiFi, y los diseados para ambientes mviles, como las agendas electrnicas porttiles. La
idea es que los PCs o las pasarelas residenciales sean los centros de descarga de canciones o
pelculas va Internet y que la tecnologa HomeRF sea el soporte que distribuya estas a los
dispositivos finales que las reproducirn.
Bluetooth: constituye un esquema de red de bajo costo que permite conectar entre s
equipos informticos y de comunicacin porttil y mvil, como computadores, PDA, impresoras,
ratones, micrfonos, auriculares, lectores de cdigo de barras, sensores, displays, telfonos
celulares, etc. Se espera que en el futuro se puedan agregar a la red equipos como webcams,
equipos de HiFi, reproductores MP3, mandos a distancia universales y otros dispositivos de
electrnica de consumo. El objetivo es que todos estos equipos puedan comunicarse e interoperar
entre s sin interferencias y sin tener que instalar cableado extra en la vivienda, dado que la
comunicacin es inalmbrica. [6]
Sin embargo, aunque la implementacin de estas tecnologas hara realidad el sueo del
Hogar Inteligente, se debe tener en cuenta el alto costo que implica el sustituir muchos de
nuestros electrodomsticos y equipos electrnicos por aquellos que tengan posibilidades de
comunicacin por Internet o que dispongan del hardware y software necesario para adaptar estos
dispositivos de comunicaciones, sobre todo en nuestro pas donde la situacin econmica no est
en su mejor momento.
Por esta razn, se decidi buscar una alternativa que le ofrezca a los usuarios supervisin y
automatizacin de su hogar, pero sin olvidar que debe ser una tecnologa lo ms econmica
posible, de fcil instalacin, que no requiera sustituir ninguno de nuestros electrodomsticos y que
ofrezca la variedad de dispositivos suficiente como para cubrir muchas de las necesidades de los
usuarios. Por otra parte, debe poseer un protocolo de comunicaciones sencillo y abierto que
permita el desarrollo de aplicaciones para la administracin de los dispositivos desde el
computador, lo cual a su vez facilita el control de los mismos va Web o celular.
Septiembre 2004
41
Estndar X10
Una de las tecnologas de automatizacin y supervisin del hogar ms ampliamente
utilizada en Europa y Norteamrica es, sin duda, el Estndar X10. Esto se debe principalmente a
las siguientes razones:
A. Los dispositivos que trabajan bajo este estndar son fciles de instalar y no
requieren que el usuario modifique la estructura de la vivienda, ya que las seales
de control se basan en corrientes portadoras que viajan a travs del cableado
elctrico existente.
B. Son los equipos ms econmicos en la rama de automatizacin de hogares y
adems no requieren gastos adicionales en cableado.
C. Son fciles de utilizar, incluso para aquellos usuarios que no tienen experiencia en
el rea.
D. Ofrecen una gran variedad de dispositivos que se conectan entre el
electrodomstico y el tomacorriente, los cuales permiten controlar las funciones
bsicas de dicho equipo (encendido, apagado, brillo, atenuacin, etc.), as como
tambin dispositivos diseados para el monitoreo y supervisin del hogar
(sensores de movimiento, sensores de puertas y ventanas, cmaras de video, etc.).
E. El protocolo no es propietario.
Es importante resaltar que, si bien los equipos X10 ofrecen muchas ventajas en cuanto a
variedad, economa y facilidad de instalacin, estos presentan ciertas desventajas las cuales se
enumeran a continuacin:
A. La velocidad de transmisin de los comandos desde la interfaz con la PC hacia los
dispositivos a travs del cableado elctrico, es lenta (60 bps).
B. Se debe colocar un filtro en el tablero elctrico de la vivienda para no interferir
con la seal elctrica de los vecinos. Si la vivienda est alimentada elctricamente
por dos fases, se debe colocar un dispositivo especial entre las mismas para que los
comandos puedan alcanzar todos los equipos conectados.
Septiembre 2004
42
Dispositivos X10
Existen tres tipos de dispositivos X-10: los que slo pueden transmitir rdenes (sensores),
los que slo pueden recibirlas (mdulos para artefactos elctricos y lmparas) y los que pueden
enviarlas/recibirlas (internas PC/X10, mdulo transceptor para RF).
Los equipos que tienen la capacidad de transmisin pueden enviarle comandos hasta 256
dispositivos, dado que este nmero representa la mayor cantidad de direcciones posibles que se
pueden asignar a los equipos receptores.
En el caso de los receptores, el usuario deber asignarle a cada uno una direccin,
conformada por una letra (A-P) y un nmero (1-16) que identificar al dispositivo, mediante dos
pequeas perillas ubicadas en la parte frontal del mismo. De esta manera podremos ejecutar
funciones sobre un determinado equipo o sobre un conjunto de dispositivos que compartan la
Septiembre 2004
43
misma letra en su direccin. Por su parte, si varios dispositivos tienen exactamente la misma
direccin, el comando se ejecutar sobre cada uno de ellos.
Algunas de las funciones que se pueden ejecutar sobre los dispositivos X10, y que se
utilizarn en este proyecto, son: ON (Encendido), OFF (Apagado), DIM (Atenuacin), BRIGHT
(Brillo), ALL LIGHTS ON (Todas las luces encendidas), ALL UNITS OFF (Todos los
dispositivos apagados). Estas ltimas dos funciones trabajan sobre cierto grupo de dispositivos en
el que todos los integrantes posean la misma letra en su direccin.
Los dispositivos bidireccionales tienen la capacidad de responder y confirmar la correcta
realizacin de una orden, lo cual puede ser muy til cuando el sistema X-10 est conectado a una
aplicacin que muestre los estados en que se encuentra la instalacin domtica de la vivienda, por
lo cual sern pieza clave a la hora de generar y enviar las alarmas producidas por la activacin de
algn sensor. [6]
Para la realizacin de las pruebas de este proyecto se solicit la compra de un grupo de
equipos X10, entre los que se encuentran: un mdulo de lmpara externo (para pruebas de
encendido y apagado, as como de brillo y atenuacin en porcentajes), un mdulo para artefacto
elctrico (para pruebas que verifiquen el encendido y apagado de cualquier electrodomstico), un
sensor de movimiento (permite probar la simulacin de presencia y, como medida de seguridad,
enviar alarmas en caso de intrusos), sensor de apertura de puertas/ventanas (igualmente,
advertencia en caso de intrusos), cmara de video pequea e inalmbrica (fcil de esconder y
permite la vigilancia de nios y ancianos, as como de las reas externas de la vivienda), un
acoplador de fase (en el caso de que las pruebas se realicen en un lugar donde el suministro
elctrico est compartido en dos fases), y un transceptor inalmbrico (recibe/enva comandos
provenientes de la lnea elctrica a los dispositivos inalmbricos). Existen dos tipos de dispositivos
que realizan la interfaz PC/X10. Se escogi utilizar la Interfaz CM11A, dado que se conocen
antecedentes de buen funcionamiento en proyectos semejantes. [6]
Septiembre 2004
44
BlickSMS
Descripcin general de la herramienta
BlickSMS es una solucin innovadora para el desarrollo y publicacin de servicios de
valor agregado sobre mensajera corta de texto SMS (Short Message Service). BlickSMS provee el
servicio de hospedaje de aplicaciones de mensajera corta o SMASP (Short Messages Application
Services Provider) ofreciendo para ello un ambiente de desarrollo grfico, sobre el cual se pueden
elaborar, a base de diagramas de flujo, todo tipo de procesos o servicios que utilicen SMS como
interfaz de entrada y salida de informacin. BlickSMS pone a disposicin de los usuarios de las
Septiembre 2004
45
operadoras de telefona mvil, sus servicios de valor agregado bajo una plataforma totalmente
gratuita para el desarrollo, configuracin y administracin de aplicaciones: BlickSMS Studio. [8]
BlickSMS Studio es un ambiente de desarrollo para la creacin de aplicaciones basadas
en mensajera corta de texto (SMS), conectadas a las operadoras de telefona celular. Las
aplicaciones creadas en el ambiente de BlickSMS Studio sern ejecutadas en un servidor de
aplicaciones denominado BlickSMS Applications Server, a partir de la recepcin de un evento
"on demand", como un mensaje entrante proveniente de la red de telefona mvil celular, u "off
demand", como un envo programado de mensajes por suscripcin de servicios. Cada aplicacin
opera sobre mensajes entrantes y salientes a travs de protocolo SMPP a la vez que se integra por
http, TCP-IP y ftp a aplicaciones ubicadas en servidores externos. Las principales funcionalidades
ofrecidas son:
Configuracin personalizada.
Ambiente de administracin.
Septiembre 2004
46
BlickSMS Studio
El BlickSMS Studio est compuesto por tres reas: Administrador de Aplicaciones, el
Editor de Aplicaciones y el Ambiente de Prueba. Para ingresar al BlickSMS Studio es necesario
obtener una clave de acceso para desarrollo en la pgina de registro de BlickSMS, a la vez el
usuario obtendr una clave de acceso para ver variables desde aplicaciones externas conectadas a
Internet. [8]
A. Administrador de Aplicaciones
El Administrador de Aplicaciones de cada usuario permite realizar funciones como crear,
editar, copiar, borrar, chequear, publicar y probar aplicaciones. Desde este ambiente es posible
tambin ver las estadsticas bsicas de cada aplicacin publicada y verificar los nmeros de acceso
asignados.
El mismo est compuesto por dos secciones: Nmeros Disponibles y Aplicaciones
Desarrolladas. En la primera, se indican los nmeros de telfono disponibles para ser asignados
a las aplicaciones desarrolladas por el usuario. En la misma se pueden crear y asignar reglas de
aplicacin, mediante las cuales el usuario determina qu aplicacin se va a publicar, cul nmero
disponible se le asignar y qu das de la semana y durante cunto tiempo diario estar activa la
regla.
Septiembre 2004
47
Septiembre 2004
48
B. Editor de Aplicaciones
El editor de aplicaciones est conformado por el rea de Programacin, la Barra de
Herramientas de desarrollo y la Barra de Herramientas Principales.
El rea de Programacin es el lugar en el cual el usuario debe ir construyendo el diagrama
de bloques de su aplicacin. Todas las herramientas de las cuales dispone para hacerlo, se
encuentran en las diferentes secciones de la Barra de Herramientas de Desarrollo. En sta, el
programador encontrar herramientas:
Internet: Enviar Archivo FTP, Enviar Correo Electrnico, POST HTTP, Enviar
Datos por conexin TCP/IP.
Fecha: Fecha Actual, Diferencia, Suma y Formato de Fecha; Componer una Fecha,
Parte de Una Fecha y Valida Fecha.
Septiembre 2004
49
C. Ambiente de Prueba
En este ambiente, se encuentran las herramientas que permiten la depuracin y pruebas de
las aplicaciones desarrolladas bajo BlickSMS. El proceso de depuracin y prueba facilita la
ejecucin de los programas en tiempo real. Para ello se dispone de ventanas de envo y recepcin
de mensajes, un cuadro de controles de ejecucin paso a paso, un visualizador de variables y una
ventana al ambiente de programacin donde el programador podr ver el recorrido del diagrama
de flujo que se est ejecutando en todo momento.
Desde el modo de prueba, es factible visualizar las distintas variables locales, globales y de
sesin de cada aplicacin, para lo cual se dispone de un control que activa la ventana de seleccin
de variables. Al pulsar sobre el icono de dicho control se desplegar el cuadro de seleccin de
variables, desde donde es posible seleccionar las variables por grupo o de forma individual.
Septiembre 2004
Un cursor (
50
envan los comandos de control de depuracin. Dichos comandos son: Enviar Mensaje desde el
celular de prueba, Borrar Mensaje en el celular de prueba, Ir al inicio del programa, Ir al final del
programa, Avanzar un paso hacia adelante, Avanzar un paso hacia atrs,
y Cargar nueva
prueba. [8]
En la siguiente figura se observa el Ambiente de Prueba que BlickSMS proporciona a la
aplicacin desarrollada para este proyecto, con el cual se pudo realizar una serie de pruebas de
funcionamiento antes de que el nmero corto de SMS fuese asignado por Movilnet.
Figura 24. Ventana correspondiente al Ambiente de Prueba de BlickSMS. Se puede observar tambin la
ventana que permite agregar las variables para observarlas durante el proceso.
Septiembre 2004
51
Septiembre 2004
52
Esto podra ocasionar prdidas de comandos en aquellos casos en los que la aplicacin
detecte la nueva direccin mucho tiempo despus del momento del refrescamiento.
B. CANTV suministra a sus clientes ABA un Firewall que impide el
establecimiento de cualquier comunicacin a puertos no regulados: En tal
sentido, se podra solicitar la habilitacin de un puerto especial para la aplicacin, lo
cual podra ocasionar problemas con intrusos que detecten el puerto abierto,
provocando efectos negativos en el PC del cliente. Esto se traduce en mayores costos
para l, si el mismo decide procurar lo necesario para la seguridad de su computador,
o para la empresa, si se decide modificar las barreras de entrada para estos clientes con
perfil especial.
Adems, mediante este mtodo de transmisin del mensaje, el rea de la Corporacin
CANTV que decida comercializar el producto a futuro, no dispondr de un historial de los
comandos enviados por los usuarios, lo cual no sera muy conveniente si se deseara cobrar el
servicio por cantidades de comandos enviados o por nmero de usuarios asociados a la cuenta de
una vivienda, etc.
Tambin es importante resaltar el hecho de que las pruebas de funcionamiento deben
realizarse en Movilnet, en donde el acceso a la red, tanto interna como externa, est muy
controlado desde el punto de vista de seguridad, por lo cual se hace complicado pedir los
permisos de firewall necesarios para acceder a travs de puertos no regulados.
Septiembre 2004
53
en una base de datos. Dicha pgina deber estar alojada en un servidor Web que posea una
direccin IP pblica y fija.
Septiembre 2004
54
base de datos MySQL en un entorno Windows. De esta manera, se pueden elaborar pginas
dinmicas que tienen la posibilidad de almacenar y extraer informacin de una base de datos,
alojada en el mismo servidor.
Dado que el envo de variables desde la aplicacin desarrollada en BlickSMS hacia la
pgina Web dinmica se lleva a cabo mediante la comunicacin Http POST, es necesario que el
servidor pueda ser accesado a travs del puerto 80 desde BlickSMS. Para ello, se solicitaron
unos permisos de Firewall la Gerencia de Soporte a las Aplicaciones de CANTV, que permitieran
la comunicacin bidireccional y sin restricciones a travs de dicho puerto, entre el Servidor de
BlickSMS y un PC, ubicado en la Gerencia de Desarrollo Comercial de Movilnet, que cumple
con las caractersticas requeridas y en el cual se instal PHPTriad y se utiliz como el servidor
Web y el servidor de base de datos del proyecto.
Septiembre 2004
55
Tambin es imprescindible que posea un mecanismo de conexin con una base de datos
MySQL, la cual estar ubicada en el Servidor Web Apache, a fin de llevar a cabo la descarga
peridica de los comandos almacenados en la misma.
Es importante que el lenguaje le ofrezca al programador las herramientas grficas
necesarias para poder realizar una interfz amigable con el usuario, mediante la cual ste pueda
introducir su login y password, ver los ltimos comandos enviados, desconectar o no el sistema
X10, etc.
Por otra parte, el lenguaje de programacin debe poseer las referencias necesarias que
permitan trabajar con XML, a fin de trasmitir las alarmas y notificaciones correspondientes a
BlickSMS, mediante un POST Http, para que sean enviadas al usuario mediante un mensaje de
texto.
En base a todos los requerimientos anteriores, se tom la decisin de trabajar con Visual
Basic 6.0, por las siguientes razones:
Permite trabajar de una forma sencilla con el puerto serial, a travs del control
MSComm (Microsoft Comm Control 6.0).
Posee el control ADODC (ActiveX Data Object Data Control), el cual permite crear
aplicaciones capaces de manipular bases de datos a travs de un conector. En este
caso, se necesitan realizar conexiones a la base de datos MySQL para lo cual se
emplear el conector ODBC (Open Database Connectivity).
Dispone de una serie de controles que facilitan la creacin de una aplicacin grfica y
amigable para el usuario (cuadros de texto, tablas, botones de comandos, listas, etc.).
Entre sus referencias se encuentra el objeto Microsoft XML v3.0, el cual se utiliza para
construir XML (Extensible Markup Language), y permite enviarlos por POST Http a una
pgina web.
Septiembre 2004
56
Septiembre 2004
57
Septiembre 2004
58
Una vez que el mensaje ha sido entregado a la aplicacin, sta hace una discriminacin
basada en el nmero corto, el cual indica su procedencia. Esto permite diferenciar los mensajes de
registro y comandos enviados por el usuario desde su celular Movilnet, de las alarmas y
notificaciones, enviadas por la aplicacin activa en la vivienda.
En la figura 26 se muestra un diagrama de bloques simplificado en el que se pueden
apreciar los procesos que ejecuta la aplicacin. En el Apndice A se encuentra el diagrama de flujo
completo de la aplicacin desarrollada en BlickSMS.
Septiembre 2004
59
A partir de este momento y para simplificar la notacin a lo largo del libro, se har
referencia a esta aplicacin mediante el nombre Administrador_de_Mensajes.
Septiembre 2004
60
Septiembre 2004
61
Septiembre 2004
62
Septiembre 2004
63
Una vez que los datos fueron introducidos en la tabla correspondiente, la pgina web
muestra la palabra Correcto en cdigo HTML, la cual es capturada por la aplicacin de
BlickSMS y utilizada para enviar el mensaje de texto que indica el xito del proceso.
Si por alguna razn la pgina web no puede conectarse al servidor o la base de datos no
existe, la pgina muestra en HTML los mensajes Imposible conectar to MySQL server o
Imposible conectar con esa base de datos respectivamente. Por lo tanto, estas sern las frases
Septiembre 2004
64
Figura 28. Diagrama de Bloques que representa el proceso de Autentificacin de Usuarios e Introduccin
de Comandos por medio de las pginas web
Septiembre 2004
65
base el diseo estndar de las pginas web de la Corporacin CANTV: fondo blanco, el logo de la
empresa en la parte superior izquierda, la fuente tipo Verdana, las opciones Oportunidades y
Contctenos, entre otros. En la parte central de la pgina se ubica una pequea tabla en donde
el usuario podr escribir su nmero de celular Movilnet (sin el 0416) y el password, tal y como lo
introdujo al momento de su suscripcin en el servicio, y presionar el botn Aceptar, el cual lo
llevar a la siguiente pgina web.
En la figura 29 el lector puede observar una muestra a escala de la pgina web de
Autentificacin de Usuario.
Una vez presionado el botn Aceptar de la pgina web index.html, enseguida se muestra
la pgina de Introduccin de Comandos (http://161.196.252.104/pag_2_2.php), la cual puede
presentarse en tres formatos diferentes, dependiendo de los datos que el usuario introdujo para su
autenticacin.
Principalmente, la pgina pag_2_2.php realiza funciones semejantes a las de la
pag_2.php, porque se encarga de recibir mediante un POST los valores de nmero de telfono
Universidad Simn Bolvar
Septiembre 2004
66
Figura 30. Pgina web de Introduccin de Comandos para telfono y password correctos
Septiembre 2004
67
Figura 31. Pgina web de Introduccin de Comandos para telfono y password incorrectos
Septiembre 2004
68
la
funcin
que
se
le
quiere
aplicar,
la
pgina
siguiente
Figura 33. Pgina que realiza la introduccin del comando en la tabla X10_usuarios
Universidad Simn Bolvar
Septiembre 2004
69
El hecho que el mensaje se haya enviado exitosamente slo quiere decir que ha sido
insertado correctamente en la base de datos, ms no implica que el comando tenga la sintxis
adecuada para su ejecucin. Quedar de parte de la aplicacin que lo descarga verificar que sea un
comando vlido de acuerdo a los requerimientos del protocolo de comunicacin X10.
Si el usuario desea enviar otro comando, la pgina comando.php le ofrece la opcin de
Volver a intorducir otro comando, con la que podr regresar a la pgina pag_2_2.php para
volver a repetir el proceso. Si por el contrario no desea hacerlo, tambin existe la opcin Salir, la
cual lo llevar la ltima pgina del grupo (http://161.196.252.104/fin.php) en la que se muestra el
mensaje final y se cierra la sesin web para dar paso a otro usuario al presionar el enlace a la
Pgina inicial. La pgina fin.php puede observarse en la figura 34.
Septiembre 2004
70
Septiembre 2004
71
Figura 36. Ventana de Configuracin de Telfonos y Passwords habilitada para dos usuarios
Septiembre 2004
72
Figura 37. Diagrama de bloques que indica la secuencia que se ejecuta al cargar la Ventana de
Configuracin de Telfonos y Password
Septiembre 2004
73
Es importante resaltar que antes de guardar los valores, estos son comparados con los
existentes en la tabla X10_registro de la base de datos hogarinteligente_db. Para ello, se
establece una conexin mediante el objeto ADODC de Visual Basic a travs del conector ODBC.
En caso de haber alguna inconsistencia, aparecer un mensaje que indica que el telfono no est
registrado o que el password correspondiente a uno de los telfonos es incorrecto, por lo que se
debe verificar o reescribir la informacin.
Septiembre 2004
74
Figura 38. Diagrama de bloques del cdigo generador de la ventana de Configuracin de Sensores
Cuando comienza a ejecutarse esta seccin del cdigo, se inicia la bsqueda del archivo de
texto llamado sensores.txt en el directorio de la aplicacin. Si el archivo existe, se extraen las
direcciones almacenadas en l y se muestran en la ventana de Configuracin de Sensores, de
manera que el usuario pueda modificarlas o agregar alguna otra. Si el archivo no existe, la
aplicacin lo genera sin contenido y seguidamente muestra la ventana con los campos en blanco.
Septiembre 2004
75
Como puede observarse en la figura 39, en el recuadro naranja se encuentran dos listas de
seleccin indicadas como Letra y Nmero, mediante las que el usuario escoger la direccin del
sensor activo. Posteriormente, deber presionar el botn Insertar para introducirla en la lista del
recuadro amarillo. Si se desean agregar ms sensores, basta con repetir el proceso. El usuario
cuenta con los botones Eliminar Anterior y Reset para borrar algunas o todas las direcciones
insertadas en la lista.
Luego que el usuario termin de introducir y/o modificar las direcciones de los sensores
instalados en su vivienda, debe presionar la opcin Aceptar para almacenar en el archivo de texto
toda la informacin que acaba de suministrar. Si presiona el botn Cancelar, las direcciones no se
guardarn y por ende no se podrn procesar las alarmas que generen dichos dispositivos.
Septiembre 2004
76
Ventana Principal
Esta ventana se muestra de forma permanente despus de ejecutarse los formularios de
configuracin descritos en las secciones anteriores. Se utiliza para darle promocin al servicio y
tiene mucha importancia tcnica ya que es la que se encarga de descargar y ejecutar los comandos
almacenados en la base de datos MySQL, recibir las alarmas provenientes de los sensores y enviar
las notificaciones a travs del POST Http al Administrador_de_Mensajes. Por otra parte,
presenta un men de opciones el cual constituye un enlace hacia otras ventanas o funciones de la
aplicacin (ver figura 40).
Septiembre 2004
77
B. Opciones:
Configurar Telfonos y Password
Configurar Sensores
Tabla de Comandos
Tasa de Refrescamiento
En lneas generales, el proceso de descarga y ejecucin de comandos que realiza esta
seccin de la aplicacin se muestra en la siguiente figura.
Figura 41. Diagrama de bloques del proceso de descarga y ejecucin de comandos que realiza la Ventana
Principal
Septiembre 2004
78
Septiembre 2004
79
Septiembre 2004
80
usuario, el password correspondiente, la fecha actual, el puerto asignado por Intelcon System al
que se desea enviar la informacin y el mensaje. Una vez construida, se enva mediante un POST
Http a una pgina web receptora de XML ubicada en el servidor de BlickSMS, la cual se
encargar de formatear y procesar adecuadamente el mensaje enviado.
En el recuadro anaranjado se presentan cuatro opciones, las cuales permiten que el usuario
seleccione lo que desea ver en la tabla: los ltimos comandos enviados por ambos usuarios, los
Septiembre 2004
81
ltimos enviados por cualquiera de los dos de manera individual, o aquellos que fueron enviados
en otra fecha, para lo cual es necesario indicar en el cuadro de texto, la fecha deseada en el
formato requerido. Por otra parte, el nmero de comandos que se mostrar depende de la
cantidad que el usuario escoja en la lista de seleccin ubicada en la parte superior derecha.
Tcnicamente, esta ventana no es muy compleja, ya que slo consta de una conexin a la
tabla X10_usuarios por medio de ADODC, a travs de la cual se solicitan unos u otros
comandos dependiendo de las opciones seleccionadas por el usuario.
Por defecto, dicho perodo est establecido en un minuto, pero si el usuario desea esperar
ms tiempo entre descarga y descarga slo debe introducir el nuevo lapso de tiempo en minutos.
Dado que el contenido de esta ventana no se almacena en ningn archivo de texto, slo
tiene validez en la ejecucin local del programa. En otras palabras, cada vez que se abra la
aplicacin la tasa de refrescamiento volver a valer un minuto, as que si se desea aumentar el
tiempo habr que ajustarla cada vez que la aplicacin se cierre y se abra nuevamente.
Septiembre 2004
82
La opcin Conectar (ver figura 46) vuelve a habilitar el puerto serial, inicializa
nuevamente la interfaz PC/X10 y reactiva el reloj.
Estas opciones se agregaron a fin de que el usuario pueda modificar la instalacin de los
equipos o no ejecutar funciones sobre stos en un determinado momento, sin necesidad de cerrar
la aplicacin.
Opcin Reset
Esta opcin permite desconectar y reconectar el Sistema X10 en un slo paso, adems de
volver a inicializar ciertas variables con el objetivo reiniciar la aplicacin desde el principio, pero
Universidad Simn Bolvar
Septiembre 2004
83
Septiembre 2004
CAPTULO 4
PRUEBAS Y RESULTADOS
85
Para demostrar el adecuado funcionamiento del sistema fue necesario realizar una serie de
pruebas durante la etapa de implementacin de las aplicaciones y pginas web y, posteriormente,
cuando se integraron todos los componentes del sistema. A lo largo de este captulo se describen
ambos tipos de pruebas.
Septiembre 2004
86
Pginas Web
Durante el proceso de elaboracin de las pginas web se realizaron pruebas
continuamente. Las mismas estaban destinadas a verificar que los datos pasaban adecuadamente
de una pgina a otra y que se ejecutaba correctamente el cdigo en PHP. Como era de esperarse,
fue necesario realizar ciertos ajustes para obtener los resultados esperados.
Como primera prueba se introdujeron nmeros de telfono incorrectos, nmeros de
telfono vlidos y contraseas invlidas, y nmeros y contraseas correctas en la pgina de
autenticacin, para lo cual se esperaba que la pgina web pag_2_2.php mostrara el mensaje
correspondiente de acuerdo al caso, lo cual efectivamente ocurri.
Luego, se verific que los comandos introducidos se almacenaban correctamente en la
base de datos, lo cual implica que el cdigo que agrupa y ordena el mensaje se ejecuta de forma
adecuada. Para ello se utiliz la herramienta PHPMyAdmin que viene incluida en PHPTriad. La
misma es un administrador grfico de bases de datos que permite ver, en una pgina web, el
contenido de las bases de datos y sus tablas asociadas.
Los comandos introducidos fueron, tanto comandos correctos para todas las funciones
(ON, OFF, DIM, BRIGHT, ALL LIGHTS ON, ALL UNITS OFF), como comandos
incorrectos. Es importante resaltar que las funciones DIM y BRIGHT necesitan ir acompaadas
de un porcentaje, el cual debe almacenarse en otro campo de la tabla diferente al de funcin.
Al observar el contenido de la tabla X10_usuarios se pudo comprobar que los
comandos correctos e incorrectos se almacenaban en forma adecuada, incluso en el caso de las
funciones de atenuacin y brillo donde se debe guardar un campo extra. Para el resto de las
funciones, el campo del porcentaje estaba vaco.
Por ltimo, se comprob que los datos de autentificacin introducidos por el usuario en la
pgina index.html para iniciar la sesin, se borran una vez presionada la opcin Salir. De esta
manera, la informacin no queda vigente por siempre en el grupo de pginas web, lo cual brinda
seguridad al usuario, en el caso de que otra persona vaya a usar el servicio desde el mismo
computador.
Universidad Simn Bolvar
Septiembre 2004
87
Septiembre 2004
88
Figura 47. Equipos X10 adquiridos para la realizacin de las pruebas. De izquierda a derecha se observan
el mdulo externo para lmparas, el sensor de movimiento y la interfaz CM11A.
En ese primer intento las pruebas no fueron exitosas. Por ello, surgi la necesidad de
hacer un cambio considerable en la estructura y diseo de la aplicacin. En primer lugar, se
determin que la interfaz CM11A necesita que la aplicacin le suministre la hora cada vez que se
enciende, lo cual no se haba considerado al momento de la implementacin. Por otro lado, el
programa tena un error en las rutinas que manejaban el puerto serial, ya que dos formularios
requeran utilizar simultneamente dicho puerto, lo cual no est permitido.
Despus de replantear el problema e implementar las soluciones, los resultados fueron
satisfactorios. Por una parte, se agreg la rutina que establece la hora en la interfaz y se busc la
forma de reagrupar en un formulario todas las funciones que antes se hacan en dos, a fin de que
no hubiese conflictos con el puerto serial. Esta modificacin tuvo un grado de dificultad
importante, pues haba que tomar en cuenta muchas variables y parmetros que no se podan
cambiar ni sustituir, a fin de no alterar el resto de programa.
A partir de ese momento, la aplicacin estaba en capacidad de descargar los comandos de
la base de datos, almacenarlos en variables, traducirlos y enviarlos por el puerto serial, conforme a
los principios establecidos en el protocolo de comunicacin para X10. Por otro lado, tambin se
reciban las alarmas cuando el sensor se activaba y se detectaban los comandos invlidos y los
errores en el envo hacia la interfaz, aunque lo nico que hasta el momento no se poda probar era
que efectivamente llegaban a la aplicacin de BlickSMS.
Septiembre 2004
89
Pruebas de Integracin
Luego de haber probado satisfactoriamente por separado los tres componentes
fundamentales del proyecto, se da inicio a la integracin de los mismos en tres etapas.
Primeramente, se unieron las pginas web, base de datos, la aplicacin hecha en Visual Basic y los
equipos X10.
Para ello fue necesario agregar a la instalacin, el mdulo externo para lmparas y conectar
un pequeo radio al transceptor inalmbrico, a fin de que se encienda cuando el sensor se active,
como forma de simular presencia. Es importante sealar, que el sensor se encontraba ubicado de
forma tal que slo pudiese ser activado en el momento requerido.
Al grupo transceptor/sensor/radio se le asign la direccin A1 y a la lmpara se le asign
la direccin a A4. Por medio de la pgina web se introdujeron los diferentes comandos a fin de
ejecutarlos sobre los dispositivos conectados.
Se hicieron pruebas de encendido, apagado y atenuacin y brillo en porcentaje, a las cuales
respondi exitosamente la pequea lamparita conectada al mdulo externo (ver figura 48). Por
otra parte, el sensor se activaba cada vez que se pasaba la mano frente a l, con lo cual se encenda
la radio. Para apagarla se introduca en la pgina web el comando A1 OFF y, al cabo de un
minuto o menos, se ejecutaba.
Figura 48. Prueba de encendido de la lmpara. Se puede observar que la interfaz CM11A y el mdulo
externo para lmparas estn conectados a la lnea elctrica mediante la regleta. La lamparita est conectada,
a su vez, al mdulo externo. En la imagen se observa el antes y el despus del envo del comando va SMS.
Universidad Simn Bolvar
Septiembre 2004
90
Septiembre 2004
91
Septiembre 2004
CAPTULO 5
CONCLUSIONES Y RECOMENDACIONES
93
Cada da que pasa nos acercamos ms a la era del Hogar Inteligente. Poco a poco
comenzarn a desarrollarse ms y ms las tecnologas que nos permitirn tener una vivienda como
las que aparecen en las pelculas futuristas, en donde la nevera le informa a su dueo qu
alimentos le faltan, la lavadora lava, seca y tiene pantalla de televisin simultneamente o las
puertas se abren al escuchar una determinada voz. Eso traer muchos beneficios y mejoras en
nuestra calidad de vida, pero la sustitucin de los electrodomsticos y dems equipos electrnicos
en este momento representa un gasto considerable para todos aquellos que necesiten una vivienda
de este tipo. Quizs en el futuro estas caractersticas vengan asociadas a los electrodomsticos
como parte del estndar y lo difcil sea conseguirlos sin ellas.
Este proyecto le permite al usuario de hoy cubrir algunos servicios bsicos como mejorar
la seguridad, vigilar a nios y ancianos, o sencillamente, disponer de mayor comodidad, sin
necesidad de invertir mucho dinero en sustituir los equipos electrnicos a ser controlados.
El haber escogido a los dispositivos X10 permite controlar lmparas y equipos
electrnicos que se enciendan mediante un switch, y manejar sensores y cmaras de video
aplicables a la seguridad del hogar (personas y equipos).
Los resultados de las pruebas realizadas permiten concluir que los objetivos planteados
inicialmente se cumplieron en su totalidad, salvo el hecho de trabajar con cmaras de video, las
cuales no pudieron ser adquiridas debido a la cantidad de requisitos que deben cumplirse para que
la empresa pueda comprar equipos en el exterior por los canales regulares.
Se logr la recepcin y procesamiento de los mensajes de texto, el ingreso de comandos
por medio de una pgina web y el almacenamiento y descarga de los mismos a fin de que
pudiesen ser ejecutados conforme a los estndares de comunicacin del protocolo X10, en un
computador remoto conectado a Internet. Se logr el envo de mensajes de vuelta al usuario que
le permiten conocer el estado del comando que acaba de enviar, as como tambin las alarmas
generadas por los sensores instalados en su vivienda.
En lneas generales, el proyecto arroj una gran cantidad de resultados satisfactorios. Sin
embargo, cabe preguntarse si existe otra manera ms eficiente o mejor de implementarlo, ya que
no existe una solucin nica y definitiva de resolver los problemas. Para ello, habr que
Universidad Simn Bolvar
Septiembre 2004
94
determinar el enfoque que desea darle la Corporacin CANTV a la versin final del producto, a
partir del cual se decidir como se va a facturar el servicio, si en realidad se necesita tener una
copia de los comandos enviados va texto o pgina web, si es ms conveniente habilitar la
entrada/salida de informacin a travs de un puerto especial para el servicio, etc.
Por otra parte, la Direccin de Desarrollo de Aplicaciones de Movilnet, la cual se encarga
de disear y publicar en los servidores de produccin todas las aplicaciones comerciales de la
empresa, deber indicar las pautas necesarias en cuanto a formas y lenguajes de programacin
necesarios para implementar las secciones web y de mensajera de texto, ya que es posible que no
se necesite a BlickSMS como herramienta de recepcin, envo y administracin de los mensajes
de texto, y deban sustituirse PHP y MySQL por los lenguajes web y base de datos utilizados en la
plataforma de servicios de Movilnet.
Adems, en una segunda fase del proyecto podra aprovecharse el hecho de que ya estn
disponibles en el mercado los celulares de tercera generacin, los cuales permitiran recibir la
imgenes de las cmaras X10 instaladas en la vivienda a peticin del usuario o cuando se genere
una alarma, a fin de que la supervisin del hogar sea mucho ms completa.
Todo esto podra indicarle al lector que el proyecto deber ser replanteado completamente
para poder salir al mercado, pero en realidad esa es la funcin de este proyecto, ser el primer paso
o la primera prueba que indica que no es imposible de hacer, ya que se implement con xito
durante el periodo de una pasanta larga, y que se deben comenzar a realizar las evaluaciones de
mercado para determinar cules servicios seran los ms demandados si algn segmento de los
hogares venezolanos tiene la necesidad de ser inteligente, despus de lo cual Movilnet, en
conjunto con CANTV, debern decidir las caractersticas tcnicas y de formato que debe tener el
producto final, desarrollarlo y ofrecerlo al pblico.
Septiembre 2004
CAPTULO 6
REFERENCIAS BIBLIOGRFICAS
96
Septiembre 2004
CAPTULO 7
APNDICES
98
APNDICE A
Diagrama de Flujo de la aplicacin Administracin de Mensajes realizada en
BlickSMS
Septiembre 2004
99
APNDICE B
Estndar X10: Historia y Principios de Transmisin
1. Historia
X-10 es uno de los protocolos ms antiguos utilizado en aplicaciones domticas*. Fue
diseado en Escocia entre los aos 1976 y 1978 con el objetivo de transmitir datos por las lneas
de baja tensin a muy baja velocidad (60 bps en EEUU y 50 bps en Europa) y costos muy bajos.
El protocolo X-10 en s, no es propietario, es decir, cualquier fabricante puede producir
dispositivos X-10 y ofrecerlos en su catlogo, aunque est obligado a usar los circuitos del
fabricante escocs que dise esta tecnologa.
Gracias a su madurez (ms de 20 aos en el mercado) y a la tecnologa empleada, los
productos X-10 tienen un precio muy competitivo de forma que es el lder en el mercado
norteamericano residencial y de pequeas empresas. Se puede afirmar que X-10 es actualmente la
tecnologa ms asequible para realizar una instalacin domtica no muy compleja. [6]
Septiembre 2004
100
Se puede insertar esta seal tanto en el semiciclo positivo como en el negativo de la onda
sinusoidal. La codificacin de un bit 1 o de un bit 0, depende de cmo se inyecte esta seal en los
dos semiciclos. Un 1 binario se representa por una rfaga de pulsos de 120 KHz de un
milisegundo de duracin, iniciada inmediatamente despus del cruce por cero, mientras que el 0
binario se representa como la ausencia de dicho tren de pulsos. Las mismas rfagas de 1 ms sern
transmitidas tres veces por ciclo, a fin de coincidir con los puntos de cruce por cero de cada una
de las tres fases del sistema de distribucin elctrico. La figura 49 muestra las relaciones de tiempo
entre cada una de estas rfagas.
Septiembre 2004
101
En cada bloque de datos, los segmentos de cuatro o cinco bits deben ser transmitidos en
cumplimiento con la regla de alternancia de medio ciclo, con respecto a la sinusoidal de 60 SS. Por
ejemplo, la seal transmitida en la primera mitad del ciclo es una rfaga de 120 KHz durante 1 ms
(1 binario), entonces en la siguiente mitad del ciclo no se debe transmitir ninguna seal (0 binario).
En la figura 51 se muestra grficamente el ejemplo anterior.
Septiembre 2004
102
Las tablas que se observan en la figura 52 muestran los cdigos binarios que deben
transmitirse para cada Cdigo de Casa y Cdigo de Direccin/Funcin. El Cdigo de
Inicio es un cdigo nico igual a 1110, el cual no cumple con la relacin de alternancia de medio
ciclo. [5]
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Codigos de Casa
H1 H2 H4 H8
0
1
1
0
1
1
1
1
0
2
0
0
1
0
3
1
0
1
0
4
0
0
0
1
5
1
0
0
1
6
0
1
0
1
7
1
1
0
1
8
0
1
1
1
9
1
1
1
1
19
0
0
1
1
11
1
0
1
1
12
0
0
0
0
13
1
0
0
0
14
0
1
0
0
15
1
1
0
0
16
All Units Off
All Lights On
ON
OFF
DIM
BRIGHT
Septiembre 2004
103
APNDICE C
Protocolo de Comunicaciones con la Interfaz PC/X10
Nmero
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Valor Binario
0110
1110
0010
1010
0001
1001
0101
1101
0111
1111
0011
1011
0000
1000
0100
1100
Valor Binario
0000
0001
0010
0011
0100
0101
Septiembre 2004
104
2. Parmetros Seriales
Los parmetros de configuracin del puerto serial que permiten la comunicacin con la
interfaz son:
Tasa de baudios: 4800 bps
Paridad: Ninguna
Bits de datos: 8
Bits de parada: 1
3. Transmisin Estndar
El formato utilizado en la transmisin de los comandos X10 desde la PC hacia la interfaz
es el siguiente:
PC
2 bytes
Interfaz
Cabecera: Cdigo
1 byte
1 byte
Confirmacin
Suma de comprobacin
1 byte
<Nmero de DIM>
F/A E/S
Septiembre 2004
105
F/A se define de acuerdo a lo que se est enviando: (0) direccin o (1) funcin.
E/S define si la transmisin es estndar (0) o extendida (1).
Cdigo:
7
<
Letra
Los parmetros Letra y Nmero indican los valores binarios de la letra y el nmero del
dispositivo sobre el que se quiere ejecutar el comando.
Cuando la interfaz recibe una transmisin del PC, se suman todos los bytes recibidos y se
reenva la suma de comprobacin. Si dicha suma es correcta, el PC devuelve el valor 0x00 que
indica que la transmisin fue exitosa, a lo cual la interfaz enviar el valor 0x55 para indicar que ya
esta lista para recibir el siguiente comando. Si la suma de comprobacin no es correcta, el PC
debe repetir la transmisin enviando nuevamente los bytes de Cabecera:Cdigo.
4. Recepcin Estndar
Cuando la interfaz comienza a recibir datos de la lnea elctrica, enva una seal al PC que
le indica que iniciar la transmisin. Posteriormente, la interfaz comenzar a encuestar al
computador preguntndole si puede enviarle su buffer de datos (mximo 10 bytes). Si el PC no
responde, la interfaz sobrescribe su buffer de datos y cualquier informacin adicional se perder.
A fin de encuestar al computador, la interfaz comienza a enviarle el valor 0x5A. Esta seal
ser repetida cada segundo hasta que el PC responda.
Para finalizar la encuesta constante de la interfaz e iniciar la transferencia de datos, el
computador deber enviarle de vuelta el valor 0xC3.
Septiembre 2004
106
Funcin
Mscara de Direccin/Funcin
Byte de datos 0
Byte de datos 1
Byte de datos 2
Byte de datos 3
Byte de datos 4
Byte de datos 5
Byte de datos 6
Byte de datos 7
Septiembre 2004
107
de brillo, por lo cual ese byte es equivalente a un cambio en el brillo de n/210*100%, en donde
n es el valor enviado por la interfaz.
Septiembre 2004