Energy-Efficient Broadcasting Scheme for Smart Industrial Wireless Sensor Networks

1School of Information Science and Engineering, Central South University, Changsha 410083, China 2College of Information Engineering, Xiangtan University, Xiangtan 411105, China 3Department of Software, Ajou University, Suwon 443749, Republic of Korea 4Graduate School of Advanced Integration Science, Chiba University, Chiba 263–8522, Japan 5Faculty of Engineering, Information and Systems, University of Tsukuba, Tsukuba 305-8573, Japan


Introduction
As one of the key components of Cyber-Physical Systems [1][2][3][4], Wireless Sensor Networks (WSNs) are emerging as a promising platform which enable a wide range of applications in both military and civilian domains [5][6][7][8][9][10][11]. Specifically, Industrial Wireless Sensor Networks (IWSNs) are regarded as a promising paradigm for smart industrial automation [12,13].In smart IWSNs, a large number of sensor nodes are deployed to detect environment events, measure the physical or chemical parameters of surroundings, and report the sensed data to the remote control center wirelessly.Based on the collected data from all these sensors, the control center can send commands to machinery actuators and trigger necessary actions [12].Comparing with traditional industrial automation systems using wired communications, IWSN brings notable advantages including lower cost, higher flexibility, and self-organizing capability, which significantly improves the industrial efficiency and productivity [12,14,15].
Due to the ever increasing demand for network resources, network operators and Internet Service Providers are under constant pressure to accommodate more network bandwidth and offer better service quality via periodic network upgrade [16,17].With the development of smart industrial as well as Software Defined Network (SDN), today the software of sensor nodes is able to be reconfigured, which adds new features to IWSNs.The flexibility of software reconfiguration and upgrade of nodes has drawn wide attention from researchers in many application fields, like monitoring traffic information, detecting real-time conditions of petroleum 2 Mobile Information Systems pipeline.In IWSNs, if the network needs to be upgraded, the sink node will generate code packets to be broadcasted to all sensor nodes [16,18].After receiving the code packet, each node compiles and executes it to gain new functions, forming a more advanced IWSN.Broadcast is a very fundamental form of communication in which nodes disseminate the same information simultaneously to all of their neighbors [19].Given a base node with a code packet to broadcast, the aim is to propagate the packet to all nodes with a high reliability while incurring minimum latency.This problem, called minimum latency broadcast scheduling (MLBS), has been studied extensively and has been shown to be NPhard [20].Applications for industrial automation often have very stringent requirements on communication reliability and transmission delay [12].Nevertheless, the harshness of industrial environments poses severe challenges on the design of energy-efficient IWSN upgrade code propagation.First, wireless channels are subject to multipath fading and interuser interference, which makes it extremely difficult to satisfy the Quality-of-Service (QoS) requirements of broadcast.Second, in realistic industrial environments, the machinery obstacles, metallic frictions, engine vibrations, and equipment noise as well as the humidity and temperature fluctuations also have adversary impacts on the reliability of end-to-end transmissions [12].Third, in IWSNs, the program code packet needed to be broadcasted is usually of high volume, making designing an Energy-Efficient Broadcast protocol an extremely difficult problem.
Although the process of code broadcast in WSNs has been deeply studied, the broadcasting reliability and delay and energy efficiency still need to be improved.We observed a special phenomenon called "energy hole" in sensor networks [11] which leads to a very low efficiency of energy utility.To be more specific, all the nodes send data to the sink node which is situated in one side of the linear network shown as Figure 1, but the "many-to-one" data collection mode causes such imbalance: the data loads of nodes in near-sink region (hotspots) are much heavier than those in far-sink region (nonhotspots).That is because they help transmit the packets generated by the outside nodes.The operation of transmitting data is the main source of energy consumption resulting in premature death of the nodes in hotspots as well as the network [21].Some related studies have shown that, due to the impact of energy hole, there still remains up to 90% energy in the network when it dies [11].For broadcast operation, a large broadcasting radius can improve the link quality between nodes [16]; however, it brings about a high energy consumption because of the increased data transmitting power.Since the far-sink nodes have much energy left, we believe this part of energy can be used to enlarge their broadcasting radius.Based on the above observations, in this paper, we propose a novel code packet broadcast scheme, called Energy-efficient Broadcast (EeB) which reduces the broadcasting delay and simultaneously improves the packet transmission reliability without harming the network lifetime.
The main contributions of this paper can be listed as follows.(1) We propose an Energy-efficient Broadcasting (EeB) scheme that synthetically improves the performance of packet broadcast for network upgrade which generally has three obstacles: the high volume of code packet, the constraint energy of sensor node, and the unreliable link quality between nodes.When designing the scheme, both the energy consumption in data collection stage and network upgrade stage are considered.

