Cleaning robot and mapping error elimination method
By sensing the position of the base station sensing elements on the cleaning robot, correcting the deviation of map position coordinates, solving the problem of error in the establishment of the cleaning robot map, and improving the accuracy and quality of the map.
Patent Information
- Application Number
- CN202110795835.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-07-14
- Publication Date
- 2025-04-15
- Estimated Expiration
- 2041-07-14
AI Technical Summary
During the process of building a map, the map position coordinates are inaccurate due to hardware and algorithm errors, which affects the map quality and walking path planning.
By setting a sensing element on the cleaning robot, sensing the sensing element on the base station, recording the relationship between the first map position coordinate and the second map position coordinate, correcting the deviation of establishing the map, and improving the map quality.
The errors in the map are effectively corrected, the accuracy and quality of the map are improved, and the planning and adjustment of the walking path of the cleaning robot are improved.
Smart Images

Figure CN115700417B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of cleaning robots, and in particular to a cleaning robot and a method for eliminating mapping errors. Background Art
[0002] The SLAM (Simultaneous Localization and Mapping) navigation method is a real-time positioning and navigation method widely used in the field of cleaning robots. Based on this method, the cleaning robot can build a map while moving. Among them, during the movement of the cleaning robot, the current position coordinates of the cleaning robot can be calculated through environmental information collected by odometer data, laser detectors and / or cameras, and a map can be constructed based on the various position coordinates calculated during the movement of the cleaning robot. It can be seen that the accuracy of the calculated position coordinates directly affects the quality of the map. In actual scenarios, the detection element itself will have certain errors, such as errors caused by hardware characteristics, errors caused by algorithm accuracy, etc. Such errors will cause certain errors in the calculated position coordinates, which will affect the accuracy of the constructed map. The quality of the map will affect the planning and adjustment of the walking path of the cleaning robot. Therefore, how to eliminate the errors in the map becomes a problem that needs to be solved. Summary of the invention
[0003] In view of this, an embodiment of the present invention provides a cleaning robot and a method for eliminating map errors, which can correct the deviation of map creation and improve the quality of the created map.
[0004] In a first aspect, an embodiment of the present invention provides a method for eliminating mapping errors of a cleaning robot, wherein the cleaning robot is provided with a sensing element for sensing a sensing element on a base station, and the method comprises:
[0005] Control the cleaning robot to move forward from the base station, and collect environmental information to establish a map during the moving process, wherein the map records the map position coordinates of the sensing element of the base station as the first map position coordinates;
[0006] When the cleaning robot senses the sensing element on the base station through the sensing element, determining the map position coordinates of the current position of the cleaning robot in the map as the second map position coordinates;
[0007] Based on the relationship between the first map position coordinates and the second map position coordinates, the deviation of establishing the map is corrected.
[0008] Optionally, the sensing element includes a magnetic sensing element and an infrared sensing element; the sensing element includes: a magnetic sensing element and an infrared sensing element;
[0009] The cleaning robot senses the sensing element on the base station through the sensing element, including:
[0010] The cleaning robot senses the magnetic sensing element through the magnetic sensing element, and / or the cleaning robot senses the infrared sensing element through the infrared sensing element.
[0011] Optionally, based on the relationship between the first map position coordinates and the second map position coordinates, correcting the deviation of establishing the map includes:
[0012] Based on the relationship between the first map position coordinates and the second map position coordinates, the second map position coordinates are corrected to correct the second map position coordinates in a direction tending toward the first map position coordinates.
[0013] Optionally, based on the relationship between the first map position coordinates and the second map position coordinates, correcting the deviation of establishing the map includes:
[0014] Determining a total position error of the cleaning robot caused by moving from the base station to a current position based on a difference between the first map position coordinates and the second map position coordinates;
[0015] Based on the total position error, the map position coordinates of each position point that the cleaning robot passes through when moving from the base station to the current position are corrected.
[0016] Optionally, based on the total position error, the map position coordinates of each position point that the cleaning robot passes through when moving from the base station to the current position are corrected, including:
[0017] Determining the proportion of each position point to the total position error;
[0018] Determining the position sub-errors of each position point according to the error sharing ratio of each position point;
[0019] The map position coordinates of each position point are corrected according to the position sub-errors of each position point.
[0020] Optionally, determining the proportion of each position point to contribute to the total position error includes:
[0021] Obtaining a position confidence of each position point, wherein the position confidence is used to characterize the accuracy of the map position coordinates of the corresponding position point;
[0022] According to the position confidence of each position point, the proportion of each position point to share the total position error is determined.
[0023] Optionally, determining the proportion of each position point to share the total position error according to the position confidence of each position point includes:
[0024] Determining the sum of the position confidences of the position points;
[0025] The proportion of each position point to share the total position error is determined according to the ratio of the confidence of each position point to the sum of the position confidences.
[0026] Optionally, obtaining the position confidence of each position point includes:
[0027] Acquire detection laser information of the cleaning robot at each of the positions;
[0028] Determine the overlap value between the detection laser information of the robot at each position point and the map;
[0029] The position confidence of the cleaning robot at each position point is determined according to the overlap value corresponding to each position point.
[0030] Optionally, determining the overlap values of the detection laser information of the robot at each position point with the map includes:
[0031] Determine, based on the detection laser information of the cleaning robot at each position point, the number of first laser points emitted by the cleaning robot at each position point and the number of second laser points where the laser emitted at each position point overlaps with the map;
[0032] The coincidence values corresponding to the respective position points are determined according to the ratio of the number of the second laser points corresponding to the respective position points to the number of the first laser points.
[0033] In a second aspect, an embodiment of the present invention provides a cleaning robot, comprising:
[0034] A sensing element, used for sensing a sensing element on a base station;
[0035] A control element is used to control the cleaning robot to move forward from a base station and collect environmental information to establish a map during the moving process. The map records the map position coordinates of the sensing element of the base station as the first map position coordinates; when the control element senses the sensing element on the base station through the sensing element, the map position coordinates of the current position of the cleaning robot in the map are determined as the second map position coordinates; based on the relationship between the first map position coordinates and the second map position coordinates, the deviation of establishing the map is corrected.
[0036] In the embodiment of the present invention, the cleaning robot is provided with a sensing element, and the base station is provided with a sensing element. The cleaning robot moves forward from the base station and establishes a map, and the map records the map position coordinates of the sensing element, i.e., the first map position coordinates. When the cleaning robot senses the sensing element through the sensing element, it means that the cleaning robot returns to the base station again, and at this time, the map position coordinates of the cleaning robot at the current position are recorded, i.e., the second map position coordinates. In theory, the second map position coordinates should be equal to or approximately equal to the first map position coordinates. Therefore, based on the relationship between the first map position coordinates and the second map position coordinates, the deviation in establishing the map can be corrected to improve the quality of the constructed map. BRIEF DESCRIPTION OF THE DRAWINGS
[0037] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0038] Figure 1 A schematic diagram of a system structure supporting automatic backwashing by a robot provided in an embodiment of the present invention;
[0039] Figure 2 A schematic diagram of the structure of a base station provided in an embodiment of the present invention;
[0040] Figure 3 A schematic diagram of the structure of a cleaning robot provided by an embodiment of the present invention;
[0041] Figure 4 A schematic diagram of a cleaning robot mapping error provided by an embodiment of the present invention;
[0042] Figure 5 A comparison diagram of the mapping effects of a cleaning robot provided by an embodiment of the present invention;
[0043] Figure 6 A flow chart of a method for eliminating mapping errors of a cleaning robot provided by an embodiment of the present invention;
[0044] Figure 7 A specific schematic diagram of a method for eliminating mapping errors provided by an embodiment of the present invention;
[0045] Figure 8 A schematic diagram of a map with ghosting provided by an embodiment of the present invention;
[0046] Fig. 9 A schematic diagram of an effect of eliminating ghosting in mapping provided by an embodiment of the present invention;
[0047] Fig.10 A schematic diagram of the structure of a cleaning robot provided by an embodiment of the present invention;
[0048] Fig.11 A schematic diagram of the structure of another cleaning robot provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0049] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0050] See also Figure 1 , is a schematic diagram of a system structure supporting automatic backwashing by a robot provided by an embodiment of the present invention. Figure 1 As shown, the system includes: a base station 100 and a cleaning robot 200. The base station 100 is usually set at a fixed position in the area to be cleaned. The cleaning robot 200 can start from the base station 100 and move forward while cleaning the area to be cleaned.
[0051] See also Figure 2 , is a schematic diagram of the structure of a base station 100 provided in an embodiment of the present invention. Figure 2 As shown, the base station 100 includes a base 101, and the base 101 has a backwashing space 102 that supports the cleaning robot 200 to backwash the mop. Optionally, a sensing element is provided on the base 101, and the sensing element can be used to guide the cleaning robot 200 into the backwashing space 102 of the base 101. In some examples, the sensing element on the base 101 includes: a magnetic sensing element and an infrared sensing element. Among them, the magnetic sensing element can be, for example, a magnetic strip 103 set at the entrance of the base 101. The infrared sensing element can be, for example, an infrared emitting element 104. The cleaning robot 200 can locate the position of the base station 100 and return to the base station 100 by sensing the magnetic strip 103 and / or the infrared emitting element 104 on the base 101.
[0052] See also Figure 3 , is a schematic diagram of the structure of a cleaning robot 200 provided by an embodiment of the present invention. Figure 3As shown, the cleaning robot 200 includes a driving wheel 201, a cleaning component, a sensing element and an environmental information collection element 202. Among them, the driving wheel 201 is used to drive the cleaning robot 200 to move forward. The cleaning component is used to clean the area to be cleaned during the movement of the cleaning robot 200. The sensing element is used to sense the sensing element on the base station. Corresponding to the sensing element on the base station 100, the sensing element on the cleaning robot 200 may include a magnetic sensing element and an infrared sensing element. The magnetic sensing element can be used to sense the magnetic sensing element on the base. Optionally, the magnetic sensing element can be, for example, a Hall sensor 203. The Hall sensor 203 can detect the magnetic strip 103 on the base station 100. Optionally, the infrared sensing element can be, for example, an infrared receiving element 204. The infrared receiving element 204 can receive an infrared signal emitted by the infrared emitting element 104 on the base.
[0053] Optionally, the cleaning robot 200 can support multiple modes such as wall-following mode and backwashing mode during cleaning. In the wall-following mode, when the cleaning robot 200 walks near the base station 100 and the sensing element is used to sense the sensing element on the base station, the cleaning robot 200 can move in a direction away from the base station 100, thereby bypassing the base station 100 and continuing to move forward. In the backwashing mode, when the cleaning robot 200 senses the sensing element on the base station 100 through the sensing element, the cleaning robot 200 can turn around and retreat so that the mopping member at the tail of the cleaning robot enters the backwashing space 102 of the base station.
[0054] In some embodiments, the cleaning robot 200 sensing the sensing element through the sensing element may include: the cleaning robot 200 sensing the magnetic sensing element on the base station 100 through the magnetic sensing element. Alternatively, the cleaning robot 200 senses the infrared sensing element on the base station 100 through the infrared sensing element. Alternatively, the cleaning robot 200 senses the magnetic sensing element on the base station 100 through the magnetic sensing element, and senses the infrared sensing element on the base station 100 through the infrared sensing element.
[0055] In some embodiments, the cleaning robot 200 supports building a map while walking. When the cleaning robot 200 starts from the base station 100 and moves forward, the map position coordinates of the cleaning robot 200 at the current position can be calculated once every preset time or every time the cleaning robot 200 moves a preset distance. Afterwards, a map can be constructed based on the calculated map position coordinates of each position point. For example, when the cleaning robot 200 walks around the edge of the area to be cleaned, the calculated map position coordinates can constitute the map outline of the area to be cleaned.
[0056] In some embodiments, the cleaning robot 200 may collect environmental information through an environmental information collection element, wherein the environmental information collection element may be, for example, a laser detector, a camera, or other possible elements, etc. Then, the map position coordinates may be calculated based on the collected environmental information.
[0057] In some embodiments, the cleaning robot can calculate the map position coordinates through its own control element. In some embodiments, the cleaning robot 200 can also send data to a terminal device or a robot server to calculate the map position coordinates by the terminal device or the robot server.
[0058] In the above method of calculating the map position coordinates, there may be some hardware or algorithm errors, which may make the calculated map position coordinates less accurate. Figure 4 As shown, in the real environment, when the cleaning robot 200 moves forward 1 meter, the calculated moving distance may be 0.995 meters, and the corresponding map position coordinates are (0.995, 0), which has an error of 0.005 meters from the position coordinates (1, 0) in the real result. When the cleaning robot 200 moves forward 10 meters in the real environment, the calculated moving distance may be 9.95 meters, and the corresponding map position coordinates are (10.945, 0), which has an error of 0.055 meters from the position coordinates (11, 0) in the real result. It can be seen that due to the accumulation of position errors, the farther the cleaning robot 200 moves, the greater the error of the calculated map position coordinates. This error is reflected on the map, which will affect the accuracy of the constructed map.
[0059] See also Figure 5 When the area to be cleaned is a rectangle, the actual motion trajectory 32 of the cleaning robot 200 around the edge of the area to be cleaned is a rectangle, and the corresponding map outline 31 should also be a rectangle. However, when there is an error in the calculated map position coordinates, there will be a certain error in the calculated motion trajectory 32, resulting in deviations in the constructed map outline 31, and even the constructed map outline may have double images.
[0060] See also Figure 6 , an embodiment of the present invention provides a method for eliminating mapping errors of a cleaning robot 200, based on which mapping errors existing in the robot map can be eliminated. Figure 6 As shown, the processing steps of the method include:
[0061] 101, control the cleaning robot 200 to move forward from the base station 100, and collect environmental information to build a map during the moving process. The map records the map position coordinates of the sensing element of the base station 100. The map position coordinates of the sensing element on the base station 100 can be used as the first map position coordinates.
[0062] In some embodiments, the cleaning robot 200 may start from the base station 100 and move forward under the control of the terminal device. Alternatively, after being triggered, the cleaning robot 200 may start from the base station 100 and move forward autonomously.
[0063] In some embodiments, the cleaning robot 200 can collect environmental information through an environmental information collection element. After collecting environmental information, the cleaning robot 200 can use the odometer data and / or environmental information to calculate the map position coordinates by itself, or the cleaning robot 200 can send the odometer data and / or environmental information to a terminal device, a robot server or other possible devices, so that the terminal device, the robot server or other possible devices can calculate the map position coordinates. Optionally, during the movement of the cleaning robot 200, the map position coordinates of the cleaning robot 200 can be calculated once every preset time or every time the cleaning robot 200 moves a preset distance. Each map position coordinate corresponds to the corresponding environmental information. For example, the map position coordinate A corresponds to the environmental information collected by the environmental information collection element at the map position coordinate A. Optionally, the obstacle coordinates of the area to be cleaned can also be determined according to the environmental information, and each map position coordinate also corresponds to the corresponding obstacle coordinate, which is determined based on the environmental information collected at the map position coordinate, that is, the obstacle coordinate is determined with the map position coordinate as a reference point.
[0064] In the embodiment of the present invention, a map can be constructed according to the coordinates of each map position during the movement of the cleaning robot 200, and obstacle information can be marked in the map according to the coordinates of the obstacle.
[0065] In some embodiments, the map position coordinates of the sensing element of the base station 100 are used as the first map position coordinates. Optionally, the initial position coordinates of the cleaning robot 200 when it is located at the base station 100 can be used as the first map position coordinates. Optionally, the first map position coordinates can be used as the origin coordinates of the constructed map. That is, the position coordinates of the cleaning robot 200 when it departs from the base station 100 can be used as the origin coordinates of the map.
[0066] 102. When the cleaning robot 200 senses the sensing element on the base station 100 through the sensing element, the map position coordinates of the current position of the cleaning robot 200 in the map are determined, and the map position coordinates at this time are used as the second map position coordinates.
[0067] The cleaning robot 200 senses the sensing element on the base station 100 through the sensing element, which may be the cleaning robot 200 returning to the base station 100 again. In some embodiments, the sensing element on the base station 100 includes a magnetic sensing element and an infrared sensing element. The sensing element of the cleaning robot 200 includes a magnetic sensing element and an infrared sensing element. The cleaning robot 200 senses the sensing element on the base station 100 through the sensing element, which may include: the cleaning robot 200 senses the magnetic sensing element through the magnetic sensing element. Alternatively, the cleaning robot 200 senses the infrared sensing element through the infrared sensing element. Alternatively, the cleaning robot 200 senses the magnetic sensing element through the magnetic sensing element and senses the infrared sensing element through the infrared sensing element.
[0068] 103. Based on the relationship between the first map position coordinates and the second map position coordinates, correct the deviation of establishing the map.
[0069] In the embodiment of the present invention, the first map position coordinates are the position coordinates of the sensing element on the base station 100, that is, the first map position coordinates can be understood as the starting position coordinates of the cleaning robot 200 when it departs from the base station 100. The second map position coordinates are the position coordinates when the cleaning robot 200 detects the sensing element of the base station 100, that is, the second map position coordinates can be understood as the position coordinates of the cleaning robot 200 when it departs from the base station 100 and then returns to the base station 100. In theory, the second map position coordinates are equal to or approximately equal to the first map position coordinates. However, due to the existence of map position coordinate errors, there may be some errors between the second map position coordinates and the first map position coordinates. Therefore, in the embodiment of the present invention, after obtaining the second map position coordinates, the second map position coordinates are corrected in the direction of the first map position coordinates, thereby reducing the error of the second map position coordinates, and further improving the accuracy of the constructed map.
[0070] In some embodiments, correcting the second map location coordinates toward the direction of the first map location coordinates may include: determining the difference between the first map location coordinates and the second map location coordinates, and correcting the second map location coordinates toward the direction of the first map location coordinates based on the difference. For example, the second map location coordinates + the difference may be used as the corrected second map location coordinates. Optionally, the map may be corrected based on the corrected second map location coordinates. Wherein, when correcting the map, it includes: according to the corrected second map location coordinates, at least the obstacle coordinates corresponding to the second map location coordinates are corrected.
[0071] In some embodiments, in addition to correcting the second map position coordinates, the map position coordinates of each position point that the cleaning robot 200 passes through during the movement may also be corrected. Specifically, the difference between the first map position coordinates and the second map position coordinates may be used as the total position error generated by the cleaning robot 200 moving from the base station 100 to the current position. Thereafter, based on the total position error, the map position coordinates of each position point that the cleaning robot 200 passes through when moving from the base station 100 to the current position may be corrected to correct the second map position coordinates in a direction that tends toward the first map position coordinates.
[0072] In some embodiments, the cleaning robot 200 may calculate the map position coordinates of the cleaning robot 200 every preset time or every time the cleaning robot 200 moves a preset distance during the movement. A map may be constructed based on the map positions of each position point during the movement of the cleaning robot 200. After the above-mentioned total position error is calculated, the total position error may be apportioned to the map position coordinates of each position point, thereby realizing the correction of the map position coordinates of each position point.
[0073] In some embodiments, the map position coordinates of each position point that the cleaning robot 200 passes through when moving from the base station 100 to the current position are corrected, including: determining the proportion of each position point's contribution to the total position error; determining the position sub-error of each position point based on the proportion of each position point's contribution to the total position error; and correcting the map position coordinates of each position point based on the position sub-error of each position point.
[0074] Optionally, if the number of position points that the cleaning robot 200 passes through when moving from the base station 100 to the current position is N, the proportion of each position point to the total position error is 1 / N, and the position sub-error of each position point is: total position error / N. That is, the total position error is evenly distributed to each position point that the cleaning robot 200 passes through.
[0075] Optionally, in addition to evenly distributing the total position error to each position point to correct the map position coordinates of each position point, the position confidence of each position point can also be obtained, and based on the position confidence of each position point, the proportion of each position point to the total position error is determined. The position confidence is used to characterize the accuracy of the map position coordinates of the corresponding position point.
[0076] In some embodiments, determining the proportion of each location point to contribute to the total location error based on the location confidence of each location point may include: determining the sum of the location confidences of each location point; and determining the proportion of each location point to contribute to the total location error based on the ratio of the confidence of each location point to the sum of the location confidences.
[0077] In some embodiments, obtaining the position confidence of each position point may include: obtaining the detection laser information of the cleaning robot 200 at each position point; determining the overlap value between the detection laser information of the cleaning robot 200 at each position point and the map; and determining the position confidence of the cleaning robot 200 at each position point according to the overlap values corresponding to each position point.
[0078] It should be noted that determining the overlap values of the detection laser information of the robot at each position point and the map may include: determining the number of first laser points emitted by the cleaning robot 200 at each position point and the number of second laser points where the laser emitted at each position point overlaps with the map according to the detection laser information of the cleaning robot 200 at each position point. The overlap values corresponding to each position point are determined according to the ratio of the number of second laser points corresponding to each position point to the number of first laser points.
[0079] In some embodiments, the environmental information of each position point during the movement of the cleaning robot 200 can also be used to determine the obstacle coordinates. That is, each map position coordinate corresponds to a corresponding obstacle coordinate. After the map position coordinates corresponding to each position point are corrected, the corresponding obstacle position coordinates can be corrected according to the corrected map position coordinates.
[0080] In some embodiments, after the cleaning robot 200 determines the corrected second map position coordinates and / or the corrected obstacle coordinates, it can also send the corrected second map position coordinates and / or obstacle coordinates to the terminal device so that the terminal device can correct the map according to the corrected second map position coordinates and / or obstacle coordinates.
[0081] See also Figure 7 , is a specific schematic diagram of a method for eliminating mapping errors provided by an embodiment of the present invention. Figure 7 As shown, the cleaning robot 200 starts from the base station 100 and establishes a map coordinate system with the position of the magnetic stripe 103 on the base station 100 as the origin, wherein the origin position is also the starting position of the cleaning robot 200.
[0082] like Figure 7 As shown, the cleaning robot 200 starts from the base station 100 and moves along the edge of the area to be cleaned. In the process of moving forward, it passes through positions 1->2->3->4->5 and returns to the base station 100. In the process of moving the cleaning robot 200, the map position coordinates p of the cleaning robot 200 at each position point 1->2->3->4->5 can be recorded. i , the position confidence of each position point∈ i And the detection laser information at each position point, i takes the value of 1, 2, 3, 4 and 5. Optionally, at position point pi The detection laser information may include: the cleaning robot 200 at position p i The number of the first laser points emitted, and the i The number of second laser points that the emitted laser overlaps with the already constructed map. For example, the cleaning robot 200 is at position p i Shoot M in 360 degrees i laser points, the M i m i The laser points coincide with the constructed map contour 31, then the position point p i The corresponding number of the first laser points is M i , the number of the second laser points is m i . Position point p i The corresponding position confidence ∈ i =m i / M i Optionally, the detection laser information may also include obstacle location information of the area to be cleaned. The corresponding obstacle coordinates may be calculated based on the obstacle location information. That is, the map location coordinates p i Corresponding to the obstacle coordinate z i .
[0083] like Figure 7 As shown, when the cleaning robot 200 moves to position 5, the cleaning robot 200 detects the signal of the magnetic stripe 103 on the base station 100. At this time, the cleaning robot 200 further verifies whether the infrared signal of the infrared emitting element 104 of the base station 100 is detected; if the cleaning robot 200 receives the infrared signal, the cleaning robot 200 determines to return to the base station 100.
[0084] When the cleaning robot 200 determines to return to the base station 100, the total position error sum generated by the cleaning robot 200 moving along the moving trajectory 1->2->3->4->5 to the current position p5 is calculated according to the map position coordinates of p5. error =p5-p1.
[0085] After that, determine the total position error sum of each point error Specifically, according to the formula Determine the position point p i Total position error sum error The apportionment ratio is, then the position point p i The corresponding position error is sum error *∈ i . Position point p i The corrected map position coordinates are p i =p i +sum error *∈i According to the corrected coordinates of each map location, the map outline is corrected, such as Figure 7 The corrected map outline shown is a rectangle.
[0086] In some embodiments, according to the corrected map position coordinates p of each position point i The coordinates z of each obstacle can be further i Corrected to make obstacle information displayed inside the map outline more accurate.
[0087] like Figure 8 As shown in the figure, the magnetic strip on the base station is covered. When the cleaning robot starts from the base station and goes around the edge of the area to be cleaned and returns to the base station, there are ghost positions in the constructed map. Fig. 9 As shown, based on the method of the embodiment of the present invention, when the magnetic strip on the base station is not blocked, when the cleaning robot starts from the base station and goes around the edge of the area to be cleaned and returns to the base station again, the ghost image in the constructed map disappears. It can be seen that the method based on the embodiment of the present invention can effectively improve the quality of the constructed map.
[0088] Corresponding to the above-mentioned method for eliminating mapping errors of a cleaning robot, an embodiment of the present invention further provides a cleaning robot. Fig.10 As shown, the cleaning robot includes: a control element 401 and a sensing element 402; wherein the sensing element 402 is used to sense the sensing element on the base station; the control element 401 is used to control the cleaning robot to move forward from the base station, and collect environmental information to establish a map during the moving process, and the map records the map position coordinates of the sensing element of the base station as the first map position coordinates; when the control element 401 senses the sensing element on the base station through the sensing element 402, the map position coordinates of the current position of the cleaning robot in the map are determined as the second map position coordinates; based on the first map position coordinates and the second map position coordinates, the second map position coordinates are corrected in a direction tending to the first map position coordinates.
[0089] In some embodiments, the sensing element includes a magnetic sensing element and an infrared sensing element; the sensing element 402 includes: a magnetic sensing element and an infrared sensing element; the sensing element 402 senses the sensing element on the base station, including: the cleaning robot senses the magnetic sensing element through the magnetic sensing element, and / or the cleaning robot senses the infrared sensing element through the infrared sensing element.
[0090] In some embodiments, the cleaning robot further includes: a driving wheel, a cleaning component, and an environmental information collection component. Figure 3 The description is not repeated here.
[0091] The cleaning robot of the embodiment of the present invention can perform Figure 6 to Figure 7 For the parts not described in detail in this embodiment, please refer to Figure 6 to Figure 7 The implementation process and technical effects of this technical solution refer to Figure 6 to Figure 7 The description in the illustrated embodiment will not be repeated here.
[0092] See also Fig.11 , is a schematic diagram of the structure of a cleaning robot according to an embodiment of the present invention. Fig.11 As shown, the cleaning robot 200 includes: a processor 501, a memory 502, and a computer program stored in the memory 502 and executable on the processor 501. When the processor 501 executes the computer program, the steps in the above method embodiment are implemented, for example Figure 6 Steps 101 to 103 are shown. Alternatively, the processor 501 implements the functions of the above control element when executing the computer program.
[0093] Exemplarily, the computer program may be divided into one or more modules / units, which are stored in the memory 502 and executed by the processor 501 to complete the present application. The one or more modules / units may be a series of computer program instruction segments capable of completing specific functions, which are used to describe the execution process of the computer program in the cleaning robot 200.
[0094] Those skilled in the art will understand that Fig.11 It is only an example of the cleaning robot 200 and does not constitute a limitation of the cleaning robot 200. It may include more or fewer components than shown in the figure, or a combination of certain components, or different components. For example, the cleaning robot 200 may also include input and output devices, network access devices, buses, etc.
[0095] The processor 501 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc.
[0096] The memory 502 may be an internal storage unit of the cleaning robot 200, such as a hard disk or memory of the cleaning robot 200. The memory 502 may also be an external storage device of the cleaning robot 200, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the cleaning robot 200. Further, the memory 502 may also include both an internal storage unit and an external storage device of the cleaning robot 200. The memory 502 is used to store the computer program and other programs and data required by the cleaning robot 200. The memory 502 may also be used to temporarily store data that has been output or is to be output.
[0097] The technicians in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In practical applications, the above-mentioned function allocation can be completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated in a processing unit, or each unit can exist physically separately, or two or more units can be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, which will not be repeated here.
[0098] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0099] In the embodiments of the present invention, "at least one" refers to one or more, and "more than one" refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B may represent the existence of A alone, the existence of A and B at the same time, and the existence of B alone. A and B may be singular or plural. The character " / " generally indicates that the previous and subsequent associated objects are in an "or" relationship. "At least one of the following" and similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b and c can be represented by: a, b, c, ab, ac, bc, or abc, where a, b, c may be single or multiple.
[0100] Those skilled in the art will appreciate that the various units and algorithm steps described in the embodiments disclosed herein can be implemented in a combination of electronic hardware, computer software, and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present invention.
[0101] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0102] In several embodiments provided by the present invention, if any function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program codes.
[0103] The above is only a specific embodiment of the present invention. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed by the present invention, which should be included in the protection scope of the present invention. The protection scope of the present invention shall be based on the protection scope of the claims.
Claims
1. A method for eliminating mapping errors of a cleaning robot, characterized in that: The cleaning robot is provided with a sensing element for sensing a sensing element on a base station, and the method comprises: Control the cleaning robot to move forward from the base station, and collect environmental information to establish a map during the moving process, wherein the map records the map position coordinates of the sensing element of the base station as the first map position coordinates; When the cleaning robot senses the sensing element on the base station through the sensing element, determining the map position coordinates of the current position of the cleaning robot in the map as the second map position coordinates; Based on the relationship between the first map position coordinates and the second map position coordinates, correcting the deviation of establishing the map; The method of correcting the deviation of establishing the map based on the relationship between the first map position coordinates and the second map position coordinates includes: Determining a total position error of the cleaning robot caused by moving from the base station to a current position based on a difference between the first map position coordinates and the second map position coordinates; Based on the total position error, the map position coordinates of each position point that the cleaning robot passes through when moving from the base station to the current position are corrected; Wherein, based on the total position error, the map position coordinates of each position point that the cleaning robot passes through when moving from the base station to the current position are corrected, including: Determining the proportion of each position point to the total position error; Determining the position sub-errors of each position point according to the error sharing ratio of each position point; The map position coordinates of each position point are corrected according to the position sub-errors of each position point.
2. The method according to claim 1, characterized in that The sensing element includes a magnetic sensing element and an infrared sensing element; The sensing element comprises: a magnetic sensing element and an infrared sensing element; The cleaning robot senses the sensing element on the base station through the sensing element, including: The cleaning robot senses the magnetic sensing element through the magnetic sensing element, and / or the cleaning robot senses the infrared sensing element through the infrared sensing element.
3. The method according to claim 1, characterized in that Based on the relationship between the first map position coordinates and the second map position coordinates, correcting the deviation of establishing the map includes: Based on the relationship between the first map position coordinates and the second map position coordinates, the second map position coordinates are corrected to correct the second map position coordinates in a direction tending toward the first map position coordinates.
4. The method according to claim 1, characterized in that: Determining the proportion of each position point to the total position error includes: Obtaining a position confidence of each position point, wherein the position confidence is used to characterize the accuracy of the map position coordinates of the corresponding position point; According to the position confidence of each position point, the proportion of each position point to share the total position error is determined.
5. The method according to claim 4, characterized in that Determining the proportion of each position point to share the total position error according to the position confidence of each position point, including: Determining the sum of the position confidences of the position points; The proportion of each position point to share the total position error is determined according to the ratio of the confidence of each position point to the sum of the position confidences.
6. The method according to claim 4, characterized in that Obtaining the position confidence of each position point includes: Acquire detection laser information of the cleaning robot at each of the positions; Determine the overlap value between the detection laser information of the robot at each position point and the map; The position confidence of the cleaning robot at each position point is determined according to the overlap value corresponding to each position point.
7. The method according to claim 6, characterized in that Determining the overlap values of the detection laser information of the robot at each position point with the map, including: Determine, based on the detection laser information of the cleaning robot at each position point, the number of first laser points emitted by the cleaning robot at each position point and the number of second laser points where the laser emitted at each position point overlaps with the map; The coincidence values corresponding to the respective position points are determined according to the ratio of the number of the second laser points corresponding to the respective position points to the number of the first laser points.
8. A cleaning robot, characterized in that: include: A sensing element, used for sensing a sensing element on a base station; A control element, used to control the cleaning robot to move forward from the base station, and to collect environmental information to establish a map during the moving process, wherein the map records the map position coordinates of the sensing element of the base station as the first map position coordinates; When the control element senses the sensing element on the base station through the sensing element, the map position coordinates of the current position of the cleaning robot in the map are determined as second map position coordinates; based on the relationship between the first map position coordinates and the second map position coordinates, the deviation of establishing the map is corrected; Wherein, the control element is specifically used to: determine the total position error generated by the cleaning robot moving from the base station to the current position based on the difference between the first map position coordinates and the second map position coordinates; Based on the total position error, the map position coordinates of each position point that the cleaning robot passes through when moving from the base station to the current position are corrected; Wherein, based on the total position error, the map position coordinates of each position point that the cleaning robot passes through when moving from the base station to the current position are corrected, including: Determining the proportion of each position point to the total position error; Determining the position sub-errors of each position point according to the error sharing ratio of each position point; The map position coordinates of each position point are corrected according to the position sub-errors of each position point.
Citation Information
Patent Citations
Robot map establishing and storing method
CN104035444A
Map building method for mobile robot and path planning method based on map
CN107314773A