simulación de manipulador robótico tipo scara

5

Click here to load reader

Upload: ricardocano

Post on 12-Jun-2015

1.994 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Simulación de manipulador robótico tipo SCARA

UNIVERDIDAD NACIONAL DE INGENIERÍA. Escuela Profesional de Ingeniería Mecatrónica. Agosto 01, del 2009

1

Control Dinámico de un Manipulador de Configuración SCARA de 3 GDL

Ricardo Cano M. [email protected] / Ismael Isidro S. [email protected] / Luis Cóndor O.

[email protected] / Joel Pinedo G. [email protected]. Estudiantes de Pregrado. UNI-Perú.

Resumen.- Este artículo describe la simulación de un manipulador robótico de configuración SCARA de tres grados de libertad. El problema principal es el seguimiento de trayectorias cartesianas, para lo cual se implementa una técnica de control neuronal. Las simulaciones se realizan usando el modelo dinámico del robot de configuración SCARA, se intenta minimizar el error de seguimiento de trayectorias usando un controlador PID para que posteriormente este sea reemplazado por una Red Neuronal previamente entrenada. Abstract.- This article describes the simulation of a robotic manipulator, SCARA configuration of three degrees of freedom. The main problem is the follow-Cartesian trajectories, which implements a technique for controlling neuronal. The simulations are performed using the dynamic model of the SCARA robot configuration, it tries to minimize the trajectory tracking error using a PID controller for this is subsequently replaced by a previously trained neural network.

1. INTRODUCCIÓN

a mayor parte de los robots manipuladores actuales, responden a la estructura angular, también conocida como "articular", representando

aproximadamente el 45%, seguidos de los de estructura Cartesiana y SCARA. Puesto que para posicionar y orientar un cuerpo de cualquier manera en el espacio son necesarios seis parámetros, tres de posición y tres de orientación, si se pretende que un robot posicione y oriente su extremo, se precisarán al menos seis grados de libertad. En la práctica, a pesar de ser necesarios los seis GDL, muchos robots industriales cuentan con sólo cuatro o cinco GDL, por ser éstos suficientes para llevar a cabo las tareas de se les encomiendan.

El robot SCARA fue creado por un grupo de industrias electrónicas japonesas, en colaboración con dos universidades, para insertar los componentes de forma vertical. Como se puede observar, esta configuración está formada por dos articulaciones de rotación con respecto a dos ejes paralelos entre sí y perpendiculares al plano de trabajo, y una de desplazamiento en una dirección paralela a la de los ejes de rotación. Es similar al de configuración cilíndrica, pero el radio y la rotación se obtienen por uno o dos eslabones. Este brazo puede realizar movimientos horizontales de mayor alcance debido a sus dos articulaciones rotacionales. El robot de configuración SCARA también puede hacer un movimiento lineal (mediante su tercera articulación).

Debido a estas características se usan sobremanera en la fabricación de electrónica de consumo y en la clasificación de artículos para su empaquetado.

2. MODELAMIENTO DINÁMICO DEL ROBOT

El Modelamiento dinámico del robot SCARA

consiste en encontrar las matrices que nos permitan conocer el comportamiento del robot, conociendo como entradas los torque aplicados en cada junta, específicamente los brindados por los actuadores. La dinámica de un robot está gobernada por la ecuación matricial (1).

, (1) Donde cabe mencionar que es el torque aplicado

por los actuadores. Luego es una matriz simétrica no singular que relaciona el efecto inercial de los enlaces y expresa la fuerza inercial debido al movimiento del robot. El vector , , es generado por la reacción de los efectos centrífugos y de Coriolis, debido al acoplo de velocidades durante el movimiento del robot. El vector fuerza representa los efectos de la gravedad en los enlaces. Y son los efectos viscosos que se oponen al desplazamiento de las articulaciones.

La configuración tipo SCARA cuenta con 3 grados de libertad, dos angulares y uno prismático. El robot que vamos a modelar presenta una configuración similar a la figura 1.

