RobotnikAutomation / rbvogui_sim

Packages for the simulation of the RB-VOGUI, RB-VOGUI-XL and RB-VOGUI-6W robots (including UR arms)
https://robotnik.eu/es/productos/robots-moviles/rb-vogui/
21 stars 15 forks source link

launching rbvogui_gazebo/worlds/demo.world causes gazebo to crash #6

Closed samuelsont closed 2 years ago

samuelsont commented 2 years ago

Launching gazebo with the demo.world file causes escalating to SIGKILL on server and the process shuts down.

Reproducible commands:

roscd rbvogui_gazebo/worlds

then

gazebo demo.world --> escalating to SIGKILL on server

Is there something wrong with the file? All other worlds (rbvogui.world, vineyard.world, willow_garage.world) seem to work fine.

samuelsont commented 2 years ago

Obviously, the unfortunate consequence is that none of the simulations in the readme work out of the box since all the robot configurations use the demo.world as the default world file.

You could get around the limitation by specifying a different world using one of the world:= or world_file:= options. Note that the world option expects a relative path to $(find rbvogui_gazebo) i.e., the rbvogui_gazebo package root, while the world_file option requires an absolute path to the world file. (See examples below)

robert-ros commented 2 years ago

Hi Samuel!

I have tested the melodic-devel branch on a virtual machine with a fresh Ubuntu and ROS installation and it worked.

Could you give us more information? Gazebo version, the entire log of error, etc.

What is the output if you launch gazebo with verbose option?

gazebo --verbose demo.world

samuelsont commented 2 years ago

Update

It seems the problem is linked to the dedicated Nvidia GPU somehow. After turning it off, the simulations work out of the box with the default demo.world

Why do other world files work well with the gpu while the default world does not?

robert-ros commented 2 years ago

I just tested it on docker container and it seems that the demo.world crashes Gazebo. However, on my machine (Ubuntu with Nvidia GPU enabled) works without problems.

The demo.world was created using the Bulding Editor of Gazebo, so this world should be compatible with Gazebo.

samuelsont commented 2 years ago

Hi! Could you please let me know what GPU and driver version you have?

My GPU is an Nvidia RTX 2070 Super with nvidia-driver version 510.47.03. Nvidia Prime is not supported.

The following is the result of running gazebo --verbose demo.world with the GPU enabled.

~/catkin_ws/src/rbvogui_sim/rbvogui_gazebo/worlds$ gazebo --verbose demo.world
Gazebo multi-robot simulator, version 9.0.0
Copyright (C) 2012 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org

Gazebo multi-robot simulator, version 9.0.0
Copyright (C) 2012 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org

[Msg] Waiting for master.
[Msg] Waiting for master.
[Msg] Connected to gazebo master @ http://127.0.0.1:11345
[Msg] Connected to gazebo master @ http://127.0.0.1:11345
[Msg] Publicized address: 10.31.9.229
[Msg] Publicized address: 10.31.9.229
[Wrn] [Event.cc:61] Warning: Deleting a connection right after creation. Make sure to save the ConnectionPtr from a Connect call
escalating to SIGKILL on server
robert-ros commented 2 years ago

Hi! My GPU is a GeForce GTX 1650 Ti with Max-Q Design with nvidia-driver version 460.91.03

It seems that this issue is related to #4 For some reason Gazebo crashes when you have the following conditions:

Therefore, there are two possible solutions:

  1. Update Gazebo to the upper version (9.19.0)
  2. Change the orthographic perspective with orbit perspective

I have just tested with a docker image and I could replicate the issue. @samuelsont could you test the second solution? In demo.world change the lines 2869 and 2870 with:

<view_controller>orbit</view_controller>
<projection_type>perspective</projection_type>
samuelsont commented 2 years ago

Second solution works!

Thanks @robert-ros for the fix. After changing the lines in the demo.world file, gazebo was able to load up the world properly. I also tested the simulations and they work fine, too.

At the moment, I am unable to test and verify that updating Gazebo actually fixes the issue. I'd rather not break something else by updating Gazebo. If ever I test the other comment, I will make sure to update here. Thanks, again.

robert-ros commented 2 years ago

@samuelsont I'm glad to hear that! I added the changes in the last commits. Therefore if somebody updates the repository, the simulation should work. I close the issue.

shmm91 commented 2 years ago

Thanks for your great work! vineyard.world load failed, can't find the model. [Err] [MeshShape.cc:60] No mesh specified [Wrn] [FuelModelDatabase.cc:248] URI not supported by Fuel [model://vineyard0/meshes/Grape0_low.dae] [Wrn] [SystemPaths.cc:464] File or path does not exist [""] [model://vineyard0/meshes/Grape0_low.dae]