Multifingered Hand Kinematics

From MLSwiki
Revision as of 18:41, 24 July 2009 by Murray (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Prev: Robot Dynamics and Control Chapter 5 - Multifingered Hand Kinematics Next: Hand Dynamics and Control

In this chapter, we study the kinematics of a multifingered robot hand grasping an object. Given a description of the fingers and the object, we derive the relationships between finger and object velocities and forces, and study conditions under which a grasp can be used to manipulate an object. In addition to the usual fixed contact case, we also include a complete derivation of the kinematics of grasp when the fingers are allowed to roll or slide along the object.

Chapter Summary

The following are the key concepts covered in this chapter:

  1. A contact is described by a mapping between forces exerted by a finger at a point on the object and the resultant wrenches in some object reference frame. The contact basis <amsmath>B_{c_i}:{\mathbb R}^{m_i} \to {\mathbb R}^p</amsmath> describes the set of wrenches that can be exerted by the finger, written in the contact coordinate frame. For contacts with friction, the friction cone <amsmath>FC_{c_i} \subset {\mathbb R}^{m_i}</amsmath> models the range of allowable contact forces that can be applied. The friction cone satisfies the following properties:
    • <amsmath>FC_{c_i}</amsmath> is a closed subset of <amsmath>{\mathbb R}^{m_i}</amsmath> with non-empty interior.
    • <amsmath>f_1, f_2 \in FC_{c_i}</amsmath> <amsmath>\implies</amsmath> <amsmath>\alpha f_1 + \beta f_2 \in FC_{c_i}</amsmath> for <amsmath>\alpha, \beta > 0</amsmath>.
  2. A grasp is a collection of fingers which exert forces on an object. The net object wrench is determined from the individual contact forces by the relationship <amsmath>F_o = G f_c</amsmath>, where <amsmath>G \in {\mathbb R}^{p \times m}</amsmath> is the grasp map:
    <amsmath>
       G = \begin{bmatrix}
         \operatorname{Ad}_{g_{o c_1}^{-1}}^T B_{c_1} & \cdots & \operatorname{Ad}_{g_{oc_k}^{-1}}^T B_{c_k}
       \end{bmatrix}.
    
    </amsmath>

    <amsmath>\operatorname{Ad}_{g_{o c_i}^{-1}}^T:{\mathbb R}^p \to {\mathbb R}^p</amsmath> is a the wrench transformation between the object and contact coordinate frames. The contact forces must all lie within the friction cone <amsmath>FC = FC_{c_1} \times \cdots \times FC_{c_k}</amsmath>.

  3. A grasp is force-closure when finger forces lying in the friction cone span the space of object wrenches
    <amsmath>
     G(FC) = {\mathbb R}^p.
    
    </amsmath>

    A grasp is force-closure if and only if the grasp map is surjective and there exists an internal force <amsmath>f_N</amsmath> which satisfies <amsmath>G f_N = 0</amsmath> and <amsmath>f_N \in \operatorname{int}(FC)</amsmath>.

  4. The fundamental grasp constraint describes the relationship between finger velocity and object velocity:
    <amsmath>
     J_h(\theta, x_o) \dot{\theta} = G^T(\theta, x_o) \dot{x}_o,
    
    </amsmath>

    where <amsmath>\theta\in{\mathbb R}^n</amsmath> is the vector of finger joint angles and <amsmath>x_o := g_{po}</amsmath> is the configuration of the object frame relative to the palm frame. The hand Jacobian <amsmath>J_h \in {\mathbb R}^{m \times n}</amsmath> is defined as

    <amsmath>
     J_h = \begin{bmatrix}
       B_{c_1}^T \operatorname{Ad}_{g_{s_1 c_1}}^{-1} 
         J_{s_1 f_1}^s(\theta_{f_1}) & & 0 \\
       &\ddots& \\
       0 & & B_{c_k}^T \operatorname{Ad}_{g_{s_k c_k}}^{-1} 
         J_{s_k f_k}^s(\theta_{f_k}) 
     \end{bmatrix},
    
    </amsmath>

    where <amsmath>J_{s_i f_i}^s</amsmath> is the spatial Jacobian for the \th{i} finger and <amsmath>\operatorname{Ad}_{g_{s_i c_i}}^{-1}</amsmath> is the twist transformation between the base and contact frames. For contacts in which rolling does not occur, <amsmath>G</amsmath> is a constant matrix.

  5. The relationships between the forces and velocities in a multifingered grasp are summarized in the following diagram: \begin{center} \input \figdir/graspCD.pst \end{center}
  6. A grasp is manipulable when arbitrary motions can be generated by the fingers
    <amsmath>

    {\cal R}(G^T) \subset {\cal R}(J_h).

    </amsmath>

    A force-closure grasp is manipulable if and only if <amsmath>J_h</amsmath> is surjective.

  7. The contact kinematics describe how the contact points move along the surface of the fingers and object. For an individual rolling contact, the contact kinematics are
    <amsmath>
     \aligned
       \dot{\alpha}_f &= M_f^{-1}(K_f + \tilde{K}_o)^{-1} 
         \begin{bmatrix} - \omega_y \\ \omega_x \end{bmatrix}
         \\
       \dot{\alpha}_o &= M_o^{-1}R_\psi(K_f + \tilde{K}_o)^{-1}
        \begin{bmatrix} - \omega_y \\ \omega_x \end{bmatrix} \\ 
       \dot{\psi} &= T_f M_f \dot{\alpha}_f + T_o M_o \dot{\alpha}_o.\\
     \endaligned
    
    </amsmath>

    where <amsmath>(M_i, K_i, T_i)</amsmath> are the geometric parameters for a given coordinate chart on the surface. The contact kinematics allow <amsmath>G</amsmath> and <amsmath>J_h</amsmath> to be computed using <amsmath>\eta = (\alpha_f, \alpha_o, \psi)</amsmath> rather than solving for <amsmath>\eta</amsmath> in terms of <amsmath>g_{po}</amsmath>.

Additional Information