osrf / subt

This repostory contains software for the virtual track of the DARPA SubT Challenge. Within this repository you will find Gazebo simulation assets, ROS interfaces, support scripts and plugins, and documentation needed to compete in the SubT Virtual Challenge.
Other
306 stars 98 forks source link

ignition crashes when X4 robot is flying up and away #200

Closed osrf-migration closed 5 years ago

osrf-migration commented 5 years ago

Original report (archived issue) by Sophisticated Engineering (Bitbucket: sopheng).


When I start ignition with more than one robot and an X4 robot is flying up and away the ignition process crashes. This does not happen every time but it worries me a little bit.

server output (running the docker image osrf/subt-virtual-testbed with tunnel_circuit_practice.ign worldName:=simple_tunnel_03):

[Dbg] [VisibilityRfModel.cc:80] Range: 3347.79, Exp: 3.59539e+307, TX: 20, RX: -inf
[Err] [MulticopterMotorModel.cc:506] Aliasing on motor [1] might occur. Consider making smaller simulation time steps or raising the rotorVelocitySlowdownSim param.
[Err] [MulticopterMotorModel.cc:506] Aliasing on motor [2] might occur. Consider making smaller simulation time steps or raising the rotorVelocitySlowdownSim param.
[Err] [MulticopterMotorModel.cc:506] Aliasing on motor [4] might occur. Consider making smaller simulation time steps or raising the rotorVelocitySlowdownSim param.
[Err] [MulticopterMotorModel.cc:506] Aliasing on motor [2] might occur. Consider making smaller simulation time steps or raising the rotorVelocitySlowdownSim param.
[Err] [MulticopterMotorModel.cc:506] Aliasing on motor [3] might occur. Consider making smaller simulation time steps or raising the rotorVelocitySlowdownSim param.
[Err] [MulticopterMotorModel.cc:506] Aliasing on motor [4] might occur. Consider making smaller simulation time steps or raising the rotorVelocitySlowdownSim param.
[Err] [MulticopterMotorModel.cc:506] Aliasing on motor [0] might occur. Consider making smaller simulation time steps or raising the rotorVelocitySlowdownSim param.
[Err] [MulticopterMotorModel.cc:506] Aliasing on motor [3] might occur. Consider making smaller simulation time steps or raising the rotorVelocitySlowdownSim param.
[Err] [MulticopterMotorModel.cc:506] Aliasing on motor [1] might occur. Consider making smaller simulation time steps or raising the rotorVelocitySlowdownSim param.
[Err] [MulticopterMotorModel.cc:506] Aliasing on motor [4] might occur. Consider making smaller simulation time steps or raising the rotorVelocitySlowdownSim param.
Error:   TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_1" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)
         at line 244 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_1" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)
         at line 257 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   Error:   TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_1" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)
         at line 244 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_1" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)
         at line 257 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_0" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)
         at line 244 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_0" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)
         at line 257 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_4" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)
         at line 244 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_4" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)
         at line 257 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_5" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)
         at line 244 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_5" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)
         at line 257 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_0" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)
         at line 244 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_0" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)
         at line 257 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_4" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)
         at line 244 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_4" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)
         at line 257 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_5" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)
         at line 244 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_5" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)
         at line 257 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
[Err] [MulticopterMotorModel.cc:506] Aliasing on motor [2] might occur. Consider making smaller simulation time steps or raising the rotorVelocitySlowdownSim param.
[Err] [MulticopterMotorModel.cc:506] Aliasing on motor [5] might occur. Consider making smaller simulation time steps or raising the rotorVelocitySlowdownSim param.

ODE INTERNAL ERROR 1: assertion "bNormalizationResult" failed in _dNormalize4() [odemath.h:42]
./run_sim.bash: line 6:    49 Aborted                 (core dumped) ign launch -v 4 $@

Errors in the window where our solution is running:

Error:   TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_1" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)
         at line 244 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_1" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)
         at line 257 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_0" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)
         at line 244 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_0" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)
         at line 257 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   Error:   TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_1" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_4" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)

         at line          at line 244244 in  in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp/tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp

Error:   Error:   TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_4" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_1" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)

         at line          at line 257257 in  in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp/tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp

Error:   TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_0" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)
         at line 244 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cppError:   
TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_5" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)Error:   
TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_0" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)         at line 
244         at line  in 257/tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp in 
/tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cppError:   
TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_5" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)
Error:            at line TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_4" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)257
 in          at line /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp244
 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_4" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)
         at line 257 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_NAN_INPUT: Ignoring transform for child_frame_id "X4_1/rotor_5" from authority "unknown_publisher" because of a nan value in the transform (nan nan nan) (nan nan nan nan)
         at line 244 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp
Error:   TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "X4_1/rotor_5" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)
         at line 257 in /tmp/binarydeb/ros-melodic-tf2-0.6.5/src/buffer_core.cpp

osrf-migration commented 5 years ago

Original comment by Alfredo Bencomo (Bitbucket: bencomo).


osrf-migration commented 5 years ago

Original comment by Arthur Schang (Bitbucket: Arthur Schang).


I imagine there is a max Z-height for the world. Does this bug affect your solution?

osrf-migration commented 5 years ago

Original comment by Sophisticated Engineering (Bitbucket: sopheng).


It should not affect our solution. For that reason I categorized this bug as minor. But it confuses me, that, if during the competion one robot fly away due to an erroneous controller, the complete environment may crash. So the complete simulation run would break. I think it would be good if this could be avoided.

osrf-migration commented 5 years ago

Original comment by Arthur Schang (Bitbucket: Arthur Schang).


My proposed fix is to completely enclose the starting area. Would this affect your solution?

On the other hand, the world could be changed to scale indefinitely and not crash if a quadrotor ventures off into the (very) vast unknown.

osrf-migration commented 5 years ago

Original comment by Sophisticated Engineering (Bitbucket: sopheng).


I thought it might only be required to handle the error so that not the whole ignition crashes. The crashing of one node would be OK for me.

But if this can only be solved by doing more, we should leave it as it is.

osrf-migration commented 5 years ago

Original comment by Alfredo Bencomo (Bitbucket: bencomo).


osrf-migration commented 5 years ago

Original comment by Alfredo Bencomo (Bitbucket: bencomo).


osrf-migration commented 5 years ago

Original comment by Hector Escobar (Bitbucket: hector_escobar).


We saw the same behavior when we would start our controllers/estimators before the world was loaded. Is the same as issue #145. We solved it by putting a delay before launching our controllers.

osrf-migration commented 5 years ago

Original comment by Alfredo Bencomo (Bitbucket: bencomo).


Fixed in the latest release (see notes).

osrf-migration commented 4 years ago

Original comment by Alfredo Bencomo (Bitbucket: bencomo).