202468580 cinematica directa

10
Cinemática de Manipuladores Dr. Alejandro Aceves López Cinemática de Robots Un robot industrial se puede modelar como una cadena articulada abierta compuesta de cuerpos rígidos (eslabones) conectados en serie por articulaciones (de revolución o prismáticas) movidas por actuadores. Un extremo está fijo en la base mientras que el otro está libre y unido a una herramienta. La cinemática trata del estudio analítico del movimiento (posición, velocidad, aceleración) del robot con respecto a un sistema coordenado fijo como una función del tiempo sin considerar las fuerzas/momentos que originaron dicho movimiento. Un manipulador robótico consta de una secuencia de cuerpos rígidos, llamados eslabones (vínculos) o elementos conectados mediante articulaciones rotacionales o prismáticas. La base del robot se considera el elemento 0. Cada pareja articulacióneslabón se le conoce como grado de libertad. Un robot con n grados de libertad, tiene n pares de articulacioneseslabones. La base del robot no se considera parte del robot. Las articulacioneseslabones se enumeran desde la base del robot y hasta la muñeca. Para cada par articulacióneslabón se establece un sistema coordenado intermedio que se fija al eslabón y que se mueve conforme el eslabón se mueva. En la base del robot se establece el sistema coordenado de referencia {0} y en la muñeca del robot se establece el sistema coordenado móvil {n}. Los elementos/vínculos i e i1 están conectados por la articulación i. Problema de cinemática directa: Para un manipulador particular, dado un vector con los valores articulares (q 1 (t), q 2 (t), q n (t)) T y los parámetros geométricos de los n elementos (eslabones), determinar la posición y orientación del efector final con respecto a un sistema coordenado fijo de referencia. Problema de cinemática inversa: Dada una posición y orientación deseada del órgano efector y conocidos los parámetros geométricos de los eslabones con respecto a un sistema coordenado de referencia, saber si el robot puede alcanzar dicha posición y orientación. Y en caso de ser posible, conocer cuantas configuraciones diferentes del robot lo pueden lograr.

Upload: hause18

Post on 24-Nov-2015

18 views

Category:

Documents


1 download

TRANSCRIPT

  • CinemticadeManipuladores

    Dr.AlejandroAcevesLpez

    CinemticadeRobotsUn robot industrial se puede modelar como una cadenaarticulada abierta compuesta de cuerpos rgidos (eslabones)conectados en serie por articulaciones (de revolucin oprismticas) movidas por actuadores. Un extremo est fijo en labase mientras que el otro est libre y unido a una herramienta.

    La cinemtica trata del estudio analtico del movimiento(posicin, velocidad, aceleracin) del robot con respecto a unsistema coordenado fijo como una funcin del tiempo sinconsiderar las fuerzas/momentos que originaron dichomovimiento.

    Un manipulador robtico consta de una secuencia de cuerpos rgidos,llamados eslabones (vnculos) o elementos conectados mediantearticulaciones rotacionales o prismticas. La base del robot se considera elelemento 0.

    Cadaparejaarticulacineslabnseleconocecomogradodelibertad.

    Un robot con n grados de libertad, tiene n pares de articulacioneseslabones. La base del robot no se considera parte del robot.

    Las articulacioneseslabones se enumeran desde la base del robot y hastala mueca.

    Para cada par articulacineslabn se establece un sistema coordenadointermedio que se fija al eslabn y que se mueve conforme el eslabn semueva.

    En la base del robot se establece el sistema coordenado de referencia {0} yen la mueca del robot se establece el sistema coordenado mvil {n}.

    Los elementos/vnculos i e i1 estn conectados por la articulacin i.

    Problema de cinemtica directa: Para un manipuladorparticular, dado un vector con los valores articulares (q1(t), q2(t), qn(t))T y los parmetros geomtricos de los n elementos(eslabones), determinar la posicin y orientacin del efectorfinal con respecto a un sistema coordenado fijo de referencia.

    Problema de cinemtica inversa: Dada una posicin yorientacin deseada del rgano efector y conocidos losparmetros geomtricos de los eslabones con respecto a unsistema coordenado de referencia, saber si el robot puedealcanzar dicha posicin y orientacin. Y en caso de ser posible,conocer cuantas configuraciones diferentes del robot lo puedenlograr.

  • En 1955, los investigadores Denavit y Hartenberg propusieron un enfoquesistemtico y generalizado que utiliza matrices de transformacinhomognea 4 x 4 para describir la relacin espacial (traslacin/rotacin)entre dos elementos mecnicos adyacentes.

    CinemticaporlametodologadeDenavitHartenberg (DH)

    Mediante transformaciones secuenciales se puede expresar la posicin yorientacin del efector final con respecto a un sistema de coordenadas dereferencia fijo en la base del robot.

    En la literatura existen reportadas dos metodologas:

    1. El mtodo de DH (Anlisis por eslabones).2. El mtodo de DH modificado (Anlisis por articulaciones).

    MetodologadeDenavitHartenberg Modificada(DHm)

    Eje i-1 Eje i

    ai1

    Distanciadelvnculo

    Eje i-1 Eje i

    ai1

    ai

    diDesplazamientoentrevnculos

    Eje i-1 Eje i

    ai1

    ai

    i1

    di

    Torsindelvnculo

    Eje i-1 Eje i

    ai1

    ai

    i1

    idi

    nguloarticular

  • Eje i-1 Eje i

    ai1

    ai

    i1

    idi

    1iz

    1iy

    1ix

    iziy

    ix

    Sedefinendossistemascoordenados Ejemplo1.Considere dos vnculos con la geometra mostrada en la figura que se conectanen serie. Calcule la longitud del vnculo ai, la torsin del vnculo i y eldesplazamiento del vnculo di.

    Solucin: ai=7pulg;i=45 y di=2.5pulg.

    DefinicindetramasenlametodologadeDHm DefinicindetramasenlametodologadeDHm

    DefinicindeparmetrosenlametodologadeDHm Ejercicio1.ObtengalosparmetrosdeDenavitHartenberg delsiguientemanipulador.

  • Ejercicio1.

    i i id 1i 1ia 1 1 1 0d 0 0 0 0a 2 2 2 0d 1 0 1 1a L 3 3 3 0d 2 0 2 2a L

    Solucin:

    Ejercicio2.ObtengalosparmetrosdeDenavitHartenberg delsiguientemanipulador.Considresequelosvaloresarticulares{1,2,3}soncero.

    1x

    1y

    1z 3z

    3y

    3x

    2z2y

    2x

    0 0 1 1 1

    1 1 1 2 2 22 2

    2 2 2 3 3 3 3

    0; 0; ; 0;; ; ; 0;

    0; ; ; ;

    a da L da L d L

    L3

    Solucin:

    Ejercicio3.ObtengalosparmetrosdeDenavitHartenberg delsiguientemanipulador.

    Ejercicio3.Solucin:

    i i id 1i 1ia 1 1 1 0d 0 0 0 0a 2 2 0 2d 1 90 1 0a 3 3 3 2d L 2 0 2 0a

    Transformacintotal:i1iT

  • Ejercicio:ObtenerestamatrizconlaSymbolic toolbox deMatlab

    ProgramaenMATLAB

    function T=MatrizTransformacion(alfai_1,ai_1,qi,di)% La funcin regresa en T la expresin simblica de la matriz.T=[cos(qi) ,-sin(qi) ,0 , ai_1;sin(qi)*cos(alfai_1),cos(qi)*cos(alfai_1),-sin(alfai_1),-di*sin(alfai_1);sin(qi)*sin(alfai_1),cos(qi)*sin(alfai_1), cos(alfai_1), di*cos(alfai_1);

    0 ,0 ,0 , 1];T=simplify(T);

  • Ejercicio4.Escribirlasexpresionesdelastransformacioneshomogneasparacadavnculo.

    >> T01=MatrizTransformacion(0,0,sym(q1'),0)T01 =[ cos(q1), -sin(q1), 0, 0][ sin(q1), cos(q1), 0, 0][ 0, 0, 1, 0][ 0, 0, 0, 1]>> T12=MatrizTransformacion(sym(pi)/2,0,0,sym('d2'))T12 =[ 1, 0, 0, 0][ 0, 0, -1, -d2][ 0, 1, 0, 0][ 0, 0, 0, 1]>> T23=MatrizTransformacion(0,0,sym('q3'),sym('L2'))T23 =[ cos(q3), -sin(q3), 0, 0][ sin(q3), cos(q3), 0, 0][ 0, 0, 1, L2][ 0, 0, 0, 1]

    Ejercicio5. PUMA560

    1

    2

    3

    4

    6

    5

  • % Este programa muestra las matrices de transformacin para el % PUMA 560 que estn reportadas en la notas y en el libro.%% El nombre de este programa es:%% CinematricaPUMA560.m%T01=MatrizTransformacion( 0, 0, 0,sym('t1'))T12=MatrizTransformacion(-sym(pi)/2, 0, 0,sym('t2'))T23=MatrizTransformacion( 0,sym('a2'),sym('d3'),sym('t3'))T34=MatrizTransformacion(-sym(pi)/2,sym('a3'),sym('d4'),sym('t4'))T45=MatrizTransformacion( sym(pi)/2, 0, 0,sym('t5'))T56=MatrizTransformacion(-sym(pi)/2, 0, 0,sym('t6'))T46=simplify(T45*T56)T36=simplify(T34*T46)T13=simplify(T12*T23)T05=T01*T13*T34*T45collect(T01*T13*T36,[sin(sym('t1')), cos(sym('t1'))])

    11 12 130 0

    21 22 230 6 66

    31 32 33 [0,0,0] 10 0 0 1

    x

    y O

    z

    r r r Pr r r P R P

    Tr r r P

    0 606

    0 0 0 66 6

    0 0 6 06 6

    1 1

    1 [0,0,0] 1 1O

    O

    P PT

    P R P P

    P R P P

    11 1 23 4 5 6 4 6 23 5 6 1 4 5 6 4 6

    21 1 23 4 5 6 4 6 23 5 6 1 4 5 6 4 6

    31 23 4 5 6 4 6 23 5 6

    12 1 23 4 5 6 4 6 23 5 6 1 4 6 4 5 6

    22 1 23 4 5 6 4 6 23 5 6

    r c c c c c s s s s c s s c c c s

    r s c c c c s s s s c c s c c c s

    r s c c c s s c s c

    r c c c c s s c s s s s c c s c s

    r s c c c s s c s s s

    1 4 6 4 5 6

    32 23 4 5 6 4 6 23 5 6

    13 1 23 4 5 23 5 1 4 5

    23 1 23 4 5 23 5 1 4 5

    33 23 4 5 23 5

    1 2 2 3 23 4 23 3 1

    1 2 2 3 23 4 23 3 1

    3 23 2 2 4 23

    x

    y

    z

    c c c s c s

    r s c c s s c c s s

    r c c c s s c s s s

    r s c c s s c c s sr s c s c cP c a c a c d s d s

    P s a c a c d s d cP a s a s d c

    Ejercicio6. Yasukawa Motoman L3

    Elrobotsemuestraenlaposicin

    (0,90,90,90,0).

    Solucin:

  • Recordarqueelrobotestenlaposicin(0,90,90,90,0).

    Entonces:

    11 12 130 0

    21 22 230 5 55

    31 32 33 [0,0,0] 10 0 0 1

    x

    y O

    z

    r r r Pr r r P R P

    Tr r r P

    0 5

    05

    0 0 0 55 5

    0 0 5 05 5

    1 1

    1 [0,0,0] 1 1O

    O

    P PT

    P R P P

    P R P P

    % Este programa muestra las matrices de transformacin para el % Yasukawa Motoman L-3 que estn reportadas en la notas.%% El nombre de este programa es:%% CinematicaYasukawaMotomanL3.mT01=MatrizTransformacion( 0, 0,0,sym('t1'))T12=MatrizTransformacion(-sym(pi)/2, 0,0,sym('t2'))T23=MatrizTransformacion( 0,sym('L2'),0,sym('t3'))T34=MatrizTransformacion( 0,sym('L3'),0,sym('t4'))T45=MatrizTransformacion( sym(pi)/2, 0,0,sym('t5'))

    T05=T01*simplify(T12*T23*T34)*T45

    1 234 5 1 5 1 234 5 1 5 1 234 1 2 2 3 230 1 234 5 1 5 1 234 5 1 5 1 234 1 2 2 3 23

    5234 5 234 5 234 2 2 3 23

    0 0 0 1

    c c c s s c c s s c c s c L c L cs c c c s s c s c c s s s L c L c

    Ts c s s c L s L s

    234 2 3 4

    234 2 3 4

    cos

    sin

    c

    s

    Donde:

    L2

    L1

    Ejercicio7.UtilizandolametodologadeDHescribirlamatrizdetransformacintotaldelaherramientahastalabase.

  • RelacindeespaciosUn robot de n GDL tiene n variables articulares formando un vectorcolumna definido en el espacio articular.

    En general cada articulacin es accionada por un actuador, sinembargo, no siempre es el caso. Por ejemplo, dos motores accionanuna flecha, un actuador lineal acciona una articulacin rotacional. Estil entonces conocer la relacin entre la posicin del actuador y laposicin de la articulacin.

    EspaciodeactuadorLosmotoresyservomotoresseutilizanenROBOTICAparaproducirmovimientodepiezasyarticulacionesmecnicas.

    Servomotores

    SSC32ServoControllerhttp://www.lynxmotion.com/p395ssc32servocontroller.aspxhttp://www.robodacta.mx/index.php?dispatch=products.view&product_id=29885

    ServomotoresPorejemplo,siqueremosqueelservo0recibaunasealPWMde1500ms,sepodraenviarlasecuenciadebytessiguientes:

    enhexadecimal:0x84,0x00,0x70,0x2Eendecimal: 132, 0, 112, 46

    ServomotoresEn el caso ms sencillo, la relacin Espacio de actuador vs.Espacio articular es una funcin lineal que se puede conocer si serealizar una tabla y usar ajuste de curva (Ej. Mnimos cuadrados).

    Valoractuador(x) q1 [] q2 [] qn []0x0000x001

    0xFFF

    i i i iq f x m x b

    MotoresdeCD

    SimpleHighPowerMotorController18v25

  • MotoresdeCDProtocolocompactoElpaquetedeprotocolodecomandoscompactoessimplemente:

    Porejemplo,siqueremosestablecerlavelocidaddelmotora3200(altavelocidad)haciaeladelante,podraenviarlasecuenciadebytessiguientes:

    Hexagonaldelanotacin:0x85,0x00,0x64Notacindecimal:133,0,100

    El0x85byteeselcomandoAjustedelmotorhaciaadelante,ylosdosltimosbytescontienenlavelocidad.

    ActuadoresDynamixel

    GoalPositionItisapositionvalueofdestination.0to1023(0x3FF)isavailable. Theunitis0.29degree.IfGoalPositionisoutoftherange,AngleLimitErrorBit(Bit1)ofStatusPacketisreturnedas1andAlarmistriggeredassetinAlarmLED/Shutdown.