Stable Prehensile Pushing: In-Hand Manipulation with Alternating Sticking Contacts

by   Nikhil Chavan Dafle, et al.

This paper presents an approach to in-hand manipulation planning that exploits the mechanics of alternating sticking contact. Particularly, we consider the problem of manipulating a grasped object using external pushes for which the pusher sticks to the object. Given the physical properties of the object, frictional coefficients at contacts and a desired regrasp on the object, we propose a sampling-based planning framework that builds a pushing strategy concatenating different feasible stable pushes to achieve the desired regrasp. An efficient dynamics formulation for stable prehensile pushing allows us to plan in-hand manipulations 100-1000 times faster than our previous work which builds upon a complementarity formulation. Experimental observations for the generated plans show very close correspondence to the expected results from the planner. Video Summary --



There are no comments yet.


page 2

page 7

page 8


Geometric In-Hand Regrasp Planning: Alternating Optimization of Finger Gaits and In-Grasp Manipulation

This paper explores the problem of autonomous, in-hand regrasping--the p...

Regrasping by Fixtureless Fixturing

This paper presents a fixturing strategy for regrasping that does not re...

Integration of 3D Object Recognition and Planning for Robotic Manipulation: A Preliminary Report

We investigate different approaches to integrating object recognition an...

In-Hand Manipulation via Motion Cones

In this paper, we present the mechanics and algorithms to compute the se...

Learning When to Trust a Dynamics Model for Planning in Reduced State Spaces

When the dynamics of a system are difficult to model and/or time-consumi...

Learning Hybrid Object Kinematics for Efficient Hierarchical Planning Under Uncertainty

Sudden changes in the dynamics of robotic tasks, such as contact with an...

Solving Footstep Planning as a Feasibility Problem using L1-norm Minimization

One challenge of legged locomotion on uneven terrains is to deal with bo...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

Fig. 1: An example of stable prehensile pushing. A plastic object is regrasped in a gripper by pushing it against an edge contact in the environment. The upper figure shows a pushing strategy from the planner proposed in this paper. The object motion is shown from a side view; finger contact is a circular patch (in green) and pusher contact is a line contact (in magenta). The lower figure shows the corresponding snapshots from an experimental run.

This work is inspired from one observation of human manipulation: controlled slip is essential to our dexterous skill, but it is difficult to control the motion of an object in our hands if all contacts slide at the same time. It is significantly easier when at least one of the contacts involved is securely sticking to the object, albeit that contact might change frequently. Consider a simpler scenario of a book on top of a table. If both the table and the book were made out of ice, it would be very difficult to control whether the hand slides on the book or the book on the table. With regular coefficients of friction instead, it is simple to manipulate the book with alternating series of motions where either the book sticks to the hand, or the book to the table. It is this idea—forcing and alternating sticking contacts—that we explore in this paper.

This work is also inspired from one technical limitation of robotic in-hand manipulation planning: it is computationally very expensive to find accurate in-hand manipulation plans when all contacts can stick/slide at the same time. In our previous work, we describe prehensile pushing [1, 2] as a particular type of in-hand manipulation that uses pushes against external fixtures to manipulate an object. In this work, we explore the idea of forcing the external pusher to stick to the object during the pushes, but with a freedom to change its location between the pushes. We will refer to it as stable prehensile pushing. In experimental results, we show that this yields a 100-1000 fold improvement in planning speed, as well as higher accuracy in planned motions.

Lynch and Mason [3] studied the equivalent planar non-prehensile pushing problem where a pusher sticks to an object to control its motion in the plane; they referred to this approach as stable pushing. This work follows Lynch and Mason’s spirit: “A model of the mechanics of a task is a resource for the robot, just as actuators and sensors are resources”, by exploring the role of sticking contact in facilitating fast and robust in-hand manipulation planning.

The main contribution of this paper is the formulation of the mechanics of stable prehensile pushing, and its application to in-hand manipulation with a parallel-jaw gripper. We present a planner that works at two levels. At high-level, an RRT-based sampling planner efficiently explores the configuration space of grasp poses and builds a tree of grasp poses which can be reached using stable prehensile pushes. At low-level a fast dynamics solver for stable prehensile pushing checks if the desired pushes sampled by the high-level planner are feasible given the mechanics of stable prehensile pushing. By defining the node cost as a function of the number of pusher switch-overs and exploiting the underlying RRT structure, the planner converges to a pushing strategy that forces the object from initial to goal pose while reducing the number of pusher switch-overs. Fig. 1 shows one of such pushing strategies.

