Archivo de la Categoría “GPS”

Hoy vamos a hablar de GPS, o mejor dicho, de GNSS.  Hace pocos días cayo en mis manos un documento, muy explicativo, realizado por mi compañero Jesús Santos a raiz de un nuevo producto lanzado por la empresa Fastrax que muchos conocéis. Creo que puede ser de bastante interés para muchos de vosotros, sobre todo los que os dedicáis al tema de localización. Así que aquí os os pongo el artículo.

¿Qué es GNSS?

GNSS significa Sistema Global de Navegación por Satélite. Vamos, que “módulos GNSS” son eso, receptores de satélites, sean de la marca o país que sean. Lo que pasa es que usamos la palabra receptores GPS para todo lo relacionado con la localización, y está bien indicado, pero no sólo hay ese sistema americano, hay otros muchos:

  • GLONASS sistema Ruso
  •  Beiuou-2/Compass en China
  • QZSS Japón
  • Gagan en India
  • Y esperemos que el Europero Galileo previsto para el 2014 …

Fastrax tiene un módulo GNSS., El IT600 (basado en un chipset de ST). Lo estupendo de este módulo GPS es que puede funcionar tanto con el sistema americano GPS, con el sistema ruso GLONASS, como con ambos de forma simultánea.

Alguno pensará … ¿y esto en que me beneficia?

La respuesta es que el receptor funcionará en las condiciones más extremas. Supongamos una calle con edificios altos (lo que se llama cañon urbano). El receptor no solo podrá ver los pocos satélites GPS, sino que también podrá usar los GLONASS.

Veámoslo con un ejemplo.  Fijaros en el gráfico siguiente. Azul claro satélites GPS. Azul oscuro satélites GLONASS.  Ahí tenéis al módulo IT600 trabajando con 22 satélites simultáneamente.

gps-glonass-it600

  Lee el resto de esta entrada »

Etiquetas:

Comments 1 Comentario »

Como todos ya sabéis, el módem MTX65+G del que he hablado en muchas ocasiones en este blog, es un módem GPRS con GPS integrado. En su interior cuenta con un módulo Cinterion XT65, un módulo muy similar en prestaciones al conocidísimo TC65 (cpu, prestaciones, …) pero el cual incluye además un GPS. Este GPS es un módulo GPS de la casa uBlox, concretamente monta un Antaris 4.

Normalmente, cuando programamos en java el módem MTX65+G (es decir, el XT65) lo hacemos siempre de 2 maneras. O bien usamos la clase ATCommand con el comando que proporciona Cinterion (AT^SGPSR) para leer la posición GPS actual (este es el método más utilizado y en el que yo me incluyo) o bien utilizamos la API Location para J2ME (JSR 179).

Sin embargo, existe otra manera de actuar sobre el GPS. Como sabéis el módulo TC65 dispone de 2 puertos serie y el XT65 sólo dispone de 1. La razón de que sólo disponga de un puerto serie es que el otro lo tiene routeado hacia el puerto serie del módulo GPS que monta, es decir, es el puerto serie con el que el XT65 controla el GPS.

gps-nmea

Lee el resto de esta entrada »

Etiquetas: , , ,

Comments 4 Comentarios »

¡Pero que poco para las vacaciones! :) . La verdad es que este año las necesito de verdad. En esta ocasión me cojo las tres últimas semanas de Agosto. Además de la visita obligada al pueblo, mi chica (y ya mi hijo, que con tres años, para cuatro, habla más ya que una cotorra) me han liado para irnos unos cuantos días a Eurodisney.
 
En fin, hoy, muy brevemente, voy a presentar un nuevo módulo GPS que me ha llamado la antención pues tal vez sea de interés para aquellos que en la actualidad estéis utilizando módulos GPS de uBlox, en concreto me estoy refiriendo a los modelos GPS ublox LEA-4 y LEA-5.
  
Se trata del nuevo módulo GPS de Fastrax IT350 (distribuido por Matrix en España). Éste es un módulo como digo compatible con la huella de los GPS LEA4 y LEA5 de uBlox (mismo tamaño, 22.4×17.0×2.3mm), pero con mejores prestaciones. Por ejemplo, el consumo es mucho menor, pues estamos hablando de un consumo de 75mW frente a los 120mW del uBlox. Si hablamos de la sensibilidad, ésta también es mejor, -143dBM frente a -142dBM. A nivel de precio, otra “prestación” bastante importante en los tiempos que corren ;) , el Fastrax IT350 es bastante más económico que el LEA4.

   
¿Y puedo substituir en cualquiera de mis equipos un GPS LEA-4 ó LEA-5 por un IT350?
 
