[go: up one dir, main page]

WO2024041648A1 - Trajectory planning method and apparatus for robot end - Google Patents

Trajectory planning method and apparatus for robot end Download PDF

Info

Publication number
WO2024041648A1
WO2024041648A1 PCT/CN2023/115058 CN2023115058W WO2024041648A1 WO 2024041648 A1 WO2024041648 A1 WO 2024041648A1 CN 2023115058 W CN2023115058 W CN 2023115058W WO 2024041648 A1 WO2024041648 A1 WO 2024041648A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
space
path
trajectory
joint
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2023/115058
Other languages
French (fr)
Chinese (zh)
Inventor
卢小东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kyland Technology Co Ltd
Original Assignee
Kyland Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kyland Technology Co Ltd filed Critical Kyland Technology Co Ltd
Publication of WO2024041648A1 publication Critical patent/WO2024041648A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture

Definitions

  • the present application relates to the technical field related to motion control, and in particular to a planning method and device for the end trajectory of a robot.
  • the trajectory planning of the robot end needs to consider the requirements of the Cartesian space position, the requirements of the Cartesian space motion and the requirements of the various axis motions of the robot joint space.
  • the requirements of the Cartesian space position include the position The requirements for smoothness and accuracy.
  • the requirements for Cartesian space motion include the speed constraints and speed continuity requirements of the robot's movement in Cartesian space.
  • the requirements for axis motion include the kinematic constraints of the axis as well as the speed continuity and acceleration continuity, and even Includes requirements for jerk continuity.
  • the existing technology does not decouple the above three requirements in the planning process.
  • at least two of the above three requirements are often considered at the same time, causing these three requirements to interact with each other, affecting the planning effect, and even planning out.
  • There are problems such as position deviation and shaft vibration during the movement of the trajectory.
  • embodiments of the present application provide a method and device for planning a terminal trajectory of a robot.
  • the technical solution of this application decouples the requirements of the Cartesian space position, the requirements of the Cartesian space motion and the requirements of the motion of each axis of the robot joint space in the trajectory planning process of the robot end, so that the final planned trajectory meets the Cartesian requirements.
  • the smoothness and accuracy requirements of the spatial position, the constraints and velocity continuity requirements of the Cartesian space motion speed, and the constraints and continuity requirements of the speed, acceleration and jerk of each axis of the robot joint space are examples of the speed, acceleration and jerk of each axis of the robot joint space.
  • embodiments of the present application provide a method for planning the end trajectory of a robot, including: obtaining several discrete path nodes at the end of the robot, where the coordinates of the path nodes are poses in Cartesian space.
  • the space includes a Cartesian position space and a Cartesian attitude space, and the pose includes a position and an attitude;
  • the path nodes are smoothly fitted to obtain the planned path of the robot end in the Cartesian space;
  • the Cartesian space at the end of the robot is Under kinematic constraints, the planned trajectory of the robot end in Cartesian space is obtained by using speed planning according to the planned path.
  • the planned trajectory of the planned trajectory in Cartesian space is continuous; according to the planned trajectory of the robot end in Cartesian space, we obtain The joint nodes of the robot's end in the robot's joint space.
  • the joint nodes are the key points of the movement trajectory of the robot's end in its joint space, and its coordinates are the coordinates of the robot's joint space; the kinematic constraints on each axis of the robot Under the conditions, the planned trajectory of the robot end in the joint space is obtained according to the joint nodes, and the speed, acceleration and jerk of the planned trajectory are continuous.
  • Cartesian space path planning Cartesian space trajectory planning and joint space trajectory planning on the machine
  • the requirements for Cartesian space position accuracy, the kinematic constraints of Cartesian space motion and the kinematic constraints of each axis of the robot are decoupled, and the final planning is improved in the Cartesian path planning.
  • trajectory planning in Cartesian space enables the final planned trajectory to meet the kinematic constraints of Cartesian space
  • trajectory planning in joint space enables the motion of each axis to meet the kinematic constraints, thereby improving the end trajectory motion performance of the robot.
  • the posture in the pose is represented by a continuous Euler angle
  • the continuous Euler angle of a path node is equal to the continuous Euler angle of the previous path node and the continuous Euler angle of the path node.
  • the Euler angle rotation angle of a path node is equal to the forward rotation angle from the previous path node to the Euler angle of the path node.
  • the process of smoothly fitting the path nodes includes one of the following: using line segments and arcs to smoothly fit the path nodes; using polynomials or B-splines to smoothly fit the path nodes.
  • the path nodes perform smooth fitting. In regular paths, line segments and arcs are used to smoothly fit the path nodes; in irregular paths, polynomials or B-splines are used to smoothly fit the path nodes.
  • velocity planning is used to obtain the planned trajectory of the end of the robot in Cartesian space according to the planned path, including : According to the pose of each path point of the planned path, the position path length and angular path length of each path point are obtained, and the position path length and the angular path length constitute the coordinates of the path space, a The position path length of a path point is the length of the planned path from the first path point to the path point in Cartesian position space, and the angular path length of a path point is from the Cartesian attitude space.
  • velocity planning is used to obtain the planned trajectory of the end of the robot in Cartesian space according to the planned path, including : According to the pose of each path point of the planned path, obtain the path length of each path point on each coordinate axis of the Cartesian position space, and form the coordinates of the path space of the planned path, a The length of the path point on a coordinate axis in Cartesian space is the length of the planned path from the first path point to the path point projected on the coordinate axis; the flute at the end of the robot is Kinematic constraints in Karl space are converted into kinematic constraints in the path space; kinematic constraints in the path space Under the condition, the planned trajectory of the robot end in the distance space is obtained by using speed planning according to the coordinates of the distance space, and the speed of the robot end in the distance space is continuous; the robot is obtained according to the planned trajectory of the distance space The planned trajectory of the end in
  • obtaining the joint nodes of the robot end in the robot joint space according to the planned trajectory of the robot end in Cartesian space includes: according to the planned trajectory of the robot end in Cartesian space Plan the trajectory and obtain the trajectory nodes according to the robot end in Cartesian space.
  • the trajectory nodes are the key points of the movement trajectory of the robot end in Cartesian space; use the trajectory nodes as the joint nodes and use the kinematic inverse
  • the solution converts the pose of the trajectory node into the coordinates of the joint node in the robot joint space.
  • the key points of the joint space are obtained based on the inverse kinematics solution, which provides a basis for trajectory planning in the joint space.
  • obtaining the planned trajectory of the end of the robot in its joint space according to the joint nodes under the kinematic constraints of each axis of the robot includes: Under the kinematic constraints, according to the coordinates of the joint nodes in the robot's joint space, speed planning is used to obtain a planned trajectory of each axis of the robot in its joint space, and based on this, the planned trajectory of each axis of the robot in its joint space is obtained.
  • the motion duration between adjacent joint nodes; for any pair of adjacent joint nodes, the longest time among the motion durations of each axis of the robot between the pair of adjacent joint nodes is regarded as the motion duration between the pair of adjacent joint nodes.
  • Synchronization duration According to the synchronization duration of the robot between each pair of adjacent joint nodes and the coordinates of the joint nodes in the robot's joint space, the speed planning of the robot is obtained respectively under the kinematic constraints of each axis of the robot.
  • the quadratic planned trajectory of each axis in its joint space is used as the planned trajectory of the robot end in its joint space. In this planned trajectory, the speed, acceleration and jerk of each axis of the robot are continuous.
  • embodiments of the present application provide a planning device for a robot end trajectory, including: a node acquisition module for acquiring several discrete path nodes at the end of the robot, the coordinates of the path nodes are at The pose of the Cartesian space, the Cartesian space includes the Cartesian position space and the Cartesian attitude space, the pose includes the position and the attitude; the path smoothing module is used to perform smooth fitting on the path nodes, and obtain the Cartesian end position of the robot.
  • the Cartesian trajectory planning module is used to obtain the planned trajectory of the robot end in Cartesian space by using speed planning according to the planned path under the kinematic constraints of the Cartesian space at the end of the robot; motion
  • the inverse solution module is used to obtain the joint nodes of the robot end in the robot joint space based on the planned trajectory of the robot end in Cartesian space.
  • the joint nodes are the key points of the motion trajectory of the robot end in its joint space. , whose coordinates are the coordinates of the robot's joint space; the joint trajectory planning module is used to obtain the planning of the robot's end in its joint space based on the joint nodes under the kinematic constraints of each axis of the robot. trajectory.
  • Cartesian space path planning Cartesian space trajectory planning and joint space trajectory planning, in the trajectory planning process of the robot end, the requirements for Cartesian space position accuracy, the kinematic constraint requirements of Cartesian space motion and the robot
  • the kinematic constraints of each axis require decoupling.
  • Cartesian path planning the position accuracy of the final planned trajectory is improved.
  • Cartesian space trajectory planning the final planned trajectory satisfies the kinematic constraints of Cartesian space.
  • the motion of each axis is planned to meet the kinematic constraints, thereby improving the robot's terminal trajectory motion performance.
  • the posture in the posture is represented by a continuous Euler angle
  • the continuous Euler angle of a path node is equal to the continuous Euler angle of the previous path node and the continuous Euler angle of the path node.
  • the Euler angle rotation angle of a path node is equal to the forward rotation angle from the previous path node to the Euler angle of the path node.
  • the process for the path planning module to smoothly fit the path nodes includes one of the following: using line segments and arcs to smoothly fit the path nodes; using polynomials or B Splines provide a smooth fit to the path nodes. In regular paths, line segments and arcs are used to smoothly fit the path nodes; in irregular paths, polynomials or B-splines are used to smoothly fit the path nodes.
  • the Cartesian trajectory planning module is specifically configured to: obtain the positional path length and angular path of each path point according to the posture of each path point of the planned path. Length, the coordinates of the path space composed of the position path length and the angular path length.
  • the position path length of a path point is the plan from the first path point to the path point in the Cartesian position space.
  • the length of the path, the angular path length of a path point is the length of the planned path from the first path point to the path point in Cartesian attitude space; the kinematic constraints of the Cartesian space at the end of the robot The conditions are converted into kinematic constraints of the distance space; under the kinematic constraints of the distance space, speed planning is used to obtain the planned trajectory of the robot end in the distance space according to the coordinates of the distance space, and the mechanical The speed of the human end in the journey space is continuous; the planned trajectory of the robot end in the Cartesian space is obtained according to the planned trajectory of the journey space.
  • the Cartesian trajectory planning module is specifically configured to: according to the pose of each path point of the planned path, obtain the Cartesian position space of each path point.
  • the length of the journey of a path point on a coordinate axis of the Cartesian space is all the distances from the first path point to the path point.
  • the coordinates of the distance space are obtained by using speed planning to obtain the planned trajectory of the robot end in the distance space, and the speed of the robot end in the distance space is continuous; according to the planned trajectory of the distance space, the planned trajectory of the robot end in Cartesian space is obtained Plan the trajectory.
  • the motion inverse solution module is specifically configured to include: according to the planned trajectory of the robot end in Cartesian space, obtain the trajectory node of the robot end in Cartesian space, the trajectory node is the key point of the movement trajectory of the robot end in Cartesian space; the trajectory node is regarded as the joint node, and the inverse kinematics solution is used to convert the pose of the trajectory node into the joint node of the robot. Coordinates in joint space.
  • the key points of the joint space are obtained based on the inverse kinematics solution, which provides a basis for trajectory planning in the joint space.
  • the joint trajectory planning module is specifically configured to: under the kinematic constraints of each axis of the robot, use velocity planning to obtain the coordinates of the joint nodes in the joint space of the robot respectively.
  • a planned trajectory of each axis of the robot in its joint space, and based on this, the movement duration of each axis of the robot between adjacent joint nodes is obtained; for any pair of adjacent joint nodes, the pair of adjacent joint nodes is The longest time of the movement duration of each axis of the robot between the joint nodes is used as the synchronization duration between the pair of adjacent joint nodes; according to the synchronization duration of the robot between each pair of adjacent joint nodes and the joint node's
  • the coordinates of the robot's joint space are used to obtain the secondary planning trajectory of each axis of the robot in its joint space using speed planning under the kinematic constraints of each axis of the robot, and used as the planning of the robot's end in its joint space. Trajectory, the velocity, acceleration and jer
  • embodiments of the present application provide a computing device, including:
  • a communication interface connected to the bus
  • At least one memory is connected to the bus and stores program instructions. When executed by the at least one processor, the program instructions cause the at least one processor to execute any one of the embodiments of the first aspect of the present application.
  • embodiments of the present application provide a computer-readable storage medium on which program instructions are stored. When executed by a computer, the program instructions cause the computer to execute any one of the embodiments described in the first aspect of the application.
  • Figure 1 is a schematic flow chart of Embodiment 1 of a robot end trajectory planning method of the present application
  • Figure 2 is a schematic flow chart of Embodiment 2 of a robot end trajectory planning method of the present application
  • Figure 3 is a schematic structural diagram of Embodiment 1 of a robot end trajectory planning device of the present application
  • Figure 4 is a schematic structural diagram of Embodiment 2 of a robot end trajectory planning device of the present application.
  • Figure 5 is a schematic structural diagram of a computing device according to various embodiments of the present application.
  • Cartesian space, Cartesian space coordinates Cartesian space includes Cartesian position space and Cartesian attitude space.
  • the coordinates of Descartes space are poses, including position coordinates and attitude coordinates;
  • Descartes position space is a rectangular coordinate space, and position coordinates are three-dimensional rectangular coordinates,
  • the Cartesian attitude space is the rotation space of the object, and the attitude coordinates represent the rotation angle of the object's current position relative to the object at the origin.
  • Robot joint space The space composed of each axis of the robot. Its coordinates are the positions of each axis of the robot.
  • the axes include translation axes and rotation axes. In this application, robot and robot have the same meaning.
  • Speed planner A device for planning the trajectory and speed of moving objects. It plans the speed and trajectory of objects through trajectory interpolation. During speed planning, the speed and acceleration of each point are maintained continuously and obey kinematic constraints.
  • the velocity planner can plan trajectories in Cartesian space as well as trajectories in other spaces. When planning, describe velocity as an expression of time, such as a polynomial based on time.
  • Path and path nodes are key points on the path, points that determine the path trend.
  • the trajectory does not include the position relationship, but also the relationship between each point on the trajectory and time.
  • the trajectory nodes are the key points on the trajectory in the Cartesian space, which determine the trend of the trajectory in the Cartesian space.
  • the joint nodes are the key points on the trajectory in the joint space, which determine joint The trend of spatial trajectories.
  • Embodiments of the present application provide a method and device for planning the trajectory of the end of a robot.
  • the technical solution includes: obtaining several discrete path nodes at the end of the robot, the coordinates of the path nodes being the pose in Cartesian space; The path nodes are smoothly fitted to obtain the planned path of the robot end in Cartesian space; under the kinematic constraints of the Cartesian space of the robot end, according to the planned path, velocity planning is used to obtain the robot end in Cartesian space.
  • the planned trajectory of the Karl space the speed of the planned trajectory is continuous in the Cartesian space; according to the planned trajectory of the robot end in the Cartesian space, the joint nodes of the robot end in the robot joint space are obtained, and the joint nodes are the robot end At the key points of the motion trajectory in its joint space, its coordinates are the coordinates of the robot's joint space; under the kinematic constraints of each axis of the robot, according to the joint nodes, the planned trajectory of the robot's end in its joint space is obtained, The velocity, acceleration and jerk of the planned trajectory are continuous.
  • the technical solution of this application uses Cartesian space path planning, Cartesian space trajectory planning and joint space trajectory planning to meet the requirements for the Cartesian space position, the requirements for Cartesian space motion and the robot joint space during the trajectory planning process of the robot end.
  • the requirements of each axis motion are decoupled, which improves the position accuracy and smoothness of the final planned trajectory in Cartesian path planning.
  • Cartesian space trajectory planning the final planned trajectory satisfies the motion speed constraints and continuity of Cartesian space.
  • the trajectory planning of the joint space realizes that the motion of each axis meets the constraints and continuity requirements of speed, acceleration and jerk, thereby improving the end trajectory motion performance of the robot.
  • An embodiment of a planning method for the end trajectory of a robot performs smooth fitting on a pair of path nodes to obtain the planned path of the end of the robot in Cartesian space; under the kinematic constraints of the Cartesian space of the end of the robot, according to the planned path Use speed planning to obtain the planned trajectory of the robot end in Cartesian space; according to the planned trajectory of the robot end in Cartesian space, obtain the joint nodes of the robot end in the robot joint space; kinematic constraints on each axis of the robot Next, the planned trajectory of the robot end in its joint space is obtained based on the joint nodes.
  • Figure 1 shows the process of Embodiment 1 of a robot terminal trajectory planning method, including steps S110 to S150.
  • S110 Obtain several discrete path nodes at the end of the robot.
  • the coordinates of the path nodes are the poses in Cartesian space.
  • the path nodes are key points in the movement process of the end of the multi-axis equipment, and are generally the results of CAD/CAM output.
  • Cartesian space includes Cartesian position space and Cartesian attitude space
  • pose includes position and attitude.
  • attitude coordinates are represented by Euler angles.
  • the attitude coordinates are represented by continuous Euler angles.
  • continuous Euler angles have the same number of dimensions as Euler angles.
  • the continuous Euler angle of a path node is equal to the continuous Euler angle of the previous path node and the Euler angle rotation angle of the node.
  • the Euler angle rotation angle of a path node is equal to the forward rotation angle from the previous path node to the Euler angle of this path node.
  • S120 Perform smooth fitting on each path node to obtain the planned path of the Cartesian space at the end of the robot.
  • the drawn path satisfies the smoothness and accuracy requirements of the position in Cartesian space.
  • the process of smooth fitting of path nodes includes one of the following: passing point method and non-passing point method.
  • the planned path after smooth fitting without point method may not necessarily pass through all path nodes, but the mean square error of the position deviation from each path node is less than the set threshold to meet the position accuracy requirements of the robot's motion trajectory in Cartesian space.
  • suitable for planning of regular paths is to use line segments and arcs to smoothly fit path nodes.
  • the planned path smoothed by the point method passes through each path node, which meets the position accuracy requirements of the robot's motion trajectory in Cartesian space and is suitable for the planning of irregular paths.
  • a preferred implementation of the passing point method is to use polynomials or B-splines to smoothly fit discrete path nodes.
  • the pose of each path point obtained through path planning is a rasterization of the movement position of the end of the robot. It can be considered as a global planning of the movement position of the end of the robot, realizing the movement of the robot in Cartesian space.
  • the trajectory meets the requirements of position smoothness and accuracy.
  • the pose of each point on the planned trajectory in Cartesian space is the same as the pose of the corresponding path point on the planned path in Cartesian space in step S120.
  • the pose and time of each path point are obtained through speed planning. relationship, that is, each path point adds a time attribute.
  • the planned path in the Cartesian space with the added time attribute is called the planned trajectory in the Cartesian space.
  • the kinematic constraints of the Cartesian space at the end of the robot are generally set according to the operating requirements of the end of the robot to meet the control purpose of the end of the robot.
  • the Cartesian attitude space is represented by continuous Euler angles to solve the position discontinuity problem caused by the singular points of Euler angles.
  • a possible implementation of this step includes:
  • the distance space includes the distance length dimension on each coordinate axis of the Cartesian position space and the distance length dimension on each coordinate axis of the Descartes attitude space.
  • a The path length of a path point on a coordinate axis in Cartesian space is the length of the planned path from the first path point to the path point projected on the coordinate axis.
  • the Cartesian position space includes three axes: The position distance length dimension of , and the attitude distance length dimension on the three coordinate axes of ⁇ , ⁇ and ⁇ of the Cartesian attitude space.
  • the Jacobian matrix can be used to convert the kinematic constraints of the Cartesian space at the end of the robot into the kinematic constraints of the path space.
  • the interpolation method of the speed planner is used to complete the planning trajectory of the robot end in the journey space, and in the process, the trajectories of each dimension of the journey space are kept synchronized.
  • the search method is used to convert the coordinates of each path point in the path space into the posture of each path point in the Cartesian space, forming a robot.
  • the planned trajectory of the end in Cartesian space is used to convert the coordinates of each path point in the path space into the posture of each path point in the Cartesian space, forming a robot.
  • the speed of the robot's end in the path space is continuous, and the speed of the robot's end in Cartesian space is also continuous.
  • the coordinates of the robot's end in the path space are continuous, and the position and posture of the robot's end in Cartesian space are also continuous.
  • the posture space is also represented by continuous Euler angles, but is directly planned through the posture. This step adopts the following possible implementation methods, including:
  • the position coordinates and attitude coordinates of each path point at the end of the robot are used to interpolate each path point at the end of the robot to obtain the planned trajectory of the robot end in Cartesian space. , and maintain the continuity of pose and velocity of each trajectory point of the planned trajectory.
  • the attitude space is represented by Euler angles.
  • a possible implementation of this step includes:
  • S140 According to the planned trajectory of the robot end in Cartesian space, obtain the joint nodes of the robot end in the robot's joint space.
  • the joint nodes are the key points of the movement trajectory of the robot end in its joint space, and their coordinates are The coordinates of the joint space.
  • the planning trajectory of the joint space obtained in this step includes the joint trajectory, which is the relationship between the joint coordinates of the robot and time.
  • this step realizes the relationship between the position of each axis of the robot and time.
  • this step includes the following processes:
  • trajectory nodes of the robot end in Cartesian space are the key points of the movement trajectory of the robot end in Cartesian space.
  • the trajectory node of the robot's end in Cartesian space is obtained, and the trajectory node determines the location of the robot's end in Cartesian space.
  • the trend of the planned trajectory can smoothly fit the trajectory of the robot's end in Cartesian space.
  • the trajectory node is used as a joint node, and the inverse kinematics solution is used to convert the posture of the trajectory node into the coordinates of the joint node in the robot joint space.
  • the trajectory node is the key point of the movement trajectory of the robot end in Cartesian space, which can be used as the key point of the movement trajectory of the robot end in its joint space, that is, the joint node.
  • the methods of inverse kinematics solution include analytical method, numerical method and geometric method. This step does not limit the method of inverse kinematics solution.
  • the joint nodes of the robot end in the robot joint space are obtained through the inverse kinematics solution, which is used as the basis for trajectory planning in the robot joint space.
  • the planned trajectory of the robot end in its joint space includes the planned trajectory of each axis of the robot in the joint space, and the planned trajectories of each axis in the joint space are synchronized, that is, each axis reaches the position corresponding to each joint node synchronously.
  • This step includes the following processes:
  • the longest duration of each axis of the robot between the pair of adjacent joint nodes is regarded as the longest duration of each axis of the robot between the pair of adjacent joint nodes.
  • the synchronization duration that is, the movement duration of each axis of the robot between the pair of adjacent joint nodes is adjusted to the synchronization duration to optimize the robot's mobility.
  • speed planning is used to obtain each axis of the robot under the kinematic constraints of each axis of the robot.
  • the secondary planned trajectory in its joint space is used as the planned trajectory of the robot end in its joint space.
  • the planned trajectories of each axis of the robot are synchronously planned under the kinematic constraints of each axis of the robot, which improves the robot's motion performance, and makes the speed, acceleration and jerk of the planned trajectory of each axis continuous, reducing the cause of each axis.
  • the vibration caused by the jump of motion is synchronously planned under the kinematic constraints of each axis of the robot, which improves the robot's motion performance, and makes the speed, acceleration and jerk of the planned trajectory of each axis continuous, reducing the cause of each axis.
  • the vibration caused by the jump of motion is synchronously planned under the kinematic constraints of each axis of the robot, which improves the robot's motion performance, and makes the speed, acceleration and jerk of the planned trajectory of each axis continuous, reducing the cause of each axis.
  • the vibration caused by the jump of motion is synchronously planned under the kinematic constraints of each axis of the robot, which improve
  • an embodiment of a planning method for the end trajectory of a robot performs smooth fitting on a pair of path nodes to obtain the planned path of the end of the robot in Cartesian space; under the kinematic constraints of the Cartesian space of the end of the robot, According to the planned path, speed planning is used to obtain the planned trajectory of the robot end in Cartesian space; according to the planned trajectory of the robot end in Cartesian space, the joint nodes of the robot end in the robot joint space are obtained; in the motion of each axis of the robot Under the scientific constraints, the planned trajectory of the robot end in its joint space is obtained according to the joint nodes.
  • the technical solution of this embodiment uses Cartesian space path planning, Cartesian space trajectory planning and joint space trajectory planning to meet the requirements for Cartesian space position accuracy and kinematic constraints of Cartesian space motion during the trajectory planning process at the end of the robot. It is decoupled from the kinematic constraints of each axis of the robot and improves the position accuracy of the final planned trajectory in Cartesian path planning. Trajectory planning in Cartesian space makes the final planned trajectory satisfy the kinematic constraints of Cartesian space. Joint space trajectory planning enables the motion of each axis to meet kinematic constraints, thereby improving the robot's end trajectory motion performance.
  • Embodiment 2 of a planning method for the end trajectory of a robot uses continuous Euler angles to represent attitude coordinates; the path nodes are smoothly fitted by the passing point method to obtain the planned path of the end of the robot in Cartesian space; at the end of the robot Under the kinematic constraints of Cartesian space, the two-dimensional journey space coordinates are used to obtain the planned trajectory of the robot end in the journey space using speed planning, and converted into the planned trajectory of Cartesian space; under the kinematic constraints of each axis of the robot Next, the planned trajectory of the robot end in its joint space is obtained according to the joint nodes, and the jump points are smoothed and filtered.
  • Figure 2 shows the process of Embodiment 2 of a robot terminal trajectory planning method, including steps S210 to S250.
  • S210 Obtain several discrete path nodes at the end of the robot.
  • the coordinates of the path nodes are the poses in Cartesian space, and their pose coordinates are represented by continuous Euler angles.
  • the path nodes are the key points in the movement process of the robot end, which are generally the results of CAD/CAM output.
  • the continuous Euler angle is used to represent the attitude, which facilitates the calculation of the coordinates of the attitude distance dimension in the subsequent journey planning space, thereby carrying out trajectory planning in the journey space and achieving attitude continuity, which solves the problem of singular points in Euler angles that cannot be interpolated. Also solves the problem of less continuous postures through quaternion interpolation.
  • S220 Use polynomials or B-splines to smoothly fit the path nodes to obtain the planned path of the robot end in Cartesian space.
  • polynomials or B-splines are used to smoothly fit the path nodes, and the smoothly fitted planned path passes through each path node.
  • S230 Convert the posture of each path point in the planned path into two-dimensional journey space coordinates, obtain the planned trajectory of the robot end in the journey space based on the journey space coordinates, and convert it into a planned trajectory in Cartesian space.
  • the planned trajectory Velocity and pose are continuous in Cartesian space.
  • this step includes the following sub-steps:
  • the distance space includes the position distance length dimension of the Cartesian position space and the attitude distance length dimension of the Cartesian attitude space.
  • the position path length of a path point is the length of the path from the first path point to this path point in the Cartesian position space
  • the attitude path length of a path point is the distance from the first path point in the Cartesian attitude space. The length of the distance traveled from the waypoint to the waypoint.
  • the kinematic constraints of the Cartesian space at the end of the robot are generally set according to the operating requirements of the end of the robot to meet the control purpose of the end of the robot.
  • the Jacobian matrix can be used to convert the kinematic constraints of the Cartesian space at the end of the robot into the kinematic constraints of the path space.
  • the interpolation method of the speed planner is used to complete the planning trajectory of the robot end in the journey space, and in the process, the trajectories of each dimension of the journey space are kept synchronized. Because in this embodiment, as long as the two dimensions of the route space need to be synchronized, the planning accuracy is high.
  • the search method is used to convert the coordinates of each path point in the path space into the posture of each path point in the Cartesian space, forming a robot.
  • the planned trajectory of the end in Cartesian space is used to convert the coordinates of each path point in the path space into the posture of each path point in the Cartesian space, forming a robot.
  • the speed of the end of the robot in the path space is continuous, and the speed of the end of the robot in the Cartesian space is also continuously.
  • the position and posture dimensions of the robot's end in the path space are both continuous, and the position and posture of the robot's end in Cartesian space are also continuous.
  • the two-dimensional journey space is used for planning, and the planning accuracy is high.
  • S240 According to the planned trajectory of the robot end in Cartesian space, obtain the joint nodes of the robot end in the robot joint space.
  • the joint nodes are the key points of the movement trajectory of the robot end in its joint space, and their coordinates are the robot joints. The coordinates of space.
  • this step is the same as step S140 of Embodiment 1 of the robot terminal trajectory planning method, and will not be described in detail here.
  • the planned trajectory of the robot end in its joint space includes the planned trajectory of each axis of the robot in the joint space, and the planned trajectories of each axis in the joint space are synchronized, that is, each axis reaches the position corresponding to each joint node synchronously.
  • the kinematic constraints of each axis of the robot are obtained based on the dynamics constraints of each axis of the robot, so that the planned trajectory of each axis of the robot conforms to the dynamics constraints, and each axis of the robot can be planned according to the corresponding The track can be run.
  • this step is completed through the speed planner.
  • the relationship between position and time in the speed planner is an analytical formula with cosine as the kernel function.
  • the speed planner uses an S-shaped curve to predict the speed during interpolation.
  • This step includes the following processes:
  • the speed of an axis of a robot at the inflection point of the axis is 0.
  • the longest time period between each axis of the robot between the pair of adjacent joint nodes is regarded as the longest time period between the pair of adjacent joint nodes.
  • the synchronization duration between them that is, the movement duration of each axis of the robot between the pair of adjacent joint nodes is adjusted to the synchronization duration.
  • the second embodiment of a planning method for a robot's end trajectory not only decouples the requirements of Cartesian space position, Cartesian space motion and the motion of each axis of the robot's joint space, so that the final planning
  • the drawing trajectory meets the requirements of Cartesian space position, Cartesian space motion requirements and the requirements of each axis motion of the robot joint space.
  • Embodiment 1 of a planning device for the end trajectory of a robot executes the method described in Embodiment 1 of a planning method for the end trajectory of a robot.
  • Figure 3 shows the structure of Embodiment 1 of a planning device for the end trajectory of a robot. It includes: node acquisition module 310, path smoothing module 320, Cartesian trajectory planning module 330, inverse kinematics solution module 340 and joint trajectory planning module 350.
  • the node acquisition module 310 is used to acquire several discrete path nodes at the end of the robot.
  • the coordinates of the path nodes are the poses of the Cartesian space.
  • step S110 in Embodiment 1 of a robot terminal trajectory planning method please refer to step S110 in Embodiment 1 of a robot terminal trajectory planning method.
  • the path smoothing module 320 is used to perform smooth fitting on each path node to obtain the planned path of the robot end in Cartesian space.
  • step S120 in Embodiment 1 of a robot terminal trajectory planning method please refer to step S120 in Embodiment 1 of a robot terminal trajectory planning method.
  • the Cartesian trajectory planning module 330 is used to obtain the planned trajectory of the robot end in the Cartesian space by using speed planning according to the planned path under the kinematic constraints of the Cartesian space of the robot end.
  • speed planning according to the planned path under the kinematic constraints of the Cartesian space of the robot end.
  • the inverse kinematics module 340 is used to obtain the joint nodes of the robot end in the robot's joint space based on the planned trajectory of the robot's end in Cartesian space.
  • the joint nodes are the key points of the motion trajectory of the robot's end in its joint space.
  • Its coordinates are the coordinates of the robot's joint space.
  • the joint trajectory planning module 350 is used to obtain the planned trajectory of the robot end in its joint space based on the joint nodes under the kinematic constraints of each axis of the robot. For its working principle and advantages, please refer to step S150 in Embodiment 1 of a robot terminal trajectory planning method.
  • Embodiment 2 of a planning device for a robot's end trajectory executes the method described in Embodiment 2 of a planning method for a robot's end trajectory.
  • Figure 4 shows the structure of Embodiment 2 of a planning device for a robot's end trajectory. It includes: node acquisition module 410, path smoothing module 420, Cartesian trajectory planning module 430, inverse kinematics solution module 440 and joint trajectory planning module 450.
  • the node acquisition module 410 is used to acquire several discrete path nodes at the end of the robot.
  • the coordinates of the path nodes are poses in Cartesian space, and the pose coordinates are represented by continuous Euler angles.
  • step S210 in Embodiment 2 of a robot terminal trajectory planning method please refer to step S210 in Embodiment 2 of a robot terminal trajectory planning method.
  • the path smoothing module 420 is used to perform smooth fitting on each path node using polynomials or B-splines to obtain the planned path of the robot end in Cartesian space.
  • step S220 in Embodiment 2 of a robot terminal trajectory planning method please refer to step S220 in Embodiment 2 of a robot terminal trajectory planning method.
  • the Cartesian trajectory planning module 430 is used to convert the posture of each path point in the planned path into two-dimensional journey space coordinates, obtain the planned trajectory of the robot end in the journey space according to the journey space coordinates, and convert it into Cartesian trajectory planning module 430.
  • the planning trajectory of the Karl space, the speed and posture of the planning trajectory in the Cartesian space are continuous.
  • step S230 in Embodiment 2 of a robot terminal trajectory planning method please refer to step S230 in Embodiment 2 of a robot terminal trajectory planning method.
  • the inverse kinematics module 440 is used to obtain the joint nodes of the robot end in the robot's joint space based on the planned trajectory of the robot's end in Cartesian space.
  • the joint nodes are the key to the movement trajectory of the robot's end in its joint space.
  • Point, its coordinates are the coordinates of the robot joint space.
  • the joint trajectory planning module 450 is used to obtain the time synchronization between adjacent nodes according to the joint nodes under the kinematic constraints of each axis of the robot, and then obtain the planned trajectory of the robot end in its joint space through speed planning, and calculate the plan
  • the trajectory is filtered, and the final planned trajectory velocity, acceleration and jerk are continuous.
  • step S250 in Embodiment 2 of a robot terminal trajectory planning method please refer to step S250 in Embodiment 2 of a robot terminal trajectory planning method.
  • An embodiment of the present application also provides a computing device, which is described in detail below with reference to Figure 5 .
  • the computing device 500 includes a processor 510, a memory 520, a communication interface 530, and a bus 540.
  • the communication interface 530 in the computing device 500 shown in this figure can be used to communicate with other devices.
  • the processor 510 can be connected to the memory 520 .
  • the memory 520 may be used to store the program code and data. Therefore, the memory 520 may be a storage unit internal to the processor 510 , or may be an external storage unit independent of the processor 510 , or may include a storage unit internal to the processor 510 and an external storage unit independent of the processor 510 . part.
  • the computing device 500 may also include a bus 540.
  • the memory 520 and the communication interface 530 can be connected to the processor 510 through the bus 540.
  • the bus 540 may be a Peripheral Component Interconnect (PCI) bus or an Extended Industrial Standard Architecture (EFStended Industry Standard Architecture, EISA) bus, etc.
  • PCI Peripheral Component Interconnect
  • EISA Extended Industrial Standard Architecture
  • the bus 540 can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one line is used in this figure, but it does not mean that there is only one bus or one type of bus.
  • the processor 510 may be a central processing unit (CPU).
  • the processor can also be other general-purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), off-the-shelf programmable gate arrays (field programmable gate arrays, FPGAs) or other Programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • DSPs digital signal processors
  • ASICs application specific integrated circuits
  • FPGAs field programmable gate arrays
  • a general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc.
  • the processor 510 uses one or more integrated circuits to execute relevant programs to implement the technical solutions provided by the embodiments of this application.
  • the memory 520 may include read-only memory and random access memory and provides instructions and data to the processor 510 .
  • a portion of processor 510 may also include non-volatile random access memory.
  • processor 510 may also store device type information.
  • the processor 510 executes the computer execution instructions in the memory 520 to perform the operation steps of each method embodiment.
  • computing device 500 may correspond to the corresponding subjects in performing the methods according to the various embodiments of the present application, and the above and other operations and/or functions of the respective modules in the computing device 500 In order to implement the corresponding processes of each method in this method embodiment, for the sake of simplicity, they will not be described again here.
  • the disclosed systems, devices and methods can be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of the units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components may be combined or can be integrated into another system, or some features can be ignored, or not implemented.
  • the coupling or direct coupling or communication connection between each other shown or discussed may be through some interfaces, and the indirect coupling or communication connection of the devices or units may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or they may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the method embodiment.
  • each functional unit in each embodiment of the present application can be integrated into one processing unit, each unit can exist physically alone, or two or more units can be integrated into one unit.
  • the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium.
  • the technical solution of the present application is essentially or the part that contributes to the existing technology or the part of the technical solution can be embodied in the form of a software product.
  • the computer software product is stored in a storage medium, including Several instructions are used to cause a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the decoding method described in various embodiments of this application.
  • the aforementioned storage media include U disk, mobile hard disk, Read-Only Memory (ROM), Random Access Memory (RAM), magnetic disk or optical disk and other media that can store program code. .
  • Embodiments of the present application also provide a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the program is used to perform the operating steps of each method embodiment.
  • the computer storage medium in the embodiment of the present application may be any combination of one or more computer-readable media.
  • the computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium.
  • the computer-readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination thereof. More specific examples (non-exhaustive list) of computer readable storage media include electrical connections having one or more conductors, portable computer disks, hard drives, random access memory (RAM), read only memory (ROM), Erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program, The program may be used by or in conjunction with an instruction execution system, apparatus, or device.
  • a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave carrying computer-readable program code therein. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above.
  • a computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device .
  • Program code embodied on a computer-readable medium may be transmitted using any suitable medium, including, but not limited to, wireless, wire, optical cable, RF, etc., or any suitable combination of the foregoing.
  • Computer program code for performing the operations of the present application may be written in one or more programming languages, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional Procedural programming language—such as "C" or a similar programming language.
  • the program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer can be connected to the user's computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (such as an Internet service provider through the Internet). connect).
  • LAN local area network
  • WAN wide area network
  • Internet service provider such as an Internet service provider through the Internet. connect

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

