Proceedings of 2004 IEEE/RSJ International Conference onIntelligent Robots and Systems
September 28 - October 2, 2004, Sendai, Japan

General-Purpose Expression of Structural
Connectivity in the Parallel Solution Scheme of
Inverse Dynamics
Daigoro Isobe

Atsushi Yagi

Graduate School of Systems & Information Engineering,
University of Tsukuba
Tsukuba-shi, Ibaraki 305-8573, Japan
isobe@kz.tsukuba.ac.jp

Graduate Student
University of Tsukuba
Tsukuba-shi, Ibaraki 305-8573, Japan

Abstract— The main purpose of this study is to deal with asudden change of dynamics in link systems, not by using
integrated systems of different software, but by using a single
solution scheme based upon a single theory. An algorithm forthe general-purpose expression of structural connectivity isdeveloped and implemented into the parallel solution scheme,
which was previously proposed and successively applied to
the feed-forward control of link mechanisms under various
boundary conditions. The algorithm expresses theconnectivity of link members explicitly, regardless of thestructural complexity. The parallel solution scheme
calculates the inverse dynamics of link systems withequations of motion expressed in the dimension of force. It
enables us to obtain numerical torque values in parallel byusing a matrix-form equation separated into terms ofdifferent parameters. Therefore, the connectivity of linkmembers can be expressed explicitly by one of the matrices,
the member length matrix. We describe the forming processof the matrix and verify the validity of the calculated torquevalues, by presenting simple numerical results andexperimental results for complex systems such as
multibranch link systems. It is confirmed that a sudden
structural change of link systems is dealt with only by arevision of input data, which makes it highly reliable in failsafe systems.

I.

INTRODUCTION

Recently, demands on motion robots have increased
greatly, such as that they move more quickly and in more
complicated ways. Such demands may lead to the
production of structurally complicated systems, of which
the dynamic equations will inevitably become difficult for
general users to derive (see Fig. 1). Generally, thedynamic equations are derived by the Newton-Euler
method or the Lagrangian method, in relative polar
coordinates and in the dimension of torque. The equations

Figure 1 Cases which are difficult to handle for general users

0-7803-8463-6/04/$20.00 ©2004 IEEE

3513

supply exact solutions in a short calculation time.
However, we require a special assumption to derive theequations, for closed-loop or other link systems withcomplicated structural connectivity [1][2]. This is due tothe inclusion of interdependent variables between theconstituting links in the dynamic equations. Therefore, asudden change of dynamics is generally dealt by an
integrated system of different algorithms or dynamic
equations.
Nakamura and Yamane developed a computationalalgorithm for the inverse and forward dynamics of open
and closed kinematic chains, which can be applied
seamlessly against the motions of any rigid link systems
without switching among algorithms [3]. However, thescheme requires the virtual cutting of the kinematic chain
when applied to closed-loop chains, along with thecomputation of Jacobian matrices. On the other hand,
Isobe developed a completely new scheme for calculating
inverse dynamics by using a finite element approach [4].
The scheme is named the parallel solution scheme, since it
computes nodal forces in parallel by using the equations of
motion expressed in the dimension of force, and converts
these to torque by using a matrix-form equation separated
into individual terms of nodal forces, transformation
between coordinates, and member length. Therefore, thescheme can not only deal with open- and closed-loop linksystems independently, it can also deal seamlessly withthose that gradually change their forms and dynamics.
There is also no need to revise the basic numericalalgorithm of the scheme, regardless of the stiffness of theconstituting link member, whether it is rigid or flexible [5].
In this paper, we describe an algorithm for the generalpurpose expression of structural connectivity, using themember length matrix in the parallel solution scheme. The
matrix contains the member length information in thecomponents, and expresses the structural connectivity of
the link system by the components’ configurations. The
connectivity between two links relies only upon whether alink is mechanically dependent (or supported) on another,or vice versa. By using this algorithm, complex systems
such as multibranch link systems can be expressed
explicitly, simply by feeding the connectivity data into theinverse dynamics computation program. The parallelsolution scheme with the proposed algorithm is verified bycomparing a simple numerical result with the exact
solution, and by carrying out some feed-forward control
experiments on a structure-varying link system.
II.

