Robocar · TFM · Estudio teórico

Ángulo de dirección y deslizamiento en la odometría

Qué aporta el modelo de bicicleta (usar el ángulo de dirección) a la odometría del robocar, y cómo la degradan los deslizamientos —el patinaje de las ruedas motrices al arrancar, y el derrape lateral en curva—. La conclusión adelanta la decisión de implementación: el ángulo de dirección aporta consistencia cinemática en marcha normal, pero no protege contra el deslizamiento; frente al patinaje, la fuente robusta es la que no depende de las ruedas.

1 Punto de partida

La odometría actual del robocar fusiona, con un EKF, dos medidas: la velocidad lineal del encoder (v) y la velocidad angular del giroscopio (ω). La pose 2D se obtiene integrando el modelo del uniciclo:

ẋ = v cos θ  ·  ẏ = v sin θ  ·  θ̇ = ω pose integrada a partir de velocidad lineal y velocidad angular

Validado rodando, este esquema deriva ~0,17 m por vuelta cerrada. La pregunta del estudio: ¿qué añadiría medir también el ángulo de dirección δ, y qué pasa cuando las ruedas resbalan?

2 El modelo de bicicleta: qué añade la dirección

Un coche Ackermann se modela como una bicicleta: una rueda trasera (tracción) y una delantera (dirección), separadas por la batalla L. Si la delantera se orienta un ángulo δ, la geometría impone el centro instantáneo de rotación (CIR) y, con él, el radio de giro y la velocidad de giro.

CIR R rueda trasera (tracción) rueda delantera (dirección) δ L v
Modelo de bicicleta (esquemático). El ángulo δ fija el CIR; el radio R y la velocidad de giro se deducen de δ, v y la batalla L.

De esa geometría salen dos relaciones exactas (sin deslizamiento):

R = Ltan δ ω = v · tan δL radio de giro  ·  velocidad de giro derivada de la dirección

La segunda es la clave: el par v+δ predice la velocidad de giro ω de forma independiente al giroscopio. En el robocar, L = 0,175 m (del URDF), con radio mínimo de 0,175 m a δ ≈ 45°.

Qué aporta realmente

Límites (por qué es una fuente "blanda") Se usa el ángulo comandado al servo, no el medido en la rueda: holguras mecánicas, deformación del neumático y la calibración servo→δ introducen error. Y, sobre todo, las ecuaciones anteriores asumen rodadura pura, sin deslizamiento. Esa hipótesis es justo la que rompen los derrapes.

3 Deslizamiento: cuando el modelo se rompe

Toda odometría basada en ruedas asume que la rueda rueda sin resbalar: que la velocidad de su superficie iguala la del suelo. Cuando no se cumple, la medida miente. Hay dos formas de deslizamiento, con efectos distintos.

3.1 · Deslizamiento longitudinal (el patinaje al arrancar)

Es el ejemplo que planteabas: al dar gas, las ruedas motrices giran más rápido que el avance real del coche. Se cuantifica con la razón de deslizamiento:

s = ωrueda · r − vsuelovsuelo s > 0 al acelerar/patinar · s < 0 al frenar/bloquear

En el arranque, la inercia del chasis se resiste al movimiento pero la rueda ya gira: s > 0. El encoder cuenta vueltas que no se han convertido en avance, así que la odometría sobreestima la distancia. Es un error sistemático, no ruido: se acumula justo en cada aceleración.

Mitigación que ya tienes La rampa anti-pico del car_control_node (subir el gas gradualmente, límite de °/comando) reduce el pico de par en el arranque y, con él, el patinaje inicial. Es control de tracción rudimentario, pero atenúa la fuente del error en origen.

3.2 · Deslizamiento lateral (el derrape en curva)

En una curva tomada rápido o con poco agarre, el coche desliza de lado: su rumbo real no coincide con el que marca la dirección. Aparece un ángulo de deriva β entre hacia dónde apunta el coche y hacia dónde se mueve de verdad. Aquí el modelo de bicicleta falla doblemente: usa v (contaminada por el deslizamiento longitudinal) y además presupone β = 0. El ω = v·tanδ/L deja de describir el movimiento.

4 Cómo responde cada fuente al deslizamiento

La diferencia decisiva es qué mide físicamente cada sensor: si mira a la rueda, el deslizamiento lo engaña; si mira al mundo o al movimiento inercial, no.

FuenteQué mideAnte deslizamiento
Encoder velocidad de rueda vueltas de la rueda motriz vulnerablePatinaje longitudinal → sobreestima distancia. Fuente directa del error de arranque.
Dirección modelo bicicleta v · tan δ / L vulnerable ×2Hereda el error de v y además asume β = 0. En derrape puede afirmar con confianza un giro que no ocurre.
Giroscopio IMU velocidad angular real del chasis robustoMide la rotación de verdad, gire o no la rueda. Inmune al patinaje.
Acelerómetro IMU aceleración real del chasis robusto*Ve la aceleración real (podría delatar el patinaje), pero ruidoso y con bias: poco fiable para integrar posición.
Odometría láser scan-matching (rf2o) desplazamiento respecto al entorno robustoMide el movimiento contra las paredes: el patinaje no lo engaña. Fuente de traslación independiente de las ruedas.
La idea central Ninguna fuente basada en ruedas sobrevive al deslizamiento (encoder y dirección caen juntos). Las que miran al mundo o a la inercia —giroscopio y láser— sí. Por eso el patinaje se combate añadiendo una fuente independiente de las ruedas, no refinando las que dependen de ellas.

5 Síntesis e implicaciones

El estudio ordena las dos mejoras candidatas según el problema que resuelven:

Estrategia de fusión (EKF) El EKF no sabe cuándo hay deslizamiento salvo que se lo indiquemos. Tres palancas: (1) reducir el patinaje en origen (rampa de tracción, ya presente); (2) covarianza adaptativa — inflar la incertidumbre del encoder cuando la aceleración comandada o la del IMU es alta (arranques); (3) fuentes independientes (láser, giroscopio) que discrepen del encoder durante el patinaje y "tiren" de la estimación hacia la realidad.

Conclusión para la implementación

Ordenadas por lo que aportan al problema del deslizamiento que motivó el estudio:

1ºOdometría láser (67). Fuente de traslación inmune al patinaje; corrige el error sistemático del arranque. Mayor valor frente a los deslizamientos. Coste: CPU (convive con Cartographer) y compilar rf2o.
2ºÁngulo de dirección (66). Redundancia de yaw y coherencia Ackermann en marcha normal; aporta poco frente al deslizamiento y hay que fusionarlo con prudencia (covarianza holgada, no fiarse en derrape).

Ambas son mejoras reales del EKF; la diferencia es qué debilidad cubren. Si la prioridad es la robustez ante patinaje/derrape, empezar por la 67.