Communications and Control for Wireless Drone-Based Antenna Array

12/29/2017 ∙ by Mohammad Mozaffari, et al. ∙ HUAWEI Technologies Co., Ltd. University of Oulu Virginia Polytechnic Institute and State University 0

In this paper, the effective use of multiple quadrotor drones as an aerial antenna array that provides wireless service to ground users is investigated. In particular, under the goal of minimizing the airborne service time needed for communicating with ground users, a novel framework for deploying and operating a drone-based antenna array system whose elements are single-antenna drones is proposed. In the considered model, the service time is minimized by jointly optimizing the wireless transmission time as well as the control time that is needed for movement and stabilization of the drones. To minimize the transmission time, first, the antenna array gain is maximized by optimizing the drone spacing within the array. In this case, using perturbation techniques, the drone spacing optimization problem is addressed by solving successive, perturbed convex optimization problems. Then, the optimal locations of the drones around the array's center are derived such that the transmission time for the user is minimized. Given the determined optimal locations of drones, the drones must spend a control time to adjust their positions dynamically so as to serve multiple users. To minimize this control time of the quadrotor drones, the speed of rotors is optimally adjusted based on both the destinations of the drones and external forces (e.g., wind and gravity). In particular, using bang-bang control theory, the optimal rotors' speeds as well as the minimum control time are derived in closed-form. Simulation results show that the proposed approach can significantly reduce the service time to ground users compared to a multi-drone scenario in which the same number of drones are deployed separately to serve ground users. The results also show that, in comparison with the multi-drones case, the network's spectral efficiency can be significantly improved.



There are no comments yet.


page 1

page 2

page 3

page 4

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

The use of unmanned aerial vehicles (UAVs) such as drones is growing rapidly across many domains including delivery, communications, surveillance, and search and rescue in emergency operations [1, 2, 3]. In wireless networks, drones can be used as flying base stations to provide reliable and cost-effective wireless connectivity [2, 3, 4, 5, 6, 7, 8, 9]. Due to their flexibility, agility, and mobility, drones can support reliable, cost-effective, and high data rate wireless communications for ground users. In particular, during major public events such as Olympic games that generate a substantial demand for communication, there is a need to supplement the limited capacity and coverage capabilities of existing cellular networking infrastructure. In such scenarios, drone-based wireless communication is an ideal solution. For instance, AT&T and Verizon are planning to use flying drones to boost the Internet coverage for the college football national championship and the Super Bowl [10]. Drones can also play a key role in enabling wireless connectivity in other key scenarios such as public safety, and Internet of Things (IoT) scenarios [2]. To effectively leverage drones for wireless networking applications, one must address a number of challenges that include optimal placement of drones, path planning, resource management, control, and flight time optimization [2, 4, 7].

I-a Related work on UAV communications

There has been a recent surge of literature discussing the use of drones for wireless communication purposes [2, 3, 4, 11, 7, 6, 12, 5, 13, 14, 8, 9, 15]. For instance, in [3], the authors studied the optimal 3D placement of UAVs for maximizing the number of covered users with different quality-of-service (QoS) requirements. The works in [4] and [5] studied path planning and optimal deployment problems for UAV-based communications and computing. The work in [6] proposed a framework for the optimal placement and distribution of UAVs to minimize the overall delay in a UAV-assisted wireless network. A comparison between the performance of aerial base stations and terrestrial base stations in terms of average sum rate and transmit power is presented in [11]. In [12], a polynomial-time algorithm for the optimal placement of drones that provide coverage for ground terminals is proposed.

One of the fundamental challenges in drone-based communications systems is the limited flight endurance of drones. Naturally, flying drones have a limited amount of on-board energy which must be used for transmission, mobility, control, data processing, and payloads purposes. Consequently, the flight duration of drones is typically short and can be insufficient for providing a long-term, continuous wireless coverage. Furthermore, due to the limited transmit power of drones, providing long-range, high rate, and low latency communications can be challenging in drone-enabled wireless systems. In this regard, a key performance metric in drone-enabled wireless networks is airborne service time, which is defined as the time needed for servicing ground users. The service time directly impacts the flight time of drones as well as the quality-of-service (i.e., delay) for ground users. From the drones’ perspective, a lower service time corresponds to a shorter flight time as well as less energy consumption. From the users’ point of view, a lower service time is also needed as it directly yields lower latency. To address the flight time challenges of drones, the work in [13] minimized the hover time of drone base stations by deriving the optimal cell association schemes. However, the model in [13] is limited to static single-antenna drones. In [14], the trajectory and mission completion time of a single UAV that serves ground users are optimized. However, the work in [14] does not analyze a scenario with multiple UAVs.

One promising approach to provide high data rate and low service time is to utilize multiple drones within an antenna array system composed of multiple single-antenna drones [16]. Compared to conventional antenna array systems, a drone-based antenna array has the following advantages. First, the number of antenna elements (i.e., drones) is not limited by space constraints. Second, the gain of the drone-based antenna array can be increased by adjusting the array element spacing. Third, the mobility and flexibility of drones enable an effective mechanical beam-steering in any three-dimensional (3D) direction. Clearly, a high gain drone-based antenna array can provide high data rate wireless services to ground users thus reducing the service time.

In [16], the authors studied the design of a UAV-based antenna array for directivity maximization. However, the approach presented in [16]

is based on a heuristic and a computationally demanding evolutionary algorithm. Moreover, the service time analysis is ignored in

[16]. In [17], the authors derived the asymptotic capacity of an airborne multiple-input-multiple-output (MIMO) wireless communication system. However, the work in [17] considers fixed positions for the antenna elements of the transmitter and the receiver. Furthermore, this work does not analyze the control aspect of drones which is essential in designing drone-based MIMO systems.

In fact, none of the previous works on drone communications, such as in [1, 2, 3, 4, 11, 6, 5, 12, 7, 14, 16, 17, 13, 8, 9], has studied the use of a drone-based antenna array system for service time minimization in wireless networks. Here, we also note that, in [18], we studied the concept of drone-based antenna arrays. However, the work in [18] does not take into account control and the mobility aspects.

I-B Contributions

The main contribution of this paper is a novel framework for deploying and operating a drone-based antenna array system that delivers wireless service to a number of ground users within a minimum time. In particular, we minimize the service time that includes both the transmission time and the control time needed to control the movement and orientation of the drones. To this end, we jointly minimize the transmission time, by optimizing the drones’ locations, as well as the control time that the drones need to move between these optimal locations. To minimize the transmission time, first, we determine the optimal drone spacing for which the array directivity is maximized. In this case, using perturbation theory [19], we solve the drone spacing optimization problem by successively solving a number of perturbed convex optimization problems. Next, given the derived drone spacing, we optimally adjust the locations of the drones according to the position of each ground user. In order to serve different users, the drones must dynamically move between the derived optimal locations, during the control time period. To minimize the control time of quadrotor drones, we determine the optimal speeds of rotors such that the drones can update their positions and orientations within a minimum time. In this case, using bang-bang control theory [20], we derive a closed-form expression for the minimum control time as a function of external forces (e.g., wind and gravity), the drone’s weight, and the destinations of drones. Our results show that the proposed drone antenna array approach can significantly reduce the service time and improve the spectral and energy efficiency of the network. In particular, our approach yields 48% improvement in spectral efficiency compared to a case in which the same number of drones are deployed separately. The results also reveal a tradeoff between the control time and transmission time while varying the number of drones.

Ii System Model and General Problem Formulation

