A maneira normal de adicionar recursos de GPS a um projeto está agarrando um módulo GPS off-the-prateleira, conectando-o a um UART e lendo o fluxo de frases NMEEs saindo de uma porta serial . Dependendo de quanto você gasta em um módulo GPS, isso é bom: os melhores módulos que arrancam rapidamente, e muitos deles reconhecem os regulamentos lógicos e em ITAR.
Para [Mike], agarrar um módulo off-the-prateleira está fora de questão. Ele está construindo seu próprio receptor GPS do chão usando um pouco de hardware e fpga hacking. Ele já está recebendo bons resultados, e ele não tem que FUTZ com aqueles confusos, ‘não construa leis de mísseis balísticos.
O hardware para essa construção inclui um Kiwi SDR ‘Cape’ para o Beaglebone e um Digilent Nexus-2 FPGA Board. O tabuleiro SDR captura amostras de 1 bitra crua em 16,268 MHz e requer um valor total de dados a serem capturados. Isso é pelo menos 120 megabytes de dados para o FPGA para classificar.
O software para este projeto primeiro adquire o sinal GPS, encontrando a frequência e fase aproximadas. O software, em seguida, bloqueia a transportadora, figura a fase e recebe a mensagem de 50bps ‘NAV’ que é necessária para encontrar uma opção de posição para a localização da antena. A primeira versão deste software foi notavelmente lenta, assumindo mais de 6 horas para processar 200 segundos de dados. Agora, [Mike] melhorou o código de rastreamento de canais e fez 300 vezes mais rápido. Esse é o processamento em tempo real de dados GPS, usando hardware off-the-prateleira de commodity. Todo o software está disponível nos gits, tornando este um projeto que pode ser facilmente replicado por qualquer pessoa. Esperamos que o Departamento de Estado dos EUA ou o DoD pague [Mike] uma visita em breve.
Claro, esta não é a primeira vez que alguém construiu um receptor GPS a partir do zero. Alguns anos atrás, menos de 1 metros de precisão foi possível com um FPGA e uma placa de RF Homebrew.