You are on page 1of 6

2014 IEEE/RSJ International Conference on

Intelligent Robots and Systems (IROS 2014)


September 14-18, 2014, Chicago, IL, USA

Analytical Inverse Kinematic Solution for Modularized 7-DoF


Redundant Manipulators with Offsets at Shoulder and Wrist
Ren C. Luo, Tsung-Wei Lin, Yun-Hsuan Tsai

Abstract— The objective of this paper is to develop an


analytical inverse kinematic solution for a 7-DoF redundant
manipulator with offsets at shoulder and wrist. Firstly, the key
ingredient is to derive closed-form inverse kinematic solution
using different joint as redundancy based on parameterization
method. By having these redundant parameters,we obtain
different null-space self-motion pattern of the arm. We then
can select a proper redundant joint. The method is consistent
with calculating augmented Jacobian matrix. Lastly, the derived
equations are verified with a modularized 7-DoF manipulator
with offsets at shoulder and wrist, which consists of modular-
ized components designed and built by our laboratory.

I. INTRODUCTION
Generally, an industrial manipulator such as PUMA560
is equipped with 6 degrees of freedom(DoF), it is just Fig. 1. The physical hardware assembly of the modularized 7-DoF
enough to reach a position and orientation in Cartesian space. manipulator with offsets at shoulder and wrist
However, to achieve dexterous movement like the upper
limb of human, different with normal industrial manipulators,
angle between arm plane, spanned by the shoulder, elbow,
such manipulators equipped with 7-DoF kinematic structure
and wrist, and the reference plane for an S-R-S manipulator.
is desirable. With the redundant joint, such manipulators
Yu[6] proposed a method to find analytical inverse kinematic
may accomplish tasks such as obstacle-avoidance [1][2] and
solution manipulators similar to S-R-S type with offset-
singularity avoidance [3] while reaching target position at the
wrist. By applying the method, analytical solution for this
same time. These tasks are all about manipulator kinematics.
type of arm still can be found with fixed-arm-angle. Singh
However, when one wants to utilize advantages of re-
[7] found analytical equations for an S-R-S manipulator
dundant manipulators, one encounters problem of solving
with elbow offsets. In addition, they analyzed the difference
inverse kinematic problem of such manipulators. There are
of calculating elbow joint value due to different elbow
two ways to solve manipulator kinematic problem, one is
poses. Tondu[8] proposed a method to find analytical inverse
numerical method and the other is analytical method. Tradi-
kinematic equation for an S-R-S anthropomorphic arm. Also,
tionally, numerical method is used to deal with kinematics
they analyzed the difference between taking arm angle as
problem. However, solving Jacobian matrix is rather tedious,
the redundancy parameter and joint value as the redundancy
not to mention solving its inverse. Also, since the relation
parameter, then they came to the conclusion that choosing
between joint space and Cartesian space of an arm is not
either one is similar with the other based on elbow trajectory.
linear, obtaining joint values by numerical method is not
In the field of industrial manipulator, not only S-R-S type
satisfactory.
manipulator can be seen. Take UR5 [9] as an example, it
Since that, many researchers have studied on how to find
is a 6-DoF mamipulator with several link offsets. It has an
analytical solution for different manipulators with different
advantage that in most of situations, its joints are able to
structure. Shimizu [4] and Moradi [5] solved analytical
rotate 360 degrees. While preserving the advantages of UR5,
inverse kinematic solution of S-R-S 7-DoF manipulators,
we design a manipulator with additional joint as redundancy.
which consists of spherical shoulder, spherical wrist and
The links of the design are modularized components which
elbow, by fixed-arm-angle method. The arm angle is the
grant it an advantage of being easy to assemble and adaptive
Ren C. Luo is with the Center for Intelligent Robotics and Automation to the application needs, the appearance of the modularized
Research, National Taiwan University, No. 1, Sec. 4, Roosevelt Road, Taipei, component is shown in Figure 2. Also, with the redundant
Taiwan 106 (corresponding author to provide phone: +886-2-3366-9822; e- DoF, redundant applications can be studied. Because of the
mail: renluo@ntu.edu.tw).
Tsung-Wei Lin is with the Center for Intelligent Robotics and Automation offset-shoulder and offset-wrist, the aforementioned methods
Research, National Taiwan University, No. 1, Sec. 4, Roosevelt Road, Taipei, are not suitable for this type of manipulator. Since it is
Taiwan 106 (e-mail: cwlin@ira.ee.ntu.edu.tw). not able to find arm-plane for this type of manipulator, we
Yun-Hsuan Tsai is with the Center for Intelligent Robotics and Automa-
tion Research, National Taiwan University, No. 1, Sec. 4, Roosevelt Road, proposed a way to find analytical inverse kinematic solution
Taipei, Taiwan 106 (e-mail: yhtsai@ira.ee.ntu.edu.tw). by fixed-joint method. Also, we derived the solution based

