Una duda en gps...

¡Hola!

No se si es el sitio mas adecuado para hacer esta pregunta.....

¿alguno ha programado GPS?. mejor dicho, ha realizado alguna aplicación para leer datos del GPS en formato nmea?.

Es que algunos comandos que recibo del gps tiene un checksum y no se como se calcula. No encuentro información o bien (casi seguro) no conozco las plegarias adecuadas para google. ?alguien puede ayudarme?

Reply to
Carmelo J. Morales Muñoz
Loading thread data ...

formatting link
formatting link

Reply to
Packetin

Gracias!... voy a ver si lo encuentro...

Reply to
Carmelo J. Morales Muñoz
¡Hola!

Solo por si a alguien le pudiese servir.... El checkSum en una trama en formato nmea es la función XOR de todos los datos de la trama a excepción de la cabecera ($) y de la finalización (*).

En fin, ahora me hace falta realizar auna aplicación en el pc para leer alguna trama y vericiar.

Un saludo!

Reply to
Carmelo J. Morales Muñoz

¿ y para qeu quieres comprobar el checksum ? Yo tengo varios montajes con pastillas GPS de Falcom, y paso olímpicamente del cheksum. Extraigo de cada comando, la información y chimpum.

Puedes usar el hiperterminal, para visualizar los comandos NMEA, o leerlos con un PIC, y volcarlos a un LCD, es bastante simple.

Reply to
KT88

Si, pero para mi es muuyyyyy importante no leer una trama errónea, no puedo permitirme el lujo de que por casualidad una de las lecturas no sea correcta, por eso la descartará en caso de que el checksum no concuerde.

Lo del hiperterminal lo he probado, el gps empieza a transmitir un bucle de comandos constantemente, en un principio pensé que tendría que ir interrogando al gps, pero por lo que veo se comunica en un solo sentido.

Gracias por tus observaciones, nos leemos!

Reply to
Carmelo J. Morales Muñoz

Bueno si es para una aplicación crítica, si que tiene sentido comprobar el checksum. Yo hace tiempo tuve un proyecto consistente en montar un sistema de guiado asistido por GPS, para un aeromodelo (al final todo se quedo en un proyecto, por falta de tiempo) ,y seguramente hubiera comprobado el checksum, para evitar problemas.

Como dato curioso, en la gama alta de los GPS de Garmin, es decir el Street Pilot, como hardware adicional, al guiado, lleva un sistema que entra en funcionamiento cuando se pierde la señal GPS (tunel, ciudades con altos edificios..etc..), que consiste en unos giróscopos, má s la señal que proporciona el velocímetro del automóvil.

Hace poco le vendí a un cliente uno de estos chismes (el hombre quería lo mejor, "usea", lo más caro, para su Jaguar), probamos el sistema desconectando la antena del GPS, y ciertamente durante un largo de trayecto razonable, se comportó bastante bien.

No creo que sea dificil localizar el cálculo del checksum, para las tramas NMEA.

PD: ¿ no estarás construyendo un misil teledirigido ? XDD

Reply to
KT88

bueno, se me ha olvidado que talvez el mero uso de verificar este dato ocupe demasiado en la memoria del pic, pero para mi es muy importante que las lecturas sean 100% fiables, ya que es para un pequeño sistema de seguimiento y seguridad, no puedo permitirme pedirle la última localización que tubo el vehículo y que resulte haber sido una mala lectura de datos y me mande a china a buscar el coche!

Muchas gracias por todo!

Reply to
Carmelo J. Morales Muñoz

Te recuerdo que las pastillas basadas en el chip SirfII (osea la mayoría), incluyen un sistema de loggin, que permite almacener las 100.000 últimas posiciones (amén de velocidad, y otros datos...), todo eso sin despeinarte el tupe, con malavarismos programados en un PIC.

Solo tendrás que recuperar esa información por el puerto serie, cuando la necesites. Puedes activar o desactivar el sitema, volcarlo y vaciarlo cuando lo necesites.

Es una utilidad, que utilizan la totalidad de sistemas de ruteo y localización, y que no precisa hardware adicional. Supongo que no almacenará tramas erroneas, pero para salir de dudas mira en el datasheet del chip SirfII.

Reply to
KT88
¡Hola!

No había visto nada sobre ese chip, la verdad es que las pruebas las estoy haciendo con un gps que me compré por Andorra hace ya 3 años. Un garmin e-map. Como le doy poco uso y el gps tiene posibilidad de conexión de antena ext. he pensado en montar algo lo mas reducido posible. en principio con este gps, pero si sale bien pensaré en adquirir lo que comentas, tiene muy buena pinta eso de poder recuperar un buen nº de puntos por donde ha pasado.

espero que no se me quede corto el 16f877, ya que quiero controlar también el bloque de bomba combustible, (creo que las profesionales solo lo cortan cuando está por debajo 60km/h). Activación claxon y luces emergencia etc. Para esto utlizaría el modem gsmbase que me he comprado en xacom y que estoy a la espera de recibir en la semana entrante. (145? para los interesados + portes que espero sean pocos).

He visto otros, por menos de 100?, listos para montar en placa y que puede salir un poco mas económico, pero para empezar he querido ir a lo seguro.

Lo del cálculo del checksum lo haré en principio en C del ccs, luego lo pondré el algoritmo cuando esté 100% seguro por aquí a ver si los expertos del asm pueden optimizarlo (que lo doy por seguro).

Nos leemos.

bye! "KT88" escribió en el mensaje news: snipped-for-privacy@uni-berlin.de...

incluyen un

(amén de

malavarismos

necesites.

necesites.

localización, y que no

en el datasheet

ocupe

seguimiento

el

Reply to
Carmelo J. Morales Muñoz

Una pastilla FALCOM JP7, tiene el tamaño de un sello de correos, y es de montaje en superficie. Muy fácil de soldar, y de utilizar. Emplea el chip SirfII (como casi todos los GPS actualmente), y solo precisa una antena externa, que las hay también muy baratas.

Para las primeras pruebas, si ya tienes un GPS de Garmin, está bien, pero para el producto final, te quedará mucho más compacto y ligero montar una pastilla GPS en el PCB. Además son muy baratas.

Yo hace tiempo, que me pasé al PIC18F252, con el doble de memoria de programa. Además como los recibo por sampleo, me cuestan lo mismo XD.

¿ como vas a activar-desactivar el sistema ? Normalmente los localizadores, se montan en combinación con un sistema de alarma convencional, de manera que el sistema GSM-GPS se dispare con alguna señal de la propia alarma. Si no lo haces así necesitarás algún sistema con mando de llavero (más el receptor), o algún interruptor oculto, más una temporización, para dar tiempo a salir del vehículo, o entrar y desactivar.

Está bien para prototipos. Para montajes deifnitivos, un Telit, te ofrece, de nuevo, un montaje más compacto. Y para los más vagos, está el Stepp, que ya lo integra todo, pero sin aliciente para el aficionado al "hágaselo Ud mismo".

Cuidadín con esos módulos, emplean zócalos MOLEX de muuuuchas patitas, con pasos muy finos (0.025mm). Si consigues hacer el PCB y soldar el MOLEX, son la solución ideal.

Samplea un PIC18, y deja el assembler, para los masoquistas. El C, no solo es beneficioso en el periodo de desarrollo, sino incluso más todavía, para realizar modificaciones futuras.

Hay mucha gente, acostumbrada al assembler, imprescindible cuando los microcontroladores solo disponían de 256bytes, o en el mejor de los casos 1K, eso ya es historia.

Reply to
KT88

"KT88" escribió en el mensaje news: snipped-for-privacy@uni-berlin.de...

Street Pilot, como

funcionamiento cuando se

consiste en unos

Los que monta Seat opcionalmente también funcionan así XDD

Un saludo Joan

Reply to
ReSeT

Verificar un checksum es cosa de niños, y ocupa poquísimo espacio en el programa. Como suelen utilizarse operaciones que cumplen la ley asociativa, como el XOR o la suma, puedes ir calaculando conforme vas recibiendo. Por ejemplo, si es XOR, empiezas una trama inicializando una variable a 0, y luego cada vez que recibes un byte, haces un XOR del byte recibido con la cariable, y guardas el resultado en la variable. Luego, al final de la trama, si la variable vale 0 (o FF, según el sistema usado), el checksum es correcto. En total usas un byte de RAM y 8 o 10 instrucciones de código, y no necesitas más de 2 o 3 ciclos de programa por byte recibido, más otros 3 o 4 para la comprobación final.

--


Saludos de Jose Manuel Garcia
jose.mgg@terra.es
http://213.97.130.124


"Carmelo J. Morales Muñoz"  escribió en el mensaje
news:0M7cd.162783$r4.6003771@news-reader.eresmas.com...
> bueno, se me ha olvidado que talvez el mero uso de verificar este dato
ocupe
> demasiado en la memoria del pic, pero para mi es muy importante que las
> lecturas sean 100% fiables, ya que es para un pequeño sistema de
seguimiento
> y seguridad, no puedo permitirme pedirle la última localización que tubo
el
> vehículo y que resulte haber sido una mala lectura de datos y me mande a
> china a buscar el coche!
>
> Muchas gracias por todo!
>
>
Reply to
Pepitof
¡Hola!

La verdad es que aún no estoy en codificación del pic, estoy haciendo pruebas primero programando en PC, despues pasaré a el pic. Lo del algoritmo que plantes es muy simple, además que lo has explicado muy bien. Vas haciendo xor byte a byte y como ha de coincidir con el último valor leido, que ha de ser el mismo valor, por tanto si todo es OK dara = 0.

conforme vaya avanzando iré dando información (y conforme me vaya atrancando ;) ) una vez finalizado lo colocaré en web por si interesa, la idea es utilizar componentes sencillos de encontrar.

Un saludo!

Reply to
Carmelo J. Morales Muñoz

Muy interesante lo del falcom, gracias por tus puntualizaciones, las iré teniendo en cuenta. Solo he pedido samples 2 veces a microchip, veré a ver si esta vez me los envian también, la última vez que pedí fué hace 3 meses. he leido en el foro que han *capado* algunos dominios, espero el mio no esté entre los afectados.

seguimos en contacto, gracias por tu ayuda!

bye!

Reply to
Carmelo J. Morales Muñoz

programa. Además como

Pues voy a pedir si puedo esta misma noche, a ver si me salen por el mismo precio que la vez anterior.

La idea es que el sistema esté "Siempre" en vigilancia, es decir, a la espera de ordenes (mediante SMS entrantes). De este modo siempre ha de estar controlando la posición de GPS, asegurarse que es válida y almacenarla. (por si hago una petición de posición y no hay covertura gps pero si gsm que me diga cual fué la última lectura correcta).

El consumo estimo que ha de ser mínimo, por eso quiero que siempre esté activo. Si quiero localizar el vehículo podría enviar un SMS con texto:POSICION, y la centralita devería devolver coordenadas (que mediante mapa movil en PDA o mapsource, Tomtom navigator, etc puedo ver exactamente donde es)

También he pensado en enviar un segundo comando TRACE, para que me envie posición, dirección y velocidad cada 5 minutos, por si el vehículo está en movimiento no tener que ir pidiendo estado.

Otra orden sería: BLOQUE, que cortaría bomba combustible (o algo similar) y activaria claxom y señalización de emergencia, daría mucho el cante un vehículo así.

Y luego claro está el comando RESET para volver a modo normal, abriendo nuevamente los releds, etc.

Lo que no tengo claro es:

¿como diseñar un sistema para que en caso de desconexión de batería pueda alimentarse de un sistema auxiliar ?. Teniendo en cuenta que ha de alimentarse del vehículo, un cargador podría agotar rápidamente batería principal. Había pensado en una batería ya cargada, comandada por un rele, que si le falta la alimentación conmutaría y daría paso a alimentación de reserva.

Otra idea, es poder conectar este invento a un ordenador y poder acotar una superficie mediante 2 coordenadas, y que si el vehículo sale de esa área te mande un SMS. Para activar desactivar esta función se podría colocar un interruptor oculto en salpicadero. Por ejemplo: Yo no tengo mando a distancia visible de puerta de mi garage, tengo un botón mas en el salpicadero del vehículo que pulso y está conectado al mando Mastercode de Clemsa. Ventajas, nunca se agota batería. Inconvenientes: El mando no te lo puedes llegar contigo.

En fin, me he enrrollado mucho, iré poco a poco.

alarma

de la propia

receptor), o

del vehículo, o

Yo he pensado que siempre esté en vigilancia (alimentado) y a la espera de órdenes (o que salga del espacio acotado).

de nuevo, un

aliciente para el

Vi los de telit, si no me equivoco se compra el modem y una placa para montarlo, aunque también hay opción de un conector de 50 pines que me da algo de *miedo*

puede

seguro.

pasos muy finos

ideal.

Pues no me veo muy capaz, por heso he comenzado en el gsm Base de xacom.

todavía, para

microcontroladores

historia.

Yo es que aún uso pic16f84 para un viejo y rudimentario sistema de almarma mediante movil, y me va muy justo de memoria, pero sigo con C de CCS. Hago en 5 minutos lo que tardava días en realizar en assembler.

bye!

Reply to
Carmelo J. Morales Muñoz

Mmmm...., pero entonces lo tuyo no es un sistema de alarma, con localización. Los sistemas que yo empleo, se disparan y envían un SMS, en cuanto algún chorizo entra al vehículo.

Aparte de eso, puedes pedir posición enviando un SMS, y también activar puertos de salida, para desactivar motor (muy peligroso por cierto, si el vehículo está en marcha), activar claxon, luces, etc...

Es decir, una cosa sería un sistema de alarma, con localización por GSM-GPS, y otro un sistema de traceo para controlar, la típica flota de vehiculos, como lo que utilizan la mayoría de agencias de transporte, servicios de taxis, policia etc...

Aquí se trata de controlar donde se encuetra ubicado cada vehículo, a petición de la centralita.

Y una cosa MUY IMPORTANTE, para no arruinarte, si vas a hacer peticiones frecuentes, de posición, usa GPRS y no GSM, para que tarifique por datos y no por tiempo.

La pastilla GPS de FALCOM que te he mencionado, se puede poner en modo de bajo consumo enviándole un comando. El GSM ya es otro cantar, si debe estar siempre alerta a una petición. De todas formas el consumo alto (1 amperio o más), solo se dispara en emisión, en recepción es muy moderado.

Eso lo permite hacer el Stepp, entre otras muchas cosas.

Si, pero si no has detectado que te han robado el vehículo, igual cuando pides posición ya es tarde, sobre todo en un vehículo de lujo, que va directo a un container, para aislarlo de señales RF. Por eso te comenté lo del sistema de activación-desactivación, como si fuera una alarma, y no un control de posicionamiento con petición desde la centralita, que son 2 cosas muy diferentes.

Los módulos Stepp, incluyen una batería interna de backup, que se activa ella sola, cuanto falta tensión de alimentación. Yo me olvidaría de los relés, consumen mucho, y si lo vas a activar cuando falta tensión externa, chupará de la batería del GSM-GPS, mal rollo es ese.

Joer, todo lo que estás describiendo lo hace el Stepp, igual te ahorro tiempo y te aporto ideas, mírate esto (ojo, no para que lo compres, si no para que pilles ideas):

formatting link
Descargate los manuales de hardware, y sobre todo del software (también puedes bajar el software, para ver las posibilidades que ofrece). En el Stepp, eso se llama Geofencing, y permite definir zonas de coordenadas, fuera de las cuales se dispara una alarma, con el envío del SMS correspondiente.

Más fácil es configurarlo todo con SMS.

Bueno, es una forma de dispararlo, pero si coges tú el coche, en cuanto salgas de esa zona, empezará a mandar SMS como un loco, no parece un sistema muy controlado. Lo habitual es o, se activa-desactiva con mando a distancia, o se dispara con la alarma del vehículo, si lo vamos a utilizar como un sistema de alarma con localizador. Si es para controlar flotas de vehículos es otro cantar.

Esos zócalos son muy complicados de soldar, pero eso ocurre con TODOS los módulos GSM (Telit, Falcom, Xircom, Siemens etc..).

Yo el assembler lo abandoné hace mucho tiempo, es entretenido, pero una castaña de mucho cuidado.

Reply to
KT88

Creo que me has hecho cambiar un poco de idea respecto al diseño, no cuesta casi esfuerzo rediseñar un poco el hardware para que también sirva como centralita de alarma o para conectarla a alguna ya existente. Lo tendré en cuenta.

saludos!

Reply to
Carmelo J. Morales Muñoz

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.