Abstract
This paper develops tracking control of quadrotor unmanned air vehicle in the presence of parametric uncertainties and mismatched exogenous disturbances. First, a traditional sliding mode control (SMC) law is synthesized for a nominal model without parametric uncertainties and disturbances to achieve nominal control performance. Then to compensate the system uncertainties existing in the actual system, gain-scheduling based SMC law is synthesized. However, the gained scheduled SMC does not provide better control performance in the presence of unknown exogenous disturbances existing in actual system. To end this, a novel nonlinear disturbance observer is integrated with gain scheduled SMC to counteract the exogenous disturbances and attain the performance of reference nominal model. The proposed nonlinear disturbance observer SMC method exhibits the following two salient characteristics: first, the design gains should be greater than the bound of disturbance estimation error rather than that of disturbances, second; in the absence of uncertainties the nominal control performance of sliding mode control strategy is retained. The stability analysis of the proposed control strategy is validated using Lyapunov theorem. Finally, numerical simulation results are exhibited to illustrate the efficacy of the proposed control strategy.
Similar content being viewed by others
Avoid common mistakes on your manuscript.
1 Introduction
In recent years, unmanned air vehicles (UAVs) have attracted considerable attention and unprecedented surge due to their potential in enormous applications including civilian and military operations [1]. Due to the latest innovations and upgradation in quadrotors, the micro-aerial vehicles have drastically increased the role of UAVs in applications such as law enforcement [2], battle damage assessment [3], agriculture services [4], photographing and live streaming [5] and surveillance over nuclear sites [6]. In comparison to other fixed-wing UAVs, a quadrotor is classified into the category of rotary-wings UAV and has distinguished features of vertical take-off and landing, high maneuverability and working in degraded environments that contribute some promising exceptions of using quadrotor instead of other UAVs [7].
Limited literature focus on the nature of the lumped disturbances torques caused by uncertainties and exogenous disturbances in quadrotor UAVs. To make sure stable and steady flights in the presence of exogenous disturbances, various control algorithms have been proposed in recent years. In Bouabdallah and Seigwart [8], a dynamic model for quadrotor was developed. After obtaining the model, research work was carried out to investigate control schemes for attitude and altitude tracking of the quadrotor. Control approaches based on linear techniques including proportional integral derivative and linear quadratic regulator were used to meet the challenges in quadrotor control algorithms [9]. Indubitably, their work added significant contribution in achieving desired control performances but their remained complications like deviation from initial conditions and tuning parameters of the controllers [10,11,12]. Nonlinear control schemes such as, LMI-based control approach [13], adaptive sliding mode control [14], back-stepping control [15], and integral sliding mode control [16, 17] are recently proposed to suppress the effect of mismatched disturbances in robust manner, but the nominal control performance is degraded at the cost of robustness.
To achieve better control performance, second order sliding mode control (SMC) was proposed in [18] to attain stable flight hovering for a quadrotor UAV. An adaptive control mechanism based on SMC was introduced to counteract the matched and mismatched perturbation in [19]. A robust finite time adaptive SMC was proposed in [20] for stabilization of quadrotor UAV. A global asymptotic convergent observer for attitude tracking of quadrotor UAV was introduced in [21]. Sliding mode control of quadrotor with disturbance observer was proposed in [22]. Moreover, a backstepping integral sliding mode control was proposed with disturbance rejection capability [23]. Therefore, it is imperative to achieve finite time convergence and further improve the robustness quality in terms of disturbances rejection and capability of compensating model parametric uncertainties to ensure safe within single control law without trading-off the nominal control performance.
Among the aforementioned control schemes, SMC has been widely employed in aviation industry due to the excellent features of conceptual simplicity and anti-disturbance capability. It is observed that traditional SMC remains robust to counteract matched disturbances only which means the disturbances coming through the same channel as that of the control input [24, 25]. However, the disturbance that can affect the flight control applications are usually the mismatched ones. The problem also becomes noticeable in the aircrafts control systems, where the lumped disturbances torques generated by modeling discrepancies, external winds, and uncertain varying inertial parameters directly influence the system states rather than through the control input channels [26]. In such systems, the sliding motion of the traditional SMC scheme is critically affected by the mismatched disturbances, eventually the control performance of SMC degrades as its robustness property is severely averted [27]. Therefore, to the author’s knowledge, in flight control systems the issues of mismatched disturbances and uncertain model parameters need to be addressed by modifying the control law of sliding mode scheme.
Motivated by the above-mentioned discussion, this paper proposes a novel composite control law NDOSMC, that combines SMC and nonlinear disturbance observer to stabilize the quadrotor in finite time in the presence of parametric variations and mismatched exogenous disturbances. The non-vanishing exogenous disturbances are considered in this study. Strong robustness and fast retrieval of nominal control performance are the prominent features of the proposed control strategy.
The layout of this paper is organized as follows: Sect. 2 gives a brief overview of nonlinear mathematical model of a quadrotor system. In Sect. 3 NDOSMC strategy is designed for tracking control of quadrotor. Numerical simulation results and discussion are presented in Sect. 4. Finally, conclusion is drawn in Sect. 5.
2 Mathematical Model
Quadrotor UAV is composed of four identical, equally spaced rotors [28], as shown in Fig. 1. The changes in the speed of the rotors generates aerodynamic moments of quadrotor. In Fig. 1, T1, T2, T3, and T4 represent corresponding thrusts generated by each rotor, θ, ϕ and \(\psi\) indicate roll, pitch and yaw angles, respectively. Quadrotor dynamics are portrayed both in frame and in inertial frame as shown in Fig. 2.
The quadrotor model can be described into translational and rotational coordinates that denotes its linear and angular positions respectively [29]
where \(\xi = (x,y,z),\eta = (\phi ,\theta ,\psi )\) gives linear and angular orientation of quadrotor in inertial frame respectively. The rotation matrix transforms the coordinates from body frame to the inertial frame is given by [28]
where \(c(.)\) and \(s(.)\) denote \(\cos (.)\) and \(\sin (.)\) respectively. The quadrotor model can be presented in state space form as
where \(X\) and \(U\) represent state vectors, and control inputs respectively. The state vector and control input vector are given as follows
In this work we consider the attitude and altitude dynamics to simplify the control architecture. Let the attitude and altitude subsystem of the quadrotor model be represented as (6)
where the model parameters are rewritten as
In (6), \(g\) is the gravitational acceleration, m is the mass of the vehicle, \(\left[ {I_{xx} ,I_{yy} ,I_{zz} } \right]\) represent the moment of inertia, \(J_{r}\) represents rotor inertia, and \(w_{r}\) is the angular rotation. The dynamic equations of the quadrotor manifest that the rotational dynamics are independent of the rotational dynamics while the translational dynamics depend upon the rotational dynamics (Euler angles).
Generally, the nominal system of quadrotor can be presented as
The subscript “n” with each state and system parameters indicates its nominal form. The actual model of the quadrotor, with exogenous disturbances is defined as
where \(i = 1,3,5,7\) and \(\xi_{in} ,\xi_{i} = 0\) for \(i = 5,7.\)
The terms \(d_{i} ,\Delta_{i}\) represent the mismatched and matched uncertainties respectively. The nomenclature used in this paper and nominal values of the parameters are enlisted in Table 1.
Assumption 1
The mismatched exogenous disturbances \(d_{i}\) and matched disturbances \(\Delta_{i}\) in system (8), are bounded, non-vanishing and defined by \(\left[ {\mathop d\limits^{ * }_{i} ,\mathop {\Delta_{i} }\limits^{ * } } \right] = \left[ {\sup \left| {d_{i} } \right|,\sup \left| {\Delta_{i} } \right|} \right].\)
Assumption 2
It is assumed that following inequalities hold valid \(\frac{1}{{b_{i} }} - \frac{1}{{b_{in} }} \ge \frac{1}{{b_{n} }},\frac{{a_{i} }}{{b_{i} }} - \frac{{a_{in} }}{{b_{in} }} \ge \frac{{a_{in} }}{{b_{in} }}.\) where \(a_{in} ,b_{in}\) are known positive constants denoting nominal values of the model parameters, and \(a_{i} ,b_{i}\) are unknown bounded time-varying uncertain parameters.
Remark 1
From (6), it is deduced that rotational dynamics of the quadrotor are not coupled, thus independent control inputs can be synthesized to stabilize each rotational moment.
3 Sliding Mode Control
SMC is a non-linear control methodology developed from the idea of defining a switching function and a control law that drives the system states towards the sliding manifold, thereby reducing the tracking error to zero. For robust controller designs, the system states once reach sliding surface stay within the neighborhood of the sliding manifold despite the existence of uncertainties in the system [30].
3.1 Controller Design for Nominal System
Let \(x_{dn} \in R^{4}\) defined as \(x_{dn} = [\phi_{d} ,\theta_{d} ,\psi_{d} ,z_{d} ]^{T}\) be the desired attitude and altitude states of the vehicle’s nominal model. The tracking error signals can be denoted as
Consider the sliding surface for nominal system as
where \(c_{i} > 0,\quad {\text{for}}\quad i = 1,2,3,4\) are arbitrary control variables. Equation (10) can be expressed by substituting (9) as
The control inputs \(u_{in}\) must be synthesized such that they drive (11) to zero in finite time and eventually the tracking errors converge to zero in the presence of bounded disturbances. Taking time derivative of (11), and invoking (7) yields
Now driving \(\dot{s}_{i}\) to zero, the attitude and altitude dynamics can be stabilized on the defined sliding manifolds by synthesizing the control laws as follows
where \(k_{i} ,\eta_{i} > 0{\text{ for(}}i = 1,2,3,4)\) represent the controller gains. Back-substituting (13) in (12), yields
3.1.1 Stability Analysis
To validate the stability of system dynamics of (14) around \(s_{i} = 0\), Lyapunov candidate functions can be defined as
Taking time derivative of (15) along (10), (12) and (13) yields
By selecting the control gains \(k_{i} ,\eta_{i} > 0,\) that makes \(\dot{v}_{i} < 0\) to guarantee the stability. Taking condition \(s_{i} = 0,\) the surface solution can be evaluated as
Remark 2
The error trajectories of the nominal attitude and altitude states approach the sliding manifold in finite time and the tracking errors remains zero afterwards. Our main objective is to control the actual states of UAV. In the next subsection, a controller is designed that makes the actual UAV behave like nominal model of UAV.
3.2 Controller Design for Actual System
As the actual UAV is subjected to external disturbances and parametric uncertainties. The conventional SMC does not work for such case causing a severe steady state error depending on the maximum bound of external disturbances. To deal the situation a novel NDOSMC is designed to make the response of actual model same as nominal model of UAV. The self-tuning introduced in the switching gain of control law adjust its value to compensate the parametric uncertainties. The disturbance observer estimates the influence of the disturbance and updates the sliding manifold and control law. Choose the sliding surface for actual system as
where \(z_{i} = x_{i} - x_{in}\) is the tracking error between actual and nominal states of UAV. By substituting (7) and (8), (18) can be expressed as
In (19), while substituting (8) the disturbances term \(d_{i}\) is replaced by \({\hat{d}}_{i}\). The estimation of disturbances is provided in the Theorem 1. The time derivative of surface can be calculated by using (7) and (8) as
The control law can be formulated as
Dividing surface dynamics by \(b_{i}\) and substituting (21) in (20) one can obtain
where \(\Gamma = c_{i} \left( {x_{i + 1} - x_{(i + 1)n} } \right) + \xi_{i} - a_{in} f_{in} - \xi_{in} - b_{in} u_{in} ,\quad {\tilde{d}} = \frac{{c_{i} }}{{b_{i} }}d_{i} - \frac{{c_{i} }}{{b_{in} }}{\hat{d}}_{i} .\)
Remark 3
As the UAV is subjected to unknown exogenous disturbances. If the observed signal of disturbance profile is not available, then the surface (19) can be reduced by ignoring the \({\hat{d}}_{i}\) term. Recalling Assumption 1, the solution of the reduced surface can be written as
which shows that UAV trajectory tracking error cannot be reduced to zero, causing a fixed steady state error of \(\frac{{d_{i}^{ * } }}{{c_{i} }}\) as \(t \to \infty .\) To overcome the issue the NDO is designed in the following subsection.
3.2.1 Design of NDO
A nonlinear disturbance observer that estimates the exogenous disturbances in system (8) and update the surface manifold (19) and control input (21) is expressed as follows
where \({\hat{d}}_{i} ,p_{i}\) and \(h_{i}\) for \(i = 1,2,3,4\) represent the estimation of disturbances, internal state observer and the observer gains to be designed respectively. The following assumption can be made.
Assumption 3
The disturbance estimation error given as \({\tilde{d}}_{i} = d_{i} - {\hat{d}}_{i}\) is bounded and defined by \(\mathop {{\tilde{d}}_{i} }\limits^{ * } = \sup \left| {{\tilde{d}}_{i} } \right|.\)
Assumption 4
The exogenous disturbances considered are slow time varying and their derivatives are assumed to be zero, \({\dot{d}}_{i} \approx 0.\)
Theorem 1
Suppose the Assumption4is satisfied for the system (8). The estimation of mismatched disturbance\({\hat{d}}_{i}\)precisely track the real disturbance\(d_{i} ,\)if the observer gain is selected as\(h_{i} > 0,\)which validates the exponential stability of the system as\(\dot{{\tilde{d}}}_{i} (t) + h_{i} {\tilde{d}}_{i} (t) = 0.\)
Proof of Theorem 1
Taking time derivative of estimation error, invoking (25) and (8) yields
Using \(d_{i} = {\tilde{d}}_{i} + {\hat{d}}_{i} ,\) (26) becomes
The internal state of the disturbance observer is defined as
Incorporating (28) in (27) yields
If \(h_{i} > 0,\) the solution of (29) becomes exponentially decaying.
3.2.2 Stability Analysis of the Proposed NDOSMC
To facilitate the stability analysis of NDOSMC, the following lemma is introduced.
Lemma 1
[20] Assume that a continuous positive-definite function \(V(t) = f(s) > 0\)with\(s(0) = s_{0}\) satisfy the subsequent differential inequality \(\dot{V}(t) + \beta_{1} V^{\alpha } (t) + \beta_{2} V(t) \le 0,\) where β1, β2and α are the positive constants. Based on which the functionV(t) converges to zero in finite time given as:
Theorem 2
Consider system (8). If the surface manifold and control law are chosen according to (19) and (21), then sliding mode enforcement along (19) can be validated. Resultantly, the system states will converge to the desired reference trajectories and tracking errors will converge to zero in finite time.
Proof of Theorem 2
Consider the Lyapunov candidate functions of the form as
Taking time derivative of (31), invoking (18), (21) following Assumptions 1, 2 and 3 yields
The enforcement of sliding mode is guaranteed, if the following condition holds true
Thus \(\dot{v}_{i} \le - \varepsilon \left| {\delta_{i} } \right| - \eta \delta_{i}^{2} .\)
Let \(\lambda_{1} = \sqrt 2 \varepsilon ,\lambda_{2} = 2\eta .\) then (33) can be rewritten as
Then according to Lemma 1, the differential inequality (34) yields the finite-settling time as
Remark 4
The designed NDO expressed in (24) and (25) makes the surface (19) and control input (21) practically realizable for the actual UAV. Thus, introducing improvement in the results stated in Remark 3 gives finite time convergence of the state variables. Recalling Assumption 1 the mathematical solution of (19) can be written as
The expression (36) shows that UAV trajectory tracking errors can be driven to origin. As the NDO has updated the control law by estimating the influence of disturbance. The exogenous disturbance estimation error \({\tilde{d}}_{i}\), which is likely to converge to zero and is also proved from (29).
4 Simulation Results and Discussion
In this section, numerical simulations are presented to validate the efficiency of proposed control schemes. The initial conditions \(\left( {\phi \left( {t_{0} } \right),\theta \left( {t_{0} } \right),\psi \left( {t_{0} } \right),z\left( {t_{0} } \right)} \right)\) are set as \(\left( {0,0,0,0} \right).\) The desired trajectory of the attitude and altitude \(\left( {\phi_{d} ,\theta_{d} ,\psi_{d} ,z_{d} } \right)\) of the quadrotor system are chosen as \((0.1cos(t), \, sin(0.15t),\)\(0.2sin(t), \, 2).\) Moreover, to obtain accurate disturbance estimation, initially the exogenous disturbance estimator is set to zero. The tuning gains of the designed control strategy are chosen as \(c_{1} = 20,c_{2} = c_{3} = c_{4} = 14,\)\(\eta_{1} = 2,\eta_{2} = 1,\eta_{3} = 1.8,\eta_{4} = 2\) and \(h_{i} = 30 \, (for_{{}} i = 1,2,3,4).\)
The flight control architecture based on proposed method is illustrated in Fig. 3 which is composed of composite control scheme.
The Non-vanishing exogenous disturbances assumed in the state model (8) at \(t = 6{\text{s}} ,\) is given for \(i = 1,2,3,4\) as
Figures 4, 5, 6 and 7 validate that reference signals tracking remain unaffected during the first 6 s which validate Remark 2 that the nominal performance of SMC is retained in the absence of exogenous disturbances. Then at t = 6 s, sudden injection of mismatched disturbance occurs, and eventually the observer starts estimation of the influence caused by disturbances and update the control law to retrieve the nominal system performance. The recovery time of NDOSMC to mitigate the tracking error is phenomenally lower as within \(t = 0.3{\text{s}}\) the proposed controller resumes accurate tracking of nominal states. Thus, the proposed control law remarkably suppresses the influence of exogenous disturbances. Figures 8, 9, 10 and 11 validate the estimation accuracy of the observer and the phenomenal reduction of disturbance estimation errors.
Additionally, in practice, the moment of inertia is time-variant. The time-varying parametric uncertainties incorporated in quadrotor system (8) are modeled as
where \(\alpha_{i} = (1,5,3,7)\) for \(i = 1,2,3,4\) represents the coefficients of time-varying uncertainty in moment of inertia. The states dependent gain-scheduling based SMC law compensate the uncertainty in the model parameters and make sure fast convergence of the states towards the desired trajectories. Simulation results in Figs. 4, 5, 6 and 7 show the efficacy of the proposed controller by validating the Assumption 1. The parametric uncertainties are efficiently compensated by the proposed control strategy thereby maintaining the stability of the vehicle.
The performance analysis given in Table 2 validate the effectiveness of the proposed control strategy. Thus, the proposed NDOSMC method guarantees the stability of the vehicle under the influence of exogenous disturbances and time varying parametric uncertainties.
5 Conclusion
Exogenous disturbance attenuation and robustness against parametric variations are the two crucial properties required for control designs in flight control applications. In this paper, a NDOSMC has been presented to achieve finite time tracking control performance for quadrotor UAV in the presence of parametric uncertainties and exogenous disturbances. The parametric uncertainties are compensated by incorporating gain scheduling in SMC law while the influence of exogenous disturbances is mitigated by integrating a nonlinear DOB with SMC scheme. The proposed NDOSMC scheme remarkably attenuate the influence of exogenous disturbances and retain nominal tracking performance.
References
Yuhu Du, Fang J, Miao C (2013) Frequency-domain system identification of an unmanned helicopter based on an adaptive genetic algorithm. IEEE Trans Ind Electron 61(2):870–881
Murphy DW, Cycon J (1999) Applications for mini VTOL UAV for law enforcement. Proc SPIE Sens C3I Inf Train Technol Law Enforce 3577:35–43
Slater G (2003) Cooperation between UAVs in a search and destroy mission. In: AIAA guidance, navigation, and control conf. and exhibit, Austin, Texas, USA
Herwitz SR, Johnson LF, Dunagan SE, Higgins RG, Sullivan DV, Zheng J, Lobitz BM, Leung JG, Gallmeyer BA, Aoyagi M, Slye RE, Brass JA (2004) Imaging from an unmanned aerial vehicle: agricultural surveillance and decision support. Comput Electron Agric 44(1):49–61
Kim JH, Sukkarieh S (2003) Airborne simultaneous localisation and map building. Proc IEEE Int Conf Robot Automat Taipei Taiwan China 1:406–411
Sarris Z (2001) Survey of UAV applications in civil markets. In: Proc the 9th mediterranean conf. control and automation, Dubrovnik, Croatia
Zhong Y, Zhang Y, Zhang W, Zuo J, Zhan H (2018) Robust actuator fault detection and diagnosis for a quadrotor UAV with external disturbances. IEEE Access 6:48169–48180
Bouabdallah S, Siegwart R (2007) Full control of a quadrotor. In: IEEE/RSJ international conference on intelligent robots and systems, IEEE, pp 153–158
Erginer B, Altug E (2007) Modeling and PD control of a quadrotor VTOL vehicle. In: 2007 IEEE intelligent vehicles symposium. IEEE, pp 894–899
Kim GB, Nguyen TK, Budiyono A, Park JK, Yoon KJ, Shin J (2013) Design and development of a class of rotorcraft-based UAV. Int J Adv Robot Syst 10(2):131
Bolandi H, Rezaei M, Mohsenipour R, Nemati H, Smailzadeh SM (2013) Attitude control of a quadrotor with optimized PID controller. Intell Control Automat 4(03):335
Patel AR, Patel MA, Vyas DR (2012) Modeling and analysis of quadrotor using sliding mode control. In: Proceedings of the 2012 44th southeastern symposium on system theory (SSST). IEEE, pp 111–114
Choi HH (2007) LMI-based sliding surface design for integral sliding mode control of mismatched uncertain systems. IEEE Trans Automat Control 52(4):736–742
Huang YJ, Kuo T-C, Chang S-H (2008) Adaptive sliding mode control for nonlinear systems with uncertain parameters. IEEE Trans Syst Man Cybern B Cybern 38(2):534–539
Madani T, Benallegue A (2006) Backstepping sliding mode control applied to a miniature quadrotor flying robot. In: IECON 2006—32nd annual conference on IEEE industrial electronics, IEEE, pp 700–705
Utkin V, Shi J (1996) Integral sliding mode in systems operating under uncertainty conditions. Proc 35th IEEE Conf Decis Control IEEE 4:4591–4596
Cao W-J, Jian-Xin Xu (2004) Nonlinear integral-type sliding surface for both matched and unmatched uncertain systems. IEEE Trans Automat Control 49(8):1355–1360
Zheng E-H, Xiong J-J, Luo J-L (2014) Second order sliding mode control for a quadrotor UAV. ISA Trans 53(4):1350–1356
Wen C-C, Cheng C-C (2008) Design of sliding surface for mismatched uncertain systems to achieve asymptotical stability. J Franklin Inst 345(8):926–941
Mofid O, Mobayen S (2018) Adaptive sliding mode control for finite-time stability of quad-rotor UAVs with parametric uncertainties. ISA Trans 72:1–14
Dou J, Tang Q, Zhou L, Wen B (2017) An adaptive sliding mode controller based on global asymptotic convergent observer for attitude tracking of quadrotor unmanned aerial vehicles. Adv Mech Eng 9:1687814017723295
Ahmed N, Chen M (2018) Sliding mode control for quadrotor with disturbance observer. Adv Mech Eng 7:1687814018782330
Allahverdy D, Fakharian A, Menhaj MB (2019) Back-stepping integral sliding mode control with iterative learning control algorithm for quadrotor UAVs. J Electr Eng Technol 14(6):2539–2547
Barmish BR, Leitmann G (1982) On ultimate boundedness control of uncertain systems in the absence of matching condition. IEEE Trans Autom Control AC-27(1):153–158
Ali N, Alam W, Rehman AU, Pervaiz M (2017) State and disturbance observer based control for a class of linear uncertain systems. In: 2017 international conference on frontiers of information technology (FIT) IEEE, pp 139–143
Chen W-H (2003) Nonlinear disturbance observer-enhanced dynamic inversion control of missiles. J Guid Control Dyn 26(1):161–166
Xinghuo Yu, Kaynak O (2009) Sliding-mode control with soft computing: a survey. IEEE Trans Ind Electron 56(9):3275–3285
Luukkonen T (2011) Modelling and control of quadcopter. Independent research project in applied mathematics. Mat-2.4108, Aalto University School of Science, Espoo, 22 August 2011
Austin R (2010) Unmanned aircraft systems: UAVs design, development and deployment. Wiley, London
Ali N, Rehman AU, Alam W, Maqsood H (2019) Disturbance observer based robust sliding mode control of permanent magnet synchronous motor. J Electr Eng Technol 14(6):2531–2538
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Maqsood, H., Qu, Y. Nonlinear Disturbance Observer Based Sliding Mode Control of Quadrotor Helicopter. J. Electr. Eng. Technol. 15, 1453–1461 (2020). https://doi.org/10.1007/s42835-020-00421-w
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s42835-020-00421-w