blob: e3ca6df5d1cf126f7679415527496621c34dbac9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
## Setting up CARLA
You can follow the steps provided in the [CARLA documentation](https://carla.readthedocs.io/en/latest/start_quickstart/#carla-installation) for installing CARLA.
We recommend using the [latest release](https://github.com/carla-simulator/carla/releases/), and using the supported Python version to run the `carla_to_CAN.py` Script.
1. Running the CARLA Server
```bash
# Move to the installation directory
$ cd /path/to/CARLA_<version>
# Start the CARLA Server
$ ./CarlaUE4.sh
# To run using minimum resources
$ ./CarlaUE4.sh -quality-level=Low -prefernvidia
```
You may also add the `-RenderOffScreen` flag to start CARLA in off-screen mode. Refer to the various [rendering options](https://carla.readthedocs.io/en/latest/adv_rendering_options/#no-rendering-mode) for more details.
Another way of running the CARLA server without a display is by using [CARLA in Docker](https://carla.readthedocs.io/en/latest/build_docker/).
2. Starting a Manual Simulation
```bash
# Navigate to directory containing the demo python scripts
#
$ cd /path/to/CARLA_<version>/PythonAPI/examples
```
Create a Python virtual environment and resolve dependencies
```bash
$ python3 -m venv carlavenv
$ source carlavenv/bin/activate
$ pip3 install -r requirements.txt
# Start the manual_control.py script
$ python3 manual_control.py
```
## Converting CARLA data into CAN
The `carla_to_CAN.py` script can be run run alongside an existing CARLA simulation to fetch data and convert it into CAN messages based on the [agl-vcar.dbc](https://git.automotivelinux.org/src/agl-dbc/plain/agl-vcar.dbc) file.
While the `record_playback.py` script is responsible for recording amd playing back the CAN data for later sessions.
_NOTE_: This does **not** require the CARLA server to be running.
To access these scripts, clone the [AGL Demo Control Panel](https://gerrit.automotivelinux.org/gerrit/admin/repos/src/agl-demo-control-panel,general) project.
```bash
# Move to the Scripts directory
$ cd /path/to//agl-demo-control-panel/Scripts
# Fetch the agl-vcar.dbc file
$ wget -nd -c "https://git.automotivelinux.org/src/agl-dbc/plain/agl-vcar.dbc"
```
Create a Python virtual environment and resolve dependencies
```bash
$ python3 -m venv carlavenv
$ source carlavenv/bin/activate
$ pip3 install -r requirements.txt
# Optionally, set up the vcan0 interface
$ ./vcan.sh
```
1. Converting CARLA Data into CAN
```bash
$ python -u carla_to_CAN.py
# OR
$ python -u carla_to_CAN.py --host <carla_server_ip> --port <carla_server_port>
```
2. Recording and Playback of CAN messages
```bash
$ python -u record_playback.py
# OR
$ python -u record_playback.py --interface (or) -i can0 # default vcan0
```
|