Tham chiếu cấu trúc GnssMeasurement

Tham chiếu cấu trúc GnssMeasurement

#include < gps.h >

Trường dữ liệu

size_t  size
 
GnssMeasurementFlags   cờ
 
int16_t  svid
 
GnssConstellationType   chòm sao
 
double  time_offset_ns
 
GnssMeasurementState   trạng thái
 
int64_t  received_sv_time_in_ns
 
int64_t  received_sv_time_uncertainty_in_ns
 
double  c_n0_dbhz
 
double  pseudorange_rate_mps
 
double  pseudorange_rate_uncertainty_mps
 
GnssAccumulatedDeltaRangeState   accumulated_delta_range_state
 
double  accumulated_delta_range_m
 
double  accumulated_delta_range_uncertainty_m
 
float  carrier_frequency_hz
 
int64_t  carrier_cycles
 
double  carrier_phase
 
double  carrier_phase_uncertainty
 
GnssMultipathIndicator   multipath_indicator
 
double  snr_db
 

Nội dung mô tả chi tiết

Biểu thị một phép đo GNSS, chứa thông tin thô và thông tin được tính toán.

Độ độc lập – Tất cả thông tin đo lường tín hiệu (ví dụ: sv_time, pseudorange_rate, multipath_indicator) được báo cáo trong cấu trúc này chỉ được dựa trên thông tin đo lường tín hiệu GNSS. Bạn không được 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í, tốc độ hoặc thời gian đã biết hoặc ước tính.

Định nghĩa tại dòng 1656 của tệp gps.h .

Tài liệu về trường

double accumulated_delta_range_m

Phạm vi delta tích luỹ kể từ lần đặt lại kênh gần đây nhất (tính bằng mét). Giá trị dương cho biết SV đang di chuyển ra xa bộ thu.

Dấu của "dải delta tích luỹ" và mối quan hệ của dấu này với dấu của "pha sóng mang" được đưa ra theo phương trình: dải delta tích luỹ = -k * pha sóng mang (trong đó k là hằng số)

Bạn phải điền giá trị này nếu "trạng thái phạm vi delta tích luỹ" != GPS_ADR_STATE_UNKNOWN. Tuy nhiên, dữ liệu chỉ chính xác khi: "trạng thái phạm vi delta tích luỹ" == GPS_ADR_STATE_VALID.

Định nghĩa tại dòng 1835 của tệp gps.h .

GnssAccumulatedDeltaRangeState accumulated_delta_range_state

Trạng thái của phạm vi delta tích luỹ. Chỉ báo này cho biết liệu ADR có được đặt lại hay không hoặc có xảy ra trượt chu kỳ (cho biết mất khoá) hay không.

Đây là giá trị bắt buộc.

Định nghĩa tại dòng 1821 của tệp gps.h .

double accumulated_delta_range_uncertainty_m

Độ không chắc chắn 1-Sigma của phạm vi delta tích luỹ tính bằng mét. Bạn phải điền giá trị này nếu "trạng thái phạm vi delta tích luỹ" != GPS_ADR_STATE_UNKNOWN.

Định nghĩa tại dòng 1841 của tệp gps.h .

double c_n0_dbhz

Mật độ tín hiệu mang trên tạp âm tính bằng dB-Hz, thường nằm trong khoảng [0, 63]. Tệp này chứa giá trị C/N0 được đo lường cho tín hiệu tại cổng ăng-ten.

Đây là giá trị bắt buộc.

Định nghĩa tại dòng 1778 của tệp gps.h .

int64_t carrier_cycles

Số chu kỳ sóng mang đầy đủ giữa vệ tinh và bộ thu. Tần số tham chiếu được cung cấp bởi trường "carrier_frequency_hz". Bạn có thể suy ra các dấu hiệu về việc có thể trượt chu kỳ và đặt lại trong quá trình tích luỹ giá trị này từ cờ accumulated_delta_range_state.

Nếu có dữ liệu, "cờ" phải chứa GNSS_MEASUREMENT_HAS_CARRIER_CYCLES.

Định nghĩa tại dòng 1861 của tệp gps.h .

float carrier_frequency_hz

Tần số sóng mang tại đó mã và thông báo được điều chế, có thể là L1 hoặc L2. Nếu bạn không đặt trường này, tần số sóng mang được giả định là L1.

Nếu có dữ liệu, "cờ" phải chứa GNSS_MEASUREMENT_HAS_CARRIER_FREQUENCY.

Định nghĩa tại dòng 1850 của tệp gps.h .

carrier_phase đôi

Pha RF do bộ thu phát hiện, trong phạm vi [0,0, 1,0]. Đây thường là phần thập phâ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ị này chứa "mức độ không chắc chắn về pha sóng mang".

Nếu có dữ liệu, "cờ" phải chứa GNSS_MEASUREMENT_HAS_CARRIER_PHASE.

Định nghĩa tại dòng 1873 của tệp gps.h .

double carrier_phase_uncertainty

Độ không chắc chắn 1-Sigma của pha sóng mang. Nếu có dữ liệu, "cờ" phải chứa GNSS_MEASUREMENT_HAS_CARRIER_PHASE_UNCERTAINTY.

Định nghĩa tại dòng 1880 của tệp gps.h .

Xác định chòm sao của SV đã cho. Giá trị phải là một trong các hằng số GNSS_CONSTELLATION_* đó

Định nghĩa tại dòng 1673 của tệp gps.h .

Một tập hợp cờ cho biết tính hợp lệ của các trường trong cấu trúc dữ liệu này.

Định nghĩa tại dòng 1661 của tệp gps.h .

GnssMultipathIndicator multipath_indicator

Một enum cho biết trạng thái "đa đường dẫn" của sự kiện.

Chỉ báo nhiều đường truyền dùng để báo cáo sự hiện diện của các tín hiệu chồng chéo thể hiện dưới dạng các đỉnh tương quan bị méo.

  • nếu có hình dạng đỉnh tương quan bị méo, hãy báo cáo rằng đa đường truyền là GNSS_MULTIPATH_INDICATOR_PRESENT.
  • nếu không có hình dạng đỉnh tương quan bị 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 thử hiệu suất nhiều đường truyền chồng chéo được chuẩn hoá (3GPP TS 34.171), chỉ báo Nhiều đường truyền sẽ báo cáo GNSS_MULTIPATH_INDICATOR_PRESENT cho những tín hiệu được theo dõi và chứa nhiều đường truyền, cũng như GNSS_MULTIPATH_INDICATOR_NOT_PRESENT cho những tín hiệu được theo dõi và không chứa nhiều đường truyền.

Định nghĩa tại dòng 1901 của tệp gps.h .

double pseudorange_rate_mps

Tốc độ phạm vi giả lập tại dấu thời gian tính bằng m/giây. Giá trị sửa lỗi của Tốc độ dải giả định nhất định bao gồm cả các giá trị sửa lỗi cho lỗi tần số đồng hồ vệ tinh và lỗi máy thu. Đảm bảo rằng trường này độc lập (xem nhận xét ở đầu cấu trúc GnssMeasurement ).

Bạn bắt buộc phải cung cấp "tốc độ khoảng cách giả" "chưa được hiệu chỉnh" và cũng phải cung cấp trường "sai số" của GpsClock (Khi cung cấp tốc độ khoảng cách giả chưa được hiệu chỉnh, đừng áp dụng các thông tin hiệu chỉnh được mô tả ở trên.)

Giá trị này bao gồm "mức độ không chắc chắn về tốc độ phạm vi giả". Giá trị "chưa được hiệu chỉnh" dương cho biết SV đang di chuyển ra xa bộ thu.

Dấu của "tốc độ khoảng cách giả" "chưa được hiệu chỉnh" và mối quan hệ của tốc độ này với dấu của "độ lệch doppler" được cho bởi phương trình: tốc độ khoảng cách giả = -k * độ lệch doppler (trong đó k là hằng số)

