Redundancy Parameterization and Inverse Kinematics of 7-DOF Revolute Manipulators
Redundancy Parameterization and Inverse Kinematics of 7-DOF Revolute Manipulators
Abstract
Seven degree-of-freedom (DOF) robot arms have one redundant DOF which does not change the translational or
arXiv:2307.13122v1 [cs.RO] 24 Jul 2023
rotational motion of the end effector. The redundant DOF offers greater manipulability of the arm configuration to
avoid obstacles and steer away from singularities, but it must be parameterized to fully specify the joint angles for a
given end effector pose. For 7-DOF revolute (7R) manipulators, we introduce a new concept of generalized shoulder-
elbow-wrist (SEW) angle, a generalization of the conventional SEW angle but with an arbitrary choice of the reference
direction function. The SEW angle is easy for human operators to visualize as a rotation of the elbow about the line
from the shoulder to the wrist and has been used in the teleoperation of space robot arms. Since the conventional
SEW angle formulation is prone to singularities, we introduce a special choice of the reference direction function
called the stereographic SEW angle which has a singularity in only one direction in the workspace. We prove that
such a singularity is unavoidable for any parameterization. We also include expressions for the SEW angle Jacobian
along with singularity analysis. Finally, we provide inverse kinematics solutions for most known 7R manipulators using
the general SEW angle and the subproblem decomposition method. These solutions are often closed-form but may
sometimes involve a 1D or 2D search. Inverse kinematics solutions, examples, and evaluations are available in a
publicly accessible repository.
Keywords
Kinematics, Redundant Robots, Industrial Robots, Space Robotics and Automation, Telerobotics and Teleoperation,
Humanoid Robot Systems
1 Introduction Ota 2023), avoid joint motion limits (Flacco, De Luca and
Khatib 2012), and avoid joint torque limits (Hollerbach and
Most industrial robot arms have six revolute joints to Suh 1987).
control the six degrees of freedom (DOF) of the robot To fully specify the pose of a 7R robot up to a
end effector pose, but a human arm has seven DOF: three finite number of solutions, the end effector pose must be
for the shoulder, one for the elbow, and three for the augmented by a secondary task. During pure self-motion,
wrist. Similarly, there are 7-DOF revolute (7R) robot arms the only difference between parameterizations would be the
such as the Robotics Research Corporation (RRC) arm rate of movement; differences between parameterizations
(Robotics Research Corporation 2005), Baxter (Rethink are made clearer during motion of the end effector.
Robotics 2015), Sawyer (Rethink Robotics 2022), Yumi Redundancy in human and many 7R robot arms may
(ABB 2022), and the Space Station Robot Manipulator be conveniently parameterized by the shoulder-elbow-
System (SSRMS) (Crane III, Duffy and Carnahan 1991). wrist (SEW) angle, sometimes called the elbow angle,
The extra redundant degree of freedom means that there is which characterizes the rotation of the plane containing
a continuum of arm configurations for a given hand or robot the shoulder, elbow, and wrist about the shoulder-wrist
end effector pose. Holding the end effector pose constant
while moving through the continuum of arm configurations,
called self-motion, commonly looks like the elbow rotating Department of Electrical, Computer, and Systems Engineering,
Rensselaer Polytechnic Institute, Troy, NY
around the line passing from the shoulder to the wrist
(Figure 1). Benefits of 7R arms over 6R arms include using Corresponding author:
redundancy to avoid singularities and obstacles (Hollerbach Alexander J. Elias, Rensselaer Polytechnic Institute, Troy, NY.
1985), optimize motion time (Chen, Zhang, Huang, Wu and Email: [email protected]
2
2.2 Related Literature Many papers provide inverse kinematics solutions using
the conventional SEW angle. Gong, Li and Zhang (2019);
The analysis and parameterization of the redundant degree
Tian, Xu and Zhan (2021); Faria, Ferreira, Erlhagen,
of freedom in 7R manipulators has been primarily
Monteiro and Bicho (2018) used the conventional SEW
driven by space robotics applications and more recently
angle to provide closed-form IK for 3R-R-3R arms. An,
motivated by industrial robots in manufacturing and
Clement and Reed (2014) found a closed-form IK solution
humanoid robots. Early papers focused on analyzing the
for 2R-2R-3R arms. Many papers used an iterative IK
geometry, topology, and differential kinematics of 7-DOF
method with an approximate closed-form solution as a
manipulators. Baillieul (1985) introduced the concept of
starting point: Wang, Zhao, Wang, Zhang, Li and Liu
the augmented Jacobian (termed the extended Jacobian)
(2021) for an R-2R-R-3R arm, and Ma, Xie, Jiang and Liu
and discussed the algorithmic singularity. Hollerbach
(2021) for a 2R-3R||-2R arm. (Zhao, Yang, Zhao, Yang and
(1985) discussed options for 7-DOF manipulator designs,
Zhao 2023) also found an iterative solution for an 2R-3R||-
including how adding an extra degree of freedom removes
2R. The paper states closed-form IK is not possible when
internal singularities. The paper discusses the self-motion
using SEW angle. However, (Jin, Liu, Wang and Liu 2020)
manifold and was one of the earliest papers to recommend
solved IK for a 2R-3R||-2R manipulator in closed form by
using the conventional SEW angle (with the reference
defining the SEW plane to be perpendicular to joint axes 3,
vector pointing up). Burdick and Seraji (1989) gave an
4, and 5.
overview of the topology of the self-motion manifold.
There are also applications of the conventional SEW
Kreutz-Delgado, Long and Seraji (1990, 1992) provided
angle not just to typical 7-DOF robots, but also to human
a detailed analysis of the conventional SEW angle with
arms and wearable robots (Kim, Miller, Al-Refai, Brand
application to 3R-R-3R arms and the RRC arm, which
and Rosen 2011; Kim, Miller, Byl, Abrams and Rosen
has no intersecting joint axes. They also provided the
2012; Li, Roldan, Milutinović and Rosen 2013; Wang
expression for the SEW Jacobian and singularity analysis.
2013; Liu, Chen and Steil 2017; Su, Enayati, Vantadori,
There have been several other proposed redundancy Spinoglio, Ferrigno and De Momi 2018; Wang, Peng,
parameterizations besides the conventional SEW angle. Hou, Li, Luo, Chen and Wang 2019; Li, Han, He, Li,
Yan, Mu and Xu (2014) attempted to address the singularity Liu and Xiong 2022). The conventional SEW angle can
issue of the conventional SEW angle by proposing a method also be used to help with redundancy resolution. Lamperti,
which picks two different reference vectors and switches Zanchettin and Rocco (2015) used conventional SEW angle
between the corresponding SEW angles when one of them to propose a human-like redundancy resolution method.
encounters a singularity. The resulting parameterization Xiong, Zhou and Yao (2020) used the conventional SEW
is non-smooth, and singularities would still be present. angle to parameterize the redundant degree of freedom
Shimizu, Yoon and Kitagaki (2007) used the SEW angle for null-space impedance control. Algorithmic singularities
where the reference plane is formed by the elbow when remain an issue in these methods and would need to be
joint three is zero. They explained the reference plane is avoided. They are not explicitly addressed in these papers.
undefined in a shoulder or elbow singularity, so there is no
benefit in terms of singularity existence as compared to the
2.3 Robot Kinematics
conventional SEW angle.
One can also parameterize the redundant DOF by We use the coordinate-free notation shown in Table 1.
choosing one joint angle and reducing the problem to the Vector p⃗ represented in frame Ea is the R3 vector pa = Ea∗ p⃗,
IK of a non-redundant 6R manipulator, but this introduces where
⃗ex ·
singularities resulting from the equivalent 6R robot. Xu,
Ea∗ = ⃗ey · (1)
She and Xu (2014) found the inverse kinematics for a
⃗ez ·
2R-3R||-2R arm by parameterizing the redundant degree
of freedom with any joint angle. Jiang, Huo, Liu and is the adjoint of Ea . Frame Eb represented in frame Ea is the
Liu (2013) found the R-R-3R-2R arm IK solution by SO(3) matrix Rab = Ea∗ Eb . Rotation R(⃗h, θ) in frame Ea is
×
parameterizing joint 1. An, Clement and Reed (2014) found the SO(3) matrix R(ha , θ) = eha θ , where (·)× is the 3 × 3
the IK solution for a 2R-2R-3R arm by parameterizing skew-symmetric matrix representation of the cross product:
joint 1. Tondu (2006) found IK for a 3R-R-3R arm by
parameterizing joint 1, and Pfurner (2016) found the IK for 0 −hz hy
a 3R-R-3R arm by parameterizing joint 2 or 3. Nammoto h× := hz 0 −hx . (2)
and Kosuge (2012) found the IK solutions for an R-R-3R- −hy hx 0
2R arm parameterized by joint 1. Sinha and Chakraborty
2
(2019) found a 1D search-based IK for R-2R-2R-2R arms For a unit vector h, −h× = −h× h× = I − hhT is the
parameterized by joint 1. projector onto the orthogonal complement of h.
4
Table 1. Nomenclature.
Coordinate-Free Notation
O Point in Euclidean space.
p
⃗ Vector in Euclidean space.
E Orthonormal frame, = [⃗ex ⃗ey ⃗ez ].
R(⃗h, θ) Rotation operator about ⃗h over angle θ.
Robot Kinematics
OS Shoulder.
OE Elbow.
OW Wrist.
OC Projection of elbow on shoulder-wrist line.
J End effector Jacobian.
JE Elbow Jacobian.
JW Wrist Jacobian.
General SEW Angle Figure 2. General 7R robot arm with example shoulder,
elbow, and wrist points OS , OE , and OW fixed in E0 , E3 , and
kSEW = p×
SW pSE . E7 , respectively. In general, these points may be placed
nSEW = kSEW / ∥kSEW ∥. SEW plane normal. anywhere in the kinematic chain.
ψ SEW angle.
ex =fx (pSW ) Reference direction function.
(ex , ey , eSW ) SEW angle coordinate frame.
Define three points OS , OE , and OW to represent the
Jfx Reference direction Jacobian w.r.t. pSW .
Jψ SEW angle Jacobian.
robot shoulder, elbow, and wrist, respectively. The location
JA Augmented Jacobian. for these points are arbitrary, but different choices will
lead to different inverse kinematics methods and different
Conventional SEW Angle
singularity structures. For easier inverse kinematics, OS
er Arbitrary unit reference vector. should be constant in the base frame and OW should be
ky = p×
SW er , meaning ey = ky / ∥ky ∥. constant in the 7 frame (which also means it is constant
Stereographic SEW Angle in the tool frame). OE must be placed somewhere in
et Unit translation vector. the kinematic chain such that it rotates around the line
krt = (eSW − et )× er . passing through OS and OW as the robot moves through its
kx ×
= krt pSW , meaning ex = kx / ∥kx ∥. redundant degree of freedom while keeping the end effector
pose constant. For many robots, a good choice is to make
OE constant in frame E3 or E4 . In this paper, we will
Consider a 7R robot as shown in Figure 2 with joint use E3 for illustration. Representing these points in their
angles q = [q1 q2 · · · q7 ]T . We will use the product respective constant frames, we have constant vectors p0S ,
of exponentials approach to describe the arm kinematics. p3E , and p7W . For a given pose, we can find pSE , pSW ,
Denote the base frame and base frame origin as (E0 , O0 ) and pSW , which are p⃗SE , p⃗SW , and p⃗SW represented in E0 .
and the end effector task frame and task frame origin as The shoulder-wrist vector is
(ET , OT ). Choose the link frame origins Oi along each unit
joint axis ⃗hi . Let p⃗ij be the vector from Oi to Oj . Define the pSW = p0T − R07 p7T + R07 p7W − p0S , (4)
ith frame Ei = R(⃗hi , qi )Ei−1 . Then the forward kinematics
and the shoulder-elbow vector is
of the task frame represented in the base frame is
R0T = R01 R12 R23 R34 R45 R56 R67 R7T (3a) pSE = p01 + R01 p12 + R02 p23 + R03 p3E − p0S . (5)
p0T = p01 + R01 p12 + R02 p23 + R03 p34 It is often helpful for the inverse kinematics solution to set
(3b)
+ R04 p45 + R05 p56 + R06 p67 + R07 p7T the shoulder, elbow, or wrist offset vector to 0 so that OS ,
OE , or OW is coincident with the link frame origin.
where Rij = Ri,i+1 · · · Rj−1,j , hi and pi−1,i are constant On some robots, such as those with three consecutive
R3 vectors representing ⃗hi and p⃗i−1,i in Ei−1 , Ri−1,i = parallel axes, it may be helpful to define the shoulder-
×
ehi qi is R(⃗hi , qi ) represented in Ei−1 , R7T is a constant elbow vector pSE to be a unit vector eSE which is equal
SO(3) matrix for the fixed wrist-tool transform, and p7T is to one of the joint axes represented in the base frame. For
the constant tool offset in the 7 frame. The constant vectors example, we may pick pSE = eSE = R02 h3 . Since three
hi , pi−1,i , p7T and constant transform R7T are obtained by parallel joint axes are the limit of three intersecting axes
putting the arm in the zero configuration q = 0. where the point of intersection moves infinitely far away,
Elias and Wen 5
Subproblem 1 (Elias and Wen 2022) may be used to solve Since we have
the forward kinematics for the SEW angle, which is ψ̇ = Jψ q̇ (15)
able to parameterize this degree of freedom. At boundary is only one choice for elbow position per IK branch due
singularities, e.g., when two links are collinear, the null to boundary singularities. This reduces the total number
space of J is not tangent to the self-motion manifold, of singularities in the workspace. In the case of a 2R-2R-
and self-motion is only instantaneous. In some cases, the 3R robot, placing the shoulder, elbow, and wrist at the
entire null space of J causes only instantaneous rather joint intersections means that SEW angle is undefined when
than continuous self-motion, and the self-motion manifold the robot has no self-motion of the elbow to parameterize
degenerates into a point: The self-motion manifold is zero- anyway.
dimensional and any parameterization for the redundant The condition of Jψ losing rank, meaning Jψ = 0, may
degree of freedom is unnecessary because for each inverse occur for a general parameterization of the redundant
kinematics branch there is only one choice for ψ. degree of freedom, but for most reasonable choices of
For all conditions other than the kinematic singularity, placement of OS , OE , and OW , this condition will not
we call them algorithmic singularities as they occur not occur for the SEW angle. Choi, Oh, Oh, Park and Chung
because of the robot itself but because of the algorithms we (2004) called this case the secondary task singularity.
use to parameterize the redundancy. Many authors (Kreutz-
Delgado, Long and Seraji 1990; Chiaverini 1997; Marani, 3.3 Conventional SEW Angle
Kim, Yuh and Chung 2003) have defined algorithmic
−1 The conventional SEW angle, shown in Figure 5(a), is a
singularities to occur when JA does not exist and
widely used parameterization. Kreutz-Delgado, Long and
J and Jψ are separately full rank. However, as in
Seraji (1990) were the first to provide detailed analysis of
Wang and Kazerounian (1995); Faria, Ferreira, Erlhagen,
the conventional SEW angle, but the idea was described
Monteiro and Bicho (2018), we generalize the definition of
earlier by Hollerbach (1985).
algorithmic singularity to include cases where Jψ may not
Let er be an arbitrary unit reference vector. For the
be full rank (i.e., may be a zero vector) or may not exist.
conventional SEW angle, we define the reference direction
One type of algorithmic singularity is when JA loses function fx as
rank, which is possible even when J and Jψ are full rank.
We call this the augmentation singularity, as it occurs only ex = fx (pSW ) = e×
y eSW , (20a)
when end effector and SEW angle rates are considered
ky
simultaneously. Algebraically, this singularity occurs when ey = , (20b)
Jψ is linearly dependant with the rows of J. Geometrically, ∥ky ∥
this means self-motion does not cause a change in SEW ky = p ×
SW er . (20c)
angle.
2
−1
The second type of algorithmic singularity is when JA Equivalently, ex = fx (pSW ) is the normalized −e× SW er , so
does not exist because Jψ does not exist, which we call ex is the unit vector orthogonal to eSW closest to er .
the SEW angle singularity. There are two cases for the The conventional SEW angle is intuitive to understand.
SEW angle singularity. The first case, called the collinear ψ = 0 corresponds to eCE pointing as much towards er
singularity, happens when OS , OE , and OW are collinear, as possible. This is similar to navigating on a globe using
which causes pSW = 0 or pCE = 0. The second case, cardinal directions where er provides the north direction
called the coordinate singularity, is when Jψ does not exist and the SEW angle is measured from north.
because Jfx does not exist. In fact, in section 4, we show The conventional SEW angle becomes undefined and
that for any choice of fx (pSW ) there will always be choices a coordinate singularity occurs when ky = p× SW er = 0,
of pSW that causes singularities in Jfx . which occurs when pSW is collinear with er . In this case.
Given that the collinear singularity is unavoidable for all possible choices of eCE are equally close to er . This
some robots, it can be beneficial to place OS , OE , and OW is akin to being on the north or south pole of a globe
such that the SEW angle is undefined exactly when there where there is no north direction and cardinal directions are
8
eTx eT eTSW er T
k̇y = x e× r ṗSW = e ṗSW . (24)
∥ky ∥ ∥ky ∥ ∥ky ∥ y
4 Existence of Singularity
Hollerbach (1985) showed any revolute manipulator will
have internal singularities associated with end effector
orientation because it is always possible to find a pose with
all joints lying in the same plane. Gottlieb (1986) used
topology to arrive at the same conclusion: Every smooth
map T n → SO(3) must have singularities. Furthermore, he
(a) Conventional SEW angle. (b) Stereographic SEW angle. showed it is impossible to construct a smooth left-inverse
of a mapping T 4 → SO(3), so there is no singularity-free
Figure 6. Grid representing (ex , ey ) for any choice of eSW
(top), and cylinder representing locations for OW where the function to map from orientation to joint angles in a 4R
robot is at or near a coordinate singularity. (a) The joint. (However, it is possible to always find joint angles to
conventional SEW angle has two singularities of order one, follow a given trajectory while avoiding singularities, but
and the coordinate axes are lines of latitude and longitude. this does not follow a function and so will not be cyclical.)
This results in a bidirectional singularity region in task space. In this section, we will show for a 7-DOF revolute
(b) The stereographic SEW angle has a single singularity of arm with a sufficiently large workspace, e.g., a 3R-R-3R
order 2, which results in a unidirectional singularity region.
robot with orthogonal consecutive joints, and a task space
augmented by any parameterization of the redundant degree
of freedom, e.g., the SEW angle, there will always be an
undefined. If the shoulder is constant in the base frame, then algorithmic singularity.
this singularity occurs when the wrist is on the line spanned The so-called Hairy Ball Theorem (McGrath 2016) states
by er passing through the wrist, as shown in Figure 6(a). that a continuous vector field on a sphere must have at
Elias and Wen 9
choose ϕ to be the arm angle where ex corresponds to eCE which may be solved using
when q3 = 0 and the robot has a spherical wrist, then the
×
singularity occurs when eSW = ±h1 . ψ = atan2(eTSW krt T
kSEW , kSEW krt ). (28)
Another common parameterization choice is ϕ(q) = q1 .
In this case if the robot has a spherical wrist then the Using the elbow definition, we may equivalently write
singularity occurs when eSW = ±R01 h2 . T
ψ = atan2(krt ×
pCE , −eTSW krt pCE ). (29)
The Poincaré–Hopf theorem (Poincaré 1885; Hopf 1927)
implies that not only must there be a singularity on the For any (er , et ) with nonzero er we can always pick a
sphere, but the total order of singularities must be two. For new (ẽr , ẽt ) such that eTr et = 1 and ∥er ∥ = 1 where the
10
DOF for er does not change the behavior of the SEW angle;
it only changes the angle by a constant. Changing the angle
of er around et is equivalent to changing the SEW angle ψ Figure 9. ex,i is tangent to the circle generated from the plane
by the same angle. through et , et + er,i and eSW . The angles of intersections of
Since stereographic projection is a conformal mapping, any two circles on a sphere are equal. Therefore, α = β .
changes of angles in the projection plane get preserved after
projecting onto the unit sphere. This means changing the Although a singularity of order two would result in
angle of er on the projection plane corresponds to an equal larger elbow motion than a singularity of order one for a
change of angle to ex and ey . fixed SEW angle as eSW passes close to et , large motion
We can also prove this preservation of angles property disappears if eSW passes directly through et in a smooth
directly (Figure 9). First, set er = er,1 , which results in path. As a path gets closer to the singularity, ex gets closer
ex,1 . This vector is tangent to the circle which is tangent to making a full revolution of 2π radians. At the limit, the
to er,1 and is passing through eSW and et . Now, pick a new elbow rotates by exactly 2π, which is equivalent to not
er = er,2 which is er,1 rotated by an angle α about −et . rotating at all. We can compare this to the conventional
This generates ex,2 which is tangent to the circle passing SEW angle, where passing through the singularity in a
through eSW and et but tangent to er,2 . The angle from ex,1 smooth path causes ex to rotate by π radians.
to ex,2 about eSW is an angle β. The angles of intersection
of any two circles on a sphere are equal, so α = β. 5.5 Example
The preservation of angles property can aid in analyzing
Two joint trajectories were generated for a KUKA LBR
the behavior of SEW angle when only q1 changes in the
iiwa 14 R820 robot (KUKA 2022) with constants R07 = I
typical case of et = −h1 , which occurs when the first joint
and ψ = π/4: One using the conventional SEW angle with
of the robot is pointing up and the singularity direction is
er = [0 0 1]T , and the other using the stereographic SEW
chosen to point down. In this case, the when q1 changes but
angle with et = [0 0 −1]T and er = [0 1 0]T . The task-
all other joint angles are held constant, ψ changes at the
space trajectory for p0T took a straight-line path through
same rate. This means the first element of Jψ is always 1.
4 points, with x = ±0.40 m, y = 0.01 m, and z = 0.36 ±
We can compare this to the conventional SEW angle 0.40 m. There was a small offset in the y direction as
where er = h1 . In this case, the SEW angle does not change otherwise there would not be any large joint motion for the
when only q1 changes. (The conventional SEW angle has stereographic SEW angle. For each trajectory, the initial
rotational invariance about er .) This means the first element pose was picked such that q2 > 0, q4 > 0, and q6 > 0.
of Jψ is always 0. Results are shown in Figure 10.
For the conventional SEW angle, the singularities occur
near eSW = ±[0 0 1]T . In following the trajectory with the
5.4 Singularity Behavior
conventional SEW angle, there were large joint motions in
The singularity for the stereographic SEW angle is of order two places, each corresponding to the positive and negative
two. This means that if eSW travels in a small circle around direction.
et , ex rotates twice for each rotation of eSW . This is unlike For the stereographic SEW angle, the singularity only
the conventional SEW angle, where each singularity is of occurs near eSW = [0 0 −1]T . We see that the large joint
order one. motion only occurred at one time in the trajectory. The
12
immediately calculated:
2 T
R07 = R0T R7T = R01 R12 R23 R34 R45 R56 R67 , (40a)
Table 3. Kinematic families of robots with IK solutions demonstrated in this paper. The Motoman SIA50D appears as two
examples since one robot may be part of multiple kinematic families.
IK Type Kinematic Family Robot Example
Closed-Form 1. 2R-2R-3R FREND (Debus and Dougherty 2009)
KUKA LBR iiwa 14 R820 (KUKA 2022)
2. 3R-R-3R Motoman SIA5D (Yaskawa 2022b)
3. R-R-3RE -2R Motoman SIA50D (Yaskawa 2022a)
4. 2R-3R-2R
5. 2R-3R||-2R SSRMS (Crane III, Duffy and Carnahan 1991)
SPDM (Mukherji, Ray, Stieber and Lymer 2001)
ERA (Boumans and Heemskerk 1998)
6. R-R-3R||E -2R
1D Search 7. R-2R-2RE -2R Sawyer (Rethink Robotics 2022)
Baxter (Rethink Robotics 2015)
OSAM-2 (Motiv Space Systems 2022)
OB7 (Productive Robots 2023)
8. 3R-RE -2R-R Franka Production 3 (Franka Emika 2022)
xArm7 (Ufactory 2022)
9. R-2RS -R-3R Motoman SIA50D (Yaskawa 2022a)
2D Search 10. General 7-DOF ABB Yumi (ABB 2022)
RRC (Robotics Research Corporation 2005)
θS ∈ [0, π] and θW ∈ [−π, 0]. A singularity occurs when Then, solve for q7 using Subproblem 1:
θS = 0 or θW = 0, as this corresponds to the shoulder,
R67 p = R65 R54 R47 p, (46)
elbow, and wrist being collinear.
A number of inverse kinematics solutions are provided where p is any vector not collinear with h7 .
below, and the different kinematic families, along with In the following IK solutions, always pick the origins of
examples of specific robots for some types, are shown in intersecting axes for that kinematic family to be coincident.
Table 3 and Figure 11. There exist many other kinematic For example, in a 3R-R-3R robot, pick O1 = O2 = O3 =
families, but we include enough examples to demonstrate OS , which means p12 = p23 = p0S = 0. When an elbow
the technique of applying the subproblem decomposition is made of parallel joints (say, that include joint 3), pick
method to solve the inverse kinematics problem. The reader pSE = eSE = R02 h3 .
is referred to the discussions in Elias and Wen (2022)
for information regarding handling multiple branches, 6.2 IK Solutions
extraneous solutions, least-squares solutions, 1D and 2D
6.2.1 2R-2R-3R Arm
searches, and internal and boundary singularities.
Closed-form solutions may exist when a robot has 3R or The position equation becomes
3R|| joints, as a 3R joint may result in decoupling between p07 = pSW = R02 (p23 + R24 p45 ), (47)
position and orientation, and a 3R|| joint is the limit of a 3R
joint as the point of intersection moves infinitely far away. and given θS we have
(It only makes sense to place OE infinitely far away, as R02 p23 = R(nSEW , θS )eSW ∥p23 ∥ . (48)
placing OS or OW infinitely far away results in eSW being
a constant vector in the base or end effector frame.) In other Use Subproblem 3 to find θS ∈ [0, π]:
cases, the solution requires a 1D or 2D search over qi , θS ,
∥R(nSEW , θS )eSW ∥p23 ∥ − p07 ∥ = ∥p45 ∥ . (49)
or θW .
A common step in the IK solutions below is to solve the Find (q1 , q2 ) using Subproblem 2:
orientation of a 3R joint. To solve such a spherical joint
R12 p23 = R10 R(nSEW , θS )eSW ∥p23 ∥ . (50)
(shown here at the robot wrist)
Similarly, find (q3 , q4 ) using Subproblem 2:
R45 R56 R67 = R47 , (44)
R32 (R21 R10 p07 − p24 ) = R34 p45 . (51)
first solve for (q5 , q6 ) using Subproblem 2 Finally, find (q5 , q6 , q7 ) by solving the spherical wrist:
R56 h7 = R54 R47 h7 . (45) R45 R56 R67 = (R01 R12 R23 R34 )T R07 . (52)
14
7. R-2R-2RE -2R. 8. 3R-RE -2R-R. 9. R-2RS -R-3R. ∥R(nSEW , θS )eSW ∥p23 ∥ − p07 ∥ = ∥p56 ∥ . (63)
Figure 11. Examples of robots in kinematic families with Find (q1 , q2 ) with Subproblem 2 to solve (50). Similarly,
closed-form and 1D search solutions. find (q6 , q7 ):
T
R67 R07 (p07 − R02 p23 ) = R65 p56 . (64)
6.2.2 3R-R-3R Arm
The position equation becomes Find (q3 , q4 , q5 ) by solving (62).
p07 = pSW = R03 (p34 + R34 p45 ). (53) 6.2.5 2R-3R||-2R Arm
Solve for up to two solutions of q4 using Subproblem 3: This robot is the limit of a 2R-3R-2R arm where the
intersection point of the elbow joint moves to infinity. We
∥R34 p45 + p34 ∥ = ∥p07 ∥ . (54) can write
Represent R03 as three consecutive orthogonal rotations: R01 R12 h3 = R(nSEW , θS )eSW . (65)
R03 = R(eSW , θa )R(nSEW , θb )R(eSW , θc ). (55)
Combining with the position equation gives
There are up to two solutions for (θa , θb , θc ), but they
represent the same R03 , so only keep one solution. Solve hT3 (p23 + p34 + p45 + p56 ) = hT3 R02
T
p07 . (66)
for (θb , θc ) using Subproblem 2:
Solve for θS ∈ [0, π] using Subproblem 4:
T
R(nSEW , θb ) p07 = R(eSW , θc )(p34 + R34 p45 ). (56)
eTSW R(nSEW , θS )T p07 = hT3 (p23 + p34 + p45 + p56 ).
Then, use Subproblem 4 to find θa , keeping only the (67)
solutions that place the elbow in the correct half plane: Find (q1 , q2 ) using Subproblem 2:
nTSEW R(eSW , θa )R(nSEW , θb )R(eSW , θc )p3E = 0. (57) R12 h3 = R10 R(nSEW , θS )eSW . (68)
Elias and Wen 15
R23 (p34 + R34 p45 ) (a) θW = −1.0371. (b) θW = −1.0166. (c) θW = −0.9797.
T
= R02 p07 − R21 p12 − p23 − R25 p56 . (74)
R45 p56 = R43 (R32 R21 (R10 p07 − p12 ) − p34 ). (78) Search over θW ∈ [−π, 0] to find all solutions of e(θW ) =
0. For each solution θW , calculate q6 and q7 using
The error is a metric of solvability of Subproblem 1:
T T
R56 R67 = R05 R07 . (79) R56 h7 = R05 R07 h7 , (81)
16
T
R76 h6 = R07 R05 h6 . (82) 6.3 Least-Squares Inverse Kinematics
A Sawyer arm example is shown in Figures 12 and 13. Any IK solution which only uses Subproblems 1–4 is robust
to boundary singularities if the least-squares solutions for
6.2.8 3R-RE -2R-R Arm (1D Search) these subproblems is used, as discussed in Elias and Wen
Given θS ∈ [0, π], we have (2022). For some special cases, the IK solution is also the
solution to the global least-squares IK problem, which is
R03 p34 = R(nSEW , θS )eSW ∥p34 ∥ . (83) posed as
Then use Subproblem 3 to find q7 from
T min p0T (q) − pdes
0T
R07 (p07 − R03 p34 ) − R76 p67 = ∥p45 ∥ . (84) q
(95)
des
Solve (q5 , q6 ) using Subproblem 2: s.t. R0T (q) = R0T , ψ(q) = ψ des
T
R54 p45 = R56 (R67 R07 (p07 − R03 p34 ) − p67 ). (85) where (R0T des des
, p0T , ψ des ) is the desired end effector
We have the identity pose and SEW angle. For some robots, the ψ(q) =
T ψ des constraint cannot be achieved when at a boundary
R43 p34 = R47 R07 R03 p34 , (86)
singularity because the self-motion manifold degenerates
which may be expressed as an error function in terms of θS : to a point, and so this constraint must be dropped when
e(θS ) = hT4 (p34 − R47 R07
T
R03 p34 ). (87) p0T (q) ̸= pdes
0T .
3R-R-3R, 2R-3R-2R, and 2R-2R-3R arms can all achieve
Search over θS ∈ [0, π] to find the zeros of this error. For least-squares inverse kinematics if the task frame is at
each solution θS , find q4 with Subproblem 1, then find the wrist center (p7T = 0), all 2R joints have a spherical
(q1 , q2 , q3 ) by solving the spherical shoulder: workspace (hTi hi+1 = hTi+1 pi+1,i+2 = 0) and all 3R joints
R01 R12 R23 = R07 (R34 R45 R56 R67 )T . (88) can achieve any orientation (hTi hi+1 = hTi+1 hi+2 = 0).
For a 3R-R-3R arm, since rotation of the whole arm
6.2.9 R-2RS -R-3R Arm (1D Search) is always possible between the spherical shoulder and
wrist, the self-motion manifold does not degenerate to a
Given q1 ∈ [−π, π], solve for q4 using Subproblem 3:
point at boundary singularities. Therefore, OE should be
∥p34 + R34 p45 ∥ = ∥R10 p07 − p12 ∥ . (89) placed such that it is not collinear with OS and OW at
Solve for (q2 , q3 ) using Subproblem 2: the workspace boundary. (Using pSE = eSE = R03 h4 may
also be a good option.)
R21 (R10 p07 − p12 ) = R23 (p34 + R34 p45 ). (90) For 2R-3R-2R and 2R-2R-3R arms, the robot’s self-
Find the shoulder-elbow vector pSE = R03 p34 , from which motion manifold degenerates into a point at boundary
we can calculate the error for ψ in terms of q1 . A plot of singularities, so although the SEW angle will be undefined
this error is a good graphical tool to determine what range at the boundary singularity, the SEW angle is not needed.
of SEW angle is feasible for a given end effector pose. For This also means the SEW angle constraint in (95) must be
each solution q1 , find (q5 , q6 , q7 ) by solving (52). dropped.
We have also used the subproblem decomposition Crane III CD, Duffy J and Carnahan T (1991) A kinematic
method to provide IK solutions for most known 7R robots. analysis of the space station remote manipulator system
These solutions are often closed-form and may sometimes (SSRMS). Journal of Robotic Systems 8(5): 637–658.
require a 1D or 2D search. This method finds all IK Debus T and Dougherty S (2009) Overview and performance
solutions and finds least-squares solutions for some robots of the front-end robotics enabling near-term demonstration
as well. We provide IK solutions for both common robots (FREND) robotic arm. In: AIAA Infotech@Aerospace
as well as robots which do not seem to be manufactured yet, Conference and AIAA Unmanned...Unlimited Conference. p.
such as a R-R-3R||-2R arm. 1870.
There exist other 7R robots which may have similar Elias AJ and Wen JT (2022) Canonical subproblems for robot
solutions to the ones provided above. It may be worthwhile inverse kinematics. arXiv preprint arXiv:2211.05737 .
to find a closed-form or polynomial root-finding IK solution FANUC (2022) FANUC R-1000iA/120F-7B robot.
to the robots which are solved in this paper using a 1D or https://www.fanucamerica.com/
2D search. products/robots/series/r-1000ia/
r-1000ia-120f-7b-7-axis-robot. (accessed
Declaration of conflicting interests Dec. 21, 2022).
The authors declare that there is no conflict of interest. Faria C, Ferreira F, Erlhagen W, Monteiro S and Bicho E (2018)
Position-based kinematics for 7-DoF serial manipulators
with global configuration control, joint limit and singularity
Funding
avoidance. Mechanism and Machine Theory 121: 317–334.
The author(s) received no financial support for the research, Flacco F, De Luca A and Khatib O (2012) Motion control of
authorship, and/or publication of this article. redundant robots under joint constraints: Saturation in the null
space. In: 2012 IEEE International Conference on Robotics
References and Automation. IEEE, pp. 285–292.
Franka Emika (2022) Franka production 3. https://www.
ABB (2022) IRB 14000 YuMi - collaborative robot. franka.de/production. (accessed Dec. 21, 2022).
https://new.abb.com/products/robotics/
Gong M, Li X and Zhang L (2019) Analytical inverse
collaborative-robots/yumi/irb-14000-yumi.
kinematics and self-motion application for 7-DOF redundant
(accessed Oct. 31, 2022).
manipulator. IEEE Access 7: 18662–18674.
An HH, Clement WI and Reed B (2014) Analytical inverse
Gottlieb DH (1986) Robots and fibre bundles. Bull. Soc. Math.
kinematic solution with self-motion constraint for the 7-
Belg 38: 219–223.
DOF restore robot arm. In: 2014 IEEE/ASME International
Hollerbach J and Suh K (1987) Redundancy resolution of
Conference on Advanced Intelligent Mechatronics. IEEE, pp.
manipulators through torque optimization. IEEE Journal on
1325–1330.
Robotics and Automation 3(4): 308–316.
Baillieul J (1985) Kinematic programming alternatives for
Hollerbach JM (1985) Optimum kinematic design for a seven
redundant manipulators. In: Proceedings. 1985 IEEE
degree of freedom manipulator. In: Robotics research: The
International Conference on Robotics and Automation,
second international symposium. Citeseer, pp. 215–222.
volume 2. IEEE, pp. 722–728.
Hopf H (1927) Vektorfelder inn-dimensionalen
Boumans R and Heemskerk C (1998) The European robotic arm
mannigfaltigkeiten. Mathematische Annalen 96(1): 225–249.
for the international space station. Robotics and Autonomous
Jiang L, Huo X, Liu Y and Liu H (2013) An integrated inverse
systems 23(1-2): 17–27.
kinematic approach for the 7-DOF humanoid arm with offset
Burdick J and Seraji H (1989) Characterization and control of self-
wrist. In: 2013 IEEE International Conference on Robotics
motions in redundant manipulators. In: Proceedings of the
and Biomimetics (ROBIO). IEEE, pp. 2737–2742.
NASA Conference on Space Telerobotics, Volume 2. pp. 3–14.
Jin M, Liu Q, Wang B and Liu H (2020) An efficient and accurate
Chen Y, Zhang X, Huang Y, Wu Y and Ota J (2023) Kinematics
inverse kinematics for 7-DOF redundant manipulators based
optimization of a novel 7-DOF redundant manipulator.
on a hybrid of analytical and numerical method. IEEE Access
Robotics and Autonomous Systems 163: 104377.
8: 16316–16330.
Chiaverini S (1997) Singularity-robust task-priority redundancy
Kim H, Miller LM, Al-Refai A, Brand M and Rosen J (2011)
resolution for real-time kinematic control of robot manipu-
Redundancy resolution of a human arm for controlling a seven
lators. IEEE Transactions on Robotics and Automation 13(3):
DOF wearable robotic system. In: 2011 Annual International
398–410.
Conference of the IEEE Engineering in Medicine and Biology
Choi Y, Oh Y, Oh SR, Park J and Chung WK (2004) Multiple tasks
Society. IEEE, pp. 3471–3474.
manipulation for a robotic manipulator. Advanced Robotics
18(6): 637–653.
18
Kim H, Miller LM, Byl N, Abrams GM and Rosen J (2012) Mukherji R, Ray DA, Stieber M and Lymer J (2001) Special
Redundancy resolution of the human arm and an upper limb purpose dexterous manipulator (SPDM) advanced control
exoskeleton. IEEE Transactions on Biomedical Engineering features and development test results. Proceedings of the 6th
59(6): 1770–1779. International Symposium on Artificial Intelligence, Robotics
Kreutz-Delgado K, Long M and Seraji H (1990) Kinematic and Automation in Space (i-SAIRAS) .
analysis of 7 DOF anthropomorphic arms. In: Proceedings., Nammoto T and Kosuge K (2012) An analytical solution for
IEEE International Conference on Robotics and Automation. a redundant manipulator with seven degrees of freedom.
IEEE, pp. 824–830. International Journal of Automation and Smart Technology
Kreutz-Delgado K, Long M and Seraji H (1992) Kinematic 2(4): 339–346.
analysis of 7-DOF manipulators. The International Journal Needham T (1997) Visual complex analysis. Oxford University
of Robotics Research 11(5): 469–481. Press.
KUKA (2022) LBR iiwa. https://www.kuka. Pfurner M (2016) Closed form inverse kinematics solution for
com/en-us/products/robotics-systems/ a redundant anthropomorphic robot arm. Computer Aided
industrial-robots/lbr-iiwa. (accessed Oct. 31, Geometric Design 47: 163–171.
2022). Pieper DL (1969) The kinematics of manipulators under computer
Lamperti C, Zanchettin AM and Rocco P (2015) A redundancy control. Stanford University.
resolution method for an anthropomorphic dual-arm manipu- Poincaré H (1885) Sur les courbes définies par les équations
lator based on a musculoskeletal criterion. In: 2015 IEEE/RSJ différentielles. J. Math. Pures Appl. 4: 167–244.
International Conference on Intelligent Robots and Systems Productive Robots (2023) OB7 collaborative robots. https://
(IROS). IEEE, pp. 1846–1851. www.productiverobotics.com/ob7-products/.
Li S, Han K, He P, Li Z, Liu Y and Xiong Y (2022) Human- (accessed Jun. 21, 2023).
like redundancy resolution: An integrated inverse kinematics Rethink Robotics (2015) Baxter overview. https://sdk.
scheme for anthropomorphic manipulators with radial elbow rethinkrobotics.com/wiki/Baxter_Overview.
offset. Advanced Engineering Informatics 54: 101812. (accessed Dec. 21, 2022).
Li Z, Roldan JR, Milutinović D and Rosen J (2013) The rotational Rethink Robotics (2022) Sawyer, the high performance collabo-
axis approach for resolving the kinematic redundancy of rative robot. https://www.rethinkrobotics.com/
the human arm in reaching movements. In: 2013 35th sawyer. (accessed Dec. 21, 2022).
Annual International Conference of the IEEE Engineering Robotics Research Corporation (2005) Dexterous manipulators
in Medicine and Biology Society (EMBC). IEEE, pp. 2507– and advanced control systems. Technical report,
2510. Robotics Research Corporation. URL http://www.
Liu W, Chen D and Steil J (2017) Analytical inverse kinematics robotics-research.com/RRCTechDoc.PDF.
solver for anthropomorphic 7-DOF redundant manipulators Accessed Oct. 31, 2022.
with human-like configuration constraints. Journal of Shi X, Guo Y, Chen X, Chen Z and Yang Z (2021) Kinematics
Intelligent & Robotic Systems 86(1): 63–79. and singularity analysis of a 7-DOF redundant manipulator.
Ma B, Xie Z, Jiang Z and Liu H (2021) Precise semi-analytical Sensors 21(21): 7257.
inverse kinematic solution for 7-DOF offset manipulator with Shimizu M, Yoon WK and Kitagaki K (2007) A practical
arm angle optimization. Frontiers of Mechanical Engineering redundancy resolution for 7 DOF redundant manipulators
16(3): 435–450. with joint limits. In: Proceedings 2007 IEEE International
Marani G, Kim J, Yuh J and Chung WK (2003) Algorithmic Conference on Robotics and Automation. IEEE, pp. 4510–
singularities avoidance in task-priority based controller for 4516.
redundant manipulators. In: Proceedings 2003 IEEE/RSJ Sinha A and Chakraborty N (2019) Geometric search-based
International Conference on Intelligent Robots and Systems inverse kinematics of 7-DoF redundant manipulator with
(IROS 2003)(Cat. No. 03CH37453), volume 4. IEEE, pp. multiple joint offsets. In: 2019 International Conference on
3570–3574. Robotics and Automation (ICRA). IEEE, pp. 5592–5598.
McGrath P (2016) An extremely short proof of the hairy ball Su H, Enayati N, Vantadori L, Spinoglio A, Ferrigno G and
theorem. The American Mathematical Monthly 123(5): 502– De Momi E (2018) Online human-like redundancy opti-
503. mization for tele-operated anthropomorphic manipulators.
Motiv Space Systems (2022) xLink space-rated modular International Journal of Advanced Robotic Systems 15(6):
robotic arm system. https://motivss.com/ 1729881418814695.
products-capabilities/robotics/xlink/.
(accessed Dec. 21, 2022).
Elias and Wen 19
Tian X, Xu Q and Zhan Q (2021) An analytical inverse Wang Z and Kazerounian K (1995) Identification and resolution of
kinematics solution with joint limits avoidance of 7-DOF structural and algorithmic singularity in redundancy control
anthropomorphic manipulators without offset. Journal of the of serial manipulations. Journal of robotic systems 12(7):
Franklin Institute 358(2): 1252–1272. 465–478.
Tondu B (2006) A closed-form inverse kinematic modelling Xiong G, Zhou Y and Yao J (2020) Null-space impedance control
of a 7R anthropomorphic upper limb based on a joint of 7-degree-of-freedom redundant manipulators based on the
parametrization. In: 2006 6th IEEE-RAS International arm angles. International Journal of Advanced Robotic
Conference on Humanoid Robots. IEEE, pp. 390–397. Systems 17(3): 1729881420925297.
Ufactory (2022) Ufactory xArm 7. https://www. Xu W, She Y and Xu Y (2014) Analytical and semi-analytical
ufactory.cc/product-page/ufactory-xarm-7. inverse kinematics of SSRMS-type manipulators with single
(accessed Dec. 21, 2022). joint locked failure. Acta Astronautica 105(1): 201–217.
Universal Robots (2022) UR5 collaborative robot arm. Yan L, Mu Z and Xu W (2014) Analytical inverse kinematics
https://www.universal-robots.com/ of a class of redundant manipulator based on dual arm-angle
products/ur5-robot/. (accessed Oct. 31, 2022). parameterization. In: 2014 IEEE International Conference on
Wang C, Peng L, Hou ZG, Li J, Luo L, Chen S and Wang W Systems, Man, and Cybernetics (SMC). IEEE, pp. 3744–3749.
(2019) Kinematic redundancy analysis during goal-directed Yaskawa (2022a) Motoman SIA50D 7-axis robot arm.
motion for trajectory planning of an upper-limb exoskeleton https://www.motoman.com/en-us/products/
robot. In: 2019 41st Annual International Conference of the robots/industrial/assembly-handling/
IEEE Engineering in Medicine and Biology Society (EMBC). sia-series/sia50d. (accessed Dec. 21, 2022).
IEEE, pp. 5251–5255. Yaskawa (2022b) Motoman SIA5D 7-axis robot arm.
Wang Y (2013) Closed-form inverse kinematic solution for https://www.motoman.com/en-us/products/
anthropomorphic motion in redundant robot arms. Technical robots/industrial/assembly-handling/
report, Arizona State University. sia-series/sia5d. (accessed Dec. 21, 2022).
Wang Y, Zhao C, Wang X, Zhang P, Li P and Liu H (2021) Inverse Zhao J, Yang X, Zhao Z, Yang G and Zhao L (2023) Inverse
kinematics of a 7-DOF spraying robot with 4R 3-DOF non- kinematics and multi-objective configuration optimization of
spherical wrist. Journal of Intelligent & Robotic Systems the SSRMS manipulator. Advances in Space Research .
101(4): 1–17.