Sie sind auf Seite 1von 7

Proceedings of the 2014 IEEE/SICE International SaP2C.

2
Symposium on System Integration, Chuo University,
Tokyo, Japan, December 13-15, 2014
Scheduling UAVs to Bridge Communications in Delay-Tolerant
Networks Using Real-Time Scheduling Analysis Techniques
Jagun Kwon and Stephen Hailes

in direct contact.

Abstract— We present an approach to utilising unmanned


aerial vehicles (UAVs) as communication relays, in which a This paper investigates the problem of quickly positioning
dynamic positioning algorithm drives UAVs automatically to UAVs in such aforementioned application areas. In
achieve the best incoming and outgoing signal strength and particular, we present our work on enabling UAVs to
packet throughput among participating ground nodes. This
maximise communication quality by dynamically
approach can be applied to real-life scenarios with widely
distributed communicating nodes, for example, disasters like manoeuvring to a position where the packet delivery rate and
earthquakes with damaged communication towers, and signal-to-noise ratios (SNR) between participants are
harvesting sensor readings from distributed sensor nodes. maximised. UAVs may be deployed from different positions,
UAVs can establish a direct communication link between and eventually will find a position by constantly searching
multiple nodes if they are within communication ranges to the for the balance in SNR(s) and packet throughputs of
UAVs. If this is not possible, the UAVs may be scheduled to participating nodes. A PID controller is used for each
bridge communications between the nodes with some time communication path to drive the UAV in the correct
delay. In other words, a delay tolerant network (DTN) among
participating nodes can be formed whereby the UAVs fly over direction, meaning that the bigger the control error is (i.e.,
the nodes to collect, buffer and deliver data. This is useful in the difference in SNR and packet throughput), the faster the
scenarios such as harvesting data from a widely distributed UAV moves towards an optimal position.
sensor network (e.g., flood monitoring in jungle). In doing so, we have discovered an interesting behaviour
We provide a scheduling analysis framework to show if a that, if an area consisting of multiple ground-based nodes
UAV can cover a given set of distributed nodes. Each sensor cannot be covered by a single UAV (or a limited number of
node may have a different priority, required frequency of visits UAVs) to establish direct communication links through the
and communication range. The framework was inspired by the
response-time analysis approach for scheduling tasks in the relay, it is still possible to set up a form of delay tolerant
real-time scheduling literature. In essence, we analyse the network (DTN) for the given area. In such scenarios, the
worst-case response time and schedulability for a UAV to visit UAV will circulate among the nodes to buffer and deliver
and process communication requests for the lowest priority packets. This DTN-like behaviour may not be suitable for
node among the participants. real-time voice communications, but may be still worthwhile
We also demonstrate that this approach can interact with a for (push-to-talk voice) messaging or text/data driven
physics simulator that models wind speed and turbulence, and communications, where a few minutes of delay is usually
learn and optimise on possible routes and positions for UAVs.
tolerable. In this regard, we provide a scheduling analysis
framework and an illustration to show if a UAV can cover a
I. INTRODUCTION
given set of distributed nodes, which is inspired by the
In recent years, the use of lightweight, flexible unmanned response-time analysis approach for scheduling real-time
aerial vehicles (UAVs) has been a popular idea in diverse tasks in the real-time scheduling literature.
applications ranging from surveillance missions to rare The scope and contributions of the paper are as follows;
animal tracking. UAVs can be equipped with various • A dynamic, optimising algorithm for positioning UAVs
antenna technologies, GPS, video cameras, infra-led cameras to establish the best communication quality,
among others and can be deployed to incidents fast whilst • Application of the control theory (i.e., a PID controller
flying at low altitudes. This ability has motivated us to per communication path) to drive UAVs in bridging
consider utilising UAVs as communication relays in communications in order to maximise the signal-to-noise
scenarios such as cost-effective data harvesting in a widely (SNR) ratio and packet throughput among participants,
distributed sensor network (e.g., flood monitoring in jungles) • Formation of a priority-based delay tolerant network
as well as in the event of emergences (such as earthquakes, (DTN) among participating nodes that cannot establish
fires, and military operations and other disasters), where direct communication links using a UAV, and the
parts of the communication infrastructure could be damaged development of a framework for scheduling visits of a
and it is difficult to recover them within a short period of UAV and the worst-case response time analysis,
time, and hence no direct communication between nodes is • Integration with a realistic physics simulation model
possible. In such applications, UAVs can be used to extend that reflects the actual position of each UAV in the
the communication range of remaining facilities in order for presence of a varying degree of wind, turbulences, and
ground-based nodes to communicate with those that are not other physical conditions.
To the best of our knowledge, this is the first work to
Jagun Kwon and Stephen Hailes are both with University College analyse the schedulability of UAVs using the real-time
London (UCL), University of London, WC1E 6BT, UK (e-mail: analysis techniques and use the PID controller algorithm to
jagun.kwon@ucl.ac.uk, s.hailes@cs.ucl.ac.uk).

