Référence de structure de mesure Gnss

Référence de structure de mesure Gnss

#include < gps.h >

Champs de données

taille_t taille
GnssMesureDrapeaux drapeaux
int16_t svid
GnssConstellationType constellation
double time_offset_ns
État de mesure Gnss État
int64_t reçu_sv_time_in_ns
int64_t reçu_sv_time_uncertainty_in_ns
double c_n0_dbhz
double pseudorange_rate_mps
double pseudorange_rate_uncertainty_mps
GnssAccumulatedDeltaRangeState accumulé_delta_range_state
double accumulé_delta_range_m
double accumulé_delta_range_uncertainty_m
flotter transporteur_fréquence_hz
int64_t transporteur_cycles
double phase_porteuse
double carrier_phase_uncertainty
GnssMultipathIndicator indicateur_multipath
double snr_db

Description détaillée

Représente une mesure GNSS, elle 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 rapportant les mesures attendues en fonction de la position, de la vitesse ou du temps connu ou estimé.

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

Documentation de terrain

double accumulé_delta_range_m

Plage delta accumulé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 porteuse » est donné par l'équation : plage delta accumulée = -k * phase porteuse (où k est une constante)

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

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

GnssAccumulatedDeltaRangeState accumulé_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 accumulé_delta_range_uncertainty_m

Incertitude 1-Sigma de la plage delta accumulée en mètres. Cette valeur doit être renseignée si « état de plage delta accumulé » != 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 transporteur_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 d'éventuels sauts de cycle et réinitialisations dans l'accumulation de cette valeur peuvent être déduites des indicateurs cumulative_delta_range_state.

Si les données sont disponibles, les « drapeaux » doivent contenir GNSS_MEASUREMENT_HAS_CARRIER_CYCLES.

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

flotteur Carrier_Frequence_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 « drapeaux » doivent contenir GNSS_MEASUREMENT_HAS_CARRIER_FREQUENCY.

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

phase_porteuse double

La phase RF détectée par le récepteur, dans la plage [0,0, 1,0]. Il s'agit généralement d'une 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 la phase porteuse».

Si les données sont disponibles, les « drapeaux » doivent contenir GNSS_MEASUREMENT_HAS_CARRIER_PHASE.

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

double carrier_phase_uncertainty

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

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

Constellation GnssConstellationType

Définit la constellation du SV donné. 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 superposés qui se manifestent par des pics de corrélation déformés.

  • s'il existe 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, rapportez GNSS_MULTIPATH_INDICATOR_UNKNOWN

Exemple : lors de l'exécution du test standardisé de performances par trajets multiples (3GPP TS 34.171), l'indicateur de trajets multiples doit signaler GNSS_MULTIPATH_INDICATOR_PRESENT pour les signaux suivis et contenant des trajets multiples, et GNSS_MULTIPATH_INDICATOR_NOT_PRESENT pour les signaux suivis et ne contenant pas de trajets 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 taux pseudo-orange donnée inclut 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é », ainsi que 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 pseudoorange». Une valeur positive « non corrigée » indique que le SV s'éloigne du récepteur.

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

Il devrait s'agir du taux de pseudo-distance le plus précis disponible, basé sur de nouvelles mesures de signal provenant 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 provenant 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 comme 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 GPS et QZSS, il s'agit de : 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 Verrouillage par code C/A : [ 0 1 ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK est défini Synchronisation des bits : [ 0 20 ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC est défini Synchronisation de sous-trame : [ 0 6s ] : GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC est défini TOW décodé : [ 0 1week ] : GNSS_MEASUREMENT_STATE_TOW_DECODED est défini

Notez bien : s'il y a une ambiguïté en milliseconde entière, GNSS_MEASUREMENT_STATE_MSEC_AMBIGUOUS doit être défini en conséquence, dans le champ 'state'.

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

Pour Glonass, il s'agit de : L'heure du jour Glonass reçue, à l'heure de 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 par code C/A : [ 0 1 ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK est défini Synchronisation des symboles : [ 0 10 ms ] : 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 du jour : [ 0 1day ] : GNSS_MEASUREMENT_STATE_GLO_TOD_DECO DED est défini

Pour Beidou, c'est : Heure de la semaine Beidou reçue, à l'heure de 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 par code C/A : [ 0 1 ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK est défini Bit sync (D2) : [ 0 2 ms ] : GNSS_MEASUREMENT_STATE_BDS_D2_BIT_SYNC est défini Bit sync (D1) : [ 0 20 ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC est défini Sous-trame (D2) : [ 0 0.6s ] : GNSS_MEASUREMENT_STATE_BDS_D2_SUBFRAME_SYNC est défini Sous-trame (D1) : [ 0 6s ] : GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC est défini. Heure de semaine : [ 0 1week ] : GNSS_MEASUREMENT_STATE_TOW_DECODED est défini

Pour Galileo, c'est : Heure de la semaine reçue par Galileo, à l'heure de mesure en nanosecondes.

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

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 le 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 par code C/A : [ 0 1 ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK est défini Synchronisation des symboles : [ 0 2 ms ] : 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/bruit à la sortie du corrélateur en dB. Si les données sont disponibles, les « drapeaux » doivent contenir GNSS_MEASUREMENT_HAS_SNR. Il s'agit du rapport de puissance entre la « hauteur du pic de corrélation au-dessus du bruit de fond observé » et « le bruit RMS ».

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

Par état de synchronisation par satellite. Il représente l'état de synchronisation actuel du satellite associé. En fonction de l'état de 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 :
  • matériel/libhardware/include/hardware/ gps.h