A wireless sensor network for precision agriculture and its ...

18
WIRELESS COMMUNICATIONS AND MOBILE COMPUTING Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 Published online 2011 in Wiley Online Library (wileyonlinelibrary.com). DOI: 10.1002/wcm.1229 RESEARCH ARTICLE A wireless sensor network for precision agriculture and its performance Herman Sahota * , Ratnesh Kumar and Ahmed Kamal Department of Electrical and Computer Engineering, Iowa State University, Ames, IA 50011, U.S.A ABSTRACT The use of wireless sensor networks is essential for implementation of information and control technologies in precision agriculture. We present our design of network stack for such an application where sensor nodes periodically collect data from fixed locations in a field. Our design of the physical layer consists of multiple power modes in both the receive and transmit operations for the purpose of achieving energy savings. In addition, we design our MAC layer to use these multiple power modes to improve the energy efficiency of wake-up synchronization phase. Our MAC protocol also organizes all the sender nodes to be synchronized with the receiver simultaneously and transmit their data in a time scheduled manner. Next, we design our energy aware routing strategy that balances the energy consumption over the nodes in the entire field and minimizes the number of wake-up synchronization overheads by scheduling the nodes for transmission in accordance with the structure of the routing tree. We develop analytical models and simulation studies to compare the energy consumption of our MAC protocol with that of the popular S-MAC protocol for a typical network topology used in our application under our routing strategy. Our MAC protocol is shown to have better energy efficiency as well as latency in a periodic data collection application. We also show the improvements resulting from the use of our routing strategy, in simulations, compared with the case when the next hop is chosen randomly from the set of neighbors that are closer to the sink node. Copyright © 2011 John Wiley & Sons, Ltd. KEYWORDS wireless sensor networks; performance analysis; energy efficiency; wireless application protocol *Correspondence Herman Sahota, Department of Electrical and Computer Engineering, Iowa State University, Ames, IA 50011, U.S.A. E-mail: [email protected] 1. INTRODUCTION Precision agriculture refers to the use of information and control technologies in agriculture. Agricultural inputs such as irrigation and fertilizers can be applied in pre- cise quantities as determined by modeling of crop growth patterns to maximize the crop yield and to minimize the impact on the environment. Fertilizer uptake and irrigation needs within a field depend on factors that vary in space and time. A wireless sensor network with sensor nodes spread throughout the field can periodically collect and relay soil data to the information processing center. This data can be used as inputs to the modeling software(s) to determine the optimal quantities of the agricultural inputs (fertilizers, irrigation, pesticides etc.) required in different locations and at different times in the field. In [1] and [2], we presented the design of our sensor network for automated collection of soil data from a farm- field and our analytical model used to compute the energy efficiency of our MAC protocol with that of S-MAC under the settings of our application and network layers. This paper is an extension of the same work where we provide more details of our design and our performance model- ing approach. Our application requires the collection of soil data over the entire duration of crop season(s) at a sampling frequency of about once per hour and a spatial resolution of about 50 50 m 2 (Figure 1). Sensor nodes are placed in a rectangular grid at the required spatial res- olution and are integrated into a network that collects data periodically. The data is relayed to a sink node located at one of the corners of the rectangular field at regular time intervals, consistent with the measurement period. We design our network stack (physical (PHY), MAC, and network layers) to meet the requirements of the applica- tion. Models used in precision agriculture such as those to predict crop growth patterns, hydrologic flow, and car- bon cycle require data collection from the entire field at an interval of an hour or more. Thus, although latency is not 1628 Copyright © 2011 John Wiley & Sons, Ltd.

Transcript of A wireless sensor network for precision agriculture and its ...

Page 1: A wireless sensor network for precision agriculture and its ...

WIRELESS COMMUNICATIONS AND MOBILE COMPUTINGWirel. Commun. Mob. Comput. 2011; 11:1628–1645Published online 2011 in Wiley Online Library (wileyonlinelibrary.com). DOI: 10.1002/wcm.1229

RESEARCH ARTICLE

A wireless sensor network for precision agricultureand its performanceHerman Sahota*, Ratnesh Kumar and Ahmed Kamal

Department of Electrical and Computer Engineering, Iowa State University, Ames, IA 50011, U.S.A

ABSTRACT

The use of wireless sensor networks is essential for implementation of information and control technologies in precisionagriculture. We present our design of network stack for such an application where sensor nodes periodically collect datafrom fixed locations in a field. Our design of the physical layer consists of multiple power modes in both the receive andtransmit operations for the purpose of achieving energy savings. In addition, we design our MAC layer to use these multiplepower modes to improve the energy efficiency of wake-up synchronization phase. Our MAC protocol also organizes all thesender nodes to be synchronized with the receiver simultaneously and transmit their data in a time scheduled manner. Next,we design our energy aware routing strategy that balances the energy consumption over the nodes in the entire field andminimizes the number of wake-up synchronization overheads by scheduling the nodes for transmission in accordance withthe structure of the routing tree. We develop analytical models and simulation studies to compare the energy consumptionof our MAC protocol with that of the popular S-MAC protocol for a typical network topology used in our applicationunder our routing strategy. Our MAC protocol is shown to have better energy efficiency as well as latency in a periodicdata collection application. We also show the improvements resulting from the use of our routing strategy, in simulations,compared with the case when the next hop is chosen randomly from the set of neighbors that are closer to the sink node.Copyright © 2011 John Wiley & Sons, Ltd.

KEYWORDS

wireless sensor networks; performance analysis; energy efficiency; wireless application protocol

*Correspondence

Herman Sahota, Department of Electrical and Computer Engineering, Iowa State University, Ames, IA 50011, U.S.A.E-mail: [email protected]

1. INTRODUCTION

Precision agriculture refers to the use of information andcontrol technologies in agriculture. Agricultural inputssuch as irrigation and fertilizers can be applied in pre-cise quantities as determined by modeling of crop growthpatterns to maximize the crop yield and to minimize theimpact on the environment. Fertilizer uptake and irrigationneeds within a field depend on factors that vary in spaceand time. A wireless sensor network with sensor nodesspread throughout the field can periodically collect andrelay soil data to the information processing center. Thisdata can be used as inputs to the modeling software(s) todetermine the optimal quantities of the agricultural inputs(fertilizers, irrigation, pesticides etc.) required in differentlocations and at different times in the field.

In [1] and [2], we presented the design of our sensornetwork for automated collection of soil data from a farm-field and our analytical model used to compute the energy

efficiency of our MAC protocol with that of S-MAC underthe settings of our application and network layers. Thispaper is an extension of the same work where we providemore details of our design and our performance model-ing approach. Our application requires the collection ofsoil data over the entire duration of crop season(s) at asampling frequency of about once per hour and a spatialresolution of about 50 � 50 m2 (Figure 1). Sensor nodesare placed in a rectangular grid at the required spatial res-olution and are integrated into a network that collects dataperiodically. The data is relayed to a sink node locatedat one of the corners of the rectangular field at regulartime intervals, consistent with the measurement period.We design our network stack (physical (PHY), MAC, andnetwork layers) to meet the requirements of the applica-tion. Models used in precision agriculture such as thoseto predict crop growth patterns, hydrologic flow, and car-bon cycle require data collection from the entire field at aninterval of an hour or more. Thus, although latency is not

1628Copyright © 2011 John Wiley & Sons, Ltd.

Page 2: A wireless sensor network for precision agriculture and its ...

H. Sahota, R. Kumar and A. Kamal Sensor network for precision agriculture and its performance

Sensor node

Satellite node

Base station

Figure 1. Wireless sensor network showing sensor and satellite station deployments and our hierarchical routing strategy.

a concern; energy efficiency and reliability (data loss) areof interest.

Sensor nodes are deployed in a farm-field that is dividedinto rectangular areas (Figure 1). Within each field, nodesare deployed in a rectilinear grid form. Nodes use a trans-mission power that enables them to communicate with theiradjacent nodes only. They are buried in the soil at a depth ofabout 30 cm. Such deployment of sensor nodes was chosenin order to fit the application’s requirement that samplesshould be taken from spatial points in the field where thespatial resolution enables the model to predict the moistureand nitrogen distribution. Also, farming equipment usuallytraverses the field in regular patterns that can be used toplant the sensor nodes in the field in the rectilinear grid.

At the corners of each field, special nodes called satel-lite nodes are deployed. Communication between sensornodes in a field and the satellite nodes at the corners of thefield is asymmetric in the sense that a transmission froma satellite node can reach all sensor nodes in the field, buta transmission from a sensor node reaches adjacent sen-sor nodes only and can reach a satellite node if it is closeenough. The four corner satellite nodes assume the roleof sink in a round-robin manner and collect informationfrom the sensor nodes in the adjoining field to relay thecollected information to the base station where the infor-mation is processed. We use hierarchical routing in oursystem. At level one, the sensor nodes in a field relaythe data to the designated sink node (one of the satellitenodes), and at level two, the satellite nodes relay the datacollected to the base station. We focus our current workon designing the network used to relay the data collectedfrom one such rectangular field to its designated sink node.Satellite nodes also dispatch routing and scheduling infor-mation to the nodes in the field and participate in the sensorlocalization process.

Wireless communication is the most energy intensiveprocess at sensor nodes. Hence, our goal is to designPHY layer, MAC, and network protocols to minimize theenergy consumption at the transceiver. The communicationpattern in our application is best described as periodic and

