You are on page 1of 9

2020 International Conference on Unmanned Aircraft Systems (ICUAS)

Athens, Greece. September 1-4, 2020

A Gazebo/ROS-based Communication-Realistic Simulator


for Networked sUAS
Sangwoo Moon1 , John J. Bird1 , Steve Borenstein2 , and Eric W. Frew1

Abstract— Although communication is a critical factor of


situational awareness and performance on networked sUAS,
most simulators do not provide realistic wireless communication
modules. It prevents realizing communication among multiple
UA and information sharing, which yields significantly different
results compared with actual results in the real world. This
paper presents a communication-realistic simulator to improve
more realistic results from coordination or cooperative plan-
ning/control of networked sUAS. The simulator in this paper is
based on Gazebo/ROS with ArduPilot, where ArduPilot-Socket-
API (APS) which generates aircraft data to be usable in ROS
from ArduPilot is implemented. The wireless transceiver plugin
in Gazebo is used to mimic the wireless communication between
two UA with aids of the Hata-Okumura model for wireless Fig. 1: Gazebo/ROS-based simulator that deploys two UA
radio propagation and quadrature phase-shift keying (QPSK) to localize one ground target. Two UA share their target
for data package modulation. Simulation results describe how
realistic communication in the presented simulator affects data information over communication that is emulated by Gazebo
delivery concerning different communication-related parame- wireless transmitter/receiver plugins. The delivered data and
ters. This paper also gives how well the presented simulator its localization results are visualized by RViz in real-time.
emulates communication status realistically by comparing it
with communication data gathered in real flight tests.

I. I NTRODUCTION multiple sUAS (e.g., task allocation, cooperative information


gathering) also needs enough number of flight tests to support
Communication impacts the overall performance of net- its performance guarantees. However, simulation testbeds can
worked small unmanned aircraft systems (sUAS). It affects help us for experimental evaluation by rapidly reproducing
sharing information between unmanned aircraft (UA) which its environments [1]. Moreover, the assessment process is
can be related to situational awareness. Many networked convenient to analyze due to the easy procedure in terms of
sUAS missions that require a cooperative/coordinated frame- changing simulation configurations or system input parame-
work are based on how much well the networked system ters.
exchanges information between UA. It represents a property The important issue of using simulator is to prepare
of sharing information as a team behavior, which leads tests in real-world conditions. One of the critical points in
to the situation when the information is aggregated over implementing the simulator is that the simulation should give
communication. Figuring out how much communication im- realistic environments. It is essential to show promising data
pacts on the overall performance of the networked sUAS is compared with results from real-world conditions. However,
important to design more feasible results in the real world. although communication plays as a critical condition of
In particular, efficient communication tools are desired to networked sUAS, many approaches have been considered
examine approaches in the use of multiple sUAS in a realistic in perfect communication [2], [3], [4] or the communication
environment. with simple models (e.g., limited communication channels
A simulator is an effective tool for experimenting with [5], [6], disk models [7], [8]) in their simulation.
multiple, networked sUAS. The realistic simulator can be Several simulators have been presented that emulate wire-
performed as a prior step of doing the real flight tests. The less communication models [9]. Although Stage does not
flight tests of a team of sUAS require its operational costs provide a general wireless communication model, a simple
and are difficult to realize as the number of unmanned aircraft wireless model such as a constant communication range that
increases. The operation has a different aspect compared can be adjustable as an input parameter can be available
with handling a single sUAS. Evaluating algorithms of as a patch [10]. It also gives a basic formulation of radio
propagation such as the Friis model and log distance-based
*This work was supported by Center for Unmanned Aircraft Systems (C-
UAS) and by the National Science Foundation under grants IIP-1535707 and pass loss. Webots supports radio emitters and receivers under
IIP-1251537. infrared bandwidth. Similar to Stage, ARGoS also configures
1 Smead Aerospace Engineering Sciences, University of Colorado Boul-
maximum transmission range and direction [11]. USARSim
der, Boulder, CO 80303, USA sangwoo.moon@colorado.edu
2 Integrated Remote and In Situ Sensing (IRISS), University of Colorado is a simulation tool that mimics the message exchange proce-
Boulder, Boulder, CO 80303, USA dure between two robots. Unlike other simulators, USARSim

978-1-7281-4277-7/20/$31.00 ©2020 IEEE 1819

