Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

1 Introduction

A WSN commonly has a large number of randomly deployed SNs that send their sensed data to a BS. As each SN uses battery as the energy source, energy consumption is of prime concern. As the energy consumed is a function of square of distance, a transmitted signal can be received, and information is transmitted from a SN to BS in a multi-hop fashion. This is illustrated in Fig. 6.1. As the SNs are deployed randomly, the first thing that SNs do is to send beacon signals to determine neighboring SNs, if any. As SNs operate in a distributed manner, it is rather difficult to control when signals are sent by a SN, and beacons could possibly collide with each other. As shown in Fig. 6.2a, if beacon signals from SNs x and y overlap with each other, a collision occurs and no response is sent by none of the devices. If only SN x sends beacon signal, then both SNs y and z can hear and respond back independently to SN x. In this way, SN x determines the presence of SNs y and z in the neighborhood, and the corresponding RSSI value indicates distance between y and z from x. Once SN x successfully receives acknowledgment from y and z, it can piggyback this information in future beacon signals to determine other SNs in the close by area.

Fig. 6.1
figure 1

Multi-hop communication from a SN to the BS

Fig. 6.2
figure 2

Use of beacon signals to detect neighboring SNs

It may be noted that a large number of SNs are deployed which could lead to increased message transmission in the network. So, from this point of view, just minimum but adequate number of SNs ought to be used. It is interesting to note that the SN in the wait mode consumes almost the same amount of energy as the transmitting mode and the wait period should be minimized. Any collision in beacon signals and resultant acknowledge signals result in waste of time and energy and should be avoided as much as possible. Therefore, simple mechanism ought to be used for message transfer between SNs that could avoid collision in a distributed manner. Minimum energy is consumed in a SN only during the sleep mode, and efforts should be made to lengthen the sleep time of each SN. But, when SN sends data to another SN on way to BS, both the SNs need to be awake. Otherwise, the message will be lost and cannot be propagated to BS. So, SNs remain in sleep state most of the time (98%) and are awake for a very short duration (2%) to conserve energy. So, there is always frequent transition from awake to sleep mode and vice versa and that causes increased power consumption.

Conventional 7-layer ISO architecture cannot be used directly and simplicity of ALU and accompanying small storage encourage the use of simple algorithms that require small amount of storage. As SNs are autonomous, any centralized scheme cannot work for them. Any overhead in the medium access protocol needs to be minimized and simple design for the encoder/decoder has to be preferred due to silicon space requirements and run-time complexity. Even simple error- correcting code is appropriate to keep the complexity to lowest. In addition, to keep the cost of the SNs little, the crystal that is used may be a cheaper one and may not be able to support accurate synchronization. Even TDMA-based scheduling for SN may not be feasible until clustering has been done, and CH for each cluster has been identified.

The SN responding to a query may depend on the event that could occur anywhere in the network and only SNs in the affected area would respond to such situation. Thus, the data are event based and both spatial and temporal correlation to the event ought to be explored for both relevance and data compression. So, the bottom line is that existing MAC protocols are not appropriate for direct use in a WSN. Although SNs are static, changes in WSN topology could occur due to many factors. One of the events is an object or person passing by or having dust storm or rain and fog and affecting a direct transmission of EM waves. Some adjacent SNs may run out of energy and could not receive/forward the data. Loss of local synchronization due to accumulated clock drifts is also attributed to affect the level of received signal. Figure 6.3 shows the impact of sleep cycle in discovering close by SNs. When SNs x and z are awake at the same time, they can send beacon signals to each other and recognize the presence of each other. Otherwise, if either is in sleep mode, the beacon signal from the other SN will go unnoticed. It is also important to distinguish between neighbor discovery in the initial phase (all SNs active ) and the ongoing topology maintenance at the operation phase (SNs active only 2% of time, rest remain sleeping) and is shown in Fig. 6.4.

Fig. 6.3
figure 3

Impact of sleep cycles on neighbor SNs discovery process

Fig. 6.4
figure 4

Differentiating between neighbor discovery and topology maintenance

2 Neighbor Determination and Hop Distance

As discussed earlier, SN transfers data to BS in a WSN following a multi-hop path. Therefore, destination in a WSN is always the BS while the source SN could change based on the location of an event. Therefore, location of a SN is important in determining the path to follow to the BS. In a WSN, source SN x needs to decide an intended intermediate SN y within its transmission range. Using the unit disk graph model [1], SN x needs to find how many sensors are within communication range and which SN is farthest away from the SN toward the BS. A first-order radio energy consumption model of SN has been proposed by Dongjin et al. [2] that shows energy for transmitting one bit of data over distance u between them is given by:

$$ E_{tx} \left( {xy} \right) = E_{\text{elec}} + E_{\text{amp}} u^{k} , $$
(6.1)

where E elec is the energy consumed by the transmitter, E amp is the transmitting amplifier, and k (k > 2) is the propagation loss exponent. The energy consumed by the receiver for each bit of the data is E rx . The energy consumed to relay one bit data over distance u is given by:

$$ E_{\text{relay}} = E_{\text{elec}} + E_{\text{amp}} u^{k} + E_{rx} = E + E_{\text{amp}} u^{k} , $$
(6.2)

where \( E = E_{\text{elec}} + E_{rx} . \)The consumed energy E can be minimized [3] if the number of h hops from SN u 0 and BS can be defined as:

$$ h = \left\lfloor {\frac{u}{{u_{0} }}} \right\rfloor \quad {\text{or}}\quad \left\lceil {\frac{u}{{u_{0} }}} \right\rceil , $$
(6.3)

where

$$ u_{0} = \sqrt[k]{{\frac{E}{{E_{\text{amp}} (k - 2^{1 - k} )}}}}. $$
(6.4)

3 MAC Protocols

Three different types of MAC protocols have been introduced in the literature as contention (Random/CSMA)-based, reservation-based, and hybrid (CSMA/TDMA) protocols. As “Idle Listening” consumes significant energy, the solution that has been suggested in S-MAC protocol [4] is to Periodic listen and sleep as given in Fig. 6.5. The SN listens for about 120 ms and then sleeps till 2 s. Radio is turned off during sleeping time, thereby reducing duty cycle to 10%. Each SN goes into periodic sleep mode during which it switches the radio off and sets a timer to awake later (Fig. 6.5). When the timer expires, it wakes up and listens to see whether any other SN wants to talk to it. The duration of the sleep and listen cycles is application dependent and they are set the same for all SNs. For example, if temperature is to be measured, then once every 1 h or so may be adequate. But, if nuclear radiation level is to be determined, it has to be done even a fraction of a second. This scheme requires a periodic synchronization among SNs to take care of any type of clock drift. Therefore, SYNC packet s are exchanged periodically to maintain schedule synchronization (Fig. 6.6a) and receivers adjust their timer counters immediately after they receive the SYNC packet . In order to calculate the HELLO message frequency, SN y should estimate the number of in-segment stations that participate in the discovery of a hidden SN x. This is equal to degS(x), namely the number of neighbors that the hidden SN x has inside the connected segment. There are 3 methods considered (Fig. 6.6b): Average in-segment degree of the segment’s SNs (=4) is used as an estimate of the in-segment degree of x, the number of y’s in-segment neighbors (degS(y) = 3) is used as an estimate of degS(x), and a linear combination of the two.

Fig. 6.5
figure 5

Sleep–listen cycle in S-MAC protocol

Fig. 6.6
figure 6

a Use of SYNC packet, b SN degree estimation for message frequency

