Uuv_simulator: Pohon Multi Robot TF rusak

Dibuat pada 24 Mei 2020  ·  10Komentar  ·  Sumber: uuvsimulator/uuv_simulator

Hai, Saya sangat menyadari bahwa Simulator UUV mampu mensimulasikan banyak robot (salah satu poin kuatnya). Namun, saya tidak bisa mendapatkan pohon TF dari sistem multi robot untuk tetap terhubung dengan bingkai TF induk tunggal yang sama world .

Saat menjalankan roslaunch uuv_gazebo_worlds ocean_waves.launch , hanya world dan world_ned yang diterbitkan.

image

Selanjutnya, jika saya mengunggah auv4 URDF kustom saya, saya mendapatkan pohon TF yang terhubung dari world ke auv4/base_link .

image

Sejauh ini semua baik. Demikian pula, jika saya me-restart simulator dan menjalankan roslaunch uuv_gazebo_worlds ocean_waves.launch lagi, tetapi kali ini mengupload kendaraan auv3 saya, saya mendapatkan pohon TF yang terhubung dari world ke auv3/base_link .

image

Sejauh ini semua baik. Namun, jika saya mencoba menjalankan roslaunch uuv_gazebo_worlds ocean_waves.launch dan kemudian mengunggah kedua urdf secara bersamaan melalui file upload.launch yang terpisah (templat mengikuti upload_rexrov.launch), saya mendapatkan pohon TF yang terputus, dengan kendaraan kedua yang diluncurkan biasanya terputus dari pohon TF. Dalam hal ini, auv3 diunggah terlebih dahulu diikuti oleh auv4, hanya menghasilkan world terhubung ke auv3/base_link tetapi terputus dari auv4/base_link .

image

Hal serupa terjadi jika saya membalik urutan unggahan (auv4 terlebih dahulu kemudian auv3), kemudian world terhubung ke auv4/base_link tetapi tidak auv3/base_link .

Saya mungkin melakukan sesuatu yang salah karena # 396 mencakup masalah yang sama tetapi entah bagaimana Poster Asli (OP) berhasil menyelesaikan masalah sendiri. Bisakah seseorang memandu tentang bagaimana masalah ini dapat diselesaikan untuk memungkinkan pohon TF yang terhubung sepenuhnya? Saat ini saya memahami bahwa file message_to_tf.launch membantu mengonversi nav_msgs::Odometry menjadi ROS TF transforms. Bantuan apa pun dihargai. Terima kasih!

question problem

Semua 10 komentar

Hai @HashirZahir Saya belum punya waktu, tetapi saya akan mencoba mereproduksi kesalahan Anda dan mencari solusi

@HashirZahir Saya juga tertarik dengan masalah yang sama. Saya mencoba meluncurkan 3 kendaraan Eca_a9 secara bersamaan dengan cara yang sama setelah menjalankan _roslaunch uuv_gazebo_worlds ocean_waves.launch_. Saya bisa mendapatkan paling banyak dua kendaraan Eca_a9 bekerja sekaligus -- Apakah Anda memiliki kemajuan lebih lanjut tentang masalah ini?

Bisakah Anda membagikan langkah-langkah untuk mereplikasi agar 2 kendaraan Eca_a9 berjalan bersama (dan pohon TF masing-masing?) Dalam kasus saya, saya dapat menelurkan kedua kendaraan dalam simulasi tetapi pohon TF rusak / terputus, sehingga lebih sulit untuk dilakukan perhitungan/algoritma multi-auv

Ada yang beruntung @pxalcantara ?

Maaf @HashirZahir , tapi belum, saya sangat sibuk tetapi saya akan mencoba memeriksanya minggu ini.

Bisakah Anda membagikan langkah-langkah untuk mereplikasi agar 2 kendaraan Eca_a9 berjalan bersama (dan pohon TF masing-masing?) Dalam kasus saya, saya dapat menelurkan kedua kendaraan dalam simulasi tetapi pohon TF rusak / terputus, sehingga lebih sulit untuk dilakukan perhitungan/algoritma multi-auv

Maaf untuk respon yang lambat. Saya memiliki file peluncuran untuk meluncurkan 3 (atau lebih) Eca UUV di bawah ruang nama yang berbeda menggunakan upload.launch. Saya menggunakan file peluncuran lain untuk meluncurkan pengontrol pelacakan geometrik untuk masing-masing dari 3 kendaraan. Tanpa mengetahui alasannya, ini umumnya berfungsi untuk 2/3 UUV, dengan yang ke-3 tidak responsif dan rusak (seperti yang telah Anda jelaskan) ... Jadi saya dapat mengontrol, mengirim titik arah, menggemakan semua topik untuk 2 UUV. Perhatikan bahwa ini tidak selalu konsisten dan terkadang hanya satu UUV yang muncul dengan benar. Sayangnya saya tidak memiliki wawasan lagi tentang masalah ini.

Adakah yang berhasil mendapatkan wawasan tentang masalah ini? Kemampuan multi-Robot dari simulator ini luar biasa tetapi saya merasa beberapa skrip pohon TF sederhana menyebabkan pohon TF rusak, meskipun saya belum dapat menemukan sumber masalahnya.

@HashirZahir
Saya mengalami masalah yang sama dengan @Joel-Lindsay dengan tautan rusak dengan eca_a9s. Saya memperbaikinya dengan mengedit file /eca_a9/eca_a9_description/robots/eca_a9_default.urdf.xacro.

inersia_reference_frame="$(arg inersia_reference_frame)"
diubah menjadi:
inersia_reference_frame="dunia"

Ini memperbaiki pohon tf saya yang juga terputus.

Hai, @ErinWetter ,

Ini adalah bagian atas pohon tf dengan 4 eca_a9 yang berfungsi:

Four_Eca_short

Turun ke hanya dua kendaraan kita dapat melihat tautan pangkalan:

two_eca_short

Saya belum tahu mengapa tautan bingkai antara penyiar: ground_truth_to_uuv# dan /uu#/robot_state_publisher tidak terhubung sebelum melakukan hardcoding penerbit status robot agar cocok, tetapi saya tidak terbiasa dengan proses pembuatan model robot xacro/urdf.

Saya telah menjalankan beberapa tes pada satu kendaraan yang membandingkan urutan peluncuran node penyiaran pada Eca dan RexRov (yang tidak memiliki masalah pohon tf yang rusak dan saya telah menggunakan untuk simulasi multi-kendaraan). Untuk satu Eca_a9, pohon tf akan terputus di /base_link jika saya memulai /ground_truth_to_uuv# node di terminal daripada di dalam file "upload_eca_a9.launch". Saat melakukan hal yang sama dengan RexRov /base_link terhubung dengan semua kondisi peluncuran.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

dbcesar picture dbcesar  ·  5Komentar

Timple picture Timple  ·  7Komentar

Timple picture Timple  ·  24Komentar

musamarcusso picture musamarcusso  ·  12Komentar

bst picture bst  ·  33Komentar