A trajectory planning method for a robot end. The method comprises: performing smooth fitting on several discrete path nodes of a robot end, so as to obtain a planned path of the robot end in a Cartesian space; under a kinematic constraint condition of the Cartesian space of the robot end, according to the planned path, obtaining a planned trajectory of the robot end in the Cartesian space by means of speed planning; obtaining joint nodes of the robot end in a robot joint space according to the planned trajectory of the robot end in the Cartesian space; and under a kinematic constraint condition of each shaft of a robot and according to the joint nodes, obtaining a planned trajectory of the robot end in the robot joint space. By means of the planning method, the requirement for the position precision of a Cartesian space, the requirement for a kinematic constraint of the motion in the Cartesian space, and the requirement for a kinematic constraint of each shaft of a robot are decoupled, and a planned trajectory meets the requirements, thereby improving the motion performance of the robot. Further provided are a trajectory planning apparatus for a robot end, and a computing device and a computer-readable storage medium.

Description

一种机械人末端轨迹的规划方法及装置A planning method and device for the terminal trajectory of a robot

本申请要求在先国家申请的优先权,在先国家为中国,在先国家申请的申请号是202211035164.9、申请日是2022年8月26日,在先国家申请的全部内容通过引用合并于此。This application claims the priority of the prior country application. The prior country application is China. The application number of the prior country application is 202211035164.9 and the filing date is August 26, 2022. The entire content of the prior country application is incorporated herein by reference.

