16
Departamento de Ingeniería de Software y Sistemas Informáticos Ingeniería Técnica en Informática de Sistemas Ingeniería Técnica en Informática de Gestión ASIGNATURA: ROBÓTICA Curso 2009/2010 Soluciones a los PROBLEMAS DE EXAMEN del CURSO 09/10 Versión 3 (28-1-2011) Preparados por: Carlos Cerrada Somolinos Juan José Escribano Ródenas Profesores de la asignatura

Soluciones Exam 2009 2010

Embed Size (px)

DESCRIPTION

robotica

Citation preview

Departamento de Ingeniera de Software y Sistemas Informticos Ingeniera Tcnica en Informtica de Sistemas Ingeniera Tcnica en Informtica de Gestin ASIGNATURA: ROBTICA Curso 2009/2010 Soluciones a losPROBLEMAS DE EXAMEN del CURSO 09/10 Versin 3 (28-1-2011) Preparados por: Carlos Cerrada Somolinos Juan Jos Escribano Rdenas Profesores de la asignatura Soluciones a los PROBLEMAS DE EXAMEN del CURSO 09/101 Enunciado del PROBLEMA de Enero de 2010 Seaunrobotcontresvariablesarticulares(q1,q2,q3),correspondienteslasdos primerasasendasrotacionesylaterceraaunatraslacin.Suestructurageomtricaviene representada por la siguiente tabla de parmetros DH: Articulacinda 1q1 l10/2 2q2 0 l2-/2 30q300 Se pide: 1)Dibujar un esquema del robot donde se representen sus eslabones y articulaciones, y se localicendebidamentetodoslossistemasdereferencianecesarios,deacuerdoconel significado de los parmetros de la tabla en el algoritmo de DH. 2)Obtener las correspondientes matrices intermedias i-1Ai, as como la matriz T. Deducir el modelo cinemtico directo para este robot. 3)Resolver el Problema Cinemtico Inverso para este robot (se recomienda por mtodos geomtricos). 4)Obtener la Jacobiana analtica para esta robot. Soluciones a los PROBLEMAS DE EXAMEN del CURSO 09/102 Solucin al PROBLEMA de Enero de 2010 1) SetrataderepresentarcadaunodelosparmetrosdeDHparatodoslossistemas intermediosentreelsistemaS0,colocadoarbitrariamente,yelS3queestarenel extremo del ltimo eslabn. Como se sabe, los parmetros son longitudes y ngulos, queesloquehabrquedibujarencadacaso.Finalmentepodemosobteneruna representacin como la de la Figura 1 siguiente. Como se aprecia, se trata de un robot planar,esdecir,unoenelquetodasuestructurasemantienesiempreenunplano. EsteplanoeselformadoporelejeZ0yelejeOrrepresentadoenlaFigura1.El esquema del robot en el mencionado plano se aprecia en la Figura 2. Fig. 1Fig. 2 2) La forma general de las matrices de eslabn i-1Ai es la siguiente: Sustituyendo los respectivos valores de la tabla para cada una de las articulaciones se tiene: l1 q2l2q3r pz-l1 d

Y3 X3 Y2 Y1 X1Z1Z0 Z2 X2 Z3Ol2C2 q3S2q1

l1

q2

l2q3 r

X3 Y2 Y1 X1 Z1

(px,py,pz) Z0

Y0 X0 Z2 X2 Y3 Z3 (px,py,0) O =1 0 0 001i i ii i i i i i ii i i i i i iiid C SS a C S C C SC a S S S C CA ===1 0 0 01 0 00 0 1 00 0 0 11 0 0 00 0 1 0001 0 0 00 1 00 00 03322 2 2 22 2 2 22111 11 110qAS l C SC l S CAlC SS CASoluciones a los PROBLEMAS DE EXAMEN del CURSO 09/103 Multiplicando estas 3 matrices obtenemos la matriz T: Como por otro lado tenemos que T = [n, o, a, p], podemos poner: de donde se puede deducir inmediatamente la expresin para la posicin del modelo cinemtico directo para este robot. Adems, manipulando un poco las ecuaciones de lostrminos(1,4)y(2,4)sepuedenexpresarenfuncinder.Conrespectoala orientacin, y observando la Figura 1, se puede expresar de forma directa utilizando ngulos de Euler WVW: una primera rotacin de un ngulo =q1en torno al eje OZ fijo, seguido de una segunda rotacin de un ngulo =-q2 en torno al eje OY mvil, y porltimounatercerarotacindeunngulo=0entornoalejeOZmvil.En resumen: (1) NOTA: en este caso la misma expresin de [n, o, a] se puede interpretar en funcin de los ngulos de Euler XYZ: una primera rotacin de un ngulo =0 en torno al eje OX fijo, seguido de una segunda rotacin de un ngulo =-q2 en torno al eje OY fijo, y por ltimo una tercera rotacin de un ngulo =q1 en torno al eje OZ fijo. 3) Porconsideracionesgeomtricas,obienanalizandolasdosprimerasecuacionesde (1),sepuedeencontrardirectamentelasiguienteexpresinparalaprimera articulacin del modelo cinemtico inverso de este robot: Ensegundolugar,observandolaFigura2vemosqueelsegmentomarcadocomod eslahipotenusaendostringulosrectngulos,esdecirquesecumplenlasdos siguientes relaciones: + + + + = =1 0 0 001 2 2 3 2 2 22 2 1 3 2 1 2 1 1 2 12 2 1 3 2 1 2 1 1 2 1322110l l S q C C Sl C S q S S S S C C Sl C C q S C S C S C CA A A T=+ + + + =1 0 0 0 1 0 0 001 2 2 3 2 2 22 2 1 3 2 1 2 1 1 2 12 2 1 3 2 1 2 1 1 2 1z z z zy y y yx x x xp a o np a o np a o nl l S q C C Sl C S q S S S S C C Sl C C q S C S C S C CT[ ] ) ( ) () () (2 12 3 2 2 11 1 2 3 2 21 1 2 3 2 2q Roty q Rotz a o nC q S l l prS S S q C l prC C S q C l pzyx =+ + == == ====xyyxpparctg qrS prC p111212 2 212 2222 2323222) ( ) ( l p p p l p r dl d q q l dz y x z + + = + = = + =Soluciones a los PROBLEMAS DE EXAMEN del CURSO 09/104 De donde se obtiene la siguiente expresin para la tercera articulacin de este robot: Finalmente, fijndonos en estos dos mismos tringulos rectngulos y en los ngulos y que aparecen representados en la Figura 2, tenemos: De donde se extrae: Enresumen,lasolucinalPCIdeesterobotvieneexpresadaporlassiguientes ecuaciones: 4) ParaobtenerlaJacobianaanalticapartimosdelmodelocinemticodirecto.En nuestro caso, y dado que para expresar la evolucin de la orientacin hemos utilizado los ngulos de Euler WVW, este modelo se vuelve a reescribir de la siguiente forma: Por definicin, la Jacobiana analtica relaciona las velocidades de la localizacin del extremo del roboty las velocidades articulares, en este caso: 22212 23) ( l l p p p qz y x + + = = + ===2 22) cos() cos(q qdrdl + + + ++= =22212 2222212 22 2222) (arccos) (arccosarccos arccosl l p p pll l p p pp pqdldrqz y x z y xy x22212 2322212 2222212 22 221) () (arccos) (arccosl l p p p ql l p p pll l p p pp pqpparctg qz y xz y x z y xy xxy + + = + + + ++==) , , ( 0) , , () , , () , , () , , ( ) () , , ( ) (3 2 13 2 1 23 2 1 13 2 1 2 3 2 2 13 2 1 1 2 3 2 23 2 1 1 2 3 2 2q q q fq q q f qq q q f qq q q f C q S l l pq q q f S S q C l pq q q f C S q C l pz zy yx x= == == == + + == == =Soluciones a los PROBLEMAS DE EXAMEN del CURSO 09/105 Luegoslohayquedesarrollarlasderivadasparciales,llegandoalasiguiente expresin para la Jacobiana analtica pedida: ==3213 2 13 2 13 2 13 2 13 2 13 2 1321qqqqfqfqfqfqfqfqfqfqfqfqfqfqfqfqfqfqfqfqqqJzyxz z zy y yx x xa&&&&&&&&&&&& =0 0 00 1 00 0 10) ( ) () ( ) (2 2 3 2 22 1 2 3 2 2 1 2 3 2 2 12 1 2 3 2 2 1 2 3 2 2 1C S q C lS S C q S l S S q C l CS C C q S l C S q C l SJaSoluciones a los PROBLEMAS DE EXAMEN del CURSO 09/106 Enunciado del PROBLEMA de Febrero de 2010 Lafigurarepresentalaestructuradeunrobotplanodedosgradosdelibertad, caracterizadosporlasvariablesarticulares(q1,q2).Ambasvariablesarticularessonde traslacin. El extremo del robot es el punto Pde coordenadas x e y.El punto A est obligadoamoversesobreeleslabnOP.EleslabnBAsemantieneentodomomento perpendicular al eje X0, aunque su longitud es variable (q1). Se pide: 1)ResolverelProblemaCinemticoDirectoparaesterobot,esdecir,obtener x=f1(q1,q2); y=f2(q1,q2). (NOTA: se aconseja por mtodos geomtricos).2)ResolverelProblemaCinemticoInversoparaesterobot,esdecir,obtener q1=g1(x,y); q2=g2(x,y). (NOTA: se aconseja tambin por mtodos geomtricos).3)Calcular la posicin del extremo para los siguientes valores: L = 1m, q1 =1m y q2 = 2m. 4)Calcularuninterpoladorlinealencoordenadasarticularesparageneraren coordenadas cartesianas, un arco de circunferencia de centro el origen, de radio 5m, quecomienceen0rad(enelinstante0s)ytermineen/4rad(instante3s). Considrese L = 3m. Solucin del PROBLEMA de Febrero de 2010 Pginas siguientes NOTA: La solucin propuesta ha sido desarrollada por el alumno Melitn Pablo Mangu y revisada por el equipo docente de la asignatura. Aq2 L OY0 X0 q1 B P(x,y) ROBO TICA - FEBRERO (2 SEMANA) DE 2010 MELITN PABLO MANGU (PROPUESTA DE SOLUCIN) 1) PROBLEMA CINEMTICO DIRECTO

