You are on page 1of 11

Control PID de un manipulador robótico de 5 GDL.

Lima, Mayo 2010 1

PID CONTROL OF A ROBOTIC MANIPULATOR OF 5


DEGREES OF FREEDOM

CONTROL PID DE UN MANIPULADOR ROBOTICO DE 5


GRADOS DE LIBERTAD

MSc. David R. Achanccaray D., Víctor Caballero L., Génesis Díaz M., Miguel Fernández Z., Franz Huanay M.

 directamente. La dinámica se determina usando Solidworks


Abstract y el Simechanics de SIMULINK, y como comprobación
también se calcula las matrices de dinámica usando el
This research deals with the PID control for tracking the MATLAB con las ecuaciones de Lagrange. Luego, se
trajectory of a robotic manipulator of 5 degrees of freedom, realiza la compensación de gravedad con el objetivo de
from Lynx6 robot model. We performed a manual tuning of comprobar nuestras matrices de dinámica con la dinámica
the gains of our controller, and a design which takes into obtenida de Solidworks-Simulink. Finalmente se presenta el
account the electric dynamics of motors of direct current control PID para una trayectoria considerando la dinámica
(DC) in order to use parameters and constraints that could eléctrica de los motores y sus restricciones.
appear in the implementation of our robot.

Index Terms: PID control, electric dynamics, PID tuning.


II. MODELAMIENTO DEL ROBOT
Resumen
Nuestro robot de 5 grados de libertad está basado en el
manipulador Lynx6 de Lynxmotion, modelo del cual
El presente trabajo de investigación trata sobre el control
obtendremos la cinemática directa e inversa, jacobianos y la
PID para el seguimiento de trayectoria de un manipulador
dinámica.
robótico de 5 grados de libertad, a partir del modelo del
robot Lynx6. Se realiza una sintonización manual de las
ganancias de nuestro controlador, y un diseño en cual se
toma en consideración la dinámica eléctrica de los motores
de corriente directa (DC) con la finalidad de usar
parámetros y restricciones que se podrían presentar en la
implementación de nuestro robot.

Index Terms: control PID, dinámica eléctrica,


sintonización PID.

I. INTRODUCCION

E n las últimas décadas, el problema de controlar


manipuladores robóticos ha atraído y desafiado a
muchos investigadores. Generalmente, la dinámica de un Figura 1. Robot manipulador Lynx6.
robot manipulador es caracterizada por la no linealidad y
variación de parámetros debido a las variaciones en las
cargas, fricciones y ruidos externos, etc. Los controladores
convencionales para este tipo de sistemas podrían no arrojar
resultados esperados. Por otro lado, los controladores
convencionales como los PID, son ampliamente usados en la
industria debido a su confiabilidad y facilidad de
implementación.
Para esta primera entrega se realizó un control PID,
sintonizándolo manualmente, considerando valores
admisibles de torques y voltajes de los actuadores.
Este trabajo se realiza el proceso de modelado del robot
manipulador. Primero se desarrolla la cinemática directa con
el uso del algoritmo de Denavit-Hartenberg. La cinemática
inversa, la cual incluye la dirección del efector, se calcula
Control PID de un manipulador robótico de 5 GDL. Lima, Mayo 2010 2

Representación del robot 𝑝𝑦 = 𝑆1 (𝑙2 𝐶2 + 𝑙3 𝐶23 + 𝑙4 𝐶234 )


𝑝𝑧 = 𝑙1 + 𝑙2 𝑆2 + 𝑙3 𝑆23 + 𝑙4 𝑆234
𝛼 = 𝑞2 + 𝑞3 + 𝑞4
𝛽 = 𝑞5

Como se observa en las ecuaciones anteriores, se han


incluido las variables 𝛼 y 𝛽, ya que se controlarán dos
parámetros de orientación además de los que corresponden a
la trayectoria.

Cinemática Inversa
Figura 2. Equivalente en D-H.
Para hallar la cinemática inversa existen diversos métodos,
de los cuales se eligió el método geométrico, por la facilidad
Cinemática Directa del cálculo usando los parámetros de orientación elegidos y
la posición final del efector.
Procedemos a calcular los parámetros D-H del manipulador
para utilizar las matrices de transformación y encontrar la
posición del efector final. Y
X'
Estas ecuaciones son la base para desarrollar las
simulaciones y observar la trayectoria que sigue el (xe,ye)
manipulador al utilizar diversos algoritmos en su control.

