Professional Documents
Culture Documents
Abstract—Nowadays, Unmanned Aerial Vehicles (UAVs) are Plane, Copter or Rover, without the need for any hardware. It
widely deployed in many contexts (civilian and military). Real consists of a build of the autopilot code, using C++ language,
experiments using UAVs are costly; therefore, the performances which serves to run an autopilot on your computer directly for
of UAVs systems should be analyzed before their deployments.
Accordingly, researchers and software engineers developed sev- testing, consequently, the simulation is self-contained. SITL
eral simulations tools, environments and frameworks for UAV becomes an exceedingly practical tool since end-product can
systems evaluation. In this context, this study highlights and misbehave in-flight. It influences on avoiding hazard situations
identifies the most suitable simulators for UAVs flights and and preserving costly equipment being damaged. To connect
UAVs managements. This paper details the requirements, the to the SITL, two ports can be used. The port 14550 using the
goals, the strengths and the weakness of each studied tools.
This investigation helps researchers to identify and to select UDP protocol or the port 5760 using the TCP protocol.
the adequate UAVs performances analysis tools that satisfy their The second component of the UAV systems is the GCS, it
needs.
Index Terms—Unmanned Aerial Vehicle; UAV system; Flight TABLE I
Simulators; Ground Control Station. UAV S CLASSIFICATION
1496
can be used on the local network thanks to the multiplayer Besides, models can be imported from meshes developed in
protocols developed for the multi-aircraft environment. More- other programs likes Inkscape or Solidworks, with the need
over, different multiple UAVs initialized in various instances some extra information about inertia and mass. It is possible
for multiple mode can coordinate and communicate in the to import Digital elevation models (DEM) or heightmaps.
ambient environment. This feature can be used for air traffic
control or formation flight simulation. E. Microsoft AirSim
FlightGear permits to choose between three Flight Dynamics Microsoft AirSim [27] is a simulator developed by Mi-
Models (FDMs). In fact, an FDM contains some mathematical crosoft for the machine learning development. The simulator is
equations which are used to compute the physical forces acting revealed in February 2017. The simulator uses Unreal Engine
in a simulated aircraft. Forces could be drag, thrust, and lift. 4 to render the simulation more photo-realistic as illustrated in
Every simulated aircraft must use one type of the FDMs Fig. 4. The simulator gives the possibility of interfacing with
models. Examples of the popular FDMs are YASim, JSBSim, Mavlink, and it is possible to run SITL and HITL with the
and UIUC. FlightGear can run SITL and HITL and it is used pixhawk firmware such as Ardupilot and PX4. There exist
for various academic projects [15]. APIs for both Python and C++. Airsim has implemented
monocular and depth cameras, whereas, other sensors, like
C. JMavSim lidars, are not developed. The Airsim simulator is only a
JMavSim [20] is a multirotor simulator and it is developed quadrotor simulator, other UAVs are not supported. The great
by PX4. It is a simple and lightweight quadrotor simulator visuals can be a downside because it demands powerful GPUs
and it can run SITL and HITL. As shown in Fig. 3. JMavSim to run.
has a Micro Aerial Vehicle Link [37](MAVlink) interface and
is continuously incorporated with the PX4 firmware. It can
be integrated with both ROS and flight controller firmware.
JMAVSim graphical aspect is created by Java3d. It uses the
UDP protocol for communication. Whereas there is no easy
way to integrate extra sensors or obstacles in the simulation,
and there is no possibility of simulating a visual inspection.
Fig. 4. Flying a multirotor in Microsoft AirSim. The three boxes at the bottom
are depth camera, depth segmentation, and First Person View (FPV)
F. UE4Sim simulator
UE4Sim [28] simulator is developed in 2017 at the King
Abdullah University of Science and Technology. It is used
in various fields of computer vision such as object tracking,
object detection, autonomous navigation, multi-agent collab-
oration, etc. UE4Sim is built on the Unreal Engine 4 and it
generates photo-realistic simulation for autonomous cars and
Fig. 3. Flying a multirotor in JMavSim UAVs as shown in Fig. 5. UE4Sim allows access not only to
visual data captured from sensors mounted in the simulated
environment but also semantic information.
D. Gazebo
Gazebo [21] is a simulator implemented at the University III. G ROUND CONTROL STATION
of Southern Californa since 2002; since 2009 it has been used In fact, there is a large variety of GCS software application
with ROS [22]. Gazebo is developed for quadrotor and any which runs on a ground-based computer such as QGround-
robot. It uses the Ogre3D visualisation tool and permits the Control [29], Mission Planner [30], MAVProxy [33], UGCS
choice between four physics engines: ODE [23], Simbody [32], that will be studied in this article.
[24], DART [25], and Bullet [26] giving it great flexibility.
Gazebo support Ardupilot and PX4 with the possibility to A. QgroundControl
run SITL and HITL. Moreover, it is easy to create worlds QgroundControl is an open source ground control station
and models in Gazebo which are implemented in a custom (GCS) developed by Lorenz Meier [29] and written in C++
XML format named Simulation Description Format (SDF). using the Qt libraries . This GCS operate on different platforms
1497
TABLE II
COMPARISON OF AVAILABLE UAV S SIMULATORS
1498
TABLE III
C OMPARISON BETWEEN GCS SOFTWARE
GCS
QGroundControl Mission Planner UGCS MAVProxy
software
Interface Graphical Graphical Graphical Command
Commercial Free version
/ Free Free with limited Free
Free capabilities
Support
Yes No Yes Yes
MAVLink
Platform
for Yes No Yes No
Android
Dji, Innoflight
Micropilot
PX4 Pro
Mikrokopter Ardupilot
ArduPilot(APM)
Pilot ArdupilotPX4 Microdrones MAVLink
MAVLink
Parrot compatible
compatible
MAVLink
compatible
module that shows the UAV’s current position and waypoints. UAV features described in an XML file. Furthermore, its code
MAVProxy is commonly employed by developers to interact source is accessible for modification.
with SITL. It has the ability to forward messages from a We used the ArduPilot, more specifically an UAV copter as
UAV via UDP protocol to others GCS on other devices [35]. a SITL to testing. Afterwards, we simulated an environment
MAVProxy used in [36] to implement attacks on UAV system (Fig. 8.) and choose to use the FlightGear to visualize the
in order to exploit gaps and vulnerabilities of the MAVLink simulation in real time and in a real environment, with its
protocol. opportunity to display the scene in 3D. And for the man-
agement and the supervision of the UAV, we employ the
QgroundControl station.
Several studies [38] prove that The MAVLink protocol has
security gaps. For this purpose, this simulation is performed
in order to send and receive MAVLink messages, like in the
real case. Thus, we will sniff the network traffic, decode
the messages exchanged to recognize the weaknesses of this
protocol, in order to modify and secure it.
1499
correspondence. [11] Coopmans, Calvin, Michal Podhradsk, and Nathan V. Hoffer. ”Software-
and hardware-in-the-loop verification of flight dynamics model and flight
control simulation of a fixed-wing unmanned aerial vehicle.” Research,
Education and Development of Unmanned Aerial Systems (RED-UAS),
2015 Workshop on. IEEE, 2015.
[12] A. Meyer, X-plane. [Online]. Available: http://www.x-plane.com.
[13] Thurber, Matt. ”Technology Advances Flight Training Field.” Aviation
International News (2017).
[14] Perry, Alexander R. ”The flightgear flight simulator.” Proceedings of the
USENIX Annual Technical Conference. 2004.
[15] http://www.flightgear.org/Projects/747-JW/
[16] Lepej, Peter, Angel Santamaria-Navarro, and Joan Sola. ”A flexible
hardware-in-the-loop architecture for UAVs.” Unmanned Aircraft Systems
(ICUAS), 2017 International Conference on. IEEE, 2017.
[17] Worth, Derek B., Brian G. Woolley, and Douglas D. Hodson. ”Swarm-
Sim: a framework for modeling swarming unmanned aerial vehicles using
hardware-in-the-loop.” The Journal of Defense Modeling and Simulation
(2017): 1548512917715154.
Fig. 9. Exchange of command between FlightGear and QgroundControl [18] J. Craighead, et al. A survey of commercial & open source unmanned
vehicle simulators. Robotics and Automation, 2007 IEEE International
Conference on. IEEE, 2007.
V. C ONCLUSION [19] O. Matsebe, C. M. Kumile, and N.S. Tlale. A review of virtual simulators
for autonomous underwater vehicles (auvs). NGCUV, Killaloe, Ireland
In this paper, we presented a study about the most inter- (2008).
esting flight simulators and GCS that can be employed to [20] Available : https://pixhawk.org/dev/hil/jmavsim.
[21] Available : http://gazebosim.org.
modelling and managing UAVs system, in order to facilitate [22] http://www.ros.org
the choice for the researchers and developers in their works. [23] Smith, Russell. ”Open dynamics engine.” (2005): 3-2.
For our future researches, our choice will be focusing on using [24] Sherman, Michael A., Ajay Seth, and Scott L. Delp. ”Simbody: multi-
body dynamics for biomedical research.” Procedia Iutam 2 (2011): 241-
the QgroundControl station as GCS and FlightGear as flight 261.
simulator. [25] Wang, Danyao, Natalie Enright Jerger, and J. Gregory Steffan. ”DART:
Fast and flexible noc simulation using FPGAs.” WARP-5th Annual
ACKNOWLEDGMENT Workshop on Architectural Research Prototyping. 2010.
[26] Coumans, Erwin. ”Bullet physics engine.” Open Source Software:
This work is supported by the Tunisian program ”Tunisian http://bulletphysics. org 1 (2010): 3.
Federated Research Project” within the framework of the [27] Shah, Shital, et al. ”Airsim: High-fidelity visual and physical simulation
project Supervision Sensitive de lieux Sensibles multicap- for autonomous vehicles.” Field and Service Robotics. Springer, Cham,
2018.
teurs: Super-Sens . [28] Mueller, Matthias, et al. ”UE4Sim: A Photo-Realistic Simulator for
Computer Vision Applications.” arXiv preprint arXiv:1708.05869(2017).
R EFERENCES [29] https://docs.qgroundcontrol.com/en/
[1] He, Daojing, Sammy Chan, and Mohsen Guizani. ”Communication [30] http://ardupilot.org/planner/docs/mission-planner-overview.html
security of unmanned aerial vehicles.” IEEE Wireless Communications [31] http://ardupilot.org/planner/docs/mission-planner-ground-control-
24.4 (2017): 134-139. station.html
[2] Acevedo, Jose Joaquin, et al. ”Cooperative large area surveillance with [32] https://www.ugcs.com/en/supported drones autopilots.
a team of aerial mobile robots for long endurance missions.” Journal of [33] Andreescu, A. M. T., Dima, M., Istrate, A., Muresan, C., Visoiu, C.,
Intelligent & Robotic Systems (2013): 1-17. & Prvu, P. Autonomous System For Image Geo-tagging And Target
[3] Maza, Ivn, et al. ”Experimental results in multi-UAV coordination for Recognition.
disaster management and civil security applications.” Journal of intelligent [34] Mitra, S., & Land, B. (2013). Autonomous quadcopter docking system.
& robotic systems 61.1 (2011): 563-585. Cornell University.
[4] Bruzzone, Agostino, et al. ”Disasters and Emergency Management in [35] http://ardupilot.org/dev/docs/mavproxy-developer-gcs.html
Chemical and Industrial Plants: Drones Simulation for Education and [36] Butcher, N., Stewart, A., & Biaz, S. (2013). Securing the mavlink
Training.” International Workshop on Modelling and Simulation for communication protocol for unmanned aircraft systems. Appalachian
Autonomous Systems. Springer, Cham, 2016. State University, Auburn University, USA
[5] Barrado, Cristina, et al. ”Wildfire monitoring using a mixed air-ground [37] http://qgroundcontrol.org/mavlink/start
mobile network.” IEEE Pervasive Computing 9.4 (2010): 24-32. [38] Marty, J. A. (2013). Vulnerability analysis of the mavlink protocol for
[6] Albert, Anders, and Lars Imsland. ”Performance bounds for tracking mul- command and control of unmanned aircraft (No. AFIT-ENG-14-M-50).
tiple objects using a single UAV.” Unmanned Aircraft Systems (ICUAS), Air Force Institute Of Technology Wright-Patterson AFB Oh Graduate
2017 International Conference on. IEEE, 2017. School Of Engineering And Management.
[7] Shrinivasan, Lakshmi. ”Monocular Imaging-based Autonomous [39] http://mavlink.org/messages/common
Tracking for Low-cost Quad-rotor Design-TraQuad.” arXiv preprint
arXiv:1801.06847 (2018).
[8] Hodicky, Jan. ”Autonomous systems operationalization gaps overcome
by modelling and simulation.” International Workshop on Modelling and
Simulation for Autonomous Systems. Springer, Cham, 2016.
[9] Yapp, Justin, Remzi Seker, and Radu Babiceanu. ”UAV as a Ser-
vice: A Network Simulation Environment to Identify Performance and
Security Issues for Commercial UAVs in a Coordinated, Cooperative
Environment.” International Workshop on Modelling and Simulation for
Autonomous Systems. Springer, Cham, 2016.
[10] Shastry, Abhishek K., Mangal Kothari, and Abhishek Abhishek. ”Devel-
opment of Flight Dynamics Model of Quadrotor.” 2018 AIAA Guidance,
Navigation, and Control Conference. 2018.
1500