Implementation of Stochastic Wsn

Embed Size (px)

Citation preview

  • 7/30/2019 Implementation of Stochastic Wsn

    1/46

    DESIGN AND IMPLEMENTATION OF A STOCHASTICWIRELESS SENSOR NETWORK

    BY

    JOEL CHRISTOPHER JORDAN

    B.S., University of Illinois at Urbana-Champaign, 2003

    THESIS

    Submitted in partial fulfillment of the requirementsfor the degree of Master of Science in Electrical Engineering

    in the Graduate College of theUniversity of Illinois at Urbana-Champaign, 2004

    Urbana, Illinois

  • 7/30/2019 Implementation of Stochastic Wsn

    2/46

    ACKNOWLEDGMENTS

    I thank my adviser Roy Campbell for providing me with an interesting project to

    work on. Also, I thank Doug Jones and Dan Sachs for introducing me to an interesting

    direction to take the project in. Don Schmidt initially informed me of the possibility

    of this project. Jacky Leungs long hours of soldering made this project possible. The

    student chapter of the ACM provided me with laboratory space and test equipment.

    I thank my family for their understanding and encouragement, and especially my

    father Glenn Jordan, who set a fine example for me to follow in my studies.

    iii

  • 7/30/2019 Implementation of Stochastic Wsn

    3/46

    TABLE OF CONTENTS

    LIST OF TABLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi

    LIST OF FIGURES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii

    CHAPTER 1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . 1

    CHAPTER 2 STOCHASTIC SENSOR NETWORK DESIGN . . . . . 42.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

    2.2 Stochastic Sensor Network Properties . . . . . . . . . . . . . . . . . . . . 42.3 Network Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.4 Test Network Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    CHAPTER 3 SENSOR NODE DESIGN CONSIDERATIONS . . . . . 83.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83.2 Power Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    3.2.1 Circuit overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93.2.2 Circuit implementation . . . . . . . . . . . . . . . . . . . . . . . . 113.2.3 Reservoir capacitor selection . . . . . . . . . . . . . . . . . . . . . 12

    3.3 Energy Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    3.3.1 Solar panel selection . . . . . . . . . . . . . . . . . . . . . . . . . 133.3.2 Alternate power sources . . . . . . . . . . . . . . . . . . . . . . . 16

    3.4 Transducers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.4.1 Sound-level transducer . . . . . . . . . . . . . . . . . . . . . . . . 173.4.2 Light level detection . . . . . . . . . . . . . . . . . . . . . . . . . 173.4.3 Other sensors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

    3.5 Wireless Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . 183.5.1 Radio module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183.5.2 Antenna considerations . . . . . . . . . . . . . . . . . . . . . . . . 20

    3.6 Control Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.6.1 Microcontroller . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

    3.7 Timekeeping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

    CHAPTER 4 SENSOR NODE OPERATION . . . . . . . . . . . . . . . 234.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.2 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    4.2.1 Hardware overview . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    iv

  • 7/30/2019 Implementation of Stochastic Wsn

    4/46

    4.2.2 Expansion connector . . . . . . . . . . . . . . . . . . . . . . . . . 234.2.3 Reprogramming the nodes . . . . . . . . . . . . . . . . . . . . . . 264.2.4 Prototype circuit boards . . . . . . . . . . . . . . . . . . . . . . . 26

    4.3 Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264.4 Design Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

    4.5 Base Station and Debugging Circuit . . . . . . . . . . . . . . . . . . . . . 31

    CHAPTER 5 CONCLUSIONS . . . . . . . . . . . . . . . . . . . . . . . . . 335.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

    APPENDIX A SOLAR CELL DISCUSSION . . . . . . . . . . . . . . . . 35

    REFERENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    v

  • 7/30/2019 Implementation of Stochastic Wsn

    5/46

    LIST OF TABLES

    Table Page

    3.1 Low-light performance for identically rated solar panels. . . . . . . . . . . 153.2 Solar panel power production per unit area. . . . . . . . . . . . . . . . . 16

    vi

  • 7/30/2019 Implementation of Stochastic Wsn

    6/46

    LIST OF FIGURES

    Figure Page

    3.1 Solar stochastic sensor node block diagram. . . . . . . . . . . . . . . . . 83.2 Conceptual solar cell IV curve. . . . . . . . . . . . . . . . . . . . . . . . 93.3 Solar battery charger circuit. . . . . . . . . . . . . . . . . . . . . . . . . . 103.4 Power supply circuit schematic. . . . . . . . . . . . . . . . . . . . . . . . 113.5 Aerogel, left, and double layer, right, 0.47-F supercapacitors. . . . . . . . 133.6 Four solar panels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.7 Sound-level detector. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173.8 Radio transceiver circuit. . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

    4.1 Stochastic sensor node schematic. . . . . . . . . . . . . . . . . . . . . . . 244.2 Expansion header pinout. . . . . . . . . . . . . . . . . . . . . . . . . . . 254.3 In-circuit serial programming header pinout. . . . . . . . . . . . . . . . . 264.4 Stochastic sensor node prototype. . . . . . . . . . . . . . . . . . . . . . . 274.5 Software operation flowchart. . . . . . . . . . . . . . . . . . . . . . . . . 284.6 Schematic of debugging circuit. . . . . . . . . . . . . . . . . . . . . . . . 31

    A.1 Solar cell equivalent circuit. . . . . . . . . . . . . . . . . . . . . . . . . . 36

    vii

  • 7/30/2019 Implementation of Stochastic Wsn

    7/46

    CHAPTER 1

    INTRODUCTION

    Wireless sensor networks have generated much research interest in recent years as

    advances in electronics technology have made them feasible. In general, such a network

    consists of many nodes scattered over an area to provide distributed sensing and data

    processing [1]. These networks can enable unattended monitoring of physical quantities

    over large areas on a scale that would be prohibitively expensive to accomplish with

    humans. Many uses have been suggested for wireless sensor networks, including habitat

    [2] and medical monitoring [3].

    Many groups have designed sensor nodes. These include Berkeleys Mica motes [4] and

    PicoRadio projects [5], MITs Amps [6], and Rices GNOMES [7], as well as many others.

    All of these sensors have similar goals, such as small physical size, low power consumption,

    and rich sensing abilities. In addition, the TinyOS project [8] provides a framework for

    designing flexible distributed applications for data collection and processing across asensor network.

    Many sensor network applications require the collection of data over long periods of

    time. Sensor nodes are generally powered with batteries, putting a limit on how small the

    node can be made for a given lifetime. Unfortunately, it is unlikely that battery capacities

    will increase dramatically in the near future. Historically, battery charge density has

    increased by a mere 2% per year over the last 50 years [9]. As an example, a CR2032

    lithium coin cell, about the size of a quarter, would provide an average of only 75 W if

    used completely over a year.

    As an alternative to batteries, sensor nodes can scavenge energy from their envi-

    ronment. Ambient light, mechanical vibrations, or even acoustic sources could provide

    power to operate a sensor. Research suggests that up to 100 W/cm3 can be obtained

    from vibrational sources [10]. A thin-film solar cell may provide 5 mW/cm2 of power

    1

  • 7/30/2019 Implementation of Stochastic Wsn

    8/46

    in bright sunlight, but only about 15 W/cm2 at desk level in office lighting. Unlike

    batteries, these ambient sources are often unreliable. A solar-powered node could no

    longer operate if a power outage turned off the lights in a building.

    Sensor nodes, then, must operate with extremely low power dissipation. However,

    consider that a typical commercial radio transceiver requires 10 mW of power in receive

    mode and 35 mW while transmitting [11]. Recent research has produced a transceiver

    design which needs only 1 mW in its receive mode [12] and 25 mW while transmitting

    [13]. Even this is more power than a small sensor node can produce.

    A solution to this problem is low-duty-cycle operation, where sensors spend a large

    percentage of the time in a low-power sleep mode. Because the power source is often

    unreliable, the duty cycle will be unreliable, varying with the amount of power available.

    Others have constructed self-powered sensor nodes with low-duty-cycle operation [14].However, existing routing algorithms have problems when operating on such hardware.

    Some, such as GEAR [15], include power reserves in the route selection heuristic so

    that routes prefer nodes with more power available. Unfortunately, it requires nodes

    to constantly listen for transmissions from neighbors, so low-duty-cycle operation is not

    possible. Other algorithms, such as LEACH [16], rely on time division multiple access

    (TDMA) schemes to acheive low duty cycle operation. In this type of algorithm, a master

    node assigns communication time slots to slave nodes, which only turn on their radios

    during these time slots. Because self-powered nodes may have unreliable power sources,

    however, they cannot be guaranteed to wake up as scheduled.

    To deal with these problems, stochastic sensor networks have been proposed [17]. In

    such a network, nodes store power while in an inactive mode, then become active until

    the stored energy is depleted, at which point they return to the inactive state. This

    process is unsynchronized between the sensor nodes, thus forming a stochastic sensor

    network. Also, no routing is used. Instead, data is propagated to its destination using

    much simpler stochastic flooding. Such a network can be made reliable under certainassumptions about the active node density [17], [18]. Furthermore, high-level protocols

    can be layered onto the network to enable rich applications [19]. While simulations have

    verified that these networks should work, no real-world testing has taken place. If this

    2

  • 7/30/2019 Implementation of Stochastic Wsn

    9/46

    theory can be demonstrated in real nodes, it would have great advantages for enabling

    simple, robust networks of self-powered sensors.

    Such testing requires a wireless sensor node with rich power management features that

    no existing architectures offer. Therefore, a new sensor architecture has been designed

    with extremely low power consumption in mind. This sensor uses solar cells to collect

    energy and store it in a large reservoir capacitor. While in the inactive state, the sensor

    can check its stored power levels to determine whether to enter the active mode or to

    continue storing energy.

    3

  • 7/30/2019 Implementation of Stochastic Wsn

    10/46

    CHAPTER 2

    STOCHASTIC SENSOR NETWORK DESIGN

    2.1 Introduction

    A stochastic sensor network makes certain assumptions about the capabilities of the

    nodes. These are reviewed here, along with a network model that determines the condi-

    tions for proper network operation. Finally, details of a planned network implementation

    are presented.

    2.2 Stochastic Sensor Network Properties

    For the development of stochastic sensor networks, three important assumptions are

    made about the operation of the nodes [19]. First, each node has a sleep/wake cycle

    determined by local environmental conditions, which are not known to other nodes. At

    any given time, there is a probability, denoted Pa, that a node will be in its active state.

    Second, because they will not necessarily always have enough energy to maintain the

    contents of volatile memory, the nodes are assumed to be memoryless. Upon entering

    the active state, a node may not have any knowledge of the rest of the network or even of

    the local environment. Finally, nodes do not necessarily know their locations, in either

    absolute or relative terms. This assumption simplifies node design and also allows for

    mobile nodes to participate in the network.

    Taken together, these assumptions severely limit a sensor network architecture. Sto-chastic wireless sensor networks use a simple design capable of providing robust operation

    even with these contraints. In such a network, a collection of unsynchronized nodes

    alternate between active and inactive states. While operating in its active state, a node

    will monitor its transducers for events, perform calculations, and listen for network traffic.

    4

  • 7/30/2019 Implementation of Stochastic Wsn

    11/46

    When any node receives a message not intended for it, that node stores it in a message

    queue. As stored power is about to run out, the active node broadcasts one or all of

    the messages in its queue to its neighboring nodes and enters the inactive state. In

    the inactive state, the node operates in a low-power sleep mode and collects energy,

    periodically waking up to see if it has enough stored power to re-enter the active state.

    The design of a simple stochastic sensor network involves only slightly more planning

    than tossing nodes down randomly over an area. To ensure that the network performs

    somewhat robustly, an average active node density must be maintained. Recent work

    has developed a model which can determine this critical density for a given network [18].

    The same model has been used here for the design of a test network for the proposed

    stochastic sensor platform.

    2.3 Network Model

    The network consists of Q nodes, each with exactly N neighbors. A node is said

    to be a neighbor if it is within the range of the first nodes wireless transceiver. Since

    each node is only awake for a fraction of the total time, the probability PA denotes this

    fraction of time in the mean.

    A discrete-time analysis is used, where one time slots length is the amount of time

    it takes to transmit messages to other nodes. This is assumed to be fixed even for

    varying numbers of messages. Once a node enters the active state, it remains awake

    for K 2 time slots. In the first K 1 time slots of this active period, the node will

    listen for incoming packets. If any are received, they are added to a message queue and

    rebroadcast in the Kth time slot of the active period. In the next time slot, the node

    enters the inactive state. During each subsequent time slot, the node will enter the active

    mode with probability PW or stay asleep with probability 1 PW. Provided the nodes

    wake up independently, this provides a Poisson model for the active-inactive cycle, and

    the distribution of the inactive time is geometric.

    Using this model for a steady-state analyis, it has been shown that a quasi-stable

    state exists where enough nodes are active to hear and rebroadcast messages to keep the

    5

  • 7/30/2019 Implementation of Stochastic Wsn

    12/46

    messages in circulation indefinitely with high probability. Quasi-stability can occur when

    N PA >K

    K 1(2.1)

    This quasi-stability criterion has been shown to hold in the presence or absence of colli-

    sions and with single or multiple packet types circulating [18].

    The wake probability PW is intended to ensure that the active-inactive cycle of each

    node is asynchronous with respect to the other nodes. In the case where PW = 1, the

    active-inactive cycles of all nodes will maintain a fixed phase relationship, and therefore

    the awake probabilities of the nodes will not be independent. When PW < 1, nodes

    operate asynchronously and can be considered independent.

    In actual energy-scavenging nodes, the use of an uncertain inactive period length

    models the uncertainty of the time necessary to store enough energy for an active cycle.

    Mostly, the uncertainty is due to the different amounts of energy available to each node,

    but it is also partly due to component tolerances. Therefore, PW should be chosen such

    that the expected value of the awake time is the average time required to store enough

    energy for a single active cycle.

    Though simulations using this model show encouraging results, some discussion is

    necessary about real-world issues of building such a network. It has been demonstrated

    that even in controlled conditions, the reliability of radio links of similar nodes falls offrapidly with distance [20]. Neighborhood size is limited by the maximum transmit power,

    which is determined by government regulation. Because transmission occurs only during

    a small fraction of the active time, transmit power can often be increased with little effect

    on the sensor duty cycle. However, once the neighborhood size limit has been reached,

    the active node density can only be increased by increasing the duty cycle or the total

    node density.

    2.4 Test Network Design

    Because real sensors will have to operate on fairly low duty cycles, the quasi-stability

    criterion requires many nodes per neighborhood for a successful network. During system

    prototyping, however, a test network is needed to characterize the performance of a group

    6

  • 7/30/2019 Implementation of Stochastic Wsn

    13/46

    of nodes of a quantity small enough that design modifications can still quickly be made

    if needed.

    The planned application is a sound-level detector in a hallway. Nodes with omnidi-

    rectional microphones will be placed around a hallway near flourescent lights. Initially,

    all of the nodes will be placed within transmit range of a constantly powered base station

    which will record all messages received. This should allow simple monitoring of stochastic

    flooding behavior.

    This test network, not yet complete at the time of this writing, will consist of 25 sensor

    nodes. Though a stochastic sensor network will typically consist of many more nodes,

    this small number was chosen to allow for quick modifications to the nodes. With so few

    nodes, however, a high duty cycle must be acheived for quasi-stability to be observed.

    After node operation is verified in this limited network, more nodes can be constructedfor testing denser networks.

    7

  • 7/30/2019 Implementation of Stochastic Wsn

    14/46

    CHAPTER 3

    SENSOR NODE DESIGN CONSIDERATIONS

    3.1 Overview

    The design presented here is a solar-powered stochastic sensor node (SSN). At a high

    level, such a node consists of a power supply, sensor transducers, wireless communication

    hardware, and control logic. Figure 3.1 shows a block diagram of these high-level blocks.

    This chapter presents each of these units in terms of its constituent parts. The parts

    chosen for this particular design are discussed with suggestions for possible replacements.

    3.2 Power Conversion

    Scavenging power from the environment and converting it into usable energy proved

    to be fairly difficult. The voltage must be converted to a standard logic voltage level,

    and the current is often too small to be directly used. Energy must be stored until a

    Figure 3.1 Solar stochastic sensor node block diagram.

    8

  • 7/30/2019 Implementation of Stochastic Wsn

    15/46

    Figure 3.2 Conceptual solar cell IV curve.

    sufficient amount is available to run the sensor node circuit. Then, the power supply

    must convert the stored energy to a usable voltage and current.

    3.2.1 Circuit overview

    Scavenging power via solar panels proved to be a difficult task. For example, an

    inexpensive thin film solar panel produced about 2.5 mW/cm2 in full sun, but only about

    15 W/cm2 indoors under flourescent lighting. Also, its operating voltage dropped from

    3 V outdoors to around 1 V indoors. Thus, any usable power circuitry must efficiently

    store energy with a wide range of input voltages and currents.

    A conceptual IV curve for a solar cell is shown in Figure 3.2. At some point on

    the curve with voltage Vm and current Im, the solar cell produces maximum power Pm.

    Ohms law gives the load resistance necessary to operate at this maximum power point.

    Circuits driven by the solar cell should present this resistance to the solar cell so that

    power is not wasted. A more detailed discussion of solar cell operation can be found in

    Appendix A.

    The initial power circuit design was suggested by a solar battery charge circuit [21].

    Figure 3.3 shows a simplified version. This circuit uses the capacitor to keep the solar

    panel operating at near its maximum power point for high efficiency. A comparator

    9

  • 7/30/2019 Implementation of Stochastic Wsn

    16/46

    Figure 3.3 Solar battery charger circuit.

    constantly monitors the capacitor voltage, comparing it to a reference voltage Vref. When

    the capacitor voltage reaches Vref, the comparator enables a DC-DC boost converter

    that produces the battery charging voltage. Due to hysteresis, the comparator turns off

    the boost converter when the capacitor voltage has dropped to some minimum voltage.

    Additional circuitry not shown in the figure monitors the battery voltage and adjusts the

    DC-DC converter output voltage for proper charging.

    The comparator relies on the battery to provide its supply voltage. Since most com-

    parators do not guarantee proper operation with an inadequate supply voltage, the circuit

    may have strange behavior if the batterys voltage drops too low. For example, if the DC-

    DC converter can operate at a lower voltage than the comparator, it might erroneouslyturn on before the comparator is producing a valid output. Therefore, a battery, at least

    partially charged, is an essential component of the circuit. If the battery were allowed

    to discharge to a voltage below the comparators minimum operating voltage, the circuit

    would not necessarily be able to recharge it.

    The SSN power supply circuit is conceptually similar to this battery charger. In the

    SSN, a comparator enables the DC-DC converter to power the logic when the reservoir

    capacitor reaches a voltage near Vm, the maximum power voltage. Instead of using a

    rechargeable battery, however, the SSN uses a nonrechargeable lithium coin cell, which

    has much higher energy density. Also, instead of using a discrete comparator, the SSN

    monitors the capacitor voltage in software using the microcontrollers analog-to-digital

    converter (ADC) and a programmable threshold. Because the SSN has full control over

    10

  • 7/30/2019 Implementation of Stochastic Wsn

    17/46

    Figure 3.4 Power supply circuit schematic.

    the power supply in software, more exotic power management schemes than simple thresh-

    olding could be implemented without changing the hardware.

    The addition of a nonrechargeable battery does limit the operational lifetime of the

    SSN. Because the circuit was designed for low power consumption, however, a standard

    CS2032 coin cell can easily power the circuit in its inactive mode for several years.

    3.2.2 Circuit implementation

    Figure 3.4 shows the SSN power supply circuit. The boost converter is U3, a Maxim

    MAX1675. It creates a higher voltage than its input by switching current on and off

    through inductor L1, then filtering the resulting voltage spikes. When used as configured

    for the SSN, it boasts efficiency near 90%. The inductor L1 is a Murata LQH4N220,

    chosen primarily for its small size, and the capacitor C2 is a Sprague 593D476X0010C2T,

    chosen for its low series resistance. Diodes D1D3 are Vishay SD103AW Schottky diodes.

    This specific part was selected mainly for its low forward voltage drop.

    Connection of the boost converters feedback (FB) pin to the output voltage pin

    selects its 3.3-V output mode. When in shutdown mode, which the microcontrollerselects through U3s SHDN pin, the DC-DC converters output voltage is slightly below

    the input voltage applied to the inductor connection (LX) pin. Also, the boost converter

    has no overvoltage regulation. When not in shutdown mode, if its input voltage is higher

    than 3.3 V, the output voltage will follow the input voltage.

    11

  • 7/30/2019 Implementation of Stochastic Wsn

    18/46

    Because changing light levels will drop the solar cell voltage, diode D1 protects it from

    capacitor discharge currents. Diodes D2 and D3 select between the DC-DC converter and

    battery B1 to power the sensor node logic. When B1, a 3-V lithium coin cell, has a higher

    voltage than the boost converter output, diode D3 will be forward biased and D2 reverse

    biased, and the battery will power the circuit. Because the DC-DC converters output

    voltage of 3.3 V is higher than the batterys, the opposite occurs when it is enabled.

    Using this scheme, the circuit can run from the battery in inactive mode, then enable

    the boost converter during its active cycle.

    3.2.3 Reservoir capacitor selection

    The reservoir capacitor serves the dual purpose of storing scavenged energy and allow-

    ing the solar panel to run close to its maximum power point. A larger capacitance value

    allows more charge to be stored at a given voltage level. This means that the circuit can

    be run for longer within a voltage range near Vm, increasing power scavenging efficiency.

    A smaller capacitance value, however, allows for a physically smaller and cheaper capac-

    itor. Smaller values also decrease the initial charge time to reach the turn-on threshold

    voltage. The reservoir capacitor chosen must balance the total size of the sensor against

    the power conversion efficiency.

    Double layer capacitors, available in values from 0.1 F to 100 F, were initially tested forthe circuit. They are extremely compact and seemed ideal for the application. However,

    the high equivalent series resistances (ESR) of these parts meant that a higher turn-on

    threshold would be needed to compensate for the voltage drop in the capacitor itself. For

    example, the peak load current in a stochastic sensor node is about 20 mA. A double

    layer capacitor with an ESR of 30 charged to 2 V will output at most 1.4 V for this

    current due to the voltage drop across this equivalent series resistor. Also, ESR increases

    throughout the lifetime of the capacitor, so low ESR is even more important for sensors

    with long operational lifetimes.

    The SSN instead uses aerogel supercapacitors, which are larger than their double

    layer equivalents but have much lower ESR. A Cooper Bussman PA-5R0V474 aerogel

    supercapacitor rated at 5 V and 0.47 F occupies about 4.7 cm3. Its ESR, measured at

    12

  • 7/30/2019 Implementation of Stochastic Wsn

    19/46

    Figure 3.5 Aerogel, left, and double layer, right, 0.47-F supercapacitors.

    1 kHz, is 0.20 . On the other hand, a Panasonic EEC-F5R5U474 electric double layer

    capacitor rated at 5.5 V and 0.47 F occupies only about 2.9 cm3. Its ESR, also measured

    at 1 kHz, is 30 . Figure 3.5 shows the two capacitors side by side.

    3.3 Energy Source

    Several sources of ambient energy could be used for the SSN energy source. Vi-

    brational energy [10], acoustic energy, and thermal energy could all be used, but none

    provides as much energy in the same amount of space as a solar panel. Solar panels

    also are available cheaply from standard electronics distributors. These advantages madethem the logical choice for powering the SSN.

    3.3.1 Solar panel selection

    Several different types of panels were evaluated for relative performance in varying

    lighting conditions. Figure 3.6 shows four of these. Two of the panels, (a) and (b), were

    thin-film amorphous silicon panels produced by Iowa Thin Film Technologies. The first,

    an SP3-37, is rated for operation at 3 V and 22 mA in full sunlight, and it measures1.5 2.5 in. The second, a TX3-25, is rated for operation at 3 V and 25 mA in full

    sunlight, and it measures 1 4.5 in. The third, shown in (c), was a generic silicon solar

    module, probably monocrystalline, purchased from Edumund Scientifics. It measures

    1 1.8 in and is rated for operation at 3 V and 20 mA in full sunlight. Finally, a

    13

  • 7/30/2019 Implementation of Stochastic Wsn

    20/46

    (a) (b) (c) (d)

    Figure 3.6 Four solar panels: (a) 3-V, 22-mA module; (b) 3-V, 25-mA module; (c) 3-V,20-mA module; and (d) CuInSe2 module.

    laboratory sample copper indium diselenide (CuInSe2) panel, measuring 4 4 in, was

    tested. Its expected operating voltage and current were not known.

    In an outdoor setting with bright sunlight, even small solar panels can provide the

    necessary voltage and current to operate a sensor node. In indoor lighting, however,

    power output drops to a fraction of the outdoor value. Both the operating current and

    voltage fall to nearly unusable levels.

    A particularly troublesome problem was that, in indoor lighting, supposedly identicalpanels produced very different output voltages. Five of the SP3-37 and TX3-25 panels and

    three of the generic modules were tested in indoor fluorescent light at three levels. The

    results are shown in Table 3.1. While the short-circuit current remained approximately

    equal for different samples of each type of panel, the open-circuit voltage varied greatly

    between otherwise identical thin-film panels. The manufacturer of the thin-film cells

    indicated that this was due to parasitic effects within the panels. Some cells in the third

    generic solar panel were cracked, causing a lower output voltage than expected. Because

    of these problems, the panels used should each be validated for output voltage with the

    lighting in which they will be used.

    Another useful quantity is the power production per unit area for each panel. The

    values for the SP3-37, TX3-25, and generic modules were averaged over all the panels

    14

  • 7/30/2019 Implementation of Stochastic Wsn

    21/46

    Table 3.1 Low-light performance for identically rated solar panels.SP3-37

    Panel High light Medium light Low lightVOC (V) ISC (A) VOC (V) ISC (A) VOC (V) ISC (A)

    1 2.74 152 2.24 94 1.79 592 1.93 155 1.53 96 1.21 613 1.74 150 1.28 93 0.94 594 1.25 149 0.88 92 0.65 575 1.03 145 0.74 89 0.54 57

    TX3-25

    1 2.31 168 1.81 103 1.40 652 2.06 167 1.63 100 1.31 683 1.90 182 1.62 116 1.32 734 1.60 161 1.16 100 0.78 625 1.03 164 0.64 101 0.45 69

    Generic 3 V, 20 mA

    1 1.23 38 1.09 25 0.88 142 1.20 37 1.01 23 0.88 153 0.90 38 0.74 23 0.59 15

    tested, while only one CuInSe2 panel was tested. As before, power production was

    measured inside the lab under flourescent lighting at three different intensity levels. Table

    3.2 shows the results.

    While the CuInSe2 panel performs the best, this may be because it was a high-

    quality laboratory sample. Unfortunately, no low volume supplier could be found for

    these panels. Because the thin-film solar cells could be obtained for half the price of the

    generic monocrystalline modules while producing much more power indoors, these were

    selected for the SSN. The SP3-37 was chosen because it fit onto one side of the sensor

    node circuit board.

    The problem of low-light voltage drops could be solved by using a panel with ahigher open-circuit voltage in full light. However, since the radio module will not operate

    at a supply voltage higher than 4 V, the power supply must ensure that its output

    voltage cannot go any higher. This might be accomplished with a buck-boost converter

    or integrated boost converter and linear regulator such as the Maxim MAX1672.

    15

  • 7/30/2019 Implementation of Stochastic Wsn

    22/46

    Table 3.2 Solar panel power production per unit area.Panel High light

    Voltage (V) Current (A) Power/area (W/cm2)

    Generic 1.13 37.9 10.7SP3-37 1.74 150.2 10.8TX3-25 1.78 168 10.3CuInSe2 2.83 297 16.2

    Panel Medium lightVoltage (V) Current (A) Power/area (W/cm2)

    Generic 0.95 23.7 5.6SP3-37 1.34 95.5 5.1TX3-25 1.37 103.9 4.9CuInSe2 2.55 180.9 8.9

    Panel Low lightVoltage (V) Current (A) Power/area (W/cm2)

    Generic 0.78 14.8 2.9SP3-37 1.03 58.6 2.5TX3-25 1.06 66.5 2.4CuInSe2 2.26 118.9 5.2

    3.3.2 Alternate power sources

    The SSN power supply is not limited to solar panels. Power sources delivering between1 and 4 V at low currents can be connected in place of the solar panel. Depending on

    the power source, the turn-on threshold voltage and reservoir capacitor size may need to

    be adjusted. A battery could also be used if the large reservoir capacitor were removed.

    3.4 Transducers

    The microcontroller chosen for the SSN has a built-in ADC and several standard

    digital interfaces. Using these, it could conceivably support many different types oftransducers. Because the prototype was intended to be used for monitoring activity in

    a building, a sound-level transducer was chosen for the test sensor. The SSN is solar

    powered, so it can also use the solar panel to measure the relative light level.

    16

  • 7/30/2019 Implementation of Stochastic Wsn

    23/46

    Figure 3.7 Sound-level detector.

    3.4.1 Sound-level transducer

    The SSN includes a simple sound-level sensor for testing. This circuit, shown in Figure

    3.7, uses an electret microphone and a high-gain operational amplifier. The microcon-

    troller samples the amplified output with its integrated ADC. The amplifier chosen, a

    Texas Instruments TLV2460, uses only 500 A of current when enabled.

    Resistors R9 and R4 configure the amplifier for a gain of 1000. Because the gain-

    bandwidth product of the TLV2460 is specified at 5.2 MHz for a supply voltage of 3 V,

    this places the 3-dB frequency of the amplifier at 5.2 kHz. Frequencies above this will

    be significantly attenuated. Because this depends on the low-pass characteristic of the

    amplifier which may vary from chip to chip, it is not guaranteed to be a reliable antialias-

    ing filter. If it is desired to perform digital signal processing on a sampled waveform, an

    antialiasing filter should be explicitly designed for this purpose. This simple high-gain

    amplifier design is intended to be used primarily for detecting sound level.

    3.4.2 Light level detection

    The solar panel output can be used to roughly determine the light level. Since the

    short circuit current is roughly proportional to the brightness of the incident light, the

    17

  • 7/30/2019 Implementation of Stochastic Wsn

    24/46

    microcontroller can monitor the rate of change of the reservoir capacitor voltage to de-

    termine the relative amount of light present. The solar panel output current depends on

    a variety of factors such as the spectral composition of the light, the panel voltage, and

    the ambient temperature. Therefore, this method will only be accurate for measuring

    relative light levels when all sensors are in similar light at the same temperature.

    3.4.3 Other sensors

    The SSN provides support for additional sensors via an expansion header. The use

    of this connector is discussed in detail in Chapter 4. Typically sensors that might be

    connected this way include temperature, humidity, acceleration, and many other types.

    3.5 Wireless Communication

    Recent developments in low-power radio communications have produced several com-

    peting wireless communications standards. For example, 802.11a/b/g wireless networks

    have become fairly common. They provide high data rates of up to 54 Mb/s and ranges

    up to 100 m. Unfortunately, chipsets supporting this standard also have fairly high power

    requirements. Other alternatives, such as Bluetooth and ZigBee, use much less power

    than 802.11a/b/g but still require more than the SSN is expected to provide. For ex-

    ample, one ZigBee-ready chipset, the EM2420, uses about 30 mW when transmitting or

    receiving [22]. The SSN required a radio designed for much lower power consumption

    than any of these could offer.

    3.5.1 Radio module

    Each sensor node includes a radio module for communicating with other nodes. The

    radio is typically the largest power user in the system, so power trade-offs must be con-

    sidered when choosing a transceiver. For example, the radio module will have some static

    power consumption, which is independent of the bandwidth. An increase in bandwidth

    will decrease the time to transmit a message. If the radio has a low-power sleep mode,

    shorter message transmit times allow the radio to spend more time asleep, reducing static

    18

  • 7/30/2019 Implementation of Stochastic Wsn

    25/46

    power requirements. In the SSN, the microcontroller on the receiver must constantly run

    at a higher speed than the radio bit period to perform baseband data decoding. Because

    the receiver will spend most of its time performing this task, reducing the power used in

    this state may be more beneficial than saving transmit power. Also, an increased bitrate

    lowers the radio range for a given transmit power.

    The radio used in the SSN is an RF Monolithics TR1004 914-MHz transceiver, which

    is pin compatible with the 916.5-MHz TR1000 module. This was chosen primarily for its

    low power consumption, which is typically about 10 mW in receive mode and 40 mW in

    transmit mode. Unfortunately, it provides only a bit-level interface without any timing

    information, so clock recovery must be performed by a microcontroller instead. Other

    radio modules which provide higher-level interfaces, such as the Chipcon CC1000, typi-

    cally use more power than the microcontroller and TR1004 combined. This transceiveralso has a low power sleep mode, consuming only about 2 W of power. Because it

    can enter and exit this mode in a fraction of a bit period, power can possibly be saved

    by putting the chip to sleep between received bits during start symbol detection, but

    experimentation has shown that this tends to increase the error rate.

    The SSN operates the transceiver at 19 200 Bd in on-off keying (OOK) mode. Though

    the transceiver can operate at differnent bitrates and in amplitude shift keying (ASK)

    mode, passive components in the circuit were selected specificially for Manchester-encoded

    data at 19 200 Bd. Operation at other baud rates or in the ASK mode is not possible

    without modifying the circuit. The radio circuit, adapted from the TR1004 data sheet

    [11], is shown in Figure 3.8.

    Though relatively slow, 19 200 Bd was chosen primarily to make it simple for the

    microcontroller to perform start-symbol detection. At the start of each data packet, the

    transmitting node sends a training preamble of alternating zeros and ones to calibrate

    the DC blocking capacitor, followed by a 20-bit start symbol. While it is waiting for this

    start symbol, the receiving node must constantly sample the incoming data so that itcan synchronize its serial port with the transmitter. A slower bitrate allows the receiver

    to operate at a lower clock speed, saving power.

    Transmit power can be decreased by replacing RTXM with a larger resistance. More

    information about specific values is available in the TR1004 data sheet.

    19

  • 7/30/2019 Implementation of Stochastic Wsn

    26/46

    Figure 3.8 Radio transceiver circuit.

    3.5.2 Antenna considerations

    Antenna selection is fairly important for radio performance. A wire cut to a length of

    one quarter wavelength, known as a whip, placed perpendicularly over a ground plane,

    provides acceptable performance at a low cost. Such antennas are omnidirectional in the

    plane perpendicular to the antenna wire. Attenuation will occur, however, out of this

    plane, including a null directly above the antenna. This makes quarter-wave antennas

    appropriate only when all of the sensors are close to coplanar. Antenna polarization will

    also affect transceiver performance. If nodes with whip antennas are oriented such that

    the antennas are perpendicular to each other, the polarizations will not match and the

    received signal will be heavily attenuated.

    At 914 MHz, one quarter wavelength is approximately 8.2 cm. If a smaller antenna is

    required, compact helical coil and chip antennas are available, but these generally have

    lower gain than the quarter-wave antennas and can be more sensitive to ground-plane

    design. Antennas can also be etched directly onto the edge of a circuit board, but these

    require careful design and testing with a network analyzer [23].

    20

  • 7/30/2019 Implementation of Stochastic Wsn

    27/46

    A small helical antenna, the Linx Technologies JJB-RA, was selected for the SSN

    because of its small size. If desired, it could easily be replaced with a quarter-wave whip.

    3.6 Control Logic

    3.6.1 Microcontroller

    A microcontroller controls the operation of the entire sensor node. Among its many

    tasks, it must be programmed to wake the rest of the sensors circuits when it decides

    to enter the active mode. It must take readings from all available transducers and

    decide whether it is necessary to send a message with these readings in it. Also, the

    microcontroller needs to monitor incoming messages and handle them as appropriate.

    A PIC18LF4320 microcontroller was chosen to control the SSN. Though it only has

    4096 words of program ROM and 512 bytes of RAM, the simplicity of the stochastic

    sensor node design means that this is far more than sufficient. One of its key features

    is an internal 8-MHz oscillator with a programmable divider. Besides reducing external

    parts requirements, this allows the microcontroller to scale its clock frequency to match

    the current task, lowering power usage. Transducers can be connected directly to the

    internal 10-bit ADC. A standard PIC18F4320 does not have guaranteed operation when

    the supply voltage is less than 4.2 V, so a slightly more expensive PIC18LF4320 was

    used.

    The PIC18LF4320 could easily be replaced with other microcontrollers if they have

    an internal ADC and comparable speed with a 3 V power supply.

    3.7 Timekeeping

    The microcontroller needs a way to determine relative time so it can label its messages

    with time information. This task is given to the real-time clock module.The SSN uses an Epson RTC-4574 real-time clock (RTC) module with a built-in

    32.768-kHz crystal oscillator. Besides keeping time, the RTC also has a programmable

    interval interrupt that can be used to wake the microcontroller instead of using its less

    flexible watchdog timer. Also, the RTC can be programmed to output square waves at a

    21

  • 7/30/2019 Implementation of Stochastic Wsn

    28/46

    given frequency, and this can be used to calibrate the microcontrollers internal oscillator.

    Finally, the quiescent current used by this RTC is typically less than 1 A.

    This part could easily be replaced with another low-power RTC. Also, a real-time

    clock could be implemented in software in the microcontroller, deriving its frequency

    either from an external crystal oscillator or the less accurate internal oscillator. The

    power consumption for a software RTC would be roughly equivalent to the hardware

    version. The software-based approach was not used here so the SSN software could be

    kept simpler.

    22

  • 7/30/2019 Implementation of Stochastic Wsn

    29/46

    CHAPTER 4

    SENSOR NODE OPERATION

    4.1 Introduction

    While the previous chapter focused on the design issues considered while building

    the SSN, this chapter gives a detailed look at the nodes operation. First, the hardware

    platform as a whole is discussed. This is followed by an explanation of the SSN software.

    Finally, a circuit for debugging the nodes is described.

    4.2 Hardware

    4.2.1 Hardware overview

    Figure 4.1 shows the full schematic for the SSN. The microcontroller, U1, controls

    the rest of the circuit. The microcontrollers internal oscillator, which operates at several

    frequencies from 31.25 kHz to 8 MHz, provides the clock signal.

    4.2.2 Expansion connector

    The nodes provide a 25-pin expansion connector for connecting additional sensor

    boards. Connected to unused microcontroller pins, it provides up to 13 digital I/O chan-

    nels, 3 of which can also be used as analog input channels. Two of the pins can directly

    cause interrupts on changes. Both interintegrated circuit (I2

    C) and serial peripheral inter-face (SPI) communications channels are available, though not simulateously. Pulse width

    modulated (PWM) inputs and outputs can be handled with two capture/compare/PWM

    (CCP) pins.

    23

  • 7/30/2019 Implementation of Stochastic Wsn

    30/46

    Figure4

    .1

    Stochasticsensornodeschematic.

    24

  • 7/30/2019 Implementation of Stochastic Wsn

    31/46

    Figure 4.2 Expansion header pinout.

    Figure 4.2 shows the pinout of the expansion connector. The pin names correspond

    to those in the PIC18LF4320 data sheet [24].

    The PIC, as well as most other microcontrollers, has I/O pins designed for high

    current drive. A single pin can in most cases source or sink 25 mA. This means that

    the microcontroller can directly power sensors and other circuitry with a digital output

    set high, then turn them off by driving the pin low. Using this technique, even circuits

    without sleep modes can be operated at low duty cycles. However, some chips have

    long startup times that make this technique less useful, since the microcontroller must

    power the chip for milliseconds before measurements can be taken. Such chips should be

    avoided unless they provide a low-power sleep mode with a much faster startup time.

    The DF9-25P-1V connector used provides only 7 mm of clearance between the two cir-cuit boards. To avoid problems, all parts should be mounted on the top of the expansion

    board.

    25

  • 7/30/2019 Implementation of Stochastic Wsn

    32/46

    Figure 4.3 In-circuit serial programming header pinout.

    4.2.3 Reprogramming the nodes

    A 10-pin programming header, J1 in the schematic, is provided for in-circuit pro-

    gramming of the PIC microcontroller. When the sensor is operational, shunts are placed

    across the pins to connect the PIC to the rest of the circuit. For programming, the shunts

    are removed and a programming cable is attached. Figure 4.3 shows the pinout for this

    connector, chosen to correspond to the in-circuit programming cable of the EPIC Plus

    PIC programmer made by microEngineering Labs. With an appropriate adapter cable,

    it should be compatible with other programmers which support in-circuit programming.

    4.2.4 Prototype circuit boards

    Several SSN prototypes have been built. Figure 4.4 shows the front and back of an

    SSN. Each is 2.5 2.5 in, though future iterations could be made much smaller with

    some optimization. An SP3-37 thin-film solar panel can be affixed to the back side of

    the board. Each costs about $75 when purchased in quantities of 25.

    4.3 Software

    The initial sensor node software has been written entirely in assembly language. This

    design decision was made due to the authors familiarity with PIC assembly as well as

    the need for low overhead in many code sections. The use of tightly optimized assembly

    language in critical loops allows for the use of low operating frequencies, saving power.

    26

  • 7/30/2019 Implementation of Stochastic Wsn

    33/46

    (a) (b)

    Figure 4.4 Stochastic sensor node prototype: (a) front side, and (b) rear side.

    The code is also extremely compacta recent build used less than 400 words of the

    microcontrollers program memory. Several vendors sell C compilers for the Microchip

    PIC platform, so it would be entirely possible to rewrite noncritical sections of the code

    in C for future maintainability.

    The program flow is straightforward. Figure 4.5 shows a flowchart of its operation.

    To initialize, the microcontroller turns off all unneccessary peripherals to save power. It

    also puts all unused I/O pins into output mode for additional power savings. After ini-

    tialization, the sensor puts itself into the inactive mode to charge the reservoir capacitor.This is accomplished by turning off the internal oscillator and programming the real-time

    clock to periodically wake the processor. When awoken, the microcontroller checks the

    capacitor voltage to determine whether it has enough power to enter the active mode.

    If it does, it can either wake up into active mode unconditionally or based on the wake

    probability PW. Probabilistic wake-up is useful for ensuring independence between nodes

    when they are powered from a constant power source such as batteries.

    Once in the active mode, it enables the microphone and listens for acoustic events.

    If one is found, it creates a new message packet and stores it in the message buffer. It

    then waits in receive mode for incoming packets for a set time period. Packets addressed

    to it are handled, and all other packets are queued for rebroadcast. Finally, it sends all

    packets in the message queue and returns to the inactive mode to recharge.

    27

  • 7/30/2019 Implementation of Stochastic Wsn

    34/46

    Figure 4.5 Software operation flowchart.

    28

  • 7/30/2019 Implementation of Stochastic Wsn

    35/46

    The microcontroller uses its hardware serial port to send and receive data through

    the radio transceiver. Each outgoing byte is split into two 4-bit nybbles which are then

    Manchester encoded and sent via the serial port. The encoding provides DC balance,

    which is required for proper transceiver operation. Because the serial port hardware adds

    a start and stop bit to every byte sent, this means that every 8 bits of information are

    encoded as 20 bits for transmission.

    4.4 Design Evaluation

    Preliminary testing with the SSN prototype has shown encouraging results. The

    average power consumption of a node was measured as it performed several common

    tasks. The experimental setup consisted of simply a multimeter connected in series with

    the SSN. A variable power supply, adjusted to 3.3 V, was connected directly to the VCC

    rail. The tests were performed on a node without a real-time clock installed, but its

    negligible power consumption should not have much of an effect.

    A program was written to cycle between several common circuit tasks when a button

    was pressed. The first, sleep mode, put the microcontroller and radio transceiver into

    their low-power sleep modes. This mode consumed only 0.8 A of current, for a total

    power consumption of 2.6 W. Second, the current consumption of analog-to-digital

    conversions was tested. The microcontroller enabled its ADC and constantly sampled

    from it while running at 31.25 kHz. This required 120 A of current, for a total power

    consumption of 400 W. Next, receive mode was tested. In this mode, the microcontroller

    put the radio transceiver into its receive mode, then sets its own oscillator to 1 MHz

    and performed a start-symbol detection loop. This mode consumed 3.3 mA of current,

    for a total power consumption of 10.9 mW. Finally, transmission mode was tested. To

    transmit, the microcontroller placed the radio transceiver into OOK transmit mode, then

    enabled its onboard serial port and transmitted DC-balanced data. While transmitting,

    the microcontroller operated at a clock speed of 4 MHz. This was tested for two transmit

    power levels. The first, using an 8.2-k resistor for RTXM, required 4.2 mA of current,

    for a total power consumption of 13.9 mW. The second, using a 4.7-k resistor for RTXM,

    required 5.9 mA of current, for a total power consumption of 19.5 mW.

    29

  • 7/30/2019 Implementation of Stochastic Wsn

    36/46

    These numbers align closely with expectations. The sleep mode currents are negligi-

    ble, and will allow operation from a lithium coin cell battery for years. Analog-to-digital

    conversion requires much more current, but still not very much. Since only about 20 s

    are required to capture a sample, this power consumption is not a large problem. Trans-

    mit and receive mode currents are closely aligned with the numbers in the TR1004 data

    sheet [11]. Though the measured transmit current is about half the typical value in the

    data sheet, this is easily explained. Because DC-balanced data are being transmitted,

    the radio transmits nothing exactly half of the time, leaving an average current of half

    the maximum.

    These numbers give some idea of the expected duty cycle of the nodes. Transmitting a

    20-byte packet of information (Manchester encoded with start and stop bits at 19 200 Bd)

    would require 20.8 ms. If a node listens for nine times that length of time, or 188 ms,the total energy used during the active period is

    (20.8 ms)(19.5 mW) + (188 ms)(10.9 mW) = 2460 J (4.1)

    If the sensor is to have a duty cycle of 5%, for a total period of 4.18 s, the solar panel

    must provide 589 W of power. The actual number will be slightly higher since the

    microcontroller spends a small amount of energy checking sensors at the beginning of the

    active period and handling received packets.Other informal testing has been performed with prototype sensor nodes built on

    solderless breadboards. A small network of three prototype nodes was developed, with

    one transmitter, one relay, and one receiver node. The transmitter was placed near

    a light and programmed to wake up from its inactive mode at a threshold capacitor

    voltage in order to send a single packet. The packet contained a packet count which was

    incremented every time the transmitter node entered the active mode. The relay and

    receiver were both powered from laboratory power supplies and remained in the active

    mode. When it received a message, the relay would resend the message to the receiver

    node. This testing verified that this design had the functionality to be a stochastic sensor

    node. Testing on the actual SSN hardware was not complete at the time of this writing.

    30

  • 7/30/2019 Implementation of Stochastic Wsn

    37/46

    Figure 4.6 Schematic of debugging circuit.

    4.5 Base Station and Debugging Circuit

    In the interests of power consumption and size, limited debugging capabilities are

    built onto the SSN circuit board. Jumpers JP6 and JP7, when not shunted, are used to

    test the battery and boost-converter output currents, respectively. The radio must be

    tested by programming the microcontroller with a test program and monitoring received

    packets on a base station. A reset switch can be added via the reprogramming header

    J1 by connecting pins 2 and 10 through a normally open momentary switch.

    For more thorough testing, or for conversion of a regular node into a base station,

    a debugging circuit can be connected to the expansion header. This circuit provides

    a standard RS-232 serial interface for connection to a PC. It also has several switches

    and LEDs useful for modifying and monitoring the processor state. Figure 4.6 shows aschematic of the debugging circuit.

    A microcontroller, U1, is connected to an external computer through the RS-232

    serial port, CONN2, and to the SSNs microcontroller through a standard I2C bus. The

    program on the microcontroller simply translates data between the two busses so the

    31

  • 7/30/2019 Implementation of Stochastic Wsn

    38/46

    SSN can relay information to a PC. Switch S1 resets the debug microcontroller, while S2

    and S3 are connected to input ports on the SSN microcontroller. These particular input

    lines can be configured to generate interrupts. Diodes D1D8 are LEDs which can be

    programmed to display status information.

    The debug board provides its own independent power source from a 9-V wall DC

    power supply. A standard 7805 voltage regulator, U5, generates the 5 V needed for the

    logic, while U4, a 3.3-V voltage regulator, generates the voltage necessary for interfacing

    with the SSN. An I2C level shifter uses two NMOS transistors, Q1 and Q2, to convert the

    bidirectional logic lines between the two different logic voltages. These specific NMOS

    transistors were chosen for their low threshold voltages. Jumper J1, when connected, al-

    lows the SSN to be powered from the debug board. When this jumper is left unconnected,

    the debug board can be used to verify energy scavenging operation.

    32

  • 7/30/2019 Implementation of Stochastic Wsn

    39/46

    CHAPTER 5

    CONCLUSIONS

    5.1 Conclusion

    In the absence of plentiful or reliable power, stochastic wireless sensor networks offer a

    viable alternative to routed networks. The ability to support self-powered nodes provides

    great advantages where nodes cannot easily be serviced. Stochastic sensor nodes can be

    built relatively cheaply using off-the-shelf parts. Existing electronics are power-efficient

    enough to support the use of low-quality commodity solar cells. The software to control

    the sensor nodes is small and simple enough to fit into an inexpensive microcontroller

    with much room to spare.

    Many applications could use this technology. Solar-powered sensors could be deployed

    in outdoor environments where it would be difficult or impossible to change batteries

    but long-term operation is required. Using stochastic sensor network design techniqueswould allow robust network operation even in situations where very little ambient energy

    is available for scavenging.

    5.2 Future Work

    While the stochastic sensor node works, much more can be done. The current design

    is large and expensive. Software functionality is still very basic. The solar panels are far

    too large and inefficient.Future design iterations could easily shrink the sensor to half its current size or less.

    Because the nodes were assembled by hand, many parts were chosen to be easily soldered,

    making them take up much more space than otherwise necessary. The microcontroller was

    chosen to make development easier. A smaller, less capable chip, however, could easily be

    33

  • 7/30/2019 Implementation of Stochastic Wsn

    40/46

    substituted. The circuit board layout is suboptimal, and great size improvement could

    be had simply by optimizing this better.

    The software needs much improvement. As of the time of this writing, it barely

    provides basic packet forwarding abilities. While the node is unsuited to relatively heavy-

    weight sensor operating systems such as TinyOS [8], a richer development environment

    could facilitate application design.

    The solar panels selected, while adequate for the large prototype, should be replaced

    with smaller monocrystalline silicon panels. These provide higher efficiencies than the

    thin film panels chosen for the SSN. However, they are difficult to obtain cut to size

    in small quantities. Alternatively, other power sources, such as vibrational or thermal

    energy, may be utilized.

    Beyond these suggestions, the sensor could be more radically redesigned as new hard-ware becomes available. Low-power processors are being developed specifically for use

    in sensor networks, significantly reducing the energy required to execute an instruction

    [25]. As new radio technologies become commercially available, these can also be incor-

    porated into the design. Alternatively, a low power, low overhead radio could be designed

    specifically for this type of node.

    Another interesting topic is the issue of network sensing coverage and reliability.

    Because nodes are only on some percentage of the time, it may be possible to bound

    the probability of sensing an event within some neighborhood based on the awake sensor

    density. Work focused on insuring sensing coverage in networks of unreliable sensor

    nodes [26] seems directly applicable to the stochastic network. Network reliability could

    possibly be characterized using such a method.

    34

  • 7/30/2019 Implementation of Stochastic Wsn

    41/46

    APPENDIX A

    SOLAR CELL DISCUSSION

    Understanding how solar cells work is important for designing a sensor node which

    relies on them for power. This appendix summarizes solar-cell operation and applies it

    to the SSN power-supply design.

    Solar cells utilize the phenomenon of optical carrier generation at a semiconduc-

    tor p-n junction [27]. Photons with energy greater than the band gap energy generate

    electron-hole pairs. Some of these diffuse across the junction and create a net current

    Iph proportional to the junction area, electron and hole diffusion lengths, and the optical

    generation rate. This current flows from the p-side to the n-side, opposite of the normal

    diode current ID which is also present. From the diode equation

    ID = IS

    eqVDkT 1

    (A.1)

    where IS is the saturation current, q is the charge of an electron, k is the Boltzmann

    constant, T is the junction temperature, and VD is the junction voltage. Thus, the total

    current through the solar panel is

    I = ID Iph (A.2)

    In the SSN, a reservoir capacitor with capacitance C is connected across the output

    of the solar cell. Including this capacitor and the series resistance of the leads, thisproduces the equivalent circuit of Figure A.1. Ignoring the capacitor, when the outputs

    are connected together, the short-circuit current is approximately Iph. A little algebra

    35

  • 7/30/2019 Implementation of Stochastic Wsn

    42/46

    Figure A.1 Solar cell equivalent circuit.

    shows that the open-circuit voltage VOC is

    VOC =kT

    qIph

    IS + 1

    (A.3)

    If the voltage across the capacitor is VC and the current through it is I, the charging

    characteristic of the circuit can be determined. While it is difficult to solve for VC, some

    insight can still be obtained. Summing the currents produces

    ID = Iph I (A.4)

    Substituting from Equation (A.1) produces

    IS

    eqVDkT 1

    = Iph I (A.5)

    Also, using the equation for capacitor current,

    I = CdVC

    dt(A.6)

    Combining these two equations and rearranging produces

    dVC

    dt=

    1

    C

    Iph IS

    eqVDkT 1

    (A.7)

    36

  • 7/30/2019 Implementation of Stochastic Wsn

    43/46

    Noting that

    VC = VD IRS (A.8)

    Substituting for I from Equation (A.5) and rearranging gives

    VC = VD RS

    IS

    eqVDkT 1

    Iph

    (A.9)

    Differentiating both sides with respect to time,

    dVC

    dt=

    dVD

    dt

    q

    kTRSISe

    qVDkT

    dVC

    dt(A.10)

    Simplifying this givesdVC

    dt=

    dVD

    dt1

    q

    kTRSISe

    qVDkT (A.11)

    Finally, combining with Equation (A.7) and rearranging gives

    dVD

    dt=

    Iph IS

    eqVDkT 1

    C

    1 q

    kTRSISe

    qVDkT

    (A.12)

    Finally, when ID Iph, this can be approximated as

    dVDdt

    = IphC

    (A.13)

    Since VD VC when RS is small, this shows a linear charging characteristic for the

    capacitor at voltages below the diode turnon voltage. As the diode turns on, the voltage

    on the capacitor suddenly begins increasing much more slowly since much of the photo

    current is being shunted through the diode.

    This is useful because parasitic effects in the solar panel, not modeled here, may

    decrease the open-circuit voltage of the panel in low light. Because of the extremely

    linear charging characteristic which abruptly flattens as the diode turns on, the sensor can

    detect when it has approached the open-circuit voltage and adjust its turn-on threshold

    accordingly. This allows the sensor to operate closer to the maximum power point of the

    solar cell in any light condition.

    37

  • 7/30/2019 Implementation of Stochastic Wsn

    44/46

    REFERENCES

    [1] I. F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci, A survey on sensornetworks, IEEE Communications Magazine, vol. 40, pp. 102114, Aug. 2002.

    [2] A. Mainwaring, J. Polastre, R. Szewczyk, D. Culler, and J. Anderson, Wirelesssensor networks for habitat monitoring, in 2002 ACM International Workshop onWireless Sensor Networks and Applications, 2002, pp. 8897.

    [3] A. Bhargava and M. Zoltowski, Sensors and wireless communication for medicalcare, in 14th International Workshop on Database and Expert Systems Applications,2003, pp. 956960.

    [4] J. L. Hill and D. E. Culler, Mica: A wireless platform for deeply embedded net-works, IEEE Micro, vol. 22, pp. 1224, Nov-Dec 2002.

    [5] J. M. Rabaey, M. J. Ammer, J. L. da Silva, Jr., D. Patel, and S. Roundy, PicoRadiosupports ad hoc ultra-low power wireless networking, IEEE Computer, vol. 33, pp.4248, Jul 2000.

    [6] Microsystems Technology Laboratories, Massachusetts Institute of Technology,Amps research, 2004, http://www-mtl.mit.edu/research/icsystems/uamps/research/overview.shtml.

    [7] E. Welsh, W. Fish, and J. P. Frantz, GNOMES: A testbed for low power heteroge-neous wireless sensor networks, in Proceedings of the 2003 International Symposiumon Circuits and Systems, vol. 4, 2003, pp. 836839.

    [8] The TinyOS Project, TinyOS Community Forum, 2004, http://www.tinyos.net.

    [9] C. W. Warwick, Trends and limits in the talk times of personal communicators,Proceedings of the IEEE, vol. 83, pp. 681686, April 1995.

    [10] S. Roundy, P. K. Wright, and K. S. J. Pister, Micro-electrostatic vibration-to-electricity converters, in Proceedings of ASME International Mechanical EngineeringCongress and Exposition (IMECE), 2002, pp. 18.

    [11] RF Monolithics Incorporated, TR1000 data sheet, 2003, http://www.rfm.com/products/data/tr1000.pdf.

    [12] A. S. Porret, T. Melly, D. Python, C. C. Enz, and E. A. Vittoz, An ultralow-powerUHF transceiver integrated in a standard digital CMOS process: Architecture andreceiver, IEEE Journal of Solid-State Circuits, vol. 36, pp. 452466, Mar 2001.

    38

  • 7/30/2019 Implementation of Stochastic Wsn

    45/46

  • 7/30/2019 Implementation of Stochastic Wsn

    46/46

    [26] S. Shakkottai, R. Srikant, and N. Shroff, Unreliable sensor grids: Coverage, con-nectivity and diameter, in Twenty-Second Annual Joint Conference of the IEEEComputer and Communications Societies, vol. 2, 2003, pp. 10731083.

    [27] P. Bhattacharya, Semiconductor Optoelectonic Devices. Upper Saddle River, N.J.:

    Prentice-Hall, 1997, pp. 430-435.