Abstract
The paper contains part of the results of a research done at the Warsaw University of Technology (WUT) devoted to modeling and control system design for a quadrotor UAV. The quadrotor lift, propulsion and control loads are produced by four identical rotors, performance of which strongly depends on flight conditions. The quadrotor angular rates result in not identical flow through each of the rotors due to their not coaxial configuration which may cause disturbances of a flight path. The development of a complex dynamic model and a control law enhancement method for a quadrotor is presented in this paper. The novel approach to control system development led to increase in quadrotor handling precision, due to compensates disturbances of the flight path, which makes a quadrotor more capable to operate in a confined space.
Access provided by Autonomous University of Puebla. Download chapter PDF
Similar content being viewed by others
Keywords
1 Introduction
The quadrotor seems to be the most popular type of rotorcraft UAV configuration, being recently investigated by a vast amount of companies, research institutes and universities [1–3]. There are several reasons for this fact. There is a great interest in small, unmanned flying vehicles for both civil and military applications, and this type of vehicle provides unique capabilities of hover, vertical and horizontal flight in all directions; its controlling is simpler comparing to other rotorcraft configurations; the cross-couplings between the various degrees of freedom are not so severe as in single rotor helicopters. It is relatively easy to design control system using simple classical control algorithms. A quadrotor may also be an efficient, versatile testbed for control and navigation algorithms and operation of various types of payload [4–6].
Many papers were focused on development and analysis of quadrotor stability and control systems. Various methods such as H infinity [7], LQR [8, 9], sliding mode [10, 11], backstepping [10, 12], reference model [13–15] or PID [2, 9] were investigated at quadrotors for their robustness [16, 17], fault tolerance [18] and affordability [7] to stabilise and control of the vehicle. The control system design and validation usually was done using simple dynamic model of quadrotor where rotor thrust and torque were modeled as linear terms expressed as function of the square of rotor angular velocity [9, 13, 14, 18, 19]. This simplification allows to validate model only for hovering conditions and controllers, which were developed based on it, provide poor performance in a real application [2, 8, 9] especially for high forward velocity and for rapid maneuvers. The nonlinear complex rotor model is needed to develop and validate the quadrotor control system, which will guarantee the good stability and controllability performance for all flight regimes and fully exploit the advantages of this rotorcraft configuration. Two quadrotor simulation models were develop: a comprehensive nonlinear and simplified linear, needed for real time operation in simulator.
This research was part of the project aimed to investigate application of a quadrotor indoor and in urban environment. Operation in such conditions is hazardous due to proximity of obstacles and turbulences produced by the quadrotor rotors, so it requires robust flight control system which will provide precise handling. The enhanced classical PID control method is presented in this paper. The control law enhancement methods applied additional couplings including the rotor model techniques, to improve the control quality for high speed and rapid maneuvers.
The quadrotor model with flight control system was tested on UAV simulator. The simulator platform is a multiuse hardware and software testbed, developed by WUT research team. The simulator has a functionality of software reconfiguration and may be connected to real hardware, which makes it very useful platform for any new algorithm and mobile platform tests. The simulator is composed of advanced hardware components: visual system, generic stand (panel) of vehicle operator, instructor stand operated by computing hardware. The simulator has no motion system for the platform, which is not necessary for simulators of unmanned vehicles.
For quadrotor implementation, some software modifications were made, so the dynamic and control models may be uploaded fast and easily. Simulator accepts now Matlab/Simulink™ models, so they can be easily debugged and upgraded outside simulator.
2 Quadrotor Simulation Model
The quadrotor simulation model was developed under two main constraints: a requirement for a real-time operation in simulator for training of rotorcraft operators and modeling of complex aerodynamic interactions of the propellers and obstacles. These requirements led to modeling of the vehicle in two steps. First one was development of comprehensive models of propellers loads which were validated using data from full scale experimental test. Then, validated propeller loads were used to generate multivariable maps of loads which were applied in the 6 DOF quadrotor dynamic model.
The main assumptions for dynamic model development were:
-
quadrotor is axially symmetric,
-
quadrotor is controlled in “x” configuration,
-
rotation axes of rotors are parallel to the body vertical axis of symmetry,
-
all parts of the quadrotor are rigid,
-
mass of the vehicle is constant,
-
induced velocity is modeled with the Glauert formula for forward flight,
-
equations of motion describe the motion of the body center of mass.
The main coordinate systems used in the model development are shown in Fig. 1.
Using assumptions above, nonlinear equations of quadrotor motion in \(0_{b} x_{b} y_{b} z_{b}\) coordinate system were formulated in a general form [20, 21]:
where \({\mathbf{x}} = \left[ {\begin{array}{*{20}c} U & V & W & P & Q & R \\ \end{array} } \right]^{\text{T}}\)—state vector composed of linear velocities and angular rates, \({\mathbf{y}} = \left[ {\begin{array}{*{20}c} {x_{g} } & {y_{g} } & {z_{g} } &\Phi &\Theta &\Psi \\ \end{array} } \right]^{{\,{\text{T}}}}\)—vector describing position coordinates and angles of attitude, δ i —ith engine control signal, I p —inertia matrix, \({\mathbf{f}}_{I} \left( x \right)\)—inertia loads, \({\mathbf{f}}_{{{\mathbf{GK}}}} \left( {\mathbf{y}} \right)\)—gravity loads, \({\mathbf{f}}_{{{\mathbf{AK}}}} \left( {{\mathbf{x,y}}} \right)\)—fuselage aerodynamic loads, \({\mathbf{f}}_{{{\mathbf{AW}}}} \left( {{\mathbf{x,}}{\varvec{\updelta}}} \right)\)—rotors aerodynamic loads, T—transformation matrix in kinematic equations [20, 21].
The gravity loads are calculated in a standard way for the 6 DOF mobile rigid object. It was assumed that the fuselage generates only drag force and the drag force coefficients were calculated using simple geometrical model of the fuselage for given inflow velocity, angle of attack and bank angle. The main effort in quadrotor modeling was dedicated to obtaining verified loads generated by propellers. The total vector of propeller loads f AW is a sum of loads generated by each rotor, transferred to the body coordinate system.
In a general case, vector (3) consists of three components of a force and three components of a moment. The quadrotor propellers are sources of lift force, propulsion force and control forces and moments. This is why proper modeling of these loads is crucial for the quadrotor model fidelity. Several various models of propeller loads may be found in literature. The simplest models describe only thrust and torque, more complex ones contain also drag. The models differ also due to methods of calculating forces and moments. The simplest models [9] describe rotor thrust and torque as quadratic functions of rotor angular velocity. More complex models take into account variation of inflow and induced velocities in different flow states [6]. Quite often the constant coefficients of the loads functions, independent of the flight conditions, are calculated using the static thrust and torque measurements. Such an approach leads to simple and effective models, however, these models are valid only for hover. Comparison of rotor thrust and torque calculated using such model with the results of measurements performed in WUT wind tunnel is presented in Figs. 2 and 3 for various inflow velocities.
Axial inflow positive velocities W appear for instance when a quadrotor is climbing vertically. In results presented, rotor thrust is very sensitive to variation of inflow velocity, so keeping thrust constant for all inflow velocities results in a significant overestimation, even for axial flight. It can be also noticed that the rotor torque is not so much sensitive and axial inflow velocity variations do not change it very much.
Not only quadrotor linear velocities contribute to change of inflow velocities. Propellers are placed not in the quadrotor center of gravity (Fig. 4) so also body angular rates may contribute to inflow velocities:
where \({\mathbf{v}}_{{\mathbf{b}}} ,\,{\varvec{\upomega}}_{{\mathbf{b}}}\)—vectors of quadrotor velocities and rates in the body reference frame, \({\mathbf{r}}_{{{\mathbf{ti}}}}\)—position vector of a propeller in the body reference frame (Fig. 4).
Neglecting this effect for the quadrotor, which is a very agile vehicle, limits simulation model to hover and low speed flights. As another effect resulting from (4) in a maneuver flight, each rotor is subjected to different inflow and thus generates different loads.
These observations were taken into account in the WUT developed model. The quadrotor propellers loads consist of a full set of six components—three forces and three moments of forces, calculated using Blade Element Method. First, the velocities at the blade cross-section are expressed as functions of body linear velocities and angular rates, including also velocities resulting from rotors angular velocities and induced velocity. The induced velocity is modeled using Glauert formulae with corrections for forward flight [21]. Then the total flow velocities are used to calculate lift and drag forces acting in a blade cross-section, taking into account blade chord, twist, and lift and drag coefficients of the airfoil. In the next step the six components of the rotors loads are calculated by integrating forces and moments along the blade span. Sample results for 15 × 4″ propeller, for the case of inflow with velocities U = 5 m/s and W = 5 m/s are presented in Fig. 5.
The model of the propellers loads was validated against experimental data from WUT wind tunnel. In this case, the test stand allowed to measure thrust and torque only. The validation was done through correction of the aerodynamic coefficients of the blades airfoils. The selected 15 × 4″ propeller’s geometry has been scanned using 3D scanning. The blade was divided into four sections along the span and in each section blade airfoils were assumed to be constant. Using published data for these airfoils, aerodynamic coefficients for these four airfoils were obtained. Then, the lift and drag coefficient were adjusted to match measured thrust and torque. In Figs. 6, 7, 8 and 9 thrust and torque characteristics are shown before and after validation process. The most important case of validation was the test point close to rotor angular velocity 600 rad/s, which was the design hover point for the quadrotor in this research.
This approach to loads correction was also checked in other inflow cases and was proven to give adequate good results.
The adjusted airfoils coefficients were used to calculate all six components of the rotor aerodynamic loads. But implementing the developed models of aerodynamic loads into Blade Element Method did not allow for a real-time computations needed in simulator. The reason was, that integration along blades and iterations of the induced velocities done separately for each rotor, took a long time.
It was decided to develop the simulation model in two steps using so called loads maps. In the first step, the comprehensive model of rotor loads was used to calculate components of aerodynamic loads for an assumed range of inflow velocities (horizontal and perpendicular to the plane of rotation) as a function of rotor angular speed. All components of aerodynamic loads were stored in 3D arrays. These arrays were used in a real-time simulation model. Actual aerodynamic loads of each rotor were interpolated for a given state (rotor angular velocity, inflow velocity, angle of attack, and bank angle). Such a solution allows real time operation of the quadrotor model.
However, it turned out that in some situations the interpolations also took too much time for real time calculations. To improve the efficiency of the simulation it was decided to use only four components of propellers loads: thrust, drag, and torque and rolling moment, as values of the rest two components were at least one order of magnitude lower. These simplification assured a real-time operation of a quadrotor model with flight control system at all tested flight cases.
3 Quadrotor Flight Control System
The flight control system for unmanned quadrotor consists of ground Control Station and onboard Autopilot, Fig. 10. The Control Station calculates and sends demanded values of controls to on-board autopilot via wireless communication. The Autopilot generates control signals to quadrotor rotors depending on the demanded and measured values of flight parameters. The control signal is organized as a vector Ω, which components are the required values of rotors angular velocities.
The control system operates in semiautonomous mode. An operator of a quadrotor sets demanded values of quadrotor linear velocities and azimuth via Control Station. The signals are send to the autopilot, which controls the quadrotor attitude and lift to ensure demanded flight conditions. The longitudinal and lateral velocity are controlled by the pitch and roll angles. The control of flight level is obtained by the vertical speed variation. If the demanded value of vertical speed is equal to zero the altitude controller holds actual flight level.
The overall autopilot structure is shown in Fig. 11. It consists of three main blocks: Velocity Control, Attitude Control and Control Signal Formation. The control signal is a vector of demanded rotors angular rates:
The control signal Ω is calculated as a increment of rotors angular rates Ω D relative to hovering condition ΩH. The inherent feature of quadrotor is that lift and control loads are produced only by changing angular velocities of rotors. The rotor thrust, expressed as function of the rotor angular rate, is divided into lift and attitude parts. The lift part provides the altitude control whereas the attitude part guarantees maneuverability.
The demanded values of rotors angular velocities are calculated in CSF block as:
where \({\varvec{\Omega}}_{{\mathbf{O}}}\) is a collective control signal used for altitude control, \({\varvec{\Omega}}_{{\mathbf{C}}}\) is a cycling control signal comes from attitude controllers, and a weighting coefficient \(w_{\Omega }\) expresses the portion of rotor thrust that is allocated for lift control.
The Attitude Control block contain three independent controllers for pitch, roll and yaw angles. The yaw angle controller is based on PID control law. The pitch and roll controllers have identical PD control laws but the output signals are distributed to the rotors in a different way. The output signals vector of AC block, named cycling control signal, is a sum of output signals of all controllers distributed according to the selected quadrotor configuration:
where \(u_{\Phi } ,\,u_{\Theta } ,\,u_{\Psi }\) are output signals from roll, pitch and yaw controllers.
The Velocity Control block contains controllers for horizontal (longitudinal and lateral) velocities and flight level. The longitudinal and lateral controllers are based on PID control laws with adaptive integral coefficients, and provide demanded values for pitch and roll control signals, which are sent to the Attitude Control block as an \({\varvec{\Gamma}}_{{\mathbf{D}}}\) vector. The flight level controller contains altitude and vertical speed control laws. The classical P altitude control law produces demanded value for PID vertical speed control law. The demanded value of vertical speed can also comes from an operator, when it is not zero. The vertical speed controller provides the collective control vector \({\varvec{\Omega}}_{{\mathbf{O}}}\):
The tests of quadrotor flight control system were performed using UAV simulator. The tests were focused on capability of indoor flight especially in confined areas such as rooms, corridors and stairways. The tests results revealed significant disturbances of altitude and azimuth during horizontal acceleration and deceleration. The detailed analysis indicated that the disturbances resulted from non uniform and asymmetric variations of thrust of rotors. In the next tests the flight level and azimuth controllers were improved. An additional attitude feedback loop was applied to compensate fluctuations in altitude, which were mainly caused by the rotors inclination angle, Fig. 12. The rotors angular velocity increment Δω was then calculated using actual rotor attitude gained by factor \(k_{\gamma }\) to fit with actual controller settings. The constant altitude in a forward flight is possible if a rotor thrust T F at specific inclination angle γ (Fig. 13) fulfills the condition:
where T H is the rotor thrust at hovering conditions. The inclination angle can be estimated as:
If a rotor thrust is expressed as a square of function of rotor angular rate:
where C T is thrust constant, and the relationship between rotor angular rates at hover and forward flight conditions are:
then the Eq. (9) can be rewritten as:
The increment of rotor angular rates ΔΩ for forward flight calculated as:
The azimuth controller was enhanced by additional attitude feedback loop (Fig. 14). The product of pitch and roll angles with washout filter WoF are used to compensate an azimuth disturbances caused by attitude change. The \(k_{wf}\) coefficient is used to gain the signal of enhancement part.
The simulation tests of quadrotor flight control system were performed to investigate enhanced controller performance using the quadrotor dynamics model from Chapter “The Method of Guaranteeing the Separation Between the Recognised Object and Background”. The maneuver was to accelerate and to decelerate quadrotor at constant altitude and azimuth. The autopilot was set to hold constant values of flight level and azimuth, while both pitch and roll angles were increased to 45°, and after 10 s decrease to 0 (Figs. 15 and 16). The quadrotor have accelerated to 19 m/s of horizontal velocity at inclination angle of 60° and then without using thrust decelerate to the 0 m/s (Figs. 17 and 18). The quadrotor flight was smoother while the enhancement controllers were applied. The variation of altitude and azimuth were significantly reduced (Figs. 19 and 20). Integral Square Errors (ISE) are much lower for enhancement controllers (Table 1). The overshoots and disturbances in pitch and roll angles, and velocities were also compensated. The test results indicate that the proposed enhancements of quadrotor control system considerably improved its flying qualities. Altitude and azimuth disturbances were larger in deceleration than in acceleration flight phase. It resulted from different flight velocity in both cases, which significantly influenced quadrotor performances. That is why an additional flight velocity coupling should be considered to avoid such inconveniences.
4 Conclusions
A quadrotor model with a flight control system was developed and tested in a UAV simulator. The quadrotor simulation model contains 6 DOF and a comprehensive model of rotor aerodynamic loads, based on experimental data gathered during wind tunnel tests. The deficiencies of a wind tunnel measuring equipment (only thrust and torque might be measured) were overcame by a special correction procedure. A real time simulation capability was obtained by adequate assumptions based on airloads orders of magnitude.
The quadrotor autopilot control system was developed to cooperate with a nonlinear dynamic model and nonlinear rotor aerodynamic loads. The method of PID control laws enhancement was applied based on a simple model of rotor thrust and additional state variables couplings, for compensation of variation of a quadrotor dynamics. The improved control system provides better quadrotor performance for high speed flights and rapid maneuvers.
The nonlinear quadrotor model with autopilot was implemented to the UAV simulator and allows to simulate and investigate the control system quality.
References
Bartoszek, J., Narkiewicz, J., Zasuwa, M.: Innovative, reconfigurable simulator of mobile robots to support anti-crisis operations. In: 16th International Conference on Methods and Models in Automation and Robotics (MMAR), Miedzyzdroje, pp. 122–126. August 22–25, 2011
Milhim, A., Zhang, Y., Rabbath, C-A.: Quad-rotor UAV: high-fidelity modeling and nonlinear PID control. In: AIAA Modeling and Simulation Technologies Conference, Toronto, Ontario, Canada, 2–5 Aug 2010
Gałuszka, A., Pacholczyk, M., Bereska, D., Skrzypczyk, K.: Planning as artificial intelligence problem—short introduction and overview. In: Advanced Technologies for Intelligent Systems for National Border Security, pp. 95–103 (2013)
Hoffmann, G., Huang H., Waslander S., Tomlin C.: Quadrotor helicopter flight dynamics and control: theory and experiment. In: AIAA guidance, navigation and control conference and exhibit, Hilton Head, South Carolina, 20–23 Aug 2007
Castillo, P., Dzul, A., Lozano, R.: Real-time stabilization and tracking of a four-rotor mini rotorcraft. IEEE Trans. Control Syst. Technol. 12(4), 510–516 (2004)
Waslander, S.L., Hoffmann, G.M., Jang, J.S., Tomlin, C.J.: Multi-agent quadrotor testbed control design: integral sliding mode vs. reinforcement learning. In: Proceedings of the IEEE/RSJ international conference on intelligent robotics and systems 2005, Edmonton, Alberta, August 2005, pp. 468–473
Chen, M., Huzmezan, M.: A combined MBPC/2 DOF H∞ controller for a quad rotor UAV. In: AIAA Guidance, Navigation, and Control Conference and Exhibit, Austin, Texas, 11–14 Aug 2003
Wu, J., Peng, H., Chen, Q.: RBF-ARX model-based modeling and control of quadrotor. In: IEEE international conference on control applications part of 2010 IEEE multi-conference on systems and control, Yokohama, Japan, 8–10 Sept 2010
Bouabdallah, S., Noth, A., Siegwart, R.: PID vs LQ control techniques applied to an indoor micro quadrotor. In: IEEE/RSJ international conference on intelligent robots and systems, Sendai, Japan, 28 Sept–2 Oct 2004
Besnard, L., Shtessel, Y., Landrum, B.: Control of a quadrotor vehicle using sliding mode disturbance observer. In: AIAA guidance, navigation and control conference and exhibit, Hilton Head, South Carolina, 20–23 Aug 2007
Galzi, D., Shtessel, Y.: Unmanned rotorcraft tight formation flight control using sliding mode control driven by sliding mode disturbance observers. In: AIAA guidance, navigation and control conference and exhibit, Honolulu, Hawaii, 18–21 Aug 2008
Pollini, L., Metrangolo, A.: Simulation and robust backstepping control of a quadrotor aircraft. In: AIAA Modeling and Simulation Technologies Conference and Exhibit, Honolulu, Hawaii, 18–21 Aug 2008
Whitehead, B., Bieniawski, S.: Model reference adaptive control of a quadrotor UAV. In: AIAA guidance, navigation, and control conference, Toronto, Ontario, Canada, 2–5 Aug 2010
Liao, F., Lum, K-Y., Wang, J.: Flight control of VTOL quadrotor aircraft via output feedback. In: AIAA Guidance, Navigation, and Control Conference, Toronto, Ontario, Canada, 2–5 Aug 2010
Kuś, Z., Fraś, S.: Helicopter Control Algorithms from the set orientation to the set geographical location, Advanced Technologies for Intelligent Systems of National Border Security, pp. 3–13, 2013
Michini B., How J.: L1 Adaptive Control for Indoor Autonomous Vehicles: Design Process and Flight Testing. AIAA Guidance, Navigation, and Control Conference, Chicago, Illinois, 10–13 Aug 2009
Kendoul, F., Lara, D., Fantoni-Coichot, I., Lozano, R.: Real-time nonlinear embedded control for an autonomous quadrotor helicopter. J. Guidance Control Dyn. 30(4), 78–84 (2007)
Zhang, X., Zhang, Y.: Fault tolerant control for quad-rotor UAV by employing Lyapunov-based adaptive control approach. In: AIAA guidance, navigation, and control conference, Toronto, Ontario, Canada, 2–5 Aug 2010
Jedrasiak, K., Daniec, K., Nawrat, A.: The low cost micro inertial measurement unit. In: 8th IEEE conference on industrial electronics and applications (ICIEA), pp. 403–408. ISBN: 978-1-4673-6320-4, 19–21 June 2013
Żugaj, M., Narkiewicz, J.: Autopilot for reconfigurable flight control system. ASCE J. Aerosp. Eng. 22(1), 78–84 (2009)
Bramwell, A.R.S., Done, G., Balmford, D.: Bramwell’s Helicopter Dynamics, 2nd edn, pp. 77–102. Butterworth-Heinemann/Linacre House, Jordan Hill/Oxford (2001)
Acknowledgment
The presented research was part of the project “Development of small unmanned rotorcraft”, under grant from Polish National Centre for Research and Development, No 0032/R/ID1/2011/01.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this chapter
Cite this chapter
Bibik, P., Narkiewicz, J., Zasuwa, M., Żugaj, M. (2016). Quadrotor Dynamics and Control for Precise Handling. In: Nawrat, A., Jędrasiak, K. (eds) Innovative Simulation Systems. Studies in Systems, Decision and Control, vol 33. Springer, Cham. https://doi.org/10.1007/978-3-319-21118-3_19
Download citation
DOI: https://doi.org/10.1007/978-3-319-21118-3_19
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-21117-6
Online ISBN: 978-3-319-21118-3
eBook Packages: EngineeringEngineering (R0)