Path planning method and device, equipment and storage medium
Patent Information
- Application Number
- CN202611078312.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-20
- Publication Date
- 2026-09-18
AI Technical Summary
[0004]本申请的主要目的在于提供一种路径规划方法、装置、设备及存储介质,旨在解决现有的路径规划方法容易因处理环节的误差逐级累加,导致实际执行终点偏离规划目标的技术问题
[0015] This application provides a path planning method. The method involves obtaining an initial planned path for a target robot and defining a endpoint protection zone in the end region of the initial planned path. The endpoint protection zone contains continuous path nodes in the initial planned path that are close to the target pose of the target robot. Target pose attraction constraints are applied to the target protection path nodes within the endpoint protection zone to perform constraint smoothing, resulting in a smooth path for the target robot. The target pose attraction constraints guide the target protection path nodes to converge towards the target pose during the smoothing process. An executable trajectory for the target robot is generated based on the smooth path. The endpoint trajectory points of the executable trajectory are compared with the target pose. The consistency check is performed, and if the consistency check passes, the executable trajectory is determined as the final planned path of the target robot. Because this application can define the endpoint protection zone and apply the target pose attraction constraint in the path smoothing stage, the end path structure is not damaged by the smoothing operation and actively converges to the target pose. At the same time, after the trajectory is generated, the consistency check mechanism judges the deviation between the endpoint of the executable trajectory and the target pose and blocks the trajectory with deviation exceeding the threshold. This realizes the suppression of the source of error introduction and the interception of error propagation, thereby solving the technical problem that existing path planning methods are prone to the accumulation of errors in the processing stage, which leads to the actual execution endpoint deviating from the planning target.
Smart Images

Figure CN122769979A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of motion planning technology, and in particular to path planning methods, devices, equipment and storage media. Background Technology
[0002] Industrial robots, due to their excellent task repeatability, have been widely used in manufacturing automation scenarios such as handling, assembly, welding, painting, and precision machining. In the robot operation process, path planning is the core link to achieve autonomous motion. Its goal is to generate a feasible motion path from the initial pose to the target pose while satisfying obstacle avoidance constraints and joint limits.
[0003] Currently, existing industrial robot path planning methods can be implemented using sampling-based stochastic programming methods. In the field of sampling-based path planning, Rapidly Exploring Random Tree (RRT) and its improved algorithms (such as RRT...) are important. Informed RRT Due to its superior search efficiency in high-dimensional configuration spaces, this method has become the mainstream technology for path planning in industrial robots. However, this type of path planning method can usually only guarantee that the starting and ending points of the industrial robot are consistent with the target pose at the geometric path level. But in subsequent steps such as path smoothing, time parameterization, discrete interpolation, and controller tracking execution, any small pose deviation introduced at any step may be passed down and amplified along the processing chain, eventually leading to a significant deviation between the robot's actual execution endpoint and the planned target endpoint. This severely reduces the accuracy and reliability of the path planning results at the engineering execution level. Summary of the Invention
[0004] The main objective of this application is to provide a path planning method, apparatus, device, and storage medium, which aims to solve the technical problem that existing path planning methods are prone to the accumulation of errors in the processing stages, leading to the actual execution endpoint deviating from the planned target.
[0005] To achieve the above objectives, this application proposes a path planning method, the method comprising: Obtain the initial planned path of the target robot, and determine the endpoint protection zone in the end region of the initial planned path. The endpoint protection zone contains continuous path nodes in the initial planned path that are close to the target pose of the target robot. A target pose attraction constraint is applied to the target protection path nodes within the endpoint protection zone to perform constraint smoothing processing on the target protection path nodes, thereby obtaining a smooth path for the target robot. The target pose attraction constraint is used to guide the target protection path nodes to converge toward the target pose during the smoothing process. The executable trajectory of the target robot is generated based on the smooth path; The consistency between the endpoint trajectory point of the executable trajectory and the target pose is verified, and if the consistency verification passes, the executable trajectory is determined as the final planned path of the target robot.
[0006] In one embodiment, the step of determining the endpoint protection zone in the end region of the initial planned path includes: Determine the controller control cycle, trajectory interpolation time interval, and minimum number of control cycles required to cover the end region of the initial planned path for the target robot. Based on the controller control cycle, the trajectory interpolation time interval, and the minimum number of control cycles, the number of end nodes to be protected in the initial planned path is determined. The endpoint protection zone is determined from the endpoint region based on the number of endpoint nodes to be protected.
[0007] In one embodiment, the step of applying target pose attraction constraints to the target protection path nodes within the endpoint protection zone to perform constraint smoothing processing on the target protection path nodes and obtain a smooth path for the target robot includes: Apply target pose attraction constraints to the target protection path nodes within the endpoint protection zone to perform constraint smoothing processing on the target protection path nodes; During the smoothing process, the dynamic weight of the target pose attraction constraint is determined based on the distance between the target protection path node and the target pose. The positions of the target protection path nodes are updated based on the dynamic weights and smooth energy gradients to obtain the smooth path of the target robot.
[0008] In one embodiment, the step of updating the position of the target protection path nodes based on the dynamic weights and smooth energy gradients to obtain a smooth path for the target robot includes: The positions of the target protection path nodes are updated based on the dynamic weights and smooth energy gradients to obtain the updated path nodes. The updated path nodes are subjected to a feasibility check, which includes at least one of collision check and joint limit check. If the verification passes, a smooth path for the target robot is generated based on the updated path nodes.
[0009] In one embodiment, the step of generating the executable trajectory of the target robot based on the smooth path includes: Obtain the maximum velocity and maximum acceleration parameters of the target robot; The smooth path is time-parameterized based on the maximum velocity parameter and the maximum acceleration parameter to generate a time-allocated path. Discrete interpolation is performed on the time-allocated path according to the control cycle of the target robot's controller to generate the executable trajectory of the target robot.
[0010] In one embodiment, the step of verifying the consistency between the endpoint trajectory point of the executable trajectory and the target pose includes: Determine the positional error between the endpoint of the executable trajectory and the target pose; A preset position error threshold is determined based on the preset position allowable deviation and the repeatability accuracy of the target robot, and the position error is compared with the preset position error threshold. If the position error is less than the preset position error threshold, the consistency check is deemed to have passed. Alternatively, if the position error is greater than or equal to the preset position error threshold, the consistency check is deemed to have failed.
[0011] In one embodiment, after the step of determining the executable trajectory as the final planned path of the target robot, the method further includes: The final planned path is sent to the target robot, and the target robot is driven to execute the final planned path; Collect the actual joint angles and actual end effector poses of the target robot during the execution of the final planned path; The actual execution pose data of the target robot is generated based on the actual joint angles and the actual end effector pose. The actual endpoint error of the target robot is determined based on the actual execution pose data, and the actual endpoint error is the deviation between the actual arrival pose of the target robot and the target pose. Adjust the parameters of the endpoint protection zone and / or the strength parameters of the target pose attraction constraint based on the actual endpoint error.
[0012] Furthermore, to achieve the above objectives, this application also proposes a path planning device, the device comprising: The protected area determination module is used to obtain the initial planned path of the target robot and determine the endpoint protected area in the end region of the initial planned path. The endpoint protected area contains continuous path nodes in the initial planned path that are close to the target pose of the target robot. The path smoothing module is used to apply target pose attraction constraints to the target protection path nodes within the endpoint protection zone, so as to perform constraint smoothing processing on the target protection path nodes and obtain a smooth path for the target robot. The target pose attraction constraints are used to guide the target protection path nodes to converge toward the target pose during the smoothing process. A trajectory generation module is used to generate an executable trajectory for the target robot based on the smooth path; The trajectory verification module is used to verify the consistency between the endpoint trajectory point of the executable trajectory and the target pose, and if the consistency verification passes, the executable trajectory is determined as the final planned path of the target robot.
[0013] In addition, to achieve the above objectives, this application also proposes a path planning device, the device comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the path planning method as described above.
[0014] In addition, to achieve the above objectives, this application also proposes a storage medium, which is a computer-readable storage medium, on which a computer program is stored, and which, when executed by a processor, implements the steps of the path planning method described above.
[0015] This application provides a path planning method. The method involves obtaining an initial planned path for a target robot and defining a endpoint protection zone in the end region of the initial planned path. The endpoint protection zone contains continuous path nodes in the initial planned path that are close to the target pose of the target robot. Target pose attraction constraints are applied to the target protection path nodes within the endpoint protection zone to perform constraint smoothing, resulting in a smooth path for the target robot. The target pose attraction constraints guide the target protection path nodes to converge towards the target pose during the smoothing process. An executable trajectory for the target robot is generated based on the smooth path. The endpoint trajectory points of the executable trajectory are compared with the target pose. The consistency check is performed, and if the consistency check passes, the executable trajectory is determined as the final planned path of the target robot. Because this application can define the endpoint protection zone and apply the target pose attraction constraint in the path smoothing stage, the end path structure is not damaged by the smoothing operation and actively converges to the target pose. At the same time, after the trajectory is generated, the consistency check mechanism judges the deviation between the endpoint of the executable trajectory and the target pose and blocks the trajectory with deviation exceeding the threshold. This realizes the suppression of the source of error introduction and the interception of error propagation, thereby solving the technical problem that existing path planning methods are prone to the accumulation of errors in the processing stage, which leads to the actual execution endpoint deviating from the planning target. Attached Figure Description
[0016] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0017] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0018] Figure 1 This is a flowchart illustrating an embodiment of the path planning method of this application. Figure 2 This is a flowchart illustrating the generation of the initial planned path in the path planning method of this application. Figure 3 This is a flowchart illustrating the overall path planning process in the path planning method of this application. Figure 4 This is a flowchart illustrating Embodiment 2 of the path planning method of this application; Figure 5 This is a flowchart illustrating the path planning method of embodiment three of this application. Figure 6 This is a system architecture diagram of the path planning method in this application; Figure 7 This is a schematic diagram of the module structure of the path planning device according to an embodiment of this application; Figure 8 This is a schematic diagram of the device structure of the hardware operating environment involved in the path planning method in the embodiments of this application.
[0019] The purpose, features, and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0020] It should be understood that the specific embodiments described herein are merely illustrative of the technical solutions of this application and are not intended to limit this application.
[0021] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.
[0022] The main solution of this application embodiment is as follows: First, obtain the initial planned path of the target robot and determine the endpoint protection zone in the end region of the initial planned path. The endpoint protection zone contains continuous path nodes in the initial planned path that are close to the target pose of the target robot. Second, apply target pose attraction constraints to the target protection path nodes within the endpoint protection zone to perform constraint smoothing processing on the target protection path nodes, thereby obtaining a smooth path of the target robot. The target pose attraction constraints are used to guide the target protection path nodes to converge towards the target pose during the smoothing process. Third, generate an executable trajectory of the target robot based on the smooth path. Fourth, perform consistency verification between the endpoint trajectory point of the executable trajectory and the target pose. If the consistency verification passes, determine the executable trajectory as the final planned path of the target robot.
[0023] Because existing path planning methods can usually only guarantee that the starting point and ending point of the industrial robot are consistent with the target pose at the geometric path level, the endpoint deviation introduced in the smoothing, interpolation and execution stages is accumulated and transmitted to the controller along the processing link, ultimately causing the actual execution endpoint to deviate from the planned target.
[0024] This application provides a solution that, in the path smoothing process, delineates a endpoint protection zone and applies target pose attraction constraints to prevent the end-path structure from being disrupted by the smoothing operation and actively converges towards the target pose. Simultaneously, after trajectory generation, a consistency verification mechanism is used to judge the deviation between the executable trajectory endpoint and the target pose and to block trajectories with deviations exceeding a threshold. This achieves the suppression of error introduction sources and the interception of error propagation, thereby solving the technical problem that existing path planning methods are prone to the accumulation of errors in the processing stages, leading to the actual execution endpoint deviating from the planning target.
[0025] It should be noted that the executing entity in this embodiment can be a path planning device with data processing, network communication, and program execution functions, such as an industrial computer, embedded controller, edge computing device, cloud server, etc., or an electronic device or robot control device capable of realizing the above functions. The following description uses a path planning device (hereinafter referred to as the device) as an example to illustrate this embodiment and the following embodiments.
[0026] Based on this, embodiments of this application provide a path planning method, referring to... Figure 1 , Figure 1 This is a flowchart illustrating the path planning method of this application in Embodiment 1.
[0027] In this embodiment, the path planning method includes steps S10 to S40: Step S10: Obtain the initial planned path of the target robot, and determine the endpoint protection zone in the end region of the initial planned path. The endpoint protection zone contains continuous path nodes in the initial planned path that are close to the target pose of the target robot.
[0028] It should be understood that the target robot can be an industrial robot or multi-joint robotic arm system that requires path planning to move from an initial pose to a target pose, such as a six-axis serial industrial robot, a SCARA robot, or an AGV (Automated Guided Vehicle). This embodiment does not limit this. In practical applications, the target robot is typically equipped with a servo drive system, joint position sensors, and an end effector, enabling precise position and attitude control according to received trajectory commands.
[0029] It should also be understood that the target robot can have multiple controllable joints, and its configuration state can be uniquely determined in the joint space by a set of joint angle vectors, and mapped to the end effector pose in the Cartesian workspace through positive kinematics.
[0030] It should be noted that the initial planned path can be a discrete sequence of path nodes generated during the path planning phase, from the target robot's initial pose to its target pose. Each node in this path node sequence can represent a joint angle vector of the target robot in joint space. For example, a node of a six-axis robot can be represented as (θ1, θ2, θ3, θ4, θ5, θ6), where each θ value corresponds to a rotation angle of a joint. Alternatively, each node in this discrete path node sequence can represent an end effector pose coordinate of the target robot in Cartesian space, such as (x, y, z, rx, ry, rz), where x, y, and z represent the three-dimensional spatial position coordinates of the end effector, and rx, ry, and rz represent the rotation angles of the end effector about the three coordinate axes.
[0031] It should also be noted that the initial planned path usually only guarantees obstacle avoidance feasibility and target reachability at the geometric level, that is, all nodes on the path satisfy collision avoidance constraints and joint limit constraints, and the end point of the path corresponds precisely to the target pose. However, the distribution of the path nodes in space may not be uniform, and the curvature of the path may vary greatly. Therefore, further smoothing and trajectory generation are required in engineering applications.
[0032] Understandably, the end region can be a continuous path segment near the target pose in the initial planned path. Specifically, the end region can be a spatial area covered by a specific length or a specific number of nodes extending from the end of the path (i.e., the last node near the target pose) towards the beginning of the path. In this embodiment, the method of defining the end region can be flexibly determined according to actual application requirements. For example, the end region can be a spatial area covered by a fixed number (e.g., 10 or 15) of continuous path nodes counting backward from the end of the path; or a spatial area covered by a fixed path length (e.g., 10% or 20% of the total path length) traced back from the end of the path towards the beginning.
[0033] It is also understood that the endpoint protection zone can be a specific protected area defined within the endpoint region. Path nodes within this protected area are subject to special constraints during subsequent smoothing processes and will not be arbitrarily altered or destroyed by conventional smoothing operations (such as random shortcut replacement or spline fitting). In practical applications, during the path smoothing stage, conventional smoothing operations typically aim to shorten the path length and reduce the path curvature, which may result in indiscriminate structural adjustments to the entire path. Such indiscriminate structural adjustments often unintentionally straighten, deviate, or change the direction of the endpoint path segments, causing the endpoint structure, which was originally correctly pointing to the target pose in the planned path, to be destroyed, thereby amplifying the endpoint execution error. To solve this problem, this embodiment can set an endpoint protection zone, marking the path nodes in the endpoint region as "protected," explicitly informing the smoothing algorithm to prohibit aggressive smoothing operations (such as leapfrog node replacement) that may change the endpoint path structure within this region, or limiting the range of changes in path nodes within this region, thereby forming an endpoint protection barrier at the path level, and effectively preventing the smoothing process from introducing new endpoint deviations.
[0034] It should be understood that the target pose can be the final position and posture that the target robot needs to reach after executing the planned path. It usually comes from the task target specified by the user. For example, in the assembly scenario, the target pose can be the robot end pose corresponding to the target hole where the workpiece needs to be inserted.
[0035] In its implementation, the device first generates an initial planned path using a sampling-based path planning algorithm, such as the RRT algorithm or the Informed RRT algorithm, or a graph search-based path planning algorithm, such as the PRM algorithm or the FMT algorithm. Then, starting from the end of the initial planned path (i.e., the last path node closest to the target pose), the device backtracks a predetermined number of path nodes towards the starting point, defining the spatial region covered by the continuous path nodes from the backtracking position to the last path node as the end region. After determining the end region, the device defines all continuous path nodes within the end region as the endpoint protection zone. Path nodes within this endpoint protection zone are specially protected during subsequent smoothing processes and will not be arbitrarily altered or destroyed by conventional smoothing operations.
[0036] Furthermore, the step of obtaining the initial planned path of the target robot includes: Step S11: Obtain the initial pose, target pose, and environmental obstacle information of the target robot.
[0037] Understandably, the initial pose can be the position and orientation of the target robot at the start of its movement, which can be determined by the current actual pose state of the target robot; correspondingly, the target pose can be the final position and orientation that the target robot needs to reach after executing the planned path, which usually comes from the task target specified by the user. For example, in an assembly scenario, the target pose can be the robot end-effector pose corresponding to the target hole where the workpiece needs to be inserted.
[0038] It is also understood that environmental obstacle information can be the geometric shape, size, position, and orientation information of obstacles existing in the target robot's workspace. In practical applications, environmental obstacle information can include static obstacle information and dynamic obstacle information. Static obstacles can include workbenches, fixtures, fixed supports, etc., while dynamic obstacles can include other mobile devices or personnel, etc. In practical applications, environmental obstacle information can be obtained through 3D scanning or manual modeling during the offline programming stage; or it can be obtained in real time through vision sensors, LiDAR, or depth cameras. This embodiment does not limit the acquisition method.
[0039] Step S12: Based on the initial pose, the target pose, and the environmental obstacle information, a sampling planning algorithm is used to generate a collision-free path from the initial pose to the target pose, and the collision-free path is determined as the initial planning path of the target robot.
[0040] It should be noted that the sampling planning algorithm can be a path planning algorithm that searches for feasible paths by randomly sampling in the configuration space. Its core idea is to randomly generate sampling points in the configuration space of the target robot, filter out collision-free sampling points through collision detection, and gradually construct a path tree or path graph from the initial pose to the target pose, ultimately extracting a feasible path. In this embodiment, the sampling planning algorithm may include, but is not limited to, the RRT algorithm, the Informed RRT algorithm, the probabilistic path graph algorithm, and the fast walking tree algorithm.
[0041] It should be noted that a collision-free path can be a feasible path within the target robot's workspace, from its initial pose to its target pose, that satisfies obstacle avoidance constraints. Specifically, a collision-free path is a sequence of discrete path nodes, where each node on the path does not collide with environmental obstacles, and the line segments connecting adjacent nodes also do not collide with environmental obstacles. Furthermore, a collision-free path also satisfies the joint constraint of the target robot, meaning that the joint angle value corresponding to each node on the path is within the allowable range of motion of each joint of the target robot.
[0042] In practical implementation, the device first establishes a workspace model of the target robot to provide environmental constraint information for subsequent path search. Specifically, the device can establish a forward kinematics model of the target robot to map the joint space states to the end-effector pose in Cartesian space, determine the range of motion limits of each joint of the target robot, and simultaneously obtain the initial joint states corresponding to the initial pose of the target robot. and the target joint state corresponding to the target pose Then, the device can be in the initial joint state. Build a search tree as the root node. :
[0043] Simultaneously initialize the node set Sum of edges :
[0044] in, For the set of nodes in the search tree, This is the set of edges connecting nodes.
[0045] Then, the device can randomly generate sampling nodes within the robot's joint space. :
[0046] in, This represents the collision-free free space, which is the set of joint states that satisfy joint constraint and do not collide with obstacles.
[0047] After this, the device can begin a nearest neighbor search, starting from the current search tree. Middle node set Find the distance sampling point The nearest node :
[0048] Where d represents the Euclidean distance in the joint space.
[0049] Next, the device can start from the nearest node. Towards the sampling node Expand to obtain new nodes :
[0050] in, This indicates the expansion step size, which is used to determine the growth rate and search efficiency of the search tree. It can be set proportionally according to the joint limit range, for example, taking 5% of the average value of each joint limit range.
[0051] Subsequently, the device can target the nearest neighbor node. With new nodes Path segments between Perform collision detection. If a collision exists on the path segment, discard the node; otherwise, add it to the search tree.
[0052] When using Informationed RRT (or RRT) When adding a new node After being added to the search tree, the device can also perform rewiring optimization on nodes in the neighborhood of the new node. Specifically, it can first take the new node as an example. Using a given center, calculate the set of neighboring nodes within a radius r. :
[0053] in, Represents the neighborhood radius.
[0054] Subsequently, for the set of neighboring nodes Each node in Calculate with new node Arriving when serving as a parent node The path cost is calculated, and the parent node that minimizes the total cost is selected. The connection relationships of the relevant nodes are updated, thereby achieving asymptotic optimization of the search tree. The corresponding formula can be expressed as:
[0055] in, For new nodes Arriving when serving as a parent node The path cost.
[0056] Then, the device can determine whether the search tree has reached the target joint state. The search tree is considered to have reached the target region centered on the target region when the following conditions are met:
[0057] in, The target tolerance radius represents the acceptable neighborhood range of the target point.
[0058] If the search tree has not reached the target region, return to the random sampling step; if the search tree has reached the target region, start from the node that has reached the target region. Begin by tracing back through the parent node pointers to the starting node. :
[0059] Then, the nodes traversed during the backtracking process are arranged in reverse order to form a node sequence from the initial pose to the target pose, thereby obtaining a collision-free path, which is also the initial planned path:
[0060] in, This is the initial planned path that has not been processed for endpoint consistency constraints.
[0061] In practical applications, refer to Figure 2 , Figure 2 This is a flowchart illustrating the generation of the initial planned path in the path planning method of this application. For example... Figure 2As shown, the device can establish a workspace model of the target robot, including establishing an obstacle model, establishing a kinematic model of the target robot, determining joint constraints, determining the initial pose, and determining the target pose. Subsequently, the device can establish a search tree with the initial pose as the root node and randomly generate sampling nodes in the configuration space of the target robot. Then, it searches for the node closest to the sampling node in the current search tree, takes the found node as the nearest neighbor node, and expands from the nearest neighbor node towards the sampling node by a preset expansion step size to generate a new node. After generating the new node, the device can perform collision detection on the path segment between the nearest neighbor node and the new node to determine whether the path segment collides with environmental obstacles. If a collision occurs, the new node is discarded, and random sampling is performed again; if no collision occurs, the new node is added to the search tree, that is, the new node becomes a child node of the nearest neighbor node, and the connection relationship between the two is recorded. This is achieved using Informed RRT. or RRT In the algorithm's implementation, after adding a new node to the search tree, the device can also perform a rewiring optimization step. This involves searching for neighboring nodes around the new node, calculating the path cost from the new node to each neighboring node, and if the path cost is less than the current path cost of these neighboring nodes, then updating the parent node of these neighboring nodes to the new node, thereby gradually optimizing the path cost. Afterward, the device can determine if there exists a node in the search tree whose distance to the target pose is less than a preset target tolerance radius. If so, the search tree has reached the target region, and path backtracking can begin. This involves starting from the target node and traversing layer by layer along the parent node pointers to the root node, arranging all nodes passed during the backtracking process sequentially from the initial pose to the target pose, forming a path sequence composed of discrete path nodes, i.e., the initial planned path. If there is no node in the search tree whose distance to the target pose is less than the target tolerance radius, it is determined that the search tree has not yet reached the target area. At this time, the iterative process of random sampling, nearest neighbor search and node expansion can continue to be executed until the search tree reaches the target area or the preset maximum number of iterations is reached.
[0062] Further, the step of determining the endpoint protection zone in the terminal region of the initial planned path includes: Step S13: Determine the controller control cycle, trajectory interpolation time interval, and minimum number of control cycles required to cover the end region of the initial planned path for the target robot.
[0063] It should be understood that the controller control cycle can be the time interval between the target robot's controller sending control commands to the servo drive. Specifically, it can be set to 1 millisecond, 2 milliseconds, or 4 milliseconds, etc. For example, robot systems using EtherCAT industrial Ethernet communication typically set the control cycle to 1 millisecond or 2 milliseconds.
[0064] It should also be understood that the trajectory interpolation time interval can be the time interval between adjacent trajectory points during the process of converting a smooth path into a discrete trajectory point sequence. This interval is typically less than or equal to the controller's control cycle to ensure that the controller can acquire new trajectory commands in each control cycle, avoiding control command gaps. For example, when the controller's control cycle is 2 milliseconds, the trajectory interpolation time interval can be set to 2 milliseconds, 1 millisecond, or 0.5 milliseconds.
[0065] Understandably, the minimum number of control cycles can be the minimum number of control cycles that the trajectory points corresponding to the path nodes of the endpoint protection zone must cover during the trajectory generation stage. This can be preset based on the end-effector deceleration dynamics and control accuracy requirements of the target robot, ensuring sufficient time resolution at the control execution level for the endpoint protection zone. In this embodiment, by setting the minimum number of control cycles, it can be ensured that the path segments covered by the endpoint protection zone have sufficient sampling density on the time axis, thereby enabling the protective function of the endpoint protection zone to be effectively reflected at the control execution level.
[0066] Step S14: Determine the number of end nodes to be protected in the initial planned path based on the controller control cycle, the trajectory interpolation time interval, and the minimum number of control cycles.
[0067] It should be noted that the number of end nodes to be protected can be the number of consecutive path nodes to be selected from the end of the initially planned path to the starting end, which can be calculated based on the controller control cycle, trajectory interpolation time interval, and the minimum number of control cycles to be covered.
[0068] Step S15: Determine the endpoint protection zone from the endpoint region based on the number of endpoint nodes to be protected.
[0069] In practical implementation, the device first obtains the control cycle value by reading the configuration parameters of the control system, and determines the interpolation time interval based on the controller control cycle and system real-time requirements. Simultaneously, it reads the minimum number of control cycles to be covered from the system configuration file. Subsequently, the device determines the number of end nodes to be protected in the initial planned path based on the controller control cycle, the trajectory interpolation time interval, and the minimum number of control cycles. Specifically, the device first determines the number of end nodes to be protected in the initial planned path based on the controller control cycle. Interpolation time interval of trajectory Calculate the ratio between the two, when At this time, each control cycle may contain one or more interpolation trajectory points, which can be determined based on the ratio. Determine the number of trajectory points corresponding to each control cycle. Then, the device can determine the ratio. and minimum control cycle number Calculate the minimum number of trajectory points that the terminal region must contain. The required number of terminal trajectory points is: Then, the device can convert the required number of end-point trajectory points into the number of end-point nodes to be protected based on the required number of end-point trajectory points and the average distance or average node density between adjacent path nodes in the initial planned path. For example, when the node distribution of the initially planned path is relatively uniform and the interpolation density is approximately the same as the node density, the device can directly determine the number of end nodes to be protected. Set to equal to the required number of end trajectory points, i.e. The calculation result is then rounded up to obtain the final number of end nodes to be protected.
[0070] In this embodiment, by determining the target robot's controller control cycle, trajectory interpolation time interval, and the minimum number of control cycles required to cover the end-effector region, and based on these three parameters, the number of end-effector nodes to be protected is determined. Then, based on the number of end-effector nodes to be protected, the endpoint protection zone is determined from the end-effector region. This makes the size of the endpoint protection zone no longer dependent on fixed empirical values, but adaptively calculated based on the controller control cycle, trajectory interpolation density, and the minimum number of control cycles required for the end-effector deceleration phase. This allows path nodes within the endpoint protection zone to be mapped to continuous control execution points that match the controller execution cycle after trajectory generation, forming a one-to-one mapping relationship between the path level and the control execution layer. This helps ensure that the endpoint protection zone has sufficient time and spatial resolution to support the effective implementation of endpoint consistency protection before subsequent smoothing processing.
[0071] Step S20: Apply target pose attraction constraints to the target protection path nodes within the endpoint protection zone to perform constraint smoothing processing on the target protection path nodes and obtain a smooth path for the target robot. The target pose attraction constraints are used to guide the target protection path nodes to converge toward the target pose during the smoothing process.
[0072] It should be understood that the target protection path nodes can be all or part of the path nodes within the endpoint protection zone, and they can serve as the objects for applying target pose attraction constraints. In this embodiment, the target protection path nodes can be all nodes within the endpoint protection zone except for the last node (i.e., the node corresponding to the target pose), or all nodes within the endpoint protection zone. For example, the target protection path nodes are a set of nodes. Among them, nodes The endpoint node (closest to the target pose) of the endpoint protection zone. This is the starting node of the endpoint protection zone. For non-endpoint nodes in the target protection path (i.e....) In the constraint smoothing process, target pose attraction constraints can be applied; for the endpoint node... During smoothing, its position remains unchanged or only minor adjustments are allowed to directly anchor the target pose.
[0073] It should be noted that the target pose attraction constraint can be a soft constraint applied to path nodes within the endpoint protection zone. During the smoothing process, it guides the path nodes towards the target pose, causing them to tend to move closer to the target pose during position updates. In practical applications, the target pose attraction constraint is analogous to setting a gravitational source at the target pose. Path nodes within the endpoint protection zone, attracted by this gravitational source, will shift towards the target pose during position updates.
[0074] It should also be noted that the strength of the target pose attraction constraint (i.e., the magnitude of the attraction) can be dynamically adjusted as the distance between the path node and the target pose changes. In this embodiment, the weight of the target pose attraction constraint can monotonically increase as the path node approaches the target pose; that is, the closer the node is to the target pose, the stronger the attraction, ensuring that the end path node converges accurately to the target pose. Furthermore, the weight of the target pose attraction constraint can also be designed using a piecewise function, maintaining a lower weight in the initial section of the protected area to prevent excessive path distortion, and rapidly increasing the weight at the last few nodes near the endpoint to ensure endpoint accuracy.
[0075] It should be understood that constrained smoothing can be a method of applying additional constraints to path nodes within the endpoint protection zone during path smoothing. In practical applications, conventional smoothing typically only aims to minimize path length and curvature, performing indiscriminate structural adjustments on all nodes along the entire path. However, the constrained smoothing in this embodiment can superimpose target pose attraction constraints on top of conventional smoothing operations. This allows the updates of path nodes within the protection zone to be simultaneously influenced by both the smoothing gradient term (used to reduce curvature and make the path smoother) and the endpoint attraction term (used to guide path nodes to converge toward the target pose). Thus, it can guide the endpoint nodes to smoothly converge toward the target pose while protecting the structure at the end of the path.
[0076] It should also be understood that the constraint smoothing process for the target protection path nodes in this embodiment is essentially a process of updating the positions of the target protection path nodes. The position update amount of the path node can be equal to the weighted sum of the smoothing gradient term and the endpoint attraction term. The weight of the smoothing gradient term is controlled by the smoothing intensity coefficient, and the weight of the endpoint attraction term is controlled by dynamic weights. In this embodiment, by adjusting the relative magnitudes of these two weights, a balance can be achieved between path smoothness and endpoint consistency. This ensures the overall smoothness of the path while maintaining the integrity of the end-path structure, ensuring that the end-path nodes effectively converge to the target pose.
[0077] In this embodiment, for the first [item] within the endpoint protection zone Path nodes Its smooth update is jointly influenced by the "smoothing gradient (curvature reduction)" and the "endpoint attraction term". The iterative formula for constrained smooth update can be:
[0078] In the formula, It is the number of iterations. It is the node index from the start to the end of the path. It is the first Joint vectors of path nodes It smooths the energy gradient, which can be used to reduce path curvature and minimize abrupt changes in joints. It is the smoothness intensity coefficient. It is the endpoint attraction weight (i.e., the dynamic weight of the target pose attraction constraint), which follows... It increases as it approaches the finish line. This refers to the target endpoint joint state. Among these, the smoothness intensity coefficient... It can be used to control the magnitude of the overall curvature optimization of the path, and its typical value range can be set according to the joint scale, for example, 0.05-0.5.
[0079] It should be understood that a smooth path can be a path obtained by constraining and smoothing the initial planned path. In practical applications, a smooth path can have smaller curvature changes and better smoothness while maintaining obstacle avoidance feasibility and joint constraint. That is, the joint angle changes between adjacent nodes in the path are more gradual, without drastic changes in direction or joint angle jumps. In addition, the end nodes of the smooth path are attracted to the target pose and converge towards the target pose, and their end structures maintain the correct pointing relationship with the target pose, thereby avoiding end offset caused by conventional smoothing operations.
[0080] In its implementation, after setting the endpoint protection zone, the device can apply target pose attraction constraints to the target protected path nodes within the endpoint protection zone and perform constraint smoothing on the target protected path nodes based on these constraints. During constraint smoothing, the device can perform conventional smoothing operations (such as random shortcut smoothing or spline fitting smoothing) on path nodes located outside the endpoint protection zone in the initial planned path to optimize the overall path length and curvature, and perform smoothing operations with target pose attraction constraints on the target protected path nodes located within the endpoint protection zone. In performing the smoothing operation with target pose attraction constraints, the device can calculate the smoothing gradient term for each target protected path node. (This smoothing gradient term is used to reduce path curvature, making the path smoother) and the endpoint attraction term generated by the target pose attraction constraint. (This endpoint attraction term is used to guide the path node to converge to the target pose), and the smooth gradient term and the endpoint attraction term are weighted and superimposed to obtain the position update of the path node. The weights of the endpoint attraction term are... The position change increments as the path node approaches the target pose, meaning that the closer the path node is to the target pose, the stronger the attraction constraint from the target pose. Subsequently, the device can update the position of the target protection path nodes based on the calculated position update amount, obtaining a smooth path for the target robot. This smooth path maintains both the smoothness and obstacle avoidance feasibility of the overall path, while also ensuring effective convergence of the end-point path nodes to the target pose.
[0081] Step S30: Generate the executable trajectory of the target robot based on the smooth path.
[0082] It should be noted that an executable trajectory can be a sequence of trajectory points obtained by adding time information to a smooth path. Each trajectory point can contain position, velocity, and acceleration information. In practical applications, the executable trajectory can be directly parsed and executed by the target robot's controller, enabling the controller to drive the joint motors of the target robot according to the time-position-velocity-acceleration information in the trajectory point sequence.
[0083] In practical implementation, the device can perform time parameterization processing on the smooth path according to the target robot's maximum speed and maximum acceleration parameters to generate a path sequence with time information. Then, according to the target robot's controller control cycle, the device can perform discrete interpolation on the path sequence with time information to generate an executable trajectory point sequence containing position, speed, and acceleration information, which is also known as an executable trajectory.
[0084] Further, step S30 includes: Step S31: Obtain the maximum speed parameters and maximum acceleration parameters of the target robot.
[0085] Understandably, the maximum speed parameter can be the maximum speed value allowed to be reached by each joint or end effector of the target robot during its movement; correspondingly, the maximum acceleration parameter can be the maximum acceleration value allowed to be reached by each joint or end effector of the target robot during its movement. In this embodiment, both the maximum speed parameter and the maximum acceleration parameter of the target robot can be obtained from the target robot's technical specifications or by reading the robot's controller configuration file.
[0086] Step S32: Perform time parameterization processing on the smooth path based on the maximum speed parameter and the maximum acceleration parameter to generate a time-allocated path.
[0087] It should be understood that time parameterization can be a process that combines geometric path information with temporal information. In this embodiment, the device can use a trapezoidal velocity curve to parameterize the smooth path in time.
[0088] It should also be understood that the time-assigned path can be a path obtained after time parameterization, in which each path node is assigned a corresponding time value, that is, each path node contains not only location information but also the timestamp corresponding to that node.
[0089] In this embodiment, the smooth path (i.e., the geometric path) typically only contains the spatial position information that the target robot should pass through at different times, but does not contain the time information corresponding to each path node. Therefore, this embodiment can assign a corresponding time value to each node on the path based on the geometric path, according to the maximum speed parameter and the maximum acceleration parameter, so that the target robot satisfies the speed constraint and acceleration constraint when moving along the path, and finally generates the time-allocated path.
[0090] Step S33: Discretely interpolate the time-allocated path according to the controller control cycle of the target robot to generate the executable trajectory of the target robot.
[0091] Understandably, the controller control cycle can be the time interval between the target robot's controller sending control commands to the servo drive, and this time interval can be the sampling time reference in the discrete trajectory generation process.
[0092] It is also understandable that discrete interpolation can be the process of discretely sampling the path along a continuous path after time allocation, according to the controller's control cycle. In practical applications, the path after time allocation is a continuous time-position curve, but the controller can only send commands to the servo driver at discrete time points (i.e., the start time of each control cycle). Therefore, the device also needs to sample this continuous path according to the controller's control cycle, that is, extract a trajectory point from the path every control cycle. These trajectory points are arranged strictly in chronological order, forming a discrete sequence of trajectory points.
[0093] In practical implementation, the device can read the target robot's controller configuration file or parameter database, extract the maximum velocity and maximum acceleration values of each joint, and obtain the total length of the smooth path (which can be represented in joint space as the total change in joint angles from the starting node to the target node). Then, based on the maximum velocity and maximum acceleration parameters, it calculates the shortest time required for the target robot to move along the smooth path, and allocates time to the path according to a preset velocity curve model. Specifically, the device can use a trapezoidal velocity curve model, first accelerating at maximum acceleration, then moving at a constant speed at maximum velocity, and finally decelerating at maximum deceleration until the velocity reaches zero at the target pose. During the acceleration, constant speed, and deceleration phases, the device can calculate the time value corresponding to each path node according to the kinematic formulas of each phase, and finally generate a time-allocated path, in which each path node has a corresponding time value, velocity value, and acceleration value. Subsequently, the device can obtain the controller control cycle value of the target robot. Taking the start time as zero time, for every control cycle, it extracts the position, velocity, and acceleration values at the corresponding time from the time-allocated path. Then, each set of data (time, position, velocity, acceleration) extracted from the time-allocated path is treated as a discrete trajectory point, and these discrete trajectory points are arranged sequentially according to time order to form a time-series trajectory point set, thereby obtaining the executable trajectory of the target robot.
[0094] In this embodiment, the maximum velocity and maximum acceleration parameters of the target robot are obtained, and the smooth path is time-parameterized based on these parameters to generate a time-allocated path. Then, the time-allocated path is discretely interpolated according to the controller's control cycle to generate an executable trajectory. This transforms the geometrically smooth path into a discrete instruction sequence that the controller can parse and execute cycle by cycle. This ensures that each trajectory point meets the robot's velocity and acceleration physical constraints in the time dimension of the path, and that the time resolution of the discrete trajectory points is synchronized with the controller's instruction issuance rhythm. As a result, the trajectory can be accurately tracked at the controller execution level, while providing a complete data foundation containing position, velocity, and acceleration information for subsequent consistency verification. This is beneficial to ensuring the engineering reliability of the executable trajectory in terms of physical feasibility and control real-time performance.
[0095] Step S40: Perform a consistency check between the endpoint trajectory point of the executable trajectory and the target pose, and if the consistency check passes, determine the executable trajectory as the final planned path of the target robot.
[0096] It should be noted that consistency verification can be a process of judging the consistency between the endpoint trajectory point of the executable trajectory and the target pose. The endpoint trajectory point of the executable trajectory can be the last trajectory point in the executable trajectory, that is, the final pose reached by the target robot after executing the entire planned motion.
[0097] It should also be noted that this embodiment performs consistency verification between the endpoint trajectory point of the executable trajectory and the target pose, so that the endpoint of the trajectory can be checked before the executable trajectory is sent to the controller. This ensures that any endpoint deviation introduced during path smoothing, time parameterization or discrete interpolation can be detected and blocked in time, and prevents the deviation from being transmitted to the controller execution layer and further amplified.
[0098] Understandably, the final planned path can be an executable trajectory obtained after consistency verification and allowed to be sent to the controller for execution. The deviation between the endpoint of the final planned path and the target pose is within an allowable range, therefore it can be safely sent to the target robot's controller for execution.
[0099] In practical applications, the device extracts the last trajectory point from the executable trajectory as the endpoint trajectory point, calculates the positional and / or attitude deviations between this endpoint trajectory point and the target pose, and then compares the calculated deviations with a preset consistency verification threshold. If the deviation is less than the preset consistency verification threshold, the consistency verification is considered successful; if the deviation is greater than or equal to the preset consistency verification threshold, the consistency verification is considered unsuccessful. Finally, if the consistency verification is successful, the device can determine the executable trajectory as the final planned path for the target robot.
[0100] In the specific implementation, refer to Figure 3 , Figure 3 This is a flowchart illustrating the overall path planning process in the path planning method of this application. Figure 3 As shown, when path planning is required for a target robot, the device first uses a sampling-based path planning algorithm to generate an initial planned path for the target robot. It then obtains the target robot's controller control cycle, trajectory interpolation time interval, and the minimum number of control cycles required to cover the end-effector region. Based on these parameters, the device determines the number of end-effector nodes to be protected in the initial planned path and then identifies the endpoint protection zone from the end-effector region. Next, the device performs regular smoothing operations on path nodes outside the endpoint protection zone in the initial planned path to optimize the overall path length and curvature. It then performs smoothing operations with target pose attraction constraints on the target protected path nodes within the endpoint protection zone to obtain a smoothed path. Subsequently, the device performs time parameterization on the smoothed path based on the target robot's maximum velocity and maximum acceleration parameters, generating a path sequence with time information. Finally, it performs discrete interpolation on the time-informed path sequence to generate an executable trajectory containing position, velocity, and acceleration information. Then, the device can perform a consistency check between the endpoint trajectory point of the executable trajectory and the target pose. If the consistency check fails, the interpolation parameters are adjusted, for example, by increasing the trajectory interpolation density (i.e., decreasing the trajectory interpolation time interval), and the executable trajectory is regenerated based on the adjusted interpolation parameters, and the consistency check is performed again. Alternatively, the device can adjust the parameters of the endpoint protection zone simultaneously with or separately from the interpolation parameters, for example, by increasing the number of path nodes included in the endpoint protection zone, or by increasing the maximum weight of the endpoint attraction constraint at the endpoint. Furthermore, if the consistency check passes, the device can determine the executable trajectory as the final planned path for the target robot and output the final planned path, ready to be sent to the target robot's controller for execution.
[0101] This embodiment provides a path planning method. The method discloses obtaining an initial planned path for a target robot and determining a endpoint protection zone in the end region of the initial planned path. The endpoint protection zone contains continuous path nodes in the initial planned path that are close to the target pose of the target robot. Target pose attraction constraints are applied to the target protection path nodes within the endpoint protection zone to perform constraint smoothing processing on the target protection path nodes, obtaining a smooth path for the target robot. The target pose attraction constraints are used to guide the target protection path nodes to converge towards the target pose during the smoothing process. An executable trajectory of the target robot is generated based on the smooth path. The endpoint trajectory points of the executable trajectory are compared with the target pose. Consistency verification is performed, and if the consistency verification passes, the executable trajectory is determined as the final planned path of the target robot. In this embodiment, the end-point path structure is protected from the disruption of the smoothing operation and actively converges to the target pose by defining the endpoint protection zone and applying target pose attraction constraints in the path smoothing stage. At the same time, after the trajectory is generated, the consistency verification mechanism judges the deviation between the endpoint of the executable trajectory and the target pose and blocks the trajectory with deviation exceeding the threshold. This achieves the suppression of the source of error introduction and the interception of error propagation, thereby solving the technical problem that existing path planning methods are prone to the accumulation of errors in the processing stage, which leads to the actual execution endpoint deviating from the planning target.
[0102] Based on the first embodiment of this application, in the second embodiment of this application, the content that is the same as or similar to that in the first embodiment described above can be referred to the above description, and will not be repeated hereafter. Based on this, please refer to... Figure 4 , Figure 4 This is a flowchart illustrating the second embodiment of the path planning method in this application.
[0103] In this embodiment, the step of applying target pose attraction constraints to the target protection path nodes within the endpoint protection zone to perform constraint smoothing processing on the target protection path nodes and obtain a smooth path for the target robot includes: Step S21: Apply target pose attraction constraints to the target protection path nodes within the endpoint protection zone to perform constraint smoothing processing on the target protection path nodes.
[0104] In this embodiment, the device can apply target pose attraction constraints to target protected path nodes within the endpoint protection zone to perform constraint smoothing processing on the target protected path nodes. During the constraint smoothing process, the target pose attraction constraints and the conventional smoothing energy gradient work together, so that the position update of the target protected path node is simultaneously affected by both factors: the smoothing energy gradient and the target pose attraction constraints. The smoothing energy gradient is used to guide the path node to move in the direction of reducing local curvature, while the target pose attraction constraints are used to guide the path node to converge towards the target pose direction.
[0105] Step S22: During the smoothing process, the dynamic weight of the target pose attraction constraint is determined based on the distance between the target protection path node and the target pose.
[0106] It should be noted that dynamic weights can be the weight coefficients of the endpoint attraction term corresponding to the target pose attraction constraint during the constraint smoothing process, when the path node position is updated. These weights can be used to control the intensity of the influence of the target pose attraction constraint on the target protected path nodes. In practical applications, target protected path nodes at different locations within the endpoint protected area typically have different weight values. Nodes closer to the endpoint receive a stronger target attraction, thus achieving gradual convergence guidance from the start to the end of the protected area.
[0107] In this embodiment, the value of the dynamic weight can monotonically increase as the distance between the target protection path node and the target pose decreases. Specifically, it can increase with the distance between the node and the target pose. Functions that are monotonically increasing toward their endpoint, such as linearly increasing functions:
[0108] Or an exponentially increasing function:
[0109] in, For dynamic weights, The maximum attraction weight at the endpoint node. For the growth rate parameter, This serves as the index for the starting node of the endpoint protected area. This represents the number of path nodes in the initial planned path.
[0110] In practical applications, the device can obtain the current position of the target protected path node and calculate the distance between that position and the target pose. Then, it determines the dynamic weight corresponding to the target pose attraction constraint based on this distance. The dynamic weight can be determined as follows: the closer the distance, the larger the dynamic weight, resulting in a stronger endpoint attraction for path nodes closer to the target pose; conversely, the farther the distance, the smaller the dynamic weight, resulting in a weaker endpoint attraction for path nodes farther from the target pose. Furthermore, the dynamic weight can also be related to the index of the target protected path node in the path sequence. That is, the device can also determine the dynamic weight based on the positional order of the target protected path nodes within the endpoint protection zone, where the closer the path node is to the end of the endpoint protection zone (i.e., the closer to the target pose), the larger the dynamic weight.
[0111] Step S23: Update the position of the target protection path node based on the dynamic weight and smooth energy gradient to obtain the smooth path of the target robot.
[0112] It should be noted that the smooth energy gradient can be a gradient vector used to measure the degree of local curvature or the drastic change in joint angles during path smoothing. In this embodiment, the smooth energy gradient can be obtained by performing a difference operation on the positions of path nodes, and is used to reflect the degree of curvature of the current position of the target protected path node relative to its adjacent path nodes.
[0113] It should also be noted that position update can refer to the operation of adjusting the position of the target protection path node during the constraint smoothing process. It is usually based on the current path node position by adding a position update amount, which can be determined by the smoothing energy gradient and dynamic weights.
[0114] In its implementation, during each iteration, the device calculates the smoothed energy gradient corresponding to each target protected path node within the endpoint protection zone, based on the positions of these nodes and their adjacent nodes. Simultaneously, it calculates the dynamic weight of the node based on the distance between the target protected path node and the target pose, along with a preset weighting function. The device then weights and sums the smoothed energy gradient and dynamic weight to obtain the position update amount for that path node: Position Update Amount = Smoothing Intensity Coefficient × Smoothing Energy Gradient + Dynamic Weight × (Target Pose - Current Node Position). The smoothing intensity coefficient controls the impact of smoothing on the overall curvature of the path. Subsequently, the device updates the position of the path node based on the calculated position update amount: Updated Node Position = Current Node Position + Position Update Amount. After updating the positions of all target protected path nodes, the device performs a feasibility check on the updated path nodes to determine whether they meet collision avoidance constraints and joint constraint requirements. If the conditions are met, the current position update is accepted, and the updated path node is used as the initial position for the next iteration. If the conditions are not met, the current position update can be rolled back, i.e., the result of the current update is discarded, and the path node is restored to its original position. The device can then repeat the above iterative process until a preset iteration termination condition is met (e.g., reaching the maximum number of iterations or the change in path node position is less than a preset convergence threshold), ultimately obtaining a smooth path for the target robot.
[0115] Further, step S23 includes: updating the position of the target protection path node based on the dynamic weight and smooth energy gradient to obtain the updated path node; performing a feasibility check on the updated path node, the feasibility check including at least one of collision check and joint limit check; if the check passes, generating a smooth path for the target robot based on the updated path node.
[0116] Understandably, the updated path node can be a new node position obtained by adjusting the current position of the target protected path node based on the position update amount. In practical applications, during each smoothing iteration, the device can calculate the position update amount based on the smoothing energy gradient and the target pose attraction constraint, and then superimpose this position update amount onto the current position of the target protected path node to obtain the updated path node position.
[0117] It should be noted that feasibility verification refers to a series of constraint checks performed on the updated path nodes before accepting the position update results. This involves checking whether the updated path nodes meet preset feasibility conditions, including but not limited to collision avoidance constraints and joint limit constraints. In this embodiment, feasibility verification is used to ensure that each position update during the path smoothing process does not cause the path nodes to enter an infeasible state, thereby guaranteeing that the final smooth path is safe and feasible in engineering.
[0118] It should be understood that collision detection can be performed on the updated path nodes and the line segments connecting these path nodes to their adjacent nodes. It can be used to determine whether the target robot pose corresponding to the updated path node collides with environmental obstacles, and whether the path segment traversed by the target robot from an adjacent node to the updated node interferes with environmental obstacles. In this embodiment, the device can convert the updated path nodes (joint angle vectors) into the pose of the end effector in Cartesian space and the spatial distribution of each link based on the target robot's forward kinematics model. Then, it performs spatial interference judgment between the pose and link distribution and a pre-established environmental obstacle model. If the distance between any link of the target robot and an environmental obstacle is less than a preset safe distance threshold, a collision is determined to occur, and the collision detection fails. If the distance between all links and environmental obstacles is greater than or equal to the preset safe distance threshold, a collision is determined not to occur, and the collision detection passes.
[0119] It should also be understood that joint limit verification can be a process of boundary checking on the joint angle values corresponding to the updated path nodes. It can be used to determine whether each joint angle value in the updated path nodes is within its corresponding joint limit range. In this embodiment, the device can obtain the limit parameters of each joint of the target robot, including the minimum and maximum angle values of each joint, and compare the corresponding joint angle values in the updated path nodes with these limit parameters one by one. If all joint angle values are within their respective limit ranges, the joint limit verification is deemed to have passed; if any joint angle value exceeds its corresponding limit range, the joint limit verification is deemed to have failed.
[0120] In practical applications, after updating the positions of the target protection path nodes based on dynamic weights and smooth energy gradients, the device can perform feasibility checks on the updated path nodes, including collision checks and joint limit checks. If both collision and joint limit checks pass, the feasibility check is considered successful. At this point, the device can accept the position update, designate the updated path nodes as the new path nodes, replace the original path node positions, and continue to the next iteration until a preset iteration termination condition is met. After iteration termination, the device can determine the sequence of path nodes updated through all iterations as the smooth path for the target robot. Furthermore, if the feasibility check fails, the device can roll back the current position update, i.e., discard the updated path nodes, restore the path nodes to their positions before the update, keep the path nodes unchanged, and continue to the next iteration.
[0121] It should be noted that this embodiment updates the target protection path nodes by using dynamic weights and smooth energy gradients to obtain updated path nodes. The updated path nodes are then subjected to feasibility checks, including at least one of collision checks and joint limit checks. Only when the checks pass are smooth paths generated based on the updated path nodes. This ensures that each position update undergoes dual verification of safety and physical feasibility before changing the path shape. Any infeasible position updates that may lead to collisions or exceed the range of joint movement are promptly rolled back. This ensures that the optimization of the path shape is always constrained within a safe and feasible configuration space throughout the smoothing iteration process. It avoids sacrificing the feasibility and safety of the path in pursuit of endpoint consistency and path smoothness. Consequently, the final smooth path is able to have good smoothness and endpoint accuracy while ensuring that the target robot does not collide with environmental obstacles and that the movement of each joint is within the allowable range when executing the path.
[0122] In this embodiment, by applying target pose attraction constraints to the target protected path nodes within the endpoint protection zone and dynamically adjusting the attraction weights based on the distance between the target protected path nodes and the target pose, and simultaneously updating the position of the target protected path nodes by combining the smooth energy gradient, the path nodes within the endpoint protection zone are simultaneously affected by the smooth gradient term and the endpoint attraction term during the smoothing process. This allows the end path nodes to gradually and smoothly converge towards the target pose while smoothing and reducing the curvature of the entire path, avoiding sudden changes in velocity or acceleration caused by rigidly locking the end nodes. This helps to achieve a balance between path smoothness and endpoint consistency without compromising the overall smoothness of the path and obstacle avoidance feasibility.
[0123] Based on the first and / or second embodiments of this application, in the third embodiment of this application, the content that is the same as or similar to the above embodiments can be referred to the above description, and will not be repeated hereafter. Based on this, please refer to... Figure 5 , Figure 5 This is a flowchart illustrating the path planning method of embodiment three of this application.
[0124] In this embodiment, the step of verifying the consistency between the endpoint trajectory point of the executable trajectory and the target pose includes: Step S41: Determine the positional error between the endpoint trajectory point of the executable trajectory and the target pose.
[0125] Understandably, position error can be the deviation between the position represented by the endpoint of the executable trajectory and the position represented by the target pose. It can be used to quantify the degree of deviation between the endpoint of the executable trajectory and the target pose.
[0126] In this embodiment, the device can extract the last trajectory point from the executable trajectory as the endpoint trajectory point, obtain the target pose, and then calculate the positional error between the endpoint trajectory point and the target pose based on their spatial description methods. Specifically, this error can be expressed as:
[0127] in, For positional error, This refers to the joint state corresponding to the endpoint trajectory point. For the controller control cycle, The target joint state corresponding to the target pose.
[0128] Step S42: Determine a preset position error threshold based on the preset position allowable deviation and the repeatability accuracy of the target robot, and compare the position error with the preset position error threshold.
[0129] It should be noted that the preset positional allowable deviation can be a pre-set allowable deviation value based on the accuracy requirements of the target robot's endpoint position in a specific application scenario. For example, in an assembly scenario (such as a shaft-hole assembly task), the preset positional allowable deviation can be determined based on the fit clearance between the workpiece and the hole; in a welding scenario, the preset positional allowable deviation can be determined based on the weld width and welding process requirements; in a spraying scenario, the preset positional allowable deviation can be determined based on the spraying coverage and coating uniformity requirements. This embodiment does not impose any restrictions on this.
[0130] It should also be noted that repeatability accuracy can refer to the degree of dispersion or deviation between the actual positions reached when the target robot reaches the same target pose multiple times from the same direction under the same conditions. In this embodiment, repeatability accuracy can be a quantitative indicator of the inherent accuracy of the target robot body, used to reflect the fluctuation range of the endpoint position when the target robot performs the same movement multiple times due to factors such as mechanical backlash, transmission error, encoder resolution, and temperature drift.
[0131] It should be understood that the preset position error threshold can be an upper limit of the allowable error used to determine whether the executable trajectory meets the endpoint consistency requirement. Specifically, it can be a critical value determined comprehensively based on the preset position allowable deviation and the repeatability accuracy of the target robot. The corresponding calculation formula can be:
[0132] In the formula, The preset position error threshold, To ensure repeatability and positioning accuracy, The preset position allowable deviation, As a safety margin, it is used to compensate for unmodeled random disturbances, control system response delays, end effector calibration errors, and environmental uncertainties. This is the task accuracy weighting coefficient, used to reflect the system's sensitivity to task accuracy requirements, and its value ranges from (0,1]. This is the robot accuracy weighting coefficient, used to reflect the system's sensitivity to body errors, with a value range of (0,1).
[0133] Furthermore, in default or rapid deployment scenarios, when the system does not have high requirements for robot body error modeling, the device can directly use the preset position allowable deviation as the preset position error threshold to simplify the parameter configuration process.
[0134] Step S43: If the position error is less than the preset position error threshold, the consistency check is deemed to have passed.
[0135] Step S44: Alternatively, if the position error is greater than or equal to the preset position error threshold, the consistency check is determined to fail.
[0136] In practical applications, the device can compare the position error with a preset position error threshold and determine whether the consistency check passes based on the comparison result. Specifically, when the position error is less than the preset position error threshold, the consistency check passes, meaning the deviation between the endpoint of the current executable trajectory and the target pose is within the allowable range, and the executable trajectory can be accepted as the final planned path. When the position error is greater than or equal to the preset position error threshold, the consistency check fails, meaning the deviation between the endpoint of the current executable trajectory and the target pose exceeds the allowable range, the executable trajectory does not meet the endpoint consistency requirement, and should not be sent to the controller for execution.
[0137] Furthermore, after the step of determining the executable trajectory as the final planned path of the target robot, the method further includes: Step S51: Send the final planned path to the target robot and drive the target robot to execute the final planned path.
[0138] In this embodiment, the final planned path includes a sequence of discrete trajectory points arranged in chronological order. Each trajectory point contains a timestamp, desired position, desired velocity, and desired acceleration. After the device sends the trajectory point sequence to the target robot's controller, the controller can read the corresponding trajectory point information in each control cycle and calculate the required drive current or torque command for each joint using a servo control algorithm (e.g., PID control or feedforward control). The command is then output to the servo driver of each joint, at which point the servo driver can drive the motor to rotate, causing the target robot to move along the planned trajectory.
[0139] Step S52: Collect the actual joint angles and actual end effector poses generated by the target robot during the execution of the final planned path.
[0140] It should be understood that the actual joint angle can be the actual angle value of each joint measured by joint position sensors (such as encoders or rotary transformers) during the execution of the final planned path by the target robot. It can reflect the real rotation position of each joint of the target robot during the execution of the trajectory.
[0141] It should also be understood that the actual end effector pose can be the actual position and orientation of the end effector in Cartesian space, measured by end effector pose sensors (such as visual markers, laser trackers, or inertial measurement units mounted on the end effector) during the execution of the target robot's final planned path. In practical applications, the actual end effector pose of the target robot can be obtained through forward kinematics calculations, that is, the pose of the end effector in Cartesian space can be calculated based on the actual joint angles of each joint and the kinematic model of the target robot.
[0142] In practical applications, the device can read the joint position sensors of each joint of the target robot at a frequency synchronized with or higher than the control cycle to obtain the actual joint angles of each joint at the current moment. Simultaneously, the device can read the pose sensors installed on the end effector to obtain the actual position and orientation of the end effector at the current moment. Furthermore, for target robots without end effector pose sensors, the device can calculate the actual pose of the end effector at the current moment based on the collected actual joint angles and the target robot's forward kinematics model.
[0143] Step S53: Generate the actual execution pose data of the target robot based on the actual joint angle and the actual end effector pose.
[0144] Understandably, the actual execution pose data can be a complete dataset obtained by organizing and summarizing the actual joint angles and actual end effector poses at each sampling moment. In this embodiment, the actual execution pose data can include pose information of the target robot at all sampling moments from the start to the end of the motion, which is used to fully reflect the actual motion state changes of the target robot throughout the entire motion process.
[0145] Step S54: Determine the actual endpoint error of the target robot based on the actual execution pose data. The actual endpoint error is the deviation between the actual arrival pose of the target robot and the target pose.
[0146] It should be noted that the actual endpoint error can be the deviation between the actual arrival pose and the target pose of the target robot. It can be used to measure the degree of deviation between the actual position reached by the target robot after executing the final planned path and the expected target position. In joint space description, the actual endpoint error can be expressed as the difference between the joint angle vector of the actual arrival pose and the joint angle vector of the target pose; in Cartesian space description, the actual endpoint error can be expressed as the Euclidean distance or the component difference in each coordinate axis direction between the end position coordinates of the actual arrival pose and the position coordinates of the target pose.
[0147] It should be understood that the actual arrival pose can be the actual pose reached by the target robot at the end of the motion after executing the final planned path. It can be used to reflect the actual arrival status of the target robot at the engineering execution level. In this embodiment, the actual arrival pose can be obtained by extracting the pose information of the last sampling moment from the actual execution pose data.
[0148] In practical applications, the device can extract the data from the last sampling moment of the actual execution pose data, determine the actual pose as the actual arrival pose, and simultaneously acquire the target pose. Then, it calculates the deviation between the actual arrival pose and the target pose, and determines the calculated deviation as the actual endpoint error. Specifically, when using joint space description, the device can calculate the difference between the joint angle vectors of the actual arrival pose and the joint angle vectors of the target pose to obtain the angle deviation of each joint; when using Cartesian space description, the device can calculate the Euclidean distance between the end-effector coordinates of the actual arrival pose and the position coordinates of the target pose to obtain the position deviation value.
[0149] Step S55: Adjust the parameters of the endpoint protection zone and / or the strength parameters of the target pose attraction constraint according to the actual endpoint error.
[0150] It is understood that the parameters of the endpoint protection zone can be adjustable parameters used to define the scope and constraint characteristics of the endpoint protection zone, such as the number of path nodes included in the endpoint protection zone, the starting position of the endpoint protection zone in the path, or the path length covered by the protection zone. This embodiment does not impose any restrictions on this.
[0151] It is also understood that the strength parameter of the target pose attraction constraint can be an adjustable parameter used to control the degree of influence of the target pose attraction constraint on the target protected path nodes. For example, the maximum weight value of the endpoint attraction weight at the endpoint and the growth rate parameter of the endpoint attraction weight, etc. The maximum weight value of the endpoint attraction weight at the endpoint is used to determine the maximum strength of the target pose attraction constraint on the path node closest to the target pose in the endpoint protected area. Increasing this parameter value means that the end path node is subjected to a stronger guiding force pointing towards the target pose. The growth rate parameter of the endpoint attraction weight is used to determine the growth rate of the endpoint attraction weight from the beginning to the end of the protected area.
[0152] In practical applications, the device can compare the actual endpoint error with a preset error threshold. When the actual endpoint error remains excessively large (e.g., exceeding the preset threshold multiple times consecutively), the device can adjust the parameters of the endpoint protection zone and / or the strength parameters of the target pose attraction constraint. Specifically, the device can adjust different parameters specifically based on the magnitude and direction of the actual endpoint error. For example, when the actual endpoint error is too large, the number of path nodes included in the endpoint protection zone can be increased to enhance the protection of the end-path structure; alternatively, the device can increase the maximum weight value of the target pose attraction constraint at the endpoint to enhance the convergence force of the end-path nodes towards the target pose; furthermore, the device can increase the trajectory interpolation density (i.e., decrease the trajectory interpolation time interval) to improve the temporal resolution of the trajectory in the endpoint region. Afterward, the device can save the adjusted parameters and use them for subsequent path planning tasks.
[0153] In this embodiment, the final planned path is sent to the target robot and driven to execute. During execution, actual joint angles and actual end effector poses are collected to generate actual execution pose data. The actual endpoint error is then determined based on the actual execution pose data. Finally, the parameters of the endpoint protection zone and / or the strength parameters of the target pose attraction constraint are adjusted based on the actual endpoint error. After the robot completes its actual execution, the actual execution result is back-transmitted to the parameter configuration stage of path planning and constraint smoothing in the form of a quantified error index. This allows the endpoint protection zone range and protection strength in subsequent path planning tasks to be adaptively adjusted according to the actual execution error. Without manual intervention, the system can gradually converge to a stable and consistent parameter combination under different hardware models, different load conditions, and different controller parameters. This is beneficial to improving the endpoint consistency and engineering stability of the system in long-term operation.
[0154] In the specific implementation, refer to Figure 6 , Figure 6 This is a system architecture diagram of the path planning method in this application. (Example:) Figure 6As shown in the embodiments of this application, the endpoint consistency path planning and execution collaborative system may include a path planning module, an endpoint consistency constraint smoothing module, a trajectory generation and consistency verification module, a control and execution module, and a state feedback and consistency evaluation module. The path planning module can generate an initial planned path using a sampling-based path planning algorithm and output the generated initial planned path to the endpoint consistency constraint smoothing module. After receiving the initial planned path output by the path planning module, the endpoint consistency constraint smoothing module can identify and determine the endpoint protection zone in the end region of the initial planned path, and apply target pose attraction constraints to the target protected path nodes within the endpoint protection zone to perform constraint smoothing processing, obtaining a smooth path for the target robot. Then, it outputs the generated smooth path to the trajectory generation and consistency verification module. After receiving the smoothed path output by the endpoint consistency constraint smoothing module, the trajectory generation and consistency verification module can perform time parameterization processing on the smoothed path to generate a time-allocated path, and then perform discrete interpolation on the time-allocated path according to the target robot's controller control cycle to generate an executable trajectory containing position information, velocity information, and acceleration information. Subsequently, the trajectory generation and consistency verification module can perform endpoint consistency verification between the endpoint trajectory point and the target pose of the executable trajectory. When the endpoint error is less than the preset verification threshold, the verification is deemed to pass. At this time, the executable trajectory is determined as the final planned path, and the final planned path is output to the control and execution module. When the endpoint error is greater than or equal to the preset verification threshold, the verification is deemed to fail. At this time, the failure rollback mechanism can be triggered, that is, rollback to the endpoint consistency constraint smoothing module, re-perform constraint smoothing processing on the path nodes within the endpoint protection zone, and regenerate the executable trajectory based on the re-smoothed path, and perform consistency verification again.
[0155] Subsequently, after receiving the final planned path, the control and execution module can send it to the target robot's controller. At this point, the controller can read the corresponding trajectory point information in each control cycle and calculate the required drive commands for each joint using a servo control algorithm. These commands are then output to the servo drivers of each joint, which in turn drive the actuators (i.e., the motors and transmission devices of each joint) to move along the planned trajectory. The status feedback and consistency evaluation module can collect the actual execution status during the target robot's execution of the final planned path, evaluate the endpoint error, and provide parameter adjustment suggestions based on the evaluation results.
[0156] In this embodiment, the positional error between the endpoint trajectory point of the executable trajectory and the target pose is determined, and a preset positional error threshold is determined based on the preset positional allowable deviation and the repeatability accuracy of the target robot. The positional error is then compared with the preset positional error threshold, and the consistency check is determined to pass or fail based on the comparison result. This ensures that only trajectories with endpoint deviations within the allowable range pass the check and are determined as the final planned path. This forms an error interception barrier between trajectory generation and controller execution, blocking the transmission of endpoint deviations that may be introduced in the trajectory generation stage to the controller execution layer. This is beneficial to improving the endpoint hit rate and reliability of the final planned path at the engineering execution level.
[0157] It should be noted that the above examples are only for understanding this application and do not constitute a limitation on the path planning method of this application. Any simple modifications based on this technical concept are within the protection scope of this application.
[0158] This application also provides a path planning device, please refer to... Figure 7 The path planning device includes: The protected area determination module 10 is used to obtain the initial planned path of the target robot and determine the endpoint protected area in the end region of the initial planned path. The endpoint protected area contains continuous path nodes in the initial planned path that are close to the target pose of the target robot. The path smoothing module 20 is used to apply target pose attraction constraints to the target protection path nodes within the endpoint protection zone, so as to perform constraint smoothing processing on the target protection path nodes and obtain a smooth path of the target robot. The target pose attraction constraints are used to guide the target protection path nodes to converge toward the target pose during the smoothing process. The trajectory generation module 30 is used to generate an executable trajectory of the target robot based on the smooth path; The trajectory verification module 40 is used to verify the consistency between the endpoint trajectory point of the executable trajectory and the target pose, and if the consistency verification is successful, the executable trajectory is determined as the final planned path of the target robot.
[0159] The path planning device provided in this application, employing the path planning method described in the above embodiments, can solve the technical problem that existing path planning methods are prone to the accumulation of errors in processing stages, leading to the actual execution endpoint deviating from the planned target. Compared with the prior art, the beneficial effects of the path planning device provided in this application are the same as those of the path planning method provided in the above embodiments, and other technical features in the path planning device are the same as those disclosed in the methods of the above embodiments, and will not be repeated here.
[0160] This application provides a path planning device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, which are executed by the at least one processor to enable the at least one processor to perform the path planning method in Embodiment 1 above.
[0161] The following is for reference. Figure 8 The diagram illustrates a structural schematic of a path planning device suitable for implementing embodiments of this application. The path planning device in these embodiments may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, personal digital assistants (PDAs), tablet computers (PADs), portable media players (PMPs), and in-vehicle terminals (e.g., in-vehicle navigation terminals), as well as fixed terminals such as digital TVs and desktop computers. Figure 8 The path planning device shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.
[0162] like Figure 8 As shown, the path planning device may include a processing unit 1001 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory 1002 or a program loaded from a storage device 1003 into a random access memory 1004. The random access memory 1004 also stores various programs and data required for the operation of the path planning device. The processing unit 1001, the read-only memory 1002, and the random access memory 1004 are interconnected via a bus 1005. An input / output interface 1006 is also connected to the bus. Typically, the following systems can be connected to the input / output interface 1006: input devices 1007 including, for example, a touchscreen, touchpad, keyboard, mouse, image sensor, microphone, accelerometer, gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), speaker, vibrator, etc.; storage devices 1003 including, for example, magnetic tape, hard disk, etc.; and communication devices 1009. Communication device 1009 allows the path planning device to communicate wirelessly or wiredly with other devices to exchange data. While the figure shows path planning devices with various systems, it should be understood that implementation or possession of all the systems shown is not required. More or fewer systems may be implemented alternatively.
[0163] Specifically, according to the embodiments disclosed in this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device, or installed from storage device 1003, or installed from read-only memory 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of the embodiments disclosed in this application.
[0164] The path planning device provided in this application, employing the path planning method described in the above embodiments, can solve the technical problem of path planning. Compared with the prior art, the beneficial effects of the path planning device provided in this application are the same as those of the path planning method provided in the above embodiments, and other technical features of the path planning device are the same as those disclosed in the previous embodiment method, and will not be repeated here.
[0165] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.
[0166] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
[0167] This application provides a computer-readable storage medium having computer-readable program instructions (i.e., a computer program) stored thereon, the computer-readable program instructions being used to execute the path planning method in the above embodiments.
[0168] The computer-readable storage medium provided in this application may be, for example, a USB flash drive, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems or devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system or device. The program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, radio frequency (RF), etc., or any suitable combination thereof.
[0169] The aforementioned computer-readable storage medium may be included in the path planning device; or it may exist independently and not assembled into the path planning device.
[0170] The aforementioned computer-readable storage medium carries one or more programs that, when executed by a path planning device, cause the path planning device to: acquire an initial planned path for the target robot and determine an endpoint protection zone in the end region of the initial planned path, the endpoint protection zone containing continuous path nodes in the initial planned path that are close to the target pose of the target robot; apply target pose attraction constraints to the target protection path nodes within the endpoint protection zone to perform constraint smoothing processing on the target protection path nodes, thereby obtaining a smooth path for the target robot, the target pose attraction constraints being used to guide the target protection path nodes to converge toward the target pose during the smoothing process; generate an executable trajectory for the target robot based on the smooth path; perform consistency verification between the endpoint trajectory point of the executable trajectory and the target pose, and if the consistency verification passes, determine the executable trajectory as the final planned path for the target robot.
[0171] Computer program code for performing the operations of this application can be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as "C" or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a Local Area Network (LAN) or a Wide Area Network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0172] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0173] The modules described in the embodiments of this application can be implemented in software or hardware. The names of the modules do not necessarily limit the functionality of the unit itself.
[0174] The readable storage medium provided in this application is a computer-readable storage medium that stores computer-readable program instructions (i.e., a computer program) for executing the above-described path planning method. This solves the technical problem that existing path planning methods are prone to errors accumulating at each processing stage, leading to the actual execution endpoint deviating from the planned target. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as those of the path planning method provided in the above embodiments, and will not be repeated here.
[0175] The above description is only a part of the embodiments of this application and does not limit the patent scope of this application. All equivalent structural transformations made under the technical concept of this application and using the contents of the specification and drawings of this application, or direct / indirect applications in other related technical fields, are included in the patent protection scope of this application.
Claims
1. A path planning method, characterized in that, The method includes: Obtain the initial planned path of the target robot, and determine the endpoint protection zone in the end region of the initial planned path. The endpoint protection zone contains continuous path nodes in the initial planned path that are close to the target pose of the target robot. A target pose attraction constraint is applied to the target protection path nodes within the endpoint protection zone to perform constraint smoothing processing on the target protection path nodes, thereby obtaining a smooth path for the target robot. The target pose attraction constraint is used to guide the target protection path nodes to converge toward the target pose during the smoothing process. The executable trajectory of the target robot is generated based on the smooth path; The consistency between the endpoint trajectory point of the executable trajectory and the target pose is verified, and if the consistency verification passes, the executable trajectory is determined as the final planned path of the target robot.
2. The method as described in claim 1, characterized in that, The step of determining the endpoint protection zone in the terminal region of the initial planned path includes: Determine the controller control cycle, trajectory interpolation time interval, and minimum number of control cycles required to cover the end region of the initial planned path for the target robot. Based on the controller control cycle, the trajectory interpolation time interval, and the minimum number of control cycles, the number of end nodes to be protected in the initial planned path is determined. The endpoint protection zone is determined from the endpoint region based on the number of endpoint nodes to be protected.
3. The method as described in claim 1, characterized in that, The step of applying target pose attraction constraints to the target protection path nodes within the endpoint protection zone to perform constraint smoothing processing on the target protection path nodes and obtain a smooth path for the target robot includes: Apply target pose attraction constraints to the target protection path nodes within the endpoint protection zone to perform constraint smoothing processing on the target protection path nodes; During the smoothing process, the dynamic weight of the target pose attraction constraint is determined based on the distance between the target protection path node and the target pose. The positions of the target protection path nodes are updated based on the dynamic weights and smooth energy gradients to obtain the smooth path of the target robot.
4. The method as described in claim 3, characterized in that, The step of updating the position of the target protection path nodes based on the dynamic weights and smooth energy gradients to obtain the smooth path of the target robot includes: The positions of the target protection path nodes are updated based on the dynamic weights and smooth energy gradients to obtain the updated path nodes. The updated path nodes are subjected to a feasibility check, which includes at least one of collision check and joint limit check. If the verification passes, a smooth path for the target robot is generated based on the updated path nodes.
5. The method as described in claim 1, characterized in that, The step of generating the executable trajectory of the target robot based on the smooth path includes: Obtain the maximum velocity and maximum acceleration parameters of the target robot; The smooth path is time-parameterized based on the maximum velocity parameter and the maximum acceleration parameter to generate a time-allocated path. Discrete interpolation is performed on the time-allocated path according to the control cycle of the target robot's controller to generate the executable trajectory of the target robot.
6. The method according to any one of claims 1 to 5, characterized in that, The step of verifying the consistency between the endpoint trajectory point of the executable trajectory and the target pose includes: Determine the positional error between the endpoint of the executable trajectory and the target pose; A preset position error threshold is determined based on the preset position allowable deviation and the repeatability accuracy of the target robot, and the position error is compared with the preset position error threshold. If the position error is less than the preset position error threshold, the consistency check is deemed to have passed. Alternatively, if the position error is greater than or equal to the preset position error threshold, the consistency check is deemed to have failed.
7. The method according to any one of claims 1 to 5, characterized in that, After the step of determining the executable trajectory as the final planned path of the target robot, the method further includes: The final planned path is sent to the target robot, and the target robot is driven to execute the final planned path; Collect the actual joint angles and actual end effector poses of the target robot during the execution of the final planned path; The actual execution pose data of the target robot is generated based on the actual joint angles and the actual end effector pose. The actual endpoint error of the target robot is determined based on the actual execution pose data, and the actual endpoint error is the deviation between the actual arrival pose of the target robot and the target pose. Adjust the parameters of the endpoint protection zone and / or the strength parameters of the target pose attraction constraint based on the actual endpoint error.
8. A path planning device, characterized in that, The device includes: The protected area determination module is used to obtain the initial planned path of the target robot and determine the endpoint protected area in the end region of the initial planned path. The endpoint protected area contains continuous path nodes in the initial planned path that are close to the target pose of the target robot. The path smoothing module is used to apply target pose attraction constraints to the target protection path nodes within the endpoint protection zone, so as to perform constraint smoothing processing on the target protection path nodes and obtain a smooth path for the target robot. The target pose attraction constraints are used to guide the target protection path nodes to converge toward the target pose during the smoothing process. A trajectory generation module is used to generate an executable trajectory for the target robot based on the smooth path; The trajectory verification module is used to verify the consistency between the endpoint trajectory point of the executable trajectory and the target pose, and if the consistency verification passes, the executable trajectory is determined as the final planned path of the target robot.
9. A path planning device, characterized in that, The device includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the path planning method as described in any one of claims 1 to 7.
10. A storage medium, characterized in that, The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, it implements the steps of the path planning method as described in any one of claims 1 to 7.