Sie sind auf Seite 1von 9

Inverse Kinematics and Control of a

7-DOF Redundant Manipulator Based


on the Closed-Loop Algorithm 
 
 
Jingguo Wang1, Yangmin Li1,2 and Xinhua Zhao2
1Department of Electromechanical Engineering, Faculty of Science and Technology, University of Macau 

Av. Padre Tomás Pereira, Taipa, Macao SAR, China 
2School of Mechanical Engineering, Tianjin University of Technology, Tianjin 300384, China 

Corresponding author E‐mail: YMLi@umac.mo 
 
 
Abstract: Closed‐loop inverse kinematics (CLIK) algorithm mostly resolves the redundancy at the velocity level. 
In  this  paper  we  extend  the  CLIK  algorithm  to  the  acceleration  level  to  meet  some  applications that  require  the 
joint accelerations. The redundancy resolutions at the velocities and acceleration levels via pseudoinverse method 
are analyzed respectively. The objective function of joint limits avoidance(JLA) is combined into the redundancy 
resolution  as  an  optimization  approach  of  the  null  space  motion.  A  seven‐DOF  redundant  manipulator  is 
designed  to  do  the  computer  simulations  and  the  real  experiments  are  carried  out  on  a  Powercube  modular 
manipulator. Their results demonstrated the effectiveness of the proposed algorithm. 
Keywords: Redundant manipulator, inverse kinematics, closed‐loop algorithm, null space, joint limit avoidance 

1. Introduction   pseudoinverse  often  leads  the  robot  into  singularities 


  (Carignan 1991). Another generalized inverse is the inertia‐
Most  robotic  control  commands  are  simply  executed  in  weighted  pseudoinverse  J I†  M 1 J T ( JM 1 J T ) 1 ,  a  kind 
the joint space while robotic motions are specified in the 
of  resolved  motion  rate  control  technique,  proposed  in 
task  space,  therefore  it  is  necessary  to  solve  the  inverse 
the  work  (Whitney  1969),  which  is  utilized  for 
kinematics  problem  in  order  to  find  the  corresponding 
minimizing  energy  by  using  the  inertia  matrix  as  the 
sets  of  joint  angles  given  the  desired  position  and 
weighting  matrix.  The  most  popular  method  is  the 
orientation of the end‐effector. It has been a hot research 
Gradient  Projection  Method  (GPM)  first  introduced  in 
topic in recent years to derive the inverse kinematics of a 
(Liegeois  1977)  to  utilize  the  redundancy  to  avoid 
redundant  manipulator  (Angeles  et  al.  1992;  Antonelli 
mechanical  joint  limits.  The  particular  solution  is  found 
2009;  De  Schutter  2007;  Klein  1984),  which  has  more 
by  either  the  pseudoinverse  or  some  other  forms  of  the 
DOFs  than  required  to  achieve  the  desired  position  and 
particular inverse, and the homogeneous solution is then 
orientation  of  the  end‐effector,  since  the  advantages  of 
projected  onto  the  null  space  of  the  Jacobian  matrix. 
robot  redundancy  are  to  improve  the  flexibility  and 
However,  there  are  several  problems  associated  with 
versatility  of  the  robot  and  to  implement  collisions‐free 
GPM,  including  the  selections  of  the  appropriate  scalar 
motion in the robotic workspace by using the redundant 
coefficients  that  determine  the  magnitude  of  the  self‐
DOFs.  For  a  kinematically  redundant  manipulator,  a 
motion  and  oscillations  in  the  joint  trajectory,  and  in 
nonempty  null  space  exists,  which  allows  the  user  to 
many  cases,  inability  to  avoid  the  joint  limits  in  time  to 
analytically  apply  the  redundancy  of  the  system  in  a 
avoid disruption.  
strategic manner that will improve performance, because 
One  of  the  main  hindrances  to  utilize  redundant 
the  pseudoinverse  leaves  the  null‐space  untouched,  its 
manipulators  in  an  industrial  environment  is  joint  drift. 
elements  may  be  changed  without  affecting  the  validity 
Although  the  above  open‐loop  approaches  can  not 
of the solution (de Wit et al. 1996).  
prevent the robotic configuration from drift in joint space 
Many  schemes  and  profound  comparative  analysis  for 
at most of time, the drift makes the joints do not return to 
the  inverse  kinematic  problem  of  redundant 
their initial positions while completing a closed path. The 
manipulators  are  presented  and  proposed  in  previous 
well‐known  Closed‐Loop  Inverse  Kinematics  (CLIK) 
robotics  works.  Some  schemes  are  essential  for 
algorithm  was  proposed  to  overcome  the  joint  drift  for 
manipulator geometries with unknown inverse kinematic 
open‐chain  robot  manipulators,  which  was  developed  to 
functions  (Li  &  Leong  2004),  however,  for  a  continuous‐
include  feedback  for  the  end‐effector’s  position  and 
path  motion  control  task,  it  requires  the  inverse  of  the 
orientation  (Siciliano  1990;  Sciavicco  &  Siciliano  1988), 
Jacobian matrix. A generalized inverse of Jacobian matrix, 
and the algorithm can employ either the transpose of the 
pseudoinverse  J

 J T ( JJ T ) 1  is  widely  applied  for  a  inverse Jacobian or the direct Jacobian. The extension of the 
redundant  robot  and  its  drawback  is  that  the  technique to incorporate joint acceleration solution has also 

International Journal of Advanced Robotic Systems, Vol. 7, No. 4 (2010)                       1 
ISSN 1729‐8806, pp. 1‐10 
International Journal of Advanced Robotic Systems, Vol. 7, No. 4 (2010) 

been  proposed  in  (Siciliano  1990).  The  transpose  of  the  For  this  7‐DOF  redundant  manipulator 1 ,  coordinate 
Jacobian  is  required  that  naturally  avoids  the  infeasible  frames (frame  0  to frame  7 ) are assigned in Fig. 1 and all 
output  problem  and  allows  handling  of  singularities  and  joint axes are oriented perpendicular to the manipulator’s 
redundancies  in  (Sciavicco  &  Siciliano  1988)  since  the  ill‐ plane. Frame  0 , defined as the reference frame, is fixed to 
conditioned  Jacobian  will  lead  to  poor  performance  of  the  base  and  aligns  with  frame  1  when  the  first  joint 
inverse  kinematics.  Another  scheme  based  on  the  variable  1 is zero and frame  E  is the end‐effector frame. 
constrained  least‐squares  method  (Wampler  1986)  was  The corresponding links parameters of the 7‐DOF arm are 
proposed to  generate feasible  output around  singularities,  shown  in  Table  1.  The  transformation  matrix  of  7‐DoF 
which utilized a generalized‐inverse matrix of the Jacobian,  arm model can be derived by each known homogeneous 
known as the singularity‐robust pseudoinverse.   transformation  Denavit‐Hartenberg  matrix  ii 1 T (Craig 
However,  these  methods  cannot  handle  problems  like 
2005,  Angeles  2002).  It  will  be  not  difficult  to  obtain  the 
starting  motion  from  a  singularity  along  a  degenerate 
position  vector  through  the  forward  kinematics.  (Please 
direction,  or  reconfiguring  the  arm  by  moving  through 
find in Appendix) 
the  singularity  (Nenchev  et  al.  1996).  A  new  dynamical 
 
closed‐loop  system  for  kinematic  control,  aiming  at 
3. Inverse Kinematics analysis of the seven‐DOF 
further  improving  the  performance  at  and  around  the 
manipulator 
singularity,  was  proposed  in  (Nenchev  et  al.  1996) 
 
without  deteriorating  the  performance  at  regular  points 
3.1. Closed‐Loop Inverse Kinematics Solution 
and  this  approach  was  under  the  assumption  that  any 
Assume  that  a  task  space  trajectory  ( x(t ) x (t ))  is  given, 
singularity can be useful for a variety of tasks that can be 
performed  only  at  the  singularity,  or  only  moving  and  the  goal  is  to  find  a  feasible  joint  space  trajectory  
through the singularity.   (q(t ) q (t )) that  reproduces  the  given  trajectory.  The 
In this paper, we present the inverse kinematics solution for  differential  kinematics  equation,  in  terms  of  either  the 
a  seven‐DOF  redundant  manipulator  based  on  the  CLIK  geometric  or  the  analytical  Jacobian,  establishes  a  linear 
algorithm. In section 2, the kinematics model of the seven‐ mapping  between  joint  space  velocities  and  task  space 
DOF  manipulator  is  presented.  In  section  3,  the  inverse  velocities,  and  it  can  be  utilized  to  solve  for  joint 
kinematic analysis is discussed and redundancy resolution  velocities using kinematic equation. Then the differential 
at the velocity and acceleration levels are all considered. In  kinematics equation has the following form:  
 
section  4,  computer  simulations  and  experiments  are 
carried  out  and  some  discussions  are  added  in  section  5. 
x  J (q)q                         (1) 
 
The  section  6  concludes  the  whole  work  and  some  Due  to  the  non‐square  Jacobian  matrix  for  seven‐DOF 
mathematic calculations are placed in the appendix.   manipulator,  the  basic  inverse  solution  to  (1)  is  obtained 
  by  using  the  pseudoinverse  J †  of  the  matrix  J  and  the 
2. Kinematics model of the seven‐DOF manipulator  inverse solution can then be written as  
   

The redundant 7‐DOF manipulator is composed of seven   q  J † (q ) x                  (2) 


   

where  the  pseudoinverse  J †  can  be  computed  as 


J †  J T ( JJ T ) 1 .  
For  a  kinematically  redundant  manipulator,  a  nonempty 
null space exists due to the excess of input space relative  
 
Frame  Link   i 1 ai 1   d i   qi   qmin qmax  
0‐1  1  0  0  d1   q1   ‐270  270 

1‐2  2  ‐90  0  0  q2   ‐110  110 

2‐3  3  90  0  d3   q3   ‐180  180 

3‐4  4  ‐90  0  0  q4   ‐110  110 


4‐5  5  90  0  d5   q5   ‐180  180 

5‐6  6  ‐90  0  0  q6   ‐90  90 


Fig.  1.  The  kinematics  model  of  seven‐DOF  modular 
redundant manipulator 
6‐7  7  90  0  0  q7   ‐270  270 
7‐E  End  0  0  d7   0     
modular  joints  and  every  joint  is  rotational.  The  CAD  Note: The tool point depends on the grasping tool of the end‐effector 
structure of a real manipulator is shown in Fig.1.  Table 1. Link parameters of the 7‐dof manipulator 

1
Note that all the links of 7‐DoF arm are rigid.

2   
 
Jingguo Wang, Yangmin Li and Xinhua Zhao: Inverse Kinematics and Control of a 7‐DOF Redundant Manipulator Based on the Closed‐Loop Algorithm 

to  the  manipulable  space  ( n  m ),  which  is  available  to  It is obvious that the expression of the location error and 
set up systematic procedures for an effective handling of  its derivative can be given by  
 
redundant  DOFs  (de  Wit  1996,  Angeles  2002).  The  null 
space is the set of task space velocities that yield null joint  e  xd  x e  x d  x          (4) 
space  velocities  at  the  current  robot  configuration  and   

these task velocities belong to the orthogonal complement  The joint velocity vector has to be chosen so that the task 
of the feasible task space velocities.   error  tends  to  zero.  The  pseudo‐inverse  solution 
A  common  method  of  including  the  null  space  in  a  (Carignan 1991; Angeles 1992) at the velocity level results 
solution  is  the  formulation  in  (Liegeois  1977),   in a minimum‐norm velocity solution and the generalized 
CLIK algorithm can be expressed by  
x  J † y  ( I  J † J ) z ,  where  z  R n .  The  first  term  is   
the  particular  solution  to  the  inverse  problem  ( Jy  x ) ,  q  J † (q)( x d  K p ( xd  x))          (5) 
and  the  second  term  represents  the  homogeneous   

solution to the problem  ( Jy  0) .   Combining (5) and (1) together, there will be  


 
Thus the general inverse solution can be written as   e  K p e  0            (6) 
 

q  J † (q) x  ( I  J † (q) J (q ))q 0     


 
(3) 
where  K p  is a symmetric positive definite matrix, and the 
 

where  the  matrix  ( I  J ( q ) J (q ))  is  a  projector  of  the 


† choice  of  K p  guarantees  that  the  error  uniformly 
joint vector  q 0  onto  N ( J ) .   converges to zero.  
Because  open‐loop  solutions  of  joint  variables  through  Using CLIK algorithm, both position and velocity can be 
numerical integration unavoidably lead to solutions drift  obtained  for  given  joint  position  and  velocities  and  the 
and then to task space errors, in order to overcome these  tracking error along the given trajectory converges to zero 
drawbacks,  a  CLIK  algorithm  is  utilized  which  is  based  with  a  rate  depending  on  the  eigenvalues  of  K p  while 
on  the  task  space  error  ( e )  between  the  desired  and  open‐loop schemes can not achieve. 
actual  end‐effector  locations  or  the  task  space  velocity  Similarly,  combining  (6)  and  (3)  together,  the  general 
error ( e ).   inverse  solution  of  a  kinematically  redundant 
  manipulator  at  the  velocity  level  based  on  the  CLIK 
3.2. Redundancy resolution  algorithm will have the following form:  
 
3.2.1. Redundancy 
The  7‐DOF  manipulator  includes  redundancy  since  the  q  J † ( q )( x d  K p ( xd  x))  ( I  J † (q ) J (q )) q 0
    (7) 
number of joints ( n  7 ) is greater than the dimension of 
the  manipulation  variables  with  three  position  Forward Kinematics

coordinates  and  three  orientation  angles  ( m  6 ). 



Redundancy  plays  an  important  role  in  the  kinematic  Kp Null Space Optimization
 (JLA constraints)
control as redundant joints allow a manipulator to avoid  
Desired xd  Main Task Solution

q q
joint  limits,  singularities  or  obstacles,  the  redundancy  is  Trajectory
d / dt 
PD Loop
also  utilized  to  minimize  joint  velocities  or  actuator  Redundancy resolution

torques  in  case  of  following  a  desired  end‐effector  (a) Redundancy resolution at the velocity level 


trajectory.  Due  to  the  existence  of  redundancy,  joint 
Forward
velocities  can  not  be  obtained  directly  by  solving  the  Kinematics

differential kinematics equation since the inverse of non‐ 
Kp Null Space Optimization
square matrix  J  can not be obtained.   xd 

(JLA constraints)

 

In  the  case  of  controlling  a  redundant  manipulator  Desired  q q q


d / dt Main Task Solution
 
Trajectory

  
(Antonelli  et  al.  2009),  Cartesian  space  control  inputs  d / dt
Kv Redundancy resolution

should be projected into joint space and redundancy can  Augmented PD Loop


 Jacobian Derivative
be  resolved  at  position,  velocity,  or  acceleration  level  
x
Velocity Feedback
based on different application requirements. Here we will 
(b) Redundancy resolution at the acceleration level 
focus on the redundancy resolution schemes proposed at   
velocity or acceleration levels.  Fig.  2.  Two  kinds  of  closed‐loop  inverse  kinematics 
  schemes with different redundant resolutions 
3.2.2. Redundancy resolution at the velocity level    
As  shown  in  Fig.  2(a),  the  CLIK  algorithm  with  3.2.3. Redundancy resolution at the acceleration level  
redundancy  resolution  at  the  velocity  level  is  given  out,  Some  applications  like  compliant  control  of  redundant 
where  the  Proportional‐Derivative  (PD)  feedback  loop  manipulators  in  task  space  will  require  redundancy 
regulates the input of the redundancy resolution and the  resolution performed at the acceleration level (Shadpey et 
actual end‐effector locations flow into the PD part.  


International Journal of Advanced Robotic Systems, Vol. 7, No. 4 (2010) 

al.  1995).  The  second‐order  differential  kinematics  Many  techniques  of  redundancy  resolution  are  used  to 
equations have the following form:   search the null space, therefore the search directions and 
 
