ROSNet: A WMN based Framework using UAVs and ground nodes for Post-Disaster Management

—Communication breakdowns during natural disasters can signiﬁcantly restrict disaster management operations. Furthermore, cellular networks may also be unreliable in such scenarios. Hence, establishing communication using alternative means is of importance in these scenarios. In this paper, we propose a prototype system to establish communication using wireless mesh network, through the use of stationary and mobile ground nodes, and aerial nodes using unmanned aerial vehicles (UAVs). This network is ad hoc and establishes connectivity without the usage of a cellular network or internet. Our system provides a complete end to end architecture, where we deploy an android application on smartphones at the user-end, the ad hoc network comprising of stationary and mobile nodes, and a graphical user interface (GUI) at the base station that facilitates situational awareness. We use the Robot Operating System (ROS) as the middleware for message synchronization between the nodes as well for UAV control. We evaluate the system for different system conﬁgurations by using UAVs and a semi-autonomous car. Our experimental results show that the system could be indispensable in providing large scale connectivity.


I. INTRODUCTION
A Communication network is the backbone for efficient dissemination of disaster management services. However, when a natural disaster occurs, typically, the existing local network infrastructure (cellular network) fails, leaving the inhabitants and authorities with minimal to no mode of communication. Therefore it is essential to explore robust and resilient alternative mechanisms to restore communication between the inhabitants and the service personnel for effective search and rescue efforts.
Having had wireless communication mediums around for decades, the need for exploiting these rapidly evolving technologies in emergency relief and response operations has been constantly growing. Yoho [1] explores the applications of pagers, radios, satellites, and personal communication services to disaster response. The use of ham or amateur radios in providing communication for disaster management has been discussed in [2], [3]. However, their bandwidth and the type of information that can be transmitted is limited. Another alternative is to use satellite communication, which has proved to be a reliable medium during emergencies because of its wide coverage and immunity from the geographical condition and ground disasters [4], [5]. However, it is less *This work was not supported by any organization 1   reliable in narrow and cluttered streets as well as in rainy and snowy weather [6].
Recently, there has been a focus on using wireless mesh network (WMNs) for these applications. WMNs provide a cost-effective and multi-hop routing architecture with selfhealing and self-configuring capabilities, resulting in a robust, scalable and versatile connectivity when conventional infrastructures are no longer available [7], [8]. In this paper, our proposed framework based on WMNs has been developed to include UAVs and ground nodes equipped with wireless mesh radios. Network architectures have to be adaptive to efficiently deal with different disasters. This has been discussed in the following sections.
The recent advancements in unmanned aerial vehicles or UAVs in terms of stability, flight time and load carrying capacity have allowed them to play key roles in disaster management [9], [10], monitoring [11], standalone communication systems [12], medical deployment [13], search and rescue operations [14] and for post-disaster damage assessments [15]. There have been several works demonstrating the use of UAVs for ad-hoc networking [16], [17], [18]. Brown et al. [16] describe a wireless network with radio nodes fixed on ground vehicles and in small UAVs, which establish connectivity between disconnected ground stations. In [19], a framework called UAVNet has been developed for creating an aerial IEEE 802.11s WMN using small-scale UAVs. Functionalities such as UAV control, deployment and monitoring have been incorporated into their network. Their results have also shown that a flying WMN has a 6.3 times higher throughput than a ground-based network. A UAV-aided wireless mesh network for post-disaster management has been discussed in [20]. They have described two scenarios, where in the first scenario, the UAVs act as intermediate nodes to connect disconnected ground nodes. In the second scenario, a UAV mesh network to maintain connectivity between a ground station and a UAV has been been developed. Their simulation and field tests results have shown that their proposed system can be successfully used in case of disasters to establish an emergency end-to-end communications system. However, none of the mentioned works address the issue of adapting to various scenarios based upon the disaster. Their network architectures are generic and cannot provide robust connectivity in different natural disasters.
In this paper, we designed, implemented and evaluated the performance of our prototype framework, consisting of stationary and mobile ground nodes, as well as aerial nodes. Instead of developing a single architecture, our framework incorporates various wireless mesh network designs based on the type of disaster. Fig. 1 illustrates one such network during an earthquake. The base station serves as the central node or server located at a safe location. Factors such as ground mobility, scale of affected region, wind, etc. have been taken into account to decide what type of nodes are to be deployed. The major contributions of this paper are: • A framework with a disaster-centric approach for selecting and deploying the wireless mesh network. This has been discussed in detail in Section II. • A complete end-to-end network architecture based on multifarious mobile and stationary nodes, by providing a means to the affected users to convey their needs using an android application to a base station. An interactive GUI is developed for the base station, which receives all the information transmitted through the nodes. This software also provides functionalities for monitoring the stationary as well as mobile nodes and sends appropriate commands based on their status and position. • The software architecture of the framework is based on the open-source Robot Operating System (ROS) [21]. Its functions in our prototype are two fold, first it allows us to control and monitor the UAVs from the base station. Second, the user messages from the app are relayed to the base station with the help of ROS topics. The primary reason for building the software stack of our framework using ROS was to reduce the complexity and improve scalability of our network, such that robots can also be included in the framework, since most robots these days are ROS compatible. These characteristics allow quick deployment of our prototype.
The rest of the paper is organized as follows. Section II describes the hardware and software components used for developing the prototype. Section III discusses the node selection strategy for different disasters. Section IV discusses (a) Aerial node on a hexacopter.
(b) Mobile ground node on a semiautonomous car. the implementation of the prototype. Section V presents the experimental and evaluation results of the prototype. We conclude our work in Section V.

