ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

Does not load planning adapter plugin

asked 2021-04-15 05:01:58 -0500

tidenhub gravatar image

Hello,

I'm trying to write my own planning adapter plugin based on the Tutorial: http://wiki.ros.org/industrial_trajec...

The build does not throw any errors but during the start of the launch file I get the following error:

[ERROR] [1618479719.360767428]: Exception while loading planning adapter plugin 'safety_planning_request_adapters/AddSafety': According to the loaded plugin descriptions the class safety_planning_request_adapters/AddSafety with base class type planning_request_adapter::PlanningRequestAdapter does not exist. Declared types are  chomp/OptimizerAdapter default_planner_request_adapters/AddIterativeSplineParameterization default_planner_request_adapters/AddTimeOptimalParameterization default_planner_request_adapters/AddTimeParameterization default_planner_request_adapters/Empty default_planner_request_adapters/FixStartStateBounds default_planner_request_adapters/FixStartStateCollision default_planner_request_adapters/FixStartStatePathConstraints default_planner_request_adapters/FixWorkspaceBounds

planning_request_adapters_plugin_description.xml:

<library path="libsafety_planning_request_adapters">
  <class name="safety_planning_request_adapters/AddSafety"
         type="safety_planning_request_adapters::AddSafety"
         base_class_type="planning_request_adapter::PlanningRequestAdapter">
    <description>
    </description>
  </class>
</library>

package.xml:

<package format="3">
  <name>safety_planning_request_adapters</name>
  <version>0.0.1</version>
  <description>The safety_planning_request_adapters package</description>
  <maintainer email="david.tiede@mailbox.tu-dresden.de">David Tiede</maintainer>
  <license>TODO</license>
  <buildtool_depend>catkin</buildtool_depend>
  <depend>moveit_ros_planning</depend>
  <depend>roscpp</depend>
  <depend>std_msgs</depend>
  <depend>trajectory_msgs</depend>
  <export>
    <moveit_core plugin="${prefix}/planning_request_adapters_plugin_description.xml"/>
  </export>
</package>

CMakeLists.txt

cmake_minimum_required(VERSION 3.0.2)
project(safety_planning_request_adapters)

find_package(catkin REQUIRED COMPONENTS
        roscpp
        std_msgs
        moveit_ros_planning
        trajectory_msgs)

catkin_package(
        LIBRARIES ${PROJECT_NAME}
        CATKIN_DEPENDS moveit_ros_planning trajectory_msgs
)

include_directories(${catkin_INCLUDE_DIRS})

add_library(${PROJECT_NAME} src/add_safety.cpp)
target_link_libraries(${PROJECT_NAME} ${catkin_LIBRARIES})


install(TARGETS ${PROJECT_NAME}
        LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION})

install(DIRECTORY include/${PROJECT_NAME}/
        DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION})

install(FILES planning_request_adapters_plugin_description.xml
        DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})

Repository: https://git-st.inf.tu-dresden.de/tide...

ROS_VERSION=1
ROS_PYTHON_VERSION=2
ROS_DISTRO=melodic

I don't know what step I have missed or which line might be wrong. Any tips would be appreciated.

edit retag flag offensive close merge delete

Comments

It's very likely the tutorial you refer to has bit-rotted, and your planning adapter is missing something which newer versions of MoveIt require.

I'd suggest consulting the MoveIt version of the tutorial: Creating MoveIt Plugins.

gvdhoorn gravatar image gvdhoorn  ( 2021-04-15 10:49:08 -0500 )edit

@gvdhoorn I saw this tutorial, but this one is only about integrating the available planning adapters.

tidenhub gravatar image tidenhub  ( 2021-04-16 04:30:10 -0500 )edit

I linked the wrong tutorial.

I've updated my comment.

It's not specifically about planning adapters, but the same infrastructure is used for them.

gvdhoorn gravatar image gvdhoorn  ( 2021-04-16 05:38:01 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
0

answered 2021-04-20 11:46:43 -0500

tidenhub gravatar image

updated 2021-04-20 11:47:04 -0500

I found a solution. Some dependencies were missing in the package.xml:

  <depend>moveit_core</depend>
  <depend version_gte="1.11.2">pluginlib</depend>
edit flag offensive delete link more

Question Tools

Stats

Asked: 2021-04-15 05:01:58 -0500

Seen: 674 times

Last updated: Apr 20 '21