This repository shows how to implement an experimental setup environment for testing cooperative maneuvers in FlightGear.
If you find this work useful in your research, please cite the main paper which can be found here.
Text citation
L. Persson and B. Wahlberg, "Verification of Cooperative Maneuvers in FlightGear using MPC and Backwards Reachable Sets," 2018 European Control Conference (ECC), Limassol, 2018, pp. 1411-1416.
BibTeX citation
@inproceedings{persson2018verification,
title={Verification of cooperative maneuvers in {FlightGear} using {MPC} and backwards reachable sets},
author={Persson, Linnea and Wahlberg, Bo},
booktitle={2018 European Control Conference (ECC)},
pages={1411--1416},
year={2018},
organization={IEEE}
}
- Update the path to JSBSim in
./flightgear/run_flightgear.sh
- Copy the protocols to the Flightgear/Protocols folder
- An example simulation is run using the script
start_uav_ugv_sim.py
. Note that Python 3 has to be used. This should open a control GUI, from where FlightGear can be started with theStart
button.
The script fgpython/datamonitor.py
is used to show the live data being written in the files found in the "logs" folder.
The simulations were run on a Intel Core i7 CPU 3.40 GHz x 8 stationary computer running Ubuntu 16.04.
This is the software required to run the simulations. In bracket is the version it has been tested with.
- FlightGear [v2019.1.1]
- JSBSim [v1.0]
- Python 3 [3.6]
Some optional packages
In order for the vehicle simulations to be displayed together, FlightGear multiplay mode is used. There is a delay in the transmission of data between the instances, causing lag in the visualization. To better this, enable multiplayer lag correction in FlighGear: Multiplayer -> Lag Settings.