Gern geschehen!
Ich hoffe, ich habe die Frage nach dem Überschreiben von actual->Orientation richtig verstanden:
Nun, es kommt auf die Bewegung des Roboters an:
Wenn Du zuerst drehst und anschließend fährst, dann ist der neue Winkel Deiner aktuellen Pose:
actual.Orientation = actual.Orientation + Change.Angle;
wenn Du allerdings eine Bahn fährst, die anhand von zwei PID-Reglern die Regelungsdifferenz von Distanz und Winkel auszugleichen versuchen, dann wirst Du
a) während der Fahrt zyklisch die aktuelle Pose Deines Gefährtes berechnen (aus den Änderungen Deiner Radencoderwerte),
b) daraus dann den ChangeVector zum Zielpunkt ermitteln und
c) zuletzt aus den resultierenden Regeldifferenzen "Winkel" und "Distanz" dann die PWM-Werte für die Motoren ermitteln.
Ich weiß, das wirft jetzt weitere Fragen auf, allerdings hab ich so den Verdacht, ich habe Deine Frage missverstanden.
Lesezeichen