Referensi Struct GnssClock
#include <
gps.h
>
Kolom Data |
|
size_t | size |
GnssClockFlags | flag |
int16_t | leap_second |
int64_t | time_ns |
ganda | time_uncertainty_ns |
int64_t | full_bias_ns |
ganda | bias_ns |
ganda | bias_uncertainty_ns |
ganda | drift_nsps |
ganda | drift_uncertainty_nsps |
uint32_t | hw_clock_discontinuity_count |
Deskripsi Mendetail
Dokumentasi Bidang
bias_ns ganda |
Bias sub-nanodetik. Estimasi error untuk jumlah ini dan full_bias_ns adalah bias_uncertainty_ns
Jika data tersedia, 'flag' harus berisi GNSS_CLOCK_HAS_BIAS. Jika GPS telah menghitung perbaikan posisi. Nilai ini wajib jika penerima telah memperkirakan waktu GPS.
double bias_uncertainty_ns |
Ketidakpastian 1-Sigma yang terkait dengan estimasi lokal waktu GPS (bias jam) dalam nanodetik. Ketidakpastian direpresentasikan sebagai nilai absolut (satu sisi).
Jika data tersedia, 'flag' harus berisi GNSS_CLOCK_HAS_BIAS_UNCERTAINTY. Nilai ini wajib jika penerima telah memperkirakan waktu GPS.
drift_nsps ganda |
Drift jam dalam nanodetik (per detik).
Nilai positif berarti frekuensi lebih tinggi dari frekuensi nominal, dan (full_bias_ns + bias_ns) semakin positif seiring waktu.
Nilai ini berisi 'drift uncertainty' di dalamnya. Jika data tersedia, 'flag' harus berisi GNSS_CLOCK_HAS_DRIFT.
Nilai ini wajib jika penerima telah memperkirakan waktu GNSS
double drift_uncertainty_nsps |
Ketidakpastian 1-Sigma yang terkait dengan drift clock dalam nanodetik (per detik). Ketidakpastian direpresentasikan sebagai nilai absolut (satu sisi).
Jika data tersedia, 'flag' harus berisi GNSS_CLOCK_HAS_DRIFT_UNCERTAINTY. Jika GPS telah menghitung perbaikan posisi, kolom ini bersifat wajib dan harus diisi.
Flag GnssClockFlags |
int64_t full_bias_ns |
Perbedaan antara jam hardware (kolom 'time') di dalam penerima GPS dan waktu GPS yang sebenarnya sejak 0000Z, 6 Januari 1980, dalam nanodetik.
Tanda nilai ditentukan oleh persamaan berikut: estimasi lokal waktu GPS = time_ns - (full_bias_ns + bias_ns)
Nilai ini wajib jika penerima telah memperkirakan waktu GPS. Jika waktu yang dihitung adalah untuk konstelasi non-GPS, offset waktu konstelasi tersebut ke GPS harus diterapkan untuk mengisi nilai ini. Estimasi error untuk jumlah ini dan bias_ns adalah bias_uncertainty_ns, dan pemanggil bertanggung jawab untuk menggunakan ketidakpastian ini (dapat sangat besar sebelum waktu GPS dipecahkan.) Jika data tersedia, 'flag' harus berisi GNSS_CLOCK_HAS_FULL_BIAS.
uint32_t hw_clock_discontinuity_count |
Jika ada diskontinuitas pada jam HW, kolom ini wajib diisi.
"Putus" dimaksudkan untuk mencakup kasus pengalihan dari satu sumber jam ke sumber jam lainnya. Satu kristal osilator (XO) yang berjalan bebas umumnya tidak boleh memiliki diskontinuitas, dan ini dapat disetel dan dibiarkan pada 0.
Namun, jika nilai time_ns (jam HW) berasal dari gabungan sumber, yang tidak selancar XO biasa, atau dihentikan & dimulai ulang, nilai ini akan bertambah setiap kali terjadi diskontinuitas. (Misalnya, nilai ini dapat dimulai dari nol saat perangkat melakukan booting dan bertambah setiap kali ada perubahan dalam kontinuitas clock. Jika nilai ini mencapai skala penuh, rollover (bukan penjepitan) diperlukan, sehingga nilai ini terus berubah, selama peristiwa diskontinuitas berikutnya.)
Meskipun angka ini tetap sama, antara laporan GnssClock , dapat diasumsikan dengan aman bahwa nilai time_ns telah berjalan secara terus-menerus, misalnya berasal dari satu jam berkualitas tinggi (seperti XO, atau lebih baik, yang biasanya digunakan selama pengambilan sampel sinyal GNSS yang berkelanjutan.)
Diharapkan, terutama selama periode saat hanya ada sedikit sinyal GNSS yang tersedia, jam HW bebas dari diskontinuitas selama mungkin, karena hal ini menghindari penggunaan (pemborosan) pengukuran GNSS untuk menyelesaikan ulang bias dan drift jam GPS sepenuhnya, saat menggunakan pengukuran yang menyertainya, dari laporan GnssData berturut-turut.
int16_t leap_second |
int64_t time_ns |
Nilai jam internal penerima GNSS. Ini adalah nilai jam hardware lokal.
Untuk jam hardware lokal, nilai ini diharapkan meningkat secara monoton saat jam hardware tetap menyala. (Untuk kasus jam HW yang tidak terus-menerus aktif, lihat kolom hw_clock_discontinuity_count). Estimasi waktu GPS penerima dapat diperoleh dengan mengurangi jumlah full_bias_ns dan bias_ns (jika tersedia) dari nilai ini.
Waktu GPS ini diharapkan menjadi estimasi terbaik waktu GPS saat ini yang dapat dicapai penerima GNSS.
Akurasi sub-nanodetik dapat diberikan melalui kolom 'bias_ns'. Nilai tersebut berisi 'ketidakpastian waktu'.
Kolom ini wajib diisi.
double time_uncertainty_ns |
Ketidakpastian 1-Sigma yang terkait dengan waktu jam dalam nanodetik. Ketidakpastian direpresentasikan sebagai nilai absolut (satu sisi).
Jika data tersedia, 'flags' harus berisi GNSS_CLOCK_HAS_TIME_UNCERTAINTY. Nilai ini secara efektif nol (ini adalah jam lokal referensi, yang digunakan untuk mengukur semua waktu dan ketidakpastian waktu lainnya). (Dengan demikian, kolom ini dapat tidak diberikan, sesuai flag GNSS_CLOCK_HAS_TIME_UNCERTAINTY, atau diberikan & ditetapkan ke 0.)
Dokumentasi untuk struct ini dibuat dari file berikut:
- hardware/libhardware/include/hardware/ gps.h