I think this problem is highly related to the
question I asked before.
The question remains unsolved and I would like to clarify the issue and to see if any help can be provided.
Here's the situation:
1.I follow the
Setup Assistant tutorial from the website and generate a package containing the config files.
The urdf and the generated package are attached as
pr2_new.urdf and
pr2_moveit_generated.zip.
2.When I launch the demo.launch, I cannot see the interactive marker to drag the arm around.
But I can set the start and goal state to random and get a trajectory successfully.
![]()
You can find the output messages in the attachment
moveit_demo_launch_output.txtThe following messages catch my attention:
[ INFO] [1379840961.609917380]: No active joints or end effectors found for group ''. Make sure you have defined an end effector in your SRDF file and that kinematics.yaml is loaded in this node's namespace.
[ INFO] [1379840961.610334063]: No active joints or end effectors found for group 'right_arm'. Make sure you have defined an end effector in your SRDF file and that kinematics.yaml is loaded in this node's namespace.
[ INFO] [1379840961.643678747]: No active joints or end effectors found for group 'right_arm'. Make sure you have defined an end effector in your SRDF file and that kinematics.yaml is loaded in this node's namespace.
[ INFO] [1379840961.659707680]: Constructing new MoveGroup connection for group 'right_arm'
3.I then setup the controllers following
this.
The result is basically fine, except that I still cannot find the interactive marker in the rviz.
And I get the similar output messages as mentioned in 2.
Something like "No active joints or end effectors found for group"
To get more details of the output, you can see the attached file
moveit_planning_execution_launch_output.txtThe PR2 in Gazebo can follow the trajectory as in the one in rviz.
4.Next, I try to write a program to control the arm.
I first follow
this to move the arm to a random pose.
It succeeds.
And then I modify the group.setRandomTarget() to group.setPositionTarget(x,y,z).
However, the execution fail.
I get the following messages at the terminal where I run my own program:
[ERROR] [1379840264.855619101, 117.002000000]: No end-effector to set the pose for
[ INFO] [1379840264.908478996, 117.046000000]: ABORTED: Invalid goal constraints
The output messages from the moveit-related launch is in the attached file
moveit_related_launch_output.txt5.Lastly, I manually set the EndEffector and the EndEffectorLink by group.setEndEffector("right_eef") and group.setEndEffectorLink("r_wrist_roll_link").
They still fail and I get the same output at the terminal where I run my own program.
If I try to print out the EndEffector and the EndEffectorLink returned by group.getEndEffector() and group.getEndEffectorLink(), I simply get an empty string.
The above are how I test the MoveIt on my computer.
I try to write it as detailed as possible for you to recognize the problem more easily.
Since MoveIt is one of the most powerful tool for motion planning in ROS, many applications need it.
We want to build a useful robot, which definitely need ROS and MoveIt.
For this purpose, we would really happy to learn more about MoveIt.
If you can give us any suggestions or additional tutorials for solving this problem, or for better understanding of MoveIt, we'll appreciate that very much.
Thank you!