Abstract
In this paper, we detail the development of mini-drones and propose a Genetic Vector Field (GVF) algorithm for multi-agent path planning. The developed mini-drone has a compact size, with a wheelbase of 130 mm and mass of 76 g, including all the sensors necessary for autonomous flight in an outdoor environment. In addition, the mini-drone can successfully complete a complex multi-agent flight mission via the integrated Linux computer and wireless network system that allows real-time feedback. The control system of the mini-drone is designed as based on the dynamics established by the system identification process, which is developed as based on actual flight data; in addition, a complementary filter is adopted for the navigation algorithm to reduce computational cost, which is essential to increasing the update rate. The proposed GVF algorithm utilizes a vector field algorithm to generate the path to track the given target while also avoiding collisions with other agents and obstacles. Moreover, because the GVF algorithm optimally allocates the targets to each agent using a modified genetic algorithm, the proposed algorithm can generate optimal paths for multiple agents. This algorithm has been implemented in the integrated Linux computer of the mini-drone, and the feasibility has been verified by carrying out several flight tests in actual outdoor environments.
Similar content being viewed by others
Abbreviations
- F f :
-
Forgetting factor
- ω c :
-
Cut-off frequency
- θ cmd,sum ϕ cmd,sum :
-
Attitude control command (pitch, roll)
- C lon C lat C down :
-
Coefficient reflecting drag effect (longitudinal, lateral, and downward)
- v lon,wind v lat,wind :
-
Wind speed (longitudinal and lateral)
- C thr :
-
Throttle coefficient
- u thr u thr,trim :
-
Throttle input and throttle trim
- u FL,lon u FL,lat u FL,down :
-
Control input to feedback linearization controller
- r :
-
Yaw rate
- a lon a lat a down :
-
Linear acceleration (longitudinal, lateral, and downward)
- \( \hat{a}_{\text{lon}} \,\,\,\hat{a}_{\text{lat}} \,\,\,\hat{a}_{\text{down}} \) :
-
Estimated linear acceleration (longitudinal, lateral, and downward)
- L lon L lat L down :
-
Luenberger observer gain (longitudinal, lateral, and downward)
- t k,elapsed :
-
Elapsed time of kth member
- f k :
-
Fitness value of kth member
- \( \vec{A}_{\text{VF,unsat}} \,\,\,\vec{A}_{\text{VF}} \) :
-
Acceleration vector from vector field (unsaturated and saturated)
- \( \vec{r}_{\text{T}} \,\,\,\vec{r}_{{{\text{a}},i}} \,\,\,\vec{r}_{{{\text{o}},i}} \) :
-
Relative position vector (target, ith agent, ith obstacle)
- \( \vec{e}_{\text{T}} \,\,\,\vec{e}_{{{\text{a}},i}} \,\,\,\vec{e}_{{{\text{o}},i}} \) :
-
Unit vector of relative position vector (target, ith agent, ith obstacle)
- k VF :
-
Vector field gain
- \( \vec{V}_{\text{VF,unsat}} \,\,\,\vec{V}_{\text{VF}} \) :
-
Velocity vector from vector field (unsaturated and saturated)
- \( \vec{V}_{\text{cur}} \) :
-
Current velocity vector
- T s :
-
Sampling time
- \( \vec{A}_{\text{cmd}} \) :
-
Acceleration command vector
- T * :
-
Optimally assigned target
- M k :
-
kth member
- POP_SIZE:
-
Population size
- MAX_ITER:
-
Maximum number of iterations
- MAX_ACC:
-
Maximum acceleration magnitude
- MAX_VEL:
-
Maximum velocity magnitude
References
Gati B (2013) Open source autopilot for academic research—the Paparazzi system. Am Control Conf (ACC) 2013:1478–1481. https://doi.org/10.1109/ACC.2013.6580045
Meier L, Tanskaren P, Fraundorfer F, Pollefeys M (2011) PIXHAWK: a system for autonomous flight using onboard computer vision. In: Proceedings of the IEEE international conference on robotics and automation (ICRA), pp 2992–2997. https://doi.org/10.1109/icra.2011.5980229
Lim H, Park J, Lee D, Kim HJ (2012) Build your own quadrotors: open-source projects on unmanned aerial vehicles. IEEE Robot Autom Mag 19(3):33–45. https://doi.org/10.1109/MRA.2012.2205629
Kang J, Lee D, Shim DH (2016) Development of mini drone platform based on Linux computer. In: Proceedings of the KSAS 2016 fall conference, pp 575–576
Lee D, Cho S, Shim DH (2017) Development of mini quadrotor platform and experiments on outdoor autonomous swarming flight. J Inst Control Robot Syst 23(11):905–911. https://doi.org/10.5302/J.ICROS.2017.17.0167
Lee D, Shim DH (2017) Development of mini quadrotor platform and outdoor autonomous swarming flight using 20 quadrotors. In: Proceedings of the KSAS 2017 fall conference, pp 313–314
LaValle SM (2006) Planning algorithms, 1st edn. Cambridge University Press, Cambridge
Liang Y, Jia Y, Du J, Zhang J (2015) Vector field guidance for three-dimensional curved path following with fixed-wing UAVs. In: Proceedings of the American control conference (ACC), pp 1187–1192 https://doi.org/10.1109/acc.2015.7170894
Lim S, Jung W, Bang H (2014) Vector field guidance for path following and arrival angle control. In: Proceedings of the international conference on unmanned aircraft systems (ICUAS), pp 329–338. https://doi.org/10.1109/icuas.2014.6842271
Jung W, Lim S, Lee D, Bang H (2016) Unmanned aircraft vector field path following with arrival angle control. J Intell Robot Syst 84(1–4):311–325. https://doi.org/10.1007/s10846-016-0332-5
Marina HG, Kapitanyuk YA, Bronz M, Hattenberger G, Cao M (2017) Guidance algorithm for smooth trajectory tracking of a fixed wing UAV flying in wind flows. In: Proceedings of the IEEE international conference on robotics and automation (ICRA), pp 5740–5745. https://doi.org/10.1109/icra.2017.7989674
Holland JH (1992) Adaptation in natural and artificial systems, 1st edn. MIT Press, New York
Man KF, Tang KS, Kwong S (1996) Genetic algorithms: concepts and applications. IEEE Trans Ind Electron 43(5):519–534. https://doi.org/10.1109/41.538609
Leung FHF, Lam HK, Ling SH, Tam PKS (2003) Tuning of the structure and parameters of a neural network using an improved genetic algorithm. IEEE Trans Neural Netw 14(1):79–88. https://doi.org/10.1109/TNN.2002.804317
Oghim S, Lee C-Y, Leeghim H (2017) Minimum-energy spacecraft intercept on non-coplanar elliptical orbits using genetic algorithms. Int J Aeronaut Space Sci 18(4):729–739. https://doi.org/10.5139/IJASS.2017.18.4.729
Kalman RE (1960) A new approach to linear filtering and prediction problems. J Basic Eng 82(1):35–45. https://doi.org/10.1115/1.3662552
Julier SJ, Uhlmann JK (2004) Unscented filtering and nonlinear estimation. Proc IEEE 92(3):401–422. https://doi.org/10.1109/JPROC.2003.823141
Higgins WT (1975) A comparison of complementary and Kalman filtering. In: IEEE transactions on aerospace and electronic systems, vol AES-11(3), pp 321–325. https://doi.org/10.1109/taes.1975.308081
Mahony R, Hamel T, Pflimlin J-M (2005) Complementary filter design on the special orthogonal group SO(3). In: Proceedings of the IEEE conference on decision and control, and the European control conference (CDC-ECC), 2005, pp 1477–1484. https://doi.org/10.1109/cdc.2005.1582367
Mahony R, Hamel T, Pflimlin J-M (2008) Nonlinear complementary filters on the special orthogonal group. IEEE Trans Autom Control 53(5):1203–1218. https://doi.org/10.1109/TAC.2008.923738
Blanchard RL (1971) A new algorithm for computing inertial altitude and vertical velocity. In: IEEE transactions on aerospace and electronic systems, vol AES-7(6), pp 1143–1146. https://doi.org/10.1109/taes.1971.310216
Kim S-P, Yoo C-S, Salychev O-S, Kim E-T (2005) Development of altitude determination system by using GPS/INS/baroaltimeter. J Korean Soc Aeronaut Space Sci 33(6):51–56. https://doi.org/10.5139/JKSAS.2005.33.6.051
Lee D, Shim DH (2017) Design and validation of low-cost flight control computer for multi-rotor UAVs. J Korean Soc Aeronaut Space Sci 45(5):401–408. https://doi.org/10.5139/JKSAS.2017.45.5.401
Mokhtari A, Benallegue A, Daachi B (2005) Robust feedback linearization and controller for a quadrotor unmanned aerial vehicles. In: Proceedings of the IEEE/RSJ international conference on intelligent robots and systems, pp 1009–1014
Benallegue A, Mokhtari A, Fridman L (2006) Feedback linearization and high order sliding mode observer for a quadrotor UAV. In: Proceedings of the international workshop on variable structure systems, pp 365–372. https://doi.org/10.1109/vss.2006.1644545
Luenberger D (1966) Observers for multivariable systems. IEEE Trans Autom Control 11(2):190–197. https://doi.org/10.1109/TAC.1966.1098323
Lee D, Lee H, Lee J, Shim DH (2017) Design, implementation, and flight tests of a feedback linearization controller for multirotor UAVs. Int J Aeronaut Space Sci 18(4):740–756. https://doi.org/10.5139/IJASS.2017.18.4.740
Acknowledgements
This work was supported by Institute for Information & Communications Technology Promotion (IITP) grant funded by the Korea government (MSIT) (no. R0126-17-1005, Development of High Reliable Communications and Security SW for Various Unmanned Vehicles).
Author information
Authors and Affiliations
Corresponding author
Appendix
Appendix
To acquire the dynamics required for controller design, MATLAB® System Identification Toolbox™ was utilized to establish system identification. Since the roll and pitch axes are symmetric, we experimented for the pitch and yaw axes only; the results are shown in Table 4. Figures 18 and 19 show the results of system identification for the pitch and yaw axes, respectively. In both figures, the blue and red lines in the upper graph represent the data measured and estimated by the established dynamics, and the lower graph corresponds to the input data.
The pitch and yaw axes dynamics are a second- and first-order system, respectively, and the fit values for the pitch and yaw axes are 70.8 and 82.3, respectively. These values are calculated using the function, ‘goodnessOfFit’, which is a MATLAB internal function.
Rights and permissions
About this article
Cite this article
Lee, D., Shim, D.H. A Mini-drone Development, Genetic Vector Field-Based Multi-agent Path Planning, and Flight Tests. Int. J. Aeronaut. Space Sci. 19, 785–797 (2018). https://doi.org/10.1007/s42405-018-0052-0
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s42405-018-0052-0