Utilización de GPS USB en TurtleBlocks
Integrantes
- Fabio Ramos
- Gabriela Gallo
- Pablo Grill
Tutores
- Federico Andrade
- Andrés Aguirre
Tema elegido
Agregar un bloque en la paleta que permita utilizar un sensor gps usb.
Proceso del grupo
Tareas en proceso y finalizadas
-
Investigar funcionamiento de gps diferencial: distintos protocolos, teoría, etc -
Revisar funcionamiento NTRIP -
Investigar existencia de servidores NTRIP en uruguay -
Investigar opciones para implementar GPS Diferencial con un gps dongle -
Probar prestaciones de GPS dongle del laboratorio. - Compilar y generar gpsd (biblioteca para utilización del gps dongle) en las dos arquitecturas y de forma estática.
- Generar una nueva paleta para butia.
Minuta de reuniones con tutores
2014-02-28
- Participantes: Andrés Aguirre, Fabio Ramos, Gabriela Gallo, Pablo Grill
- Temas tratados:
- Se define objetivo del proyecto: Utilizar la funcionalidad de un GPS dongle en los butia, agregandole valor a sus prestaciones implementando GPS diferencial. La razón de utilizar un GPS dongle es basicamente que costo, muy inferior a otros tipos de GPSs de mejores prestaciones.
- Pasos a seguir:
- Investigar sobre GPS diferencial y documentar resultados.
- Investigar bibliotecas que implementen la corrección para GPS diferencial, por ejemplo RTKLib
- Elaborar un prototipo basado en modelo diferencial, usando lo máximo posible del estado del arte. (puede ser por ejemplo RTKLIB)
- intefaz python y si no hay se hacen o bien por socket, o bien por binding
- Integrar el prototipo a la Paleta butia:
- obtener latitud y longitud como servicio básico.
- Otras ideas:
- grabar secuencias.
- ir a tal punto (pasando latitud y longitud)
- reproducir secuencias
- tomar distancias
- Investigar si existen servidores NTRIP en Uruguay y en particular en FING
2014-04-10
- Participantes: Andrés Aguirre, Federico Andrade, Fabio Ramos, Gabriela Gallo, Pablo Grill
- Temas tratados:
- Se discute la inviabilidad de desarrollar GPS diferencial con el hardware de laboratorio (GPS USB Dongle ND-100)
- Pasos a seguir:
- Documentar lo investigado y plasmar las razones por las que implementar GPS diferencial no es posible.
- Integrar el GPS a la paleta butia sin implementar diferencial.
- Compilar gpsd para las dos arquitecturas de XO, y lograr que las bibliotecas queden instaladas bajo el directorio plugin
- Funcionalidades de la paleta:
- Bloque para inicializar el gps
- Bloque para obtener latitud y longitud.
- Funcionalidad de medir trayactoria.
- Luego de indicar 'comenzar a medir', cada cierto periodo de tiempo se irá calculando en base a la latitud y longitud la distancia recorrida. El periodo de tiempo podría llegar a ser configurable desde la paleta. Este parámetro indicara cuan semejante sera el valor a la verdadera trayectoria recorrida. Los bloques necesarios serán:
- - Bloque para comenzar a medir (e inicializar)-> quizá reciba como parámetro un numero indicando los segundos para calcular.
- - Bloque para indicar distancia al momento.
Documentación
Motivación
El robot Butiá posee como una de sus principales características la potencialidad de incluir muchos tipos de sensores. Sin embargo, al momento, la posibilidad de poder sensar las coordenadas geográficas donde el robot se encuentra no era factible. El Sistema de Posicionamiento Global GPS es actualmente una de las principales tecnologías utilizadas para fines de orientación y la integración de esta tecnología al robot Batía puede darle un gran valor agregado. Comenzando por la posibilidad de obtener la posición, así como luego poder implementar funciones más avanzadas que hagan de Butiá un robot más inteligente y adaptable a cualquier escenario. Debido al contexto en el cual se trabaja con Butiá, espacios en general reducidos, el aporte de implementar GPS diferencial, para así obtener información más precisa, es de vital importancia, por lo que se intentará también alcanzar este punto.
Objetivos
Generar en TurtleBots una paleta desde la cual se pueda acceder a servicios de un receptor GPS USB. Adicionalmente, agregar valor a sus prestaciones implementando GPS diferencial en tiempo real.
Introducción
Sistema GPS
El sistema GPS (global position system) está compuesto por una red de 24 satélites que orbitan alrededor de la tierra a unos 20200 km. Dichos satélites emiten continuamente señales para que los receptores en la tierra puedan con ellas determinar su posición. Además los satélites se encuentran coordinados de manera de que se puede mantener toda la superficie de la tierra cubierta. El funcionamiento de un receptor GPS se basa en la simple resolución de un problema matemático de determinar su posición, basándose en la de otros. Para lograr resolver dicho problema, el receptor GPS debe obtener los datos de al menos un conjunto mínimo de satélites (3 para la obtención de una posición de dos dimensiones, 4 para determinar posiciones en tres dimensiones). Fuente de error.
Los GPS, al igual que todo instrumento de medición tienen un margen de error. En el caso de las mediciones GPS, dicho margen depende mucho de la precisión y calidad de los receptores utilizados. Sin embargo también influye mucho las condiciones climáticas y el contexto en que se es este realizando la medición.
Desarrollo del problema
En construcción
Conclusiones
En construcción
Trabajo a futuro
En construcción
Desarrollo del problema
En construcción
Conclusiónes
En construcción
Trabajo a futuro
En construcción
Referencias
- [1] http://uav.tridgell.net/LCA2014/dgps.pdf
- [2] http://rtk-pi.com/
- [3] http://rtk-pi.com/?p=1
- [4] http://gpspp.sakura.ne.jp/paper2005/isgps_2009_rtklib_revA.pdf
- [5] http://wiki.openstreetmap.org/wiki/RTKLIB
- [6] http://makezine.com/2009/11/12/diy-real-time-kinematic-gps/
- [7] http://www.sgm.gub.uy/geoportal/index.php/estaciones-referencia/srv-tr
- [8] http://www.catb.org/gpsd/client-howto.html
- [9] http://www.catb.org/gpsd/gpsd.html
- [10] http://www.catb.org/gpsd/
- [11] http://www.stuffaboutcode.com/2013/09/raspberry-pi-gps-setup-and-python.html
- [12] https://gist.github.com/wolfg1969/4653340
- [13] http://blog.perrygeo.net/2007/05/27/python-gpsd-bindings/