# Adaptive Backstepping Control of Quadrotor UAVs with Output Constraints and Input Saturation
###### Abstract  
The control performance of quadrotor unmanned aerial vehicles (UAVs) in complex environments can be affected by external disturbances and other factors. In this paper, an adaptive neural network backstepping controller based on the barrier Lyapunov function (BLF) is designed for a quadrotor UAV with internal uncertainties, input-output constraints and external disturbances. Radial basis function neural networks are used to approximate the uncertainties in the dynamic model of the UAV, while the minimum parameter learning method is combined to accelerate the adjustment speed of neural network weights. A robust term is designed to balance the total system disturbance and improve the anti-interference performance. The BLF is used to handle the output constraint  
Dynamic surface control (DSC) solves the \"complexity explosion\" by introducing a first-order filter in each step of the virtual control design [21; 22]. In addition, the UAV in practical applications is affected by internal uncertainties and external disturbances. Several methods have been used to solve external disturbances, such as disturbance observer [23; 24; 25], expansion state observer [26] and adaptive control [27; 28]. Among these anti-disturbance methods, adaptive control can effectively approximate and compensate unknown bounded disturbances and it is widely used in nonlinear systems. In [27], an adaptive command filtered backstepping sliding-mode control scheme was proposed for finite-time tracking control of quadrotor UAV systems. An adaptive control strategy was applied to estimate the upper bounds of the model uncertainties and external disturbances. Radial basis function (RBF) neural networks, which have good ability to approximate unknown functions, are widely used in nonlinear robust control system design [29]. In [30], an adaptive DSC based on quaternion was proposed to solve the problems of complexity explosion, internal uncertainties and external disturbances. The above studies only considered the existence of external disturbances and internal uncertainties in the UAV system, but they did not take the effects caused by input-output constraints into consideration. The control input of the UAV may exceed the maximum generated by the actuators. Under the influence of external disturbances, such as high winds, the attitude of the UAV may sway too much or the fuselage can even flip. If the effects of attitude constraints and input saturation are ignored, the control performance of the UAV will be degraded. Attitude constraints and input saturation are also essential factors affecting UAV control performance. Paper [31] used low-pass filters for the gain processing of nonlinear systems with input saturation. In [32], for multi-input multi-output stochastic nonlinear systems with full-state constraints and input saturation, a continuous differentiable asymmetric saturation model was proposed using a Gaussian error function representation. However, using smoothing functions to approximate input saturation in the above studies will result in the problem that tracking errors being affected by the amplitude of the reference signal. In [33], to deal with the UAV input saturation, the constrained command filter was introduced, and the auxiliary dynamic was designed to eliminate the effect of input saturation. Paper [34] investigated adaptive tracking control for stochastic nonlinear systems by introducing an auxiliary system for saturation compensation. This is a novel method of handling input saturation that explicitly constrains the tracking error. In addition, to prevent the UAV from being affected by external disturbances that cause flip-flopping, attitude constraints should be considered along with input saturation. In [35], the barrier Lyapunov function (BLF) was used to handle the full-state constraints. From the study, it can be found that BLF is an effective tool to deal with state constraints [36]. However, references [35; 36] only considered output constraints and ignored the influence of input saturation.