bursty. Nodes are active for a relatively short period whenthey relay the collected data to the sink node. This is fol-lowed by a long period of inactivity, the duration of whichdepends on the frequency of data collection (approximatelyonce per hour). To conserve energy, the transceivers areshut down during this period of no active communication.At the beginning of a data collection round, nodes are syn-chronized by one of the satellite nodes and provided withroute and schedule information. Nodes are scheduled torelay their data over multiple hops to the designated sinknode. After synchronization by the satellite node, all sen-sor nodes turn off their transceivers and set a timer to wakeup at their respective scheduled time of communication.However, because of frequency drifts in the crystal oscil-lators used in hardware timers, a node may wake up at adifferent instant than its neighboring node requiring wake-up synchronization. Note that any energy consumed duringthis phase is an overhead. In current designs of energy effi-cient MAC protocols for wireless sensor networks ([3],[4], [5]), wake-up synchronization between a sender anda receiver is established using regular transmission-powerand receiver-sensitivity levels of PHY layer. Our strategyis aimed at reducing the energy consumption during thisphase. We consider a modified wake-up synchronizationscheme in which a node lowers its energy consumption byreducing its own receiver sensitivity level. In contrast, weincrease the transmission-power level of the wake-up syn-chronization signal to allow for a successful detection by areceiver operating at a lower sensitivity level. It turns outthat this new scheme saves the overall energy consump-tion during the synchronization phase because the protocoluses a relatively short pulse for wake-up signal [1]. Addi-tionally, we take advantage of the convergecast nature ofsensor network traffic to minimize the number of highenergy pings transmitted. This is achieved by making thedownstream node wake up all its upstream neighbors witha common ping signal. Existing sensor network MAC pro-tocols such as S-MAC [3], WiseMAC [4], and T-MAC [5]establish individual link communications independently,regardless of whether two or more links share a common

Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

1629

Page 3: A wireless sensor network for precision agriculture and its ...

Sensor network for precision agriculture and its performance H. Sahota, R. Kumar and A. Kamal

downstream node. To bound the clock drift from growingindefinitely, nodes are synchronized globally by the satel-lite nodes periodically. In our design, we make the periodof global synchronization equal to the data collection inter-val. After synchronization by the satellite node, each nodeenters a sleep mode to be woken up by a timer event at thescheduled time of communication.

Besides our MAC layer that aims to minimize energyconsumption, we design our network layer to balance therate of energy depletion among all the nodes in the net-work. We use an energy aware routing strategy to computethe multihop routes from each node in the field to the des-ignated sink node located at one of the four corners ofthe rectangular field. At each node, the next hop is cho-sen as the node that has the maximum remaining energyfrom the set of neighboring nodes that are closer to the sinknode. Any of the satellite nodes located at the four cornersof the rectangular field are capable of functioning as thesink node. To reduce the load on the relay nodes locatednear the corners, the role of the sink is rotated among thefour corner nodes. In addition, to minimize the numberof link establishments and hence the overhead of wake-upsynchronizations between any given pair of nodes, a trans-mission schedule is computed to ensure that a node relaysits collected data to the next hop only after it has received(or attempted to receive) the data from all the nodes in therouting subtree rooted at itself.

Majority of the MAC protocols proposed for wirelesssensor networks achieve energy efficiency by switchingoff the transceivers when no communication is takingplace. S-MAC is such a protocol. We present our analyti-cal method to model the performance (throughput, latency,and energy consumption) of our MAC protocol and that ofS-MAC [3] under the settings of our application and net-work layers. We validate our performance models againstthe simulation results, written in nesC and Python using theevent driven simulation framework provided by TOSSIM.We also use simulations to quantify the improvement inload balance attained by our network layer.

The following are the contributions of this paper:

� We consider multiple power modes at physical layerthat reduce the energy consumed during wake-up syn-chronizations and present the design of our energyefficient MAC layer.

� We develop our network layer to balance out the loadof communicating sensor data to a sink node andschedule the communications according to the com-puted routes to keep the number wake-up synchro-nizations to a minimum.

� We present an analytical approach to model theperformance (throughput, latency, and energy con-sumption) of the MAC protocol (ours and the stan-dard S-MAC) under a given routing topology. Theresults of our model show a 25% improvement inlatency and a 65% improvement in energy consump-tion for the same level of throughput, confirmedby simulations.

� We develop TOSSIM-based simulations of a wirelesssensor network, modeling the designed PHY, MAC,and routing layers to validate our analytical MACperformance models and to study the load balanc-ing gains achieved through our network layer. Oursimulation studies show a more balanced energy con-sumption profile over the sensor field reducing theprobability of network partitioning.

� We present an initial implementation of our MACprotocol on CC1110 system-on-chip with low-powerradio frequency (RF) transceiver and 8051 Microcon-troller (MCU) from Texas Instruments [6].

The organization of the paper is as follows: Section 2reviews our wake-up synchronization strategy, MAC layerfeatures, and routing strategy from [1]; Section 3 presentsour performance evaluation approach using simulationstudies and analytical models to analyze throughput,latency, and energy consumption for S-MAC and our MACprotocol under the realm of our routing strategy. We alsopresent simulation studies to analyze the load balanceachieved using our network layer. Section 4 highlightsrelated work, and we conclude with Section 5.

2. ENERGY EFFICIENT WAKE UPAND DATA COLLECTION

Our sensor network collects data periodically. We refer tothe period of time during which sensor nodes actively for-ward their collected data to the sink node as a data collec-tion round. All nodes receive routing and scheduling dataat the beginning of each round from the sink node of thatround and use this event to synchronize their clocks. How-ever, clocks drift during the course of the round owing tothe fact that sensor nodes are implemented using inexpen-sive crystals that may experience frequency drifts of theorder of 100 parts per million [7]. When two nodes wakeup to synchronize, their clocks could drift by an amount˙� relative to a true clock, where � represents the abso-lute clock drift. Therefore, the overhead energy spent canbe significant if� is large, which is the case for long inter-synchronization intervals. The unnecessary energy con-sumption can manifest itself at the sender in the form oflong preambles transmitted with every frame [4], [8] or atthe receiver in the form of longer idle listening periods.

To establish the wake-up synchronization in an energyefficient manner, we take the approach based on a trade-offbetween the energy consumed for wake-up synchroniza-tion at the transmitter versus at the receiver: The nodetransmitting the wake-up signal transmits at higher powerlevel but only for a fairly short duration, whereas thereceiver uses less power in the detection of the wake-upsignal by degrading its sensitivity. This can be achieved bybypassing some amplifier stages, thereby saving the energythey consume for their operation. The wake-up signal is asignal of very short duration and carries no data and its solepurpose is to generate an interrupt in the receiver circuit toindicate that it needs to wake up. A similar philosophy for

1630 Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

Page 4: A wireless sensor network for precision agriculture and its ...

H. Sahota, R. Kumar and A. Kamal Sensor network for precision agriculture and its performance

wake up has been proposed by the use of radio-frequencyidentification (RFID) technology in [9].

We refer to the mode of short duration and high-powerwake-up signal transmission as the ping mode. Likewise,the mode of operation of the receiver circuit in the degradedsensitivity is termed as drowsy. These two modes of theradio are used in the wake-up strategy employed by ourMAC protocol, discussed in the next subsection.

Figure 2 illustrates the energy saving achieved using thedrowsy and ping modes as opposed to the regular transmitand receive levels, when two nodes wake up to establish awireless link after a sleep period. Let ! denote the durationof a ping, Pt and Pr denote the power of regular transmitand receive modes, respectively, and Pp and Pd denotethe power of ping and drowsy modes, respectively. Theenergy saved during a wake-up synchronization can be upto .4�C!/.Pr�Pd /�!.Pp�Pt / (the first term denotesthe energy saved at the receiver, and the second term sub-tracts the extra energy needed for ping). The appearanceof the term ‘4�’ can be understood as follows: The sendermay wake up � time units earlier than scheduled, and inorder not to miss the ping, the receiver must target wakingup 2� units earlier than scheduled (so that it will wake uplatest by the sender’s scheduled wake-up time). But then,the receiver may wake up as early as 3� units prior to thesender’s scheduled wake-up time, whereas the sender maywake up as late as � unit after its own scheduled wake-up time; and as a result, the receiver may remain drowsyfor at most 4� units before it witnesses the ping signal. Inorder that � does not grow unbounded, the clocks need tobe synchronized periodically, and in our application, this iscarried out at the beginning of a round.

At network layer, we further aim at energy conserva-tion by seeking load balancing in the computation of routesfrom the sensor nodes in a field to the designated sink nodeand keeping the number of wake-up synchronizations to aminimum by assigning a transmission schedule based onthe routing tree. The routes are computed by taking intoconsideration the remaining battery level of the nodes: Adownstream node is chosen to be a neighbor closer to thesink node that has the maximum remaining energy level.Also, the role of the sink is rotated among the four cornernodes after each round of data collection to distribute the

energy consumption more evenly among the relay nodescloser to the corner nodes. The schedule for the trans-mission/reception of messages is computed in accordancewith the routing tree to ensure that the number of sender–receiver wake-up synchronizations and internodal commu-nications is kept to a minimum. We discuss our MAC andnetwork layers in the following subsections.

2.1. MAC layer

There are two communication patterns in our sensor net-work: broadcast (for distributing the route and scheduleinformation, and a clock reset signal to the nodes) and con-vergecast (for data collection in each round). The route,schedule, and global clock reset are distributed from thesink to sensor nodes over a single hop. This is possiblebecause the transmission range of the satellite nodes isconsiderably larger than that of the data collection sen-sor nodes. Accordingly, the main functionality of our MACprotocol is aimed at data collection (convergecast commu-nication), where data from sensor nodes is sent to a sinknode adhering to routing and scheduling information madeavailable to all nodes. The data flow in our network can becharacterized as periodic and bursty. Because of the peri-odic nature of the traffic, a time scheduled access to thechannel by each node is desirable to avoid unnecessarypacket loss and delay inherent in a carrier sense multipleaccess (CSMA)-based protocol such as 802.11 or 802.15.4(for contention-based access mode). Also, the sparse nodedensity, because of carefully chosen transmit power leveland receiver sensitivity to conserve energy, does not requirea contention-based access used in traditional MAC proto-cols to avoid collisions. However, because of the drift inthe nodes’ clocks when the transceivers are switched onfor communication, a synchronization process is needed.We use the high energy ping transmitted at one nodecoupled with lower receiver sensitivity drowsy mode atanother node as described in Section 2 to conserve energyduring the synchronization phase. The receiver node isassigned the task of transmitting the synchronizing pingto wake up all its upstream neighbors. Because of theconvergecast nature of the communication, this strategy

