$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
1. Yazılım ortamı kurulumu
Ubuntu 20.04 ve Robot İşletim Sistemi (ROS) Noetic üzerinde çalışan Linux tabanlı bir iş istasyonu, su altı kendi kendine yerelleştirme sistemlerini17 uygulamak için birincil geliştirme platformu olarak kullanıldı. Sistem, mkdir -p ~/catkin_ws/src ile bir catkin çalışma alanı oluşturularak ve ardından catkin_init_workspace ile başlatarak başlatıldı. uuv_simulator ve aruco_ros paketleri kaynak dizine klonlandı ve catkin_make komutu kullanılarak su altı müdahale modellemesini desteklemek için derlendi.
ROS ara yazılımı ile Gazebo 9 simülatörü arasındaki bağlantı, varsayılan bir su altı dünyası fırlatılması ve rostop list komutu üzerinden aktif iletişimin doğrulanmasıyla doğrulandı. Görüntü işleme ve poz tahmin düğümleri, Python 3.8 kullanılarak uygulandı ve OpenCV kullanılarak göreceli poz hesaplamak için entegre ArUco kütüphaneleri kullanıldı. ROS ortamı, bağımlılıkları yönetmek ve gerçek zamanlı veri iletişimini mümkün kılmak üzere yapılandırıldı; böylece robot kendini birden fazla yapay işaretleyiciye görekonumlandırabildi 18. Bu kurulum, farklı koşullarda işaretleyici algılama performansının değerlendirilmesini de mümkün kıldı. Şekil 1, ROS–Gazebo ortamındaki simülasyon, algı ve görselleştirme düğümleri arasındaki iletişimi göstermektedir.
2. UUV modeli ve hidrodinamik parametreleştirme
RexRov2 araç modeli, uuv_descriptions paketinden alındı ve Gazebo'da Birleşik Robot Tanımlama Formatı (URDF)dosyası 5 kullanılarak fırlatıldı. Araç modeli, 1.863 kg kuru kütlesine ve 1.838m3 hacim deplasmanına sahip bağlantı ve eklemlerden oluşuyordu; bu da 1.000 kg/m yoğunluğunda neredeyse nötr yüzme gücüne karşılıkgeliyordu.
Hidrodinamik etkiler, doğrusal ve kuadratik sönümleme kuvvetleri dahil olmak üzere, uuv_underwater_object_plugin kullanılarak modellendi. Eklenen kütle dalgalanma katsayısı 779.79 olarak ayarlandı ve sönümleme parametreleri bildirilen RexRov2 özelliklerine göre kalibre edildi; böylece gerçekçi araçhareketi 19 simüle edildi. Şekil 2 , genel simülasyon mimarisini göstermektedir.

Şekil 2: Simülasyon ortamının genel mimarisi. Şekil, UUV modeli, sensör girişleri, algı boru hattı ve poz tahmini ile navigasyon için kullanılan kontrol modüllerinin entegrasyonunu göstermektedir. Bu figürün daha büyük bir versiyonunu görmek için lütfen buraya tıklayın.
3. Kamera, işaretleyici ve çevresel kurulum
Rexrov2/camera_link çerçevesine monoküler bir kamera takılmıştı. Kamera parametreleri 1280 × 720 piksel ve 30 Hz olarak ayarlandı. İçsel parametreler, kamera yapılandırma dosyasında odak uzaklığı 554,25 piksel ve ana nokta (640,5, 360,5) olarak tanımlandı.
6×6_250 sözlüğünden (ID: 582) seçilen, yan uzunluğu 0,5 m olan sabit dikey ArUco işaretçisi koordinatlarda (20,0, 0,0, -10,0) konumlandırıldı. Simüle edilen ortam, /uuv_simulation_app/set_current_velocity ROS servisi kullanılarak X yönünde 10 m su derinliği ve 0,1 m/s sabit akım hızı ile yapılandırıldı. Işaret görünürlüğünü sağlamak için 0.8 ışıkyoğunluğu kullanıldı 9. Şekil 3 , simüle edilmiş su altı ortamını göstermektedir.

Şekil 3: Gazebo 9'da su altı ortamı simüle edilmiştir. Çevre, RexRov2 UUV, sanal ArUco işaretleyicileri ve su derinliği, aydınlatma ve akım gibi kontrollü çevresel koşulları içerir. Bu figürün daha büyük bir versiyonunu görmek için lütfen buraya tıklayın.
4. Poz tahmini ve navigasyon kontrolü
Marker tespit boru hattı, /rexrov2/forward_camera/image_raw konusuna abone olan ArUco ROS düğümü kullanılarak başlatıldı. Aracın duruşu, bilinen 3D işaretleyici geometrisine göre dönme matrisi (R) ve dönüşüm vektörü (t) hesaplamak için Perspektif ve Nokta (PnP) yöntemiyle tahmin edilmiştir.
Tahmini poz, statik dönüşüm yayıncısı kullanılarak kamera çerçevesinden küresel referans çerçevesine dönüştürüldü. Araç hareketini düzenlemek için bir PID kontrolcüsü, /rexrov2/thruster_manager/input konusuna hız komutları göndererek kullanıldı. Dalga ve kalkış eksenleri için orantılı kazançlar (Kp) sırasıyla 1500 ve 2000 olarak ayarlandı; böylece istikrarlı takip performansısağlandı 20.
5. Değerlendirme ve yer-gerçek karşılaştırması
Görme temelli poz tahminleri ile simüle edilen yörünge arasındaki uyum, uuv_gazebo_ros_p3d eklentisi tarafından sağlanan /rexrov2/pose_gt konusu kullanılarak değerlendirildi. ArUco tabanlı boru hattından alınan tahmini poz, sistem kararlılığı ve tutarlılığı değerlendirilmek için yer-doğruluk odometri verileriyle karşılaştırıldı.
Değerlendirme, yörünge karşılaştırması ve gerçek zamanlı görselleştirme yoluyla gerçekleştirildi; pozisyon (X, Y, Z) ve yönelim (yuvarlanma, pitch, yaw) Rviz ve rqt_plot kullanılarak izlendi. Bu, hem nominal hem de bozulma kaynaklı koşullarda sapmaların gözlemlenmesini mümkün kıldı.
Çalışma, nitel ve karşılaştırmalı değerlendirmeye odaklanmaktadır. Kök Ortalama Kare Hatası (RMSE) kullanılarak nicel değerlendirme, konum ve yön hatalarının değerlendirileceği çoklu simülasyon çalışmaları olarak belirlenmiştir.
6. Sonuç üretimi ve görselleştirme
Rviz, UUV yörüngesini ve tutumunu izlemek için 3D görselleştirme aracı olarak kullanıldı. /rexrov2/camera_link ve /aruco_marker_frame koordinat çerçeveleri, araç ileişaretçi 2 arasındaki mekansal ilişkiyi değerlendirmek için görselleştirildi.
rqt_plot aracı, /rexrov2/pose_gt ve /aruco_pose konularını kullanarak araç tutumunun (yuvarlanma, eğim, yav) gerçek zamanlı grafiklerini oluşturmak için kullanıldı. Rosbag kayıt komutu, nitel analiz için video akışları ve kontrol girdileri dahil olmak üzere simülasyon verilerini yakalamak için kullanıldı.
Simülasyon, iyi bir aydınlatma ve düşük bulanıklık varsayımıyla ideal görsel koşullarda gerçekleştirildi. ArUco işaretinin ise engellersiz kalacağı varsayıldı. Hidrodinamik sönümleme etkileri basitleştirilmiş katsayılarla modellendi ve sensör gürültüsü dahil edilmedi.