Referensi Struct GnssMeasurement

Referensi Struct GnssMeasurement

#include < gps.h >

Kolom Data

size_t  size
 
GnssMeasurementFlags   flag
 
int16_t  svid
 
GnssConstellationType   konstelasi
 
ganda  time_offset_ns
 
GnssMeasurementState   status
 
int64_t  received_sv_time_in_ns
 
int64_t  received_sv_time_uncertainty_in_ns
 
ganda  c_n0_dbhz
 
ganda  pseudorange_rate_mps
 
ganda  pseudorange_rate_uncertainty_mps
 
GnssAccumulatedDeltaRangeState   accumulated_delta_range_state
 
ganda  accumulated_delta_range_m
 
ganda  accumulated_delta_range_uncertainty_m
 
float  carrier_frequency_hz
 
int64_t  carrier_cycles
 
ganda  carrier_phase
 
ganda  carrier_phase_uncertainty
 
GnssMultipathIndicator   multipath_indicator
 
ganda  snr_db
 

Deskripsi Mendetail

Mewakili Pengukuran GNSS, yang berisi informasi mentah dan yang dihitung.

Independensi - Semua informasi pengukuran sinyal (misalnya, sv_time, pseudorange_rate, multipath_indicator) yang dilaporkan dalam struct ini harus didasarkan pada pengukuran sinyal GNSS saja. Anda tidak boleh menyintesis pengukuran dengan menghitung atau melaporkan pengukuran yang diharapkan berdasarkan posisi, kecepatan, atau waktu yang diketahui atau diperkirakan.

Definisi di baris 1656 file gps.h .

Dokumentasi Bidang

double accumulated_delta_range_m

Rentang delta kumulatif sejak reset channel terakhir dalam meter. Nilai positif menunjukkan bahwa SV bergerak menjauh dari penerima.

Tanda 'akumulasi rentang delta' dan hubungannya dengan tanda 'fase operator' diberikan oleh persamaan: akumulasi rentang delta = -k * fase operator (dengan k adalah konstanta)

Nilai ini harus diisi jika 'accumulated delta range state' != GPS_ADR_STATE_UNKNOWN. Namun, data diperkirakan hanya akurat jika: 'accumulated delta range state' == GPS_ADR_STATE_VALID.

Definisi di baris 1835 dari file gps.h .

GnssAccumulatedDeltaRangeState accumulated_delta_range_state

Status rentang delta yang diakumulasikan. Ini menunjukkan apakah ADR direset atau ada slip siklus (menunjukkan hilangnya kunci).

Nilai ini wajib diisi.

Definisi di baris 1821 dari file gps.h .

double accumulated_delta_range_uncertainty_m

Ketidakpastian 1-Sigma dari rentang delta yang terakumulasi dalam meter. Nilai ini harus diisi jika 'accumulated delta range state' != GPS_ADR_STATE_UNKNOWN.

Definisi di baris 1841 dari file gps.h .

c_n0_dbhz ganda

Kepadatan pembawa ke derau dalam dB-Hz, biasanya dalam rentang [0, 63]. Nilai ini berisi nilai C/N0 yang diukur untuk sinyal di port antena.

Nilai ini wajib diisi.

Definisi di baris 1778 dari file gps.h .

int64_t carrier_cycles

Jumlah siklus pembawa penuh antara satelit dan penerima. Frekuensi referensi diberikan oleh kolom 'carrier_frequency_hz'. Indikasi kemungkinan slip siklus dan reset dalam akumulasi nilai ini dapat disimpulkan dari flag accumulated_delta_range_state.

Jika data tersedia, 'flags' harus berisi GNSS_MEASUREMENT_HAS_CARRIER_CYCLES.

Definisi di baris 1861 dari file gps.h .

float carrier_frequency_hz

Frekuensi pembawa tempat kode dan pesan dimodulasi, dapat berupa L1 atau L2. Jika kolom tidak ditetapkan, frekuensi pembawa dianggap sebagai L1.

Jika data tersedia, 'flags' harus berisi GNSS_MEASUREMENT_HAS_CARRIER_FREQUENCY.

Definisi di baris 1850 dari file gps.h .

carrier_phase ganda

Fase RF yang terdeteksi oleh penerima, dalam rentang [0,0, 1,0]. Ini biasanya merupakan bagian pecahan dari pengukuran fase pembawa yang lengkap.

Frekuensi referensi diberikan oleh kolom 'carrier_frequency_hz'. Nilai ini berisi 'ketidakpastian fase pembawa' di dalamnya.

Jika data tersedia, 'flags' harus berisi GNSS_MEASUREMENT_HAS_CARRIER_PHASE.

Definisi di baris 1873 dari file gps.h .

carrier_phase_uncertainty ganda

Ketidakpastian 1-Sigma fase pembawa. Jika data tersedia, 'flags' harus berisi GNSS_MEASUREMENT_HAS_CARRIER_PHASE_UNCERTAINTY.