(b) Radio with multiple power modes

At most 4 Δ+ ω

ReceiverEnergy savings at receiver

data

Sender

At most 4 Δ+ ω

Receiver

data

Sender

(a) Traditional radio

ω ω

Ping

Ping

Drowsy

Figure 2. Illustration of energy saving at receiver by our scheme.

Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

1631

Page 5: A wireless sensor network for precision agriculture and its ...

Sensor network for precision agriculture and its performance H. Sahota, R. Kumar and A. Kamal

Ping

2Δ 2Δ

Receiver

Sender1

Sender2

ACK

Data

Data

ACK

Scheduled timefor ping

Scheduled timefor drowsy

Drowsy

Idle Idle

Drowsy

(a) An execution scenario of multiple senders to one receivercommunication links with PD-MAC.

Sync

req

. los

t

ACK

Data

Scheduled timeof wakeup

Scheduled timeof wakeup

Receiver

Sender1

Sender2

Scheduled timefor drowsy

Drowsy

Data

ACK

X

Sync

rep

.Sy

nc r

eq.

Sync

req

.

Sync

rep

.

(b) An execution scenario of multiple senders to one receivercommunication links with S-MAC.

Figure 3. Example execution scenarios: (a) PD-MAC and (b) S-MAC.

minimizes the number of high energy ping transmissions.The sender nodes must transition to drowsy modes beforethe receiver node transmits ping. We call our MAC pro-tocol PD-MAC (letters ‘P’ and ‘D’ stand for ping anddrowsy, respectively).

We denote the receiver node by m and the set of allupstream neighbors (senders) of node m by Um. All nodesk 2 Um are scheduled to transition to the drowsy modefrom sleep at the same instant (denoted by t0). To accountfor the ˙� clock drift, node m is scheduled to transmitthe high energy ping at t0 C 2� which ensures that allsender nodes have transitioned into drowsy mode whenthe ping is transmitted. A ping transmission is followedby jUmj number of time slots, one for each sender and anadditional slot for the collective ACK message transmittedby node m to indicate the successfully received data. Wedenote the duration of jUmj data slots and the accompa-nying ACK slot by Tm

DA. Each sender node k is assigned

an index t .k/ 2 f0; 1; 2; : : : ; jUmj � 1g which indicatesthe time slot in which the node must transmit its data.The ACK message is followed by another set of jUmj datatransmission time slots and an ACK transmission time slotand so on to allow up to Nd data transmission attempts foreach synchronized sender node before it receives a positiveacknowledgement message. A sender node that receivesan ACK or has attempted Nd data attempts transitions tosleep mode and does not transmit any more in the cur-rent data collection round. If, after Nd data attempts, thereceiver node m does not receive data from all its sendernodes, it is assumed that the failed sender nodes did notreceive the ping signal. In that case another ping is trans-mitted, followed by up to anotherNd data attempts by eachsender node synchronized by the most recent ping. Up toNs ping transmissions are allowed per receiver node. So, ifat least one of the synchronized sender nodes misses allNdattempts, the receiver node transmits all the Ns pings andwaits for data in regular receive mode for Nd :T

mDA

timeunits corresponding to each ping transmitted. Figure 3(a)shows the time line of events for our MAC protocol for

one receiver versus two upstream senders for Nd D 2 andNs D 2. Sender 2 misses the first ping but is synchro-nized by the second ping and transmits its data success-fully in one attempt. Sender 1 is synchronized by the firstping attempt and successfully transmits its data in the firstattempt.

We can formally understand the operation of PD-MACusing the finite state machines shown in Figure 4(a) and (b)for the sender and receiver nodes, respectively. Receivernode m and each sender node k 2 Um receive the routeand schedule information from a satellite node, synchro-nize their local clock and transition to sleep mode. Nodek 2 Um sets the timer to schedule wake-up to drowsymode at time t0, the scheduled time of communication withthe downstream node m. On the other hand, node m setsthe timer to schedule ping transmission at time t0 C 2�to ensure that all nodes k 2 Um have already transi-tioned to drowsy mode taking into account ˙� time unitsclock drift. Each sender node k that successfully detectsthe wake-up ping signal† transmits data in its allotted timeslot. Receiver nodem transmits a collective ACK message,containing a bit vector of length jUmj to indicate the suc-cessfully received data transmissions, after the last sender’s(jUmjth) data slot as shown in Figure 5.

To allow for Ns synchronization attempts interspersedwith Nd data attempts, the sender node sets a timer forduration 4� C Ns :Nd :T

mDA C Ns :Ts . The 4� term was

explained in Section 2. Nd :TmDA accounts for Nd data

attempts following every ping transmission, where TmDAdenotes the time duration allotted for one data attempt byevery sender node k 2 Um and the transmission of thecollective acknowledgement by node m. Ts denotes theduration of the ping signal. If the sender node does notdetect the ping and the timer fires, a channel access fail-ure is assumed, and the node goes back to sleep mode.If the sender node detects the ping signal, two possible

†we denote the probability that the ping signal is not detected by q

1632 Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

Page 6: A wireless sensor network for precision agriculture and its ...

H. Sahota, R. Kumar and A. Kamal Sensor network for precision agriculture and its performance

t(k)=0

4Δ+N .N .T

Set Timer=t , r=0

r<N &&

t(k)>0−ve ACK &&

DrowsySet Timer =

Rx−AckSet r=r+1

Tx−Data

Rx−idle

Sleep Timer fires

t(k)=0

t(k)>0

Tim

er f

ires

Set Timer=T (k)

d+ve ACK OR r=N

−ve ACK &&

r<N && Timer fires

r<N

i<N && r=N

(i=N && r=N )

OR D=U

PingSet i=i+1

Tx−AckSet r=r+1

Tx−Data

Sleep

i=0

r=0

Set Timer=t +2Δ, i=0

Figure 4. Finite state machines for PD-MAC. Counters i and r keep track of the number of ping transmissions and data attemptsmade, respectively.

Dat

a sl

ot 0

AC

K s

lot

AC

K s

lot

Dat

a sl

ot 1

Dat

a sl

ot 2

Pin

g

Dat

a sl

ot 0

Dat

a sl

ot 1

Dat

a sl

ot 2

Dat

a sl

ot 0

Dat

a sl

ot 1

Dat

a sl

ot 2

Figure 5. Data and acknowledgement slots once synchronization is established.

actions take place depending on the value of the transmis-sion order t .k/. If t .k/D 0, that is, node k is assigned thefirst slot to transmit its data, it transitions the transceiverto transmit mode immediately to transmit the data. Oth-erwise, it waits in sleep mode for all other sender nodesthat have a lower transmission order than itself to transmittheir data. The duration of sleep is computed as Tt .k/ DPj2Umjt.j /<t.k/

TD.jRj j/, where TD.jRj j/ denotes theduration of time slot needed for node j to transmit its data,which consists of data from all the nodes in the routing sub-tree Rj rooted at node j . Each sender node transmits up toNd times until it receives a positive acknowledgement atwhich point it transitions to sleep mode and waits for thenext data round’s route and schedule information from thesatellite node.

On the other hand, the receiver node m, upon receivingthe route and schedule information from the satellite node,transitions to sleep mode and sets the timer for t0 C 2�.When the timer fires, it transmits a ping to synchronize allnodes k 2 Um and immediately switches the transceiver toregular receive mode. It stays in receive mode for a dura-tion TD D

Pk2Um

TD.jRk j/ to allow one data attemptfor every sender node, keeping track of all successful trans-missions. When the timer fires, it transitions to regulartransmit mode to transmit the acknowledgement bit vec-tor of length jUmj. The process is repeated for up to Ndtimes for every ping transmitted. If it detects successfultransmission by all nodes k 2 Um before or at the endof Nd attempts, it transitions to sleep mode and waitsfor the next route and schedule update from the satellitenode. Otherwise, if it does not receive data from all nodesk 2 Um at the end of Nd attempts, it transmits anothersynchronizing ping signal and repeats the whole processfor up to Ns times.

2.2. Routing layer

Given a sink node for a round, a routing tree is constructedfor achieving load balancing. Each node will forwards itsdata to that neighbor which has witnessed the least deple-tion of energy so far. The schedule to transmit data pack-ets is computed complying with the order imposed bythe routing.

Multihop routes from all the sensor nodes to a sink arecomputed for each round. The objective is to minimize theenergy consumption by way of load balancing and avoid-ing more than one successful transmission by each nodein a round because each transmission incurs the additionalenergy overhead for wake-up synchronization. That is, anode must forward to a downstream node only when ithas received the data from all of its upstream nodes toavoid multiple transmissions. In our application, the sen-sor field is laid out in the form of a rectangle with thenodes placed at the various grid points. In each round, thenodes forward their data to a sink located at one of the fourcorners of the field. Within a round, a node forwards itsdata to a neighboring node that is closer to a designatedsink node. In case of multiple choices for such a neighbor,the data is forwarded to the one with maximum remain-ing energy level. Such routing strategy helps balance outthe energy consumption across the entire sensor field. Therole of the sink is rotated among the four corners of thefield to prevent asymmetrical depletion of energy amongthe corner relay nodes. A sequence of 4 rounds, in whicheach corner node has once acted as a sink, is called amacro-round.

Routes determine the order in which nodes must forwardtheir data. The scheduling of the nodes must be performedto determine the exact timings of events such as when a

Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

1633

Page 7: A wireless sensor network for precision agriculture and its ...

Sensor network for precision agriculture and its performance H. Sahota, R. Kumar and A. Kamal