978-1-4799-6934-0/14/$31.00 ©2014 IEEE 516

Authorized licensed use limited to: Technische Hochschule Ingolstadt. Downloaded on August 10,2021 at 08:27:15 UTC from IEEE Xplore. Restrictions apply.
TABLE I
D ENAVIT H ARTENBERG PARAMETERS

Joint θ (rad) α(rad) a(m) d(m) θmin (◦ ) θmax (◦ )


1 θ1 + π/2 π/2 0 0 −90 90
2 θ2 + π/2 −π/2 0.135 0 −90 90
3 θ3 − π/2 0 0.135 0.350 −80 80
4 θ4 0 −0.015 0.300 0 90
5 θ5 + π/2 π/2 0 0 −90 90
6 θ6 + π/2 π/2 0.115 0 −90+ 90−
7 θ7 0 0.225 0 −180 180
Fig. 3. The conceptual structure of the arm

Fig. 2. The modularized component

on different joints regarded as redundancy parameter.


In this paper, an analytical solution for manipulators
with offset-shoulder and offset-wrist is given. In Section
II, configuration of the arm used to verify the equations is
Fig. 4. The coordinate system of the arm with offset at shoulder and wrist.
presented. Section III shows the method to find analytical The end-effector is not included in this figure
inverse kinematic solution by fixed-joint method based on
different joints seen as redundancy. Also, we discuss how to
select better joint as redundancy to avoid singularity. Section can be exchanged with each other easily. Lastly, the forward
IV provides simulation result of the proposed solution on the kinematics can be solved using homogeneous transformation
basis of the 7-DoF modularized manipulator designed by our i
matrix Ti−1 with parameters given by Table I:
own. Section V is the concluding remarks.  i i

i Ri−1 Pi−1
II. MANIPULATOR MODEL Ti−1 = (1)
0 1
A. modularized component
 
The motor, the controller, the reduction gear, and others cos θi − cos αi sin θi sin αi sin θi
are installed in a modularized component, as shown in Rii−1 =  sin θi cos αi cos θi − sin αi cos θk  (2)
Figure 2. In addition, links can be attached to this part at Link 0 sin αk cos αk
A-side and Link B-side. Also, there is a window for direct  
ak cos θi
access to each controller for easy maintenance. Generally, the i
Pi−1 =  ak cos θi  (3)
modularized design grants it advantages in easy assembly.
di
B. Forward kinematics
where Rii−1 and Pi−1
i give the transformation from (i − 1)th
The Denavit-Hartenberg parameters of the proposed ma- frame to i frame. Multiply from T01 to T67 we obtain R70 and
th
nipulator is shown in Table I. As Figure 3 shows, the P07 which can be used as known parameters to solve inverse
structure of the arm has two major differences from S- kinematic problem.
R-S counterpart, which are offsets at shoulder and wrist
respectively. The offsets are d3 and d6 in DH parameters III. ANALYTICAL INVERSE KINEMATIC EQUATION
shown in Table I. The characteristic of the arm is that it As shown in Figure 3, because of the offsets at shoulder
consists of three parallel joints, which is joint 3, 4, and 5. and wrist, we cannot apply fixed-arm-angle method. Hence,
Joint 1, 2, and 6, 7 are partial spherical joints. Because every we have to use fixed-joint method. Firstly, we make deriva-
joints consist of modularized component, joint 1, 2, and 6, 7 tion with joint 1 value regarded as redundancy parameter.

