Giter Site home page Giter Site logo

moveit_resources's Introduction

MoveIt Resources

This repository includes various resources (URDFs, meshes, moveit_config packages) needed for MoveIt testing.

GitHub Actions: Formatting (pre-commit)) Build and Test

Included Robots

  • PR2
  • Fanuc M-10iA
  • Franka Emika Panda

Notes

The benchmarking resources have been moved to https://github.com/ros-planning/moveit_benchmark_resources.

moveit_resources's People

Contributors

130s avatar andyze avatar christian-rauch avatar ct2034 avatar davetcoleman avatar dlu avatar edran avatar gavanderhoorn avatar henningkayser avatar hersh avatar isucan avatar jafarabdi avatar julienking avatar kineticsystem avatar ksatyaki avatar marqrazz avatar mayman99 avatar mlautman avatar nbbrooks avatar pac48 avatar rfeistenauer avatar rhaschke avatar sea-bass avatar simonschmeisser avatar sjahr avatar stephanie-eng avatar tobias-fischer avatar tylerjw avatar v4hn avatar willcbaker avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

moveit_resources's Issues

Panda arm never finishes trajectory execution

Install MoveIt docker container by following:

https://moveit.picknik.ai/humble/doc/how_to_guides/how_to_setup_docker_containers_in_ubuntu.html

Inside container:

source install/setup.bash
ros2 launch moveit_resources_panda_moveit_config demo.launch.py

Then:

  • Add -> Motion Planning
    • Planning Group -> "panda_arm"
    • Goal State -> "random valid"
  • Press Plan
  • Press Execute
[move_group-4] [WARN] [1670205699.415531727] [moveit.simple_controller_manager.follow_joint_trajectory_controller_handle]: waitForExecution timed out
[move_group-4] [ERROR] [1670205699.415568297] [moveit_ros.trajectory_execution_manager]: Controller is taking too long to execute trajectory (the expected upper bound for the trajectory execution was 16.675617 seconds). Stopping trajectory.
[move_group-4] [INFO] [1670205699.415592815] [moveit.simple_controller_manager.follow_joint_trajectory_controller_handle]: Cancelling execution for panda_arm_controller

Same present when installing Humble packages:

RUN apt -y install ros-humble-ros-base
RUN apt -y install ros-humble-demo-nodes-cpp
RUN apt -y install python3-colcon-common-extensions
RUN apt -y install ros-humble-rviz2
RUN apt -y install ros-humble-action-tutorials-cpp
RUN apt -y install ros-humble-moveit
RUN apt -y install ros-humble-moveit-servo
RUN apt -y install ros-humble-rqt-graph ros-humble-rqt-image-view
RUN apt -y install ros-humble-moveit-resources-panda-moveit-config
RUN apt -y install ros-humble-controller-manager
RUN apt -y install ros-humble-joint-state-broadcaster
RUN apt -y install ros-humble-moveit-planners-chomp
RUN apt -y install ros-humble-joint-trajectory-controller
RUN apt -y install ros-humble-ros2-control ros-humble-ros2-controllers ros-humble-moveit-simple-controller-manager

Missing license/attribution?

The fanuc_description and fanuc_moveit_configuration packages added in #7 are copies of the respective M-10iA packages in ros-industrial/fanuc.

Those packages are licensed under the Apache v2 BSD 3-clause. If I'm not mistaken, that means that attribution / copyright notices must be retained and a copy of "the disclaimer" as well.

The stripped versions of the M-10iA packages don't seem to include that, so it would seem like that would need to be added in order to comply with the license.

panda_ros_controllers.yaml is broken

panda_ros_controllers.yaml is broken in the released version of Foxy which impacts the tutorial. You get a bunch of errors about a missing type for panda_hand_controller.

If you go ahead and build this package from source and install the package position_controllers you get a new issue where it complains about position_controllers/GripperActionController not existing. As far as I can tell that's not a controller in the position_controllers package from ros2_control. If I change it to the one type that is in there: position_controllers/JointGroupPositionController and the joints lines below like this to get it to initialize:

