The figure to the right depicts a hexapod
that consists of two rigid bodies
A and
AH
connected by six legs.
Parallel mechanisms like the hexapod are typically used for accurate position/orientation of
surgical instruments or manufacturing tools and/or for creating a relatively strong stable platform
for heavy objects such as flightsimulators.
Points
B,
C,
D,
E,
F, and
G
are fixed on the lower platform
A
at the bottom end of one of the legs,
whereas points
BH,
CH,
DH,
EH,
FH, and
GH
are fixed on the upper platform
AH,
at the top end of one of the legs.
Righthanded sets of orthogonal unit vectors (not shown)
A_{i} and
AH_{i} (i=x,y,z) are
fixed in A and AH, respectively.
After constructing a hexapod,
one can measure position vectors from
A_{o}, an arbitrary point
fixed on A, to each of
B,
C,
D,
E,
F,
G.
Similarly, one can measure position vectors from
A_{AHo}, an arbitrary point fixed on AH,
to each of
BH,
CH,
DH,
EH,
FH,
GH.

Click to enlarge image

Position measures from physical dimensions of lower and upper platform (i = x, y, z)
Description 
Symbol 
x Value 
y Value 
z Value 
A_{i} measures of B's position from Ao 
B_{i} 
0 m 
0 m 
0 m 
A_{i} measures of C's position from Ao 
C_{i} 
5.0 m 
8.66 m 
0 m 
A_{i} measures of D's position from Ao 
D_{i} 
15.0 m 
8.66 m 
0 m 
A_{i} measures of E's position from Ao 
E_{i} 
20.0 m 
0 m 
0 m 
A_{i} measures of F's position from Ao 
F_{i} 
15.0 m 
8.66 m 
0 m 
A_{i} measures of G's position from Ao 
G_{i} 
5.0 m 
8.66 m 
0 m 
AH_{i} measures of BH's position from AHo 
BH_{i} 
0 m 
0 m 
0 m 
AH_{i} measures of CH's position from AHo 
CH_{i} 
0 m 
0 m 
0 m 
AH_{i} measures of DH's position from AHo 
DH_{i} 
15.0 m 
8.66 m 
0 m 
AH_{i} measures of EH's position from AHo 
EH_{i} 
15.0 m 
8.66 m 
0 m 
AH_{i} measures of FH's position from AHo 
FH_{i} 
30.0 m 
0 m 
0 m 
AH_{i} measures of GH's position from AHo 
GH_{i} 
30.0 m 
0 m 
0 m 
One set of "internal variables" that characterize this system's configuration and motion are
 LB,
LC,
LD,
LE,
LF, and
LG,
the lengths of each of the six legs that join
A to AH
 LB',
LC',
LD',
LE',
LF', and
LG',
the timerate of change of the lengths of each of the six legs that join
A to AH
A second set of "external variables" that characterize this system's configuration and motion are (i = x, y, z)
 p_{i},
the A_{i}
measures of AHo's position from Ao
 q_{i},
the Euler "BodyXYZ angles"
that characterize AH's orientation in A
 v_{i},
the A_{i}
measures of AHo's velocity in A
 w_{i},
the AH_{i}
measures of AH's angular velocity in A
In connection with this system,
two kinematical problems can be posed:
Given the values of the external variables,
find those of the internal ones; and viceversa,
These two problem are called EI (External to Internal)
and IE (Internal to External), respectively.
Problem 1: Hexapod EI Analysis (Easier inversekinematics problem)
Find leg lengths and their timederivatives from AH's given position, orientation, velocity, and angular velocity in A.
EI is a relatively simple problem.
To find
LB,
form
P_B_BH>,
the position vector from
B to
BH
as the sum of the position vectors from
B to
Ao,
Ao to
AHo, and
AHo to
BH, namely,
P_B_BH> = P_B_Ao> + P_Ao_AHo> + P_AHo_BH>
The magnitude of P_B_BH> is precisely
LB.
The remaining leg lengths are found similarly.
To find
LB',
begin by determining
V_BH_A>,
the velocity of
BH in
A,
making use of the familiar equation relating the velocities
of two points fixed on a rigid body,
V_BH_H> = V_AHo_A> + W_AH_A> x P_AHo_BH>
LB' is then available as the dotproduct of
V_BH_A>
with a unit vector directed from
B to
BH.
The remaining leg extension rates are found similarly.
The file MGHexapodEI.txt is a complete listing of MotionGenesis commands to:
Note: The file MGHexapodEIMoreEfficient.txt uses the advanced AUTOZ feature for more efficient calculations of these quantities (results are in MGHexapodEIMoreEfficient.all).
 Find symbolic expressions for the leg lengths in terms of
p_{i} and q_{i} (i = x, y, z).
 Find symbolic expressions for the timerate of change of the leg lengths in terms of
p_{i}, q_{i}, v_{i}, and w_{i} (i = x, y, z).
 Find numerical values for the aforementioned leg lengths and rates from given input values.
 Record input and program responses in the file
MGHexapodEI.all
Problem 2: Hexapod IE Analysis (Harder forwardkinematics problem)
Find AH's position, orientation, velocity, and angular velocity in A from given leg lengths and their timederivatives
IE possesses either no solution or multiple solutions and is not so simple.
One can begin the solution process by expressing the position vector from
Ao to AHo
in terms of the unknown scalars
p_{i} (i = x, y, z) and the unit vectors
A_{i} (i = x, y, z),
that is by writing
P_Ao_AHo> = px*Ax> + py*Ay> + pz*Az>
This brings one into position to express
P_B_BH> as before, i.e.,
P_B_BH> = P_B_Ao> + P_Ao_AHo> + P_AHo_BH>
One may then equate the square of the magnitude of
P_B_BH>
to the square of the known quantity
LB.
Proceeding similarly with the remaining five legs results in six coupled
algebraic equations that are
nonlinear
in p_{i} and q_{i} (i = x, y, z).
To determine
V_AHo_A> and
W_AH_A>,
proceed as follows.
Construct unit vectors in the direction of
P_B_BH>, ...
P_G_GH>, respectively.
As before, express
V_BH_A> as
V_BH_H> = V_AHo_A> + W_AH_A> x P_AHo_BH>
One may then equate the known quantity
LB' to
the dot product of
V_BH_A> with
the unit vector from
B> to
BH>.
Proceeding similarly with the remaining five legs results in six coupled
algebraic equations that are
linear
in v_{i} and w_{i} (i = x, y, z).
The file MGHexapodIE.txt is a complete listing of MotionGenesis commands to:
Note: The file MGHexapodIESymbolic.txt uses the advanced AUTOZ feature for symbolic solution (results are in MGHexapodIESymbolic.all).
 Form symbolic equations relating the square of known leg lengths and
p_{i} and q_{i} (i = x, y, z).
 Numerically solve these coupled
nonlinear algebraic equations using an initial guess for
p_{i} and q_{i} (i = x, y, z) and given input values.
 Form symbolic equations relating the known timerate of change of leg lengths and
p_{i}, q_{i}, v_{i}, and w_{i} (i = x, y, z).
 Numerically or
symbolically
solve these coupled linear algebraic equations
for v_{i} and w_{i} (i = x, y, z).
 Record input and program responses in the file
MGHexapodIE.html
