GnssMeasurement構造体リファレンス

GnssMeasurement構造体リファレンス

#include < gps.h >

データフィールド

size_tサイズ
GnssMeasurementFlagsフラグ
int16_t svid
GnssConstellationType星座
ダブルtime_offset_ns
GnssMeasurementState
int64_t receive_sv_time_in_ns
int64_t receive_sv_time_uncertainty_in_ns
ダブルc_n0_dbhz
ダブルpseudorange_rate_mps
ダブルpseudorange_rate_uncertainty_mps
GnssAccumulatedDeltaRangeState Accumulated_delta_range_state
ダブルAccumulated_delta_range_m
ダブルAccumulated_delta_range_uncertainty_m
浮くcarrier_frequency_hz
int64_t carrier_cycles
ダブルcarrier_phase
ダブルcarrier_phase_uncertainty
GnssMultipathIndicator multipath_indicator
ダブルsnr_db

詳細な説明

GNSS測定を表し、生の情報と計算された情報が含まれています。

独立性-この構造体で報告されるすべての信号測定情報(sv_time、pseudorange_rate、multipath_indicatorなど)は、GNSS信号測定のみに基づく必要があります。既知または推定の位置、速度、または時間に基づいて予想される測定値を計算または報告することによって測定値を合成することはできません。

ファイルgps.h1656行で定義されています。

フィールドドキュメント

double Accumulated_delta_range_m

最後のチャネルリセット以降の累積デルタ範囲(メートル単位)。正の値は、SVがレシーバーから遠ざかっていることを示します。

「累積デルタ範囲」の符号と「キャリア位相」の符号との関係は、次の式で与えられます。累積デルタ範囲= -k *キャリア位相(kは定数)

'累積デルタ範囲状態'!= GPS_ADR_STATE_UNKNOWNの場合、この値を入力する必要があります。ただし、データが正確であるのは、次の場合のみであると予想されます。'累積デルタ範囲状態'==GPS_ADR_STATE_VALID。

ファイルgps.h1835行で定義されています。

累積デルタ範囲の状態。 ADRがリセットされているか、サイクルスリップ(ロックの喪失を示す)があるかを示します。

これは必須の値です。

ファイルgps.h1821行で定義されています。

二重累積_delta_range_uncertainty_m

メートル単位の累積デルタ範囲の1シグマの不確実性。 '累積デルタ範囲状態'!= GPS_ADR_STATE_UNKNOWNの場合、この値を入力する必要があります。

ファイルgps.h1841行で定義されています。

ダブルc_n0_dbhz

搬送波対雑音比(dB-Hz)、通常は[0、63]の範囲。これには、アンテナポートでの信号の測定されたC/N0値が含まれています。

これは必須の値です。

ファイルgps.h1778行で定義されています。

int64_tcarrier_cycles

衛星と受信機の間の完全なキャリアサイクルの数。基準周波数は、フィールド'carrier_frequency_hz'によって指定されます。この値の累積で発生する可能性のあるサイクルスリップとリセットの兆候は、accurrent_delta_range_stateフラグから推測できます。

データが利用可能な場合、「フラグ」にはGNSS_MEASUREMENT_HAS_CARRIER_CYCLESが含まれている必要があります。

ファイルgps.h1861行で定義されています。

フロートcarrier_frequency_hz

コードとメッセージが変調されるキャリア周波数。L1またはL2にすることができます。フィールドが設定されていない場合、搬送周波数はL1と見なされます。

データが利用可能な場合、「フラグ」にはGNSS_MEASUREMENT_HAS_CARRIER_FREQUENCYが含まれている必要があります。

ファイルgps.h1850行で定義されています。

doublecarrier_phase

[0.0、1.0]の範囲で受信機によって検出されたRF位相。これは通常、完全なキャリア位相測定の小数部分です。

基準周波数は、フィールド'carrier_frequency_hz'によって指定されます。この値には、「搬送波位相の不確かさ」が含まれています。

データが利用可能な場合、「フラグ」にはGNSS_MEASUREMENT_HAS_CARRIER_PHASEが含まれている必要があります。

ファイルgps.h1873行で定義されています。

doublecarrier_phase_uncertainty

キャリア位相の1シグマの不確かさ。データが利用可能な場合、「フラグ」にはGNSS_MEASUREMENT_HAS_CARRIER_PHASE_UNCERTAINTYが含まれている必要があります。

ファイルgps.h1880行で定義されています。

GnssConstellationTypeコンステレーション

指定されたSVのコンステレーションを定義します。値は、それらのGNSS_CONSTELLATION_*定数の1つである必要があります

