moveit / moveit2

:robot: MoveIt for ROS 2
https://moveit.ai/
BSD 3-Clause "New" or "Revised" License
983 stars 493 forks source link

MoveIt2 Setup Assistant generated demo.launch.py error #2837

Open nilp-dromeda opened 1 month ago

nilp-dromeda commented 1 month ago

Description

After correctly following the MoveIt2 setup assistant tutorial, I decided to checkout if the output of the setup assistant was properly working. When running demo.launch.py it always ends in an error.

Your environment

Steps to reproduce

  1. Use Moveit Setup Assistant to generate moveit_config package.
  2. Run demo.launch.py

Expected behaviour

Rviz should pop up and nothing should crash.

Actual behaviour

Do not even get to the point of launching Rviz. Program is exited with the below error:

[ERROR] [launch]: Caught exception in launch (see debug for traceback): Expected 'value' to be one of [<class 'float'>, <class 'int'>, <class 'str'>, <class 'bool'>, <class 'bytes'>], but got '()' of type '<class 'tuple'>'
sjahr commented 3 weeks ago

Do you mind posting the full error log? Hard to tell what is happening based on the single line. Is it maybe related to https://github.com/moveit/moveit2/issues/2694? In general the MSA is not in a good state right now unfortunately

itohemon commented 1 week ago

I also ran into the same message when I went through the setup_assistant_tutorial.

I fixed the message by modifying config/moveit_controllers.yaml as follows:

# MoveIt uses this configuration for controller management

moveit_controller_manager: moveit_simple_controller_manager/MoveItSimpleControllerManager

moveit_simple_controller_manager:
  controller_names:
    - panda_arm_controller
    - hand_controller

  panda_arm_controller:
    type: FollowJointTrajectory
    action_ns: follow_joint_trajectory
    default: true
    joints:
      - panda_joint1
      - panda_joint2
      - panda_joint3
      - panda_joint4
      - panda_joint5
      - panda_joint6
      - panda_joint7
    action_ns: follow_joint_trajectory
    default: true
  hand_controller:
    type: GripperCommand
#    joints:  # Comment out this line
#      []     # Comment out this line
    action_ns: gripper_cmd
    default: true

It seems that it is not good that the joint of the hand_controller in the moveit_controllers is empty here.