are expected to be run in Python3.7. (Python3.7 is due to compatibility
with `carla` package available on PyPI.)
+CARLA 0.9.12 is expected. The versions of ROS bridge and Scenario Runner
+must match.
+
+To run CARLA, just download the proper version (0.9.12) and execute
+attached script. To run without display, use:
+
+ ./CarlaUE4.sh -RenderOffScreen
+
+Links:
+
+- https://carla.readthedocs.io
+
+
+Python virtual environment
+--------------------------
+
On ubuntu 22.04, install the Python3.7:
- sudo add-apt-repository ppa:deadsnakes/ppa
- sudo apt-get update
- sudo apt-get install python3.7 python3.7-venv
+ sudo add-apt-repository ppa:deadsnakes/ppa
+ sudo apt-get update
+ sudo apt-get install python3.7 python3.7-venv
and create virtual environment `tve`:
- python3.7 -m venv tve
- source tve/bin/activate
- pip install -r requirements.txt
+ python3.7 -m venv tve
+ source tve/bin/activate
+ python -m pip install --upgrade pip
+ python -m pip install -r requirements.txt
Use `tve` virtual environment whenever running any scripts. It is
expected the following scripts are run inside the `tve` virtual
environment.
-Links:
-
-- https://carla.readthedocs.io
+Scenario runner
+---------------
Install scenario runner dependencies (cd to scenario runner directory):
pip install -r requirements.txt
-and set the PYTHONPATH:
+and set the `PYTHONPATH`:
export PYTHONPATH="/path/to/carla/PythonAPI/carla:$PYTHONPATH"
Timeout of 10 seconds is sometimes too low, so do not be afraid to
increase it:
- --timeout 9999
+ --timeout 99
Check out the scenarios from the scenario runner and run some:
python scenario_runner.py --list
python scenario_runner.py --scenario ChangeLane_1 --reloadWorld
-Init coordinates of ego are in XML file, e.g. for `ChangeLane_1`
+Init coordinates of ego are in XML file, e.g., for `ChangeLane_1`
scenario in `srunner/examples/ChangeLane.xml` file. Find the coordinates
and focus on them:
- https://carla-scenariorunner.readthedocs.io
+ROS bridge
+----------
+
We probably do not need ROS Scenario Runner, as we can trigger scenarios
locally. We only need to control the ego from ROS.