978-1-4799-6944-9/14/$31.00 ©2014 IEEE 363


position UAVs. • The packet throughputs for successfully delivered
This paper is organised as follows. Section 2 briefly packets between participating nodes to be balanced.
presents the system model used in this paper. Section 3 will • Bit error rates (BER) can also be measured if required
discuss the dynamic positioning algorithm for bridging The algorithm in Figure 1 attempts to find a place where
communications while Section 4 will present our scheduling the average SNR values of packets from and to different
analysis framework for delay-tolerant networks. Some sources become close to the same, meaning that the
simulation details will be given in Section 5. Limitations of communication relay is not biased towards any particular
our approach are given in Section 6. We draw a few node in terms of SNRs and stays exactly where needed the
conclusions and discuss future work in Section 7. most. In general, the UAV may fly at the lowest possible
altitude unless there are obstacles or it has reached the best
II. SYSTEM MODEL SNR on the given altitude and is trying to test SNR at
We assume that there are a set of UAVs available for use different altitudes. The SNR values may be aged over time
in bridging communications between a set of mobile and/or with an expiration time limit (e.g., exponential smoothing).
ground nodes spread over a certain area, which is In doing so, we use the SNRs and packet throughputs as
characterised as a grid space (e.g., 1x1m initially). The input to a PID controller for each communication path,
number of UAVs and participating nodes can vary which calculates the UAV’s next waypoints. This means that
dynamically. In other words, the system model consists of the bigger the control errors, the faster the UAV will move
• At least one or multiple cooperating UAVs that are to its next waypoint. The control errors are defined as
possibly deployed from various locations, follows in this context;
• A set of functional ground and/or mobile nodes in an • Packet throughput control error = the difference in
area with varying communication ranges characterised by packet throughput for communications between the UAV
their radio models. and each participating node on a single communication
We make the following assumptions, some of which may path where the UAV is used as a relay,
be possible to relax in the near future. • SNR control error = the difference in average SNR for
• A grid space of 1x1 metre for measuring and evaluating packets delivered to and from the UAV on a single
SNRs for different locations in a map, communication path.
• The signal-to-noise ratio (SNR) is measurable for each In essence, the algorithm instructs the UAV to move on
participating node (i.e., for each node, the SNR to and either x or y axis by MAX( PIDcal(Throughput),
from a UAV is measured and an SNR map is constructed), PIDcal(SNRs)) in order to make the greatest impact as early
• Packet throughputs, i.e., the number of packets as possible.
successfully delivered to a UAV from each ground station
per second are available,
• The use of a simple waypoint mobility model for UAVs’ Start=pos’ // UAV’s position
Initialise SNRMaps for each direction d of each comm. path p
movement, While true do
• The availability of the radio propagation model for each pos = pos’
wireless network technology and antenna used, Send/Receive echo msg to every node at a regular interval, i
Update SNRMaps // update SNRs for all paths for current pos
• The locations of all nodes are known,
Update PacketThru // update Packet throughput for all paths
When attempting to bridge communications, the UAV can
obtain the SNR values of packets from/to each participating // Move towards either node(n) or node (n+1) on the X axis
node in the presence of a realistic, user-configurable radio pos.x’ = MAX or MIN (PIDcal(p.node(n).PacketThru,
propagation model, and is able to calculate the packet p.node(n+1).PacketThru),
PIDcal(p.node(n).AvgSNRsum, p.node(n+1).AvgSNRsum))
throughput for successfully delivered packets between nodes // Move towards either node(n+2) or node (n+3) on the Y axis
and each UAV. pos.y’ = MAX or MIN (PIDcal(p.node(n+2).PacketThru,
p.node(n+3).PacketThru),
III. DYNAMIC UAV POSITIONING ALGORITHM FOR BRIDGING PIDcal(p.node(n+2).AvgSNRsum, p.node(n+3).AvgSNRsum))
pos’ = pos.x’ ⊕ pos.y’
COMMUNICATIONS
Fly to pos’ and Wait for next control period
A. THE PID-CONTROLLER BASED GREEDY ALGORITHM end while
The algorithm we describe below instructs each UAV to
move towards or away from certain participating nodes in Figure 1. The greedy UAV Positioning Algorithm
order to achieve the best communication quality for a given
set of nodes. One of the key goals of the algorithm is to The algorithm in Figure 1 records the average SNR values
reduce the time it takes to establish communication links for each grid cell as the UAV moves around. Unless the UAV
between nodes (hence, the use of a PID controller to drive a has regular periodic messages to deliver, it sends out echo
UAV). More specifically, the optimising criteria that we use request messages to all nodes involved at a regular interval.
to position UAVs are as follows. Upon receiving a returning packet with an SNR above a
• The SNRs (Signal-to-Noise Ratios) of packets from and preset threshold, the UAV will move towards a node whose
to each participating node to be equally balanced whilst SNR value is lower using the PID controller’s output. If it
maximising the combined SNRs for packets between does not receive any packet in return from any participating
nodes and the UAV on a communication path. node, it will keep moving towards the node that has not

978-1-4799-6944-9/14/$31.00 ©2014 IEEE 364


responded assuming it is out of communication range. In fly back and forth between the nodes in order to collect,
such cases the control error will be large, meaning that the buffer and deliver data. This is a simple case in which the
PID controller’s output will make the UAV move fast, and UAV only needs to find the signal strength and packet
the UAV will keep sending echo request message to the node throughput for each grid or position it flies over. Once the
in question. As soon as it receives a response with a valid required thresholds for signal strength and packet throughput
SNR and packet throughput, the PID controller will make are reached, the UAV can begin to collect or transmit data
judgements as to how fast the UAV should move. for a required amount of time or number of packets. If there
The UAV will keep manoeuvring until the number of are variances between visits in the amount of data to transfer
packets arriving from all participating nodes will balance out or time to hover on a particular node, we may only consider
at one point with the SNR values from the nodes being more the worst case for the purpose of the response time or
or less the same – reaching the most advantageous position schedulability analysis. Hence, the smaller the variances are,
for a communication relay in terms of the SNR and packet the more accurate such analyses will be overall.
throughputs. In general, the greater the number of deployed
UAVs is, the higher the coverage and performance will be.

IV.FORMATION OF A PRIORITY-BASED DELAY TOLERANT


NETWORK USING A UAV AND SCHEDULABILITY
ANALYSIS
When two or more nodes are out of direct communication
range even with the available UAV(s), such UAVs can fly
around to collect, buffer and deliver packets between the
participating nodes. This is possible when the quality of
service requirement is manageable (i.e., schedulable) and
visits are made at a regular frequency (or driven by some
kind of a priority mechanism with periods). This can be seen
as a real-time scheduling problem and it is possible to test
the schedulability or response times for a given set of nodes
and UAVs.
CATEGORISATION Figure 4. Case 3 - Indirect relay between nodes - a more complex case
First, we have categorised some of the possible cases for
one UAV and a number of nodes, which can be extended for Interesting problems arise when there are more than two
multiple UAVs. nodes and a subset of them can be covered by a UAV
simultaneously. For instance, in Case 3 in Figure 4 as
illustrated above, the UAV may need to fly to node 1 through
3 one by one. Alternatively, the UAV may only need to visit
Node 1 and 2 in turn if the radio ranges of Node 2 and 3
overlap with each other and can communicate with each
other because the UAV’s wireless comm range can reach
Node 3 through Node 2. Or, the UAV can take only Route 3
to communicate with Node 2 and 3 simultaneously, leaving
Figure 2. Case 1 - Bridging communication directly between nodes
Route 2 obsolete in either cases.
Starting with the simplest case as shown above in Figure 2
(Case 1), direct communication may be established using
one UAV. The UAV will move between the two nodes to
balance the SNRs and packet throughputs from and to each
of the nodes.
In the second case, as in Figure 3, there is no direct
communication link between two nodes and the UAV will

