demonstarting power savings and limitations with minimized coverage

110
WIRELESS SENSOR NETWORK COVERAGE: DEMONSTARTING POWER SAVINGS AND LIMITATIONS WITH MINIMIZED COVERAGE BY SIDNEY I. RUBEY A thesis submitted to the Graduate faculty of the University of Colorado at Colorado Springs in partial fulfillment of the requirements for the degree of Master of Science Department of Computer Science

Upload: vuongbao

Post on 01-Jan-2017

220 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: demonstarting power savings and limitations with minimized coverage

WIRELESS SENSOR NETWORK COVERAGE:

DEMONSTARTING POWER SAVINGS AND LIMITATIONS WITH MINIMIZED

COVERAGE

BY

SIDNEY I. RUBEY

A thesis submitted to the Graduate faculty of the

University of Colorado at Colorado Springs

in partial fulfillment of the

requirements for the degree of

Master of Science

Department of Computer Science

2011

Page 2: demonstarting power savings and limitations with minimized coverage

ii

This thesis for Master of Science degree by

Sidney I. Rubey

has been approved for the Department of Computer Science

by

------------------------------------------------------------------------Dr. C. Edward Chow, Chair

------------------------------------------------------------------------Dr. Terrance E. Boult

------------------------------------------------------------------------Dr. Xiaobo Zhou

-----------------------------------------Date

Page 3: demonstarting power savings and limitations with minimized coverage

iii

ABSTRACT

This paper explores the competing issues of coverage efficiency and

power available in wireless sensor networks. Specifically, a shortest distance

routing protocol is implemented, and total network system lifetimes are

determined using a variety of small percentages of the available system nodes.

Using a network simulator developed in Java, wireless sensor nodes are

simulated, and power consumption algorithms are included in each node that

take into consideration all aspects of power consumption in the operation of the

node. Simulating different coverage schemes on the same network system,

same initial power sources, and routing protocol, an increase of overall system

lifetime of 900% is demonstrated, but also that the network lifetime increase

does not increase linearly as the percentage of nodes used in the system is

decreased.

Page 4: demonstarting power savings and limitations with minimized coverage

iv

Acknowledgement

I would like to thank Professor C. Edward Chow for his guidance and patience

during my thesis work. I would also like to thank my family for their support,

patience, and understanding during this labor when I had to be “working on my

thesis”.

Page 5: demonstarting power savings and limitations with minimized coverage

v

ABSTRACT..................................................................................................................................iii

Acknowledgement........................................................................................................................iv

1 INTRODUCTION........................................................................................................................1

1.1Wireless Sensor’s Structure and Operation.......................................................................................1

1.2 Research Goal: Demonstrating Advantages of Reducing Coverage.................................................3

1.3 Paper Organization........................................................................................................................... 4

2 RELATED WORK.......................................................................................................................6

2.1 Power................................................................................................................................................ 6

2.2 Recent Developments with Power.....................................................................................................8

2.3 Coverage........................................................................................................................................... 9

2.4 Wireless Sensor Network Simulators..............................................................................................13

3 PRELIMINARIES......................................................................................................................16

3.1 Battery, Power Consumption & Management..................................................................................16

3.2 Routing Protocol.............................................................................................................................. 18

3.3 Placement of Sensors..................................................................................................................... 20

4 IMPLEMENTATION OF SIMULATION.................................................................................21

4.1 Assumptions.................................................................................................................................... 21

4.2 Java Network Simulator.................................................................................................................. 21

4.3 Power Consumption........................................................................................................................29

4.3.1 Microcontroller.........................................................................................................................30

4.3.2 Sensing Unit..............................................................................................................................30

4.3.3 Radio.........................................................................................................................................30

4.4 Coverage......................................................................................................................................... 30

5 ENHANCEMENT 1...................................................................................................................32

6 ENHANCEMENT 2...................................................................................................................34

Page 6: demonstarting power savings and limitations with minimized coverage

vi

7 COMPLEXITY ANALYSIS OF ALGORITHM.......................................................................35

8 EXPERIMENTAL RESULTS...................................................................................................37

8.1 Initial Simulation Configuration........................................................................................................37

8.2 Enhancement 1............................................................................................................................... 41

8.3 Enhancement 2............................................................................................................................... 43

9 LESSONS LEARNED...............................................................................................................45

10 CONCLUSIONS AND FUTURE RESEARCH......................................................................47

Appendix A...................................................................................................................................54

Appendix B...................................................................................................................................58

Appendix C...................................................................................................................................59

Page 7: demonstarting power savings and limitations with minimized coverage

vii

FiguresFigure 1: Berkeley’s SmartDust, Crossbow Technologies MICA2…………………2

Figure 2: Converting RF energy to DC power………………..................................9

Figure 3: Algorithm of MUEL Simulator................................................................21

Figure 4: Display of output window with nodes near each other............................30

Figure 5: Graph of Network Life vs. Number of Subgroups...................................40

Page 8: demonstarting power savings and limitations with minimized coverage

viii

TablesTable 1: Current used in Crossbow MICA2 Mote...........................................................25

Table 2: Network lifetimes, first configuration................................................................35

Table 3: Network lifetimes, second configuration...........................................................36

Table 4: Network lifetimes with Enhancement #1...........................................................38

Table 5: Network lifetimes with Enhancement #2...........................................................39

Page 9: demonstarting power savings and limitations with minimized coverage

1

Chapter 1

1 INTRODUCTION

Wireless sensors, and the arrangement of these small, electronic devices

into radio networks, have introduced the capability of remotely monitoring a

physical environment for a wide variety of parameters. In effect, there is

additionally the ability to interface the physical world, monitoring whatever

parameter is of interest, with the internet. A scientist may, for example, be able to

view conditions in a rain forest on another continent, from his office in Colorado.

[LE10]

1.1Wireless Sensor’s Structure and OperationWireless sensors are devices that range in size from a piece of glitter to a

deck of cards. They are functionally composed of:

a sensing unit that is designed and programmed to sense whatever characteristic

is of interest; some common examples of properties that are monitored are light,

temperature, humidity, pressure, etc.

a converter that transforms the sensed signal from an analog to a digital signal;

a microprocessor controlling component that includes an operating system for

the unit, processor and memory;

a radio component that includes both a receiver and a transmitter.

Page 10: demonstarting power savings and limitations with minimized coverage

2

Powering these components is typically one or two small batteries. There are

also wireless sensors utilized in applications that use a constant, wired power

source and do not use batteries as a power source. This type of wireless sensor

is not considered in this paper.

Figure 1:Berkeley’s SmartDust [PI01] Crossbow’s Mica mote (appx. 60 mm across) [XB10]

In an external environment where the power source is batteries, which this

paper will concentrate on, wireless sensors are placed in an area of interest that

is to be monitored, either in a random or known fashion. The sensors self-

organize themselves in a radio network using a routing algorithm, monitor the

area for whatever parameter it was designed to monitor, and transmit the data to

a central node, sometimes called a base station, or sink node, that collects the

data from all of the sensors. This node may be the same as the other nodes, or

because of its increased requirements, may be a more sophisticated node with

increased power. The unique advantage of wireless sensors is that they may be

deployed in an environment for extended periods of time, continuously

monitoring the environment, without the need for human interaction or operation.

This, however, establishes the power source as the limiting component of the

sensor.

Page 11: demonstarting power savings and limitations with minimized coverage

3

1.2 Research Goal: Demonstrating Advantages of Reducing CoverageThus introduces the tradeoff between power and coverage in wireless

sensor networks. A system of wireless sensor nodes organized into a network

may turn on every node for maximum coverage, sometimes introducing

redundant coverage over an area, and the lifetime of the system will be

minimized. Maximum, redundant coverage may be appropriate and desired in

some applications, such as using tiny sensor nodes to monitor a critical health

situation in humans, and also in situations where replacement of the batteries is

possible when power is completely depleted. Maximum, redundant coverage

may also be desirable in applications using rugged, environment sensor nodes

for monitoring a strategic military scenario for a known duration of time. In these

examples, the lifetime of the system is not maximized, and this is an entirely

acceptable consequence. At the other end of the spectrum, however, there are

applications where maximum, redundant coverage is not the paramount

consideration. A reduced coverage scheme may be wholly acceptable, as a

tradeoff for vastly extending the lifetime of the system. For example, any

phenomenon that is not too divergent throughout an area; events, phenomenon

that are somewhat continuous and one event at one point is not drastically

different than the same monitored event at an adjacent point. Put another way, in

applications where the tradeoff of coverage to gain extended system lifetime

does not have drastic negative consequences. Some examples of these types of

phenomenon are temperature, light, sound, atmospheric conditions.

The advantages of minimizing coverage, under appropriate

Page 12: demonstarting power savings and limitations with minimized coverage

4

circumstances, are the focus of this paper. For an area that is being monitored by

a wireless sensor network, with nodes having a finite, known sensing range, and

turning on one node in an area that produces no overlap in coverage, establishes

one “spot” of coverage in the area. Hence, the term “spotty” coverage is

sometimes used to refer to fewer sensor nodes being turned on with no overlap.

For example, a wireless sensor network may have a calculated lifetime of

100 hours using 100% of the sensors. If 50% of the sensors are used at one

time, while the remaining 50% are reduced to a low-power sleep state, it would

be expected that the overall lifetime of the system would be approximately

doubled to 200 hours, and this is what the simulation demonstrates.

1.3 Paper OrganizationThe advantages of minimizing coverage in varying degrees, under

appropriate circumstances, are the focus of this paper. The remainder of this

paper will cover the following areas: First, a review of research that has already

been done that relates to this topic will be covered. This will cover a review of

papers that deal with minimizing power consumption – or extending network life -

in wireless sensor networks; then, papers that deal with the sensing coverage of

wireless sensor networks; and finally wireless sensor network simulators.

Specific attention is paid to research that dealt with minimizing the coverage of

wireless sensor networks to extend network lifetime. The next section will

introduce the basics of electricity and how power consumption is measured in the

wireless sensor nodes. Following this, will be a discussion of the routing protocol

that has been implemented in the network simulator, which will lead to a

Page 13: demonstarting power savings and limitations with minimized coverage

5

discussion of the network simulator that has been implemented using the

programming language Java. Finally, the experimental results obtained from

simulating power consumption in wireless sensor networks under different

conditions will be presented. This will be followed with lessons learned and

conclusions to be drawn from the research.

Page 14: demonstarting power savings and limitations with minimized coverage

6

Chapter 2

2 RELATED WORK

2.1 PowerThe first topic in the “Related Work” section has to do with the power

usage of the wireless sensor nodes. This has often been considered a function

strictly of transmission – what routing protocol or algorithm is being used for

sending data, messages, network traffic, etc. As I demonstrate in this paper, and

is also documented in some of the following papers, energy is also consumed by

the other components of the node, and this can be significant. Another distinction

to be made on this topic is that some papers are focused on minimizing power

usage, by whatever means – and thereby extending network life, and some

papers focus on maximizing network lifetime.

The work by Schurgers, et al, “Energy Efficient Routing in Wireless Sensor

Networks”, discusses two approaches to making the most efficient use of limited

energy in sensors, and thereby extending the life of the network system. The first

approach is to use a concept they termed Data Combining Entities, or DCE’s.

This concept is similar to clustering, but it does not specifically designate a

cluster head; instead it picks a node that has other streams of network traffic

flowing through it as the DCE. In this manner, nodes that are in close proximity to

the DCE relay their packets to the DCE which can compress and then forward

Page 15: demonstarting power savings and limitations with minimized coverage

7

these nodes’ packet for them. Their simulations demonstrate that energy

consumption using this method can be reduced by a factor of 2 to 3. [SC01]

The second technique demonstrated by Schurgers to reduce energy

consumption in a wireless sensor network is the spreading of network traffic over

the entire network. This is opposed to network traffic passing through a few

critical nodes, which is typical of how network traffic with randomly placed nodes

normally evolves. The energy in these few critical nodes understandably is

depleted quickly as it passes other nodes’ message traffic.

“The idea is to divert new streams away from nodes that are currently part of the path of other streams. A node that receives packets tells all its neighbors, except to the one from where the stream originates, that its height has increased.” [SC01]

The “height” is another term for number of hops to the base node. In this manner,

it is telling its neighbors that it is not an efficient route to the base. By attempting

to spread the network traffic over more of the network in this manner, simulations

demonstrate the network remains intact 90% longer than a stochastic routing

protocol. [SC01]

Slijepcevic, et al, in the paper “Power Efficient Organization of Wireless

Sensor Networks”, focuses on reducing the overall power in the network system

by grouping the sensor nodes into mutually exclusive sets. In this manner, the

coverage throughout the surveillance area is maintained by the sensor nodes,

and turning on only one of sensor nodes of the set at a time. This technique

assumes that sensor nodes are placed stochastically. [SL01]

There are many more research topics that demonstrate energy, or power,

saving, efficiency, optimization in wireless sensor networks. The subjects range

Page 16: demonstarting power savings and limitations with minimized coverage

8

from, but are not limited to, energy conservation with regard to routing protocols,

operating systems, software systems, grouping or clustering nodes for power

savings, placement of nodes, energy efficient electronic and radio transmission

devices, and communication techniques. In short, every component and

operation of the individual nodes and the network as a whole has been

researched for optimum energy usage. [CH01]

“Maximizing System Lifetime in Wireless Sensor Networks” by Dong, is

one of the first papers to differentiate between the “time” and “transmission”

approaches to overall lifetime of a wireless sensor node network. Dong refers to

these as the “time based model” and the “packet based model”. This research

considers many different time based models, and also packet based models; the

purpose of the paper is not to put forth scheme that is supposed to be the best.

Rather, considering different combinations of models, it does an analysis of the

models and determines the complexity of each of the models. In the time based

model, it is shown that the problem of extending network lifetime while

maintaining connectivity the complexity is NP-hard. In the packet based model, it

is demonstrated that all models are NP-hard, with the exception of “cases where

each node has a fixed transmission power, many-to-one unicast life time, one-to-

many unicast lifetime, and one-to-one unicast lifetime are polynomially solvable;

also, many-to-many unicast lifetime is also polynomially solvable in the single

commodity model”. [DO05]

The next paper considered is “Minimum Power Configuration for Wireless

Communication in Sensor Networks”, by Xing et al. This paper approaches the

Page 17: demonstarting power savings and limitations with minimized coverage

9

power / network lifetime problem as actually two problems: one, minimizing the

number of active nodes in the network to only those required for coverage and

connectivity; two, adjusting the configuration of the power consumed for

transmissions by the nodes. This paper demonstrates that the optimum power

configuration depends on the data rates of the network. Furthermore, it is

demonstrated that problem of solving the minimum power configuration is an NP-

hard problem. Also, there are two protocols presented: the minimum power

configuration protocol (MCPC), and minimum active subnet protocol (MACP).

Unique to MPCP, the protocol will dynamically reconfigure the network power

usage configuration based on the current data rates. [XI05]

Chao-Lieh Chen et al authored the paper “Energy-proportional Routing for

Lifetime extension of Clustering-Based Wireless Sensor Networks”. In this

research paper, an algorithm is presented that will determine the energy usage

for nodes in an upcoming round of data collection and transmission; it then

determines if a cluster-head or a node should be used for forwarding tasks or

transmit data to intermediate hops. In this manner, the algorithm helps to use

energy evenly throughout the network. Testing and mathematical proofs validate

that network lifetime can be extended by dissipating energy evenly throughout

the network. [CH07] In addition to Schurgers [SC01], this is another paper that

promotes energy being used evenly throughout the entire network will extend

overall network life.

The next paper that deals with extending the lifetime of wireless sensor

nodes introduces the concept of “Pareto Optimality”. Named after the Italian

Page 18: demonstarting power savings and limitations with minimized coverage

10

economist Vilfredo Pareto, a Pareto improvement in a system is one that will

make an improvement in an element of a system without making any of the other

elements of the system worse off. An overall adjustment to the system

configuration is said to be Pareto optimal if no further Pareto improvements can

be made, or in other words, an improvement to one element will introduce some

type of disadvantage to another element. [GA11]

Hence, “A Theory for Maximizing the Lifetime of Sensor Networks”, by

Joseph C. Dahger et al, is introduced. This paper makes some strict assumptions

on the type of network its algorithm is applicable to. It assumes static network

conditions in a unicast multi-hop wireless sensor network. It initially draws on the

solution for this type of network that was discussed in Chang [CH04]. The

iterative algorithm attempts to find a Pareto Optimal solution to maximizing the

lifetime of the network. In the first iteration of the algorithm, the minimum lifetime

of the network is maximized. If the solution is not Pareto Optimal a second

iteration of the algorithm is performed, and this algorithm is performed until a

Pareto Optimal solution is found. Extensive theorems and experimental results

are presented that establish that the algorithm can be used to “guarantee” a

solution that maximizes the network lifetime. [DA07]

The next paper reviewed basically introduces an algorithm for identifying

which subset of the network should be used, and scheduling transmissions

based on a stochastic shortest path and which node has the most energy left.

Yunxia Chen et al, present the paper “Transmission Scheduling for Optimizing

Sensor Network Lifetime: A Stochastic Shortest Path Approach”. [YU07] The

Page 19: demonstarting power savings and limitations with minimized coverage

11

subset of transmitting nodes does so through a fading channel, which is a radio

channel that is experiencing attenuation through a propagation medium. The

process of determining which sensors should transmit is solved by a stochastic

(random) shortest path Markov decision process, or MDP. A Markov decision

process is one in which outcomes are determined part randomly and part by

some decision maker. MDP’s are used extensively in situations where there

exists a selection of options and the outcomes are unknown, but the outcome is

desired to be optimized, according to some measurement. [FE02] Much

overhead network transmission, and therefore network energy, is required for a

centralized transmission scheme, so the transmission algorithm used is one

based on the sensor node itself knowing its communication characteristics and

available channels. The scheduling algorithm is based on a shortest path multi-

armed bandit problem which uses a Gittins index to optimize the transmission

scheduling. A “multi-armed bandit” problem takes its name from the “one-armed

bandit”, or slot machine. For a multi-armed bandit, there are sequences of levers

that can be pulled with each one having a payoff. The object is to

optimize/maximize the total payout over a sequence of lever pulls. In Brief, a

Gittins index is a measure of the payout over a sequence of actions. [WH80]

Again, similar to Chen [CH07] and Schurgers [SC01], this paper demonstrates

extending network life by distributing workload evenly over the entire network.

Another paper reviewed, “Lifetime Extension for Surveillance Wireless Sensor

Networks with Intelligent Redeployment” [KO10] also extends network life by

evenly distributing network traffic over the entire network.

Page 20: demonstarting power savings and limitations with minimized coverage

12

The 2008 paper by Kim et al, “Minimizing Delay and Maximizing Lifetime

for Wireless Sensor Networks with Anycast” [KI08] pertains to a unique type of

wireless sensor network, namely an event-driven network that uses ‘’Anycast”,

and the nodes of the network have an asynchronous wake-sleep schedule. To

understand Anycast, it is important to understand the wake-sleep cycle employed

in many wireless sensor network systems. To conserve battery power, many

systems employ some type of schedule in which sensors are in a low power

sleep state for much of the time, and wake to perform functions such as sensor

reading, or transmission of messages, whatever purpose they may have. The

system developed as part of this paper, MUEL, utilizes a wake-sleep cycle for the

sensor nodes. Anycast is a message relay function in which, instead of having

one node that a sensor node will transmit its messages to, a node will have a

group of candidate nodes that it can transmit to. Because of the asynchronous

wake-sleep cycle of the sensor nodes, the transmitting node does not know

exactly which node will be awake and available to receive and relay a

transmission. The authors solve this problem and thus “minimize the delay” is

transmitting messages. In this manner – minimizing delay and wasting energy in

the wake state – the lifetime of the network is extended: a unique solution for a

unique type of wireless sensor network. [KI08]

Perhaps the most unique approach to maximizing wireless sensor network

lifetime is the paper by Long et al, “Battery Allocation for Wireless Sensor

Network Lifetime Maximization Under Cost Constraints” [LO10]. All networks

considered in this paper generally assume homogeneous sensor nodes with

Page 21: demonstarting power savings and limitations with minimized coverage

13

identical batteries. In this paper the author suggests the use of batteries that

have different levels of energy stores, up to a maximum of ten different levels of

energy store in batteries of the network. For example a sensor node with one

“camera-type coin-sized” battery may be considered a node with just level 1

battery pack; a node with two of these has a level 2 battery pack, etc., to a

maximum of ten in this paper. The authors use an integer nonlinear programming

formulation to solve two specific problems associated with this type of solution: 1)

given a set of battery types available for the network with specific cost of each, it

solves a financially cost-constrained battery allocation problem which allows the

problem to be solved by general optimization packages; and 2) “Given a budget

of energy cost, how should battery energy be assigned to sensor nodes to

maximize the network lifetime given a constraint on total cost and on the number

of different battery pack types”. [LO10] Using this creative approach, the authors

assert that testing has extended a network lifetime by 4 to 13 times what it would

be with uniform, homogeneous batteries.

In the study by Tian He, et al, a specialized type of surveillance system is

implemented that detects, for example, magnetic flux changes in a surveillance

area, such as that created by a military tank, and tracks the movement of the

object through the area of surveillance. The system designates some of the

nodes as “sentry” nodes, in an active, continuously monitoring state, and the rest

of the nodes are in a low power sleep state with a small percentage of the time

awakening for the “duty cycle”. With these criteria, using MICA2 motes by

Crossbow Technologies, they report their algorithm extends the lifetime of a

Page 22: demonstarting power savings and limitations with minimized coverage

14

sensor network by up to 900% in simulations. [HE10]

2.2 Recent Developments with PowerOne of the most recent developments regarding the source of power for

nodes in wireless sensor networks is the harvesting, or scavenging, of energy

from ambient sources of power.

“As the networks increase in number and the devices decrease in size, the replacement of depleted batteries is not practical. Furthermore, a battery that is large enough to last the lifetime of the device would dominate the overall system size, and thus is not very attractive. There is clearly a need to explore alternative methods of powering these small communication nodes.” [SP03]

The advantage to the sensor node of having an unlimited power source, and thus

the advantage to the operator, is obvious. The most common ambient energy

sources are radio-frequency energy, vibrational energy, solar energy, and

thermal energy. [OS09]

The book by Shad Roundy, et al, Energy Scavenging for Wireless Sensor

Networks with Special Focus on Vibrations, explores various ambient power

sources for wireless sensor networks, and ultimately focuses on ambient

vibrational energy and its many advantages for powering the nodes. [SP03]

Another source of ambient energy available to nodes in a wireless sensor

network is radio-frequency, or RF, energy. The history of wireless transmission of

energy goes back to the work of Nicola Tesla in the 1890’s in Colorado Springs,

Colorado.(Wikipedia.org) The fundamental concept of harvesting RF energy is to

have a receiving antenna convert an RF signal into DC power, as depicted in the

diagram below.

Page 23: demonstarting power savings and limitations with minimized coverage

15

Figure 2: Diagram converting RF energy to DC power

Ambient RF energy can be harvested from three different categories: intentional

sources, anticipated ambient sources, and unknown ambient sources. Intentional

ambient sources would provide the most control of delivering power to a wireless

sensor network system.

“For Powercast's components, the conversion efficiency of the received RF power to DC is typically between 50%–75%, over a 100X range of input power or load resistance, and even greater for specialized applications. The harvesting activation power is currently ~100 µW and the output power is up to 250 mW.”(Ostaffe)

Having nodes that are able to operate independent of fixed-life batteries is

a significant development in the field of powering wireless sensor networks. As

with many considerations in designing a sensor node, the tradeoff of having this

type of power scavenging component is increased cost.

2.3 CoverageMuch research has been devoted to the topics of ensuring coverage in

wireless sensor networks, in addition to the research done on efficiently

managing or minimizing power consumption in sensor nodes. Coverage is

important in wireless sensor networks; the ability of a sensor network to monitor

and report events is the sole purpose of the system. As the batteries’ power in

Page 24: demonstarting power savings and limitations with minimized coverage

16

the nodes depletes and the nodes cease to function, in addition to the potential

loss of network connectivity provided by these nodes, the loss also means a loss

of coverage capability. The purpose of the discussion of coverage for wireless

sensor networks in this paper will be to demonstrate how well the coverage for

randomly placed nodes serves a wireless sensor network. I will seek to answer

important questions concerning coverage such as: what is the sensing range of

the nodes, or what has been considered for the sensing range; at what point

does the network break down and cease to function as a system in terms of

coverage capability.

In the influential paper “Coverage Problems in Wireless Ad-Hoc Sensor

Networks”, Meguerdichian, et al, introduces two fundamental concepts in terms

of coverage for wireless sensor networks. These concepts view coverage from

opposite ends of the spectrum, a worst case and a best case scenario in terms of

sensor coverage. To specify and identify the solution, Voronoi diagrams and

graph theory are used. The worst case is called the “maximal breach path”, and

quantifies the quality of service by finding the areas of lowest observability from

sensor nodes and detecting breach regions. The best case scenario is called the

“maximal support path”, and finds areas of high observability from sensors and

identifying the best supported regions in terms of sensor coverage. [ME01]

“Coverage in Wireless Ad-hoc Sensor Networks”, by Xiang-Yang Li, et al,

builds upon and extends the work of Meguerdichian in [ME01]. Minimizing energy

use is always one of the goals in wireless sensor nodes. This paper considered

how to find an optimum best-coverage-path, one of the key concepts introduced

Page 25: demonstarting power savings and limitations with minimized coverage

17

in [ME01], that also had the benefit of consuming the least amount of energy,

and the optimum best coverage path that travelled the shortest distance. The

paper also provided justification for [ME01] to use Delaunay triangulation to solve

the best coverage problem. [XI03]

The paper entitled “Integrated Coverage and Connectivity Configuration in

Wireless Sensor Networks” by X. Wang, et al, introduces Coverage Connectivity

Protocol (CCP) that has the flexibility to allow variable degrees of coverage

depending on the application and environment. The paper demonstrates two key

points: 1) using geometric analysis it proves that sensing coverage implies

network coverage when a sensor node’s sensing range is no more than half of

the communication range; and 2) using CCP it quantifies the relationship

between coverage and connectivity. [WA03]

Huang, et al, presents the coverage problem in wireless sensor networks

from a perspective of the ability to decide if every point in a service area is

covered by at least k sensors, where k is a predefined value. This is referred to

as k-coverage, or the points in a wireless network being k–covered. The solution

in this paper to the question if a coverage area is k-covered includes: sensing

ranges that are all of a uniform dimension, non-uniform sensing ranges, and

irregular shaped sensing ranges. Through a derivation of theorems and lemmas

concerning coverage, it is shown that by checking the perimeter of the sensor

nodes sensing range, it can be determined if the coverage area is k-covered.

[HU05]

Chow, et al, present the paper “Wireless Sensor Networks Scheduling for

Page 26: demonstarting power savings and limitations with minimized coverage

18

Full Angle Coverage” [CH08] in which the authors develop the concept of the

angle of coverage. If a particular object that is being tracked, or a point in a field

of surveillance, can be viewed from all 360 degrees around the object, its angle

of coverage is 360. This is a slightly different perspective than considering if a

point in the area of surveillance is k-covered. This paper uses distributed

algorithms to define the minimum number of sensors required to maintain 360

degree coverage. Additionally, the paper considers different power usage values

for the sensors, thus allowing different optimization objectives to be realized.

The final two papers are surveys of the most important sensor network

coverage research papers. The first paper, “Coverage Problems in Wireless

Sensor Networks: Designs and Analysis” by Thai, et al, was written in 2008. The

paper considers the usual aspects of coverage in wireless sensor networks,

including entire coverage, and target coverage. A valuable contribution of this

paper is to include the discussion of bandwidth that is possible in wireless sensor

networks.

When organizing sensors into a number of subsets, the number of available channels must be enough for the active sensors to communicate. Otherwise, some sensors cannot send data back to base stations. Thus the number of sensors in each subset must be less than or equal to the number of available channels. With this constraint, coverage breach can occur, i.e., some targets are not covered. [TH08]

In its “Final Discussion and Outlook” section, the authors also give a

brief introduction to the barrier coverage problem, which is beyond the

scope of the paper. The basic statement of this problem is to minimize the

probability of a penetration through a barrier of wireless sensors.

The second and most current of the survey of coverage papers is

Page 27: demonstarting power savings and limitations with minimized coverage

19

“Coverage in Wireless Sensor Networks: A Survey” by Mulligan, et al. The

authors provide a superior overview of the most prominent published research

that has been done up to the present. In terms of the issues related to coverage,

it discusses coverage types, deployment (random versus deterministic), node

types (homogeneous versus heterogeneous), constraints, centralized and

distributed algorithms, and three dimensional coverage. In terms of the

approaches to the coverage problem, it discusses the art gallery approach,

Vonoroi diagrams and Delaunay triangulation, worst and best case scenarios,

probabilistic sensing, disjoint sets, and coverage with connectivity. One of the

more important contributions of this paper is the presentation of the three

dimensional coverage problem with wireless sensor networks, and the prominent

research that has been done with this issue. Another unique contribution of this

paper is to include a table that relates issues related to coverage with wireless

sensor networks (horizontal axis) and the papers referenced in [MU11] (vertical

axis).

2.4 Wireless Sensor Network SimulatorsWireless sensor network simulators play an important role in research in

the field of wireless sensor networks. Practically, deploying sensors for test

purposes in the same numbers and location as actual an deployment, is often not

realistic. The very nature of wireless sensor networks is to monitor environments

that are not typically accessible: environments that are remote, too hot, too cold,

or too dangerous, for example. Wireless sensor network simulators provide a

reasonable facsimile of how the network will behave in a live, operating condition.

Page 28: demonstarting power savings and limitations with minimized coverage

20

The simulation, however, is only as good as how the simulator models the

environment and how well it models the characteristics of the sensor itself.

Frequently, researchers find wide discrepancies between the results from a

simulation and how the sensor network actually behaved in the field of operation.

The main reason for this discrepancy is the numerous parameters that need to

be taken into consideration to really simulate the sensor and the environment.

For this reason, it is not surprising that a common goal, or characteristic, in

simulators is “granularity”, i.e., how detailed the simulator can be in simulating

the operation of the sensor nodes.

Another characteristic that needs to be discussed is that some of these

tools are network simulators, while others are emulators. A “network simulator” is

a tool used to evaluate network protocol performance in a wireless sensor

network, it simulates the network. Some simulators that I will discuss in this

paper are NS-2, SensorSim, SENS, and EmStar. A “network emulator” is a tool

used to evaluate real hardware performance on the nodes of a wireless sensor

network. Some emulators that I will discuss in this literature review section are

TOSSIM, ATEMU, and AVRORA.

The first network simulator to be discussed is NS-2, whose origins trace

back to 1989 in the REAL network simulator at Cornell University. [KE11] Ns-2 is

a discrete event simulator that was designed especially to simulate Transmission

Control Protocol (TCP) on wireless and wired networks. It is written is the

programming languages C++ and OTcl: the simulation environment itself is

written in OTcl, and the implementation of the network protocols and simulator

Page 29: demonstarting power savings and limitations with minimized coverage

21

extension libraries are written in C++. Being one of the oldest network simulators,

it has a very large body of support information available, and can be used to test

a variety of network protocols. Some are ns-2’s drawbacks are: the learning

curve to operate the simulator is considerable, and knowledge of a scripting

language, queuing theory, and modeling techniques is required; also, because

the protocols are written in the object-oriented language C++, the simulator does

not scale well for simulations of large wireless sensor node networks, as each

node is represented as an object and performance is significantly affected.

[CU05] [KE11] [NS10] [NS11]

SensorSim is another network simulator, which is based on ns-2. This

simulator was developed in the Network & Embedded Systems Laboratory at

UCLA. [SR01] Similar to the model power that was used in the MUEL simulator,

which will be discussed, SensorSim enhanced ns-2 by having an advanced

power model, taking into account all of the components on a sensor node that

would use energy. Further, a significant advancement of SensorSim was to

include, first a sensor channel, and later, a mechanism that allowed the

simulation of external events that would trigger a reaction in the simulation.

Another significant contribution of SensorSim was the development of a

middleware software tool called SensorWare. This middleware functioned

between the simulator and the simulated sensor nodes, and allowed dynamic

management of nodes during simulation, such as the loading of scripts or other

applications to the nodes. SensorSim, having evolved from ns-2, had similar

problems of scalability, and is not publicly available today. [CU05]

Page 30: demonstarting power savings and limitations with minimized coverage

22

SENS, or Sensor, Environment and Network Simulator, is a wireless

sensor network simulator that was developed at the Open Systems Laboratory at

the University of Illinois at Urbana – Champaign (UIUC) in 2004. [SU04] SENS

was developed as a customizable sensor network simulator for WSN

applications. It has four main components that function to simulate the sensor

