1 poin oleh GN⁺ 2024-07-16 | 1 komentar | Bagikan ke WhatsApp

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

 
GN⁺ 2024-07-16
Komentar Hacker News
  • Android sudah menyediakan akses carrier phase, dan melalui ini posisi relatif antarperangkat di area yang sama dapat diukur dengan sangat presisi

    • Dengan menambahkan akselerometer dan giroskop, posisi dapat diukur secara real-time, dan karena perubahan pengukuran pseudorange GNSS bisa diprediksi, akurasinya tidak turun secara signifikan
    • Ini memungkinkan implementasi fitur menarik seperti mendaratkan pesawat model secara otomatis di bak truk
    • Jika konsumsi daya bukan hal yang terlalu penting, penerima GNSS yang cukup bagus bisa dibuat dengan murah
  • 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

    • Dengan merekam data mentah dan memprosesnya kemudian, konsumsi daya dan waktu paparan sinyal satelit bisa dikurangi secara besar-besaran (waktu paparan kurang dari 1 detik)
  • Langkah berikutnya adalah PPP atau RTK

    • GNSS adalah bidang yang menarik dengan berbagai kemungkinan
  • Ada implementasi open source bagus lainnya

  • Ada gambar yang menunjukkan dampak geometri pengguna-sumber terhadap ketidakpastian posisi pengguna

    • Saya berharap ada pengaturan di aplikasi peta ponsel yang bisa mengubah bentuk ketidakpastian posisi dari lingkaran menjadi bentuk perpotongan busur
  • Saya pernah mendengar bahwa GPS adalah salah satu dari sedikit aplikasi dalam kehidupan sehari-hari yang perlu mempertimbangkan efek relativitas

    • Data yang dihasilkan sudah mengecualikan efek relativitas tersebut
  • Soal latihan untuk penganut bumi datar: jelaskan bagaimana pemetaan GPS di ponsel bekerja jika satelit tidak mengorbit bumi yang bulat