1 Introduction

With the advancement of global navigation satellite systems (GNSSs), an increasing number of high-precision applications are being developed, which demand more sophisticated theories and methods to address carrier phase observations. Therefore, various correction models in carrier phase processing must be carefully handled. Antenna phase center (APC) models are one such vital models class.

In the use of an antenna, the reception or transmission position of the navigation signal is not fixed, but varies with the signal direction. This variation will lead to direction-dependent delays in phase observations. Thus, phase center correction is of interest in high-precision application which has led to continuous antenna calibration research.

In early works, APC models were calibrated using an anechoic chamber (Schupler 2001; Tranquilla and Colpitts 1989). In the 1990s, many researchers devoted much effort to finding an appropriate model to represent the APC. Mader (1999) proposed the relative calibration implemented at the National Geodetic Survey (NGS). In this relative calibration, the antenna is calibrated in the field using a static short baseline. An AOAD/M_T antenna as a reference antenna is assumed to have zero phase variation, and the antenna model is estimated with respect to this reference antenna. This type of relative model can be applied to small-scale networks in which the orientations of the antennas do not differ much and the mutual bias introduced by the APC can be eliminated through differencing observations between stations. For a long baseline, however, especially an intercontinental baseline, the antenna orientations at the two ends of the baseline are no longer the same, which will cause systematic errors that can reach even the centimeter level (Wübbena et al. 2000). In addition, a satellite, due to its orbit, will have difficulty covering all directions of the antenna hemisphere within an acceptable period, which will cause observation gaps in the relative calibration. This relative model nevertheless played a prominent role until igs05.atx emerged (Schmid et al. 2016). This model usually provides an elevation-dependent-only APC model above a certain cutoff angle.

Considering these drawbacks, Wübbena et al. (1997) and Menge et al. (1998) proposed a new method that is free of any reference antenna and capable of estimating an absolute phase center model. This new method uses a robot to rotate and tilt the antenna to be calibrated under the control of external commands, such that the controlled movement of the antenna makes the satellite cover the antenna hemisphere as densely and uniformly as possible. This makes it feasible to provide an APC pattern with full coverage in both elevation and azimuth angles. The speed of the absolute calibration procedure also benefits from the robot’s swift movement capabilities. The consistency between such an absolute calibration and calibration in an anechoic chamber can reach the 1 mm level (Görres et al. 2004, 2006), which demonstrates the high reliability and accuracy of absolute calibration. In 2010, the NGS converted its relative calibration procedure into an absolute calibration (Bilich and Mader 2010). Hu et al. (2015) built facilities to implement absolute antenna calibration in 2015. At present, absolute field calibration with a robot is the mainstream approach to ground antenna calibration.

In the GNSS community, the International GNSS Service (IGS) (Johnston et al. 2017) has played an important role at the research frontier. The IGS provides various GNSS products with the highest standard. Different working groups (WGs) have been established by the IGS to lead the research. The antenna working group (AWG) is one of those WGs. Early on, the IGS adopted relative antenna models calibrated by the NGS for data processing but switched to the igs05.atx absolute model in 2006. To date, igs08.atx, igs14.atx and igs20.atx have been successively released following the ANTenna Exchange format (ANTEX; Rothacher and Schmid 2010), and all are consistent with the corresponding International Terrestrial Reference Frame (Altamimi et al. 2007, 2011, 2016).

In the IGS antenna model igs14.atx, more than 300 ground antennas have been calibrated, of which approximately 200 have been individually calibrated with robots by the NGS (Bilich and Mader 2010; Mader 1999), GEO++ (Schmitz et al. 2008; Wübbena et al. 2000), Institut für Erdmessung, Leibniz University Hannover (IfE) (Menge et al. 1998), Geoscience Australia (Riddell et al. 2015) and Senatsverwaltung für Stadtentwicklung und Wohnen, Berlin (SenStadt); 81 have been calibrated in a relative way with respect to a common antenna at the NGS, and these relative calibrations have been converted to absolute models by adding the reference antenna absolute corrections. The statistics of the current antenna calibration status in igs14.atx are listed in Table 1.

Table 1 Statistics of the calibration types for ground APC models in igs14.atx

By the end of 2020, there were four major satellite navigation systems, including GPS, GLONASS, BDS-3 and Galileo, providing global services. In addition, the Quasi-Zenith Satellite System (QZSS) and Indian Regional Navigation Satellite System (IRNSS) provided regional services. Meanwhile, the IGS initiated the Multi-GNSS Experiment (MGEX) Pilot Project (Montenbruck et al. 2017) in 2011 and aims to gradually expand its service from GPS/GLONASS only to multiple GNSSs. The number of stations that are capable of tracking new signals from multi-GNSS constellations is continually increasing, and more analysis centers are gradually beginning to provide multi-GNSS products. These multi-GNSS developments demand correction models for multiple signals. However, in terms of ground APC models, only GPS signals (L1, L2) and some GLONASS signals (R1, R2) are available until igs14.atx, which is insufficient to satisfy the needs of multi-GNSS users. In recent years, researchers have focused on the estimation of APC models for multiple signals, and the results for GPS L5 and Galileo E1/E5a/E5b/E5/E6 have been revealed in Breva et al. (2019), Willi et al. (2018), Willi et al. (2020), while the results for BDS-2 signals were presented in Wang et al. (2020). In late 2019, the IGS started its third reanalysis of historical data, and igsR3.atx was released with contributions from different calibration facilities (Villiger et al. 2020), thereafter, igs20.atx was officially released in 2022. In igsR3.atx and igs20.atx, some APC models for multiple systems have been updated, which expand the coverage to (L5, E5a, B2a), (E6, J6), (E5b, B2b), (E5, B2), B1I, B3I signals, and these updates will promote the consistency of multisystem products. Nevertheless, available multi-GNSS products are still insufficient, especially because only a small part of the APC models covers the full BDS-3 signals, which might hinder better system performance in two respects. On the one hand, a lack of antenna models will directly cause systematic errors in almost all high-precision applications, such as PPP solutions or attitude determination. On the other hand, a lack of antenna models hinders the improvement of high-precision products, which also indirectly hinders high-precision applications. Considering the contradiction between the high demand for and low actual availability of multi-GNSS APC models, the aim of this work was to implement multi-GNSS calibration experiments, with a focus on providing APC correction models for BDS-3 signals.

In this work, we implemented APC estimation for two known antennas for both GPS and BDS-3 signals. Then, the characteristics of the APC and its estimate were analyzed and compared with the official models in igs14.atx and igsR3.atx. The effect of multi-GNSS APC models in short-baseline positioning has been preliminarily investigated, and the accuracy using different APC strategies has been assessed.

The remainder of this manuscript consists of three sections. The first section aims to introduce the methodologies used in this work, including the triple-differencing observation equation and the method used to estimate the APC model. The second section describes all experimental procedures and data collection, including the experimental site environment and the dataset used. The third section analyzes and discusses the APC models derived from field calibration, with a focus on the application of APC models for BDS-3 signals.

2 APC model and calibration methodology

2.1 Model for antenna phase center correction

This work adopts a well-known antenna model (Geiger 1988) in which the phase center correction (PCC) is divided into three parts, as shown in Fig. 1. The antenna reference point (ARP) is a physical point on the antenna used as a reference to calculate the PCC, and the vector from the ARP to the mean phase center is defined as the phase center offset (PCO). Based on the mean phase center, the deviation due to a different elevation or azimuth angle with respect to an ideal hemisphere is defined as the phase variation (PV) or phase center variation (PCV), and the radius of the hemisphere is denoted by r. In this APC model, the PCO is commonly a three-dimensional vector defined in a left-handed coordinate system in which the x-axis points to the fixed north reference point (NRP) on the antenna and the z-axis points to the bore-sight of the antenna. The PV of a ground antenna is usually represented as a grid of ranging corrections in elevation [0, 90] and azimuth [0, 360] at 5-degree intervals. The radius r of the hemisphere is arbitrary and cannot be precisely measured, but it will not affect the positioning since it will be absorbed into the receiver clock or other ambiguities. Therefore, the PCC can be calculated from the sets of PCO/PV/r along with the line-of-sight vector \({\varvec{e}}\), as shown in Eq. (1), and users can correct their phase observations in accordance with the relative attitude between the satellite and receiver antennas. The model for a satellite is similar, with the elevation angle replaced by a limited nadir angle due to different orbital altitudes and satellite coverage. This work focuses on the calibration of ground APC models.

$$ {\text{PCC}} = - {\mathbf{PCO}} \cdot {\varvec{e}} + {\text{PV}} + r $$
(1)
Fig. 1
figure 1

Modeling of antenna phase center offset and variation. The antenna reference point (ARP) is a physical point on the antenna used as a reference to calculate the PCC, and the vector from the ARP to the mean phase center is defined as the phase center offset (PCO). Based on the mean phase center, the deviation due to a different elevation or azimuth angle is defined as the phase variation (PV)

2.2 Triple-differencing observation equation

In the basic equation for carrier phase observation, various ranging errors are introduced during signal transmission, propagation and reception. The basic equation for the undifferenced (UD) carrier phase observation is given below.

$${L}_{A,f}^{i}=\rho +\mathrm{c}\cdot \left({dt}_{\mathrm{A}}-{dt}^{i}\right)+{\lambda }_{f}\cdot {N}_{f}-{I}_{f}+T+{\mathrm{PCC}}_{A,f}+w+\mathrm{mul}+\varepsilon $$
(2)

In Eq. (2), the superscript i represents different satellites, while the subscript A represents different receivers and f represents different frequencies. ρ is the geometric distance between the antenna phase centers of the receiver and satellite; dtA and dti represent the clock errors of the receiver and satellite, respectively; \({N}_{f}\) is the ambiguity of the carrier phase observation with the corresponding wavelength \({\lambda }_{f}\); \({I}_{f}\) is the ionospheric effect, while T is the tropospheric effect; w is the phase wind-up correction due to the relative rotation between the satellite antenna and receiver antenna (Wu et al. 1993) when the navigation signal is polarized; mul is the multipath error due to the reflection of the signal from the surroundings; ε is the measurement noise corresponding to the receiver performance; and finally, PCC is the phase center correction of the antenna connected to the receiver, which we attempt to estimate in this work.

To eliminate mutual data processing error, we take the difference of the raw phase observation equation between the receiver and satellite, which leads to the double-differencing (DD) equation shown in Eq. (3). The mutual errors caused by the orbit or clock cancel out; in addition, atmospheric delays, including the ionospheric and tropospheric delays, are mostly eliminated due to the high correlation associated with the short length of the baseline (less than 5 m). The phase wind-up is caused by the relative rotation between the satellite and receiver antennas, and it can be strictly corrected on the basis of the satellite attitude and station antenna orientation. Finally, only the PCC and DD carrier phase ambiguity remain. In Eq. (3), A and B represent two receivers where B is connected to an antenna mounted at the robot end and i and j represent two satellites.

$$ L_{{{\text{AB}},f}}^{ij} \cong \lambda_{f} \cdot N_{{{\text{AB}},f}}^{ij} + ({\text{PCC}}_{B,f}^{ij} - {\text{PCC}}_{A,f}^{ij} ) + {\text{mul}}_{{{\text{AB}}}}^{ij} + \varepsilon_{{{\text{AB}}}}^{ij} $$
(3)

To eliminate the ambiguity, we take the difference of the DD equation between adjacent epochs t and t + k, where the attitudes of the robot at epochs t and t + k are different after rotation and tilt. The calibration site is carefully selected to ensure a low multipath effect with proper deployment, thereby allowing the multipath error to be alleviated or reduced throughout the whole data processing period. Therefore, the multipath error is no longer considered in the triple-differencing (TD) equation. The measurement noise is regarded as white noise, which can be alleviated through averaging over a long-term data span. Cycle slip can be easily detected because the approximately 200 mm range biases induced by only 1 cycle slip obviously exceed the range of the TD equation residual, which is normally within 10 mm. During calibration, the antenna at the base station remains static, and the antenna mounted on the robot end is swiftly rotating and tilting, as scheduled by commands from the robot controller. As a result, the PCCs of the base station change little during a time span of several seconds and can be eliminated through differencing between adjacent epochs, while the PCCs to be estimated at the robot end remain. Hence, the triple-differencing (TD) equation is obtained as shown in Eq. (4).

$${L}_{\mathrm{AB},f}^{ij}\left(t,t+k\right)\cong {\mathrm{PCC}}_{B,f}^{ij}\left(t,t+k\right)+{\varepsilon }_{\mathrm{AB}}^{ij}\left(t,t+k\right)$$
(4)

In this work, we use the TD observation equation to estimate the APC model of the receiver antenna. The handling of various errors in the observation equation is listed in Table 2.

Table 2 Errors in observations and their corresponding mitigation strategies

It should be noted that the TD processes are performed during the station differencing, time differencing and satellite differencing sequences for the convenience of constructing the covariance for TD observations. The stochastic model for the TD observation is obtained from a full variance propagation. In this work, the UD observation is independent and elevation weighted as Eq. (5) shown. Dud is the UD observation variance, and ele is the elevation angle.

$${D}_{ud}={0.002}^{2}+{0.003}^{2}/{\mathrm{sin}}^{2}(\mathrm{ele})$$
(5)

In the differencing process, UD observations are differenced between stations and epochs for only once; thus, no correlation of observations is induced in the station-differencing or time-differencing processes. The DD observation variance between the stations and epochs is the sum of variances of four UD phase observations. For the satellite-differencing process, observations of the reference satellite are subtracted from the remaining satellites, which causes correlations between TD observations afterward. The variance propagation from DD observations between the station and epoch to TD observations follows Eq. (6)

$$ D_{td} = M \times D_{dd} \times M^{T} $$
(6)

Here, Ddd is the covariance matrix for station-differenced and time-differenced observations and Ddd is a diagonal matrix since no correlation is induced by the station-differencing and time-differencing processes; Dtd is the covariance matrix of TD observations; and M is the conversion matrix from Ddd to Dtd, and the general form of M is in Eq. (7). The first column of -1 represents the reference satellite. We finally obtain the covariance matrix of TD observations through full variance propagation.

$$\mathrm{M}=\left(\begin{array}{cccccc}-1& 1& \cdots & 0& \cdots & 0\\ \vdots & \vdots & \ddots & & & \vdots \\ -1& 0& & 1& & 0\\ \vdots & \vdots & & & \ddots & \vdots \\ -1& 0& \cdots & 0& \cdots & 1\end{array}\right)$$
(7)

2.3 Estimation of the phase center parameters

Because the PCO and PV corrections in an APC model are both related to the azimuth or elevation angle, which causes high coupling of the PCO and PV, they cannot be separated at the same time. Therefore, the process of estimating the PCO and PV is divided into two steps.

First, the PV is omitted, and only the PCO is estimated from the TD equation using a least-squares batch process. By substituting Eq. (1) into Eq. (4), the PCO observation is obtained as shown in Eq. (8).

$$\begin{aligned} L & = L_{{{\text{AB}},f}}^{{ij}} \left( {t,t + k} \right)\\ &= - \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}}{{{\text{pco}}}} _{f} \cdot \left[ {\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}} {e} _{{B,{\text{robot}}}}^{{ij}} \left( {t + k} \right) - \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}} {e} _{{B,{\text{robot}}}}^{{ij}} \left( t \right)} \right] + \varepsilon _{{{\text{AB}}}}^{{ij}} \left( {t,t + k} \right) \end{aligned}$$
(8)

The PCO contains three components: north, east and up. The line-of-sight vector \( \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}} {e}_{B,robot}^{ij}(\mathrm{t})\) in the robot coordinate frame at time t can be calculated as shown in Eq. (9).

$$ \mathop{e}\limits^{\rightharpoonup} \left( t \right)_{{{\text{robot}}}} = M\left( t \right)_{{{\text{neu2robot}}}} \cdot M_{{xyz2{\text{neu}}}} \cdot e_{xyz} $$
(9)

The line-of-sight vector \({e}_{xyz}\) in ECEF coordinates can be derived directly from the positions of the satellite and calibration site. The rotation matrix \({M}_{xyz2\mathrm{neu}}\) from the ECEF coordinates to the local NEU coordinates is fixed according to the position of the calibration site. The rotation matrix \({M(t)}_{\mathrm{neu}2\mathrm{robot}}\) from the local NEU coordinates to the robot coordinates is obtained simultaneously from the robot’s attitude. Benefiting from the swift motion of the robot, \( \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}} {e}(t)_{\mathrm{robot}}\) can change considerably in the few seconds between epochs t and t + k, making it possible to separate the PCO from the TD equation.

For the kth batch TD observation Lk, Hk denotes the design matrix, while the covariance matrix Dk is obtained using Eq. (6). The construction of the normal equation Nk and error vector Vk follow the Eqs. (10) and (11).

$${N}_{k}={H}_{k}^{T}\times {D}_{k}^{-1}\times {H}_{k}$$
(10)
$${V}_{k}={H}_{k}^{T}\times {D}_{k}^{-1}\times {L}_{k}$$
(11)

The final normal equation N and the error vector V are obtained by stacking all batches of Nk and Vk of TD observation as follows:

$$N=\sum {N}_{k},V=\sum {V}_{k}$$
(12)

Finally, the PCO estimates, denoted as Xpco, are obtained through as shown in Eq. (13)

$${X}_{\mathrm{pco}}={N}^{-1}\times V$$
(13)

After the determination of the PCO, its value is reintroduced into the TD equation, and the PV is estimated from the residuals of the TD equation. Substituting Eq. (1) and Xpco estimated in Eq. (13) into the Eq. (4), we obtained the differenced PV shown in Eq. (14)

$$ L_{{{\text{AB}},f}}^{ij} \left( {t,t + k} \right) = {\text{PV}}_{B,f}^{ij} \left( {t,t + k} \right) + \varepsilon_{{{\text{AB}}}}^{ij} \left( {t,t + k} \right) $$
(14)

Here in the PV estimation, the PCO is viewed as fixed or constant, therefore the covariance matrix of Eq. (14) is computed in the same way shown in Eq. (6).

In the PV modelling, spherical harmonics are introduced. Using a spherical harmonic function can improve the result even if observations are lacking for some part of the area of the antenna hemisphere, especially at low elevation angles. The form of the PV expressed by the spherical harmonic function is given in Eq. (15).

$$ {\text{PV}}\left( {z,\alpha } \right) = \mathop \sum \limits_{n = 0}^{n\max } \mathop \sum \limits_{m = 0}^{n} \left( {C_{n,m} \cdot \cos m\alpha + S_{n,m} \cdot \sin m\alpha } \right) \cdot P_{n,m} \left( {\cos z} \right) $$
(15)

where Cn,m and Sn,m are the corresponding normalized spherical harmonics that will be estimated; Pn,m are the normalized Legendre polynomials, where n and m are the order and degree of the spherical harmonics, respectively; and z and α are zenith angle and azimuth angle, respectively. In Eq. (14), the PVs are differenced; therefore, the TD equation residuals are also expressed by spherical harmonics differenced between the epoch and satellite.

The estimation of spherical harmonic coefficients is also performed through a least-squares batch process. Due to the feature of spherical harmonics, C0,0 represents the constant part of the PVs; therefore, its coefficient always equals 1 and will vanish after differentiation, which leads to a rank deficit of the normal equation for estimating the spherical harmonics. To address this rank deficit problem and follow the convention of zero PV at zero zenith angle, a special tight constraint is applied as shown in Eq. (16).

$$ {\text{PV}}\left( {0,\alpha } \right) = \mathop \sum \limits_{n = 0}^{{n{\text{max}}}} C_{n,0} \cdot P_{n,0} \left( 1 \right) = 0 $$
(16)

To implement this constraint, a virtual observation equation Eq. (16) with a small variance of 10–8 is introduced in the normal equation in the PV estimation. Therefore, the result of PV estimation in the zenith direction will always be set to zero. After the determination of Cn,m and Sn,m, the full PV pattern in grid form can be recalculated from the spherical harmonics, and the elevation dependent PV is then averaged from all PVs with the same azimuth angle.

In the experiments reported here, all spherical harmonics up to order 8 and degree 8 were chosen to model the PV parameters. Since most observations are in the upper hemisphere above the antenna and the odd index coefficients of Cn,m and Sn,m express anti-symmetry (Kröger et al. 2021), which causes poor PV estimation at low elevation angles, we chose to lower the elevation cut off angle to − 5° to improve the PV estimation.

After the two steps described above, both the PCO and PV have been estimated from the TD equation, and a full APC model is finally obtained.

3 Experiments and datasets

3.1 Field calibration setup

The calibration field site is shown in Fig. 2. The facilities in this calibration field include a high-precision industrial Fanuc robot with a controller and two solid pillars on the rooftop. One static antenna is installed on pillar 1 as a reference station for calibration, and another static antenna is installed on pillar 2 to form a short baseline with the antenna on pillar 1. This short baseline is used to validate the effects of the calibration. Other equipment and devices for data sampling, including several receivers, an atomic clock and a robot data logging computer, are placed indoors and connected to the robot and antenna on the rooftop through cables. The robot can automatically rotate and tilt its endpoint with high precision under the instruction from its controller and simultaneously log the position and attitude of the endpoint in the robot coordinate system. A repeatability level of 0.03 mm for this robot is stated by its manufacturer in factory inspection. After installation, the repeatability was tested using a Leica total station TM50 with a nominal ranging precision of 0.6 mm in the field. Limited by the precision of the total station, we can only confirm that the repeatability of this robot reaches the 0.6 mm level. Nevertheless, we think these measures can help us reach the 1 mm antenna calibration precision goal. The antenna to be calibrated is mounted at the endpoint of the robot with the NRP aligned to a robot north marker. Another antenna, serving as a reference station, is installed on the nearby pillar 1 for calibration. The two antennas form a baseline with a length of approximately 2–3 m.

Fig. 2
figure 2

Field antenna calibration system at Wuhan University. The system is built on a rooftop and includes a six-axis robot, a controller, an atomic clock, receivers and other auxiliary equipment

3.2 Synchronization of coordinate and time systems

During data collection for field calibration, attitude data from the robot controller are collected simultaneously with GNSS data, and the dwell time of the robot at any fixed position is only several seconds, while the transition from one position to another is completed in less than 1 s; therefore, the synchronization of the coordinate and time systems is critical for the calibration process.

For time synchronization, on the one hand, a GNSS observation can be aligned with UTC time in accordance with the system bias broadcast in the navigation messages; on the other hand, an atomic clock can be used to simultaneously align the local time of the robot to UTC time. Thus, it is feasible to match the position and attitude of the antenna with corresponding GNSS observations. For coordinate synchronization, it is not sufficient to merely know the position and attitude in the robot coordinates, and the transformation from the robot system to the local NEU system should be carefully handled. Although care was taken in the installation of the robot, a slight rotation or offset between the robot coordinate system and the local NEU system was expected to exist, so we used an additional total station to measure the transformation parameters of a Bursa-Wolf model (Bursa 1962; Wolf 1963) between the two coordinate systems. Finally, the coordinates and attitude of the robot’s endpoint in the local NEU system could be calculated from the robot data and transformation parameters. All these measures can ensure comprehensive and reliable knowledge of the antenna mounted at the endpoint of the robot.

The trajectory of the robot can be designed using the command interface provided by its manufacturer. The robot’s endpoint moves along a scheduled route in the robot coordinate system, and two adjacent positions along the route must differ by at least a certain angle in terms of rotation and tilt. With such a design for the robot’s movement, the projection of the PCO into the line-of-sight direction will change rapidly within a short period, which makes it possible to separate the PCO parameter.

3.3 Dataset

During a period from late 2020 to 2021, we built the field calibration site and implemented several batches of experiments to validate the procedures and methodologies of antenna field calibration. In this work, two types of antennas were chosen to be calibrated. One type is a TRM57971 NONE, with four individual antennas, and the other type is a TRM59800 NONE, with two individual antennas. These two types of antennas are shown in Fig. 3. The reasons for choosing them are their widespread use at IGS stations and ability to track multiple GNSS signals. For data logging, two types of receivers are utilized, which are capable of logging multi-frequency signals, including GPS L1, L2, L5 and BDS-3 B1I, B1C, B2a, B3I. The first type is Kepler, which is mainly used in the calibration within this work, while the second type is Geo, which is used to investigate the impact of different receivers on our calibration. Details of the receivers used in this work are presented in Table 3. The data rate for calibration is set to 2 Hz, while the cut off angle is − 5°. which can improve the PV estimation at low elevation angles. To ensure the redundancy and efficiency of data logging, more than one receiver was connected to the antenna at the reference station and robot end through a power divider; thus, different receiver pairs were available for the same calibration session. The data sessions were divided into several tests by date; a typical test lasted for 24 h, and all tests in the experiments lasted at least 15 h. The whole experiment consists of three parts: In Antenna Field Calibration 1, a multisession calibration was performed for six individual antennas and the results were analyzed and compared with the reference APC model released in igs14.atx and igsR3.atx. In Antenna Field Calibration 2, one antenna was calibrated using different receiver types, and the differences among different receiver pairs were investigated. Finally, short-baseline positioning was performed with different PCC strategies to validate the accuracy of our calibrations. The details of these calibration and baseline positioning sessions are listed in Table 4.

Fig. 3
figure 3

Antennas calibrated in the experiment. The antenna on the left is a TRM57971.00 NONE, with four individual antennas, and the one on the right is a TRM59800.00 NONE, with two individual antennas

Table 3 Information of receivers used in the calibration experiments
Table 4 Data collection for each calibration and baseline positioning session

4 Results and discussion

4.1 Satellite coverage enhancement with the robot

The main role of the robot is to swiftly change the attitude of the antenna and improve the coverage of the satellites. In this work, the robot performs motions of tilt and rotation simultaneously. The maximum tilt angle is 40° to the south and 20° to the north, while the rotation range is − 180° to 180° Fig. 4 shows the sky plot of an eight-hour GPS observation for the antenna mounted on the robot end at our calibration site. Figure 4a and b show the satellite trajectories over the antenna hemisphere before and after attitude motion with the robot, and the satellite coverage is dramatically improved in all directions, which enables the calibration of the full APC pattern.

Fig. 4
figure 4

Sky plots of satellites within an 8-h observation span. The data were collected between 0:00 and 8:00 (GPST) on 2020.11.12. The left panel shows the satellite trajectories when the antenna is static, while the right panel shows the satellite distribution when the antenna is in motion with the robot

4.2 PCO estimation

In the PCO estimation data processing, a least-squares estimation is performed after every new batch observation is obtained to derive the time series of the PCO estimates. Figure 5 shows the time series of the PCO estimates for one individual estimation in GPS L1 for the TRM57971.00 antenna. As seen, the PCO estimates might vary and deviate from the final result at the beginning, but they rapidly converge within 4 h. It is also noted that the north and east components seem to converge faster than the up component, which indicates that convergence in the up component is crucial for PCO determination. This typical time series of PCO estimates, to some degree, tests the stability and reliability of the field calibration methodology and procedures adopted in this experiment. Although in practice, data collection over 4–6 h might be sufficient for PCO estimation, we still use data collected over longer periods considering the demand for satellite coverage in the antenna hemisphere for PV estimation after the PCO is determined. The whole procedure could be accelerated if the motion of the antenna were to be made more frequent, along with a higher sampling rate of the receivers.

Fig. 5
figure 5

A typical time series of PCO estimates for GPS L1 during one test. The black, red, and blue lines represent the north, east and up components, respectively

The data of Antenna Field Calibration 1 from all sessions listed in Table 4 were processed, and every individual test of PCO estimation for GPS and BDS-3 signals is shown in Fig. 6. The magnitudes of the PCO for the TRM57971.00 and TRM59800.00 reached 65 mm and 120 mm, respectively, and the up component accounted for a major part of the magnitude, while the north and east components had magnitudes of less than 2 mm. The PCO estimates for different signals vary according to their frequency. For antenna 0104, a large PCO estimate variation can be seen over different calibration sessions, while the results of the other antennas show a higher stability. For certain antennas, the PCOs might be close for signals with close frequencies, but discrepancies do exist even for signals at the same frequency especially in the up component. For the TRM57971.00, the difference in the upper component between L1 and B1C is only 1–2 mm, while the difference for the TRM59800.00 can reach up to 5–6 mm. Considering that the PCO and PV are coupled in the PCC observation, differences in these discrepancies will be investigated later through PCC comparison. In addition, large variations in the individual tests from antenna 0104 for L1/L2/B1I and from antenna 0103 for L5 are observed. Though the repeatability of these calibration can be better than the 1 mm level, it also indicates an unsteady calibration.

Fig. 6
figure 6

PCO estimates for each antenna in the north, east and up components. The top panel presents the PCO estimation for the TRM57971.00, while the bottom panel presents the TRM59800.00 estimates. The sequence of PCO estimates is ordered by calibration time and then by the receiver pair listed in Table 4. Different colors represent different signals

Statistics of the PCO estimates, including averages and empirical standard deviations (STDs) over different calibration sessions, are presented in Table 5. In addition, type-mean models are obtained by averaging the calibrations of individual antennas, and their differences with respect to the APC model in igs14.atx and igsR3.atx were also calculated.

Table 5 Statistics of the PCO estimates for the TRM57971 and TRM59800 antennas

For the PCO estimates of the L1 and L2 signals, the differences in the type-mean values between the calibration in the igs14.atx file and the calibration performed in this work are quite small. In general, the biases are near the 1 mm level; specifically, the biases in the north and east components for the TRM59800.00 antennas in L1 are 1.24 mm and 1.39 mm, respectively, which are larger than those in L2 and those of the TRM57971.00 antennas. Extending the comparison from igs14.atx to igsR3.atx, the differences in the PCO for L1 and L2 change within the millimeter level, which indicates a high consistency of patterns released in the two ANTEX files. In addition, APC patterns for L5 and BDS-3 signals are available in igsR3.atx and are used for comparison. PCO differences between APC patterns from our calibration and igsR3.atx exceed 6 mm in the up component for B1I and B1C, which are consistent with the differences between the direct estimates of L1 and B1I/B1C, since no differences for the same frequency and small differences for a close frequency are presented in the multifrequency pattern of igsR3.atx. Comparing the PCO estimates among the calibrations of individual antennas with the same antenna type, differences of up to 2 mm might exist between two individual antennas of the same type; the maximum difference is 1.95 mm, occurring in the up component between antennas 0101 and 0103 for B3I. For the four TRM57971.00 antennas, the differences in L1, B1I and B1C are smaller than those in L2, B3I and B2a. In general, the differences between individual antennas are less than 2 mm, and the magnitude of the deviation might depend on the manufacturing process or antenna aging due to long-term use. It should be noted that a separate comparison of PCO might not reflect the comprehensive PCC differences due to the correlation of PCO and PV (Kersten et al. 2022).

The precisions of PCO estimation for each individual antenna in the north, east, and up components at different frequencies are all within 0.5 mm, and the precisions for certain antennas at some frequencies might be less than 0.1 mm. For different signals, there is no significant and consistent difference in terms of the STD. Meanwhile, the precisions for GPS and BDS-3 signals are at the same level according to Table 5. In general, a STD of this magnitude shows a high consistency and stability of the APC estimation procedure, including the methodology and facilities adopted in the current experiments.

4.3 PV estimation

After the determination of the PCO, PV estimation was subsequently implemented by introducing the PCO into the TD observation equation. Full PV patterns as functions of both the zenith and azimuth angles were obtained, and the estimates for the GPS and BDS-3 signals are shown in Fig. 7. As seen in Fig. 7, the PV variation with the zenith angle is much stronger than that with the azimuth angle, and the PV value forms a nearly homogeneous circle along the zenith direction, which indicates balanced signal reception from all azimuth angles. However, variations also exist in the full PV pattern for the same zenith angle, and they increase as the zenith angle increases. For the TRM57971.00 antennas, two areas with the minimum PV value lie in the range from 30 to 60 degrees, and these two regions are approximately symmetric about an axis that passes through the center, although the directions of the axes of symmetry for different signals differ in accordance with their frequency. The axis-of-symmetry directions are quite close for groups L1/B1C/B1I, L2/B3I and L5/B2a, which have close or identical frequencies, while they differ greatly for different groups. This might be caused by the hardware or design of the antenna for receiving different signals; further elucidation will require further tests with more antennas and receiver types.

Fig. 7
figure 7

Full pattern PV estimates for different signals. The top panel shows the estimates for the TRM57971.00, while the bottom panel shows the estimates for the TRM59800.00

To investigate the variation in PVs at the same zenith angle, the ranges obtained by subtracting the minimum from the maximum at each zenith angle were calculated for the two antenna types, and these ranges as functions of the zenith angle are depicted in Fig. 8. The magnitudes of the differences vary from 0 to more than 2 mm as the zenith angle changes. Between the two antennas, the TRM57971.00 shows a larger variation than the TRM59800.00. Specifically, the variations for the TRM57971.00 can exceed 1 mm as the zenith angle approaches 60 degrees, except for L2 and L5, while for the TRM59800.00, the variations for all GPS and BDS-3 signals are less than 1 mm. In addition, the variations for the TRM57971.00 at approximately 90 degrees in zenith are larger than those for the TRM59800.00 except for signal B2a. By investigating the variations for all signals, they exhibit similar trends with the zenith angle but deviate from each other by up to 1.5 mm. It cannot be easily identified which signal has the smallest variation, and the performances for different signals are not necessarily consistent between the two antenna types. Taking B3I as an extreme example, it has the smallest variation for the TRM59800.00 but a relatively large or even the largest variation for the TRM57971.00.

Fig. 8
figure 8

Variances in PVs as a function of zenith angle. The variance is calculated by subtracting the minimum from the maximum at a certain zenith angle. This value reflects the variation in magnitude at each zenith angle

In this experiment, the estimates of the full PV pattern show good consistency at different azimuth angles, and variation within 1 mm can be expected if the zenith angle is below approximately 60 degrees. However, this might not apply for all types of antennas, and users might choose an elevation dependent or full pattern according to their demands in specific applications.

To further investigate the accuracy of our PV estimation in these experiments, comparisons between the PV values obtained in these experiments and the values in igs14.atx and igsR3.atx were made for all signals calibrated in this work. Considering that the relation between PCO and PV, PCC comparison was performed following the method in Kröger et al. (2021), the PCO of our calibration (PCO1/PV1) was aligned to PCO2/PV2 of the pattern from ANTEX file first, and the transformation from PV1 to PVT is shown in Eq. (17). Finally, PVT can be compared to PV2 with a fixed PCO, and the differences in PV are equal to differences in PCC under this condition.

$$ {\text{PV}}_{T} \left( {z,\alpha } \right) = {\text{PV}}_{1} \left( {z,\alpha } \right) + ({\mathbf{PCO}}_{2} - {\mathbf{PCO}}_{1} ) \cdot {\varvec{e}} - du $$
(17)

Here, \({\mathbf{P}\mathbf{C}\mathbf{O}}_{2}-{\mathbf{P}\mathbf{C}\mathbf{O}}_{1}=(dn,de,du)\) is the difference in PCO in the north, east and up components, and the part of − du applied in Eq. (17) can make the PVT still follow the rule of zero PV at zero zenith angle. The differences for the TRM57971.00 and TRM59800.00 antennas with igs14.atx and igsR3.atx are presented in Figs. 9 and 10. Compared with igs14.atx, differences in the TRM57971.00 for L1 and the TRM59800.00 for L2 can reach the 1 mm level, while differences in the TRM57971.00 for L2 and the TRM59800.00 for L1 reach or exceed 3 mm in low elevation areas. This indicates an uneven accuracy distribution of different antennas and signals. We further compared our PV estimation with the pattern from igsR3.atx. For TRM57971.00, differences reach the 1 mm level in L1, B1I and B1C, while PCC differences in B3I increase to 3 mm or even more with elevation angles below 15°. For other signals, larger variations with azimuths of 2–3 mm in PCC differences can be found at low elevation angles. These large variations might be caused by large observation noise and worse satellite coverage at low elevation angles, which indicate a lower calibration accuracy. In addition, those differences contain the actual differences between APC patterns of the individual antenna from our calibration and the type-mean patterns from igsR3.atx.

Fig. 9
figure 9

Accuracy of the calibration compared with igs14.atx. The differences are calculated in a grid format. The top panel corresponds to the TRM57971.00, while the bottom panel corresponds to the TRM59800.00

Fig. 10
figure 10

Accuracy of the calibration compared with igsR3.atx. The differences are calculated in a grid format. The top panel corresponds to the TRM57971.00, while the bottom panel corresponds to the TRM59800.00

With the help of Eq. (17), we can compare the PCC of different signals. Following the PV transformation, we aligned the PCO of B1C to L1 and B2a to L5 with our calibration for the TRM59800, and then the difference between L1/B1C and L5/B2a was calculated as shown in Fig. 11. The PCC differences are dramatically decreased to the 1 mm level, which indicates a good agreement of signals with the same frequency. Considering that large differences exist in the direct PCO estimation, as presented in Table 5, it can be assumed that different APC models with large differences in PCO or PV might be obtained from the calibration for signals with identical frequencies, but a high consistency in terms of PCC can be reached. Therefore, the APC model should be compared with the PCC combining the PCO and PC rather than comparing them with PCO and PV separately.

Fig. 11
figure 11

PV differences of L1/B1C and L5/B2a with their PCO are aligned to the reference pattern in igsR3.atx for the TRM59800.00 after PV transformation

Here, the repeatability of the PV estimation calibrated with these methods was also analyzed. Thanks to the multisession experiments, repeatability of the PV estimates from multiple sessions could be obtained for all signals. Similar to the grid format used for the PV values, the standard deviations of each cell in the grid are calculated between individual PV estimations after every individual pattern is aligned with the same PCO, and the precisions are presented in Fig. 12. The repeatability of most PV estimations is better than 1 mm, and larger deviations mainly occur at low elevation angles in the L2, B3I, and B2a signals for the TRM57971.00. The precision for the TRM59800.00 shows even more stable performance, with deviations at the 0.5 mm level that can be expected in most directions. The reason for the better stability and precision of the TRM59800.00 over the TRM57971.00 might be a better design for multipath mitigation, which leads to higher data quality and avoids interference from the multipath effect in PV estimation.

Fig. 12
figure 12

Precision of multisession PV estimation in grid format. The top panel corresponds to the TRM57971.00, while the bottom panel corresponds to the TRM59800.00

In addition to the repeatability of each individual test, we performed Antenna Field Calibration 2 with different receiver pairs to investigate the consistency of our system using different receivers. The details of the Kepler and Geo receivers are listed in Table 3, and the information of the receiver pairs denoted as a, b, c, d and e are presented in Table 4. The differences in receiver pairs a–b, a–c, a–d and d–e for L1 and B1C are shown in Fig. 13. For this calibration session, most differences in the PCC are approximately at the 0.1 mm level. The RMSs of these differences for all signals and receiver pairs are presented in Fig. 14. The RMS of L2 is near 0.15 mm, while a smaller RMS of approximately 0.05 mm can be expected for other signals. Comparing the differences of the first three combinations, a-c shows a smaller difference when an identical receiver is used at the robot end and different receivers are used at the reference station, which indicates that the differences mainly come from the receiver connected to the robot end rather than the receiver connected to the reference station. In addition, the differences of d-e, where their patterns are calibrated by the same receiver type both on the robot end and reference station, are smallest overall. In other words, based on this experiment, the receiver type has little impact on our calibration system, and calibration stability can be expected with different receiver types.

Fig. 13
figure 13

PCC difference with different receiver pairs for L1 and B1C

Fig. 14
figure 14

RMS of PCC differences with different receiver pairs

4.4 Validation by short-baseline positioning

To validate the APC models calibrated in these experiments and check the performance in positioning applications, a short baseline with a length of 4.7 m was chosen, as described in the previous section. Using a Leica TM50 total station the north, east and up coordinates of the baseline in the topocentric coordinate system were determined as references with a repeatability of 1 mm. A TRM57971.00 antenna (0102) was placed on pillar 1, and a TRM59800.00 antenna (0201) was placed on pillar 2. Both antennas were oriented in the north direction. Static GPS and BDS-3 data were collected from day-of-year (DOY) 357 to 363 in 2020. Finally, relative positioning was implemented individually with all GPS (L1, L2, L5) and BDS-3 (B1I, B1C, B2a, B3I) frequencies.

Considering the presented APC models, four positioning schemes using different strategies for APC correction were designed to validate the accuracy of the calibration performed in the experiments: (1) the calibration in igs14.atx is applied, and each APC model for BDS-3 is replaced with the GPS model with the closest frequency; (2) the calibration in igsR3.atx, in which both GPS and BDS-3 models are available, is applied; (3) a type-mean APC model calibrated for all antennas used in these experiments is applied; and (4) the APC model calibrated for the individual antenna is applied. Other details of the four schemes are listed in Table 6. The differences between the GNSS solutions for GPS and BDS-3 and the reference coordinates from the total station are presented in Table 7. In addition, the repeatability of the baseline solution and the ambiguity fixing rate for scheme 4 are presented in Fig. 15, in which the repeatability is the standard deviation of the baseline solution over 7 days. Repeatability for L1 and L2 is better than 0.5 mm, while baseline solution for L5 and B1I, B3I, B1C and B2a have larger repeatability within 1.5 mm. More than 95 percent of the ambiguities are fixed to integers for all baseline solutions. The situation is similar for the other schemes.

Table 6 Schemes for short-baseline positioning
Table 7 Differences between the GPS/BDS-3 solutions and the reference coordinates for a short baseline
Fig. 15
figure 15

Coordinate repeatability and fixed ambiguity percentage of baseline solution for scheme 4

For scheme 1, the positioning biases for different signals are not consistent with each other. The substitution of the B1I and B1C APC models with the L1 model results in small biases of less than 1 mm in the north, east, and up directions, but the substitution of the B3I and B2a models with the L2 model leads to comparatively large biases close to 6 mm in the up component, which might imply that the convention of replacing absent APC models with an existing model with a close frequency might not be appropriate in every case.

The overall biases of schemes 2, 3, and 4 are at the 2 mm level. However, for a specific signal, the situation might be different, and some exceptions occur in the baseline solutions. The biases of scheme 3 and scheme 4 in L1/B1I/B1C are slightly larger than those of scheme 1, although the APC patterns are calibrated in this work. Scheme 2 shows small biases for the B1I/B1C signals but large biases for the L1/L2/L5/B3I/B2a signals compared to scheme 3 and scheme 4. In a comparison of schemes 3 and 4, the average bias for scheme 3 is 0.07 mm smaller than that for scheme 4; this magnitude is negligible considering the precision of GNSS positioning, indicating no significant difference in overall positioning performance between the type-mean and individual calibrations in these experiments. However, considering that the individual antennas used in the baseline solution have already contributed to the type-mean values, this does not imply that the type-mean values are suitable for all cases. The impacts of the type-mean and individual calibrations should be further investigated with type-mean values obtained by combining results from more individual antennas. Considering that the repeatability of the baseline solution is at the 0.5–1.5 mm level while the differences in the average 3D errors of schemes 2–4 are less than 0.27 mm, a comparable positioning accuracy can be expected in general with APC models from our calibration and igs14.atx for L1/L2 signals or igsR3.atx for B1I/B3I/B1C/B2a/L5 signals. In other words, a possible precision of 2 mm for our antenna calibration can be expected in positioning.

5 Summary

In this work, the current status and progress of field antenna calibration at Wuhan University are introduced, and the preliminary results of multi-GNSS calibration are presented. First, a new field calibration facility, including a six-axis robot, multisystem receivers and other supporting equipment, was installed. After adjustment and testing of the procedures, field calibration of TRM57971.00 and TRM59800.00 antennas was implemented, and APC models for GPS and BDS-3 signals were obtained during multisession experiments. The APC models from these calibrations were analyzed in terms of precision, consistency and differences among different signals. First, the precision of the PCO estimates for the GPS and BDS-3 signals was found to reach the 0.5 mm level, which demonstrates the high stability of the calibration procedures, including data sampling and processing. Second, compared to the APC models in igs14.atx, the consistencies of PCO estimation for the GPS signals are at the 1 mm level, except for L1 with a TRM59800.00 antenna, for which the differences can exceed 1 mm in the north and east components. Third, differences in the direct PCO estimates can reach 6 mm between the L1 and B1C signals, which is accompanied by similar differences in direct PV estimation afterward. However, differences between them decrease to the 1 mm level in terms of the PCC, and high consistency can be expected between APC patterns with the same frequency.

Through the PCC comparison, we investigate the consistency of our PV calibration with the APC models in igs14.atx and igsR3.atx. Except for the calibration of L1/B1I/B1C for TRM57971, differences of other PV calibrations with low elevation angles below 15° can exceed 3 mm or even more. The estimation precisions over multisession for the two antenna types can reach the 1 mm level in most areas of the antenna hemisphere, which indicates good repeatability of our calibration system. In this work, the differences in calibration with different receiver pairs are investigated. Differences in calibration for all signals can reach the 0.15 mm level, and calibrations with receivers of the same type are more consistent.

To validate the APC models derived in this work, baseline positioning was implemented with several processing schemes. The replacement of absent models for some signals with existing models for signals with close or identical frequencies could result in a bias of up to 5–6 mm, which might not be acceptable for some applications. As a result, it is necessary to avoid such substitution if multisignal APC models are available. Finally, the performances of schemes using APC patterns from igsR3.atx and the calibrations conducted in this work were compared. It was found that the overall accuracy of our calibration is within 2 mm for all GPS and BDS-3 signals, and a comparable baseline positioning accuracy can be obtained with the APC models between our calibration and igs14.atx for GPS signals or our calibration and igsR3.atx for BDS-3 signals.