Anda di halaman 1dari 93

INSTITUTO POLITÉCNICO NACIONAL

ESCUELA SUPERIOR DE CÓMPUTO


SUBDIRECCIÓN ACADÉMICA

No. de TT: 2015-2-001 Julio 2015

Documento Técnico

Dispositivo de seguimiento basado en GPS y GPRS

Presentan:

Ronney Alberto Espinosa Hernández[1]


Gerardo Rodrigo Navarro Charles[2]

Directores

M. en C. Hermes Francisco Montes Casiano M. en C. Ulises Vélez Saldaña

RESUMEN

En este reporte se habla del desarrollo y la construcción de un dispositivo de adquisición


de datos encargado de sensar o adquirir datos de un sistema o proceso, así como de localizar
la ubicación de dicho sistema y enviar los datos a través del dispositivo a un sistema centrali-
zado o servidor. El dispositivo propuesto incluye GPS y GPRS para facilitar el desarrollo de
sistemas que requieran el sensado de variables o la adquisición de datos para procesos especí-
ficos, con el cual se puedan adquirir los datos y ser manipulados a través de dicho dispositivo.

Palabras Clave: GPRS, GPS, Raspberry Pi

[1]
kmkondor@gmail.com
[2]
oradspi@gmail.com

1
Advertencia
“Este documento contiene información desarrollada por la Escuela Superior de
Cómputo del Instituto Politécnico Nacional, a partir de datos y documentos con
derecho de propiedad y por lo tanto, su uso quedará restringido a las aplicaciones que
explicitamente se convengan.”

La aplicación no convenida exime a la escuela su responsabilidad técnica y da lugar a


las consecuencias legales que para tal efecto se determinen.

Información adicional sobre este reporte técnico podrá obtenerse en:

La Subdirección Académica de la Escuela Superior de Cómputo del Instituto Politécni-


co Nacional, situada en Av. Juan de Dios Bátiz s/n Teléfono: 57296000, extensión 52000.

2
3
Índice general

1. Introducción 7
1.1. Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2. Dispositivos de Localización . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3. Dispositivos de Adquisición . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4. Organización del documento . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2. Marco Teórico 10
2.1. Contexto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2. Geolocalización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2.1. GPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.2. A-GPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.3. GPS vs A-GPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.4. Sistemas de Referencia . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.5. Sistema de Coordenadas . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3. Visualización de Mapas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.3.1. Servidor de mapas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.3.2. Bases de datos geográficas . . . . . . . . . . . . . . . . . . . . . . . . 20
2.4. Comunicación GSM/GPRS . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4.1. GSM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4.2. GPRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4.3. UMTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.5. Vehículos y Variables de Sensado . . . . . . . . . . . . . . . . . . . . . . . . 21
2.6. Sistema AVL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.6.1. Arquitectura de un Sistema AVL . . . . . . . . . . . . . . . . . . . . 23
2.6.2. Tipos de Sistemas AVL . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.6.3. Sistemas AVL en la Actualidad . . . . . . . . . . . . . . . . . . . . . 26

3. Análisis del problema 31


3.1. Problemática . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1.1. Complejidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1.2. Integración de tecnologías . . . . . . . . . . . . . . . . . . . . . . . . 33
3.1.3. Diseño complejo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4
3.1.4. Curva de Aprendizaje . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.2. Objetivo del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.3. Planteamiento de la solución . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.4. Propuesta de Solución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.5. Plan de Trabajo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

4. Desarrollo 38
4.1. Diseño general y definición de prototipos . . . . . . . . . . . . . . . . . . . . 38
4.2. Configuración previa en Raspberry Pi . . . . . . . . . . . . . . . . . . . . . . 41
4.2.1. Compatibilidad con 3G/GPRS Shield . . . . . . . . . . . . . . . . . . 42
4.2.2. Configuración Java y SQLite . . . . . . . . . . . . . . . . . . . . . . . 42
4.3. Prototipo 1: Módulo de muestreo o adquisición de datos: analógicos, discretos
y GPS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.4. Prototipo 2: Módulo de comunicación de datos a través de la red de telefonía
móvil. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.5. Prototipo 3: Módulo de configuración. . . . . . . . . . . . . . . . . . . . . . 51
4.6. Prototipo 4: Propuesta de Protocolo de Comunicación . . . . . . . . . . . . . 54
4.6.1. Mensaje de almacenamiento de posiciones . . . . . . . . . . . . . . . 54
4.6.2. Mensaje de obtención de ruta/historiales . . . . . . . . . . . . . . . . 55
4.6.3. Mensaje de sincronización del dispositivo . . . . . . . . . . . . . . . . 56
4.6.4. Mensaje de reconfiguración del dispositivo . . . . . . . . . . . . . . . 57
4.6.5. Mensaje de alarma SOS del dispositivo . . . . . . . . . . . . . . . . . 58
4.6.6. Tamaño de peticiones y consumo de datos . . . . . . . . . . . . . . . 59
4.7. Prototipo 5: Caso de Estudio. . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.7.1. Demostración . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

5. Conclusiones 69

6. Trabajo Futuro 70

7. Glosario 76

Apendices 76

A. Dispositivos de Localización 77
A.1. GPS Tracker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
A.2. Arduino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
A.3. BeagleBoard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
A.4. Raspberry Pi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
A.5. Especificaciones y BenchMarking de Arduino, Beagleboard, Raspberry Pi. . . 82

B. Arduino Shield Connection Bridge 86

5
C. 3G + GPS Shield 89
C.0.1. Características . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
C.0.2. Diseño . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
C.0.3. Modo de Uso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

6
Capítulo 1

Introducción

1.1. Presentación
El presente documento es el reporte técnico de desarrollo del trabajo terminal Dispositivo
de seguimiento basado en GPS y GPRS. Dicho trabajo terminal tiene el número de registro
2015-2-001 y fue elaborado por los alumnos Ronney Alberto Espinosa Hernández y Gerardo
Rodrigo Navarro Charles. El objeto de este reporte es presentar la investigación, problemática,
documentación, desarrollo y pruebas realizadas durante el desarrollo de este mismo.

1.2. Dispositivos de Localización


Hoy en día existen una gran cantidad de dispositivos utilizados para localizar tanto vehícu-
los y maquinaria, como personas, esto debido a que necesitan saber la ubicación de estos y
así poder llevar un registro de ellos u obtener ciertas variables además de la ubicación.

Existen una gran cantidad de dispositivos los cuales cuentan con distintas características,
entre los más comunes están los que cuentan con GPS (Sistema de Posicionamiento Global
por sus siglas en ingles), este tipo de localización se obtiene a través de los satélites que se
encuentra en la orbita terrestre, estos realizan una triangulación para poder obtener una coor-
denada terrestre de la ubicación del dispositivo y de esta forma poder visualizarla en un mapa.

Existen otros dispositivos que cuentan con ubicación por radiofrecuencia, esto es a través
de ondas de radio que se encargan de localizar la ubicación del dispositivo y que son de menor
rango de ubicación que el de un GPS.

7
1.3. Dispositivos de Adquisición
Un sistema de adquisición de datos en general tiene como función principal el monitoreo
de una o más variables de un proceso cualquiera con la finalidad de hacer el registro de
las variables, dar seguimiento al proceso, o controlarlo. Un sistema de adquisición de datos
cuenta con 5 etapas:

Sensado: en esta etapa se utilizan sensores o transductores que tienen como función
principal convertir una variable física (temperatura, humedad relativa, iluminación, ni-
vel de PH, etc.) en una magnitud eléctrica (voltaje, corriente, resistencia, capacitancia,
inductancia, etc.)

Acondicionamiento: esta etapa consiste en tomar las señales obtenidas en la etapa de


sensado y acondicionarlas (mediante amplificadores operacionales, de instrumentación,
aisladores, linealizadores, multiplexores, conversores analógico-digital, digital-analógico,
entre otros) para que puedan ser leídos por el dispositivo de adquisición de datos en la
siguiente etapa.

Adquisición: en esta etapa del sistema existe un dispositivo de adquisición de datos


se encarga de tomar la señal acondicionada de los sensores, transmitirla a la siguiente
etapa, registrarla en el dispositivo, o realizar alguna acción específica del sistema.

Tratamiento: etapa en la que se reciben los datos del dispositivo de adquisición de datos
para su tratamiento (como puede ser el almacenamiento en un servidor, emisión de una
alarma o una alerta, pruebas, ajuste de un proceso, control, etc.).

Visualización: en esta etapa los datos una vez tratados pueden ser visualizados a través
de un sistema por computadora, en general, para generar reportes o estadísticas.

Un dispositivo de adquisición de datos en la etapa de Adquisición se encarga de obtener


la señal acondicionada y prepararla para su tratamiento.

1.4. Organización del documento


Éste reporte se ha organizado en siete capítulos y un apartado de anexos, de cada uno se
expone una breve descripción de su contenido a continuación:

Capítulo 2. Marco Teórico


En el capítulo 2 se abordan algunas de las definiciones, referencias y conceptos referentes a
la temática de los dispositivos de localización, teniendo como objeto promover el correcto
entendimiento del contexto general del trabajo terminal y el contenido del presente reporte.
Se abarcan temas y definiciones partiendo desde lo que es un dispositivo de localización y

8
sus principales componentes así como conceptos tales como GSM, GPS, entre otros.

También se expone la situación actual y los avances alusivos a la temática que rodea al
tema principal del trabajo terminal. Se aborda información acerca del desarrollo de disposi-
tivos de localización y sus componentes, así como el uso que se les da y las áreas que abarca,
con el fin de dar paso al análisis del problema.

Capítulo 3. Análisis del problema


En el capítulo 3 se explora problema y se muestra el análisis del mismo, iniciando con el
estudio del contexto, seguido de una exposición de la problemática, mostrar el objetivo del
trabajo terminal, el análisis de la solución y terminando con la propuesta de solución elegida
para afrontar dicha problemática.

Capítulo 4. Desarrollo
En el capítulo 4 se presenta el avance del desarrollo del trabajo terminal Dispositivo de Se-
guimiento basado en GPS y GPRS, así como pruebas de concepto que permiten validar el
funcionamiento y el uso que se le daría.

Capítulo 5. Conclusiones
En el capítulo 5 se exponen las conclusiones por parte del equipo referentes al desarrollo
del trabajo terminal, incluyendo argumentos ante las dificultades enfrentadas, las soluciones
dadas y los resultados obtenidos.

Capítulo 6. Trabajo futuro


En el capítulo 6 se plantean sus posibles vertientes dentro y fuera del alcance del trabajo
terminal.

Anexos
Al final del documento se presenta un apartado de anexos 7, conteniendo toda la información
complementaria mencionada dentro del presente reporte.

Adicionalmente al principio de cada capítulo se proporciona una introducción más deta-


llada al contenido abordado en él.

9
Capítulo 2

Marco Teórico

En éste capítulo se abordan definiciones, referencias y conceptos referentes a la temática


del dispositivo de localización. El objetivo es comprender el contexto general del trabajo ter-
minal y el contenido del presente reporte.

También se aborda información acerca del desarrollo de dicho dispositivo, se incluye in-
formación sobre los diversos dispositivos que se encuentran en el mercado y sus componentes,
así como las ventajas y características que proporciona.

Los temas y definiciones son los siguientes:

Geolocalización.

Comunicación GSM/GPRS.

Vehículos y variables de sensado.

Visualización de Mapas.

Sistemas AVL

Sistema de pruebas de manufactura

2.1. Contexto
Un sistema de localización tanto vehicular como de personal se ha convertido en un servi-
cio de importancia para organizaciones que tienen vehículos como herramientas de trabajo,
que tienen a su disposición el uso de vehículos para el transporte personal, maquinaria utili-
zada para la construcción, etc. Sectores como el transportista, de valores o constructoras se
han beneficiado del uso de sistemas de localización en sus flotillas, maquinaria, etc. supliendo
algunas de sus necesidades, ya que permiten hacer varias tareas, como por ejemplo: obtener la
ubicación de sus vehículos o maquinaria en caso de robo, el monitoreo de los mismos, mejora

10
en la confiabilidad del servicio y provisión de información a bajo costo para ser utilizada con
propósitos de planificación.

Es por eso que se requiere un dispositivo que abarque gran parte de las características
necesarias para poder recopilar dicha información y de esta forma llevar un historial de la
ubicación en la que se encuentra el vehículo o maquinaria e inclusive monitorear ciertas va-
riables de estos.

Además, las necesidades que suplen son variadas y no están orientadas a un tipo de usua-
rio en especial (sea una organización o para uso personal). Estas necesidades se explicaran
más adelante en el capitulo 3 y 4. Sumado a esto, las organizaciones que ofertan sistemas cuyo
proposito es la localización de vehículos o bienes moviles cuentan con dispositivos dificiles de
configurar y personalizar, los cuales limitan a los desarrolladores al uso de alguna tecnología
en especial. Otra opción es que los desarrolladores estén inclinados por alguna, realizando de
manera más sencilla, más rápida y con mayor entendimiento su trabajo.

A continuación se comenzarán a describir los conceptos de los elementos y característi-


cas a considerar para el buen desarrollo de un dispositivo de localizacion que permita ser
configurable y adaptable.

2.2. Geolocalización
La geolocalización implica el posicionamiento que define la localización de un objeto en un
sistema de coordenadas determinado. Este proceso es generalmente empleado por los siste-
mas de información geográfica, diseñados especialmente para capturar, almacenar, manipular
y analizar en todas sus posibles formas la información geográfica referenciada, con la clara
misión de resolver problemas de gestión y planificación.

Existen varias alternativas para conocer esta ubicación, aunque claro, son los dispositi-
vos móviles los que por su portabilidad con nosotros mismos nos permitirán más fácilmente
conocer nuestra ubicación y actualizarla a medida que nos vamos moviendo y por tanto,
cambiando de ubicación geográfica.

Entre ese amplio abanico de opciones que nos permiten descubrir la geolocalización se
destacan los receptores GPS, de los cuales entraremos más a detalle a continuación, los cuales
y gracias a la red de satélites que rodea al planeta podrán ubicarnos en cualquier parte del
globo terráqueo en el cual nos encontremos.

11
2.2.1. GPS
Una de las tecnologías más usadas por los dispositivos de localización es la GPS, la cual
se define como “un Sistema de Posicionamiento Global basado en tecnología satelital”[6].