the  solutions  are  determined  by  evaluation  of  chosen 
x  J ( q ) q  J ( q ) q
 (8)  performance  criteria.  The  works  (Kapoor  et  al.  1998; 
 
Hooper  &  Tesar  1995)  presented  detailed  discussions 
Then  the  joint  acceleration  can  be  solved  by  the  pseudo 
about  performance  criteria  from  two  aspects  of 
inverse of the Jacobian matrix:  
 
constraint‐based  criteria  and  operational  goal‐based 
qP  J † (   )    
x  Jq             (9)  criteria,  while  the  former  includes  joint  limit  avoidance, 
 
velocity limit avoidance, peak torque avoidance, obstacle 
P denotes the joint accelerations in the task space 
where  q avoidance  and  mathematical  singularity  avoidance  and 
the  latter  considers  dexterity,  speed  of  operation,  load 
of the Jacobian or the augmented Jacobian.  
carrying  capacity,  manipulator  precision,  energy 
The  pseudo‐inverse  solutions  aim  at  minimizing  the 
minimizing and other criteria.  
norm  of  the  joint  acceleration,  but  it  leaves  the  joint 
Note  that  just  the  joint  limit  avoidance  is  considered  as 
velocities in the null‐space untouched. The reason is that 
local optimization of a performance criterion in this work, 
the  joint  velocities  are  composed  of  two  parts, 
and the objective function is the distance from mechanical 
q  q P  q N ,  where  q P  denotes  the  joint  velocities  in  joint  limits (de  Wit  et  al.  1996;  Liegeois  1977),  which  can 
task‐space  while  q N  denotes  the  joint  velocities  in  null‐ be defined as  
space,  and  q N  does  not  contribute  to  the  Cartesian  1 n q  qi 2 
(q)   ( i )    (12) 
n i 1 qiM  qim
velocity,   J q N  0 . 
 
Then a PD part for Cartesian velocity is added as shown  where  qiM ( qim )  denotes  the  maximum(minimum)  limit 
in  Fig.  2(b).  The  actual  end‐effector  locations  and  task 
for  qi  and  q i (the  middle  value  of  the  joint  range),  and 
space  velocity  are  the  feedbacks  to  the  augmented  PD 
loop  and  the  redundancy  resolution  is  solved  at  the  thus  redundancy  may  be  exploited  to  keep  the 
acceleration level. The joint accelerations of the main task  manipulator off joint limits.  
can be solved as:   As  the  quadratic  form  of  equation  (12)  is  the  most  used 
  function to be minimized, another optimization approach 
qP  J † (   )  
x  K p e  K v ev  Jq           (10)  which  reflects  the  objective  of  joint  limit  avoidance  has 
 
been proposed in (Wang & Li 2009; Klein 1984) as:  
 
where  ev  ( x  J q P )  denotes the task‐space velocity error.  
qi  q i qq
Then  by  numerical  integration,  the  velocity  solution  can  (q)  max( )     (13) 
qiM  qim qM  qm
be obtained.  p
 
 
where  p  2  and  we  set  p  6  in  the  case  studies.  The 
3.3. Null Space Optimization  
From previous sections, it is easy to know that if the null  CLIK  algorithm  considering  joint  limits  avoidance  as  a 
space  is  ignored,  many  of  the  redundancy  advantages  kind  of  performance  criterion  is  represented  in  block 
will  be  lost.  Since  the  equation  (7)  evidences  the  scheme form as shown in Fig. 2. 
possibility  of  choosing  the  vector  so  as  to  exploit  the   
redundant  DOF  while  the  matrix  ( I  J † ( q ) J ( q ))   4. Computer simulations and experiments  
 
projects the joint vector  q 0  onto the null space  N ( J ) . 
Two  case  studies  are  presented  to  validate  the  proposed 
Modifying  the null‐space  will  lead  to  an infinite  number  redundancy  resolution  at  the  velocity  and  acceleration 
of  solutions,  in  fact,  the contribution  of  q 0  is  to  generate  levels  and  the  corresponding  experiments  are  done  on  a 
null  space  motions  of  the  structure  that  do  not  alter  the  real redundant manipulator.  
task  space  configurations  but  allow  the  manipulator  to   

reach  postures  which  are  more  dexterous  for  the 


execution  of  the  given  task.  Referring  to  (3)  and  (7),  a 
typical  choice  of  the  null  space  joint  velocity  vector  (de 
Wit et al. 1996; Liegeois 1977) is  
 
w( q ) T                                (11) 
q 0  k0 ( )
q
 
with  k0  0 ,  w(q ) is  a  scalar  objective  function  of  the 

joint  variables  and  ( w(qq ) )T  is  the  vector  function 


representing the gradient of  w .  
Fig. 3. A real seven‐DOF redundant manipulator 

4   
 
Jingguo Wang, Yangmin Li and Xinhua Zhao: Inverse Kinematics and Control of a 7‐DOF Redundant Manipulator Based on the Closed‐Loop Algorithm 

The  simulations  are  carried  out  in  the  Matlab/Simulink  deg)  from  Fig.  4(b)  whereas  the  joints  limits  are 
environment,  and  a  7‐DOF  manipulator  used  in  the  successfully  avoided  in  the  simulation  results  using  the 
simulation  is  composed  of  seven  Powercube  modular  JLA optimization approach (13) as shown in Fig. 4(d) and 
parts, which is built up with the same geometrical size as  Fig.  4(f).  The  manipulator’s  configuration  during  the 
the  real  manipulator.  The  frame  assignments  and  their  simulation  is  shown  in  Fig.  4(a),  where  the  redundancy 
transformations  are  given  out  in  Fig.  1.  The  resolution combines the JLA optimization approach.  
corresponding  D‐H  parameters  of  joints  and  the  The  joints  velocities  of  redundancy  resolution  at  the 
maximum and minimum joint values are shown in Table  velocity and acceleration level are shown in Fig. 4(c) and 
1.  The  link  length  parameters  are  d1  0301m ,   Fig. 4(e). By comparing them, it is not difficult to find that  
d 3  0350m ,  d 5  0308m and d 7  04206m .  All  the   
the  joint  velocities  converge  to  zero  in  the  former  one 
joints initial velocities are set to zero at the starting points.  
whereas  the  latter  is  not.  The  reason  is  that  the 
The  gain  parameters  have  the  values,  
redundancy  resolution  at  the  velocity  level  results  in  a 
K p  diag{50 50 50}  and  K v  diag{50 50 50} ,  and  the  minimum‐norm  velocity  solution  and  it  does  not  have 
simulation time is set to  4 s.   any null space component. 
  The  corresponding  experiment  is  made  on  a  real 
4.1. Case study 1   Powercube manipulator as shown in Fig. 3. The following 
In  the  first  case  study,  the  desired  spatial  trajectory  is  trajectories  in  the  simulation  and  experiment  are 
defined as an ellipse with major radius   035m  and minor  combined  together  with  the  desired  spatial  ellipse 
radius  015m  in the  XZ  plane of Cartesian coordinates.   trajectory  as  shown  in  Fig.  5  and  the  projection  on  the   
  plane is shown in Fig. 6.  
Errors  of  tracking  an  ellipse  trajectory  in  the  simulation 
and  experiment  are  presented  respectively  in  Fig.  7(a) 
and Fig. 7(b). Experimental errors seem much bigger than 
the simulation errors because of many uncertainties such 
as  unknown  inertia  dynamics,  complex  nonlinear 
frictions,  gears  reduction  clearances,  motor  rotating  drift 
and so on. 
(a) Manipulator configuration (b) Joints angles without JLA   

(c) Joints velocities with JLA(p=6)     (d) Joints angles with JLA(p=6) 

Fig. 5. Simulation, experiment and desired spatial ellipse 
trajectories 
 
(e) Joints velocities with JLA(p=6)     (f) Joints angles with JLA(p=6)                                         
 
Fig.  4.  Simulation  results  of  the  seven‐DOF  manipulator 
tracking a spatial ellipse. (c) and (d) are generated at the 
velocity  level  while  (e)  and  (f)  are  generated  at  the 
acceleration level. 
 
In  order  to  show  the  effectiveness  of  the  JLA  objective 
function,  the  simulations  are  firstly  done  with  the 
consideration of JLA and without JLA respectively. Then 
the redundancy resolution at the velocity and acceleration 
levels  are  both  considered  in  the  following  simulations. 
Fig. 6. Simulation, experiment and desired spatial ellipse 
From  the  simulation  results shown  in  Fig.  4, it  is  easy  to 
trajectories projected on the XZ plane 
find  that  the  sixth  joint  exceeds  its  upper  joint  limit  (90 


International Journal of Advanced Robotic Systems, Vol. 7, No. 4 (2010) 

4.2. Case study 2   respectively  in  Fig.  11(a)  and  Fig.  11(b).  Although  there 
The  second  case  study  is  to  track  a  trajectory  with  the  are many uncertainties that lead to the unexpected errors, 
shape  of  ʺUʺ.  Similarly  as  case  study  1,  the  simulations  the experiments have shown desired results. 
are made respectively with the redundancy resolutions at   
the velocity and acceleration levels.   5. Discussions 
The  manipulator  configuration  tracking  the  U‐shape   
trajectory  is  shown  in  Fig.  8(a).  The  joint  angles  of  the  In  this  paper,  joint  limit  avoidance  is  applied  as  an 
solution  without  considering  JLA  optimization  approach  optimization  approach  to  solve  the  redundancy  by  the 
is shown in Fig. 8(b), where all the joints do not exceed   gradient  projection  method  (GPM)  (Liegeois  1977).  GPM 
  solves the inverse kinematics problem at the velocity  
 

 
(a)  Errors_A                                  (b) Errors_B 
 
Fig.  7.  Errors  of  tracking  an  ellipse  trajectory  in  the 
simulation  and  experiment.  Errors_A  represents  the 
errors  between  the  simulation  and  desired  trajecotory  
while  error_B  means  the  errors  between  the  experiment   
Fig.  9.  Simulation,  experiment  and  desired  spatial  
and desired trajecotory. 
U‐shape trajectories 
 
 
their  limits  since  this  kind  of  task  doesn’t  lead  to  the 
disruption  of  any  joint  limits.  The  joint  angles  solved  in 
the  simulations  with  redundancy  resolution  at  the 
velocity and acceleration levels are shown in Fig. 8(c) and 
Fig. 8(d) respectively.  
 

 
  Fig.  10.  Simulation,  experiment  and  desired  spatial  
(a) Manipulator configuration (b) Joints angles without JLA 
U‐shape trajectories projected on the XZ plane 
 

 
(c) Joints velocities with JLA(p=6)     (d) Joints angles with JLA(p=6) 
 
Fig.  8.  Simulation  results  of  the  seven‐DOF  manipulator   
(a)  Errors_A                                  (b) Errors_B 
tracking a U‐shape trajectory. (c) and (d) are generated at 
 
the velocity level.  Fig.  7.  Errors  of  tracking  a  spatial  U‐shape  trajectory  in 
  the  simulation  and  experiment.  Errors_A  represents  the 
Three  kinds  of  trajectories  (simulation,  experiment  and  errors  between  the  simulation  and  desired  trajecotory  
desired trajectories) are combined together and compared  while  error_B  means  the  errors  between  the  experiment 
in Fig. 9 and their projections on the XZ plane are shown  and desired trajecotory. 
in  Fig.  10.  The  tracking  errors  for  the  U‐shape  spatial   
trajectory in the simulation and experiment are presented 

6   
 
Jingguo Wang, Yangmin Li and Xinhua Zhao: Inverse Kinematics and Control of a 7‐DOF Redundant Manipulator Based on the Closed‐Loop Algorithm 

level and can only deal with performance criteria defined  Intelligent  Robots  and  Systems,  pp.  5892–5897,  ISBN


at  the  position  level.  Besides,  many  other  performance  978‐1‐4244‐3803‐7, St. Louis, USA, Oct 2009.  
criteria  such  as  velocity  limit  avoidance,  peak  torque  Carignan,  C.  (1991).  Trajectory  optimization  for 
avoidance,  obstacle  avoidance,  mathematical  singularity  kinematically  redundant  arms,  Journal  of  Robotic 
avoidance  and  energy  minimization  can  be  selected  Systems, Vol. 6, No. 5, pp. 221–248, ISSN 0741‐2223.  
(Kapoor  et  al.  1998 ;  Lee  &  Buss  2006).  Redundancy  Craig,  J.  J.  (2005).  Introduction  to  Robotics:  Mechanics  and 
resolution  can  be  at  different  levels,  like  joint  Control,  3rd  Edition,  Prentice‐Hall,  ISBN  ISBN‐10: 
displacements,  velocities,  acceleration  or  torques.  Mostly  0201543613, New York.  
the  redundancy  is  resolved  at  one  particular  level  while  De  Schutter,  J.;  De  Laet,  T.;  Rutgeerts,  J. et  al.  (2007). 
sometimes  criteria  defined  at  different  levels  are  Constraint‐based task specification and estimation for 
combined  together  for  an  optimal  solution.  However,  sensor‐based  robot  systems  in  the  presence  of 
most of above performance criteria are coupled. Then it is  geometric  uncertainty,  The  Int.  J.  Robotics  Research, 
impossible  to  optimize  one  criterion  without  affecting  Vol. 26, No. 5, pp. 433–455, ISSN 0278‐3649.  
another  and  the  tasks  with  different  priorities  will  be  de  Wit,  C.  C.;  Siciliano,  B.  &  Bastin,  G.  (1996).  Theory  of 
regulated (Antonelli et al. 2009).   Robot Control, Springer‐Verlag, ISBN‐10: 3540760547, 
  London, U.K., 1996.  
6. Conclusions   Hooper, R. & Tesar, D. (1995). Motion coordination based 
  on  multiple  performance  criteria  with  a  hyper‐
The  inverse  kinematics  solutions  of  a  redundant  7‐DOF  redundant  serial  robot  example,  IEEE  Int.  Symp.  on 
manipulator is resolved based on the CLIK algorithm and  Intelligent  Control,  pp.  133–138,  ISBN  0‐7803‐2722‐5, 
the redundancy resolutions are found at the velocity and  Monterey, CA , USA, Aug 1995.  
acceleration levels respectively. Two kinds of case studies  Huang, M. Z. & Varma, H. (1991). Optimal rate allocation 
are  considered  and  the  corresponding  simulations  and  in  kinematically  redundant  manipulators  –  the  dual 
experiments  are  made  respectively.  The  joint  limit  projection  method,  Proceedings  of  IEEE Int.  Conf.  on 
avoidance  is  considered  as  one  performance  criterion  Robotics  and  Automation,  pp.  702–707,  ISBN  0‐8186‐
with  local  optimization,  which  is  combined  into  the  2163‐X, Sacramento, CA, USA, Apr 1991.  
redundancy  resolution  as  a  null‐space  optimization  Kapoor,  C.;  Cetin,  M.  &  Tesar,  D.  (1998).  Performance 
approach and its effectiveness is proved by the numerical  based  redundancy  resolution  with  multiple  criteria, 
simulation  results.  Based  on  two  proposed  CLIK  Proceedings  of  ASME  Design  Engineering  Technical 
schemes,  the  kinematics  solutions  with  redundancy  Conference, pp. 1‐6, ISBN 0‐7918‐1953‐1, Atlanta, GA, 
resolution  at  the  velocities  and  acceleration  level  are  USA, Sep 1998.  
compared  and  analyzed.  Although  there  are  many  Klein,  C.  A. &  Hung,  C.  H.  (1983).  Review  of 
uncertainties  leading  to  the  unexpected  errors,  the  pseudoinverse  control  for  use  with  kinematically 
experimental results confirm the proposed method.   redundant  manipulators,  IEEE  Trans.  on  Systems, 
  Man,  and  Cybernetics,  Vol.  13,  pp.  245–250,    ISSN 
7. Acknowledgements   0018‐9472.
  Klein,  C.  A.  (1984).  Use  of  redundancy  in  design  of 
This  work  is  supported  by  the  Macao  Science  and  robotic  systems,  International  Symposium  on 
Technology  Development  Fund  under  Grant  no.  Robotics  Research,  Hanafusa,  H.  &  Inoue,  H.  (Ed.), 
016/2008/A1  and  Research  Committee  of  University  of 
pp.  207–214,  ISBN  0‐2620‐8151‐2,Kyoto,  Japan,  Aug 
Macau under grant no. UL016/08‐Y2/EME/LYM01/FST.  
1984, MIT Press, Cambridge, Mass.  
 
Lee,  K.  &  Buss,  M.  (2006).  Redundancy  resolution  with 
8. References  
multiple  criteria,  Proceedings  of  IEEE/RSJ  Int.  Conf. 
 
on Intelligent Robots and Systems, pp. 598–603, ISBN 
Angeles,  J.;  Ranjbaran,  F.  &  Patel,  R.V.  (1992).  On  the 
1‐4244‐0259‐X, Beijing, China, Oct 2006.  
design  of  the  kinematic  structure  of  seven‐axes 
Liegeois, A. (1977). Automatic supervisory control of the 
redundant  manipulators  for  maximum  conditioning, 
configuration  and  behavior  of  multibody 
Proceedings  of  IEEE  Int.  Conf.  Robotics  and 
mechanisms,  IEEE  Trans.  Systems,  Man,  and 
Automation,  pp.  494–499,  ISBN  0‐8186‐2720‐4,  Nice, 
Cybernetics,  Vol.  7,  No.  12,  pp.  868–871,  ISSN  0018‐
France, May 1992.  
9472.  
Angeles,  J.  (2006).  Fundamentals  of  Robotic  Mechanical 
Li,  Y.  &  Leong,  S.  (2004).  Kinematics  Control  of 
Systems:  Theory,  Methods,  and  Algorithms,  3rd  Edition, 
Redundant  Manipulators  Using  CMAC  Neural 
Springer‐Verlag, ISBN-10: 0387945407, New York.  
Network  Combined  with  Genetic  Algorithm, 
Antonelli,  G.;  Indiveri,  G.  &  Chiaverini,  S.  (2009). 
Robotica, Vol. 22, No. 6, pp. 611‐621, ISSN 0263‐5747.  
Prioritized  closed‐loop  inverse  kinematic  algorithms 
Nenchev,  D.  N.;  Tsumaki,  Y.  &  Uchiyania,  M.  (1996). 
for  redundant  robotic  systems  with  velocity 
Adjoint  Jacobian  closed‐loop  kinematic  control  of 
saturations,  Proceedings  of  IEEE/RSJ  Int.  Conf.  on 
robots, Proceedings of IEEE Int. Conf. on Robotics and 


International Journal of Advanced Robotic Systems, Vol. 7, No. 4 (2010) 

Automation,  pp.1235–1240,  ISBN  0‐7803‐2988‐0, 


Minnesota, USA, Apr 1996.  
Shadpey,  F.;  Patel,  R.  V.;  Balafoutis,  C.  And  Tessier,  C. 
(1995).  Compliant  motion  control  and  redundancy 
resolution  for  kinematically  redundant  manipulators, 
Proceedings  of  American  Control  Conference,  pp. 
392–396,  ISBN  07‐80‐32445‐5,  Seattle,  WA,  USA,  Jun 
1995.  
Siciliano,  B.  (1990).  A  closed‐loop  inverse  kinematic 
scheme for online joint‐based robot control, Robotica, 
Vol. 8, No. 3, pp. 231–243, ISSN 0263‐5747.  
Sciavicco, L. & Siciliano, B. (1988). A solution algorithm to 
the  inverse  kinematic  problem  for  redundant 
manipulators,  IEEE  J.  of  Robotics  and  Automation, 
Vol. 4, No. 4, pp. 303–310, ISSN 0882‐4967.  
Wampler,  C.W.  (1986).  Manipulator  inverse  kinematic 
solutions  based  on  vector  formulations  and  damped 
least‐squares  methods,  IEEE  Trans.  Systems,  Man, 
and  Cybernetics,  Vol.  16,  No.  1,  pp.  93–101,  ISSN 
0018‐9472.  
Wang, J.‐G. & Li, Y. (2009). Comparative case studies for 
the  inverse  kinematics  of  redundant  manipulator 
based  on  repetitive  tracking  tasks,  Proceedings  of 
IEEE Int. Conf. on Automation and Logistics, pp. 164‐
169,  ISBN  978‐1‐4244‐4795‐4,  Shenyang,  China,  Aug 
2009. 
Whitney,  D.  E.  (1969).  Resolved  motion  rate  control  of 
manipulator and human prosthesis, IEEE Trans. Man‐
Machine  Systems,  Vol.  10,  No.  2,  pp.  47–53,  ISSN 
0536‐1540.  

8   
 
Jingguo Wang, Yangmin Li and Xinhua Zhao: Inverse Kinematics and Control of a 7‐DOF Redundant Manipulator Based on the Closed‐Loop Algorithm 

Appendix  
 
1. The forward kinematics solution   
px   s1((d 5  d 7c6) s3s4  d 7(c 4c5s3  c3s5) s 6)  c1( s 2(d 3  c 4(d 5  d 7c6)  d 7c5s4s6)  c 2(c3(d 5  d 7c6) s 4 
d 7(c3c4c5  s3s5) s 6));
p y =c1((d 5  d 7c6) s3s4  d 7(c 4c5s3  c3s5) s 6)  s1( s 2(d 3  c 4(d 5  d 7c6)  d 7c5s4s6)  c 2(c3(d 5  d 7c6) s 4
 
 d 7(c3c4c5  s3s5) s 6));
pz  d1  d 7s2s3s5s6  c3s2(( d 5  d 7c6) s 4  d 7c4c5s6)  c 2(d 3  c 4(d 5  d 7c6)  d 7c5s4s6).  
 
2. The jacobian matrix  
J11  c1((d 5  d 7c6) s3s 4  d 7(c 4c5s3  c3s5) s 6)  s1( s 2(d 3  c 4( d 5  d 7c6)  d 7c5s 4 s 6)  c 2(c3(d 5
 
 d 7c6) s 4  d 7(c3c 4c5  s3s5) s 6))
J12  c1(c 2(d 3  c 4(d 5  d 7c 6)  d 7c5s 4 s 6)  s 2(c3( d 5  d 7c6) s 4  d 7(c3c 4c5  s3s5) s 6))  
J13   s1(c3(d 5  d 7c6) s 4  d 7(c3c 4c5  s3s5) s6)  c1c 2(d 7c3s5s6  s3((d 5  d 7c6) s 4  d 7c 4c5s6))  
J14   s1s3(c 4(d 5  d 7c6)  d 7c5s 4 s 6)  c1( s 2((d 5  d 7c6) s 4  d 7c 4c5s 6)  c 2c3(c 4(d 5  d 7c6)
 
d 7c5s 4 s 6))
J15  d 7(c 4s1s3s5  c3(c5s1  c1c 2c 4s5)  c1(c 2c5s3  s 2s 4s5)) s6  
J16   d 7( s1(c 4c5c6 s3  c3c6 s5  s3s 4 s 6)  c1( s 2(c5c6 s 4  c 4 s6)  c 2( c3c 4c5c6  c6 s3s5  c3s 4 s 6)))  
J17  0  
J 21   s1((d 5  d 7c6) s3s 4  d 7(c 4c5s3  c3s5) s 6)  c1( s 2(d 3  c 4(d 5  d 7c6)  d 7c5s 4 s 6)  c 2(c3(d 5  d 7c6) s 4
 d 7(c3c 4c5  s3s5) s 6))
J 22  s1(c 2(d 3  c 4(d 5  d 7c6)  d 7c5s 4 s 6)  s 2(c3(d 5  d 7c6) s 4  d 7(c3c 4c5  s3s5) s 6))  
J 23  c1(c3(d 5  d 7c6) s 4  d 7(c3c 4c5  s3s5) s 6)  c 2 s1(d 7c3s5s 6  s3((d 5  d 7c6) s 4  d 7c 4c5s 6))  
J 24   s1s 2((d 5  d 7c6) s 4  d 7c 4c5s 6)  c 2c3s1(c 4(d 5  d 7c6)  d 7c5s 4 s6)  c1s3(c 4(d 5  d 7c6)  d 7c5s 4 s 6)  
J 25  d 7(c1(c3c5  c 4 s3s5)  s1( s 2 s 4 s5  c 2(c5s3  c3c 4 s5))) s 6  
J 26  d 7c1(c 4c5c6 s3  c3c6 s5  s3s 4 s 6)  d 7 s1( s 2(c5c6 s 4  c 4 s 6)  c 2(c6 s3s5  c3( c 4c5c6  s 4 s 6)))  
J 27  0  
J 31  0  
J 32  d 7c 2 s3s5s 6  c 2c3((d 5  d 7c6) s 4  d 7c 4c5s 6)  s 2(d 3  c 4(d 5  d 7c 6)  d 7c5s 4 s 6)  
J 33  s 2(d 7c3s5s 6  s3((d 5  d 7c6) s 4  d 7c 4c5s 6))  
J 34  c 2((d 5  d 7c6) s 4  d 7c 4c5s 6)  c3s 2(c 4(d 5  d 7c6)  d 7c5s 4 s 6)  
J 35  d 7(c5s 2 s3  (c3c 4 s 2  c 2 s 4) s5) s 6  
J 36   d 7(c6 s 2 s3s5  c 2(c5c 6 s 4  c 4 s 6)  c3s 2(c 4c5c6  s 4 s 6))  
J 37  0.  
 
 
 
 
 
 

Das könnte Ihnen auch gefallen