Pues en la mayoría de los casos sí, aunque no en todos. Por ejemplo no es posible substituir el LEA4 por el IT350 si en nuestros circuitos estamos alimentando el módulo GPS con una tensión inferior a 3V (el fastrax necesita una alimentación de entre 3V y 3.6V). Evidentemente tampoco vamos a poder hacer una substitución directa si estamos utilizando el protoloco binario UBX propio de los módulos de UBlox, ni tampoco si se está utilizando el bus SPI (en el caso del LEA-4) o el I2C en el caso del LEA-5.
 
Aquí van unas fotos del módulo para quien tenga curiosidad:
 
gps ublox lea-4 vs it350 fastrax

 

Etiquetas: ,

Comments No Hay Comentarios »

Hace ya bastantes meses que puse un post acerca del MTXTunnel, si recordáis, un firmware para el módem MTX65 que realiza la función de Gateway Serie-Gprs.

En esta ocasión os presento el MTXGpsTunnel, todavía en versión beta (todavía no disponible), que realiza la función de tunel GPS-Gprs. Es decir, un equipo en el que configurando unos parámetros muy básicos como son, entre otros, la IP y el puerto TCP de destino, envía la posición GPS de forma periódica a dicha IP y dicho puerto.

Que nadie se confunda, esto no es ni pretende ser ni de lejos un sistema de localización completo y acabado, sino un producto base sobre el que desarrollar aplicaciones muy básicas de localización, como pueden ser sistemas de balizas GPS u otras aplicaciones muy sencillas de posicionamiento. Está pensado para aquellas empresas desarrolladoras que no sepan sobre comunicaciones GPRS, necesiten hacer una aplicación de localización sencilla y quieran centrar el esfuerzo únicamente en el software de gestión del servidor. El MTXGpsTunnel no cuenta (ni contará) con gestión de roaming, ni posicionamiento a través de celdas de telefonía, ni ninguna otra característica avanzada y ni mucho menos con un software de gestión detrás.   Es decir, quien necesite implementar un sistema sofisticado de localización GPS deberá programar él mismo el módem. El MTXGpsTunnel es únicamente lo que decía antes, un tunel GPS-GPRS (lo comento antes de que nadie me hable de añadir otras prestaciones, que os conozco ;) , por que no puede ser, esto es lo que es, un equipo sobre el que desarrollar, ni por asomo pretendo hacer una aplicación para usuarios finales).

Satélite GPS

Lee el resto de esta entrada »

Etiquetas: , , , ,

Comments 11 Comentarios »

Desde la semana pasada está disponible el nuevo firmware del módem Siemens / Cinterion XT65 (válido también para el terminal MTX65+G). Concretamente es la versión 2.002 (la anterior, es decir, la que teníamos hasta hoy era la 1.001). Esta es una actualización únicamente de firmware, no de hardware, lo que significa que podemos actualizar nuestros XT65 y MTX65+G con esta nueva versión mejorada de firmware.

Para actualizar el firmware de un XT65 / MTX65+G v1.001 a la nueva versión 2.002 basta con solicitar la herramienta de actualización a vuestro distribuidor de Siemens/Cinterion, para el caso de España, Matrix Electrónica.
 
 
¿Incorpora muchas mejoras la nueva versión de firmware?

Pues sí, el nuevo firmware 2.002 trae consigo bastantes mejoras. No las voy a detallar todas (que es Sábado) pero sí que voy a enumerar las que para mí son las más destacables.

1.- Permite establecer el nombre del fabricante y el “USB vendor ID”.  Ya sabéis, con el comando AT^SCFG podéis configurar el equipo para que cuando alguien conecte por USB el módem a un PC, el nombre que aparezca al detectar Windows el dispositivo no sea Siemens, sino el nombre de vuestra propia empresa o producto.

Cinterion-Siemens-XT65
 

Lee el resto de esta entrada »

Etiquetas: , , , ,

Comments 9 Comentarios »

Seguramente si lees mi blog de tanto en tanto has visto que en alguna ocasión hago referencia a lo que yo llamo software Entrenador de Siemens, pero nunca he explicado del todo en qué consiste este software. Hoy Domingo lo voy a explicar un poquito por encima.