In Section VI, we show multiple examples demonstrating the capability of the proposed planner for manipulating prismatic objects in a parallel-jaw gripper, both in simulation as well as on a robotic system.

In summary, the specific contributions of this paper are:

  • A model of the mechanics of stable prehensile pushing.

  • Efficient formulation for testing the feasibility of stable prehensile pushing in a parallel-jaw grasp.

  • A fast in-hand manipulation planning framework which accounts for the detailed dynamics of frictional contact.

Ii Related Work

In-hand manipulation has motivated the robotics community as early as 1980’s. Recent work in robotic manipulation shows rejuvenated interest in in-hand manipulation problem, exploring ideas that diverge from earlier assumptions such as the need for full controllability over the pose of the object using multiple fingers and actuators [4].

Odhner and Dollar explore the scope of underactuated hands for in-hand manipulation [5]. Borrás and Dollar model a grasp as a parallel mechanism and propose to plan in-hand manipulation as a kinematic problem with compliant joints [6]. Sundaralingam and Hermans adopted a similar approach of seeing the in-hand manipulation as a kinematic planning problem but do not constrain the fingers to stick to the object [7]. The pure kinematic approach allows them to plan the manipulations in short time; however, experimental results show significant deviations from the final grasp expected by the planner.

Contrary to this approach of changing the object pose in the gripper frame without deliberately changing the locations of finger contacts, some explicitly plan for controlled sliding at fingers. In our previous work, we presented extrinsic dexterity – an approach to in-hand manipulation using gravity, dynamic motions of the arm and contacts with the environment [8]. Holladay et al. [9] and Viña B. et al. [10] demonstrated effective use of dynamic motions and gravity to pivot an object in a parallel-jaw grasp. Shi et al. show trajectory optimization framework for dynamic in-hand planar manipulations in a pinch grasp [11]. They explicitly model frictional behaviour at finger contacts with limit surfaces under uniform pressure distribution assumption.

Our previous work presented detailed forward as well as inverse dynamics formulations for prehensile pushing [1, 2]. We demonstrated that detailed dynamics models with Coulomb friction and maximum energy dissipation principle allow us to predict the motion of the object and forces at contacts realistically [12]. However, solving the resulting mixed nonlinear complementary problem is computationally expensive and limits its use for planning in-hand manipulations [2]. This compels us to look for a subset of prehensile pushes that could be particularly suited for faster modeling, planning and control.

Interestingly, similar idea is well explored for non-prehensile pushing. Lynch and Mason studied the mechanics of stable pushing and showed its application [3]. Zhou and Mason show that planning for stable non-prehensile pushing can be solved as a Dubins car problem [13]. An assumption of sicking contact allows Huang et al. [14]

to estimate bounds on the object motion even with an unknown support pressure distribution.

Prehensile pushing shares conceptual similarities with its non-prehensile equivalent, but is a very different problem from mechanics perspective.

Quasi-static vs quasi-dynamic: In non-prehensile pushing, the quasi-static assumption, with the ellipsoidal limit surface approximation as in [3, 15, 16] or with the convex even-degree limit surface model as in [13], allows a direct mapping of pusher motion to object motion and its consequent benefits for planning and control.

In prehensile pushing, the gravitational force on the object in a grasp is often not perpendicular to the plane of motion. The inclusion of gravity in the dynamics of prehensile pushing makes quasi-static analysis insufficient and calls for a quasi-dynamic or dynamic formulation to account for the effect of gravity on the object motion.

Changing support locations: We can view the finger contacts in prehensile pushing as the equivalent to the support surface in non-prehensile pushing. As the fingers move along the object, the effective wrench they produce on the object. If we were to compute the limit surface from finger contacts or mapping between pusher motion and object motion, we would need to do it at every instance.

On the other hand, for non-prehensile planar pushing, such a wrench set of the support surface remains the same throughout the manipulation and so does the mapping between the pusher motion and the slider motion.

So, the work on non-prehensile pushing which relies on the quasi-static assumption and consequent benefits for planning and control does not extend directly to prehensile pushing, not even to planar reconfigurations in a pinch grasp.

Iii Framework for In-hand Manipulation Planning

This paper presents a planner for in-hand manipulations. We demonstrate that by limiting to the set of object motions for which at least one of the contacts sticks to the object, we can speed up the planning for in-hand manipulations significantly.

In our implementation of stable prehensile pushing, we execute the pushes using the environment. However, one could implement similar pushes using a second robot arm or different fingers of a multi-finger gripper. As a general approach, we assume that an object is grasped in a gripper which is fixed in the world. A virtual pusher with full control and freedom to change it’s location on the object executes the external pushes.

Our algorithm starts with the following information about the physical properties of the manipulation system:

  • Object geometry and mass.

  • Initial and goal pose of an object in a grasp, specified by the locations and geometries of each fingers contacts.

  • Gripping force.

  • Discrete set of pusher contacts, specified by their locations and geometries.

  • Coefficient of friction at all contacts.

An efficient dynamics formulation of stable prehensile pushing (Section IV-C) allows us to query if certain prehensile push is a stable push or not. This fuels a sampling-based planner which then rapidly explores the configuration space of possible grasps and builds a tree of grasp poses reachable with stable prehensile pushes.

The planner iterates through the following steps:

  • Sample a random object pose in a grasp.

  • Check if moving toward the sampled pose satisfies a “benefit” criteria. If not, return to step i.

  • Check if it’s possible for any of the pushers to force the object towards the sampled pose with a stable push. If not possible, return to step i.

  • Check for other ways to reach the new pose from the surrounding nodes in the tree with a lower cost.

  • Iterate until the goal pose in the grasp is reached within a given resolution and cost threshold.

Iv Mechanics of Stable Prehensile Pushing

Prehensile pushing is an intricate manipulation problem where geometries, physical properties, frictional parameters of the gripper, the grasped object, and the environment all play an important role in determining the resultant motion of the object in the grasp when pushed.

Iv-a Contact Modeling

Fig. 2: Different contact geometries: point, line and circular patch, modeled as sets of rigidly connected point contacts. Figure adapted from [2].

We model interaction between gripper, grasped object, and the pusher, by discretizing complex surface/line contacts into arrays of hard frictional point contacts as shown in Fig. 2. We define a point contact between two bodies by a local coordinate frame with, normal to the contact plane and and and

, two orthonormal direction vectors, in the contact plane. Let

and be a net force and a relative velocity at a contact in the local contact frame. For a given coefficient of friction (), Coulomb’s friction cone is defined as:


By Coulomb’s law, when a contact slides, the contact force is on the boundary of the friction cone and the direction of the friction force is opposite to that of the sliding velocity at the contact. We can write these constraints using complementarity and nonlinear equations:


We need another complementarity constraint to make sure that a two bodies exert forces only when they are in contact.


Note that both the complementarity constraints (2) and (4) are responsible to capture the appropriate force-motion interrelationship based on different contact modes. If contact modes are known a priori, we can constrain forces only with nonlinear constraints (1) and (3).

Iv-B Dynamics of Prehensile Pushing

We model prehensile pushing as a general rigid body dynamics problem where object motions are governed by kinetic and kinematic constraints.

Newton Euler Equation: Let maps the local contact forces at a contact to a wrench in the object frame. is diagonal concatenation of ’s for all the finger contacts on the object and similarly . In the quasi-dynamic framework, for a single time step with zero initial velocity of the object, we can write time-integrated Newton’s law for an object with mass and generalized inertia matrix as:


where and are arrays of impulses equivalent to all the finger and pusher contact forces resp. is the gravitational impulse and is the resultant object velocity.

Rigid Body Motion Constraints: Let be a jacobian matrix that maps the velocities of pusher actuators () to the input velocities at all the pusher contacts in the local contact frames. Let be an array collecting relative velocities at all the pusher contacts.


Equivalently, for finger contacts,


In our prehensile pushing framework, finger contacts respond passively, while the object is being actively pushed by the pusher, i.e., .

Forward dynamics for prehensile pushing as presented in [1] refers to finding the object motion, given the finger and pusher motions. The inverse dynamics problem similarly refers to finding the pusher motion, given a desired object motion in the grasp [2]. Note that for solving forward and inverse dynamics problems, the relative motions and forces at all the contacts need to be solved simultaneously.

Iv-C Dynamics of Stable Prehensile Pushing

Stable prehensile pushes are those pushes for which the pusher sticks to the object. If the pusher sticks to the object, contact modes at all the contacts are fully defined during the push. The knowledge of object motion or pusher actuator motion is sufficient to find the relative velocities at all the contacts from rigid body motion constraints (6) and (7). Consequently, for stable prehensile pushing, solving the forward or inverse dynamics boils down to a feasibility check. For a sampled object motion or pusher motion, we need to check if there are forces at the contacts that satisfy the Newton Euler equation (5) while satisfying the constraint (1) or (3) depending on the relative motions at the contacts. This general problem can be solved as a nonlinear constraint satisfaction problem. In this paper, motivated by fast in-hand manipulation planning, we focus on an application of this framework for pinch grasp manipulations.

For pinch grasps or parallel jaw grasp, manipulations are constrained in a 2D plane. The sum of the normal forces at each finger contact must satisfy the force balance along the perpendicular to the manipulation plane. It is also common to assume that pressure distribution at fingers will be uniform for these manipulations [11]. With these constraints, normal force at all the constituent finger contacts can be computed given the gripping force. For a given object motion or pusher motion, depending on the contact mode at every finger, we can estimate either a unique frictional wrench or a possible set of frictional wrenches that finger contacts will resist the desired object/pusher motion with.

Iv-D Dynamics of Stable Prehensile Pushing - when all finger contacts slide

When a desired object/pusher motion is such that all the finger constituent contacts slide on the object, frictional force at each of them is uniquely determined by the maximum energy dissipation principle (3). We can rearrange Newton Euler equation (5) as:


Note that all the terms on the left side of the equation (8) are known and constitute a net motion wrench – a force in the grasp plane and a torque perpendicular to the grasp plane, i.e., about the finger axis. For a push to be a stable push, the pusher has to provide this wrench while sticking to the object.

Fig. 3: A schematic of a simple planar prehensile pushing instance where all finger contacts slide.

Fig. 3 shows a schematic of a simple planar prehensile pushing instance where all the constituent finger contacts slide. All the finger constituent contacts slide linearly along ; they generate frictional impulse along . Object momentum, gravitational impulse and contact impulses from fingers add up to a net motion wrench – a force in the grasp plane ( plane). This is a feasible stable prehensile push only if there exists an impulse that satisfies constraint (8) and for all the pusher contacts. In other words, if the motion wrench required is inside the generalized friction cone of the pusher contact, stable prehensile pushing is possible.

Generalized Friction Cone for a Pusher: generalized friction cone for a pusher is a wrench cone that the pusher can generate in the object frame as a consequence of forces at the pusher contacts [17]. For multi-point pusher, the generalized friction cone can be computed as a vector sum of generalized friction cones for constituent point contacts [18, 3].

For the example in Fig. 3, the line pusher is modelled with three points. By mapping forces at each contact through their respective , we can find the generalized friction cone for all the pusher constituent contacts. Finally, the vector sum of the wrench cones for all the contacts provide the generalized friction cone for the line pusher as shown in Fig. 4.

Feasibility Check: Evaluating if the required motion wrench can be provided by the pusher is now equivalent to checking if the wrench falls inside the generalized friction cone of the pusher. We do it by projecting the wrench on the face normal representation of the generalized friction cone [19]. If all the projections are negative, the motion wrench falls inside the wrench cone, not otherwise. Fig. 5 shows the feasibility of the motion in Fig. 3 for different pushers.

Fig. 4: Generalized friction cone for a line pusher in example in Fig. 3. Note the contribution of each constituent point contact.
Fig. 5: Feasibility check for a stable push shown in Fig. 3. Figure on the right shows how the generalized friction cone changes when friction at the pusher changes from 0.2 to 0.6. Note that the motion in Fig. 3 is a stable push for high friction pusher, but not for low friction pusher.

Iv-E Dynamics of Stable Prehensile Pushing - when at least one of the finger contacts sticks

When one of the finger contacts sticks, frictional forces at that contact are not uniquely defined; the only constraint we have is that they have to be inside the friction cone.

Further rearranging (8), we can see that, a given prehensile push of this type can be stable prehensile push only if any of the wrenches in the wrench set formed by forces at sticking finger contacts and the required motion wrench computed from rest of the terms on the right side of equation (9) falls in the generalized friction cone of the pusher.


