Riferimento alla struttura GnssMeasurement

Riferimento alla struttura GnssMeasurement

#include < gps.h >

Campi dati

taglia_t taglia
GnssMeasurementFlags bandiere
int16_t svid
GnssConstellationType costellazione
Doppio time_offset_ns
GnssMeasurementState stato
int64_t ricevuto_sv_time_in_ns
int64_t ricevuto_sv_time_incertezza_in_ns
Doppio c_n0_dbhz
Doppio pseudorange_rate_mps
Doppio pseudorange_rate_uncertainty_mps
GnssAccumulatedDeltaRangeState accumulated_delta_range_state
Doppio intervallo_delta_accumulato_m
Doppio intervallo_delta_accumulato_incertezza_m
galleggiante frequenza_portante_hz
int64_t carrier_cycles
Doppio fase_portante
Doppio vettore_fase_incertezza
GnssMultipathIndicator indicatore_percorso multiplo
Doppio snr_db

Descrizione dettagliata

Rappresenta una misurazione GNSS, contiene informazioni grezze 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 è possibile sintetizzare le misurazioni calcolando o riportando le misurazioni previste in base a posizione, velocità o tempo noti o stimati.

Definizione alla riga 1656 del file gps.h .

Documentazione sul campo

doppio intervallo_delta_accumulato_m

Intervallo delta accumulato dall'ultimo azzeramento del canale in metri. Un valore positivo indica che l'SV si sta allontanando dal ricevitore.

Il segno del '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 compilato se 'stato intervallo delta accumulato' != GPS_ADR_STATE_UNKNOWN. Tuttavia, si prevede che i dati siano accurati solo quando: 'accumulated delta range state' == GPS_ADR_STATE_VALID.

Definizione alla riga 1835 del file gps.h .

GnssAccumulatedDeltaRangeState accumulated_delta_range_state

Stato dell'intervallo delta accumulato. Indica se l'ADR è azzerato o c'è uno slittamento ciclo (che indica la perdita del blocco).

Questo è un valore obbligatorio.

Definizione alla riga 1821 del file gps.h .

doppio accumulated_delta_range_uncertainty_m

Incertezza 1-Sigma dell'intervallo delta accumulato in metri. Questo valore deve essere compilato se 'stato intervallo delta accumulato' != GPS_ADR_STATE_UNKNOWN.

Definizione alla riga 1841 del file gps.h .

doppio c_n0_dbhz

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

Questo è un valore obbligatorio.

Definizione alla riga 1778 del file gps.h .

int64_t carrier_cycles

Il numero di cicli di portanti completi tra il satellite e il ricevitore. La frequenza di riferimento è data dal campo 'carrier_frequency_hz'. Indicazioni di possibili slittamenti di ciclo e reset nell'accumulo di questo valore possono essere dedotte dai flag accumulated_delta_range_state.

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

Definizione alla riga 1861 del file gps.h .

float carrier_frequency_hz

Frequenza portante alla quale vengono modulati codici e messaggi, può essere L1 o L2. Se il campo non è impostato, si presume che la frequenza portante sia L1.

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

Definizione alla riga 1850 del file gps.h .

doppia fase_portante

La fase RF rilevata dal ricevitore, nell'intervallo [0,0, 1,0]. Questa è solitamente la parte frazionaria della misurazione completa della fase portante.

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

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

Definizione alla riga 1873 del file gps.h .

doppia portante_fase_incertezza

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

Definizione alla riga 1880 del file gps.h .

GnssConstellationType costellazione

Definisce la costellazione del dato SV. Il valore dovrebbe essere una di quelle costanti GNSS_CONSTELLATION_*

Definizione alla riga 1673 del file gps.h .

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

Definizione alla riga 1661 del file gps.h .

GnssMultipathIndicator multipath_indicatore

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

L'indicatore multipath ha lo scopo di segnalare la presenza di segnali sovrapposti che si manifestano come picchi di correlazione distorti.

  • se è presente una forma del picco di correlazione distorta, segnalare che il multipath è GNSS_MULTIPATH_INDICATOR_PRESENT.
  • se non è presente una forma del picco di correlazione distorta, riportare GNSS_MULTIPATH_INDICATOR_NOT_PRESENT
  • se i segnali sono troppo deboli per discernere queste informazioni, riportare GNSS_MULTIPATH_INDICATOR_UNKNOWN

