Since our simulation environment was programmed to work both offboard the drone and in Paparazzi, it is implemented as a submodule. See the update-to-date code in the simulation-pipeline repository. This means that before running Paparazzi, it is critical to ensure that the submodule has been initialized, cloned locally, and updated on your computer. You can check if this is the case by seeing if the submodules/simulation-pipeline directory contains any files: it should. You can initialize and update the submodule by running the following command in a terminal that has been navigated to the root directory of this repository (paparazzi fork).
git submodule update --remote --force submodules/simulation-pipeline
If the command does not work try the following:
git submodule init
git submodule update submodules/simulation-pipeline
Alternatively, you can simply clone the simulation-pipeline repository to your local machine into the directory submodules/simulation-pipeline of this repository.
Our code uses opencv_bebop and hence requires running in Ubuntu 20.04 (not 22.04!).
All files and modules relating to the obstacle detection and avoidance algorithm can be found by searching for "group_10" in this repository.
Contact @martinstarkov by emailing M.Starkov@student.tudelft.nl if you have trouble getting the submodules to work.
Paparazzi is a free open source software package for Unmanned (Air) Vehicle Systems. For many years, the system has been used successfuly by hobbyists, universities and companies all over the world, on vehicles of various sizes (11.9g to 25kg). Paparazzi supports fixed wing, rotorcraft, hybrids, flapping vehicles and it is even possible to use it for boats and surface vehicles.
Documentation is available here https://paparazzi-uav.readthedocs.io/en/latest/
More docs is also available on the wiki http://wiki.paparazziuav.org
To get in touch, subscribe to the mailing list [paparazzi-devel@nongnu.org] (http://savannah.nongnu.org/mail/?group=paparazzi), the IRC channel (freenode, #paparazzi) and Gitter (https://gitter.im/paparazzi/discuss).
Instructions for installation can be found on the wiki (http://wiki.paparazziuav.org/wiki/Installation).
Quick start:
git clone https://github.com/paparazzi/paparazzi.git
cd ./paparazzi
./install.sh
For Ubuntu users, required packages are available in the [paparazzi-uav PPA] (https://launchpad.net/~paparazzi-uav/+archive/ppa), Debian users can use the [OpenSUSE Build Service repository] (http://download.opensuse.org/repositories/home:/flixr:/paparazzi-uav/Debian_7.0/)
Debian/Ubuntu packages:
- paparazzi-dev is the meta-package on which the Paparazzi software depends to compile and run the ground segment and simulator.
- paparazzi-jsbsim is needed for using JSBSim as flight dynamics model for the simulator.
Recommended cross compiling toolchain: https://launchpad.net/gcc-arm-embedded
conf: the configuration directory (airframe, radio, ... descriptions).
data: where to put read-only data (e.g. maps, terrain elevation files, icons)
doc: documentation (diagrams, manual source files, ...)
sw: software (onboard, ground station, simulation, ...)
var: products of compilation, cache for the map tiles, ...
-
type "make" in the top directory to compile all the libraries and tools.
-
"./paparazzi" to run the Paparazzi Center
-
Select the "Bixler" aircraft in the upper-left A/C combo box. Select "sim" from upper-middle "target" combo box. Click "Build". When the compilation is finished, select "Simulation" in Operation tab and click "Start Session".
-
In the GCS, wait about 10s for the aircraft to be in the "Holding point" navigation block. Switch to the "Takeoff" block (lower-left blue airway button in the strip). Takeoff with the green launch button.
-
Power the flight controller board while it is connected to the PC with the USB cable.
-
From the Paparazzi center, select the "ap" target, and click "Upload".
- From the Paparazzi Center, select the flight session and ... do the same as in simulation !