Referencia de estructura de GnssClock
#include < gps.h >
Campos de información | |
size_t | Talla |
GnssRelojBanderas | banderas |
int16_t | leap_second |
int64_t | time_ns |
doble | time_uncertainty_ns |
int64_t | full_bias_ns |
doble | bias_ns |
doble | bias_uncertainty_ns |
doble | drift_nsps |
doble | drift_uncertainty_nsps |
uint32_t | hw_clock_discontinuity_count |
Descripción detallada
Documentación de campo
doble sesgo_ns |
Sesgo de sub-nanosegundos. La estimación del error para la suma de esto y full_bias_ns es el bias_uncertainty_ns
Si los datos están disponibles, las 'banderas' deben contener GNSS_CLOCK_HAS_BIAS. Si el GPS ha calculado una posición fija. Este valor es obligatorio si el receptor tiene tiempo GPS estimado.
double bias_uncertainty_ns |
Incertidumbre 1-Sigma asociada con la estimación local del tiempo GPS (sesgo de reloj) en nanosegundos. La incertidumbre se representa como un valor absoluto (unilateral).
Si los datos están disponibles, las 'banderas' deben contener GNSS_CLOCK_HAS_BIAS_UNCERTAINTY. Este valor es obligatorio si el receptor tiene tiempo GPS estimado.
doble drift_nsps |
La deriva del reloj en nanosegundos (por segundo).
Un valor positivo significa que la frecuencia es más alta que la frecuencia nominal y que (full_bias_ns + bias_ns) se está volviendo más positivo con el tiempo.
El valor contiene la 'incertidumbre de deriva'. Si los datos están disponibles, las 'banderas' deben contener GNSS_CLOCK_HAS_DRIFT.
Este valor es obligatorio si el receptor tiene tiempo GNSS estimado
doble drift_uncertainty_nsps |
Incertidumbre 1-Sigma asociada con la desviación del reloj en nanosegundos (por segundo). La incertidumbre se representa como un valor absoluto (unilateral).
Si los datos están disponibles, las 'banderas' deben contener GNSS_CLOCK_HAS_DRIFT_UNCERTAINTY. Si el GPS ha calculado una posición fija, este campo es obligatorio y debe completarse.
GnssClockFlags banderas |
int64_t full_bias_ns |
La diferencia entre el reloj de hardware (campo 'tiempo') dentro del receptor GPS y la hora GPS real desde las 0000Z, 6 de enero de 1980, en nanosegundos.
El signo del valor se define mediante la siguiente ecuación: estimación local del tiempo GPS = time_ns - (full_bias_ns + bias_ns)
Este valor es obligatorio si el receptor tiene tiempo GPS estimado. Si el tiempo calculado es para una constelación que no es GPS, se debe aplicar el desplazamiento de tiempo de esa constelación al GPS para completar este valor. La estimación del error para la suma de este y el bias_ns es el bias_uncertainty_ns, y la persona que llama es responsable de usar esta incertidumbre (puede ser muy grande antes de que se haya resuelto el tiempo del GPS). Si los datos están disponibles, las 'banderas' deben contener GNSS_CLOCK_HAS_FULL_BIAS.
uint32_t hw_clock_discontinuity_count |
Cuando hay discontinuidades en el reloj HW, este campo es obligatorio.
Una "discontinuidad" está destinada a cubrir el caso de un cambio de una fuente de reloj a otra. Un solo oscilador de cristal de funcionamiento libre (XO) generalmente no debe tener discontinuidades, y esto se puede configurar y dejar en 0.
Sin embargo, si el valor time_ns (reloj HW) se deriva de una combinación de fuentes, que no es tan suave como un XO típico, o se detiene y reinicia de otro modo, este valor se incrementará cada vez que ocurra una discontinuidad. (Por ejemplo, este valor puede comenzar en cero en el arranque del dispositivo e incrementarse cada vez que haya un cambio en la continuidad del reloj. En el caso poco probable de que este valor alcance la escala completa, se requiere un vuelco (no sujeción), de modo que este valor continúe cambio, durante eventos de discontinuidad subsiguientes).
Si bien este número permanece igual, entre los informes de GnssClock , se puede suponer con seguridad que el valor de time_ns se ha estado ejecutando continuamente, por ejemplo, derivado de un solo reloj de alta calidad (similar a XO, o mejor, que se usa típicamente durante el muestreo continuo de señales GNSS. )
Se espera, esp. durante los períodos en los que hay pocas señales GNSS disponibles, que el reloj HW esté libre de discontinuidades el mayor tiempo posible, ya que esto evita la necesidad de usar (desperdiciar) una medición GNSS para resolver completamente el sesgo y la desviación del reloj GPS, cuando utilizando las mediciones adjuntas, de informes GnssData consecutivos.
int16_t leap_second |
Datos del segundo salto. El signo del valor se define mediante la siguiente ecuación: utc_time_ns = time_ns - (full_bias_ns + bias_ns) - leap_second * 1,000,000,000
Si los datos están disponibles, las 'banderas' deben contener GNSS_CLOCK_HAS_LEAP_SECOND.
int64_t time_ns |
El valor del reloj interno del receptor GNSS. Este es el valor del reloj de hardware local.
Para el reloj de hardware local, se espera que este valor aumente de manera monótona mientras el reloj de hardware permanece encendido. (Para el caso de un reloj HW que no está encendido continuamente, consulte el campo hw_clock_discontinuity_count). La estimación del tiempo de GPS del receptor se puede derivar restando la suma de full_bias_ns y bias_ns (cuando esté disponible) de este valor.
Se espera que esta hora GPS sea la mejor estimación de la hora GPS actual que puede alcanzar el receptor GNSS.
Se puede proporcionar una precisión de menos de nanosegundos mediante el campo 'bias_ns'. El valor contiene la 'incertidumbre de tiempo'.
Este campo es obligatorio.
double time_uncertainty_ns |
Incertidumbre 1-Sigma asociada con el tiempo del reloj en nanosegundos. La incertidumbre se representa como un valor absoluto (unilateral).
Si los datos están disponibles, las 'banderas' deben contener GNSS_CLOCK_HAS_TIME_UNCERTAINTY. Este valor es efectivamente cero (es el reloj local de referencia, mediante el cual se miden todos los demás tiempos e incertidumbres de tiempo) (y, por lo tanto, este campo no se puede proporcionar, según el indicador GNSS_CLOCK_HAS_TIME_UNCERTAINTY, o se proporciona y se establece en 0).
La documentación para esta estructura se generó a partir del siguiente archivo:
- hardware / libhardware / include / hardware / gps.h