II. HARDWARE AND SOFTWARE COMPONENTS
In this section, the hardware and software components of the proposed end-to-end network architecture have been described in detail.

A. Hardware
We have evaluated the performance of our prototype by using a ground vehicle and UAVs as mobile nodes. Each of these nodes consist of a wireless mesh radio to establish the mesh network.
1) Wireless Mesh Node: We use the UniFi AC Mesh UAP-AC-M from Ubiquiti Networks [22] as the wireless mesh radio. This, coupled with a Raspberry Pi 3B+ constitutes a single wireless mesh node. The UniFi Mesh consists of a dual-band omni-directional antenna with a range of 182 m [22]. This particular radio was chosen because it is light weight and has small dimensions, making it optimal for mounting on a UAV.
2) Unmanned Aerial Vehicle: Fig. 2(a) shows the UAV along with the wireless mesh node. We have used a multirotor UAV, "Tarot 810" for our experiments. It consists of a Pixhawk cube flight controller, a GPS module, and a USB camera along with a 6S 8000mAh LiPo battery. The camera periodically clicks images of its surroundings, which are relayed to the base station.
3) Ground Vehicle: Fig. 2(b) shows the mobile ground node, mounted on a semi-autonomous Mahindra e2o electric car. The wireless mesh node is mounted on top of it.

B. User-end software
We have designed an android application using Python's Flask framework, as a part of our complete solution towards this problem. This is shown in Fig. 3. It connects to the wireless network of a nearby mesh node and allows the user to share information such as their names, phone number, number of people stuck, etc. with the base station. The GPS coordinates of the user are also saved by the app without explicit user entry.

C. Software on the node
A local app server runs on the RPi of each node, which receives the information from the app in the form of JSON messages. This data is stored and transmitted to the base station through ROS topics in the form of ROS messages. Fig.  4 shows the software architecture and the communication interfaces of the model. The /img topic is used by the nodes to share images clicked by the UAV cameras. The /msg topic is for relaying information shared by the user through the app.

D. Software on the base station
The base station receives the aforementioned data by subscribing to the /img topic and /msg topic. An interactive Graphical User Interface (GUI) designed using python's  dash framework, allows the response team to view this information. The GUI also serves the following purpose: • Estimates the type and number of nodes to be deployed based on factors such as size of the affected area and type of disaster. This has been discussed in detail in the next section. • Since the GUI runs on ROS, appropriate instructions such as heading directions, altitude, etc. could be sent to the UAV nodes.

