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

moving the shadow robot with a haptic glove

asked 2012-11-14 22:22:16 -0600

joseescobar60 gravatar image


Days ago i build a glove with one flex sensor in each finger and i connect it with a arduino mega 2560, now i have the values of the sensors in a topic on ros, that value are published in a node for each sensor, now what i want to do is to simulate the movement of my hand in the sr_hand of the shadow robot, i saw the cyberglove example but there is not too information about how to do this, anyone of you, knows a way to do that???

Thank you!!

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2012-11-14 22:50:56 -0600

Ugo gravatar image

Hi, if I were you I'd look at the sr_remappers code. Basically you're getting a vector of data from your glove and want to remap it to the shadow hand. To do this you need to remap the glove space to the hand space (-> write a matrix which will transform from one to the other). The remapper should subscribe to your glove topic and republish to the hand controllers:

  • /sh_ffj0_mixed_position_velocity_controller/command
  • /sh_ffj3_mixed_position_velocity_controller/command
  • /sh_ffj4_mixed_position_velocity_controller/command
  • etc...

Once you've written this remapper, you can just start the simulated hand:

roslaunch sr_hand gazebo_hand.launch
rosrun gazebo gui

Finally start your glove node and start your remapper node.

Let me know how it goes.

May I ask how many DOFs does your glove have? At what kind of frequency are you polling the data?

edit flag offensive delete link more


hey, thank you for your answer i will try it, my glove has 5 flex sensors, one per each finger, then i think it have 5 DOFs, and in this moment i'm reading the sensor data at 500ms. Another thing, i don't have the values in only one topic, i have it in 5 topics, one per flex sensor.

joseescobar60 gravatar image joseescobar60  ( 2012-11-14 22:56:50 -0600 )edit

OK thanks for that. Your mapping matrix should be very simple then (you could even publish directly to the correct topics (/sh_ffj3_mixed_position_velocity_controller/command, mfj3, rfj3, lfj3, ?? not sure where's you last sensor so I can't know which joint it is controlling on the shadow hand) ).

Ugo gravatar image Ugo  ( 2012-11-14 23:38:24 -0600 )edit

watching the information that you gives to me, i saw that i have to publish in each joint the position, but i have just one sensor per finger(one sensor for 3 joints), i have to send the same information for each joint?, i know that the movement isn't exactly in my way, but i need to be near

joseescobar60 gravatar image joseescobar60  ( 2012-11-15 01:01:11 -0600 )edit

You'll have either to map your sensor to the 3 joints of the finger, or you control only one joint with your sensor (for example the proximal joint (FJ3) ). This depends on the sensor's position. Just note that on our hand you can't control the distal and middle joint separately (coupled J0=J1+J2)

Ugo gravatar image Ugo  ( 2012-11-15 01:42:45 -0600 )edit

sorry, i don't understand you, when you said that i can't control the distal and middle joint, it moves just with the proximal one???

joseescobar60 gravatar image joseescobar60  ( 2012-11-15 01:48:19 -0600 )edit

No. You can send a target to the middle + distal joints together for first, middle, ring and little finger. You can't control just the distal for example (same as a human hand). So if you send 2*pi/3 to FFJ0, FFJ1 will go to pi/3 and so will FFJ2. But you can send an other target to proximal FFJ3.

Ugo gravatar image Ugo  ( 2012-11-15 01:55:02 -0600 )edit

ok, i understand, thak you, do you have any tutorial link or files of how to do the remapper, i'm trying but the information is a little poor, and i'm not a advance ros user, thank you!

joseescobar60 gravatar image joseescobar60  ( 2012-11-15 01:59:53 -0600 )edit

Sorry no tutorial available for this. If you find the code to complex to your liking you can rewrite something from scratch as you just need to subscribe to your topic and publish to the controller command topics I indicated. Lots of documentation available on how to do this!

Ugo gravatar image Ugo  ( 2012-11-15 02:10:38 -0600 )edit

Question Tools

1 follower


Asked: 2012-11-14 22:22:16 -0600

Seen: 844 times

Last updated: Nov 14 '12