# Research on BeiDou Satellite Positioning Algorithm Based on GPRS Technology

Authors: Li Yang; Yunhan Zhang; Haote Ruan
Journal: Mobile Information Systems
 (2021)

---

## Abstract

The BeiDou Satellite Navigation System of China can provide users with high precision, as well as all-weather and real-time positioning and navigation information. It can be widely used in many applications. However, new challenges appear with the expansion of the 5G communication system. To eradicate or weaken the influence of various errors in BeiDou positioning, a BeiDou satellite positioning algorithm based on GPRS technology is proposed. According to the principles of the BeiDou Satellite navigation system, the navigation and positioning data are obtained and useful information are extracted and sent to the communication network through the wireless module. The error is corrected by establishing a real-time kinematic (RTK) mathematical model, and the pseudorange is calculated by carrier phase to further eliminate the relativistic and multipath errors. Based on the results of error elimination, the BeiDou satellite positioning algorithm is improved and the positioning error is corrected. The experimental results show that the positioning accuracy and efficiency of the algorithm can meet the actual needs of real-time dynamic positioning systems.


---

## Body

## 1. Introduction

The BeiDou Satellite Navigation System (BSNS) is a self-designed global navigation satellite system of China [1]. It is widely used for military, public navigation, intelligent monitoring of the ocean, oil, communication, disaster prevention, and transportations [2]. However, problems still exist in the BSNS with the growth of the 5G networking technologies and application requirements [2]. However, because of hardware and environmental factors of BeiDou satellite and receiver, during the generation and communion of satellite signals, errors are produced. When the satellite signal passes through the ionosphere, troposphere, and other media, they are refracted and reflected and errors are produced. The existence of these errors greatly reduces the accuracy of BeiDou positioning [3]. Eliminating or weakening the influence of various errors in BeiDou positioning is a very important task for high-precision real-time dynamic positioning systems [3, 4].Recently, there are a lot of studies to improve BeiDou positioning and communication services. Wang and Qiu [5] proposed a BeiDou differential positioning method based on the Internet of Things (IoT) and edge computing. To ensure the load balance of the edge nodes, the resource allocation of the terminal location request is carried out using the improved genetic algorithm, to reduce the service delay of the whole edge network. In addition, the unscented Kalman filter optimized based on the edge node algorithm is used to improve the positioning accuracy of Internet of Things (IoT) terminals. The results show that this method has good positioning performance and can provide real-time positioning service for large-scale IoT terminals, and the effect of this method on single-point positioning is better than that on multipoint positioning. Liu et al. [6] designed a satellite positioning system based on a nonparametric Bayesian model. A nonparametric Bayesian model based on the Dirichlet process is introduced in the process of satellite positioning estimation. Under the condition that the observed characteristics of navigation satellites are uncertain and there is a risk of performance degradation, a Gaussian distribution mixed update strategy driven by the Dirichlet process mixed model is proposed and the calculation scheme of multifilter dynamic joint state estimation is given. Simulation results and field measurement data show that the introduction of the Dirichlet process hybrid model in conventional positioning estimation can effectively adapt to the unknown and uncertain navigation satellite observation characteristics, improve the tolerance of positioning performance, and reduce the risk of model mismatch and performance degradation. However, this method does not extract the data related to BeiDou satellite navigation and positioning and requires a long time to locate. The authors of [7] proposed a BeiDou satellite navigation measurement system based on an empirical demonstration model. The correlation analysis model of defining indicators is constructed, the relationship between indicators is identified, and a hierarchal system decision-making method is presented. Based on the empirical estimation and expected result model, the index value is divided according to the final service performance of the system and the dynamic expression of the complex relationship of index matching is realized. Finally, by analyzing the positioning principles under the basic traffic control mode, taking the satellite clock error as the target, the relevant index items are established to study the relationship between the index items. The results show that this method can explain the demonstration of satellite navigation system index value which is conducive to the control and adjustment of satellite navigation system performance. However, this method has the problem of low positioning accuracy. Wei et al. [8] designed and realized a remote monitoring system for vehicle location tracking based on the combination of BSNS and global system for mobile communication (GSM). The system was capable of tracking vehicle positions and location and providing warning messages if the vehicle unexpectedly moves more than 100 m at a low cost. The system was also capable of utilizing multiple available navigation satellite systems and mobile networks. However, the system was entirely dependent on the mobile compunction system. Yanchen [9] proposed remote positioning and monitoring system for vehicles based on BeiDou. The BeiDou positioning module is developed as a component to accept the satellite positioning information. These position data are further managed by an STM32 module. Using a GPRS network, the relevant information is then sent to the monitoring center. The system is also effective in using a web browser and Google Maps for creating a map in real-time. The system has the potential to provide remote monitoring for vehicles and is safe and stable. However, the system requires a long position time for tracking vehicles.To solve the problems of poor multipoint positioning effect, long positioning time, and low positioning accuracy existing in traditional methods, an improved BeiDou satellite positioning algorithm based on GPRS technology is proposed. The RTK mathematical model is applied, and the pseudorange is calculated to further eliminate the relativistic and multipath errors. Based on the results of error elimination, the BeiDou satellite positioning algorithm is improved and the positioning error is corrected.The rest of the paper is organized as follows. In Section2, the methods of RTK mathematical model, pseudorange calculation, and improved BeiDou algorithm are presented. In Section 3, different positioning results are presented, and finally, the conclusion is given in Section 4.


## 2. BeiDou Satellite Positioning Algorithm Design

### 2.1. Principles of BeiDou Satellite Navigation System

The BSNS consists of navigation satellites, ground measurement, control networks, and user equipment. The navigation and communication satellites are not only reference points for spatial positions, but also communication relay stations. The ground measurement and control network includes the main control station, orbit measurement station, barometric altitude measurement station, and calibration station. The main control station is responsible for controlling the work of the entire system [10]. The orbiting station is used as a reference coordinate for positioning at a known location and can measure the propagation distance between the satellite and the orbiting station. Each orbit measurement station sends the measured data to the main control station via satellite, and the main control station calculates the position of the satellite. The basic working process of the system is shown in Figure 1.Figure 1
BeiDou satellite positioning principle diagram.According to Figure1, after the satellite receives the signal, the frequency is amplified by the converter and the S-band broadcast is sent to the users in the area. The user responds to the signal sent by one of the satellites in the area and at the same time sends the content of the service applied for by the user to the satellite and transmits it to the ground console through the satellite [11]. The console demodulates the signal sent by the user, measures the distance between the user and the satellite where the user is located, and then processes the service requested by the user based on this.Theoretically, the user’s spatial coordinate isx,y,z and the kth satellite in the BeiDou satellite positioning system is xk,yk,zk. The real distance between the user and the kth satellite can be expressed by the following equation:(1)Di=xk−x+yk−y+zk−z2.However, in the actual engineering application process affected by various uncontrollable factors, it is difficult for the receiver to measure the true distance. Because the measured distance at this time contains various errors, it is collectively referred to as “pseudorange” and can be expressed byη. The pseudorange can be computed as(2)ηk=1−Dimaxx,y,z.In a real-time application, the receiving device can receive signals from multiple navigation satellites at the same time. After processing the data through related algorithms, more accurate navigation and positioning information can be obtained and the receiving device can be used to obtain pseudorange measurement equations containing unknowns; these unknowns are the user’s spatial coordinates and the time error of the receiving device. Therefore, by solving the pseudorange equation, the current user’s position and time difference can be obtained.


### 2.2. BeiDou Satellite Navigation and Positioning Data Acquisition

Based on the theory of BSNS, the navigation and positioning data are used to extract the useful information from the data received by the BeiDou satellite navigation and positioning system and then send the information to the communication network through the wireless module [12]. At present, there are mainly GSM, general packet radio system (GPRS), and CDMA wireless communication modes. Among them, the more commonly used is GSM communication, but the delay that occurs in communication is the main problem in GSM. Under the condition of equal transmission rate, frequency utilization, information delay, and coverage, GSM, as a means of communication, has a large number of communication blind areas. Although the transmission speed of the CDMA network [13] is fast, its construction scope is relatively small. Considering the transmission rate, frequency utilization, network delay, and coverage, this study selected the GPRS network as the main communication platform.GPRS not only provides PTP (point-to-point) and PTM data services but also supports supplementary services and SMS services. GPRS communication system has the advantages of high transmission rate and good real-time performance and supports IP protocol. As long as the BeiDou satellite positioning terminal is started, it must be connected with the monitoring and management system all the time and carry out data transmission, to obtain the positioning data in real time. Therefore, good communication is needed between the BeiDou satellite positioning terminal and the monitoring and management system. The BeiDou satellite positioning terminal based on GPRS makes full use of the characteristics that GPRS supports IP protocol and can access the external data network. Currently, the BeiDou satellite positioning terminal mainly adopts a short message communication mode. After using GPRS technology, the call establishment time of users is greatly shortened and it can almost be “always online.” In addition, GPRS is based on the amount of data transmitted by the operator rather than the connection time, so that the service cost of each user is reduced. Compared with GSM, its real time, burst, and cost performance are much higher. Therefore, this study applied GPRS data communication to complete the acquisition and transmission of positioning information. Figure2 shows the general architecture of the GPRS communication system.Figure 2
GPRS communication system.As shown in Figure2, in the GPRS system, Advanced RISC Machine (ARM) and GPRS use serial ports to communicate and use the wireless data transmission function of GPRS to connect to the server, so that every terminal connected to GPRS can connect to the server.In the process of BSNS data acquisition, the control of the GPRS system communication module is mainly to send specific AT commands through the serial port. The AT command belongs to the underlying GPRS command group, which is used to control GPRS for wireless data transmission. After the completion of the hardware connection, before entering the network operation, it is necessary to set the baud rate and gateway of the GPRS communication module and then get the required data source through the AT command. The commonly used AT instructions are shown in Table1.Table 1
Common AT commands.
Serial numberNameDescription1AT^UTCFSet serial communication format2AT^BARRead DTU hardware number3AT^BAUDSet the serial port communication rate4AT^GPRSData connection instructions


### 2.3. RTK Mathematical Model Construction

The BeiDou satellite signal will be affected by various factors during transmission, propagation, and reception, resulting in measurement errors. Some of these errors can be reduced by modifying the model; however, there are still few nonnegligible errors that affect the positioning accuracy. Therefore, this article corrects the error by establishing the RTK mathematical model. The RTK mathematical model sends the carrier observations of the reference station to the user through the data link and calculates the difference with the user’s carrier phase observations to obtain the user’s position coordinates.Assuming that the reference stationG1 and mobile station G2 observe satellites A1 and A2 in epochs T1 and T2, four independent observations can be obtained, respectively, and they are set to λ1t1, λ2t1, λ1t2, and λ2t2, respectively. Then, the carrier phase observation can be expressed as(3)Nik=λ1t1−λ2t1+λ2t1−λ2t2vix1k+x2k+1,where Nik represents the observation epoch, x1k is the carrier signal frequency, x2k+1 shows the observation and measurement of the satellite by the receiver, and vi represents the propagation speed of light in a vacuum.Assuming that receivermi locks the integer ambiguity of the carrier signal βj at a certain time and considering the influence of ionospheric refraction on the propagation distance of satellite carrier signal, the actual distance between the satellite and the receiver is calculated using the following equation:(4)dmi=ln1−Δd⋅∑i=1npi×Rit,where Δd represents the geometric distance between the satellite and the receiver, pi shows the clock error of the receiver, Rit represents the satellite clock error, and n represents the number of satellites. Take the difference of the carrier behavior observations of the same satellite at the observation epoch Nik between the base station G1 and the mobile station G2, and substitute the respective observation equations to obtain the carrier phase single-difference equation:(5)Δμi=Nik2+G1sin+G1cosα1/2/cosG2+α2/22Δt,where α1 represents the carrier phase difference, α2 represents the carrier phase difference estimate, and Δt represents the continuous real-time carrier phase time-frequency [14].Observing equation (5), it can be found that the single-difference equation for the same satellite can eliminate the satellite clock error [15]. In the same way, the single-difference equation of the same receiver for different satellites can eliminate the receiver clock error, and the carrier phase double-difference observation equation is as follows:(6)s′=∑i=1nσ1pi+σ2pj/∑i=1nΔμiRit0,where σ1 represents the carrier attitude of the satellite carrier signal, σ2 shows the satellite line-of-sight angle, Δμi is the different satellite carrier signals received by the same receiver, pi represents the influence of the ionosphere on the propagation distance of the satellite carrier signal, and pj represents the influence of the troposphere on the propagation distance of the satellite carrier signal.Observing this carrier phase double-difference equation, we can see that the influence of satellite clock error, receiver clock error, current layer, and troposphere on the propagation distance of the carrier signal is eliminated. It is worth noting that since the mathematical model of the established double-difference equation does not involve relativistic effect errors and multipath errors, the RTK model cannot be used to eliminate the errors and multipath errors caused by the relativistic effect [16].


### 2.4. Pseudorange Measurement Method

Since the RTK model constructed in Section2.3 cannot eliminate the error and multipath error caused by the relativistic effect, a new method is presented in this section to measure the calculated pseudorange of the carrier phase [17].The basic principle of calculating pseudorange from the carrier phase is as follows.Suppose satelliteu sends out carrier signal phase ϑjtr at a time tr and the phase of the signal received by the receiver q at a time tc is ϑqtc, if the error factor is ignored and the uniform carrier frequency of the signal propagation medium does not change, the distance from the satellite u to the receiver q can be computed as(7)du⟶q=ϑjtr−ϑqtcdmi.The receiver measures the distance by measuring the phase difference between the locally generated carrier and the received carrier. However, in practical application, the phase difference is only less than one cycle, but the number of integer cycles of the phase from signal sending to receiving is still unknown. The common method is to introduce a variable integer ambiguity and calculate the integer ambiguity through continuous observation, so as to calculate the complete phase difference between the two and calculate the pseudorange. The actual distance between the receiver and the satellite is as follows:(8)du⟶q=ϑjtr−ϑqtcXl+Vl+dl,where Xl represents the distance between the antennas, Vl shows the ionospheric delay correction amount, and dl is the phase of less than one week.If the receiverq continuously observes the satellite u, the distance calculated by multiple measurements will tend to change regularly; at this time, the true phase difference can be obtained to calculate the false. For the calculation of the actual distance, because of the limitations of the receiver hardware used in the present study (the internal resources of the receiver do not allow user operations), the direct output of the receiver will use the carrier phase observation value that contains the ambiguity of the whole cycle.


### 2.5. Improved BeiDou Satellite Positioning Algorithm

The BeiDou satellite positioning system presented in the proposed study is based on three satellites. If the satellites in the BSNS can send continuous navigation messages to users, then it can also be improved into a passive positioning system capable of continuous navigation.The pseudorange equations of the three satellites measured by the receiver can be expressed as(9)Δ∂M=yi′mxi′+myi′+1eii′'M′,where Δ∂M represents the estimated deviation of the approximate pseudorange, xi′ is the receiver time offset, yi′ is the initial coordinate information of the receiver, ei′ represents the pseudorange from the receiving point to each transmitting station, and M′ represents the unknown quantity in the pseudorange equation. Since there are only three satellites in the BeiDou satellite positioning system, it is impossible to perform positioning using only the pseudorange measurement. Therefore, it is also necessary to consider using the altimeter provided by the user.The user’s elevation or geocentric distance measurement equation obtained by using the built-in air pressure altitude measurement device is computed as(10)Fk=A1⋅Fcosπf1a/fsA2⋅Fsin2πf2a/fk,where A1 represents the geocentric coordinates of the station, A2 represents the elevation control network, f1 is the plane reference, f2 shows the elevation reference, fs represents the unified elevation reference, and fk represents the user’s altitude.Supposex0,y0,z0 is the estimated value of the precise position x1,y1,z1 of the receiver, x2,y2,z2 is the estimation error. In the actual positioning solution, x0=x1+x2, y0=y1+y2, and z0=z1+z2 are substituted into equation (9), and Taylor series expansion is carried out. After linearization, the following results are obtained:(11)xi,yi,zi=∫∫Pgx,y,zlogPgΔx,Δy,ΔzPhx0,y0,z0Pgx1,y1,z1=∫∫Pgx,ylogPxPyPzPhx,yPhy|xPhz=EPgPh−logPgPhx0,y0,z0,where Pg shows the argument of latitude, Ph represents the argument of longitude, and E is the position of the satellite on the two-dimensional orbital plane.According to the above calculation process, it can be found that there are four unknowns in the three satellites, and the following equation for solving the position of the user machine is obtained:(12)Px,y,z=ΔxΔyΔzΔkl×ΔgxΔgyΔgzΔgl=g11g12g13g14g21g22g23g24g31g32g33g34g41g42g43g44,where(13)Δkl=0,Ckl≤Vk−1,Ckl−Vl,k−1,Vkl+Cl,k−1,1,Ckl≥Vk−1,(14)Δgl=1,Dgl≥Vg1,Dgl−Vg2Vg1−Vg2,Vg2<Dgl<Vg1,0,Dgl≤Vgl.We used the iterative method to solve equation (12) multiple times until the results met the accuracy requirement of the solution.


### 2.6. Compensation Method of BeiDou Satellite Positioning Error

To improve the positioning accuracy of the system, the positioning error caused by the error sources must be corrected. Based on the concept of the composition, positioning algorithm, and positioning error of the BeiDou Satellite Navigation System, the ephemeris error, ionospheric error, and tropospheric error in the navigation system positioning are analyzed in-depth, to reduce the ephemeris error. A single-point positioning error compensation method based on a dual-frequency combined ionospheric deionization model for ionospheric errors and a high-precision regional fusion model for reducing tropospheric errors are presented [17].There is a certain error between the theoretical position of the satellite and the actual position in the actual situation, that is, the satellite orbit difference of the broadcast ephemeris (also known as the satellite orbit deviation). The BeiDou satellite is relatively stationary to Earth, and it is difficult to separate the satellite clock of the BeiDou satellite orbit determination clock during analysis. At the same time, light pressure has a greater impact on the BeiDou satellite. Under the same conditions, the ranging error caused by the BeiDou ephemeris is about twice that of an ordinary satellite.We employed the improved low-order surface model to correct the ephemeris error and used the ephemeris errors of multiple difference stations to build a low-order surface model in a certain service area and broadcast several parameters of the surface model to users. The user uses the surface model parameters to calculate the star error of the location based on the latitude and longitude of its location and directly corrects it.The low-order surface model can be characterized as(15)S11=∑i=1nXi−X—Xi−X—k,(16)S22=∑i=1nYi−Y—Yi−Y—k,(17)S33=∑i=1nZi−Z—Zi−Z—k,(18)X—=1n∑i=1nXi,Y—=1n∑i=1nYi,Z—=1n−1∑i=1nZi,where X—, Y—, and Z— all represent the coordinate information of the user’s location. Let σij be the jth coefficient matrix in the ith row; after iteration, it can be expressed as(19)σij=φximφxjn,where φxi represents the ephemeris error and φxj shows the remaining ephemeris error after eliminating the star clock error. The iteration matrix corresponding to equation (19) has six forms. Taking i=2 as an example, the iteration matrix is given:(20)F=1w11w21w1121w12w22w222⋮⋮⋮⋮1w1nw2nw2n2.In equation (20), the number of rows iFs equal to the number of differential stations and w1n and w2n represent the longitude and latitude of the differential stations, respectively. According to the parameters, the ephemeris error of the user’s location is calculated as(21)F′=Γt−p⋅F,where F′ is the iterative matrix corresponding to the user’s location, which has six forms, based on equation (20), which can be expressed as follows:(22)F′=1,w1n,w2n,w2n2.The corrected residual ephemeris error is(23)φxi=F2−φxj2.In summary, using the new BeiDou satellite positioning improvement and error compensation method, the design and optimization of the BeiDou satellite positioning algorithm have been realized.


## 2.1. Principles of BeiDou Satellite Navigation System

The BSNS consists of navigation satellites, ground measurement, control networks, and user equipment. The navigation and communication satellites are not only reference points for spatial positions, but also communication relay stations. The ground measurement and control network includes the main control station, orbit measurement station, barometric altitude measurement station, and calibration station. The main control station is responsible for controlling the work of the entire system [10]. The orbiting station is used as a reference coordinate for positioning at a known location and can measure the propagation distance between the satellite and the orbiting station. Each orbit measurement station sends the measured data to the main control station via satellite, and the main control station calculates the position of the satellite. The basic working process of the system is shown in Figure 1.Figure 1
BeiDou satellite positioning principle diagram.According to Figure1, after the satellite receives the signal, the frequency is amplified by the converter and the S-band broadcast is sent to the users in the area. The user responds to the signal sent by one of the satellites in the area and at the same time sends the content of the service applied for by the user to the satellite and transmits it to the ground console through the satellite [11]. The console demodulates the signal sent by the user, measures the distance between the user and the satellite where the user is located, and then processes the service requested by the user based on this.Theoretically, the user’s spatial coordinate isx,y,z and the kth satellite in the BeiDou satellite positioning system is xk,yk,zk. The real distance between the user and the kth satellite can be expressed by the following equation:(1)Di=xk−x+yk−y+zk−z2.However, in the actual engineering application process affected by various uncontrollable factors, it is difficult for the receiver to measure the true distance. Because the measured distance at this time contains various errors, it is collectively referred to as “pseudorange” and can be expressed byη. The pseudorange can be computed as(2)ηk=1−Dimaxx,y,z.In a real-time application, the receiving device can receive signals from multiple navigation satellites at the same time. After processing the data through related algorithms, more accurate navigation and positioning information can be obtained and the receiving device can be used to obtain pseudorange measurement equations containing unknowns; these unknowns are the user’s spatial coordinates and the time error of the receiving device. Therefore, by solving the pseudorange equation, the current user’s position and time difference can be obtained.


## 2.2. BeiDou Satellite Navigation and Positioning Data Acquisition

Based on the theory of BSNS, the navigation and positioning data are used to extract the useful information from the data received by the BeiDou satellite navigation and positioning system and then send the information to the communication network through the wireless module [12]. At present, there are mainly GSM, general packet radio system (GPRS), and CDMA wireless communication modes. Among them, the more commonly used is GSM communication, but the delay that occurs in communication is the main problem in GSM. Under the condition of equal transmission rate, frequency utilization, information delay, and coverage, GSM, as a means of communication, has a large number of communication blind areas. Although the transmission speed of the CDMA network [13] is fast, its construction scope is relatively small. Considering the transmission rate, frequency utilization, network delay, and coverage, this study selected the GPRS network as the main communication platform.GPRS not only provides PTP (point-to-point) and PTM data services but also supports supplementary services and SMS services. GPRS communication system has the advantages of high transmission rate and good real-time performance and supports IP protocol. As long as the BeiDou satellite positioning terminal is started, it must be connected with the monitoring and management system all the time and carry out data transmission, to obtain the positioning data in real time. Therefore, good communication is needed between the BeiDou satellite positioning terminal and the monitoring and management system. The BeiDou satellite positioning terminal based on GPRS makes full use of the characteristics that GPRS supports IP protocol and can access the external data network. Currently, the BeiDou satellite positioning terminal mainly adopts a short message communication mode. After using GPRS technology, the call establishment time of users is greatly shortened and it can almost be “always online.” In addition, GPRS is based on the amount of data transmitted by the operator rather than the connection time, so that the service cost of each user is reduced. Compared with GSM, its real time, burst, and cost performance are much higher. Therefore, this study applied GPRS data communication to complete the acquisition and transmission of positioning information. Figure2 shows the general architecture of the GPRS communication system.Figure 2
GPRS communication system.As shown in Figure2, in the GPRS system, Advanced RISC Machine (ARM) and GPRS use serial ports to communicate and use the wireless data transmission function of GPRS to connect to the server, so that every terminal connected to GPRS can connect to the server.In the process of BSNS data acquisition, the control of the GPRS system communication module is mainly to send specific AT commands through the serial port. The AT command belongs to the underlying GPRS command group, which is used to control GPRS for wireless data transmission. After the completion of the hardware connection, before entering the network operation, it is necessary to set the baud rate and gateway of the GPRS communication module and then get the required data source through the AT command. The commonly used AT instructions are shown in Table1.Table 1
Common AT commands.
Serial numberNameDescription1AT^UTCFSet serial communication format2AT^BARRead DTU hardware number3AT^BAUDSet the serial port communication rate4AT^GPRSData connection instructions


## 2.3. RTK Mathematical Model Construction

The BeiDou satellite signal will be affected by various factors during transmission, propagation, and reception, resulting in measurement errors. Some of these errors can be reduced by modifying the model; however, there are still few nonnegligible errors that affect the positioning accuracy. Therefore, this article corrects the error by establishing the RTK mathematical model. The RTK mathematical model sends the carrier observations of the reference station to the user through the data link and calculates the difference with the user’s carrier phase observations to obtain the user’s position coordinates.Assuming that the reference stationG1 and mobile station G2 observe satellites A1 and A2 in epochs T1 and T2, four independent observations can be obtained, respectively, and they are set to λ1t1, λ2t1, λ1t2, and λ2t2, respectively. Then, the carrier phase observation can be expressed as(3)Nik=λ1t1−λ2t1+λ2t1−λ2t2vix1k+x2k+1,where Nik represents the observation epoch, x1k is the carrier signal frequency, x2k+1 shows the observation and measurement of the satellite by the receiver, and vi represents the propagation speed of light in a vacuum.Assuming that receivermi locks the integer ambiguity of the carrier signal βj at a certain time and considering the influence of ionospheric refraction on the propagation distance of satellite carrier signal, the actual distance between the satellite and the receiver is calculated using the following equation:(4)dmi=ln1−Δd⋅∑i=1npi×Rit,where Δd represents the geometric distance between the satellite and the receiver, pi shows the clock error of the receiver, Rit represents the satellite clock error, and n represents the number of satellites. Take the difference of the carrier behavior observations of the same satellite at the observation epoch Nik between the base station G1 and the mobile station G2, and substitute the respective observation equations to obtain the carrier phase single-difference equation:(5)Δμi=Nik2+G1sin+G1cosα1/2/cosG2+α2/22Δt,where α1 represents the carrier phase difference, α2 represents the carrier phase difference estimate, and Δt represents the continuous real-time carrier phase time-frequency [14].Observing equation (5), it can be found that the single-difference equation for the same satellite can eliminate the satellite clock error [15]. In the same way, the single-difference equation of the same receiver for different satellites can eliminate the receiver clock error, and the carrier phase double-difference observation equation is as follows:(6)s′=∑i=1nσ1pi+σ2pj/∑i=1nΔμiRit0,where σ1 represents the carrier attitude of the satellite carrier signal, σ2 shows the satellite line-of-sight angle, Δμi is the different satellite carrier signals received by the same receiver, pi represents the influence of the ionosphere on the propagation distance of the satellite carrier signal, and pj represents the influence of the troposphere on the propagation distance of the satellite carrier signal.Observing this carrier phase double-difference equation, we can see that the influence of satellite clock error, receiver clock error, current layer, and troposphere on the propagation distance of the carrier signal is eliminated. It is worth noting that since the mathematical model of the established double-difference equation does not involve relativistic effect errors and multipath errors, the RTK model cannot be used to eliminate the errors and multipath errors caused by the relativistic effect [16].


## 2.4. Pseudorange Measurement Method

Since the RTK model constructed in Section2.3 cannot eliminate the error and multipath error caused by the relativistic effect, a new method is presented in this section to measure the calculated pseudorange of the carrier phase [17].The basic principle of calculating pseudorange from the carrier phase is as follows.Suppose satelliteu sends out carrier signal phase ϑjtr at a time tr and the phase of the signal received by the receiver q at a time tc is ϑqtc, if the error factor is ignored and the uniform carrier frequency of the signal propagation medium does not change, the distance from the satellite u to the receiver q can be computed as(7)du⟶q=ϑjtr−ϑqtcdmi.The receiver measures the distance by measuring the phase difference between the locally generated carrier and the received carrier. However, in practical application, the phase difference is only less than one cycle, but the number of integer cycles of the phase from signal sending to receiving is still unknown. The common method is to introduce a variable integer ambiguity and calculate the integer ambiguity through continuous observation, so as to calculate the complete phase difference between the two and calculate the pseudorange. The actual distance between the receiver and the satellite is as follows:(8)du⟶q=ϑjtr−ϑqtcXl+Vl+dl,where Xl represents the distance between the antennas, Vl shows the ionospheric delay correction amount, and dl is the phase of less than one week.If the receiverq continuously observes the satellite u, the distance calculated by multiple measurements will tend to change regularly; at this time, the true phase difference can be obtained to calculate the false. For the calculation of the actual distance, because of the limitations of the receiver hardware used in the present study (the internal resources of the receiver do not allow user operations), the direct output of the receiver will use the carrier phase observation value that contains the ambiguity of the whole cycle.


## 2.5. Improved BeiDou Satellite Positioning Algorithm

The BeiDou satellite positioning system presented in the proposed study is based on three satellites. If the satellites in the BSNS can send continuous navigation messages to users, then it can also be improved into a passive positioning system capable of continuous navigation.The pseudorange equations of the three satellites measured by the receiver can be expressed as(9)Δ∂M=yi′mxi′+myi′+1eii′'M′,where Δ∂M represents the estimated deviation of the approximate pseudorange, xi′ is the receiver time offset, yi′ is the initial coordinate information of the receiver, ei′ represents the pseudorange from the receiving point to each transmitting station, and M′ represents the unknown quantity in the pseudorange equation. Since there are only three satellites in the BeiDou satellite positioning system, it is impossible to perform positioning using only the pseudorange measurement. Therefore, it is also necessary to consider using the altimeter provided by the user.The user’s elevation or geocentric distance measurement equation obtained by using the built-in air pressure altitude measurement device is computed as(10)Fk=A1⋅Fcosπf1a/fsA2⋅Fsin2πf2a/fk,where A1 represents the geocentric coordinates of the station, A2 represents the elevation control network, f1 is the plane reference, f2 shows the elevation reference, fs represents the unified elevation reference, and fk represents the user’s altitude.Supposex0,y0,z0 is the estimated value of the precise position x1,y1,z1 of the receiver, x2,y2,z2 is the estimation error. In the actual positioning solution, x0=x1+x2, y0=y1+y2, and z0=z1+z2 are substituted into equation (9), and Taylor series expansion is carried out. After linearization, the following results are obtained:(11)xi,yi,zi=∫∫Pgx,y,zlogPgΔx,Δy,ΔzPhx0,y0,z0Pgx1,y1,z1=∫∫Pgx,ylogPxPyPzPhx,yPhy|xPhz=EPgPh−logPgPhx0,y0,z0,where Pg shows the argument of latitude, Ph represents the argument of longitude, and E is the position of the satellite on the two-dimensional orbital plane.According to the above calculation process, it can be found that there are four unknowns in the three satellites, and the following equation for solving the position of the user machine is obtained:(12)Px,y,z=ΔxΔyΔzΔkl×ΔgxΔgyΔgzΔgl=g11g12g13g14g21g22g23g24g31g32g33g34g41g42g43g44,where(13)Δkl=0,Ckl≤Vk−1,Ckl−Vl,k−1,Vkl+Cl,k−1,1,Ckl≥Vk−1,(14)Δgl=1,Dgl≥Vg1,Dgl−Vg2Vg1−Vg2,Vg2<Dgl<Vg1,0,Dgl≤Vgl.We used the iterative method to solve equation (12) multiple times until the results met the accuracy requirement of the solution.


## 2.6. Compensation Method of BeiDou Satellite Positioning Error

To improve the positioning accuracy of the system, the positioning error caused by the error sources must be corrected. Based on the concept of the composition, positioning algorithm, and positioning error of the BeiDou Satellite Navigation System, the ephemeris error, ionospheric error, and tropospheric error in the navigation system positioning are analyzed in-depth, to reduce the ephemeris error. A single-point positioning error compensation method based on a dual-frequency combined ionospheric deionization model for ionospheric errors and a high-precision regional fusion model for reducing tropospheric errors are presented [17].There is a certain error between the theoretical position of the satellite and the actual position in the actual situation, that is, the satellite orbit difference of the broadcast ephemeris (also known as the satellite orbit deviation). The BeiDou satellite is relatively stationary to Earth, and it is difficult to separate the satellite clock of the BeiDou satellite orbit determination clock during analysis. At the same time, light pressure has a greater impact on the BeiDou satellite. Under the same conditions, the ranging error caused by the BeiDou ephemeris is about twice that of an ordinary satellite.We employed the improved low-order surface model to correct the ephemeris error and used the ephemeris errors of multiple difference stations to build a low-order surface model in a certain service area and broadcast several parameters of the surface model to users. The user uses the surface model parameters to calculate the star error of the location based on the latitude and longitude of its location and directly corrects it.The low-order surface model can be characterized as(15)S11=∑i=1nXi−X—Xi−X—k,(16)S22=∑i=1nYi−Y—Yi−Y—k,(17)S33=∑i=1nZi−Z—Zi−Z—k,(18)X—=1n∑i=1nXi,Y—=1n∑i=1nYi,Z—=1n−1∑i=1nZi,where X—, Y—, and Z— all represent the coordinate information of the user’s location. Let σij be the jth coefficient matrix in the ith row; after iteration, it can be expressed as(19)σij=φximφxjn,where φxi represents the ephemeris error and φxj shows the remaining ephemeris error after eliminating the star clock error. The iteration matrix corresponding to equation (19) has six forms. Taking i=2 as an example, the iteration matrix is given:(20)F=1w11w21w1121w12w22w222⋮⋮⋮⋮1w1nw2nw2n2.In equation (20), the number of rows iFs equal to the number of differential stations and w1n and w2n represent the longitude and latitude of the differential stations, respectively. According to the parameters, the ephemeris error of the user’s location is calculated as(21)F′=Γt−p⋅F,where F′ is the iterative matrix corresponding to the user’s location, which has six forms, based on equation (20), which can be expressed as follows:(22)F′=1,w1n,w2n,w2n2.The corrected residual ephemeris error is(23)φxi=F2−φxj2.In summary, using the new BeiDou satellite positioning improvement and error compensation method, the design and optimization of the BeiDou satellite positioning algorithm have been realized.


## 3. Experiments

To verify the positioning effect of the BeiDou satellite positioning algorithm based on GPRS, a simulation was carried out. In this study, the BeiDou differential positioning method based on the IoT and edge computing [5] and the satellite positioning method based on the nonparametric Bayesian model [6] were selected as the comparison methods and were compared with the proposed method.


### 3.1. Experimental Debugging

Based on the virtual simulation experimental platform, the hardware circuit and software program of the platform were debugged. In the process of debugging, we need to use some of the more commonly used software development and debugging tools. We employ the QT user interface design, development, and debugging software. The hardware system of this debugging platform mainly includes ARM core board debugging, BeiDou module circuit debugging, and GPRS module circuit debugging. Among them, the ARM core board is mainly used to check whether it is consistent with the system schematic diagram and to check whether there are problems such as missing soldering or virtual soldering. We powered on the system and checked that the hardware is normal by checking the status of the signal indicator.After the completion of debugging process of the various parameters of the experimental platform, different methods were tested, and the test results are as follows.


### 3.2. Analysis of Experimental Results

#### 3.2.1. Comparison of Single- and Multipoint Positioning

Using the location and environmental parameters, we compared the single- and multipoint positioning results for the proposed method, the BeiDou differential positioning method based on IoT and edge computing, and the satellite positioning method based on a nonparametric Bayesian model, respectively. The longitude and latitude coordinates of the positioning target were collected at the acquisition speed of 1 s and were represented in graphical format. The result of a single-point and multipoint positioning for the three methods is shown in Figures3 and 4, respectively.Figure 3
Single-point positioning result.Figure 4
Multipoint positioning result.According to Figures3 and 4, when using the proposed method to locate the target point, whether it is a single-point target or a multipoint target, the positioning results are close to the target point and the similarity is high. When using the BeiDou differential positioning method based on the IoT and edge computing and the satellite positioning method based on the nonparametric Bayesian model to locate the single-point target and multipoint target, there is a certain deviation between the positioning result and the target point. It shows that the proposed method can not only locate the single-point target correctly but also locate the multipoint target accurately.


#### 3.2.2. Comparison of Positioning Accuracy

To further verify the positioning accuracy of the proposed method, 30 observation sites in the interval (10°W～160°W and 10°N～80°N) were selected as examples, different methods were used for positioning, and the average deviation was used as the evaluation standard. We calculated the positioning results of different methods in the observation site and computed the average of the positioning results of different methods using mean deviation. The mean deviation was computed as follows:(24)mean deviation=1N∑i=1nIg−Og,where Ig represents the tropospheric delay value and Og shows the true value of the tropospheric delay. Using equation (23), the average positioning deviation of different methods was calculated, and the results are shown in Table 2.Table 2
The average deviation of positioning by different methods.
Number of observation sites/pieceThe proposed methodPositioning method based on IoT and edge computingLocation method based on nonparametric Bayesian model51.233.075.12101.473.525.34151.583.695.69201.623.915.78251.704.156.09301.864.286.34The larger the average mean deviation value, the lower is the positioning accuracy; on the contrary, the higher is the positioning accuracy. Analysis of the data in Table2 shows that the average deviation value of the proposed method is lower (less than 2%) than the BeiDou differential positioning method based on the IoT and edge computing (between 3% and 4%) and the satellite positioning method based on the nonparametric Bayesian model (between 5% and 6%). It shows that the positioning results of the proposed method are more accurate and can obtain reliable BeiDou satellite positioning results.


#### 3.2.3. Positioning Time (s)

Figure5 shows the comparative results of the positioning time for the three methods.Figure 5
Comparison of time-consuming positioning of different methods.According to Figure5, the positioning time of the proposed method is less than 0.5 s, which is significantly lower than the BeiDou differential positioning method based on the IoT and edge computing and the satellite positioning method (greater than 1 s) based on the nonparametric Bayesian model. It shows that the positioning efficiency of the proposed method is higher, and the accurate positioning of the target can be achieved in a very short duration.


## 3.1. Experimental Debugging

Based on the virtual simulation experimental platform, the hardware circuit and software program of the platform were debugged. In the process of debugging, we need to use some of the more commonly used software development and debugging tools. We employ the QT user interface design, development, and debugging software. The hardware system of this debugging platform mainly includes ARM core board debugging, BeiDou module circuit debugging, and GPRS module circuit debugging. Among them, the ARM core board is mainly used to check whether it is consistent with the system schematic diagram and to check whether there are problems such as missing soldering or virtual soldering. We powered on the system and checked that the hardware is normal by checking the status of the signal indicator.After the completion of debugging process of the various parameters of the experimental platform, different methods were tested, and the test results are as follows.


## 3.2. Analysis of Experimental Results

### 3.2.1. Comparison of Single- and Multipoint Positioning

Using the location and environmental parameters, we compared the single- and multipoint positioning results for the proposed method, the BeiDou differential positioning method based on IoT and edge computing, and the satellite positioning method based on a nonparametric Bayesian model, respectively. The longitude and latitude coordinates of the positioning target were collected at the acquisition speed of 1 s and were represented in graphical format. The result of a single-point and multipoint positioning for the three methods is shown in Figures3 and 4, respectively.Figure 3
Single-point positioning result.Figure 4
Multipoint positioning result.According to Figures3 and 4, when using the proposed method to locate the target point, whether it is a single-point target or a multipoint target, the positioning results are close to the target point and the similarity is high. When using the BeiDou differential positioning method based on the IoT and edge computing and the satellite positioning method based on the nonparametric Bayesian model to locate the single-point target and multipoint target, there is a certain deviation between the positioning result and the target point. It shows that the proposed method can not only locate the single-point target correctly but also locate the multipoint target accurately.


### 3.2.2. Comparison of Positioning Accuracy

To further verify the positioning accuracy of the proposed method, 30 observation sites in the interval (10°W～160°W and 10°N～80°N) were selected as examples, different methods were used for positioning, and the average deviation was used as the evaluation standard. We calculated the positioning results of different methods in the observation site and computed the average of the positioning results of different methods using mean deviation. The mean deviation was computed as follows:(24)mean deviation=1N∑i=1nIg−Og,where Ig represents the tropospheric delay value and Og shows the true value of the tropospheric delay. Using equation (23), the average positioning deviation of different methods was calculated, and the results are shown in Table 2.Table 2
The average deviation of positioning by different methods.
Number of observation sites/pieceThe proposed methodPositioning method based on IoT and edge computingLocation method based on nonparametric Bayesian model51.233.075.12101.473.525.34151.583.695.69201.623.915.78251.704.156.09301.864.286.34The larger the average mean deviation value, the lower is the positioning accuracy; on the contrary, the higher is the positioning accuracy. Analysis of the data in Table2 shows that the average deviation value of the proposed method is lower (less than 2%) than the BeiDou differential positioning method based on the IoT and edge computing (between 3% and 4%) and the satellite positioning method based on the nonparametric Bayesian model (between 5% and 6%). It shows that the positioning results of the proposed method are more accurate and can obtain reliable BeiDou satellite positioning results.


### 3.2.3. Positioning Time (s)

Figure5 shows the comparative results of the positioning time for the three methods.Figure 5
Comparison of time-consuming positioning of different methods.According to Figure5, the positioning time of the proposed method is less than 0.5 s, which is significantly lower than the BeiDou differential positioning method based on the IoT and edge computing and the satellite positioning method (greater than 1 s) based on the nonparametric Bayesian model. It shows that the positioning efficiency of the proposed method is higher, and the accurate positioning of the target can be achieved in a very short duration.


## 3.2.1. Comparison of Single- and Multipoint Positioning

Using the location and environmental parameters, we compared the single- and multipoint positioning results for the proposed method, the BeiDou differential positioning method based on IoT and edge computing, and the satellite positioning method based on a nonparametric Bayesian model, respectively. The longitude and latitude coordinates of the positioning target were collected at the acquisition speed of 1 s and were represented in graphical format. The result of a single-point and multipoint positioning for the three methods is shown in Figures3 and 4, respectively.Figure 3
Single-point positioning result.Figure 4
Multipoint positioning result.According to Figures3 and 4, when using the proposed method to locate the target point, whether it is a single-point target or a multipoint target, the positioning results are close to the target point and the similarity is high. When using the BeiDou differential positioning method based on the IoT and edge computing and the satellite positioning method based on the nonparametric Bayesian model to locate the single-point target and multipoint target, there is a certain deviation between the positioning result and the target point. It shows that the proposed method can not only locate the single-point target correctly but also locate the multipoint target accurately.


## 3.2.2. Comparison of Positioning Accuracy

To further verify the positioning accuracy of the proposed method, 30 observation sites in the interval (10°W～160°W and 10°N～80°N) were selected as examples, different methods were used for positioning, and the average deviation was used as the evaluation standard. We calculated the positioning results of different methods in the observation site and computed the average of the positioning results of different methods using mean deviation. The mean deviation was computed as follows:(24)mean deviation=1N∑i=1nIg−Og,where Ig represents the tropospheric delay value and Og shows the true value of the tropospheric delay. Using equation (23), the average positioning deviation of different methods was calculated, and the results are shown in Table 2.Table 2
The average deviation of positioning by different methods.
Number of observation sites/pieceThe proposed methodPositioning method based on IoT and edge computingLocation method based on nonparametric Bayesian model51.233.075.12101.473.525.34151.583.695.69201.623.915.78251.704.156.09301.864.286.34The larger the average mean deviation value, the lower is the positioning accuracy; on the contrary, the higher is the positioning accuracy. Analysis of the data in Table2 shows that the average deviation value of the proposed method is lower (less than 2%) than the BeiDou differential positioning method based on the IoT and edge computing (between 3% and 4%) and the satellite positioning method based on the nonparametric Bayesian model (between 5% and 6%). It shows that the positioning results of the proposed method are more accurate and can obtain reliable BeiDou satellite positioning results.


## 3.2.3. Positioning Time (s)

Figure5 shows the comparative results of the positioning time for the three methods.Figure 5
Comparison of time-consuming positioning of different methods.According to Figure5, the positioning time of the proposed method is less than 0.5 s, which is significantly lower than the BeiDou differential positioning method based on the IoT and edge computing and the satellite positioning method (greater than 1 s) based on the nonparametric Bayesian model. It shows that the positioning efficiency of the proposed method is higher, and the accurate positioning of the target can be achieved in a very short duration.


## 4. Conclusion

To solve the problems of poor multipoint positioning effect, long positioning time, and low positioning accuracy existing in traditional methods, in this study, a novel BeiDou satellite positioning algorithm based on GPRS technology is proposed. Using the BeiDou Satellite Navigation System, the navigation and positioning information is sent to the communication network through a wireless module. The real-time kinematic (RTK) mathematical model is employed to correct the error, followed by computing pseudorange to further eliminate the relativistic and multipath errors. Based on the results of error minimization, the BeiDou satellite positioning algorithm is improved and the positioning error is corrected. The experimental results show that the proposed method takes less time to locate, can achieve the target location in 0.5 s, and can achieve the accurate positioning of single-point and multipoint targets as compared to the existing errors. The results confirm that the method is effective and has certain practical significance.



---

*Source: 2468267-2021-10-11.xml*