node shall initiate wake up by generating ping, when shall anode go into drowsy to capture a ping and transmit its datatogether with the data it has collected from its upstreamnodes. All such scheduling is also performed within thenetwork layer. A goal of this scheduling is to ensure thatthe data collection takes place with as few pings as possi-ble. Note that this scheduling is different from packet levelscheduling which is performed as a part of MAC layer.The number of ping transmissions is also minimized bygrouping together all the senders to a receiver and awak-ening them by a single ping from the receiver. This isan instance of the cross-layered approach in our networkarchitecture where MAC layer uses information about thenetwork topology. The routing and the scheduling informa-tion is computed by the one of the corner satellite stationsand is then distributed to the nodes in the field.

3. MATHEMATICAL ANALYSIS ANDSIMULATION STUDIES

In this section, we present our performance modelingapproach to evaluate the performance of PD-MAC versusthat of S-MAC and validate our models using event drivensimulations. Also, we use simulations to quantify the per-formance improvements gained as a result of our energyaware routing strategy and sink assignment strategy forload balancing.

We develop analytical models to compute the through-put, delay, and energy consumption of PD-MAC andS-MAC under the settings of our application and routinglayers. For comparison purposes, both protocols operateunder the same routing and scheduling information madeavailable by the network layer. We consider a 25-node net-work placed in a 5� 5 rectangular grid. For the purpose ofmodeling the MAC protocols, we use a fixed routing treeas depicted in Figure 6. A corner node, node 0 acts as thesink at which all the data from the network is collected.The scheduling strategy ensures that no two links in thenetwork are active at the same time to avoid interference

22

2 3 4

7 8

0 1

5 6 9

10

21 24

14131211

15 16 17 18 19

2320

Figure 6. Routing tree R used for performance evaluation.

and also ensures that a node begins transmitting data toits downstream node only after it has already attempted tocollect data from all of its upstream nodes. For example, inFigure 6, link 17! 13 is scheduled after the links 23! 21

and 21! 17, respectively.The differences between S-MAC and PD-MAC lie in

the implementation of the routes and schedules and alsothe wake-up synchronization protocol. A wake-up syn-chronization protocol is used to synchronize two nodesthat awaken to communicate with each other after a sleepperiod. In S-MAC, the synchronization handshake as wellas the data/ack exchange occurs in a pairwise mannerbetween one sender node and one receiver node. If a nodehas more than one upstream neighbors, then the respec-tive sender!receiver links are scheduled in a sequence.For each such pair of nodes, a maximum of Ns synchro-nization attempts are allowed, and up to Nd data attemptsare allowed once synchronization is established. When anode wakes up to establish a communication link with itsneighbor, it waits for a predefined duration before trans-mitting a synchronization request packet so as to guaran-tee that the other node on the link is awake to receivethe synchronization request. The duration of this periodis accordingly chosen to be the worst case relative drift.2�/ between the clocks of the two nodes. Accordingly,letting 2TS denote the time to send synchronization requestand receive reply packet, the discovery duration (TDD),defined as the period of time a node must wait beforetransmitting a synchronization request when it wakes upto discover any existing neighboring sleep–listen sched-ules, lasts TDD D 2�C 2TS units of time. The node thatreceives the synchronization request packet replies with asynchronization reply packet. Keeping the primary goal ofcomparing latency and energy savings, we make a simpli-fying assumption that the reply packet is delivered errorfree. In addition, in regular S-MAC, the synchronizationreply (a.k.a rebroadcast of the synchronization packet) bythe node that receives a synchronization request happensafter a random back-off to prevent multiple nodes fromtransmitting at the same time. However, in our applica-tion setting, only a sender–receiver pair can be active ata time. Hence, a back-off is not required. The two nodeskeep awake (i.e., maintain a 100% duty cycle) until theyexpend all synchronization and data transfer attempts oruntil data transmission succeeds. This way, S-MAC is notpenalized with a longer round duration by being forced tosleep part of the time due the choice of a less that 100%duty cycle. A sender node is guaranteed to have data tosend to its downstream neighbor when it wakes up, elimi-nating the need for a sleep–listen schedule. Figure 3 showsa possible execution scenario of a schedule consisting ofone receiver and two sender nodes by S-MAC, under thechoice of parameters Ns D 2 and Nd D 2. The twolinks are scheduled sequentially. Sender 1 synchronizes inthe first synchronization attempt and successfully transmitsdata in one attempt. Sender 2 misses the first synchroniza-tion attempt but synchronizes in the second attempt andthen transmits its data successfully in one attempt.

1634 Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

Page 8: A wireless sensor network for precision agriculture and its ...

H. Sahota, R. Kumar and A. Kamal Sensor network for precision agriculture and its performance

On the other hand, in PD-MAC, a node synchronizes allof its upstream nodes with a common ping. A maximumnumber .Ns/ of ping attempts are allowed in case ofunsuccessful synchronization. Between successive pings,the upstream neighbors are allowed a maximum of Nddata transmission attempts in a time division manner. Thisprocess of synchronization and data collection constitutesthe communication time of a node in PD-MAC. Addition-ally, as explained in Section 2, PD-MAC uses multipleradio power modes to conserve energy during the wake-upsynchronization phase.

In case of PD-MAC, a possible execution of which underthe same scenario as S-MAC is also shown in Figure 3,a common ping signal is transmitted by the receiver tosynchronize the two senders. Sender 2 misses the first

ping. After allowing Nd D 2 transmission attempt to bothsenders, when the receiver does not get all data, it transmitsanother ping signal .Ns D 2/. Sender 2 captures this pingand successfully transmits its data this time, at which pointthe communication ends.

In the following subsections, we present our simulationframework, analytical models, and results to compare the

performance (throughput, latency, and energy consump-tion) of PD-MAC and S-MAC. Note that throughput isdetermined by the average number of data packets col-lected per unit time and can be obtained by taking the ratioof the average data count at the sink node per round andthe average latency of the round. So, it suffices to deter-mine data count and latency per round. We also presentperformance evaluation of our routing strategy using sim-ulations. We start with a description of the simulationframework used in our performance evaluation studies inSection 3.1. Sections 3.2–3.4 detail our analytical models

used for performance analysis of PD-MAC and S-MACunder the setting of our application. Section 3.5 presentsthe performance evaluation of our routing strategy.

3.1. Simulation framework

We use the event driven simulation framework providedby TOSSIM [10] to model the behavior of both PD-MACand S-MAC under a fixed routing strategy as well as toevaluate the performance of the network layer. We use theresults obtained from the simulation studies of PD-MACand S-MAC to validate the analytical models presentedin subsequent subsections. TOSSIM implements an eventqueue containing events scheduled for specific instants asper a global clock. The following code fragment showsrelevant fields of the event structure

Events are executed in the order of increasing value of thetime field of the entries stored in the event queue, and theglobal clock reading is advanced appropriately. For exam-ple, the following code fragment demonstrates an eventcalled start-ping being created for currently executing node(TOS_NODE_ID) that causes it to send a ping signal to allthe nodes that are listening to the channel in its neighbor-hood in drowsy mode. The event is scheduled 10 s after thecurrent time.

When the entry representing this event is at the head ofthe event queue, the queue handler of TOSSIM advancesthe global clock reading to the value in the time field of theevent and invokes the appropriate callback function (voidstart_ping_handle(sim_event_t*)). We use this simulationframework to simulate the behavior of S-MAC and PD-MAC for our 5 � 5 nodes network. The timing behaviorof the various events of interest is stored as a trace whereeach line of text denotes a particular event at a particularnode. For example, the following trace fragment indicatesthat node 0 started transmitting ping at instant 24345666(units of simulation ticks). In this case, node 1 is able tocapture the ping, whereas node 2 misses it.

Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

1635

Page 9: A wireless sensor network for precision agriculture and its ...

Sensor network for precision agriculture and its performance H. Sahota, R. Kumar and A. Kamal

.

.

.1 Begin Drowsy 243408532 Begin Drowsy 243409870 Begin Tx-ping 243456661 Begin Rx-ping 24345666...

To model the frequency drift of the nodes’ crystal oscil-lators, we use a uniform random number generator cen-tered at the scheduled wake-up time and a range of ˙�.� is computed as the product of the sleep duration and thefrequency drift in parts per million .ıppm/ of the crystaloscillator (manufacturer specified value). We used a driftof 30 ppm for an oscillator of frequency 1 MHz in oursimulations.

�D ıppm � Tsleep duration (1)

Knowing the scheduled wake-up time of a node, an eventis inserted in the event queue, scheduled for an instantpicked uniformly randomly in the interval ŒTscheduled �

�;Tscheduled C ��. At the end of the simulation run, apython script computes the data count, latency, and energyconsumption based on the trace.

We implemented MAC and PHY layers in nesC androute and schedule computations (network) in Pythonscript. Python scripts were also used to control the simula-tion runs such as accessing the various nodes in the sensorfield to inspect internal variables, switching nodes on oroff, and injecting schedule messages into the network.

To compute the energy consumption, we used thevalues for the current drawn from the battery as perthe datasheet of CC1110 for various modes of the radio.The values are summarized in Table I. The values are for

the radio operating in the frequency band of 433 MHz at adatarate of 1.2 KBauds and at a system clock frequency of26 MHz.

3.2. Modeling data count at sink

The goal of the network is to deliver all the data unitsgenerated in the sensor field to the sink node. However,because of channel noise and other sources of signalimpairment, some data units are lost. We model the proba-bility distribution of the number of data readings collectedat each node at the end of a round. Pm

D.i/ denotes the

probability that node m gathers i data readings (includinglocally generated reading) after it has attempted to collectdata from its upstream neighbors, Um. We evaluate Pm

D.i/

recursively as shown in Equation (2). The leaf nodes of therouting tree do not have any upstream neighbors and sothey collect exactly one data unit. Therefore, the base caseof the recursion is: For all leaf nodes m, Pm

D.i/ D 1 for

i D 1, and PmD.i/ D 0 for i > 1. For the non-leaf nodes,

PmD.i/ is given by the following formula:

PmD .i/DX

Lm�UmWPk2Lm

ikDi�1

8<:0@ Yk2Lm

P kD.ik/Psuc.ik/

1A

:

0@ Yk2UmnLm

P kD.ik/Pfail.ik/

