## 4 Experiments
### Identification of Kinematic Parameters of Tarantula  
After the assembly of _Tarantula_, the identification of the proximal revolute joint positions and kinematic parameters of each leg is essential. The mathematical analysis of the measured data to obtain the joint axis vectors (JAVs) presented elsewhere [25] is discussed in short for brevity along with its extension for the prismatic joints. The points traced by the end-effector, i.e., the three-dimensional (3D) coordinates \((\mathbf{x_{i}}\equiv[x_{i},y_{i},z_{i}]^{T})\) were logged and stacked in a matrix \(\mathbf{A}\) (Equation (13)). The mean of the logged pose data points was subtracted from the elements of \(\mathbf{A}\) which resulted in the transformed set of points in a matrix \(\mathbf{B}\) whose mean is zero. Matrices of three-dimensional data points, \(\mathbf{D}\) and \(\bar{\mathbf{D}}\) are shown below:  
\[\mathbf{A}=\left[\mathbf{x_{1}}\quad\mathbf{x_{2}}\quad\cdots\quad\mathbf{x_{ m}}\right]^{T}\ ;\mathbf{\bar{A}}=\left[(\mathbf{x_{1}}-\bar{\mathbf{x}})\quad(\mathbf{x_{2}}- \bar{\mathbf{x}})\quad\cdots\quad(\mathbf{x_{m}}-\bar{\mathbf{x}})\right]^{T}, \tag{13}\]  
where \(\bar{\mathbf{x}}\equiv[\bar{x}\ \bar{y}\ z]^{T}=\frac{1}{m}\left[\sum x_{i}\ \sum y_{i}\ \sum z_{i}\right]^{T}\), and \(m\) being the number of measurements. Applying singular value decomposition (SVD) [46] on matrix \(\mathbf{\bar{A}}\), two square orthogonal matrices \(\mathbf{U}\) and \(\mathbf{V}\) and a rectangular matrix \(\mathbf{D}\) were obtained as:  
\[\mathbf{\bar{A}}=\mathbf{V}_{m\times m}\mathbf{D}_{m\times 3}\mathbf{U}_{3 \times m}. \tag{14}\]  
The orthogonal columns corresponding to the singular values (SVs) are listed in the column of matrix \(\mathbf{U}\equiv[\mathbf{u_{1}}\ \mathbf{u_{2}}\ \mathbf{u_{3}}]\). The direction of the joint axis represented by the unit vector \(\mathbf{n}\) in Figure 12(a) for revolute and Figure 12(b) for prismatic is given as:  
\[\mathbf{n}\equiv\mathbf{u_{3}}\quad\texttt{ for rotary joints}, \tag{15a}\] \[\mathbf{n}\equiv\mathbf{u_{1}}\quad\texttt{ for linearactuating joints}. \tag{15b}\]  
The above equations gave the joint axis vector direction. For a point on the JAV, the center of circle \(\mathbf{c}\), i.e., the center of rotation for revolute joint was obtained using circle fitting method presented in [25], where \(\mathbf{c}\equiv c_{1}\mathbf{u_{1}}+c_{2}\mathbf{u_{2}}+\bar{\mathbf{x}}\), \(c_{1}\) and \(c_{2}\) are the center of fitted circle in the plane spanned by vectors \(\mathbf{u_{1}}\) and \(\mathbf{u_{2}}\). For prismatic joint the mean of the traced point, i.e., \(\mathbf{c}\equiv\bar{\mathbf{x}}\) was taken as the point on the JAV of prismatic joints. The plane of link movement \(\mathbf{\Pi}\) can be defined as:  
\[\mathbf{\Pi}\equiv \begin{bmatrix}\mathbf{n}\\ -\mathbf{n}^{T}\bar{\mathbf{x}}\end{bmatrix} . \tag{16}\]  
Figure 13: Position data points on the circle and the line obtained with the revolute and prismatic joint actuation respectively with its singular value direction. The above information, i.e., the direction of joint axis denoted with **n** and **c** being points on it, were used to extract the DH parameters according to Algorithm 1. The identified parameters are listed in Table 4. The effective length and breadth of the trunk were also identified from the JAVs. The experimental set-up for the identification experiments is shown in Figure 14b,c. The robot's trunk was rigidly fixed with the frame. Each leg joint was actuated one by one and the frames were grabbed to process it as per the flow diagram shown in Figure 11. The advantage of the circle point method is that the coordinates of the proximal joints were also known.