panda_hand_controller:
  ros__parameters:
    joints:
      - panda_finger_joint1

I then get this error from the rviz demo tutorial:

[move_group-4] [WARN] [1628822734.178116054] [moveit.simple_controller_manager.gripper_controller_handle]: Waiting for panda_hand_controller/gripper_cmd to come up
[move_group-4] [ERROR] [1628822739.178241544] [moveit.simple_controller_manager.gripper_controller_handle]: Action client not connected: panda_hand_controller/gripper_cmd

Port launch files to ROS 2

I'm adding this issue to track TODOs in the synced ros2 branch.
Currently, we are only using the description and config files from this package (MGI hasn't been ported yet). In the future, we want to support the same launch features but we probably have to redesign the structure a lot, at least if we are fully switching to Python launch files. Design discussions (see ros-planning/moveit2#146) should continue the next weeks as MoveGroup and MoveGroupInterface migration is making progress.

world frame not set in MTC demos

Could it be that #86 introduced a regression in the MTC (cartesian) demo? With fixed, the world frame is not set when running e.g.:

  • roslaunch moveit_task_constructor_demo demo.launch
  • rosrun moveit_task_constructor_demo cartesian

CHOMP pipeline on Galactic Distro

I would like to use the CHOMP Pipeline but I cannot figure out how to introduce it on MoveIt2.
Looking at the official documentation it looks like it still refers to the first version of ROS.
I know that it is already implemented on the Humble Distro (https://github.com/ros-planning/moveit_resources/blob/humble/panda_moveit_config/launch/demo.launch.py#L29) but there is no reference within the Galactic one (https://github.com/ros-planning/moveit_resources/blob/galactic/panda_moveit_config/launch/demo.launch.py).
Is there a way use CHOMP with Galactic Distro?

CMake Warning 12.04 Hydro

Not sure what the fix is but I'm sure its easy:

CMake Warning at /home/dave/ros/ws_ros/install_isolated/share/catkin/cmake/catkin_package.cmake:406 (message):
  catkin_package() include dir
  '/home/dave/ros/ws_moveit/build/moveit_resources/include' should be placed
  in the devel space instead of the build space
Call Stack (most recent call first):
  /home/dave/ros/ws_ros/install_isolated/share/catkin/cmake/catkin_package.cmake:98 (_catkin_package)
  moveit_resources/CMakeLists.txt:7 (catkin_package)

Rviz is crashing on changing global fixed frame

I installed moveit2 package from source (branch - Humble).

I am trying to run the demo.launch.py of moveit_resources_fanuc_moveit_config package. It's working and rviz is starting without any errors (although with few warnings). When I am trying to change the global fixed frame (like from base_link -> link_1, base_link -> link_2, etc.) inside the rviz, then it is crashing with below errors:

[rviz2-1] [INFO] [1683126063.065888770] [interactive_marker_display_93866399579760]: Service response received for initialization
[rviz2-1] [INFO] [1683126073.831245395] [interactive_marker_display_93866399579760]: Target frame is now link_2
[ERROR] [rviz2-1]: process has died [pid 9398, exit code -11, cmd '/opt/ros/humble/lib/rviz2/rviz2 -d /home/anubhav1772/ros2_ws/install/moveit_resources_fanuc_moveit_config/share/moveit_resources_fanuc_moveit_config/launch/moveit.rviz --ros-args -r __node:=rviz2 --params-file /tmp/launch_params_u6sw7fhg --params-file /tmp/launch_params_o7z5eiq_ --params-file /tmp/launch_params_wppoml0c --params-file /tmp/launch_params_lidik1zk'].

The above error message is not helpful in detecting the issue(s). It consists of a number of param files. I looked at all of them, they just contain the urdf and .yaml contents in them.

I also tested the demo.launch.py of moveit_resources_panda_moveit_config package. It is working perfectly and I am able to change the global fixed frame without any error or warning. I went through the demo.launch.py of both the packages, I found nothing that can help me solve above problem. I don't know if there is something wrong with the moveit_resources_fanuc_moveit_config package or moveit2 framework or rviz2.

Also, on running demo.launch.py of fanuc_moveit_config package, I am getting below warning (not sure if this is related to above issue or not, but not getting this warning in case of panda package):

[rviz2-1] Warning: class_loader.impl: SEVERE WARNING!!! A namespace collision has occurred with plugin factory for class rviz_default_plugins::displays::InteractiveMarkerDisplay. New factory will OVERWRITE existing one. This situation occurs when libraries containing plugins are directly linked against an executable (the one running right now generating this message). Please separate plugins out into their own library or just don't link against the library and use either class_loader::ClassLoader/MultiLibraryClassLoader to open.
[rviz2-1]          at line 253 in /opt/ros/humble/include/class_loader/class_loader/class_loader_core.hpp
[rviz2-1] [INFO] [1683145287.963376038] [moveit_rdf_loader.rdf_loader]: Loaded robot model in 0.00497962 seconds
[rviz2-1] [INFO] [1683145287.963422573] [moveit_robot_model.robot_model]: Loading robot model 'fanuc'...
[INFO] [spawner-7]: process has finished cleanly [pid 17223]
[rviz2-1] [ERROR] [1683145291.022834726] [moveit_ros_visualization.motion_planning_frame]: Action server: /recognize_objects not available
[rviz2-1] [INFO] [1683145291.056534173] [moveit_ros_visualization.motion_planning_frame]: MoveGroup namespace changed: / -> . Reloading params.
[rviz2-1] [INFO] [1683145291.137802196] [moveit_rdf_loader.rdf_loader]: Loaded robot model in 0.00311476 seconds
[rviz2-1] [INFO] [1683145291.137871193] [moveit_robot_model.robot_model]: Loading robot model 'fanuc'...

Specifications

  • ROS2 (Humble)
  • Ubuntu 22.04

[ERROR] "package 'warehouse_ros_mongo' not found

While playing with the STOMP motion planner, I came accorss the command ros2 launch moveit_resources_panda_moveit_config demo.launch.py db:=True. Unfortunately, it returns the following error [ERROR] "package 'warehouse_ros_mongo' not found

Below are the complete logs:

$ ros2 launch moveit_resources_panda_moveit_config demo.launch.py db:=True
[INFO] [launch]: All log files can be found below /home/user/.ros/log/2023-09-28-03-43-53-748734-dell-31909
[INFO] [launch]: Default logging verbosity is set to INFO
[ERROR] [launch]: Caught exception in launch (see debug for traceback): "package 'warehouse_ros_mongo' not found, searching: ['/home/user/moveit_ws_iron/install/moveit2_tutorials', '/home/user/moveit_ws_iron/install/moveit_visual_tools', '/home/user/moveit_ws_iron/install/rviz_visual_tools', '/home/user/moveit_ws_iron/install/moveit_task_constructor_visualization', '/home/user/moveit_ws_iron/install/moveit_task_constructor_demo', '/home/user/moveit_ws_iron/install/moveit_task_constructor_capabilities', '/home/user/moveit_ws_iron/install/moveit_task_constructor_core', '/home/user/moveit_ws_iron/install/rviz_marker_tools', '/home/user/moveit_ws_iron/install/pilz_industrial_motion_planner_testutils', '/home/user/moveit_ws_iron/install/moveit_runtime', '/home/user/moveit_ws_iron/install/moveit', '/home/user/moveit_ws_iron/install/kinova_gen3_7dof_robotiq_2f_85_moveit_config', '/home/user/moveit_ws_iron/install/kinova_gen3_6dof_robotiq_2f_85_moveit_config', '/home/user/moveit_ws_iron/install/moveit_planners', '/home/user/moveit_ws_iron/install/pilz_industrial_motion_planner', '/home/user/moveit_ws_iron/install/pick_ik', '/home/user/moveit_ws_iron/install/moveit_task_constructor_msgs', '/home/user/moveit_ws_iron/install/moveit_ros_control_interface', '/home/user/moveit_ws_iron/install/moveit_plugins', '/home/user/moveit_ws_iron/install/moveit_simple_controller_manager', '/home/user/moveit_ws_iron/install/moveit_setup_assistant', '/home/user/moveit_ws_iron/install/moveit_setup_srdf_plugins', '/home/user/moveit_ws_iron/install/moveit_setup_core_plugins', '/home/user/moveit_ws_iron/install/moveit_setup_controllers', '/home/user/moveit_ws_iron/install/moveit_setup_app_plugins', '/home/user/moveit_ws_iron/install/moveit_setup_framework', '/home/user/moveit_ws_iron/install/moveit_servo', '/home/user/moveit_ws_iron/install/moveit_ros', '/home/user/moveit_ws_iron/install/moveit_ros_visualization', '/home/user/moveit_ws_iron/install/moveit_py', '/home/user/moveit_ws_iron/install/moveit_hybrid_planning', '/home/user/moveit_ws_iron/install/moveit_ros_planning_interface', '/home/user/moveit_ws_iron/install/moveit_ros_benchmarks', '/home/user/moveit_ws_iron/install/moveit_ros_warehouse', '/home/user/moveit_ws_iron/install/moveit_ros_robot_interaction', '/home/user/moveit_ws_iron/install/moveit_ros_perception', '/home/user/moveit_ws_iron/install/moveit_resources_prbt_pg70_support', '/home/user/moveit_ws_iron/install/moveit_resources_prbt_moveit_config', '/home/user/moveit_ws_iron/install/moveit_ros_move_group', '/home/user/moveit_ws_iron/install/moveit_planners_ompl', '/home/user/moveit_ws_iron/install/moveit_kinematics', '/home/user/moveit_ws_iron/install/moveit_ros_planning', '/home/user/moveit_ws_iron/install/moveit_ros_occupancy_map_monitor', '/home/user/moveit_ws_iron/install/moveit_resources_prbt_support', '/home/user/moveit_ws_iron/install/moveit_resources_prbt_ikfast_manipulator_plugin', '/home/user/moveit_ws_iron/install/moveit_resources', '/home/user/moveit_ws_iron/install/moveit_resources_pr2_description', '/home/user/moveit_ws_iron/install/moveit_resources_panda_moveit_config', '/home/user/moveit_ws_iron/install/dual_arm_panda_moveit_config', '/home/user/moveit_ws_iron/install/moveit_resources_panda_description', '/home/user/moveit_ws_iron/install/moveit_resources_fanuc_moveit_config', '/home/user/moveit_ws_iron/install/moveit_resources_fanuc_description', '/home/user/moveit_ws_iron/install/moveit_planners_stomp', '/home/user/moveit_ws_iron/install/moveit_planners_chomp', '/home/user/moveit_ws_iron/install/moveit_chomp_optimizer_adapter', '/home/user/moveit_ws_iron/install/chomp_motion_planner', '/home/user/moveit_ws_iron/install/moveit_core', '/home/user/moveit_ws_iron/install/moveit_msgs', '/home/user/moveit_ws_iron/install/moveit_configs_utils', '/home/user/moveit_ws_iron/install/moveit_common', '/home/user/moveit_ws_iron/install/kortex_bringup', '/home/user/moveit_ws_iron/install/kortex_driver', '/home/user/moveit_ws_iron/install/kortex_description', '/home/user/moveit_ws_iron/install/kortex_api', '/opt/ros/iron']"

There is no such package availble as shown below:

$ apt-cache policy ros-iron-warehouse-ros-*
ros-iron-warehouse-ros-sqlite:
  Installed: 1.0.3-3jammy.20230911.051457
  Candidate: 1.0.3-3jammy.20230911.051457
  Version table:
 *** 1.0.3-3jammy.20230911.051457 500
        500 http://packages.ros.org/ros2/ubuntu jammy/main amd64 Packages
        100 /var/lib/dpkg/status
ros-iron-warehouse-ros-sqlite-dbgsym:
  Installed: (none)
  Candidate: 1.0.3-3jammy.20230911.051457
  Version table:
     1.0.3-3jammy.20230911.051457 500
        500 http://packages.ros.org/ros2/ubuntu jammy/main amd64 Packages
ros-iron-warehouse-ros-dbgsym:
  Installed: (none)
  Candidate: 2.0.4-4jammy.20230908.180039
  Version table:
     2.0.4-4jammy.20230908.180039 500
        500 http://packages.ros.org/ros2/ubuntu jammy/main amd64 Packages

Add kuka robot for moveit_opw_kinematics_plugin tests?

The package moveit_opw_kinematics_plugin [1] uses the Fanuc robot from this package for testing. In addition, the tests use a Kuka KR 6.

My questions

  • Can I create a pull request and add the Kuka KR 6 support package and moveit_config [2], copied and edited from kuka_experimental [3]?
  • Is the Apache 2.0 License compatible with this repository?
  • Are there any other requirements?

Why another robot?
The Kuka KR6 has different sign conventions for the rotation around its axes. This improves the test coverage of the plugin.

Anyway, everything works fine as it is, I guess it is just more elegant to have all the test resources in a single place.

Any thoughts? @simonschmeisser @gavanderhoorn

[1] moveit_opw_kinematics_plugin
[2] kuka_test_resources
[3] kuka_experimental
[4] plugin tests discussion

#19 introduced a conflicting set of launch files

With #19 being merged, we now have the following error:

$ roslaunch moveit_resources demo.launch 
RLException: multiple files named [demo.launch] in package [moveit_resources]:
- /vol/famula/nightly/ros/melodic/share/moveit_resources/fanuc_moveit_config/launch/demo.launch
- /vol/famula/nightly/ros/melodic/share/moveit_resources/panda_moveit_config/launch/demo.launch
Please specify full path instead

I think, as long as the tests explicitly specify which launch file(s) to use, there is no problem.
Nevertheless, should we take any action, e.g. remove fanuc, or add prefixes to all launch files?

[panda] joint limits do not match the specification

Hi.

The joint limits defined in the URDF of the panda manipulator are either (1) different from the specification or (2) slightly exceed the specified min/max.

Expected (as per the datasheet provided by the manufacturer):

  • joints 1, 3, 5, 7
    • [-166:166] deg
  • joint 2
    • [-101:101] deg
  • joint 4
    • [-176:-4] deg
  • joint 6
    • [-1:215] deg

Defined soft lower and upper limits:

  • joints 1, 3, 5, 7
    • [-2.8973:2.8973] rad = [-166.003062:166.003062] deg
    • exceeds the limit by 0.003 degrees
  • joint 2
    • [-1.7628:1.7628] rad = [-101.001:101.001] deg
    • exceeds the limit by 0.001 degrees
  • joint 4
    • [-3.0718:0.0175] rad = [-176.0011:1.00267] deg
    • upper limit is WRONG; difference is 5 degrees
    • lower limit exceeds the spec by 0.001 degrees
  • joint 6
    • [-0.0175:3.7525] rad = [-1.00267:215.0024] deg
    • exceeds the limit by 0.002 degrees

Could you consider fixing these? Thank you.

Remove duplication introduced by using a panda.urdf & panda.urdf.xacro

To enable support for Ignition Gazebo, the panda_description package currently contains a panda.urdf and a newer panda.urdf.xacro, introduced by #178.
The XACRO has been created to support finding package resource files dynamically which is needed for Gazebo. Unfortunately, the URDF is still required by RobotModelTestUtils. There are two possible solutions to this problem:

Update acceleration limits for robot configs

It looks like the acceleration limits for the robots in this repository do not match the values from here. I'm not positive these are the correct limits to use, but the values in this repository come from this commit. The justification of the values was

As MoveIt! does not support jerk limits, the acceleration limits provided here are the highest values that guarantee
that no jerk limits will be violated. More precisely, applying Euler differentiation in the worst case (from min accel
to max accel in 1 ms) the acceleration limits are the ones that satisfy
max_jerk = (max_acceleration - min_acceleration) / 0.001

I am also not positive that switching between the minimum and maximum accelerations in 1 ms is the best estimate of jerk. There is a parameter called resample_dt in TOTG that creates waypoints every 100 ms by default. It seems that the jerk estimate would be (max_acceleration - min_acceleration) / 0.1 in the worst case. Of course, JTC interpolation also has the potential to significantly impact this. Regardless, since this commit added a parameter to enable/disable jerk limits, I believe the max_acceleration values can be updated. There are at least two options that are worth considering: 1) update the acceleration values joint_limits.yaml or 2) add another configuration joint_limits_jerk.yaml or something like that with new values. Option 1) is concerning because it's not opt-in.

