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

Moving arm of the Nao robot

asked 2013-11-08 03:16:57 -0600

FlorianJo gravatar image

updated 2013-11-11 21:41:45 -0600

AHornung gravatar image

Hi folk,

I am using the current Nao-ROS stack (fuerte). I want to control the Nao in an abstract way. Now, I am trying to send commands to the nao_controller to move the left arm from the Nao. I found only one option to do this. Namely to create a JointTrajectory message for the left arm and this message as goal to the ActionServer of the nao_controller. This message requires to define 6 radians for each joint of the left arm: (LShoulderPitch,LShoulderRoll,LElbowYaw,LElbowRoll,LWristYaw2,LHand2)

But, I don`t want to control the joints seperately. I want to say: moveLeftArmToPosition (x,y,z) So, do I have to solve this mapping on my own, or, has the nao_driver this task already done?

I want to ask as well, if the nao_driver provides a node to start face detection. I havn`t found it in the documentation. Thanks a lot.

Best Regards


edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2013-11-11 21:40:54 -0600

AHornung gravatar image

updated 2013-11-11 21:43:46 -0600

What you are looking for is an IK solver, which converts your Cartesian coordinates into joint angles. The NaoQI API (check the SDK documentation) has methods for IK control, so that the Nao directly executes the command but it's not very precise in some situations. It's not wrapped in the nao_driver, so you will have to add it yourself and make it available through a ROS service.

You could also do IK computations yourself in ROS using KDL, IKfast, or MoveIt (which includes the former two). You will then have to feed the results into the nao_controller node, probably with some lightweight conversion of messages.

Edit: I just realized you're using fuerte. Then (I think) you only have the arm_navigation stack in ROS as choice besides a custom IKfast implementation, but it's deprecated in the current distros and won't be maintained anymore (afaik).

edit flag offensive delete link more

Question Tools

1 follower


Asked: 2013-11-08 03:16:57 -0600

Seen: 1,152 times

Last updated: Nov 11 '13