1 Introduction

Wireless sensor networks (WSNs) consist of sensing devices [1, 2], communication equipment and power supply settings [3,4,5]. With the characteristics of small size, low cost and easy to deploy, WSNs are widely used in various applications and obtained extensive attentions in research community [6,7,8,9]. And with the development of electronic devices, the size of sensor nodes becomes smaller, the price is cheaper, while the function is more and more powerful, which leads to WSNs applied to a wide range of applications such as industrial surveillance, wildlife and environmental protection, military battlefield monitoring, agricultural crops monitoring, hazard environmental monitoring, etc. [10,11,12,13,14,15,16]. The development of these ubiquitous sensing devices is accelerating the transformation of human lifestyles, making the ability to access information and to control the surrounding environment greatly enhanced. Wireless sensor networks as one of the important composition of Internet of Things (IoT), with edge computing network and cloud network make the current network have taken place great changes [17,18,19,20,21].

Monitoring and sensing data from surrounding environment is an important function of wireless sensor networks [1, 3, 5, 17]. Coverage is important for timely access to information in the surrounding environment, so that a considerable number of researchers have done a lot of researches. Coverage in WSNs refers to how adequately the field is monitored by the sensors for detecting the targets or events, or environmental information [17]. Based on the applications of WSNs, the coverage can be divided into the following categories: (1) Blanket coverage; (2) Barrier coverage; (3) Sweep coverage; (4) Partial coverage [17].

  1. (1)

    Blanket coverage is required to cover the entire monitoring area [17]. The degree of coverage is usually used to represent the capability of the network to cover the monitoring area, which refers to the ratio of area occupied by the sensor nodes and the total network area. Blanket coverage is required that the degree of coverage is 1. Obviously, the higher the degree of coverage is, the more area is monitored and the more advantageous it is to the application. For example, in the monitoring of household crops, if the degree of coverage is 1, it means that the whole crops is within the scope of monitoring, otherwise, it means that parts of the region are not monitored, thus not having access to the sensing information of those areas, which has a negative impact on the right decision. In practice, different applications require varying degrees of coverage. For example, monitoring of critical people and facilities requires extremely high coverage, and even requires that some area simultaneously monitored by k nodes, which known as k coverage (k ≥ 1).

  2. (2)

    Barrier coverage. In applications where the network is deployed on the border to detect illegal crossings, as well as on the edge of the forest to detect the spread of fires, or to locate along important pipelines to monitor damage activities, sensor nodes are usually deployed in narrow strip areas to detect moving targets across the monitoring area. Barrier coverage can form sensor sensing barrier in the monitoring area by overlapping the adjacent nodes’ sensing area, so that the moving target can be sensed along any path when passing through the surveillance area. And the barrier coverage does not have to cover all location points in the monitoring area, therefore, compared with the area coverage of wireless sensor networks, the number of nodes needed for the barrier coverage is less, and it is more suitable for the detection of moving targets in the narrow monitoring area.

  3. (3)

    Sweep coverage. Sweep coverage refers to some special applications such as forest fire prevention, battlefield patrols, where there are a number of events in these areas, such as a relatively high level of forest fire, or some location has a relatively important strategic significance, these points are called POI (Points of Interest). The nodes only need to ensure that these POIs are covered within a specified time interval to ensure that the information is perceived and collected [17]. In this case, a sweep coverage strategy of wireless sensor networks is proposed in [22] to effectively deploy and control nodes to reduce the number of nodes required to cover and reduce the application costs.

  4. (4)

    Partial coverage. Partial coverage belongs to a kind of area coverage, it refers to the requirement in some WSNs to desire that the coverage of the monitoring area be greater than the specified value.

There are a lot of researches about coverage. Coverage can be roughly divided into two categories: one is deployment coverage, that is, arrange appropriate location for the nodes when network deploying, so that the deployed network can achieve coverage while minimizing the number of nodes (costs) that need to be deployed. Another coverage is selecting a part of nodes after the network deployment to meet the requirement of the coverage, and the remaining nodes are transferred to the sleeping state. Since the selected nodes consume much more energy than the sleeping nodes, it is necessary to change a set of nodes after a period so that it can maintain coverage. The criteria for selecting nodes should not only consider the maximum coverage capacity of the nodes, but also consider the maximum residual energy of the nodes.

Ref. [23] introduce a heuristic that selects mutually exclusive sets of sensor nodes, where the members of each of those sets together completely cover the monitored area. Only one set is required at any time, while the nodes in the other sets can enter the sleeping state to save energy and maximize the lifetime of the network in the case of a guaranteed coverage [23]. Cardei M et al. [24] also propose a similar coverage method. In their paper, they organize the sensors into a maximal number of disjoint set covers that are activated successively. Only the sensors from the current active set are responsible for monitoring, while nodes from all other sets are in a low-energy sleep mode [24].

Tian D et al. [19] have taken another approach to improve network coverage and enhance energy efficiency. In their approach, the energy efficiency can be improved in the premise of ensuring coverage by identifying and selecting redundant nodes which do not have an impact on coverage, and then turning these redundant nodes into an off-duty operation mode to have lower energy consumption than the normal on-duty one.

Based on the above analysis, how to minimize the simultaneous working nodes, and at the same time to ensure coverage is the main method to improve coverage performance. In this paper, a multiple working set alternating covering scheme is proposed based on the above thought. In the past, the studies mostly focus on full coverage and rarely involve the problem of continuous partial coverage. However, partial coverage is completely different from full coverage, so the proposal of a novel and efficient partial coverage scheme is of great significance to the actual network. In MWSAC, a distributed algorithm is proposed to select as many nodes as possible to construct multi working sets, and then the sleeping time of nodes in the working sets are scheduled, so that the nodes belonging to the same working sets are awakened synchronously, and the multiple working sets are awakened asynchronously. Compared with the previous schemes, MWSAC has the following contributions:

  1. (1)

    The number of nodes selected by MWSAC is optimal. From the perspective of single working set, the nodes selection under MWSAC is based on the weighted condition of the residual energy and coverage overlap area, therefore the coverage overlap area between any two working nodes is minimized under MWSAC, so the coverage area of the adjacent working nodes is maximized. This allows the nodes required for a single working set is minimized in the premise of satisfying the desired coverage. Viewing from the aspect of multiple working sets, the principle of the scheme is to construct as many working sets as possible until the remaining nodes cannot set up any working set. Therefore, in addition to a small part of nodes, the other nodes take turns to cover the network, so the number of working nodes is maximized and the utilization of nodes is optimal.

  2. (2)

    MWSAC can realize the continuous partial coverage. Under the MWSAC scheme, the nodes that belong to the same working set are awakened at the same time, thus avoiding the problem of missing coverage caused by the sleeping of nodes, which makes the actual coverage of the network higher than the expected coverage. While multiple working sets are awakened at different times in the cycle, so there is a working set covering at any time in the cycle, and it can truly reach the continuous coverage.

  3. (3)

    MWSAC has high energy efficiency. Through the alternating covering of multiple working sets, the working time of each working node is shortened, and more nodes in the network are utilized. Due to the working time of each working set is equal, then the energy consumption of each working node in each time slice is the same, so the energy consumption of the whole network is balanced, which has greatly extended network lifetime.

Both theoretical analysis and experimental results show that the MWSAC scheme presents better performance in terms of network coverage, node utilization and network lifetime when comparing with the previous single working set continuous covering schemes. The MWSAC scheme can achieve real continuous coverage of the network, reduce the number of working nodes in single work set by 33.44%, increase the working node rate by 77.25%, while extending the network lifetime 1.03 times.

The remainder of this paper is organized as follows: In Section 2, a literature review of the research related to this work is presented. Then, the system model and problem statement are described in Section 3. In Section 4, we propose a coverage scheme called MWSAC. The performance analysis of the proposed approach is provided in Section 5. Finally, Section 6 provides conclusions.

2 Related work

Coverage is the basic problem of wireless sensor network configuration. It reflects the situation that a region of interest detected and tracked by a wireless sensor network. Depending on the specific application, the coverage requirements of the network are usually different. According to the coverage target, the network coverage can be divided into area coverage, point coverage and barrier coverage [25]. The point coverage is to cover some discrete target points, and each target point can be covered by at least one sensor node [26]. The barrier coverage is to find the path connecting the starting and leaving positions so that it can provide different sensing qualities for the target under different model definitions [27]. And the area coverage is to find a set of minimum nodes in many redundant nodes that can cover a given area and ensure network connectivity [28]. In this paper, we mainly focus on the area coverage of wireless sensor networks.

Area coverage can be divided into full coverage and partial coverage, where full coverage requires the entire network region to be covered continuously, while partial coverage only needs to cover a given region of the network. In [29], the authors study the full coverage of wireless sensor networks, that is, how to construct a three-dimensional wireless sensor network with minimal sensors to achieve low connectivity and full coverage. They believe that the deployment of redundancy in dense sensor networks can increase the network lifetime and network fault tolerance, but too many active nodes will lead to higher energy consumption, so the CCANS algorithm based on the formation of dominating set is proposed. A set of active nodes is selected by CCANs to provide full coverage and connectivity, and the active nodes form a connected dominating set, which act as the backbone of sensing and communication. Due to the reduction of active nodes, the network saves a lot of energy.

Although there are many studies on network coverage, most of them are full coverage, and researches on partial coverage remains to be developed. There are some classic methods in the partial coverage of wireless sensor networks, which can be roughly classified into four categories: a) Grid-based coverage positioning sensor configuration method b) Distributed greedy connectivity sensor coverage method c) Active/sleep node rotation coverage method d) The worst-case coverage method.

In the grid-based coverage positioning sensor configuration method, the sensor nodes and target points are configured in grid form, and the nodes adopt Boolean coverage model, the energy vector is used to represent the coverage of grid points. Based on this method, the grid coverage strategy is proposed in [30]. First, the authors present an integer linear programming (ILP) solution to minimize the cost of coverage, and then use a solver for ILP representative models, and put forward the solution to the case of large problems. Finally, a framework for identifying the code is used to determine the position of the sensor as the only target location.

Achieving the best battery usage and prolonging network lifetime are the two most basic problems in wireless sensor networks. The minimum battery drainage can be achieved through redundant nodes and efficient scheduling in dense networks. Therefore, the authors in [31] proposed a greedy connected sensor coverage method. The method focuses on the minimum connection sensor coverage problem (MCSC), NP-hard problem, and describes a distributed greedy algorithm to generate a uniform and dense static sensor network that connects sensor optimal coverage. The greedy algorithm is based on notions of maximal independent on random geometric graphs, and on the structure of the Voronoi diagram. At the same time, it provides a complex analysis and bounds on the cardinalities of maximal independent sets (MIS) to get the optimal expressions of the smallest connected sensor size.

Based on the greedy algorithm, the problems of maximum k-coverage in [32] have been studied. In this study, k subsets are to be selected so that their sets cover as much as possible a large weight consisting of a set of common elements. The quality of the coverage algorithm on which the k phase depends are also analyzed in this paper, and greedily selects a subset at each stage to provide the greatest improvement over the entire network coverage. This greedy construction solutions are guaranteed to be within a factor of 1–1/e of the optimal solution.

The worst case coverage approach considers how to sense and track the target across the network or the points on the path it located, reflecting a network coverage. Ref. [33] is committed to solving the problem of sensor network coverage, combined with computational geometry and graph theory, especially Voronoi diagram and map search algorithm, the authors proposed an optimal polynomial time for the worst and average case algorithm for coverage calculation for homogeneous isotropic sensors.

The method of rotation of active/asleep nodes is the most commonly used, which can effectively prolong the lifetime of the network through the node rotation mechanism, and each cycle of the node consists of a self-scheduling stage and a working stage. However, there is a problem in this mechanism, if the neighbor nodes simultaneously check their own sensing tasks can be completed by the other side, and turn into the sleeping state, there will be coverage blind area.

The basic principle of sleep scheduling is to select some nodes to be awake to achieve coverage, then leave the remaining nodes in sleeping state to minimize power consumption, thus reducing the energy consumption of the whole network. Based on this idea, authors in [34] propose a coverage-preserving node scheduling scheme, which reduces overall consumption by closing some redundant nodes. The coverage-based off-duty eligibility rule and backoff-based node-scheduling scheme guarantees that the original sensing coverage is maintained after turning off redundant nodes.

In some network systems, different areas require different levels of coverage, so different from the traditional grid or uniform coverage, such networks focus on the distinction or probability coverage. Therefore, an online, multi objective optimization (MO) algorithm to effectively control the sensor nodes is proposed in [35]. MO algorithm is the first to incorporate differentiated coverage with sleep-scheduling methods in a multi objective optimization framework. In the event of a node failure, the multi-target algorithm is rearranged to the network for maximum coverage and minimum power consumption. This sleep scheduling density control approach helps maintain the required coverage, but produces a higher network lifetime than traditional deployment scenarios.

In [36], the geographic routing is discussed and two GCKN sleep scheduling algorithms are proposed. The first is the first path sleep scheduling algorithm based on geographical distance to connect k-neighborhood (GCKNF). And the second is for all paths called GCKNA. In duty cycled mobile WSNs, GCKNF and GCKNA do not need geographic routing to change their original geographic forwarding mechanism, and they all consider the sensor nodes that can change the sleeping or waking state by connected-k neighborhood and geographic routing requirements.

In this paper, we are based on the rotation of the active/asleep node coverage method to achieve continuous partial coverage, and involve the relevant concepts such as sleep scheduling and multi working sets.

3 System model and problem statements

3.1 The network model

The network model in this paper is a typical planar periodic data collection wireless sensor network [37, 38], its model structure is as follows:

  1. (1)

    N isomorphic sensor nodes are randomly deployed in a two-dimensional planar network with the sink as the center, a radius of R [39], a node density of ρ. The i-th node in the network is denoted as Si, there are N nodes in the network, and the set of these nodes is denoted as {ς1, ς2, …, ςn}.

  2. (2)

    Sensor nodes adopt an asynchronous working mode, that is, the nodes are cyclically switched between the sleeping and waking states. The wake-up time of each node is independent, and only when the node is in the waking state, it is able to perceive events and transmit data. The time ratio of the node in the waking state to the unit period is called duty cycle [36, 40], denoted by φS,and it can be expressed as follows:

    $$ {\varphi}_S=\frac{t_{sen}^w}{{\mathrm{T}}_S}=\frac{t_{sen}^w}{t_{sen}^w+{t}_{sen}^s} $$
    (1)

Where ΤS is the sensing cycle of the node, \( {t}_{sen}^w \) is the time that the node is in the waking state during the sensing cycle, and \( {t}_{sen}^s \) is the time that the node is in the sleeping state during the sensing cycle.

In this paper, the duality perceptive model is used. In the duality perceptive model,a circular region is formed by centered on a node with a radius of its sensing distance, and only the points falling in the circular area can be covered by the node, which is also called the 0–1 model [39]. Supposing rs is the sensing radius of the node, the area that each node can cover in the waking state is \( \pi {r}_s^2 \). Denoting the sensing region of ςi as Αi, then the covering function for the node ςi covering area k can be expressed as:

$$ {\mathcal{T}}_i\left({\partial}_k\right)=\left\{\begin{array}{c}1,\kern0.75em if\ {\partial}_k\subseteq {\mathrm{A}}_i\\ {}0,\kern0.75em \mathrm{otherwise}\end{array}\right. $$
(2)

The sensor nodes in the network are randomly distributed, and the regions covered by any two adjacent nodes may be coincident, supposing the sum of the regions covered by the nodes ςi and ςj is \( {\Gamma}_{\varsigma_{i,}{\varsigma}_j} \), the coverage overlapping area of them is ΑR(ςi, ςj), then \( {\Gamma}_{\varsigma_{i,}{\varsigma}_j} \) can be expressed as:

$$ {\Gamma}_{\varsigma_{i,}{\varsigma}_j}={\mathrm{A}}_i\cup {\mathrm{A}}_j-{\mathrm{A}}_R\left({\varsigma}_i,{\varsigma}_j\right) $$
(3)

3.2 The problem statements

The main objective of this paper is to design a continuous partial coverage scheme for WSNs, as follows:

  1. (1)

    Different network platforms may have different coverage requirements due to specific application differences. Therefore, the first problem to be solved in this paper is to select the working nodes and construct the working set based on the given coverage requirements, that is, the number of nodes in a single working set is minimized, thus ensuring that the number of working sets is maximized.

Supposing the working node ratio is \( {\mathcal{R}}_w \), the number of working sets is ∅, the set of selected working nodes is Cn, the set of all sensor nodes is \( \mathcal{Q} \). Then maximize the number of working set is Maximize ∅, and minimize working nodes ratio of single working set can be expressed as follows:

$$ \mathit{\operatorname{Minimize}}\kern0.75em {\mathcal{R}}_w,{\mathcal{R}}_w=\frac{C_n}{\mathcal{Q}} $$
(4)
  1. (2)

    Due to the nodes are sleep/wake cycling working, and the wake-up time of them is independent and random, so there is a small part of nodes in the sleeping state at some moments in the cycle, which results that the network cannot achieve the desired coverage because of the lack of coverage caused by the sleeping nodes. Therefore, the second problem to be solved is to achieve the continuous partial coverage through a certain wake-up adjustment strategy, so that the coverage of network can reach the desired value at any time.

Supposing that the portion of the network to be covered is Pc, the number of working nodes contained in each working set is Μ, and Μ varies in different sets, the sensing area of the node Si is Αi,the sum of the coincident area of all the selected nodes in the single working set is ΑR, then the coverage quality that each working set needs to reach can be expressed as follows:

$$ \left(\sum \limits_{i=1}^{\mathrm{M}}{\mathrm{A}}_i-{\mathrm{A}}_R\right)/\pi {R}^2\ge {P}_c,0\le {P}_c\le 1 $$
(5)
  1. (3)

    The selected working nodes need to continuously cover the network, so the energy consumption of them is serious, while the unselected nodes are always in the sleeping state, so their energy consumption is little, which result in the imbalance of the network energy consumption, also directly affect the network lifetime. Therefore, the third problem to be solved is to design a multi working set alternating coverage method to balance the energy consumption, thus extending the network lifetime.

Supposing that there are N nodes in the network, and the energy consumption of the node ςi is \( {E}_{\varsigma_i} \), then balance the network energy consumption is to minimize the difference between the maximum energy consumption and the minimum energy consumption in the network, that is:

$$ \mathit{\operatorname{Minimize}}\ {E}_{diff,}\ {E}_{diff}={\mathit{\operatorname{Max}}}_{1\le i\le N}\left({E}_{\varsigma_i}\right)-{\mathit{\operatorname{Min}}}_{1\le j\le N}\left({E}_{\varsigma_j}\right) $$
(6)

Network lifetime is generally defined as the death time of the first node in the network [24], which can be donated as ℒ, and maximize the network lifetime is Maximize ℒ.

In summary, the research objectives of this paper are as follows:

$$ \left\{\begin{array}{l}\mathit{\operatorname{Minimize}}\ {\mathcal{R}}_w,{\mathcal{R}}_w=\frac{C_n}{\mathcal{Q}}\\ {}\mathit{\operatorname{Minimize}}\ {E}_{diff,}\ {E}_{diff}=\underset{1\le i\le N}{\mathit{\operatorname{Max}}}\left({E}_{\varsigma_i}\right)-\underset{1\le j\le N}{\mathit{\operatorname{Min}}}\left({E}_{\varsigma_j}\right)\\ {}\mathit{\operatorname{Maximize}}\varnothing, \mathit{\operatorname{Maximize}}\ L\\ {}s.t.\kern0.5em \left(\sum \limits_{i=1}^{\mathrm{M}}{\mathrm{A}}_i-{\mathrm{A}}_R\right)/\pi {R}^2\ge {P}_c,0\le {P}_c\le 1\end{array}\right. $$
(7)

For the convenience of readers to understand this article, the parameters and related descriptions used in this article are listed in Table 1.

Table 1 Symbols and descriptions

4 Main design of MWSAC

4.1 Research motivation

The research motivation of the MWSAC scheme is based on the comprehensive research on the partial coverage of WSNs, which can be described by two observations.

Observation 1

Most of researches pay attention to the selection of working nodes in the realization of partial coverage, but ignore the lack of coverage caused by the sleep/wake mode. In the sleep/wake cycling wireless sensor networks, the wake-up time of sensor nodes is independent and random, and thus there may be such situations: At some moments in the working cycle, a small part of the selected working nodes is in a sleeping state, making the network unable to reach prior coverage. As shown in Fig. 1, in a network with a given coverage of 50%, the nodes S1-S10 are selected as the working nodes. Theoretically speaking, the sum of the sensing area of the selected nodes should be greater than or equal to 0.5πR2, but because the nodes are randomly awakened and the sleeping time of them is unknown. Then, it is found that the nodes S6 and S10 are in sleeping state at a certain moment in the cycle. Then, the network coverage at that moment is less than 50% due to the lack of the corresponding perceptual region, which makes the actual coverage of the network is much lower than the expected.

Fig. 1
figure 1

Lack of coverage caused by the sleep/wake working mode

Dividing the working period of the node into n time slices with length of τ, and Fig. 2 is the network coverage at different times in the period. It can be seen from the graph that the expected coverage of the system is 50%, but due to the sleeping of some working nodes, the network is far below the expected value for most of the time, and the network does not continuously reach 50% coverage, especially when the node duty cycle is low, the network coverage is much lower than its expectations. Therefore, it is necessary to propose a sleep scheduling method to avoid this phenomenon.

Fig. 2
figure 2

Network coverage at different times

Observation 2

In combination with Figs. 1 and 2, continuous coverage is an important issue to be considered by the nodes, so the energy consumption of nodes is critical. Because the energy consumption of the node in the waking state is one order of magnitude higher than its sleeping consumption [37, 38, 41]. Therefore, if the selected nodes are allowed to work continuously, and let other nodes stay asleep all the time, it will cause extreme imbalance of the network energy consumption. According to the definition of network lifetime, the lifetime of a network refers to the death time of the first node in the network [38, 42], so the imbalance of energy consumption is bound to shorten the network lifetime. Therefore, in order to enable the network have a longer life, the best way is to make more nodes work alternatively in the network to balance energy consumption.

Based on the above two observations, we propose a MWSAC scheme, which is to cover network by selecting multiple working sets, and schedule wake-up time of each working set to achieve the continuous and highly reliable coverage .

4.2 MWSAC scheme

In this section, the MWSAC scheme is introduced. The main idea of this scheme is to first select some sensor nodes to form a plurality of working sets that can guarantee the network coverage, and then schedule the wake-up time of the multiple working sets to ensure that these working sets can continue to cover the network alternately.

The MWSAC scheme consists of two parts: (1) The selection of working nodes and the construction of multi working sets (2) The wake-up time scheduling of the working sets.

There are several important concepts.

P c :

the desired coverage, that is, the degree of coverage to the region of interest, it is the basis of the selection of working nodes and the eventual coverage standards that need to be met.

C n :

a set of working nodes selected by the MWSAC scheme. A working set is a set of working nodes that can reach the desired coverage. In this paper, we use multi working set rotation mechanism.

U n :

a set of unselected nodes (sleeping nodes) that can be used to achieve partial coverage when necessary.

∅:

a counter to indicate the number of working sets, which can be used to achieve asynchronous sleep scheduling for multiple working sets.

μ σ :

the probability of the node being selected, the value is obtained by weighting the residual energy and covering overlapping area.

ΑR:

the overlapping area of the adjacent nodes, it is required to remove the overlapping area of any two adjacent nodes when calculating the theoretical coverage to obtain the actual coverage.

4.2.1 Construction of working sets

The choice of working nodes is mainly implemented by a distributed algorithm, which is divided into the following steps:

  1. (a)

    When the system is initialized, an energy-efficient node ςi is randomly selected and then add it to the working set Cn.

  2. (b)

    After ςi is selected, it broadcasts a message to other nodes within its sensing range, informing them that it has been a working node, and the neighbor nodes receiving the message reply to a message that contains their remaining energy and location information. Then the overlapping area ΑR between them can be obtained based on the location information of the neighbor nodes. The corresponding selection probability μσ for each neighbor node can be obtained by calculating the residual energy and ΑR of the node by a certain weight. Finally, select the node with the largest μσ from its neighboring nodes as the next working node, and add it to the working set Cn, and the other neighboring nodes are added to another collection Un.

  3. (c)

    The selected neighbor nodes repeat the same process until \( {C}_n\cup {U}_n=\mathcal{Q} \), in other words, each node belongs to either Cn or Un, and the coverage of the working set is measured in each selected procedure, once the required coverage reaches, this selection is stopped and turn into the construction of the next working set.

  4. (d)

    If \( {C}_n\cup {U}_n\ne \mathcal{Q} \), then the selection procedure is traced back and restarted from another node. It should be noted that each node can only be selected at most once, that is, when the node is selected, it will no longer reply to the broadcast messages of its neighboring nodes, thus avoid low efficiency and loops caused by the duplicate selection.

  5. (e)

    When all the nodes are added to the corresponding set, the area covered by the working set is measured again. If the system coverage has been met, then the selection is stopped, otherwise some nodes from Un is selected to reach the coverage. The selection criteria for nodes in Un is that the node can cover areas that are not covered by its adjacent nodes.

  6. (f)

    After the selection is accomplished, the coverage area of the remaining nodes Αres is measured, and the selection is stopped if Αres is less than the degree of coverage that the system required. Otherwise, repeat the above steps to form a new working set by selecting nodes from Un until the remaining nodes cannot combined to meet the required working set.

In a wireless sensor network with a coverage of 25% and a node number of 27, the creation of multiple working sets under MWSAC is shown in Fig. 3. First, in the process of creating the first working set Cn1, a node is randomly selected by the system, then the node selects node with the largest μσ from its neighbor nodes as the second working node to join the working set, and so on, until the coverage of the selected working nodes reach the system requirements. After the creation of Cn1 is completed, the nodes in the set no longer participate in the subsequent rounds of the selection. Then start to build Cn2, the working nodes of Cn2 are selected from Un, and the same way to create Cn3 and Cn4. After the Cn4 is created, only the node Sa and Sn are unselected, they cannot form a working set to meet the system coverage. Then, the choice of working nodes and the creation of multiple working sets stopped. There is a total of four working sets have been created in the network, and all nodes except Sa and Sn are working nodes. After four working sets are created, the work cycle can be divided into four time periods, and four sets of nodes rotate alternately.

Fig. 3
figure 3

Multi working sets constructed by MWSAC

The multi working sets construction algorithm is described by Algorithm 1.

figure e

4.2.2 Sleeping scheduling of multi working sets

The sensor node has two states in one unit cycle: the sleeping state and the waking state. It takes time λ for the node to transform from one state to another, and it also consumes energy. In previous studies, the nodes are randomly and independently wake up, that is, the wake-up time between any two nodes does not affect each other, this wake-up mode we call it random wake-up mode. In the case of three nodes, the state transitions of each node in the cycle are shown in Fig. 4. It can be seen that in random wake-up mode, the sleep time of multiple nodes is dispersed, that is, sleeping nodes may exist at any moment in the cycle, especially when the number of nodes is large, and there may be multiple nodes sleeping simultaneously. As shown in the figure, at a certain period t1 nodes S1 and S2 sleep at the same time, then if any one of the two nodes are selected as the working node at this time, in fact the area they should be covering is not covered by the network, then the network is likely to fail to reach the prior coverage, especially when the two nodes are selected at the same time, thus the actual coverage is much lower than the expected value. The same situation also exists in the period t2. As a result, previous studies have not been able to achieve the desired coverage in most cases and are unable to achieve continuous partial coverage of the network.

Fig. 4
figure 4

State transition of random wake up mode

Under the MWSAC scheme proposed in this paper, we adopt the multiple working set asynchronous wake up method. First, multiple working nodes are selected to form multiple working sets based on the desired coverage of the system, and then, in each working set, let the nodes belonging to the same working set wake synchronously, and the multiple working sets are alternately awakened. That is, the entire perceptual period is divided into multiple time slices, and there is only one working set in the wake state of each time slice, in which the duration of time slice is equal to the number of working sets. Assuming that the node’s sensing period is ΤS, there are a total of k working sets formed in the network, then the waking duration of each working set is \( \tau =\frac{{\mathrm{T}}_S}{k} \)(k > =1), and the specific wake-up time for the k working sets is shown in Fig. 5, where the first working set Cn1 wakes up in the first time slice, the second working set wakes up within the second time slice, and so on. It is clear that there is a working set waking at any period in the sensing cycle under MWSAC, and because the waking time of the nodes within the same working set is the same, there is no sleeping node in the current working set and avoid the lack of coverage.

Fig. 5
figure 5

Sleep scheduling of multi working sets under MWSAC

The advantages of this multi working sets asynchronous wake-up method are mainly embodied in two aspects: first, the continuous partial coverage of the network can be achieved, and the network coverage can be guaranteed to be higher than expected at any time; second, multiple working sets alternately cover, reducing node coverage redundancy while balancing the energy consumption of each node, thereby extending the network lifetime.

The multi working sets waking scheduling algorithm is described by Algorithm 2.

figure f

5 Performance evaluation

In this section, a comprehensive evaluation of the MWSAC scheme is given. First, we analyze the connectivity and coverage in theory, and then conduct the related simulation experiments. Both theoretical analysis and experimental results show that MWSAC has shown a better performance in terms of network coverage, working node rate and network lifetime when comparing with previous coverage scheme.

5.1 Theoretical analysis

Before presenting the experimental results, we first analyze the effectiveness of the MWSAC scheme, here we show how MWSAC implement the connectivity and continuous partially coverage.

Connectivity

Under the MWSAC scheme, the nodes belong to the same working set are interconnected. Since \( {C}_n\cup {U}_n=\mathcal{Q} \), each node in the network belongs to either Cn or Un, and nodes belongs to the Cn are working nodes. In fact, it can be seen from the node selection process of Algorithm 1. When choosing the next working node, the node with the largest μσ is selected from the neighboring nodes, so the current working node and the next working node are connected neighboring nodes, in a similar way the other nodes are selected. Therefore, nodes belong to the same working set are connected.

Continuous partial coverage

The selected working node is awakened at the same time in the cycle, so there is no nodes in the sleeping state in the nodes that are selected to implement the coverage. Therefore, the theoretical coverage of the working set under MWSAC is basically consistent with the actual coverage, which can be partially covered. And for multiple working sets, we take alternating working mode, there is only one working set for each period in the cycle, and at any time it is guaranteed that there is a working set, so the energy consumption of nodes under MWSAC is more balanced, which can achieve a longer period of continuous coverage.

5.2 Experiment results

In most of previous studies, the single working set continuous coverage model is adapted, and we called this scheme the Single Working Set Continuous Covering scheme (SWSCC). In SWSCC, a working set is constructed by choosing a subset of nodes, and then the network is continuously covered by this working set, while other unselected nodes remain in sleeping. In this section, we compare the proposed MWSAC scheme with this SWSCC scheme, including the actual coverage of the network, the number of working nodes and the network lifetime. Parameters and values used in the experiment simulation are given in Table 2

Table 2 Simulation parameters

5.2.1 Network coverage

Figure 6 shows the continuous coverage of the network within 100 ms when Pc=50%, ∅=4. It can be seen that under the MWSAC scheme, although the coverage of the network fluctuates at different time periods, the overall stability, the coverage fluctuates from 0% to 4%, and the coverage of the network at any time is higher than its expected value. This is because under the MWSAC, multiple working sets are alternately covered, and the actual coverage of each working set is different due to the number of working nodes and the overlap of coverage. In addition, the working sets works in different time slice, so the network has different coverage at different times. It can be seen from Fig. 6 that the MWSAC scheme can realize the continuous coverage of the network, and the coverage rate at any time is higher than expected.

Fig. 6
figure 6

Continuous coverage of the network under MWSAC

When Pc=50%, the actual coverage of the MWSAC and the SWSCC is shown in Fig. 7. It is obvious that there is no lack of coverage caused by sleeping under the MWSAC of this paper, because the sleeping time of the working nodes is uniformly scheduled according to the owning set. The coverage of the network is consistent with the theoretical coverage, the actual coverage is higher than the expected coverage, and it is stable. While in the SWSCC, most of the time there are some sleeping nodes in the selected working nodes, so the actual coverage is much lower than the expected coverage in most of the time, and the actual coverage fluctuation is larger than the MWSAC due to the different number of sleeping nodes at different times.

Fig. 7
figure 7

Coverage under MWSAC and SWSCC

Figure 8 shows the actual coverage of MWSAC at different time points T1-T5 when Pc is 40%, 60% and 80% respectively. It can be seen that the MWSAC scheme at each point in the T1-T5 show better coverage performance for different coverage requirements, the actual coverage satisfies the coverage requirement. However, the actual coverage of SWSCC has a large gap with the expected coverage, its actual coverage rate is lower than the expected coverage. And the coverage of MWSAC is higher than that of SWSCC by 3.90%, 6.03%, 11.95%, especially when the expected coverage is high, MWSAC has a better performance than SWSCC.

Fig. 8
figure 8

Coverage of MWSAC and SWSCC under different expected coverage

5.2.2 Number of working nodes

Figure 9 shows the number of working nodes required for MWSAC and SWSCC to achieve the desired coverage. For the MWSAC, the number of working nodes here refers to the number of nodes required for a single working set to meet the coverage requirements. In SWSCC, the system randomly chooses adjacent nodes to meet the system coverage without considering the overlapping area between adjacent nodes. In the MWSAC of this paper, we consider the overlapping coverage area of any two neighboring nodes as an important reference, so that the coverage area of multiple nodes is maximized. It can be seen from the figure that under the same coverage requirements, the number of working nodes required by the MWSAC scheme for a single working set is much lower than that of SWSCC, and MWSAC can reduce the number of nodes of single workings set by 33.44%.

Fig. 9
figure 9

Number of working nodes required for MWSAC and SWSCC under different coverage

Figure 10 shows the working node ratio of the MWSAC scheme under different node deployment and coverage requirements, where the working node here refers to all nodes that construct working sets. Because MWSAC employs multiple working sets alternatively working mechanism, most nodes in the network are working nodes, they work alternately to achieve network coverage. When the network coverage is low, the remaining sleeping nodes is less, so the working node rate is higher; when the network coverage is high, the number of unselected nodes is more, the working node rate is lower. Overall, the node utilization of the whole network is high, the working node ratio is basically more than 80%. According to Figs. 9 and 10, we can see the superiority of MWSAC: from the perspective of single working set, the scheme can reach the coverage requirement with fewer nodes; from the global view of the network, this scheme makes multiple working sets work alternately, which greatly improves the utilization of nodes.

Fig. 10
figure 10

Working node rate of MWSAC under different coverage

Figure 11 shows the working node rate under MWSAC and SWSCC at different expected coverage rates when N = 500. MWSAC adopts multiple working set mode, so the working nodes are more, the ratio is high, and SWSCC only selects a part of the nodes that satisfies the coverage requirement, it is single working set model, so the number of working nodes is small, especially when the coverage is low the difference between the two is larger, the MWSAC increased the working node ratio by 77.25%.

Fig. 11
figure 11

Working node rate under MWSAC and SWSCC with different coverage

5.2.3 Network lifetime

The network lifetime is generally defined as the death time of the first node in the network.When the energy of the node is exhausted, the node dies, so the network lifetime is closely related to the maximum energy consumption of the network. The node with the fastest energy consumption is often the node affecting the network lifetime.

Under the SWSCC scheme, the selected nodes need to continuously cover the network, while the other nodes are sleeping, so the energy consumption of the working nodes in the network is serious, thus affecting the network lifetime. In the MWSAC scheme proposed in this paper, the maximized working nodes are selected and allowed them to work alternately in units of working set. For each working node, the working time is greatly shortened and the energy consumption is reduced, so the network lifetime is improved.

Figure 12 shows the network lifetime of MWSAC scheme under different coverage rate. In the case of constant number of nodes, the lower the network coverage, the more working sets are composed, so less workload of each working node, the smaller the energy consumption, the higher the network lifetime. It can be seen from the figure that the network lifetime decreases gradually with the increase of coverage.

Fig. 12
figure 12

Network lifetime under MWSAC

Figure 13 shows the network lifetime of MWSAC and SWSCC under different coverage. Obviously, compared with SWSCC, the MWSAC scheme improves the network lifetime 1.03 times. Network lifetime of the two schemes decreases with the increase of coverage and sensing duty cycle.

Fig. 13
figure 13

Network lifetime of MWSAC and SWSCC under different coverage

6 Conclusion

In this paper, the continuous partial coverage of wireless sensor networks under the task cycle wake-up mode is studied, and a multiple working set alternating covering scheme is proposed based on the comprehensive research on WSNs. In this scheme, multiple working sets that satisfy system coverage are constructed by selecting the maximized nodes, and these working sets are used to cover the network alternately. Under the MWSAC, the working nodes are sleeping scheduled to guarantee coverage, which means that the nodes belonging to the same working set are awakened synchronously, and nodes between different working sets are awakened asynchronously, thus avoiding the blind area caused by the sleeping of some nodes.

Both the experimental results and the theoretical analysis show that the MWSAC scheme exhibits better performance in terms of network coverage, working node rate, energy consumption and network lifetime compared with the previous single working set continuous coverage scheme. The MWSAC scheme strengthens the utilization of network nodes, reduces the working time of each working node through multiple working sets alternatively covering, thus reduces energy consumption and improves network lifetime. In the aspect of network coverage, the actual coverage of MWSAC is consistent with the theoretical coverage, which is higher than the expected coverage. In the next work plan, we consider allowing duplicate node selection to further enhance node utilization and consumption balance.