1A9=; :(2)

The aforementioned expression computes the probabil-ity that a subset of upstream neighbors, Lm � Um, col-lectively transmits i � 1 data units to node m, where theupstream neighbor k 2 Lm transmits ik data units suchthat

Pk2Lm

ik D i � 1. Psuc.ik/ denotes the probabilitythat synchronization is established in at most Ns attemptsand a data packet containing ik data units is transmitted

Table I. Values of model parameters.

Parameter Value Description

q 0.1 Probability that transmitted ping is not detectedpe 0.01 Bit error rate for data packetsH 8 bits MAC frame header bitsD 8 bits MAC frame payload bits per data unitS 8 bits MAC frame payload bits for synchronization packets in S-MAC� 2.592 s Absolute maximum clock drift when nodes wake up for communicationNd 3 Total number of data attempts allowedBPS 1200 bps Bit rate of channelTSYN 0.1 s Duration of pingPt 15 mA Current drawn during regular transmit modePp 33.5 Current drawn during ping modePr 19.8 Current drawn during receive mode at regular sensitivityPd 10.0 (assumed) Current drawn during receive mode at reduced sensitivity

1636 Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

Page 10: A wireless sensor network for precision agriculture and its ...

H. Sahota, R. Kumar and A. Kamal Sensor network for precision agriculture and its performance

successfully in at most Nd attempts, whereas Pfail.ik/ D

1�Psuc.ik/.

Psuc.ik/D

NsXsD1

.1� q/qs�1

NdXrD1

�.1�pe/

D.ik/.1� .1�pe/D.ik//r�1

�;

(3)

where q is the probability of synchronization failure, pe isthe bit error rate, D.ik/ denotes the bit length of a datapacket containing ik data units. The expression for thedata-count probability for PD-MAC and S-MAC remainsthe same as given in Equations (2) and (3) except for thevalue of the parameter q. For S-MAC, this is computed inaccordance with the bit error probability and the number ofbits in the synchronization packet, whereas for PD-MAC,this denotes the probability of detection failure of ping,which is a much lower value owing to its shorter lengthand no data content.

For our performance evaluation studies, we used biterror rate pe D 0:01, ping detection error probability q D0:1, bits per data unitD D 8, header bits per packetH D 8,payload bits in an S-MAC synchronization request/replypacket S D 8, ping pulse duration TSYN D 0:1s, andbaud-rate BPS D 1200 bps. The parameters are summa-rize in Table I. The expected data count at the sink-node 0is given by

PNiD1 iP

0D.i/, where N is the total number of

nodes in the field. Figure 7 shows the expected data countat node 0 versus the number of synchronization attemptsallowed for the two protocols. Both protocols have com-parable performance as far as the data count at the sinknode is concerned. This behavior is expected because weallow the same number of synchronization attempts anddata transmission attempts for the two MAC protocols. Thedifference is in the value of the probability of synchroniza-tion. But this difference only matters when the numberof synchronization attempts is small (1 or 2). Next, wecompare the two protocols with respect to the delay.

9

10

11

12

13

14

15

0 2 4 6 8 10 12Ave

rage

Dat

a-co

unt

at n

ode

0

Ns(Synchronization opportunities allowed)

S-MAC, Model PD-MAC, Model S-MAC, Sim PD-MAC, Sim

Figure 7. Expected data count stored at sink.

3.3. Modeling latency or round duration

For the analysis, we divide the round duration into delaysencountered over multiple hops in the field. Define thecommunication time of a node as the time taken by a nodeto synchronize with and collect data from all its upstreamsenders. Round duration is the sum of the communicationtimes for all nodes in the routing tree. In the following twosubsections, we model the communication time for a nodefor the two MAC protocols.

3.3.1. Modeling communication time for S-MAC.

Owing to the pairwise communications between sender–receiver pairs, in case of S-MAC, the total communicationtime for a node is given by the sum of the communica-tion times corresponding to each of its upstream neighbors.Let Tkm denote the expected communication time for areceiver node m, corresponding to an upstream neighbork as modeled in Equation (4). Here, Psync.i/ denotes theprobability that synchronization succeeds in i th attempt(i � Ns), and Psync-fail denotes the probability that syn-chronization fails all Ns attempts. If synchronization failsNs attempts, data phase does not take place. However,if synchronization succeeds in at most Ns attempts, thetwo nodes attempt to exchange the data packet for up toa maximum of Nd attempts.

Tkm D

NsXiD1

Psync.i/�hTsync.i/C T

kdata

iCPsync-fail � Tno-sync;

(4)

where Tsync.i/ denotes the expected duration of the syn-chronization phase given that synchronization succeeds ini th attempt, T kdata denotes the expected data phase dura-tion consisting of a maximum of Nd attempts (its valuedepends on k as different upstream neighbors have differ-ent number of data units to send), and Tno-sync denotes theexpected duration of the synchronization phase when syn-chronization fails allNs attempts. In the latter case, no dataphase takes place. Equation (5) computes Tsync.i/ whichdenotes the time period from the awakening of the firstof the nodes m or k to synchronization in the i th attempt,whereas the formulae for Tno-sync and T kdata are given inEquations (6) and (7), respectively.

Tsync.i/D

�i C 1

2

�.TDD C f.i C 1/mod 2g/E.Y /: (5)

Equation (5) can be understood as follows: two nodesthat are attempting to synchronize with each other taketurns in transmitting synchronization request frames.Therefore, if synchronization occurs in i th attempt, thenode that starts first takes a total of b iC12 c turns, each ofwhich lasts for the discovery duration of TDD . In addi-tion, if synchronization succeeds in an even-numberedattempt, an additional delay corresponding to the differ-ence in the wake-up times of the two nodes, denoted by Y

Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

1637

Page 11: A wireless sensor network for precision agriculture and its ...

Sensor network for precision agriculture and its performance H. Sahota, R. Kumar and A. Kamal

Time

2Ts+2Δ 2Ts+2Δ

Y

Y

Tsync(5)

Node k

Node m

XX

X X

Data phaseSynchronization phase

Nod

es s

ynch

roni

zed

2Ts+2Δ

Figure 8. Synchronization phase in S-MAC. Y represents the absolute difference between the wake up times of the sender andreceiver nodes.

in Equation (5), is also incurred denoting synchronizationrequest frame transmission by node that wakes up second.For example, Figure 8 shows Tsync.5/ and Y . Similarly,

Tno-sync D

�Ns C 1

2

�.TDD/C f.Ns C 1/mod 2gE.Y /:

(6)Note, Y D jXk � Xmj, where the random variables

for wake-up time of k and m, Xk ; Xm � U.0; 2�/

have density functions fXm.x/; fXk .x/. We can derive thedistribution of Y as follows:

fY .y/D

Z0�x�2�

ŒfXm.x � y/C fXm.xC y/�

� fXk .x/dx

D

Z 2�

xDyfXm.x � y/fXk .x/dx

C

Z 2��y

xD0fXm.xC y/fXk .x/dx

D

Z 2�

xDy

1

2�

1

2�dxC

Z 2��y

xD0

1

2�

1

2�dx

D2�� y

2�2:

Then, the expected value of Y is given by

E.Y /D

Z 2�

0y2�� y

2�2dy D

2

3�:

We now compute T kdata, the expected time to transmitdata by an upstream neighbor k that is synchronized in upto Ns attempts. Let Rk denote the routing subtree rootedat node k. Then, because this subtree has size jRk j andbecause each node senses one data unit, node k can haveat most jRk j data units to transmit to its downstream nodem (some data packets may be lost). The probability dis-tribution of the number of data packets contained at everynode is expressed by Equation (2). Let TD.l/ denote the

time slot for a MAC frame containing l data unit, andTA.s/ denote the time slot for a MAC frame containingan acknowledgement vector for s number of senders (forS-MAC s D 1 always). Note that TD.l/DD.l/=BPS andTA.s/ D A.s/=BPS , where BPS denotes the baud-rateof the radio transceiver, and A.s/ denotes the bit lengthof an acknowledgement packet containing a bit vector oflength s. Then, the size of time slot needed to accommo-date the maximum-sized data from node k (of size jRk j)and one acknowledgement frame for node k is given byT kDAD TD.jRk j/ C TA.1/. We can model the expected

data phase duration as follows:

T kdata D

jRk jXlD1

P kD.l/

0@NdXrD1

P rsuc.l/:r:TkDACP

Ndfail .l/:Nd :T

kDA

1A ;

(7)

where P kD.l/ is defined in Equation (2), P rsuc.l/ is the

probability of successful transmission of a data packet con-taining l data unit in the r th attempt. The packet errorrate for a data packet containing l data unit is given bypl D 1 � .1 � pe/

D.l/. Hence, the formulae for P rsuc.l/

and PNdfail .l/ are as follows:

P rsuc.l/D .1� pl /pr�1l I P

Ndfail .l/D p

Ndl: (8)

3.3.2. Modeling communication time for

PD-MAC.

In PD-MAC, node m attempts to synchronize all ofits upstream neighbors Um using a common ping. Eachupstream neighbor is allocated a time slot that is longenough to accommodate a data packet that contains datafrom all the nodes in the routing subtree rooted at thatneighbor. The time slots are scheduled relative to the endof the ping transmission. As in the case of S-MAC, there

1638 Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

Page 12: A wireless sensor network for precision agriculture and its ...

H. Sahota, R. Kumar and A. Kamal Sensor network for precision agriculture and its performance

are Ns synchronization attempts. After every synchro-nization attempt, a total of Nd attempts are allocated forevery upstream neighbor. Only the nodes, synchronized bythe most recent ping, attempt data transmissions. Everydata attempt terminates with a collective acknowledge-ment message transmitted by node m. Here, we obtain arecursive model for the communication time of a node m.

