Sunteți pe pagina 1din 5

An alisis De Posici on Y Velocidad Para La

Plataforma Stewart Gough 6-6.


Position and velocity analisis for 6-6 Stewart Gough Platform
Mauro Baquero Su arez
MsC Automatizaci on Industrial
Universidad Nacional De Colombia
Bogot a, Colombia
Email: mabaqueros@unal.edu.co
ResumenEn este artculo se analiza la cinem atica de la
plataforma espacial Stewart Gough S-G 6-6 para resolver
el problema inverso de posici on y velocidad de este robot de
conguraci on paralela. Inicialmente se desarrollan un conjunto
de ecuaciones y algoritmos en MATLAB, para calcular las posi-
ciones de cada articulaci on de los 6 miembros de la plataforma,
tomando como referencia el centro de la plataforma ja. A partir
de estas ecuaciones, se calculan las diferentes distancias de los
miembros del robot que satisfacen cada posici on y direcci on
deseada en el seguimiento de una trayectoria designada. Tambi en
es calculada la matriz jacobiana por el m etodo de tornillo (Screw-
Based Jacobian) para solucionar el problema inverso de velocidad
de cada miembro. Aqu se muestran los resultados obtenidos
en los c alculos de posici on y velocidad de cada miembro de
la plataforma en el seguimiento de una trayectoria especca,
utilizando MATLAB como herramienta principal.
Index TermsCinem atica de Robots Paralelos, Plataformas
Rob oticas, M etodo de tornillos sucesivos, Plataforma Stewart
Gough.
AbstractIn this paper we analyze the kinematics of spatial
platform Stewart Gough S-G 6-6 for resolve the inverse
problem of position and velocity of this parallel robot. Initially
is developed a set of equations and algorithms in MATLAB to
calculate the positions of each joint of the 6 members of the
platform, with respect at center of the xed platform. From
these equations, we calculate the different distances of the robot
members to satisfy every desired position and direction in the
designated path tracking. Also is calculated the Jacobian matrix
by the method of screw (Screw-Based Jacobian) for solve the
inverse problem of velocity of each member. at end are shown
the obtained results in the calculus of positions and velocities of
each Stewart Gough platform member in a specic path tracking,
using MATLAB as the main tool.
KeywordsKinematics Of Parallel Robots, Robotic Plattforms,
Screw-Based Method, Stewart Gough Plattform.
I. INTRODUCCI ON
Entre la gran diversidad de conguraciones de robots parale-
los, la plataforma Stewart Gough es una de las m as conocidas y
estudiadas. Esta plataforma tpicamente consta de dos placas
o bases (Una ja y otra m ovil), unidas por 6 actuadores o
mecanismos de movimiento lineal (articulaci on prism atica),
y en cada extremo de estas, depositan all juntas de tipo
esf ericas y/ o universales, 6 DOF-UPS (6 grados de libertad con
junta universal, prism atica y esf erica). El desarrollo de estas
plataformas para aplicaciones industriales tiene varias ventajas
y entre ellas est an, el soporte de cargas mayores a su propio
peso, mayor precisi on en posicionamiento que robots seriales,
velocidades de operaci on superiores y manejo con mayor
facilidad y menos componentes de los 6 DOF. La desventaja
fundamental de esta plataforma son las complicaciones que se
presentan al calcular sus conguraciones singulares, espacio de
trabajo y cinem atica directa, temas que son de estudio en esta
fecha en diferentes universidades del mundo. Los resultados y
algoritmos propuestos en este trabajo pretenden dar al lector
una idea de la importancia de trabajar con estos robots y
mostrar detalladamente la obtenci on de ciertos algoritmos que
calculan la posici on y velocidad de los miembros prism aticos,
para que sean tomados en cuenta como punto de partida en el
an alisis de esta plataforma en cualquier aplicaci on de rob otica.
II. CINEM ATICA INVERSA DE LA PLATAFORMA STEWART
6-6
A. Longitudes de la plataforma Stewart 6-6.
Para calcular la cinem atica inversa es necesario conocer
las distancias desde el centro de cada plataforma (ja, O y
movil, P), hasta cada articulaci on establecida en 6 puntos
conc entricos y equidistantes en cada plataforma a
i
y b
i
. En
la cinem atica inversa de este robot se calculan las distancias
de cada barra d
i
a partir de la distancia OP y la matriz de
rotaci on
A
R
B
siendo estas las variables del sistema. La Fig.1
muestra el an alisis geom etrico de la plataforma Stewart.
Figura 1. Geometra de la plataforma Stewart Gough
Llamemos al radio de la plataforma ja R
1
y al de la
plataforma m ovil R
2
. Otra distancia a considerar sera la
correspondiente a la m as cercana entre las articulaciones de la
plataforma ja, sobre el eje x, denominada D
b
. y otro valor de
incremento sobre D
b
que dene la distancia m as cercana entre
las articulaciones de la plataforma m ovil sobre x, llamemos
a esta distancia D
c
. Entonces para el c alculo de a
i
y b
i
en
la plataforma tenemos las siguientes expresiones, en donde
a
i
y b
i
, Para i = 1, 2, . . . , 6, representan las posiciones en el
sistema de referencia (x, y, z) y (u, v, w) de las articulaciones
de las plataformas ja y movil, asumiendo que las 6 articula-
ciones de cada plataforma estan situadas a la misma distancia
sobre el eje z que sus centroides O y P.
a
1
=
_
0 R
1
0

T
,
a
2
=
_
D
b
_
R
2
1
D
2
b
0

T
, (1)
a
3
=
_
R
1
sin(2/3) R
1
cos(2/3) 0

T
,
a
4
=
_
R
1
sin( 2/3) R
1
cos( 2/3) 0

T
,
a
5
=
_
R
1
sin(4/3) R
1
cos(4/3) 0

T
,
a
6
=
_
R
1
sin( 4/3) R
1
cos( 4/3) 0

T
.
R
1
> R
2
; D
b
> D
c
; = tan
1
(
D
b
_
R
2
1
D
2
b
).
b
1
=
_
D
c
_
R
2
2
D
2
c
0

T
,
b
2
=
_
R
2
sin() +D
c
_
R
2
2
(R
2
sin() +D
c
)
2
0
_
, (2)
b
3
=
_
R
2
sin(2/3 /2) R
2
cos(2/3 /2) 0

T
,
b
4
=
_
R
2
sin(2/3 +) R
2
cos(2/3 +) 0

T
,
b
5
=
_
R
2
sin(4/3 /2) R
2
cos(4/3 /2) 0

T
,
b
6
=
_
R
2
sin(4/3 +) R
2
cos(4/3 +) 0

T
.
= 2 tan
1
(
D
c
_
R
2
2
D
2
c
).
Para los valores R
1
= 50cm, R
1
= 20cm, D
b
= 10cm y
D
c
= 4cm obtenemos las longitudes de a
i
y b
i
, o posiciones
de las articulaciones de la plataforma Stewart.
a
i
=
_
a
1
a
2
a
3
a
4
a
5
a
6

(3)
=
_

_
0 50,0000 0
10,0000 48,9898 0
43,3013 25,0000 0
37,4264 33,1552 0
43,3013 25,0000 0
47,4264 15,8346 0
_

_
T
.
b
i
=
_
b
1
b
2
b
3
b
4
b
5
b
6

(4)
=
_

_
4,0000 19,5959 0
8,0000 18,3303 0
18,9706 6,3339 0
12,0157 15,9882 0
14,9706 13,2621 0
19,8541 2,4118 0
_

