Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ID 1er Autor: Carla, Campos-Caldera / ORC ID: 0000-0001-6115-9320, Researcher ID Thomson: S-2523-2018, arXiv
Author ID: ccampos, CVU CONACYT ID: 172324
ID 1er Coautor: Javier Enrique, Alderete-Alderete / ORC ID: 0000-0002-1401-3776, Researcher ID Thomson: S-2929-
2018, arXiv Author ID: jalderete
ID 2do Coautor: Julio, Corrujedo-Lazcano / ORC ID: 0000-0002-6728-0495, Researcher ID Thomson: S-2983-2018, arXiv
Author ID: jcorrujedo
ID 3er Coautor: Juan Carlos, Soto-Armenta / ORC ID: 0000-0001-6618-7304, Researcher ID Thomson: S-2686-2018,
arXiv Author ID: jcsoto
Resumen Abstract
En este documento se detalla la construcción de un This paper details the construction of a clasic control,
controlador clásico, proporcional integral derivativo proportional integral and derivative (PID), that
(PID) para el seguimiento de una trayectoria sencilla, maded the tracking of a simple trajectory, thanks to a
abordándose los circuitos eléctricos de potencia power electric circuit that rehab an industrial robotic
(diseño propio) que hicieron posible la rehabilitación arm of 6 degree of freedom (dof). We must to say that
de un brazo robótico de fábrica de 6 g.d.l. Es the kinematic and dynamics models are validate by
indispensable mencionar que los modelos experimental tests, checking the versality of use an
cinemáticos y dinámicos del robot se validan open control scheme instead of an industrial. The
mediante pruebas experimentales, comprobándose la goal of this paper is to rehab an industrial robotic arm
versatilidad de los esquemas abiertos de control en without the industrial control scheme, desingning for
comparación con los esquemas tradicionales de that an electric power and an own graphic interface.
fábrica. La principal contribución es rehabilitar un
brazo robótico sin el esquema de control de fábrica, Re-engeenering, Controller, PID, GUI, Tuning
diseñando para ello un sistema eléctrico de potencia
y una interfaz gráfica (GUI) propia.
© ECORFAN-Taiwan www.ecorfan.org/taiwan
23
Artículo Revista de Ingeniería Biomédica y Biotecnología
Junio, 2018 Vol.2 No.4 22-33
Conceptos básicos
Efector final
Base
La asignación de marcos en la robótica Una vez que se tienen todos los modelos
consiste en designar un sistema de coordenadas matemáticos y se ha diseñado el controlador, se
para referenciar la posición del efector de procede a construir un mundo virtual en el cual
cualquier robot. El marco principal de referencia se pueda visualizar la aplicación de los modelos
se coloca en la base del robot, en él se en la ejecución de una trayectoria, hasta este
referenciará la posición del efector final, a partir punto se tienen simulaciones y animaciones del
de las posiciones que guarda cada eslabón robot; sin embargo es preciso validar estos
respecto del marco de su articulación y respecto resultados en forma experimental, por lo cual fue
al marco de la base. El sistema de coordenadas necesario acondicionar las señales lógicas de los
seleccionado para los análisis cinemáticos de la modelos matemáticos simulados y construir una
sección Metodología se fundamenta en un interfaz gráfica que comunicara físicamente la
sistema cartesiano (coordenadas x, y, z), el vector simulación de los modelos, la animación y el
que describe la posición de cada uno de los controlador con los sensores y actuadores del
eslabones respecto de su marco y el marco de la robot, es por ello que nuestra metodología
base se denomina vector de variables articulares finaliza con la sección denominada
– designado normalmente en el estudio del arte
por la literal q –, mientras que el vector que Acondicionamiento
define la posición del efector final se denomina
vector de variables operacionales designado Modelos matemáticos
comúnmente por la letra x.
El tipo de robot que se modela en esta sección es
Terminamos los conceptos básicos un manipulador serial de 6 grados de libertad
diciendo que existe un gran estudio de robots (g.d.l.) llamado CRS-A465, analizado y
manipuladores en la literatura (Fu, Gonzalez y estudiado cinemática y dinámicamente en las
Lee, 1987), (Siciliano, Sciavicco, Villani y secciones Modelo Cinemático y Modelo
Oriolo, 2000), (Craig, 1989)(Kelly, Santibañez y Dinámico acorde a las diversas técnicas
Loria, 2005), (Barrientos, Balaguer, y Aracil, descritas en (Tsai, 1999), (Craig, 1989), (Fu,
2007) pero los métodos que se presentan en la Gonzalez, Lee, 1988).
sección Metodología se han seleccionado por su
amplia y versátil aplicación en el análisis de Modelo Cinemático
robots industriales similares a nuestro caso de
estudio. La cinemática estudia el movimiento del robot
desde el punto de vista geométrico sin considerar
Metodología las fuerzas que intervienen en su movimiento
para la consecución de una tarea específica
El conjunto de métodos aplicados en nuestro (Tsai, 1999).
trabajo consideran establecer las ecuaciones que
permitan en todo momento calcular el valor que Existen dos problemas dentro de la
las variables articulares del robot deben poseer cinemática, el primero (cinemática directa) es
para mantener la posición del efector final en el determinar la posición del efector final del robot
seguimiento de una trayectoria, lo anterior se conocidas las variables articulares del mismo,
logra encontrando el modelo cinemático del mientras que el segundo problema (cinemática
robot. Conocida la cinemática se encuentra el inversa) es calcular las variables articulares a
modelo dinámico, mediante el cual se calcularán partir de la posición y orientación del efector
las fuerzas y pares que anticiparían el final (Fu, Gonzalez, Lee, 1988). En (Campos,
comportamiento de los actuadores presentes en Corrujedo, Peñalver, 2014) la cinemática directa
el robot. se obtuvo a partir de la metodología de Denavit-
Hartenberg (Craig, 1989), en la cual se definen
En cuanto al diseño del controlador las matrices de transformación para los i
existen un gran número de esquemas, sin articulaciones y eslabones, comenzando desde la
embargo se ha optado por diseñar un control base hasta el efector final. La cinemática directa
porporcional integral derivativo (Kelly, del robot queda definida por la multiplicación
Santibañez y Loria, 2005) que básicamente es sucesiva (8) de las k matrices de transformación
un control de posición que absorbe homogénea, ecuaciones (1) a (7), considerando
eficientemenete los errores articulares bajo una los marcos de la figura 4.
sintonización pertinente.
cos1 0 sin 1 0 a2
y1 y2
sin 1 0 cos1 0
0
1T (1) x1
0 1 0 d1 z1 x2
z2
0 0 0 1 z0 y3
x3
d1 y0
z3 y4 d4
cos 2 sin 2 0 a2 cos 2 x0
x4
sin 2 cos 2 0 a2 sin 2 z4
1
2T (2)
0 0 1 0
x5
y5
z5,6 d6
0 0 0 1 xh
yh
cos 3 0 sin 3 0
Figura 4 Esquema cinemático del CRS-A465
sin 3 0 cos 3 0 Fuente: Campos, Corrujedo, Peñalver, Ortega, 2014
2
3T (3)
0 1 0 0 En las matrices de transformación
definidas ai es la distancia que existe entre zi-1 y
0 0 0 1 zi a lo largo del eje xi-1, di la distancia entre xi-1 y
xi a través de zi-1, αi el ángulo entre los ejes zi-1 y
cos 4 0 sin 4 0 zi alrededor de xi y finalmente θi es el ángulo
entre xi-1 y xi alrededor de zi-1, h representa la
sin 4 0 cos 4 0 herramienta del robot, i toma los valores
4T
3
(4)
0 1 0 d4 sucesivos de 1 a 6, mismos que representan los
6 grados de libertad de nuestro robot.
0 0 0 1
i ai αi di θi
cos 5 0 sin 5 0
1 a2 π/2 d1 θ1
sin 5 0 cos 5 0 2 0 0 0 θ2
5T
4
(5)
0 1 0 0 3 0 π/2 0 θ3
0 0 0 1 4 0 -π/2 d4 θ4
8
Newton-Euler en comparación al
6 Lagrangiano es un método recursivo que a partir
de 2 algoritmos (uno hacia adelante) calcula
4 velocidades, aceleraciones, fuerzas y momentos
2 (cálculo hacia atrás) de cada uno de los
eslabones del CRS-A465, figuras 5 y 6.
0
0 5 10 Las aceleraciones se obtienen aplicando
t (s) recursivamente y en orden las ecuaciones 9 a 22,
para los i-ésimos eslabones con i=1,2,…,6,
Gráfico 1 Trayectoria del CRS-A465
Fuente: Academia Journals, 2014 siendo i el eslabón actual, por tanto i-1 implica
un eslabón anterior al actual, mientras que i+1
determina un eslabón posterior al actual, Oi es el
θ1 θ2 θ3
θ4 θ5 θ6 origen del marco i.
200
En general el propósito de las ecuaciones
150 (9) a (16) es encontrar la aceleración en el centro
de masa para cada eslabón.
100
i 1
pi i Ri 1 pi
q(º)
i
50 (9)
0 i
ωi 1 i Ri 1 i 1ωi 1 (10)
0 5 10
-50 i
i 1 i Ri 1 i 1ω
ω i 1 (11)
-100
t (s) i
ai 1 i Ri 1 i 1ai 1 (12)
Gráfico 2 Variables articulares
Fuente: Academia Journals, 2014 En (9) a (12), ipi es el vector de posición
del marco i, i-1pi es el vector de posición del
Modelo Dinámico marco i-1 al marco i, i-1 𝝎𝑖−1 es el vector de
velocidad angular del eslabón i–1, i 𝝎𝑖−1 es el
La dinámica se diferencía de la cinemática por vector de velocidad angular del eslabón i–1
considerar todas las fuerzas internas y externas respecto del eslabón i, i-1 𝝎̇𝑖−1 es el vector de
que se generan en el robot durante la ejecución aceleración angular del eslabón i–1, i𝝎̇𝑖−1 es el
de una tarea. vector de velocidad angular del eslabón i–1
respecto del eslabón i, iai-1 es la aceleración
Al igual que la cinemática, la dinámica
lineal del marco i-1 respecto del marco i.
también presenta dos problemas durante el
movimiento del robot: conocidas las variables
articulares se calculan fuerzas y pares (dinámica
directa), conocidas las fuerzas y pares se
establece el valor de las variables articulares
(dinámica inversa) respecto a la evolución del
tiempo (Barrientos, 2007).
ISSN: 2523-6857 CAMPOS-CALDERA, Carla, ALDERETE-ALDERETE, Javier
ECORFAN® Todos los derechos reservados Enrique, CORRUJEDO-LAZCANO, Julio César y SOTO-ARMENTA,
Juan Carlos. Reingeniería del Controlador de un Brazo Robótico de 6
g.d.l, Revista de Ingeniería Biomédica y Biotecnología. 2018.
27
Artículo Revista de Ingeniería Biomédica y Biotecnología
Junio, 2018 Vol.2 No.4 22-33
i
fi+1
Oi i
μi+1
i
ai i
aGi i
μGi i
fGi
i-1 i
pi pi+1
i-1a
i-1
i iμ
pGi i i
pGi
ϴi ϴi
i i
i
zi zi fi
i-1
ωi-1
Figura 6 Esquema de fuerza y par por eslabón
Figura 5 Esquema de aceleraciones por eslabón Fuente: Elaboración Propia
Fuente: Elaboración Propia
i
f Gi mi i aGi (17)
i
ωi ωi 1i i zi
i
(13) i
μGi I i i ω
i i ωi ( I i i ωi ) (18)
i
ω i i ω i 1 i i zi i ωi i i zi (14)
i
ai i ai 1 i ω
i 1 i pi i ωi 1 ( i ωi 1 i pi ) (15) Finalmente las fuerzas ifi y momentos
i
aGi i ai i ω i i pGi i ωi ( i ωi i pGi ) i gi (16) resultantes iµi en el marco i se obtienen a través
de las formulaciones (19-22)
En (13) a (16), i 𝝎𝑖 es el vector de
velocidad angular del eslabón actual, izi es el i
f i i f i 1 i f Gi (19)
vector unitario en dirección al eje Z del marco i. i
μi μGi μi 1 ( pGi f Gi ) ( pi 1 f i 1 )
i i i i i i
(20)
La aceleración angular del eslabón i es
i
𝝎̇𝑖 , siendo i 𝝎̇𝑖−1 la aceleración angular del Donde:
eslabón i–1 respecto del eslabón i. El
i
f i 1 i 1RiT i f i 1 (21)
i 1
desplazamiento, la velocidad y la aceleración i
μi 1 R μi 1 T i
i (22)
angular del eslabón i alrededor de izi son
respectivamente θi, 𝜃̇𝑖 , 𝜃̈𝑖 . Siendo ifi+1 el vector de fuerza de reacción
del eslabón i+1 sobre el eslabón i, iµi+1 el vector
La posición del centro de masa (center of de momento de reacción del eslabón i+1 sobre el
mass o c.o.m.) del eslabón i es el vector ipGi, el eslabón i. Los resultados del cálculo del modelo
vector de aceleración lineal del marco del dinámico son los pares mostrados en las gráficas
eslabón i es iai, igi es el vector de aceleración 3 y 4, las simulaciones se programaron en el
gravitacional del marco del eslabón i, mientras lenguaje Matlab.
que iaGi es el vector de aceleración lineal del
c.o.m. del eslabón i.
τ1 τ2 τ3
40
Calculadas las aceleraciones, el segundo
paso en la modelación dinámica es calcular las 20
τ ( N-m )
τ4 τ5 τ6
6 Kv CRS-A465
4
2
τ ( N-m )
Kp Ki
0
0 5 10
-2
-4
-6
t (s)
Figura 7 Esquema de control PID
Fuente: Elaboración Propia
Gráfico 4 Pares en las 3 últimas articulaciones
Fuente: Elaboración Propia
Una vez que se tiene la matriz de inercia
y el vector de pares gravitacionales, se aplican
Controlador
las ecuaciones (26), (27) y (28), las cuales
permiten encontrar los valores de Kp=130,
El esquema de control que se implementó es un
Kv=3.25 y Ki=6.7 que garantizaron localmente
clásico controlador PID, construido debido a que
el objetivo de control, llevando el error a valores
el controlador de fábrica C500C (CRS, 2000)
mínimos. En (26) a (28) λMAX y λmin indican los
sufrió un daño irreversible.
valores propios máximos y mínimos de las
matrices Kp, Ki y M, evaluadas dentro del rango
La estructura del controlador –conocida
de funcionamiento de nuestro robot. El cálculo
ampliamente en la literatura (Siciliano,
de Kg , ecuación (29), es descrito en (Kelly,
Sciavicco et al, 2000), (Spong, 2006)–, se puede
Santibañez, Loria, 2005), en ella n denota los
advertir en la figura 7, su ley de control obedece
grados de libertad del robot.
la ecuación (24). En la figura 7, Kp, Kv y Ki
6 x 6 son matrices simétricas y definidas
MAX {Ki } min {Ki } 0 (26)
positivas y son identificadas como la ganancia
proporcional, derivativa e integral; qd 16 ,
q d 16 representan los vectores de posición y MAX {Kp} min {Kp} K g (27)
velocidad articular deseados (proveniente de la
cinemática del robot), los vectores de posición y
velocidad articular reales (realimentada de los
MAX {Kv} min {Kv}
encoders del robot) son representados por 𝑞𝑟 ∈
ℜ1×6 , 𝑞𝑟̇ ∈ ℜ1×6 , los errores articulares de MAX {K i } MAX 2{M } (28)
posición y velocidad son q~, q~ 1x 6 . min {K p } K g min {M }
τ K p q~ K v q~ K i q~ (24) g (q)
K g n Maxi , j ,q i (29)
q j
La sintonización de nuestro PID se basa
en los métodos descritos en (Kelly, Santibañez, Una vez calculados los valores de las
Loria, 2005) para ello las ecuaciones del modelo matrices Kp, Kv y Ki, se movieron
dinámico descritas en la sección Modelo experimentalmente estos valores hasta lograr un
Dinámico se pasan a la forma de la ecuación mejor desempeño del controlador.
(25).
Mundo Virtual
M (q)q C (q, q )q g (q) τ (25)
Simulados los modelos matemáticos del CRS-
En (25) C (q, q ) es la matriz de Coriolis y 465 y diseñado el controlador, se procedió a
fuerzas centrífugas, g(q) es el vector de fuerzas construir su animación a través de un mundo
y pares gravitacionales, M(q) es la matriz de virtual.
inercia.
VRealm-Builder es un lenguaje de
modelado de realidad virtual y fue utilizado por
primera vez por Beners Lee en una conferencia Figura 8 Mundo virtual del CRS-A465
Europea en 1994, representa una plataforma Fuente: Elaboración Propia
flexible y abierta para crear escenas interactivas
(mundos virtuales) con características para Armado el mundo virtual en VRealm-
importar y exportar modelos 3D de tipo CAD, Builder su comunicación con los modelos
VISUAL y art. matemáticos del CRS-465 se logra mediante una
herramienta nombrada Simulink utilizando
El encadenamiento cinemático de cada bloques de función y el bloque VRSink
articulación, eslabón y transmisión del robot se (contenido en el toolbox Simulink 3D
hace en una foma muy sencilla; creada cada Animation) consiguiendo como resultado la
pieza en SolidWorks, simplemente se abría en animación del robot.
VR-Builder (figura 2) y en la propiedad
denominada Shape se dió clic secundario para Se debe recordar que el bloque VR-Sink
agregar dichas formas a las librerías del VR- necesita 4 datos para generar movimiento en el
Builder, por lo que el proceso de adición de caso de una articulación rotativa y 3 datos para
formas a las librerías de VR-Builder se repitió una articulación prismática, para el caso
tantas veces como número de piezas particular de nuestro mundo virtual todas las
conformaron el robot; agregadas todas las piezas articulaciones son rotativas.
enseguida se creó un nuevo mundo en el cual
mediante la propiedad {T} –definición de matriz Las figuras 9 y 10 comprueban que el robot
de transformación – se establecieron los padres fue correctamente armado en VR-Builder y
e hijos que identificarían los eslabones que adecuadamente enlazados con Simulink puesto
conformaban los 6 g.d.l del robot. que las propiedades de las matrices de
transformación (plenamente identificadas)
pueden manipularse en el entorno de Simulink.
Acondicionamiento
Tecla = B
La realimentación de los encoders en el VDD
esquema de control constituye el vector de 4N25 5V
posición articular qr, las velocidades requeridas
por esta ley de control se encontró internamente Figura 13 Salida PWM positiva
en Simulink por medio de un bloque de Fuente: Campos, Corrujedo, Moreno, Olivas, 2018
derivación y de qr.
VCC
2V
Los PWM digitales se acondicionaron en VCD
señales PWM de potencia a partir de drivers U1 -5V
cuya función básicamente fue amplificar la señal Tecla = A
recibida por el PWM digital al valor de 69V a 7A
4N25 10kΩ
con una frecuencia de 20 KHz para las 3
primeras articulaciones. El driver seleccionado 10kΩ R1
para realizar lo antes expuesto fue el DCS810 de R2
-PWM
U2
la compañía LeadShine Technology Co. Para las `
Tecla = B
3 últimas articulaciones se reutiliza 1 driver aún
funcional del antiguo controlador, figura 12, 4N25 VDD
ahora la señal de control enviada por la PCIe- 5V
6343 es amplificada a una señal PWM de 35V. Figura 14 Salida PWM negativa
Fuente: Campos, Corrujedo, Moreno, Olivas, 2018
Nuestra interfaz gráfica cuenta con la Otro punto que deseamos implementar a
apertura del mundo virtual; así como con la futuro, es la manipulación de herramientas de
activación de los encoders, que prácticamente nuestro robot en cadenas cinemáticas cerradas
visualizarán las variables articulares con el fin de extender los método propuestos en
realimentadas, figura 15. (Campos et al 2017) en robots con un mayor
número de grados de libertad.
Es importante mencionar que la tarjeta
debía ejecutarse en tiempo real, para ello se Agradecimientos
activa este funcionamiento en Matlab con el
comando rtwin –install, además de instalar para Se hace un reconocimiento especial al
la PCIe-6343 el software DAQmx, el cual es un Tecnológica Nacional de México por apoyar
conjunto de librerías y toolbox que permitieron económicamente la presente investigación y su
el manejo de la tarjeta dentro del ambiente publicación.
Simulink.
Referencias