Nowadays, vertical take-off and landing (VTOL) UAVs, which have the properties of both power efficiency and maneuverability, are being developed to meet the higher requirements of more professional fields. In this thesis, we contribute theoretical analysis and practical implementation of a unified control framework for controlling a tail-sitter VTOL UAV. The most salient feature of this framework is its capability of uniformly treating hovering and forward flight, and enabling continuous transition between these two modes.

We first present the system modeling and then introduce the unified control framework based on the sequential convex programming (SCP) algorithm, called the SCP solver. It solves for the proper attitude and thrust that produces the required acceleration set by the position controller in an online fashion. Then the planned attitude and thrust are achieved by an inner attitude controller. It could also be used off-line to analyze the UAV's equilibrium state (trimmed condition), especially when wind gust is present. Next, we develop a realistic simulator, and verify this framework with satisfactory results. However, this method cannot be implemented on the real platform directly because the computation time of the SCP solver is too long. To solve this problem, we propose a novel method, that is, we apply recurrent neural networks (RNNs) with long term short term memory (LTSM) to learn the behavior of the SCP solver, and generate a neural network called SCP Net to replace the SCP solver for real implementation. Moreover, a practical and systematic controller design method based on model identification is applied to improve the stability and robustness of this UAV system before real flights. Finally, we conduct comprehensive indoor and outdoor experiments to successfully verify the effectiveness of this unified control framework.