# \(L_{1}\) Adaptive Control for a Vertical Rotor Orientation System
## 2 Problem Statement  
The vertical rotor is shown in Figure 1. \(\alpha\) and \(\beta\) are the attitude angles of the rotor from \(OXZ\) and \(OYZ\), respectively. \(\gamma\) is the included angle between the rotor axis and \(OZ\). According to the theorem of angular momentum, the motion of the rotor satisfies:  
Figure 1: Rotor scheme. \[\frac{\mathrm{d}}{\mathrm{d}t}\mathbf{L}=\mathbf{T}\]  
where \(\mathbf{L}\) is the angular momentum of the rotor and \(\mathbf{T}\) is the external torque. The torque induced by the gravity is given by:  
\[\left\{ \begin{aligned} T_{xg}&=Pc\sin\alpha\cos\beta\\ T_{yg}&=Pc\sin\beta\\ T_{zg}&=0\end{aligned} \right. \tag{1}\]  
where \(P=mg\) is the gravitational force on the rotor; \(c=\overrightarrow{OO}_{c}\). Then, the state equation of a spinning vertical rotor can be written as:  
\[\left\{ \begin{aligned} \dot{x}_{1}&=\frac{x_{3}}{\cos x _{2}}\\ \dot{x}_{2}&=x_{4}\\ \dot{x}_{3}&=\frac{Pc}{J_{xy}}\sin x_{1}\cos x_{2}- \frac{L}{J_{xy}}x_{4}+x_{3}x_{4}\tan x_{2}+\frac{T_{\mathrm{xe}}}{J_{xy}}\\ \dot{x}_{4}&=\frac{Pc}{J_{xy}}\sin x_{2}-x_{3}^{2} \tan x_{2}+\frac{L}{J_{xy}}x_{3}+\frac{T_{\mathrm{xe}}}{J_{xy}}\end{aligned} \right. \tag{2}\]  
where \(x_{1}=\alpha\) and \(x_{2}=\beta\); \(L=J_{z}\omega_{z}\) is the rotor angular momentum; \(J_{xy}\) and \(J_{z}\) are the rotational inertia about the \(OX/OY\) axis and the \(OZ\) axis, respectively; \(\omega_{z}\) is the spinning rate of the rotor; \(T_{\mathrm{xe}}\) and \(T_{\mathrm{ye}}\) are the external control torques in the \(OX\) and \(OY\) directions, respectively. If we define the following variables:  
\[\left\{ \begin{aligned} h_{1}(\mathbf{x})&=\frac{x_{3}}{ \cos x_{2}}\\ h_{2}(\mathbf{x})&=x_{4}\\ h_{3}(\mathbf{x})&=\frac{Pc}{J_{xy}}\sin x_{1}\cos x_{2} -\frac{L}{J_{xy}}x_{4}+x_{3}x_{4}\tan x_{2}\\ h_{4}(\mathbf{x})&=\frac{Pc}{J_{xy}}\sin x_{2}-x_{3}^{2} \tan x_{2}+\frac{L}{J_{xy}}x_{3}\end{aligned} \right. \tag{3}\]  
and \(\mathbf{h}(\mathbf{x})=[h_{1}\ h_{2}\ h_{3}\ h_{4}]^{\top}\), then Equation (2) can be rewritten as:  
\[\dot{\mathbf{x}}=\mathbf{h}(\mathbf{x})+\mathbf{B}_{1}\mathbf{u} \tag{4}\]  
where \(\mathbf{x}=[x_{1}\ x_{2}\ x_{3}\ x_{4}]^{\top}\) is the state vector, \(\mathbf{u}=\left[T_{\mathrm{xe}}\ T_{\mathrm{ye}}\right]^{\top}\) is the system input and:  
\[\mathbf{B}_{1}=\left[ \begin{array}{cc}0&0\\ 0&0\\ \frac{1}{J_{xy}}&0\\ 0&\frac{1}{J_{xy}}\end{array} \right]\]  
Obviously, \(\mathbf{h}(\mathbf{0})=\mathbf{0}\). Equation (4) is a nonlinear equation. Meanwhile, parameter uncertainties also exist, e.g., the rotational inertia about the \(OX/OY\) axis, \(J_{xy}\), is difficult to calculate accurately, and \(J_{z}\) in \(L=J_{z}\omega_{z}\), as well. Without loss of generality, we suppose that \(J_{xy}=J_{xy0}+\theta_{1}\), \(J_{z}=J_{z0}+\theta_{2}\), where \(J_{xy0}\) and \(J_{z0}\) are nominal moments of inertia of the rotor and \(\theta_{1}\) and \(\theta_{2}\) are unknown constants referred to the inertia errors. These errors include the manufacturing error and accessory connections. By considering the unknown parameters, the two elements \(\mathbf{h}(\mathbf{x})\) and \(\mathbf{B}\) in Equation (4) can be written as:  
\[\mathbf{h}(\mathbf{x})=(\mathbf{A}+\mathbf{A}_{\theta})\mathbf{x}+\mathbf{f}_{1}(\mathbf{x})\quad\mathbf{B}_{1} =\mathbf{B}+\mathbf{B}_{\theta} \tag{5}\]  
where:  
\[\mathbf{A}+\mathbf{A}_{\theta}=\left.\frac{\partial\mathbf{h}}{\partial\mathbf{x}}\right|_\mathbf{{x}=\mathbf{0}}\]  
represents the linear parts of \(\mathbf{h}(\mathbf{x})\), \(\mathbf{f}_{1}(\mathbf{x})=\mathbf{h}(\mathbf{x})-(\mathbf{A}+\mathbf{A}_{\theta})\mathbf{x}\) represents the high-order nonlinear parts of \(\mathbf{h}(\mathbf{x})\), while \(\mathbf{B}\) and \(\mathbf{B}_{\theta}\) represent the certain and uncertain part of \(\mathbf{B}_{1}\). The subscript \(\theta\) in Equation (5) refers to the uncertain parameters. \(\mathbf{A}\), \(\mathbf{A}_{\theta}\), \(\mathbf{B}\) and \(\mathbf{B}_{\theta}\) are:  
\[\mathbf{A}=\left[