IMU-Based Mobile Window GNSS Spoofing Identification Method and System
By using the IMU-based mobile window GNSS spoofing recognition method in the GNSS/INS combined navigation system, the impact of GNSS signal spoofing on navigation positioning is solved, and higher positioning accuracy and system reliability are achieved.
Patent Information
- Application Number
- CN202110282732.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-03-16
- Publication Date
- 2025-06-27
- Estimated Expiration
- 2041-03-16
AI Technical Summary
GNSS signal spoofing has a serious impact on the positioning accuracy of the GNSS/INS combined navigation system, resulting in incorrect positioning and timing information.
The GNSS spoofing recognition method based on IMU is adopted to realize the spoofing detection of GNSS signals by judging the length of the mobile window, acquiring IMU and GNSS observation data, calculating the difference in eigenvectors, marking the abnormal epoch and discarding the GNSS data that may be spoofed.
Effectively identify and resist GNSS signal spoofing, avoid navigation positioning deviations, and improve positioning accuracy and reliability of GNSS/INS combined navigation system.
Smart Images

Figure CN115079212B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of navigation and positioning, and particularly relates to a method and system for identifying GNSS spoofing based on an IMU with a moving window. Background Art
[0002] In vehicle navigation and positioning applications, the Global Navigation Satellite System (GNSS) positioning system plays a crucial role. However, with the development of technology, GNSS signal spoofing means are increasingly easy to obtain, and spoofing signals have obvious harms to GNSS positioning applications, which can lead to incorrect positioning and timing information obtained by the positioning system.
[0003] The Inertial Navigation System (INS) is a completely autonomous navigation means that is not affected by the outside world. In vehicle navigation and positioning systems, a technical solution combining the Global Navigation Satellite System (GNSS) and the Inertial Navigation System (INS) is usually adopted. GNSS / INS integrated navigation has now been widely used in intelligent driving, precision agriculture, and vehicle navigation devices, etc. GNSS has high long-term positioning accuracy and the error does not diverge with time, but the disadvantage is that its anti-signal interference ability is weak. INS does not have any optoelectronic connection with the outside world, has good concealment, and can independently calculate without being interfered by the outside world, but the navigation error will accumulate with time. The GNSS / INS integrated navigation system can effectively fuse GNSS information and INS information through data fusion methods such as Kalman filtering to achieve the complementary advantages of the two. However, for the GNSS system that needs to receive external signals, when there is intentional spoofing in the signal, it will still cause deviations in the results of the GNSS / INS integrated navigation system, causing serious harms to practical applications. Therefore, it is very necessary to study GNSS spoofing detection technology for the GNSS / INS integrated navigation system. Summary of the Invention
[0004] The purpose of this application is to provide a method and system for identifying GNSS spoofing based on an IMU with a moving window, which can identify GNSS spoofing signals and avoid navigation and positioning deviations.
[0005] This application discloses a method for identifying GNSS spoofing based on an IMU with a moving window, including:
[0006] Judging whether the length of the moving window meets the set conditions. If so, initializing the moving window and entering the next moving window;
[0007] Obtaining IMU observation data and generating inertial navigation positioning information for the current epoch according to the IMU observation data;
[0008] Generate the GNSS navigation and positioning information for the current epoch based on the GNSS observation data;
[0009] Calculate the difference of the eigenvectors between the inertial navigation positioning information and the GNSS navigation positioning information for the current epoch;
[0010] When the difference is greater than the corresponding threshold, mark the current epoch as abnormal;
[0011] Determine whether there are N consecutive epochs marked as abnormal up to the current epoch. If so, determine that there is GNSS spoofing at the current epoch and discard the GNSS observation data of the current epoch, where N>2.
[0012] In a preferred example, if there are not N consecutive epochs marked as abnormal, perform the main Kalman filter on the GNSS observation data and the IMU observation data to form a fused positioning result.
[0013] In a preferred example, the step of generating the inertial navigation positioning information for the current epoch based on the IMU observation data includes: sequentially performing inertial navigation mechanical scheduling and sub-Kalman filtering on the IMU data; the step of performing sub-Kalman filtering on the IMU observation data further includes:
[0014] Adding non-integrity constraints, parking constraints, and vehicle speed updates. The non-integrity constraint means that there is no lateral sliding and vertical jitter during the vehicle's ground travel. The parking constraint means that when a parking state is detected, a zero speed is used as virtual observation information to construct a Kalman filter measurement equation. The vehicle speed update means using the vehicle speed observation to construct a Kalman filter measurement equation.
[0015] In a preferred example, the step of determining whether the moving window length meets the set conditions further includes:
[0016] Determine whether the filtering length is greater than the first set threshold and whether the vehicle's distance from the tunnel exit is greater than the second set threshold. If so, initialize the moving window.
[0017] In a preferred example, the moving window length and / or the vehicle's distance from the tunnel exit is a time duration or a distance.
[0018] In a preferred example, the eigenvector includes three-dimensional position and three-dimensional velocity; the step of marking the current epoch as abnormal when the difference is greater than the corresponding threshold further includes:
[0019] When the difference of any eigenquantity in the eigenvector is greater than the corresponding threshold, mark the current epoch as abnormal.
[0020] In a preferred example, several sliding detection windows are included within the moving window, and several epochs are included within each sliding detection window. The method for identifying GNSS spoofing in a moving window based on IMU further includes:
[0021] Determine whether the cumulative number of epochs is equal to the length of the sliding detection window;
[0022] If so, calculate the average value of the differences of the feature vectors of each epoch within the sliding detection window;
[0023] When the average value of the differences is greater than the corresponding threshold, mark the current epoch as abnormal.
[0024] This application also discloses a system for identifying GNSS spoofing in a moving window based on IMU, including:
[0025] An inertial measurement unit for acquiring IMU observation data;
[0026] A GNSS unit for acquiring GNSS observation data and generating GNSS navigation and positioning information for the current epoch based on the GNSS observation data;
[0027] An inertial navigation calculation module for determining whether the length of the moving window meets the set conditions. If so, initialize the moving window and enter the next moving window. And the inertial navigation calculation module acquires the IMU observation data within the moving window and generates inertial navigation positioning information for the current epoch according to the IMU observation data;
[0028] A feature detection module for calculating the difference of the feature vectors between the inertial navigation positioning information and the GNSS navigation and positioning information of the current epoch. When the difference is greater than the corresponding threshold, it is used to mark the current epoch as abnormal, and determine whether there are N consecutive epochs marked as abnormal up to the current epoch. If so, determine that there is GNSS spoofing at the current epoch and discard the GNSS observation data of the current epoch, where N > 2.
[0029] In a preferred example, it further includes:
[0030] A main Kalman filter module for performing main Kalman filtering on the GNSS observation data and the IMU observation data to form a fused positioning result when there are not N consecutive epochs marked as abnormal.
[0031] In a preferred example, the inertial navigation calculation module includes: an inertial navigation mechanical arrangement module and a sub-Kalman filtering module. The inertial navigation mechanical arrangement module performs inertial navigation mechanical arrangement on the IMU data within the moving window, and the sub-Kalman filtering module performs sub-Kalman filtering on the IMU data within the moving window. When the sub-Kalman filtering module performs sub-Kalman filtering, nonholonomic constraints, parking constraints, and vehicle speed update are added. The nonholonomic constraint means that there is generally no lateral sliding and vertical jitter during the vehicle's ground travel. The parking constraint means that when a parking state is detected, a zero speed is used as virtual observation information to construct a Kalman filter measurement equation. The vehicle speed update means that a Kalman filter measurement equation is constructed using the vehicle speed observation.
[0032] In a preferred example, the moving window includes a plurality of sliding detection windows, and each sliding detection window includes a plurality of epochs. The feature detection module is further configured to:
[0033] Determine whether the cumulative number of epochs is equal to the length of the sliding detection window;
[0034] If so, calculate the average value of the differences of the feature vectors of each epoch within the sliding detection window;
[0035] When the average value of the differences is greater than the corresponding threshold, mark the current epoch as abnormal.
[0036] In a preferred example, the step in which the inertial navigation calculation module determines whether the length of the moving window meets the set conditions further includes:
[0037] Determine whether the filtering length is greater than a first set threshold and whether the vehicle distance from the tunnel exit length is greater than a second set threshold. If so, initialize the moving window.
[0038] The present application also discloses a computer-readable storage medium. Computer-executable instructions are stored in the computer-readable storage medium, and when the computer-executable instructions are executed by a processor, the steps in the method described above are implemented.
[0039] In the embodiment of the present application, based on the GNSS / INS integrated navigation system, a moving window spoofing detection subsystem is added, and GNSS spoofing detection is realized by using the independent calculation ability and short-term accuracy maintenance ability of the inertial navigation system. The design of the moving window can effectively shorten the calculation time of the inertial navigation system, avoid the long-term accumulation of drift errors, and make the method of this embodiment applicable to inertial navigation systems of all levels.
[0040] In addition, the vehicle dynamic constraints of parking constraints and nonholonomic constraints, as well as vehicle speed update used in the present application, can further improve the calculation accuracy of the inertial navigation system within the moving window, and thus improve the GNSS spoofing detection effect.
[0041] A large number of technical features are recorded in the description of this application, distributed in various technical solutions. If all possible combinations of technical features (i.e., technical solutions) of this application are to be listed, the description will be too lengthy. To avoid this problem, each technical feature disclosed in the above-mentioned invention content of this application, each technical feature disclosed in the following various embodiments and examples, and each technical feature disclosed in the drawings can be freely combined with each other to form various new technical solutions (all of these technical solutions should be regarded as having been recorded in this specification), unless the combination of such technical features is technically infeasible. For example, in one example, features A+B+C are disclosed, and in another example, features A+B+D+E are disclosed. Features C and D are equivalent technical means that play the same role, and only one of them can be used technically and it is impossible to use both at the same time. Feature E can be combined with feature C technically. Then, the solution of A+B+C+D should not be regarded as having been recorded because it is technically infeasible, while the solution of A+B+C+E should be regarded as having been recorded. Brief Description of the Drawings
[0042] Figure 1 is a schematic flowchart of an IMU-based mobile window GNSS spoofing recognition method according to the first embodiment of this application.
[0043] Figure 2 is a schematic overall principle diagram of an IMU-based mobile window GNSS spoofing recognition method according to the first embodiment of this application.
[0044] Figure 3 is a schematic detailed flowchart of an IMU-based mobile window GNSS spoofing recognition method according to the first embodiment of this application.
[0045] Figure 4 is a schematic diagram of a mobile window and a sliding detection window according to the first embodiment of this application.
[0046] Figure 5 is a schematic structural diagram of an IMU-based mobile window GNSS spoofing recognition system according to the second embodiment of this application. Detailed Embodiments
[0047] In the following description, many technical details are presented for the reader to better understand this application. However, those of ordinary skill in the art can understand that even without these technical details and various changes and modifications based on the following embodiments, the technical solutions claimed in this application can still be implemented.
[0048] Explanation of Some Concepts:
[0049] Inertial Measurement Unit (IMU): A device that measures the three-axis angular rate and three-axis acceleration of an object. Generally, an IMU includes three single-axis accelerometers and three single-axis gyroscopes. The accelerometers detect the acceleration signals of the object along the three independent axes in the carrier coordinate system, while the gyroscopes detect the angular velocity signals of the carrier, measuring the angular velocity and acceleration of the object in three-dimensional space, and thereby calculating the attitude, velocity, position, etc. of the object.
[0050] Non-Holonomic Constraints (NHC), that is, it is considered that there is no lateral sliding and vertical bouncing during the vehicle's ground travel, and the speed perpendicular to the vehicle's forward direction is approximately equal to 0, and this is used as virtual observation information to construct the Kalman filter measurement equation.
[0051] Zero Velocity Update (ZUPT), also known as the parking constraint, that is, when the parking state is detected, zero velocity is used as virtual observation information to construct the Kalman filter measurement equation.
[0052] To make the objectives, technical solutions, and advantages of this application clearer, the following will further describe the embodiments of this application in detail with reference to the accompanying drawings.
[0053] The first embodiment of this application provides a method for identifying GNSS spoofing based on IMU with a moving window, and its process is as Figure 1 shown. This method includes the following steps:
[0054] Step 101, determine whether the length of the moving window meets the set conditions. If so, initialize the moving window and proceed to the next moving window. The length of the moving window is either a time duration or a distance. The moving window time duration refers to the time difference between the start epoch and the end epoch of the window. The moving window distance refers to the cumulative mileage within the window. The length of the moving window can be adjusted according to the performance of the inertial devices, and the design of the moving window enables the method of this application to be applicable to various levels of inertial navigation systems.
[0055] In other embodiments, determining whether the moving window length meets the set conditions may further include: determining whether the filtering length is greater than a first set threshold and whether the vehicle's distance from the tunnel exit is greater than a second set threshold. If so, initialize the moving window. In one embodiment, the filtering length and / or the vehicle's distance from the tunnel exit are time durations or distances. The filtering time duration refers to the time difference between the start epoch and the end epoch of the window. The filtering distance refers to the cumulative mileage within the window. The vehicle's time duration from the tunnel exit refers to the time difference experienced by the vehicle from the tunnel exit. The vehicle's distance from the tunnel exit refers to the distance experienced by the vehicle from the tunnel exit. It should be noted that adding the judgment condition of exceeding the set threshold from the tunnel exit is to avoid re-initialization when the accuracy has not yet recovered inside or after exiting the tunnel, resulting in too large initialization errors. It should be understood that in other embodiments of the present application, it is also possible to only determine whether the filtering length is greater than the first set threshold. If so, initialize the moving window.
[0056] Step 102: Obtain IMU observation data and generate inertial navigation positioning information for the current epoch based on the IMU observation data.
[0057] In one embodiment, the step of generating inertial navigation positioning information for the current epoch based on the IMU observation data includes: sequentially performing inertial navigation mechanical arrangement and sub-Kalman filtering on the IMU data. Initialization of the moving window includes initializing the inertial navigation mechanical arrangement parameters and the sub-Kalman filter parameters. It should be noted that when first entering the moving window, it is also necessary to initialize the moving window.
[0058] In one embodiment, the step of performing sub-Kalman filtering on the IMU observation data further includes: adding nonholonomic constraints, parking constraints, and vehicle speed updates for sub-Kalman filtering. Among them, the nonholonomic constraint means that there is no lateral sliding and vertical jitter during the vehicle's ground travel. The parking constraint means that when a parking state is detected, a zero-speed is used as virtual observation information to construct a Kalman filter measurement equation. The vehicle speed update means using the vehicle speed observation quantity to construct a Kalman filter measurement equation.
[0059] In this embodiment, using the vehicle's own dynamic constraint information to correct the prediction result through Kalman filtering and adding vehicle speed updates to the Kalman filter when vehicle speed is available can further improve the inertial navigation system calculation accuracy within the moving window, thereby improving the GNSS spoofing detection effect.
[0060] Step 103: Generate GNSS navigation positioning information for the current epoch based on the GNSS observation data.
[0061] Step 104, calculate the difference of the feature vectors between the inertial navigation positioning information and the GNSS navigation positioning information of the current epoch. In one embodiment, the feature vectors include three-dimensional position and three-dimensional velocity.
[0062] Step 105, when the difference is greater than the corresponding threshold, mark the current epoch as abnormal. The step 105 of marking the current epoch as abnormal when the difference is greater than the corresponding threshold further includes:
[0063] When the difference of any feature quantity in the feature vectors is greater than the corresponding threshold, mark the current epoch as abnormal.
[0064] In other embodiments, the moving window includes several sliding detection windows, and each sliding detection window includes several epochs. The method for GNSS spoofing identification based on IMU moving window further includes:
[0065] Judge whether the cumulative number of epochs is equal to the length of the sliding detection window;
[0066] If so, calculate the average value of the differences of the feature vectors of each epoch in the sliding detection window;
[0067] When the average value of the differences is greater than the corresponding threshold, mark the current epoch as abnormal.
[0068] Step 106, judge whether there are N consecutive epochs marked as abnormal up to the current epoch. If so, judge that there is GNSS spoofing at the current epoch and discard the GNSS observation data of the current epoch, where N>2. In one embodiment, if there are not N consecutive epochs marked as abnormal, perform primary Kalman filtering on the GNSS observation data and the IMU observation data to form a fused positioning result.
[0069] In this application, a moving window spoofing detection subsystem is added on the basis of the main Kalman filter of the GNSS / INS integrated navigation system, and GNSS spoofing detection is realized by using the independent calculation ability and short-term accuracy maintenance ability of the INS. The design of the moving window can effectively shorten the calculation time of the inertial navigation system and avoid the long-term accumulation of drift errors, making the method of this embodiment applicable to inertial navigation systems of all levels.
[0070] In order to better understand the technical solution of this application, a specific example is given below for illustration. The details listed in this example are mainly for easy understanding and do not limit the protection scope of this application.
[0071] The overall principle of the method for GNSS spoofing identification based on IMU moving window in an embodiment of this application is as Figure 2As shown in the figure. In the GNSS / INS integrated navigation system, the IMU observation data of the inertial measurement unit (IMU) 201 is processed through the inertial navigation mechanical scheduling module 206 for inertial navigation mechanical scheduling, and is jointly processed through the main Kalman filter module 207 for Kalman filter fusion solution together with the GNSS observation data of the GNSS unit 202 to obtain the integrated positioning result of GNSS / INS. In this application, on the basis of the original architecture of the GNSS / INS integrated navigation system, a spoofing detection subsystem is added in parallel. The spoofing detection subsystem includes an inertial navigation calculation module 203 and a feature detection module 204. The inertial navigation calculation module 203 obtains the IMU observation data through the inertial navigation mechanical scheduling module 2031 for inertial navigation mechanical scheduling, and corrects the prediction result of the inertial navigation mechanical scheduling through the sub-Kalman filter module 2032. Thus, the inertial navigation calculation module 203 obtains the feature vectors such as the position, velocity, and attitude independently calculated by the INS.
[0072] The feature detection module 204 simultaneously receives the navigation information output from the INS and the GNSS systems, and calculates the difference of each feature quantity such as the position and velocity at the same moment to obtain the difference of each feature quantity. The feature detection module 204 averages the differences at each moment within the length of the sliding detection window. If the average value calculated for N consecutive epochs is greater than the preset threshold, it is determined that GNSS spoofing exists, the GNSS coefficient at that moment is removed, and the GNSS observation data is discarded and does not enter the main Kalman filter module 207 for update. Instead, the INS calculation result is used as the navigation output. Otherwise, the GNSS observation data normally enters the main Kalman filter module 207 for fusion solution, and the fusion positioning result is used as the navigation output.
[0073] In addition, in other embodiments of this application, providing non-integrity constraints, parking constraints, and vehicle speed updates to the sub-Kalman filter module 2032, using the vehicle's own dynamic constraint information to correct the prediction result through the sub-Kalman filter, and adding vehicle speed updates to the Kalman filter when vehicle speed is available can further improve the calculation accuracy of the inertial navigation system within the moving window, and thus improve the GNSS spoofing detection effect.
[0074] The specific process of the GNSS spoofing identification method in an embodiment of this application is as Figure 3 shown, and the GNSS spoofing identification method will be described in detail in combination with Figure 2 and Figure 3 for the GNSS spoofing identification method.
[0075] When entering the deception detection subsystem, the restart judgment logic of the inertial navigation calculation module will be started first, and step 301 will be entered to determine whether it is the first time to enter the deception subsystem, or whether the independent filtering length of the inertial navigation calculation module is greater than the predetermined threshold 1 and the distance from the tunnel exit is greater than the predetermined threshold 2. If so, step 302 will be entered, and the relevant parameters of the inertial navigation mechanical arrangement and the sub-Kalman filter in the inertial navigation calculation module will be re-initialized.
[0076] It should be noted that the judgment condition of adding the distance exceeding the set length threshold from the tunnel exit is to avoid re-initialization when the accuracy has not been restored in the tunnel or after leaving the tunnel, resulting in too large initialization errors. The moving window length can be adjusted according to the performance of the inertial devices. The design of the moving window makes the deception recognition method of the present application applicable to various levels of inertial navigation systems.
[0077] After the restart judgment logic, step 303 is entered to determine whether the current injected data type is IMU or GNSS. If it is IMU data, the inertial navigation calculation module will be entered. First, step 304 will be entered for pure inertial navigation mechanical arrangement. After that, step 306 will be entered for sub-Kalman filter prediction. Then, in step 307, the INS calculated navigation and positioning information, including position and speed information, will be obtained through the sub-Kalman filter. In addition, in step 307, the vehicle's own dynamic constraint NHC will be added, the zero speed constraint ZUPT will be added when the parking state is detected, and the vehicle speed assistance will be added when the vehicle speed is accessed to the system.
[0078] If it is GNSS data, step 305 will be entered. First, it will be determined whether the current GNSS result is valid. If it is valid, step 308 will be entered to provide the GNSS navigation and positioning information (GNSS position, speed) to the feature detection module, otherwise this module will be skipped.
[0079] In step 309, the navigation information difference is calculated to obtain the deception detection feature vector of the current epoch. Specifically, the feature detection module subtracts the navigation and positioning information calculated by GNSS from the navigation and positioning information calculated by INS at the same moment to obtain the difference of the three-dimensional position components and the difference of the three-dimensional speed components, forming the difference of the deception detection feature quantity of the current epoch.
[0080] Step 310: Determine whether the cumulative number of epochs is equal to the length of the sliding detection window. The sliding detection window may include several epochs, and the spoofing detection feature vectors at the epochs within the sliding detection window length form a spoofing detection feature sequence. When the cumulative number of epochs reaches the set length of the sliding detection window, proceed to Step 311 to calculate the average of the spoofing detection feature sequence within this window. Step 312: Determine whether the average value of the differences in any component of the three-dimensional position and velocity is greater than the set threshold. If the average values of the differences in all components of the three-dimensional position and velocity are less than the corresponding predetermined thresholds, proceed to Step 313. If the average value of the differences in any component of the three-dimensional position and velocity is greater than the set threshold, proceed to Step 314 to mark the current epoch as abnormal, thereby enhancing the detection effect for various types of spoofing including slow-varying spoofing. Then enter the next sliding detection window and repeat the aforementioned Steps 311 and 312.
[0081] Step 315: If N consecutive epochs are marked as abnormal, proceed to Step 316 to determine the existence of GNSS spoofing, discard the GNSS observation data at the current moment, and use the INS calculation result of the main Kalman filter as the final navigation output. Otherwise, proceed to Step 317, where GNSS normally enters the main Kalman filter fusion solution, and use the GNSS and IMU fusion positioning result as the final navigation output.
[0082] The schematic diagrams of the moving window and the sliding detection window in the spoofing recognition method according to an embodiment of the present application are as Figure 4 shown. Within each moving window, the inertial navigation mechanical arrangement and the parameters of the sub-Kalman filter in the inertial navigation calculation module are re-initialized to clear the INS cumulative calculation error of the previous window. The sliding detection window advances epoch by epoch with GNSS, and determines whether there is spoofing abnormality in the current epoch according to the detection feature sequence within the window.
[0083] The second embodiment of the present application provides an IMU-based moving window GNSS spoofing recognition system, the structure of which is as Figure 5 shown, including: an inertial measurement unit 501, a GNSS unit 502, an inertial navigation calculation module 503, and a feature detection module 504.
[0084] The inertial measurement unit 501 is used to obtain IMU observation data. The GNSS unit 502 is used to obtain GNSS observation data and generate GNSS navigation and positioning information for the current epoch based on the GNSS observation data. The inertial navigation calculation module 503 is used to determine whether the length of the moving window meets the set conditions. If so, the moving window is initialized and the next moving window is entered. And the inertial navigation calculation module obtains IMU observation data within the moving window and generates inertial navigation positioning information for the current epoch based on the IMU observation data. The feature detection module 504 is used to calculate the difference between the feature vectors of the inertial navigation positioning information and the GNSS navigation and positioning information for the current epoch. When the difference is greater than the corresponding threshold, it is used to mark the current epoch as abnormal, and it is determined whether there are N consecutive epochs marked as abnormal up to the current epoch. If so, it is determined that there is GNSS spoofing at the current epoch and the GNSS observation data of the current epoch is discarded, where N>2.
[0085] In one embodiment, the inertial navigation calculation module 501 includes: an inertial navigation mechanical arrangement module and a sub-Kalman filter module. The inertial navigation mechanical arrangement module performs inertial navigation mechanical arrangement on the IMU data within the moving window, and the sub-Kalman filter module performs sub-Kalman filtering on the IMU data within the moving window. When the sub-Kalman filter module performs sub-Kalman filtering, non-integrity constraints, parking constraints, and vehicle speed updates are added. The non-integrity constraint means that there is no lateral sliding and vertical jitter during the vehicle's ground travel. The parking constraint means that when a parking state is detected, a zero speed is used as virtual observation information to construct a Kalman filter measurement equation. The vehicle speed update means that a Kalman filter measurement equation is constructed using the vehicle speed observation.
[0086] In one embodiment, the GNSS spoofing identification system further includes: a main Kalman filter module, which is used to perform main Kalman filtering on the GNSS observation data and the IMU observation data to form a fused positioning result when there are not N consecutive epochs marked as abnormal.
[0087] In one embodiment, several sliding detection windows are included within the moving window, and each sliding detection window includes several epochs. The feature detection module is further used to:
[0088] Determine whether the cumulative number of epochs is equal to the length of the sliding detection window;
[0089] If so, calculate the average value of the differences between the feature vectors of each epoch within the sliding detection window;
[0090] When the average value of the differences is greater than the corresponding threshold, mark the current epoch as abnormal.
[0091] In one embodiment, the step in which the inertial navigation calculation module determines whether the length of the moving window meets the set conditions further includes:
[0092] Determine whether the filtering length is greater than a first set threshold and whether the vehicle distance from the tunnel exit is greater than a second set threshold. If so, initialize the moving window.
[0093] In one embodiment, the filtering length and / or the vehicle distance from the tunnel exit is a duration or a distance.
[0094] In one embodiment, the feature vector includes three-dimensional position and three-dimensional velocity; the step of marking the current epoch as abnormal when the difference is greater than the corresponding threshold further includes:
[0095] When the difference of any feature quantity in the feature vector is greater than the corresponding threshold, mark the current epoch as abnormal.
[0096] The first implementation manner is a method implementation manner corresponding to this implementation manner. The technical details in the first implementation manner can be applied to this implementation manner, and the technical details in this implementation manner can also be applied to the first implementation manner.
[0097] It should be noted that those skilled in the art should understand that the implementation functions of the various modules shown in the above embodiments of the IMU-based moving window GNSS spoofing recognition system can be understood with reference to the relevant descriptions of the foregoing IMU-based moving window GNSS spoofing recognition method. The functions of the various modules shown in the above embodiments of the IMU-based moving window GNSS spoofing recognition system can be implemented by a program (executable instruction) running on a processor or by specific logic circuits. If the above IMU-based moving window GNSS spoofing recognition system in the embodiments of the present application is implemented in the form of a software function module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the embodiments of the present application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the methods described in the various embodiments of the present application. The foregoing storage medium includes: various media such as a USB flash drive, a mobile hard disk, a read-only memory (ROM, Read Only Memory), a magnetic disk, or an optical disc that can store program codes. In this way, the embodiments of the present application are not limited to any specific combination of hardware and software.
[0098] Accordingly, an embodiment of the present application further provides a computer-readable storage medium, which stores computer-executable instructions. When the computer-executable instructions are executed by a processor, the various method embodiments of the present application are implemented. The computer-readable storage medium includes permanent and non-permanent, removable and non-removable media, and information storage can be implemented by any method or technology. The information may be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassette tapes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information accessible by a computing device. As defined herein, computer-readable storage media do not include transitory media such as modulated data signals and carrier waves.
[0099] In addition, an embodiment of the present application further provides an IMU-based mobile window GNSS spoofing recognition system, which includes a memory for storing computer-executable instructions, and a processor; the processor is configured to implement the steps in the above-mentioned various method embodiments when executing the computer-executable instructions in the memory. Among them, the processor may be a central processing unit (Central Processing Unit, abbreviated as "CPU"), or other general-purpose processors, digital signal processors (Digital Signal Processor, abbreviated as "DSP"), application specific integrated circuits (Application Specific Integrated Circuit, abbreviated as "ASIC"), etc. The aforementioned memory may be a read-only memory (read-only memory, abbreviated as "ROM"), random access memory (random access memory, abbreviated as "RAM"), flash memory (Flash), hard disk or solid state drive, etc. The steps of the methods disclosed in the various embodiments of the present invention can be directly embodied as being executed by a hardware processor, or executed by a combination of hardware and software modules in the processor.
[0100] It should be noted that in the application documents of this patent, relational terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the term "comprising", "including" or any other variant thereof is intended to cover non-exclusive inclusion, so that a process, method, article or device comprising a series of elements not only includes those elements, but also includes other elements not expressly listed, or also includes elements inherent to such process, method, article or device. Without further limitation, an element defined by the statement "comprising one" does not exclude the existence of additional identical elements in the process, method, article or device comprising said element. In the application documents of this patent, if it is mentioned that an act is performed according to a certain element, it means that the act is performed at least according to that element, including two cases: performing the act only according to that element and performing the act according to that element and other elements. Expressions such as multiple, many times, various, etc. include 2, 2 times, 2 kinds, as well as more than 2, more than 2 times, more than 2 kinds.
[0101] All documents mentioned in this specification are considered to be integrally included in the disclosure of this application so that they can be used as a basis for modification if necessary. In addition, it should be understood that the above are only preferred embodiments of this specification and are not used to limit the protection scope of this specification. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of one or more embodiments of this specification shall be included in the protection scope of one or more embodiments of this specification.
[0102] In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve the desired result. Additionally, the processes depicted in the drawings do not necessarily require the particular order or sequential order shown to achieve the desired result. In certain embodiments, multitasking and parallel processing are also possible or may be advantageous.
Claims
1. A mobile window GNSS spoofing identification method based on IMU, characterized in that including: judging whether the filtering length corresponding to the moving window is greater than a first set threshold and whether the vehicle distance from the tunnel exit is greater than a second set threshold. If so, initializing the moving window and entering the next moving window, where the moving window includes a plurality of sliding detection windows, and each sliding detection window includes a plurality of epochs; acquiring IMU observation data and generating inertial navigation positioning information for the current epoch according to the IMU observation data; generating GNSS navigation positioning information for the current epoch according to the GNSS observation data; calculating the difference of the feature vectors between the inertial navigation positioning information and the GNSS navigation positioning information for the current epoch; judging whether the cumulative number of epochs is equal to the length of the sliding detection window. If so, calculating the average value of the differences of the feature vectors for each epoch in the sliding detection window. When the average value of the differences is greater than the corresponding threshold, marking the current epoch as abnormal; judging whether there are N consecutive epochs marked as abnormal up to the current epoch. If so, judging that there is GNSS spoofing at the current epoch and discarding the GNSS observation data of the current epoch, where N>2; 2. The method for identifying GNSS spoofing based on IMU with a moving window according to claim 1, wherein if there are not N consecutive epochs marked as abnormal, performing primary Kalman filtering on the GNSS observation data and the IMU observation data to form a fusion positioning result; 3. The method for identifying GNSS spoofing based on IMU with a moving window according to claim 1, wherein the step of generating inertial navigation positioning information for the current epoch according to the IMU observation data includes: sequentially performing inertial navigation mechanical arrangement and sub-Kalman filtering on the IMU data. The step of performing sub-Kalman filtering on the IMU observation data further includes: adding nonholonomic constraints, parking constraints and vehicle speed update. The nonholonomic constraint means that there is no lateral sliding and vertical jitter during the vehicle's ground travel. The parking constraint means that when a parking state is detected, a zero-speed is used as virtual observation information to construct a Kalman filter measurement equation. The vehicle speed update means using the vehicle speed observation quantity to construct a Kalman filter measurement equation; 4. The method for identifying GNSS spoofing based on IMU with a moving window according to claim 1, wherein the filtering length and / or the vehicle distance from the tunnel exit is a time duration or a distance; 5. The method for identifying GNSS spoofing based on IMU with a moving window according to claim 1, wherein, the feature vector includes three-dimensional position and three-dimensional velocity; the step of marking the current epoch as abnormal when the difference is greater than the corresponding threshold further includes: when the difference of any feature quantity in the feature vector is greater than the corresponding threshold, marking the current epoch as abnormal; 6. A mobile window GNSS spoofing recognition system based on IMU, characterized in that, including: an inertial measurement unit for acquiring IMU observation data; a GNSS unit for acquiring GNSS observation data and generating GNSS navigation positioning information for the current epoch according to the GNSS observation data; an inertial navigation calculation module for judging whether the filtering length corresponding to the moving window is greater than a first set threshold and whether the vehicle distance from the tunnel exit is greater than a second set threshold. If so, initializing the moving window and entering the next moving window, and the inertial navigation calculation module acquires the IMU observation data within the moving window and generates inertial navigation positioning information for the current epoch according to the IMU observation data. Wherein, the moving window includes a plurality of sliding detection windows, and each sliding detection window includes a plurality of epochs. A feature detection module, configured to calculate a difference of feature vectors between the inertial navigation positioning information and the GNSS navigation positioning information of the current epoch, and determine whether the cumulative number of epochs is equal to the length of a sliding detection window; if so, calculate an average value of the differences of the feature vectors of each epoch within the sliding detection window; when the average value of the differences is greater than a corresponding threshold, mark the current epoch as abnormal, and determine whether there are N consecutive epochs marked as abnormal up to the current epoch. If so, determine that GNSS spoofing exists at the current epoch and discard the GNSS observation data of the current epoch, where N > 2.
7. The IMU-based mobile window GNSS spoofing recognition system according to claim 6, characterized in that It further includes: A main Kalman filtering module, when there are not N consecutive epochs marked as abnormal, configured to perform main Kalman filtering on the GNSS observation data and the IMU observation data to form a fused positioning result.
8. The IMU-based moving window GNSS spoofing recognition system according to claim 6, wherein, The inertial navigation calculation module includes an inertial navigation mechanical arrangement module and a sub-Kalman filtering module. The inertial navigation mechanical arrangement module performs inertial navigation mechanical arrangement on the IMU data within the moving window, and the sub-Kalman filtering module performs sub-Kalman filtering on the IMU data within the moving window; when the sub-Kalman filtering module performs sub-Kalman filtering, an integrity constraint, a parking constraint, and a vehicle speed update are added. The integrity constraint means that there is no lateral sliding and vertical bouncing during the vehicle's ground travel. The parking constraint means that when a parking state is detected, a zero speed is used as virtual observation information to construct a Kalman filter measurement equation. The vehicle speed update means that a Kalman filter measurement equation is constructed using a vehicle speed observation quantity.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, and when the computer-executable instructions are executed by a processor, the steps in the method according to any one of claims 1 to 5 are implemented.
Citation Information
Patent Citations
Inertia autonomous navigation method by utilizing vehicle body non-integrity constraint
CN103712620A
Satellite navigation deception recognition method and device
CN111443363A