Hello,
I am trying to setup IKfast on my robot, it all seems to go well until attempting to run demo.launch from the moveit_config package. When moveit! loads the IKfast kinematics solver there is a fatal error:
[FATAL] Joint numbers mismatch: URDF has 7 and IKFast has 6
My URDF has a mimic joint in it, I think this is the root of the problem. I am wondering if there is a work around? I have tried several variations of including the mimic joint in the moveit! planning group or not:
Here is what my IKfast set-up was :
~/harvester_7_axis/src/harvester_description/urdf$ openrave-robot.py
name index parents
---------------------------------------
world 0
base_link 1 world
bed_link0 2 base_link
carrage_link0 3 bed_link0
gantry_link0 4 carrage_link0
gantry_link1 5 gantry_link0
arm_link0 6 gantry_link1
arm_link1 7 arm_link0
arm_link2 8 arm_link1
arm_link3 9 arm_link2
arm_link4 10 arm_link3
aa_tool_flange_link 11 arm_link4
---------------------------------------
~/harvester_7_axis/src/harvester_description/urdf$ export BASE_LINK="0"
~/harvester_7_axis/src/harvester_description/urdf$ export EEF_LINK="10"
Here is the .dae joint info incase you want it:
~/harvester_7_axis/src/harvester_description/urdf$ openrave-robot.py "$MYROBOT_NAME".dae --info joints
name joint_index dof_index parent_link child_link mimic
----------------------------------------------------------------------------------------
gantry_joint_0 0 0 carrage_link0 gantry_link0
gantry_joint_1 1 1 gantry_link0 gantry_link1
arm_joint_0 2 2 gantry_link1 arm_link0
arm_joint_2 3 3 arm_link1 arm_link2
arm_joint_3 4 4 arm_link2 arm_link3
arm_joint_4 5 5 arm_link3 arm_link4
fixed -1 -1 world base_link
bed_joint_0 -1 -1 base_link bed_link0
carrage_joint_0 -1 -1 bed_link0 carrage_link0
arm_joint_1 -1 -1 arm_link0 arm_link1 arm_joint_0
aa_tool_flange_joint -1 -1 arm_link4 aa_tool_flange_link
----------------------------------------------------------------------------------------
name joint_index dof_index parent_link child_link mimic
I used the following code to create the IKfast.cpp file:
export IKFAST_OUTPUT_PATH=`pwd`/ikfast61_"$PLANNING_GROUP".cpp
python `openrave-config --python-dir`/openravepy/_openravepy_/ikfast.py --robot="$MYROBOT_NAME".dae --iktype=transform6d --baselink="$BASE_LINK" --eelink="$EEF_LINK" --savefile="$IKFAST_OUTPUT_PATH"
Any help with how to solve my issue would be much appreciated, thanks for your help in advance.
P.S. if you need anymore information that can help just ask :D
↧