Ir al contenido

Cinemática movil

La cinemática, como estudio fundamental del comportamiento de los sistemas mecánicos, juega un rol crucial en la robótica móvil. Comprender el comportamiento mecánico de un robot móvil es esencial tanto para el diseño de robots apropiados para diversas tareas como para la creación de software de control efectivo para el hardware del robot. Aunque los robots manipuladores han sido objeto de estudio intensivo durante décadas, y su cinemática y dinámica se comprenden de manera bastante completa, los robots móviles presentan sus propios desafíos y preguntas cinemáticas. Al igual que con los manipuladores, el espacio de trabajo de un robot móvil, que define el rango de poses posibles que puede alcanzar en su entorno, es de suma importancia. Similarmente, la controlabilidad del robot móvil determina las trayectorias y caminos posibles dentro de este espacio de trabajo.

Sin embargo, la principal diferencia entre un robot móvil y un brazo manipulador radica en su fijación al entorno. Un manipulador tiene un extremo fijo, lo que simplifica la medición de la posición de su efector final. En contraste, un robot móvil es un autómata autónomo que puede moverse completamente con respecto a su entorno. Esta autonomía introduce un desafío significativo para la estimación de la posición, ya que no existe una forma directa de medir la posición de un robot móvil instantáneamente; en cambio, debe integrarse su movimiento a lo largo del tiempo. Las imprecisiones en la estimación del movimiento debido al deslizamiento complican aún más esta tarea.

El proceso de entender los movimientos de un robot comienza con la descripción de la contribución de cada rueda al movimiento. Cada rueda permite el movimiento del robot, pero también impone restricciones, como la resistencia al deslizamiento lateral.

Para analizar el movimiento de un robot móvil, es fundamental establecer una relación clara entre el marco de referencia global del entorno y el marco de referencia local del robot. Modelamos el robot como un cuerpo rígido con ruedas que opera en un plano horizontal, lo que implica que su pose se describe con tres parámetros: dos para la posición en el plano (x,y)(x, y) y uno para la orientación (θ)(\theta) con respecto al eje vertical.

La posición del robot en el plano global se especifica mediante las coordenadas (x,y)(x, y) de un punto de referencia PP en el chasis del robot. La orientación θ\theta representa la diferencia angular entre los ejes del marco de referencia global {Xg,Yg}\{X_g,Y_g\} y los ejes del marco de referencia local del robot {XL,YL}\{X_L, Y_L\}. La pose del robot en el marco de referencia global se denota como

ξG=[xyθ]\xi_G = \begin{bmatrix} x \\ y \\ \theta \end{bmatrix}

Para relacionar el movimiento en el marco de referencia global con el movimiento en el marco de referencia local, se utiliza una matriz de rotación ortogonal R(θ)R(\theta):

R(θ)=[cosθsinθ0sinθcosθ0001]R(\theta) = \begin{bmatrix} \cos\theta & \sin\theta & 0 \\ -\sin\theta & \cos\theta & 0 \\ 0 & 0 & 1 \end{bmatrix}

Esta matriz permite mapear una velocidad ξ˙G\dot\xi_G en el marco global a una velocidad ξ˙L\dot\xi_L en el marco local mediante la relación

ξ˙L=R(θ)ξ˙G\dot\xi_L = R(\theta) \dot\xi_G

Un modelo cinemático directo describe cómo se mueve el robot en función de su geometría y el comportamiento individual de sus ruedas, específicamente sus velocidades. Para un robot de tracción diferencial con dos ruedas de diámetro rr, separadas por una distancia 2l2l, y con velocidades angulares ϕ˙1\dot\phi_1 y ϕ˙2\dot\phi_2, se puede derivar un modelo cinemático directo para predecir la velocidad general del robot en el marco de referencia global.

La estrategia consiste en calcular primero la contribución de cada rueda en el marco de referencia local ξ˙L\dot\xi_L. Para un robot de tracción diferencial, la velocidad lineal x˙L\dot x_L y la velocidad angular θ˙L\dot\theta_L en el marco local están dadas por:

x˙L=r2(ϕ˙1+ϕ˙2)y˙L=0θ˙L=r2l(ϕ˙1ϕ˙2)\begin{array}{ccl} \dot x_L &=& \frac{r}{2} \left(\dot\phi_1+\dot\phi_2\right) \\ \dot y_L &=& 0 \\ \dot\theta_L &=& \frac{r}{2l} \left(\dot\phi_1-\dot\phi_2\right) \\ \end{array}