Suppose that SN x is discovering neighbors as shown in Fig. 6.7. When SN x wakes up every T I seconds for an average period of time equal to H, it announces HELLO messages. The SNs will discover x within a time period T with probability P. Each SN y in topology maintenance state wakes up every T N (y) seconds for H time and broadcasts HELLO message. Active state of SNs x and y should overlap at least δ, 0 < δ < 1 within active time H. Therefore, SN y awakened at t should remain up between t  H(1 − δ) and t + H(1 − δ) time. Then, the probability that x and y discover each other is 2H(1 − δ)/T N (v).

Fig. 6.7
figure 7

Topology maintenance strategy

A detailed simulation has been done to determine the ratio of hidden neighbors as a function of time by placing 2000 SNs in an area of 10,000 × 10,000. Sensing range r s for SN is assumed to be 300 units and half of the SNs are considered in hidden. A hidden SN is detected with a probability P between 0.3 and 0.7 within T = 100 time. The hidden SNs are assumed to be in neighbor discovery mode and wake up randomly every T I  = 20 average time units while non-hidden SNs to be in topology maintenance state and wake up randomly to discover hidden SNs, on an average every T N (y) time units. When a hidden SN is detected, it joins the segment while two hidden SNs that detect each other remain in the neighbor discovery state. The results are shown in Fig. 6.8.

Fig. 6.8
figure 8

a Ratio of hidden neighbors as a function of time [19]. b Average frequency of Hello interval as a function of time [19]

4 Residual Energy Mapping

In a randomly deployed WSN, once the neighborhood SNs have been determined, the next step is to cluster the SNs. Before such clustering can be done, the next step is to determine energy remaining with SNs such that it could help in designating cluster heads (CHs) in the network as they have to do more work than other SNs. Such residual energy (RE) is a continuous core process that can be separated into three phases of determining RE graph; performing in-network aggregation to propagate to BS; and rebuilding topology tree from the root to have justifiable energy depletion. The SN sends message about RE in the form as shown in Fig. 6.9a and the details of polygon information indicating the presence of holes are shown in Fig. 6.9b [5]. Polygon for Part 2 is shown to have 2 holes with no connectivity and that area is indicated in Fig. 6.9b.

Fig. 6.9
figure 9

a Message format for SNs’ residual energy [5]. b Details of polygon holes

In a WSN, energy consumption of the SNs is random, and then the corresponding energy map will be quite irregular. In general, events tend to follow both temporal locality and spatial locality, and one such example is illustrated in Fig. 6.10. The RE among SNs could change animatedly and hence cluster formation and CH determination has to be performed at different times.

Fig. 6.10
figure 10

New CH based on energy level in an area with holes. a Initial state and b state after energy level at SN X has dropped

Conventional Sensor MAC (S-MAC) [6] adjusts its operations as changes take place in the surrounding area while Berkeley MAC (B-MAC) employs RTS/CTS and ACK as high-level task to change applications on and off [7]. B-MAC suffers from high value of latency as the receiver ought to be awake before any data transfer and the receiver could possibly wake up much earlier than the end of preamble. An aggressive RTS is introduced in [8] to replace multiple RTS packets to RTS burst divided by small gaps so as to receive a CTS packet to initiate transfer of data. This way, the message latency between two SNs could be condensed to half. MICA2 motes have been used to implement B-MAC and S-MAC using TinyOS in [7] and placed in an open area with no obstruction 15 cms above the ground. T-MAC [9] has been simulated using MATLAB.

Table 6.1 shows the memory requirements for S-MAC and B-MAC protocols and code storage needed by the two protocols is shown in Table 6.2. Performance of these two protocols in terms of measured throughput and power consumption is given in Fig. 6.11.

Table 6.1 Comparing memory requirements in bytes for S-MAC and T-MAC using TinyOS
Table 6.2 B-MAC and S-MAC implementation in TinyOS
Fig. 6.11
figure 11

a Measured throughput of S-MAC and B-MAC protocols with no duty cycle under a contended channel. b Measured power consumption in S-MAC and B-MAC for maintaining throughput in 10-SNs WSN [8]

