GnssMeasurement 结构参考

GnssMeasurement 结构参考

#include < gps.h >

数据字段

尺寸_t尺寸
GnssMeasurementFlags旗帜
int16_t视频
GnssConstellationType星座
双倍的time_offset_ns
Gnss测量状态状态
int64_t收到的_sv_time_in_ns
int64_t received_sv_time_uncertainty_in_ns
双倍的c_n0_dbhz
双倍的pseudorange_rate_mps
双倍的pseudorange_rate_uncertainty_mps
GnssAccumulatedDeltaRangeState累积增量范围状态
双倍的累积的_delta_range_m
双倍的累积的_delta_range_uncertainty_m
漂浮载波频率赫兹
int64_t运营商循环
双倍的载波相位
双倍的载波相位不确定性
Gnss多路径指示器multipath_indicator
双倍的snr_db

详细说明

代表 GNSS 测量,它包含原始信息和计算信息。

独立性 - 此结构中报告的所有信号测量信息(例如 sv_time、pseudorange_rate、multipath_indicator)应仅基于 GNSS 信号测量。您不得通过基于已知或估计的位置、速度或时间计算或报告预期测量值来合成测量值。

在文件gps.h的第1656行定义。

现场文件

双累积_delta_range_m

自上次通道重置以来的累积增量范围(以米为单位)。正值表示 SV 正在远离接收器。

“累积增量范围”的符号及其与“载波相位”符号的关系由以下等式给出:累积增量范围 = -k * 载波相位(其中 k 是常数)

如果“累积增量范围状态”!= GPS_ADR_STATE_UNKNOWN,则必须填充此值。但是,预计数据仅在以下情况下才是准确的:“累积增量范围状态”== GPS_ADR_STATE_VALID。

在文件gps.h的第1835行定义。

GnssAccumulatedDeltaRangeState accumulated_delta_range_state

累积增量范围的状态。它指示 ADR 是否被重置或是否存在周跳(指示失去锁定)。

这是一个强制值。

在文件gps.h的第1821行定义。

双累积_delta_range_uncertainty_m

以米为单位的累积增量范围的 1-Sigma 不确定性。如果“累积增量范围状态”!= GPS_ADR_STATE_UNKNOWN,则必须填充此值。

文件gps.h1841行的定义。

双 c_n0_dbhz

以 dB-Hz 为单位的载噪比密度,通常在 [0, 63] 范围内。它包含在天线端口处测量的信号的 C/N0 值。

这是一个强制值。

在文件gps.h的第1778行定义。

int64_t carrier_cycles

卫星和接收器之间的完整载波周期数。参考频率由字段“carrier_frequency_hz”给出。可以从accumulated_delta_range_state 标志推断该值的累积中可能的周跳和重置的指示。

如果数据可用,“标志”必须包含 GNSS_MEASUREMENT_HAS_CARRIER_CYCLES。

在文件gps.h的第1861行定义。

浮动载波频率赫兹

调制代码和消息的载波频率,可以是 L1 或 L2。如果未设置该字段,则假定载波频率为 L1。

如果数据可用,“标志”必须包含 GNSS_MEASUREMENT_HAS_CARRIER_FREQUENCY。

在文件gps.h的第1850行定义。

双载波相位

接收器检测到的射频相位,范围为 [0.0, 1.0]。这通常是完整载波相位测量的小数部分。

参考频率由字段“carrier_frequency_hz”给出。该值包含“载波相位不确定性”。

如果数据可用,“标志”必须包含 GNSS_MEASUREMENT_HAS_CARRIER_PHASE。

文件gps.h1873行的定义。

双载波相位不确定性

载波相位的 1-Sigma 不确定性。如果数据可用,“标志”必须包含 GNSS_MEASUREMENT_HAS_CARRIER_PHASE_UNCERTAINTY。

文件gps.h1880行的定义。

定义给定 SV 的星座。值应该是那些 GNSS_CONSTELLATION_* 常量之一

在文件gps.h的第1673行定义。

一组标志,指示此数据结构中字段的有效性。

在文件gps.h的第1661行定义。

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行的定义。

双伪距速率_mps

