## 4 Testing
### Results for the Receiver Operation Mode
#### 4.3.1 Attitude Determination  
Precise attitude determination is essential in various applications. Differential carrier phase measurements from several receivers with precisely determined baselines can be employed to derive attitude parameters. Since performance degrades by shortening the baselines between receivers, the applicability of these methods might be confined to applications where, antennas separation is extremely limited. Herein, beamforming using a calibrated antenna array is employed for attitude determination, which can be an alternate option in these situations. Moreover, in contrast to standard attitude determination, in this method only one GNSS signal along with an adequate number of antenna elements is enough for attitude determination. This is another advantage of this approach, especially in challenging environments where the number of available signals is low. However, the challenge is carrier phase multipath.  
In order to evaluate the performance of attitude determination based on beamforming, a test was performed with the calibrated antenna array. For the sake of comparison, the SPAN LCI system was used as a reference to evaluate the accuracy of the estimated heading angles. Assuming a horizontal motion and considering Equations (7) and (8), the heading angle can be estimated using the following relation:\[\mathbf{e}^{B}=\begin{bmatrix}\cos\left(y\right)&\sin\left(y\right)&0\\ -\sin\left(y\right)&\cos\left(y\right)&0\\ 0&0&1\end{bmatrix}\mathbf{e}^{ENU} \tag{20}\]  
where \(\mathbf{e}^{ENU}\) and \(\mathbf{e}^{B}\) are obtained from Equations (7) and (16), respectively.  
Since the measurements employed in heading estimation are the same as those used for the calibration process, this test is more of a consistency test than an accuracy performance test.  
Figure 11: Heading angle determination results and the estimated errors compared to the IMU estimates for PRN 16, 30 and 31.  
Figure 11 shows the results of heading determination for PRN 16, 30 and 31. In Figure 11, estimated heading angles for a moving vehicle for two cases are compared with the IMU derived heading angles. In the first case, only the first stage of the optimization method is employed (only constant uncertainty matrix C is considered) whereas in the second case look-up tables obtained from the second stage are also used for improving the heading estimation. Five iterations were adopted for the iterative method in order to estimate the steering vectors. Figure 11 also plots the root mean square (RMS) agreement with the IMU estimates. The precise calibration process improves the agreement by 3 \({}^{\circ}\)to 9 \({}^{\circ}\). However, it is not the case for all PRNs. PRNs with the higher elevation angles show poorer accuracy for heading angle estimation such that the satellite located in zenith cannot be used to sense the horizontal motion. Moreover, the errors due to multipath and noise are higher for the signals of satellite with low elevation angles.  
In order to check the consistency between the estimated heading angles from these three PRNs, estimated heading angles from PRN 16 and 30 are subtracted from those of PRN 31. The results, along with the mean and the RMS values are shown in Figure 12. The results show a consistency of 5 \({}^{\circ}\)to 7 \({}^{\circ}\) between the estimated heading angles for these PRNs.  
In another test, in order to verify the calibration and estimated heading results independently, PRN 31 is excluded from the calibration process and stage 1 and 2 of the calibration method are repeated without using this PRN. Then the heading angles are estimated using the signal of this PRN and the calibrated array. The results for this test are shown in Figure 13. This figure shows a very small degradation compared to the results shown in Figure 11 for PRN 31.