High-Accuracy Height-Independent 3D VLP Based on Received Signal Strength Ratio

Visible light positioning (VLP) has attracted intensive attention from both academic and industrial communities thanks to its high accuracy, immunity to electromagnetic interference, and low deployment cost. In general, the receiver in a VLP system determines its own position by exploring the received signal strength (RSS) from the transmitter according to a pre-built RSS attenuation model. In such model-based methods, the LED’s emission power and the receiver’s height are usually required known and constant parameters to obtain reasonable positioning accuracy. However, the LED’s emission power is normally time-varying due to the fact that the LED’s optical output power is prone to changing with the LED’s temperature, and the receiver’s height is random in a realistic application scenario. To this end, we propose a height-independent three-dimensional (3D) VLP scheme based on the RSS ratio (RSSR), rather than only using RSS. Unlike existing RSS-based VLP methods, our method is able to independently find the horizontal coordinate, i.e., two-dimensional (2D) position, without a priori height information of the receiver, and also avoids the negative effect caused by fluctuation of the LED’s emission power. Moreover, we can further infer the height of the receiver to achieve three-dimensional (3D) positioning by iterating the 2D results back into positioning equations. To quickly verify the proposed scheme, we conduct theoretical analysis with mathematical proof and experimental results with real data, which confirm that the proposed scheme can achieve high position accuracy without known information of the receiver’s height and LED’s emission power. We also implement a VLP prototype with five LED transmitters, and experimental results show that the proposed scheme can achieve very low average errors of 2.73 cm in 2D and 7.20 cm in 3D.


Introduction
The development of the Internet of Things (IoT) is facilitating a rapid increase in the number of automated robots and transporters used in factory warehouses and indoor public places [1,2]. One of the basic requirements of these devices is to know their own locations. Traditional methods of indoor positioning are based on radio frequency (RF) technologies such as WiFi [3,4] and Bluetooth [5]. However, they have some weaknesses, such as high power consumption, congested channel interference, and low accuracy. As a developed classic technology, sound-based positioning is also used in some large indoor scenes (e.g., greenhouses) and provides better accuracy than RF-based positioning [6,7], but it generates noise and requires a low level of environmental noise. SLAM-based positioning systems have also been applied to indoor positioning [8]; however, they are normally expensive because of the use of specialized equipment, such as laser sensors, to scan the surroundings This paper focuses on removing the dependence on height in the VLP system and developing a high-accuracy positioning method. The RSS measurements are transmitted to the ration (RSSR) in preprocessing so that the emission power is unnecessary. An accurate height-independent positioning method based on RSSR is proposed, which solves horizontal coordinates without the a priori information of the vertical, relative height between transmitter and receiver. Then, the vertical coordinate can be estimated after putting the horizontal estimation back into the original equation, composing a three-dimensional (3D) position estimator of the target receiver. Due to this feature, the proposed method is capable of achieving high accuracy. We construct a test platform in a 1.5 m × 1.5 m × 2.7 m space with five LEDs and one PD to evaluate the performance of the prototype. The proposed method achieves a mean error of 2.73 cm on the horizontal plane and 7.20 cm in 3D. Comparing the horizontal localization performance, the proposed method has better accuracy than that of the trilateral positioning [28] designed for 2D only and using the a priori height of the receiver and emission power of transmitters. We also compare the proposed method with the successive linear least squares (SLLS)-based method [29] and the ML-based method [22] for 3D localization when the receiver height and LED emission power are unknown. The proposed method outperforms both the SLLS-based and the ML-based methods.
The rest of the paper is organized as follows. Section 2 introduces the background of the classical 2D VLP method and points out the problems of its generalization to 3D VLP from a mathematical point of view. Section 3 presents the proposed system's architecture and method. Section 4 evaluates the performance of the proposed method by designing experiments and comparing it with existing methods. Finally, Section 5 concludes this paper.

Indoor Positioning with Visible Light
The layout of a basic RSS-based VLP system is shown in Figure 1. The system consists of M LED transmitters that are deployed on the ceiling with the same height h LED . The horizontal coordinates of these LED transmitters are denoted by s i = (x i , y i ) T (i = 1, · · · , M). Assume that the PD of the receiver is placed vertically. It can convert light signals to electrical signals whose strength is proportional to the RSS. The unknown PD receiver has the horizontal coordinate u = (x u , y u ) T and height h PD . Thus, the relative height of these transmitters to the receiver is denoted as h = h LED − h PD . The distances between the transmitters and the receiver are denoted by d i (i = 1, · · · , M).
… … : l In this section, assuming that the value of RSS has been extracted in some way (e.g., frequency or time domain), according to the Lambert model, the RSS from the i-th LED is [11] where A is the receiving area of PD, θ i is the radiation angle of the i-th LED, ϕ i is the incident angle between the PD and the LED i , and P 0 is the emitted signal strength of the LED. n is the Lambert order that describes the divergence of the LED light, which is given by n = − ln(2) ln(cos(φ 1/2 )) , where φ 1/2 represents the semi-power angle of LEDs. Since the normals of LEDs are parallel to that of the PD, this makes θ i equal to ϕ i . Thus, (1) can be simplified as The parameters A and P 0 related to the LEDs and the PD can be measured in advance, and, in 2D VLP applications, the relative height h is also known as a constant so that d i can be determined as The distance d i can also be given by the geometric relationship between the i-th transmitter and the receiver so that the horizontal coordinates can be expressed by the following system of equations: To ensure a unique solution, the number of equations cannot be less than three. Applying the least squares (LS) method to the system of equations, the horizontal coordinates of the receiver can be calculated as where This is a proven, low-complexity method that has good performance when the RSS is interfered with by a low non-line-of-sight (NLoS) signal. However, it can be concluded from (3) that the method requires the relative height and the emission power as a priori information. As mentioned in Section 1, the height of the receiver is unknown in 3D positioning and the emission power varies with the environment (e.g., voltage fluctuations, temperature, and LED aging), which makes it challenging to generalize the trilateral localization designed for 2D scenes to 3D.

System Overview
As illustrated in Figure 1, the proposed system also consists of two main parts: transmitter and receiver. The transmitter modulates the LEDs and embeds the position information of the LEDs in different frequencies. As for the receiver, it is designed for receiving the light signals through a PD and positioning by processing the received signals. To address the challenges in Sections 1 and 2, we equip the receiver with the proposed method, which mathematically circumvents the influence of the unknown height on the 2D positioning, and also performs 3D positioning in the absence of a priori information of the vertical plane. The workflow block diagram of the proposed system is shown in Figure 2, and the following subsections elaborate on the details one by one.

VLP Transmitter
The transmitter consists of an AC-DC converter, a modulation circuit, and an LED light. Its real object is shown in Figure 3b. The modulation circuit consists of the microcontroller and its peripheral circuit. The workflow diagrams of the transmitter are shown in Figure 2a. The alternating current (AC) is sent into an AC-DC converter to obtain a stable direct current (DC), which can be further converted to square waves of different frequencies by generating a PWM wave to control the MOSFET in the peripheral circuit. Considering the requirement to separate the light signal from the frequency domain, and in order to avoid the harmonic frequencies of square waves interfering with each other, for the selected frequencies, it should be ensured that the harmonic frequencies are kept at a certain distance from the remaining main frequencies. Meanwhile, the VLC-based VLP system needs to satisfy the requirement of high-speed communication, so the frequencies must not be at a low level. According to the above constraints, combined with the microcontroller's own clock frequency, the frequencies of the five LEDs are empirically set as 81 kHz, 100 kHz, 121.7 kHz, 143.4 kHz, and 153.7 kHz. In addition, to avoid saturation of the PD by excessive light from multiple LEDs, the voltage of the LEDs should be properly limited. We design a flyback converter to limit the voltage by low-frequency PWM before the DC passes through the MOSFET, which in turn controls the amplitude of the modulated signals.

VLP Receiver
The receiver is designed for sensing the light signals and processing the sampled data for extracting RSS to positioning. Specifically, the receiver consists of a PD, an amplifier circuit, and a microcontroller. As Figure 2b shows, the PD converts the light signal to the tiny current signal, which is further transferred by an amplifier circuit into the voltage signal capable of driving the analog-to-digital (ADC) of the microcontroller. Since the memory capacity of the microcontroller is limited, and to facilitate the experimental analysis, the sampled data are forwarded to the computer via a serial port. We consider real-time positioning on the microcontroller as future work.
The RSS is extracted by applying the fast Fourier transform (FFT) on the sampled sequence, and its accuracy is influenced by both the real frequency of the received signal and the frequency resolution. Some existing experiments [19,23] use a function generator to modulate the LED, while, in practical applications, a low-cost MCU is used to generate a frequency signal for modulation, which has difficulty in keeping the frequency stable. Moreover, the high frequency of the VLC system signal and the limited sampling window make the frequency resolution poor, meaning that the peak amplitude will leak to both sides if the main frequency of the signal cannot satisfy an integer multiple of the frequency resolution (i.e., spectral leakage). The above two issues are addressed by setting up a window function, and since the selected frequencies are far enough apart from each other and the peak amplitudes are the quantity of greater interest, the flat-top window is chosen to be applied to the sample data. It is able to focus the energy on the main lobe as much as possible, with a certain loss of frequency resolution, so that the spectral leakage is effectively limited.

Height-Independent Positioning
We aim to solve the issues mentioned in Sections 1 and 2 and propose this method based on a trade-off between hardware and computational complexity constraints. It can be derived from (2) that the RSSR between the i-th and j-th LEDs is In practical environments, the measured RSSR contains noise ∆τ ij , Now, the problem is finding the coordinate u from the measurementτ ij . Since RSSR varies nonlinearly with distance, to deal with the nonlinear problem, we shall denote ij , where m = n + 3, and then (7) can be transformed into Further, we express the distance in the form of vectors by where It is important to emphasize that the coordinates u and s in (10) are 2D rather than 3D. The relative height h is presented separately. The noise in RSSR is relatively small due to the Lambert order and distance between the transmitter and receiver. Thus, we can expand ρ ij at the measuredτ ij by Taylor series and retain the first-order term. Substituting the result into (10), after simplification, yieldŝ Without losing generality, i is fixed at 1 so that j = 2, · · · , M. By utilizing (13) and (14), all the (10) can be stacked into a matrix as where Without losing generality, i is fixed at 1 so that j = 2, · · · , M. The solution can be given by weighted least squares (WLS) as where W = (BQB) −1 , Q = E[∆τ∆τ T ] is the covariance matrix of RSSR measurements. In practice, Q is unknown. The WLS is only sensitive to the structure of Q, rather than the actual value [30,31]. Since the propagation channels of each LED are similar, an alternative is replacing Q with an identity matrix. After obtaining the estimated 2D positionû =ψ(1:2), we can turn to estimating the height to obtain the 3D coordinate. Since the third element ofψ depends on the height, which is unknown, and the estimation from (18) is inaccurate (see Section 3.5), we shall useû Tû to replaceψ(3). Denoting b 1 = b + 1 L h 2 andψ = [û T ,û Tû ] T and putting them into (15) where L is the number of combinations of RSSR and 1 L is an all-one column vector of length L. Thus, the solution of h in terms of WLS iŝ The net effect of using such a W is the reduction in the covariance matrix of the estimate for ψ [32]. Therefore, we can obtain higher accuracy in receiver position estimation.

Proof of Height Independence
It appears that the above RSSR-based WLS method requires the parameter h, and, more importantly, u T and u T u in ψ are coupled. However, in fact, the results obtained by the WLS approach are independent of the height, and we prove this feature mathematically. Consider the solution without weightŝ where To extract parameter h, we apply Then, (21) is developed as It can be seen from (24) that the estimated coordinateû contains the item H(1:2,:)1 L h 2 that is relative to h. In order to further simplify H(1:2,:)1 L , we define A 1 = A −1 L . By exploiting the block matrix inversion to H, we arrive at where Finally, by substituting (26) into (25), we have The result above shows that the final solvedû are constant regardless of h, while the error caused by the height only affects the redundant termψ(3) instead ofû according to (24) and (27). After obtaining the 2D coordinateû, the third element ofψ can be replaced byû Tû so that the error is reasonable, which means thatĥ also can be estimated. In the following experiments, we use the experimental results for verification.

Experimental Setup
The experimental setup of the proposed VLP system is shown in Figure 3. The size of our experimental area is 1.5 m × 1.5 m × 2.7 m, where 5 LED lights with a measured Lambert order of 2.51 are distributed at the height of 2.7 m with horizontal coordinates of (0, 0), (0, 1.5), (1.5, 0), (1.5, 1.5), and (0.75, 0.75) in meters, respectively. As detailed in Sections 3.2 and 3.3, by controlling the MOSFETs (SI2310), the GD32F330 microcontrollers modulate the converted DC into square-wave signals of different frequencies, and then drive the LEDs emitting modulated lights. Each LED light (HGC-T003) has a reflector with a tilt angle of 26 degrees and runs at the same power. As for the receiver side, the current signal converted from PD (SGPN88MQ) is amplified to the voltage signal by a two-stage circuit consisting of a transimpedance amplifier and a voltage amplifier based on the OPA2320, and then the voltage signal is sampled by the built-in ADC of the GD32F330 microcontroller. The microcontroller's sample rate and sample number are set as 512ksps and 2048. After applying the FFT to the sampled signal, the four most significant RSS values are selected to estimate the horizontal coordinate and the height of the receiver. The positioning error is defined as the Euclidean distance between the estimated and the actual position. The distribution of sample points is shown in Figure 4a. In particular, 49 sampling points (7 × 7) are selected in the 1.5 m × 1.5 m square area of 0 cm, 20 cm, and 40 cm above the ground, respectively, with each point spaced 20 cm apart. The receiver samples 300 times at each position. Then, it will be moved to the next point manually, until finishing all 49 test points.  To evaluate the 3D positioning performance with a limited number of parameters, the proposed method is compared with the 3D VLP methods, SLLS [29], and the polynomial trilateral ML [22]. Moreover, to evaluate the horizontal positioning performance, we additionally consider a trilateration method designed for the 2D case, which takes the accurate height and the LED emission power as a priori knowledge. The orientation (u R ) of the PD in SLLS is fixed at [0, 0, 1] T and the convergence threshold is set as 1 × 10 −4 . Since only the four largest RSS values are used in the experiment, each sampling plane for the ML-based method is divided into four small squares as positioning cells according to the combination of selected LEDs, as shown in Figure 4b. The 25 points on the diagonal of each positioning cell are used for testing, and the remaining 24 points are used for training.  Figure 6 shows the horizontal positioning distribution at different heights. When the receiver height changes, the positioning accuracy varies as well. It decreases because the signal-to-noise ratio (SNR) is low as h is large and the receiver is far from the transmitters, and it also degrades when the receiver is close to the transmitters because the tilted reflectors of the LEDs reflect more NLoS signals and block part of the emitting LoS signal. Furthermore, the positioning result has a bias of 2-6 cm due to system errors in the experimental prototype, such as anisotropy, inconsistency of the LEDs, and the radiation angle of the transmitter being not exactly equivalent to the incident angle of the receiver.

Horizontal Positioning 2D Performance
The comparison of these four methods in Figure 6 shows that the proposed method has better horizontal accuracy in the case of lacking a priori height. It has a lower deterioration in the accuracy at the edges of the positioning area. Moreover, the comparison of the proposed method and the 2D trilateration method with accurate height shows that the proposed method is able to achieve similar accuracy despite the fact that the height and emission power are unknown. Figure 7 shows the cumulative distribution function (CDF) of the horizontal positioning errors. In total, 90% of the errors of the proposed method are below 4.8 cm, which is better than the ML-based method (5.8 cm) and the trilateration method (5.4 cm). Moreover, the proposed method requires less a priori information and no offline data collection, making it more operable in practical application scenarios.