Este software, aunque yo lo llame Entrenador de Siemens, no es de Siemens, sino que sirve para facilitar un poco la introducción a las personas que se inician con los módems de Siemens. Este es un software que programé yo hace ya un año y medio aproximadamente. Es un software que Matrix ofrece gratuitamente a sus clientes. Es como una espécie de hyperterminal de Windows, pero donde tienes una serie de botones clasificados para no tener que escribir los comandos AT ni sabértelos de memoria.

Como he hecho yo este software, si lo estás utilizando y crees que le falta algo (y que puede ser de interés para más gente) puedes aprovechar para decírmelo y lo incluyo en siguientes versiones ;)

El software básicamente puedes utilizarlo con los módems gprs MC55, MC55i, TC63, TC65 y XT65 y los terminales gprs MTX63, MTX65, MTX65+G y TC65T. Si te fijas en la parte superior del Entrenador, puedes ver que está dividido por secciones, como Llamadas de voz, Mensajería SMS, Comunicaciones GPRS, Varios y GPS. En cada una de esas divisiones se encuentran los comandos más utilizados para cada funcionalidad (ojo, sólo he puesto los más básicos, recuerda que hay cientos de comandos AT).

Bueno pues vamos allá, veamos cada una de las secciones. Si haces click con el ratón encima de cada imágen la verás ampliada.
 
 

Llamadas de voz.

En esta pantalla puedes utilizar los comandos AT relativos al audio. Puedes establecer los distintos perfiles de audio (AT^SNFS) así como los distintos interfaces de Audio (AT^SAIC). También puedes cambiar los parámetros de ganancias de entrada y salida de audio (AT^SNFI y AT^SNFO). Si te fijas en la pantalla verás que esto último se modifica con sliders, esos scrolls horizontales de desplazamiento. Esto resulta muy cómodo si quieres ajustar y afinar el audio en tu aplicación.

Desde esta pantalla también puedes introducir el PIN del módem y realizar una llamada de audio. También si te fijas a la derecha hay un teléfono móvil. Una vez establecida una comunicación de audio puedes pulsar el teclado numérico del teléfono para enviar tonos DTMF.

Por último abajo tienes una serie de botoncitos, AT Test, AT+csq, … que son unos comandos utilizados habitualmente y que he puesto ahí por comodidad.
 

Audio modems Siemens

Lee el resto de esta entrada »

Etiquetas: , ,

Comments 18 Comentarios »

Por fin este Sábado he tenido un poquito de tiempo y os puedo poner la tercera y última entrega de la aplicación que prometí a principios de mes y que acabo de terminar. Lo que ha cambiado es lo que dije en la segunda entrega. En esta ocasión la posición GPS no se envía a un número que tengamos grabado en el fichero JAD. Ahora en el fichero JAD sólo tendremos el PIN de la tarjeta SIM por si hace falta.

java.jpg

Entonces, ¿qué es lo nuevo?

Pues ahora si desde un móvil cualquiera se envía un SMS con un texto, el módem MTX65+G va a decodificar el SMS entrante, obteniendo por un lado el nº de teléfono del teléfono que ha enviado el SMS y por otro lado el texto del SMS. Entonces, si se recibe un texto con la palabra:

posicion

el modem coge la posición actual GPS y la envía por SMS al nº de teléfono que envió el SMS.

abrir

el modem activa (pone a “1″) la salida GPIO 0 del módem, con lo que podríamos activar un relé, por ejemplo.

cerrar

el modem desactiva (pone a “0″) la salida GPIO 0 del módem, con lo que podríamos desactivar un relé.

Principalmente se han añadido los métodos al proyecto:
 

int cambiarGPIO(int numGPIO, int valor)

mediante el cual podemos cambiar el estado de una GPIO poniendola a “1″ o “0″. En el ejemplo sólo vamos a utilizar la GPIO número 0.

SMS leerSMS(int posicionDeMemoria)

mediante el cual decodificamos un SMS entrante obteniendo dentro de una clase SMS por un lado el número de teléfono que ha enviado el SMS y por otro lado el texto del mensaje.
 

Quedaría una cosa que no voy a hacer, eso ya os lo dejo a vosotros. Y es que estaría bien que cuando se procese un SMS entrante, después de ser procesado se elimine de la memoria del módem, pues de lo contrario llegará un momento que se llene la memoria del modem de SMSs (como ocurre con cualquier móvil) y no se podrán recibir más. Para ello no habría más que crear otro método que se llamara por ejemplo “borrarSMS” y utilizar el comando AT+cmgd para borrar el SMS una vez procesado. Muy muy fácil.
 
 
Os pongo esta tercera y última entrega aquí.
 
 
Recordar que todo este programa vale tanto para el módulo Siemens XT65 como para el MTX65+G. Para quien le interese estos módems son distribuidos en España por Matrix Electronica
 
 
Espero que os haya gustado y hayáis encontrado de interés estos tres últimos artículos, y que pueda ayudar a aquellos que dáis los primeros pasos con los modems de Siemens ;-)

Comments 125 Comentarios »

Hoy no tengo mucho tiempo así que seré breve. Acabo de modificar un poquito el programa de la primera entrega del programa para el MTX65+G (recordar que lleva un modem Siemens XT65 en su interior).

java.jpg

 He añadido algún método nuevo a la clase:

initGPS (int segundosURC)

este método se encarga de activar el GPS (con el comando AT^SGPSS=1) y programamos al GPS para que nos envíe un mensaje URC con la posición GPS cada X segundos. En el ejemplo lo he configurado para actualizar la posición cada 5 segundos.

enviarSMS (String mensaje, String numero)

este método se encarga de enviar un SMS con el mensaje al número indicado en los parámetros pasados al método. Lo utilizaremos para enviar la posición GPS obtenida a nuestro número de teléfono.

Resumiendo, con esta segunda entrega, tenemos el programa de la siguiente manera:  el programa activa el GPS y va capturando posiciones. En el momento que recibe un SMS se envía a un número determinado la posición GPS también por SMS.

En una tercera y última entrega haré que sólo se envíe la posición GPS al número de teléfono que envíe un SMS al módem con un texto determinado, por ejemplo el texto “leerposicion”. También configuraremos el programita para que al recibir un SMS con el texto “activa” ponga a “1″ una de las señales GPIO digitales y cuando se reciba el texto “desactiva” la ponga a “0″. De esa forma nos será muy simple activar y desactivar un relé.
 

Aquí tenéis el programita para que quien quiera pueda darle un vistazo:  proyectoAlarma2 

 

Espero que os sean de interés estos posts ;-)

Comments 18 Comentarios »

Hace unos días puse que crearía un programita Java para el modem Siemens MTX65+G, ya sabéis el módem terminal que dispone de un módulo Siemens XT65 en su interior que a su vez incorpora un GPS.

Bueno, pues hoy os cuelgo una primera parte del programita que he hecho esta tarde-noche. En unos días os cuelgo la segunda parte. En esta primera entrega, los que no sabéis cómo programar nada de este módulo de Siemens, podéis utilizar este programita como una especie de plantilla para otras pequeñas aplicaciones que vosotros hagáis.

java.jpg

Realmente la aplicación que os cuelgo no hace casi nada, pero es la base para la aplicación final que recuerdo consistirá en que enviaremos un SMS con nuestro móvil al módem MTX65+G, éste lo recibirá y procesará, y si es un SMS válido cogerá la posición GPS y se la enviará también por SMS al móvil (típica aplicación de localización GPS). También haremos que podamos enviar un SMS desde el móvil y que el módem MTX65+G active o desactive una salida digital con la que activaremos / desactivaremos un relé, por ejemplo, para activar nuestro PC de forma remota ;-) .
 

Vale ¿pero qué puedo ver realmente esta primera entrega?

Lo mejor que puedes hacer es dar un vistazo al código fuente, lo he comentado todo para que sea muy clarito.

Algunas cositas del programa:

1.- He creado un timer en java para que veáis como se utilizan. El timer lo único que hace es sacar por el puerto serie del módem el valor de un contador cada segundo.

2.- Utilizo las clases ATCommand y ATList  (de Siemens) que son las que utilizaremos para enviar comandos AT al módem y procesar la respuesta (ATCommand) y la que utilizaremos (ATList) para procesar los mensajes URC (ya sabéis, un mensaje inesperado cuando se recibe una llamada entrante, un SMS, …)

3.- He creado el método setConfigInicial.
En este método configuramos el modem para nuestra aplicación. Enviamos el PIN si es necesario, activamos los mensajes URC para cuando entre un SMS, configuramos los SMS salientes como texto (no PDU) y activamos y configuramos un pin GPIO de salida.
 
 
¿Y cómo lo ejecuto?

