Gazebo | Ignition | Community
Ask Your Question

curranw2's profile - activity

2016-12-23 05:15:13 -0600 received badge  Famous Question (source)
2016-09-26 16:19:22 -0600 received badge  Scholar (source)
2016-09-26 16:19:18 -0600 answered a question Properly restarting the gazebo simulation for iterative learning

Installing the newest version of gazebo fixed this issue entirely. Gazebo 7 works great.

http://gazebosim.org/tutorials?tut=in...

http://gazebosim.org/tutorials?tut=in...

http://gazebosim.org/tutorials?tut=ro...

2016-09-24 03:09:08 -0600 received badge  Notable Question (source)
2016-09-23 13:00:33 -0600 received badge  Editor (source)
2016-09-23 13:00:07 -0600 commented answer Properly restarting the gazebo simulation for iterative learning

That link seems to be broken, but if it's the project I think you're talking about, it uses a turtlebot. A turtlebot is great, since it has no arms/joints and you can just reset the whole simulation. My issue occurs specifically with armed robots (I've tried multiple). I'll modify my question.

2016-09-22 14:30:29 -0600 received badge  Popular Question (source)
2016-09-21 16:57:37 -0600 asked a question Properly restarting the gazebo simulation for iterative learning

I've seen this question posted many times, but with no definitive answer (and they are old). To name a few:

1 2 3

However, many of these solutions don't really answer the question. reset_world seems to break all of the controllers. Just calling it with the pr2 model leads to a flow of red errors.

What I'm using now is the SetModelConfiguration service call. This works well...at the beginning. However, after the 10th or so experiment, the robot arm beings to "fling around" after the service call. After 20 or so experiments, the whole robot starts rocking as it gets called. It's as if the model is colliding with itself. I'm wondering why this is.

Thoughts: Could it be the effort controller? To test this I set all of the efforts to 0 between experimental runs, and give the controllers a second or two to settle before calling SetModelConfiguration. This didn't help.

Is gazebo storing some sort force? It seems like the controller would remove that. I use the "/gazebo/clear_body_wrenches" and the "/gazebo/clear_joint_forces" service calls to reset all forces, but that doesn't help either.

I'm out of ideas! I'm using gazebo for ROS (obviously), but I believe this may be an underlying gazebo issue, and may have a gazebo solution.

Here is a video showing when I use "SetModelConfiguration" 10 times with the same joint angles. Eventually it settles. I am giving no motor commands at this point, it's simply where the arm "settles" after resetting the joints.

Edit: This problem exists specifically with armed robots. Robots with just a base seem to work just fine.