Las principales redes de satélites GPS en órbita alrededor del planeta son:

NAVSTAR GPS: Programa de Tecnología de Navegación Satelital creado por los Esta-
dos Unidos. La red satelital más usada y famosa que cuenta con 24 satélites en órbita
a una altitud de 20,200 km y con un periodo aproximado de 12 horas[7]. Mayormen-
te utilizada con fines militares aunque cuenta con dos tipos de señales, una para uso
militar y otra para uso civil.

Galileo: Proyecto de navegación satelital de la Unión Europea pensado para ser comple-
tamente libre. Actualmente no completamente funcional por retrasos en el desarrollo del
proyecto pero con el que ya se han hecho pruebas. Permite la localización de receptores
GPS en tierra pero que también fue diseñado para la navegación en el espacio[8].

GLONASS: Sistema global de navegación por satélite ruso que está divida en 2 cons-
telaciones una exclusiva de navegación con 28 satélites y una de GPS con 30 en su
constelación 24 en operación, 3 de repuesto y 1 en fase de pruebas [9].

Compass (Beidou-2). Sistema de navegación satelital chino que es la segunda generación


del proyecto Beidou que no provee un servicio global sino solamente local para China
y algunos vecinos[10].

Mexsat. Sistema satelital en proceso de consolidarse por los satélites Bicentenario,


Centenario y Morelos III.[11]

En la actualidad los dispositivos móviles o teléfonos inteligentes (Smartphones) utilizan


principalmente las redes satelitales NAVSTAR y GLONASS para obtener la posición e in-
clusive se plantea ocupar Galileo en un futuro por su libertad de uso.

Funcionamiento
El Sistema de posicionamiento global está dividido en 3 partes o segmentos como se
observa en la figura 2.1 y se describen a continuación:

1. Segmento satelital.

2. Segmento de control.

3. Segmento de usuario.

12
Figura 2.1: Segmentos GPS

Segmento satelital
Es la red de satélites en órbita: 24 satélites en órbita con una inclinación de 55 grados con
respecto al ecuador distribuidos en 6 planos con 4 satélites cada uno, a una altitud de 20,200
km y con una periodo aproximado de 12 horas. Dicha precision en su inclinación, altitud y
periodo, permite obtener una ubicación fiable por parte del dispositivo de localización sin
importar su posición en el globo terrestre, un motivo de peso para ser una tecnología tan
utilizada.

Un satélite consta de 3 partes principales:


1. Computadora: controla todas las funciones del satélite, la más importante, el vuelo en
la órbita.
2. Reloj atómico: reloj con una exactitud de hasta 3 nanosegundos.
3. Radiotransmisor: envía y recibe las señales de la tierra.
Los satélites GPS manejan 2 tipos de señales:
C/A-code: Coarse Acquisition Code (Código de adquisición compun) que es enviado
por la banda L1 a una frecuencia de 1575.42 Mhz. que es de uso civil. La señal C/A
broadcast es conocida como SPS (standard Position Service).
P-code: Precision code (código de precisión) que es de uso militar con mayor precisión y
cifrado para evitar en lo posible la visualización de la información por cualquier usuario.
La señal es transportada por la banda L2 a una frecuencia de 1227.6 Mhz.
La señal P-code broadcast es conocida como PPS (Precise Position Service).
Las frecuencias de broadcast son utilizadas para iniciar el proceso de comunicación por parte
del dispositivo de localización con el satélite.

13
Segmento de control
Son estaciones que supervisan los satélites, existen 5 alrededor de la tierra que envían
su información al centro de operaciones en la base de la fuerza aérea Schriever en Colorado
donde se procesa toda la información de los satélites como sus efemérides y sus errores.

Las efemérides son una lista de posiciones de los cuerpos celestes como la luna, que per-
miten una mejor orientación espacial, junto con los datos de las posiciones de los satélites
alrededor de la tierra.

Los datos recopilados de todas las efemérides son enviados una vez al día con ayuda de
antenas en tierra, lo que permite tener una sincronización adecuada de cada satélite con la
constelación satelital y manipular su dirección o velocidad, si fuera necesario, desde tierra.

El control de los satélites desde tierra es sumamente importante, ya que permite moni-
torear su posición y observar a través de sus efemérides si su posición con respecto a otros
satélites y a los cuerpos celestes es la adecuada para realizar su función.

Segmento de usuario
Se refiere a todos los receptores GPS o dispositivos de localización, que pueden recibir las
señales GPS e interpretarlas para determinar su localización.

Dichos receptores o antenas GPS reciben 2 tipos de información:

1. Almanac data (datos de almanaque), que se refiere a la posición de los satélites y que
son recibidos constantemente y almacenados en la memoria del receptor GPS.

2. Efemérides, que permiten obtener la ubicación del satélite, el tiempo de su reloj, entre
otros.

Para obtener su ubicación, el receptor GPS hace uso de fórmulas matemáticas y de los
datos que ya posee de los satélites. Primero el receptor hace uso de la señal de broadcast para
ubicar cuáles satélites estan cerca de él y se sincronizan por medio de un código pseudo alea-
torio que ambos conocen. Una vez que los satélites le envían sus datos (descritos en secciones
previas), se puede determinar la distancia del satélite al receptor calculando la diferencia de
tiempo que tardó la señal en llegar del satélite al receptor (ya que la velocidad de la luz es
constante).

El receptor GPS necesita de por lo menos 3 satélites para conocer su ubicación aproxi-
mada, ya que utiliza algoritmos definidos para realizar una triangulación de su posición con
respecto a los satélites. Para conocer su latitud, longitud y elevación, son necesarios 4 satéli-
tes, ya que el cuarto intersecta la triangulación hecha previamente, de ahí que la precision de
un GPS varíe de aproximadamente 15 metros (en el 95 % del tiempo) hasta los 3 metros[13].

14
2.2.2. A-GPS
El Sistema A-GSP (Assisted GPS) es un Sistema GPS Asistido creado principalmente
para mejorar el tiempo de cálculo y la exactitud de la posición donde la señal GPS no es
captada adecuadamente.

La mayoría de los receptores GPS no son capaces de descargar completamente la in-


formación del satélite como las efemérides o el almanaque en la primera petición (primer
posicionamiento o posicionamiento inicial), lo que hace que sea largo y en ocasiones devuelva
información errónea; dicho problema es solucionado con el Sistema A-GPS[14].

Los Sistemas asistidos GPS son utilizados comúnmente en los dispositivos móviles, aun-
que no limitados a ella, y utiliza información preconocida por las redes de telefonía guardada
en sus servidores[15] sobre la constelación GPS para dispositivos que se encuentran en luga-
res con interferencias o dentro de edificios, lo que para un GPS normal sería imposible resolver.

El inconveniente de éste Sistema se encuentra en la necesidad de tener siempre actualizada


la información regularmente vía internet, del o los servidores lo que se ve reflejado en el costo.

2.2.3. GPS vs A-GPS


Podemos resumir que cada tecnología tiene sus ventajas y su desventajas. Mientras el
GPS no necesita de alguna otra red para obtener la posición, es de muy buena precisión
en lugares abiertos pero es un tanto lento, el A-GPS es más rápido pero dependiente de la
conexión a la red de móvil y un tanto menos preciso en interiores. La decisión de su uso
dependerá su aplicación.

Los dispositivos móviles en la actualidad utilizan A-GPS o GPS bajo disponibilidad.

2.2.4. Sistemas de Referencia


En la actualidad, la utilización de los GPS es común para la realización de sistemas de
localización donde la precisión es fundamental. Debido a ello, se ha presentado una dificultad
si queremos utilizar el GPS en cualquier parte del mundo y que nos presente en un mapa
las coordenadas que corresponde al Sistema local de ese país. Es por eso que hacemos uso
de un Sistema de Referencia, el cual se refiere al conjunto de coordenadas espacio-tiempo
que se requieren para poder determinar la posición de un punto en el espacio usadas por un
observador, el cual es capaz de realizar mediciones de magnitudes físicas.

Las trayectorias medidas y el valor numérico de muchas magnitudes son relativas al


Sistema de referencia que se considere. Sin embargo, aunque los valores numéricos de las
magnitudes pueden diferir de un Sistema a otro, siempre están relacionados por relaciones

15
matemáticas tales que permiten a un observador predecir los valores obtenidos por otro ob-
servador. Teniendo en cuenta esto, hablaremos a detalle del WGS84.

WGS84
El WGS84 por sus siglas en inglés World Geodetic System 84 (Sistema Geodésico Mun-
dial 1984), es un Sistema de coordenadas geográficas mundial que permite localizar cualquier
punto de la Tierra por medio de tres unidades dadas. Es representado por un código EPSG
(European Petroleum Survey Group) el cual es EPSG:4326 que describe las coordenadas
geográficas WGS84.

El Sistema Geodésico Mundial es un estándar para su uso en la cartografía, geodesia y


navegación. Cuenta con un estándar de coordenadas de la Tierra, un estándar de referen-
cia de la superficie esférica (el dato o elipsoide de referencia) para los datos de altitud, y
una superficie equipotencial gravitacional (el geoide) que define el nivel del mar nominal. El
origen de coordenadas de WGS84 está destinado a ser ubicado en el centro de la masa de
la Tierra, estimándose un error de cálculo menor a 2 cm. por lo que es en la que se basa el GPS.

Está definido por los siguientes parámetros:

1. Origen: Centro de masa de la Tierra.

2. Sistemas de ejes coordenados:


Eje Z: dirección del polo de referencia del IERS-The International Earth Rotation
Service
Eje X: intersección del meridiano origen definido en 1984 por el BIH pasando por
el origen, perpendicular al eje Z.
Eje Y: eje perpendicular a los dos anteriores y coincidentes en el origen.

3. Elipsoide WGS84
Semieje mayor (a)= 6,378,137 m
Semieje menor (b)= 6,356,752.3142 m

4. Constante de Gravitación Terrestre: 3,986004418 x 1014 m3 /s2 .

5. Velocidad Angular: 7,292115 x 10−5 rad/s

6. Coeficiente de forma dinámica: -484,166 85 x 10−6 .

El sistema estándar utilizado por nuestros dispositivos móviles actuales.

16
2.2.5. Sistema de Coordenadas
La localización es contextualmente simple e intuitiva para la mayoría de la gente. Por
ejemplo, la gente puede relacionarse en donde están sobre un mapa, seguir direcciones a un
lugar, agarrar fácilmente el contexto espacial de su entorno local, y así sucesivamente. En
cambio, ubicarnos por medio de coordenadas resulta difícil para la gente, sin embargo para
que las computadoras intercambien datos geoespaciales, se requiere de una definición clara
de la ubicación y el Sistema de referencia espacial.

Básicamente la localización geográfica de un punto se puede realizar detallando uno de


estos dos parámetros:

Coordenadas geográficas en formato Longitud-Latitud.

Coordenadas (x,y) UTM. Universal Transverse Mercator

Para representar un punto en la Tierra se pueden usar dos tipos de coordenadas: las
angulares (que usan los grados, minutos y segundos como medidas de referencia) y las rec-
tangulares (que usan el metro y el Sistema decimal). Al hablar de coordenada nos referimos
a la secuencia de N números designando la posición de un punto en N-espacios dimensiona-
les. Además, son siempre expresadas usando algún Sistema de coordenadas de referencia, los
cuales han hecho referencia al planeta Tierra.

Ya entendido lo que es una coordenada, a continuación se expondrán los dos Sistemas de


proyección antes mencionados con sus características principales.

Geográficas
Aunque para la mayoría de los usuarios que utilizan sistemas de localización no sea tan
importante la ubicación por medio de coordenadas, es un hecho que lo que se obtiene de
un dispositivo de localización son coordenadas, ya que éstas son utilizadas para obtener la
posición del vehículo en un mapa.

Un Sistema de coordenadas geográficas o GCS (Geographic Coordinate System) es un


Sistema que referencía cualquier punto de la superficie terrestre, un GCS incluye una unidad
angular de medida, un meridiano base y un datum (conjunto de datos de coordenadas basado
en un esferoide)[21].

Para referirnos a un punto en el mapa con un Sistema de coordenadas, utilizamos valores


de latitud y longitud que son ángulos medidos desde el centro de la Tierra hasta un punto
de la superficie y se miden en grados o grados centesimales. Todo mapa está referido por lo
menos a un Sistema de coordenadas, para obtener el detalle de su ubicación geográfica. A
continuación se muestra los valores que miden la latitud y la longitud:

17
La latitud mide el ángulo entre cualquier punto y el ecuador. Las líneas de latitud se
denominan paralelos. La latitud es el ángulo que existe entre un punto cualquiera y el
Ecuador.
La longitud mide el ángulo a lo largo del ecuador desde cualquier punto de la Tierra. Las
líneas de longitud son círculos máximos que pasan por los polos y se llaman meridianos.
El ecuador es un elemento importante de este Sistema de coordenadas; representa el cero
de los ángulos de latitud y el punto medio entre los polos.

Además, podemos hablar de posición al ubicarnos en un mapa, las cuales existen dos:
Posición absoluta: se determina a través de las coordenadas geográficas (latitud y lon-
gitud).
Posición relativa: permite localizar distintos espacios territoriales a partir de tomar otro
espacio territorial como referencia.

UTM
El Sistema de coordenadas universal transversal de Mercator (en inglés Universal Trans-
verse Mercator) es un Sistema de coordenadas basado en la proyección cartográfica transversa
de Mercator, que se construye como la proyección de Mercator normal, pero en vez de hacerla
tangente al Ecuador, se la hace tangente a un meridiano. A diferencia del Sistema de coor-
denadas geográficas, expresadas en longitud y latitud, las magnitudes en el Sistema UTM se
expresan en metros únicamente al nivel del mar, que es la base de la proyección del elipsoide
de referencia.
Proyección Mercator: La UTM es una proyección cilíndrica conforme. El factor de es-
cala en la dirección del paralelo y en la dirección del meridiano son iguales (h = k). Las
líneas loxodrómicas se representan como líneas rectas sobre el mapa. Los meridianos
se proyectan sobre el plano con una separación proporcional a la del modelo, así hay
equidistancia entre ellos. Sin embargo los paralelos se van separando a medida que nos
alejamos del Ecuador, por lo que al llegar al polo las deformaciones serán infinitas.
Además es una proyección compuesta; la esfera se representa en trozos, no entera. Pa-
ra ello se divide la Tierra en husos de 6o de longitud cada uno. La proyección UTM
tiene la ventaja de que ningún punto está demasiado alejado del meridiano central de
su zona, por lo que las distorsiones son pequeñas. Pero esto se consigue al coste de la
discontinuidad: un punto en el límite de la zona se proyecta en coordenadas distintas
propias de cada Huso.

Para evitar estas discontinuidades, a veces se extienden las zonas, para que el meridiano
tangente sea el mismo. Esto permite mapas continuos casi compatibles con el estándar. Sin
embargo, en los límites de esas zonas, las distorsiones son mayores que en las zonas estándar.

18
NMEA
Por sus siglas en inglés (National Marine Electronics Association), es una asociación que
ha desarrollado una especificación estructura, que define la interface entre varias piezas de
equipo electrónico marino, entre esas piezas se encuentran los receptores GPS, la mayoría de
los programas de computadora encargados de obtener la posición satelital cuentan con este
tipo de formato y especificación.

El formato NMEA está constituido por una línea que contiene posición, velocidad y
tiempo, los cuales son obtenidos a través del GPS. La creación del NMEA surgió de la idea de
enviar dicha información a través una línea de texto completamente diferente a independiente
a cualquier otra información, la información está separada por comas y dependiendo del tipo
de dispositivo es el orden que se lleva de la información, siempre inicia con el signo $ y
termina con un retorno de carro.

2.3. Visualización de Mapas


En la interfaz de usuario de un sistema de localización, una parte muy importante es
la visualización de la ubicación del o los vehículos en un mapa geográfico, ya que es más
comprensible que leer una coordenada obtenida por un dispositivo de localización GPS.

Un mapa es una representación selectiva de una parte mayor o menor de la totalidad


de la superficie terrestre sobre un plano horizontal y visual, materializados en longitudes y
latitudes, las cuales configuran la extensión del área mapeada bajo una visión panorámica.[19].
Un mapa geográfico está formado por satélites y mediciones diversas preferentemente basado
en límites físicos más que políticos[20]. Los sistemas de localización no se limitan al uso cierto
tipo de mapas, sino que toman lo mejor de cada uno para enriquecer la visualización de los
elementos.

2.3.1. Servidor de mapas


Un servidor de mapas es un motor que permite la visualización de mapas (por lo general
en una página web)[22], de ahí la función tan importante que desempeña en un sistema de
localización. Los mapas alojados en estos servidores son generados a partir de datos que ellos
mismos recolectan, algunos de ellos son de código abierto, otros comerciales o gratuitos.

Una forma de dividir los tipos de servidores de mapas es por su tipo licencia, como se
mencionó anteriormente pero también se dividen por el tipo de desarrollo que permiten:

Interno: donde se permite la creación y modificación de datos de mapas del servidor,


funcionamiento y visualización.

19
Externo: donde se permite la creación y modificación de la visualización de los mapas
servidos del lado del cliente.

Los principales servidores de mapas que no son de código abierto son:

Google Maps.

Yahoo Maps.

Bing Maps.

ArcGis.

Los principales servidores de mapas de código abierto son:

OpenStreetMap.

GeoServer.

UMN MapServer.

Mapguide.

Degree.

2.3.2. Bases de datos geográficas


Como se dijo anteriormente, un servidor de mapas aloja datos sobre los mapas con un
formato estandarizado organizado de tal manera que sirvan para los Sistemas de información
geográfica (SIG) dichos datos son guardados en bases de datos llamadas geográficas o geoes-
paciales (BDG).

Una BDG es una colección de datos orientada a Sistemas de información geográfica que
permitan un almacenamiento estructurado, de acuerdo a criterios espaciales, tipos de consul-
tas y gestión de información geográfica[23]. Estas bases de datos asocian dos tipos de datos
(también llamados objetos), los espaciales y los no espaciales.

Los datos o atributos espaciales son las características geográficas de los objetos descri-
tos (ubicación, dimensión, forma) y los no espaciales son las características cuantitativas
asociadas al objeto que se desea describir, es decir, datos descriptivos.

20
2.4. Comunicación GSM/GPRS
Al hablar de la comunicación entre el dispositivo de localización y el servidor de localiza-
ción dentro de un sistema encargado de localizar elementos, es necesario hablar de redes de
telefonía móvil o comúnmente llamadas redes móviles. Entre las principales redes de telefo-
nía móvil se encuentran GSM, CSD, GPRS, EDGE, UMTS, HSDPA, HSUPA, de las cuales
su principal diferencia es la tecnología y velocidades de transmisión de datos soportadas, a
continuación se exponen algunos de ellos.

2.4.1. GSM
GSM (Sistema global de comunicaciones móviles, por sus siglas en inglés) es una de las
redes estándar en telecomunicaciones móviles más extendida en el mundo. Denominada de
segunda generación (o 2G) es un estándar que permite un rendimiento máximo de 9.6 kbps,
lo cual permite transmisiones de voz y de datos digitales de bajo volumen (como mensajes
de texto SMS o mensajes multimedia MMS) posteriormente surgieron extensiones a esta red
como lo es GPRS[16].

2.4.2. GPRS
GPRS (servicio general de paquetes vía radio, por sus siglas en inglés) es una extensión
a GSM. El cual con su rendimiento máximo de 114kbps permite que se puedan utilizar
servicios brindados por la arquitectura TCP/IP, tales como internet, telnet, correo electrónico
(SMTP), etc.[16].

2.4.3. UMTS
UMTS (Sistema universal de telecomunicaciones móviles, por sus siglas en inglés) es la
red estándar sucesora de GSM denominada de tercera generación (o 3G). Con un rendimien-
to máximo de 168mbps (subida de datos) y 672 mbps (descarga de datos) algunas de sus
características son las capacidades multimedia, una velocidad de acceso a Internet elevada,
la cual también le permite transmitir audio y video en tiempo real[16].

Al utilizar estos medios de comunicación se puede implementar el protocolo de comuni-


cación HTTP y el protocolo de comunicación TCP/IP.

2.5. Vehículos y Variables de Sensado


Una de las características que puede tener el dispositivo de localización es la posibilidad
de adaptarse a diferentes tipos de vehículos y de obtener diferentes variables de sensado. En
la actualidad existe una gran cantidad de vehículos los cuales según el paso de los años se
les incorporan diferentes características las cuales benefician tanto al conductor como a los

21
usuarios de estos vehículos, existen vehículos personales, vehículos de pasajeros y vehículos
de carga, los cuales cuentan con distintas características pero mismas variables que permiten
el control y supervisión de dicho vehículo, los sensores más comunes para medir las variables
más comunes en dichos vehículos son:
Sensor de posición del cigüeñal. Usualmente se encuentra en la tapa de distribución
de combustible o en el monoblock, su función es proporcionar al pcm la posición del
cigüeñal y las rpm.
Sensor de temperatura de refrigerante del motor. Se encuentra en la caja del
termostato conocida como toma de agua, su función es informar al pcm la temperatura
del refrigerante del motor para que este a su vez calcule la entrega de combustible, la
sincronización del tiempo y el control de la válvula egr, así como la activación y la
desactivación del ventilador del radiador.
Sensor de temperatura del aire de admisión. Se encuentra en el ducto de plás-
tico de la admisión del aire, su función es determinar la densidad del aire y medir la
temperatura del aire.
Sensor de velocidad del vehículo. Se encuentra en la transmisión o atrás del tablero
de instrumentos, su función es proporcionar la velocidad a la que se desplaza el vehículo
en movimiento.
Sensor de masa de aire. Se encuentra entre el filtro de aire y el cuerpo de aceleración,
se usa como dispositivo de medición térmica evitando el ahogamiento del motor.[18]
El contar con este tipo de sensores y poder sensar sus valores a lo largo del día permite
poder llevar un control adecuado de dicho vehículo y beneficiar al usuario al mantenerlo
informado sobre el estado de éste, de esta manera es muy recomendable que un dispositivo
pueda obtener la información y enviarla hacia un servidor para así incorporarse a un sistema
de localización.

A continuación se hablará de sistemas AVL, donde entraremos a detalle en su defini-


ción, así como la arquitectura que conlleva, para después hablar de los tipos de sistemas y
finalmente los sistemas AVL comerciales que existen en la actualidad aquí en México.

2.6. Sistema AVL


Los Sistemas de Localización Vehicular Automatizada (AVL), son Sistemas cuya principal
función radica en monitorear la posición en la que se encuentran los vehículos a través de
un GPS o un Sistema de Radiofrecuencia, el cual se encarga de obtener la localización del
vehículo cada determinado tiempo. Existe una gran diversidad de Sistemas AVL, algunos
de los cuales además de que se encargan de obtener la posición del vehículo, también se
encargan de sensar los componentes principales del vehículo[1]. (Como pueden ser: velocidad,
aceleración, nivel de gasolina, etc.)

22
2.6.1. Arquitectura de un Sistema AVL
La mayoría de los Sistemas AVL poseen una arquitectura común compuesta de 3 partes
principales, como lo podemos observar en el cuadro 2.2, y continuación se describen:

Figura 2.2: Arquitectura

Dispositivo de localización: El dispositivo de localización, (dispositivo de rastreo


GPS) se coloca por lo general dentro del vehículo y obtiene la ubicación en conjunto
con información del propio vehículo y la almacena o la envía a un servidor según sea
el tipo de Sistema implementado. La información obtenida por el dispositivo además
de su ubicación puede ser nivel de gasolina, temperatura del motor, altitud, estado de
las puertas (abiertas/cerradas), presión de las llantas, estado de la batería, entre otros
y puede tener el control de cortar la gasolina, encender el motor, encendido de luces
tanto delanteras como traseras, entre otras. La capacidad de estos dispositivos define
en gran medida la capacidad final de todo el Sistema AVL.
Servidor de localización: Éste servidor tiene que cumplir con tres tareas: recibir los
datos obtenidos del dispositivo de localización o rastreo, almacenar los datos recibidos
de dicho dispositivo y por último brindar la información demandada por el usuario de
acuerdo a los datos almacenados.
Interfaz de usuario: La interfaz de usuario determina como se podrá visualizar y
accesar a la información dentro del servidor cumpliendo con los requerimientos del

23
Sistema en cuestión (como podría ser ver la información del vehículo de forma detallada
en una tabla)[2].

Componentes del dispositivo de localización


Los dispositivos de localización están compuestos por cuatro módulos principales:
1. Módulo de localización. Encargado de obtener la posición del vehículo en coordenadas
mediante un dispositivo especializado. Tales dispositivos pueden utilizar alguna de las
siguientes tecnologías:

GPS: Se encarga de brindar longitud, latitud y altitud en la que se encuentra el


vehículo. Es muy utilizado en la actualidad gracias a que recibe una comunicación
satelital y puede ubicarse tanto en carretera o dentro de edificios, aunque los
tiempos de retardo aumentan para la obtención de las coordenadas debido a la
interferencia con la cual se pueda encontrar.
GLONASS: Es otro Sistema tecnológico que permite la localización del vehículo
que puede ser comparable con el GPS ya que es un Sistema de navegación satelital
trabajado por la Defensa Aeroespacial Rusa y es una buena alternativa como co-
bertura global, cuenta con una gran precisión y trabaja de una manera muy similar
al GPS, es por eso que los celulares actuales de gama alta lo traen integrado[3].
RF: Otra opción importante es la localización por radiofrecuencia, esta tiene la
ventaja de una respuesta rápida en caso de encontrarse dentro de un área de
cobertura. Es comúnmente utilizada dentro de las zonas urbanas, pero tiene la
desventaja que no puede ser utilizada en zonas rurales o zonas con poca cobertura,
no cuenta con una precisión similar al GPS[4].

2. Módulo de comunicación. Para transferir información entre el vehículo y el servidor


generalmente se utiliza otro componente: un módem GSM/GPRS/UMTS que permita
transferencia de datos (en general para enviar o recibir mensajes de texto, e-mails, o
peticiones http).

3. Módulo de sensado. Es aquel encargado de la obtención de datos del vehículo el cual


puede implementar una gama de sensores propios o puede adquirir datos de los sensores
que vienen por defecto instalados en el vehículo, esto es a través de comunicación direc-
ta con el vehículo (a través de una interfaz elegida por el fabricante), de esta forma se
pueden adquirir datos útiles como el nivel de gasolina, la velocidad del vehículo, entre
otros, que se pueden incorporar al Sistema y hacerlo tan complejo como se requiera.

4. Unidad procesadora de datos. Encargada de coordinar a todos los demás componentes


y almacenar o enviar los datos recopilados de acuerdo a la configuración dictada por el
servidor de localización.

24
Componentes del servidor de localización
El servidor de localización es el encargado principal de coordinar la interacción entre los
dispositivos de localización y la interfaz de usuario. Este servidor cuenta con algunos com-
ponentes indispensables para cubrir su función:

Un componente de comunicación a la espera de datos y/o peticiones por parte de los


dispositivos de localización para desencadenar una acción específica (como puede ser el guar-
dado de datos, una notificación del cambio del estado de una variable de sensado dentro del
vehículo, entre otros).

Otro de los componentes importantes del servidor de localización es el de almacén de datos


generalmente representado por una base de datos, donde se recopila toda la información con-
cerniente a los dispositivos de localización y la especifica requerida por el propio Sistema AVL.

El servidor de localización además posee un componente capaz de tomar configuración


proporcionada por él o los usuarios del Sistema AVL y organizar peticiones al dispositivo de
localización o hacia la interfaz de usuario.

Componentes de la interfaz de usuario


Para promover una correcta interfaz de usuario, lo principal en un Sistema AVL es colo-
car la información recabada por el dispositivo de localización, procesada por el servidor de
localización en un mapa configurable (en cuanto tamaño, posición, zoom, etc.).

Además de diferentes marcadores, anotaciones indicaciones, líneas guía, iconos, etc. Que
se pueden colocar sobre el mapa en cuestión.

2.6.2. Tipos de Sistemas AVL


A pesar de que existe una gran cantidad de organizaciones que se encargan de proveer
este tipo de Sistemas, cuyas características son distintas en variedad y complejidad, es posible
catalogar los Sistemas AVL en dos tipos básicos, pasivos y activos, cuyas características se
detallan a continuación:

Sistema AVL Activo


