Abstract
In order to construct an efficient wireless sensor system, it is necessary to increase the lifetime of its battery-operated sensor nodes. To this end, a wireless body sensor system adopts a transmission power control (TPC) mechanism. However, existing TPC mechanisms adjust the transmission power level (TPL) according to the received signal strength indication (RSSI) value of the most recently received data packet. Therefore, they do not effectively cope with dynamically changing wireless body channel environments. In particular, when a wireless channel is unstable, changes in the TPL should be avoided to prevent energy consumption due to unnecessary transmission and reception of control packets. Accordingly, this paper proposes a new TPC mechanism that adaptively changes the control packet transmission interval on the basis of the current channel condition. Further, actual sensors are used to experimentally verify that the proposed mechanism (1) performs well in all channel environments and (2) facilitates the construction of an efficient wireless body sensor system.
1. Introduction
Recent developments in smartphone technology and the subsequent proliferation of smartphones have fueled the development of other types of portable devices, including wearable devices. Wearable devices were originally developed for military training [1]; nonetheless, they are becoming increasingly popular, and the development of devices such as smart glasses and smart watches is attracting considerable attention. This trend has led to a growing demand for similar devices to facilitate healthcare services [2–5]. For example, wireless body sensors, attached to wearable or implantable devices, deliver information to a sink node, which in turn can transmit the information to a smartphone. Therefore, the wireless body sensors and the sink node constitute a wireless body sensor system (WBSS).
Because wearable or implantable devices are attached to or implanted in the human body, they house extremely small wireless body sensors. Consequently, the batteries used in these body sensors have a short lifetime. Therefore, in order to utilize the sensors for as long as possible, the energy efficiency of sensor nodes should be energy-efficient. Sensor nodes can transmit data at different transmission power levels (TPLs); data transmission at an appropriate TPL based on the channel condition not only guarantees reliable data transmission but also entails low energy consumption. On the other hand, a TPL that is too high or too low may result in unnecessary energy consumption or data loss. In order to prevent this, the sink node attempts to determine the optimal TPL using the transmission power control (TPC) mechanism. Next, the sink node notifies the sensor node of the optimal TPL through a control packet. The sensor node then employs the optimal TPL when transmitting a data packet. Using such a TPC mechanism allows a wireless body sensor system to transmit data in an efficient and reliable manner [6, 7].
In the TPC mechanism, transmitting data packets at the optimal TPL is an important consideration from the perspective of saving energy. When the current TPL is not the optimal TPL, the sink node should swiftly send a control packet to the sensor nodes so that they may alter their TPL to the optimal value. However, the energy consumption due to frequent transmission of control packets might exceed the energy savings due to TPL control of the data packets. This reduces the overall efficiency of the wireless body sensor system. To overcome this drawback, previous studies have attempted to control excessive changes in the TPL with a target RSSI margin. The target RSSI margin denotes a certain range of values from the target RSSI point, which can be considered optimal. When the RSSI value of a data packet is within the target RSSI margin, the sink node does not change the TPL, thereby preventing energy consumption due to control packet transmission [8]. However, the target RSSI margin technique operates effectively only when the wireless channel is stable. When the channel is unstable, the RSSI value falls outside the target RSSI margin whenever a data packet is transmitted. This results in excessive control packet transmission, thereby lowering the energy efficiency of the system drastically. Therefore, this paper proposes an adaptive TPC mechanism that is energy-efficient under any wireless channel condition, as it adaptively varies the control packet transmission interval on the basis of the wireless channel condition.
The remainder of this paper is organized as follows. Section 2 introduces background knowledge and related studies, while Section 3 explains the proposed TPC mechanism. Section 4 presents the experimental environments and results obtained. Finally, Section 5 states the conclusions of the study.
2. Background Knowledge and Related Work
2.1. Background Knowledge
A wireless body sensor system consists of sensor nodes and a sink node. The sensor nodes transmit information sensed by the body sensor through data packets. The sink node gathers this information by receiving the data packets from the sensor nodes. The sink node also determines whether to change or maintain the TPL value of the sensor node on the basis of the RSSI values of the received data packets. The TPL value, which is received from the sink node through a control packet, is used at the sensor nodes for transmitting a data packet. Therefore, when the RSSI value of a data packet frequently does not fall at the target RSSI point, the sink node frequently changes the TPL, thereby lowering the overall energy efficiency of the wireless body sensor system. In order to prevent this, most TPC mechanisms adopt the TPC model. This TPC model sets the target RSSI margin which includes a certain range of RSSI values from the target RSSI point. If the RSSI value of a data packet is within the target RSSI margin, the sink node does not update the TPL, thereby preventing energy consumption due to control packet transmission.
The closed loop TPC mechanism is used to implement the TPC model. Figure 1 shows a flow chart of the closed loop TCP mechanism. Under this mechanism, the sensor node transmits sensed information to the sink node through data packets. When the sink node receives a data packet from a sensor node, it first measures the RSSI value of the data packet. If the measured RSSI value is within the target RSSI margin, the sink node does nothing and waits for the next data packet from the sensor node. If the measured RSSI value falls outside the target RSSI margin, the sink node calculates a new TPL value using a TPC algorithm. When the newly calculated TPL value differs from the current TPL value, the new TPL value is sent to the sensor node through the control packet. The sensor node that receives the control packet extracts the new TPL value from the packet and sets it as the TPL value to be used when transmitting the next data packet.

