Robot movement method, apparatus, robot, and computer program product

By constructing local cost maps and local path planning, robots can avoid obstacles when they encounter them, reducing resource consumption and time waste, and improving mobility efficiency.

CN122195072APending Publication Date: 2026-06-12CHONGQING PHOENIX TECHNOLOGY CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
CHONGQING PHOENIX TECHNOLOGY CO LTD
Filing Date
2026-03-26
Publication Date
2026-06-12

AI Technical Summary

Technical Problem

In existing technologies, when a robot detects that the global path has become unreachable due to obstacles, it often performs a global replanning, which leads to a waste of computing resources and time and affects movement efficiency.

Method used

Construct a local cost map centered on the robot's current position, select candidate waypoints from the global path, perform local path planning to avoid obstacles, and then stitch the local path with the global path to form the target path.

🎯Benefits of technology

It effectively reduces the resource consumption and time wastage of path planning, ensures that the robot can successfully avoid obstacles, and improves movement efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122195072A_ABST
    Figure CN122195072A_ABST
Patent Text Reader

Abstract

The application relates to the technical field of robot control, in particular to a robot moving method and device, a robot and a computer program product. The method comprises the following steps: in response to the robot moving along at least one path passing point in a global path, if there is an obstacle between the current position of the robot and the next path passing point, which hinders the robot from advancing, a local cost map is constructed with the current position of the robot as the center; at least one candidate passing point belonging to the local cost map is selected from each path passing point contained in the global path; path planning is performed according to each candidate passing point, so that a local path not passing through the obstacle is obtained; the local path and the global path are spliced to obtain a target path; and the robot is controlled to move along the target path. The application guarantees that the robot can successfully avoid the obstacle, effectively reduces resource consumption and time waste caused by path planning, and prevents the moving efficiency of the robot from being affected.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robot control technology, and in particular to a robot movement method, apparatus, robot, and computer program product. Background Technology

[0002] When a robot detects that a global path has become unreachable due to an obstacle, the common practice is to trigger a complete global replanning. Some robots even perform global path planning at regular intervals, regardless of whether the robot has detected an obstacle.

[0003] Therefore, the robot needs to consume a lot of computing resources and time to avoid obstacles, which affects the robot's movement efficiency. Summary of the Invention

[0004] Based on this, this application addresses the aforementioned technical problems by providing a robot movement method, apparatus, robot, and computer program product that can reduce robot path planning resource consumption.

[0005] In a first aspect, this application provides a robot movement method, comprising:

[0006] In response to the robot moving along at least one pathway point in the global path, if there is an obstacle preventing the robot from moving forward between the robot's current position and the next pathway point, a local cost map centered on the robot's current position is constructed.

[0007] Select at least one candidate path point belonging to the local cost map from the path points included in the global path;

[0008] Based on each of the candidate waypoints, a path is planned to obtain a local path that does not pass through the obstacle.

[0009] The local path and the global path are concatenated to obtain the target path;

[0010] Control the robot to move along the target path.

[0011] The robot movement method in this application enables the following steps: First, when there are obstacles hindering the robot's progress between its current position and the next path point, a local cost map centered on the robot's current position is constructed. Then, at least one candidate path point belonging to the local cost map is selected from the path points included in the global path. Next, path planning is performed based on each candidate path point to obtain a local path that does not pass through the obstacles. Finally, the local path and the global path are concatenated to obtain a target path. Finally, the robot is controlled to move along the target path. As can be seen from the above, this application does not adopt the global path planning strategy in the prior art during the robot's movement control process. Instead, it constructs a local cost map centered on the robot's current position and plans a local path that does not pass through obstacles based on the candidate path points belonging to the local cost map. Since the local path is only planned based on some candidate path points in the global path, the time and computational resources consumed in planning the global path are greater than those consumed in planning the local path. This ensures that the robot can successfully avoid obstacles while effectively reducing the resource consumption and time waste caused by path planning, and preventing any impact on the robot's movement efficiency.

[0012] In an optional embodiment of the first aspect, the step of performing path planning based on each of the candidate waypoints to obtain a local path that does not pass through the obstacle includes:

[0013] Based on the distance between each candidate waypoint and the current position, the target waypoint that the robot can reach is determined from each candidate waypoint;

[0014] Determine the local path from the current location to the target waypoint.

[0015] The robot movement method in this application selects a target waypoint, thereby selecting a waypoint that can serve as the endpoint of a local path from at least one candidate waypoint. This ensures the smooth construction of the local path, thereby reducing the resource consumption and time waste caused by path planning and preventing any impact on the robot's movement efficiency.

[0016] In an optional embodiment of the first aspect, determining a target waypoint that the robot can directly reach from the candidate waypoints based on the interval distance between each candidate waypoint and the current position includes:

[0017] Based on the order of the distance between each candidate waypoint and the current position from farthest to closest, determine in turn whether there is a reachable path between each candidate waypoint and the current position;

[0018] The first candidate waypoint with a reachable path is taken as the target waypoint that the robot can reach.

[0019] The robot movement method in this application determines the reachability of each candidate waypoint by judging the distance between each candidate waypoint and the current position from farthest to closest. This ensures that the final determined target waypoint can effectively construct a local path, preventing the constructed local path from being undrivable or from being blocked by obstacles.

[0020] In an optional embodiment of the first aspect, determining the local path from the current location to the location of the target waypoint includes:

[0021] Determine at least one reachable path from the current location to the location of the waypoint of the target waypoint;

[0022] The reachable paths that meet the preset path filtering conditions are taken as the local paths.

[0023] The robot movement method in this application, after determining the target waypoint, plans reachable paths and performs path judgment on each path between the current position and the waypoint position, thereby selecting local paths that meet the preset path filtering conditions, thus ensuring the construction quality of local paths.

[0024] In an alternative embodiment of the first aspect, controlling the robot to move along the target path includes:

[0025] From the target path, determine the linearly reachable point that the robot can reach from its current position by moving in a straight line;

[0026] Based on the target point position of the linearly reachable point, the corresponding velocity parameters of the robot are determined; wherein, the velocity parameters include linear velocity and angular velocity;

[0027] Based on the speed parameters, the robot is controlled to move along the target path.

[0028] The robot movement method in this application requires controlling the robot's orientation during movement to avoid a mismatch between the robot's desired direction and its current orientation, which could cause movement malfunctions. Therefore, by determining the robot's speed parameters through linearly reachable points, the robot can effectively control its own orientation based on the speed parameters, ensuring that the robot can move smoothly along the target path.

[0029] In an optional embodiment of the first aspect, determining the robot's velocity parameters based on the target point position of the linearly reachable point includes:

[0030] Obtain at least one preset candidate parameter;

[0031] Based on the target point location of the linearly reachable point, the effectiveness of each candidate parameter is scored to obtain the effectiveness score of each candidate parameter.

[0032] The candidate parameter with the highest effectiveness score among all the candidate parameters is taken as the speed parameter corresponding to the robot.

[0033] The robot movement method in this application achieves parameter selection for different candidate parameters by scoring the effectiveness of each candidate parameter, thus ensuring the effectiveness of the speed parameter determination.

[0034] In an optional embodiment of the first aspect, the step of concatenating the local path and the global path to obtain the target path includes:

[0035] The path from the target waypoint to the end point of the global sub-path in the global path is taken as the global sub-path;

[0036] The target path is obtained by concatenating the endpoint of the local path with the starting point of the global sub-path.

[0037] The robot movement method in this application prevents interruptions or repetitions in the spliced ​​target path by concatenating the endpoint of the local path with the starting point of the global sub-path, thus ensuring the effectiveness of the target path planning.

[0038] Secondly, this application also provides a robotic mobile device, comprising:

[0039] A construction module is used to respond to the robot moving along at least one pathway point in the global path, and if there is an obstacle preventing the robot from moving forward between the robot's current position and the next pathway point, then a local cost map centered on the robot's current position is constructed.

[0040] The selection module is used to select at least one candidate path point belonging to the local cost map from the path points included in the global path.

[0041] The planning module is used to plan a path based on each of the candidate waypoints to obtain a local path that does not pass through the obstacle.

[0042] The concatenation module is used to concatenate the local path and the global path to obtain the target path;

[0043] The control module is used to control the robot to move along the target path.

[0044] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the method described above.

[0045] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the method described above.

[0046] Fifthly, this application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the method described in any of the above aspects.

[0047] Regarding the beneficial effects of any of the technical solutions in the second to fifth aspects mentioned above, refer to the beneficial effects of the corresponding technical solutions in the first aspect; repeated examples will not be listed here. Attached Figure Description

[0048] To more clearly illustrate the technical solutions in the embodiments of this application or related technologies, the drawings used in the description of the embodiments of this application or related technologies will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0049] Figure 1 This is a schematic diagram illustrating the application environment of a robot movement method provided in an embodiment of this application;

[0050] Figure 2 A flowchart illustrating the first robot movement method provided in this application embodiment;

[0051] Figure 3 A flowchart illustrating the second robot movement method provided in this application embodiment;

[0052] Figure 4 A flowchart illustrating the third robot movement method provided in this application embodiment;

[0053] Figure 5 A flowchart illustrating the fourth robot movement method provided in this application embodiment.

[0054] Figure 6 This is a schematic diagram of the structure of a robot mobile device provided in an embodiment of this application;

[0055] Figure 7 This is a schematic diagram of an optional internal structure of a computer device in one embodiment. Detailed Implementation

[0056] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are for illustrative purposes only and are not intended to limit the scope of this application.

[0057] The terms "first," "second," etc., used in this application may be used to describe various elements, but these elements are not limited by these terms. These terms are used only to distinguish the first element from the second element. The terms "comprising" and "having," and any variations thereof, used in this application, are intended to cover non-exclusive inclusion. The term "multiple" used in this application refers to two or more. The term "and / or" used in this application refers to one of the embodiments, or any combination of multiple embodiments.

[0058] The robot movement method provided in this application embodiment can be applied to, for example... Figure 1 In the application environment shown, robot 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be integrated onto server 104 or placed on a cloud or other network server. In response to the robot moving along at least one path point in the global path, if there is an obstacle preventing the robot from moving forward between its current position and the next path point, a local cost map centered on the robot's current position is constructed; at least one candidate path point belonging to the local cost map is selected from the path points included in the global path; path planning is performed based on each candidate path point to obtain a local path that does not pass through obstacles; the local path and the global path are concatenated to obtain the target path; and the robot is controlled to move along the target path. Server 104 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing cloud computing services.

[0059] In one exemplary embodiment, such as Figure 2 As shown, a robot movement method is provided, which is applied to... Figure 1 Taking robot 102 as an example, the explanation may include the following:

[0060] S201, in response to the robot moving along at least one path point in the global path, if there is an obstacle preventing the robot from moving forward between the robot's current position and the next path point, then a local cost map centered on the robot's current position is constructed.

[0061] The global path contains at least one path path point, and each path path point is connected sequentially.

[0062] In one embodiment of this application, when it is necessary to construct a local cost map centered on the robot's current position, the robot's sensors can be used to scan the surrounding environment. Then, the environmental information obtained by the sensor scan is used as the map information contained in the local cost map, thereby realizing the construction of a local cost map centered on the robot's current position.

[0063] The sensors can be laser sensors, fusion depth cameras, ultrasonic sensors, etc.

[0064] Specifically, when constructing a local cost map, the robot's current position can be used as the center of the local cost map. Data is collected by sensors deployed on the robot. The sensors scan 360 degrees to obtain distance information of the surrounding environment and output a series of point cloud data. The sensor data collected by the sensors is transformed from the sensor coordinate system to the map coordinate system, thereby realizing the construction of a local cost map centered on the robot's current position.

[0065] In this context, the map coverage of the local cost map is equal to the scanning coverage of the robot's sensors on the surrounding environment.

[0066] S202, Select at least one candidate path point belonging to the local cost map from the path points included in the global path.

[0067] In one embodiment of this application, for each path point included in the global path, it can be determined whether each path point is located within the local cost map; if so, the path point is regarded as a candidate path point belonging to the local cost map.

[0068] When determining whether each path path point is located within the local cost map, the determination can be made sequentially according to the order of distance of each path path point from the robot's current position, from farthest to nearest or from nearest to farthest.

[0069] S203, perform path planning based on each candidate waypoint to obtain a local path that does not pass through obstacles.

[0070] In one embodiment of this application, when it is necessary to perform path planning based on each candidate waypoint to obtain a local path that does not pass through obstacles, the following may be included: determining the target waypoint that the robot can reach from each candidate waypoint based on the distance between each candidate waypoint and the current position; determining the local path from the current position to the waypoint position of the target waypoint.

[0071] S204 concatenates the local and global paths to obtain the target path.

[0072] In one embodiment of this application, when it is necessary to concatenate local paths and global paths, the following may be included: taking the path from the target waypoint to the end point of the global sub-path in the global path as the global sub-path; concatenating the end point of the local path with the start point of the global sub-path to obtain the target path.

[0073] S205 controls the robot to move along the target path.

[0074] In one embodiment of this application, when it is necessary to control the robot to move along a target path, the robot's forward direction and forward speed can be determined according to the target path, and then the robot can be controlled to move along the target path according to the forward direction and forward speed.

[0075] To further improve the stability of the robot's movement along the target path, the frequency of determining the robot's forward direction and speed can be predetermined. By repeatedly determining the robot's forward direction and speed, the continuous and stable operation of the robot on the target path can be ensured.

[0076] The robot movement method in this application enables the construction of a local cost map centered on the robot's current position when obstacles hinder its movement between the robot's current position and the next path path. It then selects at least one candidate path point belonging to the local cost map from the path points included in the global path; furthermore, it performs path planning based on these candidate path points to obtain a local path that avoids obstacles; it concatenates the local and global paths to obtain the target path; and finally, it controls the robot to move along the target path. As can be seen from the above, this application does not employ the global path planning strategy of existing technologies during robot movement control. Instead, it constructs a local cost map centered on the robot's current position and plans a local path that avoids obstacles based on the candidate path points belonging to the local cost map. Since the local path is planned only based on a portion of the candidate path points in the global path, the time and computational resources consumed in planning the global path are greater than those consumed in planning the local path. This ensures that the robot can successfully avoid obstacles while effectively reducing resource consumption and time waste caused by path planning, preventing any impact on the robot's movement efficiency.

[0077] In one embodiment, such as Figure 3 As shown, when it is necessary to perform path planning based on each candidate waypoint to obtain a local path that does not pass through obstacles, the following can be included:

[0078] S301, Based on the distance between each candidate waypoint and the current position, determine the target waypoint that the robot can reach from each candidate waypoint.

[0079] It should be noted that when it is necessary to determine the target path point that the robot can directly reach from each candidate path point based on the distance between each candidate path point and the current position, the following can be included: in order of increasing distance between each candidate path point and the current position, determine whether there is a reachable path between each candidate path point and the current position; take the first candidate path point with a reachable path as the target path point that the robot can reach.

[0080] Among them, the reachable path to the candidate waypoint refers to the path from the candidate waypoint to the robot's current position.

[0081] S302, Determine the local path from the current location to the pathpoint location of the target pathpoint.

[0082] In one embodiment of this application, when it is necessary to determine a local path from the current location to the path of the target path, the following may be included: determining at least one reachable path from the current location to the path of the target path; and selecting the reachable paths that meet the preset path filtering conditions as local paths.

[0083] The path filtering conditions can be set or adjusted according to the actual situation, and the specific content of the path filtering conditions is not limited here; as an example, the path filtering condition can be to select the shortest path as the local path.

[0084] The robot movement method in this application selects a target waypoint, thereby selecting a waypoint that can serve as the endpoint of a local path from at least one candidate waypoint. This ensures the smooth construction of the local path, thereby reducing the resource consumption and time waste caused by path planning and preventing any impact on the robot's movement efficiency.

[0085] In one embodiment, such as Figure 4 As shown, when it is necessary to control the robot to move along a target path, the following can be included:

[0086] S401, From the target path, determine the linearly reachable points that the robot can reach from its current position by moving in a straight line.

[0087] Among them, the linearly reachable point refers to the farthest point that the robot can move from its current position along a straight line on the target path.

