# Finite-Time Height Control of Quadrotor UAVs
## 3 Inner-Loop Control Scheme Design  
### Finite-Time ESO Design  
In this section, a finite-time ESO and a finite-time super-twisting controller are designed for the height velocity inner loop. Assume that the external disturbance \(\xi(t)\) in the formula is continuously differentiable and bounded. Letting \(x_{2}(t)=\xi(t)\), the height velocity inner loop (2) of the quadrotor UAV is rewritten as  
\[ \begin{split}\dot{x}_{1}(t)&=b_{0}u(t)+x_{2}(t)-g\\ \dot{x}_{2}(t)&=\varpi(t)\end{split}  \tag{3}\]  
Here, where \(\varpi(t)\) represents the derivative of \(\zeta(t)\), and there exists a positive number \(M\) satisfying \(\varpi(t)\leq M\). Define a new variable \(\varsigma_{1}(t)=z_{1}(t)-x_{1}(t)\), and a finite-time ESO for the height velocity inner loop (2) is designed as  
\[ \begin{split}\dot{z}_{1}(t)&=z_{2}(t)-\beta_{1}| \varsigma_{1}(t)|^{n}\text{sign}(\varsigma_{1}(t))-\beta_{2}\varsigma_{1}(t)+b _{0}u-g\\ \dot{z}_{2}(t)&=-\beta_{3}|\varsigma_{1}(t)|^{n} \text{sign}(\varsigma_{1}(t))\end{split}  \tag{4}\]  
Figure 1: Schema of a quadrotor aircraft. where \(z_{1}(t)\) and \(z_{2}(t)\) are the estimations of \(x_{1}(t)\) and \(x_{2}(t)\), respectively, \(\varsigma_{1}(t)\) is the observation error of \(x_{1}(t)\), \(\beta_{1}\), \(\beta_{2}\), and \(\beta_{3}\) are the positive adjustable observer gains, and \(n\) is the exponential gain, which rests within \((0,1)\). Letting \(\varsigma_{2}(t)=z_{2}(t)-x_{2}(t)\), then for the inner loop, the observation error equation for the finite-time ESO (4) is  
\[ \begin{array}{l}\dot{\varsigma}_{1}(t)=\varsigma_{2}(t)-\beta_{1}|\varsigma_ {1}(t)|^{n}\text{sign}(\varsigma_{1}(t))-\beta_{2}\varsigma_{1}(t)\\ \dot{\varsigma}_{2}(t)=-\beta_{3}|\varsigma_{1}(t)|^{n}\text{sign}(\varsigma_{ 1}(t))-\varpi(t)\end{array}  \tag{5}\]  
For the observation error Equation (5), the stability proof of the finite-time ESO is given in the following. **Theorem 1**. : _Considering the height velocity inner loop (2) and the finite-time ESO (4), if the parameters satisfy \(\beta_{1}>0\), \(\beta_{2}>0\), \(\beta_{3}>0\) and \(0<n<1\), then the observation error \(\varsigma_{1}(t)\) and \(\varsigma_{2}(t)\) will converge to a small neighborhood centered at the origin in finite time \(T_{m}\). The convergence time is calculated by the following formula as_  
\[T_{m}\leq\frac{2\lambda_{\max}\{\mathbf{L}_{1}\}}{d_{1}}\ln\frac{\frac{d_{1}}{ \lambda_{\max}\{\mathbf{L}_{1}\}}\sqrt{V_{1}(0)}+\frac{d_{2}}{\sqrt{\lambda_{ \max}\{\mathbf{L}_{1}\}}}}{\frac{d_{2}}{\sqrt{\lambda_{\max}\{\mathbf{L}_{1}\} }}}. \tag{6}\]  
_where \(\mathbf{L}_{1}\) is a positive definite symmetric matrix defined such that_  
\[\mathbf{L}_{1}= \begin{bmatrix}\frac{\theta_{1}}{n}+\beta_{3}^{2}&-\beta_{3}\\ -\beta_{3}&2\end{bmatrix}  \tag{7}\]  
**Proof of Theorem 1. ** Construct a Lyapunov function as \(V_{1}(t)=\boldsymbol{h}(t)^{T}\mathbf{L}_{1}\boldsymbol{h}(t)\) in which \(\boldsymbol{h}(t)=\left[|\varsigma_{1}(t)|^{n}\text{sign}(\varsigma_{1}(t)), \varsigma_{2}(t)\right]^{T}\) is the constructed error. Take the derivative of \(\boldsymbol{h}(t)\) and there is  
\[ \begin{array}{l}\dot{\boldsymbol{h}}(t)&=\begin{bmatrix}n|\varsigma_{1}(t)| ^{n-1}(\varsigma_{2}(t)-\beta_{1}|\varsigma_{1}(t)|^{n}\text{sign}(\varsigma_{1 }(t))-\beta_{2}\varsigma_{1}(t))\\ -\beta_{3}|\varsigma_{1}(t)|^{n}\text{sign}(\varsigma_{1}(t))-\varpi(t)\\ =\begin{bmatrix}-\beta_{1}n\varpi(t)-\beta_{2}n&n\varpi(t)\\ -\beta_{3}&0\end{bmatrix}\boldsymbol{h}(t)-\begin{bmatrix}0\\ 1\end{bmatrix}\varpi(t)\\ =\boldsymbol{P}_{1}\boldsymbol{h}(t)-\boldsymbol{Q}_{1}\varpi(t)\end{array}  \tag{8}\]  
where \(\rho(t)=|\varsigma_{1}(t)|^{n-1}\geq 0\) holds. Thus, the characteristic polynomial of matrix \(\boldsymbol{P}_{1}\) is  
\[ \begin{array}{l}E(\widetilde{s})&=\begin{bmatrix}\widetilde{s}\boldsymbol{I }_{2}-\boldsymbol{P}_{1}|\\ \widetilde{s}+\beta_{1}n\varpi(t)+\beta_{2}n_{1}&-n\varpi(t)\\ -\beta_{3}&\widetilde{s}\end{bmatrix}\\ &=\widetilde{s}^{\sim 2}+(\beta_{1}n\varpi(t)+\beta_{2}n)\widetilde{s}+ \beta_{3}n\varpi(t)\end{array}