Drake
 All Classes Files Functions Variables
RigidBodyContactWrench Class Reference

constrain the contact forces More...

Inheritance diagram for RigidBodyContactWrench:
Collaboration diagram for RigidBodyContactWrench:

Public Member Functions

function RigidBodyContactWrench (robot, body, body_pts)
 
function generateWrenchConstraint (obj)
 
virtual function evalWrenchConstraint (obj, kinsol, F, slack)
 
virtual function torque (obj)
 This function evaluates the constraint and its gradient. More...
 
virtual function force (obj)
 Compute the torque at each contact point from the force parameter. More...
 
virtual function contactPosition (obj, kinsol)
 Compute the indivisual force from the force parameters F. More...
 

Public Attributes

Constant Property FrictionConeType
 
Constant Property LinearFrictionConeType
 
Constant Property GraspType
 
Constant Property GraspFrictionConeType
 

Protected Member Functions

function checkForceSize (obj, F)
 
virtual function generateWrenchLincon (obj)
 Compute the contact position and its gradient w.r.t q. More...
 

Protected Attributes

Property robot
 
Property body
 
Property body_name
 
Property body_pts
 
Property num_pts
 of the contact point on the body frame. More...
 
Property num_wrench_constraint
 
Property num_pt_F
 
Property F_lb
 
Property F_ub
 force parameters More...
 
Property wrench_iCfun
 force parameters More...
 
Property wrench_jCvar
 
Property wrench_cnstr_ub
 
Property wrench_cnstr_lb
 
Property wrench_cnstr_name
 
Property contact_force_type
 
Property num_slack
 
Property slack_name
 
Property slack_lb
 
Property slack_ub
 
Property kinematics_chain_idx
 
Property complementarity_flag
 

Detailed Description

constrain the contact forces

Constructor & Destructor Documentation

function RigidBodyContactWrench ( robot  ,
body  ,
body_pts   
)
Parameters
robotA RigidBodyManipulator or a TimeSteppingRigidBodyManipulator object
body– The index of contact body on the robot
body_pts– A 3 x num_pts double matrix, each column represents the coordinate of the contact point on the body frame.
Return values
obj

Member Function Documentation

function checkForceSize ( obj  ,
 
)
protected
Return values
flag
virtual function contactPosition ( obj  ,
kinsol   
)
virtual

Compute the indivisual force from the force parameters F.

The individual forces are reshape(A*F,3,obj.num_pts)

Return values
A– A (3*num_pts) x (obj.num_pt_F*obj.num_pts) double matrix

Reimplemented in FrictionConeWrench, GraspFrictionConeWrench, GraspWrench, and LinearFrictionConeWrench.

virtual function evalWrenchConstraint ( obj  ,
kinsol  ,
,
slack   
)
virtual
virtual function force ( obj  )
virtual

Compute the torque at each contact point from the force parameter.

Return values
A– A (3*num_pts) x (obj.num_pt_F*obj.num_pts) double matrix. reshape(A*F(:),3,num_pts) are the torque at each contact point

Reimplemented in GraspFrictionConeWrench, FrictionConeWrench, GraspWrench, and LinearFrictionConeWrench.

function generateWrenchConstraint ( obj  )
Return values
linconA LinearConstraint object on parameter F and slack variables
nlconA FunctionHandleConstraint object on q, F and slack variables
bconA BoundingBoxConstraint on F and slack variables
virtual function generateWrenchLincon ( obj  )
protectedvirtual

Compute the contact position and its gradient w.r.t q.

Parameters
kinsol– The kinematics tree
Return values
pos– A matrix with 3 rows. pos(:,i) is the i'th contact position
J– A matrix of size prod(size(pos)) x nq. The gradient of pos w.r.t q

Reimplemented in FrictionConeWrench, GraspFrictionConeWrench, GraspWrench, LinearFrictionConeWrench, ComplementarityFrictionConeWrench, ComplementarityGraspWrench, and ComplementarityLinearFrictionConeWrench.

virtual function torque ( obj  )
virtual

This function evaluates the constraint and its gradient.

Parameters
kinsol- kinematics tree returned from doKinematics function
F- A double matrix of obj.num_pt_F*obj.num_pts. The contact forces parameter
slack- A obj.num_slack x 1 vector. The slack variables
Return values
c- A double column vector, the constraint value. The size of the vector is obj.getNumConstraint(t) x 1
dc- A double matrix. The gradient of c w.r.t q and F.

Reimplemented in FrictionConeWrench, GraspFrictionConeWrench, GraspWrench, and LinearFrictionConeWrench.

Member Data Documentation

Property body
protected
Property body_name
protected
Property body_pts
protected
Property complementarity_flag
protected
Property contact_force_type
protected
Property F_lb
protected
Property F_ub
protected

force parameters

Constant Property FrictionConeType
Constant Property GraspFrictionConeType
Constant Property GraspType
Property kinematics_chain_idx
protected
Constant Property LinearFrictionConeType
Property num_pt_F
protected
Property num_pts
protected

of the contact point on the body frame.

Property num_slack
protected
Property num_wrench_constraint
protected
Property robot
protected
Property slack_lb
protected
Property slack_name
protected
Property slack_ub
protected
Property wrench_cnstr_lb
protected
Property wrench_cnstr_name
protected
Property wrench_cnstr_ub
protected
Property wrench_iCfun
protected

force parameters

Property wrench_jCvar
protected

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