Ask Your Question
0

Cannot connect MoveIt with Gazebo

asked 2021-05-24 09:48:55 -0600

Samarth Jain gravatar image

updated 2021-05-24 17:08:35 -0600

jayess gravatar image

Hi, I am new to ROS and trying to connect MoveIt with Gazebo simulation for a scara robot. I am facing with this particular error. I have created the urdf file and tuned all the joints accordingly.

RLException: unused args [execution_type] for include of [/home/mrj/catkin_ws/src/scara_moveit_config/launch/scara_moveit_controller_manager.launch.xml] The traceback for the exception was written to the log file

Below is my scara_moveit_controller_manager.launch.xml file

<launch>
  <rosparam file="$(find scara_moveit_config)/config/controllers.yaml"/>
  <param name="use_controller_manager" value="false"/>
  <param name="trajectory_execution/execution_duration_monitoring" value="false"/>
  <param name="moveit_controller_manager" value="moveit_simple_controller_manager/MoveItSimpleControllerManager"/>
</launch>

Controllers.yaml

controller list:
  - name: arm_controller
    action_ns: follow_joint_trajectory
    type: FollowJointTrajectory
    joints:
      - base_link_link_01
      - link_01_link_02
      - link_02_link_03

  - name: gripper_controller
    action_ns: follow_joint_trajectory
    type: FollowJointTrajectory
    joints:
      - link_03_link_04 </launch>

I had created a joints_names.yaml file to load in the parameter server

controller_joint_names: [base_link_link_01,link_01_link_02,link_02_link_03,link_03_link_04]

And this is the main planning_execution file I am running

<launch>
    <rosparam command="load" file="$(find scara_moveit_config)/config/joint_names.yaml"/>

    <include file="$(find scara_moveit_config)/launch/planning_context.launch">
        <arg name="load_robot_description" value="true"/>
    </include>

    <node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher">
        <param name="/use_gui" value="false"/>
        <rosparam param="/source_list">[/joint_states]</rosparam>
    </node>

    <include file="$(find scara_moveit_config)/launch/move_group.launch">
        <arg name="publish_monitored_planning_scene" value="true"/>
    </include>

    <include file="$(find scara_moveit_config)/launch/moveit_rviz.launch">
        <arg name="config" value="true"/>
    </include>
</launch>

Thanks for your help.

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
2

answered 2021-08-14 22:02:57 -0600

FinleyGou gravatar image

I've just met the same problem. The root cause is in the file trajectory_execution.launch.xml, the latest ROS version produces an extra line <arg name="execution_type" value="$(arg execution_type)"/> in this file. Delete it and the gazebo && rviz

edit flag offensive delete link more

Comments

Thank you. I also had the same issue. It occurred when I tried to launch move_group.launch from the MoveIt package. After deleting that line the error got solved.

ckashis gravatar image ckashis  ( 2021-10-08 01:22:38 -0600 )edit
1

answered 2021-05-24 16:18:35 -0600

Looks to me like somewhere in your launch file inclusion chain you are passing an arg called execution_type to scara_moveit_controller_manager.launch.xml, but that file does not have an argument called execution_type (as seen in the original question). The so-called "planning_execution" launch file provided in the original question <include>s several launch files that could be the root cause (planning_context.launch, move_group.launch, and moveit_rviz.launch). Without seeing all of the launch files it's tough to know which one is the root cause. I'd suggest looking in your package for a launch file that uses an <include> tag with scara_moveit_controller_manager.launch.xml that also has an <arg name="execution_type" value="...." /> tag as a child. This is most likely where the error posted is coming from.

Note, I've occasionally found rqt_launchtreevery useful for debugging issues like this: http://wiki.ros.org/rqt_launchtree

edit flag offensive delete link more

Comments

Thank you for your suggestion. rqt_launchtree is not available for noetic as of now. Is there any alternative available for that?

Samarth Jain gravatar image Samarth Jain  ( 2021-05-25 11:31:58 -0600 )edit

You could certainly building/running rqt_launchtree from source. It might work. You could also use the --files and --dump-params args to roslaunch. Although, it might just be easier to do a bit of work with grep to find where the execution_type arg shows up in your package. Something like roslaunch <PATH_TO_PLANNING_EXECUTION_LAUNCH> | xargs grep execution_type - would show you all launch files included and which ones had the phrase execution_type showing up. That would be a pretty good start

jarvisschultz gravatar image jarvisschultz  ( 2021-05-25 18:58:16 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2021-05-24 09:33:18 -0600

Seen: 469 times

Last updated: May 24 '21