A robot escape method, device and storage medium

By dynamically selecting the escape method and determining the escape direction in the robot, the problem of insufficient robot escape efficiency and safety in complex environments is solved, achieving efficient and safe obstacle avoidance, and improving robot delivery efficiency and user experience.

CN119882538BActive Publication Date: 2026-02-27KEENON ROBOTICS CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202411973948.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-30
Publication Date
2026-02-27
Estimated Expiration
2044-12-30

AI Technical Summary

Technical Problem

In complex indoor environments, robot obstacle avoidance technology suffers from insufficient efficiency and user experience. Especially in crowded scenes, traditional differential or omnidirectional movement methods cannot effectively cope with the changing dynamic environment, causing robots to be unable to avoid obstacles efficiently and safely.

Method used

By dynamically selecting omnidirectional or differential escape methods based on the relative size and distance between the obstacle and the target robot, and combining this with the global obstacle avoidance path to determine the escape movement direction, the robot is controlled to escape along the determined direction.

Benefits of technology

It improves the efficiency and safety of robots in escaping difficult situations in complex environments, reduces the possibility of secondary escaping, and enhances the success rate of robot delivery and user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119882538B_ABST
    Figure CN119882538B_ABST
Patent Text Reader

Abstract

The application provides a robot escape method and device, and a storage medium. The method comprises the following steps: when a preset trigger condition is met, determining an escape mode according to the relative size and distance relationship between an obstacle and a target robot; wherein the escape mode comprises omnidirectional escape and differential escape; when the escape mode is determined as omnidirectional escape, determining an escape moving direction of the target robot according to a global obstacle avoidance path; and controlling the target robot to escape according to the escape moving direction. In this way, the actual conditions of the current scene are determined to determine different escape modes, and the escape moving direction is determined according to the global obstacle avoidance path, so that the robot can escape quickly and safely, thereby improving the escape efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of robots, in particular to a robot escape method, device and storage medium. BACKGROUND

[0002] In a complex indoor environment, especially in a crowded scene such as a restaurant or a hotel, robots as a key tool for automated delivery face the challenge of interacting with people and objects. Because these places usually have a complex layout, a variable dynamic environment and limited space, traditional robot escape and lane-changing techniques often face some technical problems, which limit the efficient operation and safety of the robot. For example: in a restaurant or other indoor delivery scene, when the kitchen and the delivery area are relatively small, multiple robots located at the delivery area often have a close parking distance. At this time, the robot needs to effectively avoid obstacles and maintain smooth travel in a limited space. Especially when the robot screen is set in front, the user stands in front of the robot screen to operate and issue instructions, the robot needs to efficiently escape and lane-changing to improve delivery efficiency and user experience (for example: on the one hand, the robot needs to quickly move to escape or lane-changing to prevent the robot from blocking the road, thereby improving the delivery efficiency; on the other hand, when the robot is very close to people or other machines, it also needs to ensure the safety of movement and cannot collide with pedestrians or scratch machines).

[0003] Although existing robot obstacle avoidance and escape techniques have made significant progress, there are still some problems that cannot be ignored in actual application. For example, current robots uniformly use differential mobile escape or uniformly use omnidirectional mobile escape. The escape efficiency and user experience under a single escape mode need to be improved. SUMMARY

[0004] Therefore, the purpose of the present application is to provide a robot escape method, device and storage medium, which can realize fast and safe escape by determining different escape modes according to the actual conditions of the current scene and determining the escape moving direction according to the global obstacle avoidance path, thereby improving the escape efficiency.

[0005] The robot escape method provided in the embodiments of the present application comprises:

[0006] When a preset trigger condition is met, an escape mode is determined according to the relative size and distance relationship between the obstacle and the target robot; wherein the escape mode comprises omnidirectional escape and differential escape;

[0007] When the escape mode is determined as omnidirectional escape, the escape moving direction of the target robot is determined according to the global obstacle avoidance path;

[0008] The target robot is controlled to escape according to the escape moving direction.

[0009] Optionally, the escape mode is determined to be omnidirectional escape by the following steps:

[0010] According to the contour coordinate information of the target obstacle in the robot coordinate system, a projection size of the target obstacle on an obstacle avoidance axis is determined; wherein the obstacle avoidance axis is perpendicular to a path axis in the robot coordinate system, and the path axis is a coordinate axis consistent with the movement direction of the target robot planned path;

[0011] According to the projection size and the size of the target robot, a projection size ratio of the target obstacle relative to the target robot is determined;

[0012] When the projection size ratio and the nearest measured distance between the target robot and the target obstacle are both within the respective threshold range, the escape mode is determined to be omnidirectional escape.

[0013] Optionally, the escape direction of the target robot is determined according to the global obstacle avoidance path, comprising:

[0014] The movement direction of the target robot approaching the global obstacle avoidance path is determined as the escape movement direction of the target robot; wherein the escape movement direction includes a lateral movement direction along the obstacle avoidance axis and / or a direction moving to a target escape point on the global obstacle avoidance path.

[0015] Optionally, the target robot is controlled to escape according to the escape movement direction, comprising:

[0016] The point on the escape movement direction that meets the movement distance requirement and / or has the optimal position evaluation value is determined as the target escape point; wherein the position evaluation value is determined by a position evaluation function;

[0017] The target robot is controlled to move to the target escape point to complete the escape.

[0018] Optionally, the target escape point is determined by the following steps:

[0019] The farthest projection point of the global obstacle avoidance path on the obstacle avoidance axis relative to the origin of the coordinate system along the escape movement direction is determined as the target escape point;

[0020] And / or, at least one candidate path point is extracted from the global obstacle avoidance path along the escape movement direction according to a preset search distance;

[0021] According to the position evaluation function, the position evaluation value of each candidate path point is determined;

[0022] The candidate path point with the optimal position evaluation value is determined as the target escape point.

[0023] Optionally, it is determined whether the preset triggering condition is met by the following steps:

[0024] The operation instruction of the target user and the motion information of the target robot are acquired;