ファイルgps.h1673行で定義されています。

このデータ構造のフィールドの有効性を示すフラグのセット。

ファイルgps.h1661行で定義されています。

GnssMultipathIndicator multipath_indicator

イベントの「マルチパス」状態を示す列挙。

マルチパスインジケーターは、歪んだ相関ピークとして現れるオーバーラップ信号の存在を報告することを目的としています。

  • 歪んだ相関ピーク形状がある場合は、マルチパスがGNSS_MULTIPATH_INDICATOR_PRESENTであることを報告します。
  • 歪んだ相関ピーク形状がない場合は、GNSS_MULTIPATH_INDICATOR_NOT_PRESENTを報告してください
  • 信号が弱すぎてこの情報を識別できない場合は、GNSS_MULTIPATH_INDICATOR_UNKNOWNを報告してください

例:標準化されたオーバーラップマルチパスパフォーマンステスト(3GPP TS 34.171)を実行する場合、マルチパスインジケーターは、追跡されマルチパスを含む信号についてはGNSS_MULTIPATH_INDICATOR_PRESENTを報告し、追跡されてマルチパスを含まない信号についてはGNSS_MULTIPATH_INDICATOR_NOT_PRESENTを報告する必要があります。

ファイルgps.h1901行で定義されています。

double pseudorange_rate_mps

タイムスタンプでの疑似距離レート(m / s)。特定の疑似距離レート値の修正には、受信機と衛星のクロック周波数エラーの修正が含まれます。このフィールドが独立していることを確認してください( GnssMeasurement構造体の上部にあるコメントを参照してください)。

'未修正''疑似距離レート'を提供する必要があり、 GpsClockの'ドリフト'フィールドも提供する必要があります(未修正の疑似距離レートを提供する場合は、上記の修正を適用しないでください)。

この値には、「疑似距離率の不確実性」が含まれています。正の「未修正」値は、SVがレシーバーから遠ざかっていることを示します。

「未補正」の「疑似距離率」の符号と「ドップラーシフト」の符号との関係は、次の式で与えられます。疑似距離率= -k *ドップラーシフト(kは定数)

これは、このチャネルからの新鮮な信号測定に基づいて、利用可能な最も正確な疑似距離レートである必要があります。

この値は、通常の搬送波位相PRR品質(不確実性が1秒あたり数cm /秒以上)で提供する必要があります。たとえば、35 dB-Hz以上のGPSシミュレーターからの信号など、信号が十分に強力で安定している場合です。

ファイルgps.h1805行で定義されています。

double pseudorange_rate_uncertainty_mps

1-pseudorange_rate_mpsのシグマの不確実性。不確かさは絶対(片側)値として表されます。

これは必須の値です。

ファイルgps.h1813行で定義されています。

int64_treceived_sv_time_in_ns

測定時間で受信したGNSSTime-of-Week(ナノ秒単位)。このフィールドが独立していることを確認してください( GnssMeasurement構造体の上部にあるコメントを参照してください)。

GPSおよびQZSSの場合、これは次のとおりです。測定時間で受信したGPSの週単位(ナノ秒単位)。この値は、現在のGPS週の初めを基準にしています。

達成可能な最高の同期状態が与えられると、衛星ごとに、このフィールドの有効範囲は次のようになります。検索:[0]:GNSS_MEASUREMENT_STATE_UNKNOWN C / Aコードロック:[0 1ms]:GNSS_MEASUREMENT_STATE_CODE_LOCKが設定されますビット同期:[0 20ms] :GNSS_MEASUREMENT_STATE_BIT_SYNCが設定されていますサブフレーム同期:[0 6s]:GNSS_MEASUREMENT_STATE_SUBFRAME_SYNCが設定されていますTOWデコード:[0 1week]:GNSS_MEASUREMENT_STATE_TOW_DECODEDが設定されています

注意:整数ミリ秒にあいまいさが存在する場合は、それに応じて「state」フィールドにGNSS_MEASUREMENT_STATE_MSEC_AMBIGUOUSを設定する必要があります。

'state'!= GNSS_MEASUREMENT_STATE_UNKNOWNの場合、この値を入力する必要があります。

Glonassの場合、これは次のとおりです。ナノ秒単位の測定時間で受信したGlonass時刻。

