Control of systems by parallel actuators
STEPHEN MONTGOMERY-SMITH
Department of Mathematics
University of Missouri, Columbia, MO 65211
U.S.A.
Abstract: We describe a particular control method for a system controlled by several actuators with the same
control constants. We show under certain assumptions that the control constants for the whole system can be
obtained immediately from the control constants for a single actuator, and that no gain scheduling is required.
Key-Words: Parallel actuator, linear control theory, Riemannian manifold, tangent space, cotangent space,
wrench set.
Received: May 18, 2021. Revised: March 7, 2022. Accepted: April 10, 2022. Published: May 4, 2022.
1 Introduction
In this paper, we describe a system whose state, which
we will call the end eector position, is given by an el-
ement of a dierential manifold η M. We suppose
that the end eector position is determined by the val-
ues of nactuators:
= (1, 2, . . . , n)Rn.(1)
We write L:M Rnfor the function which maps
the end eector position to the actuator values. Note
that we can allow the problem to be over-constrained,
that is, ncan be bigger or equal to the dimension of
M. Note that the elements of Mare generalized po-
sitions in the sense of the Euler-Lagrange formalism
[1].
Examples of these are cable-driven parallel robots,
consisting of a xed rigid frame, and a oating rigid
body called the end eector. The end eector is ma-
nipulated via eight cables attached to actuators. Each
actuator is clamped to the xed frame. The value,
k, of the kth actuator is the length of cable issued
by the actuator. The manifold Mis the six dimen-
sional space of poses, that is, positions with orienta-
tions. See [2, 3, 10] for an introduction to parallel
robots. See [8, 9] for information about cable-driven
parallel robots. The algorithm described in this paper
was tested upon a cable-driven parallel robot built by
the NASA Johnson Space Center, which we describe
in another paper [7].
We assume that the only measurements we can
take are the values of the actuators, and that the only
method of control is to command a force at each actu-
ator, which converts into a force on the end eector.
We assume that once the end eector force is known,
one can determine the trajectory of the end eector
via a frictionless, quadratic Hamiltonian system. The
force is a generalized force obeying the principle of
virtual work, and we will call it the end eector force.
The method of control is to calculate the end ef-
fector position using the actuator values. Then, from
the dierence of the actual end eector position from
the requested end eector position, is calculated the
required acceleration of the end eector. From this is
calculated the required end eector force. Finally, we
nd the actuator forces to eect this.
Our main contribution is to show that the control
constants for computing the required acceleration of
the end eector are the same as the control constants
used to control a single actuator, making it easier to
determine the control method. This result requires
two things. First that the actuator response is linear.
This would be violated if, for example, if there is sig-
nicant non-linear friction. Second, it requires that
the each actuator by itself can be controlled by the
same linear controller. For example, with the cable-
driven parallel robot, if there is signicant exing or
stretching of cables, this would require a dierent con-
trol method for each actuator because the orientations
and/or lengths of the cables arent necessarily identi-
cal.
Since the control constants can be found by con-
sidering a controller for a single actuator, then the
same control constants can be used irrespective of the
end eector position, that is, no gain scheduling is re-
quired. Thus the formula for resonant frequencies can
also be calculated from the resonant frequencies of a
single actuator.
We believe the methods and results in Sections 4
and 5, where we show that the control constants come
from those described in Section 3, are new. But it is
possible that these methods were developed in a com-
pletely dierent context, and that the author is simply
unaware of them.
2 Mathematical description of the
system
Denote by TηMthe tangent space of Mat η, by
TM=ηMTηMthe whole tangent space, and by
TM=ηMT
ηMthe cotangent space. See [6]
WSEAS TRANSACTIONS on SYSTEMS and CONTROL
DOI: 10.37394/23203.2022.17.24
Stephen Montgomery-Smith
E-ISSN: 2224-2856
207
Volume 17, 2022
for information on manifolds.
Given a position that is a function of time, η(t), we
have its velocity and acceleration which are functions
of time taking their values in TMgiven by
φ= ˙η, α = ˙φ. (2)
We dene the linear operator Λη:TηM Rnby the
directional derivative, which in local coordinates is
Ληθ=θ·dL(η)
.(3)
Often we simply write Λfor Ληwhen there is no con-
fusion.
Then, from the velocity φ, we can calculate the rate
of change of the actuator values:
˙
= Ληφ. (4)
We suppose that there is a linear operator T=Tη:
RnTM, which converts actuator forces f=
(f1, f2, . . . , fn)to the end eector force τ:
τ=Tηf.(5)
By the principle of virtual work, we have
φ·Tηf=˙
·f= Ληφ·f.(6)
Hence
Tη= ΛT
η.(7)
Next we describe the equations of motion. Sup-
pose that the system is given by a Lagrangian
l(η, φ) = 1
2Mη(φ, φ)v(η),(8)
where Mη=Mis a positive denite bilinear operator
on TηM. This includes kinetic energy of the actuators
1
2m0|˙
|2,(9)
where m0is the eective mass of the each actuator
(the notion of ‘eective’ is explained in Section 3 be-
low). In local coordinates we can describe Λand M
as matrices, then the kinetic energy of the actuators is
given by
1
2m0φTΛTΛφ, (10)
and so we must have that the matrix
Mm0ΛTΛ(11)
is positive semi-denite.
Solving the Euler-Lagrange equations [1], we ob-
tain the equations of motion
τ=Mα +µ(η),(12)
where in local coordinates
µ(η) = φ·Mη
η (φ, ·)
η v(η).(13)
We dene the no-load forces to be the actuator
forces if the actuators are not attached to the system,
that is, the Lagrangian is given simply by equation (9):
f0=m0¨
.(14)
Thus dierentiating equation (4), we obtain (in local
coordinates)
f0=m0Ληα+m0φ·dΛη
φ. (15)
For the example of the cable-driven parallel robot, the
cable tensions are given by
cable tensions =f0f.(16)
Next, we need inverse functions to Land T, which
we call Yand F. We dene the set of admissible ac-
tuator values,L Rn, to be the range of the func-
tion L. We suppose that we have a forward kinemat-
ics function, Y:L M, which is a left inverse to
L. Because of possible measurement errors, Yshould
produce decent answers even if the actuator values are
merely close to L. For example, this could be imple-
mented using the Newton-Raphson Method.
For the inverse function of T, we need some more
denitions. Given fb,f0Rn, we suppose that we
have a predened set Cfb,f0Rn. Here fbis the
command force required to overcome actuator resis-
tance such as back-EMF, f0is the no-load actuator
forces, and Cfb,f0is the set of those fsuch that it is
permissible to command forces f+fbto the actua-
tors.
Typically this is a convex set dened by a nite
number of linear constraints. For the example of
cable-driven parallel robots, we might say f Cfb,f0
if and only if the tensions in the cables, f0f, is
never below a given predened value, and the com-
mand forces ±(f+fb)dont exceed the actuator hard-
ware limits.
Then we dene the wrench set to be the set of
achievable forces:
W={(τ, fb,f0)TM × Rn×Rn:
f Cfb,f0such that Tf=τ}.(17)
We suppose that we have a function F:W × Rn×
RnRnthat provides a right inverse to the map
dened by Tin the following manner:
T(F(τ, fb,f0)) = τ, (18)
WSEAS TRANSACTIONS on SYSTEMS and CONTROL
DOI: 10.37394/23203.2022.17.24
Stephen Montgomery-Smith
E-ISSN: 2224-2856
208
Volume 17, 2022
such that
F(τ, fb,f0) Cfb,f0.(19)
Because there are more actuators than the number
of degrees of freedom (that is, the dimension of M,
computing the actuator forces in the last step is an
over-constrained problem. For the example of cable-
driven cable robots, there are many approaches in the
literature [4, 5, 8].
Finally we need a way to approximate the dier-
ence between two end eector positions by an ele-
ment of the tangent space. That is, there is a function
:M×M TMsuch that (η1, η2)is in Tη1M,
so that with respect to a ‘reasonable coordinate sys-
tem about η1that
η2η1+(η1, η2).(20)
For example, if Mis a Riemannian manifold, we
could dene it as the direction of a geodesic from η1
to η2. If Mis a Lie group, we could dene it as the
direction of a one parameter subgroup from η1to η2.
3 Control of a single actuator
Let denote actuator value, let fcbe the command
force given to a single actuator, and fbe the actual
force supplied by this actuator.
Each actuator has an eective no-load mass m0,
which is the ratio f/¨
when there is no load placed
upon the actuator.
For the remainder of this section, we suppose that
the actuator is carrying a passive load. We denote
by mto be the eective mass of the actuator with
this load. Thus no load corresponds to m=m0,
and we always have mm0. If the actuator is
clamped so that it cannot move, this corresponds to
m=, which is a mathematical idealization repre-
senting when the passive load is very large.
For the purpose of making the analogue of these
equations and the system controller equations clearer,
we shall replace the actuator actual and command
forces by actual and command accelerations
a=f
m=¨
ℓ, (21)
ac=fc
m.(22)
We look for a controller such that, given an actua-
tor value r, attempts to create a command accelera-
tion acsuch that the actual actuator value, , is close
to r.
First we describe an open-loop controller:
fc=m¨
r+k0˙
r,(23)
or
ac=¨
r+k0
m˙
r.(24)
We call k0the back-EMF constant, since for electric
motors this is a likely source of this term. This con-
troller fails badly if there is any drift or noise in the
system, because it makes no attempt to correct for er-
ror.
Next, suppose we also have a good homogeneous
closed-loop controller. Denote the vector containing
all time derivatives of order less than lof by
= [ℓ, ˙
ℓ, ¨
ℓ, . . . , (l1)]T.(25)
The controller is dened by appropriately sized con-
stant matrices A,B,C, and Das:
˙
x=Ax+B (26)
ac=Cx+D.(27)
By a good homogeneous closed-loop controller, we
mean that if this is used to control the passively loaded
actuator, then converges to 0in a manner that is ex-
peditious enough for our application.
An example is a PID controller
ac=(ki+kp+kd˙
),(28)
But it could be something more complex, such as a
cascaded controller, or a linear quadratic Gaussian
controller.
Note that if cable stretching or sagging plays a sig-
nicant role in the cable-driven parallel robot, then
this should be able to control a single actuator with
a cable with similar stretching or sagging characteris-
tics attached.
The results of this paper dont depend upon what
denition of ‘good’ we use. Our assertion is that the
parallel actuator driven robot controller behaves as
well as the single actuator controller.
We combine the open-loop and homogeneous
closed-loop controller to obtain a good closed-loop
feed-forward controller, that is, given a requested ac-
tuator value r, and its vector of derivatives
r= [r,˙
r,¨
r, . . . , (l1)
r]T,(29)
we nd the command acceleration acsuch that con-
verges to rin an expeditious manner. This can be cre-
ated by applying the homogeneous closed-loop con-
troller to
d=r(30)
d=r(31)
to obtain
˙
x=Ax+Bd(32)
ac=¨
r+k0
m˙
r+Cx+Dd.(33)
For example, with the PID controller it is
ac=¨
r+k0
m˙
r(kid+kpd+kd˙
d).(34)
WSEAS TRANSACTIONS on SYSTEMS and CONTROL
DOI: 10.37394/23203.2022.17.24
Stephen Montgomery-Smith
E-ISSN: 2224-2856
209
Volume 17, 2022
4 The controller for the system by
parallel actuators
For the controller, we introduce the state vector ξ,
which is a vector of elements from the tangent space,
with the same number of components as the state vec-
tor xdescribed in equation (26). We denote a matrix
multiplied by a vector of elements from the tangent
space as giving another vector of elements of the tan-
gent space as follows:
(Aξ)i:=
j
Ai,j ξj,(35)
where ξjmeans the jth component of ξ.
The control loop is as follows.
1. Obtain the requested end eector position ηr, and
compute the requested acceleration
αr= ¨ηr.(36)
2. Measure actuator values .
3. Calculate the actual end eector position:
η=Y().(37)
4. Find the dierence between the actual end ef-
fector position and the requested end eector po-
sition:
θd=(η, ηr)(38)
and compute the vector of derivatives
θd= [θd,˙
θd,¨
θd, . . . , θ(l1)
d]T.(39)
5. Calculate the command end eector acceleration:
˙
ξ=Aξ+Bθd(40)
αc=αr+Cξ+Dθd.(41)
For example, the PID controller would be:
αc=αr(kiθd+kpθd+kd˙
θd).(42)
6. Determine the command end eector force to be
applied to the end eector:
τc=µ+Mαc.(43)
7. Calculate the requested rate of change of the
lengths of the cables
˙
r= Λ(ηr)φr,(44)
and nd the resistance overcoming part of the
command force for the actuators
fb=k0˙
r.(45)
ηr
Controller
θd
+
αc
End eector
force
calculator
µ+M×
Actuator
command
calculator
F
τ
+
fp
Actuators
fc
Forward
kinematics
Y
d2
dt2
αr
Compute
no-load
actuator
force
f0
η
Rate of change
of actuator values
from end eector
position
fb
Figure 1: Block diagram of the controller for the robot
driven by parallel actuators.
WSEAS TRANSACTIONS on SYSTEMS and CONTROL
DOI: 10.37394/23203.2022.17.24
Stephen Montgomery-Smith
E-ISSN: 2224-2856
210
Volume 17, 2022
8. Use equation (15) to calculate the no-load actua-
tor forces.
f0=m0Ληα+m0φ·dΛη
φ. (46)
9. Determine whether (τc,fb,f0) W. If it is, cal-
culate part of the actuator forces using
fp=F(τc,fb,f0),(47)
and command the actuators with
fc=fp+fb.(48)
Otherwise, declare that the end eector is out of
its workspace, command the actuators to brake,
and quit.
10. Go back to Step 1.
Note that in Steps 6, 8, and 9, the quantities M,µ,
Λ,W, and Fare calculated from ηand φ, but they
could just as well be calculated from ηrand φr, the
only change required being to equation (38) to
θd= (ηr, η)(49)
The algorithm is shown as a block diagram in Fig-
ure 1.
5 Theoretical justication for the
controller
Assumption 1 The interaction between the command
force fc, the actual force f, and the actuator value
of a single actuator, is given by the linear system
f+c2˙
f+· · · +cnf(n1)
+k0˙
+k1¨
+· · · +kn(n+1)
=fc+ ˜c2˙
fc+· · · + ˜cpf(p1)
c.(50)
Note this linearity can be dicult to achieve if fric-
tion is signicant in the actuators. Friction is highly
non-linear, especially when ˙
and fswitch between
having the same sign and having dierent signs, as
could happen with an active load.
If the actuator has a passive load mas described in
Section 3, then equation (50) becomes
¨
+c2(3) +· · · +cn(n+1)
+k0
m˙
+k1
m¨
+· · · +kn
m(n+1)
=ac+ ˜c2˙ac+· · · + ˜cpa(p1)
c.(51)
The original open-loop controller was derived from
the assumption that equation (50) is a perfect descrip-
tion of the passively loaded actuator:
fc+ ˜c2˙
fc+· · · + ˜cpf(p1)
c
=m(¨
r+c2(3)
r+· · · +cn(n+1)
r)
+k0˙
r+k1¨
r+· · · +kn(n+1)
r,(52)
which in Section 3 was approximated with equa-
tion (23).
Assumption 2 For every m[m0,], equa-
tions (30),(31),(32) and (33) provide a good closed-
loop feed-forward controller for system (51).
This assumption can either be tested theoretically
using eigenvalue analysis, or experimentally by load-
ing various passive loads onto a single actuator. The
latter approach doesnt require any knowledge of the
coecients in equation (50). We simply need to be-
lieve that such an equation exists.
Assumption 3 The time scale of the corrections θd
is much smaller than the time change of ηr, and the
magnitude of θdand its derivatives are much smaller
than that of ηand its corresponding derivatives. This
means we can assume that the time derivatives of η
are negligible compared to η, and hence we can as-
sume the matrices M,F, and the covector µ, and
their derivatives, are constant in the time scales in
which the controller operates. We also assume that
equation (20) holds for time derivatives of both sides,
and that the constants are uniformly controlled in the
ranges achieved.
The main result of this paper, which we state be-
low, is described as an ‘assertion rather than a ‘theo-
rem, as the proofs are not very rigorous.
Assertion 1 Given Assumptions 1, 2, and 3, the algo-
rithm described in Section 4 is a good controller for
the parallel actuator driven robot.
Pick a time t0which is in the range of times in
which the controller performs the required correc-
tions. Let η0=η(t0). Dene
θ=(η, η0)(53)
θr=(ηr, η0).(54)
Thus
ηη0+θ(55)
ηrη0+θr,(56)
and if we set
φr= ˙η(57)
WSEAS TRANSACTIONS on SYSTEMS and CONTROL
DOI: 10.37394/23203.2022.17.24
Stephen Montgomery-Smith
E-ISSN: 2224-2856
211
Volume 17, 2022
then
φ˙
θ(58)
φr˙
θr,(59)
and we have
θdθθr.(60)
Let nMbe the dimension of M, and dene the
(nM×nM)matrix
N=M1ΛTΛ.(61)
Assertion 2 With the same assumptions as Asser-
tion 1, if the end eector is controlled by the algorithm
given in Section 4, then we have
¨
θ+c2θ(3) +· · · +cnθ(n+1)
+N(k0˙
θ+k1¨
θ+· · · +knθ(n+1))
αc+ ˜c2˙αc+· · · + ˜cpα(p1)
c(62)
where
αcˆαc+k0N˙
θr(63)
and ˆαcis calculated thus:
θd= [θd,˙
θd,¨
θd, . . . , θ(l1)
d]T(64)
˙
ξ=Aξ+Bθd(65)
ˆαc=αr+Cξ+Dθd.(66)
Proof: Rewrite equation (50) for the jth actuator:
fj+c2˙
fj+· · · +cnf(n1)
j
+k0˙
j+k1¨
j+· · · +kn(n+1)
j
=fc,j + ˜c2˙
fc,j +· · · + ˜cpf(p1)
c,j .(67)
From equations (4), (45), (47), (48), and (59), we ob-
tain
fc,j =Fj(τc,¯
fc) + k0Λ˙
θ, (68)
and applying T= ΛTwe obtain
Tfc=τc+k0ΛTΛ˙
θr.(69)
Similarly, from equations (4) and (58), we have
Tf=τ, (70)
where τis the actual end eector force, and
T˙
= ΛTΛ˙
θ. (71)
Hence from Assumption 3, we obtain
τ+c2˙τ+· · · +cnτ(n1)
+ ΛTΛ(k0˙
θ+k1¨
θ+· · · +knθ(n+1))
τc+k0ΛTΛ˙
θr+ ˜c2( ˙τc+k0ΛTΛ¨
θr)+
· · · + ˜cp(τ(p1)
c+k0ΛTΛθ(p)
r).(72)
Next, subtracting µ, and then left multiplying by
M1, and using Assumption 3 again, we obtain equa-
tion (62). The rest of the assertion follows by equa-
tion (60). Q.E.D.
Lemma 1 The matrix Nhas a basis of eigenvectors,
with eigenvalues in [0, m1
0].
Proof: Let
˜
N=M1/2ΛTΛM1/2.(73)
Clearly ˜
Nis symmetric and positive semi-denite,
and since Mm0ΛTΛis positive denite, we have
m1
0I˜
N=m1
0M1/2(Mm0ΛTΛ)M1/2
(74)
is positive denite. (Here Idenotes the (nM×nM)
identity matrix.) Hence ˜
Nhas a basis of eigenvectors,
with eigenvalues in [0, m1
0]. Also,
N=M1/2 ˜
NM1/2,(75)
and hence Nand ˜
Nare similar matrices. Q.E.D.
Proof of Assertion 1: We use Lemma 1 to obtain σ1,
σ2, . . . , σnMa basis of eigenvectors of N, with cor-
responding eigenvalues m1
1,m1
2, . . . , m1
nM, where
m1,m2, . . . , mnM[m0,]. We also form a dual
basis π1,π2, . . . , πnMthat satises
σi·πj=®1if i=j
0if i=j,(76)
so that for any ψRnMwe have
ψ=
nM
i=1
(ψ·πi)σi(77)
πi·Nβ =m1
i(πi·β).(78)
By Assumption 3, we can assume that all these vectors
and eigenvalues are constant. For each 1inM,
dot product the equations in Assertion 2 by πi. Then
it may be seen that the resulting equations satisfy the
hypotheses of Assumption 2, with yreplaced by θ·πi,
with yrreplaced by θr·πi, and with mreplaced by mi.
Thus θ·πiis well controlled by θr·πi.
Then it follows by equation (77) that θis well con-
trolled by θr. Therefore by equations (55) and (56),
we have that ηis well controlled by ηr. Q.E.D.
WSEAS TRANSACTIONS on SYSTEMS and CONTROL
DOI: 10.37394/23203.2022.17.24
Stephen Montgomery-Smith
E-ISSN: 2224-2856
212
Volume 17, 2022
References:
[1] V.I. Arnold, Mathematical Methods of Classical
Mechanics, 2nd Ed, Springer-Verlag, 1989.
[2] Jaime Gallardo-Alvarado, Kinematic Analysis
of Parallel Manipulators by Algebraic Screw
Theory, Springer, Switzerland, 2016.
[3] Grigore Gogu, Structural Synthesis of Parallel
Robots, Springer, The Netherlands, 2008.
[4] Nicholas I. M. Gould, Philippe L. Toint, (2000).
A Quadratic Programming Bibliography (PDF).
RAL Numerical Analysis Group Internal Report
2000-1.
[5] Marc Gouttefarde, Johann Lamaury, Christo-
pher Reichert, and Tobias Bruckmann, A Versa-
tile Tension Distribution Algorithm for n-DOF
Parallel Robots Driven by n+ 2 Cables, IEEE
Transactions on Robotics, Vol. 31, no. 6, 2015.
[6] John Lee, Introduction to Smooth Manifolds.
Graduate Texts in Mathematics. 218 (Second
ed.). New York London: Springer-Verlag. ISBN
978-1-4419-9981-8. OCLC 808682771, 2012.
[7] Stephen Montgomery-Smith, Cecil Shy, Joshua
Sooknanan, Derek Bankieris, Tension control of
Cable-Driven Parallel Robots, in preparation.
[8] Andreas Pott, Cable-Driven Parallel Robots:
Theory and Application, Springer, 2018.
[9] Sen Qian, Bin Zi, Wei-Wei Shang and Qing-
Song Xu, A Review on Cable-driven Parallel
Robots, Chinese Journal of Mechanical Engi-
neering volume 31, Article number: 66 (2018).
[10] Hamid D. Taghirad, Parallel Robots: Mechanics
and Control, CRC Press, 2013.
Contribution of individual authors to
the creation of a scientic article
(ghostwriting policy)
Stephen Montgomery-Smith is responsible for the en-
tire paper.
Creative Commons Attribution
License 4.0 (Attribution 4.0
International , CC BY 4.0)
This article is published under the terms of the
Creative Commons Attribution License 4.0
https://creativecommons.org/licenses/by/4.0/deed.en_US
WSEAS TRANSACTIONS on SYSTEMS and CONTROL
DOI: 10.37394/23203.2022.17.24
Stephen Montgomery-Smith
E-ISSN: 2224-2856
213
Volume 17, 2022