_
T
.
El siguiente c odigo en MATLAB, construye las posiciones
de las plataformas ja y m ovil.
%1. Posicion de las articulaciones en la base:
R1=50;
Db=10;
Ai(:,1)=[0 R1 0];
Ai(:,2)=[-Db (sqrt((R12)-(Db2))) 0];
Psi=atan2(Ai(1,2),Ai(2,2));
Ai(:,3)=[-R1
*
sin(deg2rad(120));
R1
*
cos(deg2rad(120));
0];
Ai(:,4)=[R1
*
sin(Psi-deg2rad(120));
R1
*
cos(Psi-deg2rad(120));
0];
Ai(:,5)=[-R1
*
sin(deg2rad(240));
R1
*
cos(deg2rad(240));
0];
Ai(:,6)=[R1
*
sin(Psi-deg2rad(240));
R1
*
cos(Psi-deg2rad(240));
0];
Ai=[-1 0 0;0 1 0;0 0 1]
*
[Ai];
%2. Posicion de las articulaciones en la plataforma:
R2=20;
Dc=4;
Bi(:,1)=[4 sqrt((R22)-(42)) 0];
Bi(:,2)=[-8 (sqrt((R22)-(82))) 0];
Phi=2
*
atan2(Bi(1,1),Bi(2,1));
Bi(:,3)=[-R2
*
sin(deg2rad(120)-Phi/2);
R2
*
cos(deg2rad(120)-Phi/2);
0];
Bi(:,4)=[-R2
*
sin(deg2rad(120)+Phi);
R2
*
cos(deg2rad(120)+Phi);
0];
Bi(:,5)=[-R2
*
sin(deg2rad(240)-Phi/2);
R2
*
cos(deg2rad(240)-Phi/2);
0];
Bi(:,6)=[-R2
*
sin(deg2rad(240)+Phi);
R2
*
cos(deg2rad(240)+Phi);
0];
Bi=[-1 0 0;0 1 0;0 0 1]
*
[Bi];
Las guras Fig.2 y Fig.3 muestran las posiciones de las
articulaciones de la plataforma ja y m ovil en el plano (x, y).
Figura 2. Posiciones de las articulaciones en la plataforma ja
2
Figura 3. Posiciones de las articulaciones en la plataforma movil
B. C alculo de la cinem atica inversa.
En el c alculo de la cinem atica inversa de la plataforma
Stewart 6-6, se calculan las distancias A
i
B
i
, como se muestra
seguido.
A
i
B
i
= p +
A
R
B
B
b
i
a
i
. (5)
La longitud de las barras es obtenida a partir del producto
punto del vector A
i
B
i
con el mismo.
d
2
i
=
_
p +
A
R
B
B
b
i
a
i

T
_
p +
A
R
B
B
b
i
a
i

,
= p
T
p +
_
B
b
i

T
_
B
b
i

+ a
T
i
a
i
+ 2p
T
_
A
R
B
B
b
i

2p
T
a
i
2
_
A
R
B
B
b
i

T
a
i
. (6)
La siguiente funci on calcula las distancias para cada barra
de la plataforma Stewart, dependiendo de la posici on y orien-
taci on en que se encuentra el centroide de la plataforma ja
con respecto a la movil.
function [AiBi,PB,di]=PosStewartInv(P,Ai,Bi,RAB)
Pi=P
*
ones(1,6);
AiBi=Pi+(RAB
*
Bi)-Ai;
PB=Pi+(RAB
*
Bi);
di1=sqrt(AiBi(:,1)
*
AiBi(:,1));
di2=sqrt(AiBi(:,2)
*
AiBi(:,2));
di3=sqrt(AiBi(:,3)
*
AiBi(:,3));
di4=sqrt(AiBi(:,4)
*
AiBi(:,4));
di5=sqrt(AiBi(:,5)
*
AiBi(:,5));
di6=sqrt(AiBi(:,6)
*
AiBi(:,6));
di=[di1 di2 di3 di4 di5 di6];
end
C. Seguimiento de una trayectoria.
Denamos una trayectoria para nuestro robot. Para su
seguimiento, tomemos como variables de entrada la rotaci on
y traslaci on en el espacio del centroide de la plataforma
movil con respecto a la plataforma ja. Llamemos , y
los angulos de rotaci on con respecto a los ejes x, y y z
del centroide de la plataforma movil. La distancia p sera la
otra variable de entrada. Este vector es el desplazamiento del
centroide de la plataforma movil tomando el sistema (x, y, z)
como referencia. Las variables de entrada son denidos como
se muestra seguido.
= Ang sin(t),
= Ang sin(t),
= Ang sin(t), (7)
p =
_
_
M sin(t)
M sin(t + /2)
OP
0
+ (M/2) sin(t)
_
_
.
En donde t = 100seg (tiempo), Ang = 0,5rad (M ax angulo
de rotaci on), = 0,2rad/seg (frecuencia), M = 18cm (M ax
distancia de desplazamiento) y OP
0
= 30cm (Distancia de los
dos centroides alineados).
La Fig.4 muestra la variaci on de las distancias de cada barra
d
i
, para la trayectoria designada.
Figura 4. Variaci on de distancias de las 6 barras de la plataforma.
III. CINEM ATICA DIFERENCIAL, AN ALISIS DE
VELOCIDAD
A. Matriz Jacobiana.
Para el c alculo de la matriz jacobiana de la plataforma
Stewart, primero hay que considerar que hay 6 articulaciones
3
de tornillo para cada miembro de la plataforma, estas articu-
laciones de tornillo son expresadas como se muestra seguido.

$
1,i
=
_
s
1,i
(b
i
d
i
) s
1,i
_
,

$
2,i
=
_
s
2,i
(b
i
d
i
) s
2,i
_
,

$
3,i
=
_
0
s
3,i
_
,

$
4,i
=
_
s
4,i
b
i
s
2,i
_
,

$
5,i
=
_
s
5,i
b
i
s
5,i
_
,

$
6,i
=
_
s
6,i
b
i
s
6,i
_
. (8)
Donde b
i
= PB
i
, d
i
= A
i
B
i
= d
i
s
3,i
, y s
3,i
= s
4,i
.
No es necesario hallar s
1,i
, s
2,i
, s
5,i
y s
6,i
, porque la matriz
jacobiana se simplica como se muestra seguido.
J
x
x = J
q
q,
J
x
=
_

_
(b
1
s
3,1
)
T
s
T
3,1
(b
2
s
3,2
)
T
s
T
3,2
.
.
.
.
.
.
(b
6
s
3,6
)
T
s
T
3,6
_

_
,
J
q
= I (6 6 Matriz Identidad) ,
x = [
x
,
y
,
z
, v
px
, v
py
, v
pz
]
T
,
q =
_

d
1
,

d
2
,

d
3
,

d
4
,

d
5
,

d
6
_
T
. (9)
El siguiente c odigo genera la matriz jacobiana para una
plataforma Stewart 6-6 que relaciona la velocidad en que se
mueven sus barras prism aticas con su plataforma giratoria.
function [Jx,Jq]=StewartJac(AiBi,di,Bi)
for i=1:6
s3(:,i)=AiBi(:,i)
*
1/di(1,i);
Jx(i,:)=[(cross(Bi(:,i),s3(:,i))) s3(:,i)];
end
Jq=eye(6);
B. Velocidades en la trayectoria designada
A partir de la trayectoria designada a la plataforma para el
seguimiento, se calcular an las velocidades angulares y lineales
del centroide de la plataforma m ovil tomando como variables
de entrada los perles de velocidad de cada uno de los miem-
bros de la plataforma Stewart. Los perles de velocidad para
cada miembro
_

d
1
,

d
2
,

d
3
,

d
4
,

d
5
,

d
6
_
T
, se obtienen calculando
la derivada de las diferentes distancias resultantes para cada
punto de los puntos en los cuales la plataforma m ovil cambia
de posici on. Para determinar esta derivada discreta o raz on de
cambio en las distancias de cada uno de los miembros de la
plataforma, se utiliza el m etodo sencillo de Euler.