Source node Sink
(2) We studied the so-called "energy hole" phenomenon [4] which causes the unbalanced utility of energy in network and then develop an algorithm that addresses the selection of code packet broadcasting radius of sensor nodes according to their residual energy.The adjustable radius allows sensor node to consume its energy more flexibly, and therefore the energy can be used to the greatest extent.
(3) The effectiveness of our scheme is evaluated in terms of Network Upgrade Delay (NUD) and packet reception probability.And the performance of the EeB comparing with a previous broadcast scheme in which all sensor nodes adopt the Same Broadcast Radius (SBR) is given in both theory and simulation.
Through our theoretical studies and a series of simulations, we demonstrate that, for the scheme proposed in this paper, packet broadcasting delay, packet transmission reliability, and energy utilization radio can be improved simultaneously.Compared with the former approach, the broadcasting delay can be averagely reduced by as much as 14.8% to 45.2%.More importantly, it improves the above performances without harming the network lifetime, which is difficult to achieve in the studies of the past.
The rest of this paper is organized as follows.In Section 2, the related works are reviewed.The system model is described in Section 3. Section 4 elaborates the design of the novel Energy-efficient Broadcast (EeB) scheme for IWSNs.The performance analyses for EeB are provided in Section 5. Section 6 is experimental results and comparisons.Finally, we conclude in Section 7.

Related Works
The packet broadcast of WSNs has been formulated and investigated in the literatures [20,22,23].According to different applications, the existing studies can be briefly classified into the following two categories.
(1) The minimum-transmission broadcast (MTB) problem: in this kind of research, the target is to reduce the packet broadcast/transmission times of nodes.In previous studies, nodes are assumed to be active all the time, so reducing the transmission times is to find a Minimum Connected Dominating Set (MCDS) of the network [22,23].The nodes in MCDS can cover the entire network, so all nodes in network can receive packet as long as the MCDS nodes broadcast packets once.In [24], the authors proved that building a minimum flooding tree is identical to finding an MCDS.
The purpose of decreasing the broadcast times of node is to reduce its energy cost, which also had been intensively studied.[25] proposed a heuristic broadcast algorithm called Broadcast Incremental Power (BIP), which constructs a broadcast tree with the broadcast source node, the root of the tree.In the process of constructing the tree, a new uncovered node will be joined into the broadcast tree at the lowest energy cost.[26] further optimized BIP algorithm and proposed a more efficient search algorithm, r-shrink, which could reduce the total broadcast energy cost by rescheduling the nonleaf nodes of the constructed broadcast tree.
In most of the WSNs, a node alternates between dormant and active states which is developed and applied to WSNs for energy conservation [7].In broadcast mechanism, a node is required to transmit a message for multiple times to propagate the message to all of its neighbor nodes at different moments.As a result, the MTB problem in dutycycled networks (MTB-DC problem) needs to be investigated for solutions in which both the set of forwarding nodes and their broadcast schedules are identified.Related works include Level-Based Approximation Scheme proposed by Le Duc et al. [27].They first identified the forwarding nodes and their corresponding receivers for all time slots and then constructed a broadcast backbone by connecting these forwarding nodes to the broadcast source.
(2) The minimum latency broadcast scheduling (MLBS): in this kind of research, both decreasing the broadcasting delay and energy consumption of nodes are studied [20,28].
Zhao et al. [20] considered MLBS in duty-cycled WSNs and presented two approximation algorithms, BS-1 and BS-2, that produce a maximum latency of at most ((Δ − 1)) and (13), respectively.Here, Δ is the maximum degree of nodes,  denotes the number of time slots in a scheduling period, and  is the broadcast latency lower bound obtained from the shortest path algorithm.Khiati and Djenouri [28] proposed a Broadcast over Duty-Cycle and LEACH (BOD-LEACH) protocol, which takes advantage of LEACH's energy-efficient clustering.The proposed protocol adds new common static and dynamic broadcast periods to support and accelerate broadcasting.The dynamic periods are scheduled following the past arrivals of messages and using a Markov chain model.
Another application scenario that requires demanding broadcasting delay is Vehicular ad hoc networks (VANETs) where broadcasting must be fast and reliable such that all the vehicles in a certain area can receive the message as quickly as possible to implement series applications, for instance, constructing routes to reach a given destination, cooperating for traffic management, or preventing the driver of dangers on the road [29,30].In [29] Gonzalez and Ramos proposed PDB, a Preset Delay Broadcast protocol with a fixed delay for vehicles attempting to retransmit a warning message, which provides a fast and reliable dissemination.They showed that, by adequately setting the waiting time for the relay candidates, the delay to cover a given area can be significantly reduced, while at the same time preserving a good reliability.