[0088] In one embodiment of this application, when it is necessary to determine the linearly reachable points that the robot can reach from its current position by moving along a straight line, for each point in the target path, it can be determined whether the robot can move along a straight line from the current position to each point. Then, the points that the robot can move along a straight line from the current position to each point are taken as candidate reachable points. The point that is farthest from the robot's current position among the candidate reachable points is taken as the linearly reachable point.

[0089] S402, determine the robot's speed parameters based on the target point position of the linearly reachable point.

[0090] The velocity parameters include linear velocity and angular velocity.

[0091] It should be noted that when it is necessary to determine the robot's speed parameter based on the target point location of a linearly reachable point, the following may be included: obtaining at least one preset candidate parameter; scoring the path travel effectiveness of each candidate parameter based on the target point location of the linearly reachable point to obtain the effectiveness score of each candidate parameter; and taking the candidate parameter with the highest effectiveness score as the robot's speed parameter.

[0092] At least one candidate velocity parameter can be determined based on the robot's adaptive angular velocity range and linear velocity range.

[0093] In one embodiment of this application, when it is necessary to score the path travel effectiveness of each candidate parameter based on the target point location of a linearly reachable point, and obtain the effectiveness score of each candidate parameter, the target point location can be input into a pre-trained scoring model, and the output result of the scoring model can be obtained. The output result is the effectiveness score of each candidate parameter.

[0094] The training process of the scoring model may include the following: obtaining at least the locations of sample points, and scoring each candidate parameter by means of manual annotation, etc., to obtain the sample scoring result of each sample point location for each candidate parameter; then, inputting each sample point location and the sample scoring result of each sample point location for each candidate parameter into the initial model for model training, to obtain the trained scoring model.

[0095] S403 controls the robot to move along the target path based on the speed parameters.

[0096] To ensure that the robot can effectively adapt to different path conditions along the target path during its movement, the speed parameter can be used to control the robot's movement along the target path. Based on pre-set update conditions, it can be determined whether the speed parameter needs to be adjusted. If so, the robot can return to the step of "determining the linearly reachable point that the robot can reach from its current position by moving in a straight line along the target path".

[0097] The update condition can be that the robot moves to the next path point included in the target path; or, the robot's movement time based on the current speed parameter exceeds a preset time threshold. In summary, the update condition can be set or adjusted according to actual conditions and needs; the specific content of the update condition is not limited here.

[0098] The robot movement method in this application requires controlling the robot's orientation during movement to avoid a mismatch between the robot's required direction and its current orientation, which could cause movement malfunctions. Therefore, by determining the robot's speed parameters through linearly reachable points, the robot can effectively control its own orientation based on the speed parameters, ensuring that the robot can move smoothly along the target path.

[0099] In one embodiment, such as Figure 5 As shown, when it is necessary to control the movement of the robot, the following can be included:

[0100] S501, in response to the robot moving along at least one path point in the global path, if there is an obstacle preventing the robot from moving forward between the robot's current position and the next path point, then a local cost map centered on the robot's current position is constructed.

[0101] S502, select at least one candidate path point belonging to the local cost map from the path points included in the global path.

[0102] S503, according to the order of the distance between each candidate waypoint and the current position from farthest to nearth, determine in turn whether there is a reachable path between each candidate waypoint and the current position.

[0103] S504 selects the first candidate waypoint with a reachable path as the target waypoint that the robot can reach.

[0104] S505, determine at least one reachable path from the current location to the location of the waypoint of the target waypoint.

[0105] S506, among all reachable paths, those that meet the preset path filtering conditions are taken as local paths.

[0106] S507 concatenates local and global paths to obtain the target path.

[0107] S508, From the target path, determine the linearly reachable points that the robot can reach from its current position by moving in a straight line.

[0108] S509, obtain at least one preset candidate parameter.

[0109] S510: Based on the target point location of the linearly reachable point, score the effectiveness of each candidate parameter in the path travel, and obtain the effectiveness score of each candidate parameter.

[0110] S511: The candidate parameter with the highest effectiveness score among all candidate parameters is taken as the speed parameter corresponding to the robot.

[0111] S512 controls the robot to move along the target path based on the speed parameters.

[0112] The robot movement method in this application enables the construction of a local cost map centered on the robot's current position when obstacles hinder its movement between the robot's current position and the next path path. It then selects at least one candidate path point belonging to the local cost map from the path points included in the global path; furthermore, it performs path planning based on these candidate path points to obtain a local path that avoids obstacles; it concatenates the local and global paths to obtain the target path; and finally, it controls the robot to move along the target path. As can be seen from the above, this application does not employ the global path planning strategy of existing technologies during robot movement control. Instead, it constructs a local cost map centered on the robot's current position and plans a local path that avoids obstacles based on the candidate path points belonging to the local cost map. Since the local path is planned only based on a portion of the candidate path points in the global path, the time and computational resources consumed in planning the global path are greater than those consumed in planning the local path. This ensures that the robot can successfully avoid obstacles while effectively reducing resource consumption and time waste caused by path planning, preventing any impact on the robot's movement efficiency.

[0113] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages in other steps. It is understood that the steps in different embodiments can be freely combined as needed, and all non-contradictory solutions formed by such combinations are within the scope of protection of this application.

[0114] Based on the same inventive concept, this application also provides a robot moving device for implementing the robot moving method described above. The solution provided by this device is similar to the solution described in the above method; therefore, the specific limitations in one or more robot moving device embodiments provided below can be found in the limitations of the robot moving method described above, and will not be repeated here.

[0115] In one exemplary embodiment, such as Figure 6 As shown, a robot mobile device is provided, including: a construction module 10, a selection module 20, a planning module 30, a splicing module 40, and a control module 50, wherein:

[0116] Module 10 is used to respond to the robot moving along at least one path point in the global path. If there is an obstacle that prevents the robot from moving forward between the robot's current position and the next path point, a local cost map centered on the robot's current position is constructed.

[0117] The selection module 20 is used to select at least one candidate path point belonging to the local cost map from the path points contained in the global path.

[0118] Planning module 30 is used to plan paths based on each candidate waypoint to obtain local paths that do not pass through obstacles;

[0119] The splicing module 40 is used to splice local and global paths to obtain the target path;

[0120] The control module 50 is used to control the robot to move along the target path.

[0121] In one embodiment, a target path that the robot can reach is determined from each candidate path point based on the distance between each candidate path point and the current position;

[0122] Determine the local path from the current location to the target waypoint.

[0123] In one embodiment, the system sequentially determines whether there is a reachable path between each candidate waypoint and the current location, in descending order of the distance between each candidate waypoint and the current location.

[0124] The first candidate waypoint with a reachable path is taken as the target waypoint that the robot can reach.

[0125] In one embodiment, at least one reachable path is determined from the current location to the location of the waypoint to the target waypoint;

[0126] Among all reachable paths, those that meet the preset path filtering criteria are designated as local paths.

[0127] In one embodiment, from the target path, determine a linearly reachable point that the robot can reach from its current position by moving in a straight line;

[0128] Based on the target point location of the linearly reachable point, determine the robot's corresponding velocity parameters; where the velocity parameters include linear velocity and angular velocity.

[0129] Based on the speed parameters, the robot is controlled to move along the target path.

[0130] In one embodiment, the path from the target waypoint to the global sub-path endpoint in the global path is used as the global sub-path;

[0131] The target path is obtained by concatenating the endpoint of the local path with the starting point of the global sub-path.

[0132] The robot movement method in this application enables the construction of a local cost map centered on the robot's current position when obstacles hinder its movement between the robot's current position and the next path path. It then selects at least one candidate path point belonging to the local cost map from the path points included in the global path; furthermore, it performs path planning based on these candidate path points to obtain a local path that avoids obstacles; it concatenates the local and global paths to obtain the target path; and finally, it controls the robot to move along the target path. As can be seen from the above, this application does not employ the global path planning strategy of existing technologies during robot movement control. Instead, it constructs a local cost map centered on the robot's current position and plans a local path that avoids obstacles based on the candidate path points belonging to the local cost map. Since the local path is planned only based on a portion of the candidate path points in the global path, the time and computational resources consumed in planning the global path are greater than those consumed in planning the local path. This ensures that the robot can successfully avoid obstacles while effectively reducing resource consumption and time waste caused by path planning, preventing any impact on the robot's movement efficiency.

[0133] Each module in the aforementioned robotic mobile device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the operations corresponding to each module.

[0134] In one exemplary embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 7As shown, the computer device includes a processor, memory, input / output interface, communication interface, display unit, and input device. The processor, memory, and input / output interface are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interface. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The input / output interface is used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, Near Field Communication (NFC), or other technologies. When the computer program is executed by the processor, it implements a robot movement method. The display unit is used to form a visually visible image and can be a display screen, projection device, or virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.

[0135] Those skilled in the art will understand that Figure 7 The structure shown is a block diagram of a partial structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have different component arrangements.

[0136] In one exemplary embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above-described method embodiments.

[0137] In one exemplary embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps in the above-described method embodiments.

[0138] In one exemplary embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above-described method embodiments.

[0139] The user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.

[0140] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program mentioned can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.

[0141] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.

[0142] The above embodiments are merely illustrative of several implementation methods of this application, and their descriptions are relatively specific and detailed. However, they should not be construed as limiting the scope of this application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A robot movement method, characterized in that, The method includes: In response to the robot moving along at least one pathway point in the global path, if there is an obstacle preventing the robot from moving forward between the robot's current position and the next pathway point, a local cost map centered on the robot's current position is constructed. Select at least one candidate path point belonging to the local cost map from the path points included in the global path; Based on each of the candidate waypoints, a path is planned to obtain a local path that does not pass through the obstacle. The local path and the global path are concatenated to obtain the target path; Control the robot to move along the target path.

2. The method according to claim 1, characterized in that, The step of performing path planning based on each of the candidate waypoints to obtain a local path that does not pass through the obstacle includes: Based on the distance between each candidate waypoint and the current position, the target waypoint that the robot can reach is determined from each candidate waypoint; Determine the local path from the current location to the target waypoint.

3. The method according to claim 2, characterized in that, The step of determining the target waypoint that the robot can directly reach from the candidate waypoints based on the distance between each candidate waypoint and the current position includes: Based on the order of the distance between each candidate waypoint and the current position from farthest to closest, determine in turn whether there is a reachable path between each candidate waypoint and the current position; The first candidate waypoint with a reachable path is taken as the target waypoint that the robot can reach.

4. The method according to claim 2, characterized in that, Determining the local path from the current location to the target waypoint includes: Determine at least one reachable path from the current location to the location of the waypoint of the target waypoint; The reachable paths that meet the preset path filtering conditions are taken as the local paths.

5. The method according to claim 1, characterized in that, Controlling the robot to move along the target path includes: From the target path, determine the linearly reachable point that the robot can reach from its current position by moving in a straight line; Based on the target point position of the linearly reachable point, the corresponding velocity parameters of the robot are determined; wherein, the velocity parameters include linear velocity and angular velocity; Based on the speed parameters, the robot is controlled to move along the target path.

6. The method according to claim 5, characterized in that, The step of determining the robot's speed parameters based on the target point position of the linearly reachable point includes: Obtain at least one preset candidate parameter; Based on the target point location of the linearly reachable point, the effectiveness of each candidate parameter is scored to obtain the effectiveness score of each candidate parameter. The candidate parameter with the highest effectiveness score among all the candidate parameters is taken as the speed parameter corresponding to the robot.

7. The method according to claim 1, characterized in that, The step of concatenating the local path and the global path to obtain the target path includes: The path from the target waypoint to the end point of the global sub-path in the global path is taken as the global sub-path; The target path is obtained by concatenating the endpoint of the local path with the starting point of the global sub-path.

8. A robot mobile device, characterized in that, The device includes: A construction module is used to respond to the robot moving along at least one pathway point in the global path, and if there is an obstacle preventing the robot from moving forward between the robot's current position and the next pathway point, then a local cost map centered on the robot's current position is constructed. The selection module is used to select at least one candidate path point belonging to the local cost map from the path points included in the global path. The planning module is used to plan a path based on each of the candidate waypoints to obtain a local path that does not pass through the obstacle. The concatenation module is used to concatenate the local path and the global path to obtain the target path; The control module is used to control the robot to move along the target path.

9. A robot comprising a memory and a processor, the memory storing a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 7.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 7.