Method and storage medium for improving GNSS module output accuracy
By constructing the correlation between the ground speed output by the GNSS module and the CAN vehicle speed and pulse vehicle speed, the fused vehicle speed is calculated, and the positioning accuracy is corrected when the positioning accuracy is not met, the problem of insufficient output accuracy of the GNSS module in the environment of low positioning accuracy is solved, and the accuracy of vehicle speed and altitude is improved.
Patent Information
- Application Number
- CN201910779241.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-08-22
- Publication Date
- 2025-03-04
- Estimated Expiration
- 2039-08-22
AI Technical Summary
In an environment with low positioning accuracy, the output ground rate and altitude accuracy of existing GNSS modules are insufficient, which is greatly affected by the environment.
By obtaining the CAN vehicle speed and pulse vehicle speed in real time, combining the ground speed output by the GNSS module, the correlation between the vehicle speed value and the fused vehicle speed is constructed, the fused vehicle speed is calculated, and when the positioning accuracy is not met, the fused vehicle speed and altitude ratio was used to correct it when the accuracy conditions were met last time.
The ground rate and altitude accuracy of the output of the GNSS module are improved, and the impact of the adverse environment on positioning accuracy is reduced.
Smart Images

Figure CN112415560B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of positioning technology, and in particular to a method and a storage medium for improving the output accuracy of a GNSS module. Background Art
[0002] The GNSS modules of current mobile vehicle terminal systems can be divided into two categories. One type of GNSS module has an integrated built-in inertial navigation device. The GNSS module can use the internal inertial navigation device for auxiliary positioning, and the cost is relatively high. The other type has no built-in inertial navigation device. The GNSS module can only rely on positioning satellite information for positioning, and the positioning accuracy and effect are greatly affected by the environment. Summary of the invention
[0003] The technical problem to be solved by the present invention is to provide a method and a storage medium for improving the output accuracy of a GNSS module, which can improve the accuracy of the output ground rate and output altitude of the GNSS module.
[0004] In order to solve the above technical problems, the technical solution adopted by the present invention is: a method for improving the output accuracy of a GNSS module, comprising:
[0005] Get CAN speed and pulse speed in real time;
[0006] When the preset positioning accuracy conditions are met, the ground rate output by the GNSS module is obtained;
[0007] Determine a method for obtaining a fusion vehicle speed corresponding to the vehicle speed value of the ground speed according to the current ground speed, CAN vehicle speed and pulse vehicle speed, and store the correlation between the vehicle speed value of the ground speed and the method for obtaining the fusion vehicle speed in a calibration table;
[0008] Calculate the current fused vehicle speed according to the determined value-taking method;
[0009] When the positioning accuracy condition is not met, obtaining the fused vehicle speed at the last moment when the positioning accuracy condition was met, to obtain the last fused vehicle speed;
[0010] According to the vehicle speed value of the previous fused vehicle speed, a corresponding value obtaining method is obtained in the calibration table;
[0011] Calculate the current fused vehicle speed according to the obtained value taking method;
[0012] The ground speed output by the GNSS module is corrected according to the fused vehicle speed.
[0013] The present invention also provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the above steps are implemented.
[0014] The beneficial effect of the present invention is that: when the positioning accuracy condition is met, the method for obtaining the fused vehicle speed corresponding to each vehicle speed value is determined according to the ground speed, CAN vehicle speed and pulse vehicle speed output by the GNSS module, and the fused vehicle speed is calculated, when the positioning accuracy condition is not met, the current fused vehicle speed can be determined according to the fused vehicle speed calculated when the positioning accuracy condition is met and the correlation between the vehicle speed value and the method for obtaining the value, thereby obtaining a more accurate vehicle speed value. The present invention assists the output of the ground speed value of the GNSS module through the CAN vehicle speed and the pulse vehicle speed, which can effectively reduce the impact of adverse environments and improve the accuracy of the output ground speed value. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Figure 1 A flow chart of a method for improving the output accuracy of a GNSS module according to an embodiment of the present invention;
[0016] Figure 2 This is a flow chart of a method for improving the accuracy of ground velocity output by a GNSS module according to Embodiment 1 of the present invention;
[0017] Figure 3 This is a flow chart of a method for improving the accuracy of altitude output by a GNSS module according to Embodiment 1 of the present invention. DETAILED DESCRIPTION
[0018] In order to explain the technical content, achieved objectives and effects of the present invention in detail, the following is a detailed description in conjunction with the implementation methods and the accompanying drawings.
[0019] The most critical concept of the present invention is that when the positioning accuracy conditions are met, an association relationship between the vehicle speed value of the ground rate and the value-taking method of its corresponding fused vehicle speed is constructed, and the fused vehicle speed is calculated. At the same time, the altitude ratio is calculated based on the altitude value output by the atmospheric pressure sensor and the altitude value output by the GNSS module. When the positioning accuracy conditions are not met, a more accurate vehicle speed and altitude are calculated based on the association relationship and the altitude ratio.
[0020] See also Figure 1 , a method for improving the accuracy of GNSS module output, comprising:
[0021] Get CAN speed and pulse speed in real time;
[0022] When the preset positioning accuracy conditions are met, the ground rate output by the GNSS module is obtained;
[0023] Determine a method for obtaining a fusion vehicle speed corresponding to the vehicle speed value of the ground speed according to the current ground speed, CAN vehicle speed and pulse vehicle speed, and store the correlation between the vehicle speed value of the ground speed and the method for obtaining the fusion vehicle speed in a calibration table;
[0024] Calculate the current fused vehicle speed according to the determined value-taking method;
[0025] When the positioning accuracy condition is not met, obtaining the fused vehicle speed at the last moment when the positioning accuracy condition was met, to obtain the last fused vehicle speed;
[0026] According to the vehicle speed value of the previous fused vehicle speed, a corresponding value obtaining method is obtained in the calibration table;
[0027] Calculate the current fused vehicle speed according to the obtained value taking method;
[0028] The ground speed output by the GNSS module is corrected according to the fused vehicle speed.
[0029] From the above description, it can be seen that the beneficial effect of the present invention is that the accuracy of the vehicle speed output by the GNSS module can be improved.
[0030] Furthermore, before obtaining the CAN vehicle speed and the pulse vehicle speed in real time, the method further includes:
[0031] Obtain vehicle operation status information;
[0032] According to the vehicle running status information, determine whether the vehicle is in a driving state;
[0033] If the vehicle is not moving, the fused speed is set to 0 km / h;
[0034] If the vehicle is in driving state, it is determined whether the GNSS module has output the ground speed;
[0035] If the GNSS module has output the ground speed, the step of acquiring the CAN vehicle speed and the pulse vehicle speed in real time is performed;
[0036] If the GNSS module has not output the ground speed, the CAN vehicle speed and the pulse vehicle speed are obtained, and the fused vehicle speed is determined according to the CAN vehicle speed and the pulse vehicle speed.
[0037] From the above description, it can be seen that when the vehicle is not in a moving state, the fused vehicle speed is set to 0 to avoid abnormal vehicle speed signals caused by interference signals, hardware failures, etc.
[0038] Furthermore, the fusion speed is determined according to the CAN speed and the pulse speed as follows:
[0039] If the CAN speed and the pulse speed are both zero, the fusion speed is set to 0 km / h;
[0040] If the CAN vehicle speed is equal to zero and the pulse vehicle speed is greater than zero, then the fusion vehicle speed is equal to the pulse vehicle speed;
[0041] If the CAN speed is greater than zero and the pulse speed is zero, then the fusion speed is equal to the CAN speed;
[0042] If the CAN speed and the pulse speed are both greater than zero, and the remainder of the CAN speed divided by the pulse speed divided by the smaller value of the CAN speed and the pulse speed is greater than a preset threshold, the fused speed is set equal to -1 km / h;
[0043] Otherwise, let the fusion speed be equal to the average of the CAN speed and the pulse speed.
[0044] It can be seen from the above description that when the GNSS module is not initially positioned, the fused vehicle speed is determined based on the more accurate CAN vehicle speed and pulse vehicle speed.
[0045] Furthermore, if the CAN vehicle speed and the pulse vehicle speed are not detected, the fused vehicle speed is set to -1 km / h.
[0046] From the above description, it can be seen that by making the fused speed a negative value, the driver can be prompted that there may be problems in the collection of the CAN speed and the pulse speed.
[0047] Furthermore, the method for determining the value of the fused vehicle speed corresponding to the vehicle speed value of the ground speed according to the current ground speed, CAN vehicle speed and pulse vehicle speed is specifically as follows:
[0048] If the current CAN vehicle speed and the pulse vehicle speed are both less than the current ground speed, the vehicle speed value of the ground speed corresponds to the first value-taking method, which is to make the fusion vehicle speed equal to the larger value of the current CAN vehicle speed and the pulse vehicle speed;
[0049] If the current CAN vehicle speed and the pulse vehicle speed are both greater than the current ground speed, the vehicle speed value of the ground speed corresponds to the second value-taking method, which is to make the fusion vehicle speed equal to the smaller value of the current CAN vehicle speed and the pulse vehicle speed;
[0050] Otherwise, the vehicle speed value of the ground speed corresponds to the third value-taking method, and the third value-taking method is to make the fusion vehicle speed equal to the average value of the current CAN vehicle speed and the pulse vehicle speed.
[0051] Furthermore, the method for obtaining the corresponding value in the calibration table according to the vehicle speed value of the previous fused vehicle speed is specifically as follows:
[0052] Determine whether there is a value obtaining method corresponding to the vehicle speed value of the previous fused vehicle speed in the calibration table;
[0053] If it does not exist, get the preset value method;
[0054] If it exists and corresponds to only one value-getting method, then get the one value-getting method;
[0055] If there are, and there are more than two corresponding value-taking methods, then the number of each value-taking method is counted to obtain the value-taking method with the largest number, or the value-taking method with the highest priority is obtained according to the preset priorities of each value-taking method.
[0056] From the above description, it can be seen that by calculating the fused vehicle speed through the corresponding value-taking method, a more accurate vehicle speed value can be obtained.
[0057] Furthermore, it also includes:
[0058] Acquire atmospheric pressure information output by an atmospheric pressure sensor, and calculate a first altitude value according to the atmospheric pressure information;
[0059] When the preset positioning accuracy condition is met, the altitude value output by the GNSS module is obtained to obtain a second altitude value;
[0060] Calculate the altitude ratio according to the first altitude value and the second altitude value;
[0061] When the positioning accuracy condition is not met, calculating a third altitude value according to the first altitude value and the altitude ratio;
[0062] The altitude value output by the GNSS module is corrected according to the third altitude value.
[0063] From the above description, it can be seen that when the positioning accuracy condition is not met, the altitude value output by the atmospheric pressure sensor is obtained, and the third altitude value is calculated according to the altitude ratio calculated when the positioning accuracy condition is met. The altitude value output by the GNSS module is corrected by the calculated third altitude value, which can improve the accuracy of the altitude output by the GNSS module.
[0064] Furthermore, the positioning accuracy conditions include that the number of available satellites is greater than or equal to a preset number and the signal-to-noise ratio of each satellite is greater than a preset signal-to-noise ratio, the positioning mode is 3D positioning, and the position precision factor, horizontal precision factor and vertical precision factor are all less than a preset accuracy value.
[0065] The present invention also relates to a computer-readable storage medium on which a computer program is stored, and when the program is executed by a processor, the steps described above are implemented.
[0066] Embodiment 1
[0067] Please refer to Figure 2-3 Embodiment 1 of the present invention is: a method for improving the accuracy of GNSS module output, which can be applied to a vehicle-mounted terminal system. The method is based on a GNSS module without a built-in inertial navigation device, and is mainly used to improve the accuracy of vehicle speed and altitude output by the GNSS module.
[0068] like Figure 2As shown, the method for improving the accuracy of the ground rate output by the GNSS module includes the following steps:
[0069] S101: Acquire vehicle operation status information, where the vehicle operation status information includes at least one of an ACC signal, an IG signal, and an engine speed.
[0070] S102: According to the vehicle running state information, determine whether the vehicle is in a driving state, if so, execute step S104, if not, execute step S103. Specifically, if it is detected that the ACC signal or the IG signal is invalid, or the engine speed is not detected, it is determined that the vehicle is in a non-driving state, otherwise it is determined that the vehicle is in a driving state.
[0071] S103: Set the fused vehicle speed to zero, that is, set V f = 0km / h. Avoid abnormal vehicle speed signals due to interference signals, hardware failure, etc. Execute step S114.
[0072] S104: Determine whether the GNSS module has output the ground rate, that is, determine whether the GNSS module has started positioning. If so, execute step S106; if not, execute step S105.
[0073] S105: Acquire the CAN vehicle speed and the pulse vehicle speed, and determine the fused vehicle speed according to the CAN vehicle speed and the pulse vehicle speed. Execute step S114.
[0074] Specifically, the CAN vehicle speed V is obtained from the bus information collected by the CAN communication module. c ; Collect the vehicle speed pulse (the speed pulse is the physical signal output by the vehicle speed sensor), count the number of speed pulse signals per unit time and convert it into pulse speed V according to the corresponding formula p .
[0075] If the CAN speed and pulse speed are both zero, that is, V c =V p = 0, then let the fusion vehicle speed V f =0km / h;
[0076] If the CAN speed is equal to zero and the pulse speed is greater than zero, that is, V c = 0 and V p > 0, let the fusion speed be equal to the pulse speed, that is, let V f =V p ;
[0077] If the CAN speed is greater than zero and the pulse speed is zero, that is, V c >0 and V p =0, let the fusion speed be equal to the CAN speed, that is, let V f =Vc ;
[0078] If the CAN speed and the pulse speed are both greater than zero, and the quotient of the remainder of the CAN speed divided by the pulse speed divided by the smaller value of the CAN speed and the pulse speed is greater than a preset threshold, preferably, the preset threshold is 5%, that is, V c >0, V p >0, and mod(V c , V p ) / min(V c , V p )>5%, then let the fusion speed V f =-1km / h;
[0079] In other cases, let the fusion speed be equal to the average of the CAN speed and the pulse speed, that is, V f =(V c +V p ) / 2.
[0080] Furthermore, if the CAN speed and pulse speed are not detected, the fusion speed V f =-1km / h.
[0081] S106: Acquire CAN vehicle speed and pulse vehicle speed in real time;
[0082] S107: Determine whether the current moment meets the preset positioning accuracy condition. If so, execute step S108, if not, execute step S111. The positioning accuracy condition includes that the number of available satellites is greater than or equal to the preset number and the signal-to-noise ratio of each satellite is greater than the preset signal-to-noise ratio, the positioning mode is 3D positioning, and the position precision factor PDOP, the horizontal precision factor HDOP, and the vertical precision factor VDOP are all less than the preset accuracy value. Preferably, the preset number of satellites is 4, the preset signal-to-noise ratio is 25, and the preset accuracy value is 10.
[0083] That is, when the positioning mode of the GNSS module is 3D positioning, the number of available satellites is not less than 4 and the signal-to-noise ratio of each available satellite is greater than 25, and the PDOP, HDOP and VDOP are all less than 10, then the positioning accuracy and effect of the GNSS module are considered to be good, otherwise it is considered to be poor.
[0084] S108: Obtain the ground velocity output by the GNSS module, that is, obtain the ground velocity V output by the GNSS module at the current moment g .
[0085] S109: Determine a method for obtaining a fusion speed corresponding to the ground speed value according to the current ground speed, CAN speed and pulse speed, and store the correlation between the ground speed value and the method for obtaining the fusion speed in a calibration table.
[0086] Specifically, if the current CAN speed and pulse speed are both less than the current ground speed, that is, V c <V g And V p <V g , then the vehicle speed value of the ground speed at this time corresponds to the first value-taking method, which is to make the fusion vehicle speed equal to the larger value of the current CAN vehicle speed and the pulse vehicle speed, that is, V f =max(V c , V p );
[0087] If the current CAN speed and pulse speed are both greater than the current ground speed, that is, V c >V g And V p >V g , then the vehicle speed value of the ground speed at this time corresponds to the second value-taking method, which is to make the fusion vehicle speed equal to the smaller value of the current CAN vehicle speed and the pulse vehicle speed, that is, V f =min(V c , V p );
[0088] In other cases, the vehicle speed value of the ground speed at this time corresponds to the third value-taking method, which is to make the fusion vehicle speed equal to the average value of the current CAN vehicle speed and the pulse vehicle speed, that is, V f =(V c +V p ) / 2.
[0089] After determining the value-taking method corresponding to the vehicle speed value of the current ground speed, the association between the vehicle speed value and the value-taking method is stored in the calibration table; the calibration table stores the association between each vehicle speed value and its corresponding fusion vehicle speed value-taking method.
[0090] S110: Calculate the current fused vehicle speed according to the determined value-taking method; after determining the value-taking method of the fused vehicle speed corresponding to the vehicle speed value of the current ground speed in step S108, calculate the current fused vehicle speed V according to the value-taking method f Furthermore, the fused vehicle speed at each moment is saved.
[0091] S111: Obtain the fused vehicle speed at the last moment that meets the positioning accuracy condition to obtain the last fused vehicle speed; that is, when it is detected that the current GNSS module does not meet the positioning accuracy condition, it is considered that the ground speed output by the GNSS module at this time is inaccurate. At this time, obtain the last moment that meets the positioning accuracy condition closest to the current moment, and obtain the fused vehicle speed at the last moment to obtain the last fused vehicle speed.
[0092] S112: According to the vehicle speed value of the previous fused vehicle speed, a corresponding value obtaining method is obtained in the calibration table.
[0093] Specifically, it is first determined whether there is a value-taking method corresponding to the vehicle speed value of the previous fused vehicle speed in the calibration table; if not, a preset value-taking method is obtained, for example, the third value-taking method is directly obtained.
[0094] If it exists and only corresponds to one value-taking method, the one value-taking method is obtained. For example, if the vehicle speed value in the calibration table only corresponds to the first value-taking method, the first value-taking method is obtained.
[0095] If there are and there are more than two value-taking methods, then the number of each value-taking method is counted to obtain the value-taking method with the largest number, or the value-taking method with the highest priority is obtained according to the preset priorities of each value-taking method. For example, assuming that there are 6 associations in the calibration table containing the vehicle speed value, of which 3 associations contain the vehicle speed value corresponding to the first value-taking method, 2 associations contain the vehicle speed value corresponding to the second value-taking method, and 1 association contains the vehicle speed value corresponding to the third value-taking method, then the first value-taking method is obtained. For another example, assuming that there are 2 associations in the calibration table containing the vehicle speed value, corresponding to the second value-taking method and the third value-taking method respectively, then the priority of the second value-taking method and the priority of the third value-taking method are compared, and the value-taking method with the higher priority is selected. Alternatively, the priorities of the three value-taking methods are directly compared, and the value-taking method with the higher priority is selected.
[0096] S113: Calculate the current fused vehicle speed according to the acquired value-taking method; specifically, calculate the current fused vehicle speed according to the acquired value-taking method and the current CAN vehicle speed and pulse vehicle speed.
[0097] S114: Correcting the ground speed output by the GNSS module according to the fused vehicle speed, that is, taking the fused vehicle speed as the output vehicle speed.
[0098] Through the above method, the vehicle speed output by the GNSS module can be corrected when the positioning accuracy is poor, thereby improving the accuracy of the vehicle speed output by the GNSS module.
[0099] like Figure 3 As shown, the method for improving the accuracy of the altitude output by the GNSS module includes the following steps:
[0100] S201: Obtaining atmospheric pressure information output by an atmospheric pressure sensor, and calculating a first altitude value according to the atmospheric pressure information.
[0101] S202: Determine whether the preset positioning accuracy condition is met, if yes, execute step S203, if no, execute step S205. The positioning accuracy condition in this step can refer to step S107.
[0102] S203: Acquire the altitude value output by the GNSS module to obtain a second altitude value.
[0103] S204: Calculate an altitude ratio according to the first altitude value and the second altitude value.
[0104] Specifically, when the GNSS module meets the positioning accuracy condition, the altitude value output by the GNSS module is obtained as the second altitude value, and the first altitude value is calculated according to the atmospheric pressure information output by the atmospheric pressure sensor; further, the obtained first altitude value and the second altitude value are added to the first altitude value set and the second altitude value set respectively; then the average value A of each first altitude value in the first altitude value set is calculated. i , calculate the average value A of each second altitude value in the second altitude value set j , then the altitude ratio w=A i / A j .
[0105] S205: Calculate a third altitude value according to the first altitude value and the altitude ratio; that is, when the GNSS module does not meet the positioning accuracy condition, the altitude value output by the GNSS module is inaccurate, therefore, obtain the atmospheric pressure information output by the atmospheric pressure sensor at this time, and calculate the first altitude value A according to the atmospheric pressure information i1 ; Then according to formula A k =A i1 / w, calculate the third altitude value A k .
[0106] S206: Correcting the altitude value output by the GNSS module according to the third altitude value.
[0107] Through the above method, the altitude value output by the GNSS module can be corrected when the positioning accuracy is poor, thereby improving the accuracy of the altitude output by the GNSS module.
[0108] In this embodiment, when the positioning accuracy condition is not met, the vehicle speed and altitude output by the GNSS module are corrected, thereby improving the accuracy of the output vehicle speed and the output altitude, thereby improving the output accuracy of the GNSS module.
[0109] Embodiment 2
[0110] This embodiment is a mobile vehicle-mounted terminal system corresponding to the first embodiment.
[0111] The mobile vehicle terminal system consists of a control management module, a GNSS module, a six-axis gyroscope module, an atmospheric pressure sensor module, a signal detection module and a CAN communication module.
[0112] The control management module communicates and interacts with the GNSS module, six-axis gyroscope module, atmospheric pressure sensor module, signal detection module, CAN communication module and other functional modules, collects information from each functional module, and inputs data such as direction, speed, acceleration, altitude, etc. to the GNSS module by processing the collected information, to assist the GNSS module in positioning and enhance positioning accuracy; at the same time, the control management module can also design and implement other value-added business functions such as driving behavior, location monitoring, and vehicle control based on the collected data;
[0113] The GNSS module is used to output location information to the control and management module, and receive the direction, speed, acceleration, altitude and other data pre-processed by the control and management module, assist in positioning calculation according to the software algorithm, and feedback the corrected location information;
[0114] The six-axis gyroscope module is used to provide all-round dynamic information and acceleration information to the control management module;
[0115] The atmospheric pressure sensor module is used to output atmospheric pressure information to the control management module so that the control management module can calculate the altitude;
[0116] The signal detection module is used to collect vehicle speed pulses and other vehicle status signals such as ACC;
[0117] The CAN communication module is used to collect bus information such as vehicle speed.
[0118] The GNSS module evaluates the quality of the current position data according to the precision factor (PDOP, VDOP, HDOP) values. When it is detected that the PDOP, VDOP, and HDOP values are greater than a certain value (the larger the value, the worse the accuracy), the GNSS module can use the input speed (i.e., the fused vehicle speed in Example 1) and altitude information (i.e., the third altitude value in Example 1) to correct the speed and altitude, and at the same time use the input azimuth and acceleration information to cooperate with inertial navigation calculations to correct information such as speed, longitude and latitude.
[0119] In this embodiment, the GNSS module assists in positioning calculation by receiving and processing the azimuth, acceleration, speed and altitude information input by the control management module, which can effectively reduce the impact of adverse environments and improve positioning accuracy. In addition, the GNSS module directly uses the vehicle speed input by the control management module, without receiving and processing vehicle speed pulses and calculations, which reduces the CPU operating load and is conducive to the stability of the GNSS module system.
[0120] Embodiment 3
[0121] This embodiment is a computer-readable storage medium corresponding to the above embodiment, on which a computer program is stored. When the program is executed by a processor, the following steps are implemented:
[0122] Get CAN speed and pulse speed in real time;
[0123] When the preset positioning accuracy conditions are met, the ground rate output by the GNSS module is obtained;
[0124] Determine a method for obtaining a fusion vehicle speed corresponding to the vehicle speed value of the ground speed according to the current ground speed, CAN vehicle speed and pulse vehicle speed, and store the correlation between the vehicle speed value of the ground speed and the method for obtaining the fusion vehicle speed in a calibration table;
[0125] Calculate the current fused vehicle speed according to the determined value-taking method;
[0126] When the positioning accuracy condition is not met, obtaining the fused vehicle speed at the last moment when the positioning accuracy condition was met, to obtain the last fused vehicle speed;
[0127] According to the vehicle speed value of the previous fused vehicle speed, a corresponding value obtaining method is obtained in the calibration table;
[0128] Calculate the current fused vehicle speed according to the obtained value taking method;
[0129] The ground speed output by the GNSS module is corrected according to the fused vehicle speed.
[0130] Furthermore, before obtaining the CAN vehicle speed and the pulse vehicle speed in real time, the method further includes:
[0131] Obtain vehicle operation status information;
[0132] According to the vehicle running status information, determine whether the vehicle is in a driving state;
[0133] If the vehicle is not moving, the fused speed is set to 0 km / h;
[0134] If the vehicle is in driving state, it is determined whether the GNSS module has output the ground speed;
[0135] If the GNSS module has output the ground speed, the step of acquiring the CAN vehicle speed and the pulse vehicle speed in real time is performed;
[0136] If the GNSS module has not output the ground speed, the CAN vehicle speed and the pulse vehicle speed are obtained, and the fused vehicle speed is determined according to the CAN vehicle speed and the pulse vehicle speed.
[0137] Furthermore, the fusion speed is determined according to the CAN speed and the pulse speed as follows:
[0138] If the CAN speed and the pulse speed are both zero, the fusion speed is set to 0 km / h;
[0139] If the CAN vehicle speed is equal to zero and the pulse vehicle speed is greater than zero, then the fusion vehicle speed is equal to the pulse vehicle speed;
[0140] If the CAN speed is greater than zero and the pulse speed is zero, then the fusion speed is equal to the CAN speed;
[0141] If the CAN speed and the pulse speed are both greater than zero, and the remainder of the CAN speed divided by the pulse speed divided by the smaller value of the CAN speed and the pulse speed is greater than a preset threshold, the fused speed is set equal to -1 km / h;
[0142] Otherwise, let the fusion speed be equal to the average of the CAN speed and the pulse speed.
[0143] Furthermore, it also includes:
[0144] If the CAN speed and pulse speed are not detected, the fusion speed is set to -1km / h.
[0145] Furthermore, the method for determining the value of the fused vehicle speed corresponding to the vehicle speed value of the ground speed according to the current ground speed, CAN vehicle speed and pulse vehicle speed is specifically as follows:
[0146] If the current CAN vehicle speed and the pulse vehicle speed are both less than the current ground speed, the vehicle speed value of the ground speed corresponds to the first value-taking method, which is to make the fusion vehicle speed equal to the larger value of the current CAN vehicle speed and the pulse vehicle speed;
[0147] If the current CAN vehicle speed and the pulse vehicle speed are both greater than the current ground speed, the vehicle speed value of the ground speed corresponds to the second value-taking method, which is to make the fusion vehicle speed equal to the smaller value of the current CAN vehicle speed and the pulse vehicle speed;
[0148] Otherwise, the vehicle speed value of the ground speed corresponds to the third value-taking method, and the third value-taking method is to make the fusion vehicle speed equal to the average value of the current CAN vehicle speed and the pulse vehicle speed.
[0149] Furthermore, the method for obtaining the corresponding value in the calibration table according to the vehicle speed value of the previous fused vehicle speed is specifically as follows:
[0150] Determine whether there is a value obtaining method corresponding to the vehicle speed value of the previous fused vehicle speed in the calibration table;
[0151] If it does not exist, get the preset value method;
[0152] If it exists and corresponds to only one value-getting method, then get the one value-getting method;
[0153] If there are, and there are more than two corresponding value-taking methods, then the number of each value-taking method is counted to obtain the value-taking method with the largest number, or the value-taking method with the highest priority is obtained according to the preset priorities of each value-taking method.
[0154] Furthermore, it also includes:
[0155] Acquire atmospheric pressure information output by an atmospheric pressure sensor, and calculate a first altitude value according to the atmospheric pressure information;
[0156] When the preset positioning accuracy condition is met, the altitude value output by the GNSS module is obtained to obtain a second altitude value;
[0157] Calculate the altitude ratio according to the first altitude value and the second altitude value;
[0158] When the positioning accuracy condition is not met, calculating a third altitude value according to the first altitude value and the altitude ratio;
[0159] The altitude value output by the GNSS module is corrected according to the third altitude value.
[0160] Furthermore, the positioning accuracy conditions include that the number of available satellites is greater than or equal to a preset number and the signal-to-noise ratio of each satellite is greater than a preset signal-to-noise ratio, the positioning mode is 3D positioning, and the position precision factor, horizontal precision factor and vertical precision factor are all less than a preset accuracy value.
[0161] In summary, the present invention provides a method and storage medium for improving the output accuracy of a GNSS module. When the positioning accuracy condition is met, an association relationship between the vehicle speed value of the ground rate and the value-taking method of its corresponding fused vehicle speed is constructed, and the fused vehicle speed is calculated. At the same time, the altitude ratio is calculated according to the altitude value output by the atmospheric pressure sensor and the altitude value output by the GNSS module. When the positioning accuracy condition is not met, the new vehicle speed and altitude are calculated according to the association relationship and the altitude ratio, and the vehicle speed and altitude output by the GNSS module are corrected, thereby improving the accuracy of the output vehicle speed and the output altitude, thereby improving the output accuracy of the GNSS module.
[0162] The above descriptions are merely embodiments of the present invention and are not intended to limit the patent scope of the present invention. Any equivalent transformations made using the contents of the present invention's specification and drawings, or directly or indirectly applied in related technical fields, are also included in the patent protection scope of the present invention.
Claims
1. A method for improving the output accuracy of a GNSS module, characterized in that: include: Get CAN speed and pulse speed in real time; When the preset positioning accuracy conditions are met, the ground rate output by the GNSS module is obtained; Determine a method for obtaining a fusion vehicle speed corresponding to the vehicle speed value of the ground speed according to the current ground speed, CAN vehicle speed and pulse vehicle speed, and store the correlation between the vehicle speed value of the ground speed and the method for obtaining the fusion vehicle speed in a calibration table; Calculate the current fused vehicle speed according to the determined value-taking method; When the positioning accuracy condition is not met, obtaining the fused vehicle speed at the last moment when the positioning accuracy condition was met, to obtain the last fused vehicle speed; According to the vehicle speed value of the previous fused vehicle speed, a corresponding value obtaining method is obtained in the calibration table; Calculate the current fused vehicle speed according to the obtained value taking method; The ground speed output by the GNSS module is corrected according to the fused vehicle speed.
2. The method for improving the output accuracy of a GNSS module according to claim 1, characterized in that: Before obtaining the CAN vehicle speed and the pulse vehicle speed in real time, the method further comprises: Obtain vehicle operation status information; According to the vehicle running status information, determine whether the vehicle is in a driving state; If the vehicle is not moving, the fused speed is set to 0 km / h; If the vehicle is in driving state, it is determined whether the GNSS module has output the ground speed; If the GNSS module has output the ground speed, the step of acquiring the CAN vehicle speed and the pulse vehicle speed in real time is performed; If the GNSS module has not output the ground speed, the CAN vehicle speed and the pulse vehicle speed are obtained, and the fused vehicle speed is determined according to the CAN vehicle speed and the pulse vehicle speed.
3. The method for improving the output accuracy of a GNSS module according to claim 2, characterized in that: The fusion speed is determined according to the CAN speed and the pulse speed as follows: If the CAN speed and the pulse speed are both zero, the fusion speed is set to 0 km / h; If the CAN vehicle speed is equal to zero and the pulse vehicle speed is greater than zero, then the fusion vehicle speed is equal to the pulse vehicle speed; If the CAN speed is greater than zero and the pulse speed is zero, then the fusion speed is equal to the CAN speed; If the CAN speed and the pulse speed are both greater than zero, and the remainder of the CAN speed divided by the pulse speed divided by the smaller value of the CAN speed and the pulse speed is greater than a preset threshold, the fused speed is set equal to -1 km / h; Otherwise, let the fusion speed be equal to the average of the CAN speed and the pulse speed.
4. The method for improving the output accuracy of a GNSS module according to claim 3, characterized in that: Also includes: If the CAN speed and pulse speed are not detected, the fusion speed is set to -1km / h.
5. The method for improving the output accuracy of a GNSS module according to claim 1, characterized in that: The method for determining the value of the fused vehicle speed corresponding to the vehicle speed value of the ground speed according to the current ground speed, CAN vehicle speed and pulse vehicle speed is specifically as follows: If the current CAN vehicle speed and the pulse vehicle speed are both less than the current ground speed, the vehicle speed value of the ground speed corresponds to the first value-taking method, which is to make the fusion vehicle speed equal to the larger value of the current CAN vehicle speed and the pulse vehicle speed; If the current CAN vehicle speed and the pulse vehicle speed are both greater than the current ground speed, the vehicle speed value of the ground speed corresponds to the second value-taking method, which is to make the fusion vehicle speed equal to the smaller value of the current CAN vehicle speed and the pulse vehicle speed; Otherwise, the vehicle speed value of the ground speed corresponds to the third value-taking method, and the third value-taking method is to make the fusion vehicle speed equal to the average value of the current CAN vehicle speed and the pulse vehicle speed.
6. The method for improving the output accuracy of a GNSS module according to claim 1, characterized in that: The method for obtaining the corresponding value in the calibration table according to the vehicle speed value of the previous fused vehicle speed is specifically as follows: Determine whether there is a value obtaining method corresponding to the vehicle speed value of the previous fused vehicle speed in the calibration table; If it does not exist, get the preset value method; If it exists and corresponds to only one value-getting method, then get the one value-getting method; If there are, and there are more than two corresponding value-taking methods, then the number of each value-taking method is counted to obtain the value-taking method with the largest number, or the value-taking method with the highest priority is obtained according to the preset priorities of each value-taking method.
7. The method for improving the output accuracy of a GNSS module according to claim 1, characterized in that: Also includes: Acquire atmospheric pressure information output by an atmospheric pressure sensor, and calculate a first altitude value according to the atmospheric pressure information; When the preset positioning accuracy condition is met, the altitude value output by the GNSS module is obtained to obtain a second altitude value; Calculate the altitude ratio according to the first altitude value and the second altitude value; When the positioning accuracy condition is not met, calculating a third altitude value according to the first altitude value and the altitude ratio; The altitude value output by the GNSS module is corrected according to the third altitude value.
8. The method for improving the output accuracy of a GNSS module according to claim 1 or 7, characterized in that: The positioning accuracy conditions include that the number of available satellites is greater than or equal to a preset number and the signal-to-noise ratio of each satellite is greater than a preset signal-to-noise ratio, the positioning mode is 3D positioning, and the position precision factor, horizontal precision factor, and vertical precision factor are all less than a preset accuracy value.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.
Citation Information
Patent Citations
Onboard navigation system and method capable of realizing vehicle speed signal self-learning
CN101556160A
Method and device for determining vehicle pulse coefficient based on GNSS satellite positioning data
CN103994776A