Uuv_simulator: <neutrally_buoyant>tag tidak melakukan apa-apa.</neutrally_buoyant>

Dibuat pada 14 Jul 2017  ·  23Komentar  ·  Sumber: uuvsimulator/uuv_simulator

Halo,

Saya mencoba menerapkan kendaraan di UUV Sim, dan saya mencoba membuat kendaraan saya mengapung, dan saya bahkan menetapkan tag <neutrally_buoyant>1</neutrally_buoyant> seperti yang ditunjukkan, tetapi kendaraan saya terus tenggelam begitu diunggah. Adakah saran yang bisa Anda berikan untuk membantu kendaraan ini mengapung secara netral atau bahkan apung positif?

bug

Semua 23 komentar

Hai,

terima kasih telah melaporkan, saya akan memeriksanya. Sementara itu, Anda dapat membuat kendaraan Anda apung positif jika Anda menyetel bendera neutrally_buoyant ke nol dan mengatur volume sebagai gantinya, seperti pada model rexrov https://github.com/uuvsimulator/uuv_simulator/ blob/master/uuv_descriptions/models/rexrov/urdf/rexrov.gazebo.xacro#L32.
Volume tersebut kemudian digunakan untuk menghitung vektor gaya apung.

Halo,

Saya mencoba mengatur volume menjadi cukup besar. Tidak sebesar rexrov , dan masih tenggelam. Saya akan mencobanya dan kembali kepada Anda, tetapi saya mencoba untuk menaikkan volume saya dan menurunkan massa saya untuk memaksanya mengapung. Saya akan kembali kepada Anda dengan hasil dalam satu detik.

Jadi saya mengatur volume saya ke 3.1093918 m3 dan massa saya ke 0.123497 , dan kendaraan saya masih tenggelam. Saya mungkin mencoba mengaturnya persis seperti yang Anda setel rexrov untuk volumenya, dan bahkan menyetel tag <box> ke apa yang dimiliki rexrov serta model hidrodinamiknya . Jadi saya tidak tahu di mana harus memeriksa masalah.

Apakah Anda menetapkan <neutrally_buoyant>0</neutrally_buoyant> ?

@musamarcusso saya mencoba mengatur <neutrally_buoyant> ke 0 dan 1 . Tidak ada perubahan nyata.

Hai @atomoclast , apakah ini kendaraan yang ingin Anda modelkan?

http://www.videoray.com/images/specsheets/2016/2016_P4STANDARDBASE_FINAL.pdf

Saya akan mencoba mengganti parameter ini di sini untuk mereproduksi ini.

@musamarcusso Ya, ini adalah kendaraan yang saya coba modelkan.

Saya memiliki file mesh jika Anda membutuhkannya.

Saya baru saja mencoba meluncurkan kotak uji dengan apa yang saya pahami adalah plugin daya apung dan mencobanya dengan tag neutrally_buoyant disetel ke 0 serta 1 , dan kotak masih tenggelam dua kali. Itu juga mencetak kesalahan [Wrn] [UnderwaterObjectPlugin.cc:207] Relative angular acceleration is invalid -nan berulang-ulang.

Saya memiliki kedua file di bawah ini untuk Anda tinjau. Tidak yakin apa masalahnya. Saya menambahkan ekstensi .txt sehingga saya dapat mengunggah di komentar.

box.urdf.txt
upload_box.launch.txt

Segera setelah Anda melihat kesalahan Relative angular acceleration is invalid UnderwaterObjectPlugin kami tidak akan menerapkan gaya atau torsi apa pun lagi, karena ini adalah indikator yang jelas bahwa mesin fisika rusak.

Saya telah melihat definisi kotak Anda:

<inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0" />

Ini adalah pelakunya. Tidak ada benda tegar yang memiliki momen inersia atau massa nol. Karena cara Gazebo menghitung percepatan dari gaya/torsi, ini akan menghasilkan pembagian dengan nol.

Beri tahu kami jika ini menyelesaikan masalah Anda.

@sebastianscherer Itu masuk akal. Saya baru saja menggunakan ellipsoid dasar untuk memperkirakan inersia saya untuk kendaraan saya, dan itu mengambang sekarang.

Untuk mencari tahu plugin Thruster! Saya mendapatkan beberapa masalah di sana juga.

Di terminal gazebo saya melihat:

[Msg] Thruster #0 initialized
[Msg]   - Link: videoray_pro4/thruster_0
[Msg]   - Robot model: videoray_pro4
[Msg]   - Input command Gazebo topic: /videoray_pro4/thrusters/0/input
[Msg]   - Thrust output Gazebo topic: /videoray_pro4/thrusters/0/thrust
[Msg] Thruster #1 initialized
[Msg]   - Link: videoray_pro4/thruster_1
[Msg]   - Robot model: videoray_pro4
[Msg]   - Input command Gazebo topic: /videoray_pro4/thrusters/1/input
[Msg]   - Thrust output Gazebo topic: /videoray_pro4/thrusters/1/thrust
[Msg] Thruster #2 initialized
[Msg]   - Link: videoray_pro4/thruster_2
[Msg]   - Robot model: videoray_pro4
[Msg]   - Input command Gazebo topic: /videoray_pro4/thrusters/2/input
[Msg]   - Thrust output Gazebo topic: /videoray_pro4/thrusters/2/thrust
[Msg] JointStatePublisher::robotNamespace=videoray_pro4

Di terminal pendorong, saya melihat:

process[videoray_pro4/thruster_allocator-1]: started with pid [26422]
[INFO] [1500390755.909692, 0.000000]: ThrusterManager::update_rate=50
output_dir= /home/andrew/Development/ underwater_ws/install/share/videoray_description/config/videoray_pro4
ThrusterManager: updating thruster poses
conversion_fcn= proportional
conversion_fcn_params= {'gain': 0.00031}
transform: /videoray_pro4/base_link -> /videoray_pro4/thruster_0
could not get transform from: /videoray_pro4/base_link
to: /videoray_pro4/thruster_0
[]

Saya baru saja menjalankan rosrun tf view_frames dan ini adalah hasilnya. Saya melihat pohon TF menunjukkan transformasi antara base_link dan pendorong...
frame.pdf

Frame antara world dan base_link kendaraan dihasilkan oleh node message_to_tf , yang merupakan bagian dari paket hector_localization . Contoh file peluncuran model RexROV adalah ini

https://github.com/uuvsimulator/uuv_simulator/blob/master/uuv_descriptions/models/rexrov/launch/upload_rexrov_default.launch#L31

Bagaimana Anda menyatakan ini dalam file peluncuran?

@musamarcusso Sesuai tutorial wiki, saya memanggil transformasi sebagai berikut:

<!-- Publish state and tf for in relation to the world frame -->
            <group ns="$(arg namespace)">
                <node name="ground_truth_to_tf" pkg="message_to_tf" type="message_to_tf" output="screen">
                    <param name="odometry_topic" value="/$(arg namespace)/pose_gt" />
                    <param name="frame_id" value="/$(arg world_frame)" />
                    <param name="tf_prefix" value="$(arg namespace)" />
                </node>
            </group>

Tampaknya berbeda dari garis yang Anda panggil di atas. Saya akan mencobanya sekarang.

Bisakah Anda mencoba mengganti blok yang Anda kirimkan kepada saya dengan ini

<include file="$(find uuv_descriptions)/models/common/launch/message_to_tf.launch">
    <arg name="namespace" value="$(arg namespace)"/>
</include>

Jika perbaikan ini berhasil, saya akan segera memperbaiki tutorialnya.

Saya mencoba mengganti blok saya dengan blok Anda, tetapi tidak berhasil. Satu-satunya cara kerjanya adalah kedua blok dipanggil bersama.

VelocityControllerNode: initializing node Thruster #0 - proportional - thrusters/0/input transform: /videoray_pro4/base_link -> /videoray_pro4/thruster_1 Thruster #1 - proportional - thrusters/1/input transform: /videoray_pro4/base_link -> /videoray_pro4/thruster_2 Thruster #2 - proportional - thrusters/2/input transform: /videoray_pro4/base_link -> /videoray_pro4/thruster_3 could not get transform from: /videoray_pro4/base_link to: /videoray_pro4/thruster_3 [<uuv_thrusters.models.thruster_proportional.ThrusterProportional object at 0x7efc4bdb8a50>, <uuv_thrusters.models.thruster_proportional.ThrusterProportional object at 0x7efc4bdb8c10>, <uuv_thrusters.models.thruster_proportional.ThrusterProportional object at 0x7efc4bd4c190>] TAM= [[ 1. 0. 0. ] [ 0. 0. 0. ] [ 0. 0.99999968 0.99999968] [ 0. 0.09999997 -0.09999997] [ 0.1 0.15249995 0.15249995] [ 0. 0. 0. ]] ThrusterManager: ready ThrusterManager: ready
Sekarang saya perlu melihat mengapa tidak bisa mendapatkan TF dari thruster 3.

Saya dapat meluncurkan versi joy_velocity.launch , tetapi saya tidak dapat mengontrol kendaraan dengan pengontrol saya.

Saya telah mencoba untuk men-debug berbagai hal, dan saya membandingkan output dari visualisasi rqt_graph dari node. Ini adalah dua jaringan yang saya lihat. Tidak yakin mengapa itu tidak bekerja dengan tepat.

videoray2
rexrov

Pembaruan lain yang baru saya sadari:

Wiki memanggil: <xacro:property name="prop_mesh_file" value="file://$(find uuv_descriptions_example)/models/rov_example/mesh/propeller.dae"/>

Seharusnya: <xacro:property name="prop_mesh_file" value="file://$(find uuv_descriptions)/models/rexrov/mesh/prop.dae"/>

Hai @atomoklas ,

tidak, itu benar dalam tutorial. Contoh di tutorial bukan contoh fungsional, makanya saya taruh README.md ini di folder mesh, jadi prop_mesh_file ini harus diedit oleh orang yang membuat model kendaraan baru.
joy_velocity didefinisikan per default untuk pemetaan pengontrol Xbox. Apa model pengontrol yang Anda miliki?
Apakah Anda memiliki file Anda di suatu tempat di Github? Saya bisa mencoba menjalankannya dan memberi Anda umpan balik.

@musamarcusso saya telah mengunggah repo di sini: https://github.com/atomoclast/videoray_description/tree/feature/DEEP-291

Halo @musamarcusso , apakah Anda memiliki kesempatan untuk melihat repo ini?

Ya, saya mengkloningnya. Saya akan memberikan umpan balik hari ini.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

hughhugh picture hughhugh  ·  5Komentar

Timple picture Timple  ·  24Komentar

HashirZahir picture HashirZahir  ·  10Komentar

bst picture bst  ·  33Komentar

tve picture tve  ·  17Komentar