Esqueça por um momento a posição GPS. Um GPS ou GNSS também calcula o tempo. E o faz com muita precisão. Com uma precisão de até 10 nanossegundos. Isso equivale a 0.00000001 segundos.
Imagine que você tem 2 dispositivos em 2 países diferentes ou 2 sensores em 2 locais diferentes e quer sincronizar qualquer ação ou medição que eles estejam realizando. Você pode usar a internet para obter uma precisão de cerca de 10 milissegundos ou usar um receptor GPS em cada dispositivo para reduzir a precisão para 10 nanossegundos. E o melhor, sem precisar de internet.
Ao atingirmos esse nível de precisão temporal, também é importante saber em qual escala de tempo estamos trabalhando. Os receptores GNSS geralmente sincronizam com a escala de tempo UTC global, mas também podem sincronizar com uma constelação específica (GPS, GLONASS, etc.). Galileo, BeiDou). Cada escala de tempo tem seu próprio contador absoluto (por exemplo, há uma pequena diferença de segundos entre GPS e UTC), mas, em geral, a mudança de segundos é sincronizada em nível de milissegundos. De qualquer forma, a conclusão é: verifique se todos os seus sensores estão usando a mesma escala de tempo.
A teoria é muito boa, mas como você pode realmente usar o pulso de tempo do GPS no seu projeto?
Todas as ArduSimple as placas têm um pino chamado Timepulse, PPS ou TPS. São nomes diferentes para o mesmo sinal. Por padrão, este pulso de tempo é configurado para 1 Pulso por Segundo (PPS). Isso significa que a cada segundo, no momento exato da mudança de segundo, este sinal será acionado para informar a aplicação sobre o momento exato da mudança de segundo. O receptor pode levar algum tempo para calcular a nova posição real e a disponibilizará o mais breve possível. Na próxima imagem, você encontrará uma representação visual disso.
Em sua aplicação, você pode conectar o Timepulse e os dados seriais enviados para o seu processador ou computador. Em algum momento, seu aplicativo lerá que o horário é 8:30:00. É hora de se preparar para o próximo pulso de tempo, que indicará exatamente 8:30:01.
Mas você pode perguntar: e se o sinal que quero medir estiver entre dois pulsos de tempo?
- Opção A. Você tem um oscilador de alta velocidade dentro do seu processador (MHz ou mais) que pode ser sincronizado sempre que houver um pulso de tempo.
- Opção B. Use outro recurso dos receptores GPS: o EXTINT ou entrada de EVENTO. Falaremos sobre esse sinal em outro dia e atualizaremos este post com um link.