[0025] When the operation instruction is a preset instruction and / or the duration of the target robot in the stagnation state determined according to the motion information exceeds a preset duration, it is determined that the preset triggering condition is met, otherwise it is determined that the preset triggering condition is not met.

[0026] Optionally, when the target escape point is determined according to the candidate path point on the global obstacle avoidance path, the control of the target robot moving to the target escape point comprises:

[0027] According to the position information of the target escape point in the robot coordinate system, the rudder adjustment parameter of the target robot is determined;

[0028] According to the rudder adjustment parameter, the orientation of the target robot is controlled, and the target robot is controlled to move to the target escape point according to a preset speed adjustment strategy.

[0029] Optionally, after it is determined that the escape mode is omnidirectional escape, the escape method further comprises:

[0030] The motion control parameters of the target robot are discretely sampled to determine a plurality of simulation paths;

[0031] Collision monitoring is performed on each determined simulation path to determine at least one candidate escape path;

[0032] The safety angle range between each candidate escape path and the obstacle avoidance axis is calculated;

[0033] According to the maximum safety angle range, the escape moving direction of the target robot is determined.

[0034] Embodiments of the present application also provide an escape device for a robot, the escape device comprising:

[0035] An escape mode determination module is configured to determine an escape mode according to the relative size and distance relationship between the obstacle and the target robot when a preset triggering condition is met, wherein the escape mode comprises omnidirectional escape and differential escape;

[0036] An escape direction determination module is configured to determine the escape moving direction of the target robot according to the global obstacle avoidance path when it is determined that the escape mode is omnidirectional escape;

[0037] A control module is configured to control the target robot to escape according to the escape moving direction.

[0038] The embodiment of the present application also provides an electronic device, comprising a processor, a memory and a bus, the memory stores machine readable instructions executable by the processor, when the electronic device is running, the processor and the memory communicate through the bus, and the machine readable instructions are executed by the processor to perform the steps of the escape method as described above.

[0039] The embodiment of the present application also provides a computer readable storage medium, the computer readable storage medium stores a computer program, and the computer program is executed by the processor to perform the steps of the escape method as described above.

[0040] The embodiment of the present application provides an escape method, device and storage medium of a robot, the method comprises: when a preset trigger condition is met, determining an escape mode according to the relative size and distance relationship between an obstacle and a target robot; wherein the escape mode comprises omnidirectional escape and differential escape; when the escape mode is determined as omnidirectional escape, determining an escape moving direction of the target robot according to a global obstacle avoidance path; and controlling the target robot to escape according to the escape moving direction.

[0041] In this way, the present scheme can cope with diversified complex environments by determining different escape modes according to the actual conditions of the current scene, and when escaping, the escape direction is determined according to the global obstacle avoidance path, so that the vehicle can quickly integrate into the planned safe path after escaping, reducing the possibility of secondary escape, thereby improving the escape efficiency. And when the robot performs a delivery task, the robot delivery success rate, delivery efficiency and safety during delivery can also be improved by the present scheme, thereby improving the intelligent level of the robot.

[0042] In order to make the above-mentioned purposes, features and advantages of the present application more obvious and easy to understand, the following preferred embodiments are described in detail below, and the accompanying drawings are described as follows. BRIEF DESCRIPTION OF DRAWINGS

[0043] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following will briefly introduce the drawings needed in the embodiments. It should be understood that the following drawings only show some embodiments of the present application, and therefore should not be regarded as a limitation on the scope. For those skilled in the art, other related drawings can also be obtained without creative labor on the basis of these drawings.

[0044] Figure 1 A flow chart of an escape method of a robot provided by the embodiment of the present application;

[0045] Figure 2 An escape scene schematic diagram provided by the present application;

[0046] Figure 3 A scene diagram of a moving direction for escaping from a trouble provided by the present application is provided.

[0047] Figure 4 A diagram of multiple paths determined by discrete sampling provided by the present application is provided.

[0048] Figure 5 A diagram of a transverse moving process for escaping from a trouble provided by the present application is provided.

[0049] Figure 6 A diagram of a structure of a robot escaping device provided by an embodiment of the present application is provided.

[0050] Figure 7 A diagram of a structure of a robot escaping device provided by an embodiment of the present application is provided.

[0051] Figure 8 A diagram of a structure of an electronic device provided by an embodiment of the present application is provided. DETAILED DESCRIPTION

[0052] In order to make the objects, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be described below in connection with the accompanying drawings of the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments of the present application. The components of the embodiments of the present application described and shown in the accompanying drawings can be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the present application provided in the accompanying drawings is not intended to limit the scope of the claimed present application, but only represents selected embodiments of the present application. Based on the embodiments of the present application, every other embodiment obtained by a person skilled in the art without creative work belongs to the scope of protection of the present application.

[0053] First, the application scenarios applicable to the present application are introduced. The present application can be applied to intelligent mobile carriers, specifically to intelligent robots requiring autonomous navigation and complex environment perception, such as service robots and delivery robots. Among them, the applied intelligent robots support omnidirectional escape operation and also support differential escape operation, so the applied intelligent robots support omnidirectional driving and also support differential driving.

[0054] It is found through research that in a complex indoor environment, especially in a crowded scene such as a restaurant, a hotel, and the like, a robot as a key tool for automated distribution faces challenges in interacting with people and objects. Due to the fact that these places usually have a complex layout, a variable dynamic environment, and limited space, the traditional robot escape and give way technology often faces some technical problems, which limits the efficient operation and safety of the robot. For example: in an indoor distribution scene such as a restaurant, when the back kitchen and the delivery port area are relatively small, multiple robots located at the delivery port often have a close parking distance. At this time, the robot needs to effectively avoid obstacles and maintain smooth travel in a limited space. Especially when the robot screen is set in front, the user stands in front of the robot screen to operate and issue instructions, at this time, the robot needs to efficiently escape and give way to improve the distribution efficiency and user experience (for example: on the one hand, the robot needs to quickly move to escape or give way to prevent the robot from being blocked to improve the distribution efficiency; on the other hand, when the distance between the robot and other machines is very close, the motion safety also needs to be ensured, and the robot cannot collide with pedestrians or scratch the machine).

[0055] Although the existing robot obstacle avoidance and escape technology has made significant progress, there are still some problems that cannot be ignored in actual application. For example, the current robot uniformly adopts differential mobile escape or uniformly adopts omnidirectional mobile escape. The escape efficiency and user experience under a single escape mode need to be improved.

[0056] In addition, the existing escape method directly controls the robot to retreat, however, in a crowded scene, frequent retreat operations may cause the robot to fail to escape smoothly, and even cause continuous collision, which seriously affects the task execution and the continuity of the robot motion.

[0057] Based on this, the embodiments of the present application provide a robot escape method, device and storage medium to improve the escape efficiency and safety of the escape process.

[0058] Please refer to Figure 1 , Figure 1 The flowchart of a robot escape method provided by the embodiments of the present application. As shown in Figure 1 The escape method provided by the embodiments of the present application comprises:

[0059] S101, when a preset trigger condition is met, determining an escape mode according to the relative size and distance relationship between the obstacle and the target robot; wherein the escape mode comprises omnidirectional escape and differential escape.

[0060] When the preset trigger condition is not met, it means that the robot is not located in a scene that needs to be escaped, and therefore it is not necessary to determine the corresponding escape mode according to the current real-time environmental conditions (the relative size and distance relationship between the obstacle and the target robot).

[0061] S102, when it is determined that the escape mode is omnidirectional escape, determining the escape moving direction of the target robot according to the global obstacle avoidance path.

[0062] When omnidirectional escape is selected, in order to enable the target robot after escape to resume the task being performed in time, or quickly return to the planned road condition, the global obstacle avoidance path is considered when the escape direction is selected.

[0063] S103, controlling the target robot to escape according to the escape moving direction.

[0064] After the escape moving direction is determined, the target robot is controlled to move along the determined escape moving direction to realize escape.

[0065] The robot escape method provided by the embodiment of the application first monitors the preset trigger condition corresponding to escape identification in real time, starts to determine the escape mode required at present when the set condition is monitored, that is, determines the escape mode (such as selecting omnidirectional escape or differential escape) according to the relative size and distance relationship between the obstacle and the target robot. If it is determined that the escape mode required at present is omnidirectional escape, the best moving direction of the robot for current escape is determined, that is, the escape moving direction is determined, in combination with the global obstacle avoidance path. Finally, the robot is controlled to move according to the determined escape moving direction to complete escape.

[0066] In this way, the present scheme determines different escape modes according to the actual conditions of the current scene, so that the present scheme can cope with diversified complex environments, and when omnidirectional escape is performed, the escape direction is determined according to the global obstacle avoidance path, so that the vehicle can be quickly integrated into the planned safe path after escape, the possibility of secondary escape is reduced, and the escape efficiency is improved. And when the robot performs a delivery task, the robot delivery success rate, delivery efficiency and safety during delivery can also be improved by the present scheme, thereby improving the intelligent level of the robot. Omnidirectional escape can move crabwise, omnidirectional escape in the target scene is also closer to the behavior of people in the scene, is more in line with user expectations, and can improve the intelligent interaction level of the robot, thereby improving the motion experience.

[0067] The steps of the embodiment of the application are described below:

[0068] For step S101, in this step, the relative size and distance relationship between the obstacle and the target robot includes: relative size information between the obstacle and the target robot, and distance relationship between the obstacle and the target robot.

[0069] The omnidirectional escape is a process in which the robot can escape through omnidirectional movement when encountering obstacles or difficulties. The omnidirectional movement means that the robot can move freely in any direction.

[0070] The differential escape is a process in which the robot escapes by using a differential drive system. The differential drive system controls the movement direction and turning of the robot by controlling the speed difference between the left and right wheels. Therefore, in the differential escape process, the robot changes the movement trajectory by adjusting the speed difference between the left and right wheels, thereby bypassing obstacles or changing the driving direction. In the embodiments of the present application, the robot is installed with an omnidirectional chassis, and the control mode of the chassis wheel group has two modes of differential control and omnidirectional control.

[0071] In the robot movement process, the escape mode is not identified in real time, and the escape mode identification is only performed when the preset trigger condition is met, i.e., the preset trigger condition is a preset condition for escape mode identification. When the preset trigger condition is met, the escape mode is determined, otherwise the escape mode is not determined. In this way, the computing resources can be effectively saved.

[0072] In an embodiment provided by the present application, whether the preset trigger condition is met is determined by the following steps: obtaining an operation instruction of a target user and movement information of the target robot; when the operation instruction is a preset instruction and / or the duration of the target robot in a stagnant state determined according to the movement information exceeds a preset duration, it is determined that the preset trigger condition is met, otherwise it is determined that the preset trigger condition is not met.

[0073] Here, the operation instruction is obtained through the interaction between the user and the robot, and the interaction mode may, for example, include physical input device interaction, voice input interaction, gesture control interaction, etc. The operation instruction may, for example, include position instructions (such as navigation instructions (indicating a target position), route instructions, etc.), movement instructions (such as moving direction, speed instructions, etc.).

[0074] The obtained movement information of the target robot may, for example, include position, speed, attitude, acceleration, etc. The movement information may, for example, be obtained by GPS, laser radar, speed sensor, IMU, etc.

[0075] The operation instruction being a preset instruction means that whether the operation instruction is consistent with a preset instruction is determined. The selection of the preset instruction may, for example, be based on the application scene and task target of the robot. For example, the preset instruction may, for example, be set as a navigation instruction including a target terminal point.

[0076] The preset duration may, for example, be set according to actual conditions.

[0077] For example, the situation of meeting the preset triggering condition is illustrated as follows: assuming that the robot speed is reduced to zero and does not move for a period of time (for example, 30s), and / or a navigation instruction including a target end point is received, the current required escape mode is determined. For a delivery robot, when a user stands in front of the robot to operate the screen of the robot to select a delivery destination, and then clicks to issue a start delivery instruction, the robot may meet the preset condition, at which time the omnidirectional escape is more efficient and the user experience is better.

[0078] In this way, by triggering the escape mode identification in combination with the instruction information (for example, the instruction including the target end point information), for the case that the user stands in front of the robot screen to operate when the robot screen is arranged in front, the robot can escape in time and continue to move towards the target, thereby providing guarantee for continuing to execute the task; meanwhile, the robot is prevented from blocking the way, and the user experience is improved. Moreover, the scheme can also consider the motion information for a period of time to determine whether to trigger the escape mode identification, rather than escaping immediately once stopping, so that the escape action can be avoided at each pause or short stagnation, and the efficiency and reliability of the system can be effectively improved.

[0079] Continuing to step S101, in an embodiment provided by the present application, the escape mode is determined to be omnidirectional escape by the following steps:

[0080] S1011, determining a projection size of the target obstacle on an obstacle avoidance axis according to the contour coordinate information of the target obstacle in the robot coordinate system.

[0081] S1012, determining a projection size ratio of the target obstacle relative to the target robot according to the projection size and the size of the target robot.

[0082] S1013, when the projection size ratio and the nearest measured distance between the target robot and the target obstacle are both within the respective threshold range, determining that the escape mode is omnidirectional escape.

[0083] For step S1011, the obstacle avoidance axis is perpendicular to a path axis in the robot coordinate system, and the path axis is a coordinate axis consistent with the planned path movement direction of the target robot.

[0084] For example, please refer to Figure 2 , Figure 2 for an escape scene schematic diagram provided by the present application. As shown in Figure 2 , the robot coordinate system (represented by X axis and Y axis) is shown in the figure, Figure 2 The origin of the robot coordinate system is determined according to the center point of the robot (in addition, the origin of the robot coordinate system can also be determined by the sensor center point on the robot, etc.). Figure 2The X-axis in the figure is consistent with the planned path movement direction (may be referred to as a path axis), so Figure 2 The Y-axis in the figure is the obstacle avoidance axis, so according to Figure 2 It can be seen that the projection size of the target obstacle on the obstacle avoidance axis is D.

[0085] For step S1012, the size of the target robot can be determined in advance. Specifically, the projection diameter of the robot on the Y-axis can be determined as the size of the target robot, or the minimum circumscribed circle diameter of the robot can be determined as the size.

[0086] In this step, when the projection size ratio of the target obstacle relative to the target robot is determined according to the projection size and the size of the target robot, specifically, the ratio of the projection size to the size of the target robot can be determined as the projection size ratio.

[0087] For example, please continue to refer to Figure 2 , the projection size ratio K = D / 2R is shown.

[0088] For step S1013, the closest measured distance between the target robot and the target obstacle can refer to the straight line distance from the current position of the robot to the surface of the closest obstacle.

[0089] Please continue to refer to Figure 2 , Figure 2 In the figure, d is the closest measured distance between the target robot and the target obstacle. In addition, the closest measured distance between the target robot and the target obstacle can also be the straight line distance from the center of the robot to the surface of the closest obstacle.

[0090] Here, the threshold range corresponding to the closest measured distance is related to the size of the target robot.

[0091] For example, the threshold range corresponding to the projection size ratio can be [a, b] (a is less than b, and the values of a and b can be adaptively determined), and the threshold range corresponding to the closest measured distance can be [R+n, R+m] (n is less than m, and the values of n and m can be adaptively determined). For example, a = 0.2, b = 2.5; n = 0, m = 0.8; under this threshold condition, when the condition is met, the robot has a certain distance from the obstacle, and the distance is relatively close, the size of the robot is relatively small compared to the obstacle, and the blind area is small; at this time, omnidirectional escape can reduce the blind area scraping problem caused by differential escape turning. On the other hand, omnidirectional escape can move in crab mode, and omnidirectional escape is also close to the behavior of people in the target scene, which is more in line with user expectations and can improve the intelligent interaction level of the robot, thereby improving the motion experience.

[0092] Furthermore, if the contents of steps S1011-S1013 are not met, it can be determined that the current escape method is differential escape.

[0093] In this way, by dynamically analyzing the size and distance of obstacles and combining them with the robot's motion model, the robot can intelligently judge and identify target scenarios that require omnidirectional escape operations, thereby achieving accurate identification of escape methods. This improves the robot's obstacle avoidance and escape efficiency in complex environments and enhances the robot's autonomous decision-making capabilities.

[0094] Regarding step S102, after determining that the required escape method is global escape, a global obstacle avoidance path planned based on the current conditions is obtained. Then, based on the relative positional relationship between the obtained global obstacle avoidance path and the target robot, the optimal movement direction is determined, i.e., the escape movement direction of the target robot is determined. The global obstacle avoidance path can be a new global path planned by the robot planner based on the road condition information detected by the current sensors, combined with the robot's current position and destination position.

[0095] In one embodiment provided in this application, determining the escape movement direction of the target robot based on the global obstacle avoidance path includes: determining the movement direction in which the target robot moves toward the global obstacle avoidance path as the escape movement direction of the target robot.

[0096] Here, the escape movement direction includes the lateral movement direction along the obstacle avoidance axis and / or the direction of movement towards the target escape point on the global obstacle avoidance path.

[0097] The lateral movement direction can be understood as the robot adopting a horizontal crab-like movement method. The target escape point is the optimal movement target point determined based on the robot's current situation. The crab-like movement method allows the robot to more smoothly return to differential motion mode after escaping the obstacle, making the motion transition more natural.

[0098] That is, based on the global obstacle avoidance path, determine whether the global path point within a preset distance range of the robot's current position is on the left or right side of the X-axis. If the global path point is on the left side of the X-axis, the robot will move to the left to make way; if both are on the right side, the robot will move to the right to make way.

[0099] For examples, please continue reading. Figure 2 , Figure 2 Points A and B in the diagram are the target escape points. The determined escape movement directions include the direction in which the robot moves from its current position to point A (the lateral movement direction along the obstacle avoidance axis) and the direction in which the robot moves from its current position to point B (the direction in which it moves towards the target escape point on the global obstacle avoidance path).

[0100] It should be noted that the exact locations of points A and B are unknown when determining the escape direction. Furthermore, the direction determined at this point, moving towards the target escape point on the global obstacle avoidance path, is only a general direction. The reason for first determining whether the escape direction is specific or general is to determine how the target escape point is calculated, thus determining whether to calculate A or B as the target escape point.

[0101] In this way, determining the robot's escape direction based on the global obstacle avoidance path helps the robot quickly find an effective escape route, reducing the time spent on random or ineffective attempts and improving the efficiency of the escape process. Furthermore, directly determining the escape direction based on the lateral direction of the obstacle avoidance axis can effectively reduce the complexity of the escape process. Choosing to move towards a point on the global obstacle avoidance path effectively prevents the robot from colliding with obstacles during the escape process, allowing it to return to the global path more quickly. Moreover, the two escape direction selection methods provided by this solution enable the robot to flexibly respond in various scenarios, thereby effectively improving the robot's intelligence, speed, and safety in escaping obstacles.

[0102] It's also important to note that determining the escape direction is crucial because the robot's available escape directions vary depending on the obstacle's relative position. Without specifying a direction, the robot might perform ineffective or redundant actions, wasting time and potentially getting stuck in a repetitive escape loop, unable to escape the predicament for an extended period. Therefore, optimizing the escape direction is necessary to improve the success rate of yielding and enhance the escape experience, leading to more efficient yielding.

[0103] For an example, please refer to Figure 3 , Figure 3 This is a schematic diagram illustrating a possible escape and movement direction provided in this application. For example... Figure 3 As shown, in a wide-road scenario, the positional relationship between the robot and obstacles can exist in three ways. Figure 3 In the left and middle images, the robot has two selectable movement directions, and within each direction, it can move in multiple specific directions. Figure 3 The right-hand image shows that although only one direction is available, if the robot is not told whether to move to the right, to the upper right, or to the lower right, it may make ineffective or redundant movements, thus failing to escape the obstacle. Therefore, it is necessary to clearly define the robot's direction of movement for escaping the obstacle.

[0104] Furthermore, the application also provides another implementation method for the escape direction, which includes: after determining that the escape type and escape method are omnidirectional escape, the escape method further includes:

[0105] S201, discretely sampling the motion control parameters of the target robot to determine a plurality of simulation paths.

[0106] S202, performing collision monitoring on each simulation path to determine at least one candidate escape path.

[0107] S203, calculating the safety angle range between each candidate escape path and the obstacle avoidance axis.

[0108] S204, determining the escape moving direction of the target robot according to the maximum safety angle range.

[0109] For step S201, the motion control parameters include but are not limited to: rudder angle and linear speed. Discrete sampling is to divide the continuous control space into a plurality of discrete action options, each action option corresponds to a set of control instructions (e.g. moving angle, speed range in each direction, etc.). Then, using the discretely sampled control parameters, the system generates a plurality of different moving paths (i.e. simulation paths).

[0110] For example, please refer to Figure 4 , Figure 4 A schematic diagram of a plurality of paths determined by the present application is provided, as shown in Figure 4 , the plurality of simulation paths obtained are represented by arrow line segments of different lengths. The arrow line segments of different lengths represent that the speed and angle are sampled to obtain different sizes of driving paths. Among them, the angle between each line segment and the positive direction of the x-axis of the robot xoy coordinate system represents the sampling of the rudder deflection angle.

[0111] Here, the calculation formula used in the simulation path calculation is as follows:

[0112] X t+1 =X t +V t *cos(θ)*T

[0113] Y t+1 =Y t +V t *sin(θ)*T

[0114] (X t+1 , Y t+1 ) represents the end point of the simulation path after moving, (X t , Y t ) represents the current position of the robot, V t is the sampling speed, T is the sampling time, and θ is the sampling angle.

[0115] For step S202, in this step, collision detection is performed on each simulated path in combination with the position of the obstacle and the wheel information, to determine a path that does not collide with the obstacle, i.e., to determine at least one candidate escape path.

[0116] For example, please refer to Figure 4 , Figure 4 12 simulated paths are shown in

[0117] For step S203, for each candidate escape path, the included angle value between the candidate escape path and the obstacle avoidance axis is calculated, i.e., to determine the safety angle range (less than 90°) between the candidate escape path and the obstacle avoidance axis.

[0118] For example, please refer to Figure 4 , so as to determine 5 angle ranges, and according to the 5 angle ranges, the angle ranges θ1 and θ2 corresponding to the collision-free safe trajectory in the first and fourth quadrants of the robot xoy coordinate system can be counted.

[0119] For step S204, according to the determined multiple safety angle ranges, the maximum safety angle range is determined, and the escape moving direction of the target robot is determined within the maximum safety angle range.

[0120] Here, the direction of lateral movement along the obstacle avoidance axis within the maximum safety angle range can be determined as the escape moving direction, or any moving direction within the maximum safety angle range can be determined as the escape moving direction.

[0121] For example, please refer to Figure 4 , the determined maximum safety angle range is θ2, so the escape moving direction can be horizontally to the right, or within the range of θ2.

[0122] In this way, through the processes of collision monitoring, angle calculation and path screening, it can be ensured that the robot avoids obstacles and dangerous areas during the escape process, and by using multiple simulated paths and the evaluation of the maximum safety angle, the most safe and efficient moving direction or even path can be selected, thereby avoiding lengthy or unnecessary detours.

[0123] For step S103, in this step, the robot is controlled to move along the determined escape moving direction to achieve escape.

[0124] During the process of controlling the robot to move along the determined escape moving direction, in order to avoid the situation of excessive movement colliding with obstacles, the target point of movement needs to be determined, so as to facilitate the orderly progress of escape and improve the efficiency of escape.

[0125] Therefore, in an embodiment provided by the present application, the control of the target robot to escape according to the escape moving direction comprises:

[0126] S1031, determining a point meeting the moving distance requirement and / or having the optimal position evaluation value in the escape moving direction as the target escape point.

[0127] S1032, controlling the target robot to move to the target escape point to complete the escape.

[0128] For step S1031, the position evaluation value is determined by the position evaluation function.

[0129] Here, the point meeting any requirement (distance requirement and optimal evaluation value requirement) can be determined as the target escape point, or all points meeting the requirement can be determined as the target escape point.

[0130] In order to accurately determine the target escape point, the present application provides two different embodiments.

[0131] In an embodiment provided by the present application, the target escape point is determined by the following steps: determining the projection point of the global obstacle avoidance path on the obstacle avoidance axis farthest from the origin of the coordinate system along the escape moving direction as the target escape point.

[0132] In this embodiment, the global obstacle avoidance path is projected to determine all projection points of the path points of the global obstacle avoidance path on the obstacle avoidance axis along the determined escape moving direction; then, according to all the determined projection points, the point or point set farthest from the origin (0, 0) of the coordinate system is determined, and the point corresponding to the path point closest to the robot is determined as the target escape point.

[0133] Here, the global obstacle avoidance path subjected to the projection processing can be all the paths, or only the global obstacle avoidance paths within a certain range from the robot. In order to reduce the processing data, the global obstacle avoidance paths within a certain range are generally selected for projection processing.

[0134] For example, please refer to the A point in Figure 2 , Figure 2 which is the target escape point determined by this embodiment.

[0135] In this way, by analyzing the projection of the global obstacle avoidance path in the escape moving direction, the projection point farthest from the origin of the coordinate system is selected as the target escape point, which can effectively simplify the escape processing logic and improve the escape efficiency.

[0136] In another embodiment provided by the present application, the target escape point is determined by the following steps, which comprise:

[0137] S10311, extracting at least one candidate path point from the global obstacle avoidance path along the escape moving direction according to a preset search distance.

[0138] S10312, determining a position evaluation value of each candidate path point according to a position evaluation function.

[0139] S10313, determining the candidate path point with the optimal position evaluation value as the target escape point.

[0140] For step S10311, first, a preset search distance is set, and then a plurality of candidate path points are extracted from the global obstacle avoidance path along the escape moving direction of the robot (rough direction, such as left or right), and the candidate path points are located within the preset search distance range, and at least one candidate path point is obtained.

[0141] Here, the preset search distance is usually determined by the motion ability of the robot, the complexity of the environment, and the actual demand. The preset search distance can be static or dynamically adjusted depending on the real-time changes of the environment or the escape conditions faced by the robot.

[0142] For step S10312, the position evaluation function is as follows:

[0143] f(x) = a * f(dist) + b * f(safe) + g * f(theta)

[0144] Wherein, f(dist) represents the distance of the candidate path point to the robot position, the purpose is to select the target point that can escape and is close to the current position of the robot. f(safe) represents whether the candidate path point is safe, that is, the cost value in the cost map, the purpose is to preferentially select the target point that is far away from the obstacle and safe. f(theta) represents the included angle between the candidate path point and the current position of the robot, the purpose is to preferentially select the target point with small included angle and small rudder deflection, so that the escape speed is fast. a, b, g are the respective weight values, which can be adaptively determined; f(x) is the position evaluation value of the xth candidate path point.

[0145] For step S10313, the candidate path point with the optimal position evaluation value can be the candidate path point with the highest position evaluation value.

[0146] For example, please continue to refer to Figure 2 , Figure 2 The B point in the figure is the target escape point determined by the technical solution of the embodiment.

[0147] In this way, by presetting the search distance and the intelligent position evaluation function, the system can efficiently extract and evaluate the candidate path points from the global obstacle avoidance path and quickly determine the optimal target escape point, so that the robot can quickly and efficiently perform the escape task and reduce unnecessary path planning and computing burden.

[0148] For step S1032, the target robot is controlled to move from the current position to the target escape point to complete the escape.

[0149] The moving speed of the robot can be dynamically adjusted according to the actual situation. Alternatively, a commonly used T-shaped or S-shaped speed curve can be used to control the movement of the robot.

[0150] In this way, the point that meets the movement distance requirement and / or has the optimal position evaluation value in the escape movement direction is determined as the target escape point, which can ensure that the robot selects the most reasonable escape path and avoids blind movement, thereby improving the escape efficiency.

[0151] It should be noted that in step S1032, if the movement direction is lateral movement, the robot can be controlled to adjust the rudder to complete the escape by directly moving laterally. During the escape process, the orientation of the robot does not change and always faces the original forward direction, such as the direction of the obstacle.

[0152] For example, please refer to Figure 5 , Figure 5 A lateral escape movement process diagram is provided for the present application. As shown in Figure 5 , the robot is controlled to crab move to the target escape point at a corresponding speed to complete the escape.

[0153] In addition, when the target escape point is determined according to the candidate path points on the global obstacle avoidance path, the control of the target robot moving to the target escape point includes: determining the rudder adjustment parameter of the target robot according to the position information of the target escape point in the robot coordinate system; controlling the orientation of the target robot according to the rudder adjustment parameter and controlling the target robot to move to the target escape point according to a preset speed adjustment strategy.

[0154] In this embodiment, the rudder parameter of the target robot is used to ensure the angle of the rudder that needs to be adjusted for the robot to move to the target escape point for escape.

[0155] For example, the rudder adjustment parameter of the target robot can be determined by the following formula:

[0156]

[0157] Here, x and y are the coordinates of the target escape point in the robot coordinate system.

[0158] The preset speed adjustment strategy can be a T-shaped or S-shaped speed curve, or other.

[0159] In this way, by accurate steering adjustment and speed adjustment strategy, the target robot can be ensured to move to the target escape point efficiently and safely, thereby improving the escape efficiency.

[0160] Based on the same inventive concept, the application also provides an escape device corresponding to the escape method. Since the principle of the device in the application solves the problem similarly to the escape method described above, the implementation of the device can be referred to the implementation of the method, and the repeated parts will not be described again.

[0161] Please refer to Figure 6 , Figure 7 , Figure 6 is a structural schematic diagram of an escape device for a robot provided by the application, Figure 7 is a structural schematic diagram of an escape device for a robot provided by the application. As shown in Figure 6 , the escape device 600 comprises:

[0162] An escape mode determination module 610 is configured to determine an escape mode according to the relative size and distance relationship between the target robot and the obstacle when a preset trigger condition is met; wherein the escape mode comprises omnidirectional escape and differential escape.

[0163] An escape direction determination module 620 is configured to determine the escape moving direction of the target robot according to the global obstacle avoidance path when the escape mode is determined as omnidirectional escape.

[0164] A control module 630 is configured to control the target robot to escape according to the escape moving direction.

[0165] Optionally, the escape mode determination module 610 is configured to determine the escape mode as omnidirectional escape by the following steps:

[0166] According to the contour coordinate information of the target obstacle in the robot coordinate system, the projection size of the target obstacle on the obstacle avoidance axis is determined; wherein the obstacle avoidance axis is perpendicular to the path axis in the robot coordinate system, and the path axis is a coordinate axis consistent with the planned path moving direction of the target robot.

[0167] According to the projection size and the size of the target robot, the projection size ratio of the target obstacle relative to the target robot is determined.

[0168] When the projection size ratio and the nearest measured distance between the target robot and the target obstacle are both within the respective threshold range, the escape mode is determined as omnidirectional escape.

[0169] Optionally, when the escape direction determination module 620 is configured to determine the escape moving direction of the target robot according to the global obstacle avoidance path, the escape direction determination module 620 is configured to:

[0170] determine a moving direction of the target robot approaching the global obstacle avoidance path as the escape moving direction of the target robot; wherein the escape moving direction comprises a lateral moving direction along an obstacle avoidance axis and / or a direction moving to a target escape point on the global obstacle avoidance path.

[0171] Optionally, when the control module 630 is configured to control the target robot to escape according to the escape moving direction, the control module 630 is configured to:

[0172] determine a point on the escape moving direction satisfying a moving distance requirement and / or having an optimal position evaluation value as the target escape point; wherein the position evaluation value is determined by a position evaluation function;

[0173] control the target robot to move to the target escape point to complete the escape.

[0174] Optionally, the control module is further configured to determine the target escape point by the following steps:

[0175] determine a projection point of the global obstacle avoidance path on the obstacle avoidance axis relative to the origin of the coordinate system along the escape moving direction as the target escape point;

[0176] and / or extract at least one candidate path point from the global obstacle avoidance path along the escape moving direction according to a preset search distance;

[0177] determine a position evaluation value of each candidate path point according to a position evaluation function;

[0178] determine a candidate path point having an optimal position evaluation value as the target escape point.

[0179] Optionally, as shown in Figure 7 the escape device further comprises a trigger condition determination module 640, and the trigger condition determination module 640 is configured to determine whether a preset trigger condition is met by the following steps:

[0180] obtain an operation instruction of a target user and motion information of the target robot;

[0181] determine that the preset trigger condition is met when the operation instruction is a preset instruction and / or a duration of a stagnation state of the target robot determined according to the motion information exceeds a preset duration, and otherwise, determine that the preset trigger condition is not met.

[0182] Optionally, when the target escape point is determined according to the candidate path point on the global obstacle avoidance path, the control module 630 is configured to:

[0183] determine a steering adjustment parameter of the target robot according to the position information of the target escape point in the robot coordinate system;

[0184] control the orientation of the target robot according to the steering adjustment parameter, and control the target robot to move to the target escape point according to a preset speed adjustment strategy.

[0185] Optionally, the escape direction determination module 620 is further configured to:

[0186] after determining that the escape mode is omnidirectional escape, discretely sample the motion control parameter of the target robot, and determine a plurality of simulated paths;

[0187] perform collision monitoring on each simulated path, and determine at least one candidate escape path;

[0188] calculate a safety angle range between each candidate escape path and an obstacle avoidance axis;

[0189] determine the escape moving direction of the target robot according to the maximum safety angle range.

[0190] Please refer to Figure 8 , Figure 8 A structural schematic diagram of an electronic device provided by an embodiment of the present application. As shown in Figure 8 , the electronic device 800 includes a processor 810, a memory 820, and a bus 830.

[0191] The memory 820 stores machine readable instructions executable by the processor 810. When the electronic device 800 is running, the processor 810 and the memory 820 communicate through the bus 830. The machine readable instructions executed by the processor 810 can perform the steps in the method embodiments as shown in Figure 1 、 Figure 2 、 Figure 4 and Figure 5 . For specific implementation manners, please refer to the method embodiments, which will not be described here.

[0192] The present application also provides a computer readable storage medium, which stores a computer program. When the computer program is run by a processor, the computer program can execute the steps in the method embodiments as shown in Figure 1 、 Figure 2 、 Figure 4 and Figure 5The steps in the method embodiments shown can be implemented in the manner described above, and details are not repeated here.

[0193] Those skilled in the art can clearly understand that, for the convenience and brevity of the description, the specific working processes of the system, device and unit described above can refer to the corresponding processes in the foregoing method embodiments, and details are not repeated here.

[0194] In several embodiments provided in the present application, it should be understood that the disclosed system, device and method can be implemented in other ways. The device embodiments described above are only schematic, for example, the division of the units is only a logical function division, and actual implementation can have another division manner, for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the units shown or discussed can be indirect coupling or communication connection through some communication interfaces, devices or units, and can be electrical, mechanical or other forms.

[0195] The units described as separate components can or can not be physically separate, and the components shown as units can or can not be physical units, that is, they can be located in one place, or can be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the embodiment scheme.

[0196] In addition, the functional units in each embodiment of the present application can be integrated in one processing unit, or each unit can exist physically, or two or more units can be integrated in one unit.

[0197] If the functions are realized in the form of software function units and sold or used as independent products, they can be stored in a non-volatile computer readable storage medium executable by a processor. Based on this understanding, the technical solutions of the present application essentially or the parts that make contributions to the prior art or parts of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium, and includes a plurality of instructions for causing a computer device (which can be 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. The foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (Read-Only Memory, ROM), a random access memory (Random Access Memory, RAM), a magnetic disk or an optical disk, and various program code storage media.

[0198] Finally, it should be noted that the above-described embodiments are merely specific embodiments of the present application, which are used to illustrate the technical solutions of the present application, but not to limit the same. The protection scope of the present application is not limited thereto. Although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those skilled in the art that any skilled person in the art can still modify or easily think of changes to the technical solutions recorded in the foregoing embodiments, or make equivalent replacements to some of the technical features, within the technical scope disclosed by the present application. The modifications, changes or replacements do not make the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present application, and should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A method for a robot to escape from a difficult situation, characterized in that, The escape method includes: Once the preset triggering conditions are met, the escape method is determined based on the relative size and distance relationship between the obstacle and the target robot; wherein, the escape method includes omnidirectional escape and differential escape. Once it is determined that the escape method is omnidirectional, the escape movement direction of the target robot is determined according to the global obstacle avoidance path; Control the target robot to escape from the obstacle according to the escape movement direction; The following steps were used to determine that the escape method was omnidirectional: Based on the contour coordinate information of the target obstacle in the robot coordinate system, the projection size of the target obstacle on the obstacle avoidance axis is determined; wherein, the obstacle avoidance axis is perpendicular to the path axis in the robot coordinate system, and the path axis is a coordinate axis consistent with the planned path movement direction of the target robot; Based on the projected size and the external dimensions of the target robot, determine the ratio of the projected size of the target obstacle to the projected size of the target robot; When the projection size ratio and the closest measured distance between the target robot and the target obstacle are both within their respective threshold ranges, the escape method is determined to be omnidirectional escape.

2. The escape method according to claim 1, characterized in that, Determining the escape movement direction of the target robot based on the global obstacle avoidance path includes: The direction in which the target robot moves toward the global obstacle avoidance path is determined as the escape direction of the target robot; wherein, the escape direction includes a lateral movement direction along the obstacle avoidance axis and / or a direction of movement toward the target escape point on the global obstacle avoidance path.

3. The escape method according to claim 1, characterized in that, The control of the target robot to escape from the obstacle according to the escape movement direction includes: Points that meet the movement distance requirements and / or have the optimal position evaluation value along the escape movement direction are identified as target escape points; wherein, the position evaluation value is determined by a position evaluation function. Control the target robot to move to the target escape point to complete the escape.

4. The escape method according to claim 3, characterized in that, The target escape point is determined through the following steps: The point on the obstacle avoidance axis that is furthest from the origin of the coordinate system along the direction of escape movement is determined as the target escape point. And / or, based on a preset search distance, extract at least one candidate path point from the global obstacle avoidance path along the escape movement direction; The location evaluation value of each candidate path point is determined based on the location evaluation function; The candidate path point with the best location evaluation value is determined as the target escape point.

5. The escape method according to claim 1, characterized in that, Determine whether the preset trigger conditions are met by following these steps: Acquire the target user's operation commands and the target robot's motion information; If the operation instruction is a preset instruction and / or the duration of the target robot's stagnant state is determined to exceed a preset duration based on the motion information, the preset triggering condition is determined to be met; otherwise, the preset triggering condition is determined not to be met.

6. The escape method according to claim 4, characterized in that, When the target escape point is determined based on candidate path points on the global obstacle avoidance path, controlling the target robot to move to the target escape point includes: Based on the position information of the target escape point in the robot coordinate system, determine the servo motor adjustment parameters of the target robot; The target robot's orientation is controlled according to the servo motor adjustment parameters, and the target robot is moved to the target escape point according to the preset speed adjustment strategy.

7. The escape method according to claim 1, characterized in that, After determining that the escape method is omnidirectional, the escape method further includes: The motion control parameters of the target robot are discretized and sampled to determine multiple simulated paths; For each determined simulated path, collision detection is performed to identify at least one candidate escape path; Calculate the safe angle range between each candidate escape path and the obstacle avoidance axis; The direction of escape movement for the target robot is determined based on the maximum safe angle range.

8. A robot's escape device, characterized in that, The escape device includes: The escape method determination module is used to determine the escape method based on the relative size and distance relationship between the obstacle and the target robot when a preset trigger condition is met; wherein, the escape method includes omnidirectional escape and differential escape; The escape direction determination module is used to determine the escape movement direction of the target robot based on the global obstacle avoidance path after determining that the escape method is omnidirectional escape. The control module is used to control the target robot to escape from the obstacle according to the escape movement direction; The escape method determination module is used to determine that the escape method is omnidirectional escape through the following steps: Based on the contour coordinate information of the target obstacle in the robot coordinate system, the projection size of the target obstacle on the obstacle avoidance axis is determined; wherein, the obstacle avoidance axis is perpendicular to the path axis in the robot coordinate system, and the path axis is a coordinate axis consistent with the planned path movement direction of the target robot; Based on the projected size and the external dimensions of the target robot, determine the ratio of the projected size of the target obstacle to the projected size of the target robot; When the projection size ratio and the closest measured distance between the target robot and the target obstacle are both within their respective threshold ranges, the escape method is determined to be omnidirectional escape.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, performs the steps of the escape method as described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Intelligent mobile device and control method thereof, and storage medium

    CN108693880A

  • Omnidirectional mobile robot escape method and device

    CN115437388A

  • Mobile device escape method and apparatus, computer device, and storage medium

    WO2024139393A1