(

) (

)

(

)

(

) q1 B O A (, ) q2 Y0 X0 L Soluciones a los PROBLEMAS DE EXAMEN del CURSO 09/1072) PROBLEMA CINEMTICO INVERSO

3) POSICIN DEL EXTREMO PARA ,

,

Se sustituye en las ecuaciones del problema cinemtico directo. Tememos que:

4) CALCULAR UN INTERPOLADOR LINEAL Es mejor expresar la circunferencia en coordenadas polares: La circunferencia de centro el origen y radio 5 tiene como ecuaciones: () () para(

,

) (, ) para (

,

) (

,

) ()(

)

Nos han dicho que:

por tanto, T=3 Calculamos los valores articulares para los puntos anteriores: (,)(

,

)

;

(

)

(

)

Sustituimos en la frmula del interpolador lineal para cada articulacin:

()( )

()

()( )

() /4 Soluciones a los PROBLEMAS DE EXAMEN del CURSO 09/108Soluciones a los PROBLEMAS DE EXAMEN del CURSO 09/109 Enunciado del PROBLEMA de Septiembre de 2010, Original Seaunrobotcontresvariablesarticulares(q1,q2,q3),correspondientesatresrotaciones. Su estructura geomtrica viene representada por la siguiente tabla de parmetros DH: Articulacinda 1q1 l10/2 2q2 0 l20 3q30l30 Se pide: 1)Dibujar un esquema del robot donde se representen sus eslabones y articulaciones, y se localicendebidamentetodoslossistemasdereferencianecesarios,deacuerdoconel significado de los parmetros de la tabla en el algoritmo de DH. 2)Obtener las correspondientes matrices intermedias i-1Ai, as como la matriz T. Deducir elmodelocinemticodirectoparaesterobot.Comprobarlaconfiguracinadoptada por este robot para las ternas de valores de (q1, q2, q3) siguientes: (0,0,0), (/2, /2, ). 3)Resolver el Problema Cinemtico Inverso para este robot (se recomienda por mtodos geomtricos). Aplicarlo al caso de que el extremo del robot se encuentre en la posicin (x, y, z) = (0, l2, l1+l3). 4)Obtener la Jacobiana analtica para este robot. Calcular su valor para las dos ternas de valores del apartado 2). Soluciones a los PROBLEMAS DE EXAMEN del CURSO 09/1010 Solucin al PROBLEMA de Septiembre de 2010, Original 1) SetrataderepresentarcadaunodelosparmetrosdeDHparatodoslossistemas intermediosentreelsistemaS0,colocadoarbitrariamente,yelS3queestarenel extremo del ltimo eslabn. Como se sabe, los parmetros son longitudes y ngulos, queesloquehabrquedibujarencadacaso.Finalmentepodemosobteneruna representacin como la de la Figura 1. Como se aprecia, se trata de un robot planar, esdecir,unoenelquetodasuestructurasemantienesiempreenunplano.Este plano es el formado por el eje Z0 y el eje Or representado en la Figura 1. El esquema del robot en el mencionado plano se aprecia en la Figura 2. Por otro lado, mencionar que se trata del robot descrito en el Ejercicio 4.2 del texto base, en cuya solucin aparece tambin esta representacin. Figura 1 q1

l1q2l2rX3Y2Y1X1Z1 (px,py,pz) Z0

Y0 X0 Z2X2Y3Z3O q3l3(px,py,0)Soluciones a los PROBLEMAS DE EXAMEN del CURSO 09/1011 Figura 2 2) La forma general de las matrices de eslabn i-1Ai es la siguiente: Sustituyendo los respectivos valores de la tabla para cada una de las articulaciones se tiene: Multiplicando estas 3 matrices obtenemos la matriz T: (1) Como por otro lado tenemos que T = [n, o, a, p], podemos poner: de donde se puede deducir inmediatamente la expresin para la posicin del modelo cinemtico directo para este robot. Adems, manipulando un poco las ecuaciones de =1 0 0 001i i ii i i i i i ii i i i i i iiid C SS a C S C C SC a S S S C CA = ==1 0 0 00 1 0 0001 0 0 00 1 0 0001 0 0 00 1 00 00 03 3 3 33 3 3 332 2 2 2 22 2 2 22111 11 110S l C SC l S CAS l C SC l S CAlC SS CA+ + + + = =1 0 0 001 2 2 23 3 23 232 1 2 23 1 3 1 23 1 23 12 1 2 23 1 3 1 23 1 23 1322110l S l S l C SC S l C S l C S S C SC C l C C l S S C C CA A A T=+ + + + =1 0 0 0 1 0 0 001 2 2 23 3 23 232 1 2 23 1 3 1 23 1 23 12 1 2 23 1 3 1 23 1 23 1z z z zy y y yx x x xp a o np a o np a o nl S l S l C SC S l C S l C S S C SC C l C C l S S C C CTl1q2l2q3r pz-l1 dZ2Y1 X1Z1 Z0 Y2X2 Z3 O l2C2l3C23 l3X3l2S2 l3S23 Y3Soluciones a los PROBLEMAS DE EXAMEN del CURSO 09/1012 los trminos (1,4) y (2,4) se pueden expresar de forma ms compacta y en funcin de r.Con respecto a la orientacin, y observando la Figura 1, se puede expresar de forma directautilizandongulosdeEulerXYZ:unaprimerarotacindeunngulo=/2en torno al eje OX fijo, seguido de una segunda rotacin de un ngulo =-(q2+q3) en torno al eje OY fijo, y por ltimo una tercera rotacin de un ngulo =q1 en torno al eje OZ fijo. En resumen: (2) NOTA: en este caso la misma expresin de [n, o, a] se puede interpretar en funcindelosngulosdeEulerWUW:unaprimerarotacindeunngulo =q1 en torno al eje OZ fijo, seguido de una segunda rotacin de un ngulo =/2entornoalejeOUmvil,yporltimounatercerarotacindeun ngulo = (q2+q3) en torno al eje OW mvil. Sepuedeahoracomprobarlaconfiguracinparalosvaloresparticularespedidos sustituyndolos en la ecuacin (1) para cada caso. Caso 2.1: (q1, q2, q3) = (0,0,0) = == == ====0 ; 10 ; 10 ; 100023 232 21 1321S CS CS Cqqq Sustituyendo en (1) queda: +=1 0 0 00 1 00 1 0 00 0 112 3ll lT Caso 2.2: (q1, q2, q3) = (/2, /2, ) = == == ====1 ; 01 ; 01 ; 02 /2 /23 232 21 1321S CS CS Cqqq Sustituyendo en (1) queda: + + =1 0 0 00 0 10 0 1 00 1 0 01 2 3l l lT 3) Por consideraciones geomtricas (observando la Figura 1), o bien analizando las dos primerasecuacionesde(2),sepuedeencontrardirectamentelasiguienteexpresin para la primera articulacin del modelo cinemtico inverso de este robot: Ensegundolugar,observandolaFigura2,sepuedeaplicarel [ ] ) 2 / ( )) ( ( ) () () (3 2 11 2 2 23 31 1 2 2 23 3 2 1 2 23 1 31 1 2 2 23 3 2 1 2 23 1 3 Rotx q q Roty q Rotz a o nl S l S l prS S C l C l C S l C S l prC C C l C l C C l C C l pzyx + =+ + == + = + == + = + ====xyyxpparctg qrS prC p111Soluciones a los PROBLEMAS DE EXAMEN del CURSO 09/1013 teoremadelcosenoaltringulo(norectngulo)formadoporelsegmentomarcado comodylosdoseslabonesl1yl2delrobot.Previamentesepuedenaplicarlas siguientes consideraciones geomtricas a partir de la misma Figura 2 y tambin de la Figura 1: + += + + = + + = + =+ =3 22322212 233 3 223222212 2 212 22 2 22) (arccoscos 2) ( ) (l ll l l p p pqq l l l l dl p p p l p r dp p rz y x z y x zy x Por ltimo, el clculo del ngulo q2 se puede hacer por diferencia de los ngulos y utilizados en la Figura 2. Es decir: = + =2 2q q Peroparadeterminarestosnguloshayquehaceralgunaconsideracingeomtrica msreferidaaestamismaFigura2.Paraelngulonosfijamoseneltringulo rectngulo de lados r y (pz l1). Es decir: += = ==2 21 11) cos() sin(y xz zzp pl parctgrl parctgdrd l p YparaelngulonosfijamoseneltringulorectngulomarcadoenlaFigura2 cuya hipotenusa es l3: += + = =) cos() sin() cos( ) cos() sin( ) sin(3 3 23 33 3 23 3q l lq larctgq l l dq l d En resumen: (3) SepuedeahoraresolverelPCIdeesterobotparalosvaloresparticularespedidos sustituyndolos en la ecuacin (3): Caso 3.1: (x, y, z) = (0, l2, l1+l3) 2 0021 22= = = ==larctg q l rl ppyx ++= + +==) cos() sin(2) (arccos3 3 23 32 2123 22322212 231q l lq larctgp pl parctg ql ll l l p p pqpparctg qy xzz y xxySoluciones a los PROBLEMAS DE EXAMEN del CURSO 09/1014 ( )20 arccos20arccos2) (arccos3 2232223223 22322212 23= = + += + +=l ll l l ll ll l l p p pqz y x 0) cos() sin(23233 3 23 32 212==++=llarctgllarctgq l lq larctgp pl parctg qy xz Por tanto: =2, 0 ,2) , , (3 2 1 q q q 4) ParaobtenerlaJacobianaanalticapartimosdelmodelocinemticodirecto.En nuestro caso, y dado que para expresar la evolucin de la orientacin hemos utilizado los ngulos de Euler XYZ, este modelo se vuelve a reescribir de la siguiente forma: Por definicin, la Jacobiana analtica relaciona las velocidades de la localizacin del extremo del roboty las velocidades articulares, en este caso: Luegoslohayquedesarrollarlasderivadasparciales,llegandoalasiguiente expresin para la Jacobiana analtica pedida: (4) ) , , ( 2 /) , , ( ) () , , () , , () , , ( ) () , , ( ) (3 2 13 2 1 3 23 2 1 13 2 1 1 2 2 23 33 2 1 1 2 2 23 33 2 1 1 2 2 23 3q q q fq q q f q qq q q f qq q q f l S l S l pq q q f S C l C l pq q q f C C l C l pz zy yx x = == + == == + + == + == + ===3213 2 13 2 13 2 13 2 13 2 13 2 1321qqqqfqfqfqfqfqfqfqfqfqfqfqfqfqfqfqfqfqfqqqJzyxz z zy y yx x xa&&&&&&&&&&&& + + + + + =0 0 01 1 00 0 10) ( ) ( ) () ( ) ( ) (23 3 2 2 23 31 23 3 1 2 2 23 3 1 2 2 23 31 23 3 1 2 2 23 3 1 2 2 23 3C l C l C lS S l S S l S l C C l C lC S l C S l S l S C l C lJaSoluciones a los PROBLEMAS DE EXAMEN del CURSO 09/1015 Sepuedeahoracalcularparalasternasdevaloresparticularespedidos sustituyndolos en la ecuacin (4) para cada caso. Caso 4.1: (q1, q2, q3) = (0,0,0) = == == ====0 ; 10 ; 10 ; 100023 232 21 1321S CS CS Cqqq Sustituyendo en (4) queda: ++=0 0 01 1 00 0 100 0 ) (0 0 03 2 32 3l l ll lJa Caso 4.2: (q1, q2, q3) = (/2, /2, ) = == == ====1 ; 01 ; 01 ; 02 /2 /23 232 21 1321S CS CS Cqqq Sustituyendo en (1) queda: =0 0 01 1 00 0 10 0 0) ( 00 0 03 2 3l l lJa