No kinematics solver instantiated for group with 2 arms
I have 2 plannings groups and want to move them at the same time collision free. For that I decided to make another planning group that contains both arms by editing the srdf file.
I followed this file mentioned in another ROS Answers question: https://github.com/o2as/ur-o2as/blob/master/catkin_ws/src/o2as_moveit_config/config/o2as_base_scene.srdf
Link to the ROS Answers question: https://answers.ros.org/question/370136/planning-for-a-dual-arm-robot-in-moveit/?answer=370364#post-id-370364
This is my srdf:
<group name="arm_right">
<chain base_link="right_base_link" tip_link="right_ee_link" />
</group>
<group name="arm_left">
<chain base_link="left_base_link" tip_link="left_ee_link" />
</group>
<group name="both_arms">
<group name="arm_right" />
<group name="arm_left" />
</group>
<!--GROUP STATES: Purpose: Define a named state for a particular group, in terms of joint values. This is useful to define states like 'folded arms'-->
<group_state name="start" group="arm_right">
<joint name="right_elbow_joint" value="0" />
<joint name="right_shoulder_lift_joint" value="-1.57" />
<joint name="right_shoulder_pan_joint" value="0" />
<joint name="right_wrist_1_joint" value="-1.57" />
<joint name="right_wrist_2_joint" value="0" />
<joint name="right_wrist_3_joint" value="0" />
</group_state>
<group_state name="start" group="arm_left">
<joint name="left_elbow_joint" value="0" />
<joint name="left_shoulder_lift_joint" value="-1.57" />
<joint name="left_shoulder_pan_joint" value="0" />
<joint name="left_wrist_1_joint" value="-1.57" />
<joint name="left_wrist_2_joint" value="0" />
<joint name="left_wrist_3_joint" value="0" />
</group_state>
<group_state name="start" group="both_arms">
<joint name="left_elbow_joint" value="0" />
<joint name="left_shoulder_lift_joint" value="-1.57" />
<joint name="left_shoulder_pan_joint" value="0" />
<joint name="left_wrist_1_joint" value="-1.57" />
<joint name="left_wrist_2_joint" value="0" />
<joint name="left_wrist_3_joint" value="0" />
<joint name="right_elbow_joint" value="0" />
<joint name="right_shoulder_lift_joint" value="-1.57" />
<joint name="right_shoulder_pan_joint" value="0" />
<joint name="right_wrist_1_joint" value="-1.57" />
<joint name="right_wrist_2_joint" value="0" />
<joint name="right_wrist_3_joint" value="0" />
</group_state>
And here is my kinematics.yaml:
arm_right:
kinematics_solver: kdl_kinematics_plugin/KDLKinematicsPlugin
kinematics_solver_search_resolution: 0.005
kinematics_solver_timeout: 0.005
arm_left:
kinematics_solver: kdl_kinematics_plugin/KDLKinematicsPlugin
kinematics_solver_search_resolution: 0.005
kinematics_solver_timeout: 0.005
In rviz, I don't have any interactive markers if I choose the group "botharms" but I can plan and execute trajectories when choosing random valid states. Trying to pass a joint value with setjointvaluetarget gives me the error mentioned in the title. How do I solve this?
Asked by hopestartswithu on 2021-06-01 04:56:40 UTC
Comments