Commit Graph

1299 Commits

Author SHA1 Message Date
v4hn
fa75b763e1 micro cleanup 2017-03-06 19:06:45 +01:00
v4hn
57f974bfff implement missing connectToEnding method 2017-03-06 19:06:22 +01:00
v4hn
f1fb66b06f reset planner before rml_
apparently this isn't enough though... Something else seems to store
the robot model (or planner plugin?) because I still get

1488809503.141933190: ros.rosconsole_bridge.class_loader.ClassLoader: SEVERE WARNING!!! Attempting to unload library while objects created by this loader exist in the heap! You should delete your objects before attempting to unload the library or destroying the ClassLoader. The library will NOT be unloaded.
2017-03-06 15:13:05 +01:00
v4hn
3ddf3bf808 don't sleep anymore after each round of computation 2017-03-06 15:09:29 +01:00
v4hn
669699467c implement attaching objects with gripper 2017-03-06 15:08:59 +01:00
v4hn
5d41af19d1 change gripper subtask to use EndEffector 2017-03-06 15:08:32 +01:00
v4hn
fb532045fe generate_grasp_pose: utilize MoveIt's EndEffector model
This assumes the end-effector is properly setup in the srdf,
but simplifies setup of the subtask.
2017-03-06 14:53:14 +01:00
v4hn
4637e1fffd add step size parameter to CartesianPositionMotion 2017-03-06 14:37:30 +01:00
v4hn
06cc984cff cartesian_position_motion: respect frame of target
I just missed this before...
2017-03-06 13:26:56 +01:00
v4hn
88417f2d06 cartesian_position_motion forward to target needs no max_distance check 2017-03-05 22:58:59 +01:00
v4hn
67487bf177 add test_plan_cartesian_forward 2017-03-05 22:58:46 +01:00
v4hn
be828860f4 cartesian_position_motion: add beginning->end inference & mode_along 2017-03-05 21:43:31 +01:00
v4hn
de9a5f02f8 gripper: allow collisions with grasped object 2017-03-05 13:35:52 +01:00
v4hn
d48f7519cf convert gripper subtask to planning_pipeline
This relies on `MoveGroupInterface::constructMotionPlanRequest()` which
is not yet upstream.

This change is required to directly pass the relevant planning scene
in there instead of sending *just the start RobotState* to the action.

This allows subtasks to change other aspects of the scene, e.g.
allowed collisions or new collision objects.
2017-03-05 13:12:50 +01:00
v4hn
07b1a72030 add planning pipeline to task and subtasks
This allows to plan in the subtasks without ROS communication
2017-03-05 13:06:16 +01:00
v4hn
0a6b3181be plan_pick: reduce number of possible approaches 2017-03-04 17:06:05 +01:00
v4hn
7910e23adb remove hardcoded name of robot model in trajectory 2017-03-04 17:01:54 +01:00
v4hn
42b78eb8c5 don't reprint state at end of plan_pick 2017-03-04 17:00:02 +01:00
v4hn
86c908861d cartesian_position_motion: refactored 2017-03-04 16:59:24 +01:00
v4hn
2962ba65d9 cartesian_position_motion: state is valid if *not* colliding 2017-03-04 16:56:15 +01:00
v4hn
70145aae29 draft implementation of cartesian_position_motion - one way only for the moment 2017-03-04 00:08:52 +01:00
v4hn
31c88bb9d6 generate grasps: add GripperGraspPose
Otherwise this always uses the current gripper state.
2017-03-03 12:17:57 +01:00
v4hn
d1def8235c add generate grasp pose to plan_pick
This doesn't make much sense, but it's nice to see
the structure does not directly fall apart :)
2017-03-02 20:33:01 +01:00
v4hn
30961436f1 subtask: add has* functions to facilitate canCompute 2017-03-02 19:35:31 +01:00
v4hn
9c5c87fc58 generate_grasp_pose: add grasp offset
This (as probably known from many other implementations...) allows
to grasp the object with the end effector link being further away from it.
2017-03-02 19:23:56 +01:00
v4hn
42fb4c147b gengrasppose: produce better output 2017-03-02 17:41:28 +01:00
v4hn
a346b64e35 test_plan_gen_grasp_pose: clean exit 2017-03-02 17:36:19 +01:00
v4hn
a2ce5909a1 task: abort if nothing could compute 2017-03-02 17:35:31 +01:00
v4hn
f247901623 generate grasp pose: store colliding states as infeasible solutions
This way there is no need to do collision checking for this solution again
2017-03-02 17:24:21 +01:00
v4hn
c3c6d899cb fix implicit copy
It seems (not verified) the vector is copied here by bind.
Instead, let's pass a pointer.
2017-03-02 17:23:13 +01:00
v4hn
798f9c0839 add angle delta for generate grasp poses 2017-03-02 17:21:36 +01:00
v4hn
19c351b27d generate grasp poses: retrieve multiple IK solutions & check collisions 2017-03-02 17:20:48 +01:00
v4hn
34bd5f8614 generate grasp poses: add time management 2017-03-02 14:54:13 +01:00
v4hn
5ff374a551 remove superfluous include 2017-03-02 13:39:13 +01:00
v4hn
e3604eab38 stub: plan ad infinitum and print after each iteration 2017-03-02 13:37:28 +01:00
v4hn
6e5308740b first incomplete version of GenerateGraspPose 2017-03-02 00:40:51 +01:00
v4hn
cd6f2d74da add explicit destructor for Task
Without this rml_ would be deleted before all IK plugins are unloaded
and class_loader still can't handle this...
2017-03-01 16:27:20 +01:00
v4hn
a1ef95300c add a simple printState function to task 2017-03-01 16:17:09 +01:00
v4hn
63e1d4fd78 reorder subtask get functions 2017-03-01 16:09:54 +01:00
v4hn
2e190cfd7d enable open-gripper in plan_pick 2017-03-01 15:44:19 +01:00
v4hn
c77d9106a6 introduce more interfaces / Gripper forward planning now works 2017-03-01 15:19:30 +01:00
v4hn
651fd9a946 activate CurrentState in plan_pick 2017-02-28 17:09:58 +01:00
v4hn
039f1e6896 Task now holds a PlanningScene
instead of just a RobotModel.
All generating subtasks need the scene,
so avoid every single one of them asking for it.
2017-02-28 16:47:09 +01:00
v4hn
8af3645af9 first implementation of subtask::CurrentState 2017-02-28 15:37:25 +01:00
v4hn
0bcef6b07c stub planning by calling each subtask once 2017-02-28 15:36:43 +01:00
v4hn
0e5d39a94d introduce a number of interfaces as loose ends 2017-02-28 15:27:05 +01:00
v4hn
bd67649fd2 first sketch of the graph design
+ skeleton of a first node "current_state"
+ vision of a test application
2017-02-28 11:29:38 +01:00
v4hn
e2b3cdb27d add gitignore for vim swp 2017-02-28 11:12:18 +01:00
v4hn
bb1d072418 initial commit
add a test binary for later use.
2017-02-27 11:49:22 +01:00