Skip to content

Joints oscilliations affect sensor readings (IMU). #866

@stepanove

Description

@stepanove

Hello!

I just started playing with VRX simulation environment and, first of all, I'd like to thank you for your work, it's cool to have an opportunity to experiment with marine robotics.

I noticed an issue with some joints starting to oscillate if you "shake" WAM-V a bit. It's visible with a naked eye and also affects data readings, for example IMU. The ball shooter is the most prominent feature, but other axes are also shaking in RViz, it's a bit harder to see, though.

The issue affects following axes:

  • wamv/ball_shooter_base_joint
  • wamv/ball_shooter_launcher_joint
  • wamv/gps_wamv_joint
  • wamv/imu_wamv_joint
  • wamv/receiver_pinger_joint

It looks like this happens because these axes have zero damping and friction, probably they should be damped or made fixed instead of revolute.

To Reproduce

  1. Run ros2 launch vrx_gz competition.launch.py
  2. Next, do some high-G maneuvers using gamepad or run ros2 topic pub -1 /wamv/thrusters/left/thrust std_msgs/msg/Float64 {"data: 1000."} && ros2 topic pub -1 /wamv/thrusters/right/thrust std_msgs/msg/Float64 {"data: 1000."} && ros2 topic pub -1 /wamv/thrusters/left/thrust std_msgs/msg/Float64 {"data: 0."} && ros2 topic pub -1 /wamv/thrusters/right/thrust std_msgs/msg/Float64 {"data: 0."}
  3. Repeat step 2 until the ball shooter begins to oscillate in Gazebo, one time is typically enough.

System Configuration:

  • OS: vrx-devel:v3.0.4
  • ROS Version: ROS 2, Jazzy
  • Gazebo Version: 8.9/8.10, the behaviour is the same with the stock image which has Gazebo 8.9 and with Gazebo updated to 8.10.
screencast.mp4

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions