## 3 Calibration Method for the Angular Positioning Deviation of the Rotary Table  
### Self-Calibration of Laser Tracer Station Based on Levenberg-Marquardt Algorithm  
#### 3.1.1 Self-Calibration Method  
According to Equation (1), let  
\[f_{i}\left(X_{j},Y_{j},Z_{j},d_{j}\right)=\sqrt{\left(x_{i}-X_{j}\right)^{2}+ \left(y_{i}-Y_{j}\right)^{2}+\left(z_{i}-Z_{j}\right)^{2}}-d_{j}-l_{ij} \tag{5}\]  
\[\text{Record}\,\mathbf{f}_{i}\left(\mathbf{x}\right)=\left(f_{1}\left(\mathbf{x}\right),f _{2}\left(\mathbf{x}\right),\ldots,f_{n}\left(\mathbf{x}\right)\right)\text{, then}\]  
\[\underset{\mathbf{x}\in\mathbf{R}^{n}}{\min}F\left(\mathbf{x}\right)=\frac{1}{2}\underset{ i=1}{\sum}f_{i}^{2}\left(\mathbf{x}\right)=\frac{1}{2}\|\mathbf{f}\left(\mathbf{x}\right)\|^{2} \tag{6}\]  
where \(\mathbf{R}^{n}\) is a set of \(n\)-dimensional real numbers and \(n\) is the number of measured points. The gradient of the objective function \(F\) is denoted as \(g\left(\mathbf{x}\right)\), and we can obtain  
\[g\left(\mathbf{x}\right)=\
abla F\left(\mathbf{x}\right)=\
abla\left(\frac{1}{2}\|\mathbf{ f}\left(\mathbf{x}\right)\|^{2}\right)=\mathbf{J}\left(\mathbf{x}\right)^{\text{T}}\mathbf{f} \left(\mathbf{x}\right)=\underset{i=1}{\sum}f_{i}\left(\mathbf{x}\right)\
abla f_{i} \left(\mathbf{x}\right) \tag{7}\]  
where \(\mathbf{J}\left(\mathbf{x}\right)=\mathbf{f}\left(\mathbf{x}\right)=\left(\
abla f_{1}\left( \mathbf{x}\right),\
abla f_{2}\left(\mathbf{x}\right),\ldots\
abla f_{n}\left(\mathbf{x} \right)\right)^{\text{T}}\).  
In this paper, Levenberg-Marquardt algorithm (L-M) is used for iteration, and the coordinates of laser tracer stations and the distance from laser tracer stations to the initial measured point are obtained by iteration. The search direction of the iteration is set as \(\mathbf{h}_{i}\), then  
\[\mathbf{h}_{i}=\underset{d\in\mathbf{R}^{n}}{\min}\|\mathbf{J}_{i}\mathbf{h}+\mathbf{f}_{i}\|^{2}+ \mu_{i}\|\mathbf{h}\|^{2} \tag{8}\]  
where \(\mu_{i}>0\); \(\mu_{i}\) is the positive parameter introduced to adjust the search direction; \(\mathbf{f}_{i}\) is the set of error equations; \(\mathbf{J}_{i}\) is the gradient matrix of error equations; \(\mathbf{h}\) is the set of search directions.  
By optimality condition [13; 14], \(\mathbf{h}_{i}\) satisfies  
\[\
abla\left(\|\mathbf{J}_{i}\mathbf{h}+\mathbf{f}_{i}\|^{2}+\mu_{i}\|\mathbf{h}\|^{2}\right)=2 \left[\left(f_{i}{}^{\text{T}}\mathbf{J}_{i}+\mu_{i}\mathbf{I}\right)\mathbf{h}+\mathbf{J}_{i} ^{\text{T}}\mathbf{f}_{i}\right]=0 \tag{9}\]  
where \(\mathbf{I}\) is \(n\times n\) identity matrix.  
when \(r_{i}\) approaches 0 or 1, this parameter needs to be adjusted [15]. Generally, the critical values of \(r_{i}\) are 0.25 and 0.75, so the selection rule of parameter \(\mu_{i}\) is obtained as  
\[\mu_{i+1}=\left\{\begin{array}{ll}0.1\mu_{i},&r_{i}>0.75\\ \mu_{i},&0.25\leq r_{i}\leq 0.75\\ 10\mu_{i},&r_{i}<0.25\end{array}\right. \tag{17}\]  
In the iteration process, the initial value of \(\mu_{i}\) is given, and the value of each iteration step is taken as the initial value of the next iteration. According to the calculated \(\mathbf{h}_{i}\) and \(r_{i}\), the parameter \(\mu_{i}\) is selected. Then, according to the selected parameter \(\mu_{i}\), \(\mathbf{h}_{i}\) is calculated, and the linear search is carried out to complete the iteration process.