Riferimento alla struttura GnssMeasurement

Riferimento alla struttura GnssMeasurement

#include < gps.h >

Campi dati

size_t  size
 
GnssMeasurementFlags   flags
 
int16_t  svid
 
GnssConstellationType   costellazione
 
doppio  time_offset_ns
 
GnssMeasurementState   state
 
int64_t  received_sv_time_in_ns
 
int64_t  received_sv_time_uncertainty_in_ns
 
doppio  c_n0_dbhz
 
doppio  pseudorange_rate_mps
 
doppio  pseudorange_rate_uncertainty_mps
 
GnssAccumulatedDeltaRangeState   accumulated_delta_range_state
 
doppio  accumulated_delta_range_m
 
doppio  accumulated_delta_range_uncertainty_m
 
float  carrier_frequency_hz
 
int64_t  carrier_cycles
 
doppio  carrier_phase
 
doppio  carrier_phase_uncertainty
 
GnssMultipathIndicator   multipath_indicator
 
doppio  snr_db
 

Descrizione dettagliata

Rappresenta una misurazione GNSS e contiene informazioni non elaborate e calcolate.

Indipendenza: tutte le informazioni sulla misurazione del segnale (ad es. sv_time, pseudorange_rate, multipath_indicator) riportate in questa struttura devono essere basate solo sulle misurazioni del segnale GNSS. Non puoi sintetizzare le misurazioni calcolando o registrando le misurazioni previste in base a posizione, velocità o tempo noti o stimati.

Definizione nella riga 1656 del file gps.h .

Documentazione dei campi

double accumulated_delta_range_m

Intervallo delta accumulato dall'ultimo ripristino del canale in metri. Un valore positivo indica che il segnale video si sta allontanando dal ricevitore.

Il segno dell'intervallo delta accumulato e la sua relazione con il segno della fase portante è dato dall'equazione: intervallo delta accumulato = -k * fase portante (dove k è una costante)

Questo valore deve essere inserito se "accumulated delta range state" != GPS_ADR_STATE_UNKNOWN. Tuttavia, si prevede che i dati siano accurati solo quando: "accumulated delta range state" == GPS_ADR_STATE_VALID.

Definizione nella riga 1835 del file gps.h .

GnssAccumulatedDeltaRangeState accumulated_delta_range_state

Stato dell'intervallo delta accumulato. Indica se l'ADR è reimpostato o se si verifica un ciclo di slittamento (che indica la perdita di blocco).

Questo è un valore obbligatorio.

Definizione nella riga 1821 del file gps.h .

double accumulated_delta_range_uncertainty_m

Incertezza 1-Sigma dell'intervallo delta accumulato in metri. Questo valore deve essere inserito se "accumulated delta range state" != GPS_ADR_STATE_UNKNOWN.

Definizione nella riga 1841 del file gps.h .

doppio c_n0_dbhz

Densità del rapporto segnale/rumore in dB-Hz, in genere nell'intervallo [0, 63]. Contiene il valore C/N0 misurato per il segnale alla porta dell'antenna.

Questo è un valore obbligatorio.

Definizione nella riga 1778 del file gps.h .

int64_t carrier_cycles

Il numero di cicli completi del vettore tra il satellite e il ricevitore. La frequenza di riferimento è indicata dal campo "carrier_frequency_hz". Indicazioni di possibili slittamenti e reimpostazioni del ciclo nell'accumulo di questo valore possono essere dedotte dagli indicatori accumulated_delta_range_state.

Se i dati sono disponibili, "flags" deve contenere GNSS_MEASUREMENT_HAS_CARRIER_CYCLES.

Definizione nella riga 1861 del file gps.h .

float carrier_frequency_hz

Frequenza del vettore a cui vengono modulati i codici e i messaggi, può essere L1 o L2. Se il campo non è impostato, si presume che la frequenza del vettore sia L1.

Se i dati sono disponibili, "flags" deve contenere GNSS_MEASUREMENT_HAS_CARRIER_FREQUENCY.

Definizione nella riga 1850 del file gps.h .

doppio carrier_phase

La fase RF rilevata dal ricevitore, nell'intervallo [0,0, 1,0]. Di solito si tratta della parte frazionaria della misurazione completa della fase portante.

La frequenza di riferimento è indicata dal campo "carrier_frequency_hz". Il valore contiene l''incertezza della fase portante'.

Se i dati sono disponibili, "flags" deve contenere GNSS_MEASUREMENT_HAS_CARRIER_PHASE.

Definizione nella riga 1873 del file gps.h .

raddoppiare l'incertezza_fase_operatore

Incertezza 1-Sigma della fase portante. Se i dati sono disponibili, "flags" deve contenere GNSS_MEASUREMENT_HAS_CARRIER_PHASE_UNCERTAINTY.

