Model problems using gazebo_ros_link_attacher for certain movements

asked 2016-11-22 11:22:07 -0500

JoshMarino gravatar image


I have a quadruped model setup in ROS and I am trying to simulate walking in Gazebo. Instead of worrying about friction at the feet, I am using gazebo_ros_link_attacher world plugin to attach the foot_link to the ground_plane. I have tested this plugin using the demo cube project provided in the link and it works fine.

The gait I am using for straight-line forward walking is:

  1. Start all 4 legs in their backward position
  2. Lift one leg up, move the leg forward a certain distance, place the foot down
  3. Repeat Step (2) for all 4 legs
  4. Move body forward while keeping the feet stationary

At the moment, I am at the point in the gait where all 4 legs have moved forward. The next step is keeping the feet stationary and moving the body forward. When executing this trajectory using MoveIt!, the Gazebo simulation acts very strange and I have no idea what it going on. Once the trajectory execution starts, all the joints appear to break in the Gazebo simulation and each link has been disconnected from the rest, moving around in space in what seems a random pattern. When visualizing the robot in rviz (robot model loaded), the joints are not disconnected, but they do appear to be moving around in a random pattern.

The only thing I can think of causing this is some set of over-constrained kinematics. Each foot_link is attached to the ground_plane, but the robot should still be able to move its body forward if all the joints move in the correct way. I am having MoveIt! create this trajectory by keeping the body stationary, but moving the legs from their forward position to their backward position, for all legs at the same time.

Any help would be appreciated.

edit retag flag offensive close merge delete


Thought perhaps it might be from planning with 4 legs at the same time in MoveIt! due to each leg generating a slightly different trajectory. I just modified the trajectory for all legs to copy it from one leg, that way I am guaranteed a kinematic solution that is possible for moving the body forward. This did not work in Gazebo simulation though. The same problem persists - joints appear to be broken and each link is disconnected from the rest, moving around in a random order.

JoshMarino gravatar imageJoshMarino ( 2016-11-22 16:12:01 -0500 )edit