Abstract
In recent years, the development of unmanned aerial vehicles (UAVs) has increased significantly and they are currently used in various fields and applications. In some applications, multiple UAVs need to be cooperated to accomplish tasks, because a single UAV is not sufficient. However, even when multiple UAVs are used, their autonomous control systems are not perfect, which leads to collisions between the UAVs. In this paper, we propose a path planning method for collision avoidance of UAVs, when multiple UAVs are controlled using a ground control system. Furthermore, using this method, the UAVs have less likelihood to be in a close encounter with obstacles, and collisions are avoided.
Access provided by CONRICYT-eBooks. Download conference paper PDF
Similar content being viewed by others
Keywords
1 Introduction
As applications of unmanned aerial vehicles (UAVs) have been increasing, more fields are trying to use UAVs. A few examples are search and rescue operations, surveillance systems, crop dusting, and performances using multiple UAVs [1–4].
When a single UAV is used, it can take a long time to accomplish tasks, or even fail. This problem can be resolved using multiple UAVs. However, to operate multiple UAVs in a ground control system, it is necessary to apply a collision avoidance technique to the system.
In this paper, we propose a path planning method for collision avoidance of multiple UAVs based on recorded UAV flight data. A geometric arithmetic algorithm is used to plan the flight paths for multiple UAVs, predict possible collisions before operation, and prevent collisions [6]. While traditional geometric arithmetic algorithms use the velocity information of UAVs, the proposed method computes the differences in recorded UAV flight data. Because the method uses the recorded UAV flight data to plan the paths, it can consider the collision issues less than traditional algorithms.
The rest of this paper is organized as follows: In Sect. 2, we propose a path planning method for multiple UAVs. In Sect. 3, the implementation of the proposed method is described, the operations are verified, and the conclusions are provided.
2 Multiple UAV Control for Collision Avoidance
The method for generating collision avoidance paths is described in Fig. 1. In the first stage, i.e., the flight record correction stage, a user records UAV flight data while controlling the UAV with a controller. In the second stage, i.e., the flight record revision stage, a path revision algorithm is used to revise the paths recorded in the first stage. Finally, in the third stage, i.e., the avoidance path planning stage, the system generates the paths in which no collisions between UAVs would occur.
2.1 UAV Flight Data Records
The hourly states of the nth UAV record are defined as the collected state set, Sn, as shown in Eq. (1). The collected state, Sn,i, indicates the ith collected state of the collected state set, Sn. Then, the collected state, Sn,i, is described in terms of four components, xn,i, yn,i, zn,i, and tn,i, which represent the GPS latitude, the GPS longitude, the absolute altitude, and the flight time from departure, respectively. Finally, the collected states, Sn,i, are added to the collected state set, Sn,i, to record.
2.2 Path Revision Computations
To revise the collected flight data, the Douglas–Peucker algorithm is applied [5]. This algorithm suggests a path revision method in two-dimensional space (f:pn,i → Rn,j) and advances the method to a three-dimensional path revision method. This method is not included in this paper.
The collected state set, Sn, is revised to make the revised state set, Rn, as shown in Eq. (3). The revised state, Rn,j, is the jth revised state in the revised state set, Rn, and is defined by Eq. (4). The element in the revised state set, Rn, uses the element of the collected state set, Sn, to define the collected state, Sn,i, which contains the \( \left[ {x_{n,i} ,y_{n,i} ,z_{n,i} } \right] \) elements that are outside the error tolerance, as the revised state, Rn,j.
2.3 Collision Avoidance Path Planning
The avoidance state set, An, is defined by Eq. (5). The avoidance state, An,k, is defined as the kth avoidance state, and is shown in Eq. (6). The state-difference set, Dn, is defined by Eq. (7). The state-difference, Dn,j, is the jth element of the state-difference set, Dn, and is shown in Eq. (8). The avoidance point set, Pn, is defined by Eq. (9). The avoidance point, Pn,k, is the kth element of the avoidance point set, Pn, and is shown in Eq. (10). Finally, the direction pointing to the avoidance point, Pn,j, is defined as \( {\text{U}}_{{{\text{n}},{\text{j}}}} = \left[ {x_{n,j} ,y_{n,j} ,z_{n,j} } \right] \).
The computational time, \( {\text{t}}_{\text{n,m}}^{{\prime }} \), is defined as the mth element of the computational time set, \( T_{n}^{{\prime }} = \left\{ {0, 1, \cdots ,t_{n,\left| R \right| - 1} \,of\, R_{n} - t_{n,1} \,of\, R_{n} - 1, t_{n,\left| R \right|} \,of\, R_{n} - t_{n,1} \,of\, R_{n} } \right\} \), where n! = MAX(n). \( {\text{h}}\left( {n1, n2,m} \right) \) is \( \mathop { \hbox{max} }\limits_{j} \)(\( t_{n1,j} \,of\, R_{n1} - t_{n,1} \,of\, R_{n1} \)) where \( t_{n1,j} \, of\, R_{n1} - t_{n1,1} \, of\, R_{n1} < t_{n2,m}^{{\prime }} \).
There are nine steps in the generation procedure. First, the values of n1 and n2 that satisfy the condition n1 < n2 need to be determined, and m is set to be 1. If the values of n1 and n2 cannot be determined, then the generation of the collision avoidance path is terminated.
Second, if \( A_{n} \ne \emptyset \), then each element of the avoidance state set, An, is added to the revised state set, Rn, in order, and the avoidance state set, An, and the state-difference set, Dn, are set to be null sets.
Third, the state-difference set, Dn, is computed using the revised state set, Rn. Each element of the state-difference set, Dn, is calculated as shown in Eq. (11); it is the difference between the adjacent elements of the revised states in the revised state set, Rn.
Fourth, the indices j1 and j2 are determined. Set \( {\text{j}}1 = h(n1,n1,m) \) and \( {\text{j}}2 = h(n2,n1,m) \).
Fifth, the revised states, Rn1,j1 and Rn2,j2, are added to the avoidance state sets, An1 and An2, respectively, using Eq. (12).
Sixth, using the geometric arithmetic algorithm and the state-differences, Dn1,j1 and Dn2,j2, the time for reaching the collision prediction point, \( {\text{t}}^{{\prime \prime }} \), and the directions pointing to the avoidance point, Un1,j1 and Un2,j2, are computed, where \( {\text{g}}:{\text{D}}_{{{\text{n1}},{\text{j1}},}} {\text{D}}_{{{\text{n2}},{\text{j2}}}} \to \left[ {{\text{t}}^{{\prime \prime }} ,{\text{ U}}_{{{\text{n1}},{\text{j1}},}} {\text{U}}_{{{\text{n2}},{\text{j2}}}} } \right] \) [6]. If \( {\text{t}}^{{\prime \prime }} \le 0 \) or j1 = |Rn1|, the system skips to the ninth step without performing the seventh and the eighth steps, because the collision cannot be predicted under those conditions. Otherwise, the system performs the remaining steps in order.
Seventh, the avoidance point is generated using the directions pointing to the avoidance point, Un1,j1 and Un2,j2. Un1,j1 is always generated, while Un2,j2 is not. Therefore, when Un2,j2 is not generated, Un1,j1 is computed using Eq. (13) to generate the avoidance point, Pn1,j1.
Eighth, the generated avoidance point, Pn,j, is added as the last element of the avoidance state set, An. For example, the possible flight time is predicted when the avoidance point, Pn1,j1, is generated, and added as the last element of the avoidance state, An, using Eq. (14).
Ninth, if \( {\text{t}}_{\text{n,m}}^{{\prime }} \) is not the last element of \( {\text{T}}_{\text{n}}^{{\prime }} \), then m is increased by 1 and the procedure is repeated starting from the fourth step. If \( {\text{t}}_{\text{n,m}}^{{\prime }} \) is the last element of \( {\text{T}}_{\text{n}}^{{\prime }} \), then the procedure is repeated starting from the first step.
3 Experiments
3.1 Three-Dimensional Experiments Scenario and UAV Flight Data Record
In this study, we conducted experiments to verify the proposed method for the path planning based on the collected UAV flight data and for avoiding collisions between the UAVs. The proposed method was verified using a scenario that we designed. The flight record in this scenario includes external disturbances, such as wind and an inexperienced pilot, and internal disturbances, such as GPS position error. The unstable records are shown in Fig. 2.
3.2 Path Revision Computation
In this study, the path was revised in three-dimensional space. The results are shown in Fig. 3. By correcting the collected flight data, the graphs became considerably stable and therefore, it is expected that the UAVs would not stop during autonomous flight.
3.3 Experiments for the Generation of the Collision Avoidance Path
In this study, a three-dimensional collision avoidance algorithm was applied [6]. The path generated through collision avoidance is shown in Fig. 4.
In the experiments, two collision points were predicted and these were reflected in the system such that the UAV could change its path along the Z-axis to avoid collision. Finally, the two collision points, (65.00504, 49.98345, 0.50015, 3.5) and (34.98355, 50.02151, 1.500367, 6.5), were added to the avoidance state set, A1.
3.4 Conclusion
In this paper, we propose a method to collect and revise UAV flight data through a user with a UAV controller, and path adjusting and planning techniques for collision avoidance of UAVs. When multiple UAVs are controlled by a ground control system using the proposed method, the UAVs have less likelihood to be in a close encounter with obstacles and other UAVs. Therefore, the system would have less burden to consider the collision issues than traditional algorithms.
References
Fahlstrom, P.G., Gleason, T.J.: Introduction to UAV Systems, 4th edn. Wiley, Chichester (2012)
Bellingham, J.S., Tillerson, M., Alighanbari, M., How, J.P.: Cooperative path planning for multiple UAVs in dynamic and uncertain environments. In: 41st IEEE Conference on Decision and Control, Las Vegas, Nevada USA, 10–13 December, vol. 3, pp. 2816–2822 (2002)
Cacace, J., Finzi, A., Lippiello, V.: Multimodal interaction with co-located drones for search and rescue. In: 2nd Workshop on Artificial Intelligence and Robotics, Ferrara, Italy, 22 September, vol. 1544, pp. 54–67 (2015)
Sung, Y., Kwak, J., Yang, D., Park, Y.: Ground station design for the control of multi heterogeneous UAVs. In: Korea Multimedia Society Spring Conference, 28–30 May, vol. 18, no. 1, pp. 829–830. Andong Culture and Art Center, Andong (2015)
Douglas, D.H., Peucker, T.: Algorithms for the reduction of the number of points required to represent a digitized line or its caricature. Can. Cartographer 10(2), 112–122 (1973)
Park, J., Oh, H., Tahk, M.: UAV collision avoidance based on geometric approach. In: The Society of Instrument and Control Engineers (SICE) Annual Conference, 20–22 August 2008, pp. 2122–2126. The University of Electro-Communications, Tokyo (2008)
Acknowledgments
This work was supported by the Korea Foundation for the Advancement of Science & Creativity (KOFAC), and funded by the Korean Government (MOE).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Kim, H., Kwak, J., Sim, G., Sung, Y. (2017). Path Planning Method for Collision Avoidance of Multiple UAVs. In: Park, J., Chen, SC., Raymond Choo, KK. (eds) Advanced Multimedia and Ubiquitous Engineering. FutureTech MUE 2017 2017. Lecture Notes in Electrical Engineering, vol 448. Springer, Singapore. https://doi.org/10.1007/978-981-10-5041-1_9
Download citation
DOI: https://doi.org/10.1007/978-981-10-5041-1_9
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-10-5040-4
Online ISBN: 978-981-10-5041-1
eBook Packages: EngineeringEngineering (R0)