An extended area cleaning method, robot, and storage medium
Patent Information
- Application Number
- CN202610958303.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-06-29
- Publication Date
- 2026-09-25
AI Technical Summary
[0003]本发明的一个目的旨在提供一种拓展区域清洁方法、机器人及存储介质,旨在改善现有技术中机器人清洁效率低的问题
[0007]与现有技术相比,本发明实施例提供一种拓展区域清洁方法、机器人及存储介质。拓展区域清洁方法包括:机器人在已知区域进行清洁时,获取机器人的当前位置并确定与已知区域连通的目标拓展区域,根据当前位置在目标拓展区域中确定机器人从当前位置出发到达目标拓展区域的最优路径点,根据最优路径点在目标拓展区域中确定目标基准分区,以目标基准分区为基准分割目标拓展区域,得到多个目标拓展分区,目标拓展分区包括目标基准分区,根据当前位置在多个目标拓展分区中确定起始清洁分区,控制机器人从起始清洁分区开始依序清洁每个目标拓展分区。因此,一方面,本发明发现拓展区域后便可对拓展区域进行清洁,无需探索完所有拓展区域的环境后才对所有拓展区域进行清洁,从而能够提高清洁效率,另一方面,在清洁拓展区域时,从拓展区域确定一个基准分区,基于基准分区对拓展区域进行分割,从而延伸出其余需要清洁的分区,再对这些分区进行清洁,如此能够对拓展区域进行更加合理的分区,从而能够更加合理清洁拓展区域。
Smart Images

Figure CN122805152A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of robotics, specifically to an extended area cleaning method, a robot, and a storage medium. Background Technology
[0002] When a robot cleans a room based on an environmental map, if the room door is open, the robot's radar may scan areas outside the room—areas not included in the environmental map. Currently, the robot typically explores all these extended areas first, extracting all or expanding the environmental map before cleaning them. However, exploring all extended areas generally takes a long time, requiring the robot to wait a considerable amount of time before starting to clean them. This results in untimely cleaning and low efficiency. Summary of the Invention
[0003] One object of the present invention is to provide an extended area cleaning method, robot, and storage medium, which aims to improve the problem of low cleaning efficiency of robots in the prior art.
[0004] In a first aspect, embodiments of the present invention provide an extended area cleaning method, comprising: When the robot is cleaning a known area, the robot's current position is obtained and a target expansion area connected to the known area is determined. Based on the current location, determine the optimal path point for the robot to reach the target expansion area from the current location; Based on the optimal path points, a target baseline partition is determined in the target expansion area; The target extended region is divided based on the target baseline partition to obtain multiple target extended partitions, wherein the target extended partitions include the target baseline partition; Determine the starting cleaning partition among the multiple target extended partitions based on the current location; The robot is controlled to sequentially clean each target extended zone, starting from the initial cleaning zone.
[0005] In a second aspect, embodiments of the present invention provide a robot including a memory and a processor, the memory being connected to the processor, the processor being configured to execute one or more computer programs stored in the memory, wherein when the processor executes the one or more computer programs, the robot enables the extended area cleaning method described in the first aspect above to perform the extended area cleaning method.
[0006] In a third aspect, embodiments of the present invention provide a storage medium storing a computer program, the computer program including program instructions, which, when executed by a processor, cause the processor to perform the extended region cleaning method described in the first aspect above.
[0007] Compared with existing technologies, embodiments of the present invention provide an extended area cleaning method, a robot, and a storage medium. The extended area cleaning method includes: when the robot is cleaning a known area, obtaining the robot's current position and determining a target extended area connected to the known area; determining the optimal path point for the robot to reach the target extended area from the current position within the target extended area based on the current position; determining a target reference partition within the target extended area based on the optimal path point; dividing the target extended area using the target reference partition as a reference to obtain multiple target extended partitions, each including the target reference partition; determining a starting cleaning partition among the multiple target extended partitions based on the current position; and controlling the robot to sequentially clean each target extended partition starting from the starting cleaning partition. Therefore, on the one hand, the present invention can clean the extended area immediately after discovery, without needing to explore the environment of all extended areas before cleaning them, thereby improving cleaning efficiency. On the other hand, when cleaning the extended area, a reference partition is determined from the extended area, and the extended area is divided based on the reference partition to extend to other partitions that need cleaning, and then these partitions are cleaned. This allows for more reasonable partitioning of the extended area, resulting in more efficient cleaning of the extended area. Attached Figure Description
[0008] To more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the description of the embodiments of the present invention will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0009] Figure 1 This is a schematic diagram of the structure of a robot provided in an embodiment of the present invention; Figure 2 A schematic flowchart of an extended area cleaning method provided in an embodiment of the present invention; Figure 3 A schematic diagram of a target expansion region provided in an embodiment of the present invention; Figure 4 A schematic diagram of a candidate expansion region provided in an embodiment of the present invention; Figure 5 This is a schematic diagram of a convex hull processing method provided in an embodiment of the present invention; Figures 6 to 8A schematic diagram of a reference partition provided in an embodiment of the present invention; Figure 9 This is a schematic diagram of the process of step S24 in an extended area cleaning method provided in an embodiment of the present invention; Figure 10 This is a schematic diagram of the process of step S243 in an extended area cleaning method provided in an embodiment of the present invention; Figure 11 This is a schematic diagram of the process of step S2433 in an extended area cleaning method provided in an embodiment of the present invention; Figures 12 to 25 This is a schematic diagram of the segmentation of a target expansion region provided in an embodiment of the present invention; Figure 26 This is a schematic diagram of the process of step S26 in an extended area cleaning method provided in an embodiment of the present invention; Figure 27 A schematic diagram of the wall outline provided in an embodiment of the present invention; Figure 28 This is a schematic diagram of step S265 in an extended area cleaning method provided in an embodiment of the present invention; Figure 29 This is a schematic diagram of the process of step S2654 in an extended area cleaning method provided in an embodiment of the present invention; Figure 30 This is a schematic diagram of the structure of an extended area cleaning device provided in an embodiment of the present invention; Figure 31 This is a schematic diagram of the structure of the second determining module in an extended area cleaning device provided in an embodiment of the present invention; Figure 32 This is a schematic diagram of the structure of the control module in an extended area cleaning device provided in an embodiment of the present invention; Figure 33 This is a schematic diagram of the structure of the first determining module in an extended area cleaning device provided in an embodiment of the present invention; Figure 34 This is a schematic diagram of the hardware structure of a controller provided in an embodiment of the present invention. Detailed Implementation
[0010] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without inventive effort are within the scope of protection of this invention.
[0011] It should be noted that, unless otherwise specified, the various features in the embodiments of this invention can be combined with each other, all of which are within the protection scope of this invention. Furthermore, although functional modules are divided in the device schematic diagram and a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in a different order than the module division in the device or the order in the flowchart. Moreover, the terms "first," "second," and "third" used in this invention do not limit the data or execution order, but only distinguish identical or similar items with essentially the same function and effect.
[0012] This invention provides a robot that can be a sweeping robot, which may include cleaning robots, floor washing robots, mopping robots, sweeping and mopping robots, vacuuming robots, etc.
[0013] Please see Figure 1 The robot 100 provided in this embodiment of the invention may include a controller 11, a drive component 12, a cleaning component 13, and a sensing component 14.
[0014] The controller 11 serves as the control core of the robot 100, and is used to control the robot 100 to complete relevant logical operations and execute the extended area cleaning method described below.
[0015] The drive assembly 12 is electrically connected to the controller 11 and is used to drive the robot 100 forward or backward under the control of the controller 11 to complete cleaning or recharging operations. In some embodiments, the drive assembly 12 includes a left-wheel drive unit and a right-wheel drive unit. Taking the left-wheel drive unit as an example, the left-wheel drive unit includes a motor, a wheel drive mechanism, and a left wheel. The motor's shaft is connected to the wheel drive mechanism, the left wheel is connected to the wheel drive mechanism, and the motor is electrically connected to the controller 11. The motor receives control commands sent by the controller 11 and rotates its shaft, transmitting torque to the left wheel through the wheel drive mechanism, thereby realizing the rotation of the left wheel. Thus, with the cooperation of the left-wheel drive unit and the right-wheel drive unit, the robot 100 can be driven forward or backward.
[0016] The cleaning component 13 is electrically connected to the controller 11 and is used for cleaning the floor. It can be configured into any suitable cleaning structure. For example, in some embodiments, the cleaning component 13 includes a cleaning motor and a roller brush. The surface of the roller brush is provided with a cleaning section. The roller brush is connected to the cleaning motor through a drive mechanism. The cleaning motor is electrically connected to the controller 11. The controller 11 can send commands to the cleaning motor to control the cleaning motor to drive the roller brush to rotate, so that its cleaning section can effectively clean the floor. In some embodiments, the cleaning component 13 also includes a dust collection box and a vacuum fan. The dust collection box is connected to the vacuum fan, and the vacuum fan is electrically connected to the controller 11. The vacuum fan receives control commands from the controller 11 and generates suction to suck the dust or debris stirred up by the rotating roller brush into the dust collection box.
[0017] The sensing component 14 is electrically connected to the controller 11 and is used to perform various detections. The sensing component 14 includes, but is not limited to, optical sensors, vision sensors, mechanical sensors, acoustic sensors, and inertial sensors. Specifically, optical sensors may include infrared rangefinders, laser rangefinders, dust detection sensors, etc.; vision sensors may include RGB cameras, depth cameras, etc.; mechanical sensors may include collision sensors, etc.; acoustic sensors may include ultrasonic sensors, etc.; and inertial sensors may include gyroscopes, etc.
[0018] The map provided in this embodiment can be a raster map or other graphical maps. When the map is a raster map, it consists of multiple grids. To reflect the distribution of objects in the environment, each grid can be assigned a corresponding occupancy probability value. The occupancy probability value is the probability that the area corresponding to the grid is occupied. The larger the occupancy probability value, the greater the probability that the area corresponding to the grid is occupied; the smaller the occupancy probability value, the smaller the probability that the area corresponding to the grid is occupied. Therefore, the occupancy probability value can reflect the state of the corresponding grid, and the state of the grid is used to represent the status of the corresponding pixel in the environment. The state of a single grid can be one of the following: idle state, occupied state, or unknown state. The idle state indicates that the corresponding pixel belongs to an area in the environment without obstacles; the occupied state indicates that the corresponding pixel belongs to an area in the environment occupied by obstacles; and the unknown state indicates that the corresponding pixel belongs to an unknown area in the environment. For ease of description, the grid types corresponding to the idle state, occupied state, and unknown state can be defined as idle grid, occupied grid, and unknown grid, respectively. It is understandable that the occupancy probability value corresponding to the free grid, the occupancy probability value corresponding to the occupied grid, and the occupancy probability value corresponding to the unknown grid can be custom values that the robot 100 identifies and analyzes based on the acquired information.
[0019] Please see Figure 2 This invention provides an extended area cleaning method, which includes: S21. When the robot is cleaning in a known area, obtain the robot's current position and determine the target expansion area connected to the known area.
[0020] In this step, the known area refers to the spatial range that the robot has successfully scanned and stored in the map data using sensors such as LiDAR, visual navigation, or gyroscopes. The known area can be an interior area of a house that has been explored by the robot and where obstacles have been marked, such as the central open space of a living room or the area around a bed in a bedroom. Conversely, the unknown area refers to areas that have not been explored by the robot, have not been scanned by the robot's LiDAR or other sensors, or have been scanned but are uncertain, such as a room inside a temporarily closed door. The current location can be the robot's current position within the known area. The target expansion area is the area connected to the known area and scanned by the robot's LiDAR or other sensors. The target expansion area is the area that currently needs to be cleaned, and this area can be stored in the map data.
[0021] For example, please see Figure 3 The area below is known area 31. When the robot is cleaning known area 31, door 30 is opened, so the robot's lidar or other sensors can scan the room connected to known area 31. The area of this scanned room is the target expansion area 32. Figure 3 The area above (black area) is an unscanned area of the room, designated as unknown area 33. Figure 3 (The gray area above).
[0022] In some embodiments, the controller acquires environmental data of the area connected to the known area, determines candidate expansion areas based on the environmental data, and determines the target expansion area from the candidate expansion areas based on the current location.
[0023] For example, please see Figure 4 The candidate expansion areas include the first expansion area 41 and the second expansion area 42. The robot's current position in the known area 43 is 40. The controller can use the current position 40 to select the candidate expansion area closest to the robot as the target expansion area. Figure 4 As shown, since the second extension area 42 is closer to the robot than the first extension area 41, the controller can use the second extension area 42 as the target extension area.
[0024] In some embodiments, the controller can be accessed via jps, A D The path planning algorithm calculates the shortest path between the candidate expansion region and the robot, and determines the target expansion region from the candidate expansion regions based on the shortest path point. The shortest path point is the point in the candidate expansion region that is closest to the robot, such as... Figure 4 As shown, if the shortest path point is a point in the second expansion area 42, the controller can use the second expansion area 42 as the target expansion area.
[0025] S22. Based on the current position, determine the optimal path point for the robot to reach the target expansion area from the current position within the target expansion area.
[0026] In this step, the optimal path point can be either the shortest path point as described above, or the point that the robot can reach fastest. The shortest path point is usually the fastest point to reach, but if there are obstacles blocking the path between the robot and the shortest path point, the shortest path point may not be the fastest point to reach.
[0027] Understandably, the optimal path point is not limited to the shortest path point or the fastest point to reach; it can also be any reachable point within the target expansion area. For example, a robot can navigate to the target expansion area based on a reachable point within it, and that reachable point is the optimal path point. Alternatively, a robot can first navigate to the target expansion area based on a reachable point within it, and then find an optimal location point within the target expansion area, which is the optimal path point. Here, a reachable point can be any point within the target expansion area that the robot can reach through autonomous navigation.
[0028] S23. Determine the target baseline partition in the target expansion area based on the optimal path point.
[0029] In this step, the target reference partition can be a region that contains a portion of the target extended region and is used as the segmentation reference to segment the target extended region.
[0030] In some embodiments, the controller performs convex hull processing on the target extended region to obtain a convex polygon, which includes multiple vertices. The target vertex is determined among the multiple vertices based on the optimal path point, and the target reference partition is determined in the target extended region based on the target vertex.
[0031] For example, please see Figure 5 Let 50 be the optimal path point, 51 be the target expansion region, and 52 be a convex polygon including vertices A, B, C, and D. The controller can select the vertex closest to the optimal path point as the target vertex. Figure 5 As shown, since vertex A is closest to the optimal path point 50, the controller can use vertex A as the target vertex. It is understandable that if the optimal path point is another point, the controller can use vertex A as the target vertex, or it can use another vertex as the target vertex, such as vertex B, vertex C, or vertex D.
[0032] In some embodiments, the pixels of the target extended region are target pixels. Target pixels are pixels used to distinguish the target extended region from other regions; for example, the target pixel may be a first pixel. Pixels in known and unknown regions can be labeled with pixels different from the target pixels; for example, pixels in the target extended region may be labeled as the first pixel, pixels in the known region as the second pixel, and pixels in the unknown region as the third pixel, where the first, second, and third pixels are all distinct. To distinguish these regions, such as... Figure 3 As shown, pixels in the known region 31 can be labeled as pixel 1, pixels in the target extended region 32 can be labeled as pixel 0, and pixels in the unknown region 33 can be labeled as pixel 2. This pixel labeling method makes it easier to determine regions connected to the known regions.
[0033] In some embodiments, the controller can generate multiple reference partitions of equal area with the target vertex as the reference point. The reference point includes at least one of the following: the lower right corner, the lower left corner, the upper left corner, the upper right corner, the midpoint of the upper and lower reference partitions, and the midpoint of the left and right reference partitions. The controller counts the number of target pixels in each reference partition and determines the target reference partition among the multiple reference partitions based on the number of pixels.
[0034] For example, please see Figure 6 The controller can use the target vertex as the bottom right corner, bottom left corner, top left corner, and top right corner to generate multiple reference partitions of equal area. For example... Figure 6 As shown, the reference partitions include a first reference partition 61, a second reference partition 62, a third reference partition 63, and a fourth reference partition 64. The lower right corner of the first reference partition 61 is the target vertex, the lower left corner of the second reference partition 62 is the target vertex, the upper left corner of the third reference partition 63 is the target vertex, and the upper right corner of the fourth reference partition 64 is the target vertex.
[0035] For another example, please refer to Figure 7 The controller can use the target vertex as the midpoint of the upper and lower reference partitions to generate two reference partitions of equal area. For example... Figure 7 As shown, the reference partitions include the fifth reference partition 71 and the sixth reference partition 72, and the midpoint of the fifth reference partition 71 and the sixth reference partition 72 is the target vertex.
[0036] For another example, please refer to Figure 8 The controller can use the target vertex as the left and right midpoints to generate two reference partitions of equal area. For example... Figure 8 As shown, the reference partitions include the seventh reference partition 81 and the eighth reference partition 82, and the midpoint of the seventh reference partition 81 and the eighth reference partition 82 is the target vertex.
[0037] In some embodiments, the controller may use the reference partition with the most target pixels in each reference partition as the target reference partition.
[0038] For example, such as Figures 6 to 8 As shown, if the number of target pixels in the second reference partition 62 is the largest among all reference partitions, the controller can use the second reference partition 62 as the target reference partition.
[0039] S24. Divide the target extended region based on the target baseline partition to obtain multiple target extended partitions.
[0040] In this step, the target expansion partition includes the target baseline partition, and the target expansion partition is the target expansion partition that the robot needs to clean subsequently.
[0041] S25. Determine the starting clean partition among multiple target extended partitions based on the current location.
[0042] In this step, the initial cleaning zone can be the target expansion zone that the robot cleans first.
[0043] S26. Control the robot to clean each target extended zone sequentially, starting from the initial cleaning zone.
[0044] In this step, the cleaning operation of the target expansion area is completed when the controller controls the robot to clean each target expansion zone.
[0045] Therefore, on the one hand, this embodiment can clean the extended area as soon as it is discovered, without having to explore the environment of all extended areas before cleaning them, thereby improving cleaning efficiency. On the other hand, when cleaning the extended area, a baseline partition is determined from the extended area, and the extended area is divided based on the baseline partition, thereby extending to other partitions that need to be cleaned, and then cleaning these partitions. In this way, the extended area can be divided more reasonably, thereby cleaning the extended area more reasonably.
[0046] In some embodiments, please refer to Figure 9 S24 includes: S241. Mark the target base partition as the target extended partition, and use the target base partition as the specified partition.
[0047] S242. Determine multiple candidate partitions of equal area that surround the specified partition.
[0048] S243. Determine new target expansion partitions from candidate partitions, and continue to divide the target expansion region based on the new target expansion region to obtain multiple target expansion partitions.
[0049] In S242, the shape of the candidate partition can be any shape such as rectangle, pentagon, hexagon, etc., as long as it can fully cover the target expansion area through region division.
[0050] In some embodiments, the shape of the candidate partition is the same as the shape of the target reference partition. The shape of the candidate partition can be determined based on the shape of the target reference partition. For example, if the target reference partition is rectangular, the candidate partition is also rectangular; if the target reference partition is pentagonal, the candidate partition is also pentagonal.
[0051] In some embodiments, the candidate partition is rectangular in shape.
[0052] Please see Figure 12 101 is the target baseline partition, and 102, 103 and 104 are candidate partitions. Since both the target baseline partition and the candidate partitions are rectangular, they are closely connected, which can improve the rationality of the target expansion area segmentation.
[0053] In some embodiments, please refer to Figure 10 S243 includes: S2431. Traverse each candidate partition in the specified traversal order.
[0054] S2432. Take the currently traversed candidate partition as the current traversed partition, and determine whether the current traversed partition is the target extended partition, and obtain the judgment result.
[0055] S2433. Based on the judgment result, determine the new target expansion partition in the candidate partition, and continue to divide the target expansion region on the basis of the new target expansion region to obtain multiple target expansion partitions.
[0056] In some embodiments, please refer to Figure 11 S2433 includes: If the result of the judgment is that the current traversed partition is the target extended partition, return to execute S2431; if the result of the judgment is that the current traversed partition is not the target extended partition, proceed to S24331.
[0057] S24331. Determine whether the number of pixels of the target pixel in the current traversed partition is greater than or equal to the preset number threshold. If yes, proceed to S24332; otherwise, proceed to S24333.
[0058] S24332. Mark the current traversed partition as the target extended partition, and determine whether the candidate partition has been traversed. If yes, proceed to S24334; otherwise, proceed to S24335.
[0059] S24333: Determine if the candidate partition traversal has ended. If yes, proceed to S24334; otherwise, return to execute S2431.
[0060] S24334: Backtrack to the last marked target extended partition, use the target extended partition as the specified partition, and return to execute S2431.
[0061] S24337, Set the currently traversed partition as the specified partition and return to execute S242.
[0062] For example, first, please refer to Figure 12 The controller marks the target reference partition 101 as the target extended partition and uses the target reference partition 101 as the designated partition. Then, it determines a number of candidate partitions with equal areas surrounding the target reference partition 101. The candidate partitions include the first rectangular partition 102, the second rectangular partition 103, the third rectangular partition 104, and the fourth rectangular partition 105.
[0063] The specified order can be set according to actual needs; for example, the traversal order can be right-left-top-bottom. Figure 12 As shown, if the traversal order is right-left-top-bottom, the first candidate partition encountered by the controller is the third rectangular partition 104. Therefore, the third rectangular partition 104 is the currently traversed partition. Since the third rectangular partition 104 is not the target expansion partition, the controller determines whether the number of target pixels in the third rectangular partition 104 is greater than or equal to a preset threshold. If it is, the controller marks the third rectangular partition 104 as the target expansion partition and determines whether the candidate partition traversal has ended. Since the first rectangular partition 102, the second rectangular partition 103, and the fourth rectangular partition 105 have not yet been traversed, the candidate partition traversal has not ended. Please refer to [link to relevant documentation]. Figure 13 The controller designates the third rectangular partition 104 as the specified partition.
[0064] Since the third rectangular partition 104 is a designated partition, the controller determines multiple candidate partitions of equal area that surround the third rectangular partition 104. (See [link to relevant documentation]). Figure 14 The candidate partitions include the target baseline partition 101, the fifth rectangular partition 106, the sixth rectangular partition 107, and the seventh rectangular partition 108. For example... Figure 14As shown, if the traversal order is right-left-top-bottom, the first candidate partition encountered by the controller is the sixth rectangular partition 107. Therefore, the sixth rectangular partition 107 is the currently traversed partition. Since the sixth rectangular partition 107 is not the target expansion partition, the controller determines whether the number of target pixels in the sixth rectangular partition 107 is greater than or equal to a preset threshold. If it is, the controller marks the sixth rectangular partition 107 as the target expansion partition and determines whether the candidate partition traversal has ended. Since the fifth rectangular partition 106 and the seventh rectangular partition 108 have not yet been traversed, the candidate partition traversal has not ended. Please refer to [link to relevant documentation]. Figure 15 The controller designates the sixth rectangular partition 107 as the specified partition.
[0065] Since the sixth rectangular partition 107 is a designated partition, the controller determines multiple candidate partitions of equal area that surround the sixth rectangular partition 107. (See [link to relevant documentation]). Figure 16 Candidate partitions may include the third rectangular partition 104, the eighth rectangular partition 109, the ninth rectangular partition 110, and the tenth rectangular partition 111. For example... Figure 16 As shown, if the traversal order is right-left-top-bottom, the first candidate partition encountered by the controller is the ninth rectangular partition 110, therefore, the ninth rectangular partition 110 is the current traversed partition. Since the ninth rectangular partition 110 is not the target expansion partition, the controller determines whether the number of target pixels in the ninth rectangular partition 110 is greater than or equal to a preset threshold. If it is less than the preset threshold, the controller traverses the next candidate partition and takes the third rectangular partition 104 as the current traversed partition. Since the third rectangular partition 104 is the target expansion partition, the controller traverses the next candidate partition and takes the eighth rectangular partition 109 as the current traversed partition. Since the eighth rectangular partition 109 is not the target expansion partition, the controller determines whether the number of target pixels in the eighth rectangular partition 109 is greater than or equal to a preset threshold. If it is greater than or equal to the preset threshold, the controller marks the eighth rectangular partition 109 as the target expansion partition and determines whether the candidate partition traversal has ended. Since the tenth rectangular partition 111 has not yet been traversed, the candidate partition traversal has not ended. Please refer to [link to relevant documentation]. Figure 17 The controller designates the eighth rectangular partition 109 as the specified partition.
[0066] Since the eighth rectangular partition 109 is a designated partition, the controller determines multiple candidate partitions of equal area that surround the eighth rectangular partition 109. (See [link to relevant documentation]). Figure 18 The candidate partitions include the eleventh rectangular partition 112, the twelfth rectangular partition 113, the thirteenth rectangular partition 114, and the sixth rectangular partition 107. For example... Figure 18As shown, if the traversal order is right-left-top-bottom, the first candidate partition encountered by the controller is the thirteenth rectangular partition 114, therefore, the thirteenth rectangular partition 114 is the currently traversed partition. Since the thirteenth rectangular partition 114 is not the target expansion partition, the controller determines whether the number of target pixels in the thirteenth rectangular partition 114 is greater than or equal to a preset threshold. If it is less than the preset threshold, the controller traverses the next candidate partition and takes the eleventh rectangular partition 112 as the currently traversed partition. Since the eleventh rectangular partition 112 is not the target expansion partition, the controller determines whether the number of target pixels in the eleventh rectangular partition 112 is greater than or equal to a preset threshold. If it is greater than or equal to the preset threshold, the controller can mark the eleventh rectangular partition 112 as the target expansion partition and determine whether the candidate partition traversal has ended. Since the twelfth rectangular partition 113 and the sixth rectangular partition 107 have not yet been traversed, the candidate partition traversal has not ended. Please refer to [link to relevant documentation]. Figure 19 The controller designates the eleventh rectangular partition 112 as the specified partition.
[0067] Since the eleventh rectangular partition 112 is a designated partition, the controller determines multiple candidate partitions of equal area that surround the eleventh rectangular partition 112. (See [link to relevant documentation]). Figure 20 The candidate partitions include the fourteenth rectangular partition 115, the fifteenth rectangular partition 116, the eighth rectangular partition 109, and the third rectangular partition 104. For example... Figure 20 As shown, if the traversal order is right-left-top-bottom, the first candidate partition encountered by the controller is the eighth rectangular partition 109, therefore, the eighth rectangular partition 109 is the currently traversed partition. Since the eighth rectangular partition 109 is the target expansion partition, the controller traverses the next candidate partition and takes the fourteenth rectangular partition 115 as the currently traversed partition. Since the fourteenth rectangular partition 115 is not the target expansion partition, the controller determines whether the number of target pixels in the fourteenth rectangular partition 115 is greater than or equal to a preset number threshold. If it is greater than or equal to the preset number threshold, the controller can mark the fourteenth rectangular partition 115 as the target expansion partition and determine whether the candidate partition traversal has ended. Since the fifteenth rectangular partition 116 and the third rectangular partition 104 have not yet been traversed, the candidate partition traversal has not ended. Please refer to [link to relevant documentation]. Figure 21 The controller designates the fourteenth rectangular partition 115 as the specified partition.
[0068] Since the fourteenth rectangular partition 115 is a designated partition, the controller determines multiple candidate partitions of equal area that surround the fourteenth rectangular partition 115. (See [link to relevant documentation]). Figure 22 The candidate partitions include the sixteenth rectangular partition 117, the seventeenth rectangular partition 118, the eleventh rectangular partition 112, and the target baseline partition 101. For example... Figure 22As shown, if the traversal order is right, left, up, and down, the first candidate partition that the controller traverses is the eleventh rectangular partition 112. Therefore, the eleventh rectangular partition 112 is the current traversed partition. Since the eleventh rectangular partition 112 is the target expansion partition, the controller traverses the next candidate partition and takes the sixteenth rectangular partition 117 as the current traversed partition. Since the sixteenth rectangular partition 117 is not the target expansion partition, the controller can determine whether the number of target pixels in the sixteenth rectangular partition 117 is greater than or equal to a preset number threshold. If it is less than the preset number threshold, the controller traverses the next candidate partition and takes the seventeenth rectangular partition 118 as the current traversed partition. Since the seventeenth rectangular partition 118 is not the target expansion partition, the controller determines whether the number of target pixels in the seventeenth rectangular partition 118 is greater than or equal to a preset number threshold. If it is less than the preset number threshold, the controller traverses the next candidate partition and takes the target base partition 101 as the current traversed partition. Since the target base partition 101 is the target expansion partition, the controller traverses the next candidate partition. Since the candidate partition traversal has ended, the controller backtracks to the eleventh rectangular partition 112, which was previously marked as the target expansion partition, and takes the eleventh rectangular partition 112 as the specified partition and continues traversing.
[0069] like Figure 20 As shown, when the controller takes the eleventh rectangular partition 112 as the designated partition and continues to traverse, since the eighth rectangular partition 109 and the fourteenth rectangular partition 115 have already been traversed, the controller continues to traverse to the fifteenth rectangular partition 116 and takes the fifteenth rectangular partition 116 as the current traversed partition. Since the fifteenth rectangular partition 116 is not the target expansion partition, the controller determines whether the number of target pixels in the fifteenth rectangular partition 116 is greater than or equal to a preset number threshold. If it is less than the preset number threshold, the controller traverses the next candidate partition and takes the third rectangular partition 104 as the current traversed partition. Since the third rectangular partition 104 is the target expansion partition, the controller traverses the next candidate partition. Since the candidate partition has been traversed, the controller backtracks to the previous eighth rectangular partition 109 that was marked as the target expansion partition, takes the eighth rectangular partition 109 as the designated partition and continues to traverse.
[0070] like Figure 18As shown, when the controller takes the eighth rectangular partition 109 as the designated partition and continues traversing, since the thirteenth rectangular partition 114 and the eleventh rectangular partition 112 have already been traversed, the controller traverses to the twelfth rectangular partition 113 and takes it as the current traversed partition. Since the twelfth rectangular partition 113 is not the target expansion partition, the controller determines whether the number of target pixels in the twelfth rectangular partition 113 is greater than or equal to a preset number threshold. If it is greater than or equal to the preset number threshold, the controller can mark the twelfth rectangular partition 113 as the target expansion partition and determine whether the candidate partition traversal has ended. Since the sixth rectangular partition 107 has not yet been traversed, the candidate partition traversal has not ended. Please refer to [link to relevant documentation]. Figure 23 The controller designates the twelfth rectangular partition 113 as the specified partition.
[0071] Since the twelfth rectangular partition 113 is a designated partition, the controller determines multiple candidate partitions of equal area that surround the twelfth rectangular partition 113. (See [link to relevant documentation]). Figure 24 The candidate partitions include the eighteenth rectangular partition 119, the nineteenth rectangular partition 120, the twentieth rectangular partition 121, and the eighth rectangular partition 109. For example... Figure 24 As shown, since the eighteenth rectangular partition 119, the nineteenth rectangular partition 120, and the twentieth rectangular partition 121 do not meet the conditions to become the target extended partition, and the eighth rectangular partition 109 is the target extended partition, the controller continues to backtrack until it finds such a partition. Figure 25 The last target extended partition is shown as 111.
[0072] After the controller finishes dividing the target extended region according to the target baseline partition 101, it can obtain target extended partitions 104, 107, 109, 112, 115, 113 and 111.
[0073] In some embodiments, please refer to Figure 26 S26 includes: S261, Obtain the unknown region.
[0074] S262. Mark the pixels in the unknown area as target pixels.
[0075] S263. Determine the wall boundary of each target expansion partition based on the target pixels.
[0076] S264. Extract the wall-side profile of each target extended zone based on the wall-side boundary.
[0077] S265. Based on the wall contour, control the robot to clean each target extended zone sequentially, starting from the initial cleaning zone.
[0078] As mentioned earlier, the pixels in the target expansion area are marked as the first pixel, and the pixels in the unknown area are marked as the third pixel. Therefore, in S262, the pixels in the unknown area are marked as the first pixel, meaning the pixels in the unknown area are filled to match the pixels in the target expansion area. Filling the unknown area with pixels consistent with the target expansion area allows the unknown area to be included within the target expansion partition, enabling the robot to perform more reasonable edge cleaning within the target expansion partition subsequently.
[0079] In S263, the wall boundary is the boundary along which the robot cleans. When there are obstacles on the wall boundary, the wall boundary may not be the actual boundary along which the robot cleans.
[0080] In S264, the wall profile represents the boundary along which the robot actually cleans. See also... Figure 27 271 represents the target expansion area, 272 represents the unknown area, 273 represents the wall boundary, and 274 represents the wall contour. Since there is an obstacle 275 on the wall boundary 273, the robot needs to avoid obstacle 275 when cleaning along the edge. Therefore, the controller can extract the wall contour 274 based on the obstacle information of the wall boundary 273 and obstacle 275. It can be understood that when the controller controls the robot to clean each target expansion area, it defaults to cleaning along the wall contour. If there is an area obstructing the wall during the cleaning process, the controller can bypass this area and then continue cleaning along the wall contour.
[0081] Therefore, on the one hand, by including the unknown area in the target expansion zone, this embodiment can avoid the robot missing some areas and can also perform more reasonable edge cleaning in the target expansion zone. On the other hand, this embodiment fully considers the actual scenario of the area to be cleaned, and avoids the robot from colliding with obstacles when performing edge cleaning, thereby improving the safety and cleaning efficiency of edge cleaning.
[0082] In some embodiments, please refer to Figure 28 S265 includes: S25651. Set the starting clean partition as the current clean partition, where the starting clean partition is one of the target extended partitions.
[0083] S2652. Control the robot to clean the current cleaning zone along the wall outline of the current cleaning zone.
[0084] S2653. When the robot finishes cleaning the current cleaning zone, it marks the current cleaning zone as a cleaned zone and proceeds to S2654.
[0085] S2654. Continue cleaning the remaining target extended partitions that have not been cleaned.
[0086] In some embodiments, please refer to Figure 29 S2654 includes: S26541. Determine if there is an uncleaned target extended partition. If yes, proceed to S26542; otherwise, proceed to S26543.
[0087] S26542. Traverse the target extended partitions adjacent to the current clean partition according to the specified traversal order, take the traversed target extended partitions as target clean partitions, and determine whether the target clean partition has been cleaned. If yes, proceed to S26544; otherwise, proceed to S26545.
[0088] S26543, End the cleaning operation of the target expansion area.
[0089] S26544. Determine whether the target extended partition adjacent to the current clean partition has been traversed. If yes, proceed to S26546; otherwise, return to execute 26542.
[0090] S26545: Set the target clean partition as the current clean partition and return to execute S2652.
[0091] S26546: Backtrack to the last cleaned partition, use the cleaned partition as the current cleaned partition, and return to execute S26542.
[0092] For example, such as Figure 25 As shown, the controller can select the target expansion partition 101 closest to the robot as the starting cleaning partition. The specified traversal order determines the cleaning order of the target expansion partitions. If the specified traversal order is right-left-up-down, then the robot will clean each target expansion partition in the order of target expansion partition 101 → target expansion partition 104 → target expansion partition 107 → target expansion partition 109 → target expansion partition 112 → target expansion partition 115 → target expansion partition 113 → target expansion partition 111.
[0093] Therefore, this embodiment adopts this method of cleaning target expansion partitions, which can achieve reasonable cleaning of each target expansion partition by setting a reasonable cleaning order, which is conducive to improving cleaning efficiency.
[0094] In some embodiments, when the robot has cleaned each target expansion zone, it can determine whether there is a cleanable expansion zone in the candidate expansion zone. The cleanable zone is the candidate expansion zone other than the target expansion zone. If there is a cleanable expansion zone, a new target expansion zone is determined from the cleanable expansion zone, and the robot proceeds to the step of determining the target reference zone from the target expansion zone based on the current position and the target pixel. If there is no cleanable expansion zone, the cleaning operation of the expansion zone ends.
[0095] When the robot has finished cleaning each target expansion zone, such as Figure 4 As shown, assuming the second expansion area 42 has been cleaned and the first expansion area 41 has not been cleaned, the first expansion area 41 is a candidate expansion area other than the target expansion area, that is, the first expansion area 41 is a cleanable expansion area. Therefore, the controller can determine that there is a cleanable expansion area, determine the first expansion area 41 as the new target expansion area from the cleanable expansion area, and clean the first expansion area 41 according to the same cleaning method as cleaning the second expansion area 42. Figure 4 As shown, if the first extended area 41 has also been cleaned, then all candidate extended areas have been cleaned. Therefore, the controller can determine that there are no cleanable extended areas, end the cleaning work of the extended areas, and perform other operations according to the predetermined settings.
[0096] It should be noted that in the above embodiments, there is no necessarily a certain order between the steps. Those skilled in the art can understand from the description of the embodiments of the present invention that the above steps may have different execution orders in different embodiments, that is, they may be executed in parallel or in turn, etc.
[0097] As another aspect of this invention, an extended area cleaning device is provided. This extended area cleaning device can be a software module, which includes several instructions stored in a memory. A processor can access the memory, call the instructions, and execute them to complete the extended area cleaning method described in the above embodiments.
[0098] In some embodiments, the extended area cleaning device can be constructed from hardware components. For example, the extended area cleaning device can be constructed from one or more chips, which can work in coordination to complete the extended area cleaning method described in the various embodiments above. As another example, the extended area cleaning device can also be constructed from components such as general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), microcontrollers, ARM (Acorn RISC Machines), programmable logic devices, discrete gate or transistor logic, discrete hardware components, or any combination of these components.
[0099] In some embodiments, please refer to Figure 30 The extended area cleaning device 3000 provided in this embodiment of the invention includes an acquisition module 301, a first determination module 302, a second determination module 303, a third determination module 304, a segmentation module 305, a fourth determination module 306, and a control module 307.
[0100] The acquisition module 301 is used to acquire the current position of the robot when the robot is cleaning in a known area. The first determination module 302 is used to determine the target expansion area connected to the known area. The second determination module 303 is used to determine the optimal path point for the robot to reach the target expansion area from the current position in the target expansion area based on the current position. The third determination module 304 is used to determine the target reference partition in the target expansion area based on the optimal path point. The segmentation module 305 is used to segment the target expansion area based on the target reference partition to obtain multiple target expansion partitions, and the target expansion partitions include the target reference partition. The fourth determination module 306 is used to determine the starting cleaning partition among the multiple target expansion partitions based on the current position. The control module 307 is used to control the robot to clean each target expansion partition sequentially starting from the starting cleaning partition.
[0101] In some embodiments, please refer to Figure 31 The second determining module 303 includes a convex hull processing unit 3031, a first determining unit 3032, and a second determining unit 3033.
[0102] The convex hull processing unit 3031 is used to perform convex hull processing on the target extended region to obtain a convex polygon, which includes multiple vertices. The first determining unit 3031 is used to determine the target vertex among the multiple vertices based on the optimal path point. The second determining unit 3033 is used to determine the target reference partition in the target extended region based on the target vertex.
[0103] In some embodiments, please refer to Figure 32 The control module 307 includes a first acquisition unit 3071, a marking unit 3072, a third determination unit 3073, an extraction unit 3074, and a control unit 3075.
[0104] The first acquisition unit 3071 is used to acquire unknown areas, the marking unit 3072 is used to mark the pixels in the unknown areas as target pixels, the third determination unit 3073 is used to determine the wall boundary of each target expansion partition according to the target pixels, the extraction unit 3074 is used to extract the wall contour of each target expansion according to the wall boundary, and the control unit 3075 is used to control the robot to clean each target expansion partition sequentially from the initial cleaning partition according to the wall contour.
[0105] In some embodiments, please refer to Figure 33 The first determining module 302 includes a second obtaining unit 3021, a fourth determining unit 3022 and a fifth determining unit 3023.
[0106] The second acquisition unit 3021 is used to acquire environmental data of the area connected to the known area, the fourth determination unit 3022 is used to determine the candidate expansion area based on the environmental data, and the fifth determination unit 3023 is used to determine the target expansion area from the candidate expansion area based on the current position.
[0107] It should be noted that the above-mentioned extended area cleaning device can perform the extended area cleaning method provided in the embodiments of the present invention, and has the corresponding functional modules and beneficial effects of the method. Technical details not described in detail in the embodiments of the extended area cleaning device can be found in the extended area cleaning method provided in the embodiments of the present invention.
[0108] Please see Figure 34 , Figure 34 This is a schematic diagram of the hardware structure of a controller provided in an embodiment of the present invention. For example... Figure 34 As shown, the controller 3400 includes one or more processors 341 and a memory 342. Figure 34 Take a processor 341 as an example.
[0109] Processor 341 is configured to support the computer device in performing the corresponding functions in the methods described in the above method embodiments. Processor 341 may be a Central Processing Unit (CPU), a Network Processor (NP), a hardware chip, or any combination thereof. The aforementioned hardware chip may be an Application Specific Integrated Circuit (ASIC), a Programmable Logic Device (PLD), or a combination thereof. The aforementioned PLD may be a Complex Programmable Logic Device (CPLD), a Field-Programmable Gate Array (FPGA), a Generic Array Logic (GAL), or any combination thereof.
[0110] Memory 342 is used to store program code. Memory 342 may include volatile memory (VM), such as random access memory (RAM); memory may also include non-volatile memory (NVM), such as read-only memory (ROM), flash memory, hard disk drive (HDD), or solid-state drive (SSD); memory 342 may also include combinations of the above types of memory.
[0111] The memory 342 can be used to store non-volatile software programs, non-volatile computer-executable programs, and modules, such as the program instructions / modules corresponding to the extended area cleaning method in the embodiments of the present invention. The processor 341 executes various functional applications and data processing of the extended area cleaning method and the extended area cleaning device by running the non-volatile software programs, instructions, and modules stored in the memory 342, that is, it realizes the functions of each module or unit of the extended area cleaning method and the extended area cleaning device provided in the above method embodiments.
[0112] The memory 342 may include a program storage area and a data storage area, wherein the program storage area may store the operating system and applications required for at least one function. The data storage area may store data created based on the use of the extended area cleaning device, etc. In some embodiments, the memory 342 may optionally include memory remotely located relative to the processor, which can be connected to the extended area cleaning device via a network. Examples of such networks include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0113] The one or more modules are stored in the memory 342. When executed by the one or more processors 341, they perform the extended region cleaning method in any of the above method embodiments. For example, they perform the method steps described in the above method embodiments to realize the functions of the modules described in the above device embodiments.
[0114] This invention also provides a computer-readable storage medium storing a computer program, the computer program including program instructions, which, when executed by a computer, cause the computer to perform the extended area cleaning method as described in the foregoing embodiments.
[0115] It will be understood by those skilled in the art that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, it can include the processes of the embodiments of the methods described above. The storage medium can be a magnetic disk, optical disk, read-only memory (ROM), or random access memory (RAM), etc.
[0116] Finally, it should be noted that the present invention can be implemented in many different forms and is not limited to the embodiments described in this specification. These embodiments are not intended to impose additional limitations on the content of the present invention; their purpose is to provide a more thorough and comprehensive understanding of the disclosure of the present invention. Furthermore, within the framework of the present invention, the above-described technical features can be combined with each other, and many other variations of different aspects of the present invention as described above exist, all of which are considered to be within the scope of the present invention specification. Moreover, those skilled in the art can make improvements or modifications based on the above description, and all such improvements and modifications should fall within the protection scope of the appended claims.
Claims
1. A method for cleaning an extended area, characterized in that, include: When the robot is cleaning a known area, the robot's current position is obtained and a target expansion area connected to the known area is determined. Based on the current location, determine the optimal path point for the robot to reach the target expansion area from the current location; Based on the optimal path points, a target baseline partition is determined in the target expansion area; The target extended region is divided based on the target baseline partition to obtain multiple target extended partitions, wherein the target extended partitions include the target baseline partition; Determine the starting cleaning partition among the multiple target extended partitions based on the current location; The robot is controlled to sequentially clean each target extended zone, starting from the initial cleaning zone.
2. The method according to claim 1, characterized in that, The step of determining the target baseline partition in the target expansion area based on the optimal path point includes: The target extended region is subjected to convex hull processing to obtain a convex polygon, which includes multiple vertices; The target vertex is determined from among the multiple vertices based on the optimal path point; The target reference partition is determined in the target extended region based on the target vertex.
3. The method according to claim 2, characterized in that, The pixels in the target extended region are target pixels. Determining the target reference partition in the target extended region based on the target vertex includes: Generate multiple reference partitions of equal area with the target vertex as the reference point. The reference point includes at least one of the following: the lower right corner point, the lower left corner point, the upper left corner point, the upper right corner point, the midpoint of the upper and lower reference partitions, and the midpoint of the left and right reference partitions. Count the number of target pixels in each of the aforementioned baseline partitions; The target reference partition is determined among the multiple reference partitions based on the number of pixels.
4. The method according to claim 1, characterized in that, The step of dividing the target extended region based on the target reference partition to obtain multiple target extended partitions includes: The target baseline partition is marked as the target extended partition, and the target baseline partition is used as the designated partition; Identify multiple candidate partitions of equal area that surround the specified partition; New target expansion partitions are determined from the candidate partitions, and the target expansion region is further divided based on the new target expansion region to obtain multiple target expansion partitions.
5. The method according to claim 4, characterized in that, The step of determining a new target expansion partition from the candidate partitions, and further segmenting the target expansion region based on the new target expansion region to obtain multiple target expansion partitions includes: Traverse each candidate partition in the specified traversal order; The candidate partition currently being traversed is taken as the current traversed partition, and it is determined whether the current traversed partition is the target extended partition, and the determination result is obtained. Based on the judgment result, a new target expansion partition is determined from the candidate partition, and the target expansion region is further divided on the basis of the new target expansion region to obtain multiple target expansion partitions.
6. The method according to claim 5, characterized in that, The pixels in the target expansion region are target pixels. The step involves determining a new target expansion region from the candidate regions based on the judgment result, and further segmenting the target expansion region based on the new target expansion region to obtain multiple target expansion regions, including: If the judgment result is that the current traversed partition is the target extended partition, return to the step of traversing each candidate partition according to the specified traversal order; if the judgment result is that the current traversed partition is not the target extended partition, determine whether the number of target pixels in the current traversed partition is greater than or equal to a preset number threshold. If the number of pixels is greater than or equal to a preset threshold, mark the current traversed partition as a new target expansion partition, and determine whether the candidate partition traversal has ended. If yes, backtrack to the last marked target expansion partition, use the target expansion partition as the specified partition, and return to the step of determining multiple candidate partitions with equal areas surrounding the specified partition. If no, use the current traversed partition as the specified partition and return to the step of determining multiple candidate partitions with equal areas surrounding the specified partition. If the number of pixels is less than a preset threshold, determine whether the candidate partition traversal has ended. If yes, backtrack to the last marked target extended partition, take the target extended partition as the specified partition, and return to the step of determining multiple candidate partitions with equal areas surrounding the specified partition. If no, return to the step of traversing each candidate partition in the specified traversal order.
7. The method according to claim 1, characterized in that, The process of controlling the robot to sequentially clean each target extended zone, starting from the initial cleaning zone, includes: Obtain the unknown area; Mark the pixels in the unknown region as target pixels; The wall boundary of each target expansion partition is determined based on the target pixels; Extract the wall-side profile of each target extended partition based on the wall-side boundary; Based on the wall contour, the robot is controlled to sequentially clean each of the target extended zones, starting from the initial cleaning zone.
8. The method according to claim 7, characterized in that, The step of controlling the robot to sequentially clean each of the target extended zones, starting from the initial cleaning zone, according to the wall contour includes: The starting clean partition is used as the current clean partition, and the starting clean partition is one of the target extended partitions; The robot is controlled to clean the current cleaning zone along the wall contour of the current cleaning zone; When the robot finishes cleaning the current cleaning partition, it marks the current cleaning partition as a cleaned partition and continues to clean the remaining target extended partitions that have not been cleaned.
9. The method according to claim 8, characterized in that, Continue cleaning the remaining target extended partitions that have not been cleaned, including: Determine if there are any uncleaned target extended partitions; If there are uncleaned target extended partitions, traverse the target extended partitions adjacent to the current cleaned partition in the specified traversal order, take the traversed target extended partitions as target cleaned partitions, and determine whether the target cleaned partitions have been cleaned. If there are no uncleaned target extended partitions, end the cleaning operation of the target extended area. If the target cleaning zone has been cleaned, determine whether the target extended zone adjacent to the current cleaning zone has been traversed. If the target cleaning zone has not been cleaned, take the target cleaning zone as the current cleaning zone and return to the step of controlling the robot to clean the current cleaning zone along the wall contour of the current cleaning zone. If the target extended partitions adjacent to the current clean partition have been traversed, backtrack to the last cleaned partition, take that cleaned partition as the current clean partition, and return to the step of traversing the target extended partitions adjacent to the current clean partition in the specified traversal order. If the target extended partitions adjacent to the current clean partition have not been traversed, return to the step of traversing the target extended partitions adjacent to the current clean partition in the specified traversal order.
10. The method according to any one of claims 1 to 9, characterized in that, Determining the target extended region connected to the known region includes: Obtain environmental data of the region connected to the known region; Candidate expansion areas are determined based on the environmental data; The target expansion area is determined from the candidate expansion areas based on the current location.
11. The method according to claim 10, characterized in that, Also includes: When the robot finishes cleaning each target expansion area, it determines whether there is a cleanable expansion area in the candidate expansion area. The cleanable area is the candidate expansion area other than the target expansion area. If a cleanable expansion area exists, a new target expansion area is determined from the cleanable expansion area, and the process proceeds to the step of determining a target reference partition from the target expansion area based on the current position and the target pixel; If no area is available for cleaning, end the cleaning process for the extended area.
12. A robot, characterized in that, The device includes a memory and a processor, the memory being connected to the processor, the processor being configured to execute one or more computer programs stored in the memory, the processor causing the robot to perform the extended area cleaning method as described in any one of claims 1 to 11 when executing the one or more computer programs.
13. A storage medium, characterized in that, The storage medium stores a computer program, which includes program instructions that, when executed by a processor, cause the processor to perform the extended area cleaning method as described in any one of claims 1 to 11.