Figure 3. Case 2 - Indirect bridging example Figure 5. Case 4 - Indirect relay between nodes - a delay tolerant

978-1-4799-6944-9/14/$31.00 ©2014 IEEE 365


The cost of taking Route 1 and 3 may be different, and in communication path become balanced. The UAV can
this case, taking Route 1 may incur a shorter travel time for remember that position, to which it may fly over directly on
the UAV (assuming data from Node 3 are relayed instantly the next subsequent visits. This will save the overall travel
through Node 2 upon request, and wind and other physical time and, hence, improve the schedulability, response times,
conditions are the same), and hence is a better scheduling and/or area coverage.
strategy. If, however, there is strong head/tail wind on Route However, if there is an imbalance in the required
1, preventing the UAV to fly slowly, it would be beneficial to bandwidths for Node 2 and 3, the UAV may hover closer to
reschedule and take Route 3 instead. Such decisions can be one particular node to obtain a better signal strength or
made dynamically by considering the current physical packet throughput for that node.
circumstances, which we will show in the next section by UAV SCHEDULABILITY ANALYSIS
interacting with a physics simulator called QRSim [4]. One of the goals of this paper is to provide a
Here, we have discovered a few optimisation criteria; schedulability analysis framework determining whether a
• Minimising travel time for UAVs UAV can cover a set of nodes that are characterised by their
o Reducing UAVs’ total flight time priorities, communication times, distances from other nodes
• Schedulabiliy of a group of nodes by one UAV (travelling time or cost), required frequency of visits
o Meeting deadlines (periods), and deadlines.
o Improving communication efficiency Inspired by the well-known response time analysis in the
• Maximising coverage by one UAV. real-time literature [1, 2], we apply the same technique to
Similarly, Case 4 and 5 in Figure 5 and 6 respectively deal analyse the worst-case response time for the lowest priority
with geographically separated multiple nodes, in which node, which is the sum of the computation times and
some of them can communicate with each other blocking times of all higher priority nodes plus its own
simultaneously with the help of a UAV. As shown in Case 4, computation time. If the response time for the lowest priority
the UAV may first take Route 1, and then Route 2 as soon as node is within the deadline for the same node, it is said that
the signal strength and/or throughput for Node 2 reach the the whole nodes in the group can be schedulable with the
required thresholds. This will increase the chance of serving given UAV. This is for nodes with statically assigned
Node 2 and 3 concurrently. Whilst en route to Node 3, the priorities, hence, the following analogies.
UAV may have to stay or fly back if the signal strength
drops below the threshold. Alternatively, the UAV may only Real-time scheduling
UAV scheduling parameters
parameters
take Route 3 since it minimises the total travel time and can Processing elements (such as
handle requests for Node 2 and 3 simultaneously. Case 5 in UAV(s)
CPU)
Figure 6 illustrates this point. Tasks with a priority (P), Nodes with a priority (P), frequency of
period (T), deadline (D) visit (T), deadline per period (D)
Communication time (or the required
Computation time (C) on each number of packets to receive and
period (P) deliver) on each visit (P)
Time to travel determined by the
Context-switching time (i.e., distance to be covered / the maximum
jitters), and Blocking time (B) speed

Figure 6. Case 5 - Bridging communications forming a DTN

Finding a position with the best possible combined SNR


and throughput (i.e., Position 1 in Case 5) is one of the key
challenges in scheduling a UAV. Our approach relies on the
PID controller based algorithm introduced earlier that drives
a UAV between nodes in order to find a position where the
Figure 7. Scheduling a UAV for a DTN of nodes - an example
SNR value and packet throughput for each direction of

978-1-4799-6944-9/14/$31.00 ©2014 IEEE 366