Consider a set of single-antenna wireless users located within a given geographical area. In this area, a set of quadrotor drones are used as flying access points to provide downlink wireless service for ground users. The drones will form an antenna array in which each element is a single-antenna drone, as shown in Fig. 1. For tractability, we consider a linear antenna array whose elements are symmetrically excited and located about the origin of the array as done in [21]. The results that we will derive for the linear array case can provide a key guideline for designing more complex 2D and 3D array configurations. The 3D location of drone and of user is given by (, and the location of drone while serving user is . To avoid collisions111Virtual force field approaches such as in [22] can also be used to avoid collisions., we assume that adjacent drones in the array are separated by at least . Let and be the amplitude and phase of the signal (i.e. excitation) at element in the array. Let be the distance of drone from the origin of the array whose 3D coordinate is . The magnitude of the far-field radiation pattern of each element is , where and are the polar and azimuthal angles in the spherical coordinate.

Figure 1: Drone-based antenna array.

To serve ground users distributed over a geographical area, the drones will dynamically change their positions based on each user’s location. Such repositioning is needed for adjusting the distance and beam direction of the antenna array to each ground user. Note that, unlike a classical linear phased array that uses electronic beam steering, the proposed drone-based antenna array relies on the repositioning of drones. This is due to the fact that, in the drone antenna array, precisely adjusting the elements’ phase is more challenging than the phased array whose elements are directly connected. In addition, a linear phased array cannot perform 3D beam steering. Hence, in our model, the drones dynamically adjust their positions in order to steer the beam towards ground users. Clearly, the service time, which is the time needed to serve the ground users, depends on the transmission time and the control time during which the drones must move and stabilize their locations. The transmission time is inversely proportional to the downlink data rate which depends on the signal-to-noise-ratio (SNR) which is, in turn, function of the array’s beamforming gain.

The service time is an important metric for both users and drones. A lower service time yields a lower delay and, hence, higher quality-of-service for the users. Also, the service time is directly related to spectral efficiency as it depends on data rate and transmission bandwidth. For drones, a lower service time corresponds to a shorter flight time and less energy consumption. In fact, minimizing the service time improves both energy and spectral efficiency. Therefore, our goal is to minimize the total service time of the ground users by optimally adjusting the drones’ locations, within a minimum control time, that can provide a maximum data rate.
For drone-to-ground communications, we consider a line-of-sight (LoS) propagation model as done in [4] and [14]. Such a channel model is reasonable here as the effect of multipath is significantly mitigated due to the high altitude of drones and using beamforming [14]. The transmission rate from the drone antenna array to ground user in a far-field region is given by [14]:


where , , , representing the 3D coordinates of the drones while serving user . is the transmission bandwidth, is the distance between the origin of the array and user , is the total transmit power of the array, is the noise power, and is the constant path loss coefficient. is the gain of the antenna array towards the location of user , given by [23]:


where is the antenna array efficiency which is multiplied by directivity to compute the antenna gain. In fact, the antenna gain is equal to the antenna directivity multiplied by . In (2), is the array factor which can be written as [23]:


where is the phase constant, and is the wavelength. Note that, the overall radiation pattern of the antenna array is equal to which follows from the pattern multiplication rule [23].

Now, the total time that the drones spend to service the ground users will be:


where shows the total service time, is the load of user which represents the number of bits that must be transmitted to user . is the control time during which the drones adjust their locations according to the location of ground user . In particular, captures the time needed for updating the drones’ locations from state (i.e., locations of drones while serving user , ) to state

. The control time is obtained based on the dynamics of the drones and is a function of control inputs, external forces, and the movement of drones. In fact, each drone needs a vector of control inputs in order to move from its initial location to a new location while serving different users. For quadrotor drones, the rotors’ speeds are commonly considered as control inputs. Therefore, in (

4), we have with being the speed of rotor of drone at time . The maximum speed of each rotor is . In this case, one can minimize the control time of the drones by properly adjusting the rotors’ speeds. In Section LABEL:TimeControlSec, we will provide a detailed analysis of the control time given the drones’ dynamics.

Given this model, our goal is to minimize the total service time of drones by finding the optimal locations of the drones with respect to the center of the array, as well as the optimal control inputs. Our optimization problem, in its general form, is given by:

st. (6)

where , , and are matrices whose rows are, respectively, vectors , , and , . The constraint in (6) indicates that the minimum separation distance between two adjacent drones must be greater than to avoid collision. (7) represents the constraints on the speed of each rotor. Note that, the first term in (5) represents the transmission time which depends on the drones’ locations. The second term, , is the control time which is a function of the rotors’ speeds as well as the drones’ locations. Solving (5) is challenging as it is highly nonlinear due to (2). Moreover, as we can see from (3), the array factor is a complex function of the array element’s positions. In addition, due to the nonlinear nature of quadrotor’s dynamic system, finding the optimal control inputs is a challenging task, as will be discussed in Section LABEL:TimeControlSec.

We note that, considering a narrow-beam antenna array communication, (5) can be solved by separately optimizing drones’ locations and rotors’ speeds. In the narrow-beam case, the drone array must perfectly steer its beam towards each ground user. Hence, we can first determine the optimal drones’ positions and, then, optimize the rotors’ speeds to move to these optimal positions within a minimum time. Our approach for solving (5) includes two key steps. First, given the location of any ground user, we optimize the locations of the drones in the linear array to minimize the transmission time. As a result, given ground users, we will have sets of drones’ locations. In the second step, using the result of the first step, we determine the drones’ optimal control strategy to update their locations within a minimum time. While, in general, this approach leads to a suboptimal solution, it is analytically tractable and practically easy to implement. Next, we will optimize the location of drones to achieve a minimum transmission time for any arbitrary ground user.

Iii Optimal Positions of Drones in Array for Transmission Time Minimization

In this section, we determine the optimal positions of the drones in the array based on the location of each user such that the transmission time to the user is minimized. Clearly, given (1), (2), and (4), to minimize the transmission time, we need to maximize the array gain (i.e., directivity) towards each ground user.

Without loss of generality, we consider an even number of drones. For an odd number of drones, the same analysis will still hold. Now, the array factor for

drones located on the -axis of the Cartesian coordinate can be given by:


where , and is the distance of element from the center of the array (origin). Also, follows from the fact that the array is symmetric with respect to the origin, and is based on the Euler’s rule.

Now, we can maximize the directivity of the array by optimizing , :


where are the polar and azimuthal angles at which the total antenna pattern has a maximum value. Clearly, solving (9) is challenging due to the non-linearity and complex expression of the objective function of this optimization problem. Moreover, this problem is non-convex and, hence, cannot be exactly solved using classical convex optimization methods. Next, we solve (9) by exploiting the perturbation technique [21]. In general, perturbation theory aims at finding the solution of a complex problem, by starting from the exact solution of a simplified version of the original problem [19]. This technique is thus useful when dealing with nonlinear and analytically intractable optimization problems such as (9).

Iii-a Perturbation Technique for Drone Spacing Optimization

To optimize the distance between drones, we first consider an initial value for the distance of each drone from the origin. Then, we find the optimal perturbation value that must be added to this initial value222We assume that the distance between adjacent drones is greater than the minimum distance required for collision avoidance.. Let be initial distance of drone from the origin, then, the perturbed distance will be:


where , with being the wavelength, is the perturbation value. Given (10), the array factor can be approximated by:


where in () we used the trigonometric properties, and the fact that for small values of . Clearly, given , the numerator of (9) can be computed based on the values of , . Hence, given , our optimization problem in (9) can be written as:

s.t. (13)

where is the perturbation vector having elements , .

For brevity, we define the following functions:

Theorem 1.

The optimization problem in (12) is convex, and the optimal perturbation vector is the solution of the following system of equations:


where is an matrix with:


and whose elements are given by:


In (16), is a vector of Lagrangian multipliers, whose element is , with being a Lagrangian multiplier associated with constraint .


See Appendix . ∎

Using Theorem 1, we can update the distance of each drone from the origin as follows:


where , and , .

Clearly, leads to a better solution than . In fact, we can proceed and further improve the solution to (12) by updating . In particular, at step update , we find as follows:


where is the optimal perturbation vector at step which is obtained based on .

Note that, at each step, the objective function in (12) decreases. Since the objective function is monotonically decreasing and bounded from below, the solution converges after several updates. We note that due to the approximation used in (11), the solution may not be a global optimal. Nevertheless, as we can see from Theorem 1, it is analytically tractable and, hence, it has a low computational complexity. Here, we use to represent the vector of nearly-optimal distances of drones from the original of the array. Next, we use to determine the optimal 3D locations of the drones that result in a maximum array directivity towards a given ground user.

Iii-B Optimal Locations of Drones

Here, following from Subsection III-A, we derive the optimal 3D positions of drones that yields a maximum directivity of the drone-based antenna array. Let and be, respectively, the 3D locations of user and the origin of the antenna array.

Without loss of generality, we translate the origin of our coordinate system to the origin of the antenna array. In other words, we assume that the arrays’ center is the origin of our translated coordinate system. In this case, the 3D location of user will be . Subsequently, the polar and azimuthal angles of user in the spherical coordinate (with an origin of antenna array) are given by:


Now, the optimal locations of the drones in the antenna array is given as follows.

Theorem 2.

The optimal locations of the drones for maximizing the directivity of the drone-based antenna array towards a given ground user will be:


where and are the initial polar and azimuthal angles of drone with respect to the array’s center. is the rotation matrix for updating drones’ positions, given by:


where , , , . Moreover, , , and are the elements of vector .

Iv Simulation Results and Analysis

For our simulations, we consider a number of ground users uniformly distributed within a square area of size

. Unless stated otherwise, the number of users is 100, and the number of drones333In our simulations, each drone in the array has an omni-directional antenna, as in [16, 17]. that form a linear array is assumed to be 10. The main simulation parameters are given in Table I. We compare the performance of our drone-based antenna array system with a case in which the same number of drones are deployed separately to serve ground users (hereinafter, this case is referred to as multi-drones). In the multi-drone scenario, multiple drones are separately deployed based on a grid-based deployment. In this case, each drone serves its associated ground users which are determined based on the minimum distance association rule. For the multi-drones case, we do not consider any control time. All statistical results are averaged over a large number of independent runs.

Fig. 2 shows the total service time for the drone antenna array and the multi-drone case. Fig. 2 shows that, for a given bandwidth, our proposed drone antenna array outperforms the multi-drone case in terms of service time. This is because, in the proposed approach, the drones’ locations are adjusted such that the array antenna gain towards each user is maximized, hence reducing the transmission time. Fig. 2 also shows the tradeoff between bandwidth and service time. Clearly, the service time decreases by using more bandwidth which effectively provides a higher data rate. Fig. 2 shows that the drone antenna array improves spectral efficiency compared to the multi-drones case. For instance, to achieve 10 minutes of service time, the drone antenna array will require 48% less bandwidth than in the multi-drones scenario.

Figure 2: Service time vs. bandwidth for the drone antenna-array and multi-drones cases.

In Fig. 3, we show the impact of the number of users on the service time. Clearly, the service time increases as the number of users increases. For a higher number of users, the drones must deliver a higher data service which results in a higher transmission time. Moreover, in the drone antenna array case, the control time also increases while increasing the number of users. Fig. 3 shows that our proposed drone antenna array system outperforms the multi-drones case for various number of users. For instance, using our approach, the average service time can be reduced by 20 min (or 30%) while serving 400 users. Hence, compared to the multi-drones case, the drones need to fly for 20 min less in order to service the ground users. Meanwhile, the users can receive faster wireless services while exploiting the proposed drone antenna array system.

Figure 3: Service time vs. number of users for the drone antenna array and multi-drones cases (for 2MHz bandwidth).

Fig. 4 shows how the control, transmission, and service times resulting from the proposed approach for different numbers of drones in the array. As the number of drones increases, the control time increases. In contrast, the transmission time (for 10 MHz bandwidth) decreases due to the increase of the array gain. Fig. 4 shows that, by increasing the number of drones from 10 to 30, the average control time increases by 20% while the average transmission time decreases by 36%. Therefore, there is a tradeoff between the transmission time and the control time as a function of the number of drones in the array. In this figure, the decrease in the transmission time is more than the additional control time and, thus, the total service time decreases by increasing the number of drones.

Figure 4: Control, transmission, and service times vs. number of drones.

In Fig. 5, we show how the number of users impacts the control time. As we can see from this figure, the control time increases while serving more users. This is due to the fact that, for a higher number of users, the drone-array must move more in order to steer its beam toward the users. The control time can be reduced by increasing the maximum speed of the rotors, which is in agreement with Theorem 3. For instance, increasing the maximum rotors’ speed from 300 rad/s to 500 rad/s yields around 35% control time reduction when serving 200 users.

Figure 5: Total control time vs. number of users.

Fig. 6 represents the speeds of the rotors needed to ensure the drone’s stability in presence of wind, obtained using (51). Clearly, the drone is stable when its total force which is composed of the wind force, gravity, and the drone force is zero. For , the rotor’s speed must increase as the wind force increases. In the case, however, the rotor’s speed first decreases, and then increases. This is because, when  N, the wind force helps hovering the drone by compensating for the gravity. Hence, the drone’s force can be decreased by decreasing the speed of its rotors. For  N, the rotor’s speed start increasing such that the total force on the drone becomes zero. This result also implies that, in some cases (depending on the magnitude and direction of wind), wind can facilitate hovering of the drone by overcoming the gravity force. However, in case of strong winds, the drone’s stability may not be guaranteed by adjusting the speed of the rotors. This is because the drone force, which is limited by the maximum rotors’ speeds, cannot overcome the external forces induced by wind and gravity forces.

Figure 6: Speed of each rotor vs. wind force under the drone’s stability condition.
Parameter Description Value
Carrier frequency 700 MHz
Drone transmit power 0.1 W

Total noise power spectral density -160 dBm/Hz
Number of ground users 100

Array’s center coordinate (0,0,100) in meters

Load per user 100 Mb

Pathloss exponent 3

Moments of inertia [29]

Mass of each drone 0.5 kg

Distance of a rotor to drone’s center 20 cm

lift coefficient [29]

Phase excitation difference for two adjacent antennas
Table I: Main simulation parameters.

V Conclusion

In this paper, we have proposed a novel framework for employing a drone-enabled antenna array system that can provide wireless services to ground users within a minimum time. To this end, we have minimized the transmission time as well as the control time needed for changing the locations and orientations of the drones. First, we have optimized the positions of drones (as the array elements) within the antenna array such that the transmission time for each user is minimized. Next, given the determined locations of drones, we have minimized the control time of the quadrotor drones by optimally adjusting the rotors’ speeds. Our results have shown that the proposed drone antenna array with the optimal configuration yields a significant improvement in terms of the service time, spectral and energy efficiency. In addition, our results have revealed key design guidelines and fundamental tradeoffs for leveraging in an antenna array system. To our best knowledge, this is the first comprehensive study on the joint communications and control of drone-based antenna array systems.


V-a Proof of Theorem 1

First, we find by using (11):

Subsequently, our objective function in (12) can be written as:


where and are given in (17) and (18). Clearly, (25) is a quadratic function of . Therefore, (25) is convex if and only if is a positive semi-definite matrix. Given (17), we have:


Now, in (17), let us define


then, using (26), we have:


In (15), we can see that for . Hence, from (28), we can conclude that . Therefore, is positive semi-definite and the objective function in (12) is convex. Moreover, the constraints in (13) are affine functions which are convex. Hence, this optimization problem is convex. Now, we find the optimal perturbation vector by using Karush-Kuhn-Tucker (KKT) conditions. The Lagrangian function will be:


where , are the Lagrange multipliers.

The necessary and sufficient (due to the convexity of the problem) KKT conditions for finding the optimal perturbation vector are given by:


which leads to , with being a vector whose element is . Based on the complementary slackness conditions, we have:


Finally, the optimal perturbation vector, , can be determined by solving (30) and (31). This proves the theorem.

V-B Proof of Theorem 2

In Subsection III-A, we have derived the optimal distance of drones from the origin that leads to a maximum array directivity. First, we consider an initial (or arbitrary) orientation, as shown in Figure LABEL:Ther1Fig. Let be the optimal distance of drone from the array’s center, and be the initial polar and azimuthal angles of the drone. Based on the considered drones’ locations, let be a direction at which the directivity of the array is maximized. Our goal is to achieve the maximum directivity at a given direction corresponding to user . Therefore, we need to change the locations of the drones such that , and . To this end, we align the unit vector with in the spherical coordinate and, then, we update the drones’ positions accordingly. In the Cartesian coordinate system, we need to rotate vector such that it becomes aligned with .

The rotation matrix for rotating a vector about another vector with a rotation angle, is [30]:


In our problem, the rotation between and can be done about the normal vector of these vectors, with the rotation angle being the angle between and . Hence, based on the dot-product and cross-product of vectors, we use , and to find the rotation matrix in (32). Now, we update the locations of drones using the rotation matrix. Clearly, for , the initial location of drone in the Cartesian coordinate is . As a result, the optimal locations of drones for serving user is given by:


Finally, due to the symmetric configuration of the antenna array about the origin, the optimal locations of drones when are as follows:


This completes the proof.

V-C Proof of Lemma 2

To maximize the drone’s acceleration towards the given location , we need to maximize the total force in the direction of . Considering the center of the drone as the origin of the Cartesian and spherical coordinate systems, we can present the vectors of forces and the movement as in Fig. LABEL:Forces. In this figure, based on the Cartesian-to-spherical coordinates transformation, the polar and azimuthal angles in the spherical coordinate are given by , , , and . Let and be, respectively, the polar and azimuthal angles of the drone’s force. Here, we seek to determine and such that the drone can move towards location with a maximum acceleration (i.e., maximum total force). In this case, the total force must be in the same direction as . Let be the angle between and , and be the angle between and . To ensure that is in the direction of , we should have:


Also, using the inner product formula, is given by:


As a result, will be:


Now, based on the law of cosines, the total force magnitude is equal to:


By projection , , and on -axis and plane, we have:


Subsequently, we obtain and as follows:


Finally, considering the fact that the drone’s force is perpendicular to its rotors’ plane, as well as using the transformation between body-frame and earth-frame, the drone’s orientation can be given by444Note that, we consider as the initial drone’s orientation. Here, to change the orientation, we first update the pitch angle and, then, we update the roll angle.:


which proves Lemma LABEL:Lem1.

V-D Proof of Theorem 3

Let be the distance that the drone moves towards destination at time . We define state , and provide the following equation:


where is the drone’s acceleration towards , with and being the minimum and maximum values of . Clearly, the drone can reach the destination and stop at within duration , if . Based on Lemma LABEL:Bangbang, is minimized when . Now, we find by using kinematic equations that describe an object’s motion. Let be the distance between the initial and the final locations of the drone. Clearly, the drone’s displacement until is equal to . During , the displacement will be . Hence, the total drone’s disparagement is:


Also, considering the fact that drone stops (i.e. zero speed) at , we have:


According to (45) and (46), the total control time, , and the switching time can be found by:


As we can see from (47), can be minimized by maximizing and minimizing . To this end, we will adjust the drone’s orientation as well as the rotors’ speeds. Each drone’s orientation can be determined by using Lemma LABEL:Lem1. Also, given (LABEL:Velocit)-(LABEL:az), we can show that the optimal speeds of the rotors are .

To adjust the drone’s orientation within a minimum time, we minimize the time needed for the pitch and roll updates. Using a similar approach as in (44), and considering (LABEL:Velocit), (LABEL:pitc), (LABEL:rol), and zero yaw angle (i.e. ), the optimal rotors’ speeds can be given by: