Instituto Polit�cnico Nacional
Instituto Politécnico Nacional
"La Técnica al Servicio de la Patria"

Boletín No. 49
1o. de julio de 2015




GEOLOCALIZACIÓN MEDIANTE EL ENVÍO DE MENSAJES SMS POR RED GSM

 

Jorge López O. Julián López M. Gabriel E. García R.
Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo. , Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo. , Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo.
Posgrado. Centro de Innovación y Desarrollo Tecnológico en Computación CIDETEC

 

Abstract

Este trabajo se basa en la localización de personas u objetos por medio de la posición geográfica con ayuda del Sistema de Posicionamiento Global (GPS). Actualmente se han desarrollado innumerables aplicaciones que requieren del GPS, sin embargo, es indispensable el uso de un segundo módulo que se encargue de enviar dicha posición inalámbricamente; por ello, se ha hecho uso del Sistema Global para Comunicaciones Móviles (GSM) para transmitir dichas coordenadas con ayuda del Servicio de Mensajes Simples (SMS). Haciendo uso de un dispositivo móvil como intermediario de solicitud y consulta, se envía un mensaje de texto al Módulo de Identificación del Suscriptor (SIM) dentro del receptor GSM, el cual recibe y envía de manera serial a una tarjeta de desarrollo basado en un microcontrolador para su comparación con una lista de números para su validación. Posterior a la validación, la tarjeta de desarrollo se encarga de controlar el módulo GPS y administra los datos también de manera serial para obtener las coordenadas de latitud y longitud, para finalizar con la configuración del módulo GSM como transmisor en el envío de un mensaje de texto con la dirección de Localizador de Recursos Uniforme (URL) de Google Maps con las coordenadas obtenidas por el módulo GPS.

Introducción

El conocimiento de la localización se ha vuelto una prioridad en los últimos años, esto con el objetivo de reducir tiempo y costos mediante una logística y control eficiente, obteniendo así un mayor desempeño y crecimiento en el desarrollo de un equipo de trabajo. El sistema de geolocalización es diseñado con el objetivo de conocer en tiempo real la posición geográfica relativa de un vehículo-personas utilizando diversos componentes electrónicos de comunicación, control y de acceso a fuente de datos. El sistema propuesto está conformado por un módulo con tecnología GSM, módulo GPS, sistema de desarrollo electrónico (microcontrolador) y un dispositivo móvil con acceso a internet y mensajes SMS, con el cual múltiples usuario pueden obtener acceso a los servicios de: localización de vehículos por robo, protección de niños, personas mayores y mascotas, puntos de referencia en campamento y viajes, monitoreo y control de rutas en vehículos de transporte terrestre, aéreos y marítimos, etc.,   generando un sistema de bajo costo y fácil acceso debido a la gran variedad de aplicaciones dentro del uso masivo de los dispositivos móviles para su consulta, por su amplia gama de servicios de comunicación y de acceso a todo usuario.

Al utilizar un módulo GSM como sistema de comunicación de datos, se hace uso de la red celular para establecer una comunicación con los dispositivos móviles registrados en la red. En la Figura 1, se muestra la zona de cobertura de una de las empresas más grande en telefonía celular GSM en de la república  mexicana. La ventaja radica en cubrir una mayor extensión territorial con una comunicación inalámbrica en todo momento dentro de las zonas urbanas, invirtiendo así únicamente en los gastos de envío de mensaje SMS y no en la renta periódica de un servicio de datos como el WiFi o planes de datos móviles.

Figura 1. Cobertura GSM en la república mexicana

Desarrollo

Con base en la plataforma de desarrollo Stellaris LaunchPad de Texas Instruments con un microcontrolador LM4F120H de arquitectura SISC ARM Cortex, se llevó acabo la programación de un sistema de control y administración de datos derivados de un módulo GPS y GPRS por Transmisor-Receptor Asíncrono Universal (UART). La Figura 2 muestra la tarjeta electrónica como sistema de control con los siguientes detalles técnicos más relevantes.

Voltaje de alimentación: 5 [V]

35 pines de I/O digitales

Interface de depuración en circuito ICDI

Consumo de 350 m[A]

7 puertos seriales UART

Memoria flas de 256 Kbyte

Oscilador de 80MHz

Registros de 32 bits

 

Figura 2. Tarjera Stellaris LaunchPad de TI.

Por una parte, la tarjeta de desarrollo se conecta a un módulo GPS – MTK3339 de la empresa Adafruit. El GPS transmite los datos bajo el protocolo de Asociación de Electrónica de Marina Nacional (NMEA) 0183 los cuales recibe y decodifica el microcontrolador en busca del encabezado de Arreglo de datos del sistema de posicionamiento global GPGGA donde se encuentran las coordenadas de latitud y longitud en formato de grados y minutos con notación NSWE (North, South, West and East). La conversión a coordenadas decimales es requerida en Google Maps para colocar un marcador un el mapa.

El microcontrolador lee cada uno de los caracteres alfanuméricos hasta encontrar la cadena $GPGGA ya que continúan las coordenadas en el siguiente orden: ,DDMM.MMMM, N/E, DDDMM.MMMM, S/W, donde D es grados, M minutos, como lo muestra el ejemplo siguiente:

$GPGGA,123519,4807.0380,N,01131.0000,E,1,08,0.9,545.4,M,46.9,M,,*47

Una vez el microcontrolador encuentra y guarda la trama deseada, procede a realizar la conversión de coordenadas en base a las ecuaciones 1 y 2, finalizando con el envío de estos datos dentro de la trama de dirección URL al módulo GSM.

Dónde: La es Latitud y Lo es longitud.

En coordenadas decimales se tiene:

Por otra parte, el mismo sistema de control es conectado a un módulo GSM basado en el SIM900 de cuadribanda configurado por medio de comandos AT (Comandos de Configuración por Atención) con un chip de la compañía celular Telcel – México contando con servicio SMS para el envío de mensaje de texto. El sistema de control inicializa verificando el módulo GSM al recibir los siguientes comandos:

RDY +CFUN: 1 +CPIN: READY     +PACSP: 1 Call ready

Donde RDY es Ready, +CFUN: 1 es la operación del módulo en funcionalidad completa, +CPIN: READY  acceso al Número de Identificación Personal (PIN) y el mensaje Call ready como trama de verificación y chequeo. La Figura 3 muestra el diagrama eléctrico del sistema con los módulos GPRS, GPS y microcontrolador.

 

Figura 3. Sistema inalámbrico de geolocalización por red GSM.

Una vez que el módulo GPRS ha sido validado, está listo para recibir mensajes SMS. El envío de mensajes se puede realizar desde cualquier equipo registrado en la red celular al número SIM de 10 dígitos para el interior del país. En el siguiente ejemplo se muestra los datos como respuesta a la recepción de un mensaje SMS:

+CMT:"XXXXXXXXXX","","15/02/04,10:22:59-24"
Este es un mensaje enviado desde un dispositivo móvil

El comando +CMT  indica que la recepción de mensajes SMS son mostrados en el equipo sin solicitud previa con los datos de SIM, fecha, hora y mensaje asociado. El primer dato entre comillas dobles es el número SIM, único y necesario para realizar la identificación y como número de referencia a una posterior respuesta con las coordenadas obtenidas del módulo GPS para su posterior envío.

Con el mensaje SMS de solicitud recibido y el almacenamiento del número SIM de 10 dígitos, el sistema compara el número con la base de datos previamente almacenada para su confirmación. De ser positivo, se leen las coordenadas del GPS para posteriormente configura al módulo GSM como transmisor en el envío de mensajes SMS. El envío de mensajes SMS inicializa con el comando de configuración AT+CMGS= seguido del número de 10 dígitos entre comillas dobles "XXXXXXXXXX" el cual coincide con el número identificado en la recepción precia, finalizando con el ASCII de ENTER. El texto contiene los caracteres de la dirección URL para mostrar las coordenadas GPS dentro de un mapa geográfico mediante un teléfono móvil con internet. La siguiente dirección contiene las coordenadas de latitud y longitud en decimales para ser vistas a través de Google Maps.

http://maps.google.com/maps?f=q&q=19.502958,–99.146958&z=18  

En la verificación de los algoritmos para el sistema de lectura, escritura y control de datos, se realizó un recorrido en vehículo dentro de la Unidad Adolfo López Mateo, Zacatenco, D.F. México, estableciendo cinco puntos dentro de la zona mientras que la locación del usuario se realizó en las instalaciones del Centro de Innovación y Desarrollo Tecnológico en Cómputo CIDETEC. La Figura 4 muestra el mapa satelital de la zona recorrida, donde en círculos rojos se indica las posiciones del vehículo, mientras que en círculos color azul la posición del usuario en la solicitud y las coordenadas de recepción obtenidas en forma de marcadores.

Figura 4. Prueba de geolocalización de un vehículo por mensajes SMS.

Como pruebas de eficiencia del sistema en la precisión de las coordenadas a través de la herramienta de mapas geográficos Google Maps por dispositivos móviles, se colocó el equipo de geolocalización en la misma posición del teléfono. La Figura 5 muestra la impresión de pantalla del móvil con el GPS activado. El móvil recibe un mensaje vía SMS con la dirección URL http://maps.google.com/maps?f=q&q= 19.502935,99.146713&z=16 indicando en la parte superior las coordenadas en decimales por el módulo GPS mismas que en la parte inferior las coordenadas por el móvil en grados, minutos y segundos.

 

Figura 5. Coordenadas obtenidas por módulo GPS vs GPS móvil.

Coordenadas módulo GPS en decimal:

Donde: MLa = Latitud  módulo GPS

             MLo = Longitud módulo GPS

Coordenadas GPS móvil en grados, min., y seg. :

Donde: GLa = Latitud  GPS móvil

             GLo = Longitud GPS móvil

La conversión de coordenadas GPS móvil a decimales se obtienen a partir de las ecuaciones 1 y 2:

El error absoluto entre coordenadas es:

Que con ayuda de la herramienta de distancia de Google Maps, se llevó a cabo una medición de distancia en metros entre dos puntos geográficos se obtuvo una diferencia de 2.64 m.

Conclusiones

Este prototipo es la base para aplicaciones de localización de personas y transporte en general  donde el usuario puede consultar la ubicación por medio de un dispositivo móvil con conexión a internet a través de un mensaje de texto, obteniendo un error con respecto al GPS de un teléfono móvil de 2.64m que para nuestra aplicación es aceptable.

Con base en los resultados obtenidos en el envió de coordenadas a un teléfono celular se plantea la posibilidad de un prototipo de fácil instalación en aplicaciones donde se requiere conocer la localización de un objeto de interés con el uso de mensajes de texto lo que nos permite gestionar los permisos de usuarios que puedan tener acceso a dicho servicio y con ello garantizar que el servicio sea aplicable a diferentes campos como lo es seguridad y geolocalización  entre otros campos.

Referencias

  1. N. Chadil, A. Russameesawang, & P. Keeratiwintakorn. “Real-time tracking management system using GPS, GPRS and Google earth,” in Proceedings of the 5th International Conference on Electrical Engineering/Electronics, Computer, Telecommunications and Information Technology, vol. 1, 2008, pp. 14–17.

  2. Manoharan, S. “On GPS tracking of mobile devices” IEEE Int. Conf. Networking Services, pages 415–418, 2009.

  3. Siddiqui, A., Saleem, U., & Ur, A. “GPS and GSM Based Advanced Vehicle Monitoring and Information System”. First International Conference on Modern Communication & Computing Technologies (MCCT'14)

  4. Tayo, A. O., Adesina, G. R., & Oluwatobi, A. N. Design and Implementation of a Global Positioning System Based Automatic Vehicle Location System.