Commit Graph

678 Commits

Author SHA1 Message Date
Robert Haschke
5d2857be6b Merge branches 'simplify-node-creation' and 'master' into ros2 2024-05-24 14:39:38 +02:00
Captain Yoshi
a0c00646c2
Add NoOp stage (#534)
This stage can be used to add arbitrary user-defined properties w/o modifying the PlanningScene state or adding a trajectory.

Co-authored-by: Robert Haschke <rhaschke@techfak.uni-bielefeld.de>
2024-05-24 14:34:27 +02:00
Robert Haschke
9c05305eff ModifyPlanningScene: check state for collisions 2024-05-24 10:49:14 +02:00
Captain Yoshi
ad19ea5479
Add ability to move CollisionObjects (#567) 2024-05-12 11:03:47 +02:00
Robert Haschke
046309d60a Simplify rclcpp::Node creation
Directly pass node name and namespace instead of using options.
2024-05-08 10:19:28 +02:00
Sebastian Castro
819e560ed4
Improve description of max_distance property of Connect stage (#564) 2024-05-05 19:30:36 +02:00
Daniel García López
560aa0a476
Add Generator::spawn(from, to, trajectory) variant (#546) 2024-03-20 15:32:15 +01:00
Sebastian Jahr
5ae22da8db fixup! Add planner_id to SubTrajectory info (#490) 2024-03-19 14:51:35 +01:00
Robert Haschke
739375298a Merge branch master into ros2 2024-03-09 13:34:36 +01:00
Robert Haschke
55c4b52b13 Cosmetic fixes 2024-03-09 11:11:01 +01:00
Robert Haschke
4aac679257 Fix generation of Solution msg: consider backward operation
Need to generate full planning scene message if planning progressed backwards:
The scene_diff field describes PlanningScene changes of the end scene relative to the start scene,
while during planning it might be inversed.
2024-03-08 17:16:19 +01:00
Abishalini
e09fecd71f Propagate errors from planners to solution comment (#525) 2024-03-08 11:13:10 +01:00
Abishalini Sivaraman
5dd170b849 Add planner info to comments (#523) 2024-03-07 21:19:27 +01:00
Mario Prats
11c3126052 Update to the more recent JumpThreshold API (#506) 2024-03-07 20:35:03 +01:00
Michael Wiznitzer
0827a0d260 JointInterpolationPlanner: Check joint bounds (#505) 2024-03-07 20:33:43 +01:00
Robert Haschke
d0a904c313 Add property trajectory_execution_info (#355, #502)
... to pass a list of controller names to PlanExecution

---------

Co-authored-by: Luca Lach <llach@techfak.uni-bielefeld.de>
2024-03-07 20:01:03 +01:00
Robert Haschke
a75d50e0ed Clear JointStates in scene diff (#504)
Joints are handled in trajectories.
Scene diffs should not modify joints during execution.
Fixes #353.
2024-03-07 12:23:07 +01:00
Sebastian Jahr
b0f388a88f Set a non-infinite default timeout in CurrentState stage (#491)
Co-authored-by: Mario Prats <mario.prats@picknik.ai>
2024-03-07 12:23:07 +01:00
Henning Kayser
111d9ba207
Add GenerateRandomPose stage (#166)
Implements a generic pose randomizer

Co-authored-by: JafarAbdi <cafer.abdi@gmail.com>
Co-authored-by: Sebastian Jahr <sebastian.jahr@picknik.ai>
Co-authored-by: Robert Haschke <rhaschke@techfak.uni-bielefeld.de>
2024-03-06 22:32:13 +01:00
Sebastian Jahr
1e058598c7 Add planner_id to SubTrajectory info (#490) 2024-03-06 18:11:57 +01:00
Sebastian Jahr
ed70497d33 Remove display_motion_plans and publish_planning_requests properties (#489) 2024-03-06 15:59:39 +01:00
Sebastian Jahr
0e02fcae77 Enable parallel planning with PipelinePlanner (#450)
* Refactor pipeline planner

Make code readable

Re-order plan functions

Make usable with parallel planning

Enable configuring multiple pipelines

Add callbacks

Cleanup and documentation

Add API to set parallel planning callbacks and deprecate functions

Pass pipeline map by reference

Small clang-tidy fix

Update core/src/solvers/pipeline_planner.cpp

Co-authored-by: Sebastian Castro <4603398+sea-bass@users.noreply.github.com>

Update core/src/solvers/pipeline_planner.cpp

Format

Refactor to avoid calling .at(0) twice

Use no default stopping criteria

Update fallbacks_move demo

* Cleanup + address deprecation warnings

* Enabling optionally using a property defined pipeline planner map

* Address review

* Disable humble CI for ros2 branch

* Add pipeline planner unittests + some checks

* Add short comment
2024-03-06 15:59:09 +01:00
Captain Yoshi
911bc67c4d
GenerateGraspPose: Expose rotation_axis as property (#535) 2024-03-06 11:02:44 +01:00
Captain Yoshi
5720b83dce
Connect: ensure end-state matches goal state (#532) 2024-02-25 16:58:56 +01:00
Robert Haschke
e163f57f9c Cleanup debug output 2024-02-15 21:42:18 +01:00
Robert Haschke
9dfd6bd2eb Fix duplicate solutions
When adding pending state pairs for a new incoming state to Connect,
we have to re-enable opposite states from ARMED state.
This changes the order of states in the interface.
If we do this while iterating over the states, we might add pairs multiple times,
because iteration continues with same state at an earlier position.
2024-02-15 21:42:18 +01:00
Robert Haschke
bf2714b42d printPendingPairs(os) -> os<<pendingPairsPrinter() 2023-10-25 22:21:36 +02:00
Robert Haschke
13264ba21d Fix leaking of failures into enumerated solutions 2023-10-25 22:21:36 +02:00
Robert Haschke
7b965863e3 Add more debugging output
- Add Stage::introspection() accessor
- Introspection: debug-log solution registration
- RemoteSolutionModel: show internal solution id as tooltip in 1st column
2023-10-25 22:19:49 +02:00
Michael Görner
dcde89d4d5
Skip Fallbacks::replaceImpl() when already correctly initialized (#494)
Do not reinitialize a Fallbacks' pimpl if it already serves the desired interface.
2023-10-11 14:45:24 +02:00
Robert Haschke
647f3ec413 Limit time to wait for execute_task_solution action server 2023-09-18 10:35:23 +02:00
Robert Haschke
349e3c6c6c Merge branch master into ros2 2023-05-26 16:38:15 +02:00
Robert Haschke
c605a0059a Replace namespace robot_[model|state] with moveit::core 2023-05-26 01:18:17 +02:00
Robert Haschke
6f7282423d MPS: fixup processCollisionObject
- Declare CollisionObject argument as constant:
  Internally the argument is temporarily modified, but for a caller it is effectively const.
- Correctly restore the old operation mode
- Fixup check in unit test
2023-05-26 01:15:50 +02:00
Robert Haschke
3ec69fb59d
Merge PR #460: improvements to ModifyPlanningScene stage 2023-05-25 22:29:31 +02:00
Robert Haschke
78da3e46e6
Gracefully handle NULL robot_trajectory (#469) 2023-05-25 17:49:23 +02:00
JafarAbdi
45ff3ea437 Improve cmake
- Modernize
- Add include folder for INSTALL_INTERFACE
2023-05-25 17:05:45 +02:00
Robert Haschke
76d293863b
introspection: remove any invalid ROS-name chars from hostname (#465) 2023-05-19 08:48:28 +02:00
Robert Haschke
397fc070ea Fix SolutionBase::fillMessage(): also write start_scene
This method was only doing half of the job, namely adding subsolutions
to the message fields. However, the start_scene was not yet written.
This was handled manually in some but not all callers.
To avoid this inconsistency, the new method toMsg() takes care of both
actions now, while the old fillMessage() method was renamed to appendTo().
2023-05-19 08:43:14 +02:00
Robert Haschke
bd400de184 Fix add/remove object in backward operation
- addObject() will actually remove the object from scene
- removeObject() is not supported (we would need to know which object to add)
2023-05-19 08:43:12 +02:00
Robert Haschke
6a01550e8d ComputeIK: update RobotState before calling setFromIK()
This became necessary due to https://github.com/ros-planning/moveit/issues/3388.
2023-05-17 21:01:57 +02:00
Michael Görner
4d2a5714fa
Use pluginlib consistently (#463) 2023-05-17 19:55:18 +02:00
Robert Haschke
d59acdb969 Fix allowCollisions(object, enable_collision)
Call ACM::setDefaultEntry to also cover objects that are not yet known to the ACM.
2023-05-16 09:43:00 +02:00
Robert Haschke
d1a6916206
Stage::explainFailure() (#445)
... to facilitate spotting the stage causing a task to fail
2023-05-04 17:07:11 +02:00
Robert Haschke
7f10292ab3
JointInterpolationPlanner: pass optional max_effort property along to GripperCommand (#458)
MoveIt passes the effort field of the last trajectory point as the max_effort for a GripperCommand.
Thus we pass the max_effort property to the effort field of the trajectory's last waypoint.
2023-05-04 15:29:53 +02:00
Robert Haschke
75e4260e2a
MoveRelative: Allow backwards operation for joint-space delta (#436) 2023-03-06 16:27:09 +01:00
Robert Haschke
61bb2fdc58
ComputeIK: Limit collision checking to JMG (#428)
That's what MoveIt is doing as well.
2023-02-28 13:18:53 +01:00
Robert Haschke
4a320f309c
Merge PR #429: MultiPlanner
MultiPlanner
2023-02-23 20:44:28 +01:00
Robert Haschke
ea776e35f6
Fix marker creation: allow zero scale for geometric shapes (#430)
Boxes, spheres, and cylinders might explicitly have a zero size. Don't reset their scaling to (1,1,1)
2023-02-23 20:42:23 +01:00
Peter David Fagan
5c308d1f28
remove underscore from public members in MotionPlanResponse (#426)
Required to align with changes introduced by https://github.com/ros-planning/moveit2/pull/1939

Co-authored-by: JafarAbdi <cafer.abdi@gmail.com>
2023-02-17 21:11:02 +01:00