Tham chiếu cấu trúc GnssMeasurement
#include < gps.h >
Trường dữ liệu | |
size_t | kích thước |
GnssMeasurementFlags | cờ |
int16_t | svid |
GnssConstellationType | chòm sao |
kép | time_offset_ns |
GnssMeasurementState | tiểu bang |
int64_t | got_sv_time_in_ns |
int64_t | got_sv_time_uncertosystem_in_ns |
kép | c_n0_dbhz |
kép | pseudorange_rate_mps |
kép | pseudorange_rate_uncertosystem_mps |
GnssAccumulatedDeltaRangeState | Accu_delta_range_state |
kép | Tích lũy_delta_range_m |
kép | Tích lũy_delta_range_uncerturance_m |
trôi nổi | carrier_frequency_hz |
int64_t | hãng_cấp_cầu |
kép | carrier_phase |
kép | carrier_phase_uncerturance |
GnssMultipathIndicator | multiath_indicator |
kép | snr_db |
miêu tả cụ thể
Đại diện cho một Phép đo GNSS, nó chứa thông tin thô và được tính toán.
Độc lập - Tất cả thông tin đo tín hiệu (ví dụ: sv_time, pseudorange_rate, Multiath_indicator) được báo cáo trong cấu trúc này chỉ nên dựa trên các phép đo tín hiệu GNSS. Bạn không thể tổng hợp các phép đo bằng cách tính toán hoặc báo cáo các phép đo dự kiến dựa trên vị trí, vận tốc hoặc thời gian đã biết hoặc ước tính.
Tài liệu thực địa
nhân đôi tích lũy_delta_range_m |
Phạm vi delta tích lũy kể từ lần đặt lại kênh cuối cùng tính bằng mét. Giá trị dương chỉ ra rằng SV đang di chuyển ra khỏi máy thu.
Dấu của 'dải delta tích lũy' và mối quan hệ của nó với dấu của 'pha sóng mang' được cho bởi phương trình: dải delta tích lũy = -k * pha sóng mang (với k là hằng số)
Giá trị này phải được điền nếu 'trạng thái phạm vi đồng bằng tích lũy'! = GPS_ADR_STATE_UNKNOWN. Tuy nhiên, dự kiến rằng dữ liệu chỉ chính xác khi: 'trạng thái phạm vi đồng bằng tích lũy' == GPS_ADR_STATE_VALID.
GnssAccumulatedDeltaRangeState được tích lũy_delta_range_state |
tích lũy gấp đôi_delta_range_uncerturance_m |
gấp đôi c_n0_dbhz |
int64_t carrier_cycles |
Số chu kỳ sóng mang đầy đủ giữa vệ tinh và máy thu. Tần số tham chiếu được cung cấp bởi trường 'carrier_frequency_hz'. Các chỉ báo về trượt chu kỳ có thể xảy ra và đặt lại khi tích lũy giá trị này có thể được suy ra từ các cờ hiệu_trình_dạng_động_tích_cấp.
Nếu dữ liệu có sẵn, 'cờ' phải chứa GNSS_MEASUREMENT_HAS_CARRIER_CYCLES.
float carrier_frequency_hz |
đôi tàu sân bay |
Pha RF được máy thu phát hiện, trong khoảng [0,0, 1,0]. Đây thường là phần phân đoạn của phép đo pha sóng mang hoàn chỉnh.
Tần số tham chiếu được cung cấp bởi trường 'carrier_frequency_hz'. Giá trị chứa 'độ không đảm bảo đo pha sóng mang' trong đó.
Nếu dữ liệu có sẵn, 'cờ' phải chứa GNSS_MEASUREMENT_HAS_CARRIER_PHASE.
double carrier_phase_uncerturance |
Chòm sao GnssConstellationType |
Một kiểu liệt kê cho biết trạng thái 'nhiều đường' của sự kiện.
Chỉ báo đa đường nhằm báo cáo sự hiện diện của các tín hiệu chồng chéo biểu hiện dưới dạng các đỉnh tương quan bị bóp méo.
- nếu có hình dạng đỉnh tương quan bị bóp méo, hãy báo cáo rằng đa đường là GNSS_MULTIPATH_INDICATOR_PRESENT.
- nếu không có hình dạng đỉnh tương quan bị bóp méo, hãy báo cáo GNSS_MULTIPATH_INDICATOR_NOT_PRESENT
- nếu tín hiệu quá yếu để phân biệt thông tin này, hãy báo cáo GNSS_MULTIPATH_INDICATOR_UNKNOWN
Ví dụ: khi thực hiện kiểm tra Hiệu suất đa đường chồng chéo được chuẩn hóa (3GPP TS 34.171), chỉ báo Đa đường sẽ báo cáo GNSS_MULTIPATH_INDICATOR_PRESENT cho những tín hiệu được theo dõi và chứa đa đường và GNSS_MULTIPATH_INDICATOR_NOT_PRESENT cho những tín hiệu được theo dõi và không chứa đa đường.
double pseudorange_rate_mps |
Tốc độ giả tại dấu thời gian tính bằng m / s. Việc sửa một giá trị Pseudorange Rate đã cho bao gồm sửa lỗi tần số đồng hồ vệ tinh và máy thu. Đảm bảo rằng trường này là độc lập (xem nhận xét ở đầu cấu trúc GnssMeasurement .)
Bắt buộc phải cung cấp 'tỷ lệ giả' chưa được hiệu chỉnh 'và cung cấp trường' trôi dạt 'của GpsClock (Khi cung cấp tỷ lệ giả chưa được hiệu chỉnh, không áp dụng các hiệu chỉnh được mô tả ở trên.)
Giá trị bao gồm 'độ không đảm bảo về tỷ lệ giả' trong đó. Giá trị 'chưa được điều chỉnh' dương chỉ ra rằng SV đang di chuyển ra khỏi máy thu.
Dấu hiệu của 'tỷ lệ giả không được điều chỉnh' và mối quan hệ của nó với dấu hiệu của 'dịch chuyển doppler' được đưa ra bởi phương trình: tỷ lệ giả = -k * dịch chuyển doppler (trong đó k là hằng số)
Đây phải là tỷ lệ giả chính xác nhất hiện có, dựa trên các phép đo tín hiệu mới từ kênh này.
Bắt buộc phải cung cấp giá trị này ở chất lượng PRR pha sóng mang điển hình (vài cm / giây trên giây không chắc chắn, hoặc tốt hơn) - khi tín hiệu đủ mạnh và ổn định, ví dụ tín hiệu từ bộ mô phỏng GPS ở> = 35 dB-Hz.
double pseudorange_rate_uncertosystem_mps |
int64_t got_sv_time_in_ns |
GNSS Time-of-Week nhận được tại thời điểm đo, tính bằng nano giây. Đảm bảo rằng trường này là độc lập (xem nhận xét ở đầu cấu trúc GnssMeasurement .)
Đối với GPS & QZSS, đây là: Thời gian trong tuần của GPS đã nhận tại thời điểm đo, tính bằng nano giây. Giá trị này có liên quan đến đầu tuần GPS hiện tại.
Với trạng thái đồng bộ hóa cao nhất có thể đạt được, trên mỗi vệ tinh, phạm vi hợp lệ cho trường này có thể là: Tìm kiếm: [0]: GNSS_MEASUREMENT_STATE_UNKNOWN Khóa mã C / A: [0 1ms]: GNSS_MEASUREMENT_STATE_CODE_LOCK được thiết lập Đồng bộ hóa bit: [0 20ms] : GNSS_MEASUREMENT_STATE_BIT_SYNC được đặt Đồng bộ hóa khung phụ: [0 6s]: GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC được đặt TOW được giải mã: [0 1 tuần]: GNSS_MEASUREMENT_STATE_TOW_DECODED được đặt
Cũng cần lưu ý: nếu có bất kỳ sự không rõ ràng nào trong phần nghìn giây số nguyên, GNSS_MEASUREMENT_STATE_MSEC_AMBIGUOUS nên được đặt tương ứng, trong trường 'trạng thái'.
Giá trị này phải được điền nếu 'state'! = GNSS_MEASUREMENT_STATE_UNKNOWN.
Đối với Glonass, đây là: Giờ Glonass nhận được trong ngày, tại thời điểm đo tính bằng nano giây.
Với trạng thái đồng bộ hóa cao nhất có thể đạt được, trên mỗi vệ tinh, phạm vi hợp lệ cho trường này có thể là: Tìm kiếm: [0]: GNSS_MEASUREMENT_STATE_UNKNOWN Khóa mã C / A: [0 1ms]: GNSS_MEASUREMENT_STATE_CODE_LOCK được thiết lập Đồng bộ hóa biểu tượng: [0 10ms] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC được đặt Đồng bộ hóa bit: [0 20 mili giây]: GNSS_MEASUREMENT_STATE_BIT_SYNC được đặt Đồng bộ hóa chuỗi: [0 2 giây]: GNSS_MEASUREMENT_STATE_GLO_STRING_SYNC được đặt Thời gian trong ngày: [0 1 ngày] GNOMENT_TODED_STATE_MECODMENT_TODATE_DEED_STATE_MECODMENT
Đối với Beidou, đây là: Thời gian Beidou nhận được trong tuần, tại thời điểm đo tính bằng nano giây.
Với trạng thái đồng bộ hóa cao nhất có thể đạt được, trên mỗi vệ tinh, phạm vi hợp lệ cho trường này có thể là: Tìm kiếm: [0]: GNSS_MEASUREMENT_STATE_UNKNOWN Khóa mã C / A: [0 1ms]: GNSS_MEASUREMENT_STATE_CODE_LOCK được thiết lập Đồng bộ hóa bit (D2): [ 0 2ms]: GNSS_MEASUREMENT_STATE_BDS_D2_BIT_SYNC được đặt Đồng bộ hóa bit (D1): [0 20 mili giây]: GNSS_MEASUREMENT_STATE_BIT_SYNC được đặt Khung phụ (D2): [0 0,6 giây]: GNSS_MEASUREMENT_STATE_BDSY_D2_SUBFRAME_PHI_PHẦN được thiết lập Thời gian của D1FMENT_SATE_SUBES tuần: [0 1 tuần]: GNSS_MEASUREMENT_STATE_TOW_DECODED được đặt
Đối với Galileo, đây là: Giờ Galileo đã nhận trong tuần, tại thời điểm đo tính bằng nano giây.
Khóa mã E1BC: [0 4ms]: GNSS_MEASUREMENT_STATE_GAL_E1BC_CODE_LOCK được đặt E1C Khóa mã thứ 2: [0 100ms]: GNSS_MEASUREMENT_STATE_GAL_E1C_2ND_CODE_LOCK được đặt
Trang E1B: [0 2 giây]: GNSS_MEASUREMENT_STATE_GAL_E1B_PAGE_SYNC được đặt Thời gian trong tuần: [0 1 tuần]: GNSS_MEASUREMENT_STATE_TOW_DECODED được đặt
Đối với SBAS, đây là: Thời gian SBAS đã nhận, tại thời điểm đo tính bằng nano giây.
Với trạng thái đồng bộ hóa cao nhất có thể đạt được, trên mỗi vệ tinh, phạm vi hợp lệ cho trường này có thể là: Đang tìm kiếm: [0]: GNSS_MEASUREMENT_STATE_UNKNOWN Khóa mã C / A: [0 1ms]: GNSS_MEASUREMENT_STATE_CODE_LOCK được đặt Đồng bộ hóa biểu tượng: [0 2ms] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC đã được đặt Thông báo: [0 1 giây]: GNSS_MEASUREMENT_STATE_SBAS_SYNC đã được đặt
int64_t accept_sv_time_uncertosystem_in_ns |
đôi snr_db |
Trạng thái GnssMeasurementState |
int16_t svid |
Số ID phương tiện vệ tinh, như được định nghĩa trong GnssSvInfo :: svid Đây là giá trị bắt buộc.
double time_offset_ns |
Độ lệch thời gian tại đó phép đo được thực hiện tính bằng nano giây. Thời gian của bộ thu tham chiếu được chỉ định bởi GpsData :: clock :: time_ns và phải được diễn giải theo cách giống như được chỉ ra bởi GpsClock :: type .
Dấu hiệu của time_offset_ns được đưa ra bởi phương trình sau: thời gian đo = GpsClock :: time_ns + time_offset_ns
Nó cung cấp một dấu thời gian riêng cho phép đo và cho phép độ chính xác dưới nano giây. Đây là giá trị bắt buộc.
Tài liệu cho cấu trúc này được tạo từ tệp sau:
- phần cứng / libhardware / bao gồm / phần cứng / gps.h