技术领域Technical field

本申请涉及运动控制相关技术领域,尤其涉及一种机械人末端轨迹的规划方法及装置。The present application relates to the technical field related to motion control, and in particular to a planning method and device for the end trajectory of a robot.

背景技术Background technique

机械人末端(也称为执行端)的轨迹规划需要考虑笛卡尔空间位置的要求、笛卡尔空间运动的要求和机械人关节空间的各个轴运动的要求,其中,笛卡尔空间位置的要求包括位置的平滑性和精度要求,笛卡尔空间运动的要求包括机械人在笛卡尔空间运动速度约束和速度连续性的要求,轴运动的要求包括轴的运动学约束条件以及速度连续和加速度连续,甚至还包括加加速度连续性的要求。The trajectory planning of the robot end (also called the execution end) needs to consider the requirements of the Cartesian space position, the requirements of the Cartesian space motion and the requirements of the various axis motions of the robot joint space. Among them, the requirements of the Cartesian space position include the position The requirements for smoothness and accuracy. The requirements for Cartesian space motion include the speed constraints and speed continuity requirements of the robot's movement in Cartesian space. The requirements for axis motion include the kinematic constraints of the axis as well as the speed continuity and acceleration continuity, and even Includes requirements for jerk continuity.

现有技术在规划过程中未对上述三项要求进行解耦,在规划过程中把上述三项要求中经常把至少2项同时考虑,导致这三项要求互相影响,影响规划效果,甚至规划出来的轨迹在运动过程中存在位置偏差、轴震动等问题。The existing technology does not decouple the above three requirements in the planning process. In the planning process, at least two of the above three requirements are often considered at the same time, causing these three requirements to interact with each other, affecting the planning effect, and even planning out. There are problems such as position deviation and shaft vibration during the movement of the trajectory.

发明内容Contents of the invention

有鉴于此,本申请实施例提供了本申请实施例提供了一种机械人末端轨迹的规划方法及装置。本申请的技术方案对机械人末端的轨迹规划过程中笛卡尔空间位置的要求、笛卡尔空间运动的要求和机械人关节空间的各个轴运动的要求进行解耦,使最后的规划轨迹满足笛卡尔空间位置的平滑和精度要求、笛卡尔空间运动速度的约束与速度连续性要求和机械人关节空间的各个轴的速度、加速度和加加速度的约束与连续性要求。In view of this, embodiments of the present application provide a method and device for planning a terminal trajectory of a robot. The technical solution of this application decouples the requirements of the Cartesian space position, the requirements of the Cartesian space motion and the requirements of the motion of each axis of the robot joint space in the trajectory planning process of the robot end, so that the final planned trajectory meets the Cartesian requirements. The smoothness and accuracy requirements of the spatial position, the constraints and velocity continuity requirements of the Cartesian space motion speed, and the constraints and continuity requirements of the speed, acceleration and jerk of each axis of the robot joint space.

第一方面,本申请实施例提供了一种机械人末端轨迹的规划方法,包括:获取机械人末端的若干个离散的路径节点,所述路径节点的坐标为笛卡尔空间的位姿,笛卡尔空间包括笛卡尔位置空间和笛卡尔姿态空间,位姿包括位置和姿态;对所述路径节点进行平滑拟合,获得机械人末端在笛卡尔空间的规划路径;在机械人末端的笛卡尔空间的运动学约束条件下,根据所述规划路径利用速度规划获得机械人末端在笛卡尔空间的规划轨迹,该规划轨迹在笛卡尔空间的速度连续;根据机械人末端在笛卡尔空间的规划轨迹,获得机械人末端在机械人关节空间的关节节点,所述关节节点为机械人末端在其关节空间的运动轨迹的关键点,其坐标为机械人关节空间的坐标;在机械人各轴的运动学约束条件下,根据所述关节节点获得机械人末端在关节空间的规划轨迹,该规划轨迹的速度、加速度和加加速度连续。In the first aspect, embodiments of the present application provide a method for planning the end trajectory of a robot, including: obtaining several discrete path nodes at the end of the robot, where the coordinates of the path nodes are poses in Cartesian space. The space includes a Cartesian position space and a Cartesian attitude space, and the pose includes a position and an attitude; the path nodes are smoothly fitted to obtain the planned path of the robot end in the Cartesian space; the Cartesian space at the end of the robot is Under kinematic constraints, the planned trajectory of the robot end in Cartesian space is obtained by using speed planning according to the planned path. The planned trajectory of the planned trajectory in Cartesian space is continuous; according to the planned trajectory of the robot end in Cartesian space, we obtain The joint nodes of the robot's end in the robot's joint space. The joint nodes are the key points of the movement trajectory of the robot's end in its joint space, and its coordinates are the coordinates of the robot's joint space; the kinematic constraints on each axis of the robot Under the conditions, the planned trajectory of the robot end in the joint space is obtained according to the joint nodes, and the speed, acceleration and jerk of the planned trajectory are continuous.

由上,通过笛卡尔空间路径规划、笛卡尔空间轨迹规划和关节空间轨迹规划在机 械人末端的轨迹规划过程中对笛卡尔空间位置精度的要求、笛卡尔空间运动的运动学约束要求和机械人各个轴的运动学约束要求解耦,在笛卡尔路径规划中提高了最后的规划轨迹的位置精度,在笛卡尔空间轨迹规划使最后的规划轨迹满足笛卡尔空间的运动学约束,在关节空间轨迹规划实现各个轴的运动满足运动学约束,从而提高了机械人末端轨迹运动性能。From the above, through Cartesian space path planning, Cartesian space trajectory planning and joint space trajectory planning on the machine In the process of trajectory planning of the robot end, the requirements for Cartesian space position accuracy, the kinematic constraints of Cartesian space motion and the kinematic constraints of each axis of the robot are decoupled, and the final planning is improved in the Cartesian path planning. Regarding the position accuracy of the trajectory, trajectory planning in Cartesian space enables the final planned trajectory to meet the kinematic constraints of Cartesian space, and trajectory planning in joint space enables the motion of each axis to meet the kinematic constraints, thereby improving the end trajectory motion performance of the robot.

在第一方面的一种可能实施方式中,所述位姿中姿态用连续欧拉角表示,一个路径节点的所述连续欧拉角等于其上一个路径节点的所述连续欧拉角与该节点的欧拉角旋转角度之和,一个路径节点的所述欧拉角旋转角度等于从其上一个路径节点到该路径节点的欧拉角的正向旋转的角度。In a possible implementation of the first aspect, the posture in the pose is represented by a continuous Euler angle, and the continuous Euler angle of a path node is equal to the continuous Euler angle of the previous path node and the continuous Euler angle of the path node. The sum of Euler angle rotation angles of a node. The Euler angle rotation angle of a path node is equal to the forward rotation angle from the previous path node to the Euler angle of the path node.

由上,采用连续欧拉角的方式表示姿态,在笛卡尔空间的轨迹规划时解决了在传统欧拉角因为存在奇异点无法进行轨迹插值的问题,实现了姿态的连续。From the above, continuous Euler angles are used to represent the attitude. During trajectory planning in Cartesian space, the problem that trajectory interpolation cannot be performed due to the existence of singular points in traditional Euler angles is solved, and the continuity of the attitude is achieved.

在第一方面的一种可能实施方式中,对所述路径节点进行平滑拟合的流程包括下列之一:用线段和圆弧对所述路径节点进行平滑拟合;用多项式或B样条对所述路径节点进行平滑拟合。在规则路径中采用用线段和圆弧对所述路径节点进行平滑拟合;在不规则路径中,采用多项式或B样条对所述路径节点进行平滑拟合。In a possible implementation of the first aspect, the process of smoothly fitting the path nodes includes one of the following: using line segments and arcs to smoothly fit the path nodes; using polynomials or B-splines to smoothly fit the path nodes. The path nodes perform smooth fitting. In regular paths, line segments and arcs are used to smoothly fit the path nodes; in irregular paths, polynomials or B-splines are used to smoothly fit the path nodes.

由上,通过用线段和圆弧对所述路径节点进行平滑拟合或用多项式或B样条对所述路径节点进行平滑拟合,均实现规划路径上位置平滑,并满足运动路径的精度要求。From the above, by using line segments and arcs to smoothly fit the path nodes or using polynomials or B-splines to smoothly fit the path nodes, the position on the planned path can be smoothed and the accuracy requirements of the motion path can be met. .

在第一方面的一种可能实施方式中,所述在机械人末端的笛卡尔空间的运动学约束条件下,根据所述规划路径利用速度规划获得机械人末端在笛卡尔空间的规划轨迹,包括:根据所述规划路径的各路径点的所述位姿,获得所述各路径点的位置路程长度和角度路程长度,由所述位置路程长度和所述角度路程长度组成路程空间的坐标,一个路径点的所述位置路程长度为在笛卡尔位置空间中从第一个路径点到该路径点的所述规划路径的长度,一个路径点的所述角度路程长度为在笛卡尔姿态空间中从第一个路径点到该路径点的所述规划路径的长度;把机械人末端的笛卡尔空间的运动学约束条件转换为所述路程空间的运动学约束条件;在所述路程空间的运动学约束条件下,根据所述路程空间的坐标利用速度规划获得机械人末端在所述路程空间的规划轨迹,且机械人末端在所述路程空间的速度连续;根据所述路程空间的规划轨迹获得机械人末端在笛卡尔空间的规划轨迹。In a possible implementation of the first aspect, under the kinematic constraints of the Cartesian space at the end of the robot, velocity planning is used to obtain the planned trajectory of the end of the robot in Cartesian space according to the planned path, including : According to the pose of each path point of the planned path, the position path length and angular path length of each path point are obtained, and the position path length and the angular path length constitute the coordinates of the path space, a The position path length of a path point is the length of the planned path from the first path point to the path point in Cartesian position space, and the angular path length of a path point is from the Cartesian attitude space. The length of the planned path from the first path point to the path point; converting the kinematic constraints of the Cartesian space at the end of the robot into the kinematic constraints of the path space; kinematics in the path space Under constraint conditions, speed planning is used to obtain the planned trajectory of the robot end in the distance space according to the coordinates of the distance space, and the speed of the robot end in the distance space is continuous; the robot end is obtained according to the planned trajectory of the distance space. The planning trajectory of the human end in Cartesian space.

由上,通过把规划路径中各路径点的位姿转化为二维的路程空间的坐标进行路程轨迹规划,然后再转换为笛卡尔空间的轨迹,不仅使笛卡尔空间的规划轨迹满足机械人末端的笛卡尔空间的运动学约束条件,实现笛卡尔空间的规划轨迹的速度连续,同时解决了欧拉角的插补过程中的奇异点问题,且降低了轨迹同步的复杂度。From the above, by converting the posture of each path point in the planned path into the coordinates of the two-dimensional journey space for path trajectory planning, and then converting it into the trajectory of the Cartesian space, not only the planned trajectory of the Cartesian space satisfies the end of the robot The kinematic constraints of the Cartesian space realize the velocity continuity of the planned trajectory in the Cartesian space, while solving the singular point problem in the interpolation process of Euler angles and reducing the complexity of trajectory synchronization.

在第一方面的一种可能实施方式中,所述在机械人末端的笛卡尔空间的运动学约束条件下,根据所述规划路径利用速度规划获得机械人末端在笛卡尔空间的规划轨迹,包括:根据所述规划路径的各路径点的所述位姿,获得所述各路径点的在笛卡尔位置空间的各坐标轴上的路程长度,并组成所述规划路径的路程空间的坐标,一个路径点在笛卡尔空间的一个坐标轴上的所述路程长度为从第一个路径点到该路径点的所述规划路径的经过路程投影在该坐标轴上的长度;把机械人末端的笛卡尔空间的运动学约束条件转换为所述路程空间的运动学约束条件;在所述路程空间的运动学约束 条件下,根据所述路程空间的坐标利用速度规划获得机械人末端在所述路程空间的规划轨迹,且机械人末端在所述路程空间的速度连续;根据所述路程空间的规划轨迹获得机械人末端在笛卡尔空间的规划轨迹。In a possible implementation of the first aspect, under the kinematic constraints of the Cartesian space at the end of the robot, velocity planning is used to obtain the planned trajectory of the end of the robot in Cartesian space according to the planned path, including : According to the pose of each path point of the planned path, obtain the path length of each path point on each coordinate axis of the Cartesian position space, and form the coordinates of the path space of the planned path, a The length of the path point on a coordinate axis in Cartesian space is the length of the planned path from the first path point to the path point projected on the coordinate axis; the flute at the end of the robot is Kinematic constraints in Karl space are converted into kinematic constraints in the path space; kinematic constraints in the path space Under the condition, the planned trajectory of the robot end in the distance space is obtained by using speed planning according to the coordinates of the distance space, and the speed of the robot end in the distance space is continuous; the robot is obtained according to the planned trajectory of the distance space The planned trajectory of the end in Cartesian space.

由上,通过把规划路径中各路径点的位姿转化为多维的路程空间的坐标进行路程轨迹规划,然后再转换为笛卡尔空间的轨迹,不仅使笛卡尔空间的规划轨迹满足机械人末端的笛卡尔空间的运动学约束条件,实现笛卡尔空间的规划轨迹的速度连续,同时解决了欧拉角的插补过程中的奇异点问题。From the above, by converting the posture of each path point in the planned path into the coordinates of the multi-dimensional journey space for path trajectory planning, and then converting it into the trajectory of the Cartesian space, not only the planned trajectory of the Cartesian space satisfies the end of the robot The kinematic constraints of Cartesian space realize the velocity continuity of the planned trajectory in Cartesian space, and at the same time solve the singular point problem in the interpolation process of Euler angles.

在第一方面的一种可能实施方式中,所述根据机械人末端在笛卡尔空间的规划轨迹,获得机械人末端在机械人关节空间的关节节点,包括:根据机械人末端在笛卡尔空间的规划轨迹,获得根据机械人末端在笛卡尔空间的轨迹节点,所述轨迹节点为机械人末端在笛卡尔空间的运动轨迹的关键点;把所述轨迹节点作为所述关节节点,利用运动学逆解把所述轨迹节点的所述位姿转化为所述关节节点在机械人关节空间的坐标。In a possible implementation of the first aspect, obtaining the joint nodes of the robot end in the robot joint space according to the planned trajectory of the robot end in Cartesian space includes: according to the planned trajectory of the robot end in Cartesian space Plan the trajectory and obtain the trajectory nodes according to the robot end in Cartesian space. The trajectory nodes are the key points of the movement trajectory of the robot end in Cartesian space; use the trajectory nodes as the joint nodes and use the kinematic inverse The solution converts the pose of the trajectory node into the coordinates of the joint node in the robot joint space.

由上,根据运动学逆解获得关节空间的关键点,为关节空间的轨迹规划提供依据。From the above, the key points of the joint space are obtained based on the inverse kinematics solution, which provides a basis for trajectory planning in the joint space.

在第一方面的一种可能实施方式中,所述在机械人各轴的运动学约束条件下,根据所述关节节点获得机械人末端在其关节空间的规划轨迹,包括:在机械人各轴的运动学约束条件下,根据所述关节节点在机械人关节空间的坐标利用速度规划分别获得机械人的每个轴在其关节空间的一次规划轨迹,并据此获得机械人的每个轴在相邻关节节点之间的运动时长;对于任一对相邻关节节点,把该对相邻关节节点之间机械人各轴的运动时长中的最长时间作为该对相邻关节节点之间的同步时长;根据机械人在各对相邻关节节点之间的同步时长和所述关节节点在机械人关节空间的坐标,在机械人各轴的运动学约束条件下利用速度规划分别获得机械人的每个轴在其关节空间的二次规划轨迹,并作为机械人末端在其关节空间的规划轨迹,该规划轨迹中机械人的每个轴的速度、加速度和加加速度连续。In a possible implementation of the first aspect, obtaining the planned trajectory of the end of the robot in its joint space according to the joint nodes under the kinematic constraints of each axis of the robot includes: Under the kinematic constraints, according to the coordinates of the joint nodes in the robot's joint space, speed planning is used to obtain a planned trajectory of each axis of the robot in its joint space, and based on this, the planned trajectory of each axis of the robot in its joint space is obtained. The motion duration between adjacent joint nodes; for any pair of adjacent joint nodes, the longest time among the motion durations of each axis of the robot between the pair of adjacent joint nodes is regarded as the motion duration between the pair of adjacent joint nodes. Synchronization duration; According to the synchronization duration of the robot between each pair of adjacent joint nodes and the coordinates of the joint nodes in the robot's joint space, the speed planning of the robot is obtained respectively under the kinematic constraints of each axis of the robot. The quadratic planned trajectory of each axis in its joint space is used as the planned trajectory of the robot end in its joint space. In this planned trajectory, the speed, acceleration and jerk of each axis of the robot are continuous.

由上,在机械人各轴的运动学约束条件下,通过两次次关节空间的轨迹规划,实现关节空间的各轴的轨迹同步,使机械人基于规划轨迹的运动性能提高,且最终轨迹满足机械人的各轴上实现速度、加速度和加加速度的约束与连续性要求,降低机械人各轴的震动。From the above, under the kinematic constraints of each axis of the robot, through the trajectory planning of the secondary joint space, the trajectory synchronization of each axis in the joint space is achieved, so that the motion performance of the robot based on the planned trajectory is improved, and the final trajectory satisfies Realize the constraints and continuity requirements of speed, acceleration and jerk on each axis of the robot, and reduce the vibration of each axis of the robot.

第二方面,本申请实施例提供了一种一种机械人末端轨迹的规划装置,包括:节点获取模块,用于获取机械人末端的若干个离散的路径节点,所述路径节点的坐标为在笛卡尔空间的位姿,笛卡尔空间包括笛卡尔位置空间和笛卡尔姿态空间,位姿包括位置和姿态;路径平滑模块,用于对所述路径节点进行平滑拟合,获得机械人末端在笛卡尔空间的规划路径;笛卡尔轨迹规划模块,用于在机械人末端的笛卡尔空间的运动学约束条件下,根据所述规划路径利用速度规划获得机械人末端在笛卡尔空间的规划轨迹;运动学逆解模块,用于根据机械人末端在笛卡尔空间的规划轨迹,获得机械人末端在机械人关节空间的关节节点,所述关节节点为机械人末端在其关节空间的运动轨迹的关键点,其坐标为机械人关节空间的坐标;关节轨迹规划模块,用于在机械人各轴的运动学约束条件下,根据所述关节节点获得机械人末端在其关节空间的规划 轨迹。In the second aspect, embodiments of the present application provide a planning device for a robot end trajectory, including: a node acquisition module for acquiring several discrete path nodes at the end of the robot, the coordinates of the path nodes are at The pose of the Cartesian space, the Cartesian space includes the Cartesian position space and the Cartesian attitude space, the pose includes the position and the attitude; the path smoothing module is used to perform smooth fitting on the path nodes, and obtain the Cartesian end position of the robot. The planned path in Karl space; the Cartesian trajectory planning module is used to obtain the planned trajectory of the robot end in Cartesian space by using speed planning according to the planned path under the kinematic constraints of the Cartesian space at the end of the robot; motion The inverse solution module is used to obtain the joint nodes of the robot end in the robot joint space based on the planned trajectory of the robot end in Cartesian space. The joint nodes are the key points of the motion trajectory of the robot end in its joint space. , whose coordinates are the coordinates of the robot's joint space; the joint trajectory planning module is used to obtain the planning of the robot's end in its joint space based on the joint nodes under the kinematic constraints of each axis of the robot. trajectory.

由上,通过笛卡尔空间路径规划、笛卡尔空间轨迹规划和关节空间轨迹规划在机械人末端的轨迹规划过程中对笛卡尔空间位置精度的要求、笛卡尔空间运动的运动学约束要求和机械人各个轴的运动学约束要求解耦,在笛卡尔路径规划中提高了最后的规划轨迹的位置精度,在笛卡尔空间轨迹规划使最后的规划轨迹满足笛卡尔空间的运动学约束,在关节空间轨迹规划实现各个轴的运动满足运动学约束,从而提高了机械人末端轨迹运动性能。From the above, through Cartesian space path planning, Cartesian space trajectory planning and joint space trajectory planning, in the trajectory planning process of the robot end, the requirements for Cartesian space position accuracy, the kinematic constraint requirements of Cartesian space motion and the robot The kinematic constraints of each axis require decoupling. In Cartesian path planning, the position accuracy of the final planned trajectory is improved. In Cartesian space trajectory planning, the final planned trajectory satisfies the kinematic constraints of Cartesian space. In the joint space trajectory, The motion of each axis is planned to meet the kinematic constraints, thereby improving the robot's terminal trajectory motion performance.

在第二方面的一种可能实施方式中,所述位姿中姿态用连续欧拉角表示,一个路径节点的所述连续欧拉角等于其上一个路径节点的所述连续欧拉角与该节点的欧拉角旋转角度之和,一个路径节点的所述欧拉角旋转角度等于从其上一个路径节点到该路径节点的欧拉角的正向旋转的角度。In a possible implementation of the second aspect, the posture in the posture is represented by a continuous Euler angle, and the continuous Euler angle of a path node is equal to the continuous Euler angle of the previous path node and the continuous Euler angle of the path node. The sum of Euler angle rotation angles of a node. The Euler angle rotation angle of a path node is equal to the forward rotation angle from the previous path node to the Euler angle of the path node.

由上,采用连续欧拉角的方式表示姿态,在笛卡尔空间的轨迹规划时解决了在传统欧拉角因为存在奇异点无法进行轨迹插值的问题,实现了姿态的连续。From the above, continuous Euler angles are used to represent the attitude. During trajectory planning in Cartesian space, the problem that trajectory interpolation cannot be performed due to the existence of singular points in traditional Euler angles is solved, and the continuity of the attitude is achieved.

在第二方面的一种可能实施方式中,路径规划模块对所述路径节点进行平滑拟合的流程包括下列之一:用线段和圆弧对所述路径节点进行平滑拟合;用多项式或B样条对所述路径节点进行平滑拟合。在规则路径中采用用线段和圆弧对所述路径节点进行平滑拟合;在不规则路径中,采用多项式或B样条对所述路径节点进行平滑拟合。In a possible implementation of the second aspect, the process for the path planning module to smoothly fit the path nodes includes one of the following: using line segments and arcs to smoothly fit the path nodes; using polynomials or B Splines provide a smooth fit to the path nodes. In regular paths, line segments and arcs are used to smoothly fit the path nodes; in irregular paths, polynomials or B-splines are used to smoothly fit the path nodes.

由上,通过用线段和圆弧对所述路径节点进行平滑拟合或用多项式或B样条对所述路径节点进行平滑拟合,均实现规划路径上位置平滑,并满足运动路径的精度要求。From the above, by using line segments and arcs to smoothly fit the path nodes or using polynomials or B-splines to smoothly fit the path nodes, the position on the planned path can be smoothed and the accuracy requirements of the motion path can be met. .

在第二方面的一种可能实施方式中,笛卡尔轨迹规划模块具体用于包括:根据所述规划路径的各路径点的所述位姿,获得所述各路径点的位置路程长度和角度路程长度,由所述位置路程长度和所述角度路程长度组成路程空间的坐标,一个路径点的所述位置路程长度为在笛卡尔位置空间中从第一个路径点到该路径点的所述规划路径的长度,一个路径点的所述角度路程长度为在笛卡尔姿态空间中从第一个路径点到该路径点的所述规划路径的长度;把机械人末端的笛卡尔空间的运动学约束条件转换为所述路程空间的运动学约束条件;在所述路程空间的运动学约束条件下,根据所述路程空间的坐标利用速度规划获得机械人末端在所述路程空间的规划轨迹,且机械人末端在所述路程空间的速度连续;根据所述路程空间的规划轨迹获得机械人末端在笛卡尔空间的规划轨迹。In a possible implementation of the second aspect, the Cartesian trajectory planning module is specifically configured to: obtain the positional path length and angular path of each path point according to the posture of each path point of the planned path. Length, the coordinates of the path space composed of the position path length and the angular path length. The position path length of a path point is the plan from the first path point to the path point in the Cartesian position space. The length of the path, the angular path length of a path point is the length of the planned path from the first path point to the path point in Cartesian attitude space; the kinematic constraints of the Cartesian space at the end of the robot The conditions are converted into kinematic constraints of the distance space; under the kinematic constraints of the distance space, speed planning is used to obtain the planned trajectory of the robot end in the distance space according to the coordinates of the distance space, and the mechanical The speed of the human end in the journey space is continuous; the planned trajectory of the robot end in the Cartesian space is obtained according to the planned trajectory of the journey space.

由上,通过把规划路径中各路径点的位姿转化为二维的路程空间的坐标进行路程轨迹规划,然后再转换为笛卡尔空间的轨迹,不仅使笛卡尔空间的规划轨迹满足机械人末端的笛卡尔空间的运动学约束条件,实现笛卡尔空间的规划轨迹的速度连续,同时解决了欧拉角的插补过程中的奇异点问题,且降低了轨迹同步的复杂度。From the above, by converting the posture of each path point in the planned path into the coordinates of the two-dimensional journey space for path trajectory planning, and then converting it into the trajectory of the Cartesian space, not only the planned trajectory of the Cartesian space satisfies the end of the robot The kinematic constraints of the Cartesian space realize the velocity continuity of the planned trajectory in the Cartesian space, while solving the singular point problem in the interpolation process of Euler angles and reducing the complexity of trajectory synchronization.

在第二方面的一种可能实施方式中,笛卡尔轨迹规划模块具体用于包括:根据所述规划路径的各路径点的所述位姿,获得所述各路径点的在笛卡尔位置空间的各坐标轴上的路程长度,并组成所述规划路径的路程空间的坐标,一个路径点在笛卡尔空间的一个坐标轴上的所述路程长度为从第一个路径点到该路径点的所述规划路径的经过路程投影在该坐标轴上的长度;把机械人末端的笛卡尔空间的运动学约束条件转换为所述路程空间的运动学约束条件;在所述路程空间的运动学约束条件下,根据所述 路程空间的坐标利用速度规划获得机械人末端在所述路程空间的规划轨迹,且机械人末端在所述路程空间的速度连续;根据所述路程空间的规划轨迹获得机械人末端在笛卡尔空间的规划轨迹。In a possible implementation of the second aspect, the Cartesian trajectory planning module is specifically configured to: according to the pose of each path point of the planned path, obtain the Cartesian position space of each path point. The length of the journey on each coordinate axis and the coordinates of the journey space that constitute the planned path. The length of the journey of a path point on a coordinate axis of the Cartesian space is all the distances from the first path point to the path point. The length of the projected path of the planned path on the coordinate axis; convert the kinematic constraints of the Cartesian space at the end of the robot into the kinematic constraints of the path space; kinematic constraints of the path space below, according to the The coordinates of the distance space are obtained by using speed planning to obtain the planned trajectory of the robot end in the distance space, and the speed of the robot end in the distance space is continuous; according to the planned trajectory of the distance space, the planned trajectory of the robot end in Cartesian space is obtained Plan the trajectory.

由上,通过把规划路径中各路径点的位姿转化为多位维的路程空间的坐标进行路程轨迹规划,然后再转换为笛卡尔空间的轨迹,不仅使笛卡尔空间的规划轨迹满足机械人末端的笛卡尔空间的运动学约束条件,实现笛卡尔空间的规划轨迹的速度连续,同时解决了欧拉角的插补过程中的奇异点问题。From the above, by converting the posture of each path point in the planned path into the coordinates of the multi-dimensional journey space for path trajectory planning, and then converting it into the trajectory of the Cartesian space, not only the planned trajectory of the Cartesian space satisfies the robot The kinematic constraints of the Cartesian space at the end realize the velocity continuity of the planned trajectory in the Cartesian space, and at the same time solve the singular point problem in the interpolation process of Euler angles.

在第二方面的一种可能实施方式中,运动逆解模块具体用于包括:根据机械人末端在笛卡尔空间的规划轨迹,获得根据机械人末端在笛卡尔空间的轨迹节点,所述轨迹节点为机械人末端在笛卡尔空间的运动轨迹的关键点;把所述轨迹节点作为所述关节节点,利用运动学逆解把所述轨迹节点的所述位姿转化为所述关节节点在机械人关节空间的坐标。In a possible implementation of the second aspect, the motion inverse solution module is specifically configured to include: according to the planned trajectory of the robot end in Cartesian space, obtain the trajectory node of the robot end in Cartesian space, the trajectory node is the key point of the movement trajectory of the robot end in Cartesian space; the trajectory node is regarded as the joint node, and the inverse kinematics solution is used to convert the pose of the trajectory node into the joint node of the robot. Coordinates in joint space.

由上,根据运动学逆解获得关节空间的关键点,为关节空间的轨迹规划提供依据。From the above, the key points of the joint space are obtained based on the inverse kinematics solution, which provides a basis for trajectory planning in the joint space.

在第二方面的一种可能实施方式中,关节轨迹规划模块具体用于包括:在机械人各轴的运动学约束条件下,根据所述关节节点在机械人关节空间的坐标利用速度规划分别获得机械人的每个轴在其关节空间的一次规划轨迹,并据此获得机械人的每个轴在相邻关节节点之间的运动时长;对于任一对相邻关节节点,把该对相邻关节节点之间机械人各轴的运动时长中的最长时间作为该对相邻关节节点之间的同步时长;根据机械人在各对相邻关节节点之间的同步时长和所述关节节点在机械人关节空间的坐标,在机械人各轴的运动学约束条件下利用速度规划分别获得机械人的每个轴在其关节空间的二次规划轨迹,并作为机械人末端在其关节空间的规划轨迹,该规划轨迹中机械人的每个轴的速度、加速度和加加速度连续。In a possible implementation of the second aspect, the joint trajectory planning module is specifically configured to: under the kinematic constraints of each axis of the robot, use velocity planning to obtain the coordinates of the joint nodes in the joint space of the robot respectively. A planned trajectory of each axis of the robot in its joint space, and based on this, the movement duration of each axis of the robot between adjacent joint nodes is obtained; for any pair of adjacent joint nodes, the pair of adjacent joint nodes is The longest time of the movement duration of each axis of the robot between the joint nodes is used as the synchronization duration between the pair of adjacent joint nodes; according to the synchronization duration of the robot between each pair of adjacent joint nodes and the joint node's The coordinates of the robot's joint space are used to obtain the secondary planning trajectory of each axis of the robot in its joint space using speed planning under the kinematic constraints of each axis of the robot, and used as the planning of the robot's end in its joint space. Trajectory, the velocity, acceleration and jerk of each axis of the robot in the planned trajectory are continuous.

由上,在机械人各轴的运动学约束条件下,通过两次次关节空间的轨迹规划,实现关节空间的各轴的轨迹同步,使机械人基于规划轨迹的运动性能提高,且最终轨迹满足机械人的各轴上实现速度、加速度和加加速度的约束与连续性要求,降低机械人各轴的震动。From the above, under the kinematic constraints of each axis of the robot, through the trajectory planning of the secondary joint space, the trajectory synchronization of each axis in the joint space is achieved, so that the motion performance of the robot based on the planned trajectory is improved, and the final trajectory satisfies Realize the constraints and continuity requirements of speed, acceleration and jerk on each axis of the robot, and reduce the vibration of each axis of the robot.

第三方面,本申请实施例提供了一种计算设备,包括,In a third aspect, embodiments of the present application provide a computing device, including:

总线;bus;

通信接口,其与所述总线连接;A communication interface connected to the bus;

至少一个处理器,其与所述总线连接;以及at least one processor connected to the bus; and

至少一个存储器,其与所述总线连接并存储有程序指令,所述程序指令当被所述至少一个处理器执行时使得所述至少一个处理器执行本申请第一方面任一所述实施方式。At least one memory is connected to the bus and stores program instructions. When executed by the at least one processor, the program instructions cause the at least one processor to execute any one of the embodiments of the first aspect of the present application.

第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有程序指令,所述程序指令当被计算机执行时使得所述计算机执行申请第一方面任一所述实施方式。 In a fourth aspect, embodiments of the present application provide a computer-readable storage medium on which program instructions are stored. When executed by a computer, the program instructions cause the computer to execute any one of the embodiments described in the first aspect of the application.

附图说明Description of drawings

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required to be used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of the present application and therefore do not It should be regarded as a limitation of the scope. For those of ordinary skill in the art, other relevant drawings can be obtained based on these drawings without exerting creative efforts.

图1为本申请的一种机械人末端轨迹的规划方法实施例一的流程示意图;Figure 1 is a schematic flow chart of Embodiment 1 of a robot end trajectory planning method of the present application;

图2为本申请的一种机械人末端轨迹的规划方法实施例二的流程示意图;Figure 2 is a schematic flow chart of Embodiment 2 of a robot end trajectory planning method of the present application;

图3为本申请的一种机械人末端轨迹的规划装置实施例一的结构示意图;Figure 3 is a schematic structural diagram of Embodiment 1 of a robot end trajectory planning device of the present application;

图4为本申请的一种机械人末端轨迹的规划装置实施例二的结构示意图;Figure 4 is a schematic structural diagram of Embodiment 2 of a robot end trajectory planning device of the present application;

图5为本申请各实施例的一种计算设备的结构示意图。Figure 5 is a schematic structural diagram of a computing device according to various embodiments of the present application.

具体实施方式Detailed ways

在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。In the following description, reference is made to "some embodiments" which describe a subset of all possible embodiments, but it is understood that "some embodiments" may be the same subset or a different subset of all possible embodiments, and Can be combined with each other without conflict.

在以下的描述中,所涉及的术语“第一\第二\第三等”或模块A、模块B、模块C等,仅用于区别类似的对象,或用于区别不同的实施例,不代表针对对象的特定排序,可以理解地,在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。In the following description, the terms "first\second\third, etc." or module A, module B, module C, etc. are only used to distinguish similar objects or to distinguish different embodiments. Representing a specific ordering of objects, it will be understood that the specific order or sequence may be interchanged where permitted so that the embodiments of the application described herein can be practiced in an order other than that illustrated or described herein.

在以下的描述中,所涉及的表示步骤的标号,如S110、S120……等,并不表示一定会按此步骤执行,在允许的情况下可以互换前后步骤的顺序,或同时执行。In the following description, the labels indicating steps involved, such as S110, S120, etc., do not necessarily mean that this step will be executed. If permitted, the order of the preceding and following steps can be interchanged, or executed at the same time.

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the technical field to which this application belongs. The terms used herein are only for the purpose of describing the embodiments of the present application and are not intended to limit the present application.

下面对本申请实施例使用的一些术语进行说明。Some terms used in the embodiments of this application are described below.