System Model and Problem Statements
3.1.Network Model.In this paper, linear sensor network is adopted which has been studied by He et al. [9].The linear network is a network that consists of  + 1 homogenous static sensor nodes and 1 sink node; that is, node set Θ = {Θ 0 , Θ 1 , Θ 2 , . . ., Θ  , V  } is randomly deployed on a line, as shown in Figure 1.The subscript also represents the ID number of a node; for example, the ID of node Θ  is .V  represents the base station (called sink node) and is located in one side of the linear network; other nodes are common nodes, among which Θ 0 represents the first node of the network, called source node.The distance between any two adjacent nodes, say Θ  and Θ +1 , 0 ≤  ≤  − 1, is denoted as   m.For the convenience of calculation, the distance between any two adjacent nodes will be set to a common value,  m, that is,  1 =  2 = ⋅⋅ ⋅ =   = .The data packet generated by any node Θ  , 0 ≤  ≤  should be sent to the sink node by multihop route [31].Linear sensor network is generally applied in linear application environment such as industrial production line, monitor of traffic information, surveillance of boundary line, and detection of petroleum pipeline [9].
A real-world project which applied linear topology is provided.In the mines of the Nanyang Coal Industry Co., Ltd., Hengyang, China, the main haulage roadway is approximately 12,000 m long, and most return airways have lengths of more than 1000 m [32].This kind of underground coalmine tunnels is usually very long and narrow, and some tunnels are approximately thousands of kilometers in length but only several meters in width, as shown in Figure 2. Therefore, data transmission suffers from large delay, unbalanced energy consumption, and number of retransmission because of the unreliability of wireless links.Figure 3 shows the architecture of line topology used in the haulage roadway which contains many sensor nodes, one sink node, and one mine communication switch in the underground coalmine.In the data collection stage, the sensor node transfers sensed data (e.g., Gas concentration and CO concentration) to the sink node through multihop.All of the data are sent to the mine communication switch and are then transferred to the switch, certain types of servers, and routers on the ground.Finally, the relevant department obtains production information.On the contrary, code packets are transmitted from sink node to sensor nodes through broadcasting in the network upgrade stage.
The operation of network system is broken into rounds, and each node in network has a probability of  to generate a packet in each data collection round.We consider a static wireless sensor network where sensor nodes do not move once deployed.The energy of common node is limited, while the energy of the sink node is infinite.Since the event production rate of node that we considered is sparse, congestions will not occur during the process of packets' routing to the sink node.Therefore, we do not take account of the queue waiting delay of packets within nodes [33].
Once the network needs to be upgraded, sink node will send program code packets to its nearby nodes through broadcasting.If the nearby nodes can successfully receive the code packet, they will also broadcast the packet to their nearby sensor nodes and forth until all nodes in network receive the code packet to carry out the upgrade process.In order to save energy, nodes will broadcast its received packet only once for avoiding too much duplicate packet retransmission.And in order to avoid the back-transmission of code packet, every node will add its ID number to the header of the code packet before broadcasting, and every time a node receives a packet, it will determine whether to broadcast it or not by comparing its own ID to the ID stored in the header of the packet.If its own ID is bigger, then this code packet will be discarded.As the radio links between nodes are imperfect, failures of transmissions always exist in the process of code packet broadcast, which will be studied in later Section 4.1.However, as EeB lays special stress on designing a better broadcast algorithm, in data collection period, the packet transmission between any two nodes will be assumed as failure-free for the convenience of calculating the residual energy of sensor nodes.

Energy Consumption Model.
In this paper, we adopt the topical energy consumption model [4,8]; that is, in wireless communications, the energy consumption of packet transmission is divided into two parts, the power consumption of the power amplifier, which can be controlled, and other circuits power consumption, while the energy used for reception is mainly the circuits power consumption.The realistic node energy model obtained from measurement results can be found in [34].The transmission energy consumption,   , .
where  elec represents the transmitting circuit loss; both the free-space ( 2 power loss) and the multipath fading ( 4 power loss) channel models are used; if the transmission distance is less than the threshold  0 , the power amplifier loss is based on free-space model, while if the transmission distance is larger than or equal to the threshold  0 , then the multipath attenuation model is used;  fs and  amp are the energy required by power amplification in the two models;  is the number of bits in a packet.The above parameter settings are given in Table 1, as adopted in [1,4,6,8].And for the convenience of readers to understand this paper, Notations Section summarizes the notations used in this paper.

Problem Statements.
Improving the QoS of broadcast is a problem of multiple targets optimization.Some definitions are given to clearly describe the study objects of network we are trying to improve in this paper.
Definition 1. Network Upgrade Delay is denoted as  NUD . NUD refers to the time duration between the generation of program code packet in the sink node and the packet to be transmitted to all nodes in network through broadcasting.Let  sink stand for the time instant that code packet is generated in the sink node and  last present the time instant when the last node receives the code packet; then the Network Upgrade Delay minimization can be expressed as Definition 2. Network upgrade reliability is denoted as  NUR .It should be guaranteed, which means it should be higher than or at least equal to the minimum reliability, ℘, required by applications.Let   stand for the broadcasting reliability of the packet at the th hop of multihop routing from sink node to source node; then network upgrade reliability can be expressed as Definition 3. Network lifetime is denoted as ℓ.ℓ depends on the energy consumption speed of nodes.The energy consumption of node   consists of (a) communication energy; for instance,    and    are used for transmitting and receiving data packets in data collection period, (b) upgrade energy consumption,    and    , which are used for transmitting and receiving program code packets in network upgrade period.Since the death time of the first node is defined as the lifetime [11], maximizing the lifetime is to minimize the energy consumption speed of the first node, which is expressed as the following formula, where  ini represents the initial energy of node Θ  : ) . ( Definition 4. Effective energy utilization rate is denoted as   .
refers to the ratio of energy efficiently utilized and the total energy in the network which can be expressed as a formula below.Our target is to maximize the energy utilization of the whole network.  in the formula stands for the energy consumption of node Θ  : Obviously, the goal of EeB is to minimize the Network Upgrade Delay (NUD) and maximize the network upgrade reliability,  NUR , network life, ℓ, and effective energy utilization,   , which can be summarized as follows: In addition, the optimization goal is transformed into an optimization problem of energy consumption and the quality of broadcasting code packets during network upgrade stage in the case of constraint lifetime.The problem is characterized as a trade-off between energy consumption and the nodes' broadcasting radius [35].

Main Design of EeB
In this section, Energy-efficient Broadcast (EeB) scheme will be proposed.Firstly, the packet reception probability model of EeB scheme will be introduced and then the algorithm details will be described.

Mobile Information Systems
(1) Initialize: (1) Network performs data collection for  rounds.(1) ( 2) Network upgrades, i.e., the sink node broadcasts program code packets, so do other common nodes.(3) ( 3) Each node stores its energy consumption for data collection, Δ  , and code packet broadcast,   old , respectively.(4) For node Θ −1 to node Θ 0 Do (5) Calculate node's residual energy, Δ  , using Eq. ( 26). ( 6 C a l c u l a t en o d e ' s  new using Eq. ( 14).(10) End while (11) Reduce node's broadcast radius by Δ.// Make sure the broadcast energy cost is less than the residual energy.(12) End for (13) Output the broadcasting radius of every node, which can improve the network upgrade delay and reliability while the network lifetime can be guaranteed.
Algorithm 1: EeB for enlarging broadcasting radius of nodes.
where  is a coefficient which depends on the length of the packet [36].They pointed out that the packet reception probability remains () = 0.5 constantly when the communication distance is equivalent to the transmission radius.Meanwhile, Stojmenovic et al. confirmed the correction of the above probability model through series of experiments and drew such conclusion: when the length of the packet  = 120 bits,   ∈ [2,6], and  = 2, the error of the packet reception probability calculated by the above model is within 4% compared with the actual probability.
The above model is adopted in this paper to quantify the packet reception probability of receiver, and some parameters are set as  = 2 and   ∈ [2,6].Suppose the transmission radius ratio  = /.The relation between (),   , and  is depicted in Figure 4.For any   , () = 0 when  ≤ 0.5, and we have () = 0.5 when  = 1.That is, the probability that a sensor node can successfully receive a packet is 0.5 when the transmission radius of node is equivalent to the distance between the sender and receiver node.When the distance is larger or equal to two times transmission radius, the reception probability becomes 0.

EeB Algorithm.
In this subsection, we propose EeB algorithm which addresses the selection of broadcasting radius of nodes according to their residual energy, as shown in Algorithm 1. First, network performs data collection for  rounds, where  may vary in different situations to finish an event detection task.In each round, all nodes have the probability of  to generate an event which should be delivered to the sink node by one node each hop.After that, the network upgrade will be conducted using SBR, where all nodes use the same broadcasting radius to transmit the code packets.The broadcasting radius used in SBR is big enough to just meet the minimum reliability constraint of applications, based on which we enlarge the broadcasting radius of nodes in far-sink region to further improve the reliability.The original energy consumption for the above two steps (denoted as   and   old , resp.) will be stored in each node.Finally, every node tries to enlarge its broadcasting radius by Δ each time and calculate its new energy consumption for broadcasting; if the increased broadcast energy exceeds its residual energy, which causes a decline in network lifetime, then the radius will be reduced by Δ; if not, the above process will be performed again.The increment Δ actually determines how fast the radius increases.The bigger of the Δ, the faster of the algorithm, but more residual energy will remain unused.Whereas a small Δ can achieve a better energy utilization efficiency, the running time of the algorithm is more.

Energy Consumption in Data Collection Stage.
In this subsection, we first calculate the data load of nodes at different distances from the sink node and then provide the nodes with definite energy consumption in one round of data collection.
From Figure 1 we can see that for the node whose ID equals , it has to receive the data packets generated by the nodes whose ID are less than  and transmit the data packets generated by nodes whose ID are less than or equal to , that is, plus the packet generated by itself.Therefore, the total amount of packets that node Θ  needs to receive and transmit in one data collection round is  and  + 1.Since the data generation rate is , the data loads should be multiplied by ; that is, Corollary 5.In EeB, for the node whose ID equals , its total energy consumption, denoted as    , in one round of data collection can be calculated as Proof.For the node whose ID is , the data load it undertakes is    .Once a node receives a data packet, it will transmit the packet to its next node, so if the distance between two adjacent nodes is  ≤  0 , the energy consumed for transmitting one packet is  ,1 =  elec +  fs  2 , while if   >  0 , the energy will be  ,2 =  elec +  amp  4 .Hence, the total energy used for a node to transmit data packets in data collection period is The energy spent for a node to receive one packet is constantly   =  elec , and a node does not need to receive its own data packet, so the receiving data load is    =    − 1.Therefore, the total energy consumed for a node to receive data packets in a data collection round is Figure 5 is given to show the energy consumption of nodes for data collection versus different distances between two adjacent nodes.Obviously, the node with bigger ID consumes more energy for undertaking packets generated by nodes with smaller ID, which causes unbalance on the energy utility.And it is more uneven when  is bigger.

Energy Consumption in Nodes Upgrade Stage.
In this subsection, we analyse the energy usage conditions of nodes in network upgrade stage.Theorem 6.In network upgrade stage, nodes will broadcast their received code packet only once; therefore, all nodes have the same receiving and transmitting packet load except for nodes in the front and tail of the linear network.We give the calculation of data load of the middle nodes, which take up almost the entire network, and several front and tail nodes can be computed in the same manner.
where  is the broadcasting radius of nodes.
Proof.In Section 4.2, we know that it is possible for a node, V  , to receive a code packet from another node, V  , if the distance between node V  and node V  is less than 2.Hence, the total amount of nearby nodes that node V  can receive packet from is 2 ⋅ ⌊2/⌋.However, the reception probability from these 2⋅⌊2/⌋ nodes should be divided into two kinds, specifically, for nodes whose distance, , to node V  is less than , the probability is 1 − 0.5(/)   , while if the distance is within [, 2], then the probability becomes 0.5(2 − /)   .For the transmitting data load, if node V  can successfully receive a code packet, it will broadcast the packet to its 2 ⋅ ⌊2/⌋ nearby nodes, and as node V  will broadcast the packet only once, the data load should be 2 ⋅ ⌊2/⌋, while if node V  fails to receive a code packet, the transmitting data load is 0.

Corollary 7. For a node whose packet transmission radius is 𝑅 m, the energy consumption, denoted as 𝐸 𝑢
, of it in network upgrade stage can be calculated as The proof of Corollary 7 is the same as Corollary 5.
As shown in Figure 6, the simulative results of broadcast energy consumption fit the numerical results well, and several nodes in the front and tail of network have lower energy consumption because the number of their neighbor nodes is less than 2 ⋅ ⌊2/⌋.broadcasts its received code packet to the nearby nodes within its communication range (< 2).In order to easily study the delay and reliability of code packet propagation, we divide all nodes in linear network into ⌊2/ − ⌋ classes, where  is a small enough decimal number.If the ID of a node satisfies mod (ID/) = 0, where 1 ≤  ≤ ⌊2/ − ⌋, then we say this node belongs to the node set of class .The class set of nodes can be expressed as { | mod (ID/⌊2/ − ⌋) + 1 = }.The practical meaning of  is the number of nodes that a packet will go through by one hop in broadcast stage, which is called one-hop forwarding distance.For instance,  = 1 means the code packet is transmitted from sink node to source node one by one,  = 2 means two by two, and so forth.Note that a node can simultaneously belong to more than one class set; for example, a node whose ID is an even number belongs to class 2 set, while it also belongs to the class 1 nodes set.

Source node Sink
Theorem 8.The probability that a code packet can be transmitted successfully between two nodes of the same class, say , can be calculated as where  is a decimal which is small enough.Subtracting where the packets received from the nodes of smaller ID are excluded.
An example for better explaining the above idea is given in Figure 7.When ⌊2/⌋ = 4, nodes are divided into 3 classes.Suppose Θ +4 , Θ +5 , and Θ +6 are classes 3, 2, and 1 node, respectively, and they simultaneously broadcast their received packets.Packets from Θ +4 can reach Θ +1 , which is also a class 3 node, and similarly, the farthest node that the other two nodes can reach is the one with the same class.In this broadcast hop, node Θ +3 ( = 1) has three chances to receive packets from three nodes with larger ID, that is, Θ +4 , Θ +5 , and Θ +6 .While Θ +2 ( = 2) can only receive packets from two nodes, that is, Θ +4 and Θ +5 , and so on.In the next broadcasting hop, node Θ +2 will have a new chance to receive code packet from node Θ +3 , making it become a class 1 node.Similarly, node Θ +1 ( = 3) becomes a class 2 node, and a new node Θ −2 will become a class 3 node for having one chance to receive packet from node Θ +1 .
The packet reception probability of packet delivered by nodes of the same class is shown in Figure 8 indicating that nodes have higher reception probabilities with the increment of broadcasting radius.And the small-class nodes have relatively high reliabilities for having short transmission distances.

Network Upgrade Delay.
We define the average transmission hops needed to transmit the program code packets from sink node to source node through nodes of the same classes as Network Upgrade Delay (NUD).Obviously, the NUD describes how fast the network can be thoroughly upgraded by a certain class of nodes.

Theorem 9. For the class 𝑥 nodes, their Network Upgrade Delay (NUD) can be calculated as
where   can be calculated by ( 15).Proof.For nodes of class , ⌈/⌉ broadcast hops are needed to transmit code packets from sink node to source node if they do not take the reception failure into consideration.And one-hop reception reliability of   yields the average broadcast hops as Figure 9 is given to show the NUD of nodes with different  and  settings.After eliminating some classes of extreme large NUD, we can see that middle-class nodes have relative small NUD compared with nodes of smaller and bigger classes.And it is easy to explain the above phenomenon: although small-class nodes have high packet reception reliability, their one-hop forwarding distance is too short, so more hops are needed; while big-class nodes have long one-hop forwarding distance, failure of packet reception always exists, so more hops are also needed.Therefore, there must be a trade-off between them.
In addition, to clearly show the exact value of NUD of different-class nodes, we give Figure 10 by zooming in Figure 9, where the shortest NUD of different-class nodes are circled.The larger the broadcasting radius is, the less the broadcast hops are needed for all nodes in network to receive code packets, which means the Network Upgrade Delay is shorter.
In our scheme, we try to enlarge the broadcasting radius of the far-sink nodes, and generally, the further a node is from the sink node, the larger the radius it has.Since different nodes have different broadcasting radii, all nodes in network cannot be simply divided into ⌊2/−⌋ classes.To obtain the actual value of NUD of EeB, we need to calculate the one-hop broadcasting delay.
Theorem 10.For a node Θ  , suppose its broadcasting radius is m, then its average one-hop broadcasting delay can be obtained as follows: where   can be calculated by (15), and  is the one-hop forwarding distance, which equals the difference of the ID between node Θ  and Θ  whose ID meets  −  = .
Proof.The code packets broadcasted from node Θ  can be received by ⌊2/ − ⌋ nodes on its left side, and these nodes have different packet reception probabilities which can be calculated by (15).The average one-hop broadcasting delay is the hops needed for node Θ  to successfully receive a code packet from node Θ  , where node Θ  is supposed to be the node which can deliver the code packet to the source node as quick as possible making a minimal NUD.Therefore the one-hop broadcasting delay should balance the one-hop forwarding distance and packet reception probability.Since the reception probability is   , the hop count is 1/  .
Figure 11 is given to show the average one-hop broadcasting delay, from which we can see nodes with different broadcasting radii having very similar one-hop delay.Note that a low one-hop broadcasting delay does not mean a low NUD because the number of broadcasting hops is another important factor of NUD.Since in EeB nodes of different distances to the sink node have different broadcasting radii, combining them, we can get the actual value of NUD of EeB, so the following theorem is deduced.
Theorem 11.Suppose a linear network is composed of  + 1 sensor noses and the distance between any two adjacent nodes is m, then in EeB, the Network Upgrade Delay (NUD) can be calculated as where     stands for the expectation one-hop delay of the packet at the node with ID = , whose broadcasting radius is   ,   denotes the selected  by the node with ID =  using (19), and  denotes the sink node V  especially.
Proof.Since nodes have different packet broadcasting radii, the actual value of NUD of EeB is the sum of each different one-hop delay, and each one-hop forwarding distance is also different but can be determined by (19).In broadcast operation, packets pass through several nodes each hop instead of one by one, so we use  =  +  +1− to show the route path of packets.
Figure 12 shows the Network Upgrade Delay.The index of -axis (original broadcasting radius) means the common radius adopted by all nodes in SBQ, which is also the start point for EeB to increase.Theorem 12.In linear network, the weighted one-hop broadcasting delay (denoted as  +1  ), which reflects the universality of the reduced delay with EeB approach, can be calculated as where the variables are the same as the corresponding items in Theorem 11.Proof.The total number of nodes in linear network is  + 1; therefore for a node Θ  , the one-hop broadcasting delay of the network upgrade can be expressed as (1/(+1))    .Integrally, to the entire linear network, the weighted delay of one-hop code packet broadcast is as follows: Figure 13 is given to show the weighted one-hop broadcasting delay of network.

Energy Utilization Rate of Network. The innovation of
EeB protocol is using the residual energy of far-sink nodes to enlarge their code packet broadcasting radius, by which the QoS of network update is improved as well as the energy utilization rate.In this subsection, we evaluate the performance of EeB in terms of the enhanced energy usage rate.
Theorem 13.In EeB protocol, the energy utilization rate of network containing  + 1 sensor nodes can be calculated as where    is the energy used for collecting sensed data and    is spent in broadcasting code packets by node Θ  whose initial energy is    .
Proof.According to Definition 4 in Section 3.3, the energy utilization rate of network is the ratio of energy efficiently utilized and the total energy in the network.Each node has two parts of energy consumption, that is, collecting data and broadcasting code packets, respectively, so the above equation is obtained.
Figure 14 displays the situations of energy utilization rate when the network dies.It can be seen that, in EeB, at least 50% energy has been effectively utilized by sensor nodes, illustrating that a great energy efficiency has been made by EeB compared with SBR.

Network Lifetime.
In this subsection, we provide the calculation of network lifetime which can be maintained in EeB protocol because the increased energy for broadcasting code packets is always kept below or equal to the residual energy of nodes.Theorem 14.Consider that the initial energy of each node in network is   ; in EeB, the lifetime (denoted as ℓ) of network can be obtained as where    ,    are the energy consumption of the node consuming the most energy in data collection stage and network update stage, respectively.
Proof.The node consuming the most energy dies first, and its energy consumption can be calculated as (  max +   max ).Since the death time of the first node is defined as the lifetime of network [11], the lifetime of network can be obtained by

Experimental Evaluation of EeB
In this section, we evaluate the experimental performance of Energy-efficient Broadcast (EeB) scheme in terms of energy consumption and NUD compared with SBR in which all nodes in network adopt the same broadcasting radius.OMNET++ is employed for simulative verification [37].Without loss of generality, the network parameters are as follows: event generation probability of node in data collection period is  = 0.1 and 40 nodes are randomly deployed in line with 1 sink node at one side; after  = 10 rounds of data collections the network upgrade will be conducted, and the increment of broadcasting radius is Δ = 1 m.Other parameter settings will be particularly indicated.the close-sink nodes consume more energy, which causes unbalance of energy usage in network.The remaining energy of far-sink nodes is called residual energy, and the residual energy of node with ID = , that is, Θ  , can be calculated as where   max is the energy consumption of the node which consumes the most energy and    is the energy consumption of node Θ  ; both are during the data collection period.
After enlarging the broadcasting radius, a node will have a new energy cost for broadcasting packets, and this increased broadcasting energy can be computed as where   new, and   old, are the new and old broadcasting energy cost of node Θ  , respectively.
Figures 15 and 16 are given to show the simulative and theoretical energy consumption of nodes.We can see that the further the node is from the sink node, the more the residual energy it has, which can be used to enlarge its broadcasting radius.In EeB, node's Δ  always remains lower than its Δ  , so the lifetime of network can be maintained.The corresponding enlarged broadcasting radius of nodes is shown in Figures 17 and 18, respectively.

Energy Utilization Rate of Network.
Figure 19 shows the simulative results of energy utilizations of network which are consistent with the previous theoretical analyses shown in Figure 14.The corresponding reduced ratio of energy usage rate is presented in Figure 20 illustrating that at least 20% of improvement has been made.Generally, the delay of EeB is lower than SBR which indicates the great efficiency of EeB in improving the network upgrade speed.The delays of middle nodes are relatively larger and vary a lot.We also simulated the actual hops needed for the entire network to be upgraded, that is, the time duration from the generation of program code packet in sink node to all sensor nodes in network receiving code packets as shown in Figure 22.The one hop of broadcast is defined as all sensor nodes owning code packets broadcast the packet to their nearby nodes.The delay of network upgrade is measured by the number of broadcasting hops.Specifically, the Network Upgrade Delay is enhanced by 14.8%-45.2%as shown in

Network Upgrade Reliability.
The packet reception reliability is evaluated in this subsection.In the simulation, we recorded the average amount of code packets received by nodes in the network upgrade stage, and two experimental results are given in Figure 24.In the first experiment, the average distance between two adjacent nodes was set to be 30 m and the broadcasting radius used in SBR was 60 m.Significantly more packets were successfully received, which demonstrates a higher reliability of EeB.Similar situation can be seen in the second experiment, where the average distance between two nodes was 40 m and the broadcasting radius remained the same.In case 2, many nodes failed to receive a packet, while EeB had a better performance.

The Effect of Parameters.
Parameter  represents the probability of generating an event in every data collection round.It is determined by the number of nodes and detection targets of the network.In general, the bigger  is, the more the energy the nodes consume for delivering more data packets in data collection stage, as shown in Figure 25.In this way, the parameter  will affect the network lifetime.Figure 26 shows the different lifetime under different  (0.08, 0.10, 0.12, and 0.15).The simulative results show that the greater , the shorter the network lifetime, which are consistent with the theoretical analyses.In addition, the lifetimes of EeB are almost the same as that of SBR, which indicates the original lifetime can be guaranteed in EeB.

Conclusion
In smart Industrial Wireless Sensor Networks (IWSNs) in which sensor nodes adopt a programmable technology, it is an important issue to upgrade the software of sensor nodes with high reliability and low latency.Generally, the network upgrade process starts when sink node propagates program code packets to its nearby nodes, and most of the existing studies focused on constructing spinning tree and reasonable dispatching time slot to reduce packet broadcasting delay and energy consumption of nodes.Different from them, the Energy-efficient Broadcast (EeB) scheme proposed in this paper adopts a novel strategy to enlarge the packet transmission radius of nodes in far-sink region using their residual energy caused in data collection period.Hence, the packet broadcasting reliability and delay can be simultaneously improved.The EeB scheme addresses efficiently using the residual energy; however, the broadcasting behaviour of sensor nodes is too naive.We simply assume that nodes broadcast their packets only once for avoiding too much duplicate packet retransmission.However, some redundant packets retransmissions still exist because nodes are unable to know whether or not their nearby nodes have received the codes packets, so they will do the unnecessary packet transmission.In further work, we are trying to fill this gap by redesigning the behaviour of nodes to make them appreciable.

Notations
: The power used for receiving a packet   : The power used for transmitting a packet   : The transmitting packets load of a node during data collection period   : The receiving packets load of a node during data collection period   : The transmitting packets load of a node during network upgrade period   : The receiving packets load of a node during network upgrade period : The common distance between any two adjacent nodes in linear network (m) : The broadcasting radius of nodes (m) : Event production rate.

Figure 3 :
Figure 3: Architecture of line topology in the haulage roadway.

6 Figure 4 :
Figure 4: The expected packet reception probability versus transmission radius ratios.

Figure 5 :
Figure 5: Data collection energy consumption of node.

Figure 7 :
Figure 7: The process of broadcasting program code packets.

Figure 14 :
Figure 14: Energy utilization rate of network.
Figure 21  presents the simulative results of the average one-hop broadcasting delay.

4 Figure 16 :Figure 17 :
Figure 16: The increased energy used for enlarging broadcasting radius of node when  = 40 m and  = 60 m.

Figure 23 .
Figure 23.The bigger the transmission radius ratio (/), the larger the reducing rate.

Figure 20 :Figure 21 :
Figure 20: The average ratio of enhancing energy utilization rate.

Figure 24 :
Figure 24: Average amount of packets received by node.

Figure 25 :
Figure 25: Data collection energy consumption versus different .
(1)lows(1)and energy consumption for reception,   , follows is because when 2 is exactly an integral multiple of , the packet reception probability of number 2/ node is 0; see Section 4.1, which results in that infinite hops are needed to transmit a code packet from the sink node to the source node, so this case should be excluded.Proof.All nodes in network are divided into ⌊2/ − ⌋ classes.During the code packets broadcast stage, nodes of different classes have different packet reception probabilities in each broadcast hop.For a class  node, say Θ  , it can receive the code packets from another node Θ  whose distance to it is less than or equal to (⌊2/⌋ − ); thus, its final packet reception probability should be