UAV heading determination method and device based on GNSS single antenna
Through data fusion processing of a single GNSS antenna and an inertial measurement unit, combined with the Kalman filter algorithm, the problems of high cost and susceptibility to interference in determining the heading of a UAV are solved, and high-precision and stable heading adjustment is achieved.
Patent Information
- Application Number
- CN202510585389.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-08
- Publication Date
- 2025-09-12
- Estimated Expiration
- 2045-05-08
AI Technical Summary
Existing UAV heading determination methods rely on RTK dual antennas and electronic magnetic compasses, resulting in high hardware costs and susceptibility to external interference, making it difficult to reduce costs while ensuring heading accuracy.
A single GNSS antenna combined with an inertial measurement unit is used to obtain the target gyroscope zero bias value and heading angle of the UAV through data fusion processing. The high-precision velocity information of the single GNSS antenna and the acceleration information of the inertial measurement unit are used in combination with the Kalman filter algorithm for data fusion to adjust the heading.
The accuracy and stability of the UAV's heading are improved, hardware costs are reduced, and sensitivity to external interference is reduced.
Smart Images

Figure CN120085335B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of unmanned aerial vehicles (UAVs), and in particular to a method and device for determining the heading of an UAV based on a single GNSS antenna. Background Art
[0002] Drones have many unique advantages such as low cost, low loss, good safety and reusability. The application of drones is becoming more and more extensive. Therefore, it is very important to ensure the accuracy of the drone's heading during flight.
[0003] Currently, small drones typically use RTK dual-antenna heading and an electronic magnetic compass. RTK dual-antenna heading utilizes the precise relative position of two GNSS antennas to calculate the heading angle based on the relationship between the baseline vector and the Earth coordinate system. This requires RTK technology to provide high-precision relative positioning. The longer the baseline, the higher the heading accuracy. Therefore, RTK dual-antenna heading increases the drone's design size and hardware costs. Furthermore, electronic magnetic compasses utilize the direction of the Earth's magnetic field, measuring its components in different directions to calculate the heading angle. While this depends on the strength and direction of the Earth's magnetic field, a built-in magnetometer can directly measure the magnetic field components. However, electronic magnetic compasses are susceptible to interference from surrounding metal objects, electric currents, or strong magnetic fields, which can affect the accuracy of heading determination. Therefore, maintaining the drone's heading accuracy while reducing costs is crucial. Summary of the Invention
[0004] The present invention provides a method and device for determining the heading of an unmanned aerial vehicle (UAV) based on a single GNSS antenna, so as to improve the accuracy and stability of generating the UAV heading.
[0005] According to one aspect of the present invention, a method for determining the heading of an unmanned aerial vehicle (UAV) based on a single GNSS antenna is provided, wherein the UAV is equipped with a single GNSS antenna and an inertial measurement unit (IMU). The method comprises:
[0006] Acquire first acceleration information and first angular rate information of the inertial measurement unit at a current moment, and determine a target gyroscope zero bias value of the drone by performing data fusion processing on the first acceleration information and the first angular rate information;
[0007] Obtain first velocity information of the GNSS single antenna at a current moment, determine a target heading angle of the UAV at a next moment by performing data fusion processing on the first velocity information, the target gyroscope zero bias value, the first acceleration information, and the first angular rate information, and adjust the heading of the UAV according to the target heading angle; the first velocity information is the velocity in a preset reference coordinate system.
[0008] According to another aspect of the present invention, a device for determining the heading of an unmanned aerial vehicle (UAV) based on a single GNSS antenna is provided, wherein the UAV is equipped with a single GNSS antenna and an inertial measurement unit, and the device comprises:
[0009] a first data fusion module, configured to obtain first acceleration information and first angular rate information of the inertial measurement unit at a current moment, and determine a target gyroscope zero bias value of the UAV by performing data fusion processing on the first acceleration information and the first angular rate information;
[0010] The second data fusion module is used to obtain the first velocity information of the GNSS single antenna at the current moment, determine the target heading angle of the UAV at the next moment by performing data fusion processing on the first velocity information, the target gyroscope zero bias value, the first acceleration information and the first angular rate information, and adjust the heading of the UAV according to the target heading angle; the first velocity information is the velocity in a preset reference coordinate system.
[0011] According to another aspect of the present invention, an electronic device is provided, comprising:
[0012] at least one processor; and
[0013] a memory communicatively connected to the at least one processor; wherein,
[0014] The memory stores a computer program that can be executed by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the method for determining the heading of a drone based on a single GNSS antenna as described in any embodiment of the present invention.
[0015] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the method for determining the heading of a drone based on a single GNSS antenna according to any embodiment of the present invention when executed.
[0016] The technical solution of the embodiment of the present invention obtains the first acceleration information and the first angular rate information of the inertial measurement unit at the current moment, and performs data fusion processing on the first acceleration information and the first angular rate information to accurately determine the target gyroscope zero bias value of the drone, so that the gyroscope zero bias can be applied to adjust the heading angle subsequently; obtains the first velocity information of the GNSS single antenna at the current moment, the first velocity information is the velocity in the north-east reference coordinate system, and the GNSS single antenna has higher measurement accuracy for velocity information, and further performs data fusion processing on the first velocity information, the target gyroscope zero bias value, the first acceleration information and the first angular rate information. The addition of the target gyroscope zero bias value avoids the inaccurate heading angle determined due to the gyroscope zero bias, and the data fusion processing is combined with the first velocity information, the first acceleration information and the first angular rate information, so that the target heading angle of the drone at the next moment can be determined more accurately, so as to adjust the heading of the drone according to the target heading angle, thereby improving the accuracy and stability of generating the drone heading.
[0017] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present invention, nor is it intended to limit the scope of the present invention. Other features of the present invention will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0019] Figure 1 This is a flow chart of a method for determining the heading of a UAV based on a single GNSS antenna according to an embodiment of the present invention;
[0020] Figure 2 is a flowchart of another method for determining the heading of a UAV based on a single GNSS antenna according to an embodiment of the present invention;
[0021] Figure 3 is a flowchart of another method for determining the heading of a UAV based on a single GNSS antenna according to an embodiment of the present invention;
[0022] Figure 4 1 is a schematic structural diagram of a UAV heading determination device based on a single GNSS antenna according to an embodiment of the present invention;
[0023] Figure 53 is a structural diagram of an electronic device for implementing a method for determining the heading of a UAV based on a single GNSS antenna according to an embodiment of the present invention. DETAILED DESCRIPTION
[0024] In order to enable those skilled in the art to better understand the solutions of the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the embodiments described are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of the present invention.
[0025] It should be noted that the terms "first", "second", etc. in the description and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that the numbers used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0026] Example 1
[0027] Figure 1 A flowchart of a UAV heading method based on a single GNSS antenna is provided in an embodiment of the present invention. This embodiment is applicable to situations where the heading of a UAV is estimated. The method can be executed by a UAV heading determination device based on a single GNSS antenna. The UAV heading determination device based on a single GNSS antenna can be implemented in the form of hardware and / or software. The UAV heading determination device based on a single GNSS antenna can be configured in any electronic device with network communication function.
[0028] The drone of the present invention is equipped with a single GNSS antenna and an inertial measurement unit. A single GNSS antenna is an antenna device used to receive Global Navigation Satellite System (GNSS) signals. An inertial measurement unit (IMU) is a device that measures acceleration and angular velocity, thereby determining attitude and motion. It consists of an accelerometer and a gyroscope. The accelerometer is a sensor that measures an object's acceleration, while the gyroscope measures angular velocity around an axis.
[0029] like Figure 1 As shown, the method for determining the heading of a UAV based on a single GNSS antenna of the present invention includes the following steps:
[0030] S110 , obtaining first acceleration information and first angular rate information of the inertial measurement unit at a current moment, and determining a target gyroscope zero bias value of the drone by performing data fusion processing on the first acceleration information and the first angular rate information.
[0031] The first acceleration information is the acceleration measurement value of the drone at the current moment obtained by the accelerometer of the inertial measurement unit. The first angular rate information is the gyroscope measurement value of the drone at the current moment obtained by the gyroscope of the inertial measurement unit. The gyroscope measurement value is the three-axis measurement value of the gyroscope.
[0032] The data fusion processing of the present invention refers to the comprehensive processing of data from multiple different types of sensors and other relevant data sources onboard the drone to obtain more accurate, complete, and reliable information, thereby supporting the drone to perform more effective operations in flight control, environmental perception, target identification, mission decision-making, etc. The data fusion processing of this application is to fuse the first acceleration information and first angular rate information of the drone's inertial measurement unit to accurately obtain the drone's target gyroscope zero bias value.
[0033] The total dimension of the data fusion processing of the present invention is seven dimensions, that is, the total dimension of the first acceleration information and the first angular velocity information is 7 dimensions, which greatly reduces the complexity of the operation, requires less CPU resources to be configured, and is suitable for the application of low-cost embedded single-chip microcomputers.
[0034] Methods of data fusion processing may include but are not limited to complementary filtering, neural network fusion and Kalman filtering algorithms.
[0035] 1) Complementary filtering is a method for data fusion that exploits the complementary characteristics of different sensors. For example, the accelerometer in an inertial measurement unit (IMU) can measure a drone's acceleration, but it suffers from noise and drift. Meanwhile, the gyroscope in the IMU measures the drone's angular velocity, but it can also drift over time. Complementary filtering, taking advantage of the accelerometer's high accuracy at low frequencies and the gyroscope's high accuracy at high frequencies, fuses the data from both. The data from the accelerometer and gyroscope are processed through low-pass and high-pass filters, respectively, to determine the target gyroscope zero bias value for the drone.
[0036] 2) Neural network fusion: Neural networks possess powerful nonlinear mapping and learning capabilities, enabling them to automatically learn complex relationships between diverse data sources. For drone data fusion, a multi-layer neural network can be constructed, using data from various sensors as nodes in the input layer. Through a series of nonlinear transformations and calculations in the hidden layers, the fused results are obtained at the output layer. By training the neural network with a large amount of training data, it can adapt to diverse flight scenarios and data patterns.
[0037] 3) The Kalman filter algorithm is an algorithm that uses the linear system state equation and the system input and output observation data to optimally estimate the system state.
[0038] S120. Obtain first velocity information of the GNSS single antenna at the current moment, determine the target heading angle of the UAV at the next moment by performing data fusion processing on the first velocity information, the target gyroscope zero bias value, the first acceleration information, and the first angular rate information, and adjust the heading of the UAV according to the target heading angle; the first velocity information is the velocity in a preset reference coordinate system.
[0039] The first velocity information may be the velocity measurement value of the drone obtained by a single GNSS antenna at the current moment. The total dimension of the data processed by data fusion is seven dimensions, namely, the total dimension of the first velocity information, the target gyroscope zero bias value, the first acceleration information, and the first angular rate information is seven dimensions. This greatly reduces the complexity of the calculations, requires less CPU resources, and is suitable for low-cost embedded single-chip microcomputer applications. Data fusion processing methods may include, but are not limited to, complementary filtering, neural network fusion, and Kalman filtering algorithms. Through data fusion processing, drones can make more effective use of the acquired data resources, improve their performance and intelligence level, and better adapt to complex and changing flight environments and diverse mission requirements.
[0040] The preset reference coordinate system can be understood as a three-dimensional spatial coordinate system, which can be any reference coordinate system related to the geodetic coordinate system. The preset reference coordinate system is preferably the North-East-Down (NED) reference coordinate system, a geographic coordinate system commonly used to describe local position and posture. The coordinate axes of the North-East-Down (NED) reference coordinate system are defined as follows: The x-axis points north, i.e., along the meridian of the Earth's surface toward the North Pole, and is used to represent horizontal northward displacement. The y-axis points east, perpendicular to the x-axis and along the latitudes of the Earth's surface, and is used to represent horizontal eastward displacement. The z-axis points downward, perpendicular to the Earth's surface and downward (toward the Earth's center), and is used to represent vertical displacement, i.e., change in altitude.
[0041] The technical solution of the embodiment of the present invention obtains the first acceleration information and the first angular rate information of the inertial measurement unit at the current moment, and performs data fusion processing on the first acceleration information and the first angular rate information to accurately determine the target gyroscope zero bias value of the drone, so that the gyroscope zero bias can be applied to adjust the heading angle subsequently; obtains the first velocity information of the GNSS single antenna at the current moment, the first velocity information is the velocity in the north-east reference coordinate system, and the GNSS single antenna has higher measurement accuracy for velocity information, and further performs data fusion processing on the first velocity information, the target gyroscope zero bias value, the first acceleration information and the first angular rate information. The addition of the target gyroscope zero bias value avoids the inaccurate heading angle determined due to the gyroscope zero bias, and the data fusion processing is combined with the first velocity information, the first acceleration information and the first angular rate information, so that the target heading angle of the drone at the next moment can be determined more accurately, so as to adjust the heading of the drone according to the target heading angle, thereby improving the accuracy and stability of generating the drone heading.
[0042] Example 2
[0043] Figure 2 This is a flowchart of another method for determining the heading of a UAV based on a single GNSS antenna provided by an embodiment of the present invention. The technical solution of this embodiment further optimizes the process of S110 in the above embodiment on the basis of the above embodiment. Optionally, an error state Kalman filter algorithm is used to fuse the first acceleration information and the first angular rate information of the inertial measurement unit to obtain the target gyroscope zero bias value of the UAV. This embodiment can be combined with various optional solutions in one or more of the above embodiments. Figure 2 As shown, the method for determining the heading of a UAV based on a single GNSS antenna of the present invention includes:
[0044] S210: Obtain a first gyroscope bias of the drone at a current moment, and determine a first nominal state of the drone at a current moment according to the first angular rate information and the first gyroscope bias.
[0045] The first nominal state is the state value predicted for the drone under ideal conditions. That is, the first nominal state is the gyroscope zero bias value and angular rate information of the drone under ideal conditions.
[0046] Specifically, the first gyroscope bias may be a gyroscope bias determined at a previous moment, a first quaternion of the drone at a current moment is determined based on the first angular rate information, and a first nominal state of the drone at a current moment is constructed based on the first quaternion and the first gyroscope bias.
[0047] Correspondingly, the first quaternion q of the drone at the current moment is determined according to the first angular rate information k1 , which can be expressed as follows:
[0048]
[0049] in, ;ω x 、ω y 、ω z is the first angular rate information, i.e., the three-axis measurement value of the gyroscope. α is the rotation angle generated by the three-axis rotation of the gyroscope during the time dt. .
[0050] First nominal state x k1 It can be expressed as: . is the first gyroscope bias.
[0051] S220: Determine a first error state of the UAV at the current moment, and determine a first covariance matrix of the first error state, where the first error state is a zero matrix with six rows and one column.
[0052] Specifically, the first error state is the predicted value of the error state, which can be the difference between the actual state value of the drone at the current moment and the first nominal state. That is, the first error state can be expressed as:
[0053]
[0054] in, is the change in Euler angle caused by the change ∆q of the quaternion at time dt; is the change of gyroscope bias.
[0055] However, in order to ensure the accuracy of subsequent updates of the error state and the nominal state, the present application resets the first error state to a zero matrix with six rows and one column, that is, .
[0056] Furthermore, determining a first covariance matrix of the first error state includes steps A1-A2:
[0057] Step A1: Obtain the first process noise of the drone at the current moment. The first process noise is determined by the gyroscope measurement noise and the gyroscope zero bias noise.
[0058] Among them, the first process noise can be expressed as: ; is the gyroscope measurement noise, is the gyroscope bias noise.
[0059] Step A2: Determine a first state transfer matrix of the first error state, and determine a first covariance matrix of the first error state according to the first state transfer matrix and the first process noise.
[0060] Specifically, the first state transfer matrix can be calculated based on The state transition matrix, and arrive The state transfer matrix is determined by the first state transfer matrix, which can be expressed as:
[0061] ;
[0062]
[0063] in, for The state transition matrix, for arrive The state transition matrix, is the identity matrix, ω x 、ω y 、ω z is the first angular rate information, i.e., the three-axis measurement value of the gyroscope. α is the rotation angle generated by the three-axis rotation of the gyroscope during the time dt.
[0064] Furthermore, a first covariance matrix of the first error state is determined according to the first state transfer matrix and the first process noise. The first covariance matrix It can be expressed as:
[0065] .
[0066] S230 : Determine a first Kalman gain according to the first covariance matrix, and determine a first error state according to the first Kalman gain and the first acceleration information.
[0067] Specifically, a first measurement noise of the drone at a current moment is obtained, where the first measurement noise is determined by the measurement noise of first acceleration information of an inertial measurement unit; and a first Kalman gain is determined according to the first measurement noise and a first covariance matrix.
[0068] Among them, the first measurement noise R1 can be expressed as , the first Kalman gain It can be expressed as:
[0069]
[0070] Among them, H1 is the observation matrix of acceleration relative to the error state, H x1 The acceleration observation matrix relative to the nominal state, X x1 is the observation matrix of the nominal state relative to the error state.
[0071] Furthermore, according to the first Kalman gain and the first acceleration information z k1Determine a first error state, a first error state It can be expressed as:
[0072] .
[0073] S240: Update the first nominal state according to the first error state to determine a target gyroscope zero bias value of the UAV.
[0074] Specifically, the second error state Gyroscope bias change The first gyro bias to the first nominal state Update to determine the target gyroscope zero bias value of the drone, the target gyroscope zero bias value It can be expressed as: .
[0075] S250. Obtain first velocity information of the GNSS single antenna at the current moment, determine the target heading angle of the UAV at the next moment by performing data fusion processing on the first velocity information, the target gyroscope zero bias value, the first acceleration information, and the first angular rate information, and adjust the heading of the UAV according to the target heading angle; the first velocity information is the velocity in the north-east reference coordinate system.
[0076] The technical solution of the embodiment of the present invention obtains the first gyroscope zero bias of the drone at the current moment, determines the first nominal state of the drone at the current moment according to the first angular rate information and the first gyroscope zero bias; further determines the first error state of the drone at the current moment, and determines the first covariance matrix of the first error state, the first error state being a zero matrix with six rows and one column; then determines the first Kalman gain according to the first covariance matrix, and determines the first error state according to the first Kalman gain and the first acceleration information; finally, updates the first nominal state according to the first error state to determine the target gyroscope zero bias value of the drone, thereby achieving gyroscope zero bias. The gyroscope zero bias is accurately determined so that the gyroscope zero bias can be applied to adjust the heading angle subsequently; further, by performing data fusion processing on the first velocity information, the target gyroscope zero bias value, the first acceleration information and the first angular rate information obtained at the current moment, the addition of the target gyroscope zero bias value avoids the inaccurate heading angle determined due to the gyroscope zero bias, and the data fusion processing is combined with the first velocity information, the first acceleration information and the first angular rate information, so that the target heading angle of the UAV at the next moment can be determined more accurately, so as to adjust the heading of the UAV according to the target heading angle, thereby improving the accuracy and stability of generating the UAV heading.
[0077] Example 3
[0078] Figure 3This is a flowchart of another method for determining the heading of a UAV based on a single GNSS antenna provided by an embodiment of the present invention. The technical solution of this embodiment further optimizes the process of S120 in the aforementioned embodiment on the basis of the above embodiment. Optionally, an error state Kalman filter algorithm is used to perform data fusion processing on the first velocity information, the target gyroscope zero bias value, the first acceleration information and the first angular rate information to obtain the target heading angle of the UAV at the next moment, and the total dimension of the data processed by the data fusion is seven dimensions. This embodiment can be combined with various optional solutions in one or more of the above embodiments. Figure 3 As shown, the method for determining the heading of a UAV based on a single GNSS antenna of the present invention includes:
[0079] S310: Obtain first acceleration information and first angular rate information of the inertial measurement unit at the current moment, and determine a target gyroscope zero bias value of the drone by performing data fusion processing on the first acceleration information and the first angular rate information.
[0080] S320: Determine a second nominal state of the UAV at the current moment according to the target gyroscope zero bias value, the first angular rate information, and the first speed information.
[0081] Among them, the second nominal state is the angular rate information and speed information of the UAV under ideal conditions.
[0082] Specifically, determining the second nominal state of the UAV at the current moment according to the target gyroscope zero bias value, the first angular rate information, and the first speed information includes steps B1-B3:
[0083] Step B1: Determine second angular rate information according to the target gyroscope zero bias value and the first angular rate information.
[0084] Among them, the target gyroscope zero bias value ;ω x 、ω y 、ω z is the first angular rate information, the second angular rate information .
[0085] Step B2: Determine second speed information of the drone based on the first speed information and the first acceleration information; the second speed information is three-dimensional information.
[0086] The second velocity information is three-dimensional information, that is, the velocity information in three directions under the north-east reference coordinate system. , second speed information It can be expressed as:
[0087]
[0088] in, is the first acceleration information, is the first acceleration information, g is the acceleration due to gravity, The rotation matrix from the North-East reference coordinate system to the body coordinate system.
[0089] Step B3: construct a second nominal state of the UAV at the current moment according to the second angular rate information and the second speed information.
[0090] Specifically, the second quaternion of the second nominal state is determined according to the second angular rate information, and the second nominal state of the drone at the current moment is further constructed according to the second quaternion and the second velocity information.
[0091] Among them, the second quaternion is four-dimensional information, the second quaternion , the second quaternion q k2 It can be expressed as ;
[0092] ;
[0093] Among them, ω x 、ω y 、ω z is the first angular rate information, i.e., the three-axis measurement value of the gyroscope. α is the rotation angle generated by the three-axis rotation of the gyroscope during the time dt.
[0094] Correspondingly, the second nominal state x k2 It can be expressed as: .
[0095] S330: Determine a second error state of the drone at a current moment, and determine a second covariance matrix of the second error state, where the second error state is a zero matrix with six rows and one column.
[0096] Specifically, the second error state is the predicted value of the error state, which can be the difference between the actual state value of the drone at the current moment and the second nominal state, that is, the second error state It can be expressed as:
[0097]
[0098] Where ∆q is the change in Euler angle caused by the change in quaternion; is the change of the second speed information.
[0099] However, in order to ensure the accuracy of subsequent updates of the error state and the nominal state, the present application resets the first error state to a zero matrix with six rows and one column, that is, .
[0100] Furthermore, determining a second covariance matrix of the second error state includes steps C1-C2:
[0101] Step C1: Obtain a second process noise of the drone at a current moment, where the second process noise is determined by a gyroscope measurement noise and a measurement noise of the first acceleration information of an inertial measurement unit.
[0102] Among them, the second process noise can be expressed as: ; is the gyroscope measurement noise, is the measurement noise of the first acceleration information, that is, the measurement noise of the accelerometer.
[0103] Step C2: Determine a second state transfer matrix of the second error state, and determine a second covariance matrix of the second error state according to the second state transfer matrix and the second process noise.
[0104] Specifically, the second state transfer matrix can be calculated based on The state transition matrix and The state transfer matrix is determined by the second state transfer matrix, which can be expressed as:
[0105]
[0106] Among them, F R for The state transition matrix, F V for The state transition matrix, is the identity matrix, is the first acceleration information.
[0107] Furthermore, the second covariance matrix of the second error state is determined according to the second state transfer matrix and the second process noise. The second covariance matrix It can be expressed as:
[0108] .
[0109] S340: Obtain a second measurement noise of the UAV at the current moment, and determine a second Kalman gain according to the second measurement noise and the second covariance matrix; the second measurement noise is determined by the measurement noise of the first velocity information of the single GNSS antenna.
[0110] Among them, the second measurement noise R2 can be expressed as , is the measurement noise of the first velocity information of a single GNSS antenna.
[0111] Second Kalman gain It can be expressed as:
[0112]
[0113] Among them, H2 is the observation matrix of velocity relative to the error state, H x2 The observation matrix of velocity relative to the nominal state, X x2 is the observation matrix of the nominal state relative to the error state.
[0114] S350: Determine a second error state according to the second Kalman gain and the first speed information.
[0115] Among them, the second error state It can be expressed as:
[0116] .
[0117] in, It is the first speed information.
[0118] S360: Update the second nominal state according to the second error state to determine the target heading angle of the UAV at the next moment.
[0119] Specifically, the second error state The change of the second quaternion ∆q to the second nominal state q k2 Update to determine the target heading angle of the drone at the next moment, the target heading angle q k It can be expressed as: .
[0120] The technical solution of the embodiment of the present invention obtains the first acceleration information and the first angular rate information of the inertial measurement unit at the current moment, and performs data fusion processing on the first acceleration information and the first angular rate information to accurately determine the target gyroscope zero bias value of the drone, so that the gyroscope zero bias can be applied to adjust the heading angle subsequently; further, based on the target gyroscope zero bias value, the first angular rate information and the first speed information, the second nominal state of the drone at the current moment is determined, and the addition of the target gyroscope zero bias value avoids the inaccurate heading angle determined due to the gyroscope zero bias, and then the second error state of the drone at the current moment is determined, and the second error state is determined. The second covariance matrix of the difference state is used to obtain the second measurement noise of the UAV at the current moment, and the second Kalman gain is determined according to the second measurement noise and the second covariance matrix; the second error state is determined according to the second Kalman gain and the first velocity information, and finally the second nominal state is updated according to the second error state to determine the target heading angle of the UAV at the next moment. That is, the embodiment of the present invention also combines the first velocity information, the first acceleration information and the first angular rate information for data fusion processing, which can more accurately determine the target heading angle of the UAV at the next moment, so as to adjust the heading of the UAV according to the target heading angle, thereby improving the accuracy and stability of generating the UAV heading.
[0121] Example 4
[0122] Figure 4 This is a schematic diagram of the structure of a UAV heading determination device based on a single GNSS antenna provided by an embodiment of the present invention. This embodiment is applicable to the situation where the heading of a UAV is estimated. The UAV heading determination device based on a single GNSS antenna can be implemented in the form of hardware and / or software. The UAV heading determination device based on a single GNSS antenna can be configured in any electronic device with network communication function. The UAV of the present invention is equipped with a single GNSS antenna and an inertial measurement unit, such as Figure 4 As shown, the UAV heading determination device based on a single GNSS antenna includes:
[0123] A first data fusion module 410 is configured to obtain first acceleration information and first angular rate information of the inertial measurement unit at a current moment, and determine a target gyroscope zero bias value of the UAV by performing data fusion processing on the first acceleration information and the first angular rate information;
[0124] The second data fusion module 420 is used to obtain the first velocity information of the GNSS single antenna at the current moment, and determine the target heading angle of the UAV at the next moment by performing data fusion processing on the first velocity information, the target gyroscope zero bias value, the first acceleration information and the first angular rate information, so as to adjust the heading of the UAV according to the target heading angle; the first velocity information is the velocity in a preset reference coordinate system.
[0125] Based on the above embodiment, optionally, the total dimension of the data in the data fusion processing is seven dimensions.
[0126] Based on the above embodiment, optionally, the first data fusion module includes:
[0127] a first nominal state determining unit, configured to obtain a first gyroscope bias of the drone at a current moment, and determine a first nominal state of the drone at a current moment according to the first angular rate information and the first gyroscope bias;
[0128] A first covariance matrix determining unit is configured to determine a first error state of the drone at a current moment and determine a first covariance matrix of the first error state, where the first error state is a zero matrix with six rows and one column;
[0129] a second error state determining unit, configured to determine a first Kalman gain according to the first covariance matrix, and determine a first error state according to the first Kalman gain and the first acceleration information;
[0130] A gyroscope bias determination unit is configured to update the first nominal state according to the first error state to determine a target gyroscope bias value of the UAV.
[0131] Based on the above embodiment, optionally, a first nominal state determination unit is used to: determine a first quaternion of the drone at the current moment according to the first angular rate information, and construct a first nominal state of the drone at the current moment according to the first quaternion and the first gyroscope zero bias.
[0132] Based on the above embodiment, optionally, the first covariance matrix determination unit is used to: obtain the first process noise of the drone at a current moment, where the first process noise is determined by the gyroscope measurement noise and the gyroscope zero bias noise; determine the first state transfer matrix of the first error state, and determine the first covariance matrix of the first error state according to the first state transfer matrix and the first process noise.
[0133] Based on the above embodiment, optionally, the second error state determination unit includes a first Kalman gain determination subunit, which is used to: obtain a first measurement noise of the drone at a current moment, where the first measurement noise is determined by the measurement noise of the first acceleration information of the inertial measurement unit; and determine a first Kalman gain based on the first measurement noise and the first covariance matrix.
[0134] Based on the above embodiment, optionally, the second data fusion module includes:
[0135] a second nominal state determining unit, configured to determine a second nominal state of the UAV at a current moment according to the target gyroscope zero bias value, the first angular rate information, and the first speed information;
[0136] A second covariance matrix determining unit is configured to determine a second error state of the drone at a current moment and determine a second covariance matrix of the second error state, where the second error state is a zero matrix with six rows and one column;
[0137] a second Kalman gain determination unit, configured to obtain a second measurement noise of the drone at a current moment, and determine a second Kalman gain based on the second measurement noise and the second covariance matrix; the second measurement noise is determined by the measurement noise of the first velocity information of the single GNSS antenna;
[0138] a second error state determining unit, configured to determine a second error state according to the second Kalman gain and the first speed information;
[0139] A heading angle determination unit is configured to update the second nominal state according to the second error state to determine a target heading angle of the UAV at a next moment.
[0140] Based on the above embodiment, optionally, a second nominal state determination unit is used to: determine second angular velocity information based on the target gyroscope zero bias value and the first angular velocity information; determine second velocity information of the UAV based on the first velocity information and the first acceleration information; the second velocity information is three-dimensional information; and construct the second nominal state of the UAV at the current moment based on the second angular velocity information and the second velocity information.
[0141] Based on the above embodiment, optionally, a second covariance matrix determination unit is used to: obtain a second process noise of the drone at a current moment, where the second process noise is determined by the gyroscope measurement noise and the measurement noise of the first acceleration information of the inertial measurement unit; determine a second state transfer matrix of the second error state, and determine a second covariance matrix of the second error state based on the second state transfer matrix and the second process noise.
[0142] The UAV heading determination device based on a single GNSS antenna provided in an embodiment of the present invention can execute the UAV heading determination method based on a single GNSS antenna provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
[0143] Example 5
[0144] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium, and a computer program product.
[0145] Figure 5 The following is a schematic diagram of an electronic device that can be used to implement the method for determining the heading of a drone based on a single GNSS antenna according to an embodiment of the present invention. The term "electronic device" is intended to represent various forms of digital computers, such as laptops, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The term "electronic device" may also represent various forms of mobile devices, such as personal digital assistants (PDAs), cellular phones, smartphones, wearable devices (such as helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are provided for illustrative purposes only and are not intended to limit the implementation of the present inventions described and / or claimed herein.
[0146] like Figure 5As shown, electronic device 10 includes at least one processor 11 and memory, such as read-only memory (ROM) 12 and random access memory (RAM) 13, communicatively connected to at least one processor 11. The memory stores computer programs executable by the at least one processor. Processor 11 can perform various appropriate actions and processes based on the computer programs stored in ROM 12 or loaded from storage unit 18 into RAM 13. RAM 13 can also store various programs and data required for the operation of electronic device 10. Processor 11, ROM 12, and RAM 13 are interconnected via bus 14. An input / output (I / O) interface 15 is also connected to bus 14.
[0147] Multiple components in the electronic device 10 are connected to the I / O interface 15, including an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a magnetic disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.
[0148] Processor 11 can be any general-purpose and / or specialized processing component with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various specialized artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any other suitable processor, controller, microcontroller, etc. Processor 11 executes the various methods and processes described above, such as the method for determining the heading of a drone based on a single GNSS antenna.
[0149] In some embodiments, the method for determining the heading of a drone using a single GNSS antenna can be implemented as a computer program tangibly embodied in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program can be loaded and / or installed on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the method for determining the heading of a drone using a single GNSS antenna described above can be performed. Alternatively, in other embodiments, processor 11 can be configured to execute the method for determining the heading of a drone using a single GNSS antenna using any other suitable means (e.g., via firmware).
[0150] Various embodiments of the systems and techniques described above can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-chip systems (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include being implemented in one or more computer programs that are executable and / or interpreted on a programmable system that includes at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0151] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when the computer program is executed by the processor, the functions / operations specified in the flowcharts and / or block diagrams are implemented. The computer program may be executed entirely on the machine, partially on the machine, as a stand-alone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.
[0152] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, device, or apparatus. A computer-readable storage medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or apparatus, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media may include an electrical connection based on one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0153] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device that has: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).
[0154] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
[0155] A computing system may include clients and servers. The clients and servers are typically remote from each other and typically interact via a communication network. This client-server relationship arises through computer programs running on the respective computers, creating a client-server relationship. The server may be a cloud server, also known as a cloud computing server or cloud host. This server is a hosting product within the cloud computing service ecosystem that addresses the management difficulties and limited scalability of traditional physical hosting and VPS services.
[0156] It should be understood that the various forms of the processes shown above can be used to reorder, add, or delete steps. For example, the steps described in the present invention can be performed in parallel, sequentially, or in a different order, as long as the desired results of the technical solution of the present invention can be achieved. This is not limited herein.
[0157] The above specific embodiments do not limit the scope of protection of the present invention. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions may be made based on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention are intended to be included within the scope of protection of the present invention.
Claims
1. A method for determining the heading of an unmanned aerial vehicle based on a single GNSS antenna, characterized in that: The UAV is equipped with a single GNSS antenna and an inertial measurement unit. The method includes: Obtaining first acceleration information and first angular rate information of the inertial measurement unit at a current moment, and determining a target gyroscope zero bias value of the UAV by performing data fusion processing on the first acceleration information and the first angular rate information; wherein the total dimension of the data processed by the data fusion processing is seven dimensions; Obtaining first velocity information of the GNSS single antenna at a current moment; the first velocity information is the velocity in a north-east reference coordinate system; determining a second nominal state of the UAV at a current moment based on the target gyroscope zero bias value, the first angular rate information, and the first speed information; the second nominal state being the angular rate information and speed information of the UAV under an ideal state; Determine a second error state of the drone at a current moment, and determine a second covariance matrix of the second error state, where the second error state is a zero matrix with six rows and one column; Obtaining a second measurement noise of the drone at a current moment, and determining a second Kalman gain based on the second measurement noise and the second covariance matrix, wherein the second measurement noise is determined by the measurement noise of the first velocity information of the single GNSS antenna; determining a second error state according to the second Kalman gain and the first speed information; updating the second nominal state according to the second error state, determining a target heading angle of the UAV at a next moment, and adjusting the heading of the UAV according to the target heading angle; The method of determining a target gyroscope zero bias value of the UAV by performing data fusion processing on the first acceleration information and the angular rate information includes: Obtaining a first gyroscope bias of the drone at a current moment, and determining a first nominal state of the drone at a current moment based on the first angular rate information and the first gyroscope bias; the first nominal state being the gyroscope bias value and angular rate information of the drone under an ideal state; Determine a first error state of the drone at a current moment, and determine a first covariance matrix of the first error state, where the first error state is a zero matrix with six rows and one column; determining a first Kalman gain according to the first covariance matrix, and determining a first error state according to the first Kalman gain and the first acceleration information; The first nominal state is updated according to the first error state to determine a target gyroscope zero bias value of the UAV.
2. The method according to claim 1, characterized in that Determining a first nominal state of the drone at a current moment according to the first angular rate information and the first gyroscope bias includes: A first quaternion of the drone at a current moment is determined according to the first angular rate information, and a first nominal state of the drone at a current moment is constructed according to the first quaternion and the first gyroscope zero bias.
3. The method according to claim 2, characterized in that Determining a first covariance matrix of the first error state includes: Obtaining a first process noise of the drone at a current moment, where the first process noise is determined by gyroscope measurement noise and gyroscope zero bias noise; A first state transfer matrix of the first error state is determined, and a first covariance matrix of the first error state is determined based on the first state transfer matrix and the first process noise.
4. The method according to claim 3, characterized in that Determining a first Kalman gain according to the first covariance matrix includes: Acquire a first measurement noise of the drone at a current moment, where the first measurement noise is determined by a measurement noise of the first acceleration information of the inertial measurement unit; A first Kalman gain is determined according to the first measurement noise and the first covariance matrix.
5. The method according to claim 1, wherein Determining a second nominal state of the UAV at a current moment according to the target gyroscope zero bias value, the first angular rate information, and the first speed information includes: determining second angular rate information according to the target gyroscope zero bias value and the first angular rate information; Determining second speed information of the drone based on the first speed information and the first acceleration information; the second speed information is three-dimensional information; A second nominal state of the drone at the current moment is constructed according to the second angular rate information and the second speed information.
6. The method according to claim 5, characterized in that Determining a second covariance matrix of the second error state includes: Acquire a second process noise of the drone at a current moment, where the second process noise is determined by a gyroscope measurement noise and a measurement noise of the first acceleration information of the inertial measurement unit; A second state transfer matrix of the second error state is determined, and a second covariance matrix of the second error state is determined based on the second state transfer matrix and the second process noise.
7. A device for determining the heading of an unmanned aerial vehicle based on a single GNSS antenna, characterized in that: The drone is equipped with a single GNSS antenna and an inertial measurement unit, the device comprising: a first data fusion module, configured to obtain first acceleration information and first angular rate information of the inertial measurement unit at a current moment, and determine a target gyroscope zero bias value of the UAV by performing data fusion processing on the first acceleration information and the first angular rate information; wherein the total dimension of the data processed by the data fusion processing is seven dimensions; a second data fusion module, configured to obtain first velocity information of the GNSS single antenna at a current moment, determine a target heading angle of the UAV at a next moment by performing data fusion processing on the first velocity information, the target gyroscope zero bias value, the first acceleration information, and the first angular rate information, and adjust the heading of the UAV according to the target heading angle; the first velocity information is a velocity in a north-east reference coordinate system; Wherein, the second data fusion module includes: a second nominal state determination unit, used to determine the second nominal state of the UAV at the current moment according to the target gyroscope zero bias value, the first angular rate information and the first velocity information; a second covariance matrix determination unit, used to determine the second error state of the UAV at the current moment, and determine the second covariance matrix of the second error state, where the second error state is a zero matrix with six rows and one column; a second Kalman gain determination unit, used to obtain the second measurement noise of the UAV at the current moment, and determine the second Kalman gain according to the second measurement noise and the second covariance matrix; the second measurement noise is determined by the measurement noise of the first velocity information of the GNSS single antenna; a second error state determination unit, used to determine the second error state according to the second Kalman gain and the first velocity information; a heading angle determination unit, used to update the second nominal state according to the second error state, and determine the target heading angle of the UAV at the next moment; Among them, the first data fusion module includes: a first nominal state determination unit, used to obtain the first gyroscope bias of the drone at the current moment, and determine the first nominal state of the drone at the current moment according to the first angular rate information and the first gyroscope bias; a first covariance matrix determination unit, used to determine the first error state of the drone at the current moment, and determine the first covariance matrix of the first error state, the first error state is a zero matrix with six rows and one column; a second error state determination unit, used to determine the first Kalman gain according to the first covariance matrix, and determine the first error state according to the first Kalman gain and the first acceleration information; a gyroscope bias determination unit, used to update the first nominal state according to the first error state to determine the target gyroscope bias value of the drone.
Citation Information
Patent Citations
Attitude heading reference system for low-cost small unmanned aerial vehicle
CN102692225A
GNSS-INS vehicle attitude determination method based on single antenna
CN105823481A
Course correction method and system for indoor robot navigation
CN110672099A