Cinemática Directa.
El problema cinematico directo.Se utiliza fundamentalmente el álgebra vectorial y matricial para representar y describir la localización de un objeto en el espacio tridimensional con respecto aun sistema de referencia fijo. Dado que un robot puede considerar com una cadena cinemática formada por objetos rígidos o eslabones unidos entre sí mediante articulaciones, se puede establecer un sistema de referencia fijo situado en la base del robot y describir la localización de cada uno de los eslabones con respecto a dicho sistema de referencia. De esta forma, el problema cinematico directo se reduce a encontrar una matriz homogénea de transformación T que relacione la posición y orientación del extremo del robot respecto del sistema de referencia fijo situado en la base del mismo. Esta matriz T será función de las coordenadas articulares.
El mando adaptable de un manipulador remoto.
Un sistema de mando de robot causa a un manipulador remoto, seguir una trayectoria de referencia estrechamente en un marco de referencia Cartesiano en el espacio de trabajo, sin el recurso a un modelo matemático intensivo de dinámica del robot y sin el conocimiento del robot y parámetros de carga.
El sistema, derivado de la teoría lineal multivariable, utiliza a los manipuladores delanteros relativamente simples y controladores de retroalimentacion con modelo y adaptable de referencia del mando. El sistema requiere dimensiones de posición y velocidad del extremo manipulador del efector.
Éstos pueden obtenerse directamente de los sensores ópticos o por cálculo que utiliza las relaciones de la cinemática conocidas entre el manipulador modelado y el extremo de la juntura de la posición del efector.
Derivando las ecuaciones de control, las ecuaciones diferenciales no lineales acopladas a la dinámica del robot, expresan primero la forma general de la cinematica, entonces la linealizacion por cálculo de perturbaciones sobre una especifica operacion del punto en las coordenadas Cartesianas del extremo del efector.
El modelo matemático resultante es un sistema multivariable lineal de orden de 2n (donde n = es el número de coordenadas espaciales independientes del manipulador) esto expresa la relación entre los incrementos del actuador de n voltajes de control (las entradas) y los incrementos de las coordenadas de n, la trayectoria de extremo del efector (los rendimientos).
La trayectoria del efector incrementa la referencia, la trayectoria se incrementa: esto requiere la retroalimentacion independiente y controladores de manipulación.
Para este propósito, le basta aplicar posición y retroalimentacion de velocidad a través de la matrtiz de n x n posición y velocidad, la matriz de ganancia de retroalimentacion.
El sistema, derivado de la teoría lineal multivariable, utiliza a los manipuladores delanteros relativamente simples y controladores de retroalimentacion con modelo y adaptable de referencia del mando. El sistema requiere dimensiones de posición y velocidad del extremo manipulador del efector.
Éstos pueden obtenerse directamente de los sensores ópticos o por cálculo que utiliza las relaciones de la cinemática conocidas entre el manipulador modelado y el extremo de la juntura de la posición del efector.
Derivando las ecuaciones de control, las ecuaciones diferenciales no lineales acopladas a la dinámica del robot, expresan primero la forma general de la cinematica, entonces la linealizacion por cálculo de perturbaciones sobre una especifica operacion del punto en las coordenadas Cartesianas del extremo del efector.
El modelo matemático resultante es un sistema multivariable lineal de orden de 2n (donde n = es el número de coordenadas espaciales independientes del manipulador) esto expresa la relación entre los incrementos del actuador de n voltajes de control (las entradas) y los incrementos de las coordenadas de n, la trayectoria de extremo del efector (los rendimientos).
La trayectoria del efector incrementa la referencia, la trayectoria se incrementa: esto requiere la retroalimentacion independiente y controladores de manipulación.
Para este propósito, le basta aplicar posición y retroalimentacion de velocidad a través de la matrtiz de n x n posición y velocidad, la matriz de ganancia de retroalimentacion.
Resolución del problema cinematico directo mediante matrices de transformación homogénea.
La resolución del problema cinematico directo consiste en encontrar las relaciones que permiten conocer la localización espacial del extremo del robot a partir de los valores de sus coordenadas articulares.
Así, si se han escogido coordenadas cartesianas y ángulos de Euler para representar la posición y orientación del extremo de un robot de seis grados de libertad, la solución al problema cinematico directo vendrá dada por las relaciones:
x = Fx ( q1,q2,q3,q4,q5,q6 )
y = Fy ( q1,q2,q3,q4,q5,q6 )
z = Fz ( q1,q2,q3,q4,q5,q6 )a = Fa ( q1,q2,q3,q4,q5,q6 )
ß = Fß ( q1,q2,q3,q4,q5,q6 )g = Fg ( q1,q2,q3,q4,q5,q6 )
y = Fy ( q1,q2,q3,q4,q5,q6 )
z = Fz ( q1,q2,q3,q4,q5,q6 )a = Fa ( q1,q2,q3,q4,q5,q6 )
ß = Fß ( q1,q2,q3,q4,q5,q6 )g = Fg ( q1,q2,q3,q4,q5,q6 )
La obtención de estas relaciones no es en general complicada, siendo incluso en ciertos casos (robots de pocos grados de libertad) fácil de encontrar mediante simples consideraciones geométricas. Por ejemplo, para el caso de un robot con 2 grados de libertad es fácil comprobar que:
X = I1 cosq1 + I2 cos( q1 + q2 )
y = I1 cosq1 + I2 cos( q1 + q2 )
y = I1 cosq1 + I2 cos( q1 + q2 )
Para robots de mas grados de libertad puede plantearse un método sistemático basado en la utilización de las matrices de transformación homogénea.
En general, un robot de n grados de libertad esta formado por n eslabones unidos por n articulaciones, de forma que cada par articulación-eslabón constituye un grado de libertad.
A cada eslabón se le puede asociar un sistema de referencia solidario a el y, utilizando las transformaciones homogéneas, es posible representar las rotaciones y traslaciones relativas entre los distintos eslabones que componen el robot.
En general, un robot de n grados de libertad esta formado por n eslabones unidos por n articulaciones, de forma que cada par articulación-eslabón constituye un grado de libertad.
A cada eslabón se le puede asociar un sistema de referencia solidario a el y, utilizando las transformaciones homogéneas, es posible representar las rotaciones y traslaciones relativas entre los distintos eslabones que componen el robot.
Normalmente, la matriz de transformación homogénea que representa la posición y orientación relativa entre los sistemas asociados a dos eslabones consecutivos del robot se le suele denominar ( i-1)1/Ai.
Así pues, 0Ai describe la posición y orientación del sistema de referencia solidario al primer eslabón con respecto al sistema de referencia solidario a la base, 1A2 describe la posición y orientación del segundo eslabón respecto del primero, etc.
Del mismo modo, denominando 0Ak a las matrices resultantes del producto de las matrices ( i-1)Ai con i desde 1 hasta k, se puede representar de forma total o parcial la cadena cinemática que forma el robot.
Así, por ejemplo, la posición y orientación del sistema solidario con el segundo eslabón del robot con respecto al sistema de coordenadas de la base se puede expresar mediante la matriz 0A2:
Así pues, 0Ai describe la posición y orientación del sistema de referencia solidario al primer eslabón con respecto al sistema de referencia solidario a la base, 1A2 describe la posición y orientación del segundo eslabón respecto del primero, etc.
Del mismo modo, denominando 0Ak a las matrices resultantes del producto de las matrices ( i-1)Ai con i desde 1 hasta k, se puede representar de forma total o parcial la cadena cinemática que forma el robot.
Así, por ejemplo, la posición y orientación del sistema solidario con el segundo eslabón del robot con respecto al sistema de coordenadas de la base se puede expresar mediante la matriz 0A2:
0A2 = 0A1 ( 1A2 )
De manera análoga, la matriz 0A3 representa la localización del sistema del tercer eslabón:
0A3 = 0A1 ( 1A2 )( 2A3 )
Cuando se consideran todos los grados de libertad, a la matriz 0An se le suele denominar T. Así, dado un robot de seis grados de libertad, se tiene que la posición y orientación del eslabón final vendrá dada por la matriz T:
T = 0A6 = 0A1 ( 1A2 )( 2A3 )( 3A4 )( 4A5 )( 5A6 )
Aunque para descubrir la relación que existe entre dos elementos contiguos se puede hacer uso de cualquier sistema de referencia ligado a cada elemento, la forma habitual que se suele utilizar en robótica es la representación de Denavit-Hartenberg.
Denavit-Hartenberg propusieron en 1955 un método matricial que permite establecer de manera sistemática un sistema de coordenadas (Si) ligado a cada eslabón i de una cadena articulada, pudiéndose determinar a continuación las ecuaciones cinemáticas de la cadena completa.
Según la representación D-H, escogiendo adecuadamente los sistemas de coordenadas asociados para cada eslabón, será posible pasar de uno al siguiente mediante 4 transformaciones básicas que dependen exclusivamente de las características geométricas del eslabón.
Estas transformaciones básicas consisten en una sucesión de rotaciones y traslaciones que permitan relacionar el sistema de referencia del elemento i con el sistema del elemento i-1. Las transformaciones en cuestión son las siguientes:
Estas transformaciones básicas consisten en una sucesión de rotaciones y traslaciones que permitan relacionar el sistema de referencia del elemento i con el sistema del elemento i-1. Las transformaciones en cuestión son las siguientes:
- Rotación alrededor del eje Zi-1 un ángulo qi.
- Traslación a lo largo de Zi-1 una distancia di; vector di ( 0,0,di ).
- Traslación a lo largo de Xi una distancia ai; vector ai ( 0,0,ai ).
- Rotación alrededor del eje Xi, un ángulo ai.
Dado que el producto de matrices no es conmutativo, las transformaciones se han de realizar en el orden indicado. De este modo se tiene que:
i-1A i = T( z,qi ) T( 0,0,di ) T ( ai,0,0 ) T( x,ai )
Y realizando el producto de matrices:
donde qi, ai, di, ai, son los parámetros D-H del eslabón i. De este modo, basta con identificar los parámetros qi, ai, di, ai , para obtener matrices A y relacionar así todos y cada uno de los eslabones del robot.
Como se ha indicado, para que la matriz i-1Ai, relacione los sistemas (Si) y (Si-1), es necesario que los sistemas se hayan escogido de acuerdo a unas determinadas normas. Estas, junto con la definición de los 4 parámetros de Denavit-Hartenberg, conforman el siguiente algoritmo para la resolución del problema cinematico directo.
Como se ha indicado, para que la matriz i-1Ai, relacione los sistemas (Si) y (Si-1), es necesario que los sistemas se hayan escogido de acuerdo a unas determinadas normas. Estas, junto con la definición de los 4 parámetros de Denavit-Hartenberg, conforman el siguiente algoritmo para la resolución del problema cinematico directo.
Algoritmo de Denavit- Hartenberg para la obtención del modelo.
DH1.Numerar los eslabones comenzando con 1 (primer eslabón móvil dela cadena) y acabando con n (ultimo eslabón móvil). Se numerara como eslabón 0 a la base fija del robot.
DH2.Numerar cada articulación comenzando por 1 (la correspondiente al primer grado de libertad y acabando en n).
DH3.Localizar el eje de cada articulación. Si esta es rotativa, el eje será su propio eje de giro. Si es prismática, será el eje a lo largo del cual se produce el desplazamiento.
DH4.Para i de 0 a n-1, situar el eje Zi, sobre el eje de la articulación i+1.
DH5.Situar el origen del sistema de la base (S0) en cualquier punto del eje Z0. Los ejes X0 e Y0 se situaran dé modo que formen un sistema dextrógiro con Z0.
DH6.Para i de 1 a n-1, situar el sistema (Si) (solidario al eslabón i) en la intersección del eje Zi con la línea normal común a Zi-1 y Zi. Si ambos ejes se cortasen se situaría (Si) en el punto de corte. Si fuesen paralelos (Si) se situaría en la articulación i+1.
DH7.Situar Xi en la línea normal común a Zi-1 y Zi.
DH8.Situar Yi de modo que forme un sistema dextrógiro con Xi y Zi.
DH9.Situar el sistema (Sn) en el extremo del robot de modo que Zn coincida con la dirección de Zn-1 y Xn sea normal a Zn-1 y Zn.
DH10.Obtener Øi como el ángulo que hay que girar en torno a Zi-1 para que Xi-1 y Xi queden paralelos.
DH11.Obtener Di como la distancia, medida a lo largo de Zi-1, que habría que desplazar (Si-1) para que Xi y Xi-1 quedasen alineados.
DH12.Obtener Ai como la distancia medida a lo largo de Xi (que ahora coincidiría con Xi-1) que habría que desplazar el nuevo (Si-1) para que su origen coincidiese con (Si).
DH13.Obtener ai como el ángulo que habría que girar entorno a Xi (que ahora coincidiría con Xi-1), para que el nuevo (Si-1) coincidiese totalmente con (Si).
DH14.Obtener las matrices de transformación i-1Ai.
DH15.Obtener la matriz de transformación que relaciona el sistema de la base con el del extremo del robot T = 0Ai, 1A2... n-1An.
DH16.La matriz T define la orientación (submatriz de rotación) y posición (submatriz de traslación) del extremo referido ala base en función de las n coordenadas articulares.
DH2.Numerar cada articulación comenzando por 1 (la correspondiente al primer grado de libertad y acabando en n).
DH3.Localizar el eje de cada articulación. Si esta es rotativa, el eje será su propio eje de giro. Si es prismática, será el eje a lo largo del cual se produce el desplazamiento.
DH4.Para i de 0 a n-1, situar el eje Zi, sobre el eje de la articulación i+1.
DH5.Situar el origen del sistema de la base (S0) en cualquier punto del eje Z0. Los ejes X0 e Y0 se situaran dé modo que formen un sistema dextrógiro con Z0.
DH6.Para i de 1 a n-1, situar el sistema (Si) (solidario al eslabón i) en la intersección del eje Zi con la línea normal común a Zi-1 y Zi. Si ambos ejes se cortasen se situaría (Si) en el punto de corte. Si fuesen paralelos (Si) se situaría en la articulación i+1.
DH7.Situar Xi en la línea normal común a Zi-1 y Zi.
DH8.Situar Yi de modo que forme un sistema dextrógiro con Xi y Zi.
DH9.Situar el sistema (Sn) en el extremo del robot de modo que Zn coincida con la dirección de Zn-1 y Xn sea normal a Zn-1 y Zn.
DH10.Obtener Øi como el ángulo que hay que girar en torno a Zi-1 para que Xi-1 y Xi queden paralelos.
DH11.Obtener Di como la distancia, medida a lo largo de Zi-1, que habría que desplazar (Si-1) para que Xi y Xi-1 quedasen alineados.
DH12.Obtener Ai como la distancia medida a lo largo de Xi (que ahora coincidiría con Xi-1) que habría que desplazar el nuevo (Si-1) para que su origen coincidiese con (Si).
DH13.Obtener ai como el ángulo que habría que girar entorno a Xi (que ahora coincidiría con Xi-1), para que el nuevo (Si-1) coincidiese totalmente con (Si).
DH14.Obtener las matrices de transformación i-1Ai.
DH15.Obtener la matriz de transformación que relaciona el sistema de la base con el del extremo del robot T = 0Ai, 1A2... n-1An.
DH16.La matriz T define la orientación (submatriz de rotación) y posición (submatriz de traslación) del extremo referido ala base en función de las n coordenadas articulares.
Parametros DH para un eslabon giratorio.
Los cuatro parámetros de DH (qi, di, ai, ai) dependen únicamente de las características geométricas de cada eslabón y de las articulaciones que le unen con el anterior y siguiente.
qi Es el ángulo que forman los ejes Xi-1 y Xi medido en un plano perpendicular al eje Zi-1, utilizando la regla de la mano derecha. Se trata de un parámetro variable en articulaciones giratorias.
di Es la distancia a lo largo del eje Zi-1 desde el origen del sistema de coordenadas (i-1)- esimo hasta la intersección del eje Zi-1 con el eje Xi. Se trata de un parámetro variable en articulaciones prismáticas.
ai Es a la distancia a lo largo del eje Xi que va desde la intersección del eje Zi-1 con el eje Xi hasta el origen del sistema i-esimo, en el caso de articulaciones giratorias. En el caso de articulaciones prismáticas, se calcula como la distancia mas corta entre los ejes Zi-1 y Zi.
ai Es el ángulo de separación del eje Zi-1 y el eje Zi, medido en un plano perpendicular al eje Xi, utilizando la regla de la mano derecha.
Una vez obtenidos los parámetros DH, el calculo de las relaciones entre los eslabones consecutivos del robot es inmediato, ya que vienen dadas por las matrices A, que se calcula según la expresión general.
Las relaciones entre eslabones no consecutivos vienen dadas por las matrices T que se obtienen como producto de un conjunto de matrices A.
Obtenida la matriz T, esta expresara la orientación (submatriz (3x3) de rotación) y posición (submatriz (3x1) de traslación) del extremo del robot en función de sus coordenadas articulares, con lo que quedara resuelto el problema cinematico directo.
qi Es el ángulo que forman los ejes Xi-1 y Xi medido en un plano perpendicular al eje Zi-1, utilizando la regla de la mano derecha. Se trata de un parámetro variable en articulaciones giratorias.
di Es la distancia a lo largo del eje Zi-1 desde el origen del sistema de coordenadas (i-1)- esimo hasta la intersección del eje Zi-1 con el eje Xi. Se trata de un parámetro variable en articulaciones prismáticas.
ai Es a la distancia a lo largo del eje Xi que va desde la intersección del eje Zi-1 con el eje Xi hasta el origen del sistema i-esimo, en el caso de articulaciones giratorias. En el caso de articulaciones prismáticas, se calcula como la distancia mas corta entre los ejes Zi-1 y Zi.
ai Es el ángulo de separación del eje Zi-1 y el eje Zi, medido en un plano perpendicular al eje Xi, utilizando la regla de la mano derecha.
Una vez obtenidos los parámetros DH, el calculo de las relaciones entre los eslabones consecutivos del robot es inmediato, ya que vienen dadas por las matrices A, que se calcula según la expresión general.
Las relaciones entre eslabones no consecutivos vienen dadas por las matrices T que se obtienen como producto de un conjunto de matrices A.
Obtenida la matriz T, esta expresara la orientación (submatriz (3x3) de rotación) y posición (submatriz (3x1) de traslación) del extremo del robot en función de sus coordenadas articulares, con lo que quedara resuelto el problema cinematico directo.
Parámetros DH para el robot. | ||||
Articulación | q | d | a | a |
1 | q1 | I1 | 0 | 0 |
2 | 90° | d2 | 0 | 90° |
3 | 0 | D3 | 0 | 0 |
4 | q4 | I4 | 0 | 0 |
Una vez calculados los parámetros de cada eslabón, se calculan las matrices A:
0A1 | 1A2 | 2A3 | 3A4 |
C1 -S1 0 0 | 0 0 1 0 | 1 0 0 0 | C4 -S4 0 0 |
S1 C1 0 0 | 1 0 0 0 | 0 1 0 0 | S4 C4 0 0 |
0 0 1 I1 | 0 1 0 D2 | 0 0 1 D3 | 0 0 1 I4 |
0 0 0 1 | 0 0 0 1 | 0 0 0 1 | 0 0 0 1 |
Así pues, se puede calcular la matriz T que indica la localización del sistema final con respecto al sistema de referencia de la base del robot.
T = 0A1 (1A2)(2A3)(3A4) = |
-S1C4 S1S4 C1 C1(D3+I4) C1C4 -C1S4 S1 S1(D3+I4) S4 C4 0 (D2+I1) 0 0 0 1 |
C. Resolución del problema cinematico directo mediante uso de cuaternios.
Puesto que las matrices de transformación homogénea y los cuaternios son los métodos alternativos para representar transformaciones de rotación y desplazamiento, será posible utilizar estos últimos de manera equivalente a las matrices para la resolución del problema cinematico directo de un robot.
Para aclarar el uso de los cuaternios con ese fin, se van a utilizar a continuación para resolver el problema cinematico directo de un robot tipo SCARA cuya estructura se representa en la figura.
El procedimiento a seguir será el de obtener la expresión que permite conocer las coordenadas de posición y orientación del sistema de referencia asociado al extremo del robot (S4) con respecto al sistema de referencia asociado a la base (S0). Esta relación será función de las magnitudes I1, I2, y I3, de los elementos del robot así como de las coordenadas articulares q1, q2, q3 y q4.
Para aclarar el uso de los cuaternios con ese fin, se van a utilizar a continuación para resolver el problema cinematico directo de un robot tipo SCARA cuya estructura se representa en la figura.
El procedimiento a seguir será el de obtener la expresión que permite conocer las coordenadas de posición y orientación del sistema de referencia asociado al extremo del robot (S4) con respecto al sistema de referencia asociado a la base (S0). Esta relación será función de las magnitudes I1, I2, y I3, de los elementos del robot así como de las coordenadas articulares q1, q2, q3 y q4.
Para obtener la relación entre (S0) y (S4) se ira convirtiendo sucesivamente (S0) en (S1), (S2), (S3) y (S4) según la siguiente serie de transformaciones:
- Desplazamiento de (S0) una distancia I1 a lo largo del eje Z0 y giro un ángulo q1 alrededor del eje Z0, llegándose a (S1).
- Desplazamiento de (S1) una distancia I2 a lo largo del eje X1 y giro un ángulo q2 alrededor del nuevo eje Z, para llegar al sistema (S2).
- Desplazamiento alo largo del eje X2 una distancia I3 para llegar al sistema (S3).
- Desplazamiento de (S3) una distancia q3 a lo largo del eje Z3 y un giro en torno a Z4 de un ángulo q4, llegándose finalmente a (S4).
De manera abreviada las sucesivas transformaciones quedan representadas por:
S0 ---> S1: T( z,I1 ) Rot( z,q1 )
S1 ---> S2: T( x,I2 ) Rot( z,q2 )
S2 ---> S3: T( x,I3 ) Rot ( z,0 )
S3 ---> S4: T( z,-q3 ) Rot( z,q4 )
S1 ---> S2: T( x,I2 ) Rot( z,q2 )
S2 ---> S3: T( x,I3 ) Rot ( z,0 )
S3 ---> S4: T( z,-q3 ) Rot( z,q4 )
Donde los desplazamientos quedan definidos por los vectores:
p1 = ( 0,0,1 )
p2 = ( I2,0,0 )
p3 = ( I3,0,0 )
p4 = ( 0,0,-q3 )
p2 = ( I2,0,0 )
p3 = ( I3,0,0 )
p4 = ( 0,0,-q3 )
Y los giros de los cuaternios:
Q1 = ( ^C1, 0, 0, ^S1 )
Q2 = ( ^C2, 0, 0, ^S2 )
Q3 = ( 1, 0, 0, 0 )
Q4 = ( ^C4, 0, 0, ^S4 )
Q2 = ( ^C2, 0, 0, ^S2 )
Q3 = ( 1, 0, 0, 0 )
Q4 = ( ^C4, 0, 0, ^S4 )
Donde:
^C1 = cos ( q1/2 )
^S1 = sen ( q1/2 )
^S1 = sen ( q1/2 )
Lo que indica que el extremo del robot referido al sistema de su base (S0), esta posicionado en:
x = a0x = I3 cos( q1 + q2 ) + I2 cosq1
y = a0y = I3 sen( q1 + q2 ) + I2 senq1
z = a0z = I1 -q3
y = a0y = I3 sen( q1 + q2 ) + I2 senq1
z = a0z = I1 -q3
Y esta girando respecto al sistema de la base con un ángulo q1 + q2 +q4 según a la rotación entorno al eje z:
Rot( z, q1+q2+q4 )
Las expresiones anteriores permiten conocer la localización del extremo del robot referidas al sistema de la base en función de las coordenadas articulares (q1, q2, q3, q4), correspondiendo por tanto a la solución del problema cinematico directo.
Puedes ver Más
Conocenos Más
0 comentarios:
Publicar un comentario