Анализируйте необработанные измерения с помощью GnssLogger
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
С помощью GnssLogger v3.1 пользователи могут просматривать и анализировать необработанные данные GNSS на экране «Измерения» .
Вот экран «Измерения» , за которым следуют несколько советов и рекомендаций, которые помогут максимально эффективно использовать эти данные:
Рисунок 1. Экран измерений
В верхней карточке:
В левом верхнем углу показаны данные часов GNSS (соответствующие GnssClock ).
В правом верхнем углу показано количество отказов оборудования GNSS (HW) (из GnssClock.getHardwareClockDiscontinuityCount ), что помогает определить, включена или выключена циклическая работа. Увеличение этого счетчика указывает на то, что произошел сбой в непрерывном наблюдении сигналов GNSS (например, включена скважность ). Далее на карте отображается совокупная информация по всем измерениям:
Если ваше устройство всегда сообщает о 0 полезном ADR, даже когда оно находится под открытым небом с отключенной скважностью, это хороший признак того, что ваше устройство не поддерживает измерения фазы несущей, которые можно использовать для высокоточных GNSS.
На нижней карточке каждая строка представляет отдельное GnssMeasurement .
В столбце «Тип кода» указан точный тип сигнала GNSS с использованием типов кода, определенных в RINEX 4.01 . Например, сигналы GPS L1 с типом кода «C» представляют собой L1 C/A, на что указывает последняя буква трехзначного кода в таблицах RINEX. GPS L5 Q также будет иметь тип кода «Q». Для справки см. таблицы для других группировок GNSS в конце этого документа.
В столбце Rx SV Time (ns) текст отображается зеленым, если измерение действительно.
В столбце «Состояние» состояние также отображается зеленым, если измерение действительно. Состояние показывает удобочитаемую версию побитовых флагов, установленных в поле GnssMeasurement.getState() .
Таблица 10. Коды GPS-наблюдений RINEX версии 4.01.
Для каждого измерения показанный «Тип кода» представляет собой последнюю букву значения «Псевдодальность», определенного в спецификации RINEX 4.01 для соответствующей системы GNSS и несущей частоты. Например, «C» используется для GPS L1 [C/A], а «Q» используется для GPS L5 Q.
Рисунок 2. Таблица 10: Коды GPS-наблюдений RINEX версии 4.01.
Пользователи могут прокрутить вправо, чтобы увидеть дополнительные столбцы для каждого измерения:
Рисунок 3. Дополнительные столбцы на экране «Измерения» в таблице 10.
В столбце ADR State показана удобочитаемая версия побитовых флагов, установленных в столбце GnssMeasurement.getAccumulatedDeltaRangeState() . Если ADR можно использовать для позиционирования, текст в полях ADR (m) и ADR State будет зеленым.
Коды наблюдения RINEX 4.01
Последняя из трех букв в кодах наблюдений RINEX в столбце «Псевдодиапазон» — это значение типа кода, отображаемое на экране «Измерения» в GnssLogger.
Для удобства ниже приведены таблицы из спецификации RINEX 4.01 . Подробности смотрите в полной спецификации.
Рисунок 4. Таблица 10: Коды GPS-наблюдений RINEX версии 4.01. Рисунок 5. Таблица 11: Коды наблюдения ГЛОНАСС RINEX версии 4.01 Рисунок 6. Таблица 12: Коды наблюдений RINEX версии 4.01 Galileo Рисунок 7. Таблица 13: Коды наблюдений RINEX версии 4.01 SBAS Рисунок 8. Таблица 14: Коды наблюдений RINEX версии 4.01 QZSS Рисунок 9. Таблица 15: Коды наблюдения RINEX версии 4.01 BDS Рисунок 10. Коды наблюдения NavIC RINEX версии 4.01
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-29 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2025-07-29 UTC."],[],[],null,["# Analyze raw measurements with GnssLogger\n\nWith GnssLogger v3.1, users can view and analyze raw GNSS data on the\n**Measurements** screen.\n\nHere is the **Measurements** screen, followed by a few tips\nand tricks to make the most out of this data:\n**Figure 1.** Measurements screen\n\nIn the top card:\n\n- The top left shows the GNSS clock data (corresponding to [`GnssClock`](/reference/android/location/GnssClock)).\n- The top right shows the count of GNSS hardware (HW) discontinuities (from [`GnssClock.getHardwareClockDiscontinuityCount`](/reference/android/location/GnssClock#getHardwareClockDiscontinuityCount%28%29)), which helps determine if duty-cycling is on or off. When this counter increments, it indicates that there was a disruption in the continuous observation of GNSS signals (e.g., [duty-cycling](https://barbeau.medium.com/gnss-interrupted-the-hidden-android-setting-you-need-to-know-d812d28a3821) is on). Further down, the card displays aggregate information for all measurements:\n - **# valid measurements** --- For a measurement to be considered valid, the [`STATE_CODE_LOCK`](/reference/android/location/GnssMeasurement#STATE_CODE_LOCK) and [`STATE_TOW_KNOWN`](/reference/android/location/GnssMeasurement#STATE_TOW_KNOWN) or [`STATE_TOW_DECODED`](/reference/android/location/GnssMeasurement#STATE_TOW_DECODED)) flags must be set in [`GnssMeasurement.getState`](/reference/android/location/GnssMeasurement#getState%28%29)().\n - **# usable accumulated delta range (ADR) --- For** ADR, or carrier phase, to be considered usable for positioning, the [`ADR_STATE_VALID`](/reference/android/location/GnssMeasurement#ADR_STATE_VALID) flag must be set and neither the [`ADR_STATE_RESET`](/reference/android/location/GnssMeasurement#ADR_STATE_RESET) nor the [`ADR_STATE_CYCLE_SLIP`](/reference/android/location/GnssMeasurement#ADR_STATE_CYCLE_SLIP) flags can be set in [`GnssMeasurement.getAccumulatedDeltaRangeState`](/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeState%28%29)().\n\nIf your device always reports 0 usable ADR, even when in open sky with\nduty-cycling disabled, that's a good indication that your\ndevice doesn't support carrier phase measurements that can be used for\nhigh-accuracy GNSS.\n\nIn the bottom card, each row represents an individual [`GnssMeasurement`](/reference/android/location/GnssMeasurement).\n\n- The **Code type** column shows the exact type of GNSS signal using the code types defined in [RINEX 4.01](https://www.igs.org/wg/rinex/). For example, the GPS L1 signals with code type \"C\", represent L1 C/A, as indicated by the last letter in the three character code in the RINEX tables. GPS L5 Q would similarly have a \"Q\" code type. See the tables for other GNSS constellations at the end of this document for reference.\n- In the **Rx SV Time (ns)** column, the text is green if the measurement is valid.\n- In the **State column** , the state is also green if the measurement is valid. State shows a human-readable version of the bitwise flags that are set in the [GnssMeasurement.getState()](/reference/android/location/GnssMeasurement#getState%28%29) field.\n\nProvide feedback on new features using our\n[public issue tracker](https://issuetracker.google.com/issues/new?component=313183&template=0).\n\n**Table 10 : RINEX Version 4.01 GPS Observation Codes**\n\nFor each measurement, the \"Code Type\" shown is the last letter of the \"Pseudo\nRange\" value defined in the RINEX 4.01 specification for the relevant GNSS\nsystem and carrier frequency. For example, \"C\" is used for GPS L1\n\\[C/A\\] while \"Q\" is used for GPS L5 Q.\n**Figure 2.** Table 10: RINEX Version 4.01 GPS Observation Codes\n\nUsers can scroll to the right to see additional columns for each measurement:\n**Figure 3.** Additional columns on the Measurements screen in Table 10.\n\n- **PRR** is the Pseudo Range Rate in meters per second from [GnssMeasurement.getPseudorangeRateMetersPerSecond()](/reference/android/location/GnssMeasurement#getPseudorangeRateMetersPerSecond())\n- The **ADR State** column shows the human-readable version of the bitwise flags set in the [GnssMeasurement.getAccumulatedDeltaRangeState()](/reference/android/location/GnssMeasurement#getAccumulatedDeltaRangeState%28%29) column. If the ADR is usable for positioning, the text in the **ADR (m)** and **ADR State** fields is green.\n\nRINEX 4.01 observation codes\n----------------------------\n\nThe last of the three letters in the RINEX observation codes in the Pseudo Range\ncolumn is the **Code type** value shown on the **Measurements** screen in\nGnssLogger.\n\nFollowing are tables from the [RINEX 4.01 spec](https://www.igs.org/wg/rinex/) for convenience.\nSee the full specification for details.\n**Figure 4.** Table 10: RINEX Version 4.01 GPS Observation Codes **Figure 5.** Table 11: RINEX Version 4.01 GLONASS Observation Codes **Figure 6.** Table 12: RINEX Version 4.01 Galileo Observation Codes **Figure 7.** Table 13: RINEX Version 4.01 SBAS Observation Codes **Figure 8.** Table 14: RINEX Version 4.01 QZSS Observation Codes **Figure 9.** Table 15: RINEX Version 4.01 BDS Observation Codes **Figure 10.** RINEX Version 4.01 NavIC Observation Codes"]]