Motion control method and device, robot and storage medium

By detecting dynamic obstacles within the robot's three-dimensional neighborhood and implementing refined motion control, the problem of the robot's inability to cope with the intrusion of surrounding dynamic objects is solved, thereby improving the robot's safety and reliability.

CN120696995APending Publication Date: 2025-09-26BEIJING XIAOMI ROBOT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410347101.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-03-25
Publication Date
2025-09-26

AI Technical Summary

Technical Problem

In the existing technology, robots are unable to effectively deal with the intrusion of surrounding dynamic objects, resulting in increased safety hazards.

Method used

Detect dynamic obstacles within the robot's 3D neighborhood and implement refined motion control strategies based on the obstacle's location and distance, including stopping the task, moving away from the obstacle, or remaining stationary. Dynamic obstacle recognition and avoidance are achieved through a combination of sensors and environmental maps.

Benefits of technology

The robot's ability to respond to dynamic obstacles in three-dimensional space is improved, ensuring safety and reliability, and reducing task inefficiency and power consumption problems during obstacle avoidance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120696995A_ABST
    Figure CN120696995A_ABST
Patent Text Reader

Abstract

The invention provides a motion control method and device, a robot and a storage medium. The method comprises the following steps: detecting whether a dynamic obstacle exists in a three-dimensional neighborhood of a robot; and in response to existence of the dynamic obstacle in the three-dimensional neighborhood, controlling the robot to execute a preset motion strategy. The three-dimensional neighborhood is not only distributed in the two-dimensional area of the horizontal plane where the robot is located, but also distributed in the three-dimensional area around the robot, so that the robot can respond to dynamic obstacles (such as the side and the upper portion of the robot) in the three-dimensional neighborhood in time; meanwhile, due to the fact that the robot detects the dynamic obstacles, the robot can respond in time when encountering an actively-moving object, the method can effectively cover the object invasion problem in all directions around the robot, the overall safety and reliability of the robot are improved, and the method is suitable for popularization and application. And therefore, a wider development space is brought to the application of robots in various fields.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the technical field of robot motion control, and in particular to a motion control method, device, robot, and storage medium. Background Art

[0002] With the rapid development of robotics technology, robots are being used more and more widely in various fields, and the resulting robot safety issues have also attracted widespread attention. In order to ensure the safe operation of robots, people have proposed various safety strategies and control methods.

[0003] In related technologies, robot safety strategies have a common problem, which is that they cannot effectively deal with the intrusion of dynamic objects around the robot, which increases safety risks. Summary of the Invention

[0004] To overcome the problems existing in the related art, the present disclosure provides a motion control method, device, robot and storage medium.

[0005] A first aspect of the present disclosure provides a motion control method, the method comprising:

[0006] Detecting the presence of dynamic obstacles in the robot's 3D neighborhood;

[0007] In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, the robot is controlled to execute a preset motion strategy.

[0008] Optionally, the method further includes:

[0009] In response to the presence of a dynamic object in the three-dimensional neighborhood of the robot that is not included in a pre-established environmental map, it is determined that there is a dynamic obstacle in the three-dimensional neighborhood, wherein the environmental map includes pre-recorded objects located in the space where the robot is located.

[0010] Optionally, the judgment radius of the dynamic obstacle at the current moment is smaller than the judgment radius of the dynamic obstacle at the previous moment, and the judgment radius is the distance between the dynamic obstacle and the robot.

[0011] Optionally, the three-dimensional neighborhood includes a plurality of neighborhood layers starting from the robot and distributed from the inside to the outside;

[0012] In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, controlling the robot to execute a preset motion strategy includes:

[0013] In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, the robot is controlled to execute a motion strategy corresponding to the neighborhood layer where the dynamic obstacle is located.

[0014] Optionally, the motion strategy includes a first strategy and a second strategy, the neighborhood layer corresponding to the first strategy is located outside the neighborhood layer corresponding to the second strategy, the first strategy includes stopping the currently executed task, and the second strategy includes controlling the robot to move away from the dynamic obstacle.

[0015] Optionally, the three-dimensional neighborhood includes a plurality of neighborhood layers starting from the robot and distributed from the inside to the outside, each of the neighborhood layers includes a plurality of parts, and each of the parts corresponds to a different direction range starting from the robot;

[0016] In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, controlling the robot to execute a preset motion strategy includes:

[0017] In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, the robot is controlled to execute a motion strategy corresponding to the neighborhood layer and the part where the dynamic obstacle is located.

[0018] Optionally, each of the neighborhood layers includes a first portion and a second portion, the first portion being a portion of the neighborhood layer located within a first direction range from the robot, and the second portion being a portion of the neighborhood layer located within a second direction range from the robot, where the second direction range includes a direction perpendicular to the ground and upward.

[0019] For the first part, the motion strategy includes a first strategy and a second strategy, the neighborhood layer corresponding to the first strategy is located outside the neighborhood layer corresponding to the second strategy, the first strategy includes stopping the currently executed task, and the second strategy includes controlling the robot to move in a direction away from the dynamic obstacle;

[0020] For the second part, the motion strategy includes a third strategy and a fourth strategy. The neighborhood layer corresponding to the third strategy is located outside the neighborhood layer corresponding to the fourth strategy. The third strategy includes controlling the robot to move away from the dynamic obstacle, and the fourth strategy includes stopping the currently executed task and remaining stationary.

[0021] Optionally, the second strategy includes moving in a direction away from the dynamic obstacle at a first speed, where the first speed is negatively correlated with a judgment radius, and the judgment radius is the distance between the dynamic obstacle and the robot.

[0022] Optionally, the third strategy includes moving in a direction away from the dynamic obstacle at a second speed, where the second speed is negatively correlated with a judgment radius, and the judgment radius is the distance between the dynamic obstacle and the robot.

[0023] Optionally, the method further includes:

[0024] In the process of the robot moving in a direction away from the dynamic obstacle, increasing the robot's scanning angle range by a preset step size, wherein the scanning angle range includes the robot's moving direction;

[0025] In response to an object existing within the scanning angle range, the robot is controlled to avoid the object.

[0026] A second aspect of the present disclosure provides a motion control device, the device comprising:

[0027] A detection module is used to detect the presence of dynamic obstacles in the robot's three-dimensional neighborhood;

[0028] The control module is configured to control the robot to execute a preset motion strategy in response to the presence of a dynamic obstacle in the three-dimensional neighborhood.

[0029] Optionally, the device further includes:

[0030] A determination module is configured to determine the presence of a dynamic obstacle within a three-dimensional neighborhood of the robot in response to the presence of a dynamic object within the three-dimensional neighborhood that is not included in a pre-established environmental map, wherein the environmental map includes pre-recorded objects located within the space where the robot is located.

[0031] Optionally, the judgment radius of the dynamic obstacle at the current moment is smaller than the judgment radius of the dynamic obstacle at the previous moment, and the judgment radius is the distance between the dynamic obstacle and the robot.

[0032] Optionally, the three-dimensional neighborhood includes a plurality of neighborhood layers starting from the robot and distributed from the inside to the outside;

[0033] The control module is used to control the robot to execute a preset motion strategy in response to the presence of a dynamic obstacle in the three-dimensional neighborhood, and is used to:

[0034] In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, the robot is controlled to execute a motion strategy corresponding to the neighborhood layer where the dynamic obstacle is located.

[0035] Optionally, the motion strategy includes a first strategy and a second strategy, the neighborhood layer corresponding to the first strategy is located outside the neighborhood layer corresponding to the second strategy, the first strategy includes stopping the currently executed task, and the second strategy includes controlling the robot to move away from the dynamic obstacle.

[0036] Optionally, the three-dimensional neighborhood includes a plurality of neighborhood layers starting from the robot and distributed from the inside to the outside, each of the neighborhood layers includes a plurality of parts, and each of the parts corresponds to a different direction range starting from the robot;

[0037] The control module is used to control the robot to execute a preset motion strategy in response to the presence of a dynamic obstacle in the three-dimensional neighborhood, and is used to:

[0038] In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, the robot is controlled to execute a motion strategy corresponding to the neighborhood layer and the part where the dynamic obstacle is located.

[0039] Optionally, each of the neighborhood layers includes a first portion and a second portion, the first portion being a portion of the neighborhood layer located within a first direction range from the robot, and the second portion being a portion of the neighborhood layer located within a second direction range from the robot, where the second direction range includes a direction perpendicular to the ground and upward.

[0040] For the first part, the motion strategy includes a first strategy and a second strategy, the neighborhood layer corresponding to the first strategy is located outside the neighborhood layer corresponding to the second strategy, the first strategy includes stopping the currently executed task, and the second strategy includes controlling the robot to move in a direction away from the dynamic obstacle;

[0041] For the second part, the motion strategy includes a third strategy and a fourth strategy. The neighborhood layer corresponding to the third strategy is located outside the neighborhood layer corresponding to the fourth strategy. The third strategy includes controlling the robot to move away from the dynamic obstacle, and the fourth strategy includes stopping the currently executed task and remaining stationary.

[0042] Optionally, the second strategy includes moving in a direction away from the dynamic obstacle at a first speed, where the first speed is negatively correlated with a judgment radius, and the judgment radius is the distance between the dynamic obstacle and the robot.

[0043] Optionally, the third strategy includes moving in a direction away from the dynamic obstacle at a second speed, where the second speed is negatively correlated with a judgment radius, and the judgment radius is the distance between the dynamic obstacle and the robot.

[0044] Optionally, the device further includes an obstacle avoidance module, configured to perform the following steps:

[0045] In the process of the robot moving in a direction away from the dynamic obstacle, increasing the robot's scanning angle range by a preset step size, wherein the scanning angle range includes the robot's moving direction;

[0046] In response to an object existing within the scanning angle range, the robot is controlled to avoid the object.

[0047] A third aspect of the present disclosure provides a computer program product, comprising a computer program / instruction, which implements the method described in the first aspect when executed by a processor.

[0048] A fourth aspect of the present disclosure provides a robot comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method described in the first aspect when executing the program.

[0049] A fifth aspect of the present disclosure provides a computer-readable storage medium having a computer program stored thereon, which implements the method described in the first aspect when the program is executed by a processor.

[0050] The technical solutions provided by the embodiments of the present disclosure may have the following beneficial effects:

[0051] In the disclosed embodiment, the robot scans its three-dimensional neighborhood and detects whether there are dynamic obstacles. In response to the presence of dynamic obstacles in the three-dimensional neighborhood, the robot is controlled to execute a preset motion strategy. Because the three-dimensional neighborhood is distributed not only in the two-dimensional area of ​​the robot's horizontal plane, but also in the three-dimensional area surrounding the robot, the robot can respond promptly to dynamic obstacles within the three-dimensional neighborhood (such as to the side and above the robot), effectively addressing the uncertainty of object intrusion. At the same time, because the robot detects dynamic obstacles, it can also respond promptly when encountering actively moving objects. This method can effectively address the problem of object intrusion in all directions around the robot and improve the overall safety and reliability of the robot, thereby bringing broader development space for robot applications in various fields.

[0052] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

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

[0054] Figure 1 The figure is a flow chart of a motion control method shown in some exemplary embodiments.

[0055] Figure 2 is a flow chart of another motion control method shown in some exemplary embodiments.

[0056] Figure 3is a flow chart of yet another motion control method shown in some exemplary embodiments.

[0057] Figure 4 is a top view of a three-dimensional neighborhood shown in some exemplary embodiments.

[0058] Figure 5 is a front view of a three-dimensional neighborhood shown in some exemplary embodiments.

[0059] Figure 6 FIG. 1 is a scanning schematic diagram of a motion control method shown in some exemplary embodiments.

[0060] Figure 7 is a block diagram of a motion control device showing some exemplary embodiments.

[0061] Figure 8 FIG. 4 is a hardware structure diagram of an electronic device shown in some exemplary embodiments. DETAILED DESCRIPTION

[0062] Exemplary embodiments will be described in detail herein, with examples illustrated in the accompanying drawings. In the following description, when referring to the drawings, identical numerals in different figures represent identical or similar elements, unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all possible embodiments consistent with the present disclosure. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present disclosure, as detailed in the appended claims.

[0063] The terms used in this disclosure are for the purpose of describing specific embodiments only and are not intended to limit the disclosure. As used in this disclosure and the appended claims, the singular forms "a," "an," "the," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and / or" as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items.

[0064] It should be understood that although the terms first, second, third, etc. may be used in this disclosure to describe various information, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from each other. For example, without departing from the scope of this disclosure, first information may also be referred to as second information, and similarly, second information may also be referred to as first information. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining."

[0065] With the rapid development of robotics technology, robots are being used more and more widely in various fields, and the resulting robot safety issues have also attracted widespread attention. In order to ensure the safe operation of robots, people have proposed various safety strategies and control methods.

[0066] In related technologies, robot safety strategies have a common problem, which is that they are unable to effectively deal with the intrusion of objects from all directions around the robot. This results in the robot being unable to respond in time when encountering actively moving objects or objects to the side or rear, thereby increasing safety risks.

[0067] In view of this, the present disclosure provides a motion control method, device, robot and storage medium. The embodiments of the present disclosure are described in detail below.

[0068] The first aspect of the present disclosure provides a motion control method. Figure 1 , which includes the following steps.

[0069] Step S101 : Detect whether there are dynamic obstacles in the three-dimensional neighborhood of the robot.

[0070] Specifically, the method can be applied to a robot, which can perform detection in a three-dimensional space adjacent to the robot based on a preset sensor (such as a depth camera, a planar camera, or a multi-eye structure composed of at least two cameras) to obtain a three-dimensional neighborhood. The three-dimensional neighborhood is a three-dimensional space adjacent to the robot, and may include a sphere that encloses the robot (if the robot is regarded as a point mass), a hemisphere (such as the remaining part of the sphere excluding the ground) or other preset shapes (such as a cube, a cone).

[0071] The dynamic obstacle is an object whose position in the current frame is different from that in the previous frame. In order to make the robot's motion control more targeted, the present disclosure also provides a step for determining dynamic obstacles, such as Figure 2In step S201 shown, in response to the presence of a dynamic object in the three-dimensional neighborhood of the robot that is not included in the pre-established environmental map, it is determined that there is a dynamic obstacle in the three-dimensional neighborhood, wherein the environmental map includes pre-recorded objects located in the space where the robot is located. The environmental map can be a point cloud map, a grid map, a topological map, etc. established in advance based on preset sensors, and the robot or user can mark risk-free dynamic objects in the environment (such as a pendulum, a watch hand, etc.) to build a whitelist. By performing algorithms such as feature point matching and point cloud matching on multiple frames before and after, dynamic objects that are not included in the environmental map can be determined, and motion control steps can be performed on the dynamic objects. Based on this, the method provided by the present disclosure can perform obstacle avoidance actions more accurately, thereby avoiding problems such as low task execution efficiency and high power consumption caused by false triggering of obstacle avoidance actions while ensuring the safety of the robot.

[0072] Furthermore, the dynamic obstacle's current judgment radius is smaller than its previous judgment radius, where the judgment radius represents the distance between the dynamic obstacle and the robot. In other words, the dynamic obstacle may be a dynamic object that has been approaching the robot within a preset period of time. Based on this, the method provided by the present disclosure can more accurately execute obstacle avoidance actions, thereby ensuring the robot's safety while avoiding issues such as low task execution efficiency and high power consumption caused by false triggering of obstacle avoidance actions.

[0073] Step S102 : In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, controlling the robot to execute a preset motion strategy.

[0074] Step S102, which can also be referred to as an obstacle avoidance step or a control step, controls the robot to execute a preset motion strategy in response to the presence of a dynamic obstacle within a three-dimensional neighborhood to avoid a collision between the robot and the dynamic obstacle (or to minimize the damage caused by a collision between the robot and the dynamic obstacle by reducing the relative speed between the robot and the dynamic obstacle when the robot collides). The motion strategy can be controlling the robot to move away from the dynamic obstacle (or in a direction that will not collide with the robot), or it can be controlling the robot to remain stationary or to stop the task it is currently performing for further observation. This disclosure will elaborate on this in detail later.

[0075] In the disclosed embodiment, the robot scans its three-dimensional neighborhood and detects whether there are dynamic obstacles. In response to the presence of dynamic obstacles in the three-dimensional neighborhood, the robot is controlled to execute a preset motion strategy. Because the three-dimensional neighborhood is distributed not only in the two-dimensional area of ​​the robot's horizontal plane, but also in the three-dimensional area surrounding the robot, the robot can respond promptly to dynamic obstacles within the three-dimensional neighborhood (such as to the side and above the robot), effectively addressing the uncertainty of object intrusion. At the same time, because the robot detects dynamic obstacles, it can also respond promptly when encountering actively moving objects. This method can effectively address the problem of object intrusion in all directions around the robot and improve the overall safety and reliability of the robot, thereby bringing broader development space for robot applications in various fields.

[0076] In some embodiments of the present disclosure, the preset motion strategy has multiple optional granularity divisions.

[0077] Exemplarily, the three-dimensional neighborhood includes multiple neighborhood layers starting from the robot and distributed from the inside to the outside; in response to the presence of a dynamic obstacle in the three-dimensional neighborhood, the robot is controlled to execute a preset motion strategy, including: Figure 3 In step S301, in response to the presence of a dynamic obstacle in the three-dimensional neighborhood, the robot is controlled to execute a motion strategy corresponding to the neighborhood layer where the dynamic obstacle is located. Figure 4 This is an exemplary top view showing a three-dimensional neighborhood consisting of three neighborhood layers. The three-dimensional neighborhood can be divided into the first, second, and third neighborhood layers from the inside out. The robot can then execute the motion strategy corresponding to the neighborhood layer where the dynamic obstacle is located. This allows for more refined motion control.

[0078] Furthermore, the motion strategy may include a first strategy and a second strategy, wherein the neighborhood layer corresponding to the first strategy is located outside the neighborhood layer corresponding to the second strategy, the first strategy includes stopping the currently executed task, and the second strategy includes controlling the robot to move in a direction away from the dynamic obstacle. Figure 4For example, the first strategy can correspond to the third neighborhood layer, and the second strategy can correspond to the second and first neighborhood layers. In other words, when the judgment radius of a dynamic obstacle is large, it can be considered that the dynamic obstacle does not pose too much threat to the robot. Therefore, the robot can stop the current task and make the robot's motion state become a simple controllable state (such as a static state). Then wait for the dynamic obstacle to leave the three-dimensional neighborhood or enter a neighborhood layer closer to the inside. When the judgment radius of a dynamic obstacle is small, it can be considered that the dynamic obstacle is about to pose a threat to the robot. Therefore, the robot can be controlled to move away from the dynamic obstacle to avoid the dynamic obstacle.

[0079] Optionally, the second strategy includes moving at a first speed in a direction away from the dynamic obstacle, wherein the first speed is negatively correlated with a judgment radius, and the judgment radius is the distance between the dynamic obstacle and the robot. In other words, the closer the dynamic obstacle is to the robot, the greater the threat posed by the dynamic obstacle to the robot can be considered, and the robot can be controlled at a faster speed to move away from the dynamic obstacle. Figure 4 For example, two preset speeds can be set: a first speed and a second speed, where the first speed is lower than the second speed. Then, when the dynamic obstacle is located in the second neighborhood layer, the robot is controlled to move away from the dynamic obstacle at the first speed. When the dynamic obstacle is located in the first neighborhood layer, the robot is controlled to move away from the dynamic obstacle at the first speed. Based on this, refined motion control can be achieved. When it is not necessary, the robot can be controlled at a lower speed to avoid obstacles, thereby reducing the possibility of new risks incurred by the robot during the obstacle avoidance process and the impact of the robot's obstacle avoidance process on the original task being performed, while taking into account the robot's power consumption and safety.

[0080] As another example, the three-dimensional neighborhood includes multiple neighborhood layers distributed from the inside outward from the robot, each neighborhood layer including multiple parts, each part corresponding to a different directional range from the robot; and in response to the presence of a dynamic obstacle in the three-dimensional neighborhood, controlling the robot to execute a preset motion strategy includes: in response to the presence of a dynamic obstacle in the three-dimensional neighborhood, controlling the robot to execute the motion strategy corresponding to the neighborhood layer and part where the dynamic obstacle is located. In other words, the three-dimensional neighborhood not only has different layers from the inside out from the robot, but also has different parts within different directional ranges from the robot. When determining the robot's motion strategy, the distance between the dynamic obstacle and the robot and the angle relative to the robot can be used to determine the motion strategy. Based on this, the robot's motion strategy can be determined more precisely. At the same time, due to the influence of gravity, dynamic obstacles at different angles around the robot have different potential to harm the robot. For example, when a dynamic obstacle exists within the robot's horizontal plane, it will typically only collide with the robot due to the movement generated by its own power mechanism, which is highly predictable and gives the robot more time to make decisions. However, when a dynamic obstacle appears above the robot (such as flying parts, paper balls, or the robot may knock items originally placed on the table during operation), the uncertainty of its movement path increases due to the effect of gravity, and the speed is often faster, so the impact on the robot may be different from that on the horizontal plane. Implementing different movement strategies for dynamic obstacles at different angles helps to balance the robot's power consumption and safety (other beneficial effects can be seen in the corresponding section above).

[0081] Furthermore, each of the neighborhood layers may include a first portion and a second portion, wherein the first portion is a portion of the neighborhood layer located within a first direction range from the robot, and the second portion is a portion of the neighborhood layer located within a second direction range from the robot, wherein the second direction range includes a direction perpendicular to the ground and upward.

[0082] For the first part, the motion strategy includes a first strategy and a second strategy, the neighborhood layer corresponding to the first strategy is located outside the neighborhood layer corresponding to the second strategy, the first strategy includes stopping the currently executed task, and the second strategy includes controlling the robot to move in a direction away from the dynamic obstacle;

[0083] For the second part, the motion strategy includes a third strategy and a fourth strategy. The neighborhood layer corresponding to the third strategy is located outside the neighborhood layer corresponding to the fourth strategy. The third strategy includes controlling the robot to move away from the dynamic obstacle, and the fourth strategy includes stopping the currently executed task and remaining stationary.

[0084] Among them, the “starting from the robot” can be to regard the robot as a particle, and to take the range of directions diverging from the particle to the surrounding as a direction range, or to not regard the robot as a particle, but to take part or all of the robot as the starting point of the direction, and then determine multiple directions to form a direction range; an example is to regard the top of the entire robot as a direction range. In other words, the directions contained in the direction range may be the same, but their starting points are different; or the starting point and direction are the same; or the starting point is the same, but the direction is different; but the meaning of their representation is to divide the robot's neighborhood into multiple parts, and determine the motion strategy for the dynamic obstacles located in this direction range (part). The “direction vertical to the ground upward” is also applicable to the above principle, that is, it can be a direction starting from all or part of the robot and pointing vertically above the robot.

[0085] See Figure 5 , is an exemplary front view (side view) of a three-dimensional neighborhood. The second direction range is set to the direction within a cone (e.g., a 60° cone starting from the robot and directly above) formed by the vertically upward direction starting from the center point of the robot as the central axis and the preset angle (e.g., 30° based on the preferred data measured in the experiment) spread out in all directions. The three-dimensional neighborhood within the cone is the second part. As mentioned above, dynamic objects located above the robot often have higher uncertainty than dynamic objects located to the side of the robot. In the above embodiment, the second part can correspond to the top of the robot, and the part other than the second part is the first part, which corresponds to the side of the robot.

[0086] When a dynamic obstacle is above the robot, it can be considered to have a tendency to fall and hit the robot. When it is far away from the robot (for example, when it is in the third or second neighborhood layer), it can be considered that the robot still has a chance to avoid the dynamic obstacle, and the robot can be controlled to move away from the dynamic obstacle. When it is close to the robot (for example, it has reached the first neighborhood layer), it can be considered that the robot is no longer able to avoid the dynamic obstacle, and movement at this time may increase the relative speed between the robot and the dynamic obstacle, or expose more vulnerable parts to the collision range of the dynamic obstacle, resulting in more serious consequences. At this time, the robot can stop the task it is performing and remain stationary to minimize the damage caused by the collision between the robot and the dynamic obstacle, thereby improving the adaptability of the robot's motion control strategy to dynamic obstacles and improving the obstacle avoidance effect.

[0087] Furthermore, the second strategy includes moving away from the dynamic obstacle at a first speed, wherein the first speed is negatively correlated with a judgment radius, which is the distance between the dynamic obstacle and the robot. The third strategy includes moving away from the dynamic obstacle at a second speed, wherein the second speed is negatively correlated with a judgment radius, which is the distance between the dynamic obstacle and the robot. For example, a first speed and a second speed may be set for the first portion, and a third speed and a fourth speed may be set for the second portion, wherein the first speed is less than the second speed, and the third speed is less than the fourth speed. For example, when the dynamic obstacle is located in the first portion of the second neighborhood layer, the robot may be controlled to move away from the dynamic obstacle at the first speed; when the dynamic obstacle is located in the first portion of the first neighborhood layer, the robot may be controlled to move away from the dynamic obstacle at the second speed; when the dynamic obstacle is located in the second portion of the third neighborhood layer, the robot may be controlled to move away from the dynamic obstacle at the third speed; and when the dynamic obstacle is located in the second portion of the second neighborhood layer, the robot may be controlled to move away from the dynamic obstacle at the fourth speed.

[0088] In some embodiments of the present disclosure, the method further includes:

[0089] In the process of the robot moving in a direction away from the dynamic obstacle, increasing the robot's scanning angle range by a preset step size, wherein the scanning angle range includes the robot's moving direction;

[0090] In response to an object existing within the scanning angle range, the robot is controlled to avoid the object.

[0091] The process of the robot moving in a direction away from the dynamic obstacle can be generated by the method provided in the embodiment of the present disclosure, or by other obstacle avoidance methods configured by the robot. This process can be simply referred to as the obstacle avoidance process. In the obstacle avoidance process, a notable feature is its suddenness. That is, when the robot pre-plans a task or a path, it cannot accurately anticipate the generation of dynamic obstacles and the direction of movement during the obstacle avoidance process. When a dynamic obstacle appears, the robot needs to make a decision in a very short time and quickly move away from the dynamic obstacle. In other words, the new path generated by the obstacle avoidance process is often unpredictable, and the obstacle avoidance process is often rapid. This results in the robot not having sufficient reaction time to further avoid new risks that may arise from the obstacle avoidance process.

[0092] To address this issue, in the above-mentioned embodiment of the present disclosure, the robot can preset a smaller scanning angle, such as a 5° range to the left and right of the robot's moving direction (of course, it can also be a range of other preset shapes such as a conical range, which can be determined according to actual conditions), and then scan a 10° range to the left and right of the moving direction in the next frame (or the next Nth frame, N is a positive integer), and so on; or first scan a 10° range to the right of the moving direction, then scan a 10° range to the left of the moving direction, and then scan a 20° range to the right of the moving direction, and so on. The above-mentioned scheme can greatly reduce the amount of data relied on for scanning (the scanning here can be to obtain only data within the range at the sensor level, or to obtain complete data, and then only process the data within the range at the software level) while taking into account the obstacle scanning during the obstacle avoidance process, thereby adapting to the suddenness of the obstacle avoidance process while taking into account the avoidance of new risks that may arise during the obstacle avoidance process.

[0093] Next, Figure 6 The schematic diagram shown further illustrates at least one of the above embodiments.

[0094] In the figure, the dynamic obstacle is located on the side of the robot and is moving in the illustrated moving direction, entering the third neighborhood layer of the robot. At this time, the robot can move in the opposite direction of the line connecting the dynamic obstacle (i.e., the obstacle avoidance direction in the figure) to avoid the dynamic obstacle. During the avoidance process, the robot can first increase the scanning range frame by frame with a preset step size centered on the obstacle avoidance direction to avoid new collisions during the obstacle avoidance process. It should be understood that if the robot finds an obstacle on the moving path during the obstacle avoidance process, or finds other dynamic obstacles in the three-dimensional neighborhood during the obstacle avoidance process, it can combine the positions of all the above obstacles and dynamic obstacles, and plan a moving path with the lowest collision probability and the lowest collision loss according to the above logic, and control the robot to move along the newly planned path; and when the robot determines that there is no moving path that meets the above conditions around it, it can control the robot to remain stationary until a moving path that meets the above conditions exists.

[0095] Corresponding to the aforementioned method embodiments, the present disclosure also provides embodiments of a device and a terminal to which the device is applied.

[0096] The second aspect of the present disclosure provides a motion control device, see Figure 7 , the device comprises:

[0097] Detection module 701, used to detect whether there are dynamic obstacles in the three-dimensional neighborhood of the robot;

[0098] The control module 702 is configured to control the robot to execute a preset motion strategy in response to the presence of a dynamic obstacle in the three-dimensional neighborhood.

[0099] Optionally, the device further includes:

[0100] A determination module is configured to determine the presence of a dynamic obstacle within a three-dimensional neighborhood of the robot in response to the presence of a dynamic object within the three-dimensional neighborhood that is not included in a pre-established environmental map, wherein the environmental map includes pre-recorded objects located within the space where the robot is located.

[0101] Optionally, the judgment radius of the dynamic obstacle at the current moment is smaller than the judgment radius of the dynamic obstacle at the previous moment, and the judgment radius is the distance between the dynamic obstacle and the robot.

[0102] Optionally, the three-dimensional neighborhood includes a plurality of neighborhood layers starting from the robot and distributed from the inside to the outside;

[0103] The control module is used to control the robot to execute a preset motion strategy in response to the presence of a dynamic obstacle in the three-dimensional neighborhood, and is used to:

[0104] In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, the robot is controlled to execute a motion strategy corresponding to the neighborhood layer where the dynamic obstacle is located.

[0105] Optionally, the motion strategy includes a first strategy and a second strategy, the neighborhood layer corresponding to the first strategy is located outside the neighborhood layer corresponding to the second strategy, the first strategy includes stopping the currently executed task, and the second strategy includes controlling the robot to move away from the dynamic obstacle.

[0106] Optionally, the three-dimensional neighborhood includes a plurality of neighborhood layers starting from the robot and distributed from the inside to the outside, each of the neighborhood layers includes a plurality of parts, and each of the parts corresponds to a different direction range starting from the robot;

[0107] The control module is used to control the robot to execute a preset motion strategy in response to the presence of a dynamic obstacle in the three-dimensional neighborhood, and is used to:

[0108] In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, the robot is controlled to execute a motion strategy corresponding to the neighborhood layer and the part where the dynamic obstacle is located.

[0109] Optionally, each of the neighborhood layers includes a first portion and a second portion, the first portion being a portion of the neighborhood layer located within a first direction range from the robot, and the second portion being a portion of the neighborhood layer located within a second direction range from the robot, where the second direction range includes a direction perpendicular to the ground and upward.

[0110] For the first part, the motion strategy includes a first strategy and a second strategy, the neighborhood layer corresponding to the first strategy is located outside the neighborhood layer corresponding to the second strategy, the first strategy includes stopping the currently executed task, and the second strategy includes controlling the robot to move in a direction away from the dynamic obstacle;

[0111] For the second part, the motion strategy includes a third strategy and a fourth strategy. The neighborhood layer corresponding to the third strategy is located outside the neighborhood layer corresponding to the fourth strategy. The third strategy includes controlling the robot to move away from the dynamic obstacle, and the fourth strategy includes stopping the currently executed task and remaining stationary.

[0112] Optionally, the second strategy includes moving in a direction away from the dynamic obstacle at a first speed, where the first speed is negatively correlated with a judgment radius, and the judgment radius is the distance between the dynamic obstacle and the robot.

[0113] Optionally, the third strategy includes moving in a direction away from the dynamic obstacle at a second speed, where the second speed is negatively correlated with a judgment radius, and the judgment radius is the distance between the dynamic obstacle and the robot.

[0114] Optionally, the device further includes an obstacle avoidance module, configured to perform the following steps:

[0115] In the process of the robot moving in a direction away from the dynamic obstacle, increasing the robot's scanning angle range by a preset step size, wherein the scanning angle range includes the robot's moving direction;

[0116] In response to an object existing within the scanning angle range, the robot is controlled to avoid the object.

[0117] The implementation process of the functions and effects of each module in the above-mentioned device is specifically described in the implementation process of the corresponding steps in the above-mentioned method, and will not be repeated here.

[0118] A third aspect of the present disclosure provides a computer program product, comprising a computer program / instruction, which implements the method described in the first aspect when executed by a processor.

[0119] For the device embodiments and computer program product embodiments, since they basically correspond to the method embodiments, the relevant parts can be referred to the partial description of the method embodiments. In addition, the device embodiments described above are merely illustrative, wherein the modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, that is, they may be located in one place, or they may be distributed on multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the disclosed solution. Those of ordinary skill in the art can understand and implement it without paying any creative work.

[0120] In a fourth aspect, some embodiments of the present disclosure provide an electronic device, which may include a robot, a robot base station, a server, etc. Figure 8 , which shows the structure of the electronic device, the electronic device includes a memory and a processor, the memory is used to store computer instructions that can be run on the processor, and the processor is used to perform motion control based on any method described in the first aspect when executing the computer instructions.

[0121] In a fifth aspect, the present disclosure, in exemplary embodiments, further provides a non-transitory computer-readable storage medium including instructions, such as a memory including instructions, wherein the instructions can be executed by a processor of a robot or a computer device to implement the aforementioned robot motion control method. For example, the non-transitory computer-readable storage medium can be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, optical data storage device, etc.

[0122] The foregoing description describes specific embodiments of the present disclosure. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims can be performed in an order different from that described in the embodiments and still achieve the desired results. Furthermore, the processes depicted in the accompanying drawings do not necessarily require the specific order shown or the sequential order to achieve the desired results. In certain embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0123] Other embodiments of the present disclosure will readily occur to those skilled in the art after considering the specification and practicing the inventions claimed herein. This disclosure is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art not claimed herein. The description and examples are to be considered as exemplary only, with the true scope and spirit of the present disclosure being indicated by the following claims.

[0124] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes can be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

[0125] The above description is only a preferred embodiment of the present disclosure and is not intended to limit the present disclosure. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present disclosure should be included in the scope of protection of the present disclosure.

Claims

1. A motion control method, characterized in that: The method comprises: Detecting the presence of dynamic obstacles in the robot's 3D neighborhood; In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, the robot is controlled to execute a preset motion strategy.

2. The motion control method according to claim 1, wherein: The method further comprises: In response to the presence of a dynamic object in the three-dimensional neighborhood of the robot that is not included in a pre-established environmental map, it is determined that there is a dynamic obstacle in the three-dimensional neighborhood, wherein the environmental map includes pre-recorded objects located in the space where the robot is located.

3. The motion control method according to claim 1, wherein: The judgment radius of the dynamic obstacle at a current moment is smaller than the judgment radius of the dynamic obstacle at a previous moment, and the judgment radius is the distance between the dynamic obstacle and the robot.

4. The motion control method according to claim 1, wherein: The three-dimensional neighborhood includes a plurality of neighborhood layers starting from the robot and distributed from the inside to the outside; In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, controlling the robot to execute a preset motion strategy includes: In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, the robot is controlled to execute a motion strategy corresponding to the neighborhood layer where the dynamic obstacle is located.

5. The motion control method according to claim 4, characterized in that: The motion strategy includes a first strategy and / or a second strategy, the neighborhood layer corresponding to the first strategy is located outside the neighborhood layer corresponding to the second strategy, the first strategy includes stopping the currently executed task, and the second strategy includes controlling the robot to move in a direction away from the dynamic obstacle.

6. The motion control method according to claim 1, wherein: The three-dimensional neighborhood includes a plurality of neighborhood layers starting from the robot and distributed from the inside to the outside, and each of the neighborhood layers includes a plurality of parts; In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, controlling the robot to execute a preset motion strategy includes: In response to the presence of a dynamic obstacle in the three-dimensional neighborhood, the robot is controlled to execute a motion strategy corresponding to the neighborhood layer and the portion where the dynamic obstacle is located.

7. The motion control method according to claim 6, characterized in that: Each of the neighborhood layers includes a first portion and a second portion, wherein the first portion is a portion of the neighborhood layer located within a first direction range from the robot, and the second portion is a portion of the neighborhood layer located within a second direction range from the robot, wherein the second direction range includes a direction perpendicular to the ground and upward; For the first part, the motion strategy includes a first strategy and a second strategy. The neighborhood layer corresponding to the first strategy is located outside the neighborhood layer corresponding to the second strategy. The first strategy includes stopping the currently executed task, and the second strategy includes controlling the robot to move away from the dynamic obstacle.

8. The motion control method according to claim 5 or 7, characterized in that: The second strategy includes moving in a direction away from the dynamic obstacle at a first speed, where the first speed is negatively correlated with a judgment radius, and the judgment radius is the distance between the dynamic obstacle and the robot.

9. The motion control method according to claim 6, characterized in that: Each of the neighborhood layers includes a first portion and a second portion, wherein the first portion is a portion of the neighborhood layer located within a first direction range from the robot, and the second portion is a portion of the neighborhood layer located within a second direction range from the robot, wherein the second direction range includes a direction perpendicular to the ground and upward; For the second part, the motion strategy includes a third strategy and a fourth strategy. The neighborhood layer corresponding to the third strategy is located outside the neighborhood layer corresponding to the fourth strategy. The third strategy includes controlling the robot to move away from the dynamic obstacle, and the fourth strategy includes stopping the currently executed task and remaining stationary.

10. The motion control method according to claim 9, characterized in that: The third strategy includes moving in a direction away from the dynamic obstacle at a second speed, where the second speed is negatively correlated with a judgment radius, which is the distance between the dynamic obstacle and the robot.

11. The motion control method according to claim 1, wherein: The method further comprises: In the process of the robot moving in a direction away from the dynamic obstacle, increasing the robot's scanning angle range by a preset step size, wherein the scanning angle range includes the robot's moving direction; In response to an object existing within the scanning angle range, the robot is controlled to avoid the object.

12. A motion control device, characterized in that: The device comprises: A detection module is used to detect the presence of dynamic obstacles in the robot's three-dimensional neighborhood; The control module is configured to control the robot to execute a preset motion strategy in response to the presence of a dynamic obstacle in the three-dimensional neighborhood.

13. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instructions are executed by a processor, the method according to any one of claims 1 to 11 is implemented.

14. An electronic device, characterized in that: The method comprises a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the method according to any one of claims 1 to 11 is implemented.

15. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method according to any one of claims 1 to 11 is implemented.