+ All Categories
Home > Documents > Proceedings of the 20th World Congress Toulouse, France ...

Proceedings of the 20th World Congress Toulouse, France ...

Date post: 01-Dec-2021
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
8
IFAC PapersOnLine 50-1 (2017) 12765–12772 ScienceDirect ScienceDirect Available online at www.sciencedirect.com 2405-8963 © 2017, IFAC (International Federation of Automatic Control) Hosting by Elsevier Ltd. All rights reserved. Peer review under responsibility of International Federation of Automatic Control. 10.1016/j.ifacol.2017.08.1831 © 2017, IFAC (International Federation of Automatic Control) Hosting by Elsevier Ltd. All rights reserved. Keywords: dexterous manipulation, finger gaits planning, multi-fingered hands, autonomous robotic systems, robotics technology, modeling for control optimization, real-time control. 1. INTRODUCTION Dexterous manipulation is essential for manipulators to execute complicated tasks, such as circuit assembly, com- modity organizing, and fruit harvesting. To perform large- scale complex manipulations, a robotic hand may have to change its grasping status by relocating fingers during the manipulation, which gives the hand more dexterity and robustness. Such strategy is called finger gaits planning. However, finger gaits planning in dexterous manipulation is difficult due to factors such as high dimensionality, inter- mittent contact dynamics, and complicated grasp quality metrics. As a result, problems related to dexterous manipulation and finger gaits planning have received significant atten- tion. Bicchi (2000) summarized the challenges of dexterous manipulation and finger gaiting, namely, the analysis and control of hybrid systems during gaits planning, and the optimization of the plans. Khalil and Payeur (2010) re- viewed modeling and control techniques during the robot- environment interaction. The order of the first two authors was determined by a coin toss. This project was supported by FANUC Corporation. Kumar et al. (2016) learned a local model for dexter- ous manipulation by reinforcement learning. Erez et al. (2014) achieved a lifting task robustly by applying model predictive control. Ciocarlie and Allen (2009) searched hand posture subspaces by simulated annealing method to realize pre-grasping in interactive grasping tasks. Liu (2009) achieved dexterous manipulation by using contact force planning and hand motion synthesis. However, none of them handled objects with large-scale motions in con- strained workspaces. An effective solution to the limited hand workspaces is finger gaits planning. Andrews and Kry (2013) trained task-specific finger gaiting policies by the covariance ma- trix adaptation method, given the goal states of objects. However, the learned policies cannot be adapted to other objects and tasks. Furukawa et al. (2006) used a high-speed hand and a high-speed vision system to perform dynamic re-grasping. However, the object model should be precisely known, and the presented success rate (35%) is not suitable for many applications. Li et al. (2014) learned impedance parameters from human demonstration for robust grasping and dexterous manipulation. Vinayavekhin et al. (2011) used a tangle topology to reproduce object pose from learned human demo. However, the object gravity is not * Department of Mechanical Engineering, University of California, Berkeley, CA, 94720, USA (e-mail: {yongxiang fan, tomizuka}@berkeley.edu). ** School of Aerospace, Tsinghua University, Beijing, 100084, P. R. China (e-mail: [email protected]) *** FANUC Corporation, Yamanashi Prefecture, 401-0597, Japan (e-mail: [email protected]) Abstract: Dexterous manipulation has broad potential applications in assembly lines, warehouses and agriculture, and so on. To perform large-scale, complicated manipulation tasks, a multi-fingered robotic hand sometimes has to sequentially adjust its grasping status, i.e. the finger gaits, to deal with the workspace limits and object stability. However, realizing finger gaits planning in dexterous manipulation is challenging due to the involved hybrid dynamics, complicated grasp quality metrics, and uncertainties during the finger gaiting. In this paper, a dual-stage optimization based controller is proposed to handle these challenges. First, a velocity-level finger gaits planner is introduced by combining object grasp quality with hand kinematic limitations. The proposed finger gaits planner is computationally efficient and can be solved in real-time. Second, a manipulation controller using force optimization is presented. To deal with mass uncertainties and external disturbances, a modified impedance control is integrated into the manipulation controller. The dual-stage controller does not require the shape of the object, nor does it rely on expensive 3D/6D tactile sensors. Simulation results verify the efficacy of the proposed dual-stage controller. Yongxiang Fan * Wei Gao ** Wenjie Chen *** Masayoshi Tomizuka * Real-Time Finger Gaits Planning for Dexterous Manipulation
Transcript
Page 1: Proceedings of the 20th World Congress Toulouse, France ...

IFAC PapersOnLine 50-1 (2017) 12765–12772

ScienceDirectScienceDirect

Available online at www.sciencedirect.com

2405-8963 © 2017, IFAC (International Federation of Automatic Control) Hosting by Elsevier Ltd. All rights reserved.Peer review under responsibility of International Federation of Automatic Control.10.1016/j.ifacol.2017.08.1831

© 2017, IFAC (International Federation of Automatic Control) Hosting by Elsevier Ltd. All rights reserved.

10.1016/j.ifacol.2017.08.1831 2405-8963

Real-Time Finger Gaits Planning forDexterous Manipulation ��

Yongxiang Fan ∗ Wei Gao ∗∗ Wenjie Chen ∗∗∗

Masayoshi Tomizuka ∗

∗ Department of Mechanical Engineering, University of California,Berkeley, CA, 94720, USA (e-mail: {yongxiang fan,

tomizuka}@berkeley.edu).∗∗ School of Aerospace, Tsinghua University, Beijing, 100084, P. R.

China (e-mail: [email protected])∗∗∗ FANUC Corporation, Yamanashi Prefecture, 401-0597, Japan

(e-mail: [email protected])

Abstract:Dexterous manipulation has broad potential applications in assembly lines, warehouses andagriculture, and so on. To perform large-scale, complicated manipulation tasks, a multi-fingeredrobotic hand sometimes has to sequentially adjust its grasping status, i.e. the finger gaits, todeal with the workspace limits and object stability. However, realizing finger gaits planningin dexterous manipulation is challenging due to the involved hybrid dynamics, complicatedgrasp quality metrics, and uncertainties during the finger gaiting. In this paper, a dual-stageoptimization based controller is proposed to handle these challenges. First, a velocity-level fingergaits planner is introduced by combining object grasp quality with hand kinematic limitations.The proposed finger gaits planner is computationally efficient and can be solved in real-time.Second, a manipulation controller using force optimization is presented. To deal with massuncertainties and external disturbances, a modified impedance control is integrated into themanipulation controller. The dual-stage controller does not require the shape of the object, nordoes it rely on expensive 3D/6D tactile sensors. Simulation results verify the efficacy of theproposed dual-stage controller.

Keywords: dexterous manipulation, finger gaits planning, multi-fingered hands, autonomousrobotic systems, robotics technology, modeling for control optimization, real-time control.

1. INTRODUCTION

Dexterous manipulation is essential for manipulators toexecute complicated tasks, such as circuit assembly, com-modity organizing, and fruit harvesting. To perform large-scale complex manipulations, a robotic hand may have tochange its grasping status by relocating fingers during themanipulation, which gives the hand more dexterity androbustness. Such strategy is called finger gaits planning.However, finger gaits planning in dexterous manipulationis difficult due to factors such as high dimensionality, inter-mittent contact dynamics, and complicated grasp qualitymetrics.

As a result, problems related to dexterous manipulationand finger gaits planning have received significant atten-tion. Bicchi (2000) summarized the challenges of dexterousmanipulation and finger gaiting, namely, the analysis andcontrol of hybrid systems during gaits planning, and theoptimization of the plans. Khalil and Payeur (2010) re-viewed modeling and control techniques during the robot-environment interaction.

� The order of the first two authors was determined by a coin toss.��This project was supported by FANUC Corporation.

Kumar et al. (2016) learned a local model for dexter-ous manipulation by reinforcement learning. Erez et al.(2014) achieved a lifting task robustly by applying modelpredictive control. Ciocarlie and Allen (2009) searchedhand posture subspaces by simulated annealing methodto realize pre-grasping in interactive grasping tasks. Liu(2009) achieved dexterous manipulation by using contactforce planning and hand motion synthesis. However, noneof them handled objects with large-scale motions in con-strained workspaces.

An effective solution to the limited hand workspaces isfinger gaits planning. Andrews and Kry (2013) trainedtask-specific finger gaiting policies by the covariance ma-trix adaptation method, given the goal states of objects.However, the learned policies cannot be adapted to otherobjects and tasks. Furukawa et al. (2006) used a high-speedhand and a high-speed vision system to perform dynamicre-grasping. However, the object model should be preciselyknown, and the presented success rate (35%) is not suitablefor many applications. Li et al. (2014) learned impedanceparameters from human demonstration for robust graspingand dexterous manipulation. Vinayavekhin et al. (2011)used a tangle topology to reproduce object pose fromlearned human demo. However, the object gravity is not

Proceedings of the 20th World CongressThe International Federation of Automatic ControlToulouse, France, July 9-14, 2017

Copyright © 2017 IFAC 13304

Real-Time Finger Gaits Planning forDexterous Manipulation ��

Yongxiang Fan ∗ Wei Gao ∗∗ Wenjie Chen ∗∗∗

Masayoshi Tomizuka ∗

∗ Department of Mechanical Engineering, University of California,Berkeley, CA, 94720, USA (e-mail: {yongxiang fan,

tomizuka}@berkeley.edu).∗∗ School of Aerospace, Tsinghua University, Beijing, 100084, P. R.

China (e-mail: [email protected])∗∗∗ FANUC Corporation, Yamanashi Prefecture, 401-0597, Japan

(e-mail: [email protected])

Abstract:Dexterous manipulation has broad potential applications in assembly lines, warehouses andagriculture, and so on. To perform large-scale, complicated manipulation tasks, a multi-fingeredrobotic hand sometimes has to sequentially adjust its grasping status, i.e. the finger gaits, todeal with the workspace limits and object stability. However, realizing finger gaits planningin dexterous manipulation is challenging due to the involved hybrid dynamics, complicatedgrasp quality metrics, and uncertainties during the finger gaiting. In this paper, a dual-stageoptimization based controller is proposed to handle these challenges. First, a velocity-level fingergaits planner is introduced by combining object grasp quality with hand kinematic limitations.The proposed finger gaits planner is computationally efficient and can be solved in real-time.Second, a manipulation controller using force optimization is presented. To deal with massuncertainties and external disturbances, a modified impedance control is integrated into themanipulation controller. The dual-stage controller does not require the shape of the object, nordoes it rely on expensive 3D/6D tactile sensors. Simulation results verify the efficacy of theproposed dual-stage controller.

Keywords: dexterous manipulation, finger gaits planning, multi-fingered hands, autonomousrobotic systems, robotics technology, modeling for control optimization, real-time control.

1. INTRODUCTION

Dexterous manipulation is essential for manipulators toexecute complicated tasks, such as circuit assembly, com-modity organizing, and fruit harvesting. To perform large-scale complex manipulations, a robotic hand may have tochange its grasping status by relocating fingers during themanipulation, which gives the hand more dexterity androbustness. Such strategy is called finger gaits planning.However, finger gaits planning in dexterous manipulationis difficult due to factors such as high dimensionality, inter-mittent contact dynamics, and complicated grasp qualitymetrics.

As a result, problems related to dexterous manipulationand finger gaits planning have received significant atten-tion. Bicchi (2000) summarized the challenges of dexterousmanipulation and finger gaiting, namely, the analysis andcontrol of hybrid systems during gaits planning, and theoptimization of the plans. Khalil and Payeur (2010) re-viewed modeling and control techniques during the robot-environment interaction.

� The order of the first two authors was determined by a coin toss.��This project was supported by FANUC Corporation.

Kumar et al. (2016) learned a local model for dexter-ous manipulation by reinforcement learning. Erez et al.(2014) achieved a lifting task robustly by applying modelpredictive control. Ciocarlie and Allen (2009) searchedhand posture subspaces by simulated annealing methodto realize pre-grasping in interactive grasping tasks. Liu(2009) achieved dexterous manipulation by using contactforce planning and hand motion synthesis. However, noneof them handled objects with large-scale motions in con-strained workspaces.

An effective solution to the limited hand workspaces isfinger gaits planning. Andrews and Kry (2013) trainedtask-specific finger gaiting policies by the covariance ma-trix adaptation method, given the goal states of objects.However, the learned policies cannot be adapted to otherobjects and tasks. Furukawa et al. (2006) used a high-speedhand and a high-speed vision system to perform dynamicre-grasping. However, the object model should be preciselyknown, and the presented success rate (35%) is not suitablefor many applications. Li et al. (2014) learned impedanceparameters from human demonstration for robust graspingand dexterous manipulation. Vinayavekhin et al. (2011)used a tangle topology to reproduce object pose fromlearned human demo. However, the object gravity is not

Proceedings of the 20th World CongressThe International Federation of Automatic ControlToulouse, France, July 9-14, 2017

Copyright © 2017 IFAC 13304

Real-Time Finger Gaits Planning forDexterous Manipulation ��

Yongxiang Fan ∗ Wei Gao ∗∗ Wenjie Chen ∗∗∗

Masayoshi Tomizuka ∗

∗ Department of Mechanical Engineering, University of California,Berkeley, CA, 94720, USA (e-mail: {yongxiang fan,

tomizuka}@berkeley.edu).∗∗ School of Aerospace, Tsinghua University, Beijing, 100084, P. R.

China (e-mail: [email protected])∗∗∗ FANUC Corporation, Yamanashi Prefecture, 401-0597, Japan

(e-mail: [email protected])

Abstract:Dexterous manipulation has broad potential applications in assembly lines, warehouses andagriculture, and so on. To perform large-scale, complicated manipulation tasks, a multi-fingeredrobotic hand sometimes has to sequentially adjust its grasping status, i.e. the finger gaits, todeal with the workspace limits and object stability. However, realizing finger gaits planningin dexterous manipulation is challenging due to the involved hybrid dynamics, complicatedgrasp quality metrics, and uncertainties during the finger gaiting. In this paper, a dual-stageoptimization based controller is proposed to handle these challenges. First, a velocity-level fingergaits planner is introduced by combining object grasp quality with hand kinematic limitations.The proposed finger gaits planner is computationally efficient and can be solved in real-time.Second, a manipulation controller using force optimization is presented. To deal with massuncertainties and external disturbances, a modified impedance control is integrated into themanipulation controller. The dual-stage controller does not require the shape of the object, nordoes it rely on expensive 3D/6D tactile sensors. Simulation results verify the efficacy of theproposed dual-stage controller.

Keywords: dexterous manipulation, finger gaits planning, multi-fingered hands, autonomousrobotic systems, robotics technology, modeling for control optimization, real-time control.

1. INTRODUCTION

Dexterous manipulation is essential for manipulators toexecute complicated tasks, such as circuit assembly, com-modity organizing, and fruit harvesting. To perform large-scale complex manipulations, a robotic hand may have tochange its grasping status by relocating fingers during themanipulation, which gives the hand more dexterity androbustness. Such strategy is called finger gaits planning.However, finger gaits planning in dexterous manipulationis difficult due to factors such as high dimensionality, inter-mittent contact dynamics, and complicated grasp qualitymetrics.

As a result, problems related to dexterous manipulationand finger gaits planning have received significant atten-tion. Bicchi (2000) summarized the challenges of dexterousmanipulation and finger gaiting, namely, the analysis andcontrol of hybrid systems during gaits planning, and theoptimization of the plans. Khalil and Payeur (2010) re-viewed modeling and control techniques during the robot-environment interaction.

� The order of the first two authors was determined by a coin toss.��This project was supported by FANUC Corporation.

Kumar et al. (2016) learned a local model for dexter-ous manipulation by reinforcement learning. Erez et al.(2014) achieved a lifting task robustly by applying modelpredictive control. Ciocarlie and Allen (2009) searchedhand posture subspaces by simulated annealing methodto realize pre-grasping in interactive grasping tasks. Liu(2009) achieved dexterous manipulation by using contactforce planning and hand motion synthesis. However, noneof them handled objects with large-scale motions in con-strained workspaces.

An effective solution to the limited hand workspaces isfinger gaits planning. Andrews and Kry (2013) trainedtask-specific finger gaiting policies by the covariance ma-trix adaptation method, given the goal states of objects.However, the learned policies cannot be adapted to otherobjects and tasks. Furukawa et al. (2006) used a high-speedhand and a high-speed vision system to perform dynamicre-grasping. However, the object model should be preciselyknown, and the presented success rate (35%) is not suitablefor many applications. Li et al. (2014) learned impedanceparameters from human demonstration for robust graspingand dexterous manipulation. Vinayavekhin et al. (2011)used a tangle topology to reproduce object pose fromlearned human demo. However, the object gravity is not

Proceedings of the 20th World CongressThe International Federation of Automatic ControlToulouse, France, July 9-14, 2017

Copyright © 2017 IFAC 13304

Real-Time Finger Gaits Planning forDexterous Manipulation ��

Yongxiang Fan ∗ Wei Gao ∗∗ Wenjie Chen ∗∗∗

Masayoshi Tomizuka ∗

∗ Department of Mechanical Engineering, University of California,Berkeley, CA, 94720, USA (e-mail: {yongxiang fan,

tomizuka}@berkeley.edu).∗∗ School of Aerospace, Tsinghua University, Beijing, 100084, P. R.

China (e-mail: [email protected])∗∗∗ FANUC Corporation, Yamanashi Prefecture, 401-0597, Japan

(e-mail: [email protected])

Abstract:Dexterous manipulation has broad potential applications in assembly lines, warehouses andagriculture, and so on. To perform large-scale, complicated manipulation tasks, a multi-fingeredrobotic hand sometimes has to sequentially adjust its grasping status, i.e. the finger gaits, todeal with the workspace limits and object stability. However, realizing finger gaits planningin dexterous manipulation is challenging due to the involved hybrid dynamics, complicatedgrasp quality metrics, and uncertainties during the finger gaiting. In this paper, a dual-stageoptimization based controller is proposed to handle these challenges. First, a velocity-level fingergaits planner is introduced by combining object grasp quality with hand kinematic limitations.The proposed finger gaits planner is computationally efficient and can be solved in real-time.Second, a manipulation controller using force optimization is presented. To deal with massuncertainties and external disturbances, a modified impedance control is integrated into themanipulation controller. The dual-stage controller does not require the shape of the object, nordoes it rely on expensive 3D/6D tactile sensors. Simulation results verify the efficacy of theproposed dual-stage controller.

Keywords: dexterous manipulation, finger gaits planning, multi-fingered hands, autonomousrobotic systems, robotics technology, modeling for control optimization, real-time control.

1. INTRODUCTION

Dexterous manipulation is essential for manipulators toexecute complicated tasks, such as circuit assembly, com-modity organizing, and fruit harvesting. To perform large-scale complex manipulations, a robotic hand may have tochange its grasping status by relocating fingers during themanipulation, which gives the hand more dexterity androbustness. Such strategy is called finger gaits planning.However, finger gaits planning in dexterous manipulationis difficult due to factors such as high dimensionality, inter-mittent contact dynamics, and complicated grasp qualitymetrics.

As a result, problems related to dexterous manipulationand finger gaits planning have received significant atten-tion. Bicchi (2000) summarized the challenges of dexterousmanipulation and finger gaiting, namely, the analysis andcontrol of hybrid systems during gaits planning, and theoptimization of the plans. Khalil and Payeur (2010) re-viewed modeling and control techniques during the robot-environment interaction.

� The order of the first two authors was determined by a coin toss.��This project was supported by FANUC Corporation.

Kumar et al. (2016) learned a local model for dexter-ous manipulation by reinforcement learning. Erez et al.(2014) achieved a lifting task robustly by applying modelpredictive control. Ciocarlie and Allen (2009) searchedhand posture subspaces by simulated annealing methodto realize pre-grasping in interactive grasping tasks. Liu(2009) achieved dexterous manipulation by using contactforce planning and hand motion synthesis. However, noneof them handled objects with large-scale motions in con-strained workspaces.

An effective solution to the limited hand workspaces isfinger gaits planning. Andrews and Kry (2013) trainedtask-specific finger gaiting policies by the covariance ma-trix adaptation method, given the goal states of objects.However, the learned policies cannot be adapted to otherobjects and tasks. Furukawa et al. (2006) used a high-speedhand and a high-speed vision system to perform dynamicre-grasping. However, the object model should be preciselyknown, and the presented success rate (35%) is not suitablefor many applications. Li et al. (2014) learned impedanceparameters from human demonstration for robust graspingand dexterous manipulation. Vinayavekhin et al. (2011)used a tangle topology to reproduce object pose fromlearned human demo. However, the object gravity is not

Proceedings of the 20th World CongressThe International Federation of Automatic ControlToulouse, France, July 9-14, 2017

Copyright © 2017 IFAC 13304

Page 2: Proceedings of the 20th World Congress Toulouse, France ...

12766 Yongxiang Fan et al. / IFAC PapersOnLine 50-1 (2017) 12765–12772

where pj means the contact position in Cartesian spacefor the j-th fingertip, and pIb indicates the position of thefree fingertip. proj(pIb) means the projection operation ofpIb onto the plane specified by p1, p2, p3. An illustration ofQo is shown in Fig. 2.

**

*

****

Fig. 2. Object grasp quality illustration. We indicate thecase where the 4-th finger is relocating. p1, p2, p3are the static contact points, while pIb representsthe position of the 4-th fingertip. The shaded ellipseindicates the plane specified by p1, p2, p3. The objectgrasp quality used in this paper is the area of convexhull formed by p1, p2, p3, x, where x is the projectionpoint of pIb onto the plane.

The overall quality Q can be obtained by combining (1)and (2):

Q = w1Qo + w2Qh (3)

where wi > 0 is the weight for the corresponding term.

Once the overall grasp quality Q drops below a certainthreshold, the hand gaits should be replanned to adjustcontact points on the object. It is observed that humanstend to relocate their fingers one by one during the fingergaits planning. We adopt this philosophy and sequentiallyplan the finger gaits. Thus, our algorithm will compareall the fingers and choose one of them to initialize fingergaits planning, if all fingertips are in static contacts andQ < δQ, where δQ is a threshold.

Our selection is based on the finger manipulability and thegrasp quality of the remaining fingers. To be more specific,the finger manipulability for the Ib-th finger is:

−Njoint∑i=1

((qiIb − qiIb)/(q

imax,Ib

− qimin,Ib))2

The grasp quality of remaining fingers is the area ofconvex hull spanned by remaining fingertips, for instance,the triangle ∆p1p2p3 in Fig. 2. The preferred finger forgaiting is the one with small finger manipulability andlarge remaining grasp quality. If there is already one freefinger, that finger will continue its gaiting.

4. VELOCITY-LEVEL FINGER GAITS PLANNER

The task of the finger gaits planner is to generate com-mands to change the contact location of a finger, to achievebetter object grasp quality and hand manipulability. Inthis section, the related position-level gaits planner is firstpresented; then the velocity-level gaits planner is proposedto resolve the problems in a position-based planner.

4.1 Position-Level Finger Gaits Planner

Position-level finger gaits planner consists of contact opti-mization and trajectory planning. The contact optimiza-tion finds optimal contact points under the overall graspquality (3), and the trajectory planning generates trajec-tories to relocate fingers to optimal contact points.

The contact optimization can be represented in the follow-ing form:

maxs,qIb

Q (4a)

s.t. pIb ∈ ∂O (4b)

‖pIb − pIb,o‖ ≤ ε (4c)

pIb = FK(qIb) (4d)

qmin,Ib ≤ qIb ≤ qmax,Ib (4e)

Constraint (4b) indicates that the fingertip position offree finger pIb should be on the surface of object ∂O.Constraint (4c) means that the searching region shouldbe constrained in certain region ε from original posi-tion pIb,o to roughly keep the stability of the object.Constraint (4d) is the forward kinematics of the robotichand. Constraint (4e) means that the joint space searchingshould be in the feasible region.

After finding the optimal contact points, the trajectoryplanning algorithm is required to generate a feasible tra-jectory. Generally speaking, the trajectory planning shouldbe able to consider the kinematic constraints (e.g. jointlimits, velocity and acceleration constraints), the timeoptimality to reach optimal contact points, and collisionavoidance with the object.

The position-level finger gaits planning has the followingdrawbacks. First, the problem has non-linear equality con-straints. Therefore, it is difficult for real-time computing.Besides, this method requires a complicated trajectoryplanning to reach the planed optimal point. Furthermore,the equality constraint (4b) corresponding to object sur-face is usually unknown in advance. Lastly, the contactoptimization (4) uses current p1, p2, and p3 to find the op-tima, while p1, p2, and p3 actually keep moving during thecontact optimization, trajectory planning and execution.

With the all listed issues above, an efficient velocity-levelfinger gaits planner is proposed below.

4.2 Velocity-Level Finger Gaits Planner

The position-level finger gaits planner divides finger gaitsplanning into a contact optimization and a trajectoryplanning. Both of them are complicated and difficult tosolve in real-time. Therefore, an efficient approximationof the position-level gaits planner is proposed, which iscalled the velocity-level gaits planner. In this planner,the contact optimization is modified into a short-termoptimization. To be more specific, rather than findingan optimal contact point, an optimal moving velocity iscalculated at each time step, and the finger is actuatedto achieve that velocity. Formally, instead of optimizing Qin (3), Q is optimized with joint velocity of the Ib-th fingerqIb as the decision variable. The solution qdes,Ib is used tocontrol the robotic hand in each time step.

