You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: README.md
+20-9
Original file line number
Diff line number
Diff line change
@@ -28,7 +28,7 @@
28
28
## Installation
29
29
30
30
To run the LSY Autonomous Drone Racing project, you will need 2 repositories:
31
-
-[pycffirmware](https://github.com/utiasDSL/pycffirmware) - `main` branch: A simulator for the on-board controller response of the drones we are using to accurately model their behavior
31
+
-[pycffirmware](https://github.com/utiasDSL/pycffirmware/tree/drone_racing) - `drone_racing` branch: A simulator for the on-board controller response of the drones we are using to accurately model their behavior.
32
32
-[lsy_drone_racing](https://github.com/utiasDSL/lsy_drone_racing) - `main` branch: This repository contains the drone simulation, environments, and scripts to simulate and deploy the drones in the racing challenge
33
33
34
34
### Fork lsy_drone_racing
@@ -62,7 +62,7 @@ In addition, you also need to install the pycffirmware package from source with
| sim2real |**Yes**| Real-life hardware |**Yes**|*No*| Sim2real transfer |
96
99
@@ -100,7 +103,7 @@ The config folder contains settings for progressively harder scenarios:
100
103
You can choose which configuration to use by changing the `--config` command line option. To e.g. run the example controller on the hardest scenario, you can use the following command
101
104
102
105
```bash
103
-
python scripts/sim.py --config config/level3.yaml
106
+
python scripts/sim.py --config config/level3.toml
104
107
```
105
108
106
109
## The online competition
@@ -240,11 +243,19 @@ pip install cfclient
240
243
conda deactivate
241
244
```
242
245
246
+
### Vicon bridge
247
+
TODO: Expand
248
+
243
249
### Common errors
244
250
245
251
#### libNatNet
246
252
If libNatNet is missing either during compiling crazyswarm or launching hover_swarm.launch, one option is to manually install it. Download the library from its [github repo](https://github.com/whoenig/NatNetSDKCrossplatform), follow the build instructions, and then add the library to your `LIBRARY_PATH` and `LD_LIBRARY_PATH` variables.
# "pyb_gnd_drag_dw": PyBullet with ground effect, drag, and downwash.
15
+
physics = "pyb"
16
+
17
+
camera_view = [5.0, -40.0, -40.0, 0.5, -1.0, 0.5]
18
+
sim_freq = 500# Simulation frequency, in Hz
19
+
ctrl_freq = 500# Controller frequency, in Hz. This frequency is used to simulate the onboard controller, NOT for the environment's step function
20
+
gui = false# Enable/disable PyBullet's GUI
21
+
22
+
[sim.disturbances.action]
23
+
type = "GaussianNoise"
24
+
std = 0.001
25
+
26
+
[sim.disturbances.dynamics]
27
+
type = "UniformNoise"
28
+
low = [-0.1, -0.1, -0.1]
29
+
high = [0.1, 0.1, 0.1]
30
+
31
+
[env]
32
+
id = "DroneRacing-v0"# Either "DroneRacing-v0" or "DroneRacingThrust-v0". If using "DroneRacingThrust-v0", the drone will use the thrust controller instead of the position controller.
33
+
reseed = true# Whether to re-seed the random number generator between episodes
34
+
seed = 1337# Random seed
35
+
freq = 30# Frequency of the environment's step function, in Hz
36
+
symbolic = false# Whether to include symbolic expressions in the info dict. Note: This can interfere with multiprocessing! If you want to parallelize your training, set this to false.
37
+
sensor_range = 0.45# Range at which the exact location of gates and obstacles become visible to the drone. Objects that are not in the drone's sensor range report their nominal position.
38
+
39
+
[env.track]
40
+
# Tall gates: 1.0m height. Short gates: 0.525m height. Height is measured from the ground to the
41
+
# center of the gate.
42
+
[[env.track.gates]]
43
+
pos = [0.45, -1.0, 0.525]
44
+
rpy = [0.0, 0.0, 2.35]
45
+
[[env.track.gates]]
46
+
pos = [1.0, -1.55, 1.0]
47
+
rpy = [0.0, 0.0, -0.78]
48
+
[[env.track.gates]]
49
+
pos = [0.0, 0.5, 0.525]
50
+
rpy = [0.0, 0.0, 0.0]
51
+
[[env.track.gates]]
52
+
pos = [-0.5, -0.5, 1.0]
53
+
rpy = [0.0, 0.0, 3.14]
54
+
55
+
# Obstacle height: 1.05m. Height is measured from the ground to the top of the obstacle.
0 commit comments