## 2 Materials and Methods  
### Pose Parameter Detection Method  
The pose detection subsystem is composed of a laser emitter, three laser receivers, a laser ranging sensor, a biaxial tilt sensor and an industrial computer, as shown in Figure 1. The transverse laser emitter is arranged on the top of the tunnel, and the laser receiver, distance measuring sensor and tilt sensor are arranged on the roadheader body. The position coordinates of the spot projected on the laser receiver will also change accordingly when the roadheader is twisted or moved. The change of the spot coordinates is detected by the laser receiver and sent to the industrial computer as the data source for pose calculation. [PERSON] [14] proposed a plane solution method, which assumes that the roadheader moves on an ideal horizontal plane. However, under actual working conditions, the roadheader does not always move on the horizontal plane. The uneven road surface will cause the roadheader to tilt, and the pitching and rolling motion of the roadheader will also cause the point coordinates of the laser receiver to change. Using the plane algorithm to calculate the pose parameters will produce errors. Therefore, it is necessary to study the spatial algorithm of roadheader yaw angle and lateral offset. For example, a laser receiver can be subject to analysis, as shown in Figure 2.  
Figure 1: Pose detection method. Figure 2: Principle of pose parameter space algorithm. \(\text{O}_{0}X_{0}Y_{0}Z_{0}\) is the reference coordinate system; point O is the center of the laser receiver; point P is the center of the laser spot and \(\text{r}_{\text{O}}\) and \(\text{r}_{\text{P}}\) are the coordinate vectors corresponding to point O and point P, respectively. They are also the relative coordinate vectors from point O to point according to the vector algorithm:  
\[\text{r}_{\text{P}}=\text{r}_{\text{O}}+\text{r}_{\text{OP}} \tag{1}\]  
The coordinate vector \(\text{r}_{\text{P}}\) obtains the coordinate vector by calculating the intersection of the laser plane and the straight line where the laser receiver is located. While the expression of the laser plane is determined by the mounting direction and position of the laser emitter, the expression of the straight line where the laser receiver is located is determined by the attitude parameters of the roadheader body and the installation mode of the laser receiver. The coordinate vector \(\text{r}_{\text{O}}\) can be obtained by left multiplying the coordinate vector in the roadheader coordinate system (depending on the installation direction of the laser receiver) by the direction cosine matrix from the roadheader coordinate system to the reference coordinate system. The coordinate vector \(\text{r}_{\text{OP}}\) may be obtained by multiplying the measured value of the laser receiver by its direction vector. Since there are three laser receivers, three matrix equations can be established, and the lateral offset (X-axis coordinate), altitude offset (Z-axis coordinate) and yaw angle of the roadheader can be obtained [27]. \[ \begin{split} d_{x}&=-d_{1}(\cos\alpha\cos\gamma -\sin\alpha\sin\beta\sin\gamma)\\ &+a(1-\cos\alpha\cos\gamma+\sin\alpha\sin\beta\sin\gamma)\\ &+b\sin\alpha\cos\beta-c(\sin\gamma\cos\alpha+\sin\alpha\sin\beta \cos\gamma)\\ & d_{z}=-d_{3}\cos\beta\cos\gamma+a_{3}\sin\gamma\cos\beta\\ &-b_{3}\sin\beta+c_{3}(1-\cos\beta\cos\gamma)\\ &\alpha=\arctan\frac{(d_{2}-d_{1})\cos\gamma+H_{0}\sin\gamma}{(d _{2}-d_{1})\sin\beta\sin\gamma+L_{0}\cos\beta-H_{0}\sin\beta\cos\gamma}\end{split}  \tag{2}\]  
Herein, \(a\), \(b\) and \(c\) denote the mounting positions of the laser receiver 1 on the roadheader, and \(a_{3}\), \(b_{3}\) and \(c_{3}\) denote the mounting positions of the laser receiver 3 on the roadheader. \(L_{0}\) is the front rear distance between the laser receivers 1 and 2. \(H_{0}\) is the height difference between the two laser receivers. \(d_{1}\), \(d_{2}\) and \(d_{3}\) are the measured values of the laser receivers 1, 2 and 3.