diff --git a/Catalogs/Vehicles/VehicleCatalog.xosc b/Catalogs/Vehicles/VehicleCatalog.xosc index e0390a1..3539387 100644 --- a/Catalogs/Vehicles/VehicleCatalog.xosc +++ b/Catalogs/Vehicles/VehicleCatalog.xosc @@ -3,8 +3,10 @@ - - + + + + diff --git a/README.md b/README.md index e3dc947..e190cb5 100644 --- a/README.md +++ b/README.md @@ -19,14 +19,14 @@ The implementation of the scenarios should as well be conducted using an interna The focus of the scenarios is on securing the planning aspects of an "Automated Lane Keeping System". By extending the scenarios with references to e.g. 3D models or environmental conditions (e.g. light, rain), aspects of sensor and actuator technology could also be simulated and validated. -## Usage +## Running on Windows The execution in the open source tools "esmini", a basic OpenSCENARIO player, and "openPASS", a simulation platform for traffic simulation, is described on Windows: _Note:_ The execution with openPASS expects xsltproc on the system path. Check out the "Notes regarding openPASS" for more information. -1. Clone or download the repository to your local drive. -2. a) Download the [latest esmini release](https://github.com/esmini/esmini/releases) (e.g. esmini-bin_win_x64.zip) (tested successfully with [esmini 2.0.3](https://github.com/esmini/esmini/releases/tag/v2.0.3)), +1. Clone or download this repository to your local drive. +2. a) Download the [latest esmini release](https://github.com/esmini/esmini/releases) (e.g. esmini-bin_win_x64.zip) (tested successfully with [esmini 2.7.2](https://github.com/esmini/esmini/releases/tag/v2.7.2)), or b) Download the [latest openPASS release](https://gitlab.eclipse.org/eclipse/simopenpass/simopenpass) (tested successfully with [openPASS v0.7](https://gitlab.eclipse.org/eclipse/simopenpass/simopenpass/-/tree/openPASS_0.7)) 3. a) Create an environment variable "ESMINI", which directs to the "bin" folder of esmini. E.g. "C:\MyFolder\esmini\bin\", @@ -35,7 +35,6 @@ b) Create an environment variable "OPENPASS", which directs to the installation 4. Execute the script "run_Scenario.bat", located in the "Scenarios" folder of the local repository 5. By changing the parameter values in the parameter declaration section of the OpenSCENARIO files, the concrete scenarios can be varied. - #### Notes regarding esmini: Esmini is an environment simulator with a visualization and does not provide an ALKS. Therefore, for demonstration purposes the vehicle under test is controlled by a so called "default controller", which is provided by esmini. This controller type is defined by the OpenSCENARIO standard as a controller that only maintains the speed and lane offset without taking other traffic participants into account. @@ -57,6 +56,22 @@ Similar to esmini, openPASS does not provide an ALKS. Therefore, for demonstrati Currently openPASS does not support the controller concept of OpenSCENARIO. Instead, entities and their controlling components are defined in the ProfilesCatalog.xml. Sourrounding entities are also controlled by the Algorithm Following Driver Model. Therefore, the velocities of the surrounding entities may differ slightly from the definitions in the scenarios. +## Running on Linux + +The execution in the open source simulator "CARLA" under Ubuntu 20.04 is described here: +1. Clone or download this repository to your local drive. +2. Download CARLA and the compatible scenario-runner for CARLA (tested successfully with [CARLA 0.9.11](https://github.com/carla-simulator/carla/releases/tag/0.9.11) and [scenario_runner-0.9.11](https://github.com/carla-simulator/scenario_runner/releases/tag/v0.9.11) +3. Follow the installation instructions for [CARLA](https://carla.readthedocs.io/en/0.9.11/) and the [scenario_runner](https://github.com/carla-simulator/scenario_runner/blob/master/Docs/getting_scenariorunner.md) (be sure to install all the required tools and libs from requirements.txt (mentioned in "Installation summary" and to set the environment variables (mentioned in "B. Download ScenarioRunner from source")) +4. Once you can run the .xosc scenarios delivered with CARLA, run the ALKS scenarios like this: + a) Start the CARLA simulator: Go to the CARLA installation folder and type "./CarlaUE4.sh" + b) Start the scenario runner: Go to the scenario_runner installation folder and type e.g. "python scenario_runner.py --openscenario /path/to/OSC-ALKS-scenarios/Scenarios/ALKS_Scenario_4.1_1_FreeDriving_TEMPLATE.xosc" + +Execution with esmini or openPASS on Linux hasn't been tested yet. + +#### Notes regarding CARLA + +With CARLA version 0.9.11 the following scenarios are supported: 4.1_1, 4.2_1, 4.2_2, 4.2_4 (4.2 only if the pedestrian is modeled directly in the scenario and not in a catalog or is exchanged by a vehicle). + ## Quality Measures As a first proof-of-concept the scenarios have been integrated and simulated in [openPASS 0.7](https://git.eclipse.org/c/simopenpass/simopenpass.git/tag/?h=openPASS_0.7) at BMW. In addition the open source tool esmini can be used as described above. diff --git a/Scenarios/ALKS_Scenario_4.1_1_FreeDriving_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.1_1_FreeDriving_TEMPLATE.xosc index 1282eb3..8aee608 100644 --- a/Scenarios/ALKS_Scenario_4.1_1_FreeDriving_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.1_1_FreeDriving_TEMPLATE.xosc @@ -38,7 +38,7 @@ - + diff --git a/Scenarios/ALKS_Scenario_4.1_2_SwervingLeadVehicle_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.1_2_SwervingLeadVehicle_TEMPLATE.xosc index 1dd106c..d237633 100644 --- a/Scenarios/ALKS_Scenario_4.1_2_SwervingLeadVehicle_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.1_2_SwervingLeadVehicle_TEMPLATE.xosc @@ -47,7 +47,7 @@ - + @@ -66,7 +66,7 @@ - + diff --git a/Scenarios/ALKS_Scenario_4.1_3_SwervingSideVehicle_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.1_3_SwervingSideVehicle_TEMPLATE.xosc index ffcfd19..41b670c 100644 --- a/Scenarios/ALKS_Scenario_4.1_3_SwervingSideVehicle_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.1_3_SwervingSideVehicle_TEMPLATE.xosc @@ -7,7 +7,7 @@ - + @@ -47,7 +47,7 @@ - + @@ -66,7 +66,7 @@ - + diff --git a/Scenarios/ALKS_Scenario_4.2_1_FullyBlockingTarget_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.2_1_FullyBlockingTarget_TEMPLATE.xosc index 5c4bc3f..41ffeab 100644 --- a/Scenarios/ALKS_Scenario_4.2_1_FullyBlockingTarget_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.2_1_FullyBlockingTarget_TEMPLATE.xosc @@ -44,7 +44,7 @@ - + diff --git a/Scenarios/ALKS_Scenario_4.2_2_PartiallyBlockingTarget_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.2_2_PartiallyBlockingTarget_TEMPLATE.xosc index 4383b35..eb35749 100644 --- a/Scenarios/ALKS_Scenario_4.2_2_PartiallyBlockingTarget_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.2_2_PartiallyBlockingTarget_TEMPLATE.xosc @@ -45,7 +45,7 @@ - + diff --git a/Scenarios/ALKS_Scenario_4.2_3_CrossingPedestrian_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.2_3_CrossingPedestrian_TEMPLATE.xosc index e0a5d45..7ea92b4 100644 --- a/Scenarios/ALKS_Scenario_4.2_3_CrossingPedestrian_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.2_3_CrossingPedestrian_TEMPLATE.xosc @@ -43,7 +43,7 @@ - + diff --git a/Scenarios/ALKS_Scenario_4.2_4_MultipleBlockingTargets_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.2_4_MultipleBlockingTargets_TEMPLATE.xosc index ab1211c..9cfb702 100644 --- a/Scenarios/ALKS_Scenario_4.2_4_MultipleBlockingTargets_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.2_4_MultipleBlockingTargets_TEMPLATE.xosc @@ -48,7 +48,7 @@ - + diff --git a/Scenarios/ALKS_Scenario_4.3_1_FollowLeadVehicleComfortable_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.3_1_FollowLeadVehicleComfortable_TEMPLATE.xosc index 53f33c7..bb7699e 100644 --- a/Scenarios/ALKS_Scenario_4.3_1_FollowLeadVehicleComfortable_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.3_1_FollowLeadVehicleComfortable_TEMPLATE.xosc @@ -47,7 +47,7 @@ - + @@ -66,7 +66,7 @@ - + @@ -75,7 +75,7 @@ - + diff --git a/Scenarios/ALKS_Scenario_4.3_2_FollowLeadVehicleEmergencyBrake_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.3_2_FollowLeadVehicleEmergencyBrake_TEMPLATE.xosc index 25ad88e..e97cc59 100644 --- a/Scenarios/ALKS_Scenario_4.3_2_FollowLeadVehicleEmergencyBrake_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.3_2_FollowLeadVehicleEmergencyBrake_TEMPLATE.xosc @@ -45,7 +45,7 @@ - + @@ -64,7 +64,7 @@ - + @@ -73,7 +73,7 @@ - + diff --git a/Scenarios/ALKS_Scenario_4.4_1_CutInNoCollision_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.4_1_CutInNoCollision_TEMPLATE.xosc index 354e4b2..b58cde9 100644 --- a/Scenarios/ALKS_Scenario_4.4_1_CutInNoCollision_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.4_1_CutInNoCollision_TEMPLATE.xosc @@ -48,7 +48,7 @@ - + @@ -67,7 +67,7 @@ - + diff --git a/Scenarios/ALKS_Scenario_4.4_2_CutInUnavoidableCollision_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.4_2_CutInUnavoidableCollision_TEMPLATE.xosc index 9a88c6d..b21503b 100644 --- a/Scenarios/ALKS_Scenario_4.4_2_CutInUnavoidableCollision_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.4_2_CutInUnavoidableCollision_TEMPLATE.xosc @@ -48,7 +48,7 @@ - + @@ -67,7 +67,7 @@ - + diff --git a/Scenarios/ALKS_Scenario_4.5_1_CutOutFullyBlocking_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.5_1_CutOutFullyBlocking_TEMPLATE.xosc index 1c5c327..42dcac7 100644 --- a/Scenarios/ALKS_Scenario_4.5_1_CutOutFullyBlocking_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.5_1_CutOutFullyBlocking_TEMPLATE.xosc @@ -6,7 +6,7 @@ - + @@ -50,7 +50,7 @@ - + @@ -89,7 +89,7 @@ - + diff --git a/Scenarios/ALKS_Scenario_4.5_2_CutOutMultipleBlockingTargets_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.5_2_CutOutMultipleBlockingTargets_TEMPLATE.xosc index 549f41d..b723910 100644 --- a/Scenarios/ALKS_Scenario_4.5_2_CutOutMultipleBlockingTargets_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.5_2_CutOutMultipleBlockingTargets_TEMPLATE.xosc @@ -6,7 +6,7 @@ - + @@ -54,7 +54,7 @@ - + @@ -100,7 +100,7 @@ - + diff --git a/Scenarios/ALKS_Scenario_4.6_1_ForwardDetectionRange_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.6_1_ForwardDetectionRange_TEMPLATE.xosc index ff2f568..311bc9d 100644 --- a/Scenarios/ALKS_Scenario_4.6_1_ForwardDetectionRange_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.6_1_ForwardDetectionRange_TEMPLATE.xosc @@ -45,7 +45,7 @@ - + diff --git a/Scenarios/ALKS_Scenario_4.6_2_LateralDetectionRange_TEMPLATE.xosc b/Scenarios/ALKS_Scenario_4.6_2_LateralDetectionRange_TEMPLATE.xosc index 8a47820..1077b5a 100644 --- a/Scenarios/ALKS_Scenario_4.6_2_LateralDetectionRange_TEMPLATE.xosc +++ b/Scenarios/ALKS_Scenario_4.6_2_LateralDetectionRange_TEMPLATE.xosc @@ -6,7 +6,7 @@ - + @@ -47,7 +47,7 @@ - + @@ -66,7 +66,7 @@ - +