A Survey of Open-Source UAV Flight Controllers and Flight Simulators
Total Page:16
File Type:pdf, Size:1020Kb
University of Southern Denmark A Survey of Open-Source UAV Flight Controllers and Flight Simulators Ebeid, Emad Samuel Malki; Skriver, Martin; Terkildsen, Kristian Husum; Jensen, Kjeld; Schultz, Ulrik Pagh Published in: Microprocessors and Microsystems DOI: 10.1016/j.micpro.2018.05.002 Publication date: 2018 Document version: Accepted manuscript Document license: CC BY-NC-ND Citation for pulished version (APA): Ebeid, E. S. M., Skriver, M., Terkildsen, K. H., Jensen, K., & Schultz, U. P. (2018). A Survey of Open-Source UAV Flight Controllers and Flight Simulators. Microprocessors and Microsystems, 61, 11-20. https://doi.org/10.1016/j.micpro.2018.05.002 Go to publication entry in University of Southern Denmark's Research Portal Terms of use This work is brought to you by the University of Southern Denmark. Unless otherwise specified it has been shared according to the terms for self-archiving. If no other license is stated, these terms apply: • You may download this work for personal use only. • You may not further distribute the material or use it for any profit-making activity or commercial gain • You may freely distribute the URL identifying this open access version If you believe that this document breaches copyright please contact us providing details and we will investigate your claim. Please direct all enquiries to [email protected] Download date: 10. Oct. 2021 Accepted Manuscript A Survey of Open-Source UAV Flight Controllers and Flight Simulators Emad Ebeid, Martin Skriver, Kristian Husum Terkildsen, Kjeld Jensen, Ulrik Pagh Schultz PII: S0141-9331(18)30093-0 DOI: 10.1016/j.micpro.2018.05.002 Reference: MICPRO 2683 To appear in: Microprocessors and Microsystems Received date: 20 February 2018 Accepted date: 7 May 2018 Please cite this article as: Emad Ebeid, Martin Skriver, Kristian Husum Terkildsen, Kjeld Jensen, Ulrik Pagh Schultz, A Survey of Open-Source UAV Flight Controllers and Flight Simulators, Micro- processors and Microsystems (2018), doi: 10.1016/j.micpro.2018.05.002 This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain. ACCEPTED MANUSCRIPT A Survey of Open-Source UAV Flight Controllers and Flight Simulators Emad Ebeid∗, Martin Skriver, Kristian Husum Terkildsen, Kjeld Jensen, Ulrik Pagh Schultz SDU UAS Center, University of Southern Denmark, Campusvej 55, Odense, Denmark Abstract The current disruptive innovation in civilian drone (UAV)applications has led to an increased need for research and development in UAV technology. The key challenges currently being addressed are related to UAV platform properties such as functionality, reliability, fault tolerance, and endurance, which are all tightly linked to the UAV flight controller hardware and software. The lack of standardization of flight controller architectures and the use of proprietary closed-source flight controllers on many UAV platforms, however, complicates this work: solutions developed for one flight controller may be difficult to port to another without substantial extra development and testing. Using open-source flight controllers mitigates some of these challenges and enables other researchers to validate and build upon existing research. This paper presents a survey of the publicly available open-source drone platform elements that can be used for research and development. The survey covers open-source hardware, software, and simulation drone platforms and compares their main features. Keywords: Unmanned Aerial Vehicle (UAV), Drones, Flight Controllers, Drone Simulators, Open Platforms, Survey. 1. Introduction In this work, we present a survey on open-source flight con- trollers designed for UAVs. The survey is based on 20+ flight The current disruptive innovation in civilian drone 30 controllers publicly available on the web. We relate flight con- (Unmanned Aerial Vehicle, UAV) applications and the troller hardware (Section 2) to flight controller software (Sec- associated growth in the drone industry has led to an increased tion 3) and compare features, specifications, license types etc. 5 need for research and development in UAV technology. While of each controller and software. Simulation is often used for applications such as aerial filming, mapping, and inspection software functionality experiments tests before performing ac- can be accomplished within the current legal framework and 35 tual flight tests, especially in flight controller research and de- using technology already available on the market, the industry velopment which can minimize the risk of loss of control dur- is pushing to break down the barriers which will enable ing test flights and save time. We include a survey of open- 10 entirely new markets in logistics, e-commerce, surveillance source simulation systems (Section 4), some of which support etc. Examples of these barriers are Beyond Visual Line hardware-in-the-loop or software-in-the-loop simulation. Cur- of Sight (BVLOS) flights, which by many stakeholders is 40 rently, UAVs are under constant and rapid technological devel- considered to be the next game-changer in the UAV business, opment, and the reader should note that the information de- autonomous operations not supervised by a pilot, and long scribed in this paper is as of February 2018. 15 range flights using small UAVs. Industry and academia are collaborating on solving the associated challenges, which 1.1. Related work are related to UAV platform properties such as functionality, In 2010 Cao et al. presented a survey of autopilot systems reliability, fault tolerance, and endurance, which are all tightly 45 for small or micro UAVs systems with the objective of provid- linked to the UAV flight controller hardware and software. ing a summary of the available commercial, open-source and 20 The lack of standardization of flight controller architectures research autopilot systems in the market at that moment for po- and the use of proprietary closed-source flight controllers on tential users of small UAV [1]. In 2011 Meszar´ os´ surveyed many UAV platforms, however, complicates this work, as open-source hardware and software for fixed-wing UAV plat- solutions developedACCEPTED for one flight controller may be difficult MANUSCRIPT 50 forms, including a design of a small fixed-wing UAV based on to port to another without substantial extra development and one of the presented systems with its first field test [2]. In 2012 25 testing if at all legally possible. Using open-source flight Lim et al. surveyed publicly available open-source projects for controllers mitigates some of these challenges and enables quadrotor UAV systems, presenting eight quadrotors with de- other researchers to validate and build upon existing research. scriptions of their avionics, sensor composition, analysis of atti- 55 tude estimation and control algorithms, and comparison of their additional features [3]. In 2016 Sabikan and Nawawi presented ∗Corresponding author. Email address: [email protected] (Emad Ebeid) a general view of the implementation of an open-source quad- copter platform to develop a quadcopter research testbed [4], Preprint submitted to Journal of Microprocessors and Microsystems: Embedded Hardware Design May 14, 2018 ACCEPTED MANUSCRIPT with the aim of making the proposed platform expendable and Table 1: Comparison of MCUs, sensors and licenses for OSH flight controller 60 usable in any application area; they briefly mention a couple of platforms. Sensors: all platforms have IMUs. Interfaces: all platforms support open-source flight controller platforms, of which one of them UART, PWM, and I2C. has been used in their work Platform MCU Sensors License Interfaces Pixhawk [10] STM32F427 b, m BSD c, s, a, pp, sb, ds Pixhawk 2 [11] STM32F427 b, m CC-BYSA-3.0 c, s, a, pp, sb, ds 1.2. Unmanned Aerial Vehicles PixRacer [12] STM32F427 b, m CC-BY 4.0 c, pp, sb, ds Pixhawk 3 Pro [13] STM32F427 b, m CC BY 4.0 c, s, pp, sb, ds For an introduction to the basics of UAV systems, we refer PX4 FMUv5 and v6 [14] STM32F427 b, m CC BY 4.0 c, s, a, pp, sb, ds Sparky2 [15] STM32F405 b, m CC BY-NC-SA 4.0 c, pp, sb, ds, da 65 the interested reader to the textbook by Fahlstrom and Glea- Chimera [16] STM32F767 b, m, p GPLv2 c, s, a, da, pp, sb, ds, x, au son [5]. We, however, note that compared to control systems CC3D [17] STM32F103 None GPLv3 pp, ds, sb Atom [17] STM32F103 None GPLv3 pp, ds, sb for other advanced autonomous systems such as robotics, the APM 2.8 [18] ATmega2560 b GPLv3 pp, a FlyMaple [19] STM32F103 b, m GPLv3 None control of UAVs presents two unique challenges. First, UAVs Erle-Brain 3 [20] Raspberry Pi b, m CC BY-NC-SA a have severe constraints in terms of Size, Weight, and Power PXFmini [20] Raspberry Pi b, m CC BY-NC-SA a AeroQuad[d] STM32F407 b, m GPLv2 - 70 (SWaP) [6] not found to the same extent in robotics in gen- Mikrokopter[d] ATmega644 b - s, pp eral. Second, UAV control systems are in practice almost al- MatrixPilot[d] dsPIC33FJ256 None GPLv3 None ways safety-critical systems due to the primary purpose of the b: barometer, m: magnetometer, p: pitot tube sensor, c: CAN, s: SPI, a: ADC, pp: PPM, UAV being operation in open-ended environments where hu- sb: S.BUS, ds: DSM, da: DAC, x: XBEE, au: AUX, [d]: discontinued. mans may be present [7]. 75 In addition, each UAV platform comes with a license for governing the use or redistribution. We refer to the reader to Table 2: Comparison between OSH flight controller platforms.