Proceedings of the 20th IFAC World CongressToulouse, France, July 9-14, 2017

13306

considered during their gaits changing process. Platt Jr(2006) proposed a set of controllers to realize unknownobject grasping by sliding on the surface to maximizegrasp stability. Platt et al. (2004); Mordatch et al. (2012)explored the unknown surface of the object by designinga global re-grasping planner and searching local optimalcontact points. However, predefined finger gaits are usedin these approaches, and the exploration of local optimadoes not incorporate necessary constraints, such as jointvelocity and acceleration limitations. As a result, these ap-proaches tend to be slow in re-grasping and manipulation,and the predefined finger gaits might be inapplicable toother objects and robotic hands. Xu et al. (2010) useda sampling-based method to plan finger gaits. Mordatchet al. (2012) used contact-invariant optimization methodto compute the states of the hand and the object, giventhe high-level goals. These approaches are not computa-tionally efficient for real-time finger gaits planning.

In this paper, a dual-stage optimization based controlleris developed, which consists of a finger gaits planner and amanipulation controller. Instead of formulating the fingergaits planner in position-level, which results in a com-plicated non-linear constrained optimization problem, thefinger gaits planner is formulated in the velocity level,i.e., the joint velocity q is selected to be the decisionvariable. At each time step, an optimal joint velocity iscomputed to improve the hand manipulability as well asthe object grasp quality, and the calculated joint velocityis converted to joint torque by a velocity-force controller.The proposed manipulation controller consists of a con-tact force optimizer and a joint-level torque controller.An impedance control scheme is incorporated into themanipulation controller to deal with uncertainties such asimprecise dynamic parameters and external disturbances.

The proposed dual-stage optimization based controllerachieves real-time finger gaits planning in dexterous ma-nipulation, under the object and environment uncertain-ties. To be more specific, the velocity-level finger gaitsplanner is cast into a linear programming (LP) problem,which is computationally efficient and can be solved inreal-time. Furthermore, the velocity-level gaits planningincorporates joint kinematic constraints, which makes thegenerated motions feasible. The proposed manipulationcontroller can handle a certain amount of mass uncertain-ties and external disturbances. The proposed dual-stageoptimization based controller does not rely on exact shapesof the objects, nor does it require expensive 3D/6D tactilesensors. The efficacy of the proposed controller is verifiedby simulations. The video demo is available at Fan et al.(2016).

This paper is organized as follows. Section 2 shows theoverall dual-stage optimization based controller frame-work. Section 3 explains the grasp quality analysis. Thevelocity-level gaits planner and manipulation controllerare presented in Section 4 and Section 5, respectively. Sec-tion 6 shows simulation results on a robotic hand with fourfingers and twelve degrees of freedom (DOFs). Section 7concludes the paper.

2. OPTIMIZATION BASED CONTROLLERFRAMEWORK

Figure 1 shows the proposed optimization-based controllerframework. First, a grasp quality analysis is conductedby computing hand manipulability and object grasp qual-ity, and the weakest finger is chosen to break contactand change gait once the overall quality drops below apredefined threshold. The index of the breaking finger isdenoted as Ib. A velocity-level gaits planner is evoked bythis event, and the planner generates torque command τIbto drive the selected breaking finger towards the betterquality region.The remaining fingers are controlled by amanipulation controller to manipulate the object stably,as shown in Fig. 1. If the overall quality is above thethreshold, all fingers will be controlled by the manipulationcontroller.

A joint level torque tracking controller is also designed totrack the torque command. The torque tracking controlleruses a PID scheme and runs at a higher frequency, incomparison with the gaits planner and the manipulationcontroller.

Manipulation

ControllerHand/Object

Interaction

Break index Velocity-Level

Gaits Planner

Encoder/Tactile/

Vision Feedback

Torque Tracking

ControllerGrasp Quality

Analysis

Manipulate fingers

Fig. 1. The general framework of the proposed optimiza-tion based controller.

The following sections will focus on the grasp quality anal-ysis, the velocity level gaits planner, and the manipulationcontroller, respectively.

3. GRASP QUALITY ANALYSIS

Grasp quality has been well explored in Roa and Suarez(2015); Kim et al. (2001); Murray et al. (1994). Duringfinger gaits planning, both hand manipulability and objectgrasp quality should be considered. The hand manipu-lability here means the ability for a hand to manipulatethe object to realize arbitrary motions. The object graspquality means the capacity to resist external disturbancesgiven a group of contact points on the object. In this paper,we adopt a quality metric in Liegeois (1977) to representhand manipulability Qh:

Qh = −1

2

Nfinger∑j=1

Njoint∑i=1

(qij − qij

qimax,j − qimin,j

)2

(1)

where qij is the joint angle of the i-th joint of the j-th finger,

qimin,j and qimax,j are the limits of qij , qij = (qimax,j+qimin,j)/2

is the middle position of the corresponding joint, Nfinger

and Njoint are the number of fingers, the number of jointsper finger, respectively.

The object grasp quality Qo is adopted from Supuk et al.(2005), which can be represented as:

Qo = 2Area (p1, p2, p3, proj(pIb)) (2)

Proceedings of the 20th IFAC World CongressToulouse, France, July 9-14, 2017

13305

Page 3: Proceedings of the 20th World Congress Toulouse, France ...

Yongxiang Fan et al. / IFAC PapersOnLine 50-1 (2017) 12765–12772 12767

where pj means the contact position in Cartesian spacefor the j-th fingertip, and pIb indicates the position of thefree fingertip. proj(pIb) means the projection operation ofpIb onto the plane specified by p1, p2, p3. An illustration ofQo is shown in Fig. 2.

**

*

****

Fig. 2. Object grasp quality illustration. We indicate thecase where the 4-th finger is relocating. p1, p2, p3are the static contact points, while pIb representsthe position of the 4-th fingertip. The shaded ellipseindicates the plane specified by p1, p2, p3. The objectgrasp quality used in this paper is the area of convexhull formed by p1, p2, p3, x, where x is the projectionpoint of pIb onto the plane.

The overall quality Q can be obtained by combining (1)and (2):

Q = w1Qo + w2Qh (3)

where wi > 0 is the weight for the corresponding term.

Once the overall grasp quality Q drops below a certainthreshold, the hand gaits should be replanned to adjustcontact points on the object. It is observed that humanstend to relocate their fingers one by one during the fingergaits planning. We adopt this philosophy and sequentiallyplan the finger gaits. Thus, our algorithm will compareall the fingers and choose one of them to initialize fingergaits planning, if all fingertips are in static contacts andQ < δQ, where δQ is a threshold.

Our selection is based on the finger manipulability and thegrasp quality of the remaining fingers. To be more specific,the finger manipulability for the Ib-th finger is:

−Njoint∑i=1

((qiIb − qiIb)/(q

imax,Ib

− qimin,Ib))2

The grasp quality of remaining fingers is the area ofconvex hull spanned by remaining fingertips, for instance,the triangle ∆p1p2p3 in Fig. 2. The preferred finger forgaiting is the one with small finger manipulability andlarge remaining grasp quality. If there is already one freefinger, that finger will continue its gaiting.

4. VELOCITY-LEVEL FINGER GAITS PLANNER

The task of the finger gaits planner is to generate com-mands to change the contact location of a finger, to achievebetter object grasp quality and hand manipulability. Inthis section, the related position-level gaits planner is firstpresented; then the velocity-level gaits planner is proposedto resolve the problems in a position-based planner.

4.1 Position-Level Finger Gaits Planner

Position-level finger gaits planner consists of contact opti-mization and trajectory planning. The contact optimiza-tion finds optimal contact points under the overall graspquality (3), and the trajectory planning generates trajec-tories to relocate fingers to optimal contact points.

The contact optimization can be represented in the follow-ing form:

maxs,qIb

Q (4a)

s.t. pIb ∈ ∂O (4b)

‖pIb − pIb,o‖ ≤ ε (4c)

pIb = FK(qIb) (4d)

qmin,Ib ≤ qIb ≤ qmax,Ib (4e)

Constraint (4b) indicates that the fingertip position offree finger pIb should be on the surface of object ∂O.Constraint (4c) means that the searching region shouldbe constrained in certain region ε from original posi-tion pIb,o to roughly keep the stability of the object.Constraint (4d) is the forward kinematics of the robotichand. Constraint (4e) means that the joint space searchingshould be in the feasible region.

After finding the optimal contact points, the trajectoryplanning algorithm is required to generate a feasible tra-jectory. Generally speaking, the trajectory planning shouldbe able to consider the kinematic constraints (e.g. jointlimits, velocity and acceleration constraints), the timeoptimality to reach optimal contact points, and collisionavoidance with the object.

The position-level finger gaits planning has the followingdrawbacks. First, the problem has non-linear equality con-straints. Therefore, it is difficult for real-time computing.Besides, this method requires a complicated trajectoryplanning to reach the planed optimal point. Furthermore,the equality constraint (4b) corresponding to object sur-face is usually unknown in advance. Lastly, the contactoptimization (4) uses current p1, p2, and p3 to find the op-tima, while p1, p2, and p3 actually keep moving during thecontact optimization, trajectory planning and execution.

With the all listed issues above, an efficient velocity-levelfinger gaits planner is proposed below.

4.2 Velocity-Level Finger Gaits Planner

The position-level finger gaits planner divides finger gaitsplanning into a contact optimization and a trajectoryplanning. Both of them are complicated and difficult tosolve in real-time. Therefore, an efficient approximationof the position-level gaits planner is proposed, which iscalled the velocity-level gaits planner. In this planner,the contact optimization is modified into a short-termoptimization. To be more specific, rather than findingan optimal contact point, an optimal moving velocity iscalculated at each time step, and the finger is actuatedto achieve that velocity. Formally, instead of optimizing Qin (3), Q is optimized with joint velocity of the Ib-th fingerqIb as the decision variable. The solution qdes,Ib is used tocontrol the robotic hand in each time step.

Proceedings of the 20th IFAC World CongressToulouse, France, July 9-14, 2017

13306

Page 4: Proceedings of the 20th World Congress Toulouse, France ...

12768 Yongxiang Fan et al. / IFAC PapersOnLine 50-1 (2017) 12765–12772

. .. .

Fig. 3. Illustration of the gradient projection method. Theoptimal searching direction is chosen by projecting thegradient of the cost function onto the tangent spaceT , then an iterative technique is employed to find thebest feasible projection xk+1.

In the proposed method, the optimal search direction isfound by LP (8). The joint-acceleration constraint (8d)and the joint-velocity constraint (8b) are incorporatedinto (8), instead of projecting the gradient into the tangentspace. Moreover, the velocity-force controller (9) attemptsto maintain the contact force between the fingertip andthe surface, as a physical actualization of projecting y ontoh(x) = 0. As the LP (8) is solved in each time step Ts, thesearch step ∆xk = xk+1 − xk is quite small. Thus, theplanned qdes,Ib in (8) is usually smooth.

5. MANIPULATION CONTROLLER

Given the contact points between the fingertips and themanipulated object, the task of the manipulation con-troller is to generate torque commands for the hand todrive the object to follow desired motions. The desired mo-tion of the object is transformed into desired forces on theobject through impedance control, which is similar to Liet al. (2014); Wimbock et al. (2012). In this section, anadditional integral term is added to impedance controllerto address object mass uncertainty:

Fimp =Mdxo +Bd(xo − xdes) +Kd(xo − xdes)+

Id(∫ t

0

(xo − xdes)dt

)(11)

where xdes, xdes, xdes is the desired motion of the object,xo, xo, xo is the actual motion of the object, and Md, Bd

and Kd are the desired inertia, damping and stiffness,respectively. Id is a gain matrix for additional integralterm.

The manipulation controller consists of a force optimizerand a joint level torque controller. The force optimizerfinds desired contact force of each contact point, and thejoint level torque controller generates appropriate jointtorques to produce the contact forces.

The force optimization is formulated into a QP problem:

minλ

α1‖f‖22 + α2‖f − fprev‖22 + α3‖∆‖22 (12a)

s.t. Mo(xo)xo + g(xo) = Fdes + Fimp (12b)

∆ = Fdes −G(xo, q)f (12c)

f = Bλ (12d)

λ ≥ 0 (12e)

J1J2

J3

Fig. 4. The hand model that is used in the simulation. Thehand has four identical fingers and 12 DOFs. Each fin-ger has three revolute joints J1, J2, and J3. The jointangles of J1, J2 and J3 are constrained in [−10◦, 135◦],[−45◦, 45◦] and [−10◦, 170◦], respectively. The handwrist is static with respect to the world.

where f = [fT1 , ..., fT

Nfingers]T is the contact force at the

contact frame, and fprev is the contact force of the previousstep. q = [qT1 , ..., q

TNfingers

]T is the joint angles of the hand,

and xo is the pose of the object. Mo(xo) and g(xo) are theobject inertia and gravity of the object, G(xo, q) is calledgrasp map (Murray et al. (1994)) and transforms f fromcontact frame into object frame, B = diag{B1, ..., BNc

}and Bi is a conservative pyramid approximation of frictioncone that is similar to the one in Liu (2009). λ is the linearcoefficient of columns of B. The desired inertia Md is setas Mo in order to remove the inertia term and accelerationmeasurement in the controller (11), as shown in Li et al.(2014).

A slack variable ∆ is introduced to relax the hard con-straint Fdes = Gf , because the location measurementsof contact points might be noisy. The entries of G forIb are set to zero, since the breaking finger does nothave contribution to Fdes. The constraints (12d) and (12e)together ensure that the contact forces remain within B.The wights α1, α2 and α3 are used to balance betweendifferent cost terms.

The joint level torque control takes the optimal contactforce f∗ from the force optimization as input, and yieldsthe control torque as:

τ = Jh(q)T f∗ +N(q)

where τ = [τ1, ..., τNfinger], Jh(q)

T is the concatenated handJacobian transpose that maps the force on each fingertip tothe torque of the joints, and N(q) is the gravitational forceof the hand. {τk}k �=Ib is extracted and combined with (9)for torque tracking control.

6. SIMULATIONS

In this section, simulation results are presented to verifythe effectiveness of the proposed finger gaits planner andmanipulation controller. The simulation video is availableat Fan et al. (2016).

Proceedings of the 20th IFAC World CongressToulouse, France, July 9-14, 2017

13308

The intuition behind it is the Taylor series expansion. Qis a function of states {qIb , pIb}, and the states are thefunctions of time t. Therefore, Q is a function of t. By thisinterpretation, Q in time instant t+ Ts can be written as:

Q(t+ Ts) ≈ Q(t) + Q(t)Ts (5)

where Ts is the time step. In this equation, higher orderterms have been omitted, because Ts is usually a smallperiod. Therefore, designing control policy to maximizeQ(t+ Ts) is equivalent to maximizing Q(t).

With the short term approximation, Q becomes:

Q = w1Qo + w2Qh

Qh =

Njoint∑i=1

(qiIb − qiIb

(qimax,Ib− qimin,Ib

)2qiIb

)

Qo = ||p2 − p3||2nT1 vIb

(6)

where qiIb is joint velocity of the i-th joint of the Ib-thfinger. n1 is a normal vector of line segment p2p3 in theplane specified by p1, p2, p3, as shown in Fig. 2, and vIb isthe velocity of pIb . In this optimization, the states qIb and

vIb in Qh and Qo are coupled linearly by vIb = J(qIb)qIb ,where J(qIb) is Jacobian of the finger Ib. By plugging in

the coupled term, Q becomes:

Q = w1‖p2−p3‖2nT1 JqIb+w2

Njoint∑i=1

ciIbqiIb − qiIb

(qimax,Ib− qimin,Ib

)2qiIb

(7)The weighting function ciIb is added to (7) in order toaddress joint limits:

ciIb =

ln(qiIb − qimin,Ib

− qithresqiIb − qimin,Ib

) + 1, qiIb − qiIb < −qithres

1, |qiIb − qiIb | ≤ qithres

ln(qimax,Ib

− qiIb − qithresqimax,Ib

− qiIb) + 1, qiIb − qiIb > qithres

where qithres is a threshold where the weighting should beincreased.

In the meantime, constraints (4b) and (4d) of the contactoptimization (4) become nT

IbJ(qIb)qIb = 0, where nIb is the

surface normal at pIb . The surface normal can be inferredby the tactile sensor on the fingertip. The constraint (4c)of (4) is eliminated because we are working on short-termoptimization, and the optimization would be solved in eachtime step.

With above analysis, a new optimization problem can beformulated to approximate (4):

maxqIb

Q (8a)

s.t. qmin,Ib ≤ qIb ≤ qmax,Ib (8b)

nTIbJ(qIb)qIb = 0 (8c)

‖qIb − qdes,prev‖∞ ≤ σ (8d)

The solution of (8) for the Ib-th finger is denoted asqdes,Ib . Constraint (8b) means that the joint velocity qIbshould be bounded in [qmin,Ib , qmax,Ib ]. Constraint (8c)indicates that pIb in Fig. 2 must move perpendicular tocurrent surface normal nIb . Constraint (8d) means that

the joint acceleration should be bounded by σ/Ts. qdes,previs the desired joint velocity in previous time step. Theoptimization (8) is a linear programming, which can besolved in real-time.

After obtaining the desired joint velocity qdes,Ib by solv-ing (8), a velocity-force controller is implemented to cal-culate the desired torque of the Ib-th finger:

τIb =Kv(qdes,Ib − qact,Ib) +KfJ(qIb)T (fdes − fact,Ib)

(9)where qdes,Ib and qact,Ib are the desired and the actualjoint velocities, fdes and fact,Ib are the desired and theactual contact forces in normal direction. Kv and Kf aretwo gain matrices for the velocity and force components.The actual normal contact force fact can be measured by1D tactile sensor. The force component KfJ(qIb)

T (fdes −fact,Ib) in (9) attempts to maintain the contact betweenthe fingertip and the surface, which makes the normalvector nIb measured from the tactile sensor updated.

As the optimized Cartesian velocity of the fingertip isin the tangent space, the finger might break its contactwith the object if the curvature at the contact point isexcessively large. However, the force component in (9) willdrive the fingertip back to the surface. Consequently, thegaiting finger might exhibit the behavior of short-rangejumps.

The velocity-level gaits planner that composed of (8) and(9) has several advantages. First, the proposed planneris computationally efficient. The optimization (8) is anLP that can be solved in each time step. Second, the 3Dobject model is not required. Instead, 1D tactile sensoris applied to detect the contact point on the hand andinfer the surface normal by the known fingertip structure,and the sensor update can be accomplished by the forcecomponent in the velocity-force controller.

The grasp quality is expected to be improved at the begin-ning of gaits planning. The velocity-level gaits planner canbe terminated when there is little grasp quality improve-ment (e.g. Q < δ, where δ is a small positive number).

4.3 Similarities Between Position-Level and Velocity-LevelPlanners

In this section, we will demonstrate that the performanceof the velocity-level planner (i.e. linear programming (8)and velocity-force controller) is similar to one step of (4)if solved by gradient projection method (Rosen (1961)).For notational simplicity, an abbreviated form of (4) isconsidered:

maxx

Q s.t. h(x) = 0, g(x) ≤ 0 (10)

where x is a concatenation of [pTIb , qTdes,Ib

]T , equality con-

straints (4b) and (4d) are abbreviated as h(x) = 0,inequality constraints (4c) and (4e) are represented asg(x) ≤ 0.

In each step of the gradient projection method, the searchdirection d is found by projecting ∇xQ onto the tangentspace of equality constraints T = {y|∇xh

T y = 0}, asshown in Fig. 3. Then, an iterative technique is employedto project the points along d, such as y, onto h(x) = 0,until the projected point xk+1 lies in the set {x|h(x) =0, g(x) ≤ 0}.

Proceedings of the 20th IFAC World CongressToulouse, France, July 9-14, 2017

13307

Page 5: Proceedings of the 20th World Congress Toulouse, France ...

Yongxiang Fan et al. / IFAC PapersOnLine 50-1 (2017) 12765–12772 12769

. .. .

Fig. 3. Illustration of the gradient projection method. Theoptimal searching direction is chosen by projecting thegradient of the cost function onto the tangent spaceT , then an iterative technique is employed to find thebest feasible projection xk+1.

In the proposed method, the optimal search direction isfound by LP (8). The joint-acceleration constraint (8d)and the joint-velocity constraint (8b) are incorporatedinto (8), instead of projecting the gradient into the tangentspace. Moreover, the velocity-force controller (9) attemptsto maintain the contact force between the fingertip andthe surface, as a physical actualization of projecting y ontoh(x) = 0. As the LP (8) is solved in each time step Ts, thesearch step ∆xk = xk+1 − xk is quite small. Thus, theplanned qdes,Ib in (8) is usually smooth.

5. MANIPULATION CONTROLLER

Given the contact points between the fingertips and themanipulated object, the task of the manipulation con-troller is to generate torque commands for the hand todrive the object to follow desired motions. The desired mo-tion of the object is transformed into desired forces on theobject through impedance control, which is similar to Liet al. (2014); Wimbock et al. (2012). In this section, anadditional integral term is added to impedance controllerto address object mass uncertainty:

Fimp =Mdxo +Bd(xo − xdes) +Kd(xo − xdes)+

Id(∫ t

0

(xo − xdes)dt

)(11)

where xdes, xdes, xdes is the desired motion of the object,xo, xo, xo is the actual motion of the object, and Md, Bd

and Kd are the desired inertia, damping and stiffness,respectively. Id is a gain matrix for additional integralterm.

The manipulation controller consists of a force optimizerand a joint level torque controller. The force optimizerfinds desired contact force of each contact point, and thejoint level torque controller generates appropriate jointtorques to produce the contact forces.

The force optimization is formulated into a QP problem:

minλ

α1‖f‖22 + α2‖f − fprev‖22 + α3‖∆‖22 (12a)

s.t. Mo(xo)xo + g(xo) = Fdes + Fimp (12b)

∆ = Fdes −G(xo, q)f (12c)

f = Bλ (12d)

λ ≥ 0 (12e)

J1J2

J3

Fig. 4. The hand model that is used in the simulation. Thehand has four identical fingers and 12 DOFs. Each fin-ger has three revolute joints J1, J2, and J3. The jointangles of J1, J2 and J3 are constrained in [−10◦, 135◦],[−45◦, 45◦] and [−10◦, 170◦], respectively. The handwrist is static with respect to the world.

where f = [fT1 , ..., fT

Nfingers]T is the contact force at the

contact frame, and fprev is the contact force of the previousstep. q = [qT1 , ..., q

TNfingers

]T is the joint angles of the hand,

and xo is the pose of the object. Mo(xo) and g(xo) are theobject inertia and gravity of the object, G(xo, q) is calledgrasp map (Murray et al. (1994)) and transforms f fromcontact frame into object frame, B = diag{B1, ..., BNc

}and Bi is a conservative pyramid approximation of frictioncone that is similar to the one in Liu (2009). λ is the linearcoefficient of columns of B. The desired inertia Md is setas Mo in order to remove the inertia term and accelerationmeasurement in the controller (11), as shown in Li et al.(2014).

A slack variable ∆ is introduced to relax the hard con-straint Fdes = Gf , because the location measurementsof contact points might be noisy. The entries of G forIb are set to zero, since the breaking finger does nothave contribution to Fdes. The constraints (12d) and (12e)together ensure that the contact forces remain within B.The wights α1, α2 and α3 are used to balance betweendifferent cost terms.

The joint level torque control takes the optimal contactforce f∗ from the force optimization as input, and yieldsthe control torque as:

τ = Jh(q)T f∗ +N(q)

where τ = [τ1, ..., τNfinger], Jh(q)

T is the concatenated handJacobian transpose that maps the force on each fingertip tothe torque of the joints, and N(q) is the gravitational forceof the hand. {τk}k �=Ib is extracted and combined with (9)for torque tracking control.

6. SIMULATIONS

In this section, simulation results are presented to verifythe effectiveness of the proposed finger gaits planner andmanipulation controller. The simulation video is availableat Fan et al. (2016).

Proceedings of the 20th IFAC World CongressToulouse, France, July 9-14, 2017

13308

Page 6: Proceedings of the 20th World Congress Toulouse, France ...

12770 Yongxiang Fan et al. / IFAC PapersOnLine 50-1 (2017) 12765–12772

Simulation Time (s)0 5 10 15

Car

tesi

an S

pace

Pos

ition

(m

)

-0.015

-0.01

-0.005

0

0.005

0.01

0.015Object Position Tracking Error for Lifting and Rotation

X directionY directionZ direction

(a) Position error during gaits planning

0 5 10 15Simulation Time (s)

-0.06

-0.04

-0.02

0

0.02

0.04

0.06

Eul

er A

ngle

(ra

d)

Object Orientation Tracking Error for Lifting and Rotation

RollPitchYaw

(b) Orientation error during gaits planning

Fig. 7. The position and orientation error of the objectduring lifting and rotation task using the proposedvelocity-level gaits planner.

Simulation Time (s)11.1 11.15 11.2 11.25 11.3 11.35 11.4 11.45 11.5

Qua

lity

Rat

e

×10-3

0

0.5

1

1.5

2

2.5

3

Optimized Q During Gait Planning in Certain Period

Fig. 8. Optimized quality rate by our proposed linearprogramming (8), in a typical finger relocation pro-cess. The quality rate is positive during the executionof (8), which means the grasp quality is improving.

Besides, the object is subject to 25% of mass uncertaintyand 2N external disturbance. The manipulation controlleris capable of driving the object to the desired pose.

7. CONCLUSION

This paper has proposed a dual-stage optimization basedcontroller, which includes a velocity-level finger gaits plan-ner and a manipulation controller, to achieve real-time fin-ger gaiting and manipulation. In the finger gaits planner,we searched an optimal velocity to improve the grasp qual-ity and hand manipulability, rather than directly findingoptimal contact points by nonlinear programming meth-ods. The proposed planner is computationally efficientand can be solved in real-time. Besides, the planner doesnot rely on the exact shape of the objects, nor does itrequire expensive 3D/6D tactile sensors. The presented

Simulation Time (s)0 1 2 3 4 5 6 7 8 9

Car

tesi

an S

pace

Pos

ition

(m

)

-0.03

-0.02

-0.01

0

0.01

0.02

0.03

Object Position Tracking Error for Lifting withMass Uncertinty and External Disturbance

X directionY directionZ direction

2N external disturbance

Fig. 9. Illustration of modified impedance controller. Themanipulated object is subject to 25% mass uncer-tainty and 2N external disturbance

.

manipulation controller can handle a certain amount of un-certainties such as imprecise dynamic parameters and ex-ternal disturbances. Simulations showed that our methodcan achieve real-time finger gaiting, and realize large-scaleobject motions that are infeasible without the proposedgaits planner.

Currently, our method is limited to objects with smoothsurfaces. In the future, we plan to extend our method toobjects without smooth surfaces. Also, we would like toincorporate contact point uncertainties caused by the noiseof 1D tactile sensors, remove the requirement of velocitymeasurements, and perform experiments on a real robotichand.

ACKNOWLEDGEMENTS

This project was supported by FANUC Corporation. Theauthors would like to thank Prof. Shmuel S. Oren for hisconstructive comments, and Prof. Emanuel Todorov forhis help on Mujoco, and Hsien-Chung Lin and Yu Zhaofor their review and discussion.

REFERENCES

Andrews, S. and Kry, P.G. (2013). Goal directed multi-finger manipulation: Control policies and analysis. Com-puters & Graphics, 37(7), 830–839.

Bicchi, A. (2000). Hands for dexterous manipulationand robust grasping: A difficult road toward simplicity.IEEE Transactions on robotics and automation, 16(6),652–662.

Ciocarlie, M.T. and Allen, P.K. (2009). Hand posture sub-spaces for dexterous robotic grasping. The InternationalJournal of Robotics Research, 28(7), 851–867.

Erez, T., Kolev, S., and Todorov, E. (2014). Receding-horizon online optimization for dexterous object manip-ulation. preprint available onliine.

Fan, Y., Gao, W., Chen, W., and Tomizuka, M. (2016).Real-time finger gaits planning for dexterous manipula-tion. URL https://youtu.be/X0yrPLv5rXk.

Furukawa, N., Namiki, A., Taku, S., and Ishikawa, M.(2006). Dynamic regrasping using a high-speed multifin-gered hand and a high-speed vision system. In Proceed-ings 2006 IEEE International Conference on Roboticsand Automation, 2006. ICRA 2006., 181–187. IEEE.

Horn, B.K. and Schunck, B.G. (1981). Determining opticalflow. Artificial intelligence, 17(1-3), 185–203.

Proceedings of the 20th IFAC World CongressToulouse, France, July 9-14, 2017

13310

(a) The rotation is limited by joint position bounds without theproposed finger gaits planner.

(b) The cylinder achieves continuous rotation with the proposedfinger gaits planner.

Fig. 5. The hand rotates a cylinder with/without theproposed finger gaits planner. Snapshots are from leftto right.

6.1 Simulation Setup

The controller is implemented in Mujoco physical engine,which is introduced by Todorov et al. (2012). The simu-lation time step is set to 2 ms. Our platform is a desktopwith 4.0 GHz Intel Core Quad CPU, 32GB RAM, runningWindows10 operating system.

The hand is set up with four identical fingers and twelveDOFs, as shown in Fig. 4. Each finger has three revolutejoints J1, J2, and J3. The joint angles of J1, J2 and J3 areconstrained in [−10◦, 135◦], [−45◦, 45◦] and [−10◦, 170◦],respectively. The hand is equipped with high-resolutionposition sensors for joint position/velocity measurements,motor torque sensors for motor torque feedback, one-dimensional distributive tactile sensors to measure normalforce and infer surface normal. The manipulated objectsare approximately 0.5 kg. The 3D mesh models of objectsare unknown to the controller. Rather, a vision system canbe employed to obtain the motion of the object by trackingthe features on it. Currently, the object motion is obtainedfrom the simulator. In future real world experiments,methods in Horn and Schunck (1981) and Lim et al. (2010)will be adopted to obtain the motion of the object.

6.2 Parameter Lists

The parameter values for the velocity-level finger gaitsplanner are: w1 = 0.99, w2 = 0.01. qithres = 0.25(qimax,k −qimin,k). qmin,k = −1 rad/s, qmax,k = 1 rad/s, σ = 0.002

rad/s, δ = 10−5. The parameter values for velocity-force controller are: Kv = diag([0.1, 0.1, 0.1]),Kf =diag([1, 1, 1]). For manipulation controller, α1 = 0.01,α2 = 0.01 and α3 = 1000. The desired parame-ter values for impedance controller are: Kd = 50 ×diag([1, 1, 1, 0.2, 0.2, 0.05]),Bd = 5×diag([1, 1, 1, 0.02, 0.02,0.005]), and Id = 50× diag([1, 1, 1, 0.02, 0.02, 0.005]).

6.3 Simulation Results

A lifting and rotating task is employed to verify the efficacyof the proposed gaits planner and manipulation controller.The desired object motion is to move along z axis by11mm, and rotate around z axis with 0.2 rad/s.

(a) Top view of the hand rotating an ellipsoid

(b) Lateral view of the hand rotating an ellipsoid

Fig. 6. The hand rotates an ellipsoid with the proposedfinger gaits planner. Snapshots are from left to right.(a) is the top view, (b) is the lateral view.

Figure 5 illustrates the performance with/without theproposed velocity-level gaits planner. The white and redarrows indicate the initial and current rotational poses ofthe object. The object can not be rotated over 90◦ withoutthe proposed gaits planner because of the hand manipu-lability limitation, as shown in Fig. 5a. The object can becontinuously rotated with the proposed planner, which im-proves both object grasp quality and hand manipulability,as shown in Fig. 5b. The average computation time forsolving the dual-stage optimization based controller is lessthan one millisecond for each time step.

The robustness of the proposed gaits planner to differentshapes is demonstrated by lifting and rotating an ellipsoid,as shown in Fig. 6. An exactly same controller is employedfor ellipsoid manipulation. Figure 6a shows the top viewand Fig. 6b is the corresponding lateral view. Comparedwith cylinder, the ellipsoid is less symmetric and thesurface normal has more change. The performance issimilar, except that the gaiting steps are smaller. Thisis influenced by the velocity-force controller gain and thecurvature of the object. Despite the difference, the objectstill be able to achieve continuous large-scale motion, asshown in Fig. 6 and video Fan et al. (2016).

Figure 7 shows the pose errors of the object during thelifting and rotating process by the proposed gaits planner.The finger gaits planning starts around 2 seconds, due tothe decreasing hand manipulability. The pose errors donot attenuate to zero since the changing of contacts infinger gaits planning can cause disturbance to the object.The maximum position error during the gait changingprocess is 0.005 m (in gravity direction), and the maximumorientation error is less than 0.02 rad (1.15◦).

Figure 8 shows that the Q in (8) is positive during atypical finger gaits planning period, which means that theproposed velocity-level planner is able to improve the graspquality, i.e. Q in (5) is continuously increased in the fingergaits planning.

Figure 9 shows the performance of manipulation controllerunder object dynamics uncertainty and external distur-bances. The inertia of the object is not necessary, since theinertia term in (12) is cancelled by impedance control (11).

Proceedings of the 20th IFAC World CongressToulouse, France, July 9-14, 2017

13309

Page 7: Proceedings of the 20th World Congress Toulouse, France ...

Yongxiang Fan et al. / IFAC PapersOnLine 50-1 (2017) 12765–12772 12771

Simulation Time (s)0 5 10 15

Car

tesi

an S

pace

Pos

ition

(m

)

-0.015

-0.01

-0.005

0

0.005

0.01

0.015Object Position Tracking Error for Lifting and Rotation

X directionY directionZ direction

(a) Position error during gaits planning

0 5 10 15Simulation Time (s)

-0.06

-0.04

-0.02

0

0.02

0.04

0.06

Eul

er A

ngle

(ra

d)

Object Orientation Tracking Error for Lifting and Rotation

RollPitchYaw

(b) Orientation error during gaits planning

Fig. 7. The position and orientation error of the objectduring lifting and rotation task using the proposedvelocity-level gaits planner.

Simulation Time (s)11.1 11.15 11.2 11.25 11.3 11.35 11.4 11.45 11.5

Qua

lity

Rat

e

×10-3

0

0.5

1

1.5

2

2.5

3

Optimized Q During Gait Planning in Certain Period

Fig. 8. Optimized quality rate by our proposed linearprogramming (8), in a typical finger relocation pro-cess. The quality rate is positive during the executionof (8), which means the grasp quality is improving.

Besides, the object is subject to 25% of mass uncertaintyand 2N external disturbance. The manipulation controlleris capable of driving the object to the desired pose.

7. CONCLUSION

This paper has proposed a dual-stage optimization basedcontroller, which includes a velocity-level finger gaits plan-ner and a manipulation controller, to achieve real-time fin-ger gaiting and manipulation. In the finger gaits planner,we searched an optimal velocity to improve the grasp qual-ity and hand manipulability, rather than directly findingoptimal contact points by nonlinear programming meth-ods. The proposed planner is computationally efficientand can be solved in real-time. Besides, the planner doesnot rely on the exact shape of the objects, nor does itrequire expensive 3D/6D tactile sensors. The presented

Simulation Time (s)0 1 2 3 4 5 6 7 8 9

Car

tesi

an S

pace

Pos

ition

(m

)

-0.03

-0.02

-0.01

0

0.01

0.02

0.03

Object Position Tracking Error for Lifting withMass Uncertinty and External Disturbance

X directionY directionZ direction

2N external disturbance

Fig. 9. Illustration of modified impedance controller. Themanipulated object is subject to 25% mass uncer-tainty and 2N external disturbance

.

manipulation controller can handle a certain amount of un-certainties such as imprecise dynamic parameters and ex-ternal disturbances. Simulations showed that our methodcan achieve real-time finger gaiting, and realize large-scaleobject motions that are infeasible without the proposedgaits planner.

Currently, our method is limited to objects with smoothsurfaces. In the future, we plan to extend our method toobjects without smooth surfaces. Also, we would like toincorporate contact point uncertainties caused by the noiseof 1D tactile sensors, remove the requirement of velocitymeasurements, and perform experiments on a real robotichand.

ACKNOWLEDGEMENTS

This project was supported by FANUC Corporation. Theauthors would like to thank Prof. Shmuel S. Oren for hisconstructive comments, and Prof. Emanuel Todorov forhis help on Mujoco, and Hsien-Chung Lin and Yu Zhaofor their review and discussion.

REFERENCES

Andrews, S. and Kry, P.G. (2013). Goal directed multi-finger manipulation: Control policies and analysis. Com-puters & Graphics, 37(7), 830–839.

Bicchi, A. (2000). Hands for dexterous manipulationand robust grasping: A difficult road toward simplicity.IEEE Transactions on robotics and automation, 16(6),652–662.

Ciocarlie, M.T. and Allen, P.K. (2009). Hand posture sub-spaces for dexterous robotic grasping. The InternationalJournal of Robotics Research, 28(7), 851–867.

Erez, T., Kolev, S., and Todorov, E. (2014). Receding-horizon online optimization for dexterous object manip-ulation. preprint available onliine.

Fan, Y., Gao, W., Chen, W., and Tomizuka, M. (2016).Real-time finger gaits planning for dexterous manipula-tion. URL https://youtu.be/X0yrPLv5rXk.

Furukawa, N., Namiki, A., Taku, S., and Ishikawa, M.(2006). Dynamic regrasping using a high-speed multifin-gered hand and a high-speed vision system. In Proceed-ings 2006 IEEE International Conference on Roboticsand Automation, 2006. ICRA 2006., 181–187. IEEE.

Horn, B.K. and Schunck, B.G. (1981). Determining opticalflow. Artificial intelligence, 17(1-3), 185–203.

Proceedings of the 20th IFAC World CongressToulouse, France, July 9-14, 2017

13310

Page 8: Proceedings of the 20th World Congress Toulouse, France ...

12772 Yongxiang Fan et al. / IFAC PapersOnLine 50-1 (2017) 12765–12772

Khalil, F.F. and Payeur, P. (2010). Dexterous roboticmanipulation of deformable objects with multi-sensoryfeedback-a review. INTECH Open Access Publisher.

Kim, B.H., Oh, S.R., Yi, B.J., and Suh, I.H. (2001). Opti-mal grasping based on non-dimensionalized performanceindices. In Intelligent Robots and Systems, 2001. Pro-ceedings. 2001 IEEE/RSJ International Conference on,volume 2, 949–956. IEEE.

Kumar, V., Todorov, E., and Levine, S. (2016). Opti-mal control with learned local models: Application todexterous manipulation. In 2016 IEEE InternationalConference on Robotics and Automation (ICRA), 378–383. IEEE.

Li, M., Yin, H., Tahara, K., and Billard, A. (2014). Learn-ing object-level impedance control for robust graspingand dexterous manipulation. In 2014 IEEE Interna-tional Conference on Robotics and Automation (ICRA),6784–6791. IEEE.

Liegeois, A. (1977). Automatic supervisory control of theconfiguration and behavior of multibody mechanisms.IEEE transactions on systems, man, and cybernetics,7(12), 868–871.

Lim, Y.C., Lee, M., Lee, C.H., Kwon, S., and Lee, J.h.(2010). Improvement of stereo vision-based positionand velocity estimation and tracking using a stripe-based disparity estimation and inverse perspective map-based extended kalman filter. Optics and Lasers inEngineering, 48(9), 859–868.

Liu, C.K. (2009). Dextrous manipulation from a grasp-ing pose. In ACM Transactions on Graphics (TOG),volume 28, 59. ACM.

Mordatch, I., Popovic, Z., and Todorov, E. (2012).Contact-invariant optimization for hand manipulation.In Proceedings of the ACM SIGGRAPH/Eurographicssymposium on computer animation, 137–144. Euro-graphics Association.

Murray, R.M., Li, Z., Sastry, S.S., and Sastry, S.S. (1994).A mathematical introduction to robotic manipulation.CRC press.

Platt, R., Fagg, A.H., and Grupen, R.A. (2004). Ma-nipulation gaits: Sequences of grasp control tasks. InRobotics and Automation, 2004. Proceedings. ICRA’04.2004 IEEE International Conference on, volume 1, 801–806. IEEE.

Platt Jr, R.J. (2006). Learning and generalizing control-based grasping and manipulation skills. Ph.D. thesis,Citeseer.

Roa, M.A. and Suarez, R. (2015). Grasp quality measures:review and performance. Autonomous robots, 38(1), 65–88.

Rosen, J. (1961). The gradient projection method fornonlinear programming. part ii. nonlinear constraints.Journal of the Society for Industrial and Applied Math-ematics, 9(4), 514–532. URL http://epubs.siam.org/doi/pdf/10.1137/0109044.

Supuk, T., Kodek, T., and Bajd, T. (2005). Estimationof hand preshaping during human grasping. Medicalengineering & physics, 27(9), 790–797.

Todorov, E., Erez, T., and Tassa, Y. (2012). Mu-joco: A physics engine for model-based control. In2012 IEEE/RSJ International Conference on IntelligentRobots and Systems, 5026–5033. IEEE.

Vinayavekhin, P., Kudoh, S., and Ikeuchi, K. (2011). To-wards an automatic robot regrasping movement basedon human demonstration using tangle topology. InRobotics and Automation (ICRA), 2011 IEEE Interna-tional Conference on, 3332–3339. IEEE.

Wimbock, T., Ott, C., Albu-Schaffer, A., and Hirzinger,G. (2012). Comparison of object-level grasp controllersfor dynamic dexterous manipulation. The InternationalJournal of Robotics Research, 31(1), 3–23.

Xu, J., Koo, T.K.J., and Li, Z. (2010). Sampling-basedfinger gaits planning for multifingered robotic hand.Autonomous Robots, 28(4), 385–402.

Proceedings of the 20th IFAC World CongressToulouse, France, July 9-14, 2017

13311


Recommended