Sweeping Planning Optimization Method, Device and Cleaning Robot

By dividing the cleaning robot's grid map into regions and optimizing the cleaning sequence based on weight assignments, the method addresses inefficiencies in navigation and repetitive cleaning, enhancing cleaning efficiency.

CN114706388BActive Publication Date: 2025-07-15MULAN HOME TECH (SHENZHEN) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210277590.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-03-21
Publication Date
2025-07-15
Estimated Expiration
2042-03-21

AI Technical Summary

Technical Problem

Existing cleaning robots are prone to excessive navigation and repeated cleaning during cleaning, resulting in low cleaning efficiency.

Method used

By dividing the raster map area, selecting the starting point partition, and performing weight marking and cleaning order planning based on adjacent relationships, the preset weight filtering algorithm is used to optimize the cleaning order.

Benefits of technology

It effectively reduces invalid navigation and repeated cleaning, improves cleaning efficiency, shortens cleaning time, and can reasonably plan the cleaning order to reduce repeated cleaning and pollution in partitions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114706388B_ABST
    Figure CN114706388B_ABST
Patent Text Reader

Abstract

The present application relates to a cleaning planning optimization method, apparatus and mobile robot. The method includes: dividing a grid map into a number of partitions; selecting a starting partition from each partition, and confirming the selected starting partition as a cleaning starting partition; performing a weight marking process on each partition based on the cleaning starting partition and the adjacent relationship information of each partition to obtain the weight information of each partition; performing a cleaning order marking process on the weight information of each partition based on a preset weight screening algorithm to obtain the partition cleaning order information. This method optimizes the cleaning order of the cleaning robot, realizes the optimal cleaning plan, can effectively reduce ineffective navigation and movement, quickly and effectively complete the coverage cleaning, and thus improves the cleaning efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of cleaning robots, and particularly to a cleaning planning optimization method, apparatus, and cleaning robot. Background Art

[0002] In recent years, with the continuous development and progress of science and technology, various cleaning robots with functions of sweeping, vacuuming, mopping, and floor washing have gradually been accepted by people. A variety of sensors are usually provided on the cleaning robot as its sensing system to achieve functions such as positioning, mapping, navigation, and obstacle avoidance of the robot. Specifically, during the working process, the cleaning robot can use a laser or vision sensor to establish a grid map and perform full-coverage cleaning according to the grid map.

[0003] Most of the existing cleaning strategies of cleaning robots complete the coverage cleaning of the entire map in square areas of a fixed size, or clean in sequence according to the divided areas. Due to the uncertainty of the cleaning sequence, there are often phenomena of excessive navigation and repeated cleaning during the cleaning process, resulting in a low overall cleaning efficiency of the cleaning robot. Summary of the Invention

[0004] Based on this, it is necessary to provide a cleaning planning optimization method, apparatus, and cleaning robot for the problem that the existing cleaning robot is prone to excessive navigation and repeated cleaning during the cleaning process, resulting in low cleaning efficiency.

[0005] To achieve the above object, an embodiment of the present invention provides a cleaning planning optimization method applied to a cleaning robot, including the following steps:

[0006] Divide the grid map into several partitions;

[0007] Select a starting partition from each partition and confirm the selected starting partition as the cleaning starting partition;

[0008] Based on the cleaning starting partition and the adjacent relationship information of each partition, perform weight marking processing on each partition to obtain the weight information of each partition;

[0009] Based on a preset weight screening algorithm, perform cleaning sequence marking processing on the weight information of each partition to obtain the partition cleaning sequence information.

[0010] In one embodiment, the step of performing weight marking processing on each partition includes:

[0011] Mark the weight of each partition as a first weight value;

[0012] Update the weight of the cleaning starting partition to a second weight value; the second weight value is greater than the first weight value;

[0013] Update the weight of the partition adjacent to the cleaning start partition to the third weight value, add the partition with the third weight value to the marking set, and the weight of the marking set is the current cumulative weight value; the third weight value is greater than the second weight value; the current cumulative weight value is equal to the third weight value;

[0014] Perform a traversal marking operation; the traversal marking operation is: traverse the adjacent partitions of all partitions in the marking set, mark the weights of all adjacent and unmarked partitions as the next cumulative weight value of the adjacent partitions, clear the marking set, and add the partitions with the next cumulative weight value to the cleared marking set; the next cumulative weight value is the sum of the current cumulative weight value and a preset constant;

[0015] When the marking set is not empty, repeatedly perform the traversal marking operation until the marking set is empty.

[0016] In one embodiment, the steps of performing cleaning order marking processing on the weight information of each partition based on a preset weight screening algorithm include:

[0017] Perform a maximum weight partition processing operation; the maximum weight partition processing operation is: select the partition with the largest weight among all partitions as the maximum weight partition, add the identity information of the maximum weight partition to the order list, and clear the weight of the corresponding maximum weight partition;

[0018] Perform a preselected partition selection operation; the preselected partition selection operation is: based on the adjacent relationship information of each partition, select the partition adjacent to the maximum weight partition and with the largest weight as the current preselected partition;

[0019] When the current preselected partition is not empty, traverse the adjacent partitions of the current preselected partition, select the partition with a weight greater than the weight of the current preselected partition as the latest preselected partition, and update the identity information of the current preselected partition to the identity information of the latest preselected partition;

[0020] If the current preselected partition is the cleaning start partition, perform the maximum weight partition processing operation;

[0021] If the current preselected partition is not the cleaning start partition, add the identity information of the current preselected partition to the order list, clear the weight of the corresponding current preselected partition, and confirm the current preselected partition as the new maximum weight partition, and then go to perform the preselected partition selection operation;

[0022] When the current preselected partition is empty, obtain the partition cleaning order information according to the order of the identity information in the order list.

[0023] In one embodiment, before the step of performing the maximum weight partition processing operation, it includes:

[0024] Add the identity information of the partition with the first weight value to the order list.

[0025] In one embodiment, the step of obtaining the adjacent relationship of each partition includes:

[0026] Obtain the label information of each partition;

[0027] According to the label information of each partition, process the adjacent relationship between each partition to obtain the adjacent relationship information of each partition.

[0028] In one embodiment, the cleaning start partition is the partition that includes the current position of the cleaning robot or the position of the base station.

[0029] In one embodiment, the step of dividing the grid map into regions includes:

[0030] According to the preset dividing line, divide the grid map into regions to obtain each partition.

[0031] In one embodiment, the step of dividing the grid map into regions includes:

[0032] Identify the door line of the grid map to obtain the door line information;

[0033] According to the door line information, divide the grid map into regions to obtain each partition.

[0034] On the other hand, an embodiment of the present invention further provides a cleaning plan optimization device, which is applied to a cleaning robot and includes:

[0035] A partition unit for dividing the grid map into regions to obtain a plurality of partitions;

[0036] A starting point selection unit for selecting a starting point partition from each partition and confirming the selected starting point partition as the cleaning starting point partition;

[0037] A weight processing unit for performing weight marking processing on each partition based on the cleaning starting point partition and the adjacent relationship information of each partition to obtain the weight information of each partition;

[0038] A cleaning order marking unit for performing cleaning order marking processing on the weight information of each partition based on a preset weight screening algorithm to obtain the partition cleaning order information.

[0039] On the other hand, an embodiment of the present invention further provides a cleaning robot, including a cleaning robot main body and a controller provided on the cleaning robot; the controller is used to execute the cleaning plan optimization method of any one of the above.

[0040] The cleaning path planning optimization method, cleaning path planning optimization device, or cleaning robot of each of the above embodiments divides a grid map into several partitions; selects a starting partition from each partition and designates the selected starting partition as the cleaning starting partition; performs a weight marking process on each partition based on the adjacent relationship information of the cleaning starting partition and each partition to obtain the weight information of each partition; and performs a cleaning sequence marking process on the weight information of each partition based on a preset weight screening algorithm to obtain the partition cleaning sequence information, thereby optimizing the cleaning sequence of the cleaning robot. By dividing the established grid map, this application selects the cleaning starting partition and the adjacent relationship information of each partition from the divided partitions of the grid map; then designs and plans the cleaning sequence of each area according to the adjacent relationship information and the cleaning starting partition to achieve the optimal cleaning path planning, which can effectively reduce the ineffective navigation and repeated cleaning movements during the operation, quickly and effectively complete the coverage cleaning, and thus improve the cleaning efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] Figure 1 FIG. is a schematic diagram of the application environment of the cleaning path planning optimization method in one embodiment;

[0042] Figure 2 FIG. is a first flowchart of the cleaning path planning optimization method in one embodiment;

[0043] Figure 3 FIG. is a flowchart of the weight marking process step in one embodiment;

[0044] Figure 4 FIG. is a flowchart of the cleaning sequence marking process step in one embodiment;

[0045] Figure 5 FIG. is a second flowchart of the cleaning path planning optimization method in one embodiment;

[0046] Figure 6 FIG. is a partition grid diagram of the cleaning path planning optimization method in one embodiment;

[0047] Figure 7 FIG. is a block diagram of the cleaning path planning optimization device of the cleaning robot in one embodiment. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0048] In order to enable those skilled in the art to better understand the solutions of this application, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of this application. Obviously, the described embodiments are only a part of the embodiments of this application, rather than all the embodiments. Based on the embodiments in this application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of this application.

[0049] It should be noted that the terms "first", "second", etc. in the description, claims and the above-mentioned drawings of this application are used to distinguish similar objects, and do not necessarily have to be used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged under appropriate circumstances, so as to implement the embodiments of the present application described herein. In addition, the terms "comprising" and "having" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device that includes a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or are inherent to these processes, methods, products or devices.

[0050] In addition, the meaning of the term "plurality" should be two or more.

[0051] The cleaning plan optimization method provided by this application can be applied to, for example Figure 1 the application environment shown in the figure. Among them, the cleaning robot includes a controller 102 and a cleaning robot main body 104. The controller 102 is connected to the cleaning robot main body 104. The controller 102 can be used to divide the grid map into several partitions; select a starting partition in each partition, and confirm the selected starting partition as the cleaning starting partition; based on the adjacent relationship information between the cleaning starting partition and each partition, perform a weight marking process on each partition to obtain the weight information of each partition; based on a preset weight screening algorithm, perform a cleaning order marking process on the weight information of each partition to obtain the partition cleaning order information. The cleaning robot can be a cleaning robot with functions such as sweeping and mopping the floor. The cleaning robot also includes a camera, and the camera can be used to collect image data of the corresponding grid map. Furthermore, the controller can obtain the corresponding grid map according to the image data collected by the camera.

[0052] In order to solve the problem of low cleaning efficiency caused by excessive navigation and repeated cleaning during the cleaning process of existing cleaning robots, in one embodiment, as Figure 2 shown in the figure, a cleaning plan optimization method applied to a cleaning robot is provided. Taking the controller 102 in Figure 1 as an example, it includes:

[0053] Step S210: Divide the grid map into several partitions.

[0054] Among them, a grid map, also known as a raster map, refers to a map image that has been discretized in both space and brightness. Exemplarily, the grid map can be obtained by the system downloading the corresponding grid map data offline; the grid map can also be obtained by processing the image data collected by the camera in real time. For example, the camera collects image data in real time and transmits the collected image data to the controller, and the controller processes the received image data to obtain the corresponding grid map. The camera can be but is not limited to a monocular camera or a binocular camera.

[0055] The controller can perform area division processing on the established grid map and divide the grid map into several partitions. Exemplarily, the grid map can be partitioned by artificially adding dividing lines to obtain each partition. It is also possible to identify obstacles and actively search for the door line to divide the grid map into different areas, thereby obtaining each partition.

[0056] Step S220, select a starting partition from each partition and confirm the selected starting partition as the cleaning starting partition.

[0057] Among them, the cleaning starting partition refers to the partition where the cleaning robot first starts cleaning. Exemplarily, the controller can confirm the current position of the cleaning robot body as the starting position, and then can confirm the partition where the current position of the cleaning robot body is located as the starting partition. In addition, the controller can also confirm the initial position of the cleaning robot body as the starting position, and then can confirm the partition where the initial position of the cleaning robot body is located as the starting partition.

[0058] The controller can select a starting partition from each partition based on a preset starting partition selection rule and confirm the selected starting partition as the cleaning starting partition.

[0059] Step S230, based on the cleaning starting partition and the adjacent relationship information of each partition, perform a weight marking process on each partition to obtain the weight information of each partition.

[0060] Among them, the adjacent relationship information refers to the identity information between partitions with an adjacent relationship. For example, if the first partition and the second partition are adjacent partitions, the corresponding adjacent relationship information of the first partition and the second partition includes the identity information of the first partition and the identity information of the second partition. Exemplarily, the adjacent relationship between partitions can be determined based on whether there is mutual contact between partitions, and two partitions with mutual contact are confirmed as adjacent partitions.

[0061] The controller can check and process the adjacent relationships of each partition, and then obtain the adjacent relationship information of each partition. Based on the cleaning start partition and the adjacent relationship information of each partition, the controller performs a weight marking process on each partition using a preset weight marking rule, and then obtains the weight information of each partition.

[0062] Step S240: Based on a preset weight screening algorithm, perform a cleaning order marking process on the weight information of each partition to obtain partition cleaning order information.

[0063] Among them, the controller performs a cleaning order marking process on the weight information of each partition based on a preset weight screening algorithm, marks the cleaning order of each partition in sequence, obtains the partition cleaning order information, and then realizes cleaning all partitions in sequence according to the cleaning order, and finally can reduce navigation and repeated cleaning, and achieve cleaning optimization and efficiency improvement.

[0064] In the above embodiment, the grid map is divided into several partitions; a start partition is selected from each partition, and the selected start partition is confirmed as the cleaning start partition; based on the cleaning start partition and the adjacent relationship information of each partition, a weight marking process is performed on each partition to obtain the weight information of each partition; based on a preset weight screening algorithm, a cleaning order marking process is performed on the weight information of each partition to obtain partition cleaning order information, thereby optimizing the cleaning order of the cleaning robot. By performing regional segmentation on the established grid map, the cleaning start partition and the adjacent relationship information of each partition of the segmented grid map are selected; then, according to the adjacent relationship information and the cleaning start partition, the cleaning sequence of each area is designed and planned to achieve the optimal cleaning plan, thereby effectively reducing ineffective navigation and movement, quickly and effectively completing coverage cleaning, and then improving the cleaning efficiency.

[0065] In one embodiment, as Figure 3 shown, the steps of performing a weight marking process on each partition include:

[0066] Step S310: Mark the weight of each partition as a first weight value.

[0067] Among them, the first weight value can be set to 0. For example, the controller can mark the weight of each partition as 0 to initialize the weight marking of each partition.

[0068] Step S320: Update the weight of the cleaning start partition to a second weight value; the second weight value is greater than the first weight value.

[0069] Among them, the second weight value is greater than the first weight value. For example, the first weight value is 0 and the second weight value is set to 1.

[0070] The controller can update the weight of the cleaning starting area partition to the second weight value according to the selected cleaning starting area partition. For example, the weight of the cleaning starting area partition is updated from 0 to 1. It should be noted that the initial weight of the cleaning starting area partition is 0.

[0071] Step S330: Update the weights of the partitions adjacent to the cleaning starting area partition to the third weight value, add the partitions with the third weight value to the marking set, and the weight of the marking set is the current cumulative weight value; the third weight value is greater than the second weight value; the current cumulative weight value is equal to the third weight value.

[0072] Among them, the third weight value is greater than the second weight value. For example, the second weight value is 1 and the third weight value is set to 2.

[0073] The controller can, based on the adjacent relationship information, update the weights of the partitions adjacent to the cleaning starting area partition to the third weight value. For example, the weights of the partitions adjacent to the cleaning starting area partition are updated from 0 to 2. The controller can pre-establish a marking set SET, set the weight of the marking set SET as set_value, and then add the partitions with the third weight value to the marking set SET, and the weight set_value of the marking set is the third weight value. For example, set_value is set to 2.

[0074] Step S340: Perform a traversal and marking operation; the traversal and marking operation is: traverse the adjacent partitions of all partitions in the marking set, mark the weights of all adjacent and unmarked partitions as the next cumulative weight value of the adjacent partitions, clear the marking set, and add the partitions with the next cumulative weight value to the cleared marking set; the next cumulative weight value is the sum of the current cumulative weight value and a preset constant.

[0075] Exemplarily, the controller traverses the adjacent partitions of all partitions in the next marking set SET, and sets the next cumulative weight value in the marking set SET as the sum of the current cumulative weight value and a preset constant. For example, the preset constant is set to 1, then the next cumulative weight value set_value = set_value + 1. The controller marks the weights of all adjacent and unmarked partitions in the next marking set SET as the next cumulative weight value of the adjacent partitions. After completing the weight marking of all partitions in the next marking set SET, clear the next marking set SET, and then add the partitions with the weight marked as the next cumulative weight value to the cleared marking set to perform the next round of partition weight marking operation.

[0076] Step S350: When the marking set is not empty, repeat the traversal and marking operation until the marking set is empty.

[0077] Among them, the controller can monitor whether the tag set is empty. When the tag set is not empty, the operation of traversing the tags is repeatedly executed until the tag set is empty, that is, until no new partition weights can be tagged, and it is determined that all partition weights have been tagged.

[0078] In one example, the steps of weight tagging processing may include the following steps 1 to 4: Step 1, tag all partition weights as 0, and tag the weight of the cleaning start point partition as 1; Step 2, set the weight of the adjacent partition of the cleaning start point partition to 2; add the partition with a weight of 2 to the tag set SET, and set the weight value set_value of the tag set to 2; Step 3, traverse the adjacent partitions of all partitions in the input tag set SET; and set set_value = set_value + 1; tag the weights of all adjacent and unmarked partitions as set_value; clear the tag set SET, and add the partition with a weight of set_value to the tag set SET; Step 4, when the tag set SET is not empty, repeatedly execute the operation of Step 3 until no new partition weights can be tagged.

[0079] In one embodiment, as Figure 4 shown, based on a preset weight screening algorithm, the steps of performing cleaning order tagging processing on each partition weight information include:

[0080] Step S410, perform the operation of processing the partition with the maximum weight; the operation of processing the partition with the maximum weight is: select the partition with the largest weight among each partition as the partition with the maximum weight, add the identity information of the partition with the maximum weight to the order list, and clear the weight of the corresponding partition with the maximum weight.

[0081] Among them, the controller establishes an order list, and the order list is used to sequentially store the identity information of the partitions, and then the cleaning order of the partitions can be confirmed according to the order of the stored identity information.

[0082] The controller can query the corresponding weight values of each partition, and then select the partition with the largest weight among each partition, and confirm the partition with the largest weight as the partition with the maximum weight CurMax. The controller can obtain the identity information of the corresponding partition with the maximum weight, and add the identity information of the partition with the maximum weight to the order list List, and then clear the weight of the corresponding partition with the maximum weight CurMax, for example, update the weight of the corresponding partition with the maximum weight CurMax to 0.

[0083] Step S420, perform the operation of selecting the preselected partition; the operation of selecting the preselected partition is: based on the adjacent relationship information of each partition, select the partition that is adjacent to the partition with the maximum weight and has the largest weight as the current preselected partition.

[0084] Among them, the current preselected partition is set as PossZone. The controller can query the partition adjacent to the partition with the maximum weight and having the maximum weight based on the adjacent relationship information of each partition, and then select the partition adjacent to the partition with the maximum weight and having the maximum weight, and confirm this partition as the current preselected partition PossZone.

[0085] Step S430, when the current preselected partition is not empty, traverse the adjacent partitions of the current preselected partition, select the partition with a weight greater than the weight of the current preselected partition as the latest preselected partition, and update the identity information of the current preselected partition to the identity information of the latest preselected partition.

[0086] The controller can judge the execution of the preselected partition selection operation in step S420. If the current preselected partition is not empty, it is determined that the latest preselected partition is obtained in step S420, and then traverse the adjacent partitions of the current preselected partition. The controller selects the partition with a weight greater than the weight of the current preselected partition as the latest preselected partition, and updates the identity information of the current preselected partition to the identity information of the latest preselected partition.

[0087] Step S440, if the current preselected partition is the cleaning starting partition, execute the maximum weight partition processing operation.

[0088] The controller judges whether the current preselected partition is the cleaning starting partition. If the current preselected partition is the cleaning starting partition, return to step S410 to execute the maximum weight partition processing operation.

[0089] Step S450, if the current preselected partition is not the cleaning starting partition, add the identity information of the current preselected partition to the sequence list, clear the weight corresponding to the current preselected partition, and confirm the current preselected partition as the new maximum weight partition, and then go to execute the preselected partition selection operation.

[0090] If the controller judges that the current preselected partition is not the cleaning starting partition, add the identity information of the current preselected partition to the sequence list, clear the weight corresponding to the current preselected partition, for example, update the weight corresponding to the current preselected partition to 0. Furthermore, the controller can confirm the current preselected partition as the new maximum weight partition, and then go to step S420 to execute the preselected partition selection operation.

[0091] Step S460, when the current preselected partition is empty, obtain the partition cleaning sequence information according to the addition sequence of the identity information in the sequence list.

[0092] When the controller judges that the current preselected partition is empty, that is, when it is determined that the current preset partition does not exist, obtain the partition cleaning sequence information according to the addition sequence of the identity information in the sequence list, and then confirm the optimized partition cleaning sequence.

[0093] In one example, before the step of performing the maximum weight partitioning process operation, it includes:

[0094] Add the identity information of the partition with the first weight value to the sequence list.

[0095] Among them, the first weight value can be set to 0. By adding the identity information of the partition with the first weight value to the sequence list before the step of performing the maximum weight partitioning process operation, these partitions can be preferentially attempted to be cleaned.

[0096] It should be noted that the partition weight being the first weight value means that the machine currently cannot plan to reach this partition. The partition is preferentially added to the sequence list, and then preferentially attempted to be cleaned, so as to avoid missed sweeping.

[0097] In one example, the steps of the cleaning sequence marking process may include the following steps 5 to 10:

[0098] Step 5: Add the partitions with the first weight value (such as 0) of the partition weights to the sequence list (hereinafter represented by List) in sequence (the partition weight of 0 means that the machine currently cannot plan to reach this partition, and a trial method is needed to determine whether it can reach these partitions); preferentially attempt to clean these partitions;

[0099] Step 6: Select the partition CurMax with the maximum weight, add it to List, and clear the weight value of this partition to the first weight value (such as 0);

[0100] Step 7: According to the adjacent relationship information, select the partition adjacent to CurMax and with the maximum weight as the current preselected partition (PossZone). If PossZone does not exist, execute Step 10; otherwise, execute Step 8;

[0101] Step 8: Traverse the adjacent partitions of PossZone to check if there is a partition with a weight greater than the weight of PossZone. If so, use this partition as the latest preselected partition PossZone; repeat Step 8; if not, execute Step 9;

[0102] Step 9: Determine whether PossZone is the cleaning starting partition. If it is, go to execute Step 6; if not, add PossZone to List, clear the weight of this partition to the first weight value (such as 0), and use this partition as the new CurMax, then go to Step 7;

[0103] Step 10: Complete the cleaning sequence planning and generate the cleaning List.

[0104] In the above embodiment, the design of completing the entire cleaning sequence at the beginning of cleaning can effectively reduce the time waste caused by the selection of the next cleaning area during the cleaning process, and the navigation planning can be well completed according to the adjacent relationship; cleaning according to the cleaning sequence designed in this application can quickly complete the cleaning of each partition in the form of partitions compared to the full coverage map cleaning of a fixed-size square area, thereby improving the cleaning efficiency. According to the test, the same cleaning environment can shorten the cleaning time by about 30%; cleaning according to the cleaning sequence designed in this application can effectively reduce the back-and-forth navigation problem caused by the cleaning sequence, improve the cleaning efficiency, and according to the test, the same cleaning environment can shorten the cleaning time by about 20%; according to the planned cleaning sequence, the cleaning can be reasonably planned from far to near, which can reduce the repeated cleaning of the partitions and effectively prevent the cleaned partitions from being polluted again; according to this application, the cleaning sequence of multiple partitions or all partitions can be optimized, thereby satisfying the personalized cleaning mode.

[0105] In one embodiment, Figure 5 As shown, a cleaning planning optimization method is provided, which is applied to Figure 1 The controller 102 in FIG. 1 is used as an example to illustrate the invention, including:

[0106] Step S510, dividing the grid map into regions to obtain a plurality of regions.

[0107] For the specific description of the above step S510, please refer to the description of the above embodiment, which will not be repeated here.

[0108] Step S520: Select a starting point partition from each partition, and confirm the selected starting point partition as the cleaning starting point partition.

[0109] For the specific description of the above step S520, please refer to the description of the above embodiment, which will not be repeated here.

[0110] Step S530, obtaining label information of each partition.

[0111] The grids of each partition of the segmented grid map may be marked with different label values, and then the controller may obtain the label information of each partition.

[0112] Step S540: Process the neighbor relationship between the partitions according to the label information of each partition to obtain the neighbor relationship information of each partition.

[0113] The controller calculates the neighbor relationship between all partitions according to the label information of each partition of the grid map, and then obtains the neighbor relationship information of each partition.

[0114] Step S550: Based on the cleaning start partition and the adjacent relationship information of each partition, perform a weight marking process on each partition to obtain the weight information of each partition.

[0115] For the specific description of the above step S550, please refer to the description of the above embodiments and will not be elaborated here.

[0116] Step S560: Based on a preset weight screening algorithm, perform a cleaning order marking process on the weight information of each partition to obtain the partition cleaning order information.

[0117] For the specific description of the above step S560, please refer to the description of the above embodiments and will not be elaborated here.

[0118] In the above embodiments, by performing regional segmentation on the established grid map, the cleaning start partition and the adjacent relationship information of each partition are selected from each partition of the segmented grid map; then, according to each adjacent relationship information and the cleaning start partition, the cleaning sequence of each area is designed and planned to achieve the optimal cleaning plan, thereby effectively reducing ineffective navigation and movement, quickly and effectively completing the coverage cleaning, and further improving the cleaning efficiency.

[0119] In one embodiment, the cleaning start partition is the partition containing the current position of the cleaning robot or the position of the base station.

[0120] Among them, the current position of the cleaning robot refers to the current location of the cleaning robot body. The base station position refers to the location of the base station corresponding to the cleaning robot.

[0121] For example, the controller can confirm the current position of the cleaning robot body as the starting position, and then can confirm the partition where the current position of the cleaning robot body is located as the starting partition. For another example, the controller can also confirm the base station position as the starting position, and then can confirm the partition where the base station position is located as the starting partition.

[0122] In one example, the controller can default to select the partition where the base station position is located as the cleaning start partition. If the base station has not been marked, the partition where the current position of the cleaning robot body is located is used as the cleaning start partition.

[0123] In one embodiment, the steps of performing regional division on the grid map include:

[0124] According to the preset dividing line, perform regional segmentation on the grid map to obtain each partition.

[0125] Exemplarily, the preset dividing line can be obtained on the grid map by manually adding a dividing line, and then the controller performs regional segmentation on the grid map according to the preset dividing line to obtain each partition.

[0126] In one embodiment, the steps of partitioning a grid map include:

[0127] Identify the door lines of the grid map to obtain door line information; according to the door line information, partition the grid map to obtain each partition.

[0128] Exemplarily, the door lines of the grid map can also be identified by identifying obstacles and actively searching for door lines to obtain door line information. Then, the controller partitions the grid map into different regions according to the door line information, and thus obtains each partition.

[0129] In one example, as Figure 6 shown, the grid map is divided into partitions 1 to 7 (i.e., Room1 is partition 1, Room2 is partition 2, Room3 is partition 3, Room4 is partition 4, Room5 is partition 5, Room6 is partition 6, and Room7 is partition 7). According to the labels of each partition, calculate the correlation relationships of each partition, and the obtained correlation relationship information is: (1, 3), (2, 3), (3, 5), (5, 6), (5, 7), (4, 7). Select partition 7 as the cleaning starting partition.

[0130] Perform a weight marking process on each partition, and obtain the weight of partition 7 in the first round as value_7 = 1;

[0131] In the second round, mark the weight of partition 4 as value_4 = 2, and the weight of partition 5 as value_5 = 2;

[0132] In the third round, mark the weight of partition 6 as value_6 = 3, and the weight of partition 3 as value_3 = 3;

[0133] In the fourth round, mark the weight of partition 2 as value_2 = 4, and the weight of partition 1 as value_1 = 4.

[0134] Perform a cleaning order marking process on the weight information of each partition:

[0135] 1. First, select partition 1 with the largest weight to enter the order list List(1);

[0136] 2. There is only one adjacent unplanned partition of partition 1, which is partition 3 (with a weight of 3); the weight of partition 3 is less than that of its adjacent unplanned partition 2 (with a weight of 4); partition 2 is the partition with the largest weight and is added to the order list List(1, 2);

[0137] 3. The only adjacent unplanned partition of partition 2 is partition 3 (with a weight of 3), and the adjacent unplanned partition of partition 3 is partition 5 (with a weight of 2). Partition 3 is the partition with the largest weight and is added to the order list List(1, 2, 3);

[0138] 4. The only adjacent partition of partition 3 is unplanned partition 5. The weight of partition 5 is less than that of its adjacent unplanned partition 6. Partition 6 is the partition with the largest weight and is added to the sequential list List(1, 2, 3, 6).

[0139] 5. The only unplanned adjacent partition of partition 6 is partition 5 (weight is 2), and the unplanned adjacent partition of partition 5 is partition 7 (weight is 1). Partition 5 is the partition with the highest weight and is added to the sequential list List(1, 2, 3, 6, 5).

[0140] 6. The only adjacent partition of partition 5 is unplanned partition 7 (weight 1). The weight of partition 7 is less than that of its adjacent unplanned partition 4. Partition 4 is the partition with the largest weight and is added to the sequential list List(1, 2, 3, 6, 5, 4).

[0141] 7. Finally, partition 7 is added to the sequence list List (1, 2, 3, 6, 5, 4, 7) as the initial partition.

[0142] In the above embodiment, the design of the entire cleaning sequence is completed at the beginning of cleaning, so that the navigation planning is well completed according to the adjacent relationship, which can effectively reduce the time waste and repeated navigation and cleaning caused by selecting the next cleaning area during the cleaning process. Cleaning according to the cleaning sequence designed in this application can quickly complete the cleaning of each partition in a partitioned form compared to the full coverage map cleaning of a fixed-size square area, thereby improving the cleaning efficiency. According to the test, the same cleaning environment can shorten the cleaning time by about 30%; cleaning according to the cleaning sequence designed in this application can effectively reduce the back-and-forth navigation problem caused by the cleaning sequence, improve the cleaning efficiency, and the same cleaning environment can shorten the cleaning time by about 20% according to the test; according to the planned cleaning sequence, the cleaning can be reasonably planned from far to near, which can reduce the repeated cleaning of the partition, and can effectively prevent the cleaned partition from being contaminated again; according to this application, the cleaning sequence of multiple partitions or all partitions can be optimized, so as to meet the personalized cleaning mode.

[0143] It should be understood that although Figures 2 - 5 The steps in the flowchart are shown in sequence as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order restriction for the execution of these steps, and these steps can be executed in other orders. Moreover, Figures 2 - 5At least some of the steps may include multiple sub-steps or multiple stages, and these sub-steps or stages do not necessarily need to be completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages does not necessarily need to be sequential, but can be executed alternately or in turns with at least some of the other steps or sub-steps or stages of the other steps.

[0144] In one embodiment, as Figure 7 shown, there is also provided a cleaning plan optimization device for a cleaning robot, including:

[0145] A zoning unit 710, configured to divide the grid map into several zones.

[0146] A starting point selection unit 720, configured to select a starting zone from each zone and confirm the selected starting zone as the cleaning starting zone.

[0147] A weight processing unit 730, configured to perform weight marking processing on each zone based on the cleaning starting zone and the adjacent relationship information of each zone, to obtain the weight information of each zone.

[0148] A cleaning order marking unit 740, configured to perform cleaning order marking processing on the weight information of each zone based on a preset weight screening algorithm, to obtain the zone cleaning order information.

[0149] For the specific limitations on the cleaning plan optimization device of the cleaning robot, reference can be made to the limitations on the cleaning plan optimization method in the above text, which will not be elaborated here. Each module in the above cleaning plan optimization device of the cleaning robot can be implemented in whole or in part through software, hardware, and their combination. Each of the above modules can be embedded in or independent of the controller in the cleaning robot in the form of hardware, or stored in the memory of the cleaning robot in the form of software, so as to facilitate the controller to call and execute the operations corresponding to each of the above modules.

[0150] In one embodiment, there is also provided a cleaning robot, including a cleaning robot main body and a controller disposed on the cleaning robot; the controller is configured to execute the cleaning plan optimization method of any one of the above.

[0151] Among them, the cleaning robot can be various cleaning robots with sweeping, vacuuming, mopping, floor washing, etc. functions alone or in combination.

[0152] The controller is configured to execute the following steps of the cleaning plan optimization method:

[0153] The grid map is partitioned to obtain a number of sub - regions; a starting sub - region is selected from each sub - region, and the selected starting sub - region is confirmed as the cleaning starting sub - region; based on the cleaning starting sub - region and the adjacent relationship information of each sub - region, weight marking processing is performed on each sub - region to obtain the weight information of each sub - region; based on a preset weight screening algorithm, cleaning order marking processing is performed on the weight information of each sub - region to obtain the sub - region cleaning order information, thereby optimizing the cleaning order of the cleaning robot.

[0154] In the above - mentioned embodiment, by performing regional segmentation on the established grid map, the cleaning starting sub - region and the adjacent relationship information of each sub - region of the segmented grid map are selected; then, according to the adjacent relationship information and the cleaning starting sub - region, the cleaning sequence of each region is designed and planned to achieve the optimal cleaning plan, so as to effectively reduce ineffective navigation and movement, quickly and effectively complete the coverage cleaning, and thus improve the cleaning efficiency.

[0155] In one embodiment, a computer - readable storage medium is further provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the cleaning plan optimization method according to any one of the above are implemented.

[0156] In one example, when the computer program is executed by a processor, the following steps are implemented:

[0157] The grid map is partitioned to obtain a number of sub - regions; a starting sub - region is selected from each sub - region, and the selected starting sub - region is confirmed as the cleaning starting sub - region; based on the cleaning starting sub - region and the adjacent relationship information of each sub - region, weight marking processing is performed on each sub - region to obtain the weight information of each sub - region; based on a preset weight screening algorithm, cleaning order marking processing is performed on the weight information of each sub - region to obtain the sub - region cleaning order information, thereby optimizing the cleaning order of the cleaning robot.

[0158] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above methods. Among them, any reference to a memory, storage, database, or other medium used in the embodiments provided in the present application can include non-volatile and / or volatile memories. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and Rambus dynamic RAM (RDRAM), etc.

[0159] The technical features of the above embodiments can be combined arbitrarily. For the sake of brevity of description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope described in this specification.

[0160] The above embodiments merely represent several implementation manners of the present application. The description thereof is relatively specific and detailed, but it cannot be understood as a limitation on the scope of the invention patent. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all belong to the protection scope of the present application. Therefore, the protection scope of the patent of the present application should be subject to the appended claims.

Claims

1. A cleaning plan optimization method, applied to a cleaning robot, characterized in that, It includes the following steps: Divide the grid map into several partitions; Select a starting partition from each of the said partitions, and confirm the selected starting partition as the cleaning starting partition; Based on the cleaning starting partition and the adjacent relationship information of each of the said partitions, perform weight marking processing on each of the said partitions to obtain the weight information of each partition; Based on a preset weight screening algorithm, perform cleaning order marking processing on the weight information of each of the said partitions to obtain partition cleaning order information, including: Execute the maximum weight partition processing operation: select the partition with the largest weight among each of the said partitions as the maximum weight partition, add the identity information of the maximum weight partition to the order list, and clear the weight of the corresponding maximum weight partition; Execute the preselected partition selection operation: based on the adjacent relationship information of each of the said partitions, select the partition adjacent to the maximum weight partition and with the largest weight as the current preselected partition; When the current preselected partition is not empty, traverse the adjacent partitions of the current preselected partition, select the partition with a weight greater than the weight of the current preselected partition as the latest preselected partition, and update the identity information of the current preselected partition to the identity information of the latest preselected partition; If the current preselected partition is the cleaning starting partition, execute the maximum weight partition processing operation; If the current preselected partition is not the cleaning starting partition, add the identity information of the current preselected partition to the order list, clear the weight of the corresponding current preselected partition, and confirm the current preselected partition as the new maximum weight partition, and then go to execute the preselected partition selection operation; When the current preselected partition is empty, obtain the partition cleaning order information according to the identity information addition order of the order list.

2. The cleaning plan optimization method according to claim 1, characterized in that The step of performing weight marking processing on each of the said partitions includes: Mark the weight of each of the said partitions as the first weight value; Update the weight of the cleaning starting partition to the second weight value; the second weight value is greater than the first weight value; Update the weight of the partition adjacent to the cleaning starting partition to the third weight value, add the partition with the third weight value to the marking set, and the weight of the marking set is the current cumulative weight value; the third weight value is greater than the second weight value; the current cumulative weight value is equal to the third weight value; Execute the traversal marking operation; the traversal marking operation is: traverse the adjacent partitions of all partitions in the marking set, mark the weights of all adjacent and unmarked partitions as the next cumulative weight value of the adjacent partition, clear the marking set, and add the partition with the next cumulative weight value to the cleared marking set; the next cumulative weight value is the sum of the current cumulative weight value and a preset constant; When the marking set is not empty, repeat the execution of the traversal marking operation until the marking set is empty.

3. The cleaning plan optimization method according to claim 2, characterized in that Before the step of executing the maximum weight partition processing operation, it includes: Add the identity information of the partition with the first weight value to the order list.

4. The cleaning plan optimization method according to claim 1, characterized in that The step of obtaining the adjacent relationship information of each of the said partitions includes: Obtain the label information of each partition; Process the adjacent relationships between the partitions according to the label information of each partition to obtain the adjacent relationship information of each partition.

5. The cleaning planning optimization method according to claim 1, characterized in that The starting cleaning partition is the partition that contains the current position of the cleaning robot or the position of the base station.

6. The cleaning plan optimization method according to claim 1, characterized in that, The step of partitioning the grid map includes: According to a preset dividing line, perform regional segmentation on the grid map to obtain each partition.

7. The cleaning plan optimization method according to claim 1, wherein The step of partitioning the grid map includes: Identify the door line of the grid map to obtain door line information; According to the door line information, perform regional segmentation on the grid map to obtain each partition.

8. A cleaning plan optimization device, applied to a cleaning robot, characterized in that Includes: A partitioning unit for partitioning the grid map to obtain several partitions; A starting point selection unit for selecting a starting partition from each of the partitions and designating the selected starting partition as the starting cleaning partition; A weight processing unit for performing weight marking processing on each partition based on the starting cleaning partition and the adjacent relationship information of each partition to obtain the weight information of each partition; A cleaning order marking unit for performing cleaning order marking processing on the weight information of each partition based on a preset weight screening algorithm to obtain the partition cleaning order information, including: performing the maximum weight partition processing operation: selecting the partition with the largest weight in each partition as the maximum weight partition, adding the identity information of the maximum weight partition to the order list, and clearing the weight of the corresponding maximum weight partition; performing the preselected partition selection operation: based on the adjacent relationship information of each partition, selecting the partition adjacent to the maximum weight partition and having the largest weight as the current preselected partition; when the current preselected partition is not empty, traverse the adjacent partitions of the current preselected partition, select the partition with a weight greater than the weight of the current preselected partition as the latest preselected partition, and update the identity information of the current preselected partition to the identity information of the latest preselected partition; if the current preselected partition is the starting cleaning partition, perform the maximum weight partition processing operation; if the current preselected partition is not the starting cleaning partition, add the identity information of the current preselected partition to the order list, clear the weight of the corresponding current preselected partition, and designate the current preselected partition as the new maximum weight partition, and then go to perform the preselected partition selection operation; when the current preselected partition is empty, obtain the partition cleaning order information according to the identity information in the order list.

9. A cleaning robot, characterized in that, Includes a cleaning robot body and a controller provided on the cleaning robot; the controller is configured to execute the cleaning planning optimization method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Method and device for planning full-coverage path of cleaning robot

    CN111012251A