Trayectorias
Trayectorias
0.2
0.4
A
0.6
0.8
D B
1
1.2
1.4
C
1.6
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
CONTROL CINEMÁTICO Curso de Robótica
(TIPOS DE TRAYECTORIAS)
x q2 q
Movimiento eje a eje q2
(punto a punto)
q1
q1 t1 t2
y Movimiento t1 t1+t2 t
x q2 simultáneo de ejes q
(punto a punto) q2
q1
q1 t2
t1
y t2 t1 t
CONTROL CINEMÁTICO Curso de Robótica
(TIPOS DE TRAYECTORIAS)
x q2 q
Trayectoria isócrona q2
(punto a punto)
q1
q1
y t1 t
x q2
q
Trayectoria continua q2
q1 q1
y
t1 t
CONTROL CINEMÁTICO Curso de Robótica
Interpolación de trayectorias
Punto de destino (x, y, z, a, b, g) Puntos intermedios (xi, yi, zi, ai, bi, gi)
Tipo de trayec. (punto a punto o continua)
Velocidad o tiempo invertido
Velocidades y Aceleraciones máximas permitidas en las articulaciones
Resistencia de los elementos
Modelo cinemático inverso Gp
Trayectorias articulares qi(t)
qdeseada e Gm qreal
Referencias para el control R(s) Robot
dinámico qi(KT)
CONTROL CINEMÁTICO Curso de Robótica
x q2 x q(t)
j1 j2 j3 j4
j1 j1 q2
j
2
C.I.
j3 q1
j4 j4
q1 y y t0 t1 t2 t3 t
q(t) x
q2 j1
q1 j4
t0 t1 t2 t3 t y
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
INTERPOLADOR LINEAL
Para pasar de qi-1 hasta qi:
𝒒 ( 𝒕 )= 𝒂+ 𝒃 ( 𝒕 − 𝒕 𝒊 −𝟏 ) ; 𝒕 𝒊 −𝟏 ≤ 𝒕 ≤ 𝒕 𝒊
q(t)
2 parámetros: 2 condiciones de posición qi-1
𝑡 =𝑡 𝑖 −1 𝑞 (𝑡 )=𝑞 𝑖 −1 𝑎=𝑞 𝑖 −1
qi
𝑞𝑖 − 𝑞 𝑖 −1
𝑡 =𝑡 𝑖 𝑞 (𝑡 )=𝑞 𝑖 𝑏= ti-1 ti t
𝑡 𝑖 − 𝑡 𝑖 −1
Interpolador lineal
Tiempo Posición
Posición
0 3
1 3
Tiempo
Velocidad
2 1
3 5
Aceleración
Tiempo 4 2
5 2
Tiempo
6 4
7 6
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
q1 q2
O (0,2) y
1m 1m
Características:
A (0’5,1)
Trayectoria: O-A-B-C-D-A
Interpolador lineal
D (1,0’5) B (1,1’5) Tiempo de paso entre puntos = 1 s
-180º < q2 < 0º
x C (1’5,1)
¿q1(t) y q2(t)?
CINEMÁTICA INVERSA Curso de Robótica
(A PARTIR DE LA M.T.H.)
y
q1
l
q1 T=
l q2
x xn yn
𝑥=𝑙 . 𝑠 1 +𝑙 . 𝑠 12 ( 𝐼 )
} ( )
2 2 2
𝑥 + 𝑦 −2 𝑙
2 2
( 𝐼 ) +( 𝐼𝐼 ) 𝜃 2= 𝑎𝑟𝑐𝑐𝑜𝑠
𝑦 =𝑙 . 𝑐 1+ 𝑙 .𝑐 12 ( 𝐼𝐼 ) 2.𝑙
2
𝑥 − 𝑙 .𝑐 1 . 𝑠2
(𝐼) 𝑥=𝑙 . 𝑠 1 +𝑙 . 𝑠 12 =𝑙 . 𝑠 1 +𝑙 . ( 𝑠1 𝑐 2+ 𝑐1 𝑠 2 ) 𝑠1= ( 𝐼𝐼𝐼 )
𝑙 . ( 1+𝑐 2 )
( 𝐼𝐼𝐼 )
(𝐼𝐼 ) 𝑦 =𝑙 . 𝑐 1+ 𝑙 . 𝑐12 = 𝑙 .𝑐 1 +𝑙 . ( 𝑐 1 𝑐 2 − 𝑠1 𝑠 2 ) 𝜃 1= 𝑎𝑟𝑐𝑐𝑜𝑠
(
𝑦 . ( 1+𝑐 2 ) + 𝑥 . 𝑠 2
2.𝑙 . ( 1+ 𝑐 2) )
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
Datos: (x,y)
𝜃 2= 𝑎𝑟𝑐𝑐𝑜𝑠
2 (
𝑥 2+ 𝑦 2 − 2
)
C. I.
Incógnitas: (q1,q2)
𝜃 1= 𝑎𝑟𝑐𝑐𝑜𝑠
( 𝑦 ( 1+ 𝑐2 ) + 𝑥 . 𝑠 2
2 ( 1+𝑐 2 ) )
Punto O: x = 0; y = 2 q2 = 0 rad y q1 = 0 rad
q1 q2
qi-1 = 0 rad qi = 1’44 rad
′
𝜃 1 ( 𝑡 )=1 44. 𝑡 ; 0 ≤ 𝑡 ≤ 1
ti-1 = 0 s ti = 1 s
Interpolador de A a B:
q1
qi-1 = 1’44 rad qi = 1 rad
′ ′
𝜃 1 ( 𝑡 )=1 44 − 0 44. ( 𝑡 − 1 ) ; 1 ≤ 𝑡 ≤ 2
ti-1 = 1 s ti = 2 s
q2
y
q1
A
x
B
q2
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
Interpolador de B a C:
q1
qi-1 = 1 rad qi = 1’44 rad
′
𝜃 1 ( 𝑡 )=1+ 0 44. ( 𝑡 − 2 ) ; 2 ≤ 𝑡 ≤ 3
ti-1 = 2 s ti = 3 s
q2
y
q1
x
B
q2
C
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
Interpolador de C a D:
q1
qi-1 = 1’44 rad qi = 2’1 rad
′ ′
𝜃 1 ( 𝑡 )=1 44 +0 66. ( 𝑡 − 3 ) ; 3 ≤ 𝑡 ≤ 4
ti-1 = 3 s ti = 4 s
q2
y
q1
x
D
q2
C
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
Interpolador de D a A:
q1
qi-1 = 2’1 rad qi = 1’44 rad
′ ′
𝜃 1 ( 𝑡 )=2 1− 0 66. ( 𝑡 − 4 ) ; 4 ≤ 𝑡 ≤ 5
ti-1 = 4 s ti = 5 s
q2
y
q1
A
x
D
q2
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
q1(t), q2(t)
(rad)
2’5
2’1
1’44
1
0’5
0
0 1 2 3 4 5 t(s)
-0’5
-0’9
-1’5
-1’95
O A B C D A
q1(t), q2(t)
(rad/s)
1’44
1’05
0’44
0
0 1 2 3 4 5 t(s)
-0’44
-1’05
-1’5
-1’95
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
0
O
0.2
0.4
A
0.6
0.8
D B
1
1.2
1.4
1.6
C
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
𝑞 ( 𝑡 )=𝑞𝑖 −1 𝑎=𝑞 𝑖 −1
𝑡 =𝑡 𝑖 −1
˙ ( 𝑡 )=𝑞
𝑞 ˙ 𝑖 −1 𝑏=𝑞
˙ 𝑖 −1
3 2 1
𝑐= 2 ( 𝑞 𝑖 − 𝑞𝑖− 1 ) −
𝑇
˙
𝑞 𝑖 −1 −
𝑇
˙𝑖
𝑞
𝑞 ( 𝑡 ) =𝑞𝑖 𝑇
𝑡 =𝑡 𝑖 𝑑𝑜𝑛𝑑𝑒𝑇 =𝑡 𝑖 −𝑡 𝑖 −1
˙ ( 𝑡 )=𝑞
𝑞 ˙𝑖 2 1
𝑑= 3 ( 𝑞𝑖− 1 − 𝑞 𝑖 ) + 2 (
𝑞 ˙ 𝑖)
˙ 𝑖 −1 + 𝑞
𝑇 𝑇
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
Continuidad en la velocidad
Opción A
No impone continuidad en la aceleración
0 si signo (qi – qi-1) ≠ signo (qi+1 – qi) a
qi = 1 qi - qi-1 qi+1 - qi
t -
2 i i-1t
+
ti+1 - ti si signo (qi – qi-1) = signo (qi+1 – qi) b
q q qi+1
a qi b qi
qi+1
qi-1
qi-1
4
0 3
2
1 3
0
0 1 2 3 4 5 6 Tiempo
7
10
Velocidad
2 1
5
0
3 5
-5
0 1 2 3 4
Aceleración
5 6 Tiempo
7 4 2
50
0
5 2
-50
0 1 2 3 4 5 6 Tiempo
7
6 4
7 6
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
4
0 3
2
1 3
0
0 1 2 3 4 5 6 Tiempo
7
10
Velocidad
2 1
5
0
3 5
-5
0 1 2 3 4
Aceleración
5 6 Tiempo
7 4 2
20
0
5 2
-20
Tiempo
6 4
0 1 2 3 4 5 6 7
7 6
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
Opción C
˙ 𝐽 −1 𝑋˙
Jacobiana inversa: 𝑞=
Velocidades articulares
q1
d3
Características:
Trayectoria: A-B-C
A(0, 1, 1); VA(0, 0, 0)
d2 B(0’4, 0’4, 0’4); VB(0’5, 0’5, 0’5)
Z
𝑑𝑜𝑛𝑑𝑒𝑇 =𝑡 𝑖 −𝑡 𝑖 −1
d3
y
Datos: X:(x, y, z) y X:(vx, vy, vz) q1 d2 Z
d3
Y
Incógnitas: q:(q1, d2, d3) y q:(q1, d2, d3)
x X
[ ]
C.I. J-1 (q = J-1.X)
𝑦 −𝑥
0
q1 = arctg(x/y) 2
𝑥 +𝑦
2 2
𝑥 +𝑦
2
−1
𝐽 = 0 0 1
d2 = z 𝑥 𝑦
0
d3 = x 2 + y 2 √𝑥 2
+𝑦
2
√𝑥 2
+𝑦
2
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
[ ][ ][ ]
𝑦 −𝑥
0
𝜃˙ 1 2
𝑥 +𝑦
2 2
𝑥 +𝑦
2
𝑉𝑥
J-1
XA = (0, 0, 0) qA = (0, 0, 0) 𝑑˙ 2 = 0 0 1 𝑉𝑦
𝑑˙ 3 𝑥 𝑦 𝑉𝑧
0
√ 𝑥2+ 𝑦2 √ 𝑥2 + 𝑦 2
J-1
XB = (0’5, 0’5, 0’5) qB = (0, 0’5, 0’707)
q(t)
qA
qA
𝜃 1 ( 𝑡 )=37 ′ 7. 𝑡 2 − 100′ 53.𝑡 3
𝑑2 ( 𝑡 ) =1− 30′ 8.𝑡 2 +84 ′ 8. 𝑡 3 qB qB
𝑑3 ( 𝑡 ) =1 − 23′ 71.𝑡 2 +67.𝑡 3 tA tB t
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
Interpolador de B a C: (0’25 ≤ t ≤
0’5) C.I.
XB = (0’4, 0’4, 0’4) qB = (p/4, 0’4, 0’565) qB
qB
C.I.
XC = (0’5, 0, 0’2) qC = (p/2, 0’2, 0’5) qC
qC
J-1 tB tC t
XB = (0’5, 0’5, 0’5) qB = (0, 0’5, 0’707)
J-1
XC = (0’25, 0’5, 0’5) qC = (-1, 0’5, 0’25)
2 3
𝜃 1 ( 𝑡 )= 0 7854 + 41 7. ( 𝑡 − 0 25 ) − 116 55. ( 𝑡 − 0 25 )
′ ′ ′ ′ ′
2 3
𝑑2 ( 𝑡 ) =0 4 +0 5 ( 𝑡 − 0 25 ) − 15 5 . ( 𝑡 − 0 25 ) + 41 6 . ( 𝑡 − 0 25 )
′ ′ ′ ′ ′ ′ ′
2 3
𝑑3 ( 𝑡 ) =0 565+ 0 707 ( 𝑡 − 0 25 ) − 9 77 . ( 𝑡 − 0 25 ) +23 6 3 . ( 𝑡 − 0 25 )
′ ′ ′ ′ ′ ′ ′
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
Posición Velocidad
q1 q1
d3
d3
d2
d2
Aceleración
q1
1 A
d2
0’8
Eje z
0’6
d3 0’4 B
0’2
0 C
-1 0
-0’5 0’2
0 0’4
Eje 0’5 0’6 x
Tiempo (s) y 1 0’8 Eje
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
INTERPOLADOR A TRAMOS
Permite simplificar el control de velocidad
q q q
q1
v
a
q 0
V ≡ velocidad máxima
Problema: velocidad nula en los puntos de paso a ≡ aceleración máxima
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
Interpolador a tramos
Posición
Posición
q6i
qi-14
0 0.2 t 0.4 0.6 T-t 0.8 T
1 Tiempo
Velocidad
v3
2
00
0 0.2 t 0.4 0.6 T-t 0.8 1
T Tiempo
Aceleración
10
a
00
-a
-10
0 0.2 t 0.4 0.6 T-t 0.8 T
1 Tiempo
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
Interpolador a tramos
Tiempo Posición
Posición
6
4
0 3
2
1 3
0
0 1 2 3 4 5 6 Tiempo
7
10
Velocidad
2 1
0
3 5
-10
0 1 2 3 4
Aceleración
5 6 Tiempo
7 4 2
50
0
5 2
-50
Tiempo
6 4
0 1 2 3 4 5 6 7
7 6
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
AJUSTE PARABÓLICO
Es un ajuste lineal que se convierte en parabólico (2º grado) en
las proximidades de los puntos de paso
q q q
e
q1
q2
q0 t t t t t t
T1 T1+T2 t T1 T1+T2 t a T1 T1+T2 t
𝟏 𝟎
𝟎 𝒒 −𝒒
𝒒 + 𝒕 𝒔𝒊 𝟎 ≤ 𝒕 ≤ 𝑻 𝟏 −𝝉 𝒔𝒊𝒆𝒏𝒅𝒐 :
𝑻𝟏
𝟏 𝟎
𝟏 𝒒 −𝒒 𝒂 𝟐
𝒒 ( 𝒕 )=¿ 𝒒 + ( 𝒕 −𝑻 𝟏 ) + ( 𝒕 −𝑻 𝟏 +𝝉 ) 𝒔𝒊 𝑻 𝟏 −𝝉 ≤ 𝒕 ≤ 𝑻 𝟏 +𝝉 𝑻 𝟏 ( 𝒒 𝟐 − 𝒒𝟏 ) −𝑻 𝟐 ( 𝒒 𝟏 − 𝒒𝟎 )
𝑻𝟏 𝟐 𝒂=
𝟐 𝟏
𝟐 𝑻𝟏 𝑻 𝟐𝝉
𝟏 𝒒 −𝒒
𝒒 + ( 𝒕 −𝑻 𝟏 ) 𝒔𝒊 𝑻 𝟏+ 𝝉 ≤ 𝒕 ≤ 𝑻 𝟏+ 𝑻 𝟐
𝑻𝟐 𝒂 𝟐
𝒆= 𝝉
𝟐
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
Ajuste parabólico
Posición
qi
qi-1
t t
qi+1
0 0.5 T11 1.5 2
T1+T 2
Tiempo
Velocidad
0 0.5 T
11 1.5 T1+T
22 Tiempo
Aceleración
0
a
0.5 1
T 1.5 2
T1+T Tiempo
1 2
CONTROL CINEMÁTICO Curso de Robótica
(INTERPOLACIÓN DE TRAYECTORIAS)
Ajuste parabólico
Tiempo Posición
Posición
6
4
0 3
2
1 3
0
0 1 2 3 4 5 6 Tiempo
7
5
Velocidad
2 1
0
3 5
-5
0 1 2 3 4
Aceleración
5 6 7
Tiempo 4 2
10
0
5 2
-10
-20
0 1 2 3 4 5 6 Tiempo
7
6 4
7 6