lunes, 7 de agosto de 2017

Leyendo GPS MikroElektronika Ublox LEA 6S con BusPirate

Hoy realizare un breve tutorial de como leer datos proveniente del GPS Ublox LEA 6S con Bus Pirate.

El Hardware
Para la comunicación utilizaremos el protocolo UART.

Lo primero que realizaremos es la conexión de los pines de alimentación 3.3v y GND a nuestra placa GPS, los pines los podemos visualizar en la Fig 1.
Fig 1. Distribución de pines de placa GPS

A continuación vamos a conectar los pines del Bus Pirate MISO y MOSI a TX y RX del GPS, respectivamente ver Fig 2.
Fig 2. Distribución de pines en Bus Pirate

Software
Para usar Bus Pirate en Linux debemos tener configurado el programa minicom, si no recuerdan pueden visitar esta otra entrada, entramos y configuramos los siguientes parametros: 
  • Presionamos m  escogemos opción 3 Fig 3.
  • utilizamos 9600 bps opción 5
  • 8, NONE *default opción 1
  • Stop bits 1 *default opción 1
  • Polarity Idle 1 *default  opción 1
  • Output Type Normal (H=3.3V, L=GND) opción 2


Fig3. Configuración inicial del modo en Bus Pirate
Una vez realizado esto debemos encender las fuentes de alimentación de Bus Pirate, esto se logra poniendo una W mayúscula en consola.

Una vez realizado esto debemos poner el macro de UART en modo Monitor, esto lo hacemos escribiendo en consola (2) y a continuación comenzaremos a tener salidas de este tipo:
 

$GNGSA,A,3,87,71,,,,,,,,,,,2.20,1.18,1.86*12
$GPGSV,4,1,15,02,61,05,26,05,3,138,32,0,15,054,1,09,02,01,*7F
$GGSV,4,2,1,12,52,16,32,19,00093,,20,0,180,,21,0,232,*7C
$GPGSV,4,,15,46,28148,,48,3,193,31,1,32,159,4531,22,07,18*7B
$GLGS,2,1,05,7,07,010,1,71,30,05,29,72,25114,21,7845,300,*6
$GLGSV2,2,05,8767,017,215B
$GNGL,3725.5402,N,1220508739,W,03123.00,AD*61
$GNRMC,023123.20,A,3725.54083,N,12205.08740,W,0.064,,240516,,,D*73
$GNVTG,,T,,M,0.064,N,0.118,K,D*32
$GNGGA,023123.20,3725.54083,N,12205.08740,W,2,09,1 
 
 
Y eso es todo amigos les dejo material extra, que deben encontrar interesante para desarrollar sus aplicaciones con GPS.
Saludos