Design & implementation of an UAV (Drone) with flight data record

Ieee account.

  • Change Username/Password
  • Update Address

Purchase Details

  • Payment Options
  • Order History
  • View Purchased Documents

Profile Information

  • Communications Preferences
  • Profession and Education
  • Technical Interests
  • US & Canada: +1 800 678 4333
  • Worldwide: +1 732 981 0060
  • Contact & Support
  • About IEEE Xplore
  • Accessibility
  • Terms of Use
  • Nondiscrimination Policy
  • Privacy & Opting Out of Cookies

A not-for-profit organization, IEEE is the world's largest technical professional organization dedicated to advancing technology for the benefit of humanity. © Copyright 2024 IEEE - All rights reserved. Use of this web site signifies your agreement to the terms and conditions.

A review on drones controlled in real-time

  • Open access
  • Published: 05 January 2021
  • Volume 9 , pages 1832–1846, ( 2021 )

Cite this article

You have full access to this open access article

  • Vemema Kangunde   ORCID: orcid.org/0000-0001-7169-7632 1 ,
  • Rodrigo S. Jamisola Jr. 1 &
  • Emmanuel K. Theophilus 1  

22k Accesses

46 Citations

Explore all metrics

This paper presents related literature review on drones or unmanned aerial vehicles that are controlled in real-time. Systems in real-time control create more deterministic response such that tasks are guaranteed to be completed within a specified time. This system characteristic is very much desirable for drones that are now required to perform more sophisticated tasks. The reviewed materials presented were chosen to highlight drones that are controlled in real time, and to include technologies used in different applications of drones. Progress has been made in the development of highly maneuverable drones for applications such as monitoring, aerial mapping, military combat, agriculture, etc. The control of such highly maneuverable vehicles presents challenges such as real-time response, workload management, and complex control. This paper endeavours to discuss real-time aspects of drones control as well as possible implementation of real-time flight control system to enhance drones performance.

Similar content being viewed by others

research paper on drone design

Intelligent Autonomous Drones in Industry 4.0

research paper on drone design

Recent Developments and Trends in Unconventional UAVs Control: A Review

Saddam Hocine Derrouaoui, Yasser Bouzid, … Houria Siguerdidjane

research paper on drone design

Evolution and Significance of Unmanned Aerial Vehicles

Avoid common mistakes on your manuscript.

1 Introduction

A drone, also known as unmanned aerial vehicle (UAV), is an aircraft without a human pilot on board [ 1 , 2 ]. There has been a rapid development of drones for the past few decades due to the advancement of components such as micro electro-mechanical systems (MEMS) sensors, microprocessors, high energy lithium polymer (LiPo) batteries, as well as more efficient and compact actuators [ 3 , 4 , 5 ]. Drones are now present in many daily life activities [ 2 , 6 , 7 , 8 ]. They are used in many applications such as inspecting pipelines and power lines, surveillance and mapping, military combat, agriculture, delivery of medicines in remote areas, aerial mapping, and many others [ 2 , 9 , 10 , 11 , 12 ]. See Figs.  1 and 2 for some drones applications. Robotic manipulators, found in many applications [ 13 , 14 , 15 ], have in recent years been implemented on UAV platforms [ 16 , 17 , 18 ] for tasks such as aerial manipulation, grasping, and cooperative transportation. The unstable dynamics of the robotic arm, which increase control complexity of UAVs, have widely been studied in the literature [ 19 , 20 , 21 , 22 ].

UAVs technology is rapidly growing while UAV solutions are being proposed at faster rates as various needs arise. Drone features are determined by specific UAV applications as well as competition in the commercial market [ 23 , 23 , 24 , 25 ]. In [ 26 ], a review of the most recent applications of UAVs in the cryosphere was conducted. Compared to conventional spaceborne or airborne remote sensing platforms [ 27 , 28 , 29 ], UAVs offer more advantages in terms of data acquisition windows, revisits, sensor types, viewing angles, flying altitudes, and overlap dimensions [ 26 , 30 , 31 , 32 ]. The review shows that across the world, applications used various multirotor and fixed-wing UAV platforms. Red, green, blue (RGB) sensors were the most used, and applications utilised quality video transmission to the ground control station. The study in [ 33 ] demonstrates how versatile and fast-growing is the adoption of UAV solutions in daily life scenarios. They propose the design of a system capable of detecting coronavirus automatically from the thermal image quickly and with less human interactions using IoT-based drone technology. The UAV system is equipped with two cameras: an optical camera and a thermal camera. It conveys to the ground control station (GCS) the image of the person, the global positioning system (GPS) location as well as a thermal image of the hot body detected. The system combines IoT, virtual reality, and live video feedback to control the camera for monitoring people.

figure 1

Picture reprinted from https://aibirduav.diytrade.com

The KC2800 is a fixed-wing drone used for surveillance and mapping

figure 2

Picture reprinted from https://www.indiamart.com

Quadrotor drone spraying pesticide on crops

figure 3

Picture reprinted from  https://thewiredshopper.com

figure 4

Picture reprinted from https://thewiredshopper.com

On the other hand, apart from advancements in custom-made drones, commercial drone manufacturers are actively improving their products. Latest, more advanced drones are presented at https://thewiredshopper.com , see Figs. 3 and 4 . DJI Phantom 4, for example, is equipped with an automatic collision avoidance system. It has a sport mode that disables collision detection and enables fast speeds. It also has an active tracking technology that enables the selection of another moving object, like a car or another drone, and the Phantom 4 will autonomously follow it without assistance from the human pilot. The drone is equipped with a 3-axis camera and can record 4K resolution video at 30 fps and 1080p resolution at 12 fps. It will take 12-megapixel images in Adobe DNG raw format. It has gimbal stabilization technology and a built-in video editor. Other latest drones in the market include the AirDog drone by AirDog, 3DR Solo Drone by 3DRobotics, and Yuneec Typhoon H by Yuneec. A UAV’s operational environment is highly dynamic due to unpredictable changes in weather conditions affecting the air space. For drones to be reliable, their flight controllers must adapt to these environmental changes in real-time. Control of highly maneuverable UAVs has been extensively studied for the past decades.

2 Drone hardware overview

A UAV is controlled by an embedded computer called the Flight Control System (FCS) or flight controller [ 34 , 35 , 36 ], basically consisting of a control software loaded into a microcontroller. The microcontroller reads information from on-board sensors, such as accelerometers, gyroscopes, magnetometers, pressure sensors, GPS, etc.,as well as input from the pilot, perform control calculations, and control the motors on the UAV [ 37 , 38 ]. The FCS as well as the set of sensors would be mounted on the drone air frame. Drone air frames, typically made of strong, light composite materials, are mostly relatively small with limited space for avionics [ 39 , 40 ]. A set of sensors, such as TV cameras, infrared cameras, thermal sensors, chemical, biological sensors, meteorological sensors etc., used to gather information during drone applications need to be lightweight to reduce UAV payload [ 41 , 42 , 43 , 44 ]. The information gathered from the sensors can be partially processed on-board or transmitted to the ground station for further processing [ 45 , 46 , 47 ]. An on-board controller, separate from the flight controller, can be used to operate the payload sensors [ 48 , 49 , 50 ]. Figure 5 shows the Cc3d open source flight controller used as a UAV flight controller.

The Pixhawk flight controller is an open-source hardware project equipped with sensors necessary for flight control [ 51 , 52 , 53 ]. It includes a CPU with RAM as well as gyroscope, compass, 3-axis accelerometer, barometric pressure, and magnetometer [ 54 , 55 ]. The Paparazzi flight controller, developed by Ecole Nationale de lAviation Civil (ENAC) UAV Lab since 2003 [ 34 ], is the first and oldest open-source drone hardware and software project. In March 2017 ENAC Lab released the Paparazzi Chimera autopilot. A detailed survey on open-source flight controllers was disclosed by Ebeid et.al in [ 34 ]. An autopilot software is used for drone automatic flight control [ 56 ]. On the other hand, drones can be operated remotely through a remote controller [ 57 , 58 , 59 ].

figure 5

Picture reprinted from https://www.google.com/search?q=Cc3d++flight+controller

UAV hardware components

2.1 State observation

The FCS requires information on UAV states such as attitude, position, and velocity for control implementation [ 60 ]. The commonly used state observer is the inertial guidance system. Other attitude determination devices such as infrared or vision based sensors can be used [ 61 , 62 ]. The inertial guidance system (IGS), also referred to as inertial navigation system (INS) [ 63 ] consists of the inertial measurement unit (IMU) and the navigation computer. The IMU has three orthogonal rate-gyroscopes, three orthogonal accelerometers and sometimes 3-axis magnetometer to determine angular velocity, linear acceleration and orientation respectively [ 64 ]. Inertial guidance systems are entirely self reliant within a vehicle where they are used. They do not rely on transmission of signals from the vehicle or reception of signals from external sources. Inertial guidance systems can be used to estimate the location of the UAV relative to its initial position using a method known as dead reckoning [ 65 ]. Global navigation satellite system (GNSS) provides location estimates using at least four satellites [ 65 ].

2.2 State estimation

State estimation feedback is required for UAV control, such estimates are usually for attitude, position, and velocity [ 66 ]. On board sensor readings are fed to the UAV autopilot system to generate UAV state estimates [ 67 ]. The need for state estimation is due to the fact that data from measurement sensors is prone to uncertainties due to atmospheric disturbances, vibrations noise, inaccuracy of coordinate transformations, and missing measurements [ 68 ]. Sensors such as the GPS suffers from signal obstruction and reflections caused by nearby objects leading to missing or inadequate information [ 69 ].

To compensate for uncertainties and lack of information from individual sensors, multiple sensor data fusion can be employed to incorporate advantages of different types of sensors [ 70 ]. The altitude heading and reference system combines gyroscope, accelerometer, magnetometer, GPS and pressure sensors to measure UAV states. Sensor data for state estimates need to be updated at a relatively high frequency, normally above 20 Hz for small UAVs. Kalman filtering can be employed to make optimal estimations for sensors with lower update frequencies, such as the GPS, which typically has an update frequency of 4 Hz. Kalman filtering can also be used to process gyroscope readings which are susceptible to noise and drift. The other technique to improve gyroscopic readings is to model the gyroscope random noise and then offsetting it according to the model, this is referred to as model compensation [ 71 ].

2.3 Controller design for autopilots

Most current commercial and research autopilots focus on GPS-based waypoints navigation to follow a desires path [ 72 ]. Waypoint navigation is essential for autonomous control of UAVs for UAV tasks beyond the pilot’s sight. The pilot could control the UAV from the GCS using a graphical User Interface (GUI), the location as well as other needed information about the UAV would be displayed at the the GCS [ 45 ]. The path following control of a UAV involves the control of roll, pitch, altitude and air speed for trajectory tracking and waypoint navigation [ 73 ]. GPS waypoint navigation involves providing sequential GPS coordinates that contains locations and heights of the UAV flight [ 72 ]. The set of pr-programmed GPS waypoints then becomes the path for the UAV to follow [ 74 ]. In

2.4 Microcontrollers used

An FCS has sensor packages for state determination, on-board processors for control and estimation uses, and peripherals for communication links and data transfer. For small UAV applications , small, light weight, and often low power consumption hardware components for the FCS are preferable. Successful UAV control requires sensors used for attitude estimation to have good performance especially in mobile and temperature-varying environments [ 75 ]. Arduino is an open-source electronics platform found in a wide variety of application projects. The board is capable of reading inputs from various sensors and generates required outputs. It comes comes with different processors and board sizes. Arduino Nano was used in [ 76 ] to develop an instrumentation system to collect flight data such as airspeed, orientation, and altitude, e.t.c. The system will then transmit the flight data over a radio frequency module.

2.5 Rotors configuration

There are different types of drones, they can generally be categorised as single rotor helicopter, fixed wing and multi-rotor drones [ 77 , 78 ]. Nowadays researchers endeavors to combine the advantages of fixed wing and multi-rotor drones [ 77 ]. Fixed wing drones are renowned for their endurance whereas helicopters and multirotors have the the advantage of VTOL as well as hovering. Quad-rotor drones are most common and belongs to the multi-copter family [ 77 ]. The quad-rotor unmanned aerial vehicle (UAV) are drones with four rotors typically designed in a cross configuration with two pairs of opposite rotors rotating clockwise and the other rotor pair rotating counter-clockwise to balance the torque. The roll, pitch, yaw and up-thrust actions are controlled by changing the thrusts of the rotors using pulse width modulation (PWM) to give the desired output [ 79 ]. Typically, the structure of a quad-rotor is simple enough, which comprises four rotors attached at the ends of arms under a symmetric frame. The dominating forces and moments acting on the quadrotor are given by rotors, driven with motors, mostly brushless DC motors. There are two basic types of quad-rotor configurations; plus and cross configurations [ 80 ]. The difference between these configurations is where the front of the quadcopter is located. To counteract reactional torque due to propeller rotation, two diagonal pair of motors (1 and 2) rotate anticlockwise while the other pair, motors (3 and 4), rotate clockwise [ 80 ]. In contrast to the plus configuration, for the same desired motion, the cross-style provides higher momentum which can increase the maneuverability performances, each move requires all four blades to vary their rotation speed [ 81 ]. However, the attitude control is basically analogous. Figure  6 shows the quadrotor cross and plus configurations respectively. The red cross depicts direction to the front of the quadrotor, in this case to the right of the pictures in the figure.

figure 6

Picture reprinted from [ 82 ]

Quadrotor cross and plus Configuaration

The quad-rotors translational motion depends on the tilting of rotor craft platform towards the desired orientation. Hence, it should be noted that the translational and rotational motion are tightly coupled because the change of rotating speed of one rotor causes motion in three degrees of freedom. This is the reason that allows the quad-rotor with six degrees of freedom (DOF) to be controlled by four rotors; therefore the quad-rotor is an under actuated system [ 83 ]. In principle, a quad-rotor is dynamically unstable and therefore proper control is necessary to make it stable. Despite the unstable dynamics, it has good agility. The instability comes from the changing rotor craft parameters and the environmental disturbances such as wind. In addition, the lack of damping and the cross-coupling between degrees of freedom make it very sensitive to disturbances.

2.6 Sensors used

Essential to drone flight is the Inertial Guidance System, this is an electronic system that continuously monitors position, velocity and acceleration by means of incorporated sensor set. It consists of 3-axis rate gyro and 3-axis accelerometer as well as a magnetometer. The IGS readings are filtered to estimate the attitude of the UAV. Recent developments in computing and MEMs technology has seen the decrease in size of IGS sensors [ 84 ]. Thus for small UAVs, a micro IGS can be used to provide a complete set of sensor readings [ 75 ]. Attitude information can also be estimated using infrared (IR) thermopile sensors. They work on the fact that the earth emits more IR than the sky by measuring the heat difference between two sensors on one axis to determine the angle of the UAV. Other sensors such as Vision sensors, either by themselves or combined with inertial measurements sensors can also be used for attitude estimation [ 85 ].

3 Required software components for real-time implementation

Real-time control requires hardware and software systems to be implemented together. Several definitions for real-time systems can be found in the literature. A good definition that we found states that; “a real-time system is one in which the correctness of a result not only depends on the logical correctness of a calculation but also upon the time at which the result is made available” https://www.ibm.com . There is a time requirement, referred to as a deadline, under which the system tasks must be performed. The primary objective is to ensure a timely and deterministic response to events. In the context of drone control, such tasks are normally intended to react to external events in real-time. Thus such real-time tasks are required to keep up with external changes affecting drone performance. Tasks required to meet their deadlines to avoid catastrophic consequences are called hard real-time tasks. When meeting the deadline is desirable but not mandatory, the task is considered soft real-time task [ 86 ].

3.1 Real-time operating systems

A real-time operating system (RTOS) provides services such as multitasking, scheduling, inter-task communication, etc., to facilitate the implementation of real time-time systems [ 87 ]. An RTOS is the key component needed to build a real-time system. Other software pieces such as compilers, linker, debugger and drivers are necessary to interface with system hardware: https://www.ni.com . RTOSs are employed in the development of many applications such as Internet of Things (IoT), automotive , medical suystems, robotics, industrial automation, avionics, and flight control systems [ 88 , 89 ]. RTOSs mainly focus on task predictability and efficiency, therefore have features to support timing constraints for application tasks [ 90 ]. There are several categories of RTOS; small, proprietary kernels as well as real-time extensions to commercial time-sharing operating systems such as Unix and Linux. The kernel is the core, an essential center of the RTOS, or any computer operating system. It is responsible for memory management, processing, and task management, and to interface with hardware and application software. Small, proprietary kernels are often used in embedded applications when very fast and highly predictable execution must be guaranteed. Meeting time constraints requires kernels to be small in size, which reduces RTOS overhead. Kernels must also have a fast context switch, support for multi-tasking, priority-based preemption, provide a bounded execution time for most primitives, and maintain a high-resolution real-time clock [ 90 ].

3.2 Scheduling and prioritisation

Appropriate task scheduling in real-time applications is the basic mechanism adopted by an RTOS to meet time constraints of tasks [ 90 ]. It is the responsibility of the application developer to choose an RTOS that will schedule and execute these tasks to meet their constraints. For a given application, if a set of tasks can be scheduled such that they all meet their deadline, then the tasks are said to schedulable [ 91 ] In priority-driven (PD) scheduling, priorities are assigned to tasks. A task with the closest deadline than any other task is considered the highest priority task [ 92 ]. Embedded time critical applications employ the real-time scheduler to ensure low latency and meeting time constraints. Numeric priorities are assigned to threads constituting tasks, and only the highest priority task is selected to run by the scheduler. A higher priority task can preempt a lower priority task at any point of its execution [ 93 ].

However task priorities can also be dynamic such that a low priority task may temporary elevates its priority to prevent interruption during execution of its critical section. Preemption thresholds can also be set by considering task priority as well as task urgency. Both priority and Urgency are quantified such that it is possible for urgency to take precedence when scheduling tasks [ 86 , 93 ]. Multithreaded parallel programming systems (MPPS) has a characteristic that data is shared among threads. It is important that access to shared data is controlled to avoid associated concurrency errors. As an example, suppose a task alters or updates a global variable, it is necessary for the task to have exclusive access to that variable while it is executing, otherwise concurrent access to the same variable by other tasks will lead to data races, leading to miscompilations.Access of shared data by one task at a time can be achieved by use of Mutual exclusion locks (mutexes) [ 93 ].

3.3 Sensor inputs and feedback control

The common drone platform has a specialised software running on a computer at the ground control station. It allows users to monitor and send control messages to affect drone’s state and actions remotely. Aboard the drone, the autopilot software combines operator inputs and sensor feedback information to directly control UAV actuators [ 94 ]. Sensors onboard the UAV provide feedback data essential to determine the drone’s position and attitude. A stereo camera was proposed for obstacle avoidance as well as velocity estimation in [ 95 ]. In [ 96 ], vision and IMU sensors were employed for automatic navigation and landing of an AR drone quadrotor. A landing marker was positioned in the drone frontal camera’s sight of view, see Fig.  7 . The landing marker position is the desired position \(X_d\) = ( \(x_{d_G}\) , \(y_{d_G}\) , \(z_{d_G}\) ), which corresponds to a height above the landing marker. Position \(X = (x_G, y_G, z_G)\) denotes the drone current location. The position error is then denoted as \(E = X_d - X\) , where  \(E = (e_x,e_y,e_z)\) . The symbols \(e_x,e_y,e_z\) are position errors in directions \(X_G\) , \(Y_G\) , and \(Z_G\) , respectively. The PID controller was applied to the position error in accordance with ( 1 ) and ( 2 ). The drone will land when above the marker, i.e., when the error  \(E =0\) .

figure 7

Picture reprinted from [ 96 ]

Automatic navigation and landing of an AR drone quadrotor

3.3.1 Localisation using differential global positioning system (DGPS)

Differential global positioning system (DGPS) is extensively used for accurate localisation of drones. The scope of localization and mapping for an agent is the method to locate itself locally, estimate its state, and build a 3D model of its surroundings, by employing among others vision sensors [ 97 ]. Towards this direction, a visual pose-estimation system from multiple cameras on-board a UAV, known as multi-camera parallel tracking and mapping (PTAM), has been presented in [ 98 ]. This solution was based on the monocular PTAM and was able to integrate concepts from the field of multi-camera ego-motion estimation. Additionally, in this work, a novel extrinsic parameter calibration method for the non-overlapping field of view cameras has been proposed.

3.3.2 Mobile phone technology in UAV applications

UAV applications encompass many areas, including, aerial surveillance ,reconnaissance, underground mine rescue operations, and so on [ 25 , 99 ]. Some of these application areas are GPS denied, thus GPS can not provide the location for a UAV. Currently, vision sensors, laser scanners, and the IMU are the most common position sensors used for UAV self-localisation. In some applications, small UAVs are preferred for their cost and high maneuverability. Considering the limited load capacity and the cost of small UAVs, it cannot be equipped with sensors of high precision and large volume [ 100 ].

Micro-electro-mechanical system (MEMS) sensors are therefore preferred alternatives because they are small and cheap. On the other hand, mobile phones contain multi-sensors, multi-core processors, have a small volume, and lightweight. In [ 101 ], Nexus 4 smartphone developed by Google, was used as a flight controller. The phone is equipped with inbuilt MEMS sensors such as accelerometer, gyroscope, magnetometer, global navigation satellite system (GNSS), and barometer. The implementation exclusively used sensors and processors from the smartphone, see Figs.  8 and  9 . Mobile phone usage possibilities in UAV platforms are further elaborated in [ 102 ], where a smart phone is proposed for implementation of drone control algorithms. The usage of smart phones can reduce development time as it it cuts down the need for integration of different drone hardware components, instead the proposed solution uses smart phone inbuilt sensors [ 102 ].

figure 8

Picture reprinted from [ 101 ]

Schematic diagram for on-board smartphone flight controller using Arduino Mega to interface with the electronic speed controllers (ESCs)

figure 9

Quadcopter used in [ 101 ] with an on-board smartphone as flight controller

3.3.3 Communication to the ground control station

Communication to the ground control station allows drone pilots to remotely configure mission parameters, such as coordinates to cover during way-point navigation and the action to take at each way-point. Most existing drone platforms have the configuration shown in Fig.  10 . A specialized software runs at a ground-control station (GCS) to let users configure mission parameters. The Ground Control Station is a system made up of software and hardware necessary for UAV remote control. Hardware, such as the joystic, takes the pilot’s command which is transmitted to the drone via radio transmitter. The GCS software collects tellemetry data transmitted from the UAV and displays it the on the GCS user interface [ 103 ]. Communication networking is responsible for the information flow between GCS and UAV on a mission. It needs to be robust against uncertainties in the environment and quickly adapt to changes in the network topology. Communication is not only needed for disseminating observations, tasks, and control information but also needed to coordinate the vehicles more effectively toward a global goal. The goal could be tasks such as areal monitoring or detecting events within the shortest time, which are especially important in disaster situations. Some specific issues that need to be addressed [ 41 ] are connectivity, routing-and-scheduling, communication link models, and data transmission.

figure 10

Picture reprinted from https://www.google.com/search?q=multirotor+UAV++ground+control+station+images

Platform for drone control from GCS

3.4 Real-time scheduling algorithms

Real-time scheduling aims to complete tasks within specific time constraints and avoiding simultaneous access to resources shared amongst application tasks. To guarantee real-time performance while meeting all timing, precedence and resource usage specifications requires employment of efficient scheduling algorithms supported by accurate schedulability analysis techniques [ 104 ]. Real-time scheduling algorithms can be implemented for uniprocessor or multiprocessor systems [ 105 , 106 , 107 ].

In the context of drone applications, an example could be implementing a flight control system using Arduino Uno or other single processor boards. The Arduino Uno uses the ATMEGA 328P processor (uni-processor), whereas embedded computers like the Rasberry-Pi uses a quad core ARM Cortex-A72 processor (multi-processor). Scheduling algorithms can be broadly divided into two major subsets: offline scheduling and online scheduling algorithms [ 104 ]. In offline scheduling algorithms, task scheduling is carried out before system execution, also known as pre-run time scheduling. The scheduling information is then employed during run-time. The YDS algorithm (named after the author) [ 108 ], which schedules tasks according to earliest deadline first (EDF) precedence [ 109 ] is an example of an offline scheduling algorithm. By contrast, online scheduling algorithms schedule tasks at run-time.An online scheduling algorithm that encoporates event-driven and periodic rolling strategies (EDPRS) is discussed in [ 110 ].

4 Types of controllers

UAV control requires an accurate and robust controller for altitude as well as velocity-and-heading [ 111 ].The altitude controller drives the UAV to fly at the desired altitude, including landing and take-off stages. The heading and velocity control enables UAV to fly through desired waypoints [ 112 ]. To achieve the above control requirements, different control strategies such as Fuzzy Logic,Linear Quadratic Regulator (LQG), Sliding Mode Control (SMC), Proportional Integral Derivative (PID), Neural Network (NN), e.t.c can be used. Robust control systems have been widely developed to address parametric uncertainties and external disturbance. In case of multirotor UAVs uncertainties arising from propeller rotation, blades flapping, change in propeller rotational speed and center of mass position dictates the need for a robust nonlinear controller [ 113 ]. In [ 113 ] robustness as well as compensation forsysten nonlinearities was adresses by combinig the nonlinear sliding mode control (SMC), robust backstepping controller and a nonlinear disturbance observer (NDO). The backstepping controller stabilised translational movement while the SMC controlled the rotational movement of the quadrotor.

The NDO provided all the estimates of disturbances ensuring robustness of the feedback controls. The PID controller was compared with a neural network controller, specifically the direct inverse control neural network (DIC-ANN) in [ 114 ]. The comparison was done in simulation, where both controllers were excited with the same reference altitude reference input and their performances plotted together.The simulation aimed to mimic a quadrotor flight in four phases comprising take-off and climb phase at \(0~<~t<~10~s\) , hovering phase at \(10~<~t~<20~s\) , climb in ramp phase at \(20~<~t<~22.5~s\) , and lastly the final altitude phase at \(22.5~<~t<~50~s\) . The comparison results showed that the DIC-ANN performed better than the PID controller in handling quadrotor altitude dynamics.Also at hovering conditions the DIC-ANN exhibited less steady state error as compared to the PID controller and the transient oscillations damped faster with the DIC-ANN showing that it handles nonlinearities better than the PID controller.

PID controllers are widely used in autopilots due to their ease of implementation, how ever they have limitations when operating in unpredictable and harsh environments. In [ 115 ] the performance of and acuracy of an attitude controller was investigated. The attitude controller is a neural network (NN) based controller trained through reinforcement learning (RL) state of the art algorithms, the Deep Deterministic Policy Gradient (DDPG), Trust Region Pocy Optimisation (TRPO), and the Proximal Policy Optimisation (PPO). The NN controller performance was compared to the performance of a PID controller to determine the appropriacy of NN controller in high precision, time-critical flight control. The contoller performance was evaluated in simulation using GYMFC environment. The results showed that RL can trail accurate attitude attitude controllers, also the controller trained with PPO outperformed a fully tuned PID controller on almost every metric.

The linear quadratic regulation (LQR) optimal control algorithm operates a dynamic system by minimizing a suitable cost function [ 79 ]. When the LQR is used with linear quadratic estimator (LQE) and Kalman filter, it is then referred to as the linear quadratic Gaussian (LQG) The LQG was applied in [ 116 ] for altitude control of a quadrotor micro aerial vehicles (MAVs). Ignoring air resistance, the linearized model for altitude control problem was obtained as ( 3 ), the state space model is represented by ( 4 ) , while the cost function is given by ( 5 ), also refered to in [ 116 ] as the quadratic form creterion. The control objective is to determine the control input U ( t ) to minimise cost function [ 79 ].

The linear Quadratic regulator with and integral with an integral term (LQTI) and a model predictive controller were employed to develop an automatic carrier landing system for a UAV [ 117 ]. The LQTI was applied to the coupled multi-input multi-output (MIMO) UAV dynamic model to reduce steady stare error while the model predictive controller was applied to the final phase landing of the UAV. Automatic carrier landing was performed sequentially by the two controllers. The LQTI controller was applied up to a few seconds before touch down followed by the MPC controller during the final stage of landing. The controller was verified via simulations on HSS Hydro toolbox. Simulation results indicated that the proposed carrier landing system can improve landing accuracy. The performance of the controllers indicted that the LQTI is suitable for calm sea environments while the MPC performs better even in rough sea environments [ 117 ]. Some implementations for UAV control employ the sliding-mode control (SMC) strategy. Sliding-mode control is a nonlinear control method that that utilises a high-frequency switching control signal to the system to command it to slide along a prescribed sliding manifold [ 118 , 119 ]. It encompasses a broad range of varying fields, from pure mathematical problems to application aspects [ 120 ] (Fig. 11 ).

An SMC based fault tolerant control design for underactuated UAVs was implemented on a quadrotor in [ 121 ]. The design approach separated system dynamics into two sub-systems, a fully actuated and an under-actuated subsystem. A Nonsingular Fast Terminal Sliding Mode Controller (NFTSMC) was then designed for the fully actuated subsystem, the Under-actuated Sliding Mode Controller (USSMC) was then derived for the under-actuated subsystem. The controller performance, on a quadrotor platform, demonstrated excellent robustness to actuator faults, disturbances. It had fast convergence and high precision tracking. Herrera et al. designed a sliding-mode controller and applied it in simulation of a quadrotor. They considered a PD sliding surface for vertical take-off and landing. Broad coverage of control algorithms for quadrotors can be found in [ 79 , 122 , 123 , 124 ]. Figures  12 , 13 and 14 shows the PID, LQG, and SMC controllers applied to a quadrotor respectively.

figure 11

Picture reprinted [ 127 ]

Drone path planning from start 1 and Start 2 to Goal, shortest path taken from both starting points

5 Path planning

Missions of UAVs usually involve travelling from some initial point to a goal point [ 125 , 126 ]. A mission requires generating a path for the UAV to follow. Path planning is one of the main aspects of autonomous navigation [ 127 ]. The path planning problem is to produce a path or set of waypoints for the drone to follow while taking into account the environmental and physical constraints of the drone in order to achieve a collision free flight [ 128 , 129 ]. This is obstacle avoidance while executing the the UAV’s mission. Figure  11 depicts drone paths from start to goal position for two drones launched from different locations, each calculating its best path to reach the goal position.

In the literature pertinent to UAV path planning, several algorithms for measuring distances to obstacles and calculations of the drone’s path are suggested [ 130 , 131 , 132 ]. An optimal flight path planning mechanism to determine the best path of the UAV was developed in [ 133 ]. Consideration of environmental information such as geographical topology,location dependent wireless communication channel statistics and flight risk, sensor node deployment and worth of sensing information for different sensor types was made. The implementation aimed at determining the best path to maximise the value of gathered sensing information as well as to minimise flying time, energy consumption, and UAV operational risks. In [ 127 ], 3D propagation approximate Euclidean distance transformation algorithm was formulated to achieve safe path planning by calculating a 3D buffer around the obstacles. The algorithm prevents the drone from flying too close to obstacles by setting the minimal distance from obstacles according to the size of the drone. The algorithm is also used for drone path planning in [ 127 ]. It is worth noting that current techniques for UAVs path planning are application dependent. Different applications require different path-planning approaches.

A method to enhance massive unmanned aerial vehicles for mission critical applications (e.g., dispatching many UAVs from a source to a destination for firefighting) is investigated in [ 134 ]. The method aims to achieve UAV fast travel while avoiding inter-UAV collision while executing their mission. The path planning problem is tackled by exploiting a mean-field game (MFG) theoretic control method. The method requires UAV state exchange only once at launch, thereafter each UAV controls its acceleration by locally solving two partial differential equations, the Hamilton-Jacobi-Bellman (HJB) and Fokker-Planck-Kolmogorov (FPK) equations. Due to high computational burden posed by solving the partial differential equations, two machine learning models were used to approximate the solutions of the HJB and the FPK. The performance of the proposed method was validated on simulation, showing that the mean-field game method guarantees UAV collision avoidance. Also for the proposed approach, the effectiveness of the mean field game method is determined by the level of the HJB and FPK training.

figure 12

Block diagram of PID controller applied to a quadrotor [ 79 ]

figure 13

Block diagram of LQG controller applied to a quadrotor [ 79 ]

figure 14

Block diagram of an SMC controller applied to a quadrotor [ 79 ]

6 UAV real-time control implementation

In order to implement real-time control for UAVs, tasks have to be defined. An RTOS is required for tasks scheduling, inter-task communication, and management of available resources such memory, and power consumption [ 135 , 136 , 137 ]. Each task is allocated a memory space, called a stack, in the microprocessor. This is enabled by the RTOS kernel’s support for multi-threading [ 138 , 139 ]. Scheduling and prioritisation of tasks, as well as the update frequency of the sensors providing essential data for task execution, ensure that application time constraints are met [ 140 ]. In [ 141 ], an embedded RTOS (RT-Thread) is applied to a quadcopter to address problems of real-time response, heavy workload and difficulty in control. Practical tests in this work indicated that quadcopter control system based on RT-Thread responded real-timely, and ensured smooth flight with a PID control algorithm.

The application tasks defined in this work are attitude information acquisition, attitude information fusion, and PID control. The latter is for quadcopter control. The application task is developed on top of RT-Thread RTOS running on STM32F407VGT6 microprocessor. The processor is equipped with high-performance ARM Cortex-M4 core with maximum system frequency of 168MHz, an FPU (floating-point unit), 1 Mbyte of flash, and 192 Kbytes of SRAM. It has peripherals such as ADC, SPI, USART, controller area network (CAN) bus, DMA, etc. High operating frequencies and high-speed memory provide high computational power to enable quadcopter complex calculations to be performed. Also additional peripherals reduce the need for external IC and reduce computational burden from the microprocessor. The implementation in [ 142 ] uses a dual processor configuration.

One processor is used for telemetry and another for control of a custom quadcopter used as a test-bed. The telemetry processor executes software tasks such as communicating reconfiguration and monitoring data with the GCS, data collection from sensors, and wirelessly transmitting data to the GCS. The tasks are managed by \(\mu \) C/OS-II™, an RTOS. The control processor runs the PID controller algorithm for the quadcopter stabilization and navigation. This task was achieved through several tasks allocated to the control processor. Tasks include reading GPS, compass, IMU, and altitude sensor data received from the telemetry processor. Other tasks include implementation of the roll, pitch, yaw, and altitude PID control loops, and communicating reconfiguration and monitoring data with the telemetry processor via CAN bus. Figure  15 shows the PID controllers used in the implementation.

figure 15

Picture reprinted from [ 142 ]

PID control loops implemented by the control processor

7 Essential components for UAV real-time applications

7.1 real-time operating system (rtos).

The literature pertaining to real-time implementation of drone control systems is relatively limited, and the number of reported studies on UAV scheduling has been minimal [ 143 ]. The main feature of real-time implementation in drones control is that an embedded RTOS, also referred to as UAV operation system in some literature, is required [ 67 , 144 ]. The RTOS provides a real-time kernel on which the control program running on a micro-controller is implemented. The real-time kernel guarantees application tasks meet their time constraints by employing the UAV scheduling system [ 143 ]. Consequently, a Real-Time Operating System (RTOS) that provides operating environments for various mission services on UAVs is crucial [ 145 ]. The commonly used RTOS for UAVs is FreeRTOS, and an empirical study of this RTOS was conducted in [ 145 ]. The study looked at aspects such as functionality changes during the evolution of FreeRTOS. A total of 85 releases of FreeRTOS, from V2.4.2 to V10.0.0 were considered.

7.2 Microcontroller

The microcontroller is the UAV onboard processing unit for UAV computations and UAV state monitoring [ 146 , 147 ]. It is selected such that it matches application task requirements. Considerations such as computational speeds and communication with onboard sensors have to be made. Palossi et al. [ 146 ] extended the hardware and software of a 27 grams nano-size, commercial off-the-shelf (COTS) quadrotor, the crazyflie 2.0, to achieve object tracking capability. The quadrotor platform consists the STM32F405 microcontroller as the main onboard processing unit, the Nordic nRF51 module for wireless communication. The STM32 is an ARM Cortex-M4F microcontroller, operating at 168MHz. The on-board sensing is performed by a 9-axis IMU, the MPU-9250 with a gyroscope, an accelerometer, a magnetometer, and an ST LPS25H pressure sensor with a typical accuracy of \(\pm 1\) meter. The vehicle is powered by a 240mAh Li-Po battery.

figure 16

Reprinted from [ 150 ]

Sensors connected to microcontroller

7.3 Sensors and actuators

In UAV applications several sensors and actuators are connected to the microprocessor for UAV control. Table 1 highlights the vital components for real-time implementation of UAV control, the table also lists various sensors used. Figure  16 shows the UAV onboard sensors used in a fire fighting remote-sensing system in [ 150 ]. Various sensors as well as the overall connection network is depicted.

8 Conclusion

Real-time control of drones requires an embedded RTOS for implementation. The RTOS provides facilities such as multi-threading, scheduling and priority assignment. These support real-time response of the drone control system to feedback from GPS and IMU. The drone control system subsequently apply the corresponding motor speeds to achieve the desired drone’s movements. Multitasking enables tasks, such as position and orientation feedback, path-planning, and control implementation to run in parallel. This facilitates real-time response of the drone. Tasks may need results from other tasks for their computations. Scheduling and prioritisation of tasks ensures that at any point in time critical tasks are given computational resources by the microprocessor. For example obstacle avoidance is the highest priority task to ensure that the drone does not collide with other drones as well as other obstacles.

Kanellakis C, Nikolakopoulos G (2017) Survey on computer vision for UAVs: current developments and trends. J Intell Robot Syst 87(1):141–168

Google Scholar  

Han D, Gwak DY, Lee S (2020) Noise prediction of multi-rotor UAV by RPM fluctuation correction method. J Mech Sci Technol 34:1429–1443

Fotouhi A, Qiang H, Ding M, Hassan M, Giordano LG, Garcia-Rodriguez A, Yuan J (2019) Survey on UAV cellular communications: practical aspects, standardization advancements, regulation, and security challenges. IEEE Commun Surv Tutor 21(4):3417–3442

Atyabi A, Mahmoud-Zadeh S, Nefti-Meziani S (2018) Current advancements on autonomous mission planning and management systems: an AUV and UAV perspective. Annu Rev Control 46:196–215

Jawhar I, Mohamed N, Al-Jaroodi J, Agrawal DP, Zhang S (2017) Communication and networking of UAV-based systems: classification and associated architectures. J Netw Comput Appl 84:93–108

Radoglou-Grammatikis P, Sarigiannidis P, Lagkas T, Moscholios I (2020) A compilation of UAV applications for precision agriculture. Comput Netw 172:107148

Balasingam M (2017) Drones in medicine—the rise of the machines. Int J Clin Pract 71(9):1–4

Parks L (2016) Drones, vertical mediation, and the targeted class. Fem Stud 42(1):227–235

Abbasi Y, Moosavian SAA, Novinzadeh AB (2017) Vision-based formation control of aerial robots in the presence of sensor failure. J Mech Sci Technol 31(3):1413–1426

Rao B, Gopi AG, Maione R (2016) The societal impact of commercial drones. Technol Soc 45:83–90

Nex F, Remondino F (2014) UAV for 3D mapping applications: a review. Appl Geomat 6(1):1–15

Menouar H, Guvenc I, Akkaya K, Uluagac AS, Kadri A, Tuncer A (2017) UAV-enabled intelligent transportation systems for the smart city: applications and challenges. IEEE Commun Mag 55(3):22–28

Williams HA, Jones MH, Nejati M, Seabright MJ, Bell J, Penhall ND, Barnett JJ, Duke MD, Scarfe AJ, Ahn HS et al (2019) Robotic kiwifruit harvesting using machine vision, convolutional neural networks, and robotic arms. Biosyst Eng 181:140–156

Park D, Shaear M, Chen YH, Russell JO, Kim HY, Tufano RP (2019) Transoral robotic thyroidectomy on two human cadavers using the intuitive da vinci single port robotic surgical system and CO2 insufflation: preclinical feasibility study. Head Neck 41(12):4229–4233

Jamisola RS, Maciejewski AA, Roberts RG (2006) Failure-tolerant path planning for kinematically redundant manipulators anticipating locked-joint failures. IEEE Trans Rob 22(4):603–612

Kim MJ, Kondak K, Ott C (2018) A stabilizing controller for regulation of UAV with manipulator. IEEE Robot Autom Lett 3(3):1719–1726

Muscio G, Pierri F, Trujillo MA, Cataldi E, Antonelli G, Caccavale F, Viguria A, Chiaverini S, Ollero A (2017) Coordinated control of aerial robotic manipulators: theory and experiments. IEEE Trans Control Syst Technol 26(4):1406–1413

Ramon Soria P, Arrue BC, Ollero A (2017) Detection, location and grasping objects using a stereo sensor on UAV in outdoor environments. Sensors 17(1):103

Xiao B, Yin S (2018) Exponential tracking control of robotic manipulators with uncertain dynamics and kinematics. IEEE Trans Ind Inf 15(2):689–698

Yang C, Jiang Y, Na J, Li Z, Cheng L, Su CY (2018) Finite-time convergence adaptive fuzzy control for dual-arm robot with unknown kinematics and dynamics. IEEE Trans Fuzzy Syst 27(3):574–588

Jamisola RS Jr, Mastalli C, Ibikunle F (2016) Modular relative jacobian for combined 3-arm parallel manipulators. Int J Mech Eng Robot Res 5(2):90–95

Jamisola RS, Kormushev PS, Roberts RG, Caldwell DG (2016) Task-space modular dynamics for dual-arms expressed through a relative jacobian. J Intell Robot Syst 83(2):205–218

Chen S, Laefer DF, Mangina E (2016) State of technology review of civilian UAVs. Recent Patents Eng 10(3):160–174

Dupont QF, Chua DK, Tashrif A, Abbott EL (2017) Potential applications of UAV along the construction’s value chain. Procedia Eng 182:165–173

Otto A, Agatz N, Campbell J, Golden B, Pesch E (2018) Optimization approaches for civil applications of unmanned aerial vehicles (UAVs) or aerial drones: a survey. Networks 72(4):411–458

MathSciNet   Google Scholar  

Gaffey C, Bhardwaj A (2020) Applications of unmanned aerial vehicles in cryosphere: latest advances and prospects. Remote Sens 12(6):1–40

Garaba SP, Dierssen HM (2018) An airborne remote sensing case study of synthetic hydrocarbon detection using short wave infrared absorption features identified from marine-harvested macro-and microplastics. Remote Sens Environ 205:224–235

Zhang J, Yang C, Song H, Hoffmann WC, Zhang D, Zhang G (2016) Evaluation of an airborne remote sensing platform consisting of two consumer-grade cameras for crop identification. Remote Sens 8(3):257

Koc CB, Osmond P, Peters A, Irger M (2018) Understanding land surface temperature differences of local climate zones based on airborne remote sensing data. IEEE J Sel Top Appl Earth Obs Remote Sens 11(8):2724–2730

Bhardwaj A, Sam L, Martín-Torres FJ, Kumar R et al (2016) UAVs as remote sensing platform in glaciology: present applications and future prospects. Remote Sens Environ 175:196–204

Yang G, Liu J, Zhao C, Li Z, Huang Y, Yu H, Xu B, Yang X, Zhu D, Zhang X et al (2017) Unmanned aerial vehicle remote sensing for field-based crop phenotyping: current status and perspectives. Front Plant Sci 8:1–26

Näsi R, Honkavaara E, Blomqvist M, Lyytikäinen-Saarenmaa P, Hakala T, Viljanen N, Kantola T, Holopainen M (2018) Remote sensing of bark beetle damage in urban forests at individual tree level using a novel hyperspectral camera from UAV and aircraft. Urban For Urban Green 30:72–83

Mohammed M, Hazairin NA, Al-Zubaidi S, Sairah AK, Mustapha S, Yusuf E (2020) Toward a novel design for coronavirus detection and diagnosis system using IoT based drone technology. Int J Psychosoc Rehabil 24(7):2287–2295

Ebeid E, Skriver M, Terkildsen KH, Jensen K, Schultz UP (2018) A survey of open-source UAV flight controllers and flight simulators. Microprocess Microsyst 61:11–20

Zhang G, Hsu LT (2018) Intelligent GNSS/INS integrated navigation system for a commercial UAV flight control system. Aerosp Sci Technol 80:368–380

Zhou L, Zhang J, She H, Jin H (2019) Quadrotor UAV flight control via a novel saturation integral backstepping controller. Automatika 60(2):193–206

Silvagni M, Tonoli A, Zenerino E, Chiaberge M (2017) Multipurpose UAV for search and rescue operations in mountain avalanche events. Geomat Nat Hazards Risk 8(1):18–33

Khalesi MH, Salarieh H, Foumani MS (2019) Dynamic modeling, control system design and MIL–HIL tests of an unmanned rotorcraft using novel low-cost flight control system. Iran J Sci Technol Trans Mech Eng 1–20

Corrigan F (2018) How do drones work and what is drone technology. DroneZon. 24 June 2018

Vasić Z, Maksimović S, Georgijević D (2018) Applied integrated design in composite UAV development. Appl Compos Mater 25(2):221–236

Yanmaz E, Yahyanejad S, Rinner B, Hellwagner H, Bettstetter C (2018) Drone networks: communications, coordination, and sensing. Ad Hoc Netw 68:1–15

Aasen H, Burkart A, Bolten A, Bareth G (2015) Generating 3D hyperspectral information with lightweight UAV snapshot cameras for vegetation monitoring: from camera calibration to quality assurance. ISPRS J Photogramm Remote Sens 108:245–259

Zhong Y, Wang X, Xu Y, Wang S, Jia T, Hu X, Zhao J, Wei L, Zhang L (2018) Mini-UAV-borne hyperspectral remote sensing: from observation and processing to applications. IEEE Geosci Remote Sens Mag 6(4):46–62

Natesan S, Armenakis C, Benari G, Lee R (2018) Use of UAV-borne spectrometer for land cover classification. Drones 2(2):16

Li B, Jiang Y, Sun J, Cai L, Wen CY (2016) Development and testing of a two-UAV communication relay system. Sensors 16(10):1696

She C, Liu C, Quek TQ, Yang C, Li Y (2019) Ultra-reliable and low-latency communications in unmanned aerial vehicle communication systems. IEEE Trans Commun 67(5):3768–3781

Rafifandi R, Asri DL, Ekawati E, Budi EM (2019) Leader-follower formation control of two quadrotor UAVs. SN Appl Sci 1(6):539

Pastor E, Lopez J, Royo P (2007) UAV payload and mission control hardware/software architecture. IEEE Aerosp Electron Syst Mag 22(6):3–8

González-deSantos LM, Martínez-Sánchez J, González-Jorge H, Navarro-Medina F, Arias P (2020) UAV payload with collision mitigation for contact inspection. Autom Constr 115:103200

González-de Santos L, Martínez-Sánchez J, González-Jorge H, Novo A, Arias P (2019) First approach to UAV-based contact inspection: a smart payload for navigation in the neighbourhood of structures. ISPAr 4213:323–328

Sanchez-Lopez JL, Pestana J, De La Puente P, Campoy P (2016) A reliable open-source system architecture for the fast designing and prototyping of autonomous multi-UAV systems: simulation and experimentation. J Intell Robot Syst 84(1–4):779–797

Sabikan S, Nawawi S (2016) Open-source project (OSPs) platform for outdoor quadcopter. J Adv Res Des 24:13–27

Yang K, Yang GY, Fu SIH (2020) Research of control system for plant protection UAV based on pixhawk. Procedia Comput Sci 166:371–375

Bingler A, Mohseni K (2017) Dual radio autopilot system for lightweight, swarming micro/miniature aerial vehicles. J Aerosp Inf Syst 14(5):293–306

Garberoglio L, Meraviglia M, Pose CD, Giribet JI, Mas I (2018) Choriboard III: a small and powerful flight controller for autonomous vehicles. In: 2018 Argentine Conference on Automatic Control (AADECA), Buenos Aires, Argentina. IEEE, pp 1–6

Zareb M, Nouibat W, Bestaoui Y, Ayad R, Bouzid Y (2020) Evolutionary autopilot design approach for UAV quadrotor by using GA. Iran J Sci Technol Trans Electr Eng 44(1):347–375

González JMF, Padilla P, Valenzuela-Valdes JF, Padilla JL, Sierra-Perez M (2017) An embedded lightweight folded printed quadrifilar helix antenna: UAV telemetry and remote control systems. IEEE Antennas Propag Mag 59(3):69–76

Wang H, Wang J, Chen J, Gong Y, Ding G (2018) Network-connected UAV communications: potentials and challenges. China Commun 15(12):111–121

Bhola R, Krishna NH, Ramesh K, Senthilnath J, Anand G (2018) Detection of the power lines in UAV remote sensed images using spectral–spatial methods. J Environ Manag 206:1233–1242

Cui JQ, Lai S, Dong X, Chen BM (2016) Autonomous navigation of UAV in foliage environment. J Intell Robot Syst 84(1–4):259–276

Rawashdeh NA, Rawashdeh OA, Sababha BH (2017) Vision-based sensing of UAV attitude and altitude from downward in-flight images. J Vib Control 23(5):827–841

Chen S, Duan H, Deng Y, Li C, Zhao G, Xu Y (2017) Drogue pose estimation for unmanned aerial vehicle autonomous aerial refueling system based on infrared vision sensor. Opt Eng 56(12):124105

Cai X, Hsu H, Chai H, Ding L, Wang Y (2019) Multi-antenna GNSS and INS integrated position and attitude determination without base station for land vehicles. J Navig 72(2):342–358

Kumar GA, Patil AK, Patil R, Park SS, Chai YH (2017) A LiDAR and IMU integrated indoor navigation system for UAVs and its application in real-time pipeline classification. Sensors 17(6):1268

Kuutti S, Fallah S, Katsaros K, Dianati M, Mccullough F, Mouzakitis A (2018) A survey of the state-of-the-art localization techniques and their potentials for autonomous vehicle applications. IEEE Internet Things J 5(2):829–846

Noor-A-Rahim M, Khyam MO, Ali GMN, Liu Z, Pesch D, Chong PH (2019) Reliable state estimation of an unmanned aerial vehicle over a distributed wireless IoT network. IEEE Trans Reliab 68(3):1061–1069

Hujja RM, Sumiharto R, Setyawan Bekti W (2018) Realtime operating system implementation on AVR XMEGA for unmanned aerial vehicle autopilot. Int J Adv Res Sci Eng Technol 5:5762–5768

Al-Mashhadani MA (2019) Optimal control and state estimation for unmanned aerial vehicle under random vibration and uncertainty. Meas Control 52(9–10):1264–1271

Wright WC, Wilkinson BE, Cropper WP Jr (2017) Estimating GPS signal loss in a natural deciduous forest using sky photography. Pap Appl Geogr 3(2):119–128

Lu Y, Xue Z, Xia GS, Zhang L (2018) A survey on vision-based UAV navigation. Geo-Spat Inf Sci 21(1):21–32

Guo H, Hong H (2019) Research on filtering algorithm of MEMS gyroscope based on information fusion. Sensors 19(16):3552

Kwak J, Sung Y (2018) Autonomous UAV flight control for GPS-based navigation. IEEE Access 6:37947–37955

Capello E, Guglieri G, Ristorto G (2017) Guidance and control algorithms for mini UAV autopilots. Aircr Eng Aerosp Technol 89(1):133–144

Vanegas F, Gonzalez F (2016) Enabling UAV navigation with sensor and environmental uncertainty in cluttered and GPS-denied environments. Sensors 16(5):1–17

Chao H, Cao Y, Chen Y (2010) Autopilots for small unmanned aerial vehicles: a survey. Int J Control Autom Syst 8(1):36–44

Dapper e Silva T, Cabreira V, De Freitas EP (2018) Development and testing of a low-cost instrumentation platform for fixed-wing UAV performance analysis. Drones 2(2):19

Hassanalian M, Abdelkefi A (2017) Classifications, applications, and design challenges of drones: a review. Prog Aerosp Sci 91:99–131

Yang H, Lee Y, Jeon SY, Lee D (2017) Multi-rotor drone tutorial: systems, mechanics, control and state estimation. Intell Serv Robot 10(2):79–93

Zulu A, John S (2014) A review of control algorithms for autonomous quadrotors. Open J Appl Sci 4:547–556

Noordin A, Basri MM, Mohamed Z, Abidin AZ (2017) Modelling and PSO fine-tuned PID control of quadrotor UAV. Int J Adv Sci Eng Inf Technol 7(4):1367–1373

Gupte S, Mohandas PIT, Conrad JM (2012) A survey of quadrotor unmanned aerial vehicles. In: 2012 Proceedings of IEEE Southeastcon. IEEE, pp 1–6

Orsag M, Bogdan S (2012) Influence of forward and descent flight on quadrotor dynamics. Recent Adv Aircr Technol 141–156

Emran BJ, Najjaran H (2018) A review of quadrotor: an underactuated mechanical system. Annu Rev Control 46:165–180

Roh MS, Kang BS (2018) Dynamic accuracy improvement of a MEMS AHRS for small UAVs. Int Jo Precis Eng Manuf 19(10):1457–1466

Tang Y, Hu Y, Cui J, Liao F, Lao M, Lin F, Teo RS (2018) Vision-aided multi-UAV autonomous flocking in GPS-denied environment. IEEE Trans Ind Electron 66(1):616–626

Wang W, Wang Y, Dai J, Cao Z (2019) Dynamic soft real-time scheduling with preemption threshold for streaming media. Int J Digit Multimed Broadcast 1–8

Turci LDO (2017) Real-time operating system freertos application for fire alarm project in reduced scale. Int J Comput Digit Syst 6(04):197–204

Nissimagoudar P, Mane V, Shamshuddin K, Gireesha H, Joshi R, Kiran M, Desai B (2016) Integrated course projects in automotive electronics and RTOS. J Eng Educ Transform 30(2):71–78

Macher G, Atas M, Armengaud E, Kreiner C (2015) Automotive real-time operating systems: a model-based configuration approach. ACM Sigbed Rev 11(4):67–72

Stankovic JA, Rajkumar R (2004) Real-time operating systems. Real-Time Syst 28(2–3):237–253

MATH   Google Scholar  

Andersson B, Kim H, Niz DD, Klein M, Rajkumar R, Lehoczky J (2018) Schedulability analysis of tasks with corunner-dependent execution times. ACM Trans Embed Comput Syst (TECS) 17(3):1–29

Kang Y, Joo W, Lee S, Shin D (2017) Priority-driven spatial resource sharing scheduling for embedded graphics processing units. J Syst Architect 76:17–27

Miné A (2017) Static analysis of embedded real-time concurrent software with dynamic priorities. Electron Notes Theor Comput Sci 331:3–39

Hellaoui H, Bekkouche O, Bagaa M, Taleb T (2018) Aerial control system for spectrum efficiency in UAV-to-cellular communications. IEEE Commun Mag 56(10):108–113

Mcguire K, Croon GD, Wagter CD, Tuyls K, Kappen H (2017) Efficient optical flow and stereo vision for velocity estimation and obstacle avoidance on an autonomous pocket drone. IEEE Robot Autom Lett 2(2):1070–1076. https://doi.org/10.1109/lra.2017.2658940

Article   Google Scholar  

Sani MF, Karimian G (2017) Automatic navigation and landing of an indoor AR. drone quadrotor using AruUo marker and inertial sensors. In: 2017 International Conference on Computer and Drone Applications (IConDA), Kuching, Sarawak, Malaysia. IEEE, pp 102–107

Artieda J, Sebastian JM, Campoy P, Correa JF, Mondragón IF, Martínez C, Olivares M (2009) Visual 3D slam from UAVs. J Intell Robot Syst 55(4–5):299

Harmat A, Trentini M, Sharf I (2015) Multi-camera tracking and mapping for unmanned aerial vehicles in unstructured environments. J Intell Robot Syst 78(2):291–317

Molaei F, Rahimi E, Siavoshi H, Afrouz SG, Tenorio V (2020) A comprehensive review on internet of things (IoT) and its implications in the mining industry. Am J Eng Appl Sci 13(3):499–515

Zhao B, Chen X, Zhao X, Jiang J, Wei J (2018) Real-time UAV autonomous localization based on smartphone sensors. Sensors 18(12):1–17

Astudillo A, Muñoz P, Álvarez F, Rosero E (2017) Altitude and attitude cascade controller for a smartphone-based quadcopter. In: 2017 International Conference on Unmanned Aircraft Systems (ICUAS), Miami, FL, USA. IEEE, pp 1447–1454

Hayajneh M, Melega M, Marconi L (2018) Design of autonomous smartphone based quadrotor and implementation of navigation and guidance systems. Mechatronics 49:119–133

Carlson DF, Rysgaard S (2018) Adapting open-source drone autopilots for real-time iceberg observations. MethodsX 5:1059–1072

Roy SK, Devaraj R, Sarkar A, Maji K, Sinha S (2020) Contention-aware optimal scheduling of real-time precedence-constrained task graphs on heterogeneous distributed systems. J Syst Architect 105:1–14

Tobita T, Kasahara H (2002) A standard task graph set for fair evaluation of multiprocessor scheduling algorithms. J Sched 5(5):379–394

MathSciNet   MATH   Google Scholar  

Singh A, Ekberg P, Baruah S (2019) Uniprocessor scheduling of real-time synchronous dataflow tasks. Real-Time Syst 55(1):1–31

Panda SK, Jana PK (2015) Efficient task scheduling algorithms for heterogeneous multi-cloud environment. J Supercomput 71(4):1505–1533

Albers S (2009) Algorithms for energy saving. In: Albers S, Alt H, Näher S (eds) Efficient algorithms: essays dedicated to Kurt Mehlhorn on the occasion of his 60th birthday. Springer, Berlin, pp 173–186

Gerards MET, Hurink JL, Hölzenspies PKF (2016) A survey of offline algorithms for energy minimization under deadline constraints. J Sched 19(1):3–19. https://doi.org/10.1007/s10951-015-0463-8

Article   MathSciNet   MATH   Google Scholar  

Chen H, Zhu J, Zhang Z, Ma M, Shen X (2017) Real-time workflows oriented online scheduling in uncertain cloud environment. J Supercomput 73(11):4906–4922

Li H, Li C, Li H, Li Y, Xing Z (2017) An integrated altitude control design for a tail-sitter UAV equipped with turbine engines. IEEE Access 5:10941–10952

Zeng Y, Xu X, Zhang R (2018) Trajectory design for completion time minimization in UAV-enabled multicasting. IEEE Trans Wirel Commun 17(4):2233–2246

Labbadi M, Cherkaoui M (2019) Robust adaptive backstepping fast terminal sliding mode controller for uncertain quadrotor UAV. Aerosp Sci Technol 93:105306

Muliadi J, Kusumoputro B (2018) Neural network control system of UAV altitude dynamics and its comparison with the PID control system. J Adv Transp 3823201

Koch W, Mancuso R, West R, Bestavros A (2019) Reinforcement learning for UAV attitude control. ACM Trans Cyber-Phys Syst 3(2):1–21

Wang W, Ma H, Xia M, Weng L, Ye X (2013) Attitude and altitude controller design for quad-rotor type MAVs. Math Probl Eng 1–10

Koo S, Kim S, Suk J, Kim Y, Shin J (2018) Improvement of shipboard landing performance of fixed-wing UAV using model predictive control. Int J Control Autom Syst 16(6):2697–2708

Jing C, Xu H, Niu X, Song X (2019) Adaptive nonsingular terminal sliding mode control for attitude tracking of spacecraft with actuator faults. IEEE Access 7:31485–31493

Chen F, Jiang R, Zhang K, Jiang B, Tao G (2016) Robust backstepping sliding-mode control and observer-based fault estimation for a quadrotor UAV. IEEE Trans Ind Electron 63(8):5044–5056

Alsmadi YM, Utkin V, Haj-ahmed MA, Xu L (2018) Sliding mode control of power converters: DC/DC converters. Int J Control 91(11):2472–2493

Mallavalli S, Fekih A (2018) An SMC-based fault tolerant control design for a class of underactuated unmanned aerial vehicles. In: 2018 4th International Conference on Control, Automation and Robotics (ICCAR), Auckland, New Zealand. IEEE, pp 152–155

Mo H, Farid G (2019) Nonlinear and adaptive intelligent control techniques for quadrotor UAV—a survey. Asian J Control 21(2):989–1008

Cajo R, Mac TT, Plaza D, Copot C, De Keyser R, Ionescu C (2019) A survey on fractional order control techniques for unmanned aerial and ground vehicles. IEEE Access 7:66864–66878

Amin R, Aijun L, Shamshirband S (2016) A review of quadrotor UAV: control methodologies and performance evaluation. Int J Autom Control 10(2):87–103

Atencia CR, Del Ser J, Camacho D (2019) Weighted strategies to guide a multi-objective evolutionary algorithm for multi-UAV mission planning. Swarm Evolut Comput 44:480–495

Ramirez-Atencia C, Bello-Orgaz G, R-Moreno MD, Camacho D (2017) Solving complex multi-UAV mission planning problems using multi-objective genetic algorithms. Soft Comput 21(17):4883–4900

Li F, Zlatanova S, Koopman M, Bai X, Diakité A (2018) A universal path planning for an indoor drone. Autom Constr 95:275–283. https://doi.org/10.1016/j.autcon.2018.07.025

Chen Y, Luo G, Mei Y, Yu J, Su X (2016) UAV path planning using artificial potential field method updated by optimal control theory. Int J Syst Sci 47(6):1407–1420

Lin Y, Saripalli S (2017) Sampling-based path planning for UAV collision avoidance. IEEE Trans Intell Transp Syst 18(11):3179–3192

Li J, Deng G, Luo C, Lin Q, Yan Q, Ming Z (2016) A hybrid path planning method in unmanned air/ground vehicle (UAV/UGV) cooperative systems. IEEE Trans Veh Technol 65(12):9585–9596

Chen Y, Yu J, Mei Y, Wang Y, Su X (2016) Modified central force optimization (MCFO) algorithm for 3D UAV path planning. Neurocomputing 171:878–888