node and network, and the environments in which the network might operate.

There is an application component that simulates the software of the sensor

node; a network component that simulates the transmission of packets among

the nodes and operates in one of three modes – successful packet transmission,

a probability of packet loss, and packet collision; the third component is the

physical component that simulates the power, sensor, and actuator parts of the

sensor node and interface with the fourth component, the environment; the

environment component is simulated by considering how different surfaces affect

radio wave propagation. The environment simulation component is the key

benefit of SENS; it is otherwise less customizable than other network simulators.

[EG05] [SU11]

Yet another simulator of wireless sensor networks is SWAN, or simulation

of wireless, ad-hoc networks that was developed at Dartmouth College. The

simulator is based upon a previous 1998 project at Dartmouth, DaSSF, or

Dartmouth Scalable Simulation Framework. Similar to SENS, SWAN is

comprised of modules, or components, one of which is an environmental

component that acts to simulate different scenarios, such as terrains, hazardous

substances, and different radio propagation characteristics. [LI11]

Page 31: demonstarting power savings and limitations with minimized coverage

23

There are many other wireless sensor network simulators. EmStar is a

wireless sensor node network simulator that was also developed at UCLA. It

uses a discrete event simulation model, and is a Linux based system. EmStar is

designed to work with a limited number of motes, or sensor nodes, for the

purpose of developing and deploying applications for wireless sensor networks.

[GI11] [CU05] SensorMaker is another simulator that “supports scalable and fine-

grained instrumentation of the entire sensor networks”. [SA08] J-Sim is a

powerful simulation tool that is a collaborative work of UIUC and Ohio State

Univeristy. It is developed in Java and Tcl; it allows for a variety of battery and

power models to be simulated, supports many protocols in the simulated network

environment, and has a highly developed GUI interface. [EG05] [SO05]

The first wireless sensor network emulator to be discussed is TOSSIM,

which roughly stands for TinyOS Simulator. TinyOS is an open-source operating

system specifically designed as an operating system for wireless sensor nodes; it

was developed at the University of California at Berkeley using the nesC

programming language with the support of Intel Corporation and Crossbow

Technology. Again, emulators differ from simulators in that they are designed to

evaluate the operation of the hardware components of a wireless sensor node,

and run the actual code that would be run on each node in a network. The

developers of TOSSIM had four goals in mind for the emulator:

scalability (the system should be able to handle thousands of nodes with different network configurations), completeness (as many system interactions as possible must be covered in order to accurately capture behavior), fidelity (subtle interactions must be captured if testing is to be accurate), and bridging (validating the implementation of algorithms). [CU05]

Page 32: demonstarting power savings and limitations with minimized coverage

24

TOSSIM is mostly regarded as the best performing emulator, being able to

emulate the operation more nodes than any other simulator or emulator. While

the ability of TOSSIM outweighs any shortcomings, some disadvantages of

TOSSIM have been that it emulates identical nodes, which is not realistic, and its

probabilistic bit error model introduces inaccuracies in its emulation. [LE11]

Another wireless sensor network emulator to be reviewed is the “ATEMU”,

which stands for “Atmel Emulator”, discussed in the paper “ATEMU: A Fine-

grained Sensor Network Simulator” by Polley, et al. ATEMU is described as a

bridge between an actual deployment of a wireless sensor network system, and

a wireless sensor network simulator, “a hybrid …, where the operation of

individual sensor nodes is emulated in an instruction by instruction manner, and

their interactions with each other via wireless transmissions are simulated in a

realistic manner.” Although it was not specifically designed for MICA2 motes and

TinyOS, much of the research and testing of ATEMU was performed with this

platform. Another feature of ATEMU is XATDB, a tool that provides a graphical

user interface to ATEMU, and a debugger tool for debugging code running on the

sensors. ATEMU’s main contribution is the granularity of the simulation of the

sensor, that it has the ability to simulate different sensor platforms in the same

simulation, and also XATDB which provides debugging functionality to the

simulator. [PO10] A key weakness to ATEMU is that it is significantly,

approximately 30 times, slower that TOSSIM. [EG05]

Page 33: demonstarting power savings and limitations with minimized coverage

25

Avrora is another wireless sensor network simulator that simulates a

sensor system at a very finely granular level; it was developed by Ben Titzer et

al, at UCLA, and is discussed in the paper “Avrora: Scalable Sensor Network

Simulation with Precise Timing”. Avrora attempts to achieve the advantages of

TOSSIM and ATEMU, and mitigate these two emulators disadvantages. While

TOSSIM and ATEMU are written in the programming language C, Avrora is

written in Java. Avrora emulates the node operation by running code instruction-

by-instruction. The unique feature of Avrora is how it handles the synchronization

of nodes. There are two modes of synchronization: one uses a regular interval,

that can be set by the emulation operator, to synchronize nodes; the other mode

allows nodes to proceed along in simulation, until it reaches a state where it has

to synchronize with its neighbors. Both of these synchronization modes reduce

the overhead introduced by the synchronization function, as compared to

TOSSIM and ATEMU. [TI11] [CU05]

Page 34: demonstarting power savings and limitations with minimized coverage

26

Chapter 3

3 PRELIMINARIES

3.1 Battery, Power Consumption & ManagementAs previously discussed, the limiting component on the lifetime of a

wireless sensor network is the power available in the batteries of the nodes. For

this reason, assuming maximizing the overall life of the sensor network is a

desirable goal, and assuming sensor nodes are inaccessible and batteries are

not able to be replaced, much research effort has been put into minimizing the

power consumed by the sensor node, while maintaining an appropriate amount

of coverage and network connectivity for the specific application. These efforts

have included power management schemes, power efficient routing protocols,

and algorithms that put redundant sensor nodes in the network into an extremely

low-power sleep mode for extended periods of time. While some sensor nodes

are asleep, the other sensor nodes in the network are handling the duty of

performing the sensing operations, transmitting and receiving data, sometimes

acting solely as a signal transferring node.

To understand how the energy of a battery is used and depleted in a

sensor node’s battery, a discussion of the basic electrical characteristics of the

battery is necessary. The total amount of energy available in a battery is

expressed as a quantity of amp-hours. An amp is a measure of electrical current,

symbolically represented as I (capital letter “I”). For example, a standard

commercial AA battery has approximately 1000 mAH or 1 AH, of energy store.

Page 35: demonstarting power savings and limitations with minimized coverage

27

[AL10] So, if a battery initially has 1000 mAH of energy, and the component that

is running on the battery power uses 1 mA for one hour, the battery will have 999

mAH of power left at the end of one hour. Except for the very end of the battery

life, the energy in most batteries dissipates at a linear rate, for a constant power

load. [PL04] As will be shown, if one knows how many amps of current a

component on the sensor nodes draws, perhaps in more than one state, such as

in a fully operational state and in a low power sleep state, and also knows how

long the component operated at that state, one will be able to calculate the power

usage on the sensor node’s battery.

To simulate the power usage in wireless sensor node’s batteries, it is

necessary to know specifically what functions of the node use power, and how

much. In the simulation, there are five functions that draw current, or use the

battery’s power. They are:

1. The power used in the initial phase of the network’s life when each wireless

sensor node’s geographic location is establish with the base node, through

whatever means is used by the system, a GPS position locating, for example.

This category of power usage would require that the wireless sensor node’s

microprocessor and transmitting and receiving components of the radio are in

their full power, active mode.

2. The power used to compute the transmission node, and each node after that to

establish a transmission chain that ultimately ends at the base node; this would

happen at the initial start of the network system, and every time after a wireless

sensor node is completely depleted of its energy. This category of power usage

Page 36: demonstarting power savings and limitations with minimized coverage

28

would require that the wireless sensor node’s microprocessor and transmitting

and receiving components of the radio are also in their full power, active mode.

3. The power used in the active mode when the wireless sensor node is monitoring,

or sensing, the environment and the transmission of the sensor to its

transmission node. This category of power usage requires that the wireless

sensor node’s microprocessor, radio, and sensor board are in their active, full-

power mode.

4. Another category of power usage is that which is used to transmit another sensor

node’s reading, not necessarily transmitting its own reading. This category of

power usage requires the use of the wireless sensor node’s microprocessor and

radio.

5. The last category is the power used in the low-power sleep state; this typically

would establish that the wireless sensor node’s microprocessor, radio, and

sensor board have low-power, sleep states.

3.2 Routing ProtocolNext, we must include a discussion of routing protocols.

A routing protocol is the implementation of a routing algorithm in software or hardware. A routing protocol uses metrics to determine which path to utilize to transmit a packet across an internetwork. The metrics used by routing protocols include: number of network layer devices along the path (hop count), bandwidth, delay, load, MTU (maximum transmission unit), cost. [TO10]

To further clarify the term metric, a metric in this sense is measure of some

property of the network. The routing protocol used in the network simulator with

this project is a variation of a shortest path routing algorithm implemented with

the following steps:

Page 37: demonstarting power savings and limitations with minimized coverage

29

First, the algorithm checks if the sensor node under consideration is within

transmission range of the base node. If this is the case, then the sensor node is

able to transmit directly to the base node and does not need any other

transmission nodes.

With random placement of sensor nodes, as this simulation assumes, it is

possible that a sensor node may not be within transmission range of any other

node in the system. So, the second step in the algorithm is to check if there are

any nodes that are completely outside the transmission range of all other nodes.

For sensor nodes in which this is the case, these nodes are taken out of the

system; they will not be part of the coverage or communication system. In the

report output, generated at the end of each simulation, the number of nodes that

were initially outside the system, and each individual node, are reported.

Once it is known which nodes are able to transmit directly to the base

station, and which nodes are outside the transmission range of any other node,

and thus eliminated from the system, transmission nodes are established for

each sensor node. The algorithm finds the best transmission in the following

manner:

1. for each node it considers which nodes are within its transmission range

2. for each node within the originally considered node’s transmission range, it

determines the node that is closest to the base node; in this manner the

algorithm continually finds the node within its transmission range, but going as far

as possible in the direction of the base node

3. all nodes that are still in the network system go through this algorithm to find their

Page 38: demonstarting power savings and limitations with minimized coverage

30

transmission node

4. In the course of network operation, if a sensor node expends all of its battery

power, the transmission nodes are recomputed so that a sensor node does not

try to transmit to a dead sensor node

There are three conditions that will terminate the network operation:

1. When the base node becomes out of transmission range of all other sensor

nodes, this may happen as a course of network operation, as nodes become

depleted of energy and are dropped from the network, or if the initial placement

of the base node places it out of range of the rest of the sensor nodes

2. When there are less than 5% of the original number of sensor nodes left in the

network

3. When there is less than 15% of the original total sensing area coverage left

because of the depletion of sensor nodes; the original total sensing coverage

area is calculated as (original number of nodes) × π × (sensing radius of node)2

3.3 Placement of SensorsThe simulator in this project determines the coordinates of each sensor

node, and the base node randomly. This method of placing sensor nodes is

consistent with real-life sensor node placement practices.

Page 39: demonstarting power savings and limitations with minimized coverage

31

Chapter 4

4 IMPLEMENTATION OF SIMULATION

4.1 AssumptionsFollowing are assumptions that were made in the implementation of the

network simulator:

the area of surveillance is a rectangular two-dimensional area whose dimensions

are known

the surveillance area is on one plane, a flat terrain

each sensor node is placed randomly on the two-dimensional surveillance area

and knows its coordinates

each sensor node is powered by two AAA batteries, each of which initially has

approximately 1000 mAH of power

4.2 Java Network Simulator This wireless sensor network simulator was written in the programming

language Java. The simulator is comprised of four Java classes: the Main class,

the Node class, the NodeFieldFrame class, and the UserInput class. The network

simulator has been given a name which is to demonstrate the purpose of the

project, Minimize Usage – Extend Life, or the MUEL simulator. Each of these

classes will be discussed.

The first class, Main.java, is the class that contains the main() method,

which is the driver for the whole program. There are several key components to

this class that contribute to the overall simulation of wireless sensor network

Page 40: demonstarting power savings and limitations with minimized coverage

32

operation. These contributions are:

create an object of the UserInput class that facilitates the user in inputting key

data for the simulator

uses a random number generator to randomly determine the coordinates of each

sensor node

creates an array that holds data type Node, which facilitates accessing each

unique node by the index of the array

establishes each node in a coverage group, based on the user’s input as to what

percentage of the total number of nodes are to be active at any one time

as previously described, implements the routing algorithm that transmits each

sensor node’s reading to either its transmission node or the base node

creates an object of NodeFieldFrame that produces a Java window that

graphically represents the wireless sensor network’s area of surveillance and the

location of each sensor node, including the base node

implements a for-loop, which simulates the passage of time; each iteration

through the for-loop represents the passage of one minute; in this manner the

simulator is able to measure the lifetime of the whole network system

calculates the usage of battery power for each sensor node, based on the sensor

node’s time in a given state, the power consumed in the radio transmission of

data, the power consumed in the transmission of data, and the power used to

establish its location with respect to the base node

provides output to various data files

provides a concise report of key data upon termination of the network

Page 41: demonstarting power savings and limitations with minimized coverage

33

The next component class that is part of the simulator is Node.java. This

class describes all of the data and methods that describe the wireless sensor

nodes. Some of the more important data of Nodes class are:

the x-coordinate of the wireless sensor node in the rectangular, Cartesian

coordinate system

the y-coordinate

a variable transDirect, which is data type Boolean, that indicates whether the

particular wireless sensor node is close enough to transmit directly to the base

node without the need for an intermediate transmission node

a variable pwr, of data type double, to hold the value of the wireless sensor

node’s battery power

a variable state, of data type integer, that holds the value of the wireless sensor

node’s state, an integer value from 1 to 5

a variable inRange, of data type Boolean, that indicates whether the wireless

sensor node is within transmission range of another node; if this value is false,

the distance to any other sensor node is greater than the transmission distance

of the wireless sensor node, so the node is taken out of the network system

a variable coverageGroup, of data type integer, that holds the numerical

representation of which coverage group the wireless sensor node is in

a variable transNode, which is of data type Node, that is the wireless sensor

node to which the given sensor node will transmit to

The methods of Node.java are

Page 42: demonstarting power savings and limitations with minimized coverage

34

markIncompleteRoutes(), which is a method that is called in the main() method of

the Main class; this method traces and prints the transmission chain of sensor

nodes which ultimately ends at the base node

transmit(), which is recursively called every time a node transmits data to its

transmission node, and this method also decrements the power at every node

along the way to account for the sensor node’s battery power used in

transmission

The next class that is part of the simulator is NodeFieldFrame.java. This

class inherits the data and methods of its parent class, Frame.java. An object of

this class is created in the main method, and is responsible for producing a Java

frame that graphically represents the surveillance area and the location of each

sensor node. Additionally, based on the value of the sensor node’s Node object’s

variable state, the NodeFieldFrame object will color the sensor node in the frame

according to if it is still within the system, what state – active or sleep – it is in,

and what’s it battery power level is.

The final class to contribute to the simulator is UserInput.java. This class

has methods that prompt the user for all of the input associated with the

simulator. The inputs that prompt the user to provide are:

The x – dimension of the surveillance area

The y – dimension of the surveillance area

The initial battery power of each sensor node

The number of sensor nodes in the system

The radio transmission range of the sensor node

Page 43: demonstarting power savings and limitations with minimized coverage

35

The sensing range of the sensor node

The percentage of nodes that are going to be active at any one time; the user

may input 100% of the nodes, 50%, 33%, 20%, or 10% of the nodes will be

active at any one time.

The principle algorithm followed by the simulator in operating in the

wireless sensor network is displayed below.

Figure 3: Main algorithm of MUEL Simulator

Upon completion of entering the required input, the wireless sensor

network .simulator commences. The output of the simulator is sent to three

different output media: the graphical representation of the surveillance in a Java

window; output will be sent to the DOS screen, or console window, this will

depend on the environment in which you are running the Java simulator; finally,

Page 44: demonstarting power savings and limitations with minimized coverage

36

output is sent to a data file, eventLog.dat, which records key events as they

happen in the network simulation.

The java window that presents a graphical representation of the sensor

nodes and the surveillance area has some unique features to it. The base node

is represented as a circular golden icon, larger than the other sensor node icons.

The sensor nodes are also represented as circular icons, about two-thirds the

size of the base node icon. These sensor node icons may be presented in one of

five colors:

1. A yellow sensor node icon represents a sensor node in a low power sleep state

2. A green sensor node icon represents a sensor node in the active monitoring and

transmitting state; the green icons do not normally appear visible because the

simulation is proceeding too fast for the short time, one minute, that the sensor

node is in the active monitoring state; delays have been implemented to make

the green icon, active state sensor node visible; this delay has been “commented

out” because it causes the simulator to take an unreasonable amount of time to

complete the simulation.

3. A red sensor node icon represents a sensor node that has less than 50% of its

original battery power left

4. A dark gray sensor node icon represents a sensor node that has less than 5% of

its original battery power left; in this state the sensor node is considered dead

and is taken out of the network system

5. A white sensor node icon represents a sensor node that was not within

transmission range of any other sensor node, so it was removed from the

Page 45: demonstarting power savings and limitations with minimized coverage

37

network system

The second output format mentioned previously is the DOS screen or output

console, depending on what environment the simulator is being run in. Output to

this format is:

The Cartesian coordinates of each sensor node in the system

The sensor nodes that are close enough to the base node to transmit directly to

the base node

The sensor nodes that are not within transmission range of any other sensor

nodes; these nodes therefore will not be able to communicate with any other

sensor nodes, or the system, and are therefore taken out of the network system

What coverage group each sensor node is in; if the user selected 100% of the

sensor nodes to be used at one time, there will be one coverage group; if the

user selected 50% of the sensor nodes to be active at one time, there will be two

coverage groups; if the user selected 33% of the sensor nodes to be used at one

time, there will be three coverage groups, and so on for 20% and 10% of the

wireless sensor nodes being used at one time.

The transmissions chains, which can be thought of otherwise as the sequence of

sensor nodes that transmit a sensor node’s reading, which will always end up

being transmitted to the base node, N0.

A report on sensor nodes that expend energy and eventually have less than 5%

of their original battery power left; the output gives the sensor node’s final power

level; the output then reports how many nodes are in direct transmission range to

the base node, and the transmission chain for each sensor node still alive in the

Page 46: demonstarting power savings and limitations with minimized coverage

38

system; this format for reporting dead sensor nodes is repeated until the system

terminates due to loss of coverage, network connectivity, or the base node

becomes out of range of other wireless sensor nodes.

A final status on each sensor node in the system, what their final power was still

available, and the state of each sensor node at time of network termination

How many nodes were still active

What the total network lifetime was in hours

The third output format is the eventLog.dat file. Data that is sent to this file

refers to the following network or sensor node events:

What sensor nodes are out of radio transmission range of the system

The network time a given sensor node transmits its reading

The percentage of the coverage area that was left at time of simulation

termination

The number of sensor nodes that were still alive at time of simulation termination

This eventLog.dat file records many thousand events and ultimately ends up

being a very large data file. It is usually too large to open with Notepad, but may

be opened with any other text editor that is capable of opening large files, for

example, Wordpad.

4.3 Power ConsumptionIn order to understand the means by which power is consumed by the

sensor node, a brief discussion of the different states, or modes of operation, of

the sensor node must be included. The states that a sensor node may exist in

are 1), an active state in which the sensor node is fully powered, listening and

transmitting signals; and 2) a sleep state in which the sensor node is reduced to

Page 47: demonstarting power savings and limitations with minimized coverage

39

the minimum required to maintain memory and allow it to awake and return to an

active state.

The Mica Mote, by Crossbow Technologies, has typical power usage

characteristics for wireless sensor nodes. These power usage values for the

various components and operational levels will be used in the wireless sensor

network simulator, MUEL. These power usage values are given in the following

table:

Currentsvalue units

Micro Processor (Atmega128L)current (full operation) 6 macurrent sleep 8 uaRadiocurrent in receive 8 macurrent xmit 12 macurrent sleep 2 uaLoggerwrite 15 maread 4 masleep 2 uaSensor Boardcurrent (full operation) 5 macurrent sleep 5 ua

Table 1: Current used in Crossbow MICA2 Mote(http://www.xbow.com/Support/Support_pdf_files/PowerManagement.xls)

So, the determining factors are the initial power available for the sensor

node, and the amount of time the sensor node spends in that state.

4.3.1 MicrocontrollerThe microcontroller unit on the wireless sensor node is a small computer

set in an integrated circuit. Its components would typically consist of a simple

central processing unit, CPU, a clock component, the input / output channel

Page 48: demonstarting power savings and limitations with minimized coverage

40

connections, and memory. This unit is also where the operating system of the

wireless sensor node would be maintained and ran. From the table it can be

seen that the microcontroller in its full-power states requires 6 milli-amps, mA, of

current, and 8 micro-amps, µA, of current.

4.3.2 Sensing UnitThe sensing component of the wireless sensor node is that component

which measures or takes the reading of whatever the node is supposed to

monitor. From the table, it can be seen that the sensing unit may operate in one

of two states: the active sensing state will require 5 mA of current to power it, and

the sleep state of the sensing unit will require 5 µA of current to power it.

4.3.3 RadioThis is the component that will receive radio messages from other wireless

sensor nodes, be they regular nodes or the base node. From the table it can be

seen that the radio may operate in two states; active and sleep. In the sleep

state, the radio will require 2 µA of current to power it; in the active state, the

radio will require 8 mA to receive, and 12 mA of current to transmit.

4.4 CoverageIt is necessary to define coverage, and to establish how a wireless sensor

node will be able to establish a positive reading, or make a measurement or

reading of the parameter it is to be monitoring. In this simulation, it will be

assumed that a wireless sensor node will be able to take a reading in a pure

circular coverage area, and the intensity of the parameter that is being monitored

will behave as for a radio signal, where the strength of the signal varies inversely

with the square of the distance from the monitor.

Page 49: demonstarting power savings and limitations with minimized coverage

41

Strength α i/d2

Simply stated, the equation above represents the strength of the

measurement is inversely proportional to the square of the distance between the

wireless sensor node and the distance at which the measurement is taken.

Page 50: demonstarting power savings and limitations with minimized coverage

42

Chapter 5

5 ENHANCEMENT 1

One enhancement that is readily available is to check if there are any

nodes in the same coverageGroup that are also within a very close proximity to

each other. If this were the case, the two wireless sensor nodes could be paired

up and only one of them run at a time, and staying in the sleep state in the off

time. This would theoretically prolong the life of the wireless sensor node, and

therefore the network system. Examples of pairs of wireless sensor nodes can be

seen in the following illustration. It can be seen that nodes N87 and N55, N88

and N135, and nodes N136 and N15 could be paired together. Consider if these

pairs of nodes were in the same coverage Group; in an application designed to

minimize usage and extend network life, it would certainly make sense to not

have the pair of nodes active at the same time.

Page 51: demonstarting power savings and limitations with minimized coverage

43

Figure 4: Display of output window with nodes near each other

This enhancement was implemented in the class Main.java in the method

checkDuplicateCoverage(). The first step was to create a method that would

check every node against every other wireless sensor node to see if

1. The nodes were in the same coverageGroup

2. To see if the nodes were less than 2 meters apart.

If both of these conditions were true, in the simulation, the node’s Boolean value

node.isAPair would be set to true. This is checked in the Main.java file on line

#575, and an adjustment to the node’s power supply is made on the next line.

Page 52: demonstarting power savings and limitations with minimized coverage

44

Chapter 6

6 ENHANCEMENT 2

Another enhancement to the algorithm would be to lift the requirement that

two wireless sensor nodes be in the same coverage group to form a “pair”. This

would leave the check of two nodes against each other being only “are these two

node’s within two meters of each other?” There is a slight modification to the

method checkDuplicateCoverage(), which eliminates the condition that the two

nodes being checked against each other are in the same coverage group.

Page 53: demonstarting power savings and limitations with minimized coverage

45

Chapter 7

7 COMPLEXITY ANALYSIS OF ALGORITHM

The main algorithm of this simulation can be written as a function of the

form f(n) = O(g(n)). Here, the function g(n) is the algorithm that is simulating our

wireless network system, and the variable n represents the number of values that

the function will work on; in this case n represents the number of wireless sensor

nodes in our system. In the algorithm of the simulation, n, the number of wireless

sensors in the network operates on every other wireless sensor node in the

following methods: checkDuplicateCoverage(),

checkNodesOutsideTransRangeOfEachOther(), and establishTransmitNode().

checkDuplicateCoverage() is the method that implements modifications for

Enhancement #1 and Enhancement #2. This method checks every node against

every other node for both the conditions: 1) is the node being checked in the

same coverage group, and 2) is the node being checked within two meters of

the initial node. If both of these conditions are met, the algorithm uses only one of

the nodes at a time during an active duty cycle, thus saving energy for those two

particular wireless sensor nodes.

In the method checkNodesOutsideTransRangeOfEachOther(), the

distance between the node in question and the original node is checked. The

algorithm saves the smallest distance between the original node in question, and

Page 54: demonstarting power savings and limitations with minimized coverage

46

all of the other nodes in the system. If this minimum distance turns out to be

greater than the expected transmission range of the wireless sensor nodes, then

this node will be effectively out of range of the whole system.

The third method, establishTransmitNode(), checks every node against

every other node to find a node that is within transmission range, and the range

between the node being checked and the base node is minimized. This algorithm

continually sets the transmission node at the furthest distance from the original

node and chooses one that is in the direction of the base node, so that the chain

of transmission nodes will ultimately reach the base node.

All of these algorithms are similar to sorting algorithms and are a type of

quadratic equation. The order of complexity of these algorithms, using “big-O”

notation, is O(n2).

Page 55: demonstarting power savings and limitations with minimized coverage

47

CHAPTER 8

8 EXPERIMENTAL RESULTS

8.1 Initial Simulation Configuration

The results from several simulations are presented in Table 1. Simulations

were run using inputs of 100 meters by 100 meters for the dimensions of the

surveillance area, a sensing range of 2 meters, battery power roughly equivalent

to two AAA batteries, 2.0 amp-hours. The variables for each simulation were 1)

the distance of the transmission range for the wireless sensor nodes, and 2) what

percentage of nodes was used during the active cycle. Transmission ranges of

30, 15, 10, and 8 meters were used, and the percentages of nodes used during

the active cycle were 100, 50, 33, 20, and 10%.

The key observations made regarding the results are:

Perhaps due to the programming of the simulations, the divergence in the

resultant lifetimes of the wireless network was very small, for simulations that had

similar parameters: surveillance area dimensions, sensing range, number of

nodes

In the second set of simulations in which network life lasted much longer, the

divergence of the lifetimes was greater, probably due to the fact that the network

lifetime was much greater

Page 56: demonstarting power savings and limitations with minimized coverage

48

There were simulations where the percentage of sensing coverage that was left

at the end of the simulation was great, greater than 15%, which was a

termination condition; as expected, these simulations terminated when the base

node became out of range of the rest of the wireless sensor nodes; also, as

expected, this type of simulation termination was more prevalent in simulations

with a shorter transmission range, 8 meters or 10 meters

As the percentage of sensor nodes decreased during the active cycle, the

extension of the network lifetime was seen to increase by an expected ratio; for

example, when 100% of the nodes were used during the active duty cycle, the

network lifetime was approximately 1709 hours, regardless of the transmission

range of the sensor nodes. ( see figures in Table 1 ) When 50% of the nodes

were used during the active duty cycle, the network lifetime was 3378 hours. If

there were no overhead power loss, one would expect a network lifetime of 2 ×

1709, or 3418 hours. This is 98% of the expected network lifetime, which is

excellent. When 33% of the nodes were used during the active duty cycle, the

network lifetime was 5010 hours. If there were no overhead power loss, one

would expect 3 × 1709, or 5127 hours. The lifetime actually seen from the

simulator, 5010 hours, is 97.7%. Continuing, when 10% of the nodes are used

during the active duty cycle, the network lifetime was 15,462 hours. This is 90%

of what would be expected if there were no overhead power loss. Making similar

calculations in the second run of simulations, the extension of network life is

much less, percentage-wise. For simulations in which 50%, 33%, 20%, and 10%

of the nodes were active during the duty cycle, the network lifetimes were 93%,

Page 57: demonstarting power savings and limitations with minimized coverage

49

87%, 77%, and 60%, respectively, of what would be expected if there were no

overhead power loss. The cause for the lifetimes to be much less than in the first

run of simulations is that the parameters chosen for the second run made the

network run much longer, there was therefore much more of the power being

used for overhead of the network operation.

Table 2: Network lifetimes, first configuration

Page 58: demonstarting power savings and limitations with minimized coverage

50

Table 3: Network lifetimes, second configuration

Graph 1

Page 59: demonstarting power savings and limitations with minimized coverage

51

Figure 5: Graph of Network Life vs. Number of Subgroups

8.2 Enhancement 1Fifteen simulations were run in the MUEL wireless network simulator with

the following parameters: 100m by 100m surveillance area, 245 wireless sensor

nodes, sensing range of 2m, 15m transmission range, and 20% of the nodes

active at one time in each coverage group. The results from the simulator with no

enhancements and the results with Enhancement #1 are presented in the

following table.

Page 60: demonstarting power savings and limitations with minimized coverage

52

Table 4: Network lifetimes with Enhancement #1

The average of the simulations with no enhancement is 35,864.48 hours,

and the standard deviation of the values is 1.67115; i.e., in a sample of numbers

whose average is around 35,900, there is not much variance in the values.

The average of the simulations with Enhancement #1 is 35,864.92 hours,

with a standard deviation of 1.32278; again, there is not much variance in the

sample of values for Enhancement #1. However, the difference between the

averages from the no enhancement group to the Enhancement #1 group is 0.44

hours. If we consider an average transmission time in the simulation of 0.75

seconds ( a one second transmission time for reporting a reading, and a 0.5

second transmission time for a node to relay a reading ), this would equate to

2112 transmissions.

0.44 hours ÷ 0.75 seconds/transmission × 60 seconds/minute × 60 minutes/hour = 2112

Page 61: demonstarting power savings and limitations with minimized coverage

53

transmissions

So, even though the difference in the overall lifetime of the network with

Enhancement #1 is not statistically significant, the enhancement does

demonstrate that approximately 2000 more transmissions would be possible with

Enhancement #1, as would be expected.

8.3 Enhancement 2Fifteen simulations were also run in the MUEL simulator with

Enhancement #2 having been implemented. The same network parameters were

used with Enhancement #2 as with the previous simulations. The results from the

simulations are presented in the table below.

Table 5: Network lifetimes with Enhancement #2

Again, it can be seen that the divergence among the results is not great;

Page 62: demonstarting power savings and limitations with minimized coverage

54

the standard deviation in the results from the simulations with Enhancement #2 is

0.74. The difference between the average of the simulations with no

enhancement and that with Enhancement #2 is 0.85 hours. Using the same

values as were used in the calculation for Enhancement #1, this translates into

4080 more transmissions.

0.85 hours ÷ 0.75 seconds/transmission × 60 seconds/minute × 60 minutes/hour = 4080

transmissions

Again, in relation to the overall life of the network in hours, this is not a

statistically significant increase in network life, but it does demonstrate an

increase of approximately 4000 transmissions in the life of the network, as would

be expected.

Page 63: demonstarting power savings and limitations with minimized coverage

55

CHAPTER 9

9 LESSONS LEARNED

There were many lessons learned in this research project. One simple

lesson that is learned in beginning programming classes is that the order in

which variables are given a value does make a difference when this variable is

used in other expressions. This lesson was re-learned in this project.

Another lesson learned was to trust the program when the results that are

produced are not what were expected. For example, the results from several

simulations that used similar parameters, except transmission range and

percentage of nodes used during an active cycle, were uncomfortably similar,

leading me to think the simulation somehow was not running correctly. Upon

further consideration, when the dimensions of the surveillance area were

constant, even with random placement of the nodes, the nodes had a predictable

number of transmissions to the base. So, if there was 0.1 hour difference from

one simulation to the next, this amount of time would be the equivalent of

approximately 500 transmissions, given an average transmission time of 0.75

seconds in the simulation.

Another lesson, or observation, was that the routing algorithm used in the

simulation was surprisingly robust. One of the termination conditions was the

base node becoming out of range from the rest of the network due to surrounding

Page 64: demonstarting power savings and limitations with minimized coverage

56

nodes depleting their energy and being dropped from the network. Only when the

base node was on the perimeter of the surveillance area, especially when it was

in a corner of the surveillance area, did the base node become out of range of

the rest of the network. If the base node was located somewhere in the interior of

the surveillance area, the routing algorithm usually found a route for nodes to the

base node, and the network would terminate caused by another one of the

termination conditions.

Finally, I would also have to include that it is very difficult to simulate every

condition experienced by the nodes and network in the real world, and to have

the simulator produce results that would be very characteristic of results in the

real world.

Page 65: demonstarting power savings and limitations with minimized coverage

57

CHAPTER 10

10 CONCLUSIONS AND FUTURE RESEARCH

The Minimize Usage – Extend Life (MUEL) Wireless Network Simulator

was developed to simulate network operations for wireless sensor node

networks. The simulations produced results that would be expected: for identical

network conditions, a network that is using 50% of the nodes during an active

duty cycle, compared to a network that is using 100% of the nodes during an

active duty cycle, will last approximately twice as long. There will, however,

always be “overhead” power used in the operation of the network, e.g., power

used to recompute transmission nodes after one node has depleted its energy

and been removed from the network system. As smaller and smaller percentages

of nodes are active at one time, the overhead power cost becomes greater and

greater, so that while the overall network life is extended, the scale that that life

of the network is increased becomes less and less. As demonstrated in the

results, the longer the network runs, overhead power costs will become

considerable. In the first run of simulations in which 100% of the nodes were

active in the duty cycle, when 10% of the nodes were active in the duty cycle, the

network lasted 90% of the time if there were no overhead power loss. In the

Page 66: demonstarting power savings and limitations with minimized coverage

58

second run of simulations, when 100% of the nodes were active in the duty cycle,

the network had a lifetime of approximately 9,274 hours, regardless of the

transmission range of the nodes. If there were no overhead power loss, when

10% of the nodes were active during the duty cycle, we would expect network

lifetimes of 92,740 hours. What was observed was a network lifetime of

approximately 55,900 hours, only 60% of the possible network lifetime. Both of

these simulations used 245 nodes, 2 meter sensing range, and 100 meter by 100

meter surveillance area.

Still, this approach to extending wireless sensor node network lifetimes

can be of significant benefit to situations where a reduced coverage is

acceptable; extending the network life by as much as 900% is possible.

Areas for future research in this area might include assigning the sensor

nodes into coverage groups so that when one coverage group is active, the

actual coverage of the surveillance area will be more dispersed, instead of just

according to the numbering of the nodes. There could also be advances in the

overhead power used by the sensor nodes, so that as the networks become

bigger and bigger, the actual extension of the network life will be maximized as

much as possible.

Page 67: demonstarting power savings and limitations with minimized coverage

59

Bibliography

[AL10] AllAboutBatteries.com. Battery energy storage in various battery sizes. 24 March 2010 http://www.allaboutbatteries.com/Energy-tables.html .

[CH01] Chandrakasan, Anantha and Rex Min, Manish Bhardwaj, Seong-Hwan Cho,. "Low Power Wireless Sensor Networks." The 14th Annual Conference on VLSI Design (VLSID'01) (2001): 205, http://doi.ieeecomputersociety.org/10.110910.1109/ICVD.2001.902661.

[CH04] Chang, Jae-Hwan, Leandros Tassiulas. “Maximum Lifetime Routing in Wireless Sensor Networks”. 2004. Web. February 21, 2011. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.24.9402&rep=rep1&type=pdf .

[CH07] Chen, Chao-Lieh, Kuan-Rong Lee, Jung-Hsing Wang, Yau-Hwang Kuo. “Energy-proportional routing for Lifetime Extension of Clustering-based Wireless Sensor Networks”. International Journal of Pervasive Computing and Communications, 2007, Volume 3, Issue 3, pages 304 – 321.

[CH08] Chow, Kit-Yee, King-Shan Lui, Edmund Y. Lam. “Wireless sensor networks scheduling for full angle coverage”. June 17, 2008. http://www.eee.hku.hk/~sennet/pdf/multidimension2009-kychow.pdf .

[CU05] Curren, David. “A Survey of Simulation in Sensor Networks”. 2005. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.94.2626&rep=rep1&type=pdf .

[DA07] Dagher, Joseph C., Michael W. Marcellin, Mark A. Neifeld. “A theory for maximizing the lifetime of sensor networks”. 2007. http://citeseer.ist.psu.edu/viewdoc/download?doi=10.1.1.92.3957&rep=rep1&type=pdf .

[DO05] Dong, Qunfeng. “Maximizing System Lifetime in Wireless Sensor Networks”. 2005. http://www.citeseerx.ist.psu.edu/viewdoc/download/doi/10.1.1.109.6910/rep%3Drep1%26type%3Dpdf&ei=nNtiTYKoB8G4tgfDy7igDA&usg=AFQjCNE4OohuYN5ZazmhlLfMCZF3KafPNw .

[EG05] Egea-Lopez, E., J. Vales-Alonso, S. Martinez-Sala, P. Pavon-Marino, J. Garcia-Harro. "Simulation Tools for Wireless Sensor Networks". Summer Computer Simulation Multiconference (SPECTS ’05). Philadelphia, July 2005. http://ait.upct.es/~eegea/pub/spects05.pdf .

Page 68: demonstarting power savings and limitations with minimized coverage

60

[FE02] Feinberg, Eugene A. (editors), Adam Shwartz. “Handbook of Markov Decision Processes: Handbook and Applications”. Kluwer’s International Series. 2002. Pg 1-2. Web. http://www.ams.sunysb.edu/~feinberg/MDPHandBook/index.html .

[GA11] GameTheory.net. Pareto Optimal. April 8, 2011. http://www.gametheory.net/dictionary/ParetoOptimal.html .

[GI11] Girod, Lewis, Jeremy ElsonAlberto Cerpa, Thanos Stathopoulos, Nithya Ramanathan, Deborah Estrin. “Em*: a Software Environment for Developing and Deploying Wireless Sensor Networks”. February 19, 2011. http://www.cs.ucla.edu/~palsberg/sns/GirodElsonCerpaStathopoulosRamanathanEstrin.pdf .

[HE10] He, Tian and Sudha Krishnamurthy, John A. Stankovic, Tarek Abdelsaher, Liqian Luo, Radu Stoleru, Ting Yan, Lin Gu. Energy-Efficient Surveillance System Using Wireless Sensor Networks. 6 June 2004. 26 February 2010 http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.126.8285&rep=rep1&type=pdf .

[HU05] Huang, Chi-Fu, Yu-Chee Tseng. "The Coverage Problem in Wireless Sensor Networks." Mobile Networks and Applications (2005): Volume 10, Number 4, pages 510 - 528.

[KE11] Keshav, S. "Overview." Department of Computer Science, Cornell University. Web. 07 Apr. 2011. http://www.cs.cornell.edu/skeshav/real/overview.html .

[KI08] Kim, Joohwan, Xiaojun Lin, Ness B. Shroff, Prasun Sinha. “Minimizing Delay and Maximizing Lifetime for Wireless Sensor Networks With Anycast”. Proceedings of IEEE INFOCOM ’08. February 21, 2011. http://cobweb.ecn.purdue.edu/~linx/paper/ton08-sleep.pdf .

[KO10] Kosar, Rabun, Ilir Bojaxhiu, Ertan Onur, Cem Ersoy. “Lifetime extension for surveillance wireless sensor networks with intelligent redeployment”. February 21, 2011. http://www.sciencedirect.com/science/article/B6WKB-51S6XH2-3/2/dbadb759d6f9af3671367a2ab449e012 .

[LE10] Lewis, F. L., “Wireless Sensor Networks”, March 10, 2010, http://arri.uta.edu/acs/networks/WirelessSensorNetChap04.pdf.

[LE11] Levis, Philip, Nelson Lee, Matt Welsh, David Culler. “TOSSIM: Accurate and Scalable Simulation of Entire TinyOS Applications”. February 19, 2011. http://www.cs.ucla.edu/~palsberg/sns/LevisLeeWelshCuller03.pdf .

Page 69: demonstarting power savings and limitations with minimized coverage

61

[LI11] Liu, Jason, L. Felipe Perrone, David M. Nichol, Michael Liljenstam. “Simulation Modeling of Large-Scale Ad-hoc Sensor Networks”. February 19, 2011. http://www.cs.ucla.edu/~palsberg/sns/LiuPerroneNicolLiljenstamElliottPearson.pdf .

[LO09] Long, Hengyu, Yongpan Liu, Yiqun Wang, Robert P. Dick, Huazhong Yang. “Battery Allocation for Wireless Sensor Network Lifetime Maximization Under Cost Constraints”. November, 2009. http://robertdick.org/publications/long09nov.pdf .

[ME01] Meguerdichian, Seapahn, Farinaz Koushar, Miodrag Potkonjak, Mani B. Srivastava. "Coverage Problems in Wireless Ad-Hoc Sensor Networks". IEEE Infocom (2001): Vol. 3 pages 1380-1387, April 2001.

[MU11] Mulligan, Raymond, Habib M. Ammari. “Coverage in Wireless Sensor Networks: A Survey”. February 21, 2011. http://www.macrothink.org/journal/index.php/npa/article/viewFile/276/332 .

[NS10] "Nsnam - User Information." 12 Feb. 2010. Web. 07 Apr. 2011. http://nsnam.isi.edu/nsnam/index.php/User_Information .

[NS11] Ns-3 Network Simulator, The. Web. 07 Apr. 2011. http://www.nsnam.org/ .

[OS10] Ostaffe, Harry. RF Energy Harvesting Enables Wireless Sensor Networks. 13 October 2009. 28 February, 2010. http://www.sensorsmag.com/sensors-mag/rf-energy-harvesting-enables-wireless-sensor-networks-6175 .

[PE11] Perrone, Luiz Felipe, David M. Nichol. “A Scalable Simulator for TinyOS Applications”. February 19, 2011. http://www.cs.ucla.edu/~palsberg/sns/PerroneNicol02.pdf .

[PI01] Pister, Kris. “SMART DUST, Autonomous Sensing and Communication in a Cubic Millimeter”. SMART DUST. 2001. Accessed 14 May 2010. http://robotics.eecs.berkeley.edu/~pister/SmartDust/ .

[PL04] Plett, Gregory Ph.D. Associate Professor, Department of Electrical and Computer Engineering, personal communication, S. Rubey. 21 October 2004.

[PO11] Polley, Jonathan, Dionysys Blazakis, Jonathan McGee, Dan Rusk, John S. Baras. “ATEMU: A Fine-grained Sensor Network Simulator”. February 19, 2011. http://www.cs.ucla.edu/~palsberg/sns/Polley04.pdf .

[SA08] Sangho, Yi, Hong Min, Yookun Cho, Jiman Hong. "SensorMaker: A Wireless Sensor Network Simulator for Scalable and Fine-Grained Instrumentation”. International Conference on Computational Science and Its Applications, (ICCSA ‘08), April 2008. pg 800 – 810.

Page 70: demonstarting power savings and limitations with minimized coverage

62

[SC01] Schurgers, Curt and Mani Srivastava. "Energy Efficient Routing in Wireless Sensor Networks." MILCOM'01, Vienna, VA (October 28-31, 2001): 357-361, http://circuit.ucsd.edu/~curts/papers/MILCOM01.pdf.

[SL01] Slijepcevic, Sasa and Miodrag Potkonjak. "Power Efficient Organization of Wireless Sensor Networks." IEEE International Conference on Communications (ICC'01), Helsinki, Finland, June 2001 (2001): 472-476, http://www.cs.ucla.edu/~miodrag/papers/ICC2001.pdf.

[SP03] Springer.com. Energy Scavenging for Wireless Sensor Networks. 1 January 2003. 28 February 2010 http://www.springer.com/engineering/circuits+&+systems/book/978-1-4020-7663-3 .

[SO05] Sobeih, Ahmed, W. Chen, J. C. Hou, L. Kung, N. Li, H.Lim, H. Tyan, H. Zhang, “J-Sim: A simulation and emulation environment for wireless sensor networks.” In Proc. Annual Simulation Symposium (ANSS 2005), San Diego, CA, pp. 175–187, April 2005.

[SR01] Srivastava, Mani B. "SensorSim." Networked & Embedded Systems Laboratory. 22 Oct. 2011. Web. 07 Apr. 2011. http://nesl.ee.ucla.edu/projects/sensorsim/ .

[SU04] Sundresh, Sameer. “SENS: A Sensor, Environment and Network Simulator”. 2004. Web. April 7, 2011. http://osl.cs.uiuc.edu/sens/ .

[SU11] Sundresh, Sameer, Wooyoung Kim, Gul Agha. “SENS: A Sensor, Environment and Network Simulator”. February 19, 2011. http://www.cs.ucla.edu/~palsberg/sns/SundreshKimAgha04.pdf .

[TH08] Thai, My T., Feng Wang, David Hongwei, Xiaohua Jia. “Coverage Problems in Wireless Sensor Networks: Designs and Analysis”. International Journal of Sensor Networks, IJSNET Vol. 3, No. 3, 2008. page 191 – 200.

[TI05] Titzer, Ben L., Daniel K. Lee, Jens Palsberg. Avrora: Scalable Sensor Network Simulation With Precise Timing. Proceedings of IPSN'05, Fourth International Conference on Information Processing in Sensor Networks, 2005. http://www.cs.ucla.edu/~palsberg/paper/ipsn05.pdf .

[TO10] TopBits.com. Routing Protocols. 24 March 2010 http://www.topbits.com/routing-protocols.html .

[WA03] Wang, Xiaorui, Guoliand Xing, Yuanfang Zhang, Chenyang Lu, Robert Pless, Christopher Gill. "Integrated Coverage and Connectivity Configuration in Wireless Sensor Networks." The First ACM Conference on Embedded Networked Sensor Systems (SenSys 2003). Los Angeles: ACM, November 2003. pages 28 - 39.

Page 71: demonstarting power savings and limitations with minimized coverage

63

[WH80] Whittle, P. “Multi-Armed Bandits and the Gittins Index”. Journal of the Royal Statistical Society (Series B, Methadological), Vol. 42, No. 2 (1980). http://www.jstor.org/2984953.

[WI10] Wikipedia.org. Wireless Energy Transfer. 28 February 2010. 1 March 2010 http://en.wikipedia.org/wiki/Wireless_energy_transfer .

[XB10] Xbow.com. MICA2 868, 916 MHz Crossbow Technology. Accessed 14 May 2010. http://www.xbow.com/Products/productdetails.aspx?sid=174.

[XI03] Xiang-Yang Li, Peng-Jun Wan, Ophir Frieder, "Coverage in Wireless Ad Hoc Sensor Networks," IEEE Transactions on Computers, vol. 52, no. 6, pp. 753-763, June 2003, doi:10.1109/TC.2003.1204831.

[XI05] Xing, Guoliang, Chenyang Lu, Ying Zhang, Qingfeng Huang, Robert Pless. “Minimum Power Configuration for Wireless Communication in Sensor Networks”. 2005. Web. February 21, 2011. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.81.9688&rep=rep1&type=pdf .

[YU07] Yunxia, Chen, Qing Zhao, Vikram Krishnamurthy, Dejan Djonin. “Transmission Scheduling for Optimizing Sensor Network Lifetime: A Stochastic Shortest Path Approach”. IEEE Transactions on Signal Processing, Vol. 55, No. 5, May 2007. page 2294 - 2309 .

Page 72: demonstarting power savings and limitations with minimized coverage

64

Appendix A

How to Use MUELMinimize Usage – Extend Lifetime

Wireless Sensor Network Simulator

There are many different development environments for the Java

programming language. The most popular development environments are

Eclipse and Borland’s JBuilder. A programmer or developer may also write Java

programs in any text editing environment, but must have the Java Development

Kit installed on their computer to be able to compile and run Java programs. This

instruction will include the basics instructions for installing the Java Development

Kit on their computer; where to install the java files, how to compile and run the

Java program, and the program specific instructions for running the simulator:

1. Where to get the Java Development Kit (JDK)

2. How to download and install the JDK on your computer

3. How to compile and run a Java program

4. Instructions for running the MUEL

1. To run Java programs, the Java Runtime Environment (JRE) must be installed

on the computer. This is included in the download of the JDK. The current JDK

version is 6.0 with update 20. The usual type of JDK is the Java Development Kit

Standard Edition, one will see the abbreviation Java SE. This download is

available here, http://java.sun.com/javase/downloads/index.jsp, and the file size

is approximately 76 MB. JDK is available for Windows, Solaris, and Linux

operating systems, in both the standard 32-bit and the 64-bit versions.

Page 73: demonstarting power savings and limitations with minimized coverage

65

2. The JDK will install on your computer with the JDK Installer much the same as

any other application would be installed. Assuming that the file was downloaded

from the website, as opposed to running the installation from the website, one

would double-click the JDK Installer icon after having confirmed that the file was

downloaded correctly from the website. The JDK will be installed on your

computer in the directory C:/Program Files/Java and C:/Program Files/JRE. The

next step for the user is to update the PATH variable so that when compiling or

running a Java program, the user will only need to enter the java or javac

command, and will not need to enter the entire pathname to the JDK and JRE

directories.

3. Before running a Java program, it must be compiled. For example, the command

javac MyProgram.java must be executed to compile the program before the most

current version of MyProgram.java may be run. To run the Java program, the

command java MyProgram.java would be run.

4. Finally, to run the MUEL simulator, the user would need to have all of the files

included in the simulator. This would include: nodegui/NodeFiledFrame.java, in

which nodegui is a folder, and is considered a Java package; also,

nodepkg/Main.java, nodepkg/Node.java, and nodepkg/UserInput.java, in which

nodepkg is a Java package.

Again, these instructions assume that the user is not running the simulator

in another development, such as Borland or Eclipse. In these specific

environments, other files that help to create the project are automatically

generated in the environment. If the user is running the Java program from the

Page 74: demonstarting power savings and limitations with minimized coverage

66

command prompt, for example in a Windows environment and the PATH variable

has been updated as described before, and the user’s working directory is the

same as the directory that contains the Main.java program, the user would

execute the program as described above, java Main.java. Following this, the user

would then see the prompts to input the specific values for the simulation they

are interested in. The values that the simulator prompts for are:

1. The X – dimension of the area of surveillance, entered in meters.

2. The Y – dimension of the area of surveillance, entered in meters.

3. The expected transmission range of the wireless sensor nodes, entered in

meters. Typical transmission ranges for wireless sensor nodes range from a few

to 100 meters, depending on the type of node.

4. The battery capacity of the batteries used by the wireless sensor nodes, entered

in amp-hours. Assume that the wireless sensor nodes all use the same brand

and type of batteries. Some typical battery capacities are:

Battery Type Capacity (mAh) Typical Drain (mA)

D 12000 200C 6000 100

AA 2000 50AAA 1000 10

N 650 109 Volt 500 15

(http://www.techlib.com/reference/batteries.html)

Note that the unit used in this table list the battery capacity in milli-amp-hours.

The input for the battery capacity is requested in amp-hour units. For

example, the AAA battery unit is listed in the table as 1000 mAh; the input for

the simulator for this value would be 1.0, or simply 1.

Page 75: demonstarting power savings and limitations with minimized coverage

67

5. Sensing range of the wireless sensor nodes, entered in meters. It is assumed

that the sensing area of the wireless sensor nodes is a circle, whose radius is the

sensing range of the node.

6. The number of wireless sensor nodes in the network is the next input. This

parameter is typically in the magnitude of 10’s to 100’s. The largest value of this

parameter simulated was 245. More nodes may be used in simulations, how well

the simulator performs with a larger number of nodes depends on the system

running the simulator.

7. The last input by the user for the MUEL simulator is the percentage of nodes

being used at one time in the duty cycle by the wireless network. This is the key

function that allows variation in how few of the nodes will be active at one time.

For example, if the user wanted to use 100% of the sensor nodes for the duty

cycle, the user would enter “100”. If the user wanted to use half, 50%, of the

nodes in the duty cycle, the user would enter “50”, without the quotation marks.

Options for input to this prompt are 100, 50, 33, 20, 10.

Page 76: demonstarting power savings and limitations with minimized coverage

68

Appendix B

Page 77: demonstarting power savings and limitations with minimized coverage

69

Appendix CMUEL Simulator Code Commented Out

Throughout the code that comprises the MUEL Simulator, some of the

actual code that comprises the simulator has been commented out. One reason

for this is to shorten the time that it takes to complete one run of the simulator.

For example, assume two AAA batteries are simulated as the power source for

the sensor node, this would provide the sensor node with approximately 2.0 amp-

hours of power. Then, assuming a simulation of 200 wireless sensor nodes, the

time simulation algorithm in the MUEL simulator will perform between 900,000

and 4.4 million iterations, depending on the other parameters entered into the

system. With event logging turned on in the simulator, this simulation could take

one half of an hour to complete, and produce an event log with 6 GB of data. If

this is acceptable and the event log is desired, this may be un-commented out of

the program, as may be any other of the lines of code that have been

commented out.

There are also some lines of code that are applicable for Enhancement #1

and some for Enhancement #2.

Below are listed the sections of code that have been commented out for

expediency purposes:

Main.java

Line 192 – 196: a Thread.sleep() function; originally there to have the program

pause briefly when a node changed status to state 5

Line 198, 203 – 210: creation of a UserInput object and holdScreen() function;

Page 78: demonstarting power savings and limitations with minimized coverage

70

originally there to have the program stop until user input when the variable

finalNodes was decremented

Line 259, 260: values used for Set 1 and Set 2 simulations, one of these must

be left in the simulator at all times; all Set 1 values or all Set 2 values must

consistently be turned on together

Line 359, 368: if statement must be turned on for Enhancement #1 and

commented out for Enhancement #2

Line 585 – 589: Thread.sleep() function; this was originally in the simulator to

briefly see the sensor node in the screen display turn to its “green” state 2

condition; without the delay, the green state is never seen, with the delay

the simulation run time is unacceptably long

Line 595 – 598: system.println() function; this code prints transmission events to

eventLog.dat file; with possible millions of events, writing to this file is a

key culprit in slowing execution of the simulation

Line 634 – 635: code that must be turned on to implement function of

Enhancements #1 & #2

Line 676 – 680: thread.sleep() function; a very brief delay in execution of

program when a sensor node runs out of power & transitions to state 4

Line 714 – 718: thread.sleep(); very brief delay after recomputing transmission

routes when a node has “died”

Line 818: println() statement that may be included when running simulator with

Enhancement #1 or #2