Luego, utilizando la matriz de rotación, se puede transformar esta velocidad al marco de referencia global

ξ˙G=R(θ)1ξ˙L\dot\xi_G = R(\theta)^{-1} \dot\xi_L

Cada rueda contribuye al movimiento del robot y, al mismo tiempo, impone restricciones cinemáticas a su movimiento. Se asumen dos restricciones fundamentales para cada tipo de rueda:

  • rodadura pura (la rueda rueda en la dirección de movimiento) .
  • no deslizamiento lateral (la rueda no se desliza perpendicular a su plano).

Tiene un ángulo fijo con respecto al chasis y solo puede moverse hacia adelante y hacia atrás a lo largo de su plano. La restricción de rodadura se expresa como:

[cos(α+β),sin(α+β),lsin(β)]R(θ)ξ˙Grϕ˙=0[cos(α+β), sin(α+β), -l*sin(β)] * R(θ)\dot{\xi}_G - rϕ̇ = 0

y la restricción de no deslizamiento lateral como:

[sin(α+β),cos(α+β),lcos(β)]R(θ)ξ˙G=0[-sin(α+β), cos(α+β), l*cos(β)] * R(θ)\dot{\xi}_G = 0

donde l y α definen la posición de la rueda, β su orientación fija, r su radio y ϕ̇ su velocidad angular.

Similar a la fija, pero su orientación β(t) puede variar con el tiempo. Sus restricciones de rodadura:

[cos(α+β),sin(α+β),lsin(β)]R(θ)ξ˙Grϕ˙=0[cos(α+β), sin(α+β), -l*sin(β)] * R(θ)\dot{\xi}_G - rϕ̇ = 0

y de no deslizamiento lateral:

[sin(α+β),cos(α+β),lcos(β)]R(θ)ξ˙G=0[-sin(α+β), cos(α+β), l*cos(β)] * R(θ)\dot{\xi}_G = 0

son idénticas a las de la rueda fija en un instante dado.

Puede girar alrededor de un eje vertical que no pasa por el punto de contacto con el suelo. No impone restricciones cinemáticas directas al chasis.

Permite el movimiento omnidireccional mediante rodillos periféricos con ejes antiparalelos al eje principal. No impone restricciones cinemáticas directas al chasis. Su restricción de “rodadura” modificada es:

[sin(α+β+γ),cos(α+β+γ),lcos(β+γ)]R(θ)ξ˙Grϕ˙cos(γ)=0[sin(α+β+γ), cos(α+β+γ), -l*cos(β+γ)] * R(θ)\dot{\xi}_G - rϕ̇*cos(γ) = 0

donde γ es el ángulo de los rodillos.

No tiene un eje principal de rotación y no impone restricciones cinemáticas directas al movimiento.

Las restricciones de cada rueda se combinan para formar las restricciones cinemáticas del robot completo. Solo las ruedas estándar fijas y dirigidas imponen restricciones significativas al movimiento del chasis. Estas restricciones se pueden expresar matricialmente, considerando todas las ruedas estándar del robot:

J1(βs)R(θ)ξ˙GJ2ϕ˙=0Restricciones de rodaduraC1(βs)R(θ)ξ˙G=0Restricciones de deslizamiento\begin{array}{ll} J_1(\beta_s)R(\theta)\dot{\xi}_G - J_2\dot{\phi} = 0 & \text{Restricciones de rodadura} \\ C_1(\beta_s)R(\theta)\dot{\xi}_G = 0 & \text{Restricciones de deslizamiento} \end{array}

donde J1J_1 y C1C_1 son matrices que dependen de la geometría y orientación de las ruedas, J2J_2 es una matriz diagonal con los radios de las ruedas y ϕ˙\dot{\phi} es el vector de velocidades angulares de las ruedas. Las restricciones de deslizamiento son cruciales para determinar la maniobrabilidad del robot.

La maniobrabilidad de un robot móvil se refiere a su capacidad para moverse directamente en el entorno. La restricción fundamental que limita la movilidad es la restricción de no deslizamiento lateral en cada rueda.

El grado de movilidadm) se define como la dimensión del espacio nulo de la matriz de proyección de las restricciones de deslizamiento:

δm=dim(N(C1(βs)))=3rank(C1(βs))δ_m = dim(N(C1(β_s))) = 3 - rank(C1(β_s))

Este valor indica el número de grados de libertad del chasis que se pueden manipular directamente mediante cambios en la velocidad de las ruedas.

El concepto de centro instantáneo de rotación (CIR) proporciona una interpretación geométrica de las restricciones de movimiento. Para cada rueda estándar, la restricción de no deslizamiento lateral implica que su movimiento instantáneo debe ser perpendicular a la dirección en la que no puede deslizarse. Todas las ruedas deben rotar alrededor de un punto común (el CIR) o moverse en línea recta (CIR en el infinito).

El grado de direccionabilidads) cuantifica el número de parámetros de dirección controlables independientemente:

δs=rank(C1s(βs))δ_s = rank(C1_s(β_s))

donde C1s representa las contribuciones de las ruedas dirigidas a las restricciones de deslizamiento.

Finalmente, el grado de maniobrabilidadM) se define como la suma del grado de movilidad y el grado de direccionabilidad:

δM=δm+δsδ_M = δ_m + δ_s

Este valor representa el número total de grados de libertad que un robot puede manipular, ya sea directamente a través de la velocidad de las ruedas o indirectamente a través del cambio en la configuración de la dirección.

El espacio de trabajo de un robot define el conjunto de todas las poses que el robot puede alcanzar en su entorno. El número de grados de libertad (GDL) del espacio de trabajo es un atributo importante. El número de grados de libertad diferenciales (DDOF), que es el número de velocidades independientes que el robot puede alcanzar, es igual al grado de movilidad (DDOF = δm).

Un robot se clasifica como holonómico si todas sus restricciones cinemáticas son holonómicas, es decir, pueden expresarse como funciones explícitas solo de las variables de posición. Una condición alternativa es que un robot es holonómico si y solo si el número de grados de libertad diferenciales es igual al número de grados de libertad de su espacio de trabajo (DDOF = DOF). Las restricciones de no deslizamiento de las ruedas estándar son típicamente no holonómicas.

Un robot omnidireccional es un robot holonómico con un espacio de trabajo de 3 GDL (posición x, y y orientación θ), lo que implica que puede controlar independientemente su movimiento en todas estas dimensiones (DDOF = DOF = 3). Los robots omnidireccionales suelen utilizar ruedas suecas, castor o esféricas, que no imponen restricciones cinemáticas al chasis.

La capacidad de un robot para seguir trayectorias (caminos con una dimensión temporal) es una consideración importante. Los robots omnidireccionales pueden seguir cualquier trayectoria dentro de su espacio de trabajo, mientras que los robots no holonómicos con ruedas dirigidas pueden requerir maniobras más complejas y tiempo para ajustar la orientación de sus ruedas antes de cambiar la orientación del chasis.

El control cinemático se enfoca en seguir una trayectoria deseada en términos de posición o perfil de velocidad en función del tiempo.

El control de lazo abierto implica precomputar una trayectoria suave basada en segmentos geométricos simples (líneas, arcos de círculo) para llevar el robot desde una posición inicial a una final. Sin embargo, este enfoque no se adapta a cambios en el entorno ni corrige errores.

El control de retroalimentación utiliza la información de la pose actual del robot para calcular las velocidades de control necesarias para alcanzar una meta o seguir una trayectoria. Para un robot móvil de tracción diferencial, se puede definir un vector de error de pose en el marco de referencia del robot. El objetivo del controlador es diseñar leyes de control para la velocidad lineal (v) y la velocidad angular (ω) que lleven este error a cero. Se pueden utilizar transformaciones de coordenadas polares para diseñar leyes de control estables que guíen el robot hacia la meta.

La cinemática de robots móviles proporciona las bases para comprender y controlar el movimiento de estos sistemas. El análisis de las restricciones impuestas por las ruedas y su combinación para determinar la maniobrabilidad y el espacio de trabajo son pasos esenciales en el diseño y la programación de robots móviles para una amplia gama de aplicaciones. Si bien la cinemática básica se centra en el movimiento sin considerar fuerzas ni masas, es un punto de partida crucial para el estudio más avanzado de la dinámica y el control de robots móviles.