# Generalized Singularity Analysis of Snake-Like Robot
## 2 Notation
### Kinematics around a Joint Adjacent Two Links with Non Side-Slipping  
A schematic figure of a joint between adjacent non side-slipping links is shown in Figure 2. Physical parameters and state variables are denoted in Tables 1 and 2, respectively. Figure 1: The distinction between a side-slipping link and a non side-slipping link. (**a**): a non side-slipping link. (**b**): a side-slipping link. From Figure 2, the passive wheel, which represents that the link is non side-slipping, is installed on arbitrary position of each link. \(\theta_{i}\) (\(i=1,\cdots,n\)) represents absolute angle of each link, \(\phi_{i}\) (\(i=2,\cdots,n\)) represents relative angle between \(i\)th link and \(i-1\)th link, and \((x_{i},\ y_{i})\) (\(i=1,\cdots,n\)) represent position of the passive wheel of each link on generalized coordinate. Also, \(d_{i}\) and \(l_{i}\) (\(i=1,\cdots,n\)) represent length from extremity to center of gravity (COG) and length from COG to end, respectively. The generalized coordinate and the quasi-velocity coordinate are defined. From Figure 2, the generalized coordinate of the system \(\mathbf{x}_{pi}\) is defined as:  
\[\mathbf{x}_{pi}:= \begin{bmatrix}\theta_{i}&x_{i}&y_{i}\end{bmatrix} ^{T}.\]  
Also, the quasi-velocity of the system \(\mathbf{v}_{i}\) is defined as:  
\[\mathbf{v}_{i}:= \begin{bmatrix}\omega_{i}&v_{xi}&v_{yi}\end{bmatrix} ^{T}.\]  
From Figure 2, the velocity transform matrix \(\mathbf{T}_{i}\) transforms the generalized coordinate \(\mathbf{x}_{pi}\) to the quasi-velocity coordinate \(\mathbf{v}_{i}\) as below:  
\[\dot{\mathbf{x}}_{pi} =\mathbf{T}_{i}\mathbf{v}_{i},\] \[\mathbf{T}_{i} = \begin{bmatrix}1&0&0\\ 0&\cos\theta_{i}&-\sin\theta_{i}\\ 0&\sin\theta_{i}&\cos\theta_{i}\end{bmatrix} .\] \begin{table}
\begin{tabular}{l l} \hline \hline
**Parameters** & **Notation** \\ \hline Link length & \(L_{i}\) [m] \\ Length from COG to end & \(l_{i}\) [m] \\ Length from extremity to COG & \(d_{i}\) [m] \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Physical Parameters(\(i=1,\cdots,n\)). \begin{table}
\begin{tabular}{l l} \hline \hline
**Variables** & **Notation** \\ \hline Position in \(x\)-coordinate & \(x_{i}\) [m] \\ Position in \(y\)-coordinate & \(y_{i}\) [m] \\ Absolute angle of each link & \(\theta_{i}\) [rad] \\ Relative angle between \(i\)th link and \(i-1\)th link & \(\phi_{i}\) [rad] \\ Velocity in the propulsive direction & \(v_{xi}\) [m/s] \\ Velocity in the normal direction & \(v_{yi}\) [m/s] \\ Angular velocity of each link & \(\omega_{i}\) [rad/s] \\ \hline \hline \end{tabular}
\end{table} 
Table 2: State Variables(\(i=1,\cdots,n\)). Figure 2: The schematic figure of the joint of two adjacent links both without side-slipping. From Figure 2, \(i\)th link is related to \(i-1\)th link as follows:  
\[ \begin{cases}\theta_{i}=\theta_{i},\\ x_{i}=x_{i-1}+l_{i-1}\cos\theta_{i-1}+d_{i}\cos\theta_{i},\\ y_{i}=y_{i-1}+l_{i-1}\sin\theta_{i-1}+d_{i}\sin\theta_{i}.\end{cases} \]  
Its derivations are:  
\[ \begin{cases}\dot{\theta}_{i}=\dot{\theta}_{i},\\ \dot{x}_{i}=\dot{x}_{i-1}-l_{i-1}\sin\theta_{i-1}\dot{\theta}_{i-1}-d_{i}\sin \theta_{i}\dot{\theta}_{i},\\ \dot{y}_{i}=\dot{y}_{i-1}+l_{i-1}\cos\theta_{i-1}\dot{\theta}_{i-1}+d_{i}\cos \theta_{i}\dot{\theta}_{i},\end{cases}  \tag{1}\]  
Equation (1) is reformulated as (2) by using the generalized velocity \(\dot{\mathbf{x}}_{\mathbf{pi}}=\mathrm{d}\mathbf{x}_{\mathbf{pi}}/\mathrm{d}t\). \[\dot{\mathbf{x}}_{\mathbf{pi}} =\bar{\mathbf{\Lambda}}_{\mathbf{i-1}}\dot{\mathbf{x}}_{\mathbf{pi}-\mathbf{1}}+\bar{ \mathbf{\Lambda}}_{i}\dot{\theta}_{i}, \tag{2}\] \[\bar{\mathbf{\Lambda}}_{\mathbf{i-1}} = \begin{bmatrix}0&0&0\\ -l_{i-1}\sin\theta_{i-1}&1&0\\ l_{i-1}\cos\theta_{i-1}&0&1\end{bmatrix} , \bar{\mathbf{\Lambda}}_{i} = \begin{bmatrix}1\\ -d_{i}\sin\theta_{i}\\ d_{i}\cos\theta_{i}\end{bmatrix}