Silva Arantes JD, Silva Arantes MD, Motta-Toledo CF, Júnior OT, Williams BC (2017) Heuristic and genetic algorithm approaches for UAV path planning under critical situation. Int J Artif Intell Tools 26(1):1760008

Yang Q, Yoo SJ (2018) Optimal UAV path planning: sensing data acquisition over IoT sensor networks using multi-objective bio-inspired algorithms. IEEE Access 6:13671–13684

Shiri, H, Park J, Bennis M (2019) Massive autonomous UAV path planning: a neural network based mean-field game theoretic approach. In: 2019 IEEE Global Communications Conference (GLOBECOM), Waikoloa, Hawaii. IEEE, pp 1–6

Musaddiq A, Zikria YB, Hahm O, Yu H, Bashir AK, Kim SW (2018) A survey on resource management in IoT operating systems. IEEE Access 6:8459–8482

Zagan I, Găitan VG (2019) Hardware RTOS: custom scheduler implementation based on multiple pipeline registers and MIPS32 architecture. Electronics 8(2):211

Chandane MP (2016) Real time operating systems: a complete overview. Int J Electr Electron Eng (IJEEE) [e-journal] 8(1):361–365

Li Y, Matsubara Y, Takada H (2018) A comparative analysis of RTOS and linux scalability on an embedded many-core processor. J Inf Process 26:225–236

Zaykov PG, Kuzmanov G, Molnos A, Goossens K (2016) RTOS acceleration in an MPSoC with reconfigurable hardware. Comput Electr Eng 53:89–105

Dietrich C, Lohmann D (2017) OSEK-V: application-specific RTOS instantiation in hardware. ACM SIGPLAN Notices 52(5):111–120

Bonarini A, Matteucci M, Migliavacca M, Rizzi D (2014) R2p: an open source hardware and software modular approach to robot prototyping. Robot Auton Syst 62(7):1073–1084

Sababha B, Yang HC, Rawashdeh O (2010) An RTOS-based run-time reconfigurable avionics system for UAVs, Atlanta, Georgia. In: AIAA Infotech@ Aerospace 2010, p 3414

Khosiawan Y, Park Y, Moon I, Nilakantan JM, Nielsen I (2019) Task scheduling system for UAV operations in indoor environment. Neural Comput Appl 31(9):5431–5459

Alvear O, Zema NR, Natalizio E, Calafate CT (2017) Using UAV-based systems to monitor air pollution in areas with poor accessibility. J Adv Transp 2017:1–14

Zheng Z, Guanping X (2019) Evolution analysis of a UAV real-time operating system from a network perspective. Chin J Aeronaut 32(1):176–185

Palossi D, Singh J, Magno M, Benini L (2017) Target following on nano-scale unmanned aerial vehicles. In: 2017 7th IEEE International Workshop on Advances in Sensors and Interfaces (IWASI), Vieste, Italy. IEEE, pp 170–175

Bulka E, Nahon M (2019) Automatic control for aerobatic maneuvering of agile fixed-wing UAVs. J Intell Robot Syst 93(1–2):85–100

Artale V, Collotta M, Milazzo C, Pau G, Ricciardello A (2016) An integrated system for UAV control using a neural network implemented in a prototyping board. J Intell Robot Syst 84(1–4):5–19

Dong M, Chen BM, Cai G, Peng K (2007) Development of a real-time onboard and ground station software system for a UAV helicopter. J Aerosp Comput Inf Commun 4(8):933–955

Sherstjuk V, Zharikova M, Sokol I (2018) Forest fire-fighting monitoring system based on UAV team and remote sensing. In: 2018 IEEE 38th International Conference on Electronics and Nanotechnology (ELNANO), National Technical University of Ukraine, Kyiv. IEEE, pp 663–668

Download references

Acknowledgements

The authors would like to acknowledge the funding support on this work from the Botswana International University of Science and Technology (BIUST) Drones Project with project number P00015. The authors would also like to thank Boyce Segweni for his help in the preparation of this manuscript.

Author information

Authors and affiliations.

BIUST, Palapye, Botswana

Vemema Kangunde, Rodrigo S. Jamisola Jr. & Emmanuel K. Theophilus

You can also search for this author in PubMed   Google Scholar

Corresponding author

Correspondence to Vemema Kangunde .

Ethics declarations

Conflict of interest.

All authors declares that they have no conflict of interest.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/ .

Reprints and permissions

About this article

Kangunde, V., Jamisola, R.S. & Theophilus, E.K. A review on drones controlled in real-time. Int. J. Dynam. Control 9 , 1832–1846 (2021). https://doi.org/10.1007/s40435-020-00737-5

Download citation

Received : 16 October 2020

Revised : 11 November 2020

Accepted : 19 November 2020

Published : 05 January 2021

Issue Date : December 2021

DOI : https://doi.org/10.1007/s40435-020-00737-5

Share this article

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

  • Unmanned areal vehicles
  • Real-time control
  • Real-time operating system
  • Global positioning system
  • Inertial measurement unit

Advertisement

  • Find a journal
  • Publish with us
  • Track your research

IMAGES

  1. (PDF) Research Paper on Design & Implementation of the Advance Drone

    research paper on drone design

  2. (PDF) Applications of Drones in Infrastructures: Challenges and

    research paper on drone design

  3. Drone Essay Conclusion

    research paper on drone design

  4. (PDF) ALW DRONE : A NEW DESIGN AND EFFICIENT APPROACH

    research paper on drone design

  5. Research Paper Presentation Video-Drones

    research paper on drone design

  6. Drone Design on Behance

    research paper on drone design

VIDEO

  1. The most effective drone design

  2. paper drone

  3. Dabotop Paper Drone Assembly Video

  4. Custom drone design with Carvera

  5. AirForestry

  6. #S18E05 drone power supply

COMMENTS

  1. Design and development of a nano drone – A real time UAV

    Conclusions. In this work, a conceptual design and development of low-cost nano Drone was proposed, and based on flight time for surveillance applications suitable components were selected. Based on the size constraints of the components, a frame was designed and developed to house the components to test the system.

  2. (PDF) Design and Analysis of Fixed-Wing UAV - ResearchGate

    Design and Analysis of Fixed-Wing UAV. September 2020. Authors: Deeksha Rao. M. S. Ramaiah University of Applied Sciences. Preprints and early-stage research may not have been peer reviewed yet ...

  3. Drone Design and Development - A section of Drones - MDPI

    Section Information. This Section focuses on Drone Design and Development. This includes research efforts related to the modeling, flight dynamics, design, mission, and manufacturing of various sizes of drones, such as unmanned air vehicles (UAV), micro-unmanned air vehicles (μUAV), micro air vehicles (MAV), and nano air vehicles (NAV).

  4. Design and Development of Unmanned Aerial Vehicle (Drone) for ...

    In the absence of government clearness, civil society has lead substantial research on drone strikes. The Bureau of Investigative Journalism, a not-for-profit organization based at City University, London, has published figures that give some logic of the scale of such US operations [17].

  5. Drones | An Open Access Journal from MDPI

    Drones is an international, peer-reviewed, open access journal published monthly online by MDPI.The journal focuses on design and applications of drones, including unmanned aerial vehicle (UAV), Unmanned Aircraft Systems (UAS), and Remotely Piloted Aircraft Systems (RPAS), etc. Likewise, contributions based on unmanned water/underwater drones and unmanned ground vehicles are also welcomed.

  6. Design & implementation of an UAV (Drone) with flight data ...

    This paper proposed the development of an autonomous unmanned aerial vehicle (UAV) which is controlled by wireless technology through graphical user interface (GUI). This proposed design capable to fly autonomously and also capable to track pre loaded mission automatically. Proposed mathematical model and artificial algorithm control technique by which quad rotor can capable to fly ...

  7. Drones | Free Full-Text | Novel Drone Design Using an ...

    This paper presents the design of a small size Unmanned Aerial Vehicle (UAV) using the 3DEXPERIENCE software. The process of designing the frame parts involves many methods to ensure the parts can meet the requirements while conforming to safety and industry standards. The design steps start with the selection of materials that can be used for the drone, which are polylactic acid (PLA ...

  8. Novel Drone Design Using an Optimization Software with 3D ...

    Researchers have a lot of interest in designing the parts of a drone and the design is dependent on the application of the drone, where there are many factors to be considered such as speed-motor selection and airframe selection [6]. In this research project, the design of the drone has been made for parcel delivery purposes, which consists of ...

  9. Recent Advances in Unmanned Aerial Vehicles: A Review - Springer

    In recent decades, aerial robots especially small UAVs and drones have witnessed tremendous improvements in terms of their structure, working methodology, flying features and navigation control. UAVs are highly utilized in a wide range of services such as photography, path planning, search and rescue, inspection of power lines and civil constructions, etc. This manuscript reports a wide ...

  10. A review on drones controlled in real-time | International ...

    A drone, also known as unmanned aerial vehicle (UAV), is an aircraft without a human pilot on board [1, 2].There has been a rapid development of drones for the past few decades due to the advancement of components such as micro electro-mechanical systems (MEMS) sensors, microprocessors, high energy lithium polymer (LiPo) batteries, as well as more efficient and compact actuators [3,4,5].