# Study on Head Stabilization Control Strategy of Non-Wheeled Snake Robot Based on Inertial Sensor
## 3 Head Stabilization Strategy Analysis  
The specific work on the dynamics and control laws of snake-like robots is detailed in [21].  
To ensure the stable operation of the head of snake robot, the first joint (pitch direction) needs to be planned and controlled separately. Head stabilization requires the first joint to meet the following conditions [12]:  
1. The direction of the head module is consistent with the direction of movement;
2. The first joint angle frequency is consistent with other joint angle frequencies;
3. The period of the first joint is the same as that of other joints, but the phase and amplitude are different.  
In Figure 3, 1, 2 and 3 represent the first three links of the robot, \(\theta_{1}\) represents the original joint angle of the first joint, \(\theta_{2}\) represents the joint angle of the second joint and \(\theta_{h}\) represents the joint angle of the head joint. It can be seen from the figure that \(\theta_{h}\) and \(\theta_{1}-\theta_{2}\) have the same phase and frequency but different amplitudes. Set the original joint angle of the first joint as \(f(t)\), and the phase difference of adjacent joints as \(\varphi\), the ideal angle equation \(\theta_{h}\) can be expressed as (3).  
\[\begin{array}{l}\theta_{1}=f(t)\\ \theta_{2}=f(t-\varphi)\\ \theta_{h}=A_{head}(\theta_{1}-\theta_{2})=A_{head}[f(t)-f(t-\varphi)]\end{array} \tag{3}\]  
Figure 1: Snake robot integration.  
Figure 2: Schematic diagram of inverse dynamics control [21].  
From (3), it can be seen that the main problem of controlling the head direction has been changed to solving the value of the front amplitude coefficient. Add a virtual angle \(\theta_{v}\) that is out of phase with the first joint the same as that of the first and second joints. Taking this virtual joint as a reference, the crossing time \(t_{cross}\) of \(\theta_{1}\) and \(\theta_{v}\) can be calculated. At the same time, since \(\theta_{h}\) is equal to \(\theta_{1}\) at this time, the value of the amplitude coefficient \(A_{head}\) can be obtained through (4).  
\[A_{head}=\frac{f(t_{cross})}{[f(t_{cross})-f(t_{cross}-\varphi)]} \tag{4}\]  
Add a virtual CPG signal in the CPG network to calculate the head navigation angle, as shown in Figure 4. According to (3), the correction signal is \(y_{out}\) of the head joint, the head in the head navigation motion is calculated by the output of the first CPG (\(y_{out}\), 1) and the second CPG (\(y_{out}\), 2). The final calculation model is:  
\[\left\{\begin{array}{l}y_{out,head}(t)=A_{head}[y_{out,1}(t)-y_{out,2}(t)] \\ y_{out,1}(t_{cross})=y_{out,virtual}(t_{cross})\\ y_{out,1}(t_{cross})=y_{out,head}(t_{cross})\\ A_{head}=\frac{y_{out,1}(t_{cross})}{[y_{out,1}(t_{cross})-y_{out,2}(t_{cross })]}\end{array}\right. \tag{5}\]  
Through the above methods, the ideal direction of the head can be obtained indirectly, and the head can be stabilized when wheeled snake robot is in a serpentine gait. However, in the actual application process, due to the lack of sideslip constraints [22], the planar  
Figure 4: CPG network for controlling head navigation motion.  
Figure 3: (a–d) Four typical cases of head navigation motion.