Abnormity processing method and device for satellite positioning data

By using the satellite positioning data of the GNSS module in the automatic lawn mower to perform track calculation and abnormal determination, it solves the instability and error problems of GNSS positioning data under interference such as being blocked for a short period of time, and achieves high-precision positioning and reduction. Frequency of downtime.

CN119355770APending Publication Date: 2025-01-24CHONGQING RUNTONG TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411530160.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-30
Publication Date
2025-01-24

AI Technical Summary

Technical Problem

When using GNSS positioning technology, due to the short-term obstruction of the GNSS antenna, the ionosphere, the troposphere electromagnetic interference, and the interference of the multipath effect, the positioning data has problems such as short-term instability, large errors or jumps.

Method used

After the automatic cutting machine is activated, the satellite positioning data based on the GNSS module at the target time point is calculated to the automatic straw machine, and the estimated positioning data at all time points in the estimated trail is obtained. Then, the data update status and positioning status based on the GNSS module combined with the line speed of the automatic grass cutting machine to determine whether the satellite positioning data is abnormal. If an abnormalities occur, use the estimated positioning data as the target positioning data.

Benefits of technology

Effectively solve the problem of unstable and large errors caused by interference such as GNSS antennas in a short period of time. It realizes high -precision positioning and reduces the frequency of shutdown caused by the abnormality caused by the abnormal satellite positioning data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119355770A_ABST
    Figure CN119355770A_ABST
Patent Text Reader

Abstract

The invention discloses a satellite positioning data exception handling method and device, and the method comprises the steps: carrying out the dead reckoning of an automatic mowing machine based on the satellite positioning data of a GNSS module at a target time point after the automatic mowing machine is started, so as to obtain the estimated positioning data corresponding to each time point in an estimated flight path; for each time point in the estimated track, judging whether the satellite positioning data of the GNSS module at the time point is abnormal or not based on the data updating condition and the positioning state of the GNSS module at the time point in combination with the linear speed of the automatic mower at the time point; and if the satellite positioning data at the time point is abnormal, determining as target positioning data based on the estimated positioning data corresponding to the time point, otherwise, determining as the target positioning data based on the satellite positioning data at the time point. According to the method, the problems of short-time instability, large error or jumping of satellite positioning data can be effectively solved, and high-precision positioning of the automatic mower is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of satellite positioning data processing, and in particular to a method and device for abnormal processing of satellite positioning data. Background Art

[0002] GNSS (Global Navigation Satellite System) has the advantages of continuous, real-time, all-weather, independent and high-precision detection. With the increasing maturity of the global satellite navigation system, it is widely used in the fields of intelligent transportation, smart cities, navigation and positioning, national defense construction and intelligent equipment. In the field of navigation and positioning, centimeter-level high-precision RTK (Real Time Kinematic) technology is widely used in all walks of life. However, in the process of using GNSS positioning, due to the short-term obstruction of the GNSS antenna, electromagnetic interference in the ionosphere and troposphere, and interference from multipath effects, the positioning data may be unstable for a short time, with large errors or jumps.

[0003] The use of GNSS positioning technology in the automatic lawn mower makes it possible to use low-speed automated gardening equipment to mow the lawn without human intervention. In the prior art, the combined navigation method of GNSS and IMU (Inertial Measurement Unit) can solve the above-mentioned interference problem that occurs within a certain period of time. However, since the lawn mower keeps the blade turned on for a long time, the performance of the IMU is reduced in a high-frequency vibration environment, thereby reducing the positioning accuracy of the combined navigation output of GNSS and IMU. Summary of the invention

[0004] The present application provides a method and device for handling satellite positioning data anomalies, the purpose of which is to solve the problem of short-term instability, large errors or jumps in satellite positioning data caused by short-term obstruction of the GNSS antenna, electromagnetic interference in the ionosphere and troposphere, and interference from multipath effects, so as to achieve high-precision positioning.

[0005] In order to achieve the above objectives, this application provides the following technical solutions:

[0006] A method for handling satellite positioning data exceptions, comprising:

[0007] After the automatic lawn mower is started, based on the satellite positioning data of the GNSS module at a target time point, the automatic lawn mower is subjected to dead reckoning to obtain estimated positioning data corresponding to each time point in the estimated track; the target time point includes the time when the positioning state of the GNSS module is in a first state;

[0008] For each time point in the estimated track, based on the data update status and positioning status of the GNSS module at the time point, combined with the linear speed of the automatic lawn mower at the time point, determining whether the satellite positioning data of the GNSS module at the time point is abnormal;

[0009] If the satellite positioning data at the time point is abnormal, the estimated positioning data corresponding to the time point is determined as target positioning data; the target positioning data is used to calculate the position and posture of the automatic lawn mower at the time point;

[0010] If there is no abnormality in the satellite positioning data at the time point, the target positioning data is determined based on the satellite positioning data at the time point.

[0011] Optionally, before performing dead reckoning on the automatic lawn mower based on the satellite positioning data of the GNSS module at the target time point to obtain estimated positioning data corresponding to each time point in the estimated track, the method further includes:

[0012] Preliminarily establishing a target coordinate system based on the base station position coordinates; the base station position coordinates belong to the satellite positioning data; the satellite positioning data also includes the antenna position coordinates;

[0013] Based on the target coordinate system, the antenna position coordinates are transformed to obtain satellite positioning data that meets preset requirements.

[0014] Optionally, based on the satellite positioning data of the GNSS module at the target time point, dead reckoning is performed on the automatic lawn mower to obtain estimated positioning data corresponding to each time point in the estimated track, including:

[0015] Obtaining satellite positioning data of the GNSS module at a target time point; the satellite positioning data includes antenna position coordinates and heading angle;

[0016] Determining an initial position and posture of the automatic lawn mower based on the antenna position coordinates and the heading angle at the target time point;

[0017] Obtaining the wheel speed of the automatic lawn mower;

[0018] Based on the wheel speed and the initial posture, dead reckoning is performed on the automatic lawn mower to obtain estimated positioning data corresponding to each time point in the estimated track.

[0019] Optionally, based on the data update status and positioning status of the GNSS module at the time point, combined with the linear speed of the automatic lawn mower at the time point, determining whether the satellite positioning data of the GNSS module at the time point is abnormal includes:

[0020] When the data update status of the GNSS module at the time point is update, and the positioning state of the GNSS module at the time point is the first state, a first distance deviation is determined based on the first position and the second position; the first position is determined based on the satellite positioning data at the time point; and the second position is determined based on the estimated positioning data corresponding to the time point;

[0021] Determining a second distance deviation based on a third position and the first position; the third position is determined based on satellite positioning data at a previous time point;

[0022] Determining a corresponding distance threshold based on the linear speed of the automatic lawn mower at the time point;

[0023] When both the first distance deviation and the second distance deviation are smaller than the distance threshold, determining that no abnormality occurs in the satellite positioning data of the GNSS module at the time point;

[0024] When the first distance deviation and / or the second distance deviation is not less than the distance threshold, it is determined that an abnormality occurs in the satellite positioning data of the GNSS module at the time point.

[0025] Optionally, the method further includes:

[0026] When the data update status of the GNSS module at the time point is not updated, obtaining a first time; the first time represents the duration of the data update status being not updated;

[0027] If the first time is less than a preset time threshold, determining that the satellite positioning data of the GNSS module at the time point is abnormal, and determining the estimated positioning data corresponding to the time point as the target positioning data;

[0028] If the first time is not less than the preset time threshold, it is determined that the satellite positioning data of the GNSS module at the time point is abnormal and the target positioning data is unavailable.

[0029] Optionally, the method further includes:

[0030] When the data update status of the GNSS module at the time point is not updated, and the positioning state of the GNSS module at the time point is the second state, obtaining a second time; the second time represents the duration of the positioning state in the second state;

[0031] If the second time is less than a preset time threshold, determining that the satellite positioning data of the GNSS module at the time point is abnormal, and determining the estimated positioning data corresponding to the time point as the target positioning data;

[0032] If the second time is not less than the preset time threshold, it is determined that the satellite positioning data of the GNSS module at the time point is abnormal and the target positioning data is unavailable.

[0033] Optionally, after determining that the satellite positioning data of the GNSS module at the time point is abnormal, the method further includes:

[0034] Obtaining a third time; the third time represents the duration of the abnormality of the satellite positioning data;

[0035] If the third time is less than the preset time threshold, it is determined that the satellite positioning data of the GNSS module at the time point is abnormal, and based on the estimated positioning data corresponding to the time point, it is determined as the target positioning data;

[0036] If the third time is not less than the preset time threshold, it is determined that the satellite positioning data of the GNSS module at the time point is abnormal and the target positioning data is not available.

[0037] Optionally, after determining that the satellite positioning data of the GNSS module at the time point is not abnormal, the method further includes:

[0038] The satellite positioning data at the time point is used to replace the estimated positioning data corresponding to the time point, so as to recalculate the estimated positioning data corresponding to the next time point.

[0039] A satellite positioning data exception processing device, comprising:

[0040] a positioning estimation unit, configured to perform dead reckoning on the automatic lawn mower based on the satellite positioning data of the GNSS module at a target time point after the automatic lawn mower is started, so as to obtain estimated positioning data corresponding to each time point in the estimated track; the target time point includes the time when the positioning state of the GNSS module is in the first state;

[0041] an abnormality determination unit, configured to determine, for each time point in the estimated track, whether an abnormality occurs in the satellite positioning data of the GNSS module at the time point based on the data update status and positioning status of the GNSS module at the time point and the linear speed of the automatic lawn mower at the time point;

[0042] A first determination unit is used to determine, if an abnormality occurs in the satellite positioning data at the time point, the estimated positioning data corresponding to the time point as target positioning data; the target positioning data is used to calculate the position and posture of the automatic lawn mower at the time point;

[0043] The second determining unit is configured to determine the target positioning data based on the satellite positioning data at the time point if no abnormality occurs to the satellite positioning data at the time point.

[0044] An automatic lawn mower comprises: a processor, a memory and a bus; the processor and the memory are connected via the bus;

[0045] The memory is used to store programs, and the processor is used to run programs, wherein the program executes any of the satellite positioning data exception processing methods when the program is run by the processor.

[0046] The technical solution provided by the present application is to perform track extrapolation on the automatic lawn mower based on the satellite positioning data of the GNSS module at the target time point after the automatic lawn mower is started, so as to obtain the estimated positioning data corresponding to each time point in the estimated track. For each time point in the estimated track, based on the data update status and positioning status of the GNSS module at the time point, combined with the linear speed of the automatic lawn mower at the time point, determine whether the satellite positioning data of the GNSS module at the time point is abnormal. If the satellite positioning data at the time point is abnormal, it is determined as the target positioning data based on the estimated positioning data corresponding to the time point. If the satellite positioning data at the time point is not abnormal, it is determined as the target positioning data based on the satellite positioning data at the time point. The present application determines whether the satellite positioning data of the GNSS module at a point in time is abnormal based on the data update status and positioning status of the GNSS module at that point in time, so as to realize abnormal identification of the satellite positioning data, and selects the corresponding data as the basis for calculating the posture of the automatic lawn mower according to the abnormal identification result, thereby effectively solving the problem of short-term instability, large error or jump of satellite positioning data caused by the GNSS antenna being blocked for a short time, electromagnetic interference in the ionosphere and troposphere, and interference from multipath effects, and realizing high-precision positioning. BRIEF DESCRIPTION OF THE DRAWINGS

[0047] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0048] Figure 1A schematic diagram of a flow chart of a method for handling satellite positioning data exceptions provided in an embodiment of the present application;

[0049] Figure 2 A schematic diagram of a flow chart of another method for handling satellite positioning data exceptions provided in an embodiment of the present application;

[0050] Figure 3 A schematic diagram of a flow chart of another method for handling satellite positioning data exceptions provided in an embodiment of the present application;

[0051] Figure 4 A schematic diagram of a flow chart of another method for handling satellite positioning data exceptions provided in an embodiment of the present application;

[0052] Figure 5 A schematic diagram of a flow chart of another method for handling satellite positioning data exceptions provided in an embodiment of the present application;

[0053] Figure 6 A schematic diagram of a flow chart of another method for handling satellite positioning data exceptions provided in an embodiment of the present application;

[0054] Figure 7 A schematic diagram of a flow chart of another method for handling satellite positioning data exceptions provided in an embodiment of the present application;

[0055] Figure 8 A schematic diagram of the architecture of a satellite positioning data exception processing device provided in an embodiment of the present application;

[0056] Fig. 9 An architectural diagram of an automatic lawn mower provided in an embodiment of the present application;

[0057] Fig.10 A flowchart of a method for identifying data anomalies provided in an embodiment of the present application. DETAILED DESCRIPTION

[0058] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0059] In this application, relational terms such as first and second, etc. are used only 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. The terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of more restrictions, the elements defined by the sentence "comprise one..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.

[0060] like Figure 1 As shown, it is a flow chart of a method for handling satellite positioning data exceptions provided in an embodiment of the present application, which includes the following steps.

[0061] S101: After the automatic lawn mower is started, based on the satellite positioning data of the GNSS module at the target time point, the automatic lawn mower is subjected to track dead reckoning to obtain estimated positioning data corresponding to each time point in the estimated track.

[0062] The target time point includes the time when the positioning state of the GNSS module is in the first state.

[0063] In some examples, the structure of the automatic lawn mower is as follows Fig. 9 As shown in the figure, the installation position of the GNSS antenna is not the positioning point of the automatic lawn mower, and the satellite positioning data of the GNSS module adopts the longitude and latitude coordinate system. Therefore, the satellite positioning data of the GNSS module needs to be processed so that the satellite positioning data meets the position calculation conditions of the automatic lawn mower.

[0064] Optionally, before performing dead reckoning on the automatic lawn mower based on the satellite positioning data of the GNSS module at the target time point to obtain the estimated positioning data corresponding to each time point in the estimated track, the implementation process of processing the satellite positioning data can be referred to. Figure 2 Steps shown and explanations of the steps.

[0065] In some examples, the value types of the positioning status of the GNSS module include 0, 1, 2, and 3. Specifically, 0 represents unavailable positioning, 1 represents single-point positioning, 2 represents RTK floating-point solution, and 3 represents RTK fixed solution. Generally speaking, unavailable positioning can be regarded as the positioning function of the GNSS module being unavailable, single-point positioning can be regarded as the GNSS module not receiving CORS (Cross-origin Resource Sharing) service, RTK floating-point solution can be regarded as the GNSS module receiving satellite signals but not being able to fix, and RTK fixed solution can be regarded as the GNSS module being correctly positioned.

[0066] In a possible implementation, the first state includes an RTK fixed solution, and the second state includes any one of positioning unavailable, single-point positioning, and an RTK floating-point solution.

[0067] It is understandable that when the positioning state of the GNSS module is in the first state, the satellite positioning data of the GNSS module is reliable. Therefore, based on the satellite positioning data at the target time point, the track of the automatic lawn mower is calculated to ensure a reliable estimated track.

[0068] It should be noted that the estimated track obtained by dead reckoning of the automatic lawn mower is used to reflect the estimated position of the automatic lawn mower at each future time point, so as to help the automatic lawn mower calculate the posture at each future time point in real time. The estimated position is usually determined based on the corresponding estimated positioning data. Generally speaking, the estimated positioning data includes the position coordinates and heading angle in the target coordinate system.

[0069] Optionally, based on the satellite positioning data of the GNSS module at the target time point, the automatic lawn mower is subjected to dead reckoning to obtain the estimated positioning data corresponding to each time point in the estimated track. Figure 3 Steps shown and explanations of the steps.

[0070] S102: For each time point in the estimated track, based on the data update status and positioning status of the GNSS module at the time point, combined with the linear speed of the automatic lawn mower at the time point, determine whether the satellite positioning data of the GNSS module at the time point is abnormal.

[0071] If the satellite positioning data of the GNSS module at the time point is abnormal, S103 is executed; if the satellite positioning data of the GNSS module at the time point is not abnormal, S104 is executed.

[0072] Optionally, based on the data update status and positioning status of the GNSS module at the time point, combined with the linear speed of the automatic lawn mower at the time point, the implementation process of determining whether the satellite positioning data of the GNSS module at the time point is abnormal can be seen in Figure 4 , Figure 5 , Figure 6 as well as Figure 7 Steps shown and explanations of the steps.

[0073] In some examples, combined Figure 4 , Figure 5 , Figure 6 as well as Figure 7 The method shown in the figure can be summarized as follows: Fig.10 shown.

[0074] S103: Determine the estimated positioning data corresponding to the time point as target positioning data.

[0075] The target positioning data is used to calculate the position and posture of the automatic lawn mower at a time point. Generally speaking, the implementation process of calculating the position and posture of the automatic lawn mower using the target positioning data is common knowledge familiar to those skilled in the art and will not be repeated here.

[0076] S104: Determine the satellite positioning data at the time point as target positioning data.

[0077] When it is determined that there is no abnormality in the satellite positioning data at a certain time point, the satellite positioning data can be deemed reliable, and therefore the satellite positioning data based on the time point is determined as the target positioning data.

[0078] Compared with the prior art, the embodiments of the present application have the following beneficial effects: First, it can solve the problem of short-term instability, large errors or jumps in satellite positioning data caused by short-term obstruction of the GNSS antenna, electromagnetic interference in the ionosphere and troposphere, and interference from multipath effects, thereby achieving high-precision positioning; Second, it can reduce the frequency of shutdown of the automatic lawn mower due to abnormal satellite positioning data, thereby improving work efficiency; Third, it can be easy to implement without increasing the cost of the automatic lawn mower.

[0079] The process shown in S101-S104 above determines whether the satellite positioning data of the GNSS module at a point in time is abnormal based on the data update status and positioning status of the GNSS module at that point in time, so as to realize abnormal identification of the satellite positioning data, and selects the corresponding data as the basis for calculating the posture of the automatic lawn mower according to the abnormal identification result, thereby effectively solving the problem of short-term instability, large error or jump of satellite positioning data caused by short-term obstruction of the GNSS antenna, electromagnetic interference of the ionosphere and troposphere, and interference of multipath effects, and realizing high-precision positioning.

[0080] like Figure 2As shown, it is a flow chart of another method for handling satellite positioning data exceptions provided in an embodiment of the present application, including the following steps.

[0081] S201: Establish a target coordinate system in advance based on the base station position coordinates.

[0082] Among them, the base station location coordinates belong to satellite positioning data, and the satellite positioning data also includes antenna location coordinates and heading angle.

[0083] For some examples, see Fig. 9 In the automatic lawn mower shown, the GNSS antenna includes a first antenna and a second antenna, and the antenna position coordinates include the respective position coordinates of the first antenna and the second antenna.

[0084] It should be noted that the target coordinate system is a two-dimensional geodetic coordinate system with the base station position coordinates as the origin. The geodetic coordinate system can be understood as: a northeast celestial coordinate system with the base station as the origin, the east coordinate X is the east position in the geographic coordinate system with the base station as the origin, and the north coordinate Y is the north position in the geographic coordinate system with the base station as the origin.

[0085] In a possible implementation manner, the base station position coordinates obtained from the satellite positioning data are the longitude and latitude coordinates (L) in a longitude and latitude coordinate system (eg, WGS84 coordinate system). 0 , B 0 ), the longitude and latitude coordinates (L 0 , B 0 ) is projected by Gauss Kruger to transform the base station position coordinates (x 0 ,y 0 ).

[0086] S202: Based on the target coordinate system, the antenna position coordinates are transformed to obtain satellite positioning data that meets preset requirements.

[0087] Among them, the antenna position coordinates can be subjected to Gauss Krüger projection so that the antenna position coordinates are converted into the target coordinate system, and then the antenna position coordinates in the target coordinate system are subtracted from the base station position coordinates to obtain satellite positioning data that meets the preset requirements. The preset requirements can be understood as: the antenna position coordinates are the coordinates in the target coordinate system with the base station position coordinates as the origin.

[0088] In some examples, the antenna position coordinates P in the target coordinate system with the base station position coordinates as the origin are gps_i The expression of can be seen in formula (1).

[0089]

[0090] In formula (1), (x i ,yi ) is the antenna position coordinate in the longitude and latitude coordinate system at the i-th moment (L i , B i ) is the coordinate obtained by Gauss-Kruger projection, (x gps_i ,y gps_i ) is the antenna position coordinate in the target coordinate system at the i-th moment.

[0091] It should be noted that due to the position of the GNSS antenna and the automatic lawn mower (i.e. Fig. 9 oc position shown) do not overlap, so the preset requirements also include: the antenna position coordinates P gps_i coincides with the position of the automatic lawn mower. To this end, the antenna position coordinates P gps_i Compensation is performed so that the compensated antenna position coordinates can reflect the position coordinates of the automatic lawn mower.

[0092] In some examples, the compensated antenna position coordinates may be as shown in formula (2).

[0093]

[0094] In formula (2), H represents the distance from the center of the GNSS antenna to the center of the rear wheel track of the automatic lawn mower, yaw gps_i Represents the heading angle at the i-th moment.

[0095] The process shown in S201-S202 above can utilize the target coordinate system and the antenna position of the GNSS to process the antenna position coordinates to obtain satellite positioning data that meets the preset requirements, thereby providing a reliable basis for calculating the position and posture of the automatic lawn mower.

[0096] like Figure 3 As shown, it is a flow chart of another method for handling satellite positioning data exceptions provided in an embodiment of the present application, including the following steps.

[0097] S301: Obtain satellite positioning data of the GNSS module at a target time point.

[0098] The satellite positioning data includes antenna position coordinates and heading angle.

[0099] S302: Determine the initial position and posture of the automatic lawn mower based on the antenna position coordinates and heading angle at the target time point.

[0100] Among them, for the first frame in the dead reckoning process, the heading angle yaw at the target time point can be used gps_0 And the antenna position coordinates P gps_0 , as the initial pose in the estimated trajectory (initial estimated heading angle θ 0 , initial estimated positioning coordinates Ptrack_0 ) so that the estimated positioning coordinates used for track calculation are under the target coordinates.

[0101] In some examples, the heading angle yaw at the target time point is used. gps_0 And the antenna position coordinates P gps_0 , as the initial pose in the estimated trajectory (θ track_0 , P track_0 ) process can be seen in formula (3).

[0102]

[0103] S303: Obtain the wheel speed of the automatic lawn mower.

[0104] Among them, the automatic lawn mower adopts rear-wheel drive. Therefore, the wheel speed of the automatic lawn mower includes the left rear wheel speed v l and right rear wheel speed v r , the left rear wheel speed and the right rear wheel speed can be directly read from the controller of the automatic lawn mower.

[0105] S304: Based on the wheel speed and the initial posture, dead reckoning is performed on the automatic lawn mower to obtain estimated positioning data corresponding to each time point in the estimated track.

[0106] For the non-first frame (i.e., the i-th frame) in the dead reckoning process, the dead reckoning process can be shown in formula (4).

[0107]

[0108] In formula (4), △t track represents the time interval between adjacent frames of dead reckoning, v l represents the left rear wheel speed, v r represents the right rear wheel speed, B represents the wheel track length between the left and right rear wheels, θ track_i-1 Represents the estimated heading angle obtained by track extrapolation at the previous time point, (x track_i-1 ,y track_i-1 ) represents the estimated positioning coordinates obtained by track dead reckoning at the previous time point, θ track_i Represents the estimated heading angle calculated from the track at the current time point, (x track_i ,y track_i ) represents the estimated positioning coordinates obtained by track extrapolation at the current time point.

[0109] The process shown in S301-S304 above can utilize the satellite positioning data at the target time point in combination with the wheel speed of the automatic lawn mower to realize the track dead reckoning of the automatic lawn mower, so as to obtain the estimated positioning data corresponding to each time point in the estimated track.

[0110] like Figure 4 As shown, it is a flow chart of another method for handling satellite positioning data exceptions provided in an embodiment of the present application, including the following steps.

[0111] S401: When the data update status of the GNSS module at a time point is updating and the positioning state of the GNSS module at a time point is a first state, determining a first distance deviation based on a first position and a second position.

[0112] The first position is determined based on the satellite positioning data at the time point, and the second position is determined based on the estimated positioning data corresponding to the time point. The data update status of the GNSS module is used to indicate whether the GNSS module generates new satellite positioning data. If the data update status is updated, it means that the GNSS module generates new satellite positioning data. If the data update status is not updated, it means that the GNSS module does not generate new satellite positioning data.

[0113] In some examples, the implementation process of determining the first distance deviation based on the first position and the second position can be shown in formula (5).

[0114] d1=sqrt((x gps_i -x track_i ) 2 +(y gps_i -y track_i ) 2 )(5)

[0115] In formula (5), d1 represents the first distance deviation, sqrt represents the square root function, (x gps_i ,y gps_i ) represents the first position (i.e., the antenna position coordinates shown in the satellite positioning data), (x track_i ,y track_i ) represents the second position (ie, the estimated positioning coordinates shown in the estimated positioning data).

[0116] S402: Determine a second distance deviation based on the third position and the first position.

[0117] The third position is determined based on satellite positioning data at a previous time point.

[0118] In some examples, the implementation process of determining the second distance deviation based on the third position and the first position can be shown in formula (6).

[0119] d2=sqrt((x gps_i -x gps_i-1 ) 2 +(y gps_i -y gps_i-1 ) 2)(6)

[0120] In formula (6), d1 represents the second distance deviation, sqrt represents the square root function, (x gps_i ,y gps_i ) represents the first position, (x gps_i-1 ,y gps_i-1 ) represents the second position (ie, the antenna position coordinates shown in the satellite positioning data at the previous time point).

[0121] S403: Determine a corresponding distance threshold based on the linear speed of the automatic lawn mower at a time point.

[0122] The linear speed of the automatic lawn mower at a time point can be calculated based on the wheel speed of the automatic lawn mower. The calculation process can be seen in formula (7).

[0123]

[0124] In formula (7), v b Represents line speed.

[0125] In some examples, the implementation process of determining the corresponding distance threshold based on the linear speed of the automatic lawn mower at a time point can be shown in formula (8).

[0126]

[0127] In formula (8), d represents the distance threshold, △t track represents the time interval between adjacent frames of dead reckoning, and p represents the redundancy value (which can be set to 0.2). Generally speaking, the greater the linear speed of the automatic lawn mower, the greater the corresponding distance threshold.

[0128] S404: When the first distance deviation and the second distance deviation are both smaller than the distance threshold, it is determined that there is no abnormality in the satellite positioning data of the GNSS module at the time point.

[0129] When it is determined that there is no abnormality in the satellite positioning data of the GNSS module at a time point, the satellite positioning data at that time point can be used as a reference for calculating the position and posture of the automatic lawn mower at that time point.

[0130] It should be noted that in order to further improve the reliability of track calculation, after determining that there is no abnormality in the satellite positioning data of the GNSS module at a certain point in time, it is necessary to use the satellite positioning data at that point in time to recalculate the track of the automatic lawn mower to obtain a more accurate estimated track.

[0131] Optionally, after determining that there is no abnormality in the satellite positioning data of the GNSS module at a time point, the satellite positioning data at the time point is used to replace the estimated positioning data corresponding to the time point to recalculate the estimated positioning data corresponding to the next time point.

[0132] In some examples, the satellite positioning data at the current time point may be used to replace the estimated positioning data corresponding to the current time point, which may be specifically expressed as shown in formula (9).

[0133]

[0134] In formula (9), yaw gps_i Represents the heading angle at the current time point, (x gps_i ,y gps_i ) represents the antenna position coordinates at the current time point, θ track_i Represents the estimated heading angle corresponding to the current time point, (x track_i ,y track_i ) represents the estimated positioning coordinates corresponding to the current time point.

[0135] S405: When the first distance deviation and / or the second distance deviation is not less than the distance threshold, determining that an abnormality occurs in the satellite positioning data of the GNSS module at the time point.

[0136] When it is determined that the satellite positioning data of the GNSS module at a time point is abnormal, the estimated positioning data corresponding to the time point can be used as a reference for calculating the position and posture of the automatic lawn mower at the time point.

[0137] The process shown in S401-S405 above can utilize the data update status and positioning status of the GNSS module at a time point, combined with the linear speed of the automatic lawn mower at a time point, to determine whether the satellite positioning data of the GNSS module at a time point is abnormal.

[0138] like Figure 5 As shown, it is a flow chart of another method for handling satellite positioning data exceptions provided in an embodiment of the present application, including the following steps.

[0139] S501: When the data update status of the GNSS module at a time point is not updated, obtaining a first time.

[0140] The first time represents the duration of the data update status not being updated.

[0141] In some examples, the process of obtaining the first time t1 can be shown in formula (10).

[0142] t1=t cur -t' 0 (10)

[0143] In formula (10), t cur Represents the current local time (which can be understood as the system time of the automatic lawn mower), t' 0 Indicates the time when the GNSS module first updates the satellite positioning data.

[0144] S502: Determine whether the first time is less than a preset time threshold.

[0145] If the first time is less than the preset time threshold, execute S503; if the first time is not less than the preset time threshold, execute S504.

[0146] S503: Determine whether the satellite positioning data of the GNSS module at the time point is abnormal, and determine the estimated positioning data corresponding to the time point as the target positioning data.

[0147] If the first time is less than a preset time threshold, the estimated positioning data corresponding to the time point may be used as a reference for calculating the position and posture of the automatic lawn mower at the time point.

[0148] S504: Determine that the satellite positioning data of the GNSS module at the time point is abnormal and no target positioning data is available.

[0149] If the first time is not less than the preset time threshold, the position and posture at the time point cannot be provided for the automatic lawn mower.

[0150] The process shown in S501-S504 can further identify whether the satellite positioning data of the GNSS module at a time point is abnormal and whether the target positioning data is available when the data update status of the GNSS module at a time point is not updated.

[0151] like Figure 6 As shown, it is a flow chart of another method for handling satellite positioning data exceptions provided in an embodiment of the present application, including the following steps.

[0152] S601: When the data update status of the GNSS module at a time point is not updated, and the positioning state of the GNSS module at a time point is a second state, obtaining a second time.

[0153] The second time represents the duration of the positioning state being in the second state.

[0154] In some examples, the process of obtaining the second time t2 can be shown in formula (11).

[0155] t2=t cur -t" 0 (11)

[0156] In formula (11), t cur Represents the current local time, t" 0 Indicates the time when the positioning state of the GNSS module is first placed in the second state.

[0157] S602: Determine whether the second time is less than a preset time threshold.

[0158] If the second time is less than the preset time threshold, execute S603; if the first time is not less than the preset time threshold, execute S604.

[0159] S603: Determine that the satellite positioning data of the GNSS module at the time point is abnormal, and determine it as target positioning data based on the estimated positioning data corresponding to the time point.

[0160] If the second time is less than the preset time threshold, the estimated positioning data corresponding to the time point can be used as a reference for calculating the position and posture of the automatic lawn mower at the time point.

[0161] S604: Determine that the satellite positioning data of the GNSS module at the time point is abnormal and no target positioning data is available.

[0162] If the second time is not less than the preset time threshold, the satellite positioning data at that time point may be used as a reference for calculating the position and posture of the automatic lawn mower at that time point.

[0163] The process shown in S601-S604 above can use the second time to further identify whether the satellite positioning data of the GNSS module at a time point is abnormal and whether there is data available for the target positioning data when the data update status of the GNSS module at a time point is not updated and the positioning status of the GNSS module at a time point is the second status.

[0164] like Figure 7 As shown, it is a flow chart of another method for handling satellite positioning data exceptions provided in an embodiment of the present application, including the following steps.

[0165] S701: After determining that satellite positioning data of the GNSS module at a time point is abnormal, obtain a third time.

[0166] The third time represents the duration of the abnormality of the satellite positioning data.

[0167] S702: Determine whether the third time is less than a preset time threshold.

[0168] If the third time is less than the preset time threshold, execute S703; if the third time is not less than the preset time threshold, execute S704.

[0169] S703: Determine whether the satellite positioning data of the GNSS module at the time point is abnormal, and determine the estimated positioning data corresponding to the time point as the target positioning data.

[0170] If the third time is less than the preset time threshold, the estimated positioning data corresponding to the time point may be used as a reference for calculating the position and posture of the automatic lawn mower at the time point.

[0171] S704: Determine that the satellite positioning data of the GNSS module at the time point is abnormal and no target positioning data is available.

[0172] If the third time is not less than the preset time threshold, the position and posture at the time point cannot be provided for the automatic lawn mower.

[0173] The process shown in S701-S704 above, after determining that the satellite positioning data of the GNSS module at a time point has an abnormality, can also use the third time to further identify whether the satellite positioning data of the GNSS module at a time point has an abnormality, and whether there is any target positioning data available, thereby improving the accuracy of data abnormality diagnosis.

[0174] like Figure 8 , which is a schematic diagram of the architecture of a satellite positioning data exception processing device provided in an embodiment of the present application, including the units shown below.

[0175] The data processing unit 100 is used to: establish a target coordinate system in advance based on the base station position coordinates; the base station position coordinates belong to the satellite positioning data; the satellite positioning data also includes the antenna position coordinates; based on the target coordinate system, the antenna position coordinates are transformed to obtain satellite positioning data that meets the preset requirements.

[0176] The positioning estimation unit 200 is used to perform track calculation on the automatic lawn mower based on the satellite positioning data of the GNSS module at the target time point after the automatic lawn mower is started, so as to obtain the estimated positioning data corresponding to each time point in the estimated track; the target time point includes the time when the positioning state of the GNSS module is in the first state.

[0177] The abnormality determination unit 300 is used to determine whether the satellite positioning data of the GNSS module at each time point in the estimated track is abnormal based on the data update status and positioning status of the GNSS module at the time point and the linear speed of the automatic lawn mower at the time point.

[0178] The first determination unit 400 is used to determine the satellite positioning data at a time point as target positioning data based on the estimated positioning data corresponding to the time point if an abnormality occurs to the satellite positioning data at the time point; the target positioning data is used to calculate the position and posture of the automatic lawn mower at the time point.

[0179] The second determining unit 500 is used to determine the satellite positioning data at a time point as target positioning data based on the satellite positioning data at the time point if there is no abnormality in the satellite positioning data at the time point.

[0180] Optionally, the positioning estimation unit 200 is specifically used to: obtain satellite positioning data of the GNSS module at a target time point; the satellite positioning data includes antenna position coordinates and a heading angle; based on the antenna position coordinates and the heading angle at the target time point, determine the initial posture of the automatic lawn mower; obtain the wheel speed of the automatic lawn mower; based on the wheel speed and the initial posture, perform track calculation on the automatic lawn mower to obtain estimated positioning data corresponding to each time point in the estimated track.

[0181] Optionally, the abnormality determination unit 300 is specifically used for: when the data update status of the GNSS module at a time point is updating, and the positioning state of the GNSS module at a time point is a first state, determining a first distance deviation based on the first position and the second position; the first position is determined based on the satellite positioning data at the time point; the second position is determined based on the estimated positioning data corresponding to the time point; determining a second distance deviation based on the third position and the first position; the third position is determined based on the satellite positioning data at a previous time point; determining a corresponding distance threshold based on the linear speed of the automatic lawn mower at the time point; when the first distance deviation and the second distance deviation are both less than the distance threshold, determining that there is no abnormality in the satellite positioning data of the GNSS module at the time point; when the first distance deviation and / or the second distance deviation are not less than the distance threshold, determining that there is an abnormality in the satellite positioning data of the GNSS module at the time point.

[0182] Optionally, the abnormality determination unit 300 is also used to: obtain a first time when the data update status of the GNSS module at a time point is not updated; the first time represents the duration of the data update status being not updated; if the first time is less than a preset time threshold, determine that the satellite positioning data of the GNSS module at the time point is abnormal, and determine it as target positioning data based on the estimated positioning data corresponding to the time point; if the first time is not less than the preset time threshold, determine that the satellite positioning data of the GNSS module at the time point is abnormal, and no target positioning data is available.

[0183] Optionally, the abnormality determination unit 300 is also used to: obtain a second time when the data update status of the GNSS module at a time point is not updated, and the positioning state of the GNSS module at the time point is the second state; the second time represents the duration of the positioning state in the second state; if the second time is less than a preset time threshold, determine that the satellite positioning data of the GNSS module at the time point is abnormal, and determine it as target positioning data based on the estimated positioning data corresponding to the time point; if the second time is not less than the preset time threshold, determine that the satellite positioning data of the GNSS module at the time point is abnormal, and no target positioning data is available.

[0184] Optionally, the second determination unit 500 is also used to: obtain a third time; the third time represents the duration of the satellite positioning data being abnormal; if the third time is less than a preset time threshold, it is determined that the satellite positioning data of the GNSS module at the time point is abnormal, and based on the estimated positioning data corresponding to the time point, it is determined as the target positioning data; if the third time is not less than the preset time threshold, it is determined that the satellite positioning data of the GNSS module at the time point is abnormal, and no target positioning data is available.

[0185] Optionally, the first determination unit 400 is further configured to: use the satellite positioning data at a time point to replace the estimated positioning data corresponding to the time point, so as to recalculate the estimated positioning data corresponding to the next time point.

[0186] Each of the above-mentioned units determines whether there is an abnormality in the satellite positioning data of the GNSS module at a point in time based on the data update status and positioning status of the GNSS module at that point in time, so as to realize abnormality identification of the satellite positioning data, and selects the corresponding data as the basis for calculating the position and posture of the automatic lawn mower according to the abnormality identification result, thereby effectively solving the problem of short-term instability, large error or jump in satellite positioning data caused by short-term obstruction of the GNSS antenna, electromagnetic interference in the ionosphere and troposphere, and interference from multipath effects, and realizing high-precision positioning.

[0187] The present application also provides a computer-readable storage medium, which includes a stored program, wherein the program executes the satellite positioning data exception processing method provided by the present application.

[0188] The present application also provides an automatic lawn mower, including: a processor, a memory and a bus. The processor and the memory are connected via the bus, the memory is used to store programs, and the processor is used to run the programs, wherein the satellite positioning data exception handling method provided by the present application is executed when the programs are run.

[0189] In addition, the functions described above in the embodiments of the present application may be at least partially performed by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chip (SOCs), complex programmable logic devices (CPLDs), and the like.

[0190] Although several specific implementation details are included in the above discussion, these should not be interpreted as limiting the scope of the present application. Certain features described in the context of a separate embodiment can also be implemented in a single embodiment in combination. On the contrary, the various features described in the context of a single embodiment can also be implemented in multiple embodiments individually or in any suitable sub-combination.

[0191] The above description is only a preferred embodiment of the present application and an explanation of the technical principles used. Those skilled in the art should understand that the scope of disclosure involved in the present application is not limited to the technical solution formed by a specific combination of the above technical features, but should also cover other technical solutions formed by any combination of the above technical features or their equivalent features without departing from the above disclosed concept. For example, the above features are replaced with the technical features with similar functions disclosed in this application (but not limited to) by each other to form a technical solution.

Claims

1. A method for handling satellite positioning data exceptions, characterized in that: include: After the automatic lawn mower is started, based on the satellite positioning data of the GNSS module at a target time point, the automatic lawn mower is subjected to dead reckoning to obtain estimated positioning data corresponding to each time point in the estimated track; the target time point includes the time when the positioning state of the GNSS module is in a first state; For each time point in the estimated track, based on the data update status and positioning status of the GNSS module at the time point, combined with the linear speed of the automatic lawn mower at the time point, determining whether the satellite positioning data of the GNSS module at the time point is abnormal; If the satellite positioning data at the time point is abnormal, the estimated positioning data corresponding to the time point is determined as the target positioning data; The target positioning data is used to calculate the position and posture of the automatic lawn mower at the time point; If there is no abnormality in the satellite positioning data at the time point, the target positioning data is determined based on the satellite positioning data at the time point.

2. The method according to claim 1, characterized in that: Before performing dead reckoning on the automatic lawn mower based on the satellite positioning data of the GNSS module at the target time point to obtain estimated positioning data corresponding to each time point in the estimated track, the method further includes: Preliminarily establishing a target coordinate system based on the base station position coordinates; the base station position coordinates belong to the satellite positioning data; the satellite positioning data also includes the antenna position coordinates; Based on the target coordinate system, the antenna position coordinates are transformed to obtain satellite positioning data that meets preset requirements.

3. The method according to claim 1, characterized in that Based on the satellite positioning data of the GNSS module at the target time point, the automatic lawn mower is subjected to dead reckoning to obtain estimated positioning data corresponding to each time point in the estimated track, including: Obtaining satellite positioning data of the GNSS module at a target time point; the satellite positioning data includes antenna position coordinates and heading angle; Determining an initial position and posture of the automatic lawn mower based on the antenna position coordinates and the heading angle at the target time point; Obtaining the wheel speed of the automatic lawn mower; Based on the wheel speed and the initial posture, dead reckoning is performed on the automatic lawn mower to obtain estimated positioning data corresponding to each time point in the estimated track.

4. The method according to claim 1, characterized in that: Based on the data update status and positioning status of the GNSS module at the time point, combined with the linear speed of the automatic lawn mower at the time point, determining whether the satellite positioning data of the GNSS module at the time point is abnormal includes: When the data update status of the GNSS module at the time point is update, and the positioning state of the GNSS module at the time point is the first state, a first distance deviation is determined based on the first position and the second position; the first position is determined based on the satellite positioning data at the time point; and the second position is determined based on the estimated positioning data corresponding to the time point; Determining a second distance deviation based on a third position and the first position; the third position is determined based on satellite positioning data at a previous time point; Determining a corresponding distance threshold based on the linear speed of the automatic lawn mower at the time point; When both the first distance deviation and the second distance deviation are smaller than the distance threshold, determining that no abnormality occurs in the satellite positioning data of the GNSS module at the time point; When the first distance deviation and / or the second distance deviation is not less than the distance threshold, it is determined that an abnormality occurs in the satellite positioning data of the GNSS module at the time point.

5. The method according to claim 4, characterized in that The method further comprises: When the data update status of the GNSS module at the time point is not updated, obtaining a first time; the first time represents the duration of the data update status being not updated; If the first time is less than a preset time threshold, determining that the satellite positioning data of the GNSS module at the time point is abnormal, and determining the estimated positioning data corresponding to the time point as the target positioning data; If the first time is not less than the preset time threshold, it is determined that the satellite positioning data of the GNSS module at the time point is abnormal and the target positioning data is unavailable.

6. The method according to claim 4, characterized in that The method further comprises: When the data update status of the GNSS module at the time point is not updated, and the positioning state of the GNSS module at the time point is the second state, obtaining a second time; the second time represents the duration of the positioning state in the second state; If the second time is less than a preset time threshold, determining that the satellite positioning data of the GNSS module at the time point is abnormal, and determining the estimated positioning data corresponding to the time point as the target positioning data; If the second time is not less than the preset time threshold, it is determined that the satellite positioning data of the GNSS module at the time point is abnormal and the target positioning data is unavailable.

7. The method according to claim 4, characterized in that After determining that the satellite positioning data of the GNSS module at the time point is abnormal, the method further includes: Obtaining a third time; the third time represents the duration of the abnormality of the satellite positioning data; If the third time is less than the preset time threshold, it is determined that the satellite positioning data of the GNSS module at the time point is abnormal, and based on the estimated positioning data corresponding to the time point, it is determined as the target positioning data; If the third time is not less than the preset time threshold, it is determined that the satellite positioning data of the GNSS module at the time point is abnormal and the target positioning data is not available.

8. The method according to claim 4, characterized in that After determining that no abnormality occurs in the satellite positioning data of the GNSS module at the time point, the method further includes: The satellite positioning data at the time point is used to replace the estimated positioning data corresponding to the time point, so as to recalculate the estimated positioning data corresponding to the next time point.

9. A device for handling satellite positioning data exceptions, characterized in that: include: a positioning estimation unit, configured to perform dead reckoning on the automatic lawn mower based on the satellite positioning data of the GNSS module at a target time point after the automatic lawn mower is started, so as to obtain estimated positioning data corresponding to each time point in the estimated track; the target time point includes the time when the positioning state of the GNSS module is in the first state; an abnormality determination unit, configured to determine, for each time point in the estimated track, whether an abnormality occurs in the satellite positioning data of the GNSS module at the time point based on the data update status and positioning status of the GNSS module at the time point and the linear speed of the automatic lawn mower at the time point; A first determining unit is used to determine, if an abnormality occurs in the satellite positioning data at the time point, the estimated positioning data corresponding to the time point as the target positioning data; The target positioning data is used to calculate the position and posture of the automatic lawn mower at the time point; The second determining unit is configured to determine the target positioning data based on the satellite positioning data at the time point if no abnormality occurs to the satellite positioning data at the time point.

10. An automatic lawn mower, characterized in that: include: processor, memory, and bus; The processor is connected to the memory via the bus; The memory is used to store programs, and the processor is used to run programs, wherein the program, when run by the processor, executes the satellite positioning data exception processing method according to any one of claims 1 to 8.