Menghitung Posisi Menggunakan Data GPS Mentah
Pentingnya sistem GPS
- GPS adalah Global Positioning System dan digunakan dalam berbagai aplikasi, mulai dari navigasi di Google Maps hingga aplikasi pemesanan kendaraan
- GPS sangat akurat sehingga juga digunakan untuk mengukur tektonik lempeng dan pergeseran benua
- GPS dimiliki oleh pemerintah Amerika Serikat, dan akses untuk negara lain dapat dibatasi karena alasan geopolitik
- Karena itu, sistem serupa GPS dari negara lain juga dikembangkan, seperti GLONASS milik Rusia, Galileo milik Uni Eropa, dan BeiDou milik Tiongkok
Sistem koordinat
- Berbagai sistem koordinat digunakan untuk merepresentasikan lokasi
- Lintang/bujur yang umum dipakai tidak cocok untuk perhitungan matematis
- Sistem koordinat ECEF (Earth Centered, Earth Fixed) merepresentasikan lokasi dengan pusat bumi sebagai titik asal
- Sistem WGS 1984 adalah sistem koordinat ECEF yang paling umum digunakan
Definisi ketinggian
- Saat mendefinisikan ketinggian, perlu ditentukan permukaan acuan yang menjadi referensinya
- Model ellipsoid referensi dan geoid digunakan untuk tujuan ini
- Ellipsoid referensi tidak memiliki makna fisik, sedangkan geoid didefinisikan sebagai himpunan titik-titik dengan potensial gravitasi yang sama
Lintang dan bujur
- Lintang geodetik adalah sudut antara garis tegak lurus pada permukaan ellipsoid dan bidang ekuator
- Bujur geodetik adalah sudut antara meridian acuan dan meridian tertentu
- Tinggi geodetik adalah ketinggian yang diukur terhadap ellipsoid
Konversi antara koordinat geodetik dan koordinat Kartesius
- Mengonversi koordinat geodetik ke koordinat Kartesius relatif sederhana
- Mengonversi koordinat Kartesius ke koordinat geodetik memerlukan prosedur iteratif
Sistem koordinat lokal
- Sistem koordinat lokal adalah sistem ENU (East-North-Up) yang berpusat pada posisi pengguna
- Ada metode untuk mengonversi koordinat ECEF ke koordinat ENU
Menghitung posisi pengguna menggunakan GPS
Menentukan posisi satelit
- Orbit satelit berbentuk elips dan sepenuhnya ditentukan oleh 6 parameter Kepler
- Posisi satelit dihitung sesuai dokumen spesifikasi antarmuka GPS
Menghitung jarak antara pengguna dan satelit
- Penerima GPS menggunakan timestamp sinyal satelit untuk menghitung jarak ke satelit
- Jarak ini disebut pseudorange
- Untuk menghitung posisi secara akurat, perlu dimodelkan offset jam pengguna dan satelit serta delay atmosfer
Estimasi offset jam pengguna
- Offset jam pengguna diestimasi bersama dengan posisi pengguna
Algoritme estimasi posisi pengguna dan offset jam
- Posisi awal pengguna dan offset jam ditetapkan lalu diperbaiki secara iteratif
- Untuk setiap satelit, pseudorange dikoreksi, waktu transmisi sinyal dihitung, lalu posisi satelit dihitung
- Teknik aljabar linear digunakan untuk mencari solusi least squares
Hal yang perlu diperhatikan pada kode Matlab
- Beberapa persamaan memerlukan pemanggilan solver
- Contohnya, menghitung anomali eksentrik (E) dari anomali rata-rata (M) memerlukan solver
Pengaturan eksperimen
- Dibutuhkan unit GPS khusus untuk mengumpulkan data GPS mentah
- Chip NEO-M8T dan 6T dari u-blox cocok untuk tujuan ini
- Utilitas STRSVR dari RTKLib digunakan untuk menerima dan menyimpan sinyal GPS mentah
Pemrosesan data GPS mentah
- STRSVR menyimpan data GPS mentah dalam format RTCM3
- Library Matlab goGPS digunakan untuk mendekode data RTCM dan mengubahnya menjadi struktur data Matlab
Analisis hasil
- Perubahan posisi dan offset jam dianalisis
- Variasi komponen posisi timur/barat-utara/atas (E/N/U) dianalisis
- Variasi offset jam dianalisis terhadap waktu
Menghitung azimut/elevasi satelit
- Azimut dan elevasi satelit dihitung dalam frame ENU yang berpusat pada pengguna
Ringkasan GN⁺
- Artikel ini menjelaskan prinsip kerja sistem GPS dan cara menghitung posisi
- Berbagai metode koreksi digunakan untuk meningkatkan akurasi data GPS
- Artikel ini menunjukkan cara memproses dan menganalisis data nyata melalui kode Matlab
- Bermanfaat untuk memahami infrastruktur teknis sistem GPS
- Proyek dengan fungsi serupa antara lain RTKLib dan goGPS
1 komentar
Komentar Hacker News
Android sudah menyediakan akses carrier phase, dan melalui ini posisi relatif antarperangkat di area yang sama dapat diukur dengan sangat presisi
Ada proyek open source untuk orang-orang yang ingin membuat penerima GPS sendiri
Ini adalah tautan yang sering muncul di komentar terkait GPS, tetapi ada alasan bagus untuk itu
Ada juga tautan alternatif yang memberikan penjelasan yang lebih interaktif
Saya pernah bertemu seorang peneliti yang mengumpulkan data GPS makhluk akuatik yang hanya sesekali muncul sebentar ke permukaan
Langkah berikutnya adalah PPP atau RTK
Ada implementasi open source bagus lainnya
Ada gambar yang menunjukkan dampak geometri pengguna-sumber terhadap ketidakpastian posisi pengguna
Saya pernah mendengar bahwa GPS adalah salah satu dari sedikit aplikasi dalam kehidupan sehari-hari yang perlu mempertimbangkan efek relativitas
Soal latihan untuk penganut bumi datar: jelaskan bagaimana pemetaan GPS di ponsel bekerja jika satelit tidak mengorbit bumi yang bulat