Definizione nella riga 1880 del file gps.h .

Definisce la costellazione del satellite specificato. Il valore deve essere una delle costanti GNSS_CONSTELLATION_*

Definizione nella riga 1673 del file gps.h .

Un insieme di flag che indicano la validità dei campi in questa struttura di dati.

Definizione nella riga 1661 del file gps.h .

GnssMultipathIndicator multipath_indicator

Un'enumerazione che indica lo stato "multipath" dell'evento.

L'indicatore di multipath è progettato per segnalare la presenza di segnali sovrapposti che si manifestano come picchi di correlazione distorti.

  • Se la forma del picco di correlazione è distorta, indica che il multipath è GNSS_MULTIPATH_INDICATOR_PRESENT.
  • Se non è presente una forma del picco di correlazione distorta, segnala GNSS_MULTIPATH_INDICATOR_NOT_PRESENT
  • Se i segnali sono troppo deboli per distinguere queste informazioni, segnala GNSS_MULTIPATH_INDICATOR_UNKNOWN

Esempio: quando esegui il test di prestazione del multipath sovrapposto standardizzato (3GPP TS 34.171), l'indicatore di multipath deve segnalare GNSS_MULTIPATH_INDICATOR_PRESENT per gli indicatori monitorati e contenenti multipath e GNSS_MULTIPATH_INDICATOR_NOT_PRESENT per gli indicatori monitorati e non contenenti multipath.

Definizione nella riga 1901 del file gps.h .

doppio pseudorange_rate_mps

Velocità pseudo-intervallo al timestamp in m/s. La correzione di un determinato valore di frequenza pseudorange include le correzioni per gli errori di frequenza dell'orologio del ricevitore e del satellite. Assicurati che questo campo sia indipendente (vedi il commento nella parte superiore della struttura GnssMeasurement .)

È obbligatorio fornire il valore "velocità pseudorange" "non corretta" e anche il campo "deviazione" di GpsClock (quando fornisci la velocità pseudorange non corretta, non applicare le correzioni descritte sopra).

Il valore include l'"incertezza della frequenza della pseudodistanza". Un valore "non corretto" positivo indica che il SV si sta allontanando dal ricevitore.

Il segno della "velocità di pseudoraggiungere" "non corretta" e la sua relazione con il segno dello "spostamento Doppler" è data dall'equazione: velocità di pseudoraggiungere = -k * spostamento Doppler (dove k è una costante)

Dovrebbe essere la frequenza pseudo-intervallo più precisa disponibile, in base alle misurazioni dei segnali aggiornate di questo canale.

È obbligatorio che questo valore venga fornito con la qualità PRR tipica della fase dell'operatore (pochi cm/sec di incertezza al secondo o meglio) quando i segnali sono sufficientemente forti e stabili, ad esempio i segnali di un simulatore GPS a >= 35 dB-Hz.

Definizione nella riga 1805 del file gps.h .

double pseudorange_rate_uncertainty_mps

Incertezza 1-Sigma di pseudorange_rate_mps. L'incertezza è rappresentata come un valore assoluto (unidirezionale).

Questo è un valore obbligatorio.

Definizione nella riga 1813 del file gps.h .

int64_t received_sv_time_in_ns

L'ora della settimana GNSS ricevuta al momento della misurazione, in nanosecondi. Assicurati che questo campo sia indipendente (vedi il commento nella parte superiore della struttura GnssMeasurement .)

Per GPS e QZSS, si tratta di: Ora della settimana del segnale GPS ricevuta al momento della misurazione, in nanosecondi. Il valore è relativo all'inizio della settimana GPS corrente.

Dato lo stato di sincronizzazione più elevato che può essere raggiunto, per ogni satellite, l'intervallo valido per questo campo può essere: Ricerca : [0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN Blocco codice C/A : [0 1 ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK è impostato Sincronizzazione bit : [0 20 ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC è impostato Sincronizzazione del sottoframe : [0 6 s ] : GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC è impostato TOW decodificato : [0 1 settimana ] : GNSS_MEASUREMENT_STATE_TOW_DECODED è impostato

Nota bene: se esiste un'ambiguità nel millisecondo intero, GNSS_MEASUREMENT_STATE_MSEC_AMBIGUOUS deve essere impostato di conseguenza nel campo "state".

Questo valore deve essere inserito se "state" != GNSS_MEASUREMENT_STATE_UNKNOWN.

Per Glonass, si tratta di: Ora del giorno Glonass ricevuta, al momento della misurazione in nanosecondi.

Dato lo stato di sincronizzazione più elevato che può essere raggiunto, per ogni satellite, l'intervallo valido per questo campo può essere: Ricerca : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN Blocco codice C/A : [ 0 1 ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK è impostato Sincronizzazione dei simboli : [ 0 10 ms ] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC è impostato Sincronizzazione dei bit : [ 0 20 ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC è impostato Sincronizzazione delle stringhe : [ 0 2 s ] : GNSS_MEASUREMENT_STATE_GLO_STRING_SYNC è impostato Ora del giorno : [ 0 1 giorno ] : GNSS_MEASUREMENT_STATE_GLO_TOD_DECODED è impostato

Per Beidou, si tratta di: ora della settimana di Beidou ricevuta al momento della misurazione in nanosecondi.

Dato lo stato di sincronizzazione più elevato che può essere raggiunto, per ogni satellite l'intervallo valido per questo campo può essere: Ricerca : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN Blocco codice C/A: [ 0 1 ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK è impostato Sincronizzazione bit (D2): [ 0 2 ms ] : GNSS_MEASUREMENT_STATE_BDS_D2_BIT_SYNC è impostato Sincronizzazione bit (D1): [ 0 20 ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC è impostato Sottoframe (D2): [ 0 0, 6 s ] : GNSS_MEASUREMENT_STATE_BDS_D2_SUBFRAME_SYNC è impostato Sottoframe (D1): [ 0 6 s ] : GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC è impostato Giorno della settimana : [ 0 1 settimana ] : GNSS_MEASUREMENT_STATE_TOW_DECODED è impostato

Per Galileo, si tratta di: ora della settimana di Galileo ricevuta al momento della misurazione in nanosecondi.

Blocco codice E1BC : [ 0 4ms ] : GNSS_MEASUREMENT_STATE_GAL_E1BC_CODE_LOCK è impostato Blocco codice 2 E1C: [ 0 100ms ] : GNSS_MEASUREMENT_STATE_GAL_E1C_2ND_CODE_LOCK è impostato

Pagina E1B : [ 0 2s ] : GNSS_MEASUREMENT_STATE_GAL_E1B_PAGE_SYNC è impostato Tempo della settimana: [ 0 1week ] : GNSS_MEASUREMENT_STATE_TOW_DECODED è impostato

Per SBAS, si tratta di: Ora SBAS ricevuta, al momento della misurazione in nanosecondi.

Dato lo stato di sincronizzazione più elevato che può essere raggiunto, per ogni satellite, l'intervallo valido per questo campo può essere: Ricerca : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN Blocco codice C/A: [ 0 1 ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK è impostato Sincronizzazione dei simboli : [ 0 2 ms ] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC è impostato Messaggio : [ 0 1 s ] : GNSS_MEASUREMENT_STATE_SBAS_SYNC è impostato

Definizione nella riga 1763 del file gps.h .

int64_t received_sv_time_uncertainty_in_ns

Incertezza 1-Sigma del momento della settimana del segnale GPS ricevuto in nanosecondi.

Questo valore deve essere compilato se "state" != GPS_MEASUREMENT_STATE_UNKNOWN.

Definizione nella riga 1770 del file gps.h .

Dimensione size_t

impostato su sizeof(GpsMeasurement)

Definizione nella riga 1658 del file gps.h .

doppio snr_db

Rapporto segnale/rumore all'uscita del correlatore in dB. Se i dati sono disponibili, "flags" deve contenere GNSS_MEASUREMENT_HAS_SNR. Si tratta del rapporto di potenza tra l'"altezza del picco di correlazione sopra il livello di rumore osservato" e l'"RMS del rumore".

Definizione nella riga 1909 del file gps.h .

Per stato di sincronizzazione del satellite. Rappresenta lo stato di sincronizzazione corrente del satellite associato. In base allo stato di sincronizzazione, il campo "rimorchio GPS ricevuto" deve essere interpretato di conseguenza.

Questo è un valore obbligatorio.

Definizione nella riga 1694 del file gps.h .

int16_t svid

Numero ID veicolo satellitare, come definito in GnssSvInfo::svid Si tratta di un valore obbligatorio.

Definizione nella riga 1667 del file gps.h .

double time_offset_ns

Offset di tempo in cui è stata eseguita la misurazione in nanosecondi. L'ora del ricevitore di riferimento è specificata da GpsData::clock::time_ns e deve essere interpretata nello stesso modo indicato da GpsClock::type .

Il segno di time_offset_ns è dato dalla seguente equazione: tempo_misurazione = GpsClock::time_ns + time_offset_ns

Fornisce un timestamp individuale per la misurazione e consente un'accuratezza inferiore al nanosecondo. Questo è un valore obbligatorio.

Definizione nella riga 1686 del file gps.h .


La documentazione di questa struttura è stata generata dal seguente file:
  • hardware/libhardware/include/hardware/ gps.h