Un Sistema activo se refiere a que cada determinado tiempo se solicita la obtención
de la posición del vehículo en tiempo real y transmitirla junto con los demás datos
obtenidos del vehículo para ser procesados y almacenados en un servidor utilizando
radiofrecuencias o tecnología GSM/GPRS por ejemplo. De esta forma se puede hacer
cualquier tipo de consulta de la información recabada a cualquier hora deseada, esta
información por lo regular se ve desplegada en una página web a través de un mapa
para conocer la ruta registrada por el Sistema.

25
Sistema AVL Pasivo
Los Sistemas AVL pasivos, eliminan la comunicación en tiempo real con el vehículo, pero
recaban la misma información que un Sistema AVL activo. Son Sistemas que permiten
el monitoreo, rastreo y mantenimiento del vehículo de forma diferida. Es decir, los datos
son ingresados al Sistema AVL al llegar al punto de partida del vehículo y se registra la
información en el servidor a través de comunicación wifi o al desmontar el dispositivo
y conectarlo a un ordenador[5].

2.6.3. Sistemas AVL en la Actualidad


En el mercado nacional e internacional existen organizaciones que desarrollan y ofertan
Sistemas AVL, con características tales como: Sistema de alertas, geocercas, Sistema de re-
portes y aplicación móvil. Para describir mejor sus características y hacer un comparativo
entre ellas, se han elegido a GP NETWORK SYSTEM[33], Lo Jack[34], Black Jack[35],
CoSoAVL[36], Encontrack[37] y Prosegur[38].

Las organizaciones antes mencionadas cuentan con años de experiencia, una consolida-
ción en el mercado nacional y, como es el caso de Prosegur, no solo una presencia nacional
sino internacional, además de una considerable gama de opciones y paquetes de servicios los
cuáles pueden ser observados con mayor detenimiento en las referencias antes citadas para
cada organización.

En los cuadros 2.1 y 2.2 se muestran características generales de los Sistemas que ofertan,
como la tecnología empleada para la localización o la cobertura que ofrecen, y en el cuadro
2.3 características específicas, como botones de pánico o control de variables del vehículo. El
propósito es hacer un comparativo entre los Sistemas que han desarrollado algunas de las
más importantes organizaciones que desarrollan Sistemas AVL.

26
Características Generales
Tecnología de Tipo de Alertas
Localización Sistema
App App
Radio- Llamadas App
Sistema GPS Activo Pasivo SMS An- Black-
frecuencia telefónicas iOS
droid berry
GP NET-
WORK X X X X
SYSTEM
Lo Jack X X X
Black
X X X X X
Jack
CoSoAVL
X X X X
Básico
CoSoAVL
X X X X
Premium
CoSoAVL
Next Ge- X X X X X X X
neration
Encontrack X X X X X X
Prosegur X X X

Cuadro 2.1: Tabla de Características Generales 1

Características Generales
Alertas Monitoreo y consultas Cobertura
Sistema E-mail Pagina web Nacional
GP NETWORK SYSTEM X
Lo Jack X
Black Jack X X X
CoSoAVL Básico X X X
CoSoAVL Premium X X X
CoSoAVL Next Generation X X X
Encontrack X X X
Prosegur X X X

Cuadro 2.2: Tabla de Características Generales 2

27
La característica general más importante en un Sistema AVL, es la tecnología empleada
para la obtención de la ubicación vehicular, como se puede apreciar existen dos: GPS y ra-
diofrecuencia. La elección de la tecnología por parte de la organización dependerá del tipo
de clientes a quién esté orientado y su área de servicio.

Es de observar que existen mayormente dos áreas de oferta de servicios AVL: los orienta-
dos a la recuperación de vehículos (AVL pasivos), como LoJack, BlackJack y Encontrack, y
los de monitoreo y control (AVL activos), como Prosegur y CosoAVL. Existen también ofer-
tas de servicios para uso personal con características limitadas, e intentos de ofrecer servicios
de un AVL pasivo y activo a la vez, pero con altas limitaciones.

Como características generales resaltan también:

Sistema de alertas. Los Sistemas antes descritos ofrecen alertas configurables, que pue-
den ser activadas por eventos significativos: sea por un botón de pánico activado por el
conductor del vehículo, por variables sensadas del vehículo y por geocercas. Dichas alertas
pueden ser enviadas por e-mail, sms, o por llamadas telefónicas.

Aplicación móvil. Ésta es una utilidad que ofrece una doble utilidad ya que permite no
solo ver los reportes de seguimiento vehicular, sino también como un dispositivo de locali-
zación que puede ser configurado para enviar y recibir información al Sistema. Cabe señalar
las diversas opciones desarrolladas para diferentes plataformas móviles como Android, iOS y
Blackberry, lo que permite mayor comodidad al usuario.

28
Características Específicas
Control
de Reportes Botón Sensores
Localización
Sistema variables Geocercas progra- de de
en bodegas
del mables pánico carga
vehículo
GP NET-
WORK X
SYSTEM
Lo Jack X X X X
Black Jack X X X X
CoSoAVL
X X X X
Básico
CoSoAVL
X X X X X X
Premium
CoSoAVL
Next Ge- X X X X X X
neration
Encontrack X X X X X
Prosegur X X X X

Cuadro 2.3: Tabla de Características Específicas

Como características específicas podemos resaltar las siguientes:

Geocercas. Las geocercas permiten el acotamiento de una ruta que puede seguir un
vehículo, lo que permite un mayor control del mismo. Puede añadirse una geocerca diferente
a cada vehículo o a un grupo en especial. En algunas ocasiones se configuran geocercas na-
turales, si por ejemplo, una empresa solo opera en un país o estado en particular.

Sistema de reportes. Dichos Sistemas son configurados por periodo de tiempo o por
cantidad de peticiones al dispositivo receptor GPS. La empresa Prosegur, por ejemplo, ofrece
un Sistema de reportes por cada 24 horas que puede ser consultado en cualquier momento
desde su página de internet accediendo con un nombre de usuario y contraseña.

Control de variables del vehículo. Es una de las cualidades con mayor valor para
el usuario, sobre todo si lo que desea es una localización constante. Permite no solo sensar
ciertas variables del vehículo sino a partir de dicho sensado ejercer un control sobre el mismo
a voluntad del usuario.

29
Del lado del servidor, en una arquitectura de un Sistema AVL, existe una gran cantidad
de código que es común y cumple las mismas funciones. Generalmente esto se puede suplir
mediante un Framework, middleware o API. A continuación se explicarán los 3 conceptos.

30
Capítulo 3

Análisis del problema

En éste capítulo se explora la problemática a la cual se enfrenta el trabajo terminal,


después de hacer una introducción al contexto y enunciar el problema, se muestra el análisis
del mismo, de esta forma se expone el objetivo del trabajo terminal, el análisis de la solución
y terminando con la propuesta de solución elegida para afrontar dicha problemática.

3.1. Problemática
Actualmente hay diversas organizaciones que se dedican al desarrollo de sistemas cu-
yo propósito es monitorear y sensar variables de elementos móviles, tales como vehículos o
maquinaria (principalmente con fines comerciales), también existen organizaciones cuyo pro-
pósito principal es monitorear dichos vehículos a través de estos sistemas, para esto deben
contar con los elementos del sistema pero principalmente con un dispositivo de seguimiento,
el cual se encargue de obtener dicha información de los vehículos, en el mercado existen gran
cantidad de dispositivos con ciertas características, pero ninguno de ellos es adaptable ni
configurable, es por eso que se necesita de alguno que lo sea.

3.1.1. Complejidad
Primordialmente, la complejidad radica en definir los alcances del sistema, la base de todo
es el dispositivo de localización a utilizar junto con sus características y las configuraciones
que permite, es por eso que se debe estudiar de manera exhaustiva todos los dispositivos que
se encuentran en el mercado y ver cual o cuales son los indicados para el desarrollo de dicho
sistema, es por eso que se debe de buscar el adecuado para cada tipo de sistema y verificar
que no rebase el alcance o en su defecto se quede corto con respecto a este.

31
Dispositivo de localización
Para elegir un dispositivo de localización existe la opción de elegir uno existente o desa-
rrollar uno. El problema al utilizar un dispositivo de localización comercial es que muchas
veces utilizan protocolos cerrados específicos a ciertos sistemas y los cuales cuentan con un
propósito específico.

En cuanto a los dispositivos genéricos, no admiten añadir nuevas variables de sensado para
poder personalizarlo de acuerdo a las necesidades requeridas por el cliente. Por otro lado,
el problema de utilizar un dispositivo de localización diseñado y desarrollado especialmente
para sistemas de localización vehicular, implica en la mayoría de las ocasiones un aumento
en los recursos necesarios al implementar dicho sistema y algunas veces aumenta el tamaño
de dicho dispositivo o complica mas su integración a dicho sistema.

Elección de plataformas
Para realizar una elección adecuada de plataformas para desarrollar un dispositivo de
localización personalizado, es necesario hacer un estudio adecuado tanto de la plataforma
hardware como de los protocolos que pueden se implementados o utilizados para la comu-
nicación con el servidor de localización (en el apendice A se muestra una descripción de las
tres plataformas hardware viables para un dispositivo de localización, demostrando ventajas
y desventajas, así como características, etc).

Servidor de localización
Para poder recopilar la información adquirida del dispositivo, es necesario que se cuente
con un servidor que permita almacenar y recibir la información enviada por el dispositivo,
dicho servidor a usar depende de las características y complejidad del sistema, así como de
la interacción que tenga con un ambiente gráfico y la consulta de la información obtenida.

Interfaz de usuario
Este punto puede variar tanto como el servidor de localización, pero aun así el problema
principal radica en la elección correcta, puede ser la interfaz proporcionada directamente des-
de el dispositivo, la cual permite ver los datos en tiempo real y que algunas llega a permitir
la configuración del dispositivo o inclusive personalizar la manera en la que se despliegan los
datos, esto a través de un display conectado directamente al dispositivo.

Por otro lado existe la interfaz web, que es montada directamente en un servidor y que
despliega los datos obtenidos del dispositivo, así como poder realizar consultas de históricos,
ubicación, variables, etc., que de igual manera depende de la complejidad del sistema, la
mayoría de las veces dicha interfaz puede visualizarse con algún dispositivo o equipo con
conexión a internet.

32
Para el desarrollo de la interfaz de visualización es necesario tomar en cuenta caracterís-
ticas tales como:

Visualización de mapas.

Visualización de históricos.

Generación de reportes de alarmas, estado del dispositivo, rutas, entre otros.

Otros elementos que añaden complejidad se mencionan a continuación.

3.1.2. Integración de tecnologías


Como es posible observar en la arquitectura de un sistema de localización, son diferentes
las tecnologías que se requieren para su desarrollo. Primeramente, la instalación y configu-
ración del dispositivo de localización dentro del vehículo, después la implementación de un
protocolo para el envío y recepción de datos.

Para el servidor de localización, se pueden utilizar tecnologías como java o php donde se
reciba la información del dispositivo de localización y se envíe a la interfaz. Para el envío y
recepción pueden usarse servicios web y hacer uso también de objetos JSON.

En cuanto a la visualización de los vehículos y dispositivos en un mapa, ya se han descrito


con anterioridad los diferentes servidores de mapas y bibliotecas para la manipulación de los
mismos.

Ahora bien, si ya se han realizado las elecciones correspondientes entre las diversas tec-
nologías, nos encontramos con un problema que añade complejidad.

3.1.3. Diseño complejo


Por otra parte, desarrollar un sistema de localización implica estructurarlo desde su base,
es decir, desde el dispositivo de localización hasta el funcionamiento del sistema, y debido
al trabajo que requiere definir y organizar cada uno de sus componentes, la complejidad au-
menta.

Es necesario también establecer una arquitectura para el desarrollo, tener disponibles


bibliotecas y archivos de configuración que realicen las funciones requeridas.

3.1.4. Curva de Aprendizaje


Cada uno de los aspectos antes mencionados consumen para el desarrollador tiempo tan-
to en investigación como en desarrollo. Es necesario conocer y seleccionar un dispositivo de
localización, así como su protocolo de comunicación, establecer la estructura del servidor,

33
elegir un gestor de bases de datos y diseñar y deasrrollar la base de datos, y realizar todas
las funcionalidades necesarias para la interfaz de visualización.

Cada parte de la arquitectura de un sistema de localización requiere dedicar tiempo con-


siderable a la investigación para siquiera elegir las tecnologías a utilizar, para después pensar
en el desarrollo. Por ello se ha diseñado una propuesta de solución con un objetivo en parti-
cular y en las secciones siguientes se hablará de ello.

3.2. Objetivo del proyecto


Objetivo General

Diseñar e implementar un dispositivo de seguimiento basado en GPS, que permita la


transmisión de su ubicación y estado (datos) a través de GPRS.

Objetivos Específicos

1. Desarrollar el dispositivo de seguimiento configurable y adaptable utilizando una pla-


taforma como Raspberry-PI o Arduino.

2. Generar una propuesta de protocolo de comunicación para dispositivos de seguimiento


y adquisición de datos.

3. Crear un caso de estudio que valide el funcionamiento del dispositivo y la propuesta de


protocolo.

3.3. Planteamiento de la solución


En esta sección se hablará del análisis realizado por los integrantes del equipo para poder
plantear una solución adecuada basándose en las características requeridas por un sistema
de localización.

Éste análisis abarcó los puntos más importantes a cubrir, se tomaron en cuenta las nece-
sidades de un usuario que desea un sistema de localización para uso personal, para usuarios
a cargo de una flotilla de vehículos dentro de una ciudad o área específica y otro último con
rutas definidas fuera de un área específica sino de un destino a otro.

Después de analizar éstos tres contextos se encontraron coincidencias y a continuación se


presenta el listado:

34
Todos los usuarios necesitan que la ubicación sea de tipo global y que sea en todo
momento.

Los usuarios deben poder instalarlo y configurarlo de manera sencilla.

El dispositivo debe de ser capaz de obtener información del vehículo a través de puertos
analógicos o discretos.

El dispositivo deberá enviar la información recopilada a un servidor junto con su posi-


ción.

El dispositivo deberá de tener la capacidad de montarse dentro de un vehículo.

El listado dado anteriormente se retomará en el siguiente capítulo para determinar el


avance y los alcances del Dispositivo de Localización.

3.4. Propuesta de Solución


