LeerrouteGevorderd

Holonome aandrijving: zijwaarts bewegen zonder te draaien

Je kunt een vierwielige holonome aandrijving dimensioneren, bedraden, programmeren en debuggen, en eerlijk zeggen wat het je kost aan tractie en positienauwkeurigheid.

Wat dit leertraject is voor

Elke rijrobot op deze site tot nu toe heeft dezelfde beperking gehad en die nooit genoemd: hij kan alleen vooruit langs zijn eigen neus. Om 20 cm naar links te gaan moet hij draaien, rijden en terugdraaien. Dat is een niet-holonome beperking, en ze is zo normaal dat de meeste mensen niet eens merken dat het een beperking is.

Dit leertraject haalt die weg. Aan het eind heb je een robot met drie onafhankelijk regelbare snelheden — vooruit, zijwaarts en rotatie — gebouwd uit vier gewone tandwielmotoren en vier wielen met rollen erin.

Het besteedt ook veel tijd aan wat dat kost, want die kost is echt en wordt zelden genoemd: ongeveer 29% van je tractie, ongeveer 29% van je topsnelheid op de diagonaal, ruwweg het dubbele van de materiaalkosten en een flinke teruggang in hoeveel je je eigen odometrie kunt vertrouwen. Een holonome basis is een uitstekend antwoord op een specifieke vraag. Dit leertraject gaat ook over het herkennen van het moment dat dat niet je vraag was.

Wat je nodig hebt

Onderdeel Aantal Richtprijs Opmerkingen
Mecanumwielen, 80–97 mm 4 £28–70 de set Twee linkshandig, twee rechtshandig. Koop ze als een set van vier
Tandwielmotor met encoder 4 £8–14 per stuk Gematcht, 100–250 rpm aan het wiel. N20 voor een kleine basis, 25 mm tandwielmotoren voor een grotere
Dubbele H-brug (TB6612FNG of L298N) 2 £3–8 per stuk Of één vierkanaalsbord. TB6612FNG verliest nauwelijks spanning
Controller met 4 PWM + 4 interrupts 1 £8–20 Arduino Mega 2560 of een ESP32. Een Uno heeft van beide te weinig
IMU (MPU6050 of beter) 1 £2–20 Voor veldgeoriënteerd rijden en koersvasthouden
2S- of 3S-accupakket 1 £12–25 Gedimensioneerd op vier motoren, niet op twee — zie de tutorial over het stroombudget
Chassisplaat 1 £10–25 Of snijd ’m zelf. Meet dan van wielas tot wielas

Alles bij elkaar rond de £90–170, tegenover £40–70 voor een gelijkwaardige tweewielige robot.

Waarom het leertraject deze volgorde volgt

Kies de aandrijving voordat je iets koopt. De eerste stap is een vergelijking en geen bouwstap, want de duurste fout in dit leertraject is pas ná het boren van het chassis te ontdekken dat differentiële aandrijving beter was geweest.

Kinematica vóór elektronica. De matrix van vier regels legt uit waarvoor de vier motoren dienen, waarom ze zo verschillende snelheden krijgen, en waarom de verhoudingen tussen de wielen de besturing zijn. Niets aan de bedrading begint te snappen voordat dat klopt.

Het lab vóór de bouw. Een wiel verkeerd om zetten is de meest voorkomende mecanumfout, en het levert een robot die perfect vooruit rijdt en bij zijwaarts rijden een spiraalbaan volgt. Dat je dat één keer bewust in een browser doet, zorgt ervoor dat je het op de werkbank in dertig seconden herkent in plaats van in een dag.

Snelheidsregelkringen vóór alles wat autonoom is. Op een robot met differentiële aandrijving is de open lus een werkbaar beginpunt. Hier niet, want er is geen enkele trimconstante die vier verhoudingen kan repareren die met elk commando veranderen.

Veldgeoriëntatie als laatste van het regelwerk, want dat is een kroon op een aandrijving die al werkt. Toevoegen aan een robot waarvan de wielen hun snelheden niet vasthouden verplaatst alleen de verwarring naar een lastiger te vinden plek.

Controlepunten

Elke fase heeft een werkbanktest met een slaagcriterium. Draag een fout niet mee naar de volgende fase — bij een robot met vier motoren vermenigvuldigen de fouten zich.

Na Test Een succes ziet er zo uit
Wielen gemonteerd Ga boven de robot staan en volg de bovenste rollen Vier lijnen die naar het midden wijzen en een X vormen
Motoren bedraad Stuur elk wiel afzonderlijk vooruit Alle vier de wielen draaien de kant op die je vooruit noemde, zonder één kabel om te wisselen
Kinematica geprogrammeerd Geef een zuivere zijwaartse verplaatsing terwijl de robot op blokken staat De diagonale paren werken tegen elkaar in; linksvoor en rechtsachter komen overeen
Encoders lezen Draai elk wiel met de hand één omwenteling De tellingen liggen binnen 2% van de berekende tellingen per omwenteling, en het teken klopt
Snelheidsregellus Geef 0,3 m/s op blokken en druk daarna met een vinger tegen het wiel De snelheid blijft op peil; de PWM loopt zichtbaar op in de telemetrielijn
Vier regelkringen samen Rij een rechte lijn van 3 m op de vloer Minder dan 20 mm zijdelingse drift, en reproduceerbaar
Zijwaarts rijden Rij 1 m zijwaarts en meet Binnen 5 cm, en de koers is niet meer dan een paar graden veranderd
IMU Draai de robot met de hand 360° De yaw komt binnen 5° terug, met minder dan 3°/min drift terwijl hij stilstaat
Veldgeoriënteerd Houd de stick vooruit en draai de robot Hij blijft over de hele vloer in dezelfde richting rijden
Vierkanten Rij het vierkant op zijwaartse verplaatsing en daarna het vierkant dat draait Beide sluiten; het zijwaartse houdt de koers binnen een graad

Waar dit leertraject stopt

Drie bewuste weglatingen, benoemd zodat je weet dat dit keuzes zijn.

Swerve-aandrijving. De enige holonome aandrijving die geen tractie inruilt voor vrijheid, en ze kost acht motoren, een stuurregelaar per module en echte singulariteiten. Moet je robot holonome zijn én hard duwen, dan is dat de plek om naartoe te gaan, en het is een groter project dan dit hele leertraject.

Weten waar je bent. Dit leertraject is eerlijk over het feit dat de mecanumodometrie wegloopt en zegt je een IMU en dode wielen toe te voegen. Absolute lokalisatie behandelt het niet. Volg daarvoor Padplanning en kartering, dat via bezettingsroosters opbouwt tot SLAM.

Holonome baanvolging. Padvolging — zowel pure pursuit als Stanley — neemt een robot aan die stuurt door te draaien, en een basis die zijwaarts kan bewegen doet het strikt beter dan allebei. Ze goed aanpassen is een eigen onderwerp; tot dan werkt een holonome basis met een auto-achtige regelaar prima en laat hij alleen mogelijkheden liggen.

Verder

Begin bij soorten holonome aandrijving en bepaal of je dit überhaupt wilt. Bouw daarna de mecanum omnidirectionele robot.

Leerroute

De route

Volg de knooppunten op volgorde – elk ontgrendelt het volgende zodra je het hebt afgerond. Je voortgang wordt op dit apparaat opgeslagen.

0 / 14 klaar

100%
Component

De wielen: links- en rechtshandigheid, en de X-controle

Component

Component bekijken
Bouw

Bouw er één

Een weekend

Veelgestelde vragen

Veelgestelde vragen

Moet ik differentiële aandrijving leren voor holonome aandrijving?

Dat helpt enorm en dit leertraject veronderstelt er iets van. De encoderlezing, de snelheidsregellus, het stroombudget en het slipprobleem zijn allemaal dezelfde vaardigheden die een tweewielige robot nodig heeft, alleen dan vier keer. Wat hier werkelijk nieuw is, is de kinematica — een differentiële robot heeft twee regelbare snelheden en een holonome drie — en de vraag om het referentiekader die daarbij hoort. Heb je nog nooit een rijrobot gebouwd, bouw dan eerst een lijnvolger of een obstakelvermijdende robot; je besteedt je tijd dan aan de nieuwe ideeën in plaats van aan solderen.

Hoeveel kost een mecanumbasis vergeleken met een gewone robot?

Ongeveer het dubbele, en die stijging zit op plaatsen die mensen vergeten. Vier mecanumwielen kosten twee tot vier keer de prijs van vier gewone wielen. Je hebt vier motoren in plaats van twee, dus vier H-brugkanalen en vier encoderkabels, en vier motoren is ongeveer het dubbele stroombudget. Ook de controller moet doorgaans groter worden: vier encoders willen vier pinnen met interruptondersteuning en vier PWM-kanalen op gescheiden timers, en dat heeft een Arduino Uno niet, dus de meeste bouwprojecten belanden op een Mega of een ESP32. Begroot de controllerupgrade vanaf het begin en ontdek hem niet als het chassis al geboord is.

Kan ik mecanumwielen zonder encoders in de open lus aansturen?

Je kunt hem rijden, en voor een handgestuurde robot op een goede vloer is dat eerlijk gezegd prima. Wat je niet kunt is ergens specifieks komen. De kinematica werkt door verhoudingen tussen vier wielsnelheden vast te houden, en open-lus-PWM houdt geen verhoudingen vast — terwijl de accu inzakt, terwijl één motor opwarmt, terwijl de belasting verschuift, lopen de verhoudingen weg en rijdt de robot bij elk commando een bocht. Op een robot met differentiële aandrijving kun je dat met één constante wegtrimmen. Op een holonome basis verandert de juiste verhouding met elk commando, dus er valt niets weg te trimmen. Encoders zijn wat de rekenkunde in dit leertraject waar maakt.

Waarom besteedt dit leertraject zoveel tijd aan een odometrie die stukloopt?

Omdat het de storing is die niemand aan ziet komen. Een mecanumbasis ziet eruit als de meest capabele robot die je hebt gebouwd, en zijn dead reckoning is de slechtste. De rollen die slippen zijn geen fout om te repareren — zo gebeurt zijwaartse beweging — dus elke millimeter zijwaartse verplaatsing is verplaatsing die de encoder heeft gemeten en de vloer je niet per se heeft gegeven. Twee tutorials in dit leertraject bestaan om ervoor te zorgen dat je daar vanaf het begin op voorbereid: voeg een IMU toe voor de koers, voeg passieve dode wielen of een externe referentie toe voor de positie, en schrijf nooit een autonome routine die aanneemt dat de wielencoders weten waar de robot is.

Waar houdt dit leertraject op?

Bij een robot die je overal op een vlakke vloer kunt rijden, die de aangevraagde snelheden aanhoudt, die weet welke kant hij op wijst en die eerlijk is over het feit dat hij niet precies weet waar hij staat. Er worden bewust drie dingen weggelaten. Swerve-aandrijving, want acht motoren en een stuursingulariteit is een ander project. Absolute lokalisatie — SLAM, bakens, vision — en daar ga je heen als de robot zijn positie moet kennen; begin met het leertraject voor baanplanning en mapping. En holonome baanvolging, omdat pure pursuit en Stanley allebei een robot aannemen die stuurt, en ze aanpassen aan een basis die zijwaarts kan bewegen verandert de regelaar genoeg om er een eigen behandeling voor te verdienen.

Wat kan ik aan het einde ervan bouwen?

Het project met de mecanum omnidirectionele robot op deze site is het directe doel: een vierwielige basis met een snelheidsregellus per wiel, veldgeoriënteerd rijden en een reeks werkbanktests die je vertellen of elk onderdeel echt werkt. Daarbuiten is dezelfde aandrijving de basis voor alles dat een vaste koers moet houden tijdens het herpositioneren — een cameraplatform, een kleine magazijnkar, een inspectierobot in een smalle gang of een wedstrijdrobot die ergens op moet uitlijnen zonder er naartoe te wijzen.