Submitted:
07 February 2024
Posted:
08 February 2024
You are already at the latest version
Abstract
Keywords:
1. Introduction
2. Aircraft Simulator
2.1. Tail-Sitter Prototype and Nonlinear Model
2.1.1. Equations of Motion
2.1.2. Propulsion Forces and Moments
2.1.3. Aerodynamic Forces and Moments
2.1.4. Ground Contact Forces and Moments
2.1.5. Gravity Force
2.2. Sensors
2.3. Attitude and Vertical Velocity Estimators
3. Nonlinear Control Strategies for Tail-Sitter UAV Vertical Flight
3.1. Equilibrium at Hover
3.2. Rotational Dynamics in Affine Form
3.3. Velocity Control
3.4. Attitude Stabilization
3.4.1. Benchmark Nonlinear Controller (BNC)
3.4.2. Nonlinear Dynamics Inversion (NDI) Controller
3.4.3. Incremental Nonlinear Dynamics Inversion (INDI) Controller
4. Hardware-in-the-Loop Simulation
4.1. Hardware and Communications
4.2. Benchmark Maneuver for Vertical Flight
4.3. Simulation Environment
- Sampling times: The simulation was run at 200 Hz, representing a fixed sample time of s, as it was considered as significantly low whilst still allowing the simulation to run in real-time without requiring high computational power. Regarding the implementations of the controllers and estimators, both in MATLAB and in Arduino, these were also kept at s for the same reasons, particularly for ensuring the Nano 33 IOT could perform all the tasks for each cycle under this time.
- Filter discretization: Despite the fact that MATLAB allows the implementation of transfer functions in continuous-time, a discrete form is desired to validate the MCU implementation of the HPF and LPF of the velocity estimation in (22), and the SD and CF filters - respectively (41) and (42) - for the INDI controller. The bilinear transformation:is employed for this end, and the deduction of the discrete expressions for each of the previously-referred filters is omitted.
- Estimators and altitude controller: Effort was taken to maintain the same parameters for the estimators and altitude controller, in both pure simulation and HITL, allowing for simulation runs to focus on the attitude controllers. With this in mind, the estimators were tuned using the values of and , respectively for (21) and (22), and the gains of the altitude controller in (32) were and , kept from their original work [29].
- MCU implementation: The implementation in the Arduino Nano 33 IOT board follows a standard Arduino program flow: in the setup, the Ethernet communications are established and the relevant variables are initialized; and then an infinite loop is run every instant according to the sample-time , which consists on receiving the UDP packet (which comprises both the references and the simulated sensor data as can be seen in Figure 7), performs the estimation of the attitude and vertical velocity, uses these to compute the control action, and sends it via an UDP packet back to MATLAB, completing the cycle. The controllers can be changed via the Simulink interface to allow for the same program to run all the different control strategies. Lastly, regarding all the code implementation, it should be noted that only the built-in functions available for Arduino, namely for Ethernet, Wi-Fi, UDP and SPI, were used, having been written the remaining necessary ones for the estimators and controllers.
- Visualization: For the goal of having a visual interface with the simulation, mainly for inspecting the attitude of the UAV, a three-dimensional environment was developed using the Simulink 3D Animation tools, and a computer-aided design (CAD) model of a bi-rotor tail-sitter from [46] was included in it, as can be seen in Figure 8. In order to not overburden the simulation, a low update frequency of 10 Hz is used in this visualization block.
4.4. Simulation and HITL Results
4.4.1. Simulation Results
- BNC (simulation): ,
- NDI (simulation): ,
- INDI (simulation): , , , ,
4.4.2. Hardware-in-the-Loop Results
- BNC (HITL): ,
- NDI (HITL): ,
- INDI (HITL): , , , ,
5. Experimental Validation
5.1. Flight Controller Design
- Microcontroller Unit (MCU): Cortex M0+ (native to Arduino board)
- Inertial Measurement Unit (IMU): LSM6DS3 accelerometer and gyroscope (native to Arduino board)
- Sonar: HC-SR04 ultrasonic sensor
- Communications: UDP/Wi-Fi via NINA W102 module (native to Arduino board)
5.2. Groundtruth
5.3. Benchmark Maneuver for Experimental Vertical Flight
5.4. Parameter Tuning for Experimental Flight
- BNC (experimental): ,
- NDI (experimental): ,
- INDI (experimental): , , , ,
5.5. Vertical Flight Results
Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
Abbreviations
| AC | Aerodynamic Center |
| AOA | Angle-of-attack |
| BLDC | Brushless Direct Current |
| BNC | Benchmark Nonlinear Controller |
| CAD | Computer-Aided Design |
| CF | Complementary/Command Filter |
| CG | Center-of-Gravity |
| DOF | Degree-of-Freedom |
| ESC | Electronic Speed Controller |
| FC | Flight Controller |
| HITL | Hardware-In-The-Loop |
| HPF | High-Pass Filter |
| I2C | Inter-Integrated Circuit |
| IMU | Inertial Measurement Unit |
| INDI | Incremental Nonlinear Dynamics Inversion |
| LPF | Low-Pass Filter |
| LQR | Linear Quadratic Regulators |
| MAC | Mean Aerodynamic Chord |
| MCS | Motion Capture System |
| MCU | Micro-controller Unit |
| MDPI | Multidisciplinary Digital Publishing Institute |
| NDI | Nonlinear Dynamics Inversion |
| NED | North-East-Down |
| PCB | Prrinted Circuit Board |
| PID | Proportional Integral-Derivative |
| PWM | Pulse WidthModulation |
| QTM | Qualysis Track Manager |
| RMS | Root-Mean-Square |
| SD | Second-(order) Derivative |
| SPI | Serial Peripheral Interface |
| UAV | Unmanned Aerial Vehicles |
| UDP | User Datagram Protocol |
| VTOL | Vertical Takeoff and Landing |
Appendix A. X-Vert Simulator Parameters and Constants
Appendix A.1. General Parameters
| Prop | |||
|---|---|---|---|
| m | wingspan | ||
| m | MAC | ||
| m2 | wing surface area | ||
| ° | sweep angle of the wing | ||
| m | distance of the CG to the TE | ||
| kg | aircraft mass | ||
| kg·m2 | aircraft inertia matrix | ||
| m | elevon chord | ||
| m | elevon span | ||
| rad | elevon maximum deflection |
Appendix A.2. Propulsion Subsystem
| Prop | |||
|---|---|---|---|
| m | distance of the right proprotor to the CG | ||
| m | distance of the left proprotor to the CG | ||
| m | radius of the propeller | ||
| - | second order parameter of | ||
| - | first order parameter of | ||
| - | zeroth order parameter of | ||
| - | second order parameter of | ||
| - | first order parameter of | ||
| - | zeroth order parameter of | ||
| V | voltage of the battery | ||
| resistance of the electric motor | |||
| V/(rad·s) | back-electromotive force of the electric motor | ||
| kg·m2 | rotational inertia of the proprotor | ||
| (N·m)/A | torque constant of the electric motor | ||
| (N·m·s)/rad | damping constant of the electric motor |
Appendix A.3. Aerodynamics Subsystem
| Prop | |||
|---|---|---|---|
| m | aerodynamic centre of the right wing | ||
| m | aerodynamic centre of the left wing | ||
| - | lift stability derivative for pitch | ||
| - | pitch damping derivative | ||
| - | side-force derivative for side-slip | ||
| - | side-force stability derivative for roll | ||
| - | side-force derivative for yaw | ||
| - | roll static stability derivative | ||
| - | roll damping derivative | ||
| - | rolling moment derivative for yaw | ||
| - | yaw static stability derivative | ||
| - | yawing moment derivative for roll | ||
| - | yaw damping derivative |
Appendix A.4. Ground-Contact Subsystem
| Prop | |||
|---|---|---|---|
| m | distance of the tip of the fuselage to the CG | ||
| m | distance of corner 1 to the CG | ||
| m | distance of corner 2 to the CG | ||
| m | distance of corner 3 to the CG | ||
| m | distance of corner 4 to the CG | ||
| 100 | 1/s | position gain for the contact forces | |
| 5 | 1/s2 | velocity gain for the contact forces |
Appendix A.5. Sensors
| Prop | |||
|---|---|---|---|
| m/s2 | bias in the accelerometer readings | ||
| - | standard deviation of the noise of the accelerometer | ||
| rad/s | bias in the gyroscope readings | ||
| - | standard deviation of the noise of the gyroscope | ||
| 0 | m | bias in the sonar readings | |
| - | standard deviation of the noise of the sonar |
References
- Telli, K., Kraa, O., Himeur, Y., Ouamane, A., Boumehraz, M., Atalla, S., Mansoor, W.,. A comprehensive review of recent research trends on unmanned aerial vehicles (uavs) Systems 2023, 11(8), 400. [CrossRef]
- Xu, H., Wang, L., Han, W., Yang, Y., Li, J., Lu, Y., Li, J., A, Survey on UAV Applications in Smart City Management: Challenges, Advances, and Opportunities. IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing 2023, 16. [CrossRef]
- Chehreh , B., Moutinho , A., Viegas , C., Latest Trends on Tree Classification and Segmentation Using UAV Data—A Review of Agroforestry Applications. Remote Sensing 2023, 15(9), 2263. [CrossRef]
- Rakesh, D., Kumar, N. A., Sivaguru, M., Keerthivaasan, K. V. R., Janaki, B. R., Raffik, R., ole of UAVs in innovating agriculture with future applications: A review. 2021 International Conference on Advancements in Electrical, Electronics, Communication, Computing and Automation (ICAECA) 2021.
- Saeed, A. S., Younes, A. B., Cai, C., Cai, G. A survey of hybrid unmanned aerial vehicles. Progress in Aerospace Sciences 2018, 98. [CrossRef]
- Ducard, G. J., Allenspach, M. Review of designs and flight control techniques of hybrid and convertible VTOL UAVs. Aerospace Science and Technology 2021, 118. [CrossRef]
- Misra, A., Jayachandran, S., Kenche, S., Katoch, A., Suresh, A., Gundabattini, E., ... Legesse, A. A. A Review on Vertical Take-Off and Landing (VTOL) Tilt-Rotor and Tilt Wing Unmanned Aerial Vehicles (UAVs). Journal of Engineering 2022. [CrossRef]
- Okasha, M., Shah, J., Fauzi, W., Hanouf, Z. Gain scheduled linear quadratic control for quadcopter. IOP conference series: materials science and engineering 2017. [CrossRef]
- Poksawat, P., Wang, L., Mohamed, A. Gain scheduled attitude control of fixed-wing UAV with automatic controller tuning. IEEE Transactions on Control Systems Technology 2017, 26(4). [CrossRef]
- Qiao, J., Liu, Z., Zhang, Y. Gain scheduling based PID control approaches for path tracking and fault tolerant control of a quad-rotor UAV. International Journal of Mechanical Engineering and Robotics Research 2018, 7(4). [CrossRef]
- Melo, A. G., Andrade, F. A., Guedes, I. P., Carvalho, G. F., Zachi, A. R., Pinto, M. F. Fuzzy gain-scheduling PID for UAV position and altitude controllers. Sensors 2022, 22(6). [CrossRef]
- Pashilkar, A. A., Ismail, S., Ayyagari, R., Sundararajan, N. Design of a nonlinear dynamic inversion controller for trajectory following and maneuvering for fixed wing aircraft. 2013 IEEE symposium on computational intelligence for security and defense applications (CISDA) 2013. [CrossRef]
- Azinheira, J.R., Moutinho, A. Hover Control of an UAV With Backstepping Design Including Input Saturations. Journal Abbreviation 2014.
- Horn, J. F. Non-linear dynamic inversion control design for rotorcraft. Aerospace 2019, 6(3). [CrossRef]
- Wang, F., Wang, P., Deng, H., Chen, B. Nonlinear Dynamic Inversion Control of VTOL Tilt-Wing UAV. 018 Eighth International Conference on Instrumentation & Measurement, Computer, Communication and Control (IMCCC) 2018. [CrossRef]
- Y. Fu, Y. Zhang, Z. Yu, Z. Liu. A Backstepping Control Strategy for Fixed Wing UAV under Actuator Failure. 2019 IEEE 28th International Symposium on Industrial Electronics (ISIE) 2019. [CrossRef]
- Smeur, E. J., Chu, Q., De Croon, G. C.. Adaptive incremental nonlinear dynamic inversion for attitude control of micro air vehicles. of Guidance, Control, and Dynamics 2016, 39(3). [CrossRef]
- Azinheira, J. R., Moutinho, A., Carvalho, J. R. Lateral control of airship with uncertain dynamics using incremental nonlinear dynamics inversion. IFAC-PapersOnLine 2015, 48(19). [CrossRef]
- Sieberling, S., Chu, Q. P., Mulder, J. A. Robust flight control using incremental nonlinear dynamic inversion and angular acceleration prediction. Journal of guidance, control, and dynamics 2019, 33(6). [CrossRef]
- Acquatella, P., van Kampen, E., Chu, Q. P. Incremental backstepping for robust nonlinear flight control. Proceedings of the EuroGNC 2013.
- Guerreiro, N. M., Moutinho, A. Robust incremental backstepping controller for the attitude and airspeed tracking of a commercial airplane. 2019 IEEE 10th International Conference on Mechanical and Aerospace Engineering (ICMAE) 2019. [CrossRef]
- Cordeiro, R. A., Azinheira, J. R., Moutinho, A. Robustness of incremental backstepping flight controllers: The boeing 747 case study. EEE Transactions on Aerospace and Electronic Systems 2021, 57(5). [CrossRef]
- Tal, E., Karaman, S. Accurate tracking of aggressive quadrotor trajectories using incremental nonlinear dynamic inversion and differential flatness. IEEE Transactions on Control Systems Technology 2020, 29(3). [CrossRef]
- Jayaraman, B., Giri, D. K., Ghosh, A. K. Attitude Tracking Control of a Light Aircraft Using Classical and Incremental Nonlinear Dynamic Inversion Approaches. 2021 International Conference on Unmanned Aircraft Systems (ICUAS) 2021. [CrossRef]
- Smeur, E. J., Bronz, M., de Croon, G. C. Incremental control and guidance of hybrid aircraft applied to a tailsitter unmanned air vehicle. Journal of Guidance, Control, and Dynamics 2020, 43(2). [CrossRef]
- Tal, E. A., Karaman, S. Global trajectory-tracking control for a tailsitter flying wing in agile uncoordinated flight. In AIAA Aviation 2021 Forum 2021. [CrossRef]
- Tal, E., Karaman, S. Global incremental flight control for agile maneuvering of a tailsitter flying wing. Journal of Guidance, Control, and Dynamics 2022, 45(2). [CrossRef]
- Yang, Y., Zhu, J., Yang, J. INDI-based transitional flight control and stability analysis of a tail-sitter UAV. 2020 IEEE International Conference on Systems, Man, and Cybernetics (SMC) 2020. [CrossRef]
- Chiappinelli, R., Nahon, M. Modeling and Control of a Tailsitter UAV. 2018 International Conference on Unmanned Aircraft Systems (ICUAS) 2018. [CrossRef]
- E-Flite XVERT VTOL webpage. Available online: https://www.horizonhobby.de/enDE/product/x-vert-vtol-bnf-basic-504mm/EFL1850.html (accessed on 24 January 2024).
- Beard, Randal W.; McLain, Timothy W. Small Unmanned Aircraft: Theory and Practice, 1st ed.; Publisher: Princeton University Press, 2018. [Google Scholar]
- Stevens, Brian L; Lewis, Frank L. ; Aircraft Control and Simulation: Dynamics, Controls Design, and Autonomous Systems, 3 ed.; Publisher: John Wiley & Sons, 2016. [Google Scholar]
- Nelson, Robert C. Flight Stability and Automatic Control, 2nd ed.; Publisher: McGraw-Hill, 1998. [Google Scholar]
- Khan, W., Nahon, M. Toward an accurate physics-based UAV thruster model. IEEE/ASME Transactions on Mechatronics 2013, 18(4). [CrossRef]
- McCormick, Barnes W. Aerodynamics, Aeronautics and Flight Mechanics, 2nd ed.; Publisher: John Wiley & Sons, 1979. [Google Scholar]
- Khan, W., Nahon, M. Real-time modeling of agile fixed-wing UAV aerodynamics. 2015 international conference on unmanned aircraft systems (ICUAS) 2015. [CrossRef]
- Khan, W., Nahon, M. Modeling dynamics of agile fixed-wing UAVs for real-time applications. 2016 international conference on unmanned aircraft systems (ICUAS) 2016. [CrossRef]
- Prisacariu, V., Cîrciu, I., Boscoianu, M. Flying wing aerodynamic analysis. Review of the Air Force Academy 2012, (2).
- Esteves, D. J., Moutinho, A., Azinheira, J. R. Stabilization and altitude control of an indoor low-cost quadrotor: design and experimental results. 2015 IEEE International Conference on Autonomous Robot Systems and Competitions 2015. [CrossRef]
- Madgwick, S. O., Harrison, A. J., Vaidyanathan, R. Estimation of IMU and MARG orientation using a gradient descent algorithm. 2011 IEEE international conference on rehabilitation robotics 2011. [CrossRef]
- Acquatella, P., van Ekeren, W., Chu, Q. P. Pi (d) tuning for flight control systems via incremental nonlinear dynamic inversion. IFAC-PapersOnLine 2017, 50(1). [CrossRef]
- Cordeiro, R. A., Azinheira, J. R., Moutinho, A. Cascaded incremental backstepping controller for the attitude tracking of fixed-wing aircraft. 5th CEAS Conference on Guidance, Navigation and Control 2019.
- Cordeiro, R. A., Marton, A. S., Azinheira, J. R., Carvalho, J. R., Moutinho, A. Increased robustness to delay in incremental controllers using input scaling gain. IEEE Transactions on Aerospace and Electronic Systems 2021, 58(2). [CrossRef]
- Arduino Nano 33 IOT product page. Available online: https://docs.arduino.cc/hardware/nano-33-iot/ (accessed on 24 January 2024).
- Wiznet W5500 product page. Available online: https://www.wiznet.io/product-item/w5500/ (accessed on 24 January 2024).
- CAD model UAV Tailsitter at GrabCAD website. Available online: https://grabcad.com/library/uav-tailsitter-1 (accessed on 24 January 2024).
- Spektrum A220 4g Aircraft Servo product page, Horizon Hobby website. Available online: https://www.horizonhobby.com/product/a220-4g-aircraft-servo-x-vert/SPMSA220.html (accessed on 24 January 2024).
- 20A Nano ESC product page, SkyRC website. Available online: https://www.skyrc.com/DiscontinuedProducts/20AESC (accessed on 24 January 2024).
- BL280 Brushless Outrunner Motor 2600Kv product page, Horizon Hobby website. Available online: https://www.horizonhobby.com/product/bl280-brushless-outrunner-motor-2600kv/EFLM1809.html (accessed on 24 January 2024).
- Mini Power Hub product page, MatekSys website. Available online: http://www.mateksys.com/?portfolio=hub5v12v#tab-id-1 (accessed on 24 January 2024).
- Gens ace G-Tech Soaring 450mAh 7.4V battery product page, Gens Ace website. Available online: https://www.gensace.de/gens-ace-g-tech-soaring-450mah-7-4v-30c-2s1p-lipo-battery-pack-with-jst-syp-plug.html (accessed on 24 January 2024).
- Qualysis Track Manager software, Qualysis website. Available online: https://www.qualisys.com/software/qualisys-track-manager/ (accessed on 24 January 2024).


















