Available via license: CC BY 4.0
Content may be subject to copyright.
MODELLING AND ANALYSIS OF MECHANICAL SYSTEMS DYNAMICS
Velocity and acceleration level inverse kinematic calculation
alternatives for redundant manipulators
Do
´ra Patko
´.Ambrus Zelei
Received: 3 March 2020 / Accepted: 30 December 2020
ÓThe Author(s) 2021
Abstract For both non-redundant and redundant
systems, the inverse kinematics (IK) calculation is a
fundamental step in the control algorithm of fully
actuated serial manipulators. The tool-center-point
(TCP) position is given and the joint coordinates are
determined by the IK. Depending on the task, robotic
manipulators can be kinematically redundant. That is
when the desired task possesses lower dimensions than
the degrees-of-freedom of a redundant manipulator.
The IK calculation can be implemented numerically in
several alternative ways not only in case of the
redundant but also in the non-redundant case. We
study the stability properties and the feasibility of a
tracking error feedback and a direct tracking error
elimination approach of the numerical implementation
of IK calculation both on velocity and acceleration
levels. The feedback approach expresses the joint
position increment stepwise based on the local veloc-
ity or acceleration of the desired TCP trajectory and
linear feedback terms. In the direct error elimination
concept, the increment of the joint position is directly
given by the approximate error between the desired
and the realized TCP position, by assuming constant
TCP velocity or acceleration. We investigate the
possibility of the implementation of the direct method
on acceleration level. The investigated IK methods are
unified in a framework that utilizes the idea of the
auxiliary input. Our closed form results and numerical
case study examples show the stability properties,
benefits and disadvantages of the assessed IK
implementations.
Keywords Inverse kinematics Kinematic
redundancy Serial manipulators Discrete mapping
Numerical stability Moore-Penrose pseudo inverse
1 Introduction
Kinematics calculation of robotic manipulators is a
fundamental task in robot control, involving many
issues such as numerical efficiency [21,26]. In the
case of direct kinematics, the position and orientation
of the end-effector are determined based on the joint
coordinates. If the joint space (or operational space)
and the task space (or workspace), in which the end-
effector is moving, have the same dimensions, there is
no kinematic redundancy [4,14,16,20]. In other
words, the degrees of freedom (DoFs) of the manip-
ulator exactly equals the necessary DoFs for perform-
ing the task. The system is called kinematically
D. Patko
´
Budapest University of Technology and Economics,
Muegyetem rkp. 3-5, Budapest, Hungary
e-mail: dora.patko@mm.bme.hu
A. Zelei (&)
MTA-BME Research Group on Dynamics of Machines
and Vehicles, Budapest, Hungary
e-mail: zelei@mm.bme.hu
123
Meccanica
https://doi.org/10.1007/s11012-020-01305-z(0123456789().,-volV)(0123456789().,-volV)
redundant, if there is higher number of DoFs than the
dimensions of the task.
In practice, the desired position of the end-effector
(tool-center-point) is prescribed and we try to find the
corresponding joint coordinate values. This mapping
from the task space to the joint space is called inverse
kinematics (IK). Several methods exist in the literature
to solve the IK problem with different approaches.
These methods can be categorized as geometric level
approaches, velocity level approaches and accelera-
tion level approaches. Acceleration level resolution
methods of the IK problem may improve the perfor-
mance of redundant robots [13,24] comparing to
velocity level methods. There are alternatives for the
position error compensation too [9,10]. In this paper,
our focus is on the stability, accuracy and efficiency of
different combination of approaches used for IK.
Non-redundant cases were considered in our recent
paper [22]. The present paper generalizes the theoret-
ical details and the set of case examples for redundant
cases.
1.1 The idea of auxiliary input in motion control
We formalize and classify the presented IK
approaches in a rigorous way. To this end, we borrow
the notion of the auxiliary input that is used in the
feedback linearization of the dynamic equations of
robotic manipulators, e.q. when computed-torque like
control or inverse dynamics control is applied for
trajectory tracking [26,28]. We summarize here the
theoretical background briefly based on the literature.
Let us assume the equation of motion of the manip-
ulator in the following general form
MðqÞ€
qþCðq;_
qÞ¼HðqÞu:ð1Þ
Here the vector of general coordinates is q, the mass
matrix is MðqÞ, the inertial forces are represented by
the vector Cðq;_
qÞ, the independent control inputs are
collected in uand the control input distribution matrix
is HðqÞ. One obtains the closed loop system in the
following linear form
€
q¼~
vð2Þ
if the control input uis synthesized by using the
formula
u¼H1ðqÞMðqÞ~
vþCðq;_
qÞ½:ð3Þ
The typical choice of the so-called auxiliary input ~
v,
which appears in (3), realizes a proportional-deriva-
tive (PD) linear feedback control [26]:
~
v¼€
qd~
Dð_
q_
qdÞ ~
PðqqdÞ:ð4Þ
The PD controller realized in (4) and the proper choice
of the gain values ~
Pand ~
Dprovide stable error
dynamics (i.e. ðqqdÞ7!0), when the desired trajec-
tory qdðtÞis tracked. The tuning of the gain values is
detailed in [26].
One can conclude that the auxiliary input ~
vis
chosen with respect to a particular control goal in
general. In analogue, we introduce the auxiliary input
for IK.
1.2 Synthetization of the auxiliary input, goals
In the subsequent sections, the variety of IK algo-
rithms is realized by means of different synthesis of
the auxiliary input: the linear error feedback and an
alternative approach which uses the idea of direct error
elimination. Both concepts are investigated on veloc-
ity and acceleration level, resulting four alternatives:
velocity level feedback, velocity level direct elimina-
tion, acceleration level feedback and acceleration
level direct elimination methods (VF, VD, AF and AD
respectively). Three out of the four (VF, VD and AF)
variations can be found in the literature, and they are
only reformulated in the framework of the auxiliary
input. Furthermore, their stability analysis is carried
out considering digital control (i.e. time-quantization)
[12,17]. Digital effects are quite important and the
time-step length affects the stability properties. How-
ever, a very few studies conduct discrete-time stability
analysis, e.g. [12] and continuous-time stability proofs
are typical, e.g. [2].
The question naturally arises: why is not there
direct error elimination approach on acceleration
level? This fourth alternative (AD) has been proposed
in our recent paper [22] for non-redundant cases. In the
present paper, we generalize AD for redundancy and
investigate its feasibility. The stability analysis is
carried out in [22] for all VF, VD, AF and AD
variations for non-redundant case. This discrete-time
stability analysis is generalized for kinematic redun-
dancy in the present paper.
123
Meccanica
2 Inverse kinematics calculation alternatives
Transferring the motion to the workspace from the
joint space and vice versa is an essential component of
motion control algorithms. In IK problems, the desired
trajectory rdðtÞ:R7!Rmof the tool-center-point
(TCP) position (or end-effector position) is prescribed
in the workspace in the case of position trajectory
tracking task [4,14,16,26]. The tracking error eis
introduced as
eðq;tÞ¼rðqÞrdðtÞð5Þ
with rðqÞ:Rn7!Rm. The term rðqÞin (5) maps the
joint coordinates to the actual TCP position and it
involves the geometric properties of the manipulator.
The desired position rdðtÞis purely time dependent.
The IK calculation aims to find the joint variable
vector qðtÞ2Rnthat satisfies the error equation
eðq;tÞ¼0:ð6Þ
Note that we do not need to restrict the IK calculations
to position tracking. In general case, (5) may interpret
any virtual geometric constraint equations, which are
referred as servo-constraints or control-constraints in
the literature [6–8,18,30,32].
Essentially, we distinguish the kinematically not
redundant case, when n¼m, and the redundant case,
when n[m. In the case of redundancy there is no
unique IK solution; rather, motion optimization is
carried out [3,4,14,16,20,26,29,31].
For the geometric level approach, (6) is solved
directly as a nonlinear algebraic problem, e.g. [25,27].
Yet, geometric solution is not typical in practice due to
the possibly high computational demand. Typically,
the IK is solved on velocity [1,20,29] or acceleration
level [13,20,24]. The numerical methods presented in
this paper are realized in velocity and acceleration
level.
2.1 Auxiliary input synthesis on velocity level
The velocity level implementation has the advantage
that the unknown joint speed _
qappears in linear form.
Hence, it’s calculation demands low computational
capacity. After differentiating (6) with respect to time,
_
eðq;_
q;tÞ¼
0with ð7Þ
_
eðq;_
q;tÞ¼_
rðq;_
qÞ _
rðtÞdð8Þ
is obtained. Equation (7) must be satisfied by deter-
mining the solution for _
q. The linear connection of the
TCP velocity _
rand the joint speed is given by
_
r¼J_
q;ð9Þ
where the Jacobian matrix J2Rmnis obtained as
JðqÞ¼r
qr. The commanded joint speed is expressed
from (9)as
_
q¼Jyvv;ð10Þ
where Jydenotes the Moore-Penrose generalized
inverse [5,19,20,23] of the non-square Jacobian. The
term vvin (10) is the auxiliary input, i.e. it has the same
role as ~
vin (3). Considering Eq. (8),
vv¼_
rdð11Þ
seems to be a natural choice for the auxiliary input.
The problem is that this choice does not provide
position error elimination e, although
lim
t7!1ðeðq;tÞÞ ¼ 0ð12Þ
is a requirement of IK methods. Therefore a variety of
numerical implementations is established in the liter-
ature. Providing the possibility of the elimination of
position errors, two alternatives for the choice of vvare
detailed and studied in the following sections.
Note that (10) might be extended depending on the
control goal [3,4,14,16,20,26,29,31]. On one hand,
a scalar cost function u¼_
q|W_
qis minimized when
the generalized inverse incorporates the weight matrix
W:
Jy¼W1J|ðJW
1J|Þ1:ð13Þ
We assume Wto be identity I, which results the
simplified formula Jy¼J|ðJJ
|Þ1. On the other
hand, the null-space NJ¼IJyJof the Jacobian is
often used in order to minimize a scalar cost function
cðqÞ. Then the joint speed is obtained as _
q¼Jyvvþ
NJ_
nwith n¼r
qc. In this paper, cðqÞ¼0 is assumed.
123
Meccanica
2.1.1 Velocity level linear feedback approach (VF)
The present IK calculation alternatives differ in the
synthesis of the auxiliary input vvthat appears in (10).
The TCP position error is eliminated by using
vv:¼_
rdjðrrdÞ,[29] with which we obtain the
commanded joint speed as
_
q¼Jy_
rdjðrrdÞ
:ð14Þ
By substituting (14) into (9), the TCP velocity arises in
the form
_
r¼_
rdjðrrdÞ:ð15Þ
Equation (15) shows that the error dynamics is
stable for the scalar gain parameter j[0. By
neglecting the digital effects [17], the following first
order ordinary differential equation describes the error
dynamics
_
eþje¼0;ð16Þ
of with the exponentially decaying solution is
eðtÞ¼Bejt. We detail the stability analysis and the
proper choice of jin Sect. 3.1 in the presence of time-
quantization.
2.1.2 Velocity level direct error elimination approach
(VD)
Comparing to the VF method, the auxiliary input vv
(see: (10)) is synthesized in an alternative way. The
fundamental goal is the direct elimination of the
tracking error by a proper choice of the vv[9,10].
The actual values of the joint variables and the TCP
position in the current time instance tiare introduced
as: qi:¼qðtiÞ,ri:¼rðqðtiÞÞ and rd
i:¼rdðtiÞ. These
variables and the time-step h:¼tiþ1tiare shown in
Fig. 1left panel. Let us take the difference di¼
rd
iþ1riof the actual and the desired TCP position
respectively in the current time instant tiand upcom-
ing time instant tiþ1. The goal is to express the joint
position increment directly with di. Since the time-step
h\\1 is small, constant TCP velocity is assumed _
ri.
We assume that considering the yet unknown velocity
_
ri, the upcoming desired TCP position rd
iþ1is reached:
rd
iþ1¼riþh_
ri:ð17Þ
The TCP velocity _
riis expressed from (17). Indeed,
the error eiþ1¼rd
iþ1riþ1is approximately elimi-
nated if the auxiliary input in the time instant tiis
synthesized as vv;i¼ðrd
iþ1riÞ=h. Substituting the
auxiliary input into (10), the commanded joint speed is
obtained as
_
qi¼Jy
i
rd
iþ1ri
h:ð18Þ
The commanded joint position in the upcoming time is
directly expressed by applying the single explicit
Euler [11] integration formula (qiþ1¼qiþh_
qi):
qiþ1¼qiþJy
iðrd
iþ1riÞ:ð19Þ
The TCP position error is shown in the right panel
of Fig. 1. The TCP positioning error eiþ1occures,
because the relation of the joint coordinates and the
TCP position is nonlinear. However, if rðqÞis linear,
then eiþ1¼0is achieved. In general, the error eiþ1
converges to zero for the time-step h7!0. The conver-
gence analysis is detailed in Sect. 3.1.
The advantage of the direct error elimination
method over the linear feedback approach is that the
joint position increment (see: (19)) is obtained
directly, and there is no need for considering the joint
or TCP speed. Furthermore, the joint position incre-
ment is directly related to the TCP positioning error.
2.2 Auxiliary input synthesis on acceleration level
The IK problem is maintained on acceleration level in
some cases, e.g. [13,24]. We gain the acceleration
level error equation after time differentiating (6)
twice:
€
eðq;_
q;€
q;tÞ¼0with ð20Þ
Fig. 1 Constant TCP velocity approximation (left panel). The
realized and the desired TCP position versus the joint
coordinates (right panel)
123
Meccanica
€
eðq;_
q;€
q;tÞ¼€
r€
rdð21Þ
Equation (21) needs to be satisfied in the acceleration
level approaches. Similarly to (9), we express the TCP
acceleration
€
r¼J€
qþ_
J_
q:ð22Þ
Since the joint acceleration is linear in (22), the
commanded joint acceleration is expressed as:
€
q¼Jyðva_
J_
qÞ;ð23Þ
where vais again the auxiliary input of the IK control.
Considering Eq. (21), one could synthesize the aux-
iliary input as
va¼€
rd:ð24Þ
The stable position error dynamics is not guaranteed
by (24). To avoid this problem, a variety of the
synthesis of vais applied in the literature. Similarly to
the velocity level approaches, two variations for the
choice of vaare detailed in the following sections,
which are capable of the positioning error elimination.
2.2.1 Acceleration level linear feedback approach
(AF)
By chosing the proper gain parameters jPand jD, the
auxiliary input va:¼€
rdjDð_
r_
rdÞjPðrrdÞ
provides the elimination of the TCP tracking error
[13]. The auxiliary input is substituted in Eq. (23) and
we obtain the commanded joint acceleration as
€
q¼Jy€
rdjDð_
r_
rdÞjPðrrdÞ _
J_
q
:ð25Þ
By substituting (25) into (22), the TCP acceleration
can be expressed as:
€
r¼€
rdjDð_
r_
rdÞjPðrrdÞ;ð26Þ
which leads to a stable error dynamics with the scalar
gain parameters jP[0 and jD[0 governed by the
second order differential equation
€
eþjD_
eþjPe¼0:ð27Þ
The error dynamics is asymptotically stable, if jP[0
and jD[0 and we assume continuous dynamics.
However, the digital effects [12,17] are important.
The stability analysis and the choice of jPand jDare
demonstrated in Sect. 3.1 in the presence of the
discrete dynamical effects due to digital control.
2.2.2 Acceleration level direct error elimination
approach (AD)
Although the description of the IK methods in
Sects. 2.1.1,2.1.2 and 2.2.1 can be found the litera-
ture, they typically appear without using the frame-
work of the auxiliary inputs. The method explained in
the present Section was proposed first in [22] and here
it is generalized for redundant cases. The goal is the
direct elimination of the position error by choosing the
auxiliary input appearing in (23) properly. The method
explained here is the acceleration level analogy of the
velocity level direct error elimination (VD) method.
The deviation di¼rd
iþ1ribetween the realized
and the prescribed TCP position is considered, in
analog to the VD approach, as it is shown in Fig. 2.By
the proper choice of the constant TCP acceleration €
ri,
the TCP position prescribed in the upcoming time
instant rd
iþ1is reached:
rd
iþ1¼riþh_
riþ1
2h2€
ri:ð28Þ
The error diis approximately eliminated if the
auxiliary input is chosen as
va;i¼2ðrd
iþ1riÞ=h22_
ri=h. This formula is
obtained by the solution (28) for the unknown
acceleration €
ri. By substituting va;iinto (23) and
applying (9) for the actual time instant ( _
ri¼Ji_
qi), and
introducing the joint speed approximation
_
qiJyðrd
iþ1riÞ=h, the commanded joint
acceleration
Fig. 2 Approximation of the constant TCP acceleration
123
Meccanica
€
qi¼2Jy
iðrd
iþ1riÞ
h2Jy
iJi
2_
qi
hJy
i_
Ji_
qi
¼2Jy
iðrd
iþ1riÞ
h2Jy
iJi
2_
qi
hJy
i_
JiJy
i
rd
iþ1ri
h
ð29Þ
can be synthesized. In order to obtain explicit formula
for the joint position, one-step time integration is
carried out. First, the velocity and after that the joint
position is expressed with the Adams–Moulton family
of numerical integrators [11]:
_
qiþ1¼_
qiþh€
qi;ð30Þ
qiþ1¼qiþhð_
qiþ1þ_
qiÞ=2:ð31Þ
We directly obtain the upcoming commanded joint
position. Again, small TCP position error eiþ1arises
because of the nonlinearity of rðqÞ; however, eiþ1
converges to zero when h7!0. The results of the
convergence analysis are presented in Sect. 3.1.
In analogy with the VD approach, the increment of
the joint position vector is obtained without including
the joint or TCP acceleration in the formulae.
3 Convergence analysis and case study examples
Figure 3shows the case study examples in a system-
atic order. The analytical convergence analysis and its
general results are shown first, then the numerical case
examples show that the analytically obtained general
conclusions are correct. The strength of the presented
stability analysis is that time-quantization is consid-
ered, and the stable parameter set is determined in
terms of the time-step length h.
3.1 Convergence analysis
We couldn’t find the rigorous stability analysis and
comparison of the presented four IK methods in the
presence of digital effects. The stability analysis of the
four methods (VF, VD, AF and AD) is carried out by
the time integration (if necessary) and linearization
(for nonlinear case examples) of the commanded joint
position/speed/acceleration formulae (14), (19), (25)
and (29). The linearization is carried out around an
arbitrarily chosen configuration q0. In each case, we
obtain the discrete mappings [15]
qiþ1¼Aqiþb;ð32Þ
xiþ1¼Axiþb;ð33Þ
ziþ1¼Aziþbð34Þ
that map the commanded joint variables from the time
instant tito tiþ1. In the case of the VD approach, the
joint positions are mapped only. Although the mapped
variables x¼½q|;_
q||include the joint speed too in
the case of the VF and AD methods. For the AF
approach, the joint acceleration is also included in
z¼½q|;_
q|;€
q||. The coefficient matrix Aand the
vector bchange depending on the formulae for the
auxiliary input vvor vaand on the integration scheme.
The eigen-values of Adefine the convergence:
jkij\1;8iguarantees asymptotic stability [15],
defined in (12). The eigen-value analysis of each
particular method is summarized in Sect. 3.1.5.
(A)
(B)
(C)
(D)
(E)
(F)
Fig. 3 Case study examples: non-redundant case example
models (A,Band C) are in the left column, redundant case
example models (D,Eand F) are in the right column. In the top
row, the simplest possible nonlinear cases (Aand D) are
considered: the function rðqÞmaps the joint variables to the one-
dimensional workspace. Linear and nonlinear models with two-
dimensional workspace are depicted in the middle and the
bottom rows (B,E, and Cand Frespectively)
123
Meccanica
It was shown in our recent paper [22] that the matrix
Afor models B and C are identical. It was also shown
that the matrix Afor models B and C have the same
pattern as for model A, but the pattern is repeated
twice. It is because the workspace is two-dimensional
instead of one. As a consequence, the mapping matrix
is shown only for the models A and D with one-
dimensional workspace.
3.1.1 Convergence analysis of the VF approach
In the VF approach, the numerical integration
scheme was the second order Adams–Bashforth
scheme [11]:
qiþ1¼qiþð3_
qiþ1_
qiÞh=2:ð35Þ
This integration scheme is applied on the commanded
joint velocity defined in (14), with which the mapping
matrix is obtained in the form below for the model A
and configuration q0¼0:
AVF ¼13
2jhh
2
j0
2
43
5:ð36Þ
Note that the matrix AVF repeats the same pattern for
models B and C. Indeed, the eigen-values are also the
same, but multiple. The real eigen-values of AVF are
kv1¼1
23
4jh1
4ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
44jhþ9j2h2
p;ð37Þ
kv2¼1
23
4jhþ1
4ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
44jhþ9j2h2
p:ð38Þ
In redundant case (model D) with q0¼0, the mapping
matrix is obtained as:
AVF;r¼
10h
20
013
2jh0h
2
00 00
0j00
2
6
6
6
6
6
6
4
3
7
7
7
7
7
7
5
;ð39Þ
of which the eigen-values are kv1,kv2, 0 and 1. The
new 0 and 1 eigen-values, which appear because of the
redundancy, are spurious eigen-values; i.e. the 1
eigen-value does not mean that the system is margin-
ally stable. The stable region is plotted in the left
chart of Fig. 4. The choice of the time-step hand the
gain parameter jinside the stable region (yellow)
guarantees the decay of the tracking error e. Note that
the stable region has infinitely long but monotonically
narrowing tails both in the direction of the time-step
duration hand in the direcion of the gain parameter j.
3.1.2 Convergence analysis of the VD approach
The numerical integration is already incorporated into
the commanded joint position formula defined in (19).
The mapping matrix for model A with q0¼0 reads:
AVD ¼0½;ð40Þ
of which the eigen-value is always zero, indeed. For
models B and C with two-dimensional workspace, the
matrix is 2 by 2 zero matrix, i.e. the pattern is repeating
itself again. For the redundant case (model D) with
q0¼0, the mapping matrix is:
AVD;r¼10
00
:ð41Þ
The redundancy introduces one extra row and column
for each extra DoF, and as a consequence, a new
spurious eigen-value 1 appears. The exponential
convergence of the tracking error to zero is always
guaranteed.
3.1.3 Convergence analysis of the AF approach
Model A is considered again with q0¼0. In case of
the acceleration level feedback IK approach, the
integration scheme was the second order Adams–
Fig. 4 Stable domains of the gain parameters and the time-step.
Left panel: stable region of the parameters h½sand j½1=sin the
case of the velocity level linear feedback (VF) method. The
relevant region is zoomed. Right panel: stable region of the
parameters h½s,jD½1=sand jP½1=s2in the case of the
acceleration level feedback (AF) method. The scale of hin the
vertical axis is the same in the two charts
123
Meccanica
Bashforth scheme combined with the second order
Adams–Moulton scheme [11]:
_
qiþ1¼_
qiþð3€
qiþ1€
qiÞh=2;ð42Þ
qiþ1¼qiþð_
qiþ1þ_
qiÞh=2:ð43Þ
This integration scheme is applied on the commanded
joint acceleration defined in (25) with which, the
mapping matrix reads
AAF ¼
13
4jPh2h3
4jDh2h2
4
3
2jPh13
2jDhh
2
jPjD0
2
6
6
6
6
4
3
7
7
7
7
5
:ð44Þ
The real eigen-value ka1ðjP;jD;hÞand the complex
eigen-values ka2ðjP;jD;hÞ,ka3ðjP;jD;hÞof AAF can
be obtained in closed form; however, we do not show
the resulting formula because of its high complexity.
In the redundant case, when model D is investi-
gated, the mapping matrix arises in the form:
AAF;r¼
10h0h2
40
013
4jPh20h3
4jDh20h2
4
0010 h
20
03
2jPh013
2jDh0h
2
0000 00
0jP0jD00
2
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
4
3
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
5
;
ð45Þ
Besides the eigen-values ka1,ka2and ka3, additional
three eigen-values 0, 1, 1 appear for each extra DoF.
The stable region in the parameter space is shown in
the right panel of Fig. 4. The choice of parameters
inside the stable region (yellow) guarantees the decay
of the tracking error e. There is no stable region for the
gain value jD¼0; although increasing jDmodifies
the shape of the stable region. The most important
difference comparing to the stability chart of the VF
method is that the maximum time interval his limited.
A very important observation about the linear
feedback approaches is that Fig. 4clearly shows that
the stable region for the time-step hand the propor-
tional gains jand jPis much larger for the acceler-
ation level approach than for the velocity level one.
The practically important benefit is that larger time-
steps are allowed without loosing stability.
3.1.4 Convergence analysis of the AD approach
Model A and q0¼0 is investigated first. The
commanded acceleration is defined by (29), and the
numerical integration scheme is defined in (30) and
(31), with which the mapping matrix is:
AAD ¼00
2=h1
;ð46Þ
of which the eigen-values are 0 and 1 for any time-
step h. This two-element eigen-value set is multiple
for each dimension of the workspace. For the redun-
dant case (model D with q0¼0), the mapping matrix
is
AAD;r¼
10h0
0000
0010
02=h01
2
6
6
6
4
3
7
7
7
5
;ð47Þ
of which the eigen-value set extends with two spurious
1 eigen-value for each extra DoF. The new spurious
eigen-values do not change the fact that the zero error
solution is marginally stable because of the 1 eigen-
value. In practice 1 eigen-value causes a non-
decaying timestep-by-timestep numerical oscillation.
3.1.5 Summary on the convergence analysis
For all the A, B, C, D, E, and F case examples, the
same stability chart is valid for the velocity and
acceleration level linear feedback approaches (VF and
AF) (see: Fig. 4). Two parameters, namely hand j
determine the convergence for the VF method, while
the convergence of the AF method is determined by h,
jPand jD. The convergence of method VD is
guaranteed, since the non-spuriois eigen-values are
always zeros. Method AD is proven to be marginally
stable, since there is always an eigen-value, which is
1. The eigen-value sets are summarized for each IK
method in Table 1. In redundant case, the number of
eigen-values is 2m,m,3mand 2mrespectively for the
VF, VD, AF and AD methods. The number of eigen-
values introduced by the redundant extra DoFs is
2ðnmÞ,nm,3ðnmÞ,2ðnmÞrespectively.
The case examples in the subsequent section show that
123
Meccanica
the eigen-value analysis and the numerical simulations
are in correspondence. In each case, both stable pa-
rameter sets and parameter sets from the vicinity of the
stability border were tested.
3.2 Case examples A and D
Case example models A and D (see Fig. 3) are the
simplest possible ones in the sense that the workspace
is m¼1 dimensional. If there is no redundancy,
n¼1. However, for redundant case n[mmust be
true, which yields n¼2 DoF in the simplest case. We
consider a nonlinear mapping from the R1or R2joint
space to the R1workspace without any particular
physical meaning.
3.2.1 Kinematically non-redundant case: model A
The nonlinear function r(q) and the desired TCP
position are given. The desired TCP trajectory rdðtÞ
and the function r(q), which maps from the joint space
to the workspace, were
rdðtÞ¼a0þa1sin xt;ð48Þ
rAðqÞ¼cþq2ð49Þ
in the numerical simulations and also in the analytical
convergence analysis. The parameter values were
a0¼1m, a1¼1m, x¼1 rad=s and c¼0:2 m. The
simulations were performed with an initial error as it is
shown in the top panels of Fig 5. The gain parameters
and the time-step were j¼19 1=s, jP¼250 1=s2,
jD¼81=s and h¼0:05 s respectively for the simu-
lations that are carried out in the inner vicinity of the
stability border shown in Fig. 4(close to the marginal
stability). A parameter set deep inside the stable region
was j¼51=s and jP¼50 1=s without changing any
other parameter. Note that every other simulation is
carried out with the same gain parameters and time-
step. The initial conditions are q0¼1, _
q0¼0.
3.2.2 Kinematically redundant case: model D
The joint variables are mapped to the workspace by
rDðq1;q2Þ¼cþq2
1þq2:ð50Þ
Every other parameter is the same as in the non-
redundant case example A. The initial conditions were
q0¼½1;1|and _
q0¼0. The simulation results are
shown in the bottom panels of Fig 5. As we can see in
the graphs for VF, and AF methods, the almost
unstable parameter sets provide stability; however the
error decays very slowly with high oscillations. The
convergence speeds up when choosing the parameters
from deep inside the stable range. Method VD
suppresses the error quickly, but method AD causes
abrupt peaks in the position error. We expected this
kind of stability problem based on the eigen-value
analysis.
3.3 Case examples B and E
The non-redundant and the redundant cases were
tested on the linear models B and E. Models B and E
are a bit more general than A and D, since the
workspace is not one-dimensional. The R27!R2and
R37!R2linear mapping functions for the planar PP
and PPP manipulators, which consist of two and three
perpendicular prismatic drive (see: Fig. 3), are
respectively
Table 1 Eigen-values of the discrete mapping for each IK approach
Eigen-values in non-redundant case Extra eigen-values in redundant case
VF msets of kv1,kv2nmsets of 0, 1
VD msets of 0 nmsets of 1
AF msets of ka1,ka2,ka3nmsets of 0, 1, 1
AD msets of 0, 1nmsets of 1, 1
The eigen-values for the non-redundant cases are collected in the middle row. The number of eigen-value sets is equal to the n¼m
dimensions of the workspace. The rightmost column shows the extra spurious eigen-values which are additionally introduced for the
extra nmnumber DoFs
123
Meccanica
rBðqÞ¼ xðqÞ
yðqÞ
¼lþq1
lþq2
;ð51Þ
rEðqÞ¼ xðqÞ
yðqÞ
¼2lþq1þq3
lþq2
;ð52Þ
where l¼1 m is a geometric parameter. The desired
path was a circle defined by
rdðtÞ¼ a0þa1sin xt
a0þa1cos xt
ð53Þ
with parameters a0¼1m, a1¼0:5 m and
x¼2 rad=s. For model B, the initial conditions were
q0¼½0:5;0:5|and _
q0¼0. For model E, the initial
conditions were set to q0¼½0;0;0|and _
q0¼0.
First, we carried out numerical simulations with
parameters intentionally chosen from the border of the
stable range; i.e. the norm of the eigen-values of Ais
about 1 (for the IK parameter values see: Sect. 3.2.1).
The Euclidean norm of the TCP positioning error is
shown in Fig. 6. The behaviour of the IK methods is
similar to the previous case examples A and D.
However, models B and E are linear. Because of the
linearity, methods VD and AD are able to track the
given trajectory without error. Fig. 7depicts the
desired and the realized path of the TCP. The
vibrations in the vicinity of the stability border are
clear for VF and AF (left column). However stable pa-
rameters provide smooth decaying of the tracking
error (middle column). Although the direct methods
practically jump to the desired path, in the physical
reality, the motion controller and the actuators limit
the speed of this motion.
3.4 Case examples C and F
Nonlinear non-redundant and redundant models (C
and F respectively) are taken as case examples.
Models C and F are planar RR and RRR manipulators.
The joint variables are mapped to the TCP position by
the following R27!R2and R37!R2functions
rCðqÞ¼ xðqÞ
yðqÞ
¼lc1þlc2
ls1þls2
;ð54Þ
rFðqÞ¼ xðqÞ
yðqÞ
¼lc1þlc2þlc3
ls1þls2þls3
;ð55Þ
where l¼1 m is the length of the bars and the
abbreviations are ci¼cosðqiÞ,si¼sinðqiÞ. For model
C, the initial conditions were q0¼½22:5;81|and
_
q0¼0for methods VF, VD, AF and q0¼½30:5;81|
and _
q0¼0for method AD. For model F, the initial
conditions were q0¼½10;48;132|and _
q0¼0for
methods VF, VD, AF and q0¼½1;48;132|for
method AD. Method AD is very sensitive to any large
initial error, that is the reason for choosing different
initial conditions.
Simulations with close-to-unstable and stable pa-
rameters were carried out. For the parameters j,jP,
Fig. 5 Position error e¼rðqÞrdðtÞfor the case study
examples A (top row) and D (bottom row). Methods VF and
AF are shown in the left and the middle column with the almost
unstable and the stable parameter set respectively. The right
column shows the error for the VD and the AD methods, for
which there is no parameter which affect the stability
123
Meccanica
jD,hand for the desired trajectory see Sect. 3.2.1 and
Eq. (53). In the case of these nonlinear example
models, the behavior is a bit more intricate then for
cases B and E. As we can see in Fig. 8, there is a small
positioning error remaining for IK methods VF and AF
because of the nonlinearity. Again, method AD
develops oscillations after settling down (right, bottom
panel). This phenomena questions the practical appli-
cability. Fig. 9shows the desired and the realized
trajectories.
4 Conclusion
Four alternatives for the numerical implementation of
the inverse kinematics calculation were studied: the
feedback approach and the direct error elimination
approach were implemented on velocity and acceler-
ation level in the framework of auxiliary inputs. The
comparison of the stability properties were carried out
and the stable parameter regions were presented,
which are essential in the practical application of these
Fig. 6 The Euclidean error norm e
kk
¼rðqÞrdðtÞ
for the case example models B (top row) and E (bottom row). Almost
unstable and stable cases for VF and AF approaches and the results for VD and AD methods are shown in separate columns
Fig. 7 The desired rdðtÞand the realized trajectory rðqÞof the
TCP for the case example models B (top row) and E (bottom
row). Close-to-unstable and stable cases for VF and AF
approaches and the results for VD and AD methods are shown
in separate columns. The initial positions are shown by larger
markers
123
Meccanica
algorithms. The acceleration level feedback method is
proven to be beneficial over the velocity level type in
the sense that the stable parameter region is larger and
therefore larger time-step is allowed in the digital
implementation. In order to test the possible benefits
of acceleration level methods, we introduced the
acceleration level direct error elimination method
(AD).
The analytical convergence analysis showed that
VF, VD, AF methods are convergent and therefore
feasible in practice. The stable parameter range was
defined for VF and AF methods. It was however
proven that the AD method is marginally stable, which
means that its practical application is not feasible in
the present form. Some research is worth being carried
out on the possibilities of stabilization, because the
convergence of the AD method is much faster than the
AF feedback method when the underlying system is
linear. The analytically obtained stability charts were
tested by numerical case example simulations, and the
behavior was as one could expect based on the stability
charts.
Fig. 8 The Euclidean error norm ekk¼ rðqÞrdðtÞ
for the case example models C (top row) and F (bottom row). Almost
unstable and stable cases for VF and AF approaches and the results for VD and AD methods are shown in separate columns
Fig. 9 The desired rdðtÞand the realized trajectory rðqÞof the
TCP for the case example models C (top row) and F (bottom
row). Close-to-unstable and stable cases for VF and AF
approaches and the results for VD and AD methods are shown
in separate columns. The initial positions are shown by larger
markers
123
Meccanica
Acknowledgements The research reported in this paper and
carried out at BME has been supported by the Hungarian
National Research, Development and Innovation Office (NKFI-
FK18 128636), by the Hungarian-Chinese Bilateral Scientific
and Technological cooperation Fund (2018-2.1.14-TET-CN-
2018-00008) and by the NRDI Fund (TKP2020 IES,Grant No.
BME-IE-BIO and TKP2020 NC, Grant No. BME-NC) based on
the charter of bolster issued by the NRDI Office under the
auspices of the Ministry for Innovation and Technology.
Funding Open Access funding provided by Budapest
University of Technology and Economics.
Compliance with ethical standards
Conflict of Interest The authors declare that they have no
conflict of interest.
Open Access This article is licensed under a Creative Com-
mons Attribution 4.0 International License, which permits use,
sharing, adaptation, distribution and reproduction in any med-
ium or format, as long as you give appropriate credit to the
original author(s) and the source, provide a link to the Creative
Commons licence, and indicate if changes were made. The
images or other third party material in this article are included in
the article’s Creative Commons licence, unless indicated
otherwise in a credit line to the material. If material is not
included in the article’s Creative Commons licence and your
intended use is not permitted by statutory regulation or exceeds
the permitted use, you will need to obtain permission directly
from the copyright holder. To view a copy of this licence, visit
http://creativecommons.org/licenses/by/4.0/.
References
1. An S, Lee D (2019) Prioritized inverse kinematics: gener-
alization. IEEE Robot Autom Lett 4(4):3537–3544. https://
doi.org/10.1109/lra.2019.2927945
2. Antonelli G (2009) Stability analysis for prioritized closed-
loop inverse kinematic algorithms for redundant robotic
systems. IEEE Trans Robot 25(5):985–994. https://doi.org/
10.1109/tro.2009.2017135
3. Baillieul J (1985) Kinematic programming alternatives for
redundant manipulators. In: Proceedings of the IEEE con-
ference robotics and automation, pp 722–728. https://doi.
org/10.1109/ROBOT.1985.1087234
4. Baker DR, Wampler CW (1988) On the inverse kinematics
of redundant manipulators. Int J Robot Res 7(2):3–21.
https://doi.org/10.1177/027836498800700201
5. Ben-Israel A, Greville TNE (2003) Generalized inverses:
theory and applications, 2nd edn. Springer, New York.
ISBN 9780387216348
6. Blajer W, Kolodziejczyk K (2004) A geometric approach to
solving problems of control constraints: theory and a dae
framework. Multibody Syst Dyn 11(4):343–364. https://doi.
org/10.1023/B:MUBO.0000040800.40045.51
7. Blajer W, Kolodziejczyk K (2008) Modeling of underac-
tuated mechanical systems in partly specified motion.
J Theor Appl Mech 46(2):383–394
8. Blajer W, Seifried R, Kolodziejczyk K (2015) Servo-con-
straint realization for underactuated mechanical systems.
Arch Appl Mech 85(9–10):1191–1207. https://doi.org/10.
1007/s00419-014-0959-2
9. Burrell T, Montazeri A, Monk S, Taylor CJ (2016) Feed-
back control-based inverse kinematics solvers for a nuclear
decommissioning robot. IFAC-PapersOnLine
49(21):177–184. https://doi.org/10.1016/j.ifacol.2016.10.
541
10. Buss SR (2004) Introduction to inverse kinematics with
jacobian transpose, pseudoinverse and damped least squares
methods. IEEE J Robot Autom Tech Rep
11. Butcher J (2008) Numerical methods for ordinary differ-
ential equations. Wiley, Hoboken. ISBN 978-0-470-72335-
7
12. Das H, Slotine J, Sheridan TB (1988) Inverse kinematic
algorithms for redundant systems. In: IEEE international
conference on robotics and automation, pp 43–48.
Philadelphia. https://doi.org/10.1109/ROBOT.1988.12021
13. De Luca A, Oriolo G, Siciliano B (1992) Robot redundancy
resolution at the acceleration level. Lab Robot Autom
4(2):97–106
14. From PJ, Gravdahl JT (2007) General solutions to func-
tional and kinematic redundancy. In: Proceedings of the
46th IEEE conference on decision and control, pp 1–8. New
Orleans. ISSN: 0191-2216. https://doi.org/10.1109/CDC.
2007.4434442
15. Guckenheimer J, Holmes P (1983) Nonlinear oscillations.
In: Dynamical systems and bifurcations of vector fields.
Springer, New York. ISBN 978-1-4612-7020-1
16. Hollerbach JM, Suh KC (1987) Redundancy resolution of
manipulators through torque optimization. IEEE J Robot
Autom 3(4):308–316. https://doi.org/10.1109/JRA.1987.
1087111
17. Kirgetov VI (1996) Micro-chaos in digital control. J Non-
linear Sci 6(5):415–448. https://doi.org/10.1007/
BF02440161
18. Kirgetov VI (2019) The motion of controlled mechanical
systems with prescribed constraints (servoconstraints).
PMM 31(3):433–446. https://doi.org/10.1016/0021-
8928(67)90029-9
19. Moore EH (1920) On the reciprocal of the general algebraic
matrix. Bull Am Math Soc 26(9):394–395
20. Nakamura Y (1991) Advanced robotics: redundancy and
optimization. Addison-Wesley, Reading
21. Orin DE, Schrader WW (1984) Efficient computation of the
Jacobian for robot manipulators. Int J Robot Res
49(21):66–75. https://doi.org/10.1177/
027836498400300404
22. Patko
´D, Zelei A (2019) Alternative inverse kinematic
calculation methods in velocity and acceleration level. In:
Awrejcewicz J, Kazmierczak M, Mrozowski J (ed) Theo-
retical approaches in non-linear dynamical systems-DSTA
2019, pp 405–418. Lodz, Poland
23. Penrose R, Todd JA (1955) A generalized inverse for
matrices. Math Proceed Cambridge Philos Soc
51(3):406–413. https://doi.org/10.1017/
s0305004100030401
123
Meccanica
24. Reiter A, Mu
¨ller A, Gattringer H (2018) On higher-order
inverse kinematics methods in time-optimal trajectory
planning for kinematically redundant manipulators. IEEE
Trans Ind Inf 14(12):1681–1690. https://doi.org/10.1109/
TII.2018.2792002
25. Sharma S, Kraetzschmar G, Scheurer C, Bischoff R (2012)
Unified closed form inverse kinematics for the KUKA
youBot. Proc ROBOTIK 2012 - 7th German Conference on
Robotics. Munich, Germany, pp 1–6
26. Siciliano B, Khatib O (2008) Handbook of robotics.
Springer, New York. ISBN 978-3-540-38219-5
27. Sinha A, Chakraborty N (2019) Geometric search-based
inverse kinematics of 7-dof redundant manipulator with
multiple joint offsets. In: International conference on
robotics and automation (ICRA), pp 5592–5598. https://doi.
org/10.1109/icra.2019.8793725
28. Spong MW, Vidyasagar M (1989) Robot dynamics and
control. Wiley, Hoboken
29. Wang J, Li Y, Zhao X (2010) Inverse kinematics and control
of a 7-DOF redundant manipulator based on the closed-loop
algorithm. Int J Adv Robot Syst 7(4):1–10. https://doi.org/
10.5772/10495
30. Yang Y, Betsch P, Altmann R (2015) A numerical method
for the servo constraint problem of underactuated mechan-
ical systems. PAMM Proc Appl Math Mech 15(1):79–80.
https://doi.org/10.1002/pamm.201510030
31. Yoshikawa T (1984) Analysis and control of robot manip-
ulators with redundancy. In: Robotics Research: The First
International Symposium, pp 735–747
32. Zelei A, Kova
´cs LL, Ste
´pa
´n G (2011) Computed torque
control of an under-actuated service robot platform modeled
by natural coordinates. Commun Nonlinear Sci Numer
Simul 16(5):2205–2217. https://doi.org/10.1016/j.cnsns.
2010.04.060
Publisher’s Note Springer Nature remains neutral with
regard to jurisdictional claims in published maps and
institutional affiliations.
123
Meccanica