sistema de georeferenciaciÓn para trazabilidad en la ... · sistema de georeferenciación para...

89
SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ENTREGA DE PAQUETES Autor: DIEGO MAURICIO FREIRE BASTIDAS Director: JOAQUÍN MARTÍNEZ SÁNCHEZ Proyecto Fin de Máster para el Máster en Geoinformática Julio de 2016

Upload: others

Post on 06-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD

EN LA ENTREGA DE PAQUETES

Autor:

DIEGO MAURICIO FREIRE BASTIDAS

Director:

JOAQUÍN MARTÍNEZ SÁNCHEZ

Proyecto Fin de Máster para el Máster en Geoinformática

Julio de 2016

Page 2: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

ii

Resumen Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes

Máster en Geoinformática

por Diego Mauricio Freire Bastidas

Elaboración de un sistema georeferenciado para la generar rutas de trazabilidad en el proceso

de recepción, transporte y entrega de paquetes utilizando transmisores de baja potencia. Se

plantea un entorno de pruebas, obteniendo como resultado el diseño de un dispositivo de

trazabilidad que se lo transportara como parte del paquete que se desee entregar. Se elabora

un diseño de cada módulo que tiene incorporado el dispositivo, teniendo en cuenta aspectos de

transmisión, alcance y consumo de energía. Se define el modelo de red de conexión de los

dispositivos, este modelo de red se acopla a las necesidades de un sistema que se propone.

Se explican las definiciones a tomarse en cuenta para que exista un proceso de trazabilidad en

un sistema de entrega de paquetería, considerando factores iniciales que se requieren

implementar para poder realizar el seguimiento de un paquete. Se establecen definiciones de

funcionamiento organizacional como la unicidad de las rutas y la organización de los paquetes

en grupos llamados lotes. Se realiza también una revisión de eventos que pueden suceder en un

entorno de entrega de paquetería.

Como parte del trabajo de fin de máster se realiza también un entorno de pruebas, el cual

incluye un aplicativo de cálculo de rutas referenciales utilizando un servicio web, el cual libera

del coste computacional que implica la generación de rutas, un diseño de un dispositivo de

trazabilidad de pruebas, que está conformado por una placa Arduino UNO, un transmisor XBee

S2, un GPS NEO 6M y una batería de litio de 1300mAh. Se diseña un aplicativo en Microsoft

Visual Studio que maneja las comunicaciones seriales para guardar las rutas generadas por los

dispositivos en un archivo HTML, generando un mapa sobre el cual se despliega la ruta que un

paquete sigue hasta alcanzar su destino final.

Palabras Clave:

SIG, GIS, Sensores, XBee, Arduino, Paquetes, Rastreo, HTML, Trazabilidad.

Page 3: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

iii

Agradecimientos

En primer lugar agradezco a Dios por permitirme vivir una experiencia tan bonita estudiando en

las Universidades de Vigo y de La Coruña, experiencia que me ha llenado de grandes enseñanzas

y que me ha dado confianza en el saber que puedo lograr algo.

Un agradecimiento especial para Joaquín Martínez director de este trabajo que sin su ayuda y

confianza no podría estar terminando el proyecto. También al director del máster Higinio

González por estar pendiente de su alumno de Ecuador.

A mis nuevos amigos Elena y Daniel por las horas de ayuda, por estar ahí pendiente y siempre

ser un apoyo, muchas gracias.

A mis padres, suegros, familia, amigos y sobre todo a Paulina, compañera de este hermoso viaje,

gracias a todos por estar aquí.

Diego

Page 4: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

iv

Índice de contenidos

Resumen ........................................................................................................................................ ii

Agradecimientos .......................................................................................................................... iii

Índice de contenidos .....................................................................................................................iv

Índice de figuras .......................................................................................................................... viii

Índice de tablas ............................................................................................................................. x

Glosario de términos y abreviaciones ........................................................................................... xi

Introducción .................................................................................................................................. 1

1.1. Motivación .................................................................................................................... 1

1.1.1. Objetivo general .................................................................................................... 1

1.1.2. Objetivos Específicos ............................................................................................. 1

1.2. Organización .................................................................................................................. 2

Fundamentos teóricos .................................................................................................................. 3

2.1. Transmisores de baja potencia ..................................................................................... 3

2.1.1. Modo coordinador ................................................................................................ 4

2.1.2. Modo Router ......................................................................................................... 4

2.1.3. Modo End Point ..................................................................................................... 4

2.1.4. Modos de operación ............................................................................................. 4

2.1.5. Modos de Conexión .............................................................................................. 6

2.2. Plataforma Arduino ....................................................................................................... 8

2.2.1. Razones para usar Arduino ................................................................................... 8

2.2.2. Librerías ................................................................................................................. 9

2.2.3. Núcleos .................................................................................................................. 9

2.3. Sistemas de Información Geográfica ............................................................................ 9

2.3.1. Funcionamiento de un SIG .................................................................................... 9

2.3.2. Creación de datos ................................................................................................ 10

2.3.3. Representación de los datos ............................................................................... 10

2.3.4. Proyecciones, sistemas de coordenadas y re proyección ................................... 10

2.3.5. Superposición de mapas ..................................................................................... 11

2.4. Trazabilidad ................................................................................................................. 11

2.4.1. Dispositivos de rastreo ........................................................................................ 11

2.4.2. Lotes .................................................................................................................... 11

2.4.3. Unicidad............................................................................................................... 11

2.4.4. Almacenamiento de datos .................................................................................. 12

Page 5: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

v

Planteamiento ............................................................................................................................. 13

3.1. Información inicial ....................................................................................................... 13

3.1.1. Oficinas ................................................................................................................ 13

3.1.2. Recepción, Tránsito y Entrega ............................................................................. 14

3.1.3. Rutas .................................................................................................................... 15

3.1.4. Dispositivo para la obtención de la trazabilidad ................................................. 15

3.2. Modelamiento del problema ...................................................................................... 16

3.2.1. Rutas .................................................................................................................... 17

3.2.2. Tipos de envío ..................................................................................................... 17

3.2.3. Gestión de rutas .................................................................................................. 18

3.2.4. Precisión en la ubicación ..................................................................................... 18

3.2.5. Obtención de coordenadas ................................................................................. 18

3.2.6. Acción frente a errores ........................................................................................ 19

3.3. Limitaciones de ejecución ........................................................................................... 20

3.3.1. Precisión .............................................................................................................. 20

3.3.2. Cobertura ............................................................................................................ 20

3.3.3. Tipos de paquetes ............................................................................................... 21

3.4. Limitaciones de estudio............................................................................................... 22

3.4.1. Lotes .................................................................................................................... 23

3.4.2. Número de dispositivos ....................................................................................... 23

3.4.3. Sistema SIG .......................................................................................................... 23

3.4.4. Resistencia de materiales .................................................................................... 24

3.4.5. Códigos de TAG ................................................................................................... 24

3.4.6. Precisión .............................................................................................................. 24

3.4.7. Área de cobertura ............................................................................................... 24

Modelo de trazabilidad ............................................................................................................... 25

4.1. Esquema de rastreo .................................................................................................... 27

4.1.1. Tiempo ................................................................................................................. 27

4.1.2. Rastreo ................................................................................................................ 28

4.1.3. Seguimiento ........................................................................................................ 28

4.1.4. Puntos fijos .......................................................................................................... 31

4.1.5. Ruta en el mapa................................................................................................... 31

4.1.6. Esquema de lotes ................................................................................................ 32

4.1.7. Esquema de tramas GPS...................................................................................... 32

4.1.8. Repositorio de rutas ............................................................................................ 33

4.2. Dispositivo de rastreo ................................................................................................. 33

Page 6: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

vi

4.2.1. Diseño conceptual ............................................................................................... 34

4.2.2. Resistividad.......................................................................................................... 34

4.2.3. Batería ................................................................................................................. 35

4.2.4. Comunicaciones .................................................................................................. 35

4.2.5. Indicadores .......................................................................................................... 36

4.2.6. Comportamiento ................................................................................................. 36

4.3. Algoritmo de procesamiento de paquetes ................................................................. 36

4.4. Retos a superar ........................................................................................................... 38

4.4.1. Pérdida de cobertura .......................................................................................... 38

4.4.2. Duración de batería ............................................................................................. 38

4.4.3. Facilidad de operación ........................................................................................ 39

4.4.4. Adaptación a cambios ......................................................................................... 39

4.5. Diseño de la aplicación ................................................................................................ 39

4.6. Consideraciones adicionales ....................................................................................... 41

4.6.1. Pérdida de conexión del dispositivo .................................................................... 41

4.6.2. Ahorro de energía ............................................................................................... 41

Trabajo experimental .................................................................................................................. 42

5.1. Entorno de pruebas ..................................................................................................... 42

5.1.1. Módulo de procesamiento .................................................................................. 42

5.1.2. Módulo de ubicación ........................................................................................... 43

5.1.3. Módulo de batería ............................................................................................... 44

5.1.4. Módulo de transmisión ....................................................................................... 44

5.2. Procesamiento de datos .............................................................................................. 45

5.2.1. Diseño y elaboración de una carcasa .................................................................. 45

5.2.2. Servicio web ........................................................................................................ 45

5.2.3. Sistema de recepción y generación de archivo de ruta ...................................... 46

5.3. Recopilación de fallos .................................................................................................. 47

5.3.1. Inicio del GPS ....................................................................................................... 48

5.3.2. Programación del módulo de procesamiento ..................................................... 48

5.3.3. Visualización de rutas .......................................................................................... 48

5.3.4. Configuración de los puertos COM ..................................................................... 48

Conclusiones ............................................................................................................................... 49

6.1. Mejoras futuras ........................................................................................................... 49

6.2. Revisión del trabajo ..................................................................................................... 49

Bibliografía .................................................................................................................................. 51

Anexo A ......................................................................................................................................... 1

Page 7: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

vii

Anexo B ......................................................................................................................................... 7

Anexo C ......................................................................................................................................... 8

Anexo D ......................................................................................................................................... 9

Anexo E ........................................................................................................................................ 10

Anexo F ........................................................................................................................................ 11

Anexo G ....................................................................................................................................... 25

Análisis de precios ....................................................................................................................... 27

Page 8: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

viii

Índice de figuras

Figura 2. 1 Modos de operación del módulo XBee (Oyarce, 2010) .............................................. 5

Figura 2. 2 Ejemplo comando AT (Oyarce, 2010) .......................................................................... 6

Figura 2. 3 Conexión punto a punto .............................................................................................. 7

Figura 2. 4 Conexión punto a multipunto ..................................................................................... 7

Figura 2. 5 Conexión broadcast ..................................................................................................... 7

Figura 2. 6 Diferentes placas Arduino ........................................................................................... 8

Figura 3. 1 Sistema de entrega de paquetes ............................................................................... 13

Figura 3. 2 Diagrama del proceso de entrega de un paquete ..................................................... 15

Figura 3. 3 Tarjeta de tracking de paquetería ............................................................................. 15

Figura 3. 4 Diagrama ideal de recepción – entrega..................................................................... 16

Figura 3. 5 Diferencia entre ruta real y sugerida......................................................................... 17

Figura 3. 6 Comparación de un punto con una ruta ................................................................... 20

Figura 3. 7 Cobertura basada en radio ........................................................................................ 21

Figura 3. 8 Tipos de empaques utilizados para el transporte de paquetería. Recuperado de:

http://www.uline.com/Cls_04/Boxes-Corrugated ..................................................................... 22

Figura 3. 9 Esquema de diseño de pruebas................................................................................. 23

Figura 4. 1 Diagrama de proceso ................................................................................................. 25

Figura 4. 2 Puntos intermedios en una ruta ................................................................................ 25

Figura 4. 3 Proceso para calcular ruta ......................................................................................... 26

Figura 4. 4 Mapa coroplético de cobertura de una oficina ......................................................... 27

Figura 4. 5 Seguimiento de paquetes durante el transito ........................................................... 27

Figura 4. 6 Calculo del tiempo de lectura de una coordenada ................................................... 28

Figura 4. 7 Funcionamiento de la obtención de coordenadas en un TAG .................................. 28

Figura 4. 8 Proceso de manejo de información de marcadores en el mapa ............................... 29

Figura 4. 9 Ejemplo de uso de clusterización de marcadores ..................................................... 30

Figura 4. 10 Ejemplo de utilización de marcadores sin clusterización ........................................ 30

Figura 4. 11 Ejemplo de búsqueda del elemento más cercano .................................................. 31

Figura 4. 12 Diferencia de transmisión entre esquema individual y de lotes ............................. 32

Figura 4. 13 Formato de transmisión de datos ........................................................................... 32

Figura 4. 14 Diagrama de flujo de entramado en datos de ubicación ........................................ 33

Figura 4. 15 Diagrama modular del TAG ..................................................................................... 34

Figura 4. 16 Configuración tipo cluster ....................................................................................... 35

Figura 4. 17 Comportamiento de un TAG ................................................................................... 36

Figura 4. 18 Algoritmo de comportamiento de un paquete ....................................................... 37

Figura 4. 19 Cambio de indicadores LED ..................................................................................... 37

Figura 4. 20 Perfiles de usuarios en la aplicación ........................................................................ 39

Figura 4. 21 Creación de rutas utilizando un servicio web.......................................................... 40

Figura 5. 1 Esquema de conexiones TAG de pruebas ................................................................. 43

Figura 5. 2 Datos transmitidos por el módulo de procesamiento .............................................. 43

Figura 5. 3 Fotografía del GPS NEO-6M ...................................................................................... 44

Page 9: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

ix

Figura 5. 4 Esquema de conexión de XBee en las pruebas ......................................................... 44

Figura 5. 5 Fotografía superior de caja del TAG .......................................................................... 45

Figura 5. 6 Captura de pantalla de DIrections de Mapbox para dos puntos utilizando bicicleta 46

Figura 5. 7 Aplicación de lectura de datos enviados por los TAG ............................................... 46

Figura 5. 8 Mapa HTML generado a partir de los datos obtenidos de la aplicación. .................. 47

Page 10: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

x

Índice de tablas

Tabla 1. 1: Topologías de red soportadas por las tecnologías inalámbricas ................................. 3

Tabla 3. 1 Tabla de eventos ......................................................................................................... 19

Tabla 3. 2 Acciones frente a eventos .......................................................................................... 19

Tabla 4. 1 Especificaciones técnicas Arduino UNO. Tomado de

https://www.Arduino.cc/en/Main/ArduinoBoardUno ............................................................... 42

Page 11: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

xi

Glosario de términos y abreviaciones Acrónimo Definición

FHSS Tecnología de radio que constantemente altera el patrón de transmisión de datos cambiando las frecuencias de las portadoras. Del inglés Frequency Hopping Spread Spectrum

GNSS Global Navigation Satellite System

GPS Global Positioning System

ISO Organización Internacional de Estandarización (del inglés International Organization for Standardization)

LED Diodo emisor de luz (del inglés ligh-emitting diode)

mAh Medida de carga mili amperios hora.

PAN Redes de Área Personal por sus siglas en inglés (Personal Area Network)

RFID Identificación por radiofrecuencia (del inglés Radio Frequency IDentification)

SIG Sistema de Información Geográfica

TAG Nombre que se le da a la tarjeta para el manejo de la trazabilidad de los paquetes que se va a utilizar en el presente TFM.

TFM Trabajo de Fin de Máster

Término Definición

Buffer Región de incidencia de una ruta generada.

Clusterización Agrupación de varios marcadores en un mapa para mostrarlos como un único elemento.

Comando AT Instrucciones codificadas para comunicarse con un modem.

Coroplético Mapa temático que aporta información espacial mediante el uso de colores

Datasheet Documento de especificaciones técnicas de un dispositivo.

Frames Unidad de transmisión de datos de red que incluye información referente a un protocolo.

Geolocalización Capacidad de obtener una ubicación real de un objeto, utilizando coordenadas esféricas (XYZ)

Nodos Elemento que forma parte de la red de información

PAN ID Identificador de red

Protocolo conjunto de reglas que se definen para que dos entidades puedan intercambiar información

Topologías Mapa físico o lógico de una red para intercambiar datos

Trama Paquete de datos ordenados de acuerdo a una especificación establecida.

Trazabilidad Procedimientos que permiten seguir un objeto en el tiempo

Zoom Efecto de acercar o alejar una imagen.

Page 12: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

1

Capítulo 1

Introducción La geolocalización 1de objetos ha generado interés en los campos de estudio, esté concepto de

geolocalización se lo ha utilizado a diferentes clases de objetos.

La trazabilidad 2genera una memoria de los puntos a través del tiempo. Este concepto se ha

usado en diferentes objetos, entre ellos se destacan las líneas alimenticias, de producción y la

que se encuentra en auge es la de la paquetería.

La generación de las rutas en objetos debe contemplar varios aspectos, desde los intervalos de

recopilación de datos, la eficiencia de recursos usados para conseguir la posición de un objeto,

la precisión requerida, los gastos que implica tener la posición.

El presente proyecto presenta un análisis tomando en cuenta diferentes aspectos de

trazabilidad y se expondrá una propuesta de un Sistema de Georeferenciación para Trazabilidad

en la Entrega de Paquetes.

1.1. Motivación El presente proyecto es un Trabajo de Final de Máster para la obtención del título de Máster en

Geoinformática otorgado por la Universidade de Vigo y la Universidade da Coruña.

1.1.1. Objetivo general Caracterizar e implementar una metodología para la trazabilidad espacial de un sistema de

transporte de paquetería a través de tecnologías de navegación global por satélite (GNSS3) y

sistemas de comunicaciones inalámbricos de baja potencia (XBee).

1.1.2. Objetivos Específicos

Obtener en forma periódica la posición de lotes de paquetes, mediante la georeferenciación de solo uno de los paquetes que necesite guardar la posición GPS.

Utilizar sensores GPS y radios de baja potencia XBee para localizar los nodos dentro de la red.

Identificar a cada paquete mediante código con la dirección destino.

Desplegar sobre un mapa la ruta de recorrido y los puntos de salto de lote.

Estudiar el potencial de los transmisores de bajo consumo para aplicaciones de escala

urbana.

Definir una topología de red que se adapte a la solución propuesta.

Analizar un mecanismo de generación automática de rutas.

1 Geolocalización: Capacidad de obtener una ubicación real de un objeto, utilizando coordenadas esféricas (XYZ) 2 Trazabilidad: Procedimientos que permiten seguir un objeto en el tiempo 3 GNSS: Global Navigation Satellite System

Page 13: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

2

Definir parámetros de precisión necesarios para la generación de una ruta acorde a la

realidad.

1.2. Organización El presente trabajo se estructura en varios capítulos que separan los diferentes aspectos que se

deben tratar en la elaboración del presente TFM5. El primer capítulo refiere a aspectos generales

como los objetivos que se esperan conseguir con la elaboración del trabajo.

El capítulo 2, Fundamentos teóricos, refiere a la información necesaria para establecer el

enfoque de la teoría necesaria para realizar el TFM, tomando en cuenta el tipo de elementos

necesarios para la elaboración del dispositivo de rastreo.

El capítulo 3, Planteamiento, refiere a la recopilación de los datos, la información necesaria para

establecer los requerimientos y necesidades para realizar la trazabilidad de los paquetes

mediante el modelamiento del problema a resolver, también se establecen las limitaciones

tomadas en cuenta en el estudio.

El capítulo 4, Modelo de Trazabilidad, realiza el enfoque a la solución que se va a llevar a cabo

como parte de la realización de un esquema practico capaz de ejemplificar la ejecución del

modelo de trazabilidad planteado. En este capítulo se determina los componentes necesarios

para la elaboración del dispositivo de rastreo, tomando en cuenta las características de precisión

y de eficiencia requeridos. Se considera también análisis de eventos como la pérdida de

conexión y el ahorro de energía, con la finalidad de establecer la respuesta del modelo ante

estos eventos.

El capítulo 5, Trabajo Experimental, detalla los resultados obtenidos con el proyecto

implementado, recopilando y analizando los datos, también se describen los fallos ocurridos en

el entorno de pruebas.

El capítulo 6, Conclusiones, expone las conclusiones obtenidas con la elaboración del TFM,

además de puntualizar algunas mejoras futuras que se pueden hacer al trabajo, para finalmente

realizar una revisión del trabajo realizado.

Finalmente se cuenta con una sección en la que se agrupan la bibliografía usada en la

elaboración del proyecto y los anexos.

5 TFM: Trabajo de Fin de Máster

Page 14: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

3

Capítulo 2

Fundamentos teóricos

2.1. Transmisores de baja potencia En las comunicaciones el aspecto de consumo energético siempre está en un foco de análisis

para que un proyecto se pueda considerar viable, más aun cuando las comunicaciones son

inalámbricas, pues los dispositivos dependen de una batería, la cual tiene un recurso limitado

de energía.

Existen varias tecnologías de bajo consumo energético, las cuales además de tener un consumo

energético menor, también destacan por ser de bajo costo y de un tamaño reducido. (Smith,

2011)

Las tecnologías de baja potencia se encuentran en auge y tienen diversas aplicaciones

dependiendo el tipo de transmisión, el alcance, la velocidad, topología de la red, costo,

confiabilidad, eficiencia energética entre otros. Entre las tecnologías que destacan actualmente

podemos mencionar las siguientes:

Bluetooth LE

ANT

ANT+

Zigbee

WiFi

Nike+

IrDA

NFC

Estas tecnologías inalámbricas están presentes en diferentes mercados, como el de la seguridad,

teléfonos móviles, rastreo, posicionamiento y también en las tecnologías PAN6.

Topologías7 LE A A+ Zi RF Wi Ni Ir NF

Broadcast √ √ √ x x x x x x

Mesh √ √ √ √ √ x x x x

Star √ √ √ √ √ √ x x x

Scanning √ √ √ √ √ x √ x x

Point-to-Point

√ √ √ √ √ √ √ √ √

Tabla 1. 1: Topologías de red soportadas por las tecnologías inalámbricas

La topología que soportan las diferentes tecnologías va a ser un punto en consideración, pues

buscamos una topología capaz de comunicarse con varios nodos al mismo tiempo. La Tabla 1. 1

muestra las diferentes topologías dependiendo el tipo de tecnología.

Otro aspecto a considerar es la eficiencia en la transmisión de los datos, pues este parámetro es

la relación que existe entre los datos de información que deseo transmitir y la cantidad de

6 PAN: Redes de Área Personal por sus siglas en inglés (Personal Area Network) 7 Topologías: Mapa físico o lógico de una red para intercambiar datos

Page 15: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

4

información que tengo que enviar adicional, como parte del protocolo8 para poder realizar la

comunicación.

Zigbee es un protocolo de comunicaciones basado en el estándar de comunicaciones para redes

inalámbricas IEEE 802.15.4, útil especialmente para redes de sensores en diferentes entornos

(Oyarce, 2010).

Las comunicaciones Zigbee se realizan en la banda libre de 2.4GHz. La diferencia con Bluetooth

radica en que no utiliza salto de frecuencia (FHSS9).

La comunicación con línea de vista alcanza los 100 metros con una velocidad de 256kbps. Se

define una red de hasta 65535 equipos en una misma red.

Los módulos XBee satisfacen las necesidades de bajo costo, ultra bajo consumo de potencia,

trabaja en las bandas de radio libres sin la necesidad de licencias y las redes son flexibles y

extensibles.

Las aplicaciones de los sensores XBee pueden ir desde las más básicas hasta configuraciones

complejas, gracias a la gran cantidad de dispositivos que pueden estar en una red.

Una red Zigbee tiene tres tipos de elementos, un equipo coordinador único en la red,

dispositivos routers y dispositivos finales.

2.1.1. Modo coordinador Es el nodo de la red que tiene la función de formar la red, establece el PAN ID10, el coordinador

permite a los dispositivos Routers y End Points unirse a la red. También hace las funciones de

enrutador una vez que la red ya está conformada

2.1.2. Modo Router Es un nodo que crea y mantiene la información de la red para definir la mejor ruta para transmitir

la información. El router debe tener el mismo PAN ID para poder unirse a la red y hacer los

trabajos de enrutamiento entre otros routers y los End Points.

2.1.3. Modo End Point No dispone de capacidad de enrutamiento y siempre debe interactuar a través de un nodo

padre, siendo esté un Coordinador o un Router, es decir, dos dispositivos End Point no se pueden

comunicar directamente.

2.1.4. Modos de operación Se establecen 5 modos de operación para los módulos XBee, como se puede apreciar en la Figura

2. 1.

8 Protocolo: un conjunto de reglas que se definen para que dos entidades puedan intercambiar información. 9 FHSS: Tecnología de radio que constantemente altera el patrón de transmisión de datos cambiando las frecuencias de las portadoras. Del inglés Frequency Hopping Spread Spectrum 10 PAN ID: Identificador de red

Page 16: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

5

Figura 2. 1 Modos de operación del módulo XBee (Oyarce, 2010)

2.1.4.1. Modo Recibir/Transmitir

Cuando se envía paquetes o se recibe paquetes a través de la antena, la información puede ser

transmitida de forma directa o indirecta, en el modo directo se envía inmediatamente al destino,

en cambio en el modo indirecto, la información es retenida por un periodo de tiempo, y solo es

enviada cuando el destino lo solicita.

2.1.4.2. Modo de bajo consumo (Sleep Mode)

Hace posible que el módulo entre en un modo de bajo consumo de energía cuando este no se

encuentra en uso. Para esto el pin 9 debe estar en alto. Hay una configuración de los ciclos de

sueño que lo establece el ST (Time before Sleep).

También se pueden controlar los modos de sueño por pin y cíclicos. En total existen 4 modos

de operación.

2.1.4.3. Modo Comando

Los módulos XBee responden a comandos AT11, para configurar, ajustar o modificar parámetros.

La comunicación de la realiza con la utilización de un programa que permita comunicación serial.

Pueden ser XCTU, Hyperterminal entre otros.

11 Comando AT: instrucciones codificadas para comunicarse con un modem.

Page 17: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

6

Figura 2. 2 Ejemplo comando AT (Oyarce, 2010)

En la Figura 2. 2 se puede observar la sintaxis de un comando AT.

2.1.4.4. Modo Transparente

Es un modo de envío, donde la información que ingresa se almacena en un buffer y es enviada

tan pronto.

Este modo está destinado principalmente a la comunicación punto a punto, donde no se

necesita ningún tipo de control. También se usa para reemplazar una conexión serial por cable.

2.1.4.5. Modo API

Es un modo de operación más complejo, pero permite interactuar con las capacidades de red

del módulo. Pues toda la información que entra y sale es empaquetada en frames12, que definen

operaciones y eventos dentro del módulo.

Un frame de transmisión es diferente a uno de recepción, pues la información que incluye en él,

varía dependiendo, es decir, en transmisión tenemos la información y los comandos, mientras

en recepción las notificaciones de eventos.

El modo API permite transmitir información a múltiples destinatarios, conocer el estado de éxito

o fallo en una transmisión e identificar la dirección de origen de cada paquete.

2.1.4.6. Modo IDLE

Este modo es cuando el modulo no se encuentra en ninguno de los modos antes mencionados.

2.1.5. Modos de Conexión Los módulos XBee permiten ser configurados de diversas formas, adaptándose a las necesidades

que el sistema que se desee implementar. Para lograr una comunicación exitosa existen dos

tipos de direccionamiento de los módulos, el de 16 bits y el de 64 bits, la diferencia entre estos

radica en la cantidad de direcciones disponibles para la red que se desea implementar. Es con

estas direcciones que los módulos se comunican entre sí. (Oyarce, 2010)

A continuación se describe de forma breve los distintos modos de conexión de los dispositivos.

2.1.5.1. Modo de conexión transparente

Existen 4 tipos de configuraciones en el modo de configuración transparente, la conexión Punto

a Punto, Punto a Multipunto, Broadcast y Cable Virtual I/O.

La conexión transparente es la configuración por defecto en los módulos, la diferencia entre

cada una de estas es la forma en que interactúan entre sí y la cantidad de nodos13.

12 Frames: Unidad de transmisión de datos de red que incluye información referente a un protocolo. 13 Nodos: Elemento que forma parte de la red de información.

Page 18: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

7

La conexión punto a punto es un reemplazo de la comunicación serial por medio de un cable. Es

la más sencilla, basta con configurar las direcciones en los módulos para que la comunicación se

lleve a cabo. En la Figura 2. 3 se observa que intervienen dos módulos en la conexión.

Figura 2. 3 Conexión punto a punto

La conexión punto multipunto, como se ve en la Figura 2. 4, permite que más nodos estén

involucrados en la red. Difiere de la conexión broadcast en que está permite transmitir

información desde la entrada serial (DIN, pin 3) del módulo. La transmisión puede ser a uno o a

varios módulos, por lo cual se necesitan las direcciones.

Figura 2. 4 Conexión punto a multipunto

La conexión broadcast en cambio distribuye la misma información desde un nodo, a todos los

nodos que están en la red. La información recibida es la misma para todos. Los módulos que

reciban la información con dirección broadcast aceptarán el paquete. (Oyarce, 2010)

Figura 2. 5 Conexión broadcast

Page 19: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

8

2.2. Plataforma Arduino Arduino es una plataforma de creación de prototipos basado en hardware y software fácil de

usar. La plataforma Arduino se basa en el uso de las diferentes placas. Cada una de estas placas

permite el desarrollo específico, dichas placas son capaces de leer entradas por ejemplo la luz

de un sensor, un botón y generar una respuesta a una acción (encender un motor). En la Figura

2. 6 se ven las diferentes placas que se encuentran desarrolladas por el grupo de desarrollo de

Arduino, existen diferentes tipos, cada uno de ellos depende de lo que se desee hacer.

Figura 2. 6 Diferentes placas Arduino

Cada placa tiene un microcontrolador, este controlador es el encargado de realizar el

procesamiento de las entradas y generar las respuestas utilizando el lenguaje de programación

Arduino.

Arduino nace en el Instituto de Diseño de Interacción Ivrea como una herramienta para realizar

prototipos de forma fácil y rápida dirigida a estudiantes sin experiencia en electrónica y

programación. Desde su inicio, las placas Arduino han evolucionado adaptándose a los cambios,

respondiendo a los nuevos retos y necesidades. La Figura 2. 6 muestra la oferta actual de las

placas Arduino.

Todas las placas Arduino son código abierto, el software también es de código abierto.

2.2.1. Razones para usar Arduino Arduino es una plataforma sencilla de usar, capaz de responder a las diferentes necesidades,

tanto de usuarios nuevos, por su facilidad de uso y lo suficientemente flexible para usuarios

avanzados.

Se puede usar en MAC, Windows y Linux. Tiene la ventaja de poder usarse y reutilizarse, con lo

cual permiten realizar diversos proyectos de bajo costo. Arduino se podría definir como una

herramienta clave para construir y aprender cosas nuevas. (ArduinoCC, s.f.)

Page 20: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

9

Arduino simplifica el proceso de trabajar con microcontroladores. La asequibilidad de las placas.

Una placa Arduino tiene un costo inferior a los 50 Euros.

Es multiplataforma, puesto que el software Arduino (IDE) se ejecuta en Windows, MAC y Linux.

Otros sistemas de microcontroladores están limitados a Windows.

El software de Arduino es fácil de usar para principiantes, pero que se adapta bien a usuarios

avanzados. Se basa en el entorno de programación Processing. También el software Arduino se

publica como herramienta de código abierto.

Las placas de Arduino se encuentran publicadas bajo código abierto, que permite que

diseñadores de circuitos experimentados pueden hacer una versión propia del módulo,

ampliándolo y mejorándolo.

En la página www.arduino.cc se pueden encontrar una gran variedad de proyectos que permiten

un aprendizaje con proyectos básicos y avanzados dependiendo de los usuarios.

2.2.2. Librerías Las librerías son una colección de código que simplifica la conexión de un sensor, una pantalla,

un módulo XBee, etc. Por ejemplo, la librería LiquidCrystal simplifica la conexión y uso de un

display LCD. En Internet existen cientos de librerías disponibles para ser descargadas.

(ArduinoCC, s.f.)

Las librerías adicionales deben ser instaladas para poder ser usadas. Para esto se debe abrir el

Arduino IDE, en el menú Sketch, en la pestaña Include Library en la sección Manage Libraries.

En éste menú de administración de librerías se puede encontrar una lista de librerías que están

instaladas en el IDE.

2.2.3. Núcleos Empezando desde el IDE versión 1.6.2, solo las placas Arduino AVR están instaladas por defecto,

Sin embargo algunas placas Arduino requieren ser instaladas.

Un ejemplo es la Arduino Due, que usa un microcontrolador ARM/SAM. Para que el IDE de

Arduino sea capaz de programar esta placa se debe instalar el núcleo SAM usando el

administrador de Placas.

2.3. Sistemas de Información Geográfica Un Sistema de Información Geográfica (SIG), es una integración organizada de hardware,

software y datos geográficos diseñada para captar, guardar, modificar, analizar y representar en

diversas formas la información geográfica referenciada con la finalidad de resolver problemas

complejos de planificación y gestión.

2.3.1. Funcionamiento de un SIG Un SIG14 trabaja como una base de datos con información geográfica, que tiene información

digital objetos geográficos de un mapa digital. Cuando se señala un objeto se conoce sus

14 SIG: Sistema de Información Geográfica

Page 21: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

10

propiedades o atributos, de igual forma cuando se lee un registro en la base de datos, se puede

saber la localización en la cartografía.

Gestionar la información espacial es la razón fundamental para el uso de un SIG. Un SIG permite

realizar la separación de diferentes capas, esta separación se la realiza en base a diferentes

temáticas o atributos de análisis.

Un SIG permite realizar diversas acciones sobre los datos geográficos.

Localización: la ubicación de un lugar

