Package Summary
Tags | No category tags. |
Version | 2.1.0 |
License | BSD |
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 | 2021-02-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
- Boston Cleek
Authors
MoveIt 2 Beta - OMPL Constrained Planning Demo
Setup
Before running the demo add the following lines to ompl_planning.yaml
in the panda_config
package
bellow panda_arm:
enforce_constrained_state_space: true
projection_evaluator: joints(panda_joint1,panda_joint2)
Running
This demo includes a launch configuration for running MoveGroup and a separate demo node.
- Note: This demo shows how to construct a variety of constraints. See util.cpp for helper functions to automate constructing the constraint messages.
The MoveGroup setup can be started:
ros2 launch run_ompl_constrained_planning run_move_group.launch.py
This allows you to start planning and executing motions:
ros2 launch run_move_group run_move_group_interface.launch.py
Details
State space selection process
There are three options for state space selection.
Set
enforce_constrained_state_space = true
AND there must be path constraints in the planning request. This overrides all other settings and selects aConstrainedPlanningStateSpace
factory. If there are no path constraints in the planning request, this option is ignored, the constrained state space is only usefull for paths constraints. At the moment only a single position constraint is supported.Set
enforce_joint_model_state_space = true
and option 1. is false, then this overrides the remaining settings and selectsJointModelStateSpace
factory. Some planning problems such as orientation path constraints are represented inPoseModelStateSpace
and sampled via IK. However, consecutive IK solutions are not checked for proximity at the moment and sometimes happen to be flipped, leading to invalid trajectories. This workaround lets the user prevent this problem by forcing rejection sampling inJointModelStateSpace
.When options 1. and 2. are both set to false, the factory is selected based on the priority each one returns. See PoseModelStateSpaceFactory::canRepresentProblem for details on the selection process. In short, it selects
PoseModelStateSpace
if there is an IK solver and a path constraint.
Wiki Tutorials
Source Tutorials
Package Dependencies
Deps | Name | |
---|---|---|
1 | moveit_common | |
1 | ament_cmake | |
1 | fake_joint_driver | |
1 | warehouse_ros_mongo | |
1 | ament_lint_auto | |
1 | ament_lint_common | |
3 | moveit_ros_planning_interface |