Référence de structure GnssMeasurement

Référence de structure GnssMeasurement

#include < gps.h >

Champs de données

taille_t Taille
GnssMesureDrapeaux drapeaux
int16_t vidéo
GnssConstellationType constellation
double time_offset_ns
GnssMeasurementState Etat
int64_t Received_sv_time_in_ns
int64_t Received_sv_time_uncertainty_in_ns
double c_n0_dbhz
double pseudorange_rate_mps
double pseudorange_rate_uncertainty_mps
GnssAccumuléDeltaRangeState cumul_delta_range_state
double cumul_delta_range_m
double cumul_delta_range_uncertainty_m
flotteur fréquence_porteuse_hz
int64_t carrier_cycles
double carrier_phase
double carrier_phase_uncertainty
GnssMultipathIndicator multipath_indicator
double snr_db

Description détaillée

Représente une Mesure GNSS, il contient des informations brutes et calculées.

Indépendance - Toutes les informations de mesure du signal (par exemple, sv_time, pseudorange_rate, multipath_indicator) rapportées dans cette structure doivent être basées uniquement sur les mesures du signal GNSS. Vous ne pouvez pas synthétiser les mesures en calculant ou en signalant les mesures attendues en fonction de la position, de la vitesse ou du temps connus ou estimés.

Définition à la ligne 1656 du fichier gps.h .

Documentation de terrain

double cumul_delta_range_m

Plage delta cumulée depuis la dernière réinitialisation du canal en mètres. Une valeur positive indique que le SV s'éloigne du récepteur.

Le signe de la "plage delta accumulée" et sa relation avec le signe de la "phase de la porteuse" est donné par l'équation : plage delta accumulée = -k * phase de la porteuse (où k est une constante)

Cette valeur doit être renseignée si 'accumulated delta range state' != GPS_ADR_STATE_UNKNOWN. Cependant, on s'attend à ce que les données ne soient exactes que lorsque : 'état de la plage delta accumulée' == GPS_ADR_STATE_VALID.

Définition à la ligne 1835 du fichier gps.h .

GnssAccumulatedDeltaRangeState accumulate_delta_range_state

État de la plage delta accumulée. Il indique si l'ADR est réinitialisé ou s'il y a un glissement de cycle (indiquant une perte de verrouillage).

Il s'agit d'une valeur obligatoire.

Définition à la ligne 1821 du fichier gps.h .

double cumul_delta_range_uncertainty_m

Incertitude 1-Sigma de la plage delta accumulée en mètres. Cette valeur doit être renseignée si 'accumulated delta range state' != GPS_ADR_STATE_UNKNOWN.

Définition à la ligne 1841 du fichier gps.h .

double c_n0_dbhz

Densité porteuse/bruit en dB-Hz, généralement dans la plage [0, 63]. Il contient la valeur C/N0 mesurée pour le signal au port d'antenne.

Il s'agit d'une valeur obligatoire.

Définition à la ligne 1778 du fichier gps.h .

int64_t carrier_cycles

Le nombre de cycles de porteuse complets entre le satellite et le récepteur. La fréquence de référence est donnée par le champ 'carrier_frequency_hz'. Des indications de glissements de cycle et de réinitialisations possibles dans l'accumulation de cette valeur peuvent être déduites des drapeaux cumulés_delta_range_state.

Si les données sont disponibles, les 'flags' doivent contenir GNSS_MEASUREMENT_HAS_CARRIER_CYCLES.

Définition à la ligne 1861 du fichier gps.h .

flotteur porteuse_fréquence_hz

Fréquence porteuse à laquelle les codes et les messages sont modulés, elle peut être L1 ou L2. Si le champ n'est pas défini, la fréquence porteuse est supposée être L1.

Si les données sont disponibles, les 'flags' doivent contenir GNSS_MEASUREMENT_HAS_CARRIER_FREQUENCY.

Définition à la ligne 1850 du fichier gps.h .

double porteuse_phase

La phase RF détectée par le récepteur, dans la plage [0.0, 1.0]. Il s'agit généralement de la partie fractionnaire de la mesure complète de la phase porteuse.

La fréquence de référence est donnée par le champ 'carrier_frequency_hz'. La valeur contient "l'incertitude de phase de la porteuse".

Si les données sont disponibles, les 'flags' doivent contenir GNSS_MEASUREMENT_HAS_CARRIER_PHASE.

Définition à la ligne 1873 du fichier gps.h .

double porteuse_phase_incertitude

Incertitude 1-Sigma de la phase porteuse. Si les données sont disponibles, les 'flags' doivent contenir GNSS_MEASUREMENT_HAS_CARRIER_PHASE_UNCERTAINTY.

Définition à la ligne 1880 du fichier gps.h .

Définit la constellation de la SV donnée. La valeur doit être l'une de ces constantes GNSS_CONSTELLATION_*

Définition à la ligne 1673 du fichier gps.h .

Un ensemble d'indicateurs indiquant la validité des champs dans cette structure de données.

Définition à la ligne 1661 du fichier gps.h .

GnssMultipathIndicator multipath_indicator

Une énumération qui indique l'état 'multipath' de l'événement.

L'indicateur de trajets multiples est destiné à signaler la présence de signaux se chevauchant qui se manifestent par des pics de corrélation déformés.

  • s'il y a une forme de pic de corrélation déformée, signalez que le trajet multiple est GNSS_MULTIPATH_INDICATOR_PRESENT.
  • s'il n'y a pas de forme de pic de corrélation déformée, signalez GNSS_MULTIPATH_INDICATOR_NOT_PRESENT
  • si les signaux sont trop faibles pour discerner cette information, signalez GNSS_MULTIPATH_INDICATOR_UNKNOWN

Exemple : lors de l'exécution du test de performances multivoies à chevauchement normalisé (3GPP TS 34.171), l'indicateur multivoies doit indiquer GNSS_MULTIPATH_INDICATOR_PRESENT pour les signaux suivis et contenant des voies multiples, et GNSS_MULTIPATH_INDICATOR_NOT_PRESENT pour les signaux suivis et ne contenant pas de voies multiples.

Définition à la ligne 1901 du fichier gps.h .

double pseudorange_rate_mps

Taux de pseudo-orange à l'horodatage en m/s. La correction d'une valeur de débit pseudo-orange donnée comprend des corrections pour les erreurs de fréquence d'horloge du récepteur et du satellite. Assurez-vous que ce champ est indépendant (voir le commentaire en haut de la structure GnssMeasurement .)