Closed loop TPC mechanism.
2.2. Related Work
In the closed loop TPC mechanism, a TPC algorithm is important because it calculates an appropriate TPL for data transmission. In general, a TPC algorithm determines the optimal TPL value using the RSSI value of a received data packet. The most representative TPC algorithms are the linear, binary, and dynamic algorithms. The linear TPC algorithm linearly decreases or increases the TPL value when the RSSI value falls outside the target RSSI margin [9]. The linear algorithm is the simplest algorithm, but it changes the TPL gradually. Therefore, it takes a long time to determine the optimal TPL and requires a large number of control packets to be sent. The binary TPC algorithm exponentially increases or decreases the TPL value according to the RSSI value [10]. If the RSSI value falls outside the target RSSI margin and is smaller than the target RSSI point, the TPL value is elevated to the average of the previous TPL value and the maximal TPL value. Conversely, if the RSSI value is larger than the target RSSI point, the TPL value is lowered to the average of the previous TPL value and the minimal TPL value. In the dynamic TPC algorithm, a straight-line equation is derived using two RSSI values, and, then, the optimal TPL is found using this equation [11]. The binary and dynamic TPC algorithms approach the optimal TPL value more swiftly than the linear TPC algorithm; therefore, they send a smaller number of control packets. However, when the channel is unstable, these TPC algorithms may predict the optimal TPL incorrectly owing to large changes in the TPL value. There exist various modified versions of linear, binary, and dynamic TPC algorithms that are based on a similar core concept [12–16].
In a wireless body sensor system, the energy consumed by a sensor node includes data packet transmission (Data TX) energy and control packet reception (Control RX) energy. Data TX energy is used to send data packets to the sink node, while control RX energy is used to receive control packets from the sink node. The energy consumed by the sink node includes data packet reception (Data RX) energy and control packet transmission (Control TX) energy. The total energy used to send and receive data packets is called Data energy, whereas the total energy used to send and receive control packets is called Control energy. As compared to the sink node, a sensor node is important for energy efficiency because, in most cases, it is smaller than the sink node, and, hence, it may be difficult to replace its battery. Therefore, it is necessary to develop a TPC mechanism that reduces the energy consumption of a sensor node.
3. Proposed TPC Mechanism
When the wireless channel is unstable, the RSSI value of a data packet falls outside the target RSSI margin. In this situation, changing the TPL value through a control packet is not advantageous in terms of saving Data TX energy because the channel continues to fluctuate. In other words, when the channel is unstable, the transmitted TPL cannot be optimal because the channel condition changes repeatedly. Accordingly, the TPL value falls outside the target RSSI margin repeatedly, resulting in frequent calculation and delivery of a new TPL value through a control packet; the energy consumption due to such unnecessary transmission of control packets might exceed the energy savings due to TPL control of the data packets. Therefore, TPL control through control packet transmission is effective only when the channel is stable. However, a long control packet transmission interval is not desirable. When the interval is too long, it does not reflect the changing channel environment sufficiently fast, and data packets may be transmitted at an inefficient TPL, causing an increase in the energy or even packet loss. Therefore, a method that adaptively adjusts the control packet transmission interval on the basis of the current channel condition is needed.
In order to dynamically set the control packet transmission interval on the basis of the channel condition, the proposed TPC mechanism first determines whether the channel is stable. To this end, the proposed TPC mechanism utilizes the difference between the average RSSI of data packets received after the last control packet transmission and the RSSI value of the most recently received data packet. When this difference is small, the channel is assumed to be stable; otherwise, the channel is assumed to be unstable. When the channel is stable, the proposed TPC mechanism calculates a new TPL value using the binary TPC algorithm. Then, if the calculated TPL differs from the current TPL, it is sent to the sensor node through a control packet in order to change the current TPL. In contrast, when the channel is unstable, it continues to fluctuate, and, therefore, a new TPL is not calculated and a control packet is not sent until the channel becomes stable. When the channel is determined to be stable again on the basis of continuous channel observation, a new TPL is calculated and sent through a control packet. The proposed TPC mechanism makes decisions by averaging the RSSI values of data packets during the control packet transmission interval. Therefore, even though the RSSI value of a data packet is too large or if the packet is temporally dropped, the mechanism remains unaffected and stably adjusts the TPL.
Pseudocode 1 shows the pseudocode of the proposed TPC algorithm. The algorithm compares the average RSSI of the data packets received after the last control packet transmission (avgRSSI) with the RSSI value of the most recently received data packet (curRSSI). If the difference between avgRSSI and curRSSI is smaller than a certain threshold, the wireless channel is assumed to be stable and a new TPL value is calculated using the binary TPC algorithm. Then, the avgRSSI, sumRSSI, and aggCount values are reset. If the difference between avgRSSI and curRSSI is larger than the threshold, the channel is assumed to be unstable; thus, TPL calculation is deferred and a control packet is not sent. Instead, the values of sumRSSI and aggCount are updated in order to calculate avgRSSI.
newTPL← aggCount← 0 avgRSSI← 0 sumRSSI← 0 aggCount←aggCount + 1 sumRSSI←sumRSSI + curRSSI avgRSSI←sumRSSI / aggCount
4. Experiments
4.1. Experimental Environments
The experiments were conducted using actual sensor equipment (CC1000 Radio module, Cricket Mote; Crossbow Technology [17]). The CC1000 Radio module has 23 transmission power levels [18]. Table 1 lists the values of the CC1000 Radio module's transmission current and output power according to the TPL. Table 2 lists the experimental parameters.
Transmission current and output power according to TPL.
Experimental parameters.
Figure 2 shows the body movements adopted in the experiments: standing (left), walking (middle), and running (right).

Body movement for the experiments.
Figure 3 shows the sensor placements for the experiments. The sink node was strapped to the subject's chest and the sensor node was strapped to the subject's back and stomach. Figure 4 shows the body movement pattern followed in the experiments. The body movement pattern was a cycle of standing, walking, standing, running, walking, and running states. Each state was maintained for 60 seconds, and, therefore, a cycle spanned 360 seconds. The time frame of the entire experiment was 1,800 seconds (5 cycles).

Sensor placements for the experiments.

Body movement pattern.
4.2. Experimental Results
Figure 5 shows the total energy consumption according to the type of TPC algorithm and the control packet interval. In this experiment, the control packet interval was set at 1, 2, and 4. In addition, the linear TPC algorithm and the binary TPC algorithm were used. As shown in the graph, the longer the control packet interval is, the greater the reduction in total energy consumption is, and, thus, the higher the energy efficiency of the system is. In addition, the binary TPC algorithm affords greater energy efficiency than the linear TPC algorithm because it approaches the optimal TPL more swiftly than the linear algorithm. Accordingly, the proposed TPC mechanism utilizes the binary TPC algorithm as the basic TPC algorithm for TPL calculation.

Total energy consumption according to TPC algorithm.
Figure 6 shows the total energy consumption according to the control packet transmission interval. It may be assumed that the longer the control packet transmission interval is, the lower the energy consumption is, as fewer control packets are transmitted. However, as shown in the graph, when the interval is too short or too long, it negatively affects energy efficiency. If the interval is too short, the energy consumption due to control packet transmission is too high. If the interval is too long, the conservation of Data TX energy is too low.

Total energy consumption according to control packet transmission interval.
Figure 7 shows the TPL changes and cumulative number of control packets using the binary TPC algorithm under stable and unstable channel conditions. The channel is stable when the sensor node is strapped to the stomach and the subject is standing. The channel is unstable when the sensor node is strapped to the back and the subject is running. When the channel is stable, most RSSI values do not fall outside the target RSSI margin and there is no need to change TPL by transmitting a control packet. On the other hand, when the channel is unstable, the RSSI values frequently fall outside the target RSSI margin owing to the rapid fluctuations in the channel condition. Thus, the binary TPC algorithm frequently sends a control packet in order to change the TPL and unnecessarily consumes energy. In contrast, the proposed TPC mechanism adaptively reduces energy consumption by dynamically adjusting the control packet transmission interval on the basis of the current channel condition. It does not transmit a control packet when the channel is unstable. Therefore, the energy efficiency of the wireless body sensor system increases.

TPL changes and cumulative number of control packets according to good and bad channel conditions with the binary TPC algorithm.
The proposed TPC mechanism determines the channel condition on the basis of the difference between the average RSSI of the data packets received after the last control packet transmission and the RSSI value of the most recently received data packet. If this difference is larger than a certain threshold, the TPC mechanism assumes that the channel is unstable; thus, it does not calculate a new TPL and defers control packet transmission. On the other hand, when the difference is smaller than a certain threshold, the TPC mechanism assumes the channel as stable, calculates a new TPL, and sends the new TPL through a control packet. Accordingly, the performance of the proposed TPC mechanism may depend on the threshold value.
Figures 8 and 9 show the TPL and RSSI and the total energy consumption, respectively, according to threshold for the proposed TPC mechanism. When the threshold value is set at 5, the number of control packets reduces considerably. This is because only when the difference between the average of the aggregated RSSI values and the current RSSI value is 5 or smaller, the channel is determined to be stable and the TPL is adjusted by sending a control packet. When the difference is larger than 5, the proposed TPC mechanism does not send a control packet but waits for the abovementioned difference to be 5 or smaller. However, this waiting time may be too long; meanwhile, data packet transmissions with inappropriate TPLs may cause an increase in the Data TX energy or even packet loss. When the threshold value is set at 100, the control packet is sent frequently because in most cases, the difference between the average RSSI and the current RSSI value is 100 or smaller. As a result, the TPL value continues to fluctuate and the RSSI values are scattered. According to these results, the proposed TPC mechanism is found to have an adverse effect on energy efficiency when the threshold value is too small or too large. Therefore, an appropriate threshold value should be set. In the experiments, it was observed that the reduction in the number of control packets was most effective when the threshold was set at 20. Therefore, 20 were selected as the threshold value.

TPL and RSSI according to threshold.

Total energy consumption according to threshold.
Figures 10 and 11 show the TPL and RSSI values plotted against time when using the binary TPC algorithm and the proposed TPC algorithm, respectively. In the experiments, the sensor node was strapped to the subject's back. As shown in Figure 10, if the binary TPC algorithm is used, most RSSI values fall outside the target RSSI margin when the subject is walking or running, even though the TPL values are varied through control packets. This is because the channel fluctuates continuously and is unstable in the walking and running states. A similar phenomenon occurs in the case of the linear TPC algorithm. On the other hand, in the case of the proposed TPC algorithm, as shown in Figure 11, most RSSI values are concentrated in the target RSSI margin of −90 to −80 dBm. When the subject is running, there may be a slight fluctuation, but it is not as much as that in the case of the binary and linear TPC algorithms. In most cases, the proposed TPC algorithm determines an appropriate TPL and maintains it effectively. Therefore, it has been shown that the proposed TPC mechanism is more energy-efficient than the existing binary and linear TPC algorithms.

TPL and RSSI using the binary TPC algorithm.

TPL and RSSI using the proposed TPC algorithm.
Figure 12 shows the number of control and dropped packets according to the type of TPC algorithm. The number of dropped packets is similar in all the cases. However, the number of control packets varies considerably. When the binary TPC algorithm was used, a control packet was sent 1,266 times and when the linear algorithm was used, a control packet was sent 402 times. On the other hand, the proposed TPC algorithm, which adaptively adjusts the control packet transmission interval, sent only 94 control packets—a decrease of around 90% compared to the binary algorithm.

Number of control and dropped packets according to TPC algorithm.
Figure 13 shows the total energy consumption according to the type of TPC algorithm. Data RX energy and Data TX energy are similar in all the cases. However, in the case of the proposed TPC algorithm, which dynamically adjusts the control packet interval according to the channel environment, Control RX energy and Control TX energy are considerably lower (around 90% lower compared to the binary TPC algorithm).

Total energy consumption according to TPC algorithm.
Therefore, the experimental results show that the proposed TPC algorithm considerably reduces energy consumption by dynamically decreasing the number of control packets according to the channel environment. The total energy consumption of the binary algorithm, which sends a control packet whenever the RSSI value falls outside the target RSSI margin, was 6,003.6 mJ. On the other hand, the total energy consumption of the proposed TPC algorithm was only 2,987.2 mJ. Thus, the proposed TPC algorithm is nearly twice as energy-efficient as the binary TPC algorithm.
5. Conclusion
This paper proposed a new TPC mechanism that adaptively changes the control packet transmission interval on the basis of the wireless channel condition. The proposed TPC mechanism increases the lifetime of sensor and sink nodes in a wireless body sensor system by making the system energy-efficient. To this end, it drastically reduces the number of unnecessary control packet transmissions in an unstable wireless channel. When the channel is unstable, the RSSI values of data packets may frequently fall outside the target RSSI margin, even though the TPL is changed via control packet transmission. Accordingly, energy can be saved by preventing control packet transmission until the channel becomes stable. Therefore, the proposed TPC algorithm sends a control packet and changes the TPL only when the difference between the average RSSI of the data packets received after the last control packet transmission and the RSSI value of the most recently received data packet is less than a certain threshold. Thus, it significantly reduces energy consumption due to unnecessary control packet transmission under fluctuating channel conditions, thereby enhancing system performance. Future research will focus on the application of the proposed TPC mechanism to more diverse wireless human body environments and analytical evaluation of its performance.
Footnotes
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Acknowledgment
This research was supported by the Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education, Science and Technology (Grant no. 2012R1A1A1002133).
