Cleaning robot and control method therefor, computer-readable storage medium, and computer program product

By walking along wall-like boundaries in the cleaning robot's perception map and updating the map, the problem of incomplete map drawing in unknown environments is solved, and an efficient environmental exploration and stake-finding process is achieved.

WO2026052041A1PCT designated stage Publication Date: 2026-03-12BEIJING ROBOROCK INNOVATION TECH CO LTD
View PDF 7 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-09-05
Publication Date
2026-03-12

AI Technical Summary

Technical Problem

Existing cleaning robots struggle to efficiently explore and map complete environments, especially when there are unknown obstacle boundaries, making it easy to miss areas and resulting in low efficiency during the target search process.

Method used

By acquiring the perception map of the cleaning robot, it walks along wall-like boundaries that meet the preset length conditions and updates the map during the walk. Combined with the environmental information of the perception module, the map is dynamically updated, and the target boundaries of candidate wall-like boundaries are prioritized for exploration to avoid repeated walking and missed areas.

Benefits of technology

This improves the integrity and efficiency of environmental exploration, ensuring that the cleaning robot can autonomously and completely map and find base stations, reducing backtracking paths and improving the efficiency of mapping and stake finding.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025119248_12032026_PF_FP_ABST
    Figure CN2025119248_12032026_PF_FP_ABST
Patent Text Reader

Abstract

A cleaning robot (10) and a control method therefor, a computer-readable storage medium, and a computer program product. The control method comprises: acquiring a sensing map drawn by a cleaning robot (10) (S101); and executing an environment exploration step on the basis of the acquired sensing map, the environment exploration step comprising: controlling the cleaning robot (10) to travel along a wall-like boundary in the sensing map, and exploring the environment during traveling, and the wall-like boundary being an obstacle boundary having a length satisfying a preset condition (S102).
Need to check novelty before this filing date? Find Prior Art

Description

Cleaning robot, control method thereof, computer readable storage medium and computer program product

[0001] Cross-reference to Related Applications

[0002] This application claims priority to the Chinese patent application No. 2024112463741, filed on September 5, 2024, entitled "Cleaning robot, control method thereof, storage medium and program product", the entire content of which is incorporated herein by reference. TECHNICAL FIELD

[0003] The present application relates to the field of automatic control, and in particular, to a cleaning robot, a control method thereof, a computer readable storage medium and a computer program product. BACKGROUND

[0004] With the improvement of living standards, the application of cleaning robots is becoming more and more widespread. The cleaning robot has the function of exploring the environment, and can autonomously travel in the area to be explored and perform cleaning operations, etc. SUMMARY

[0005] The present application provides a cleaning robot, a control method thereof, a computer readable storage medium and a computer program product.

[0006] In the first aspect of the present application, a control method of a cleaning robot is provided, comprising: obtaining a perception map drawn by the cleaning robot; performing an environment exploration step based on the obtained perception map, the environment exploration step comprising: controlling the cleaning robot to walk along a wall-like boundary in the perception map, and exploring the environment during the walking process, wherein the wall-like boundary is an obstacle boundary with a length satisfying a preset condition.

[0007] In some embodiments, in the case that the cleaning robot is in an unknown environment, the perception map is a local real-time map drawn by the cleaning robot, and the exploring the environment during the walking process comprises: updating the perception map based on the environment information collected during the walking process.

[0008] In some embodiments, the environment exploration step further comprises: if there is no wall-like boundary that has not been walked along and there is an unexplored area in the perception map, controlling the cleaning robot to walk to the unexplored area, and updating the perception map based on the environment information collected during the walking process.

[0009] In some embodiments, the control method further comprises: after each update of the perception map, obtaining the updated perception map, and repeatedly performing the environment exploration step for the updated perception map until there is no untraveled wall-like boundary and no unexplored area in the perception map obtained by the cleaning robot.

[0010] In some embodiments, the control method further comprises: after the cleaning robot has traveled along the wall-like boundary, if an updated perception map is obtained, performing the environment exploration step based on the updated perception map.

[0011] In some embodiments, the cleaning robot is provided with a perception module, and the control method further comprises: after the cleaning robot has traveled along the wall-like boundary, if the perception map has not been updated, triggering the perception module to scan the surrounding environment, determining whether there is a subsequent wall-like boundary behind the just-traveled wall-like boundary in front of the cleaning robot based on the perception data obtained by the scanning; if there is the subsequent wall-like boundary and the subsequent wall-like boundary contains an untraveled boundary segment, controlling the cleaning robot to continue traveling along the boundary segment and updating the perception map based on the environmental information collected during the traveling.

[0012] In some embodiments, the control method further comprises: in the case where the perception map still has remaining wall-like boundaries in addition to the just-traveled wall-like boundary, if there is no subsequent wall-like boundary behind the just-traveled wall-like boundary in front of the cleaning robot, or if there is the subsequent wall-like boundary and there is no untraveled boundary segment in the subsequent wall-like boundary, determining a target wall-like boundary from the remaining wall-like boundaries, controlling the cleaning robot to travel along the target wall-like boundary, and updating the perception map based on the environmental information collected during the traveling.

[0013] In some embodiments, the control of the cleaning robot to travel along the wall-like boundary in the perception map comprises: in the case where there are multiple untraveled wall-like boundaries in the perception map, taking the multiple untraveled wall-like boundaries as candidate wall-like boundaries, determining a target wall-like boundary from the candidate wall-like boundaries, and controlling the cleaning robot to travel along the target wall-like boundary.

[0014] In some embodiments, the determination of the target wall-like boundary from the candidate wall-like boundaries comprises: if there is a subsequent wall-like boundary behind the just-traveled wall-like boundary in the candidate wall-like boundaries, determining the subsequent wall-like boundary as the target wall-like boundary.

[0015] In some embodiments, determining the target class wall boundary from the candidate class wall boundaries comprises: if there is no class wall boundary along which the cleaning robot has passed or there is no subsequent class wall boundary of the candidate class wall boundary along which the cleaning robot has just passed, determining the target class wall boundary from the candidate class wall boundaries based on lengths of the candidate class wall boundaries and distances between the candidate class wall boundaries and the cleaning robot.

[0016] In some embodiments, determining the target class wall boundary from the candidate class wall boundaries based on lengths of the candidate class wall boundaries and distances between the candidate class wall boundaries and the cleaning robot comprises: scoring the candidate class wall boundaries based on lengths of the candidate class wall boundaries and distances between the candidate class wall boundaries and the cleaning robot; determining the target class wall boundary as the candidate class wall boundary with the highest score from the candidate class wall boundaries.

[0017] In some embodiments, determining the target class wall boundary from the candidate class wall boundaries based on lengths of the candidate class wall boundaries and distances between the candidate class wall boundaries and the cleaning robot further comprises: if there is a closed boundary in the candidate class wall boundaries, if a length of the closed boundary is less than a second preset threshold, eliminating the closed boundary from the candidate class wall boundaries; if the length of the closed boundary is greater than or equal to the second preset threshold, reducing a score of the closed boundary.

[0018] In some embodiments, controlling the cleaning robot to walk along the class wall boundary in the perception map comprises: generating a wall-following path of the class wall boundary based on a preconfigured wall-following distance; generating an execution path of walking along the class wall boundary based on the wall-following path, a current position of the cleaning robot and a preset wall-following direction; and controlling the cleaning robot to walk along the class wall boundary according to the execution path.

[0019] In some embodiments, generating the execution path of walking along the class wall boundary based on the wall-following path, the current position of the cleaning robot and the preset wall-following direction comprises: taking a point in the wall-following path closest to the current position of the cleaning robot as a tentative continuation point; if the tentative continuation point divides the wall-following path into two sub-paths, determining one of the two sub-paths as a candidate sub-path and the other as a non-candidate sub-path based on the preconfigured wall-following direction; and if a length of the candidate sub-path is greater than or equal to a third preset threshold, generating a walking path of the cleaning robot from the current position to the tentative continuation point, and splicing the walking path and the candidate sub-path to obtain the execution path.

[0020] In some embodiments, the generating the execution path for the cleaning robot to walk along the wall-like boundary based on the wall-following path, the current position of the cleaning robot, and the preset wall-following direction further comprises: if the length of the candidate sub-path is less than the third preset threshold, generating a walking path for the cleaning robot to walk from the current position to an end point of the non-candidate sub-path away from the candidate sub-path, and splicing the walking path with the wall-following path to obtain the execution path.

[0021] In some embodiments, during the controlling the cleaning robot to walk along the wall-like boundary in the perception map, the wall-like boundary of a narrow region with a width less than a preset width threshold is ignored.

[0022] In some embodiments, the controlling the cleaning robot to walk along the wall-like boundary in the perception map comprises: if the wall-like boundary along which the cleaning robot walks comprises a first boundary segment and a second boundary segment arranged oppositely, and during the walking of the cleaning robot along the first boundary segment, the second boundary segment is also within the perception range of the cleaning robot, then controlling the cleaning robot to walk along the next wall-like boundary after walking along the first boundary segment.

[0023] In some embodiments, the above control method further comprises: controlling the cleaning robot to perform an obstacle avoidance action during the walking along the wall-like boundary.

[0024] In some embodiments, the above control method further comprises: recording the wall-like boundary walked along by the cleaning robot after the controlling the cleaning robot to walk along the wall-like boundary.

[0025] In some embodiments, in the case that the cleaning robot acquires the perception map in response to a stake searching instruction, the exploring the environment during the walking comprises: detecting whether a stake signal is received during the walking, and if the stake signal is received, controlling the cleaning robot to return to the stake based on the stake signal.

[0026] In some embodiments, the environment exploration step further comprises: if the stake signal is not received until there is no un-walked wall-like boundary in the perception map and no un-explored region, stopping the stake searching, and prompting the user that there is an abnormality in the stake searching.

[0027] In some embodiments, in a case where the cleaning robot is in a known environment, the controlling the cleaning robot to walk along the wall-like boundary in the perception map comprises: in a case where the perception map comprises a plurality of wall-like boundaries, taking the plurality of wall-like boundaries as candidate wall-like boundaries, determining a target wall-like boundary from the candidate wall-like boundaries based on a current position of the cleaning robot; generating an execution path of walking along the target wall-like boundary starting from the current position; determining a next target wall-like boundary from the remaining candidate wall-like boundaries based on an end position of the execution path, generating a next execution path of walking along the next target wall-like boundary starting from the end position, until an execution path sequence of walking along each of the candidate wall-like boundaries is generated; and controlling the cleaning robot to walk along each wall-like boundary in turn according to the execution path sequence.

[0028] In some embodiments, in a case where there is a historical position of a stake in the perception map, the closer a candidate wall-like boundary is to the historical position, the higher the priority of the candidate wall-like boundary being determined as a target wall-like boundary.

[0029] In a second aspect of the present application, a cleaning robot is provided, comprising a processor and a memory, the memory storing a computer program executable on the processor, the computer program being executed by the processor to implement the steps of the control method of the cleaning robot provided in the first aspect.

[0030] In a third aspect of the present application, a computer-readable storage medium is provided, storing computer instructions, the computer instructions being executed by a processor to implement the steps of the control method of the cleaning robot provided in the first aspect.

[0031] In a fourth aspect of the present application, a computer program product is provided, comprising computer instructions, the computer instructions being executed by a processor to implement the steps of the control method of the cleaning robot provided in the first aspect.

[0032] The above description is only a summary of the technical solutions provided in the present application. In order to enable one skilled in the art to better understand the technical means of the present application, the contents of the description can be implemented, and in order to make the above and other characteristics and effects of the present application more apparent and easy to understand, the following embodiments of the present application are described. BRIEF DESCRIPTION OF DRAWINGS

[0033] FIG. 1 shows a structural schematic diagram of a cleaning system according to some embodiments of the present application.

[0034] FIG. 2 shows a structural schematic diagram of a cleaning robot according to some embodiments of the present application.

[0035] FIG. 3 shows a flowchart of a control method of a cleaning robot according to some embodiments of the present application.

[0036] FIG. 4 shows a flowchart of a control method of a cleaning robot according to some embodiments of the present application.

[0037] FIGS. 5 to 7 show schematic diagrams of three exemplary scenarios applicable to embodiments of the present application.

[0038] FIG. 8 shows a schematic diagram of an along-the-wall scenario according to some embodiments of the present application.

[0039] FIG. 9 shows a schematic diagram of an along-the-wall scenario according to some other embodiments of the present application.

[0040] FIG. 10 shows a schematic diagram of a walking path of a cleaning robot in an inside-outside wall scenario according to some embodiments of the present application.

[0041] FIG. 11 shows a schematic diagram of an execution path according to some embodiments of the present application.

[0042] FIG. 12 shows a schematic diagram of a walking path of a cleaning robot in a scenario including a narrow area according to some embodiments of the present application.

[0043] FIG. 13 shows a flowchart of a control method of a cleaning robot according to some other embodiments of the present application.

[0044] FIG. 14 shows a schematic diagram of a structure of a cleaning robot according to some other embodiments of the present application.

[0045] Reference signs: cleaning robot 10; base station 20; processor 101; memory 102; robot body 110, front portion 111; rear portion 112; perception module 120; position determination device 121; front bump structure 122; human-machine interaction module 130; wall boundary 300; static obstacle 301; dynamic obstacle 302; outside wall boundary 300a; inside wall boundary 300b. DETAILED DESCRIPTION

[0046] Exemplary embodiments of the present application will be described in detail with reference to the accompanying drawings. It is noted that the size of components can be exaggerated in the drawings for clarity. Although exemplary embodiments of the present application are shown in the drawings, it is understood that the present application can be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that the present application will be thorough and complete, and will fully convey the scope of the application to those skilled in the art.

[0047] It should be noted that the term "and / or" appearing in this text merely describes an association relationship of associated objects, and can represent three relationships, for example, A and / or B can represent three cases of A alone, A and B together, and B alone. The term "multiple" includes two or more cases. The terms "first", "second", etc. are used only as a distinction, not as a limitation on the number and sequence of their objects. The terms "front", "back", "up", "down", "left", "right", etc. are used only to represent the relative positional relationship, and when the absolute position of the described object changes, the relative positional relationship may also change accordingly.

[0048] FIG. 1 shows a structural schematic diagram of a cleaning system according to some embodiments of the present application. As shown in FIG. 1, the cleaning system 1 includes a cleaning robot 10 and a base station 20 for interfacing with the cleaning robot 10. The cleaning robot 10 is a smart cleaning device with self-moving function, such as a sweeping robot, a mopping robot, a sweeping-mopping integrated robot, a floor polishing robot, or a weeding robot, etc.

[0049] FIG. 2 shows a structural schematic diagram of a cleaning robot according to some embodiments of the present application. It should be noted that FIG. 2 is illustrative taking the cleaning robot 10 as a sweeping robot as an example, and the structure and shape of the sweeping robot shown in FIG. 2 are only illustrative and not as a limitation. As shown in FIG. 2, the cleaning robot 10 can include a machine body 110, a perception module 120, a controller, a driving module, a cleaning assembly, a power module, and a human-computer interaction module 130. In some embodiments, as shown in FIG. 1, the machine body 110 includes a front portion 111 and a rear portion 112, and has an approximately circular shape (circular in front and back), or other shapes, including but not limited to an approximately D-shaped shape with a circular rear and a rectangular or square shape with a front and a rear.

[0050] For example, the perception module 120 can include a position determination device 121 located on the machine body 110, a collision sensor disposed on the front collision structure 122 of the front portion 111 of the machine body 110, a wall sensor located on the side of the machine, a cliff sensor disposed on the lower part of the machine body 110, and a magnetometer, accelerometer, gyroscope, odometer, etc. sensing device disposed inside the machine body 110, for providing various position information and motion state information of the machine to the controller.

[0051] As shown in FIG. 2, the front portion 111 of the machine body 110 can carry a front bumper structure 122, via which a sensor system, such as a collision sensor or a proximity sensor (e.g., an infrared sensor) disposed thereon, detects one or more events in the travel path of the cleaning robot 10 when the drive module propels the cleaning robot 10 to travel on the ground during a cleaning process, and the cleaning robot 10 can control the drive module to respond to the events, such as obstacles, walls, etc., detected by the front bumper structure 122, for example, to perform an obstacle avoidance operation away from the obstacles, etc.

[0052] The machine body 110 can also be provided with a signal transmitting / receiving device for signal transmission with a corresponding device on the base station 20. For example, the signal transmitting / receiving device can be an infrared transmitting / receiving device, which can include one or more infrared transmitters / receivers, and of course can also be a device for receiving signals through wireless communication, including but not limited to Bluetooth, WiFi, etc. In other embodiments, the position determining device 121 (such as a camera and / or a laser sensor) can be located on the front side of the machine body 110, i.e., the frontmost end of the front portion 111, so as to more accurately sense the environment in front of the cleaning robot 10 and achieve accurate positioning. Similarly, the infrared transmitting / receiving device can also be provided on the front side of the machine body 110 so that the cleaning robot 10 can receive the beacon signal emitted by the base station 20.

[0053] For example, the controller can be provided on a circuit board within the machine body 110, including a non-transitory memory (such as a hard disk, a flash memory, and a random access memory, etc.) and a processor (such as a central processing unit and an application processor, etc.). The application processor can draw an instant map of the environment in which the cleaning robot 10 is located according to the obstacle information fed back by the laser ranging device and a pre-configured positioning algorithm, such as Simultaneous Localization And Mapping (SLAM).

[0054] For example, the drive module can manipulate the machine body 110 to travel across the ground based on drive commands having distance and angle information. For example, the cleaning assembly can include a dry cleaning assembly and / or a wet cleaning assembly, the specific structure of which can be referred to related art. The cleaning robot 10 can clean a target surface, such as the ground, by the cleaning assembly when it is in a working mode, i.e., performing a cleaning task.

[0055] For example, the power module can include a rechargeable battery, such as a nickel-hydrogen battery and a lithium battery. The rechargeable battery can be charged by connecting a charging electrode provided on the side or below the machine body 110 to an electrode on the base station 20.

[0056] For example, the human-computer interaction module 130 can include keys on a host panel for a user to make a function selection; can also include a display screen and / or an indicator light and / or a loudspeaker to show the user the current mode of the machine or the function selection item; and can also include a microphone to receive the voice instruction of the user to realize a voice control function. In some embodiments, the user can also interact with the cleaning robot 10 through a client (i.e., an application) installed on a user terminal that establishes a communication connection with the cleaning robot 10.

[0057] The base station 20 is used to interface with the cleaning robot 10 and at least provide charging service for the cleaning robot 10. In this article, the base station 20 is also referred to as a "stake", the process of the cleaning robot 10 searching for the base station 20 is referred to as "stake searching", and the process of the cleaning robot 10 returning to the base station 20 is referred to as "stake returning". Of course, in addition to the charging function, in some embodiments, the base station 20 can also have other functions, such as dust collection function, mop cleaning function, and drying function, etc., which are determined according to the actual product needs.

[0058] Some embodiments of the present application provide a control method of a cleaning robot, which can be applied to the above-mentioned cleaning robot 10. FIG. 3 shows a flowchart of the control method of the cleaning robot according to some embodiments of the present application. As shown in FIG. 3, the control method can at least include the following steps S101 and S102:

[0059] Step S101, obtaining a perception map drawn by the cleaning robot;

[0060] Step S102, performing an environment exploration step based on the obtained perception map, the environment exploration step including: controlling the cleaning robot to walk along a wall-like boundary in the perception map, and exploring the environment in the walking process. In some embodiments, the wall-like boundary is an obstacle boundary with a length satisfying a preset condition.

[0061] By controlling the cleaning robot to explore the environment while walking along the wall-like boundary in the perception map, small unknown areas or corner areas with boundaries are less likely to be missed, which is conducive to improving the completeness rate of environment exploration.

[0062] The above-mentioned control method can be applied to realize the exploration function of the cleaning robot 10 on the environment, for example, to realize the mapping function of the cleaning robot 10 in an unknown environment or a partially unknown environment. For another example, it can also be applied to realize the autonomous stake searching function of the cleaning robot 10 in an unknown environment or a partially unknown environment or a known environment. The embodiments herein are mainly described by taking the mapping function and the stake searching function as examples.

[0063] In either the mapping scenario or the pile searching scenario, the environment needs to be mapped when the cleaning robot is in an unknown environment. At this time, the exploration of the environment in the walking process in step S102 can include updating the perception map based on the environment information collected in the walking process. In the pile searching scenario, the exploration of the environment in the walking process in step S102 can include detecting whether a pile signal is received in the walking process, and if the pile signal is received, controlling the cleaning robot to return to the pile based on the pile signal.

[0064] In order to better understand the technical solutions of the present application, some embodiments of the above control method will be described below with respect to the implementation of the mapping function and the implementation of the pile searching function.

[0065] FIG. 4 shows a flowchart of a control method of a cleaning robot according to some embodiments of the present application. The corresponding embodiment of FIG. 4 takes the implementation of the mapping function of the cleaning robot 10 as an example. As shown in FIG. 4, the control method can at least include the following steps S201 to S203.

[0066] In step S201, a perception map drawn by the cleaning robot is obtained.

[0067] In the case where the control method is applied to implement the mapping function, the cleaning robot can execute steps S201 to S203 in response to a mapping instruction to construct a map of an unknown environment. For example, the mapping instruction can be triggered by a user through a client installed on a user terminal (such as a mobile phone, a tablet computer, etc.). For example, in the case where the cleaning robot has not mapped the environment or the mapping is incomplete, the user can issue a mapping instruction to the cleaning robot by triggering a mapping button in the client.

[0068] In step S201, the perception map obtained by the cleaning robot contains an explored region and an unexplored region. In the case where the cleaning robot is in an unknown environment, the obtained perception map is a local and real-time map drawn by the cleaning robot. That is, in the case where the cleaning robot is in an unknown environment, after the cleaning robot receives a mapping instruction, the perception module 120 needs to be triggered to collect the surrounding environment information first, and then a local and real-time map of the environment where the cleaning robot is located is drawn according to the environment information collected by the perception module 120, and then the above steps S201 to S203 are executed.

[0069] After step S201 is executed, the environment exploration step can be executed based on the obtained perception map. The environment exploration step can at least include step S202 and step S203.

[0070] In step S202, the cleaning robot is controlled to walk along a wall-like boundary in the perception map.

[0071] In step S203, the perception map is updated based on the environment information collected during the walking process.

[0072] In step S202, the wall-like boundary is a boundary of an obstacle whose length satisfies a preset condition. For example, the preset condition can be that the length exceeds a first preset threshold, which can be set according to actual needs, for example, can be set to 1.5 meters. That is, the wall-like boundary can include not only the wall boundary but also the boundaries of other obstacles in the environment, for example, can include static obstacles such as cabinets, sofas, and columns, and can also include dynamic obstacles such as people, animals, and moved boxes or stools.

[0073] In some embodiments, before step S202 is performed, the obstacle boundaries in the perception map can be extracted first. For example, for some static obstacles with relatively large sizes, the boundaries of individual obstacles can be extracted. For some static obstacles with relatively small sizes and close spacing distances, the combined boundaries of multiple static obstacles can be extracted. For the scenario where obstacles are stacked on the wall boundary, an envelope line can be generated according to the wall boundary and the boundaries of the stacked obstacles as the extracted obstacle boundaries. Then, from the extracted obstacle boundaries, the boundaries whose lengths satisfy the above-mentioned preset condition are screened and determined as the wall-like boundaries in the perception map.

[0074] For ease of understanding, FIGS. 5 to 7 show schematic diagrams of three exemplary scenarios applicable according to embodiments of the present application. In the scenarios shown in FIGS. 5, 6, and 7, the large rectangular frame represents the wall boundary 300, the small rectangular frame represents the base station 20 (also referred to as a stake), and the circle represents the cleaning robot 10. In the scenario shown in FIG. 5, the wall-like boundaries are all wall boundaries, and the cleaning robot 10 can walk along the wall according to the path shown by the dashed arrow in FIG. 5 and update the perception map during the walking process. In the scenario shown in FIG. 6, the wall-like boundaries include not only the wall boundary 300 but also the boundaries of the static obstacle 301 placed on the wall, and the cleaning robot 10 can walk along the wall and the boundaries of the static obstacle 301 according to the path shown by the dashed arrow in FIG. 6 and update the perception map during the walking process. In the scenario shown in FIG. 7, the wall-like boundaries include not only the wall boundary 300 but also the boundaries of the dynamic obstacle 302, and the cleaning robot 10 can walk along the wall according to the path shown by the dashed arrow in FIG. 7, and when the dynamic obstacle 302 that has moved to the wall from another position appears in the updated perception map, the cleaning robot 10 can continue to walk along the boundaries of the dynamic obstacle 302.

[0075] To avoid repeatedly walking along the same class wall boundary, affecting the mapping efficiency, after controlling the cleaning robot to walk along the class wall boundary, the class wall boundary walked along by the cleaning robot can be recorded, so that after the class wall boundary in the perception map is obtained, the class wall boundary that has been walked along is first removed, and then the class wall boundary that has not been walked along is selected for edge exploration.

[0076] It should be noted that the perception map obtained may have class wall boundaries that have not been walked along by the cleaning robot, or may not have class wall boundaries that have not been walked along by the cleaning robot. If the perception map has class wall boundaries that have not been walked along by the cleaning robot, steps S202 and S203 are performed.

[0077] In some embodiments, the above environment exploration step can further include: if there is no class wall boundary that has not been walked along by the cleaning robot in the perception map, and there is an unexplored area, the exploration mode can be entered, that is, the cleaning robot is controlled to walk to the unexplored area, and the perception map is updated based on the environmental information collected during walking; if there is no class wall boundary that has not been walked along in the perception map, and there is no unexplored area, it is determined that the mapping is complete.

[0078] For example, the process of controlling the cleaning robot to walk to the unexplored area can include: obtaining the boundary between the explored area and the unexplored area in the perception map, selecting the geometric center of the boundary as a target point, generating an execution path from the current position of the cleaning robot to the target point, and controlling the cleaning robot to walk to the unexplored area according to the execution path. During the walking of the cleaning robot, the perception module 120 can fuse the newly explored environmental information and incrementally build the map information to update the perception map. After obtaining the updated perception map, the above environment exploration step can be performed again based on the updated perception map, and if the updated perception map has a class wall boundary that has not been walked along, the exploration mode ends and the edge action is performed.

[0079] In some embodiments, to avoid the influence of local map open areas caused by part of the short distance open areas or perception deviation on mapping efficiency, a length threshold can be set in advance for the length of the boundary between the explored area and the unexplored area, and the unexplored area with a boundary length lower than the length threshold is filtered out and not explored.

[0080] In actual implementation, after each update of the perception map, the updated perception map can be reacquired, and the above environment exploration step is repeatedly performed for the updated perception map until there is no class wall boundary that has not been walked along in the perception map and there is no unexplored area, and then it is determined that the mapping is complete.

[0081] In some embodiments, the process of controlling the cleaning robot to walk along the wall-like boundary in the perception map can include: in the case that there are multiple un-walked wall-like boundaries in the perception map, taking the multiple un-walked wall-like boundaries as candidate wall-like boundaries, and determining a target wall-like boundary from the candidate wall-like boundaries; and controlling the cleaning robot to walk along the target wall-like boundary.

[0082] Since the perception map is updated step by step, in some application scenarios, a complete wall-like boundary can be divided into multiple segments for extraction, for example, one segment is extracted in the current perception map obtained this time, and after the cleaning robot walks along this segment of wall-like boundary, the next segment is extracted from the updated perception map. Therefore, in some embodiments, the process of determining a target wall-like boundary from the candidate wall-like boundaries can include: in the case that there are walked wall-like boundaries for the cleaning robot, if there is a subsequent wall-like boundary of the just-walked wall-like boundary in the candidate wall-like boundaries, determining the subsequent wall-like boundary as the target wall-like boundary. In this way, it can be ensured that the cleaning robot can walk along a wall-like boundary completely and then start walking along the next wall-like boundary when walking along a wall-like boundary, so as to minimize the return path of the cleaning robot and improve the mapping efficiency.

[0083] It should be noted that the subsequent wall-like boundary of the just-walked wall-like boundary in the candidate wall-like boundaries refers to that the candidate wall-like boundary and the just-walked wall-like boundary belong to a complete wall-like boundary, but are extracted in adjacent perception maps obtained this time due to the limited update area of each map.

[0084] FIG. 8 shows a walking along the edge scenario according to some embodiments of the present application. As shown in FIG. 8, the A1 region is an explored region in the perception map obtained by the cleaning robot for the i-th time, and after the cleaning robot walks along the wall-like boundary L1 in the A1 region, an updated perception map can be obtained. The A2 region represents the explored region in the updated perception map, and the A2 region adds the B1 region (e.g., the diagonal hatched region in FIG. 8) compared to the A1 region. The remaining regions are unexplored regions (e.g., the dot-filled region in FIG. 8). When the above environment exploration step is performed based on the updated perception map, the wall-like boundary L2 and the wall-like boundary L3 are obtained. The wall-like boundary L2 includes the just-walked wall-like boundary L1 and another un-walked wall-like boundary L11. The un-walked wall-like boundary L11 and the wall-like boundary L3 are both taken as candidate wall-like boundaries after the just-walked wall-like boundary L1 is removed. Since the wall-like boundary L11 is the subsequent wall-like boundary of the just-walked wall-like boundary L1, the wall-like boundary L11 can be selected as the target wall-like boundary this time. After walking along the wall-like boundary L1, the cleaning robot can continue to walk along the wall-like boundary L11, so as to ensure that the current wall-like boundary is walked along completely, and then other wall-like boundaries are walked along, so as to reduce the return path of the cleaning robot.

[0085] There can be various implementations of determining whether a candidate class wall boundary is a subsequent class wall boundary of the just-traveled class wall boundary. For example, the candidate class wall boundary can be compared with the just-traveled class wall boundary to determine whether the candidate class wall boundary is a subsequent class wall boundary of the just-traveled class wall boundary. For another example, each candidate class wall boundary can be scored based on a length of the candidate class wall boundary and a distance between the candidate class wall boundary and the cleaning robot, and if a highest score exceeds a preset score threshold, it is determined that the candidate class wall boundary is a subsequent class wall boundary of the just-traveled class wall boundary, and if none of the scores exceeds the preset score threshold, it is determined that there is no subsequent class wall boundary of the just-traveled class wall boundary in the candidate class wall boundaries.

[0086] In a case where the target class wall boundary is a subsequent class wall boundary of the just-traveled class wall boundary, the manner of controlling the cleaning robot to travel along the target class wall boundary can be that an along-wall path of the subsequent class wall boundary is generated based on a preconfigured along-wall distance, so that after the cleaning robot travels along the previous class wall boundary, the cleaning robot is controlled to continue traveling along the subsequent class wall boundary of the just-traveled class wall boundary according to the along-wall path. In other embodiments, after the cleaning robot travels along the previous class wall boundary, the cleaning robot can be directly controlled to continue traveling along the subsequent class wall boundary of the just-traveled class wall boundary by using the along-wall sensor and the preconfigured along-wall distance.

[0087] In actual application scenarios, after the cleaning robot travels along the current class wall boundary, the map can not be updated in time due to network delay or other problems, so that it is impossible to determine from the acquired perception map whether the just-traveled class wall boundary has a subsequent class wall boundary. In order to avoid the situation that the cleaning robot misses the subsequent class wall boundary of the current just-traveled class wall boundary and turns to travel along other class wall boundaries, resulting in an increase in the number of U-turns and affecting the mapping efficiency, in some embodiments, the above control method further includes: after the cleaning robot travels along the class wall boundary, if the perception map has not been updated, triggering the perception module to scan the surrounding environment, determining whether there is a subsequent class wall boundary of the just-traveled class wall boundary in front of the cleaning robot based on the perception data obtained by the scanning, if there is a subsequent class wall boundary, and the subsequent class wall boundary contains a boundary segment that has not been traveled along, controlling the cleaning robot to continue traveling along the boundary segment, and updating the perception map based on the environmental information collected during the traveling.

[0088] As another implementation, for a subsequent wall-like boundary detected by the perception module, if the length of the un-traveled boundary segment in the subsequent wall-like boundary exceeds a set threshold, it is determined that the subsequent wall-like boundary contains an un-traveled boundary segment, and if the length of the un-traveled boundary segment in the subsequent wall-like boundary does not exceed the set threshold, it is determined that the subsequent wall-like boundary does not contain an un-traveled boundary segment. In the case that the length of the un-traveled boundary segment is too short, the environmental information near the boundary segment has been probably perceived by the cleaning robot, and there is no need to control the cleaning robot to travel along the boundary segment, which can reduce unnecessary time consumption and improve mapping efficiency.

[0089] If there is no subsequent wall-like boundary of the just-traveled wall-like boundary in front of the cleaning robot, or there is a subsequent wall-like boundary and there is no un-traveled boundary segment in the subsequent wall-like boundary, and there are still other wall-like boundaries in the perception map in addition to the just-traveled wall-like boundary, a target wall-like boundary is determined from the other wall-like boundaries, the cleaning robot is controlled to travel along the target wall-like boundary, and the perception map is updated based on the environmental information collected during the travel. If there are no other wall-like boundaries in the perception map in addition to the just-traveled wall-like boundary, and there is still an unexplored area in the perception map, the cleaning robot is controlled to travel to the unexplored area in an exploration mode.

[0090] FIG. 9 shows a schematic diagram of a boundary traveling scenario according to some embodiments of the present application. As shown in FIG. 9, the A1 area is an explored area in the perception map obtained by the cleaning robot for the i-th time, and the other areas are unexplored areas (e.g., the dot-filled areas in (a) and (b) of FIG. 9). The wall-like boundaries L1 and L2 are extracted from the A1 area as candidate wall-like boundaries, and the wall-like boundary L1 is selected as a target wall-like boundary. After the cleaning robot travels along the wall-like boundary L1, it is assumed that the perception map is not updated in time. In the case that the perception module 120 detects that there is a subsequent wall-like boundary L11 of the wall-like boundary L1 in front, it is determined whether the subsequent wall-like boundary L11 is a wall-like boundary that has been traveled along. If it has been traveled along, the cleaning robot is controlled to travel along the wall-like boundary L2. As shown in (a) of FIG. 9, if it has not been traveled along, the cleaning robot is controlled to continue to travel along the subsequent wall-like boundary L11. As shown in (b) of FIG. 9, if a part of the boundary segment K1 of the subsequent wall-like boundary L11 has been traveled along and another part of the boundary segment K2 has not been traveled along, it is determined whether the length of the boundary segment K2 exceeds a set threshold, and if it exceeds the set threshold, the cleaning robot is controlled to continue to travel along the boundary segment K2. If it does not exceed the set threshold, the boundary segment K2 is ignored, and it is determined that the subsequent wall-like boundary L11 has been traveled along. In this way, it can be ensured that the wall-like boundary currently traveled along is traveled along completely before traveling along other wall-like boundaries, which can reduce the turning back and improve the mapping efficiency.

[0091] In some embodiments, the process of determining the target class wall boundary from the candidate class wall boundaries can further include: if there is no class wall boundary that the cleaning robot has passed, or there is no subsequent class wall boundary of the class wall boundary that the cleaning robot has just passed in the candidate class wall boundaries, determining the target class wall boundary from the candidate class wall boundaries based on the length of the candidate class wall boundary and the distance between the candidate class wall boundary and the cleaning robot.

[0092] For example, the candidate class wall boundary can be scored based on the length of the candidate class wall boundary and the distance between the candidate class wall boundary and the cleaning robot, and the candidate class wall boundary with the highest score in the candidate class wall boundaries can be determined as the target class wall boundary. The distance between the candidate class wall boundary and the cleaning robot here can be the shortest distance between the two, or can also be the length of the shortest path for the cleaning robot to walk from the current distance to the candidate class wall boundary.

[0093] For example, the length of the candidate class wall boundary is represented as l, and the distance between the candidate class wall boundary and the cleaning robot is represented as d. The larger the ratio l / d of the two, the higher the score. In this way, the cleaning robot can be ensured to explore the class wall boundary with a shorter distance first, and then explore the class wall boundary with a longer distance, so as to reduce the return path and improve the mapping efficiency.

[0094] In some application scenarios, there are large pillars or inner and outer walls in the environment to be explored. By selecting the target class wall boundary through the above scoring, it can be ensured that the cleaning robot will first walk along the outer wall with a shorter distance after coming out of the base station close to the outer wall, and then walk along the inner wall or the boundary of the pillar after the outer wall is passed. FIG. 10 shows a walking path schematic diagram of a cleaning robot in an inner and outer wall scenario according to some embodiments of the present application. As shown in FIG. 10, after the cleaning robot 10 comes out of the base station 20 close to the outer wall, it walks along the outer wall boundary 300a along the wall path shown by the dashed line with an arrow, and then walks to the inner wall boundary 300b with the shortest distance after the outer wall boundary 300a is passed, and walks along the inner wall boundary 300b along the wall path shown by the dashed line with an arrow, so as to realize the mapping in this scenario.

[0095] In some application scenarios, there are closed boundaries in the candidate wall boundary. Some closed boundaries, although meeting the preset condition in length, actually do not need to be explored along the edge, such as the boundary of a chair. Some closed boundaries are preferentially explored due to being too long, which may increase the return path. Therefore, in order to avoid the closed boundary affecting the edge exploration of the cleaning robot, in some embodiments, a second preset threshold can be set in advance for the closed boundary, the second preset threshold being greater than the first preset threshold. The process of determining the target wall boundary from the candidate wall boundary can further include: in the case that there is a closed boundary in the candidate wall boundary, if the length of the closed boundary is less than the second preset threshold, the closed boundary is removed from the candidate wall boundary; and if the length of the closed boundary is greater than or equal to the second preset threshold, the score of the closed boundary is reduced. For example, a decay coefficient (greater than 0 and less than 1) corresponding to the closed boundary can be set in advance, and when the closed boundary is scored, the obtained score is multiplied by the decay coefficient as the final score of the closed boundary.

[0096] In some embodiments, the process of controlling the cleaning robot to walk along the wall boundary in the perception map can include: generating a wall-following path of the wall boundary based on a preconfigured wall-following distance; generating an execution path of walking along the wall boundary based on the wall-following path, the current position of the cleaning robot, and a preset wall-following direction; and controlling the cleaning robot to walk along the wall boundary according to the execution path.

[0097] The wall-following path is the path of the cleaning robot walking along the wall boundary. The wall-following distance can be dynamically adjusted according to the actual scene, for example, it can be in the range of 40cm-50cm. Exemplarily, the wall-following distance can be set to 40cm, 45cm or 50cm.

[0098] In the case that the target wall boundary is not the subsequent wall boundary of the wall boundary just walked along, the cleaning robot needs to generate a path from the current position to the target wall boundary to be walked along, in addition to generating the wall-following path, so as to generate an execution path of walking along the target wall boundary from the current position by combining the walking path and the wall-following path.

[0099] At this time, the process of generating the execution path of walking along the wall-like boundary based on the wall-following path, the current position of the cleaning robot and the preset wall-following direction can include: taking a point in the wall-following path closest to the current position of the cleaning robot as a tentative connection point; if the tentative connection point divides the wall-following path into two sub-paths, determining one of the two sub-paths as a candidate sub-path and the other as a non-candidate sub-path based on the preconfigured wall-following direction; if the length of the candidate sub-path is greater than or equal to a third preset threshold, generating a walking path of the cleaning robot from the current position to the tentative connection point, splicing the walking path with the candidate sub-path to obtain the execution path; and if the length of the candidate sub-path is less than the third preset threshold, generating a walking path of the cleaning robot from the current position to an end point of the non-candidate sub-path away from the candidate sub-path, and splicing the walking path with the wall-following path to obtain the execution path.

[0100] The wall-following direction can be set according to actual needs, and can be right wall-following, that is, the wall-like boundary followed is located on the right side of the cleaning robot, or can be left wall-following, that is, the wall-like boundary followed is located on the left side of the cleaning robot, or can be partially right wall-following and partially left wall-following, and the present application does not limit this. In some embodiments, the wall-following direction can be determined according to the setting position of the wall-following sensor on the cleaning robot. For example, if the wall-following sensor is set on the right side of the cleaning robot, the wall-following direction is configured as right wall-following. In this paper, right wall-following is mainly taken as an example for illustration.

[0101] FIG. 11 shows an execution path diagram according to some embodiments of the present application. As shown in FIG. 11, path R1 is a wall-following path of target wall-like boundary L1, P is the current position of the cleaning robot, and Q is the point in the wall-following path R1 closest to the current position P of the cleaning robot, that is, the tentative connection point. Q divides the wall-following path R1 into two sub-paths, denoted as R11 and R12. Taking right wall-following as an example of the wall-following direction, R11 is the candidate sub-path and R12 is the non-candidate sub-path.

[0102] As shown in FIG. 11(a), assuming that the length of R11 is greater than or equal to the third preset threshold, a walking path F1 from P to Q is generated, and F1 is spliced with R11 to obtain an execution path of walking along the target wall-like boundary L1 starting from P. Controlling the cleaning robot to perform walking action according to the execution path can realize the cleaning robot walking along the target wall-like boundary L1. That is, this time, only sub-path R11 can be followed, and sub-path R12 can be ignored and left for subsequent exploration, which can reduce the return path of the cleaning robot and is conducive to improving the mapping efficiency. Of course, when recording the wall-like path that has been followed, only the actually followed sub-path R11 can be recorded, so that the exploration of sub-path R12 will not be missed, thereby ensuring the completeness of the mapping.

[0103] As shown in the (b) diagram of FIG. 11, assuming that the length of R11 is less than the third preset threshold, a walking path F1' from the P point to the end point H of R12 is generated, and then F1' is spliced with R1 to obtain an execution path for walking along the target wall-like boundary L1 starting from the P point.

[0104] In some application scenarios, there are narrow areas in the environment to be explored. For some narrow areas with a width that is too narrow, according to the kinematics model of the robot, the cleaning robot cannot enter or exit the area, and thus cannot perform exploration. In order to be applicable to these scenarios in which narrow areas exist, in some embodiments, in the process of controlling the cleaning robot to walk along the wall-like boundary in the perception map, the wall-like boundary of a narrow area with a width less than a preset width threshold can be ignored. In some embodiments, the preset width threshold can be set according to the kinematics model of the robot.

[0105] In addition, some narrow areas that can be entered by the cleaning robot include two opposite boundaries. Since the distance between the two boundaries is relatively small, the cleaning robot only needs to explore one of the boundaries along the edge to achieve exploration of the entire narrow area. In order to be applicable to this scenario, in some embodiments, the above process of controlling the cleaning robot to walk along the wall-like boundary in the perception map can include: if the wall-like boundary along which the cleaning robot walks includes a first boundary segment and a second boundary segment arranged opposite to each other, and during the process of the cleaning robot walking along the first boundary segment, the second boundary segment is also within the perception range of the cleaning robot, then after the cleaning robot walks along the first boundary segment, the cleaning robot can walk along the next wall-like boundary without walking along the second boundary segment. In this way, unnecessary time consumption can be reduced, and the mapping efficiency can be improved. It should be noted that the first boundary segment and the second boundary segment are distinguished according to the along-wall direction, and the second boundary segment is a subsequent boundary segment of the first boundary segment.

[0106] For example, the along-wall paths of the first boundary segment and the second boundary segment can be generated based on the along-wall distance, and whether the second boundary segment is also within the perception range of the cleaning robot during the process of the cleaning robot walking along the first boundary segment can be determined by comparing the positional relationship between the along-wall path of the first boundary segment and the along-wall path of the second boundary segment. For another example, a distance range can be set in advance for the above scenario, and if the distance between the first boundary segment and the second boundary segment is within the distance range, it is determined that exploration along one of the boundary segments can achieve bilateral exploration. At this time, the along-wall path generated for the first boundary segment can be directly used as the final execution along-wall path, or the along-wall path can be generated in combination with the first boundary segment and the second boundary segment, for example, the along-wall path is set along the center line between the first boundary segment and the second boundary segment.

[0107] FIG. 12 shows a schematic diagram of a walking path of a cleaning robot in a scene containing a narrow area according to some embodiments of the present application. As shown in FIG. 12, the wall-like boundary obtained from the narrow area in the perception map includes a first boundary segment LN1 and a second boundary segment LN2 arranged oppositely, the first boundary segment LN1 is a straight line segment, and the second boundary segment LN2 contains a curved segment. When the cleaning robot explores the narrow area along the boundary, it first walks along the first boundary segment LN1 according to a path RN1, and in the process, it can simultaneously explore the second boundary segment LN2. After walking along the path RN1, it no longer continues to walk along the second boundary segment LN2, but directly walks along a straight line path RL from the current position to the next wall-like boundary outside the narrow area, and continues to walk along the next wall-like boundary.

[0108] In the process of controlling the cleaning robot to walk along the wall-like boundary, some unexpected situations may occur, such as being blocked by an obstacle suddenly appearing on the planned execution path. Therefore, in order to ensure the reliability of the entire control process, in some embodiments, the cleaning robot can be controlled to perform an obstacle avoidance action during the process of walking along the wall-like boundary, so as to ensure that the current wall-following path can be finally executed. The obstacle avoidance action can include but is not limited to detouring, tracking, stopping and waiting, and re-planning, etc.

[0109] FIG. 13 shows a flowchart of a control method of a cleaning robot according to yet some embodiments of the present application. The embodiments corresponding to FIG. 13 take the implementation of the stake-finding function of the cleaning robot as an example. As shown in FIG. 13, the control method can at least include the following steps S301 to S303.

[0110] In step S301, in response to a stake-finding instruction, a perception map drawn by the cleaning robot is obtained.

[0111] For example, the stake-finding instruction can be triggered autonomously by the cleaning robot when it finds that the location of the stake point has changed (for example, the user moves the location of the stake or the location of the stake point deviates due to collision, etc.) during the execution of the task outside the stake, or it can also be triggered by the user through the client installed on the user terminal (such as a mobile phone, a tablet computer, etc.).

[0112] After executing step S301, the following environment exploration steps can be executed based on the obtained perception map:

[0113] Step S302, controlling the cleaning robot to walk along a wall-like boundary in the perception map, the wall-like boundary being a boundary of an obstacle whose length satisfies a preset condition;

[0114] Step S303, detecting whether a stake signal is received during the walking process, and if the stake signal is received, controlling the cleaning robot to return to the stake based on the stake signal.

[0115] In actual application scenarios, the pile is usually placed aside. By controlling the cleaning robot to walk along the wall-like boundary in the perception map, the pile signal is detected in the process of walking along the wall, which is conducive to improving the completeness and accuracy of pile searching and is not easy to miss the position to be searched.

[0116] In the case that the cleaning robot is in an unknown environment, the perception map obtained in step S301 is a local and real-time map drawn by the cleaning robot, i.e., the cleaning robot needs to search for piles while mapping. At this time, in addition to detecting whether the pile signal is received, the above-mentioned environment exploration step also includes updating the perception map based on the environment information collected during walking. At this time, the above-mentioned control method also includes: each time the updating of the perception map is completed, the updated perception map is reacquired, and the above-mentioned environment exploration step is repeatedly executed for the updated perception map until the pile signal is received, or there is no untraveled wall-like boundary and no unexplored area in the obtained perception map.

[0117] In some embodiments, the above-mentioned control method can also include: if the pile signal has not been received until there is no untraveled wall-like boundary and no unexplored area in the perception map, stopping pile searching and prompting the user that pile searching is abnormal. In this way, the user can be reminded in time to handle the abnormal situation, which is conducive to ensuring the normal work of the cleaning robot.

[0118] It should be noted that the implementation process of controlling the cleaning robot to walk along the wall-like boundary in the perception map is similar to the embodiment corresponding to FIG. 4, and the related description of the above-mentioned embodiment can be referred to, which will not be repeated here. It should be noted that, considering the need to detect the pile signal, the wall-following distance of the cleaning robot walking along the wall-like boundary in the environment exploration step can be determined according to the emission distance of the pile signal.

[0119] It should also be noted that, in the case that the cleaning robot is in a known environment (including a known part of the environment or the entire environment), the obtained perception map is a map that has already been constructed, and in the process of pile searching, the perception map can not need to be updated again. Therefore, in some embodiments, in order to improve the pile searching efficiency, the process of controlling the cleaning robot to walk along the wall-like boundary in the perception map can include: first generating an execution path for walking along each wall-like boundary in the known map in turn, and then controlling the cleaning robot to walk according to the generated execution path.

[0120] In some embodiments, in the case that the perception map includes a plurality of class wall boundaries, the plurality of class wall boundaries can be taken as candidate class wall boundaries, a target class wall boundary is determined from the candidate class wall boundaries based on the current position of the cleaning robot; an execution path is generated for the target class wall boundary starting from the current position; a next target class wall boundary is determined from the remaining candidate class wall boundaries based on the end position of the execution path, a next execution path is generated for the next target class wall boundary starting from the above end position, until an execution path sequence is obtained for each candidate class wall boundary; and the cleaning robot is controlled to walk along each class wall boundary in turn according to the execution path sequence.

[0121] In other embodiments, the candidate class wall boundaries can be scored, and the candidate class wall boundary with the highest score is determined as the target class wall boundary. For example, the candidate class wall boundaries can be scored based on the length of the candidate class wall boundary and the distance between the candidate class wall boundary and the position of the cleaning robot, and specific details can be found in the related description of the above embodiments, which will not be repeated here. It should be noted that when the target class wall boundary is determined for the first time, the position of the cleaning robot refers to the current actual position of the cleaning robot. After that, the position of the cleaning robot refers to the end position of the execution path of the previous target class wall boundary.

[0122] For example, three candidate class wall boundaries L1, L2 and L3 are extracted from the perception map, and according to the current position of the cleaning robot, L1 has the highest score, and an execution path S1 is generated for the cleaning robot to walk along L1 starting from the current position. Then, L2 and L3 are scored based on the end position of the execution path S1, and assuming that L2 has the highest score, an execution path S2 is generated for walking along L2 starting from the end position of the execution path S1, and an execution path S3 is generated for walking along L3 starting from the end position of the execution path S2, thereby obtaining an execution path sequence {S1, S2, S3} of the known map at one time. Thereafter, the cleaning robot can be directly controlled to walk according to the execution path sequence {S1, S2, S3} starting from the current position of the cleaning robot, i.e., walking along S1 first, then walking along S2, and then walking along S3. In this process, if a stake signal is detected, the cleaning robot is controlled to return to the stake based on the stake signal, and the subsequent execution path that has not been walked is no longer executed.

[0123] In some embodiments, if the deviation of the stake position is caused by the user accidentally colliding with the stake position, the new stake position should be near the historical position. Therefore, in some embodiments, in the case that there is a historical position of the stake in the perception map, the closer the candidate class wall boundary is to the historical position, the higher the priority of the candidate class wall boundary to be determined as the target class wall boundary. The candidate class wall boundary closer to the historical position of the stake can be explored earlier, so that the stake searching can be completed as soon as possible in the case that the stake position deviates from the historical position by a small amount, thereby improving the efficiency of stake searching.

[0124] For example, a proximity coefficient corresponding to each candidate class wall boundary can be added when scoring the candidate class wall boundary. The value of the proximity coefficient is greater than or equal to 1, and the specific size is negatively correlated with the distance between the candidate class wall boundary and the historical position of the stake. That is, the closer the distance between the candidate class wall boundary and the historical position of the stake, the greater the value of the corresponding proximity coefficient, the higher the score, and the easier to be explored preferentially.

[0125] The control method of the cleaning robot provided in some embodiments of the present application can control the cleaning robot to walk along the class wall boundary in the perception map, and explore the environment during the walking process, such as mapping and / or stake searching. In this way, small unknown areas or corner areas with boundaries are less likely to be missed, and the completeness of the environment exploration is improved.

[0126] FIG. 14 shows a structural schematic diagram of a cleaning robot according to some embodiments of the present application. As shown in FIG. 14, some embodiments of the present application also provide a cleaning robot 10, which includes a processor 101 and a memory 102. The memory 102 stores a computer program that can be run on the processor 101. The computer program is executed by the processor 101 to implement the steps of the control method of the cleaning robot provided in any method embodiment described above, and can achieve the same technical effects. To avoid repetition, details are not described here.

[0127] Some embodiments of the present application also provide a computer readable storage medium. The computer readable storage medium stores computer instructions. The computer instructions are executed by a processor to implement the steps of the control method of the cleaning robot provided in any method embodiment described above, and can achieve the same technical effects. To avoid repetition, details are not described here. For example, the computer readable storage medium can be a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.

[0128] Some embodiments of the present application further provide a computer program product comprising computer instructions, which, when executed by a processor, implement the steps of the control method of the cleaning robot provided by any of the method embodiments above, and achieve the same technical effects. To avoid repetition, the same will not be described here.

[0129] It should be noted that each of the embodiments in the present application focuses on the differences from other embodiments, and the same or similar parts between the embodiments can be referred to each other. In the case of no conflict, the features in the same embodiment and different embodiments can be combined with each other.

[0130] Those skilled in the art should understand that the above discussion of any of the embodiments is only exemplary, and is not intended to imply that the scope of the present application is limited to these examples; under the idea of the present application, the above embodiments or technical features in different embodiments can also be combined, the steps can be implemented in any order, and there are many other changes of different aspects of one or more embodiments of the present application as described above. In order to be brief, they are not provided in details.

[0131] Although the exemplary embodiments of the present application have been described, those skilled in the art can make additional changes and modifications to the embodiments once they know the basic inventive concept. Therefore, the appended claims are intended to be interpreted as including the exemplary embodiments and all changes and modifications falling within the scope of the present application.

Claims

1. A control method of a cleaning robot, comprising: obtaining a perception map drawn by the cleaning robot; performing an environment exploration step based on the obtained perception map, the environment exploration step comprising: controlling the cleaning robot to walk along a wall-like boundary in the perception map, and exploring the environment during the walking, wherein the wall-like boundary is an obstacle boundary with a length satisfying a preset condition.

2. The method of claim 1, wherein, In a case where the cleaning robot is in an unknown environment, the perception map is a local and real-time map drawn by the cleaning robot, and the exploring the environment during the walking comprises: updating the perception map based on environment information collected during the walking.

3. The method of claim 2, wherein, The environment exploration step further comprises: if there is no wall-like boundary that has not been walked along and there is an unexplored area in the perception map, controlling the cleaning robot to walk to the unexplored area, and updating the perception map based on environment information collected during the walking. 4.The method of claim 2, further comprising: each time the updating of the perception map is completed, obtaining the updated perception map, and repeatedly performing the above-mentioned environment exploration step for the updated perception map until there is no wall-like boundary that has not been walked along and there is no unexplored area in the perception map obtained by the cleaning robot. 5.The method of claim 2, further comprising: after the cleaning robot has walked along the wall-like boundary, if the updated perception map is obtained, performing the environment exploration step based on the updated perception map.

6. The method of claim 2, wherein, The cleaning robot is provided with a perception module, and the method further comprises: after the cleaning robot has walked along the wall-like boundary, if the perception map has not been updated, triggering the perception module to scan the surrounding environment, determining whether there is a subsequent wall-like boundary of the wall-like boundary that has just been walked along in front of the cleaning robot based on the perception data obtained by the scanning; if there is the subsequent wall-like boundary and the subsequent wall-like boundary contains a boundary segment that has not been walked along, controlling the cleaning robot to continue walking along the boundary segment, and updating the perception map based on environment information collected during the walking. 7.The method of claim 6, further comprising: in a case where the perception map still has wall-like boundaries other than the wall-like boundary that has just been walked along, if there is no subsequent wall-like boundary of the wall-like boundary that has just been walked along in front of the cleaning robot, or if there is the subsequent wall-like boundary and there is no boundary segment that has not been walked along in the subsequent wall-like boundary, determining a target wall-like boundary from the wall-like boundaries other than the wall-like boundary that has just been walked along, controlling the cleaning robot to walk along the target wall-like boundary, and updating the perception map based on environment information collected during the walking.

8. The method of claim 1, wherein, The controlling the cleaning robot to walk along the wall-like boundary in the perception map comprises: in a case where there are multiple wall-like boundaries that have not been walked along in the perception map, taking the multiple wall-like boundaries that have not been walked along as candidate wall-like boundaries, determining a target wall-like boundary from the candidate wall-like boundaries; and controlling the cleaning robot to walk along the target wall-like boundary.

9. The method of claim 8, wherein, determining a target class wall boundary from the candidate class wall boundaries, comprising: if there is a subsequent class wall boundary of a just-traveled class wall boundary in the candidate class wall boundaries, determining the subsequent class wall boundary as the target class wall boundary.

10. The method of claim 8, wherein, determining a target class wall boundary from the candidate class wall boundaries, comprising: if there is no class wall boundary traveled by the cleaning robot or no subsequent class wall boundary of a just-traveled class wall boundary in the candidate class wall boundaries, determining a target class wall boundary from the candidate class wall boundaries based on lengths of the candidate class wall boundaries and distances between the candidate class wall boundaries and the cleaning robot.

11. The method of claim 10, wherein, determining a target class wall boundary from the candidate class wall boundaries based on lengths of the candidate class wall boundaries and distances between the candidate class wall boundaries and the cleaning robot, comprising: scoring the candidate class wall boundaries based on lengths of the candidate class wall boundaries and distances between the candidate class wall boundaries and the cleaning robot; determining a target class wall boundary from the candidate class wall boundaries based on lengths of the candidate class wall boundaries and distances between the candidate class wall boundaries and the cleaning robot, further comprising:

12. The method of claim 11, wherein, if there is a closed boundary in the candidate class wall boundaries, if a length of the closed boundary is less than a second preset threshold, eliminating the closed boundary from the candidate class wall boundaries; if the length of the closed boundary is greater than or equal to the second preset threshold, reducing a score of the closed boundary. controlling the cleaning robot to travel along a class wall boundary in the perception map, comprising:

13. The method of any one of claims 1-12, wherein, generating a wall-following path of the class wall boundary based on a preconfigured wall-following distance; generating an execution path for traveling along the class wall boundary based on the wall-following path, a current position of the cleaning robot, and a preset wall-following direction; controlling the cleaning robot to travel along the class wall boundary according to the execution path. generating an execution path for traveling along the class wall boundary based on the wall-following path, a current position of the cleaning robot, and a preset wall-following direction, comprising:

14. The method of claim 13, wherein, taking a point in the wall-following path closest to the current position of the cleaning robot as a tentative continuation point; if the tentative continuation point divides the wall-following path into two sub-paths, determining one of the two sub-paths as a candidate sub-path and the other as a non-candidate sub-path based on the preconfigured wall-following direction; if a length of the candidate sub-path is greater than or equal to a third preset threshold, generating a travel path of the cleaning robot from the current position to the tentative continuation point, and splicing the travel path and the candidate sub-path to obtain the execution path. generating an execution path for traveling along the class wall boundary based on the wall-following path, a current position of the cleaning robot, and a preset wall-following direction, further comprising:

15. The method of claim 14, wherein, ​ If the length of the candidate sub-path is less than the third preset threshold, a walking path of the cleaning robot from the current position to an end point of the non-candidate sub-path away from the candidate sub-path is generated, the walking path is spliced with the wall-following path to obtain an execution path.

16. The method of any one of claims 1-12, wherein, In the process of controlling the cleaning robot to walk along the wall-like boundary in the perception map, the wall-like boundary of a narrow region with a width less than a preset width threshold is ignored.

17. The method of any one of claims 1-12, wherein, The method of controlling the cleaning robot to walk along the wall-like boundary in the perception map comprises: If the wall-like boundary along which the cleaning robot walks includes oppositely arranged first and second boundary segments, and during the process of the cleaning robot walking along the first boundary segment, the second boundary segment is also within the perception range of the cleaning robot, the cleaning robot is controlled to walk along a next wall-like boundary after walking along the first boundary segment.

18. The method of any one of claims 1-12, further comprising: In the process of controlling the cleaning robot to walk along the wall-like boundary, the cleaning robot performs an obstacle avoidance action.

19. The method of any one of claims 1-12, wherein, After controlling the cleaning robot to walk along the wall-like boundary, the method further comprises: Recording the wall-like boundary along which the cleaning robot has walked.

20. The method of claim 1 or 2, wherein, In the case where the cleaning robot acquires the perception map in response to a stake searching instruction, the environment exploration during walking comprises: Detecting whether a stake signal is received during walking, and if the stake signal is received, controlling the cleaning robot to return to the stake based on the stake signal.

21. The method of claim 20, wherein, The environment exploration step further comprises: If the stake signal is not received until there is no un-walked wall-like boundary and no un-explored region in the perception map, stopping stake searching and prompting the user that there is an abnormality in stake searching.

22. The method of claim 20, wherein, In the case where the cleaning robot is in a known environment, the method of controlling the cleaning robot to walk along the wall-like boundary in the perception map comprises: In the case where the perception map includes a plurality of wall-like boundaries, the plurality of wall-like boundaries are taken as candidate wall-like boundaries, a target wall-like boundary is determined from the candidate wall-like boundaries based on the current position of the cleaning robot; An execution path of walking along the target wall-like boundary starting from the current position is generated; A next target wall-like boundary is determined from the remaining candidate wall-like boundaries based on the end position of the execution path, a next execution path of walking along the next target wall-like boundary starting from the end position is generated, until an execution path sequence is obtained by generating an execution path of walking along each of the candidate wall-like boundaries; The cleaning robot is controlled to walk along each wall-like boundary in sequence according to the execution path sequence.

23. The method of claim 22, wherein, In the case where there is a historical position of a stake in the perception map, the closer a candidate wall-like boundary is to the historical position, the higher the priority of the candidate wall-like boundary as a target wall-like boundary.

24. A cleaning robot comprising a processor and a memory, the memory storing a computer program executable on the processor, the computer program being executed by the processor to implement the steps of the control method according to any one of claims 1-23.

25. A computer readable storage medium comprising computer instructions stored thereon, the computer instructions, when executed by a processor, implement the steps of the control method of any one of claims 1-23.

26. A computer program product comprising computer instructions, the computer instructions, when executed by a processor, implement the steps of the control method of any one of claims 1-23.

Citation Information

Patent Citations

  • Detection method and device, mobile robot and storage medium

    CN109946715A

  • Working area construction method of laser navigation robot

    CN111595356A

  • Robot, pile searching method and device thereof and storage medium

    CN116009561A

  • Cleaning method of cleaning robot and cleaning robot

    CN117158828A

  • Cleaning robot, control method thereof, storage medium and program product

    CN119033273A