Nieprzetworzone pomiary GNSS

Platforma Android zapewnia dostęp do nieprzetworzonych pomiarów GNSS na kilku urządzeniach z Androidem.

.

Narzędzia te znajdziesz w repozytorium GitHub GPS Measurement Tools, które zawiera kod źródłowy wstępnej wersji GnssLogger oraz pliki wykonywalne do uruchamiania aplikacji GNSS Analysis na Linuksie, WindowsiemacOS. Instrukcja instalacji i obsługi.

Google Smartphone Decimeter Challenge

Google, dział satelitarny Instytutu Nawigacji oraz Kaggle sponsorują 3. edycję konkursu Smartphone Decimeter Challenge na konferencji ION GNSS+. Konkurs rozpocznie się 12 września 2023 r. i zakończy 23 maja 2024 r. Udostępnionych zostanie ponad 150 nowych ścieżek zawierających surowe pomiary GNSS, dane z czujników i precyzyjne dane podstawowe. W konkursie może wziąć udział każdy. Uczestnicy są zachęcani do przesłania abstraktu do sesji „Smartphone Decimeter Challenge”, która odbędzie się podczas konferencji ION GNSS+ 2024.

Więcej informacji, w tym zasady i regulaminy, znajdziesz na stronie konkursu na Kaggle, która zostanie opublikowana 12 września 2023 r. o godz. 15:30 czasu mountain.

urządzenia z Androidem, które obsługują pomiary GNSS w postaci surowych danych;

Obsługa surowych pomiarów GNSS jest obowiązkowa na urządzeniach z Androidem 10 (poziom interfejsu API 29) lub nowszym. W Androidzie 9 (poziom API 28) i starszym obsługa pomiarów GNSS w postaci nieprzetworzonej jest obowiązkowa na wszystkich urządzeniach z Androidem, które zawierają sprzęt z roku 2016 lub nowszego. Obecnie ponad 90% dotychczasowych telefonów z Androidem ma pomiary w postaci danych nieprzetworzonych.

Obsługa niektórych pól pomiarów GNSS w postaci surowych danych jest opcjonalna i może się różnić w zależności od używanego układu GNSS. Przykłady takich pól:

  • Pseudozakres i tempo pseudozakresu.
  • Komunikat nawigacyjny.
  • Wartość automatycznego regulatora wzmocnienia (AGC).
  • Zbiorzony zakres delty (ADR) lub faza przenoszenia.

Tabela poniżej zawiera kilka przykładów urządzeń z Androidem i poziom obsługi przez nie pomiarów GNSS w postaci surowych danych:

Model Wersja Androida AGC ADR (etap dostawcy) L5 Systemy globalne
Google Pixel 4/5/6/7 12 tak tak tak GPS
GLO
GAL
BDS
QZS
Xiaomi Mi 9 9 tak no tak GPS
GLO
GAL
BDS
QZS
Xiaomi Mi 8 8.1 no tak tak GPS
GLO
GAL
BDS
QZS
Huawei P30 Pro 9 no tak tak GPS
GLO
GAL
BDS
Huawei Mate 20 9 no tak tak GPS
GLO
GAL
BDS
One Plus 7 Pro 9 tak no tak GPS
GLO
GAL
One Plus 7 9 tak no tak GPS
GLO
GAL
Samsung Galaxy S20/S21 Ultra (Exynos)* 12 tak tak tak GPS
GLO
GAL
BDS
QZS
Samsung Galaxy S9 (Exynos)* z Androidem 8.0 no tak no GPS
GLO
GAL
QZS
Samsung Galaxy S9+ z Androidem 8.0 no nie no GPS
GLO
GAL

* Wersja Exynos w telefonach Samsung Galaxy zapewnia ADR w ostatnich latach. Wersja Samsunga z procesorem Snapdragon nie obsługuje jeszcze ADR.

Więcej informacji o definicjach pól pomiarów surowych udostępnianych przez urządzenia z Androidem znajdziesz w artykule Globalne systemy nawigacji satelitarnej.

Producenci oryginalnego sprzętu (OEM), deweloperzy i badacze mogą korzystać z narzędzi na tej stronie, aby testować nowe projekty telefonów, weryfikować funkcjonalność, opracowywać nowe algorytmy, oceniać ulepszenia w implementacji systemu GNSS oraz tworzyć aplikacje z dodatkową wartością.

Przykładowy kod klienta SUPL

Suplclient to przykładowy kod, który uzyskuje dostęp do supl.google.com w celu uzyskania danych ephemerytalnych w czasie rzeczywistym. Klasa SuplTester zawiera przykład użycia projektu klienta SUPL. SuplTester konfiguruje specyfikacje połączenia TCP SUPL, a następnie przy danej szerokości i długości geograficznej wysyła żądanie LPP SUPL i wypisuje odpowiedź serwera SUPL.

Informacje o kalibracji anteny

Od Androida 11 (poziom interfejsu API 30) możesz używać klasy GnssAntennaInfo, aby uzyskać dostęp do charakterystyk anteny, takich jak współrzędne przesunięcia środka fazy (PCO), poprawki dotyczące środka fazy (PCV) i poprawki wzmocnienia sygnału. Te korekty można stosować do pomiarów nieprzetworzonych, aby zwiększyć dokładność.

Podczas korzystania z funkcji GnssAntennaInfo pamiętaj o tych zachowaniach systemu. Mają one na celu zwiększenie ochrony prywatności użytkowników.

  • Cechy dostarczane przez ten interfejs API są specyficzne tylko dla modelu urządzenia, a nie dla konkretnego urządzenia.

Rejestrowanie pomiarów nieprzetworzonych

Za pomocą Android Studio możesz utworzyć aplikację, która rejestruje surowe pomiary GNSS i inne dane o lokalizacji, a następnie zapisuje je w pliku. Przykładowy kod źródłowy takiej aplikacji znajdziesz w artykule Narzędzia do pomiaru GPS.

Google GNSSLogger to przykładowa aplikacja, która korzysta z tej funkcji. Aby uzyskać dane GNSS za pomocą przykładowej aplikacji, urządzenie musi obsługiwać surowe pomiary GNSS.

Po przechwyceniu dziennika GNSS za pomocą narzędzia GNSS Logger możesz skopiować pliki dziennika z urządzenia na komputer, aby przeanalizować je dokładniej. W GNSS Logger możesz wysłać pliki do siebie e-mailem lub zapisać je na Dysku Google. Możesz też zapisać pliki za pomocą aplikacji do zarządzania plikami na urządzeniu lub użyć narzędzia Android Debug Bridge (ADB) zgodnie z instrukcjami w artykule Kopiowanie plików na urządzenie i z niego.

Analizowanie pomiarów w postaci danych nieprzetworzonych

Aplikacja GNSS Analysis odczytuje surowe pomiary GPS/GNSS zebrane przez GNSS Logger i użyje ich do analizy zachowania odbiornika GNSS, jak pokazano na rysunku 1.

Aplikację możesz pobrać na systemy Linux, Windows i macOS.

GNSS Logger i analiza GNSS

Rysunek 1. GNSS Logger zbiera pomiary, których można używać w ramach analizy GNSS.

Aplikacja GNSS Analysis została opracowana na podstawie MATLABA, ale do jej uruchomienia nie musisz mieć tego programu. Aplikacja jest kompilowana w plik wykonywalny, który instaluje kopię środowiska wykonawczego MATLAB.

Panel sterowania GNSS Analysis

Panel sterowania GNSS Analysis, widoczny na rysunku 2, umożliwia zarządzanie funkcjami aplikacji, takimi jak:

  • Wybierz satelity, które mają być wyświetlane.
  • Sterowanie pozycją odniesienia, prędkością i czasem (PVT) służącymi do obliczania błędów pomiarowych.
  • generować raporty analityczne;
  • Określ w danych przedział czasu między czasem rozpoczęcia a zakończenia.

Panel sterowania GNSS Analysis)

Rysunek 2. Panel sterowania GNSS Analysis

Interaktywne wykresy analizy GNSS

Aplikacja GNSS Analysis udostępnia interaktywne wykresy uporządkowane w kolumnach częstotliwości radiowej (RF), zegarów i pomiarów, jak pokazano na rysunku 3.

Interaktywne wykresy analizy GNSS)

Rysunek 3. Aplikacja GNSS Analysis z interaktywnymi wykresami.

W kolumnie RF widać te dane:

  • W przypadku każdej konstelacji 4 satelity z najsilniejszymi sygnałami.
  • Dla każdego satelity wykres gęstości sygnału nośnego w stosunku do szumów (C/No).
  • Skyplot pozycji satelitów.

W kolumnie zegara znajdują się te dane:

  • Pseudozakresy.
  • Odchylenie częstotliwości zegara odbiornika, które jest obliczane na podstawie jednej z tych pozycji odniesienia:

    • Średnia pozycja obliczona automatycznie.
    • Szerokość geograficzna, długość geograficzna i wysokość podane przez użytkownika.
    • Plik National Marine Electronics Association (NMEA) z prawdziwymi współrzędnymi PVT.
  • Odchylenie zegara w stanie gotowości, który utrzymuje czas, gdy odbiornik resetuje cykl pracy głównego oscylatora.

W kolumnie pomiarów znajdują się te dane:

  • Ważony wynik metody najmniejszych kwadratów uzyskany na podstawie nieprzetworzonych pseudozakresów. Wagowanie odbywa się na podstawie zgłoszonej niepewności każdego pomiaru, która jest częścią specyfikacji interfejsu API pomiarów surowych.
  • Błędy każdego pseudozakresu dla każdego pomiaru.
  • Błędy dla każdego pseudozakresu w przypadku każdego pomiaru.

Raport z testu analizy GNSS

Analiza GNSS może wygenerować raport testowy (jak na rysunku 4), który ocenia implementację interfejsu API, odbierany sygnał, działanie zegara i dokładność pomiarów. W każdym przypadku aplikacja informuje, czy odbiornik przeszedł test, czy też nie, na podstawie wydajności zmierzonej w porównaniu z znanymi wartościami referencyjnymi. Raport z testu jest przydatny dla producentów urządzeń, którzy mogą go używać podczas projektowania i wdrażania nowych urządzeń. Aby wygenerować raport testowy, kliknij Utwórz raport.

Raport z testu analizy GNSS

Rysunek 4. Raport z testu analizy GNSS

Karta Porównaj umożliwia porównanie (jak na rysunku 5) wartości C/No z kilku plików dziennika GNSS. Jest to przydatne przy porównywaniu wydajności RF różnych urządzeń.

C/B porównanie danych side-by-side

Rysunek 5. Porównanie danych C/No z kilku plików dziennika

Chcesz poznać kod źródłowy? Projekt GPS Measurement Tool udostępnia przykład kodu open source w języku MATLAB, który można wykorzystać do wykonania tych czynności za pomocą sygnałów konstelacji GPS:

  • Odczytywanie danych zarejestrowanych za pomocą przykładowej aplikacji GNSS Logger.
  • Obliczanie i wizualizacja pseudozakresów.
  • Obliczanie pozycji i prędkości za pomocą ważonego najmniejszych kwadratów.
  • Wyświetlanie i analizowanie etapu dotyczącego operatora.

Informacje o wersji aplikacji GNSS Analysis 4.6.0.1

Wersja 4.6.0.1 aplikacji GNSS Analysis zawiera te zmiany:

  • Utworzono narzędzie GnssAnalysisTool na potrzeby Matlaba R2022a, co daje dostęp do nowych funkcji:
  • Okno stanu przewija się automatycznie: najnowszy komunikat o stanie jest zawsze widoczny.
  • Dodano tabelę porównań C/N0 według konstelacji oraz porównań L1–L5.
  • Dodano wykres reszt pseudozakresu.
  • Usunięto oddzielne karty dla stacjonarnych i ruchomych plików referencyjnych PVT, aby ułatwić sprawdzenie, który typ pliku referencyjnego PVT został wybrany.
  • Przeniesienie wyników „Utwórz raport” z HTML do okna stanu.
  • Usunięto kartę Planista misji. Użyj adresu gnsmissionplanning.com/ lub www.gnsplanning.com/.
  • Poprawki związane z analizowaniem pliku obserwacji RINEX.
  • W przypadku gdy BKG nie działa, należy użyć źródła efemeryd NASA CDDIS do GPS i GLO.
  • Przeniesienie z igs.bkg.bund.de do igs-ftp.bkg.bund.de
  • Nie zamykaj analizy, jeśli nie uda się pobrać danych ephemerycznych z GAL, QZSS lub BDS.
  • Tworzenie analizy CNo anteny, nawet jeśli chipset nie obsługuje BaseBandCNo

Instrukcja instalacji i obsługi.

Prześlij opinię

Chcemy poprawić obsługę GNSS na urządzeniach z Androidem. O wszelkich problemach z obsługą GNSS na Androidzie poinformuj nas za pomocą śledzika problemów z GNSS. Zanim opublikujesz pytanie, sprawdź, czy nie ma już odpowiedzi na nie w Najczęstszych pytaniach.

Jeśli korzystasz z narzędzi do analizy GNSS, prześlij opinię, wypełniając krótką ankietę. Jeśli masz inne pytania lub prośby o pomoc, zapoznaj się z zasobami dla deweloperów.

Odpowiedzi na najczęstsze pytania znajdziesz w często zadawanych pytaniach dotyczących narzędzi do analizy GNSS.