1
Dynamic Endpoint Object Conveyance Using a
Large-Scale Actuator Network
Martin Sinclair, Ioannis A. Raptis
Department of Mechanical Engineering, University of Massachusetts Lowell
Email: {Martin Sinclair, Ioannis Raptis}@uml.edu
Abstract
Large-Scale Actuator Networks (LSAN) are a rapidly growing class of electromechanical systems. A prime
application of LSANs in the industrial sector is distributed manipulation. LSAN’s are typically implemented using:
vibrating plates, air jets, and mobile multi-robot teams. This paper investigates a surface capable of morphing its
shape using an array of linear actuators to impose two dimensional translational movement on a set of objects.
The collective nature of the actuator network overcomes the limitations of the single Degree of Freedom (DOF)
manipulators, and forms a complex topography to convey multiple objects to a reference location. A derivation of the
kinematic constraints and limitations of an arbitrary multi-cell surface is provided. These limitations determine the
allowable actuator alignments when configuring the surface. A fusion of simulation and practical results demonstrate
the advantages of using this technology over static feeders.
I. INTRODUCTION
Large-Scale Actuator Networks (LSANs) are systems that are comprised of interconnected and spatially
distributed simplistic actuators. These actuators work as a collective to complete global objectives that are
far beyond the capabilities of the individual components. By using these systems, the need for expensive
and complex single purpose mechanisms is becoming obsolete. The cooperative nature of the network
provides a robust and scalable mechanism that is capable of functioning despite the failure of individual
elements.
The predominant application of LSANs is distributed manipulation. This field involves the conveyance
of objects using a large number of individual manipulators. Many different types of actuators have been
used in the development of scalable distributed manipulators. The individual components that create an
LSAN are typically simplistic actuators, i.e. air jets or linear/rotary actuators. Recent advances in MEMS
(Micro Electro Mechanical Systems) technology led to the inexpensive fabrication of micro manipulators;
allowing the placement of large number of actuating elements in smaller areas. This high manipulator
density results to improved actuation resolution.
There are many examples of the current state of the art in the field of distributed manipulation. A
typical example is vibrating plates part feeders reported in
[1]–[5]. Vibratory feeders utilize inclined
vibrations to transport parts along a track. In [1], [2] parallel manipulation of multiple parts (translation
and orientation) is achieved by a single vibrating plate. Programmable vector techniques for vibratory part
feeders and MEMS actuator arrays have been extensively studied in [3], [6], [7]. These works present
an analytic derivation of an artificial force field method that utilize a massive number of microscopic
actuators (‘motion pixels’) in order to apply frictional forces that transport and rotate planar objects to
pre-defined locations. MEMS micro-actuators designed for micro manipulation are further investigated
in [8], [9]. These systems implement a very large number of actuators to generate even small motions.
The work in [10] presents “Polybot”, a modular system used to move non-planar objects by using cilia
out-of-plane manipulators.
Air-jets have been successfully implemented to direct objects as shown in [10]–[16]. Air-jet conveying
is preferred for handling objects that are too fragile for traditional part feeders [10], [16], [17] or easily
contaminated
[15]. These systems implement static and dynamic potential flow fields
[13], [14]. The
implementation of sinks to control a single object in a fixed plane was investigated in [11].
arXiv:1604.04659v1  [cs.RO]  15 Apr 2016
2
Conveyor belts is one of the most common methods to transport parts to a target location. The system
detailed in [18] uses a single joint robot to move and orient parts in a speed conveyor belt. Conveyor
systems are often limited to a small number of final exit locations. An array of wheels was used to
provide the force for transporting an object with distributed manipulation in
[?]. Investigation of the
implementation and development of an array of soft and compliant actuators to move fragile objects
is shown in
[20]. Part feeding on a surface with frictional contacts using protrusions is presented in
[21]. Other distributed manipulable surfaces are investigated in [22] with a focus on maintaining a level
platform despite changing ground conditions. The surface in
[23] changes it shape to drive objects in
a single axis. The use of a morphing surface as a means to display 3D objects is shown in [24]. Self-
organized systems of actuator networks are investigated in [5] with a focus on controlling networks of
up to 10,000 nodes.
This paper presents a morphing surface that autonomously adjusts its shape to transport an arbitrary
number of objects to a variable reference location. The reconfiguration of the surface’s shape is controlled
by a grid of vertical linear actuators that adjust its height at given points in space. The multi-actuator
grid results to a mess of interconnected rectangular flat cells that can adjust locally their inclination. This
inclination transports the objects that lie on top of the cell by regulating their weight components.
A detailed analysis of the surface kinematics and object dynamics is provided. This analysis includes an
explicit derivation of the constraint equations that apply to the surface and determines the total number of
available independent control inputs of the system. In addition, the objects equations of motion reveal how
the multi-actuator input controls a multi-task process governed by continuous dynamics. This analysis was
used to design control schemes that are sympathetic to the physical constraints of the system. The main
contribution of this work is the design of computationally efficient, low complexity control algorithms
that comply with the physical constraints of the mechanism and are scalable to systems with a large
number of actuators. To validate the applicability of this approach, a prototype system was developed.
The prototype demonstrated how simplistic and computationally attractive control algorithms combined
with minimalistic hardware can be used to transport objects to multiple directions of the workspace as
might be needed on automated assembly lines or in automated warehouses.
This paper is organized as follows: Section II provides a detailed mathematical description of the
morphing surface. The kinematic analysis of a single cell is given in III. The same Section outlines a
preliminary control law for transporting objects over a single cell. The kinematic description of a multi-
cell surface is given in Section IV. The control algorithms that govern the transportation of multiple
objects over an arbitrary surface are described in Section V. A description of a prototype surface that
was developed to validate the applicability of the proposed mechanism is given Section VI. Finally, both
experimental and simulation results are presented in Section VII. Concluding remarks are given in Section
VIII.
II. SYSTEM DESCRIPTION
A. Mathematical Notation
The abbreviations Ct, St and Tt with t ∈R represent the trigonometric functions cos(t), sin(t), and
tan(t), respectively. The superscript T indicates the transpose of a vector or matrix. The operands || · ||,
| · | denote the Euclidean norm and the | · |1 norm of a vector, respectively.
B. Overview
The system being studied is composed of an array of cells that form a three dimensional (3-D) surface.
Each cell is defined by the tips of four linear actuators that shape at every time instant a 2D tetrahedron
(parallelogram) in space. By constraining each cell to form a flat surface, the complexity of the overall
system model is reduced. The actuators are normal to the global inertial plane and are justified in an
ordered array (grid). The seam between two adjacent cells was ignored in the model since each cell is
treated as a two dimensional (2-D) object.
3
OI
⃗iI
⃗jI
⃗kI
Figure 1.
The inertial reference frame for an arbitrary surface S (n, m).
Each cell is an element of the grid that is uniquely defined by its row and column. For a grid with
n columns and m rows, the surface is denoted as S (n, m). Given these dimensions, the total number of
cells that make up the surface is n × m. Let R = {1, . . . , m} and C = {1, . . . , n} denote the row and
column set, respectively. A cell entry in the surface located at the I ∈R row and J ∈C column of the
grid is denoted by CI,J.
The coordinates of the actuators were determined with respect to an inertial fixed frame with its origin
located at the lower left actuator of the cell C1,1 when the actuator is retracted to its minimum length. The
maximum length of a actuator is denoted by l. The inertial frame remains stationary while the actuators
change their length with time. The inertial frame is defined by its origin and three orthonormal vectors,
hence FI =
n
OI,⃗iI,⃗jI,⃗kI
o
. The directions of the vectors ⃗iI and ⃗jI can be seen in Figure 1, while ⃗kI
points upward such that
n
⃗iI,⃗jI,⃗kI
o
constitutes a right handed Cartesian coordinate frame

⃗kI =⃗iI ×⃗jI

.
Let W and L denote the distances between two adjacent actuators on each side of a cell measured in the
inertial plane [⃗iI,⃗jI]. The coordinates of the four actuator tips of cell CI,J are:
P I,J
1
=


(I −1) · W
(J −1) · L
ZI,J
1


P I,J
2
=


I · W
(J −1) · L
ZI,J
2


P I,J
3
=


I · W
J · L
ZI,J
3


P I,J
4
=


(I −1) · W
J · L
ZI,J
4


(1)
In the above equation ZI,J
i
, for i = 1, . . . , 4, stands for the coordinate (length) of the P I,J
i
actuator tip
in the ⃗kI direction of the inertial frame. In order for the object to be transported over the surface, the
actuators must form a flat plane at all time instances. With this constraint, the tips of the actuators will
satisfy the following determinant:

h
P I,J
4
iT
−
h
P I,J
1
iT
h
P I,J
4
iT
−
h
P I,J
2
iT
h
P I,J
4
iT
−
h
P I,J
3
iT

= 0
(2)
The above relation holds for any four points that belong to the same flat plane. The enumeration of
each cell’s actuators starts from the south-west actuator and continuous in a counter clockwise manner.
Substituting the coordinates given in (1) into (2), yields the following equation:
ZI,J
3
= −ZI,J
1
+ ZI,J
2
+ ZI,J
4
(3)
4
⃗iI
⃗kI
⃗jI
⃗iCI,J
⃗kCI,J
⃗jCI,J
OI
OCI,J
Figure 2.
The two reference frames (FI and FCI,J) for a single cell configuration.
This relation shows that the height of one of the four actuators of each cell is constrained by the height
of the other three. In reality each actuator is regulated using a motor that determines its motion response.
Let ZI,J
i,com denote the control signals that command the desired length for each of the four linear actuators
within a cell. The response of each actuator can be represented satisfactory by a first order differential
equation, thus:
τ ˙Zi
I,J + ZI,J
i
= ZI,J
i,com with i = {1, ..., 4}, I ∈C, J ∈R
(4)
where τ is a positive number that represents the time constant of the actuator’s motor. A large τ corresponds
to a slow actuator. For the sake of simplicity, in the subsequent analysis it will be assumed that ZI,J
i
is
the same with ZI,J
i,com which allows the actuator dynamics to be disregarded.
III. SINGLE CELL KINEMATICS AND CONTROL
A. Cell Kinematics
To derive the kinematic equations for the cells, a second frame of reference is defined. This frame of
reference is denoted FCI,J = {OCI,J,⃗iCI,J,⃗jCI,J,⃗kCI,J} with its center OCI,J attached rigidly to the cell
CI,J. The orthonormal vectors ⃗iCI,J, ⃗jCI,J change their orientation with time such that they constantly lie
on the surface. When all the actuators are leveled, the frames FI and FCI,J are aligned to each other. The
orientation of cell CI,J at any time may be obtained by performing three consecutive rotations of FI until
the frame is aligned with FCI,J.
The orientation of FCI,J is produced by first rotating FI an angle φI,J about the axis ⃗iI, then rotating
by an angle θI,J about ⃗jI, and finally, rotating an angle ψI,J about the axis ⃗kI. Using this convention, the
angles φI,J,θI,J, and ψI,J are commonly denoted as roll, pitch and yaw angles. Positive direction of each
angle is defined by the right-hand rule with respect to the associated axis. Since the cell does not rotate
about ⃗kI we have ψI,J = 0.
The rotation matrix is a systematic way to express the relative orientation of the two frames. The rotation
matrix RI,J is parametrized with respect to the three angles: roll (φI,J), pitch (θI,J), and yaw (ψI,J) and
it maps vectors from the cell fixed frame FCI,J to the inertia frame FI. Considering that ψI,J = 0 it can
be seen that:
RI,J =


CθI,J
SθI,JSφI,J
CφI,JSθI,J
0
CφI,J
−SφI,J
−SθI,J
CθI,JSφI,J
CθI,JCφI,J


(5)
When the rotation matrix is parametrized by the roll-pitch-yaw angles, singularities occur at θI,J = ±π/2.
In this system these singularities are not observed since the actuator limited lengths prevent the surface
from extending to this extreme orientation.
5
The orientation of each cell is changed by controlling the four corner actuators. By construction, the
columns of the orientation matrix express the coordinates of the basis vectors {⃗iCI,J,⃗jCI,J,⃗kCI,J} with
respect to the inertial frame. Thus:
RI,J =
 iI
CI,J
jI
CI,J
kI
CI,J

(6)
In the above equations, the superscript indicates the reference frame that the basis vector is expressed
with respect to. Therefore, in order to associate ZI,J
1 , ZI,J
2
and ZI,J
3
with φI,J, θI,J it is necessary to
express the right-hand side of (6) with respect to the actuator tip coordinates and then equate the entries
of (5) with (6). The first step is to define the basis vectors of FCI,J. By definition, the basis vectors ⃗iCI,J,
⃗jCI,J of the cell-fixed frame lie in the cell’s plane. This plane can be uniquely defined by the two vectors
ιI =

W
0
ZI,J
2
−ZI,J
1
Tand ηI =

0
L
ZI,J
4
−ZI,J
1
T. These vectors are also the two sides of
the cell that connect actuators 1 and 2 and actuators 1 and 4. Since the two vectors are not orthonormal
for every ZI,J
i
∈
 0
l 
with i = 1, . . . , 4, the basis vectors for the cell-fixed frame have to be defined
by using the unit vector iI
CI,J = ιI/||ιI||. By definition ⃗kCI,J is normal to both ⃗ι and ⃗η, thus by choosing
kI
CI,J = κI/||κI|| with:
κI =
h
ZI,J
1
−ZI,J
2
W
ZI,J
1
−ZI,J
4
L
1
iT
(7)
the system satisfies the condition ιI ·
�κIT = ηI ·
�κIT = 0. Equating the (1,1), (3,1) and (2,3), (3,3)
components of RI,J, the following kinematic relations can be derived:
SθI,J = ∆ZI,J
1
W
CθI,J
(8)
−SφI,J = ∆ZI,J
2
L
CθI,JCφI,J
(9)
where ∆ZI,J
1
= ZI,J
1
−ZI,J
2
and ∆ZI,J
2
= ZI,J
1
−ZI,J
4 . These equations are used to relate the coordinates
of the actuator tips with the orientation angles of the plane to determine the total number of available
independent control variables.
B. Object Dynamics
The object’s position with respect to the inertial frame is denoted by pI=
 x
y
z T ∈R3. The motion
analysis is restricted over a single cell surface (S(1, 1)). As the relations derived in this Section refer to
all cells, the indices that correspond to the cell number are dropped (I, J). The net forces applied to the
object with respect to the inertial frame are denoted by ΣF I. From Newton’s second law, the equations
of motion for the object are:
m¨pI = ΣF I
(10)
where m is the mass of the object. The object on top of the surface is subject to three forces: i) the
components of the object’s weight that lie on the surface plane, ii) the friction that opposes the object’s
motion, and iii) the reaction force from the surface that is normal to the plane, facing upward. The object
dynamics are manipulated by changing the orientation of the surface using the actuators. The weight of
the object (expressed in the inertial frame) is W I = −
 0
0
mg T . Using (5), the weight components
in the cell-fixed frame are given by:
W C = RTW I = mg
 Sθ
−CθSφ
−CθCφ
T
(11)
The reaction from the surface to the object is opposite and equal to the weight component in the ⃗kC
direction, thus:
N C = mg
 0
0
CθCφ
T
(12)
6
W
2
W
2
∆Z1
2
∆Z1
2
⃗kI
⃗iI
OI
θ
WCθCφ
WCθCφ
b ˙x
WSθ
W
P1
P2
l
2
L
2
L
2
∆Z2
2
∆Z2
2
⃗kI
⃗jI
OI
−φ
WCθCφ
WCθCφ
b ˙y
WCθSφ
W
P1
P4
l
2
Figure 3.
The two side views of a single cell with the force components that act on the object.
Finally, the friction force from the surface opposes the motion of the object and is modeled as:
F C = −bvC
(13)
where b > 0 is the friction coefficient and vC ∈R3 is the velocity of the object expressed in the object-
fixed frame. The component of vC in the ⃗kC direction is zero since the object always lies on the surface.
Using Newtons second law, it is easy to show that F I = −bvI where vI =
 ˙x
˙y
˙z T ∈R3 is the
object’s velocity expressed in the inertial frame. The components of the three forces applied to the object
are illustrated in Figure 3. Substituting (11)-(13) to (10) one has:


¨x
¨y
¨z

= g


CθC2
φSθ
−CθCφSφ
C2
θC2
φ −1

−b


˙x
˙y
˙z


(14)
C. Elementary Reference Point Control
This Section describes a control algorithm that autonomously transports the object to a reference location
of a single cell with inertial coordinates
�xI
r, yI
r

. The reference coordinate in the ⃗kI directions is of no
importance since the object’s zI coordinate is constrained by the surface orientation. The feedback law is
translated into height differences of the four actuators’ lengths.
To proceed with the analysis of the control law, we make a coordinate change to the error variables
ex = xI −xI
r and ey = yI −yI
r. From (14) the error dynamics become:
¨ex + b˙ex + C2
θC2
φ
g
W ∆Z1 = 0
(15)
¨ey + b˙ey + C2
θC2
φ
g
L∆Z2 = 0
(16)
where ∆Z1 = Z1 −Z2 and ∆Z2 = Z1 −Z4. The term C2
θC2
φ lies in the
� 0
1 
interval since θ, φ ∈
� −π/2
π/2 
. Therefore, the error dynamics are described by two identical second order nonlinear
differential equations with positive parameters. Any feedback law of the position error can achieve the
control objective. Due to the limitation of the actuator lengths, we chose the following saturated feedback
functions:
∆Z1 = KxsatW ex
∆Z2 = KysatL ey
(17)
where Kx, Ky, Mx and My are positive constants. The saturation function satM (·) is defined as:
satM(x) =
(
x
|x| ≤M
sign(x) · M
else
Elementary Lyapunov stability arguments can show the convergence of the above control law. The final
step is to configure the actuator lengths based on the values of ∆Z1 and ∆Z2. The following choice for
7
Z1
Z4
Z2
Z3
K1
K2
K3
K4
L
L
W
θk, φk
θz, φz
(a) S(1, 2)
Z1
Z4
Z2
Z3
K1
K2
K3
K4
L
W
θk, φk
θz, φz
W
(b) S(2, 1)
Figure 4.
Two-cell configurations (vertical and horizontal).
the actuators tips will guarantee that the surface will orient about the axis that lie in the midpoints of the
width and length of the cell:
Z1 = l
2 + ∆Z1
2
+ ∆Z2
2
Z2 = l
2 −∆Z1
2
+ ∆Z2
2
Z3 = l
2 −∆Z1
2
−∆Z2
2
Z4 = l
2 −∆Z1
2
+ ∆Z4
2
The motion of the object is damped by the friction coefficient b. However, even the in the absence of
friction the above controller can guarantee that
�xI, yI
→
�xI
r, yI
r

. To inject additional damping to
the object’s motion, a velocity feedback term may be added to the control inputs. To re-ensure that the
actuators’ tips lie in
 0
l 
interval the control inputs are bounded by |∆Z1| , |∆Z2| ≤l/2. Therefore,
the feedback gains are limited to Kx ≤l/2W and Ky ≤l/2L.
IV. MULTI-CELL KINEMATICS
A. Multi-Cell Constraints
Each individual cell of a S(n, m) morphing surface has two Degrees of Freedom (DOF) and may
transport the object by changing its pitch and roll. Since adjacent cells share a common pair of actuators,
at any given point in time, the length of the actuator tips for each cell has to additionally satisfy (3) so
that the surface has no discontinuities. This requirement reduces the total DOF for the system.
To provide a systematic derivation of the total constraints in an arbitrary S(n, m) surface, we initially
examine the two most simple cases involving a pair of cells arranged in either a vertical or horizontal
configuration.
1) Vertical Configuration: In the S(1, 2) configuration shown in Figure 4-(a), the two adjacent cells are
constrained by the shared pair of actuators on their common side. Therefore, adjacent cells have the same
height profile along their shared side. For simplicity the two cell are denoted by CZ and CK, respectively.
It can be seen from Figure 4-(a) that Z4 = K1 and Z3 = K2 since they correspond to the same points
in space. Since (3) holds true for both cells:
K2 −K1 = Z3 −Z4 = Z2 −Z1
(18)
Rearranging the terms of (8), the pitch angle θ of each cell can be expressed in terms of the actuator
heights of the common side. More specifically:
Tθz = Z1 −Z2
W
Tθk = K1 −K2
W
(19)
Substituting (18) into (19) provides a direct relationship between the pitch orientation of the two adjacent
cells:
TθZ = TθK →θZ = θK
(20)
8
θ1,1, φ1,1
C1,1
θ2,1, φ2,1
C2,1
θ1,2, φ1,2
C1,2
θ2,2, φ2,2
C2,2
Figure 5.
A S(2, 2) surface in a square configuration
This constraint means that two cells that are aligned vertically must share the same pitch angle θ. Since
there are no limitations in the roll orientation of each cell, the S(1, 2) surface has three DOF.
2) Horizontal Configuration: The horizontal configuration of S(2, 1) shown in Figure 4-(b), shows that
Z2 = K1 and Z3 = K4. Since both cells are required to form a continuous surface, application of (3)
yields:
Z2 −Z3 = Z1 −Z4 = K1 −K4
(21)
Combining (9) with (21), the relationship between the pitch and roll angles and the common-side actuators
can be derived as:
TφZ
CθZ
= Z1 −Z4
L
TφK
CθK
= K1 −K4
L
(22)
From (21) and (22) a nonholonomic constraint is derived that relates the orientation between adjacent
cells:
TφK
CθK
= TφZ
CθZ
(23)
The S(2, 1) surface has has four independent generalized coordinates describing the orientation of the
system (θZ,φZ, θK and φZ) and one constraint given in (23). Similar to the previous case, this results in
a system with three DOF.
3) Square Configuration: The two constraint in both directions of the grid will be combined to an
illustrative example for the case of a square S(2, 2) surface as shown in Figure 5. From the vertical
alignment:
Tθ1,1 = Tθ1,2
−→
θ1,2 = θ1,1
Tθ2,1 = Tθ2,2
−→
θ2,2 = θ2,1
(24)
The constraints equations due to the horizontal placement are:
Tφ1,1
Cθ1,1 =
Tφ2,1
Cθ2,1
−→
Tφ2,1 =
Cθ1,1
Cθ2,1 Tφ1,1
Tφ1,2
Cθ1,2 =
Tφ2,2
Cθ2,2
−→
Tφ2,2 =
Cθ1,1
Cθ2,1 Tφ1,2
(25)
In total, there are eight generalized coordinates determining the orientation of the S(2, 2) surface. Due
to the constraints of the neighboring cells, the total number of DOF drops to four. It becomes apparent that
the control resources available to manipulate the surface are a common pitch angle for every column, and
a common roll angle for every row. Every independent pitch and roll inclination translates to a difference
∆ZI,J
1
= ZI,J
1
−ZI,J
2
and ∆ZI,J
2
= ZI,J
1
−ZI,J
4
of the actuators’ heights, respectively.
9
Φ1, ∆Z1
2
⃗iI
⃗jI
CI,J
θI,J = ΘI
φI,J = arctan
CΘI
CΘ1

TΦJ
∆ZI,J
1
=∆ZI
1
∆ZI,J
2
=∆ZJ
2
ΘI
∆ZI
1
Θn
∆Zn
1
Θ1
∆Z1
1
ΦJ, ∆ZJ
2
Φm, ∆Zm
2
Figure 6.
This Figure illustrates the independent control variables for each cell and the constraints of the orientation angles.
4) Arbitrary Configuration: The available DOF for a generic S(n, m) surface is determined by the total
number of control inputs available to the system. From the vertical configuration described above:
TθI,J = TθI,1∀I ∈C, J ∈R →θI,J = θI,1 = ΘI
(26)
The nonholonomic constraint between roll angles in the horizontal configuration has a dependency on the
pitch angles which gives the relationship:
TφI,J
CθI,J =
TφI+1,J
CθI+1,J
−→
TφI+1,J =
CΘI+1
CΘI TφI,J
(27)
Through iterative calculations it can be shown that for every row of the grid:
TφI,J = CΘI
CΘ1
TΦJwhere ΦJ = φ1,J and I ∈{2, . . . , n} , J ∈R
(28)
From (26) and (27), it can be seen that the pitch and roll angles of any cell CI,J in an arbitrary surface
S(n, m) can be written as a function of a single row of n pitch angles ΘI (with I ∈C) , and a single
column of m roll angles ΦJ (with J ∈R) . More precisely, for every cell CI,J:
θI,J = ΘI
(29)
φI,J = arctan
CΘI
CΘ1
TΦJ

(30)
These relationships show that the total DOF for the surface are n + m. More specifically, there are
2 · n · m generalized coordinates and 2 · n · m −n −m constraints for the rotational motion of the
surface. The DOF dictate the number of independent coordinates that are needed to completely define
the orientation of the surface. The inclination of each cell CI,J is determined by the actuators’ height
differences ∆ZI,J
1
= ZI,J
1
−ZI,J
2
and ∆ZI,J
2
= ZI,J
1
−ZI,J
4 . The constraints of (26) and (27) can be
expressed with respect to the height differences ∆ZI,J
1
and ∆ZI,J
2
of each cell. Hence, for every I ∈C
and J ∈R:
∆ZI,J
1
= ∆ZI,1
1
= ∆ZI
1
(31)
∆ZI,J
2
= ∆Z1,J
2
= ∆ZJ
2
(32)
where ∆ZI
1 = ZI,1
1
−ZI,1
2
and ∆ZJ
2 = Z1,J
1
−Z1,J
4 .
The control algorithm is designed to coordinate the values of the n+m control inputs ∆ZI
1 (I ∈C) and
∆ZJ
2 (J ∈R) such that all of the objects on the surface are transported to the reference cell CIr,Jr. The
spatial distribution of the available independent control variables and the constraints in the orientation of
each cell can be viewed in Figure 6.
10
−al
2
al
0
0
CIr,Jr
−al
2
−bl
2
−bl
2
0
0
⃗iI
⃗jI
Figure 7.
Example of the calculation of the sets ¯C and ¯R for an S(5, 4) surface. These sets are illustrated by the lightly shaded rows
and columns. The dots represent the location of the objects on the surface. The reference cell is CIr,Jr = C3,1. The horizontal and vertical
numerical entries show the values of ∆ZI
1 and ∆ZJ
2 for the distributed allocation control algorithm.
V. MULTI-CELL CONTROL
In Section IV it was shown that a surface S(n, m) has n + m DOF, each of which must be specified
to uniquely define the overall surface orientation. The objective of the control algorithm is to allocate
these DOF in a manner which allows the system to achieve the global goal of moving all objects to the
reference cell CIr,Jr most efficiently.
The control law accomplishes its task by changing ∆ZI
1 = ZI,1
1
−ZI,1
2
(I ∈C) and ∆ZJ
2 = Z1,J
1
−
Z1,J
4 (J ∈R) defined in Section III-A. Initially, the height of the target cell is leveled to attain the lowest
potential energy. The heights of the rest of the cells are set to be proportional to the distribution of objects
between the target cell and the external boundaries of the surface. Two variations of this general logic
have been explored and are described in detail. The final step of the collective control law is to translate
the inclinations of the cells to height adjustments of the individual actuators of the grid.
A. Distributed Allocation Control Logic
The rational behind this control algorithm is to maximize the utilization of the actuators’ limited heights
by distributing the inclination of the surface over only the rows and columns that contain objects. It is
hypothesized that a dynamic height adjustment will result to faster convergence time than using a static
feed with fixed inclination.
The first step of this algorithm determines the column and row sets ¯C ⊂C and ¯R ⊂R, that correspond
to cells that contain objects. Each of these two sets is further broken down into two subsets:
¯Cl =

I ∈¯C|I < Ir
	
¯
Rd =

J ∈¯R|J < Jr
	
¯Cr =

I ∈¯C|I > Ir
	
¯
Ru =

J ∈¯R|J > Jr
	
(33)
If ¯Cl, ¯Cr and ¯Rd, ¯Ru denote the cardinality of ¯Cl, ¯Cr and ¯
Rd, ¯Ru, respectively, then the desired actuator
height changes ∆ZI
1 (I ∈C) and ∆ZJ
2 (J ∈R) are given by:
∆ZI
1 =





a l
¯Cl
if I ∈¯Cl
−a l
¯Cr
if I ∈¯Cr
0
else
∆ZJ
2 =





b l
¯Rl
if I ∈¯
Rd
−b l
¯Rr
if I ∈¯
Rr
0
else
where a and b are positive percentiles such that a + b = 1.
Since the total length of the actuators is fixed, the constants a and b represent the percentile of the
total height that is allocated on the ⃗ii and ⃗ji directions of the surface. After the height differences are
calculated, the individual actuator lengths are updated starting with ZIr,Jr
i
= 0 for i = 1, . . . , 4. It is
important to note that the sets ¯C and ¯R change with time as objects are transported about the surface. An
example illustrating the calculation of ∆ZI
1 and ∆ZJ
2 for an S(5, 4) surface at a given time instant can
be viewed in Figures 7, 8 and 9. Using this control scheme, it is possible to allot the inclination of the
surface evenly to all objects, without wasting available height for empty cells.
11
al
C1,J
C2,J
C3,J
C4,J
C5,J
⃗iI
⃗kI
Figure 8.
Side view in the ⃗iI direction of the S(5, 4) surface using the distributed allocation control law.
bl
CI,1
CI,2
CI,3
CI,4
⃗jI
⃗kI
Figure 9.
Side view in the ⃗jI direction of the S(5, 4) surface using the distributed allocation control law.
B. Wave Control Logic
The second control algorithm generates a ripple in the surface at the rows and columns where the
outermost objects are located. This ripple converges like a wave towards the target location over time as
the objects gradually converge on the target cell. The rows and columns where the ripple takes place have
the maximum incline. This drives the furthest objects to the target and picks up the rest of them along the
way. Using the same notation as described in the previous section, the height differences ∆ZI
1 (I ∈C)
and ∆ZJ
2 (J ∈R) are given by:
∆ZI
1 =





a · l
if I = min
�¯Cl

−a · l
if I = max
� ¯Cr

0
else
∆ZJ
2 =





b · l
if I = min
� ¯
Rd

−b · l
if I = min
� ¯
Rr

0
else
The surface morphology observed during the execution of the wave control algorithm is depicted in
Figures 10, 11 and 12. The wave control algorithm applies the maximum possible force to the outermost
objects to gradually drive them collectively towards the target.
1) Length Update Control Law: After the height differences are calculated, the final step of the
collective control algorithm involves the update of the individual actuator lengths. To ease the analysis
the height of each actuator is defined as the sum zIa,Ja = zIa
a + zJa
a
where Ia = {1, . . . , n + 1} and
Ja = {1, . . . , m + 1} are the actuator columns and rows identifiers within the array. The pair
�zIa
a , zJa
a

represent the length components of the actuator that are working to drive the object in the ⃗ii and ⃗ji
directions. The two components zIa
a
and zJa
a
have a constant value for every column Ia and row Ja.
−al
al
0
0
CIr,Jr
0
−bl
0
0
0
⃗iI
⃗jI
Figure 10.
The numerical entries show the values of ∆ZI
1 and ∆ZJ
2 generated by the wave control algorithm for the example of the
S(5, 4) surface.
12
al
C1,J
C2,J
C3,J
C4,J
C5,J
⃗iI
⃗kI
Figure 11.
Side view in the ⃗iI direction of the S(5, 4) surface using the wave control law.
bl
CI,1
CI,2
CI,3
CI,4
⃗jI
⃗kI
Figure 12.
Side view in the ⃗jI direction of the S(5, 4) surface using the wave control law.
The update law is initiated by leveling down the actuators of the reference cell CIr,Jr. This action is
accomplished by setting zIi,Ji
i
= 0 for Ii = {Ir, Ir+1} and Ji = {Jr, Jr+1}. The rest of the height
components can be successively calculated using the following piecewise functions:
zIa
a =
(
−PIa−1
Ir+1 ∆Zk
1
PIr
Ia ∆Zk
1
Ia ≥Ir + 1
Ia ≤Ir
(34)
zJa
a =
(
−PJa−1
Jr+1 ∆Zk
2
PJr
Ja ∆Zk
2
Ja ≥Jr + 1
Ja ≤Jr
(35)
VI. EXPERIMENTAL PROTOTYPE
In this Section we outline in detail the electromechanical design of a prototype conveying surface
that autonomously morphs its shape to transport a set of objects to a variable reference location. This
benchmark serves as an enabler to further our understanding related to the kinematic capabilities and
implementation limitations of LSANs. The prototype system is an elastic surface with solid panels that
changes its shape by adjusting the heights of ten linear actuators. The actuators placement forms four
square cells in a ‘T’ shaped configuration. The ‘T’ shape was chosen for the benchmark experimental
system since it requires the fewest actuators while still allowing the testing of multiple different path
elements.
The testbed was constructed on a pegboard base to position all of the components. Each actuator was
held in a vertical position using two threaded rods to provide stability and support. The actuator model
used was a Frigelli L12-I with a 100 mm stroke. The Frigelli L12 actuators were selected due to their
low cost and relative high speed (23 mm/s). A relative low time constant allows the actuators to have
a faster feedback response in order to control the moving objects more effectively. Despite the relative
low time constant of the selected actuators, there is still a distinct time scaling between the actuators and
the objects dynamics. The Frigelli actuators gave a reduced strength (43 N), however, this individual net
force was still sufficient for the network to collectively adjust the shape of the surface.
A sheet of spandex (10%) and polyester (90%) was mounted to the tips of the actuators providing
compliance for their length variation, as well as securing the surface panels. Corrugated plastic surface
panels were placed on top of the spandex sheet due to their low coefficients of static and kinetic friction.
This property allows for object movement at the expected slopes. The corrugated plastic was chosen
after unsuccessfully experimenting with multiple other materials ranging from neoprene to latex. The
object itself was selected after testing many different candidates ranging from wood cubes to Ping-Pong
13
Figure 13.
The experimental platform.
balls. The object (seen in Figure 13) that provided the most controllable and repeatable motion was a
polycarbonate half sphere.
The system was controlled using an Arduino Uno microcontroller. This microcontroller was selected
for its sufficient processing power (able to execute the control algorithm at 11Hz), its low cost, and
most importantly its minimal development time. The Arduino Integrated Development Environment (IDE)
allows the rapid development and testing due to the large number of available low level execution libraries
of various components (e.g. servos and motors). The system’s operation with a simple and inexpensive
controller is an ideal way to demonstrate the applicability of the proposed mechanism.
The longitudinal/lateral position measurements of the objects were generated initially by an external
and commercially available visual tracking system called Roborealm and later on by a custom program
developed in OpenCV. The vision sensor itself was a simple Live! Cam inPerson HD VF0720 web-camera
that was placed on top of the surface. The video feed from the overhead web-cam is processed by the
tracking system that calculates the planar coordinates of the object. These coordinates are the feedback
signal required by the control algorithm. Data was sent from the computer to the Arduino micro-controller
via a serial connection and an XBee wireless RF module at 7Hz. The assembled surface apparatus with
the vision sensor can be seen in Figure 13.
VII. RESULTS
A. Numerical Simulations
This Section provides an evaluation of the proposed multi-cell control algorithms via extensive numerical
simulations. The two algorithms (distributed allocation and wave) were compared with a benchmark static
funnel configuration using a Matlab/Simulink model. The simulation used 20 objects starting from random
locations on a S(5, 6) rectangular surface. The reference cell was chosen to be CIr,Jr = C3,1. For the
simulation runs, the same set of parameters (length, width, and initial positions) was used for all three
cases so the results could be directly compared. The length and width of each cell is set to L = 200 cm
and W = 200 cm, respectively. The actuators’ stroke was set to l = 100 cm. Each object was modeled
with a mass of m = 1 kg, and the friction coefficient between the object and the surface is set to bf = 0.1.
The simulation was executed by numerically integrating Newton’s equation of motion for each object
(Section III-B). A barrier is assumed at the exterior margins of the surface to keep the objects confined
in the workspace of the mechanism. The impacts of the objects with the barrier are modeled as elastic
such that no energy is dissipated from the collision.
The configuration of the surface for the three distinct algorithms (distributed allocation, wave and static
funnel) are animated for different time instances in Figure 14. It can be seen that at least one object
was placed initially in each row and column of the surface. This causes the distributed allocation control
14
Time:69 (s)
Time:308 (s)
Time:69 (s)
Time:307 (s)
Time:68 (s)
Time:306 (s)
Time:0 (s)
Distributed Control
Time:0 (s)
Wave Control
Time:0 (s)
Baseline
Figure 14.
Animation of the surface for the three control algorithms at three time instances.
1
2
3
4
5
6
position in the x aixs
1
2
3
4
5
6
position in the x aixs
1
2
3
4
5
6
position in the y aixs
1
2
3
4
5
6
position in the y aixs
1
2
3
4
5
6
position in the y aixs
1
2
3
4
5
6
position in the x aixs
0
100
200
300
time in seconds
Distributed Control
0
100
200
300
time in seconds
Distributed Control
0
100
200
300
time in seconds
Wave Control
0
100
200
300
time in seconds
Wave Control
0
100
200
300
time in seconds
Baseline
0
100
200
300
time in seconds
Baseline
Figure 15.
Objects position with respect to time. The shadowed area represents the length of the reference cell.
algorithm (for the initial time instant) to spread the available incline across all of the cells, resulting in a
even distribution of the slope, identically to the static funnel case.
The locations of the objects in the ⃗iI and ⃗jI directions, for the three algorithms, with respect to
time are illustrated in Figure 15. By inspection, it can be seen that in both directions the wave control
algorithm delivers the objects to the reference location in the shortest total time. The baseline funnel
exhibits the slowest overall response. The wave algorithm takes approximately 70 sec, the distributed
algorithm 130 sec, and the baseline funnel takes 200 sec to converge. The wave control algorithm injects
to the objects maximal amounts of potential energy through the largest inclinations of the outermost cells,
resulting to the highest kinetic energy conversion. The wave control has the additional benefit that all of
the objects arrived to the final destination at approximately the same time.
The behavior of each control algorithm can be better understood by investigating the special case of
the single track surface S(1, 10). In this scenario the reference cell is CIr,Jr = C1,10. The simulations are
initiated having a single object lying to each cell of the surface. The motion of the objects is restricted to
the ⃗iI direction. All surface and objects parameters are the same with the first case study. The position
and velocity of the objects in the ⃗iI direction, for the three algorithms, with respect to time are depicted
in Figures 16 and 17, respectively.
Obviously, the static inclination funnel (baseline) exhibits the slowest convergence time. In all cases the
15
1 
2 
3 
4 
5 
6 
7 
8 
9 
10
cells in the y aixs
1 
2 
3 
4 
5 
6 
7 
8 
9 
10
cells in the y aixs
1 
2 
3 
4 
5 
6 
7 
8 
9 
10
cells in the y aixs
0
500
1000
1500
2000
2500
3000
3500
time in seconds
Baseline
0
500
1000
1500
2000
2500
3000
3500
time in seconds
Wave Control
0
500
1000
1500
2000
2500
3000
3500
time in seconds
Distributed Control
Figure 16.
Comparison of position with respect to time for the three control algorithms in the ⃗iI direction of the S(1, 10) surface.
0
500
1000
1500
2000
2500
3000
3500
0
1
2
3
4
5
velocity in the y aixs
time in seconds
Baseline
0
500
1000
1500
2000
2500
3000
3500
0
1
2
3
4
5
velocity in the y aixs
time in seconds
Distributed Control
0
500
1000
1500
2000
2500
3000
3500
0
1
2
3
4
5
velocity in the y aixs
time in seconds
Wave Control
Figure 17.
Comparison of velocity with respect to time for the three control algorithms in the ⃗iI direction of the S(1, 10) surface.
velocity of each object is determined by the slope of the cell that is subsequently filtered by the low pass
transfer function 1/ (s + bf). A large value for bf implies small final velocity and fast response. The steady
state velocity of the objects is calculated by the term (g/bf)CθCφSθ based on (14). Therefore, maximum
inclination results to maximum velocity. This is the velocity that the objects obtain gradually, during
the execution of the wave algorithm, starting from the most remote ones. In the distributed allocation
algorithm, the kinetic energy of the system increases only when cells are free of objects, resulting to a
slower final convergence.
B. Experimental Results
The wave control algorithm was further validated using the prototype system described in Section VI.
The multi-cell surface was able to move the object consistently and successfully to an exit point on
its designated reference cell. The tested path was primarily chosen to demonstrate the basic movements
that are possible on the surface. The reference path requires that the object makes a U-turn across the
cells to reach the target exit point. This case represents a real-world scenario where the object has to be
16
0
50
100
150
200
250
300
0
20
40
60
80
100
120
140
160
180
200
x (pixels)
y (pixels)
Figure 18.
2-D top view of the object’s planar motion based on experimental data. The panels of the surface are shown in light gray, the
target zone in red, the object is shown in dark gray, and the blue line is the path that the object followed. The right side illustrates the 3-D
visualization of the surface and the object for nine different time instances based on experimental data.
0
500
1000
1500
2000
2500
3000
0
200
400
600
800
1000
1200
1400
1600
1800
2000
x (normalized to 1000 per cell)
y (normalized to 1000 per cell)
0
500
1000
1500
2000
2500
3000
0
200
400
600
800
1000
1200
1400
1600
1800
2000
x (normalized to 1000 per cell)
y (normalized to 1000 per cell)
0
500
1000
1500
2000
2500
3000
0
200
400
600
800
1000
1200
1400
1600
1800
2000
x (normalized to 1000 per cell)
y (normalized to 1000 per cell)
Figure 19.
2-D top view of the object’s planar motion based on experimental data. The panels of the surface are shown in light gray, the
target zone in magenta, the objects are color coded, and the lines are the path that the object followed. The right side illustrates the 3-D
visualization of the surface and the object for four different time instances based on experimental data.
transported around a hole or a wall. A two dimensional top view of the object’s actual trajectory based
on experimental data is shown in the left side of Figure 18. The right side of the same Figure illustrates
the surface’s morphology at different time instances of the test run. The object successfully reached the
reference location by autonomously navigating across multiple cells. At every transition between adjacent
cells, the object is moving over the midpoint of their common side.
The preliminary experiments that took place on the prototype mechanism demonstrated that the maxi-
mum slope (maximum propulsion force) is required to overcome the static friction and allow the object
to slide when starting from rest. To this extent, the tuning parameters of the wave control algorithm a, b
(Section V-B) are set to either zero or one providing full inclination in a single direction. This modification
was deemed necessary to obtain greater slopes, thus, greater applied forces for moving the objects.
The wave control algorithm was further tested using 2 objects with repeatable success. Sample test run
are shown in Figure 19. In this experiment two objects, starting from the outermost cells of the surface,
are converging to to the center front reference cell. The final level of complexity involved three objects in
multiple configurations. In all tested configurations the surface was able to repeatedly deliver the objects
successfully to the reference location.
17
VIII. CONCLUSION
This work provides an analytic and experimental study of a LSAN for distributed manipulation. The
presented mechanism involves a morphing surface that autonomously adjusts its shape to transport an
arbitrary number of objects to a reference location. The morphing process takes place by a grid of
linear actuators that adjust their height. A detailed analytical study of this mechanism is provided that
results to an explicit calculation of the available control resources. The main focus of this work is the
derivation of computationally attractive control algorithms that can handle efficiently an arbitrary number
of actuators. A prototype testbed was developed by off-the-shelf components to validate the applicability of
this originally concept and to reveal potential limitations that do not emerge from the theoretical analysis.
Both control algorithms that were investigated in this work show significant improvements in performance
when compared against the conventional static inclination solution.
REFERENCES
[1] D. Reznik and J. Canny, “A flat rigid plate is a universal planar manipulator,” in IEEE International Conference on Robotics and
Automation, 1998., vol. 2.IEEE, 1998, pp. 1471–1477.
[2] D. Reznik, E. Moshkovich, and J. Canny, Building a universal planar manipulator. Springer, 2000, pp. 147–171.
[3] K.-F. B¨ohringer, B. R. Donald, and N. C. MacDonald, “Upper and lower bounds for programmable vector fields with applications to
MEMS and vibratory plate parts feeders,” in International Workshop on Algorithmic Foundations of Robotics (WAFR). Citeseer, 1996.
[4] A. E. Quaid and R. L. Hollis, Design and Simulation of a Miniature Mobile Parts Feeder. Springer, 2000, pp. 127–146.
[5] J. Beal and J. Bachrach, “Infrastructure for engineered emergence on sensor/actuator networks,” Intelligent Systems, vol. 21, no. 2,
pp. 10–19, 2006.
[6] K.-F. B¨ohringer, B. R. Donald, and N. C. MacDonald, “Programmable force fields for distributed manipulation, with applications to
MEMS actuator arrays and vibratory parts feeders,” The International Journal of Robotics Research, vol. 18, no. 2, pp. 168–200, 1999.
[7] K.-F. B¨ohringer, B. R. Donald, L. E. Kavraki, and F. Lamiraux, A Distributed, Universal Device For Planar Parts Feeding: Unique
Part Orientation In Programmable Force Fields. Springer, 2000.
[8] S. Konishi, Y. Mita, and H. Fujita, Autonomous distributed system for cooperative micromanipulation. Springer, 2000, pp. 87–102.
[9] B. R. Donald, C. G. Levey, and I. Paprotny,
“Planar microassembly by parallel actuation of MEMS microrobots,”
IEEE
Microelectromechanical Systems, vol. 17, no. 4, pp. 789–808, 2008.
[10] M. Yim, J. Reich, and A. A. Berlin, “Two approaches to distributed manipulation,” in Distributed Manipulation. Springer, 2000, pp.
237–261.
[11] H. Moon and J. Luntz, “Distributed manipulation of flat objects with two airflow sinks,” IEEE Transactions on Robotics, vol. 22,
no. 6, pp.1189–1201, 2006.
[12] K. Varsos, H. Moon, and J. Luntz, “Generation of quadratic force fields from potential flow fields for distributed manipulation,” in
IEEE International Conference on Robotics and Automation, ICRA 2005. IEEE, 2005, pp. 1021–1027.
[13] ——, “Generation of quadratic potential force fields from flow fields for distributed manipulation,” IEEE Transactions on Robotics,
vol. 22, no. 1, pp. 108–118, 2006.
[14] K. Varsos, “Minimalist approaches for distributed manipulation force fields in flexible part handling,” Ph.D. dissertation, University
of Michigan, 2006.
[15] G. J. Laurent, A. Delettre, L. Fort-Piat et al., “A new aerodynamic-traction principle for handling products on an air cushion,” IEEE
Transactions on Robotics, vol. 27, no. 2, pp. 379–384, 2011.
[16] A. Delettre, G. J. Laurent, L. Fort-Piat, “2-dof contactless distributed manipulation using superposition of induced air flows,” in
IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 2011, 2011, pp. 5121–5126.
[17] ——, “A new contactless conveyor system for handling clean and delicate products using induced air flows,” in IEEE/RSJ International
Conference on Intelligent Robots and Systems (IROS), 2010, 2010, pp. 2351–2356.
[18] S. Akella, W. Huang, K. M. Lynch, and M. T. Mason, “Sensorless parts feeding with a one joint robot,” Algorithms for Robotic Motion
and Manipulation, pp. 229–237, 1996.
[19] J. E. Luntz, W. Messner, and H. Choset, “Distributed manipulation using discrete actuator arrays,” The International Journal of
Robotics Research, vol. 20, no. 7, pp. 553–583, 2001.
[20] S. Tadokoro, S. Fuji, T. Takamori, and K. Oguro, “Distributed actuation devices using soft gel actuators,” in Distributed Manipulation.
Springer, 2000, pp. 217–235.
[21] P. Song, V. Kumar, and J.-S. Pang, “A two-point boundary-value approach for planning manipulation tasks.” in Robotics: Science and
Systems, 2005, pp. 121–128.
[22] C.-H. Yu and R. Adviser-Nagpal, Biologically-inspired control for self-adaptive multiagent systems. Harvard University, 2010.
[23] C.-H. Yu, K. Haller, D. Ingber, and R. Nagpal, “Morpho: A self-deformable modular robot inspired by cellular structure,” in IEEE
International Conference on Intelligent Robots and Systems, 2008, pp. 3571–3578.
[24] D. Leithinger and H. Ishii, “Relief: a scalable actuated shape display,” in Proceedings of the fourth international conference on
Tangible, embedded, and embodied interaction. ACM, 2010, pp. 221–222.