1 puan yazan GN⁺ 2024-07-16 | 1 yorum | WhatsApp'ta paylaş

Ham GPS Verileri Kullanılarak Konum Hesaplama

GPS sisteminin önemi

  • GPS, Küresel Konumlama Sistemi'dir ve Google Haritalar'da rota bulmadan araç çağırma uygulamalarına kadar çeşitli uygulamalarda kullanılır
  • GPS son derece hassastır; levha tektoniğini ve kıtaların hareketini ölçmek için bile kullanılır
  • GPS, ABD hükümetine aittir ve jeopolitik nedenlerle diğer ülkelerin erişimi sınırlandırılabilir
  • Bu nedenle Rusya'nın GLONASS'ı, Avrupa Birliği'nin Galileo'su ve Çin'in BeiDou'su gibi diğer ülkelerin GPS benzeri sistemleri geliştirilmiştir

Koordinat sistemleri

  • Konumu ifade etmek için çeşitli koordinat sistemleri kullanılır
  • Yaygın olarak kullanılan enlem/boylam, matematiksel hesaplamalar için uygun değildir
  • ECEF (Earth Centered, Earth Fixed) koordinat sistemi, Dünya'nın merkezini başlangıç noktası alarak konumu ifade eder
  • WGS 1984 sistemi, en yaygın kullanılan ECEF koordinat sistemidir

Yükseklik tanımı

  • Yüksekliği tanımlarken referans alınacak yüzeyin belirlenmesi gerekir
  • Referans elipsoidi ve jeoit modeli kullanılır
  • Referans elipsoidi fiziksel bir anlama sahip değildir; jeoit ise aynı yerçekimi potansiyeline sahip noktaların kümesi olarak tanımlanır

Enlem ve boylam

  • Jeodezik enlem, elipsoid yüzeyindeki dikey çizgi ile ekvator düzlemi arasındaki açıdır
  • Jeodezik boylam, başlangıç meridyeni ile belirli bir meridyen arasındaki açıdır
  • Jeodezik yükseklik, elipsoid üzerinden ölçülen yüksekliktir

Jeodezik koordinatlar ile Kartezyen koordinatlar arasında dönüşüm

  • Jeodezik koordinatları Kartezyen koordinatlara dönüştürmek basittir
  • Kartezyen koordinatları jeodezik koordinatlara dönüştürmek ise yinelemeli bir prosedür gerektirir

Yerel koordinat sistemi

  • Yerel koordinat sistemi, kullanıcının konumunu merkez alan ENU (East-North-Up) sistemidir
  • ECEF koordinatlarını ENU koordinatlarına dönüştürmenin bir yöntemi vardır

GPS ile kullanıcı konumunun hesaplanması

Uydu konumunun belirlenmesi

  • Uydunun yörüngesi eliptiktir ve 6 Kepler parametresiyle tamamen tanımlanır
  • Uydunun konumu, GPS arayüz spesifikasyonu belgesine göre hesaplanır

Kullanıcı ile uydu arasındaki mesafenin hesaplanması

  • GPS alıcısı, uydu sinyalinin zaman damgasını kullanarak uyduya olan mesafeyi hesaplar
  • Bu mesafeye sözde mesafe (pseudorange) denir
  • Doğru konumu hesaplamak için kullanıcı ve uydu saat ofsetleri ile atmosferik gecikmeler modellenmelidir

Kullanıcı saat ofsetinin tahmini

  • Kullanıcı saat ofseti, kullanıcı konumuyla birlikte tahmin edilir

Kullanıcı konumu ve saat ofsetini tahmin etme algoritması

  • Başlangıç kullanıcı konumu ve saat ofseti belirlenir, ardından bunlar yinelemeli olarak düzeltilir
  • Her uydu için sözde mesafe düzeltilir, sinyal iletim zamanı hesaplanır ve uydu konumu hesaplanır
  • En küçük kareler çözümünü bulmak için lineer cebir teknikleri kullanılır

Matlab kodu hakkında notlar

  • Bazı denklemler için çözücü çağrılması gerekir
  • Örneğin ortalama anomaliden (M) dışmerkez anomalinin (E) hesaplanması bir çözücü gerektirir

Deney düzeni

  • Ham GPS verilerini toplamak için özel bir GPS birimi gerekir
  • u-blox'un NEO-M8T ve 6T çipleri uygundur
  • Ham GPS sinyalini almak ve kaydetmek için RTKLib'in STRSVR yardımcı programı kullanılır

Ham GPS verisinin işlenmesi

  • STRSVR, ham GPS verisini RTCM3 formatında kaydeder
  • RTCM verisini çözmek ve Matlab veri yapısına dönüştürmek için Matlab kütüphanesi goGPS kullanılır

Sonuç analizi

  • Konum ve saat ofsetindeki değişimler analiz edilir
  • Konumun doğu/kuzey/yukarı (E/N/U) bileşenlerindeki değişimler analiz edilir
  • Saat ofsetindeki değişimler zamana göre analiz edilir

Uydu azimut/yükseklik hesaplaması

  • Kullanıcı merkezli ENU çerçevesinde uydu azimutu ve yüksekliği hesaplanır

GN⁺ özeti

  • Bu yazı, GPS sisteminin çalışma prensibini ve konum hesaplama yöntemini açıklar
  • GPS verilerinin doğruluğunu artırmak için çeşitli düzeltme yöntemleri kullanılır
  • Matlab kodu aracılığıyla gerçek verilerin nasıl işlenip analiz edileceğini gösterir
  • GPS sisteminin teknik altyapısını anlamak için faydalıdır
  • Benzer işlevlere sahip projeler arasında RTKLib ve goGPS bulunur

1 yorum

 
GN⁺ 2024-07-16
Hacker News görüşleri
  • Android zaten taşıyıcı faz erişimi sunuyor ve bu sayede aynı bölgedeki cihazlar arasında göreli konum çok hassas biçimde ölçülebiliyor

    • İvmeölçer ve jiroskop da eklenirse, konum gerçek zamanlı olarak ölçülebilir ve GNSS sözde mesafe ölçümlerindeki değişimler öngörülebilir olduğundan doğruluk büyük ölçüde düşmez
    • Bu sayede model bir uçağı bir kamyon kasasına otomatik indirmek gibi ilginç özellikler uygulanabilir
    • Güç tüketimi çok önemli değilse, oldukça iyi bir GNSS alıcısı ucuza yapılabilir
  • Kendi GPS alıcısını yapmak isteyenler için bir açık kaynak proje var

  • GPS ile ilgili yorumlarda sıkça paylaşılan bir bağlantı, ama bunun iyi bir nedeni var

  • Daha etkileşimli bir açıklama sunan alternatif bir bağlantı da var

  • Nadiren kısa süreliğine su yüzeyine çıkan sucul canlıların GPS verilerini toplayan bir araştırmacıyla tanışmıştım

    • Ham veriyi kaydedip sonradan işleyerek güç tüketimi ve uydu sinyaline maruz kalma süresi ciddi biçimde azaltılabiliyor (maruz kalma süresi 1 saniyenin altında)
  • Bir sonraki adım PPP veya RTK

    • GNSS, çeşitli olanaklar sunan ilgi çekici bir alan
  • Bir başka iyi açık kaynak uygulama da var

  • Kullanıcı-kaynak geometrisinin, kullanıcının konumundaki belirsizliği nasıl etkilediğini gösteren bir görsel var

    • Telefonda harita uygulamalarındaki konum belirsizliğinin şeklinin daireden yay kesişimi biçimine değiştirilebildiği bir ayar olmasını isterdim
  • GPS'in, günlük hayatta görecelik etkilerinin hesaba katılması gereken az sayıdaki uygulamadan biri olduğunu duymuştum

    • Üretilen veriler zaten bu görecelik etkileri çıkarılmış durumda
  • Düz Dünya taraftarları için alıştırma sorusu: Eğer uydular küresel bir Dünya'nın yörüngesinde dönmüyorsa, telefonunuzdaki GPS haritalamanın nasıl çalıştığını açıklayın