# Kinematic Analysis and Motion Planning of Cable-Driven Rehabilitation Robots
## 3 Kinematics Analysis of Rehabilitation Robot  
The robot needs to complete the required actions smoothly and accurately. First, the kinematics of the robot is analyzed, and the kinematic model of the robot is established. The rehabilitation robot with \(m\) cables is shown in Figure 3a. Figure 3b shows a free body diagram of the lower limb of three cables; \(W_{1}\), \(W_{2}\), and \(W_{3}\) are the tension of the cables; and \(G\) is the gravitational force on the lower limb; when the tension of one of the cables increases, the lower limbs will move in the direction of the cable tension. The cables are made of lighter materials, ignoring their own weight and sagging [37,38]; therefore, the cable between the cable winder and the end limb can be regarded as a straight line. In Figure 3a, \(\{O-xyz\}\) is the global coordinate system, which is fixed on the first column and is always fixed during rehabilitation training, and \(O\) is its coordinate origin; \(\left\{O_{p}-xyz\right\}\) is the local coordinate system, which is the central point at the end of the lower leg. It moves with the central point during movement, and \(O_{p}\) is its coordinate origin. The pose of \(O_{p}-xyz\) at \(O-xyz\) can be written as \(X=\left[ \begin{array}{cc}{p_{op}}^{T}&{\phi_{op}}^{T}\end{array} \right]^{T}\), \(p_{op}=\left[ \begin{array}{cc}{p_{xop}}&{p_{yop}}&{p_{zop}}\end{array} \right]^ {T}\), and \(\phi_{op}=\left[ \begin{array}{cc}\alpha&\beta&\gamma\end{array} \right]^{T}\) is the position and orientation vector of the central point of the end lower leg, respectively, and \(\alpha\), \(\beta\), and \(\gamma\) represent the rotation angle of the end lower leg around the \(x,y\), and \(z\) axes of the local coordinate system. The variable \(A_{i}\) is the joint point between the cable and the cable winder, \(B_{i}\) is the joint point between the cable and the flexible belt, \(q_{i}\) is the length of the cable, \(l_{i}\) is the vector of the cable length, \(u_{i}=l_{i}/q_{i}\) is the unit vector of the cable, and \(\overset{O}{p}R\) represents the rotation matrix from the local to global coordinate system. The position vector of point \(A_{i}\) in the global coordinate system is denoted by \(a_{i}\), and the position vector of point \(B_{i}\) in the local coordinate system is denoted by \(b_{i}\). From the inverse posture solution, the posture of the end lower leg can be obtained as  
\[\alpha=\arctan\frac{-s_{1}c_{2}}{c_{1}}\quad\beta=\arctan\frac{-s_{1}s_{2}}{ \sqrt{c_{1}s_{2}^{2}+c_{2}^{2}}}\quad\gamma=\arctan\frac{c_{2}}{c_{1}s_{2}} \tag{7}\]  
From the posture of the end lower leg, we can obtain the angular velocity vector \(\omega_{p}=\left[ \begin{array}{cc}\omega_{px}&\omega_{py}&\omega_{pz}\end{array} \right] ^{T}\) of the central point relative to the local coordinate system as  
\[\left\{ \begin{array}{l}\omega_{px}=\hat{\alpha}=\frac{c_{1}s_{1}s_{2}\hat{ \phi}_{2}-c_{2}\hat{\phi}_{1}}{c_{1}^{2}+s_{1}^{2}}\hat{\phi}_{2}\\ \omega_{py}=\hat{\beta}=(-c_{1}s_{2}\hat{\phi}_{1}-s_{1}c_{2}\hat{\phi}_{2}) \sqrt{c_{1}^{2}s_{2}^{2}+c_{2}^{2}}+s_{1}s_{2}\hat{d}\\ \omega_{pza}=\hat{\gamma}=\frac{s_{1}s_{2}c_{2}\hat{\phi}_{2}-c_{1}\hat{\phi}_{ 1}}{c_{1}^{2}s_{2}^{2}+c_{2}^{2}}\end{array} \right. \tag{8}\]  
Figure 3: (**a**) Kinematics model. (**b**) Lower limb free body diagram of three cables. angular acceleration vector \(\varepsilon_{p}=\left[ \begin{array}{cc}\varepsilon_{px}&\varepsilon_{py}& \varepsilon_{pz}\end{array} \right]^{T}\) is  
\[\left\{ \begin{array}{l}\varepsilon_{px}=\dot{\omega}_{px}=\frac{N_{1}-2N_{2} }{(c_{1}c_{2}c_{2}^{2}\dot{\theta}_{1})^{2}}\\ \varepsilon_{py}=\dot{\omega}_{py}=N_{3}+s_{1}s_{2}d\\ \varepsilon_{pz}=\dot{\omega}_{pz}=\frac{N_{4}-2N_{5}}{(c_{1}s_{2}^{2}+c_{2} ^{2})^{2}}\end{array} \right. \tag{9}\]  
where  
\[