Route mit Zwischenstopps
Bei der Berechnung einer EV-Route mit der Chargetrip Route API können Sie mit via Zwischenstopps zwischen Start und Ziel hinzufügen.
Mit Zwischenstopps können Sie das Routing an reale Reiseszenarien anpassen, etwa Laden an einer bevorzugten Ladestation, Passagiere abholen oder an einem Restaurant halten.
Arten von Zwischenstopps
Chargetrip unterstützt zwei Arten von Zwischenstopps:
| Stopp | Laden | Eingabefeld | Zweck |
|---|---|---|---|
| Standort | Nein | via.geometry | Geografischer Stopp (Abholung, Lieferung, landschaftlicher Umweg, Kaffeepause). |
| Station | Ja | via.properties.station.station_id | Explizit ausgewählte Ladestation. |
Stoppdauer
Sie können die Dauer jedes Stopps konfigurieren. Je nach Art des Stopps (mit oder ohne Laden) wird stop_duration an unterschiedlichen Stellen konfiguriert und verhält sich unterschiedlich:
1. Bei Stopps ohne Laden
Die Stoppdauer wird unter input.via.properties.location.stop_duration konfiguriert. Diese Dauer entspricht der genauen Stoppdauer und wird direkt zur Gesamtreisedauer addiert, ohne die Lade- oder Fahrzeit des Fahrzeugs zu beeinflussen.
2. Bei Ladestopps
Die Stoppdauer wird unter input.via.properties.station.stop_duration konfiguriert. Dieser Wert entspricht der minimalen Stoppdauer. Das Fahrzeug bleibt mindestens so lange an der Station, aber der Routenplaner kann den Stopp je nach konfiguriertem charge_mode verlängern:
-
ALWAYS_TO_MAX_CHARGE: Verlängert die Ladezeit bei Bedarf, um den maximal konfigurierten SoC zu erreichen. Übersteigt die angefordertestop_durationdie Zeit, die bis zum maximalen SoC erforderlich ist, wird die verbleibende Zeit als Standzeit erfasst. -
OPTIMIZE_TRAVEL_TIME: Verlängert den Aufenthalt überstop_durationhinaus nur, wenn dadurch die Gesamtreisezeit sinkt (zum Beispiel durch den Wegfall eines nachfolgenden Ladestopps). Andernfalls wird genau die angeforderte Dauer geladen. Übersteigt die angefordertestop_durationdie Zeit, die bis zum maximalen SoC erforderlich ist, wird die verbleibende Zeit als Standzeit erfasst.
Wird kein Wert angegeben, optimiert der Planer die Ladedauer allein anhand des charge_mode der Route.
Eine Station zu einer bestehenden Route hinzufügen
Ein häufiges Szenario: Ein Nutzer wählt eine Ladestation für eine Route, die bereits Zwischenstopps enthält, zum Beispiel eine alternative Station, die in Ihrer UI angezeigt wird. Die No-Code-Lösung nutzt diesen Ansatz, um eine Station automatisch als via-Stopp hinzuzufügen, ganz ohne Logik zur Neuordnung, sodass sich die Route nahtlos aktualisiert.
Die Reihenfolge des via-Arrays entspricht der Reihenfolge, in der die Stopps angefahren werden. Eine Station, die am Ende angehängt wird, wird zuletzt angefahren, auch wenn sie nahe am Start der Route liegt. Um sie an der richtigen Position einzufügen, vergleichen Sie den Standort der Station mit den Wegpunkten, die bereits auf der Route liegen:
- Wegpunkte der Reihe nach sammeln.
Nehmen Sie
origin, jeden vorhandenenvia-Stopp unddestinationaus demrequest_inputder Route, die Sie ändern möchten. Jeder Wegpunkt imrequest_inputhat seinegeometryverfügbar, auch Stopps, die nur mit einerstation_iderstellt wurden. - Eine Linie durch die Wegpunkte ziehen.
Verbinden Sie die Wegpunkte der Reihe nach zu einer Linie. Jeder Abschnitt dieser Linie zwischen zwei Wegpunkten ist ein Segment.
- Das Segment finden, das der Station am nächsten liegt.
Verwenden Sie eine Geodaten-Bibliothek, um den Punkt auf der Linie zu finden, der den Koordinaten der Station am nächsten liegt. turf.js bietet zum Beispiel
nearestPointOnLine, das auch den Index des Segments zurückgibt, das diesen Punkt enthält. Dieser Index ist der Index des Wegpunkts, an dem das Segment beginnt. - Die Station nach diesem Wegpunkt einfügen.
Die Liste der Wegpunkte beginnt mit
origin. Der Index eines Wegpunkts in dieser Liste entspricht daher der Position, an der ein neues Element inviaeingefügt wird, damit es direkt danach steht. Ein Index von0bedeutet, dass die Station als erster Stopp eingefügt wird. - Niemals nach dem Ziel einfügen.
Liegt der nächstgelegene Punkt auf dem letzten Segment, kann der Index auf
destinationzeigen. Ein Einfügen an dieser Stelle würde die Station hinter das Ende der Route setzen. Verwenden Sie stattdessen den vorherigen Wegpunkt, damit die Station als letzter Stopp vordestinationeingefügt wird.
Das sollten Sie beachten
- Die Linie verbindet die Wegpunkte mit geraden Segmenten und folgt nicht den Straßen der Route. Alternative Stationen liegen immer in einem Korridor von 5 bis 10 km um die Route, weichen also nie stark von ihr ab, und das nächstgelegene Segment ist meist treffsicher. Für Stationen außerhalb dieses Korridors sind unter Umständen andere Lösungen besser geeignet.
- Der
request_inputder Route ist die maßgebliche Quelle. Erstellen Sie die neue Anfrage daraus und lassen Sie alle anderen Felder, etwavehicleund diecharging-Einstellungen, unverändert.
Beispiele
Eine Route mit einem 30-minütigen Stopp ohne Laden berechnen.
Bei diesem Stopp wurde eine stop_duration von 1800 Sekunden (30 Minuten) hinzugefügt. Dies ist die Stoppdauer, da kein zusätzlicher Nutzen möglich ist.
Eine Route mit einem Ladestopp von mindestens 30 Minuten berechnen.
Bei diesem Stopp wurde eine stop_duration von 1800 Sekunden (30 Minuten) hinzugefügt. Dies ist die minimale Stoppdauer. Wenn längeres Laden der Reiseroute zugutekommt, verlängert sie sich.
Eine Route mit einem Ladestopp ohne minimale Stoppdauer berechnen.
Bei diesem Stopp wird stop_duration weggelassen: Der Planer berechnet die optimale Ladezeit anhand des Lademodus.
War dieser Inhalt hilfreich?