Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Simulacion de Un Brazo Antropomorfico Con Muñeca Esferrica
Simulacion de Un Brazo Antropomorfico Con Muñeca Esferrica
Lima - Peru
Resumen: En este trabajo, se presenta la simulacin cinemtica de brazo antropomrfico con mueca esfrica 6 GDL. El mecanismo tiene una configuracin mecnica de cuatro vnculos con cadena cinemtica del tipo rotacional. Los vnculos estn unidos consecutivamente. Para el modelado de cinemtica directa se emplea las ecuaciones vectoriales. En el documento, se presentan la cinemtica yel simulador respectivo construido para el estudio de sus caractersticas de movimiento. Finalmente, se presentan las graficas respectivas delcomportamiento del mecanismo obtenidas en Matlab y la simulacin respectiva en SolidWorks.
Abstract:In this paper, we present the kinematics and simulation of an anthropomorphic arm with spherical wrist 6 DOF. The mechanism has a mechanical configuration of four-link and kinematic chain rotational type. The links are connected consecutively. For the direct kinematic model uses the vector equations. In this paper we present the kinematic and its simulator for the study of their characteristics of movement. Finally, we present the graphs for the behavior of the mechanism obtained in Matlab and SolidWorks the respective simulation. KeywordsKinematic, simulation, anthropomorphic arm
Pgina 2
1 Introduccin Seis grados de libertad (6DoF son el acrnimo de las palabras inglesas "Sixdegrees of freedom") se refiere al movimiento en un espacio tridimensional, es decir, la capacidad de moverse hacia delante/atrs, arriba/abajo, izquierda/derecha (traslacin en tres ejes perpendiculares), combinados con la rotacin sobre tres ejes perpendiculares (Guiada, Cabeceo, Alabeo). El movimiento a lo largo de cada uno de los ejes es independiente de los otros, y cada uno es independiente de la rotacin sobre cualquiera de los ejes, el movimiento de hecho tiene seis grados de libertad. Los brazos de un Robot, a menudo son categorizados por sus grados de libertad (por lo general ms de seis grados de libertad). Este nmero generalmente se refiere al nmero de un solo eje de rotacin de las articulaciones en el brazo, donde un mayor nmero indica una mayor flexibilidad en posicionar una herramienta. Esta es una mtrica muy prctica, en contraste a la definicin abstracta de los grados de libertad, que mide la capacidad global de posicionamiento de un sistema. DeanKamen, inventor del Segway, present recientemente un prototipo de un brazo robtico con 21 grados de libertad para DARPA. Los robots humanoides suelen tener 30 o ms grados de libertad, con seis grados de libertad en el brazo, cinco o seis en cada pierna, y varios ms en el torso y el cuello. Seis grados de libertad tambin es un estilo de jugabilidad donde amenudo no existe la gravedad, y los jugadores son libres de moverse en cualquier direccin tridimensional. 2 Descripcin del mecanismo El mecanismo de anlisis se muestra en la figura 1. El mecanismo consta de una base fija a la que va unido el 1er elemento que es un cilindro, los siguientes vnculos estn unidos en articulaciones angulares.
Pgina 3
Para nuestro sistema se le ha asignado las medidas siguientes, el 1er elemento es de longitud L1, el siguiente vinculo es de longitud L2, el siguiente vnculo es un elemento rotacional de longitud L3, el ltimo vinculo es tambin rotacional y de longitud L4, los puntos de anlisis son el punto P y P0 como se muestra en la figura 2.
Fig. 2. Dimensiones del Brazo Antropomrfico con mueca esfrica de seis grados de libertad
Pgina 4
4 Modelado Cinemtico Para el modelado cinemtico del mecanismo, para el caso de la posicin directa se emplean dos mtodos la representacin matricial de Denavit-Hartemberg (D-H) y las ecuaciones vectoriales. Como una solucin al objeto de anlisis empezamos por darle valores a las velocidades angulares que vendran hacer los parmetros q al mismo tiempo ya que nuestro sistema es un brazo de 6 gdl y todas rotacionales. q1=sin(t)*pi/8; q2=pi/3+sin(t)*pi/20; q3=pi/6-sin(t)*pi/4; q4=t.*pi/8; q5=pi/2+sin(t)*pi/20; q6=pi/4+t.^2*pi/20;
desde t=[0:0.01:6];
Pgina 5
Formulacin de cinemtica directa usando la representacin matricial de DenavitHartemberg (D-H) En la siguiente tabla se muestra los parmetros del sistema: i 1 2 3 4 5 6 ai 0 L2 0 0 0 0
i
di L1 0 0 L3 0 L4
Usando el siguiente cdigo en matlab para el clculo de las matrices de transformacin del sistema de referencia respecto del sistema de referencia
function CinematicaPosicionDirecta %Cinemtica Posicin usando D-H clc clear all close all syms L1 L2 L3 L4 t syms q1 q2 q3 q4 q5 q6 %Valores angulares q % q1=sin(t)*pi/8; % q2=pi/3+sin(t)*pi/20; % q3=pi/6-sin(t)*pi/4; % q4=t.*pi/8; % q5=pi/2+sin(t)*pi/20; % q6=pi/4+t.^2*pi/20; %Parmetros del Sistema a= [0 L2 0 0 0 0]; al=[pi/2 0 pi/2 pi/2 pi/2 0]; d=[L1 0 0 L3 0 L4]; th=[q1 q2 q3 q4 q5 q6]; MTH=1; % MTH=[1 0 0 0;0 1 0 0;0 0 1 0;... % 0 0 0 1]; for i=1:6 if al(i)==pi/2; T=[cos(th(i)) 0 1*sin(th(i)) a(i)*cos(th(i));... sin(th(i)) 0 -1*cos(th(i)) a(i)*sin(th(i));... 0 1 0 d(i); 0 0 0 1]; else T=[cos(th(i)) -cos(al(i))*sin(th(i)) sin(al(i))*sin(th(i)) a(i)*cos(th(i));... sin(th(i)) cos(al(i))*cos(th(i)) -sin(al(i))*cos(th(i)) a(i)*sin(th(i));... 0 sin(al(i)) cos(al(i)) d(i); 0 0 0 1]; end TH=T; MTH=MTH*TH; end TH; MTH %matriz total de transformacion P=MTH(1:3,[4]) %posicion
Pgina 6
Simulacin de un brazo Antropomrfico con Mueca Esfrica 6 GDL th=[q1 q2 q3 q4 q5 q6]; J=jacobian(P,th) %Jacobiano end
Se obtienen:
La matriz de transformacin Total es una expresin muy grande por la que no se mostrar en este trabajo, pero se puede observar ejecutando el programa en matlab (el archivo CinematicaPosicionDirecta.m que se adjunto en el CD) De la matriz de transformacin total se obtiene la posicin:
Pgina 7
Clculo de la posicin usando ecuaciones Vectoriales: Para el clculo por el mtodo vectorial se trabajar con los siguientes datos: ngulos iniciales (Punto inicial t=0)
Pfinal = 1.2567 -0.7070 0.9849 Para este clculo se implemento el siguiente cdigo en matlab
function CinematicaDirecta %Cinemtica directa de Posicin clc clear all close all syms L1 L2 L3 L4 t %Definimos los valores de los "q" a utilizar q1=sin(t)*pi/8; q2=pi/3+sin(t)*pi/20; q3=pi/6-sin(t)*pi/4; q4=t.*pi/8; q5=pi/2+sin(t)*pi/20;
Pgina 8
Simulacin de un brazo Antropomrfico con Mueca Esfrica 6 GDL q6=pi/4+t.^2*pi/20; %Parmetros de Denavit Hartenberg a= [ 0 L2 0 0 0 0]; al=[ pi/2 0 pi/2 pi/2 pi/2 0]; d=[ L1 0 0 L3 0 L4]; th=[q1 q2 q3 q4 q5 q6]; for k=1:6 if al(k)==pi/2; T=[cos(th(k)) 0 1*sin(th(k)) a(k)*cos(th(k));... sin(th(k)) 0 -1*cos(th(k)) a(k)*sin(th(k));... 0 1 0 d(k); 0 0 0 1]; else T=[cos(th(k)) -cos(al(k))*sin(th(k)) sin(al(k))*sin(th(k)) a(k)*cos(th(k));... sin(th(k)) cos(al(k))*cos(th(k)) -sin(al(k))*cos(th(k)) a(k)*sin(th(k));... 0 sin(al(k)) cos(al(k)) d(k); 0 0 0 1]; end if k==1 T01=T; elseif k==2 T12=T; elseif k==3 T23=T; elseif k==4 T34=T; elseif k==5 T45=T; else T56=T; end end T06=((((T01*T12)*T23)*T34)*T45)*T56; P0=(T06(1:3,4)); P0x=P0(1); P0y=P0(2); P0z=P0(3); %Calculo de la velocidad y aceleracin : Mtodo vectorial T05=(((T01*T12)*T23)*T34)*T45; P=T05(1:3,4); T02=T01*T12; T03=T01*T12*T23; T04=T01*T12*T23*T34; w1=[0 0 1]'; w=horzcat(w1,T01(1:3,3),T02(1:3,3),T03(1:3,3),T04(1:3,3),T05(1:3,3)); qprima=diff([q1;q2;q3;q4;q5;q6]); W=w*qprima; u=P0-P; v=diff(P)+cross(W,u); ac=diff(diff(P))+cross(diff(W),u)+cross(W,cross(W,u)); L1=0.8; L2=0.7; L3=0.9; L4=0.8; t=[0:0.01:6]; P0=eval(P0); P0x=eval(P0x); P0y=eval(P0y); P0z=eval(P0z);
Pgina 9
Simulacin de un brazo Antropomrfico con Mueca Esfrica 6 GDL vx=v(1); vy=v(2); vz=v(3); v=eval(v); vx=eval(vx); vy=eval(vy); vz=eval(vz); acx=ac(1); acy=ac(2); acz=ac(3); ac=eval(ac); acx=eval(acx); acy=eval(acy); acz=eval(acz); %Figura 1:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: figure(1) % Graficas correspondientes a las posiciones respecto del tiempo subplot(331); plot(t,P0x); grid on; title('t VS P0x'); subplot(332); plot(t,P0y); title('t VS P0y'); grid on; subplot(333); plot(t,P0z); title('t VS P0z'); grid on; % Graficas correspondientes a las velocidades respecto del tiempo subplot(334); plot(t,vx,'r'); grid on; title('t VS vx'); subplot(335); plot(t,vy,'r'); title('t VS vy'); grid on; subplot(336); plot(t,vz,'r'); title('t VS vz'); grid on; %Graficas correspondientes a las acelearciones respecto del tiempo subplot(337); plot(t,acx,'m'); grid on; title('t VS ax'); subplot(338); plot(t,acy,'m'); title('t VS ay'); grid on; subplot(339); plot(t,acz,'m'); title('t VS az'); grid on; %Figura 2::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: figure(2) plot3(P0x,P0y,P0z,'b') xlabel('Px');ylabel('Py');zlabel('Pz'); title('trayectoria del punto P0 del robot');
Pgina 10
Simulacin de un brazo Antropomrfico con Mueca Esfrica 6 GDL grid on %Figura 3:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: figure(3) plot3(vx,vy,vz,'r') xlabel('vx');ylabel('vy');zlabel('vz'); title('velocidad del punto P0 del robot'); grid on %Figura 4:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: figure(4) plot3(acx,acy,acz,'m') xlabel('ax');ylabel('ay');zlabel('az'); title('aceleracin del punto P0 del robot'); grid on %Figura 5:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: figure(5) subplot(231) plot(t,eval(q1)) title('t vs q1') grid on xlabel('t');ylabel('q1'); subplot(232) plot(t,eval(q2)) title('t vs q2') grid on xlabel('t');ylabel('q2'); subplot(233) plot(t,eval(q3)) title('t vs q3') grid on xlabel('t');ylabel('q3'); subplot(234) plot(t,eval(q4)) title('t vs q4') grid on xlabel('t');ylabel('q4'); subplot(235) plot(t,eval(q5)) title('t vs q5') grid on xlabel('t');ylabel('q5'); subplot(236) plot(t,eval(q6)) title('t vs q6') grid on xlabel('t');ylabel('q6'); end
Pgina 11
A continuacin se obtienen los siguientes resultados, que se pueden comprobar ejecutando el archivo CinematicaDirecta.m en matlab:
Resultados
Fig. 3. Posicin, Velocidad y Aceleracin en funcin del tiempo, para la entrada de q que definimos
Pgina 12
Fig. 4. Trayectoria del punto P0 para del Brazo Antropomrfico con mueca esfrica de seis grados de libertad
Fig. 5. Velocidad del punto P0 para del Brazo Antropomrfico con mueca esfrica de seis grados de libertad
Pgina 13
Fig. 6. Aceleracin del punto P0 para del Brazo Antropomrfico con mueca esfrica de seis grados de libertad
Fig. 7. Entrada de los variables angulares q para del Brazo Antropomrfico con mueca esfrica de seis grados de libertad
Pgina 14
5 Simulador Cinemtico Se uso la herramienta solidworks, en el CD se adjunto el archivo en SolidWorks, para una mejor visualizacin.
Pgina 15
Conclusiones La para la localizacin de una posicin en el espacio, se emplea la cinemtica directa. Se desarrollo la simulacin cinemtica directa de un mecanismo de seis grados de libertad. Se desarrollo la simulacin cinemtica del mecanismo 6 GDL aplicando la metodologa aprendida en clase por D-H y ecuaciones vectoriales. El modelo cinemtico obtenido nos ayuda a tener una idea del movimiento del sistema. Para resolver el modelo cinemtico se uso la herramienta MatLab. Se simul el modelo en ambiente de SolidWorks, corroborando el comportamiento del mecanismo as como sus caractersticas mecnicas y cinemticas.
Pgina 16
Referencias [1] Paul, Richard P., Robot Manipulators: Mathematics, Programming, and Control, MIT Press, 1981. [2]Craig, John J., Introduction to Robotics: Mechanics and Control, Addison-Wesley, 1986.
Pgina 17