Control cinemático y dinámico de robots omnidireccionales · 2017. 1. 10. · Control cinemático...
Transcript of Control cinemático y dinámico de robots omnidireccionales · 2017. 1. 10. · Control cinemático...
Control cinemático y dinámico de robots omnidireccionales
basado parcialmente en: Siegwart, Nourbakhsh y Scaramuzza, Introduction to Autonomous Mobile Robots
Campion, et al., Structural Properties … of Wheeled Mobile Robots Spong et al., Robot Modelling and Control
Escuela de Invierno de Robótica
INAOE, Tonantzintla, Puebla
M. en C. Luis Fernando Lupián Sánchez Laboratorio de Robótica Móvil y Sistemas Automatizados
Diciembre 2013 1
Robótica vs. Robótica Móvil
2
Ciclo de control de robots móviles
3
Datos
Modelo del ambiente Mapa local
“Posición" Mapa global
Comandos de actuadores
Sensado Acción
Extracción de información
Ejecución de trayectoria
Cognición y planeación de
trayectoria
Base de datos de conocimiento
Comandos de misión
Trayectoria
Ambiente del mudno real
Construcción de mapa de localización
Con
trol d
e m
ovim
ient
o
Perc
epci
ón
Locomoción basada en ruedas
• Altamente eficiente cuando se usa en
superficies planas
• Se pueden alcanzar altas velocidades
4
Tracción diferencial 5
Tracción diferencial 6
Tracción diferencial 7
Tracción “powered-castor” 8
Tracción “powered-castor” 9
Tracción omnidireccional sueca 10
Tracción omnidireccional sueca 11
Rueda omnidireccional sueca (Mecanum wheel)
12
Rueda omnidireccional sueca 13
Tracción omnidireccional 14
Rueda omnidireccional (poly wheel)
15
Rueda omnidireccional 16
Rueda omnidireccional 17
Rueda omnidireccional 18
Rueda omnidireccional 19
Robots omnidireccionales 20
Definiciones partes de un robot móvil
• Llamaremos plataforma o unidad móvil
a la parte del robot móvil encargada de las funciones de locomoción
• Llamaremos manipulador o extensión a todo aquel elemento articulado que viaja sobre la unidad móvil
21
Definiciones configuración
• Una configuración para un robot móvil es una
especificación completa de la ubicación de cada punto de interés del robot.
• El conjunto de todas las configuraciones se llama espacio de configuración.
Definiciones pose
• La pose de un robot móvil es la
configuración de la unidad móvil con respecto al marco de referencia global
• Está formada por una posición y una orientación
23
Definiciones grados de libertad totales
• Los grados de libertad (DOF) se refieren a la mínima cantidad de variables necesarias para especificar la configuración de un objeto.
• El número de grados de libertad es igual a la dimensión del espacio de configuración
24
Definiciones grados de libertad totales
• Para un robot móvil que se desplaza en el espacio tridimensional el número de grados de libertad es 6
25
Definiciones grados de libertad totales
• Para un robot móvil que se desplaza en sobre un plano el número de grados de libertad es 3
26
Definiciones pose
• La pose de un robot móvil que se
desplaza sobre un plano se expresa como un vector 𝜻 de la forma
𝜻 =𝑥𝑦𝜃
27
Definiciones velocidad
• Cuando hablemos de la “velocidad” del robot móvil nos referiremos a la primera derivada de 𝜻 con respecto al tiempo.
�̇� =�̇��̇��̇�
28
Definiciones grados de libertad controlables
• Los grados de libertad controlables (CDOF) se refieren a los grados de libertad que existe en los elementos de locomoción (ruedas)
29
Definiciones grados de libertad controlables
• Coche: CDOF = 2
30
Definiciones grados de libertad controlables
• Triciclo: CDOF = 2
31
Definiciones grados de libertad controlables
• Robot de tracción diferencial: CDOF = 2
32
Definiciones grados de libertad controlables
• Tracción omnidireccional sueca: CDOF = 4
33
Definiciones grados de libertad controlables
• “Powered-castor wheels”: CDOF = (2/rueda)*(4 ruedas) = 8
34
Definiciones grados de libertad controlables
• Robot omnidireccional: CDOF = (1/rueda)*(n ruedas) = n
35
Definiciones sistema no-holonómico
• Es un sistema en el que la cantidad de
grados de libertad controlables es menor que la cantidad de grados de libertad totales
• Ejemplo: carro, tracción diferencial, triciclo
• Tiene restricciones en el sentido de que no todas las trayectorias son posibles
36
Definiciones sistema holonómico
• Es un sistema en el que la cantidad de
grados de libertad controlables es igual a la cantidad de grados de libertad totales
• Ejemplo: robot omnidireccional con tres ruedas
• Todas las trayectorias son posibles
37
Definiciones sistema redundante
• Es un sistema en el que la cantidad de
grados de libertad controlables es mayor que la cantidad de grados de libertad totales
• Ejemplo: robot omnidireccional con cuatro ruedas (poly o suecas)
• Todas las trayectorias son posibles
38
Definiciones ruedas articuladas
• Son aquellas cuya orientación con respecto
al robot depende de algún tipo de actuador
• Ejemplo: dirección de triciclo, coche, “castor wheel”
39
Definiciones ruedas fijas
• Son aquellas cuya orientación con respecto
al robot es fija
• Ejemplo: Tracción sueca, omnidireccional, diferencial
40
Definiciones cinemática
• Parte de la mecánica que estudia el
movimiento de objetos sin tomar en cuenta sus inercias
• En el contexto de un robot móvil: – Es el estudio del la relación que hay entre el
desplazamiento del robot y el movimiento de sus actuadores
41
Definiciones cinemática
• Parte de la mecánica que estudia el
movimiento de objetos sin tomar en cuenta sus inercias
• En el contexto de un robot móvil: – Es el estudio del la relación que hay entre el
desplazamiento del robot y el movimiento de sus actuadores
42
Cinemática de robots móviles
• La cinemática de robots articulados (cadenas
cinemáticas) no es aplicable para el estudio de la cinemática de robots móviles
• La pose de un robot móvil en su espacio de trabajo no se puede determinar sólo con conocer la posición angular de sus ruedas
43
¿POR QUÉ?
Cinemática de robots móviles suposiciones
• El robot está hecho de una estructura rígida • Las ruedas no son deformables • El robot se desplaza sobre una superficie
plana horizontal • El eje de rotación de todas las ruedas es
paralelo al plano horizontal • Las ruedas no se derrapan
44
Definiciones cinemática directa
• El modelo cinemático directo de un
robot móvil consiste en – determinar
• la velocidad del robot (traslación y rotación)
– en función de • las posiciones articulares y velocidades de
rotación de las ruedas
45
Definiciones cinemática directa
Modelo cinemático directo
�̇� = 𝑓𝐷 𝜶, �̇� donde
�̇� es el vector de velocidad del robot (traslación y rotación) 𝜶 es un vector que contiene las posiciones articulares (orientación) de las 𝑛 ruedas �̇� es un vector que contiene las velocidades de rotación (avance) de las 𝑛 ruedas
46
Definiciones cinemática directa
La pose 𝜻 = 𝑥 𝑦 𝜃 𝑇 del robot se puede obtener integrando el modelo cinemático directo con respecto al tiempo
�̇� = 𝑓𝐷 𝜶, �̇�
A este proceso se le conoce como “odometría”
47
Definiciones cinemática inversa
• El modelo cinemático inverso de un robot móvil consiste en – expresar
• las posiciones articulares y velocidades de rotación de las ruedas
– en función de • la velocidad deseada del robot (traslación y
rotación) 𝜶�̇� = 𝑓𝐼 �̇�
48
Definiciones cinemática inversa
𝜶�̇� = 𝑓𝐼 �̇�
• El modelo cinemático inverso de un
robot móvil no siempre existe
49
¿POR QUÉ?
Definiciones cinemática inversa
𝜶�̇� = 𝑓𝐼 �̇�
• El modelo cinemático inverso de un
robot móvil se aplica para control cinemático o ejecución de trayectorias
50
Cinemática de robots móviles omnidireccionales
• Los robots con ruedas omnidireccionales
generalmente usan una configuración de ruedas fijas
• Bajo esta restricción, el modelo cinemático se simplifica porque no hay que considerar posiciones articulares
51
Cinemática de robots móviles omnidireccionales
• Si las ruedas son fijas entonces los modelos
cinemáticos (directo e inverso) son de la forma:
�̇� = 𝑓𝐷 �̇� �̇� = 𝑓𝐼 �̇�
donde �̇� velocidad del robot (traslación y rotación) �̇� velocidades de angulares (avance) de las ruedas
52
Cinemática de robots móviles
• La cinemática de robots móviles consiste en
estudiar el efecto que tiene cada una de las ruedas sobre la locomoción del robot
• La forma en que están orientados los ejes de rotación entre sí es fundamental
53
Cinemática de robots móviles omnidireccionales
• En el caso de los robots omnidireccionales con ruedas fijas, hay dos clases
• Ejes de rotación paralelos
54
Cinemática de robots móviles omnidireccionales
• En el caso de los robots omnidireccionales con ruedas fijas, hay dos clases
• Ejes de rotación radiales
55
Nosotros nos concentraremos
en este caso
Ambos modelos cinemáticos
siempre existen
Cinemática de robots móviles
• El modelo cinemático de robots móviles se
puede dividir en dos partes
– Modelo cinemático con respecto al marco de referencia local del robot
– Rotación del marco de referencia local del robot con respecto al marco de referencia global
56
Paréntesis representación de puntos y vectores
• Razonamiento geométrico: – Enfoque sintético: razonar directamente sobre
los objetos geométricos
– Enfoque analítico: representar los objetos geométricos usando coordenadas y ecuaciones. Requiere especificar un marco de referencia, que incluye on origen y dos o tres ejes ortogonales (dependiendo de la dimensión).
57
Paréntesis representación de puntos y vectores
• Usaremos 𝑝 para referirnos al punto indepen-dientemente del marco de referencia
• Usaremos 𝑝0 para referirnos a la coordenada de 𝑝 con respecto al marco de referencia 𝑜0𝑥0𝑦0 y 𝑝1 para referirnos a la coordenada de 𝑝 con respecto al marco de referencia 𝑜1𝑥1𝑦1
58
Paréntesis representación de puntos y vectores
El marco de referencia 𝑜1𝑥1𝑦1 está rotado 45𝑜 con respecto a 𝑜0𝑥0𝑦0
𝑝0 = 56 , 𝑝1 = −2.8
4.2
𝑝 es una entidad geométrica mientras que 𝑝0 y 𝑝1 representan la ubicación de 𝑝 con respecto a 𝑜0𝑥0𝑦0 y 𝑜1𝑥1𝑦1
59
Paréntesis representación de puntos y vectores
El origen de un marco de referencia es un punto cuya coordenada se puede expresar con respecto a otro marco de referencia. Por ejemplo:
𝑂10 = 105 , 𝑂01 = −10.6
3.5
el subíndice indica cuál punto es el superíndice indica el marco de referencia
60
Paréntesis representación de puntos y vectores
Un vector representa una dirección y una magnitud sin importar el punto en el que se encuentre Los vectores pueden representar fuerzas, desplazamientos, velocidades, etc. Por ejemplo, el vector 𝑣1 representa el desplazamiento necesario para llegar desde el punto 𝑜0 hasta el punto 𝑝
61
Paréntesis representación de puntos y vectores
Al igual que los puntos, los vectores son entidades geométricas que existen independientemente del marco de referencia En la figura, 𝑣1 y 𝑣2 representan vectores. Estos vectores se pueden representar con respecto a algún marco de referencia
𝑣10 = 56 , 𝑣11 = 7.77
0.8 , 𝑣20 = −5.11 , 𝑣21 = −2.89
4.2
62
Paréntesis representación de puntos y vectores
Una interpretación de 𝑣10 usando el producto punto es que estamos proyectando el vector 𝑣1 sobre los ejes 𝑥0 y 𝑦0, es decir
𝑣10 =𝑣1 ∙ 𝑥0𝑣1 ∙ 𝑦0
63
Cinemática de robots móviles rotación
64
Marcos de referencia: • Marco de ref. global o
inercial 𝑜𝐺𝑥𝐺𝑦𝐺
• Marco de ref. local o del
robot 𝑜𝐿𝑥𝐿𝑦𝐿
Cinemática de robots móviles rotación
65
Expresemos al vector 𝑣𝐿 en el marco del robot como
𝑣𝐿=𝑣𝑥𝐿𝑣𝑦𝐿
entonces podemos escribir 𝑣𝐺 como una combinación lineal de 𝑥𝐿𝐺 y 𝑦𝐿𝐺 de la siguiente forma
𝑣𝐺 = 𝑣𝑥𝐿𝑥𝐿𝐺 + 𝑣𝑦𝐿𝑦𝐿
𝐺
𝑣
Cinemática de robots móviles rotación
66
La combinación lineal
𝑣𝐺 = 𝑣𝑥𝐿𝑥𝐿𝐺 + 𝑣𝑦𝐿𝑦𝐿
𝐺 se puede escribir como
𝑣𝐺 = 𝑥𝐿𝐺|𝑦𝐿𝐺𝑣𝑥𝐿𝑣𝑦𝐿
o de manera compacta 𝑣𝐺 = 𝑅𝑜𝑅𝐿𝐺𝑣𝐿
𝑣
Cinemática de robots móviles rotación
67
𝑅𝑜𝑅𝐿𝐺 = 𝑥𝐿𝐺|𝑦𝐿𝐺
𝑅𝑜𝑅𝐿𝐺 = cos𝜃 − sin𝜃sin𝜃 cos𝜃
𝑅𝑜𝑅𝐿𝐺 =𝑐𝜃 −𝑠𝜃𝑠𝜃 𝑐𝜃
𝑣
Cinemática de robots móviles rotación
68
Sea 𝜁̇𝐿 la representación de la velocidad del robot en el marco de ref. local 𝜁̇𝐺 la representación de la velocidad del robot en el marco de ref. global
𝑣
Cinemática de robots móviles rotación
69
La velocidad angular del robot �̇� es la misma en ambos marcos de ref. Es decir,
�̇�𝐿 = �̇�𝐺
𝑣
Cinemática de robots móviles rotación
70
Entonces es fácil verificar que
𝑣𝐺�̇�𝐺
=𝑐𝜃 −𝑠𝜃 0𝑠𝜃 𝑐𝜃 00 0 1
𝑣𝐿�̇�𝐿
𝜁̇𝐺 =𝑐𝜃 −𝑠𝜃 0𝑠𝜃 𝑐𝜃 00 0 1
𝜁̇𝐿
𝑣
Cinemática de robots móviles rotación
71
De manera compacta podemos escribir
𝜁̇𝐺 = 𝑅𝐿𝐺 𝜃 𝜁̇𝐿 donde
𝑅𝐿𝐺 𝜃 =𝑐𝜃 −𝑠𝜃 0𝑠𝜃 𝑐𝜃 00 0 1
es la matriz de rotación que transforma la vel. del robot del marco de ref. local al global
𝑣
Cinemática de robots móviles marco de referencia local
72
𝑥𝐿
𝑦𝐿
𝛽1 𝛽2
𝛽3
𝑟𝑤
𝑟𝑏
Cinemática de robots móviles marco de referencia local
73
𝜙1̇ = 𝑓 �̇�𝐿, �̇�𝐿, �̇�𝐿 𝜙1̇ = A�̇�𝐿 + 𝐵�̇�𝐿 + 𝐶�̇�𝐿
𝛽1 𝑥𝐿
𝑦𝐿
�̇�1
Cinemática de robots móviles marco de referencia local
74
�̇�1 = A�̇�𝐿 + 𝐵�̇�𝐿 + 𝐶�̇�𝐿 Por superposición: Hagamos �̇�𝐿 = 0, �̇�𝐿 = 0
�̇�1 = 𝐶�̇�𝐿
𝑟𝑤�̇�1 = −𝑟𝑏�̇�𝐿 �̇�1 = −
𝑟𝑏𝑟𝑤�̇�𝐿
𝛽1 𝑥𝐿
𝑦𝐿
�̇�1
Cinemática de robots móviles marco de referencia local
75
𝑥𝐿
𝑦𝐿 �̇�1 = A�̇�𝐿 + 𝐵�̇�𝐿 + 𝐶�̇�𝐿
Por superposición: Hagamos �̇�𝐿 = 0, �̇�𝐿 = 0
�̇�1 = 𝐴�̇�𝐿
�̇�1 = 0 𝛽1 = 0°
Cinemática de robots móviles marco de referencia local
76
𝛽1 = 90°
𝑥𝐿
𝑦𝐿 �̇�1 = A�̇�𝐿 + 𝐵�̇�𝐿 + 𝐶�̇�𝐿
Por superposición: Hagamos �̇�𝐿 = 0, �̇�𝐿 = 0
�̇�1 = 𝐴�̇�𝐿
𝑟𝑤�̇�1 = �̇�𝐿
�̇�1 =1𝑟𝑤�̇�𝐿
Cinemática de robots móviles marco de referencia local
77
𝛽1 𝑥𝐿
𝑦𝐿
�̇�1 �̇�1 = A�̇�𝐿 + 𝐵�̇�𝐿 + 𝐶�̇�𝐿
Por superposición: Hagamos �̇�𝐿 = 0, �̇�𝐿 = 0
�̇�1 = 𝐴�̇�𝐿
�̇�1 = sin𝛽11𝑟𝑤�̇�𝐿
Cinemática de robots móviles marco de referencia local
78
𝛽1 = 90°
𝑥𝐿
𝑦𝐿 �̇�1 = A�̇�𝐿 + 𝐵�̇�𝐿 + 𝐶�̇�𝐿
Por superposición: Hagamos �̇�𝐿 = 0, �̇�𝐿 = 0
�̇�1 = 𝐵�̇�𝐿
�̇�1 = 0
Cinemática de robots móviles marco de referencia local
79
𝑥𝐿
𝑦𝐿 �̇�1 = A�̇�𝐿 + 𝐵�̇�𝐿 + 𝐶�̇�𝐿
Por superposición: Hagamos �̇�𝐿 = 0, �̇�𝐿 = 0
�̇�1 = 𝐵�̇�𝐿
−𝑟𝑤�̇�1 = �̇�𝐿
�̇�1 = −1𝑟𝑤�̇�𝐿
𝛽1 = 0°
Cinemática de robots móviles marco de referencia local
80
𝛽1 𝑥𝐿
𝑦𝐿
�̇�1 �̇�1 = A�̇�𝐿 + 𝐵�̇�𝐿 + 𝐶�̇�𝐿
Por superposición: Hagamos �̇�𝐿 = 0, �̇�𝐿 = 0
�̇�1 = 𝐵�̇�𝐿
�̇�1 = − cos𝛽11𝑟𝑤�̇�𝐿
Cinemática de robots móviles marco de referencia local
81
𝛽1 𝑥𝐿
𝑦𝐿
�̇�1 �̇�1 = A�̇�𝐿 + 𝐵�̇�𝐿 + 𝐶�̇�𝐿
Recolectando tenemos
�̇�1 = sin𝛽11𝑟𝑤�̇�𝐿 − cos𝛽1
1𝑟𝑤�̇�𝐿 −
𝑟𝑏𝑟𝑤�̇�𝐿
Cinemática de robots móviles marco de referencia local
82
𝑥𝐿
𝑦𝐿
𝛽1 𝛽2
𝛽3
𝑟𝑤
𝑟𝑏 El modelo cinemático inverso para las otras ruedas se deduce de la misma forma:
�̇�1 =sin𝛽1𝑟𝑤
�̇�𝐿 −cos𝛽1𝑟𝑤
�̇�𝐿 −𝑟𝑏𝑟𝑤�̇�𝐿
�̇�2 =sin𝛽2𝑟𝑤
�̇�𝐿 −cos𝛽2𝑟𝑤
�̇�𝐿 −𝑟𝑏𝑟𝑤�̇�𝐿
�̇�3 =sin𝛽3𝑟𝑤
�̇�𝐿 −cos𝛽3𝑟𝑤
�̇�𝐿 −𝑟𝑏𝑟𝑤�̇�𝐿
Cinemática de robots móviles marco de referencia local
83
𝑥𝐿
𝑦𝐿
𝛽1 𝛽2
𝛽3
𝑟𝑤
𝑟𝑏 El modelo cinemático inverso para las otras ruedas se deduce de la misma forma:
�̇�1�̇�2�̇�3
=
sin𝛽1𝑟𝑤
−cos𝛽1𝑟𝑤
−𝑟𝑏𝑟𝑤
sin𝛽2𝑟𝑤
−cos𝛽2𝑟𝑤
−𝑟𝑏𝑟𝑤
sin𝛽3𝑟𝑤
−cos𝛽3𝑟𝑤
−𝑟𝑏𝑟𝑤
�̇�𝐿�̇�𝐿�̇�𝐿
Cinemática de robots móviles marco de referencia local
84
𝑥𝐿
𝑦𝐿
𝛽1 𝛽2
𝛽3
𝑟𝑤
𝑟𝑏 El modelo cinemático inverso para las otras ruedas se deduce de la misma forma:
�̇�1�̇�2�̇�3
=1𝑟𝑤
𝑠𝛽1 −𝑐𝛽1 −𝑟𝑏𝑠𝛽2 −𝑐𝛽2 −𝑟𝑏𝑠𝛽3 −𝑐𝛽3 −𝑟𝑏
�̇�𝐿�̇�𝐿�̇�𝐿
�̇� = 𝑀𝐼𝐼�̇�𝑳
Cinemática de robots móviles marco de referencia global
85
𝑥𝐺
𝑦𝐺
𝜃
�̇�𝑮 = 𝑅𝐿𝐺 𝜃 �̇�𝑳
�̇�𝑳 = 𝑅𝐿𝐺 𝜃𝑇�̇�𝑮
�̇� = 𝑀𝐼𝐼�̇�𝑳
�̇� = 𝑀𝐼𝐼 𝑅𝐿𝐺 𝜃
𝑇�̇�𝑮
Cinemática de robots móviles marco de referencia global
86
𝑥𝐺
𝑦𝐺
𝜃
�̇� = 𝑀𝐼𝐼 𝑅𝐿𝐺 𝜃𝑇�̇�𝑮
donde
𝑀𝐼𝐼 =1𝑟𝑤
𝑠𝛽1 −𝑐𝛽1 −𝑟𝑏𝑠𝛽2 −𝑐𝛽2 −𝑟𝑏𝑠𝛽3 −𝑐𝛽3 −𝑟𝑏
𝑅𝐿𝐺 𝜃 =𝑐𝜃 −𝑠𝜃 0𝑠𝜃 𝑐𝜃 00 0 1