笛卡尔空间、笛卡尔空间坐标:笛卡尔空间包括笛卡尔位置空间和笛卡尔姿态空间,笛卡尔空间的坐标为位姿,包括位置坐标和姿态坐标;笛卡尔位置空间为直角坐标空间,位置坐标为三维直角坐标,笛卡尔姿态空间为物体的旋转空间,姿态坐标表示物体当前位置相对于物体在原点时的旋转角度。Cartesian space, Cartesian space coordinates: Cartesian space includes Cartesian position space and Cartesian attitude space. The coordinates of Descartes space are poses, including position coordinates and attitude coordinates; Descartes position space is a rectangular coordinate space, and position coordinates are three-dimensional rectangular coordinates, the Cartesian attitude space is the rotation space of the object, and the attitude coordinates represent the rotation angle of the object's current position relative to the object at the origin.

机械人关节空间:机械人各个轴构成的空间,其坐标为机械人各个轴的位置,轴包括平移轴和旋转轴。本申请中机械人与机器人(robot)含义相同。Robot joint space: The space composed of each axis of the robot. Its coordinates are the positions of each axis of the robot. The axes include translation axes and rotation axes. In this application, robot and robot have the same meaning.

速度规划器:运动物体的轨迹和速度规划的装置,通过轨迹插补法规划物体的速度和轨迹,在速度规划时保持各点的速度连续和加速度连续,且服从运动学约束条件。速度规划器既可以对笛卡尔空间的轨迹进行规划,也可以对其他空间的轨迹进行规划。规划时把速度描述为时间的表达式,例如以时间为基的多项式。Speed planner: A device for planning the trajectory and speed of moving objects. It plans the speed and trajectory of objects through trajectory interpolation. During speed planning, the speed and acceleration of each point are maintained continuously and obey kinematic constraints. The velocity planner can plan trajectories in Cartesian space as well as trajectories in other spaces. When planning, describe velocity as an expression of time, such as a polynomial based on time.

路径与路径节点、轨迹与轨迹节点和关节节点:路径由位置关系构成,不包括路径上各点与时间的关系,路径节点为路径上的关键点,确定路径趋势的点。轨迹不包括位置关系,还包括轨迹上各点与时间的关系,轨迹节点为笛卡尔空间的轨迹上关键点,确定笛卡尔空间的轨迹的趋势,关节节点为关节空间的轨迹上关键点,确定关节 空间的轨迹的趋势。Path and path nodes, trajectory and trajectory nodes, and joint nodes: The path is composed of position relationships, excluding the relationship between each point on the path and time. Path nodes are key points on the path, points that determine the path trend. The trajectory does not include the position relationship, but also the relationship between each point on the trajectory and time. The trajectory nodes are the key points on the trajectory in the Cartesian space, which determine the trend of the trajectory in the Cartesian space. The joint nodes are the key points on the trajectory in the joint space, which determine joint The trend of spatial trajectories.

本申请实施例提供了一种机械人末端轨迹的规划方法及装置,其技术方案包括:获取机械人末端的若干个离散的路径节点,所述路径节点的坐标为笛卡尔空间的位姿;对所述路径节点进行平滑拟合,获得机械人末端在笛卡尔空间的规划路径;在机械人末端的笛卡尔空间的运动学约束条件下根据所述规划路径,利用速度规划获得机械人末端在笛卡尔空间的规划轨迹,该规划轨迹在笛卡尔空间的速度连续;根据机械人末端在笛卡尔空间的规划轨迹,获得机械人末端在机械人关节空间的关节节点,所述关节节点为机械人末端在其关节空间的运动轨迹的关键点,其坐标为机械人关节空间的坐标;在机械人各轴的运动学约束条件下根据所述关节节点,获得机械人末端在其关节空间的规划轨迹,该规划轨迹的速度、加速度和加加速度连续。Embodiments of the present application provide a method and device for planning the trajectory of the end of a robot. The technical solution includes: obtaining several discrete path nodes at the end of the robot, the coordinates of the path nodes being the pose in Cartesian space; The path nodes are smoothly fitted to obtain the planned path of the robot end in Cartesian space; under the kinematic constraints of the Cartesian space of the robot end, according to the planned path, velocity planning is used to obtain the robot end in Cartesian space. The planned trajectory of the Karl space, the speed of the planned trajectory is continuous in the Cartesian space; according to the planned trajectory of the robot end in the Cartesian space, the joint nodes of the robot end in the robot joint space are obtained, and the joint nodes are the robot end At the key points of the motion trajectory in its joint space, its coordinates are the coordinates of the robot's joint space; under the kinematic constraints of each axis of the robot, according to the joint nodes, the planned trajectory of the robot's end in its joint space is obtained, The velocity, acceleration and jerk of the planned trajectory are continuous.

本申请的技术方案通过笛卡尔空间路径规划、笛卡尔空间轨迹规划和关节空间轨迹规划在机械人末端的轨迹规划过程中对笛卡尔空间位置的要求、笛卡尔空间运动的要求和机械人关节空间的各个轴运动的要求进行解耦,在笛卡尔路径规划中提高了最后的规划轨迹的位置精度和平滑性,在笛卡尔空间轨迹规划使最后的规划轨迹满足笛卡尔空间的运动速度约束与连续性要求,在关节空间轨迹规划实现各个轴的运动满足速度、加速度和加加速度的约束与连续性的要求,从而提高了机械人末端轨迹运动性能。The technical solution of this application uses Cartesian space path planning, Cartesian space trajectory planning and joint space trajectory planning to meet the requirements for the Cartesian space position, the requirements for Cartesian space motion and the robot joint space during the trajectory planning process of the robot end. The requirements of each axis motion are decoupled, which improves the position accuracy and smoothness of the final planned trajectory in Cartesian path planning. In Cartesian space trajectory planning, the final planned trajectory satisfies the motion speed constraints and continuity of Cartesian space. According to the requirements, the trajectory planning of the joint space realizes that the motion of each axis meets the constraints and continuity requirements of speed, acceleration and jerk, thereby improving the end trajectory motion performance of the robot.

下面结合附图介绍本申请的一种机械人末端轨迹的规划方法实施例、装置实施例和其他相关实施例。The following describes a planning method embodiment, a device embodiment and other related embodiments of a robot end trajectory of the present application with reference to the accompanying drawings.

下面首先结合附图1至图2介绍一种机械人末端轨迹的规划方法实施例。The following first introduces an embodiment of a planning method for the end trajectory of a robot with reference to Figures 1 to 2 of the accompanying drawings.

一种机械人末端轨迹的规划方法实施例一对路径节点进行平滑拟合,获得机械人末端在笛卡尔空间的规划路径;在机械人末端的笛卡尔空间的运动学约束条件下,根据规划路径利用速度规划获得机械人末端在笛卡尔空间的规划轨迹;根据机械人末端在笛卡尔空间的规划轨迹,获得机械人末端在机械人关节空间的关节节点;在机械人各轴的运动学约束条件下,根据关节节点获得机械人末端在其关节空间的规划轨迹。An embodiment of a planning method for the end trajectory of a robot performs smooth fitting on a pair of path nodes to obtain the planned path of the end of the robot in Cartesian space; under the kinematic constraints of the Cartesian space of the end of the robot, according to the planned path Use speed planning to obtain the planned trajectory of the robot end in Cartesian space; according to the planned trajectory of the robot end in Cartesian space, obtain the joint nodes of the robot end in the robot joint space; kinematic constraints on each axis of the robot Next, the planned trajectory of the robot end in its joint space is obtained based on the joint nodes.

图1示出了一种机械人末端轨迹的规划方法实施例一的流程,包括步骤S110至S150。Figure 1 shows the process of Embodiment 1 of a robot terminal trajectory planning method, including steps S110 to S150.

S110:获取机械人末端的若干个离散的路径节点,该路径节点的坐标为笛卡尔空间的位姿。S110: Obtain several discrete path nodes at the end of the robot. The coordinates of the path nodes are the poses in Cartesian space.

其中,路径节点为多轴设备末端的移动过程中关键点,一般为CAD/CAM输出的结果。Among them, the path nodes are key points in the movement process of the end of the multi-axis equipment, and are generally the results of CAD/CAM output.

其中,笛卡尔空间包括笛卡尔位置空间和笛卡尔姿态空间,位姿包括位置和姿态。在一些实施例中,姿态坐标用欧拉角表示。在另一些实施例中,姿态坐标用连续欧拉角表示。Among them, Cartesian space includes Cartesian position space and Cartesian attitude space, and pose includes position and attitude. In some embodiments, attitude coordinates are represented by Euler angles. In other embodiments, the attitude coordinates are represented by continuous Euler angles.

其中,连续欧拉角与欧拉角的维度数相同,在每个维度上,一个路径节点的连续欧拉角等于其上一个路径节点的连续欧拉角与该节点的欧拉角旋转角度之和,一个路径节点的欧拉角旋转角度等于从其上一个路径节点到该路径节点的欧拉角的正向旋转的角度。Among them, continuous Euler angles have the same number of dimensions as Euler angles. In each dimension, the continuous Euler angle of a path node is equal to the continuous Euler angle of the previous path node and the Euler angle rotation angle of the node. And, the Euler angle rotation angle of a path node is equal to the forward rotation angle from the previous path node to the Euler angle of this path node.

S120:对各路径节点进行平滑拟合,获得机械人末端笛卡尔空间的规划路径,规 划路径满足在笛卡尔空间的位置的平滑性和精度要求。S120: Perform smooth fitting on each path node to obtain the planned path of the Cartesian space at the end of the robot. The drawn path satisfies the smoothness and accuracy requirements of the position in Cartesian space.

其中,对路径节点进行平滑拟合的流程包括下列之一:经过点方法和不经过点方法。Among them, the process of smooth fitting of path nodes includes one of the following: passing point method and non-passing point method.

其中,不经过点方法平滑拟合后的规划路径不一定经过所有路径节点,但与各路径节点的位置偏差的均方差小于设定阈值,以满足机械人在笛卡尔空间运动轨迹的位置精度要求,适合规则路径的规划。示例地,不经过点方法的一种较佳的实施方式为用线段和圆弧对路径节点进行平滑拟合。Among them, the planned path after smooth fitting without point method may not necessarily pass through all path nodes, but the mean square error of the position deviation from each path node is less than the set threshold to meet the position accuracy requirements of the robot's motion trajectory in Cartesian space. , suitable for planning of regular paths. For example, a preferred implementation of the non-passing point method is to use line segments and arcs to smoothly fit path nodes.

其中,经过点方法平滑拟合后的规划路径经过每一个路径节点,其满足机械人在笛卡尔空间运动轨迹的位置精度要求,适合不规则路径的规划。示例地,经过点方法的一种较佳的实施方式为利用多项式或B样条对离散路径节点进行平滑拟合。Among them, the planned path smoothed by the point method passes through each path node, which meets the position accuracy requirements of the robot's motion trajectory in Cartesian space and is suitable for the planning of irregular paths. For example, a preferred implementation of the passing point method is to use polynomials or B-splines to smoothly fit discrete path nodes.

由上,通过路径规划获得的各路径点的位姿是对机械人末端的运动位置进行栅格化,可以认为是对机械人末端的运动位置进行全局规划,实现了机械人在笛卡尔空间运动轨迹的满足位置平滑与精度的要求。From the above, the pose of each path point obtained through path planning is a rasterization of the movement position of the end of the robot. It can be considered as a global planning of the movement position of the end of the robot, realizing the movement of the robot in Cartesian space. The trajectory meets the requirements of position smoothness and accuracy.

S130:在机械人末端的笛卡尔空间运动学约束条件下,根据规划路径利用速度规划获得机械人末端在笛卡尔空间的规划轨迹。S130: Under the kinematic constraints of the Cartesian space of the robot end, use speed planning according to the planned path to obtain the planned trajectory of the robot end in Cartesian space.

其中,笛卡尔空间的规划轨迹上各点的位姿与步骤S120中笛卡尔空间的规划路径上相应路径点的位姿相同,但本步骤通过速度规划获得了各路径点的位姿与时间的关系,也就是各路径点增加了时间属性,为了区别,把增加了时间属性的笛卡尔空间的规划路径称为笛卡尔空间的规划轨迹。Among them, the pose of each point on the planned trajectory in Cartesian space is the same as the pose of the corresponding path point on the planned path in Cartesian space in step S120. However, in this step, the pose and time of each path point are obtained through speed planning. relationship, that is, each path point adds a time attribute. For the sake of distinction, the planned path in the Cartesian space with the added time attribute is called the planned trajectory in the Cartesian space.

其中,机械人末端的笛卡尔空间的运动学约束条件一般根据机械人末端的操作要求设定,满足机械人末端的操控目的。Among them, the kinematic constraints of the Cartesian space at the end of the robot are generally set according to the operating requirements of the end of the robot to meet the control purpose of the end of the robot.

在一些实施例中笛卡尔姿态空间用连续欧拉角表示,以解决欧拉角的奇异点导致的位置不连续问题,本步骤的一种可能实施方式包括:In some embodiments, the Cartesian attitude space is represented by continuous Euler angles to solve the position discontinuity problem caused by the singular points of Euler angles. A possible implementation of this step includes:

1)把规划路径中各路径点的位姿转化为路程空间坐标,路程空间包括笛卡尔位置空间的各坐标轴上的路程长度维度和笛卡尔姿态空间的各坐标轴上的路程长度维度,一个路径点在笛卡尔空间的一个坐标轴上的路程长度为从第一个路径点到该路径点的所述规划路径的经过路程投影在该坐标轴上的长度。1) Convert the posture of each path point in the planned path into the distance space coordinates. The distance space includes the distance length dimension on each coordinate axis of the Cartesian position space and the distance length dimension on each coordinate axis of the Descartes attitude space. A The path length of a path point on a coordinate axis in Cartesian space is the length of the planned path from the first path point to the path point projected on the coordinate axis.

示例地,笛卡尔位置空间包括X,Y,Z三个轴,笛卡尔姿态空间包括θ、ψ和φ三个轴,则路程空间包括笛卡尔位置空间的X、Y和Z三个坐标轴上的位置路程长度维度以及笛卡尔姿态空间的θ、ψ和φ三个坐标轴上的姿态路程长度维度。For example, the Cartesian position space includes three axes: The position distance length dimension of , and the attitude distance length dimension on the three coordinate axes of θ, ψ and φ of the Cartesian attitude space.

2)把机械人末端的笛卡尔空间的运动学约束条件转换为路程空间的运动学约束条件。2) Convert the kinematic constraints of the Cartesian space at the end of the robot into the kinematic constraints of the path space.

其中,可以采用雅可比矩阵把机械人末端的笛卡尔空间的运动学约束条件转换为路程空间的运动学约束条件。Among them, the Jacobian matrix can be used to convert the kinematic constraints of the Cartesian space at the end of the robot into the kinematic constraints of the path space.

3)在路程空间的运动学约束条件下,根据路程空间的坐标利用速度规划获得机械人末端在路程空间的规划轨迹,且机械人末端在路程空间的速度和坐标都是连续。3) Under the kinematic constraints of the distance space, use speed planning to obtain the planned trajectory of the robot end in the distance space according to the coordinates of the distance space, and the speed and coordinates of the robot end in the distance space are continuous.

其中,利用速度规划器的插补法完成机械人末端在路程空间的规划轨迹,且在该过程中保持路程空间的各维度轨迹同步。Among them, the interpolation method of the speed planner is used to complete the planning trajectory of the robot end in the journey space, and in the process, the trajectories of each dimension of the journey space are kept synchronized.

4)根据路程空间的规划轨迹获得机械人末端在笛卡尔空间的规划轨迹。 4) Obtain the planned trajectory of the robot end in Cartesian space based on the planned trajectory of the journey space.

其中,根据路程轨迹的运动趋势和路程空间的各路程轨迹点的坐标,采用搜索的方法把路程空间的各路程轨迹点的坐标转换为各路程轨迹点在笛卡尔空间的位姿,构成机械人末端在笛卡尔空间的规划轨迹。Among them, according to the movement trend of the path trajectory and the coordinates of each path point in the path space, the search method is used to convert the coordinates of each path point in the path space into the posture of each path point in the Cartesian space, forming a robot. The planned trajectory of the end in Cartesian space.

其中,机械人末端在路程空间的速度连续,机械人末端在笛卡尔空间的速度也是连续的。机械人末端在路程空间的坐标连续,机械人末端在笛卡尔空间的位姿也是连续的。Among them, the speed of the robot's end in the path space is continuous, and the speed of the robot's end in Cartesian space is also continuous. The coordinates of the robot's end in the path space are continuous, and the position and posture of the robot's end in Cartesian space are also continuous.

在另一些实施例中,姿态空间还用连续欧拉角表示,但直接通过位姿进行规划,本步骤采用了下列可能实施方式,包括:In other embodiments, the posture space is also represented by continuous Euler angles, but is directly planned through the posture. This step adopts the following possible implementation methods, including:

在机械人末端的笛卡尔空间的运动学约束条件,利用机械人末端各路径点的位置坐标和姿态坐标,对机械人末端各路径点进行插补,获得机械人末端在笛卡尔空间的规划轨迹,且保持该规划轨迹各轨迹点的位姿连续和速度连续。Based on the kinematic constraints of the Cartesian space at the end of the robot, the position coordinates and attitude coordinates of each path point at the end of the robot are used to interpolate each path point at the end of the robot to obtain the planned trajectory of the robot end in Cartesian space. , and maintain the continuity of pose and velocity of each trajectory point of the planned trajectory.

在另一些实施例中,姿态空间用欧拉角表示,本步骤的一种可能实施方式包括:In other embodiments, the attitude space is represented by Euler angles. A possible implementation of this step includes:

1)把机械人末端各路径点的姿态坐标从欧拉角转化为四元数。1) Convert the attitude coordinates of each path point at the end of the robot from Euler angles to quaternions.

其中,利用四元数可以解决欧拉角不能插补的问题,但存在姿态不连续的问题。Among them, the use of quaternions can solve the problem that Euler angles cannot be interpolated, but there is a problem of attitude discontinuity.

2)在机械人末端的笛卡尔空间的运动学约束条件,利用机械人末端各路径点的位置坐标和用四元数表示的姿态坐标,对机械人末端各路径点进行插补,获得机械人末端在笛卡尔空间的规划轨迹,且保持该规划轨迹各轨迹点的速度连续。2) The kinematic constraints of the Cartesian space at the end of the robot, using the position coordinates of each path point at the end of the robot and the attitude coordinates represented by quaternions, interpolate each path point at the end of the robot to obtain the robot The planned trajectory of the end in Cartesian space, and the velocity of each trajectory point of the planned trajectory is maintained continuously.

由上,通过笛卡尔空间的轨迹规划,使机械人末端在笛卡尔空间的速度符合机械人的笛卡尔空间的速度控制要求。From the above, through trajectory planning in Cartesian space, the speed of the robot's end in Cartesian space meets the speed control requirements of the robot's Cartesian space.

S140:根据机械人末端在笛卡尔空间的规划轨迹,获得机械人末端在机械人的关节空间的关节节点,关节节点为机械人末端在其关节空间的运动轨迹的关键点,其坐标为机械人的关节空间的坐标。S140: According to the planned trajectory of the robot end in Cartesian space, obtain the joint nodes of the robot end in the robot's joint space. The joint nodes are the key points of the movement trajectory of the robot end in its joint space, and their coordinates are The coordinates of the joint space.

其中,本步骤获得关节空间的规划轨迹包括关节轨迹,为机械人的关节坐标与时间的关系。在步骤S130实现笛卡尔空间各个点与时间的关系的基础上,本步骤实现机械人的各个轴的位置与时间的关系。Among them, the planning trajectory of the joint space obtained in this step includes the joint trajectory, which is the relationship between the joint coordinates of the robot and time. On the basis of realizing the relationship between each point in Cartesian space and time in step S130, this step realizes the relationship between the position of each axis of the robot and time.

其中,本步骤包括以下过程:Among them, this step includes the following processes:

1)根据机械人末端在笛卡尔空间的规划轨迹,获得根据机械人末端在笛卡尔空间的轨迹节点,轨迹节点为机械人末端在笛卡尔空间的运动轨迹的关键点。1) According to the planned trajectory of the robot end in Cartesian space, obtain the trajectory nodes of the robot end in Cartesian space. The trajectory nodes are the key points of the movement trajectory of the robot end in Cartesian space.

其中,在一些实施例中,根据机械人末端在笛卡尔空间的规划轨迹上各点的曲率,获得根据机械人末端在笛卡尔空间的轨迹节点,该轨迹节点确定了机械人末端在笛卡尔空间的规划轨迹的趋势,可以平滑拟合出机械人末端在笛卡尔空间的轨迹。Among them, in some embodiments, according to the curvature of each point on the planned trajectory of the robot's end in Cartesian space, the trajectory node of the robot's end in Cartesian space is obtained, and the trajectory node determines the location of the robot's end in Cartesian space. The trend of the planned trajectory can smoothly fit the trajectory of the robot's end in Cartesian space.

2)轨迹节点作为关节节点,利用运动学逆解把轨迹节点的位姿转化为关节节点在机械人关节空间的坐标。2) The trajectory node is used as a joint node, and the inverse kinematics solution is used to convert the posture of the trajectory node into the coordinates of the joint node in the robot joint space.

其中,轨迹节点为机械人末端在笛卡尔空间的运动轨迹的关键点,其可以作为机械人末端在其关节空间的运动轨迹的关键点即关节节点。Among them, the trajectory node is the key point of the movement trajectory of the robot end in Cartesian space, which can be used as the key point of the movement trajectory of the robot end in its joint space, that is, the joint node.

其中,运动学逆解的方法包括解析法、数值法和几何法,本步骤不限制运动学逆解的方法。Among them, the methods of inverse kinematics solution include analytical method, numerical method and geometric method. This step does not limit the method of inverse kinematics solution.

由上,通过运动学逆解获得了机械人末端在机械人关节空间的关节节点,以此作为机械人关节空间的轨迹规划依据。 From the above, the joint nodes of the robot end in the robot joint space are obtained through the inverse kinematics solution, which is used as the basis for trajectory planning in the robot joint space.

S150:在机械人各轴的运动学约束条件下根据关节节点的坐标,获得机械人末端在其关节空间的规划轨迹。S150: Under the kinematic constraints of each axis of the robot, obtain the planned trajectory of the robot end in its joint space based on the coordinates of the joint nodes.

其中,机械人末端在其关节空间的规划轨迹包括机械人各个轴在关节空间的规划轨迹,且各个轴在关节空间的规划轨迹同步,即每个轴同步到达每个关节节点对应的位置。Among them, the planned trajectory of the robot end in its joint space includes the planned trajectory of each axis of the robot in the joint space, and the planned trajectories of each axis in the joint space are synchronized, that is, each axis reaches the position corresponding to each joint node synchronously.

本步骤包括以下过程:This step includes the following processes:

1)在机械人各轴的运动学约束条件下根据关节节点在机械人关节空间的坐标,利用速度规划器的插补法分别对机械人的每个轴在其关节空间的轨迹进行一次规划,并据此获得每个轴在各相邻的关节节点之间的时长。1) Under the kinematic constraints of each axis of the robot, according to the coordinates of the joint nodes in the robot's joint space, use the interpolation method of the speed planner to plan the trajectory of each axis of the robot in its joint space. And based on this, the duration of each axis between adjacent joint nodes is obtained.

2)根据每个轴在各对相邻关节节点之间的时长获得机械人在各对相邻关节节点之间的同步时长。2) Obtain the synchronization duration of the robot between each pair of adjacent joint nodes based on the duration of each axis between each pair of adjacent joint nodes.

其中,对一对相邻关节节点来说,把机械人的各轴在该对相邻关节节点之间的时长中最长的时长作为机械人的各轴在该对相邻关节节点之间的同步时长,即机械人的各轴在该对相邻关节节点之间的运动时长都调整为同步时长,使机械人运动性达到最佳。Among them, for a pair of adjacent joint nodes, the longest duration of each axis of the robot between the pair of adjacent joint nodes is regarded as the longest duration of each axis of the robot between the pair of adjacent joint nodes. The synchronization duration, that is, the movement duration of each axis of the robot between the pair of adjacent joint nodes is adjusted to the synchronization duration to optimize the robot's mobility.

3)根据机械人在各对相邻关节节点之间的同步时长和关节节点在机械人关节空间的坐标,在机械人各轴的运动学约束条件下利用速度规划分别获得机械人的每个轴在其关节空间的二次规划轨迹,并作为机械人末端在其关节空间的规划轨迹。3) According to the synchronization duration between each pair of adjacent joint nodes of the robot and the coordinates of the joint nodes in the robot joint space, speed planning is used to obtain each axis of the robot under the kinematic constraints of each axis of the robot. The secondary planned trajectory in its joint space is used as the planned trajectory of the robot end in its joint space.

由上,在机械人各轴的运动学约束条件下同步规划机械人各轴的规划轨迹,提高机械人运动性能,并且使各轴的规划轨迹的速度、加速度和加加速度连续,降低各轴因为运动跳变带来的震动。From the above, the planned trajectories of each axis of the robot are synchronously planned under the kinematic constraints of each axis of the robot, which improves the robot's motion performance, and makes the speed, acceleration and jerk of the planned trajectory of each axis continuous, reducing the cause of each axis. The vibration caused by the jump of motion.

综上,一种机械人末端轨迹的规划方法实施例一对路径节点进行平滑拟合,获得机械人末端在笛卡尔空间的规划路径;在机械人末端的笛卡尔空间的运动学约束条件下,根据规划路径利用速度规划获得机械人末端在笛卡尔空间的规划轨迹;根据机械人末端在笛卡尔空间的规划轨迹,获得机械人末端在机械人关节空间的关节节点;在机械人各轴的运动学约束条件下,根据关节节点获得机械人末端在其关节空间的规划轨迹。本实施例的技术方案通过笛卡尔空间路径规划、笛卡尔空间轨迹规划和关节空间轨迹规划在机械人末端的轨迹规划过程中对笛卡尔空间位置精度的要求、笛卡尔空间运动的运动学约束要求和机械人各个轴的运动学约束要求解耦,在笛卡尔路径规划中提高了最后的规划轨迹的位置精度,在笛卡尔空间轨迹规划使最后的规划轨迹满足笛卡尔空间的运动学约束,在关节空间轨迹规划实现各个轴的运动满足运动学约束,从而提高了机械人末端轨迹运动性能。In summary, an embodiment of a planning method for the end trajectory of a robot performs smooth fitting on a pair of path nodes to obtain the planned path of the end of the robot in Cartesian space; under the kinematic constraints of the Cartesian space of the end of the robot, According to the planned path, speed planning is used to obtain the planned trajectory of the robot end in Cartesian space; according to the planned trajectory of the robot end in Cartesian space, the joint nodes of the robot end in the robot joint space are obtained; in the motion of each axis of the robot Under the scientific constraints, the planned trajectory of the robot end in its joint space is obtained according to the joint nodes. The technical solution of this embodiment uses Cartesian space path planning, Cartesian space trajectory planning and joint space trajectory planning to meet the requirements for Cartesian space position accuracy and kinematic constraints of Cartesian space motion during the trajectory planning process at the end of the robot. It is decoupled from the kinematic constraints of each axis of the robot and improves the position accuracy of the final planned trajectory in Cartesian path planning. Trajectory planning in Cartesian space makes the final planned trajectory satisfy the kinematic constraints of Cartesian space. Joint space trajectory planning enables the motion of each axis to meet kinematic constraints, thereby improving the robot's end trajectory motion performance.

一种机械人末端轨迹的规划方法实施例二采用连续欧拉角表示姿态坐标;通过经过点方法对路径节点进行平滑拟合,获得机械人末端在笛卡尔空间的规划路径;在机械人末端的笛卡尔空间的运动学约束条件下利用两维的路程空间坐标利用速度规划获得机械人末端在路程空间的规划轨迹,并转化为笛卡尔空间的规划轨迹;在机械人各轴的运动学约束条件下根据关节节点获得机械人末端在其关节空间的规划轨迹,并对其中跳变点进行平滑滤波。 Embodiment 2 of a planning method for the end trajectory of a robot uses continuous Euler angles to represent attitude coordinates; the path nodes are smoothly fitted by the passing point method to obtain the planned path of the end of the robot in Cartesian space; at the end of the robot Under the kinematic constraints of Cartesian space, the two-dimensional journey space coordinates are used to obtain the planned trajectory of the robot end in the journey space using speed planning, and converted into the planned trajectory of Cartesian space; under the kinematic constraints of each axis of the robot Next, the planned trajectory of the robot end in its joint space is obtained according to the joint nodes, and the jump points are smoothed and filtered.

图2示出了一种机械人末端轨迹的规划方法实施例二的流程,包括步骤S210至S250。Figure 2 shows the process of Embodiment 2 of a robot terminal trajectory planning method, including steps S210 to S250.

S210:获取机械人末端的若干个离散的路径节点,路径节点的坐标为笛卡尔空间的位姿,其姿态坐标用连续欧拉角表示。S210: Obtain several discrete path nodes at the end of the robot. The coordinates of the path nodes are the poses in Cartesian space, and their pose coordinates are represented by continuous Euler angles.

其中,路径节点为机械人末端的移动过程中关键点,一般为CAD/CAM输出的结果。Among them, the path nodes are the key points in the movement process of the robot end, which are generally the results of CAD/CAM output.

其中,采用的连续欧拉角表示姿态,便于计算后续路程规划空间的姿态路程维度的坐标,从而进行路程空间的轨迹规划,并实现姿态连续,解决了欧拉角存在奇异点不能插值的问题,也解决通过四元数插值的姿态不太连续的问题。Among them, the continuous Euler angle is used to represent the attitude, which facilitates the calculation of the coordinates of the attitude distance dimension in the subsequent journey planning space, thereby carrying out trajectory planning in the journey space and achieving attitude continuity, which solves the problem of singular points in Euler angles that cannot be interpolated. Also solves the problem of less continuous postures through quaternion interpolation.

S220:用多项式或B样条对路径节点进行平滑拟合,获得机械人末端在笛卡尔空间的规划路径。S220: Use polynomials or B-splines to smoothly fit the path nodes to obtain the planned path of the robot end in Cartesian space.

其中,用多项式或B样条对路径节点进行平滑拟合,平滑拟合后的规划路径经过每一个路径节点。Among them, polynomials or B-splines are used to smoothly fit the path nodes, and the smoothly fitted planned path passes through each path node.

由上,用多项式或B样条对路径节点进行平滑拟合符合了机械人末端的规划路径满足平滑与精度的要求。From the above, using polynomials or B-splines to smoothly fit path nodes meets the smoothness and accuracy requirements of the planned path at the end of the robot.

S230:把规划路径中各路径点的位姿转化为二维的路程空间坐标,根据该路程空间坐标获得机械人末端在路程空间的规划轨迹,并转化为笛卡尔空间的规划轨迹,该规划轨迹在笛卡尔空间的速度和位姿是连续的。S230: Convert the posture of each path point in the planned path into two-dimensional journey space coordinates, obtain the planned trajectory of the robot end in the journey space based on the journey space coordinates, and convert it into a planned trajectory in Cartesian space. The planned trajectory Velocity and pose are continuous in Cartesian space.

其中,本步骤包括以下子步骤:Among them, this step includes the following sub-steps:

1)把规划路径中各路径点的位姿转化为路程空间坐标,路程空间包括笛卡尔位置空间的位置路程长度维度和笛卡尔姿态空间的姿态路程长度维度。1) Convert the posture of each path point in the planned path into the distance space coordinates. The distance space includes the position distance length dimension of the Cartesian position space and the attitude distance length dimension of the Cartesian attitude space.

其中,一个路径点的位置路程长度为在笛卡尔位置空间中从第一个路径点到该路径点经过的路程的长度,一个路径点的姿态路程长度为在笛卡尔姿态空间中从第一个路径点到该路径点经过的路程的长度。Among them, the position path length of a path point is the length of the path from the first path point to this path point in the Cartesian position space, and the attitude path length of a path point is the distance from the first path point in the Cartesian attitude space. The length of the distance traveled from the waypoint to the waypoint.

2)把机械人末端的笛卡尔空间的运动学约束条件转换为路程空间的运动学约束条件。2) Convert the kinematic constraints of the Cartesian space at the end of the robot into the kinematic constraints of the path space.

其中,机械人末端的笛卡尔空间的运动学约束条件一般根据机械人末端的操作要求设定,满足机械人末端的操控目的。Among them, the kinematic constraints of the Cartesian space at the end of the robot are generally set according to the operating requirements of the end of the robot to meet the control purpose of the end of the robot.

其中,可以采用雅可比矩阵把机械人末端的笛卡尔空间的运动学约束条件转换为路程空间的运动学约束条件。Among them, the Jacobian matrix can be used to convert the kinematic constraints of the Cartesian space at the end of the robot into the kinematic constraints of the path space.

3)在路程空间的运动学约束条件下,根据路程空间的坐标利用速度规划获得机械人末端在路程空间的规划轨迹,且机械人末端在路程空间的速度连续和坐标连续。3) Under the kinematic constraints of the distance space, use speed planning to obtain the planned trajectory of the robot end in the distance space according to the coordinates of the distance space, and the speed and coordinates of the robot end in the distance space are continuous.

其中,利用速度规划器的插补法完成机械人末端在路程空间的规划轨迹,且在该过程中保持路程空间的各维度轨迹同步。因为在本实施例中只要需要保持路程空间的2个维度同步,规划准确性高。Among them, the interpolation method of the speed planner is used to complete the planning trajectory of the robot end in the journey space, and in the process, the trajectories of each dimension of the journey space are kept synchronized. Because in this embodiment, as long as the two dimensions of the route space need to be synchronized, the planning accuracy is high.

4)根据路程空间的规划轨迹获得机械人末端在笛卡尔空间的规划轨迹。4) Obtain the planned trajectory of the robot end in Cartesian space based on the planned trajectory of the journey space.

其中,根据路程轨迹的运动趋势和路程空间的各路程轨迹点的坐标,采用搜索的方法把路程空间的各路程轨迹点的坐标转换为各路程轨迹点在笛卡尔空间的位姿,构成机械人末端在笛卡尔空间的规划轨迹。Among them, according to the movement trend of the path trajectory and the coordinates of each path point in the path space, the search method is used to convert the coordinates of each path point in the path space into the posture of each path point in the Cartesian space, forming a robot. The planned trajectory of the end in Cartesian space.

由上,机械人末端在路程空间的速度连续,机械人末端在笛卡尔空间的速度也是 连续的。机械人末端在路程空间的位置路程维度和姿态路程维度都连续,机械人末端在笛卡尔空间的位姿也是连续的。且才用二维的路程空间进行规划,规划准确性高。From the above, the speed of the end of the robot in the path space is continuous, and the speed of the end of the robot in the Cartesian space is also continuously. The position and posture dimensions of the robot's end in the path space are both continuous, and the position and posture of the robot's end in Cartesian space are also continuous. Moreover, the two-dimensional journey space is used for planning, and the planning accuracy is high.

S240:根据机械人末端在笛卡尔空间的规划轨迹,获得机械人末端在机械人关节空间的关节节点,关节节点为机械人末端在其关节空间的运动轨迹的关键点,其坐标为机械人关节空间的坐标。S240: According to the planned trajectory of the robot end in Cartesian space, obtain the joint nodes of the robot end in the robot joint space. The joint nodes are the key points of the movement trajectory of the robot end in its joint space, and their coordinates are the robot joints. The coordinates of space.

其中,本步骤同一种机械人末端轨迹的规划方法实施例一的步骤S140,这里不再详述。Among them, this step is the same as step S140 of Embodiment 1 of the robot terminal trajectory planning method, and will not be described in detail here.

S250:在机械人各轴的运动学约束条件下,根据关节节点先获取相邻节点间时间同步再通过速度规划获得机械人末端在其关节空间的规划轨迹,并对该规划轨迹进行滤波,最终的规划轨迹速度、加速度和加加速度为连续的。S250: Under the kinematic constraints of each axis of the robot, first obtain the time synchronization between adjacent nodes according to the joint nodes, and then obtain the planned trajectory of the robot end in its joint space through speed planning, and filter the planned trajectory, and finally The planned trajectory speed, acceleration and jerk are continuous.

其中,机械人末端在其关节空间的规划轨迹包括机械人各个轴在关节空间的规划轨迹,且各个轴在关节空间的规划轨迹同步,即每个轴同步到达每个关节节点对应的位置。Among them, the planned trajectory of the robot end in its joint space includes the planned trajectory of each axis of the robot in the joint space, and the planned trajectories of each axis in the joint space are synchronized, that is, each axis reaches the position corresponding to each joint node synchronously.

其中,机械人各轴的运动学约束条件根据机械人各轴的动力学学约束条件获得,以使机械人各轴的规划轨迹符合动力学学约束条件,可以使机械人各轴按照相应的规划轨迹可以运行。Among them, the kinematic constraints of each axis of the robot are obtained based on the dynamics constraints of each axis of the robot, so that the planned trajectory of each axis of the robot conforms to the dynamics constraints, and each axis of the robot can be planned according to the corresponding The track can be run.

其中,本步骤通过速度规划器完成,该速度规划器中位置与时间的关系为以余弦为核函数的解析式,该速度规划器在插补时利用S形曲线进行速度预测。Among them, this step is completed through the speed planner. The relationship between position and time in the speed planner is an analytical formula with cosine as the kernel function. The speed planner uses an S-shaped curve to predict the speed during interpolation.

本步骤包括以下过程:This step includes the following processes:

1)根据关节节点在机械人关节空间的坐标,获得机械人各轴的拐点。1) According to the coordinates of the joint nodes in the robot joint space, obtain the inflection points of each axis of the robot.

其中,一个机械人的一个轴在该轴的拐点的速度为0。Among them, the speed of an axis of a robot at the inflection point of the axis is 0.

2)在机械人各轴的运动学约束条件下根据机械人各轴的拐点在机械人关节空间的坐标,利用速度规划器的插补法分别对机械人的每个轴在其关节空间的轨迹进行一次规划,并据此获得机械人的每个轴在各相邻的关节节点之间的时长。2) Under the kinematic constraints of each axis of the robot, according to the coordinates of the inflection points of each axis of the robot in the robot joint space, use the interpolation method of the speed planner to calculate the trajectory of each axis of the robot in its joint space. Carry out a planning and obtain the duration between each adjacent joint node of each axis of the robot.

3)根据机械人的每个轴在各对相邻关节节点之间的时长获得机械人在各对相邻关节节点之间的同步时长。3) Obtain the synchronization duration of the robot between each pair of adjacent joint nodes based on the duration of each axis of the robot between each pair of adjacent joint nodes.

其中,对一对相邻所述关节节点来说,把机械人的各轴在该对相邻关节节点之间的时长中最长的时长作为机械人的各轴在该对相邻关节节点之间的同步时长,即机械人的各轴在该对相邻关节节点之间的运动时长都调整为同步时长。Wherein, for a pair of adjacent joint nodes, the longest time period between each axis of the robot between the pair of adjacent joint nodes is regarded as the longest time period between the pair of adjacent joint nodes. The synchronization duration between them, that is, the movement duration of each axis of the robot between the pair of adjacent joint nodes is adjusted to the synchronization duration.

4)根据机械人在各对相邻关节节点之间的同步时长和关节节点在机械人关节空间的坐标,在机械人各轴的运动学约束条件下,利用速度规划分别获得机械人的每个轴在其关节空间的二次规划轨迹。4) According to the synchronization duration between each pair of adjacent joint nodes of the robot and the coordinates of the joint nodes in the robot's joint space, and under the kinematic constraints of each axis of the robot, speed planning is used to obtain each of the robot's The quadratic planning trajectory of the axis in its joint space.

5)当在机械人的一个轴的二次规划轨迹中该轴存在速度或加速度或加加速度跳变,则通过平衡滤波使该跳变连续,并调整该轴的二次规划轨迹,作为该轴在机械人关节空间的最终规划轨迹。5) When there is a jump in speed, acceleration or jerk in the quadratic planning trajectory of an axis of the robot, the jump is made continuous through balance filtering, and the quadratic planning trajectory of the axis is adjusted as the axis The final planned trajectory in the robot joint space.

由上,通过对二次规划的轨迹增加跳变点滤波,进一步提高了机械人各轴的规划轨迹上速度、加速度和加加速度的连续性。From the above, by adding jump point filtering to the quadratic planned trajectory, the continuity of speed, acceleration and jerk on the planned trajectory of each axis of the robot is further improved.

综上,一种机械人末端轨迹的规划方法实施例二不仅对笛卡尔空间位置的要求、笛卡尔空间运动的要求和机械人关节空间的各个轴运动的要求进行解耦,使最后的规 划轨迹满足笛卡尔空间位置的要求、笛卡尔空间运动的要求和机械人关节空间的各个轴运动的要求,同时简化笛卡尔空间的规划轨迹的同步问题,并使笛卡尔空间的规划轨迹的姿态连续,以及消除关节空间的轨迹的运动跳变点,进一步提高机械人运动性能,并进一步降低各轴因为运动跳变带来的震动。In summary, the second embodiment of a planning method for a robot's end trajectory not only decouples the requirements of Cartesian space position, Cartesian space motion and the motion of each axis of the robot's joint space, so that the final planning The drawing trajectory meets the requirements of Cartesian space position, Cartesian space motion requirements and the requirements of each axis motion of the robot joint space. At the same time, it simplifies the synchronization problem of the planned trajectory in the Cartesian space and makes the posture of the planned trajectory in the Cartesian space Continuous and eliminates the motion jump points of the trajectory in the joint space, further improving the robot's motion performance and further reducing the vibrations caused by the motion jumps of each axis.

下面结合图3和图4介绍一种机械人末端轨迹的规划装置实施例。The following describes an embodiment of a planning device for a robot end trajectory with reference to Figures 3 and 4.

一种机械人末端轨迹的规划装置实施例一执行一种机械人末端轨迹的规划方法实施例一所述方法,图3示出了一种机械人末端轨迹的规划装置实施例一的结构,其包括:节点获取模块310,路径平滑模块320,笛卡尔轨迹规划模块330,运动学逆解模块340和关节轨迹规划模块350。Embodiment 1 of a planning device for the end trajectory of a robot executes the method described in Embodiment 1 of a planning method for the end trajectory of a robot. Figure 3 shows the structure of Embodiment 1 of a planning device for the end trajectory of a robot. It includes: node acquisition module 310, path smoothing module 320, Cartesian trajectory planning module 330, inverse kinematics solution module 340 and joint trajectory planning module 350.

节点获取模块310用于获取机械人末端的若干个离散的路径节点,路径节点的坐标为笛卡尔空间的位姿。其工作原理和优点请参考一种机械人末端轨迹的规划方法实施例一的步骤S110。The node acquisition module 310 is used to acquire several discrete path nodes at the end of the robot. The coordinates of the path nodes are the poses of the Cartesian space. For its working principle and advantages, please refer to step S110 in Embodiment 1 of a robot terminal trajectory planning method.

路径平滑模块320用于对各路径节点进行平滑拟合,获得机械人末端在笛卡尔空间的规划路径。其工作原理和优点请参考一种机械人末端轨迹的规划方法实施例一的步骤S120。The path smoothing module 320 is used to perform smooth fitting on each path node to obtain the planned path of the robot end in Cartesian space. For its working principle and advantages, please refer to step S120 in Embodiment 1 of a robot terminal trajectory planning method.

笛卡尔轨迹规划模块330用于在机械人末端的笛卡尔空间的运动学约束条件下,根据规划路径利用速度规划获得机械人末端在笛卡尔空间的规划轨迹。其工作原理和优点请参考一种机械人末端轨迹的规划方法实施例一的步骤S130。The Cartesian trajectory planning module 330 is used to obtain the planned trajectory of the robot end in the Cartesian space by using speed planning according to the planned path under the kinematic constraints of the Cartesian space of the robot end. For its working principle and advantages, please refer to step S130 in Embodiment 1 of a robot terminal trajectory planning method.

运动学逆解模块340用于根据机械人末端在笛卡尔空间的规划轨迹,获得机械人末端在机械人关节空间的关节节点,关节节点为机械人末端在其关节空间的运动轨迹的关键点,其坐标为机械人关节空间的坐标。其工作原理和优点请参考一种机械人末端轨迹的规划方法实施例一的步骤S140。The inverse kinematics module 340 is used to obtain the joint nodes of the robot end in the robot's joint space based on the planned trajectory of the robot's end in Cartesian space. The joint nodes are the key points of the motion trajectory of the robot's end in its joint space. Its coordinates are the coordinates of the robot's joint space. For its working principle and advantages, please refer to step S140 in Embodiment 1 of a robot terminal trajectory planning method.

关节轨迹规划模块350用于在机械人各轴的运动学约束条件下根据关节节点,获得机械人末端在其关节空间的规划轨迹。其工作原理和优点请参考一种机械人末端轨迹的规划方法实施例一的步骤S150。The joint trajectory planning module 350 is used to obtain the planned trajectory of the robot end in its joint space based on the joint nodes under the kinematic constraints of each axis of the robot. For its working principle and advantages, please refer to step S150 in Embodiment 1 of a robot terminal trajectory planning method.

一种机械人末端轨迹的规划装置实施例二执行一种机械人末端轨迹的规划方法实施例二所述方法,图4示出了一种机械人末端轨迹的规划装置实施例二的结构,其包括:节点获取模块410,路径平滑模块420,笛卡尔轨迹规划模块430,运动学逆解模块440和关节轨迹规划模块450。Embodiment 2 of a planning device for a robot's end trajectory executes the method described in Embodiment 2 of a planning method for a robot's end trajectory. Figure 4 shows the structure of Embodiment 2 of a planning device for a robot's end trajectory. It includes: node acquisition module 410, path smoothing module 420, Cartesian trajectory planning module 430, inverse kinematics solution module 440 and joint trajectory planning module 450.

节点获取模块410用于获取机械人末端的若干个离散的路径节点,路径节点的坐标为笛卡尔空间的位姿,其姿态坐标用连续欧拉角表示。其工作原理和优点请参考一种机械人末端轨迹的规划方法实施例二的步骤S210。The node acquisition module 410 is used to acquire several discrete path nodes at the end of the robot. The coordinates of the path nodes are poses in Cartesian space, and the pose coordinates are represented by continuous Euler angles. For its working principle and advantages, please refer to step S210 in Embodiment 2 of a robot terminal trajectory planning method.

路径平滑模块420用于利用多项式或B样条对各路径节点进行平滑拟合,获得机械人末端在笛卡尔空间的规划路径。其工作原理和优点请参考一种机械人末端轨迹的规划方法实施例二的步骤S220。The path smoothing module 420 is used to perform smooth fitting on each path node using polynomials or B-splines to obtain the planned path of the robot end in Cartesian space. For its working principle and advantages, please refer to step S220 in Embodiment 2 of a robot terminal trajectory planning method.

笛卡尔轨迹规划模块430用于把规划路径中各路径点的位姿转化为二维的路程空间坐标,根据该路程空间坐标获得机械人末端在路程空间的规划轨迹,并转化为笛 卡尔空间的规划轨迹,该规划轨迹在笛卡尔空间的速度和位姿是连续的。其工作原理和优点请参考一种机械人末端轨迹的规划方法实施例二的步骤S230。The Cartesian trajectory planning module 430 is used to convert the posture of each path point in the planned path into two-dimensional journey space coordinates, obtain the planned trajectory of the robot end in the journey space according to the journey space coordinates, and convert it into Cartesian trajectory planning module 430. The planning trajectory of the Karl space, the speed and posture of the planning trajectory in the Cartesian space are continuous. For its working principle and advantages, please refer to step S230 in Embodiment 2 of a robot terminal trajectory planning method.

运动学逆解模块440用于根据机械人末端在笛卡尔空间的规划轨迹,获得机械人末端在机械人关节空间的关节节点,所述关节节点为机械人末端在其关节空间的运动轨迹的关键点,其坐标为机械人关节空间的坐标。其工作原理和优点请参考一种机械人末端轨迹的规划方法实施例二的步骤S240。The inverse kinematics module 440 is used to obtain the joint nodes of the robot end in the robot's joint space based on the planned trajectory of the robot's end in Cartesian space. The joint nodes are the key to the movement trajectory of the robot's end in its joint space. Point, its coordinates are the coordinates of the robot joint space. For its working principle and advantages, please refer to step S240 in Embodiment 2 of a robot terminal trajectory planning method.

关节轨迹规划模块450用于在机械人各轴的运动学约束条件下,根据关节节点先获取相邻节点间时间同步再通过速度规划获得机械人末端在其关节空间的规划轨迹,并对该规划轨迹进行滤波,最终的规划轨迹速度、加速度和加加速度为连续的。其工作原理和优点请参考一种机械人末端轨迹的规划方法实施例二的步骤S250。The joint trajectory planning module 450 is used to obtain the time synchronization between adjacent nodes according to the joint nodes under the kinematic constraints of each axis of the robot, and then obtain the planned trajectory of the robot end in its joint space through speed planning, and calculate the plan The trajectory is filtered, and the final planned trajectory velocity, acceleration and jerk are continuous. For its working principle and advantages, please refer to step S250 in Embodiment 2 of a robot terminal trajectory planning method.

本申请实施例还提供了一种计算设备,下面结合图5详细介绍。An embodiment of the present application also provides a computing device, which is described in detail below with reference to Figure 5 .

该计算设备500包括,处理器510、存储器520、通信接口530、总线540。The computing device 500 includes a processor 510, a memory 520, a communication interface 530, and a bus 540.

应理解,该图所示的计算设备500中的通信接口530可以用于与其他设备之间进行通信。It should be understood that the communication interface 530 in the computing device 500 shown in this figure can be used to communicate with other devices.

其中,该处理器510可以与存储器520连接。该存储器520可以用于存储该程序代码和数据。因此,该存储器520可以是处理器510内部的存储单元,也可以是与处理器510独立的外部存储单元,还可以是包括处理器510内部的存储单元和与处理器510独立的外部存储单元的部件。The processor 510 can be connected to the memory 520 . The memory 520 may be used to store the program code and data. Therefore, the memory 520 may be a storage unit internal to the processor 510 , or may be an external storage unit independent of the processor 510 , or may include a storage unit internal to the processor 510 and an external storage unit independent of the processor 510 . part.

可选的,计算设备500还可以包括总线540。其中,存储器520、通信接口530可以通过总线540与处理器510连接。总线540可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(EFStended Industry Standard Architecture,EISA)总线等。所述总线540可以分为地址总线、数据总线、控制总线等。为便于表示,该图中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。Optionally, the computing device 500 may also include a bus 540. Among them, the memory 520 and the communication interface 530 can be connected to the processor 510 through the bus 540. The bus 540 may be a Peripheral Component Interconnect (PCI) bus or an Extended Industrial Standard Architecture (EFStended Industry Standard Architecture, EISA) bus, etc. The bus 540 can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one line is used in this figure, but it does not mean that there is only one bus or one type of bus.

应理解,在本申请实施例中,该处理器510可以采用中央处理单元(central processing unit,CPU)。该处理器还可以是其它通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。或者该处理器510采用一个或多个集成电路,用于执行相关程序,以实现本申请实施例所提供的技术方案。It should be understood that in this embodiment of the present application, the processor 510 may be a central processing unit (CPU). The processor can also be other general-purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), off-the-shelf programmable gate arrays (field programmable gate arrays, FPGAs) or other Programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc. Or the processor 510 uses one or more integrated circuits to execute relevant programs to implement the technical solutions provided by the embodiments of this application.

该存储器520可以包括只读存储器和随机存取存储器,并向处理器510提供指令和数据。处理器510的一部分还可以包括非易失性随机存取存储器。例如,处理器510还可以存储设备类型的信息。The memory 520 may include read-only memory and random access memory and provides instructions and data to the processor 510 . A portion of processor 510 may also include non-volatile random access memory. For example, processor 510 may also store device type information.

在计算设备500运行时,所述处理器510执行所述存储器520中的计算机执行指令执行各方法实施例的操作步骤。When the computing device 500 is running, the processor 510 executes the computer execution instructions in the memory 520 to perform the operation steps of each method embodiment.

应理解,根据本申请实施例的计算设备500可以对应于执行根据本申请各实施例的方法中的相应主体,并且计算设备500中的各个模块的上述和其它操作和/或功能 分别为了实现本方法实施例各方法的相应流程,为了简洁,在此不再赘述。It should be understood that the computing device 500 according to the embodiments of the present application may correspond to the corresponding subjects in performing the methods according to the various embodiments of the present application, and the above and other operations and/or functions of the respective modules in the computing device 500 In order to implement the corresponding processes of each method in this method embodiment, for the sake of simplicity, they will not be described again here.

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented with electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Skilled artisans may implement the described functionality using different methods for each specific application, but such implementations should not be considered beyond the scope of this application.

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。Those skilled in the art can clearly understand that for the convenience and simplicity of description, the specific working processes of the systems, devices and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be described again here.

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only illustrative. For example, the division of the units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components may be combined or can be integrated into another system, or some features can be ignored, or not implemented. On the other hand, the coupling or direct coupling or communication connection between each other shown or discussed may be through some interfaces, and the indirect coupling or communication connection of the devices or units may be in electrical, mechanical or other forms.

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本方法实施例方案的目的。The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or they may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the method embodiment.

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。In addition, each functional unit in each embodiment of the present application can be integrated into one processing unit, each unit can exist physically alone, or two or more units can be integrated into one unit.

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述译码方法的全部或部分步骤。而前述的存储介质包括,U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the existing technology or the part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium, including Several instructions are used to cause a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the decoding method described in various embodiments of this application. The aforementioned storage media include U disk, mobile hard disk, Read-Only Memory (ROM), Random Access Memory (RAM), magnetic disk or optical disk and other media that can store program code. .

本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于执行各方法实施例的操作步骤。Embodiments of the present application also provide a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the program is used to perform the operating steps of each method embodiment.

本申请实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括,具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质, 该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。The computer storage medium in the embodiment of the present application may be any combination of one or more computer-readable media. The computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium. The computer-readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination thereof. More specific examples (non-exhaustive list) of computer readable storage media include electrical connections having one or more conductors, portable computer disks, hard drives, random access memory (RAM), read only memory (ROM), Erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above. In this document, a computer-readable storage medium may be any tangible medium that contains or stores a program, The program may be used by or in conjunction with an instruction execution system, apparatus, or device.

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。A computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave carrying computer-readable program code therein. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device .

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括、但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。Program code embodied on a computer-readable medium may be transmitted using any suitable medium, including, but not limited to, wireless, wire, optical cable, RF, etc., or any suitable combination of the foregoing.

可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。Computer program code for performing the operations of the present application may be written in one or more programming languages, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional Procedural programming language—such as "C" or a similar programming language. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In situations involving remote computers, the remote computer can be connected to the user's computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (such as an Internet service provider through the Internet). connect).

注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,均属于本申请保护范畴。 Note that the above are only the preferred embodiments of the present application and the technical principles used. Those skilled in the art will understand that the present application is not limited to the specific embodiments described here, and that various obvious changes, readjustments and substitutions can be made by those skilled in the art without departing from the scope of the present application. Therefore, although the present application has been described in detail through the above embodiments, the present application is not limited to the above embodiments. Without departing from the concept of the present application, it can also include more other equivalent embodiments, all of which belong to the present application. Apply for protection scope.

Claims (10)

一种机械人末端轨迹的规划方法,其特征在于,包括:A planning method for the terminal trajectory of a robot, which is characterized by including: 获取机械人末端的若干个离散的路径节点,所述路径节点的坐标为笛卡尔空间的位姿;Obtain several discrete path nodes at the end of the robot, and the coordinates of the path nodes are the poses in Cartesian space; 对所述路径节点进行平滑拟合,获得机械人末端在笛卡尔空间的规划路径;Perform smooth fitting on the path nodes to obtain the planned path of the robot end in Cartesian space; 在机械人末端的笛卡尔空间的速度约束条件下,根据所述规划路径通过速度规划获得机械人末端在笛卡尔空间的规划轨迹;Under the speed constraints of the Cartesian space of the robot end, obtain the planned trajectory of the robot end in the Cartesian space through speed planning according to the planned path; 根据机械人末端在笛卡尔空间的规划轨迹,获得机械人末端在机械人关节空间的关节节点,所述关节节点为机械人末端在关节空间的运动轨迹的关键点,其坐标为机械人关节空间的坐标;According to the planned trajectory of the robot end in Cartesian space, the joint nodes of the robot end in the robot joint space are obtained. The joint nodes are the key points of the movement trajectory of the robot end in the joint space, and their coordinates are in the robot joint space. coordinate of; 在机械人各轴的运动学约束条件下,根据所述关节节点获得机械人末端在其关节空间的规划轨迹。Under the kinematic constraints of each axis of the robot, the planned trajectory of the robot end in its joint space is obtained according to the joint nodes. 根据权利要求1所述方法,其特征在于,所述位姿中姿态用连续欧拉角表示,一个路径节点的所述连续欧拉角等于其上一个路径节点的所述连续欧拉角与该节点的欧拉角旋转角度之和,一个路径节点的所述欧拉角旋转角度等于从其上一个路径节点到该路径节点的欧拉角的正向旋转的角度。The method according to claim 1, characterized in that the posture in the posture is represented by a continuous Euler angle, and the continuous Euler angle of a path node is equal to the continuous Euler angle of the previous path node and the continuous Euler angle of the path node. The sum of Euler angle rotation angles of a node. The Euler angle rotation angle of a path node is equal to the forward rotation angle from the previous path node to the Euler angle of the path node. 根据权利要求1或2所述方法,其特征在于,对所述路径节点进行平滑拟合的流程包括下列之一:The method according to claim 1 or 2, characterized in that the process of smooth fitting the path nodes includes one of the following: 用线段和圆弧对所述路径节点进行平滑拟合;Smoothly fit the path nodes using line segments and arcs; 用多项式或B样条对所述路径节点进行平滑拟合。Use polynomials or B-splines to smoothly fit the path nodes. 根据权利要求2所述方法,其特征在于,所述在机械人末端的笛卡尔空间的运动学约束条件下,根据所述规划路径利用速度规划获得机械人末端在笛卡尔空间的规划轨迹,包括:The method according to claim 2, characterized in that, under the kinematic constraints of the Cartesian space of the robot end, using speed planning according to the planned path to obtain the planned trajectory of the robot end in the Cartesian space, including : 根据所述规划路径的各路径点的所述位姿,获得所述各路径点的位置路程长度和角度路程长度,由所述位置路程长度和所述角度路程长度组成路程空间的坐标,一个路径点的所述位置路程长度为在笛卡尔位置空间中从第一个路径点到该路径点的所述规划路径的长度,一个路径点的所述角度路程长度为在笛卡尔姿态空间中从第一个路径点到该路径点的所述规划路径的长度;According to the posture of each path point of the planned path, the position path length and the angular path length of each path point are obtained. The position path length and the angular path length form the coordinates of the path space, and a path The positional path length of a point is the length of the planned path from the first path point to this path point in Cartesian position space, and the angular path length of a path point is the length of the planned path from the first path point in Cartesian attitude space. The length of the planned path from a path point to the path point; 把机械人末端的笛卡尔空间的运动学约束条件转换为所述路程空间的运动学约束条件;Convert the kinematic constraints of the Cartesian space at the end of the robot into the kinematic constraints of the path space; 在所述路程空间的运动学约束条件下,根据所述路程空间的坐标利用速度规划获得机械人末端在所述路程空间的规划轨迹,且机械人末端在所述路程空间的速度连续;Under the kinematic constraints of the distance space, use speed planning to obtain the planned trajectory of the robot end in the distance space according to the coordinates of the distance space, and the speed of the robot end in the distance space is continuous; 根据所述路程空间的规划轨迹获得机械人末端在笛卡尔空间的规划轨迹。The planned trajectory of the robot end in Cartesian space is obtained according to the planned trajectory of the journey space. 根据权利要求2所述方法,其特征在于,所述在机械人末端的笛卡尔空间的运动学约束条件下,根据所述规划路径利用速度规划获得机械人末端在笛卡尔空间的规划轨迹,包括:The method according to claim 2, characterized in that, under the kinematic constraints of the Cartesian space of the robot end, using speed planning according to the planned path to obtain the planned trajectory of the robot end in the Cartesian space, including : 根据所述规划路径的各路径点的所述位姿,获得所述各路径点的在笛卡尔位置空间的各坐标轴上的路程长度,并组成所述规划路径的路程空间的坐标,一个路径点在 笛卡尔空间的一个坐标轴上的所述路程长度为从第一个路径点到该路径点的所述规划路径的经过路程投影在该坐标轴上的长度;According to the pose of each path point of the planned path, the path length of each path point on each coordinate axis of the Cartesian position space is obtained, and the coordinates of the path space of the planned path are formed, a path point at The length of the journey on a coordinate axis of Cartesian space is the length of the planned path from the first path point to the path point projected on the coordinate axis; 把机械人末端的笛卡尔空间的运动学约束条件转换为所述路程空间的运动学约束条件;Convert the kinematic constraints of the Cartesian space at the end of the robot into the kinematic constraints of the path space; 在所述路程空间的运动学约束条件下,根据所述路程空间的坐标利用速度规划获得机械人末端在所述路程空间的规划轨迹,且机械人末端在所述路程空间的速度连续;Under the kinematic constraints of the distance space, use speed planning to obtain the planned trajectory of the robot end in the distance space according to the coordinates of the distance space, and the speed of the robot end in the distance space is continuous; 根据所述路程空间的规划轨迹获得机械人末端在笛卡尔空间的规划轨迹。The planned trajectory of the robot end in Cartesian space is obtained according to the planned trajectory of the journey space. 根据权利要求1或2所述方法,其特征在于,所述根据机械人末端在笛卡尔空间的规划轨迹,获得机械人末端在机械人关节空间的关节节点,包括:The method according to claim 1 or 2, characterized in that, according to the planned trajectory of the robot end in Cartesian space, obtaining the joint nodes of the robot end in the robot joint space includes: 根据机械人末端在笛卡尔空间的规划轨迹,获得根据机械人末端在笛卡尔空间的轨迹节点,所述轨迹节点为机械人末端在笛卡尔空间的运动轨迹的关键点;According to the planned trajectory of the robot end in Cartesian space, obtain the trajectory nodes of the robot end in Cartesian space. The trajectory nodes are the key points of the movement trajectory of the robot end in Cartesian space; 把所述轨迹节点作为所述关节节点,利用运动学逆解把所述轨迹节点的所述位姿转化为所述关节节点在机械人关节空间的坐标。Taking the trajectory node as the joint node, the inverse kinematics solution is used to convert the pose of the trajectory node into the coordinates of the joint node in the robot joint space. 根据权利要求1或2所述方法,其特征在于,所述在机械人各轴的运动学约束条件下,根据所述关节节点获得机械人末端在其关节空间的规划轨迹,包括:The method according to claim 1 or 2, characterized in that, under the kinematic constraints of each axis of the robot, obtaining the planned trajectory of the robot end in its joint space according to the joint nodes includes: 在机械人各轴的运动学约束条件下,根据所述关节节点在机械人关节空间的坐标利用速度规划分别获得机械人的每个轴在关节空间的一次规划轨迹,并据此获得机械人的每个轴在相邻关节节点之间的运动时长;Under the kinematic constraints of each axis of the robot, velocity planning is used to obtain a planned trajectory of each axis of the robot in the joint space according to the coordinates of the joint nodes in the joint space of the robot, and accordingly the trajectory of the robot is obtained. The duration of movement of each axis between adjacent joint nodes; 对于任一对相邻关节节点,把该对相邻关节节点之间机械人各轴的运动时长中的最长时间作为该对相邻关节节点之间的同步时长;For any pair of adjacent joint nodes, the longest time of the movement duration of each axis of the robot between the pair of adjacent joint nodes is regarded as the synchronization duration between the pair of adjacent joint nodes; 根据机械人在各对相邻关节节点之间的同步时长和所述关节节点在机械人关节空间的坐标,在机械人各轴的运动学约束条件下利用速度规划分别获得机械人的每个轴在关节空间的二次规划轨迹,并作为机械人末端在其关节空间的规划轨迹,该规划轨迹中机械人的每个轴的速度、加速度和加加速度连续。According to the synchronization duration between each pair of adjacent joint nodes of the robot and the coordinates of the joint nodes in the robot's joint space, speed planning is used to obtain each axis of the robot under the kinematic constraints of each axis of the robot. The secondary planned trajectory in the joint space is used as the planned trajectory of the robot end in its joint space. In this planned trajectory, the speed, acceleration and jerk of each axis of the robot are continuous. 一种机械人末端轨迹的规划装置,其特征在于,包括:A planning device for the terminal trajectory of a robot, which is characterized by including: 节点获取模块,用于获取机械人末端的若干个离散的路径节点,所述路径节点的坐标为在笛卡尔空间的位姿;The node acquisition module is used to acquire several discrete path nodes at the end of the robot. The coordinates of the path nodes are the poses in Cartesian space; 路径平滑模块,用于对所述路径节点进行平滑拟合,获得机械人末端在笛卡尔空间的规划路径;The path smoothing module is used to perform smooth fitting on the path nodes to obtain the planned path of the robot end in Cartesian space; 笛卡尔轨迹规划模块,用于在机械人末端的笛卡尔空间的运动学约束条件下,根据所述规划路径利用速度规划获得机械人末端在笛卡尔空间的规划轨迹;The Cartesian trajectory planning module is used to obtain the planned trajectory of the robot end in Cartesian space by using speed planning according to the planned path under the kinematic constraints of the Cartesian space at the end of the robot; 运动学逆解模块,用于根据机械人末端在笛卡尔空间的规划轨迹,获得机械人末端在机械人关节空间的关节节点,所述关节节点为机械人末端在其关节空间的运动轨迹的关键点,其坐标为机械人关节空间的坐标;The inverse kinematics solution module is used to obtain the joint nodes of the robot end in the robot joint space based on the planned trajectory of the robot end in Cartesian space. The joint nodes are the key to the motion trajectory of the robot end in its joint space. Point, its coordinates are the coordinates of the robot joint space; 关节轨迹规划模块,用于在机械人各轴的运动学约束条件下,根据所述关节节点获得机械人末端在关节空间的规划轨迹。The joint trajectory planning module is used to obtain the planned trajectory of the robot end in the joint space based on the joint nodes under the kinematic constraints of each axis of the robot. 一种计算设备,其特征在于,包括:A computing device, characterized by including: 总线; bus; 通信接口,其与所述总线连接;A communication interface connected to the bus; 至少一个处理器,其与所述总线连接;以及at least one processor connected to the bus; and 至少一个存储器,其与所述总线连接并存储有程序指令,所述程序指令当被所述至少一个处理器执行时使得所述至少一个处理器执行权利要求1至7任一所述方法。At least one memory is connected to the bus and stores program instructions, which when executed by the at least one processor cause the at least one processor to perform the method of any one of claims 1 to 7. 一种计算机可读存储介质,其上存储有程序指令,其特征在于,所述程序指令当被计算机执行时使得所述计算机执行权利要求1至7任一所述方法。 A computer-readable storage medium on which program instructions are stored, characterized in that, when executed by a computer, the program instructions cause the computer to execute the method of any one of claims 1 to 7.
PCT/CN2023/115058 2022-08-26 2023-08-25 Trajectory planning method and apparatus for robot end Ceased WO2024041648A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202211035164.9 2022-08-26
CN202211035164.9A CN115157270B (en) 2022-08-26 2022-08-26 A method and device for planning the terminal trajectory of a robot

Publications (1)

Publication Number Publication Date
WO2024041648A1 true WO2024041648A1 (en) 2024-02-29

Family

ID=83481652

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/115058 Ceased WO2024041648A1 (en) 2022-08-26 2023-08-25 Trajectory planning method and apparatus for robot end

Country Status (2)

Country Link
CN (1) CN115157270B (en)
WO (1) WO2024041648A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117817673A (en) * 2024-03-05 2024-04-05 泓浒(苏州)半导体科技有限公司 Dynamic path adjustment system and method for wafer handling robot
CN118305791A (en) * 2024-04-17 2024-07-09 中山大学 Redundant parallel mechanical arm motion planning method, system and robot based on quadratic programming and zero-ized neural network
CN118927247A (en) * 2024-05-24 2024-11-12 广州信邦智能装备股份有限公司 Robotic arm trajectory correction device and related computer program

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115157270B (en) * 2022-08-26 2024-09-27 北京东土科技股份有限公司 A method and device for planning the terminal trajectory of a robot
CN119017392B (en) * 2024-10-23 2025-02-25 杭州科技职业技术学院 Industrial robot motion control system and motion path control method thereof

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6317651B1 (en) * 1999-03-26 2001-11-13 Kuka Development Laboratories, Inc. Trajectory generation system
CN105500354A (en) * 2016-02-02 2016-04-20 南京埃斯顿机器人工程有限公司 A Transition Trajectory Planning Method for Industrial Robot Application
CN106647282A (en) * 2017-01-19 2017-05-10 北京工业大学 Six-freedom-degree robot track planning method giving consideration to tail end motion error
CN107571261A (en) * 2017-08-30 2018-01-12 中国科学院自动化研究所 The smooth transient method and device of the more space tracking planning of teaching robot
CN108000501A (en) * 2017-11-22 2018-05-08 湖北工业大学 A kind of new method for planning track for serial manipulator
CN115157270A (en) * 2022-08-26 2022-10-11 北京东土科技股份有限公司 A method and device for planning the end trajectory of a robot

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107030697B (en) * 2017-04-28 2019-05-28 广州大学 A kind of planing method of robot cartesian space smooth track
CN108890644B (en) * 2018-06-27 2020-06-30 清华大学 Multi-axis synchronous trajectory planning method and system and computer readable storage medium
US11325256B2 (en) * 2020-05-04 2022-05-10 Intrinsic Innovation Llc Trajectory planning for path-based applications
CN113084821A (en) * 2021-04-30 2021-07-09 哈尔滨工业大学 Spraying robot time optimal trajectory planning method based on dynamics
CN113442140B (en) * 2021-06-30 2022-05-24 同济人工智能研究院(苏州)有限公司 Cartesian space obstacle avoidance planning method based on Bezier optimization

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6317651B1 (en) * 1999-03-26 2001-11-13 Kuka Development Laboratories, Inc. Trajectory generation system
CN105500354A (en) * 2016-02-02 2016-04-20 南京埃斯顿机器人工程有限公司 A Transition Trajectory Planning Method for Industrial Robot Application
CN106647282A (en) * 2017-01-19 2017-05-10 北京工业大学 Six-freedom-degree robot track planning method giving consideration to tail end motion error
CN107571261A (en) * 2017-08-30 2018-01-12 中国科学院自动化研究所 The smooth transient method and device of the more space tracking planning of teaching robot
CN108000501A (en) * 2017-11-22 2018-05-08 湖北工业大学 A kind of new method for planning track for serial manipulator
CN115157270A (en) * 2022-08-26 2022-10-11 北京东土科技股份有限公司 A method and device for planning the end trajectory of a robot

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117817673A (en) * 2024-03-05 2024-04-05 泓浒(苏州)半导体科技有限公司 Dynamic path adjustment system and method for wafer handling robot
CN117817673B (en) * 2024-03-05 2024-05-03 泓浒(苏州)半导体科技有限公司 Dynamic path adjustment system and method for wafer handling robot
CN118305791A (en) * 2024-04-17 2024-07-09 中山大学 Redundant parallel mechanical arm motion planning method, system and robot based on quadratic programming and zero-ized neural network
CN118927247A (en) * 2024-05-24 2024-11-12 广州信邦智能装备股份有限公司 Robotic arm trajectory correction device and related computer program

Also Published As

Publication number Publication date
CN115157270B (en) 2024-09-27
CN115157270A (en) 2022-10-11

Similar Documents

Publication Publication Date Title
WO2024041648A1 (en) Trajectory planning method and apparatus for robot end
CN115179298B (en) A Cartesian space trajectory planning method and device
WO2024041646A1 (en) Trajectory planning method and apparatus for joint space of multi-shaft device
CN109676606B (en) A method for calculating the angular range of a robotic arm, a robotic arm and a robot
CN110471409A (en) Robot method for inspecting, device, computer readable storage medium and robot
CN102226677A (en) Calibration method of base coordinate system for multi-robot system with cooperative relationship
CN113119104B (en) Mechanical arm control method, mechanical arm control device, computing equipment and system
CN109176526A (en) A space arc interpolation method for a three-axis rectangular coordinate robot
CN116728401B (en) A redundant dual-manipulator mutual obstacle avoidance method, device and storage medium
CN111319041A (en) Robot pose determining method and device, readable storage medium and robot
WO2025025836A1 (en) Method for planning tail-end trajectory of series robot on basis of bidirectional greedy search algorithm
CN113814978A (en) Robot control method, robot control device, robot, and storage medium
WO2022193668A1 (en) Inverse solution method and apparatus for arm angle interval of mechanical arm, and terminal device
WO2024011792A1 (en) Image processing method and apparatus, electronic device, and storage medium
CN117084788A (en) Method, device and storage medium for determining target attitude of robotic arm
CN118243134A (en) Data processing method and device based on monocular vision inertial odometer, electronic equipment and storage medium
CN115268447A (en) Robot pose control method, device and electronic device based on Bezier curve
CN113084791A (en) Mechanical arm control method, mechanical arm control device and terminal equipment
Bai et al. Coordinated motion planning of the mobile redundant manipulator for processing large complex components
Wang et al. Gslamot: A tracklet and query graph-based simultaneous locating, mapping, and multiple object tracking system
CN115861642A (en) Hybrid collaboration 3D object detection method and system
CN115890653A (en) Cooperative control method, device and readable medium of dual-arm robot based on multi-channel
CN115488898A (en) Trajectory planning method, device, robot and computer-readable storage medium
CN112356032B (en) Posture smooth transition method and system
CN113282078A (en) Method, system and application for directly navigating and moving mobile robot to index target point

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23856733

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205N DATED 16/04/2025)

122 Ep: pct application non-entry in european phase

Ref document number: 23856733

Country of ref document: EP

Kind code of ref document: A1