D-Space and Deform Closure

K. “Gopal” Gopalakrishnan, Ken Goldberg

IEOR & EECS, U.C. Berkeley.

 <Initiated: July 2003>
ALPHA Lab, University of California, Berkeley. 
 

A deformable part held in deform closure.

Abstract

We extend the form closure framework for rigid parts to holding a class of deformable parts. In this class, a part is a linearly elastic, frictionless polygon with a finite element mesh and given stiffness matrix. We define the D-space (deformation-space) of a part as the C-space of all its mesh nodes. We define the free space as the intersection of the set of topology preserving mesh configurations with the complement of the union of all D-obstacles that represent collisions of the part with finger bodies. Consider a given set of finger bodies in frictionless contact with a part. When positive work is needed to release the part, we say that it is in deform closure. We present a numerical example and prove two results: (1) If contact set holds a rigid part in form closure, it will hold the equivalent deformable part in deform closure and (2) Deform closure is frame invariant.

We then define a measure of grasp quality for two-point deform-closure grasps. This metric is based on balancing the potential energy needed to release the part against the potential energy that would result in plastic deformation. Given two jaw contacts at the perimeter nodes, we give a numerical algorithm to determine the optimal jaw separation based on this metric. For a part with n mesh nodes and p perimeter nodes, the algorithm computes an approximation to the optimal separation in time O( n3 p2 + ( p2/) log p ).

Introduction

There is a substantial body of research on robotic holding (grasping and fixturing) of rigid objects. Our work is inspired by Rimon and Burdick on rigid body immobility and by Rimon and Blake on caging grasps for rigid bodies. In C-Space (configuration space), the part’s position and orientation are parameterized in a Euclidian space thus representing the part’s configuration in physical space as a point in C-Space. The set of points in C-Space for which the corresponding configuration of the part intersects with a given obstacle is the corresponding C-obstacle. When a part is in contact with an obstacle, its image in C-Space lies on the C-obstacle’s surface. The complement of the union of all C-obstacles where the part is allowed to move freely is called the Free Space (Cfree) of the part. Immobility is achieved at a configuration qA if no neighboring configurations in C-Space lie in Cfree. Unlike rigid parts, deformable parts cannot be fixed in a single configuration. We extend the C-space concept of form closure by defining deform closure.

We model the planar deformable part E by a triangular FEM mesh M. In this model, the part perimeter behaves like a planar structure whose perimeter is composed of struts of variable length, with hinges at each vertex. We define the D-space (deformation-space) of E as the C-space of all its mesh nodes. Given the initial configuration q0 of the mesh in D-space, we define DT as the set of all configurations with the same mesh topology as q0. We consider contact with a set of rigid finger bodies A = { A1, …, Ak }. Each finger defines a D-obstacle DAi, the set of mesh configurations that collide with Ai. The free space Dfree is the set of feasible configurations, the intersection of DT with the complement of the union of D-obstacles.

Given part E, mesh M, FEM stiffness matrix K, and contact set A, we can determine the potential energy of any point in Dfree. Given a candidate configuration qA, we say that the part can be released from A by a sequence of external wrenches if the part can escape from qA . We define UA as the minimum work that needs to be done by these wrenches to release the part from A. We say that A holds E in deform closure if UA > 0.

Given a 2D polygonal part E and a triangular FEM mesh M with stiffness K that model its deformation, we find the optimal jaw separation to grasp the part at two specified nodes on the part's perimeter. We first define a quality metric for any two-point grasp as follows: If UA is the work needed to release the part from the grasp, and UL is the additional work that needs to be done by the jaws if the continue actuating till they create a plastic deformation, the metric Q is defined as Q = min {UA, UL}. Thus, an optimal grasp balances the requirements of holding the part such that it cannot be released easily, and it cannot be plastically deformed easily.

Implementation for an example part.

As intuition behind our algorithm for computing the optimal jaw separation, consider a "contact graph", where each graph vertex corresponds to a pair of mesh nodes. For each vertex, consider a potential energy function based on varying the distance between the underlying mesh nodes. Given two initial mesh nodes where contact occurs, consider a sequence of vertices -- a path -- that leads to an equilibrium grasp configuration. The upper envelope of the potential functions for all vertices on this path corresponds to the maximal potential energy function for the path. Then consider all possible paths, and the lower envelope of all path potential energy functions. The difference between this lower envelope and the potential function at the initial pair of mesh nodes is the minimum work as a function of jaw separation. The potential energy needed to produce plastic deformation is a quadratic function of jaw separation. The lower envelope of the minimum work function and the plastic deformation function yields the objective function, which defines the optimal jaw separation.

Example of a contact graph superimposed on potential energy surface.

This objective function is continuous and piecewise differentiable, but may have an exponential number of pieces. Our algorithm computes the value of the function by uniform sampling, using a sampling interval that is based on stiffness coefficients and a given approximation bound. At each sample point, we use a dynamic programming algorithm to determine the threshold potential energy and thus the objective function value. The sample point with the maximal value of the objective function provides the approximation to the optimal jaw separation.

 

Undeformed part. Separation = 10mm.

Optimal deform closure grasp. Separation = 5.6mm.

Implementation for an example part made of foam rubber.

 

Papers

  • K. “Gopal” Gopalakrishnan and Ken Goldberg, D-Space and Deform Closure: A Framework for Holding Deformable Parts, IEEE International Conference on Robotics and Automation, ICRA 2004.[pdf]
  • K. “Gopal” Gopalakrishnan and Ken Goldberg, Computing Deform Closure Grasps, Sixth International Workshop on the Algorithmic Foundations of Robotics, WAFR 2004.[pdf]

Acknowledgements:

    This work was supported in part by the Ford Motor Company URP 2000-403R and NSF Award DMI-0010069.