# Dynamic Analysis and Trajectory Tracking Control for a Parallel Manipulator with Joint Friction
## 4 Inverse Rigid-Body Dynamics  
If joint friction is ignored, the D'Alembert principle is employed to calculate the resultant forces as well as the moments loaded at the center of the components. For the moving platform \(m_{j}\), the equations can be expressed as follows:  
\[\mathbf{Q}_{mj}= \begin{bmatrix}\mathbf{F}_{mj}\\ \mathbf{\tau}_{mj}\end{bmatrix} = \begin{bmatrix}\mathbf{F}_{ej}+m_{m}g\\ \mathbf{\tau}_{ej}-\left(\mathbf{R}_{j}l_{m}\mathbf{R}_{j}^{T}\right)\dot{\mathbf{\omega}}_{ j}-\mathbf{\omega}_{j}\times\left[(\mathbf{R}_{j}l_{m}\mathbf{R}_{j}^{T})\mathbf{\omega}_{j} \right]\end{bmatrix}  \tag{7}\]  
where \(\mathbf{F}_{ej}\) and \(\mathbf{\tau}_{ej}\), respectively, denote the applied forces and moments of the moving platform \(m_{j}\) and \(m_{m}\) and \(l_{m}\) denote the mass and inertia of the moving platform \(m_{j}\), respectively. The summation of the applied and inertial forces, as well as the moments loaded on the joint lever \(b_{ji}a_{ji}\) can be expressed as follows:  
\[\mathbf{Q}_{lji}= \begin{bmatrix}\mathbf{F}_{lji}\\ \mathbf{\tau}_{lji}\end{bmatrix} = \begin{bmatrix}m_{l}g-m_{l}\mathbf{a}_{lji}\\ -\left(\mathbf{R}_{ji}l_{l}\mathbf{R}_{ji}^{T}\right)\dot{\mathbf{\omega}}_{l1i}-\mathbf{ \omega}_{lji}\times\left[(\mathbf{R}_{ji}l_{l}\mathbf{R}_{ji}^{T})\mathbf{\omega}_{lji} \right]\end{bmatrix}  \tag{8}\]  
where \(\mathbf{R}_{ji}\) denotes the rotation matrix of the body-fixed coordinate system of the joint lever \(b_{ji}a_{ji}\) corresponding to \(O\)-\(XYZ\), and \(m_{l}\) and \(l_{l}\) are the mass and inertia of the joint lever \(b_{ji}a_{ji}\), respectively. The applied and inertial forces loaded at the slider \(S_{ji}\) can be obtained as follows:  
\[\mathbf{F}_{Lji}=\left(m_{L}g-m_{L}\ddot{L}_{ji}\mathbf{e}_{i}\right)^{T}\mathbf{e}_{i} \tag{9}\]where \(m_{L}\) denotes the mass of slider \(S_{ji}\). Supposing \(\tau_{i}\) is the drive-torque output from the motor, the moment of inertia of the lead screw on the linear module LNi can be expressed as follows:  
\[\tau_{0i}=\tau_{i}-\frac{2\pi I_{L}}{p}\tilde{L}_{1i} \tag{10}\]  
where \(I_{L}\) and \(p\) are the rotary inertia and lead of the lead screw. The sum of the virtual work of the active forces and moments, as well as the inertial forces and moments on the parallel manipulator, must be zero, so the following expression can be obtained:  
\[\sum\limits_{j=1}^{2}\omega_{j}^{T}\cdot\left(\tau_{mj}-\tau_{mfj}\right)+ \sum\limits_{i=1}^{3}\sum\limits_{j=1}^{2}\left[ \begin{array}{c}\tau_{iji}^{ T}\cdot\mathbf{F}_{lji}+\omega_{ljlj}^{T}\cdot\mathbf{\tau}_{lji}\\ -\omega_{aji}^{T}\cdot\mathbf{\tau}_{afji}-\omega_{lji}^{T}\cdot\mathbf{\tau}_{bfji} \end{array} \right]+\sum\limits_{j=1}^{2}\left[\dot{L}_{j}^{T}\cdot\left(\mathbf{F }_{Lj}-\mathbf{F}_{Lfj}\right)\right]+\dot{\mathbf{\theta}}^{T}\cdot\left(\mathbf{\tau}_{0 }-\mathbf{\tau}_{f}\right)=0 \tag{11}\]  
where \(\mathbf{\tau}_{mfj}\) is the sum friction moment of the artificial hip joint and the thrust ball bearing; \(\omega_{aji}\) is the relative angular velocity of the spherical joint \(a_{ji}\); \(\tau_{afji}\) and \(\tau_{bfji}\) are the friction moments of the spherical joint \(a_{ji}\) and the universal joint \(b_{ji}\), respectively; \(\mathbf{F}_{Lj}=[\mathbf{F}_{Lj},\ \mathbf{F}_{Lj}]^{T}\), \(\mathbf{F}_{Lfj}=[\mathbf{F}_{Lfj},\ \mathbf{F}_{Lfj},\ \mathbf{F}_{Lfj}]^{T}\), and \(\mathbf{F}_{Lfji}\) is the friction of the slider \(S_{ji}\); \(\dot{\mathbf{\theta}}=\left[ \begin{array}{cc}\hat{\theta}_{1},\ \hat{\theta}_{2},\ \hat{\theta}_{3} \end{array} \right]^{T}\), \(\dot{\theta}_{i}\) is the angular velocity of the lead screw of linear modules LNi, \(\mathbf{\tau}_{0}=[\tau_{01},\ \tau_{02},\ \tau_{03}]^{T}\), \(\mathbf{\tau}_{f}=[\tau_{f1},\ \tau_{f2},\ \tau_{f3}]^{T}\), and \(\tau_{fi}\) is the friction moment of the lead screw. According to the relative motion between the joint lever and moving platform, \(\omega_{aji}\) can be represented as  
\[\mathbf{\omega}_{aji}=\mathbf{J}_{arij}\mathbf{\omega}_{oj} \tag{12}\]  
where \(\mathbf{J}_{arij}=