A HEXACOPTER MODELS COMPARISON USING BACKSTEPPING-SLIDING MODE CONTROL. Jafet Ramiro Baldeón Osorio. 1Departamento de Automatización y Control Industrial. Escuela Politécnica Nacional. Ladrón de Guevara, E11-253, 170517, Apdo. 17-12-866, Quito, Ecuador.
[email protected]. 0984297295 Jonathan Lisandro Escorza Cóndor. 1Departamento de Automatización y Control Industrial. Escuela Politécnica Nacional. Ladrón de Guevara, E11-253, 170517, Apdo. 17-12-866, Quito, Ecuador
[email protected]. 0996574177. Geovanny Danilo Chávez García. 1Departamento de Automatización y Control Industrial. Escuela Politécnica Nacional. Ladrón de Guevara, E11-253, 170517, Apdo. 17-12-866, Quito, Ecuador.
[email protected]. 0979188086 Oscar Camacho 1,2, 1Departamento de Automatización y Control Industrial, Escuela Politécnica Nacional, Ladrón de Guevara, E11-253, 170517, Apdo. 17-12-866, Quito, Ecuador.
[email protected]. 2Facultad de Ingeniería. Universidad de Los Andes, Mérida 5101 Venezuela;
[email protected]
RESUMEN Este artículo presenta la síntesis de un controlador que permite el seguimiento y la regulación en los tres ejes de movimiento (posición y altura) para un hexacoptero. Basado en las características innatas de robustez que presenta la estrategia de control por modo deslizante, se presenta un enfoque backsteeping – y control por modo deslizante. Dos modelos para el hexacoptero son utilizados, ellos son: un modelo reducido y un modelo completo que incluye los motores. El controlador diseñado es probado en ambos modelos mediante simulaciones, se hace la comparación de los resultados, el desempeño y robustez son chequeados. Palabras Claves. - Control en Modo Deslizante, Control Robusto, Hexacóptero, Modelo reducido, Modelo completo ABSTRACT This paper presents the synthesis of a controller that allows tracking and regulation in all three axes of motion (position and height) for a hexacopter. Based on the innate robustness characteristics that presents the control strategy sliding mode, a backsteeping - sliding mode control approach is presented. Two models for the hexacopter are used, they are: a reduced model and a complete model including engines. The controller designed is tested on both models through simulations, the results are compared, performance and robustness are checked. Keywords. - Sliding Mode Control, Robust Control, Hexacopter, Reduced model, Full model I. Introduction Unmanned aerial vehicles (UAVs) have become a real center of interest. In the last few years, their utilization has significantly increased. Forthcoming generations of UAVs will be capable of carrying tasks such as cartography, photogrammetry, surveillance, monitoring, inspection or transportation. Consequently, new types of vehicles can be used, such as multi-rotor
helicopters, which are capable of lifting a significant payload, exploration, security, transportation and much more while maintaining their flight stability. The flying vehicle considered in this work is a hexacopter. It is definitely suited for long operations, dangerous and inaccessible environments, so as for carrying a significant payload such as all the sensors needed for the activities mentioned above. Moreover, a stable flight is required for precise data recording during the missions. As a result, a high performance flight control system is required to operate the UAV. Additionally, the hexacopter is an attractive platform to increase flight safety, since a certain level of stability can be maintained despite certain motor failure(s). The hexarotor is a highly nonlinear and multivariable system. These features claim for rigorous control theories to deal with under actuation as well as stabilization under disturbances and model uncertainties. In the case of a multi-rotor helicopter, the performance of the flight control system is strongly dependent on the control allocation strategy. It consists in computing each motor speed so as to produce the desired propel and moments in roll, pitch, and yaw. Several methods for, controlling and modelling, multi-rotor helicopters have been described. (Mostafa, Idalene, Sayouti and Medromi, 2015) presents a paper about modelling and control of vertical takeoff and landing (VTOL) type Unmanned Aerial Vehicle (UAV), specifically a micro hexarotor. The nonlinear dynamic hexarotor model is formulated using the Newton-Euler method. (Ducard and Hua, 2011) present practical methods to improve the flight performance of an unmanned multi-rotor helicopter by using a control allocation strategy. Lee and Kim (2001), describe a nonlinear adaptive flight control system using a backstepping and neural networks controller. (Ramirez-Rodriguez, Parra-Vega, Sanchez-Orta and Garcia-Salazar, (2013)) present a robust Backstepping Control based on Integral Sliding Modes for tracking of quadrotors. Falconí and Holzapfel (2014) show experimental results for position tracking of a hexacopter using a geometric Backstepping control law. Alaimo, Artale, Milazzo and Ricciardello (2014) present a PID Controller applied to hexacopter flight. Arellano, Luque, Castillo and Loukianov, (2013) describe the dynamic nonlinear model and the design of a controller for a hexarotor aerial robot. Espinoza, Dzul, Lozano and Parada, (2013) deal with the design of four controllers, based on Backstepping and Sliding Modes, which are applied to a fixed-wing unmanned aerial vehicle (UAV). This paper presents the synthesis of a controller that allows tracking and regulation in all three axes of motion (position and height) for a hexacopter. Based on the innate robustness characteristics that presents the control strategy sliding mode, a backsteeping - sliding mode control approach is presented. Two models for the hexacopter are used, they are: a reduced model and a complete model including engines. The controller designed is tested on both models through simulations, the results are compared, performance and robustness are verified. This paper is organized as follows. Section 2 control basic concepts. Section 3 presents the dynamical hexacopter model. In section 4 controllers design. Section 5 simulation results. Finally, section 6 contains the conclusions. II.
Control basic concepts
In this part a brief description of Sliding Mode Control (SMC) and backstepping is presented, firstly SMC is shown and then some backstepping concepts.
Sliding Mode Control A SMC is a type of Variable Structure Control (VSC). It uses a high speed switching control law to force the state trajectories to follow a specified, user defined surface in the states space and to maintain the state trajectories on this surface (Slotine and Li, 1991). The controller designed using the SMC method is particularly attractive because of its ability to deal with nonlinear systems and time-varying. The robustness to uncertainties becomes important in the design of any control system aspect. The first step in SMC is choosing the sliding surface that is usually formulated as a linear function of the system states, and it is chosen to represent a desired global behavior, for instance stability and tracking performance. The state is composed of the integral tracking error, the error and its different derivatives. This is known as integral-differential surface (Slotine and Li, 1991), and its expression is given by: (1)
n d s(t)= ( +λ) ∫ e(t)dt dt
The previous equation is an expression of the tracking-error, e(t), that is, the difference between the reference value or set point, R(t), and the output measurement, X(t), or e(t) = R(t) - X(t). is a tuning parameter, which helps to define s (t); This term is selected by the designer, and determines the performance of the system on the sliding surface, and n is the system order. Figure 1 shows as a sliding surface, where error is plotted and the first derivative of the error.
Figure 1. Sliding surface Source: Camacho and Smith (2000)
Once the sliding surface has been selected, attention must be turned to design of the control law that drives the controlled variable to its reference value and satisfies. The control law, U(t), is composed of two parts: the sliding mode control law and the reaching mode control law. Thus, it consists of two additive parts; a continuous part, ueq (t) called sliding mode control law, and a discontinuous part, uD (t), (Camacho and Smith, 2000), named the reaching mode control law. (2)
𝑈(t) = ueq (t) + uD (t)
A block diagram showing the Sliding Mode Control is shown in Figure 2.
Figure 2. Sliding Mode Control Block Diagram Source: Jafet Baldeón, Jonathan Escorza (2015)
Filippov’s construction of the equivalent dynamics is the method normally used to generate the equivalent sliding mode control law, which let us to obtain the equivalent control part. It consists of satisfying the following sliding condition. (3)
ṡ (t)=0
And substituting it into the system dynamic equations, the sliding mode control law is thereby obtained. Therefore, it is responsible for maintaining the controlled system dynamic on a sliding surface, which represents the desired closed loop behavior. To design the reaching mode control law, the signum function of s(t) affected by a constant gain can be used. (4)
uD (t)=KD sign(s(t))
Where 𝐾𝐷 is the tuning parameter responsible for the speed with which the sliding surface is reached. However, this produces the undesirable effect of chattering normally not tolerated by actuators. The term chattering describes the phenomenon of oscillating high frequency signals and finite amplitude appear in sliding mode implementations due to the rapid switching of the sliding mode controller exciting without modeling the dynamic characteristics of the control loop. A more appropriate solution is using a sigmoid-like function instead of the signum one, to smooth the discontinuity and to obtain a continuous approximation to the surface behavior and avoid chattering in the control signal when the surface is (pseudo) reached. The expression for the reaching mode control law can be expressed as: s(t) (5) uD (t)=kD |s(t)|+δ is a tuning parameter used to reduce the chattering problem. In conclusion, the control law has two elements which are ueq and uD . ueq is the equivalent control, with a slower motion, and this is the part of the controller that maintains the state of the system restricted to the sliding surface, uD is the discontinuous control and it represents a fast motion to bring the state onto the sliding surface and satisfy the following inequality:
(6)
sṡ 0 2 Vẋ = ex eẋ = ex (xḋ − ẋ )
From the above equation, the fictitious input control ẋ ∗ is: (42)
ẋ ∗ = xd + λ1 (xd − x)
(43)
X = ẋ ∗ − ẋ = xd +̇ λ1 (xd − x) − ẋ
Then
And its derivative is: (44)
Ẋ = xd̈ + λ1 eẋ −
U1 μ m x
Otherwise (45)
1 V = Vx + x 2̇ > 0 2
(46)
V̇ = VẊ + Ẋ (xd̈ + λ1 eẋ −
U1 μ ) m x
Using (41) and (46) (47)
V̇ = −λ1 e2x + ex X + X(xd̈ + λ1 eẋ )
Where: (48)
μx =
1 + Cos∅ sinθ Cosψ + Sen∅ Sen ψ m
(48) shows that the fictitious Control μ∗x can be considered responsible for the orientation movement in x position, then: m (49) [x ̈ + λ1 eẋ + ex + k D1 (xḋ + λ1 ex − ẋ )] μ∗x = U1 d It is possible to find the desired angle θd given by (50)
μ∗x − sin ∅ sin ψ θd = sin−1 ( ) cos ∅ cos ψ
The same procedure used for x position can be used for y position. This fictitious control can be considered responsible for the orientation and movement. (51)
∅d = sin−1(μ∗x sin ψ − μ∗y cos ψ) V.
Simulation results
Various simulations were performed, using both models. The tests examine the performance of controllers designed against external disturbances to the system. The performed tests are: following a predetermined path and a robustness chart by using the ISE performance index and ∆%. The hexacopter nominal parameters are specified in table1. Table 1. Hexacopter nominal parameters Source: Jafet Baldeón, Jonathan Escorza (2015)
Name m b l g Jr Ix , Iy Iz
Description Mass Drag factor Length of the center of mass to the rotor Gravity Rotational inertia x, y Inertia z Inertia
Value 1,83 2,98e-06 0,3 9,8 3,36e-05 0,0216 0,0432
Unity Kg Ns 2 m m/s2 kgm2 kgm2 kgm2
Reduced model results. In table 2 are presented the SMC and fictitious controllers for 𝑥 and 𝑦 tunings parameters for , all the parameters were obtained by trial and error. Table 2. Tuning parameters for SMC Source: Jafet Baldeón, Jonathan Escorza (2015)
Parameter 𝛌 𝐤𝐃 𝛅
∅ (Roll) 30 30 0,2
𝛉 (Pitch) 30 30 0,2
𝛙 (Yaw) 5 5 0,2
x 0,17 25 -
y 0,17 25 -
z 15 60 0,25
Figures 8-10 show the hexacopter outputs, when the reduced model is used; both positions x and 𝑦 are linked directly by the same force U1 , it produces small disturbances when set point changes in x position occurs. The disturbances that affects the system performance present a relationship between the three axes, they are quickly corrected by the altitude control.
Figure 8. x Position control Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
Figure 9. y Position control Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
Figure 10. Altitude control for reduced model and zoom Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
It is important to take special attention after including fictitious controllers for x and y, because it is not necessary retune ∅ and θ controllers. Figures 11-13 show the responses for the three angles. In all the figures are depicted that despite the sudden and frequent changes on the reference, because the fictitious calculations controllers, the hexacopter responds in a satisfactory manner. The hexacopter flight, features a quick response keeping on the reference in spite of the persistent and abrupt changes.
Figure 11. ∅ angle control and zoom Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
Figure 12. θ angle control and zoom Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
Figure 13. ψ angle control and zoom Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
Finally figure 14 shows a path tracking performed for the hexacopter. It is capable of following the path in spite of disturbances. The disturbances are quickly corrected by the altitude control.
Figure 14. 3D path for a 3 axis control Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
In figure 15 is presented as 3D chart, the graph pictures ISE performance index, mass changes and time. The results showed that the ISE for SMC increased but it keeps stable all the time.
Figure 15. Robustness chart for reduced model Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
Full model results. Now, the dynamic of engines is added. A same procedure as previously done for the reduced model, is used for testing the full model. Figures for the position controls for both 𝑥 and 𝑦 have the same shape as those obtained for the reduced model, Figure 16 shows the altitude control for the full model. The difference is that in this case the system presents an offset below the reference, it is a tuning problem.
Figure 16. Altitude control for full model and zoom Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
Figures 17-19 show the responses of controllers for movement hexacopter angles when the full model is used. As was previously mentioned, the shapes are similar when the reduced model is used.
Figure 17. ∅ angle control and zoom for full model Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
Figure 18. θ angle control and zoom for full model Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
Figure 19. ψ angle control and zoom for full model Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
Figure 20 shows the conducted test using this model. It can be seen that the answer for the tracking path is satisfactory as well as the reduced model. The added changes in the model, the dynamic engines, do not affect the system responses, it helps to verify that the sliding mode control is a good choice to be implemented in the real hexacopter.
Figure 20. 3D path for a 3 axis control for full model Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
Figure 21 shows that ISE performance index increases with respect when the reduced model was used. The graph shows that the controller does not become unstable for any of the tested values of mass, in spite of including the dynamic engines.
Figure 21. Robustness chart for full model Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
Table 3 shows a comparison between the reduced and full models by using the ISE performance index and ∆%. The values used to get the table, come from simulations. Table 3. Tuning parameters for SMC Source: Jafet Baldeón, Jonathan Escorza, Oscar Camacho, Danilo Chávez (2016)
ISE 𝐳 ISE ∅ ISE 𝛉 ISE 𝛙
Reduced Model 33,0681 6,0106 3,7921 0,0013
Full Model 29,286 4,1421 3,818 0,0013
∆% 12,13 36,8 0,68 0
As can be seen from the table, the responses obtained, when both models are compared, are very close, just in the ∅ case the difference increases, as it is indicated by ∆%. But, it can be solved retuning the controller parameters in order to get a better result. VI.
Conclusions
This work has shown the design of a robust control scheme based on sliding mode control and complemented with backstepping control. The performance and robustness of the approach were tested. The simulation results indicate that the controller behavior is stable regardless of nonlinearities and disturbances. Therefore, the results, in both cases, are acceptable. Two hexacopter models were tested and compared. One of them is called reduced model and the other one is named full model. The full model includes a new dynamic, that represents the engines. Simulations using both models, in a wide range of operating conditions, were realized. The results obtained shown a little difference between them. Therefore, it is important to point that the hexcopter reduced model could be conveniently employed, in most of cases, for synthetizing and testing different kind of controllers.
Acknowledgments Oscar Camacho thanks to PROMETEO Project of SENESCYT, Republic of Ecuador, for its support for the realization of this work. References Alaimo, A., Artale, V., Milazzo, C. L. R., Ricciardello, A., (2014). PID Controller Applied to Hexacopter Flight. J Intell Robot Syst. 73:261–270. DOI 10.1007/s10846-013-9947-y Arellano, C., Luque, L., Castillo, B., Loukianov, A. (2013). Backstepping control with Sliding Mode Estimation for a Hexacopter. 10th International Conference on Electrical Engineering, Computing Science and Automatic Control (CCE), 4-5. Baldeón, J., Escorza, J., (2015). Automatización de un hexacóptero para despegue, aterrizaje y vuelo en un camino cerrado. Escuela Politécnica Nacional. Quito. Camacho, O., Smith C. (2000). Sliding mode control: an approach to regulate nonlinear chemical processes. ISA Transactions. pp. 205-2018 Díaz, J. (2007). Modelo y Control LQR de una aeronave de cuatro rotores. Universidad de Sevilla, Proyecto Fin de Carrera. Ducard G. J. J.; Hua, M. D., (2011). Discussion and practical aspects on control allocation for a multi-rotor helicopter. Conference on Unmanned Aerial Vehicle in Geomatics, Zurich, Switzerland. pp. 1-6. ElKholy, M. (2014). Dynamic Modeling and Control of a Quadrotor Using Linear and Nonlinear Approaches. M.S. thesis, School of Sciences and Engineering, The American University in Cairo, Cairo. Espinoza, T. T. Espinoza, Dzul, A. Lozano, R., Parada P. (2013). Backstepping - sliding mode controllers applied to a fixed-wing UAV. 2013 International Conference on Unmanned Aircraft Systems (ICUAS). Atlanta, GA. pp. 95-104. Falconí, G. P., Holzapfel, F. (2014). Position Tracking of a Hexacopter using a Geometric Backstepping Control Law - Experimental Results. IEEE International Conference on Aerospace Electronics and Remote Sensing Technology (ICARES). pp. 20-25. Khalil, H. (2002). Nonlinear Systems. Prentice Hall, Upper Saddle River, NJ 07458, 3rd. edition. Kokotovic, P, Arcak, M. (2001). Constructive nonlinear control: a historical perspective. Automatica. pp. 637-662. Lee, T. Kim, Y. (2001). Nonlinear Adaptive Flight Control Using Backstepping and Neural Networks Controller. Journal of Guidance, Control, and Dynamics Vol. 24, No. 4. pp. 675682. Liu J., Xinhua, W., (2012). Advanced Sliding Mode Control for Mechanical Systems: Design, Analysis and MATLAB Simulation. Springer- USA.
Mostafa M., Idalene, A., Sayouti. A, Medromi, H. (2015). Autonomous HexaRotor Arial Dynamic Modeling and a Review of Control Algorithms. International Research Journal of Engineering and Technology. pp.1196-1204. Ramirez-Rodriguez, H., Parra-Vega, V., Sanchez-Orta, A., Garcia-Salazar, O. (2013). Robust Backstepping Control Based on Integral Sliding Modes for Tracking of Quadrotors. J Intell Robot Syst. DOI 10.1007/s10846-013-9909-4. Slotine, J.J., Li W. (1991). Applied Nonlinear Control, Prentice-Hall. New Jersey. Vargas, B. (2007). Obtención de modelos de procesos mediante métodos de identificación recursiva. Electrónica- UNMSM. N°19. pp. 27-35.