Contents — find the section you need

Change parameters and verify

Open the panel, then press Run to load Python. You can stop execution and reset parameters. Results are computed on this device. No Python installation is required.

Local execution steps below are optional for reproducing the source results; they are not required for the browser experiment.

The experiment controls are in English.

Open experiment panel in a new tab

Download reproduction source

Verfolgen Sie einen Pfad in Ihrem Browser

Drücken Sie oben im Browser-Panel auf „Run“. Grau ist der Referenzpfad; Blau ist die Trajektorie der Hinterachse. Der Kreis zeigt die Vorausschau, der Punkt ist das Ziel, und das Segment ist der Radstand. Nutzen Sie Play, Pause, Schritt oder Scrubbing durch den Lauf, um zu untersuchen, wo die Lenkung einsetzt. Die numerische Tabelle und das herunterladbare JSON enthalten die berechneten Ergebnisse.

PP: Distanz konstant halten

PP hält die gewählte Vorausschau Ld auch bei Geschwindigkeitsänderungen konstant. Führen Sie die nominale Kurve aus, speichern Sie sie als A, und probieren Sie anschließend kurze Vorausschau und lange Vorausschau. Vergleichen Sie Lenkung und Abschluss sowie Tracking-Fehler.

Der Reglerwähler schaltet zwischen PP und APP um. Die feste Vorausschau wirkt sich nur auf PP aus; Zeit und Grenzen wirken sich nur auf APP aus. Speichern Sie einen Lauf als A und ändern Sie nur den Regler, um Pfad, Anfangszustand, Geschwindigkeitsbefehl und Fahrzeug beizubehalten. Voreinstellungen setzen auch andere Bedingungen zurück, prüfen Sie daher die angezeigten Parameterunterschiede.

Zielgeometrie

Ausgehend von der nächstgelegenen Pfadprojektion wird der erste vorwärts liegende Bogenlängenschnittpunkt des Pfads mit dem Kreis vom Radius Ld um die Hinterachse gewählt. Für das Ziel (xb, yb) im Fahrzeugkoordinatensystem gilt Krümmung κ = 2 yb / (xb² + yb²), dann Lenkwinkel δ = atan(L κ). Links ist positiv.

Gibt es keinen Schnittpunkt, wird Ld in Pfadbogenlänge ab der Projektion vorgerückt und am Endpunkt begrenzt. Die Anzeige unterscheidet Kreis-, Rückgewinnungs- und Endpunktziele; die Krümmung verwendet stets den tatsächlichen quadrierten Zielabstand. Ein Ziel hinter dem Fahrzeug oder ein Zusammenfallen mit diesem vor dem Abschluss beendet den Lauf mit einer Begründung. Diese Rückgewinnungs- und Endpunktregeln sind didaktische Entscheidungen, keine Nav2-Reproduktion.

Gemeinsames Modell und faire Vergleiche

Der Zustand besteht aus der Hinterachse (x, y) [m], dem Gierwinkel gegen den Uhrzeigersinn [rad] und der Vorwärtsgeschwindigkeit v [m/s]. Die Gleichungen lauten dx/dt=v cos(yaw), dy/dt=v sin(yaw), dyaw/dt=v tan(δ)/L. Der anfängliche Querversatz ist links des ersten Segments positiv; der Kursversatz ist relativ zu diesem Segment. Pfade sind offene Polylinien: gerade, Viertelkreise mit Radius 20 m und Radius 5 m, oder eine S-Kurve. Der Standardabstand ist 0,1 m (in x bei der S-Kurve).

Die Zeitschrittweite beträgt 0,05 s über höchstens 30 s. Die Grenzen sind 8 m/s Geschwindigkeit, ±2 m/s² Beschleunigung, ±0,6 rad Lenkung, 0,8 rad/s Lenkungsänderung. Die Anfangslenkung ist null. Jedes Intervall wendet eine diskrete Lenkraten-Begrenzung an und hält die Lenkung anschließend fest. Die Bewegung mit konstanter Krümmung wird exakt integriert, einschließlich Beschleunigung bis Null-/Höchstgeschwindigkeit und danach konstanter Geschwindigkeit. Beide Regler verwenden a=2(vtarget−v). Es werden keine Reibung, Trägheit, Reifenschlupf, Hindernisse oder Messverzögerung modelliert.

Der Querabweichungsfehler (Cross-Track Error) ist die vorzeichenbehaftete Linksnormalen-Verschiebung vom nächstgelegenen Segment. Der Kursfehler ist der Fahrzeug-Gierwinkel minus der projizierten Tangente, umgebrochen auf [-π,π). RMS verwendet trapezförmige Zeitintegration quadrierter Stichproben, geteilt durch die verstrichene Zeit. Das longitudinale Endpunkt-Überschwingen ist vom CTE ausgeschlossen, aber in der euklidischen Pfaddistanz enthalten. Der RMS der Lenkrate schließt den anfänglichen Übergang von null ein und beschreibt diskrete Befehle.

Abschluss bedeutet, dass sowohl die verbleibende projizierte Bogenlänge als auch der Endpunktabstand ≤0,25 m betragen, wobei der Kurs innerhalb von 0,15 rad des letzten Segments liegt. Es handelt sich um abgetastete Endpunktpassage, nicht um Anhalten oder Einparken; eine Passage zwischen Stichproben kann übersehen werden. Eine Distanz über 10 m beendet einen Lauf als „vom Pfad abgekommen“; 30 s ist das Zeitlimit. Die Zeit bei unvollständiger Passage ist „—“. Teilläufe und unterschiedliche verstrichene Zeiten dürfen nicht allein nach Fehler eingestuft werden. Gleiche Geschwindigkeitsstrategien können dennoch unterschiedliche Abschlusszeiten ergeben. Dieses synthetische Modell begründet keine Hardware-Sicherheit oder Hochgeschwindigkeitsleistung.

Reproduzierbare synthetische Beispiele

Diese Werte wurden mit nativem Python aus demselben Code erzeugt. Die sanfte Kurve verwendet Anfangs- und Zielgeschwindigkeit 2 m/s, anfänglichen Querversatz 1 m, Kursversatz null und Radstand 2,5 m.

Einstellung Status Verstrichen [s] CTE RMS [m]
short controller_failed 1,80 0,72123
nominal completed 15,70 0,25996
long completed 15,50 0,37896

Referenzen und verwandtes Labor

Der Quellcode-Download ist optional. Die Ausführung im Browser erfordert keine lokale Python-Installation. Quellcode + Modellhinweise.

Related reading

Lesen Sie über prädiktive Regelung und BeschränkungenEinführung in die Regelungstechnik: Modellprädiktive Regelung – Handeln innerhalb von BeschränkungenExplore another aspect of this fieldMPC-Labor – Krümmungsfolge im Horizont und innerhalb der Lenkgrenzen neu lösenExplore another aspect of this fieldPfadverfolgungs-Vergleichs-Labor – PP, APP, RPP, Stanley und MPC unter denselben Bedingungen laufen lassen