III. NODE SELECTION STRATEGY
Our framework has been developed for two of the most common natural disasters in India, that is earthquakes and floods. Depending on the scale and type of disaster, there is a partial or complete loss of on-ground mobility, making it impossible for ground vehicles to operate. In such situations, selecting the right set of nodes becomes important to provide reliable network connectivity in these areas.
Algorithm 1 shows the pseudocode for the node selection strategy. The GUI has an in-built Google Maps API [23], which allows the disaster response team to select a closed loop boundary over the affected area. The type of disaster, D type , and the range of the mesh radios S range are given as inputs to the algorithm. First, the area of the selected region D size is measured by the API. Then an estimate of the number of nodes to be deployed N node is calculated by dividing D size by the area covered by each of the wireless radios. We have used omnidirectional antennas which have a circular coverage area in a 2D plane. An illustration of this method is shown in Fig. 5. The algorithm also recommends the types of nodes T node based on the type of disaster. In most cases of floods, it has been seen that there is total loss of on-ground mobility. Thus, the algorithm suggests the use of UAVs in such situations. However, it recommends both UAVs and ground vehicles during earthquakes, wherein there is a limited loss of mobility in the ground. This algorithm has been added to the GUI to aid the response team in postdisaster preparedness.

IV. IMPLEMENTATION
The implementation steps of our prototype are shown in Algorithm 2. First, all the nodes determined from Algorithm 1 are assigned static IP addresses. These are stored in IP nodes . The address of the base station is assigned to IP base . The nodes are deployed after starting the android app server on each of them. This completes the initialization and deployment process.
Lines 4 to 12 of the algorithm describe the transmission of app data from a node to the base station. The node pings the base station as soon as it starts receiving the user information. Upon a successful handshake, the incoming data is stored in the Raspberry Pi with timestamps. These, JSON messages are converted to ROS messages and are transmitted to the base station through intermediate nodes. In case the handshake isn't successful, the node stores the incoming data and waits for the next successful connection with the base station. The following subsection discusses the various scenarios which may arise while transmitting data from a node to the base station.

A. Data transmission from a node to the base station
Nodes that form the wireless network are referred to, as the connected mesh nodes. A node that isn't a part of the mesh network, works as an independent node. They identify themselves as connected or independent, by the handshake procedure discussed above.
A mobile node such as a ground vehicle or a UAV could act as a connected node as well as an independent node Algorithm 2: Initialization and transmission  because of its mobility. If connected, any incoming app data or images could be directly sent to the base station or otherwise, could come within the wireless range of a connected node to relay the information.
Independent stationary nodes mounted on poles or elevated structures cannot send information by themselves. In such cases, the mobile nodes act as a bridge to reconnect these disconnected nodes. This is shown in Fig. 6, where the information from the independent node is sent to the base station through the intermediate mobile nodes.

V. RESULTS
We performed multiple experiments, involving aerial and ground nodes, covering a multitude of cases to determine the latency and throughput of the network in each case. We first tested our prototype on a single-hop network and then used multiple nodes to create a multi-hop network. A laptop and a Raspberry Pi, connected to a wireless mesh radio have been used as the client A and client B respectively, in all the scenarios. Client A was considered as the base station and the RPi as a wireless node in the vicinity of a user. The flow of information takes place from both clients to analyze how the network performance varies with distance.