Đây là tốc độ giả lập 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ạn bắt buộc phải cung cấp giá trị này ở chất lượng PRR pha sóng mang thông thường (vài cm/giây mỗi 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ừ trình mô phỏng GPS ở mức >= 35 dB-Hz.

Định nghĩa tại dòng 1805 của tệp gps.h .

double pseudorange_rate_uncertainty_mps

Độ không chắc chắn 1-Sigma của pseudorange_rate_mps. Độ không chắc chắn được biểu thị dưới dạng một giá trị tuyệt đối (một bên).

Đây là giá trị bắt buộc.

Định nghĩa tại dòng 1813 của tệp gps.h .

int64_t received_sv_time_in_ns

Thời gian trong tuần theo GNSS đã nhận được tại thời điểm đo lường, tính bằng nano giây. Đảm bảo rằng trường này độc lập (xem nhận xét ở đầu cấu trúc GnssMeasurement ).

Đối với GPS và QZSS, giá trị này là: Thời gian trong tuần của GPS đã nhận được tại thời điểm đo lường, tính bằng nano giây. Giá trị này tương ứng với thời điểm bắt đầu tuần GPS hiện tại.

Với trạng thái đồng bộ hoá cao nhất có thể đạt được, đối với 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 Khoá mã C/A : [ 0 1 mili giây ] : GNSS_MEASUREMENT_STATE_CODE_LOCK được đặt Đồng bộ hoá bit : [ 0 20 mili giây ] : GNSS_MEASUREMENT_STATE_BIT_SYNC được đặt Đồng bộ hoá khung hình phụ : [ 0 6 giây ] : GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC được đặt TOW được giải mã : [ 0 1 tuần ] : GNSS_MEASUREMENT_STATE_TOW_DECODED được đặt

Lưu ý: nếu có bất kỳ sự không rõ ràng nào trong số nguyên mili giây, bạn nên đặt GNSS_MEASUREMENT_STATE_MSEC_AMBIGUOUS cho phù hợp trong trường "trạng thái".

Bạn phải điền giá trị này nếu "trạng thái" != GNSS_MEASUREMENT_STATE_UNKNOWN.

Đối với Glonass, thông tin này là: Thời gian Glonass đã nhận được trong ngày, tại thời điểm đo lường tính bằng nano giây.

Với trạng thái đồng bộ hoá cao nhất có thể đạt được, đối với 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 C/A code lock : [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK is set Symbol sync : [ 0 10ms ] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC is set Bit sync : [ 0 20ms ] : GNSS_MEASUREMENT_STATE_BIT_SYNC is set String sync : [ 0 2s ] : GNSS_MEASUREMENT_STATE_GLO_STRING_SYNC is set Time of day : [ 0 1day ] : GNSS_MEASUREMENT_STATE_GLO_TOD_DECODED is set

Đối với Beidou, đây là: Thời gian trong tuần của Beidou đã nhận được, tại thời điểm đo lường tính bằng nano giây.

Với trạng thái đồng bộ hoá cao nhất có thể đạt được, đối với 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 C/A code lock: [ 0 1ms ] : GNSS_MEASUREMENT_STATE_CODE_LOCK is set Bit sync (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 week : [ 0 1week ] : GNSS_MEASUREMENT_STATE_TOW_DECODED is set

Đối với Galileo, đây là: Thời gian Galileo đã nhận được trong tuần, tại thời điểm đo lường tính bằng nano giây.

Khoá mã E1BC : [ 0 4ms ] : GNSS_MEASUREMENT_STATE_GAL_E1BC_CODE_LOCK được đặt Khoá mã E1C thứ hai: [ 0 100ms ] : GNSS_MEASUREMENT_STATE_GAL_E1C_2ND_CODE_LOCK được đặt

Trang E1B : [ 0 2s ] : GNSS_MEASUREMENT_STATE_GAL_E1B_PAGE_SYNC được đặt Thời gian trong tuần: [ 0 1week ] : GNSS_MEASUREMENT_STATE_TOW_DECODED được đặt

Đối với SBAS, đây là: Thời gian nhận SBAS, tại thời điểm đo lường tính bằng nano giây.

Với trạng thái đồng bộ hoá cao nhất có thể đạt được, đối với 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 Khoá mã C/A: [ 0 1 mili giây ] : GNSS_MEASUREMENT_STATE_CODE_LOCK được đặt Đồng bộ hoá ký hiệu : [ 0 2 mili giây ] : GNSS_MEASUREMENT_STATE_SYMBOL_SYNC được đặt Thông báo : [ 0 1 giây ] : GNSS_MEASUREMENT_STATE_SBAS_SYNC được đặt

Định nghĩa tại dòng 1763 của tệp gps.h .

int64_t received_sv_time_uncertainty_in_ns

Độ không chắc chắn 1-Sigma của Thời gian trong tuần theo GPS đã nhận được tính bằng nano giây.

Bạn phải điền giá trị này nếu "trạng thái" != GPS_MEASUREMENT_STATE_UNKNOWN.

Định nghĩa tại dòng 1770 của tệp gps.h .

size_t size

đặt thành sizeof(GpsMeasurement)

Định nghĩa tại dòng 1658 của tệp gps.h .

double snr_db

Hệ số tín hiệu trên tạp âm tại đầu ra của bộ tương quan tính theo dB. Nếu có dữ liệu, "cờ" phải chứa GNSS_MEASUREMENT_HAS_SNR. Đây là tỷ lệ công suất của "độ cao đỉnh tương quan trên nền nhiễu được quan sát" với "RMS nhiễu".

Định nghĩa tại dòng 1909 của tệp gps.h .

Theo trạng thái đồng bộ hoá vệ tinh. Giá trị này thể hiện trạng thái đồng bộ hoá hiện tại của vệ tinh được liên kết. Dựa trên trạng thái đồng bộ hoá, trường "đã nhận được thông tin kéo theo bằng GPS" phải được diễn giải cho phù hợp.

Đây là giá trị bắt buộc.

Định nghĩa tại dòng 1694 của tệp gps.h .

int16_t svid

Số nhận dạng xe vệ tinh, như được xác định trong GnssSvInfo::svid Đây là giá trị bắt buộc.

Định nghĩa tại dòng 1667 của tệp gps.h .

double time_offset_ns

Độ lệch thời gian tại thời điểm đo lường (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 tương tự như được chỉ định bởi GpsClock::type .

Dấu của time_offset_ns được đưa ra theo phương trình sau: thời gian đo = GpsClock::time_ns + time_offset_ns

API này cung cấp một dấu thời gian riêng cho phép đo lường và cho phép độ chính xác dưới nano giây. Đây là giá trị bắt buộc.

Định nghĩa tại dòng 1686 của tệp gps.h .


Tài liệu cho cấu trúc này được tạo từ tệp sau:
  • hardware/libhardware/include/hardware/ gps.h