GNSS drift detection method and system
By screening and calculating GNSS data and judging GNSS drift points, the problem of poor GNSS drift detection effect in the prior art is solved, ensuring the stability of the V2X system.
Patent Information
- Application Number
- CN202210143256.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-02-16
- Publication Date
- 2025-04-11
- Estimated Expiration
- 2042-02-16
AI Technical Summary
In the prior art, the GNSS drift detection effect is poor, resulting in poor system stability, which may lead to false positives or more serious problems in the V2X system.
By obtaining the initial GNSS data, multiple initial GNSS points that meet the predetermined conditions are selected, the average speed of the equipment equipped with the GNSS module is calculated, and whether the GNSS points to be tested are drifted based on the average speed.
More accurate GNSS drift detection is achieved to ensure the stability of the V2X system, avoiding false positives and more serious problems caused by GNSS drift.
Smart Images

Figure CN114488214B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of drift detection, and in particular, to a GNSS drift detection method and system, and in particular, preferably to a GNSS drift detection method based on V2X. Background Art
[0002] Obtaining the correct GNSS geographic location is the most basic data requirement and data support for intelligent driving. Distorted GNSS geographic location will lead to intelligent driving warnings and misjudgment, and may even cause serious accidents. GNSS drift will cause GNSS data distortion. The full name of GNSS in English is Global Navigation Satellite System, and its Chinese translation is Global Navigation Satellite System. When the GNSS terminal device is stationary, its positioning coordinates (latitude and longitude) are often changing, and occasionally the changes are relatively large, and even speed will be displayed. This phenomenon is called "drift". Similar phenomena will also occur when moving, but the probability is relatively small. Drift mainly occurs in two situations: first, the speed is too fast, so that the response time of GNSS is shorter than the current operating speed, and drift occurs; second, in places with dense tall buildings or bad weather conditions, because the GNSS signal is folded and reflected many times, signal errors occur, and drift occurs.
[0003] The Chinese invention patent document with publication number CN109521450A discloses a positioning drift detection method and device. The method includes: obtaining the GSV at the current moment output by the GNSS receiver; based on the elevation angle and carrier-to-noise ratio of the visible satellites included in the GSV, counting the number of satellites svnum1 whose elevation angle is greater than a preset elevation angle threshold and whose carrier-to-noise ratio is greater than a preset first carrier-to-noise ratio threshold; judging whether svnum1 is less than the preset satellite number threshold, and if so, determining that positioning drift occurs at the current moment.
[0004] With respect to the above-mentioned related technologies, the inventors believe that the drift detection effect of the above-mentioned methods is poor, resulting in poor stability of the system. Summary of the invention
[0005] In view of the defects in the prior art, an object of the present invention is to provide a method and system for detecting GNSS drift.
[0006] A method for detecting GNSS drift according to the present invention comprises the following steps:
[0007] Step S1: acquiring initial GNSS data, and selecting a plurality of initial GNSS points from the initial GNSS data;
[0008] Step S2: judging whether the GNSS point to be measured drifts according to the screened initial GNSS point.
[0009] Preferably, step S1 comprises the following steps:
[0010] Acquisition steps: Acquisition of initial GNSS position data information;
[0011] Screening step: Screening multiple initial GNSS points that meet predetermined conditions according to the initial GNSS position data information.
[0012] Preferably, step S2 comprises the following steps:
[0013] Calculation steps: Calculate the average speed of the device equipped with the GNSS module based on the selected initial GNSS point data;
[0014] Judgment steps: Determine whether the GNSS point to be measured is drifting according to the average speed of the device.
[0015] Preferably, the detection method further comprises an updating step: recording and saving the positions of GNSS points that have not drifted, and updating the average speed of the device.
[0016] Preferably, in the acquisition step, initial GNSS position data information is acquired at predetermined intervals, and the initial GNSS position data information includes time, longitude and latitude.
[0017] Preferably, in the screening step, the predetermined conditions include:
[0018] The initial GNSS points are a predetermined number of consecutive initial GNSS points;
[0019] A line connecting the nth point to the n-1th point in the initial GNSS points and a line connecting the nth point to the n+1th point in the initial GNSS points, wherein the angle between the two connecting lines is between the first predetermined angle and the second predetermined angle.
[0020] A GNSS drift detection system provided according to the present invention includes the following modules:
[0021] Module M1: obtaining initial GNSS data and selecting multiple initial GNSS points from the initial GNSS data;
[0022] Module M2: Determine whether the GNSS point to be measured drifts according to the selected initial GNSS point.
[0023] Preferably, the module M1 includes the following modules:
[0024] Acquisition module: obtains initial GNSS position data information;
[0025] Screening module: Screening multiple initial GNSS points that meet predetermined conditions according to the initial GNSS position data information.
[0026] Preferably, the module M2 includes the following modules:
[0027] Calculation module: calculates the average speed of the device equipped with the GNSS module based on the filtered initial GNSS point data;
[0028] Judgment module: judge whether the GNSS point to be tested is drifting according to the average speed of the device.
[0029] Preferably, the detection system further comprises an updating module: recording and saving the positions of GNSS points that have not drifted, and updating the average speed of the device.
[0030] Compared with the prior art, the present invention has the following beneficial effects:
[0031] 1. The present invention solves the problem of V2X generating false alarms or even more serious problems due to accidental drift of GNSS, filters out drifting GNSS data, and ensures the stable operation of the V2X system;
[0032] 2. The present invention utilizes existing product data and is simple and easy to implement;
[0033] 3. The present invention has a shorter GNSS drift detection time and a faster response. BRIEF DESCRIPTION OF THE DRAWINGS
[0034] Other features, objects and advantages of the present invention will become more apparent from the detailed description of non-limiting embodiments made with reference to the following drawings:
[0035] Figure 1 This is a diagram of the system equipment of the present invention;
[0036] Figure 2 It is a flow chart of the present invention. DETAILED DESCRIPTION
[0037] The present invention is described in detail below in conjunction with specific embodiments. The following embodiments will help those skilled in the art to further understand the present invention, but are not intended to limit the present invention in any form. It should be noted that, for those of ordinary skill in the art, several changes and improvements can also be made without departing from the concept of the present invention. These all belong to the protection scope of the present invention.
[0038] The embodiment of the present invention discloses a method for detecting GNSS drift based on V2X. The method only requires an OBU device and its attached GNSS antenna, such as Figure 1As shown. Install the OBU device and its attached antenna on the vehicle. V2X is short for Vehicle to Everything. OBU is short for On-Board Unit. LTE is short for Long Term Evolution. GNSS is short for Global Navigation Satellite System.
[0039] like Figure 1 and Figure 2 As shown, the method includes the following steps: Step S1: Acquire initial GNSS data, and select multiple initial GNSS points from the initial GNSS data. Step S1 includes the following steps: Acquisition step: Acquire initial GNSS position data information. In order to simplify the judgment of the accuracy of the initial GNSS data information, the vehicle is set to move in a route close to a straight line, record 8 consecutive GNSS point data information, and calculate the angle value between each point. The initial GNSS position data information is acquired at predetermined intervals, and the initial GNSS position data information includes time, longitude and latitude. Specifically, the GNSS module sends a GNSS position information data every 200 milliseconds, and the data includes UTC system time, accurate to milliseconds; longitude (lo) and latitude (la). Determine whether the GNSS position has drifted based on the three basic data of time, longitude and latitude. The full name of UTC in English is Universal Time Coordinated, and its Chinese name is Coordinated Universal Time.
[0040] Screening step: Screen multiple initial GNSS points that meet the predetermined conditions according to the initial GNSS position data information. The predetermined conditions include: the initial GNSS points are a predetermined number of consecutive initial GNSS points; the line between the nth point and the n-1th point in the initial GNSS points, and the line between the nth point and the n+1th point in the initial GNSS points, the angle between the two lines is between the first predetermined angle and the second predetermined angle. The predetermined number includes eight, the first predetermined angle includes -15 degrees, and the second predetermined angle includes 15 degrees. Specifically, detect and filter position points that may drift. Starting from the second point, calculate the angle between the line connecting the previous point and the previous line. If the angle is greater than 15 degrees, discard all previous points and find 8 GNSS points in the back until all 8 GNSS points meet this condition.
[0041] Step S2: Determine whether the GNSS point to be tested drifts according to the selected initial GNSS point. Step S2 includes the following steps: Calculation step: Calculate the average speed of the device equipped with the GNSS module, which refers to the average speed of the car. Calculate the average speed of the device equipped with the GNSS module according to the selected initial GNSS point data. Calculate the average speed using a smoothing calculation method based on the distance between each point of the selected initial GNSS point data and the fixed time length of 200 milliseconds between two points.
[0042] Judgment step: Determine whether the GNSS point has drifted. Determine whether the GNSS point to be tested has drifted based on the average speed of the device. Specifically, calculate the distance between the new GNSS point and the next new point, and calculate the possible maximum threshold distance length based on the vehicle speed calculation algorithm. If the actual distance between the two points is greater than the maximum possible distance, it indicates that the point has drifted. Discard the drifting point and continue to determine the next GNSS point, increasing the fixed acceleration by 5m / s 2 , calculate the maximum possible threshold distance length, and then determine whether there is drift. If the point has not drifted, discard the GNSS data point with the earliest time, and add this point to the statistical GNSS data point.
[0043] The implementation algorithm of the present invention: Algorithm introduction: Calculate the distance between the longitude (d_lo) and the distance between the latitude (d_la) between two GNSS position points; lo1, la1, lo2, la2, respectively represent the longitude and latitude of the two points; pi represents the value of pi, and r represents the radius of the earth.
[0044] d_lo=2*pi*r*(lo2-lo1) / 360*cos(pi*lo2 / 180).
[0045] d_la=2*pi*r*(la2-la1) / 360.
[0046] Calculate the distance (d) between two GNSS position points:
[0047]
[0048] Get the heading and angle of two GNSS positions. atan is the inverse tangent function.
[0049] If d_lo is less than zero,
[0050] heading=(2*pi)+atan(d_lo / d_la).
[0051] If d_la is less than zero,
[0052] heading=pi+atan(d_lo / d_la).
[0053] In other cases where d_lo is less than zero or d_la is less than zero,
[0054] heading = atan(d_lo / d_la).
[0055] angle = heading * 360 / (2 * pi).
[0056] Calculation of smoothed average speed v and maximum distance d: The average speed of the previously recorded statistical points plus the instantaneous speed of the new GNSS point are added together and divided by 2 to obtain the smoothed average speed. For example, if 8 points are recorded, that is
[0057] v = (v8 + v9) / 2;
[0058] Among them, v8 represents the average speed of the previous 8 points; v9 represents the instantaneous speed of the current point.
[0059] Combined with the actual situation, the speed v is appropriately redundant and increased by 10 m / s. The maximum distance S between the two points is:
[0060] S = (v + 10) t;
[0061] Where t is the time length, here t is the fixed time for GNSS to send at intervals, 200 milliseconds.
[0062] After calculating the drift and when the speed is less than 20m / s, add the acceleration parameter, the maximum distance S:
[0063] S=(v+10)t+1 / 2·at 2 .
[0064] Where a is the acceleration, and a fixed value of 5 is used here.
[0065] Update steps: record and save GNSS point positions and update speed. Record and save GNSS point positions that have not drifted and update the average speed of the device. Specifically, update the latest GNSS position point data that has not drifted, filter out the oldest GNSS point, and recalculate the average speed of the vehicle. Loop to check whether there is GNSS drift.
[0066] The basic principle of the present invention is as follows: after the vehicle moves, the GNSS position drifts only at a single point with a small probability, and the drift position point data is filtered out. Take a number of initial GNSS position data, set the initial GNSS value to be on a motion trajectory close to a straight line, scroll to select the initial GNSS point, calculate the heading of the next point and the angle between the line connecting the previous two points to be between -15 degrees and 15 degrees, if 8 consecutive points can be obtained, then the distance between adjacent points is calculated through the GNSS positions of these points, and the average speed is calculated with the time difference. For the next new GNSS data, calculate the distance to the previous point, and comprehensively judge whether this point is reasonable based on the current speed, filter out unreasonable points that far exceed the distance, and determine them as drift points.
[0067] This method is based on the GNSS module of the OBU device on the vehicle reporting GNSS data at regular intervals, filtering out the initial GNSS data that has not drifted, and calculating the vehicle speed to determine whether the next GNSS position data has drifted. If not, scroll the GNSS data, calculate the speed and determine whether the next GNSS data has drifted. If there is drift, discard this point of data, and add a fixed acceleration and distance to the next point to determine whether it has drifted. This solves the problem of V2X generating false alarms or even more serious problems due to occasional GNSS drift, filters out drifting GNSS data, and ensures stable operation of the V2X system.
[0068] The embodiment of the present invention further discloses a GNSS drift detection system, comprising the following modules: Module M1: acquiring initial GNSS data, and screening out a plurality of initial GNSS points from the initial GNSS data.
[0069] Module M1 includes the following modules: Acquisition module: Acquisition of initial GNSS position data information.
[0070] Screening module: Screening multiple initial GNSS points that meet predetermined conditions according to the initial GNSS position data information.
[0071] Module M2: Determine whether the GNSS point to be measured drifts according to the selected initial GNSS point. Module M2 includes the following modules: Calculation module: Calculate the average speed of the device equipped with the GNSS module according to the selected initial GNSS point data. Determination module: Determine whether the GNSS point to be measured drifts according to the average speed of the device.
[0072] Update module: records and saves the positions of GNSS points that have not drifted, and updates the average speed of the device.
[0073] Those skilled in the art know that, in addition to realizing the system and its various devices, modules, and units provided by the present invention in a purely computer-readable program code, it is entirely possible to realize the same functions in the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers by logically programming the method steps. Therefore, the system and its various devices, modules, and units provided by the present invention can be considered as a hardware component, and the devices, modules, and units included therein for realizing various functions can also be regarded as structures within the hardware component; the devices, modules, and units for realizing various functions can also be regarded as both software modules for realizing the method and structures within the hardware component.
[0074] The above describes the specific embodiments of the present invention. It should be understood that the present invention is not limited to the above specific embodiments, and those skilled in the art can make various changes or modifications within the scope of the claims, which does not affect the essence of the present invention. In the absence of conflict, the embodiments of the present application and the features in the embodiments can be combined with each other arbitrarily.
Claims
1. A method for detecting GNSS drift, characterized in that: The steps include: Step S1: acquiring initial GNSS data, and selecting a plurality of initial GNSS points from the initial GNSS data; Step S2: judging whether the GNSS point to be measured drifts according to the selected initial GNSS point; The step S2 comprises the following steps: Calculation steps: Calculate the average speed of the device equipped with the GNSS module based on the selected initial GNSS point data; Judgment steps: judge whether the GNSS point to be measured drifts according to the average speed of the device; The detection method also includes an updating step: recording and saving the position of the GNSS point that has not drifted, and updating the average speed of the device; Calculate the longitude distance d_lo and latitude distance d_la between two GNSS position points; lo1, la1, lo2, la2, respectively represent the longitude and latitude of two points; pi represents the value of pi, and r represents the radius of the earth; d_lo=2*pi*r*(lo2-lo1) / 360*cos(pi*lo2 / 180) d_la=2*pi*r*(la2-la1) / 360 Calculate the distance d between two GNSS position points: Get the heading and angle of two GNSS positions. atan is the inverse tangent function. If d_lo is less than zero, heading=(2*pi)+atan(d_lo / d_la); If d_la is less than zero, heading=pi+atan(d_lo / d_la); In other cases where d_lo is less than zero or d_la is less than zero, heading = atan(d_lo / d_la); angle = heading * 360 / (2 * pi); Calculation of smoothed average speed v and maximum distance d: The average speed of the previously recorded statistical points plus the instantaneous speed of the new GNSS point are added together and divided by 2 to obtain the smoothed average speed. The number of recorded statistical points is 8, that is, v = (v8 + v9) / 2; Among them, v8 represents the average speed of the previous 8 points; v9 represents the instantaneous speed of the current point; Combined with the actual situation, the speed v is appropriately redundant and increased by 10 m / s. The maximum distance S between the two points is: S = (v + 10) t; Where t is the time length, here t is the fixed time for GNSS interval transmission, which is 200 milliseconds; After calculating the drift and when the speed is less than 20m / s, add the acceleration parameter, the maximum distance S: S=(v+10)t+1 / 2·at2 Where a is the acceleration; Update steps: record and save the GNSS point position and update the speed; specifically, update the latest GNSS position point data without drift, filter out the oldest GNSS point, and recalculate the average speed of the device.
2. The method for detecting GNSS drift according to claim 1, characterized in that: The step S1 comprises the following steps: Acquisition steps: Acquisition of initial GNSS position data information; Screening step: Screening multiple initial GNSS points that meet predetermined conditions according to the initial GNSS position data information.
3. The method for detecting GNSS drift according to claim 2, characterized in that: In the acquisition step, initial GNSS position data information is acquired at predetermined intervals, and the initial GNSS position data information includes time, longitude and latitude.
4. The method for detecting GNSS drift according to claim 2, characterized in that: In the screening step, the predetermined conditions include: The initial GNSS points are a predetermined number of consecutive initial GNSS points; A line connecting the nth point to the n-1th point in the initial GNSS points and a line connecting the nth point to the n+1th point in the initial GNSS points, wherein the angle between the two connecting lines is between the first predetermined angle and the second predetermined angle.
5. A GNSS drift detection system, characterized in that: Includes the following modules: Module M1: obtaining initial GNSS data and selecting multiple initial GNSS points from the initial GNSS data; Module M2: Determine whether the GNSS point to be measured drifts according to the selected initial GNSS point; The module M2 includes the following modules: Calculation module: calculates the average speed of the device equipped with the GNSS module based on the filtered initial GNSS point data; Judgment module: judge whether the GNSS point to be measured is drifting according to the average speed of the device; The detection system also includes an update module: recording and saving the position of the GNSS point without drift, and updating the average speed of the device; Calculate the longitude distance d_lo and latitude distance d_la between two GNSS position points; lo1, la1, lo2, la2, respectively represent the longitude and latitude of two points; pi represents the value of pi, and r represents the radius of the earth; d_lo=2*pi*r*(lo2-lo1) / 360*cos(pi*lo2 / 180) d_la=2*pi*r*(la2-la1) / 360 Calculate the distance d between two GNSS position points: Get the heading and angle of two GNSS positions. atan is the inverse tangent function. If d_lo is less than zero, heading=(2*pi)+atan(d_lo / d_la); If d_la is less than zero, heading=pi+atan(d_lo / d_la); In other cases where d_lo is less than zero or d_la is less than zero, heading = atan(d_lo / d_la); angle = heading * 360 / (2 * pi); Calculation of smoothed average speed v and maximum distance d: The average speed of the previously recorded statistical points plus the instantaneous speed of the new GNSS point are added together and divided by 2 to obtain the smoothed average speed. The number of recorded statistical points is 8, that is, v = (v8 + v9) / 2; Among them, v8 represents the average speed of the previous 8 points; v9 represents the instantaneous speed of the current point; Combined with the actual situation, the speed v is appropriately redundant and increased by 10 m / s. The maximum distance S between the two points is: S = (v + 10) t; Where t is the time length, here t is the fixed time for GNSS interval transmission, which is 200 milliseconds; After calculating the drift and when the speed is less than 20m / s, add the acceleration parameter, the maximum distance S: S=(v+10)t+1 / 2·at2 Where a is the acceleration; Update module: records and saves GNSS point positions and updates speeds. Specifically, updates use the latest GNSS position point data without drift, filters out the oldest GNSS points, and recalculates the average speed of the device.
6. The GNSS drift detection system according to claim 5, characterized in that: The module M1 includes the following modules: Acquisition module: obtains initial GNSS position data information; Screening module: Screening multiple initial GNSS points that meet predetermined conditions according to the initial GNSS position data information.
Citation Information
Patent Citations
Positioning drift detecting method and device
CN109521450A
Method for filtering speed drift of GPS (Global Positioning System)
CN102944886A
Method for judging serviceability of satellite navigation system information, processing module and terminal
CN103472471A