Robert Haschke
45ea86c163
clang-tidy fixes: use uint8_t enums
2024-12-22 12:28:58 +01:00
Robert Haschke
5067dbb432
clang-tidy fixes
2024-12-22 12:28:26 +01:00
Robert Haschke
28b3e24a26
CI: Drop obsolete clang-tidy option AnalyzeTemporaryDtors
2024-12-21 17:41:29 +01:00
JafarAbdi
5d23cb89df
Add support for GenerateRandomPose
2024-12-09 09:53:07 +01:00
Robert Haschke
f29784e750
Improve error message
...
Indicate source of error as CartesianPath.
2024-12-06 12:07:15 +01:00
Robert Haschke
d5e1376b08
Add Jammy build
2024-12-04 14:23:44 +01:00
JafarAbdi
f5a0a545e5
python: Add Task::setRobotModel
2024-12-04 13:26:33 +01:00
Robert Haschke
821b5951f1
Silent pybind11 warning
2024-12-02 11:21:22 +01:00
Robert Haschke
1acf72e0b4
examples: add orientation path constraint
...
constrained.py: constrain orientation of attached object
pickplace.py: keep object upright during transport
2024-10-15 17:07:17 +02:00
Robert Haschke
69b4606bca
CI: Return to custom cache action
2024-10-13 23:53:06 +02:00
Robert Haschke
0a502ce7fe
Add path_constraints property to Connect stage
2024-10-11 22:11:33 +02:00
Michael Görner
721ff356b7
provide a fmt wrapper ( #615 )
...
for special eigen formatter, which is not available in fmt9
https://github.com/fmtlib/fmt/issues/3465
https://stackoverflow.com/a/73755864/21260084
2024-09-24 20:41:12 +02:00
Michael Görner
d50c846a7b
Ignore Debian-specific catkin_lint error around urdfdom_headers ( #614 )
...
Without the patch:
$ catkin_lint rviz_marker_tools/
rviz_marker_tools: package.xml: error: missing build_depend on 'urdfdom_headers'
requires catkin_lint 1.6.24 for successful error suppression.
2024-09-24 20:32:42 +02:00
Robert Haschke
99ccc115e0
Update API: JumpThreshold -> CartesianPrecision ( #611 )
...
Python: Access properties via writable references
This allows to modify properties in place, e.g. cartesian_solver.precision.translational = 0.01
2024-09-17 10:59:14 +02:00
Michael Görner
5a44808146
clean up dependencies for rviz_marker_tools ( #610 )
...
liburdfdom-dev is not actually used. Only liburdfdom-headers-dev.
2024-09-02 22:52:47 +02:00
Robert Haschke
184d39897a
Add missing test dependency
2024-09-02 11:20:45 +02:00
Robert Haschke
237a07f96f
CI: Update actions
2024-09-02 09:25:12 +02:00
Captain Yoshi
fdc06c3b91
Reduce stop time due to preempt ( #598 )
...
The preempt_request_ flag was only checked at the top-level task container before each compute iteration.
As a single sweep might take a while, we should check the flag before computing each stage.
2024-07-19 15:46:12 +02:00
Robert Haschke
4f69a22ddb
Silent error "Found empty JointState message"
2024-07-18 13:48:32 +02:00
Robert Haschke
7631486648
Add unittest for #581
2024-07-17 15:10:53 +02:00
Captain Yoshi
cd28bdcd1f
Fix early planning preemption ( #597 )
...
Calling preempt() before plan() is able to reset the preempt_requested_ flag causes the preemption request to get lost. To avoid this issue, we allow a) manual resetting of the request and b) reset the request before leaving plan().
2024-07-17 14:56:01 +02:00
Paul Gesel
60ccd74443
MoveRelative: fix segfault on empty trajectory ( #595 )
...
Check that at least one robot state exists in the robot trajectory before accessing it.
Signed-off-by: Paul Gesel <paul.gesel@picknik.ai>
2024-07-16 17:18:16 +02:00
Robert Haschke
2e9a223827
MoveRelative: handle equal min/max distance ( #593 )
...
When min_distance == max_distance > 0.0, the minimal distance might be missed due to numerical errors.
To avoid this, deactivate the minimal distance check and run the full distance as given by max_distance.
2024-07-16 08:24:55 +02:00
Robert Haschke
8d2baf2739
Cleanup unit tests
...
... and allow them to run via both, cmdline and pytest
2024-07-13 01:59:22 +02:00
Robert Haschke
6d376fb8b9
Connect: Relax validity check of reached end state
2024-07-12 06:31:33 +02:00
Robert Haschke
0fed09d431
Unify Python demo scripts
2024-07-12 06:31:33 +02:00
Robert Haschke
93ef98ad67
Switch shebang to python3
2024-07-11 15:44:28 +02:00
Robert Haschke
4debc37904
Silence gcc's overloaded-virtual warnings
2024-07-11 09:50:35 +02:00
Fabian Schuetze
702710dec5
Improve comments for pick-and-place task ( #238 )
2024-07-06 19:59:05 +02:00
Robert Haschke
fbc05e4496
Add property to enable/disable pruning at runtime ( #590 )
2024-07-06 16:51:14 +02:00
Robert Haschke
907014cd57
Disable pruning by default
2024-07-04 12:05:31 +02:00
Robert Haschke
93a3964138
test_pruning.cpp: Add new test
2024-07-04 11:57:31 +02:00
Robert Haschke
48bde8daab
test_pruning.cpp: Extend test to ParallelContainer
2024-07-04 11:57:31 +02:00
Robert Haschke
42a08d6444
PassThrough: cleanup unused headers
2024-07-04 11:57:31 +02:00
Robert Haschke
a84479cc58
Avoid segfault if TimeParameterization is not set
2024-07-03 09:32:30 +02:00
Robert Haschke
b1336dc210
CartesianPath: allow ik_frame definition
...
... if start and end are given as joint-space poses
2024-06-29 18:02:05 +02:00
Robert Haschke
177e19de1f
Generalize utils::getRobotTipForFrame()
...
... to return error_msg instead of calling markAsFailure() on a solution
2024-06-29 17:55:45 +02:00
Robert Haschke
8fa66a6d2c
Update pybind11 to version 2.12.0
...
Currently used branch was not interoperable with a standard version of pybind11.
2024-05-29 15:43:46 +02:00
VideoSystemsTech
ad5c878f19
ComputeIK: Allow additional constraints for filtering solutions ( #464 )
...
Add "constraint" property.
Co-authored-by: Robert Haschke <rhaschke@techfak.uni-bielefeld.de>
2024-05-28 16:54:10 +02:00
VideoSystemsTech
227d475282
Expose MultiPlanner to Python ( #474 )
...
Co-authored-by: Robert Haschke <rhaschke@techfak.uni-bielefeld.de>
2024-05-27 19:17:45 +02:00
Captain Yoshi
3b4ea48c18
Add unittest cartesianCollisionMinMaxDistance ( #538 )
...
... to illustrate that MoveRelative's min-max constraint fails with PipelinePlanners (e.g. Pilz) returning a partially invalid trajectory: MTC does not truncate the trajectory to its valid part and thus fails, even if the valid part fits the given min-max range. This logic is only supported for the CartesianPath planner for now.
Co-authored-by: Robert Haschke <rhaschke@techfak.uni-bielefeld.de>
2024-05-27 16:16:57 +02:00
Robert Haschke
92efc14043
Rename ros-planning org
2024-05-25 21:30:30 +02:00
Robert Haschke
7666f73e04
Simplify formatting code with https://github.com/fmtlib ( #499 )
...
* Simplify formatting code with https://github.com/fmtlib
* Update to clang-format-12
2024-05-25 19:12:42 +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
54e653ebdb
Fix failing assertion
...
The cost of a newly created Priority does not need to be finite.
An example occurs in the Pick+Place demo: the CurrentState solution
is filtered by an applicibility test, which may set the cost to infinity
while lifting the solution to the wrapper stage.
In this case, new InterfaceStates are created from the infinite cost solution.
Consequently, the state should be marked as PRUNED.
2024-05-24 12:02:20 +02:00
Robert Haschke
9c05305eff
ModifyPlanningScene: check state for collisions
2024-05-24 10:49:14 +02:00
Robert Haschke
a8896e4e5d
Improve TypeError exceptions
...
- use pybind11 API instead of Python C API
- provide more informative error messages
2024-05-23 14:08:49 +02:00
Robert Haschke
74b1e5e5d3
CI: prerelease.yaml: make ROS_DISTRO an interactive input
2024-05-23 14:08:49 +02:00
Robert Haschke
8ede80d26d
Example of constrained orientation planning
2024-05-23 14:08:49 +02:00
Robert Haschke
92b917d264
CI: update actions
2024-05-23 14:08:49 +02:00