Public Member Functions | Public Attributes | Private Member Functions
hrl_pr2_arms.ep_arm_base.EPArmBase Class Reference

Base class for interacting with a realtime controller using an equilibrium point control frame work. More...

Inheritance diagram for hrl_pr2_arms.ep_arm_base.EPArmBase:
Inheritance graph
[legend]

List of all members.

Public Member Functions

def __init__
 Constructor.
def get_controller_state
 Returns the current state of the realtime controller.
def get_end_effector_pose
 Returns the current pose of the tooltip.
def get_ep
 Returns the current equilibrium point as read from the controller.
def is_ep_stale
 Returns whether the equilibrium point has been recorded for some time.
def set_ep
 Commands the arm to move to desired equilbrium point.
def wait_for_ep
 Wait until we have the ep from the controller.

Public Attributes

 arm_side
 controller_name
 ctrl_state_dict
 ctrl_state_lock
 ep
 ep_lock
 ep_time

Private Member Functions

def _save_ep
 Method to be implemented by subclasses to record the equilibrium point.

Detailed Description

Base class for interacting with a realtime controller using an equilibrium point control frame work.

An equilibrium point is a set of parameters representing the state of the controller at which no torques would be applied. For a PID controller, this represents the joint angles where the error would be zero.

Definition at line 51 of file ep_arm_base.py.


Constructor & Destructor Documentation

def hrl_pr2_arms.ep_arm_base.EPArmBase.__init__ (   self,
  arm_side,
  urdf,
  base_link,
  end_link,
  controller_name = None,
  kdl_tree = None,
  timeout = 1. 
)

Constructor.

Parameters:
arm_sideUsed to signify side of robot for similar arms (e.g. 'r' for right, 'l' for left)
urdfURDF object of robot.
base_linkName of the root link of the kinematic chain. Will fill in arm_side if s is in string.
end_linkName of the end link of the kinematic chain. Will fill in arm_side if s is in string.
controller_nameOptional name of the controller which will be subscribed to to obtain controller information
kdl_treeOptional KDL.Tree object to use. If None, one will be generated from the URDF.
timeoutTime in seconds to wait for the /joint_states topic.

Definition at line 66 of file ep_arm_base.py.


Member Function Documentation

def hrl_pr2_arms.ep_arm_base.EPArmBase._save_ep (   self,
  ep 
) [private]

Method to be implemented by subclasses to record the equilibrium point.

Definition at line 143 of file ep_arm_base.py.

Returns the current state of the realtime controller.

The state is filled in by the subclasses.

Returns:
dict with realtime controller information.

Definition at line 120 of file ep_arm_base.py.

Returns the current pose of the tooltip.

Returns:
4x4 np.mat homogeneous matrix

Definition at line 86 of file ep_arm_base.py.

Returns the current equilibrium point as read from the controller.

Returns:
equilibrium point

Definition at line 92 of file ep_arm_base.py.

def hrl_pr2_arms.ep_arm_base.EPArmBase.is_ep_stale (   self,
  stale_time = 1. 
)

Returns whether the equilibrium point has been recorded for some time.

Parameters:
stale_timeTime in seconds to pass to consider the EP stale.
Returns:
True if the EP is stale.

Definition at line 134 of file ep_arm_base.py.

def hrl_pr2_arms.ep_arm_base.EPArmBase.set_ep (   self,
  args 
)

Commands the arm to move to desired equilbrium point.

Definition at line 100 of file ep_arm_base.py.

def hrl_pr2_arms.ep_arm_base.EPArmBase.wait_for_ep (   self,
  timeout = 1. 
)

Wait until we have the ep from the controller.

Parameters:
timeoutTime in seconds at which we break if we haven't recieved the EP.

Definition at line 106 of file ep_arm_base.py.


Member Data Documentation

Definition at line 66 of file ep_arm_base.py.

Definition at line 66 of file ep_arm_base.py.

Definition at line 66 of file ep_arm_base.py.

Definition at line 66 of file ep_arm_base.py.

Definition at line 66 of file ep_arm_base.py.

Definition at line 66 of file ep_arm_base.py.

Definition at line 66 of file ep_arm_base.py.


The documentation for this class was generated from the following file:


hrl_pr2_arms
Author(s): Kelsey Hawkins, Advisor: Prof. Charlie Kemp, Lab: Healthcare Robotics Lab
autogenerated on Wed Nov 27 2013 11:41:30