Iterative Learning Method for In-Flight Auto-Tuning of UAV Controllers Based on Basic Sensory Information
Abstract
:1. Introduction
1.1. Auto-tuning of UAV Controllers—Context and Novelty
- assessment and systematization (by means of simulation and experimental studies) of the influence of several environmental factors on the process of auto-tuning of UAV controllers during the flight by the proposed extremum-seeking method. The key issue here is the analysis of results in terms of assessing the quality of work of tuned controllers and the work of the optimization mechanism itself in the following test areas: presence of disturbances (wind gusts), UAV mass change, different sensory sources, flight dynamics/optimized performance index,
- outlining the rules for conducting the auto-tuning process of controllers, so that the automatic exploration of the gain space for individual controllers can be as safe as possible (one needs to keep in mind that the proposed method is not based on any stability criterion, which is its main limitation compared with numerous batch solutions based on models).
1.2. Motivation
1.3. Related Work
2. Materials and Methods
2.1. Multirotor UAV as a Control Object and Its Measurement System
2.2. Considered Control System and Control Purpose (Formulation of Optimization Problem)
2.3. Procedure for Tuning of Controllers
2.4. Iterative Learning Method for In-Flight Tuning of UAV Controllers—General Idea
- Acquisition of measurement data (current, sampled values: , , or ) for set controller gains with the assumed and the assumed form of the function,
- Determination of new controller gains based on the estimated value of the cost function from the phase no. 1,
- Adjusting the controller according to iteratively corrected gains and waiting for the time necessary to stop the transient processes caused by it.
2.5. Region Elimination Method Based on GLD Algorithm
- If >, then the minimum does not lie in ,
- If <, then the minimum does not lie in ,
- If = , then the minimum does not lie in and .
Algorithm 1 Golden-search algorithm. |
Step 1. Evaluate the minimal number N of iterations required to provide the sufficient (predefined) value of the : Step 2. For iteration ,
|
2.6. Optimal Gain Tuning of a Two-Parameter Controller Based on Bootstrapping Mechanism
Algorithm 2 Two-parameter controller tuning. |
Step 0. Put the bootstrap cycles counter to ; for initial define , , and initial value of the second parameter (take ), set Step 1. Find the optimal using the GLD algorithm, with the second parameter fixed at . Step 2. Calculate the optimal analogously to the method from the Step 1, keeping the first parameter fixed at . Step 3. If , increase the bootstrap cycles counter , and proceed to Step 1, otherwise stop the algorithm—the optimal solution has been obtained after bootstrap cycles, as desired. |
- The proposed method requires predefining the initial, admissible ranges for , i.e., for . It is a crucial choice from the perspective of ensuring the safety of autonomous flight. If there is a such a possibility, it is strongly recommended to use the expert knowledge about the controller gains (from initial flights on the base of analysis of a rise time and the maximum overshoot, prototyping in virtual environment, default settings of on-board controller, detailed analysis of the UAV feedback control system, etc.),
- For the expected tolerance , the number N is calculated. calculations of f are needed in the tuning of a pair of controller parameters of a single bootstrap,
- The algorithm’s execution time depends on: , N, and the time of a single reference primitive, which must be correlated with the expected UAV dynamics and its natural inertia,
- Recalling the most important principles of the zero-optimization method from [26], one needs to have in mind that the proposed method "(...) is iterative-based and collects information about the performance index (on incremental cost function value) at sampling time instants, equally spaced every seconds" during the tuning experiments. Thus, for sampling period , a single evaluation of f value according to Step 2 of Algorithm 1 with a change of a single parameter of controller is performed using Procedure 1 (for symbols from the Table 1).
- The performance index is calculated as
Algorithm 3 Evaluation of performance index (with single change of controller parameter) [26] |
Recalling defined , , and n for . Then:
|
2.7. Signals Acquisition and Their Filtration in the Proposed Method
- the signals from the UAV odometry—processed using commonly used Kalman filtration. Thanks to that, it is possible to fuse data from several standard UAV on-board sensors,
- low-pass filtration (presented and tested primarily in [26]), expressed by a transfer function of first-order inertia typeFor the implementation of the GLD method, the discretized, recursive version of the low-pass filter (13) for the chosen sampling period , is used:
- (optional) measurement information from an external high-precision measurement system—for example, the motion capture system (for indoor flights) or GNSS (outdoor), treated as the ground truth in estimating the difference to UAV avionics measurements.
2.8. Experimental Platform
3. Results and Discussion
3.1. Simulation Experiments
- recognizing the nature of optimized function for its various structures ( = var, = var),
- validation if given gain ranges of and (for a constant, very small value of ) are safe (i.e., if the closed-loop control system is stable),
- comparative analysis of the effectiveness of GLD and FIB methods.
3.2. Experiments in Flight Conditions
3.2.1. Uncertainty of Altitude Measurements. Change of Sensory Information Sources
3.2.2. Comparison of the Tuning Effectiveness: FIB vs. GLD Method Used in Real-World Conditions
3.2.3. Analysis of the Impact of Environmental Disturbances (Wind Gusts) on the Auto-Tuning Procedure
3.2.4. Flights and Auto-Tuning in UAV Mass Change Conditions
4. Conclusions and Further Work
Supplementary Materials
Funding
Acknowledgments
Conflicts of Interest
Abbreviations
BF | Body Frame |
CCW | Counter-Clockwise |
CW | Clockwise |
DOF | Degrees of Freedom |
EF | Earth Frame |
FIB | Fibonacci-search Method |
GLD | Golden-search Method |
GNSS | Global navigation satellite system |
GPS | Global Positioning System |
MBZIRC | Mohamed Bin Zayed International Robotics Challenge |
NED | North-East-Down |
PD | Proportional-Derivative Controller |
PID | Proportional-Integral-Derivative Controller |
REM | Region Elimination Method |
ROS | Robot Operating System |
UAV | Unmanned Aerial Vehicle |
Appendix A
Nominal | Disturbed | Nominal | Disturbed | Nominal | Disturbed | |
---|---|---|---|---|---|---|
No. of Iter. | ||||||
1 | 2.2190 | 2.2190 | 10.0000 | 10.0000 | 3.6232 | 3.9781 |
2 | 3.2810 | 3.2810 | 10.0000 | 10.0000 | 2.7718 | 2.9733 |
3 | 3.2813 | 3.2813 | 10.0000 | 10.0000 | 2.9025 | 3.0650 |
4 | 3.9377 | 3.9377 | 10.0000 | 10.0000 | 2.7974 | 2.9231 |
5 | 3.9379 | 3.9379 | 10.0000 | 10.0000 | 2.8608 | 2.9099 |
6 | 4.3435 | 4.3435 | 10.0000 | 10.0000 | 2.4185 | 2.6717 |
7 | 4.3436 | 4.3436 | 10.0000 | 10.0000 | 2.5228 | 2.7708 |
8 | 4.5943 | 4.5943 | 10.0000 | 10.0000 | 2.5281 | 3.2745 |
9 | 4.1886 | 4.1886 | 10.0000 | 10.0000 | 2.8080 | 2.6899 |
10 | 4.3435 | 4.3435 | 10.0000 | 10.0000 | 2.3742 | 2.8161 |
11 | 4.3436 | 4.0928 | 10.0000 | 10.0000 | 2.3683 | 3.0077 |
12 | 4.4393 | 4.1886 | 10.0000 | 10.0000 | 2.3004 | 2.6560 |
13 | 4.4393 | 4.1886 | 10.0000 | 10.0000 | 2.2584 | 2.7008 |
14 | 4.4985 | 4.2478 | 10.0000 | 10.0000 | 2.3600 | 2.4583 |
15 | 4.4210 | 4.2661 | 8.2580 | 8.2580 | 2.4742 | 2.4305 |
16 | 4.4210 | 4.2661 | 12.7420 | 12.7420 | 2.6279 | 2.5428 |
17 | 4.4210 | 4.2661 | 5.4854 | 5.4854 | 2.5291 | 2.8694 |
18 | 4.4210 | 4.2661 | 8.2566 | 8.2566 | 2.5097 | 2.3611 |
19 | 4.4210 | 4.2661 | 8.2574 | 8.2574 | 2.5057 | 2.3465 |
20 | 4.4210 | 4.2661 | 9.9700 | 9.9700 | 2.4944 | 2.7500 |
21 | 4.4210 | 4.2661 | 9.9705 | 7.1985 | 2.6712 | 2.4564 |
22 | 4.4210 | 4.2661 | 11.0289 | 8.2569 | 2.5066 | 2.5012 |
23 | 4.4210 | 4.2661 | 11.0292 | 6.5441 | 2.6319 | 2.5666 |
24 | 4.4210 | 4.2661 | 11.6833 | 7.1982 | 2.5153 | 2.7464 |
25 | 4.4210 | 4.2661 | 11.6835 | 6.1397 | 2.6646 | 2.6194 |
26 | 4.4210 | 4.2661 | 12.0877 | 6.5439 | 2.9049 | 2.4165 |
27 | 4.4210 | 4.2661 | 11.4336 | 6.5441 | 2.8642 | 2.4360 |
28 | 4.4210 | 4.2661 | 11.6834 | 6.7939 | 2.5492 | 2.3116 |
29 | 2.2190 | 2.2190 | 11.7607 | 6.8711 | 4.6672 | 4.4838 |
30 | 3.2810 | 3.2810 | 11.7607 | 6.8711 | 3.3072 | 2.7008 |
31 | 3.2813 | 3.2813 | 11.7607 | 6.8711 | 3.4729 | 2.9624 |
32 | 3.9377 | 3.9377 | 11.7607 | 6.8711 | 2.7758 | 2.4287 |
33 | 3.9379 | 3.9379 | 11.7607 | 6.8711 | 2.7904 | 2.5296 |
34 | 4.3435 | 4.3435 | 11.7607 | 6.8711 | 2.6357 | 2.3066 |
35 | 4.3436 | 4.3436 | 11.7607 | 6.8711 | 2.4105 | 4.4358 |
36 | 4.5943 | 4.5943 | 11.7607 | 6.8711 | 2.3535 | 2.6047 |
37 | 4.5943 | 4.5943 | 11.7607 | 6.8711 | 2.4362 | 2.5906 |
38 | 4.7493 | 4.7493 | 11.7607 | 6.8711 | 2.7252 | 2.4460 |
39 | 4.4986 | 4.7493 | 11.7607 | 6.8711 | 5.4026 | 2.5969 |
40 | 4.5943 | 4.8450 | 11.7607 | 6.8711 | 2.4769 | 2.3667 |
41 | 4.5943 | 4.8451 | 11.7607 | 6.8711 | 2.4032 | 2.3662 |
42 | 4.6535 | 4.9042 | 11.7607 | 6.8711 | 2.3701 | 2.9292 |
43 | 4.6718 | 4.8268 | 8.2580 | 8.2580 | 2.2139 | 2.3028 |
44 | 4.6718 | 4.8268 | 12.7420 | 12.7420 | 2.3797 | 2.5986 |
45 | 4.6718 | 4.8268 | 5.4854 | 5.4854 | 2.2050 | 2.1790 |
46 | 4.6718 | 4.8268 | 8.2566 | 8.2566 | 2.2468 | 2.3559 |
47 | 4.6718 | 4.8268 | 3.7720 | 3.7720 | 2.2244 | 2.4715 |
48 | 4.6718 | 4.8268 | 5.4846 | 5.4846 | 2.2563 | 2.1976 |
49 | ... | 4.8268 | ... | 5.4851 | ... | 2.1532 |
50 | ... | 4.8268 | ... | 6.5435 | ... | 2.5722 |
51 | ... | 4.8268 | ... | 4.8307 | ... | 2.3696 |
52 | ... | 4.8268 | ... | 5.4848 | ... | 2.3328 |
53 | ... | 4.8268 | ... | 5.4850 | ... | 2.2445 |
54 | ... | 4.8268 | ... | 5.8892 | ... | 2.7051 |
55 | ... | 4.8268 | ... | 5.2350 | ... | 2.2805 |
56 | ... | 4.8268 | ... | 5.4848 | ... | 2.2393 |
References
- Valavanis, K.; Vachtsevanos, G.J. (Eds.) Handbook of Unmanned Aerial Vehicles; Springer: Dordrecht, The Netherlands, 2015. [Google Scholar]
- Jordan, S.; Moore, J.; Hovet, S.; Box, J.; Perry, J.; Kirsche, K.; Lewis, D.; Tsz Ho Tse, Z. State-of-the-art technologies for UAV inspections. IET Radar Sonar Navig. 2018, 12, 151–164. [Google Scholar] [CrossRef]
- Hinas, A.; Roberts, J.M.; Gonzalez, F. Vision-Based Target Finding and Inspection of a Ground Target Using a Multirotor UAV System. Sensors 2017, 17, 2929. [Google Scholar] [CrossRef] [PubMed]
- Sandino, J.; Gonzalez, F.; Mengersen, K.; Gaston, K.J. UAVs and Machine Learning Revolutionising Invasive Grass and Vegetation Surveys in Remote Arid Lands. Sensors 2018, 18, 605. [Google Scholar] [CrossRef] [PubMed]
- Dziuban, P.J.; Wojnar, A.; Zolich, A.; Cisek, K.; Szumiński, W. Solid State Sensors—Practical Implementation in Unmanned Aerial Vehicles (UAVs). Procedia Eng. 2012, 47, 1386–1389. [Google Scholar] [CrossRef]
- Gośliński, J.; Giernacki, W.; Królikowski, A. A nonlinear Filter for Efficient Attitude Estimation of Unmanned Aerial Vehicle (UAV). J. Intell. Robot. Syst. 2018. [Google Scholar] [CrossRef]
- Urbański, K. Control of the Quadcopter Position Using Visual Feedback. In Proceedings of the 18th International Conference on Mechatronics (Mechatronika), Brno, Czech Republic, 5–7 December 2018; pp. 1–5. [Google Scholar]
- Ebeid, E.; Skriver, M.; Terkildsen, K.H.; Jensen, K.; Schultz, U.P. A survey of Open-Source UAV flight controllers and flight simulators. Microprocess. Microsyst. 2018, 61, 11–20. [Google Scholar] [CrossRef]
- Lozano, R. (Ed.) Unmanned Aerial Vehicles: Embedded Control; John Wiley & Sons: New York, NY, USA, 2010. [Google Scholar]
- Santoso, F.; Garratt, M.A.; Anavatti, S.G. State-of-the-Art Intelligent Flight Control Systems in Unmanned Aerial Vehicles. IEEE Trans. Autom. Sci. Eng. 2018, 15, 613–627. [Google Scholar] [CrossRef]
- Mahony, R.; Kumar, V.; Corke, P. Multirotor aerial vehicles: Modeling, estimation, and control of quadrotor. IEEE Robot. Autom. Mag. 2012, 19, 20–32. [Google Scholar] [CrossRef]
- Ren, B.; Ge, S.; Chen, C.; Fua, C.; Lee, T. Modeling, Control and Coordination of Helicopter Systems; Springer: New York, NY, USA, 2012. [Google Scholar]
- Pounds, P.; Bersak, D.R.; Dollar, A.M. Stability of small-scale UAV helicopters and quadrotors with added payload mass under PID control. Auton. Robots 2012, 33, 129–142. [Google Scholar] [CrossRef]
- Li, J.; Li, Y. Dynamic Analysis and PID Control for a Quadrotor. In Proceedings of the 2011 IEEE International Conference on Mechatronics and Automation (ICMA), Beijing, China, 7–10 August 2011; pp. 573–578. [Google Scholar] [CrossRef]
- Espinoza, T.; Dzul, A.; Llama, M. Linear and nonlinear controllers applied to fixed-wing UAV. Int. J. Adv. Robot. Syst. 2013, 10, 1–10. [Google Scholar] [CrossRef]
- Lee, K.U.; Kim, H.S.; Park, J.-B.; Choi, Y.-H. Hovering Control of a Quadrotor. In Proceedings of the 2012 12th International Conference on Control, Automation and Systems (ICCAS), JeJu Island, South Korea, 17–21 October 2012; pp. 162–167. [Google Scholar]
- Pounds, P.E.; Dollar, A.M. Aerial Grasping from a Helicopter UAV Platform, Experimental Robotics. Springer Tracts Adv. Robot. 2014, 79, 269–283. [Google Scholar] [CrossRef]
- Kohout, P. A System for Autonomous Grasping and Carrying of Objects by a Pair of Helicopters. Master’s Thesis, Czech Technical University in Prague, Prague, Czech Republic, 2017. [Google Scholar]
- Spica, R.; Franchi, A.; Oriolo, G.; Bülthoff, H.H.; Giordano, P.R. Aerial grasping of a moving target with a quadrotor UAV. In Proceedings of the 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems, Vilamoura, Portugal, 7–12 October 2012; pp. 4985–4992. [Google Scholar] [CrossRef]
- Yang, F.; Xue, X.; Cai, C.; Sun, Z.; Zhou, Q. Numerical Simulation and Analysis on Spray Drift Movement of Multirotor Plant Protection Unmanned Aerial Vehicle. Energies 2018, 11, 2399. [Google Scholar] [CrossRef]
- Rao Mogili, U.M.; Deepak, B.B.V.L. Review on Application of Drone Systems in Precision Agriculture. Procedia Comput. Sci. 2018, 133, 502–509. [Google Scholar] [CrossRef]
- Imdoukh, A.; Shaker, A.; Al-Toukhy, A.; Kablaoui, D.; El-Abd, M. Semi-autonomous indoor firefighting UAV. In Proceedings of the 2017 18th International Conference on Advanced Robotics (ICAR), Hong Kong, China, 10–12 July 2017; pp. 310–315. [Google Scholar] [CrossRef]
- Duan, H.; Li, P. Bio-inspired Computation in Unmanned Aerial Vehicles; Springer: Berlin, Germany, 2014. [Google Scholar]
- Giernacki, W.; Espinoza Fraire, T.; Kozierski, P. Cuttlesh Optimization Algorithm in Autotuning of Altitude Controller of Unmanned Aerial Vehicle (UAV). In Proceedings of the Third Iberian Robotics Conference (ROBOT 2017), Seville, Spain, 22–24 November 2017; pp. 841–852. [Google Scholar] [CrossRef]
- Chong, E.K.P.; Zak, S.H. An Introduction to Optimization, 2nd ed.; John Wiley & Sons: Hoboken, NJ, USA, 2001. [Google Scholar]
- Giernacki, W.; Horla, D.; Báča, T.; Saska, M. Real-time model-free optimal autotuning method for unmanned aerial vehicle controllers based on Fibonacci-search algorithm. Sensors 2018, 19, 312. [Google Scholar] [CrossRef]
- Spurný, V.; Báča, T.; Saska, M.; Pěnička, R.; Krajník, T.; Loianno, G.; Thomas, J.; Thakur, D.; Kumar, V. Cooperative Autonomous Search, Grasping and Delivering in Treasure Hunt Scenario by a Team of UAVs. J. Field Robot. 2018, 1–24. [Google Scholar] [CrossRef]
- Automatic Tuning with AUTOTUNE. Ardupilot.org. Available online: http://ardupilot.org/plane/docs/automatic-tuning-with-autotune.html (accessed on 12 November 2018).
- Rodriguez-Ramos, A.; Sampedro, C.; Bavle, H.; de la Puente, P.; Campoy, P. A Deep Reinforcement Learning Strategy for UAV Autonomous Landing on a Moving Platform. J. Intell. Robot. Syst. 2018, 1–16. [Google Scholar] [CrossRef]
- Koch, W.; Mancuso, R.; West, R.; Bestavros, A. Reinforcement Learning for UAV Attitude Control. Available online: https://arxiv.org/abs/1804.04154 (accessed on 12 November 2018).
- Panda, R.C. Introduction to PID Controllers—Theory, Tuning and Application to Frontier Areas; In-Tech: Rijeka, Croatia, 2012. [Google Scholar] [CrossRef]
- Rios, L.; Sahinidis, N. Derivative-free optimization: A review of algorithms and comparison of software implementations. J. Glob. Optim. 2013, 56, 1247–1293. [Google Scholar] [CrossRef]
- Spall, J.C. Introduction to Stochastic Search and Optimization: Estimation, Simulation, and Control; Wiley: New York, NY, USA, 2003. [Google Scholar] [CrossRef]
- Hjalmarsson, H.; Gevers, M.; Gunnarsson, S.; Lequin, O. Iterative feedback tuning: Theory and applications. IEEE Control Syst. Mag. 1998, 18, 26–41. [Google Scholar] [CrossRef]
- Reza-Alikhani, H. PID type iterative learning control with optimal variable coefficients. In Proceedings of the 2010 5th IEEE International Conference Intelligent Systems, London, UK, 7–9 July 2010; pp. 1–6. [Google Scholar] [CrossRef]
- Ghadimi, S.; Lan, G. Stochastic first-and zeroth-order methods for nonconvex stochastic programming. SIAM J. Optim. 2013, 23, 2341–2368. [Google Scholar] [CrossRef]
- Kiefer, J. Sequential minimax search for a maximum. Proc. Am. Math. Soc. 1953, 4, 502–506. [Google Scholar] [CrossRef]
- Brasch, T.; Byström, J.; Lystad, L.P. Optimal Control and the Fibonacci Sequence; Statistics Norway, Research Department: Oslo, Norway, 2012; pp. 1–33. Available online: https://www.ssb.no/a/publikasjoner/pdf/DP/dp674.pdf (accessed on 28 December 2018).
- Theys, B.; Dimitriadis, G.; Hendrick, P.; De Schutter, J. Influence of propeller configuration on propulsion system efficiency of multi-rotor Unmanned Aerial Vehicles. In Proceedings of the 2016 International Conference on Unmanned Aircraft Systems (ICUAS), Arlington, TX, USA, 7–10 June 2016; pp. 195–201. [Google Scholar] [CrossRef]
- Xia, D.; Cheng, L.; Yao, Y. A Robust Inner and Outer Loop Control Method for Trajectory Tracking of a Quadrotor. Sensors 2017, 17, 2147. [Google Scholar] [CrossRef] [PubMed]
- Wang, Y.; Gao, F.; Doyle, F. Survey on iterative learning control, repetitive control, and run-to-run control. J. Process Control 2009, 10, 1589–1600. [Google Scholar] [CrossRef]
- Multicopter PID Tuning Guide. Available online: https://docs.px4.io/en/config_mc/pid_tuning_guide_multicopter.html (accessed on 19 November 2018).
- How to Tune PID I-Term on a Quadcopter. Available online: https://quadmeup.com/how-to-tune-pid-i-term-on-a-quadcopter/ (accessed on 18 November 2018).
- Quadcopter PID Explained. Available online: https://oscarliang.com/quadcopter-pid-explained-tuning/ (accessed on 18 November 2018).
- Arimoto, S.; Kawamura, S.; Miyazaki, F. Bettering operation of robots by learning. J. Robot. Syst. 1984, 1, 123–140. [Google Scholar] [CrossRef]
- Parrot BEBOP 2. The Lightweight, Compact HD Video Drone. Available online: https://www.parrot.com/us/drones/parrot-bebop-2 (accessed on 26 November 2018).
- AeroLab Poznan University of Technology Drone Laboratory Webpage. Available online: http://uav.put.poznan.pl/AeroLab (accessed on 2 December 2018).
- What is Sphinx. Available online: https://developer.parrot.com/docs/sphinx/whatissphinx.html (accessed on 18 November 2018).
- bebop_autonomy—ROS Driver for Parrot Bebop Drone (quadrocopter) 1.0 & 2.0. Available online: https://bebop-autonomy.readthedocs.io/en/latest/ (accessed on 18 November 2018).
- Giernacki, W.; Horla, D.; Sadalla, T.; Espinoza Fraire, T. Optimal Tuning of Non-integer Order Controllers for Rotational Speed Control of UAV’s Propulsion Unit Based on an Iterative Batch Method. J. Control Eng. Appl. Inform. 2018, 24, 22–31. [Google Scholar]
Symbol of Variable | Explanation |
---|---|
, | weights (in cost function J) |
, , | , , angles |
golden-search reduction factor | |
expected accuracy in GLD method | |
body frame of reference | |
considered range for the optimized parameter at k-th iteration | |
Earth frame of reference | |
tracking error (in time domain) | |
cost function (in GLD method) | |
J | performance index (cost function in GLD procedure) |
, , | proportional/integral/derivative gains |
N | minimal number of iterations required to ensure accuracy |
number of the predefined bootstrap cycles | |
number of sampling periods necessary to calculate J at l-th iteration of the GLD | |
number of sampling periods related to the length of the tuning procedure | |
vector of desired UAV position | |
vector of measured UAV position | |
time of gathering information for calculation of J in GLD methods | |
flight time horizon | |
time constant of a low-pass filter of transfer function | |
sampling period for calculation of J | |
sampling period in low-pass filter | |
control signal (in time domain) | |
lower bound for optimized parameter at k-th iteration | |
upper bound for optimized parameter at k-th iteration | |
candidate point in the optimization procedure | |
iterative estimate of the optimal solution | |
, , | axes of the |
, , | desired position coordinates |
, , | axes of the |
, , | measured position of the UAV |
Bootstrap No. | Gain No.1 | Gain No.2 |
---|---|---|
1 | Tuning (according to the GLD REM) | Kept constant |
1 | Kept constant | Tuning |
2 | Tuning | Kept constant |
2 | Kept constant | Tuning |
... | ... | ... |
Tuning | Kept constant | |
Kept constant | Tuning |
Parameter | Value |
---|---|
accelerometer & gyroscope | 3-axes MPU 6050 |
pressure sensor (barometer) | MS5607 (analyses the flight altitude beyond 4.9 m) |
ultrasound sensor | analyses the flight altitude up to 8 m |
magnetometer | 3-axes AKM 8963 |
geolocalization | Furuno GN-87F GNSS module (GPS+GLONASS+Galileo) |
Wi-Fi Aerials | 2.4 and 5 GHz dual dipole |
vertical stabilization camera | photo every 16 ms |
camera | 14 Mpx 3-axis Full HD 1080p with Sunny 180 fish-eye lens: 1/2.3” |
X-axis | Y-axis | Z-axis | ||||
---|---|---|---|---|---|---|
0.69 | 0.69 | 1.32 | default | default | 0.07 | |
0.00015 | 0.00015 | 0.0003 | default | default | 0.00001 | |
50 | 50 | 10.2 | default | default | 0.9 |
FIB | GLD | FIB | GLD | FIB | GLD | |
---|---|---|---|---|---|---|
1.0 | 1.0 | 0.9 | 0.9 | 0.8 | 0.8 | |
0.0 | 0.0 | 0.1 | 0.1 | 0.2 | 0.2 | |
2.0 | 2.0 | 10.0 | 10.0 | 18.0 | 18.0 | |
range | [0.5,5.0] | [0.5,5.0] | [0.5,5.0] | [0.5,5.0] | [0.5,5.0] | [0.5,5.0] |
range | [1.0,20.0] | [1.0,20.0] | [1.0,20.0] | [1.0,20.0] | [1.0,20.0] | [1.0,20.0] |
No. of bootstrap cycles | 2 | 2 | 2 | 2 | 2 | 2 |
No. of main iterations | 48 | 56 | 48 | 56 | 48 | 56 |
Tuning time [sec] | 576 | 672 | 576 | 672 | 576 | 672 |
Low-pass filtration | yes | yes | yes | yes | yes | yes |
0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | |
Best and values | 3.56/8.70 | 3.70/8.18 | 4.63/5.99 | 4.49/8.58 | 4.23/10.51 | 4.39/15.44 |
(after the 1st bootstrap) | 6.8235 | 5.4575 | 5.7596 | 5.4865 | 5.9641 | 5.8197 |
(after 48 iter.) | 6.0969 | 5.5024 | 5.4882 | 5.4492 | 5.8815 | 5.9059 |
(after the tuning proc.) | 6.0969 | 5.4149 | 5.4882 | 5.4068 | 5.8815 | 6.0298 |
(average for tuning proc.) | 6.7264 | 5.4754 | 5.7730 | 5.5643 | 6.0345 | 5.9376 |
GRIP | TOOL | GRIP | TOOL | GRIP | TOOL | |
---|---|---|---|---|---|---|
1.0 | 1.0 | 0.9 | 0.9 | 0.8 | 0.8 | |
0.0 | 0.0 | 0.1 | 0.1 | 0.2 | 0.2 | |
10.0 | 10.0 | 10.0 | 10.0 | 10.0 | 10.0 | |
range | [0.5,5.0] | [0.5,5.0] | [0.5,5.0] | [0.5,5.0] | [0.5,5.0] | [0.5,5.0] |
range | [1.0,20.0] | [1.0,20.0] | [1.0,20.0] | [1.0,20.0] | [1.0,20.0] | [1.0,20.0] |
Best and values | 2.30/15.11 | 2.39/18.94 | 2.20/17.88 | 1.08/18.94 | 0.82/15.77 | 0.67/13.40 |
(after the 1st bootstrap) | 7.5143 | 7.9741 | 7.6119 | 7.6654 | 7.5773 | 7.5454 |
(after the tuning proc.) | 7.5150 | 7.8334 | 7.5473 | 7.6591 | 7.7385 | 7.4198 |
(average for tuning proc.) | 7.4306 | 7.9191 | 7.7877 | 7.5485 | 7.5906 | 7.5454 |
Exp.1 | Exp.2 | Exp.3 | |
---|---|---|---|
1.0 | 0.9 | 0.8 | |
0.0 | 0.1 | 0.2 | |
10.0 | 10.0 | 10.0 | |
range | [0.5,5.0] | [0.5,5.0] | [0.5,5.0] |
range | [1.0,20.0] | [1.0,20.0] | [1.0,20.0] |
Best and values | 3.92/7.85 | 4.02/9.57 | 3.20/11.68 |
(after the 1st bootstrap) | 2.5070 | 2.4992 | 2.6096 |
(after the tuning proc.) | 1.7583 | 2.5779 | 2.5255 |
(average for tuning proc.) | 2.8091 | 2.4566 | 2.6553 |
© 2019 by the author. 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/).
Share and Cite
Giernacki, W. Iterative Learning Method for In-Flight Auto-Tuning of UAV Controllers Based on Basic Sensory Information. Appl. Sci. 2019, 9, 648. https://doi.org/10.3390/app9040648
Giernacki W. Iterative Learning Method for In-Flight Auto-Tuning of UAV Controllers Based on Basic Sensory Information. Applied Sciences. 2019; 9(4):648. https://doi.org/10.3390/app9040648
Chicago/Turabian StyleGiernacki, Wojciech. 2019. "Iterative Learning Method for In-Flight Auto-Tuning of UAV Controllers Based on Basic Sensory Information" Applied Sciences 9, no. 4: 648. https://doi.org/10.3390/app9040648
APA StyleGiernacki, W. (2019). Iterative Learning Method for In-Flight Auto-Tuning of UAV Controllers Based on Basic Sensory Information. Applied Sciences, 9(4), 648. https://doi.org/10.3390/app9040648