Il est obligatoire de fournir le "taux de pseudo-orange" "non corrigé" et de fournir également le champ "dérive" de GpsClock (lorsque vous fournissez le taux de pseudo-distance non corrigé, n'appliquez pas les corrections décrites ci-dessus.)

La valeur inclut « l'incertitude du taux pseudo-orange ». Une valeur "non corrigée" positive indique que le SV s'éloigne du récepteur.

Le signe du "taux de pseudo-orange" "non corrigé" et sa relation avec le signe du "décalage Doppler" est donné par l'équation : taux de pseudodistance = -k * décalage Doppler (où k est une constante)

Cela devrait être le taux de pseudo-distance le plus précis disponible, basé sur de nouvelles mesures de signal de ce canal.

Il est obligatoire que cette valeur soit fournie avec une qualité PRR de phase porteuse typique (quelques cm/sec par seconde d'incertitude, ou mieux) - lorsque les signaux sont suffisamment forts et stables, par exemple les signaux d'un simulateur GPS à >= 35 dB-Hz.

Définition à la ligne 1805 du fichier gps.h .

double pseudorange_rate_uncertainty_mps

Incertitude 1-Sigma du pseudorange_rate_mps. L'incertitude est représentée par une valeur absolue (unilatérale).

Il s'agit d'une valeur obligatoire.

Définition à la ligne 1813 du fichier gps.h .

int64_t reçu_sv_time_in_ns

Heure de la semaine GNSS reçue au moment de la mesure, en nanosecondes. Assurez-vous que ce champ est indépendant (voir le commentaire en haut de la structure GnssMeasurement .)

Pour le GPS et le QZSS, il s'agit de : l'heure de la semaine GPS reçue au moment de la mesure, en nanosecondes. La valeur est relative au début de la semaine GPS en cours.

Étant donné l'état de synchronisation le plus élevé pouvant être atteint, pour chaque satellite, la plage valide pour ce champ peut être : Recherche : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN C/A code lock : [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK est défini Bit sync : [ 0 20ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC est activé Subframe sync : [ 0 6s ] : GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC est activé TOW décodé : [ 0 1week ] : GNSS_MEASUREMENT_STATE_TOW_DECODED est activé

Notez bien : s'il y a une ambiguïté dans l'entier milliseconde, GNSS_MEASUREMENT_STATE_MSEC_AMBIGUOUS doit être défini en conséquence, dans le champ "état".

Cette valeur doit être renseignée si 'état' != GNSS_MEASUREMENT_STATE_UNKNOWN.

Pour Glonass, il s'agit de : l'heure Glonass reçue de la journée, au moment de la mesure en nanosecondes.

Étant donné l'état de synchronisation le plus élevé pouvant être atteint, pour chaque satellite, la plage valide pour ce champ peut être : Recherche : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN C/A code lock : [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK est défini Symbol sync : [ 0 10ms ] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC est défini Bit sync : [ 0 20ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC est défini String sync : [ 0 2s ] : GNSS_MEASUREMENT_STATE_GLO_STRING_SYNC est défini Heure de la journée : [ 0 1day ] : GNSS_MEASUREMENT_STATE_GLO_TOD_DECODED est défini

Pour Beidou, c'est : Reçu Beidou heure de la semaine, au moment de la mesure en nanosecondes.

Étant donné l'état de synchronisation le plus élevé pouvant être atteint, pour chaque satellite, la plage valide pour ce champ peut être : Recherche : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN Verrouillage du code C/A : [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK est défini Bit sync (D2) : [ 0 2ms]: gnss_measurement_state_bds_d2_bit_sync est défini bit sync (d1): [0 20ms]: gnss_measurement_state_bit_sync est défini sous-châssis (d2): [0 0.6s]: gnsss_measurement_state_bds_de_sub semaine : [ 0 1semaine ] : GNSS_MEASUREMENT_STATE_TOW_DECODED est défini

Pour Galileo, il s'agit : de l'heure Galileo reçue de la semaine, au moment de la mesure en nanosecondes.

Verrouillage par code E1BC : [ 0 4ms ] : GNSS_MEASUREMENT_STATE_GAL_E1BC_CODE_LOCK est activé E1C 2ème verrouillage par code : [ 0 100ms ] : GNSS_MEASUREMENT_STATE_GAL_E1C_2ND_CODE_LOCK est activé

Page E1B : [ 0 2s ] : GNSS_MEASUREMENT_STATE_GAL_E1B_PAGE_SYNC est défini Heure de la semaine : [ 0 1week ] : GNSS_MEASUREMENT_STATE_TOW_DECODED est défini

Pour SBAS, il s'agit de : Temps SBAS reçu, au moment de la mesure en nanosecondes.

Étant donné l'état de synchronisation le plus élevé pouvant être atteint, pour chaque satellite, la plage valide pour ce champ peut être : Recherche : [ 0 ] : GNSS_MEASUREMENT_STATE_UNKNOWN Verrouillage du code C/A : [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK est défini Synchronisation des symboles : [ 0 2ms ] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC est défini Message : [ 0 1s ] : GNSS_MEASUREMENT_STATE_SBAS_SYNC est défini

Définition à la ligne 1763 du fichier gps.h .

int64_t reçu_sv_time_uncertainty_in_ns

Incertitude 1-Sigma de l'heure de la semaine GPS reçue en nanosecondes.

Cette valeur doit être renseignée si 'state' != GPS_MEASUREMENT_STATE_UNKNOWN.

Définition à la ligne 1770 du fichier gps.h .

taille_t taille

défini sur sizeof(GpsMeasurement)

Définition à la ligne 1658 du fichier gps.h .

double snr_db

Rapport signal sur bruit à la sortie du corrélateur en dB. Si les données sont disponibles, les 'flags' doivent contenir GNSS_MEASUREMENT_HAS_SNR. Il s'agit du rapport de puissance de la "hauteur du pic de corrélation au-dessus du bruit de fond observé" sur "le bruit RMS".

Définition à la ligne 1909 du fichier gps.h .

Par état de synchronisation satellite. Il représente l'état de synchronisation actuel du satellite associé. En fonction de l'état de la synchronisation, le champ "remorquage GPS reçu" doit être interprété en conséquence.

Il s'agit d'une valeur obligatoire.

Définition à la ligne 1694 du fichier gps.h .

int16_t svid

Numéro d'identification du véhicule satellite, tel que défini dans GnssSvInfo::svid Il s'agit d'une valeur obligatoire.

Définition à la ligne 1667 du fichier gps.h .

double time_offset_ns

Décalage temporel auquel la mesure a été prise en nanosecondes. L'heure du récepteur de référence est spécifiée par GpsData::clock::time_ns et doit être interprétée de la même manière que celle indiquée par GpsClock::type .

Le signe de time_offset_ns est donné par l'équation suivante : temps de mesure = GpsClock::time_ns + time_offset_ns

Il fournit un horodatage individuel pour la mesure et permet une précision inférieure à la nanoseconde. Il s'agit d'une valeur obligatoire.

Définition à la ligne 1686 du fichier gps.h .


La documentation de cette structure a été générée à partir du fichier suivant :
  • hardware/libhardware/include/hardware/ gps.h