For instance, assume there are three nodes as shown in the %100 # % 100 #
w31 = 100 + Max(10,12,20) + $ " (5 + 20 × 2) + $ 240 " (50 + 12 × 2)
example in Figure 7, and each of them is assigned a static $120 " $ "
priority depending on the criticality, value or importance of = 100 + 20 + 1(5 + 40) + 1(50 + 24)
the messages to be received and delivered to that particular = 239 s
node. % 239 # % 239 #
w32 = 100 + Max(10,12,20) + $ " (5 + 20 × 2) + $ 240 " (50 + 12 × 2)
Node Priority Comm. Time Period Deadline $ 120 " $ "
= 100 + 20 + 2(5 + 40) + 1(50 + 24)
1 1 5s 120s 120s
! = 284s
2 2 50s 240s 240s This shows that the lowest priority Node 3 is schedulable
3 3 100s 300s 300s with the current configuration, i.e., the response time 284s is
less than the 300s deadline.
Routes Distance Time to travel Note that in the equations above, the first blocking time is
for the UAV to travel to the node in question from anywhere
1 50m 10s within the group of nodes; we take the worst case unless we
2 60m 12s know exactly where the UAV is. This can be known at
runtime, and will be able to produce a less pessimistic result.
3 100m 20s
The second blocking time is for the time it takes for the
Response time and schedulability analysis UAV to visit a higher priority pre-empting node while
Based on the scheduling parameters above, we develop dealing with a current lower priority node’s request. This
and apply the following worst-case response time analysis must be doubled since the UAV will have to travel to and
framework that is adapted to our scenarios. from the higher priority node and hence the interruption is
% wn # longer.
win +1 = Ci + Bi + ∑ $ i " (C j + B j × 2) DISCUSSIONS
j∈hp ( i ) $ T j " The goals of the presented approach in general are 1)
!
where hp(i) is the set of tasks with priority higher than obtaining the worst-case response time to be able to test the
task i. schedulability for the given UAVs to cover a set of
B j × 2 is added every time the current node is interrupted participating nodes, 2) serving as many nodes as possible by
because of the time it takes for the UAV to travel to and one UAV, and, 3) designing and implementing the UAV
from a pre-empting higher-priority node. scheduler and to integrate in a network simulator, such as
By applying this to an example case above, we obtain the ns-3 [3]. To the best of our knowledge, this is one of the first
following results. We take the maximum blocking time out to analyse schedulability of UAVs, apart from commercial
of the travel times on all routes because we assume that the examples like [5], whose techniques are not well known.
UAV may start from any one of all the nodes. If the UAV is Bearing this in mind, we have the following discussion
launched from a distant location, the travel cost may be points.
added to the final response time. • The worst-case response time at any given position for a
UAV is defined by
Response time for Node 1 • the worst-case communication time,
w11 = 5 + Max(10,12,20) + 0 • the travel time (or blocking time or jitter), in which
nodes cannot communicate with UAVs, and
! = 25s
• interruptions made by high priority nodes.
Response time for Node 2
• Blocking times (i.e., travel times) may vary and must
% 50 #
w12 = 50 + Max(10,12,20) + ∑ $120 " (5 + 10 × 2) reflect the UAV’s current position in order to produce a
$ "
j∈hp ( i )
more accurate result. The overall schedulability is affected
! = 95s
B
Node 2 can only be interrupted by Node 1. So, ! j = 10.
Hence, the response time for Node 2 = 95 on the first
iteration. If this is reiterated,
% 95 #
w22 = 50 + Max(10,12,20) + ∑ $120 " (5 + 10 × 2)
j∈hp ( i ) $ "
! = 95s
The result is the same, 95s, hence the worst case response
time for Node 2 is 95s.
Response time for Node 3 =

Figure 8. Finding neighbouring nodes that can be served together

978-1-4799-6944-9/14/$31.00 ©2014 IEEE 367


