Home Brew GPS obtiene una resolución de ± 1 metro con Raspberry Pi

Seguimos el trabajo de [Andrew Holme] y su receptor GPS de cosecha propia durante algún tiempo. Hace unos pocos años, [Andrew] construyó un receptor GPS de cuatro canales desde cero, pero aparentemente eso no fue suficiente para él. Amplió su edificio el año pasado para rastrear hasta ocho satélites, y este mes agregó una Raspberry Pi para un receptor GPS doméstico de 12 canales que funciona con baterías y que tiene una precisión de aproximadamente 3 pies.

El Raspi está vinculado a una placa FPGA que maneja el oscilador local, eventos en tiempo real y rastrea satélites automáticamente. El Pi se ocupa de las matemáticas difíciles pero no críticas en el tiempo a través de una interfaz SPI. Debido a que el Pi está conectado al FPGA a través de una interfaz SPI, también puede cargar el FPGA con aún más código personalizado, posiblemente haciendo que este receptor de 12 canales sea de 16 o 18 canales.

Una pantalla LCD adjunta a la placa FPGA muestra la latitud actual, la longitud y otros datos diversos, como la cantidad de satélites recibidos. Con una batería de iones de litio grande, todo el sistema puede funcionar durante aproximadamente 5 horas; un sistema GPS impresionantemente portátil que compite con las mejores opciones comerciales.

  • Ben dice:

    Sería interesante ver lo fácil que sería agregar soporte GLONASS a este receptor. Por lo que he leído, las frecuencias son “relativamente” cercanas, por lo que podría ser posible con algunos ajustes en la interfaz y, como dije, una actualización de software de la Raspberry Pi.

    • Haka Viro dice:

      El soporte de GLaDOS sería más impresionante.

      • Maz dice:

        O soporte de GoNaD

      • biozz dice:

        Yo apoyo eso

      • Me dice:

        No sé, la papa lo haría bastante pesado, al menos en términos de las expectativas que la gente tiene en los dispositivos portátiles hoy en día. Quizás allá por los años 80 …

    • n_slash_a dice:

      Si bien los códigos GLONASS y GPS están “relativamente cerca”, necesitaría canales de RF separados y programas separados para descifrar las señales. El primer lugar donde podría compartir hardware / programas sería después de que la señal se haya demodulado con éxito.

      • draeath dice:

        SDR no funciona de esa manera. Usted se limita solo al procesar la potencia a la cantidad de ancho de banda (y por lo tanto los canales) con los que puede trabajar.

        • CÓMO dice:

          Están separados por ~ 25MHz (el GPS está centrado en 1575MHz, GLONASS está en 1602MHz) por lo que dependiendo de la interfaz de radio que use, es posible que necesite un sistema de RF separado.

    • Howard Epstein dice:

      Me encantaría tener en mis manos una unidad de trabajo. Digo que trabajo porque me tiemblan mucho las manos para luchar hoy. Entonces ahora me concentré en la programación de cosas.

  • nieve dice:

    bastante impresionante … tengo dos preguntas en mente:
    ¿No sería más práctico un fpga un poco más grande que integrara un procesador virtual que un pi completo?
    y también me preguntaba si alguien alguna vez hizo trampa con antenas de computadora (fractales) y gps para hacer una construcción más compacta.

    • Ryan Voots dice:

      Depende del costo. Por lo que he visto, eso generalmente aumenta el precio de la placa fpga en más de $ 25-35. Definitivamente me gustaría ver uno con una antena fractal PCB.

  • adfgdds dice:

    Lo interesante de esto es que todos los chips gps disponibles comercialmente tienen algunas características de seguridad que apagan el dispositivo moviéndose más rápido que unos 100 km / h. Esto está destinado a evitar que pepole construya misiles de crucero / cohetes o drones rápidos o similares. con un receptor GPS abierto es posible ignorar estas cosas.
    buen trabajo entre nosotros. que realmente se parece a una gran cantidad de optimización de tiempo fpga.

    • Pato dice:

      La próxima semana,

      ¡Misil lanzador impreso en 3D con scratch-brain!

      • Sólo yo dice:

        ¡No puedo esperar!

      • Michael Bishop dice:

        y opencv identifica objetivos con la cámara rpi oficial que acaba de aparecer.

        • Thanh dice:

          Entonces se regulará Scratch / FPGA

          • cazador dice:

            ¿Ya no se exporta una FPGA grande?

      • Martín dice:

        Probablemente el mayor problema con esto sería obtener el filamento impreso para la “carga útil” 🙂

    • ioag dice:

      en la wiki:
      En la tecnología GPS, la expresión “Límites COCOM” también se utiliza para referirse a un límite establecido para los dispositivos de rastreo GPS, que deben deshabilitar el rastreo cuando el dispositivo advierte que se mueve a más de 1000 nudos (1900 km / h; 1200 mph) a una altitud superior a 60.000 pies (18.000 m).[2] Esto tenía como objetivo evitar el uso de GPS en cohetes balísticos intercontinentales.

      si puede permitirse construir un dron que vaya a 1900 km / h, realmente no le importaría este límite.

    • Ilektronx dice:

      Si esto fuera cierto, entonces su avión promedio estaría con GPS incluso antes de despegar.

      Las limitaciones de los receptores GPS comerciales son reducir el costo y la cantidad de correlacionadores necesarios en un chip. Los límites también le permiten configurar los filtros en un chip con mayor precisión en una dinámica de sistema más baja.

      • vpoko dice:

        Es cierto, pero la publicación no era correcta. Los receptores GPS deben cerrarse si se encuentran a una altitud superior a 60.000 pies y a una velocidad superior a 1.000 nudos (1.200 mph). Los receptores militares están excluidos de estas restricciones (conocidas como restricciones COCOM).

        • radion39 dice:

          Los fabricantes de receptores GPS a veces imponen límites incluso más bajos, uno común es malinterpretar COCOM con OR en lugar de AND. Esto provoca cierto dolor de cabeza a un globo aficionado, se mueven lentamente pero superan fácilmente los 60.000 pies.

    • Brian Benchoff dice:

      La forma en que se lleva a cabo esta especificación (60000 pies AGL && 1000 nudos) solo se cierra si va a más de 1000 nudos. Honestamente, no conozco demasiados proyectos de pasatiempos fuera de un cohete de alta potencia que exceda esa especificación.

  • Ilektronx dice:

    Esto NO compite con los productos comerciales. Perdón. ¡Pero es impresionante! “La mejor solución hasta ahora ha sido ± 1 metro en un lugar muy abierto con 12 satélites; pero la precisión suele ser de ± 5 metros en ubicaciones más pobres con menos satélites. “

    • Ingenuo de patas azules dice:

      ¿Qué tan precisos son los productos comerciales con precios comparables?

      • Cian Martín dice:

        Por lo general, de 5 a 10 metros para sistemas GPS en automóviles.

        Creo que hay una solución de software en la interfaz de usuario para que su automóvil no se salga de las marcas de la carretera.

        • Steve Spivey dice:

          No, el * mapeo * se corrige para que parezca que todavía estás en camino. Esto hace que la persona promedio piense que el dispositivo funciona mejor de lo que realmente funciona.

          • John dice:

            El GPS ublox o sirf de última generación le ofrecerá menos de 10 pies de precisión incluso sin una vista clara del cielo.

          • Sanjay dice:

            No es cierto del todo. Conduje fuera de mi hombro en una carretera y mi GPS mostró claramente que estaba conduciendo paralelo a la carretera, pero no en ella.

          • cazador dice:

            Una vez tuve un archivo con una pista de un dispositivo basado en Sirf Star III. Fue bastante “interesante”, mostrando que crucé los techos y así sucesivamente.
            Lo grabé mientras patinaba, el dispositivo GPS estaba en mi mochila (y ciertamente recuerdo que no hice acrobacias tipo Spiderman). El error más grande fue de unos 30 metros.

            Consulte también aquí: http://vitus-wagner.livejournal.com/195317.html (pero no se especificó el modelo de GPS).

            En cuanto a las unidades GPS para automóviles, sospecho firmemente que utilizan tanto la navegación inercial como la señal GPS.

  • Chris C. dice:

    Me pregunto si dos de estos podrían implementar DGPS.

    Teóricamente, DGPS suena simple: solo necesita dos dispositivos habilitados para GPS (una línea fija y un móvil) y algo de comunicación entre los dos. Muchos de los errores de posicionamiento no son causados ​​por el receptor y son bastante constantes en áreas extensas. Entonces, al tomar el error detectado por el dispositivo fijo y transmitirlo al teléfono móvil donde se resta, se obtiene un resultado mucho más preciso.

    Por curiosidad, hice un poco de Googlis un poco antes para ver si alguien lo había hecho con éxito con módulos de GPS baratos comunes. Encontré solo una prueba, creo que fue en los foros de Parallax. Fue un error, la precisión se deterioró y no se pudo determinar la razón. IIRC se sospechaba que los módulos estaban rastreando diferentes conjuntos de satélites y, por lo tanto, estaban sujetos a diferentes errores que no podían eliminarse diferencialmente; sin embargo, los módulos utilizados no proporcionaron suficiente información para probar o solucionar este problema.

    Con este GPS tienes acceso, bueno, a todo. Hacer GPS desde cero no es seguro, seguro. Pero si también pudiera brindar una capacidad DGPS relativamente barata a los aficionados donde actualmente parece no haberla, entonces sería asombroso.

    No soy un experto en GPS, así que corrija todo lo que dije que es incorrecto. Especialmente si DGPS fue pirateado con éxito, me encanta ver un enlace a eso.

    • Erik Johnson dice:

      Esto solo funcionaría si la fluctuación es idéntica en ambas coordenadas y los mismos momentos para ambos dispositivos. La razón del deterioro sería en realidad juntar la tensión porque no estaría bien, aunque esperaría un efecto neto igual asumiendo una tensión unidireccional aleatoria.

    • wkpad dice:

      DPGS trabaja utilizando la información individual de cada satélite. Entonces se pueden corregir los efectos atmosféricos (y otros efectos).

      Corregir un error después de la solución final para (x, y, z) es el lugar incorrecto para aplicar la corrección porque diferentes satélites introducen un error en varias direcciones.

    • CÓMO dice:

      Me interesaría más bloquear la cinta L2 y hacer la corrección ionosférica in situ.

      • un solo pensamiento dice:

        Sí, aunque creo que ahora todo L2 está encriptado. NovAtel tiene un algoritmo (secreto) que utilizan para interpretar el tiempo L2 sin tener que descifrarlo y, por lo tanto, medir la diferencia entre bandas para autocorregido. Alguien más podría hacer lo mismo, pero no es tan simple como “simplemente buscar la señal L2”.
        DGPS es completamente posible cuando tiene acceso a horarios individuales.
        La otra cosa que podría hacer que sería excelente para los UAV es calcular la velocidad directamente, en lugar de simplemente como la diferencia entre dos posiciones finales. O, si usa posiciones secuenciales, omita la diferencia siempre que se agregue / elimine un satélite de la reparación, o cuando omita un ciclo (asumiendo que el cálculo usa bloqueo de fase). Los chips de GPS OTS pueden o no hacer esto, pero he visto un código de UAV que toma la velocidad de los datos de posición y luego los filtra, en lugar de solicitarlos directamente al receptor de GPS.

    • EHay dice:

      Mi papá es agrimensor y eso es exactamente lo que hacemos con nuestras unidades industriales. Uno está dispuesto como una estación base estática y el otro es un vehículo de investigación. La estación base se coloca en un punto conocido y calcula la diferencia entre la posición medida y la posición conocida. Luego, la diferencia se envía al vehículo de investigación por radio (creo que en la banda de 433 mhz) donde se corrige la posición del rover. Usamos un par de Topcon Hyper SR (GPS y GLONASS) en diseño RTK y obtenemos regularmente una precisión de 15 mm a 20 mm. Pero este no es el único tipo de DGPS.

      Muchos guardacostas operan estaciones DGPS sobre el grupo UHF. Con el módem adecuado, estas señales se pueden ingresar fácilmente en muchos tipos de GPS. Tenemos una unidad más antigua que contiene un puerto serie específicamente para acomodar estos y otros módems DGPS. Consulte http://www.ccg-gcc.gc.ca/eng/CCG/DGPS_Home. El protocolo DGPS está bastante bien documentado aquí y en otros sitios web náuticos.

      Una vez hablé con otro topógrafo y su GPS recibiría sus correcciones a través de Internet a través de un módem celular. Nunca investigué este método porque, según él, era muy problemático.

      Lo que sería interesante y útil para mi papá y para mí sería un receptor GPS de canal L1 / L2 que pueda grabar en un archivo Rinex. De esta manera configuramos puntos cuando no se dispone de vistas posteriores confiables. Los conjuntos de chips Sirf son capaces de producir Sirf Binary, que luego se puede convertir a Rinex. Sin embargo, el problema es que los chipsets de Sirf solo pueden recibir el código C / A del canal L1.

      • Pedro dice:

        Hola, trabajo para un distribuidor de equipos de investigación y uso el GPS, que recibe regularmente correcciones a través de la red de teléfonos móviles. Es bastante malo. Obtuve una precisión de 5 mm en el estacionamiento la semana pasada con un Topcon GRS-1. Obviamente, no funcionará donde no pueda obtener una señal de teléfono.

        RTK es bastante bueno. Muy inteligente usando la fase del portador para calcular la distancia entre la base y el vehículo de investigación.

    • papá mortal dice:

      FWIW, esto fue utilizado por empresas de estudios forestales en los años 90, combinado con métodos tradicionales.

  • echodelta dice:

    Dilo. ¡Quiero saber dónde estaba cuando los extraterrestres me secuestraron!

    • JB dice:

      Espera un minuto … sigo trabajando en el sistema de rastreo de una flota estelar: P

  • enfermedad dice:

    Eso es un gran trabajo. Me asusta su determinación de continuar ese proyecto y perfeccionarlo. Los resultados son sobresalientes. Cada aspecto de esto, diseño de computadora RF smd, diseño de computadora digital smd, sw, todos son excelentes. Probablemente todo terminó en el cobertizo de su jardín (porque se han realizado muchos grandes proyectos británicos).

  • KillerBug dice:

    Muy lindo … si tan solo el gobierno no hubiera degradado deliberadamente la señal y engañado todo, esto probablemente estaría justo debajo de los pies.

    • vpoko dice:

      No han degradado intencionalmente la señal desde 2000. Los satélites GPS más nuevos ni siquiera tienen la capacidad (SA). Lo que los civiles no reciben es acceso a la señal P (Y) cifrada de mayor precisión.

      • Martín dice:

        ¿En serio? No esperaba que los servicios militares / secretos abandonaran permanentemente esta opción.

  • medios de comunicación dice:

    Siguiente paso … Sub-metro rtk GPS
    http://www.rtklib.com/rtklib_beagleboard.htm

  • Thanh dice:

    ¿Alguien puede alcanzar el artículo?

  • Orkun Kilinc dice:

    ¿Resolución de ± 1 metro? Creo que es una precisión de ± 1 metro.

  • Mate dice:

    ¡Muy guay e interesante! Me encantaría ver GPS y GLONASS L1 / L2. Luego juega con las correcciones RTK.

  • perfo dice:

    Interesante lectura.
    Al leer lo anterior, creo que mis suposiciones sobre los módulos GP son incorrectas. Pensé que una precisión de 3 m significa que la pantalla le dará coordenadas que están en cualquier lugar alrededor de un círculo de radio de 3 m desde esa ubicación real. Entonces sé que una ubicación en el suelo está en (X, Y, Z) = (0,0,0) (solo con fines explicativos), entonces la lectura en el GPS en esta ubicación podría ser (+ -3, + – 3 , + – 3) ¿es eso correcto?
    ¿Entonces el error es aleatorio?
    ¿Podrías quedarte quieto y hacer sucesivas aproximaciones de las válvulas recibidas y terminar obteniendo más precisión? Supongo que no ni el hijo lector que la pantalla del GP variaría y todo el mundo se acercaría.
    Entonces última pregunta. Si tomo mi dispositivo GPS y lo coloco en su lugar (0,0,0) y ajusto el valor mostrado para que lea 0,0,0
    Si entonces tuviera que moverme 20 m en la dirección X, ¿mostraría precisa y repetidamente que estaba moviendo los 20 m? ¿Y cuál sería el error en esto? Tengo una aplicación en la que necesito precisión mm donde algo se relaciona con otra cosa. Entonces, si tuviera que usar dos protectores GPS Arduino y calibrarlos para que lean lo mismo en el punto A, ¿puedo ir a la posición B con el otro GPS y me dará una precisión de mm en relación con la posición A? Al observar la discusión anterior, parece que esto es posible, pero el error cambia, por lo que el GPS en el punto A debería compararse con las coordenadas conocidas del punto A y estos errores se envían al GPS en el punto B para calcular la posición del punto. B. Esto es muy capaz para mí porque solo mapeo el punto A al punto B en un área de tal vez 100 m por 100 m. ¿Alguien puede sugerir qué precisión en mm podría hacer esto con placas GP Arduino estándar? Gracias chicos …

Eva Jiménez
Eva Jiménez

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *