Research on the Method of Improving iGPS Dynamic Tracking Accuracy Based on Theoretical Trajectory Backward Compensation

As a result of the ongoing upgrading of the manufacturing industries, higher and higher requirements are being proposed for assembly precision. In particular, in the industries that involve assembly of large-sized products, it is hoped that assembly accuracy can still be guaranteed as the product size increases. The emergence of the indoor Global Positioning System (iGPS) will enable this demand to be met. In this work, we have conducted in-depth research on the measurement principles and the dynamic measurement performance of the iGPS measurement system. In addition, based on the motion equation for the tracked target, an analytical method to calculate the compensation amount required for dynamic measurements is proposed. This method is suitable for accurate measurement of the actual trajectory of a target in real time when the theoretical trajectory of this tracked target is known. We set up a simulation environment in MATLAB and tested the proposed method. The simulation testing proved that the method can compensate effectively for errors in iGPS dynamic measurement.


Introduction
As the various industrial needs of humanity (e.g., space exploration, national defense, energy exploration) continue to increase, it has become increasingly necessary to manufacture large-scale industrial equipment, including rockets, aircraft, and submarines. 1,2 To improve assembly accuracy during the process of assembling this large-scale industrial equipment, it is necessary to use workshop measurement equipment to measure and locate important positions and to track and measure dynamic work units, such as automated guided vehicles (AGVs) and industrial robots. [3][4][5] Among the many measurement devices in current use, laser trackers and the indoor Global Positioning System (iGPS) are in particularly wide use in workshops. Of these devices, the laser tracker offers the advantages of high measurement accuracy and a good dynamic performance, but it still has certain disadvantages, including a relatively small measurement range, high cost, and an inability to track multiple targets simultaneously. The iGPS is a relatively recent surveying instrument that has been used widely in industrial production applications because of advantages that include a large measurement range and a capability for simultaneous measurement of multiple targets. 6 Over the past two decades, large numbers of researchers have studied the measurement performance of iGPS. However, most of this research has focused on static measurement of the iGPS measurement system. [7][8][9][10][11] . In recent years, with the emergence of the concept of digital assembly, the iGPS is being used widely to track dynamic targets to enable completion of high-precision assembly. However, because of the measurement principle of the iGPS, the system does not have very good dynamic characteristics. As a result, some researchers have begun to study the dynamic characteristics of the iGPS. 12,13 Using the programmability of industrial robots, Wang et al. compared the dynamic measurement performances of the iGPS and laser trackers and visualized their results. 14 Depenthal built an experimental environment to study and compare the dynamic measurement characteristics of the iGPS and laser trackers during tracking of targets that move with a circular motion. 15 The studies noted above only summarized their measurement results to a certain extent and did not quantify the relationship between the dynamic characteristics and various measurement factors or perform follow-up research to improve the system's dynamic characteristics. To improve the measurement accuracy of the iGPS when tracking dynamic targets, Zhao et al. proposed mathematical models of new iGPS single-station and two-station measurement systems that considered the speed of the tracked target and verified corrections of the mathematical models through simulations and physical experiments, but this study only considered the case in which the tracked target moves in a straight line at a uniform speed and thus lacks universal applicability 16 . Zeng et al. proposed an algorithm that allowed an AGV to be tracked dynamically when using an iGPS. The algorithm was based on the measurement data obtained from the iGPS to measure the position of the AGV in real time and ensure that the AGV could return adaptively to its established track. The limitation of this algorithm is that the dynamic measurement data from the iGPS are considered to be correct in real time, and thus this algorithm can only be used to perform rough measurement and tracking of the AGV; 17 the approaches proposed by Schmitt et al. 18 and Chen et al. 19 have similar problems.
This paper focuses on a method to improve the dynamic measurement performance of the iGPS when using iGPS measurements to track dynamic targets. When we use a specific measurement instrument to track a moving target dynamically, three trajectories will be produced: the theoretical planning trajectory, the measured trajectory, and the real trajectory. This paper proposes a new dynamic data processing algorithm that is suitable for application to iGPS measurement systems. The dynamic measurement results from these systems are corrected using the theoretical planning trajectory and the iGPS measurement principle to eliminate the dynamic uncertainty caused by the iGPS measurement principle. First, we use the proposed data processing algorithm to correct the measurement-related errors of the iGPS single-station measurement system. Then, we substitute the corrected measurement results from a single-station measurement system into a dual-station measurement system, and subsequently perform secondary corrections to the dual-station measurement system results to obtain the final corrected measurement results. To verify the correctness of the proposed data processing algorithm, we use MATLAB to construct an iGPS measurement environment and then test the proposed algorithm in this environment. From the simulation experiment results, we found that the accuracy of the measurement results was improved significantly after the proposed compensation algorithm was used to correct the measurement data.

Mathematical model
In this section, the principle of the iGPS will be described briefly. The mathematical model of the proposed compensation algorithm will then be described in detail in the subsequent section.

A brief description of the principle of iGPS measurement
Because large numbers of papers have described the iGPS measurement principle in detail, this paper only provides a brief description of this principle. The iGPS is a laser-based indoor optical measurement instrument that is mainly composed of transmitters, receivers, and a position calculation engine (PCE). The iGPS transmitter emits three signals: an infrared light-emitting diode (LED) strobe and two infrared laser-fanned beams. The infrared laser signals rotate in tandem with the transmitter. When the detector receives the LED strobe signal, the time point t 0 is recorded, indicating the time point at which the measurement of the cycle begins, When the receiver receives the two infrared laser fanned beams, it records the time points t 1 and t 2 , and then calculates the normal vectors n 1 (t 1 ) and n 2 (t 2 ) for the two infrared laser fanned beams, respectively, when they trigger the receiver according to their recorded time points. From this process, the vector from the receiver to the transmitter can be calculated using equation (1).
as shown in Figure 1. Therefore, it is possible to solve for the horizontal angle (azimuth, u) and the vertical angle (elevation, u) when a transmitter is used to measure the receiver. When two transmitters are used to measure the position of a receiver according to its measured azimuth angle and elevation angle in combination with the position of the transmitter in the global coordinate system, then according to the intersection principle, the coordinates of the receiver in the global coordinate system can be calculated as shown in Figure 2.
From the description of the iGPS measurement principle above, we can see that use of a single-station measurement system to complete measurement of the azimuth and elevation requires a time period rather than a time point. When a double-station measurement system is used to complete a target measurement in the global coordinate system, two single-station measurements within a time period are also required. When iGPS is used to measure a static target, this measurement principle will not cause errors in the measurement results, but when the measured target is constantly moving, the target position changes within a measurement period, and this will lead to errors due to the measurement principle. To date, it is believed that when the iGPS is used to perform dynamic measurements, the measurement uncertainties include: systematic uncertainty, random uncertainty, and measurement principle uncertainty (as given by equation (2)).
Among these uncertainties, U T represents the total uncertainty, U S represents the system uncertainty, U R represents a random uncertainty, and U M represents the uncertainty caused by the measurement principle. In the next section, the mathematical model of the algorithm proposed in this paper to eliminate the uncertainty due to the measurement principle (U M ) will be described in detail.

Mathematical model of correction algorithm for single station system
This algorithm involves two time axes, where one is the absolute time axis, which starts from the instant when the tracked target begins to move, and the other is the relative time axis, which starts when the sensor receives the strobe signal from the transmitter, as a measurement cycle. In this article, t is used to represent the time point on the relative time axis, and t (abs) is used to represent the time point on the absolute time axis.
Before we use the iGPS to track the moving target, we already know the theoretical motion trajectory of the moving target and the motion equation along the absolute time axis, as shown in equations (3) and (4).
Among these parameters, (x t , y t , z t ) represent the coordinates of the tracked target, and p represents the motion parameters (e.g., when the tracked target is a tool at the end of a robot, p represents the rotation angle of each axis of the robot; however, when the tracked target is an AGV, p represents the distance moved by the AGV), and p is a function of the movement time t (abs) . At the same time, the motion equation of the first infrared laser-fanned beam emitted by the transmitter can be calculated in the transmitter coordinate system, as shown in equation (5).
Among these parameters, a 1 (t), b 1 (t), and c 1 (t) constitute the normal vector [a 1 (t) b 1 (t) c 1 (t)] T of the first infrared laser fanned beam at any time point. [a 1 b 1 c 1 ] T represents the normal vector of the first infrared laserfanned beam at the beginning of the measurement cycle. Because the infrared laser signal emitted by the transmitter is not a complete spatial plane, but instead represents a radial plane with a specific range of angles, the boundaries must be constrained. Two constraints limit the radiation range of the first infrared laserfanned beam. Among these constraints, [a 1ub (t) b 1ub (t) c 1ub (t)] T represents the normal vector of the upper boundary plane of the first infrared laser signal, [a 1lb (t) b 1lb (t) c 1lb (t)] T represents the normal vector of the lower boundary plane of the first infrared laser signal, and the variation of this vector with time is the same as the variation of the normal vector of the infrared laser signal with time. Similarly, the motion equation for the second fan beam is as shown in equation (6).
The transmitter and receiver are used to complete a measurement to obtain the measurement results for t 1 and t 2 (t 0 =0, on the time axis within a single measurement cycle of the transmitter), and then the equation for the first infrared laser fanned beam at t 1 and the equation for the second infrared laser fanned beam at t 2 are determined according to the measurement results, as shown in equations (7) and (8), respectively.
The joint solution to the equations for the determined infrared laser fanned beams and the theoretical trajectory of the moving target can be used to obtain the coordinates (x IS1 , y IS1 , z IS1 ) when the moving target meets the first infrared laser fanned beam, and the coordinates (x IS2 , y IS2 , z IS2 ) when the moving target meets the second infrared laser fanned beam. Substitution of the encounter coordinates resolved above into the motion equation for the moving target can allow the times t 1(abs) , t 2(abs) , and t 0(abs) to be obtained when the moving target moves to position (x IS1 , y IS1 , z IS1 ) and position (x IS2 , y IS2 , z IS2 ) along the absolute time axis. On this basis, the coordinates of the moving target at the time t 0(abs) are calculated as shown in equation (9).  The measurement results (i.e., t 1 and t 2 ) are corrected according to the coordinates (x IS0 , y IS0 , z IS0 ) of the moving target at time t 0 , as shown in equation (10).
Among these parameters, Dt 1 and Dt 2 represent the corrections to the measurement results t 1 and t 2 , respectively. In addition, t 1(fix) and t 2(fix) are the corrected measurement results. The corrected normal vectors n 1 (t 1(fix) ) and n 2 (t 2(fix) ), and the receiver-to-transmitter vector are then calculated from the corrected measurements using equation (11).
The corrected azimuth and elevation can then be calculated. A schematic diagram of the dynamic data correction algorithm for the single-station measurement system is shown in Figure 3.
The flow chart for the measurement result correction algorithm for the iGPS single-station measurement system is shown in Figure 4.

Mathematical model of correction algorithm for double station system
When two transmitters T 1 and T 2 are used to measure the moving target in turn, then the two measurement results are corrected according to the correction method proposed above, and the azimuth and elevation angles are obtained after the two measurements have been corrected. However, because of the movement of the target, the positions at which the two measurements are taken are not the same, which results in measurement uncertainty. We therefore use a similar method to correct the measurement results from the iGPS two-station measurement system. Using the correction algorithm for the single-station measurement system, we have calculated the times t 0(T1)(abs) and t 0(T2)(abs) for these two measurements on the absolute time axis. We can then calculate the equations of motion for the two fan beams of transmitter T 1 at time t 0(T1)(abs) , as shown in equations (12) and (13): Similarly, the equations for the two fan beams of transmitter T 2 at time t 0(T2)(abs) can be calculated as shown in equations (14) and (15).
By substituting the times for these two measurements into the theoretical trajectory equation for the moving target, the theoretical coordinates of the moving target at these two moments are then obtained, as shown in equations (16) and (17).
When the measurement value at time t 0(T1)(abs) is taken as the criterion, then the measurement result for transmitter T 2 must be corrected, as shown in equation (18): Among these parameters, ''(fix) 2 '' indicates the secondary correction result obtained after application of the single-transmitter correction algorithm and the double-transmitter correction algorithm. Similarly, when the measurement value at time t 0(T2)(abs) is taken as the criterion, the measurement result for transmitter T 1 must be corrected, as shown in equation (19).
Thus far, when it has been necessary to use the measurement from one transmitter as the standard, the correction algorithm for the measurement value from the other transmitter has been obtained and the corrected azimuth and elevation have been calculated based on the principle of convergence. The corrected coordinate values of the moving target are then finally calculated. Figure 5 provides a clear illustration of the principle of the iGPS two-station system correction algorithm.
The flow chart for the measurement result correction algorithm for the iGPS double-station measurement system is shown in Figure 6.

Simulation environment construction and test plan formulation
To verify the correctness of the correction algorithm, we began by conducting simulation experiments on the correction algorithm. The simulation environment was built in MATLAB (Mathworks). The environmental parameters included the coordinates of the transmitter in the global coordinate system, the rotation frequency of the transmitter head, the geometric characteristics of the fan beam emitted by the transmitter, and the random errors that occur during normal measurement processes. A detailed description and the specific values of the environmental parameters of the simulation environment are presented in Table 1.
In the simulation environment, we can assume that the receiver is completely coincident with the tracked  target, ensure that the tracked target moves according to a specific theoretical curve, and use the transmitter to measure the tracked target. To verify that the proposed algorithm is suitable for use with different motion trajectories, we use three types of curve to test the algorithm, comprising a 1D straight line, a 2D sinusoidal curve, and a 3D spiral. At the same time, to verify the robustness of the algorithm and prove its invariance with respect to the direction and orientation of the trajectory in space, we consider the cases where the onedimensional straight line is directed along the x-axis, the y-axis, and the z-axis; the cases where the twodimensional sinusoid is located on the xoy plane, the xoz plane, and the yoz plane; and the cases where the axes for the three-dimensional spiral are oriented along the x-axis, the y-axis, and the z-axis. Finally, to verify the sensitivity of the proposed algorithm to the speed of the tracked target, we let the tracked target move at speeds of 10, 20, 30, 40, and 50 mm/s. A total of 200 points per trial were measured using the transmitter. The test curve, the motion equation, and the starting point coordinates are presented in Table 2.     parts, where each part expresses when the tracked object moves according to the motion trajectory at the different speeds (10, 20, 30, 40, and 50 mm/s), and shows the distributions of the measurement results before correction and after correction. Figures 10, 11, and 12 show the variations in the errors for the measurement results (i.e., the Euclidean distance between the measurement result and the theoretical trajectory in each case) with respect to the movement speed of the tracked target and the degree of fluctuation that occurs at different times when the iGPS measurement system is tracking trajectory curves with different complexities. Tables 3 and 4 detail the main statistical features of the simulation results.
From the simulation experiment results and the data statistics, we found that the measurement uncertainty and the degree of fluctuation in the measurements from the iGPS measurement system will increase with acceleration in the speed of movement of the tracked target and with increases in the complexity of the movement curve, which is in line with existing cognitive laws. The simulation correction algorithm proposed in this work not only greatly reduces the errors and improves the measurement stability, but also is hardly affected by the object's speed or the complexity of the trajectory. The validity of the modified algorithm is thus confirmed.

Conclusion
Use of an iGPS measurement system in industrial production is relatively common, but when the iGPS is used to track a target dynamically, the measurement accuracy will decrease. After in-depth research into the measurement principle of the iGPS measurement system, we have proposed a compensation algorithm to  compensate the data obtained via iGPS dynamic tracking measurements when using iGPS to track a dynamic target. This method mainly uses the motion equation for the infrared signal of the transmitter and the theoretical equation for the moving target as a basis on which to compensate for the position of the moving object and then compensate the measured data. We used MATLAB to build a suitable simulation environment and then selected representative one-dimensional curves, two-dimensional curves, and three-dimensional curves to test the proposed algorithm. After testing, the algorithm proposed in this paper can improve the tracking and measurement accuracy of the iGPS measurement system effectively for use with dynamic targets. It should be noted that this algorithm is more suitable for situations in which there is no obvious deviation in the track of the tracked target, but where the tracked target shows obvious overspeed or delay characteristics.

Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.

Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported by the European Regional Development Fund (ERDF) and the state of Saxony-Anhalt (ZWB: 2004/00070 | Laufzeit: 01.08.2020-30.04.2022).

Supplemental material
Supplemental material for this article is available online. Figure 11. Errors in the sinusoidal motion trajectories (before compensation and after compensation). Figure 12. Errors in the helical motion trajectories (before compensation and after compensation).