Body-equipped robot advancing control method and device, body-equipped robot and medium

By introducing soft collision detection and path re-planning mechanisms into the robot, the multiple collision problems caused by the variety of obstacles when performing long-distance navigation tasks are solved, and higher pass efficiency and task success rate are achieved.

CN119806159AActive Publication Date: 2025-04-11WOCAO TECH (SHENZHEN) CO LTD

Patent Information

Application Number
CN202510280170.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-11
Publication Date
2025-04-11
Estimated Expiration
2045-03-11

AI Technical Summary

Technical Problem

When existing robots perform long-distance navigation tasks, they often cause multiple unnecessary collisions due to the variety of obstacles, which makes them inefficient in passage or cannot complete the task.

Method used

By introducing a soft collision detection mechanism, mark the occlusion point clouds corresponding to obstacles, and re-plan the path, trying to have a real collision with the obstacles corresponding to the occlusion point cloud to confirm the possibility of passage.

Benefits of technology

It reduces the number of collisions between robots and obstacles, improves traffic efficiency, and ensures that the task can be completed smoothly.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119806159A_ABST
    Figure CN119806159A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of robots, in particular to an advancing control method and device for a robot with a body, the robot with the body and a medium. The method comprises the steps that a task instruction is responded, and the robot with the body is controlled to advance according to a planned path; when the current obstacle is detected and the soft collision condition is met, re-planning the path; and if the re-planned new path intersects with any historically marked shielding point cloud, controlling the robot with the body to advance according to the new path, and trying to really collide with a marked obstacle corresponding to the shielding point cloud to confirm whether the robot with the body can pass or not. Therefore, the problem that the passing efficiency is low due to the fact that the robot collides with the obstacle too many times in the working process can be effectively 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, and in particular to a method and device for controlling movement of an embodied robot, an embodied robot and a medium. Background Art

[0002] Existing robots often face long-distance navigation tasks when performing work tasks, such as returning to a charging point for charging, navigating to a distant target area for cleaning, etc.

[0003] Due to the overall complexity of the home environment and the variety of obstacles, such as pets and toys, the robot may have multiple unnecessary collisions during the execution of the task, or even collide with the same dynamic obstacle multiple times, resulting in too many collisions, low traffic efficiency or failure to complete the task. Summary of the invention

[0004] In view of this, the embodiments of the present application provide an embodied robot movement control method, device, embodied robot and medium, which can effectively solve the problem of excessive collisions with obstacles during the robot's operation, resulting in low travel efficiency.

[0005] In a first aspect, an embodiment of the present application provides a method for controlling movement of an embodied robot, comprising: Responding to the task instruction, controlling the embodied robot to move along the planned path; When a current obstacle is detected and a soft collision condition is met, the occlusion point cloud corresponding to the current obstacle is marked and the path is replanned; If the re-planned new path intersects with any historically marked occlusion point cloud, the embodied robot is controlled to move along the new path and attempts to actually collide with the marked obstacle corresponding to the occlusion point cloud to confirm whether it is passable.

[0006] In some embodiments, it also includes: If the real collision occurs and the embodied robot successfully passes through the blocked point cloud area, the embodied robot is controlled to continue moving along the new path.

[0007] In some embodiments, it also includes: If the real collision does not occur, the embodied robot is controlled to continue to move along the new path to determine that the marked obstacle moves out of the blocked point cloud area.

[0008] In some embodiments, it also includes: If the real collision occurs and the embodied robot does not pass through the blocked point cloud area, the path is replanned according to the cost map to try to pass; wherein the cost map includes the collision cost determined according to the marked obstacles where the real collision occurred.

[0009] In some embodiments, if the real collision occurs, the method further includes: updating the corresponding collision cost in the cost map according to the marked obstacle where the real collision occurs, and the updated collision cost is higher than a preset threshold.

[0010] In some embodiments, the further replanning of the path according to the cost map includes: During the calculation process of the additional re-planned path, if it is calculated that the collision costs of all the additionally planned soft collision paths do not meet the pass conditions, it is determined that the task has failed and the task is terminated; wherein, the soft collision path is a path that intersects with the marked occluded point cloud area; the collision cost does not meet the pass conditions if the collision cost is higher than a preset threshold.

[0011] In some embodiments, marking the occluded point cloud corresponding to the current obstacle and replanning the path further comprises: If it is detected again that there are other obstacles on the current new path and the soft collision condition is met, the path replanning operation is performed again, and the occlusion point cloud corresponding to the other detected obstacles is marked until it is determined that all replanned paths meet the soft collision condition.

[0012] In some embodiments, satisfying the soft collision condition includes: When the distance between the embodied robot and the currently detected occlusion point cloud of the obstacle is less than a preset distance, and the lateral size of the occlusion point cloud is not less than a preset lateral avoidance length, it is determined that the soft collision condition is met.

[0013] In a second aspect, an embodiment of the present application provides a moving control device for an embodied robot, comprising: A travel control module, used to respond to task instructions and control the embodied robot to travel along a planned path; A path replanning module is used to mark the occlusion point cloud corresponding to the current obstacle and replan the path when the current obstacle is detected and the soft collision condition is met; The collision execution module is used to control the embodied robot to move along the new path if the re-planned new path intersects with any historically marked occlusion point cloud, and to try to have a real collision with the marked obstacle corresponding to the occlusion point cloud to confirm whether it can pass.

[0014] In a third aspect, an embodiment of the present application provides an embodied robot, comprising a processor and a memory, wherein the memory stores a computer program, and the processor is used to execute the computer program to implement an embodied robot movement control method provided in the first aspect of the present application.

[0015] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium storing a computer program. When the computer program is executed on a processor, it implements an embodied robot movement control method provided in accordance with the first aspect of the present application.

[0016] The embodiments of the present application have the following beneficial effects: This application controls the embodied robot to move along the planned path by responding to task instructions; when the current obstacle is detected and the soft collision condition is met, the occlusion point cloud corresponding to the current obstacle is marked and the path is re-planned; if the re-planned new path intersects with any historically marked occlusion point cloud, the embodied robot is controlled to move along the new path, and attempts to have a real collision with the marked obstacle corresponding to the occlusion point cloud to confirm whether it can pass. This application is provided with a soft collision detection mechanism, which can reduce the number of collisions with obstacles, and when the re-planned new path in this application intersects with any historically marked occlusion point cloud, an attempt is made to have a real collision with the marked obstacle corresponding to the occlusion point cloud, so as to attempt to pass. For example, when the marked obstacle is removed, or the active obstacle leaves on its own, or the marked obstacle is a lightweight obstacle (such as a foam box, etc.), this operation may enable the embodied robot to quickly pass through the area where the obstacle is located, thereby improving the travel efficiency and reducing the number of collisions. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0018] Figure 1 The figure shows a structural schematic diagram of an embodied robot proposed in an embodiment of the present application; Figure 2 A flow chart showing a method for controlling movement of an embodied robot according to an embodiment of the present application is shown; Figure 3 A flowchart of an attempt to pass through the embodied robot moving control method according to an embodiment of the present application is shown; Figure 4-1 A first part of the flow chart of the embodied robot travel control method according to an embodiment of the present application is shown; Figure 4-2 The second part of the flow chart of the embodied robot moving control method according to the embodiment of the present application is shown; Figure 5 A first working scene diagram of the embodied robot in the embodied robot moving control method according to an embodiment of the present application is shown; Figure 6 A second working scene diagram of the embodied robot in the embodied robot moving control method according to an embodiment of the present application is shown; Figure 7 A third working scene diagram of the embodied robot in the embodied robot moving control method according to an embodiment of the present application is shown; Figure 8 A structural schematic diagram of the embodied robot movement control device according to an embodiment of the present application is shown.

[0019] Description of main component symbols: 10-embodied robot; 11-processor; 12-memory; 13-sensing unit; 14-actuator; 810-travel control module; 820-path replanning module; 830-collision execution module. DETAILED DESCRIPTION

[0020] The technical solutions in the embodiments of the present application will be described clearly and completely below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all of the embodiments.

[0021] The components of the embodiments of the present application generally described and shown in the drawings herein may be arranged and designed in various configurations. Therefore, the following detailed description of the embodiments of the present application provided in the drawings is not intended to limit the scope of the application claimed for protection, but merely represents the selected embodiments of the present application. Based on the embodiments of the present application, all other embodiments obtained by those skilled in the art without making creative work belong to the scope of protection of the present application.

[0022] Hereinafter, the terms "including", "having" and their cognates that can be used in various embodiments of the present application are intended only to indicate specific features, numbers, steps, operations, elements, components or a combination of the foregoing items, and should not be understood as first excluding the existence of one or more other features, numbers, steps, operations, elements, components or a combination of the foregoing items or increasing the possibility of one or more features, numbers, steps, operations, elements, components or a combination of the foregoing items. In addition, the terms "first", "second", "third" and the like are only used to distinguish descriptions and cannot be understood as indicating or implying relative importance.

[0023] Unless otherwise defined, all terms (including technical terms and scientific terms) used herein have the same meanings as those generally understood by those skilled in the art to which the various embodiments of the present application belong. The terms (such as those defined in generally used dictionaries) will be interpreted as having the same meanings as the contextual meanings in the relevant technical field and will not be interpreted as having idealized meanings or overly formal meanings unless clearly defined in the various embodiments of the present application.

[0024] In conjunction with the accompanying drawings, some embodiments of the present application are described in detail below. In the absence of conflict, the following embodiments and features in the embodiments can be combined with each other.

[0025] When an embodied robot is performing a long-distance navigation task, it will perform corresponding avoidance actions for obstacles (including dynamic obstacles and static obstacles) in the working scene. However, the lateral avoidance coverage in the prior art is small, and there may be a situation where the local obstacle avoidance algorithm cannot completely avoid or block the path; in addition, the prior art also collides with the same obstacle too many times, reducing the traffic efficiency. Therefore, the present application provides an embodied robot travel control method, device, embodied robot and medium.

[0026] The embodied robot in this application refers to a robot with a physical body (entity) that realizes intelligent behavior through real-time perception, interaction and action with the real environment. Its core idea comes from the theory of embodied intelligence, that is, intelligence not only depends on algorithms and data processing, but also needs to learn and evolve through the dynamic interaction between the body and the environment. Among them, the physical entity means that the embodied robot has a real body (such as a robotic arm, a mobile chassis, a sensor, etc.), and can act in the physical world like a human or an animal (such as walking, grasping, avoiding obstacles, etc.). In addition, the environment can be perceived in real time through sensors such as vision, touch, hearing, and force perception, and the behavior can be adjusted according to feedback.

[0027] Figure 1 Shown is a structural schematic diagram of the embodied robot 10 proposed in an embodiment of the present application.

[0028] Exemplarily, the embodied robot 10 includes a processor 11, a memory 12, a perception unit 13 and an actuator 14, wherein the perception unit 13 is used to detect environmental information of the embodied robot 10; the actuator 14 is used to perform corresponding actions; the memory 12 stores a computer program, and the processor 11 runs the computer program to make the embodied robot 10 move according to the embodied robot 10 movement control method of the following embodiment.

[0029] Among them, the processor 11 can be an integrated circuit chip with signal processing capabilities. The processor 11 can be a general-purpose processor, including a central processing unit (CPU), a graphics processing unit (GPU), a network processor (NP), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or at least one of other programmable logic devices, discrete gates or transistor logic devices, and discrete hardware components. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc., which can implement or execute the methods, steps and logic block diagrams disclosed in the embodiments of the present application.

[0030] The memory 12 may be, but is not limited to, a random access memory (RAM), a read only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable read-only memory (EEPROM), etc. The memory 12 is used to store a computer program, and the processor 11 may execute the computer program accordingly after receiving an execution instruction.

[0031] Among them, the perception unit 13 includes a detection sensor. The detection sensor is mainly used to detect obstacles on the path of the embodied robot 10. For example, for a sweeping robot, its detection sensor includes a laser radar, which scans the environment around the path of travel by the laser radar to obtain an occlusion point cloud, and determines the area occupied by the obstacle according to the occlusion point cloud, which helps the embodied robot 10 avoid the obstacle. In some embodiments, the detection sensor may also include an infrared sensor, a camera, etc.

[0032] It should be understood that the embodied robot 10 mentioned above may include, but is not limited to, a sweeping robot (also called a cleaning robot), a mopping robot driven by a sweeping robot (i.e., a sweeping and mopping robot), a food delivery robot, an autonomously driven carrying robot, a companion robot, a service robot, etc. It is understood that the various robots listed above are not limited in their existence form, for example, they may be wheeled robots, bipedal humanoid robots, or multi-legged robots, etc.

[0033] In this application, by introducing local obstacle maps and soft collisions, the path is replanned according to the global map (for example, the basic cost map) based on the triggering conditions of the soft collision, and the point cloud features of the currently detected obstacles are considered at this time to generate a more optimal path that completely avoids obstacles. This application can reduce unnecessary collisions between the embodied robot 10 and various obstacles during operation, reduce the number of collisions with the same dynamic obstacle, improve the safety performance of the embodied robot 10, and improve the travel efficiency. In order to improve the travel efficiency of the embodied robot 10, especially to improve the efficiency of bypassing obstacles that are longer in the lateral direction, this application also provides an embodied robot travel control method.

[0034] The following describes the movement control method of the embodied robot in conjunction with some specific embodiments.

[0035] Figure 2 A flow chart of the embodied robot travel control method of an embodiment of the present application is shown. Exemplarily, the embodied robot travel control method includes the following steps: S110, responding to the task instruction, controlling the embodied robot 10 to move along the planned path.

[0036] Among them, the task instruction can be sent to the embodied robot 10 by an external object (such as a user) through a terminal device (such as a mobile phone, a tablet, a smart speaker, etc.) or a button on the embodied robot 10.

[0037] The embodied robot 10 of the present application includes but is not limited to a sweeping robot, a service robot, and a humanoid robot. For different embodied robots 10, their task instructions are often different. For example, if the embodied robot 10 is a sweeping robot, the task instructions may include but are not limited to performing a long-distance area cleaning task, a recharging task, a wall cleaning task, etc.

[0038] After receiving the task instruction, the embodied robot 10 is controlled to move along the path planned according to the global map (e.g., the basic cost map). The path is planned using a path-finding algorithm, wherein the present application does not limit the type of path-finding algorithm used. It can be understood that there are no obstacles on the path planned based on the global map (eg, the basic cost map).

[0039] It should be understood that the basic cost map in the application embodiment is a cost map determined based on a grid map obtained by first scanning the workspace of the embodied robot 10. The grid map includes objects such as fixed obstacles and fixed walls.

[0040] The cost map introduces the concept of cost based on the grid map. Each grid cell not only indicates whether it is occupied by an obstacle, but also the cost required to move from one location to that grid. The cost can be a weighted sum of multiple factors, such as distance, obstacle density, difficulty of passage, etc.

[0041] Cost maps are used in path planning algorithms to find the path with the lowest total cost, also known as the path with the lowest cost.

[0042] A raster map is a data structure that discretizes the current physical workspace into regular grid cells. Each grid cell can represent a local area in the environment. Raster maps can represent environmental information in different ways, such as occupancy probability maps, height maps, etc. Raster maps are usually used to represent static information of the environment, such as terrain, location of buildings, etc.

[0043] S120: When the current obstacle is detected and the soft collision condition is met, the occlusion point cloud corresponding to the current obstacle is marked and the path is replanned.

[0044] Exemplarily, when the embodied robot 10 receives the task instruction, it responds to the task instruction. First, the embodied robot 10 obtains the current environment information of the embodied robot 10 through the detection sensor. For example, taking the sweeping robot as an example, the point cloud data of obstacles in the current environment are collected through its own laser radar.

[0045] Exemplarily, satisfying the soft collision condition includes: When the distance between the embodied robot 10 and the currently detected occlusion point cloud of the obstacle is less than a preset distance, and the lateral size of the occlusion point cloud is not less than a preset lateral avoidance length, it is determined that the soft collision condition is met.

[0046] Exemplarily, the embodied robot 10 detects point cloud occlusion through the laser radar, and the local obstacle avoidance algorithm cannot completely avoid the temporary obstacle with a wide lateral coverage distance, then the current path of travel is cut off by the temporary obstacle, and then the direct distance between the embodied robot 10 and the active temporary obstacle is less than 3 cm, then the soft collision condition is met and a soft collision is triggered.

[0047] When replanning the path, there are no obstacles blocking the travel on the planned new path. Later, an obstacle is detected on the planned path and the soft collision condition is met, which means that a temporary obstacle appears on the path, such as a moving obstacle, such as a large pet, temporarily stored items, etc.

[0048] In other words, if the soft collision condition is met, a temporary obstacle appears on the current path, and the lateral size of the obstacle is large, so that the local obstacle avoidance algorithm cannot avoid the obstacle in the first time, and thus the embodied robot 10 is very close to the obstacle. The preset distance can be 3 cm, and this application does not limit this. A soft collision is when the embodied robot 10 is close to the current obstacle, but has not yet collided with the obstacle.

[0049] If the temporary obstacle is very short in horizontal length, the local obstacle avoidance algorithm of the embodied robot 10 will be able to avoid it, and the distance between the embodied robot 10 and the obstacle will not be less than L_MIN (preset distance). If the obstacle is very wide and long, the local obstacle avoidance algorithm will not be able to completely avoid it in the first time, which will cause the robot to move closer to the obstacle, causing the distance to be less than L_MIN, which will trigger a soft collision.

[0050] Exemplarily, marking the occlusion point cloud corresponding to the detected current obstacle includes: The occlusion point cloud in the preset area is obtained with the embodied robot 10 as the center; the occlusion point cloud is mapped and saved in the grid map to obtain a local obstacle map, and the area occupied by the current obstacle is marked in the local obstacle map. In this task, if a new obstacle is detected again in the future, the corresponding occlusion point cloud is also mapped and saved in the local obstacle map, and the corresponding area of ​​each obstacle in the grid map is obtained by superposition.

[0051] For example, the embodied robot 10 is taken as the center, and a rectangle with a side length of 1m is divided around it. The point cloud data in the rectangular frame is mapped to the grid map to obtain a local obstacle map. The point cloud data in the rectangular frame includes the point cloud data of the obstacle. Specifically, the surrounding obstacles are detected by the laser radar, and the laser radar will return the point cloud data in the above rectangular frame. Each point represents a position on an obstacle, thereby describing the position and size of the obstacle. The collected point cloud data will be converted into points in a coordinate system, usually in the local coordinate system of the embodied robot 10. The point cloud data is converted from the local coordinate system to the global coordinate system. This means that the point cloud data read by the laser radar is adjusted according to the position and direction of the embodied robot 10 to map to the grid map. For each point cloud data, the corresponding grid is found according to its coordinates, and these grids are marked as "occupied". Generally, if a point falls within a grid, then the grid is marked as "occupied", thereby obtaining a local obstacle map. In the process of executing the same task, each time a soft collision is triggered, the corresponding detected obstacle is added to the local obstacle map.

[0052] Among them, the local obstacle map mainly identifies the location of fixed or movable obstacles in the current workspace. It can be generated based on a grid map by marking which grid cells are occupied by obstacles. All obstacle data on the local obstacle map in this application do not affect the path cost. The local obstacle map is a point cloud map added during a soft collision and is only used to estimate that there may be obstacles at this location.

[0053] Furthermore, when replanning the path in step S120, the occlusion point cloud of the currently detected obstacle is also considered to bypass the obstacle with a large horizontal size when replanning the path. Exemplarily, the occlusion point cloud corresponding to the current obstacle is mapped to the cost map to obtain a temporary cost map, and a preset path finding algorithm is used according to the temporary cost map to plan the path. For example, the preset path finding algorithm is Pathfinding algorithm. This temporary cost map is only used for the current re-planning of the path. In other words, the occlusion point cloud of the currently detected obstacle is considered when re-planning the path to generate a better path that completely avoids the current obstacle.

[0054] S130, if the re-planned new path intersects with any historically marked occlusion point cloud, the embodied robot 10 is controlled to move along the new path and attempts to actually collide with the marked obstacle corresponding to the occlusion point cloud to confirm whether it is passable.

[0055] In other words, in order to reach the destination, soft collisions are ignored, and a re-planned new path is selected to pass through the area mapped on the grid map by the occlusion point cloud of any historically marked obstacle. That is, the re-planned new path intersects with the occlusion point cloud of any historically marked obstacle, and attempts are made to have a real collision with the marked obstacle corresponding to the occlusion point cloud to confirm whether it is passable and whether the above-mentioned temporary obstacle has moved away or can be knocked away.

[0056] In one implementation, marking the occlusion point cloud corresponding to the current obstacle and replanning the path, and then further comprising: If it is detected again that there are other obstacles on the current new path and the soft collision condition is met, the operation of re-planning the path is performed again, and the occlusion point clouds corresponding to the detected other obstacles are marked until it is determined that all re-planned paths meet the soft collision condition. In other words, when it is detected that there are obstacles on the current path and a soft collision is triggered, the occlusion point cloud corresponding to the current obstacle is marked, and the path is re-planned according to the size of the occlusion point cloud of the current obstacle to avoid the current obstacle. This is repeated until all paths trigger a soft collision, and then the content corresponding to step S130 is executed.

[0057] Furthermore, in step S130, if the replanned new path intersects with any occlusion point cloud of the historical mark, controlling the embodied robot to move along the new path includes: When it is determined that all replanned paths meet the soft collision conditions, if the replanned new path intersects with any historically marked occlusion point cloud, the embodied robot is controlled to move along the new path. That is, after multiple replanning of the path, if soft collisions are triggered, no more time is wasted, but the robot is forced to try to pass through the marked occlusion point cloud area (the area corresponding to the occlusion point cloud or the area occupied by the occlusion point cloud). If the soft collision conditions are met multiple times and the path is replanned multiple times, but the robot still fails to pass and cannot reach the destination, the robot can choose to pass through the marked occlusion point cloud to try a hard collision and pass through, thereby improving the success rate of the passage.

[0058] In order to further improve the traffic efficiency, after the attempt to actually collide with the marked obstacle corresponding to the occlusion point cloud in step S130, for example, in one embodiment, Figure 3 As shown, the following steps are included: S131, determine whether a real collision occurs between the embodied robot 10 and the marked obstacle corresponding to the occluding point cloud, and determine whether the embodied robot passes through the occluding point cloud area; if a real collision occurs and the embodied robot passes through the occluding point cloud area, execute S132; if no real collision occurs, execute S133; if a real collision occurs and the occluding point cloud area is not passed, execute S134.

[0059] S132: If a real collision occurs and the embodied robot successfully passes through the blocked point cloud area, the embodied robot is controlled to continue moving along the new path.

[0060] For example, when a real collision occurs, the embodied robot 10 will knock the obstacle away. For example, if the obstacle is light, the embodied robot can knock the obstacle away, or if the pet leaves on its own after being hit, the embodied robot 10 can successfully pass through.

[0061] S133, if no real collision occurs, the embodied robot 10 is controlled to continue to move along the new path to determine that the marked obstacle moves out of the blocked point cloud area.

[0062] For example, before the embodied robot 10 reaches the blocked point cloud area, the obstacle is moved away, or the obstacle is a dynamic obstacle, such as a pet leaving on its own, then the embodied robot 10 can directly pass through successfully without a real collision.

[0063] S134, if a real collision occurs and the embodied robot does not pass through the blocked point cloud area, then according to the cost map, another path is replanned (the other replanned path here is different from the replanned path in step S120) to try to pass; wherein the cost map includes a collision cost determined according to the marked obstacles where the real collision occurs.

[0064] For example, if the obstacle is still in the area corresponding to the occlusion point cloud and cannot be knocked away by the collision, it means that the obstacle is a fixed obstacle and is heavy. In this case, the occlusion point cloud corresponding to the obstacle is mapped to the grid map, and the collision cost in the cost map is updated according to the mapped area. The updated collision cost exceeds the cost threshold so that the obstacle can be avoided the next time the path is replanned.

[0065] Furthermore, in order to reduce the number of collisions that occur when the task is executed next time, in the embodiment of the present application, if a real collision occurs, the method further includes: updating the corresponding collision cost in the cost map according to the marked obstacle where the real collision occurs, and the updated collision cost is higher than the preset threshold. At the beginning of the task, the cost map is the basic cost map. When a real collision is determined for the first time, the collision cost is updated on the basic cost map. If the updated collision cost exceeds the cost threshold, the cost value at this location is high, and the re-planning of the path will not select this location.

[0066] Exemplarily, based on the cost map, the path is additionally replanned, including: In the calculation process of the additional re-planned path, if it is calculated that the collision costs of all the additionally planned soft collision paths do not meet the pass conditions, it is determined that the task has failed and the task is terminated; wherein the soft collision path is a path that intersects with the marked occluded point cloud area; the collision cost does not meet the pass conditions when the collision cost is higher than the preset threshold. In other words, if the collision cost does not meet the pass conditions, the additionally planned path passes through the occluded point cloud area where a real collision has occurred. In the case where all paths are determined to trigger a soft collision (close to the obstacle, but no real collision occurs), and an attempt is made to collide with a marked obstacle but does not pass, in order to improve the pass efficiency, the path is re-planned. It can be understood that the additionally re-planned path can pass through the previously marked occluded point cloud area, and no real collision has occurred in the occluded point cloud area. That is, choose to pass through obstacles other than the above-mentioned marked obstacle.

[0067] When planning another path, you can choose to pass through the previously marked obstacles and select a target path with the lowest cost based on the collision cost to try to pass through. If the collision cost of each soft collision path is greater than the preset threshold according to the calculation, it means that there is an area where a real collision occurs on the path, and the pass condition is not met, and the task fails.

[0068] Exemplarily, the marked obstacle is removed by: Whenever the soft collision condition is met, the path is replanned and the occlusion point cloud corresponding to the current obstacle detected is mapped and accumulated and saved to the grid map to obtain the obstacle map. In response to the failure of the task, the mapping area of ​​the marked obstacle on the local obstacle map where no real collision occurred is cleared.

[0069] The following is a specific example of the embodied robot 10 travel control method of the present application. In this example, the embodied robot 10 detects that the battery is insufficient and needs to return to the charging point for charging, but the distance to the charging point is long. Figure 4-1 , Figure 4-2 As shown, the following steps are included: S201, receiving a charging task instruction, controlling the embodied robot 10 to move based on the planned path 1 to try to return to the charging point.

[0070] When executing a task, the planned path is obtained based on the basic cost map using a preset path-finding algorithm, and the embodied robot 10 is controlled to move according to the planned path. For example, the preset path-finding algorithm is Pathfinding algorithm. When the embodied robot 10 is performing a task, the embodied robot 10 is controlled to move normally along the planned path, and there are no obstacles on the path at this time, such as Figure 5 The path shown l 1.

[0071] S202, determining whether an obstacle is detected during the traveling process and determining whether a soft collision condition is met.

[0072] like Figure 6 As shown, during the moving process, the embodied robot 10 encounters a temporary dynamic obstacle, the laser radar on the embodied robot 10 detects point cloud occlusion, and the local obstacle avoidance algorithm cannot completely avoid the dynamic obstacle with a wide lateral coverage distance. The embodied robot 10 continues to move and the final direct distance with the dynamic obstacle is less than the preset distance L_MIN (for example, L_MIN=3cm), triggering a soft collision.

[0073] If it is determined that an obstacle is detected and the soft collision condition is met, step S203 is executed; otherwise, step S202 is continued.

[0074] S203, mark the occlusion point cloud 1 corresponding to the currently detected obstacle, and re-plan the path according to the size of the occlusion point cloud 1 and the basic cost map to obtain a new path 2. That is, map the occlusion point cloud to the grid map, mark the area occupied by the occlusion point cloud 1 in the grid map, and obtain the occlusion point cloud area 1.

[0075] Specifically, according to the size of the occluded point cloud 1 and the basic cost map, the path is replanned and a new path 2 is obtained, such as Figure 6 Path in l 2. At the same time, the embodied robot 10 maps the occluded point cloud 1 (point cloud data) within the current 1m to the grid map based on itself as the center.

[0076] S204, when controlling the embodied robot to move along the replanned new path 2, if the occlusion point cloud 2 corresponding to other obstacles is detected again and the soft collision condition is met.

[0077] like Figure 7 As shown, the embodied robot 10 continues to travel along the re-planned new path 2. During the travel, it detects that a movable obstacle is blocking the new path 2. At this time, the laser radar detects point cloud occlusion, and the local obstacle avoidance cannot completely avoid it. As a result, the direct distance between the embodied robot 10 and the movable obstacle is less than the preset distance L_MIN, and the soft collision condition is met again.

[0078] S205 , marking the occlusion point cloud 2 corresponding to the other obstacles currently detected, and replanning the path according to the size of the occlusion point cloud 2 and the basic cost map to obtain a new path 3 .

[0079] According to the size of the occlusion point cloud 2 and the basic cost map, the path is replanned again to obtain a new path 3, such as Figure 7 Path in l 3. At the same time, the embodied robot 10 maps the occlusion point cloud 2 within the current 1m to the grid map based on itself as the center, and obtains the area occupied by the occlusion point cloud 2 in the grid map, which is also the area occupied by the obstacle.

[0080] S206, while controlling the embodied robot to move along the re-planned new path 3, continue to detect whether there is an occlusion point cloud corresponding to the obstacle and whether the soft collision condition is met, repeat the corresponding contents of the above steps S202 and S203 n-1 times until it is detected that all planned paths meet the soft collision condition, then execute step S207 to no longer repeat the planned path, save time, and try to pass.

[0081] S207, determine whether the re-planned new path n intersects with any marked occlusion point cloud area. If so, execute step S208 to try to have a real collision with the marked obstacle. In order to improve the success rate of passing, in the embodiment of the present application, the additional re-planned paths all intersect with at least one marked occlusion point cloud area.

[0082] S208, attempting to actually collide with the marked obstacle. Continue to move forward according to the re-planned new path n to attempt to collide with the marked obstacle to improve traffic efficiency.

[0083] The embodied robot 10 is controlled to continue moving along the new path n, and attempts to have a hard collision (real collision) with obstacles previously marked on the new path n to improve the travel efficiency.

[0084] S209, determining whether the embodied robot 10 passes through the marked occluded point cloud area. If so, executing step S210, otherwise executing step S211.

[0085] If the marked obstacle still blocks the travel route after attempting a hard collision, the embodied robot 10 will have a real collision (hard collision) with the marked obstacle.

[0086] If the path is passable after the hard collision, the robot will continue to move forward. For example, if the obstacle is knocked away, the path becomes passable. For another example, if the obstacle that temporarily appeared during the movement of the robot 10 has been removed from the scene, the robot 10 will continue to move along the new path.

[0087] If it is impassable, step S211 is executed to calculate the collision costs of all soft collision paths.

[0088] S210, determine whether the destination has been reached. That is, determine whether the charging point has been reached. If the destination has been reached, step S214 is executed to clear the marked occluded point cloud area where no real collision has occurred, and the task ends. Otherwise, return to step S212.

[0089] S211, update the collision cost in the cost map according to the occlusion point cloud corresponding to the obstacle, and calculate the collision cost of each soft collision path. That is, try to pass through other marked occlusion point cloud areas. The soft collision path is a path planned separately to pass through the marked occlusion point cloud area.

[0090] S212, determine whether there is a target path that meets the pass conditions based on the collision costs of each soft collision path. If there is a path that meets the conditions, continue to move according to the target path and jump to S207, otherwise execute step S213 to confirm that the target task has failed. If it is determined that the collision costs of all other planned soft collision paths do not meet the pass conditions, execute step S213 to determine that the task has failed and end the task. The collision cost does not meet the pass conditions when the collision cost is higher than the preset threshold, indicating that there are obstacles blocking the passage in the occluded point cloud area passed through, and the embodied robot has a hard collision in the occluded point cloud area.

[0091] S213, confirming that the mission has failed. The embodied robot 10 calculates the path costs of all soft collision paths and determines that the path costs are very high, and all of them are blocked by obstacles and cannot be passed. Then, the mission is considered to have failed, and the marked occlusion point cloud is cleared to end the mission.

[0092] S214, clear the marked obstacles that have not had a real collision. That is, clear the area occupied by the previously marked occlusion point cloud on the grid map that has not had a real collision. It should be noted that the data in the cost map updated according to the obstacles corresponding to the real collision does not need to be cleared, so as to facilitate subsequent path planning and reduce the number of collisions.

[0093] Figure 8 A schematic diagram of the structure of the embodied robot travel control device according to an embodiment of the present application is shown. Exemplarily, the embodied robot travel control device includes: a travel control module 810 , a path replanning module 820 and a collision execution module 830 .

[0094] The travel control module 810 is used to respond to the task instruction and control the embodied robot 10 to travel along the planned path; The path re-planning module 820 is used to mark the occlusion point cloud corresponding to the current obstacle and re-plan the path when the current obstacle is detected and the soft collision condition is met; The collision execution module 830 is used to control the embodied robot 10 to move along the new path if the re-planned new path intersects with any historically marked occlusion point cloud, and to try to actually collide with the marked obstacle corresponding to the occlusion point cloud to confirm whether it is passable.

[0095] It can be understood that the device of this embodiment corresponds to the embodied robot movement control method of the above embodiment, and the options in the above embodiment are also applicable to this embodiment, so they will not be repeated here.

[0096] The present application also provides a computer-readable storage medium for storing the computer program used in the embodied robot 10. For example, the computer-readable storage medium may include, but is not limited to, various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0097] In several embodiments provided in the present application, it should be understood that the disclosed devices and methods can also be implemented in other ways. The device embodiments described above are merely schematic. For example, the flowcharts and structure diagrams in the accompanying drawings show the possible architecture, functions and operations of the devices, methods and computer program products according to multiple embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of a code, and the module, a program segment or a part of a code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in an alternative implementation, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the structure diagram and / or the flow diagram, and the combination of boxes in the structure diagram and / or the flow diagram, can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions.

[0098] In addition, the functional modules or units in the various embodiments of the present application may be integrated together to form an independent part, or each module may exist separately, or two or more modules may be integrated to form an independent part.

[0099] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling a computer device (which can be a smart phone, a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application.

[0100] The above description is only a specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application.

Claims

1. A method for controlling movement of an embodied robot, characterized in that: include: Responding to the task instruction, controlling the embodied robot to move along the planned path; When a current obstacle is detected and a soft collision condition is met, the occlusion point cloud corresponding to the current obstacle is marked and the path is replanned; If the re-planned new path intersects with any historically marked occlusion point cloud, the embodied robot is controlled to move along the new path and attempts to actually collide with the marked obstacle corresponding to the occlusion point cloud to confirm whether it is passable.

2. The embodied robot movement control method according to claim 1, characterized in that: Also includes: If the real collision occurs and the embodied robot successfully passes through the blocked point cloud area, the embodied robot is controlled to continue moving along the new path.

3. The embodied robot movement control method according to claim 1, characterized in that: Also includes: If the real collision does not occur, the embodied robot is controlled to continue to move along the new path to determine that the marked obstacle moves out of the blocked point cloud area.

4. The embodied robot movement control method according to claim 1, characterized in that: Also includes: If the real collision occurs and the embodied robot does not pass through the blocked point cloud area, the path is replanned according to the cost map to try to pass; wherein the cost map includes the collision cost determined according to the marked obstacles where the real collision occurred.

5. The embodied robot movement control method according to claim 4, characterized in that: If the real collision occurs, the method further includes: updating the corresponding collision cost in the cost map according to the marked obstacle where the real collision occurs, and the updated collision cost is higher than a preset threshold.

6. The embodied robot movement control method according to claim 4, characterized in that: The path is re-planned according to the cost map, including: During the calculation process of the additional re-planned path, if it is calculated that the collision costs of all the additionally planned soft collision paths do not meet the pass conditions, it is determined that the task has failed and the task is terminated; wherein, the soft collision path is a path that intersects with the marked occluded point cloud area; the collision cost does not meet the pass conditions if the collision cost is higher than a preset threshold.

7. The embodied robot movement control method according to claim 1, characterized in that: The step of marking the occluded point cloud corresponding to the current obstacle and replanning the path further comprises: If it is detected again that there are other obstacles on the current new path and the soft collision condition is met, the path replanning operation is performed again, and the occlusion point cloud corresponding to the other detected obstacles is marked until it is determined that all replanned paths meet the soft collision condition.

8. The embodied robot movement control method according to any one of claims 1 to 7, characterized in that: The soft collision condition includes: When the distance between the embodied robot and the currently detected occlusion point cloud of the obstacle is less than a preset distance, and the lateral size of the occlusion point cloud is not less than a preset lateral avoidance length, it is determined that the soft collision condition is met.

9. A moving control device for an embodied robot, characterized in that: include: A travel control module, used to respond to task instructions and control the embodied robot to travel along a planned path; A path replanning module is used to mark the occlusion point cloud corresponding to the current obstacle and replan the path when the current obstacle is detected and the soft collision condition is met; The collision execution module is used to control the embodied robot to move along the new path if the re-planned new path intersects with any historically marked occlusion point cloud, and to try to have a real collision with the marked obstacle corresponding to the occlusion point cloud to confirm whether it can pass.

10. An embodied robot, characterized in that: The embodied robot comprises a processor and a memory, wherein the memory stores a computer program, and the processor is configured to execute the computer program to implement the embodied robot movement control method according to any one of claims 1 to 8.

11. A computer-readable storage medium, characterized in that: It stores a computer program, which, when executed on a processor, implements the embodied robot movement control method according to any one of claims 1-8.

Citation Information

Patent Citations

  • Narrow slit escape method, device and equipment of sweeping robot and readable storage medium

    CN111208811A

  • Robot escape method and device, robot and storage medium

    CN116107309A

  • Path planning method and system based on obstacle marking and self-moving robot

    CN116414118A

  • Cleaning robot control method and device, storage medium and electronic equipment

    CN117652930A

  • Control method, control device, storage medium and self-moving equipment

    CN119072668A

Cited By

  • Dynamic scheduling method and device for charging robot with body and medium

    CN122155313A