# Adaptive Model-Free Coupling Controller Design for Multi-Axis Motion Systems
## 2 Multi-Axis Systems and Recurrent Fuzzy Neural Networks  
### System Description  
The dynamic model of a multi-axis linear motor system is  
\[M\ddot{x}+B\dot{x}=F_{c}-F_{r}-F_{f},\ M=\left[ \begin{array}{ccc}m_{1}&0&0\\ 0&m_{2}&0\\ 0&0&m_{3}\end{array} \right],\ B=\left[ \begin{array}{ccc}b_{1}&0&0\\ 0&b_{2}&0\\ 0&0&b_{3}\end{array} \right] \tag{1}\]  
where \(x(t)\), \(\dot{x}(t)\), \(\ddot{x}(t)\in\Re^{3}\) denote the measurable position, velocity, and acceleration of system (1), respectively; \(M\in\Re^{3\times 3}\) and \(B\in\Re^{3\times 3}\) denotes the system unknown diagonal mass and viscous friction matrices; and, \(F_{c}(t)\in\Re^{3}\) represents the control input; \(F_{r}(x)\in\Re^{3}\) denotes the force ripple disturbance; \(F_{f}(\dot{x})\in\Re^{3}\) denotes the frictional force. In this study, system mass, viscous, force ripple, and frictional force are assumed to be unknown or with uncertainties. Use the concept of [11], the multi-axis system coordinate can be transformed to contour plant by time-varying transformation \(F(t)=[t(t)\ n(t)\ b(t)]\). According the results of [11], \(F(t)\in\Re^{3\times 3}\) is composed of a unit tangent vector, \(t(t)\in\Re^{3}\); unit normal vector, \(n(t)\in\Re^{3}\); and, bi-normal vector, \(b(t)\in\Re^{3}(b(t)=t(t)\times n(t))\). Vectors \(t(t)\), \(n(t)\), and \(b(t)\) are calculated by the tangent and normal components of a desired trajectory \(x_{d}(t)\). For multi-axis system, the desired trajectory is generated by computer numerical controller (CNC) interpolation of motion control. Therefore, \(x_{d}(t)\) is differentiable of class \(C^{3}\) in practical used. By the time varying transformation, we have  
\[x_{f}=F^{T}(t)x \tag{2}\]  
\[x_{fd}=F^{T}(t)x_{d} \tag{3}\]  
where \(x_{f}(t)\), \(\dot{x}_{f}(t)\), \(\ddot{x}_{f}(t)\in\Re^{3}\), and \(x_{fd}(t)\), \(\dot{x}_{fd}(t)\), \(\ddot{x}_{fd}(t)\in\Re^{3}\) denote the position, velocity, and acceleration of system (1) and desired path expressed in the time-varying coordinate system, respectively, as shown in Figure 2. Based on Equations (2) and (3), system (1) is transformed as  
\[\overline{M}\ddot{x}_{f}+\overline{V}_{m}\dot{x}_{f}+\overline{B}\dot{x}_{f}+ Nx_{f}=\overline{F}_{c}-\overline{F}_{r}-\overline{F}_{f} \tag{4}\]  
where \(\overline{M}=F^{T}MF^{-T}\), \(\overline{V}_{m}=-2F^{T}MF^{-T}\dot{F}^{T}F^{-T}\), \(\overline{B}=F^{T}BF^{-T}\), \(N=2F^{T}MF^{-T}\dot{F}^{T}F^{-T}\dot{F}^{T}F^{-T}\)\(-F^{T}MF^{-T}\dot{F}^{T}F^{-T}-F^{T}\overline{F}_{r}(x)=F^{T}F_{r}\), and \(\overline{F}_{f}(\dot{x})=F^{T}F_{f}\), \(\overline{F}_{c}(t)=F^{T}F_{c}\). According the results of [11], System (4) has the following properties, being utilized to establish a regression-based adaptive approach. 1. Symmetric: mass matrix \(\overline{M}(t)\) is symmetric, positive definite [11,18]. 2. Skew-symmetric: matrices \(\dot{\overline{M}}(t)\) and \(\overline{V}(t)\) skew-symmetric and satisfy \(\xi^{T}(\dot{\overline{M}}(t)-\overline{V}_{m}(t))\xi=0\), \(\forall\xi(t)\in\Re^{3}\). 3. Linear parameterize: system (4) can be linearized parameterized \(Y\theta=\overline{M}\dot{x}_{f}+\overline{V}_{m}\dot{x}_{f}+\overline{B}\dot{ x}_{f}+Nx_{f}\), where \(\theta\in\Re^{6}\) contains the unknown constant system parameters and \(Y(x_{f},\dot{x}_{f},\ddot{x}_{f})\in\Re^{6}\) denotes a regression matrix [11]. However, practical systems usually contain un-modeled uncertainties and nonlinear phenomenon; the above properties do not hold. This results in the adaptive coupling controller of [11] not being valid. Therefore, the control objective of this paper is to establish an adaptive model-free coupling controller for multi-axis system to drive the system follows the contour. As above, we define the instant contouring error as \(e=x_{f}-x_{fd}\), where \(x_{f}(t)\) and \(x_{fd}(t)\) are position of system (4) and desired path expressed in the time-varying coordinate system. This means that our goal is to develop adaptive model-free controller to minimize the contouring error \(e\).