Robot task execution method and apparatus, robot, and storage medium

By generating the maximum envelope area of ​​the cleaning robot and optimizing path planning, the problems of low efficiency and weak adaptability in existing technologies are solved, and efficient cleaning tasks are achieved in complex environments.

CN115097823BActive Publication Date: 2026-02-17BEIJING INDEMIND TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202210674876.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2021-06-18
Filing Date
2022-06-15
Publication Date
2026-02-17
Estimated Expiration
2042-06-15

AI Technical Summary

Technical Problem

Existing methods for full-coverage path planning of cleaning robots are inefficient, have weak adaptability, and are limited in application scenarios.

Method used

By acquiring the training trajectory and environment map in the training mode, the maximum envelope area that the robot can autonomously complete the task is automatically generated. The robot is controlled to traverse the area until the task is completed. Grid map and sensor data binding technology are used, combined with path planning algorithm to optimize path traversal.

Benefits of technology

It enables stable and efficient task execution in various environmental areas, is suitable for a variety of application scenarios, and avoids problems such as repetitive cleaning and insufficient environmental adaptability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115097823B_ABST
    Figure CN115097823B_ABST
Patent Text Reader

Abstract

The application discloses a robot task execution method and device, a robot, and a storage medium. The method comprises the following steps: acquiring a training trajectory and an environment map in a training mode; combining the environment map and the training trajectory to generate a target area of a task to be executed by a robot, wherein the target area is a maximum envelope area in which the robot can autonomously complete the task; and controlling the robot to traverse the target area until the robot completes the task to be executed. According to the technical scheme, the task can be stably and efficiently executed in various environment areas, and the technical scheme can be applied to various application scenarios.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of communication, in particular to a robot task execution method and device, a robot and a storage medium. BACKGROUND

[0002] With the increasing labor cost and the increasing maturity of robot intelligent technology, more and more robots are applied to solve specific problems in certain scenarios. For example, cleaning robots mainly complete cleaning work in home and typical commercial scenarios, and the core work content is to complete traversal cleaning work in the target scenario. The core function of the cleaning robot is reflected in the path planning of the robot, and especially the full coverage path planning can reflect the intelligence degree and market application prospect of the robot.

[0003] At present, the full coverage path planning of the cleaning robot mainly adopts the following two methods:

[0004] 1. Based on artificial teaching (training) method: the user first teaches (trains) a full coverage target area path, and the cleaning robot completely tracks the teaching (training) path to complete the entire coverage cleaning process. Since the robot walking path is determined by the person, the robot teaching path can easily avoid structured complex scenes. This scheme is generally applied to structured complex scenes, such as shelves, high-altitude complex obstacles, etc., as shown in Figure 1 .

[0005] 2. Based on boundary full coverage method: first, teach (train) a boundary, and the cleaning robot completely autonomously plans a full coverage plan within the envelope area according to the boundary constraint. The robot completes the cleaning result according to the planned path. However, due to the uncertainty of the environment of the cleaning area envelope, in structured complex scenes, the robot is difficult to completely autonomously complete full coverage cleaning. This scheme is usually applied to structured simple scenes (open halls, squares, etc.), as shown in Figure 2 .

[0006] For the first method, the environment adaptability is strong, but once the teaching (training) is completed, the path cannot be changed, and the repeated cleaning of some areas caused by human error will lead to low efficiency and unnecessary wear and tear of the cleaning equipment. For the second method, it is only suitable for structured simple scene environment, and its adaptability is weak, and the application scene is very limited. SUMMARY

[0007] The main purpose of the present application is to disclose a robot task execution method and device, a robot and a storage medium, to at least solve the problems of low cleaning efficiency, weak adaptability, limited application scene, etc. in the related art full coverage path planning method.

[0008] According to an aspect of the present application, a robot task execution method is provided.

[0009] The robot task execution method according to the present application comprises: acquiring a training trajectory and an environment map in a training mode; generating a target region of a task to be executed by a robot in combination with the environment map and the training trajectory, wherein the target region is a maximum envelope region in which the robot can autonomously complete the task; and controlling the robot to traverse the target region until the robot completes the task to be executed.

[0010] According to another aspect of the present application, a robot task execution device is provided.

[0011] The robot task execution device according to the present application comprises: an acquisition module configured to acquire a training trajectory and an environment map in a training mode; a generation module configured to generate a target region of a task to be executed by a robot according to the environment map and the training trajectory, wherein the target region is a maximum envelope region in which the robot can autonomously complete the task; and an execution module configured to control the robot to traverse the target region until the robot completes the task to be executed.

[0012] According to still another aspect of the present application, a robot is provided.

[0013] The robot according to the present application comprises: a memory configured to store computer execution instructions; and a processor configured to execute the computer execution instructions stored in the memory, so that the robot executes the method according to any one of the above aspects.

[0014] According to yet another aspect of the present application, a computer readable storage medium is provided.

[0015] The computer readable storage medium according to the present application comprises: a memory configured to store computer execution instructions; and a processor configured to execute the computer execution instructions stored in the memory, so that the robot executes the method according to any one of the above aspects.

[0016] According to the present application, a training trajectory and an environment map in a teaching (training) mode are acquired, and a target region of a task to be executed by a robot (for example, a cleaning, floor washing, or the like) is automatically generated, wherein the target region is a maximum envelope region in which the robot can autonomously complete the task. The robot is controlled to traverse the target region until the robot completes the task to be executed. The problems in the related art, such as low efficiency based on a manual teaching method, weak adaptability based on a boundary full coverage method, and limited application scenarios, are solved, the robot can stably and efficiently execute tasks in various environment regions, and can be applied to various application scenarios. BRIEF DESCRIPTION OF DRAWINGS

[0017] Figure 1 This is a schematic diagram illustrating path planning based on teaching methods using relevant technologies;

[0018] Figure 2 This is a schematic diagram illustrating path planning based on a boundary-based full-coverage method using relevant technologies.

[0019] Figure 3 This is a flowchart of a robot task execution method according to an embodiment of this application;

[0020] Figure 4 This is a schematic diagram illustrating the acquisition of an environmental map and training trajectory under a preferred embodiment of the present application.

[0021] Figure 5 A schematic diagram of the target area of ​​the task to be performed according to a preferred embodiment of this application;

[0022] Figure 6 This is a schematic diagram of the restricted area and target area boundary according to a preferred embodiment of this application;

[0023] Figure 7 This is a schematic diagram of the region division according to a preferred embodiment of this application;

[0024] Figure 8 This is a schematic diagram of a robot traversing sub-regions to perform a task according to a preferred embodiment of this application;

[0025] Figure 9 This is a schematic diagram of two traversal modes in a sub-region according to a preferred embodiment of this application;

[0026] Figure 10 This is a structural block diagram of a robot task execution device according to an embodiment of this application. Detailed Implementation

[0027] The specific implementation of this application will be described in detail below with reference to the accompanying drawings.

[0028] According to an embodiment of this application, a robot task execution method is also provided.

[0029] Figure 3 This is a flowchart of a robot task execution method according to an embodiment of this application. Figure 3 As shown, the robot task execution method includes:

[0030] Step S301: Obtain the training trajectory and environment map in training mode;

[0031] Step S302: generating a target area of a task to be performed by the robot according to the above environment map and the above training trajectory, wherein the target area is a maximum envelope area in which the robot can autonomously complete the task;

[0032] Step S303: controlling the robot to traverse the target area until the robot completes the task to be performed.

[0033] In the related art, for the artificial teaching (training) method, due to the subjectivity of the person, a large amount of over-cleaning and missed cleaning of the cleaning area is caused, and therefore the efficiency and stability of the method are low. For the boundary full coverage method, in the application scenario of a region containing complex obstacles (such as the region shown in Figure 1 The environment adaptability of the method is weak due to the uncertainty of the envelope environment of the cleaning area. The scheme shown in Figure 1 The training trajectory and the environment map in the teaching (training) mode are obtained first, and the target area of the task to be performed by the robot (for example, cleaning, washing, and the like) is automatically generated in combination with the training trajectory and the environment map, wherein the target area is a maximum envelope area in which the robot can autonomously complete the task. The robot is controlled to traverse the target area until the robot completes the task to be performed. The task can be stably and efficiently performed in various environment regions, and can be applied to various application scenarios.

[0034] The environment map can be a world map established based on a world coordinate system, and can further be in the form of a 2D grid map or a 3D grid map.

[0035] Preferably, obtaining the training trajectory and the environment map in the training mode can further include: when the robot starts to move from an initial position, establishing a world coordinate system based on the initial position, and constructing a world map based on the world coordinate system; recording a training trajectory of the robot and at least one target position information on the training trajectory, and a business operation corresponding to each target position information (for example, the business operation includes: turning, arm action, water spraying, dust suction, detouring, opening a corresponding device, and the like) during movement of the robot; and binding related information in the world map, wherein the related information includes the training trajectory, the at least one target position information, and the business operation information corresponding to each target position information, and the related information is bound with the world map.

[0036] In the robot mapping stage, the robot establishes a world coordinate system based on the initial position O, and establishes a world map based on the world coordinate system. For example, the robot is controlled to start from the initial position O and move (e.g., the robot is controlled to move using remote control or the like), the working scene is covered or traversed according to the business function requirements, and the robot moves to the target position A, and performs corresponding business operations at the target position A. In the process of performing the above operations, the robot perceives external information through multiple sensors installed at different positions of the robot, such as radar sensors, vision sensors, infrared sensors, ultrasonic sensors, collision sensors, etc., and maps the sensor data vertically to a 2D plane and fills it into a grid map. A 3D grid map can also be established according to the height of the robot body, and the 3D grid map is dimensionally reduced when used to compress the 3D grid map into a 2D grid map. The grid map established by the robot is recorded as map1, and the training trajectory of the robot, the target position A, and the business operations performed in the movement process are recorded and bound to the established map map1 according to the real-time coordinates of the robot.

[0037] Similarly, for multiple target positions such as target position B, target position C, and the like, the above operations are repeatedly performed, and the robot is controlled to move from the target position A to the target position B, from the target position B to the target position C, and from the target position C to other target positions, and the like. In the process of performing the above operations, the robot establishes an environment map (e.g., the above world map) based on the target scene. The target positions such as A, B, C, etc. can be selected by humans based on business requirements, and the number of target positions can be greater than 0 and less than or equal to the number of business requirements.

[0038] During the movement of the robot, the training trajectory of the robot can be recorded, for example, the coordinate information of each path point on the training trajectory is recorded in list1; and at least one target position information on the training trajectory and the business operations corresponding to each target position information are recorded, for example, the coordinate information of the target position A and the business operations corresponding to the target position A (which can be in the form of business operation code, etc.) are recorded in list2. Then, list1 and list2 are bound to map1 respectively.

[0039] After completing the mapping of the target scene and recording the training trajectory of the robot, at least one target position information on the training trajectory, and the business operations corresponding to each target position information, the robot is controlled to return to the initial position O.

[0040] Preferably, in step S302, the target area of the task to be performed by the robot can further include: inflating the training trajectory in the above environment map to obtain the maximum envelope area in which the robot can autonomously complete the task.

[0041] In the preferred implementation, expanding the training trajectory within the environmental map (taking a grid map as an example) to obtain the maximum envelope area that the robot can autonomously complete the task can further include the following processing: importing the grid information of the M layers of grids on the left side of the training trajectory and the N layers of grids on the right side of the training trajectory into a newly created coverage area map, wherein the single coverage width of the robot is equal to M+N+1, and M and N are both integers greater than or equal to 1; extracting the inner and outer envelopes of the coverage area from the coverage area map, and superimposing the inwardly expandable area of ​​the inner envelope and the outwardly expandable area of ​​the outer envelope to obtain the maximum envelope area that the robot can autonomously complete the task.

[0042] In this context, M can be equal to or unequal to N. When M equals N, it indicates that the grid regions expanding to the left and right along the training trajectory are symmetrical, meaning the number of grid layers expanding to the left of the training trajectory is equal to the number of grid layers expanding to the right. For example, the robot's single-pass coverage width W can be calculated as W = M + N + 1, where M = N = (w - 1) / 2. When M is not equal to N, it indicates that the grid regions expanding to the left and right along the training trajectory are asymmetrical, meaning the number of grid layers expanding to the left of the training trajectory is not equal to the number of grid layers expanding to the right.

[0043] For example, let's take a small household robot vacuum (which also mops) as an example. For small household robot vacuums, you can usually control the robot's movement using virtual directional keys in an app, allowing it to complete a cleaning traverse of the entire target area and obtain an environmental map and cleaning training trajectory for that area. For example... Figure 4 As shown, (a) is the target environment to be cleaned, which includes areas with complex obstacles. (b) shows the trajectory of the small robot vacuum cleaner controlled by the app to complete the traversal cleaning. It can be seen that the teaching (training) trajectory completely avoids the complex obstacle areas, resulting in the grid map shown in (c) and the training trajectory shown in (d).

[0044] Subsequently, based on the grid map and the teaching (training) trajectory, the training trajectory is expanded to obtain the maximum envelope region within which the robot can autonomously complete the aforementioned tasks, such as... Figure 5As shown. Specifically, on the grid map, the number of grid layers that each training trajectory needs to be expanded outward is determined. For example, the robot's single coverage width is equivalent to M+N+1 grid layers. The training trajectory is expanded to the left by M grid layers and to the right by N grid layers. The grids within the expanded area are used as virtual expansion grids for the training trajectory. The information of the virtual expansion grids is imported into a newly created coverage area map, covermap. The inner and outer envelopes of the coverage area are extracted from covermap. The inward expandable area of ​​the inner envelope and the outward expandable area of ​​the outer envelope are superimposed to obtain the maximum envelope area that the robot can autonomously complete the task. From Figure 5 As can be seen, this maximum envelope area completely covers the cleaning area and excludes complex obstacle areas that the robot cannot complete autonomously.

[0045] Preferably, after generating the target area for the robot to perform the task in step S302, the following process may be included: determining the boundary of the target area, generating a restricted area fence at the boundary of the target area, wherein the robot performs the task within the target area enclosed by the restricted area fence.

[0046] In the preferred implementation, during autonomous navigation and obstacle avoidance, certain areas do not require the robot to pass through. For example, for a robot performing a mopping task, it does not need to pass through carpeted areas. Figure 5 The target area shown is a joint cleaning area. When robots are not required to pass through certain areas (i.e., restricted areas), restricted area fences need to be set up at the outer boundary of the target area and within the restricted area, such as... Figure 6 The shaded areas in the diagram help prevent the robot from going outside its designated work area when performing tasks. It's important to note that since the robot won't pass through restricted areas such as carpets, complex terrain, or fall zones during human training, the corresponding restricted areas can be determined based on the training trajectory, ensuring the robot doesn't traverse these areas.

[0047] Preferably, step S301, controlling the robot to traverse the target area to perform tasks until the robot completes the tasks, may further include: dividing the target area into multiple sub-areas; controlling the robot to traverse each of the sub-areas to perform tasks until the robot completes the tasks to be performed within the target area.

[0048] In the preferred implementation process, when the target area still has a complex contour, in order to facilitate the robot's stable and efficient performance of tasks (e.g., sweeping, mopping, etc.), the complex contour can be transformed into a simpler contour. For example, the target area can be divided into multiple sub-regions. For example, for Figure 5The target area shown can be divided into 5 sub-regions, such as... Figure 7 As shown.

[0049] Intelligent partitioning can be achieved by the following method: dividing the environmental raster map into multiple raster regions with partial overlap between adjacent raster regions; finding intersecting line segments in each raster region and determining candidate regions based on these intersecting line segments; merging candidate regions that fall into the overlapping parts of the raster regions to obtain the sub-region partitioning results.

[0050] Intelligent zoning can also be achieved using the existing BCD (boustrophed on cellular decomposition) algorithm. BCD is a grid map division method that automatically divides the entire target cleaning area. The zoning results can be traversed using either a shovel-like path or a loop-like path.

[0051] Preferably, traversing each of the aforementioned sub-regions to execute the aforementioned task until the robot completes the aforementioned task in all target regions may further include: determining the order in which the robot executes the task in each of the aforementioned sub-regions; controlling the robot to traverse the aforementioned sub-regions one by one in the determined order until the robot completes the aforementioned task in all of the aforementioned sub-regions.

[0052] After dividing the target area into multiple sub-regions, the robot can be controlled to traverse each sub-region and perform tasks until it completes the task within the target area. Alternatively, multiple robots can independently and in parallel traverse each sub-region to improve efficiency. Preferably, the robot can also be controlled to traverse each sub-region sequentially, completing the task in one sub-region before moving on to the next. The order in which the robot performs tasks in each sub-region can be determined first, followed by controlling the robot to traverse each sub-region sequentially until the task is completed in all sub-regions. For example, the starting position of the robot's task execution can be determined first, then the most critical sub-regions at that position can be identified, and the order of the robot's traversal can be determined based on the minimum distance to these sub-regions. The task execution order for each sub-region can also be determined based on clockwise or counterclockwise directions.

[0053] Preferably, controlling the robot to traverse each of the aforementioned sub-regions to perform tasks until the robot completes the task to be performed within the aforementioned target region may further include the following processing:

[0054] S1: Based on the robot's initial positioning information, determine the sub-region closest to the robot;

[0055] S2: Control the robot to traverse the nearest sub-region and perform the task;

[0056] S3: After completing the task in the nearest sub-region mentioned above, determine the location information of the end point when the robot task is completed, and determine the next sub-region that is closest to the end point.

[0057] S4: Repeat steps S2 to S3 until the robot completes the task to be performed in all sub-regions of the target area.

[0058] For example, the sorting method adopts the nearest neighbor principle. After each area is cleaned, the block closest to the robot is selected as the next sub-area based on the robot's current location (either the boundary of the sub-area is closest to the robot's current location, or the corner of the sub-area is closest to the robot's current location).

[0059] Specifically, the boundary grid points of the sub-regions where the robot is not currently performing a task can be determined. Each boundary grid point (including the corner points of the sub-region) is traversed, and the distance between each boundary grid point and the aforementioned endpoint is calculated. For example, the endpoint has coordinates X in a world coordinate system map, and a boundary grid point has coordinates Y(i) in the same map. ||Y(i)-X|| represents the norm between Y(i) and X, i.e., the Euclidean distance, where i is a natural number. The sub-region to which the nearest boundary grid point belongs is selected as the next sub-region. If there are multiple boundary grid points closest to the endpoint, one can be randomly selected as the next sub-region. Alternatively, according to the direction of task execution (e.g., clockwise or counterclockwise), one can select a sub-region from multiple sub-regions that meet the conditions as the next sub-region.

[0060] like Figure 8 As shown, after cleaning sub-area number 1 is completed, the robot is at the end point position shown in the diagram. Figure 8 The boundary of sub-region numbered 2 on the upper right side is closest to the end point. Therefore, after the robot traverses sub-region numbered 1, it is controlled to traverse sub-region numbered 2 to perform the task. The above steps are repeated to traverse all sub-regions in the target area, thereby completing the task within the entire target area with a complex contour.

[0061] Preferably, before controlling the robot to traverse the target area, it is also necessary to determine the traversal method, for example, such as... Figure 9 As shown in Figure (a), a circular traversal method can be selected, such as... Figure 9 As shown in Figure (b), a bow-shaped traversal method can also be chosen, or a mixed traversal method can be used (e.g.,Figure 8 The sub-regions numbered 1, 2, 3, and 5 are traversed using a bow-shaped traversal method. Figure 9 The sub-region numbered 4 in the middle is traversed using a circular traversal method.

[0062] Preferably, before generating the target area for the robot's task to be performed in step S302, the following processing may be included: receiving a first request instructing the robot to autonomously traverse the target area; loading the world map and the relevant information bound to the bounded map. Then, in step S303, controlling the robot to traverse the target area until the robot completes the task to be performed may further include: re-executing traversal path planning within the target area; the robot autonomously following the path after traversal path planning; and for each of the at least one target location information, when the robot moves to that target location, the robot performs the business operation corresponding to that target location information.

[0063] In the preferred implementation, when the robot needs to autonomously traverse the target area, the robot receives a first request instructing it to autonomously traverse the target area. It loads a world map (e.g., a 2D grid map) map1 built for the target scene, along with training trajectories bound to the world map, at least one target location, and business operation information corresponding to each target location (e.g., list1 and list2 bound to map1). First, based on map1, the training trajectories during the robot's mapping process are expanded and merged based on the robot's own horizontal dimensions (e.g., the robot's single coverage width) to form a coverage area map covermap. Then, the inner and outer envelopes of the coverage area map covermap are extracted, and the robot's expandable expansion area (e.g., the inner envelope expandable inwards, and the outer envelope expandable outwards) is superimposed to form the robot's final coverage area map covermap.

[0064] The robot performs traversal path planning based on a cover map. The path planning methods include: one-time full-map path planning and real-time local path planning. After re-executing the traversal path planning, the robot obtains the planned path trajectory for the covered area map. Path planning can be implemented according to the robot's operating mode, including: circular traversal, bow-shaped traversal, and a hybrid method (using circular traversal for some areas and bow-shaped traversal for others).

[0065] The robot automatically moves based on a trajectory obtained through traversal path planning. Since the at least one target location information and the corresponding operational information for each target location are all bound to the world map, when the robot moves to each of the at least one target location information bound to the world map, it executes the operational operation corresponding to the coordinates of that target location. For example, if the operational operation corresponding to the coordinates of target location A is to rotate one full circle, then when the robot moves to target location A, it executes the operation of rotating one full circle. After the robot has finally completed the traversal of the entire target area, it returns to the initial point. During the autonomous traversal of the entire target area, the robot continuously updates the current environmental map in real time, ensuring that the environmental map reflects the actual situation of the current scene.

[0066] In a preferred implementation, the step of recording the robot's training trajectory may further include: sequentially recording the position information of each path point in the robot's training trajectory according to the order in which the robot traverses the path points; then, within the target area, re-executing traversal path planning may further include: for all target points corresponding to the at least one target position information, according to the distance between target points on the training trajectory and / or the association information between the business operation information corresponding to each target position information, dividing the multiple target points into a set of target points to obtain at least one set of target points, and determining the traversal order of the target points in each set of target points according to the order; when re-executing traversal path planning, performing point-to-point path planning for the target points in each set of target points according to the traversal order of the target points in each set of target points, or maintaining the training trajectory corresponding to each set of target points and the traversal order of the target points in each set of target points in the re-planned path.

[0067] It's important to note that during robot implementation, certain target location operations require a sequential series of actions. Ignoring the logical flow of these operations could disrupt the robot's task execution logic. For example, at target location 1, the robot might need to activate a water spray system; subsequently, at target locations 2, 3, and 4, it needs to continuously activate the water spraying operation. Without following this logical sequence in path planning, the robot's successful task completion cannot be guaranteed. Therefore, appropriate strategies can be implemented to ensure that the robot's task execution logic remains intact.

[0068] Preferably, the above-mentioned division of multiple target points into a set of target points according to the distance between target points on the training trajectory and / or the association information between the business operation information corresponding to each of the target location information includes:

[0069] For all target points corresponding to the at least one target location information, the distance between each pair of closest target points is determined on the training trajectory. When the distance between each pair of closest target points in a plurality of adjacent target points is less than a first predetermined distance threshold, the plurality of adjacent target points are determined as target points that satisfy the first predetermined condition.

[0070] The robot's business functions are broken down into at least one business operation. For example, the robot's water spraying function can be broken down into business operations such as turning on the water spraying device and performing the water spraying operation. Related business operations are grouped into the same business function group. A first business function library, including one or more business function groups, is pre-established. The business operations corresponding to each of the recorded target location information are matched with the first business function library. Based on the matching results, the business operations corresponding to each of the target location information are grouped. The target points corresponding to the target location information of the grouped business operations belonging to the same business function group are determined as target points that meet a second predetermined condition.

[0071] Target points that satisfy the first predetermined condition and / or the second predetermined condition are designated in a set of target points.

[0072] That is, three schemes can be adopted: Scheme 1: For all target points corresponding to the at least one target location information, multiple target points that meet the first predetermined condition can be grouped into a set of target points according to the distance between target points on the training trajectory; for example, when the distance between the two closest target points in multiple adjacent target points 1, 2, 3, 4 is less than the first predetermined distance threshold, the multiple adjacent target points 1, 2, 3, 4 are grouped into the same set of target points, and the traversal order of each target point in the set of target points 1, 2, 3, 4 is determined according to the original order in which the robot traversed these target points on the training trajectory; and the traversal is then re-executed. During path planning, for the set of target points, if the traversal order is: target point 1, target point 2, target point 3, target point 4, then point-to-point path planning is performed on target points 1, 2, 3, 4 according to this traversal order. That is, first plan the path from target point 1 to target point 2, then plan the path from target point 2 to target point 3, and then plan the path from target point 3 to target point 4; or, in the replanned path, the original training trajectory consisting of target points 1, 2, 3, 4 is maintained, and the traversal order of this path is preserved, that is, it still goes from target point 1 to target point 2, then to target point 3, and finally to target point 4, instead of the reverse or other traversal order.

[0073] Option 2: Based on the correlation information between the business operation information corresponding to each of the target location information, multiple target points that meet the second predetermined condition are grouped into a set of target points. For example, when multiple recorded business operations 1, 2, 3, and 4 are matched with a pre-established first business function library, and business operations 1, 3, and 4 have a certain correlation and are matched into the same business function group, the target points corresponding to the target location information of business operations 1, 3, and 4 are determined as target points that meet the second predetermined condition, and these target points are grouped into a set of target points. When re-executing traversal path planning, for the set of target points, if the above traversal order is: target point 1, target point 3, target point 4, then perform point-to-point path planning for target points 1, 3, and 4 according to this traversal order. That is, first plan the path from target point 1 to target point 3, and then plan the path from target point 3 to target point 4. Alternatively, in the re-planned path, maintain the original training trajectory consisting of target points 1, 3, and 4, and retain the traversal order of this path, that is, still from target point 1 to target point 3, and then to target point 4, instead of the reverse or other traversal order.

[0074] Option 3: Only target points that simultaneously satisfy both the first and second predetermined conditions are grouped into the same target point set. That is, the intersection of target points satisfying the first and second predetermined conditions is selected. It should be noted that for Option 1, if only the distance between target points on the training trajectory is considered, without considering the correlation information between business operations, there may be some error in grouping. Similarly, for Option 2, if only the correlation information between business operations is considered, without considering the distance between target points on the training trajectory, there may also be some error in grouping. Combining the two strategies, i.e., adopting Option 3, by grouping target points that simultaneously satisfy both the first and second predetermined conditions into a single target point set, can minimize grouping errors.

[0075] Therefore, during the stage of controlling robot movement and establishing an environmental map, information such as the robot's training trajectory, robot business operations, and robot target position can be bound to the environmental map to form an information set. When the robot needs to autonomously traverse the target area, the above information set can be loaded, and the training trajectory can be expanded to obtain the maximum envelope area that the robot can autonomously complete the task. Specifically, the expanded coverage area information can be imported into a newly created coverage area map, and the inner and outer envelopes of the coverage area in the coverage area map can be extracted. After superimposing the robot's expandable area, the final robot coverage area map is obtained. Path planning is then re-executed within the coverage area of ​​this coverage area map to obtain the optimal path coverage trajectory, avoiding the problem of repeated coverage. The robot autonomously tracks the path after the traversal path planning. For target positions with corresponding business operations, when the robot moves to the target position, it executes the business operation corresponding to that target position. This realizes the complete set of business logic for the robot to traverse the entire target area.

[0076] Preferably, after acquiring the training trajectory and environment map in training mode, the process may further include the following steps: receiving a second request instructing the robot to autonomously traverse target locations; loading the world map and the related information bound to the world map; determining one or more target locations that the robot needs to autonomously traverse corresponding to the second service request; adding the one or more target locations and the corresponding service operations to a pending execution list; performing path planning operations on the target points corresponding to each target location in the pending execution list to obtain the robot's movement trajectory for traversing the target locations; the robot tracking the path-planned movement trajectory, and when the robot moves to the one or more target locations, the robot executes the service operations corresponding to the one or more target locations.

[0077] In the preferred implementation, when the robot needs to autonomously traverse target locations, it receives a second request instructing it to do so. The robot loads the constructed target scene map (e.g., the aforementioned world map) and related information bound to the map, including: training trajectory, at least one target location information, and business operation information corresponding to each target location. Then, it needs to determine one or more target locations that the robot needs to autonomously traverse corresponding to the second business request. For example, based on business requirements, one or more target locations can be manually or autonomously selected by the robot, and the one or more target locations and their corresponding business operations are added to a list to be executed. The robot performs path planning operations on the target points corresponding to each target location in the list to be executed to obtain the robot's traversal trajectory. For example, the robot can perform point-to-point path planning based on the sequence of target locations in the list to be executed, according to the target scene map, or it can perform tracking planning based on the training trajectory from the mapping phase to obtain the robot's trajectory.

[0078] The robot automatically moves based on the motion trajectory obtained from the path planning described above. Since the at least one target location information and the corresponding operational information for each target location are all bound to the world map, when the robot moves to each of the at least one target location information bound to the world map, it executes the operational operation corresponding to the coordinates of that target location. For example, the operational operation corresponding to the coordinates of target location B is to raise the right arm; when the robot moves to target location B, it executes the operation of raising the right arm. After the robot has traversed all the target locations, it returns to the initial point. During the autonomous traversal of target locations, the robot continuously updates the current environmental map in real time, ensuring that the environmental map reflects the actual situation of the current scene.

[0079] Preferably, the step of recording the robot's training trajectory may further include the following processing: recording the position information of each path point in the robot's training trajectory in the order in which the robot traverses the path points; then, the step of performing path planning operation to obtain the robot's motion trajectory for each target position in the list to be executed may further include the following processing: for each target position in the list to be executed, according to the distance between target points on the training trajectory and / or the association information between the business operation information corresponding to each target position in the list to be executed, delineating multiple target points into a set of target points to obtain at least one set of target points, and determining the traversal order of target points in each set of target points in the at least one set of target points according to the order in which they traverse; when performing path planning operation, for each set of target points in all the delineated sets of target points, performing point-to-point path planning for each target point according to the traversal order corresponding to each target point in the set of target points, or, maintaining the training trajectory corresponding to each set of target points in all the sets of target points and the traversal order corresponding to each target point in each set of target points in the planned path.

[0080] Preferably, for each target location in the list to be executed, classifying multiple target points into a set of target points according to the distance between target points on the training trajectory and / or the association information between the business operation information corresponding to each target location in the list to be executed may further include:

[0081] For each target point in the list of targets to be executed, the distance between each pair of closest target points is determined on the training trajectory. When the distance between each pair of closest target points in a plurality of adjacent target points is less than a second predetermined distance threshold, the plurality of adjacent target points are determined as target points that satisfy a third predetermined condition.

[0082] The robot's business functions are analyzed to obtain at least one business operation. Related business operations are grouped into the same business function group. A second business function library including one or more business function groups is pre-established. The business operations corresponding to each target position in the list to be executed are matched with the second business function library. Based on the matching results, the business operations corresponding to each target position in the list to be executed are grouped. The target points corresponding to the target position information of the business operations belonging to the same business function group after grouping are determined as target points that meet the fourth predetermined condition.

[0083] The target points that satisfy the third predetermined condition and / or the fourth predetermined condition are delineated into a set of target points.

[0084] Similarly, in the actual implementation of the robot, the business operations corresponding to certain target location information are a series of business operations that need to be executed in a coherent manner. In order to avoid disrupting the business logic of the robot's task execution, corresponding strategies can be set.

[0085] For example, three options can be used:

[0086] Option 1: For each target location in the list to be executed, according to the distance between target points on the training trajectory, multiple target points that meet the third predetermined condition are grouped into a set of target points;

[0087] Option 2: Based on the association information between the business operation information corresponding to each target location in the list to be executed, multiple target points that meet the fourth predetermined condition are grouped into a set of target points;

[0088] Option 3: Only target points that simultaneously satisfy both the third and fourth predetermined conditions are grouped into the same target point set; that is, the intersection of target points satisfying the third and fourth predetermined conditions is taken. It should be noted that for Option 1, if only the distance between target points on the training trajectory is considered, without considering the correlation information between business operations, there may be some error in grouping. Similarly, for Option 2, if only the correlation information between business operations is considered, without considering the distance between target points on the training trajectory, there may also be some error in grouping. Combining the two strategies, i.e., adopting Option 3, by grouping target points that simultaneously satisfy both the third and fourth predetermined conditions into a single target point set, can minimize grouping errors.

[0089] According to an embodiment of this application, a robot task execution device is also provided.

[0090] Figure 10 This is a structural block diagram of a robot task execution device according to an embodiment of this application. Figure 10 As shown, the robot task execution device according to an embodiment of this application includes: an acquisition module 10, used to acquire a training trajectory and an environment map in a training mode; a generation module 12, used to generate a target area for a task to be performed by the robot based on the environment map and the training trajectory, wherein the target area is the maximum envelope area in which the robot can autonomously complete the task; and an execution module 14, used to control the robot to traverse the target area until the robot completes the task to be performed.

[0091] Preferably, the execution module 14 may further include: a partitioning unit 140 ( Figure 10(Not shown in the image), used to divide the aforementioned target area into multiple sub-regions; Control unit 142 ( Figure 10 (Not shown in the image), used to control the robot to traverse each of the aforementioned sub-regions to perform tasks until the robot completes the aforementioned task within the aforementioned target region.

[0092] It should be noted that the preferred embodiment of the combination of the various modules and units in the above-mentioned robot task execution device can be found in [reference needed]. Figures 1 to 9 The description is the same as the implementation method and principle, so it will not be repeated here.

[0093] According to an embodiment of this application, a robot is also provided.

[0094] The robot according to this application includes: a memory and a processor. The memory is used to store computer execution instructions; the processor is used to execute the computer execution instructions stored in the memory, causing the robot to perform the task execution method provided in the above embodiments. See details... Figures 1 to 9 The description is the same as the implementation method and principle, so it will not be repeated here.

[0095] According to embodiments of this application, a computer-readable storage medium is also provided.

[0096] The computer-readable storage medium according to this application stores computer-executable instructions, and when the processor executes the computer-executable instructions, it implements the robot task execution method provided in the above embodiments.

[0097] The storage medium containing computer-executable instructions in this application embodiment can be used to store the computer execution instructions of the robot task execution method provided in the foregoing embodiments. For details, please refer to... Figures 1 to 9 The description is the same as the implementation method and principle, so it will not be repeated here.

[0098] In summary, using the embodiments provided in this application, based on the training path and grid map, a maximum envelope area (i.e., target area) that the robot can autonomously complete tasks is generated. The target area is then intelligently partitioned, and the task execution order of the partitioned areas is sorted. Based on this, a suitable traversal method (e.g., bow-shaped traversal or circular traversal) is automatically selected for each area. This allows for the merging of multiple dispersed target areas, followed by the splitting of the merged target area into multiple independent partitions, realizing a "divide and conquer" design philosophy. This enables the robot to stably and efficiently perform tasks (e.g., disinfection, cleaning, mopping, etc.) in various environmental areas (e.g., structurally complex environmental areas), and is applicable to a variety of application scenarios.

[0099] Furthermore, during the stage of controlling robot movement and building an environmental map, information such as the robot's training trajectory, robot operations, and target location can be bound to the environmental map to form an information set. When the robot needs to autonomously traverse the target area, the aforementioned information set can be loaded. Based on the above scheme for obtaining the maximum envelope area that the robot can autonomously complete the task, path planning can be re-executed within the maximum envelope area to obtain the optimal path coverage trajectory, thus avoiding the problem of repeated coverage. Moreover, when the robot needs to autonomously traverse the target location, point-to-point path planning or trajectory tracking planning based on the movement trajectory during the mapping stage can be performed on the scene map based on the target location and operation logic to obtain the robot's movement trajectory.

[0100] In addition, during the robot's autonomous movement, the environmental map can be updated in real time, and the movement trajectory can be planned in real time based on the updated environmental map.

[0101] The above-disclosed embodiments are merely a few specific examples of this application. However, this application is not limited thereto, and any variations that can be conceived by those skilled in the art should fall within the protection scope of this application.

Claims

1. A robot task execution method, wherein, include: Acquire the training trajectory and environment map in the training mode, wherein when the robot starts moving from the initial position, the training trajectory of the robot is recorded during the robot's movement. Combining the environmental map and the training trajectory, a target area for the robot's task is generated, wherein the target area is the maximum envelope area in which the robot can autonomously complete the task. Within the environmental map, the training trajectory is expanded to determine the number of grid layers required for each training trajectory to expand outward. The grids within the expanded area are used as virtual expansion grids for the training trajectory. The information of the virtual expansion grids for the training trajectory is imported into a newly created coverage area map to extract the inner and outer envelopes of the coverage area. The inwardly expandable area of ​​the inner envelope and the outwardly expandable area of ​​the outer envelope are superimposed to obtain the maximum envelope area in which the robot can autonomously complete the task. In this process, based on the environmental map, the training trajectories during the robot mapping process are expanded and merged based on the robot's own horizontal dimensions to form the coverage area map during the robot mapping process. The robot is controlled to traverse the target area until it completes the task to be performed.

2. The method according to claim 1, wherein, Within the environmental map, the training trajectory is expanded to obtain the maximum envelope region within which the robot can autonomously complete the task, including: The grid information of the M-layer grid on the left side of the training trajectory and the N-layer grid on the right side of the training trajectory are respectively imported into the newly created coverage area map, wherein the single coverage width of the robot is equal to M+N+1, and M and N are both integers greater than or equal to 1; Extract the inner and outer envelopes of the coverage area from the coverage area map, and superimpose the inwardly expandable region of the inner envelope and the outwardly expandable region of the outer envelope to obtain the maximum envelope area in which the robot can autonomously complete the task.

3. The method according to claim 1, wherein, Obtaining the training trajectory and environment map in training mode includes: When controlling the robot to start moving from the initial position, a world coordinate system is established based on the initial position, and a world map is constructed based on the world coordinate system; During the robot's movement, the robot's training trajectory is recorded, along with at least one target position information on the training trajectory, and the business operations corresponding to each target position information. Relevant information is bound to the world map, including: the training trajectory, the at least one target location information, and the business operation information corresponding to each target location information, which are bound to the world map.

4. The method according to claim 3, wherein, Before generating the target area for the robot's task to be performed, the method further includes: receiving a first request instructing the robot to autonomously traverse the target area; loading the world map and the relevant information bound to the world map; The control of the robot to traverse the target area until the robot completes the task to be performed includes: re-executing traversal path planning within the target area; the robot autonomously tracking the path after traversal path planning; and for each of the at least one target location information, when the robot moves to the target location, the robot performs the business operation corresponding to the target location information.

5. The method according to claim 4, wherein, The process of recording the robot's training trajectory includes: recording the position information of each path point in the robot's training trajectory in the order in which the robot traverses the path points; Within the target area, re-executing traversal path planning includes: for all target points corresponding to the at least one target location information, according to the distance between target points on the training trajectory, and / or the association information between the business operation information corresponding to each of the target location information, dividing the multiple target points into a set of target points to obtain at least one set of target points, and determining the traversal order of the target points in each set of target points according to the order; when re-executing traversal path planning, performing point-to-point path planning for the target points in each set of target points according to the traversal order of the target points in each set of target points, or maintaining the training trajectory corresponding to each set of target points and the traversal order of the target points in each set of target points in the re-planned path.

6. The method according to claim 5, wherein, For all target points corresponding to the at least one target location information, based on the distance between target points on the training trajectory and / or the association information between the business operation information corresponding to each target location information, the multiple target points are respectively divided into a set of target points, including: For all target points corresponding to the at least one target location information, the distance between each pair of closest target points is determined on the training trajectory. When the distance between each pair of closest target points in a plurality of adjacent target points is less than a first predetermined distance threshold, the plurality of adjacent target points are determined as target points that satisfy the first predetermined condition. The disassembly robot's business functions yield at least one business operation. Related business operations are grouped into the same business function group. A first business function library including one or more business function groups is pre-established. The business operations corresponding to each of the recorded target location information are matched with the first business function library. Based on the matching results, the business operations corresponding to each of the target location information are grouped. The target points corresponding to the target location information of the grouped business operations belonging to the same business function group are determined as target points that meet the second predetermined condition. Target points that satisfy the first predetermined condition and / or the second predetermined condition are designated in a set of target points.

7. The method according to claim 3, wherein, After acquiring the training trajectory and environment map in training mode, the following is also included: Receive a second request instructing the robot to autonomously traverse the target location; Load the world map and the related information bound to the world map; Determine one or more target locations that the robot needs to autonomously traverse in accordance with the second request; Add the one or more target locations and the corresponding business operations to the list to be executed; For each target point in the list of targets to be executed, a path planning operation is performed to obtain the motion trajectory of the robot traversing the target locations; The robot tracks the planned path and moves along its trajectory. When the robot moves to one or more target locations, it performs the business operation corresponding to those target locations.

8. The method according to claim 7, wherein, The process of recording the robot's training trajectory includes: recording the position information of each path point in the robot's training trajectory in the order in which the robot traverses the path points; For each target location in the list of targets to be executed, the path planning operation to obtain the robot's traversal trajectory for the target locations includes: for each target location in the list of targets to be executed, according to the distance between target points on the training trajectory and / or the association information between the business operation information corresponding to each target location in the list of targets to be executed, multiple target points are respectively assigned to a set of target points to obtain at least one set of target points, and the traversal order of target points in each set of target points in the at least one set of target points is determined according to the order; when performing the path planning operation, for each set of target points in all assigned target point sets, point-to-point path planning is performed on each target point according to the traversal order corresponding to each target point in the set of target points, or, the training trajectory corresponding to each set of target points in all target point sets and the traversal order corresponding to each target point in each set of target points are maintained in the planned path.

9. The method according to claim 8, wherein, For each target point corresponding to a target location in the list to be executed, based on the distance between target points on the training trajectory and / or the association information between the business operation information corresponding to each target location in the list to be executed, multiple target points are respectively divided into a set of target points, including: For each target point in the list of targets to be executed, the distance between each pair of closest target points is determined on the training trajectory. When the distance between each pair of closest target points in a plurality of adjacent target points is less than a second predetermined distance threshold, the plurality of adjacent target points are determined as target points that satisfy a third predetermined condition. The robot's business functions are analyzed to obtain at least one business operation. Related business operations are grouped into the same business function group. A second business function library including one or more business function groups is pre-established. The business operations corresponding to each target position in the list to be executed are matched with the second business function library. Based on the matching results, the business operations corresponding to each target position in the list to be executed are grouped. The target points corresponding to the target position information of the business operations belonging to the same business function group after grouping are determined as target points that meet the fourth predetermined condition. The target points that satisfy the third predetermined condition and / or the fourth predetermined condition are delineated into a set of target points.

10. The method according to claim 1, wherein, After generating the target area for the robot's task, the following steps are also included: Determine the outer boundary of the target area and the restricted area corresponding to the task to be executed; A restricted area fence shall be erected on the outer boundary and within the restricted area.

11. The method according to claim 1, wherein, Controlling the robot to traverse the target area and perform tasks until the robot completes the tasks includes: The target region is divided into multiple sub-regions; The robot is controlled to traverse each of the sub-regions to perform tasks until the robot completes the task to be performed in the target region.

12. The method according to claim 11, wherein, Traversing each of the sub-regions to execute the task until the robot completes the task within the entire target area includes: Determine the order in which the robot performs tasks in each of the sub-regions; The robot is controlled to traverse the sub-regions one by one in a predetermined order until the robot completes the task to be performed in all the sub-regions.

13. The method according to claim 11, wherein, Controlling the robot to traverse each of the sub-regions to perform tasks until the robot completes the task to be performed in the target region includes: S1: Based on the robot's initial positioning information, determine the sub-region closest to the robot; S2: Control the robot to traverse the nearest sub-region to perform the task; S3: After completing the task in the nearest sub-region, determine the location information of the end point when the robot task is completed, and determine the next sub-region that is closest to the end point; S4: Repeat steps S2 to S3 until the robot completes the task to be performed in all sub-regions of the target area.

14. A robot task execution device, wherein, include: The acquisition module is used to acquire the training trajectory and environment map in the training mode. When the robot starts moving from the initial position, the training trajectory of the robot is recorded during the robot's movement. The generation module is used to generate a target area for the robot's task to be performed based on the environment map and the training trajectory. The target area is the maximum envelope area that the robot can autonomously complete the task. Within the environment map, the training trajectory is expanded to determine the number of grid layers that each training trajectory needs to be expanded outward. The grids in the expanded area are used as virtual expansion grids for the training trajectory. The information of the virtual expansion grids for the training trajectory is imported into a newly created coverage area map to extract the inner and outer envelopes of the coverage area. The inward expandable area of ​​the inner envelope and the outward expandable area of ​​the outer envelope are superimposed to obtain the maximum envelope area that the robot can autonomously complete the task. In this case, based on the environment map, the training trajectories during the robot mapping process are expanded based on the robot's own horizontal dimensions and then merged to form the coverage area map during the robot mapping process. The execution module is used to control the robot to traverse the target area until the robot completes the task to be performed.

15. A robot comprising: Memory and processor, among which, The memory is used to store computer-executed instructions; The processor is configured to execute computer execution instructions stored in the memory, causing the robot to perform the method as described in any one of claims 1 to 13.

16. A computer-readable storage medium, wherein, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, implement the method as described in any one of claims 1 to 13.

Citation Information

Patent Citations

  • Disinfection method and equipment of mobile disinfection robot

    CN111562784A

  • Cleaning planning method with region traversal priority and chip

    CN111603099A

  • Inspection method and device, aircraft and storage medium

    CN113741490A