A central control based method and apparatus for floor cleaning
By centrally scheduling robotic vacuum cleaners and automatically assigning cleaning tasks based on the area allocation order and remaining energy, the system solves the problems of low efficiency and high cost caused by frequent user intervention, and achieves efficient cleaning in multiple areas.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-04-28
- Publication Date
- 2026-04-14
AI Technical Summary
When using a robot vacuum cleaner to clean multiple areas, current technology requires frequent user intervention, resulting in low floor cleaning efficiency and high labor costs.
Multiple robotic vacuum cleaners are centrally scheduled and automatically assigned cleaning tasks based on the area allocation order and remaining available energy, achieving efficient cleaning of multiple areas.
Without requiring user intervention, the robot vacuum cleaner can autonomously clean all areas, improving floor cleaning efficiency and reducing energy consumption and labor costs.
Smart Images

Figure CN115530674B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of intelligent manufacturing technology, and in particular to a ground cleaning method and apparatus based on central control. Background Technology
[0002] A robotic vacuum cleaner is an intelligent machine that replaces manual floor cleaning. It typically has multiple functions such as sweeping, vacuuming, and mopping. When cleaning the floor, users can select and set the area to be cleaned, place the robotic vacuum cleaner in the area, and then the robotic vacuum cleaner can move autonomously within the set area and clean the floor along its path.
[0003] When using a robotic vacuum cleaner, the user can take it to the area that needs cleaning and set its direction of movement. The robot will then move in that direction and clean the floor. Upon reaching the boundary of the area, it can move one position to the left or right and then turn back to clean the floor, thus ensuring its path covers the entire area and completes the cleaning.
[0004] In the process of developing this application, the inventors discovered that the above-mentioned technology has at least the following problems:
[0005] When cleaning the floor, there are often multiple areas that need cleaning, located in different areas. Therefore, when cleaning multiple areas, the user needs to finish cleaning one area before moving the robot vacuum to the next. This results in two problems: firstly, the robot vacuum needs to wait for user intervention before starting the next area, leading to low cleaning efficiency; secondly, the entire cleaning process requires frequent user intervention, resulting in high labor costs. Summary of the Invention
[0006] To improve floor cleaning efficiency and reduce cleaning costs, this application provides a floor cleaning method and apparatus based on central control. The technical solution is as follows:
[0007] In a first aspect, embodiments of this application provide a ground cleaning method based on central control, the method comprising:
[0008] Receive a ground cleaning task, identify multiple areas to be cleaned, and establish a possible area allocation order for all multiple areas to be cleaned.
[0009] Obtain the remaining available energy of multiple robotic vacuum cleaners that are in an adjustable state;
[0010] According to the allocation order of each area, the remaining available energy is used to sequentially allocate the multiple areas to be cleaned to the multiple sweeping robots, generating different task allocation results;
[0011] The target task allocation result is selected from all task allocation results corresponding to all regional allocation sequences according to the preset selection principle.
[0012] The ground cleaning task is assigned based on the target task allocation result, so that the multiple sweeping robots can clean the multiple areas to be cleaned.
[0013] Using the above technical solution, when cleaning multiple areas, the central server uniformly schedules and allocates multiple sweeping robots to clean the floors of multiple areas. The entire process does not require human intervention from the user. The sweeping robots can autonomously complete the cleaning work of all areas according to the task allocation results, resulting in high floor cleaning efficiency and low energy and labor costs.
[0014] Optionally, the step of sequentially allocating the multiple cleaning areas to the multiple sweeping robots according to the remaining available energy, based on the allocation order of each area, to generate different task allocation results, includes:
[0015] According to the area allocation order, select an area to be cleaned as the target area;
[0016] Based on the remaining available energy, locate the available robotic vacuum cleaners corresponding to the target area;
[0017] The target area is assigned to each of the available robotic vacuum cleaners, generating a task assignment result;
[0018] Select the next target area, continue to allocate the target area based on each of the task allocation results, and update each of the task allocation results until all areas to be cleaned have been allocated.
[0019] By adopting the above technical solution, when allocating areas to be cleaned, the central server searches for the corresponding available robot vacuum cleaners one by one and continuously updates the task allocation results, thereby generating all task allocation results that meet the energy consumption requirements, which is conducive to achieving accurate and efficient allocation of areas to be cleaned.
[0020] Optionally, the step of finding available robotic vacuum cleaners corresponding to the target area based on the remaining available energy includes:
[0021] Based on the location of the target area and the location of each of the sweeping robots, calculate the distance each sweeping robot moves relative to the target area;
[0022] Based on the area of the target region, the moving distance, the preset energy consumption per unit distance and energy consumption per unit area for cleaning, and the remaining available energy, find the available robot vacuum cleaner corresponding to the target region;
[0023] After assigning the target area to each of the available robotic vacuum cleaners, the process further includes:
[0024] Update the remaining available energy and machine location for each of the available robotic vacuum cleaners.
[0025] By employing the above technical solution, the energy consumption required for moving and cleaning a target area is quantitatively estimated by measuring the energy consumption per unit distance and the energy consumption per unit area. Furthermore, it is determined whether the remaining available energy of the robotic vacuum cleaner can cover these energy consumption requirements. This allows for a more accurate identification of available robotic vacuum cleaners for each area to be cleaned.
[0026] Optionally, the step of finding an available robotic vacuum cleaner corresponding to the target area based on the area of the target area, the moving distance, preset energy consumption per unit distance and energy consumption per unit area for cleaning, and the remaining available energy includes:
[0027] Calculate the shortest distance between the target area and all preset charging points;
[0028] Based on the area of the target region, the travel distance, the shortest path, the preset energy consumption per unit distance and energy consumption per unit area for cleaning, and the remaining available energy, find the available robot vacuum cleaner corresponding to the target region.
[0029] By adopting the above technical solution, when searching for available robot vacuums, in addition to considering the energy consumption required for the robot vacuum to move to the target area and the energy consumption required for cleaning the target area, the shortest distance between the target area and the preset charging point is also considered, as well as the energy consumption required for the return trip. This allows for a more accurate selection of available robot vacuums for the target area.
[0030] Optionally, the energy consumption per unit distance for movement includes energy consumption per unit distance for movement on flat ground and energy consumption per unit distance for movement on steps; the energy consumption per unit area for cleaning includes energy consumption per unit area for cleaning on flat ground and energy consumption per unit area for cleaning on steps.
[0031] By adopting the above technical solution, the energy consumption required for movement on flat ground and staircase sections, as well as the energy consumption required for cleaning flat ground and staircase areas, can be calculated separately for two different indoor terrains. This allows for a more accurate identification of a sweeping robot with remaining available energy that meets the area's cleaning needs.
[0032] Optionally, after receiving the ground cleaning task, the method further includes:
[0033] Based on the task deadline of each of the areas to be cleaned, set the task start time for each area to be cleaned, and store the areas to be cleaned;
[0034] For the first region, determine whether a second region with a task start time earlier than the first region and a region spacing less than a preset threshold has been stored.
[0035] If so, adjust the task start time of the first region to the task start time of the second region;
[0036] The process of establishing all possible area allocation orders for the multiple areas to be cleaned includes:
[0037] When the task start time is reached, establish a sequence of all possible areas to be cleaned for all areas corresponding to the task start time.
[0038] Using the above technical solution, the central server uses the task start time of each area to be cleaned as the standard to uniformly arrange the cleaning tasks of adjacent areas to be cleaned, which can effectively reduce the actual energy consumption required by the robot vacuum cleaner when cleaning these areas.
[0039] Optionally, setting the task start time for each area to be cleaned based on the task deadline for each area to be cleaned includes:
[0040] Based on the task deadline time of each of the areas to be cleaned and the corresponding pedestrian density of each area, the task start time of each area to be cleaned is set.
[0041] By adopting the above technical solution, the central server fully considers the population density of each area when setting the task start time for each area to be cleaned, so as to start the floor cleaning work in the corresponding area when the population density is low, thereby reducing the mutual impact between floor cleaning work and normal use of the area.
[0042] Secondly, embodiments of this application provide a centrally controlled floor cleaning device, the device comprising:
[0043] The task receiving module is used to receive ground cleaning tasks, identify multiple areas to be cleaned, and establish a possible area allocation order for all multiple areas to be cleaned.
[0044] The energy statistics module is used to obtain the remaining available energy of multiple robotic vacuum cleaners in an adjustable state;
[0045] The area allocation module is used to sequentially allocate the multiple areas to be cleaned to the multiple sweeping robots according to the remaining available energy, based on the area allocation order, and generate different task allocation results;
[0046] The result filtering module is used to select the target task allocation result from all task allocation results corresponding to all regional allocation order according to preset selection principles.
[0047] The task distribution module is used to assign the ground cleaning task based on the target task allocation result, so that the multiple sweeping robots can clean the multiple areas to be cleaned.
[0048] Optionally, the region allocation module is specifically used for:
[0049] According to the area allocation order, select an area to be cleaned as the target area;
[0050] Based on the remaining available energy, locate the available robotic vacuum cleaners corresponding to the target area;
[0051] The target area is assigned to each of the available robotic vacuum cleaners, generating a task assignment result;
[0052] Select the next target area, continue to allocate the target area based on each of the task allocation results, and update each of the task allocation results until all areas to be cleaned have been allocated.
[0053] Optionally, the region allocation module is specifically used for:
[0054] Based on the location of the target area and the location of each of the sweeping robots, calculate the distance each sweeping robot moves relative to the target area;
[0055] Based on the area of the target region, the moving distance, the preset energy consumption per unit distance and energy consumption per unit area for cleaning, and the remaining available energy, find the available robot vacuum cleaner corresponding to the target region;
[0056] After assigning the target area to each of the available robotic vacuum cleaners, the remaining available energy and machine location of each of the available robotic vacuum cleaners are updated.
[0057] Optionally, the region allocation module is specifically used for:
[0058] Calculate the shortest distance between the target area and all preset charging points;
[0059] Based on the area of the target region, the travel distance, the shortest path, the preset energy consumption per unit distance and energy consumption per unit area for cleaning, and the remaining available energy, find the available robot vacuum cleaner corresponding to the target region.
[0060] Optionally, the energy consumption per unit distance for movement includes energy consumption per unit distance for movement on flat ground and energy consumption per unit distance for movement on steps; the energy consumption per unit area for cleaning includes energy consumption per unit area for cleaning on flat ground and energy consumption per unit area for cleaning on steps.
[0061] Optionally, the device further includes a task timing module, used for:
[0062] Based on the task deadline of each of the areas to be cleaned, set the task start time for each area to be cleaned, and store the areas to be cleaned;
[0063] For the first region, determine whether a second region with a task start time earlier than the first region and a region spacing less than a preset threshold has been stored.
[0064] If so, adjust the task start time of the first region to the task start time of the second region;
[0065] When the task start time is reached, establish a sequence of all possible areas to be cleaned for all areas corresponding to the task start time.
[0066] Optionally, the task timing module is specifically used for:
[0067] Based on the task deadline time of each of the areas to be cleaned and the corresponding pedestrian density of each area, the task start time of each area to be cleaned is set.
[0068] Thirdly, embodiments of this application provide a central server, which includes a processor and a memory. The memory stores at least one instruction, at least one program, a code set, or an instruction set. The at least one instruction, the at least one program, the code set, or the instruction set is loaded and executed by the processor to implement the centrally controlled ground cleaning method as described in the first aspect.
[0069] Fourthly, embodiments of this application provide a computer-readable storage medium storing at least one instruction, at least one program, code set, or instruction set, wherein the at least one instruction, the at least one program, the code set, or the instruction set is loaded and executed by a processor to implement the centrally controlled ground cleaning method as described in the first aspect.
[0070] In summary, this application has the following beneficial effects:
[0071] The centrally controlled floor cleaning method disclosed in this application, when multiple areas need to be cleaned, first establishes an area allocation order, and then sequentially assigns the areas to available sweeping robots according to the allocation order, generating different task allocation results. Finally, a suitable task allocation result can be selected according to preset selection principles, thereby assigning the floor cleaning tasks of different areas to different sweeping robots. In this way, when cleaning multiple areas, the central server uniformly schedules and allocates, controlling multiple sweeping robots to clean multiple areas. The entire process requires no user intervention; the sweeping robots can autonomously complete the cleaning work of all areas according to the task allocation results, resulting in high floor cleaning efficiency and low energy and labor costs. Attached Figure Description
[0072] Figure 1 This is a schematic diagram of a central control architecture in an embodiment of this application;
[0073] Figure 2 This is a flowchart of a ground cleaning method based on central control, as described in an embodiment of this application.
[0074] Figure 3 This is a schematic diagram of a multi-area cleaning route in an embodiment of this application;
[0075] Figure 4 This is a flowchart illustrating the stair-climbing process for ascending stairs in this application embodiment;
[0076] Figure 5 This is a diagram illustrating the stair-climbing stages for ascending stairs in an embodiment of this application;
[0077] Figure 6 This is a flowchart illustrating the stair-climbing process for descending stairs in this application embodiment;
[0078] Figure 7 This is a diagram illustrating the climbing stages for descending stairs in an embodiment of this application;
[0079] Figure 8 This is a schematic diagram of the structure of the ground cleaning device based on central control in the embodiments of this application;
[0080] Figure 9 This is a schematic diagram of the structure of a ground cleaning device based on central control in an embodiment of this application. Detailed Implementation
[0081] To make the purpose, technical solution, and advantages of this application clearer, the following description is provided in conjunction with the appendix. Figure 1-9 The present application will be further described in detail below with reference to embodiments. It should be understood that the specific embodiments described herein are for illustrative purposes only and are not intended to limit the scope of the application.
[0082] This application provides a ground cleaning method based on centralized control. The execution entity of this method can be a central server, such as... Figure 1 As shown, the central server can serve as the control center for multiple robotic vacuum cleaners. Users can issue floor cleaning tasks for different areas to the central server, triggering the server to schedule the robotic vacuum cleaners and assign these tasks to specific robots. The robotic vacuum cleaners described above can be intelligent devices with floor cleaning capabilities, and may also possess auxiliary cleaning functions such as positioning, movement, and stair climbing. Furthermore, the robotic vacuum cleaners can have data receiving and processing capabilities to receive and execute floor cleaning tasks issued by the central server. These robotic vacuum cleaners can be applied in various indoor and outdoor scenarios such as homes, shopping malls, parks, and plazas; this embodiment does not limit the application scenarios.
[0083] The following will describe the specific implementation methods. Figure 2 The processing flow shown is explained in detail below:
[0084] Step 201: Receive the ground cleaning task, identify multiple areas to be cleaned, and establish a sequence of all possible area assignments for the multiple areas to be cleaned.
[0085] In implementation, taking a multi-story residential building as an example, the central server can be deployed by the building's property management personnel. The property management personnel can control a robotic vacuum cleaner to clean the floors of each floor through the central server. Before cleaning begins, the property management personnel can pre-load a topographic map of the multi-story residential building into the central server. This map records the internal terrain distribution of each floor and the staircase distribution between floors. When cleaning is required for a specific area of the multi-story residential building, the property management personnel can operate the central server to display the topographic map and mark one or more areas to be cleaned. After the property management personnel confirm the start of cleaning, the central server receives the cleaning task and identifies multiple areas to be cleaned based on the markings on the topographic map. Subsequently, the central server can establish all possible area allocation sequences for these multiple areas. For example, if there are three areas to be cleaned: area 1, area 2, and area 3, there can be six possible area allocation sequences: 1-2-3, 1-3-2, 2-1-3, 2-3-1, 3-1-2, and 3-2-1.
[0086] Optionally, to facilitate cross-area cleaning by the robot vacuum, a cleaning task integration mechanism can be set up. Accordingly, after receiving a floor cleaning task, the following processing can be performed: based on the task deadline of each area to be cleaned, set the task start time of each area to be cleaned and store the areas to be cleaned; for the first area, determine whether there is a second area whose task start time is earlier than the first area and whose area distance is less than a preset threshold; if so, adjust the task start time of the first area to the task start time of the second area.
[0087] In implementation, when property management personnel enter multiple floor cleaning tasks for various areas into the central server, they can set multiple task deadlines for each area, i.e., the latest time each area can be cleaned. Upon receiving a floor cleaning task, the central server can set a start time for each area based on its deadline and store the area in the task queue. Here, the task start time can be the time when the central server begins assigning the corresponding area, specifically a preset time before the deadline, such as one hour prior. Of course, the interval between the task start and deadline can be set by the property management personnel based on the actual cleaning situation. Next, for any area within the cleaning area, taking the first area as an example, the central server can determine if there is a second area in the task queue with a start time earlier than the first area and a distance between it and a preset threshold. It can be understood that a second area meeting this standard can be a neighboring area of the first area; therefore, the cleaning processes for the first and second areas are combined, allowing the robot vacuum cleaner to complete the cleaning of both areas with less energy consumption. Therefore, if a second region exists, the central server can adjust the task start time of the first region to the task start time of the second region, so that the allocation and processing of the first and second regions can be performed simultaneously when scheduling the robot vacuum cleaner to perform cleaning tasks.
[0088] Based on the above-mentioned setting of task start time for the areas to be cleaned, the central server can only establish the available area allocation order for all areas to be cleaned corresponding to the task start time when the task start time of one or more areas to be cleaned is reached, and then perform subsequent processing.
[0089] Optionally, the ground cleaning task can be performed at a time when the pedestrian density is relatively low. Accordingly, the aforementioned task start time setting can be adjusted. Specifically, the task start time for each area to be cleaned can be set according to the task deadline time of each area to be cleaned and the pedestrian density of each area.
[0090] In practice, the central server can record the pedestrian density in various areas of each multi-story residential building. For example, during weekday commuting hours, the pedestrian density is highest in the stairwells on lower floors and at the elevator entrances on higher floors. On weekends, the pedestrian density is also relatively high one hour before lunch. Thus, after determining the deadline for the areas to be cleaned, the central server sets the start time for each area based on the deadline and the corresponding pedestrian density, ensuring that each area is cleaned during periods of lower pedestrian density.
[0091] Step 202: Obtain the remaining available energy of multiple robotic vacuum cleaners in the adjustable state.
[0092] In implementation, before assigning cleaning areas to the robotic vacuum cleaners, the central server can first identify the robotic vacuum cleaners in an available state and then obtain their remaining available energy. Here, being in an available state can mean being in standby mode or charging mode. It's worth noting that for a robotic vacuum cleaner currently performing floor cleaning tasks, if it can complete all assigned floor cleaning tasks within a preset time, it can also be marked as being in an available state, and its remaining available energy after completing all assigned floor cleaning tasks can be obtained.
[0093] Step 203: According to the allocation order of each area, based on the remaining available energy, multiple areas to be cleaned are sequentially allocated to multiple sweeping robots to generate different task allocation results.
[0094] In implementation, after establishing the area allocation order and obtaining the remaining available energy of the robotic vacuum cleaners, the central server can sequentially allocate areas to be cleaned according to each area allocation order. Specifically, for any given area allocation order, the central server can sequentially allocate multiple areas to be cleaned to multiple robotic vacuum cleaners based on their remaining available energy, ensuring that each robotic vacuum cleaner's remaining available energy can support the cleaning of its assigned area. In this way, the central server can generate multiple task allocation results for each area allocation order.
[0095] Optionally, a cleaning area can be assigned to all available robotic vacuum cleaners to generate different task assignment results. Accordingly, the processing in step 203 can be as follows: select a cleaning area to be assigned as the target area according to the area assignment order; find the available robotic vacuum cleaners corresponding to the target area based on the remaining available energy; assign the target area to each available robotic vacuum cleaner to generate a task assignment result; select the next target area, continue to assign target areas based on each task assignment result, and update each task assignment result until all cleaning areas are assigned.
[0096] In implementation, when generating task allocation results for any given area allocation order, the central server can first select a target area to be cleaned according to the area allocation order. Then, it can search for all available robotic vacuum cleaners with sufficient remaining energy to cover the target area. Next, the central server can allocate the target area to each available robotic vacuum cleaner, generating multiple stages of task allocation results. Following this, the central server can select the next target area according to the area allocation order, and based on each generated task allocation result, continue allocating the target area to each available robotic vacuum cleaner, updating each stage of the task allocation result, until all areas to be cleaned have been allocated, generating the final task allocation result.
[0097] For example, there are three areas: 1, 2, and 3, and four robot vacuums A, B, C, and D that are available for use. The area allocation order is 1-2-3. If area 1 is allocated first, and the available robot vacuums include A and D, then there are two possible task allocation results: A1-BCD and ABC-D1.
[0098] Based on A1-BCD, if area 2 is further allocated and the available robot vacuums include A and B, then there are two possible task allocation results: A12-BCD and A1-B2-CD. Similarly, if area 2 is further allocated based on ABC-D1 and the available robot vacuums include A and B, then there are two possible task allocation results: A2-BC-D1 and A-B2-C-D1.
[0099] Based on A12-BCD, further allocating area 3, with available robot vacuums including C and D, results in two possible task allocations: A12-B-C3-D and A12-BC-D3. Similarly, based on A1-B2-CD, further allocating area 3, with available robot vacuums including C and D, results in two possible task allocations: A1-B2-C3-D and A1-B2-C-D3. Based on A2-BC-D1, further allocating area 3, with available robot vacuums including C, results in one possible task allocation: A2-B-C3-D1. Finally, based on A-B2-C-D1, further allocating area 3, with available robot vacuums including C, results in one possible task allocation: A-B2-C3-D1.
[0100] At this point, regions 1-3 are fully allocated, and the central server can generate six task allocation results: A12-B-C3-D, A12-BC-D3, A1-B2-C3-D, A1-B2-C-D3, A2-B-C3-D1, and A-B2-C3-D1.
[0101] Optionally, the available robotic vacuum cleaners for each area can be found by comprehensively evaluating the mobile energy consumption and cleaning energy consumption of the robotic vacuum cleaners. The specific processing can be as follows: calculate the moving distance of each robotic vacuum cleaner from the target area based on the location of the target area and the machine position of each robotic vacuum cleaner; find the available robotic vacuum cleaners for the target area based on the area of the target area, the moving distance, the preset mobile energy consumption per unit distance and the cleaning energy consumption per unit area, and the remaining available energy.
[0102] In implementation, when locating available robotic vacuum cleaners for a target area, the central server first obtains the location of the target area and the location of each robotic vacuum cleaner in a movable state. Then, based on the aforementioned terrain map, it plans the movement route of each robotic vacuum cleaner to the target area to calculate the movement distance. Afterward, the central server, combined with a preset energy consumption per unit distance, calculates the energy consumption required for each robotic vacuum cleaner to move to the target area. Simultaneously, the central server, combining the area of the target area and a preset cleaning energy consumption per unit area, calculates the cleaning energy consumption required for the target area. Thus, the central server can find available robotic vacuum cleaners for the target area by comparing the sum of the movement energy consumption and the cleaning energy consumption with the remaining available energy of each robotic vacuum cleaner. Here, the energy consumption per unit distance for movement and the energy consumption per unit area for cleaning can be obtained by the central server after compiling and analyzing historical energy consumption data of the robot vacuum cleaner during actual movement and cleaning in the same application scenario. In addition, different energy consumption per unit distance for movement or cleaning area can be set for different terrains (such as ground material, ground slope, etc.), so that the energy consumption required for movement and cleaning can be calculated more accurately.
[0103] Furthermore, based on the above-mentioned energy consumption statistics process, after allocating the target area to available robotic vacuum cleaners, the remaining available energy and machine position of the allocated available robotic vacuum cleaners can be updated. That is, the energy consumption required for movement and cleaning corresponding to the target area is subtracted from the original remaining available energy, and the machine position is updated to the location of the robotic vacuum cleaner after cleaning the target area is completed.
[0104] Optionally, when searching for available robot vacuums, the location of charging points can be considered simultaneously. The specific processing can be as follows: calculate the shortest distance between the target area and all preset charging points; based on the area of the target area, the travel distance, the shortest distance, the preset energy consumption per unit distance and the cleaning energy consumption per unit area, and the remaining available energy, find the available robot vacuums corresponding to the target area.
[0105] In practice, it can be set that the robot vacuum cleaner will automatically move to the charging point to recharge after completing the floor cleaning task. Therefore, when allocating robot vacuum cleaners for cleaning target areas, the shortest distance from the target area to all preset charging points can be calculated first. Then, based on the preset energy consumption per unit distance and the shortest distance, the energy required for the return trip after cleaning the target area can be calculated. Combining the energy consumption required for movement and the energy consumption required for cleaning obtained above, the available robot vacuum cleaners with the energy to clean the target area and successfully return to the charging point can be found.
[0106] It's easy to understand that when searching for available robot vacuums, an additional set of emergency energy can be preset in addition to the energy consumption required for movement, cleaning, and return. This emergency energy is used to cover extra energy consumption during movement or cleaning, to cope with various situations such as obstacle avoidance, getting stuck, speed changes, and turning. Of course, instead of calculating the energy required for the return trip, the central server can also reserve a set amount of energy for the robot vacuum's return to the charging point, such as reserving 10% of the battery or 5 kWh, instead of calculating the specific energy consumption required for the robot vacuum to return to the charging point separately.
[0107] Furthermore, for application scenarios such as multi-story residential buildings, where the robotic vacuum cleaner has the ability to climb stairs, considering the significant difference in energy consumption between moving on flat ground and climbing stairs, different energy consumption per unit distance for movement and per unit area for cleaning can be set separately for flat ground and stairs. That is, the energy consumption per unit distance for movement can include both the energy consumption per unit distance for moving on flat ground and the energy consumption per unit distance for moving on stairs; the energy consumption per unit area for cleaning can also include both the energy consumption per unit area for cleaning on flat ground and the energy consumption per unit area for cleaning on stairs. In this way, when searching for available robotic vacuum cleaners for a target area, the central server can calculate the energy consumption required for movement and the energy consumption required for cleaning for flat ground and stairs respectively, in order to more accurately select the robotic vacuum cleaner that meets the requirements.
[0108] Step 204: Select the target task allocation result from all task allocation results corresponding to all regional allocation sequences according to the preset selection principle.
[0109] In implementation, after generating different task allocation results under different regional allocation sequences, the central server can select a task allocation result from all the results based on preset selection principles, i.e., the target task allocation result. These preset selection principles can be set by property management personnel in the central server for floor cleaning tasks according to actual needs. These principles can be based on minimum energy consumption, minimum time consumption, or minimum equipment usage, etc. Of course, preset selection principles can also be composite selection principles generated by combining multiple indicators, such as considering both energy consumption and time consumption. Furthermore, preset selection principles can be a holistic principle applied to multiple areas to be cleaned, or a combination of multiple specific principles for each area to be cleaned.
[0110] Step 205: Assign floor cleaning tasks based on the target task allocation results, so that multiple sweeping robots can clean multiple areas to be cleaned.
[0111] In implementation, after selecting the target task allocation result, the central server can assign cleaning tasks for multiple areas to be cleaned to multiple robotic vacuum cleaners based on the target task allocation result. Thus, each robotic vacuum cleaner, upon receiving a cleaning task for one or more areas, can begin cleaning those areas. It should be noted that each task allocation result is generated based on a specific area allocation order; therefore, for a robotic vacuum cleaner assigned multiple areas to be cleaned, the cleaning order of these areas is predetermined, allowing the robotic vacuum cleaner to sequentially perform cleaning operations on the multiple areas according to this predetermined order.
[0112] It's worth noting that, in addition to charging, the robot vacuum cleaner also supports manual battery replacement. This means that when the robot vacuum cleaner detects that its remaining battery power has reached a preset warning threshold, it can proactively send a low-energy message to the central server. The central server can then send a battery replacement request to a specific worker, including the robot's location, allowing the worker to go to the robot to replace the battery. Based on this setting, in steps 201-205, the remaining available energy of the robot vacuum cleaner supporting battery replacement can be set to unlimited, but the average time required for manual battery replacement needs to be considered when selecting task allocation results. Of course, property management personnel can set which robot vacuum cleaners require self-charging and which do not. When allocating floor cleaning tasks, the central server can allocate remaining available energy for these two types of robot vacuum cleaners separately; those requiring self-charging need to reserve the energy required for the return trip, while those not requiring self-charging do not need to reserve the energy required for the return trip.
[0113] Furthermore, the robotic vacuum cleaner can also store the topographic map of the aforementioned multi-story residential building, and after being assigned cleaning areas, it can determine the location of each cleaning area based on this map. Thus, the robotic vacuum cleaner can plan a task execution route starting from its current location and connecting all assigned cleaning areas. Here, the current location can be obtained by the robotic vacuum cleaner using indoor positioning technology; this embodiment does not limit the indoor positioning technology. Considering that the movement within the cleaning area will affect the overall task execution route, for each cleaning area, the robotic vacuum cleaner can subdivide the entire area, dividing it into a large number of closely adjacent rectangular units. Therefore, movement within the cleaning area can be equivalent to movement between multiple rectangular units. Next, the robotic vacuum cleaner can identify the entrance and exit rectangular units of each cleaning area and plan the shortest task execution route starting from its current location and connecting all entrance and exit rectangular units of the cleaning areas. It's worth noting that the area to be cleaned can contain multiple different entrance and exit rectangular units. The entrance and exit rectangular units of the area to be cleaned can be the same unit or different units. In an open area to be cleaned, theoretically, there can be a large number of entrance and exit rectangular units along the area's edge. Therefore, the selectable entrance and exit rectangular units for the area to be cleaned can be determined based on the distribution of the areas to be cleaned before and after the task execution path. The above scenario can be referenced. Figure 3 The content shown includes four areas: area 1-4. Area 1 contains one entrance / exit rectangular unit, area 2 contains two entrance / exit rectangular units, area 3 is an open area containing multiple entrance / exit rectangular units, and area 4 contains one entrance / exit rectangular unit.
[0114] Optionally, the robotic vacuum cleaner can consist of three independently driven parts: a front section, a middle section, and a rear section. Each of these three sections can be raised and lowered independently. Distance sensors are installed on the bottom surfaces of each section to detect the distance between their respective bottom surfaces and the ground. Based on this design, the robotic vacuum cleaner can achieve the aforementioned stair-climbing function. The execution process is described below for both going up and down stairs:
[0115] Firstly, for each upward step in the stair-climbing path, the robot vacuum cleaner can handle it as follows: Figure 4 The process is as follows:
[0116] Step 401: The robot vacuum cleaner drives the front part to lift and moves forward so that the front part lands on the step.
[0117] In practice, while performing floor cleaning tasks, the robotic vacuum cleaner can acquire real-time images of its path using a front-mounted camera to determine if there are any upward-moving steps ahead. When an upward-moving step is detected, and the horizontal distance between the robot and the edge of the step is less than a preset threshold, the robot can lift its front section and move forward until it lands on the step. Specifically, the robot can first lift its front section to its highest point, then move forward a preset distance, and then lower its front section to land on the step. Furthermore, a distance sensor can be installed on the bottom surface of the robot's front section. During the lowering process, the distance sensor can detect the vertical distance between the bottom surface of the front section and the step. When the vertical distance reaches a specified threshold, it can be assumed that the front section has landed on the step.
[0118] Step 402: The robot vacuum cleaner drives the bottom of the middle section to be level with the bottom of the front section, and moves forward so that the middle section lands on the step.
[0119] In practice, after the front of the robot vacuum lands on the step, it can continue to lift the bottom of the middle section until it is level with the bottom of the front section. Then, the robot vacuum can move forward a preset distance to place the middle section on the step. It can be seen that when lifting the middle section, the already lifted height of the front section can be used as a reference, or the middle section can be lifted in the same way as the front section.
[0120] Step 403: The robot vacuum cleaner drives the rear bottom surface to be level with the middle bottom surface and moves forward so that the rear lands on the step.
[0121] In practice, after the middle section of the robot vacuum lands on the step, it can continue to lift the rear section in the same manner, so that the bottom surface of the rear section is on the same horizontal plane as the bottom surface of the middle section. Then, the robot vacuum can move forward another preset distance so that the rear section lands on the step. At this point, the robot vacuum has completed the process of climbing a set of stairs on a first floor.
[0122] The above process can also be referred to Figure 5 As shown, the process of climbing an upward staircase can be divided into 7 stages, corresponding to the descriptions of steps 401-403 above.
[0123] Secondly, for each descending step in the stair-climbing path, the robot vacuum cleaner can handle it as follows: Figure 6 The process is as follows:
[0124] Step 601: After the robot vacuum moves forward and its front part is completely suspended in the air, it drives the front part to lower and land on the step.
[0125] In practice, during floor cleaning, the robotic vacuum cleaner uses a front-mounted camera to capture real-time images of the path ahead to determine if there are any downward steps. When a downward step is detected and the front edge of the robot is suspended in the air, the robot can slowly move forward until its front is completely suspended, then lower itself to land on the step. Specifically, a distance sensor can be installed on the leading edge of the robot's front bottom surface. When the distance sensor detects a distance greater than a preset threshold, it indicates that the front edge of the robot is suspended, and it can then move forward a preset distance to achieve a completely suspended state. Alternatively, a distance sensor can be installed on the rear edge of the robot's front bottom surface. When the distance sensor detects a distance greater than a preset threshold, it also indicates that the front is completely suspended. During the descent, the distance sensor detects the vertical distance between the front bottom surface and the step; when the vertical distance reaches a specified threshold, it can be assumed that the front has landed on the step.
[0126] Step 602: The robot vacuum continues to move forward until the middle section is completely suspended in the air, then drives the middle section to lower and land on the step.
[0127] In practice, after the front of the robot vacuum touches the step, it can continue moving forward until the middle section is completely suspended in the air. The method for determining if the middle section is completely suspended is the same as the method described above, and therefore will not be repeated. Next, the robot vacuum can lower the middle section so that it touches the step. It's easy to understand that when lowering the middle section, it can use the already lowered height of the front section as a reference, or it can lower the middle section in the same way as the front section.
[0128] Step 603: The robot vacuum continues to move forward until its rear is completely suspended in the air, then drives the rear to lower and land on the step.
[0129] In practice, after the middle section of the robot vacuum touches the step, it can continue moving forward to allow the rear section to enter a completely suspended state. Then, it can further drive the rear section to lower, bringing it back onto the step. The process of lowering the rear section is similar to the process of lowering the middle section, and will not be described in detail here. At this point, the robot vacuum has completed its task of climbing a single-story staircase.
[0130] The above process can also be referred to Figure 7 As shown, the climbing process of a descending staircase can be divided into 7 stages, corresponding to the descriptions of steps 601-603 above.
[0131] It is worth mentioning that when the width of the left and right sides of the robot vacuum is greater than the depth of the step, the front and rear of the robot vacuum can simultaneously perform different steps climbing operations.
[0132] In addition, the front, middle, and rear sections of the robot vacuum cleaner can be set according to the direction of travel, or the robot vacuum cleaner can be set to include one, two, and three sections from front to back. When moving forward, one section is the front, two sections are the middle, and three sections are the rear. When moving backward, three sections are the front, two sections are the middle, and one section is the rear.
[0133] Optionally, based on the structure where distance measuring sensors are set on the bottom surface of the front, middle and rear, the robot vacuum cleaner can stabilize the stair climbing process by measuring the height of the front part raised or lowered. The corresponding processing is as follows: During the stair climbing process, the robot vacuum cleaner records the height of the steps that have been climbed; if the height of the front part raised or lowered is inconsistent with the height of the step, the robot vacuum cleaner will move a preset distance along the edge of the step and then drive the front part again to make the front part land on the step.
[0134] In practice, while climbing stairs, the robotic vacuum cleaner can record the height of each step. This height can be the average height of steps climbed within a preset historical period, or the average height of the two most recently climbed steps. During each step, the robot records the height at which its front end rises or falls before the step and determines if this height matches the previously recorded height. Under normal circumstances, the height of multiple steps on the same staircase is generally consistent. Therefore, if the height at which the front end rises or falls does not match the recorded height, it likely indicates that the front end has landed on an obstacle on the step. In this case, the robot can move a preset distance along the edge of the step and then re-drive its front end to land on the step until the height at which it rises or falls matches the recorded height. In addition, considering that the height of the steps on the same staircase may be inconsistent in some cases, the robot vacuum cleaner can attempt to climb the stairs at three points: the leftmost, middle, and rightmost points. If it finds that the height of the front part of the robot is inconsistent with the height of the step at all three points, and the height of the front part of the robot is consistent at all three points, then it can proceed with the subsequent stair climbing process.
[0135] Optionally, the robot vacuum cleaner can simultaneously clean the steps during the aforementioned stair-climbing process. The corresponding processing can be as follows: If the step is within the area to be cleaned, the robot vacuum cleaner determines the cleaning coverage width relative to the step during the stair-climbing process; when the cleaning coverage width reaches the step depth or the maximum cleaning coverage width, the robot vacuum cleaner moves along the edge of the step to clean the step; if the step depth is greater than the maximum cleaning coverage width, the robot vacuum cleaner formulates a step cleaning route based on the step depth and the maximum cleaning coverage width; the robot vacuum cleaner cleans the step based on the step cleaning route.
[0136] In practice, if a section of stairs is an area to be cleaned, the robotic vacuum cleaner can clean the steps simultaneously while climbing the stairs. Specifically, when climbing a step, the robotic vacuum cleaner can detect its cleaning coverage width relative to the step in real time. This cleaning coverage width is the width covered by the robotic vacuum cleaner in one movement. Similarly, the maximum cleaning coverage width is the maximum width that the robotic vacuum cleaner can cover in one movement. If the maximum cleaning coverage width is greater than or equal to the step depth, then when the cleaning coverage width reaches the step depth, the entire surface of the step can be cleaned during one translation of the robotic vacuum cleaner. Therefore, the robotic vacuum cleaner can translate along the edge of the step to begin cleaning. If the maximum cleaning coverage width is less than the step depth, the robotic vacuum cleaner can specify the cleaning route based on the step width and the maximum cleaning coverage width. For example, if the maximum cleaning coverage width is less than the step depth but greater than half the step depth, the robot vacuum can clean the entire step surface in two translational movements. Therefore, the cleaning route can be specified as moving from the left edge to the right edge, advancing a specified distance, and then moving back to the left edge. If the maximum cleaning coverage width is less than half the step depth but greater than one-third of the step depth, the robot vacuum needs three translational movements to clean the entire step surface. The cleaning route can then be specified as moving from the left edge to the right edge, advancing a specified distance, moving back to the left edge, advancing another specified distance, and then moving to the right edge. In this way, the robot vacuum can clean the steps based on the pre-defined cleaning route. It can be understood that for steps that require both climbing and cleaning, the robot vacuum can prioritize climbing, and only perform the cleaning process after reaching the maximum cleaning coverage width or the step depth. This way, the cleaning and climbing actions do not interfere with each other.
[0137] The centrally controlled floor cleaning method disclosed in this application, when multiple areas need to be cleaned, first establishes an area allocation order, and then sequentially assigns the areas to available sweeping robots according to the allocation order, generating different task allocation results. Finally, a suitable task allocation result can be selected according to preset selection principles, thereby assigning the floor cleaning tasks of different areas to different sweeping robots. In this way, when cleaning multiple areas, the central server uniformly schedules and allocates, controlling multiple sweeping robots to clean multiple areas. The entire process requires no user intervention; the sweeping robots can autonomously complete the cleaning work of all areas according to the task allocation results, resulting in high floor cleaning efficiency and low energy and labor costs.
[0138] Based on the same technological concept, such as Figure 8As shown in the figure, this application embodiment provides a floor cleaning device based on central control, the device comprising:
[0139] The task receiving module 801 is used to receive ground cleaning tasks, determine multiple areas to be cleaned, and establish a possible area allocation order for all multiple areas to be cleaned.
[0140] The energy statistics module 802 is used to obtain the remaining available energy of multiple sweeping robots in an adjustable state;
[0141] The area allocation module 803 is used to sequentially allocate the multiple areas to be cleaned to the multiple sweeping robots according to the remaining available energy, based on the area allocation order, and generate different task allocation results;
[0142] The result filtering module 804 is used to select the target task allocation result from all task allocation results corresponding to all regional allocation sequences according to a preset selection principle.
[0143] The task distribution module 805 is used to assign the ground cleaning task based on the target task allocation result, so that the multiple sweeping robots can clean the multiple areas to be cleaned.
[0144] Optionally, the region allocation module 803 is specifically used for:
[0145] According to the area allocation order, select an area to be cleaned as the target area;
[0146] Based on the remaining available energy, locate the available robotic vacuum cleaners corresponding to the target area;
[0147] The target area is assigned to each of the available robotic vacuum cleaners, generating a task assignment result;
[0148] Select the next target area, continue to allocate the target area based on each of the task allocation results, and update each of the task allocation results until all areas to be cleaned have been allocated.
[0149] Optionally, the region allocation module 803 is specifically used for:
[0150] Based on the location of the target area and the location of each of the sweeping robots, calculate the distance each sweeping robot moves relative to the target area;
[0151] Based on the area of the target region, the moving distance, the preset energy consumption per unit distance and energy consumption per unit area for cleaning, and the remaining available energy, find the available robot vacuum cleaner corresponding to the target region;
[0152] After assigning the target area to each of the available robotic vacuum cleaners, the remaining available energy and machine location of each of the available robotic vacuum cleaners are updated.
[0153] Optionally, the region allocation module 803 is specifically used for:
[0154] Calculate the shortest distance between the target area and all preset charging points;
[0155] Based on the area of the target region, the travel distance, the shortest path, the preset energy consumption per unit distance and energy consumption per unit area for cleaning, and the remaining available energy, find the available robot vacuum cleaner corresponding to the target region.
[0156] Optionally, the energy consumption per unit distance for movement includes energy consumption per unit distance for movement on flat ground and energy consumption per unit distance for movement on steps; the energy consumption per unit area for cleaning includes energy consumption per unit area for cleaning on flat ground and energy consumption per unit area for cleaning on steps.
[0157] Optional, such as Figure 9 As shown, the device also includes a task timing module 806, used for:
[0158] Based on the task deadline of each of the areas to be cleaned, set the task start time for each area to be cleaned, and store the areas to be cleaned;
[0159] For the first region, determine whether a second region with a task start time earlier than the first region and a region spacing less than a preset threshold has been stored.
[0160] If so, adjust the task start time of the first region to the task start time of the second region;
[0161] When the task start time is reached, establish a sequence of all possible areas to be cleaned for all areas corresponding to the task start time.
[0162] Optionally, the task timing module 806 is specifically used for:
[0163] Based on the task deadline time of each of the areas to be cleaned and the corresponding pedestrian density of each area, the task start time of each area to be cleaned is set.
[0164] This application embodiment also provides a central server, which includes a processor and a memory. The memory stores at least one instruction, at least one program, a code set, or an instruction set. The at least one instruction, the at least one program, the code set, or the instruction set is loaded and executed by the processor to implement the centrally controlled ground cleaning method as described in steps 201-205.
[0165] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.
[0166] The above are all preferred embodiments of this application and are not intended to limit the scope of protection of this application. Any feature disclosed in this specification (including the abstract and drawings) may be replaced by other equivalent or similar features unless specifically stated otherwise. That is, unless specifically stated otherwise, each feature is only one example of a series of equivalent or similar features.
Claims
1. A ground cleaning method based on central control, characterized in that, The method includes: Receive a ground cleaning task, identify multiple areas to be cleaned, and establish a possible area allocation order for all multiple areas to be cleaned. Based on the task deadline of each of the areas to be cleaned, set the task start time of each area to be cleaned and store the areas to be cleaned; for the first area, determine whether there is a second area whose task start time is earlier than the first area and whose area spacing is less than a preset threshold. If so, adjust the task start time of the first region to the task start time of the second region; The process of establishing all possible area allocation orders for the multiple areas to be cleaned includes: When the task start time is reached, establish the possible area allocation order for all areas to be cleaned corresponding to the task start time; Obtain the remaining available energy of multiple robotic vacuum cleaners that are in an adjustable state; According to the allocation order of each area, the remaining available energy is used to sequentially allocate the multiple areas to be cleaned to the multiple sweeping robots, generating different task allocation results; The target task allocation result is selected from all task allocation results corresponding to all regional allocation sequences according to the preset selection principle. The ground cleaning task is assigned based on the target task allocation result, so that the multiple sweeping robots can clean the multiple areas to be cleaned.
2. The method according to claim 1, characterized in that, The process involves allocating multiple cleaning areas to the multiple robotic vacuum cleaners sequentially according to the remaining available energy, based on the assigned order of each area, thereby generating different task allocation results, including: According to the area allocation order, select an area to be cleaned as the target area; Based on the remaining available energy, locate the available robotic vacuum cleaners corresponding to the target area; The target area is assigned to each of the available robotic vacuum cleaners, generating a task assignment result; Select the next target area, continue to allocate the target area based on each of the task allocation results, and update each of the task allocation results until all areas to be cleaned have been allocated.
3. The method according to claim 2, characterized in that, The step of finding available robotic vacuum cleaners for the target area based on the remaining available energy includes: Based on the location of the target area and the location of each of the sweeping robots, calculate the distance each sweeping robot moves relative to the target area; Based on the area of the target region, the moving distance, the preset energy consumption per unit distance and energy consumption per unit area for cleaning, and the remaining available energy, find the available robot vacuum cleaner corresponding to the target region; After assigning the target area to each of the available robotic vacuum cleaners, the process further includes: Update the remaining available energy and machine location for each of the available robotic vacuum cleaners.
4. The method according to claim 3, characterized in that, The step of finding an available robotic vacuum cleaner corresponding to the target area based on the area of the target area, the moving distance, preset energy consumption per unit distance and energy consumption per unit area for cleaning, and the remaining available energy includes: Calculate the shortest distance between the target area and all preset charging points; Based on the area of the target region, the travel distance, the shortest path, the preset energy consumption per unit distance and energy consumption per unit area for cleaning, and the remaining available energy, find the available robot vacuum cleaner corresponding to the target region.
5. The method according to claim 3 or 4, characterized in that, The energy consumption per unit distance for movement includes energy consumption per unit distance for movement on flat ground and energy consumption per unit distance for movement on steps; the energy consumption per unit area for cleaning includes energy consumption per unit area for cleaning on flat ground and energy consumption per unit area for cleaning on steps.
6. The method according to claim 1, characterized in that, The step of setting the task start time for each area to be cleaned based on the task deadline for each area to be cleaned includes: Based on the task deadline time of each of the areas to be cleaned and the corresponding pedestrian density of each area, the task start time of each area to be cleaned is set.
7. A centrally controlled floor cleaning device, characterized in that, The device includes: The task receiving module is used to receive ground cleaning tasks, identify multiple areas to be cleaned, and establish a possible area allocation order for all multiple areas to be cleaned. The energy statistics module is used to obtain the remaining available energy of multiple robotic vacuum cleaners in an adjustable state; The area allocation module is used to sequentially allocate the multiple areas to be cleaned to the multiple sweeping robots according to the remaining available energy, based on the area allocation order, and generate different task allocation results; The result filtering module is used to select the target task allocation result from all task allocation results corresponding to all regional allocation order according to preset selection principles. The task distribution module is used to assign the ground cleaning task based on the target task allocation result, so that the multiple sweeping robots can clean the multiple areas to be cleaned; The device is further configured to perform the following steps: setting a task start time for each area to be cleaned according to the task deadline time of each area to be cleaned, and storing the areas to be cleaned; for a first area, determining whether a second area with a task start time earlier than the first area and an area spacing less than a preset threshold has already been stored; if so, adjusting the task start time of the first area to the task start time of the second area; establishing all possible area allocation orders for the plurality of areas to be cleaned includes: when the task start time is reached, establishing all possible area allocation orders for all areas to be cleaned corresponding to the task start time.
8. A central server, characterized in that, The central server includes a processor and a memory, the memory storing at least one instruction, at least one program, code set, or instruction set, the at least one instruction, the at least one program, the code set, or instruction set being loaded and executed by the processor to implement the centrally controlled ground cleaning method as described in any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that, The storage medium stores at least one instruction, at least one program, code set, or instruction set, wherein the at least one instruction, the at least one program, the code set, or instruction set is loaded and executed by a processor to implement the centrally controlled ground cleaning method as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Dispatching method and device for cleaning robot
CN105892321A
Sweeping method and device based on sweeping robot, electronic equipment and storage medium
CN111493749A