De acuerdo al análisis realizado previamente, se propone la siguiente solución:
La integración de tecnologías para el desarrollo de un dispositivo de localización, utilizando
hardware y software necesario para el funcionamiento de dicho dispositivo, un servidor de
pruebas y un caso de estudio.

1. En la parte del dispositivo se utilizará:

Raspberry Pi modelo B: será la base para controlar todo el proceso de obtener y


gestionar la información recopilada (variables del vehículo y ubicación), así como
del envío de datos al servidor de localización.

Se eligió su uso por el tamaño del dispositivo, su alimentación por usb o por elimi-
nador con bajo consumo, precio accesible menor que otros dispositivos similares
(beagleboard por ejemplo), y la capacidad de ser una microcomputadora a la que
se le pueden añadir funcionalidades de control al vehículo o mostrar por medio de
una pantalla información relevante al conductor (ver AnexoA.5).

Raspberry Pi to Arduino Shield Connection Bridge: éste permite obtener la misma


configuración que un Arduino a través de la Raspberry Pi.

Se eligió para adecuar el módulo 3G/GPRS originalmente hecho para arduino, a


la Raspberry y maximizar su uso y aplicaciones.

35
3G/GPRS Shield: cuenta con componentes tales como GPS, ranura para tarjeta
SIM, entre otros, el cual va conectado en la parte superior del Raspberry Pi to
Arduino Shield Connection Bridge y permite la comunicación y configuración di-
recta con los datos del GPS.

Elegido por su compatibilidad con diferentes plataformas hardware y sobre todo


sus características como son: dos speakers para alertas, micrófono, ranura para cá-
mara y tarjeta microSD, lo que permitiría un ámplio desarrollo en funcionalidades
a futuro.

Para demostrar el funcionamiento del dispositivo se utilizaran algunas de estas opciones:

OpenStreetMap, por ser de código abierto y de gran compatibilidad con biblio-


tecas de visualización de mapas en JavaScript, además de contar con constantes
actualizaciones de mapas por los usuarios y desarrolladores.
Google Maps, por su fácil uso gracias a la documentación de su API versión 3 y
el mercado ya ganado entre los usuarios.
Openlayers como biblioteca de visualización de mapas del lado del cliente, para
implementación y configuración de diferentes características sobre mapas en un
entorno web. Elegido también por ser de código abierto, compatibilidad con di-
ferentes formatos de información de mapas como GeoJson y kml, compatibilidad
con sevidores de mapas personalizables como GeoServer y su uso que no se limita
a una computadora de escritorio, sino también en un teléfono inteligente.

2. Lenguajes de Programación a implementar:

Java: para la parte del servidor y sus módulos y parte de la visualización.


Java: para el desarrollo de los módulos en el dispositivo de localización.
JavaScript o Java: para la construcción de la mayor parte de interfaz de visuali-
zación.

3.5. Plan de Trabajo


A continuación se presenta el plan de trabajo realizado a lo largo de este trabajo termi-
nal. Para comenzar el desarrollo y de acuerdo con la metodología se proponen los siguientes
prototipos a desarrollar.

En el cuadro 3.1 se muestra el calendario de los prototipos realizados.

36
Figura 3.1: Cronograma

37
Capítulo 4

Desarrollo

En éste capítulo se presenta el desarrollo del trabajo terminal Dispositivo de Seguimiento


basado en GPS y GPRS, así como los prototipos, las pruebas de concepto que permiten
validar el funcionamiento, la propuesta de desarrollo y el caso de estudio.

4.1. Diseño general y definición de prototipos


Para cubrir con los objetivos del presente trabajo terminal se planteó un desarrollo por
prototipos y la siguiente arquitectura general para el dispositivo de seguimiento mostrada en
la figura 4.1; para dar soporte a dicha arquitectura se emplean las siguientes tecnologías:

Para recibir las señales GPS, se emplea el módulo SIM5218 de simcom, que utiliza
GPS, A-GPS, UTM con formato NMEA (para ver más características véase el anexo
respectivo).

Para muestrear las señales discretas y analógicas se utilizará un módulo adaptador


desarrollado para el presente trabajo terminal, se especificará más adelante.

Para el desarrollo de software en los módulos de configuración, comunicación y muestreo


se utilizará JAVA en conjunto de instrucciones AT para hacer uso del módulo SIM5218.

Para los repositorios de datos, configuración y registro de datos se utilizará SQLite.

Para la parte del protocolo de comunicación se utilizarán objetos JSON.

En el caso de estudio se utilizará como mecanismo de visualización una aplicación en


java web, sobre un contenedor de aplicaciones tomcat.

38
Figura 4.1: Arquitectura General

En la figura 4.1 se pueden apreciar los 3 módulos principales (de muestreo, de configura-
ción y de comunicación), los datos a obtener y su interacción con el mecanismo de control,
monitoreo o visualización de datos por ejemplo a través de las redes móviles o Ethernet
utilizando un protocolo de comunicación definido (Se presenta propuesta de protocolo más
adelante5).

A su vez para dar soporte a la arquitectura anterior se optó por utilizar como base la
tarjeta de desarrollo Raspberry Pi (ver descripción y benchmarking en los apendices A y A
respectivamente) con la configuración de hardware y software de la figura 4.2:

39
Figura 4.2: Arquitectura

40
En la figura anterior se presentan los principales componentes propuestos para el dispo-
sitivo, divididos en parte física y lógica; a continuación se describen de forma breve:

Raspberry Pi: Tarjeta de desarrollo ARM con capacidad de tener un sistema SO embe-
bido. Tiene como función ser el controlador principal del dispositivo de seguimiento a
través de los módulos descritos en la siguiente sección (más detalles de la tarjeta véase
anexo A).

Bridge adaptador de pines Raspberry Pi - Arduino: Se utilizará como adaptador eléctri-


co físico entre la tarjeta de desarrollo Raspberry Pi y el módulo SIM5218 (más detalles
del bridge adaptador de pines véase anexo A).

Módulo SIM5218: Módulo con distribución de pines tipo Arduino que permite a través
del driver SIM5218 y sus antenas conectarse a la red de telefonía móvil y al GPS (más
detalles del módulo véase apendice A).

Adaptador con borneras: Adaptador físico de borneras

Sistema operativo Raspbian: Sistema operativo basado en Debian optimizado para la


tarjeta de desarrollo Raspberry Pi y sobre el cual trabajarán los módulos ESCOM-
TDAQ (más detalles del módulo véase apendice A)

Repositorio SQL: Repositorio SQL para manejar el almacenamiento en el dispositivo.

Módulos de muestreo comunicación y configuración: Módulos desarrollados que se des-


criben en la sección siguiente que harán que el dispositivo funcione.

En el presente trabajo terminal los componentes mencionados serán desarrollados, inte-


grados, y/o configurados para la construcción y pruebas del dispositivo de seguimiento y
adquisición de datos.

Para afrontar el desarrollo dicho desarrollo se ha dividido en 4 prototipos: módulo de


muestreo o adquisición de datos, módulo de comunicación de datos a través de las redes
móviles, módulo de configuración y un caso de estudio que demuestre la funcionalidad del
dispositivo. Dichos prototipos y sus resultados se presentan a continuación:

4.2. Configuración previa en Raspberry Pi


A continuación se presentan las configuraciones previas realizadas sobre la tarjeta de desa-
rrollo Raspberry Pi para su funcionamiento como dispositivo de seguimiento y los módulos
de GPS y GPRS.

41
4.2.1. Compatibilidad con 3G/GPRS Shield
Desarrollo: La configuración se realizó de la siguiente manera:

1. Primero se realizó la instalación del sistema operativo Raspbian que está basado en
Linux, esto es a través de una tarjeta SD la cual funciona como disco duro para la
Raspberry Pi.

2. Ya instalado y configurado por completo el sistema operativo, se configuro el archivo


cmdline.txt el cual contenía esta información:

dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200


console=tty1

Se eliminaron los parámetros que hacían referencia al puerto de comunicación serial


UART (ttyAMA0) para que quedara de la siguiente forma:

dwc_otg.lpm_enable=0 console=tty1

3. Al terminar la configuración del archivo previo, se realizó la configuración del archivo


inittab para comentar la siguiente línea:

T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100

4. Por último se reinició la Raspberry Pi para que se realizaran los cambios y permitiera
la comunicación a través del puerto ttyAMA0.

5. Con la configuración ya realizada del puerto serial, procedimos a comunicarnos con el


GPS del 3G / GPRS Shield para Raspberry Pi, esto es a través de comandos AT, los
cuales permitieron la configuración tanto del GPS como el 3G y algunos protocolos de
comunicación.

4.2.2. Configuración Java y SQLite


1. La configuración en rasbian, la distribución de debían en la Raspberry Pi para instalar
SQLite y Java se logró mediante los siguientes comandos y una conexión a internet:
apt-get install sqlite3
Con este comando se instalan todas las dependencias necesarias para poder crear las
bases de datos y tablas necesarias para el funcionamiento del dispositivo de seguimiento.

42
2. La instalación de java se realizará mediante la siguiente línea de comandos.
sudo apt-get install default-jre

3. Por último se instalará la biblioteca de interconexión para la Raspberry Pi pi4j me-


diante los siguiente comandos:

curl -s get.pi4j.com | sudo bash

4.3. Prototipo 1: Módulo de muestreo o adquisición de


datos: analógicos, discretos y GPS.
Definición general.

Este módulo se encarga de muestrear la señal de la ubicación a través del GPS, además
de las señales analógicas y discretas; así mismo almacenar dichos datos muestreados en un
repositorio de datos dentro del dispositivo.

Ejemplos de señales a muestrear de un automóvil en movimiento:

Sensor de apertura de puertas (Digital)

Revoluciones por minuto (Analógica)

Conexión de tracto camión (Digital)

Nivel de la gasolina (Analógica)

Carga de la batería (Analógica)

Temperatura (Analógica)

Freno de mano (Digital)

Velocidad (Analógica)

Encendido (Digital)

Además a través del GPS obtendrá la posición determinada por la latitud y la longitud.

Objetivos del prototipo.

1. El dispositivo debe ser capaz de leer 8 señales discretas.

2. El dispositivo debe de tener la capacidad de leer 6 señales analógicas.

43
3. El dispositivo debe de ser capaz de obtener la posición a través del GPS.

4. El dispositivo debe proporcionar un mecanismo de almacenamiento de los datos adqui-


ridos.

Análisis y diseño del prototipo.

Para cubrir los objetivos del prototipo se desarrolla un módulo de muestreo que se encar-
gue de adquirir o leer las señales que lleguen a las entradas y controlar la adquisición de la
posición vía GPS para su posterior almacenamiento. El funcionamiento mencionado puede
reflejarse en la figura 4.3

Figura 4.3: Módulo de muestreo

Posición GPS: Los 3 modos de operación del GPS serán implementados en el dispositivo
GPS stand-alone, GPS asistido y GPS base. (más información véase el anexo A).

Para las señales analógicas y discretas deben ser recibidas por cables que puedan ser
fijados en el dispositivo a través de borneras.

El registro de datos se realizara cada cierto periodo de tiempo o a petición.

La figura 4.4 presenta el diagrama de flujo del funcionamiento general de este dispositivo.

44
Figura 4.4: Diagrama de flujo

Los datos que se registrarán se muestran en la siguiente figura, donde se muestra el


diagrama entidad relación de la base de datos en cuestión conformada por una única tabla
de registro.

Figura 4.5: Diagrama E-R

En cuanto al soporte de software se da gracias al siguiente diagrama de clases:

45
Figura 4.6: Diagrama de clases

A continuación se muestra el diseño del circuito electrónico de la bornera que cuenta con
2 reguladores de voltaje para llevar una entrada de voltaje entre 12v y 48v a 2 salidas, la
primera de 5v para alimentar al dispositivo (principalmente a la tarjeta Raspberry Pi) y
una de 3v para proveer un voltaje que pueda ser utilizado por la aplicación que requiera al
dispositivo de seguimiento:

46
Figura 4.7: Diagrama esquematico hardware
47
En la figura 4.7 se muestra el diseño del circuito lógico y en la figura 4.8 se muestra el
diseño para implementarse en un circuito impreso del mismo circuito. Se ajustan los pines
a borneras adecuadas para manejar los cables de las entradas de alimentación, analógicas y
discretas.

Figura 4.8: Diagrama para PCB de hardware

Con el circuito impreso se procedió a realizar las pruebas que se muestran en la siguiente
sección.

Para obtener la ubicación se utiliza el módulo SIM5218, a través de comandos AT enviados


por la UART de la Rapberry Pi. Los comandos AT utilizados en este prototipo son los
siguientes:

AT: Conocer el estado del módulo

AT+CREG?: Registro en la red móvil.

AT+CGSOCKCONT: Servidor APN.

AT+CSOCKAUTH: Autenticación de red móvil.

AT+CGPS: Establecer modo de operación del GPS.

AT+CGPSURL: Establecer servidor GPS para modo del GPS asistido.

AT+CGPSSSL: Certificado SSL del servidor GPS.

AT+CGPSINFO: Obtener posición GPS.

Pruebas realizadas

Para la realización de la evaluación se realizaron pruebas con el dispositivo conectado a un


dip switch de 8 bits para probar las entradas discretas y 6 potenciómetros para ejemplificar

48
las entradas analógicas.

En el caso de las entradas analógicas se utiliza en el dispositivo una escala del 0 al 100
mostrando en porcentaje el nivel de voltaje de 0 a 3.3v. En el caso de las discretas tendrá
uno de 2 valores (alto, 1 ó bajo, 0)

Se comprobó la adquisición de las señales y se guardaron en el repositorio dentro del


dispositivo.

4.4. Prototipo 2: Módulo de comunicación de datos a


través de la red de telefonía móvil.
Definición general.

Este módulo se encarga de proveer al dispositivo un medio de conexión a la red de te-


lefonía móvil a través del módulo SIM5218 con el fin de establecer comunicación con un
sistema externo al dispositivo a través del protocolo de aplicación definido (véase sección de
la propuesta de protocolo).

Objetivos del prototipo.


El dispositivo debe ser capaz de comunicarse a través de la red de telefonía móvil.
Análisis y diseño del prototipo.
Este módulo se encarga de leer el registro de datos de las señales adquiridas y enviarlas a
través de la red de telefonía móvil, como se muestra en la figura 4.9 mostrada a continuación.

Figura 4.9: Prototipo 2

49
También se muestra el diagrama de flujo del funcionamiento del prototipo en la figura
4.9. Para establecer la comunicación se utiliza el módulo SIM5218, a través de comandos AT
enviados por la UART de la Rapberry Pi.

La comunicación es bidireccional en modo petición respuesta a través de comandos AT.

Los comandos AT utilizados son los siguientes:


AT: Conocer el estado del módulo
AT+CREG?: Registro en la red móvil.
AT+CGSOCKCONT: Servidor APN.
AT+CSOCKAUTH: Autenticación de red móvil.
AT+NETOPEN: Abrir red a TCP.
AT+TCPCONNECT: Abrir socket y conectar.
AT+TCPWRITE: Escribir al socket.
AT+NETCLOSE: Cerrar red y sockets.

Figura 4.10: Diagrama de flujo prototipo 3

50
En cuanto al diagrama de clases, se mantiene el diagrama de la figura 4.4, añadiendo
únicamente en este prototipo los comandos de funcionalidad de comunicación.

Se desarrolla además el protocolo de comunicación que se verá más adelante.


Pruebas realizadas

Para las pruebas del módulo de comunicación del dispositivo de seguimiento se realiza-
ron conectándolo a un servidor utilizando el protocolo de transporte TCP y enviando una
respuesta de acuerdo al mensaje enviado.

4.5. Prototipo 3: Módulo de configuración.


Definición general.

Este módulo se encargará de guardar la configuración del funcionamiento del dispositivo,


permitiendo su modificación y su lectura.

Objetivos del prototipo.

El dispositivo debe ser capaz de guardar la configuración

Análisis y diseño del prototipo.

El módulo tendrá el control de la configuración del dispositivo, guardara los datos en un


archivo interno y lo cargara al iniciarse. En la figura 4.11 se muestra el diagrama general del
prototipo del módulo de configuración. El módulo se conectará con otros módulos y no hace
uso directo del módulo SIM5218.

51
Figura 4.11: Prototipo 3

Las opciones a configurar son las siguientes:

Intervalo de adquisición de señales.

Servidor de envío de información y puerto.

Modo de operación del GPS.

Tipo de envío de información.

Para dar soporte a dicho diagrama del prototipo 3 se añadieron 2 clases al diagrama de
clases anterior, se muestra en la siguiente figura.

52
Figura 4.12: Diagrama de clases modificado para prototipo 3

El modelo de datos guardados se basa en el par llave valor, como se muestra en la siguiente
tabla.

53
Figura 4.13: Diagrama de clases modificado para prototipo 3

Pruebas

Se realizaron pruebas al y reconfigurar del dispositivo, al encendido de que guardara


adecuadamente la configuración establecida.

4.6. Prototipo 4: Propuesta de Protocolo de Comuni-


cación
Para poder realizar dicha comunicación con un servidor a través del dispositivo se plan-
teó una propuesta de solución para un protocolo de comunicación, el cual va enviar toda la
información recopilada del dispositivo a un servidor el cual se encargara de almacenarla y
presentarla a través de un mapa, desplegando simplemente la información, por medio de un
histórico de las posiciones, etc.

Dicho protocolo está estructurado a través de parámetros contenidos dentro de una url del
dispositivo hacia el servidor, estos van variando dependiendo de la función o acción a realizar
del dispositivo y son almacenadas en el servidor o en su defecto reciben una respuesta del
servidor en caso de algún error, las respuestas del servidor hacia el dispositivo es a través
de objetos tipo JavaScript con formato JSON, ya sean mensajes de error o notificaciones de
éxito en el registro o acción realizada por el dispositivo.

A continuación se presenta el listado de los mensajes y respuestas de dicho protocolo:

4.6.1. Mensaje de almacenamiento de posiciones


Descripción: Mensaje que envía el dispositivo al servidor con el propósito de almacenar
la posición del vehículo a través de coordenadas geográficas (latitud y longitud), id (identifi-
cador propio del dispositivo), placas del vehículo, tipo de mensaje y los valores analógicos o
discretos de las variables sensadas.

Los parámetros y la estructura del mensaje es la siguiente:

request = {
“latitud": ,

54
“longitud":,
“id": id,
“placas": placas,
"type": 1,
"sd0": valor,
"sa0": valor
}

Las respuestas posibles del servidor son:

Respuestas del Servidor Descripción


