Post on 25-Oct-2020
MEMORIAS DEL XXIII CONGRESO INTERNACIONAL ANUAL DE LA SOMIM 20 al 22 DE SEPTIEMBRE DE 2017 CUERNAVACA, MORELOS, MÉXICO
Tema A3b Mecanismos y robótica: Robótica humanoide
“Análisis estático y dinámico de un robot bípedo durante la fase de soporte simple de un ciclo de marcha”
Christian Alberto Matilde Domínguez*, Eduardo Morales Sánchez
Centro de Investigación en Ciencia Aplicada y Tecnología Avanzada Unidad Querétaro, Instituto Politécnico Nacional, Cerro Blanco no. 141 col. Colinas
del Cimatario, Querétaro, C.P. 76090, México.
*cmatilded1500@alumno.ipn.mx
R E S U M E N
Este trabajo presenta la determinación de las fuerzas y momentos, de origen estático y dinámico, que se ejercen sobre las
articulaciones de un robot bípedo de 12 grados de libertad, cuando éste ejecuta la fase de soporte simple de un ciclo de
marcha sobre una superficie horizontal. El robot es modelado como un robot serial, donde los pies derecho e izquierdo
son los eslabones base y último, respectivamente. El modelo dinámico inverso del robot se obtiene mediante la evaluación
del algoritmo recursivo de Newton-Euler, considerando que el eslabón base está en reposo e incluyendo los efectos
estáticos de manera explícita en el cálculo regresivo. De este modo, se emplea este modelo para determinar la
contribución de los efectos estáticos y dinámicos por separado. Adicionalmente, se presenta la ecuación para determinar
el cumplimiento de la condición necesaria para que el robot mantenga el balance durante la ejecución de la secuencia de
movimiento.
Palabras Clave: Robot bípedo, Algoritmo Recursivo de Newton-Euler, Ciclo de marcha.
A B S T R A C T
This work presents the determination of the forces and couples, of static and dynamic origin, exerted on the joints of a 12-
degreee-of-freedom biped robot, when it executes the simple support phase of a gait cycle over a horizontal surface. The
robot is modelled as a serial robot, where the right foot is the base link while the left foot is the end-effector. The inverse
dynamic model of the robot is obtained through the evaluation of the Recursive Newton-Euler Algorithm, considering that
the base link is at rest and including the static effects explicitly on the regressive computation. In this way, it is used to
determine the contribution of the static and dynamic effects separately. Additionally, the equation for the determination of
the fulfilling of the necessary condition for the robot to be in balance during the execution of the sequence of motion, is
presented.
Keywords: Biped robot, Recursive Newton-Euler Algorithm, Gait cycle.
1. Introducción
Un robot bípedo puede ser modelado como un robot serial
durante la ejecución de la fase de soporte simple del ciclo de
marcha de cualquiera de sus extremidades. En este intervalo
de tiempo, uno de los pies, el de apoyo, se encuentra fijo con
respecto al suelo, mientras que el otro se desplaza en el aire.
El pie de apoyo es el eslabón base y el otro, el eslabón
último. El robot es estudiado, entonces, mediante las
herramientas matemáticas desarrolladas para robots
manipuladores, como el algoritmo recursivo de Newton-
Euler (ARNE), por ejemplo. Este modelo se utiliza para
determinar las fuerzas y momentos que actúan sobre las
articulaciones de un robot serial, tomando en cuenta la
velocidad y la aceleración con la que se realizan los
movimientos.
Uno de los objetivos principales del sistema de control en
tiempo real de un robot bípedo es evitar que éste caiga. Esto
se consigue manteniendo el balance, dinámico o estático, en
cualquier instante. La determinación del primero involucra
más operaciones que la determinación del segundo,
empleando más tiempo para evaluarlo, por lo que se utiliza
únicamente cuando los efectos dinámicos no pueden ser
despreciados. Por lo tanto, es indispensable disponer de una
herramienta que permita determinar los efectos dinámicos y
estáticos, para compararlos e identificar su contribución, y
decidir si es necesario realizar el análisis dinámico (inverso)
del robot, o basta con realizar el análisis estático.
Los eslabones y actuadores de un robot humanoide se
dibujan en programas de diseño mecánico como Catia [3],
Pro/Engineer [2], Solid Edge [5] y SolidWorks [4]. De esta
manera se dispone de un modelo virtual (modelo CAD) del
sistema para realizar simulaciones en el mismo programa, o
en otro, de análisis, como Adams [3] o SimMechanics [4].
Los programas de diseño mecánico mencionados con
anterioridad, disponen de comandos para determinar la
distribución de masa de los eslabones, necesaria para
ISSN 2448-5551 MT 8 Derechos Reservados © 2017, SOMIM
MEMORIAS DEL XXIII CONGRESO INTERNACIONAL ANUAL DE LA SOMIM 20 al 22 DE SEPTIEMBRE DE 2017 CUERNAVACA, MORELOS, MÉXICO
resolver el modelo dinámico (inverso o directo), e incluyen
módulos para realizar simulaciones de movimiento (análisis
dinámico). Sin embargo, no es posible diferenciar los
efectos dinámicos de los estáticos, pues se presenta la
solución numérica del modelo dinámico inverso, que
representa la suma de los efectos dinámicos y estáticos. De
este modo, se requiere un conjunto de ecuaciones que
permita determinar la magnitud de los efectos dinámicos en
comparación con la magnitud de los efectos estáticos, para
determinar si es indispensable incluirlos en la determinación
del balance durante la marcha.
Este trabajo presenta un conjunto de ecuaciones que
permite determinar y comparar los efectos dinámicos con los
estáticos, para decidir si es necesario emplearlos en la
determinación del balance durante la ejecución de la fase de
soporte simple del ciclo de marcha de un robot bípedo.
2. Metodología
Se obtiene el modelo geométrico directo del robot para
conocer la posición y la orientación de cada uno de sus
eslabones con respecto al eslabón base, cuando se conocen
las posiciones angulares de los actuadores. Las matrices de
transformación homogénea que componen este modelo se
utilizan para determinar la posición de cualquier punto,
definido con respecto a cualquiera de los sistemas de
coordenadas adjuntos al robot, relativa al sistema de
referencia (sistema de coordenadas 0 asignado al eslabón
base). Después, se utiliza la misma asignación de sistemas
de coordenadas para determinar el modelo dinámico inverso
del robot, mediante la formulación de Newton-Euler
expresada en forma recursiva, a partir de la cual se realiza la
comparación entre los efectos estáticos y dinámicos. Por
último, se evalúa el cumplimiento de la condición necesaria
para el balance estático o dinámico, según se requiera.
3. Descripción del robot bajo estudio
Se elabora el modelo CAD del robot en un programa de
diseño mecánico (Fig. 1). Cada extremidad posee 3
articulaciones: el tobillo, la rodilla y la cadera, de 2, 1 y 3
grados de libertad, respectivamente.
(a) (b)
Figura 1 – Modelo CAD del robot realizado en SolidWorks. Vistas:
(a) frontal; (b) izquierda.
4. Modelo geométrico directo
Se asignan (Fig. 2) sistemas de coordenadas a los eslabones
del robot siguiendo la convención de Denavit-Hartenberg
descrita en [1] y se determinan los parámetros que los
relacionan (tabla 1).
Figura 2 – Asignación de sistemas de coordenadas.
Tabla 1 – Parámetros de Denavit-Hartenberg del robot.
i αi-1 (°) ai-1 (mm) di (mm) θi (°)
1 0 0 0 q1
2 90 0 0 q2
3 0 a2 0 q3
4 0 a3 0 q4
5 -90 0 d5 q5 + 90
6 -90 0 -d6 q6
7 0 a6 d7 q7
8 90 0 -d8 q8 + 90
9 90 0 0 q9
10 0 a9 0 q10
11 0 a10 0 q11
12 -90 0 0 q12
ISSN 2448-5551 MT 9 Derechos Reservados © 2017, SOMIM
MEMORIAS DEL XXIII CONGRESO INTERNACIONAL ANUAL DE LA SOMIM 20 al 22 DE SEPTIEMBRE DE 2017 CUERNAVACA, MORELOS, MÉXICO
Se evalúan los parámetros de Denavit-Hartenberg del robot
(un renglón a la vez) en la ecuación siguiente [1]:
,
1000
0
1111
1111
1
1
iiiiiii
iiiiiii
iii
ii
dccscss
dsscccs
asc
T
(1)
para determinar las matrices de transformación individual de
éste. A continuación, se evalúa la ecuación siguiente
( 12,...,3,2i ):
,101
0 TTT iiii
(2)
para determinar el resto de las matrices de transformación
homogénea que componen el modelo geométrico directo del
robot, que en forma compacta se define como:
.12,...,2,1
0
iiTMGD (3)
5. Modelo dinámico inverso
Las ecuaciones siguientes forman el cálculo progresivo del
algoritmo recursivo de Newton-Euler [1]:
,11
11
11
i
iii
iiii
i ZR (4)
,11
111
111
11
i
iii
iii
iiii
iiii
i ZZRR (5)
],)([ 111
11
ii
ii
ii
ii
ii
iii
iii OOR
(6)
,)( 11
11
11
11
11
11
1
1
ii
ii
ii
ii
ii
ii
iCi CC (7)
,11
111
i
iii
i mF (8)
.11
111
11
111
i
iii
ii
iii
i IIN (9)
Al considerar que el eslabón 0 está en reposo, como sucede
durante la fase de soporte simple de la extremidad derecha,
se debe incluir el efecto del peso de cada eslabón en el
cálculo regresivo del algoritmo recursivo de Newton-Euler.
Esto se realiza de la manera siguiente:
,001
11 i
ii
ii
iiii
i WRFfRf
(10)
.001
1111
11 i
ii
ii
iiii
ii
ii
ii
iiii
ii
i WRCfROFCnRNn
(11)
Las ecs. (10) y (11) forman el modelo dinámico inverso del
robot; éstas se evalúan para cada instante considerado en la
secuencia de movimiento bajo estudio. Al omitir los efectos
dinámicos ( iiF y i
i N ) en las ecs. (10) y (11), se determinan
los efectos estáticos únicamente:
,001
11 i
ii
iiii
i WRfRfe
(12)
.001
1111
11 i
ii
ii
iiii
ii
iiii
i WRCfROnRne
(13)
6. Evaluación numérica del ARNE
Se emplea el modelo CAD del robot para determinar la
distribución de masa de cada uno de sus eslabones; ésta se
caracteriza por la masa, la posición del centro de masa y el
tensor de inercia.
Se asigna un sistema de coordenadas A, al entorno. La
superficie sobre la que se realiza la secuencia de movimiento
está definida por el plano XAYA. Al inicio del movimiento,
la posición y la orientación del sistema de coordenadas 0,
con respecto al sistema de coordenadas A, es conocida.
La fase de soporte simple que se considera está definida
por las funciones de movimiento i , i y i , para 12,...,2,1i . La Fig. 3 muestra las funciones de posición
angular de los actuadores (funciones iq únicamente), que
definen un ciclo de marcha de la extremidad izquierda que
inicia a partir de la postura de referencia. La fase de soporte
simple de la extremidad derecha (que equivale a la fase de
balanceo de la extremidad izquierda) comprende la región
delimitada por líneas punteadas, que transcurre en el
intervalo de tiempo de 37 a 46 segundos. El ciclo de marcha
del robot es distinto del ciclo de marcha del cuerpo humano.
(a) (b)
Figura 3 – Funciones de posición angular de los actuadores de las
extremidades: (a) derecha; (b) izquierda.
Se evalúan los parámetros mencionados con anterioridad
en el modelo dinámico inverso del robot, de manera
simultánea se determinan los efectos estáticos. Se obtienen
resultados como los que se presentan en la Fig. 4, donde se
muestra la acción que el eslabón 0 ejerce sobre el sistema de
ISSN 2448-5551 MT 10 Derechos Reservados © 2017, SOMIM
MEMORIAS DEL XXIII CONGRESO INTERNACIONAL ANUAL DE LA SOMIM 20 al 22 DE SEPTIEMBRE DE 2017 CUERNAVACA, MORELOS, MÉXICO
coordenadas adjunto al eslabón 1 (el momento n1z es
producido por el actuador 1). La línea negra muestra la suma
de los efectos dinámicos y estáticos (solución del modelo
dinámico inverso); la línea roja, únicamente los efectos
estáticos. Debido a que los efectos dinámicos son menores
al 10% de los efectos estáticos (en diferencia positiva o
negativa), se concluye que no son significativos. Por lo
tanto, el análisis estático es suficiente para determinar las
fuerzas y los momentos que actúan sobre los eslabones
cuando el robot ejecuta la secuencia de movimiento deseada.
(a)
(b)
Figura 4 – Resultados del modelo dinámico inverso: (a) Fuerza sobre
el eje X1; (b) Momento alrededor del eje Z1.
7. Simulación de la secuencia de movimiento
Se realiza una simulación de movimiento en SolidWorks
para verificar que las gráficas de f1x y n1z, y en general los
resultados numéricos de las ecs. (10) y (11), son correctos.
Esto es cierto cuando los resultados de la simulación (Fig.
5) son iguales a los obtenidos de forma analítica. La Fig. 5(b)
es opuesta a la Fig. 4(b) debido a la forma en que se dibujó
el eslabón 1, esta situación no representa un resultado
incorrecto.
(a)
(b)
Figura 5 – Resultados de la simulación realizada en SolidWorks:
(a) Fuerza sobre el eje X1; (b) Momento alrededor del eje Z1.
8. Balance durante la marcha
Debido a que los efectos dinámicos no son significativos, se
considera que no es necesario determinar el balance
dinámico del robot. Por lo tanto, solo se evalúa si la
condición de balance estático se satisface durante la
ejecución de la secuencia de movimiento. El centro de masa
del robot, definido con respecto al sistema de coordenadas
0, está dado por la ecuación siguiente:
,12
1
0
0
12
1
00
0
0
i
i
i
i
i
mm
CmCm
C (14)
donde ii
ii CTC 00 , mientras que la posición del centro de masa
del robot con respecto al entorno está dada por:
.]1,,,[00
TAAAAA zyxCTC (15)
ISSN 2448-5551 MT 11 Derechos Reservados © 2017, SOMIM
MEMORIAS DEL XXIII CONGRESO INTERNACIONAL ANUAL DE LA SOMIM 20 al 22 DE SEPTIEMBRE DE 2017 CUERNAVACA, MORELOS, MÉXICO
La proyección vertical del centro de masa del robot está
definida por los componentes 1 y 2 del vector de posición
CA . Al evaluar las ecs. (14) y (15) se encuentra que la
proyección vertical del centro de masa del robot se encuentra
contenida en la base de soporte, definida por la planta del
pie derecho, durante la ejecución de la fase de soporte simple
de la extremidad derecha (Fig. 6). De modo que, la
condición de balance estático se cumple [7]. Por lo tanto, el
robot es capaz de ejecutar la secuencia de movimiento bajo
estudio, si los actuadores pueden producir los pares
requeridos y si los eslabones soportan las fuerzas y
momentos a los que se someten.
(a)
(b)
Figura 6 – Postura del robot durante la fase de soporte simple de la
extremidad derecha (a) Inicio; (b) Final.
La posición del ZMP está definida por las ecuaciones
siguientes (adaptadas de [6]):
,
12
1
0
12
1
00
i
ziAA
iA
i
ziA
xiA
xiA
ziA
yiAA
xiA
iA
x
A
ZMPA
Fgmgm
FCFCNgCmgCm
x (16)
;
12
1
0
12
1
00
i
ziAA
iA
i
yiA
ziA
ziA
yiA
xiAA
yiA
iA
y
A
ZMPA
Fgmgm
FCFCNgCmgCm
y (17)
donde el superíndice A indica que todas las cantidades
vectoriales se expresan con respecto al sistema de
coordenadas A, adjunto al entorno. Debido a que los efectos
dinámicos no son significativos, la diferencia (Fig. 7) entre
la proyección vertical del centro de masa y la posición del
ZMP es pequeña (como se esperaba). Al comparar las ecs.
(16) y (17) con la ec. (14) se aprecia que cuando los efectos
dinámicos no son significativos ( 0 ii
ii NF ), la proyección
vertical del centro de masa del robot y el ZMP son
coincidentes.
(a)
(b)
Figura 7 – Trayectoria de la proyección vertical del punto C y del ZMP
durante la fase de soporte simple de la extremidad derecha: (a) Inicio;
(b) Final.
ISSN 2448-5551 MT 12 Derechos Reservados © 2017, SOMIM
MEMORIAS DEL XXIII CONGRESO INTERNACIONAL ANUAL DE LA SOMIM 20 al 22 DE SEPTIEMBRE DE 2017 CUERNAVACA, MORELOS, MÉXICO
9. Conclusión
Se presentaron los modelos geométrico directo y dinámico
inverso de un robot bípedo, los cuales se utilizaron para
determinar los efectos estáticos y dinámicos que se ejercen
sobre los eslabones de éste cuando se ejecuta una secuencia
de movimiento. Estos efectos se utilizaron para determinar
el balance durante el desarrollo de la fase de soporte simple
de una extremidad. Se mostró que cuando los efectos
dinámicos no son significativos, la desviación entre la
proyección vertical del centro de masa del robot y la
posición del ZMP es pequeña, por lo tanto, basta satisfacer
la condición de balance estático para garantizar la
realización del movimiento.
Agradecimientos
Este trabajo se realizó gracias a una beca (no. 426742)
otorgada por el Consejo Nacional de Ciencia y Tecnología
(CONACYT), para realizar estudios de maestría; la difusión
de éste se realizó gracias a un apoyo otorgado por el Consejo
de Ciencia y Tecnología del Estado de Querétaro
(CONCYTEQ), a través de la convocatoria para realizar
actividades de difusión de la ciencia, la tecnología y la
innovación, edición 2017 (no. de registro 197).
REFERENCIAS
[1] Craig, J. Robótica. Capítulos 3 y 6. Tercera edición. Pearson Prentice Hall.
[2] Deng, X; Wang, J; Xiang, Z. The simulation Analysis of Humanoid Robot Based on Dynamics and Kinematics. ICIRA, Part I, pp. 93 – 100, 2008.
[3] Do-un, K; Sang-wook, H; Hyo-jun, K. Kinematic analysis of a humanoid robot CHP-1 and selection of motors in consideration of cooperative motion. Journal of Central South University, Springer 2012.
[4] Hernández-Santos, C; Soto, R; Rodríguez, E. Design and Dynamic Modeling of Humanoid Biped Robot e-Robot. 2011 IEEE Electronics, Robotics and Automotive Mechanics Conference, pp. 191-196.
[5] Narváez-Aroche, O; Rocha-Cózatl, E; Cuenca-Jiménez, F. Modelos dinámico de un robot bípedo de 12 GDL internos. Memorias del XVII Congreso Internacional Anual de la SOMIM, pp. 992-1001, 2011.
[6] Sardain, P; Bessonnet; G. Forces Acting on a Biped Robot. Center of Pressure—Zero Moment Point. IEEE Transactions on systems, man, and cybernetics—Part A: Systems and Humans, vol. 34, no. 5, pp. 630-637, 2004.
[7] Siciliano, B; Khatib, O. Springer Handbook of Robotics. Chapter 16. Springer-Verlag Berlin Heidelberg.
ISSN 2448-5551 MT 13 Derechos Reservados © 2017, SOMIM