initially by the starting position of the UAV. However, for 2) finding a waypoint to serve a given set of nodes that
the worst-case, we may consider rather pessimistic results minimises the distance the UAV has to travel from its current
of the response-time analysis. position.
• We assume the UAV knows where the nodes in a group For the first problem, it can be said that two nodes overlap
are, what their communication requirements are in terms each other directly in terms of communication range if the
of periods or frequencies of visit, maximum MVCR(node1) + MVCR(node2) > Dist(node1, node2). In
communication times, and travel times. addition, even if two nodes do not overlap directly, they can
• The heading direction or angle of UAVs often affects be served simultaneously if MCVR(node1) + MVCR(node2)
the communication times needed and link quality when the + 2MVCR(UAV) > Dist(node1, node2).
UAV is in contact with a node and trying to move towards Let us suppose that nodes that can be served
the next node, and may lengthen or shorten the travel time. simultaneously can be obtained by a function ServSim(node)
• The response time analysis can be pessimistic as a UAV which will return a set of nodes that overlaps each other in
can serve more than one node concurrently (which is one terms of MVCR either directly or indirectly and can be
of the limitations of the approach outlined above), and served by one UAV. Hence, in the example below the
must be extended to deal with multiple UAVs. In order ServSim returns
words, while a UAV is travelling it can serve more than ServSim(node1) = {}
one node, i.e., the UAV is opportunistically parallel ServSim(node2) = {node3}
processing communication requests. Hence, the ServSim(node3) = {node2}
communication times for closely located nodes whose Hence, node 2 and 3 can be served together and the ideal
communication ranges overlap may be reduced. We positions with good enough MVCR values will be an area on
outline some of the possible improvement strategies the grid space marked as + below. It must take into account
below. the UAV’s MVCR to come up with the area.
Improvement Strategies - Dealing with overlapping cases For the second problem, i.e., finding the shortest path
In the Case 3, 4 and 5 above, some of the nodes can be from the UAV’s current position to a waypoint where
served concurrently whilst a UAV is flying nearby two multiple neighbouring nodes can be served together, we need
separate nodes. This means that the response time can be to know where the UAV is located dynamically, and then
further reduced for the given nodes and the UAV may be calculate the nearest waypoint on the grid space out of a set
able to handle more nodes. Hence, finding nodes that can be of possible candidates. The current location of UAV affects
served simultaneously and instructing the UAVs to fly on a the decision.
new path to a new imaginary waypoint that minimises the Runtime Scheduler Design
communication and travel time is important. The original The response time analysis alone does not tell how nodes
remaining blocking time can be nullified as soon as UAV is should be scheduled or how UAVs should move at runtime.
in a viable/required communication range. Rather, it assumes the worst case scenario where all nodes
The blocking time for a communication/travel path is are activated simultaneously (i.e., the critical instance [2]),
calculated as follows, where Dist stands for the distance and determines whether a set of nodes are schedulable by a
between two nodes, MVCR the maximum viable UAV. For this reason, we need a runtime scheduler that
communication range between a node and a UAV, and S the actually manages the UAV’s movements among the
speed of the given UAV. participating nodes - a scheduler deployed on a UAV; we
Buav1, path1 =
Dist (node1, node2) MVCR(node1, uav1, path1) MVCR(node2, uav1, path1)
− − briefly describe the key algorithm and high-level
! S uav1 S uav1 S uav1
implementation details.
For instance, if the distance between two nodes is 10m, Runtime Scheduling Criteria
the UAV’s speed 5m/s, and the MVCRs for Node 1 and 2 are Scheduling criteria are dynamically determined by
both 2m, the blocking (i.e., travelling and non- • Time since last visit (t) to each node
communicating) time is 1.2s, because • Distance to the target node (d)
10m 2m 2m • Required frequency (f) for each node
Buav1, path1 = − − • Priority assignment strategy and priority for each station (p)
5m / s 5m / s 5m / s
• Threshold = (t * d)f
*w
! = 2s − 0.4s − 0.4s = 1.2s • When threshold reaches 1, the UAV must move to the node of
Based on this observation, we can create a new path interest
leading to a position where the UAV can serve more than There are a few priority assignment strategies in the
one node at the same time. In fact, we can come up with literature for real-time systems. The most common and
multiple positions on the grid space that quality as the widely known is the rate monotonic priority assignment
MVCRs for nodes that can be served simultaneously by one technique[1], which assigns the highest priority to ones that
UAV. But, among all of them, the one that results in the are executed most frequently (i.e., with the shortest period).
shortest blocking or travel time will be selected as the new In the case of scheduling UAVs over distributed nodes, this
shortest path and new waypoint position to serve a particular means assigning higher priorities to those that require more
set of nodes. Hence, this problem can be broken down into frequent visits. One variation to this is the deadline
1) deciding which neighbouring nodes can be served monotonic priority assignment technique, which assigns a
together (i.e., overlapping nodes in terms of MVCRs either higher priority to a more urgent task. It is also possible to
directly or indirectly with the help of a UAV), and assign priorities according to the value or importance of the

978-1-4799-6944-9/14/$31.00 ©2014 IEEE 368


data to receive. Priorities may change at runtime if there are received are shown. Notice that the numbers of packets
dynamic changes in the number of nodes or UAVs, or in the delivered climb constantly as the UAV is trying to reach an
scheduling requirements. For such scenarios, the earliest- optimal position between two nodes (node 3 and 4 in the
deadline-first (EDF) or other dynamic scheduling example). The SNR values are not clearly visible in the
frameworks can also be used – however, statically figure due to different scales (see the bottom), but they also
determining the worst-case response time would be fluctuate as the UAV is nearing the point where they balance
impossible in such cases. out eventually.

V. IMPLEMENTATION AND SIMULATION VI. LIMITATIONS


We have implemented the algorithm and example cases in The worst-case response time analysis is pessimistic, but
the ns-3 [3] with the following details; some improvement strategies are suggested in the
• Interchangeable radio & propagation models discussions section.
• 802.11 WiFi(b), Cost231, LogLossPropagation, etc The characterisation of nodes, i.e., by period,
• Waypoint Mobility model for UAVs (max speed 5m/s) communication time, and so on may be limiting in real-life.
• Constant mobility model for ground stations There may extra considerations or preferences to take into
• Sends/receives echo messages every second to check account (and other importance parameters).
signal strength & packet throughput In addition, the actual physical radio environment may be
imperfect and should be investigated. It is also necessary to
• Moves UAV towards a station with a weaker SNR &
lower packet throughput deal with interferences; we have used a simple jamming
model in ns-3 for now – one that ignores the collision
We have also integrated our ns-3 simulation with a
detection and broadcasts a lengthy packet periodically.
realistic physical model called QRSim[4] that was developed
in MatLab - see the following figure for an illustration. It
VII. CONCLUSIONS AND FUTURE WORK
allows dealing with realistic physical elements, such as wind
and turbulences. In this paper, we presented an approach to utilising UAVs
as communication relays and discussed different cases and
ways to position them to maximise the communication
efficiency. It is also possible to create a delay tolerant
network and we have shown how one could analyse the
schedulability of a set of nodes by means of the response-
time analysis from the real-time literature. We have
demonstrated how this approach could interact with a
physics simulator to better reflect physical elements and
dynamically optimise the speed and routes of UAVs.
As part of the future work, we plan to devise a formal
model-checking approach to determine whether a set of
given nodes are schedulable or if not, how many UAVs are
required to make them schedulable. We are also interested in
! dealing with moving targets or nodes, and using the speed of
Figure 9. Location of multiple nodes and 1 UAV with comm. links the objects and directions to better predict possible
waypoints of UAVs. It may be possible to employ multiple
UAVs and assign them groups of nodes to serve. For a large
number of nodes that cannot be covered by one UAV, it is
necessary to cluster nodes into smaller subgroups, so that a
UAV can each serve a group of nodes.
There are a number of strategies for grouping nodes,
depending on the following criteria;
• Required frequency of visits to nodes
• Distance and travel times between nodes
• Communication overheads

REFERENCES
1. C.L.Liu, J.Layland, "Scheduling algorithms for multiprogramming in
a hard real-time environment”, Journal of the ACM 20(1), 1973.
! 2. A. Burns and A. Wellings, Real-Time Systems and Programming
Figure 10. NS-3 interacting with QRSim [4] via Protocol Buffer Languages (4th ed.), Addison-Wesley, 2009.
In the figure above, the fluctuating red-line illustrates the 3. NS-3 Network Simulator, available at http://www.nsnam.org/, last
accessed in August 2014.
location of the UAV on the x-axis, overshooting slightly due 4. QRSim, Multiplatform Quadrotors Simulator, available at https://
to the PID-controller output, but eventually balancing out. github.com/UCL-CompLACS/qrsim, last accessed in 08/2014.
The SNRs for packets to and from each access points (i.e., 5. OrbitLogic, http://www.orbitlogic.com/products/uav.php, 08/2014.
ground stations) as well as the total number of packets 6. Google, Protocol Buffers, https://code.google.com/p/protobuf/, last
accessed 12/2013

978-1-4799-6944-9/14/$31.00 ©2014 IEEE 369

Das könnte Ihnen auch gefallen