Tabla 1. Parámetros DH del manipulador Lynx6.

Eslabón 𝜽𝒊 𝜶𝒊 𝒂𝒊 𝒅𝒊
1 𝜃1 90° 0 𝑙1

X
2 𝜃2 0° 𝑙2 0
3 𝜃3 0° 𝑙3 0
Figura 3. Giro del primer grado de libertad.
4 𝜃4 + 90° 90° 0 0
5 𝜃5 0° 0 𝑙4

Luego de hallar los parámetros DH, se calculan las matrices Z (xe,ye)


homogéneas (A) de los eslabones.

La cinemática directa la obtenemos multiplicando las 5
matrices homogéneas (T), la cual se ha simplificado y l4
1

ordenado de la manera como se muestra a continuación.


(xw,yw)

𝑇50 = 𝐴10 𝐴12 𝐴23 𝐴34 𝐴45 l3


r


𝑛𝑥 𝑜𝑥 𝑎𝑥 𝑝𝑥 3
𝑛 𝑜𝑦 𝑎𝑦 𝑝𝑦
𝑇05 = 𝑛𝑦

𝑧 𝑜𝑧 𝑎𝑧 𝑝𝑧 l2
0 0 0 1

2

𝑛𝑥 = 𝑆5 𝑆1 − 𝐶1 𝐶5 𝑆234 l1
X'
𝑛𝑦 = −𝑆5 𝐶1 − 𝑆1 𝐶5 𝑆234
𝑛𝑧 = 𝐶5 𝐶234 Figura 4. Giro de los 4 GDL restantes.

𝑜𝑥 = 𝐶5 𝑆1 + 𝐶1 𝑆5 𝑆234
𝑜𝑦 = −𝐶5 𝐶1 + 𝑆1 𝑆5 𝑆234 𝒒𝟏 = 𝒂𝒕𝒂𝒏𝟐(𝒑𝒚 , 𝒑𝒙 )
𝑜𝑧 = −𝑆5 𝐶234 𝜑1 = 𝛼

𝑎𝑥 = 𝐶1 𝐶234 𝑥𝑒 = 𝑝𝑥2 + 𝑝𝑦2


𝑎𝑦 = 𝑆1 𝐶234 𝑦𝑒 = 𝑝𝑧 − 𝑙1
𝑎𝑧 = 𝑆234
𝑥𝑤 = 𝑥𝑒 − 𝑙4 𝑐𝑜𝑠𝜑1
𝑝𝑥 = 𝐶1 (𝑙2 𝐶2 + 𝑙3 𝐶23 + 𝑙4 𝐶234 ) 𝑦𝑤 = 𝑦𝑒 − 𝑙4 𝑠𝑒𝑛𝜑1
Control PID de un manipulador robótico de 5 GDL. Lima, Mayo 2010 3

𝜕𝑝𝑦
𝑦𝑤 𝐽22 = = −𝑆1 (𝑙4 𝑆234 + 𝑙3 𝑆23 + 𝑙2 𝑆2 )
𝜑2 = atan⁡
( ) 𝜕𝑞2
𝑥𝑤 𝜕𝑝𝑧
𝑙22 + 𝑙32 − 𝑥𝑤2 − 𝑦𝑤2 𝐽32 = = 𝑙4 𝐶234 + 𝑙3 𝐶23 + 𝑙2 𝐶2
𝜑3 = acos⁡
( ) 𝜕𝑞2
2𝑙2 𝑙3

𝒒𝟑 = 𝝅 − 𝝋𝟑 𝜕𝑝𝑥
𝐽13 = = −𝐶1 (𝑙4 𝑆234 + 𝑙3 𝑆23 )
𝜕𝑞3
𝑥𝑤2 + 𝑦𝑤2 + 𝑙22 − 𝑙32 𝜕𝑝𝑦
𝛾 = acos⁡( ) 𝐽23 = = −𝑆1 (𝑙4 𝑆234 + 𝑙3 𝑆23 )
2𝑙2 𝑥𝑤2 + 𝑦𝑤2 𝜕𝑞3
𝒒𝟐 = 𝝋 𝟐 − 𝜸 𝜕𝑝𝑧
𝐽33 = = 𝑙4 𝐶234 + 𝑙3 𝐶23
𝒒𝟒 = 𝝋 𝟏 − 𝒒𝟐 − 𝒒𝟑 𝜕𝑞3

𝒒𝟓 = 𝜷
𝜕𝑝𝑥
OBS: 𝛼 y 𝛽 son datos de entrada. 𝐽14 = = −𝑙4 𝐶1 𝑆234
𝜕𝑞4
𝜕𝑝𝑦
𝐽24 = = −𝑙4 𝑆1 𝑆234
𝜕𝑞4
Jacobianos 𝜕𝑝𝑧
𝐽34 = = 𝑙4 𝐶234
𝜕𝑞4
Partiendo del producto de matrices (T), hallamos el
jacobiano.
𝜕𝑝𝑥
𝜕𝑻 𝐽15 = =0
𝑱= 𝜕𝑞5
𝜕𝑞𝑖 𝜕𝑝𝑦
𝐽25 = =0
𝜕𝑞5
𝑖 = 1, 2, 3, 4, 5 𝜕𝑝𝑧
𝐽35 = =0
Al jacobiano lineal de nuestro robot manipulador le hemos 𝜕𝑞5
agregado el jacobiano angular con respecto a los parámetros
de orientación 𝛼 y 𝛽, con el objetivo de poder controlarlos
también. Ahora hallamos el jacobiano angular y lo unimos al
jacobiano escalar que se calculó previamente.
𝜕𝑝𝑥 𝜕𝑝𝑥 𝜕𝑝𝑥 𝜕𝑝𝑥 𝜕𝑝𝑥
𝜕𝑞1 𝜕𝑞2 𝜕𝑞3 𝜕𝑞4 𝜕𝑞5 𝐽11 𝐽12 𝐽13 𝐽14 𝐽15
𝜕𝑝𝑦 𝜕𝑝𝑦 𝜕𝑝𝑦 𝜕𝑝𝑦 𝜕𝑝𝑦 𝐽21 𝐽22 𝐽23 𝐽24 𝐽25
𝜕𝑞1 𝜕𝑞2 𝜕𝑞3 𝜕𝑞4 𝜕𝑞5 𝑱 = 𝐽31 𝐽32 𝐽33 𝐽34 𝐽35
𝜕𝑝𝑧 𝜕𝑝𝑧 𝜕𝑝𝑧 𝜕𝑝𝑧 𝜕𝑝𝑧 0 1 1 1 0
𝑱= 0 0 0 0 1
𝜕𝑞1 𝜕𝑞2 𝜕𝑞3 𝜕𝑞4 𝜕𝑞5
𝜕𝛼 𝜕𝛼 𝜕𝛼 𝜕𝛼 𝜕𝛼 Ahora tenemos un jacobiano de 5x5, en el cual ya no se
𝜕𝑞1 𝜕𝑞2 𝜕𝑞3 𝜕𝑞4 𝜕𝑞5 tendrán inconvenientes para calcular el jacobiano inverso,
tan sólo se tendrán en cuenta los puntos de singularidad, en
𝜕𝛽 𝜕𝛽 𝜕𝛽 𝜕𝛽 𝜕𝛽
los cuales se tomará al jacobiano como una matriz identidad.
𝜕𝑞1 𝜕𝑞2 𝜕𝑞3 𝜕𝑞4 𝜕𝑞5
El jacobiano inverso se calcula de la siguiente manera:
𝐴𝑑𝑗(𝐽)
Primero calculamos el jacobiano lineal. 𝐽−1 =
det⁡
(𝐽)
𝜕𝑝𝑥
𝐽11 = = −𝑆1 (𝑙4 𝐶234 + 𝑙3 𝐶23 + 𝑙2 𝐶2 ) Existen puntos donde no está definido el jacobiano inverso,
𝜕𝑞1 estos puntos son llamados de singularidad.
𝜕𝑝𝑦
𝐽21 = = −𝑆1 (𝑙4 𝐶234 + 𝑙3 𝐶23 + 𝑙2 𝐶2 )
𝜕𝑞1 Singularidad ↔ det 𝐽 = 0
𝜕𝑝𝑧
𝐽31 = =0 Para evitar este problema en las simulaciones, se asumió un
𝜕𝑞1
𝐽 = [𝐼]5 para esos puntos de singularidad.