Condición: filtrar de acuerdo a las condiciones establecidas o requeridas

Tendencia: comparar características temporales o espaciales.

Rutas: calcular rutas óptimas entre diferentes puntos, dos o más.

Pautas: detección de pautas espaciales.

Modelos: creación de modelos.

Las SIG presentan mucha versatilidad en su uso, siendo aplicables en la mayoría de actividades

que contengan información espacial.

2.3.2. Creación de datos Las tecnologías SIG trabajan con información digital, en la actualidad, existen varios métodos

que se pueden utilizar para la creación de datos digitales. Uno de los métodos es la digitalización,

el cual, a partir de un mapa impreso o con información de campo, mediante un programa de

Diseño Asistido por Ordenador (DAO o CAD) con capacidad de georeferenciación.

Esta es una de las formas de generación más amplia de información digital, debido a la cantidad

de información existente.

2.3.3. Representación de los datos Los datos SIG son representaciones del mundo real, los mismos que se pueden dividir en dos

grupos, los naturales y los creados por el hombre. De igual forma existen dos formas de

almacenar los datos en un SIG, Vectorial y Raster.

El software especializado para el manejo de datos espaciales suele ser especialista para el

manejo de uno de estos dos tipos de datos, es decir, software especialista en manejo de datos

vectoriales o software especialista en el manejo de datos Raster. En la actualidad existe una

mayor oferta de software especialista en datos vectoriales, no obstante, los SIG Raster son muy

utilizados.

2.3.4. Proyecciones, sistemas de coordenadas y re proyección Para que el análisis de los datos cartográficos en un SIG, todos los datos deben estar en una

misma proyección y sistemas de coordenadas. Para conseguir tal objetivo, algunas ocasiones es

necesario re proyectar las capas de información antes de integrarlas en un SIG.

La representación de la tierra se la puede dar en base a un geoide, del cual dependerá en gran

medida la representación acertada de los datos. Cambiar de una proyección a otra puede hacer

diferir los datos de forma significativa. Por tal motivo es imperativo realizar una adecuada re

proyección.

Según el mapa que se desee crear existen diferentes proyecciones cartográficas que se pueden

usar, ya que se adaptan mejor al tipo de aplicación que se va a generar.

Page 22: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

11

2.3.5. Superposición de mapas Cierta información espacial puede crear un nuevo conjunto de datos, combinándola de acuerdo

a las características requeridas. La superposición de mapas se realiza sobre una región que

presente información adicional al mapa base.

Para que las capas adicionales se desplieguen de una forma adecuada, cada capa debe estar en

el mismo sistema de coordenadas.

Es usual que las capas se encuentren con un estilo diferente, con diferentes tipos de

transparencias, para que se puedan observar los detalles que se requieren.

2.4. Trazabilidad La ISO15 define el concepto de trazabilidad como la posibilidad de trazar la producción, uso o

ubicación de un determinado elemento. Cuando se trata de la elaboración de un producto, esto

puede cubrir el origen de los materiales empleados. (Certification, 2010)

Cada elemento debe tener la capacidad de generar una ruta desde cada punto, la intensión es

gestionar cada uno de los puntos o procesos que realiza el elemento hasta cumplir la ruta

asignada.

2.4.1. Dispositivos de rastreo En la búsqueda de generar un sistema de trazabilidad, existen diversas formas de cumplir con

este cometido, pero cada sistema depende de un dispositivo que ayude a identificar el

elemento, la identificación de los elementos es crucial al momento de asociar una ruta de

rastreo al elemento.

Los elementos pueden estar asociados a sistemas simples como un código impreso o más

avanzado como tarjetas RFID16. Sin embargo se pueden asociar a sistemas más complejos, la

complejidad del sistema va a depender del entorno en el que se esté aplicando.

Un sistema puede incluir receptores GPS individuales o también tan solo uno para un

determinado grupo de elementos.

2.4.2. Lotes En trazabilidad los elementos pueden estar agrupados dependiendo alguna característica, por

ejemplo procedencia, destino, peso, empresa, etc.

A esta agrupación se la conoce como lotes, un elemento puede ser miembro de varios lotes a lo

largo de su ruta. Es decir, que un elemento para alcanzar su destino puede haber pertenecido a

varios lotes, sin que esto implique que todos los elementos pertenecientes a un lote inicial van

a ir a un lote de destino igual.

2.4.3. Unicidad La trazabilidad genera una ruta claramente definida, que es capaz de definir la procedencia de

cada elemento por separado, es decir, un sistema de trazabilidad podrá reflejar la ruta completa

15 ISO: Organización Internacional de Estandarización (del inglés International Organization for Standardization) 16 RFID: Identificación por radiofrecuencia (del inglés Radio Frequency IDentification)

Page 23: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

12

desde el inicio del proceso de producción, entrega, distribución dependiendo del sistema en el

cual se esté trabajando.

La utilidad es que a través de productos individuales se puede obtener información valiosa del

proceso que se encuentre implementado. Si un producto presenta fallas, se puede analizar los

lotes de transportación, para analizar si los demás productos tienen el mismo defecto.

Otra utilidad es un rastreo de puntos de perdida, tener un sistema bien definido del proceso

mejora las pérdidas de elementos, pues cada punto del proceso se encuentra monitoreado.

2.4.4. Almacenamiento de datos La información correspondiente al proceso involucrado en obtener la ruta que sigue un

elemento debe ser almacenada de forma adecuada, guardando la información relevante para

que se pueda identificar todo el proceso.

En algunos sistemas la información que se guarda sobre el proceso de trazabilidad contiene

incluso el nombre de cada operador que llevo a cabo determinado proceso.

En la industria alimentaria donde la trazabilidad se encuentra desarrollada a profundidad, los

datos que se conservan incluyen información de temperaturas de operación.

Cada uno de los casos en donde se deba aplicar trazabilidad se debe analizar la información que

se va a conservar, teniendo en cuenta que el interés es conocer todo el entorno que de una u

otra forma interviene en el proceso para que los elementos recorran la ruta asignada en el

proceso de producción, distribución o entrega.

Page 24: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

13

Capítulo 3

Planteamiento

3.1. Información inicial Se desea obtener la ruta que sigue un paquete en un proceso de entrega, para conocer al detalle

la ruta que sigue, tomando en cuenta los lotes en los que viajó y los puntos que fueron

abordados.

Figura 3. 1 Sistema de entrega de paquetes

3.1.1. Oficinas Un sistema de entrega de paquetes utiliza una serie de oficinas para su operación. Estas oficinas

tienen un delimitado espacio geográfico de operación y, dependiendo de dicho ámbito

geográfico, un paquete podrá encontrarse en un proceso de tránsito o entrega.

Las oficinas tienen la capacidad de recibir los paquetes: una vez que el cliente entrega el

paquete, se asigna un identificador, el cual va a ser único en el sistema. Esta asignación

determina el inicio del proceso de trazabilidad de los paquetes.

Las oficinas pueden ser consideradas como puntos en los cuales un paquete puede cambiar de

lote, es decir, no puede existir un cambio de lote del paquete fuera de las oficinas.

Las oficinas tienen la responsabilidad de agregar la ruta de destino para el paquete, tomando en

cuenta que los paquetes pueden contener en su ruta varias oficinas hasta alcanzar su destino.

Page 25: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

14

En la Figura 3. 1 se puede observar que un paquete puede ser enviado a otra oficina o

directamente al proceso de entrega, dependiendo del área geográfica de cobertura que tenga

asignada la oficina en la cual el paquete fue recibido.

3.1.2. Recepción, Tránsito y Entrega En el proceso de entrega de paquetes se han identificado tres estados para un paquete, la

recepción, tránsito y entrega.

El proceso de recepción conlleva tomar toda la información necesaria para tener plenamente

identificado el paquete, de tal forma que pueda cumplir la ruta que se desea. Es decir, un

paquete sin la información de destino no podrá ser correctamente entregado. Sin embargo la

dirección origen y destino no es lo único necesario para que el paquete llegue al destino de

forma segura. A continuación se listan diferentes características tomadas en cuenta al momento

de la recepción de un paquete.

Dirección origen y destino

Remitente

Destinatario

Fragilidad en la transportación

Prioridad

Rapidez

Cuidados especiales

Seguridad

Confidencialidad

Condiciones de almacenaje

No todos los paquetes deben cumplir con el listado anterior e incluso no pueden estar listados

todos los elementos a considerar al momento de recibir un paquete.

El tránsito de los paquetes en cambio, conlleva al proceso de la trazabilidad interna en una

empresa: cómo se consigue llevar el paquete desde la dirección origen hasta la dirección

destino, considerando los requerimientos que se detallaron al momento de realizar la recepción

del paquete. Un paquete se encontrará en tránsito siempre que su destino próximo sea una

oficina. Cuando un paquete se encuentre en una oficina, puede ser reasignado el lote en el cual

se va a transportar, los cambios de lote se efectúan únicamente en las oficinas de acuerdo a la

ruta que deban seguir. Cuando ya no queden más oficinas en la ruta del paquete, se inicia el

proceso de entrega.

El proceso de entrega implica que el paquete debe llegar al destinatario considerando los

aspectos detallados en el momento de recepción del paquete; por ejemplo, si el paquete

requiere confidencialidad, implica que el paquete no puede ser entregado a una persona

diferente al destinatario. En caso de que el paquete no pueda ser entregado, dicho paquete

retornará a la oficina de la que salió por última ocasión.

Page 26: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

15

3.1.3. Rutas La ruta que sigue un paquete debe ser interpuesta en base del área de cobertura de las oficinas,

considerando la Figura 3. 2 donde se puede apreciar el proceso que se debería cumplir al

momento de realizar una entrega de un paquete.

Figura 3. 2 Diagrama del proceso de entrega de un paquete

En la Figura 3. 2 se puede ver que un paquete se mantendrá en estado de tránsito cuando la

dirección del paquete que llegó a una oficina no se encuentra en el área de cobertura.

La información de si el paquete sigue en tránsito o no, se la debe realizar realizando un proceso

de intersección entre el área de injerencia de una oficina y las coordenadas del destino del

paquete. Si las coordenadas del destino están en el área de influencia de la oficina, entonces el

paquete se debe poner en estado de entrega.

3.1.4. Dispositivo para la obtención de la trazabilidad Puesto que el objetivo es conseguir una trazabilidad de todo el proceso de entrega, se debe

considerar que el paquete va a estar acompañado de un dispositivo que permita obtener la

ubicación, la misma que va a ser transmitida de forma periódica para la generación de una ruta

especifica.

El dispositivo debe tener autonomía energética, es decir, debe contar con un banco de baterías

capaz de mantener encendidos todos los elementos durante el tiempo que dura el trayecto.

También de un identificador único, para que el paquete asociado al dispositivo también tenga

una ubicación univoca.

Figura 3. 3 Tarjeta de tracking de paquetería

Page 27: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

16

El TAG17 debe tener la capacidad de comunicarse de forma inalámbrica con una estación, red o

dispositivo capaz de almacenar la información adquirida sobre la posición.

Es importante incorporar información de carácter lumínico, con el fin de proporcionar

información referente al estado del TAG, de forma inicial se plantea incorporar dos luces LED18,

con el fin de tener una variedad de estados.

Finalmente el dispositivo TAG debe tener un sistema de obtención de coordenadas, el cual va a

registrar las coordenadas, la fecha y hora de la toma de la información, en caso de no poder

tomar la información, debe tener la capacidad de informar que no es posible obtener la

información.

3.2. Modelamiento del problema La necesidad de seguimiento al proceso existente en la entrega - recepción de paquetes,

conlleva el requerir de un sistema capaz de reflejar de forma detallada la ruta que sigue un

paquete en todo instante.

Un sistema ideal debería considerar una actualización de las coordenadas de forma permanente.

Sin embargo, el coste de todo el sistema se incrementaría, pues la frecuencia de actualización

de la información incide de forma directa en los costos operativos, tanto de almacenamiento,

energía, procesamiento…

El sistema debe ser transparente para un usuario, es decir, el usuario no debe tener

preocupación de cómo se va a realizar el envío del paquete, basta con detallar las características

del envío previamente expuestas en el punto 3.1.2 Recepción, Tránsito y Entrega de la página

14.

Figura 3. 4 Diagrama ideal de recepción – entrega

La creación de la ruta está influenciada por el método de entrega a utilizar, es decir, si la entrega

se la va a realizar caminando la ruta va a ser diferente de si se la realiza en un vehículo.

17 TAG: Nombre que se le da a la tarjeta para el manejo de la trazabilidad de los paquetes que se va a utilizar en el presente TFM. 18 LED: Diodo emisor de luz (del inglés ligh-emitting diode)

Page 28: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

17

3.2.1. Rutas Se va a definir dos tipos de rutas, la ruta que un paquete sigue para alcanzar su destino, la cual

va a ser el resultado de la toma de coordenadas de posicionamiento por parte del dispositivo

TAG y la ruta definida para la entrega del paquete.

La diferencia entre las dos rutas radica en que la primera ruta, se va creando a medida que el

paquete intenta llegar al destino definido. En cambio, la segunda ruta, es una especie de

sugerencia del camino que debe seguir un paquete con la finalidad de conseguir su destino.

Figura 3. 5 Diferencia entre ruta real y sugerida

En la Figura 3. 5 se trata de ejemplificar la diferencia entre estas rutas, la ruta en negro es la que

el sistema debe presentar como opción para que el paquete pueda ser enviado a su destinatario,

sin embargo, en la ruta se encuentra una prohibición de paso, lo cual impide completar la ruta.

El sistema de trazabilidad basa su funcionamiento, entendiendo como una huella de lo sucedido,

es decir, para el ejemplo de la Figura 3. 5 el sistema de trazabilidad debe guardar la ruta que

esta de color morado, pues está es la ruta por donde el paquete viajó.

Considerando lo anterior expuesto, un sistema de trazabilidad, debe almacenar la ruta real

cursada por el paquete, mas no la ruta recomendada. Esto no exime el poder almacenar la ruta

recomendada, pues guardar la ruta recomendada puede ser de utilidad al momento que se

requiera realizar algún tipo de comparación.

3.2.2. Tipos de envío El tratamiento para algunos paquetes debe ser diferenciado, pues puede contener elementos

frágiles, de envío prioritario o confidencial. Por tal motivo se puede establecer algunos perfiles

de envío, los cuales van a influir en la forma en cómo se envíe, por ejemplo en la conformación

de los lotes.

Un paquete marcado con un envío prioritario debe estar en un lote de envío prioritario. En

cambio un paquete marcado como confidencial, no requiere un lote diferente, lo único que

requiere es ser entregado únicamente a la persona a la cual está dirigido.

En lo posible un sistema debe restringir tener una gran cantidad de tipos de envío, para

conseguir una gestión más ágil, si se tiene más tipos de envío la gestión del proceso de entrega

puede tornarse difícil de manejar.

Page 29: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

18

3.2.3. Gestión de rutas Como parte importante de un sistema de trazabilidad es la generación de un SIG que refleje, de

forma clara y con un nivel de precisión acorde a los requerimientos, la ubicación de un paquete

que se encuentre en tránsito o la ruta que se creó de un paquete que ya fue entregado.

En un sistema ideal las rutas que se recomienden para la entrega de paquetes, deben poder

actualizarse en tiempo real, es decir, si por algún motivo se cambia la ruta, el sistema de gestión

de rutas, debe enviar una actualización de la ruta. Sin embargo, se debe plantear un rango de

tolerancia para establecer a un dispositivo como “fuera de ruta”, es decir, debido a la precisión

de los dispositivos que se utilicen, no es prudente identificar a un dispositivo como “fuera de

ruta”, pues se debe procurar evitar falsos positivos.

Por tal motivo, se puede ajustar la ruta sugerida a un buffer19 de injerencia, donde el ancho del

buffer sirva para realizar una intersección entre las coordenadas de un dispositivo y la ruta a

seguir. El ancho del buffer debe estar acorde al rango de precisión del TAG.

Las rutas de tracking en cambio no deben tener opción de modificación, pues son un reflejo de

la ruta real que siguió un paquete en el proceso recepción – entrega. Permitir la opción de alterar

una ruta de tracking rompería el sentido que tiene el sistema de trazabilidad, pues es

precisamente, generar una huella del trayecto seguido por un paquete.

Por tal motivo, es imperativo que el sistema guarde un número adecuado de coordenadas, este

número de coordenadas debe ayudar a reconstruir la ruta efectuada en su totalidad, sin saturar

la cantidad de información enviada al SIG.

3.2.4. Precisión en la ubicación Un sistema ideal debería presentar una precisión equiparable a la realidad, sin embargo, tener

una precisión de este tipo puede significar un aumento considerable en el coste de la aplicación,

sin que esto se traduzca en una mejora sustancial en el sistema.

La precisión dependerá directamente del tipo de aplicación que se esté desarrollando, para el

caso del envío de paquetería en general, no presenta un nivel de precisión exigente.

3.2.5. Obtención de coordenadas La función principal de las coordenadas es poder generar la ruta de tracking, está debe contener

tantos puntos como sean necesarios.

Cuando un dispositivo de obtención de coordenadas se mantiene recibiendo de forma

permanente, se incrementa el consumo de batería, lo cual no es un comportamiento deseado

para un TAG, pues reduce la duración de las baterías.

19 Buffer: Región de incidencia de una ruta generada.

Page 30: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

19

Algunos sistemas tienen una variación en el tiempo de toma de coordenadas, el tiempo depende

de factores como por ejemplo los acelerómetros, dichos sistemas incrementan o disminuyen ya

frecuencia de toma de coordenadas con el cambio de la velocidad del dispositivo.

Otra opción que se puede analizar es enviar un conjunto de coordenadas cuando el TAG intente

comunicarse con el SIG, de esta forma se consigue una eficiencia energética en cuanto al número

de transmisiones, la consecuencia de usar este mecanismo radica al momento de ocurrir una

falla, pues se pierden varias coordenadas en lugar de solo una.

3.2.6. Acción frente a errores Un sistema debe presentar cierto nivel de robustez frente a la perdida de información, errores

de ejecución o incapacidad de obtener información.

Los aspectos predeterminados para corregir errores en la entrega de un paquete deben estar

definidos en una tabla de severidad, donde se exponga el tipo de problema al que se puede

enfrentar y el nivel de severidad de la eventualidad.

Evento Severidad Probabilidad

Desconexión momentánea

Baja Media

Incapacidad de obtener coordenadas

Media Baja

Batería baja Alta Media

Apagado fortuito Alta Baja

Perdida de configuración del TAG

Alta Baja

Daños por caída Alta Media

Error en transmisión de información

Media Media

Tabla 3. 1 Tabla de eventos

Evento Acción

Desconexión momentánea

Ninguna

Incapacidad de obtener coordenadas

Encender una luz indicadora en el TAG.

Batería baja Cambio de batería

Apagado fortuito Revisión de batería, conexiones, cambio de batería.

Perdida de configuración del TAG

Asignar un nuevo TAG, manteniendo la información del anterior,

reconfiguración del TAG

Daños por caída Diseño resistente a caídas, que limite los golpes.

Error en transmisión de información

Utilizar un método de transmisión con control de transmisión.

Tabla 3. 2 Acciones frente a eventos

La Tabla 3. 1 muestra una descripción de los eventos que pueden afectar el sistema, la tabla

muestra también la probabilidad de que un evento ocurra, puesto que pese a que la severidad

Page 31: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

20

de un evento sea alta, no implica que este evento tenga una probabilidad de ocurrir también

alta.

La Tabla 3. 2 muestra las acciones que se sugieren como parte del correcto funcionamiento de

los dispositivos de tracking.

Los eventos que se deben solucionar de forma prioritaria son los eventos que tienen una

probabilidad alta de ocurrir, pues si no se solucionan pueden entorpecer el correcto

funcionamiento del sistema.

3.3. Limitaciones de ejecución Si bien cumplir cada detalle de un sistema a simple vista podría parecer un propósito a cumplir,

esto no necesariamente es una realidad, pues algunos aspectos no pueden ser necesarios con

el fin de cumplir objetivos.

3.3.1. Precisión El sistema de trazabilidad requiere una precisión que permita detallar en un mapa la ruta que

siguió el paquete hasta llegar al destino. La información debe ser lo suficientemente densa como

para poder mostrar a detalle la información en un mapa. Tomando en cuenta que un vehículo

en un entorno urbano tiene una velocidad promedio.

Tomando en cuenta una calle de un entorno urbano, se tiene que un carril es de

aproximadamente 3 metros, teniendo en cuenta una calle típica de al menos 2 carriles se tiene

una dimensión de 6 metros más las aceras, tomando en cuenta un tamaño de aceras mínimo de

un metro con 50 centímetros, podemos tener una dimensión de 9 metros en total para el

tamaño de una calle tipo.

Con el cálculo anterior podemos decir que si el dispositivo de obtención de coordenadas tiene

una precisión de hasta 5 metros podemos asumir que el dispositivo aún se encuentra en la ruta.

La importancia de definir un parámetro de precisión no muy pequeño busca limitar la generación

de falsas alarmas de “fuera de ruta”.

Figura 3. 6 Comparación de un punto con una ruta

Si el sistema no es capaz de declarar a un dispositivo como “fuera de ruta” de forma adecuada,

va a tener falsos positivos disminuyendo el performance de los procesos. La Figura 3. 6 muestra

dos panoramas, el cuadro que contiene la letra B refleja un problema que implicaría requerir

una precisión elevada, pues la ubicación del dispositivo se encuentra dentro de la ruta como se

lo pone de ejemplo en el recuadro A de la misma figura.

Este proceso de intersección entre la ruta y el dispositivo se lo debe realizar aplicando un

proceso sobre la capa de la ruta.

3.3.2. Cobertura Un sistema de entrega y recepción de paquetes debe estar limitado por un área de cobertura,

que dependerá de la parte administrativa.

Page 32: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

21

Una posibilidad consistiría en establecer un perímetro de cobertura de cada oficina en un

sistema Figura 3. 7, sin embargo la superposición de oficinas implicaría que algunas áreas sean

atendidas por 2 o más oficinas o peor aún por ninguna. En la parte central de la Figura 3. 7 se

puede observar que existe un área atendida por tres oficinas.

La solución a este problema es generar elementos geográficos plenamente definidos, con el fin

de lograr la cobertura de todo el sector que se desee.

Es imperativo evidenciar que un sistema de entrega de paquetes producirá un valor diferente

dependiendo la distancia y el alcance. Mediante procesos GIS se pueden establecer cálculos de

algunos parámetros que ayuden a gestionar la generación de los rubros. Como por ejemplo

calcular la distancia entre el origen y destino, en base a alguna tabla preestablecida, en base a

rangos, determinar el valor del envío…

Figura 3. 7 Cobertura basada en radio

3.3.3. Tipos de paquetes Los tipos de paquetes que se puede admitir para el envío es algo que se debe tener en cuenta

al momento de diseñar un sistema.

La limitación de los productos que se transportan como el correcto almacenaje puede hacer que

el sistema sea capaz de generar una solución más adecuada. Es decir el tipo de empaque de los

productos va a influenciar en la facilidad de colocar un TAG y también a transportarlo de forma

conveniente.

Del mismo modo que el empaque importa, el tamaño también, por tal razón es de gran

importancia que se debe realizar una limitación en cuanto a tamaños. En la industria de los

envíos se puede disuadir a los usuarios de enviar paquetes con un tamaño innecesariamente

superior al contenido aplicando tarifas de cobro en base a los tamaños.

Page 33: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

22

Figura 3. 8 Tipos de empaques utilizados para el transporte de paquetería. Recuperado de: http://www.uline.com/Cls_04/Boxes-Corrugated

En la Figura 3. 8 se puede ver diferentes tipos de empaques, es suficiente tener una tabla

asociada al tipo de paquete y al tamaño para generar los cargos de envío.

3.4. Limitaciones de estudio El presente TFM busca ejemplificar en una escala menor, un funcionamiento de lo establecido

en el sistema, utilizando algunas herramientas aprendidas en el estudio del Master de

Geoinformática.

La idea del estudio del presente TFM es evidenciar de forma separada en algunos casos las

ventajas y desventajas de usar los sistemas que se van a exponer aquí. Tomando en cuenta las

limitaciones de tiempo y espacio para la realización del trabajo.

Page 34: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

23

Capítulo 4

3.4.1. Lotes Se van a plantear un esquema de comprobación de cambios de lotes, para lo cual se va a

realizar la simulación de un paquete cambiando de un lote a otro.

Figura 3. 9 Esquema de diseño de pruebas

La Figura 3. 9 muestra el diseño que se quiere abordar como parte del TFM.

Se ha figurado que los dispositivos TAG están en dos lotes, los cuales se encuentran en tránsito,

al llegar a una oficina en base a su información se agrupan de una forma diferente, comprobando

así el funcionamiento de asignación de lotes.

La asignación de lotes es un punto importante de comprobación puesto que, si los paquetes no

pueden cambiar de lotes a través de un proceso de envío, no tiene ningún sentido el estudio de

la trazabilidad, pues la trazabilidad se plantea como una respuesta al cambio al que están

expuestos los elementos en un proceso de traslado de paquetes.

3.4.2. Número de dispositivos En un entorno real la cantidad de dispositivos llamados TAG que se deben emplear, debe ser lo

suficiente como para atender cada uno de los paquetes que lleguen para ser entregados, sin

embargo, tomando en cuenta que se trata de un entorno de pruebas y la limitación de la

cantidad de dispositivos de transmisión, se ha conseguido elaborar 3 dispositivos TAG.

3.4.3. Sistema SIG Como parte del manejo del sistema, se va a elaborar un sistema que tenga la funcionalidad de

crear rutas entre los el origen y el destino de un paquete, teniendo en cuenta que un paquete

va a tener como origen una ubicación perteneciente a una oficina del sistema. En cambio el

destino es la dirección de entrega.

La dirección de entrega es diferente a una de las direcciones de la oficina, pues se pretende

tener tres estados de un paquete que se muestran en la Figura 3. 1 refiriéndose a la recepción,

tránsito y entrega.

Page 35: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

24

El sistema también almacena las rutas de tracking de los paquetes que ya alcanzaron su destino,

una ruta guardada se la despliega en un mapa.

El sistema también preserva la información relacionada al envío de paquetes, es decir, origen,

destino, código de identificación, fecha y toda la información relacionada con la entrega del

paquete.

3.4.4. Resistencia de materiales El diseño definitivo de un programa de trazabilidad debe contemplar un análisis de la resistencia

de los materiales que se deben usar. Sin embargo, el campo de estudio del presente master se

encuentra apartado de la resistividad de materiales, en especial, se debe analizar la resistencia

a impactos.

3.4.5. Códigos de TAG Se debe generar un proceso de identificación de cada TAG en la red de entrega, esto implica que

cada uno de los dispositivos esté unívocamente etiquetado en el sistema.

El proceso de generación de los códigos debe considerar varios elementos, que den información

acorde al proceso que sigue un paquete.

3.4.6. Precisión La precisión del sistema de pruebas se la toma en base a los dispositivos usados, teniendo en

cuenta que son elementos de electrónica de estudio. Es decir, son elemento que su finalidad

es el aprendizaje como objetivo del equipo.

Los equipos de posicionamiento entregan los datos que reciben del satélite, con fecha y hora

de la adquisición, esta información va a ser procesada por el módulo coordinador de las

comunicaciones.

3.4.7. Área de cobertura El área de cobertura que se va a tener en el sistema de pruebas está limitada al rango que

provee el sistema de comunicación inalámbrico.

Page 36: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

25

Modelo de trazabilidad El modelo de trazabilidad plantea tener una posición actualizada cada cierto periodo de tiempo,

recopilando la información para al final de la entrega, guardar la ruta que el paquete siguió.

Se plantea tres procesos básicos en el sistema, el primero es la recepción, en la Figura 4. 1 en el

bloque superior se contempla la adquisición de los datos sobre el paquete que se requiere

enviar. Tan pronto como se ingresan los datos, se asigna un dispositivo TAG al paquete.

El dispositivo TAG tiene el número de identificación asociado a un número de único del paquete,

para poder realizar el seguimiento de la ubicación del paquete.

Figura 4. 1 Diagrama de proceso

De los datos que se ingresan al sistema se deben clasificar, algunos de ellos están destinados a

identificación externa, la cual no va a ser utilizada en ningún proceso de georeferenciación, en

cambio, la dirección de destino, va a ser la información mediante la cual se consiga obtener la

ruta que se debe seguir.

En la Figura 4. 3 en una parte del proceso de cálculo de ruta se evidencia el componente de

servicio web que se utiliza. Sin embargo, el proceso de cálculo de ruta implica algunos otros

procesos.

Figura 4. 2 Puntos intermedios en una ruta

El cálculo de ruta inicia con obtener una primera ruta piloto, que sirve para hacer una

intersección del área de cobertura de las oficinas y determinar cuáles son las oficinas por las que

Page 37: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

26

debe un paquete pasar en el proceso de envío. Después de que de obtienen las oficinas se añade

las direcciones de las oficinas como puntos intermedios de la ruta y se vuelve a calcular la ruta.

En la Figura 4. 2 se destaca que pueden existir varios puntos intermedios, dependiendo de si la

ruta piloto se interseca con el área de influencia de las oficinas. En esta figura el círculo con el

número, representa la cantidad de oficinas por las que un paquete debe pasar hasta llegar a su

destino y no representa el número asignado a la oficina.

Figura 4. 3 Proceso para calcular ruta

Un esquema que se puede usar es el que se evidencia en la Figura 4. 4, pues mediante el uso de

un mapa coroplético se denota el área de influencia que tiene cada oficina, en éste caso una

oficina tiene una incidencia o área de cobertura grande, pero cada una de las áreas se encuentra

perfectamente delimitada. Cada mapa puede ser usado como una capa diferente, esto ayuda a

gestionar la forma como se despliega la información.

Page 38: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

27

Figura 4. 4 Mapa coroplético20 de cobertura de una oficina

4.1. Esquema de rastreo El esquema de rastreo que se sigue está basado en algunos parámetro previamente definidos,

dichos parámetros buscan generar eficiencia de los recursos, optimizando en lo posible los

recursos.

4.1.1. Tiempo El primer parámetro que se define para realizar el seguimiento de los paquetes es la

periodicidad, pues, tomando en cuenta que los dispositivos TAG tienen una batería, el uso

continuo de todos los elementos del TAG reduce el tiempo de duración de la batería.

Figura 4. 5 Seguimiento de paquetes durante el transito

20 Coroplético: Mapa temático que aporta información espacial mediante el uso de colores

Page 39: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

28

El esquema de seguimiento que se plantea se lo refleja en la Figura 4. 5, donde cada punto rojo

al interior del mapa, es un lugar donde se ha tomado la ubicación del paquete. La densidad de

los puntos debe ser acorde a la necesidad, para poder hacer una reconstrucción de una ruta de

forma que sea un reflejo de la realidad.

Tomando en cuenta que la distribución urbanística de una ciudad, una manzana comprende

típicamente una dimensión que varía entre los 100 a 150 metros de longitud por cada lado que

conforma la manzana. Un sistema capaz de reflejar una ruta para una ciudad debe tomar al

menos una medición cada 100 metros. Tomando en cuenta la velocidad media diaria de Madrid

España, que se ubica entre los 15 – 20 Km/h utilizando ecuación de la Figura 4. 6 se puede

obtener que el tiempo en segundos requerido para realizar el barrido de coordenadas es de 18

segundos, considerando una distancia de 100 metros y una velocidad de 20 Km/h.

𝑡𝑖𝑒𝑚𝑝𝑜 =𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑖𝑎𝑃𝑟𝑜𝑚𝑒𝑑𝑖𝑜

𝑣𝑒𝑙𝑜𝑐𝑖𝑑𝑎𝑑𝑃𝑟𝑜𝑚𝑒𝑑𝑖𝑜

Figura 4. 6 Calculo del tiempo de lectura de una coordenada

4.1.2. Rastreo El seguimiento del rastreo va a realizarse por un dispositivo GPS, que va a estar integrado en el

TAG. Las consideraciones a tomarse en cuenta son las propias del correcto funcionamiento de

un GPS.

Figura 4. 7 Funcionamiento de la obtención de coordenadas en un TAG

4.1.3. Seguimiento El seguimiento de un paquete se lo diseña para que tan pronto como los datos llegan al sistema,

estos datos se reflejen en una capa.

La capa base va a ser la misma para todos, en cambio la capa de transito de paquetes debe

mostrar los paquetes en movimiento, de acuerdo al movimiento real de un paquete.

Page 40: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

29

Cada paquete está representado por un icono, el icono contiene un elemento desplegable que

se acciona haciendo clic sobre él.

Figura 4. 8 Proceso de manejo de información de marcadores en el mapa

El icono se mantendrá el mismo movimiento que tiene el paquete en la realidad.

Page 41: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

30

Para no generar aglomeración de iconos o marcadores en un mapa, el uso de clusterización21

de marcadores evita que una densidad alta de marcadores haga el mapa un elemento difícil de

entender.

Figura 4. 9 Ejemplo de uso de clusterización de marcadores

La Figura 4. 9 muestra un ejemplo del uso de clusterización, la agrupación se la realiza por

elementos de cercanía, la clusterización es sensible al zoom22 en un mapa. Los marcadores

cercanos se unen cuando el zoom se aleja o se separan cuando el zoom se acerca.

Figura 4. 10 Ejemplo de utilización de marcadores sin clusterización

Un mapa que no utiliza clusterización puede limitar la visualización de elementos cuando la

densidad de marcadores es alta. La Figura 4. 10 es un ejemplo de un mapa que despliega varios

marcadores impidiendo visualizar el mapa base.

21 Clusterización: Agrupación de varios marcadores en un mapa para mostrarlos como un único elemento. 22 Zoom: Efecto de acercar o alejar una imagen.

Page 42: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

31

4.1.4. Puntos fijos Para el funcionamiento de un sistema de entrega, se establecen áreas de incidencia de una

oficina, las áreas de incidencia deben ser calculadas en torno a parámetros como por ejemplo la

distancia máxima desde una oficina, hasta el borde más lejano del área de incidencia.

La capa de oficinas debe ser fija, pues son puntos que no se encuentran en movimiento, se puede

asociar a los marcadores de las oficinas popups que contengan la información relevante de las

oficinas, como teléfono, dirección, página web, etc.

En una interfaz orientada al usuario, se puede realizar un proceso para buscar la oficina más

cercana para un usuario.

Figura 4. 11 Ejemplo de búsqueda del elemento más cercano

Por ejemplo, vamos a suponer que se necesita encontrar una oficina que pueda transportar

elementos deportivos. Los cuales están representados en el mapa de la Figura 4. 11 con

marcador de una bicicleta, el usuario se encuentra representado por el marcador celeste. La

aplicación pinta de un color diferente el marcador más cercano que permite transportar equipos

deportivos.

El usuario puede mover libremente el marcador que representa su ubicación, sin embargo, no

tiene la capacidad de mover los marcadores de las oficinas.

La información que puede ver un cliente difiere de la información que puede observar un

empleado. Mientras un cliente puede ver las oficinas, un dependiente de la empresa puede

observar los paquetes circulando en el mapa.

4.1.5. Ruta en el mapa La ruta que un paquete recorrió hasta llegar al destino puede ser desplegada en un mapa. La

ruta no puede ser editada después de que sea guardada, pues se altera el proceso de

trazabilidad.

La ruta se muestra como una polilínea conformada por cada uno de los puntos que fueron

tomados, tiene un marcador de inicio y fin del recorrido.

También se puede calcular la distancia recorrida, por el paquete, el tiempo de duración del

transporte, pues se cuenta con una fecha y hora de cada punto recorrido.

Page 43: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

32

4.1.6. Esquema de lotes La organización de lotes sirve para manejar una gestión de trazabilidad más rápida, pero

también para utilizar de forma eficiente los recursos.

Figura 4. 12 Diferencia de transmisión entre esquema individual y de lotes

Se debe aprovechar las características presentes en algunos dispositivos, los cuales ofrecen

estados sleep, esto quiere decir que un dispositivo no se mantiene en proceso de transmisión

todo el tiempo. El modo sleep disminuye el consumo de batería.

Un paquete sin embargo, puede cambiar de lotes, dependiendo de las necesidades. En la Figura

3. 9 se puede apreciar el cambio de un paquete de un lote a otro. Cuando un paquete se

encuentre fuera de la oficina, no pueden darse cambios. El único lugar donde un paquete puede

cambiar de lote es en una oficina.

4.1.7. Esquema de tramas GPS Las tramas que contienen la ubicación de los dispositivos TAG obtienen la información del

elemento GPS que se encuentra conectado. Se genera un formato de trama, para que el sistema

de manejo, sea capaz de entender los datos que el GPS le transmite.

La Figura 4. 14 Diagrama de flujo de entramado en datos de ubicación muestra el proceso de la

toma de datos, los datos se los toma de forma periódica, por tal motivo, cuando una trama23 fue

creada. Se realiza una delimitación de la trama, utilizando una palabra o carácter de inicio,

también un delimitador de fin.

Cuando la trama fue creada con éxito, se le agrega el delimitador de fin y se espera un tiempo

predefinido antes de enviar la siguiente trama.

En caso de que no se reciben datos del GPS, la trama no debe der creada, en su lugar se envía

una serie de caracteres, los cuales en el sistema interprete como falta de datos.

Figura 4. 13 Formato de transmisión de datos

La cadena de caracteres se la organiza siguiendo un formado preestablecido, para que en el

receptor los valores puedan ser obtenidos de una forma correcta. La Figura 4. 13 muestra un

detalle de los campos que se establecen como parte de la trama que enviará cada dispositivo

para poder trazar su ruta.

23 Trama: Paquete de datos ordenados de acuerdo a una especificación establecida.

Page 44: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

33

Figura 4. 14 Diagrama de flujo de entramado en datos de ubicación

4.1.8. Repositorio de rutas El repositorio de las rutas genera archivos con la información referente a la ruta cursada por el

paquete en su trayecto.

La información que se guarde debe ser la proporcionada por el dispositivo, es decir, pese a que

la ruta recomendada para el transporte del paquete sea igual a la que sigue el paquete, la ruta

que se guarde va a ser la ruta formada por los puntos tomados por el dispositivo TAG.

Es importante en el repositorio guardar información referente a los datos con los cuales se

procedió a enviar el paquete, dado que, si un paquete tiene información de transportar con

cuidado, la información debe haber quedado guardada como parte del repositorio.

4.2. Dispositivo de rastreo El dispositivo de rastreo también llamado TAG en el presente documento, debe cumplir con las

especificaciones requeridas en el diseño del sistema de trazabilidad, entre las cuales cuenta,

tener un dispositivo de obtención de coordenadas, batería, módulo de procesamiento, módulo

de transmisión e indicadores LED.

Page 45: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

34

4.2.1. Diseño conceptual El diseño conceptual del dispositivo implica la elaboración de un esquema de diseño, capas de

abarcar las consideraciones. En la Figura 3. 3 Tarjeta de tracking de paquetería se puede

observar un detalle grafico de los módulos que comprenden el dispositivo TAG.

Figura 4. 15 Diagrama modular del TAG

Parámetros generales a considerar al momento del diseño del TAG se exponen en la Figura 4.

15 Diagrama modular del TAG, donde se incluyen los parámetros de precisión del GPS, las

características reprogramables del módulo de procesamiento, esto es algo valioso a considerar,

pues si el dispositivo no cuenta con esta característica no se podría considerar un diseño de

mejoras futuras. Pues un sistema es perfectible en el tiempo, las consideraciones actuales,

pueden diferir a las reales.

Con este diseño conceptual se deja delimitadas líneas de acción capaces de solventar el diseño

establecido y los cambios que se deseen incluir en un futuro.

En cada módulo se establece como parte importante el consumo energético, esta consideración

es vital al momento de delinear el diseño, pues se trata de generar un balance entre las

necesidades requeridas y el consumo requerido. Un sistema de obtención de coordenadas

extremadamente preciso no necesariamente es lo que el sistema de trazabilidad necesita si el

consumo de energía limita el uso del aparato a trayectos pequeños.

4.2.2. Resistividad Al tratarse de un dispositivo que tiene que viajar con los paquetes, se puede decir que es

propenso a caídas, debidas a la manipulación o al proceso de transporte.

Tomando en cuanta una altura promedio de 180 centímetros de una persona, se puede

establecer esa altura, como la altura que un dispositivo deba resistir.

Page 46: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

35

La resistencia tampoco puede sacrificar el peso o las dimensiones de la fabricación de la carcasa

que contiene los componentes del dispositivo de trazabilidad que se muestra en la Figura 3. 3

Tarjeta de tracking de paquetería.

El plástico es el material que por sus características de resistividad, peso y resistencia se pueden

acoplar al diseño de la carcasa.

Entre los diferentes tipos de plástico, el polipropileno destaca por sus características de

resistencia a los golpes.

4.2.3. Batería La batería que alimente los componentes electrónicos del TAG debe ser una batería del tipo

recargable de larga duración, por tal motivo se plantea utilizar baterías de Ion-Litio, las cuales

pueden ser recargadas y también tienen un periodo de duración alto.

Se puede tomar como ejemplo el consumo de un teléfono inteligente, que tiene componentes

de procesamiento y ubicación, estos teléfonos usan baterías de tipo recargable.

El amperaje debe ser calculado en base al diseño del circuito que se establezca para el TAG, sin

embargo, el diseño del TAG no es parte del alcance del TFM.

Otro factor importante al momento de encontrar la batería adecuada, es el tiempo promedio

de uso o el tiempo de la recarga. Es decir, limitar la cantidad de veces que se puede o se debe

recargar un dispositivo.

Una batería con un mayor tiempo de duración tiene una incidencia directa en su tamaño y su

precio. Se debe contemplar los dos ámbitos, pues no se desea tener un TAG con un tamaño

grande.

4.2.4. Comunicaciones Las comunicaciones que pueden tener los dispositivos deben cumplir las características de

organización planteadas como Lotes. Las comunicaciones que se lleven a cabo entre dispositivos

deben poder compartir información entre ellos.

Que los dispositivos puedan establecer de forma univoca la pertenencia a un segmento definido

de red, es parte fundamental del presente diseño. Pues sustenta la acción del modo de

funcionamiento cíclico.

La consideración de comunicaciones sirve para poder cumplir con lo que se muestra en la Figura

4. 12 donde en un lote tan solo uno de los dispositivos transmite.

Figura 4. 16 Configuración tipo clúster

La configuración necesaria es la de tipo clúster. Donde se organizan en subgrupos.

Page 47: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

36

4.2.5. Indicadores Los indicadores son una parte indispensable en cualquier sistema, sin un correcto sistema de

indicadores sería difícil identificar de forma clara los sucesos que están ocurriendo en el sistema.

Una pantalla que muestre las indicaciones de destino y final de un dispositivo, también

información referente a la ruta e incluso la información de adecuado funcionamiento se puede

ser de mucha ayuda, sin embargo, una pantalla consume una cantidad importante de energía.

La recomendación es usar indicadores tipo LED, los cuales con un correcto código de eventos

puede proporcionar la información adecuada del funcionamiento de la trazabilidad.

En la Figura 3. 3 se puede ver que se establecen 2 indicadores LED, los cuales tienen la función

de reflejar los procesos que se están llevando a cabo en los dispositivos TAG.

4.2.6. Comportamiento El paquete debe mantener un comportamiento acorde al diseño de la trazabilidad, simplificando

procedimientos. Entre los cuales se pueden establecer los siguientes.

Figura 4. 17 Comportamiento de un TAG

El TAG va a tener un funcionamiento acorde al área donde se encuentre, esto quiere decir que,

tal como se muestra en la Figura 4. 17 cuando el paquete está fuera de la oficina puede

encontrarse en dos tipos de funcionamiento, puede estar en fase de tránsito, es decir que en su

ruta aún falta al menos una oficina por recorrer o puede encontrarse en fase de entrega.

4.3. Algoritmo de procesamiento de paquetes El procesamiento de los paquetes que ingresan al proceso de envío sigue un tratamiento que se

detalla de forma gráfica en la Figura 4. 18.

Primero empieza con la recepción del paquete, es la primera comprobación del área de

cobertura que tiene la red de entrega de paquetería. Pues en caso de que el paquete desee ser

enviado a un área que no se encentre en el área de cobertura finaliza el proceso de entrega.

Page 48: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

37

Si el paquete es admitido para el proceso de entrega, se recopila la información del paquete,

toda la información ayuda no solo a que el paquete llegue desde el origen a su destino, sino

también, que llegue en las condiciones adecuadas.

Figura 4. 18 Algoritmo de comportamiento de un paquete

Después de que los datos de entrega han sido almacenados de forma correcta, se realiza el

cálculo de la ruta piloto, la cual servirá para conseguir la ruta de oficinas que debe seguir el

paquete. Es decir si un paquete no cruza por el área de incidencia de una oficina no tiene

necesidad de realizar tránsito en esa oficina.

En cada oficina se realiza una nueva asignación de lote, el cambio de lote se puede dar

únicamente cuando el paquete se encuentra en una oficina tal como se detalla en la Figura 4.

17. Y dependerá del área de incidencia.

Figura 4. 19 Cambio de indicadores LED

Cada cambio que suceda en el estado de un TAG debe generar un cambio en los LED indicadores

del TAG, esto es para facilitar el proceso para los dependientes de las oficinas. La cantidad de

Page 49: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

38

luces led que contenga el TAG dependerá en gran medida al número de oficinas presentes en la

red. De ser el caso se podría instalar un display numérico de siete segmentos24 para la asignación

visual de los lotes. La Figura 4. 19 nos indica que en cada momento que existe un cambio en el

estado de la transmisión la luz o indicador cambiará. Los estados se encuentran detallados en el

Figura 4. 1 Diagrama de proceso, donde se especifican las fases del proceso de entrega.

Los paquetes se mantendrán en tránsito mientras las coordenadas de destino y el área de

cobertura de la oficina en la que llegue el paquete sean comunes. El proceso de verificación se

lo debe realizar por medio de una intersección entre el área de cobertura de la oficina y el punto

de destino.

Cuando un paquete realizó el cambio de estado, es decir se encuentra en el proceso de entrega,

se requiere realizar el cambio en los indicadores led. El proceso de entrega del paquete en

cambio activa todos los componentes, pues a partir de ese momento la trazabilidad del paquete

se maneja de forma individual.

Se sigue la ruta hasta lograr su entrega, en caso de que la entrega no pueda llevarse a cabo, el

paquete regresa a la oficina de la cual salió por última ocasión en espera de un proceso de

acción.

4.4. Retos a superar La trazabilidad en paquetería cada día está creciendo y los retos que debe superar con el

incremento de su uso son cada vez mayores.

4.4.1. Pérdida de cobertura Cuando se diseña un sistema basado en la georeferenciación un reto a superar siempre son los

lugares con pérdida de cobertura, tales como túneles, edificios.

En tal sentido en la actualidad se puede solventar o mejorar algunos de estas pérdidas de señal

por obstrucción.

Una de ellas sería tener un sistema paralelo individual de recopilación de información, como por

ejemplo un teléfono inteligente, el cual, en base a los sensores de movimiento, como el

acelerómetro y brújula, se puede tener una orientación aproximada de la ruta que sigue el

paquete. Después realizar algún tipo de corrección de la ruta que siguió el paquete, sin embargo

se puede hablar de un error acumulado, el cual se evidenciaría en tramos largos de perdida de

conexión.

4.4.2. Duración de batería Este campo es el que limita varios desarrollos, sin embargo pese al incremento en la capacidad

de duración de las baterías, las mismas no pueden solventar todas las necesidades.

La agregación de elementos electrónicos más precisos o de mejor interactividad con el usuario

incide de forma directa en el consumo de energía.

Por tal motivo su uso puede considerarse restrictivo y antes de añadir un elemento al dispositivo

hay que evaluar el consumo de energía.

24 Display numérico de siete segmentos: es un visualizador que permite representar mediante luces valores numéricos del 0 al 9.

Page 50: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

39

4.4.3. Facilidad de operación La trazabilidad es la generación de una ruta que refleje el proceso por el cual un paquete llego

de su origen a su destino, sin embargo si un sistema es difícil de usar el resultado puede no ser

el deseado, llegando incluso a requerir personal especializado lo cual tendrá un impacto en el

coste de operaciones del sistema.

La facilidad de operación debe ser concebida como la relación entre lo necesario y lo

indispensable. Es decir, hay cierto nivel de precisión que basta para generar una ruta, sin

embargo, un sistema de georeferenciación de mejores prestaciones puede generar datos más

precisos, pero para los fines no es útil.

El diseño de la aplicación con la que se implemente la trazabilidad debe ser fácil de manejar,

tanto para el personal dependiente de las oficinas como para el usuario al que se le permita

acceder a los datos del paquete.

4.4.4. Adaptación a cambios El sistema también debe poder adaptarse a cambios, para poder responder a las necesidades

que van apareciendo en el mercado de la entrega de paqueterías, un ejemplo sería si se presenta

la necesidad de cambiar el algoritmo de funcionamiento del TAG. No es eficiente tener que

cambiar de TAG si se requiere hacer un cambio. En cambio sí basta con reenviar la nueva

configuración al dispositivo, esto hace que el sistema pueda mantenerse vigente por un periodo

más amplio de tiempo.

4.5. Diseño de la aplicación La aplicación que se genere para la transmisión de datos, debe contener varios contenidos

diferenciados para los distintos tipos de usuario que pueden acceder.

Figura 4. 20 Perfiles de usuarios en la aplicación

La aplicación va a contener tres perfiles de usuario, para poder gestionar el sistema que se ha

planteado.

Page 51: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

40

El perfil con menos privilegios será aquel que se lo ha denominado como Usuario, este perfil va

dirigido al cliente que realiza el envío, por tal motivo no puede observar nada que no sea el

estado del envío de su paquete, el funcionamiento debe ser orientado a la simplicidad pues a

nivel de perfil de usuario se debe considerar la falta de conocimiento específico en manejo

sistemas. El sistema desplegara la posición en un mapa del paquete, indicando cuales y cuantas

oficinas faltan cursar hasta llegar al destino.

El perfil de empleado es un perfil con más permisos, permite gestionar los envíos, visualizar el

estado global de los paquetes, no tiene permitido realizar ninguna configuración sobre los

dispositivos de trazabilidad. Al empleado se le permite visualizar los paquetes que están

cursando en la red, también se le permite gestionar las rutas. No tiene permiso de modificar los

archivos generados en la trazabilidad.

El perfil de administrador es un perfil que engloba los anteriores sistemas. Adicionalmente

también puede realizar cambios en las configuraciones de los dispositivos. Este usuario puede

eliminar los repositorios guardados de los paquetes entregados.

Figura 4. 21 Creación de rutas utilizando un servicio web

En la Figura 4. 21 Creación de rutas utilizando un servicio web, se muestra un aplicativo que

retorna la ruta entre dos puntos, dicha ruta permite escoger el medio de transporte a utilizar,

para en base a ese parámetro tomar las consideraciones necesarias para alcanzar el destino final

que se requiere.

Puesto que se van a utilizar servicios web para el cálculo de las rutas, para el perfil de empleado

y usuario se pueden usar aplicativos web, con la finalidad de hacer fácil el acceso desde cualquier

tipo de dispositivo. Las páginas web pueden ser vistas desde los teléfonos celulares sin necesidad

de realizar ninguna instalación.

Todos los datos de las rutas generadas serán los que por medio de las comunicaciones entre los

TAG asignados a los paquetes envíen al sistema.

Page 52: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

41

4.6. Consideraciones adicionales Se deben establecer parámetros de funcionamiento para ciertas condiciones que pueden

suceder en los momentos de ejecución del proceso de entrega. Si bien la idea es utilizar un nuevo

mecanismo de manejo de paquetería, la fase inicial de la entrada en funcionamiento del sistema,

puede coexistir el sistema convencional con el nuevo sistema.

Sin embargo, el sistema debe establecer ciertos procedimientos que se van a ejecutar como

cuando un evento suceda.

4.6.1. Pérdida de conexión del dispositivo El presente debe poder responder a las siguientes preguntas, se las va a responder seguido de

la pregunta:

¿Qué pasa si mi dispositivo se desconecta?

R: En una fase inicial se puede generar un módulo de ingreso de la ruta seguida por otro

paquete en el mismo lote. En caso de que el paquete ya no se encuentre formando parte de

un lote, la información de trazabilidad se completara de forma manual con la información del

empleado que realiza la entrega, indicando que hay pérdida de conexión.

¿Pierde la información de origen o destino?

La información que se tiene como origen y destino es referencial en un punto inicial del

sistema, es decir, como los paquetes no tienen autonomía de direccionamiento no pasa nada

si un paquete pierde la información. Cuando la información no llegue adecuada, se debe

alertar que hay paquetes sin la información completa, los dependientes deben obtener la

información desde los repositorios.

¿Deja de recibir señal GPS?

Existen dos escenarios en este caso, si el dispositivo se encuentra como principal en un lote o

no. En el primer caso, debe alertar al sistema que perdió señal para que el sistema de paso a

activar otro dispositivo. Se recomienda realizar un proceso de búsqueda de señal GPS. En una

mejora del sistema se puede establecer métodos alternativos de generación de ruta cuando

un sistema pierda señal, puesto que la perdida de señal puede ser momentánea.

4.6.2. Ahorro de energía El ahorro de energía se basa en la utilización eficiente de equipos, es decir, considerar que 10

dispositivos todos recibiendo datos y transmitiendo no es eficiente. La solución planteada es

la creación de lotes los cuales tengan una utilización alternada de los dispositivos.

Es decir, si un equipo estuvo un trayecto transmitiendo, cuando llegue a una oficina, el

siguiente trayecto no va a transmitir, ubicándolo al final de una pila de prioridad de asignación

de la transmisión. Con esto evitamos agotar de forma prematura la batería de un solo

dispositivo.

Page 53: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

42

Capítulo 5

Trabajo experimental

5.1. Entorno de pruebas En presente TFM pretende establecer un entorno de pruebas para probar algunas de las

características que se plantean en el sistema. En ese sentido se toman en cuenta los factores

que limitan la elaboración de un sistema final. Entre las limitaciones se encuentra el tiempo de

desarrollo, la accesibilidad a dispositivos.

5.1.1. Módulo de procesamiento Para el módulo de procesamiento se ha utilizado un Arduino UNO, que tiene características de

procesamiento adecuadas para realizar proyectos iniciales. También se destaca que el número

de salidas es 14, con lo cual se puede solventar las necesidades, pues se necesitan 4 salidas para

conectar el módulo de transmisión y el módulo de ubicación. Cuenta con una salida de 3.3 V

ideal para poder alimentar tanto al módulo de transmisión y de ubicación.

Microcontroller ATmega328P

Operating Voltage 5V

Input Voltage

(recommended)

7-12V

Input Voltage (limit) 6-20V

Digital I/O Pins 14 (of which 6 provide PWM

output)

PWM Digital I/O Pins 6

Analog Input Pins 6

DC Current per I/O Pin 20 mA

DC Current for 3.3V Pin 50 mA

Flash Memory 32 KB (ATmega328P)

of which 0.5 KB used by

bootloader

SRAM 2 KB (ATmega328P)

EEPROM 1 KB (ATmega328P)

Clock Speed 16 MHz

Length 68.6 mm

Width 53.4 mm

Weight 25 g

Tabla 4. 1 Especificaciones técnicas Arduino UNO. Tomado de https://www.Arduino.cc/en/Main/ArduinoBoardUno

Page 54: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

43

El módulo Arduino UNO cumple también con la especificación de ser reutilizable pues cuanta

con un entorno de desarrollo que permite realizar tantas actualizaciones como el usuario desee.

La comunicación con el módulo de transmisión se la realiza mediante la utilización de una librería

desarrollada para Arduino.

Figura 5. 1 Esquema de conexiones TAG de pruebas

En la Figura 5. 1 se puede ver el módulo de procesamiento que está incluido como parte del

diseño del TAG de pruebas. El código que está programado en el Arduino UNO se encuentra en

su totalidad en el Anexo A.

Figura 5. 2 Datos transmitidos por el módulo de procesamiento

El formato de transmisión de la información se encuentra detallado en la Figura 5. 2 Datos

transmitidos por el módulo de procesamiento.

5.1.2. Módulo de ubicación Para la ubicación se ha utilizado un NEO-6M u-blox 6 GPS, que es compatible con Arduino UNO.

Se escoge este GPS por ser compatible con Arduino UNO también se lo considera pues la

precisión horizontal que dispone el equipo es de 2.5 metros. Tomando en cuenta que el sistema

tiene un requerimiento de precisión de 5 metros, el GPS cumple con la precisión requerida.

Las características en detalle del GPS utilizado se las puede encontrar en la web, en el Anexo B

se muestra la primera página de datasheet25 del GPS.

25 Datasheet: Documento de especificaciones técnicas de un dispositivo.

Page 55: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

44

Figura 5. 3 Fotografía del GPS NEO-6M

La Figura 5. 3 Fotografía del GPS NEO-6M muestra uno de los dos GPS con los que se desarrolló

el entorno de pruebas.

5.1.3. Módulo de batería Para la batería se usa una alimentación de tres celdas de marca TURNIGY de 1.3 mAh26. Cumple

con las características especificadas en cuando a la durabilidad, capacidad de recarga y está

hecha de iones de Litio.

5.1.4. Módulo de transmisión Para la transmisión de datos se usó los dispositivos XBee S2. Los cuales cumplen con las

características de bajo consumo de energía, configuración tipo clúster con coordinadores,

routers y dispositivos finales, sin embargo no cumple con la característica de alcance.

Se utilizan estos equipos puesto que como se trabaja en un entorno de pruebas la distancia con

la que se va a trabajar en los dispositivos no presenta un problema.

El esquema en el que se conectaron los dispositivos de pruebas se refleja en la Figura 5. 4

Esquema de conexión de XBee en las pruebas.

Figura 5. 4 Esquema de conexión de XBee en las pruebas

La Figura 5. 4 es una captura de pantalla cuando los dispositivos se encuentran conectados y

transmitiendo. La configuración la muestra de forma automática el programa de gestión propio

de los radios XBee. Dicho programa se llama XCTU. En el Anexo C se muestran dos capturas de

pantalla del gráfico usado. En el Anexo D se muestra la primera página del datasheet del

26 mAh: Medida de corriente mili amperios.

Page 56: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

45

dispositivo. De ser requerido también se incluye en este anexo la dirección web donde se

encuentra.

5.2. Procesamiento de datos Los datos que el dispositivo de trazabilidad envía a la estación coordinadora son manejados

para crear un archivo capaz de mostrar en un mapa la información recopilada. Entre los

elementos usados como parte del trabajo se encuentran los siguientes que se detallan

5.2.1. Diseño y elaboración de una carcasa Se diseña una carcasa para el entorno de pruebas, la finalidad de está carcasa es cumplir con las

especificaciones de resistencia y almacenamiento de los elementos mostrados en la Figura 5. 1.

Siguiendo la recomendación realizada en el presente TFM, se utilizó plástico como el material

del cual va a estar elaborado. Dado que deben ir todos los elementos protegidos se elabora con

varios puntos de sujeción. Comprende básicamente en una caja como se muestra en la Figura 5.

5.

Figura 5. 5 Fotografía superior de caja del TAG

En el Anexo E se muestran varias fotografías tomadas al TAG con los elementos. Como parte

de una proyección a futuro, el TAG tiene un espacio para una pantalla LED monocromática, la

cual puede servir para desplegar información necesaria.

5.2.2. Servicio web Como parte del TFM se define un servicio web que retorne una ruta entre dos puntos para que

sea tomada como referencia de la ruta que el personal debe seguir hasta alcanzar el destino. Se

utilizó la librería Directions de Mapbox.

Este servicio web proporciona una ruta entre 2 puntos, uno de origen y uno de destino. Se puede

escoger el medio de transporte a utilizar, la ruta retorna las direcciones que permiten llegar de

forma detallada.

Page 57: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

46

Figura 5. 6 Captura de pantalla de Directions de Mapbox para dos puntos utilizando bicicleta

Directions de Mapbox tiene planes de pago, sin embargo los gratuitos permiten realizar hasta

60 consultas por minuto, con lo cual es apto para ser utilizado sin incurrir en costos.

En el Anexo F se encuentra el código utilizado para el cálculo de las rutas.

5.2.3. Sistema de recepción y generación de archivo de ruta Se elabora un sistema en Microsoft Visual Studio para la lectura del puerto donde se encuentra

el dispositivo coordinador.

Figura 5. 7 Aplicación de lectura de datos enviados por los TAG

Page 58: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

47

Se puede ver como la aplicación recepta la información en el formato de la trama que se

especificó en el documento, se la separa en cada cuadro de texto para poder procesarla.

En el cuadro de la esquina inferior derecha se observa el objeto GeoJSON que se crea a partir de

la información enviada.

La aplicación genera una página HTML con la ruta que siguió un paquete en el proceso de

entrega.

Figura 5. 8 Mapa HTML generado a partir de los datos obtenidos de la aplicación.

La Figura 5. 8 permite ver el mapa creado por la aplicación. El Anexo G muestra el código

utilizado en la aplicación elaborada.

5.3. Recopilación de fallos

Page 59: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

48

5.3.1. Inicio del GPS El GPS NEO 6M con el que se trabajó presenta problemas de inicialización, pese a búsqueda de

una solución no se obtiene un resultado positivo. Cuando el GPS se encuentra en interiores

puede pasar un tiempo prolongado hasta que se encienda.

Se intentó cambiar la alimentación del dispositivo por una alimentación directa que cumpla con

el voltaje y corriente especificada en el datasheet que se muestra en el Anexo B sin embargo

tampoco se consigue solucionar.

El problema es el mismo en los dos dispositivos GPS con los que se cuenta, esto significó un

problema al momento de apagar y encender los dispositivos para generar un ahorro de energía.

Se intentó cambiar de dispositivos GPS, se probó con un GPS marca TOMTOM, pero la limitación

de información del dispositivo hizo que no sea factible continuar con esa línea de trabajo.

5.3.2. Programación del módulo de procesamiento La programación del Arduino uno tuvo algunos retos a superar, el primero fue la necesidad de

añadir librerías acorde a los elementos que se van a utilizar.

Las librerías ayudan a facilitar la comunicación con los dispositivos, sin embargo hay que buscar

una librería adecuada.

La programación de los módulos requiere que los pines 0 y 1 de la placa se encuentren

desconectados, en caso de mantenerse conectados, el programa Arduino no consigue crear

subir la programación al módulo.

5.3.3. Visualización de rutas Debido a que el entorno de pruebas es pequeño en cuanto al área en la que se pudo trabajar, el

dispositivo genera ubicaciones muy cercanas, esto complica la visualización de los mapas de las

rutas, pues no se puede reflejar claramente la ruta realizada.

Se prueba la aplicación ingresando rutas con un área de cobertura más extensa y se obtienen

los gráficos adecuados, con lo cual se evidencia que no hay problemas a nivel de la aplicación

generada.

5.3.4. Configuración de los puertos COM La configuración de los puertos tenía la tendencia de generar ciertos problemas, los cuales se

debían al uso de un conector múltiple de puertos USB.

El proceso de solución para este tipo de problemas era un proceso de re-instalación del conector

múltiple de puertos USB.

Page 60: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

49

Capítulo 6

Conclusiones El TFM deja varias conclusiones a partir de su elaboración:

Los transmisores de bajo consumo tienen un potencial muy amplio de aplicación para

sistemas que incluyan la georeferenciación. Pues dado su consumo no implica un coste

energético alto y se pueden adaptar fácilmente a otras plataformas de desarrollo.

La precisión de una aplicación dependerá de los resultados que se requieran para el

correcto funcionamiento, la precisión se debe estudiar como un parámetro de cálculo.

Las librerías de Arduino presentan una ayuda en la interpretación de la información que

vienen por parte de los dispositivos, sin las librerías la dimensión del trabajo se tornaría

más difícil de realizar.

La cantidad de dispositivos que pueden conectarse en una red utilizando los

transmisores de baja potencia en una de sus principales fortalezas al momento de

seleccionar una tecnología acorde a un sistema de una escala grande.

El coste de los dispositivos es un tema a tener que evaluarse pues, un sistema como el

que se propone, resulta costoso de forma unitaria.

La trazabilidad es una ruta de los eventos ocurridos y pese a que existe una ruta

planificada, la ruta que se genera simplemente es un reflejo de lo que el paquete realizo

en su proceso de recepción – entrega.

Existen en el mercado transmisores de baja potencia que tienen un mayor alcance, estos

transmisores se pueden conectar a una red de telefonía móvil para extender su alcance.

Existen varios servicios web que pueden dar solución a requerimientos específicos, sin

tener que incurrir en gastos.

Utilizar un servicio web como parte de la generación de rutas tiene la ventaja de que el

costo de procesamiento se lo transfiere al servicio web, esto implica un ahorro en

equipamiento computacional.

6.1. Mejoras futuras En el desarrollo de un proyecto siempre quedan cosas pendientes que se pueden hacer, siempre

con una visión de mejorar el trabajo propuesto.

Entre las mejoras que se pueden pensar para el proyecto está la utilización de dispositivos de

transmisión de baja potencia que tengan un alcance más amplio.

Otra mejora sustancial en cuanto al sistema, sería la integración de los sistemas en un único

sistema de gestión del proceso que se expone en el TFM.

En el entorno de pruebas se puede realizar las pruebas con una versión de Arduino más

compacta, pues eso significa un ahorro en el espacio que requiere el TAG.

6.2. Revisión del trabajo Con el trabajo expuesto se buscó diseñar e implementar una solución real que pueda servir

como una línea base de los elementos a considerar en el momento de dimensionar un sistema

de trazabilidad.

Queda pendiente un estudio más detallado de los servicios web, como una fuente de ahorro de

coste computacional en sistemas georeferenciados.

Page 61: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

50

Los entornos de pruebas realizados se los plantea con el objeto de poder evidenciar algunas de

las funcionalidades que se consideran de mayor importancia para el sistema. Deben tenerse en

cuenta las limitaciones que implica la cantidad de elementos necesarios para poder realizar

pruebas a una escala mayor.

Page 62: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

51

Bibliografía

Agencia Española de Seguridad Alimentaria y Nutrición. (2009). Guía para la aplicación del

sistema de trazabilidad en la empresa agroalimentaría. Agencia Española de Seguridad

Alimentaria y Nutrición. Madrid: Artes Gráficas Palermo, S.L.

ArduinoCC. (s.f.). Arduino. Recuperado el 2016 de junio de 19, de

https://www.Arduino.cc/en/Guide/Introduction

Certification, I. S. (2010). ISCC 203 Requirements for Traceability.

Ideaspropias Editorial. (2006). Trazabilidad avanzado. Guía práctica para la aplicación de un

sistema de trazabilidad en una empresa alimentaria. Vigo, España: Ideaspropias.

Recuperado el 21 de 06 de 2016, de

https://books.google.com.ec/books?id=gHCV8kW-

HbMC&pg=PA19&dq=trazabilidad&hl=es-

419&sa=X&ved=0ahUKEwi7oLSP_rjNAhXPsB4KHRXZD7AQ6AEIITAB#v=onepage&q=tra

zabilidad&f=false

Mehaffey, J. (26 de julio de 1999). http://www.elgps.com/. (A. Franco, Editor) Recuperado el

25 de 06 de 2016, de http://www.elgps.com/documentos/barras/barras.htm

Oyarce, A. (07 de 2010). www.hmangas.com. Recuperado el 13 de 06 de 2016, de

www.hmangas.com:

http://www.hmangas.com/Electronica/Datasheets/Shield%20XBee%20Arduino/XBee-

Guia_Usuario.pdf

Smith, P. (08 de 08 de 2011). Comparing Low-Power Wireless Technologies. Recuperado el 10

de 06 de 2016, de digikey.com:

http://www.digikey.com/en/articles/techzone/2011/aug/comparing-low-power-

wireless-technologies

Page 63: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

Anexo A Código embebido en el Módulo de procesamiento del TAG de pruebas que se muestra en la

Figura 5. 1.

#include <SoftwareSerial.h>

#include <TinyGPS.h>

TinyGPS gps;

SoftwareSerial ss(4, 3);

static void smartdelay(unsigned long ms);

static void print_float(float val, float invalid, int len, int prec);

static void print_int(unsigned long val, unsigned long invalid, int len);

static void print_date(TinyGPS &gps);

static void print_str(const char *str, int len);

void setup()

