As we mentioned earlier, important sensor characteristics that need to be taken into account when we integrate sensor technologies into CPSs include deployment, localization, coverage, data collection, and communication (Medium Access Control). Figure 4 summarizes these characteristics.
4.1. DeploymentDeveloping a good deployment approach is necessary in CPS designs. The major objectives of deployment are to ensure the monitoring quality of the ROI and network connectivity. The monitoring quality of the ROI requires that the ROI has to be covered by sensors. The network connectivity ensures that the sensing data can be successfully delivered from each sensor to the sink node. Without an efficient deployment approach, both the monitoring quality and the network connectivity cannot be guaranteed. That is, the decision making system would not successfully receive the available CPS inputs, thereby making it harder to build reliable and predictable CPSs.
This subsection reviews existing few well-known current sensor deployment approaches which can be roughly classified into the categories of fixed sensor [13–19], mobile sensor [20–23], and mobile robot deployments [24–29].
4.1.1. Fixed Sensor DeploymentThe fixed sensor deployment approaches can be further classified into manual configuration [13–15] and random deployment schemes [16–19]. The manual configuration approach is suitable for CPS applications which are built in an indoor or a small region environment such as smart space and healthcare applications. This is because the positions of all sensor nodes can manually be determined in accordance with the requirements of the CPS applications. References [13–15] employed a manual configuration approach to deploy fixed sensor nodes over the monitoring region. Manual configuration is one of the simplest ways to deploy sensors. However, this approach is impractical for a large-scale sensor network.
Another fixed sensor deployment approach is the random deployment scheme. Since the fixed sensors can be deployed by a helicopter, an aircraft or other vehicle, the random deployment scheme is quite suitable for a large-scale sensor network. However, to guarantee the monitoring quality and network connectivity, the number of deployed sensors has to be much larger than the number of actual required sensors. This would lead to a redundant node problem, resulting in many redundant sensors in the given monitoring region and leading to a significant hardware cost. To address this problem, various solutions [16–19] which make redundant sensors enter the sleeping mode to save energy were proposed for different WSN applications.
Li and Cassandras [16] consider a target coverage application in a given monitoring region in which a large number of sensors has been randomly deployed. The objective of [16] is to collect data from the given disconnected targets. Hence, there should be at least one sensor active nearby each target to ensure the monitoring quality. In addition, since all disconnected targets might be far from the sink node, a certain number of sensors also need to be active for maintaining network connectivity. In [16], any sensor in the monitoring region falls into one of the four states, including sensing, relaying, sleeping, and dead states. A sensor which falls into a sensing state should be responsible for target monitoring while a sensor in relaying state is only responsible for data relaying. When a sensor stays in the sleeping state, it does not need to participate in either monitoring or relaying tasks and enters sleeping mode to conserve its energy. A sensor falls into a dead state when it has been exhausted its energy and is no longer available to the given WSN. To address the redundant node problem and reduce the total energy consumption of sensors, the solution proposed in [16] aims at minimizing the number of sensors belonging to sensing and relaying states.
Cǎrbunar et al. [17] studied the problem of detecting and eliminating redundant sensors without degrading the monitoring quality in a randomly deployed WSN. The proposed solution in [17] is based on voronoi tessellation, which partitions the monitoring region into a number of small regions. Depending on the proposed scheme, sensors which are redundant would enter the sleeping mode, effectively prolonging the network lifetime.
Gupta et al. [18] dealt with the data gathering issue in a WSN consisting of many randomly deployed sensors. Since sensors that are close enough might contribute the same or similar sensing data, to reduce the total energy consumption of sensors, the authors in [18] proposed one centralized and two distributed algorithms to construct a topology which consists of a subset of sensors located in the monitoring region. Only sensors involved in the constructed topology are responsible for relaying data while the other nodes enter the sleeping mode to conserve energy.
In [19], the authors also considered the data gathering issue in a randomly deployed WSN. In contrast to [18], C. Y. Chang and H. R. Chang [19] further took into account the factor of energy balancing. First, a topology construction protocol was proposed to construct a balanced data collection tree which is rooted by the sink node. Based on this protocol, the number of sensors in the left subtree and the number of sensors in the right subtree differ slight, thereby balancing the delay time for data collection. Subsequently, two node-placement techniques were proposed. Depending on the transmission loads of sensors, the two proposed schemes can be used to balance the energy consumptions of sensors. Finally, a collision-free Medium Access Control (MAC) scheduling protocol was presented to prevent collisions of packets and to further minimize the total energy consumption and delay time.
This subsection mainly introduces proposed random deployment schemes for fixed sensor deployments. Compared to the mobile sensor deployment and mobile robot deployment schemes, the random deployment approach is simpler and easier to implement. Nevertheless, the redundant node problem is still a challenge in such deployment approaches and needs to be overcome using novel solutions.
4.1.2. Mobile Sensor DeploymentThe mobile sensor deployment approach is suitable for some CPS applications such as the applications of military, ecological monitoring and volcanic eruption monitoring, where the monitoring region might be too dangerous for people to reach. Therefore, using the mobility of sensor nodes to guarantee the monitoring quality and network connectivity is a good policy.
References [20–23] considered the deployment issue in a mobile WSN, where each sensor has movement capability. In the mobile sensor deployment approach, to ensure the monitoring quality and network connectivity, each mobile sensor calculates their next target location based on the information about the coverage holes. Then, it moves to the calculated target location to heal the hole. Hereafter, the coverage hole denotes the area where none of sensors’ sensing ranges covers this area.
Reference [20] studied the deployment issue in a mobile WSN. The objective of [20] is to maximize the size of the area covered by mobile sensors while minimizing the movement distance of each mobile sensor. To achieve this goal, Chellappan et al. [20] translated the sensor node deployment problem into a weighted virtual graph. In the graph, the vertex set contains the areas in the given monitoring region while the edge set contains the possible sensor movement paths between areas. In addition, the capacities for edges model the number of sensors which can move between areas. A cost value is also assigned to each edge to capture the number of movements between areas. Based on the constructed virtual graph, the goal of maximizing the size of the area covered by mobile sensors becomes how to efficiently determine flows to the hole vertices in the graph.
Heo and Varshney [21] proposed three distributed energy-efficient deployment algorithms for mobile sensors. The first scheme operates in a peer-to-peer environment where all sensors are fairly important. Consider a mobile sensor s. The basic concept of the first scheme is to calculate the partial forces between sensor s and all its neighbors according to sensor s’s location and the local density. Then, the resultant force can be derived by the calculated partial forces. As a result, sensor s can determine its movement direction based on the resultant force. The second algorithm combines the first peer-to-peer scheme with one of the current cluster-based methods. The cluster-based method, which uses a hierarchical networking concept, is employed in many WSN scenarios to take advantage of local information and to reduce energy consumption. The major difference between the first scheme and the second scheme is that each sensor can decide its own mode to be either in a clustering mode or peer-to-peer mode through its local density and expected density in the second scheme. If the local density of any sensor is close to its expected density, it changes its state to the clustering mode. Sensors which fall into the clustering mode do not need to move so as to keep the monitoring quality and conserve their limited energies. In case that the local density of a sensor is different from the expected density, the sensor changes its state to peer-to-peer mode and then executes the partial force calculation to calculate the partial forces similar to the first scheme. Furthermore, the third solution is developed based on voronoi tessellation. In the third solution, each sensor can estimate its lifetime in a distributed manner and then determine how long it can survive for the current network topology. Depending on the estimated lifetime, the energy efficiencies of sensors in mobility can be further increased dramatically.
Sekhar et al. [22] proposed four dynamic coverage maintenance heuristics: Maximum Energy Based (MEB), MinMax Distance (MMD), Minimum D/E (MDE), and Minimum Distance Lazy (MDL), which exploit the limited mobility of sensors to guarantee the monitoring quality and network connectivity. The major task of the four proposed approaches is to select a satisfactory hole healer when the coverage hole appears. If any sensor fails because of the limited energy or environmental causes, this leads to a coverage hole. The proposed MEB scheme chooses the neighbor of the dead node with maximum remaining energy to heal the hole. The MMD approach selects the dead node’s neighbor which needs to cover the minimum distance to reach the maximum compensation for the dead node’s coverage as the hole healer. The MDE method combines the objectives of the MEB and MMD schemes. It considers the ratio of maximum movement distance to the remaining energy. The neighbor with the lowest ratio of the maximum distance it can move to its remaining energy would be selected as the hole healer to heal the coverage hole. The MDL solution aims to move the hole healer with the least distance possible such that the coverage hole can be healed.
Wang et al. [23] studied the problem of placing mobile sensors to increase the quality of surveillance in WSNs. Based on the voronoi tessellation, two sets of distributed protocols, called basic protocols and virtual movement protocols, were proposed to control the movement of mobile sensors. The basic protocols move mobile sensors in a round-by-round manner until all sensors reach their destinations. In each round, mobile sensors initially broadcast their location to their neighbors and determine their own sensing area using the voronoi tessellation technique. If any sensor detects a hole in its responsible sensing area, it calculates an appropriate location and then moves to heal the hole. In contrast to basic protocols that move mobile sensors in a round-by-round manner, the virtual movement protocols aim at directly moving mobile sensors to their destinations instead of step by step, thereby minimizing the movement distance of each node.
This subsection has reviewed several existing mobile sensor deployment schemes [20–23]. Compared to the fixed sensor deployment solution, the mobile sensor deployment approach is suitable for a large-scale sensor network and could alleviate the redundant node problem. Furthermore, the mobile sensor deployment approach is able to deploy fewer sensors to guarantee both monitoring quality and network connectivity. Nonetheless, there are two major weaknesses in the mobile sensor deployment approach. The first is that each mobile sensor needs to incur additional hardware cost to support its mobility. The other weakness is that considerable energy consumption is required for each mobile sensor so as to move from one location to another location.
4.1.3. Mobile Robot DeploymentThe mobile robot deployment approach is similar to the mobile sensor deployment solution. This mobile robot approach is also suitable for CPS applications where the monitoring region is dangerous and unreachable. However, the mobile robot deployment approach is easier to implement than the mobile sensor deployment scheme. This is because the robot with fixed sensors could efficiently deploy the fixed sensors over the monitoring region if it follows a well-designed deployment algorithm.
References [24–29] adopted the mobile robot deployment approach to deploy the fixed sensors in a given monitoring region. During the deployment process, to ensure monitoring quality and network connectivity, the robot explores the environment and deploys a fixed sensor at the target location from time to time.
In the mobile robot deployment scheme, it is a challenge to eliminate the negative impact of unpredicted obstacles. Obstacles such as walls, buildings, blockhouses and so on, may exist in the outdoor environment, dramatically influencing the performance in terms of robot deployment. A robot-deployment scheme that does not take into consideration obstacles might result in problems of coverage hole and coverage redundancy.
Batalin and Sukhatme [24] assumed that the robot is equipped with a compass which makes the robot to be aware of its movement direction. In study [24], a robot movement strategy which uses the deployed sensors to guide the robot’s movement and sensor deployment, was proposed. Although the proposed robot-deployment scheme could guarantee the monitoring quality and network connectivity in an obstacle-free environment, however, it does not take into account the obstacles in the given monitoring region. The next movement of the robot is guided by the nearest sensor only. As a result, problems of coverage hole and coverage redundancy might occur when the robot encounters obstacles. Furthermore, during the robot deployment process, all deployed sensors stay in active mode to participate in the guiding tasks, leading to an energy-inefficient WSN.
The efforts described in [25, 26] aim to eliminate the negative impact of unpredicted obstacles during the robot-deployment process. Batalin and Sukhatme [25] employed the robot to deploy the fixed sensors based on the predefined direction priorities, including north, south, west, and east directions. Each sensor keeps track of the time interval that the robot does not explore for each direction. Based on the time interval, the deployed sensors within the communication range of the robot could guide the robot’s movement by suggesting an adequate direction. Upon receiving suggestions from different sensors, the robot integrates these suggestions and selects the best direction for patrol and/or sensor deployment. On the other hand, the study [26] proposed another robot-deployment scheme, which includes four traveling orders, namely random, cross, line, and circle, as the movement options of the robot. Nonetheless, since each subsequent movement is determined by predefined rules regardless of the obstacles relative to the robot, both approaches proposed in [25, 26] cannot guarantee the monitoring quality and might even cause coverage redundancy when the robot encounters the obstacles. Moreover, there is no discussion about how to deal with irregular obstacles.
To address the problem that arises in [25, 26], Wang et al. [27] proposed a centralized approach which employs global obstacle information to calculate the best deployment location of each sensor. Although the proposed mechanism ensures the monitoring quality and network connectivity using fewer fixed sensors, the global obstacle information is still required. Furthermore, since the global information about obstacle is difficult to acquire in an unexplored area, the developed mechanism could only be used in some limited applications.
Studies [28, 29] developed robot-deployment algorithms that overcome unpredicted obstacles. By applying the proposed schemes in [28, 29], the robot rapidly deploys a near-minimal number of sensors to guarantee the monitoring quality and network connectivity. In [28], the proposed approach consists of a node placement policy and a spiral movement policy, where the node placement policy aims to deploy fewer sensors to achieve full coverage while the spiral movement policy is adopted as a strategy for the robot movement. On the other hand, the proposed scheme in [29] involves the designs of a node placement policy, a snake-like movement policy, and various obstacle-handling rules. The node placement algorithm minimizes the coverage redundancy of neighboring sensors while a snake-like movement pattern is employed by the robot to deploy sensors. In addition, several obstacle-handling rules were proposed to alleviate the negative impact of unpredicted obstacles.
This subsection surveys several mobile robot deployment approaches [24–29]. Similar to the mobile sensor deployment scheme, such approaches are suitable for a large-scale sensor network and also have no redundant node problem. Indeed, after the deployment process, the robot might further execute other missions such as hole detection, redeployment, monitoring, and so forth. As a result, from the hardware cost point of view, the mobile robot deployment approach is better than the mobile sensor deployment solution.
4.2. LocalizationIn most CPS applications, the location information is important for the real-time decision making system. This is because every decision made by the decision making system is based on the location information of sensor nodes. The actions made by the decision making system are generally relayed to the locations where the events have occurred. We review below various recently proposed localization schemes in WSNs.
Localization with low cost and high accuracy is of utmost importance for most applications in WSNs, such as location-aware routing, target tracking, coverage and others. Without the availability of location information, these applications cannot be executed successfully. Equipping each sensor node with a GPS device [30, 31] is one of the simplest ways to help the node acquire its own location information. Based on the NAVSTAR satellite constellation, a sensor node is able to obtain its coordinates if it is located in the satellite coverage and no obstacle exists in the path of satellite signals. However, having a GPS device for each sensor node is not a feasible solution. To remove the GPS requirement from each sensor node, there are various localization approaches which have been proposed in literature. These approaches can be classified into two categories, namely range-based scheme [32–38] and range-free scheme [39–53].
4.2.1. Range-Based Localization SchemeThe range-based approach helps each sensor node acquire its own location information by using either Euclidean distance or relative angle between any two neighboring sensor nodes. The distance or angle information could be measured by the Received Signal Strength Indicator (RSSI), Angle of Arrival (AoA), Time of Arrival (ToA), or Time Difference of Arrival (TDoA) techniques [32–38]. The RSSI scheme measures the power strength at the receiver. When the sender transmits a signal, the receiver is able to estimate the distance between them according to the propagation loss. The ToA and TDoA [32] are both time-based methods, where ToA is based on the distance estimations by the signal arrival time while TDoA depends on the time difference between two consecutive arrived signals. The AoA approach [34] uses special antenna configurations to estimate the angle of arrival of the received signal from the sender. Consider a node s and three landmarks a, b, and c which have location information. Depending on the AoA approach, node s can acquire its coordinates through the means of triangulation which are based on the positions of landmarks a, b, and c and the angles ∠asb, ∠asc, and ∠bsc.
Research efforts described in [35, 36] employed Received Signal Strength (RSS) measurements to help nodes get their coordinates. Reference [35] developed a fine-grained indoor location sensing system based on Radio-Frequency (RF) signal strength. In [35], a central server uses the measurement of signal strength provided by each base station to estimate the distance between each base station and each node. By applying the triangulation technique, the coordinates of each node can be calculated. Study [36] considered a target tracking application in an indoor environment and also developed a RF based system. This system is based on empirical signal strength measurements and a simple signal propagation model. Similar to [35], the location of each target can be determined by the signal strength information from base stations. Although using RSS measurements [35, 36] is able to help nodes derive their location information, it might suffer from mistakes due to the random nature of the fading channel. To solve this problem, the work described in [37] employed proximity measurements that complement the existing localization approach using RSS measurements.
References [33, 38] described two time-based localization methods. Savvides et al. [38] used a minimal number of beacons, which are location-aware, to help sensor nodes learn their own location information. The proposed distributed technique, called AHLoS (Ad-Hoc Localization System), mainly consists of a ranging phase and an estimation phase. In the ranging phase, each sensor node measures the distances between itself and all its neighbors using the ToA technique. During the estimation phase, in addition to the distance information, each sensor determines its own coordinates by its neighboring beacons. The Cricket location support system [33] is based on the TDoA technique for indoor localization. Instead of only relying only on RF signals, it uses the beacons along with the combined RF and ultrasound signals to help nodes learn their coordinates.
This subsection reviews several well-known range-based localization schemes [32–38], which take advantage of the RSSI, AoA, ToA, or TDoA techniques to help sensors learn their own location information. Nonetheless, there are two drawbacks with range-based approaches. First, the nodes have to be equipped with expensive hardware, increasing their hardware costs. Second, the signal might not be received successfully because of fading channel, interference, collision and so on, greatly degrading the localization performance [54]. To deal with these two problems, various range-free localization schemes have been proposed.
4.2.2. Range-Free Localization SchemeTo minimize hardware costs for each sensor node, many range-free localization schemes [39–53] have been proposed for a resource-constrained WSN.
Unlike the range-based approach, some studies [39, 40] enable sensors to learn their own location information based on deploying several fixed anchors, which have location information by equipping them with GPS devices or by some other means. Niculescu and Nath [39] proposed a distributed range-free localization scheme. In addition to sensor nodes, some fixed anchors are randomly and uniformly deployed in the given monitoring region. Using the help of the fixed anchors, sensors are able to calculate their own location information in a distributed manner. To start with, all fixed anchors communicate with each other to acquire the hop counts between them. According to the Euclidean distance between any pair of fixed anchors, each anchor estimates the average distance of one hop and then broadcasts the estimated distance and its own coordinates to all sensors in the monitoring region. Upon receiving different messages from at least three fixed anchors, each sensor can therefore calculate its own location information. However, in a random deployed WSN, sensors might not be deployed uniformly, resulting in degradation of the localization performance.
He et al. [40] also used a few fixed anchors to help sensors obtain their own location information. Using beacons from these fixed anchors, each sensor can determine the area in which it is located. In [40], each sensor initially selects three fixed anchors whose beacons can be received by it and checks if it is located in the triangular region formed by connecting these three anchors. This operation will repeatedly be executed until all combinations of the different audible anchors are exhausted or the required location accuracy is achieved. Afterward, each sensor node calculates the intersection of all triangular regions and then treats the center of gravity of the intersection region as its coordinates.
Although deploying a few fixed anchors does help each sensor obtain its coordinates and can reduce the hardware cost compared to range-based localization approach, however, the fixed anchors are still equipped with specific equipment such as a GPS device. To further remove the requirement of deploying a number of fixed anchors in the given monitoring region, other proposed schemes [41–53] employed a mobile anchor instead of a fixed anchor.
Studies [41, 42] exploited several mobile anchors to help sensors acquire their coordinates, where each mobile anchor has location information. Ssu et al. [41] assumed that the communication ranges of mobile anchors and sensors are identical and the shapes of them are all modeled as perfect disks. In [41], each mobile anchor randomly determines its movement direction and continuously broadcasts beacon messages including its current coordinates. When any mobile anchor enters and then leaves the communication range of node s, the first and the last coordinates received from the mobile anchor will be viewed as the coordinates of two points, which fall on the boundary of the communication disk (communication range) of node s. Both points are also the end points of a chord of sensor s’s communication disk. Similarly, another chord can be obtained by node s after any mobile anchor passes through the communication disk of sensor s again. After obtaining two chords, node s calculates two perpendicular bisectors of the two chords. Since each perpendicular bisector of a chord must pass through the center point of the circle, node s can therefore determine its location which is the intersection of the two perpendicular bisectors. The basic concept of [42] is similar to that of [41]. The major difference between them is that study [42] employed aerial anchor nodes to execute the localization process. Nonetheless, the localization performances of [41, 42] depend on the frequency of beacon broadcasting. The anchors broadcasting beacon messages more frequently would result in better localization performance and higher energy consumption.
Studies [43–51] employed the area-based localization approach to help sensors get their coordinates. In studies [43–48], a mobile anchor being aware of its own location information moves in the monitoring region and periodically broadcasts a beacon with its current coordinates to improve the location accuracy of the nearby sensors. Upon receiving the beacon message, the sensor node indicates that it is within the region of the circle centered at the coordinates of the mobile anchor with a radius r, where r is the communication range of the mobile anchor. Therefore, the sensor node identifies that its location is within the circle region which is referred to as estimation region. Based on the range-constraint of beacon messages, a static sensor that receives several different coordinates from the mobile anchor might reduce its estimation region by calculating the intersection region of these estimation regions, leading to an improvement in the location inaccuracy. However, the range-constraint localization is mainly applied by those sensors that are actually one-hop neighbors of the mobile anchor.
Study [49] extends the range-constraint from one-hop to the two-hop neighboring sensors. Let A={a1,a2,…,an} denote the set of n neighbors of the mobile anchor and Bi denote the set of sensors which are the neighbors of sensor ai in set A. Upon receiving the location information from the mobile anchor, all sensors in set A evaluate their estimation regions and then broadcast the regions to their neighbors. Since the two-hop neighboring sensors of mobile anchor cannot receive the location information from mobile anchor, nodes in set Bi have a location constraint that they are not located in the estimative region of ai. Nonetheless, since nodes in set Bi are all neighbors of node ai, they have another constraint that they are located in the communication range of any possible location of ai. Based on these two constraints, sensors in set Bi can also derive their own estimation regions.
In addition, in [43–49], the intersection of estimation regions is difficult to calculate because it is an irregular region. Other studies [50, 51] have proposed localization schemes by applying a rectangular region instead of a circular region to simplify both the calculation and the representation of the new estimation region.
Although the existing area-based localization approaches [43–51] can efficiently make each sensor obtain their estimation regions, however, these studies do not consider how the mobile anchor moves and where the beacon should be broadcasted in the given monitoring region. Furthermore, they also cannot distinguish between the relative locations of any pair of neighboring sensors. As a result, when sensors execute some location-aware applications such as routing, a poor performance might be obtained. To address these two problems, the authors of [52, 53] proposed a few techniques.
Chang et al. [52] proposed an anchor-guiding mechanism to further improve the localization performance of [43–51]. The proposed mechanism aims to determine the beacon locations and construct an efficient path for the mobile anchor passing through all beacon locations to improve the accuracy of the localization task. First, the monitoring region is partitioned into a number of grids and each grid is assigned a weight value which represents the localization benefit. Then, according to the weight value of each grid, the promising grids for broadcasting beacons are selected by the mobile anchor. Finally, a path construction algorithm is presented to construct a path passing through the selected beacon locations while minimizing the movement of mobile anchor.
Chang et al. [53] extended the existing area-based localization approach. The proposed scheme not only provides each sensor with an estimation region but also helps each pair of neighboring sensors distinguish their relative locations. The key idea of this article is to use a mobile anchor broadcasting tone signal to identify the relative locations. The proposed mechanism mainly consists of two strategies, namely distinguishing relative location and path planning. Initially, depending on the order of entering and leaving the tone-signal range, a set of rules were developed for each sensor to distinguish relative locations with all its neighbors. Then, two efficient path planning strategies were proposed for the mobile anchor to explore the whole monitoring region with low energy consumption.
This subsection has reviewed various well-known range-free localization schemes [39–53]. Although the localization performance of range-free approach is not better than that of range-based approach, however, the hardware cost of the range-free approach is much lower compared to range-based approach.
4.3. CoverageThe sensor coverage problem relates to whether we have a fixed deployment or a non-fixed deployment which are based on if deployment of sensors is to be planed before an event or after. Fixed sensor deployment implements a plan before an event occurs. It is usually based on some geographic shapes and some mathematical computation that is used to determine the position of each sensor. The geometric shapes can be a hexagon [55] or a square [56]. When sensing in a regional environment, we can prepare a priori to reach the point of interest which is closest as much as possible using regular methods such as row-by-row and column-by-column, grid, to deploy sensor nodes for fixed deployment scenarios. The main benefit of the aforementioned approach is that it can ensure that there is no hole in the coverage area of interest. The disadvantage is that the approach can be easily affected by terrain or other obstacle which increases the difficulty of the placement of sensors. In the case of the non-fixed deployment approach, we use the node that can automatically move with some technical adjustment to monitor the target location. The advantage of this approach is that it is relatively unaffected by terrain and is a good method for computing the target coverage area. The disadvantage is that the sensing range of a sensor node always overlaps with the sensing range of other nodes. To address this overlapping problem, we need more sensor nodes. However, this would increase the deployment cost. The following section describes three main classes of non-fixed sensor deployment strategies, namely full coverage [57–60], barrier coverage [61–64], and sweep coverage [65].
Full coverage includes the whole area we must cover with the sensing range of the sensors which is important for military applications. To protect a military base, we need to deploy appropriate sensor nodes to monitor the surrounding environment. The most common approach is the use of Voronoi Diagram. A group of points in the environment use the vertical line between two nearest points to study its quality of coverage.
Barrier coverage involves placing the sensor node at the center of the circle. When an object wants to pass through the area which was surrounded, it will be detected by the sensor node. In [64], the authors use attraction and repulsion to let each node find the distance between itself and neighbors and to set up a barrier to monitor the surrounding environment.
In the case of the Sweep coverage approach, the area we want to monitor has a very important Point of Interest (POI). We use a node which has the ability to move to patrol and monitor the area of interest. But when we use a node to patrol many POIs, it will result in the Traveling Salesman Problem (TSP). To address this problem, a centralized sweep algorithm called CSWEEP segmentation method [65] was proposed where we allow each segment to have a mobile sensor node to perform regular patrols. The moving route of each mobile sensor is predetermined to guarantee the coverage. But CSWEEP needs to know the POI location. For scalability, a distributed sweep algorithm named DSWEEP was proposed which enables sensors to cooperate efficiently to provide required coverage. Each sensor node decides its moving path individually at runtime using the knowledge of the traces of other sensor nodes.
In some areas covered by the sensors, they must also return data. But if using multi-hop manner to send data, it will consume too much energy. Some previous studies also deployed a sink in the monitoring region to collect data where is the sink located. Sinks can be classified into fixed [66] and variable [67] ones. While a sink is stationary in a certain position, the sensory data can be routed to the sink in an efficient way. When a sink is mobile, routing to the mobile sink on a predefined trajectory should be considered.
4.4. Data GatheringData gathering in WSN is defined as the systematic collection of sensed data from multiple sensors to be eventually transmitted to the base station for processing [68, 69]. The main constraint is that most sensor nodes are powered by limited battery. Thus, it becomes an important issue in data gathering to reduce the energy consumption in order to prolong network lifetime. Recent research efforts about efficient data gathering schemes can be generally classified into two categories namely, efficient relay routing and mobile data gathering.
In the case of efficient relay routing, sensed data from the environment is forwarded to the data sink via multi-hop relays among sensors. Data gathering techniques with aggregation have been proposed by the following researchers. Liang and Liu [70] presented a generic cost model of energy consumption for data gathering in sensor networks and proposed heuristic algorithms to solve it. Wang et al. [71] studied the data aggregation of Divisible Perfectly Compressible (DPC) functions for random WSNs. The authors designed two protocols, called Single-Hop-Length (SHL) and Multiple-Hop-Length (MHL) schemes, to derive the optimal aggregation throughput depending on a given gathering efficiency. Incel et al. [72] studied fast convergecasting in WSNs where nodes communicate using a Time Division Multiple Access (TDMA) protocol to minimize the schedule length.
With hierarchical infrastructure, Zhang et al. [68] studied two-layered heterogeneous sensor networks, where the network is partitioned into clusters and a powerful cluster head controls all sensors in a cluster. They focused mainly on the energy-efficient designs within a cluster to prolong the network lifetime.
When sensed data is highly correlated, most research efforts use source coding strategies to find an optimized rate allocation at the sensor nodes. Arjmandi and Lahouti [73] considered efficient data gathering in a WSN cluster whose cluster head is of limited complexity (memory and computational complexity) and employed asymmetric Slepian-Wolf codes. Tan et al. [74] presented a distributed resource allocation framework to maximize the network utility and proposed a dynamic network coding strategy that allows an intermediate sensor node to independently decide whether to combine incoming data flows.
In the case of mobile data gathering, the mobile data collector can move around the sensing field and collects data from the source nodes through short-range communications. The main advantage with this approach is that the mobile collector can reduce the energy consumption of routing all the sensed data to the data sink. With uncontrollable mobility, Jain et al. [75] presented an analytical model to understand the key performance metrics such as data transfer, latency to the destination, and power.
With controlled mobility, an efficient moving tour can be planned for specific purposes. Zhao et al. [76] considered the tradeoff between concurrent data uploading time and moving tour. Xing et al. [77] proposed a rendezvous scheme to combine the advantages of controlled mobility and local data caching and jointly optimizes data routing paths and the tour of the mobile collector. Fei et al. [78] formulated the moving process of data collectors as a Markov chain and determined the moving path using a Markov decision process. The collectors move along the path defined by the optimized policy which is computed off-line and downloaded to collectors in real-time.
4.5. Communication (Medium Access Control Protocols)The design of Medium Access Control (MAC) protocol plays an important role in the design of CPSs. Many CPS applications, such as the applications of military, environmental monitoring, and target tracking, are applied to the outdoor environment. Therefore, sensor nodes are difficult to be recharged when they exhaust their limited energy. This section presents various MAC protocols that have been proposed to efficiently manage the sensor nodes’ energy.
Energy-efficient MAC protocols for WSNs need to conserve the energy consumption during sensor node communications. There are several attributes that should be considered in designing an efficient MAC protocol [79]. The first attribute is energy efficiency. Since sensors are battery powered and are often difficult to be changed or recharged, the reduction of energy consumption of each sensor node is a challenge. The second requirement is latency. In WSNs, the sensing data should be delivered from sensors to the sink node in a real-time manner so that the corresponding operation could be executed rapidly. The third requirement is fairness which ensures that all sensors are able to send their sensing data to the sink node fairly, thereby avoiding the starvation problem. Furthermore, in order to increase the network throughput, the bandwidth utilization should be also considered because of the limited bandwidth resource.
In the literature, many energy-efficient MAC protocols have been proposed for WSNs. These protocols can be broadly grouped into contention-based MAC protocols [79–85] and reservation-based MAC protocols [86–88]. We present below recently proposed contention-based MAC protocols as well as several popular reservation-based MAC protocols.
4.5.1. Contention-Based MAC ProtocolsThe IEEE 802.11 [80] defined a contention-based MAC protocol which was inspired by MACAW [89]. It adopts technologies including CSMA (Carrier Sense Multiple Access), CSMA/CA (CSMA/Collisions Avoidance), and Random Backoff to avoid transmission collisions and maintains fairness among wireless devices in a single-channel environment. Let nodes S and R be the sender and receiver, respectively. In the CSMA technology, the sender S has to initially listen to the channel for a predetermined period of time so as to check if there are any activities on the channel. In case that the channel is sensed “idle”, sender S is allowed to access channel for transmitting data to receiver R. Otherwise, sender S has to defer its transmission. Although CSMA technology can efficiently prevent the current transmission from collision, it cannot cope with the hidden node problem. For example, given three nodes S, R, and H, if H is “hidden” from S, it could happen that the data signal sent from S to R cannot be sensed by node H. As a result, node H might transmit data to its receiver and hence a collision might occur at node R. To deal with the hidden node problem, the CSMA/CA technology should be applied. A sender S intending to exchange data with a receiver R should firstly send the RTS (Request to Send) packet to R. Upon receiving the RTS packet, the receiver R simply replies a CTS (Clear to Send) packet to sender S. All other nodes that receive the RTS or CTS packets should defer their transmissions until the data exchange between S and R is completed. In addition, a Random Backoff mechanism was proposed in IEEE 802.11 MAC to prevent collisions among the transmissions of multiple RTSs. Although IEEE 802.11 MAC is widely used because of its simplicity and robustness to the hidden node problem, the energy consumption is very high when nodes stay in the idle state [90].
PAMAS [81] is one of the earliest contention-based MAC protocols and is based on MACA [91]. The difference between PAMAS and MACA is that PAMAS employs two independent radio channels to exchange control and data packets, where one channel is used to exchange RTS/CTS message and the other channel is used for data transmissions. A node which is not involved with the transmission might switch off its radio to save its energy. However, the PAMAS approach needs to use two radios in the different frequency bands, hence increasing the hardware cost and the complexity of sensor node design.
Ye et al. [79] proposed a contention-based MAC protocol, called S-MAC, which is modification of the IEEE 802.11 MAC protocol. The objective of S-MAC is to reduce the energy wastage resulting from collisions, overhearing, control packet overheads, and idle listening. In S-MAC, the time is divided into a number of equal-length frames and each frame is composed of a listen window and a sleep window. In the listen window, each node wakes up and listens whether or not any other node intends to communicate with it. If it is the case, the sender and the receiver exchange the control packets (such as SYNC, RTS, and CTS) and then exchange the data in the next sleep window. Otherwise, each node listens until the current listen window ends and then changes its state from “listen” to “sleep” and turns off its radio to conserve energy. However, the S-MAC also has high energy consumption if nodes are in the idle mode.
Van Dam and Langendoen [82] presented another contention-based MAC protocol, called T-MAC, which is similar to S-MAC. In T-MAC, the time is also divided into a number of equal-length frames and each frame is composed of a listen window and a sleep window. The major difference between T-MAC and S-MAC is that T-MAC enables the length of each listen window to be calculated dynamically. Each node, say s, wakes up at the start of each listen window and listens whether or not any other node intends to communicate with it. If no other nodes intend to communicate with node s within a predefined time interval, node s terminates its listen window and enters the sleep window.
B-MAC [83] is a contention-based MAC protocol designed for WSNs and adopts CSMA technology. To achieve low power operation, B-MAC uses an adaptive preamble sampling scheme to reduce duty cycle and minimize idle listening. In B-MAC, when no activation events occur, each node continuously sleeps for a fixed period of time tsleep and then wakes up and listens if any other node intends to communicate with it. Consider a sender S intending to send data to a receiver R. Sender S initially checks if the channel is clear using Clear Channel Assessment (CCA) approach. If it is the case, sender S broadcasts preambles for a period of time tpreamble. To ensure that receiver R is able to receive the preamble from sender S, the relation tpreamble>tsleep should be satisfied. As a result, receiver R can be aware that sender S intends to communicate with it and then successfully receives the data from S after time interval tpreamble. However, heavy traffic load will worsen the performance of B-MAC. This is because the transmission delay of B-MAC increases due to the long preamble.
The WiseMAC [84] protocol was developed for WSNs. Similar to the study described in [85], the WiseMAC also adopts spatial TDMA (Time Division Multiple Access) and CSMA with preamble sampling scheme. However, in [85], all sensor nodes have to work in a multi-channel environment. In contrast, WiseMAC works in single-channel environment and uses non-persistent CSMA with preamble sampling technique to conserve energy during idle listening. In WiseMAC, when no activation events occur, each node continuously sleeps for a fixed period of time and then wakes up and listens if any other node intends to communicate with it. To cope with the long preamble problem in B-MAC, each sensor node in WiseMAC maintains all its neighbors’ wakeup schedules for the data transmission. If any sender S intends to send data to receiver R, sender S initially checks the next time when receiver R will wake up. Then, sender S broadcasts preambles for a shorter period of time when receiver R wakes up.
This subsection has described some of the well-known contention-based MAC protocols for WSNs [79–85]. Compared to reservation-based MAC protocols, the contention-based schemes are simpler to implement. This is because the contention-based schemes only need local time synchronization instead of global time synchronization. In addition, they do not need to have the knowledge of network topology, reducing the communication overheads. However, the performance of contention-based approach really depends on traffic load because collisions occur frequently when traffic load increases. As a result, a higher traffic load worsens the performance of contention-based MAC protocols.
4.5.2. Reservation-Based MAC ProtocolsTRAMA [86] is a reservation-based MAC protocol which adopts the TDMA technique to minimize collisions and reduce the energy consumption. TRAMA separates the time into a random access period and a scheduled access period, both of which are composed of time slots. In the random access period, sensor nodes collect the information about the neighboring nodes using Neighbor Protocol (NP) and exchange their two-hop neighbor information and schedules through the Schedule Exchange Protocol (SEP). In addition, the Adaptive Election Algorithm (AEA) is used to determine the node that can transmit or receive data at a particular time slot in the scheduled period using the information obtained from NP and SEP. In the scheduled access period, sensor nodes send or receive data according to the schedules planned in the previous random access period. The other sensor nodes which have no activities in the scheduled period will enter the sleep mode to conserve energy.
Lu et al. [87] proposed an energy-efficient and low latency MAC protocol, called D-MAC, for tree-based data gathering schemes in WSNs. D-MAC is an improved version of the Slotted Aloha protocol, where the time is divided into small slots and CSMA technique is adopted. In D-MAC, the awake/sleep schedule of sensor nodes are staggered based on their depth in the data gathering tree. In the best case, a packet can be delivered from source node to the sink node without any transmission latency. However, DMAC is not quite flexible. When the tree topology changes, the awake/sleep schedule of sensors needs to change also, resulting in a poor performance in terms of energy consumption.
PEDAMACS [88] is a TDMA-based MAC protocol which can be used for a multi-hop network environment. In PEDAMACS, the destination of all data packets generated by sensors is the same access point (or sink node). The sink is assumed to be powerful enough such that its transmission range can fully cover all sensor nodes in the monitoring region. In the topology collection phase, the CSMA technology is adopted so that sensor nodes can send their information to the sink. Upon receiving information from all sensors, the sink plans a global data report schedule and sends this schedule to all sensors. Furthermore, in order to cope with the collision problem, the collision-free scheduling of PEDAMACS is based on the coloring of the original conflict graph. In this graph coloring method, the color denotes the transmission time slot of nodes. Hence, no two adjacent nodes share the same color, avoiding the collision problem.
Several popular reservation-based MAC protocols [86–88] were presented for WSNs in this subsection. In contrast to contention-based MAC protocols, reservation-based approaches require knowledge of the network topology so that an active/sleep schedule can be planned. Moreover, in most reservation-based schemes, the time is usually divided into a number of small slots. Any sensor intending to transmit (receive) data packet is allocated a particular time slot and then transmits (receives) the data packet to (from) the receiver (sender) in that time slot. Based on this behavior, the collision problem can be improved significantly. Nevertheless, the reservation-based methods require strict time synchronization. If the time is not synchronized, the collisions will occur more frequently, further causing degradation in the performance of the reservation-based MAC protocols.