Mi escenario es un uC (un STM32) con un GPS. Necesito emitir un pulso de 1Hz que se alinee con el GPS PPS, incluso durante la pérdida de señal. Naturalmente, durante el LOS, la salida solo es tan buena como la de mi oscilador local, pero me gustaría ajustar la base de tiempo del temporizador correspondiente al PPS promedio o reciente del GPS
Cuando compras un hardware GPSDO, por ejemplo. de Jackson Labs, encontrará que generalmente consiste en un receptor de GPS, un oscilador de alta calidad disciplinado y algunos microcontroladores (en el caso de los laboratorios de Jackson, les gustan los LPC / espresso ARM). Puede ver el microcontrolador NXP en la parte inferior producto de los laboratorios Jackson (IC grande y negro , imagen de la derecha), junto al módulo del receptor GPS (parece un ublox AMY-6T o algo así). En la parte superior del dispositivo (imagen izquierda) encontrará un oscilador estable (y costoso) (caja grande de metal).
La idea realmente es que en caso de pérdida de señal, necesita algo estable para hacer su "remanente". Es por eso que las mejores GPSDOs tienden a usar osciladores controlados por horno.
En primer lugar, verifique si un GPSDO listo para usar ya no cumple con sus requisitos de estabilidad. Esa sería la forma más fácil y, además, alguien que haya hecho esto antes lo ha diseñado todo.
Observe que lo que Al alex.forencich describe tiene una precisión limitada: si digamos que su contador funciona a 10 MHz, entonces la mejor granularidad de ajuste que se puede lograr cuando solo se observa un intervalo de un segundo es de 100 ppb, peor que la precisión de frecuencia de muchos GSPDO ! Por supuesto, lo remediaría con un ancho de banda de filtro de bucle PID más estrecho, pero eso tiene otros efectos negativos: ¿qué pasaría si su controlador PID ahora no puede mantenerse al día con la deriva de su oscilador? ¿Qué sucede si la sincronización de borde de PPS tiene su propio error (sugerencia: tiene, típicamente, en el orden de 100 ns, al menos)?
Es por eso que el firmware en las GPSDO es probablemente un poco más inteligente que solo un PID; si dedicas suficiente tiempo a la investigación y la caracterización, estoy seguro de que puedes modelar el comportamiento de los osciladores f / V y es mejor a la deriva; Kalman extendido viene a la mente.
No tengo experiencia en el modelado de osciladores físicos con esta precisión, ni tampoco puedo modelar el comportamiento de varianza de la frecuencia o la salida de temporización del receptor GPS. Es por eso que no tengo la intención de crear mi propia GPSDO en el corto plazo, pero no tendría que hacerlo, porque si necesito una precisión realmente alta, acudiría a proveedores como Jackson Labs (no afiliados a estos, por cierto), si estoy de acuerdo con la disminución del rendimiento durante el período de inactividad: ublox vende sus IC de receptor GPS específicos de tiempo que puede programar para mantener. Todo lo que necesitan es poder, una antena y un oscilador para controlar. Son prácticamente lo que usted describe en un solo paquete.