- Componentes necesarios para el sistema de seguimiento de vehículos basado en Arduino:
- ¿Cómo se puede utilizar el módulo GSM para rastrear la ubicación?
- Explicación del circuito para interconectar GSM y GPS con Arduino:
- Sistema de seguimiento de vehículos basado en GSM y GPS usando Arduino - Funcionando
- Interfaz GAM y GPS con código Arduino para rastrear la ubicación del vehículo
Los sistemas de seguimiento de vehículos se utilizan con mucha frecuencia en aplicaciones de gestión de flotas y seguimiento de activos. Hoy en día, estos sistemas no solo pueden rastrear la ubicación del vehículo, sino que también pueden informar la velocidad e incluso controlarla de forma remota. En general, el seguimiento de vehículos es un proceso en el que rastreamos la ubicación del vehículo en forma de latitud y longitud (coordenadas GPS). Las coordenadas GPS son el valor de una ubicación. Este sistema es muy eficiente para aplicaciones en exteriores. Este tipo de proyecto de sistema de seguimiento de vehículos se utiliza ampliamente en el seguimiento de taxis / taxis, vehículos robados, autobuses escolares / universitarios, etc. En este proyecto, vamos un paso adelante con la construcción de GPS de un sistema de seguimiento de vehículos basado en GSM y GPS utilizando Arduino. Este sistema de seguimiento de vehículos también se puede utilizar para rastrear un vehículo usando GPS y GSM y también se puede usar como sistema de alerta de detección de accidentes, sistema de seguimiento de soldados y muchos más, con solo hacer algunos cambios en el hardware y el software.
También hemos construido muchos otros tipos de sistemas de seguimiento de vehículos anteriormente, puede consultarlos si está interesado
- Seguimiento GPS de vehículos y alerta de accidentes con Arduino
- Seguimiento de vehículos con Google Maps usando Arduino y ESP8266
- Seguimiento de vehículos GPS y alerta de accidentes mediante MSP430
- Seguimiento de vehículos GPS basado en LoRa usando Arduino
- Rastreador de ubicación sin GPS usando SIM800 y Arduino
Componentes necesarios para el sistema de seguimiento de vehículos basado en Arduino:
Para construir un sistema de rastreo de vehículos simple demandando a Arduino, necesitaremos los siguientes componentes.
- Arduino UNO
- Módulo GSM
- Módulo GPS
- LCD de 16x2
- Fuente de alimentación
- Conexión de cables
- BOTE DE 10 K
¿Cómo se puede utilizar el módulo GSM para rastrear la ubicación?
GPS significa Sistema de Posicionamiento Global y se utiliza para detectar la latitud y longitud de cualquier ubicación en la Tierra, con la hora UTC exacta (Hora Universal Coordinada). El módulo GPS es el componente principal de nuestro proyecto de sistema de seguimiento de vehículos. Este dispositivo recibe las coordenadas del satélite para cada segundo, con fecha y hora.
El módulo GPS envía los datos relacionados con la posición de seguimiento en tiempo real y envía tantos datos en formato NMEA (vea la captura de pantalla a continuación). El formato NMEA consta de varias oraciones, en las que solo necesitamos una oración. Esta oración comienza en $ GPGGA y contiene las coordenadas, la hora y otra información útil. Este GPGGA se refiere a Datos de reparación del sistema de posicionamiento global. Conozca más sobre la lectura de datos GPS y sus cadenas aquí.
Podemos extraer las coordenadas de la cadena $ GPGGA contando las comas en la cadena. Suponga que encuentra la cadena $ GPGGA y la almacena en una matriz, luego la latitud se puede encontrar después de dos comas y la longitud se puede encontrar después de cuatro comas. Ahora, esta latitud y longitud se pueden colocar en otras matrices.
A continuación se muestra la cadena $ GPGGA, junto con su descripción:
$ GPGGA, 104534.000,7791.0381, N, 06727.4434, E, 1,08,0.9,510.4, M, 43.9, M,, * 47
$ GPGGA, HHMMSS.SSS, latitud, N, longitud, E, FQ, NOS, HDP, altitud, M, altura, M,, datos de suma de comprobación
Identificador |
Descripción |
$ GPGGA |
Datos de corrección del sistema de posicionamiento global |
HHMMSS.SSS |
Hora en formato de horas, minutos, segundos y milisegundos. |
Latitud |
Latitud (coordinada) |
norte |
Dirección N = Norte, S = Sur |
Longitud |
Longitud (coordinada) |
mi |
Dirección E = Este, W = Oeste |
FQ |
Corregir datos de calidad |
NOS |
No. de satélites en uso |
HPD |
Dilución horizontal de precisión |
Altitud |
Altitud desde el nivel del mar |
METRO |
Metro |
Altura |
Altura |
Suma de comprobación |
Datos de suma de comprobación |
Explicación del circuito para interconectar GSM y GPS con Arduino:
Conexiones de circuito de este proyecto de sistema de seguimiento de vehículos es simple y se muestra en la imagen de abajo. Aquí el pin Tx del módulo GPS está conectado directamente al pin digital número 10 de Arduino. Al usar Software Serial Library aquí, permitimos la comunicación serial en los pines 10 y 11, y los hicimos Rx y Tx respectivamente y dejamos abierto el pin Rx del Módulo GPS. Por defecto, los pines 0 y 1 de Arduino se utilizan para la comunicación en serie, pero al usar la biblioteca SoftwareSerial, podemos permitir la comunicación en serie en otros pines digitales del Arduino. El suministro de 12 voltios se utiliza para alimentar el módulo GPS.
Los pines Tx y Rx del módulo GSM están conectados directamente al pin Rx y Tx de Arduino. El módulo GSM también se alimenta con una fuente de 12v. Los pines de datos D4, D5, D6 y D7 de una pantalla LCD opcional están conectados al pin número 5, 4, 3 y 2 de Arduino. El pin de comando RS y EN de la pantalla LCD están conectados con el pin número 2 y 3 de Arduino y el pin RW está directamente conectado a tierra. También se utiliza un potenciómetro para configurar el contraste o el brillo de la pantalla LCD.
Sistema de seguimiento de vehículos basado en GSM y GPS usando Arduino - Funcionando
En este proyecto, Arduino se utiliza para controlar todo el proceso con un receptor GPS y un módulo GSM. El receptor GPS se utiliza para detectar las coordenadas del vehículo, el módulo GSM se utiliza para enviar las coordenadas al usuario por SMS. Y una pantalla LCD opcional de 16x2 también se utiliza para mostrar mensajes de estado o coordenadas. Hemos utilizado el módulo GPS SKG13BL y el módulo GSM SIM900A.
Cuando estemos listos con nuestro hardware después de la programación, podemos instalarlo en nuestro vehículo y encenderlo. Entonces solo necesitamos enviar un SMS, “Track Vehicle”, al sistema que se coloca en nuestro vehículo. También podemos usar algún prefijo (#) o sufijo (*) como #Track Vehicle *, para identificar correctamente el inicio y el final de la cadena, como hicimos en estos proyectos: Automatización del hogar basada en GSM y Tablón de anuncios inalámbrico
El mensaje enviado es recibido por el módulo GSM que está conectado al sistema y envía los datos del mensaje a Arduino. Arduino lo lee y extrae el mensaje principal de todo el mensaje. Y luego compárelo con el mensaje predefinido en Arduino. Si se produce alguna coincidencia, Arduino lee las coordenadas extrayendo $ GPGGA String de los datos del módulo GPS (el funcionamiento del GPS se explicó anteriormente) y lo envía al usuario mediante el módulo GSM. Este mensaje contiene las coordenadas de la ubicación del vehículo.
Interfaz GAM y GPS con código Arduino para rastrear la ubicación del vehículo
En la primera parte de programación, incluimos bibliotecas y definimos pines para la comunicación en serie de LCD y software. También defina alguna variable con matrices para almacenar datos. La biblioteca serial de software se utiliza para permitir la comunicación serial en los pines 10 y 11.
#incluir
Aquí la matriz str se usa para almacenar el mensaje recibido del módulo GSM y gpsString se usa para almacenar la cadena GPS. char * test = ”$ GPGGA” se usa para comparar la cadena correcta que necesitamos para las coordenadas.
Después de eso, hemos inicializado la comunicación serial, el módulo LCD, GSM y GPS en la función de configuración y mostramos un mensaje de bienvenida en la pantalla LCD.
configuración vacía () {lcd.begin (16,2); Serial.begin (9600); gps.begin (9600); lcd.print ("Seguimiento de vehículos"); lcd.setCursor (0,1);……………
En la función de bucle recibimos mensaje y cadena de GPS.
bucle vacío () {serialEvent (); if (temp) {get_gps (); rastreo(); }}
Las funciones void init_sms y void send_sms () se utilizan para inicializar y enviar mensajes. Utilice el número de teléfono celular de 10 dígitos adecuado en la función init_sms .
La función void get_gps () se ha utilizado para extraer las coordenadas de la cadena recibida.
La función void gpsEvent () se utiliza para recibir datos GPS en el Arduino.
La función void serialEvent () se utiliza para recibir mensajes de GSM y comparar el mensaje recibido con el mensaje predefinido (Track Vehicle).
void serialEvent () {while (Serial.available ()) {if (Serial.find ("Rastrear vehículo")) {temp = 1; romper; }…………..
La función de inicialización 'gsm_init () ' se utiliza para inicializar y configurar el módulo GSM, donde en primer lugar, el módulo GSM se verifica si está conectado o no enviando el comando 'AT' al módulo GSM. Si se recibe una respuesta OK, significa que está listo. El sistema sigue comprobando el módulo hasta que esté listo o hasta que se reciba "OK". Luego, ECHO se apaga enviando el comando ATE0; de lo contrario, el módulo GSM repetirá todos los comandos. Luego, finalmente, la disponibilidad de la red se verifica a través de 'AT + CPIN?' comando, si la tarjeta insertada es la tarjeta SIM y el PIN está presente, da la respuesta + CPIN: LISTO. Esto también se comprueba repetidamente hasta que se encuentre la red. Esto se puede entender claramente en el video a continuación.
Compruebe todas las funciones anteriores en la sección de códigos a continuación.