Esempio: quando si esegue il test delle prestazioni multipath sovrapposte standardizzato (3GPP TS 34.171) l'indicatore Multipath deve riportare GNSS_MULTIPATH_INDICATOR_PRESENT per quei segnali che sono tracciati e contengono multipath e GNSS_MULTIPATH_INDICATOR_NOT_PRESENT per quei segnali che sono tracciati e non contengono multipath.

Definizione alla riga 1901 del file gps.h .

doppio pseudorange_rate_mps

Pseudorange rate al timestamp in m/s. La correzione di un dato valore di Pseudorange Rate include correzioni per gli errori di frequenza di clock del ricevitore e del satellite. Assicurati che questo campo sia indipendente (vedi commento nella parte superiore della struttura GnssMeasurement .)

È obbligatorio fornire lo "pseudorange rate" "non corretto" e fornire anche il campo "drift" di GpsClock (quando si fornisce lo pseudorange rate non corretto, non applicare le correzioni sopra descritte).

Il valore include "l'incertezza del tasso di pseudorange". Un valore positivo "non corretto" indica che l'SV si sta allontanando dal ricevitore.

Il segno dello 'pseudorange rate' non corretto e la sua relazione con il segno dello 'spostamento doppler' è dato dall'equazione: pseudorange rate = -k * spostamento doppler (dove k è una costante)

Questo dovrebbe essere il tasso di pseudorange più accurato disponibile, basato su nuove misurazioni del segnale da questo canale.

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

Definizione alla riga 1805 del file gps.h .

doppio pseudorange_rate_uncertainty_mps

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

Questo è un valore obbligatorio.

Definizione alla riga 1813 del file gps.h .

int64_t ha ricevuto_sv_time_in_ns

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

Per GPS e QZSS, questo è: Ricevuto l'ora della settimana GPS al momento della misurazione, in nanosecondi. Il valore è relativo all'inizio della settimana GPS corrente.

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

Nota bene: se c'è qualche ambiguità nel millisecondo intero, GNSS_MEASUREMENT_STATE_MSEC_AMBIGUOUS dovrebbe essere impostato di conseguenza, nel campo 'state'.

Questo valore deve essere compilato se 'state' != GNSS_MEASUREMENT_STATE_UNKNOWN.

Per Glonass, questo è: ricevuto Glonass ora del giorno, al momento della misurazione in nanosecondi.

Dato lo stato di sincronizzazione più alto che può essere raggiunto, per ciascun satellite, l'intervallo valido per questo campo può essere: Ricerca : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN Blocco codice C/A : [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK è impostato Sincronizzazione simboli : [ 0 10 ms ] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC è impostato Sincronizzazione bit: [ 0 20 ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC è impostato Sincronizzazione 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, questo è: Ricevuto l'ora della settimana di Beidou, al momento della misurazione in nanosecondi.

Dato lo stato di sincronizzazione più alto che può essere raggiunto, per ciascun satellite, l'intervallo valido per questo campo può essere: Ricerca : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN Blocco codice C/A: [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK è impostato Sincronizzazione bit (D2): [ 0 2MS]: GNSS_MEASUREMENT_STATE_BDS_D2_bit_sync è set bit sync (d1): [0 20ms]: gnss_measurement_state_bit_bit_sync è set di sottoframe (d2) settimana : [ 0 1 settimana ] : GNSS_MEASUREMENT_STATE_TOW_DECODED è impostato

Per Galileo, questo è: Ricevuto l'ora della settimana Galileo, al momento della misurazione in nanosecondi.

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

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

Per SBAS, questo è: Tempo SBAS ricevuto, al momento della misurazione in nanosecondi.

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

Definizione alla riga 1763 del file gps.h .

int64_t ha ricevuto_sv_time_uncertainty_in_ns

Incertezza 1-Sigma dell'ora della settimana GPS ricevuta in nanosecondi.

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

Definizione alla riga 1770 del file gps.h .

taglia_t taglia

impostato su sizeof(GpsMeasurement)

Definizione alla riga 1658 del file gps.h .

doppio snr_db

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

Definizione alla riga 1909 del file gps.h .

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

Questo è un valore obbligatorio.

Definizione alla riga 1694 del file gps.h .

int16_t svid

Numero ID veicolo satellitare, come definito in GnssSvInfo::svid Questo è un valore obbligatorio.

Definizione alla riga 1667 del file gps.h .

doppio 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: misura tempo = GpsClock::time_ns + time_offset_ns

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

Definizione alla riga 1686 del file gps.h .


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