Framework Android memberikan akses ke pengukuran GNSS mentah pada beberapa perangkat Android.
Artikel ini mencantumkan perangkat Android yang mendukung pengukuran GNSS mentah serta fitur untuk mencatat dan menganalisis data GNSS. Anda dapat menemukan fitur tersebut dalam repo Fitur Pengukuran GPS di GitHub, yang berisi APK GNSS Logger, aplikasi GNSS Analysis untuk Linux, Windows, macOS, serta Panduan Pengguna dan Penginstalan.
Pabrikan peralatan asli (OEM), developer, dan peneliti dapat menggunakan fitur dalam halaman ini untuk menguji desain ponsel baru, memvalidasi fungsi, mengembangkan algoritme baru, mengevaluasi penyempurnaan penerapan sistem GNSS, serta mem-build aplikasi bernilai tambah.
Contoh Kode Klien SUPL
Suplclient adalah contoh kode yang mengakses supl.google.com untuk mendapatkan ephemeris real-time. Class SuplTester
memberikan contoh tentang cara menggunakan Project Klien SUPL. SuplTester
menyiapkan spesifikasi sambungan TCP SUPL, kemudian pada lintang dan bujur tertentu akan mengirim permintaan LPP SUPL dan mencetak respons server SUPL.
Perangkat Android yang mendukung pengukuran GNSS mentah
Sebelum mendapatkan output GNSS mentah, harus dipastikan bahwa Anda memiliki perangkat yang dapat menangkap data tersebut. Sebagian besar perangkat yang diproduksi pada tahun 2016 atau yang lebih baru dan memiliki OS Android 7.0 ke atas menyediakan data GNSS mentah.
Bergantung pada perangkat, pengukuran GNSS mentah dapat menyertakan semua atau sebagian data berikut:
- Pseudorange dan tingkat pseudorange.
- Pesan navigasi.
- Akumulasi rentang delta atau operator.
- Jam Hardware (HW).
Tabel di bawah ini mencantumkan perangkat yang mendukung pengukuran GNSS mentah dan data yang diberikannya. Ini bukan daftar yang lengkap. Hubungi produsen untuk memastikan bahwa perangkat tertentu mendukung pengukuran GNSS mentah.
Model | Versi Android | AGC | Pesan Nav | ADR (fase operator) | L5 | Sistem global |
---|---|---|---|---|---|---|
Xiaomi Mi 9 | 9.0 | ya | tidak | tidak | ya | GPS GLOGALBDSQZS |
Samsung Galaxy Note 10+ | 9.0 | ya | tidak | tidak | ya | GPS GLOGAL |
Samsung Galaxy Note 10 | 9.0 | ya | tidak | tidak | ya | GPS GLOGAL |
Samsung Galaxy S10e | 9.0 | ya | tidak | tidak | tidak | GPS GLOGAL |
Samsung Galaxy S10+ | 9.0 | ya | tidak | tidak | tidak | GPS GLO |
Samsung Galaxy S10 | 9.0 | ya | tidak | tidak | tidak | GPS GLOGAL |
Huawei P30 Pro | 9.0 | tidak | tidak | ya | ya | GPS GLOGALBDS |
LG G8 ThinQ | 9.0 | ya | tidak | tidak | tidak | GPS GLOGAL |
One Plus 7 Pro | 9.0 | ya | tidak | tidak | ya | GPS GLOGAL |
One Plus 7 | 9.0 | ya | tidak | tidak | ya | GPS GLOGAL |
Huawei Mate 20 X | 9.0 | tidak | ya | ya | ya | GPS GLOGALQZS |
Huawei Mate 20 RS (Porsche Design) | 9.0 | tidak | tidak | ya | ya | GPS GLOGALBDS |
Huawei Mate 20 Pro | 9.0 | tidak | tidak | ya | ya | GPS GLOGALBDS |
Huawei Mate 20 | 9.0 | tidak | tidak | ya | ya | GPS GLOGALBDS |
Huawei Mate RS (Porsche Design) | 8.1 | tidak | ya | ya | tidak | GPS GLO GAL |
Pixel 3 XL | 9.0 | ya | tidak | tidak | tidak | GPS GLOGALBDS |
Pixel 3 | 9.0 | ya | tidak | tidak | tidak | GPS GLOGALBDS |
Vivo X21 | 9.0 | tidak | tidak | tidak | tidak | GPS GLOBDS |
OPPO R15 Pro | 9.0 | tidak | tidak | tidak | tidak | GPS GLOGALBDS |
Xiaomi Mi 8 | 8.1 | tidak | ya | ya | ya | GPS GLOGALBDSQZS |
LG V40 ThinQ | 8.1 | tidak | tidak | tidak | tidak | GPS GLOGALQZS |
OnePlus 6T | 9.0 | tidak | tidak | tidak | tidak | GPS GLOGALQZS |
Samsung Note 9 | 8.1 | tidak | tidak | tidak | tidak | GPS GLOGAL QZSSBAS |
LG G7 ThinQ | 8.0 | tidak | tidak | tidak | tidak | GPS GLO |
Xiaomi Mix 2S | 9.0 | tidak | tidak | tidak | tidak | GPS GLOGALSBAS |
Huawei P20 | 8.1 | tidak | ya | ya | tidak | GPS GLOQZS |
Samsung Galaxy S9 (Exynos)1 | 8.0 | tidak | ya | ya | tidak | GPS GLOGALQZS |
Samsung Galaxy S9+ | 8.0 | tidak | tidak | tidak | tidak | GPS GLOGAL |
Sony Xperia XZ2 | 8.0 | tidak | tidak | tidak | tidak | GPS GLOGALQZS |
OPPO R15 | 9.0 | tidak | tidak | tidak | tidak | GPS GLOGALBDS |
HTC U11 Plus | 8.0 | tidak | tidak | tidak | tidak | GPS GLO |
HTC U11 Life | 8.0 | tidak | tidak | tidak | tidak | GPS GLO |
Huawei Mate 10 | 8.0 | tidak | ya | ya | tidak | GPS GLO |
Huawei Mate 10 Pro | 8.0 | tidak | ya | ya | tidak | GPS GLOQZS |
Google Pixel 2 XL | 8.0 | ya | tidak | tidak | tidak | GPS GLOGALBDSQZS |
Google Pixel 2 | 8.0 | ya | tidak | tidak | tidak | GPS GLOGALBDSQZS |
Sony Xperia XZ1 | 8.0 | tidak | tidak | tidak | tidak | GPS GLOGALBDS |
Samsung Note 8 (Exynos) | 7.1 | tidak | ya | ya | tidak | GPS GLOGALBDS |
Samsung Note 8 (QCOM) | 7.1 | tidak | tidak | tidak | tidak | GPS GLOGALBDS |
LG V30 | 7.1.2 | tidak | tidak | tidak | tidak | GPS GLOGAL |
Moto X4 2017 | 7.1 | tidak | tidak | tidak | tidak | GPS GLO GAL |
Essential PH-1 | 7.1 | tidak | tidak | tidak | tidak | GPS GLO |
Moto Z2 | 7.1 | tidak | tidak | tidak | tidak | GPS GLO |
HTC U11 | 7.1 | tidak | tidak | tidak | tidak | GPS GLO |
OPPO R11 | 7.1 | tidak | tidak | tidak | tidak | GPS GLOGALBDS |
Huawei Honor 9 | 7.0 | tidak | ya | ya | tidak | GPS GLO |
Samsung S8 (Exynos)2 | 7.0 | tidak | ya | ya | tidak | GPS GLOGALBDSQZS |
Samsung S8 (QCOM)3 | 7.0 | tidak | tidak | tidak | tidak | GPS |
Huawei P10 | 7.0 | tidak | ya | ya | tidak | GPS GLOGALBDSQZS |
Huawei P10 Lite | 7.0 | tidak | tidak | tidak | tidak | GPS |
Huawei Honor 8 | 7.0 | tidak | ya | ya | tidak | GPS GLOBDS |
Huawei Mate 9 | 7.0 | tidak | ya | ya | tidak | GPS GLOBDS |
Huawei P9 | 7.0 | tidak | ya | ya | tidak | GPS GLOBDS |
Google Pixel XL | 7.0 | tidak | tidak | tidak | tidak | GPS |
Google Pixel | 7.0 | tidak | tidak | tidak | tidak | GPS |
Nexus 6P4 | 7.0 | tidak | tidak | tidak | tidak | GPS |
Nexus 5X4 | 7.0 | tidak | tidak | tidak | tidak | GPS |
Nexus 9 (versi non seluler)5 | 7.1 | tidak | ya | ya | tidak | GPS GLO |
1 Exynos, perangkat EMEA, Model: G960F atau G965F
2 Exynos, perangkat EMEA, Model: G950F atau G955F
3 QCOM, perangkat USA, Model: G950U atau G955U
4 Pengukuran mentah hanya diberikan jika posisi GPS tersedia.
5 Tidak ada siklus kerja. Hanya berfungsi pada versi non seluler Nexus 9.
Untuk informasi selengkapnya tentang data yang diberikan oleh perangkat, lihat Sistem Satelit Navigasi Global.
Logging pengukuran mentah
Anda dapat menggunakan Android Studio untuk mem-build aplikasi yang menangkap pengukuran GNSS mentah dan mencatatnya ke file. Project Fitur Pengukuran GPS mencakup GNSS Logger, contoh aplikasi yang menunjukkan cara mencatat data yang terkait dengan lokasi Android, termasuk pengukuran GNSS mentah.
Download APK GNSS Logger untuk menginstal aplikasi contoh di perangkat Anda.
Untuk mendapatkan output GNSS dengan aplikasi contoh, perangkat Anda harus mendukung pengukuran GNSS mentah. Untuk informasi selengkapnya, lihat perangkat Android yang mendukung pengukuran GNSS mentah.
Setelah menangkap log GNSS menggunakan GNSS Logger, Anda dapat menyalin file log dari perangkat ke komputer untuk analisis lebih lanjut. Dari dalam GNSS Logger, Anda dapat mengirim file ke diri sendiri melalui email atau menyimpannya ke Google Drive. Selain itu, Anda juga dapat menyimpan file menggunakan aplikasi pengelolaan file di perangkat, atau Anda dapat menggunakan Android Debug Bridge (ADB) seperti yang dijelaskan di Menyalin file ke/dari perangkat.
Untuk mencari kode sumber contoh, lihat folder GNSSLogger
dalam repositori Fitur Pengukuran GPS di GitHub.
Menganalisis pengukuran mentah
Aplikasi GNSS Analysis membaca pengukuran mentah GPS/GNSS yang dikumpulkan oleh GNSS Logger dan menggunakannya untuk menganalisis perilaku penerima GNSS, seperti yang ditunjukkan pada Gambar 1.
Anda dapat mendownload aplikasi untuk sistem Linux, Windows, dan macOS, atau mendownload Panduan Pengguna dan Penginstalan.
Gambar 1. GNSS Logger mengumpulkan pengukuran yang dapat digunakan oleh GNSS Analysis.
Aplikasi GNSS Analysis di-build di MATLAB, tetapi Anda tidak harus memiliki MATLAB untuk menjalankannya. Aplikasi ini dikompilasi menjadi file yang dapat dijalankan yang menginstal salinan MATLAB Runtime.
Panel Kontrol GNSS Analysis
Panel kontrol GNSS Analysis, seperti yang ditunjukkan dalam gambar 2, memungkinkan Anda mengelola fitur aplikasi, seperti:
- Memilih satelit mana yang akan ditampilkan.
- Mengontrol posisi referensi, kecepatan, dan waktu (PVT) yang digunakan untuk menghitung error pengukuran.
- Membuat laporan analisis.
- Menentukan rentang waktu dalam data antara waktu mulai dan waktu berakhir.
)
Gambar 2. Panel kontrol GNSS Analysis
Plot interaktif GNSS Analysis
Aplikasi GNSS Analysis menyediakan plot interaktif yang diatur dalam frekuensi radio (RF), jam, dan kolom pengukuran, seperti yang ditunjukkan pada gambar 3.
)
Gambar 3. Aplikasi GNSS Analysis yang menampilkan plot interaktif.
Kolom RF menunjukkan data berikut:
- Untuk setiap konstelasi, keempat satelit memiliki sinyal terkuat.
- Untuk setiap satelit, plot waktu operator terhadap kepadatan kebisingan (C/No).
- Skyplot posisi satelit.
Kolom jam menunjukkan data berikut:
- Pseudorange.
Frekuensi offset jam penerima, yang dihitung menggunakan salah satu posisi referensi berikut:
- Dihitung otomatis dari posisi rata-rata.
- Lintang, bujur, dan ketinggian yang dimasukkan oleh pengguna.
- File National Marine Electronics Association (NMEA) dengan referensi kebenaran PVT.
Offset dari jam siaga yang menjaga waktu saat receiver menyetel ulang siklus kerja osilator utama.
Kolom pengukuran menunjukkan data berikut:
- Hasil posisi persegi terkecil berbobot yang diperoleh dari pseudorange mentah. Pembobotan dilakukan menggunakan ketidakpastian yang dilaporkan dari setiap pengukuran, yang merupakan bagian dari spesifikasi API pengukuran mentah.
- Error setiap pseudorange untuk setiap pengukuran.
Error setiap rasio pseudorange untuk setiap pengukuran.
Laporan pengujian GNSS Analysis
GNSS Analysis dapat menghasilkan laporan pengujian, seperti yang ditunjukkan pada gambar 4, yang mengevaluasi penerapan API, sinyal yang diterima, perilaku jam, dan akurasi pengukuran. Untuk setiap kasus, aplikasi melaporkan apakah penerima lulus atau gagal dalam pengujian berdasarkan performa yang diukur terhadap tolok ukur umum. Laporan pengujian berguna bagi produsen perangkat, yang dapat menggunakannya saat melakukan iterasi terhadap desain dan penerapan perangkat baru. Untuk membuat laporan pengujian, klik Buat Laporan.
Gambar 4. Laporan pengujian GNSS Analysis
Tab Bandingkan memberikan perbandingan secara berdampingan, yang ditunjukkan pada Gambar 5, dari C/No dari beberapa file log GNSS, yang berguna saat membandingkan performa RF dari beberapa perangkat.
Gambar 5. Perbandingan data C/No secara berdampingan dari beberapa file log
Tertarik dengan kode sumber? Project Fitur Pengukuran GPS menyediakan contoh MATLAB open source yang dapat Anda gunakan untuk melakukan tindakan berikut dengan sinyal konstelasi GPS:
- Membaca data yang diambil dengan aplikasi contoh GNSS Logger.
- Menghitung dan memvisualisasikan pseudorange.
- Menghitung kecepatan dan posisi persegi terkecil berbobot.
- Melihat dan menganalisis fase operator.
Catatan rilis aplikasi GNSS Analysis v3.0.3.0
Aplikasi GNSS Analysis versi 3.0.3.0 berisi update berikut:
- Menambahkan Plot:
- Posisi Kalman Filter dari WLS PVT
- Posisi relatif WLS dari ADR (Fase Operator)
- Residu Selisih Tunggal ADR (Fase Operator)
- Menambahkan Posisi Refresh untuk meregenerasi plot posisi berdasarkan satelit yang dipilih.
- Menambahkan kontrol Elevation Mask.
- Mengoptimalkan download file ephemeris, menggunakan unzip asli di dalam runtime Matlab untuk semua file ZIP BKG *.gz.
- Menambahkan Posisi Perangkat sebagai opsi untuk PVT Referensi.
- Menambahkan kemampuan
CustomDataFilter.m
, yang memfilter salah satu nilai header # Mentah.
Memberikan masukan
Kami ingin meningkatkan dukungan untuk GNSS di Android. Beri tahu kami jika ada masalah dengan dukungan GNSS di Android menggunakan pelacak masalah GNSS. Harap periksa terlebih dahulu apakah masalah Anda telah ditangani dalam FAQ sebelum mempostingnya.
Jika Anda telah menggunakan fitur GNSS Analysis, harap berikan masukan dengan menjawab survei singkat. Jika Anda memiliki pertanyaan lain atau permintaan dukungan, lihat Referensi Dukungan Developer.
Anda dapat menemukan jawaban atas pertanyaan umum di FAQ Fitur GNSS Analysis.