1. Introduction
The core mission of the Internet of Things (IoT) is ubiquitous data-awareness, wireless-based data transmission, and intelligent data processing. With the development of 5G, cloud computing, big data, and artificial intelligence technologies, a series of problems affecting the data transmission of IoT and the efficiency of data processing have been solved. The main problem with IoT data perception is that it is difficult for IoT nodes to continue to operate for a long time, which results in a significant decline in the scalability and usability of their systems. Driven by energy demand, passive sensing technology has developed rapidly and is receiving more and more attention and research.
At present, traditional sensors cannot fully meet the current needs, and some important places and places that are not well maintained require new sensors to be deployed. Therefore, there are some small and ultra-low-power sensors to deal with these environments. These sensors are different from traditional wireless sensor technologies and have different applications. For example, it can be implanted in the animal’s heart to sense biological characteristics [
1], and embedded in a wall to monitor structural deformation [
2].
This type of sensor node has its advantages over traditional sensing devices. For example, under a very low energy budget. Therefore, ultra-low power microcontrollers are needed. Sleep mode makes power consumption more efficient when the microcontroller is powered by the battery, but the active radio still consumes too much power. Therefore, ultra-low power communication mechanism backscatter communication is widely used.
In real life, in the application scenarios of warehouse management, environmental monitoring, and logistics monitoring, a large number of passive devices will be deployed in a very wide area and transmit a large amount of perceptual data. At this time, the problem of low throughput of passive sensing network has become a main bottleneck for large-scale Internet of Things scenarios. In order to ensure high throughput, research is mainly carried out in three aspects: rate adaptation, parallel transmission, and attention to channel quality.
First, the rate adaptation is carried out in the backscatter communication network, and the transmission bit rate is adaptively selected by the channel quality to improve the system throughput, but the restriction condition is channel quality. Firstly, the backscatter device harvested the Radio Frequency (RF) energy from the reader to transmit the collected data. The low power consumption results in poor signal quality, makeing the communication between the tag and the reader vulnerable to channel quality. Secondly, the environment of the backscatter communication networks is usually complicated, and there are effects such as people walking and other wireless networks. This causes factors such as multipath fading and external effect to affect channel quality. Therefore, in order to ensure high throughput, it may be considered to dynamically adjust the data rate to accommodate channel variations based on channel quality. Starting from this problem, some other issues are raised, such as channel quality estimation, link burst, and rate selection.
Secondly, at present, the scheme for improving throughput is to parallelize multiple backscatter transmissions, concurrent transmission is proposed in the backscatter system, and concurrent transmission can be used for large data transmission, but most concurrent transmission schemes assume that the channel coefficients are unchanged. An important challenge for concurrent transmission is how to decode conflicting signals, and the reader can use its ability to sample at a much higher rate than the tag to separate interleaved signal edges from different tags, depending on time or the stable and distinct characteristics of the signals in the IQ domain. However, the signal characteristics can be highly dynamic and unpredictable. Under various variables, research generally assumes that the channel coefficients are constant. Therefore, channel quality is also a limiting condition for concurrent transmission.
Thirdly, concerning the channel quality, the low power consumption characteristics of the backscattering device result in low signal quality, making the communication between the tag and the reader sensitive to channel quality. The modulation channel has spatial diversity and frequency diversity characteristics in a passive sensing system. Some of the existing methods in backscatter communication networks do not fully consider spatial diversity and frequency diversity. Because the tags are dispersed in different locations, they have different channel quality as a result of many factors, such as channel fading and multipath effects [
3]. This phenomenon is expressed as spatial diversity. Further, frequency diversity is the result of the different center frequencies, even for the same node, channel quality is different. This difference is mainly caused by frequency selective fading [
3], which means that the frequency response is not monotonic.
Therefore, the research of the three aspects is ultimately the channel quality, and the channel quality can directly affect the research of rate adaptation. The precondition for BLINK [
4] is to assume that all nodes experience the same channel quality and simply replace all nodes with the channel state of a single node. Buzz [
5] models the network as a single tap channel, ignoring the effects of frequency diversity. In order to improve the above method, CARA [
3] proposed a channel-aware rate adaptation method considering spatial diversity and frequency diversity, but it requires a small interval of time to probe channel quality and increases the overhead of channel probing. As the downlink rate also greatly affects the overall throughput, RAB [
6] not only considers spatial diversity and frequency diversity, but also selects the overall uplink and downlink rate as the research object, improving the overall throughput. To avoid collisions, it also proposes filter-based probing to efficiently estimate the channel. However, the existing related research has a large estimation cost for the channel, and it is necessary to repeatedly measure the channels at different positions and at different times, and the obtained channel state is not real-time, so the obtained adaptive result cannot achieve the maximum efficiency.
We consider channel diversity and want to reduce the probe overhead. Because the channels are correlated, violent mutations rarely occur, so we use predictive methods to reduce the number of probes. Therefore, this paper proposes a channel prediction method. The overall uplink and downlink rates are used as link indicators while considering spatial diversity and frequency diversity to reduce the probe overhead and achieve real-time prediction. This paper mainly proposes a channel prediction framework based on BP (back propagation) neural network. We set up the monitoring module and prediction modules. The detection module sets the acceleration threshold and link burst threshold, respectively, to monitor whether the channel quality at the current time needs to be re-acquired, and continuous probing is avoided. The prediction module predicts the channel quality of the next moment.
Our contributions are mainly as follows:
1. We propose a prediction framework. The monitoring module is firstly set up to trigger the prediction through the acceleration threshold and the link burst threshold, and then the prediction module uses the neural network algorithm.
2. We use channel prediction to achieve which channel to select and use at the next moment, avoiding continuous detection in passive sensing networks. At the same time, it is possible to predict the quality of all channels in the next stage, which is essentially different from the channel estimation to estimate the quality of the current channel.
3. We confirm the superiority of this prediction mechanism by comparing with previous work. The prediction time can meet the frequency hopping interval, that is, the switching channel time, and the throughput is improved to some extent.
4. Channel Prediction Design
4.1. Link Burstiness
The inherent dynamic variability and unpredictability of wireless links mean that real-time and accurate link quality estimation still face huge challenges, especially in complex network environments, such as moving people around, various static or mobile obstacle, other wireless networks, electronic devices, and so on, and the fact that the state of the wireless link changes rapidly in a short time, exhibiting a high degree of burstiness.
Conditional packet de-livery functions (CPDFs) improves the success and failure of packet length vector transmission to briefly represent burstiness. The Kantorovich–Wasserstein (KW) distance [
9] and the conditional packet transfer function are combined to express the burstiness as a single scalar. Therefore, this method is used to measure the proximity of CPDF to an ideal burst link. In other words, the KW distance between two vectors is the average of the absolute differences of the corresponding elements of the two vectors. The burstiness metric β [
10] is defined as follows:
where E is the CPDF of the empirical link in question, and I is the CPDF of the independent link with the same packet reception ratio.
Figure 5 plots the link burstiness of the channels we observe at different locations, and the loss rate of these channels is neither 100% nor 0%. β = 1 indicates that the link is bursty, and β = 0 indicates that there occurs an independent packet loss. We can observe that these channels exhibit high burstiness when β > 0.75. Therefore, we set up a threshold for the link burst metric as 0.75. When β > 0.75, it indicates that the link is bursty and the surrounding environment changes. We need to measure the link indicator at the moment to retrain and learn. Thus, we can obtain the predicted channel under environmental changes.
4.2. Mobility Detection
When the sensor moves, the channel characteristics change. In order to maximize throughput, the reader needs to change the encoding, baud rate, or channel [
11]. In this section, we present a method to determine the sensor tags’ mobility.
BLINK and CARA have the same module. BLINK monitors some mobile indicators, such as the RSSI vector distance, while CARA mainly targets position movement. The mobility of the sensor cannot be well described by simply using the phase or some RSSI vector distance. Therefore, we use acceleration sensor data as an indicator of mobility detection.
We define the type ID in order to classify the different values of the sensor data. The type of sensor acceleration (standard) is 0 × 0 D. The type of sensor acceleration (quick) is 0 × 0 B. The reader collects accelerometer values in a 12-byte EPC format when moving before the antenna of the RFID reader. This EPC format includes 1-byte tag type, 8-byte data, 1-byte WISP (wireless identification and sensing platform) hardware version, and 2-byte hardware serial [
12]. By default, the WISP returns a sensor type ID, sensor data (optional), and a tag ID that encodes the firmware version. If sensor data are included, 7 bytes will be set aside for the sensor payload, followed by tag ID. The data will start in the PC field (two bytes in the ACK response), and spread into the EPC field (8 bytes in the ACK response).
We can get the acceleration value by the following formulas:
where
is the value of triaxial accelerometer.
When the sensor moves, the value of the triaxial accelerometer will definitely change, so we can judge whether it is static or mobile as follows:
where
is the modulus of the vector formed by the triaxial accelerations.
Figure 6 plots the relationship between acceleration data and channel read rate. According to previous experimental experience, the reading rate of the sensor node below 16 reads/s is a poor reading rate. As shown in
Figure 5, when the reading rate is 16, the modulus of the triaxial accelerations is 5.1, so we set the threshold value to 5.1 based on experimental measurements and experience. We found that, when the modulus of the triaxial accelerations is bigger than 5.1, the channel quality is bad for read data, so we set up a threshold for
as 5.1. When
> 5.1, this means the sensor node moves, and the channel quality is greatly affected, so we re-measure the channel quality and perform new channel prediction.
4.3. Channel Quality Prediction
In wireless communication, in order to effectively utilize the limited wireless spectrum, how to improve spectrum utilization is currently the main problem. As the mobile channel is time-varying, the dynamic range of its channel variation is very large. The traditional fixed-mode modulation scheme is designed in the channel condition with the worst channel condition or average channel state, thus losing the system efficiency. The adaptive modulation that changes the modulation mode according to the channel state has attracted great attention. For backscatter communication in passive sensing systems, the necessity of channel prediction is as follows. First, accurate real-time channel prediction can be better adaptively modulated, thereby improving spectrum utilization. Second, after the channel prediction, direct selection of better channel transmission information makes better use of the spectrum than changing the modulation scheme.
Channel estimation all uses known sequences, traditional channel estimation algorithms include common RLS, LMS, MMSE, and compressed sensing channel estimation, including MP and OMP in the greedy algorithm, and LS0, LS0-BFGS, and LS0-FR in the convex optimization algorithm. Existing methods for backscattering systems usually assume that the channel state information is well known at the transmitter and the channel estimation is faultless at the receiver. In practical systems, these assumptions are not available because, during the time delay of estimation and data transmission, the time-varying characteristics of the wireless channel cause the state of the channel to change. Therefore, selecting the appropriate modulation mode according to the channel state will lead to the degradation of system performance. Because the existing methods have the drawback of time delay, we propose a real-time prediction method to minimize the delay to improve the system performance and reduce the probe overhead.
Compared with the traditional channel estimation algorithm, the BP neural network takes a large number of known channels as input, and can learn and adapt to the dynamic characteristics of the channel with faster change and correlation, with higher prediction accuracy. At the same time, the traditional algorithm cannot realize real-time prediction as a method of channel estimation. BP neural network can set the input layer, hidden layer, and output layer for short-term real-time prediction. The various neurons of the network can store all quantitative or qualitative information, and the network is highly robust and fault tolerant. The time complexity of the BP neural network algorithm can be adjusted by adjusting the number of input neurons and the number of hidden layers. At the same time, traditional channel estimation can only estimate the state of the current channel at the next moment. The use of neural network prediction can predict the state of all channels at the next moment, which is conducive to our choice of better channels for transmission.
In order to obtain accurate channel quality metrics, it is necessary to probe the channel. Because there is spatial and frequency diversity, we want to obtain metrics for each channel and each node. However, as the number of channels increases and the accuracy requirements increase, the probing overhead will become higher. BLINK does not consider spatial and frequency diversity. Only one probe is used. First, it cannot reflect the channel quality in fine granularity. Second, as the number of nodes increases, the problem of collision cannot be solved. CARA uses selective probing, using enough probes to make full use of channel correlation to reduce probing overhead. Using channel correlation, we propose a prediction mechanism based on neural networks. The channel quality will change strongly when the environment changes, so we use the prediction mechanism to replace the method of probing at intervals.
We use the prediction algorithm based on BP neural network to predict the next moment channel quality. This design uses a BP neural network with a hidden layer, that is, the number of neural network layers is 11. Two models were established for two different environmental predictions.
For the first input of the input layer, we construct an m × n matrix C, m and n are the available channels and the number of nodes, respectively. In C,
represents the reading rate of the node
at channel
; the second input is the m × 1 matrix A, indicating the RSSI of each channel; the third input is the m × 1 matrix B, indicating packet loss rate per channel. The output data are a predicted matrix containing the read rate, RSSI, packet loss rate, and a list of preferred channels. The above input does not represent the input format, because the input of BP neural network can only be a scalar. We input according to the reading rate, RSSI, and packet loss rate of each channel. Therefore, the number of input layer and output layer nodes is 16 and 4, respectively. The number of hidden layer nodes is determined according to the empirical Formula (5).
where
is the number of input layer nodes,
is the number of output layer nodes,
is a constant between 1 and 10,
is the number of hidden layer nodes, and thus the value range of
is 6 to 15. The number of hidden layer nodes obtained by experiments is nine.
The transfer function usually uses the Sigmoid function. After experimentation, the transfer function of the hidden layer is determined as follows:
The weight learning method is the gradient descent method with additional momentum terms.
The predicted data reading rate, RSSI, and packet loss rate were taken as the latest measured data and supplemented as training data. The weights were adjusted for each prediction to achieve real-time dynamic prediction.
5. Implementation
In this part, we put forward implementation issues. The overall hardware experimental platform is shown in
Figure 7. Universal Software Radio Peripheral (USRP) N210 equipped with SBX-40 daughter board can be used as a detector and reader. This article uses the open source written by Nikos on GitHub to use USRP as a reader, and on this basis, make appropriate modifications based on experimental conditions and design. The SBX-40 daughter board provides MIMO functionality and provides 40 MHz bandwidth. The operating frequency is 400 MHz Up to 4400 MHz.
The platform used in the experiment is 64-bit Ubuntu 14.04 and GNU Radio 3.7.4. The selected CRFID tag is the WISP4.1 version with a dipole antenna, and its microcontroller is MSP430F2132. The commercial reader model used is ImpinJ Speedway R420, which is connected to the Laird circularly polarized directional antenna S9028PCL. It can connect up to four antennas at the same time, and the antenna gain is 9 dBi.
We use Impinj Speedway reader and the WISP as backscatter nodes in the network. This paper sets up experimental points in the office, placing sensor nodes in different locations. A stable environment is an office with no people moving around, and an unstable environment is an office with two people moving around. It is worth noting that the positions and number of sensor nodes are the same in stable and unstable environments. Further, we used USRP software radio reader to implement our framework.
We use multiple tags to measure the RSSI, packet loss rate, and reading rate of a channel in the current environment at the same time. Then, we switch channels to obtain the same channel index. Then we store these data for training and learning. Our experimental test scenarios are shown in
Figure 8. We placed a reader and tags with a distance of 1.5 m without interference from other signals of the same frequency.
Figure 8a shows that multiple tags are placed in a stable environment, and
Figure 8b shows tags placed at the same location in an unstable environment when two people walk around.
Training data: First of all, our training data are obtained in a stable environment and unstable environment. A stable environment refers to a situation where the position of the node is unchanged and there is no interference in the surrounding environment, and the unstable environment refers to a situation where nodes move or there are multiple people walking around. The data set we need to obtain includes the RSSI of the channel, the packet loss rate, and the data read rate. Data were collected for 20 min in a stable environment and 30 min in an unstable situation. Because of the large difference in data in an unstable environment, we obtain more data in an unstable environment than in a stable environment.
Predicted and monitoring time: It is worth noting that the maximum dwell time for a single channel varies by region. For example, in North America, the FCC allows a single channel to be up to 0.4 s in 10 s. In Europe, if the tag is being read, only 4 s are allowed to be transmitted on a single channel, and if no tag is read, only 1 s is allowed. In China, the maximum dwell time is 2 s. Therefore, we set our prediction time to 2 s, which means that re-prediction occurs every 2 s. Because the channel quality is relatively stable and there is no other impact in a stable environment, in the unstable environment, more training data are needed, so the channel quality monitoring time is set to 1 min.
7. Related Work
There has been a lot of prior work on wireless channel characteristics and link layers. Much of the work on backscatter communication is to optimize EPC Gen 2 tag communication, for example, better tag collision avoidance [
13], better security [
14], collect IDs of an unknown set [
15], efficient packet protocol [
16], and reduced inventory time [
17]. Some work analyzes the main propagation characteristics of the backscatter system by using four link parameters [
18]. Other work focuses on energy harvesting issues, such as the collaborative approach to WISP device charging in wide-area sensor networks [
19], and collecting energy from the environment to charge nodes [
20]. None of these solve the link layer adaptation mechanism to improve throughput.
Previous work optimized for backscatter communication links is not compatible with C1G2. BUZZ [
5] uses the collision information as a ratless code to dynamically adjust the bitrate for lossless transmission. Flit [
21] improves the MAC layer of the protocol, enabling fast transmission of bulk data and reducing transmission time. Laissez-Faire [
22] proposed decoding parallel transmission by analyzing signals in the time domain and IQ domain, but it is susceptible to channel quality. BiGroup [
23] also performs parallel decoding on the IQ domain, but it combines the transition probability with the IQ domain to create a physical model that greatly improves throughput. Although these C1G2 incompatible optimizations have a significant performance improvement, they are still not suitable for large-scale readers and nodes.
Later, some improvements compatible with the C1G2 protocol were proposed. The precondition for Blink [
4] is to assume that all nodes experience the same channel quality, using specific calculations to monitor mobility and rate selection. CARA [
3] observed an opportunity to increase throughput through channel-aware rate selection. Because the downlink rate can also greatly affect the overall throughput, RAB [
6] focuses more than on the choice of uplink rate selection, which is for overall throughput. In order to avoid collision, it also proposes filter-based probing to effectively estimate the channel.