𝜕𝑝𝑥
𝐽12 = = −𝐶1 (𝑙4 𝑆234 + 𝑙3 𝑆23 + 𝑙2 𝑆2 )
𝜕𝑞2
Control PID de un manipulador robótico de 5 GDL. Lima, Mayo 2010 4

Dinámica

En esta parte procedemos a calcular el modelo dinámico de


nuestro manipulador.

𝝉 = 𝑯𝒒 + 𝑪(𝑞, 𝑞 ) + 𝑮(𝑞)

𝝉: Fuerzas y torques en los actuadores.


𝑯: Matriz cuadrada de inercias.
𝑪: Matriz columna de fuerzas de coriolis.
𝑮: Matriz columna de gravedad.

Usando las siguientes ecuaciones se calculan las matrices ya


mencionadas.
Figura 5. Compensación de la gravedad usando la dinámica
Primero se calcula el tensor de inercia. de MATLAB.
𝑛
𝑇 𝑇
𝑯= (𝑱𝑖𝐿 𝑚𝑖 𝑱𝑖𝐿 + 𝑱𝒊𝑨 𝑰𝒊 𝑱𝑖𝐴 )
𝑖=1
𝑱𝑖𝐿 : Jacobianos individuales respecto del centro de masa de
cada eslabón.
𝑚𝑖 : Masa de cada eslabón.
𝑰𝒊 : Momento de inercia de cada eslabón.

Luego se calculan los coeficientes de Christoffel a partir del


tensor de inercia.

𝜕𝐻𝑖𝑗 1 𝜕𝐻𝑗𝑘
ℎ𝑖𝑗𝑘 = −
𝜕𝑞𝑘 2 𝜕𝑞𝑖

Ahora calculamos la matriz columna de gravedad Figura 6. Compensación de la gravedad usando el bloque
del robot de simechanics.
𝑛
𝒋
𝐺𝑖 = 𝑚𝑗 𝒈𝑇 𝑱𝑳𝒊
𝑗 =1 III. LEY DE CONTROL DEL ROBOT

𝒈: Vector de gravedad respecto del sistema base. Principio de control PID

Por último se forma la ecuación de la dinámica como se Para el estudio se realiza el control individual de cada
muestra a continuación. elemento.
5 5 5
𝜏𝑖 = 𝐾𝑃𝑖 𝑞𝑑𝑒𝑠 − 𝑞 + 𝐾𝐷𝑖 𝑞𝑑𝑒𝑠 − 𝑞 + 𝐾𝐼𝑖 𝑞𝑑𝑒𝑠 − 𝑞 𝑑𝑇
𝜏𝑖 = 𝐻𝑖𝑗 𝑞𝑗 + ℎ𝑖𝑗𝑘 𝑞𝑗 𝑞𝑘 + 𝐺𝑖
𝑢𝑖 = 𝜏𝑖
𝑗 =1 𝑗 =1 𝑘=1

La dinámica se obtuvo usando el MATLAB siguiendo este


procedimiento, así como también usando el Simechanics de
SIMULINK, el cual calcula la dinámica con algoritmos
propios del software.

Compensación de la gravedad

Como paso previo al desarrollo del control se usó la


compensación de gravedad para comprobar que nuestras
Figura 7. Bloque del control PID para el voltaje de entrada.
ecuaciones de dinámica calculadas fuesen admisibles.
Control PID de un manipulador robótico de 5 GDL. Lima, Mayo 2010 5

Para nuestro modelo consideramos las siguientes ganancias


del controlador:

𝐾𝑃 = 𝑑𝑖𝑎𝑔([100,100,70,45,10])
𝐾𝐷 = 𝑑𝑖𝑎𝑔([20,30,20,10,10])
𝐾𝐼 = 𝑑𝑖𝑎𝑔([150,140,100,85,45])

Figura 11. Bloque del Motor DC.


R+ e control q
Motor
PID ROBOT
DC
- Motor Como se muestran en las figuras 11 y 12, se pueden
modificar los parámetros de los motores de acuerdo al los
valores reales que disponemos. Se construyó el modelo de
Figura 8. Esquema del Control PID. los motores despreciando los efectos de viscosidad e inercia
del motor por ser despreciables respecto a las inercias del
Primero se realizó el control PID directamente, sin robot.
saturaciones en las entradas, ni restricciones.

Figura 9. Bloque de Control PID.


Figura 12. Bloque de los actuadores de manipulador.

R+ e control q
Motor
PID ROBOT
DC
- Motor

Figura 13. Esquema del control por PID usando la dinámica


eléctrica de los actuadores.

Figura 10. Torques obtenidos con el PID inicial.

Función de Transferencia de Motores DC


Figura 14. Bloque de control PID usando la dinámica
Ahora modificamos el PID inicial, para poder utilizar las
eléctrica de los actuadores.
características de los motores DC. Se crea el diagrama de
bloques dentro de nuestro lazo de control, el cual tendrá
En la figura 14 se observa que en el nuevo bloque de control
como entrada Voltaje y Torque como salida, teniendo en
PID, se ha tomado a los voltajes como variables de control,
cuenta los valores límites de la entrada Voltaje.
para luego calcular los torques correspondientes.
Control PID de un manipulador robótico de 5 GDL. Lima, Mayo 2010 6

IV. SIMULACION Y RESULTADOS

Control PID

A continuación se muestran los resultados obtenidos para


una trayectoria helicoidal durante 30s de simulación.

Figura 18. Voltajes durante el control.

Figura 15. Trayectoria helicoidal deseada (izquierda) y seguida (derecha).

La trayectoria deseada es la siguiente.


𝑥 = 0.6 + 0.1cos⁡ (𝑡)
𝑦 = 0.1sen⁡ (𝑡)
𝑧 = 0.01𝑡 + 0.2
𝛼=0
𝛽=0

Figura 19. Torques durante el control.

Como se puede observar, se ha saturado la alimentación de


voltaje a los actuadores para simular condiciones reales en
una posible implementación de nuestro robot.

Figura 16. Trayectorias helicoidales superpuestas.

Figura 20. Inicio de la simulación del control PID

Como se podrá observar, efectivamente el penúltimo


eslabón del robot permanece casi horizontal (𝛼=0) durante
toda la simulación, tal como se había previsto, de igual
forma el efector final casi no rota en su eje ( 𝛽=0).

Figura 17. Variación de las orientaciones 𝛼 (arriba) y 𝛽 (abajo) durante


los 30s de simulación.
Control PID de un manipulador robótico de 5 GDL. Lima, Mayo 2010 7

Figura 24. Errores de posición durante los 30s.

Figura 21. Fin de la simulación del control PID

Adicionalmente se realiza el control P, PD y PI del robot, de


los cuales sólo se mostrarán los resultados del control PD,
puesto que no se pudo sintonizar las ganancias para los otros
dos, ya que el robot se movía descontroladamente.

Control PD
Con este control se obtuvieron resultados favorables.
Se usaron los siguientes valores en las ganancias del
controlador.

𝐾𝑃 = 𝑑𝑖𝑎𝑔([500,400,300,300,200])
𝐾𝐷 = 𝑑𝑖𝑎𝑔([55,40,30,35,25])
𝐾𝐼 = 𝑧𝑒𝑟𝑜𝑠(5,5) Figura 25. Trayectorias deseada y seguida por el robot.

La trayectoria seguida es la misma que la anterior.


Como se observa, los resultados son similares a los
obtenidos en el control PID.

Control PID con desacople de la matriz H, C y G

Figura 22. Torques al inicio del control PD.

Figura 26. Bloque de control PID con desacople.

Figura 23. Torques del control PD durante los 30s.


Control PID de un manipulador robótico de 5 GDL. Lima, Mayo 2010 8

V. PRUEBAS ADICIONALES

Control de Velocidad

En el control cinematico, además de la trayectoria espacial


que debe ser realizada por el robot es necesario especificar
la velocidad media del recorrido o la precisión con que se
deba alcanzar el punto de destino. Esto implica que las
constantes del controlador a usar dependen de la velocidad
usada en la trayectoria. Haremos las pruebas para 4
trayectorias.

a. Trayectoria Helicoidal
Figura 27. Torques al inicio del control PID-HCG.
Se incrementó la velocidad del recorrido sin modificar los
parámetros del PID que usamos, el resultado fue el
siguiente:

𝐾𝑃 = 𝑑𝑖𝑎𝑔([392,392,392,392,392])
𝐾𝐼 = 𝑑𝑖𝑎𝑔([30,30,30,30,30])
𝐾𝐷 = 𝑑𝑖𝑎𝑔([28,28,28,28,28])

Figura 28. Torques durante los 30s.

Figura 30. Comparación de trayectorias incrementando la velocidad de


recorrido

La velocidad del recorrido para las trayectorias presentadas


fueron: 4,15 y 30 cm/s respectivamente.

Figura 29. Trayectorias deseada y seguida por el robot.

Como se observan en los resultados, los torques obtenidos


son mayores al inicio con respecto al control PID.

La trayectoria al inicio también cambió.

Figura 31.Diferencias entre las trayectorias para una velocidad de


recorrido de 30 cm/s.

Al incrementar la velocidad del recorrido se reducen los


tiempos de asentamiento modificando así las
especificaciones de diseño.
Control PID de un manipulador robótico de 5 GDL. Lima, Mayo 2010 9

Se incrementó entonces las constantes Kd y Kp del PID para 𝐾𝑃 = 𝑑𝑖𝑎𝑔([200,200,200,200,200])


velocidades mayores y se obtuvo el siguiente resultado. 𝐾𝐷 = 𝑑𝑖𝑎𝑔([30,30,30,30,30])
Para v = 0.15 m/s 𝐾𝐼 = 𝑑𝑖𝑎𝑔([20,20,20,20,10])
𝐾𝑃 = 𝑑𝑖𝑎𝑔([2450,2450,2450,2450,2450])
𝐾𝐼 = 𝑑𝑖𝑎𝑔([30,30,30,30,30])
𝐾𝐷 = 𝑑𝑖𝑎𝑔([70,70,70,70,70])

Para v = 0.30m/s
𝐾𝑃 = 𝑑𝑖𝑎𝑔([22050,22050,22050,22050,22050])
𝐾𝐼 = 𝑑𝑖𝑎𝑔([30,30,30,30,30])
𝐾𝐷 = 𝑑𝑖𝑎𝑔([210,210,210,210,210])

Figura 34. Comparación de trayectorias rectilíneas incrementando la


velocidad de recorrido

La Figura 34 es el resultado del control PID sin modificar


sus ganancias para velocidades 0.032, 0.096 y 0.192 m/s

Como se puede observar hay un error casi constante que se


genera debido a este cambio de velocidad.
Figura 32. Comparación de trayectorias con Kd y Kp modificados
Para ello sintonizamos el PID para estas nuevas condiciones.

Para v = 0.096 m/s


𝐾𝑃 = 𝑑𝑖𝑎𝑔([700,500,400,350,400])
𝐾𝐷 = 𝑑𝑖𝑎𝑔([500,500,500,500,500])
𝐾𝐼 = 𝑑𝑖𝑎𝑔([50,60,45,50,50])

Para v = 0.192m/s
𝐾𝑃 = 𝑑𝑖𝑎𝑔([800,800,600,500,400])
𝐾𝐷 = 𝑑𝑖𝑎𝑔([1200,1200,1200,1200,1000])
𝐾𝐼 = 𝑑𝑖𝑎𝑔([40,55,55,40,30])

Figura 33. Incremento de torques para las tres velocidades.

b. Trayectoria rectilínea

Primero modificamos las velocidades del robot para ver su Figura 35. Trayectorias para la nueva sintonización de las ganancias.
efecto en la trayectoria considerando las ganancias iniciales,
que fueron sintonizadas para la frecuencia inicial
Control PID de un manipulador robótico de 5 GDL. Lima, Mayo 2010 10

Como se puede observar hay un error que se incrementa


debido a este cambio de velocidad.
Para ello sintonizamos el PID para estas nuevas condiciones.
Para:
𝐾𝑃 = 𝑑𝑖𝑎𝑔([421,421,421,153,153])
𝐾𝐷 = 𝑑𝑖𝑎𝑔([30,30,30,40,30])
𝐾𝐼 = 𝑑𝑖𝑎𝑔([4.9,4.9,4.9,3.5,3.5])

Para:
𝐾𝑃 = 𝑑𝑖𝑎𝑔([1364.3,1364.3,1364.3,496,496])
𝐾𝐷 = 𝑑𝑖𝑎𝑔([30,30,30,40,30])
𝐾𝐼 = 𝑑𝑖𝑎𝑔([8.82,8.82,8.82,6.3,6.3])

Figura 36. Torques de entrada al robot para las 3 velocidades analizadas.

c. Trayectoria - sinusoide inscrito en un cilindro

Considerando las ganancias iniciales, que fueron


sintonizadas para la frecuencia inicial, tenemos las gráficas:

𝐾𝑃 = 𝑑𝑖𝑎𝑔([105.27,105.27,105.27,38.28,38.28])
𝐾𝐷 = 𝑑𝑖𝑎𝑔([30,30,30,40,30]) Figura 38. Trayectorias para la nueva sintonización de las ganancias.
𝐾𝐼 = 𝑑𝑖𝑎𝑔([2.45,2.45,2.45,1.75,1.75])

Figura 37. Comparación de trayectorias rectilíneas incrementando la


velocidad de recorrido
Figura 39. Torques de entrada al robot para las 3 velocidades analizadas.

La Figura 37 es el resultado del control PID sin modificar


sus ganancias para diferentes velocidades.
Control PID de un manipulador robótico de 5 GDL. Lima, Mayo 2010 11

VI. CONCLUSIONES REFERENCES


[1] Ing. César Anchayhua Aréstegui.
-El software SimMechanics de Matlab es una potente Apuntes de clases: Análisis y control de robots
herramienta en la simulación de sistemas robóticos, ya que Universidad Nacional de Ingeniería,
nos permite importar nuestro diseño realizado en algún Facultad de Ingeniería Mecánica,
programa CAD (en este caso SolidWorks) incluyendo las Escuela profesional de Ingeniería Mecatrónica.
características inerciales del diseño, además permite realizar Lima - Perú 2010
análisis dinámicos, cinemáticos, de dinámica inversa y [2] A. Barrientos, L. F. Peñin, C. Balaguer, R. Aracil
también estática. La ventaja de utilizar este software de Fundamentos de robótica, Mc Graw Hill, 2004
simulación es que permite realizar el análisis matemático y, [3] John J. Craig
en la mayoría de los casos, poder obtener importantes Introduction to robotics mechanics and control
deducciones de una forma eficaz y rápida. Otra ventaja de Addison-Wesley Publishing Company, 1989
este programa de simulación es que su complejidad no [4] Schilling, J. Robert. , Fundamentals of Robotics.
aumenta a medida que se añaden más grados de libertad, Estados Unidos: Prentice-Hall, Inc. (1990).
cosa que no sucede con el análisis matemático. [5] “Introduction to Robotics” (2006), H. Harry Asada.
Massachussets Institute of Technology.
[6] Katsuhiko Ogata, “Ingeniería de Control Moderna”,
-Se realizó un control con regular precisión, los valores del Pearson, 2003, 4ta edición
error angular alcanzan unos cuantos ángulos para razonables [7] Ahmed A. Shabana, “Computational Dynamics”,
magnitudes de torque, por lo cual el control realizado en el Editorial John Wiley& Sons.
presente trabajo tiene un desempeño aceptable.

-El sobreimpulso de la respuesta transitorio está


condicionado a partir de las condiciones iniciales del robot;
es decir, mientras la distancia entre una posición cualquiera
del robot y un punto inicial de la trayectoria sea mayor, la
respuesta transitoria será más pronunciada.

-El incremento de la velocidad de recorrido requiere una


reducción de los tiempos de asentamiento, sin embargo, al
no modificar los parámetros del PID principalmente los Kd
y Kp que están relacionados con los tiempos de corrección
del controlador, la trayectoria real mostrará diferencias con
respecto a la deseada incrementándose éstas a medida que la
velocidad aumente (fig.30 y fig.31). Luego de modificar los
Kd y Kp, se observó que, el Kp depende directamente con el
cuadrado de la velocidad de recorrido y el Kd de manera
proporcional. Los resultados de modificar los parámetros de
acuerdo a esta ley se observan en la fig. 32.

-Si bien el sistema controlado con desacople de la matriz H,


C y G queda aliviado de toda la dinámica acoplada de los
eslabones y sus principales propiedades físicas normales, el
torque de control queda directamente proporcional a los
valores de aceleraciones angulares en cada junta, las cuales
se incrementarán al incrementarse la velocidad de recorrido
especificada por el usuario. Esto se puede observar en la fig.
33 donde los torques de control se hacen mayores a medida
que la velocidad crece.