Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gripper isn't working under Indigo #9

Open
ferherranz opened this issue Jul 23, 2015 · 3 comments
Open

gripper isn't working under Indigo #9

ferherranz opened this issue Jul 23, 2015 · 3 comments

Comments

@ferherranz
Copy link

Hello,

I'm using youbot_manipulation under indigo. I launch move_group.launch file in combination with moveit_commander. When I execute:
use arm_1_gripper
go open

I get the following error:
[ERROR] [1437659114.273972520]: Unable to identify any set of controllers that can actuate the specified joints: [ gripper_finger_joint_l gripper_finger_joint_r ]
[ERROR] [1437659114.274016429]: Known controllers and their joints:
controller 'arm_1/arm_controller' controls joints:
arm_joint_1
arm_joint_2
arm_joint_3
arm_joint_4
arm_joint_5

[ERROR] [1437659114.274061944]: Apparently trajectory initialization failed

Any idea?
Thank you in advance!

@svenschneider
Copy link
Owner

Hello Fernando,

unfortunately, this is the "expected" behaviour (also under ROS Hydro). Let me explain the issue: MoveIt! can "plan" trajectories for the gripper (not that there is that much to plan for open/close ;) ). The problem is that the simple MoveIt! controller managers [1] expect either a ROS control_msgs/FollowJointTrajectory [2] action interface or a control_msgs/GripperCommand [3] action interface. However, neither of these is offered by the youbot_driver_ros_interface [4].

There are several ways to solve this issue:

  1. Write a custom controller manager (see e.g. [5] for an overview of the current architecture).
  2. Extend the youbot_driver_ros_interface to include the required interface.
  3. Write an adapter node that translates FollowJointTrajectory or GripperCommand actions to the gripper's position interface [6].

In any case, you have to register the controller in the controllers.yaml configuration file [7].

Best regards
Sven

[1] https://github.com/ros-planning/moveit_plugins
[2] http://docs.ros.org/indigo/api/control_msgs/html/action/FollowJointTrajectory.html
[3] http://docs.ros.org/indigo/api/control_msgs/html/action/GripperCommand.html
[4] https://github.com/youbot/youbot_driver_ros_interface/blob/hydro-devel/src/YouBotOODLWrapper.cpp
[5] http://moveit.ros.org/wiki/Executing_Trajectories_with_MoveIt!
[6] https://github.com/youbot/youbot_driver_ros_interface/blob/hydro-devel/src/YouBotOODLWrapper.cpp#L207
[7] https://github.com/svenschneider/youbot-manipulation/blob/indigo/youbot_moveit/config/controllers.yaml

@ferherranz
Copy link
Author

thank you for you help! I'm just starting with moveit and youbot. I'll have a a look at the links!

Best Regards

Fernando

@svenschneider svenschneider mentioned this issue Aug 13, 2015
@frederikhegger
Copy link
Contributor

Dear @ferherranz,
does it work for you now?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants