Cleaning method, device, electronic device and storage medium
By rotating and obstruction detection when the sweeping robot cannot pass the dense obstacle area, and marking the unpassable areas on the grid map, the problem of sweeping robot falling into repeated obstacles in dense obstacle scenes is solved, achieving more efficient cleaning efficiency and better user experience.
Patent Information
- Application Number
- CN202411888223.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-20
- Publication Date
- 2025-04-04
AI Technical Summary
Sweeping robots are prone to falling into the dilemma of repeated obstacles in dense obstacles and cannot get out quickly, resulting in insufficiency in cleaning.
When the sweeping robot cannot pass through the dense obstacle area, it performs rotation and obstacle detection. Based on the detection results, mark the unpassable areas on the grid map, and adjusts the cleaning path according to the marked map to avoid obstacles.
It effectively avoids the problem of repeated obstacles, improves the cleaning efficiency of the sweeping robot, makes the cleaning task completed faster, the equipment power is longer, and the user experience is better.
Smart Images

Figure CN119745276A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of smart home technology, and in particular to a cleaning method, device, electronic equipment and storage medium. Background Art
[0002] With the rapid development of smart home technology, sweeping robots, as an efficient and convenient household cleaning tool, have been widely used in modern family life. Traditional sweeping robots mostly clean the whole house based on a preset whole-house cleaning mode.
[0003] However, when cleaning the whole house, most sweeping robots first obtain a specific cleaning area, that is, they first move to the edge of the room, then move continuously along the edge until the boundary cleaning of the entire area is completed, and then perform deep cleaning. Although this method can effectively cover the boundary area, once dense obstacles are encountered during cleaning, it is very easy to fall into the dilemma of repeated obstacle avoidance and cannot quickly escape, which affects the cleaning efficiency and makes the user experience poor. Summary of the invention
[0004] The present invention provides a cleaning method, device, electronic device and storage medium, which are used to solve the defects in the prior art that the sweeping robot is prone to fall into the dilemma of repeatedly circumventing obstacles in scenes with dense obstacles and cannot quickly get rid of them, resulting in prolonged cleaning time and low cleaning efficiency.
[0005] The present invention provides a cleaning method, comprising: When the cleaning robot cannot pass through an area with dense obstacles in the cleaning space during cleaning, controlling the cleaning robot to rotate and perform obstacle detection; Based on the obstacle detection result during the rotation process, marking the area between two adjacent obstacles in the dense obstacle area on the grid map; Based on the grid map after obstacle marking, the cleaning robot is controlled to clean the dense obstacle area in the cleaning space.
[0006] According to a cleaning method provided by the present invention, based on the obstacle detection result during the rotation process, marking the area between two adjacent obstacles in the dense obstacle area on the grid map includes: Based on the obstacle detection results during the rotation process, the obstacle detection status is checked; When the verification is passed, based on the obstacle detection result during the rotation process, an obstacle mark is performed on the grid map for the area between two adjacent obstacles in the dense obstacle area.
[0007] According to a cleaning method provided by the present invention, the obstacle detection is performed within a sensing area of the cleaning robot, and the sensing area is determined based on a preset range on the side of the body of the cleaning robot; The obstacle detection state check is used to verify the state jump of obstacle detection in the sensing area during the rotation of the sweeping robot; The verification is performed by characterizing that the state of obstacle detection in the sensing area during the rotation changes twice from presence to absence and from absence to presence.
[0008] According to a cleaning method provided by the present invention, based on the obstacle detection result during the rotation process, marking the area between two adjacent obstacles in the dense obstacle area on the grid map includes: Based on the obstacle detection result during the rotation process, determining the positions of two adjacent obstacles in the dense obstacle area on the grid map; Based on the positions of the two adjacent obstacles on the grid map, an obstacle mark is performed on the area between the two adjacent obstacles.
[0009] According to a cleaning method provided by the present invention, the cleaning robot is controlled to clean the dense obstacle area in the cleaning space based on the grid map after obstacle marking, comprising: Re-plan the path based on the grid map after obstacle marking to obtain the cleaning path; Based on the cleaning path, controlling the cleaning robot to clean the dense obstacle area in the cleaning space, so that the cleaning robot can avoid the obstacle area when cleaning, and the obstacle area is the area where the obstacle mark exists on the grid map; The obstacle identifier includes a physical obstacle identifier and a virtual obstacle identifier obtained by marking the obstacle.
[0010] According to a cleaning method provided by the present invention, marking obstacles in an area between two adjacent obstacles in the dense obstacle area on a grid map includes: At least one of virtual obstacle mapping, obstacle layer addition, and map grid value adjustment is performed on the grid map for the area between the two adjacent obstacles.
[0011] The present invention also provides a cleaning device, comprising: A detection unit, used to control the sweeping robot to rotate and perform obstacle detection when the sweeping robot cannot pass through an area with dense obstacles in the cleaning space during cleaning; A marking unit, configured to mark an area between two adjacent obstacles in the dense obstacle area on a grid map based on an obstacle detection result during the rotation process; The cleaning unit is used to control the cleaning robot to clean the dense obstacle area in the cleaning space based on the grid map after the obstacles are marked.
[0012] The present invention also provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and running on the processor, wherein the processor implements any of the cleaning methods described above when executing the computer program.
[0013] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the cleaning method described in any one of the above is implemented.
[0014] The present invention also provides a computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the cleaning method as described above is implemented.
[0015] The cleaning method, device, electronic device and storage medium provided by the present invention control the sweeping robot to rotate and perform obstacle detection when the sweeping robot is unable to pass through an area with dense obstacles in the cleaning space during cleaning; based on the obstacle detection result during the rotation process, obstacles are marked on the grid map for the area between two adjacent obstacles in the dense obstacle area; based on the grid map after obstacle marking, the sweeping robot is controlled to clean the area with dense obstacles in the cleaning space, so that the marked obstacle area can be automatically avoided in the subsequent cleaning process, thereby avoiding the problem of repeated obstacle avoidance from the root, and completely getting rid of the dilemma of repeated obstacle avoidance without human intervention, thereby greatly improving the cleaning efficiency, enabling the cleaning task to be completed faster and better, the equipment battery to last longer, and the user experience to be better. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] In order to more clearly illustrate the technical solutions in the present invention or the prior art, a brief introduction will be given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0017] Figure 1 It is a schematic flow chart of the cleaning method provided by the present invention; Figure 2 This is one of the example diagrams of the cleaning process of the sweeping robot provided by the present invention; Figure 3This is the second example diagram of the cleaning process of the sweeping robot provided by the present invention; Figure 4 is one of the example diagrams of the obstacle marking process provided by the present invention; Figure 5 is an example diagram of a grid map after obstacle marking provided by the present invention; Figure 6 This is the second example diagram of the obstacle marking process provided by the present invention; Figure 7 It is a structural schematic diagram of the cleaning device provided by the present invention; Figure 8 It is a structural schematic diagram of the electronic device provided by the present invention. DETAILED DESCRIPTION
[0018] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the drawings of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0019] When a robot vacuum cleaner encounters a scene with dense obstacles, such as a scene with many table legs or stool legs (i.e., a "forest of legs"), it will repeatedly circumvent the obstacle and be unable to escape quickly, thus affecting cleaning efficiency and user experience. Current cleaning solutions usually fail to take this into account and cannot solve the problem of reduced efficiency and poor user experience caused by complex cleaning environments.
[0020] In this regard, the present invention provides a cleaning method, which aims to control the rotation of the sweeping robot and perform obstacle detection if it cannot pass through an area with dense obstacles during cleaning, thereby marking the obstacles that cannot be bypassed and the areas between them according to the obstacle detection results during the rotation process, and controlling the sweeping robot to clean according to the marked grid map, so that the marked obstacle areas can be automatically avoided in the subsequent cleaning process, thereby avoiding the problem of repeatedly bypassing the area that cannot be passed for the first time, and trying to pass again after bypassing and moving to the opposite side. The problem of repeatedly bypassing obstacles can be completely solved without human intervention, which greatly improves the cleaning efficiency of the sweeping robot, thereby completing the cleaning task faster, making the equipment more durable, and providing a better user experience.
[0021] Figure 1 It is a schematic diagram of the cleaning method provided by the present invention, such as Figure 1As shown, the method can be applied to a sweeping robot, and the specific execution subject can be a processor built into the sweeping robot; it can also be applied to a server that directly controls the sweeping robot. The method includes: Step 110, when the cleaning robot cannot pass through the dense obstacle area in the cleaning space during cleaning, control the cleaning robot to rotate and perform obstacle detection; Step 120, based on the obstacle detection result during the rotation process, marking the area between two adjacent obstacles in the dense obstacle area on the grid map; Step 130 , based on the grid map after obstacle marking, control the sweeping robot to clean the dense obstacle area in the cleaning space.
[0022] Specifically, considering that the current cleaning process of the sweeping robot is generally divided into edge cleaning and full coverage cleaning. Generally, the sweeping robot will first clean along the edge to form a closed area, and then perform full coverage cleaning in the closed area. In addition, during actual cleaning, if the distance between two obstacles is similar to the minimum distance that the sweeping robot can pass, there will be a problem of probabilistic passing inefficiency. Figure 2 is one of the example diagrams of the cleaning process of the sweeping robot provided by the present invention, such as Figure 2 As shown in the figure, when the sweeping robot is cleaning along the edge (wall), if it encounters two obstacles (stool legs, stool legs, etc.), and the distance between the two obstacles is similar to the distance it can pass, two situations will occur, namely Figure 2 The ideal situation shown in (a) is that the direction of movement of the sweeping robot and the distance between obstacles are appropriate, so the sweeping robot can pass through quickly. Figure 2 The situation shown in (b) is also the majority of situations encountered by sweeping robots in actual applications. In this case, the sweeping robot cannot pass between the two obstacles and will continue to move around to a larger area on the left (the green thick arrow in the figure indicates passing, and the red thick arrow indicates impassable).
[0023] After that, that is, after going around from the left in (b), the sweeping robot will also face two situations: Figure 3 FIG. 2 is a second example of the cleaning process of the sweeping robot provided by the present invention. Figure 3 As shown in the figure, after the robot bypasses the obstacle on the left, it will face these two obstacles again. There are still two states: passable and impassable. If Figure 3 In the case of (b), that is, it is not passable, it can move normally and continue to clean along the edge; Figure 3In the case of (a), the robot can pass between two obstacles, and the problem of repeated obstacle avoidance occurs. At this time, on the one hand, it is difficult for the robot to get rid of this dilemma, and human intervention is usually required. However, users often do not pay attention to the status of the robot at any time, so it is difficult to find the problems of the robot in time. Users often only pay attention to it when they think that it is time to finish cleaning. At this time, the robot has been in trouble for a long time, not only consuming a lot of power in repeated obstacle avoidance, but also delaying the cleaning time, resulting in low cleaning efficiency and the inability to complete the cleaning task well. On the other hand, in the home scene, the "leg forest scene" is very common. The above problems are easily triggered when the robot is cleaning on the spot, resulting in the continuous extension of cleaning time, greatly reducing the cleaning efficiency, and the robot behavior presented by the continuous obstacle avoidance is weird, which can easily lead to poor user experience.
[0024] In view of this, in an embodiment of the present invention, in order to address the problem that the sweeping robot has probabilistic low passing efficiency and is prone to repeatedly avoiding obstacles in a scene with dense obstacles (similar to the "leg forest scene"), it is proposed that when it is unable to pass through an area with dense obstacles, the sweeping robot is first controlled to rotate and perform obstacle detection, and then the impassable area is marked according to the detection results, so that the area can be automatically avoided during subsequent cleaning, thereby avoiding the problem of repeatedly avoiding obstacles, improving the cleaning efficiency of the sweeping robot, and optimizing the user experience for a better experience.
[0025] It is understandable that in actual application, when the user issues an instruction to instruct the sweeping robot to perform a cleaning task to clean the cleaning space, if the sweeping robot cannot pass through the dense obstacle area in the cleaning space, for example, the sweeping robot encounters two stool legs or table legs, or two columnar / square obstacles, it will pre-judge the distance between the two obstacles, and compare and judge whether this distance is close to the distance it can pass. If it can, it can try to pass through. If it can pass successfully, it can continue to perform the cleaning task according to the pre-planned path. If it cannot pass, it can exit and bypass the obstacle from the side. Correspondingly, if the distance difference is far, that is, the distance between the obstacles is much smaller than the distance the sweeping robot can pass, it can directly bypass it.
[0026] In short, when the sweeping robot is cleaning, if it cannot pass through the area with dense obstacles in the cleaning space, the sweeping robot can be controlled to rotate to avoid the area between obstacles and go around it. During the operation of the sweeping robot, it can also continue to detect obstacles to determine the location of the obstacles, which is beneficial for obstacle avoidance in the subsequent cleaning process.
[0027] Among them, the cleaning space can be a large area, such as a shopping mall floor, a square floor, etc., or a relatively small area, such as a home space, and the embodiment of the present invention does not make specific limitations on this. In actual applications, sweeping robots are used as a smart home and are mostly used in home scenes. Specifically in the embodiment of the present invention, the cleaning space can be any area in the home space, such as a kitchen, bedroom, living room, etc., or the entire home space, and the embodiment of the present invention does not make specific limitations on this. The dense obstacle area, that is, the area corresponding to the dense obstacle scene under the cleaning space, refers to an area where there are many obstacles (such as table legs, stool legs, toys, etc.). The dense obstacle area in the cleaning space can be one or more.
[0028] Here, the dense obstacle area may be pre-marked in the grid map corresponding to the sweeping robot, or may be identified and updated during the actual operation of the sweeping robot, which is not specifically limited in the embodiment of the present invention.
[0029] Furthermore, after controlling the sweeping robot to rotate and perform obstacle detection, the information of obstacles detected during the rotation process can be obtained, that is, the obstacle detection result during the rotation process can be obtained, and the obstacle detection result can indicate whether an obstacle is detected, as well as the distance, position, time, state jump during the detection process, etc. of the detected obstacle. Therefore, after obtaining the obstacle detection result during the rotation process, in an embodiment of the present invention, based on the obstacle detection result, the area in the dense obstacle area that the sweeping robot cannot pass through can be marked as an obstacle on the grid map, thereby obtaining a grid map after obstacle marking, so as to facilitate subsequent cleaning control.
[0030] Specifically, because the sweeping robot compares the empty space and passable distance between two obstacles when judging whether it can pass, and these two adjacent obstacles can be considered as two adjacent obstacles in the dense obstacle area, therefore, in order to avoid the sweeping robot choosing to bypass these two obstacles after failing to pass for the first time, it needs to judge whether it can pass again when facing them again, which may easily lead to the dilemma of repeatedly bypassing obstacles, in an embodiment of the present invention, the area that the sweeping robot initially judges as unable to pass can be marked as an obstacle, that is, according to the obstacle detection result during the rotation process, the area between two obstacles that are initially judged as unable to pass in the dense obstacle area is marked as impassable on the grid map, so as to mark the area as impassable, so that the sweeping robot can directly bypass the area when it moves to this point in the subsequent movement, thereby avoiding repeated judgments and bypassing obstacles, and circumventing the above problems from the root.
[0031] Figure 4 is one of the example diagrams of the obstacle marking process provided by the present invention, such as Figure 4As shown, when the sweeping robot is performing a cleaning task, if it encounters a dense obstacle scene, such as a leg forest scene, it needs to make a judgment on whether it can pass through. In order to avoid repeated obstacle avoidance, the area between obstacles that the sweeping robot cannot pass through the first time needs to be completely avoided in the subsequent cleaning process, and the area between adjacent obstacles is also regarded as an obstacle and marked as an inaccessible area, so as to avoid the situation of repeated obstacle avoidance caused by secondary entry. Specifically, after obtaining the obstacle detection result, the area between two adjacent obstacles is marked as an obstacle according to the obstacle detection result, so as to add a virtual obstacle mark, thereby preventing passage from then on.
[0032] After the obstacles are marked, when the sweeping robot bypasses them from the left and faces the two obstacles again, a virtual obstacle connecting the two obstacles will appear on the grid map. Specifically, a virtual obstacle sign may be marked in the area between the two obstacles. The existence of the sign indicates that the area is impassable, and the sweeping robot will directly choose to bypass this area without wasting more time and there will be no problem of repeated obstacle bypassing.
[0033] However, it is worth noting that each obstacle in a dense obstacle area may not have only one adjacent obstacle, but may usually have multiple obstacles. Therefore, when the sweeping robot is cleaning, each time it passes an obstacle in its direction of travel, it needs to determine whether it can pass through it. After the determination, the areas between obstacles that cannot be passed through can be marked as obstacles on the grid map to indicate that they are impassable and need to be bypassed. In the process of performing the cleaning task, multiple impassable areas can be marked after multiple determinations. Figure 5 is an example of a grid map after obstacle marking provided by the present invention, such as Figure 5 As shown in the figure, when encountering a standard stool leg scene, after multiple markings, all impassable areas in the scene that are easy to repeatedly avoid obstacles can be accurately avoided. As long as marking can be performed between adjacent obstacles that cannot be passed, the extension of cleaning time caused by repeated obstacle avoidance can be reduced, thereby improving cleaning efficiency.
[0034] In addition, it should be noted that obstacle detection and marking accompany the entire cleaning process of the sweeping robot. The grid map that controls the sweeping robot to perform cleaning tasks will also be continuously marked and updated as the sweeping robot moves. In this way, subsequent cleaning can refer to previous markings and remember "lessons", achieving real-time obstacle avoidance during the cleaning process, avoiding repeated circumvention of obstacles and inefficient problems, reducing the time for repeated circumvention of obstacles, improving efficiency, and optimizing user experience.
[0035] After that, the sweeping robot can be controlled to clean the dense obstacle areas in the cleaning space according to the grid map after obstacle marking, so that the sweeping robot can clean according to the obstacle signs on the grid map, so as to automatically avoid the areas marked with obstacles, reduce the negative impact of repeated obstacle avoidance in dense obstacle scenes, improve cleaning efficiency, and complete the cleaning tasks faster and better, and provide a better user experience.
[0036] The cleaning method provided by the present invention controls the sweeping robot to rotate and perform obstacle detection when the sweeping robot is unable to pass through an area with dense obstacles in a cleaning space during cleaning; based on the obstacle detection result during the rotation process, an obstacle is marked on a grid map for an area between two adjacent obstacles in the area with dense obstacles; based on the grid map after obstacle marking, the sweeping robot is controlled to clean the area with dense obstacles in the cleaning space, so that the marked obstacle area can be automatically avoided in subsequent cleaning processes, thereby avoiding the problem of repeated obstacle avoidance from the root, and completely getting rid of the dilemma of repeated obstacle avoidance without human intervention, thereby greatly improving the cleaning efficiency of the sweeping robot, thereby enabling the cleaning task to be completed faster and better, the device battery life to be longer, and the user experience to be better.
[0037] Based on the above embodiment, step 120 includes: Based on the obstacle detection results during the rotation process, the obstacle detection status is checked; If the verification is passed, based on the obstacle detection result during the rotation process, the area between two adjacent obstacles in the dense obstacle area is marked as an obstacle on the grid map.
[0038] Specifically, the process of marking obstacles in the area between two adjacent obstacles in the dense obstacle area on the grid map according to the obstacle detection result during the rotation process may specifically include: First, the obstacle detection process can be verified according to the obstacle detection results during the rotation process, that is, the obstacle detection state can be verified according to the obstacle detection results. The state verification here can be a validity verification, that is, verifying whether the obstacle detection during the rotation process is effective and whether the results are accurate and reliable; it can also be a state change verification, that is, verifying whether the state jump of the obstacle detection during the rotation process has undergone a certain transformation. For example, when encountering an area between obstacles that cannot be passed, the sweeping robot will rotate to avoid obstacles. Whether the state of obstacle detection changes during the entire rotation process, for example, whether it has always been detected or undetected, or there will be a change from detected to undetected, and then to detected, or other changes; it can also be other forms of state, which are not specifically limited in the embodiments of the present invention.
[0039] Next, it can be determined whether to mark obstacles based on the verification results. Specifically, when the verification result is passed, that is, the result is valid or the state jump meets the set conditions, it is determined that the verification is passed. At this time, according to the obstacle detection results during the rotation process, the area between two adjacent obstacles in the dense obstacle area can be marked on the grid map. The process of obstacle marking has been described in detail above and will not be repeated here.
[0040] On the contrary, if the verification result fails, that is, the result is invalid, or the state transition fails to meet the set conditions, the obstacle detection result at this time is not available and cannot be used for subsequent obstacle marking. Therefore, there is no need to mark the area for obstacles for the time being, and continuous detection is possible.
[0041] Based on the above embodiment, obstacle detection is performed within the sensing area of the sweeping robot, and the sensing area is determined based on a preset range on the side of the body of the sweeping robot; The obstacle detection status check is used to verify the state jump of obstacle detection in the sensing area during the rotation of the sweeping robot; The verification is performed by characterizing that the state of obstacle detection in the sensing area during the rotation process changes twice from presence to absence and from absence to presence.
[0042] Specifically, in order to improve the obstacle marking process, in an embodiment of the present invention, it is selected to first perform an obstacle detection status check when marking an obstacle. Since the obstacle detection of the sweeping robot is performed in the sensing area on the side of its body, when performing the status check based on the obstacle detection result, it is possible to check the state change of the obstacle detection in the sensing area during the rotation of the sweeping robot to verify whether the state of the obstacle detection during the rotation process undergoes some change and whether it meets the set conditions.
[0043] Figure 6 FIG. 2 is a second example of the obstacle marking process provided by the present invention. Figure 6 As shown, during the operation of the sweeping robot, there will be an area of a set size on the side of its body. The range of this area can be preset, for example, it can be a conical area of 1 cm to 3 cm on the side of the body. The sensing area of the sweeping robot can be determined based on this conical area ( Figure 6 Specifically, the conical area can be directly used as the sensing area. However, in order to radiate a wider range, the sensing area is usually set to be slightly larger than the conical area for better operation.
[0044] During the operation of the sweeping robot, obstacle detection can be continuously performed in the sensing area, such as Figure 6 (a) and Figure 6As shown in (b), in the data layer capable of acquiring obstacle information, it is detected whether there is an obstacle within the ground range radiated by the sensing area during the rotation process, and the detection state is maintained during the execution of the cleaning task.
[0045] Once the robot vacuum cleaner enters an area with dense obstacles and encounters an area between two adjacent obstacles that it cannot pass through, it will rotate until it can bypass them. During the rotation process, its sensing area can usually gradually radiate to the two adjacent obstacles. Specifically, in the initial stage of rotation, the sensing area should be as follows: Figure 6 As shown in (b), when rotating to the middle of two obstacles, the sensing area should be as follows Figure 6 As shown in (c), since obstacle detection is continuous, the detected obstacle position and the obstacle detection status change can be recorded. Furthermore, when the rotation continues, the sensing area can radiate to another obstacle, so that the adjacent obstacle can be detected and the location of the obstacle can be marked on the grid map, as shown in Figure 2. Figure 6 The red points are shown in (c) and (d).
[0046] Based on this, in order to ensure accuracy when marking obstacles, in the embodiment of the present invention, an obstacle detection status check can be first performed based on the obstacle detection results during the rotation process to verify whether the obstacle detection status in the sensing area during the rotation of the sweeping robot changes from detected to undetectable and then to detected, and whether it is consistent with the obstacle detection status in the sensing area during the rotation of the sweeping robot. Figure 6 If the process shown is consistent, the verification is passed, that is, it is verified that the obstacle detection state in the sensing area during the rotation process has indeed changed twice from presence to absence and from absence to presence. Next, according to the obstacle detection results during the rotation process, the area between two adjacent obstacles in the dense obstacle area can be marked as an obstacle on the grid map, so that the area between adjacent obstacles that cannot be passed at the first attempt can be marked as a virtual obstacle as an impassable area.
[0047] Based on the above embodiment, step 120 includes: Based on the obstacle detection results during the rotation process, the positions of two adjacent obstacles in the dense obstacle area on the grid map are determined; Based on the positions of two adjacent obstacles on the grid map, the area between the two adjacent obstacles is marked as an obstacle.
[0048] Specifically, in step 120, the process of marking obstacles in the area between two adjacent obstacles in the dense obstacle area on the grid map according to the obstacle detection result during the rotation process may specifically include: First, the obstacle position can be marked according to the obstacle detection results during the rotation process, that is, the position of the obstacle can be determined based on the obstacle detection results obtained by the obstacle detection, and marked on the grid map. In this way, the positions of two adjacent obstacles in the dense obstacle area that prevent the sweeping robot from passing can be obtained on the grid map.
[0049] Subsequently, the area between the two adjacent obstacles can be marked as an obstacle according to the positions of the two adjacent obstacles on the grid map. That is, according to the positions of the adjacent obstacles on the grid map, the area that the sweeping robot cannot pass through can be marked to mark the area as inaccessible, thereby avoiding repeated circumvention of obstacles and facilitating subsequent cleaning control.
[0050] Here, when obstacle marking is performed, a virtual obstacle may be established between two adjacent obstacles on the grid map to generate a virtual obstacle connecting the two obstacles. Specifically, a virtual obstacle mark may be marked in the area between the two obstacles. The existence of this mark indicates that the area is impassable, and the sweeping robot will automatically avoid the area when cleaning. There is no need to spend more time and there will be no problem of repeated obstacle avoidance, thereby improving cleaning efficiency.
[0051] Based on the above embodiment, in step 130, marking obstacles in the area between two adjacent obstacles in the dense obstacle area on the grid map includes: At least one of virtual obstacle mapping, obstacle layer addition, and map grid value adjustment is performed on the area between two adjacent obstacles on the grid map.
[0052] Specifically, the process of marking obstacles in the area between two adjacent obstacles in the dense obstacle area on the grid map may be to establish a virtual obstacle in the area between two adjacent obstacles on the grid map by using at least one of virtual obstacle mapping, obstacle layer addition, and map grid value adjustment to obtain a virtual obstacle identifier. The virtual obstacle identifier here may be marked when the virtual obstacle is generated, or may be the virtual obstacle itself, which is not specifically limited in the embodiment of the present invention.
[0053] Based on the above embodiment, step 130 includes: Re-plan the path based on the grid map after obstacle marking to obtain the cleaning path; Based on the cleaning path, the sweeping robot is controlled to clean the dense obstacle area in the cleaning space, so that the sweeping robot can avoid the obstacle area when cleaning, and the obstacle area is the area with obstacle marks on the grid map; Obstacle identification includes physical obstacle identification and virtual obstacle identification obtained by obstacle marking.
[0054] Specifically, in step 130, the process of controlling the cleaning robot to clean the dense obstacle area in the cleaning space according to the grid map after the obstacle is marked specifically includes: First, the path can be re-planned based on the grid map after obstacle marking, so that the sweeping robot can avoid the area with obstacle marks when cleaning subsequently, that is, the sweeping robot's route does not pass through the area with obstacle marks, thereby obtaining a re-planned cleaning path.
[0055] Then, according to the re-planned cleaning path, the sweeping robot can be controlled to clean the dense obstacle areas in the cleaning space, so that the sweeping robot can avoid the obstacle areas when cleaning, and avoid falling into the dilemma of repeatedly circumventing obstacles in dense obstacle scenes, which leads to prolonged cleaning time and low cleaning efficiency. This negative impact is reduced, the cleaning efficiency of the sweeping robot is improved, and the cleaning task can be completed faster and better, thereby optimizing the user experience.
[0056] Among them, the obstacle area is the area where the obstacle mark exists on the grid map. The obstacle mark on the grid map includes physical obstacle marks and virtual obstacle marks. The physical obstacle mark corresponds to the physical obstacle in the cleaning space, which is an obstacle that actually exists in the cleaning space for the sweeping robot and hinders cleaning, such as tables, stools, toys, etc.; the virtual obstacle mark corresponds to the virtual obstacle, which is an obstacle that does not actually exist and is established during the execution of the cleaning task to facilitate cleaning and improve efficiency. In addition, when establishing a virtual obstacle, in order to minimize the impact on the actual cleaning task, in the embodiment of the present invention, the width of the established virtual obstacle can be the smallest unit on the grid map.
[0057] The cleaning device provided by the present invention is described below. The cleaning device described below and the cleaning method described above can be referenced to each other.
[0058] Figure 7 Schematic diagram of the structure of the cleaning device provided by the present invention. Figure 7 As shown, the device comprises: The detection unit 710 is used to control the sweeping robot to rotate and perform obstacle detection when the sweeping robot cannot pass through a dense obstacle area in the cleaning space during cleaning; A marking unit 720, configured to mark an area between two adjacent obstacles in the dense obstacle area on a grid map based on the obstacle detection result during the rotation process; The cleaning unit 730 is used to control the cleaning robot to clean the dense obstacle area in the cleaning space based on the grid map after obstacle marking.
[0059] The cleaning device provided by the present invention controls the cleaning robot to rotate and perform obstacle detection when the cleaning robot is unable to pass through an area with dense obstacles in the cleaning space during cleaning; based on the obstacle detection result during the rotation process, the area between two adjacent obstacles in the area with dense obstacles is marked on the grid map; based on the grid map after obstacle marking, the cleaning robot is controlled to clean the area with dense obstacles in the cleaning space, so that the marked obstacle area can be automatically avoided in the subsequent cleaning process, thereby avoiding the problem of repeated obstacle avoidance from the root, and completely getting rid of the dilemma of repeated obstacle avoidance without human intervention, which greatly improves the cleaning efficiency of the cleaning robot, thereby enabling the cleaning task to be completed faster and better, the equipment battery life to be longer, and the user experience to be better.
[0060] Based on the above embodiment, the marking unit 720 is used for: Based on the obstacle detection results during the rotation process, the obstacle detection status is checked; When the verification is passed, based on the obstacle detection result during the rotation process, an obstacle mark is performed on the grid map for the area between two adjacent obstacles in the dense obstacle area.
[0061] Based on the above embodiment, the obstacle detection is performed within the sensing area of the cleaning robot, and the sensing area is determined based on a preset range on the side of the body of the cleaning robot; The obstacle detection state check is used to verify the state jump of obstacle detection in the sensing area during the rotation of the sweeping robot; The verification is performed by characterizing that the state of obstacle detection in the sensing area during the rotation changes twice from presence to absence and from absence to presence.
[0062] Based on the above embodiment, the marking unit 720 is used for: Based on the obstacle detection result during the rotation process, determining the positions of two adjacent obstacles in the dense obstacle area on the grid map; Based on the positions of the two adjacent obstacles on the grid map, an obstacle mark is performed on the area between the two adjacent obstacles.
[0063] Based on the above embodiment, the cleaning unit 730 is used for: Re-plan the path based on the grid map after obstacle marking to obtain the cleaning path; Based on the cleaning path, controlling the cleaning robot to clean the dense obstacle area in the cleaning space, so that the cleaning robot can avoid the obstacle area when cleaning, and the obstacle area is the area where the obstacle mark exists on the grid map; The obstacle identifier includes a physical obstacle identifier and a virtual obstacle identifier obtained by marking the obstacle.
[0064] Based on the above embodiment, the marking unit 720 is used for: At least one of virtual obstacle mapping, obstacle layer addition, and map grid value adjustment is performed on the grid map for the area between the two adjacent obstacles.
[0065] Figure 8 An example of a physical structure diagram of an electronic device is shown in FIG. Figure 8 As shown, the electronic device may include: a processor 810, a communication interface 820, a memory 830 and a communication bus 840, wherein the processor 810, the communication interface 820 and the memory 830 communicate with each other through the communication bus 840. The processor 810 may call the logic instructions in the memory 830 to execute the cleaning method, which includes: when the cleaning robot cannot pass through the dense obstacle area in the cleaning space during cleaning, controlling the cleaning robot to rotate and perform obstacle detection; based on the obstacle detection result during the rotation process, marking the area between two adjacent obstacles in the dense obstacle area on the grid map; based on the grid map after the obstacle marking, controlling the cleaning robot to clean the dense obstacle area in the cleaning space.
[0066] In addition, the logic instructions in the above-mentioned memory 830 can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when it is sold or used as an independent product. Based on this understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk and other media that can store program codes.
[0067] On the other hand, the present invention also provides a computer program product, which includes a computer program stored on a non-transitory computer-readable storage medium, and the computer program includes program instructions. When the program instructions are executed by a computer, the computer can execute the cleaning methods provided by the above-mentioned methods, and the method includes: when the sweeping robot cannot pass through a dense obstacle area in a cleaning space during cleaning, controlling the sweeping robot to rotate and perform obstacle detection; based on the obstacle detection result during the rotation process, marking obstacles for the area between two adjacent obstacles in the dense obstacle area on a grid map; based on the grid map after obstacle marking, controlling the sweeping robot to clean the dense obstacle area in the cleaning space.
[0068] On the other hand, the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, is implemented to execute the cleaning methods provided by the above-mentioned methods, the method comprising: when the sweeping robot is unable to pass through a dense obstacle area in a cleaning space during cleaning, controlling the sweeping robot to rotate and perform obstacle detection; based on the obstacle detection result during the rotation process, marking obstacles on a grid map for an area between two adjacent obstacles in the dense obstacle area; based on the grid map after obstacle marking, controlling the sweeping robot to clean the dense obstacle area in the cleaning space.
[0069] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without paying creative labor.
[0070] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, can also be implemented by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.
[0071] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A cleaning method, characterized in that: include: When the cleaning robot cannot pass through an area with dense obstacles in the cleaning space during cleaning, controlling the cleaning robot to rotate and perform obstacle detection; Based on the obstacle detection result during the rotation process, marking the area between two adjacent obstacles in the dense obstacle area on the grid map; Based on the grid map after obstacle marking, the cleaning robot is controlled to clean the dense obstacle area in the cleaning space.
2. The cleaning method according to claim 1, characterized in that: The obstacle detection result during the rotation process is used to mark the area between two adjacent obstacles in the dense obstacle area on the grid map, including: Based on the obstacle detection results during the rotation process, the obstacle detection status is checked; When the verification is passed, based on the obstacle detection result during the rotation process, an obstacle mark is performed on the grid map for the area between two adjacent obstacles in the dense obstacle area.
3. The cleaning method according to claim 2, It is characterized by: The obstacle detection is performed within a sensing area of the cleaning robot, and the sensing area is determined based on a preset range on a side of a body of the cleaning robot; The obstacle detection state check is used to verify the state jump of obstacle detection in the sensing area during the rotation of the sweeping robot; The verification is performed by characterizing that the state of obstacle detection in the sensing area during the rotation changes twice from presence to absence and from absence to presence.
4. The cleaning method according to any one of claims 1 to 3, characterized in that: The obstacle detection result during the rotation process is used to mark the area between two adjacent obstacles in the dense obstacle area on the grid map, including: Based on the obstacle detection result during the rotation process, determining the positions of two adjacent obstacles in the dense obstacle area on the grid map; Based on the positions of the two adjacent obstacles on the grid map, an obstacle mark is performed on the area between the two adjacent obstacles.
5. The cleaning method according to any one of claims 1 to 3, characterized in that: The controlling the cleaning robot to clean the dense obstacle area in the cleaning space based on the obstacle-marked grid map includes: Re-plan the path based on the grid map after obstacle marking to obtain the cleaning path; Based on the cleaning path, controlling the cleaning robot to clean the dense obstacle area in the cleaning space, so that the cleaning robot can avoid the obstacle area when cleaning, and the obstacle area is the area where the obstacle mark exists on the grid map; The obstacle identifier includes a physical obstacle identifier and a virtual obstacle identifier obtained by marking the obstacle.
6. The cleaning method according to any one of claims 1 to 3, characterized in that: The step of marking obstacles on the grid map for an area between two adjacent obstacles in the dense obstacle area includes: At least one of virtual obstacle mapping, obstacle layer addition, and map grid value adjustment is performed on the grid map for the area between the two adjacent obstacles.
7. A cleaning device, characterized in that: include: A detection unit, used to control the sweeping robot to rotate and perform obstacle detection when the sweeping robot cannot pass through an area with dense obstacles in the cleaning space during cleaning; A marking unit, configured to mark an area between two adjacent obstacles in the dense obstacle area on a grid map based on an obstacle detection result during the rotation process; The cleaning unit is used to control the cleaning robot to clean the dense obstacle area in the cleaning space based on the grid map after the obstacles are marked.
8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and running on the processor, characterized in that: When the processor executes the computer program, the cleaning method according to any one of claims 1 to 6 is implemented.
9. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the cleaning method according to any one of claims 1 to 6 is implemented.
10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the cleaning method according to any one of claims 1 to 6 is implemented.