Tutoriel · Débutant · 25 min de lecture
Transmissions holonomes : omni, Mecanum, swerve comparées
Ce que holonome signifie vraiment, pourquoi un différentiel ne se gare pas de côté, et une comparaison honnête d'omni, mecanum et swerve en adhérence et coût.
Le mot, et ce qu’il vous coûte
Un robot sur un sol plan a trois degrés de liberté : il peut être en un x, en un y, et pointé dans une direction θ. C’est ce qu’est une position sur un sol.
Une transmission est holonome quand elle peut commander les trois indépendamment à la fois — quand le nombre de directions où elle peut bouger instantanément égale le nombre de directions où elle peut finir. Une transmission est non holonome quand elle ne le peut pas : elle peut atteindre toute pose à terme, mais pas en y allant directement.
L’exemple quotidien est la voiture. Une voiture peut finir dans toute place de stationnement, y compris celle juste à sa gauche. Elle ne peut simplement pas y rouler — elle doit manœuvrer. C’est une contrainte non holonome, et c’est l’unique raison pour laquelle le créneau est une compétence.
Un robot différentiel a le même problème en plus aimable. Il peut pivoter sur place, ce qu’une voiture ne peut pas, il n’a donc que deux vitesses commandables — avance et rotation — pour trois degrés de liberté. Le latéral manque. Pour se décaler de 20 cm à gauche, il doit tourner, avancer, puis se réorienter, ce qui prend un temps parfois indisponible et coûte une précision de cap parfois non négociable.
Une transmission holonome va simplement à gauche.
Pourquoi cela compte plus qu’il n’y paraît
« Ça peut aller de côté » ressemble à un tour de fête. Les cas où cela paie vraiment :
- Espaces restreints. Un robot sans besoin de place pour tourner passe dans une allée exactement à sa largeur. Les AGV d’entrepôt sont en mecanum pour cette seule raison.
- Garder un cap en bougeant. Une caméra, un mât de capteurs ou une pince qui doit rester face à une direction pendant que la base se repositionne. Les transmissions non holonomes en sont incapables.
- Suivi de trajectoire découplé. Un contrôleur en poursuite pure sur base différentielle doit arbitrer entre erreur de position et erreur de cap, car elles partagent un actionneur. Une base holonome corrige chacune avec son propre axe.
- Corrections sans coût en cap. Dérivez de 3 cm hors d’une ligne, et un robot holonome se décale de 3 cm. Un robot différentiel doit sortir en arc puis revenir, et sur un sol glissant ces deux virages supplémentaires sont la source d’erreur. Dans le simulateur, un carré parcouru en crabe sur sol gras finit avec son cap à exactement 0,0°, car aucune rotation n’a jamais été commandée ; le même carré parcouru en tournant aux coins finit décalé de dizaines de degrés, puis roule chaque segment suivant dans la mauvaise direction. Chaque pivot est une chance de perdre le cap, et le robot holonome n’en prend aucune.
Et les cas où cela ne paie pas : tout ce qui doit pousser, grimper ou franchir un seuil. Chaque roue holonome échange de l’adhérence contre de la liberté.
Les quatre options
Propulsion différentielle — la référence
Deux roues motrices, une roulette. Pas holonome, et pourtant la bonne réponse pour la plupart des robots. Toute la traction d’une roue lisse, deux moteurs, et trente ans de bibliothèques qui supposent exactement cette géométrie.
Roues omni en X (« X-drive »)
Quatre roues omni — galets à 90° de la roue, pas 45° — montées aux quatre coins, chacune tournée de 45° pour que sa direction de roulement pointe vers le coin. Chaque roue pousse en diagonale ; les quatre diagonales somment vers tout.
- C’est l’enveloppe de vitesse de mecanum, tournée de 45° et plus grande de √2. Les deux transmissions atteignent un ensemble de vitesses en losange ; en mecanum les directions rapides sont droit devant et droit de côté, en X-drive ce sont les diagonales du châssis. À même vitesse de jante, un X-drive va 1,41 fois plus vite en avant — et produit √2 fois moins de force pour le faire. C’est un rapport de réduction, pas un repas gratuit.
- L’encombrement est maladroit. Les roues sont à 45° du châssis, ce qui gaspille les coins et impose généralement la prise directe.
- La traction est faible et les roues fragiles — petits galets, petite surface de contact.
Mecanum — galets à 45°
Quatre roues qui ressemblent à des roues normales, montées normalement, avec le 45° caché dans la roue. Deux à gauche, deux à droite, en motif X.
- S’intègre comme une transmission normale. C’est la vraie raison pour laquelle mecanum gagne en pratique contre le X-drive.
- Avant et latéral également rapides ; les diagonales coûtent 1/√2. Une commande à 45° demande tout à deux roues et rien aux deux autres, le robot plafonne donc à 71 % de sa vitesse en ligne droite. (Un X-drive a la même pénalité de 71 % — elle s’applique juste à une autre paire de directions.)
- La traction coûte 1/√2. La force au sol est bloquée à 45°, le frottement plafonne tout le vecteur, et seule la composante selon la direction de roulement est utile.
- La poussée est mauvaise. Une base mecanum perd un concours de poussée contre un robot à roues lisses de même masse, à tous les coups.
Swerve — chaque roue orientée
Quatre modules, chacun avec un moteur de traction et un moteur d’orientation. Pointez les quatre où vous voulez et roulez.
- Holonome avec pleine traction. Pas de galet, pas de 45°, pas de pénalité. C’est la seule option de la liste qui n’échange pas l’adhérence contre la liberté.
- Huit moteurs, huit encodeurs, bagues collectrices ou gestion des câbles, et un problème de commande à vraies singularités. Environ quatre fois le travail de mecanum pour un robot qui fait les mêmes trois choses, plus vite et plus fort.
La comparaison, honnêtement
Les vitesses sont données par rapport à la vitesse de pointe en avant propre à chaque transmission, sauf la ligne « vitesse avant par vitesse de roue », qui compare toutes sur mêmes moteurs et roues.
| Différentielle | Omni X-drive | Mecanum | Swerve | |
|---|---|---|---|---|
| Holonome | Non | Oui | Oui | Oui |
| Moteurs | 2 | 4 | 4 | 8 |
| Vitesse latérale | — | 100 % | 100 % | 100 % |
| Vitesse diagonale | — | 71 % | 71 % | 100 % |
| Vitesse avant par vitesse de roue | 100 % | 141 % | 100 % | 100 % |
| Traction contre roues lisses | 100 % | 71 %, et gomme pire | 71 % avant gomme des galets | ~100 % |
| Terrain | Bon | Plat uniquement | Plat uniquement | Bon |
| Odométrie depuis roues motrices | Correcte | Faible | Faible | Correcte |
| Encombrement | Facile | Maladroit | Facile | Difficile |
| Coût et temps de montage | ★ | ★★ | ★★ | ★★★★★ |
Seul le swerve échappe au losange : comme il peut pointer toutes les roues pareil, ses vitesses atteignables forment un cercle complet, aucune direction ne coûte rien. Toute transmission à galets achète le mouvement latéral avec un vecteur de force à 45° et paie le même √2 deux fois.
Choisir
Un court chemin de décision qui vise juste la plupart du temps :
- Faut-il bouger de côté ou garder un cap en bougeant ? Non → propulsion différentielle. Arrêtez-vous ici ; vous venez d’économiser deux moteurs, quatre fils et un mois.
- Le sol est-il plan, dur et propre, à tous les coups ? Non → propulsion différentielle, ou swerve si le budget est déraisonnable.
- Faut-il pousser, tracter ou bousculer quelque chose ? Oui → pas mecanum. Les 71 % précèdent la gomme des galets, et les vraies bases mecanum perdent nettement les concours de poussée.
- L’encombrement est-il serré, ou faut-il ressembler à un robot normal ? Oui → mecanum. Non → un X-drive omni est plus simple à raisonner et 1,41 fois plus long sur les mêmes moteurs.
- Est-ce une compétition où l’on vous poussera volontairement ? → swerve, ou acceptez d’être poussé.
Ce que l’holonome ne donne pas
Trois choses attendues et non obtenues :
Ce ne donne pas une meilleure odométrie. Ce donne pire. Un galet qui glisse fait son travail, donc les encodeurs de roues sur base holonome mesurent la roue et pas le sol encore plus que d’habitude. Prévoyez une IMU, ou des roues libres instrumentées, dès le départ.
Ce ne dispense pas de planifier. Un robot holonome doit toujours contourner les obstacles ; il a juste plus de façons de le faire. A* sur grille d’occupation et planification de couverture fonctionnent pareil, et la trajectoire est plus facile à suivre plutôt que plus facile à trouver.
Ce ne rend pas le robot intuitif à piloter. Bien au contraire : un humain pilotant un robot en crabe perd de quel côté il pointe en une dizaine de secondes. Le correctif est la commande orientée terrain, un petit calcul et un calcul obligatoire.
Suite
Les maths qui font sommer les quatre vecteurs de force : cinématique des roues Mecanum. Puis pilotez-en une et tentez de la mettre en défaut dans le simulateur de transmission mecanum — le préréglage sol gras est le moyen le plus rapide de sentir ce que l’holonome coûte vraiment.
Explorer le graphe
Fait partie de ces réalisations
Les projets et parcours d'apprentissage qui incluent ce tutoriel.
Pour aller plus loin