Height Independence Verification
We next evaluate the influence of inaccurate a priori height on the horizontal localization performance. Since the SLLS and ML methods do not require a priori height information, we compare the proposed method with the trilateration method designed for 2D and needing the receiver height. Figure 8 shows the variation in the horizontal positioning error when the height is inaccurate. For the actual relative heights, we perform changes in steps of 0.05 m in the range of [−1 m, 1 m] and calculate the mean error. The points inside (5 × 5) and the 24 points at the edges are evaluated separately. Consistent with Section 3.5, the positioning results of the proposed method do not change, no matter how much error is included in the relative height. The fluctuation of the mean error is less than 1 × 10 −14 m, which is caused by the calculation accuracy. As for the trilateration position, its minimum mean positioning errors are still slightly higher than the proposed method. Trilateration inside reaches its minimum at an error of −0.05 m, and one possible conjecture is that the error in height compensates for its bias. The entire positioning error increases with the height error, which means that it is vulnerable to height inaccuracy. When the height error exceeds 23.44 cm, the edge positioning accuracy drops to the decimeter level, and the entire positioning accuracy drops to the decimeter level as well when the height error exceeds 27.26 cm. Considering the scene size of this experiment, the decimeter-level error occurs when the height error exceeds 9-12% of the real relative height. This case perhaps arises if the receiver is moved manually and its height changes, where the previously measured height is still used for the trilateration.

3D Positioning Performance
The overall 3D positioning results are shown in Figure 9, and the 3D mean positioning error is expressed by stacking the 2D mean error and the incremental error from the height estimation. The mean error of the 3D positioning for the proposed method is 7.20 cm, while the mean errors of the SLLS-based and the ML-based methods are 12.64 cm and 15.83 cm, respectively. It can be found from Figure 9 that the 3D positioning accuracy deteriorates significantly compared to the 2D accuracy. A common deployment of a VLP system is that the transmitters are all on one side of the receiver and their heights are the same, which makes the vertical dilution of precision (VDOP) larger than the horizontal dilution of precision (HDOP), resulting in the fact that the vertical positioning error is larger than the horizontal positioning error [33].   Figure 10 shows the 3D positioning error distribution of test planes at different heights. The error of the SLLS method becomes unstable at the edges of the localization area. The error of the ML method is significantly higher in the vertical direction than in the horizontal direction, which may be due to the fact that the regression equation in the ML method cannot provide a good fit for the vertical position estimate. Compared with the SLLS method and the ML method, the proposed method has more accurate positioning performance and most of its errors are concentrated at a lower level. As the CDF curves in Figure 11 show, 90% of the errors of the proposed method are within 13.0 cm. Nonetheless, the SLLS method is less stable where the error curve deteriorates at 0.1-0.2 m, resulting in 90% of errors reaching 21.7 cm, which is close to the ML method.
The above experiments show that the proposed method is able to maintain the positioning accuracy for height without losing the accuracy of horizontal positioning. It can be used in industrial scenarios with automated mobile robots or vehicles, enabling them to position themselves in the event of changes in floor, ceiling, or their own height.

Conclusions
To develop the VLP technology into practical applications, a height-independent positioning scheme has been proposed in this paper. Essentially, the proposed method leverages the received RSSR from multiple LED transmitters rather than conventional RSS to locate the horizontal coordinates of the receiver. It estimates the horizontal coordinate of the receiver first and can further obtain the height of the receiver to achieve 3D positioning. This new method relaxes the requirements of a priori information such as height and LED emission power, required in traditional positioning techniques. We provide a theoretical analysis of height independence in mathematics. It reveals that a priori height information is not necessary for the novel RSSR-based positioning method, which has been validated by experiments. We build a prototype using low-cost LED luminaires and a microcontrollerbased receiver to evaluate the performance. Experimental results show that the proposed method can provide the mean error of 2.73 cm in horizontal coordinate estimation and 7.20 cm in 3D positioning. The proposed method is simple and accurate, and it has the potential for indoor positioning applications with low-cost devices.

Conflicts of Interest:
The authors declare no conflict of interest.

Abbreviations
The following abbreviations are used in this manuscript: