Next Article in Journal
Skin Lesion Analysis towards Melanoma Detection Using Deep Learning Network
Next Article in Special Issue
Using Unmanned Aerial Vehicles in Postfire Vegetation Survey Campaigns through Large and Heterogeneous Areas: Opportunities and Challenges
Previous Article in Journal
Active Electro-Location of Objects in the Underwater Environment Based on the Mixed Polarization Multiple Signal Classification Algorithm
Previous Article in Special Issue
Experimental Study of Multispectral Characteristics of an Unmanned Aerial Vehicle at Different Observation Angles
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

UAV-Assisted Dynamic Clustering of Wireless Sensor Networks for Crop Health Monitoring

1
Lab STICC, ENSTA Bretagne, Brest 29200, France
2
Sensor Networks and Cellular Systems Research Center, University of Tabuk, Tabuk 71491, Saudi Arabia
*
Author to whom correspondence should be addressed.
Sensors 2018, 18(2), 555; https://doi.org/10.3390/s18020555
Submission received: 11 December 2017 / Revised: 2 February 2018 / Accepted: 5 February 2018 / Published: 11 February 2018
(This article belongs to the Special Issue UAV or Drones for Remote Sensing Applications)

Abstract

:
In this study, a crop health monitoring system is developed by using state of the art technologies including wireless sensors and Unmanned Aerial Vehicles (UAVs). Conventionally data is collected from sensor nodes either by fixed base stations or mobile sinks. Mobile sinks are considered a better choice nowadays due to their improved network coverage and energy utilization. Usually, the mobile sink is used in two ways: either it goes for random walk to find the scattered nodes and collect data, or follows a pre-defined path established by the ground network/clusters. Neither of these options is suitable in our scenario due to the factors like dynamic data collection, the strict targeted area required to be scanned, unavailability of a large number of nodes, dynamic path of the UAV, and most importantly, none of these are known in advance. The contribution of this paper is the formation of dynamic runtime clusters of field sensors by considering the above mentioned factors. Furthermore a mechanism (Bayesian classifier) is defined to select best node as cluster head. The proposed system is validated through simulation results, lab and infield experiments using concept devices. The obtained results are encouraging, especially in terms of deployment time, energy, efficiency, throughput and ease of use.

1. Introduction

The use of Internet of Things (IoT) technology to collect up-to-date information from crop fields to protect it from any kind of damage is the main objective of this research. Dynamic clustering is used to collect versatile data under harsh conditions. Clustering is an important way of increasing network lifetime and reliability. Many clustering techniques are proposed, which can be classified into four broad categories: static-sink static-nodes (Low-energy Adaptive Clustering Hierarchy (LEACH) and Hybrid Energy-Efficient Distributed clustering (HEED) [1,2]), mobile-sink static-nodes (Rendez-vous base routing [3,4,5,6]), static-sink mobile-nodes (cellular network [7]), and mobile-sink mobile-nodes (ad-hoc routing [8]). This research focuses on the mobile sink static nodes clustering method as all agriculture sensors are assumed to be static and we consider a mobile UAV to collect data from crop fields. For static sensor nodes, researchers propose predefined clusters and cluster head schemes to collect data. This type of clustering is not feasible in our case because of the frequent fluctuations of the sensor nodes. The situation becomes more critical, if the cluster head (CH) is down and the whole network becomes unfunctional. In addition, the path of the UAV is dynamic and sensor nodes are unaware of it; in this case, it rarely happens that a predefined CH lays on the path of the UAV and has a good link to it. Network-defined and Rendez-vous base clustering are also proposed in the literature, where all the nodes send periodic updates to maintain up-to-date CH locations or Rendez-vous Points (RVPs) from where an UAV can collect data. In this situation, the main drawback is the overhead for all nodes to update the CH locations continuously which results in battery drainage and reduces the network lifetime. Besides, UAVs have to search for and track the network-assigned CHs (Rendez-vous), which will affect the throughput of the system and deflect the UAV from its path. To the best of our knowledge, none of previously published clustering schemes considers the UAV path as a clustering criterion.
We proposs a dynamic clustering scheme. All the field sensor nodes are initially considered indistinguishable (no potential CH), so the the UAV sends a beacon message to activate all nodes residing in its vicinity, forming a cluster by considering its path and type of required data. The next step is to choose one node as the CH, merge all the cluster data on this point, and locate and connect it with the UAV at some reasonable height and distance.
IoT for agriculture is proposed in many research articles like [9,10,11], where they elaborate how sensors are useful in this field, what are the potential areas of application and how to collect and process information. To the best of our knowledge none of them provide in depth details like how to form clusters, select a CH, proper utilization of UAVs, independent movement of UAVs and energy preservation of the nodes. The most important aspect of our article is the evaluation of the proposed system through intensive simulations and real life experiments.
The rest of the paper is organized as follows: Section 2 provides a short background of the developed system. Section 3 and Section 4 present our dynamic cluster formation and cluster head selection techniques. The proposed three layer architecture is described in Section 5, while the system algorithm is given in Section 6. Different system parameters and their characteristics are defined in Section 7. The developed system in evaluated by using simulation models and IoT devices in Section 8 and Section 9, respectively. Finally Section 10 concludes this article.

2. Background

Data collection from Wireless Sensor Networks (WSNs) installed in farm fields faces many challenges like extreme climatic conditions characterized by high temperatures, dry air, dust/sand storms, lack of infrastructure, remote and huge geographical locations, etc. We propose a dynamic data collection mechanism to overcome the above mentioned challenges. In this study, smartness in agriculture is achieved in four steps:
  • Deployment of heterogeneous sensor nodes: a large number and wide range of heterogeneous sensors are used to monitor different parameters related to crop, soil and environment.
  • Use of Unmanned Aerial Vehicles (UAVs): UAVs are utilized to build the communication infrastructure between sensing devices and end-users.
  • Dynamic clustering: Clustering is the most important aspect of our study. It is the process used to arrange different sensing devices in groups according to geographical area, required data, path of the UAV, communication limitations, similarities or any other criterion.
  • Dynamic cluster head selection: Once available alive sensors have arranged themselves in a cluster formation then the next challenge is how to select a node as CH which will collect all the data from neighboring nodes and transmit it to the UAV. Selection of the CH is a tricky task, as the node having the best specifications and more suitable for the UAV (i.e., near to the UAV path) has to be selected as CH.