| Cont. | ||||||||
|---|---|---|---|---|---|---|---|---|
| BNC | 0.0133 | 0.0139 | 0.0116 | 0.0129 | 0.0273 | 0.0176 | 0.0104 | 0.0184 |
| NDI | 0.0178 | 0.0072 | 0.0221 | 0.0157 | 0.0122 | 0.0216 | 0.0011 | 0.0116 |
| INDI | 0.0171 | 0.0119 | 0.0166 | 0.0152 | 0.0012 | 0.0007 | 0.0001 | 0.0007 |
| Cont. | ||||||||
|---|---|---|---|---|---|---|---|---|
| BNC | 0.0246 | 0.0215 | 0.0142 | 0.0201 | 0.0295 | 0.0182 | 0.0108 | 0.0195 |
| NDI | 0.0201 | 0.0117 | 0.0227 | 0.0182 | 0.0117 | 0.0083 | 0.0011 | 0.0070 |
| INDI | 0.0212 | 0.0143 | 0.0188 | 0.0181 | 0.0028 | 0.0011 | 0.0003 | 0.0014 |
| Cont. | ||||
|---|---|---|---|---|
| BNC | 0.0219 | 0.0292 | 0.0149 | 0.0220 |
| NDI | 0.0071 | 0.0264 | 0.0115 | 0.0150 |
| INDI | 0.0271 | 0.0352 | 0.0232 | 0.0285 |
| Cont. | ||||
|---|---|---|---|---|
| BNC | 0.0056 | 0.0213 | 0.0018 | 0.0095 |
| NDI | 0.0144 | 0.0156 | 0.0012 | 0.0104 |
| INDI | 0.0039 | 0.0018 | 0.0002 | 0.0020 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).