GnssClock 구조 참조

GnssClock 구조 참조

#include < gps.h >

데이터 필드

size_t 크기
GnssClockFlags 깃발
int16_t 윤초
int64_t time_ns
더블 time_uncertainty_ns
int64_t full_bias_ns
더블 bias_ns
더블 bias_uncertainty_ns
더블 drift_nsps
더블 drift_uncertainty_nsps
uint32_t hw_clock_discontinuity_count

상세 설명

GPS 시계 시간의 추정치를 나타냅니다.

gps.h 파일의 1455 번째 라인에서 정의되었습니다.

현장 문서

이중 bias_ns

나노초 미만의 편향. 이것과 full_bias_ns의 합에 대한 오류 추정치는 bias_uncertainty_ns입니다

데이터를 사용할 수있는 경우 '플래그'에는 GNSS_CLOCK_HAS_BIAS가 포함되어야합니다. GPS가 위치 수정을 계산 한 경우. 수신기가 예상 GPS 시간을 가지고있는 경우이 값은 필수입니다.

gps.h 파일의 1534 번째 줄에서 정의되었습니다.

double bias_uncertainty_ns

나노초 단위의 GPS 시간 (클럭 바이어스)의 로컬 추정과 관련된 1- 시그마 불확실성. 불확실성은 절대 (단면) 값으로 표시됩니다.

데이터를 사용할 수있는 경우 '플래그'에는 GNSS_CLOCK_HAS_BIAS_UNCERTAINTY가 포함되어야합니다. 수신기가 예상 GPS 시간을 가지고있는 경우이 값은 필수입니다.

gps.h 파일의 1545 번째 줄에서 정의되었습니다.

이중 드리프트 _nsps

나노초 (초당) 단위의 시계 드리프트입니다.

양수 값은 주파수가 공칭 주파수보다 높고 (full_bias_ns + bias_ns)가 시간이 지남에 따라 더 양수로 증가하고 있음을 의미합니다.

값에는 '드리프트 불확실성'이 포함되어 있습니다. 데이터를 사용할 수있는 경우 '플래그'에는 GNSS_CLOCK_HAS_DRIFT가 포함되어야합니다.

수신자가 예상 GNSS 시간을 가지고있는 경우이 값은 필수입니다.

gps.h 파일의 1559 번째 줄에서 정의되었습니다.

이중 드리프트 _ 불확실성 _nsps

나노초 (초당) 단위의 클록 드리프트와 관련된 1- 시그마 불확실성. 불확실성은 절대 (단면) 값으로 표시됩니다.

데이터를 사용할 수있는 경우 '플래그'에는 GNSS_CLOCK_HAS_DRIFT_UNCERTAINTY가 포함되어야합니다. GPS가 위치 수정을 계산 한 경우이 필드는 필수이며 채워 져야합니다.

gps.h 파일의 1569 번째 줄에서 정의되었습니다.

GnssClockFlags 플래그

이 데이터 구조에있는 필드의 유효성을 나타내는 플래그 세트입니다.

gps.h 파일의 1463 번째 줄에서 정의되었습니다.

int64_t full_bias_ns

GPS 수신기 내부의 하드웨어 시계 ( '시간'필드)와 1980 년 1 월 6 일 0000Z 이후 실제 GPS 시간의 차이 (나노초).

값의 부호는 다음 방정식으로 정의됩니다. GPS 시간의 로컬 추정값 = time_ns-(full_bias_ns + bias_ns)

수신기가 예상 GPS 시간을 가지고있는 경우이 값은 필수입니다. 계산 된 시간이 비 GPS 별자리에 대한 것이라면 GPS에 대한 해당 별자리의 시간 오프셋을 적용하여이 값을 채워야합니다. 이것과 bias_ns의 합에 대한 오류 추정치는 bias_uncertainty_ns이고 호출자는이 불확실성을 사용할 책임이 있습니다 (GPS 시간이 해결되기 전에 매우 클 수 있음). 데이터를 사용할 수있는 경우 '플래그'에 포함되어야합니다. GNSS_CLOCK_HAS_FULL_BIAS.

gps.h 파일의 1523 번째 줄에서 정의되었습니다.

uint32_t hw_clock_discontinuity_count

HW 클럭에 불연속성이있는 경우이 필드는 필수입니다.

"불연속성"은 한 클록 소스에서 다른 클록 소스로 전환되는 경우를 의미합니다. 단일 자유 실행 수정 발진기 (XO)는 일반적으로 불연속성이 없어야하며 이는 0으로 설정하고 유지할 수 있습니다.

그러나 time_ns 값 (HW 클럭)이 일반적인 XO만큼 부드럽 지 않거나 중지 및 재시작되는 소스의 합성에서 파생 된 경우이 값은 불연속이 발생할 때마다 증가합니다. (예를 들어이 값은 장치 부팅시 0에서 시작하여 클럭 연속성이 변경 될 때마다 증가 할 수 있습니다. 드물지만이 값이 전체 스케일에 도달하는 경우이 값이 계속되도록 롤오버 (클램핑 아님)가 필요합니다. 후속 불연속 이벤트 동안 변경.)

이 숫자는 동일하게 유지되지만 GnssClock 보고서간에 time_ns 값이 지속적으로 실행되고 있다고 가정 할 수 있습니다. 예를 들어 연속 GNSS 신호 샘플링 중에 일반적으로 사용되는 단일 고품질 클록 (XO 유사 또는 그 이상)에서 파생됩니다. )

예상됩니다. 사용 가능한 GNSS 신호가 거의없는 기간 동안 HW 클럭은 가능한 한 오랫동안 불연속성이 없습니다. 이렇게하면 GPS 클럭 바이어스 및 드리프트를 완전히 해결하기 위해 GNSS 측정을 사용 (폐기) 할 필요가 없습니다. 연속 GnssData 보고서에서 수반되는 측정을 사용합니다.

gps.h 파일의 1600 번 라인에서 정의되었습니다.

int16_t 윤초

윤초 데이터. 값의 부호는 다음 방정식으로 정의됩니다. utc_time_ns = time_ns-(full_bias_ns + bias_ns)-leap_second * 1,000,000,000

데이터를 사용할 수있는 경우 '플래그'에는 GNSS_CLOCK_HAS_LEAP_SECOND가 포함되어야합니다.

gps.h 파일의 1473 번째 라인에서 정의되었습니다.

size_t 크기

sizeof (GnssClock)로 설정

gps.h 파일의 1457 번째 라인에서 정의되었습니다.

int64_t time_ns

GNSS 수신기 내부 클럭 값입니다. 이것은 로컬 하드웨어 시계 값입니다.

로컬 하드웨어 시계의 경우이 값은 하드웨어 시계가 전원이 켜져있는 동안 단조롭게 증가 할 것으로 예상됩니다. (계속 켜져 있지 않은 HW 클럭의 경우 hw_clock_discontinuity_count 필드를 참조하십시오.) 수신기의 GPS 시간 추정치는이 값에서 full_bias_ns 및 bias_ns (사용 가능한 경우)의 합계를 빼서 구할 수 있습니다.

이 GPS 시간은 GNSS 수신기가 달성 할 수있는 현재 GPS 시간의 가장 좋은 추정치가 될 것으로 예상됩니다.

'bias_ns'필드를 통해 나노초 미만의 정확도를 제공 할 수 있습니다. 값에는 '시간 불확실성'이 포함됩니다.

이 필드는 필수입니다.

gps.h 파일의 1494 번째 라인에서 정의되었습니다.

double time_uncertainty_ns

나노초 단위의 클록 시간과 관련된 1- 시그마 불확실성. 불확실성은 절대 (단면) 값으로 표시됩니다.

데이터를 사용할 수있는 경우 '플래그'에 GNSS_CLOCK_HAS_TIME_UNCERTAINTY가 포함되어야합니다. 이 값은 사실상 0입니다 (다른 모든 시간 및 시간 불확실성이 측정되는 기준 로컬 클럭입니다.) (따라서이 필드는 GNSS_CLOCK_HAS_TIME_UNCERTAINTY 플래그에 따라 제공되지 않거나 0으로 설정 및 제공 될 수 있습니다.)

gps.h 파일의 1506 번째 줄에서 정의되었습니다.


이 구조체에 대한 문서는 다음 파일에서 생성되었습니다.
  • 하드웨어 / libhardware / include / hardware / gps.h