The developed system has many advantages over conventional ones. First of all it is a quickly deployed handy system which can be employed anywhere without any existing infrastructure. A farmer can collect needed data from an area of interest by using this system as all the data from the whole area is rarely needed. The mission is established for the UAV in advance in the form of waypoints to collect data from selective sensors and area. Network life can be improved massively as we propose the use of dynamic clustering, hence there is no need to discover and maintain data routes continuously. In WSNs, the node energy is mostly exhausted in broadcasting periodic updates to keep the network alive all the time. In our system, the network is formed only when data really needs to be collected and only selected nodes will participate. The use of UAVs also helps us to prolong the network life, as it enables us to collect data by visiting the IoT nodes at a suitable pre-arranged height. We are introducing a dual frequency communication system to further reduce the energy initialization. A low frequency (e.g., 433 MHz) is used to locate, navigate and shake-hand with sensor nodes while the high bandwidth and more energy demanding transceiver (e.g., 2.4 GHz) is switched on only when data need to be transmitted. Sensor nodes don’t have GPS modules and their reduced working loads are two other factors helping to optimize the node energy. Another important benefit of our proposed system is that it can survive and work well under harsh conditions, as sensor nodes are often fluctuating due to bad weather, and becoming covered by sand, water, mud or plant follicles. Pre-defined CHs and routes are not feasible, and in dynamic clustering only available nodes participate and the best among them will act as CH and formulate a temporary network to deliver the required data to the UAV.
The life cycle of the proposed system is composed of seven steps, as shown in Figure 1. The UAV, which acts like data mule and the means of communication among the sensors, is the main part. The system life cycle starts when the UAV initiates the process of data gathering by sending a beacon message in step-1. Type of nodes, suggested data collection height and threshold to limit number of UAV-node connections are mentioned in this beacon. The nodes addressed in the UAV beacon are activated in step-2. In step-3 clusters are formed in the path of the UAV to preserve its predefined path. There is a possibility that none of the desired sensors have the capability to communicate with the UAV because of limited resources, while on the contrary, the UAV may get many responses from activated ground sensors and be unable to handle them at the same time. To tackle both of these conditions, step-4 is introduced to select some reasonable amount of field sensors for further processing. We name “shunting” this process of pushing or pulling some nodes from the process to make sure they are in a reasonable range. Localization (step-5) is to find out sensor nodes installed in crop field with the UAV, and a special lightweight energy-efficient antenna is designed for this purpose. We have given full details about this virtual phase array antenna in a previous article [12]. The best node among all will be selected as CH in step-6. Many parameters like energy, antenna size, energy consumption rate and distance to the UAV are investigated before selecting a node as CH. The final step-7 is data collection, in which the CH collects data from all neighboring nodes and the aggregated data is transmitted to the UAV by using a point to point dedicated link. This lifecycle keeps on until the whole or the selected area of the crop field is scanned and data is harvested successfully. The whole process spans three dimensions: dynamic clustering, dynamic cluster head selection and localization of field sensors by the UAV.

3. Proposed UAV Assisted Dynamic Clustering Architecture

As described above, the developed dynamic clustering consists of two components: sensor nodes and UAVs. No special CHs are installed/defined and all sensor nodes are considered indistinguishable.

3.1. UAV

In the developed system, the UAV plays a vital role in cluster formation, localization, communication and data gathering and the whole system is trigged by the UAV beacon. The UAV under consideration is a quad copter equipped with a localization system with the following specifications:
  • Minimum operating flight height = 20 m,
  • Maximum operating flight height = 500 m,
  • Maximum speed = 7 m/s.
The role of UAV is very critical in the developed system hence it is designed in such way that it bears most of the processing burden to simplify the tasks of the sensor nodes. It performs many key functions throughout its working cycle: activating the sensor nodes, shunting them for further processing, getting nodes’ initial information, locating all activated nodes, evaluating them, nominating the CH and finally collecting data from the selected CH. The working cycle of the UAV is given in Figure 2.
The UAV sends a beacon message (see Table 1) to activate sensor nodes, and the parameters set in the beacon are as follows:
  • Sensor type: Type of sensor nodes or combination need to be activated in response of this beacon.
  • Height: it is current data collection height of UAV not the flying height. The sensor nodes that are capable to communicate at this distance will be considered as candidate for a CH.
  • Threshold: This threshold will be used to limit the number of sensor nodes contesting for CH.
  • Trailer: A trailer contains Error Detection Code (EDC) or any other information.

3.2. Sensor Node

Field sensors installed in the field to monitor a specific parameters about crop, soil or the environment have the following properties:
  • Location-unaware, cheap in cost and left unattended.
  • Support for multiple frequencies (at least two frequencies—433 MHz and 2.4 GHz—for localization and data transmission.
  • By default, 433 MHz is switched on to hear the beacon from the UAV, afterward it will be used for localization and synchronization, while the 2.4 GHz transceiver will be activated on demand for communication only.
  • Can hear the UAV if in range, but all might not be able to connect with it because of their internal parameters.
  • Maximum communication range = 500 m.
  • Processing and memory enabled.
All sensor nodes are considered to have a unique ID of the format given below:
  • Type: We consider three basic types: crop, soil and environment, but we allocate 1 byte for further and future extensions.
  • Subtype: Leaf, stem, root and any combination.
  • Purpose: Temperature, humidity, thickness, flow and all possible combinations.
  • Unique ID: Unique number of each sensor node.
The field sensor nodes will have 6 bytes of unique ID as shown in Table 2. The UAV will select any particular type or combination with the help of this ID, also called prefix. Sensor nodes will also use it to send beacon acknowledgement/reply messages.
In our proposed system, initially all sensor nodes are considered as undistinguishable (no special CH). A sensor node has to maintain five parameter values about its health:
  • Energy: How much energy is remaining,
  • Consumption rate: The consumption rate of energy to perform its job,
  • Renewable energy: Whether renewable energy is available or not,
  • Antenna size: Antenna size to estimate its communication range,
  • Data size: How much data should be transmitted.
All activated sensor nodes will calculate a probability value to become a CH based on these health indicators. The sensor nodes’ reply to the UAV will consist of 9 Bytes containing a prefix (node ID) in the packet header, a probability value (the probability to be selected as a CH, calculated by the Bayesian formula by putting its entire health indicator’s values) in payload and trailer. The 1 trailer byte is allocated for Cyclic Redundancy Check (CRC) and future use. A sensor node activated in response to an UAV beacon will send a reply shown in Table 3:
The most important component of our developed system is the sensor node. The whole system is developed in such a way to facilitate the tasks of this component and let it optimize its resources to monitor the crop parameters for a longer time. In our developed system, the daily routine working of sensor node is limited to sense and sleep. It becomes only active for communication after receiving a beacon message from the UAV. The sensor node working process is expressed in an algorithmic form as shown in Figure 3. The process starts when the node receives a beacon then it calculates its Bayesian probability to be a CH and informs the UAV about it. The UAV then selects one of the activated nodes as CH, which should collect data from the whole cluster, aggregate and forward it to the UAV. The list of variables used in the rest of this article is given in Table 4.

4. Dynamic Cluster Head Selection

Once the UAV assisted cluster is formed, the developed system will grade cluster nodes into two types: the first type contains the nodes that don’t have the capability to approach the UAV, called cluster members (CMs); candidate cluster heads (CCHs) are the other type. The CCHs are further shunted by the developed system to keep them in a range from 1 to N (where N is the maximum capacity of the UAV to locate sensor nodes). All CCHs and the UAV will collectively take part in the selection process to nominate a node as CH.
Many parameters (like remaining energy, available renewable energy, energy consumption rate, antenna size and distance to the UAV) are considered in this selection process. In the proposed system, the tasks of cluster formation and the CH selection are conducted dynamically at runtime according to the context and then a reliable point to point backbone connection is established between the CH and the UAV to collect all required data for further processing and decision making. The proposed dynamic clustering scheme is illustrated in Figure 4.
Each node will participate in the CH selection process depending upon its probability calculated by using a Bayesian classifier. Bayesian probability has been studied for two centuries and many researchers are using it for different purposes [13,14,15,16]. We are inspired by Bayesian spam filtering [17] as it is more close to our problem domain. We derived our probabilities in as follows:
Let us suppose there are n sensor nodes S = ( s 1 ,   s 2 , ,   s n ) and each sensor node s i has z attributes (independent variables) represented by a vector A = ( 𝒶 1 , 𝒶 2 , ,   𝒶 z ) . A sensor node s i can be in one of two states:
(a)
Cluster Head ( CH )
(b)
Cluster Member ( CM )
represented by S t a t e = ( CH , CM )
P ( s i = CH | 𝒶 i j ) is the posterior probability of a given sensor node s i to be a CH knowing its attribute 𝒶 i j .
P ( s i = CH ) is the prior probability of given node to be a CH .
P ( 𝒶 i j | s i = CH ) is the likelihood probability that the highest value of the attribute 𝒶 i j is in CH node.
P ( s i = CM ) is the prior probability that a given node s i is a member node.
P ( 𝒶 i j | s i = CM ) is the probability that the highest value of attribute 𝒶 i j is in CM and not in CH.
P ( 𝒶 i j ) is the prior probability of the attribute value 𝒶 i j is the highest one.
Equation (1) is the probability of the node s i to be a cluster head by knowing only one parameter 𝒶 i j . If all parameters A i = ( 𝒶 1 , 𝒶 2 , ,   𝒶 z ) of node s i are independent in nature then the conditional probability of this node, by considering whole set A i can be calculated as:
P ( 𝒶 i 1 , 𝒶 i 2 , , 𝒶 i z | s i = CH ) = j = 1 z P ( 𝒶 i j | s i = CH ) = j = 1 z P ( s i = CH | 𝒶 i j )   P ( 𝒶 i j ) P ( s i = CH )   =   j = 1 z P i j   P ( 𝒶 i j ) [ P ( s i = CH ) ] z
P ( 𝒶 i 1 , 𝒶 i 2 , , 𝒶 i z | s i = CM ) = j = 1 z P ( 𝒶 i j | s i = CM ) = j = 1 z P ( s i = CM | 𝒶 i j )   P ( 𝒶 i j ) P ( s i = CM ) = j = 1 z ( 1 P i j )   P ( 𝒶 i j ) [ 1 P ( s i = CH ) ] z
If:
P i is the probability P ( s i = CH | A i ) of the ith node, s i to be a CH by knowing a set of all its parameters A i , P i j is the probability P ( s i = CH | 𝒶 i j ) of the ith node, s i to be a CH by knowing its jth parameter 𝒶 i j from the parameters set A i and 𝒶 i j is the jth attribute of the ith sensor node.
Then:
P ( s i = CH | A i ) = P ( s i = CH )   P ( A i | s i = CH )   P ( A i ) = P ( s i = CH )   P ( A i | s i = CH )   P ( s i = CH )   P ( A i | s i = CH )   + P ( s i = CM )   P ( A i | s i = CM )
P ( s i = CH | 𝒶 i j ) =   P ( s i =   CH )   P ( 𝒶 i j | s i = CH ) P ( 𝒶 i j )
P ( s i = CH | 𝒶 i j ) =   P ( s i = CH )   P ( 𝒶 i j | s i = CH ) P ( s i = CH )   P ( 𝒶 i j | s i = CH )   +   P ( s i = CM )   P ( 𝒶 i j | s i = CM )
Putting the values of (1) and (2) in Equation (5):
P ( s i = CH | A i ) =     P ( s i = CH )   j = 1 z P i j   P ( 𝒶 i j ) [ P ( s i = CH ) ] z     P ( s i = CH ) j = 1 z P i j   P ( 𝒶 i j ) [ P ( s i = CH ) ] z + [ 1 P ( s i = CH ) ] j = 1 z ( 1 P i j )   P ( 𝒶 i j ) [ 1 P ( s i = CH ) ] z  
P ( s i = CH | A i ) =   1 P ( s i = CH ) z 1     j = 1 z   P i j   P ( 𝒶 i j )   1 P ( s i = CH ) z 1     j = 1 z   P i j   P ( 𝒶 i j )   +   1 [ 1 P ( s i = CH ) ] z 1 j = 1 z   ( 1 P i j )   P ( 𝒶 i j )
Let us consider that P ( 𝒶 i j ) are constant then the previous equation can be simplified as follows:
P ( s i = CH | A i ) =   j = 1 z   P i j       j = 1 z   P i j   +   ( P ( s i = CH ) 1 P ( s i = CH ) ) z 1 j = 1 z   ( 1 P i j )
If considering “not biased” condition where all nodes in the network have the same probability to become cluster head then Equation (6) can be written as:
P ( s i = CH | 𝒶 i j ) =   P ( 𝒶 i j | s i = CH ) P ( 𝒶 i j | s i = CH ) + P ( 𝒶 i j | s i = CM )
and Equation (7) can be written as:
P i = P ( s i = CH | A i ) =   P i 1 . P i 2 P i z P i 1 . P i 2 P i z +   ( 1 P i 1 ) . ( 1 P i 2 ) ( 1 P i z )
As Equation (8) may cause a floating point underflow problem, we convert the equation into the log domain:
1 P i 1 =   ( 1 P i 1 ) . ( 1 P i 2 ) ( 1 P i z ) P i 1 . P i 2 P i z     ln ( 1 P i 1 ) =   j = 1 z ( ln ( 1 P i j ) ln P i j )
ln ( P i j ) can produce a problem when P i j is close to zero; the results will be asymptotically correct.
Let μ =   j = 1 z ln ( 1 P i j ) ln P i j :
μ =   j = 1 z ln ( 1 P i j P i j ) =   j = 1 z ln ( 1 P i j 1 )
Finally, we can write that:
P i =   1 e   μ + 1

5. Three-Layer Architecture of the Developed System

The proposed UAV assisted routing and data gathering scheme is developed in multi-layers and multi-phases (see Figure 5):
  • Layer-1 UAV: UAV is the main part and the top layer,
  • Layer-2 CH: One node per cluster will be selected as CH and it will form a 2nd middle layer,
  • Layer-3 CM: Composed of ground sensor nodes.
Each layer further is divided into three phases as shown in Figure 5. The main part of this system is the UAV acting like a data mule, and the process is started by its beacon message. The UAV can operate at two different frequencies: very low power and long-range UHF F 1 used for localization and high data rate WiFi F 2 for communication. The UAV is performing localization at distance D 1 which is considered as constant and should be high enough to satisfy the far field conditions of F 1 . Data collection is conducted at distance D 2 which can be adjusted from 20 to 170 m by considering the CH transmission ability, safe flight distance and WiFi limitations. Top layer (UAV) layer is composed of three phases discuded in detail in next subsection.

5.1. Discovery

The UAV performs five main tasks in this phase including: beaconing, estimating the number of connected nodes, shunting, localizing and CH nomination, as explained in Figure 6.
Let us suppose that the UAV is flying at a height D 1 and initiates its data gathering process by sending a beacon B ( T y s , D 2 , T h ) containing the type T y s of nodes required to activate for data collection, distance D 2 at which it will collect data and T h which is the threshold to limit the activated nodes who will contest for the role of CH. Initially T h = 0 means all nodes can participate in the CH selection process. Suppose that there are n sensor nodes S = { s 1 ,   s 2 , , s n } installed in a crop field. Assume O nodes become activated in response of UAV beacon such that 1 O n and S S = { S S S | S S T y s } = { s s 1 ,   s s 2 , ,   s s O } . S S is the set of nodes that will make cluster in response of this beacon.
If each active node S S i has 𝒷 i bit data to transmit then T 𝒷 represents the total size of cluster data, that is expected to be transmitted by the CH to the UAV:
T 𝒷 = T 𝒷 ( S S ) = i = 0 O 𝒷 i
The energy required to transmit T 𝒷 to UAV for distance D2 is:
T E T x = ( E e l e c × T 𝒷 ) + ( E a m p × T 𝒷 × ( D 2 ) 2 )
where E e l e c is the energy being dissipated to run the transmitter and E a m p is the energy dissipation to amplify the message up to D m.
While UAV is in the discovery phase, activated ground sensors S S will be in setup phase to form a cluster. Every member of S S will calculate a Bayesian probability P i considering all its parameters (energy, consumption, antenna size, data size, etc.). A detailed discussion on Bayesian probability is given in Section 4. Based on E i , the energy of the node S S i , and P i , the probability to be selected as CH, a further subset called candidate cluster heads of CCH. C C H = { c c h 1 ,   c c h 2 , , c c h q } , where 1 q   O , is formed such that:
C C H   = { C C H   S S   |   E i c u r r e n t   T 𝒷   &   P i T h }
where E i c u r r e n t is the current energy of node i .
As described earlier, T h = 0 means any activated node having enough energy can be a member of the CCH.
All CCH nodes start sending beacon replies to the UAV in the form of narrowband signals. At this point, UAV estimates the number of CCH ( | C C H | = q ). If the UAV estimates that q = 0   or   q m 1 , where m is the number of antenna elements on board, then the shunting process is started to keep the candidate cluster heads within a reasonable range; Otherwise, the UAV will locate all CCH nodes by using a special virtual phase array antenna developed for said purpose (a detailed model is given in Section 4). Based on CCH location and P i values, the UAV nominates a final CH and broadcasts a message to all nodes of set S S to inform them about the CH nomination.
Shunting is the important process of discovery phase to handle the situation when:
q = 0   or   q m
If q = 0 or C C H = , it means no CCH member has the capability to send aggregated data to the UAV; In this case, shunting decreases D 2 in steps down to a minimum height depending upon safe flight constraints.
If q m means there are many good CCH nodes and UAV cannot locate all at once; in this case, shunting can take three steps:
  • Increase antenna capacity from m to 2 m ,
  • Increase D 2 in steps up to the limit of F 2 ,
  • Increase T h .
Once a cluster head is selected the next phase of the UAV is navigation.

5.2. Navigation

Once a CH is selected the UAV enters the next phase called navigation. In similar way, the CH and CM switch their phases from setup to aggregation and communication, respectively. In this phase, all active nodes will switch on their frequencies from F 1 to F 2 (433 MHz to 2.4 GHz).
Only the CH will operate on both frequencies. CH will use F2 to collect data from CMs and F 1 for UAV navigation. While the UAV approaches the CH and attains an agreed height   D 2 all CM nodes must transmit their data to the CH which will aggregate it and get ready to make a link with the UAV. As soon as the UAV approaches D 2 and starts handshaking, the CH will switch off its F 2 module and the navigation phase is over. The navigation diagram is elaborated in the diagram of Figure 7.

5.3. Communication

In the last phase, only the top two layers (UAV and CH) of our developed system will participate. The CH will transmit the whole data to the UAV at the frequency F 2 ; once transmission is done, the CH will go to sleep for a specific time T , while all CMs had already been shifted to sleep mode. To elaborate the exact sequence of steps the flow chart diagram of the developed system is shown in Figure 8.

6. Developed System Algorithm

The overall working of the developed system is explained in the state diagram (Figure 8) where the homological sequences of steps are shown. The variables used in the algorithm are listed in Table 4. As shown in Figure 8, blue color represents the top layer, Yellow is the middle one and green represents the last layer.. The UAV needs the following inputs to start the mission and data collection procedure: the path of the UAV consists of waypoints { ( x 1 , y 1 ) ,   ( x 2 ,   y 2 ) ,   ( x 3 ,   y 3 ) . } , D 1 height, the UAV normally flies at this height and conducts localization and navigation (e.g., 200), D 2 h is maximum possible height for data collection (e.g., 170 m), D 2 L is the lowest possible height for the data collection (e.g., 20 m), D 2 is the data collection height, and the UAV only obtains this height to establish a backbone high data rate link with the CH to collect data, after that UAV goes back to its normal height D 1 .
Initially D 2 should mainly be set to an average height (e.g., 170 + 20/2 = 95 m), T h the threshold value 0   T h 1 , T h L denotes minimum threshold, T h H stands for maximum threshold and g is the GPS accuracy (e.g., 5 m).
The UAV is equipped with a virtual phase array antenna which can operate at two different modes Low/High, where Low means with the least specification that can locate fewer targets and High means maximum specifications [12].
The UAV sends beacon messages to activate the ground sensors. The beacon is composed of three basic kinds of information: T y s is the type of nodes must be activated, D 2 distance at which UAV will collect data and T h is threshold. The process steps are as below:
  • The nodes not mentioned in this beacon message continue sleeping, while others will become activated.
  • The activated nodes will broadcast a message to all their neighbors to let them know how much data and energy they have.
  • All activated nodes will calculate the cost of transmission T E T x as per Equation (12) and their probability to be a cluster head P i as per Equation (10). All the nodes having energy greater than T E T x and get a higher probability than the threshold will declare themselves candidate cluster heads (CCHs) and remaining ones will be cluster members (CM).
  • CCHs will proceed further and start sending a narrowband signal to UAV having P i and their IDs.
  • When the UAV gets a reply from ground sensor nodes, it will use its on board virtual antenna and estimate the number of replying sensor nodes q . If the UAV finds 0   <   q   <   m then it will go into localization mode, to estimate the location of these CCHs, otherwise it will start the shunting process.
  • Shunting is a process to pull or push some sensor nodes from the process to keep their number within some reasonable range ( 1     t o     m 1 ) , m is the total number of virtual antenna elements. The shunting process is shown by a red diamond in the state diagram (see Figure 6 For shunting, UAVs have three options that it will be used in steps:
    • The first option: the UAV is equipped with an adjustable virtual antenna that can operate in two different modes: fast mode with minimum localization ability and high specification mode. If the UAV finds many CCH nodes contesting for cluster head (CH), it will switch its mode to high performance mode.
    • If the UAV finds that the number of replying CCHs is even greater than the high performance antenna’s capacity then it will try to reduce the number of CCHS by increasing the data collection height D 2 . The D 2 can also be used in reverse order, if no sensor node is contesting for CH, it means none has the ability to send aggregated data to the UAV at this distance and in this case, D 2 can be decreased up to a minimum level (safe flight).
    • D 2 is always kept in the middle of highest height D 2 H and the lowest D 2 L as D 2 = ( D 2 H + D 2 L ) / 2 . We are shrinking and expanding low and high values as per the requirements. If many CCHs were found and we want to limit them by increasing the height the low value is shifted to the middle and the middle value is calculated again. The same treatment in reverse order is used if no CCH is found, and the data collection height is decreased by shifting the high value to the middle and the middle is calculated again.
  • This D 2 height tuning process continues till:
    • The number of CCHs falls in the range (1 to m − 1)
    • D 2 reaches the boundary condition extreme high or low
    • The distance between high and low becomes less than the GPS accuracy of let’s say 5 m.
  • The third option is the variation of the threshold T h ; by increasing T h from 0 to 0.5 roughly half of the nodes will withdraw themselves from CH selection. The UAV can increase T h at every iteration.
  • The UAV will localize the activated candidate cluster heads and select the best one as CH on the basis of P i information received and the distance to the next waypoint. The node having highest P i value and closer to the waypoint will be selected as CH.
  • The UAV will send CH messages to all activated nodes.
  • The nodes receiving a CH message will send a join request. The CH receives the join request and allocates a time slot.
  • The nodes receive the time slot and send its data.
  • The CH aggregates the data and transmits it to the UAV.
  • The UAV moves to next cluster. All active nodes finish their transmission, and go to sleep for a fixed time.

7. Characteristics of the Developed System

The characteristics of the proposed system including link budget and communication range are calculates to evaluate the system and to build a simulation model based on these real values.

7.1. Link Budget

The critical parameter in our application is the energy, in particular the energy required for the cluster heads to transmit their beacon and useful information to the UAV. The relationship among energy, distance and frequency is given in Equation (14) [18]:
P a t h   l o s s = 32.45   d B + 20   L o g 10   ( f r e q u e n c y   i n   M H z ) + 20   L o g 10   ( d i s t a n c e   i n   K m )
We realize that at a large distance from the UAV, it is preferable to use a lower frequency to minimize the power consumption of the cluster head.
In our developed system, the UAV and sensor nodes are performing two major types of communication: one is a long range communication for identification/localization/navigation and other is a short range for the data exchange. For the long range communication, we don’t need a high bandwidth. We are using a bit lower frequency that can penetrate to larger distances with very low energy. High frequency (the required one is some standard such as WiFi) is only used for data exchange, as the data size may be large enough so we need high bandwidth. Short-range communication is more energy demanding and increases exponentially with increasing distance. In our developed system, we care about this transmitter receive distance. Link budgets for both the frequencies are defined in the next section.

7.2. Long Range Communication (433 MHz UHF Frequency)

A low power transceiver operating at 433 MHz frequency is suggested for long range communication activities like node localization, synchronization and handshaking. For all these activities, we don’t need high bandwidth, as only a few bits of data are needed. Let us assume a small radiated power ( 100     μ W ) is considered for transmission:
P W = 100   μ W = 10   l o g 10   ( P W   mW ) dBm = 10   l o g 10 ( 0.1 ) dBm = 10 dBm  
Masking factor (by objects like vegetation or other) for UHF long distance is considered very small M F =   5   dB .
If receiver sensitivity of a UAV is   ξ =   130   dBm   and a signal to noise ratio necessary to demodulate is SNR = 15 dB.
The maximal path loss constraint is calculated as:
M P L = P W   ξ S N R M F = 10 + 130 15 5 = 100   dB
Based on Equation (14), we can calculate the maximum distance covered by UHF communication:
20   l o g 10 ( D 1 ) = 100 32.45 20 log ( F 1 ) = 100 32.45 52.7 = 14.85
D 1 = 10 0.7425 5.527   Km
The maximum range between the UAV and the cluster head node is D 1   =   5.527   Km.
In our developed system, we don’t need to communicate over a long distance of 5 Km. If we are considering a UAV that is flying at a height of 300 m and it wants to activate nodes in 500 m area then only 0.825 μW of power is required by the UAV to transmit the F 1 signal to sensor nodes to communicate.

7.3. Short Range Communication (2.4 GHz WiFi Frequency)

The high power and short range (e.g., WiFi) module is only activated only when data needs to be transmitted. In a similar way, we can find the maximum distance covered by a WiFi signal taking all parameters as considered for F 2 frequency, except for a higher masking factor that is 20.
Receiver sensitivity of a UAV is ξ =   130   dBm
A signal to noise ratio necessary to demodulate is S N R =   15   dB
The maximum path loss constraint is:
M P L = P W ξ S N R M F = 85   dB
Based on Equation (15), we can calculate the maximum distance covered by WiFi communication:
20   l o g 10 ( D 2 ) = 85   d B 32   d B 20   l o g 10 ( F 2 ) = ( 85 32.45 67.6 ) d B = 15.05   d B
L o g 10 ( D 2 ) = 15.05 20 = 0.7525 D 2 = 10 0.7525 0.176 Km
The maximum range between the UAV and the cluster head node for data collection is 0.177   Km. We will then consider a maximum distance in the (x, y) plane of the order of x y U A V   =   150   m .

8. Simulation

Simulations are conducted in OMNeT++ (Objective Modular Network Test bed in C++) and MatLab to evaluate the performance of the developed system.

8.1. Simulation Model

As per our designed protocol, a wireless sensor node is equipped with two different frequencies: 433 MHz for localization and identification of nodes and 2.4 GHz for data transmission. We developed a sensor node simulation model using two NICs CC2420 [19] and CC1021 [20] as shown in Figure 9a. Both NICs are composed of MAC and physical layer and the sensor node consists of three layers (Application, Network and NIC). CC2420 is a 802.15.4 compliant Network Interface Card (NIC) operating at 2.4 GHz frequency and having built-in CSMA/CA in MAC layer, while CC1021 is a low power RF transceiver for narrowband systems operating at 433 MHz. The sensor node is considering as smart enough that it can negotiate a communication height with the UAV by considering the amount of data that must be transmitted and the remaining energy power level. It utilizes only 0.825 μW of energy while operating with the CC1021 for localization. The largest energy depletion factor is data transmission between the CH and UAV using a higher frequency, e.g., WiFi. If the considered node is selected as CH then the energy consumption of the CC2420 is optimized by limiting the agreed CH-UAV height. The UAV receives data at a lower height suitable for the CH. The UAV model is created with same NICs as in the sensor nodes. The only difference is the addition of mobility components in the main module as shown in Figure 9b.
The UAV is simulated to fly with a constant speed of 20 m/h and a height of 200 m. Initially, it switches on its CC1021 module and starts sending the beacon message. Once the UAV identifies the location of the selected CH, it starts moving towards it and reduces its height up to an agreed level. When the UAV approaches the CH, it will change its communication module from CC1021 to CC2420. All these simulation are available on YouTube links [21,22,23,24,25].

8.2. Simulation Cases

As described earlier, our case scenario belongs to the category of a Mobile Sink Static Node (MSSN) network where a sink is traversing the network to collect data while all sensor nodes are kept constant. If we are taking the sink as a mobile node then there are three possibilities:
(1)
Direct data collection,
(2)
Cluster-based data collection with a controlled path,
(3)
Cluster-based data collection with an independent UAV path.
In this scheme, the UAV can move freely and instruct the ground sensor nodes to form clusters and help them to select a cluster head. To evaluate this developed system, we studies three cases, one for each type:
  • Direct Data Collection (DDC) by UAV, as described in [26],
  • Network Assisted Data Collection (NADC), as given in [27]
  • Our developed UAV Routing Protocol (URP).
One hundred sensor nodes are deployed randomly with a uniform distribution in a 2 Km2 area.

8.3. Simulation Results

Different simulation models and cases are executed a number of times (at least five times) and the average results are considered for more accuracy. Different simulation cases are described one by one as given below:

8.3.1. Number of Dead Nodes vs. Simulation Time

In this simulation run, we wanted to check how energy is utilized and how fast the sensor nodes’ energy becomes completely exhausted. We simulate each case (DDC, NADC, URP) separately with same parameters such as number of nodes, simulation time, initial node energy, node/UAV communication ranges, data collection height, etc.
We can conclude that using our developed system, the network lifetime can be improved by 20% or more on the expense of UAV energy, adding more intelligent sensor nodes and dual frequency support in the UAV and nodes (as Figure 10a).

8.3.2. Effect of Beacon Sending Period

The UAV starts its data collection process by sending beacon messages to activate the sensor nodes. This beaconing period decides the size of clusters, and the longer the beaconing period the larger the cluster size. This phenomenon can also affect the performance of the system. The developed system is tested against varying beacon sending periods and the results are shown hereinafter.
Figure 10b represents the total number of dead nodes on the X-axis, simulation time on the Y-axis and different curves show the performance of system using different beacon periods. The lower the curve the better is the performance. It is observed in Figure 10c that by increasing the beaconing period the clusters become larger in size and fewer in number. Number and size of clusters may also effect the energy utilization of the system, which is further investigated in Figure 11.
Figure 11a shows the remaining energy of each node at the end of simulation while using 2 s beacons. More high peaks mean more nodes are unutilized. Figure 11b shows similar results as Figure 11a but we considered have 4 s beacons.
The system is evaluated by changing the beaconing period from 1 to 4 s. If a 4 s beacon is used about 580 clusters are made in 100 rounds. Further, in the case of a1 s beacon the number of clusters is 980. Figure 11a shows that about 10 nodes are left unattended or unutilized at the end of the simulation, while in Figure 11b the energy utilization is improved in the sense that only two nodes are observed unutilized and few are underutilized.

8.3.3. Dead Nodes Investigation in Matlab

Figure 12a shows the comparison of dead nodes vs. UAV rounds in different routing schemes. The number of rounds is shown on the X-axis and number of dead nodes is shown on the Y-axis. Different colored curves represent different data gathering schemes. The lower the curve, the higher the performance. Red and purple lines show the performance of proposed UAV Routing Protocol (URP). We tested the developed system at constant and fixed height (the UAV is not going down to take data) as in case of other networks (LEACH and HEED) and the results are shown in the red curve. When the UAV is flying at a fixed constant height even then our proposed system is performing quite well. The purple curve URP-adopted height is the best case scenario when the UAV negotiates the best height with the CH in advance and respect it while collecting the data. Thanks to the fact that there are no periodic updates, no flooding of information, better CH selection and duel frequency use, that helps us to optimize the node energy up to a maximum extent. The UAV and CH negotiate a suitable height for data collection. As long-range communication is the main source of energy depletion, adjusting has in a good impact on overall system lifetime.

8.3.4. Inter-Cluster Communication Assessment

Number of packets exchanged among clusters to build a network is shown in Figure 12b. The number of rounds is shown on the X-axis, packets delivered are represented by the Y-axis and the colored curves shows different protocols. The lower the curve the better the system is. It is observed that about 140 k packets are exchanged among cluster members and cluster heads in 1000 rounds just only to keep network live and updated in the form of periodic updates, clustering information and CH notifications. In the proposed system, only 20 k messages are exchanged, which is a great factor that improves the system performance a lot.

9. Proof of Concept

We used an Arduino microcontroller to build two components, an UAV module and ground sensor nodes. A specialized UAV is also made to carry this equipment and can operate as per instructions given onboard by our developed system. IoT and UAV sink nodes are developed using same hardware shown in Figure 13, the only difference being the software uploaded because they have different functionality.
Both devices are built using a nRF24L01 transceiver, which is a low power consumption transceiver operating at 2.4 GHz frequency and capable of transmitting data at rates up to 2 Mbps. A circuit diagram for the nRF24L01 [28] and wiring information are shown in Figure 14.
Initially, we loaded all sensor nodes with 20 Kb (Kilo Bytes) of data and five nodes are deployed in the field. When the UAV approaches the field, one of them is elected as CH dynamically and it collects all the data from neighboring nodes and finally transmits 100 Kb data to the UAV.
The localization components, including the virtual antenna, UHF 433 MHz transceiver for the UAV and sensor nodes are still in development and not installed so far. The first test run results are given below. All these results do not include the UAV navigation time.

9.1. Working of Cluster Member Nodes

The algorithm described in Section 6 is developed in Arduino language which is mostly based on C++. The developed code then builds on Arduino Uno board shown in Figure 13 that is developed to make a field sensor node. We choose Arduino mini to keep the node size small. Figure 15a represents the activity graph of a ground sensor node that acts as cluster member. It is observed that it takes about 5.4 s to complete the cluster formation and data delivery. In that figure, the X-axis represents the CM sequence of activities, while the Y-axis shows the time in seconds and the curves represent the relationship betweentime and activities. The parameters of this node were set to assume it doesn’t have good specification and its CH probability is almost 0, so it decides immediately to set its status as CM. Cluster head selection takes about 4.5 s and finally data transmission takes less than a second to complete its process.

9.2. Cluster Head Node Activities

Figure 15b shows the graph of CH working. It takes about 10 s to complete its working cycle. It is observed that this node becomes a CH in 5 s, during this period, it becomes activated, contacts neighboring nodes and shares information with the UAV. As this node has been selected as a CH, it has to collect data from all other members and transmit the aggregated data to the UAV. This whole procedure is conducted in 5 s.

9.3. Working Cycle of the UAV

Life cycle of the UAV is shown in Figure 15c. It sends a beacon message in the first 5 s, then switches to discovery phase to search for a suitable CH. Once a CH is selected, it will navigate to approach it and collect data at some reasonable height. The whole procedure takes about 10 s.

9.4. Combined Activities Analysis

Comparison of UAV activities with respect to the CM and CH are shown in Figure 16a. The X-axis represents UAV activities, while the Y-axis shows time in seconds and different color curves represent different components (UAV, CH and CM).

9.5. Effect of Varying Height on Data Collection

We evaluate the effect of changing height on the system performance and results are shown in Figure 16b. The X-axis shows the height of the UAV from 1.2 m to 20 m. and the Y axis represents both time consumed in seconds and energy utilization in PJ (Peta Joules).
By increasing the height of the UAV, we could not notice any effect on the data collection time but it may have a massive impact on the CH energy utilization.

10. Conclusions

We have developed and tested a dynamic data collection method where data can be collected from selected nodes in a targeted area. In this project, an UAV can move freely without considering the ground network topology. To tackle this, it is proposed that ground nodes will form clusters according to the UAV’s path and the nature of data. Further we introduced a Bayesian probability- based cluster head selection process to select the best node as a cluster head. The developed system is evaluated through simulation and proof of concept devices. From the simulation results, we can conclude that the proposed system can drastically increase the network lifetime while maintaining a good throughput. For proof of concept, sensor and sink nodes are developed by using an Arduino microcontroller where the sink node is integrated with the UAV so that it can control the UAV’s flight. Real time field data is collected and different parameters are monitored for performance evaluation. The measured results showed that this system is practically feasible while offering many benefits over traditional approaches. Critical data about crops like nutritional stress, bug attacks or the spread of diseases can be detected well in time so they can be cured before the crop is affected or destroyed. By using our developed system, farmers do not need the regular visits to their large farm field and they can rely on this fully automatic system to get accurate, up-to-date and precise information. Furthermore this system can help the farmers to plan the optimum utilization of resources as the system can take appropriate action on their behalf, if some threshold is achieved. Considering all this we can say that developed system will facilitate the use of IoT technology for agriculture to take care of crop health to ensure the quality and quantity of foods. Moreover, the proposed system can be extended in the future in many ways; multiple UAVs can be used in a a coordinated way to further increase the throughput. Single hop clusters can be extended to multi-hop ones at the same time that more professional sensors and sink devices can be made from the proof of concept.

Acknowledgments

The authors gratefully acknowledge the support of SNCS Research Center at the University of Tabuk, Saudi Arabi.

Author Contributions

Mohammad Ammad Uddin originated the idea, concept and algorithms as well as performed simulation study, proof of concept development and real field testing of the system; Ali Mansour participated in mathematical models and algorithm development. Also perform results verification and over all supervision; Denis Le Jeune contributed in developing signaling method, localization, performance measurement, system validation. Also validate results and system working; Manuscript proof reading, editing, change validation and rechecking is done by Muhammad Ayaz; el-Hadi M. Aggoune supervised the project Over all working, evaluation, integration and testing.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Fu, C.; Jiang, Z.; Wei, W.; Wei, A. An Energy Balanced Algorithm of LEACH Protocol in WSN. Int. J. Comput. Sci. 2013, 10, 354–359. [Google Scholar]
  2. Kaixin, X.; Gerla, M. A Heterogeneous Routing Protocol Based on a New Stable Clustering Scheme. In Proceedings of the Military Communication Conference MILCOM, San Jose, CA, USA, 31 October–3 November 2010; Volume 2, pp. 838–843. [Google Scholar]
  3. Shangguan, L.; Mai, L.; Du, J.; He, W.; Liu, H. Energy-efficient Heterogeneous Data Collection in Mobile Wireless Sensor Networks. In Proceedings of the 20th International Conference on Computer Communication Networks (ICCCN’2011), Maui, HI, USA, 31 July–4 August 2011. [Google Scholar]
  4. Khan, A.W.; Abdullah, A.H.; Razzaque, M.A.; Bangash, J.I. VGDRA: A Virtual Grid-Based Dynamic Routes Adjustment Scheme for Mobile Sink-Based Wireless Sensor Networks. IEEE J. Sens. 2015, 15, 526–534. [Google Scholar] [CrossRef]
  5. Okcu, H.; Soyturk, M. Distributed Clustering Approach for UAV Integrated Wireless Sensor Networks. Int. J. Ad Hoc Ubiquitous Comput. 2014, 15, 106–115. [Google Scholar] [CrossRef]
  6. Khan, A.; Abdullah, A.; Anisi, M.; Bangash, J. A Comprehensive Study of Data Collection Schemes Using Mobile Sinks in Wireless Sensor Networks. IEEE J. Sens. 2014, 14, 2510–2548. [Google Scholar] [CrossRef] [PubMed]
  7. Chang, J.-Y.; Ju, P.-H. An Efficient Cluster-based Power Saving Scheme for Wireless Sensor Networks. EURASIP J. Wirel. Commun. Netw. 2012, 2012, 172–179. [Google Scholar] [CrossRef]
  8. Sharef, B.T.; Alsaqour, R.A.; Ismail, M. Vehicular Communication Ad-hoc Routing Protocols: A Survey. J. Netw. Comput. Appl. 2014, 40, 363–396. [Google Scholar] [CrossRef]
  9. Duan, Y.E. Design of Intelligent Agriculture Management Information System Based on IoT. In Proceedings of the 2011 Fourth International Conference on Intelligent Computation Technology and Automation, Shenzhen, China, 28–29 March 2011; pp. 1045–1049. [Google Scholar]
  10. Fan, T.K. Smart Agriculture Based on Cloud Computing and IOT. J. Converg. Inf. Technol. 2013, 8, 210–216. [Google Scholar]
  11. Bo, Y.; Wang, H. The Application of Cloud Computing and the Internet of Things in Agriculture and Forestry. In Proceedings of the 2011 International Joint Conference on Service Sciences, Taipei, Taiwan, 25–27 May 2011; pp. 168–172. [Google Scholar]
  12. Uddin, M.A.; le Jeune, D.; Mansour, A.; el Aggoune, H.M. Direction of Arrival of Narrowband Signals Based on Virtual Phased Antennas. In Proceedings of the IEEE 23rd Asia-Pacific Conference on Communication, Perth, Australia, 11–13 December 2017; pp. 627–632. [Google Scholar]
  13. Koutsias, J.; Chandrinos, K.V.; Paliouras, G.; Spyropoulos, C.D. An evaluation of Naive Bayesian anti-spam filtering. In Proceedings of the 11th European Conference on Machine Learning, Barcelona, Spain, 31 May–2 June 2000. [Google Scholar]
  14. Mokhesi, L.; Bagula, A. Context-aware handoff decision for wireless access networks using Bayesian networks. In Proceedings of the Annual Research Conference of the South African Institute of Computer Scientists and Information Technologists, Vanderbijlpark, South Africa, 12–14 October 2009; pp. 104–111. [Google Scholar]
  15. Domingos, P.; Pazzani, M. On the Optimality of the Simple Bayesian Classifier under Zero-One Loss. Mach. Learn. 1997, 29, 103–130. [Google Scholar] [CrossRef]
  16. Wang, Q.; Garrity, G.M.; Tiedje, J.M.; Cole, J.R. Naive Bayesian Classifier for Rapid Assignment of rRNA Sequences into the New Bacterial Taxonomy. Appl. Environ. Microbiol. 2007, 73, 5261–5267. [Google Scholar] [CrossRef] [PubMed]
  17. Androutsopoulos, I.; Koutsias, J.; Chandrinos, K.V.; Spyropoulos, C.D. An experimental comparison of naive Bayesian and keyword-based anti-spam filtering with personal e-mail messages. In Proceedings of the 23rd Annual International ACM SIGIR Conference on Research and Development in Information Retrieval, Athens, Greece, 24–28 July 2000; pp. 160–167. [Google Scholar]
  18. Faruque, S. Chapter 2 Free Space Propagation. In Radio Frequency Propagation Made Easy; Springer: Berlin, Germany, 2015; pp. 19–26. [Google Scholar]
  19. 2.4 GHz IEEE 802.15.4/ZigBee-Ready RF Transceiver. Texas Instruments Incorporated. Available online: http://www.ti.com/lit/ds/symlink/cc2420.pdf (accessed on 2 May 2017).
  20. CC1021 Single Chip Low Power RF Transceiver for Narrowband Systems. Texas Instruments Incorporated. Available online: http://www.ti.com/lit/ds/swrs045e/swrs045e.pdf (accessed on 6 October 2017).
  21. Ammad-udDin, M. Field Test of Agriculture IoT Devices. 2017. Available online: https://www.youtube.com/watch?v=Bma2qE7f1gk (accessed on 3 December 2017).
  22. Ammad-udDin, M. UAV Connectivity with Sensor Nodes. 2017. Available online: https://www.youtube.com/watch?v=xzf4SkhDteE (accessed on 3 December 2017).
  23. Ammad-udDin, M. STK Simulation of Dynamic Data Collection by UAV. 2017. Available online: https://www.youtube.com/watch?v=OXtNn94l1xA (accessed on 3 December 2017).
  24. Ammad-udDin, M. MatLab 3D Simulation of Dynamic Clustering. 2017. Available online: https://www.youtube.com/watch?v=zVM42i9BQFY (accessed on 3 December 2017).
  25. Ammad-udDin, M. OMNet ++ Simulation of Dynamic Clustering and Crop Health Monitoring. 2017. Available online: https://www.youtube.com/watch?v=pYx-Z0chWoA (accessed on 3 December 2017).
  26. Li, X.; Nayak, A.; Stojmenovic, I. Exploiting Actuator Mobility for Energy-Efficient Data Collection in Delay-Tolerant Wireless Sensor Networks. In Proceedings of the 2009 Fifth International Conference on Networking and Services, Valencia, Spain, 20–25 April 2009; pp. 216–221. [Google Scholar]
  27. Rao, J.; Biswas, S. Joint Routing and Navigation Protocols for Data Harvesting in Sensor Networks. In Proceedings of the 5th IEEE International Conference on Mobile Ad Hoc and Sensor Systems, Atlanta, GA, USA, 29 September–2 October 2008; pp. 143–152. [Google Scholar]
  28. RF24L01 2.4GHz Radio/Wireless Transceivers How-To. Available online: https://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo (accessed on 6 October 2017).
Figure 1. Proposed System lifecycle.
Figure 1. Proposed System lifecycle.
Sensors 18 00555 g001
Figure 2. Flow chart of the UAV working.
Figure 2. Flow chart of the UAV working.
Sensors 18 00555 g002
Figure 3. Working flow of sensor node.
Figure 3. Working flow of sensor node.
Sensors 18 00555 g003
Figure 4. Dynamic clustering scheme.
Figure 4. Dynamic clustering scheme.
Sensors 18 00555 g004
Figure 5. Multi-layer and multi-phase proposed system architecture.
Figure 5. Multi-layer and multi-phase proposed system architecture.
Sensors 18 00555 g005
Figure 6. UAV discovery phase.
Figure 6. UAV discovery phase.
Sensors 18 00555 g006
Figure 7. Navigation phase of the proposed system.
Figure 7. Navigation phase of the proposed system.
Sensors 18 00555 g007
Figure 8. State diagram of the developed system.
Figure 8. State diagram of the developed system.
Sensors 18 00555 g008
Figure 9. Developed OMNet++ simulation model (a) Sensor node simulation model (b) Mobile sink extra module other than sensor node model.
Figure 9. Developed OMNet++ simulation model (a) Sensor node simulation model (b) Mobile sink extra module other than sensor node model.
Sensors 18 00555 g009
Figure 10. Simulation results of different cases (a) Number of dead nodes vs. simulation time (b) effect of varying beacon sending period.
Figure 10. Simulation results of different cases (a) Number of dead nodes vs. simulation time (b) effect of varying beacon sending period.
Sensors 18 00555 g010
Figure 11. Effect of beaconing period on energy utilization (a) 2 s beaconing (b) 4 s becoming.
Figure 11. Effect of beaconing period on energy utilization (a) 2 s beaconing (b) 4 s becoming.
Sensors 18 00555 g011
Figure 12. Comparison of existing routing protocols with the proposed system (a) Number of rounds vs. dead nodes; (b) comparison of the amount of inter-cluster communication in different routing algorithms that is required to formulate a cluster.
Figure 12. Comparison of existing routing protocols with the proposed system (a) Number of rounds vs. dead nodes; (b) comparison of the amount of inter-cluster communication in different routing algorithms that is required to formulate a cluster.
Sensors 18 00555 g012
Figure 13. Proof of concept sensor and UAV node.
Figure 13. Proof of concept sensor and UAV node.
Sensors 18 00555 g013
Figure 14. NRF24L01 and Aduino wiring diagram.
Figure 14. NRF24L01 and Aduino wiring diagram.
Sensors 18 00555 g014
Figure 15. Activities of proof of concept devices related to time (a) sensor node (b) cluster head (c) UAV.
Figure 15. Activities of proof of concept devices related to time (a) sensor node (b) cluster head (c) UAV.
Sensors 18 00555 g015
Figure 16. Performance analysis of proof of concept devices (a) activities of different components with respect of time (b) effect of varying height on throughput and energy consumption.
Figure 16. Performance analysis of proof of concept devices (a) activities of different components with respect of time (b) effect of varying height on throughput and energy consumption.
Sensors 18 00555 g016
Table 1. UAV beacon message.
Table 1. UAV beacon message.
Type (6 bytes)Height (2 bytes)Threshold (1 byte)Other (2 bytes)
HeaderPayloadTrailer
Table 2. Sensor noder unique ID.
Table 2. Sensor noder unique ID.
Circle No.TypeSub TypePurposeUnique No.Total Size
1 byte1 byte1 byte1 byte2 bytes6 bytes
Prefix
Table 3. Sensor node reply.
Table 3. Sensor node reply.
ID (6 bytes)Probability (2 bytes)Trailer (1 byte)
HeaderPayloadTrailer
Table 4. The list of variables used in state diagram.
Table 4. The list of variables used in state diagram.
VariableMeaning
C C H Set of cluster heads
C I D Id of CH broadcast by UAV
D 1 Distance for localization at least 120 m we are taking it 200 m
D 2 Distance for data collection (95 m)
D 2 L Minimum possible distance for data collection (170 m)
D 2 H Maximum possible distance for data collection (170 m)
E i Energy of node i
F 1 1st Frequency 433 MHz
F 2 2nd Frequency 2.4 GHz
g GPS accuracy
I D i Id of crop sensor i
𝒷 i Data of node i
i Location of node i
m Number of antenna elements
n Number of Sensor nodes ( S 1 ,   S 2 ,   ,   S n )
P i Probability of node i by known its location
q Number of CCH nodes
T 𝒷 Total data of a cluster
T h Threshold set by UAV, default = 0
T E T x Total energy requires to send T 𝒷 bits to D 2 distance
T y s Type of sensor node announce by UAV
P i Probability of node i to become a cluster head

Share and Cite

MDPI and ACS Style

Uddin, M.A.; Mansour, A.; Jeune, D.L.; Ayaz, M.; Aggoune, E.-H.M. UAV-Assisted Dynamic Clustering of Wireless Sensor Networks for Crop Health Monitoring. Sensors 2018, 18, 555. https://doi.org/10.3390/s18020555

AMA Style

Uddin MA, Mansour A, Jeune DL, Ayaz M, Aggoune E-HM. UAV-Assisted Dynamic Clustering of Wireless Sensor Networks for Crop Health Monitoring. Sensors. 2018; 18(2):555. https://doi.org/10.3390/s18020555

Chicago/Turabian Style

Uddin, Mohammad Ammad, Ali Mansour, Denis Le Jeune, Mohammad Ayaz, and El-Hadi M. Aggoune. 2018. "UAV-Assisted Dynamic Clustering of Wireless Sensor Networks for Crop Health Monitoring" Sensors 18, no. 2: 555. https://doi.org/10.3390/s18020555

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop