# JSBSim Simulation
JSBSim (opens new window) is a open source flight simulator ("flight dynamics model (FDM)") that runs on Microsoft Windows, Apple Macintosh, Linux, IRIX, Cygwin (Unix on Windows), etc. Its features include: fully configurable aerodynamics and a propulsion system that can model complex flight dynamics of an aircraft. Rotational earth effects are also modeled into the dynamics.
Supported Vehicles: Plane, Quadrotor, Hexarotor
Note
See Simulation for general information about simulators, the simulation environment, and simulation configuration (e.g. supported vehicles).
# Installation (Ubuntu Linux)
Note
These instructions were tested on Ubuntu 18.04
- Install the usual Development Environment on Ubuntu LTS / Debian Linux.
- Install a JSBSim release from the release page (opens new window):
dpkg -i JSBSim-devel_1.1.0.dev1-<release-number>.bionic.amd64.deb
- (Optional) FlightGear may (optionally) be used for visualisation. To install FlightGear, refer to the FlightGear installation instructions).
# Running the Simulation
JSBSim SITL simulation can be conveniently run through a make
command as shown below:
cd /path/to/PX4-Autopilot
make px4_sitl jsbsim
This will run both the PX4 SITL instance and the FlightGear UI (for visualization). If you want to run without the FlightGear UI, you can add HEADLESS=1
to the front of the make
command.
The supported vehicles and make
commands are listed below (click on the links to see the vehicle images).
Vehicle | Command |
---|---|
Standard Plane | make px4_sitl jsbsim_rascal |
Quadrotor | make px4_sitl jsbsim_quadrotor_x |
Hexarotor | make px4_sitl jsbsim_hexarotor_x |
The commands above launch a single vehicle with the full UI. QGroundControl should be able to automatically connect to the simulated vehicle.
# Running JSBSim with ROS
To run JSBSim with ROS:
- Clone the
px4-jsbsim-bridge
package into your catkin workspace:cd <path_to_catkin_ws>/src git clone https://github.com/Auterion/px4-jsbsim-bridge.git
- Build the
jsbsim_bridge
catkin package:catkin build jsbsim_bridge
Note
You must have already set MAVROS in your workspace (if not, follow the instructions in the MAVROS installation guide).
- So start JSBSim through ROS using the launch file as shown:
roslaunch jsbsim_bridge px4_jsbsim_bridge.launch