Figura 1. Configuración SCARA de 3 GDL.

La configuración SCARA está definida por los parámetros Denavit Hartenberg que se muestran en la tabla 1.

1 0 0 0 2 0 0 0 3 0 0 1

Tabla 1. Parámetros D-H de la configuración SCARA.

L

Page 2: Simulación de manipulador robótico tipo SCARA

UNIVERDIDAD NACIONAL DE INGENIERÍA. Escuela Profesional de Ingeniería Mecatrónica. Agosto 01, del 2009

2

Siendo la longitud del Eslabón . Y los parámetros los grados de libertad asociados a ello. En este caso los dos primeros grados de libertad son rotacionales y el tercero es prismático. Con los parámetros D-H conocidos se puede obtener las matrices de transformación homogénea rápidamente, de las que se puede extraer el vector de posición del efector final.

Cqq Sqq 0 Cqq CSqq Cqq 0 Sqq S 00 00 10 1 " (2)

p$ Cqq C p% Sqq S (3) p&

Con los cálculos anteriores tenemos definido la geometría directa del robot SCARA. Quiere decir que dados los valores de las posiciones absolutas de las articulaciones podemos determinar la posición del efector final que está dado por el vector ' ()* )+ ),- de tres componentes cartesianas. A partir de ella despejamos los valores de cada articulación de manera que queden expresadas en función de las componentes de '. Con esto tenemos la geometría inversa del robot SCARA. ), ./2112, 222 ./23)+ , )*4 ./25, 5 La cinemática inversa viene definida por: 6' (4) La ecuación anterior define la cinemática inversa. Conociendo las velocidades deseadas en el efector final, podemos obtener los valores de las velocidades en cada articulación, esto es la trayectoria cinemática de cada articulación. La matriz 6 es conocida con el nombre de Jacobiana. Esta matriz se calcula según la expresión: 6 7'7'

Hallar la matriz Jacobiana resuelve la Cinemática Directa del Robot y deja listo el camino para determinar el Modelamiento Dinámico del Robot, la cual se obtiene hallando todas las matrices de la ecuación (1) según las siguientes expresiones:

8 9:: 8 8 :;:;<;=

<:=

<:=

9 8 >?6@ A6@ 6B AC6B D<=

:; 79:7; 12 79:;7

8 ?:EA6@:<=

3. ALGORITMO DE SIMULACIÓN Si se conocen las matrices de la ecuación (1), ya se

consiguió el modelo dinámico del robot. Con esto se construye un algoritmo de simulación en el SIMULINK de Matlab. Se conectan los bloques que evaluarán las matrices de la ecuación (1) para cada instante de simulación, y con él se podrá observar la respuesta del modelos dinámico del robot ante la excitación por torque de las articulaciones.

Figura 2. Algoritmo para generar las trayectorias deseadas.

En la figura 2 podemos notar que se están usando bloques que calculan la Geometría Inversa del robot. Es decir, dada una trayectoria en el espacio cartesiano, se calcula la trayectoria articular expresada por deseado. Igualmente ocurre con las velocidades que mediante la ecuación calculan los valores de deseados. Esta trayectoria articular calculada será la referencia para el control dinámico del robot.

Figura 3. Diagrama de Bloques. Calcula la dinámica del Robot.

Una vez calculada la dinámica del robot, sólo se necesita construir un diagrama similar al de la figura 3. Con ello se observa al robot como un bloque cuya entrada es el torque y la salida son las posiciones y velocidades que alcanza el sistema producto de dicha excitación.

Page 3: Simulación de manipulador robótico tipo SCARA

UNIVERDIDAD NACIONAL DE INGENIERÍA. Escuela Profesional de Ingeniería Mecatrónica. Agosto 01, del 2009

3

Figura 4. Algoritmo de Simulación del Control Dinámico del Robot SCARA.

4. ESTRATEGIA DE CONTROL

Se implementa un PID para garantizar el valor de cero

en estado estacionario del error de seguir las trayectorias articulares calculadas. La ley de control está definida por la expresión (6).

F G<H 2IG<H 5 J H.KL (6)

La frecuencia natural G< está directamente relacionada con el 5M o ganancia proporcional. Esta ganancia tiene la característica que aumenta la velocidad del control, el tiempo de subida es más rápido pero a costa de un mayor sobre impulso que puede desestabilizar el sistema.

La constante de amortiguamiento I está involucrada con el valor de la constante derivativa. Si la constante 5N aumenta el control es más lento, el sobrepaso decrece y la estabilidad mejora. La constante de integración provoca las mismas consecuencias que la proporcional.

5. ESTRATEGIAS DE CONTROL DINÁMICO

Se ponen a prueba las siguientes estrategias de control. La primera la compensación de la gravedad.

Y luego el desacoplo de torques.

6. CONTROL DE ACTUADORES

Se nota que es conveniente hacer más real nuestra

simulación por lo que se agregan los actuadores para cada articulación. Seleccionamos motores eléctricos cuyos modelos en Espacio Estado son conocidos y pensamos que es conveniente un control de torque ya que la referencia del controlador PID del robot, enviará una referencia proporcional al torque requerido como esfuerzo de control.

Modelamos un motor DC en Espacio estado usando para eso los siguientes parámetros mostrados en la tabla 2. Debido a que no queremos agregar sobre impulso al entregar torque, porque esto se vería reflejado en el seguimiento de la trayectoria, vamos a realizar un control por realimentación de estado que ubique los polos sobre el eje real, de manera que el sistema en lazo cerrado sea sobre amortiguado.

Símbolo Valor Unidades 6 2.6x10Q Kgm2 R 1.2 x 10Q Nms/rad

5S 0.0612 Vrad/s

5T 0.0612 Nm/A

U 1.01 Ω

1.06 mH

Tabla 2. Parámetros de Simulación para los actuadores.

Figura 5. Modelamiento en Espacio Estado del Actuador. Motor Eléctrico

De esta manera, al ser el sistema en lazo cerrado sobre amortiguado, no necesitamos preocupamos por que se presenten sobre picos. Pero se está arriesgando el tiempo de asentamiento, pero esta debe ser compensada con el control del motor.

Figura 6. Diagrama de control de Actuador Motor DC por realimentación de Estados y acción integral.

Se procedió a realizar las simulaciones que muestran cómo la ubicación de polos hace al sistema sobre amortiguado.

Page 4: Simulación de manipulador robótico tipo SCARA

UNIVERDIDAD NACIONAL DE INGENIERÍA. Escuela Profesional de Ingeniería Mecatrónica. Agosto 01, del 2009

4

Figura 7. Resultado del control por ubicación de polos más ganancia integral.

7. PRUEBAS DEL CONTROL DINÁMICO

Durante el proceso de simulación se hicieron diferentes pruebas que nos llevaron a conclusiones muy interesantes que mostraremos en gráficos y tablas de resultados Por ejemplo para una trayectoria cosenoidal compleja en el espacio, tenemos los siguientes resultados. Dependiendo la posición inicial del robot, el error inicial puede ser muy grande, sin embargo alcanza a estabilizarse entorno a cero rápidamente, como se observa en la figura 9.

Figura 8. SCARA siguiendo trayectoria cosenoidal.

Figura 9. Errores de posición de las juntas.

El siguiente gráfico muestra la velocidad a la que el error está variando mientras se estabiliza el seguimiento de la trayectoria. Presenta los máximos valores al inicio, siendo que se está haciendo un mayor esfuerzo de control.

Figura 10. Derivada del error de las juntas.

A continuación veamos los esfuerzos de control expresados por los torque desarrollados en cada junta.

Figura 11. Señal de torque entregada por el controlador,

sin saturador

Figura 12. Señal de torque entregada por el control, con el efecto

del saturador. La figura 13 muestra el torque que entregan los actuadores al robot.

0 1 2 3 4 5 6 7 8 9 10

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

00.5

11.5

2

0

0.5

1

1.5

20

0.5

1

1.5

2

2.5

SCARA SIGUIENDO TRAYECTORIA COSENOIDAL

0 50 100 150 200 250 300 350 400-0.3

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6Error de posicion global - comparando XYZ

eje x

eje yeje z

0 50 100 150 200 250 300 350 400-0.4

-0.3

-0.2

-0.1

0

0.1

0.2

0.3dError de posicion global - comparando XYZ

eje x

eje yeje z

0 50 100 150 200 250 300 350 400-2

-1.5

-1

-0.5

0

0.5

1Torque en cada junta sin saturacion

Torque de junta 1

Torque de junta 2Torque de junta 3

0 50 100 150 200 250 300 350 400-2

-1.5

-1

-0.5

0

0.5

1Torque en cada junta saturado

Torque de junta 1

Torque de junta 2Torque de junta 3

Page 5: Simulación de manipulador robótico tipo SCARA

UNIVERDIDAD NACIONAL DE INGENIERÍA. Escuela Profesional de Ingeniería Mecatrónica. Agosto 01, del 2009

5

Figura 13. Señal de torque entregada por los motores al robot.

8. VALIDACIÓN DE LOS CONTROLADORES IMPLEMENTADOS

En la siguiente sección se probará la eficiencia de los

controladores en cada junta haciendo que por momento uno de ellos falle o simplemente no reciba señal de control. Por ejemplo si el actuador del primer eslabón falla o el control no funciona, podemos probar cómo responde la estrategia de control ante las mismas referencias que se le pide seguir.

Figura 14. Error de posicionamiento de las juntas.

En la figura 14 podemos apreciar que el control trata de seguir la trayectoria deseada, pues el error no tiene cambios bruscos al principio, sin embargo pierde estabilidad después de cierto tiempo. Igualmente ocurre con la señal de velocidad de variación del error, ver figura 15. El torque requerido se mantiene estable los primeros instantes, pero luego se desestabiliza totalmente. Es decir los actuadores que quedan siguen haciendo el esfuerzo para seguir las trayectorias articulares, pero el eslabón 2 al rotar está provocando un efecto sobre la junta con el eslabón 1 y este efecto inercial hace que la junta 1 rote libremente sin control y provoca que el sistema pierda el equilibrio instantáneo.

Figura 14. Velocidad de cambio del error.

Figura 15. Torque en cada junta sin Saturación.

Ahora veremos lo que pasa al eliminar el actuador del segundo eslabón. La figura 16 nos hace ver que la junta 2 no exige nada al motor pues el actuador no está funcionando.

Figura 16. Torque en cada junta sin Saturación.

El torque 1 va estable los primeros instantes pero

luego se desestabiliza, es decir hace un esfuerzo por seguir la referencia hasta desestabilizarse, esto muestra que la técnica de control es adecuada.

0 50 100 150 200 250 300 350 400-1.2

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4Torque en cada junta entregado por motores

Torque de junta 1

Torque de junta 2Torque de junta 3

0 500 1000 1500 2000 2500-8

-6

-4

-2

0

2

4

6Error de posicion global - comparando XYZ

eje x

eje y

eje z

0 500 1000 1500 2000 2500-15

-10

-5

0

5

10

15

20

25dError de posicion global - comparando XYZ

eje x

eje y

eje z

0 500 1000 1500 2000 2500-15

-10

-5

0

5

10

15Torque en cada junta sin saturacion

Torque de junta 1

Torque de junta 2

Torque de junta 3

0 200 400 600 800 1000 1200 1400-15

-10

-5

0

5

10

15Torque en cada junta entregado por motores

Torque de junta 1

Torque de junta 2

Torque de junta 3