Coge los archivos de la carpeta deployed ALARMA.jar y ALARMA.jad y cópialos dentro del módem.  Luego desde el hyperterminal ejecuta el comando AT:
AT^SJRA=”a:/ALARMA.jar”
 
 
¿Y qué veré?

Pues verás cómo en la ventana del hypertérminal algo como esto:

java-siemens-1.gif

es decir, aparece una linea de texto cada segundo.  Si puebas enviar un SMS al módem o haces una llamada, verás como aparecen los mensajes URC (en la figura anterior puedes ver como he hecho una llamada al MTX65+G mientras corría el programa).

Casi se me olvida, podéis bajaros el proyecto de aquí:  proyectoAlarma


Bueno, espero que aquellos que estáis un poco desorientados encontréis de interés esta primera entrega. Si tenéis dudas o comentarios ya me diréis ;-)

 

Comments 127 Comentarios »

Ultimamente he leído bastantes posts (y recibido emails) de lectores de este blog acerca de diseños de localizadores GPS. Pues a los mejor os puede resultar interesante este producto que os presento a continuación.

mtx-65-g.gif

Se trata del nuevo módem terminal (ya sabéis, un modem con caja) MTX-65+G. Este módem dispone de un módulo de Siemens XT65 en su interior, por lo que las prestaciones y comandos AT son los mismos que los de ese módulo. El módulo XT65, si recordáis, ya lo he comentado en alguna ocasión, podéis verlo aquí.


Vale, ¿y qué puedo hacer con este módem terminal?

Pues realmente este módem sólo tiene una razón de ser, aunque muy importante, y es para aquellas aplicaciones en las que se requiera GPS + GSM/GPRS, es decir, aplicaciones en las que se requiera un sistema de localización por satélite (GPS) y el envío de los datos de la posición hacia un servidor remoto (GSM/GPRS).


¿Qué aplicaciones por ejemplo?

Pues bastantes, por ejemplo sistemas de localizaciones de flotas (camiones, taxis, coches de alquiler, …) en los que se requiera tener en una central de datos la ubicación exacta en cada momento de los vehículos de la flota. O sistemas antirobo por GPS. Imagina que te roban el coche o la moto, envías un SMS al equipo y éste te devuelve otro SMS con la posición exacta.


¿Y es muy difícil utilizar este dispositivo?

Para nada. Es como el TC65, es decir, puedes implementar un programita java en su interior que realice las tareas de localización GPS y de comunicaciones GSM/GPRS. Para unas aplicaciones como las que comentaba antes (localización de flotas, o antirrobos GPS) no necesitas más dispositivos que éste. Es decir, no necesitas de dispositivos externos (un PC, un microcontrolador, …) Para que te hagas una idea, realizar una aplicación Java en el interior del módem que consista en recibir un SMS, y que si en ese SMS pone por ejemplo la palabra “posición” leer entonces la posición GPS y devolver un SMS con la posición leída (por ejemplo, un sistema antirrobo por GPS para tu coche :-) ) no creo que tardes más de 1 día en implementarla.

Es más, para que veáis que es cierto, voy a hacer yo la aplicación y publicaré el código fuente íntegro.


¿Qué otras características tiene el módem y para qué pueden servir?

Tiene bus USB (para debuggar tus aplicaciones Java o para usar el módem desde un PC con Windows o Linux)
Bus SPI e I2C (para comunicar el módem con otros periféricos externos)
4 GPIOS (entradas/salidas digitales. No sé, imagina un camión, detectas que se abre la puerta de carga (con una GPIO) y envías un SMS con la posición)
2 ADC (conversor analógico digital). Como el caso anterior, detectas una temperatura baja en un camión frigorífico (con una sonda) y envías un SMS).
2 RS232 (puertos serie). Para comunicarte con el módem, o simplemente para sacar las tramas NMEA del GPS para enviárselas a otro equipo.
Conector de audio. Por supuesto dispone de conector de audio para poder realizar llamadas de voz, con un handset, manos libres, …
2 Conectores de antena. Un conector SMA para la antena GPS y FME para la antena GSM.


Bueno, que disfrutéis lo que queda de Domingo. Espero que los que estéis desarrollando aplicaciones de localización GPS encontréis de utilidad este post
;-)

Comments 52 Comentarios »