Robert Haschke
e885c272fa
Merger: skip empty sub trajectories for merging
2019-02-21 00:50:25 +01:00
Robert Haschke
1047ef08a4
ComputeIK: fix typo
2019-02-21 00:47:52 +01:00
Robert Haschke
2da9e0d722
rework solution msgs
...
- to allow solution wrappers (WrappedSolution, SolutionSequence)
to transmit their comment and markers as well
- introduced new SolutionInfo.msg,
which is the info common to solution wrappers and actual SubTrajectories
2019-02-12 13:57:12 +01:00
Robert Haschke
527ec8edaa
correctly sort upstream_solutions_ in ComputeIK and GeneratePose
...
Reworked cost_queue to correctly sort pointer-like types.
Added unittests for new ValueOrPointeeLess<T> less operator, ordered<T>, and rviz cost ordering.
2019-02-12 03:05:36 +01:00
v4hn
8392ed5ad3
generate IK solutions incrementally
...
This is not a good approach.
The same can be achieved by generating targets incrementally.
The better approach, to generate IK solutions incrementally,
has to maintain previous solutions for each target.
2019-02-10 08:17:34 +01:00
Robert Haschke
1e0a9401e7
Merge PR #72 : rviz property visualization
2019-02-10 06:25:25 +01:00
Robert Haschke
e71376743c
yamp-cpp parsing
2019-02-10 06:21:51 +01:00
Robert Haschke
a1c81f1236
YAML property serialization
...
- switch from ROS serialization/deserialization to YAML
- no native C++ deserialization for ROS msg types available
- drop Propert::print()
2019-02-10 06:21:51 +01:00
Robert Haschke
4ca794cb86
unify property handling in LocalTaskModel and RemoteTaskModel
2019-02-10 06:21:51 +01:00
Robert Haschke
71099c68d4
Task: fix RobotModelPtr leak
...
On Task::clear() also need to reset introspection's cache.
2019-02-09 01:00:29 +01:00
Robert Haschke
a1f7c5d1c6
improve error msg for mismatching container/child interfaces
2019-02-06 10:29:10 +01:00
Robert Haschke
81cc0aecc6
Property::type_index -> boost::typeindex::type_info
...
avoid decl expressions, explicit public typedef
2019-01-17 23:54:35 +01:00
Robert Haschke
062cfe0b60
PropertyTypeRegistry to store serialization/deserialization functions
2019-01-17 23:54:35 +01:00
Robert Haschke
ae75c3aa7f
Eigen::Affine3 -> Eigen::Isometry3
2018-11-28 08:14:44 +01:00
v4hn
cd9115483b
let marker_ns default to stage name
...
The stages can still decide on their namespaces on their own,
but markerNS() at least provides a stage-specific name they can use.
2018-11-09 10:50:48 +01:00
v4hn
3176aff30f
add accessors for marker_ns property
2018-11-09 10:50:40 +01:00
v4hn
ac3b56a160
document timeout() helpers
2018-11-09 10:50:33 +01:00
v4hn
6b4b4ca624
ComputeIK: threshold for new solutions as property
2018-11-09 10:50:14 +01:00
v4hn
b379ba2268
fix broken rvalue-forward & SerialContainer assert
...
Release mode builds previously produced broken solutions with too many entries,
debug build triggered the assert
container.cpp:334: assert(solution.empty())
The standard guarantees std::vector(&&a) leaves a.empty() == true,
so the logic there is fine as long as subsolutions is actually
used for move-construction.
2018-11-09 10:47:51 +01:00
Robert Haschke
b9a86eb5be
use task id as default name of top-level stage
2018-11-08 12:55:45 +01:00
v4hn
a86eca9ada
predicate filter: fix documentation
2018-11-02 15:51:24 +01:00
v4hn
cc90d5f3f2
add PredicateFilter
2018-11-02 11:53:09 +01:00
Robert Haschke
5af54b5a21
GenerateGraspPose: spawn failure if object unknown
2018-11-02 11:36:00 +01:00
Robert Haschke
0f31cdee2e
move storeFailures() into public Stage API
2018-11-02 11:36:00 +01:00
Robert Haschke
915151fdd2
modify ps: add convenience functions
2018-11-02 11:21:48 +01:00
v4hn
e5fc8b62b4
MoveRelative: possibly update last waypoint before transform lookup
...
Apparently this RobotState is not necessarily updated,
this broke some pipeline testing over here.
2018-10-25 00:12:46 +02:00
v4hn
38cc4c6936
add comment to subtrajectory
2018-10-25 00:12:46 +02:00
v4hn
80adcb9e24
add comments to wrapped solutions
2018-10-24 11:53:14 +02:00
v4hn
73b35ef2bf
do not send failures to parent
...
It is enough for us to investigate these locally
2018-10-24 11:47:42 +02:00
v4hn
932497ce6d
do not pass failures on to monitors
...
They should not work with them and this
removes the need for the usual `if(s.isFailure) return`.
2018-10-24 11:44:26 +02:00
Robert Haschke
d6714e89ab
fixup! rename "goal" to "direction"
2018-10-23 21:09:07 +02:00
v4hn
9740179f7f
Merge branches 'cleanup-planner-interface', 'connect', 'fix-visualization' and 'rviz-createMarker' into master
2018-10-22 17:31:01 +02:00
v4hn
7fcef54a0e
fixup! add name to Connecting DEBUG output
...
This is important to differentiate between different Connect stages.
2018-10-22 17:28:52 +02:00
v4hn
13ad4d58f1
fixup! rename "goal" to "direction"
...
"Goal" implies a motion to a target configuration.
MoveRelative explicitly does not do that.
"Direction" is usually not used for rotations,
but perfectly valid to describe them.
I merged 544f574166
together with the first version of this rename
that got force-pushed because it was incomplete.
2018-10-22 17:07:00 +02:00
v4hn
a05a76fd8c
fixup! add properties for conditional debug output
...
in MoveIt planner.
These can be quite helpful.
I agree, we really don't need them enabled by default.
2018-10-22 16:59:24 +02:00
Robert Haschke
70e32cb0b3
Connect: skip initial PlanningScene::diff()
2018-10-21 00:27:50 +02:00
Robert Haschke
18bf5246ed
cleanup PlannerInterface
...
- remove group + timeout properties: they are passed as arguments to plan()
- move max_velocity_scaling_factor, max_acceleration_scaling_factor to PlannerInterface base class
2018-10-21 00:02:10 +02:00
Robert Haschke
b5b58ea0ca
Introspection::solutionFromId()
2018-10-20 23:33:54 +02:00
Robert Haschke
02ed4d3579
Connect: verbose debugging output in case of state incompatibilities
2018-10-20 23:32:43 +02:00
Robert Haschke
c6f985be3a
Connect: allow different merge modes
...
for now:
SEQUENTIAL (no merging)
WAYPOINTS (naive)
2018-10-20 23:32:43 +02:00
Robert Haschke
ba88c59201
Merge pull request #54 from ros-planning/pr-capability
...
ExecuteTaskSolution capability
2018-10-20 23:25:48 +02:00
Robert Haschke
1e39da2388
fix stage "FixCollisionObjects"
...
... correction wasn't initialized to zero, resulting in random NaNs
2018-10-20 22:59:27 +02:00
Robert Haschke
a0a9738a00
update PlanningScene's RobotState before storing it
2018-10-20 22:02:05 +02:00
Robert Haschke
e894d8bce2
fix caching of PlanningPipeline ptrs
...
Need to reset cache if corresponding RobotModel was destroyed.
To this end, we cannot simply use the RobotModel's name.
2018-10-20 21:50:05 +02:00
Robert Haschke
f548b7edcc
PipelinePlanner: disable publishing of plan request + computed path
2018-10-20 12:21:18 +02:00
Robert Haschke
36fe4c98be
reduce copying of shared ptrs
2018-10-20 12:21:18 +02:00
Robert Haschke
d648a4091e
guard use of introspection_ pointer
2018-10-20 02:38:11 +02:00
Robert Haschke
af6f7b12bf
pick_pa10: fix initialization of RobotState
...
only a subset of joints was initialized
2018-10-20 02:38:11 +02:00
Robert Haschke
e9b16ba7c0
fix destruction order
2018-10-20 02:38:11 +02:00
v4hn
1a4f6c0e57
keep RobotModelLoader around
...
Otherwise the robot_model_ does not remain valid
2018-10-17 01:55:28 +02:00