I think this is something worth discussing. I'll create a PR with this issue.

Stomp Planning Config in `panda_moveit_config` is invalid in ROS 2

panda_moveit_config/config/stomp_planning.yaml

As far as I can tell, StompPlannerManager is not ported to ROS 2. Is that true, @Levi-Armstrong?

Either it should be removed from the ROS 2 configuration or it should be updated to have simpler parameter types that are valid in ROS 2. Failing to do so leads to the following error when this is loaded into a launch file.

RuntimeError: Failed to handle type {'class': 'stomp_moveit/NormalDistributionSampling', 'stddev': [0.05, 0.8, 1.0, 0.8, 0.4, 0.4, 0.4]}

[ros2] panda_moveit_config demo uses CHOMP, should use OMPL

Launch the demo:

ros2 launch moveit_resources_panda_moveit_config demo.launch.py

Then plan a motion in RViz. You can see from the terminal that CHOMP is being used, but it should be OMPL.

[move_group-4] [INFO] [1651673914.481985983] [moveit_move_group_capabilities_base.move_group_capability]: Using planning pipeline 'chomp'

I suspect it's an issue with moveit_configs_utils.

[ROS2] Make a Python module for common Python launching stuff

With a client, we started using a launch_common.py script that defines these functions / variables:

def load_file(package_name, file_path):
def load_yaml(package_name, file_path):
def load_robot_description();
planning_pipeline_config

It can be used from other Python files like this:

import launch_common
...
        parameters=[
            robot_description,
            launch_common.robot_description_semantic,
            launch_common.robot_description_planning,
            launch_common.robot_description_kinematics,
            ompl_planning_pipeline_config
        ]
...
    ompl_planning_yaml = launch_common.load_yaml(
        'moveit_resources_panda_moveit_config', 'config/ompl_planning.yaml'
    )

This reduces copy/paste a lot!

Hidden exec dependencies

Many launch files from this package make use of other packages of moveit, but none are mentioned in package.xml. I assume it is to prevent circular dependencies?

Currently, it makes building a little inconvenient. When I do

make clean
make tests
make run_tests

some tests in moveit fail because e.g. move_group isn't built.

I know that issuing a make all would fix it, but it seems wrong to me that a target doesn't build everything it needs. In the particular case of move_group missing in tests, it'd probably help to add moveit_ros_move_group as a <test_depend> and call the correct add_dependencies() in CMake. But that wouldn't help with "user-side" issues (if somebody just depends on moveit_resources and thinks he could call all the launch files).

I'm not sure if there is a way to fix this, I just wanted to point it out.

NB: According to ros/catkin#1008 , it is not possible to create circular dependencies even if you mix <build_depend> and exec_depend`.

Adding inertia for gazebo?

I've been trying to use rolling + moveit2 + gazebo fortress for simulation.
And since i am using moveit2, i tried to use moveit_resources URDF files rather frank_ros2 URDF files.

But i wasn't able to spawn a robot into gazebo fortress due to missing inertia.
see this question and issue.

I understand just for moveit2, it's not necessary but many will try to use moveit2 along with gazebo.
so might consider adding inertia?

or should i raise same issue to frank_ros2 repo?

this repository has inertia in panda.urdf.
not sure how he got inertia for panda but it works in gazebo fortress.

prbt-ikfast-manipulator-plugin (here) clash with prbt-ikfast-manipulator-plugin (pilz)

I'm not a user of these packages, but during a scripted installation of all released ROS Noetic packages, I ran into the following problem:

Unpacking ros-noetic-prbt-ikfast-manipulator-plugin (0.6.0-1focal.20220515.071829) ...
dpkg: error processing archive /tmp/apt-dpkg-install-P8q7sZ/2909-ros-noetic-prbt-ikfast-manipulator-plugin_0.6.0-1focal.20220515.071829_amd64.deb (--unpack):
 trying to overwrite '/opt/ros/noetic/lib/libprbt_manipulator_moveit_ikfast_plugin.so', which is also in package ros-noetic-moveit-resources-prbt-ikfast-manipulator-plugin 0.8.2-1focal.20220515.071720

note the trying to overwrite '/opt/ros/noetic/lib/libprbt_manipulator_moveit_ikfast_plugin.so', which is also in package ros-noetic-moveit-resources-prbt-ikfast-manipulator-plugin 0.8.2-1focal.20220515.071720 part.

It appears two released packages are trying to install the same file, in the same location.

If users should not try to install both at the same time, perhaps a breaks relation should be declared, or if desirable, a conflicts relation.

xacro parsing failed

run ros2 launch moveit2_tutorials demo.launch.py rviz_tutorial:=true

result:

[INFO] [launch]: All log files can be found below /home/hu/.ros/log/2023-09-14-14-58-02-932993-hu-ASUS-TUF-Gaming-F15-FX507ZM-FX507ZM-195312
[INFO] [launch]: Default logging verbosity is set to INFO
/home/hu/moveit2/install/moveit_resources_panda_moveit_config/share/moveit_resources_panda_moveit_config
/home/hu/moveit2/install/moveit_resources_panda_moveit_config/share/moveit_resources_panda_moveit_config/config/panda.urdf.xacro
Task exception was never retrieved
future: <Task finished name='Task-2' coro=<LaunchService._process_one_event() done, defined at /opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py:226> exception=InvalidLaunchFileError('py')>
Traceback (most recent call last):
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_description_sources/any_launch_file_utilities.py", line 53, in get_launch_description_from_any_launch_file
return loader(launch_file_path)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_description_sources/python_launch_file_utilities.py", line 68, in get_launch_description_from_python_launch_file
return getattr(launch_file_module, 'generate_launch_description')()
File "/home/hu/moveit2/install/moveit2_tutorials/share/moveit2_tutorials/launch/demo.launch.py", line 48, in generate_launch_description
robot_description_config = xacro.process_file(
File "/home/hu/.local/lib/python3.8/site-packages/xacro/init.py", line 1020, in process_file
process_doc(doc, **kwargs)
File "/home/hu/.local/lib/python3.8/site-packages/xacro/init.py", line 967, in process_doc
eval_all(doc.documentElement, macros, symbols)
File "/home/hu/.local/lib/python3.8/site-packages/xacro/init.py", line 852, in eval_all
if name not in substitution_args_context['arg']:
KeyError: 'arg'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py", line 228, in _process_one_event
await self.__process_event(next_event)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py", line 248, in __process_event
visit_all_entities_and_collect_futures(entity, self.__context))
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 45, in visit_all_entities_and_collect_futures
futures_to_return += visit_all_entities_and_collect_futures(sub_entity, context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 45, in visit_all_entities_and_collect_futures
futures_to_return += visit_all_entities_and_collect_futures(sub_entity, context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 38, in visit_all_entities_and_collect_futures
sub_entities = entity.visit(context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/action.py", line 108, in visit
return self.execute(context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/actions/include_launch_description.py", line 130, in execute
launch_description = self.__launch_description_source.get_launch_description(context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_description_source.py", line 84, in get_launch_description
self._get_launch_description(self.__expanded_location)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_description_sources/any_launch_description_source.py", line 53, in _get_launch_description
return get_launch_description_from_any_launch_file(location)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_description_sources/any_launch_file_utilities.py", line 56, in get_launch_description_from_any_launch_file
raise InvalidLaunchFileError(extension, likely_errors=exceptions)
launch.invalid_launch_file_error.InvalidLaunchFileError: Caught exception when trying to load file of format [py]: 'arg'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.