Authorized licensed use limited to: CALIFORNIA INSTITUTE OF TECHNOLOGY. Downloaded on October 18,2020 at 11:51:20 UTC from IEEE Xplore. Restrictions apply.
uses a server that handles wireless communications as a and its profile in terms of signal frequency and distance
middle-ware in order to manage communication messages. between two UA. In particular, the simulation demonstrates
Its communication characteristics such as range are mainly how communication channel is well implemented compared
computed by an indoor radio propagation model of which with data obtained from real flight tests.
parameters are induced by wall attenuation factor [12]. The key features and contributions of this paper are:
ARGoS also similarly provides communication environments • An integrated framework of sUAS simulator based on
with wireless sensors and actuators. The wireless devices use Gazebo/ROS with ArduPilot and APS,
a simple communication model under predefined range [13], • A realistic wireless communication model and its imple-
which is similar to the disk models. Still, more sophisticated mentation to be usable in Gazebo/ROS-based simulator,
communication models in terms of pass loss and stochastic • Simulation results and analysis of wireless communica-
factors should be considered to serve more realistic environ- tion by comparing the results with real flight data.
ments. Besides, the approaches mentioned previously still
have an issue with formulating information flow for data II. G AZEBO /ROS- BASED S IMULATOR F RAMEWORK
sharing over communication between sUAS, which has been The presented simulator is from an integrated framework
considered abstractly. among the necessary components. The components are based
This paper presents a communication-realistic simula- on Gazebo/ROS with ArduPilot. There are several techni-
tor based on Gazebo and robot operating system (ROS) cal issues to be tackled for integration. The first issue is
that provides an imperfect communication environment for the presented simulator is built based on open-source. It
networked sUAS. Gazebo is an open-source 3D robotics means a data conversion procedure is required in order
simulator operated in real-time. The Gazebo is widely used to guarantee the compatibility between one component to
in the robotics field because of its high fidelity physical another. Secondly, the simulator should provide the basic
engine and various type of sensors [14]. ROS is a middle- environment that supports convenient user interfaces for
ware robotics system that provides services designed for assessing designed algorithms (e.g., planning, estimation).
an integrated hardware/software components such as robot Lastly, the simulator should be feasible and robust so that
motion/path planning, low-level device control, sensors and it delivers data in a synchronized manner and shows the
actuators, and message and data package management [15]. efficiency of data exchange.
ROS is designed as an open-source that users can choose The presented simulator uses additional modules for the
configurations and libraries to realize the sensors, robot conversion process for integration. In addition, the simu-
states, and robot motion planning/control. Gazebo supports lator uses synchronized data sharing using actions/services
a plugin that realizes the functionality and message/service messages in ROS. The simulator internally connects its
calls using ROS [16]. components through Gazebo/ROS messages and TCP/UDP
On top of that, ArduPilot is an unmanned vehicle autopilot connections (Fig. 2). An APS/ROS bridge locates between
served as an open-source that can supports various types of UA planning/control components and APS, and the APS
autonomous mobile systems such as multi-rotors, fixed-wing also connects with the autopilot module which is based on
aircraft, helicopters, ground rovers, and boats/submarine ve- ArduPilot(Section II-A). The autopilot component is also
hicles [17]. Although ArduPilot is widely used for operating connected with the Software-in-the-loop (SITL) supported by
sUAS, however, the autopilot software is not directly appli- ArduPilot that allows us to operate sUAS without hardware
cable to operate the Gazebo/ROS-based simulator because be components (Section II-C). The UA data are obtained from
its functionality in message-passing and packaging. Mavros the Gazebo with Gazebo/ROS plugins (Section II-B) and pass
have been developed which converts sUAS messages in a through another plugin that is used as a bridge between
protocol of Mavlink to ROS in order to tackle the issue the SITL and the Gazebo (Section II-D). The presented
[18]. Instead of using Mavros due to its unstable flight architecture also provides more user-friendly interfaces for
plan engagement, this paper presented the ardupilot-socket- algorithm implementation and its evaluation than using flight
API (APS). The APS is a customized middle-ware software commands via Mavlink/Mavros protocols.
module that yields aircraft states as a topic and engages flight
plans via actions supported by ROS in real-time. A. APS: ArduPilot-Socket-API
The presented simulator implements single-hop, meshed APS retrieves state data from and sends commands to the
wireless communication for data sharing in networked sUAS. autopilot, providing an interface which is accessible to other
The communication model based on the packet erasure software components via world wide web or local network
channel is presented of which the probability of delivery connections. An APS instance for each UA connects to the
is given by received signal strength and quadrature-phase autopilot via TCP on a local network and provides global
shift keying (QPSK) modulation. This paper uses the Hata- access to that UA. At the client end, an APS/ROS bridge
Okumura model as a radio propagation equation to get the module makes UA state data available as ROS messages
received signal strength which can well emulate the wireless and transmits commands received in ROS messages to the
signals in the real world. autopilot through APS. Multiple APS and APS/ROS bridge
The communication performance on the presented simu- instances can be run on a single computer by indexing the
lator is analyzed through received signal power distributions autopilot and APS port numbers to each UA.

1820

Authorized licensed use limited to: CALIFORNIA INSTITUTE OF TECHNOLOGY. Downloaded on October 18,2020 at 11:51:20 UTC from IEEE Xplore. Restrictions apply.
Fig. 2: Gazebo/ROS-based simulator architecture. The presented simulator forms as an integrated framework of Gazebo/ROS
and ArduPilot/SITL. Note the communication between two UA is not represented, which is shown in Figure 4.

TABLE I: aircraft/state message profile

Property Format Description Note


header Header frame ID, ROS time stamp
mav id unit32 aircraft ID
euler geometry msgs/Vector3 roll, pitch, yaw Euler frame
lla geometry msgs/Vector3 longitude, latitude, altitude ECEF frame
local position geometry msgs/Vector3 local position vector (x, y, z) Cartesian frame
inertial velocity geometry msgs/Vector3 velocity vector (vx , vy , vz ) inertial frame
v ias float32 indicated airspeed from pitot-static sensor
v gnd float32 ground speed
speed float32 airspeed body frame
mode string flight mode (AUTO, GUIDED, RTL, MANUAL)
base mode string flight mode commanded by ground station
heartbeat float32 fail-safe indicator
flight time float32 aircraft flight time sec
voltage float32 battery voltage
current float32 battery current
wind geometry msgs/Vector3 wind vector (wx , wy , wz ) body frame

The APS/ROS bridge converts flight data received by not provided either. To tackle the technical challenge, the
the APS to aircraft/state topic in ROS. The presented simulator uses Gazebo/ROS plugins as add-on
aircraft/state topic contains current position, attitude, modules to realize realistic environments.
flight mode, throttle arming status, battery voltage, estimated
wind, and other flight data in terms of flight operation (Table Three plugins are majorly implemented in the pre-
I). It allows us to retrieve current UA data in real time sented simulator: LiftDragWind plugin (based on
with ROS messages. The APS/ROS bridge also receives the the stock LiftDrag plugin but modified to support
waypoint command in ROS actions that give flight-plan and wind), ROSWeather plugin, and Sensor (based on
execute the aircraft guidance at the autopilot module. Gazebo ROS pkgs with modified wireless transceiver for
communication). The LiftDragWind plugin uses aerody-
B. Gazebo/ROS Plugin namic coefficients that are given as parameters from Gazebo
Gazebo has a challenging issue on emulating aerodynamic aircraft model database. The ROSWeather plugin gives
forces. Compared with other simulators such as FlightGear the background wind computed based on the given wind-
or Xplane, the vanilla version of Gazebo does not support map database. The Gazebo ROS pkgs for Sensor plugin
the accurate aerodynamic effects. In particular, the wind supports necessary interfaces to simulate robots in ROS via
and weather that crucially impact the aircraft dynamics are ROS messages, services, and dynamic reconfigure [16].

1821

Authorized licensed use limited to: CALIFORNIA INSTITUTE OF TECHNOLOGY. Downloaded on October 18,2020 at 11:51:20 UTC from IEEE Xplore. Restrictions apply.
C. ArduPilot/SITL by using namespace property of ROS that differentiates based
The ArduPilot is an autopilot toolkit that can operate on an on which UA sends.
extensive types of platforms. The SITL allows us to execute III. C OMMUNICATION M ODEL AND
the ArduPilot without requiring any specific hardware [19]. G AZEBO /ROS- BASED I MPLEMENTATION
The latest version of ArduPilot supports various types of
unmanned vehicles to be realized in built-in simulators. The A. Communication Model
sensor and flight data are obtained based on a flight dynamics The simulation introduced in this paper considers a single-
model in the SITL. The ArduPilot with SITL provides the hop communication. In other words, UA i directly sends its
full spectrum of development toolkit available in C++. It measurements, aircraft states, and decisions to UA ` when
allows us to develop and to test new relative components the UA i is in a neighbor set of the UA `. Consider a situation
in ArduPilot in a straightforward manner. Another merit that the communication model is formulated as a probability
of ArduPilot is that it interfaces to external simulators. conditioned on the transmitted data package and induced
The advantage supports interlocking between ArduPilot and by communication channel parameters. It is mathematically
robotics physical simulators such as Gazebo. formulated as
The UDP port numbers that connect between the ArduPilot i j
` ψk ∼ Pco (i` Ψjk |` Φjk ; i` Θk ) (1)
and SITL are indicative only and can be changed by multiple
UA. For example, Figure 2 illustrates the ports as 5501 for where i` ψkj and Pco (•) describe a data package of target j
receiving data and 5502 for transmitting data in view of UA. received by the UA i from another UA ` at time k and a
However, it varies by indices of UA, so they can vary to be probability function of communication respectively. i` Ψjk and
other port numbers (e.g., 5504 for a receiver and 5505 for a ` j
Φk are set of all possible outcomes of receiving data over
transmitter). The index of UA determines the allocation of a communication from UA ` to UA i and a data package of
port number in the presented simulator. UA ` that can be transmitted respectively. In addition, Θk
D. ArduPilot/SITL-Gazebo Plugin denotes a set of all communication channel parameters which
contains transmitted power, power loss, antenna sensitivity,
The ArduPilot/SITL-Gazebo plugin supported by [20] pro- and the relative distance between UA i and UA `.
vides a data linkage between ArduPilot/SITL and Gazebo. The presented simulation considers a packet erasure chan-
The Gazebo provides the ArduCopterPlugin class that nel as a communication model. The User datagram protocol
interfaces ArduCopter from ArduPilot stack modeled after (UDP) is a good example of the packet erasure channel,
SITL starts. The class needs parameters that are related to which is widely used for multi-agent systems in various
flight control gains and rotor throttle, which can be config- applications (e.g., radio frequency (RF) emitters tracking [22]
ured in object description of Gazebo which is represented in or network broadcasting [23]) [24].
sdf format. Because there is an issue of synchronization The packet erasure channel has two outcomes: succeed
between ArduPilot/SITL and Gazebo, some modifications to deliver or fail to deliver. The outcomes are generated
for Gazebo interface to prevent blocking Gazebo are imple- by a probability of delivery over the communication net-
mented in the presented simulator. Due to the fact that the work that obeys a Bernoulli distribution mainly determined
Gazebo does not provides accurate airspeed, as mentioned by communication parameters i` Θk [24], [25]. Let i` βk =
in Section II-B, the plugin uses the airspeed sensor imple- i i
` βk (` Θk ) denote a probability of the event when the data
mented in ArduPilot. are successfully delivered from UA ` to UA i at time k.
E. Gazebo and RViz Then the communication probability of (1) is represented as
if i` Ψjk = ` Φjk
 i
The major role of Gazebo is to support the presented β
Pco (i` Ψjk |` Φjk ; i` Θk ) = ` k i . (2)
simulator with feasible physical engines and realistic sensor 1 − ` βk if i` Ψjk = ∅
modules. On top of that, Gazebo is a powerful tool to visual-
ize the behavior of a fleet of aircraft and ground targets. The Consider neighbors of the UA i notated as Nki is a set of UA
visualization helps us the understanding of situations (e.g., of which transmitted data can be captured by the UA i over
whether UA goes to the expected location, how fast a fleet the communication. non-neighbors are in the complement of
of sUAS achieves a given mission, or how sUAS performs Nki . An example that the presented simulator considers as a
when part of UA fails due to the lack of communication or data package is a set of measurements, current aircraft state,
accidents). and decided waypoint set from the planner. Then
RViz is a 3D visualization tool for ROS applications  ` j ` `
h yk , sk , sT i if ` ∈ Nki
i j
[21]. It provides a view of robot models, captured sensor ` Ψk = (3)
∅ otherwise
information, and replay of captured data. The simulator in
this paper uses RViz as a tool of visualization for measure- where ` yjk is a measurement observed and sent by the UA `
ments and estimated target states while representing a set and T = {k + 1, k + 2, · · · , k + T } is a group of planning
of trajectories from networked sUAS. Thus, related ROS horizon considered by the planner of UA ` (See Table II for
messages are subscribed by RViz, where the messages are details). Note there is a case when the ` ∈ Nki but i ∈ / Nk`
generated by each UA. Note that the messages are classified due to (2).

1822

Authorized licensed use limited to: CALIFORNIA INSTITUTE OF TECHNOLOGY. Downloaded on October 18,2020 at 11:51:20 UTC from IEEE Xplore. Restrictions apply.
Fig. 3: Flow chart of delivered data package generation over the communication channel. The received signal strength
is generated by the formulation of the Hata-Okumura model. The determination of whether data is delivered through
communication is obtained with the aids of quadrature phase-shift keying (QPSK) that represents data modulation under the
packet erasure channel (PEC).

TABLE II: communication message profile: realization of i` Ψjk

Property Format Description Note


header Header frame ID, ROS time stamp
freq unit16 UA ` communication signal frequency aircraft ID
state aircraft/state UA ` current position, mode aircraft/state message format
waypoints geometry msgs/Points[] waypoint vector of UA `
measurements RF power[] received RF signal strength of ground targets measured by UA `

Algorithm 1 Packet erasure channel-based data package (dBm). In (4), i` Λtx , Γ`tx , and Γirx represents the transmitted
generator over communication power of UA `, antenna gains of UA ` and UA i, respectively.
j j
1: Begin with data package i` Φk = h` yk , s`k , s`T i, communication In general, the transmitted power is typically 30 dBm for 1-
parameter set i` Θk = hΛ`tx , Γ` , Γi , λ` , α, δi , nk , nbyte i, and Watt IEEE 802.11a (Wifi) communication protocol [29] and
current position of aircraft i sik . takes 2.30 as antenna gain when a lossless antenna is used
2: Compute received signal stength i` Λrx k using (4). [30]. λ` is the wavelength of the signal propagated from
3: Compute bit error rate i` ηk using (6) and (8).
4: Compute probability of delivery failfure i` βk using (5).
UA `, α ∈ [6, 12] represents a parameter that determines by
5: Generate a random value w from uniform distribution U(0, 1). terrain characteristics. In particular, the parameter goes to 6
6: if w > i` βk then when the terrain is flat and empty, and it is close to 12 under
7: Take data package i` ψkj = h` yjk , s`k , s`T i. urban environments. Lastly, sk , δi ≤ 0, and vi denote the
8: else position of UA, the communication sensitivity that is related
9: Take data package i` ψkj = ∅.
to the noise floor, and the signal strength noise that asymptot-
10: end if
11: return i` ψkj . ically follows a normal distribution N (0, σ 2 ), respectively.
The probability density function of distribution N (0, σ 2 ) has
been investigated in terms of signal frequency and terrain
profile [31]. Note the received power takes the absolute value
The presented simulator uses the QPSK as a modulation
of noise vi because of the assumption that the signal noise
of communication [26] where the received signal strength
only decreases the received signal strength.
is based on the Hata-Okumura propagation model [27],
The next step is to figure out the probability i` βk using the
[28]. The model is well defined for various communication
received signal strength. The QPSK formulates the probabil-
topology (e.g., point-to-point, broadcast). It means the model
ity of delivery failure i` βk that can be modeled as
can apply to the problem where this paper considers. The
model also captures mobile antennas where its height is 1–10 i
= 1 − exp(nbyte log(1 − i` ηk ))
` βk (5)
m, base station of which antenna heights is 30–200 m, and
communication link distances of 1–10 km. Let i` Λrx k be a where nbyte is the byte number of delivered data package,
received power of signal delivered from UA ` to UA i. Then i
` ηk represents bit error rate (BER) that is formulated as
i rx
` Λk follows s 
i rx
i rx
` Λk = Λ`tx + Γ` + Γi − 20 log10 (λ` ) − 20 log10 (4π) i
` ηk = erfc
 P (` Λk )  . (6)
P (nk )
− 10α log10 (ksik − s`k k) + δi − |vi |. (4)
Note that all properties are represented in milli-decibel where erfc(•) is a complementary error function that is

1823

Authorized licensed use limited to: CALIFORNIA INSTITUTE OF TECHNOLOGY. Downloaded on October 18,2020 at 11:51:20 UTC from IEEE Xplore. Restrictions apply.
Note that the CommunicationStatus topic exists
according to UA. Let i bk = {i1 bk ,i2 bk , · · · , ina bk } rep-
resents CommunicationStatus topic published from
WirelessReceiver module in UA i. Its element i` bk is
formulated as an indicator represented as
if w > i` βk

i True
` bk = False otherwise
(9)

where the condition is implemented by the line 6 of Algo-


rithm 1.
Fig. 4: Communication framework between sUAS i and
IV. S IMULATION R ESULTS AND A NALYSIS
sUAS `. Data packages over communication are realized
by VirtualCommunication module in the presented A. Simulation Configuration
simulator which represents the communication model. The purpose of simulations is to analyze communication
properties in terms of distributions of received wireless signal
power and probability of delivery on the packet erasure
defined as channel model. The simulation results on communication
Z x channel performance should follow the results from real
1 2
erfc(x) = 1 − √ et dt (7) networked sUAS flight tests. The presented simulator used
π −x realistic parameters that are from the specifications of actual
and nk is a noise floor, which represents how well the communication devices (See Table III). The simulation con-
receiver captures a signal from the sum of all noise sources sidered a situation when each UA has 68 mW communication
within a measurement system. In (6), the function P (•) signal power under IEEE 802.11 (Wifi) protocol where
represents the conversion from milli-decibel to power which networked sUAS was performed in flat terrain with trees
obeys and grasses are scattered. Due to the protocol regulation on
Wifi, the channel bandwidth was restricted (See frequency
P (x) = 0.001 × 10x/10 . (8) range configuration of Table III). 18.0 dBm was configured
as transmitter power from the unit conversion of 63 mW.
Algorithm 1 shows how to generate an outcome of data The simulation results in this paper answer the following
package from the packet erasure channel-based communica- questions: i) Does the signal power under the presented
tion. Note that a binary random generator logic is used to get communication model follow the Gaussian distributions? ii)
the outcome from a communication event (see Lines from 5 How does the relationship between received signal power
to 10). and the relative distance between two UA exist under com-
plicated signal strength formulation? iii) How would be the
B. Communication Implementation probability of delivery profile with respect to the relative
The simulator in this paper implements the communication distance? iv) How well the presented simulator match the real
based on WirelessTransceiver module supported data? Section IV-B evaluates the presented simulator based
by sensor plugins built in Gazebo [32]. The major change on these technical questions.
is to build topics that contain delivered data packages B. Results and Analysis
represented in Table II using a ROS-based framework.
However, encapsulating data under the module may not be 1) Received signal power analysis: Because the received
admissible technically because the module should receive signal power modeled as (4) is a function of signal fre-
required data of Table II. The WirelessTransmitter quency and relative distance, a series of simulations on the
and WirelessReceiver modules inherited by received power concerning the frequency and distance were
WirelessTransceiver module should be initialized performed. The simulation considered a condition that 500
and publish its topics before spawning ArduPilot node.
It yields a circular flow in the initialization because the TABLE III: Simulator parameter configuration
delivered data are from ArduPilot node. Therefore, it is
more realistic to emulate communication in the presented Parameter Quantity
simulator by publishing CommunicationStatus receiver antenna gain 2.30 dBm
topic through Algorithm 1 instead of publishing a data transmitter antenna gain 2.30 dBm
transmitter power 18.0 dBm
package. VirtualCommunication node subscribes all noise floor -340.0 dBm
CommunicationStatus topics and all other topics from byte number 40
all UA to be packaged. The VirtualCommunication sensitivity -90.0
node eventually build the delivered data package based frequency range 2412-2462 MHz, 5180-5815 MHz
terrain parameter 9.0
on the subscribed CommunicationStatus topic (See noise variance 6 dBm
Figure 4).

1824

Authorized licensed use limited to: CALIFORNIA INSTITUTE OF TECHNOLOGY. Downloaded on October 18,2020 at 11:51:20 UTC from IEEE Xplore. Restrictions apply.
2412Mhz 2462Mhz 5180Mhz 5815Mhz
200 200 200 200

150 150 150 150


Frequency

Frequency

Frequency
Frequency
100 100 100 100

50 50 50 50

0 0 0 0
-360 -355 -350 -345 -340 -335 -330 -325 -360 -355 -350 -345 -340 -335 -330 -325 -360 -355 -350 -345 -340 -335 -330 -325 -360 -355 -350 -345 -340 -335 -330 -325
Rx power [dBm] Rx power [dBm] Rx power [dBm] Rx power [dBm]
120m 240m
150 150 360m 480m
150 150

100 100
100 100
Frequency
Frequency

Frequency

Frequency
50 50 50 50

0 0 0 0
-285 -280 -275 -270 -265 -330 -320 -310 -300 -345 -340 -335 -330 -325 -320 -365 -360 -355 -350 -345 -340 -335
Rx power [dBm] Rx power [dBm] Rx power [dBm] Rx power [dBm]

Fig. 5: Histograms of received signal power of communication in terms of frequency (upper) and relative distance (lower).

1
-240

-260
probability of delivery 0.8
Rx power [dBm]

-280
0.6
-300

-320 0.4

-340
0.2
-360 simulation
real
-380 0
60 120 180 240 300 360 420 480 540 600 0 100 200 300 400 500 600
distance [m] distance [m]
Fig. 6: Boxplot of received signal power in terms of relative distance (left) and comparison of the simulated probability of
delivery and real results from flight tests (right).

data packages were transmitted from one UA to another. say that power was increased due to the signal noise. This is
As expected in (4), the shape of distributions on the signal because it breaks the basic property of Gaussian distributions.
strength does not depends on the frequency (See upper Second, the RF signal propagation was not linear, rather it
subfigures of Figure 5). Only the magnitude and range obeys the rule of the log functions. In other words, the log-
of signal strength were related to the frequency. As the distance function does not allow the noise under Gaussian
frequency increased the received signal strength decreased distribution. Instead, the noise contains the property on log
with a diminishing rate. This is because of submodular functions.
property on the log function. 2) Probability of delivery analysis: The probability of
Similar results were also captured in the signal power delivery was analyzed in terms of the relative distance
distributions with respect to communication range (See lower between two UA (See right-side of figure 6). The crosses
subfigures of Figure 5 and left-side of Figure 6). The rate in blue of Figure 6 represents the obtained probability from
of received power was decreased when the relative distance a series of simulation runs by changing relative distance
grows constantly. All shapes of distributions in Figure 5 were parameters with the same frequency condition. Note that both
similar which conclude that the distribution is not changed subfigures of Figure 6 are under the same conditions. The
by frequency or relative distance. probability of delivery was computed by using the following
equation as
Note that the distributions did not follow Gaussian distri-
i
bution. Two factors affected distribution. Firstly, the signal i ` Nrx
` βk = iN
(10)
noise just reduced the received power. It is not reasonable to ` tx

1825

Authorized licensed use limited to: CALIFORNIA INSTITUTE OF TECHNOLOGY. Downloaded on October 18,2020 at 11:51:20 UTC from IEEE Xplore. Restrictions apply.
where i` Nrx is the number of data packages that are suc- virtual communication module that determines the network
cessfully delivered to the wireless receiver and i` Ntx is connection status.
the number of data packages that are transmitted from the The presented simulator was evaluated by analyzing the
wireless transmitter. The probability of delivery drops when communication-related data under realistic parameter condi-
the relative distance is over 300 meters. Furthermore, the tions. The received signal power was investigated in terms of
probability is close to zero if the distance is over 500 meters. the communication channel frequency and relative distance.
In other words, there are stochastic properties on communi- Firstly, the distributions of received signal strength generated
cation between 300 meters and 500 meters of distance. by the presented simulator did not follow the Gaussian prop-
The results were further investigated by comparing with erties. The probability of delivery in terms of distance did not
the empirical data which were gathered in real flight ex- follow the linear property. The results also indicated that the
periments. The flight test was performed using two UA stochastic properties of communication should be considered.
under the same condition described in Table III. The wireless The simulated communication results were also compared
communication obeyed IEEE 802.11 protocol at 2.40 GHz with real flight test results to check whether the presented
using Atheros Mini-PCI Wifi cards [22]. The data were simulator shows realistic communication performance.
obtained from 21 flight tests by using 40-byte data packets The presented simulator is expected to use in various
with 63 mW transmit power. The real data are represented on applications in networked sUAS by serving realistic commu-
the right side of Figure 6 as circular markers in red which are nication conditions. For instance, the simulator can illustrate
averages over 20 m bins. The same terrain information where how the communication impacts on the data sharing and
the flight tests performed was also applied to the presented information gathering in networked sUAS under cooperative
simulator. target tracking scenarios. Ultimately, the presented simulator
The comparison results present the fact that the presented is expected to reduce the consumed time for verification pro-
simulator generates communication conditions that are simi- cedure of algorithms on networked sUAS while it improves
lar to real data results. However, there were some differences the results more realistically. The simulator can shrink gaps
between them. Firstly, the real probability of delivery showed between simulation and real-world situations.
around 0.90 between the distance from 100 meters to 300
meters of distance, which was different from simulated R EFERENCES
results. This is due to the issue of the communication sensi- [1] Z. Yan, L. Fabresse, J. Laval, and N. Bouraqadi, “Building a ros-based
tivity that is hard to predict under a complicated environment. testbed for realistic multi-robot simulation: Taking the exploration as
an example,” Robotics, vol. 6, no. 3, p. 21, 2017.
The reduction rate on the probability was different, although [2] M. Lauri, E. Heinänen, and S. Frintrop, “Multi-robot active informa-
the simulated results followed well the real results. This is tion gathering with periodic communication,” in 2017 IEEE Interna-
because the terrain parameter did not accurate. Nevertheless, tional Conference on Robotics and Automation (ICRA), Singapore,
May 2017, pp. 851–856.
the overall shape of the probability of delivery profile was [3] B. Charrow, V. Kumar, and N. Michael, “Approximate representations
well-matched with the real data in terms of communication for multi-robot control policies that maximize mutual information,”
range where the probability of delivery decreases. Autonomous Robots, vol. 37, no. 4, pp. 383–400, 2014.
[4] L. N. Balico, H. A. Oliveira, E. L. Souza, R. W. Pazzi, and E. F.
Nakamura, “On the performance of localization prediction methods
V. C ONCLUSIONS for vehicular ad hoc networks,” in Computers and Communication
A communication-realistic simulator for networked sUAS (ISCC), 2015 IEEE Symposium on. IEEE, 2015, pp. 359–364.
[5] Y. Kantaros and M. M. Zavlanos, “Global planning for multi-robot
was presented in this paper. The presented simulator was im- communication networks in complex environments,” IEEE Transac-
plemented based on Gazebo/ROS with ArduPilot/SITL soft- tions on Robotics, vol. 32, no. 5, pp. 1045–1061, Oct 2016.
ware environment. The integration of Gazebo and ArduPilot [6] M. Thammawichai, S. P. Baliyarasimhuni, E. C. Kerrigan, and J. B.
Sousa, “Optimizing communication and computation for multi-uav
was presented by introducing the modification of ArduPi- information gathering applications,” IEEE Transactions on Aerospace
lot/SITL Gazebo plugin that operates as a connection be- and Electronic Systems, vol. 54, no. 2, pp. 601–615, Apr 2018.
tween two software via Gazebo messages and UDP channels. [7] J. Hu, L. Xie, J. Xu, and Z. Xu, “Multi-agent cooperative target
search,” Sensors, vol. 14, no. 6, pp. 9408–9428, May 2014.
The presented architecture also described how the algorithms [8] R. Dutta, L. Sun, and D. Pack, “Multi-agent formation control with
that users want to evaluate are interlocked and should be maintaining and controlling network connectivity,” in American Con-
implemented by the APS module. The APS module converts trol Conference, Jul 2016, pp. 1036–1041.
[9] M. Kudelski, L. M. GambardellaGianni, and A. Caro, “Robonetsim:
received aircraft data from ArduPilot as ROS messages. An integrated framework for multi-robot and network simulation,”
Furthermore, The APS delivers planning decisions to the Robotics and Autonomous Systems, vol. 61, no. 5, pp. 483–496, May
autopilot module. 2013.
[10] B. Gerkey, R. T. Vaughan, and A. Howard, “The player/stage project:
This paper formulated the communication model and Tools for multi-robot and distributed sensor systems,” in Proceedings
its implementation in the presented simulator. The packet of the 11th international conference on advanced robotics, vol. 1,
erasure channel was implemented that is widely used as 2003, pp. 317–323.
[11] O. Michel, “Cyberbotics ltd. webotsTM : professional mobile robot sim-
a model of data package delivery. The Wifi communica- ulation,” International Journal of Advanced Robotic Systems, vol. 1,
tion link was implemented based on the RF propagation no. 1, p. 5, 2004.
model (Hata-Okumara radio propagation) and the signal [12] S. Carpin, M. Lewis, J. Wang, S. Balakirsky, and C. Scrapper, “Usar-
sim: a robot simulator for research and education,” in Proceedings
modulation (QPSK). This paper also introduced how to real 2007 IEEE International Conference on Robotics and Automation.
communication is implemented in Gazebo which used the IEEE, 2007, pp. 1400–1405.

1826

Authorized licensed use limited to: CALIFORNIA INSTITUTE OF TECHNOLOGY. Downloaded on October 18,2020 at 11:51:20 UTC from IEEE Xplore. Restrictions apply.
[13] C. Pinciroli, V. Trianni, R. O’Grady, G. Pini, A. Brutschy, M. Bram- [24] S. Moon and E. W. Frew, “A communication-aware mutual in-
billa, N. Mathews, E. Ferrante, G. Di Caro, F. Ducatelle, et al., “Argos: formation measure for distributed autonomous robotic information
a modular, multi-engine simulator for heterogeneous swarm robotics,” gathering,” IEEE Robotics and Automation Letters, vol. 4, no. 4, pp.
in 2011 IEEE/RSJ International Conference on Intelligent Robots and 3137–3144, Oct 2019.
Systems. IEEE, 2011, pp. 5027–5034. [25] Y. Mostofi, “Communication-aware motion planning in fading envi-
[14] “Gazebo,” accessed on: Jan. 24, 2020 [Online]. Available: ronments,” in proceedings of 2008 IEEE International Conference on
http://www.gazebosim.org/. Robotics and Automation (ICRA), May 2008, pp. 3169–3174.
[15] “Ros.org—powering the world’s robots,” accessed on: Jan. 24, 2020 [26] L. W. I. Couch, Digital and Analog Communications. Prentice-Hall.
[Online]. Available: https://www.ros.org/. [27] M. Hata, “Empirical formula for propagation loss in land mobile radio
[16] “Gazebo: Tutorials - connect to ros,” accessed on: Jan. 24, 2020 services,” IEEE Transactions on Vehicular Technology, vol. 29, no. 3,
[Online]. Available: http://gazebosim.org/tutorials?cat=connect ros. pp. 317–325, Aug 1980.
[17] “Ardupilot documentation,” accessed on: Jan. 24, 2020 [Online]. [28] Y. Okumura, E. Ohmori, T. Kawano, and K. Fukuda, “Field strength
Available: https://ardupilot.org/ardupilot/index.html. and its variability in vhf and uhf land-mobile radio service,” Review
[18] “mavros-ros wiki,” accessed on: Jan. 24, 2020 [Online]. Available: of the Electrical Communication Laboratory, vol. 16, no. 9-10, pp.
http://wiki.ros.org/mavros. 825–73, Sep 1968.
[19] “Sitl simulator,” accessed on: Jan. 24, 2020 [Online]. Available: [29] “dbm-wikipedia,” Feb 2020, accessed on: Feb. 28, 2020 [Online].
https://ardupilot.org/dev/docs/sitl simulator software in the loop.html. Available: https://en.wikipedia.org/wiki/DBm.
[20] “Swiftgust/ardupilot gazebo,” accessed on: Jan. 24, 2020 [Online]. [30] “Ieee standard definitions of terms for antennas,” IEEE Std 145-1993,
Available: https://github.com/SwiftGust/ardupilot gazebo. pp. 1–32, July 1993.
[21] “rviz - ros wiki,” accessed on: Jan. 24, 2020 [Online]. Available: [31] S. I. Popoola, A. A. Atayero, and N. Faruk, “Received signal strength
http://wiki.ros.org/rviz. and local terrain profile data for radio network planning and optimiza-
[22] M. Stachura and E. Frew, “Communication-aware information- tion at gsm frequency bands,” Data in Brief, vol. 16, p. 972–981, Feb
gathering experiments with an unmanned aircraft system,” Journal of 2018.
Field Robotics, vol. 34, no. 4, pp. 736–756, 2017. [32] “Gazebo/gazebo/sensors,” accessed on: Jan. 24, 2020 [Online]. Avail-
[23] M. Mohammadi Amiri and D. Gündüz, “Cache-aided content delivery able: https://github.com/arpg/Gazebo/tree/master/gazebo/sensors.
over erasure broadcast channels,” IEEE Transactions on Communica-
tions, vol. 66, no. 1, pp. 370–381, Jan 2018.

1827

Authorized licensed use limited to: CALIFORNIA INSTITUTE OF TECHNOLOGY. Downloaded on October 18,2020 at 11:51:20 UTC from IEEE Xplore. Restrictions apply.

You might also like