Robert Haschke
168ff6f3f4
use simple InterpolationPlanner to open/close gripper
2019-05-02 14:55:34 +02:00
Robert Haschke
4063a3ca29
fix SimpleUnGrasp
...
- ComputeIK needs to be first sub stage for both, grasping and ungrasping
- correctly re-enable object collision checking
2019-05-02 14:55:34 +02:00
Robert Haschke
0fe18799d9
GeneratePlacePose
2019-05-02 14:55:34 +02:00
Robert Haschke
6de1c8dbe5
ContainerBase::findChild()
2019-05-02 14:55:34 +02:00
Robert Haschke
39427f89bf
Merge branches 'fix-interface-deduction' ( #84 ), 'compute-ik-default-timeout' ( #80 ),
...
'fix-visualization' (#76 ), and master-improvements (#81 )
2019-03-11 14:09:03 +01:00
Robert Haschke
c56c7294e4
fix pruning
...
Never augment already derived interfaces, only prune!
2019-03-11 13:54:54 +01:00
Robert Haschke
48d93e803d
improve SerialContainerPrivate::pruneInterface
2019-03-11 13:54:54 +01:00
Robert Haschke
905b6a3b0c
move validateConnectivity() from ContainerBase to StagePrivate
...
... to allow specific stage types (PropagatingEitherWay) implementing their own validation
No need for a public interface.
2019-03-11 13:54:54 +01:00
Robert Haschke
10c7a9cfd7
prune UNKNOWN *and* PROPAGATE_BOTHWAYS
...
If PropagatingEitherWay's interface is not met in *both* directions (but only one),
in BOTHWAY mode, issue a warning. Otherwise handle both, AUTO and BOTHWAY mode,
in the same fashion when resolving interfaces.
TODO: move validateConnectivity() in StagePrivate.
default action = default action from ContainerBase.
PropagatingEitherWay: issue warning for case above
2019-03-11 13:54:54 +01:00
Robert Haschke
f831fe5483
fix comments + typos
2019-03-11 13:54:54 +01:00
Robert Haschke
7d25c55978
Container: more unit tests for interface detection / validation
2019-03-11 13:54:54 +01:00
Robert Haschke
d741f36ee3
fixup! improve error msg for mismatching container/child interfaces
...
We need to consider input and output interfaces separately.
Also, use console output symbols (<- / -> / <->)
2019-03-11 13:54:54 +01:00
Robert Haschke
1e953db649
non-const Property::value()
2019-03-10 17:55:46 +01:00
Robert Haschke
36df4f9975
MoveTo/MoveRelative: reduce default timeout to 1s
2019-03-10 17:55:15 +01:00
Robert Haschke
0304c22f7d
ComputeIK: allow attached body as ik_frame
2019-03-10 17:50:45 +01:00
Robert Haschke
c72a6cddac
ComputeIK: auto-configure default timeout from JMG's default
...
TODO: actually set the default value but not the current value!
2019-02-21 00:53:26 +01:00
Robert Haschke
579c336558
Connecting: also check that attached objects match
2019-02-21 00:51:57 +01:00
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