|
Package Summary
Tags | No category tags. |
Version | 2.11.0 |
License | BSD-3-Clause |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-planning/moveit2.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2024-11-23 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Henning Kayser
- Tyler Weaver
- MoveIt Release Team
Authors
- Mathias Lüdtke
MoveIt ROS Control Plugin
This package provides plugins of base class moveit_controller_manager::MoveItControllerManager
and a new plugin base class for moveit_controller_manager::MoveItControllerHandle
allocators.
The allocator class is necessary because moveit_controller_manager::MoveItControllerHandle
needs a name passed to the constructor.
Two variants are provided, moveit_ros_control_interface::Ros2ControlManager
for interfacing a single ros_control node and moveit_ros_control_interface::Ros2ControlMultiManager
for seamless integration with any number of ros_control nodes.
moveit_ros_control_interface::Ros2ControlManager
This plugin interfaces a single ros_control-driven node in the namespace given in the ~ros_control_namespace
ROS parameter.
It polls all controllers via the list_controllers
service and passes their properties to MoveIt.
The polling is throttled to 1 Hertz.
Handle plugins
The actual handle creation is delegated to allocator plugins of base class moveit_ros_control_interface::ControllerHandleAllocator
.
These plugins should be registered with lookup names that match the corresponding controller types.
Currently plugins for position_controllers/JointTrajectoryController
, velocity_controllers/JointTrajectoryController
and effort_controllers/JointTrajectoryController
are available, which simply wrap moveit_simple_controller_manager::FollowJointTrajectoryControllerHandle
instances.
Setup
In your MoveIt launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
), set the moveit_controller_manager
parameter:
<param name="moveit_controller_manager" value="moveit_ros_control_interface::Ros2ControlManager" />
Make sure to set the ros_control_namespace
parameter to the namespace (without the /controller_manager/ part) of the ros_control-based node you like to interface.
If you are using moveit_setup_assistant
, you can add it to ROBOT_moveit_config/config/moveit_controllers.yaml
, e.g.:
ros_control_namespace: /ROS_CONTROL_NODE
controller_list:
- name: /ROS_CONTROL_NODE/position_trajectory_controller
action_ns: follow_joint_trajectory
type: FollowJointTrajectory
default: true
joints:
- joint_a1
- joint_a2
- joint_a3
- joint_a4
- joint_a5
- joint_a6
- joint_a7
Controller switching
MoveIt can decide which controllers have to be started and stopped. Since only controller names with registered allocator plugins are handed over to MoveIt, this implementation takes care of stopping other conflicting controllers based on their claimed resources and the resources for the to-be-started controllers.
Namespaces
All controller names get prefixed by the namespace of the ros_control node.
For this to work the controller names should not contain slashes. This is a strict requirement if the ros_control namespace is /
.
moveit_ros_control_interface::Ros2ControlMultiManager
This plugin does not need further configuration. It polls the ROS main for services and identifies ros_control nodes automatically.
It spawns moveit_ros_control_interface::Ros2ControlManager
instances with their namespace and takes cares of proper delegation.
Setup
Just set the moveit_controller_manager
parameter in your MoveIt launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
)
<param name="moveit_controller_manager" value="moveit_ros_control_interface::Ros2ControlMultiManager" />
Changelog for package moveit_ros_control_interface
2.11.0 (2024-09-16)
2.10.0 (2024-06-13)
- Revert "Simplify controller manager namespacing (#2210)" This reverts commit 55df0bccd5e884649780b4ceeee80891e563b57b. The deprecated constructor was being used in the same file for the exact use case of enabling namespaces that are not specified by the parameter. There is no replacement for supporting a dynamic server lookup, however the parameter logic could still use simplification.
- Unify log names (#2720) Co-authored-by: Abishalini Sivaraman <<abi.gpuram@gmail.com>>
- CMake format and lint in pre-commit (#2683)
- Contributors: Henning Kayser, Sebastian Jahr, Tyler Weaver
2.9.0 (2024-01-09)
- Fix warning and cleanup unneeded placeholders
(#2566)
- Fix warning and cleanup unneeded placeholders
- Make clang-tidy happy
- Remove print statement
- Node logging for the rest of MoveIt (#2599)
- Merge branch 'main' into dependabot/github_actions/SonarSource/sonarcloud-github-c-cpp-2
- Contributors: Sebastian Jahr, Tyler Weaver
2.8.0 (2023-09-10)
- Simplify controller manager namespacing (#2210)
- Minor cleanup to ros_control_interface and trajectory execution (#2208)
- Contributors: Stephanie Eng
2.7.4 (2023-05-18)
2.7.3 (2023-04-24)
- Replace Variable PROJECT_NAME in CMakeLists.txt with the actual name (#2020)
- Fix controller_manager_plugin's switch controllers functionality (#2116)
- Contributors: Jafar, Shobuj Paul
2.7.2 (2023-04-18)
2.7.1 (2023-03-23)
- Add Warning Message for Out of Date Controller Information (#1983) Co-authored-by: Joseph Schornak <<joe.schornak@gmail.com>> Co-authored-by: Joseph Schornak <<joe.schornak@gmail.com>>
- Update SwitchController API usage (#1996) Fixes deprecated and now removed message fields https://github.com/ros-controls/ros2_control/pull/948
- Contributors: Erik Holum, Henning Kayser
2.7.0 (2023-01-29)
- Fix parameters for ros2_control namespaces (#1833) Co-authored-by: AndyZe <<andyz@utexas.edu>> Co-authored-by: Henning Kayser <<henningkayser@picknik.ai>>
- Fix BSD license in package.xml
(#1796)
- fix BSD license in package.xml
- this must also be spdx compliant
- Contributors: Christian Henkel, Pablo Iñigo Blasco
2.6.0 (2022-11-10)
- Rename MoveItControllerManager. Add deprecation warning
(#1601)
- Rename MoveItControllerManager->Ros2ControlManager. Add deprecation warning.
- Do not rename base class
* Still allow users to load plugins by the old names Co-authored-by: Jafar <<jafar.uruc@gmail.com>>
- Merge PR #1553: Improve cmake files
- Use standard exported targets: export_${PROJECT_NAME} -> ${PROJECT_NAME}Targets
- Improve CMake usage (#1550)
- Support chained controllers
(#1482)
- fix controller list if chained controllers exist
- add comments and clean code
- added additional comments
- fix formatting
- fix white space
- add const reference and chhnage variable name
- simplify logic to only work with one layer chain
- Don't return false when not finding optional parameter
* Update moveit_ros/perception/pointcloud_octomap_updater/src/pointcloud_octomap_updater.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>>
- add debug information
- print controller names
- print controllers with not known type
- load controller dependencies
- start chained controllers in switch
- reverse order of activate controllers
- prevent stoppping controller twice
- revert all debug changes
- add ROS error if a controller chains to more than one
- use loop to index chained connections
- update ros_control
- add empty controller allocator for admittance controller
- fix plugin xml
* Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>>
- fix map indexing
- add comment
* Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: Tyler Weaver <<squirrel428@protonmail.com>> * Typos Co-authored-by: JafarAbdi <<cafer.abdi@gmail.com>> Co-authored-by: Jafar <<jafar.uruc@gmail.com>> Co-authored-by: AndyZe <<andyz@utexas.edu>> Co-authored-by: Vatan Aksoy Tezer <<vatan@picknik.ai>> Co-authored-by: Tyler Weaver <<squirrel428@protonmail.com>> Co-authored-by: AndyZe <<zelenak@picknik.ai>>
- Contributors: AndyZe, Paul Gesel, Robert Haschke, Sebastian Jahr
2.5.3 (2022-07-28)
2.5.2 (2022-07-18)
- Remove unnecessary rclcpp.hpp includes (#1333)
- Contributors: Jafar
2.5.1 (2022-05-31)
2.5.0 (2022-05-26)
- Enable cppcheck (#1224) Co-authored-by: jeoseo <<jeongwooseo2012@gmail.com>>
- Make moveit_common a 'depend' rather than 'build_depend' (#1226)
- 1.1.9
- 1.1.8
- 1.1.7
- 1.1.6
- Contributors: Jafar, Robert Haschke, jeoseo
2.4.0 (2022-01-20)
- moveit_build_options() Declare common build options like CMAKE_CXX_STANDARD, CMAKE_BUILD_TYPE, and compiler options (namely warning flags) once. Each package depending on moveit_core can use these via moveit_build_options().
- Contributors: Robert Haschke
2.3.2 (2021-12-29)
2.3.1 (2021-12-23)
- Fix installation of moveit_ros_control_interface header files (#789)
- Enforce package.xml format 3 Schema (#779)
- Update Maintainers of MoveIt package (#697)
- Update controller_manager_plugin to fix MoveIt-managed controller switching (#785)
- moveit_ros_control_interface: Small comment cleanup (#754)
- Contributors: AndyZe, Dave Coleman, Henning Kayser, Joseph Schornak, Robert Haschke
2.3.0 (2021-10-08)
- moveit_ros_control_interface: Fix dangling reference (#710)
- Port moveit ros control interface to ROS2
(#545)
- Port moveit_ros_control_interface to ROS2
- Multiple fixes to trajectory_execution_manager
- Fix reversed check in switchControllers (#2726)
- Contributors: Jafar Abdi, Nathan Brooks, Joe Schornak, Henning Kayser
2.2.1 (2021-07-12)
1.1.1 (2020-10-13)
- [maint] Add comment to MOVEIT_CLASS_FORWARD (#2315)
- Contributors: Felix von Drigalski
1.1.0 (2020-09-04)
- [feature] Optional cpp version setting (#2166)
- [feature] Remove support for Indigo's ros_control (#2128)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- [fix] Various fixes for upcoming Noetic release (#2180)
- [fix] Fix compiler warnings (#1773)
- [maint] clang-tidy-fix [modernize-loop-convert]{.title-ref} to entire code base (#1419)
- [maint] Switch from include guards to pragma once (#1615)
- [maint] Remove ! from MoveIt name (#1590)
- Contributors: Dave Coleman, Henning Kayser, Jonathan Binney, Robert Haschke, Sandro Magalhães, Sean Yen, Tyler Weaver, Yu, Yan
1.0.6 (2020-08-19)
1.0.5 (2020-07-08)
1.0.4 (2020-05-30)
1.0.3 (2020-04-26)
- [maint] Fix errors: catkin_lint 1.6.7 (#1987)
- [maint] Windows build: Fix binary artifact install locations. (#1575)
- [maint] Use CMAKE_CXX_STANDARD to enforce c++14 (#1607)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- Contributors: Robert Haschke, Sandro Magalhães, Sean Yen
1.0.2 (2019-06-28)
1.0.1 (2019-03-08)
1.0.0 (2019-02-24)
- [fix] catkin_lint issues (#1341)
- Contributors: Robert Haschke
0.10.8 (2018-12-24)
0.10.7 (2018-12-13)
0.10.6 (2018-12-09)
- [maintenance] Code Cleanup (#1196)
- Contributors: Robert Haschke
0.10.5 (2018-11-01)
0.10.4 (2018-10-29)
0.10.3 (2018-10-29)
0.10.2 (2018-10-24)
0.10.1 (2018-05-25)
0.9.11 (2017-12-25)
0.9.10 (2017-12-09)
0.9.9 (2017-08-06)
- [improve] add backward compatibility patch for indigo (#551)
- Contributors: Michael Görner
0.9.8 (2017-06-21)
0.9.7 (2017-06-05)
0.9.6 (2017-04-12)
0.9.5 (2017-03-08)
0.9.4 (2017-02-06)
- [maintenance] clang-format upgraded to 3.8 (#367)
- Contributors: Dave Coleman, Michael Goerner
0.9.3 (2016-11-16)
0.5.7 (2016-01-30)
- C++03 conforming nested templates
- fixed typo, added example config
- added brief decription tags
- formatted code to roscpp style
- improved documentation
- introduced getAbsName
- Added missing lock
- pre-allocate handles
- fixed typos
- set version to match the others
- fixed a lot of typos
- Intitial version of moveit_ros_control_interface package
- Contributors: Mathias Luedtke
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
ament_cmake | |
moveit_common | |
rclcpp_action | |
controller_manager_msgs | |
moveit_core | |
moveit_simple_controller_manager | |
pluginlib | |
trajectory_msgs |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
tiago_moveit_config |
Launch files
Messages
Services
Plugins
Recent questions tagged moveit_ros_control_interface at Robotics Stack Exchange
|
Package Summary
Tags | No category tags. |
Version | 2.11.0 |
License | BSD-3-Clause |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-planning/moveit2.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2024-11-23 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Henning Kayser
- Tyler Weaver
- MoveIt Release Team
Authors
- Mathias Lüdtke
MoveIt ROS Control Plugin
This package provides plugins of base class moveit_controller_manager::MoveItControllerManager
and a new plugin base class for moveit_controller_manager::MoveItControllerHandle
allocators.
The allocator class is necessary because moveit_controller_manager::MoveItControllerHandle
needs a name passed to the constructor.
Two variants are provided, moveit_ros_control_interface::Ros2ControlManager
for interfacing a single ros_control node and moveit_ros_control_interface::Ros2ControlMultiManager
for seamless integration with any number of ros_control nodes.
moveit_ros_control_interface::Ros2ControlManager
This plugin interfaces a single ros_control-driven node in the namespace given in the ~ros_control_namespace
ROS parameter.
It polls all controllers via the list_controllers
service and passes their properties to MoveIt.
The polling is throttled to 1 Hertz.
Handle plugins
The actual handle creation is delegated to allocator plugins of base class moveit_ros_control_interface::ControllerHandleAllocator
.
These plugins should be registered with lookup names that match the corresponding controller types.
Currently plugins for position_controllers/JointTrajectoryController
, velocity_controllers/JointTrajectoryController
and effort_controllers/JointTrajectoryController
are available, which simply wrap moveit_simple_controller_manager::FollowJointTrajectoryControllerHandle
instances.
Setup
In your MoveIt launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
), set the moveit_controller_manager
parameter:
<param name="moveit_controller_manager" value="moveit_ros_control_interface::Ros2ControlManager" />
Make sure to set the ros_control_namespace
parameter to the namespace (without the /controller_manager/ part) of the ros_control-based node you like to interface.
If you are using moveit_setup_assistant
, you can add it to ROBOT_moveit_config/config/moveit_controllers.yaml
, e.g.:
ros_control_namespace: /ROS_CONTROL_NODE
controller_list:
- name: /ROS_CONTROL_NODE/position_trajectory_controller
action_ns: follow_joint_trajectory
type: FollowJointTrajectory
default: true
joints:
- joint_a1
- joint_a2
- joint_a3
- joint_a4
- joint_a5
- joint_a6
- joint_a7
Controller switching
MoveIt can decide which controllers have to be started and stopped. Since only controller names with registered allocator plugins are handed over to MoveIt, this implementation takes care of stopping other conflicting controllers based on their claimed resources and the resources for the to-be-started controllers.
Namespaces
All controller names get prefixed by the namespace of the ros_control node.
For this to work the controller names should not contain slashes. This is a strict requirement if the ros_control namespace is /
.
moveit_ros_control_interface::Ros2ControlMultiManager
This plugin does not need further configuration. It polls the ROS main for services and identifies ros_control nodes automatically.
It spawns moveit_ros_control_interface::Ros2ControlManager
instances with their namespace and takes cares of proper delegation.
Setup
Just set the moveit_controller_manager
parameter in your MoveIt launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
)
<param name="moveit_controller_manager" value="moveit_ros_control_interface::Ros2ControlMultiManager" />
Changelog for package moveit_ros_control_interface
2.11.0 (2024-09-16)
2.10.0 (2024-06-13)
- Revert "Simplify controller manager namespacing (#2210)" This reverts commit 55df0bccd5e884649780b4ceeee80891e563b57b. The deprecated constructor was being used in the same file for the exact use case of enabling namespaces that are not specified by the parameter. There is no replacement for supporting a dynamic server lookup, however the parameter logic could still use simplification.
- Unify log names (#2720) Co-authored-by: Abishalini Sivaraman <<abi.gpuram@gmail.com>>
- CMake format and lint in pre-commit (#2683)
- Contributors: Henning Kayser, Sebastian Jahr, Tyler Weaver
2.9.0 (2024-01-09)
- Fix warning and cleanup unneeded placeholders
(#2566)
- Fix warning and cleanup unneeded placeholders
- Make clang-tidy happy
- Remove print statement
- Node logging for the rest of MoveIt (#2599)
- Merge branch 'main' into dependabot/github_actions/SonarSource/sonarcloud-github-c-cpp-2
- Contributors: Sebastian Jahr, Tyler Weaver
2.8.0 (2023-09-10)
- Simplify controller manager namespacing (#2210)
- Minor cleanup to ros_control_interface and trajectory execution (#2208)
- Contributors: Stephanie Eng
2.7.4 (2023-05-18)
2.7.3 (2023-04-24)
- Replace Variable PROJECT_NAME in CMakeLists.txt with the actual name (#2020)
- Fix controller_manager_plugin's switch controllers functionality (#2116)
- Contributors: Jafar, Shobuj Paul
2.7.2 (2023-04-18)
2.7.1 (2023-03-23)
- Add Warning Message for Out of Date Controller Information (#1983) Co-authored-by: Joseph Schornak <<joe.schornak@gmail.com>> Co-authored-by: Joseph Schornak <<joe.schornak@gmail.com>>
- Update SwitchController API usage (#1996) Fixes deprecated and now removed message fields https://github.com/ros-controls/ros2_control/pull/948
- Contributors: Erik Holum, Henning Kayser
2.7.0 (2023-01-29)
- Fix parameters for ros2_control namespaces (#1833) Co-authored-by: AndyZe <<andyz@utexas.edu>> Co-authored-by: Henning Kayser <<henningkayser@picknik.ai>>
- Fix BSD license in package.xml
(#1796)
- fix BSD license in package.xml
- this must also be spdx compliant
- Contributors: Christian Henkel, Pablo Iñigo Blasco
2.6.0 (2022-11-10)
- Rename MoveItControllerManager. Add deprecation warning
(#1601)
- Rename MoveItControllerManager->Ros2ControlManager. Add deprecation warning.
- Do not rename base class
* Still allow users to load plugins by the old names Co-authored-by: Jafar <<jafar.uruc@gmail.com>>
- Merge PR #1553: Improve cmake files
- Use standard exported targets: export_${PROJECT_NAME} -> ${PROJECT_NAME}Targets
- Improve CMake usage (#1550)
- Support chained controllers
(#1482)
- fix controller list if chained controllers exist
- add comments and clean code
- added additional comments
- fix formatting
- fix white space
- add const reference and chhnage variable name
- simplify logic to only work with one layer chain
- Don't return false when not finding optional parameter
* Update moveit_ros/perception/pointcloud_octomap_updater/src/pointcloud_octomap_updater.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>>
- add debug information
- print controller names
- print controllers with not known type
- load controller dependencies
- start chained controllers in switch
- reverse order of activate controllers
- prevent stoppping controller twice
- revert all debug changes
- add ROS error if a controller chains to more than one
- use loop to index chained connections
- update ros_control
- add empty controller allocator for admittance controller
- fix plugin xml
* Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>>
- fix map indexing
- add comment
* Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: Tyler Weaver <<squirrel428@protonmail.com>> * Typos Co-authored-by: JafarAbdi <<cafer.abdi@gmail.com>> Co-authored-by: Jafar <<jafar.uruc@gmail.com>> Co-authored-by: AndyZe <<andyz@utexas.edu>> Co-authored-by: Vatan Aksoy Tezer <<vatan@picknik.ai>> Co-authored-by: Tyler Weaver <<squirrel428@protonmail.com>> Co-authored-by: AndyZe <<zelenak@picknik.ai>>
- Contributors: AndyZe, Paul Gesel, Robert Haschke, Sebastian Jahr
2.5.3 (2022-07-28)
2.5.2 (2022-07-18)
- Remove unnecessary rclcpp.hpp includes (#1333)
- Contributors: Jafar
2.5.1 (2022-05-31)
2.5.0 (2022-05-26)
- Enable cppcheck (#1224) Co-authored-by: jeoseo <<jeongwooseo2012@gmail.com>>
- Make moveit_common a 'depend' rather than 'build_depend' (#1226)
- 1.1.9
- 1.1.8
- 1.1.7
- 1.1.6
- Contributors: Jafar, Robert Haschke, jeoseo
2.4.0 (2022-01-20)
- moveit_build_options() Declare common build options like CMAKE_CXX_STANDARD, CMAKE_BUILD_TYPE, and compiler options (namely warning flags) once. Each package depending on moveit_core can use these via moveit_build_options().
- Contributors: Robert Haschke
2.3.2 (2021-12-29)
2.3.1 (2021-12-23)
- Fix installation of moveit_ros_control_interface header files (#789)
- Enforce package.xml format 3 Schema (#779)
- Update Maintainers of MoveIt package (#697)
- Update controller_manager_plugin to fix MoveIt-managed controller switching (#785)
- moveit_ros_control_interface: Small comment cleanup (#754)
- Contributors: AndyZe, Dave Coleman, Henning Kayser, Joseph Schornak, Robert Haschke
2.3.0 (2021-10-08)
- moveit_ros_control_interface: Fix dangling reference (#710)
- Port moveit ros control interface to ROS2
(#545)
- Port moveit_ros_control_interface to ROS2
- Multiple fixes to trajectory_execution_manager
- Fix reversed check in switchControllers (#2726)
- Contributors: Jafar Abdi, Nathan Brooks, Joe Schornak, Henning Kayser
2.2.1 (2021-07-12)
1.1.1 (2020-10-13)
- [maint] Add comment to MOVEIT_CLASS_FORWARD (#2315)
- Contributors: Felix von Drigalski
1.1.0 (2020-09-04)
- [feature] Optional cpp version setting (#2166)
- [feature] Remove support for Indigo's ros_control (#2128)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- [fix] Various fixes for upcoming Noetic release (#2180)
- [fix] Fix compiler warnings (#1773)
- [maint] clang-tidy-fix [modernize-loop-convert]{.title-ref} to entire code base (#1419)
- [maint] Switch from include guards to pragma once (#1615)
- [maint] Remove ! from MoveIt name (#1590)
- Contributors: Dave Coleman, Henning Kayser, Jonathan Binney, Robert Haschke, Sandro Magalhães, Sean Yen, Tyler Weaver, Yu, Yan
1.0.6 (2020-08-19)
1.0.5 (2020-07-08)
1.0.4 (2020-05-30)
1.0.3 (2020-04-26)
- [maint] Fix errors: catkin_lint 1.6.7 (#1987)
- [maint] Windows build: Fix binary artifact install locations. (#1575)
- [maint] Use CMAKE_CXX_STANDARD to enforce c++14 (#1607)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- Contributors: Robert Haschke, Sandro Magalhães, Sean Yen
1.0.2 (2019-06-28)
1.0.1 (2019-03-08)
1.0.0 (2019-02-24)
- [fix] catkin_lint issues (#1341)
- Contributors: Robert Haschke
0.10.8 (2018-12-24)
0.10.7 (2018-12-13)
0.10.6 (2018-12-09)
- [maintenance] Code Cleanup (#1196)
- Contributors: Robert Haschke
0.10.5 (2018-11-01)
0.10.4 (2018-10-29)
0.10.3 (2018-10-29)
0.10.2 (2018-10-24)
0.10.1 (2018-05-25)
0.9.11 (2017-12-25)
0.9.10 (2017-12-09)
0.9.9 (2017-08-06)
- [improve] add backward compatibility patch for indigo (#551)
- Contributors: Michael Görner
0.9.8 (2017-06-21)
0.9.7 (2017-06-05)
0.9.6 (2017-04-12)
0.9.5 (2017-03-08)
0.9.4 (2017-02-06)
- [maintenance] clang-format upgraded to 3.8 (#367)
- Contributors: Dave Coleman, Michael Goerner
0.9.3 (2016-11-16)
0.5.7 (2016-01-30)
- C++03 conforming nested templates
- fixed typo, added example config
- added brief decription tags
- formatted code to roscpp style
- improved documentation
- introduced getAbsName
- Added missing lock
- pre-allocate handles
- fixed typos
- set version to match the others
- fixed a lot of typos
- Intitial version of moveit_ros_control_interface package
- Contributors: Mathias Luedtke
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
ament_cmake | |
moveit_common | |
rclcpp_action | |
controller_manager_msgs | |
moveit_core | |
moveit_simple_controller_manager | |
pluginlib | |
trajectory_msgs |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged moveit_ros_control_interface at Robotics Stack Exchange
|
Package Summary
Tags | No category tags. |
Version | 2.11.0 |
License | BSD-3-Clause |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-planning/moveit2.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2024-11-23 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Henning Kayser
- Tyler Weaver
- MoveIt Release Team
Authors
- Mathias Lüdtke
MoveIt ROS Control Plugin
This package provides plugins of base class moveit_controller_manager::MoveItControllerManager
and a new plugin base class for moveit_controller_manager::MoveItControllerHandle
allocators.
The allocator class is necessary because moveit_controller_manager::MoveItControllerHandle
needs a name passed to the constructor.
Two variants are provided, moveit_ros_control_interface::Ros2ControlManager
for interfacing a single ros_control node and moveit_ros_control_interface::Ros2ControlMultiManager
for seamless integration with any number of ros_control nodes.
moveit_ros_control_interface::Ros2ControlManager
This plugin interfaces a single ros_control-driven node in the namespace given in the ~ros_control_namespace
ROS parameter.
It polls all controllers via the list_controllers
service and passes their properties to MoveIt.
The polling is throttled to 1 Hertz.
Handle plugins
The actual handle creation is delegated to allocator plugins of base class moveit_ros_control_interface::ControllerHandleAllocator
.
These plugins should be registered with lookup names that match the corresponding controller types.
Currently plugins for position_controllers/JointTrajectoryController
, velocity_controllers/JointTrajectoryController
and effort_controllers/JointTrajectoryController
are available, which simply wrap moveit_simple_controller_manager::FollowJointTrajectoryControllerHandle
instances.
Setup
In your MoveIt launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
), set the moveit_controller_manager
parameter:
<param name="moveit_controller_manager" value="moveit_ros_control_interface::Ros2ControlManager" />
Make sure to set the ros_control_namespace
parameter to the namespace (without the /controller_manager/ part) of the ros_control-based node you like to interface.
If you are using moveit_setup_assistant
, you can add it to ROBOT_moveit_config/config/moveit_controllers.yaml
, e.g.:
ros_control_namespace: /ROS_CONTROL_NODE
controller_list:
- name: /ROS_CONTROL_NODE/position_trajectory_controller
action_ns: follow_joint_trajectory
type: FollowJointTrajectory
default: true
joints:
- joint_a1
- joint_a2
- joint_a3
- joint_a4
- joint_a5
- joint_a6
- joint_a7
Controller switching
MoveIt can decide which controllers have to be started and stopped. Since only controller names with registered allocator plugins are handed over to MoveIt, this implementation takes care of stopping other conflicting controllers based on their claimed resources and the resources for the to-be-started controllers.
Namespaces
All controller names get prefixed by the namespace of the ros_control node.
For this to work the controller names should not contain slashes. This is a strict requirement if the ros_control namespace is /
.
moveit_ros_control_interface::Ros2ControlMultiManager
This plugin does not need further configuration. It polls the ROS main for services and identifies ros_control nodes automatically.
It spawns moveit_ros_control_interface::Ros2ControlManager
instances with their namespace and takes cares of proper delegation.
Setup
Just set the moveit_controller_manager
parameter in your MoveIt launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
)
<param name="moveit_controller_manager" value="moveit_ros_control_interface::Ros2ControlMultiManager" />
Changelog for package moveit_ros_control_interface
2.11.0 (2024-09-16)
2.10.0 (2024-06-13)
- Revert "Simplify controller manager namespacing (#2210)" This reverts commit 55df0bccd5e884649780b4ceeee80891e563b57b. The deprecated constructor was being used in the same file for the exact use case of enabling namespaces that are not specified by the parameter. There is no replacement for supporting a dynamic server lookup, however the parameter logic could still use simplification.
- Unify log names (#2720) Co-authored-by: Abishalini Sivaraman <<abi.gpuram@gmail.com>>
- CMake format and lint in pre-commit (#2683)
- Contributors: Henning Kayser, Sebastian Jahr, Tyler Weaver
2.9.0 (2024-01-09)
- Fix warning and cleanup unneeded placeholders
(#2566)
- Fix warning and cleanup unneeded placeholders
- Make clang-tidy happy
- Remove print statement
- Node logging for the rest of MoveIt (#2599)
- Merge branch 'main' into dependabot/github_actions/SonarSource/sonarcloud-github-c-cpp-2
- Contributors: Sebastian Jahr, Tyler Weaver
2.8.0 (2023-09-10)
- Simplify controller manager namespacing (#2210)
- Minor cleanup to ros_control_interface and trajectory execution (#2208)
- Contributors: Stephanie Eng
2.7.4 (2023-05-18)
2.7.3 (2023-04-24)
- Replace Variable PROJECT_NAME in CMakeLists.txt with the actual name (#2020)
- Fix controller_manager_plugin's switch controllers functionality (#2116)
- Contributors: Jafar, Shobuj Paul
2.7.2 (2023-04-18)
2.7.1 (2023-03-23)
- Add Warning Message for Out of Date Controller Information (#1983) Co-authored-by: Joseph Schornak <<joe.schornak@gmail.com>> Co-authored-by: Joseph Schornak <<joe.schornak@gmail.com>>
- Update SwitchController API usage (#1996) Fixes deprecated and now removed message fields https://github.com/ros-controls/ros2_control/pull/948
- Contributors: Erik Holum, Henning Kayser
2.7.0 (2023-01-29)
- Fix parameters for ros2_control namespaces (#1833) Co-authored-by: AndyZe <<andyz@utexas.edu>> Co-authored-by: Henning Kayser <<henningkayser@picknik.ai>>
- Fix BSD license in package.xml
(#1796)
- fix BSD license in package.xml
- this must also be spdx compliant
- Contributors: Christian Henkel, Pablo Iñigo Blasco
2.6.0 (2022-11-10)
- Rename MoveItControllerManager. Add deprecation warning
(#1601)
- Rename MoveItControllerManager->Ros2ControlManager. Add deprecation warning.
- Do not rename base class
* Still allow users to load plugins by the old names Co-authored-by: Jafar <<jafar.uruc@gmail.com>>
- Merge PR #1553: Improve cmake files
- Use standard exported targets: export_${PROJECT_NAME} -> ${PROJECT_NAME}Targets
- Improve CMake usage (#1550)
- Support chained controllers
(#1482)
- fix controller list if chained controllers exist
- add comments and clean code
- added additional comments
- fix formatting
- fix white space
- add const reference and chhnage variable name
- simplify logic to only work with one layer chain
- Don't return false when not finding optional parameter
* Update moveit_ros/perception/pointcloud_octomap_updater/src/pointcloud_octomap_updater.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>>
- add debug information
- print controller names
- print controllers with not known type
- load controller dependencies
- start chained controllers in switch
- reverse order of activate controllers
- prevent stoppping controller twice
- revert all debug changes
- add ROS error if a controller chains to more than one
- use loop to index chained connections
- update ros_control
- add empty controller allocator for admittance controller
- fix plugin xml
* Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>>
- fix map indexing
- add comment
* Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: Tyler Weaver <<squirrel428@protonmail.com>> * Typos Co-authored-by: JafarAbdi <<cafer.abdi@gmail.com>> Co-authored-by: Jafar <<jafar.uruc@gmail.com>> Co-authored-by: AndyZe <<andyz@utexas.edu>> Co-authored-by: Vatan Aksoy Tezer <<vatan@picknik.ai>> Co-authored-by: Tyler Weaver <<squirrel428@protonmail.com>> Co-authored-by: AndyZe <<zelenak@picknik.ai>>
- Contributors: AndyZe, Paul Gesel, Robert Haschke, Sebastian Jahr
2.5.3 (2022-07-28)
2.5.2 (2022-07-18)
- Remove unnecessary rclcpp.hpp includes (#1333)
- Contributors: Jafar
2.5.1 (2022-05-31)
2.5.0 (2022-05-26)
- Enable cppcheck (#1224) Co-authored-by: jeoseo <<jeongwooseo2012@gmail.com>>
- Make moveit_common a 'depend' rather than 'build_depend' (#1226)
- 1.1.9
- 1.1.8
- 1.1.7
- 1.1.6
- Contributors: Jafar, Robert Haschke, jeoseo
2.4.0 (2022-01-20)
- moveit_build_options() Declare common build options like CMAKE_CXX_STANDARD, CMAKE_BUILD_TYPE, and compiler options (namely warning flags) once. Each package depending on moveit_core can use these via moveit_build_options().
- Contributors: Robert Haschke
2.3.2 (2021-12-29)
2.3.1 (2021-12-23)
- Fix installation of moveit_ros_control_interface header files (#789)
- Enforce package.xml format 3 Schema (#779)
- Update Maintainers of MoveIt package (#697)
- Update controller_manager_plugin to fix MoveIt-managed controller switching (#785)
- moveit_ros_control_interface: Small comment cleanup (#754)
- Contributors: AndyZe, Dave Coleman, Henning Kayser, Joseph Schornak, Robert Haschke
2.3.0 (2021-10-08)
- moveit_ros_control_interface: Fix dangling reference (#710)
- Port moveit ros control interface to ROS2
(#545)
- Port moveit_ros_control_interface to ROS2
- Multiple fixes to trajectory_execution_manager
- Fix reversed check in switchControllers (#2726)
- Contributors: Jafar Abdi, Nathan Brooks, Joe Schornak, Henning Kayser
2.2.1 (2021-07-12)
1.1.1 (2020-10-13)
- [maint] Add comment to MOVEIT_CLASS_FORWARD (#2315)
- Contributors: Felix von Drigalski
1.1.0 (2020-09-04)
- [feature] Optional cpp version setting (#2166)
- [feature] Remove support for Indigo's ros_control (#2128)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- [fix] Various fixes for upcoming Noetic release (#2180)
- [fix] Fix compiler warnings (#1773)
- [maint] clang-tidy-fix [modernize-loop-convert]{.title-ref} to entire code base (#1419)
- [maint] Switch from include guards to pragma once (#1615)
- [maint] Remove ! from MoveIt name (#1590)
- Contributors: Dave Coleman, Henning Kayser, Jonathan Binney, Robert Haschke, Sandro Magalhães, Sean Yen, Tyler Weaver, Yu, Yan
1.0.6 (2020-08-19)
1.0.5 (2020-07-08)
1.0.4 (2020-05-30)
1.0.3 (2020-04-26)
- [maint] Fix errors: catkin_lint 1.6.7 (#1987)
- [maint] Windows build: Fix binary artifact install locations. (#1575)
- [maint] Use CMAKE_CXX_STANDARD to enforce c++14 (#1607)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- Contributors: Robert Haschke, Sandro Magalhães, Sean Yen
1.0.2 (2019-06-28)
1.0.1 (2019-03-08)
1.0.0 (2019-02-24)
- [fix] catkin_lint issues (#1341)
- Contributors: Robert Haschke
0.10.8 (2018-12-24)
0.10.7 (2018-12-13)
0.10.6 (2018-12-09)
- [maintenance] Code Cleanup (#1196)
- Contributors: Robert Haschke
0.10.5 (2018-11-01)
0.10.4 (2018-10-29)
0.10.3 (2018-10-29)
0.10.2 (2018-10-24)
0.10.1 (2018-05-25)
0.9.11 (2017-12-25)
0.9.10 (2017-12-09)
0.9.9 (2017-08-06)
- [improve] add backward compatibility patch for indigo (#551)
- Contributors: Michael Görner
0.9.8 (2017-06-21)
0.9.7 (2017-06-05)
0.9.6 (2017-04-12)
0.9.5 (2017-03-08)
0.9.4 (2017-02-06)
- [maintenance] clang-format upgraded to 3.8 (#367)
- Contributors: Dave Coleman, Michael Goerner
0.9.3 (2016-11-16)
0.5.7 (2016-01-30)
- C++03 conforming nested templates
- fixed typo, added example config
- added brief decription tags
- formatted code to roscpp style
- improved documentation
- introduced getAbsName
- Added missing lock
- pre-allocate handles
- fixed typos
- set version to match the others
- fixed a lot of typos
- Intitial version of moveit_ros_control_interface package
- Contributors: Mathias Luedtke
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
ament_cmake | |
moveit_common | |
rclcpp_action | |
controller_manager_msgs | |
moveit_core | |
moveit_simple_controller_manager | |
pluginlib | |
trajectory_msgs |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged moveit_ros_control_interface at Robotics Stack Exchange
|
Package Summary
Tags | No category tags. |
Version | 2.11.0 |
License | BSD-3-Clause |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-planning/moveit2.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2024-11-23 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Henning Kayser
- Tyler Weaver
- MoveIt Release Team
Authors
- Mathias Lüdtke
MoveIt ROS Control Plugin
This package provides plugins of base class moveit_controller_manager::MoveItControllerManager
and a new plugin base class for moveit_controller_manager::MoveItControllerHandle
allocators.
The allocator class is necessary because moveit_controller_manager::MoveItControllerHandle
needs a name passed to the constructor.
Two variants are provided, moveit_ros_control_interface::Ros2ControlManager
for interfacing a single ros_control node and moveit_ros_control_interface::Ros2ControlMultiManager
for seamless integration with any number of ros_control nodes.
moveit_ros_control_interface::Ros2ControlManager
This plugin interfaces a single ros_control-driven node in the namespace given in the ~ros_control_namespace
ROS parameter.
It polls all controllers via the list_controllers
service and passes their properties to MoveIt.
The polling is throttled to 1 Hertz.
Handle plugins
The actual handle creation is delegated to allocator plugins of base class moveit_ros_control_interface::ControllerHandleAllocator
.
These plugins should be registered with lookup names that match the corresponding controller types.
Currently plugins for position_controllers/JointTrajectoryController
, velocity_controllers/JointTrajectoryController
and effort_controllers/JointTrajectoryController
are available, which simply wrap moveit_simple_controller_manager::FollowJointTrajectoryControllerHandle
instances.
Setup
In your MoveIt launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
), set the moveit_controller_manager
parameter:
<param name="moveit_controller_manager" value="moveit_ros_control_interface::Ros2ControlManager" />
Make sure to set the ros_control_namespace
parameter to the namespace (without the /controller_manager/ part) of the ros_control-based node you like to interface.
If you are using moveit_setup_assistant
, you can add it to ROBOT_moveit_config/config/moveit_controllers.yaml
, e.g.:
ros_control_namespace: /ROS_CONTROL_NODE
controller_list:
- name: /ROS_CONTROL_NODE/position_trajectory_controller
action_ns: follow_joint_trajectory
type: FollowJointTrajectory
default: true
joints:
- joint_a1
- joint_a2
- joint_a3
- joint_a4
- joint_a5
- joint_a6
- joint_a7
Controller switching
MoveIt can decide which controllers have to be started and stopped. Since only controller names with registered allocator plugins are handed over to MoveIt, this implementation takes care of stopping other conflicting controllers based on their claimed resources and the resources for the to-be-started controllers.
Namespaces
All controller names get prefixed by the namespace of the ros_control node.
For this to work the controller names should not contain slashes. This is a strict requirement if the ros_control namespace is /
.
moveit_ros_control_interface::Ros2ControlMultiManager
This plugin does not need further configuration. It polls the ROS main for services and identifies ros_control nodes automatically.
It spawns moveit_ros_control_interface::Ros2ControlManager
instances with their namespace and takes cares of proper delegation.
Setup
Just set the moveit_controller_manager
parameter in your MoveIt launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
)
<param name="moveit_controller_manager" value="moveit_ros_control_interface::Ros2ControlMultiManager" />
Changelog for package moveit_ros_control_interface
2.11.0 (2024-09-16)
2.10.0 (2024-06-13)
- Revert "Simplify controller manager namespacing (#2210)" This reverts commit 55df0bccd5e884649780b4ceeee80891e563b57b. The deprecated constructor was being used in the same file for the exact use case of enabling namespaces that are not specified by the parameter. There is no replacement for supporting a dynamic server lookup, however the parameter logic could still use simplification.
- Unify log names (#2720) Co-authored-by: Abishalini Sivaraman <<abi.gpuram@gmail.com>>
- CMake format and lint in pre-commit (#2683)
- Contributors: Henning Kayser, Sebastian Jahr, Tyler Weaver
2.9.0 (2024-01-09)
- Fix warning and cleanup unneeded placeholders
(#2566)
- Fix warning and cleanup unneeded placeholders
- Make clang-tidy happy
- Remove print statement
- Node logging for the rest of MoveIt (#2599)
- Merge branch 'main' into dependabot/github_actions/SonarSource/sonarcloud-github-c-cpp-2
- Contributors: Sebastian Jahr, Tyler Weaver
2.8.0 (2023-09-10)
- Simplify controller manager namespacing (#2210)
- Minor cleanup to ros_control_interface and trajectory execution (#2208)
- Contributors: Stephanie Eng
2.7.4 (2023-05-18)
2.7.3 (2023-04-24)
- Replace Variable PROJECT_NAME in CMakeLists.txt with the actual name (#2020)
- Fix controller_manager_plugin's switch controllers functionality (#2116)
- Contributors: Jafar, Shobuj Paul
2.7.2 (2023-04-18)
2.7.1 (2023-03-23)
- Add Warning Message for Out of Date Controller Information (#1983) Co-authored-by: Joseph Schornak <<joe.schornak@gmail.com>> Co-authored-by: Joseph Schornak <<joe.schornak@gmail.com>>
- Update SwitchController API usage (#1996) Fixes deprecated and now removed message fields https://github.com/ros-controls/ros2_control/pull/948
- Contributors: Erik Holum, Henning Kayser
2.7.0 (2023-01-29)
- Fix parameters for ros2_control namespaces (#1833) Co-authored-by: AndyZe <<andyz@utexas.edu>> Co-authored-by: Henning Kayser <<henningkayser@picknik.ai>>
- Fix BSD license in package.xml
(#1796)
- fix BSD license in package.xml
- this must also be spdx compliant
- Contributors: Christian Henkel, Pablo Iñigo Blasco
2.6.0 (2022-11-10)
- Rename MoveItControllerManager. Add deprecation warning
(#1601)
- Rename MoveItControllerManager->Ros2ControlManager. Add deprecation warning.
- Do not rename base class
* Still allow users to load plugins by the old names Co-authored-by: Jafar <<jafar.uruc@gmail.com>>
- Merge PR #1553: Improve cmake files
- Use standard exported targets: export_${PROJECT_NAME} -> ${PROJECT_NAME}Targets
- Improve CMake usage (#1550)
- Support chained controllers
(#1482)
- fix controller list if chained controllers exist
- add comments and clean code
- added additional comments
- fix formatting
- fix white space
- add const reference and chhnage variable name
- simplify logic to only work with one layer chain
- Don't return false when not finding optional parameter
* Update moveit_ros/perception/pointcloud_octomap_updater/src/pointcloud_octomap_updater.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>>
- add debug information
- print controller names
- print controllers with not known type
- load controller dependencies
- start chained controllers in switch
- reverse order of activate controllers
- prevent stoppping controller twice
- revert all debug changes
- add ROS error if a controller chains to more than one
- use loop to index chained connections
- update ros_control
- add empty controller allocator for admittance controller
- fix plugin xml
* Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>>
- fix map indexing
- add comment
* Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: Tyler Weaver <<squirrel428@protonmail.com>> * Typos Co-authored-by: JafarAbdi <<cafer.abdi@gmail.com>> Co-authored-by: Jafar <<jafar.uruc@gmail.com>> Co-authored-by: AndyZe <<andyz@utexas.edu>> Co-authored-by: Vatan Aksoy Tezer <<vatan@picknik.ai>> Co-authored-by: Tyler Weaver <<squirrel428@protonmail.com>> Co-authored-by: AndyZe <<zelenak@picknik.ai>>
- Contributors: AndyZe, Paul Gesel, Robert Haschke, Sebastian Jahr
2.5.3 (2022-07-28)
2.5.2 (2022-07-18)
- Remove unnecessary rclcpp.hpp includes (#1333)
- Contributors: Jafar
2.5.1 (2022-05-31)
2.5.0 (2022-05-26)
- Enable cppcheck (#1224) Co-authored-by: jeoseo <<jeongwooseo2012@gmail.com>>
- Make moveit_common a 'depend' rather than 'build_depend' (#1226)
- 1.1.9
- 1.1.8
- 1.1.7
- 1.1.6
- Contributors: Jafar, Robert Haschke, jeoseo
2.4.0 (2022-01-20)
- moveit_build_options() Declare common build options like CMAKE_CXX_STANDARD, CMAKE_BUILD_TYPE, and compiler options (namely warning flags) once. Each package depending on moveit_core can use these via moveit_build_options().
- Contributors: Robert Haschke
2.3.2 (2021-12-29)
2.3.1 (2021-12-23)
- Fix installation of moveit_ros_control_interface header files (#789)
- Enforce package.xml format 3 Schema (#779)
- Update Maintainers of MoveIt package (#697)
- Update controller_manager_plugin to fix MoveIt-managed controller switching (#785)
- moveit_ros_control_interface: Small comment cleanup (#754)
- Contributors: AndyZe, Dave Coleman, Henning Kayser, Joseph Schornak, Robert Haschke
2.3.0 (2021-10-08)
- moveit_ros_control_interface: Fix dangling reference (#710)
- Port moveit ros control interface to ROS2
(#545)
- Port moveit_ros_control_interface to ROS2
- Multiple fixes to trajectory_execution_manager
- Fix reversed check in switchControllers (#2726)
- Contributors: Jafar Abdi, Nathan Brooks, Joe Schornak, Henning Kayser
2.2.1 (2021-07-12)
1.1.1 (2020-10-13)
- [maint] Add comment to MOVEIT_CLASS_FORWARD (#2315)
- Contributors: Felix von Drigalski
1.1.0 (2020-09-04)
- [feature] Optional cpp version setting (#2166)
- [feature] Remove support for Indigo's ros_control (#2128)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- [fix] Various fixes for upcoming Noetic release (#2180)
- [fix] Fix compiler warnings (#1773)
- [maint] clang-tidy-fix [modernize-loop-convert]{.title-ref} to entire code base (#1419)
- [maint] Switch from include guards to pragma once (#1615)
- [maint] Remove ! from MoveIt name (#1590)
- Contributors: Dave Coleman, Henning Kayser, Jonathan Binney, Robert Haschke, Sandro Magalhães, Sean Yen, Tyler Weaver, Yu, Yan
1.0.6 (2020-08-19)
1.0.5 (2020-07-08)
1.0.4 (2020-05-30)
1.0.3 (2020-04-26)
- [maint] Fix errors: catkin_lint 1.6.7 (#1987)
- [maint] Windows build: Fix binary artifact install locations. (#1575)
- [maint] Use CMAKE_CXX_STANDARD to enforce c++14 (#1607)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- Contributors: Robert Haschke, Sandro Magalhães, Sean Yen
1.0.2 (2019-06-28)
1.0.1 (2019-03-08)
1.0.0 (2019-02-24)
- [fix] catkin_lint issues (#1341)
- Contributors: Robert Haschke
0.10.8 (2018-12-24)
0.10.7 (2018-12-13)
0.10.6 (2018-12-09)
- [maintenance] Code Cleanup (#1196)
- Contributors: Robert Haschke
0.10.5 (2018-11-01)
0.10.4 (2018-10-29)
0.10.3 (2018-10-29)
0.10.2 (2018-10-24)
0.10.1 (2018-05-25)
0.9.11 (2017-12-25)
0.9.10 (2017-12-09)
0.9.9 (2017-08-06)
- [improve] add backward compatibility patch for indigo (#551)
- Contributors: Michael Görner
0.9.8 (2017-06-21)
0.9.7 (2017-06-05)
0.9.6 (2017-04-12)
0.9.5 (2017-03-08)
0.9.4 (2017-02-06)
- [maintenance] clang-format upgraded to 3.8 (#367)
- Contributors: Dave Coleman, Michael Goerner
0.9.3 (2016-11-16)
0.5.7 (2016-01-30)
- C++03 conforming nested templates
- fixed typo, added example config
- added brief decription tags
- formatted code to roscpp style
- improved documentation
- introduced getAbsName
- Added missing lock
- pre-allocate handles
- fixed typos
- set version to match the others
- fixed a lot of typos
- Intitial version of moveit_ros_control_interface package
- Contributors: Mathias Luedtke
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
ament_cmake | |
moveit_common | |
rclcpp_action | |
controller_manager_msgs | |
moveit_core | |
moveit_simple_controller_manager | |
pluginlib | |
trajectory_msgs |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged moveit_ros_control_interface at Robotics Stack Exchange
|
Package Summary
Tags | No category tags. |
Version | 1.1.16 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-planning/moveit.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2024-11-19 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mathias Lüdtke
- MoveIt Release Team
Authors
- Mathias Lüdtke
MoveIt ROS Control Plugin
This package provides plugins of base class moveit_controller_manager::MoveItControllerManager
and a new plugin base class for moveit_controller_manager::MoveItControllerHandle
allocators.
The allocator class is necessary because moveit_controller_manager::MoveItControllerHandle
needs a name passed to the constructor.
Two variantes are provided, moveit_ros_control_interface::MoveItControllerManager
for interfacing a single ros_control node and moveit_ros_control_interface::MoveItMultiControllerManager
for seamless integration with any number of ros_control nodes.
moveit_ros_control_interface::MoveItControllerManager
This plugin interfaces a single ros_control-driven node in the namespace given in the ~ros_control_namespace
ROS parameter.
It polls all controllers via the list_controllers
service and passes their properties to MoveIt.
The polling is throttled to 1 Hertz.
Handle plugins
The actual handle creation is delegated to allocator plugins of base class moveit_ros_control_interface::ControllerHandleAllocator
.
These plugins should be registered with lookup names that match the corresponding controller types.
Currently plugins for position_controllers/JointTrajectoryController
, velocity_controllers/JointTrajectoryController
and effort_controllers/JointTrajectoryController
are available, which simply wrap moveit_simple_controller_manager::FollowJointTrajectoryControllerHandle
instances.
Setup
In your MoveIt launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
) set the moveit_controller_manager
parameter:
<param name="moveit_controller_manager" value="moveit_ros_control_interface::MoveItControllerManager" />
And make sure to set the ros_control_namespace
parameter to the namespace (without the /controller_manager/ part) of the ros_control-based node you like to interface.
If you are using the moveit_setup_assistent
you can add it to ROBOT_moveit_config/config/controllers.yaml
, e.g.:
ros_control_namespace: /ROS_CONTROL_NODE
controller_list:
- name: /ROS_CONTROL_NODE/position_trajectory_controller
action_ns: follow_joint_trajectory
type: FollowJointTrajectory
default: true
joints:
- joint_a1
- joint_a2
- joint_a3
- joint_a4
- joint_a5
- joint_a6
- joint_a7
Controller switching
MoveIt can decide which controllers have to be started and stopped. Since only controller names with registered allocator plugins are handed over to MoveIt, this implementation takes care of stopping other conflicting controllers based on their claimed resources and the resources for the to-be-started controllers.
Namespaces
All controller names get prefixed by the namespace of the ros_control node.
For this to work the controller names should not contain slashes. This is a strict requirement if the ros_control namespace is /
.
moveit_ros_control_interface::MoveItMultiControllerManager
This plugin does not need further configuration. It polls the ROS master for services and identifies ros_control nodes automatically.
It spawns moveit_ros_control_interface::MoveItControllerManager
instances with their namespace and takes cares of proper delegation.
Setup
Just set the moveit_controller_manager
parameter in your MoveIt launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
)
<param name="moveit_controller_manager" value="moveit_ros_control_interface::MoveItMultiControllerManager" />
Changelog for package moveit_ros_control_interface
1.1.16 (2024-10-07)
1.1.15 (2024-09-09)
1.1.14 (2024-05-27)
1.1.13 (2023-07-28)
1.1.12 (2023-05-13)
- Drop lib/ prefix from plugin paths (#3305)
- Contributors: Jochen Sprickerhof
1.1.11 (2022-12-21)
1.1.10 (2022-09-13)
1.1.9 (2022-03-06)
1.1.8 (2022-01-30)
1.1.7 (2021-12-31)
1.1.6 (2021-11-06)
- Use newly introduced cmake macro
moveit_build_options()
frommoveit_core
- Fix reversed check in switchControllers (#2726)
- Contributors: Nathan Brooks, Robert Haschke
1.1.5 (2021-05-23)
1.1.4 (2021-05-12)
1.1.3 (2021-04-29)
1.1.2 (2021-04-08)
1.1.1 (2020-10-13)
- [maint] Add comment to MOVEIT_CLASS_FORWARD (#2315)
- Contributors: Felix von Drigalski
1.1.0 (2020-09-04)
- [feature] Optional cpp version setting (#2166)
- [feature] Remove support for Indigo's ros_control (#2128)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- [fix] Various fixes for upcoming Noetic release (#2180)
- [fix] Fix compiler warnings (#1773)
- [maint] clang-tidy-fix [modernize-loop-convert]{.title-ref} to entire code base (#1419)
- [maint] Switch from include guards to pragma once (#1615)
- [maint] Remove ! from MoveIt name (#1590)
- Contributors: Dave Coleman, Henning Kayser, Jonathan Binney, Robert Haschke, Sandro Magalhães, Sean Yen, Tyler Weaver, Yu, Yan
1.0.6 (2020-08-19)
1.0.5 (2020-07-08)
1.0.4 (2020-05-30)
1.0.3 (2020-04-26)
- [maint] Fix errors: catkin_lint 1.6.7 (#1987)
- [maint] Windows build: Fix binary artifact install locations. (#1575)
- [maint] Use CMAKE_CXX_STANDARD to enforce c++14 (#1607)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- Contributors: Robert Haschke, Sandro Magalhães, Sean Yen
1.0.2 (2019-06-28)
1.0.1 (2019-03-08)
1.0.0 (2019-02-24)
- [fix] catkin_lint issues (#1341)
- Contributors: Robert Haschke
0.10.8 (2018-12-24)
0.10.7 (2018-12-13)
0.10.6 (2018-12-09)
- [maintenance] Code Cleanup (#1196)
- Contributors: Robert Haschke
0.10.5 (2018-11-01)
0.10.4 (2018-10-29)
0.10.3 (2018-10-29)
0.10.2 (2018-10-24)
0.10.1 (2018-05-25)
0.9.11 (2017-12-25)
0.9.10 (2017-12-09)
0.9.9 (2017-08-06)
- [improve] add backward compatibility patch for indigo (#551)
- Contributors: Michael Görner
0.9.8 (2017-06-21)
0.9.7 (2017-06-05)
0.9.6 (2017-04-12)
0.9.5 (2017-03-08)
0.9.4 (2017-02-06)
- [maintenance] clang-format upgraded to 3.8 (#367)
- Contributors: Dave Coleman, Michael Goerner
0.9.3 (2016-11-16)
0.5.7 (2016-01-30)
- C++03 conforming nested templates
- fixed typo, added example config
- added brief decription tags
- formatted code to roscpp style
- improved documentation
- introduced getAbsName
- Added missing lock
- pre-allocate handles
- fixed typos
- set version to match the others
- fixed a lot of typos
- Intitial version of moveit_ros_control_interface package
- Contributors: Mathias Luedtke
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
actionlib | |
controller_manager_msgs | |
moveit_core | |
moveit_simple_controller_manager | |
pluginlib | |
trajectory_msgs |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_plugins |
Launch files
Messages
Services
Recent questions tagged moveit_ros_control_interface at Robotics Stack Exchange
|
Package Summary
Tags | No category tags. |
Version | 2.11.0 |
License | BSD-3-Clause |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-planning/moveit2.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2024-11-23 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Henning Kayser
- Tyler Weaver
- MoveIt Release Team
Authors
- Mathias Lüdtke
MoveIt ROS Control Plugin
This package provides plugins of base class moveit_controller_manager::MoveItControllerManager
and a new plugin base class for moveit_controller_manager::MoveItControllerHandle
allocators.
The allocator class is necessary because moveit_controller_manager::MoveItControllerHandle
needs a name passed to the constructor.
Two variants are provided, moveit_ros_control_interface::Ros2ControlManager
for interfacing a single ros_control node and moveit_ros_control_interface::Ros2ControlMultiManager
for seamless integration with any number of ros_control nodes.
moveit_ros_control_interface::Ros2ControlManager
This plugin interfaces a single ros_control-driven node in the namespace given in the ~ros_control_namespace
ROS parameter.
It polls all controllers via the list_controllers
service and passes their properties to MoveIt.
The polling is throttled to 1 Hertz.
Handle plugins
The actual handle creation is delegated to allocator plugins of base class moveit_ros_control_interface::ControllerHandleAllocator
.
These plugins should be registered with lookup names that match the corresponding controller types.
Currently plugins for position_controllers/JointTrajectoryController
, velocity_controllers/JointTrajectoryController
and effort_controllers/JointTrajectoryController
are available, which simply wrap moveit_simple_controller_manager::FollowJointTrajectoryControllerHandle
instances.
Setup
In your MoveIt launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
), set the moveit_controller_manager
parameter:
<param name="moveit_controller_manager" value="moveit_ros_control_interface::Ros2ControlManager" />
Make sure to set the ros_control_namespace
parameter to the namespace (without the /controller_manager/ part) of the ros_control-based node you like to interface.
If you are using moveit_setup_assistant
, you can add it to ROBOT_moveit_config/config/moveit_controllers.yaml
, e.g.:
ros_control_namespace: /ROS_CONTROL_NODE
controller_list:
- name: /ROS_CONTROL_NODE/position_trajectory_controller
action_ns: follow_joint_trajectory
type: FollowJointTrajectory
default: true
joints:
- joint_a1
- joint_a2
- joint_a3
- joint_a4
- joint_a5
- joint_a6
- joint_a7
Controller switching
MoveIt can decide which controllers have to be started and stopped. Since only controller names with registered allocator plugins are handed over to MoveIt, this implementation takes care of stopping other conflicting controllers based on their claimed resources and the resources for the to-be-started controllers.
Namespaces
All controller names get prefixed by the namespace of the ros_control node.
For this to work the controller names should not contain slashes. This is a strict requirement if the ros_control namespace is /
.
moveit_ros_control_interface::Ros2ControlMultiManager
This plugin does not need further configuration. It polls the ROS main for services and identifies ros_control nodes automatically.
It spawns moveit_ros_control_interface::Ros2ControlManager
instances with their namespace and takes cares of proper delegation.
Setup
Just set the moveit_controller_manager
parameter in your MoveIt launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
)
<param name="moveit_controller_manager" value="moveit_ros_control_interface::Ros2ControlMultiManager" />
Changelog for package moveit_ros_control_interface
2.11.0 (2024-09-16)
2.10.0 (2024-06-13)
- Revert "Simplify controller manager namespacing (#2210)" This reverts commit 55df0bccd5e884649780b4ceeee80891e563b57b. The deprecated constructor was being used in the same file for the exact use case of enabling namespaces that are not specified by the parameter. There is no replacement for supporting a dynamic server lookup, however the parameter logic could still use simplification.
- Unify log names (#2720) Co-authored-by: Abishalini Sivaraman <<abi.gpuram@gmail.com>>
- CMake format and lint in pre-commit (#2683)
- Contributors: Henning Kayser, Sebastian Jahr, Tyler Weaver
2.9.0 (2024-01-09)
- Fix warning and cleanup unneeded placeholders
(#2566)
- Fix warning and cleanup unneeded placeholders
- Make clang-tidy happy
- Remove print statement
- Node logging for the rest of MoveIt (#2599)
- Merge branch 'main' into dependabot/github_actions/SonarSource/sonarcloud-github-c-cpp-2
- Contributors: Sebastian Jahr, Tyler Weaver
2.8.0 (2023-09-10)
- Simplify controller manager namespacing (#2210)
- Minor cleanup to ros_control_interface and trajectory execution (#2208)
- Contributors: Stephanie Eng
2.7.4 (2023-05-18)
2.7.3 (2023-04-24)
- Replace Variable PROJECT_NAME in CMakeLists.txt with the actual name (#2020)
- Fix controller_manager_plugin's switch controllers functionality (#2116)
- Contributors: Jafar, Shobuj Paul
2.7.2 (2023-04-18)
2.7.1 (2023-03-23)
- Add Warning Message for Out of Date Controller Information (#1983) Co-authored-by: Joseph Schornak <<joe.schornak@gmail.com>> Co-authored-by: Joseph Schornak <<joe.schornak@gmail.com>>
- Update SwitchController API usage (#1996) Fixes deprecated and now removed message fields https://github.com/ros-controls/ros2_control/pull/948
- Contributors: Erik Holum, Henning Kayser
2.7.0 (2023-01-29)
- Fix parameters for ros2_control namespaces (#1833) Co-authored-by: AndyZe <<andyz@utexas.edu>> Co-authored-by: Henning Kayser <<henningkayser@picknik.ai>>
- Fix BSD license in package.xml
(#1796)
- fix BSD license in package.xml
- this must also be spdx compliant
- Contributors: Christian Henkel, Pablo Iñigo Blasco
2.6.0 (2022-11-10)
- Rename MoveItControllerManager. Add deprecation warning
(#1601)
- Rename MoveItControllerManager->Ros2ControlManager. Add deprecation warning.
- Do not rename base class
* Still allow users to load plugins by the old names Co-authored-by: Jafar <<jafar.uruc@gmail.com>>
- Merge PR #1553: Improve cmake files
- Use standard exported targets: export_${PROJECT_NAME} -> ${PROJECT_NAME}Targets
- Improve CMake usage (#1550)
- Support chained controllers
(#1482)
- fix controller list if chained controllers exist
- add comments and clean code
- added additional comments
- fix formatting
- fix white space
- add const reference and chhnage variable name
- simplify logic to only work with one layer chain
- Don't return false when not finding optional parameter
* Update moveit_ros/perception/pointcloud_octomap_updater/src/pointcloud_octomap_updater.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>>
- add debug information
- print controller names
- print controllers with not known type
- load controller dependencies
- start chained controllers in switch
- reverse order of activate controllers
- prevent stoppping controller twice
- revert all debug changes
- add ROS error if a controller chains to more than one
- use loop to index chained connections
- update ros_control
- add empty controller allocator for admittance controller
- fix plugin xml
* Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>>
- fix map indexing
- add comment
* Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: Tyler Weaver <<squirrel428@protonmail.com>> * Typos Co-authored-by: JafarAbdi <<cafer.abdi@gmail.com>> Co-authored-by: Jafar <<jafar.uruc@gmail.com>> Co-authored-by: AndyZe <<andyz@utexas.edu>> Co-authored-by: Vatan Aksoy Tezer <<vatan@picknik.ai>> Co-authored-by: Tyler Weaver <<squirrel428@protonmail.com>> Co-authored-by: AndyZe <<zelenak@picknik.ai>>
- Contributors: AndyZe, Paul Gesel, Robert Haschke, Sebastian Jahr
2.5.3 (2022-07-28)
2.5.2 (2022-07-18)
- Remove unnecessary rclcpp.hpp includes (#1333)
- Contributors: Jafar
2.5.1 (2022-05-31)
2.5.0 (2022-05-26)
- Enable cppcheck (#1224) Co-authored-by: jeoseo <<jeongwooseo2012@gmail.com>>
- Make moveit_common a 'depend' rather than 'build_depend' (#1226)
- 1.1.9
- 1.1.8
- 1.1.7
- 1.1.6
- Contributors: Jafar, Robert Haschke, jeoseo
2.4.0 (2022-01-20)
- moveit_build_options() Declare common build options like CMAKE_CXX_STANDARD, CMAKE_BUILD_TYPE, and compiler options (namely warning flags) once. Each package depending on moveit_core can use these via moveit_build_options().
- Contributors: Robert Haschke
2.3.2 (2021-12-29)
2.3.1 (2021-12-23)
- Fix installation of moveit_ros_control_interface header files (#789)
- Enforce package.xml format 3 Schema (#779)
- Update Maintainers of MoveIt package (#697)
- Update controller_manager_plugin to fix MoveIt-managed controller switching (#785)
- moveit_ros_control_interface: Small comment cleanup (#754)
- Contributors: AndyZe, Dave Coleman, Henning Kayser, Joseph Schornak, Robert Haschke
2.3.0 (2021-10-08)
- moveit_ros_control_interface: Fix dangling reference (#710)
- Port moveit ros control interface to ROS2
(#545)
- Port moveit_ros_control_interface to ROS2
- Multiple fixes to trajectory_execution_manager
- Fix reversed check in switchControllers (#2726)
- Contributors: Jafar Abdi, Nathan Brooks, Joe Schornak, Henning Kayser
2.2.1 (2021-07-12)
1.1.1 (2020-10-13)
- [maint] Add comment to MOVEIT_CLASS_FORWARD (#2315)
- Contributors: Felix von Drigalski
1.1.0 (2020-09-04)
- [feature] Optional cpp version setting (#2166)
- [feature] Remove support for Indigo's ros_control (#2128)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- [fix] Various fixes for upcoming Noetic release (#2180)
- [fix] Fix compiler warnings (#1773)
- [maint] clang-tidy-fix [modernize-loop-convert]{.title-ref} to entire code base (#1419)
- [maint] Switch from include guards to pragma once (#1615)
- [maint] Remove ! from MoveIt name (#1590)
- Contributors: Dave Coleman, Henning Kayser, Jonathan Binney, Robert Haschke, Sandro Magalhães, Sean Yen, Tyler Weaver, Yu, Yan
1.0.6 (2020-08-19)
1.0.5 (2020-07-08)
1.0.4 (2020-05-30)
1.0.3 (2020-04-26)
- [maint] Fix errors: catkin_lint 1.6.7 (#1987)
- [maint] Windows build: Fix binary artifact install locations. (#1575)
- [maint] Use CMAKE_CXX_STANDARD to enforce c++14 (#1607)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- Contributors: Robert Haschke, Sandro Magalhães, Sean Yen
1.0.2 (2019-06-28)
1.0.1 (2019-03-08)
1.0.0 (2019-02-24)
- [fix] catkin_lint issues (#1341)
- Contributors: Robert Haschke
0.10.8 (2018-12-24)
0.10.7 (2018-12-13)
0.10.6 (2018-12-09)
- [maintenance] Code Cleanup (#1196)
- Contributors: Robert Haschke
0.10.5 (2018-11-01)
0.10.4 (2018-10-29)
0.10.3 (2018-10-29)
0.10.2 (2018-10-24)
0.10.1 (2018-05-25)
0.9.11 (2017-12-25)
0.9.10 (2017-12-09)
0.9.9 (2017-08-06)
- [improve] add backward compatibility patch for indigo (#551)
- Contributors: Michael Görner
0.9.8 (2017-06-21)
0.9.7 (2017-06-05)
0.9.6 (2017-04-12)
0.9.5 (2017-03-08)
0.9.4 (2017-02-06)
- [maintenance] clang-format upgraded to 3.8 (#367)
- Contributors: Dave Coleman, Michael Goerner
0.9.3 (2016-11-16)
0.5.7 (2016-01-30)
- C++03 conforming nested templates
- fixed typo, added example config
- added brief decription tags
- formatted code to roscpp style
- improved documentation
- introduced getAbsName
- Added missing lock
- pre-allocate handles
- fixed typos
- set version to match the others
- fixed a lot of typos
- Intitial version of moveit_ros_control_interface package
- Contributors: Mathias Luedtke
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
ament_cmake | |
moveit_common | |
rclcpp_action | |
controller_manager_msgs | |
moveit_core | |
moveit_simple_controller_manager | |
pluginlib | |
trajectory_msgs |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged moveit_ros_control_interface at Robotics Stack Exchange
|
Package Summary
Tags | No category tags. |
Version | 2.11.0 |
License | BSD-3-Clause |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-planning/moveit2.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2024-11-23 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Henning Kayser
- Tyler Weaver
- MoveIt Release Team
Authors
- Mathias Lüdtke
MoveIt ROS Control Plugin
This package provides plugins of base class moveit_controller_manager::MoveItControllerManager
and a new plugin base class for moveit_controller_manager::MoveItControllerHandle
allocators.
The allocator class is necessary because moveit_controller_manager::MoveItControllerHandle
needs a name passed to the constructor.
Two variants are provided, moveit_ros_control_interface::Ros2ControlManager
for interfacing a single ros_control node and moveit_ros_control_interface::Ros2ControlMultiManager
for seamless integration with any number of ros_control nodes.
moveit_ros_control_interface::Ros2ControlManager
This plugin interfaces a single ros_control-driven node in the namespace given in the ~ros_control_namespace
ROS parameter.
It polls all controllers via the list_controllers
service and passes their properties to MoveIt.
The polling is throttled to 1 Hertz.
Handle plugins
The actual handle creation is delegated to allocator plugins of base class moveit_ros_control_interface::ControllerHandleAllocator
.
These plugins should be registered with lookup names that match the corresponding controller types.
Currently plugins for position_controllers/JointTrajectoryController
, velocity_controllers/JointTrajectoryController
and effort_controllers/JointTrajectoryController
are available, which simply wrap moveit_simple_controller_manager::FollowJointTrajectoryControllerHandle
instances.
Setup
In your MoveIt launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
), set the moveit_controller_manager
parameter:
<param name="moveit_controller_manager" value="moveit_ros_control_interface::Ros2ControlManager" />
Make sure to set the ros_control_namespace
parameter to the namespace (without the /controller_manager/ part) of the ros_control-based node you like to interface.
If you are using moveit_setup_assistant
, you can add it to ROBOT_moveit_config/config/moveit_controllers.yaml
, e.g.:
ros_control_namespace: /ROS_CONTROL_NODE
controller_list:
- name: /ROS_CONTROL_NODE/position_trajectory_controller
action_ns: follow_joint_trajectory
type: FollowJointTrajectory
default: true
joints:
- joint_a1
- joint_a2
- joint_a3
- joint_a4
- joint_a5
- joint_a6
- joint_a7
Controller switching
MoveIt can decide which controllers have to be started and stopped. Since only controller names with registered allocator plugins are handed over to MoveIt, this implementation takes care of stopping other conflicting controllers based on their claimed resources and the resources for the to-be-started controllers.
Namespaces
All controller names get prefixed by the namespace of the ros_control node.
For this to work the controller names should not contain slashes. This is a strict requirement if the ros_control namespace is /
.
moveit_ros_control_interface::Ros2ControlMultiManager
This plugin does not need further configuration. It polls the ROS main for services and identifies ros_control nodes automatically.
It spawns moveit_ros_control_interface::Ros2ControlManager
instances with their namespace and takes cares of proper delegation.
Setup
Just set the moveit_controller_manager
parameter in your MoveIt launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
)
<param name="moveit_controller_manager" value="moveit_ros_control_interface::Ros2ControlMultiManager" />
Changelog for package moveit_ros_control_interface
2.11.0 (2024-09-16)
2.10.0 (2024-06-13)
- Revert "Simplify controller manager namespacing (#2210)" This reverts commit 55df0bccd5e884649780b4ceeee80891e563b57b. The deprecated constructor was being used in the same file for the exact use case of enabling namespaces that are not specified by the parameter. There is no replacement for supporting a dynamic server lookup, however the parameter logic could still use simplification.
- Unify log names (#2720) Co-authored-by: Abishalini Sivaraman <<abi.gpuram@gmail.com>>
- CMake format and lint in pre-commit (#2683)
- Contributors: Henning Kayser, Sebastian Jahr, Tyler Weaver
2.9.0 (2024-01-09)
- Fix warning and cleanup unneeded placeholders
(#2566)
- Fix warning and cleanup unneeded placeholders
- Make clang-tidy happy
- Remove print statement
- Node logging for the rest of MoveIt (#2599)
- Merge branch 'main' into dependabot/github_actions/SonarSource/sonarcloud-github-c-cpp-2
- Contributors: Sebastian Jahr, Tyler Weaver
2.8.0 (2023-09-10)
- Simplify controller manager namespacing (#2210)
- Minor cleanup to ros_control_interface and trajectory execution (#2208)
- Contributors: Stephanie Eng
2.7.4 (2023-05-18)
2.7.3 (2023-04-24)
- Replace Variable PROJECT_NAME in CMakeLists.txt with the actual name (#2020)
- Fix controller_manager_plugin's switch controllers functionality (#2116)
- Contributors: Jafar, Shobuj Paul
2.7.2 (2023-04-18)
2.7.1 (2023-03-23)
- Add Warning Message for Out of Date Controller Information (#1983) Co-authored-by: Joseph Schornak <<joe.schornak@gmail.com>> Co-authored-by: Joseph Schornak <<joe.schornak@gmail.com>>
- Update SwitchController API usage (#1996) Fixes deprecated and now removed message fields https://github.com/ros-controls/ros2_control/pull/948
- Contributors: Erik Holum, Henning Kayser
2.7.0 (2023-01-29)
- Fix parameters for ros2_control namespaces (#1833) Co-authored-by: AndyZe <<andyz@utexas.edu>> Co-authored-by: Henning Kayser <<henningkayser@picknik.ai>>
- Fix BSD license in package.xml
(#1796)
- fix BSD license in package.xml
- this must also be spdx compliant
- Contributors: Christian Henkel, Pablo Iñigo Blasco
2.6.0 (2022-11-10)
- Rename MoveItControllerManager. Add deprecation warning
(#1601)
- Rename MoveItControllerManager->Ros2ControlManager. Add deprecation warning.
- Do not rename base class
* Still allow users to load plugins by the old names Co-authored-by: Jafar <<jafar.uruc@gmail.com>>
- Merge PR #1553: Improve cmake files
- Use standard exported targets: export_${PROJECT_NAME} -> ${PROJECT_NAME}Targets
- Improve CMake usage (#1550)
- Support chained controllers
(#1482)
- fix controller list if chained controllers exist
- add comments and clean code
- added additional comments
- fix formatting
- fix white space
- add const reference and chhnage variable name
- simplify logic to only work with one layer chain
- Don't return false when not finding optional parameter
* Update moveit_ros/perception/pointcloud_octomap_updater/src/pointcloud_octomap_updater.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>>
- add debug information
- print controller names
- print controllers with not known type
- load controller dependencies
- start chained controllers in switch
- reverse order of activate controllers
- prevent stoppping controller twice
- revert all debug changes
- add ROS error if a controller chains to more than one
- use loop to index chained connections
- update ros_control
- add empty controller allocator for admittance controller
- fix plugin xml
* Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>> * Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: AndyZe <<andyz@utexas.edu>>
- fix map indexing
- add comment
* Update moveit_plugins/moveit_ros_control_interface/src/controller_manager_plugin.cpp Co-authored-by: Tyler Weaver <<squirrel428@protonmail.com>> * Typos Co-authored-by: JafarAbdi <<cafer.abdi@gmail.com>> Co-authored-by: Jafar <<jafar.uruc@gmail.com>> Co-authored-by: AndyZe <<andyz@utexas.edu>> Co-authored-by: Vatan Aksoy Tezer <<vatan@picknik.ai>> Co-authored-by: Tyler Weaver <<squirrel428@protonmail.com>> Co-authored-by: AndyZe <<zelenak@picknik.ai>>
- Contributors: AndyZe, Paul Gesel, Robert Haschke, Sebastian Jahr
2.5.3 (2022-07-28)
2.5.2 (2022-07-18)
- Remove unnecessary rclcpp.hpp includes (#1333)
- Contributors: Jafar
2.5.1 (2022-05-31)
2.5.0 (2022-05-26)
- Enable cppcheck (#1224) Co-authored-by: jeoseo <<jeongwooseo2012@gmail.com>>
- Make moveit_common a 'depend' rather than 'build_depend' (#1226)
- 1.1.9
- 1.1.8
- 1.1.7
- 1.1.6
- Contributors: Jafar, Robert Haschke, jeoseo
2.4.0 (2022-01-20)
- moveit_build_options() Declare common build options like CMAKE_CXX_STANDARD, CMAKE_BUILD_TYPE, and compiler options (namely warning flags) once. Each package depending on moveit_core can use these via moveit_build_options().
- Contributors: Robert Haschke
2.3.2 (2021-12-29)
2.3.1 (2021-12-23)
- Fix installation of moveit_ros_control_interface header files (#789)
- Enforce package.xml format 3 Schema (#779)
- Update Maintainers of MoveIt package (#697)
- Update controller_manager_plugin to fix MoveIt-managed controller switching (#785)
- moveit_ros_control_interface: Small comment cleanup (#754)
- Contributors: AndyZe, Dave Coleman, Henning Kayser, Joseph Schornak, Robert Haschke
2.3.0 (2021-10-08)
- moveit_ros_control_interface: Fix dangling reference (#710)
- Port moveit ros control interface to ROS2
(#545)
- Port moveit_ros_control_interface to ROS2
- Multiple fixes to trajectory_execution_manager
- Fix reversed check in switchControllers (#2726)
- Contributors: Jafar Abdi, Nathan Brooks, Joe Schornak, Henning Kayser
2.2.1 (2021-07-12)
1.1.1 (2020-10-13)
- [maint] Add comment to MOVEIT_CLASS_FORWARD (#2315)
- Contributors: Felix von Drigalski
1.1.0 (2020-09-04)
- [feature] Optional cpp version setting (#2166)
- [feature] Remove support for Indigo's ros_control (#2128)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- [fix] Various fixes for upcoming Noetic release (#2180)
- [fix] Fix compiler warnings (#1773)
- [maint] clang-tidy-fix [modernize-loop-convert]{.title-ref} to entire code base (#1419)
- [maint] Switch from include guards to pragma once (#1615)
- [maint] Remove ! from MoveIt name (#1590)
- Contributors: Dave Coleman, Henning Kayser, Jonathan Binney, Robert Haschke, Sandro Magalhães, Sean Yen, Tyler Weaver, Yu, Yan
1.0.6 (2020-08-19)
1.0.5 (2020-07-08)
1.0.4 (2020-05-30)
1.0.3 (2020-04-26)
- [maint] Fix errors: catkin_lint 1.6.7 (#1987)
- [maint] Windows build: Fix binary artifact install locations. (#1575)
- [maint] Use CMAKE_CXX_STANDARD to enforce c++14 (#1607)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- Contributors: Robert Haschke, Sandro Magalhães, Sean Yen
1.0.2 (2019-06-28)
1.0.1 (2019-03-08)
1.0.0 (2019-02-24)
- [fix] catkin_lint issues (#1341)
- Contributors: Robert Haschke
0.10.8 (2018-12-24)
0.10.7 (2018-12-13)
0.10.6 (2018-12-09)
- [maintenance] Code Cleanup (#1196)
- Contributors: Robert Haschke
0.10.5 (2018-11-01)
0.10.4 (2018-10-29)
0.10.3 (2018-10-29)
0.10.2 (2018-10-24)
0.10.1 (2018-05-25)
0.9.11 (2017-12-25)
0.9.10 (2017-12-09)
0.9.9 (2017-08-06)
- [improve] add backward compatibility patch for indigo (#551)
- Contributors: Michael Görner
0.9.8 (2017-06-21)
0.9.7 (2017-06-05)
0.9.6 (2017-04-12)
0.9.5 (2017-03-08)
0.9.4 (2017-02-06)
- [maintenance] clang-format upgraded to 3.8 (#367)
- Contributors: Dave Coleman, Michael Goerner
0.9.3 (2016-11-16)
0.5.7 (2016-01-30)
- C++03 conforming nested templates
- fixed typo, added example config
- added brief decription tags
- formatted code to roscpp style
- improved documentation
- introduced getAbsName
- Added missing lock
- pre-allocate handles
- fixed typos
- set version to match the others
- fixed a lot of typos
- Intitial version of moveit_ros_control_interface package
- Contributors: Mathias Luedtke
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
ament_cmake | |
moveit_common | |
rclcpp_action | |
controller_manager_msgs | |
moveit_core | |
moveit_simple_controller_manager | |
pluginlib | |
trajectory_msgs |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged moveit_ros_control_interface at Robotics Stack Exchange
|
Package Summary
Tags | No category tags. |
Version | 0.9.18 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-planning/moveit.git |
VCS Type | git |
VCS Version | kinetic-devel |
Last Updated | 2020-10-12 |
Dev Status | MAINTAINED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mathias Lüdtke
- MoveIt! Release Team
Authors
- Mathias Lüdtke
MoveIt! ROS Control Plugin
This package provides plugins of base class moveit_controller_manager::MoveItControllerManager
and a new plugin base class for moveit_controller_manager::MoveItControllerHandle
allocators.
The allocator class is necessary because moveit_controller_manager::MoveItControllerHandle
needs a name passed to the constructor.
Two variantes are provided, moveit_ros_control_interface::MoveItControllerManager
for interfacing a single ros_control node and moveit_ros_control_interface::MoveItMultiControllerManager
for seamless integration with any number of ros_control nodes.
moveit_ros_control_interface::MoveItControllerManager
This plugin interfaces a single ros_control-driven node in the namespace given in the ~ros_control_namespace
ROS parameter.
It polls all controllers via the list_controllers
service and passes their properties to MoveIt!.
The polling is throttled to 1 Hertz.
Handle plugins
The actual handle creation is delegated to allocator plugins of base class moveit_ros_control_interface::ControllerHandleAllocator
.
These plugins should be registered with lookup names that match the corresponding controller types.
Currently plugins for position_controllers/JointTrajectoryController
, velocity_controllers/JointTrajectoryController
and effort_controllers/JointTrajectoryController
are available, which simply wrap moveit_simple_controller_manager::FollowJointTrajectoryControllerHandle
instances.
Setup
In your MoveIt! launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
) set the moveit_controller_manager
parameter:
<param name="moveit_controller_manager" value="moveit_ros_control_interface::MoveItControllerManager" />
And make sure to set the ros_control_namespace
parameter to the namespace (without the /controller_manager/ part) of the ros_control-based node you like to interface.
If you are using the moveit_setup_assistent
you can add it to ROBOT_moveit_config/config/controllers.yaml
, e.g.:
ros_control_namespace: /ROS_CONTROL_NODE
controller_list:
- name: /ROS_CONTROL_NODE/position_trajectory_controller
action_ns: follow_joint_trajectory
type: FollowJointTrajectory
default: true
joints:
- joint_a1
- joint_a2
- joint_a3
- joint_a4
- joint_a5
- joint_a6
- joint_a7
Controller switching
MoveIt! can decide which controllers have to be started and stopped. Since only controller names with registered allocator plugins are handed over to MoveIt!, this implementation takes care of stopping other conflicting controllers based on their claimed resources and the resources for the to-be-started controllers.
Namespaces
All controller names get prefixed by the namespace of the ros_control node.
For this to work the controller names should not contain slashes. This is a strict requirement if the ros_control namespace is /
.
moveit_ros_control_interface::MoveItMultiControllerManager
This plugin does not need further configuration. It polls the ROS master for services and identifies ros_control nodes automatically.
It spawns moveit_ros_control_interface::MoveItControllerManager
instances with their namespace and takes cares of proper delegation.
Setup
Just set the moveit_controller_manager
parameter in your MoveIt! launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
)
<param name="moveit_controller_manager" value="moveit_ros_control_interface::MoveItMultiControllerManager" />
Changelog for package moveit_ros_control_interface
0.9.18 (2020-01-24)
0.9.17 (2019-07-09)
0.9.16 (2019-06-29)
0.9.15 (2018-10-29)
0.9.14 (2018-10-24)
0.9.13 (2018-10-24)
0.9.12 (2018-05-29)
0.9.11 (2017-12-25)
0.9.10 (2017-12-09)
0.9.9 (2017-08-06)
- [improve] add backward compatibility patch for indigo (#551)
- Contributors: Michael Görner
0.9.8 (2017-06-21)
0.9.7 (2017-06-05)
0.9.6 (2017-04-12)
0.9.5 (2017-03-08)
0.9.4 (2017-02-06)
- [maintenance] clang-format upgraded to 3.8 (#367)
- Contributors: Dave Coleman, Michael Goerner
0.9.3 (2016-11-16)
0.5.7 (2016-01-30)
- C++03 conforming nested templates
- fixed typo, added example config
- added brief decription tags
- formatted code to roscpp style
- improved documentation
- introduced getAbsName
- Added missing lock
- pre-allocate handles
- fixed typos
- set version to match the others
- fixed a lot of typos
- Intitial version of moveit_ros_control_interface package
- Contributors: Mathias Luedtke
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
actionlib | |
controller_manager_msgs | |
moveit_core | |
moveit_simple_controller_manager | |
pluginlib | |
trajectory_msgs |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
panda_moveit_config | |
moveit_plugins |
Launch files
Messages
Services
Recent questions tagged moveit_ros_control_interface at Robotics Stack Exchange
|
Package Summary
Tags | No category tags. |
Version | 0.8.7 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-planning/moveit.git |
VCS Type | git |
VCS Version | jade-devel |
Last Updated | 2017-07-23 |
Dev Status | MAINTAINED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mathias Lüdtke
Authors
- Mathias Lüdtke
MoveIt! ROS Control Plugin
This package provides plugins of base class moveit_controller_manager::MoveItControllerManager
and a new plugin base class for moveit_controller_manager::MoveItControllerHandle
allocators.
The allocator class is necessary because moveit_controller_manager::MoveItControllerHandle
needs a name passed to the constructor.
Two variantes are provided, moveit_ros_control_interface::MoveItControllerManager
for interfacing a singe ros_control node and moveit_ros_control_interface::MoveItMultiControllerManager
for seamless integration with any number of ros_control nodes.
moveit_ros_control_interface::MoveItControllerManager
This plugin intefaces a single ros_control-driven node in the namespace given in the ~ros_control_namespace
ROS parameter.
It polls all controllers via the list_controllers
service and passes their properties to MoveIt!.
The polling is throttled to 1 Hertz.
Handle plugins
The actual handle creation is delegated to allocator plugins of base class moveit_ros_control_interface::ControllerHandleAllocator
.
These plugins should be registered with lookup names that match the corresponding controller types.
Currently plugins for position_controllers/JointTrajectoryController
, velocity_controllers/JointTrajectoryController
and effort_controllers/JointTrajectoryController
are available, which simply wrap moveit_simple_controller_manager::FollowJointTrajectoryControllerHandle
instances.
Setup
In your MoveIt! launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
) set the moveit_controller_manager
parameter:
<arg name="moveit_controller_manager" default="moveit_ros_control_interface::MoveItControllerManager" />
And make sure so set the ros_control_namespace
parameter to the namespace (without the /contoller_manager/ part) of the ros_control-based node you like to interface.
If you are using the moveit_setup_assistent
you can add it to ROBOT_moveit_config/config/ROBOT_controllers.yaml
, e.g.:
ros_control_namespace: /ROBOT
controller_list:
- name: /ROBOT/position_trajectory_controller
action_ns: follow_joint_trajectory
type: FollowJointTrajectory
default: true
joints:
- joint_a1
- joint_a2
- joint_a3
- joint_a4
- joint_a5
- joint_a6
- joint_a7
Controller switching
MoveIt! can decide which controllers have to be started and stopped. Since only controller names with registered allocator plugins are handed over to MoveIt!, this implementation takes care of stopping other confflicting controllers based on their claimed resources and the resources for the to-be-started controlles.
Namespaces
All controller names get prefixed by the namespace of the ros_control node.
For this to work the controller names should not contain slashes. This is a strict requirement if the ros_control namespace is /
.
moveit_ros_control_interface::MoveItMultiControllerManager
This plugin does not need further configuration. It polls the ROS master for services and identifies ros_control nodes automatically.
It spawns moveit_ros_control_interface::MoveItControllerManager
instances with their namespace and takes cares of proper delegation.
Setup
Just set the moveit_controller_manager
parameter in your MoveIt! launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
)
<arg name="moveit_controller_manager" default="moveit_ros_control_interface::MoveItMultiControllerManager" />
Changelog for package moveit_ros_control_interface
0.8.7 (2017-04-03)
0.8.6 (2017-03-08)
0.8.4 (2017-02-06)
- [doc] Cleanup readme (#267)
- [maintenance] Replace last easy explicit shared_ptrs with MOVEIT_CLASS_FORWARD.
- Contributors: Dave Coleman, Isaac I.Y. Saito, Maarten de Vries
0.8.3 (2016-08-19)
- Dummy to temporarily workaround https://github.com/ros-infrastructure/catkin_pkg/issues/158#issuecomment-277852080
0.5.7 (2016-01-30)
- C++03 conforming nested templates
- fixed typo, added example config
- added brief decription tags
- formatted code to roscpp style
- improved documentation
- introduced getAbsName
- Added missing lock
- pre-allocate handles
- fixed typos
- set version to match the others
- fixed a lot of typos
- Intitial version of moveit_ros_control_interface package
- Contributors: Mathias Luedtke
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
actionlib | |
controller_manager_msgs | |
moveit_core | |
moveit_simple_controller_manager | |
pluginlib | |
trajectory_msgs |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_plugins |
Launch files
Messages
Services
Recent questions tagged moveit_ros_control_interface at Robotics Stack Exchange
|
Package Summary
Tags | No category tags. |
Version | 0.7.14 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-planning/moveit.git |
VCS Type | git |
VCS Version | indigo-devel |
Last Updated | 2019-06-17 |
Dev Status | MAINTAINED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mathias Lüdtke
- MoveIt! Release Team
Authors
- Mathias Lüdtke
MoveIt! ROS Control Plugin
This package provides plugins of base class moveit_controller_manager::MoveItControllerManager
and a new plugin base class for moveit_controller_manager::MoveItControllerHandle
allocators.
The allocator class is necessary because moveit_controller_manager::MoveItControllerHandle
needs a name passed to the constructor.
Two variantes are provided, moveit_ros_control_interface::MoveItControllerManager
for interfacing a singe ros_control node and moveit_ros_control_interface::MoveItMultiControllerManager
for seamless integration with any number of ros_control nodes.
moveit_ros_control_interface::MoveItControllerManager
This plugin intefaces a single ros_control-driven node in the namespace given in the ~ros_control_namespace
ROS parameter.
It polls all controllers via the list_controllers
service and passes their properties to MoveIt!.
The polling is throttled to 1 Hertz.
Handle plugins
The actual handle creation is delegated to allocator plugins of base class moveit_ros_control_interface::ControllerHandleAllocator
.
These plugins should be registered with lookup names that match the corresponding controller types.
Currently plugins for position_controllers/JointTrajectoryController
, velocity_controllers/JointTrajectoryController
and effort_controllers/JointTrajectoryController
are available, which simply wrap moveit_simple_controller_manager::FollowJointTrajectoryControllerHandle
instances.
Setup
In your MoveIt! launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
) set the moveit_controller_manager
parameter:
<arg name="moveit_controller_manager" default="moveit_ros_control_interface::MoveItControllerManager" />
And make sure so set the ros_control_namespace
parameter to the namespace (without the /contoller_manager/ part) of the ros_control-based node you like to interface.
If you are using the moveit_setup_assistent
you can add it to ROBOT_moveit_config/config/ROBOT_controllers.yaml
, e.g.:
ros_control_namespace: /ROBOT
controller_list:
- name: /ROBOT/position_trajectory_controller
action_ns: follow_joint_trajectory
type: FollowJointTrajectory
default: true
joints:
- joint_a1
- joint_a2
- joint_a3
- joint_a4
- joint_a5
- joint_a6
- joint_a7
Controller switching
MoveIt! can decide which controllers have to be started and stopped. Since only controller names with registered allocator plugins are handed over to MoveIt!, this implementation takes care of stopping other confflicting controllers based on their claimed resources and the resources for the to-be-started controlles.
Namespaces
All controller names get prefixed by the namespace of the ros_control node.
For this to work the controller names should not contain slashes. This is a strict requirement if the ros_control namespace is /
.
moveit_ros_control_interface::MoveItMultiControllerManager
This plugin does not need further configuration. It polls the ROS master for services and identifies ros_control nodes automatically.
It spawns moveit_ros_control_interface::MoveItControllerManager
instances with their namespace and takes cares of proper delegation.
Setup
Just set the moveit_controller_manager
parameter in your MoveIt! launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
)
<arg name="moveit_controller_manager" default="moveit_ros_control_interface::MoveItMultiControllerManager" />
Changelog for package moveit_ros_control_interface
0.7.14 (2018-10-20)
0.7.13 (2017-12-25)
0.7.12 (2017-08-06)
0.7.11 (2017-06-21)
0.7.10 (2017-06-07)
0.7.9 (2017-04-03)
0.7.8 (2017-03-08)
0.7.7 (2017-02-06)
- [maintenance] clang-format upgraded to 3.8 (#404)
- Contributors: Dave Coleman
0.7.6 (2016-12-30)
0.7.5 (2016-12-25)
0.7.4 (2016-12-22)
0.7.3 (2016-12-20)
0.5.7 (2016-01-30)
- C++03 conforming nested templates
- fixed typo, added example config
- added brief decription tags
- formatted code to roscpp style
- improved documentation
- introduced getAbsName
- Added missing lock
- pre-allocate handles
- fixed typos
- set version to match the others
- fixed a lot of typos
- Intitial version of moveit_ros_control_interface package
- Contributors: Mathias Lüdtke
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
actionlib | |
controller_manager_msgs | |
moveit_core | |
moveit_simple_controller_manager | |
pluginlib | |
trajectory_msgs |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_plugins |
Launch files
Messages
Services
Recent questions tagged moveit_ros_control_interface at Robotics Stack Exchange
|
Package Summary
Tags | No category tags. |
Version | 0.9.18 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-planning/moveit.git |
VCS Type | git |
VCS Version | kinetic-devel |
Last Updated | 2020-10-12 |
Dev Status | MAINTAINED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mathias Lüdtke
- MoveIt! Release Team
Authors
- Mathias Lüdtke
MoveIt! ROS Control Plugin
This package provides plugins of base class moveit_controller_manager::MoveItControllerManager
and a new plugin base class for moveit_controller_manager::MoveItControllerHandle
allocators.
The allocator class is necessary because moveit_controller_manager::MoveItControllerHandle
needs a name passed to the constructor.
Two variantes are provided, moveit_ros_control_interface::MoveItControllerManager
for interfacing a single ros_control node and moveit_ros_control_interface::MoveItMultiControllerManager
for seamless integration with any number of ros_control nodes.
moveit_ros_control_interface::MoveItControllerManager
This plugin interfaces a single ros_control-driven node in the namespace given in the ~ros_control_namespace
ROS parameter.
It polls all controllers via the list_controllers
service and passes their properties to MoveIt!.
The polling is throttled to 1 Hertz.
Handle plugins
The actual handle creation is delegated to allocator plugins of base class moveit_ros_control_interface::ControllerHandleAllocator
.
These plugins should be registered with lookup names that match the corresponding controller types.
Currently plugins for position_controllers/JointTrajectoryController
, velocity_controllers/JointTrajectoryController
and effort_controllers/JointTrajectoryController
are available, which simply wrap moveit_simple_controller_manager::FollowJointTrajectoryControllerHandle
instances.
Setup
In your MoveIt! launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
) set the moveit_controller_manager
parameter:
<param name="moveit_controller_manager" value="moveit_ros_control_interface::MoveItControllerManager" />
And make sure to set the ros_control_namespace
parameter to the namespace (without the /controller_manager/ part) of the ros_control-based node you like to interface.
If you are using the moveit_setup_assistent
you can add it to ROBOT_moveit_config/config/controllers.yaml
, e.g.:
ros_control_namespace: /ROS_CONTROL_NODE
controller_list:
- name: /ROS_CONTROL_NODE/position_trajectory_controller
action_ns: follow_joint_trajectory
type: FollowJointTrajectory
default: true
joints:
- joint_a1
- joint_a2
- joint_a3
- joint_a4
- joint_a5
- joint_a6
- joint_a7
Controller switching
MoveIt! can decide which controllers have to be started and stopped. Since only controller names with registered allocator plugins are handed over to MoveIt!, this implementation takes care of stopping other conflicting controllers based on their claimed resources and the resources for the to-be-started controllers.
Namespaces
All controller names get prefixed by the namespace of the ros_control node.
For this to work the controller names should not contain slashes. This is a strict requirement if the ros_control namespace is /
.
moveit_ros_control_interface::MoveItMultiControllerManager
This plugin does not need further configuration. It polls the ROS master for services and identifies ros_control nodes automatically.
It spawns moveit_ros_control_interface::MoveItControllerManager
instances with their namespace and takes cares of proper delegation.
Setup
Just set the moveit_controller_manager
parameter in your MoveIt! launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
)
<param name="moveit_controller_manager" value="moveit_ros_control_interface::MoveItMultiControllerManager" />
Changelog for package moveit_ros_control_interface
0.9.18 (2020-01-24)
0.9.17 (2019-07-09)
0.9.16 (2019-06-29)
0.9.15 (2018-10-29)
0.9.14 (2018-10-24)
0.9.13 (2018-10-24)
0.9.12 (2018-05-29)
0.9.11 (2017-12-25)
0.9.10 (2017-12-09)
0.9.9 (2017-08-06)
- [improve] add backward compatibility patch for indigo (#551)
- Contributors: Michael Görner
0.9.8 (2017-06-21)
0.9.7 (2017-06-05)
0.9.6 (2017-04-12)
0.9.5 (2017-03-08)
0.9.4 (2017-02-06)
- [maintenance] clang-format upgraded to 3.8 (#367)
- Contributors: Dave Coleman, Michael Goerner
0.9.3 (2016-11-16)
0.5.7 (2016-01-30)
- C++03 conforming nested templates
- fixed typo, added example config
- added brief decription tags
- formatted code to roscpp style
- improved documentation
- introduced getAbsName
- Added missing lock
- pre-allocate handles
- fixed typos
- set version to match the others
- fixed a lot of typos
- Intitial version of moveit_ros_control_interface package
- Contributors: Mathias Luedtke
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
actionlib | |
controller_manager_msgs | |
moveit_core | |
moveit_simple_controller_manager | |
pluginlib | |
trajectory_msgs |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_plugins |
Launch files
Messages
Services
Recent questions tagged moveit_ros_control_interface at Robotics Stack Exchange
|
Package Summary
Tags | No category tags. |
Version | 1.0.11 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-planning/moveit.git |
VCS Type | git |
VCS Version | melodic-devel |
Last Updated | 2022-09-13 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mathias Lüdtke
- MoveIt! Release Team
Authors
- Mathias Lüdtke
MoveIt! ROS Control Plugin
This package provides plugins of base class moveit_controller_manager::MoveItControllerManager
and a new plugin base class for moveit_controller_manager::MoveItControllerHandle
allocators.
The allocator class is necessary because moveit_controller_manager::MoveItControllerHandle
needs a name passed to the constructor.
Two variantes are provided, moveit_ros_control_interface::MoveItControllerManager
for interfacing a single ros_control node and moveit_ros_control_interface::MoveItMultiControllerManager
for seamless integration with any number of ros_control nodes.
moveit_ros_control_interface::MoveItControllerManager
This plugin interfaces a single ros_control-driven node in the namespace given in the ~ros_control_namespace
ROS parameter.
It polls all controllers via the list_controllers
service and passes their properties to MoveIt!.
The polling is throttled to 1 Hertz.
Handle plugins
The actual handle creation is delegated to allocator plugins of base class moveit_ros_control_interface::ControllerHandleAllocator
.
These plugins should be registered with lookup names that match the corresponding controller types.
Currently plugins for position_controllers/JointTrajectoryController
, velocity_controllers/JointTrajectoryController
and effort_controllers/JointTrajectoryController
are available, which simply wrap moveit_simple_controller_manager::FollowJointTrajectoryControllerHandle
instances.
Setup
In your MoveIt! launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
) set the moveit_controller_manager
parameter:
<param name="moveit_controller_manager" value="moveit_ros_control_interface::MoveItControllerManager" />
And make sure to set the ros_control_namespace
parameter to the namespace (without the /controller_manager/ part) of the ros_control-based node you like to interface.
If you are using the moveit_setup_assistent
you can add it to ROBOT_moveit_config/config/controllers.yaml
, e.g.:
ros_control_namespace: /ROS_CONTROL_NODE
controller_list:
- name: /ROS_CONTROL_NODE/position_trajectory_controller
action_ns: follow_joint_trajectory
type: FollowJointTrajectory
default: true
joints:
- joint_a1
- joint_a2
- joint_a3
- joint_a4
- joint_a5
- joint_a6
- joint_a7
Controller switching
MoveIt! can decide which controllers have to be started and stopped. Since only controller names with registered allocator plugins are handed over to MoveIt!, this implementation takes care of stopping other conflicting controllers based on their claimed resources and the resources for the to-be-started controllers.
Namespaces
All controller names get prefixed by the namespace of the ros_control node.
For this to work the controller names should not contain slashes. This is a strict requirement if the ros_control namespace is /
.
moveit_ros_control_interface::MoveItMultiControllerManager
This plugin does not need further configuration. It polls the ROS master for services and identifies ros_control nodes automatically.
It spawns moveit_ros_control_interface::MoveItControllerManager
instances with their namespace and takes cares of proper delegation.
Setup
Just set the moveit_controller_manager
parameter in your MoveIt! launch file (e.g. ROBOT_moveit_config/launch/ROBOT_moveit_controller_manager.launch.xml
)
<param name="moveit_controller_manager" value="moveit_ros_control_interface::MoveItMultiControllerManager" />
Changelog for package moveit_ros_control_interface
1.0.11 (2022-09-13)
1.0.10 (2022-03-06)
1.0.9 (2022-01-09)
1.0.8 (2021-05-23)
1.0.7 (2020-11-20)
- [maint] Add comment to MOVEIT_CLASS_FORWARD (#2315)
- Contributors: Felix von Drigalski
1.0.6 (2020-08-19)
1.0.5 (2020-07-08)
1.0.4 (2020-05-30)
1.0.3 (2020-04-26)
- [maint] Fix errors: catkin_lint 1.6.7 (#1987)
- [maint] Windows build: Fix binary artifact install locations. (#1575)
- [maint] Use CMAKE_CXX_STANDARD to enforce c++14 (#1607)
- [feature] Add support for pos_vel_controllers and pos_vel_acc_controllers (#1806)
- Contributors: Robert Haschke, Sandro Magalhães, Sean Yen
1.0.2 (2019-06-28)
1.0.1 (2019-03-08)
1.0.0 (2019-02-24)
- [fix] catkin_lint issues (#1341)
- Contributors: Robert Haschke
0.10.8 (2018-12-24)
0.10.7 (2018-12-13)
0.10.6 (2018-12-09)
- [maintenance] Code Cleanup (#1196)
- Contributors: Robert Haschke
0.10.5 (2018-11-01)
0.10.4 (2018-10-29)
0.10.3 (2018-10-29)
0.10.2 (2018-10-24)
0.10.1 (2018-05-25)
0.9.11 (2017-12-25)
0.9.10 (2017-12-09)
0.9.9 (2017-08-06)
- [improve] add backward compatibility patch for indigo (#551)
- Contributors: Michael Görner
0.9.8 (2017-06-21)
0.9.7 (2017-06-05)
0.9.6 (2017-04-12)
0.9.5 (2017-03-08)
0.9.4 (2017-02-06)
- [maintenance] clang-format upgraded to 3.8 (#367)
- Contributors: Dave Coleman, Michael Goerner
0.9.3 (2016-11-16)
0.5.7 (2016-01-30)
- C++03 conforming nested templates
- fixed typo, added example config
- added brief decription tags
- formatted code to roscpp style
- improved documentation
- introduced getAbsName
- Added missing lock
- pre-allocate handles
- fixed typos
- set version to match the others
- fixed a lot of typos
- Intitial version of moveit_ros_control_interface package
- Contributors: Mathias Luedtke
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
actionlib | |
controller_manager_msgs | |
moveit_core | |
moveit_simple_controller_manager | |
pluginlib | |
trajectory_msgs |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_plugins |