ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

set revolute joint start angle

asked 2011-05-04 02:06:54 -0500

Ugo gravatar image

I'd like to know if it's possible to set a start angle which is not 0 directly in the urdf.

By default on our arm, when all the joints are at 0, the arm is pointing down (through the floor if you import it directly in Gazebo, without attaching it to a table). It would be better if I could specify default values for the joint angles.

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2011-05-04 08:56:50 -0500

hsu gravatar image

Hi, Please take a look at the service call gazebo/set_model_configuration in gazebo wiki to set pose of the robot. The strategy I've tested here is:

  • start simulation paused.
  • call gazebo/set_model_configuration with list of joint angles
  • [if holding position, trigger controller reset to set new goals]
  • unpause simulation

Hope this helps.


edit flag offensive delete link more


You can do this entirely from launch functions, as spawn_model has an "-unpause" option

bsaund gravatar image bsaund  ( 2017-02-09 05:31:00 -0500 )edit

answered 2017-12-09 18:29:50 -0500

pendragon gravatar image

I found a way that works for me. Since there is no such xml/urdf tag for setting default values hence poses, setting the [rpy] in your origin tag kinda does the trick for me. Hope it helps someone.

edit flag offensive delete link more


Thanks for this, it partly solved my issues! However, by editing the origin/rpy element in the joint tag, it messes up the joint range since the 0 position of the joint is now altered. I wish URDF gave us a way to configure initial joint positions... :(

JeSuisYasu gravatar image JeSuisYasu  ( 2020-06-16 21:02:44 -0500 )edit

Question Tools

1 follower


Asked: 2011-05-04 02:06:54 -0500

Seen: 2,907 times

Last updated: May 04 '11