iCub-main
Loading...
Searching...
No Matches
Tutorial on the ActionPrimitives library

Example of grasping module based upon actionPrimitives library.

Example of grasping module based upon actionPrimitives library.

Copyright (C) 2010 RobotCub Consortium

Author: Ugo Pattacini

CopyPolicy: Released under the terms of the GNU GPL v2.0.

Description

An example module that makes use of actionPrimitives library in order to execute a sequence of simple actions: reaches for an object, tries to grasp it, then lifts it and finally releases it.

1) A bottle containing the 3-d position of the object to grasp is received (let be x1).

2) To this 3-d point a systematic offset is added in order to compensate for the uncalibrated kinematics of the arm (let be x2=x1+systematic_offset).

3) The robot reaches for a position located on top of the object with the specified orientation (let be reach(x2+grasp_disp,o)).

4) The robot grasps the object (let be reach(x2,o)).

5) The hand is closed.

6) The robot lifts the object to a specified location (let be reach(x2+lift_displacement,o)).

7) The robot releases the grasped object.

8) The robot steers the arm to home position.

Note
A video on iCub grasping objects can be seen here.

Libraries

Parameters

–name name

Ports Accessed

The robot interface is assumed to be operative.

Ports Created

Aside from the internal ports created by actionPrimitives library, we also have:

Input Data Files

None.

Output Data Files

None.

Configuration Files

–grasp_model_type type

–grasp_model_file file

–hand_sequences_file file

–from file

The configuration file passed through the option --from should look like as follows:

[general]
// options used to open a ActionPrimitives object
robot icub
thread_period 50
default_exec_time 3.0
reach_tol 0.007
torso_pitch on
torso_roll off
torso_yaw on
torso_pitch_max 30.0
tracking_mode off
[arm_dependent]
grasp_orientation (-0.171542 0.124396 -0.977292 3.058211)
grasp_displacement (0.0 0.0 0.05)
systematic_error_displacement (-0.03 -0.07 -0.02)
lifting_displacement (0.0 0.0 0.2)
home_position (-0.29 -0.21 0.11)
home_orientation (-0.029976 0.763076 -0.645613 2.884471)
int verbosity
Definition main.cpp:17
grid on

Tested OS

Windows, Linux

Author
Ugo Pattacini