مرجع هيكل القياس GnssMeasurement
#include < gps.h >
حقول البيانات | |
size_t | بحجم |
GnssMeasurementFlags | الأعلام |
int16_t | سفيد |
GnssConstellationType | كوكبة |
مزدوج | time_offset_ns |
الدولة | حالة |
int64_t | Received_sv_time_in_ns |
int64_t | Received_sv_time_uncertainty_in_ns |
مزدوج | c_n0_dbhz |
مزدوج | pseudorange_rate_mps |
مزدوج | pseudorange_rate_uncertainty_mps |
Gnss تراكمت DeltaRangeState | تراكم_الحالة_النطاق_للمتراكمة |
مزدوج | تراكم_دلت_نطاق_م |
مزدوج | تراكم_دلت_ترجي_غير يقين_م |
يطفو | ناقل_تكرار_التردد_الهرتز |
int64_t | دراجات_حاملة |
مزدوج | الناقل_الطور |
مزدوج | الناقل_المرحلة_غير مؤكدة |
مؤشر Gnss متعدد المسارات | متعدد المسارات |
مزدوج | snr_db |
وصف مفصل
يمثل قياس GNSS ، ويحتوي على معلومات أولية ومحسوبة.
الاستقلال - يجب أن تستند جميع معلومات قياس الإشارة (مثل sv_time و pseudorange_rate و multath_indicator) الواردة في هذا الهيكل إلى قياسات إشارة GNSS فقط. لا يجوز لك توليف القياسات عن طريق الحساب أو الإبلاغ عن القياسات المتوقعة بناءً على الموضع أو السرعة أو الوقت المعروف أو المقدر.
التوثيق الميداني
مضاعفة التراكم_delta_range_m |
نطاق دلتا المتراكم منذ إعادة تعيين القناة الأخيرة بالأمتار. تشير القيمة الموجبة إلى أن SV يتحرك بعيدًا عن جهاز الاستقبال.
يتم إعطاء علامة "نطاق دلتا المتراكم" وعلاقته بعلامة "مرحلة الناقل" من خلال المعادلة: نطاق دلتا المتراكم = -k * مرحلة الناقل (حيث k ثابت)
يجب ملء هذه القيمة إذا كانت "حالة نطاق دلتا المتراكمة"! = GPS_ADR_STATE_UNKNOWN. ومع ذلك ، من المتوقع أن تكون البيانات دقيقة فقط عندما: "حالة نطاق دلتا المتراكمة" == GPS_ADR_STATE_VALID.
مضاعفة التراكم_delta_range_uncertainty_m |
مزدوج c_n0_dbhz |
int64_t ناقلة_ دراجات |
عدد دورات الموجة الحاملة الكاملة بين القمر الصناعي وجهاز الاستقبال. يُعطى التردد المرجعي بواسطة الحقل "carrier_frequency_hz". يمكن الاستدلال على مؤشرات الانزلاق المحتمل للدورة وإعادة التعيين في تراكم هذه القيمة من الإشارات المتراكمة_delta_range_state.
في حالة توفر البيانات ، يجب أن تحتوي "العلامات" على GNSS_MEASUREMENT_HAS_CARRIER_CYCLES.
تعويم carrier_frequency_hz |
مزدوج الناقل_الطور |
طور التردد الراديوي الذي يكتشفه المستقبل ، في النطاق [0.0 ، 1.0]. عادة ما يكون هذا هو الجزء الكسري من قياس طور الموجة الحاملة الكاملة.
يُعطى التردد المرجعي بواسطة الحقل "carrier_frequency_hz". تحتوي القيمة على "حالة عدم اليقين في المرحلة الحاملة" فيها.
إذا كانت البيانات متاحة ، فيجب أن تحتوي "العلامات" على GNSS_MEASUREMENT_HAS_CARRIER_PHASE.
مزدوج الناقل_الطور_غير يقين |
كوكبة النوع GnssConstellation |
GnssMeasurementFlags أعلام |
مؤشر Gnss متعدد المسارات |
تعداد يشير إلى حالة "متعدد المسارات" للحدث.
يهدف المؤشر متعدد المسارات إلى الإبلاغ عن وجود إشارات متداخلة تظهر على شكل قمم ارتباط مشوهة.
- إذا كان هناك شكل ذروة ارتباط مشوه ، فقم بالإبلاغ عن أن تعدد المسيرات هو GNSS_MULTIPATH_INDICATOR_PRESENT.
- إذا لم يكن هناك شكل ذروة ارتباط مشوه ، أبلغ عن GNSS_MULTIPATH_INDICATOR_NOT_PRESENT
- إذا كانت الإشارات أضعف من أن تميز هذه المعلومات ، أبلغ عن GNSS_MULTIPATH_INDICATOR_UNKNOWN
مثال: عند إجراء اختبار أداء متعدد المسارات المعياري المتداخل (3GPP TS 34.171) ، يجب أن يقوم مؤشر Multipath بالإبلاغ عن GNSS_MULTIPATH_INDICATOR_PRESENT لتلك الإشارات التي يتم تتبعها والتي تحتوي على مسارات متعددة ، و GNSS_MULTIPATH_INDICATOR_NOT_PRESENT لتلك الإشارات التي يتم تتبعها ولا تحتوي على مسارات متعددة.
مزدوج pseudorange_rate_mps |
معدل Pseudorange في الطابع الزمني في m / s. يشمل تصحيح قيمة معينة لمعدل Pseudorange تصحيحات لأخطاء تردد ساعة الساتل والمستقبل. تأكد من أن هذا الحقل مستقل (انظر التعليق أعلى هيكل GnssMeasurement .)
من الضروري توفير معدل "النطاق الزائف" "غير المصحح" ، وتوفير حقل "الانجراف" الخاص بـ GpsClock أيضًا (عند تقديم معدل النطاق الزائف غير المصحح ، لا تقم بتطبيق التصحيحات الموضحة أعلاه.)
تتضمن القيمة "عدم اليقين في معدل pseudorange" فيه. تشير القيمة الموجبة "غير المصححة" إلى أن SV يتحرك بعيدًا عن جهاز الاستقبال.
تُعطى علامة معدل الانتقال الكاذب "غير المصحح" وعلاقته بعلامة "إزاحة دوبلر" بواسطة المعادلة: معدل النطاق الزائف = -k * انزياح دوبلر (حيث يكون k ثابتًا)
ينبغي أن يكون هذا هو أدق معدل متاح للنطاق الزائف ، بناءً على قياسات الإشارة الحديثة من هذه القناة.
من الضروري توفير هذه القيمة بجودة PRR لطور الموجة الحاملة النموذجية (بضع سنتيمترات / ثانية في الثانية من عدم اليقين ، أو أفضل) - عندما تكون الإشارات قوية ومستقرة بدرجة كافية ، مثل الإشارات من محاكي GPS عند> = 35 ديسيبل-هرتز.
معدل_غير مؤكد مزدوج |
int64_t Received_sv_time_in_ns |
وقت الأسبوع الذي تم استلامه من نظام GNSS في وقت القياس بالنانو ثانية. تأكد من أن هذا الحقل مستقل (انظر التعليق أعلى هيكل GnssMeasurement .)
بالنسبة لنظام GPS و QZSS ، هذا هو: وقت الأسبوع الذي تم تلقيه من GPS في وقت القياس ، بالنانو ثانية. القيمة مرتبطة ببداية أسبوع GPS الحالي.
نظرًا لأعلى حالة مزامنة يمكن تحقيقها ، لكل قمر صناعي ، يمكن أن يكون النطاق الصالح لهذا الحقل: البحث: [0]: GNSS_MEASUREMENT_STATE_UNKNOWN C / A قفل رمز: [0 1 مللي ثانية]: تم تعيين GNSS_MEASUREMENT_STATE_CODE_LOCK مزامنة البت: [0 20 مللي ثانية] : تم تعيين GNSS_MEASUREMENT_STATE_BIT_SYNC مزامنة الإطار الفرعي: [0 6s]: تم تعيين GNSS_MEASUREMENT_STATE_SUBFRAME_SYNC على TOW فك الشفرة: [0 أسبوع واحد]: تم تعيين 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 1 مللي ثانية]: تم تعيين GNSS_MEASUREMENT_STATE_CODE_LOCK مزامنة الرمز: [0 10 مللي ثانية] : تم تعيين GNSS_MEASUREMENT_STATE_SYMBOL_SYNC مزامنة البت: [0 20 مللي ثانية]: تم تعيين GNSS_MEASUREMENT_STATE_BIT_SYNC مزامنة السلسلة: [0 2 ثانية]: GNSS_MEASUREMENT_STATE_GLO_STRING_SYNC [تم ضبطه_الوقت من اليوم]: GNSS_SYNC هو 0 يوم:
بالنسبة إلى Beidou ، هذا هو: وقت Beidou الذي تم تلقيه من الأسبوع ، في وقت القياس بالنانو ثانية.
نظرًا لأعلى حالة مزامنة يمكن تحقيقها ، لكل قمر صناعي ، يمكن أن يكون النطاق الصالح لهذا الحقل: البحث: [0]: GNSS_MEASUREMENT_STATE_UNKNOWN C / A رمز القفل: [0 1 مللي ثانية]: تم تعيين GNSS_MEASUREMENT_STATE_CODE_LOCK مزامنة بت (D2): [ 0 2ms]: gnss_measurement_state_bds_d2_bit_sync تم تعيين بتات (d1): [0 20ms]: gnss_measurement_state_state_sync يتم تعيين الإطار الفرعي (d2): [0 0.6S]: gnss_measurement_state_bds_d2_sub_subs. الأسبوع: [0 أسبوع واحد]: تم تعيين GNSS_MEASUREMENT_STATE_TOW_DECODED
بالنسبة إلى Galileo ، هذا هو: تم استلام توقيت Galileo من الأسبوع ، في وقت القياس بالنانو ثانية.
قفل رمز E1BC: [0 4 مللي ثانية]: تم تعيين GNSS_MEASUREMENT_STATE_GAL_E1BC_CODE_LOCK قفل الرمز الثاني E1C: [0100 مللي ثانية]: تم تعيين GNSS_MEASUREMENT_STATE_GAL_E1C_2ND_CODE_LOCK
صفحة E1B: [0 2s]: تم تعيين GNSS_MEASUREMENT_STATE_GAL_E1B_PAGE_SYNC الوقت من الأسبوع: [0 أسبوع واحد]: تم تعيين GNSS_MEASUREMENT_STATE_TOW_DECODED
بالنسبة إلى SBAS ، هذا هو: وقت SBAS المستقبَل ، في وقت القياس بالنانو ثانية.
نظرًا لأعلى حالة مزامنة يمكن تحقيقها ، لكل قمر صناعي ، يمكن أن يكون النطاق الصالح لهذا الحقل: البحث: [0]: GNSS_MEASUREMENT_STATE_UNKNOWN C / A قفل رمز: [0 1 مللي ثانية]: تم تعيين GNSS_MEASUREMENT_STATE_CODE_LOCK مزامنة الرمز: [0 2 مللي ثانية] : تم تعيين GNSS_MEASUREMENT_STATE_SYMBOL_SYNC الرسالة: [0 1 ثانية]: تم تعيين GNSS_MEASUREMENT_STATE_SBAS_SYNC
int64_t Received_sv_time_uncertainty_in_ns |
مزدوج snr_db |
حالة GnssMeasurement الدولة |
int16_t svid |
رقم معرف المركبة الفضائية ، كما هو محدد في GnssSvInfo :: svid هذه قيمة إلزامية.
مضاعفة time_offset_ns |
إزاحة الوقت التي تم فيها أخذ القياس بالنانو ثانية. يتم تحديد وقت جهاز الاستقبال المرجعي بواسطة GpsData :: clock :: time_ns ويجب تفسيره بنفس الطريقة الموضحة بواسطة GpsClock :: type .
تُعطى علامة time_offset_ns بالمعادلة التالية: قياس الوقت = GpsClock :: time_ns + time_offset_ns
يوفر طابعًا زمنيًا فرديًا للقياس ، ويسمح بدقة أقل من نانوثانية. هذه قيمة إلزامية.
تم إنشاء وثائق هذه البنية من الملف التالي:
- الأجهزة / الأدوات الإلكترونية / تشمل / الأجهزة / نظام تحديد المواقع