Cinemática de brazo manipulador de 2 GDL Salomon

October 18, 2017 | Author: juanillofc | Category: Kinematics, Matlab, Simulation, Trajectory, Robot
Share Embed Donate


Short Description

Descripción: kinematic...

Description

Cinemática de brazo manipulador de 2 GDL J. Salomón Rodríguez Modelado y Controladores de Robots j Departamento de Robótica Universidad Politécnica de Guanajuato Resumen En este documento se presenta los sistemas que describen a un manipulador con dos grados de libertad, como son, la cinemática directa y diferencial, y una simulación numérica hecha en Matlab comparando el comportamiento de los valores deseados con los valores reales de dicho manipulador. También se presenta la representacion grá…ca que demuestra que la con…guración de codo abajo ubica a un punto …nal en las mismas coordenadas que lo ubicaría la con…guracion codo arriba.mediante una simulación numérica hecha en Matlab comparando el comportamiento de los valores de ambas con…guraciones de un manipulador de 2 grados de libertad.

1.

Introducción

Para comenzar a entender el comportamiento de un brazo manipulador se debe de entender como actúa la cinemática del manipulador a observar, para esto hacemos uso de la cinemática directa, inversa y diferencial del manipulador de 2 GDL. El manipulador de 2 GDL se puede controlar según nuestras necesidades para esto se deben de considerar la posición del manipulador así como la trayectoria deseada y al …nal la posición …nal según la información que podamos obtener de nuestro entorno y de los diseños matemáticos.

2.

Objetivo

Analizar y observar el comportamiento de la cinemática directa e inversa de un robot planar de 2 grados de libertad (GDL), así como su simulación numérica de seguimiento de trayectoria, utilizando el método ODE4 Runge-Kutta con un paso …jo de integración de 1 ms, en un tiempo de simulación de 1 segundos usando archivos m-…le y bloques de simulink R .

3.

Desarrollo y análisis de resultados

3.1.

Cinemática directa, inversa y diferencial

Considerando un modelo matemático simpli…cado dado por la ecuación 1, de un robot manipulador de 2 GDL. Se debe obtener la cinemática directa y diferencial de un brazo manipulador de 2 GDL y realizar una simulación numérica en Simulink R para analizar el desempeño del controlador, aplicado a la ecuación 1, con un tiempo de 1s, utilizando el metodonumericoRunge Kutta a un paso…jo de integracionde 1ms. Considerando una trayectoria dada por x = R cos(wt) e y = R sin(wt), con w = 10; R = 1 y condiciones iniciales para teta de 1. dx dy

=

a1 cos(teta1) + a2 cos(teta1 + teta2) a1 sin(teta1) + a2 sin(teta1 + teta2)

En la Figura 1 se muestra la representación esquemática del robot planar a analizar.

1

(1)

Figura 1 Representación del modelo del robot 2GDL. Para desarrollar el modelo matemático se inició con el planteamiento para obtener la posición …nal de acuerdo al movimiento de cada uno de los eslabones. Se presenta a continuación en la ec. (2) se muestra la cinemática diferencial directa para el robot planar de 2 grados de libertad, que es de…nida como x_ = J _ , donde J es igual a la matriz que contiene el resultado de las derivadas de las posición de x e y; esta matriz se conoce como la matriz jacobiana y por ultimo _ contiene los valores de las variables a controlar. x_ y_

=

a1 sin 1 a2 sin( a1 cos 1 + a2 cos(

+ 1+

1

2)

a2 sin( ) a 2 2 cos(

+ 1+

1

2) 2)

_1 _2

(2)

Conociendo la cinemática del robot se procedio a de…nir una trayectoria de movimiento, esta trayectoria fue una circunferencia de valor R para el radio. Esta trayectoria se muestra en la ec.(3). xd yd

=

x + R cos(wt) y + R sin(wt)

(3)

Al momento de realizar la simulación se obtienen los valores reales del sistema de coordenadas de los ejes x y y, en este caso para obtener los valores de las variables a controlar del control de posición de los ángulos, se implemento la cinemática inversa utilizando el método gra…co, en la Figura 2 se muestra la representación gra…ca de lo que se necesita para utilizar este método, el cual consiste en conocer los valores reales de las coordenadas de x y y del efector …nal del robot , para que de esta forma se obtengan los valores de y , por ejemplo para obtener q1 que representa a 1 se obtiene mediante la resta de , y por ultimo para obtener q2 se requiere conocer el valor del coseno de 2 , este valor se obtiene mediante la ec.(4). Al conocer este dato se puede saber el valor de 2 mediante la ec.(5).

2

Figura 2. Método grá…co.

D = cos

2

2

=

(x2 + y 2 a12 2 a1 a2

= tan

p 2

1

1 D2 D2

a22 )

!

(4)

(5)

El siguiente paso es construir todo el sistema del robot planar de 2 grados de libertad en el software de SIMULINK el cual consiste de 4 bloques principales, ver Figura 3. Al inicio se encuentra la descripción matemática de circunferencia que se desea obtener la cual incluye los valores del radio, frecuencia (!) y además este bloque depende de la unidad de tiempo. Las salidas de este bloque pasan a un bloque de derivada para obtener la primera derivada de estos valores, seguido se encuentra el bloque de la sinemática directa este bloque necesita conocer los valores reales de 1 y 2 y también los valores reales de x y y:deseadas, esto, para obtener las entradas de control _ 1 y _ 2 que son las entradas que necesita el tercer bloque que es el de la cinemática inversa del robot. Este tercer bloque se encarga de realizar las operaciones para obtener los valores de las posiciones reales del robot respecto a las coordenadas x y y, dichas salidas se gra…can en bloques de PLOT XY para observar el comportamiento real, de igual manera se gra…ca los valores deseados.

Figura 3 Sistema completo representado en bloques de simulink. El código utilizado contiene datos …jos de los valores de los eslabones y las operaciones matriciales correspondientes que se obtuvieron en su análisis. Este código se muestra a continuación. Donde se puede observar que se realizo un archivo m para cada uno de los 2 bloques de m f unction que contienen operaciones. Algunos datos como es el caso de la matriz Jacobiana se encuentran en la primera sección. function salida=R2GDLfunction(j) %tarea1 de tópicos de robótica 2-13 septiembre 2010 %entradas teta1=j(1); dxd=j(2); dyd=j(3); teta2=j(4); %constantes

3

a1=1; %[m] a2=1; %[m] %Elementos de la matriz J j11=-(a1*sin(teta1)+a2*sin(teta1+teta2)); j12=-(a2*sin(teta1+teta2)); j21= (a1*cos(teta1)+a2*cos(teta1+teta2)); j22= (a2*cos(teta1+teta2)); %Matriz J J=[j11 j12;... j21 j22]; dX=[dxd;dyd]; dteta=JndX; dteta1=dteta(1,1); dteta2=dteta(2,1); %vector de salida salida=[dteta1;dteta2];

En la Figura 4 se muestra los resultados de la simulación, en los cuales se realiza una circunferencia que tiene un o¤set de 200 unidades en x y 200 en y.

Figura 4 resultados de la simulación En la Figura 5 se muestra la trayectoria deseada y como se puede observar se cumple con el movimiento que se propuso.

4

Figura 5 se muestra la trayectoria deseada

3.2.

Con…guraciones del manipulador

Utilizando el método de la cinemática inversa del manipulador se pretende demostrar que los efectos de la con…guración de codo abajo son los mismos que los de la con…guración codo arriba, con el …n de evitar algunos obstáculos que se pudieran encontrar a la hora de realizar alguna tarea. Se plantea primeramente la ecuación que describe el comportamiento de la variable 1 en la ecuación 6 1 = arctan

y x

cos ( 2) =

a2 sin ( 2) a1 + a2 cos ( 2)

arctan

x2 + y 2 a12 a22 2 a1 a2

=D

(6) (7)

recordando que: cos2 ( 2) + sin2 ( 2) = 1

(8)

sin2 ( 2) = 1

(9)

Obtenemos: cos2 ( 2)

Dividiendo ambos lados de la ecuación por cos ( 2) tenemos que: p sin ( 2) 1 D2 = cos ( 2) D

(10)

Aplicando una identidad trigonométrica simpli…camos a: p

2 = arctan

1 D2 D

!

(11)

!

(12)

donde 2 está compuesto por 21 y 22 21 =

22 =

arctan

arctan

5

p

D2

1 D

p

1 D2 D

!

(13)

Por último utilizamos estos resultados para realizar las grá…cas en simulink utilizando bloques de m-function sobre el sistema mostrado en la …gura 3.

Figura 6 Sistema con las con…guraciones de codo abajo y codo arriba. Para obtener las dos con…guraciones de 2 se utilizó un bloque de simulink donde se aplicaba la función de matlab atan2 en el segundo bloque se utilizaron los valores obtenidos de 2 para obtener los valores de 1. Por último se gra…có cada una de las respuestas de salida. function salida=R2GDLteta(j) %tarea1 de tópicos de robótica 2-13 septiembre 2010 %entradas x=j(1); y=j(2); %constantes a1=1; %[m] a2=1; %[m] %Elementos de D D=((x^2)+(y^2)-(a1^2)-(a2^2))/(2*a1*a2); num=sqrt(1-D^2); den=D; teta21=atan2(num,den); teta22=atan2(-num,den); %vector de salida salida=[teta21;teta22]; function salida=R2GDLteta1(j) %tarea1 de tópicos de robótica 2-13 septiembre 2010 %entradas x=j(1); y=j(2); teta21=j(3); teta22=j(4);

6

%constantes a1=1; %[m] a2=1; %[m] %Elementos teta11=atan(y/x)-atan((a2*sin(teta21))/(a1+a2*cos(teta21))); teta12=atan(y/x)-atan((a2*sin(teta22))/(a1+a2*cos(teta22))); %vector de salida salida=[teta11;teta12];

Figura 6 Resultados de simulación de 2

Figura 6 Resultados de simulación de 1

4.

Conclusiones generales

Se con…rmó el correcto funcionamiento de la cinemática del robot planar mediante la simulación, veri…cando cada paso del procedimiento utilizado para obtener los valores requeridos para su movimiento. En la simulación se observaron algunas características que no se tenían claras acerca de las entradas de cada uno de los bloques que contienen las operaciones correspondientes a cada una de las partes del sistema del robot. De manera grá…ca se observa que el valor numérico de 11 y 12 , así como, 21 y 22 son similares pero se observa que están en distintos planos.

7

5.

Bobliografía

Referencias [1] Notas de control cinemático de velocidad, Prof Esteban Chávez Conde: asignatura de tópicos de robótica 2.

Índice 1. Introducción

1

2. Objetivo

1

3. Desarrollo y análisis de resultados

1

3.1. Cinemática directa, inversa y diferencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1

3.2. Con…guraciones del manipulador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5

4. Conclusiones generales

7

5. Bobliografía

8

8

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF