Unmanned aerial vehicle cooperative positioning method based on multi-modal data
By dividing the UAV swarm into clusters and dynamically adjusting the Kalman gain, and combining multimodal data to correct the positioning coordinates, the problem of decreased positioning accuracy of UAV swarms in complex environments was solved, achieving higher positioning accuracy and reliability.
Patent Information
- Application Number
- CN202511597424.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-04
- Publication Date
- 2026-01-13
- Estimated Expiration
- 2045-11-04
AI Technical Summary
In complex environments, the collaborative positioning accuracy of UAV swarms decreases, mainly due to positioning errors caused by wireless signal blockage and adjacent channel interference, which affects the communication stability and positioning accuracy between UAVs.
A UAV cooperative localization method using multimodal data is proposed. By dividing the UAV swarm into clusters, dynamically adjusting the Kalman gain of the Kalman filter algorithm, and combining the received signal strength and frequency domain differences, the positioning coordinates of the UAVs are corrected, thereby reducing positioning errors.
It improves the accuracy and reliability of UAV cooperative positioning, reduces positioning errors caused by UAV obstruction and adjacent channel interference, and enhances the positioning accuracy of UAV swarms in complex environments.
Smart Images

Figure CN121048639B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of radio positioning technology, specifically to a UAV cooperative positioning method based on multimodal data. Background Technology
[0002] Drone swarms, composed of multiple drones, offer superior performance compared to single drones in tasks such as area search and enemy aircraft interception. Accurate estimation of their own positions is a prerequisite for drones to complete missions. During mission execution, drones communicate with each other via wireless signals. Radio ranging is achieved by measuring the strength of received wireless signals, enabling cooperative positioning among the drones.
[0003] In complex environments, the performance of ranging by receiving signal strength will drop sharply, leading to a decrease in the positioning accuracy of drones. This is because: the propagation of wireless signals may be affected by the obstruction of other drones, resulting in varying degrees of attenuation and multipath fading, which affects positioning accuracy. At the same time, during the operation of a drone swarm, the continuous changes in the relative positions of drones and the frequency hopping communication of orthogonal frequency division multiplexing will cause changes in the degree of adjacent channel interference between subcarriers of different drones, further affecting the positioning accuracy of drones. Summary of the Invention
[0004] In view of the above, it is necessary to provide a UAV cooperative localization method based on multimodal data, which improves the accuracy and reliability of UAV cooperative localization compared with traditional UAV cooperative localization methods based on multimodal data.
[0005] The UAV cooperative localization method based on multimodal data in this application adopts the following technical solution:
[0006] One embodiment of this application provides a UAV cooperative localization method based on multimodal data, the method comprising the following steps:
[0007] The system has a preset positioning update cycle. In each cycle, the connectivity of each drone is obtained by analyzing the location distribution and communication range of the drones in the swarm. This allows the swarm to be divided into clusters. Within each cluster, one drone is selected as the master drone, and the rest are slave drones. The received signal strength and angle of arrival of the signals transmitted by each slave drone to the master drone are obtained, thus acquiring the master drone's three-dimensional motion information. By analyzing the differences in received signal strength between each slave drone and the other slave drones in historical cycles, as well as the changes in connectivity of drones within each slave drone's cluster, adjustment factors for each slave drone are obtained. These factors are used to adjust the Kalman gain in the Kalman filter algorithm, predict the path loss index of each slave drone, and obtain the distance from each slave drone to the master drone in each cycle. Combined with the angle of arrival, the positioning coordinates of the master drone at the start of the next cycle are obtained. Finally, by combining the master drone's position coordinates at the start of the next cycle, the three-dimensional motion information in each cycle, the prediction error of the path loss index, and the frequency domain differences in the received signals of different slave drones in each cycle, the positioning of the master drone at the start of the next cycle is corrected.
[0008] In one embodiment, the process of obtaining the connectivity is as follows:
[0009] In a drone swarm, drones whose distance from each other to each other is less than the maximum communication radius of each drone are considered as drones capable of establishing effective communication with each other. The ratio of the distance from each drone to each drone capable of establishing effective communication with each other to the maximum communication radius of each drone is calculated. The cumulative sum of the ratios of all drones capable of establishing effective communication with each other is taken as the connectivity of each drone.
[0010] In one embodiment, the method for dividing the cluster is as follows:
[0011] All drones in each period are sorted in descending order of connectivity. The drones with the first preset proportion are taken as candidate cluster heads. Each non-candidate cluster head drone is assigned to a cluster with the candidate cluster head drone with the shortest distance. If each non-candidate cluster head drone is simultaneously assigned to a cluster with the shortest and equal distance to multiple candidate cluster head drones, each non-candidate cluster head drone is assigned to a cluster with the candidate cluster head drone with the shortest distance and the highest connectivity.
[0012] In one embodiment, the method for obtaining the adjustment factor is as follows:
[0013] Preset each control period for each cycle and each neighboring drone for each drone;
[0014] Obtain the average value of the difference in received signal strength between each slave drone and all its neighboring slave drones in each period;
[0015] Calculate the deviation between the connectivity of each neighboring drone of each drone in each period and its connectivity in each control period; calculate the sum of the deviations of all neighboring drones of each drone in each period in each control period; and calculate the mean of the sums of each drone in each period across all control periods.
[0016] The adjustment factor is obtained by the average value of each drone over all control periods in each period, and the average value itself.
[0017] In one embodiment, the adjustment factor is calculated as follows:
[0018] Calculate the sum of the average values of each UAV over all control periods in each period;
[0019] The adjustment factor is the normalized result of the weighted sum of the sum and the mean.
[0020] In one embodiment, the method for adjusting the Kalman gain in the Kalman filter algorithm is as follows: the product of the adjustment factor of each slave UAV in each period and the Kalman gain before adjustment in the Kalman filter algorithm is used as the Kalman gain when the Kalman filter algorithm estimates the path loss index of each slave UAV in each period.
[0021] In one embodiment, the estimation of the path loss index of each UAV includes: using a Kalman filter algorithm to estimate the path loss index of each UAV in each period, wherein the vector formed by arranging the path loss indices of each UAV in all reference periods in each period in chronological order is used as the state vector of the Kalman filter algorithm.
[0022] In one embodiment, the process of correcting the positioning of the main UAV at the start time of the next cycle is as follows:
[0023] By measuring the frequency difference in the frequency domain of the received signals from different drones in the cluster where each drone is located, the frequency difference value in each period is obtained.
[0024] Construct a drone swarm coordinate system; perform coordinate transformation on the position coordinates of the master drone at the start of the next cycle to obtain the coordinates of the master drone in the drone swarm coordinate system at the start of the next cycle, and denote it as the first coordinate.
[0025] By utilizing the displacement information obtained from the three-dimensional motion information of the main UAV within each cycle, and combining it with the position coordinates of the main UAV at the start of each cycle, the coordinates of the main UAV at the start of the next cycle in the UAV swarm coordinate system are obtained, and denoted as the second coordinate.
[0026] Obtain the sum of the traces of the error covariance matrices when the Kalman filter algorithm predicts the path loss exponent of all UAVs in each period;
[0027] Based on the summation and the frequency difference value, the positioning coordinates are corrected according to the degree to which the first coordinate and the second coordinate deviate from the positioning coordinates.
[0028] In one embodiment, the process of obtaining the frequency difference value is as follows:
[0029] Calculate the amplitude difference in the frequency domain between any two received signals from the UAV within each period;
[0030] The frequency difference value is a normalized value of the sum of the amplitude differences between any two UAVs in each period.
[0031] In one embodiment, the process of correcting the positioning coordinates is as follows:
[0032] Calculate the cumulative value of the difference between the first coordinate, the second coordinate, and the positioning coordinate;
[0033] Map the frequency difference value to a value greater than 0, calculate the ratio of the normalized value of the sum to the value greater than 0, and calculate the product of the sum and the ratio.
[0034] The sum of the product of the positioning coordinates and the product is used as the corrected positioning coordinates of the main UAV at the start of the next cycle.
[0035] This application has at least the following beneficial effects:
[0036] This application divides the UAV swarm into clusters, which can reasonably divide the UAVs into multiple small clusters. The communication between UAVs in each cluster is more stable and efficient, which is conducive to subsequent collaborative positioning within the cluster. By analyzing the changes in the received signal strength difference between each slave UAV and its neighboring slave UAVs over a historical period, as well as the changes in the connectivity of UAVs in each slave UAV's cluster, adjustment factors reflecting changes in the communication environment and communication status can be obtained. This allows for dynamic adjustment of the Kalman gain, enabling the Kalman filter algorithm to quickly adjust the predicted value of the path loss index according to environmental changes. This more accurately reflects the propagation characteristics of the signal in the actual environment, thereby improving the accuracy of signal strength-based ranging, reducing distance estimation errors caused by changes in UAV occlusion, and improving positioning accuracy.
[0037] Furthermore, by obtaining the frequency difference value through the difference in the frequency domain of the received signals corresponding to different UAVs in each cycle, the degree of adjacent channel interference is assessed. Combined with the prediction error of the path loss index and multiple modal data, the positioning coordinates of the main UAV are corrected to reduce positioning error and improve the accuracy and reliability of UAV cooperative positioning. Attached Figure Description
[0038] To more clearly illustrate the technical solutions and advantages in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0039] Figure 1 A flowchart illustrating the steps of the UAV cooperative localization method based on multimodal data provided in this application;
[0040] Figure 2 This is a schematic diagram illustrating the process of obtaining the adjustment factor;
[0041] Figure 3 A schematic diagram illustrating the process of obtaining positioning coordinates for calibration. Detailed Implementation
[0042] In the description of the embodiments in this application, the words "exemplary," "or," and "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design scheme described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design schemes. Specifically, the use of the words "exemplary," "or," and "for example" is intended to present the relevant concepts in a specific manner.
[0043] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. It should be understood that, unless otherwise stated, " / " in this application means "or".
[0044] It should also be noted that the terms "first" and "second" in this application are used to distinguish similar objects, rather than to describe a specific order or sequence.
[0045] The following description, in conjunction with the accompanying drawings, details the specific scheme of the UAV cooperative localization method based on multimodal data provided in this application.
[0046] This application provides an embodiment of a UAV cooperative localization method based on multimodal data. Specifically, the following UAV cooperative localization method based on multimodal data is provided. Please refer to [link / reference]. Figure 1 The method includes the following steps:
[0047] Step 1: Preset the positioning update cycle. Within each cycle, obtain the received signal strength and angle of arrival of the received signals transmitted by each other UAVs, and obtain the three-dimensional motion information of each UAV.
[0048] This application improves the positioning accuracy of drones by installing various types of data acquisition devices on the drone, collecting multimodal data, and correcting the positioning results based on radio wave ranging based on the measurement principle of multimodal data and the differences in drone positioning methods.
[0049] In this embodiment, each drone in the drone swarm is equipped with a wireless communication transmitter for transmitting signals. The wireless communication transmitter uses the 5GHz frequency band and supports orthogonal frequency-division multiplexing (OFDM).
[0050] In this embodiment, the path planning for the drone swarm to perform the task must ensure that there are at least 5 drones within the line of sight of each drone at any given time, so as to ensure the accuracy of collaborative positioning. Here, 5 is only one embodiment of this application, and the implementer can set its specific value according to the actual situation.
[0051] The update cycle for drone collaborative positioning is preset, and the drone's positioning is updated at the beginning of each cycle.
[0052] In this embodiment, the period length is 100ms. The period length is preset by the user and can be set by the implementer according to the actual situation. This application does not impose any special restrictions.
[0053] In this embodiment, each drone in the drone swarm is equipped with a wireless communication receiver, an inertial measurement sensor, and a global navigation satellite system receiver.
[0054] The wireless communication receiver installed on each UAV is used to receive the transmitted signals and angles of arrival of the received signals from the other UAVs. Specifically, at the beginning of the next cycle, the signals received by each UAV in each cycle are used as input, and a blind source separation algorithm is employed to output the received signal strength and angle of arrival of the received signals from each of the other UAVs. The blind source separation algorithm is a well-known technique and will not be described in detail in this application.
[0055] In this embodiment, the sampling frequency of the wireless communication receiver is 20GHz. The sampling frequency of the wireless communication receiver is preset by the user, and the implementer can set it according to the actual situation. This application does not impose any special restrictions.
[0056] A coordinate system for the UAV swarm is constructed. A Global Navigation Satellite System (GNSS) receiver is used to acquire the position coordinates of each UAV at the start of each cycle, and the coordinates of each UAV at the start of each cycle in the UAV swarm coordinate system are obtained through coordinate transformation, denoted as the first coordinate. Here, position coordinates refer to coordinates in the global coordinate system, which is a well-known technology and will not be elaborated upon in this application.
[0057] Inertial measurement sensors are used to collect the velocity information of each UAV in three dimensions of three-dimensional space during each cycle. The displacement information is then calculated through integration. Combined with the position coordinates of each UAV at the start of each cycle, the coordinates of each UAV at the start of the next cycle in the UAV swarm coordinate system are obtained, denoted as the second coordinates. The UAV swarm coordinate system is fixed. In this embodiment, the UAV swarm coordinate system refers to the geocentric inertial coordinate system, which is a well-known technology and will not be described further in this application. The UAV swarm coordinate system can be any other existing coordinate system.
[0058] Step 2: By analyzing the location distribution and communication range of the drones in the drone swarm, the connectivity of each drone is obtained to divide the drone swarm into clusters. Within each cluster, the adjustment factor of each slave drone is obtained by analyzing the difference in received signal strength between each slave drone and the other slave drones in the historical period, as well as the change in connectivity of the drones in the cluster to which each slave drone belongs. This is used to adjust the Kalman gain in the Kalman filter algorithm, estimate the path loss exponent of each slave drone, and then obtain the distance from each slave drone to the master drone in each period. Combined with the angle of arrival, the positioning coordinates of the master drone at the start of the next period are obtained.
[0059] This application utilizes multimodal data for distributed cooperative localization by dynamically clustering a drone swarm, thereby reducing the interference of dynamic drone position changes on the localization results. Dynamic clustering involves dividing the entire drone swarm into several clusters containing multiple drones, with a cluster leader drone assigned to each cluster. Cooperative localization between clusters is primarily performed by the cluster leader drone. The specific process is as follows:
[0060] First, since the signal strength of wireless signals weakens with increasing distance during transmission, this embodiment employs a positioning method based on a transmission loss model to estimate the distance between different drones. Specifically, it uses radio wave ranging between drones in a swarm based on the strength of the received signal. Considering that the transmission attenuation characteristics of wireless signals emitted by different drones in a swarm are relatively consistent in free space, the following logarithmic transmission loss model is used for each drone in the swarm, expressed as:
[0061] In the formula, denoted as d, where d represents the received signal strength at a distance of d from the transmitter; C represents the received signal strength at a preset distance from the transmitter; n represents the path loss exponent, reflecting the rate at which the received signal changes with distance, and depends on the communication environment; lg() represents the logarithmic function with base 10; d represents the distance from the transmitter.
[0062] In this embodiment, the preset distance is 1m, the received signal strength at 1m is 40dB, and the path loss index ranges from [2,4]. The preset distance and the path loss index range are both preset by the user and can be adjusted by the user according to the actual situation. This application does not impose any special restrictions. The path loss index of each UAV in the first T cycles is set to a fixed value. The values of T and the fixed value are both preset by the user and can be set by the user according to the actual situation. In this embodiment, the values of T and the fixed value are 10 and 3, respectively.
[0063] Secondly, within each period, the connectivity of each drone is obtained by using the distance between each drone and the other drones within its communication range that can establish effective communication, as well as the maximum communication radius of each drone. The expression is as follows:
[0064] In the formula, denoted by , where represents the connectivity of the 'a' drone in the 'k' period; and 'n' represents the number of drones that can establish effective communication with the 'a' drone in the 'k' period, which is the number of drones whose distance from the 'a' drone is less than the maximum communication radius of the 'a' drone in the 'k' period. This represents the spatial distance between the a-th UAV and the b-th UAV with which it can establish effective communication during the k-th period; This represents the maximum communication radius of the a-th drone.
[0065] Furthermore, the connectivity of each UAV in each period is calculated separately, and all UAVs in each period are sorted in descending order of connectivity. The UAVs in the first preset proportion are selected as candidate cluster head UAVs.
[0066] In this embodiment, the preset ratio is 20%. If the product of the number of drones and the preset ratio is not an integer, it will be rounded down. 20% is just one embodiment of this application. Implementers can set its specific value according to the actual situation. This application does not impose any special restrictions.
[0067] Each period involves a broadcast communication, where drones communicate their connectivity to each other in the form of Hello messages. For drones that are not candidate cluster heads, each drone is grouped into a cluster with the candidate cluster head drone that is closest to it. If each drone is simultaneously the shortest and equal to multiple candidate cluster head drones, then each drone is grouped into a cluster with the candidate cluster head drone that is closest to it and has the highest connectivity.
[0068] Furthermore, when drone swarms perform collaborative positioning, the drones are in a state of dynamic movement, which changes the communication blockage between drones, and the communication signals between drones are subject to varying degrees of loss and attenuation.
[0069] For any given cluster, any UAV within the cluster is designated as the master UAV, and each of the remaining UAVs in the cluster is designated as a slave UAV. The master UAV receives signals from the slave UAVs, and the received signal strength fluctuates due to changes in the communication environment. The differences in received signal strength reflect the changes in the attenuation of the wireless signals transmitted by the slave UAVs. The greater the difference in received signal strength between the master UAV and different slave UAVs, the greater the change in transmission loss caused by the change in the relative position between the master UAV and the slave UAVs. Simultaneously, the changes in the connectivity of the slave UAVs over time also reflect changes in the communication environment within the cluster, which directly affect the attenuation characteristics of the wireless signals. To reduce the error caused by the fixed path loss index when obtaining the distance between the master UAV and slave UAVs and to improve the subsequent positioning accuracy of the master UAV, a reference period is preset for each cycle. By analyzing the differences in received signal strength between each slave UAV and the other slave UAVs within the reference period, as well as the changes in the connectivity of the UAVs in the cluster to which each slave UAV belongs, and combining this with the path loss index of each slave UAV in the reference period, the path loss index of each slave UAV in each cycle is dynamically adjusted. The reference period for each period is the same as the period in which the clusters are divided. Under normal circumstances, the probability of obstruction between the master UAV and nearby slave UAVs is low, and the signal loss caused by changes in relative position of the slave UAVs is similar. However, when the slave UAVs are far from the master UAV, the probability of obstruction between the master and slave UAVs increases, affecting the positioning accuracy of the subsequent master UAV.
[0070] In this embodiment, the number of control periods is 5. The number of control periods is preset by the user and can be set by the implementer according to the actual situation. This application does not impose any special restrictions.
[0071] Taking the i-th slave drone as an example, after updating its location at the beginning of each cycle, the cluster to which the i-th slave drone belongs is obtained, and the remaining slave drones in the cluster are taken as the nearest neighbor slave drones of the i-th slave drone. The nearest neighbor slave drones of the i-th slave drone are updated at the beginning of each cycle.
[0072] Furthermore, this application employs a Kalman filter algorithm to predict the path loss index for each cycle, thereby reducing the error generated when obtaining the distance between the master UAV and the slave UAV.
[0073] If the difference in received signal strength between the i-th slave drone and its neighboring slave drones is greater in the k-th period compared to the control period, it indicates that even if the relative distance between the drones changes little, the change in position causes a change in the drones' travel environment in different periods, altering the signal propagation environment characteristics and causing dynamic fluctuations in the path loss index. Therefore, this application sets an adjustment factor to adjust the Kalman gain when subsequently estimating the path loss index using the Kalman filter algorithm. Specifically, a larger difference in received signal strength indicates that even within the same cluster, the received signal strength between drones has changed significantly, requiring a larger adjustment factor to avoid increased estimation error due to the Kalman filter algorithm's dependence on input data. Conversely, a smaller difference in received signal strength indicates a lower degree of change in received signal strength between drones within the same cluster, requiring a smaller adjustment factor to make the subsequent Kalman filter algorithm more inclined to predict the path loss index.
[0074] Based on the above analysis, the average value of the difference in received signal strength between the i-th slave drone and all its neighboring slave drones in the k-th period is obtained; the sum of the average values of the i-th slave drone and all its neighboring slave drones in all control periods in the k-th period is calculated.
[0075] Then, the deviation between the connectivity of each neighboring drone of the i-th drone in the k-th period and its connectivity in each control period is calculated. The sum of the deviations of all neighboring drones of the i-th drone in each control period in the k-th period is calculated. The mean of the sums of the i-th drone in all control periods in the k-th period is calculated to reflect the average degree of interference to the communication status of the i-th drone when it is moving dynamically.
[0076] The normalized result of the weighted sum of the sum and the mean is used as the adjustment factor for the i-th UAV in the k-th period. The sum of the weights of the sum and the mean is 1, and both the weights of the sum and the mean are positive numbers. A schematic diagram of the adjustment factor acquisition process is shown below. Figure 2 As shown.
[0077] In this embodiment, the difference between the received signal strengths is the absolute value of the difference. As other implementation methods, based on the ability to measure the degree of difference between the received signal strengths, the implementer may use other calculation methods, such as ratio, square of the difference, etc. This application does not impose any special restrictions.
[0078] In this embodiment, the deviation between connectivity is the absolute value of the difference. As other implementation methods, based on the ability to measure the degree of difference between connectivity, the implementer may use other calculation methods, such as ratio, square of difference, etc. This application does not impose any special restrictions.
[0079] In this embodiment, the arctangent normalization function is used to obtain the normalized result of the weighted sum. The arctangent normalization function is a well-known technique and will not be described in detail in this application.
[0080] In this embodiment, the weights of the sum and the mean are 0.4 and 0.6, respectively. The weights of the sum and the mean are preset by the user and can be set by the implementer according to the actual situation. This application does not impose any special restrictions.
[0081] Furthermore, the Kalman gain of the Kalman filter algorithm in predicting the path loss exponent of the i-th slave UAV in the k-th period is adjusted by using the adjustment factor of the i-th slave UAV in the k-th period. Specifically, the product of the adjustment factor of the i-th slave UAV in the k-th period and the Kalman gain before adjustment in the Kalman filter algorithm is used as the Kalman gain of the Kalman filter algorithm in predicting the path loss exponent of the i-th slave UAV in the k-th period. The calculation process of the Kalman gain before adjustment in the Kalman filter algorithm is a well-known technique and will not be elaborated upon in this application.
[0082] It should be noted that: if the difference in received signal strength between the i-th slave drone and its nearest neighboring slave drones is greater, it indicates a greater probability that the wireless communication channel transmission characteristics between the i-th slave drone and the master drone will change. In this case, the adjustment factor will increase, resulting in an increase in the adjusted Kalman gain, so as to quickly adjust the path loss exponent. At the same time, the greater the change in connectivity among the i-th slave drone's nearest neighboring slave drones, the greater the degree of interference to the communication state of the i-th slave drone during dynamic movement. Therefore, the adjustment factor will be larger, resulting in a larger adjusted Kalman gain, so as to adapt to environmental changes in a timely manner.
[0083] In this embodiment, when using the Kalman filter algorithm to predict the path loss index of the i-th slave drone, the initial error covariance matrix is set as a level 10 diagonal matrix, where all diagonal elements are equal and have a value of 0.01, reflecting the prediction error of the path loss index in the initial calculation stage. The initial state transition matrix is set as a level 10 identity matrix, reflecting the initial change relationship of the state vector. Implementers can adjust the initial error covariance matrix and the initial state transition matrix according to the actual situation; this application does not impose any special restrictions.
[0084] The Kalman filter algorithm is used to predict the path loss index of the i-th slave UAV in each period. The vector formed by arranging the path loss indices of the i-th slave UAV in all the reference periods in each period in time sequence is used as the state vector of the Kalman filter algorithm.
[0085] By using the path loss exponent of the i-th slave drone in each cycle and the corresponding received signal strength, the distance from the i-th slave drone to the master drone in each cycle is calculated using the logarithmic transmission loss model.
[0086] Furthermore, based on the distances from all drones to the master drone within each cycle, and the angles of arrival of all signals received by the master drone from the drones, the coordinates of the master drone in the drone swarm coordinate system are calculated using a multi-point positioning method, and these coordinates are used as the master drone's positioning coordinates at the start of the next cycle. The process of calculating the master drone's coordinates using the multi-point positioning method based on distance and angle of arrival is a well-known technique and will not be elaborated upon in this application.
[0087] The positioning coordinates of the other drones are obtained using the same method as that used to obtain the positioning coordinates of the main drone.
[0088] Step 3: By using the positioning coordinates of the main UAV at the start of the next cycle, combined with the position coordinates of the main UAV at the start of the next cycle, the three-dimensional motion information in each cycle, the prediction error of the path loss index, and the frequency domain differences of the received signals of different slave UAVs in each cycle, the positioning of the main UAV at the start of the next cycle is corrected.
[0089] OFDM technology divides the 5GHz band into multiple subcarriers, each of which can be independently allocated to different drones. When a drone swarm is performing a mission, multiple drones can communicate simultaneously using different subcarriers. However, if adjacent subcarriers have similar frequencies, adjacent-channel interference is likely to occur. Furthermore, if different drones are too close together, adjacent-channel interference will be further aggravated.
[0090] During the mission of a drone swarm, the relative positions of the drones are constantly changing. At the same time, OFDM technology uses frequency hopping communication, which causes the degree of adjacent channel interference between different drone subcarriers to change accordingly. Therefore, this application estimates the radio wave interference of the received signal and enhances the correction of radio wave cooperative positioning when severe radio wave interference is detected, thereby improving the positioning accuracy.
[0091] Based on the above analysis, for any given cluster, the frequency difference value within each period is obtained by considering the frequency domain differences of the received signals from different UAVs within each period, specifically as follows:
[0092] Calculate the amplitude difference in the frequency domain between any two slave drones in each period; normalize the sum of the amplitude differences between any two slave drones in each period as the frequency difference value in each period; the larger the frequency difference value, the greater the frequency distribution difference between the received signals of different slave drones, the smaller the adjacent channel interference of radio wave cooperative positioning, and the smaller the degree of subsequent additional correction.
[0093] In this embodiment, the calculation process of amplitude difference is as follows: the received signals corresponding to each UAV in each period are converted to the frequency domain, and the amplitudes of all frequencies are arranged in ascending order of frequency to form the amplitude sequence of each UAV in each period. The DTW (Dynamic Time Warping) distance between any two amplitude sequences corresponding to any two UAVs in each period is calculated. The DTW distance is a well-known technology and will not be described in detail in this application. As other implementation methods, based on the ability to measure the degree of difference between amplitude sequences, the implementer may adopt other existing technologies, such as Euclidean distance, etc. This application does not impose any special restrictions.
[0094] In this embodiment, the received signal is converted to the frequency domain using Fast Fourier Transform. Fast Fourier Transform is a well-known technology and will not be described in detail here. As other implementation methods, based on the ability to convert the received signal to the frequency domain, implementers may use other existing technologies, such as Discrete Fourier Transform, etc. This application does not impose any special restrictions.
[0095] In this embodiment, the arctangent normalization function is used to obtain the normalized value of the accumulated value.
[0096] Furthermore, by analyzing the degree to which the first and second coordinates of the main UAV deviate from the positioning coordinates at the start of the next cycle, and combining the prediction error of the path loss exponent by the Kalman filter algorithm within each cycle, as well as the frequency difference value within each cycle, the corrected positioning coordinates of the main UAV at the start of the next cycle are obtained, expressed as:
[0097] In the formula, This represents the corrected positioning coordinates of the main UAV at the start of the (f+1)th cycle; , , These represent the first coordinate, second coordinate, and positioning coordinate of the main UAV at the start of the (f+1)th cycle, respectively; norm() represents the normalization function. This represents the sum of the traces of the error covariance matrices when the Kalman filter algorithm estimates the path loss exponents of all drones during the f-th cycle. This represents a value greater than 0 obtained by mapping the frequency difference value within the f-th period. In this embodiment, the normalization function is the arctangent normalization function. A schematic diagram of the process for obtaining the calibration positioning coordinates is shown below. Figure 3 As shown.
[0098] In this embodiment, the frequency difference value is mapped to a value greater than 0 by calculating the sum of the frequency difference value and a preset positive number. The value of the preset positive number is preset by the user and can be set by the implementer. This application does not impose any special restrictions. In this embodiment, the value of the preset positive number is 0.01. There are many ways to map data to a value greater than 0, and the implementer can choose other existing feasible methods.
[0099] Following the method for obtaining the corrected positioning coordinates of the main UAV, the corrected positioning coordinates of the remaining UAVs are obtained. Thus, the positioning of each UAV in the UAV swarm can be achieved.
[0100] In summary, this application divides the UAV swarm into clusters, which can reasonably divide the UAVs into multiple small clusters. The communication between UAVs in each cluster is more stable and efficient, which is beneficial for subsequent collaborative positioning within the cluster. By analyzing the changes in the received signal strength differences between each slave UAV and its neighboring slave UAVs over historical periods, as well as the changes in the connectivity of UAVs in each slave UAV's cluster, adjustment factors reflecting changes in the communication environment and communication status can be obtained. This allows for dynamic adjustment of the Kalman gain, enabling the Kalman filter algorithm to quickly adjust the predicted path loss index according to environmental changes. This more accurately reflects the propagation characteristics of the signal in the actual environment, thereby improving the accuracy of signal strength-based ranging, reducing distance estimation errors caused by changes in UAV occlusion, and improving positioning accuracy.
[0101] Furthermore, by obtaining the frequency difference value through the difference in the frequency domain of the received signals corresponding to different UAVs in each cycle, the degree of adjacent channel interference is assessed. Combined with the prediction error of the path loss index and multiple modal data, the positioning coordinates of the main UAV are corrected to reduce positioning error and improve the accuracy and reliability of UAV cooperative positioning.
[0102] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than that shown in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. In the descriptions corresponding to the flowcharts and block diagrams in the accompanying drawings, the operations or steps corresponding to different blocks may also occur in a different order than disclosed in the description, and sometimes there is no specific order between different operations or steps. For example, two consecutive operations or steps may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. Each block in a block diagram and / or flowchart, and combinations of blocks in a block diagram and / or flowchart, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0103] It will be apparent to those skilled in the art that this application is not limited to the details of the exemplary embodiments described above, and that this application can be implemented in other specific forms without departing from its essential characteristics. Therefore, the embodiments described above should be considered exemplary and non-limiting in all respects.
Claims
1. A UAV cooperative localization method based on multimodal data, characterized in that, The method includes the following steps: The system has a preset positioning update cycle. In each cycle, the connectivity of each drone is obtained by analyzing the location distribution and communication range of the drones in the drone swarm. This allows the drone swarm to be divided into clusters. Within each cluster, one drone is selected as the master drone, and the rest are slave drones. The received signal strength and angle of arrival of the signals transmitted by each slave drone to the master drone are obtained, thus acquiring the master drone's three-dimensional motion information. By analyzing the differences in received signal strength between each slave drone and the other slave drones in historical cycles, as well as the changes in connectivity of drones in each slave drone's cluster, the adjustment factor of each slave drone is obtained. This is used to adjust the Kalman gain in the Kalman filter algorithm, estimate the path loss index of each slave drone, and then obtain the distance from each slave drone to the master drone in each cycle. Combined with the angle of arrival, the positioning coordinates of the master drone at the start of the next cycle are obtained. Finally, by combining the position coordinates of the master drone at the start of the next cycle, the three-dimensional motion information in each cycle, the prediction error of the path loss index, and the frequency domain differences of the received signals of different slave drones in each cycle, the positioning of the master drone at the start of the next cycle is corrected. The process of obtaining the connectivity is as follows: In a drone swarm, drones whose distance from each other to each other is less than the maximum communication radius of each drone are considered as drones capable of establishing effective communication with each other. The ratio of the distance from each drone to each drone capable of establishing effective communication with each other to the maximum communication radius of each drone is calculated. The cumulative sum of the ratios of all drones capable of establishing effective communication with each other is taken as the connectivity of each drone. The method for obtaining the adjustment factor is as follows: Preset each control period for each cycle and each neighboring drone for each drone; Obtain the average value of the difference in received signal strength between each slave drone and all its neighboring slave drones in each period; Calculate the deviation between the connectivity of each neighboring drone of each drone in each period and its connectivity in each control period; calculate the sum of the deviations of all neighboring drones of each drone in each period in each control period; and calculate the mean of the sums of each drone in each period across all control periods. The adjustment factor is obtained by the average value of each drone over all control periods in each period, and the average value itself. The process of correcting the positioning of the main UAV at the start time of the next cycle is as follows: By measuring the frequency difference in the frequency domain of the received signals from different drones in the cluster where each drone is located, the frequency difference value in each period is obtained. Construct a drone swarm coordinate system; perform coordinate transformation on the position coordinates of the master drone at the start of the next cycle to obtain the coordinates of the master drone in the drone swarm coordinate system at the start of the next cycle, and denote it as the first coordinate. By utilizing the displacement information obtained from the three-dimensional motion information of the main UAV within each cycle, and combining it with the position coordinates of the main UAV at the start of each cycle, the coordinates of the main UAV at the start of the next cycle in the UAV swarm coordinate system are obtained, and denoted as the second coordinate. Obtain the sum of the traces of the error covariance matrices when the Kalman filter algorithm predicts the path loss exponent of all UAVs in each period; Based on the summation and the frequency difference value, the positioning coordinates are corrected according to the degree to which the first coordinate and the second coordinate deviate from the positioning coordinates; The process for obtaining the frequency difference value is as follows: Calculate the amplitude difference in the frequency domain between any two received signals from the UAV within each period; The frequency difference value is a normalized value of the sum of the amplitude differences between any two UAVs in each period.
2. The UAV cooperative localization method based on multimodal data as described in claim 1, characterized in that, The method for dividing the clusters is as follows: All drones in each period are sorted in descending order of connectivity. The drones with the first preset proportion are taken as candidate cluster heads. Each non-candidate cluster head drone is assigned to a cluster with the candidate cluster head drone with the shortest distance. If each non-candidate cluster head drone is simultaneously assigned to a cluster with the shortest and equal distance to multiple candidate cluster head drones, each non-candidate cluster head drone is assigned to a cluster with the candidate cluster head drone with the shortest distance and the highest connectivity.
3. The UAV cooperative localization method based on multimodal data as described in claim 1, characterized in that, The adjustment factor is calculated as follows: Calculate the sum of the average values of each UAV over all control periods in each period; The adjustment factor is the normalized result of the weighted sum of the sum and the mean.
4. The UAV cooperative localization method based on multimodal data as described in claim 1, characterized in that, The method for adjusting the Kalman gain in the Kalman filter algorithm is as follows: the product of the adjustment factor of each slave UAV in each period and the Kalman gain before adjustment in the Kalman filter algorithm is used as the Kalman gain when the Kalman filter algorithm estimates the path loss index of each slave UAV in each period.
5. The UAV cooperative localization method based on multimodal data as described in claim 1, characterized in that, The method for estimating the path loss index of each UAV includes: using a Kalman filter algorithm to estimate the path loss index of each UAV in each period, wherein the vector formed by arranging the path loss indices of each UAV in all reference periods in each period in chronological order is used as the state vector of the Kalman filter algorithm.
6. The UAV cooperative localization method based on multimodal data as described in claim 1, characterized in that, The process of correcting the positioning coordinates is as follows: Calculate the cumulative value of the difference between the first coordinate, the second coordinate, and the positioning coordinate; Map the frequency difference value to a value greater than 0, calculate the ratio of the normalized value of the sum to the value greater than 0, and calculate the product of the sum and the ratio. The sum of the product of the positioning coordinates and the product is used as the corrected positioning coordinates of the main UAV at the start of the next cycle.
Citation Information
Patent Citations
Unmanned aerial vehicle cluster clustering control method based on ultraviolet light communication cooperation
CN113485431A
Layered unmanned aerial vehicle group EKF cooperative positioning method and system based on main unmanned aerial vehicle optimization
CN117053788A