control pid de un manipulador robotico de 5 grados de libertad

11
Control PID de un manipulador robótico de 5 GDL. Lima, Mayo 2010 1 Abstract This research deals with the PID control for tracking the trajectory of a robotic manipulator of 5 degrees of freedom, from Lynx6 robot model. We performed a manual tuning of the gains of our controller, and a design which takes into account the electric dynamics of motors of direct current (DC) in order to use parameters and constraints that could appear in the implementation of our robot. Index Terms: PID control, electric dynamics, PID tuning. Resumen El presente trabajo de investigación trata sobre el control PID para el seguimiento de trayectoria de un manipulador 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 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 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 directamente. La dinámica se determina usando Solidworks y el Simechanics de SIMULINK, y como comprobación también se calcula las matrices de dinámica usando el MATLAB con las ecuaciones de Lagrange. Luego, se realiza la compensación de gravedad con el objetivo de comprobar nuestras matrices de dinámica con la dinámica obtenida de Solidworks-Simulink. Finalmente se presenta el control PID para una trayectoria considerando la dinámica eléctrica de los motores y sus restricciones. II. MODELAMIENTO DEL ROBOT Nuestro robot de 5 grados de libertad está basado en el manipulador Lynx6 de Lynxmotion, modelo del cual obtendremos la cinemática directa e inversa, jacobianos y la dinámica. Figura 1. Robot manipulador Lynx6. 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. E

Upload: calhoundoom

Post on 23-Jun-2015

1.648 views

Category:

Documents


1 download

DESCRIPTION

Controlador PID para un manipulador de 5GDL. Pruebas realizadas para diferentes trayectorias y frecuencias.

TRANSCRIPT

Page 1: CONTROL PID DE UN MANIPULADOR ROBOTICO DE 5 GRADOS DE LIBERTAD

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

Abstract

This research deals with the PID control for tracking the

trajectory of a robotic manipulator of 5 degrees of freedom,

from Lynx6 robot model. We performed a manual tuning of the gains of our controller, and a design which takes into account the electric dynamics of motors of direct current (DC) in order to use parameters and constraints that could appear in the implementation of our robot.

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

Resumen

El presente trabajo de investigación trata sobre el control

PID para el seguimiento de trayectoria de un manipulador

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

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

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

directamente. La dinámica se determina usando Solidworks

y el Simechanics de SIMULINK, y como comprobación

también se calcula las matrices de dinámica usando el

MATLAB con las ecuaciones de Lagrange. Luego, se

realiza la compensación de gravedad con el objetivo de

comprobar nuestras matrices de dinámica con la dinámica

obtenida de Solidworks-Simulink. Finalmente se presenta el

control PID para una trayectoria considerando la dinámica

eléctrica de los motores y sus restricciones.

II. MODELAMIENTO DEL ROBOT

Nuestro robot de 5 grados de libertad está basado en el

manipulador Lynx6 de Lynxmotion, modelo del cual

obtendremos la cinemática directa e inversa, jacobianos y la

dinámica.

Figura 1. Robot manipulador Lynx6.

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.

E

Page 2: CONTROL PID DE UN MANIPULADOR ROBOTICO DE 5 GRADOS DE LIBERTAD

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

Representación del robot

Figura 2. Equivalente en D-H.

Cinemática Directa

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.

Estas ecuaciones son la base para desarrollar las

simulaciones y observar la trayectoria que sigue el

manipulador al utilizar diversos algoritmos en su control.

Tabla 1. Parámetros DH del manipulador Lynx6.

Eslabón 𝜽𝒊 𝜶𝒊 𝒂𝒊 𝒅𝒊

1 𝜃1 90° 0 𝑙1

2 𝜃2 0° 𝑙2 0

3 𝜃3 0° 𝑙3 0

4 𝜃4 + 90° 90° 0 0

5 𝜃5 0° 0 𝑙4

Luego de hallar los parámetros DH, se calculan las matrices

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

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

𝑇50 = 𝐴1

0𝐴21𝐴3

2𝐴43𝐴5

4

𝑇05 =

𝑛𝑥 𝑜𝑥

𝑛𝑦 𝑜𝑦

𝑎𝑥 𝑝𝑥

𝑎𝑦 𝑝𝑦

𝑛𝑧 𝑜𝑧

0 0𝑎𝑧 𝑝𝑧

0 1

𝑛𝑥 = 𝑆5𝑆1 − 𝐶1𝐶5𝑆234

𝑛𝑦 = −𝑆5𝐶1 − 𝑆1𝐶5𝑆234

𝑛𝑧 = 𝐶5𝐶234

𝑜𝑥 = 𝐶5𝑆1 + 𝐶1𝑆5𝑆234

𝑜𝑦 = −𝐶5𝐶1 + 𝑆1𝑆5𝑆234

𝑜𝑧 = −𝑆5𝐶234

𝑎𝑥 = 𝐶1𝐶234

𝑎𝑦 = 𝑆1𝐶234

𝑎𝑧 = 𝑆234

𝑝𝑥 = 𝐶1(𝑙2𝐶2 + 𝑙3𝐶23 + 𝑙4𝐶234)

𝑝𝑦 = 𝑆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

Para hallar la cinemática inversa existen diversos métodos,

de los cuales se eligió el método geométrico, por la facilidad

del cálculo usando los parámetros de orientación elegidos y

la posición final del efector.

Y

X

(xe,ye)

X'

Figura 3. Giro del primer grado de libertad.

2

1

3

(xw,yw)

(xe,ye)

l3

l4

r

l2

l1

Z

X'

Figura 4. Giro de los 4 GDL restantes.

𝒒𝟏 = 𝒂𝒕𝒂𝒏𝟐(𝒑𝒚,𝒑𝒙)

𝜑1 = 𝛼

𝑥𝑒 = 𝑝𝑥2 + 𝑝𝑦

2

𝑦𝑒 = 𝑝𝑧 − 𝑙1

𝑥𝑤 = 𝑥𝑒 − 𝑙4𝑐𝑜𝑠𝜑1

𝑦𝑤 = 𝑦𝑒 − 𝑙4𝑠𝑒𝑛𝜑1

Page 3: CONTROL PID DE UN MANIPULADOR ROBOTICO DE 5 GRADOS DE LIBERTAD

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

𝜑2 = atan(𝑦𝑤𝑥𝑤

)

𝜑3 = acos(𝑙2

2 + 𝑙32 − 𝑥𝑤

2 − 𝑦𝑤2

2𝑙2𝑙3)

𝒒𝟑 = 𝝅 − 𝝋𝟑

𝛾 = acos(𝑥𝑤

2 + 𝑦𝑤2 + 𝑙2

2 − 𝑙32

2𝑙2 𝑥𝑤2 + 𝑦𝑤

2)

𝒒𝟐 = 𝝋𝟐 − 𝜸

𝒒𝟒 = 𝝋𝟏 − 𝒒𝟐 − 𝒒𝟑

𝒒𝟓 = 𝜷

OBS: 𝛼 y 𝛽 son datos de entrada.

Jacobianos

Partiendo del producto de matrices (T), hallamos el

jacobiano.

𝑱 =𝜕𝑻

𝜕𝑞𝑖

𝑖 = 1, 2, 3, 4, 5

Al jacobiano lineal de nuestro robot manipulador le hemos

agregado el jacobiano angular con respecto a los parámetros

de orientación 𝛼 y 𝛽, con el objetivo de poder controlarlos

también.

𝑱 =

𝜕𝑝𝑥

𝜕𝑞1

𝜕𝑝𝑦

𝜕𝑞1

𝜕𝑝𝑧

𝜕𝑞1

𝜕𝛼

𝜕𝑞1

𝜕𝛽

𝜕𝑞1

𝜕𝑝𝑥

𝜕𝑞2

𝜕𝑝𝑦

𝜕𝑞2

𝜕𝑝𝑧

𝜕𝑞2

𝜕𝛼

𝜕𝑞2

𝜕𝛽

𝜕𝑞2

𝜕𝑝𝑥

𝜕𝑞3

𝜕𝑝𝑦

𝜕𝑞3

𝜕𝑝𝑧

𝜕𝑞3

𝜕𝛼

𝜕𝑞3

𝜕𝛽

𝜕𝑞3

𝜕𝑝𝑥

𝜕𝑞4

𝜕𝑝𝑦

𝜕𝑞4

𝜕𝑝𝑧

𝜕𝑞4

𝜕𝛼

𝜕𝑞4

𝜕𝛽

𝜕𝑞4

𝜕𝑝𝑥

𝜕𝑞5

𝜕𝑝𝑦

𝜕𝑞5

𝜕𝑝𝑧

𝜕𝑞5

𝜕𝛼

𝜕𝑞5

𝜕𝛽

𝜕𝑞5

Primero calculamos el jacobiano lineal.

𝐽11 =𝜕𝑝𝑥

𝜕𝑞1= −𝑆1(𝑙4𝐶234 + 𝑙3𝐶23 + 𝑙2𝐶2)

𝐽21 =𝜕𝑝𝑦

𝜕𝑞1= −𝑆1(𝑙4𝐶234 + 𝑙3𝐶23 + 𝑙2𝐶2)

𝐽31 =𝜕𝑝𝑧

𝜕𝑞1= 0

𝐽12 =𝜕𝑝𝑥

𝜕𝑞2= −𝐶1(𝑙4𝑆234 + 𝑙3𝑆23 + 𝑙2𝑆2)

𝐽22 =𝜕𝑝𝑦

𝜕𝑞2= −𝑆1(𝑙4𝑆234 + 𝑙3𝑆23 + 𝑙2𝑆2)

𝐽32 =𝜕𝑝𝑧

𝜕𝑞2= 𝑙4𝐶234 + 𝑙3𝐶23 + 𝑙2𝐶2

𝐽13 =𝜕𝑝𝑥

𝜕𝑞3= −𝐶1(𝑙4𝑆234 + 𝑙3𝑆23)

𝐽23 =𝜕𝑝𝑦

𝜕𝑞3= −𝑆1(𝑙4𝑆234 + 𝑙3𝑆23)

𝐽33 =𝜕𝑝𝑧

𝜕𝑞3= 𝑙4𝐶234 + 𝑙3𝐶23

𝐽14 =𝜕𝑝𝑥

𝜕𝑞4= −𝑙4𝐶1𝑆234

𝐽24 =𝜕𝑝𝑦

𝜕𝑞4= −𝑙4𝑆1𝑆234

𝐽34 =𝜕𝑝𝑧

𝜕𝑞4= 𝑙4𝐶234

𝐽15 =𝜕𝑝𝑥

𝜕𝑞5= 0

𝐽25 =𝜕𝑝𝑦

𝜕𝑞5= 0

𝐽35 =𝜕𝑝𝑧

𝜕𝑞5= 0

Ahora hallamos el jacobiano angular y lo unimos al

jacobiano escalar que se calculó previamente.

𝑱 =

𝐽11

𝐽21

𝐽31

00

𝐽12

𝐽22

𝐽32

10

𝐽13

𝐽23

𝐽33

10

𝐽14

𝐽24

𝐽34

10

𝐽15

𝐽25

𝐽35

01

Ahora tenemos un jacobiano de 5x5, en el cual ya no se

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.

El jacobiano inverso se calcula de la siguiente manera:

𝐽−1 =𝐴𝑑𝑗(𝐽)

det(𝐽)

Existen puntos donde no está definido el jacobiano inverso,

estos puntos son llamados de singularidad.

Singularidad ↔ det 𝐽 = 0

Para evitar este problema en las simulaciones, se asumió un

𝐽 = [𝐼]5 para esos puntos de singularidad.

Page 4: CONTROL PID DE UN MANIPULADOR ROBOTICO DE 5 GRADOS DE LIBERTAD

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.

Primero se calcula el tensor de inercia.

𝑯 = (𝑱𝐿𝑖 𝑇

𝑚𝑖𝑱𝐿𝑖 + 𝑱𝑨

𝒊 𝑇𝑰𝒊𝑱𝐴

𝑖 )

𝑛

𝑖=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

𝐺𝑖 = 𝑚𝑗𝒈𝑇𝑱𝑳𝒊

𝒋

𝑛

𝑗=1

𝒈: Vector de gravedad respecto del sistema base.

Por último se forma la ecuación de la dinámica como se

muestra a continuación.

𝜏𝑖 = 𝐻𝑖𝑗 𝑞 𝑗

5

𝑗=1

+ ℎ𝑖𝑗𝑘 𝑞 𝑗𝑞 𝑘

5

𝑘=1

5

𝑗=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

ecuaciones de dinámica calculadas fuesen admisibles.

Figura 5. Compensación de la gravedad usando la dinámica

de MATLAB.

Figura 6. Compensación de la gravedad usando el bloque

del robot de simechanics.

III. LEY DE CONTROL DEL ROBOT

Principio de control PID

Para el estudio se realiza el control individual de cada

elemento.

𝜏𝑖 = 𝐾𝑃𝑖 𝑞𝑑𝑒𝑠 − 𝑞 + 𝐾𝐷𝑖 𝑞 𝑑𝑒𝑠 − 𝑞 + 𝐾𝐼𝑖 𝑞𝑑𝑒𝑠 − 𝑞 𝑑𝑇

𝑢𝑖 = 𝜏𝑖

Figura 7. Bloque del control PID para el voltaje de entrada.

Page 5: CONTROL PID DE UN MANIPULADOR ROBOTICO DE 5 GRADOS DE LIBERTAD

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])

+

-

qcontrolPIDMotor

ROBOTMotor

DC

eR

Figura 8. Esquema del Control PID.

Primero se realizó el control PID directamente, sin

saturaciones en las entradas, ni restricciones.

Figura 9. Bloque de Control PID.

Figura 10. Torques obtenidos con el PID inicial.

Función de Transferencia de Motores DC

Ahora modificamos el PID inicial, para poder utilizar las

características de los motores DC. Se crea el diagrama de

bloques dentro de nuestro lazo de control, el cual tendrá

como entrada Voltaje y Torque como salida, teniendo en

cuenta los valores límites de la entrada Voltaje.

Figura 11. Bloque del Motor DC.

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

los motores despreciando los efectos de viscosidad e inercia

del motor por ser despreciables respecto a las inercias del

robot.

Figura 12. Bloque de los actuadores de manipulador.

controlPIDMotor

ROBOTR+

-

qMotor

DC

e

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

eléctrica de los actuadores.

Figura 14. Bloque de control PID usando la dinámica

eléctrica de los actuadores.

En la figura 14 se observa que en el nuevo bloque de control

PID, se ha tomado a los voltajes como variables de control,

para luego calcular los torques correspondientes.

Page 6: CONTROL PID DE UN MANIPULADOR ROBOTICO DE 5 GRADOS DE LIBERTAD

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 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 16. Trayectorias helicoidales superpuestas.

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

Figura 18. Voltajes durante el control.

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 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).

Page 7: CONTROL PID DE UN MANIPULADOR ROBOTICO DE 5 GRADOS DE LIBERTAD

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

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)

La trayectoria seguida es la misma que la anterior.

Figura 22. Torques al inicio del control PD.

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

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

Figura 25. Trayectorias deseada y seguida por el robot.

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 26. Bloque de control PID con desacople.

Page 8: CONTROL PID DE UN MANIPULADOR ROBOTICO DE 5 GRADOS DE LIBERTAD

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

Figura 27. Torques al inicio del control PID-HCG.

Figura 28. Torques durante los 30s.

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ó.

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

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 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 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.

Page 9: CONTROL PID DE UN MANIPULADOR ROBOTICO DE 5 GRADOS DE LIBERTAD

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

velocidades mayores y se obtuvo el siguiente resultado.

Para v = 0.15 m/s

𝐾𝑃 = 𝑑𝑖𝑎𝑔([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 32. Comparación de trayectorias con Kd y Kp modificados

Figura 33. Incremento de torques para las tres velocidades.

b. Trayectoria rectilínea

Primero modificamos las velocidades del robot para ver su

efecto en la trayectoria considerando las ganancias iniciales,

que fueron sintonizadas para la frecuencia inicial

𝐾𝑃 = 𝑑𝑖𝑎𝑔([200,200,200,200,200])

𝐾𝐷 = 𝑑𝑖𝑎𝑔([30,30,30,30,30])

𝐾𝐼 = 𝑑𝑖𝑎𝑔([20,20,20,20,10])

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.

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 35. Trayectorias para la nueva sintonización de las ganancias.

Page 10: CONTROL PID DE UN MANIPULADOR ROBOTICO DE 5 GRADOS DE LIBERTAD

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

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])

𝐾𝐼 = 𝑑𝑖𝑎𝑔([2.45,2.45,2.45,1.75,1.75])

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

velocidad de recorrido

La Figura 37 es el resultado del control PID sin modificar

sus ganancias para diferentes velocidades.

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 38. Trayectorias para la nueva sintonización de las ganancias.

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

Page 11: CONTROL PID DE UN MANIPULADOR ROBOTICO DE 5 GRADOS DE LIBERTAD

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

VI. CONCLUSIONES

-El software SimMechanics de Matlab es una potente

herramienta en la simulación de sistemas robóticos, ya que

nos permite importar nuestro diseño realizado en algún

programa CAD (en este caso SolidWorks) incluyendo las

características inerciales del diseño, además permite realizar

análisis dinámicos, cinemáticos, de dinámica inversa y

también estática. La ventaja de utilizar este software de

simulación es que permite realizar el análisis matemático y,

en la mayoría de los casos, poder obtener importantes

deducciones de una forma eficaz y rápida. Otra ventaja de

este programa de simulación es que su complejidad no

aumenta a medida que se añaden más grados de libertad,

cosa que no sucede con el análisis matemático.

-Se realizó un control con regular precisión, los valores del

error angular alcanzan unos cuantos ángulos para razonables

magnitudes de torque, por lo cual el control realizado en el

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.

REFERENCES

[1] Ing. César Anchayhua Aréstegui.

Apuntes de clases: Análisis y control de robots

Universidad Nacional de Ingeniería,

Facultad de Ingeniería Mecánica,

Escuela profesional de Ingeniería Mecatrónica.

Lima - Perú 2010

[2] A. Barrientos, L. F. Peñin, C. Balaguer, R. Aracil

Fundamentos de robótica, Mc Graw Hill, 2004

[3] John J. Craig

Introduction to robotics mechanics and control

Addison-Wesley Publishing Company, 1989

[4] Schilling, J. Robert. , Fundamentals of Robotics.

Estados Unidos: Prentice-Hall, Inc. (1990).

[5] “Introduction to Robotics” (2006), H. Harry Asada.

Massachussets Institute of Technology.

[6] Katsuhiko Ogata, “Ingeniería de Control Moderna”,

Pearson, 2003, 4ta edición

[7] Ahmed A. Shabana, “Computational Dynamics”,

Editorial John Wiley& Sons.