Fig. 6 shows a schematic of another simple prehensile pushing example - rotating a circular disc using a point contact with the ground. Note that for pure rolling motion, all the finger constituent contacts except the one at the center will side. Considering forces only at sliding contacts we get a pure frictional torque about axis. Adding it to the contribution from gravity impulse and object momentum gives us a net wrench which has force component along and torque about . To bring in the possible contribution from the sticking finger contact, we take a vector sum of the motion wrench computed above and the generalized friction cone from sticking finger contact as shown in Fig. 7. Considering a polyhedral approximation to the friction cone at sticking contacts with a sufficiently large number of facets, provides an efficient way to generate the generalized friction cone without compromising on the model accuracy. In Fig. 7 we show polyhedral friction cone with only 4 facets (shown in green) for visualization simplicity, but for actual computations we use 16 facets.

Feasibility Check: The feasibility check in this case boils down to checking if the polyhedral wrench sets on either sides of the equation (9) intersect or not. This can be efficiently done using the standard technique of taking union of their face normals and then verifying that the set formed by the union is not empty.

Note that in the above example if we were to neglect the forces at sticking contacts, the given push will not be a feasible prehensile push as seen in Fig. 7. The pusher contact can not generate any torque about Y unless it applies a force along . It is only when we consider the frictional force at the sticking finger contact balancing this pusher force along , the prehensile push becomes feasible. This confirms that during a pure rolling motion, the contact on the ground instantaneously sticks, which is consistent with the definition of pure rolling.

Fig. 6: Schematic of a prehensile rolling manipulation where center constituent contact on the finger sticks while rest of them slide. Figure on the right shows generalized friction cone for the point pusher.
Fig. 7: Feasibility check for a stable push shown in Fig. 6. From left to right: 1) the given push would be deemed not stable as motion wrench falls outside the generalized friction cone of the point pusher, 2) Green polyhedron shows possible friction wrench that sticking finger contact can provide, 3) The wrench cone (shown in yellow) formed by vector sum of motion wrench (shown in red) and the wrench cone from sicking finger contact (shown in green) intersects with the generalized friction cone of the pusher indicating that the motion in Fig. 6, is a stable push.

V Planning for Stable Pushing Strategies

Underactuation in the dynamics of pushing and the workspace constraints for in-hand manipulation foils the greedy approach of pushing always toward the desired goal. For general in-hand manipulations, we expect the discrete pusher contact switch-overs to play a crucial role to force the object to a desired pose. These constraints call for a long-horizon planning framework that can reason about discrete pusher changes and also allow the pushing strategy to deviate from the goal momentarily if it’s necessary to get the object eventually to a goal grasp. Our previous work demonstrated effective use of a sampling-based planning architecture for planning in-hand manipulations with prehensile pushes [2]. We follow a very similar framework in this paper.

Our planner works at two levels. A high level planner efficiently explores the configuration space and builds a tree of grasp poses that are reachable using prehensile pushing. The low-level dynamics checks the dynamics feasibility of the pushes sampled by the high-level planer.

V-a Low-Level: Dynamics Feasibility Check

The two cases considered in Section IV-C cover all the planar manipulations in a pinch grasp. Using, the feasibility checks explained in Section IV-C we evaluate if the desired object motion in the grasp is possible with stable prehensile push using any of the pushers given. This computation can be done efficiently, in less than in our MATLAB implementation . In contrast, our optimization based formulation in [2] to solve the inverse dynamics of instantaneous prehensile pushing takes 2-3 seconds.

As we limit the possible prehensile pushes to only stable prehensile pushes, the locations of the pushers specified while initiating the planner do not change in the object frame. Generalized friction cones for pushers computed at the beginning stay the same throughout the manipulation, adding to the time efficiency.

V-B High-Level: Long Horizon Planner


while  or cost( do
     while  do
         if transition test and
                 grasp maintained then
              if stable feasible then
Algorithm 1 : In-Hand Manipulation Planner

We use Transition-based RRT optimal sampling framework [20] for high-level planning .

For controlled exploration of the configuration space, we define the configuration cost as a distance from goal. The transition test loosely confines the stochastic exploration towards the goal grasp, while allowing the flexibility to explore in other directions when necessary to get the object finally to the goal pose.

For optimal connections in the tree, we define the node cost as a weighted sum of its distance away from the goal and the number of pusher switch-overs. The underlying RRT architecture makes and rewires the connections in the tree such that the number of pusher switch-overs needed to push the object to a desired pose is minimized. This avoids the unnecessary noise that may get introduced into the manipulation whenever pusher contact is changed. More details on the configuration and node cost definitions and on the procedure for transition test can be found in our previous work [2].

Algorithm 1 shows our in-hand manipulation planner. Let denote a configuration of an object, i.e., the pose of the object in a gripper frame which is fixed in the world. For the scope of this paper we are interested in planar manipulations in a pinch grasp, so the configuration space is , i.e., the object can translate in the grasp plane () and rotate around a perpendicular () to the grasp plane.

Let and be an initial and desired pose of the object respectively. The planner initiates a tree with . While the desired object pose is not reached within some cost threshold, a random configuration () is sampled and nearest configuration to in the tree is found. The object is tried to be pushed towards as long as the unit step motion of the object satisfies the transitions test and does not move the object outside the grasp. Using the low-level dynamics feasibility check, it is evaluated if every unit step motion towards is stable prehensile push or not. Only the stable prehensile pushes are added to the tree.

At every unit step propagation of the tree, optimEdge routine makes sure that the connection to is made such that it’s cost is locally minimized. Similarly, rewire tree routine checks the nodes around for restructuring the connections in the tree to reduce their cost. Both these routines are directly adopted from RRT architecture originally proposed in [21] and also used in our previous work [2].

The low-level dynamics check and the high-level planner work together to build a tree of grasp poses connected with stable prehensile pushes. Note that the planner continues to make and rebuild new connections in the tree until it finds a stable prehensile pushing strategy to force the object to the goal region with minimal number of pusher switch-overs, less than some predefined threshold.

Vi Examples and Observations

Shape Material Dim [L, B, H] (mm) Mass (g)
square prism Al 6061 100, 25, 25 202
rectangular prism Delrin 80, 25, 38 130
T-shaped ABS 70, 25, 50 62
TABLE I: Physical properties of the objects used.

We evaluate the performance of our planner for manipulations performed with a parallel jaw gripper and different objects listed in Table I. We validate the planned pushing strategies on a manipulation platform instrumented with an industrial robot arm, a parallel-jaw gripper with force control, features in the environment that act as pushers, and a Vicon system for object tracking.

Vi-a Example manipulations and experimental results

We consider a parallel-jaw gripper with flat circular finger contacts as seen in the simulation figures. The planner is initiated with pusher contacts on either sides of the object and under the object. All the pusher contacts are line/edge contacts. For planing and simulation, we used a computer with Intel Core i7 2.8 GHz processor and MATLAB R2017a. Initial pose of the object is treated as and goal poses for different examples are listed in Table II. The planning time shown in Table II is in seconds and is median time over 10 planning trials.

Vi-A1 Regrasping an object offset to the center

The goal in this seemingly simple example is to regrasp the square prism horizontally 20 mm offset from the center. The gripper force and frictional parameters at fingers and features in the environment are chosen such that pushing the object horizontally will not be a valid solution and the object will also slide downwards by a few millimeters [12].

With these constraints, our planner comes up with a plan which first strategically slides the fingers down using the bottom contact and then uses the pusher on the side to drag the fingers up and along the length of the object as seen in Fig. 8. This strategy is similar to the one we observed in our previous work [2] too, however the planning time required by the current planner is more than 200 times smaller as shown in Table II.

If we increase the coefficient of fiction for the contacts in the environment, we can increase the scope of stable prehensile pushing to wider set of regrasps. For the following manipulations, we use pusher contacts with rubber coating which provides approximately 0.6 coefficient of friction.

Fig. 8: Simulated motion of the object and snapshots of the experimental run for a pushing strategy that the planner converged to push the object straight in the grasp using low coefficient pushers.

With high friction at the pushers, for the example considered above, our planner converges to a plan where it uses only the side pusher to push the object straight in the gasp as shown in Fig. 9. Experimental runs validated the pushing strategies generated by the planner for different pusher contacts. For 10 experimental trials of the pushing strategy shown in Fig. 8, we get a deviation of [ to mm, to mm, to degree] in [] in the final expected object pose in the grasp.

Fig. 9: Simulated motion of the object and snapshots of the experimental run for a pushing strategy using high coefficient pushers.

Vi-A2 Pivoting an object in the grasp

In this example we try to pivot the square prism in the grasp. The planner converges to a strategy exactly same as the one we found in our earlier work [2], where the side pusher is rotated about the center of the object in the hand. Note that, for pivoting, center points on the finger contacts do not slide similar to the rolling example in Fig. 6. The contribution of the sticking contact is essential here as discussed in IV-E.

Vi-A3 General manipulation in []

This example demonstrates large in-hand manipulation for the rectangular prism. The planner quickly finds a solution which often involves multiple pusher changes, but very soon converges to a strategy which does not require any pusher switch-over, for example the one shown in Fig. 1. A few times, the planner directly found the strategy with no pusher switch-over.

For 10 experimental trails of the pushing strategy shown in Fig. 1, we observed a deviation of [ to mm, to mm, to degree] in [] in the final pose of the object in the grasp compared to the pose simulated by the planner.

Manipulation Goal [] Planning Planning
[mm, mm, deg] Time[stable] Time [2]
Horz. offset (low ) 20, 0, 0 2.83 592.8
Pivoting 0, 0, 90 1.6 128.4
Large Manipulation 15, -13, 45 2.54 17684
T-shaped 25, 17.7, 0 0.82 32657
TABLE II: Planning times (in seconds) for different manipulations.

Vi-A4 Manipulation with a complex-shaped object

This example shows manipulation of a T-shaped object. Pushing the object directly towards the goal would lead to loosing the grasp on the object, so the role of the long horizon planning is essential for regrasping such concave objects. We initiate the planner with four pushers. One on either sides of the object, one on the web, one on the flange, and two under the object, one on the web and one on the flange.

Fig. 10 shows the strategy our planner came up with and consequent motion of the object in the grasp. Note that the planner uses the pusher under the flange to correct the small overshoot in the X direction as it pushes the object up. The planner is efficient for these complex regraps too.

Fig. 10: A pushing strategy for manipulating the T-shaped object

Vi-B Observations

Fast planning: The computationally efficient formulation of dynamics of prehensile prehensile pushing allows the planner to rapidly explore the configuration space of different grasps and connect them with stable pushes. As shown in Table II, we see 100 to 1000 times increase in the planning speed compared to our previous work on planning for prehensile pushing [2]. Though theoretically the set of object motions that can be generated using stable prehensile pushing is smaller than that using general prehensile pushing [2], we do not find it limiting, especially with high coefficient of friction at pushers. The large advantage of time efficiency outweighs the reduction in dexterity.

Observable actions: The experimental runs confirmed that the pushing strategies generated by our planner result into the motions where the object sticks to the pusher. This can also be seen in the figures with the experimental runs and also in the attached video 111Video Summary – As the pusher contact sticks to the object during a stable prehensile push, the object motion in the grasp can be inferred directly from the pusher motion. This provides full observability of the object pose in the grasp. Theoretically, we can track and control the pose of the object as accurately as the robot precision.

Vii Discussion

This paper demonstrates an effective use of sticking contact switch-overs for fast in-hand manipulation planning. We consider its application to prehensile pushing [1, 2] where a grasped object is manipulated using external pushes for which pusher contact sticks to the object.

The main contribution of this paper is the formulation of the mechanics of stable prehensile pushing. We show that with the constraints of sticking mode at pusher contact, we can systematically fold down the dynamics of prehensile pushing, get rid of complementary constraints and write it as a constraint satisfaction problem. For manipulations in pinch grasp or parallel-jaw grasps it can further be efficiently solved with fast polyhedral geometry techniques.

To demonstrate the efficiency of the mechanics of stable prehensile pushing, we combined it with the T-RRT based in-hand manipulation planning framework originally proposed in [2]. Exploiting the features of T-RRT and the dynamics formulation, the planner explores the configuration space of grasps on the object and generates a pushing strategy with minimal pusher switch-overs in a few seconds.

Experimental results validate the dynamics modeling of prehensile pushing. Pusher contacts indeed stick to the object for the pushing strategies planned for the variety manipulations we consider. This allows us to track the motion of the object in the grasp directly from the pusher motions which is the reflection of the robot motion in our case.

Stable prehensile pushing empowers robots, even those with a simple gripper, to plan fast and observable in-hand manipulation strategies, one could say by equipping them with virtual actuators and virtual sensors.


  • [1] N. Chavan-Dafle and A. Rodriguez, “Prehensile pushing: In-hand manipulation with push-primitives,” in IEEE Int Conf Robot and Sys, 2015, pp. 6215 – 6222.
  • [2] N. Chavan-Dafle and A.  Rodriguez, “Sampling-based planning of in-hand manipulation with external pushes,” in Int Symp Robot Res, 2017.
  • [3] K. M. Lynch and M. T. Mason, “Stable pushing: Mechanics, controllability, and planning,” The International Journal of Robotics Research, vol. 15, no. 6, pp. 533–556, 1996.
  • [4] J. Salisbury and J. Craig, “Articulated hands: Force control and kinematic issues,” Int J Robot Res, vol. 1, no. 1, pp. 4–17, 1982.
  • [5] L. U. Odhner and A. M. Dollar, “Dexterous manipulation with underactuated elastic hands,” in IEEE Int Conf Robot Autom, 2011, pp. 5254–5260.
  • [6] J. Borrás and A. M. Dollar, “Static analysis of parallel robots with compliant joints for in-hand manipulation,” in IEEE Int Conf Int Robot and Sys, 2012, pp. 3086–3092.
  • [7] B. Sundaralingam and T. Hermans, “Relaxed-rigidity constraints: In-grasp manipulation using purely kinematic trajectory optimization,” in Proceedings of Robotics: Science and Systems, 2017.
  • [8] N. Chavan-Dafle, A. Rodriguez, R. Paolini, B. Tang, S. S. Srinivasa, M. Erdmann, M. T. Mason, I. Lundberg, H. Staab, and T. Fuhlbrigge, “Extrinsic dexterity: In-hand manipulation with external forces,” in IEEE Int Conf Robot Autom, 2014, pp. 1578–1585.
  • [9] A. Holladay, R. Paolini, and M. T. Mason, “A general framework for open-loop pivoting,” in IEEE Int Conf Robot Autom, 2015.
  • [10] F. E. Viña B, Y. Karayiannidis, K. Pauwels, C. Smith, and D. Kragic, “In-hand manipulation using gravity and controlled slip,” in IEEE Int Conf Robot and Sys, 2015, pp. 5636–5641.
  • [11] J. Shi, J. Z. Woodruff, and K. M. Lynch, “Dynamic in-hand sliding manipulation,” in IEEE Int Conf Robot and Sys, 2015, pp. 870–877.
  • [12] R. Kolbert, N. Chavan-Dafle, and A. Rodriguez, “Experimental validation of contact dynamics for in-hand manipulation,” in Int Symp Experimental Robotics, 2016.
  • [13] J. Zhou, J. A. Bagnell, and M. T. Mason, “A fast stochastic contact model for planar pushing and grasping: Theory and experimental validation,” in Proceedings of Robotics: Science and Systems, 2017.
  • [14] E. Huang, A. Bhatia, B. Boots, and M. T. Mason, “Exact bounds on the contact-driven motion of a sliding object, with applications to robotic pulling,” in Proceedings of Robotics: Science and Systems, 2017.
  • [15] J. Zhou and M. T. Mason, “Pushing revisited: Differential flatness, trajectory planning and stabilization,” in Int Symp Robot Res, 2017.
  • [16] F. Hogan and A. Rodriguez, “Feedback control of the pusher-slider system: a story of hybrid and underactuated contact dynamics,” in 12th Int Workshop on the Algorithmic Foundations of Robotics, 2016.
  • [17] M. Erdmann, “On a representation of friction in configuration space,” Int J of Robot Res., vol. 13, no. 3, pp. 240–271, 1994.
  • [18] M. Erdmann, “Multiple-point contact with friction: Computing forces and motions in configuration space,” in IEEE Int Conf Robot and Sys, vol. 1, 1993, pp. 163–170 vol.1.
  • [19] S. Hirai, “Analysis and planning of manipulation using the theory of polyhedral convex cones,” PhD thesis, Kyoto University, 1991.
  • [20] D. Devaurs, T. Siméon, and J. Cortés, “Optimal path planning in complex cost spaces with sampling-based algorithms,” IEEE Trans. Autom. Sci. Eng., vol. 13, no. 2, pp. 415–424, 2016.
  • [21] S. Karaman and E. Frazzoli, “Sampling-based algorithms for optimal motion planning,” Int J Robot Res, vol. 30, no. 7, pp. 846–894, 2011.