cyberbotics / webots_ros2

Webots ROS 2 packages
Apache License 2.0
402 stars 148 forks source link

avoid using namespace in control_config for ur5e moveit example #837

Closed skpawar1305 closed 1 year ago

skpawar1305 commented 1 year ago

Description bug: launching moveit for ur5e throws error. either adding namespace to every node, or better, creating separate control_config file fixes it.

Affected Packages List of affected packages:

ygoumaz commented 1 year ago

Are you able to move the robot using moveit and the RViz interface? Although your solution fixes the controller connection, I get the following error when trying to plan and execute a command in RViz:

[move_group-2] [INFO] [1690380889.525325156] [moveit_move_group_default_capabilities.execute_trajectory_action_capability]: Received goal request
[move_group-2] [INFO] [1690380889.525469254] [moveit_move_group_default_capabilities.execute_trajectory_action_capability]: Execution request received
[move_group-2] [INFO] [1690380889.525504347] [moveit.plugins.moveit_simple_controller_manager]: Returned 1 controllers in list
[move_group-2] [INFO] [1690380889.525546350] [moveit.plugins.moveit_simple_controller_manager]: Returned 1 controllers in list
[rviz2-1] [INFO] [1690380889.525545001] [move_group_interface]: Execute request accepted
[move_group-2] [INFO] [1690380889.525624710] [moveit_ros.trajectory_execution_manager]: Validating trajectory with allowed_start_tolerance 0.01
[move_group-2] [INFO] [1690380889.541297487] [moveit_ros.trajectory_execution_manager]: Starting trajectory execution ...
[move_group-2] [INFO] [1690380889.541342072] [moveit.plugins.moveit_simple_controller_manager]: Returned 1 controllers in list
[move_group-2] [INFO] [1690380889.541371971] [moveit.plugins.moveit_simple_controller_manager]: Returned 1 controllers in list
[move_group-2] [INFO] [1690380889.541429516] [moveit.simple_controller_manager.follow_joint_trajectory_controller_handle]: sending continuation for the currently executed trajectory to ur_joint_trajectory_controller
[webots_controller_UR5e-7] [INFO] [1690380889.541573779] [ur_joint_trajectory_controller]: Received new action goal
[webots_controller_UR5e-7] [ERROR] [1690380889.541602576] [ur_joint_trajectory_controller]: Time between points 0 and 1 is not strictly increasing, it is 0.000000 and 0.000000 respectively
[move_group-2] [INFO] [1690380889.541742237] [moveit.simple_controller_manager.follow_joint_trajectory_controller_handle]: ur_joint_trajectory_controller started execution
[move_group-2] [WARN] [1690380889.541755083] [moveit.simple_controller_manager.follow_joint_trajectory_controller_handle]: Goal request rejected
[move_group-2] [ERROR] [1690380889.541746469] [moveit.simple_controller_manager.follow_joint_trajectory_controller_handle]: Goal was rejected by server
[move_group-2] [ERROR] [1690380889.541833024] [moveit_ros.trajectory_execution_manager]: Failed to send trajectory part 1 of 1 to controller ur_joint_trajectory_controller
[move_group-2] [INFO] [1690380889.541840882] [moveit_ros.trajectory_execution_manager]: Completed trajectory execution with status ABORTED ...
[move_group-2] [INFO] [1690380889.541877256] [moveit_move_group_default_capabilities.execute_trajectory_action_capability]: Execution completed: ABORTED
[rviz2-1] [INFO] [1690380889.542086005] [move_group_interface]: Execute request aborted
[rviz2-1] [ERROR] [1690380889.542640714] [move_group_interface]: MoveGroupInterface::execute() failed or timeout reached

The goal seems to be rejected because of the timing between each point in the trajectory. Is it the same on your side? Can we fix it in this PR?

skpawar1305 commented 1 year ago

Are you able to move the robot using moveit and the RViz interface? Although your solution fixes the controller connection, I get the following error when trying to plan and execute a command in RViz:

[move_group-2] [INFO] [1690380889.525325156] [moveit_move_group_default_capabilities.execute_trajectory_action_capability]: Received goal request
[move_group-2] [INFO] [1690380889.525469254] [moveit_move_group_default_capabilities.execute_trajectory_action_capability]: Execution request received
[move_group-2] [INFO] [1690380889.525504347] [moveit.plugins.moveit_simple_controller_manager]: Returned 1 controllers in list
[move_group-2] [INFO] [1690380889.525546350] [moveit.plugins.moveit_simple_controller_manager]: Returned 1 controllers in list
[rviz2-1] [INFO] [1690380889.525545001] [move_group_interface]: Execute request accepted
[move_group-2] [INFO] [1690380889.525624710] [moveit_ros.trajectory_execution_manager]: Validating trajectory with allowed_start_tolerance 0.01
[move_group-2] [INFO] [1690380889.541297487] [moveit_ros.trajectory_execution_manager]: Starting trajectory execution ...
[move_group-2] [INFO] [1690380889.541342072] [moveit.plugins.moveit_simple_controller_manager]: Returned 1 controllers in list
[move_group-2] [INFO] [1690380889.541371971] [moveit.plugins.moveit_simple_controller_manager]: Returned 1 controllers in list
[move_group-2] [INFO] [1690380889.541429516] [moveit.simple_controller_manager.follow_joint_trajectory_controller_handle]: sending continuation for the currently executed trajectory to ur_joint_trajectory_controller
[webots_controller_UR5e-7] [INFO] [1690380889.541573779] [ur_joint_trajectory_controller]: Received new action goal
[webots_controller_UR5e-7] [ERROR] [1690380889.541602576] [ur_joint_trajectory_controller]: Time between points 0 and 1 is not strictly increasing, it is 0.000000 and 0.000000 respectively
[move_group-2] [INFO] [1690380889.541742237] [moveit.simple_controller_manager.follow_joint_trajectory_controller_handle]: ur_joint_trajectory_controller started execution
[move_group-2] [WARN] [1690380889.541755083] [moveit.simple_controller_manager.follow_joint_trajectory_controller_handle]: Goal request rejected
[move_group-2] [ERROR] [1690380889.541746469] [moveit.simple_controller_manager.follow_joint_trajectory_controller_handle]: Goal was rejected by server
[move_group-2] [ERROR] [1690380889.541833024] [moveit_ros.trajectory_execution_manager]: Failed to send trajectory part 1 of 1 to controller ur_joint_trajectory_controller
[move_group-2] [INFO] [1690380889.541840882] [moveit_ros.trajectory_execution_manager]: Completed trajectory execution with status ABORTED ...
[move_group-2] [INFO] [1690380889.541877256] [moveit_move_group_default_capabilities.execute_trajectory_action_capability]: Execution completed: ABORTED
[rviz2-1] [INFO] [1690380889.542086005] [move_group_interface]: Execute request aborted
[rviz2-1] [ERROR] [1690380889.542640714] [move_group_interface]: MoveGroupInterface::execute() failed or timeout reached

The goal seems to be rejected because of the timing between each point in the trajectory. Is it the same on your side? Can we fix it in this PR?

no issue for me, but 1/3 computers had that issue we updated moveit packagess, maybe that fixed the issue, we can't reproduce that error anymore other PR might fix it, can you test both together? I can maybe combine both PRs then👍 https://github.com/cyberbotics/webots_ros2/pull/838 Thank you

ygoumaz commented 1 year ago

Yes, let's combine both PRs together as they have the same purpose to fix the moveit example.

ygoumaz commented 1 year ago

Rolling tests failures are not related to this PR. I have updated the branch to fix the issue using the namespace instead. Can you confirm that it is still working on your side?

On my side, the ROS distribution is iron, which may be the source of the problem. Are you testing on humble?

ygoumaz commented 1 year ago

I tested on humble and it works fine. It seems to be a problem with the iron distribution. Something probably changed. I don't know if it is a bug of moveit or if we should tune something in the parameters.

skpawar1305 commented 1 year ago

I tested on humble and it works fine. It seems to be a problem with the iron distribution. Something probably changed. I don't know if it is a bug of moveit or if we should tune something in the parameters.

thank you for adding the remappings I confirm that moveit works sorry for not mentioning that we use Humble