Definisi di baris 1880 dari file gps.h .

Menentukan konstelasi SV yang diberikan. Nilai harus berupa salah satu konstanta GNSS_CONSTELLATION_* tersebut

Definisi di baris 1673 dari file gps.h .

Serangkaian flag yang menunjukkan validitas kolom dalam struktur data ini.

Definisi di baris 1661 dari file gps.h .

GnssMultipathIndicator multipath_indicator

Enumerasi yang menunjukkan status 'multi-jalur' peristiwa.

Indikator multi-jalur dimaksudkan untuk melaporkan keberadaan sinyal tumpang-tindih yang muncul sebagai puncak korelasi yang terdistorsi.

  • jika ada bentuk puncak korelasi yang terdistorsi, laporkan bahwa multipath adalah GNSS_MULTIPATH_INDICATOR_PRESENT.
  • jika tidak ada bentuk puncak korelasi yang terdistorsi, laporkan GNSS_MULTIPATH_INDICATOR_NOT_PRESENT
  • jika sinyal terlalu lemah untuk membedakan informasi ini, laporkan GNSS_MULTIPATH_INDICATOR_UNKNOWN

Contoh: saat melakukan pengujian Performa Multijalur tumpang-tindih standar (3GPP TS 34.171), indikator Multijalur harus melaporkan GNSS_MULTIPATH_INDICATOR_PRESENT untuk sinyal yang dilacak, dan berisi multijalur, serta GNSS_MULTIPATH_INDICATOR_NOT_PRESENT untuk sinyal yang dilacak dan tidak berisi multijalur.

Definisi di baris 1901 dari file gps.h .

double pseudorange_rate_mps

Kecepatan pseudorange pada stempel waktu dalam m/dtk. Koreksi nilai Kecepatan Pseudorange tertentu mencakup koreksi untuk error frekuensi penerima dan jam satelit. Pastikan kolom ini bersifat independen (lihat komentar di bagian atas struct GnssMeasurement .)

Anda harus memberikan 'kecepatan pseudorange' 'yang tidak dikoreksi', dan juga memberikan kolom 'drift' GpsClock (Saat memberikan kecepatan pseudorange yang tidak dikoreksi, jangan terapkan koreksi yang dijelaskan di atas.)

Nilai ini menyertakan 'ketidakpastian kecepatan pseudorange' di dalamnya. Nilai 'uncorrected' positif menunjukkan bahwa SV bergerak menjauh dari penerima.

Tanda 'kecepatan pseudo-rentang' yang 'tidak dikoreksi' dan hubungannya dengan tanda 'pergeseran doppler' diberikan oleh persamaan: kecepatan pseudo-rentang = -k * pergeseran doppler (dengan k adalah konstanta)

Ini harus menjadi kecepatan pseudo-rentang yang paling akurat yang tersedia, berdasarkan pengukuran sinyal baru dari saluran ini.

Nilai ini harus diberikan pada kualitas PRR fase pembawa yang khas (beberapa cm/detik per detik ketidakpastian, atau lebih baik) - jika sinyal cukup kuat & stabil, misalnya sinyal dari simulator GPS pada >= 35 dB-Hz.

Definisi di baris 1805 dari file gps.h .

double pseudorange_rate_uncertainty_mps

Ketidakpastian 1-Sigma dari pseudorange_rate_mps. Ketidakpastian direpresentasikan sebagai nilai absolut (satu sisi).

Nilai ini wajib diisi.

Definisi di baris 1813 dari file gps.h .

int64_t received_sv_time_in_ns

Waktu Minggu GNSS yang diterima pada waktu pengukuran, dalam nanodetik. Pastikan kolom ini bersifat independen (lihat komentar di bagian atas struct GnssMeasurement .)

Untuk GPS & QZSS, ini adalah: Waktu Mingguan GPS yang Diterima pada waktu pengukuran, dalam nanodetik. Nilai ini bersifat relatif terhadap awal minggu GPS saat ini.

Dengan status sinkronisasi tertinggi yang dapat dicapai, per setiap satelit, rentang yang valid untuk kolom ini dapat berupa: Penelusuran : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN Kunci kode C/A : [ 0 1 md ] : GNSS_MEASUREMENT_STATE_CODE_LOCK ditetapkan Sinkronisasi bit : [ 0 20 md ] : GNSS_MEASUREMENT_STATE_BIT_SYNC ditetapkan Sinkronisasi subframe : [ 0 6 dtk ] : GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC ditetapkan TOW didekode : [ 0 1 minggu ] : GNSS_MEASUREMENT_STATE_TOW_DECODED ditetapkan

Perhatikan dengan baik: jika ada ambiguitas dalam milidetik bilangan bulat, GNSS_MEASUREMENT_STATE_MSEC_AMBIGUOUS harus ditetapkan sebagaimana mestinya, di kolom 'state'.

Nilai ini harus diisi jika 'state' != GNSS_MEASUREMENT_STATE_UNKNOWN.

Untuk Glonass, ini adalah: Waktu Glonass yang diterima, pada waktu pengukuran dalam nanodetik.

Dengan status sinkronisasi tertinggi yang dapat dicapai, per setiap satelit, rentang yang valid untuk kolom ini dapat berupa: Penelusuran : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN C/A code lock : [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK is set Symbol sync : [ 0 10ms ] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC is set Bit sync : [ 0 20ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC is set String sync : [ 0 2s ] : GNSS_MEASUREMENT_STATE_GLO_STRING_SYNC is set Time of day : [ 0 1day ] : GNSS_MEASUREMENT_STATE_GLO_TOD_DECODED is set

Untuk Beidou, ini adalah: Waktu mingguan Beidou yang diterima, pada waktu pengukuran dalam nanodetik.

Dengan status sinkronisasi tertinggi yang dapat dicapai, per setiap satelit, rentang yang valid untuk kolom ini dapat berupa: Penelusuran : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN C/A code lock: [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK is set Bit sync (D2): [ 0 2ms ] : GNSS_MEASUREMENT_STATE_BDS_D2_BIT_SYNC is set Bit sync (D1): [ 0 20ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC is set Subframe (D2): [ 0 0.6s ] : GNSS_MEASUREMENT_STATE_BDS_D2_SUBFRAME_SYNC is set Subframe (D1): [ 0 6s ] : GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC is set Time of week : [ 0 1week ] : GNSS_MEASUREMENT_STATE_TOW_DECODED is set

Untuk Galileo, ini adalah: Menerima waktu Galileo dalam seminggu, pada waktu pengukuran dalam nanodetik.

Kunci kode E1BC : [ 0 4 md ] : GNSS_MEASUREMENT_STATE_GAL_E1BC_CODE_LOCK ditetapkan Kunci kode ke-2 E1C: [ 0 100 md ] : GNSS_MEASUREMENT_STATE_GAL_E1C_2ND_CODE_LOCK ditetapkan

Halaman E1B : [ 0 2s ] : GNSS_MEASUREMENT_STATE_GAL_E1B_PAGE_SYNC ditetapkan Waktu dalam seminggu: [ 0 1week ] : GNSS_MEASUREMENT_STATE_TOW_DECODED ditetapkan

Untuk SBAS, ini adalah: Waktu SBAS yang diterima, pada waktu pengukuran dalam nanodetik.

Dengan status sinkronisasi tertinggi yang dapat dicapai, per setiap satelit, rentang yang valid untuk kolom ini dapat berupa: Penelusuran : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN C/A code lock: [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK is set Symbol sync : [ 0 2ms ] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC is set Message : [ 0 1s ] : GNSS_MEASUREMENT_STATE_SBAS_SYNC is set

Definisi pada baris 1763 dari file gps.h .

int64_t received_sv_time_uncertainty_in_ns

Ketidakpastian 1-Sigma dari Waktu dalam Seminggu GPS yang Diterima dalam nanodetik.

Nilai ini harus diisi jika 'state' != GPS_MEASUREMENT_STATE_UNKNOWN.

Definisi di baris 1770 dari file gps.h .

ukuran size_t

ditetapkan ke sizeof(GpsMeasurement)

Definisi di baris 1658 dari file gps.h .

snr_db ganda

Rasio sinyal terhadap derau pada output korelator dalam dB. Jika data tersedia, 'flags' harus berisi GNSS_MEASUREMENT_HAS_SNR. Ini adalah rasio daya dari "tinggi puncak korelasi di atas lantai derau yang diamati" ke "RMS derau".

Definisi di baris 1909 dari file gps.h .

Per status sinkronisasi satelit. Status ini mewakili status sinkronisasi saat ini untuk satelit terkait. Berdasarkan status sinkronisasi, kolom 'received GPS tow' harus ditafsirkan dengan semestinya.

Nilai ini wajib diisi.

Definisi di baris 1694 dari file gps.h .

int16_t svid

Nomor ID kendaraan satelit, seperti yang ditentukan dalam GnssSvInfo::svid Ini adalah nilai wajib.

Definisi di baris 1667 dari file gps.h .

double time_offset_ns

Offset waktu saat pengukuran dilakukan dalam nanodetik. Waktu penerima referensi ditentukan oleh GpsData::clock::time_ns dan harus ditafsirkan dengan cara yang sama seperti yang ditunjukkan oleh GpsClock::type .

Tanda time_offset_ns diberikan oleh persamaan berikut: waktu pengukuran = GpsClock::time_ns + time_offset_ns

Fitur ini memberikan stempel waktu individual untuk pengukuran, dan memungkinkan akurasi sub-nanodetik. Nilai ini wajib diisi.

Definisi di baris 1686 dari file gps.h .


Dokumentasi untuk struct ini dibuat dari file berikut:
  • hardware/libhardware/include/hardware/ gps.h