时间戳的伪距速率,以 m/s 为单位。给定伪距速率值的校正包括对接收器和卫星时钟频率误差的校正。确保此字段是独立的(请参阅GnssMeasurement结构顶部的注释。)

必须提供“未校正的”“伪距率”,并同时提供GpsClock的“漂移”字段(提供未校正的伪距率时,不要应用上述校正。)

该值包括“伪距率不确定性”。正的“未校正”值表示 SV 正在远离接收器。

“未校正”“伪距率”的符号及其与“多普勒频移”符号的关系由下式给出:伪距率 = -k * 多普勒频移(其中 k 是常数)

这应该是最准确的可用伪距速率,基于来自该通道的新信号测量。

必须以典型的载波相位 PRR 质量(每秒几厘米/秒的不确定性,或更好)提供此值 - 当信号足够强和稳定时,例如来自 GPS 模拟器的信号 >= 35 dB-Hz。

在文件gps.h的第1805行定义。

双伪距速率不确定度mps

pseudorange_rate_mps 的 1-Sigma 不确定性。不确定性表示为绝对(单边)值。

这是一个强制值。

在文件gps.h的第1813行定义。

int64_t received_sv_time_in_ns

测量时收到的 GNSS 周时间,以纳秒为单位。确保此字段是独立的(请参阅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 已设置

请注意:如果整数毫秒有任何歧义,则应在“状态”字段中相应地设置 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_GLO_TOD_DECODED 设置

对于北斗,这是:接收到的北斗时间,以纳秒为单位的测量时间。

给定每个卫星可以达到的最高同步状态,该字段的有效范围可以是: 搜索:[0]:GNSS_MEASUREMENT_STATE_UNKNOWN C/A 代码锁定:[0 1ms]:GNSS_MEASUREMENT_STATE_CODE_LOCK 已设置位同步(D2):[ 0 2ms ] : GNSS_MEASUREMENT_STATE_BDS_D2_BIT_SYNC is set Bit sync (D1): [ 0 20ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC is set Subframe (D2): [ 0 0.6s ] : GNSS_MEASUREMENT_STATE_BDS_D2_SUBFRAME_SYNC is set Subframe (D1): [ 0 6s ] : GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC is set Time of周:[0 1 周]:GNSS_MEASUREMENT_STATE_TOW_DECODED 已设置

对于 Galileo,这是: 收到 Galileo 一周中的时间,测量时间以纳秒为单位。

E1BC 密码锁:[0 4ms]:GNSS_MEASUREMENT_STATE_GAL_E1BC_CODE_LOCK 已设置 E1C 第二个密码锁:[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_t received_sv_time_uncertainty_in_ns

接收到的 GPS 周时间的 1-Sigma 不确定性(以纳秒为单位)。

如果 'state' != GPS_MEASUREMENT_STATE_UNKNOWN,则必须填充此值。

在文件gps.h的第1770行定义。

size_t 大小

设置为 sizeof(GpsMeasurement)

在文件gps.h的第1658行定义。

双 snr_db

相关器输出的信噪比,以 dB 为单位。如果数据可用,“标志”必须包含 GNSS_MEASUREMENT_HAS_SNR。这是“观察到的本底噪声之上的相关峰值高度”与“噪声 RMS”的功率比。

文件gps.h1909行的定义。

每个卫星同步状态。它代表相关卫星的当前同步状态。根据同步状态,“received GPS tow”字段应作相应解释。

这是一个强制值。

在文件gps.h的第1694行定义。

int16_t svid

卫星车辆 ID 号,在GnssSvInfo::svid中定义 这是一个强制值。

在文件gps.h的第1667行定义。

双倍 time_offset_ns

以纳秒为单位进行测量的时间偏移。参考接收器的时间由 GpsData::clock::time_ns 指定,应该以与GpsClock::type相同的方式解释。

time_offset_ns 的符号由以下等式给出:测量时间 = GpsClock::time_ns + time_offset_ns

它为测量提供单独的时间戳,并允许亚纳秒精度。这是一个强制值。

在文件gps.h的第1686行定义。


此结构的文档是从以下文件生成的: