Componente · Chasis
Mecanum Wheel Set
La rueda que empuja a 45°. Cuál de las cuatro es izquierda, la comprobación X que detecta montajes invertidos y la tracción que sacrificas por el giro lateral.
Qué es
Una rueda mecanum es una rueda normal con un anillo de rodillos libres montado alrededor de su llanta, con el eje de cada rodillo orientado a 45° respecto a la propia rueda. Bengt Ilon la patentó en 1972 en la empresa sueca Mecanum AB, de donde viene el nombre, y los robots de almacén la han estado usando discretamente desde entonces.
La consecuencia de ese 45° es toda la historia. Una rueda normal solo puede empujar a lo largo de la dirección en la que rueda. Una rueda mecanum solo puede empujar a lo largo del eje de su rodillo, porque el rodillo gira libremente en cualquier otra dirección y sencillamente se niega a transmitir fuerza allí. Así que la fuerza de una rueda mecanum sobre el suelo está fijada a 45° respecto al chasis, de forma permanente, le hagas lo que le hagas al motor.
Una sola rueda así es inútil. Cuatro, en dos pares zurdos y dos diestros, te dan cuatro vectores de fuerza en ángulos alternos de 45°, y la suma de cuatro vectores puede apuntar a cualquier parte del suelo y llevar un giro. Eso es una base holonómica: tres grados de libertad controlables — avance, lateral, rotación— a partir de cuatro motores corrientes sin dirección.
La mano, y por qué no es opcional
Las ruedas mecanum vienen en dos formas especulares, que suelen venderse como izquierda (A) y derecha (B), o simplemente marcadas con L y R en el cubo. Un robot necesita dos de cada una, emparejadas en diagonal:
| Esquina | Mano | Su vector de fuerza, visto desde arriba |
|---|---|---|
| Delantera izquierda | Zurda (A) | Apunta hacia delante-derecha cuando la rueda avanza |
| Delantera derecha | Diestra (B) | Apunta hacia delante-izquierda |
| Trasera izquierda | Diestra (B) | Apunta hacia delante-izquierda |
| Trasera derecha | Zurda (A) | Apunta hacia delante-derecha |
Las esquinas opuestas comparten mano. Comprar cuatro ruedas iguales es un error real y habitual: un «juego de cuatro ruedas mecanum» de un vendedor reputado lleva dos de cada una, pero dos unidades sueltas pedidas por separado muy a menudo no.
La comprobación de la X
La prueba fiable no necesita ninguna marca.
- Pon el robot sobre el banco, con las ruedas abajo.
- Párate encima y mira hacia abajo.
- En cada rueda, sigue la línea de los rodillos que ves por arriba.
- Esas cuatro líneas deberían apuntar al centro del robot y dibujar una X.
Si dibujan un rombo —la configuración en O—, intercambia dos ruedas en diagonal y vuelve a comprobar.
Un matiz que despista a quien intenta razonarlo en lugar de mirarlo: los rodillos que ves por arriba están espejados respecto a los que tocan el suelo, porque un rodillo en la parte de arriba de la rueda es el mismo rodillo llevado media vuelta. Los rodillos que empujan apuntan al otro lado. No importa: la X que ves sigue siendo la prueba correcta, y es la que usa todo el mundo, precisamente porque se puede ver.
Cablear cuatro a un Arduino
Mecanum es una transmisión de cuatro motores, así que un solo L298N no basta. Hacen falta dos puentes H duales, o una placa de cuatro canales:
| Rueda | Controlador | Pines de dirección | Pin PWM | Encoder A/B |
|---|---|---|---|---|
| Delantera izquierda | Controlador 1, canal A | 2, 4 | 3 | 18, 30 |
| Delantera derecha | Controlador 1, canal B | 7, 8 | 5 | 19, 31 |
| Trasera izquierda | Controlador 2, canal A | 24, 26 | 6 | 20, 32 |
| Trasera derecha | Controlador 2, canal B | 28, 22 | 11 | 21, 33 |
Dos detalles que muerden:
- Cuatro canales PWM que comparten temporizador no funcionarán todos. En un Uno hay seis pines
PWM repartidos en tres temporizadores, y la biblioteca Servo o
tone()te roba uno. Un Mega o un ESP32 vuelve esto un problema inexistente; en un Uno, revisa el mapa de temporizadores antes de soldar. - Cuatro encoders quieren cuatro pines de interrupción. Un Uno tiene dos. Esta es la razón más habitual de que un montaje con mecanum acabe en un Mega 2560 o un ESP32.
Código mínimo funcional
La cinemática inversa son cuatro líneas. Todo lo demás es fontanería.
// Mecanum inverse kinematics: a chassis command in, four wheel speeds out.
// x is forward, y is to the robot's LEFT, omega is counter-clockwise.
const float LX = 0.075; // half the wheelbase, m
const float LY = 0.085; // half the track, m
const float K = LX + LY; // the only place geometry enters
void driveMecanum(float vx, float vy, float omega) {
float fl = vx - vy - K * omega;
float fr = vx + vy + K * omega;
float rl = vx + vy - K * omega;
float rr = vx - vy + K * omega;
// Scale, do not clip. Clipping each wheel on its own keeps the speed and
// throws the direction away, which is a bug you will chase for a week.
float peak = max(max(fabs(fl), fabs(fr)), max(fabs(rl), fabs(rr)));
if (peak > V_MAX) {
float s = V_MAX / peak;
fl *= s; fr *= s; rl *= s; rr *= s;
}
setWheel(FL, fl); setWheel(FR, fr);
setWheel(RL, rl); setWheel(RR, rr);
}
setWheel() es donde vive el lazo de velocidad, si tienes uno. A lazo abierto es solo una
escritura de PWM, y el mecanum a lazo abierto deriva; mira
cerrar el lazo sobre la velocidad de rueda.
Los números que importan
Tres, y los tres son geometría y no algo que puedas comprar para salir del paso.
| Magnitud | Mecanum | Ruedas normales | Por qué |
|---|---|---|---|
| Tracción en línea recta | 71% (1/√2) | 100% | La fricción limita todo el vector de fuerza a 45°; solo su componente hacia delante te mueve |
| Techo de aceleración con μ = 0,85 | 5.9 m/s² | 8.3 m/s² | La misma proporción, y la masa del robot se cancela en ambos casos |
| Velocidad máxima en diagonal | 71% de la velocidad máxima de rueda | no aplica | Una orden a 45° pide todo a dos ruedas y nada a las otras dos |
| Grados de libertad | 3 | 2 | Lo que les compraste |
Esa última fila es lo que estás pagando. Las tres primeras son la factura.
Resolución de problemas
| Síntoma | Causa | Solución |
|---|---|---|
| Hacia delante bien, al desplazarse de lado currea y gira | Una rueda en la esquina equivocada | Haz la comprobación de la X; intercambia dos ruedas en diagonal |
| Se desplaza de lado al revés | Las cuatro ruedas están espejadas: la X está al revés | Intercambia el par izquierdo con el derecho |
| En una recta larga se desvía un poco hacia un lado | Los motores no emparejan bajo carga | Cierra el lazo de velocidad por rueda, o empareja y calibra |
| La diagonal es mucho más lenta que hacia delante | Así por diseño, no es un fallo | El techo de 1/√2; sube la velocidad máxima o deja de usar diagonales |
| El robot tiembla y chirría al desplazarse de lado | Rodillos patinando en vez de rodar: demasiado agarre, poca carga, o un rodillo bloqueado | Gira cada rodillo con la mano; todos deberían girar libres |
| Odometría buena hacia delante, desesperanzadora de lado | Los rodillos patinan por diseño, así que el encoder no está midiendo el suelo | Añade una IMU para el rumbo; añade ruedas muertas para la posición |
| Una esquina suena distinta de las otras | El rodamiento de un rodillo se ha hundido | Cambia el rodillo: uno bloqueado convierte esa esquina en una rueda normal a 45° |
¿Mecanum o las alternativas?
| Opción | Se desplaza de lado | Fuerza de empuje | Terreno | Coste y complejidad |
|---|---|---|---|---|
| Mecanum, 4 motores | Sí, en cualquier dirección, con cualquier rumbo | Mala: 71% antes de considerar el caucho del rodillo | Solo suelos planos y duros | 4 motores, 4 controladores, 4 encoders |
| Ruedas omni en X, 4 motores | Sí: la misma envolvente romboidal, girada 45° y √2 más alta | Mala, y √2 menos fuerza para esa velocidad | Solo suelos planos | El mismo número de motores, incómodo de empaquetar |
| Conducción diferencial, 2 motores | No: hay que girar primero | La mejor con esas mismas ruedas | Aguanta mucho más | 2 motores, baratos, simples, robustos |
| Swerve, 8 motores | Sí, con tracción completa | Excelente | Buena | Cuatro veces el trabajo y el coste |
El resumen honesto: una base mecanum es la respuesta correcta cuando el suelo es plano y limpio, el espacio es ajustado y el robot debe mantener el rumbo mientras se mueve: un pasillo de almacén, una pista de competición, una plataforma de cámara. Es la respuesta equivocada cuando el robot tiene que empujar, trepar o saber exactamente dónde está solo a partir de las ruedas.
Dónde se usa
Monta estas debajo de un chasis y ya estás construyendo el robot omnidireccional mecanum. Antes de cortar metal, pasa veinte minutos por el simulador de conducción mecanum: montar una rueda al revés ahí no cuesta nada, y es el fallo que con más probabilidad vas a construir.
Explora el grafo
Se usa en estos montajes
Proyectos, rutas de aprendizaje y simuladores que incluyen Mecanum Wheel Set.
Comparar
Alternativas
Preguntas
Preguntas frecuentes sobre Mecanum Wheel Set
¿Cómo sé qué rueda mecanum va en cada esquina?
Coloca el robot en el banco de trabajo, sitúate sobre él y mira en vertical hacia abajo. Sigue la línea de los rodillos que ves en la parte superior de cada rueda. En una base bien montada, esas cuatro líneas apuntan al centro del robot y juntas dibujan una X. Si dibujan un diamante —un rombo, una O—, dos de tus ruedas están en las esquinas equivocadas. Esa comprobación lleva cinco segundos, no necesita marcas y detecta el error de montaje más común en bases mecanum. Las letras L y R impresas en el buje ayudan, pero de lo que te fías es de la comprobación de la X, porque pone a prueba lo que de verdad importa.
¿Qué sucede si una rueda mecanum se monta al revés?
El robot sigue moviéndose, y eso es lo que lo hace tan desconcertante. El avance y el retroceso parecen normales porque las componentes laterales se siguen cancelando en su mayor parte. Lo que falla es el desplazamiento lateral: la esquina mal montada empuja de través respecto a la orden en lugar de a favor de ella, así que una orden lateral sale como una curva lenta con un giro incluido. En el simulador, un cuadrado recorrido en desplazamiento lateral que cierra a 17 mm con las cuatro ruedas bien montadas termina a más de un metro de distancia y girado decenas de grados con una rueda al revés. No hay nada mal en el código, y ningún ajuste del PID lo arreglará. La pista que puedes leer en un robot real es el residuo de los encoders, que pasa de cero a unos 0.28 y se queda ahí.
¿Las ruedas mecanum necesitan encoders?
Los necesitan más que un robot de tracción diferencial, y les sacan menos partido. Más, porque las cuatro ruedas tienen que mantener sus relaciones de velocidad para que el robot vaya hacia donde se le apuntó, y un motor que pierde velocidad bajo carga te saca del rumbo sin avisar. Menos, porque los rodillos patinan por diseño, así que un encoder de rueda mide la rueda y no el suelo: la parte lateral de tu odometría es el número menos fiable del robot. La mayoría de los montajes mecanum serios mantienen los encoders para el lazo de velocidad y añaden una IMU, o ruedas omni pasivas de odometría, para la posición.
¿Por qué es tan fácil empujar a mi robot mecanum?
Porque una rueda mecanum solo puede agarrar a lo largo del eje de su rodillo, que está a 45 grados de la dirección en la que quieres ir. La fricción limita el vector de fuerza completo, pero solo la componente a lo largo de la dirección de rodadura mueve el robot, así que obtienes 1/√2, alrededor del 71%, de la tracción que el mismo robot tendría sobre el mismo suelo con ruedas normales. La goma de los rodillos suele agarrar más de lo que esto sugiere, pero la penalización geométrica es real y no hay ningún ajuste que la elimine. Si lo que buscas es empujar con fuerza, no uses ruedas mecanum.
¿Puedo usar ruedas mecanum sobre moqueta o en exteriores?
Sobre moqueta funcionan, pero pierden velocidad y precisión: los rodillos se clavan en lugar de deslizar, así que el movimiento lateral se vuelve ruidoso y la odometría empeora. En exteriores, no. La gravilla, la hierba y cualquier cosa con un reborde atascan un rodillo o lo detienen en seco, y un rodillo atascado convierte esa esquina en una rueda normal apuntando 45 grados desviada, que es otra vez el fallo de la rueda al revés, solo que de forma intermitente. Las ruedas mecanum son para suelos planos, duros y limpios, que es exactamente como son los almacenes y los campos de competición.
¿Cuántos motores necesita un robot mecanum?
Cuatro, uno por rueda, cada uno controlable de forma independiente en ambos sentidos. No existe una tracción mecanum de dos motores: todo el mecanismo consiste en cuatro vectores de fuerza que suman lo que hayas pedido, y unir dos ruedas a un mismo motor elimina dos de ellos. Eso significa cuatro canales de puente H, cuatro juegos de cables de encoder si quieres un lazo de velocidad y un presupuesto de corriente para cuatro motores en lugar de dos.
Lecturas adicionales