## 2 Cable-Driven Parallel-Series Mechanism
### Model Details of the Mechanism
The mechanism design rotates the upper platform in three axes with pitch, roll, and yaw angles by adding another cable instead of installing the motor in the \(z\)-axis compared to the traditional mechanism driven by three cables. A tangential pulling tension is provided by four cables to enable the upper platform rotating around the \(z\)-axis with the rotation bearing. The homogeneous coordinates of \(\mathbf{P}_{1}\) and \(\mathbf{P}_{2}\) in the global coordinate system \(OXYZ\) on the lower platform are:  
\[{}^{O}\mathbf{p}_{1}=(0,-p,-d_{1},1)^{T},\ {}^{O}\mathbf{p}_{2}=(0,p,-d_{1},1)^{T}. \tag{1}\]  
Figure 2: Simplified model of the CDPS mechanism. Similarly, the homogeneous coordinates of \(Q_{1}\) and \(Q_{2}\) in the local coordinate system \(oxy\) on the upper platform are:  
\[{}^{o}\boldsymbol{q}_{1}=(-q,0,0,1)^{T},\ ^{o}\boldsymbol{q}_{2}=(q,0,0,1)^{T}. \tag{2}\]  
Three angles are selected as the parameters to describe the upper platform motion in three axes and transfer the matrix from the local coordinate system to the global coordinate system. \(o^{\prime}\) is the projection of \(o\) on the \(OXY\) plane. \(\theta_{m}\) is the angle between \(o^{\prime}O\) and the \(OX\) axis to describe the spring bending direction on the plane \(OXY\). \(\theta_{b}\) is the angle between two shafts to describe the bending degree of the spring on the plane \(oOO^{\prime}\). \(\theta_{r}\) is the anticlockwise rotation angle around the \(z\)-axis to describe the yaw angle of the upper platform in the local coordinate system. \(p\) and \(q\) are the radius of the upper and lower platforms (Figure 2). Rotation matrix \(\boldsymbol{R}\) from the local coordinate system to the global coordinate system is obtained using Rodriguez formula,  
\[\boldsymbol{R}=\hat{e}^{2\theta_{b}}=\boldsymbol{I}+\hat{\boldsymbol{i}}\sin \theta_{b}+\hat{\boldsymbol{i}}^{2}(1-\cos\theta_{b})=\left[ \begin{array}{ ccc}s_{110}&s_{120}&s_{130}\\ s_{210}&s_{220}&s_{230}\\ s_{310}&s_{320}&s_{330}\end{array} \right], \tag{3}\]  
\[ \begin{array}{c}s_{110}=\sin^{2}\theta_{m}+\cos\theta_{b}\ \cos^{2}\theta_{m}\\ s_{120}=s_{210}=(\cos\theta_{b}-1)\cos\theta_{m}\sin\theta_{m}\\ s_{130}=-s_{310}=\sin\theta_{b}\cos\theta_{m}\\ s_{230}=-s_{320}=\sin\theta_{b}\sin\theta_{m}\\ s_{220}=\cos^{2}\theta_{m}+\cos\theta_{b}\ \sin^{2}\theta_{m}\\ s_{330}=\cos\theta_{b}\end{array} , \tag{4}\]  
where  
\[\boldsymbol{i}=\left[-\sin\theta_{m},\cos\theta_{m},0\right]^{T}, \tag{5}\]  
\[\hat{\boldsymbol{i}}=\left[ \begin{array}{ccc}0&0&\cos\theta_{m}\\ 0&0&\sin\theta_{m}\\ -\cos\theta_{m}&-\sin\theta_{m}&0\end{array} \right], \tag{6}\]  
\[\boldsymbol{R}_{h}=\left[ \begin{array}{cccc}s_{110}&s_{120}&s_{130}&0\\ s_{210}&s_{220}&s_{230}&0\\ s_{310}&s_{320}&s_{330}&0\\ 0&0&0&1\end{array} \right]. \tag{7}\]  
The coordinates are translated along the \(z\)-axis by the length of \(d_{2}\) in \(M_{trans}\):  
\[M_{trans}=\left[ \begin{array}{cccc}1&0&0&0\\ 0&1&0&0\\ 0&0&1&d_{2}\\ 0&0&0&1\end{array} \right]. \tag{8}\]  
The rotation matrix \(\boldsymbol{M}_{rot\_oz}\) around the \(z\)-axis is  
\[M_{rot\_oz}=\left[ \begin{array}{cccc}\cos\theta_{r}&-\sin\theta_{r}&0&0\\ \sin\theta_{r}&\cos\theta_{r}&0&0\\ 0&0&1&0\\ 0&0&0&1\end{array} \right]. \tag{9}\]  
The transformation matrix \({}^{O}\boldsymbol{T}_{o}\) from the local coordinate system to the global coordinate system is obtained by combining the three transformation matrices above:\[{}^{O}\mathbf{T}_{o}=\mathbf{R}_{h}\mathbf{M}_{trans}\mathbf{M}_{rot\_oz}=\left[ \begin{array}{ cccc}s_{11}&s_{12}&s_{13}&a\\ s_{21}&s_{22}&s_{23}&b\\ s_{31}&s_{32}&s_{33}&c\\ 0&0&0&1\end{array} \right], \tag{10}\]  
where  
\[