GnssMeasurement结构参考
#include < gps.h >
详细说明
表示GNSS度量,其中包含原始信息和计算信息。
独立性-此结构中报告的所有信号测量信息(例如sv_time,pseudorange_rate,multipath_indicator)应仅基于GNSS信号测量。您可能无法通过基于已知或估计的位置,速度或时间来计算或报告预期的测量结果来合成测量结果。
现场文件
双积累_delta_range_m |
双积累_delta_range_uncertainty_m |
int64_t carrier_cycles |
浮动carrier_frequency_hz |
双载波相位 |
双载波相位不确定度 |
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。
double pseudorange_rate_mps |
时间戳的伪距速率,以m / s为单位。给定伪距速率值的校正包括对接收机和卫星时钟频率误差的校正。确保该字段是独立的(请参阅GnssMeasurement结构顶部的注释。)
必须提供“未校正的”伪距率,并提供GpsClock的“漂移”字段(提供未校正的伪距率时,请勿应用上述校正。)
该值包括“伪距速率不确定性”。正的“未校正”值表示SV正在从接收器移开。
“未校正”“伪距速率”的符号及其与“多普勒频移”符号的关系由下式给出:伪距速率= -k *多普勒频移(其中k为常数)
基于此通道的新鲜信号测量,这应该是可用的最准确的伪距速率。
当信号足够强且稳定时,例如来自GPS模拟器的信号> = 35 dB-Hz,则必须以典型的载波相位PRR质量(不确定性每秒几厘米/秒,或更佳)提供此值。
double pseudorange_rate_uncertainty_mps |
int64_t receive_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 1周]:设置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_MEASUREMENTD_CODE已设置
对于北斗,这是:每周接收到的北斗时间,以纳秒为单位的测量时间。
给定可以达到的最高同步状态,对于每个卫星,该字段的有效范围可以是:搜索:[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_SYNCS设置时间周:[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 1周]:设置了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
int64_t receive_sv_time_uncertainty_in_ns |
双snr_db |
int16_t svid |
在GnssSvInfo :: svid中定义的卫星飞行器ID号这是一个强制性值。
双倍time_offset_ns |
进行测量的时间偏移量(以纳秒为单位)。参考接收者的时间由GpsData :: clock :: time_ns指定,并应按照与GpsClock :: type指示相同的方式进行解释。
time_offset_ns的符号由以下公式给出:测量时间= GpsClock :: time_ns + time_offset_ns
它为测量提供了单独的时间戳,并允许亚纳秒精度。这是强制性值。
该结构的文档是从以下文件生成的:
- 硬件/ libhardware / include / hardware / gps.h