===== Steuerung und Programmierung eines Mecanum-Fahrzeuges ===== Damit ein mit Mecanum-Rädern ausgestattetes Fahrzeug die gewünschten Bewegungen ausführt, müssen vier Motoren korrekt zusammenwirken. Dadurch ist der gesamte Aufbau eines solchen Fahrzeuges komplexer, als bei Fahrzeugen die mit einem oder zwei Motoren angetrieben werden. Das folgende Bild zeigt die notwendigen Drehrichtungen für die jeweiligen Richtungen: {{ :projekte:2018:mecanumwheels:mecanum-directions.png?nolink&600 |}} {{ :projekte:2018:mecanumwheels:mecanum-directions.png?linkonly |Download einer größeren Version zum Ausdruck}} Dies stellt auch höheren Anforderungen an die steuernde Hardware. So kann z.B. ein Lego Mindstorms NXT oder EV3 lediglich drei Motoren steuern. Für den Prototypen ist geplant, jeweils zwei der eingesetzten Getriebemotoren über einen [[www.ti.com/lit/ds/symlink/drv8833.pdf|DRV8833]] anzusteuern und die Positionsregelung mit einem [[https://www.aliexpress.com/item/Photoelectric-Speed-Sensor-Encoder-Coded-Disc-Code-Wheel-For-Freescale-Smart-Car-5V/32849669570.html|Inkrementalgeber (Quadrature-Encoder)]] zu lösen. So können bis zu 400 Schritte pro Umdrehung aufgelöst werden, was bei 8cm Radumfang 0,63mm entspricht. Diese Lösung setzt seitens des Microcontrollers 8 PWM-fähige Pins voraus, weitere 8-Pins zum Einlesen der Inkrementalgeber-Werte, zwei weitere Inputs, um die Fehlerpins der 8833-Treiber auszuwerten, sowie zwei Ausgänge, um die DRV8833 Treiber zu aktivieren, sofern die nicht dauerhaft geschehen soll. Andere Lösungen können sein: * Einsatz eines [[https://store.husarion.com/collections/adapters/products/core2brick|Husarion-Core2-Brick]], der den bereits Motorcontroller für bis zu vier Lego Motoren oder andere DC-Motoren mit Inkrementalgebern besitzt. * Verwendung von entsprechend starken Brushless-Motoren (z.B. Gimbal), die im geplanten Betrieb keine Schritte verlieren ...to be continued...