As there are no GPS devices attached to each SN (even if GPS does not work indoors), location of each SN needs to be determine its location. This is done by having some reference SNs [called Anchor SNs (ANs)] and determining relative addresses of other SNs with respect to these selected ANs. One such example is illustrated in Fig. 6.12a, where SNs are arranged in 2D mesh and SNs at four corners WXYZ are considered as reference ANs and distance of each sensor in terms of number of hops is given by four tuples. SN A has a logical coordinate vector of (3,4,4,3), showing that SN A is 3-hops from ANs and Z, 4 hops from ANs X and Y. The hop is also presented Wby circular disk as shown in Fig. 6.12b where distance between each successive circle represents the communication distance r c.

Fig. 6.12
figure 12

a Logical coordinate system representing distance of each SN as # hops from selected ANs [10]. b Hop counts from the landmark AN X [10]

If only two ANs are used in the WSN, two zones A and B in Fig. 6.13a will share the same coordinates of (4,4) [10]. This can be resolved by adding another AN X to get (2,4,4) and (6,4,4) as their addresses. A new protocol with reduced flooding has been proposed in Caruso et al. [10] using Glomosim and uniformly mesh-distributed in 100 m × 500 m area, with number of SNs varying from 150 to 900. Each SN has r t = 100 m, and propagation delay is assumed to be 1 μs. Four ANs are considered at four corners. The average packet delivery ratio for randomly selected 100 pairs of sources and destinations and path length is shown in Fig. 6.14a, b.

Fig. 6.13
figure 13

a SNs in zones A and B share the same logical coordinate from ANs Y and Z [10]. b Zones A and B can be identified by using a third landmark AN X [10]

Fig. 6.14
figure 14

a Average packet delivery ratio with network size 1000 m × 500 m [20]. b Average path length with network size 1000 m × 500 m [20]

5 Routing with Energy Harvesting

In a WSN, SNs forward their data to the BS in a multi-hop fashion, possibly along shortest paths. But, no attempts are paid to check whether the intermediate SNs have enough energy or if there is any provision for recharging them using energy-harvesting technique. Most of the existing works have been solely concerned with the design of different forwarding mechanisms for performance improvement or duty-cycled SNs for energy efficiency. However, little work had been done looking at geographic routing which taking harvested energy into account. Particularly, no solution has been designed precisely to solve the uncertainty of remaining energy in charging SNs of a WSN by energy harvesting. One such example of a real scenario is illustrated in Fig. 5.15, where residual energy of each SN is explicitly shown. Batteries of SNs are recharged by harvesting solar energy using lunar panels. As is clear from the diagram, available energy is not homogeneous at all SNs and tasks can be distributed to the SNs based on the availability of energy. Current energy-aware task allocation policy is based on SN residual energy and does not take replenishing capability of SNs into account. Therefore, in allocating task, spatio-temporal property supply should be browbeaten. A novel 2-hop SN-disjoint multi-path geographic routing algorithm TPGFPlus [11] has recently been introduced where a SN selects its next-hop forwarder SN that is closest to the BS among all 1-hop and 2-hop neighbor SNs. In addition, sleep–awake scheme is adopted to increase the effective lifetime (Fig. 6.15).

Fig. 6.15
figure 15

WSN with residual energy harvested by solar units

Energy-harvesting problem involves taking out maximum effort out of a given energy atmosphere and a distributed framework is called environmental energy-harvesting framework (EEHF) [12] where local residual energy is considered in recharging SNs and accordingly tasks are assigned and leaders elected and data transfer path selected. A WSN with multi-hop message forwarding can be described by a directed graph G(V,E), with V as a set of vertices signifying SNs and E is a set of edges indicating the communication links between them. A path from source SN to the BS consists of one or multiple edges, and energy is consumed in both transmitting data and receiving any packet by a SN. Assuming all the SNs start with the same amount of energy, and the remaining energy at SNs consists of energy expanded when minimum energy (ME) routing is followed that opt for a route that costs least total energy cost, and max–min routing that picks the route with maximum residual energy. So, if SN is recharged with energy harvesting, then the objective is to optimize this current power depletion index of SNs.

A new energy-opportunistic weighted minimum energy (E-WME) algorithm introduced in [12] is based on only local information and without any detailed statistical information. An exponential function is assumed for SN residual energy, and transmit and receive energies vary as a linear function (Fig. 6.16a) while an inversely linear function is assumed for the replenishment rate. Due to energy drainage, the WSN with 200 randomly deploy SNs in a 10 × 10 field could tend to partition in multiple subnetworks and end-to-end throughput is given in Fig. 6.16b. SN energy distribution after sending 1000 packets is shown in Fig. 6.17a [12] while Fig. 6.17b shows energy spent per packet for ME and E-WME routing [12].

Fig. 6.16
figure 16

a Energy at SN n assuming no request accepted after request (j − 1) [12]. b End-to-end throughput against the number of SN pairs that have experienced partition [12]

Fig. 6.17
figure 17

a SN energy distribution after sending 1000 packets [12]. b Average energy spent per packet for ME and E-WME [12]

6 Energy Harvesting by Fuel Cells and Healthcare Applications

Many different techniques can be used to harvest energy and a comparison of energy sources is given in Table 6.3 [13].

Table 6.3 A comparison of energy sources [13]

Ecological Robot (EcoBot) [14] means a class of autonomous robots that can collect energy from environmental waste material, produce carbon dioxide, and continue to be self-sustainable. The anode is formed by the bacteria found in sludge that acts as catalysts to generate energy from the given substrate while O2 from free air acts as the oxidizing agent to work as a cathode and combines electrons and protons to produce H2O [15]. A microbial fuel cell cannot match with a typical alkaline standard battery or a solar panel and Table 6.4 summarizes a comparison after 1 year of continuous operation [16]. Energy harvesting is especially important for a body area network (BAN) which poses a real challenge in identifying energy source. Some of the specific sources of energy are [17] electromagnetic waves, heat, potential energy, and electric potential difference besides the solar power and are summarized in Table 6.5. But, most of these schemes are not appropriate for the BAN.

Table 6.4 Alkaline battery versus microbial fuel cell [16]
Table 6.5 Energy-harvesting sources today [25]

One sample example of BAN in healthcare application is shown in Fig. 6.18 where SNs are placed on different parts of the body that send data to a coordinator that acts as a gateway to collect data and send to a BS. Another example is the use of rise in body temperature of firefighters when in action. Firefighters experience a very high physical and physiological stress during firefighting and are at a high risk of cardiac arrest due to heat stress. It is important to constantly monitor their heart rate as blood pressure needs to be measured during active maneuvering in protecting their lives. The body temperature may rise to 104 °F during an active operation. Commercially available ECG sensors have low battery life and scavenging energy from body heat and surrounding heat could enhance the lifetime of sensors for its perpetual operation. Data transmission to the gateway consumes most of the energy and frequent data transmission causes to drain of energy fast. Energy spent ETx(k,d) for transmitting a k-bit message to a distance d can be computed as ETx-elec(k) + ETx-amp(k,d).

Fig. 6.18
figure 18

Use of BAN in healthcare application

Thus, body heat is observed to increase as a result of physical and psychological stress and body heat also increases with increase in atmospheric temperature beyond 130 °F.

The average specific heat of human body is 0.83 kcal, which means that 0.83 kcal of body heat is lost or gained when one degree change in temperature occurs. The famous Seebeck’s Theory [18] states that a difference in temperature in two dissimilar materials generates potential difference as per first law of thermodynamics: Q = mC ΔT. The generated voltage is given by V = α × ΔT, where α is the Seebeck’s coefficient. Seebeck’s coefficient for good thermoelectric material can range from 100 to 300 μV/K. This leads to about 25 mV to be generated by every 1° rise in temperature, and by having them in series, adequate voltage can be generated to power SN which can be stored in a capacitor for constant operation of the SN, irrespective of the frequency of data transmission. Simulation experiments were performed and measured the output voltage generated across thermoelectric materials with varying Seebeck’s coefficient randomly, ranging from 100 to 300 μV/K, for different differences in temperatures as shown in Fig. 6.19a. It is observed that greater the Seebeck’s coefficient and difference in temperature, higher is the amount of voltage generated. The output power generated depends on the different values of load resistance and temperature difference across and Fig. 6.19b shows that maximum power is generated when the load varies and difference in temperature created across the two ends of thermoelectric generators is high. If communication has to be secured, then some security measures need to be adopted. This leads to increased packet size as illustrated in Figs. 6.20 and 6.21.

Fig. 6.19
figure 19

a Coverage of two C-SNs in an area [24]. b Coverage as a function of the number of C-SNs

Fig. 6.20
figure 20

a Normal dummy packet sent from a sensor SN [26]. b Packet size increases considerably on application of security measures [23]

Fig. 6.21
figure 21

a % Area enclosed with 0.782052 coverage by initial layout [27]. b % Area enclosed by improved layout with 0.92336 coverage [21]

7 Balanced Energy Consumption with Multiple Paths

In a WSN, if an event is detected, the SNs discovering the occurrence could continuously transmit data along a selected path to BS and could deplete all SNs along the path for transmitting and receiving data. This could potentially partition the WSN if some SNs run out of energy. Such an effect could be minimized if shortest path is used only for grave data and non-critical data can be sent along longer path. One such example is shown in Fig. 6.22 where 17 × 17 grid is simulated and BS is located in one corner while source SN is in an opposite corner and shortest path is along the diagonal.

Fig. 6.22
figure 22

a Unequal energy consumption due to continuous use of a path [24]. b Balancing energy consumption with multiple path [24]

8 Conclusions

Neighbor discovery is an initial and important step in a randomly deployed WSN and a lot of energy is consumed and time spent and cannot be avoided due to organization style. As most energy is consumed in transmission, reception , and idle listening, it is useful to keep the SNs sleeping as much as possible. Lifetime longevity necessitates that the SNs need to be kept active for a very short period. The path from SN to BS should not be selected based on hop length, but attempts should be made to keep residual energy in mind for keeping selected path connected for a longer period of time. In this respect, energy harvesting is useful in charging vigor-depleted SNs even though it is difficult to implement. Excessive energy consumption could lead to partitioning of WSNs and could be avoided by following multiple path routing if only critical data follow shortest path while non-essential data could be forwarded along longer paths, making other SNs to participate in data receiving and forwarding process.

9 Questions

  1. Q.6.1.

    A WSN consists of 100 randomly deployed SNs. If each SN takes transmission of 5 beacon signals on the average in determining neighboring SNs, how much energy is consumed in determining the topology if each beacon signal is transmitted for 500 ms? Assume each beacon signal to consume 200 mW.

  2. Q.6.2.

    If beacon signals in Q.6.1 can be received up to a distance of 100 m, how much energy will be needed if power level is increased to cover a distance of 500 m?

  3. Q.6.3.

    The beacon frame of Q.6.1 consists of 60 bytes. How much energy is saved if the beacon frame size is reduced to 30 bytes?

  4. Q.6.4.

    How much energy can be saved if the beacon frame duration of Q.6.1 is changed from 10 to 5 ms?

  5. Q.6.5.

    A SN has an option to use 10 different frequencies as beacon signals. What is the probability that two adjacent SNs will use the same frequency for beacon signal to create collision?

  6. Q.6.6.

    In Q. 6.5, what is the probability of beacon collision between any two SNs if there are 4 SNs in the vicinity?

  7. Q.6.7.

    A WSN is given in the following figure, SN1 needs to send data to the BS. In the second of routing, a path can be selected either passing through SN4, SN5, or SN6. Under what condition, a particular path will be followed?

  8. Q.6.8.

    What would you do in Q.6.7 so that path via SN5 is always selected?