# Fast Fractional-Order Terminal Sliding Mode Control for Seven-Axis Robot Manipulator
## 2 Preliminaries  
### Mathematical Model for Robot Manipulators and Problem Formulation  
Consider an n-links robotic manipulator is model as  
\[\mathbf{M}(\mathbf{x})\ddot{\mathbf{x}}+\mathbf{C}(\mathbf{x},\dot{\mathbf{x}}) \dot{\mathbf{x}}+\mathbf{G}(\mathbf{x})=\boldsymbol{\tau}(t)+\mathbf{d}(t) \tag{1}\]  
where \(\mathbf{x}=[x_{1},\ldots,x_{n}]^{T}\in R^{n}\) is the position state of the joints; \(\dot{\mathbf{x}}\in R^{n}\) is the velocity state vector and \(\ddot{\mathbf{x}}\in R^{n}\) is the acceleration state vector; \(\mathbf{d}\in R^{n}\) is the disturbance vector; \(\boldsymbol{\tau}\in R^{n}\) is the torque vector acted on the joints; \(\mathbf{M}\in R^{n\times n}\), \(\mathbf{C}\in R^{n\times n}\) and \(\mathbf{G}\in R^{n}\) are the symmetric positive definite inertia matrix; the Coriolis and centrifugal matrix, and the gravitational matrix, respectively. After identifying system dynamics, the system in (1) can be rewritten with modeling parameters and uncertainties as  
\[\ddot{\mathbf{x}}=\mathbf{M}_{o}(\mathbf{x})^{-1}(\boldsymbol{\tau}(t)-\mathbf{ C}_{o}(\mathbf{x},\dot{\mathbf{x}})\dot{\mathbf{x}})+\boldsymbol{\
abla} \tag{2}\]  
where \(\mathbf{M}_{o}\) and \(\mathbf{C}_{o}\) are identified dynamic parameters, and \(\boldsymbol{\
abla}=[\Psi_{1},\ldots,\Psi_{n}]^{T}\in R^{n}\) represents the perturbation, which contains the uncertainties of dynamics, the unknown gravitational term, and the disturbance as  
\[\boldsymbol{\
abla}(\mathbf{x},\dot{\mathbf{x}},\ddot{\mathbf{x}},t)=\mathbf{ M}_{o}^{-1}(-\Delta\mathbf{M}(\mathbf{x})\ddot{\mathbf{x}}-\Delta\mathbf{C}( \mathbf{x},\dot{\mathbf{x}})\dot{\mathbf{x}}-\mathbf{G}(\mathbf{x})+\mathbf{ d}(t)) \tag{3}\]  
where \(\Delta\mathbf{M}\) and \(\Delta\mathbf{C}\) represent the uncertainties of the inertia and the Coriolis and centrifugal term of dynamics, respectively. \(\boldsymbol{\
abla}\) is assumed to have a boundary limited as \(|\boldsymbol{\
abla}|\leq\boldsymbol{\Phi}=[\Phi_{1},\ldots,\Phi_{n}]^{T}\in R ^{n}\). Hence, the new dynamics can be rewritten as follows  
\[\ddot{\mathbf{x}}=\mathbf{M}_{o}(\mathbf{x})^{-1}(\boldsymbol{\tau}(t)- \mathbf{C}_{o}(\mathbf{x},\dot{\mathbf{x}})\dot{\mathbf{x}})+\boldsymbol{\
abla} \tag{4}\]  
For trajectory tracking, the error state is defined as  
\[\mathbf{e}=\mathbf{x}-\mathbf{x_{d}} \tag{5}\]  
where \(\mathbf{x_{d}}\in R^{n}\) represents the desired position planning, and \(\mathbf{e}=[e_{1},\ldots,e_{n}]^{T}\in R^{n}\). The notation of the desired velocity state vector and the acceleration state vector are \(\dot{\mathbf{x_{d}}}\) and \(\ddot{\mathbf{x_{d}}}\), respectively.  
In this research, we aim to design a robust controller for a 7-DOF robot manipulator (n = 7), which is shown in Figure 1. All seven joints are rotary joints. The dynamic identification was finished in previous research [17] with a result of \(\mathbf{C}_{o}=diag[2.47\ 10.359\ 0.849\ 2.210\ 0.555\ 0.560\ 0.560]\in R^{7\times 7}\), \(\mathbf{M}_{o}=diag[0.213\ 1.159\ 0.171\ 0.328\ 0.0643\ 0.057\ 0.0640]\in R^{7\times 7}\).  
The goal of the proposed controller is to guarantee the error states to reach the sliding manifold and then slide to the equilibrium point (i.e., \(\mathbf{e}=0\)) despite \(\boldsymbol{\
abla}\).  
Figure 1: Seven-axis robot manipulator.