RoadRunner und OpenSCENARIO — Begriffstabelle
Wenn Sie bereits mit MathWorks RoadRunner Scenario vertraut sind, wird Ihnen drawtonomy’s Szenario-Editor vertraut vorkommen — beide Tools organisieren dasselbe Problem auf ähnliche Weise, und beide sprechen ASAM OpenSCENARIO. Allerdings unterscheiden sich einige Fachbegriffe. Diese Seite stellt die drei aufeinander ab.
RoadRunner Scenario ist ein ausgereiftes kommerzielles Desktop-Produkt mit 3D-Arbeitsfläche, Asset-Bibliothek, integrierten Fahrzeugverhalten und Co-Simulation mit CARLA und Simulink sowie einer gRPC-API. drawtonomy ist ein kostenloser Browser-basierter 2D-Editor. Sie sind nicht dasselbe Tool; der Sinn dieser Seite besteht darin, dass die Konzepte übertragbar sind.
Die Struktur der Zuordnung
Abschnitt betitelt „Die Struktur der Zuordnung“| RoadRunner Scenario | drawtonomy | OpenSCENARIO 1.x |
|---|---|---|
| Scene Editing mode | Scene mode | — |
| Scenario Editing mode | Scenario mode | — |
| Logic editor | die LOGIC Card | Storyboard |
| Action Phase | Phase | Act |
| — (Aktionen befinden sich in Phasen) | Event | Event |
| Actor | Actor | ScenarioObject / Entities |
| Condition | TRIGGER | StartTrigger |
| End condition | END CONDITIONS | StopTrigger |
| Fail condition | FAIL CONDITIONS | (herstellerspezifisch) |
| Attributes pane | das Attribut-Panel | — |
| Library Browser (assets) | die TEMPLATE-Liste | Vehicle / Pedestrian Kataloge |
| Scenario Parameters, Variables | das {x} Panel | ParameterDeclarations, VariableDeclarations |
Beide Produkte verwenden die Aufteilung zwischen Scene / Scenario Modus aus demselben Grund: die Straße ist eine separate Ressource vom Verhalten, das darin abläuft.
Wo die Strukturen unterscheidlich sind
Abschnitt betitelt „Wo die Strukturen unterscheidlich sind“Der eigentliche strukturelle Unterschied liegt darin, wie Verhalten sequenziert wird.
RoadRunner Scenario verkettet Aktionsphasen pro Akteur, mit Bedingungen, die als Kreis-Knoten dazwischen liegen. Jede Bedingung legt fest, wann die unmittelbar davor liegende Phase endet und die nächste Phase beginnt. Das Verhalten liest sich als Kette.
drawtonomy platziert Ereignisse innerhalb einer Phase, und jedes Ereignis hat seinen eigenen TRIGGER. Eine Phase hat ihre eigene Start-Bedingung, und Ereignisse darin werden ausgelöst, wenn ihr Trigger erfüllt ist. Das Verhalten liest sich eher als Satz ausgelöster Regeln als als Kette. Dies spiegelt OpenSCENARIO’s Modell wider, in dem ein Act einen StartTrigger hat und jedes Event auch einen.
Praktisch gesagt: Was RoadRunner als Phase → Bedingung → Phase schreibt, schreibt drawtonomy als zwei Ereignisse mit unterschiedlichen Triggern in der gleichen Phase.
Es gibt noch einen weiteren Unterschied in der Benennung: RoadRunner erstellt pro Akteur eine initiale Aktionsphase für seinen Startzustand. drawtonomy behält den Startzustand auf dem Akteur selbst — das Set initial speed Kontrollkästchen im Platzierungs-Panel — und reserviert Phasen für das Verhalten.
Aktionen
Abschnitt betitelt „Aktionen“| RoadRunner Scenario | drawtonomy | OpenSCENARIO 1.x |
|---|---|---|
| Change Speed | Change Speed | SpeedAction |
| Change Lane | Change Lane | LaneChangeAction |
| Change Lateral Offset | Lateral Offset | LaneOffsetAction |
| Change Longitudinal Distance | Keep Longitudinal Distance | LongitudinalDistanceAction |
| Path Following | Follow Path | FollowTrajectoryAction |
| — | Teleport | TeleportAction |
| — | Drive to Position | AcquirePositionAction |
drawtonomy verfügt über 35 Aktionen insgesamt, eine pro OpenSCENARIO-Actionelement.
Bedingungen
Abschnitt betitelt „Bedingungen“| RoadRunner Scenario | drawtonomy | OpenSCENARIO 1.x |
|---|---|---|
| Simulation Time | Simulation time | SimulationTimeCondition |
| Actor Speed | Actor speed | SpeedCondition |
| Distance to Actor | Distance to actor | RelativeDistanceCondition |
| Distance to Point | Distance to point | DistanceCondition |
| Collision | Collision | CollisionCondition |
| Duration | Duration (nur Fehlbedingungen) | — |
| Time Gap | Time gap to actor | TimeHeadwayCondition |
| — | Phase / event state | StoryboardElementStateCondition |
Die vollständige Liste finden Sie in der Triggers-Referenz.
Beide Tools belegen standardmäßig ein neues Szenario mit Fehlschlag bei Kollision. Bei RoadRunner kommt dieser Standard mit der initialen Phase des Aktuers an; bei drawtonomy beginnt der Bereich FAIL CONDITIONS bereits mit
Collision / Any actor.
Begriffe, die drawtonomy inkonsistent verwendet
Abschnitt betitelt „Begriffe, die drawtonomy inkonsistent verwendet“Zwei Hinweise damit die Dokumentation und die UI Sie nicht verwirren:
- Actor, Participant und Entity bedeuten alle dasselbe. Die Zeichnungs-Toolbar nennt das Tool Participants, die Szenario-Toolbar sagt Add actor, die Attribut-Panel Überschrift lautet ACTORS, und OpenSCENARIO nennt sie
ScenarioObjects. Diese Dokumentation sagt durchgehend Actor. - Es gibt keinen Button namens “Run”. Der ▶ Button auf der LOGIC Card startet das Szenario;
RUNist das Verdict-Badge, das während der Ausführung angezeigt wird.
Szenario zwischen den Tools verschieben
Abschnitt betitelt „Szenario zwischen den Tools verschieben“RoadRunner Scenario exportiert ASAM OpenSCENARIO XML, und drawtonomy importiert es. Exportieren Sie die .xosc zusammen mit der OpenDRIVE .xodr für die Szene und ziehen Sie beide dann auf die drawtonomy-Arbeitsfläche — siehe
Open and play an existing .xosc. Acts kommen als Phasen mit ihren ursprünglichen Namen an, und Ereignisse behalten ihre Trigger, Aktionen und Prioritäten.
In die andere Richtung exportiert drawtonomy .xosc + .xodr von
Hamburger → Export. Siehe
Export OpenDRIVE + OpenSCENARIO.
Rechnen Sie mit Verlusten in beiden Richtungen. Alles, was als Tool-spezifisches Verhalten, Asset oder integrierte Logik ausgedrückt wird, hat keine OpenSCENARIO-Darstellung für den Datentransfer, und die Standard-Abdeckung von 3D-Assets ist absichtlich beschränkt. Was zuverlässig übertragen wird, ist der Teil, der für die Überprüfung am wichtigsten ist: Straßennetz, Entitäten und Storyboard.