# A Head Control Strategy of the Snake Robot Based on Segmented Kinematics
## 4 Simulations of the Head Control
### The Simulation of Catching the Virtual Spheres  
The platform of simulation is shown in Figure 16. The diameters of the two spheres are both 4 cm. The coordinate of the center of the mass for the sphere 1 is (\(-\)4.05 \(\times\) 10\({}^{-2}\), 0.5443, 0.3) m, and that of sphere 2 is (0.1505, 0.5076, 0.3954) m. The simulation of the snake robot needs to complete the task that the head of the robot moves to catch the sphere 1 from the current state and then transforms to catch the sphere 2. The process of the simulation is shown in Figure 17. The total time of the simulation is 36 s. The current state of the snake robot is shown in Figure 17a. To ensure the stability of the motion, the snake robot transforms to the initial state from the current state as in Figure 17b. To get the reliable solution of the inverse kinematics, two spheres must be in the accepted range using the item (3) in Section 3.3, otherwise the location of the snake robot needs to be adjusted. The controller can obtain the information of the pose of the base frame for the neck part in the process. Then the joint angles of the neck part and head part for achieving the sphere 1 are solved using the proposed strategy. Then, the proposed trajectory planning method of the overall body in Cartesian space is used to plan the initial state to the state of catching sphere 1. The stability of the motion is determined by the support polygon and ZMP methods. The process for catching sphere 1 is illustrated in Figure 17c-g. After that, the joint angles of the neck part and head part for catching the sphere 2 are solved using the proposed strategy. Then the trajectories of the joints from the state catching sphere 1 to state catching sphere 2 are planned by the proposed method. The process is shown in Figure 17h-l. The position error between the head link frame and the sphere is 1.8 mm and the direction error between the x-axis of the head link frame and the desired direction is 0.76 degrees. The angular and linear momentum of the snake robot for the planned trajectory and the actual dynamics simulation in the world frame are shown in Figures 18 and 19. The maximum errors of the angular and linear momentum magnitudes of the  
Figure 15: The snake robot with 16 modules and the local magnification of a single module.  
\begin{table}
\begin{tabular}{l l} \hline \hline dimensions & module: 4.3 cm\(\times\)4.3 cm\(\times\)8.65 cm \\  & length (full 16 module robot): 138.4 cm \\  & length (start link): 4.05 cm \\  & length (head link): 4.6 cm \\ mass & module: 0.2 kg \\  & full 16 module robot: 3.2 kg \\ joint limit & \(\pm\)90 degree \\ \hline \hline \end{tabular}
\end{table}
Table 3: The overview of the snake robot.  
planned trajectory and the simulation are 0.0383 kg\(\cdot\)m\({}^{2}\)/s and 0.216 kg\(\cdot\)m/s. The projections of ZMPs of the snake robot for the planned trajectory and the actual dynamics simulation on the ground are shown in Figure 20. Since they are both inside the support polygon, the motion is stable.  
Figure 16: The simulation platform of the snake robot catching the spheres.  
Figure 17: The process of the snake robot head catching the sphere 1 and sphere 2. (**a**): the initial state; (**b**): the bending state; (**c**): lifting the head; (**d**): moving up; (**e**): moving to the sphere 1; (**f**): approaching the sphere 1; (**g**): catching the sphere 1; (**h**): releasing the sphere 1; (**i**): switching to the sphere 2; (**j**): moving to the sphere 2; (**k**): approaching the sphere 2; (**l**): catching the sphere 2.