Let Tm.i ; r; Sm;Dm;Qm/ denote the remaining com-munication time, given that i � 1 synchronization attemptshave taken place and r � 1 data attempts associatedwith the i th synchronization attempt have taken place.Sm � Um denotes the subset of upstream neighbors thatare synchronized so far, Dm � Sm denotes the subsetof upstream nodes that have successfully delivered theirdata so far, and Qm � Um n Sm denotes the subsetof upstream nodes that have synchronized in the mostrecent (i th) synchronization attempt.Qm gets updated onlyfollowing a synchronization attempt (and remains unal-tered following a data transmission attempt). A recursivemodel for T .i; r; Sm;Dm;Qm/ is given by Equation (9),where TSYN denotes the duration of ping, and bTm

DAD

TA.jUmj/CPk2Um

TD.jRk j/ represents the duration ofentire time slot accommodating data packets by all sendersand acknowledgement packet by the downstream node m.Then, T .1; 1;;;;;;/ gives the total communication timefor node m starting from the configuration when i D 1 (nosynchronization attempt has been made), r D 1 (no dataattempt has been made), Sm D ; (no upstream neighborshave synchronized),Dm D ; (no upstream neighbors havesend their data), and Qm D ;.

T .i; r; Sm;Dm;Qm/D

8̂̂̂ˆ̂̂̂̂<ˆ̂̂̂̂̂ˆ̂:

0; if C WD Œ.Dm D Um/_ .i DNs C 1/�

TSYNCPRm�UmnSm

PCm�Rm

bTmDAC qjUmnSmnRmj.1� q/jRmjPsuc.Cm/Pfail.RmnCm/