A. Single Hop Communication
The network performance for single-hop communication for different node configurations is shown in Fig. 7.
Case (i): Fig. 7(i) describes the first case where client A and client B are both connected to a ground node(stationary/mobile), at a distance of 10 m from each other. Case (ii): Fig. 7(ii) shows the case where client A and client B are placed at a distance of 100 m from each other, with client A being close to the node. Case (iii): The third scenario shown in Fig. 7(iii) describes the case where client A and client B are kept 180 m apart, with both the clients equally apart from the wireless node. Case (iv): The scenario shown in Fig. 7(iv) describes the fourth case where the ground node in the third case is replaced by a UAV flying at an altitude of 40m.
The performance for these cases is analyzed using the Transmission Initialization Delay (TID) and throughput.
1) Transmission Initialization Delay: We define Transmission Initialization Delay (TID) to be the time taken to initialize the first transfer, once the connection has been established between the two clients.
The TID varies with distances shown. From Fig. 8, we observe that the TID for the aerial node case is less than the  ground node case by 11.11% when the distance between the clients is 180 m. The drop in TID when using a UAV is observed because an aerial node provides better connectivity between the clients because of the absence of ground obstructions.
A general trend that can be observed across all four plots, is that the transmission rate of client A is higher than that of client B. This is due to faster processing units and high-end network interface card of the laptop.
As we can observe from the plots, the transmission rates of clients A and B are the highest in the case denoted by Fig.  9(a), which can broadly be attributed to the close proximity of both the clients to the wireless node. The transmission rate (Tx) of client A increased by 5.14% as compared to its value in the case denoted by Fig. 9(c). Client B's performance improved by 13.39% when compared to its performance in the case denoted by Fig. 9(c). The increase in throughput is because of the presence of the aerial node in the case being described by Fig. 9(d). This improvement is because of the reason mentioned in TID.

B. Multi Hop Communication
The different configurations considered for the multi-hop communication scenarios are shown in Fig. 10. The distances between the nodes and the clients are fixed. Both the clients are situated at a distance of 100 m from the respective nodes. The distance between the nodes is 80 m for all the 5   configurations. Case (i): Fig. 10(i) describes the case where node 1 and node 2 are both ground nodes. Case (ii): Fig. 10(ii) describes the case where the node closer to client A is an aerial node. Case (iii): Fig. 10(iii) shows the case where both the wireless nodes are aerial nodes.
1) TID: The TID for each case has been measured for multi-hop communication. From Fig. 11, we can see that the TID reduces as we proceed with the different cases, this can be broadly attributed to the presence of one aerial node for case (ii), and two aerial nodes in the case (iii). Case (ii) provides an improvement of 19% over case (i), similarly, case (iii) provides an improvement of 66.66% over case (i), when two aerial nodes are used instead of two ground nodes.  2) Throughput: Fig. 12(a) corresponds to Fig. 10(i). Fig.  12(b) and Fig. 12(c) represent Fig. 10(ii) and Fig. 10(iii) respectively.
From the figures, we can see that the transmission rate for both client A and client B has decreased when compared to single-hop communication, which is due to the additional delay incurred because of the presence of another wireless node and because of the extra distance involved. Replacing node 1 in the first case with an aerial node, significantly increased the transmission rate of client A by 15.35%. For the third case, when both the nodes are aerial nodes, the rate of transmission has increased for both the clients. The rates from case I increased by 22% and 16% for client A and client B respectively.

VI. CONCLUSION
We proposed and implemented a wireless mesh network to aid disaster affected regions using stationary and mobile nodes, including UAVs and on-ground vehicles. Our prototype integrates IEEE 802.11 wireless mesh network for easing communications across such regions. The android app helps receive the user information, while the developed GUI at the base station provides situational awareness. It has been observed that ROS can prove to be a crucial middleware in disaster relief scenarios, firstly, by providing a robust mechanism to transfer data and secondly, by allowing the UAVs to be controlled from the base station. Moreover, our system can also be used to obtain real-time imagery information using a camera mounted on the UAVs along with the GPS coordinates imprinted on the images to identify the affected locations. From the throughput measurements calculated for single-hop and multi-hop networks, it has been observed that by using aerial nodes like UAVs, the transfer rate of our algorithm significantly improves. Improvements such as using computer vision techniques to determine the topography of the affected region can significantly improve the recommendation ability of the developed GUI. Research into optimal positioning of the nodes can further enhance the performance of the network. We hope to deploy this system to facilitate efficient disaster management efforts in India.