{

Serial.begin(9600);

Serial.println("Sistema de Georeferenciacion para Trazabilidad en la Entrega de Paquetes");

Serial.println("TFM Diego Freire");

Serial.println("Director: Joaquin Martinez Sanchez");

Serial.print("Libreria TinyGPS version: "); Serial.println(TinyGPS::library_version());

Serial.println("Dispositivo: GPS NEO-6M-0-001");

Serial.println();

Serial.println("Sats HDOP Latitude Longitude Fix Date Time Date Alt Course Speed

Card Distance Course Card Chars Sentences Checksum");

Serial.println(" (deg) (deg) Age (m) --- from GPS ---- ---- to London -

--- RX Fail");

Serial.println("------------------------------------------------------------------------------------------------------

-------------------------------");

ss.begin(9600);

}

Page 64: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

void loop()

{

float flat, flon;

unsigned long age, date, time, chars = 0;

unsigned short sentences = 0, failed = 0;

static const double LONDON_LAT = 51.508131, LONDON_LON = -0.128002;

print_str("GPS:",4);

print_int(gps.satellites(), TinyGPS::GPS_INVALID_SATELLITES, 5);

print_str("|",1);

print_int(gps.hdop(), TinyGPS::GPS_INVALID_HDOP, 5);

gps.f_get_position(&flat, &flon, &age);

print_str("|",1);

print_float(flat, TinyGPS::GPS_INVALID_F_ANGLE, 10, 6);

print_str("|",1);

print_float(flon, TinyGPS::GPS_INVALID_F_ANGLE, 11, 6);

print_str("|",1);

print_int(age, TinyGPS::GPS_INVALID_AGE, 5);

print_str("|",1);

print_date(gps);

print_str("|",1);

print_float(gps.f_altitude(), TinyGPS::GPS_INVALID_F_ALTITUDE, 7, 2);

print_str("|",1);

print_float(gps.f_course(), TinyGPS::GPS_INVALID_F_ANGLE, 7, 2);

print_str("|",1);

print_float(gps.f_speed_kmph(), TinyGPS::GPS_INVALID_F_SPEED, 6, 2);

print_str("|",1);

print_str(gps.f_course() == TinyGPS::GPS_INVALID_F_ANGLE ? "*** " :

TinyGPS::cardinal(gps.f_course()), 6);

print_str("|",1);

Page 65: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

print_int(flat == TinyGPS::GPS_INVALID_F_ANGLE ? 0xFFFFFFFF : (unsigned

long)TinyGPS::distance_between(flat, flon, LONDON_LAT, LONDON_LON) / 1000,

0xFFFFFFFF, 9);

print_str("|",1);

print_float(flat == TinyGPS::GPS_INVALID_F_ANGLE ? TinyGPS::GPS_INVALID_F_ANGLE :

TinyGPS::course_to(flat, flon, LONDON_LAT, LONDON_LON),

TinyGPS::GPS_INVALID_F_ANGLE, 7, 2);

print_str("|",1);

print_str(flat == TinyGPS::GPS_INVALID_F_ANGLE ? "*** " :

TinyGPS::cardinal(TinyGPS::course_to(flat, flon, LONDON_LAT, LONDON_LON)), 6);

print_str("|",1);

gps.stats(&chars, &sentences, &failed);

print_int(chars, 0xFFFFFFFF, 6);

print_str("|",1);

print_int(sentences, 0xFFFFFFFF, 10);

print_str("|",1);

print_int(failed, 0xFFFFFFFF, 9);

print_str("|ID:01|",7);

print_str(" END",4);

Serial.println();

smartdelay(10000);

}

static void smartdelay(unsigned long ms)

{

unsigned long start = millis();

do

{

while (ss.available())

gps.encode(ss.read());

Page 66: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

} while (millis() - start < ms);

}

static void print_float(float val, float invalid, int len, int prec)

{

if (val == invalid)

{

while (len-- > 1)

Serial.print('*');

Serial.print(' ');

}

else

{

Serial.print(val, prec);

int vi = abs((int)val);

int flen = prec + (val < 0.0 ? 2 : 1); // . and -

flen += vi >= 1000 ? 4 : vi >= 100 ? 3 : vi >= 10 ? 2 : 1;

for (int i=flen; i<len; ++i)

Serial.print(' ');

}

smartdelay(0);

}

static void print_int(unsigned long val, unsigned long invalid, int len)

{

char sz[32];

if (val == invalid)

strcpy(sz, "*******");

else

sprintf(sz, "%ld", val);

sz[len] = 0;

Page 67: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

for (int i=strlen(sz); i<len; ++i)

sz[i] = ' ';

if (len > 0)

sz[len-1] = ' ';

Serial.print(sz);

smartdelay(0);

}

static void print_date(TinyGPS &gps)

{

int year;

byte month, day, hour, minute, second, hundredths;

unsigned long age;

gps.crack_datetime(&year, &month, &day, &hour, &minute, &second, &hundredths,

&age);

if (age == TinyGPS::GPS_INVALID_AGE)

Serial.print("********** ******** ");

else

{

char sz[32];

sprintf(sz, "%02d/%02d/%02d %02d:%02d:%02d ",

month, day, year, hour, minute, second);

Serial.print(sz);

}

print_int(age, TinyGPS::GPS_INVALID_AGE, 5);

smartdelay(0);

}

static void print_str(const char *str, int len)

{

int slen = strlen(str);

Page 68: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

for (int i=0; i<len; ++i)

Serial.print(i<slen ? str[i] : ' ');

smartdelay(0);

}

Page 69: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

Anexo B Primera página del datasheet del GPS utilizado. Disponible en https://www.u-

blox.com/sites/default/files/products/documents/NEO-6_DataSheet_%28GPS.G6-HW-

09005%29.pdf?utm_source=en%2Fimages%2Fdownloads%2FProduct_Docs%2FNEO-

6_DataSheet_%28GPS.G6-HW-09005%29.pdf

Page 70: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

Anexo C Programa utilizado para configurar los radios XBee

Page 71: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

Anexo D Página inicial del datasheet del dispositivo XBee S2. Disponible en:

http://www.farnell.com/datasheets/27606.pdf

Page 72: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

Anexo E Caja con todos los elementos utilizados Disposición de la bateria

TAG con los elementos ubicados en posición Disposición interna

Proyección para pantalla LCD monocromática Conector para recargar batería

Page 73: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

Anexo F Archivo HTML para el cálculo de una ruta entre dos puntos, con capacidad de seleccionar entre

diferentes tipos de medio de transporte.

<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, height=device-height" /> <link rel="stylesheet" type="text/css" href="lib/onsen/css/onsenui.css" /> <link rel="stylesheet" type="text/css" href="lib/onsen/css/onsen-css-components.css" /> <link rel="stylesheet" type="text/css" href="css/index.css" /> <link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet-0.7.1/leaflet.css" /> <script src="http://cdn.leafletjs.com/leaflet-0.7.1/leaflet.js"></script> <script type="text/javascript" src='js/turf.min.js'></script> <link href='https://www.mapbox.com/base/latest/base.css' rel='stylesheet' /> <script src='https://api.mapbox.com/mapbox.js/v2.4.0/mapbox.js'></script> <link href='https://api.mapbox.com/mapbox.js/v2.4.0/mapbox.css' rel='stylesheet' /> <script src='https://api.mapbox.com/mapbox.js/plugins/mapbox-directions.js/v0.4.0/mapbox.directions.js'></script> <link rel='stylesheet' href='https://api.mapbox.com/mapbox.js/plugins/mapbox-directions.js/v0.4.0/mapbox.directions.css' type='text/css' /> <title>Prueba Interfaz Usuario</title> </head> <body onLoad="inicio();"> <ons-page> <ons-modal id="modConexion" var="modal"> <div id="divModal" style="height:100%; width:100%;"> <br><br><br><br><br> <center>No se encuentra conectado!!</center> <br><br> </div> </div> </ons-modal> <ons-toolbar modifier='material'> <div class="center" ><i class="ion-android-walk"></i> Calculo de Ruta </div> </ons-toolbar> <ons-tabbar> <ons-tab page="home.html" active="true"> <ons-icon icon="ion-map" size="30px"></ons-icon> <span id="btnPrincipal" style="font-size: 14px">Principal</span> </ons-tab> <ons-tab page="fav.html"> <ons-icon icon="ion-android-bicycle" size="30px"></ons-icon> <span style="font-size: 14px">Rutas</span>

Page 74: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

</ons-tab> <ons-tab page="Interes.html"> <ons-icon icon="ion-ios-game-controller-b-outline" size="30px"></ons-icon> <span style="font-size: 14px">Cool</span> </ons-tab> </ons-tabbar> <ons-template id="home.html"> <div id="map"> <div id="map" style="position:absolute; z-index:1000;"> <fieldset class='with-icon'> A:<span class='icon search'></span> <input id="txtA" type='text' value='' /> </fieldset> <fieldset class='with-icon'> B:<span class='icon search'></span> <input id="txtB" type='text' value='' /> </fieldset> <center><div id="footer"> <div id="modalidad" class='rounded-toggle inline'> <input id='auto' type='radio' name='rtoggle' value='auto' checked='checked'> <label for='auto'>Auto</label> <input id='caminar' type='radio' name='rtoggle' value='caminar'> <label for='caminar'>Caminar</label> <input id='bici' type='radio' name='rtoggle' value='bici'> <label for='bici'>Bici</label> </div> </div></center> <ons-speed-dial id="speed" position="bottom right" direction="up"> <ons-fab> <ons-icon icon="ion-plus-round" size="26px" fixed-width="false" style="vertical-align:middle;"> </ons-icon> </ons-fab> <ons-speed-dial-item><ons-icon id="undo" icon="ion-reply"></ons-icon></ons-speed-dial-item> <ons-speed-dial-item><ons-icon id="car" icon="ion-model-s"></ons-icon></ons-speed-dial-item> <ons-speed-dial-item><ons-icon id="bike" icon="ion-android-bicycle"></ons-icon></ons-speed-dial-item> <ons-speed-dial-item><ons-icon id="walk" icon="ion-android-walk"></ons-icon></ons-speed-dial-item> <ons-speed-dial-item><ons-icon id="save" icon="ion-map"></ons-icon></ons-speed-dial-item> </ons-speed-dial>

Page 75: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

</div> <div id="consola"> </div> </div> <div id='inputs'></div> <div id='errors'></div> <ons-modal id="modCalculo" var="modal"> <div id="divModal" style="height:100%; width:100%;"> <br><br><br><br><br> <center>Calculando Ruta!!</center> <br><br> </div> </div> </ons-modal> </ons-template> <ons-template id="Interes.html"> <div id='archivos'> <ons-button modifier="large" ripple="true" id="grabarBt"><a id="btn">iniciar</a></ons-button> </div> <ons-modal id="modRuta" var="modal"> <div id="divModal" style="height:100%; width:100%;"> <div style="position:absolute; z-index:1000;"><center><div id="footer"> <ons-button id='btnModal' onclick='hideModal();' modifier='cta'> <h8 id="txtRuta">OK</h8> </ons-button></div></center></div> </div> </ons-modal> </ons-template> <ons-template id="fav.html"> <div id="rutas"> <div id='directions'> <div id='routes'></div> <div id='instructions'></div> </div> </div> </ons-template> </ons-page> <script type="text/javascript" src="cordova.js"></script> <script type="text/javascript" src="lib/onsen/js/onsenui.min.js"></script>

Page 76: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

<script type="text/javascript" src="js/index.js"></script> </body> </html>

Archivo JS para cálculo de rutas entre dos puntos.

function inicio(){ document.addEventListener('deviceready', this.onDeviceReady, false); } function iden(nombre){ return document.getElementById(nombre); } var map = L.map(); var count=0; var waypoints = []; var polyline = L.polyline([]); function makeMarker(e, done) { var marker = L.marker(e.latlng, { draggable: true }).addTo(map); marker.on('dragend', drawRoute); waypoints.push(marker); return done(); } function conexion(){ var conexionType=checkConnection(); if(conexionType=='No tiene conexion'){ iden("modConexion").show(); } else{ iden("modConexion").hide(); } //console.log('Red: ' + conexionType); } function checkConnection() { var networkState = navigator.connection.type; var states = {}; states[Connection.UNKNOWN] = 'Unknown conexión'; states[Connection.ETHERNET] = 'Ethernet conexión'; states[Connection.WIFI] = 'WiFi conexión'; states[Connection.CELL_2G] = 'Cell 2G conexión'; states[Connection.CELL_3G] = 'Cell 3G conexión'; states[Connection.CELL_4G] = 'Cell 4G conexión';

Page 77: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

states[Connection.CELL] = 'Cell generic conexión'; states[Connection.NONE] = 'No tiene conexion'; return states[networkState]; } function onDeviceReady(){ L.mapbox.accessToken = 'pk.eyJ1IjoibWF1cml0b2ZyZWQiLCJhIjoiY2ltMXUzMTg0MDk1bXZna3M1cjk1NXR5NiJ9.EOFVgaEF69NbQ4z7_q1zdQ'; L_DISABLE_3D = true; map = L.mapbox.map('map', 'mapbox.streets',{zoomControl:false}) .setView([37.9, -77], 6); centrarMapa(); iden("undo").addEventListener("click",undoBtn); iden("car").addEventListener("click",carBtn); iden("bike").addEventListener("click",bikeBtn); iden("walk").addEventListener("click",walkBtn); iden("save").addEventListener("click",saveBtn); waypoints = []; polyline = L.polyline([]).addTo(map); ocultar(); map.on('clic', function(e) { // Let's add a callback to makeMarker so that it can draw the route only // *after* it's done processing the marker adding. makeMarker(e, drawRoute); }); var intervalo=setInterval(conexion,10000); count=0; //map.on("click",addMarker); /* var directions = L.mapbox.directions(); var directionsLayer = L.mapbox.directions.layer(directions) .addTo(map); var directionsInputControl = L.mapbox.directions.inputControl('inputs', directions) .addTo(map); var directionsErrorsControl = L.mapbox.directions.errorsControl('errors', directions) .addTo(map); var directionsRoutesControl = L.mapbox.directions.routesControl('routes', directions) .addTo(map); var directionsInstructionsControl = L.mapbox.directions.instructionsControl('instructions', directions) .addTo(map); */ //console.log("funcion onDeviceReady");

Page 78: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

map.attributionControl.setPosition('bottomleft'); map.removeControl(map.attributionControl); iden("speed").style.display = "none"; iden("modalidad").style.display = "none"; añadirJson(); } function undoBtn(){ map.removeLayer(polyline); for (i=0;i<waypoints.length;i++) { map.removeLayer(waypoints[i]); } map.on('clic', function(e) { // Let's add a callback to makeMarker so that it can draw the route only // *after* it's done processing the marker adding. makeMarker(e, drawRoute); }); waypoints = []; polyline = L.polyline([]).addTo(map); iden("speed").hideItems(); iden("speed").style.display = "none"; iden("modalidad").style.display = "none"; iden("txtA").value=""; iden("txtB").value=""; //console.log("funcion undo") } function carBtn(){ drawRoute(); iden("speed").hideItems(); //console.log("funcion car"); } function bikeBtn(){ drawRouteByc(); iden("speed").hideItems(); //console.log("funcion bike") } function walkBtn(){ drawRouteWalk(); iden("speed").hideItems(); //console.log("funcion walk"); } function saveBtn(){ escribir(); iden("speed").hideItems(); //console.log("funcion save"); } function centrarMapa(){ var opciones={ maximumAge: 0, timeout: 10000, enableHighAccuracy: true }; navigator.geolocation.getCurrentPosition(irCentro, onError, opciones);

Page 79: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

} function irCentro(position){ var latlng = L.latLng(position.coords.latitude, position.coords.longitude); //console.log(latlng); map.setView(latlng, 18); } function onError(){ alert("algo salio mal!!"); } var MarkerA=""; var MarkerB=""; var latlngA=""; var latlngB=""; function addMarker(e){ //console.log(count); // Add marker to map at clic location; add popup window switch(count){ case 0: count++; markerA=new L.marker(e.latlng).addTo(map); latlngA=e.latlng; //console.log(latlngA); break; case 1: count++; markerB=new L.marker(e.latlng).addTo(map); latlngB=e.latlng; //console.log(latlngA); direccion(latlngA,latlngB); mostrar(); break; case 2: direccion(latlngA,latlngB); break; default: alert("No se pueden agregar mas destinos"); } } function ocultar(){ iden("speed").style.display="none"; //console.log("funcion ocultar"); } function mostrar(){ iden("speed").style.display="inline"; //console.log("funcion mostrar"); } function direccion(latlngA,latlngB){ //console.log(latlngA,latlngB); //console.log("funcion direccion");

Page 80: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

} function url(){ var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (xhttp.readyState == 4 && xhttp.status == 200) { respuesta = xhttp.responseText; } }; xhttp.open("GET", "https://api.mapbox.com/directions/v5/mapbox/driving/13.4301,52.5109;13.4265,52.5080;13.4194,52.5072?radiuses=40;;100&geometries=polyline&access_token=pk.eyJ1IjoibWF1cml0b2ZyZWQiLCJhIjoiY2ltMXUzMTg0MDk1bXZna3M1cjk1NXR5NiJ9.EOFVgaEF69NbQ4z7_q1zdQ", true); xhttp.send(); } function drawRoute() { if (waypoints.length < 2) return; // Directions API request looks like // http://api.tiles.mapbox.com/v4/directions/mapbox.driving/ // -122.42,37.78;-77.03,38.91.json?access_token={access_token} // We'll construct this using latlngs from the markers in waypoints. var points = waypoints.map(function(marker) { var latlng = marker._latlng; return [latlng.lng, latlng.lat].join(','); }).join(';'); var directionsUrl = 'http://api.tiles.mapbox.com/v4/directions/mapbox.driving/' + points + '.json?access_token=' + L.mapbox.accessToken; var route=""; var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (xhttp.readyState == 4 && xhttp.status == 200) { iden("modCalculo").hide(); respuesta = xhttp.responseText; route = JSON.parse(respuesta).routes[0].geometry.coordinates; route = route.map(function(point) { // Turns out if we zoom out we see that the lat/lngs are flipped, // which is why it didn't look like they were being added to the // map. We can invert them here before drawing. var datos=JSON.parse(respuesta); iden("txtA").value=JSON.parse(respuesta).origin.properties.name; iden("txtB").value=JSON.parse(respuesta).destination.properties.name; iden("speed").style.display = "inline"; iden("modalidad").style.display = "inline"; iden("auto").checked="checked"; map.off("clic"); instrucciones(datos); return [point[1], point[0]]; }); polyline.setLatLngs(route); try{map.fitBounds(polyline.getBounds());} catch(e){console.log(e)} } else{

Page 81: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

iden("modCalculo").show(); } }; xhttp.open("GET", directionsUrl, true); xhttp.send(); } function drawRouteWalk() { if (waypoints.length < 2) return; // Directions API request looks like // http://api.tiles.mapbox.com/v4/directions/mapbox.driving/ // -122.42,37.78;-77.03,38.91.json?access_token={access_token} // We'll construct this using latlngs from the markers in waypoints. var points = waypoints.map(function(marker) { var latlng = marker._latlng; return [latlng.lng, latlng.lat].join(','); }).join(';'); var directionsUrl = 'http://api.tiles.mapbox.com/v4/directions/mapbox.walking/' + points + '.json?access_token=' + L.mapbox.accessToken; var route=""; var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (xhttp.readyState == 4 && xhttp.status == 200) { iden("modCalculo").hide(); respuesta = xhttp.responseText; route = JSON.parse(respuesta).routes[0].geometry.coordinates; route = route.map(function(point) { // Turns out if we zoom out we see that the lat/lngs are flipped, // which is why it didn't look like they were being added to the // map. We can invert them here before drawing. var datos=JSON.parse(respuesta); iden("txtA").value=JSON.parse(respuesta).origin.properties.name; iden("txtB").value=JSON.parse(respuesta).destination.properties.name; iden("speed").style.display = "inline"; iden("modalidad").style.display = "inline"; iden("caminar").checked="checked"; map.off("click"); instrucciones(datos); return [point[1], point[0]]; }); polyline.setLatLngs(route); try{map.fitBounds(polyline.getBounds());} catch(e){console.log(e)} } else{ iden("modCalculo").show(); } }; xhttp.open("GET", directionsUrl, true); xhttp.send(); } function drawRouteByc() { if (waypoints.length < 2) return; // Directions API request looks like // http://api.tiles.mapbox.com/v4/directions/mapbox.driving/ // -122.42,37.78;-77.03,38.91.json?access_token={access_token}

Page 82: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

// We'll construct this using latlngs from the markers in waypoints. var points = waypoints.map(function(marker) { var latlng = marker._latlng; return [latlng.lng, latlng.lat].join(','); }).join(';'); var directionsUrl = 'http://api.tiles.mapbox.com/v4/directions/mapbox.cycling/' + points + '.json?access_token=' + L.mapbox.accessToken; var route=""; var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (xhttp.readyState == 4 && xhttp.status == 200) { iden("modCalculo").hide(); respuesta = xhttp.responseText; route = JSON.parse(respuesta).routes[0].geometry.coordinates; route = route.map(function(point) { // Turns out if we zoom out we see that the lat/lngs are flipped, // which is why it didn't look like they were being added to the // map. We can invert them here before drawing. var datos=JSON.parse(respuesta); iden("txtA").value=JSON.parse(respuesta).origin.properties.name; iden("txtB").value=JSON.parse(respuesta).destination.properties.name; iden("speed").style.display = "inline"; iden("modalidad").style.display = "inline"; iden("bici").checked="checked"; map.off("click"); instrucciones(datos); return [point[1], point[0]]; }); polyline.setLatLngs(route); try{map.fitBounds(polyline.getBounds());} catch(e){console.log(e)} } else{ iden("modCalculo").show(); } }; xhttp.open("GET", directionsUrl, true); xhttp.send(); } function crearItem(item,nombre){ //console.log("CrearItem"); itemRuta = document.createElement("ons-list-item"); itemRuta.setAttribute('modifier','tappable chevron'); gd = ons.GestureDetector(itemRuta); gd.on('click', mostrarRuta); itemRuta.innerHTML = item+") "+nombre; itemRuta.id= item; //console.log(item); itemRuta.modifier="tappable"; itemRuta.className="list__item list__item--tappable" padre = document.getElementById('routes'); primerhijo= padre.lastChild;

Page 83: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

if(primerhijo==null) padre.appendChild(itemRuta); else padre.insertBefore(itemRuta,primerhijo.nextSibling) } function instrucciones(respuestas){ var contador=0; var elementos=iden("routes"); while(elementos.lastChild){ elementos.removeChild(elementos.lastChild); } var tiempo=respuestas.routes[0].duration/60; var tiempoDecimal=tiempo.toFixed(2); crearItem("(Distancia",respuestas.routes[0].distance+" m"); crearItem("(Duración",tiempoDecimal+" minutos"); respuestas.routes[0].steps.forEach( function(x){ contador++; crearItem(contador,x.way_name); //console.log(x.way_name); } ); } function mostrarRuta(){} function mostrarRutaJson(){ //console.log("mostrarRutaJson"); var nombre=this.innerHTML.split(" "); obtenerEntry(nombre[1]); } var dibujar=new Object(); function obtenerEntry(nombre){ //console.log("funcion obtenerEntry"); window.resolveLocalFileSystemURL(cordova.file.externalDataDirectory, function(directorio){ directorio.getFile(nombre, {create: false, exclusive: true}, function(fileEntry){ fileEntry.file(function(file){ var reader = new FileReader(); reader.onloadend = function(e) { dibujar=JSON.parse(this.result); //console.log(dibujar); showModal(dibujar); }; reader.readAsText(file); } , function(e){alert(e);}); } , function(e){alert(e);}); }, function(){alert("error")}); }

Page 84: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

function showModal(archivoJSON){ document.getElementById("modRuta").show(); mapa = L.map('modRuta').setView([52.04, -0.73], 12); L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { maxZoom: 18 }).addTo(mapa); var latlng = L.latLng([dibujar.routes[0].geometry.coordinates[0][1],dibujar.routes[0].geometry.coordinates[0][0]]); mapa.setView(latlng, 15); L.geoJson(dibujar.routes[0].geometry).addTo(mapa); /* tobounds=L.polyline(dibujar.routes[0].geometry); boundss=tobounds.getBounds(); mapa.fitBounds(boundss); var datosProperties=dibujar.properties; var markerInicio = L.marker(new L.LatLng(dibujar.routes[0].geometry.coordinates[0][1],dibujar.routes[0].geometry.coordinates[0][0])).addTo(mapa); var txtPop="<b>Inicio:<b> "+datosProperties.inicio.split(",")[0]+"<br><b>Fin:<b> "+datosProperties.fin.split(",")[0]+" <br><b>Fecha: <b>"+ datosProperties.fecha.split(",")[0]+" <br><b>Distancia:<b> "+datosProperties.distancia+"Km"; markerInicio.bindPopup("<b>Ruta seguida: </b><br>"+txtPop).openPopup(); console.log("funcion showModal");*/ } function hideModal(){ //console.log("funcion hideModal"); mapa.remove(); document.getElementById("modRuta").hide(); } function añadirJson(){ //console.log("funcion añadirJson"); window.resolveLocalFileSystemURL(cordova.file.externalDataDirectory, deboAñadir,function(){alert("escribir");}); } function deboAñadir(directorio) { //console.log("funcion deboAñadir"); var lista =document.getElementById('archivos'); while (lista.lastChild) { lista.removeChild(lista.lastChild) } var numeroArchivo=1; var nombreArchivo="Rutas_1.json"; directorio.createReader().readEntries(function(entries) { entradas=entries; //console.log(entries); entries.forEach(function(x){

Page 85: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

if(x.name.includes("Rutas_")){ crearArchivo(numeroArchivo,x.name); //console.log("item: "+x.name+" creado!!"); numeroArchivo++; }}) }) } function crearArchivo(item,nombre){ //console.log("CrearItem"); itemRuta = document.createElement("ons-list-item"); itemRuta.setAttribute('modifier','tappable chevron'); gd = ons.GestureDetector(itemRuta); gd.on('click', mostrarRutaJson); itemRuta.innerHTML = item+") "+nombre; itemRuta.id= item; itemRuta.modifier="tappable"; itemRuta.className="list__item list__item--tappable" padre = document.getElementById('archivos'); primerhijo= padre.lastChild; if(primerhijo==null) padre.appendChild(itemRuta); else padre.insertBefore(itemRuta,primerhijo.nextSibling) } function escribir(){ //console.log("funcion escribir"); window.resolveLocalFileSystemURL(cordova.file.externalDataDirectory, deboEscribir,function(){alert("escribir");}); } var entradas=""; function deboEscribir(directorio) { //console.log("funcion deboEscribir"); var numeroArchivo=1; var nombreArchivo="Rutas_1.json"; directorio.createReader().readEntries(function(entries) { entradas=entries; //console.log(entries); entries.forEach(function(x){ if(x.name.includes("Rutas_")){ numeroArchivo=numeroArchivo+1; nombreArchivo='Rutas_'+numeroArchivo+'.json'; //console.log(nombreArchivo); }}) directorio.getFile(nombreArchivo, {create: true}, escribirFile, function(e){alert("everything is on fire");});

Page 86: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

//console.log('Rutas_'+numeroArchivo+'.json'); }) } function escribirFile(fileEntry){ //console.log("funcion escribirFIle"); fileEntry.createWriter(funcionEscribir); } var count=0; function funcionEscribir(fileWriter) { //console.log("funcion Escribir"); count++; fileWriter.onwriteend = function(e) { añadirJson(); //console.log("Termine de escribir"); } fileWriter.onerror=function(e){ alert("Ha ocurrido un error de escritura!!") } var blob = new Blob([respuesta], {type: 'text/plain'}); fileWriter.write(blob); //console.log("escribirFuncion"); }

Page 87: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

Anexo G Código utilizado para la creación de la aplicación de lectura de datos

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO; using System.IO.Ports; using Newtonsoft.Json; using GeoJSON.Net; using TOMTOM_APP_GPS.logica; namespace TOMTOM_APP_GPS { public partial class Form1 : Form { geoJsonR ggr = new geoJsonR(); public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { listar_com(); } private void listar_com() { foreach (string ss in SerialPort.GetPortNames()) { comboBox1.Items.Add(ss); } } private void button1_Click(object sender, EventArgs e) { try { serialPort1.DataBits = int.Parse(textBox2.Text); serialPort1.BaudRate = int.Parse(textBox1.Text); serialPort1.PortName = comboBox1.SelectedItem.ToString(); serialPort1.Open(); timer1.Enabled = true; } catch(Exception ex) { MessageBox.Show("No se puede abrir el puerto" + ex.Message); } } private void llenar_datos() { if (!richTextBox1.Text.Equals("") && richTextBox1.Text.Contains("GPS:") && richTextBox1.Text.Contains("END") && richTextBox1.Text.Substring(0,3).Contains("GPS")) { string[] aux2 = richTextBox1.Text.Split('|'); txt_sat.Text = aux2[0].Replace("GPS:",""); txt_dop.Text = aux2[1];

Page 88: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

txt_lat.Text = aux2[2]; txt_lon.Text = aux2[3]; txt_fix.Text = aux2[4]; txt_time.Text = aux2[5]; txt_alt.Text = aux2[6]; txt_velocidad.Text = aux2[7]; txt_id.Text = aux2[16]; tojson(); tojson2(); } else { } } private string tojson2() { try { List<double> aux = new List<double>(); aux.Add(double.Parse(txt_lon.Text.Replace(".", ","))); aux.Add(double.Parse(txt_lat.Text.Replace(".", ","))); ggr.geometry.coordinates.Add(aux); } catch { } return ""; } private string tojson() { try { geoJson gg = new geoJson(); gg.type = "Feature"; gg.geometry.type = "Point"; gg.geometry.coordinates.Add(double.Parse(txt_lat.Text.Replace(".", ","))); gg.geometry.coordinates.Add(double.Parse(txt_lon.Text.Replace(".", ","))); gg.properties.name = txt_id.Text; string resultado = JsonConvert.SerializeObject(gg); richTextBox2.Text = resultado; } catch { } return ""; } private void timer1_Tick(object sender, EventArgs e) { richTextBox1.Text = serialPort1.ReadExisting(); llenar_datos(); } private void Form1_FormClosed(object sender, FormClosedEventArgs e) { try { serialPort1.Close(); } catch {

Page 89: SISTEMA DE GEOREFERENCIACIÓN PARA TRAZABILIDAD EN LA ... · Sistema de Georeferenciación para Trazabilidad en la Entrega de Paquetes Máster en Geoinformática por Diego Mauricio

} } private void saveFile() { if (File.Exists(txt_file.Text + "\\file.json")) { File.Delete(txt_file.Text + "\\file.json"); } using (StreamWriter sw = File.AppendText(txt_file.Text+ "\\file.json")) { List<double> aux = ggr.geometry.coordinates.Last(); sw.WriteLine("<!DOCTYPE html><html><head> <meta charset='utf-8' /> <title></title> <meta name='viewport' content='initial-scale=1,maximum-scale=1,user-scalable=no' /> <script src='https://api.tiles.mapbox.com/mapbox-gl-js/v0.20.1/mapbox-gl.js'></script> <link href='https://api.tiles.mapbox.com/mapbox-gl-js/v0.20.1/mapbox-gl.css' rel='stylesheet' /> <style> body { margin:0; padding:0; } #map { position:absolute; top:0; bottom:0; width:100%; } </style></head><body><div id='map'></div><script>mapboxgl.accessToken = 'pk.eyJ1IjoibWF1cml0b2ZyZWQiLCJhIjoiY2ltMXUzMTg0MDk1bXZna3M1cjk1NXR5NiJ9.EOFVgaEF69NbQ4z7_q1zdQ';var map = new mapboxgl.Map({ container: 'map', style: 'mapbox://styles/mapbox/streets-v9', center: "); sw.WriteLine(JsonConvert.SerializeObject(ggr)); } } private void button2_Click(object sender, EventArgs e) { try { serialPort1.Close(); timer1.Enabled = false; saveFile(); } catch { } } private void groupBox1_Enter(object sender, EventArgs e) { } private void button3_Click(object sender, EventArgs e) { if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) { txt_file.Text = folderBrowserDialog1.SelectedPath; } } } }