uuv_simulator icon indicating copy to clipboard operation
uuv_simulator copied to clipboard

AUV model gradual destabilization after spawning

Open ethanjpark opened this issue 3 years ago • 1 comments

Hello all,

In my recent works with UUVSim, I've noticed this stability issue. Shown below is the default eca_a9 AUV model provided in UUVSim. I have roslaunched auv_underwater_world.launch or ocean_waves.launch from the uuv_gazebo_worlds package, and then upload_eca_a9.launch from the eca_a9_description package. Basically, I load in the world, then spawn the robot and do nothing else. This spiking/pitching behavior occurs without fail within the first minute or two of being spawned in.

auvuwworld_instability oceanwaves_instability

A few things I have noticed about this process: the destabilization seems to start happening once the AUV reaches -10 meters depth, and the destabilization is different for each of the two worlds that I tested this on. For one of them, the AUV will pitch forwards rapidly and violently, whilst for the other the AUV will more gradually pitch forwards and spike downwards.

I have been able to replicate this with a custom AUV model that I am currently working on, however I have tested this with the LAUV model, also provided by UUVSim, and was unable to replicate this destabilization. I also went extremely bare bones and spawned in a cylinder with the uuvsim hydrodynamic plugin applied to it and that was also rock solid.

I am wondering what is causing this, if it's an inherent Gazebo physics solver numerical error accumulation issue, or if I'm missing something with the hydrodynamic plugin or something else within UUVSim.

Thanks~

ethanjpark avatar Sep 17 '20 18:09 ethanjpark

Hello Ethan,

I am not sure if this is the cause of the problem, but I have experienced similar issues with much simpler setup (simple rovers or arms) in Gazebo due to slightly incorrect inertia/com values.

This could be a good first point of investigation.

George

gstavrinos avatar Sep 18 '20 07:09 gstavrinos