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 z narzędziami do pomiarów GPS, 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, oddział nawigacji satelitarnej Institute of Navigation i Kaggle sponsorują 3. wyzwanie w ramach Smartphone Decimeter Challenge na konferencji ION GNSS+. Konkurs rozpoczyna się 12 września 2023 r. i kończy się 23 maja 2024 r. Dostępnych będzie 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. Zachęcamy uczestników do przesłania streszczenia 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 Daylight Time.

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

Obsługa nieprzetworzonych 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% telefonów z Androidem posiada nieprzetworzone dane.

Obsługa niektórych pól pomiaru nieprzetworzonych danych GNSS jest opcjonalna i może się różnić w zależności od użytego chipsetu GNSS. Przykłady takich pól:

  • Pseudozakres i tempo pseudozakresu.
  • Komunikat nawigacyjny.
  • Wartość automatycznego regulatora wzmocnienia (AGC).
  • Zakumulowany zakres delta (ADR) lub faza operatora.

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 (faza 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 nawigacyjne satelitarne.

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, by uzyskać dane efemeryczne 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 poprawki można zastosować do nieprzetworzonych pomiarów, 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 oraz 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 GNSS Analysis

Rysunek 1. GNSS Logger zbiera pomiary, których można używać w analizie 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 Analizy GNSS

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 pomiaru.
  • 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 GNSS Analysis

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, która wyświetla interaktywne wykresy.

W kolumnie RF widać te dane:

  • W przypadku każdej konstelacji 4 satelity z najsilniejszymi sygnałami.
  • Dla każdego satelity wykres czasu według gęstości szumu względem operatora (C/Nie).
  • Wykres pozycji satelity.

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.
  • Przesunięcie zegara w trybie gotowości, które pokazuje czas, w którym odbiornik resetuje cykl pracy oscylatora głównego.

Kolumna pomiarów zawiera te dane:

  • Ważony wynik metody najmniejszych kwadratów uzyskany na podstawie nieobrobionych pseudozakresów. Przypisywanie wagi jest wykonywane z uwzględnieniem niepewności każdego pomiaru, która jest częścią specyfikacji interfejsu surowego interfejsu API do pomiaru.
  • Błędy każdego pseudozakresu dla każdego pomiaru.
  • Błędy każdej wartości pseudozakresowej w każdym pomiarze.

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 odbiorca przeszedł test, czy też nie, na podstawie wydajności zmierzonej na podstawie znanych testów porównawczych. 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 (patrz rysunek 5) wartości C/No z kilku plików dziennika GNSS, co jest przydatne podczas porównywania wydajności RF różnych urządzeń.

Porównanie C/Brak danych

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żesz 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.
  • Oblicz pozycję i prędkość ważonych 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 w wersji Matlab R2022a, które zapewnia 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.
  • Przejdź z igs.bkg.bund.de na igs-ftp.bkg.bund.de
  • Nie zamykaj analizy, jeśli nie uda się pobrać danych ephemerycznych 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 Androidzie. 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.