Respuesta generada cuando los datos ingre-
response = {“ack": 1}
sados han sido correctos.
Respuesta generada cuando el mensaje está
response = {“error": -1}
mal formado.
Sucede cuando el dispositivo ya está asignado
response = {“error": 1} y las placas y el IMEI no coinciden (a pesar
de que ambos estén registrados.
Sucede cuando el dispositivo envía datos de
response = {“error": 2} sensores que no están activados para su lec-
tura.
Sucede cuando el dispositivo envía coordena-
response = {“error": 4} das pero tiene un estado pasivo, es decir no
envía coordenadas de manera continua.

Cuadro 4.1: Tabla de respuestas 1

4.6.2. Mensaje de obtención de ruta/historiales


Descripción: Mensaje que envía el dispositivo al servidor con el propósito de obtener la
posición o listado de posiciones del vehículo a través de coordenadas geográficas (latitud y
longitud), la cantidad de posiciones recibidas dependerá del parametro tiempo, ya que puede
ser por fecha o por número de registros en la base de datos.

Los parámetros y la estructura del mensaje es la siguiente:

request = {
“id": id,
“placas": placas,
“type": 2,
“tiempo": fecha/número de registros

55
}

Las respuestas posibles del servidor son:

Respuestas del Servidor Descripción


response = {“coordenadas":
Sucede como respuesta al cliente que solici-
latitud, longitud ta las posiciones por fecha o por número de
registros.
}
Respuesta generada cuando el mensaje está
response = {“error": -1}
mal formado.
Sucede cuando el dispositivo ya está asignado
response = {“error": 1} y las placas y el IMEI no coinciden (a pesar
de que ambos estén registrados.

Cuadro 4.2: Tabla de respuestas 2

4.6.3. Mensaje de sincronización del dispositivo


Descripción: Mensaje que envía el dispositivo al servidor con el propósito de configurarlo
antes de que dicho dispositivo empiece su funcionalidad (envío de posiciones, envío de datos,
etc), entre los parámetros se encuentran algunos de los antes mencionados y se incluyen el
estado del dispositivo, el cual es el que determinara el funcionamiento propio del dispositivo
(activo 1, pasivo 2 o mixto 3), la señal de auxilio (sos) la cual se activara con 1 o se desacti-
vara con 0 y por último el numero celular al que se enviara la señal de auxilio.

Los parámetros y la estructura del mensaje es la siguiente:

request = {
“id": id,
“placas": placas,
“type": 5,
“sdigital": estado,
“sanalogico": estado,
“estado": 1/2/3 //activo/pasivo/mixto,
“sos": 0/1,
“sos_num": numero de celular
}

56
Las respuestas posibles del servidor son:

Respuestas del Servidor Descripción


Respuesta generada cuando los datos ingre-
response = {“ack": 1}
sados han sido correctos.
Respuesta generada cuando el mensaje está
response = {“error": -1}
mal formado.
Sucede cuando el dispositivo ya está asignado
response = {“error": 1} y las placas y el IMEI no coinciden (a pesar
de que ambos estén registrados.
response = { “id": id,
“placas": placas, “type": 5,
“sdigital": estado Respuesta generada cuando se han verificado
“sanalogico": estado las placas y el IMEI pero los datos no corres-
“estado": 1 “sos": 1 ponden a los registrados en la base de datos.
“sos_num": numero de
celular }

Cuadro 4.3: Tabla de respuestas 3

4.6.4. Mensaje de reconfiguración del dispositivo


Descripción: Mensaje que envía el dispositivo al servidor con el propósito de reconfigu-
rarlo ya que se desea cambiar algun parametro de configuración.

Los parámetros y la estructura del mensaje es la siguiente:

request = {
“id": id,
“placas": placas,
“type": 6,
“sdigital": estado,
“sanalogico": estado,
“estado": 1/2/3 //activo/pasivo/mixto,
“sos": 0/1,
“sos_num": numero de celular
}

Las respuestas posibles del servidor son:

57
Respuestas del Servidor Descripción
Respuesta generada cuando los datos ingre-
response = {“ack": 1}
sados han sido correctos.
Respuesta generada cuando el mensaje está
response = {“error": -1}
mal formado.
Sucede cuando el dispositivo ya está asignado
response = {“error": 1} y las placas y el IMEI no coinciden (a pesar
de que ambos estén registrados.

Cuadro 4.4: Tabla de respuestas 4

4.6.5. Mensaje de alarma SOS del dispositivo


Descripción: Mensaje de alarma que envía el dispositivo al servidor con el propósito
alertarlo de alguna emergencia y así poder ser notificado al instante tanto en el celular como
para poder almacenar dicho registro en el servidor.

Los parámetros y la estructura del mensaje es la siguiente:

request = {
“id": id,
“placas": placas,
“type": 7 //SOS }

Las respuestas posibles del servidor son:

Respuestas del Servidor Descripción


Respuesta generada cuando los datos ingre-
response = {“ack": 1}
sados han sido correctos.
Respuesta generada cuando el mensaje está
response = {“error": -1}
mal formado.
Sucede cuando el dispositivo ya está asignado
response = {“error": 1} y las placas y el IMEI no coinciden (a pesar
de que ambos estén registrados.

Cuadro 4.5: Tabla de respuestas 5

58
4.6.6. Tamaño de peticiones y consumo de datos
Tamaños de mensaje de respuesta json.

Máximo: 290 bytes

Medio: 140 bytes

Mínimo: 10 bytes

Tamaños promedio de petición en propuesta de protocolo de comunicación.

Máximo: 18kb

Medio: 12kb

Mínimo: 5kb

Tomando el tamaño medio de petición, incluido el consumo de datos del GPS asistido
tenemos en promedio de 83 peticiones por Mb.

Considerando un día con el dispositivo configurado a adquirir datos y transmitirlos cada


5 minutos se obtienen 3.5 mb de consumo de la telefonía móvil celular al día.

4.7. Prototipo 5: Caso de Estudio.


Para demostrar el funcionamiento del dispositivo, se propuso un caso de estudio el cual
se encargara de validar y mostrar la manera en la que se obtienen las variables analógicas y
discretas a través de este mismo, así como de enviar la información junto con su posición a
un servidor, para que de esta manera pueda visualizar la información (a través de un mapa),
de igual forma se incluyeron dentro de las características el enviar un mensaje de texto a un
celular a través del dispositivo de seguimiento.

Primero que nada el dispositivo se colocó dentro de un portafolio transparente, junto con
el cual se conectó un display que permitía visualizar con mayor facilidad el funcionamiento
del dispositivo, a este portafolio de igual forma se añadieron las variables analógicas y dis-
cretas con las cuales se demuestra el correcto funcionamiento del dispositivo.

A continuación se muestra una imagen del resultado final del portafolio, el cual contiene
todos los elementos antes mencionados.

59
Figura 4.14: Dispositivo

Para poder interactuar con el dispositivo y visualizar los resultados a través del display, se
desarrolló una aplicación en java, la cual permitirá visualizar la información obtenida a través
del dispositivo y que de igual forma permite configurar ciertos parámetros del dispositivo para
demostrar las funcionalidades aplicadas en este trabajo terminal.

60
Figura 4.15: Interfaz de usuario

En la figura 4.15 se puede apreciar la interfaz de usuario con la que cuenta el dispositivo
de seguimiento, esta cuenta con:

Opción para elegir la compañía móvil de la tarjeta sim que se usa para el plan de datos.

El modo de transmisión de la información, ya sea por 3G/GPRS (datos celulares) o


por ethernet, e caso de no contar una tarjeta sim.

El servidor al cual se enviaran los datos, esto a través de la ip y el puerto en el que se


encuentra.

El modo en el cual configurar la obtención de la señal GPS, ya sea S-GPS (Modo


asistido y GPS), A-GPS (Modo asistido) o GPS.

Número de teléfono celular para envío de mensajes de texto y llamadas telefónicas.

61
En la parte inferior del portafolio, se colocaron 6 potenciómetros para simular 6 variables
analógicas obtenidas y un dipswitch de 8 interruptores para simular las variables discretas,
estos van conectados directamente a las entradas seriales del circuito desarrollado previamente
4.7, este mismo circuito cuenta con una salida de 12 volts diseñada específicamente para
alimentar el display del portafolio.

Figura 4.16: Variables sensadas

Por la parte del servidor se utilizó una Raspberry Pi con servidor Tomcat, en el cual se
montó un proyecto que contiene la interacción con el mapa y la inserción en la base de datos
de la información recibida, esta es otra de las características en las cuales se puede aprovechar
la funcionalidad de la Raspberry Pi.

Una vez realizado esto, se realizó el diseño de una caja para poder contener el dispositivo,
y con la cual se pueda portar el dispositivo a cualquier lugar sin la necesidad de llevar el
portafolio completo, esto fue también para independizar el dispositivo y reducir su tamaño
para poder colocarse en cualquier vehículo.

62
Figura 4.17: Variables sensadas

64
4.7.1. Demostración
Al conectar el dispositivo se iniciara y mostrara la pantalla principal del sistema operativo,
después se inicia la aplicación la cual almacena los últimos valores de configuración utilizados
previamente

Figura 4.18: Aplicación en el dispositivo

A continuación se presiona el botón de obtener datos para iniciar su funcionamiento y


obtener las variables y la posición actual.

En la siguiente imagen se visualizan los valores obtenidos a través del display del dispo-
sitivo.

65
Figura 4.19: Valores Obtenidos 1

Por parte de la aplicación montada en el servidor, se despliega un mapa con el cual se


indica la posición en la que se encuentra el dispositivo.

66
Figura 4.20: Ubicación del dispositivo 1

Después se consulta la última posición del dispositivo y despliega el lugar en el que se


encuentra junto con su coordenada.

Figura 4.21: Ubicación del dispositivo 2

Para consultar el valor de las variables recibidas en el servidor, se presiona el boton

67
información del vehiculo ,y se despliega una ventana de alert con las variables recibidas.

Figura 4.22: Ventana de información

68
Capítulo 5

Conclusiones

En éste capítulo se exponen las conclusiones por parte del equipo, incluyendo argumentos
ante las dificultades enfrentadas, las soluciones dadas y los resultados obtenidos.

A continuación se enlistan dichos argumentos:

Durante el desarrollo del presente trabajo terminal se concluye que la elección del
hardware y software utilizado, cumple con las características para el desarrollo de un
dispositivo de seguimiento y adquisición de datos, para el envío de información mediante
la red de telefonía móvil.

El hardware elegido en el desarrollo de este trabajo terminal cumple con las caracte-
rísticas requeridas para su funcionamiento y establece una base escalable para futuros
desarrollos.

El lenguaje de programación elegido (java) para el desarrollo del dispositivo en este


trabajo terminal cumple con las características requeridas, sin embargo se consideró
que se pueden hacer mejoras en rendimiento utilizando otros lenguajes, tales como c,
c++, python, etc.

El desarrollo de una propuesta de protocolo de comunicación cumplió la funcionalidad


de comunicar al dispositivo de seguimiento con un servidor.

A pesar de la curva de aprendizaje, la investigación de las nuevas tecnologías y el tiem-


po reducido de desarrollo se cumplieron con los objetivos del presente Trabajo Terminal.
Comprobamos la elección y la integración de elementos que componen el dispositivo de se-
guimiento, validamos su funcionamiento y además de conocer que existen algunas mejoras
a nuestro diseño e implementación (por ejemplo, el elegir un lenguaje de programación que
nos permita mejorar el rendimiento del dispositivo). Y colocamos las bases de un desarrollo
tecnológico con varias vertientes para su mejora y desarrollo futuro.

69
Capítulo 6

Trabajo Futuro

Algunas de las posibles vertientes de desarrollo del presente trabajo terminal son:

Implementación de nuevas funcionalidades a la propuesta de protocolo de comunicación.

Comunicación y configuración del dispositivo a través de tecnología Bluetooth.

Integrar una etapa de acondicionamiento de las señales para permitir al dispositivo


mayor rango de operación en las variables eléctricas adquiridas.

Integración con la interfaz OBD II y el protocolo CAN BUS (protocolo estándar ma-
nejado por varias marcas de automóviles para comunicación con la computadora de
viaje).

Integración con protocolos SPI e I2C (para comunicación con diversos dispositivos como
lo son sensores, actuadores, convertidores ADC, etc.)

Mejorar el diseño electrónico de hardware para contemplar el ruido eléctrico inducido


por los vehículos automotores en el encendido del vehículo así como la implementación
de una batería y su sistema de carga para añadir autonomía al dispositivo.

Implementación de llamadas de voz de 2 vías.

Desarrollo de una aplicación móvil para Smartphones que permita la configuración y


comunicación a través de la misma.

Mejorar el diseño desarrollo de la caja o estuche, que contiene al dispositivo, para hacerla
más pequeña y práctica (con las medidas justas y exactas del dispositivo), dotarla de
herrajes u orificios de sujeción que faciliten su montaje en un vehículo.

Integración completa con un Framework de desarrollo de Sistemas AVL.

70
Bibliografía

[1] Acetrack, About vehicle trakcing [En línea]. Disponible: http://www.acetrack.com.my/


tracking.html

[2] Ministry of interior fire safety and resque directorate general, AVL, Sys-
tem for fire brigades.[En línea]. Disponible: http://www.google.com.mx/
url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCoQFjAA&url=http%
3A%2F%2Fwww.ctif.fi%2Fresources%2Fuserfiles%2FFile%2FCTIF%2520Fire%
2520Prevention%2F2010_Bulgaria_AVL_system.pps&ei=zndRU_C6GqmG8QH9vIGwAQ&
usg=AFQjCNGJknS91BwScQiCIcRaJBK9Hd0t_Q&bvm=bv.65058239,d.b2U

[3] Hugo Morales (2012, Mayo 5), GLONASS: ¿Qué es y por qué im-
porta? [En línea]. Disponible: http://www.wayerless.com/2012/05/
glonass-que-es-y-por-que-se-usa-en-los-moviles-de-ahora/

[4] Localización satelital (2009, Septiembre 10) GPS VS. RADIO FRECUENCIA
[En línea]. Disponible: http://localizacionviasatelite.blogspot.mx/2009/09/
gps-vs-radio-frecuencia.html

[5] Gisits RASTREO Y MONITOREO VEHICULAR AVL - Automatic Vehicle Location


[En línea]. Disponible: http://www.gisits.com/avl.html

[6] Guochang Xu, Ïntroducción.en GPS: Theory, Algorithms and Applications. Ger-
many:Editorial Springer (2003).

[7] Joel McNamara, "GPS fundamentals.en GPS for dummies. Wiley Publishing, Inc (2004).

[8] Revista muy interesante Elena Sanz (2011, octubre 20) Cinco co-
sas que deberías saber sobre el sistema de navegación Galileo [En lí-
nea]. Disponible: http://www.muyinteresante.es/tecnologia/articulo/
cinco-cosas-que-deberias-saber-sobre-el-sistema-de-navegacion-galileo

[9] Página oficial glonass [En línea]. Disponible: http://glonass-iac.ru/en/GLONASS/

[10] Navipedia (2012, septiembre 28) COMPASS General Introduction [En línea]. Disponible:
http://www.navipedia.net/index.php/COMPASS_General_Introduction

71
[11] México consolida su sistema satelital [En línea]. Disponible: http:
//www.conacytprensa.mx/index.php/sociedad/politica-cientifica/
793-mexico-sistema-satelital-mexsat

[12] [Imagen de segmentos GPS] Recuperado de: Artículo Ingeniería Topográfica,


blog para seguimiento de información http://velezortarafael.blogspot.mx/p/
investigacion-educativa.html

[13] National Coordination Office for Space-Based Positioning, Navigation, and Timing
(2014, Marzo 17) GPS Accuracy [En línea]. Disponible: http://www.gps.gov/systems/
gps/performance/accuracy/

[14] WayGPS.com A-GPS (GPS asistido) [En línea]. Disponible:http://www.waygps.com/


a-gps-asistido.php

[15] GPS World staff (2013, Marzo 1) Showing Smartphones the Way Inside [En línea]. Dis-
ponible: http://gpsworld.com/showing-smartphones-the-way-inside/

[16] Clint Smith y Daniel Collins 3G Wireless Networks. USA, Mc Graw Hill Comunications,
2000.

[17] Comer D., y Stevens, D. Internetworking with TCP/IP Volume I: Principles, Protocols,
and Architecture. USA, Pretntice Hall, 2000.

[18] Mitaller, Función de los sensores, ubicación y fallas en el auto [En línea]. Disponible:
http://www.mitaller.com/content/funcion-sensores-ubicacion-fallas-auto

[19] J. Ramírez, Universidad Nacional de Colombia, Geografía y Cartografía [En línea]. Dis-
ponible: http://www.unalmed.edu.co/~jramirez/libro/cartografiaygeografia.
htm

[20] Ibid.

[21] Help Arcgis, ¿Qué son los sistemas de coordenadas geográficas? [En línea]. Dis-
ponible: http://help.arcgis.com/es/arcgisdesktop/10.0/help/index.html#//
003r00000006000000

[22] Antonio F. Rodríguez, IGN España (2010, Agoso 23), Análisis comparativo de ser-
vidores de mapas [En línea]. Disponible: http://blog-idee.blogspot.mx/2010/08/
analisis-comparativo-de-servidores-de.html

[23] Ministerio de Fomento Español, Bases de datos geográficas [En línea]. Dis-
ponible: http://www.fomento.es/MFOM/LANG_CASTELLANO/DIRECCIONES_GENERALES/
INSTITUTO_GEOGRAFICO/CARTOGRAFIA/BBDD/

[24] Javier J. Gutiérrez (Mayo 2006), ¿Qué es un framework web? [En línea]. Disponible:
http://www.lsi.us.es/~javierj/investigacion_ficheros/Framework.pdf

72
[25] Demián Gutierrez (Abril 2010), Frameworks y Componentes [En línea]. Dis-
ponible: http://www.codecompiling.net/files/slides/IS_clase_10_frameworks_
componentes.pdf

[26] AjaxShake, Framework HTML5 para acelerar su desarrollo [En


línea]. Disponible: http://www.ajaxshake.com/es/JS/2410671/
framework-html5-para-acelerar-su-desarrollo-html5-boilerplate.html

[27] FRAMEWORK, SDK, BIBLIOTECA, API: ¿CUÁLES SON LAS DI-


FERENCIAS? [En línea]. Disponible: http://www.4rsoluciones.com/
framework-sdk-biblioteca-api-cuales-son-las-diferencias/

[28] Cornejo,V.E.,Cázarez (Septiembre 2012), La reutilización de software en Grails Fra-


mework [En línea]. Disponible: http://www.uaeh.edu.mx/nuestro_alumnado/icbi/
articulos/La_reutilizacion_de_software_en_Grails_Framework

[29] El Guru Programador, Que es un API [En línea]. Disponible: http://oldies.


elguruprogramador.com.ar/articulos/que-es-una-api.htm

[30] GPS Asintec, Localización de Vehículos [En línea]. Disponible: http://www.


asintecgps.com/localizacion-gps/localizacion-de-vehiculos

[31] Rastreo Satelital de Colombia, Rastreo Satelital para Flotas [En línea]. Disponible: http:
//www.rastreo.com.co/rastreo/rastreo-de-flotas.html

[32] Patrick Campbell (2011, Septiembre 6) Choosing and implementing a successful


GPS/AVL solution [En línea]. Disponible: http://www.onterrasystems.com/
storage/fleetsavvy/Fleet%20Managers%20-%20Choosing%20and%20Implementing%
20Successful%20GPS-AVL%201.4.pdf

[33] GPNetworks [En línea]. Disponible: http://www.gpnetworks.co.uk/

[34] Lo Jack [En línea]. Disponible: http://www.lojack.com/Home

[35] Black Jack [En línea]. Disponible: http://www.lojack.com.mx/black-jack/

[36] CosoAVL [En línea]. Disponible: http://www.cosoavl.com

[37] Encontrack [En línea]. Disponible: http://www.encontrack.com/enk/index.php

[38] Prosegur [En línea]. Disponible: http://www.prosegur.com.co/

[39] CosoAVL servicio básico [En línea]. Disponible: http://www.cosoavl.com/


soluciones_localizacion_automatica_gps_basico.html

[40] CosoAVL servicio premium [En línea]. Disponible: http://www.cosoavl.com/


soluciones_localizacion_automatica_gps_premium.html

73
[41] CosoAVL servicio next generation [En línea]. Disponible: http://www.cosoavl.com/
soluciones_localizacion_automatica_gps_next.html
[42] OpenGTS, Open GPS Tracking System [En línea]. Disponible: http://opengts.
sourceforge.net/
[43] Traccar http://www.traccar.org/
[44] Página oficial de OpenLayers [En línea]. Disponible: http://openlayers.org/
[45] Oracle, Javadoc Tool [En línea]. Disponible: http://www.oracle.com/technetwork/
java/javase/documentation/javadoc-137458.html
[46] Petrocad S.A.,[En línea]. Disponible: http://www.petrocad3d.com/linkus.php?link=
1264&id=13. [Último acceso: 1 Mayo 2014]
[47] A. G. Rebolledo, Webfecto, 27 Enero 2009. [En lí-
nea]. Disponible:http://www.webfecto.com/2011/08/14/
rastreo-satelital-de-vehiculos-gps-tracker-gps-trooper/. [Último acceso: 1
Mayo 2014].
[48] GPSNorte, [En línea]. Disponible: http://www.gpsnorte.cl/docs/Explicacion%
20GPS%20Tracking.pdf. [Último acceso: 1 Mayo 2014].
[49] Arduino, [En línea]. Disponible: http://www.arduino.cc/es/. [Último acceso: 2 Mayo
2014].
[50] Arduino, [En línea]. Disponible: http://arduino.cc/en/Main/ArduinoBoardUno. [Úl-
timo acceso: 2 Mayo 2014].
[51] beaglebone.org, [En línea]. Disponible: http://beagleboard.org/Products/
BeagleBoard-xM. [Último acceso: 2 Mayo 2014].
[52] Raspberry Pi en español, [En línea]. Disponible:http://www.raspberrypi.es/. [Último
acceso: 2 Mayo 2014].
[53] Raspberry Pi en español, [En línea]. Disponible: http://www.raspberrypi.es/
hardware-raspberry-pi.php. [Último acceso: 2 Mayo 2014].
[54] Raspberry Pi en español, [En línea]. Disponible: http://www.raspberrypi.es/
software-raspberry-pi.php. [Último acceso: 2 Mayo 2014].
[55] Raspberry Pi, [En línea]. Disponible: http://www.raspberrypi.org/downloads/. [Úl-
timo acceso: 2 Mayo 2014].
[56] Raspberry Pi to Arduino Shields Connection Bridge, [En línea]. Dis-
ponible: https://www.cooking-hacks.com/documentation/tutorials/
raspberry-pi-to-arduino-shields-connection-bridge/.

74
[57] 3G + GPS shield over Arduino and Raspberry Pi, [En línea]. Dis-
ponible: https://www.cooking-hacks.com/documentation/tutorials/
3g-gps-shield-arduino-raspberry-pi-tutorial.

[58] Ken Schwaber, “Agile Project Management With Scrum,” Microsoft Professional, 1st
edition, Microsoft Press, United States, 2004.

75
Capítulo 7

Glosario

AVL: acrónimo de Automatic Vehicle Loacation, o Localización Vehicular Automati-


zada.

Alarma: señal emitida propiamente del dispositivo, con la función de emitir un ruido
o señal de auxilio para informar de algún problema y ubicar de manera rápida la ubi-
cación del dispositivo a través de estos factores.

Alerta: señal emitida hacia el servidor del dispositivo, con la función de informar al
usuario de algun cambio de variable registrado por el dispositivo.

GPS: acrónimo de Global Positioning System, o Sistema de Posicionamiento Global.

Mapa: modelo gráfico de la superficie terrestre donde se representan objetos espaciales


y sus propiedades métricas, topológicas y atributivas.

Protocolo: conjunto de reglas de comunicación que rigen el intercambio de información


entre dos equipos o sistemas conectados entre sí.

76
Apendice A

Dispositivos de Localización

A continuación se describen de forma más detallada los principales dispositivos que son
utilizados para obtener la ubicación del vehículo, y las funcionalidades que aportan como
beneficios en la creación de un sistema AVL.

A.1. GPS Tracker


Los sistemas AVL utilizan diferentes dispositivos de localización, entre ellos los más co-
munes son los denominados GPS Tracker. Un GPS Tracker es un dispositivo que utiliza el
Sistema de Posicionamiento Global para determinar su ubicación, este dispositivo puede ser
empotrado dentro de un vehículo y su función radica en registrar las ubicaciones cada cierto
intervalo de tiempo (en general determinado por el usuario o el fabricante) para luego enviar-
las a través de redes móviles (cómo GPRS/GSM) a un servidor en el cual serán recopiladas[46].

Un GPS Tracker cuenta con dos módulos principales:

Módulo GPS: se encarga de la recepción y procesamiento de las señales de los satélites.

Módulo de comunicaciones GPRS/GSM: envía los datos a un servidor por medio del
módulo GSM, a través del canal GPRS, a un servidor o base de datos para ser accesados
vía Internet y visualizar la información de forma gráfica.

Y dichos módulos cumplen con las siguientes funciones, aunque varían de acuerdo al mo-
delo del dispositivo[47][48]:

Obtener ubicación, dirección y velocidad en tiempo real de sus dispositivos.

Informes históricos de ruta y trayectoria seguida por los dispositivos.

Enviar SMS a la unidad para iniciar la alerta por exceso de velocidad.

77
Establecer una geocerca de la unidad para limitar sus movimientos dentro de una zona.
La unidad enviará el mensaje a todos los números autorizados cuando se viole la zona
asignada.

Enviar SMS para reanudar el valor predeterminado de fábrica del dispositivo.

Se añadir un microcontrolador a los módulos antes descritos para apagar un vehículo en


forma remota, deteniendo así un robo o una entrada a una zona no autorizada. Dicho
apagado se hace desde un teléfono celular mediante SMS.

A continuación se mencionan algúnas de las más importantes aplicaciones para éstos


dispositivos:

Rastreo de vehículos particulares.

Control para renta de automóviles y flotas de taxis.

Rastreo de camiones o maquinarias.

Rastreo de personal de reparto.

Seguimiento de motocicletas.

Seguimiento de cargas importantes.

A.2. Arduino
Arduino es una plataforma de electrónica abierta para la creación de prototipos basada
en software y hardware libre, que cuenta con un microcontrolador Atmel AVR, el cual se
programa mediante el lenguaje de programación Arduino (basado en Wiring) y que dispone
de puertos de entrada y salida además del entorno de desarrollo ArduinoIDE (Integrated
Development Environment) basado en lenguaje C[49].

Ësta plataforma puede tomar información del entorno a través de sus pines de entrada
de toda una gama de sensores como son receptores de GPS, módulos Ethernet, sensores de
velocidad, sensores de presencia, etc., con la finalidad de añadir otras funcionalidades al Ar-
duino y poder afectar aquello que le rodea controlando luces, motores, actuadores, etc[49].

Una ventaja de esta placa es que tanto el hardware y software del Arduino son libres,
es decir que códigos, esquemático y diseño pueden ser utilizados libremente por cualquier
persona para sus proyectos. Además también dispone de la facilidad de poder reemplazar el
microcontrolador AVR que contiene por uno nuevo en caso de que sea necesario.

78
Existen diferentes modelos de Arduino que los hace únicos, los cuales se mencionaran a
detalle en el anexo de este documento.

En la figura A.1 se muestra una imágen con el modelo más comun de arduino: el arduino
uno.

Figura A.1: Arduino Uno[50]

A.3. BeagleBoard
La plataforma de desarrollo BeagleBoard-xM, es una placa que también puede controlar
hardware externo a través de sus pines y fue diseñada para la implementación de infinidad
de aplicaciones tales como multimedia, robótica, domótica, etc., y está diseñada para satis-
facer las necesidades de la comunidad de código libre. La BeagleBoard-xM cuenta con un
sistema en chip (System on Chip, SoC) DM3730 compuesto por 2 procesadores, un proce-
sador de propósito general ARM Cortex A8 y un procesador digital de señales DSP C64P. [51]

La plataforma cuenta además con una memoria RAM de 512 MB y distintos periféricos
entre los que destacan: 4 puertos USB (host y OTG), puerto Ethernet y RS232, JTAG, sopor-
te para DVI-D, S-video, puerto para cámara, entrada y salida para audio estéreo, así como un
puerto para microSD de hasta 4GB, con lo que se busca principalmente accesibilidad para los
usuarios y facilidad de desarrollo para esta plataforma. Otra característica importante es que
la misma puede ser programada en una gran variedad de lenguajes: C/C++, Java, Python,
Ruby, PHP, Javascript, etc., y assembler como un microcontrolador regular, debido a que
soporta sistemas Linux y Android. Estas características le permiten tener un rendimiento
similar al de algunas computadoras portátiles pero manteniendo el consumo de potencia de
dispositivos móviles.[51]

En la figura A.2 se muestra una imágen del modelo BeagleBoard-xM.

79
Figura A.2: BeagleBoard-xM[51]

A.4. Raspberry Pi
La Raspberry Pi es una microcomputadora del tamaño de una tarjeta de crédito, la cual
con las actualizaciones necesarias puede convertirse en un excelente ordenador portátil para
el usuario. Su reducido tamaño y precio la han convertido en una herramienta ideal para el
desarrollo de diferentes proyectos, tanto en el ámbito empresarial como en el personal, lle-
gando incluso a sustituir o complementar a la placa Arduino en algunos de estos proyectos.[52]

Actualmente hay dos versiones de la placa a la venta, el modelo A y el modelo B el cual


ocuparemos para nuestro proyecto. El modelo A es más económico, pero por el contrario
carece de algunos puertos y especificaciones que si están presentes en el modelo B destacando
entre ellos la ausencia de un puerto USB menos respecto al modelo B y la carencia de un
puerto Ethernet con el que poder conectar la Raspberry Pi a una red.

El modelo B en cambio es el que hasta el momento ofrece mejores especificaciones, un


aumento de la memoria RAM de 256 MB a 512 MB, un chip Broadcom BCM2835 que integra
todos los módulos que componen el ordenador: procesador central (CPU) ARM1176JZF-Sa
700 MHz, procesador gráfico (GPU) VideoCore IV. También contiene un conector microUSB
para alimentar la Raspberry Pi con una fuente de alimentación de 5V y 700 mA.[53]

Cabe mencionar que la Raspberry Pi no dispone de disco duro ni memoria para alma-
cenar datos, para ello hace uso de la ranura para las tarjetas de memoria. En la tarjeta de
memoria se debe hacer la instalación del sistema operativo con el que queramos que corra la

80
Raspberry Pi. Desde la página oficial de Raspberry Pi es posible descargar distintas distri-
buciones: Raspbian, Pidora, OpenELEC, RaspBMC, RISC OS y ArchLinux Pi.[54][55]

Raspbian, es sistema operativo de la Raspberry, está basado en Debian y ha sido opti-


mizado su uso con éste dispositivo. Además dispone de interfaz gráfica para que los usuarios
puedan hacer uso del sistema sin necesidad de partir con una gran base de conocimientos
sobre administración de sistemas Unix. Raspbian ocupa un espacio en la memoria de la SD
de 2GB, debido a que apenas vienen instalados un mínimo de aplicaciones para el usuario.
En otras palabras si el usuario necesita de algún programa extra u otra aplicación deberá ins-
talarla manualmente usando líneas de comando en la Terminal del escritorio del Raspberry Pi.

Por último, la Raspberry Pi ofrece un gran abanico de posibilidades de expansión y


de desarrollo de proyectos gracias a sus puertos GPIO, que permiten controlar a través de
software el hardware que le conectemos a la Raspberry Pi. En nuestro caso para el dispositivo
de localización que irá dentro del vehículo, necesitamos conectividad GSM/GPRS e incluso
posicionamiento GPS. Se ocupará un escudo o placa, la cual se conectará directamente encima
de la Raspberry Pi (de ahí su nombre de escudo) en sus conexiones GPIO, y los distintos
módulos que queramos conectar se apilan encima de ella. La ventaja es que pueden además
usarse los GPIO de la Raspberry Pi, ya que el escudo replica dichas conexiones.
En la figura A.3 se muestra una imágen del modelo B de raspberry.

Figura A.3: Raspberry Pi modelo B[51]

81
A.5. Especificaciones y BenchMarking de Arduino, Bea-
gleboard, Raspberry Pi.

Figura A.4: Tabla de Especificaciones de arduino.

82
83
Figura A.5: Tabla de Especificaciones de BeagleBoard.
84
Figura A.6: Tabla de Especificaciones de Raspberry Pi.
Figura A.7: Tabla de BenchMark Arduino-Raspberry-BeagleBoard.

85
Apendice B

Arduino Shield Connection Bridge

A continuación se describe de forma detallada el connection bridge que permite utilizar


los shield diseñados para Arduino en una Raspberry Pi.

La idea principal de este bridge es la de poder utilizar todos los elementos, dispositivos o
shields diseñados para Arduino en una Raspberry Pi y de esta forma realizar un puente de
comunicación entre estos, además incluye la posibilidad de conectar tanto señales análogicas
como discretas usando la configuración de pines de Arduino pero explotando las capacidades
y características de la Raspberry Pi.

Figura B.1: Arduino Shield Connection Bridge

El bridge esta compuesto por:


8 pines de propósito general.

86
Un socket para módulos inalámbricos.

Pines RX/TX.

Pines i2C (SDA, SCL).

Pines SPI (SCK, MISO, MOSI, CS). Puede ser usado para GPIO.

8 canales con convertidor analógico/digital.

Switch para habilitar fuente de poder externa.

El diagrama del Arduino Shield Connection Bridge es como sigue:

Figura B.2: Arduino Shield Vista Superior

87
Figura B.3: Arduino Shield Vista Inferor

Para poder comunicarse de la misma forma que un Arduino a través del bridge, los crea-
dores de este bridge desarrollaron una biblioteca llamada arduPi basada en c++, que permite
ejecutar algunas funciones de la misma manera como si estuviera utilizando un Arduino [56].

Entre las funciones principales se encuentran:

delay()

delayMicroseconds()

millis()

pinMode()

digitalWrite()

digitalRead()

analogRead()

shiftIn()

shiftOut()

attachInterrupt()

detachInterrupt()

88
Apendice C

3G + GPS Shield

Este Shield permite la conectividad de alta velocidad mediante el uso de redes celulares
3G, lo cual permite el desarrollo de diversos proyectos que necesitan de acceso a internet,
además cuenta con modulo interno GPS que permite la localización del dispositivo tanto
en lugares exteriores como en interiores combinando el standard NMEA (National Marine
Electronics Association) con la triangulación móvil utilizando el modo asistido y el modo base.

Puede ser utilizado como modem 3G con una velocidad de descarga de 7.2Mbps y una
velocidad de subida de 5.5Mbps a través de su conector mini-USB hacia algún dispositivo
con entrada usb, funciona sin ningún problema en cualquier sistema operativo, ya sea Linux,
Windows o MacOS.

Figura C.1: 3G + GPS Shield

89
C.0.1. Características
Compatibilidad con redes celulares 3G.

GPS interno que soporta tanto modo asistido (A-GPS) como modo base (S-GPS).

Puede conectársele una cámara de alta resolución (2MP) para grabar fotos o videos.

Se le puede agregar micrófono, bocina, manos libres y audífonos.

Cuenta con un slot para microSD (máximo 32 GB) que permite almacenar los videos
y fotos capturadas por la cámara.

Trabaja como un modem 3G en Linux/Windows/MacOS ( 7.2Mbps descarga, 5.5Mbps


subida).

Permite comunicarse con servidores web mediante HTTP/HTTPS.

Permite subir o descargar archivos mediante FTP/FTPS.

Permite enviar y recibir emails mediante POP3/SMTP.

Reproduce archivos de audio.

Figura C.2: Componentes

90
C.0.2. Diseño
El diseño del Shield es como sigue:

Figura C.3: Diseño Superior

Figura C.4: Diseño Inferior

91
El módulo 3G usado es el SIM5218 fabricado por SIMCOM, debe estar alimentado de 3.4-
4.2v con una corriente máxima de 2A, la cual es proporcionada por el shield, viene montado
en una base la cual permite que el SIM5218 no se encuentre desconectado en ningún momento.

El SIM5218 cuenta con 3 conectores UFL, de los cuales 2 son para las antenas 3G y el
otro es para la antena GPS, funciona de manera correcta utilizando solo una antena 3G en
el conector principal y la antena GPS, ya que si se desea cubrir mayor rango de cobertura es
conveniente conectar ambas antenas 3G junto con la de GPS.

Figura C.5: SIM5218

El modulo permite soldar la antena al pad o pueden adherirse mediante muelles de con-
tacto.

Este módulo es el que controla todo el funcionamiento del shield a través de comunicación
serial con el Arduino o Raspberry Pi y el bridge de comunicación, la comunicación es a través
de comandos AT introducidos a través una terminal o un programa que ejecutan distintas
funciones que configuran el inicio del funcionamiento del shield, así como apagar o desactivar
ciertas características del shield, esto incluye el funcionamiento del GPS y el modo en el que
se va a usar, etc.

C.0.3. Modo de Uso


Para comenzar a utilizar el 3G se debe de configurar la velocidad de transmisión en 115200
bauds y para demostrar su funcionamiento se debe de introducir el comando AT, el cual nada

92
más debe regresar una respuesta de OK.

Algunas de los comandos AT son:

Comando AT Descripción
Comando utilizado para iniciar o parar la se-
AT+CGPS
sión GPS.
Comando utilizado para obtener la posición
AT+CGPSINFO
e información del GPS.
Comando utilizado para iniciar el GPS en
AT+CGPSCOLD
modo frio.
Comando utilizado para iniciar el GPS en
AT+CGPSHOT
modo caliente.
Comando utilizado para elegir el puerto de
AT+CGPSSWITCH
salida de la sentencia NMEA.
Comando utilizado para establecer la url del
AT+CGPSURL
servidor en modo AGPS
Comando utilizado para iniciar el GPS auto-
AT+CGPSAUTO
mático al encender el dispositivo.

93

Anda mungkin juga menyukai