$search
Public Member Functions | |
def | __init__ |
def | broadcast_phase |
def | check_good_grasp |
def | check_preempt |
def | close_until_force |
def | command_cartesian |
def | compliant_close |
def | compute_approach_dir |
def | compute_approach_vect |
def | open_and_reset_fingertips |
def | reactive_approach |
def | reactive_grasp |
def | reactive_lift |
def | reactive_place |
def | return_rel_pose |
Public Attributes | |
close_force | |
grasp_touch_thresholds | |
light_touch_thresholds | |
manipulation_phase_dict | |
move_arm_client | |
mypub | |
reactive_approach_result_dict | |
reactive_grasp_result_dict | |
root_name | |
sr_lib | |
tf_listener | |
tip_name | |
using_slip_detection | |
which_fingers_are_touching_client | |
whicharm | |
Private Attributes | |
_closed_hard | |
_phase_pub | |
_photo | |
_table_name |
reactive/guarded movement and grasping
Definition at line 24 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::__init__ | ( | self, | ||
which_arm = 'r' , |
||||
slip_detection = False | ||||
) |
Definition at line 28 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::broadcast_phase | ( | self, | ||
phase | ||||
) |
broadcast the current manipulation phase (of type ManipulationPhase)
Definition at line 96 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::check_good_grasp | ( | self | ) |
Check if we have a good grasp on the object.
Definition at line 401 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::check_preempt | ( | self | ) |
Needs to be overloaded
Reimplemented in reactive_grasp_server::ReactiveGrasperWithPreempt.
Definition at line 534 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::close_until_force | ( | self, | ||
joint_names, | ||||
pregrasp, | ||||
grasp, | ||||
forces_threshold, | ||||
success_msg = "All the fingers are now touching the object." , |
||||
nb_steps = 20 , |
||||
iteration_time = 0.2 | ||||
) |
Closes the hand from pregrasp to grasp until the given forces are reached. @return returns the positions reached when the forces were reached.
Definition at line 338 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::command_cartesian | ( | self, | ||
pose, | ||||
frame_id = 'world' | ||||
) |
Tries to go to the given pose with the arm.
Definition at line 480 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::compliant_close | ( | self, | ||
grasp_posture = None , |
||||
pregrasp_posture = None | ||||
) |
Close compliantly. We're going to interpolate from pregrasp to grasp, sending data each iteration_time. We stop the fingers when they come in contact with something using the feedback from the tactile sensors. @grasp_posture: the posture of the hand for the grasp - joint names and positions @pregrasp_posture: the posture of the hand when doing the approach. We assume that the grasp and pregrasp have the same joint order. @nb_steps: the number of steps used in the interpolation. @iteration_time: how long do we wait between 2 steps.
Definition at line 292 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::compute_approach_dir | ( | self, | ||
approach_pose, | ||||
grasp_pose | ||||
) |
compute (unit) approach direction in base_link frame from an approach_pose and grasp_pose (returns scipy array)
Definition at line 409 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::compute_approach_vect | ( | self, | ||
approach_pose, | ||||
grasp_pose | ||||
) |
compute approach vector in base_link frame from an approach_pose and grasp_pose (returns scipy array)
Definition at line 417 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::open_and_reset_fingertips | ( | self, | ||
pregrasp_posture, | ||||
reset = 0 | ||||
) |
Open the hand
Definition at line 466 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::reactive_approach | ( | self, | ||
approach_dir, | ||||
current_goal_pose, | ||||
joint_path = None , |
||||
side_step = .015 , |
||||
back_step = .03 , |
||||
num_tries = 10 , |
||||
goal_pos_thres = 0.01 | ||||
) |
Stops and goes back a little in case of a contact.
Definition at line 177 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::reactive_grasp | ( | self, | ||
approach_pose, | ||||
grasp_pose, | ||||
joint_path = None , |
||||
pregrasp_posture = None , |
||||
grasp_posture = None , |
||||
side_step = .015 , |
||||
back_step = .03 , |
||||
approach_num_tries = 10 , |
||||
goal_pos_thres = 0.01 , |
||||
grasp_num_tries = 4 , |
||||
forward_step = 0.03 , |
||||
object_name = "points" , |
||||
table_name = "table" , |
||||
grasp_adjust_x_step = .02 , |
||||
grasp_adjust_z_step = .015 , |
||||
grasp_adjust_num_tries = 3 | ||||
) |
Definition at line 104 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::reactive_lift | ( | self, | ||
goal | ||||
) |
Lifts the object while monitoring for contacts.
Definition at line 224 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::reactive_place | ( | self, | ||
goal | ||||
) |
Lifts the object while monitoring for contacts.
Definition at line 258 of file reactive_grasp.py.
def reactive_grasp::ReactiveGrasper::return_rel_pose | ( | self, | ||
vector, | ||||
frame, | ||||
start_pose = None , |
||||
orthogonal_to_vect = None , |
||||
orthogonal_to_vect_frame = 'world' | ||||
) |
convert a relative vector in frame to a pose in the base_link frame if start_pose is not specified, uses current pose of the wrist if orthogonal_to_vect and orthogonal_to_vect_frame are specified, first convert vector to be orthogonal to orthogonal_to_vect
Definition at line 426 of file reactive_grasp.py.
Definition at line 40 of file reactive_grasp.py.
Definition at line 55 of file reactive_grasp.py.
reactive_grasp::ReactiveGrasper::_photo [private] |
Definition at line 52 of file reactive_grasp.py.
Definition at line 43 of file reactive_grasp.py.
Definition at line 35 of file reactive_grasp.py.
Definition at line 77 of file reactive_grasp.py.
Definition at line 74 of file reactive_grasp.py.
Definition at line 81 of file reactive_grasp.py.
Definition at line 59 of file reactive_grasp.py.
Definition at line 32 of file reactive_grasp.py.
Definition at line 87 of file reactive_grasp.py.
Definition at line 91 of file reactive_grasp.py.
Definition at line 48 of file reactive_grasp.py.
Definition at line 58 of file reactive_grasp.py.
Definition at line 47 of file reactive_grasp.py.
Definition at line 49 of file reactive_grasp.py.
Definition at line 29 of file reactive_grasp.py.
Definition at line 71 of file reactive_grasp.py.
Definition at line 30 of file reactive_grasp.py.