CN115191868A - Edgewise cleaning method and cleaning robot - Google Patents
Edgewise cleaning method and cleaning robot Download PDFInfo
- Publication number
- CN115191868A CN115191868A CN202110385303.XA CN202110385303A CN115191868A CN 115191868 A CN115191868 A CN 115191868A CN 202110385303 A CN202110385303 A CN 202110385303A CN 115191868 A CN115191868 A CN 115191868A
- Authority
- CN
- China
- Prior art keywords
- closed loop
- cleaning
- boundary
- determining
- type
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004140 cleaning Methods 0.000 title claims abstract description 268
- 238000000034 method Methods 0.000 title claims abstract description 107
- 230000008569 process Effects 0.000 claims abstract description 52
- 230000002159 abnormal effect Effects 0.000 claims description 36
- 238000004590 computer program Methods 0.000 claims description 12
- 230000004888 barrier function Effects 0.000 claims description 10
- 238000013213 extrapolation Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 6
- 230000001360 synchronised effect Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012512 characterization method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000008602 contraction Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000004804 winding Methods 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/24—Floor-sweeping machines, motor-driven
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/4061—Steering means; Means for avoiding obstacles; Details related to the place where the driver is accommodated
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L2201/00—Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L2201/00—Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
- A47L2201/04—Automatic control of the travelling movement; Automatic obstacle detection
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
The embodiment of the application discloses an edge cleaning method and a cleaning robot, wherein the edge cleaning method comprises the following steps: in the process of the edge cleaning, when the detected obstacle is the set obstacle, the edge cleaning is continued.
Description
Technical Field
The application relates to the technical field of robots, in particular to a method for cleaning a rim and a cleaning robot.
Background
When the cleaning robot cleans any area: firstly, cleaning the boundary of the area along the edge; at the end of the edge cleaning, the interior of the area is cleaned. In the related art, the cleaning robot is easily disturbed by dynamic obstacles, such as people or pets, during the edgewise cleaning process to form a closed-loop area, and at this time, the cleaning robot recognizes that the edgewise cleaning is finished and cleans the inside of the closed-loop area, but some closed-loop areas are not required to be cleaned, thereby causing the cleaning robot to take some unnecessary paths more, and reducing the cleaning efficiency of the cleaning robot.
Disclosure of Invention
In view of this, embodiments of the present disclosure provide an edge cleaning method and a cleaning robot, so as to solve the technical problem in the related art that the cleaning efficiency is reduced due to the disturbance of a dynamic obstacle during the edge cleaning process of the robot.
In order to achieve the purpose, the technical scheme of the application is realized as follows:
the embodiment of the application provides an edge cleaning method, which comprises the following steps:
in the process of the edge cleaning, when the detected obstacle is the set obstacle, the edge cleaning is continued.
In the above solution, when the cleaning is continued, the method further includes:
determining the type of the formed first closed loop based on the first distance and the angle increment sum;
under the condition that the type of the first closed loop represents a set abnormal closed loop, navigating based on a pose corresponding to a backtracking point on a set boundary so as to continue to carry out edgewise cleaning; wherein,
the first distance represents a Manhattan distance between the current position and the starting point; the starting point represents the position where the initial collision with the obstacle occurs, or the initial collision is straight to the position of a set boundary; the angle increment sum represents the sum of the angle increments of every two adjacent key points in the key points between the current position and the starting point; the keypoints represent points recorded at set distances during the edgewise cleaning process.
In the foregoing solution, the determining the type of the formed first closed loop based on the sum of the first distance and the angle increment includes:
determining the type of the first closed loop based on the absolute value of the first angle increment total sum and the total walking track under the condition that the first distance is smaller than or equal to a first set threshold; or alternatively
Determining the type of the first closed loop based on the absolute value of the sum of the second angle increments and the second distance when the first distance is greater than the first set threshold; wherein,
the first angle increment sum represents the sum of the angle increments of every two adjacent key points in the process of advancing from the starting point to the current position; the second angle increment sum represents the sum of the angle increments of every two adjacent key points in the process of carrying out backward pushing on the starting point based on the current position; the second distance characterizes a manhattan distance of every two adjacent keypoints during the backward extrapolation.
In the foregoing solution, the determining the type of the first closed loop based on the absolute value of the first angle increment sum and the total walking trajectory includes:
and under the condition that the absolute value of the sum of the first angle increment is greater than a second set threshold value and the total travel track is greater than a third set threshold value, determining that the type of the first closed loop is a set normal closed loop.
In the foregoing solution, the determining the type of the first closed loop based on the absolute value of the second angle increment sum and the second distance includes:
determining the type of the first closed loop based on the second angle increment sum under the condition that the absolute value of the second angle increment sum is larger than a fourth set threshold value and the second distance is smaller than or equal to a fifth set threshold value; or alternatively
Determining the type of the first closed loop based on the poses and angles corresponding to the set number of first key points under the condition that the absolute value of the second angle increment sum is smaller than or equal to the fourth set threshold; wherein,
the set number of first keypoints represents consecutive keypoints between the current position and the starting point.
In the foregoing solution, the determining the type of the first closed loop based on the second angle increment sum includes:
under the condition that the sum of the second angle increment is less than zero, determining that the type of the first closed loop is a set first abnormal closed loop; or
Determining a type of the first closed loop based on a minimum gap between a first boundary and a second boundary and based on a size of the first closed loop if a second angular increment sum is greater than zero; wherein,
the first boundary characterizes a boundary of the first closed loop; the second boundary characterizes a maximum boundary determined by all the keypoints.
In the above solution, the determining the type of the first closed loop based on the minimum gap between the first boundary and the second boundary and based on the size of the first closed loop includes one of:
determining the type of the first closed loop as a set normal closed loop under the condition that the minimum clearance is larger than a set clearance and the size of the first closed loop is larger than a set size;
and determining the type of the first closed loop as a set second abnormal closed loop under the condition that the minimum clearance is smaller than or equal to the set clearance or the size of the first closed loop is smaller than or equal to the set size.
In the above scheme, the determining the type of the first closed loop based on the poses and angles corresponding to the set number of first key points includes:
determining a third distance and a corresponding first angle difference value based on the first information corresponding to the first key points and the second information corresponding to the second key points in the set number;
under the condition that two third distances are greater than a set distance threshold value and the corresponding first angle difference value is smaller than a set angle threshold value in the determined third distances, the type of the first closed loop is a set normal closed loop;
the first key point represents the current key point determined in the reverse pushing process; the corresponding second key points represent key points which are separated from the first key points by at least one key point in the set number of first key points; the third distance represents the Manhattan distance between the first key point and the corresponding second key point; the first information and the second information each include a pose and an angle of the cleaning robot.
In the above scheme, the method further comprises:
under the condition of navigation failure, the navigation system moves to a first set boundary in a straight line mode so as to carry out edge cleaning along the first set boundary; the first set boundary characterizes a set boundary closest to the current location.
In the foregoing solution, in the case that the type of the first closed loop represents a set abnormal closed loop, the method further includes:
marking the first closed loop and the first path as an inaccessible area; the first path characterizes a path between a set boundary and the first closed loop.
In the foregoing solution, the method further includes:
in the case of forming a set normal closed loop, the marked non-walkable region is cleared.
The embodiment of the present application further provides a cleaning robot, including:
and the edge cleaning unit is used for continuing edge cleaning when the detected obstacle is a set obstacle in the process of edge cleaning.
An embodiment of the present application further provides a cleaning robot including: a processor and a memory for storing a computer program capable of running on the processor,
wherein the processor is configured to execute the steps of any of the above-described edgewise cleaning methods when running the computer program.
The embodiment of the application also provides a storage medium, on which a computer program is stored, and the computer program is executed by a processor to realize the steps of any one of the above-mentioned edge cleaning methods.
In the embodiment of the application, in the process of the edgewise cleaning, when the detected obstacle is the set obstacle, the edgewise cleaning is continued. Therefore, when the detected obstacle is a set obstacle, for example, an isolated obstacle or a dynamic obstacle, the cleaning robot can avoid the set obstacle and continue to perform edgewise cleaning, and at the moment, the cleaning robot cannot form a closed loop along the boundary of the set obstacle, so that the phenomenon that the cleaning robot needs to walk more than needed paths due to the fact that the closed loop is formed by disturbance of the set obstacle can be avoided; even if the cleaning robot is disturbed by the dynamic barrier and moves around the dynamic barrier or the isolated barrier to form a closed loop, the cleaning robot continues to clean along the edge without cleaning the internal area of the closed loop, so that unnecessary paths caused by cleaning the internal area of the closed loop are avoided, repeated switching between the edge cleaning and the internal area cleaning is avoided, and the cleaning efficiency is improved.
Drawings
Fig. 1 is a schematic flow chart illustrating an implementation of an edge cleaning method according to an embodiment of the present disclosure;
FIG. 2 is a schematic flow chart illustrating an implementation of a method for edge cleaning according to another embodiment of the present disclosure;
FIG. 3 is a schematic diagram of a starting point provided by an embodiment of the present application;
fig. 4 is a schematic diagram illustrating a reverse pushing to a starting point based on a current position according to an embodiment of the present disclosure;
FIG. 5 is a schematic view of a gap between a first boundary and a second boundary provided by an embodiment of the present application;
FIG. 6 is a schematic diagram of an edge cleaning method provided by an embodiment of the present application;
FIG. 7 is a schematic flow chart of an implementation of determining the type of the first closed loop in an edge cleaning method according to an embodiment of the present application;
FIG. 8 is a schematic structural diagram of a cleaning robot provided in an embodiment of the present application;
fig. 9 is a schematic hardware component structure diagram of the cleaning robot provided in the embodiment of the present application.
Detailed Description
In the related art, the cleaning robot is easily disturbed by a dynamic obstacle during the edgewise cleaning process, and moves clockwise around an isolated obstacle to form a small clockwise closed loop, or moves counterclockwise around the isolated obstacle to form a small counterclockwise closed loop, at this time, the cleaning robot recognizes that the edgewise cleaning is finished, and cleans the inner area of the small clockwise closed loop or the small counterclockwise closed loop, but the inner area of the small clockwise closed loop does not need to be cleaned, so that the cleaning robot walks more than necessary paths, and the cleaning efficiency of the cleaning robot is reduced. In addition, when the cleaning of the inner area of the small counterclockwise closed loop is completed, the cleaning of the boundary of the cleaning area is continued, and thus, the cleaning robot repeatedly switches between the edgewise cleaning and the area inside cleaning, which consumes a long switching time and reduces the cleaning efficiency of the cleaning robot. The inner area of the counterclockwise closed loop needs to be cleaned, the isolated obstacles comprise dynamic obstacles, and obstacles in the cleaning area except the dynamic obstacles, such as tables, chairs, toys and the like.
In summary, in the related art, when the cleaning robot is disturbed by the dynamic obstacle during the edgewise cleaning process to form a closed loop, the cleaning robot cannot recognize whether the closed loop is a normal closed loop or an abnormal closed loop, and thus some unnecessary paths are taken or the cleaning robot repeatedly switches between the edgewise cleaning and the cleaning inside the area, which reduces the cleaning efficiency. The normal closed loop is a closed loop formed by walking one turn counterclockwise along a set boundary of the cleaning region.
The embodiment of the application provides a method for cleaning a rim, and in the process of cleaning the rim, when a detected obstacle is a set obstacle, the cleaning of the rim is continued. Therefore, when the detected obstacle is a set obstacle, for example, an isolated obstacle or a dynamic obstacle, the cleaning robot can avoid the set obstacle and continue to perform edgewise cleaning, and at the moment, the cleaning robot cannot form a closed loop along the boundary of the set obstacle, so that the phenomenon that the cleaning robot needs to walk more than needed paths due to the fact that the closed loop is formed by disturbance of the set obstacle can be avoided; even if the cleaning robot is disturbed by the dynamic barrier and moves around the dynamic barrier or the isolated barrier to form a closed loop, the cleaning robot continues to clean along the edge without cleaning the internal area of the closed loop, so that unnecessary paths caused by cleaning the internal area of the closed loop are avoided, repeated switching between the edge cleaning and the internal area cleaning is avoided, and the cleaning efficiency is improved.
In order to make the objects, technical solutions and advantages of the present application more clearly understood, the present application is further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application.
Fig. 1 is a schematic flow chart illustrating an implementation of an edge cleaning method according to an embodiment of the present application, wherein an execution subject of the flow chart is a cleaning robot. The cleaning robot can clean the ground and also can clean the table top and the like. As shown in fig. 1, the edge cleaning method includes:
step 101: in the process of the edge cleaning, when the detected obstacle is the set obstacle, the edge cleaning is continued.
Wherein, a sensor is arranged in the cleaning robot; sensors for monitoring the surroundings, for example for detecting obstacles, and for monitoring operating state data of the cleaning robot; the working state data comprises the angle of the robot, the pose of the robot, the edgewise state and the like. The pose represents the position and the pose of the cleaning robot; the edgewise state includes straight lines or along walls, which may also be referred to as edgewise; the edgewise state includes straight rows and along walls.
And under the condition that the cleaning function is started, the cleaning robot plans an edge path based on a set boundary corresponding to the area to be cleaned, and performs edge cleaning based on the planned edge path. In the process of cleaning along the edge, whether an obstacle exists on the front edge path or not can be detected through a first sensor in the cleaning robot, and when the obstacle exists on the front edge path, whether the obstacle is a set obstacle or not is judged; when the obstacle is a set obstacle, the obstacle can be bypassed to continue to be cleaned along the edge, and at the moment, a closed loop cannot be formed around the set obstacle; or when the obstacle is a set obstacle and a closed loop is formed around the set obstacle, the planned edgewise path can be returned, and the edgewise cleaning is continued, and at the moment, the inner area of the closed loop is not cleaned. Wherein the first sensor is used for detecting obstacles, the first sensor may be a ranging sensor, e.g. a lidar. The set obstacle includes a dynamic obstacle or an isolated obstacle, and the isolated obstacle refers to an obstacle existing in isolation.
In practical application, when the detected obstacle is a set obstacle, the implementation process of continuing the edgewise cleaning comprises at least one of the following steps:
when the detected obstacle is a dynamic obstacle, the cleaning robot may travel to the vicinity of the first obstacle and continue the edgewise cleaning in a case where the dynamic obstacle leaves the edgewise path.
When the detected obstacle is the set obstacle, the cleaning robot can avoid the set obstacle and continue to clean along the edge, and at the moment, the cleaning robot cannot form a closed loop along the boundary of the set obstacle. For example, in a scenario where a person, an animal, a toy, or the like enters the planned edgewise path after the cleaning robot plans the edgewise path, the cleaning robot avoids the set obstacle and continues the edgewise cleaning.
When the cleaning robot collides with a predetermined obstacle and deviates from the planned edgewise path, the cleaning robot returns to the planned edgewise path and continues edgewise cleaning. In this case, the set obstacle is usually a dynamic obstacle.
When the cleaning robot collides with a predetermined obstacle and travels around the predetermined obstacle to form a closed loop, the cleaning robot may return to the planned edgewise path based on the position of the collision to continue the edgewise cleaning, or may travel to a predetermined boundary closest to the current position to continue the edgewise cleaning.
When the detected first obstacle is a dynamic obstacle, the cleaning robot collides with the dynamic obstacle and travels to the position of the second obstacle, or when the second obstacle is a set obstacle and travels around the second obstacle to form a closed loop, the cleaning robot can return to the planned edgewise path based on the position of the collision with the first obstacle and continue to perform edgewise cleaning; or the user can travel to the set boundary closest to the current position and continue the edgewise cleaning.
When it is determined that no obstacle exists on the front edgewise path, performing edgewise cleaning along the planned edgewise path; when it is determined that there is an obstacle in front and the obstacle is not a set obstacle such as a wall, edgewise cleaning is performed along the boundary of the obstacle.
In the embodiment of the application, in the process of the edgewise cleaning, when the detected obstacle is the set obstacle, the edgewise cleaning is continued. Therefore, when the detected obstacle is a set obstacle, for example, an isolated obstacle or a dynamic obstacle, the cleaning robot can avoid the set obstacle and continue to perform edgewise cleaning, and at the moment, the cleaning robot cannot form a closed loop along the boundary of the set obstacle, so that the phenomenon that the cleaning robot needs to walk more than needed paths due to the fact that the closed loop is formed by disturbance of the set obstacle can be avoided; even if the cleaning robot is disturbed by the dynamic barrier and moves around the dynamic barrier or the isolated barrier to form a closed loop, the cleaning robot continues to clean the edge without cleaning the internal area of the closed loop, so that unnecessary paths caused by cleaning the internal area of the closed loop are avoided, repeated switching between the edge cleaning and the internal area cleaning is avoided, and the cleaning efficiency is improved. Considering that, during the course of the edgewise cleaning, there may be a scenario in which a closed loop is formed due to disturbance of a dynamic obstacle, in order to accurately determine whether the formed closed loop is an abnormal closed loop and to continue the edgewise cleaning when the abnormal closed loop is formed, referring to fig. 2, in some embodiments, while the edgewise cleaning is continued, the method further includes:
step 201: determining the type of the formed first closed loop based on the first distance and the angle increment sum; the first distance represents the Manhattan distance between the current position and the starting point; the starting point represents the position where the initial collision with the obstacle occurs, or the initial collision is straight to the position of a set boundary; the angle increment sum represents the sum of the angle increments of every two adjacent key points in the key points between the current position and the starting point; the keypoints represent points recorded at set distances during the edgewise cleaning process.
In practical use, as shown in fig. 3, when the cleaning robot starts the cleaning function, the cleaning robot moves straight from the initial position where the cleaning robot is located to the nearest set boundary to perform edgewise cleaning; and determining the position where the first straight line runs to the set boundary as a starting point. In the process of going straight from the initial position to the nearest set boundary, when the obstacle collides for the first time, the position colliding for the first time with the obstacle is determined as the starting point, when the obstacle goes straight to the set boundary for the first time, the position going straight to the set boundary for the first time is determined as a new starting point, and the new starting point is used for replacing the previous starting point. In the process of straight traveling from the initial position to the nearest set boundary, the position where the vehicle firstly travels straight to the set boundary is determined as a starting point, and in the process of edgewise cleaning, the position where the vehicle firstly collides with the obstacle is determined as a new starting point.
In the process that the cleaning robot moves straight from the initial position to the nearest set boundary and in the process of cleaning along the set boundary, recording a key point at set intervals, and recording the corresponding pose, the edge state and the angle of the robot of the key point in an associated manner. In practical application, the cleaning robot sets the position of the starting point as a first key point. In practice, the set distance may be 100 mm.
Calculating the Manhattan distance between the current position and the starting point to obtain a first distance in the walking process of the cleaning robot; and determining the angle increment sum based on the angles of the robots corresponding to every two adjacent key points. Wherein the angle increment sum comprises a first angle increment sum and a second angle increment sum; the first angle increment sum represents the sum of the angle increments of every two adjacent key points in the process of advancing from the starting point to the current position; the second angle increment sum represents the sum of the angle increments of every two adjacent key points in the process of carrying out backward pushing to the starting point based on the current position. A first key point corresponding to the current position represents a key point closest to the current position; and performing reverse pushing based on the first key point, namely performing reverse pushing to the starting point by taking the key point closest to the current position as the starting point.
The cleaning robot determines whether a first closed loop is currently formed based on the first distance and a first set threshold value in the case that the first distance and the sum of the angular increments are determined, and determines the type of the currently formed first closed loop in the case that the first closed loop is currently formed.
The shape of the first closed loop may be an irregular shape or a regular shape. The type of the first closed loop includes a set normal closed loop or a set abnormal closed loop. The set normal closed loop is a counterclockwise closed loop formed by the cleaning robot walking counterclockwise along all set boundaries of the cleaning region, and the set abnormal closed loop is a closed loop formed by the cleaning robot walking along part of the set boundaries of the cleaning region. When the type of the first closed loop is a set normal closed loop, representing that the cleaning robot finishes edge cleaning; when the type of the first closed loop is a set abnormal closed loop, the cleaning robot is characterized not to finish the edge cleaning. The set abnormal closed loop includes a set first abnormal closed loop and a set second abnormal closed loop. The set first abnormal closed loop represents a clockwise small closed loop; the set second abnormal closed loop characterizes a counterclockwise small closed loop. That is, the set normal closed loop is a counterclockwise large closed loop, and the size of the set normal closed loop is much larger than that of the set second abnormal closed loop.
It should be noted that in the case where it is determined that the first closed loop is not currently formed based on the sum of the first distance and the angle increment, the edgewise cleaning is continued.
It should be noted that, when the cleaning robot collides with an obstacle for a non-first time, the cleaning robot moves straight around the obstacle, and the collision position is not determined as the starting point.
In order to accurately determine the type of the currently formed first closed loop, in some embodiments, the determining the type of the currently formed first closed loop based on the sum of the first distance and the angle increment includes:
under the condition that the first distance is smaller than or equal to a first set threshold value, determining the type of the first closed loop based on the absolute value of the first angle increment sum and the total walking track; or
Determining the type of the first closed loop based on the absolute value of the sum of the second angle increments and the second distance when the first distance is greater than the first set threshold; wherein,
the second distance characterizes a manhattan distance of every two adjacent keypoints during the backward extrapolation.
Here, in a case where the first distance is less than or equal to a first set threshold value, a first angle increment sum is determined based on angle increments of every two adjacent key points in the process of traveling from the start point to the current position; recording a total walking track corresponding to the current position of the cleaning robot, wherein the total walking track is the total length of all tracks of the cleaning robot; and determining whether a first closed loop is formed currently or not based on the first angle increment sum and a second set threshold value and based on the total walking track and a third set threshold value, and determining the type of the first closed loop under the condition that the first closed loop is formed currently. In practical applications, the second set threshold may be 350 degrees, and the third set threshold may be 2 meters. The first set threshold may be 1 meter. The second set threshold value characterizes the absolute value of the sum of the corresponding angular increments in forming the set normal closed loop.
In order to determine the set normal closed loop more accurately, in some embodiments, the determining the type of the first closed loop based on the absolute value of the sum of the first angle increments and the total walking trajectory includes:
and under the condition that the absolute value of the first angle increment sum is greater than a second set threshold value and the total travel track is greater than a third set threshold value, determining that the type of the first closed loop is a set normal closed loop.
Here, in a case where the first distance is less than or equal to a first set threshold, determining whether an absolute value of the first angle increment sum is greater than a second set threshold, to obtain a first determination result; and judging whether the total walking track is larger than a third set threshold value or not to obtain a second judgment result. And under the condition that the first judgment result represents that the absolute value of the sum of the first angle increment is greater than a second set threshold value and the second judgment result represents that the total travel track is greater than a third set threshold value, determining that a first closed loop is formed currently and the type of the first closed loop is a set normal closed loop. In practical applications, the third set threshold may be 2 meters.
And under the condition that the first distance is smaller than or equal to a first set threshold value, and the absolute value of the first angle increment sum represented by the first judgment result is smaller than or equal to a second set threshold value, or under the condition that the total walking track represented by the second judgment result is smaller than or equal to a third set threshold value, determining that a first closed loop is not formed at present, and enabling the cleaning robot to continue to move straight to continue to clean along the edge.
Referring to fig. 4, when the first distance is greater than the first set threshold, performing a reverse thrust from a key point closest to the current position to the starting point, and determining a second angle increment sum based on angle increments of every two adjacent key points in the reverse thrust process; and determining the Manhattan distance of every two adjacent key points in the backward pushing process to obtain a second distance. And under the condition that the second angle increment sum and the second distance are determined, determining whether a first closed loop is formed currently or not based on the second angle increment sum and a fourth set threshold value and based on the second distance and a fifth set threshold value, and under the condition that the first closed loop is formed currently, determining the type of the first closed loop.
To more accurately determine the type of the first closed loop, in some embodiments, the determining the type of the first closed loop based on the absolute value of the sum of the second angle increments and the second distance includes:
determining the type of the first closed loop based on the second angle increment sum under the condition that the absolute value of the second angle increment sum is larger than a fourth set threshold value and the second distance is smaller than or equal to a fifth set threshold value; or
Determining the type of the first closed loop based on the poses and angles corresponding to the set number of first key points under the condition that the absolute value of the second angle increment sum is smaller than or equal to the fourth set threshold; wherein the set number of first keypoints characterizes consecutive keypoints between the current position and the starting point.
If the first distance is greater than the first set threshold, judging whether the absolute value of the second angle increment sum is greater than a fourth set threshold to obtain a third judgment result; and judging whether the second distance is smaller than a fifth set threshold value or not to obtain a fourth judgment result. And under the condition that the third judgment result represents that the absolute value of the second angle increment sum is greater than a fourth set threshold and the fourth judgment result represents that the second distance is less than or equal to a fifth set threshold, determining that a first closed loop is formed currently, judging whether the second angle increment sum is greater than zero to obtain a fifth judgment result, and determining the type of the first closed loop based on the fifth judgment result. The fourth set threshold may be the same as or different from the second set threshold, and in actual application, the fourth set threshold may be 350 degrees.
And under the condition that the third judgment result represents that the absolute value of the second angle increment sum is smaller than or equal to a fourth set threshold, determining whether a first closed loop is formed currently or not based on the poses and angles corresponding to the set number of first key points, and under the condition that the first closed loop is formed currently, determining the type of the first closed loop. In practical applications, the set number is greater than or equal to 10, that is, there are at least 10 consecutive key points between the current position and the starting point. In practical application, under the condition that the total number of the recorded key points is more than 30 and at least 10 continuous key points exist between the front position and the starting point, the corresponding poses and angles of the first key points in quantity are set, and the type of the first closed loop is determined.
In order to prevent the cleaning robot from repeatedly winding due to the error of the second angle increment sum, considering that the starting point may not be reliable due to the error in practical application, in some embodiments, the determining the type of the first closed loop based on the poses and angles corresponding to the set number of first key points includes:
determining a third distance and a corresponding first angle difference value based on the first information corresponding to the first key points and the second information corresponding to the second key points in the set number;
under the condition that two third distances are greater than a set distance threshold value and the corresponding first angle difference value is smaller than a set angle threshold value in the determined third distances, the type of the first closed loop is a set normal closed loop;
the first key point represents the current key point determined in the reverse pushing process; the corresponding second key points represent key points which are separated from the first key points by at least one key point in the set number of first key points; the third distance represents the Manhattan distance between the first key point and the corresponding second key point; the first information and the second information each include a pose and an angle of the cleaning robot. In practical application, two key points are separated between the first key point and the corresponding second key point. The current key points determined in the process of backward pushing are dynamically changed.
Here, when the absolute value of the sum of the second angle increments is less than or equal to the fourth set threshold and there are at least 10 consecutive key points between the current position and the start point, the third distance and the corresponding first angle difference are determined based on the first information corresponding to the second key point and the second information corresponding to the third key point. The third distance is determined by the pose in the first information and the corresponding pose in the second information; the first angle difference is determined by the angle in the first information and the corresponding angle in the second information.
It should be noted that, when there are no two third distances in the determined third distances that are greater than the set distance threshold, or the corresponding first angle difference is greater than or equal to the set angle threshold, it is determined that the first closed loop is not currently formed, and the cleaning robot continues to move straight to continue the edgewise cleaning. In practical application, the set angle threshold is 40 degrees.
Taking the example that the cleaning robot continuously records key points 1 to 10 in the process of walking from the starting point to the current position, and two key points are separated between the first key point and the corresponding second key point, the first key point and the corresponding second key point are described as follows:
when the first key point is the key point 10, the second key point corresponding to the first key point represents the key point 7 which is separated from the key point 10 by two key points when the key point 10 starts to perform backward pushing to the starting point; when the first key point is the key point 9, the representation of the second key point corresponding to the first key point starts to reversely push to the starting point by the key point 9, and the key point 6 is separated from the key point 9 by two key points; when the first key point is the key point 8, the representation of the second key point corresponding to the first key point starts to reversely push to the starting point by the key point 8, and the key point 5 with two key points is separated from the key point 8; and so on, the numbers of all the first key points and the numbers of the corresponding second key points can be determined.
To more accurately determine the type of the first closed loop, in some embodiments, the determining the type of the first closed loop based on the second angle increment sum includes:
under the condition that the sum of the second angle increment is less than zero, determining that the type of the first closed loop is a set first abnormal closed loop; or
Determining a type of the first closed loop based on a minimum gap between a first boundary and a second boundary and based on a size of the first closed loop if a second angular increment sum is greater than zero; wherein,
the first boundary characterizes a boundary of the first closed loop; the second boundary characterizes a maximum boundary determined by all the keypoints.
Here, in a case where the absolute value of the second angle increment sum is greater than a fourth set threshold and the second distance is less than or equal to a fifth set threshold, determining whether the second angle increment sum is less than zero, and obtaining a fifth determination result; and under the condition that the fifth judgment result represents that the sum of the second angle increment is less than zero, representing that a first closed loop is formed currently, wherein the type of the first closed loop is a set first abnormal closed loop.
And under the condition that the fifth judgment result represents that the sum of the second angle increments is larger than zero, the first closed loop is represented to be formed currently, the first closed loop represents a counterclockwise closed loop, and the cleaning robot determines whether the type of the first closed loop is the set normal closed loop or the counterclockwise small closed loop based on the minimum gap between the first boundary and the second boundary and the size of the first closed loop because the first closed loop may be the set normal closed loop or the counterclockwise small closed loop.
Based on the minimum gap and the set gap between the first boundary and the second boundary, and based on the size and the set size of the first closed loop, determining the type of the first closed loop by the following implementation process:
determining the boundary of a first closed loop based on position information in a pose corresponding to an effective key point between the current position and the starting point to obtain a first boundary, wherein the first boundary is positioned outside the first closed loop; determining the maximum boundaries corresponding to all the effective key points based on the position information in the poses corresponding to all the effective key points recorded by the cleaning robot to obtain second boundaries; in the case where the first boundary and the second boundary are determined, a minimum gap between the first boundary and the second boundary is determined, and the type of the first closed loop is determined based on the minimum gap between the first boundary and the second boundary and the set gap, and based on the size of the first closed loop and the set size. As shown in fig. 5, the small rectangle characterizes the first boundary, the large rectangle characterizes the second boundary, and the gap between the small rectangle and the large rectangle characterizes the gap between the first boundary and the second boundary.
When the edge state corresponding to the key point is along the wall, determining the key point as an effective key point; and when the edgewise state corresponding to the key point is a straight line, determining the key point as an invalid key point. In practical application, when the absolute value of the second angle increment sum is greater than the fourth set threshold and the second distance is less than or equal to the fifth set threshold, the second angle increment sum is greater than zero and the recorded edgewise state corresponding to the at least one key point is a straight line, at this time, the representation cleaning robot forms a small counterclockwise closed loop outside the set boundary, that is, the type of the currently formed first closed loop is the set second abnormal closed loop.
Considering that the cleaning robot forms a small counterclockwise closed loop outside the set boundary, in order to prevent the cleaning robot from repeatedly performing edge deletion on a small counterclockwise closed loop for a long time, in some embodiments, the determining the type of the first closed loop based on the minimum gap between the first boundary and the second boundary and based on the size of the first closed loop includes one of:
under the condition that the minimum clearance is larger than a set clearance and the size of the first closed loop is larger than a set size, the type of the first closed loop is a set normal closed loop;
and in the case that the minimum clearance is smaller than or equal to the set clearance or the size of the first closed loop is smaller than or equal to the set size, the type of the first closed loop is a set second abnormal closed loop.
If the sum of the second angle increments is greater than zero, judging whether the minimum gap between the first boundary and the second boundary is greater than a set gap to obtain a sixth judgment result; when the sixth judgment result represents that the minimum gap between the first boundary and the second boundary is larger than the set gap, the first closed loop is represented to be far away from the set boundary, and at the moment, whether the size of the first closed loop is larger than the set size is judged to obtain a seventh judgment result; and under the condition that the seventh judgment result represents that the size of the first closed loop is larger than the set size, determining the type of the currently formed first closed loop as the set normal closed loop.
And determining the type of the currently formed first closed loop as a set second abnormal closed loop under the condition that the sixth judgment result represents that the minimum gap between the first boundary and the second boundary is less than or equal to the set gap or the condition that the seventh judgment result represents that the size of the first closed loop is less than or equal to the set size.
In practical application, the length of the first closed loop is larger than 0.5 m and the width of the first closed loop is larger than 0.5 m.
Step 202: and under the condition that the type of the first closed loop represents the set abnormal closed loop, navigating based on the corresponding pose of the backtracking point on the set boundary so as to continue the edgewise cleaning.
Here, when it is determined that the first closed loop currently formed is the set abnormal closed loop, the cleaning robot determines key points on the set boundary from the recorded key points, determines the determined key points as backtracking points, and navigates the cleaning robot based on the pose of the determined backtracking points to trigger the cleaning robot to travel to the backtracking points to continue edgewise cleaning based on the backtracking points. In practical application, the determined backtracking point may be based on a third key point which is recorded latest before the robot collides with the obstacle, and the backtracking point may be a key point adjacent to the third key point. As shown in fig. 6, the segment of the dotted line represents the key point of the record, and the key point before and closest to the collision position is determined as the backtracking point by the cleaning robot.
In practical application, when the cleaning robot navigates based on the pose corresponding to the backtracking point on the set boundary, navigation may be successful or failed. The navigation success characterization can plan a path from the current position to the backtracking point, and the cleaning robot can travel from the current position to the backtracking point based on the planned path, so that the edgewise cleaning is continued along a set boundary where the backtracking point is located. The navigation failure represents that no rule marks out a path from the current position to the backtracking point, and the robot cannot move to the backtracking point.
In order to continue the edgewise cleaning to prevent the missed cleaning in consideration of the fact that the cleaning robot cannot travel to the backtracking point when the navigation fails, in some embodiments, in case of the navigation failure, the cleaning robot travels straight to a first set boundary to perform the edgewise cleaning along the first set boundary; the first set boundary characterizes a set boundary closest to the current location.
Here, when the navigation fails, the cleaning robot determines a first set boundary closest to the current position based on the position information of the set boundary and the position information of the current position, and moves straight to the first set boundary to perform edgewise cleaning along the first set boundary.
In practical application, in consideration of an accuracy error in a navigation process, when the navigation is successful, the cleaning robot can perform polygon outward expansion or polygon inward contraction according to key points near the current position to perform straight movement towards an obstacle (such as a wall) closest to the current position, and continue to perform edge following after colliding with the obstacle.
In order to prevent the cleaning robot from following the edge again to an isolated obstacle or to perform the cleaning along the edge of the inner area of the first closed loop, in some embodiments, in case the type of the first closed loop characterizes a set abnormal closed loop, the method further comprises:
marking the first closed loop and the first path as an inaccessible area; the first path characterizes a path between a set boundary and the first closed loop.
Here, the cleaning robot marks the first closed loop and the path between the set boundary and the first closed loop as an unmovable area, so that when the cleaning robot follows the path again or travels to the position where the first closed loop is located, it can continue to follow the path bypassing the isolated obstacle. As shown in fig. 5, the first closed loop is a clockwise small closed loop, and the path between the set boundary and the first closed loop represents a line segment between the collision position and the clockwise small closed loop.
In order to avoid missing scanning in a scenario where the set abnormal closed loop is formed during the border process and then the set normal closed loop is formed, in some embodiments, the method further includes:
in the case of forming a set normal closed loop, the marked non-walkable area is cleared.
Here, when it is determined that the set normal closed loop is currently formed, the cleaning robot indicates that edgewise cleaning is currently completed, and the cleaning robot clears the marked non-walkable region to prevent the missing scan. In practice, the cleaning robot clears the marked first closed loop and sets a path between the boundary and the first closed loop.
In the embodiment of the application, in the process of edgewise cleaning, the type of the formed first closed loop is determined based on the first distance and the angle increment sum; under the condition that the type of the first closed loop represents the set abnormal closed loop, the cleaning robot is navigated based on the pose corresponding to the backtracking point on the set boundary to continue the edgewise cleaning, so that the type of the first closed loop can be accurately identified, under the condition that the type of the first closed loop represents the set abnormal closed loop, the edgewise cleaning is continued without cleaning the internal area of the first closed loop, unnecessary paths caused by cleaning the internal area of the clockwise closed loop can be avoided, or repeated switching between the edgewise cleaning and the internal area cleaning is avoided, and the cleaning efficiency is improved.
Fig. 7 is a schematic flow chart of implementation of determining a type of a first closed loop in an edgewise cleaning method provided in an embodiment of the present application, where as shown in fig. 7, the method for determining the type of the first closed loop includes:
step 701: during the course of the edgewise cleaning, the key points as well as the starting points are recorded.
Step 702: judging whether the first distance is greater than a first set threshold value; the first distance represents a manhattan distance between the current position and the starting point.
In practical application, the first set threshold is 1 meter.
Step 703: and under the condition that the first distance is smaller than or equal to a first set threshold value, judging whether the absolute value of the first angle increment sum is larger than a second set threshold value or not, and judging whether the total walking track is larger than a third set threshold value or not.
Wherein the first angle increment sum is indicative of the sum of the angle increments of every two adjacent key points in the process of proceeding from the starting point to the current position. In practical applications, the second set threshold may be 350 degrees, and the third set threshold may be 2 meters.
When the absolute value of the sum of the first angle increment is larger than a second set threshold value and the total travel track is larger than a third set threshold value, the fact that a first closed loop is formed currently is represented, and the first closed loop is a set normal closed loop. And when the absolute value of the first angle increment sum is less than or equal to a second set threshold value or the total travel track is less than or equal to a third set threshold value, the cleaning robot is characterized that a first closed loop is not formed currently and moves straightly.
Step 704: and in the case that the first distance is greater than the first set threshold, judging whether the absolute value of the second angle increment sum is greater than a fourth set threshold, and judging whether the second distance is less than or equal to a fifth set threshold.
The second angle increment sum represents the sum of the angle increments of every two adjacent key points in the process of carrying out backward thrust to the starting point based on the current position; the second distance characterizes the manhattan distance of every two adjacent keypoints in the backward extrapolation process. In practical applications, the fourth set threshold may be 350 degrees, and the fifth set threshold may be 1 meter.
In the case where the absolute value of the second angle increment sum is less than or equal to the fourth set threshold value, step 705 is executed. In case that the absolute value of the second angle increment sum is greater than the fourth set threshold and the second distance is less than or equal to the fifth set threshold, it is characterized that the first closed loop has been formed currently, step 706 is performed, at which time the cleaning robot judges the type of the formed first closed loop through step 706 or 707.
Step 705: and under the condition that the absolute value of the second angle increment sum is smaller than or equal to a fourth set threshold, determining whether a first closed loop is formed or not based on the poses and angles corresponding to the set number of first key points.
Here, the determining whether to form the first closed loop based on the poses and angles corresponding to the set number of first keypoints includes:
determining a third distance and a corresponding first angle difference value based on the first information corresponding to the first key points and the second information corresponding to the second key points in the set number;
and judging whether two third distances in the determined third distances are larger than a set distance threshold value or not, and judging whether two first angle difference values in the determined first angle difference values are smaller than the set angle threshold value or not. And under the condition that two third distances are greater than a set distance threshold value in the determined third distances and the first angle difference values corresponding to the two third distances are both smaller than the set angle threshold value, determining that a first closed loop is formed currently and the first closed loop is a set normal closed loop.
Under the condition that only one of the determined third distances is greater than the set distance threshold value, or under the condition that all the determined third distances are less than or equal to the set distance threshold value, representing that a first closed loop is not formed currently; and when two third distances are determined to be greater than the set distance threshold value in the determined third distances and at least one first angle difference value exists in the first angle difference values corresponding to the two third distances and is greater than or equal to the set distance threshold value, representing that a first closed loop is not formed currently, and continuing to move straight. In practical application, the set angle threshold is 40 degrees.
The first key point represents the current key point in the reverse pushing process; the corresponding second key point represents the key point which is separated from the first key point by two key points in the set number of first key points; the third distance represents the Manhattan distance between the first key point and the corresponding second key point; the first information and the second information each include a pose and an angle of the cleaning robot.
Step 706: and under the condition that the absolute value of the second angle increment sum is greater than a fourth set threshold value and the second distance is less than or equal to a fifth set threshold value, judging whether the second angle increment sum is greater than zero.
And under the condition that the sum of the second angle increment is less than zero, the first closed loop formed by the characterization is a clockwise small closed loop.
Step 707: and under the condition that the sum of the second angle increment is larger than zero, judging whether the edgewise track has straight running or not, and judging whether the size of the closed-loop area is larger than a set size or not.
The cleaning robot judges whether the edgewise track has straight lines or not based on the edgewise state corresponding to a key point between the current position and the starting point, wherein when the edgewise state corresponding to any key point between the current position and the starting point represents the straight lines, the edgewise track is represented to have the straight lines; when the edgewise state representation corresponding to all key points between the current position and the starting point is along the wall, the representation edgewise track does not have straight line.
The cleaning robot may determine a size of the first closed loop based on a boundary of the formed first closed loop, and determine whether the size of the first closed loop is greater than a set size; in practical application, the set dimension represents that the length and the width of the closed loop are both 0.5 meter.
Under the condition that no straight line exists along the edge track and the size of the closed loop area is larger than the set size, representing that the formed first closed loop is a set normal closed loop; in the case that the straight line exists along the edge track or the size of the closed loop area is smaller than or equal to the set size, the formed first closed loop is characterized as a small counterclockwise closed loop.
It should be noted that the clockwise small closed loop and the counterclockwise small closed loop are both set abnormal closed loops.
To implement the edge cleaning method according to the embodiment of the present application, a cleaning robot is further provided according to an embodiment of the present application, and as shown in fig. 8, the cleaning robot includes:
and an edge cleaning unit 81 for continuing the edge cleaning when the detected obstacle is a set obstacle during the edge cleaning.
In some embodiments, the cleaning robot further comprises:
a determining unit, configured to determine a type of the formed first closed loop based on the first distance and the angle increment sum;
the navigation unit is used for navigating based on the pose corresponding to the backtracking point on the set boundary under the condition that the type of the first closed loop represents the set abnormal closed loop so as to continue to carry out edgewise cleaning; wherein,
the first distance represents a Manhattan distance between the current position and the starting point; the starting point represents the position where the initial collision with the obstacle occurs, or the initial collision is straight to the position of a set boundary; the angle increment sum represents the sum of the angle increments of every two adjacent key points in the key points between the current position and the starting point; the keypoints represent points recorded at set distances during the edgewise cleaning process.
In some embodiments, the determining unit is to:
determining the type of the first closed loop based on the absolute value of the first angle increment total sum and the total walking track under the condition that the first distance is smaller than or equal to a first set threshold; or alternatively
Determining the type of the first closed loop based on the absolute value of the sum of the second angle increments and the second distance when the first distance is greater than the first set threshold; wherein,
the first angle increment sum characterizes the sum of the angle increments of every two adjacent key points in the process of advancing from the starting point to the current position; the second angle increment sum represents the sum of the angle increments of every two adjacent key points in the process of carrying out backward thrust on the starting point based on the current position; the second distance characterizes a manhattan distance of every two adjacent keypoints during the backward extrapolation.
In some embodiments, the determining unit is to: and under the condition that the absolute value of the sum of the first angle increment is greater than a second set threshold value and the total travel track is greater than a third set threshold value, determining that the type of the first closed loop is a set normal closed loop.
In some embodiments, the determining unit is to:
under the condition that the absolute value of the second angle increment sum is larger than a fourth set threshold value and the second distance is smaller than or equal to a fifth set threshold value, determining the type of the first closed loop based on the second angle increment sum; or
Determining the type of the first closed loop based on the poses and angles corresponding to the set number of first key points under the condition that the absolute value of the second angle increment sum is smaller than or equal to the fourth set threshold; wherein,
the set number of first keypoints represents consecutive keypoints between the current position and the starting point.
In some embodiments, the determining unit is to:
under the condition that the sum of the second angle increment is less than zero, determining that the type of the first closed loop is a set first abnormal closed loop; or alternatively
Determining a type of the first closed loop based on a minimum gap between a first boundary and a second boundary and based on a size of the first closed loop if a second angular increment sum is greater than zero; wherein,
the first boundary characterizes a boundary of the first closed loop; the second boundary characterizes a maximum boundary determined by all the keypoints.
In some embodiments, the determining unit is configured to perform one of:
determining the type of the first closed loop as a set normal closed loop under the condition that the minimum clearance is larger than a set clearance and the size of the first closed loop is larger than a set size;
and under the condition that the minimum clearance is smaller than or equal to the set clearance or the size of the first closed loop is smaller than or equal to the set size, determining the type of the first closed loop as a set second abnormal closed loop.
In some embodiments, the determining unit is to:
determining a third distance and a corresponding first angle difference value based on a set number of first information corresponding to the first key points and second information corresponding to the second key points;
under the condition that two third distances are larger than a set distance threshold value and the corresponding first angle difference value is smaller than a set angle threshold value in the determined third distances, the type of the first closed loop is a set normal closed loop;
the first key point represents the current key point determined in the reverse pushing process; the corresponding second key points represent key points which are separated from the first key points by at least one key point in the set number of first key points; the third distance represents the Manhattan distance between the first key point and the corresponding second key point; the first information and the second information each include a pose and an angle of the cleaning robot.
In some embodiments, the navigation unit is further configured to:
controlling the cleaning robot to move straight to a first set boundary under the condition of navigation failure so as to perform edge cleaning along the first set boundary; the first set boundary characterizes a set boundary closest to the current location.
In some embodiments, in the case where the type of the first closed loop characterizes a set abnormal closed loop, the cleaning robot further includes:
a marking unit for marking the first closed loop and the first path as an inaccessible area; the first path characterizes a path between a set boundary and the first closed loop.
In some embodiments, the cleaning robot further comprises:
and the clearing unit is used for clearing the marked non-walkable area under the condition of forming a set normal closed loop.
In practical applications, each Unit included in the cleaning robot may be implemented by a Processor in the cleaning robot, such as a Central Processing Unit (CPU), a Digital Signal Processor (DSP), a Micro Control Unit (MCU), or a Programmable Gate Array (FPGA). Of course, the processor needs to run the program stored in the memory to implement the functions of the above-described program modules.
It should be noted that: in the embodiment, when the cleaning robot performs the edgewise cleaning, only the division of the program modules is illustrated, and in practical applications, the processing distribution may be completed by different program modules according to needs, that is, the internal structure of the cleaning robot is divided into different program modules to complete all or part of the processing described above. In addition, the cleaning robot provided by the above embodiment and the embodiment of the edge cleaning method belong to the same concept, and the specific implementation process thereof is described in detail in the embodiment of the method, which is not described again here.
Based on the hardware implementation of the program module, in order to implement the method of the embodiment of the present application, the embodiment of the present application further provides a cleaning robot. Fig. 9 is a schematic diagram of a hardware composition structure of the cleaning robot according to the embodiment of the present application, and as shown in fig. 9, the cleaning robot 9 includes:
a communication interface 91 capable of information interaction with other devices such as network devices and the like;
and the processor 92 is connected with the communication interface 91 to realize information interaction with other equipment, and is used for executing the edgewise cleaning method provided by one or more of the technical solutions when running a computer program. And the computer program is stored on the memory 93.
Of course, in practice, the various components in the cleaning robot 9 are coupled together by means of a bus system 94. It will be appreciated that the bus system 94 is used to enable communications among the components of the connection. The bus system 94 includes a power bus, a control bus, and a status signal bus in addition to a data bus. For clarity of illustration, however, the various buses are labeled as bus system 94 in fig. 9.
The memory 93 in the embodiment of the present application is used to store various types of data to support the operation of the cleaning robot 9. Examples of such data include: any computer program for operating on the cleaning robot 9.
It will be appreciated that the memory 93 can be either volatile memory or nonvolatile memory, and can include both volatile and nonvolatile memory. Among them, the nonvolatile Memory may be a Read Only Memory (ROM), a Programmable Read Only Memory (PROM), an Erasable Programmable Read-Only Memory (EPROM), an Electrically Erasable Programmable Read-Only Memory (EEPROM), a magnetic random access Memory (FRAM), a magnetic random access Memory (Flash Memory), a magnetic surface Memory, an optical Disc, or a Compact Disc Read-Only Memory (CD-ROM); the magnetic surface storage may be disk storage or tape storage. Volatile Memory can be Random Access Memory (RAM), which acts as external cache Memory. By way of illustration and not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), synchronous Static Random Access Memory (SSRAM), dynamic Random Access Memory (DRAM), synchronous Dynamic Random Access Memory (SDRAM), double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), enhanced Synchronous Dynamic Random Access Memory (ESDRAM), enhanced Synchronous Dynamic Random Access Memory (Enhanced DRAM), synchronous Dynamic Random Access Memory (SLDRAM), direct Memory (DRmb Access), and Random Access Memory (DRAM). The memory 93 described in embodiments herein is intended to comprise, without being limited to, these and any other suitable types of memory.
The method disclosed in the embodiment of the present application can be applied to the processor 92, or implemented by the processor 92. The processor 92 may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the above method may be performed by instructions in the form of hardware, integrated logic circuits, or software in the processor 92. The processor 92 described above may be a general purpose processor, DSP, or other programmable logic device, discrete gate or transistor logic device, discrete hardware components, or the like. Processor 92 may implement or perform the methods, steps, and logic blocks disclosed in the embodiments of the present application. A general purpose processor may be a microprocessor or any conventional processor or the like. The steps of the method disclosed in the embodiments of the present application may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium located in the memory 93, and the processor 92 reads the program in the memory 93 and performs the steps of the aforementioned method in combination with its hardware.
Optionally, when the processor 92 executes the program, the corresponding process implemented by the terminal in each method of the embodiment of the present application is implemented, and for brevity, is not described again here.
In an exemplary embodiment, the present application further provides a storage medium, specifically a computer-readable storage medium, for example, a first memory 93 storing a computer program, which is executable by the processor 92 of the cleaning robot to perform the steps of the foregoing method. The computer readable storage medium may be Memory such as FRAM, ROM, PROM, EPROM, EEPROM, flash Memory, magnetic surface Memory, optical disk, or CD-ROM.
In the several embodiments provided in the present application, it should be understood that the disclosed apparatus and method may be implemented in other ways. The above-described device embodiments are merely illustrative, for example, the division of the unit is only a logical functional division, and there may be other division ways in actual implementation, such as: multiple units or components may be combined, or may be integrated into another system, or some features may be omitted, or not implemented. In addition, the coupling, direct coupling or communication connection between the components shown or discussed may be through some interfaces, and the indirect coupling or communication connection between the devices or units may be electrical, mechanical or in other forms.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed on a plurality of network units; some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, all functional units in the embodiments of the present application may be integrated into one processing module, or each unit may be separately regarded as one unit, or two or more units may be integrated into one unit; the integrated unit can be realized in a form of hardware, or in a form of hardware plus a software functional unit.
Those of ordinary skill in the art will understand that: all or part of the steps of implementing the method embodiments may be implemented by hardware related to program instructions, and the program may be stored in a computer-readable storage medium, and when executed, executes the steps including the method embodiments; and the aforementioned storage medium includes: a mobile storage device, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and various media capable of storing program codes.
The technical means described in the embodiments of the present application may be arbitrarily combined without conflict.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.
Claims (14)
1. A method of edge cleaning, comprising:
in the process of the edge cleaning, when the detected obstacle is the set obstacle, the edge cleaning is continued.
2. The method of claim 1, wherein while the performing edgewise cleaning continues, the method further comprises:
determining the type of the formed first closed loop based on the first distance and the angle increment sum;
under the condition that the type of the first closed loop represents a set abnormal closed loop, navigating based on a pose corresponding to a backtracking point on a set boundary so as to continue to carry out edgewise cleaning; wherein,
the first distance represents a Manhattan distance between the current position and the starting point; the initial point represents the position of the collision with the barrier for the first time or the position of the collision going straight to the set boundary for the first time; the angle increment sum represents the sum of the angle increments of every two adjacent key points in the key points between the current position and the starting point; the keypoints represent points recorded at set distances during the edgewise cleaning process.
3. The method of claim 2, wherein determining the type of the first closed loop formed based on the first distance and the sum of the angular increments comprises:
determining the type of the first closed loop based on the absolute value of the first angle increment total sum and the total walking track under the condition that the first distance is smaller than or equal to a first set threshold; or
Determining the type of the first closed loop based on the absolute value of the sum of the second angle increments and the second distance when the first distance is larger than the first set threshold; wherein,
the first angle increment sum characterizes the sum of the angle increments of every two adjacent key points in the process of advancing from the starting point to the current position; the second angle increment sum represents the sum of the angle increments of every two adjacent key points in the process of carrying out backward thrust on the starting point based on the current position; the second distance characterizes a manhattan distance of every two adjacent keypoints during the backward extrapolation.
4. The method of claim 3, wherein determining the type of the first closed loop based on the absolute value of the first angular increment sum and the total walking trajectory comprises:
and under the condition that the absolute value of the first angle increment sum is greater than a second set threshold value and the total travel track is greater than a third set threshold value, determining that the type of the first closed loop is a set normal closed loop.
5. The method of claim 3, wherein determining the type of the first closed loop based on the absolute value of the sum of the second angular increments and the second distance comprises:
under the condition that the absolute value of the second angle increment sum is larger than a fourth set threshold value and the second distance is smaller than or equal to a fifth set threshold value, determining the type of the first closed loop based on the second angle increment sum; or
Determining the type of the first closed loop based on the poses and angles corresponding to the set number of first key points under the condition that the absolute value of the second angle increment sum is smaller than or equal to the fourth set threshold; and the set number of first key points represent continuous key points between the current position and the starting point.
6. The method of claim 5, wherein determining the type of the first closed loop based on the second angular increment sum comprises:
under the condition that the sum of the second angle increment is less than zero, determining that the type of the first closed loop is a set first abnormal closed loop; or alternatively
Determining a type of the first closed loop based on a minimum gap between a first boundary and a second boundary and based on a size of the first closed loop if a second angle increment sum is greater than zero; wherein,
the first boundary characterizes a boundary of the first closed loop; the second boundary characterizes a maximum boundary determined by all the keypoints.
7. The method of claim 6, wherein determining the type of the first closed loop based on the minimum gap between the first boundary and the second boundary and based on the size of the first closed loop comprises one of:
determining the type of the first closed loop as a set normal closed loop under the condition that the minimum clearance is larger than a set clearance and the size of the first closed loop is larger than a set size;
and determining the type of the first closed loop as a set second abnormal closed loop under the condition that the minimum clearance is smaller than or equal to the set clearance or the size of the first closed loop is smaller than or equal to the set size.
8. The method of claim 5, wherein determining the type of the first closed loop based on the poses and angles corresponding to the set number of first keypoints comprises:
determining a third distance and a corresponding first angle difference value based on the first information corresponding to the first key points and the second information corresponding to the second key points in the set number;
under the condition that two third distances are greater than a set distance threshold value and the corresponding first angle difference value is smaller than a set angle threshold value in the determined third distances, the type of the first closed loop is a set normal closed loop;
the first key point represents the current key point determined in the reverse pushing process; the corresponding second key points represent key points which are separated from the first key points by at least one key point in the set number of first key points; the third distance represents the Manhattan distance between the first key point and the corresponding second key point; the first information and the second information each include a pose and an angle of the cleaning robot.
9. The method according to any one of claims 2 to 8, further comprising:
under the condition of navigation failure, the user moves straight to a first set boundary so as to carry out edge cleaning along the first set boundary; the first set boundary characterizes a set boundary closest to the current location.
10. Method according to any of claims 2 to 8, characterized in that in case of an abnormal closed loop of which the type of the first closed loop characterizes a setting, the method further comprises:
marking the first closed loop and the first path as an inaccessible area; the first path characterizes a path between a set boundary and the first closed loop.
11. The method of claim 10, further comprising:
in the case of forming a set normal closed loop, the marked non-walkable region is cleared.
12. A cleaning robot, characterized by comprising:
and the edge cleaning unit is used for continuing edge cleaning when the detected obstacle is a set obstacle in the process of edge cleaning.
13. A cleaning robot, characterized by comprising: a processor and a memory for storing a computer program capable of running on the processor,
wherein the processor is adapted to perform the steps of the method of any one of claims 1 to 11 when running the computer program.
14. A storage medium having a computer program stored thereon, the computer program, when being executed by a processor, realizing the steps of the method of any one of claims 1 to 11.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110385303.XA CN115191868B (en) | 2021-04-09 | 2021-04-09 | Edge cleaning method and cleaning robot |
PCT/CN2022/077883 WO2022213737A1 (en) | 2021-04-09 | 2022-02-25 | Edge cleaning method, cleaning robot and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110385303.XA CN115191868B (en) | 2021-04-09 | 2021-04-09 | Edge cleaning method and cleaning robot |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115191868A true CN115191868A (en) | 2022-10-18 |
CN115191868B CN115191868B (en) | 2024-06-14 |
Family
ID=83544898
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110385303.XA Active CN115191868B (en) | 2021-04-09 | 2021-04-09 | Edge cleaning method and cleaning robot |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115191868B (en) |
WO (1) | WO2022213737A1 (en) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014135008A1 (en) * | 2013-03-06 | 2014-09-12 | Jian Yi | Edge-to-center cleaning method used by robot cleaner |
CN106998984A (en) * | 2014-12-16 | 2017-08-01 | 伊莱克斯公司 | Clean method for robotic cleaning device |
CN107544524A (en) * | 2017-10-30 | 2018-01-05 | 北京奇虎科技有限公司 | Collision processing method, device and the robot of robot |
CN110403539A (en) * | 2019-08-16 | 2019-11-05 | 云鲸智能科技(东莞)有限公司 | Cleaning control method, clean robot and the storage medium of clean robot |
CN111123932A (en) * | 2019-12-24 | 2020-05-08 | 深圳乐动机器人有限公司 | Robot cleaning method and robot |
CN111176301A (en) * | 2020-03-03 | 2020-05-19 | 江苏美的清洁电器股份有限公司 | Map construction method and sweeping method of sweeping robot |
US20200183404A1 (en) * | 2018-12-07 | 2020-06-11 | Jiangsu Midea Cleaning Appliances Co., Ltd. | Distance detection method and device for cleaning robot, and cleaning robot |
WO2021008611A1 (en) * | 2019-07-18 | 2021-01-21 | 广东宝乐机器人股份有限公司 | Robot trapping detection and de-trapping method |
US20210041871A1 (en) * | 2018-03-09 | 2021-02-11 | Amicro Semicoductor Co.,Ltd. | Along-edge Walking Control Method for Autonomous Mobile Robot |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108693882B (en) * | 2018-06-05 | 2020-12-25 | 北京智行者科技有限公司 | Multimode sweeping path generation method |
JP2020068897A (en) * | 2018-10-29 | 2020-05-07 | 大成建設株式会社 | Cleaning robot |
CN110403528B (en) * | 2019-06-12 | 2022-03-08 | 深圳乐动机器人有限公司 | Method and system for improving cleaning coverage rate based on cleaning robot |
CN110622085A (en) * | 2019-08-14 | 2019-12-27 | 珊口(深圳)智能科技有限公司 | Mobile robot and control method and control system thereof |
CN110680253A (en) * | 2019-09-25 | 2020-01-14 | 深圳乐动机器人有限公司 | Robot edge cleaning method and robot |
CN111938519B (en) * | 2020-08-19 | 2021-09-07 | 南京工程学院 | Sweeping and mopping integrated robot cleaning path planning method |
CN112540610A (en) * | 2020-09-17 | 2021-03-23 | 深圳市银星智能科技股份有限公司 | Robot obstacle avoidance method, robot and storage medium |
-
2021
- 2021-04-09 CN CN202110385303.XA patent/CN115191868B/en active Active
-
2022
- 2022-02-25 WO PCT/CN2022/077883 patent/WO2022213737A1/en active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014135008A1 (en) * | 2013-03-06 | 2014-09-12 | Jian Yi | Edge-to-center cleaning method used by robot cleaner |
CN106998984A (en) * | 2014-12-16 | 2017-08-01 | 伊莱克斯公司 | Clean method for robotic cleaning device |
CN107544524A (en) * | 2017-10-30 | 2018-01-05 | 北京奇虎科技有限公司 | Collision processing method, device and the robot of robot |
US20210041871A1 (en) * | 2018-03-09 | 2021-02-11 | Amicro Semicoductor Co.,Ltd. | Along-edge Walking Control Method for Autonomous Mobile Robot |
US20200183404A1 (en) * | 2018-12-07 | 2020-06-11 | Jiangsu Midea Cleaning Appliances Co., Ltd. | Distance detection method and device for cleaning robot, and cleaning robot |
WO2021008611A1 (en) * | 2019-07-18 | 2021-01-21 | 广东宝乐机器人股份有限公司 | Robot trapping detection and de-trapping method |
CN110403539A (en) * | 2019-08-16 | 2019-11-05 | 云鲸智能科技(东莞)有限公司 | Cleaning control method, clean robot and the storage medium of clean robot |
CN111123932A (en) * | 2019-12-24 | 2020-05-08 | 深圳乐动机器人有限公司 | Robot cleaning method and robot |
CN111176301A (en) * | 2020-03-03 | 2020-05-19 | 江苏美的清洁电器股份有限公司 | Map construction method and sweeping method of sweeping robot |
Non-Patent Citations (1)
Title |
---|
梁喜凤;: "室内地面清洁机器人路径规划", 中国计量学院学报, no. 01, pages 68 - 72 * |
Also Published As
Publication number | Publication date |
---|---|
WO2022213737A1 (en) | 2022-10-13 |
CN115191868B (en) | 2024-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12093050B2 (en) | Robot-assisted processing of a surface using a robot | |
US20240272643A1 (en) | Path Fusing and Planning Method for Passing Region, Robot, and Chip | |
EP4059407B1 (en) | Cleaning control method based on dense obstacles | |
CN111596662B (en) | Method for judging one circle along global working area, chip and visual robot | |
JP7136114B2 (en) | ENVIRONMENTAL INFORMATION UPDATE DEVICE, ENVIRONMENTAL INFORMATION UPDATE METHOD AND PROGRAM | |
CN113156956B (en) | Navigation method and chip of robot and robot | |
CN101650189B (en) | Method for planning walking path and navigation method for avoiding dynamic barrier | |
CN113219975A (en) | Route optimization method, route planning method, chip and robot | |
CN113190010B (en) | Edge obstacle detouring path planning method, chip and robot | |
CN112987755A (en) | Obstacle avoidance method and device of sweeping robot | |
CN107305384A (en) | The method and robot of a kind of automatic obstacle-avoiding | |
CN113791616A (en) | Path planning method, device, robot and storage medium | |
CN111552290B (en) | Method for robot to find straight line along wall and cleaning method | |
CN113110499B (en) | Determination method of traffic area, route searching method, robot and chip | |
CN111443696B (en) | Laser sweeping robot path planning method, device and chip | |
CN117055557A (en) | Robot avoiding method and device and electronic equipment | |
CN113534818A (en) | Path navigation planning method and device, storage medium and electronic equipment | |
CN114397893B (en) | Path planning method, robot cleaning method and related equipment | |
CN115191868A (en) | Edgewise cleaning method and cleaning robot | |
Sharma et al. | A virtual bug planning technique for 2D robot path planning | |
CN115500737B (en) | Ground medium detection method and device and cleaning equipment | |
CN115951673A (en) | Mobile device escaping method and device and robot | |
CN116540689A (en) | Robot edge control method, chip and robot | |
CN112137528B (en) | Sweeping robot sweeping area detection method, device, equipment, system and medium | |
CN114690771A (en) | Path planning method and device for robot |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |