Processing method and device for robot operation area coverage condition

By determining the loop of the work area in the target map and setting different grid values, the problem of being unable to count the number of coverages in the same area in the prior art is solved, and real-time statistics of the number of coverages and coverage rates of the robot work area are realized.

CN120595791AActive Publication Date: 2025-09-05FIBOCOM WIRELESS
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202510643423.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-16
Publication Date
2025-09-05
Estimated Expiration
2045-05-16

AI Technical Summary

Technical Problem

In the prior art, only the coverage rate during the robot's task execution can be counted, and the number of coverages for the same area cannot be counted.

Method used

The edge of the work area is obtained by determining the loop of the work area in the target map based on the edge truth value, and expanding the loop in the target map based on the width of the robot, setting different values ​​in the grids within and outside the edge, and then replaying the robot's coverage data in the work area to determine the coverage of the work area.

Benefits of technology

It realizes simulation of the robot's working area and operation trajectory, can count the number of coverages and coverage rates in real time, and provides more comprehensive coverage data support.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120595791A_ABST
    Figure CN120595791A_ABST
Patent Text Reader

Abstract

The invention relates to a method and device for processing the coverage condition of a robot operation area, and the method comprises the steps: determining a loop of the operation area in a target map based on an edge truth value, and carrying out the expansion of the loop in the target map based on the width of a robot, and obtaining the edge of the operation area; setting different values in the grids inside and outside the edge respectively; the coverage data of the robot is replayed in the operation area, the coverage condition of the operation area is determined based on the current value in the grid in the operation area, and the coverage data comprises the track of the robot executing the task in the operation area and the value used for representing the number of times that the robot passes through the current grid in the task executing process; the coverage condition comprises the number of coverage times of grids in the operation area and the coverage rate of the operation area. By means of the method and device, the technical problem that in the prior art, only the coverage rate of the robot in the task execution process can be counted, and the number of coverage times of the same area cannot be counted is solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of robotics technology, and in particular to a method and device for processing coverage of a robot's operating area. Background Art

[0002] The existing method for determining robot coverage during a task is to fix coordinates, use a fixed imaging device to capture the robot's position changes, convert them into robot trajectories, and then calculate the robot's coverage. This method can only determine the robot's coverage rate during a task, but cannot count the number of times the robot has covered the same area.

[0003] There is currently no effective solution to the above-mentioned technical problems in related technologies. Summary of the Invention

[0004] The present application provides a method and device for processing the coverage of a robot's operating area, in order to solve the technical problem in the prior art that only the coverage rate of the robot during the execution of a task can be counted, but the number of times the robot covers the same area cannot be counted.

[0005] In the first aspect, the present application provides a method for processing the coverage of a robot's working area, comprising: determining a loop of the working area in a target map based on an edge true value, and expanding the loop in the target map based on the width of the robot to obtain the edge of the working area, wherein the edge true value includes real-time dynamic data generated by the robot running along the edge of the target map; setting different values ​​in the grids inside and outside the edge respectively; replaying the coverage data of the robot in the working area, and determining the coverage of the working area based on the current value in the grid in the working area, wherein the coverage data includes the trajectory of the robot performing the task in the working area and a value used to characterize the number of times the robot passes through the current grid during the execution of the task, and the coverage status includes the number of times the grids in the working area are covered and the coverage rate of the working area.

[0006] In the second aspect, the present application provides a processing device for the coverage status of a robot's working area, comprising: a first processing module, for determining a loop of the working area in a target map based on an edge true value, and expanding the loop in the target map based on the width of the robot to obtain the edge of the working area, wherein the edge true value includes real-time dynamic data generated by the robot running along the edge of the target map; a setting module, for setting different values ​​in the grids inside and outside the edge respectively; a second processing module, for replaying the coverage data of the robot in the working area, and determining the coverage status of the working area based on the current value in the grid in the working area, wherein the coverage data includes the trajectory of the robot performing the task in the working area and a value used to characterize the number of times the robot passes through the current grid during the execution of the task, and the coverage status includes the number of times the grids in the working area are covered and the coverage rate of the working area.

[0007] In a third aspect, the present application provides an electronic device comprising: at least one communication interface; at least one bus connected to the at least one communication interface; at least one processor connected to the at least one bus; and at least one memory connected to the at least one bus, wherein the processor is configured to execute the method for processing the robot working area coverage situation described in the first aspect of the present application.

[0008] In a fourth aspect, the present application further provides a computer storage medium storing computer executable instructions, wherein the computer executable instructions are used to execute the method for processing the robot operation area coverage situation described in the first aspect of the present application.

[0009] The above technical solution provided by the embodiment of the present application has the following advantages over the prior art: the method provided by the embodiment of the present application determines the loop of the working area in the target map based on the true value of the edge, and expands the loop in the target map based on the width of the robot to obtain the edge of the working area, and then sets different values ​​in the grids inside and outside the edge respectively; finally, the coverage data of the robot is replayed in the working area, and the coverage of the working area is determined based on the current value in the grid in the working area. It can be seen that in the embodiment of the present application, after simulating the working area and working trajectory of the robot, by replaying the coverage data, the coverage rate of the working area and the number of grid coverages after one or more operations can be determined based on the values ​​in the grid, thereby providing more comprehensive data support for the coverage situation, solving the technical problem in the prior art that only the coverage rate of the robot during the execution of the task can be counted, but the number of coverage times for the same area cannot be counted. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.

[0011] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0012] One or more embodiments are exemplarily illustrated by pictures in the corresponding drawings. These exemplifications do not constitute limitations on the embodiments. Elements with the same reference numerals in the drawings are represented as similar elements. Unless otherwise stated, the figures in the drawings do not constitute proportional limitations.

[0013] Figure 1 A flowchart of a method for processing robot operation area coverage provided in an embodiment of the present application;

[0014] Figure 2 An optional flowchart of a method for processing robot operation area coverage provided in an embodiment of the present application;

[0015] Figure 3 This is a flowchart of the coverage rate statistics method of the coverage task robot provided in the specific implementation manner of this application;

[0016] Figure 4 A schematic diagram of a statistical simulation of the coverage rate of a coverage task robot provided in an embodiment of the present application;

[0017] Figure 5 A schematic diagram of the structure of a device for processing robot operation area coverage provided in an embodiment of the present application;

[0018] Figure 6 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0019] To make the purpose, technical solutions, and advantages of the embodiments of this application more clear, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the described embodiments are part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0020] The disclosure below provides many different embodiments or examples for implementing different configurations of the present invention. To simplify the disclosure of the present invention, the components and configurations of specific examples are described below. Of course, these are merely examples and are not intended to limit the present invention. In addition, the present invention may repeat reference numerals and / or letters in different examples. Such repetition is for the purpose of simplicity and clarity and does not in itself indicate the relationship between the various embodiments and / or configurations discussed.

[0021] In order to solve the technical problem that the existing technology can only count the coverage rate of the robot during the execution of the task, but cannot count the number of times the robot covers the same area, this application provides a method for processing the coverage of the robot's operating area, such as Figure 1 As shown, the steps of the method include:

[0022] Step 101: Determine a loop of the work area in the target map based on the edge truth, and expand the loop in the target map based on the width of the robot to obtain the edge of the work area, wherein the edge truth includes real-time dynamic data generated by the robot moving along the edge of the target map;

[0023] The target map in the embodiment of the present application is a simulation map corresponding to the area where the robot actually needs to operate, and the edge truth value is the real-time dynamic data generated by the robot running along the edge of the area where the robot actually needs to operate. Therefore, determining the loop of the operating area in the target map based on the edge truth value means simulating the real-time dynamic data into the target map to determine the loop running along the edge of the target map, and the area surrounded by the loop is the robot's operating area in the target map. Since the robot itself has a certain width, in order to determine the operating area in the target map that is more consistent with the actual operating area, it is necessary to expand the loop in the target map, and the expanded edge matches the edge of the actual operating area.

[0024] Step 102, setting different values ​​in the grid inside the edge and outside the edge respectively;

[0025] In the embodiment of the present application, since the target map is divided into multiple grids, after simulating the edge, the corresponding value can be set in the grid to distinguish whether the grid is inside or outside the edge; that is, different values ​​can be used to distinguish the robot's working area and non-working area.

[0026] Step 103: replay the robot's coverage data in the working area, and determine the coverage of the working area based on the current value in the grid in the working area, wherein the coverage data includes the trajectory of the robot performing the task in the working area and the value used to characterize the number of times the robot passes through the current grid during the execution of the task, and the coverage includes the number of times the grid in the working area is covered and the coverage rate of the working area.

[0027] Taking the robot performing a lawn mowing task as an example, before the robot performs mowing, the value of the grid in the operating area is 0. Each time the robot passes through a grid, the value in the grid increases by 0.01. For example, for the same grid, if the robot passes through the grid 10 times when performing the mowing task, the value in the grid changes from 0 to 0.1, that is, the number of times the robot covers the grid can be directly determined by the value in the grid. Similarly, for a non-zero value in the grid, it means that the robot has passed through the grid to perform a mowing task, indicating that the grid has been covered. Therefore, by counting the number of grids with non-zero values ​​and the number of grids with zero values ​​in the original operating area, the coverage rate of the robot when performing the mowing task can be determined by the ratio of the two.

[0028] Through the above steps 101 to 103, the loop of the working area is determined in the target map based on the true value of the edge, and the loop is expanded in the target map based on the width of the robot to obtain the edge of the working area, and then different values ​​are set in the grids inside and outside the edge respectively; finally, the coverage data of the robot is replayed in the working area, and the coverage of the working area is determined based on the current value in the grid in the working area. It can be seen that in the embodiment of the present application, after simulating the working area and working trajectory of the robot, by replaying the coverage data, the coverage rate of the working area and the number of grid coverages after one or more operations can be determined based on the values ​​in the grid, thereby providing more comprehensive data support for the coverage situation, solving the technical problem in the prior art that only the coverage rate of the robot during the execution of the task can be counted, but the number of coverage times for the same area cannot be counted.

[0029] In this regard, in an embodiment of the present application, in order to distinguish between the robot's operating area and non-operating area, corresponding numbers can be set in the grids in the target map, for example, 0 is set in the operating area grid and 0.5 is set in the non-operating area grid; other numbers can also be used, as long as they can distinguish between the operating area and the non-operating area. Based on this, the method of setting different values ​​in the grids inside and outside the edge involved in step 102 above can further include:

[0030] Step 11: setting a first number in a grid of an operation area of ​​the target map, and setting a second number in a grid of a non-operation area of ​​the target map, wherein the first number and the second number are different.

[0031] By setting different numbers, the working area and the non-working area can be distinguished relatively easily, so that the coverage rate and coverage times can be quickly and conveniently counted when the robot performs tasks later.

[0032] Based on this, the method of replaying the robot's coverage data in the working area involved in the above step 103 can further include: simulating the robot's working trajectory in the working area based on time sequence, and increasing the value in the current grid by one unit each time the same grid is passed, so as to obtain the value of the current grid as the third number.

[0033] For example, if the initial value of the grid in the current working area is 0 (the first number), when the robot passes through the grid during the task, the value of the grid increases by one unit, such as 0.01, and the internal value of the grid is now 0.01 (the third number). In the subsequent task execution process, if the robot passes through the grid four times, the internal value of the grid is now 0.05 (the third number). This shows that the number of times the grid is covered can be conveniently and quickly determined directly by the value of the grid.

[0034] In addition, in order to more directly determine the coverage rate and coverage times of the current robot during operation, in the embodiment of the present application, corresponding values ​​can be set in the grids within the simulated operation area. When the robot is not operating, the value in the grid is 0. After the robot starts operating, the value of the grid passed by is increased by one unit. The unit can be set accordingly according to actual needs, such as 0.01 or 0.1. Based on this, the method of determining the coverage of the operation area based on the current value of the grid in the operation area involved in step 103 can further include:

[0035] Step 21: Obtain the current value of the grid in the current working area, and determine the number of grid coverages based on the current value, wherein the value in the grid increases by one unit each time the robot passes through the grid during the task execution;

[0036] Step 22: Obtain the target number of grids whose values ​​change in the operating area, and determine the ratio of the target number to the total number of grids in the operating area as the coverage rate.

[0037] In this regard, in a specific example, taking a robot mowing lawn as an example, the number in the grid is increased by 0.01 each time it passes through a grid. For example, if the value in the current grid changes from 0 to 0.1, it means that the robot has passed through the grid 10 times during the mowing process. Therefore, the number of times the current grid has been covered can be directly determined by the value in the grid. In addition, when calculating the coverage rate, the number of grids that are 0 before the task is executed can be counted first. Then, during the execution of the mowing task, the number of non-zero grids in the working area can be counted at any time. The ratio of the number of non-zero grids to the number of grids that are 0 at the initial moment is determined as the coverage rate. As can be seen from this, in this embodiment of the present application, the current coverage rate and coverage times can be calculated in real time.

[0038] In the embodiment of the present application, the robot parameters in the above simulation process can also be optimized to improve the coverage of the robot's task execution. Figure 2 As shown, the method further includes:

[0039] Step 201, determining parameters to be optimized associated with the robot, and constructing a solution vector in a solution space based on the parameters to be optimized;

[0040] In an embodiment of the present application, step 201 can be further as follows: determining the parameters to be optimized as target parameters, wherein the target parameters are the range of the retreat distance when the robot encounters an obstacle during the execution of the task, and the range of the rotation angle adjustment when encountering an obstacle; constructing a corresponding two-dimensional vector based on the retreat distance range and the rotation angle adjustment range to obtain a solution vector.

[0041] As can be seen in this specific example, the parameters that need to be optimized can be the robot's retreat distance (x meters) and the rotation angle (y degrees) each time it encounters an obstacle. Specifically, the retreat distance (x) has a preset range of 0.2 to 1.5 meters. It should be noted that a retreat distance that is too small can easily lead to secondary collisions, while a distance that is too large can waste path. The rotation angle (y) has a preset range of 30° to 150°. It should be noted that a too small rotation angle will result in insufficient steering, while a too large rotation angle will result in a circuitous path.

[0042] Based on this, the parameters are combined into a vector XX = [x, y], where each particle represents a set of possible parameter configurations. For example, XX = [0.5m, 90°] means that the robot retreats 0.5 meters and then rotates 90° when encountering an obstacle.

[0043] Step 202: performing simulation optimization on the solution vector in the solution space based on the particle swarm algorithm to obtain optimized parameters;

[0044] Step 203: Optimize the parameters of the robot based on the optimized parameters.

[0045] As can be seen, in this application, the coverage rate and number of coverage times of the robot's task execution determined by simulation can be further optimized by using the particle swarm algorithm to further improve the coverage rate of the robot's task execution. For example, the parameter to be optimized is the random sampling angle range of each random execution, such as the original angle range of [10°, 140°]. From this angle range, a more suitable angle range can be found to improve the robot's work efficiency.

[0046] Furthermore, the method of performing simulation optimization on the solution vector in the solution space based on the particle swarm algorithm in step 202 to obtain optimized parameters may further include:

[0047] Step 31, performing particle initialization on the solution vector in the solution space to obtain a particle swarm;

[0048] For this purpose, the parameters to be optimized are the retreat distance and the rotation angle, with the preset range of the retreat distance being 0.2 to 1.5 meters and the preset range of the rotation angle (y) being 30° to 150°. Based on this, the solution vector obtained can be any combination of retreat distance and rotation angle, such as [0.5m, 90°], [0.3m, 80°], [0.6m, 100°], etc. Based on the solution vector in the solution space, multiple particles are randomly generated, such as 100 particles, for example, Particle 1: 0.3, 60°, Particle 2: 0.8, 120°, and so on.

[0049] Step 32: input the particles in the particle swarm into the simulation system in sequence to obtain the output result of each particle;

[0050] In this specific example, the simulation system can be simulated using the isaac,sim simulation platform. Specifically, the robot model parameters can be imported using the usd / usda interface, and the environment parameters can be imported using the ysd / usda interface. The robot code can also be imported using the ros2 motion control code interface. The simulation is then started, and the ros2bag data packet (true value data packet) is recorded. Finally, the ros2bag data packet is fed into the simulation system, which outputs the coverage rate and coverage count.

[0051] Step 33: determining the fitness of the output result based on a preset evaluation function, and updating the particles in the particle swarm based on the fitness;

[0052] In the embodiment of the present application, the evaluation function refers to a function that can determine the fitness based on the evaluation index. Specifically, the evaluation index can be the obstacle avoidance success rate, that is, the number of successful obstacle avoidance / total number of tests. The evaluation index can also be the task execution efficiency, that is, the time or path length to complete the task. In the specific example, particle 1 has: 2 collisions, takes 45 seconds, and the path tortuosity is 1.8, so the corresponding fitness = 0.194. Particle 2 has: 0 collisions, takes 52 seconds, and the path tortuosity is 1.5, so the corresponding fitness = 0.213. It can be seen that the fitness of particle 2 is higher than that of particle 1, that is, the output result after particle 2 is input into the simulation system is compared with the output result after particle 1 is input into the simulation system, and its robot performs the task better.

[0053] In step 34 , the updated particle swarm is input into the simulation system again until an optimal result is output, and optimized parameters are determined based on the optimal result, wherein the optimal result indicates that the robot has the highest coverage of tasks executed based on the updated particles.

[0054] The final optimal result can be output after a preset number of iterations has been met. For example, if the preset number of iterations is 1000, the optimal result will be selected after 1000 iterations. Alternatively, the simulation system may have no limit on the number of iterations and converge to the optimal result after a certain number of iterations. This means that further iterations will not result in a better output than the previous one.

[0055] The following is an explanation of the present application in conjunction with the specific implementation of the embodiment of the present application. The specific implementation provides a coverage rate statistics and simulation optimization method for a coverage task robot. In this method, a real-time dynamic module is bound to the robot as a true value for statistics (a positioning true value system is connected above the cutter head). Statistics on the coverage rate of a lawn mower without global positioning. Figure 3 As shown, the specific steps include:

[0056] In step 301 , the robot runs along the edge (close to the edge of the map) to obtain real-time kinematic (RTK) data along the edge.

[0057] In step 302 , the robot performs several coverage operations to obtain coverage RTK data.

[0058] Step 303: generating a target map. Specifically, the target map is represented by a grid map.

[0059] All data points along the edge of the robot are obtained to form a ring to generate a map (points within the edge are inner grid points filled with 0, and grid points outside the edge are outer points filled with 0.5), and the map is expanded by 0.25 meters to generate the true edge of the map.

[0060] Step 304: After generating the coverage map, obtain the robot's edge trajectory and add 0.01 to the original value of all (greater than or equal to 0 and less than 0.4) grids at the trajectory point [0.2, 0.2] (depending on the cutterhead width) below the robot.

[0061] Step 305 , the edge coverage of the robot is obtained by counting the number of grids with values ​​greater than 0 and less than 0.4*the area represented by the grids.

[0062] Specific simulations such as Figure 4 As shown in the figure, the upper part shows the simulation results of the map and the results of simulating the reward coverage data onto the map. The lower part shows the coverage data when the robot runs for 250 seconds and the coverage data when the robot runs for 5000 seconds.

[0063] It can be seen from the above 301 to step 305 that the pose truth package can be played or recorded in real time by the truth system to obtain the required edge data and coverage data. Then the trolley width and trolley position width are imported into the system, the edge data is generated into a target map loop, and the map loop (robot half-width) is expanded to form map edge data. Finally, the coverage data is replayed in the map, and the coverage results are counted, that is, the coverage rate and coverage times are confirmed using the value of each grid in the map. It can be seen that in the embodiment of the present application, real-time statistics or statistics by replay are supported, which is flexible to use and takes up less system resources. Moreover, the entire travel process of the robot can be replayed to facilitate the investigation and analysis of problems. In addition, statistics can be taken on one or more coverage situations to provide more comprehensive data support.

[0064] In addition, in the specific implementation of the present application, simulation can also be used to optimize machine parameters. First, map data is generated by a random map generation system, car data is generated, and the data is imported into the coverage system and the physical simulation system. Then, the parameters (all) that need to be optimized are given to the particle swarm algorithm, the data range is given, and then the particle swarm algorithm iterative optimization process is started, and finally the optimization situation and the coverage result in the iteration are obtained. In this regard, specifically, the optimization target is the random sampling angle interval of each random execution as an example. For example, the original input is [10°, 140°]. First, a simulation map is generated, and then the map is imported into the simulation system. Finally, the particle swarm algorithm is run to give the robot sampling interval [x, y] to the robot system, and the simulation is run to let the robot run in the simulation environment to obtain the machine's 12-hour coverage. The data is fed back to the particle swarm algorithm as an evaluation function to evaluate the current parameters, generate new parameters and continue to run, and the process is repeated X times until the system converges. After X rounds of iteration and the coverage is stable, the robot inputs the final optimal parameters.

[0065] Corresponding to the above Figure 1 , the present application also provides a processing device for the coverage of the robot operation area, such as Figure 5 As shown, the device includes:

[0066] A first processing module 502 is configured to determine a loop of the work area in the target map based on the edge truth value, and to dilate the loop in the target map based on the width of the robot to obtain the edge of the work area, wherein the edge truth value includes real-time dynamic data generated by the robot moving along the edge of the target map;

[0067] A setting module 504, configured to set different values ​​in the grids inside and outside the edge respectively;

[0068] The second processing module 506 is used to replay the robot's coverage data in the working area and determine the coverage status of the working area based on the current value in the grid in the working area, wherein the coverage data includes the trajectory of the robot performing the task in the working area and the value used to characterize the number of times the robot passes through the current grid during the execution of the task, and the coverage status includes the number of times the grid in the working area is covered and the coverage rate of the working area.

[0069] Through the device of the embodiment of the present application, the loop of the working area is determined in the target map based on the true value of the edge, and the loop is expanded in the target map based on the width of the robot to obtain the edge of the working area. Then, different values ​​are set in the grids inside and outside the edge respectively; finally, the coverage data of the robot is replayed in the working area, and the coverage of the working area is determined based on the current value in the grid in the working area. It can be seen that in the embodiment of the present application, after simulating the working area and working trajectory of the robot, by replaying the coverage data, the coverage rate of the working area and the number of grid coverages after one or more operations can be determined based on the values ​​in the grid, thereby providing more comprehensive data support for the coverage situation, solving the technical problem in the prior art that only the coverage rate of the robot during the execution of the task can be counted, but the number of coverage times for the same area cannot be counted.

[0070] In an optional implementation manner of an embodiment of the present application, the second processing module in the embodiment of the present application may further include: a first processing unit, used to obtain the current value in the grid in the working area at the current moment, and determine the number of times the grid is covered based on the current value, wherein each time the robot passes through a grid in the process of performing a task, the value in the grid increases by one unit; a second processing unit, used to obtain the target number of grids in the working area whose values ​​change, and determine the ratio of the target number to the total number of grids in the working area as the coverage rate.

[0071] In an optional implementation manner of an embodiment of the present application, the setting module in the embodiment of the present application may further include: a setting unit for setting a first number in the grid of the working area of ​​the target map, and setting a second number in the grid of the non-working area of ​​the target map, wherein the first number and the second number are different.

[0072] In an optional implementation manner of an embodiment of the present application, the second processing module in the embodiment of the present application may further include: a third processing unit, used to simulate the working trajectory of the robot based on time sequence in the working area, and increase the value in the current grid by one unit each time passing the same grid, so as to obtain the value of the current grid as a third number.

[0073] In an optional implementation manner of an embodiment of the present application, the device in the embodiment of the present application also includes: a third processing module, used to determine the parameters to be optimized associated with the robot, and construct a solution vector in the solution space based on the parameters to be optimized; a simulation module, used to simulate and optimize the solution vector in the solution space based on the particle swarm algorithm to obtain optimized parameters; and an optimization module, used to optimize the parameters of the robot based on the optimized parameters.

[0074] In an optional implementation manner of an embodiment of the present application, the simulation module in the embodiment of the present application includes: an initialization unit, used to perform particle initialization on the solution vector in the solution space to obtain a particle swarm; a simulation unit, used to input the particles in the particle swarm into the simulation system in sequence to obtain the output result of each particle; a fourth processing unit, used to determine the fitness of the output result based on a preset evaluation function, and update the particles in the particle swarm based on the fitness; a fifth processing unit, used to input the updated particle swarm into the simulation system again until the optimal result is output, and determine the optimized parameters based on the optimal result, wherein the optimal result indicates that the robot has the highest coverage rate for performing tasks based on the updated particles.

[0075] In an optional implementation manner of an embodiment of the present application, the third processing module in the embodiment of the present application includes: a determination unit, used to determine the parameters to be optimized as target parameters, wherein the target parameters are the retreat distance range when the robot encounters an obstacle during the execution of the task, and the rotation angle adjustment range when encountering an obstacle; a construction unit, used to construct a corresponding two-dimensional vector based on the retreat distance range and the rotation angle adjustment range to obtain a solution vector.

[0076] like Figure 6 As shown, an embodiment of the present application provides an electronic device, including a processor 611, a communication interface 612, a memory 613 and a communication bus 614, wherein the processor 611, the communication interface 612, and the memory 613 communicate with each other through the communication bus 614.

[0077] Memory 613, for storing computer programs;

[0078] In one embodiment of the present application, the processor 611 is used to execute the program stored in the memory 613 to implement the method for processing the robot operation area coverage provided by any of the aforementioned method embodiments, and the role it plays is similar.

[0079] An embodiment of the present application also provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the steps of the method for processing the coverage of the robot operation area provided in any of the aforementioned method embodiments are implemented.

[0080] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the modules may be selected based on actual needs to achieve the objectives of this embodiment.

[0081] Through the description of the above embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus a general hardware platform, or of course, by hardware. Based on this understanding, the above technical solution, in essence, or the part that contributes to the relevant technology, can be embodied in the form of a software product. The computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a magnetic disk, an optical disk, etc., and includes a number of instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or certain parts of the embodiment.

[0082] It should be understood that the terms used herein are for the purpose of describing specific example embodiments only and are not intended to be limiting. Unless the context clearly indicates otherwise, the singular forms "one", "an" and "said" as used herein may also be meant to include plural forms. The terms "comprise", "include", "contain" and "have" are inclusive and therefore specify the presence of stated features, steps, operations, elements and / or parts, but do not exclude the presence or addition of one or more other features, steps, operations, elements, parts, and / or combinations thereof. The method steps, processes, and operations described herein are not to be construed as necessarily requiring them to be performed in the specific order described or illustrated, unless the order of execution is clearly indicated. It should also be understood that additional or alternative steps may be used.

[0083] The foregoing description is intended only to provide specific embodiments of the present invention, which will enable those skilled in the art to understand and implement the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention is not intended to be limited to the embodiments shown herein, but is intended to be accorded the widest scope consistent with the principles and novel features claimed herein.

Claims

1. A method for processing the coverage of a robot operation area, characterized in that: include: Determining a loop of a work area in a target map based on an edge truth value, and dilating the loop in the target map based on a width of the robot to obtain an edge of the work area, wherein the edge truth value includes real-time dynamic data generated by the robot moving along the edge of the target map; Setting different values ​​in the grid inside and outside the edge respectively; The coverage data of the robot is replayed in the working area, and the coverage status of the working area is determined based on the current value in the grid in the working area, wherein the coverage data includes the trajectory of the robot performing the task in the working area and the value used to characterize the number of times the robot passes through the current grid during the execution of the task, and the coverage status includes the number of times the grid in the working area is covered and the coverage rate of the working area.

2. The method according to claim 1, characterized in that Determining coverage of the operating area based on current values ​​within a grid in the operating area includes: Obtaining a current value of a grid in the working area at a current moment, and determining a number of times the grid has been covered based on the current value, wherein the value of the grid increases by one unit each time the robot passes through a grid during the execution of the task; A target number of grids whose values ​​change in the operating area is obtained, and a ratio of the target number to the total number of grids in the operating area is determined as the coverage rate.

3. The method according to claim 1, characterized in that Different values ​​are set in the grid inside and outside the edge, including: A first number is set in a grid of an operation area of ​​a target map, and a second number is set in a grid of a non-operation area of ​​the target map, wherein the first number and the second number are different.

4. The method according to claim 3, characterized in that Replaying the coverage data of the robot in the working area includes: The operation trajectory of the robot is simulated in the operation area based on a time sequence, and the value in the current grid is increased by one unit each time the robot passes through the same grid, so that the value of the current grid is a third number.

5. The method according to claim 1, wherein The method further comprises: Determining parameters to be optimized associated with the robot, and constructing a solution vector in a solution space based on the parameters to be optimized; Performing simulation optimization on the solution vector in the solution space based on the particle swarm algorithm to obtain optimized parameters; Optimize the parameters of the robot based on the optimized parameters.

6. The method according to claim 5, characterized in that The solution vector in the solution space is simulated and optimized based on the particle swarm algorithm to obtain optimized parameters including: Performing particle initialization on the solution vector in the solution space to obtain a particle swarm; Inputting particles in the particle swarm into the simulation system in sequence to obtain an output result of each particle; Determining the fitness of the output result based on a preset evaluation function, and updating the particles in the particle swarm based on the fitness; The updated particle swarm is input into the simulation system again until an optimal result is output, and optimized parameters are determined based on the optimal result, wherein the optimal result indicates that the coverage rate of the robot performing tasks based on the updated particles is the highest.

7. The method according to claim 6, characterized in that Determining parameters to be optimized associated with the robot, and constructing a solution vector in a solution space based on the parameters to be optimized, including: Determining the parameters to be optimized as target parameters, wherein the target parameters are a range of a retreat distance when the robot encounters an obstacle during task execution, and a range of an adjustment of a rotation angle when encountering an obstacle; A corresponding two-dimensional vector is constructed based on the retreat distance range and the rotation angle adjustment range to obtain the solution vector.

8. A device for processing coverage of a robot's operating area, characterized in that: include: a first processing module configured to determine a loop of a work area in a target map based on an edge truth value, and to dilate the loop in the target map based on a width of the robot to obtain an edge of the work area, wherein the edge truth value includes real-time dynamic data generated by the robot moving along the edge of the target map; A setting module, configured to set different values ​​in the grids inside and outside the edge respectively; The second processing module is used to replay the coverage data of the robot in the working area and determine the coverage status of the working area based on the current value in the grid in the working area, wherein the coverage data includes the trajectory of the robot performing the task in the working area and the value used to characterize the number of times the robot passes through the current grid during the execution of the task, and the coverage status includes the number of times the grid in the working area is covered and the coverage rate of the working area.

9. An electronic device comprising: at least one communication interface; at least one bus connected to the at least one communication interface; at least one processor coupled to the at least one bus; At least one memory connected to the at least one bus, wherein the processor is configured to execute the method for processing the coverage of the robot working area according to any one of claims 1 to 7.

10. A computer storage medium storing computer-executable instructions, wherein the computer-executable instructions are used to execute the method for processing the coverage status of a robot operation area according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Multi-robot area coverage method based on improved particle swarm algorithm

    CN113807486A

  • Covering moving operation method of robot

    CN114281076A

  • All-area coverage path planning method and system applied to mowing robot, terminal and medium

    CN116774682A

  • Method for determining cutting coverage rate, mower and storage medium

    CN117540866A