Eşzamanlı Konumlandırma ve Haritalama (SLAM)

Giriş

Eşzamanlı Konumlandırma ve Haritalama (SLAM), robotların çevrelerini haritalarken aynı anda kendi konumlarını belirlemelerini sağlayan kritik bir tekniktir. SLAM, otonom navigasyon, robot süpürgeler, sürücüsüz araçlar ve insansız hava araçları (UAV) gibi birçok alanda yaygın olarak kullanılmaktadır.

Bu makalede, bilinmeyen ortamlarda konumlandırma, haritalama ve navigasyon, temel SLAM algoritmaları ve GMapping, Hector SLAM gibi popüler SLAM kütüphanelerinin uygulama alanları ele alınacaktır.

SLAM’in Temelleri

SLAM, iki bağımlı problemi aynı anda çözer:

  1. Konumlandırma (Localization): Robotun çevresine göre konumunun belirlenmesi.
  2. Haritalama (Mapping): Sensör verilerine dayanarak çevrenin haritasının oluşturulması.

SLAM, sensör gürültüsü ve belirsizlikleri yönetmek için olasılıksal algoritmalar kullanarak doğru konumlandırma ve haritalama sağlar.

SLAM’in Matematiksel Modeli

SLAM problemi, durum uzayı temsili kullanılarak modellenir. Robotun $k$ zamanındaki durumu şu şekilde ifade edilir:

Xk=f(Xk−1,uk)+wkX_k = f(X_{k-1}, u_k) + w_k

Burada:

  • $X_k$ = Robotun durumu (konum, yönelim).
  • $u_k$ = Kontrol girdisi (hız, dönüş açısı).
  • $w_k$ = Belirsizlikten kaynaklanan hata payı.

Sensör ölçümleri şu formülde ifade edilir:

Zk=h(Xk,M)+vkZ_k = h(X_k, M) + v_k

Burada:

  • $Z_k$ = Sensör ölçümü (örn. LiDAR taraması).
  • $M$ = Ortamın haritası.
  • $v_k$ = Sensör ölçüm gürültüsü.

SLAM Algoritmaları ve Teknikleri

SLAM problemini çözmek için farklı algoritmalar geliştirilmiştir. Bu algoritmalar, hesaplama karmaşıklığı, doğruluk ve gerçek zamanlı performans açısından dengelenmiştir.

Genişletilmiş Kalman Filtresi (EKF-SLAM)

EKF-SLAM, robotun konumunu ve haritadaki işaret noktalarını (landmarks) olasılıksal bir Gauss dağılımı ile temsil eden bir yöntemdir.

Durum Güncelleme Denklemi:
Xk=Xk−1+Guk+wkX_k = X_{k-1} + G u_k + w_k

Burada, $G$ hareket modeli Jacobian matrisidir.

Kovaryans Güncelleme Denklemi:
Pk=FPk−1FT+QkP_k = F P_{k-1} F^T + Q_k

Burada, $P_k$ hata kovaryans matrisi ve $Q_k$ süreç gürültü kovaryansı temsil eder.

Avantajı: Küçük ölçekli haritalar için uygundur.
Dezavantajı: Büyük ölçekli haritalarda hesaplama maliyetleri yüksektir.

Parçacık Filtreli SLAM (FastSLAM)

FastSLAM, robotun konumunu parçacıklar (particles) ile temsil eden bir yöntemdir.

Hareket Modeli:
Xki=Xk−1i+uk+wkX_k^i = X_{k-1}^i + u_k + w_k

Burada $X_k^i$, $i$. parçacığın durumunu temsil eder.

Her parçacığın önem ağırlığı şu formülde güncellenir:

wki=wk−1iP(Zk∣Xki,M)w_k^i = w_{k-1}^i P(Z_k | X_k^i, M)

Avantajı: Büyük ölçekli haritalar ve karmaşık hareketler için uygundur.
Dezavantajı: Yüksek hesaplama maliyeti gerektirir.

Grafik Tabanlı SLAM (Graph-SLAM)

Bu yöntem, robotun pozisyonlarını ve haritadaki işaret noktalarını bir grafik olarak temsil eder. Hedef, grafikteki düğümler arasındaki hataları minimize etmektir.

Optimizasyon Fonksiyonu:
E(X)=∑i,j∣f(Xi,Xj)−Zij∣2E(X) = \sum_{i,j} \left| f(X_i, X_j) – Z_{ij} \right|^2

Burada:

  • $E(X)$ = Hata fonksiyonu.
  • $Z_{ij}$ = Ölçülen dönüşüm.
  • $f(X_i, X_j)$ = Tahmin edilen dönüşüm.

Avantajı: Döngü kapama (loop closure) algılama için uygundur.
Dezavantajı: Gerçek zamanlı uygulamalar için optimize edilmesi zordur.

SLAM İçin Sensör Teknolojileri

LiDAR Tabanlı SLAM

Lazer tarayıcılar kullanarak yüksek hassasiyetli 2D veya 3D haritalar oluşturur.
🚗 Sürücüsüz araçlarda (Tesla, Waymo) yaygın olarak kullanılır.

Görsel SLAM (V-SLAM)

📸 Kameralar (monoküler, stereo, RGB-D) ile çevreyi yeniden oluşturur.
🎮 AR (Artırılmış Gerçeklik) ve UAV navigasyonunda yaygın kullanılır.

IMU Tabanlı SLAM

🔄 İvmeölçerler (IMU) ile hareket tahmini yapar.
🔗 LiDAR veya Görsel SLAM ile birleştirilerek daha hassas sonuçlar elde edilir.

Popüler SLAM Kütüphaneleri

GMapping (Grid Mapping SLAM)

🛠 Parçacık filtresi (FastSLAM) kullanarak 2D haritalama yapar.
🤖 ROS (Robot Operating System) ile uyumludur.
🔧 Mobil robotlar için uygundur.

🔹 ROS Komut:

rosrun gmapping slam_gmapping scan:=base_scan

Hector SLAM

🚀 LiDAR tabanlı yüksek çözünürlüklü haritalama yapar.
📌 Odometri gerektirmez, dronlar için uygundur.

🔹 ROS Komut:

roslaunch hector_slam hector_mapping.launch

ORB-SLAM (Feature-Based Visual SLAM)

🎥 ORB (Oriented FAST and Rotated BRIEF) algoritmasını kullanır.
🏠 Kapalı alan robot navigasyonu ve AR için idealdir.

🔹 ROS Komut:

rosrun ORB_SLAM3 Mono

SLAM Uygulamaları

Otonom Araçlar: Gerçek zamanlı haritalama ve çarpışma önleme.
Endüstriyel Robotlar: Depolama ve lojistik yönetimi.
Dron Navigasyonu: GPS olmayan ortamlarda konumlandırma.
AR/VR Sistemleri: Sanal ortamda konum izleme.

SLAM’de Karşılaşılan Zorluklar

⚠️ Sensör Gürültüsü: Yanlış ölçümler hata yaratabilir.
⚠️ Döngü Kapama Algılama: Büyük ölçekli haritalarda doğruluk gerektirir.
⚠️ Gerçek Zamanlı İşleme: SLAM algoritmaları yüksek işlem gücü gerektirir.

Yorum ve puanlarınızla Gebra ekibinin kaliteyi artırmasına yardımcı olun

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Alışveriş Sepeti
Scroll to Top