T .i C b.r=Nd /c; .r mod Nd /C 1; Sm [Rm;Dm [Cm; Rm/; if :C; r D 1PCm�QmnDm

bTmDACPsuc.Cm/Pfail.Qm nDm nCm/

T .i C b.r=Nd /c; .r mod Nd /C 1; Sm;Dm [Cm;Qm/; if :C; r > 1:(9)

Case 1 in Equation (9) denotes the base condition: Theremaining communication time T .Sm;Dm;Qm; i ; r/ iszero if node m has already received data from all itsupstream neighbors (captured by the condition: Dm DUm), or if it has already expended all Ns synchroniza-tion attempts and Nd data attempts associated with eachsynchronization attempt (captured by the condition: i DNs C 1). Case 2 models the i th ping transmission whichtakes a duration of TSYN and the ensuing data attemptwhich takes a duration of bTm

DA. In a synchronization

attempt (captured by the condition r D 1), a subset Rm �Um n Sm may get synchronized (captured in the first sum-mation) with a probability of qjUmnSmnRmj.1 � q/jRmj

and participate in at most Nd data attempts. During thefirst data attempt, a subset Cm � Rm of nodes maybe successful in data transmission (captured in the sec-ond summation) with a probability of Psuc.Cm/Pfail.Rm n

140

150

160

170

180

190

200

210

220

230

0 2 4 6 8 10 12

Seco

nds

Ns(Synchronization opportunities allowed)

S-MAC, Model PD-MAC, Model S-MAC, Sim PD-MAC, Sim

Figure 9. Expected round duration versus the number of syn-chronization opportunities.

Cm/. Case 3 represents the r th data attempt for r > 1,which takes the duration bTm

DA. During a data attempt, a

subset Cm � Qm n Dm of newly synchronized nodesmay be successful in transmitting data with a probabilityof Psuc.Cm/Pfail.Qm n Dm n Cm/. (Note that only thenewly synchronized nodes attempt to send data, becausethe nodes previously synchronized already expended theirallowed data attempts.)

The results for the round duration (= sum of commu-nication times of all nodes on the routing tree) of theanalytical models as well as the simulation studies forboth S-MAC and PD-MAC are plotted against the num-ber of synchronization attempts in Figure 9. It should be

noted that PD-MAC achieves a 25% shorter round dura-tion than S-MAC. This is because PD-MAC combines thewake-up synchronization of all the upstream neighbors ofa node and schedules the data communications in a timedivision manner once synchronization is established. Suchcombination is not allowed in S-MAC.

3.4. Computation of energy consumption

To model the energy consumption of a node, we split thecommunication time given by Equations (4) and (9) intodurations of constant power consumption for each node.Multiplying the power consumed in various radio modessuch as idle, transmit, receive, drowsy, and ping (a con-stant voltage times the current drawn) with the respectivedurations of the modes, we arrive at the model for theenergy consumed.

Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

1639

Page 13: A wireless sensor network for precision agriculture and its ...

Sensor network for precision agriculture and its performance H. Sahota, R. Kumar and A. Kamal

3.4.1. Energy consumption model for S-MAC.

The communication time Tkm in Equation (4) isexpressed in terms of Tsync.i/, T kdata, and Tno-sync. Tsync.i/,consists of three parts given by Equations (10)–(12), eachwith its own level of transmitter and/or receiver powerconsumption

Tsyncidle .i/D

1

2

��i C 1

2

�TDDC ..i C 1/ mod 2/E.Y /

� .i C 1/TS

C1

2

��i

2

�TDDC .i mod 2/.TDD �E.Y //

� .i C 1/TS

�; (10)

Tsynctx-sync.i/D

1

2

�i C 2

2

�TS C

1

2

�i C 1

2

�TS ; (11)

Tsyncrx-sync.i/D T

synctx-sync.i/C

1

2TS : (12)

such that

Tsync.i/D Tsyncidle .i/C T

synctx-sync.i/C T

syncrx-sync.i/; (13)

Tno-sync can be split in a fashion similar to Equations(10)–(12).

Tno-sync D Tno-syncidle C T

no-synctx-sync C T

no-syncrx-sync ; (14)

where

Tno-syncidle D T

syncidle .Ns/C TS ; (15)

Tno-synctx-sync D

1

2

�Ns C 1

2

�TS C

1

2

�Ns

2

�TS ; (16)

and

Tno-syncrx-sync D T

no-synctx-sync : (17)

Similarly, T kdata consists of two parts given by Equa-tions (19)–(20), each with its own level of transmitter andreceiver power consumption

T ktx-data D

jRk jXlD1

P kD.l/

8<:NdXrD1

P rsuc.l/:r:TD.l/CPNdfail .l/:Nd :TD.l/

9=;

(18)

DTmrx-data; (19)

Tmtx-ack D

jRk jXlD1

P kD.l/

0@NdXrD1

P rsuc.l/:r:T1A CPfail.l/:Nd :T

1A

1A

DT krx-ack: (20)

such that

T kdata D Tktx-data C T

mtx-ack D T

mrx-data C T

krx-ack: (21)

Accordingly, following Equations (10)–(21), the totalexpected energy consumed by node m and its upstreamneighbor k can be obtained by splitting the time durationterms on the right-hand side of Equation (4) into durationswhere power level remains constant and multiplying thosetime duration terms by the corresponding power values

Ekm D

NsXiD1

2:Psync.i/

�hfT

syncidle .i/g:PidleC fT

synctx-sync.i/g:Ptx

C fTsyncrx-sync.i/g:PrxC fT

ktx-data C T

mtx-ackg:Ptx

C fTmrx-data C Tkrx-ackg:Prx

iC 2:Psync-fail

�nT

no-syncidle :PidleC T

no-synctx-sync :PtxC T

no-syncrx-sync :Prx

o:

(22)

The factor of 2 in case of the time duration terms cor-responding to the synchronization phase is used to coverboth nodes k and m.

3.4.2. Energy consumption model for PD-MAC.

Similar to the energy computation for S-MAC, we com-pute the total energy consumption for PD-MAC by split-ting the communication time in Equation (9) into parts ofconstant power consumption for each participating node.In the recursive model, communication time is expressedin terms of TSYN and bTm

DA. TSYN denotes the ping dura-

tion during which downstream node m is in ping mode,whereas an upstream node k 2 Um is either in drowsymode (if it has not been synchronized yet) or sleep mode (ifit has already been synchronized and has already attempteddata transmission). We split bTm

DAinto durations where the

power level remains constant for nodes k 2 Um and m.Let M denote the set of upstream nodes that are synchro-nized in the most recent ping attempt and that transmitdata during a particular data phase captured by bTm

DAof

Equation (9). Note, in Case 2: M D Rm, whereas inCase 3: M D Qm nDm. For k 2 M , bTm

DAcan be split

into three parts given by Equations (23)–(25)

OT ktx-data D

jRk jXikD1

P kD.ik/:TD.ik/; (23)

1640 Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

Page 14: A wireless sensor network for precision agriculture and its ...

H. Sahota, R. Kumar and A. Kamal Sensor network for precision agriculture and its performance

OT krx-ack D TA.jUmj/; and (24)

OT kidle DOTmDA �

OT ktx-data �OT krx-ack; (25)

where OT ktx-data, OT krx-ack, and OT kidle represent the expectedtime durations spent by node k in regular transmit modeto transmit data frames, regular receive mode to receiveacknowledgement frames and idle mode, respectively. Wemake the assumption that node k does not overhear anydata packets transmitted by other upstream neighbors ofnode m during the period bTm

DA.

An upstream node k 2 Um that has not been synchro-nized yet spends the entire duration bTm

DAin drowsy mode.

This happens in Case 2 when: k 2 Um nSm nRm, whereasin Case 3 when k 2 Um n Sm.

All other nodes k 2 Um that have been synchronized andattempted the allotted data transmissions spend the entireduration bTm

DAin sleep mode.

On the other hand, the downstream node m spendsenergy, during the period bTm

DA, in idle/transmit/receive

modes, until it receives data from all nodes k 2 Um, thatis, until the condition Dm D Um is met. When Dm D Um,node m goes to sleep.

IfDm ¤ Um, bTmDA

can be split into three parts given byEquations (26)–(28)

OTmrx-data DXk2L

OT ktx-data; (26)

OTmtx-ack D TA.jUmj/; and (27)

OTmidle DbTmDA �X

k2L

OT ktx-data � TA.jUmj/; (28)

where OTmrx-data, OTmtx-ack, and OTmidle represent the expectedtime durations spent by node m in regular receivemode to receive data frames, regular transmit modeto transmit acknowledgement frames and idle receivemode, respectively.

Accordingly, following Equations (23)–(28), the timeduration bTm

DAin Equation (9) can be split into constant

power time slots to compute the total energy consumedby nodes fmg [ Um by multiplying those constant powertime slots by their corresponding power values as shown inEquation (29).

E.i; r; Sm;Dm;Qm/D

8̂̂̂ˆ̂̂̂̂̂ˆ̂̂̂̂̂ˆ̂̂̂<ˆ̂̂̂̂̂ˆ̂̂̂̂̂ˆ̂̂̂̂̂:̂

0; if C WD Œ.Dm D Um/_ .i DNs C 1/�

TSYN:fPping CPk2UmnSm

PdrowsygCPRm�UmnSm

PCm�Rm

nPk2Rm

hT ktx-data:Ptx C OT

krx-ack:PrxC T

kidle:Pidle

iC

OTmrx-data:PrxC OTmtx-ack:PtxC OT

midle:Pidle C q

jUmnSmnRmj.1� q/jRmjPsuc.Cm/Pfail.Rm nCm/

E.i C b.r=Nd /c; .r mod Nd /C 1; Sm [Rm;Dm [Cm; Rm/o; if :C; r D 1P

Cm�QmnDm

nPk2QmnDm

hT ktx-data:PtxC OT

krx-ack:PrxC T

kidle:Pidle

iC

OTmrx-data:PrxC OTmtx-ack:PtxC OT

midle:Pidle CPsuc.Cm/Pfail.Qm nDm nCm/

E.i C b.r=Nd /c; .r mod Nd /C 1; Sm;Dm [Cm;Qm/o; if :C; r > 1:

(29)

We estimate the power consumed in a particular mode asthe product of the voltage and the current drawn. Becausethe voltage is approximately a constant, we use the value ofcurrent in place of power throughout our analytical modelto get a normalized value of the energy consumption. Weused the values for the current drawn from the battery asper the datasheet of CC1110 for various modes of the radio[6], see Table I. For the proof of concept, we have imple-mented PD-MAC for the case of two nodes; that is, oneuplink node and one downlink node [1].

The results for the total energy consumption (D sum ofenergy consumption of all nodes in the field) from the ana-lytical model as well as simulations for both S-MAC andPD-MAC are plotted against the number of synchroniza-tion attempts in Figure 10. It should be noted that PD-MACachieves 65% lower energy consumption compared withS-MAC. This is a result of the proposed PD-MAC thatuses alternative power modes for radios during wake-up synchronization and also its clever exploitation of theconvergecast nature of communication to minimize thenumber of high energy pings.

0

50

100

150

200

250

0 2 4 6 8 10 12

Idt

(A

mp-

seco

nds)

Ns(Synchronization opportunities allowed)

S-MAC, Model PD-MAC, Model S-MAC, Sim PD-MAC, Sim

Figure 10. Expected energy consumption per node.

Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

1641

Page 15: A wireless sensor network for precision agriculture and its ...

Sensor network for precision agriculture and its performance H. Sahota, R. Kumar and A. Kamal

3.5. Load balancing under proposedrouting

In our network, data flows over multiple hops from thesensor nodes to the designated sink. Because of differ-ing lengths of the data frames transmitted and receivedby nodes depending on their location in the routing tree,energy consumption is not uniform throughout the field.Nodes that are closer to the sink node consume moreenergy than nodes that are further away. This makes thenodes close to the sink drain their energy faster thanthe rest of the field making the sink node partitioned fromthe rest of the network even when most of the nodes in therest of the network may have sufficient battery energy. Astrategy for load balancing that we use is to rotate the roleof the sink node among the four corner nodes.

Further, we use energy aware routing strategy thatchooses the next hop for a given node as the neighboringnode in the forward path to the sink that has the maximumlevel of remaining energy. We use simulation studies tocompare the energy consumption for our routing strategyversus the one in which a next hop is chosen uniformly ran-domly among the neighboring nodes in the forward path tothe sink. We also compare with the case where sink noderemains fixed (is not rotated).

Figure 11 shows the expected energy consumed for theleast energy drained node and the most energy drainednode as a function of the number of macro-rounds for a5� 5 sensor node field for different combinations of therouting strategy and sink assignment. Note that energyaware routing coupled with a load balanced strategy forsink assignment leads to the most balanced energy con-sumption in the field. The difference grows linearly inthe number of macro-rounds at the rate of about 330units per macro-round. This shows that an energy awareand load balanced network layer coupled with PD-MAChelps increase the network lifetime by preventing the nodefailures because of unbalanced energy consumption.

4. RELATED WORK

There has been much work on designing energy effi-cient network protocols for sensor networks. Energy maybe unnecessarily consumed during collisions, overhearing,control packet overheads, idle listening, over-remitting,and so on. Time division multiple access (TDMA)-basedprotocols avoid collisions and overhearing but at the costof higher overhead in control packets and synchronization.A number of MAC protocols for wireless sensor networksdesigned with the goal of energy efficiency are based on aduty cycle-based approach. S-MAC [3], T-MAC [5], andDS-MAC [11] reduce idle listening by transitioning thetransceiver through sleep and active cycles. Such MACprotocols trade-off increased latency for reduced energyconsumption. In S-MAC, the nodes in the same virtualcluster determined by the communication range of thenodes share the same sleep–listen schedule. The nodes onthe boundary of two clusters follow two different sleep–listen schedules. In T-MAC, during the listen period, ifthe node does not detect any activation event for a cer-tain timeout period, it goes back to sleep. This reduces theidle listening period at the cost of increased probability ofearly sleeping caused by loss of synchronization betweenthe nodes. DS-MAC adds the dynamic duty cycle featureto S-MAC to decrease the latency.

B-MAC [12], WiseMAC [4], and X-MAC [8] useextended preamble accompanying every transmitted framewith periodic preamble sampling at the receiver. Extendedpreamble with preamble sampling-based approaches allowa very short duty cycle for nodes at the cost of longerpreambles while transmitting packets, causing unnecessaryenergy consumption in the form of over-remitting. Eachdata packet is preceded by a long preamble to alert thereceiver of the oncoming transmission. The nodes period-ically wake up to listen to any activity on the channel. So,there is unnecessary energy consumption at nodes whichare not the intended receivers of the frame but happen to

0

500

1000

1500

2000

2500

3000

3500

0 2 4 6 8 10 12

Multiple power modes (Not load balanced)

Multiple power modes (Load balanced)

Load balanced energy aware routes with multiple power modes

Energy aware routes with fixed sink and multiple power modes

(a)

0 500

1000 1500 2000 2500 3000 3500 4000 4500 5000

0 2 4 6 8 10 12

Ene

rgy

Con

sum

ptio

n

# Macro-rounds

Most energy drained node

Multiple power modes (Not load balanced)

Multiple power modes (Load balanced)

Load balanced energy aware routes with multiple power modes

Energy aware routes with fixed sink and multiple power modes

(b)

Ene

rgy

Con

sum

ptio

n

# Macro-rounds

Least energy drained node

Figure 11. Expected energy consumption of (a) least energy drained node and (b) most energy drained node versus the numberof macro-rounds.

1642 Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

Page 16: A wireless sensor network for precision agriculture and its ...

H. Sahota, R. Kumar and A. Kamal Sensor network for precision agriculture and its performance

be in the transmission range of the sender node. S-MAC,T-MAC, and DS-MAC are synchronized MAC protocols,in that nodes exchange synchronization messages to nego-tiate the beginning and end of the active and sleep peri-ods. B-MAC, WiseMAC, and X-MAC are asynchronousMAC protocols in that they do not involve the overheadof periodic synchronization message exchange. Synchro-nization takes place as a part of the communication itself.A duty cycle-based MAC protocol can lead the sensornodes to idle listen for long periods while transceivers areswitched between active and sleep modes during the timewhen no data is being relayed in the application. Synchro-nized MAC protocols additionally involve the overheadinvolved in the maintenance of synchronization betweenthe neighboring nodes’ sleep–active cycles. For a peri-odic data monitoring application with long sleep periodssuch as ours, it is useful to have a MAC protocol that canallow the transceivers to be turned off for long periodsand wake up to establish communication with the minimaloverhead cost.

On the other hand, there has been a lot of work onperformance evaluation of sensor network protocols tocompute the throughput, latency, and energy consump-tion. Zamalloa et al. [13] presents an analytical modelto compare different forwarding strategies used in geo-graphic routing over lossy links based on a realistic chan-nel model. The authors consider a low data rate wirelesssensor network assuming no packet collisions and timedivision multiple access-based MAC layer. A compari-son of distance-based, reception-based, and a combinationof the two forwarding strategies is performed using ana-lytical models and simulation studies. It is shown thatthe suitability of the metric depends on whether Auto-matic Repeat reQuest (ARQ) is used or not. They alsoderive an analytical model for the optimal forwarding dis-tance to maximize the expected value of the packet recep-tion rate. However, in that work, it is assumed that thenode radios are always powered on. Although comput-ing the energy efficiency, the energy consumed by thenodes idle listening the channel is not considered. Leeet al. [14] presents a discrete time Markov chain modelfor dynamic low power listening scheme used in dutycycle-based MAC protocols used in conjunction with longpreambles (such as that in B-MAC and WiseMAC) pre-ceding every frame transmitted. The polling interval isadjusted based on the channel conditions. The authorsstudy the effect of the busy and idle thresholds on theenergy consumption. The model considers one senderand one receiver node. Bianchi [15] introduces a Markovchain model for the distributed coordinated function(that uses CSMA/CA) of 802.11 MAC protocol standardfor wireless local area networks to compute the satura-tion throughput under ideal channel conditions and a fixednumber of terminals. Only single-hop communication isconsidered. Also, it is assumed that packets are gener-ated at the individual terminals using a Poisson randomprocess and are always available for transmission; thatis, the transmissions queues at individual terminals are

always non-empty. In our precision agriculture application,packets are generated only intermittently with a certainperiod. There are bursts of channel activity followed bylong periods of inactivity. We have a deterministic gen-eration of data; therefore, using CSMA/CA would meanextra overhead in energy and delay costs. Rusli et al.[16] presents a Markov chain-based model of opportunisticrouting protocol that exploits the spatial and temporal char-acteristics of a wireless network to compute the end-to-enddelay and reliability metrics.

5. CONCLUSION

We have presented the design of our Physical, MAC, andnetwork layers for a precision agriculture application withperiodic data collection. We have shown that the use ofmultiple power modes at the physical layer increase theenergy efficiency of the wake-up synchronization phase ofcommunication. We support our claims using our perfor-mance modeling approach based on analytical modelingto compare metrics such as energy consumption, commu-nication delay, and throughput of a wireless sensor net-work employed for a periodic monitoring application. Wehave successfully tested our MAC protocol in hardwareemploying the new wake-up synchronization strategy forone sender and one receiver case. We also present our ana-lytical model for S-MAC under the settings of our appli-cation. Although the two protocols can achieve the samepacket success rates, the proposed new protocol is ableto accomplish this in 25% less time and 65% less energy(as analyzed and simulated for a simple sensor field of 5�5nodes). The results of the analytical model match closelywith our event driven simulations.

We have also shown the gains in load balancing achievedusing our energy aware routing strategy using simula-tions. Our future work plan includes enhancing the pro-tocol to incorporate fault management (both detectionand mitigation).

ACKNOWLEDGEMENT

This work was supported in part by the National ScienceFoundation under the grants NSF-ECS-0424048, NSF-ECS-0601570, NSF-ECCS-0801763, NSF-CCF-081141,and NSF-ECCS-0926029.

REFERENCES

1. Sahota H, Kumar R, Kamal A, Huang J. An energy-efficient wireless sensor network for precisionagriculture. In Proceedings IEEE Symposium on Com-puters and Communications. IEEE Computer Society:

Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

1643

Page 17: A wireless sensor network for precision agriculture and its ...

Sensor network for precision agriculture and its performance H. Sahota, R. Kumar and A. Kamal

Riccione, Italy, June 2010; 347–350. [Online].Available: http://doi.ieeecomputersociety.org/10.1109/ISCC.2010.5546508.

2. Sahota H, Kumar R, Kamal A. Performance modelingand simulation studies of MAC protocols in sensornetwork performance. In Proceedings InternationalConference on Wireless Communications and MobileComputing. ACM: Istanbul, Turkey, July 2011.[Online]. Available: ....

3. Ye W, Heidemann J, Estrin D. Medium access controlwith coordinated adaptive sleeping for wireless sen-sor networks. IEEE/ACM Transactions on Networking2004; 12(3): 493–506. [Online]. Available: http://dx.doi.org/10.1109/TNET.2004.828953.

4. El-Hoiydi A, Decotignie J-D. Wisemac: an ultralow power mac protocol for the downlink of infras-tructure wireless sensor networks, In ProceedingsIEEE Symposium on Computers and Communications,Alexandria, Egypt, 2004; 244–251.

5. van Dam T, Langendoen K. An adaptive energy-efficient mac protocol for wireless sensor networks.In Proceedings SenSys ’03. ACM: Los Angeles, CA,USA, 2003; 171–180. [Online]. Available: http://doi.acm.org/10.1145/958491.958512.

6. True system-on-chip with low power rf transceiverand 8051 mcu. Texas Instruments, 9–11, cc1110 data-sheet. [Online]. Available: http://www.ti.com/lit/gpn/cc1110f32.

7. Schmid T. Time in wireless embedded systems,Ph.D. dissertation, University of California, LosAngeles, 2009. [Online]. Available: projects.nesl.ucla.edu/~thomas/pdfs/dissertation_schmid.pdf.

8. Buettner M, Yee GV, Anderson E, Han R. X-mac:a short preamble mac protocol for duty-cycled wire-less sensor networks. In Proceedings of the 4th Inter-national Conference on Embedded Networked SensorSystems, SenSys ’06. ACM: New York, NY, USA,2006; 307–320. [Online]. Available: http://doi.acm.org/10.1145/1182807.1182838.

9. Ruzzelli AG, Jurdak R, O’Hare GM. On the rfidwake-up impulse for multi-hop sensor networks. InProceedings SenSys ’07. ACM: Sydney, Australia,November 2007.

10. Levis P, Lee N, Welsh M, Culler D. Tossim: accu-rate and scalable simulation of entire tinyos appli-cations. In Proceedings of the 1st InternationalConference on Embedded Networked Sensor Sys-tems, SenSys ’03. ACM: New York, NY, USA, 2003;126–137. [Online]. Available: http://doi.acm.org/10.1145/958491.958506.

11. Lin P, Qiao C, Wang X. Medium access controlwith a dynamic duty cycle for sensor networks.In Proceedings IEEE Wireless Communications and

Networking Conference, Vol. 3. IEEE: Atlanta, GA,USA, March 2004; 1534–1539.

12. Polastre J, Hill J, Culler D. Versatile low power mediaaccess for wireless sensor networks. In Proceedings ofthe 2nd International Conference on Embedded Net-worked Sensor Systems, SenSys ’04. ACM: New York,NY, USA, 2004; 95–107. [Online]. Available: http://doi.acm.org/10.1145/1031495.1031508.

13. Zamalloa MZn, Seada K, Krishnamachari B, Helmy A.Efficient geographic routing over lossy links in wire-less sensor networks. ACM Transactions on SensorNetworks June 2008; 4: 12:1–12:33. [Online]. Avail-able: http://doi.acm.org/10.1145/1362542.1362543.

14. Lee S, Choi J, Na J, Kim C-k. Analysis of dynamiclow power listening schemes in wireless sensornetworks. Communications Letters January 2009;13: 43–45. [Online]. Available: http://portal.acm.org/citation.cfm?id=1650422.1650437.

15. Bianchi G. Performance analysis of the ieee 802.11distributed coordination function. IEEE Journal onSelected Areas in Communications 2000; 18: 535–547.

16. Rusli M, Harris R, Punchihewa A. Markov chain-basedanalytical model of opportunistic routing protocolfor wireless sensor networks, In TENCON 2010 -2010 IEEE Region 10 Conference, November 2010;257–262.

AUTHORS’ BIOGRAPHIES

Herman Sahota received his B.Tech.in Electrical Engineering and M.Tech.in Information and CommunicationTechnology from the Indian Instituteof Technology, Delhi, India in 2006.He is, currently, a PhD candidate inElectrical and Computer Engineer-ing Department at Iowa State Univer-sity, Ames, Iowa. Sahota’s research

interests include protocol design for wireless networks,performance evaluation, and applications of probabilityand statistics.

Ratnesh Kumar is a professor ofECE at the Iowa State Universitysince 2002. Prior to this, he heldfaculty position at the Universityof Kentucky (1991–2002) in ECEand has held visiting positions atthe University of Maryland, AppliedResearch Laboratory (at Penn StateUniversity), NASA Ames, Idaho

National Laboratory, and United Technologies ResearchCenter. He received his B.Tech. in EE from IIT Kanpurin 1987 and MS and PhD in ECE from the University of

1644 Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

Page 18: A wireless sensor network for precision agriculture and its ...

H. Sahota, R. Kumar and A. Kamal Sensor network for precision agriculture and its performance

Texas, Austin in 1989 and 1991, respectively. His researchinterests are in event-driven, real-time, and hybrid sys-tems, and their applications to embedded systems andsoftware, cyberphysical systems, web-services, sensor net-works, power systems, and precision farming. He serveson the program committee for the IEEE Control SystemsSociety, the International Workshop on Discrete Event Sys-tems, the International Workshop on Dependable Controlof Discrete Systems, and the IEEE Workshop on Soft-ware Cybernetics. He is or has been an associate editor ofSIAM Journal on Control and Optimization, IEEE Trans-actions on Robotics and Automation, Journal of DiscreteEvent Dynamical Systems, International Journal on Dis-crete Event Control Systems, IEEE Control Systems Soci-ety. He has been a general co-chair for the InternationalWorkshop on Discrete Event Systems, and a program co-chair for the IEEE Workshop on Software Cybernetics. Heis a fellow of the IEEE.

Ahmed E. Kamal received a BSc(distinction with honors) and an MScboth from Cairo University, Egypt andan MASc and a PhD both from theUniversity of Toronto, Canada, all inElectrical Engineering in 1978, 1980,1982, and 1986, respectively. He iscurrently a professor of Electrical and

Computer Engineering at Iowa State University. Earlier,he held faculty positions in the Department of Comput-ing Science at the University of Alberta, Canada and theDepartment of Computer Engineering at Kuwait Univer-sity, Kuwait. He was also an adjunct professor at theTelecommunications Research Labs, Edmonton, Alberta.

Kamal’s research interests include optical networks,wireless sensor networks, cognitive radio networks, andperformance evaluation. He is a Fellow of the IEEE, asenior member of the Association of Computing Machin-ery, and a registered professional engineer. With his stu-dents, Kamal received the 1993 IEE Hartree Premium forpapers published in Computers and Control in IEE Pro-ceedings for his paper entitled Study of the Behaviourof Hubnet and the best paper award of the IEEE Globe-com 2008 Symposium on Ad Hoc and Sensors NetworksSymposium.

Kamal served on the technical program committees ofnumerous conferences and workshops. He was the chair orco-chair of the Technical Program Committees of a numberof conferences and symposia including the Optical Net-works and Systems Symposia of the IEEE Globecom 2007and the IEEE Globecom 2010, the IEEE Globecom Cog-nitive Radios and Networks Symposium in 2012. He is onthe editorial boards of the Computer Networks journal andthe Optical Switching and Networking journal, both pub-lished by Elsevier, and the IEEE Communications Surveysand Tutorials.

Wirel. Commun. Mob. Comput. 2011; 11:1628–1645 © 2011 John Wiley & Sons, Ltd.DOI: 10.1002/wcm

1645