達成可能な最高の同期状態が与えられると、衛星ごとに、このフィールドの有効な範囲は次のようになります。検索:[0]:GNSS_MEASUREMENT_STATE_UNKNOWN C / Aコードロック:[0 1ms]:GNSS_MEASUREMENT_STATE_CODE_LOCKが設定されますシンボル同期:[0 10ms] :GNSS_MEASUREMENT_STATE_SYMBOL_SYNCが設定されていますビット同期:[0 20ms]:GNSS_MEASUREMENT_STATE_BIT_SYNCが設定されています文字列同期:[0 2s]:GNSS_MEASUREMENT_STATE_GLO_STRING_SYNCが設定されています時刻:[0 1day]:GNSS_MEASUREMENT_STATE_

Beidouの場合、これは次のとおりです。ナノ秒単位の測定時間で受信されたBeidou時刻。

達成可能な最高の同期状態が与えられると、衛星ごとに、このフィールドの有効な範囲は次のようになります。検索:[0]:GNSS_MEASUREMENT_STATE_UNKNOWN C / Aコードロック:[0 1ms]:GNSS_MEASUREMENT_STATE_CODE_LOCKが設定されますビット同期(D2):[ 0 2ms]:GNSS_MEASUREMENT_STATE_BDS_D2_BIT_SYNCが設定されますビット同期(D1):[0 20ms]:GNSS_MEASUREMENT_STATE_BIT_SYNCが設定されますサブフレーム(D2):[0 0.6s]:GNSS_MEASUREMENT_STATE_BDS_D2_SUBFRAME_SYNCが設定されます週:[0 1週]:GNSS_MEASUREMENT_STATE_TOW_DECODEDが設定されます

ガリレオの場合、これは次のとおりです。ナノ秒単位の測定時間で受信したガリレオの時刻。

E1BCコードロック:[0 4ms]:GNSS_MEASUREMENT_STATE_GAL_E1BC_CODE_LOCKが設定されていますE1C 2番目のコードロック:[0 100ms]:GNSS_MEASUREMENT_STATE_GAL_E1C_2ND_CODE_LOCKが設定されています

E1Bページ:[0 2s]:GNSS_MEASUREMENT_STATE_GAL_E1B_PAGE_SYNCが設定されています時刻:[0 1week]:GNSS_MEASUREMENT_STATE_TOW_DECODEDが設定されています

SBASの場合、これは次のとおりです。ナノ秒単位の測定時間での受信SBAS時間。

達成可能な最高の同期状態が与えられると、衛星ごとに、このフィールドの有効な範囲は次のようになります。検索:[0]:GNSS_MEASUREMENT_STATE_UNKNOWN C / Aコードロック:[0 1ms]:GNSS_MEASUREMENT_STATE_CODE_LOCKが設定されますシンボル同期:[0 2ms] :GNSS_MEASUREMENT_STATE_SYMBOL_SYNCが設定されていますメッセージ:[0 1s]:GNSS_MEASUREMENT_STATE_SBAS_SYNCが設定されています

ファイルgps.h1763行で定義されています。

int64_treceived_sv_time_uncertainty_in_ns

受信したGPSの1シグマの不確実性-ナノ秒単位の週。

'state'!= GPS_MEASUREMENT_STATE_UNKNOWNの場合、この値を入力する必要があります。

ファイルgps.h1770行で定義されています。

size_tサイズ

sizeof(GpsMeasurement)に設定

ファイルgps.h1658行で定義されています。

ダブルsnr_db

相関器出力での信号対雑音比(dB)。データが利用可能な場合、「フラグ」にはGNSS_MEASUREMENT_HAS_SNRが含まれている必要があります。これは、「観測されたノイズフロアからの相関ピーク高さ」と「ノイズRMS」の電力比です。

ファイルgps.h1909行で定義されています。

衛星ごとの同期状態。これは、関連する衛星の現在の同期状態を表します。同期状態に基づいて、「受信したGPSトウ」フィールドはそれに応じて解釈する必要があります。

これは必須の値です。

ファイルgps.h1694行で定義されています。

int16_t svid

GnssSvInfo::svidで定義されている衛星車両ID番号これは必須の値です。

ファイルgps.h1667行で定義されています。

double time_offset_ns

測定が行われた時間オフセット(ナノ秒単位)。参照レシーバーの時刻はGpsData::clock :: time_nsで指定され、 GpsClock::typeで示されるのと同じ方法で解釈する必要があります。

time_offset_nsの符号は、次の式で与えられます。測定時間= GpsClock :: time_ns + time_offset_ns

これは、測定用の個別のタイムスタンプを提供し、サブナノ秒の精度を可能にします。これは必須の値です。

ファイルgps.h1686行で定義されています。


この構造体のドキュメントは、次のファイルから生成されました。
  • ハードウェア/libhardware/ include / hardware / gps.h