d
i
=
d
i
(K) d
i
(K 1)
t
. (10)
Los perles de velocidad resultantes se observan en la Fig.5.
Figura 5. Velocidad de las 6 barras de la plataforma
La siguiente rutina de comandos calcula los perles de
velocidad para el desplazamiento lineal de cada uno de sus
miembros y la velocidad angular y lineal del centroide de la
plataforma m ovil.
ddi(1,:)=[zeros(1,6)];
dx(1,:)=[zeros(1,6)];
for i=1:length(alpha)
RAB=rotx(alpha(i))
*
roty(gama(i))
*
rotz(beta(i));
[AiBi,PB,di(i,:)]=PosStewartInv(P(:,i),Ai,Bi,RAB);
if i > 1
dd1=diff([di((i-1),1) di(i,1)])/0.01;
dd2=diff([di((i-1),2) di(i,2)])/0.01;
dd3=diff([di((i-1),3) di(i,3)])/0.01;
dd4=diff([di((i-1),4) di(i,4)])/0.01;
dd5=diff([di((i-1),5) di(i,5)])/0.01;
dd6=diff([di((i-1),6) di(i,6)])/0.01;
ddi(i,:)=[dd1,dd2,dd3,dd4,dd5,dd6];
[Jx,Jq]=StewartJac(AiBi,di(i,:),Bi);
dx(i,:)=(inv(Jx)
*
ddi(i,:));
end
end
Los resultados de velocidad obtenidos para x =
[
x
,
y
,
z
, v
px
, v
py
, v
pz
]
T
, se muestran en la Fig.6.
Si se desean calcular las expresiones de forma explcita, ta-
les como la matriz jacobiana J
x
, las distancias d
i
y velocidades
x para luego trabajarlas con alg un software de manipulaci on
simb olica, la siguiente rutina realiza las operaciones indicadas.
%% Cinematica Inversa y diferencial -- Simbolica
syms A1x A1y A2x A2y A3x A3y A4x A4y A5x A5y ...
A6x A6y B1x B1y B2x B2y B3x B3y B4x B4y ...
B5x B5y B6x B6y Px Py Pz Alpha Beta Gamma real;
4
Ai=[[A1x;A1y;0] [A2x;A2y;0] [A3x;A3y;0] ...
[A4x;A4y;0] [A5x;A5y;0] [A6x;A6y;0]];
Bi=[[B1x;B1y;0] [B2x;B2y;0] [B3x;B3y;0] ...
[B4x;B4y;0] [B5x;B5y;0] [B6x;B6y;0]];
P=[Px;Py;Pz];
RAB=simple(rotx(Alpha)
*
roty(Gamma)
*
rotz(Beta));
[AiBi,PB,di]=PosStewartInv(P,Ai,Bi,RAB);
[Jx,Jq]=StewartJac(AiBi,di,Bi);
Figura 6. Velocidad del centroide de la plataforma movil.
IV. CONCLUSIONES
El an alisis presentado en este artculo debe hacerse de
caracter necesario para proceder luego a calcular la din amica
de este robot paralelo. En el planteamiento de una estrategia
de control, el an alisis de torques en las barras es fundamental
para que este mecanismo siga la trayectoria designada a la
velocidad requerida. Como se observa en los resultados, las
velocidades no son constantes en ning un momento y por lo
tanto hay aceleraciones en el movimiento prism atico de cada
miembro, lo que resulta que hayan aceleraciones lineales y
angulares en el cuerpo m ovil de la plataforma Stewart.
La herramienta MATLAB resulta ser adecuada para el
an alisis de forma num erica de posici on y velocidad de esta
plataforma y los algoritmos presentados son sencillos cuando
se implementa el m etodo Screw-Based para solucionar el
problema inverso de la cinem atica diferencial hallando la
matriz jacobiana. Si se desean trabajar las expresiones de
forma simb olica para tener a la mano las ecuaciones explcitas,
MATLAB no es adecuado. Para este an alisis simb olico en
robots paralelos es aconsejable utilizar otra herramienta de
manipulaci on simb olica.
Acad emicamente el an alisis cinem atico directo en estos ro-
bots manipuladores de conguraci on paralela es un verdadero
reto. No es tan facil solucionar y desarrollar un algoritmo que
calcule la posici on y orientaci on de la plataforma m ovil con
respecto al sistema de referencia base, teniendo como variables
conocidas la longitud de la barras de desplazamiento prism ati-
co. Para este an alisis se requieren estrategias matem aticas de
un mayor nivel.
REFERENCIAS
[1] L.W. Tsai, Robot Analysis: The Mechanics Of Serial And Parallel
Manipulators, 1st ed. Jhon Wiley & Sons, 1999.
[2] M.W. Spong, S. Hutchinson, and M. Vidyasagar, Robot Modeling And
Control, 1st ed. Jhon Wiley & Sons, 2005.
[3] M. Goossens, F. Mittelbach, and A. Samarin, The L
A
T
E
X Companion.
Addison-Wesley, 1993.
[4] J.M. Selig, Introductory Robotics, 1st ed. Prentice Hall, 1991.
[5] D.A. Ramirez, Dise no de una plataforma rob otica paralela de 6 DOF
para asistente quir urgico en cirugas de reconstrucci on cr aneo facial,
UNAL Tesis. 2010.
[6] X. Huang, Q. Liao, S. Wei, X. Qiang y S. Huang, Forward Kinematics
of the 6-6 Stewart Platform with Planar Base and Platform Using Alge-
braic Elimination, International Conference on Automation and Logistics.
Jinan, China, 2007.
5

S-ar putea să vă placă și