PARALLEL SOLUTION SCHEME

A. Comparison with Schemes Using Dynamic Equations
Dynamic equations for link systems are generally
derived by the Newton-Euler method or the Lagrangian
method. In a summarized expression, the equations are
written as°g + fV (í; í_ )g + fG(í)g
fúg = [M (í)]fí,(1)

where fúg is the torque vector, [M ] the inertial force
matrix, fV g the centrifugal force and Coriolis force term
_ , andvector, and fGg the gravity force term vector. í, í°within the parentheses are the relative variables of theíangle, the angular velocity and the angular acceleration
between each link, respectively. All of the parameters in
the equation relate to each other since they are derived inrelative polar coordinates and in the dimension of torque.
Therefore, most parts of the equations must be revisedwhen the structural configuration of the link system ischanged. Furthermore, special treatment must be adopted
for the derivation of the equations for complex systems
such as closed-loop or multibranch link systems.
On the other hand, torque values are calculated byusing the following equation in the parallel solution
scheme [4];fún g = [Ln ][T n ]fP n g ,a(a) Open-loop

a1

am
a2

・・・

(b) Closed-loopafÅf g = fRgt Ä fF gt +1
1
1fÅug Äfug_ tÄ(Ä 1)f°
ugt )
,
åÅt2
åÅt
2å

B. Expressing Structural Connectivity by Member
Length Matrix
The member length matrix [Ln ] in (2) contains
components in the dimension of length, which play roles inconverting the dimension from force to torque. Also, theconfiguration in the matrix expresses the structural(2)

where fún g is the torque vector, fP n g the vector related to
nodal forces, [T n ] the transformation matrix between
global and elemental coordinates, and [Ln ] the member
length matrix. The suffix ‘n’ on the upright indicates thetotal number of links. The nodal forces are evaluated at an
absolute Cartesian coordinate, and in the dimension offorce. The equation is completely separated into terms ofdifferent parameters, and each matrix expresses the essenceof the modeled link system such as member lengths andconnectivity, initial and transition of coordinates and joint
angles, and amount of applied forces at each joint.
Therefore, it has high expansibility and flexibility, and it
can be applied to complex link systems without difficulty.
An incremental nodal force vector fÅ f g , required forthe link system in motion between time t and t + Åt , isderived by the following equation [4];[M](

Newmark’s β method [6], a widely used time integration
scheme. The operation distance between each incremental
step calculated from a target trajectory is used as an input
for fÅ ug . The velocity and acceleration vectors can also begiven directly as input data, however, we used Newmark's
βmethod (δ=1/2, β=1/4) for calculating the values in thispaper. The values of the internal force vector fRg will all
actually become zero, since the consideration of thedeformation of link members in the inverse dynamics
calculation process is not required. The external vector
includes information such as dead loads and otheradditional forces acting at nodal points. Eachcorresponding term in the incremental nodal force vector isnthen substituted into (2) to constitute the vector fP g .
Although the scheme requires incremental calculation, it
has been confirmed in previous works that the calculation
time in actual control is suppressed to a practical value.
Further information regarding the calculation process canbe found in references [4] and [5].

(3)where [M ] is the total mass matrix, fF g the external force
vector, fRg the internal force vector, fÅ ug the incremental
ug thedisplacement vector, fu_ g the velocity vector, and f°
acceleration vector. β is the integral parameter for

3514

i
i-1

b

(c) Multibranch
Figure 2 Various system configurations

connectivity of the link system. For example, the structuralconnectivity of an open-loop link system constituted with alink members, as shown in Fig. 2(a), can be expressed by
an upper triangular matrix as follows:
Ç

L

É

a

2

6
6
=6
6
4

L1

L2
L2
0

ÅÅÅ LaÄ 1
ÅÅÅ LaÄ 1
..
..
.
.
LaÄ 1

3

Child link i = n, … , 1

La
La 7
.. 7
7
. 7
La 5
La ,

(4)

where each component Li (i = 1; ÅÅÅ; a) is a member length
matrix for link No. i , containing components on member
length, distance between center of gravity and nodal points,
etc [4]. In the case of dealing with a closed-loop linksystem as shown in Fig. 2(b), where a1, a2, … , am links (a1+ a2 + … + am = n) are connected, the member length
matrix can be expressed as follows:
Ç

L

É
n

2

6
6
=6
6
4

3

La1
La 2

0
..

0

.
L

amÄ 1

Lam

7
7
7
7
5

a2

2

6
6
6
6
6
Ç n É 6
L
=6
6
6
6
6
6
4

La1

am

ÅÅÅ Lai
..
..
.
.
Lai

0

ÅÅÅ Laa..
.
ÅÅÅ Laa
..
..
.
.
Laa

Lb1
..
.
Lb1

Mother link j = Base

True

False
k=1,… , n

(5)
,

3

ÅÅÅ Lbb.. 7. 7
7
ÅÅÅ Lbb 7

7
7
7 (6)
7
7
b 7
ÅÅÅ Lb 7
.. 7
..
5
.
.
0

Lb1

[Li ] ! [Ln ](i;i)[Ln ](j;k) + [Ln ](i;k) ! [Ln ](j;k)

where L ; L ; ÅÅÅ; L are each of the upper triangularmatrices expressed as (4). Namely, serial structures towhich the torque values should be added, are expressed as(4). Parallel structures to which the values should not be
added, are expressed by a matrix with the upper triangularmatrices placed on the diagonal, as in (5). For anotherexample, the multibranch link system shown in Fig. 2(c),where a b-link open-loop system branches from the i-th
joint in an a-link system, can be expressed as follows:
a1

Start

Lbb

End
Figure 3 Flow chart of construction algorithm ofmember length matrix

1) Starting from link No. n, place the member length
matrix of the child link (link No. i) into the i -th row,i -th column of the total matrix.
2) Add all the components on the i -th row (k=1, … , n)to the j -th row. If the mother link (link No. j) of thechild link (link No. i) is the base, skip this step.
3) Repeat steps 1) and 2) until link No. 1 is reached.
By using this flow, various types of system
configurations can be expressed explicitly andautomatically. However, the member length matrix only
expresses the structural connectivity of link systems; the.

Basically, the matrix consists of two independent upper
triangular matrices that indicate two open-loop links. To
add up the torque values in the branch to the supporting
link, the first row components of the b-link system are all
duplicated into the i-th row (which indicates a branching
joint) and the former rows.
The flow chart of the construction algorithm of themember length matrix is shown in Fig. 3. A supported link
and a supporting link between two connected links areindicated as the child link and the mother link, respectively.
The flow is summarized as follows.

(a) Dynamic equations(b) Parallel solution scheme

Figure 4 Estimation of torque curves3515

Removablebranch link

Mass

2
5

Joint 1

3

4

Passive
joint

Passivejoint(a) 4-joint closed-loop link system(b) 5-joint multibranch link system
Figure 5 Structure-varying link system(c) 5-joint multibranch link system with
passive joint at different positionof the obtained torque curves. As the branching joint isassumed to have two independent shafts (Joints 2 and 3),
two torque values are obtained at the joint. As shown in the
figure, the torque curves obtained by the two schemes arein good agreement with one another.
It is not impossible to derive the dynamic equations formore complex systems, although it is still difficult.
However, the complexity can be dealt with only byrevising the structural connectivity data for the parallel
solution scheme.

exchanges of forces at passive joints are handled in thevector fP n g , if necessary. Examples showing structuralconnectivity of link systems are described in the next
chapter.
C. Numerical Example
In this section, the joint torque curves of a simple
multibranch link system (length of each link: 0.4 m; linkweight: 0.215 kg; center of gravity at midpoint; mass at thetip: 0.5 kg) are calculated and compared in two different
ways; (a) dynamic equations derived by using the
Lagrangian method, and (b) the parallel solution scheme. A
0.5 π rad rotational motion in 1.0 s is given in thehorizontal plane. Fig. 4 shows the model and comparison

III.

CONTROL EXPERIMENTS ON MULTIBRANCH LINKSYSTEMS

Some control experiments are carried out on a
structure-varying link system as shown in Fig. 5, in order②⑤⑤
Link No.
①

②

③

Base

②

③

④

①

③

④

①

: active joint: passive joint: exchange of forces: mechanical dependency

Link 5

Link 5

Link 2

Link 3

Link 2

Link 1

Link 4

Link 1

Link 3
Link 2
Link 1

Link 3Base(a) 4-joint closed-loop link system

Base

Base
(b) 5-joint multibranch link system(c) 5-joint multibranch link systemwith passive joint at different position

Figure 6 Structural connectivity of structure-varying link system

3516

Link 4TABLE I.

Torque[Nm]

MOTOR DYNAMICS AND FEEDBACK GAIN
Parameters of motor dynamics

J [kgm2]

D [kgm2/s]

0.000384

fc [N]

0.000150.1

0.00015

Feedback gain values
KP [Nm/rad]

KI [Nm/rad]

KD [Nms/rad]

15.0

0.80

0.10

0

to verify the validity of torque values obtained by theparallel solution scheme, along with its flexibility againstchanges in structural connectivity. Link members are madeof duralumin, with its length being 0.142 m, 0.180 m(branch link), and its weight being 0.102 kg, 0.130 kg(branch link). A mass at the tip of the branch link weighs
0.1 kg. Gearless motors (Maxon RE40, weight: 0.534 kg)
are used in order to maximize the effect of the dynamics.
The input torque for motors is calculated using
ú= J q°d + Dq_d + fc + úI:D: + úf eedback ,：Joint 1：Joint 2：Joint 3

-0.1
0

1

2

Time[s](a) 4-joint closed-loop link system
Torque[Nm]

0.1

(7)

where J is the moment of inertia of motors, D the viscosity
coefficient of motors, fc the dynamic friction force, τI.D.
the input torque calculated by the parallel solution scheme,
and q_d and q°
d the target angular velocity and angularacceleration, respectively. τ feedback is the PID feedback
torque, which is obtained using

0：Joint 1：Joint 2：Joint 3
-0.1
0

3517

1

2

Time[s](b) 5-joint multibranch link systemúf eedback = KP (qd Ä q) + KI Ü(qd Ä q) + KD (q_d Ä q)
_ , (8)where q and q_ are the actual angle and angular velocity
acquired from the attached encoders, respectively. KP, KI
and KD are the feedback gain for the angle, the integrated
value and the angular velocity, respectively. These are
fixed to specific values throughout the experiments in orderto clarify only the effect of feed-forward torque. The
parameters of motor dynamics and feedback gain are
shown in Table 1.
The link system is controlled, first as a 4-joint closedloop link system, and then it is reconstructed to a 5-joint
multibranch link system to carry out the control, and thento a system with its passive joint at a different position, tocarry out the same routine. Fig. 6 shows the structuralconnectivity of the structure-varying link system, which isused in the construction of the member length matrix. A
solid line and an arrow indicate the mechanical dependency
between link members. For example, Link 3 and Link 5 areboth dependent on (or supported by) Link 2 in Fig. 6(b),since joint torques of Links 3 and 5 are added to those of
Link 2. A broken line and an arrow indicate the exchange
of forces between the link members, which can be handled
by the vector related to nodal forces, fP n g . Fig. 7 shows
the joint torque curves obtained by the parallel solution
scheme, when a 2-second swaying motion as shown in the
figure, is applied to each system configuration. Torquecurves vary between each figure, due to the change of the
dynamics of the system. In particular, we can confirm a：Joint 5

Torque[Nm]0.10：Joint 1：Joint 2-0.1：Joint 4：Joint 5012Time[s](c) 5-joint multibranch link system with
passive joint at different position
Figure 7 Joint torque curves obtained by the parallel solution scheme

reduction in maximum torque values when a passive joint
is placed near the branching joint and the mass.
Fig. 8 shows the control results for Joint 1. It is evident
that the feed-forward torque has a good effect on tracking
against the target trajectory, compared to the results
obtained only with feedback values. The performance is
all consistently and similarly improved, though the
dynamics of the link system is drastically changed. These
results confirm the validity of the torque values calculatedby the parallel solution scheme.

IV.

Angle[rad]A matrix-form equation for calculating torque values in
the parallel solution scheme is separated into terms ofdifferent parameters. The structural connectivity of linksystems, therefore, can be expressed explicitly by one of
the matrices, the member length matrix. Its construction
process is easy to implement in a program, and has highexpansibility and flexibility. The solution scheme may
demonstrate its flexibility in a fail-safe system, in suchcases where a sudden structural change of link systems
may occur.
One of the other terms in the matrix-form equation, thevector related to nodal forces, contains values with both
static and dynamic effects. Studies on force control andinverse dynamics calculations for flexible manipulators,
which can be developed by using this feature, are in
progress.

0

-0.2

-0.4

-0.6

：Target：FB：FB+FF

-0.8
0

1

2

CONLUDING REMARKS

3

Time[s](a) 4-joint closed-loop link system
Angle[rad]0

ACKNOWLEDGMENT
The authors would like to extend their appreciation forthe contributions of the former members of our laboratory,
Takeo Ueda, Daisaku Imaizumi, Youichi Chikugo andShunsuke Sato.

-0.2

-0.4

-0.6

REFERENCES：Target：FB：FB+FF

[1]

-0.8
0

1

2

3

Time[s][2](b) 5-joint multibranch link system
Angle[rad]

[3]

0

-0.2

[4]

-0.4

-0.6

[5]

：Target：FB：FB+FF

-0.8

[6]
0

1

2

3

Time[s](c) 5-joint multibranch link system with
passive joint at different position
Figure 8 Control results for Joint 1

3518

Y. Nakamura, “Dynamics computation of closed link robots andoptimization of actuational redundancy,” Trans. Society of
Instrument and Control Engineers, vol. 25, no. 5, 1989, pp.600–607,
in Japanese.
K. Sugimoto, “Deviation of equation of motion of closed loopmechanisms,” J. Robotics Society of Japan, vol. 15, no. 3, 1997,
pp.460–467, in Japanese.
Y. Nakamura and K. Yamane, “Dynamics computation of
structure-varying kinematic chains and its application to humanfigures,” IEEE Trans. Robotics and Automation, vol. 16, no. 2,
2000, pp.124-134.
D. Isobe, Y. Chikugo, D. Imaizumi, S. Sato and A. Yagi,“Feed-forward control of link mechanisms under various boundary
conditions by using a parallel solution scheme,” Proc. 2003
IEEE/RSJ International Conference on Intelligent Robots andSystems (IROS 2003), 2003, pp.2773-2778, Las Vegas U.S.A.
D. Isobe and D. Imaizumi, “A parallel solution scheme of inverse
dynamics for flexible manipulators,” Proc. IASTED International
Conference on Robotics and Applications (RA2003), 2003, pp.106111, Salzburg Austria.
N.M. Newmark, “A method of computation for structuraldynamics,” A.S.C.E. J. Engineering Mechanics, vol. 85, 1959, pp.
67-94.