FlightGear Vehicles
Last updated
Last updated
This topic lists/displays the vehicles supported by the PX4 FlightGear simulation, and the make
commands required to run them (the commands are run from terminal in the PX4-Autopilot directory). The supported types are: plane, autogyro and rover (there are specific frames within these types).
:::tip For the full list of build targets run make px4_sitl list_vmd_make_targets
(filter out those that start with flightgear_
). :::
:::note The FlightGear page shows how to install and use FlightGear in more detail (this page is a summary of vehicle-specific features). :::
FlightGear has models for many planes. The most suitable one for UAV development is currently the Rascal RC plane (which also exists in multiple variants).
The variants differ mainly by the FDM model. All variants have a common feature selection table that can be activated by pressing the =
key on the computer keyboard.
There is a pop-up table that could be used for advanced features activation.
The most relevant option is:
Smoke - generates a smoke trail to enhance the visibility of aircraft in the air (smoke and particles option needs to be activated in FG View > rendering options > Particles checkbox).
Trajectory markers - displays orthogonal markers along the trajectory of flight.
Trajectory markers show the absolute flight path in the world coordinates, and the smoke trail shows the relative path in the air mass.
The primary variant of the Rascal model has a combustion piston-engine model. This results in a non-zero idle power causing a rotation of propeller on idle engine RPM.
The launch command is:
A Rascal vehicle with an electric engine.
:::note This variant needs the latest FlightGear code (sources at least from 26 April 2020). Otherwise, the FlightGear crashes because of an unexpected definition of electric engine. :::
Rascal JSBsim variant.
This variant does not have a direct make
option but can be manually selected in the rascal.json configuration file (part of PX4-FlightGear-Bridge). Simply change Rascal110-YASim
to Rascal110-JSBSim
in this file.
The only UAV autogyro model supported by FlightGear is TF-G1 Autogyro.
This rover is equipped with a towing hitch and might be used for aero-towing of other vehicles.
There is only an incomplete multirotor model. This is not yet usable (it is numerically unstable and needs an additional work).
A new vehicle model needs to be included as a git submodule into PX4-FlightGear-Bridge/models/ directory. This directory contains an control channel definition JSON file.
The file content meaning is as follows:
FgModel
- a precise case sensitive name of the FlightGear model corresponding to "XXXX-set.xml" in the model directory (where XXXX is the model name).
Url
is optional and it is not currently used. It is intended for future use to auto-download the models from web
Controls
- the most important part of the process of adding a vehicle. This section contains the mapping between the PX4 mixer file and FlightGear property tree.
The first number in a list selects a PX4 mixer output.
Path string is a FlightGear variable location in the property tree.
The last number in a list is a multiplier, allowing inversion or scaling of mixer input.
After preparing all these files a new vehicle need to be included in the PX4 make system.
The PX4 configuration is in /platforms/posix/cmake/sitl_target.cmake. The new vehicle's json name should be added to the list.