517

Authorized licensed use limited to: Technische Hochschule Ingolstadt. Downloaded on August 10,2021 at 08:27:15 UTC from IEEE Xplore. Restrictions apply.
Fig. 5. The projection triangle used to solve θ2 Fig. 6. The triangle spanned by Po f f set−s , Pe , and Po f f set−s

 
... ... ...
Then, solution with value of joint 2 seen as redundancy
R= ... ... ...  (9)
parameter will be solved afterwards.
− cos θ6 cos θ7 cos θ6 sin θ7 − sin θ6
In the following sections, we denote Aab,c=d as a value A
of frame a referred to frame b, while a specified value c ( q
is d. Also, as shown in Figure 3 and Figure 4, the origin θ6 = atan2(−R3,3 , R3,1 2 + R3,2 2 )
(10)
of frame 0 and 1 are at Pb , with different orientations. The θ7 = atan2(−R3,2 , R3,1 )
origin of the frame 2 is at Ps , and the origin of frame 3
where Ri, j is the value in ith row, jth column of matrix R.
is at Pe . The origin of frame 4 and 5 are at Po f f set−w with
In this step, we already know θ1 , θ2 , θ6 , and θ7 , we then
different orientations. Lastly, the origin of frame 6 and 7 are
know Po f f set−s and Po f f set−w :
at Pw and Pend respectively.
T = T25 = T21 T10 T07 T76 T65

A. Closed-form kinematic equations with joint 1 as redun- T (11)
Po f f set−w = P25 = T1,4 T2,4 T3,4

dant joint
With the knowledge of position and orientation of the end- P2o f f set = 0 0 d3
 T
(12)
effector, i.e. R70 and P07 , we obtain wrist position, P06 :
 6 Next, with the help of projection triangle on the plane Z2 =
P0 = P07 + R70 v67 −d3 , which is spanned by Po f f set−s , Pe , and Po f f set−s , we can
T (4)
v67 = 0 0 −d7

find θ 4 and θ 3:
2 2 2

where v67 is the vector from the end-effector position to the d3 +d35 −do5 f f set−s
cos γ = o f f set−s

5 3
wrist position. Next, because θ1 is known, we are able to 2×d3 ×do f f set−s
p (13)
solve the position of the shoulder, P02 : θ4 = π − atan2( 1 − cos γ 2 , cos γ)

T  2 2 2
P02 = d3 +do5 f f set−s −d35

d2 cos θ1 d2 sin θ1 0 (5)  α = o f f set−s


2×do3 f f set−s ×do5 f f set−s
then also with the knowledge of θ1 , we can transform both 5 5 (14)
 β = atan2(Y 2 , X2 )
P02 and P06 into P12 and P06 :

θ3 = π/2 − α + β

(
T
P12 = R10 P02 where do3 f f set−s is a3 and d35 is a4 as in Table I, do5 f f set−s can
T (6)
P16 = R10 P06 be obtained by simple Euclidean norm calculation.
Now only θ5 remains unknown. It can be found with the
6 , i.e. project P16 to Z1 = d2 . As Figure 5
Next, find P1,z=d2
information of all the other joint value and R70 :
shows, then we can find θ2 with the aid of projection triangle T T
1 and 2: R = R54 = R40 R70 R75 (15)
 
cos θ5 + π/2 ... ...
( q
φ = atan2( d26 2 − d 2 , |d + d |)
3 3 4
(7) R =  sin θ5 + π/2 ... ...  (16)
6
θ2 = atan2(Y1,z=d , X 6 ) − φ −π
2 1,z=d2 0 ... ...
where φ is an angle of triangle 1. d26 indicates the distance θ5 = atan2(R2,1 , R1,1 ) − π/2 (17)
from P12 to P1,z=d
6
2
. So far we obtain θ1 and θ2 , now we can
solve θ6 and θ7 by the following equation: Finally, we find all the joint values by the aforementioned
equations using fixed-joint method with joint 1 regarded as
T
R = R72 = R20 R70 (8) the redundant parameter.

518

Authorized licensed use limited to: Technische Hochschule Ingolstadt. Downloaded on August 10,2021 at 08:27:15 UTC from IEEE Xplore. Restrictions apply.
Fig. 8. Projection of the redundancy circle on plane Z0 = 0

Fig. 7. The trajectory of virtual offset-wrist forms a circle when all joints
are fixed except joint 1
candidates by equations from (4) to (7) to find out which
one is correct.
B. Closed-form kinematic equations with joint 2 as redun- C. Singularity Issues
dant joint
It is known that singularity problems occur when solving
Since joint 1 and joint 2 can exchange with each other, inverse kinematics are non-negligible problems. We check
it indicates that joint 1 and joint 2 have similar influence for several singular situations. The first one is that position
on end-effector position and orientation. Thus, to make the given is out of reachable space of the arm. This can be
analytical equation for this type of arm more complete, we prevented by calculating the distance between given point
also find analytical inverse kinematics solution when joint 2 and base before setting to solve inverse kinematics. The
value is the redundanct parameter. When we know joint 1 second one may occur when Z6 is on the extended line of
value, Po f f set−s can be easily found, then we can find joint 2 Z0 (see Figure 4). In such case, the influence on orientation
value as (6) and(7) did. However, with the circle drawn by of the end-effector by joint 1 and joint 7 merge together, so
trajectory of Pw when all the joints are fixed except for joint the value of joint 1 cannot be uniquely determined. It can
1, we are able to find θ1 based on known θ2 , then applying be solved by locking joint 1 and preventing it from rotating
from (8) to (17) so as to find all values of all other joints. until the arm leaves this case. The third one occurs when Z5
As shown in Figure 7, Po f f set−w0 is on the circle whose is parallel to Z2 , Z3 , and Z4 , i.e. the value of joint 6 is 90◦ or
center is Oc . Based on our coordinate system construction −90◦ . If this singularity occurs, we can lock all other joints
shown in Figure 4, we consider the offset from Ps to Po f f set−s and let joint 6 pass this singularity point, the similar way as
between frame 2 and 3. However, we can define a virtual we deal with the second singular situation.
o f f set−s
point Po f f set−w0 where d w 0 is the same as ds ,
o f f set−w
and |d3 |. After defining virtual offset-wrist Po f f set−w0 , we D. The selection on proper joint as redundancy
can find the distance between Oc and Pb , d0Oc : Now we have derived two sets of equations based on
either joint 1 or joint 2 is redundant. Thus we are able to
6 = (Z06 + |d3 + d4 | sin θ2 )/ cos θ2
( w
Z0,θ2 =0 = Z0,θ 2 =0 select between both as proper redundancy parameter. Exam
0 q
2 (18) the structure of the arm, we find that choosing joint 2 as
d0o f f set−w = d06 − (d3 + d4 )2
r redundant joint is better when the arm is in the neighborhood
02 where the arm stretches vertically. On the other hand, choose
d0Oc = d0o f f set−w − Z0,θ
w
2 =0
2
(19) joint 1 as redundant joint is better when the arm stretches
0 in the front area. However, the method is just an intuitive
w
where Z0,θ 2 =0
is the radius of the circle and d0o f f set−w is the observation. Additionally, we can use augmented-Jacobian
distance from virtual offset-wrist to base. Next, we are able method proposed by Seraji [10] as well. For example, if we
to find value of joint 1 with the projection shown in Figure 8: take Po f f set−w as velocity reference point, the Jacobian matrix
d0Oc = Yw,Z0 =0 sin θ1 + Xw,Z0 =0 cos θ1 (20) of Po f f set−w augmented by redundant parameter θ1 is:
( h 4 4
iT
∂ Z04
sin θ1 and cos θ1 can be replaced with tan θ1
like the follow- Jo f f set−w,θ1 = ∂∂Xθ0 ∂Y 0 ∂ θ1
2 i ∂ θi ∂ θi ∂ θi (22)
ing equation shows: i = 1, 2, 3, 4
 θ
2 tan 21 similarly we are able to obtain Jw,θ2 . Thus, we can choose

 sin θ1 = θ

 1+tan 21
2
proper joint as redundant parameter by selecting the joint
(21) which has larger determinant of the augmented Jacobian
θ
1−tan2 21

matrix. However, it is tedious and time-consuming to find

 cos θ1 =

θ
1+tan2 21 such Jacobian matrix. We then discover that the displacement
then by rearranging (20) into a quadratic equation, such that of the elbow while performing automatic mode motion based
we can find two solutions of θ1 . We then check both of the on different redundant joint is larger when determinant of

519

Authorized licensed use limited to: Technische Hochschule Ingolstadt. Downloaded on August 10,2021 at 08:27:15 UTC from IEEE Xplore. Restrictions apply.
(a) (b)

(c) (d)

Fig. 9. Extreme postures of manipulator for the acceptable joint value. In (a), θ1 is redundant and in (b), θ2 is redundant, where the tip position and
orientation are specified by (23) and (24). In (c) θ1 is redundant and in (d) θ2 is redundant, where the tip position and orientation are specified by (25)
and (26)

the specified augmented Jacobian is smaller. This is not A. Verification of analytical inverse kinematic equation
coincidence, instead, it is because when the determinant of Assume the desired position of the end-effector is:
the augmented Jacobian is smaller, the range between maxi- d1 7
 T
mum and minimum acceptable value of specified redundant P0 = 0.1 −0.3 0.6 (23)
joint becomes smaller. The reason for making the range
 
0 0 −1
become smaller is that when specified redundant joint rotates d1 7
R0 =  0 1 0  (24)
a infinitesimal degree, the other joints rotates more so that 1 0 0
they approach the limit faster. Hence, the displacement of
we check both sets of equations where θ1 is treated as redun-
the elbow becomes larger.
dancy parameter and θ2 is treated as redundancy parameter.
IV. SIMULATIONS In Figure 9(a), the maximum value of θ1 is 40.57◦ while
the minimum value is −46.5◦ . In Figure 9(b), the maximum
To verify the correctness of the proposed equations, sim-
value of θ2 is 26.92◦ while the minimum value is −14.64◦ .
ulations are implemented as follows. The verification is
As shown in both Figure 9(a) and 9(b), it seems that we
implemented by applying the kinematic equations on the
get the same joint values at either limitation of joint 1 or
custom-made manipulator with offsets at shoulder and wrist.
joint 2, the range between limitation of joint 1 is different as
The arm can be seen at Figure 1. In addition, the coordinate
the counterpart of joint 2 value. Also, the automatic mode
construction is the same as shown in Figure 4. Though all
motion pattern for both of them are different. Figure 9(c) and
the joints can rotate 360◦ freely in most of the time, after
Figure 9(d) show the other desired position and orientation
concerning the environment, we should assume that there
which are listed in the following:
are limitations for every joints. The limitations are shown in T
d2 7

Table I. P0 = 0.85 −0.17 0.27 (25)

520

Authorized licensed use limited to: Technische Hochschule Ingolstadt. Downloaded on August 10,2021 at 08:27:15 UTC from IEEE Xplore. Restrictions apply.
redundant takes average 2.5[ms] on a Windows PC (Core i3
2100, 3.1GHz). Since the sampling time of the robot used
to verify the proposed equations is about 5[ms], it is quite
enough to use the equation to deal with trajectory generation.
Also, with two sets of analytical inverse kinematics solution,
programmers are allowed to use different one according to
which area the manipulator is in as the above paragragh
mentioned.
V. CONCLUSION
In this paper, we derive analytical inverse kinematic
(a) equations for 7-DoF redundant manipulators with offsets at
shoulder and wrist. It is implemented by applying fixed-joint
method with either joint 1 or joint 2 regarded as redundant
parameter. We verify the equation using a manipulator with
such offsets, which consists of modularized components.
In addition, we propose a method to select proper joint
as redundancy at different tip position and orientation, by
observing elbow displacement per degree when specified
redundant joint rotates. The method is verified by both simu-
lation and checking the determinant of augmented Jacobian.
The derived equations are verified with a modularized 7-
DoF manipulator with offsets at shoulder and wrist, which
consists of modularized link designed and developed in our
(b) laboratory.
R EFERENCES
Fig. 10. (a) shows the elbow displacement when doing self-motion
with different joint and the tip position and orientation are specified by [1] Anthony A.Maciejewski, and Charles A. Klein, ”Obstacle avoidance
(23) and (24), (25) and (26) respectively. (b) shows the determinant of for kinematically redundant manipulators in dynamical varying envi-
augmented Jacobian when performing self-motion with different joint and ronments,” The International Journal of Robotics Research, pp.109-
the tip position and orientation are specified by (23) and (24), (25) and (26) 116, April 1985
respectively. [2] J. Baillieul, ”Avoidance obstacles and resolving kinematic redun-
dancy,” IEEE International Conference on Robotics and Automation,
pp. 1698-1704, 1986
  [3] R. Stevenson, B. Shirinzadeh, and G. Alici, ”Singularity avoidance and
0.0171 0.9852 −0.1703 aspect maintenance in redundant manipulators,” IEEE International
d2 7
R0 =  −0.9815 −0.0159 −0.1909  (26) Conference on Control, Automation, robotics and Vision, vol. 2, pp.
−0.1908 0.1705 0.9667 857-862, Dec. 2002
[4] M. Shimizu, H. Kakuya, W. K.Yoon, K. Kitagaki, and K. Kosuge,
the major differences between d1 P07 and d2 P07 is that d2 P07 ”Analytical inverse kinematic computation for 7-DoF redundant ma-
nipulators with joint limits and its application to redundancy resolu-
is a point that makes the arm stretches vertically. When tion,” IEEE Transaction on Robotics, vol. 24, no. 5, Oct. 2008
a manipulator moves in this area, it is not suitable to set [5] H. Moradi and S. Lee,”Joint limit analysis and elbow move-
value of joint 1 as redundancy, compared with the value ment minimization for redundant manipulators using closed form
method,”Springer Advances in Intelligent Computing Lecture Notes
of joint 2 as redundancy. When the tip of the arm is at in Computer Science, vol. 3645, pp. 423-432, 2005
d1 P7 and the orientation is d1 R7 , the set of joint value
[6] C. Yu, M. Jin, and H. Liu,”An analytical solution for inverse kine-
0 0 T matic of 7-DoF redundant manipulators with offset-wrist,”IEEE In-
is 0 16.26 45.60 54.94 −10.54 0 106.26 as ternational Conference on Mechatronics and Automation, pp. 92-97,
joint 1 value is set to be 0. Then we investigate the elbow Chengdu, China, Aug., 2012
displacement and the determinant of augmented Jacobian [7] G. K. Singh and J. Claassens, ”An analytical solution for the inverse
kinematics of a redundant 7DoF manipulator with link offsets,”
when joint 1 is changed from 0 and joint 2 is changed from IEEE/RSJ International Conference on Intelligent Robots and Systems,
16.26 in a small range. So as the case when the tip of the arm Taipei, Taiwan, Oct. 18-22, 2010, pp.2976-2982
is at d2 P07 and the orientation is d2 R70 . The result is shown in [8] B. Tondu, ”A closed-form inverse kinematic modelling of a 7R
anthropomorphic upper limb based on a joint parametrization,” IEEE
Figure 10(a) and Figure 10(b). We verify that when elbow International Conference on Humanoids, Genova, Italy, Dec. 4-6,
displacement is larger, determinant of augmented Jacobian 2006, pp. 390-397
is smaller. The simulation result supports what we proposed [9] www.universal-robots.com, Universal Robots Inc., last accessed on the
21st Jan. 2014.
in section III-D. [10] H. Seraji, ”Configuration control of redundant manipulators: theory
and implementation,” IEEE Transactions on Robotics and Automation,
B. Computation Time vol. 5, no. 4, Aug., 1989
The computation time of the analytical inverse kinematics
which uses value of joint 1 as redundant takes average 657.0
[µs], while the counterpart which uses value of joint 2 as

521

Authorized licensed use limited to: Technische Hochschule Ingolstadt. Downloaded on August 10,2021 at 08:27:15 UTC from IEEE Xplore. Restrictions apply.

You might also like