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

how to move a gazebo object with rosserial_arduino values from flex sensor

asked 2012-11-13 23:10:13 -0500

joseescobar60 gravatar image

updated 2012-11-14 22:40:16 -0500


i have a haptic glove with 5 flex (one per finger) sensors that send the information of his values to ros with an arduino mega 2560 by rosserial, that values are publicated in topics (5 topics, one per flex sensor) a nodes are subscripted to each topic and publicated the sensors information, now i need to use that values in gazebo to move an object made in a urdf file, the object is a hand with 15 joints 3 per finger, anyone knows how can i do that???

thank you!

edit retag flag offensive close merge delete


Please be more specific and always tag your questions to make sure the right people find it. What sensor are you using, i.e. what's the data you are getting? Absolute positions? Forces? Encoder values? Make sure you have a look at

Lorenz gravatar image Lorenz  ( 2012-11-14 22:26:33 -0500 )edit

2 Answers

Sort by ยป oldest newest most voted

answered 2012-11-14 23:19:42 -0500

Lorenz gravatar image

As far as I know, there is no direct way to set joint positions in Gazebo. However, you can apply a force/effort at a joint for a specific duration and move the connected links that way. Have a look at Gazebo's apply_joint_effort. To move the joint to a specific position, you'll have to implement a position controller.

Alternatively, you can implement a gazebo plugin that controls your joints directly, something similar to the gazebo_controller_manager. Maybe you can even use it.

A third alternative is to compute the link poses of your simulated hand manually using forward kinematics and just set the resulting link poses in gazebo. The joint values should be updated automatically (related post).

edit flag offensive delete link more

answered 2012-11-14 18:14:59 -0500

JonW gravatar image

If you just need to apply a force to an object in simulation, you could use the gazebo "apply_body_wrench" ROS service to apply a force to the simulated object. The use of this service is discussed in this gazebo tutorial.

edit flag offensive delete link more


hello, i did this tutorial many days ago, but it don't solve my problem, what i need is to take tha values that i have in a topic and give this values to move the joint of a object, a hand in this case...

joseescobar60 gravatar image joseescobar60  ( 2012-11-14 21:54:09 -0500 )edit

Question Tools

1 follower


Asked: 2012-11-13 23:10:13 -0500

Seen: 598 times

Last updated: Nov 14 '12