Tesisi900 Gps
Tesisi900 Gps
Tesisi900 Gps
AUTORES
2019
FACULTAD DE INGENIERÍA Y CIENCIAS APLICADAS
Profesor Guía
Dra. Orozco Garzón Nathaly Verónica
Autores
Jordy Javier Ruiz Sánchez
Juan Andrés Tello Guerra
2019
DECLARACION PROFESOR GUÍA
_____________________________
Nathaly Verónica Orozco Garzón
Doctora En Ingeniería Eléctrica En El Área De Telecomunicaciones Y
Telemática
CI. 1720938586
DECLARACION PROFESOR CORRECTOR
_____________________________
Henry Ramiro Carvajal Mora
Doctor En Ingeniería Eléctrica En El Área De Telecomunicaciones Y
Telemática
CI: 1721327862
DECLARACION DE AUDITORIA DE LOS ESTUDIANTES
“Declaramos que este trabajo es original, de nuestra autoría, que se han citado
las fuentes correspondientes y que en su ejecución se respetaron las
disposiciones legales que protegen los derechos de autor vigentes.”
_____________________________ _____________________________
Jordy Javier Ruiz Sánchez Juan Andrés Tello Guerra
CI: 1726459827 CI:1718744616
AGRADECIMIENTOS
Andrés T.
DEDICATORIA
Jordy R.
DEDICATORIA
Andrés T.
RESUMEN
1. CAPÍTULO I. INTRODUCCIÓN
2.1 Antecedentes
Además, como objetivo estratégico del año 2018, la SM-DMQ decidió definir
acciones emergentes en el DMQ para mejorar los problemas de movilidad y la
creciente problemática del mismo mediante la modernización del sistema de
transporte urbano con la innovación de estos mediante el uso de TICS en la
gestión y control, mediante su entidad adscrita la Empresa Pública
Metropolitana de Transporte de Pasajeros de Quito (EPMTP) (SM-DMQ, 2018).
5
(Ecuación 1)
Tabla 1.
N 34 8,00
Tabla 2.
Fortalezas –
2,9 3,3 2,7 3,1 2,6 2,6 3,4 3,5
Oportunidades
Fortalezas –Amenazas 3,2 3,5 3,3 3,1 3,0 2,7 4,1 3,3
Debilidades -
3,6 3,0 3,1 2,2 3,0 2,7 4,0 3,4
Oportunidades
Debilidades - Amenazas 3,6 3,2 2,5 2,5 3,0 2,2 3,6 3,2
ANALISIS
13,2 13,0 11,7 10,9 11,6 10,1 15,1 13,4
CUANTITATIVO FODA
Entre las rutas que cubre la compañía libertadores del Valle incluye la ruta
Dean Bajo - Conocoto - Armenia – Girón. Esta ruta se integra con la terminal
Intracantonal Marín.
Tabla 3.
Intervalos Intervalos
Días Recorrido Horarios medidos en medidos en
minutos minutos
Salidas de la Salidas de la
Lunes - Periodos Periodos
terminal terminal Dean
Viernes desde: hasta:
Dean Bajo - Girón Bajo
Camal de
5:00 22:30 0:10 0:10
Conocoto -
Armenia -
Sábados -
Girón 6:00 21:00 0:10 0:10
Domingos
a)
17
b)
La puerta de enlace (GTW) sirve como interfaz entre la red inalámbrica y la red
externa.
Por lo tanto, una red inalámbrica puede dividirse en una Red de Acceso
Radioeléctrico (RAN) y una Red Central (CN). En particular, el RAN
implementa funciones relacionadas con el acceso radioeléctrico a la red,
mientras que el CN implementa funciones relacionadas con el enrutamiento y la
conmutación. El RAN comprende el BSC, la BTS, la MT y las funcionalidades
de control de los MS. El CN comprende el MSC, HLR, VRL, GTW y otros
dispositivos que implementan las funciones de conmutación y enrutamiento.
Tabla 4.
Bandas GSM.
Ancho de
Canal Canal de Máximo número
Sistema Banda del
subida bajada de canales
canal
El GSM utiliza dos tipos de canales: canales físicos y canales lógicos. Los
canales físicos constituyen el medio físico a través del cual fluye la información.
2.3.9.1 GPRS
A mediados de los años ochenta, las llamadas de voz eran el servicio más
importante en las redes fijas e inalámbricas. Esta es la razón por la que GSM
fue inicialmente diseñado y optimizado para la transmisión de voz. Sin
embargo, desde mediados de la década de 1990, la importancia de Internet ha
ido en constante aumento. GPRS, el servicio general de radiocomunicaciones
por paquetes mejoró la norma GSM para transportar datos de forma eficiente y
permitió a los dispositivos inalámbricos acceso a Internet. Con tasas de Datos
29
una conexión lógica de extremo a extremo, cada paquete tiene que contener un
encabezado. La cabecera, por ejemplo, contiene información sobre el remitente
(dirección de origen) y el receptor (dirección de destino) del paquete. Esta
información se utiliza en la red para enrutar los paquetes a través de los
diferentes elementos de la red. En Internet, por ejemplo, las direcciones de
origen y de destino son las direcciones de protocolo de Internet (IP) de los
usuarios emisor y receptor. (Sauter, 2017)
2.3.9.2 EDGE
El proceso inicia con que el prototipo, el cual cuenta con un módulo Arduino
programado para recibir datos desde el módulo de GPS y GPRS. Posterior,
mediante el módulo GPRS obtener una dirección pública IP por el cual se
podrá transmitir los datos de ubicación los cuales se almacenarán en el
servidor web.
El tercer paso del proceso es el que interviene el dispositivo móvil el cual tiene
acceso a internet para realizar consultas de los datos del dispositivo dando la
ubicación precisa para conocer la distancia y el recorrido del mismo.
34
GPS
Ubicación del
vehículo
N
G
D
A
R
8
09
F~
~1
~1
1
3
1
2
1
E
Sentencias de GPRS
programación Asignación IP
nA
A
A
FTA
A
A
O
EN
N
SG
G
1
0
2
3
4
5
D
iD
V
V
V
IR
.R
3
5
3
E
E
Punto de acceso
Red celular
Prototipo
Transmisión
de Datos
Sentencias de
Aplicación Web
Base de Datos
programación
MySQL
Adminsitrador Autenticación
WEB Usuario
Contraseña
Sentencias de
Aplicación ANDROID
programación
3.1 Sensores
Para definir el uso del módulo GPS es necesario realizar un análisis en base a
la herramienta FODA donde se indica características de los módulos GPS que
35
1.
2.
3.
4.
5.
Tabla 5.
Tabla 6.
3.2 Módulos
3.2.1 Arduino
Tabla 7.
Ubicación
Fecha
Velocidad
Curso
41
Altitud
Satélites
850 MHz
900 MHz
1800 MHz
1900 MHz
3.3 Software
El SDK compilará la aplicación con todos los recursos y ficheros en una sola
aplicación ejecutable .apk. Así se podrá instalar y ejecutar la aplicación en
cualquier dispositivo Android.
Esta herramienta que forma parte de la librería de Google Play Services es una
librería que ofrece Google para los desarrolladores; esta librería facilita el
desarrollo de aplicaciones y permite mostrar la ubicación de un dispositivo en
un mapa a través de marcadores o puntos permitiendo una interacción con el
dispositivo cuando se mueve en el mapa, además estas API’s permiten la
generación de polilíneas, estas consisten en una serie de segmentos
conectados por vértices creada por dos puntos en un mapa en donde se indica
la ruta establecida.
3.3.2 MySQL
Base de Web
Punto de
N
G
D
A
R
7
6
4
5
2
3
~
~
8
9
~
~
1
1
3
1
2
1
1
0
~
~
E
R
T
X
X
1
0
F
acceso |
Red Wifi
TA
A
nA
A
A
A
O
N
N
0
1
2
3
4
5
G
G
iD
D
V
V
V
IR
R
3
.5
3
E
E
E
S
F
Punto de
acceso Prototipo
Internet
Red celular
Dispositivo Aplicación
móvil web
Punto de
acceso
Red celular
Ciudadano Administrador
Fase 4, en esta fase el módulo SIM 900 hará uso de la red GPRS, donde el
proveedor de la red celular asigna una IP pública, la cual permite la
comunicación con el servidor web y base de datos.
INICIO
Iniciar Sesión
Cargar rutas
Salir
establecidas
Cargar Mapa
Obtener longitud y
Obtener ubicación
latitud de prototipo
GPS del celular
desde ws
Obtener longitud y
Posicionar celular en Posicionar prototipo
latitud de prototipo
el mapa en el mapa
desde ws cada 5 s
Generar línea de guía
entre dispositivo
móvil y prototipo
Mostrar mensaje de
tiempo y distancia
FIN
Iniciar Sesión, en este proceso estará disponible una plantilla para el ingreso
de credenciales que permiten el acceso a la aplicación móvil, se valida con los
siguientes pasos:
Cargar mapas, una vez escogida la ruta, la aplicación móvil cargará el mapa
de Google, valida con los siguientes pasos:
Posicionar celular en el mapa, en este proceso una vez que se cuenta con la
ubicación del dispositivo, este tiene que ser ubicado en latitud y longitud sobre
el mapa; esto se realiza mediante comandos Marker.
INICIO
Acceder a la página
web
Usuario
NO Registrar usuario
registrado?
SI
Iniciar sesión
SI
Ingresar en los
SI
campos de consulta
Otra consulta
NO
Salir
FIN
a)
57
b)
Figura 26. Pines empleados el Arduino Nano para conexión con los dispositivos
de entrada y salida de la información.
Para una mejor explicación de las funciones que cada puerto cumple en el
Arduino Nano, a continuación, se detalla el funcionamiento del circuito de
procesamiento e instrucción entre su conectividad y funcionamiento:
Para una mejor explicación de las funciones que cada puerto cumple en la
tarjeta SIM 900 se describen las características en la Tabla 8.
60
Tabla 8.
Conectividad Descripción
1. ActividadPrincipal.java
2. Mapa.java
3. Principal.java
4. WebService.java
Con base en la programación de Android Studio, cada vez que se crea una
plantilla se genera un archivo con extensión JAVA. En el cual todos los
componentes que se encuentran en el diseño adquieren funcionalidad. Por lo
tanto, en la Tabla 9 se indican las funciones asociadas a cada una de las capas
de diseño.
63
Tabla 9.
Programación en Java.
Documento Funciones
Añadir marcadores
Actualización de localización
Figura 31. Captura del IDE de programación PHP con las vistas generales.
Para que todo el sistema de monitoreo y control funcione debe ser alimentado
alimenta de energía al prototipo por medio de una conexión USB o a su vez
empleando el encendedor de cigarrillos del automóvil como se muestra en la
Figura 32.
66
Inicialización de variables
Asignación de variables
Inicialización de módulo SIM 900
Conexión a red celular
Asignación de IP pública
Inicialización de módulo GPS
Conexión a satélite para la conexión GPS
Almacenamiento en memoria volátil de latitud y longitud
Generación de dirección web con variables establecidas, latitud y
longitud
Almacenamiento en memoria volátil de dirección web
Ingreso de dirección web en internet.
67
8. CONCLUSIONES Y RECOMENDACIONES
La implementación del prototipo y los datos que este genera demandan el uso
de herramientas de almacenamiento las cuales se encuentran habilitadas para
el ingreso y captura de información una vez esta ha sido procesada. Así, fue
necesario crear un servidor web el mismo que está disponible en internet para
la conexión con los dispositivos móviles y el prototipo electrónico. Este servidor
contiene una base de datos MySql y programación en código libre.
8.2 Recomendaciones
REFERENCIAS
http://www.arcotel.gob.ec/servicio-movil-avanzado-sma/
celulares:
http://smovilecuador.arcotel.gob.ec/SenalMovilEcuadorWeb/mapas.h
tml
http://forum.arduino.cc/index.php?topic=228872.0
https://www.arduino.cc/
https://www.arduino.cc/en/Main/ArduinoBoardNano/
de la muestra:
http://revistainnovaciones.uanl.mx/index.php/revin/article/view/199/18
https://www.sciencedirect.com/science/article/pii/S092575351500107
75
content/uploads/2016/09/MATRIZ-DCS-FODA-CUANTITATIVA.pdf
quito-problemas-movilidad-pasajeros.html. Recuperado de el
http://www.elcomercio.com/actualidad/transporte-quito-problemas-
movilidad-pasajeros.html
http://cialibertadoresdelvalle.com/nosotros.php
http://cialibertadoresdelvalle.com/nosotros.php
https://www.g2crowd.com/categories/relational-databases
http://www.ecu911.gob.ec/transporte-seguro/
https://electronilab.co/tienda/adafruit-fona-808-modulo-celular-gsm-
gps-sim-808/
http://www.trolebus.gob.ec/index.php/transparencia/transparencia-
2017/marzo-2/d-servicios-2017/788-servicios-epmtpq-26/file
http://www.trolebus.gob.ec/websys/trolebus/
https://pt.slideshare.net/YenniferFernandez/tecnologia-mvil/9
http://www2.udla.edu.ec/udlapresencial/pluginfile.php/1478776/mod_
resource/content/2/1.1%20El%20origen%20de%20la%20telfon%C3
%ADa%20celular.pdf
CELULAR:
http://www2.udla.edu.ec/udlapresencial/pluginfile.php/1478782/mod_
resource/content/2/2.2_Asignaci%C3%B3n%20de%20canales_Hand
off_Interferencia.pdf
http://panamahitek.com/arduino-nano-caracteristicas-funciones-y-
como-conseguirlo-en-panama/
http://redestelematicas.com/la-transmision-de-datos-en-la-telefonia-
movil/
77
https://developers.google.com/maps/documentation/directions/intro?
hl=es-419#TravelModes
https://www.google.com/maps/dir/Isabel+La+Católica,+Quito+17014
3,+Ecuador/Panzaleo+120,+Quito,+Ecuador/@-0.2434093,-
78.5264304,21614m/data=!3m1!1e3!4m16!4m15!1m5!1m1!1s0x91d
59a0e75a601e7:0xafc9b5a57a5de3e9!2m2!1d-78.4851872!2d-
0.2061499!1m5!1m1!1s0x91d5a2
http://catarina.udlap.mx/u_dl_a/tales/documentos/lem/hernandez_c_
a/capitulo3.pdf
Holma, H., & Toskala, A. (2011). LTE for UMTS: Evolution to LTE-Advanced,
Recuperado de http://www.institutodelaciudad.com.ec/coyuntura-
sicoms/170-calidad-del-transporte-publico-en-el-dmq.html
205-5/5: https://www.itu.int/pub/R-QUE-SG05.205-5-2012
blogsport.com: http://yacoyjulieta.blogspot.com/2009/07/esquema-
de-transmision-de-senales-de.html
martil/2017/02/24/como-funcionan-las-redes-inalambricas-de-
telefonia-movil/
MIAO, G., ZANDER, J., SUNG, K., & SLIMANE, S. (2016). Fundamentals of
DE TELECOMUNICACIONES Y TECNOLOGÍAS DE LA
https://www.telecomunicaciones.gob.ec/wp-
content/uploads/2016/08/Libro_plan_tti_REGISTRO-
OFICIAL_30_AGOSTO.pdf
transporte. Recuperado de
http://www7.quito.gob.ec/mdmq_ordenanzas/Ordenanzas/ORDENA
NZAS%20MUNICIPALES%202017/
http://www7.quito.gob.ec/mdmq_ordenanzas/Ordenanzas/ORDENA
NZAS%20MUNICIPALES%202018/
http://saber.patagoniatec.com/2014/12/arduino-nano-328-arduino-
atmega-clon-compatible-arduino-argentina-ptec/
content/uploads/2017/01/Conexion-Arduino-SIM808.png
LA INVESTIGACION:
https://aulasvirtuales.wordpress.com/2010/05/15/escalas-lickert/
pcmag.com: http://latam.pcmag.com/cell-phone-service-providers-
products/19700/news/cdma-vs-gsm-cual-es-la-diferencia
http://www.secretariademovilidad.quito.gob.ec/index.php/component/
content/article.html?id=143
http://www.secretariademovilidad.quito.gob.ec/index.php/component/
content/article.html?id=143
DMQ: http://www.secretariademovilidad.quito.gob.ec/index.php/la-
institucion/politica1.html
http://www.secretariademovilidad.quito.gob.ec/
80
https://www.u-blox.com/sites/default/files/products/documents/NEO-
6_ProductSummary_%28GPS.G6-HW-09003%29.pdf
ANEXOS
Anexo 1
Este anexo muestra las posibles rutas de prueba, las mismas han sido tomadas
del catálogo expuesto en la página del Municipio Metropolitano de Quito.
Este anexo muestra los análisis de rutas de las 8 rutas planteadas verificando
sus fortalezas, oportunidades, debilidades y amenazas, para plantear la mejor
ruta para el presente proyecto.
ANÁLISIS DE RUTA # 1
RUTA Terminal Inter parroquial Río Coca -
Collaquí
COOPERATIVA Transportes Tumbaco
Fortalezas
Varias rutas disponibles por compañía Si
Esta de unidades Buenas Si
Tiempo de recorrido (1 hora de recorrido máximo) Si
Rutas con baja demanda de tráfico No
Oportunidades
Administración de unidades No
Mejorar la demanda Si
Competencia segmentada y dividida por mejores Si
rutas
Uso de tecnologías de último nivel No
Debilidades
Pocas unidades de transporte (población) Si
Calidad de servicio deficiente Si
Unidades viejas anteriores al 2012 Si
Falta de paradas eficientes Si
Falta de control usuarios Si
Falta monitoreo control Si
Amenazas
Control del monitoreo vehículo No
Aumento del precio de gastos – vehículos de No
transporte
Sin cobertura de red móvil No
Cambio de reglamentos de transito de DMQ SI
ANÁLISIS DE RUTA # 2
RUTA El Quinche - Guayllabamba - Ofelia
COOPERATIVA Flota Pichincha
Fortalezas
Varias rutas disponibles por compañía Si
Esta de unidades Buenas No
Tiempo de recorrido (1 hora de recorrido máximo) No
Rutas con baja demanda de tráfico No
Oportunidades
Administración de unidades No
Mejorar la demanda Si
Competencia segmentada y dividida por mejores rutas Si
Uso de tecnologías de último nivel No
Debilidades
Pocas unidades de transporte (población) Si
Calidad de servicio deficiente Si
Unidades viejas anteriores al 2012 Si
Falta de paradas eficientes Si
Falta de control usuarios Si
Falta monitoreo control Si
Amenazas
Control del monitoreo vehículo No
Aumento del precio de gastos – vehículos de
Si
transporte
Sin cobertura de red móvil Si
Cambio de reglamentos de transito de DMQ SI
ANÁLISIS DE RUTA # 3
Quinche - Checa - Terminal Interparroquial
RUTA
Río Coca
COOPERATIVA Reina del Quinche
Fortalezas
Varias rutas disponibles por compañía Si
Esta de unidades Buenas No
Tiempo de recorrido (1 hora de recorrido máximo) No
Rutas con baja demanda de tráfico Si
Oportunidades
Administración de unidades No
Mejorar la demanda Si
ANÁLISIS DE RUTA # 3
Quinche - Checa - Terminal Interparroquial
RUTA
Río Coca
Competencia segmentada y dividida por mejores rutas Si
Uso de tecnologías de último nivel No
Debilidades
Pocas unidades de transporte (población) Si
Calidad de servicio deficiente Si
Unidades viejas anteriores al 2012 Si
Falta de paradas eficientes Si
Falta de control usuarios Si
Falta monitoreo control Si
Amenazas
Control del monitoreo vehículo No
Aumento del precio de gastos – vehículos de
Si
transporte
Sin cobertura de red móvil No
Cambio de reglamentos de transito de DMQ No
ANÁLISIS DE RUTA # 4
RUTA La Merced - Marín
COOPERATIVA Termas Turis
Fortalezas
Varias rutas disponibles por compañía No
Esta de unidades Buenas No
Tiempo de recorrido (1 hora de recorrido máximo) No
Rutas con baja demanda de tráfico No
Oportunidades
Administración de unidades No
Mejorar la demanda Si
Competencia segmentada y dividida por mejores rutas No
Uso de tecnologías de último nivel No
Debilidades
Pocas unidades de transporte (población) Si
Calidad de servicio deficiente Si
Unidades viejas anteriores al 2012 Si
Falta de paradas eficientes Si
Falta de control usuarios Si
Falta monitoreo control Si
Amenazas
ANÁLISIS DE RUTA # 4
RUTA La Merced - Marín
Control del monitoreo vehículo No
Aumento del precio de gastos – vehículos de
Si
transporte
Sin cobertura de red móvil No
Cambio de reglamentos de transito de DMQ No
ANÁLISIS DE RUTA # 5
Nuevo Aeropuerto Internacional de Quito
RUTA
- Río Coca
COOPERATIVA Reina del Quinche
Fortalezas
Varias rutas disponibles por compañía Si
Esta de unidades Buenas No
Tiempo de recorrido (1 hora de recorrido máximo) No
Rutas con baja demanda de tráfico Si
Oportunidades
Administración de unidades No
Mejorar la demanda Si
Competencia segmentada y dividida por mejores rutas Si
Uso de tecnologías de último nivel No
Debilidades
Pocas unidades de transporte (población) Si
Calidad de servicio deficiente Si
Unidades viejas anteriores al 2012 Si
Falta de paradas eficientes Si
Falta de control usuarios Si
Falta monitoreo control Si
Amenazas
Control del monitoreo vehículo No
Aumento del precio de gastos – vehículos de
Si
transporte
Sin cobertura de red móvil No
Cambio de reglamentos de transito de DMQ No
ANÁLISIS DE RUTA # 6
Terminal Interparroquial Río Coca -
RUTA
Lumbisí
COOPERATIVA Cooperativa de Transportes Tumbaco
Fortalezas
Varias rutas disponibles por compañía Si
Esta de unidades Buenas No
Tiempo de recorrido (1 hora de recorrido máximo) No
Rutas con baja demanda de tráfico Si
Oportunidades
Administración de unidades No
Mejorar la demanda Si
Competencia segmentada y dividida por mejores rutas Si
Uso de tecnologías de último nivel No
Debilidades
Pocas unidades de transporte (población) Si
Calidad de servicio deficiente Si
Unidades viejas anteriores al 2012 Si
Falta de paradas eficientes Si
Falta de control usuarios Si
Falta monitoreo control Si
Amenazas
Control del monitoreo vehículo No
Aumento del precio de gastos – vehículos de
Si
transporte
Sin cobertura de red móvil No
Cambio de reglamentos de transito de DMQ No
ANÁLISIS DE RUTA # 7
RUTA Dean Bajo - Conocoto - Armenia – Girón
COOPERATIVA
Fortalezas
Varias rutas disponibles por compañía Si
Esta de unidades Buenas Si
Tiempo de recorrido (1 hora de recorrido máximo) Si
Rutas con baja demanda de tráfico No
Oportunidades
Administración de unidades No
Mejorar la demanda Si
ANÁLISIS DE RUTA # 7
RUTA Dean Bajo - Conocoto - Armenia – Girón
Competencia segmentada y dividida por mejores rutas Si
Uso de tecnologías de último nivel No
Debilidades
Pocas unidades de transporte (población) Si
Calidad de servicio deficiente Si
Unidades viejas anteriores al 2012 Si
Falta de paradas eficientes Si
Falta de control usuarios Si
Falta monitoreo control Si
Amenazas
Control del monitoreo vehículo Si
Aumento del precio de gastos – vehículos de
Si
transporte
Sin cobertura de red móvil No
Cambio de reglamentos de transito de DMQ No
ANÁLISIS DE RUTA # 8
RUTA Marín - Las palmeras
Fortalezas
Varias rutas disponibles por compañía Si
Esta de unidades Buenas No
Tiempo de recorrido (1 hora de recorrido máximo) No
Rutas con baja demanda de tráfico No
Oportunidades
Administración de unidades No
Mejorar la demanda Si
Competencia segmentada y dividida por mejores
Si
rutas
Uso de tecnologías de último nivel No
Debilidades
Pocas unidades de transporte (población) Si
Calidad de servicio deficiente Si
Unidades viejas anteriores al 2012 Si
Falta de paradas eficientes Si
Falta de control usuarios Si
Falta monitoreo control Si
ANÁLISIS DE RUTA # 8
Amenazas
Control del monitoreo vehículo Si
Aumento del precio de gastos – vehículos de
Si
transporte
Sin cobertura de red móvil No
Cambio de reglamentos de transito de DMQ No
Anexo 3
1.
2.
3.
4.
5.
Arduino Mini
Costo referencial mercado
ECUADOR *Mercado libre
Análisis de características / Usabilidad
Ecuador
4,95 *
Fortalezas
1.
2.
3.
4.
5.
Fortalezas
Presión de ubicación sistema de
Si
coordenadas WGS-84
Alimentación baja voltaje Si
Led indicador de señal Si
Oportunidades
Sensibilidad de captura mayor a -148
Si
dBm
Sensibilidad de rastreo mayor a -161
Si
dBm
Exactitud de señal mejor o igual a 1µs Si
Promedio de inicio de captura menor
Si
a 35 s
Debilidades
Antena de cerámica Si
Tamaño de la antena menor a 2,5 cm Si
Almacenamiento EEPROM Si
Comunicación serial Si
Señalización 1 lógico en 3,3 volts Si
Altura máxima de rastreo 18000m Si
Amenazas
Frecuencia de recepción en L1 Si
Antena no activa Si
Sistemas de coordenadas no medible Si
Compatibilidad limitada con Arduino
SI
Nano
Modulo Gps Ublox Neo 7m
Costo referencial mercado ECUADOR *Mercado libre
Ecuador
Análisis de características / Usabilidad
31*
Fortalezas
Presión de ubicación sistema de
No
coordenadas WGS-84
Alimentación baja voltaje Si
Led indicador de señal No
Oportunidades
Sensibilidad de captura mayor a -148
Si
dBm
Sensibilidad de rastreo mayor a -161
No
dBm
Exactitud de señal mejor o igual a 1µs Si
Promedio de inicio de captura menor
Si
a 35 s
Debilidades
Antena de cerámica Si
Tamaño de la antena mayor a 5 cm No
Almacenamiento EEPROM Si
Comunicación serial Si
Señalización 1 lógico en 3,3 volts No
Altura máxima de rastreo 18000m No
Amenazas
Frecuencia de recepción en L1 Si
Antena no activa Si
Sistemas de coordenadas no medible Si
Compatibilidad limitada con Arduino
SI
Nano
Anexo 7
1.
2.
3.
4.
5.
Fortalezas
QuadBand 850/ 900/ 1800/ 1900 Mh Si
Consumo de 15 mA Si
Protocolo TCP/UDP Si
Oportunidades
Clas 4 AT 2w Si
Clas 1 AT 1w Si
Soporta RTC Si
Compatible con GSM Si
Debilidades
Sin antena de trx y rx No
Tamaño del módulo igual a 6 cm Si
GPRS Clase A No
Comunicación serial Si
Single slot clase 10/8 No
No compatible con Shield Si
Amenazas
Conectividad por jumper Si
Antena no activa Si
Tiempos de activación mayores a 10 s No
Compatibilidad limitada con Arduino
SI
Nano
Modulo Sim 808 GSM
Costo referencial mercado ECUADOR *Mercado libre
Ecuador
Análisis de características / Usabilidad
37 *
Fortalezas
QuadBand 850/ 900/ 1800/ 1900 Mh Si
Consumo de 1.5 mA No
Protocolo TCP/UDP Si
Oportunidades
Clas 4 AT 2w Si
Clas 1 AT 1w Si
Soporta RTC Si
Compatible con GSM Si
Debilidades
Sin antena de trx y rx No
Tamaño del módulo igual a 6 cm Si
GPRS Clase A No
Comunicación serial Si
Single slot clase 10/8 No
No compatible con Shield Si
Amenazas
Conectividad por jumper Si
Antena no activa Si
Tiempos de activación mayores a 10 s Si
Compatibilidad limitada con Arduino
SI
Nano
Anexo 9
INICIO
Almacenar en
variables el usuario
y contraseña
Conexión con
web services
Ingreso a archivo
login.php mediante
envío de
parámetros
Selección de la base
de datos con
parámetros
ingresados
Mensaje de ingreso
Existe respuesta
NO correcto de
ok
credenciales
SI
Mensaje de estado
FIN
CORRECTO
SELECCIÓN DE RUTAS: Una vez validadas las credenciales en el
dispositivo móvil se mostrarán las rutas disponibles, a continuación se
detalla los procesos que realiza el aplicativo móvil para presentar la
consulta realizada.
INICIO
Selección de la base
de datos con todas
las rutas ingresadas
Presentación de las
rutas en la
aplicación móvil
Selección de la ruta
por parte del Salida
usuario
FIN
MAPAS: Una vez escogida la ruta, se procederá según el siguiente
diagrama de bloques donde se indica todos los procesos y subprocesos que
realiza la aplicación móvil indicando la ruta, tiempo de llegada, etc.
Anexo 11
#include "SIM900.h"
#include <SoftwareSerial.h>
#include "inetGSM.h"
//#include <Wire.h>
InetGSM inet;
//RTC_DS1307 RTC;
char msg[250];
int numdata;
char inSerial[50];
int ii=0;
boolean started=false;
void setup()
{
pinMode(13,OUTPUT);
digitalWrite(13,HIGH);
//Serial connection.
Serial.begin(9600);//serial port
};
void loop()
{
char buffer[40];
int id=1;
int sensor=0;
int v=13;
int volt=0;
sensor = analogRead(A0);// LEO EL SENSOR DE DISTANCIAS
v=analogRead(A1);//LEP EL SENSOR DE VOLTAJE
volt=v/40.5;
Serial.print("Sensor:");
Serial.println(sensor);
/*
DateTime now = RTC.now();////LEO RTC
int hh=(now.hour());
int mm=(now.minute());
int ss=(now.second());
int aa=(now.year());
int me=(now.month());
int dd=(now.day());
*/
///////////////////////////////////////ARMO UN BUFFER PARA ENVIAR A LA WEB
// sprintf(buffer, "/caudales/recibir.php?var1=%1.1d-%1.1d-
%1.1d&var2=%1.1d:%1.1d:%1.1d&var3=%1.1d&var4=%1.1d&var5=%1.1d",aa,me,dd,
hh,mm,ss,sensor,id,volt);//SPRINT PERMITE CREAR UN VECTOR BASADO EN
VARIABLES
// DateTime now = RTC.now();
Serial.print("BUFFER:");
//Serial.println(buffer);
if(started) {
//if(){
//GPRS attach, put in order APN, username and password.
//If no needed auth let them blank.
//Read IP address.
gsm.SimpleWriteln("AT+CIFSR");
delay(2000);
//Read until serial buffer is empty.
gsm.WhileSimpleRead();
//http://appgps.ddns.net/dato/?latitud=-0.169581&longitud=-78.4604&id=4
numdata=inet.httpGET("appgps.ddns.net", 80,"/dato/?latitud=-
0.169581&longitud=-88.4604&id=4", msg, 250);
Serial.println("\nNumber of data received:");
Serial.println(numdata);
Serial.println("\nData received:");
Serial.println(msg);
// }
}
delay(10000);//delay para envio de datos web
}
void serialswread()
{
gsm.SimpleRead();
}
Anexo 12
Main Activity
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
correo = (EditText)findViewById(R.id.text_correo);
pass = (EditText)findViewById(R.id.text_pass);
inicio = (Button)findViewById(R.id.button);
inicio.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
final String correo_data = correo.getText().toString();
final String pass_data = pass.getText().toString();
if ((correo_data.length()>0)&&(pass_data.length()>0)){
Thread tr = new Thread(){
@Override
public void run() {
}
});
}
}
import android.Manifest;
import android.app.Activity;
import android.app.Dialog;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.location.Location;
import android.location.LocationListener;
import android.os.AsyncTask;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.ActivityCompat;
import android.support.v4.app.FragmentActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
import com.directions.route.AbstractRouting;
import com.directions.route.Route;
import com.directions.route.RouteException;
import com.directions.route.Routing;
import com.directions.route.RoutingListener;
import com.google.android.gms.common.ConnectionResult;
import com.google.android.gms.common.GooglePlayServicesUtil;
import com.google.android.gms.common.api.GoogleApiClient;
import com.google.android.gms.location.LocationRequest;
import com.google.android.gms.location.LocationServices;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.UiSettings;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.Marker;
import com.google.android.gms.maps.model.MarkerOptions;
import com.google.android.gms.maps.model.Polyline;
import com.google.android.gms.maps.model.PolylineOptions;
import org.json.JSONArray;
import org.json.JSONObject;
import java.util.ArrayList;
import java.util.List;
GoogleApiClient mGoogleApiClient;
Location mLastLocation;
LocationRequest mLocationRequest;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
//actualizar = (Button)findViewById(R.id.actualizar);
if (estado == ConnectionResult.SUCCESS) {
latitud = getIntent().getExtras().getString("latitud");
longitud = getIntent().getExtras().getString("longitud");
id_seleccionado = getIntent().getExtras().getString("id_seleccionado");
// Obtain the SupportMapFragment and get notified when the map is ready to
be used.
SupportMapFragment mapFragment = (SupportMapFragment)
getSupportFragmentManager()
.findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
} else {
Dialog dialog = GooglePlayServicesUtil.getErrorDialog(estado, (Activity)
getApplicationContext(), 10);
dialog.show();
}
/*actualizar.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
Thread tr = new Thread(){
@Override
public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
try{
JSONArray pos_temp = new JSONArray(posiciones);
latitud = jsonobject.getString("latitud");
longitud = jsonobject.getString("longitud");
}
}catch(Exception e){
System.out.println(e.getMessage());
}
}
});
}
};
tr.start();
}
});*/
}
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
if (ActivityCompat.checkSelfPermission(this,
Manifest.permission.ACCESS_FINE_LOCATION) !=
PackageManager.PERMISSION_GRANTED &&
ActivityCompat.checkSelfPermission(this,
Manifest.permission.ACCESS_COARSE_LOCATION) !=
PackageManager.PERMISSION_GRANTED) {
return;
}
buildGoogleApiClient();
mMap.setMyLocationEnabled(true);
mMap.animateCamera(CameraUpdateFactory.zoomTo(15));
/*mMap.setMapType(googleMap.MAP_TYPE_NORMAL);
@Override
public void onLocationChanged(Location location) {
mLastLocation = location;
LatLng latlng = new LatLng(location.getLatitude(), location.getLongitude());
if (!centrar){
mMap.moveCamera(CameraUpdateFactory.newLatLng(latlng));
centrar = true;
}
PosicionCarro = mMap.addMarker(new
MarkerOptions().position(pos_carro).title("Automovil"));
getRouteToMarker(pos_carro);
}
}
@Override
public void onConnected(@Nullable Bundle bundle) {
// cuando el mapa esta conectado y mostrado
mLocationRequest = new LocationRequest();
mLocationRequest.setInterval(30000);
mLocationRequest.setFastestInterval(30000);
mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
if (ActivityCompat.checkSelfPermission(this,
Manifest.permission.ACCESS_FINE_LOCATION) !=
PackageManager.PERMISSION_GRANTED &&
ActivityCompat.checkSelfPermission(this,
Manifest.permission.ACCESS_COARSE_LOCATION) !=
PackageManager.PERMISSION_GRANTED) {
return;
}
LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient,
mLocationRequest, this);
@Override
public void onConnectionSuspended(int i) {
Regresar();
}
@Override
public void onConnectionFailed(@NonNull ConnectionResult connectionResult) {
Regresar();
}
runOnUiThread(new Runnable() {
@Override
public void run() {
try{
JSONArray pos_temp = new JSONArray(posiciones);
latitud = jsonobject.getString("latitud");
longitud = jsonobject.getString("longitud");
System.out.println("nueva latitud = "+latitud);
}
}catch(Exception e){
System.out.println(e.getMessage());
}
}
});
}
};
tr.start();
}
@Override
public void onRoutingFailure(RouteException e) {
if(e != null) {
Toast.makeText(this, "Error: " + e.getMessage(),
Toast.LENGTH_LONG).show();
}else {
Toast.makeText(this, "Something went wrong, Try again",
Toast.LENGTH_SHORT).show();
}
}
@Override
public void onRoutingStart() {
@Override
public void onRoutingSuccess(ArrayList<Route> route, int shortestRouteIndex) {
if(polylines.size()>0) {
for (Polyline poly : polylines) {
poly.remove();
}
}
@Override
public void onRoutingCancelled() {
@Override
protected Object doInBackground(Object[] objects) {
Actualizar_Locacion();
return null;
}
}
}
import android.app.Activity;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import org.json.JSONArray;
import org.json.JSONObject;
import org.w3c.dom.Text;
import java.util.ArrayList;
JSONArray elementos;
Button salir;
ListView carros;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_principal);
salir = (Button)findViewById(R.id.salir);
carros = (ListView)findViewById(R.id.vehiculos);
if (elementos.length()>0) {
for (int i = 0; i < elementos.length(); i++) {
JSONObject jsonobject = elementos.getJSONObject(i);
String id = jsonobject.getString("id_vehiculo");
String vehiculo = jsonobject.getString("vehiculo");
String color = jsonobject.getString("color");
String placa = jsonobject.getString("placa");
}catch(Exception e){
System.out.println(e.getMessage());
}
}
});
}
};
tr.start();
salir.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
finish();
}
});
carros.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int position, long
arg3) {
final String id_seleccionado = ((TextView)
arg1.findViewById(R.id.id_vehiculo)).getText().toString();
Thread tr = new Thread(){
@Override
public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
try{
JSONArray pos_temp = new JSONArray(posiciones);
}catch(Exception e){
System.out.println(e.getMessage());
}
}
});
}
};
tr.start();
}
});
}
@Override
public int getCount() {
return vehiculo_lista.length;
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
convertView = getLayoutInflater().inflate(R.layout.listado_vehiculos, null);
TextView vehiculo = (TextView)convertView.findViewById(R.id.placa_vehiculo);
TextView color_placa =
(TextView)convertView.findViewById(R.id.placa_color_vehiculo);
TextView id_vehiculo = (TextView)convertView.findViewById(R.id.id_vehiculo);
vehiculo.setText(vehiculo_lista[position]);
color_placa.setText(placas_lista[position]+" - "+colores_lista[position]);
id_vehiculo.setText(id_lista[position]);
return convertView;
}
}
import android.content.Intent;
import android.widget.Toast;
import org.json.JSONArray;
import java.io.DataOutput;
import java.io.DataOutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Scanner;
try{
URL url = new URL(servidor+"/login.php");
conexion = (HttpURLConnection)url.openConnection();
conexion.setRequestMethod("POST");
conexion.setRequestProperty("Content-Length",
""+Integer.toString(parametros.getBytes().length));
conexion.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(conexion.getOutputStream());
wr.writeBytes(parametros);
wr.close();
Scanner inStream = new Scanner(conexion.getInputStream());
while(inStream.hasNextLine()){
respuesta +=(inStream.nextLine());
}
}catch(Exception e){
//respuesta = e.getMessage();
System.out.println(e.getMessage());
}
return respuesta.toString();
}
try{
URL url = new URL(servidor+"/vehiculos.php");
conexion = (HttpURLConnection)url.openConnection();
conexion.setRequestMethod("POST");
conexion.setRequestProperty("Content-Length",
""+Integer.toString(parametros.getBytes().length));
conexion.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(conexion.getOutputStream());
wr.writeBytes(parametros);
wr.close();
try{
URL url = new URL(servidor+"/posicion_vehiculo.php");
conexion = (HttpURLConnection)url.openConnection();
conexion.setRequestMethod("POST");
conexion.setRequestProperty("Content-Length",
""+Integer.toString(parametros.getBytes().length));
conexion.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(conexion.getOutputStream());
wr.writeBytes(parametros);
wr.close();
}
Anexo 13
ALCANCE
Este manual sirve para indicar el uso de la aplicación móvil diseñada para el
monitoreo y control de rutas del sistema de transporte público urbano del
Distrito Metropolitano de Quito.
2.1.5 Una vez validadas las credenciales se mostrarán las rutas que se
encuentran disponibles, de las cuales se elegirá la solicitada y donde se
procederá a mostrar el mapa.
2.1.6 Seleccionada la ruta se mostrará el mapa con la ubicación actual del
próximo transporte, rutas y tiempo.
En esta sección se muestra el manual de uso de la aplicación web.
2.1.2 Una vez ingresados los datos dé click en el botón “Registrarme” para
ingresar el nuevo usuario en la base de datos, el cual se encontrará listo para
su uso en la aplicación móvil y web, además se mostrará un mensaje de
creación satisfactoria.
2.1.3 Para realizar el ingreso hacia la aplicación web en la dirección:
http://appddns.com/app/login.html en donde se llevará a la pantalla de panel de
control.