WO2024041646A1 - Trajectory planning method and apparatus for joint space of multi-shaft device - Google Patents
Trajectory planning method and apparatus for joint space of multi-shaft device Download PDFInfo
- Publication number
- WO2024041646A1 WO2024041646A1 PCT/CN2023/115044 CN2023115044W WO2024041646A1 WO 2024041646 A1 WO2024041646 A1 WO 2024041646A1 CN 2023115044 W CN2023115044 W CN 2023115044W WO 2024041646 A1 WO2024041646 A1 WO 2024041646A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- axis
- joint
- time
- planning
- trajectory
- 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
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme 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 joint space trajectories of multi-axis equipment.
- the robot is a multi-axis device that is often divided into several axes for separate feeds.
- the actual motion trajectory is the combined motion of several axes. During the trajectory planning process, it must be ensured that each axis reaches the designated position at the same time point.
- the correct kinematics solution refers to calculating the end pose of the robot given the coordinates of each axis in their respective joint spaces.
- the inverse solution of kinematics refers to knowing the end pose of the robot and solving the position of each axis of the robot in their respective joint spaces. It is the basis for robot motion planning and trajectory control.
- this method can only ensure that the reference axis meets the motion constraints and cannot guarantee whether the other axes do; there are other technical solutions.
- the existing technology cannot both satisfy the motion constraints and maximize the performance of the multi-axis equipment.
- embodiments of the present application provide a method and device for planning joint space trajectories of multi-axis equipment.
- embodiments of the present application provide a method for planning joint space trajectories of a multi-axis device, including: obtaining the coordinates of each joint node of the multi-axis device in the joint space, and each axis of the multi-axis device is the joint.
- each axis under the kinematic constraints of each axis, conduct the first trajectory planning for each axis according to the coordinates, obtain the planning time for each axis to reach each joint node, and The synchronization time of each joint node is determined based on this, where the synchronization time of a joint node is the time when each axis reaches the joint node at the same time; under the kinematic constraints, according to the synchronization time and the The coordinates perform a second trajectory planning for each axis separately to obtain the trajectory of each axis in the joint space.
- the first trajectory planning includes: obtaining the inflection point of each axis according to the coordinates, and the inflection point of an axis is the position of the axis in the joint space.
- the first trajectory planning allows each axis to plan itself under kinematic constraints, so that the motion performance of each axis is optimal.
- obtaining the synchronization time of each joint node includes: according to the planning time, obtaining the time of each axis in the trajectory of the first trajectory planning.
- the running time between two adjacent joint nodes for any two adjacent joint nodes, compare the running time of each axis between the two adjacent joint nodes, and select the longest running time among them.
- the synchronization duration between the two adjacent joint nodes the synchronization time is obtained according to the synchronization duration, wherein the synchronization time of a joint node is on the synchronization time of the previous adjacent joint node of the joint node The synchronization duration superimposed between these two adjacent joint nodes.
- the second trajectory planning includes: under the kinematic constraints, calculating each axis of each axis according to the synchronization time and the coordinate through speed planning.
- the trajectory between two adjacent inflection points is planned, and during the planning process, the continuity of the speed, acceleration or jerk of each axis at each joint node is the convergence condition.
- the second trajectory planning of this application increases the continuity of both acceleration and acceleration, reducing the vibration of each axis.
- the second trajectory planning also includes: when the second trajectory planning of the set time has passed, there is still a speed or acceleration of a certain axis at a certain joint node or When the jerk is discontinuous, smoothing filtering is used to make the velocity, acceleration and jerk of each axis at each joint node continuous.
- the combination of planning and filtering at set time not only achieves the accuracy of planning, but also improves the continuity of the speed, acceleration and jerk of each axis at each joint node. At the same time Improved planning timeliness.
- time cosine is used as the basis function in the speed planning
- the expression represents the relationship between the coordinates of each axis in the joint space and time.
- speed planning uses the expression of time cosine as the basis function to express the speed, without delineating the time of each speed change node, which improves the accuracy of planning.
- the kinematic constraints include a maximum allowable speed, a maximum allowable acceleration, or a maximum allowable jerk of each axis.
- each axis obeys its own kinematic constraints, so that the trajectory of each axis in the planning can achieve its best performance.
- each axis is synchronized in time. Complying with the respective kinematic constraint planning, the overall operating performance of the multi-axis equipment can be improved.
- embodiments of the present application provide a planning device for joint space trajectories of multi-axis equipment, including: an acquisition module, a time synchronization module and a speed matching module; the acquisition module is used to obtain each joint node of the multi-axis equipment In the coordinates of the joint space, each axis of the multi-axis device is one dimension of the joint space; the time synchronization module is used to calculate the coordinates of each axis according to the coordinates under the kinematic constraints of each axis.
- the first trajectory planning for each axis respectively, obtain the planning time for each axis to reach each joint node, and determine the synchronization time of each joint node accordingly, where the synchronization time of a joint node is the synchronization time of each axis The time to reach the joint node at the same time; the speed matching module is used to perform a second trajectory planning for each axis according to the synchronization time and the coordinates under the kinematic constraints to obtain the The trajectory of each axis in the joint space.
- the time synchronization module when the time synchronization module performs the first trajectory planning, it specifically includes: obtaining the inflection point of each axis according to the coordinates, and the inflection point of an axis is at the joint.
- the joint node in the space with a speed of 0 in the coordinate dimension corresponding to the axis; under the kinematic constraints, the trajectory of each axis between every two adjacent inflection points is planned through speed planning to obtain the above Planning time.
- the first trajectory planning allows each axis to plan itself under kinematic constraints, so that the motion performance of each axis is optimal.
- the time synchronization module when it obtains the synchronization time of each joint node, it specifically includes: according to the planning time, obtaining each axis in the trajectory of the first trajectory planning. The running time between each two adjacent joint nodes; for any two adjacent joint nodes, compare the running time of each axis between the two adjacent joint nodes, and select the longest one The running time is used as the synchronization time between the two adjacent joint nodes; the synchronization time is obtained according to the synchronization time, wherein the synchronization time of a joint node is the synchronization of the previous adjacent joint node of the joint node The synchronization duration between these two adjacent joint nodes is superimposed in time.
- the speed matching module when the speed matching module performs the second trajectory planning, it specifically includes: under the kinematic constraints, according to the synchronization time and the coordinates, respectively through the speed planning The trajectory between every two adjacent inflection points of each axis is planned, and during the planning process, the continuity of the speed, acceleration or jerk of each axis at each joint node is the convergence condition.
- the second trajectory planning of this application increases the continuity of both acceleration and acceleration, reducing the vibration of each axis.
- the second trajectory planning of this application increases the continuity of both acceleration and acceleration, reducing the vibration of each axis.
- the speed matching module when the speed matching module performs the second trajectory planning, it also specifically includes: when the second trajectory planning of the set time has passed, there is still a certain axis at a certain joint.
- smoothing filtering is used to make the velocity, acceleration, and jerk of each axis at each joint node continuous.
- the combination of planning and filtering at set time not only achieves the accuracy of planning, but also improves the continuity of the speed, acceleration and jerk of each axis at each joint node. At the same time Improved planning timeliness.
- an expression using time cosine as a basis function is used to represent the relationship between the coordinates of each axis in the joint space and time.
- speed planning uses the expression of time cosine as the basis function to express the speed, without delineating the time of each speed change node, which improves the accuracy of planning.
- the kinematic constraints include a maximum allowable speed, a maximum allowable acceleration, or a maximum allowable jerk of each axis.
- each axis obeys its own kinematic constraints, so that the trajectory of each axis in the planning can achieve its best performance.
- each axis is synchronized in time. Complying with the respective kinematic constraint planning, the overall operating performance of the multi-axis equipment can be improved.
- 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 of the first aspect of the application. .
- Figure 1 is a schematic flowchart of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device according to the present application;
- Figure 2 is a schematic flowchart of Embodiment 2 of a planning method for a joint space trajectory of a multi-axis device according to the present application;
- Figure 3 is a schematic flowchart of a synchronization time determination method in Embodiment 2 of a joint space trajectory planning method for a multi-axis device of the present application;
- Figure 4 is a schematic flowchart of the speed matching method in Embodiment 2 of the joint space trajectory planning method of a multi-axis device of the present application;
- Figure 5 is a schematic structural diagram of Embodiment 1 of a planning device for joint space trajectories of multi-axis equipment according to the present application;
- Figure 6 is a schematic structural diagram of Embodiment 2 of a planning device for joint space trajectories of multi-axis equipment according to the present application;
- Figure 7 is a schematic structural diagram of a computing device according to various embodiments of the present application.
- Cartesian space, Cartesian space coordinates Descartes space is a rectangular coordinate space, and the coordinates of the Cartesian space are poses, including position coordinates and attitude coordinates.
- the position coordinates are three-dimensional rectangular coordinates, and the attitude coordinates are the current position of the object relative to the three-dimensional rectangular coordinates.
- the rotation angle of the coordinates schematically, can be represented by three angular coordinates of Euler angles.
- Joint space is the motion space of each axis of a multi-axis device. Each axis is one dimension of the joint space. Each axis is a universal axis and can be translation or rotation. The joint space coordinate is the displacement or rotation angle of the axis.
- the Cartesian space trajectory is the relationship between the Cartesian space coordinates and time.
- the joint space trajectory is the relationship between the joint space coordinates and time.
- Kinematic constraints including maximum allowable speed, maximum allowable acceleration, and maximum allowable jerk.
- Kinematic constraints are constraints on the joint space of the axis for a specific axis. When an axis is a translation axis, its kinematic constraints are the maximum allowable speed, maximum allowable acceleration, and maximum allowable jerk in terms of displacement; when an axis is a rotation axis, its kinematic constraints are the maximum allowable speed, maximum allowable acceleration, and maximum allowable jerk in terms of rotation. Allowable acceleration, maximum allowable jerk.
- 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 both Cartesian space and joint space. When planning, describe velocity as an expression in time, for example, a polynomial based on time.
- the technical solution of the embodiment of the present application includes: obtaining the coordinates of each joint node of the multi-axis device in the joint space, and performing secondary trajectory planning for each axis according to the coordinates under the kinematic constraints of each axis,
- the first trajectory planning determines the synchronization time of each joint node
- the second trajectory planning implements the movement speed of each axis matching the synchronization time and obtains the final trajectory in the joint space.
- the technical solutions of each embodiment of the present application are suitable for trajectory planning of various universal axes in joint space, and allow each axis of the multi-axis device to operate synchronously under the condition that each axis obeys kinematic constraints, thereby improving the overall efficiency of the multi-axis device. Operational performance.
- the vibration of the drive motor of each axis is also suppressed to reduce the vibration of each axis through the continuous acceleration of each axis at the joint node.
- the multi-axis equipment in this application has multiple axes and can be a robot or a machine tool.
- the trajectory node is the key point of the end of the multi-axis equipment in Cartesian space; the end of the multi-axis equipment can be the external operating part of the multi-axis equipment, such as the fingers of the robot, the cutter of the machine tool, the mechanical arm of the tower crane, etc.; the joint nodes of the multi-axis equipment It is the point reached by each axis of the multi-axis device in the joint space when the end of the multi-axis device reaches the trajectory node.
- Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device includes: obtaining the coordinates of each joint node of the multi-axis device in the joint space; under the kinematic constraints of each axis, calculating each axis according to the coordinates Carry out the first trajectory planning respectively, obtain the planning time for each axis to reach each joint node, and determine the synchronization time of each joint node accordingly; under the kinematic constraints, according to the synchronization time and the coordinates Perform a second trajectory planning for each axis to obtain the trajectory of each axis in the joint space.
- Figure 1 shows the process of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device, including steps S110 to S130.
- S110 Obtain the coordinates of each joint node in the joint space.
- Each axis of the multi-axis device is one dimension of the joint space.
- the joint node coordinates in the joint space form an N*M-dimensional matrix, where N represents N joint nodes and M represents M axes.
- the coordinates of the joint nodes in the joint space can be obtained through the inverse kinematics solution based on the posture of the end of the multi-axis device.
- the pose of the end of the multi-axis device is obtained through trajectory planning of the end of the multi-axis device.
- the axes of the multi-axis device are universal axes, including translation axes and/or rotation axes.
- the translation axis as The node coordinates of the axis of the cylinder are the translational displacement
- the rotation axis such as the axis of the motor, its node coordinates are the angle of rotation.
- kinematic constraints are used to constrain the trajectory of each axis, and each axis has corresponding kinematic constraints.
- Each embodiment of the present application has kinematic constraints in the subsequent first trajectory planning and second trajectory planning.
- the sampling period is the granularity of time described in each embodiment of this application.
- the axis of the sampling period drives the pulse period.
- the synchronization time of a joint node is the time when each axis reaches the joint node at the same time, that is, the coordinates of each axis arriving at the joint node synchronously at the synchronization time of a joint node represent the position of each axis.
- kinematic constraints are used to constrain the trajectory of each axis, and each axis has corresponding kinematic constraints.
- the subsequent first trajectory planning and second trajectory planning all comply with the kinematic constraints.
- the velocity planner is used to perform velocity planning to obtain the relationship between the coordinates of each joint node and time, thereby completing the first trajectory planning.
- the velocity planner describes the relationship between velocity and time in each dimension using The S-shaped curve, that is, S-shaped acceleration and deceleration, is used to plan the speed.
- the speed can also be planned based on other shape lines such as trapezoidal lines.
- the speed planner can use a time-based polynomial to describe the relationship between speed and time, or it can use an expression based on the cosine function of time to describe the relationship between speed and time.
- the planning time for each axis to reach each joint node can be obtained.
- the planning time for an axis to reach the latter of the two adjacent joint nodes is subtracted from the planning time for the axis to reach the previous joint node of the two adjacent joint nodes to obtain The length of time the axis runs between these two adjacent joint nodes.
- any two adjacent joint nodes compare the running time of each axis between the two adjacent joint nodes, and select the longest running time for each axis of the multi-axis equipment between the two adjacent joint nodes. synchronization duration between.
- the synchronization time of the multi-axis equipment end reaching each joint node is obtained according to the synchronization duration.
- the synchronization time of a joint node is the synchronization time of the previous adjacent joint node of the joint node superimposed on the two adjacent joint nodes. synchronization time between.
- the trajectory of each axis in the joint space constitutes the trajectory of the multi-axis device in the joint space.
- the second trajectory planning uses the speed planner introduced in step S120 to perform the second trajectory planning on the joint space trajectory of each axis.
- the planning also complies with the following conditions: 1) Each axis reaches each joint during the planning process. The time of the node is the corresponding synchronization time; 2) The speed, acceleration or jerk of each axis at each joint node is continuous.
- this is achieved by increasing the planning time and going through a sufficient number of iterations of the forward velocity planning. In other embodiments, In the embodiment, this is achieved through multiple iterations of forward speed planning and filter synthesis.
- Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device performs a first step on each axis according to the coordinates of each joint node of the multi-axis device in the joint space under the kinematic constraints of each axis. Secondary trajectory planning, obtain the planning time for each axis to reach each joint node, and determine the synchronization time of each joint node accordingly, and conduct the second trajectory planning for each axis based on the synchronization time and the coordinates, Obtain the trajectory of each axis in joint space.
- Embodiment 1 of this method is suitable for trajectory planning of various general axes in joint space. Under the condition that each axis of the multi-axis device obeys kinematic constraints, each axis runs synchronously at each node, thereby improving the overall operation of the multi-axis device. performance.
- Embodiment 2 of a planning method for a joint space trajectory of a multi-axis device is first introduced below with reference to Figures 2 to 4 of the accompanying drawings.
- Embodiment 2 of a planning method for joint space trajectories of multi-axis equipment Based on Embodiment 1 of a planning method for joint space trajectories of multi-axis equipment, the first trajectory planning is performed by selecting between every two adjacent nodes. The running time of the axis with the longest running time is selected as the synchronization time to ensure that at least one axis has the best motion performance.
- the second trajectory planning by setting the second trajectory planning with a duration and adding smoothing filtering, not only can each The speed, acceleration or jerk of the axis when it reaches each joint node is continuous, and the planning efficiency is high.
- expressions based on time cosine are chosen to describe the speed, which further improves the accuracy of planning.
- Figure 2 shows the process of Embodiment 2 of a planning method for a joint space trajectory of a multi-axis device, including steps S210 to S240.
- S210 Obtain the pose, kinematic constraints and calculation time granularity of the path node at the end of the multi-axis device.
- the path nodes are several key points in the running path of the multi-axis equipment end in Cartesian space, which are used to plan the trajectory of the multi-axis equipment end in Cartesian space.
- the path nodes are obtained based on the key positions of the end of the multi-axis equipment in the actual scene.
- the calculation time granularity is the minimum time interval used in trajectory planning. The smaller the granularity, the smoother the calculated trajectory, but the greater the calculation amount.
- the driving pulse period of the axis is used as the sampling period.
- kinematic constraints please refer to the description in step S110 of Embodiment 1 of a joint space trajectory planning method for a multi-axis device.
- S220 Plan the trajectory of the end of the multi-axis device in Cartesian space based on the pose of the path node, and obtain the coordinates of the joint nodes of the multi-axis device in the joint space through the inverse kinematic solution.
- the trajectory of the end of the multi-axis equipment in Cartesian space is planned according to the pose of the path node at the end of the multi-axis equipment. In some embodiments, it is implemented through two steps of path planning and trajectory planning in Cartesian space. In other embodiments, It is realized in one step through trajectory planning in Cartesian space, which is not limited in this embodiment.
- the joint nodes in the joint space correspond to the trajectory nodes on the Cartesian space trajectory
- the trajectory nodes are key points on the Cartesian space trajectory, which determine the trend of the Cartesian space trajectory.
- the inverse kinematics solution methods include analytical methods, iterative methods and geometric methods, which are not limited in this embodiment.
- the coordinates of each joint node in the joint space obtained at this time may be obtained in step S110 of the first embodiment of a joint space trajectory planning method for a multi-axis device.
- this step is based on step S120 of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device, and performs segment planning by keeping the inflection point speed of each axis at 0 to improve the planning accuracy of each axis, while speed planning
- the device plans the speed based on the S-shaped curve, that is, S-shaped acceleration and deceleration, and uses an expression based on the cosine function of time to describe the relationship between speed and time to further improve the planning accuracy.
- this step is based on step S120 of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device, and also improves the continuity of the speed, acceleration and jerk of each axis at each joint node through filtering, and at the same time Use the expression based on the cosine function of time to describe the relationship between speed and time.
- Figure 3 shows the flow of the synchronization time determination method in Embodiment 2 of a planning method for a joint space trajectory of a multi-axis device, that is, step 230 includes steps S2310 to S2350.
- the inflection point of an axis is the point where the axis's velocity in the joint space is zero. It is the turning point of the forward and reverse motion of the axis, also called the anchor point.
- the inflection point of the axis can be obtained.
- the methods used include differential method, contrast method, etc.
- the inflection point of an axis also includes the first and last joint nodes of the axis. At these two joint nodes, the speed of the joint space is also 0.
- S2320 Use the speed planner to perform the first trajectory planning of the joint space trajectory between every two adjacent inflection points of each axis under kinematic constraints, and obtain the planning time for each axis to reach each joint node.
- the planning of each axis is carried out separately, and the speed between every two adjacent inflection points of each axis is planned through the rate planner, so as to obtain every two The trajectory between adjacent inflection points.
- the speed of each axis at each inflection point is kept at 0.
- an S-shaped curve is used for planning under kinematic constraints, and the relationship between speed and time is expressed by an expression with time cosine as the basis function.
- This expression can be time cosine as the basis function.
- the polynomial of the function can also be in other forms.
- the speed planner using the expression of time cosine as the basis function automatically plans according to the S-shaped curve.
- each axis in a trajectory planning is optimal under kinematic constraints.
- the running time of each axis between each two adjacent joint nodes determined by the time to reach each joint node is also the optimal running time of each axis.
- the synchronization duration between any two adjacent joint nodes is determined by the above method, so that at least one axis has the best performance between the two adjacent joint nodes, so that the entire system can be operated under kinematic constraints.
- the multi-axis device performs best between the two adjacent joint nodes, because at this time, shortening the running time of the entire multi-axis device between the two adjacent joint nodes will cause one of the axes to exceed its Kinematic constraints.
- S2350 Obtain the synchronization time of each joint node in sequence according to the determined synchronization duration.
- the synchronization time of a joint node is the synchronization time between the two adjacent joint nodes superimposed on the synchronization time of the previous adjacent joint node of the joint node.
- the time of the first joint node which is the starting point, be t. Since the starting time of each axis is the same, t can also be considered as the synchronization time of the first joint node. Subsequently, it will be superimposed with the next joint on the basis of t. The synchronization time between nodes, so as to obtain the synchronization time of each joint node in turn.
- each axis of the multi-axis device reaches the designated position (joint node) at the same time, and obeys the kinematic constraints, and at the same time, the operating performance reaches the optimal level.
- Figure 4 shows the flow of the speed matching method in Embodiment 2 of a joint space trajectory planning method for a multi-axis device, that is, step 240 includes steps S2410 to S2440.
- each axis of the multi-axis device runs each step of this embodiment for planning.
- the axis currently undergoing planning is called the planning axis.
- the time when the planned axis reaches any joint node is the synchronization time of the joint node, so as to realize the matching of the speed of each axis of the multi-axis equipment, that is, according to the matched speed of each axis (that is, the first The speed after quadratic trajectory planning) each axis reaches each joint node synchronously.
- each axis synchronously reaches the coordinates corresponding to the respective dimensions of each axis in each joint node.
- the velocity, acceleration or jerk of the planning axis at each joint node in the joint space is continuous as the planning convergence condition.
- the speed of the planning axis inflection point in the joint space is also kept as 0, and the S-shaped curve is used for planning under kinematic constraints.
- the relationship between speed and time during planning is expressed by an expression with time cosine as the basis function.
- This expression can be a polynomial with time cosine as the basis function, or it can be in other forms.
- the speed planner that uses the expression of time cosine as the basis function automatically plans according to the S-shaped curve. It does not need to manually set the time-based segmentation of the S-shaped curve in advance, which improves the accuracy of the second trajectory planning.
- the existing technology only realizes the continuity of velocity and acceleration.
- This embodiment adds the continuity of acceleration and acceleration, thus suppressing the vibration problem of each axis.
- step S2430 is executed; otherwise, step S2440 is executed.
- the jump joint node of an axis is the velocity or acceleration or jerk discontinuity of the axis at the joint node.
- the second trajectory planning includes multiple rounds of forward speed planning.
- Each round of forward speed planning selects multiple forward interpolation points and uses forward and/or reverse search methods to perform complex speed planning calculations, which requires a large amount of calculation.
- filtering methods include polynomial filtering or average filtering.
- the duration of the second trajectory planning is controlled by adding filtering to meet the timeliness requirements of the actual scene and improve the continuity of the speed, acceleration and jerk of each axis at the joint nodes.
- S2440 Output the currently planned trajectory as the joint space trajectory of the planned axis of the multi-axis device.
- the next unplanned axis is selected as the planning axis to continue planning.
- Embodiment 2 of a planning method for a joint space trajectory of a multi-axis device is based on Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device.
- the first trajectory planning is performed in every two phases.
- the running time of the axis with the longest running time between adjacent nodes is selected as the synchronization time so that at least one axis has the best motion performance.
- the method of setting the duration of the second trajectory planning and filtering is not only achieved
- the speed, acceleration or jerk of each axis reaching each joint node is continuous, and the planning efficiency is high.
- expressions based on time cosine are chosen to describe the speed, which further improves the accuracy of planning.
- FIGS. 5 and 6 An embodiment of a planning device for a joint space trajectory of a multi-axis device according to the present application will be introduced below with reference to FIGS. 5 and 6 .
- Embodiment 1 of a planning device for a joint space trajectory of a multi-axis device executes the method of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device, and has all its advantages.
- Figure 5 shows the structure of Embodiment 1 of a planning device for joint space trajectories of multi-axis equipment, including: an acquisition module 510, a time synchronization module 520 and a speed matching module 530.
- the acquisition module 510 is used to acquire the coordinates of each joint node in the joint space.
- Each axis of the multi-axis device is one dimension of the joint space.
- step S110 of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device please refer to step S110 of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device.
- the time synchronization module 520 is used to perform the first trajectory planning for each axis according to the coordinates of each joint node under the kinematic constraints of each axis of the multi-axis device, and obtain the time when each axis reaches each joint node. Plan the time and determine the synchronization time of each joint node accordingly.
- step S120 of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device please refer to step S120 of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device.
- the speed matching module 530 is used to perform a second trajectory planning for each axis according to the coordinates and synchronization time of each joint node under the kinematic constraints of each axis of the multi-axis device, and obtain the position of each axis in the joint space. trajectory.
- a planning method for a joint space trajectory of a multi-axis device please refer to step S130 of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device.
- Embodiment 2 of a planning device for joint space trajectories of multi-axis equipment executes the method of Embodiment 2 of a planning method for joint space trajectories of multi-axis equipment, and has all its advantages.
- Figure 6 shows the structure of Embodiment 2 of a joint space trajectory planning device for multi-axis equipment, including: an acquisition module 610, an end trajectory planning module 620, a time synchronization module 630 and a speed matching module 640.
- the acquisition module 610 is used for S210: acquiring the pose, kinematic constraints and calculation time granularity of the path node at the end of the multi-axis device.
- step S210 in Embodiment 2 of a joint space trajectory planning method for a multi-axis device.
- the end trajectory planning module 620 is used to plan the trajectory of the end of the multi-axis device in Cartesian space according to the pose of the path node, and obtain the coordinates of the joint nodes of the multi-axis device in the joint space through the inverse kinematic solution.
- step S220 in Embodiment 2 of a joint space trajectory planning method for a multi-axis device please refer to step S220 in Embodiment 2 of a joint space trajectory planning method for a multi-axis device.
- the time synchronization module 630 is used to perform the first trajectory planning for each axis according to the coordinates of each joint node under the kinematic constraints of each axis of the multi-axis device, and obtain the time when each axis reaches each joint node. Plan the time and determine the synchronization time of each joint node accordingly.
- step S230 of Embodiment 2 of a joint space trajectory planning method for a multi-axis device please refer to step S230 of Embodiment 2 of a joint space trajectory planning method for a multi-axis device.
- the speed matching module 640 is used to perform a second trajectory planning for each axis according to the coordinates and synchronization time of each joint node under the kinematic constraints of each axis of the multi-axis device, and obtain the position of each axis in the joint space. trajectory.
- a second trajectory planning for each axis according to the coordinates and synchronization time of each joint node under the kinematic constraints of each axis of the multi-axis device, and obtain the position of each axis in the joint space. trajectory.
- step S240 in Embodiment 2 of a joint space trajectory planning method for a multi-axis device please refer to step S240 in Embodiment 2 of a joint space trajectory planning method for a multi-axis device.
- An embodiment of the present application also provides a computing device, which will be described in detail below in conjunction with Figure 7 .
- the computing device 700 includes a processor 710, a memory 720, a communication interface 730, and a bus 740.
- the communication interface 730 in the computing device 700 shown in this figure can be used to communicate with other devices.
- the processor 710 can be connected to the memory 720 .
- the memory 720 can be used to store the program code and data. Therefore, the memory 720 may be a storage unit internal to the processor 710 , or may be an external storage unit independent of the processor 710 , or may include a storage unit internal to the processor 710 and an external storage unit independent of the processor 710 . part.
- computing device 700 may also include bus 740.
- the memory 720 and the communication interface 730 can be connected to the processor 710 through the bus 740.
- the bus 740 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 740 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 710 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 710 uses one or more integrated circuits to execute relevant programs to implement the technical solutions provided by the embodiments of the present application.
- the memory 720 may include read-only memory and random access memory and provide instructions to the processor 710 and data.
- a portion of processor 710 may also include non-volatile random access memory.
- processor 710 may also store device type information.
- the processor 710 executes the computer execution instructions in the memory 720 to perform the operation steps of each method embodiment.
- computing device 700 may correspond to the corresponding subject in performing the methods according to the various embodiments of the present application, and the above and other operations and/or functions of the various modules in the computing device 700 are respectively intended to implement the present application.
- the corresponding processes of each method in the method embodiments 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.
- computer The readable storage medium may be, for example, but not limited to, an electrical, 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 for use by or in connection 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 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)
- Numerical Control (AREA)
Abstract
Description
本申请要求在先国家申请的优先权,在先国家为中国,在先国家申请的申请号是202211035176.1、申请日是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 202211035176.1 and the filing date is August 26, 2022. The entire content of the prior country application is incorporated herein by reference.
本申请涉及运动控制相关技术领域,尤其涉及一种多轴设备的关节空间轨迹的规划方法及装置。The present application relates to the technical field related to motion control, and in particular to a planning method and device for joint space trajectories of multi-axis equipment.
机器人为一种多轴设备,常常分为几个轴进行单独进给,实际的运动轨迹是几个轴的合运动,在轨迹规划过程中,必须要保证各轴在同一时间点到达指定位置。The robot is a multi-axis device that is often divided into several axes for separate feeds. The actual motion trajectory is the combined motion of several axes. During the trajectory planning process, it must be ensured that each axis reaches the designated position at the same time point.
运动学正解是指给定各轴在各自关节空间的坐标,计算出机器人的末端位姿。运动学逆解是指已知机器人末端位姿,求解机器人各轴在各自的关节空间的位置,它是机器人运动规划和轨迹控制的基础。运动学模型的逆解方法有三种,一种是以解析的方式求各轴在各自关节空间的坐标,另一种以数值迭代(其本质为最优化的过程,求出方程的特解,不能求出所有的解)的方式,最后一种是几何法,只针对一些结构比较简单的机器人。The correct kinematics solution refers to calculating the end pose of the robot given the coordinates of each axis in their respective joint spaces. The inverse solution of kinematics refers to knowing the end pose of the robot and solving the position of each axis of the robot in their respective joint spaces. It is the basis for robot motion planning and trajectory control. There are three inverse solution methods for the kinematic model. One is to find the coordinates of each axis in their respective joint spaces analytically, and the other is to use numerical iteration (which is essentially an optimization process to find a special solution to the equation. It cannot (Find all solutions), the last one is the geometric method, which is only suitable for some robots with relatively simple structures.
现有技术在进行多轴设备的轨迹规划时,有的技术方案分别给定速度规划器的加速时间、匀速时间、减速时间,各轴均按此给定时间进行加速、匀速和减速来达到多轴同步的目的,但这种方法未考虑运动约束,因此,往往导致有些轴不能满足运动约束条件或满足了约束条件但造成了运动时间的浪费;有的技术方案选取时间最长轴作为基准轴,其余轴均按基准轴的时间进行加速、匀速和减速运动来实现多轴同步,但这种方法仍只能保证基准轴满足运动约束条件,无法保证其余轴是否满足;还有的技术方案在所有加速时间、所有匀速时间、所有减速时间中分别选择最长加速时间、最长匀速时间、最长减速时间作为各轴最终的加速时间、匀速时间和减速时间,按照此时间进行加速、匀速和减速运动来实现多轴同步,但这种方法往往会造成运动时间的浪费,降低了机器人的工作效率。总之,现有技术在进行多轴设备的轨迹规划时,无法既能满足运动约束条件又能使多轴设备发挥最佳性能。In the existing technology, when planning the trajectory of multi-axis equipment, some technical solutions respectively specify the acceleration time, uniform speed time and deceleration time of the speed planner, and each axis accelerates, uniformly speeds and decelerates according to this given time to achieve multi-axis tracking. The purpose of axis synchronization, but this method does not consider motion constraints. Therefore, it often results in some axes failing to meet the motion constraints or meeting the constraints but resulting in a waste of motion time; some technical solutions select the axis with the longest time as the reference axis. , the other axes will accelerate, uniformly and decelerate according to the time of the reference axis to achieve multi-axis synchronization. However, this method can only ensure that the reference axis meets the motion constraints and cannot guarantee whether the other axes do; there are other technical solutions. Select the longest acceleration time, the longest constant speed time, and the longest deceleration time among all acceleration times, all constant speed times, and all deceleration times as the final acceleration time, constant speed time, and deceleration time of each axis, and perform acceleration, constant speed, and deceleration according to this time. Decelerating motion is used to achieve multi-axis synchronization, but this method often causes a waste of motion time and reduces the working efficiency of the robot. In short, when performing trajectory planning for multi-axis equipment, the existing technology cannot both satisfy the motion constraints and maximize the performance of the multi-axis equipment.
因此,需要一种轨迹规划方法在进行多轴设备的轨迹规划时,既能满足运动约束条件又能使整个多轴设备的各个轴同步运行,提高了多轴设备的运行性能。Therefore, there is a need for a trajectory planning method that can not only satisfy the motion constraints but also enable all axes of the entire multi-axis equipment to run synchronously when planning the trajectory of multi-axis equipment, thereby improving the operating performance of the multi-axis equipment.
发明内容Contents of the invention
有鉴于此,本申请实施例提供了一种多轴设备的关节空间轨迹的规划方法及装置。In view of this, embodiments of the present application provide a method and device for planning joint space trajectories of multi-axis equipment.
第一方面,本申请实施例提供了一种多轴设备的关节空间轨迹的规划方法,包括:获取多轴设备的各个关节节点在关节空间的坐标,多轴设备的每个轴为所述关节空间 的一个维度;在所述每个轴的运动学约束条件下,根据所述坐标对所述每个轴分别进行第一次轨迹规划,获得所述每个轴到达各关节节点的规划时间,并据此确定每个关节节点的同步时间,其中,一个关节节点的同步时间为所述每个轴同时到达该关节节点的时间;在所述运动学约束条件下,根据所述同步时间和所述坐标对所述每个轴分别进行第二次轨迹规划,获得所述每个轴在所述关节空间的轨迹。In a first aspect, embodiments of the present application provide a method for planning joint space trajectories of a multi-axis device, including: obtaining the coordinates of each joint node of the multi-axis device in the joint space, and each axis of the multi-axis device is the joint. space one dimension; under the kinematic constraints of each axis, conduct the first trajectory planning for each axis according to the coordinates, obtain the planning time for each axis to reach each joint node, and The synchronization time of each joint node is determined based on this, where the synchronization time of a joint node is the time when each axis reaches the joint node at the same time; under the kinematic constraints, according to the synchronization time and the The coordinates perform a second trajectory planning for each axis separately to obtain the trajectory of each axis in the joint space.
由上,相对于现有技术的轨迹规划只在整体运行时间上同步或每个速度变化阶段的时间同步,本申请实施例的技术方案在多轴设备每个轴的运行都其服从运动学约束条件下每个轴在每个关节点同步运行,提高了多轴设备的运行性能,且适合各种通用轴在关节空间的轨迹规划。From the above, compared to the trajectory planning in the prior art that only synchronizes the overall running time or the time of each speed change stage, the technical solution of the embodiment of the present application obeys kinematic constraints during the operation of each axis of the multi-axis equipment. Under certain conditions, each axis operates synchronously at each joint point, which improves the operating performance of multi-axis equipment and is suitable for trajectory planning of various general axes in joint space.
在第一方面的一种可能的实施方式中,所述第一次轨迹规划,包括:根据所述坐标获得所述每个轴的拐点,一个轴的拐点为在所述关节空间中在该轴对应的坐标维度上速度为0的关节节点;在所述运动学约束条件下,通过速度规划对每个轴在每两个相邻拐点之间的轨迹进行规划,获得所述规划时间。In a possible implementation of the first aspect, the first trajectory planning includes: obtaining the inflection point of each axis according to the coordinates, and the inflection point of an axis is the position of the axis in the joint space. The corresponding joint node with a speed of 0 in the coordinate dimension; under the kinematic constraints, plan the trajectory of each axis between every two adjacent inflection points through speed planning to obtain the planning time.
由上,第一次轨迹规划通过各轴在运动学约束条件下自行规划,从而使每个轴运动性能最佳。From the above, the first trajectory planning allows each axis to plan itself under kinematic constraints, so that the motion performance of each axis is optimal.
在第一方面的一种可能的实施方式中,所述据此获得个关节节点的同步时间,包括:根据所述规划时间,获得在第一次轨迹规划的轨迹中所述每个轴在每两个相邻关节节点之间的运行时长;对于任意两个相邻关节节点,对比每个轴在该两个相邻关节节点之间的所述运行时长,选择其中最长的所述运行时长作为在该两个相邻关节节点之间的同步时长;根据所述同步时长获得所述同步时间,其中,一个关节节点的同步时间为在该关节节点的上个相邻关节节点的同步时间上叠加在这两个相邻关节节点之间的同步时长。In a possible implementation of the first aspect, obtaining the synchronization time of each joint node includes: according to the planning time, obtaining the time of each axis in the trajectory of the first trajectory planning. The running time between two adjacent joint nodes; for any two adjacent joint nodes, compare the running time of each axis between the two adjacent joint nodes, and select the longest running time among them. As the synchronization duration between the two adjacent joint nodes; the synchronization time is obtained according to the synchronization duration, wherein the synchronization time of a joint node is on the synchronization time of the previous adjacent joint node of the joint node The synchronization duration superimposed between these two adjacent joint nodes.
由上,对于任意两个相邻关节节点之间选择从各轴的运行时间中选择最长运行时间为该两个相邻关节节点之间的同步时长,该同步时长使各轴均满足运动学约束条件,且通过使最受限的轴(即运行时间最长的轴)的运动性能最佳实现多轴设备整体运行性能最佳。From the above, for any two adjacent joint nodes, select the longest running time from the running time of each axis as the synchronization duration between the two adjacent joint nodes. This synchronization duration makes each axis satisfy the kinematics. constraints, and achieve the best overall operating performance of the multi-axis equipment by optimizing the motion performance of the most constrained axis (that is, the axis with the longest running time).
在第一方面的一种可能的实施方式中,所述第二次轨迹规划包括:在所述运动学约束条件下,根据所述同步时间和所述坐标通过速度规划分别对每个轴的每两个相邻拐点之间的轨迹进行规划,且在规划过程中以各个轴在每个关节节点的速度、加速度或加加速度连续为收敛条件。In a possible implementation of the first aspect, the second trajectory planning includes: under the kinematic constraints, calculating each axis of each axis according to the synchronization time and the coordinate through speed planning. The trajectory between two adjacent inflection points is planned, and during the planning process, the continuity of the speed, acceleration or jerk of each axis at each joint node is the convergence condition.
由上,相对于现有技术的轨迹规划只实现速度和加速度连续,本申请第二次轨迹规划增加了加加速度均连续,降低各轴的振动。From the above, compared with the trajectory planning of the prior art that only achieves continuity of velocity and acceleration, the second trajectory planning of this application increases the continuity of both acceleration and acceleration, reducing the vibration of each axis.
在第一方面的一种可能的实施方式中,所述第二次轨迹规划还包括:当经过设定时间的第二次轨迹规划时还存在某个轴在某一关节节点的速度或加速度或加加速度不连续时,通过平滑滤波使每个轴在每个关节节点的速度、加速度和加加速度的连续。In a possible implementation of the first aspect, the second trajectory planning also includes: when the second trajectory planning of the set time has passed, there is still a speed or acceleration of a certain axis at a certain joint node or When the jerk is discontinuous, smoothing filtering is used to make the velocity, acceleration and jerk of each axis at each joint node continuous.
由上,在第二次轨迹规划时通过设定时间的规划与滤波结合,既实现了规划的精度,还提高了每个轴在每个关节节点的速度、加速度和加加速度的连续性,同时提高了规划的时效。From the above, in the second trajectory planning, the combination of planning and filtering at set time not only achieves the accuracy of planning, but also improves the continuity of the speed, acceleration and jerk of each axis at each joint node. At the same time Improved planning timeliness.
在第一方面的一种可能的实施方式中,在所述速度规划时使用时间余弦为基函数 的表达式表示每个轴在所述关节空间的坐标与时间的关系。In a possible implementation of the first aspect, time cosine is used as the basis function in the speed planning The expression represents the relationship between the coordinates of each axis in the joint space and time.
由上,速度规划通过用时间余弦为基函数的表达式表示速度,无需划定各个速度变化节点的时间,提高了规划的准确性。From the above, speed planning uses the expression of time cosine as the basis function to express the speed, without delineating the time of each speed change node, which improves the accuracy of planning.
在第一方面的一种可能的实施方式中,所述运动学约束条件包括每个轴的最大允许速度、最大允许加速度或最大允许加加速度。In a possible implementation of the first aspect, the kinematic constraints include a maximum allowable speed, a maximum allowable acceleration, or a maximum allowable jerk of each axis.
由上,在第一次轨迹规划时各轴遵从各自的运动学约束条件,便于在规划中各轴的轨迹达到自身的最佳性能,在第二次轨迹规划时各轴在时间同步的基础上遵从各自的运动学约束条件规划,使多轴设备整体的运行性能达到提高。From the above, in the first trajectory planning, each axis obeys its own kinematic constraints, so that the trajectory of each axis in the planning can achieve its best performance. In the second trajectory planning, each axis is synchronized in time. Complying with the respective kinematic constraint planning, the overall operating performance of the multi-axis equipment can be improved.
第二方面,本申请实施例提供了一种多轴设备的关节空间轨迹的规划装置,包括:获取模块、时间同步模块和速度匹配模块;所述获取模块用于获取多轴设备的各个关节节点在关节空间的坐标,多轴设备的每个轴为所述关节空间的一个维度;所述时间同步模块用于在所述每个轴的运动学约束条件下,根据所述坐标对所述每个轴分别进行第一次轨迹规划,获得所述每个轴到达各关节节点的规划时间,并据此确定每个关节节点的同步时间,其中,一个关节节点的同步时间为所述每个轴同时到达该关节节点的时间;所述速度匹配模块用于在所述运动学约束条件下,根据所述同步时间和所述坐标对所述每个轴分别进行第二次轨迹规划,获得所述每个轴在所述关节空间的轨迹。In the second aspect, embodiments of the present application provide a planning device for joint space trajectories of multi-axis equipment, including: an acquisition module, a time synchronization module and a speed matching module; the acquisition module is used to obtain each joint node of the multi-axis equipment In the coordinates of the joint space, each axis of the multi-axis device is one dimension of the joint space; the time synchronization module is used to calculate the coordinates of each axis according to the coordinates under the kinematic constraints of each axis. Conduct the first trajectory planning for each axis respectively, obtain the planning time for each axis to reach each joint node, and determine the synchronization time of each joint node accordingly, where the synchronization time of a joint node is the synchronization time of each axis The time to reach the joint node at the same time; the speed matching module is used to perform a second trajectory planning for each axis according to the synchronization time and the coordinates under the kinematic constraints to obtain the The trajectory of each axis in the joint space.
由上,相对于现有技术的轨迹规划只在整体运行时间的同步或每个速度变化阶段的时间同步,本申请实施例的技术方案在多轴设备每个轴的运行都其服从运动学约束条件下每个轴在每个关节点同步运行,提高了多轴设备的运行性能,且适合各种通用轴在关节空间的轨迹规划。From the above, compared to the trajectory planning in the prior art, which only synchronizes the overall running time or the time of each speed change stage, the technical solution of the embodiment of the present application obeys the kinematic constraints during the operation of each axis of the multi-axis equipment. Under certain conditions, each axis operates synchronously at each joint point, which improves the operating performance of multi-axis equipment and is suitable for trajectory planning of various general axes in joint space.
在第二方面的一种可能的实施方式中,时间同步模块在进行第一次轨迹规划时,具体包括:根据所述坐标获得所述每个轴的拐点,一个轴的拐点为在所述关节空间中在该轴对应的坐标维度上速度为0的关节节点;在所述运动学约束条件下,通过速度规划对每个轴在每两个相邻拐点之间的轨迹进行规划,获得所述规划时间。In a possible implementation of the second aspect, when the time synchronization module performs the first trajectory planning, it specifically includes: obtaining the inflection point of each axis according to the coordinates, and the inflection point of an axis is at the joint. The joint node in the space with a speed of 0 in the coordinate dimension corresponding to the axis; under the kinematic constraints, the trajectory of each axis between every two adjacent inflection points is planned through speed planning to obtain the above Planning time.
由上,第一次轨迹规划通过各轴在运动学约束条件下自行规划,从而使每个轴运动性能最佳。From the above, the first trajectory planning allows each axis to plan itself under kinematic constraints, so that the motion performance of each axis is optimal.
在第二方面的一种可能的实施方式中,时间同步模块在获得各关节节点的同步时间时,具体包括:根据所述规划时间,获得在第一次轨迹规划的轨迹中所述每个轴在每两个相邻关节节点之间的运行时长;对于任意两个相邻关节节点,对比每个轴在该两个相邻关节节点之间的所述运行时长,选择其中最长的所述运行时长作为在该两个相邻关节节点之间的同步时长;根据所述同步时长获得所述同步时间,其中,一个关节节点的同步时间为在该关节节点的上个相邻关节节点的同步时间上叠加在这两个相邻关节节点之间的同步时长。In a possible implementation of the second aspect, when the time synchronization module obtains the synchronization time of each joint node, it specifically includes: according to the planning time, obtaining each axis in the trajectory of the first trajectory planning. The running time between each two adjacent joint nodes; for any two adjacent joint nodes, compare the running time of each axis between the two adjacent joint nodes, and select the longest one The running time is used as the synchronization time between the two adjacent joint nodes; the synchronization time is obtained according to the synchronization time, wherein the synchronization time of a joint node is the synchronization of the previous adjacent joint node of the joint node The synchronization duration between these two adjacent joint nodes is superimposed in time.
由上,对于任意两个相邻关节节点之间选择从各轴的运行时间中选择最长运行时间为该两个相邻关节节点之间的同步时长,该同步时长使各轴均满足运动学约束条件,且通过使最受限的轴(即运行时间最长的轴)的运动性能最佳实现多轴设备整体运行性能最佳。 From the above, for any two adjacent joint nodes, select the longest running time from the running time of each axis as the synchronization duration between the two adjacent joint nodes. This synchronization duration makes each axis satisfy the kinematics. constraints, and achieve the best overall operating performance of the multi-axis equipment by optimizing the motion performance of the most constrained axis (that is, the axis with the longest running time).
在第二方面的一种可能的实施方式中,速度匹配模块在进行第二次轨迹规划时,具体包括:在所述运动学约束条件下,根据所述同步时间和所述坐标通过速度规划分别对每个轴的每两个相邻拐点之间的轨迹进行规划,且在规划过程中以各个轴在每个关节节点的速度、加速度或加加速度连续为收敛条件。In a possible implementation of the second aspect, when the speed matching module performs the second trajectory planning, it specifically includes: under the kinematic constraints, according to the synchronization time and the coordinates, respectively through the speed planning The trajectory between every two adjacent inflection points of each axis is planned, and during the planning process, the continuity of the speed, acceleration or jerk of each axis at each joint node is the convergence condition.
由上,相对于现有技术的轨迹规划只实现速度和加速度连续,本申请第二次轨迹规划增加了加加速度均连续,降低各轴的振动。From the above, compared with the trajectory planning of the prior art that only achieves continuity of velocity and acceleration, the second trajectory planning of this application increases the continuity of both acceleration and acceleration, reducing the vibration of each axis.
又由上,相对于现有技术的轨迹规划只实现速度和加速度连续,本申请第二次轨迹规划增加了加加速度均连续,降低各轴的振动。From the above, compared with the trajectory planning of the prior art that only achieves continuity of velocity and acceleration, the second trajectory planning of this application increases the continuity of both acceleration and acceleration, reducing the vibration of each axis.
在第二方面的一种可能的实施方式中,速度匹配模块在进行第二次轨迹规划时,还具体包括:当经过设定时间的第二次轨迹规划时还存在某个轴在某一关节节点的速度或加速度或加加速度不连续时,通过平滑滤波使每个轴在每个关节节点的速度、加速度和加加速度的连续。In a possible implementation of the second aspect, when the speed matching module performs the second trajectory planning, it also specifically includes: when the second trajectory planning of the set time has passed, there is still a certain axis at a certain joint. When the velocity, acceleration, or jerk of a node is discontinuous, smoothing filtering is used to make the velocity, acceleration, and jerk of each axis at each joint node continuous.
由上,在第二次轨迹规划时通过设定时间的规划与滤波结合,既实现了规划的精度,还提高了每个轴在每个关节节点的速度、加速度和加加速度的连续性,同时提高了规划的时效。From the above, in the second trajectory planning, the combination of planning and filtering at set time not only achieves the accuracy of planning, but also improves the continuity of the speed, acceleration and jerk of each axis at each joint node. At the same time Improved planning timeliness.
在第二方面的一种可能的实施方式中,在所述速度规划时使用时间余弦为基函数的表达式表示每个轴在所述关节空间的坐标与时间的关系。In a possible implementation of the second aspect, during the speed planning, an expression using time cosine as a basis function is used to represent the relationship between the coordinates of each axis in the joint space and time.
由上,速度规划通过用时间余弦为基函数的表达式表示速度,无需划定各个速度变化节点的时间,提高了规划的准确性。From the above, speed planning uses the expression of time cosine as the basis function to express the speed, without delineating the time of each speed change node, which improves the accuracy of planning.
在第二方面的一种可能的实施方式中,所述运动学约束条件包括每个轴的最大允许速度、最大允许加速度或最大允许加加速度。In a possible implementation of the second aspect, the kinematic constraints include a maximum allowable speed, a maximum allowable acceleration, or a maximum allowable jerk of each axis.
由上,在第一次轨迹规划时各轴遵从各自的运动学约束条件,便于在规划中各轴的轨迹达到自身的最佳性能,在第二次轨迹规划时各轴在时间同步的基础上遵从各自的运动学约束条件规划,使多轴设备整体的运行性能达到提高。From the above, in the first trajectory planning, each axis obeys its own kinematic constraints, so that the trajectory of each axis in the planning can achieve its best performance. In the second trajectory planning, each axis is synchronized in time. Complying with the respective kinematic constraint planning, the overall operating performance of the multi-axis equipment can be improved.
第三方面,本申请实施例提供了一种计算设备,包括,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 the 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 of the first aspect of the application. .
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附 图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。In order to explain the technical solutions of the embodiments of the present application more clearly, the appendices required to be used in the embodiments will be described below. The drawings are briefly introduced, and it should be understood that the following drawings only show certain embodiments of the present application, and therefore should not be regarded as limiting the scope. For those of ordinary skill in the art, without exerting creative efforts, Under the premise, other related drawings can also be obtained based on these drawings.
图1为本申请的一种多轴设备的关节空间轨迹的规划方法实施例一的流程示意图;Figure 1 is a schematic flowchart of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device according to the present application;
图2为本申请的一种多轴设备的关节空间轨迹的规划方法实施例二的流程示意图;Figure 2 is a schematic flowchart of Embodiment 2 of a planning method for a joint space trajectory of a multi-axis device according to the present application;
图3为本申请的一种多轴设备的关节空间轨迹的规划方法实施例二同步时间确定方法的流程示意图;Figure 3 is a schematic flowchart of a synchronization time determination method in Embodiment 2 of a joint space trajectory planning method for a multi-axis device of the present application;
图4为本申请的一种多轴设备的关节空间轨迹的规划方法实施例二的速度匹配方法的流程示意图;Figure 4 is a schematic flowchart of the speed matching method in Embodiment 2 of the joint space trajectory planning method of a multi-axis device of the present application;
图5为本申请的一种多轴设备的关节空间轨迹的规划装置实施例一的结构示意图;Figure 5 is a schematic structural diagram of Embodiment 1 of a planning device for joint space trajectories of multi-axis equipment according to the present application;
图6为本申请的一种多轴设备的关节空间轨迹的规划装置实施例二的结构示意图;Figure 6 is a schematic structural diagram of Embodiment 2 of a planning device for joint space trajectories of multi-axis equipment according to the present application;
图7为本申请各实施例的一种计算设备的结构示意图。Figure 7 is a schematic structural diagram of a computing device according to various embodiments of the present application.
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。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.
笛卡尔空间、笛卡尔空间坐标:笛卡尔空间为直角坐标空间,笛卡尔空间的坐标为位姿,包括位置坐标和姿态坐标,位置坐标为三维直角坐标,姿态坐标为物体当前位置相对于三维直角坐标的旋转角度,示意地,可以用欧拉角度的三个角度坐标表示姿态。Cartesian space, Cartesian space coordinates: Descartes space is a rectangular coordinate space, and the coordinates of the Cartesian space are poses, including position coordinates and attitude coordinates. The position coordinates are three-dimensional rectangular coordinates, and the attitude coordinates are the current position of the object relative to the three-dimensional rectangular coordinates. The rotation angle of the coordinates, schematically, can be represented by three angular coordinates of Euler angles.
关节空间、关节空间坐标:关节空间为多轴设备的每个轴的运动空间,每个轴为关节空间的一维,每个轴都是通用轴,可以为平移或旋转。关节空间坐标为轴的位移或旋转角度。Joint space, joint space coordinates: Joint space is the motion space of each axis of a multi-axis device. Each axis is one dimension of the joint space. Each axis is a universal axis and can be translation or rotation. The joint space coordinate is the displacement or rotation angle of the axis.
轨迹:为运动物体的坐标与时间关系,笛卡尔空间轨迹为笛卡尔空间坐标与时间的关系,关节空间轨迹为关节空间坐标与时间的关系。 Trajectory: It is the relationship between the coordinates and time of the moving object. The Cartesian space trajectory is the relationship between the Cartesian space coordinates and time. The joint space trajectory is the relationship between the joint space coordinates and time.
运动学约束条件:包括最大允许速度、最大允许加速度、最大允许加加速度。运动学约束条件对具体的轴而言,是轴的关节空间的约束条件。当一个轴为平移轴,其运动学约束条件为位移方面的最大允许速度、最大允许加速度、最大允许加加速度;当一个轴为旋转轴,其运动学约束条件为转动方面的最大允许速度、最大允许加速度、最大允许加加速度。Kinematic constraints: including maximum allowable speed, maximum allowable acceleration, and maximum allowable jerk. Kinematic constraints are constraints on the joint space of the axis for a specific axis. When an axis is a translation axis, its kinematic constraints are the maximum allowable speed, maximum allowable acceleration, and maximum allowable jerk in terms of displacement; when an axis is a rotation axis, its kinematic constraints are the maximum allowable speed, maximum allowable acceleration, and maximum allowable jerk in terms of rotation. Allowable acceleration, maximum allowable jerk.
速度规划器:运动物体的轨迹和速度规划的装置,通过轨迹插补法规划物体的速度和轨迹,在速度规划时保持各点的速度连续和加速度连续,且服从运动学约束条件。速度规划器既可以对笛卡尔空间的轨迹进行规划,也可以对关节空间的轨迹进行规划。规划时把速度描述为时间的表达式,例如,以时间为基的多项式。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 both Cartesian space and joint space. When planning, describe velocity as an expression in time, for example, a polynomial based on time.
本申请的实施例的技术方案包括:获取多轴设备的各个关节节点在关节空间的坐标,在每个轴的运动学约束条件下,根据所述坐标对每个轴分别进行二次轨迹规划,第一次轨迹规划确定每个关节节点的同步时间,第二次轨迹规划实现匹配同步时间的每个轴的运动速度,并获得在关节空间最终的轨迹。本申请各实施例的技术方案适合各种通用轴在关节空间的轨迹规划,在多轴设备每个轴均服从运动学的约束条件下使每个轴同步运行,从而提高了多轴设备整体的运行性能。在一些实施例中还通过各轴在关节节点的加加速度连续,对各轴的驱动电机进行抑振,减小各轴的振动。The technical solution of the embodiment of the present application includes: obtaining the coordinates of each joint node of the multi-axis device in the joint space, and performing secondary trajectory planning for each axis according to the coordinates under the kinematic constraints of each axis, The first trajectory planning determines the synchronization time of each joint node, and the second trajectory planning implements the movement speed of each axis matching the synchronization time and obtains the final trajectory in the joint space. The technical solutions of each embodiment of the present application are suitable for trajectory planning of various universal axes in joint space, and allow each axis of the multi-axis device to operate synchronously under the condition that each axis obeys kinematic constraints, thereby improving the overall efficiency of the multi-axis device. Operational performance. In some embodiments, the vibration of the drive motor of each axis is also suppressed to reduce the vibration of each axis through the continuous acceleration of each axis at the joint node.
下面结合附图介绍本申请的一种多轴设备的关节空间轨迹的规划方法实施例、装置实施例和其他相关实施例。The following describes the method embodiments, device embodiments and other related embodiments of the present application for planning a joint space trajectory of a multi-axis device with reference to the accompanying drawings.
本申请中多轴设备具有多个轴,可以为机器人、机床。其轨迹节点为多轴设备末端在笛卡尔空间的关键点;多轴设备末端可以为多轴设备对外操作部位,如机器人的手指、机床的刀具、塔吊的机械臂等;多轴设备的关节节点为多轴设备末端到达轨迹节点时多轴设备各个轴在关节空间中到达的点。The multi-axis equipment in this application has multiple axes and can be a robot or a machine tool. The trajectory node is the key point of the end of the multi-axis equipment in Cartesian space; the end of the multi-axis equipment can be the external operating part of the multi-axis equipment, such as the fingers of the robot, the cutter of the machine tool, the mechanical arm of the tower crane, etc.; the joint nodes of the multi-axis equipment It is the point reached by each axis of the multi-axis device in the joint space when the end of the multi-axis device reaches the trajectory node.
下面首先结合附图1至图4介绍一种多轴设备的关节空间轨迹的各规划方法实施例。The following first introduces various planning method embodiments of a joint space trajectory of a multi-axis device with reference to the accompanying drawings 1 to 4.
一种多轴设备的关节空间轨迹的规划方法实施例一包括:获取多轴设备的各个关节节点在关节空间的坐标;在每个轴的运动学约束条件下,根据所述坐标对每个轴分别进行第一次轨迹规划,获得每个轴到达各关节节点的规划时间,并据此确定每个关节节点的同步时间;在所述运动学约束条件下,根据所述同步时间和所述坐标对每个轴分别进行第二次轨迹规划,获得每个轴在关节空间的轨迹。Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device includes: obtaining the coordinates of each joint node of the multi-axis device in the joint space; under the kinematic constraints of each axis, calculating each axis according to the coordinates Carry out the first trajectory planning respectively, obtain the planning time for each axis to reach each joint node, and determine the synchronization time of each joint node accordingly; under the kinematic constraints, according to the synchronization time and the coordinates Perform a second trajectory planning for each axis to obtain the trajectory of each axis in the joint space.
图1示出了一种多轴设备的关节空间轨迹的规划方法实施例一的流程,包括步骤S110至S130。Figure 1 shows the process of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device, including steps S110 to S130.
S110:获取的各个关节节点在关节空间的坐标,多轴设备的每个轴为所述关节空间的一个维度。S110: Obtain the coordinates of each joint node in the joint space. Each axis of the multi-axis device is one dimension of the joint space.
示意地,关节空间的关节节点坐标组成一个N*M维的矩阵,N表示N个关节节点,M表示M个轴。Schematically, the joint node coordinates in the joint space form an N*M-dimensional matrix, where N represents N joint nodes and M represents M axes.
其中,关节节点在关节空间的坐标可以根据多轴设备末端的位姿通过运动学逆解获得。在一些实施例中多轴设备末端的位姿通过多轴设备末端的轨迹规划获得。Among them, the coordinates of the joint nodes in the joint space can be obtained through the inverse kinematics solution based on the posture of the end of the multi-axis device. In some embodiments, the pose of the end of the multi-axis device is obtained through trajectory planning of the end of the multi-axis device.
其中,多轴设备的轴为通用轴,包括平移轴和/或旋转轴。示意地,平移轴,如 气缸的轴,其节点坐标为平移的位移,旋转轴,如电机的轴,其节点坐标为旋转的角度。Among them, the axes of the multi-axis device are universal axes, including translation axes and/or rotation axes. Schematically, the translation axis, as The node coordinates of the axis of the cylinder are the translational displacement, and the rotation axis, such as the axis of the motor, its node coordinates are the angle of rotation.
其中,运动学约束条件用于对在各个轴的轨迹进行约束,每个轴具有对应的运动学约束条件。本申请各实施例在后续的第一轨迹规划和第二次轨迹规划都运动学约束条件。Among them, kinematic constraints are used to constrain the trajectory of each axis, and each axis has corresponding kinematic constraints. Each embodiment of the present application has kinematic constraints in the subsequent first trajectory planning and second trajectory planning.
其中,采样周期为本申请各实施例描述时间的粒度。示例地,采样周期的轴驱动脉冲周期。The sampling period is the granularity of time described in each embodiment of this application. For example, the axis of the sampling period drives the pulse period.
S120:在多轴设备的每个轴的运动学约束条件下,根据各关节节点的坐标对每个轴分别进行第一次轨迹规划,获得所述每个轴到达各关节节点的规划时间,并据此确定每个关节节点的同步时间。S120: Under the kinematic constraints of each axis of the multi-axis device, perform the first trajectory planning for each axis according to the coordinates of each joint node, and obtain the planning time for each axis to reach each joint node, and Based on this, the synchronization time of each joint node is determined.
其中,一个关节节点的同步时间每个轴同时到达该关节节点的时间,即在一个关节节点的同步时间各个轴同步到达该关节节点的坐标表示各个轴的位置。Among them, the synchronization time of a joint node is the time when each axis reaches the joint node at the same time, that is, the coordinates of each axis arriving at the joint node synchronously at the synchronization time of a joint node represent the position of each axis.
其中,运动学约束条件用于对在各个轴的轨迹进行约束,每个轴具有对应的运动学约束条件。本申请各实施例在后续的第一轨迹规划和第二次轨迹规划都遵从该运动学约束条件。Among them, kinematic constraints are used to constrain the trajectory of each axis, and each axis has corresponding kinematic constraints. In each embodiment of the present application, the subsequent first trajectory planning and second trajectory planning all comply with the kinematic constraints.
其中,第一次轨迹规划时,通过速度规划器进行速度规划获得各关节节点的坐标与时间的关系,从而完成第一次轨迹规划,速度规划器描述每个维度的速度与时间的关系可以用S形曲线即S形加减速对速度进行规划,也可以用根据其他形状线如梯形线对速度进行规划。速度规划器可以利用时间为基的多项式描述速度与时间的关系,也可以利用时间的余弦函数为基的表达式描述速度与时间的关系。Among them, during the first trajectory planning, the velocity planner is used to perform velocity planning to obtain the relationship between the coordinates of each joint node and time, thereby completing the first trajectory planning. The velocity planner describes the relationship between velocity and time in each dimension using The S-shaped curve, that is, S-shaped acceleration and deceleration, is used to plan the speed. The speed can also be planned based on other shape lines such as trapezoidal lines. The speed planner can use a time-based polynomial to describe the relationship between speed and time, or it can use an expression based on the cosine function of time to describe the relationship between speed and time.
其中,因为轨迹描述了关节空间的坐标与时间的关系,根据第一次轨迹规划所获得的轨迹,可以获得每个轴到达各关节节点的规划时间。对于任意两个相邻关节节点,用一个轴到达这两个相邻关节节点中后一个关节节点的规划时间减去该轴到达这两个相邻关节节点中前一个关节节点的规划时间,获得该轴在这两个相邻关节节点之间的运行时长。Among them, because the trajectory describes the relationship between the coordinates of the joint space and time, based on the trajectory obtained from the first trajectory planning, the planning time for each axis to reach each joint node can be obtained. For any two adjacent joint nodes, the planning time for an axis to reach the latter of the two adjacent joint nodes is subtracted from the planning time for the axis to reach the previous joint node of the two adjacent joint nodes to obtain The length of time the axis runs between these two adjacent joint nodes.
其中,对于任意两个相邻关节节点,对比每个轴在该两个相邻关节节点之间的运行时长,选择其中最长的运行时长为多轴设备各轴在该两个相邻关节节点之间的同步时长。根据该同步时长获得多轴设备末端到达每个关节节点的同步时间,一个关节节点的同步时间为在该关节节点的上个相邻关节节点的同步时间上叠加在这两个相邻关节节点之间的同步时长。Among them, for any two adjacent joint nodes, compare the running time of each axis between the two adjacent joint nodes, and select the longest running time for each axis of the multi-axis equipment between the two adjacent joint nodes. synchronization duration between. The synchronization time of the multi-axis equipment end reaching each joint node is obtained according to the synchronization duration. The synchronization time of a joint node is the synchronization time of the previous adjacent joint node of the joint node superimposed on the two adjacent joint nodes. synchronization time between.
S130:在多轴设备的每个轴的运动学约束条件下,根据各关节节点的坐标和同步时间对每个轴分别进行第二次轨迹规划,获得每个轴在关节空间的轨迹。S130: Under the kinematic constraints of each axis of the multi-axis device, perform a second trajectory planning for each axis based on the coordinates and synchronization time of each joint node to obtain the trajectory of each axis in the joint space.
其中,每个轴在关节空间的轨迹组成多轴设备在关节空间的轨迹。Among them, the trajectory of each axis in the joint space constitutes the trajectory of the multi-axis device in the joint space.
其中,第二次轨迹规划利用步骤S120中介绍的速度规划器对每个轴关节空间轨迹进行第二次轨迹规划,规划时还遵从以下条件:1)在规划过程中每个轴到达每个关节节点的时间为对应的同步时间;2)每个轴在各关节节点的速度、加速度或加加速度连续。Among them, the second trajectory planning uses the speed planner introduced in step S120 to perform the second trajectory planning on the joint space trajectory of each axis. The planning also complies with the following conditions: 1) Each axis reaches each joint during the planning process. The time of the node is the corresponding synchronization time; 2) The speed, acceleration or jerk of each axis at each joint node is continuous.
其中,为实现各个轴在每个关节节点的速度、加速度或加加速度连续,在一些实施例中,通过增加规划时间经过足够多次数的前瞻速度规划的迭代来实现,在另一些 实施例中,通过前瞻速度规划的多次迭代和滤波综合实现。Among them, in order to realize the continuous velocity, acceleration or jerk of each axis at each joint node, in some embodiments, this is achieved by increasing the planning time and going through a sufficient number of iterations of the forward velocity planning. In other embodiments, In the embodiment, this is achieved through multiple iterations of forward speed planning and filter synthesis.
综上,一种多轴设备的关节空间轨迹的规划方法实施例一在每个轴的运动学约束条件下,根据多轴设备的各个关节节点在关节空间的坐标对每个轴分别进行第一次轨迹规划,获得每个轴到达各关节节点的规划时间,并据此确定每个关节节点的同步时间,在根据所述同步时间和所述坐标对每个轴分别进行第二次轨迹规划,获得每个轴在关节空间的轨迹。本方法实施例一适合各种通用轴在关节空间的轨迹规划,在多轴设备每个轴均服从运动学约束条件下每个轴在每个节点同步运行,从而提高了多轴设备整体的运行性能。In summary, Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device performs a first step on each axis according to the coordinates of each joint node of the multi-axis device in the joint space under the kinematic constraints of each axis. Secondary trajectory planning, obtain the planning time for each axis to reach each joint node, and determine the synchronization time of each joint node accordingly, and conduct the second trajectory planning for each axis based on the synchronization time and the coordinates, Obtain the trajectory of each axis in joint space. Embodiment 1 of this method is suitable for trajectory planning of various general axes in joint space. Under the condition that each axis of the multi-axis device obeys kinematic constraints, each axis runs synchronously at each node, thereby improving the overall operation of the multi-axis device. performance.
下面首先结合附图2至图4介绍一种多轴设备的关节空间轨迹的规划方法实施例二。Embodiment 2 of a planning method for a joint space trajectory of a multi-axis device is first introduced below with reference to Figures 2 to 4 of the accompanying drawings.
一种多轴设备的关节空间轨迹的规划方法实施例二在一种多轴设备的关节空间轨迹的规划方法实施例一的基础上,第一次轨迹规划时通过在每两个相邻节点之间选择运行时长最长的轴的运行时间为同步时间使至少一个轴的运动性能最佳,在第二次轨迹规划时通过设定时长的第二次轨迹规划加平滑滤波的方法,不仅实现各个轴到达每个关节节点的速度、加速度或加加速度连续,而且规划效率高,且在两次轨迹规划过程中均选择以时间余弦为基函数的表达式描述速度,进一步提高了规划的精度。Embodiment 2 of a planning method for joint space trajectories of multi-axis equipment. Based on Embodiment 1 of a planning method for joint space trajectories of multi-axis equipment, the first trajectory planning is performed by selecting between every two adjacent nodes. The running time of the axis with the longest running time is selected as the synchronization time to ensure that at least one axis has the best motion performance. In the second trajectory planning, by setting the second trajectory planning with a duration and adding smoothing filtering, not only can each The speed, acceleration or jerk of the axis when it reaches each joint node is continuous, and the planning efficiency is high. In the two trajectory planning processes, expressions based on time cosine are chosen to describe the speed, which further improves the accuracy of planning.
图2示出了一种多轴设备的关节空间轨迹的规划方法实施例二的流程,包括步骤S210至S240。Figure 2 shows the process of Embodiment 2 of a planning method for a joint space trajectory of a multi-axis device, including steps S210 to S240.
S210:获取多轴设备末端的路径节点的位姿、运动学约束条件和计算时间颗粒度。S210: Obtain the pose, kinematic constraints and calculation time granularity of the path node at the end of the multi-axis device.
其中,路径节点为多轴设备末端在笛卡尔空间的运行路径中若干的关键点,用于规划多轴设备末端在笛卡尔空间的轨迹。路径节点根据实际场景的多轴设备末端的关键位置获取。Among them, the path nodes are several key points in the running path of the multi-axis equipment end in Cartesian space, which are used to plan the trajectory of the multi-axis equipment end in Cartesian space. The path nodes are obtained based on the key positions of the end of the multi-axis equipment in the actual scene.
其中,计算时间颗粒度为轨迹规划时的采用最小时间间隔,该颗粒度越小,则计算出的轨迹越平滑,但计算量也越大,一般以轴的驱动脉冲周期为采样周期。Among them, the calculation time granularity is the minimum time interval used in trajectory planning. The smaller the granularity, the smoother the calculated trajectory, but the greater the calculation amount. Generally, the driving pulse period of the axis is used as the sampling period.
其中,运动学约束条件请参照一种多轴设备的关节空间轨迹的规划方法实施例一的步骤S110中的描述。For the kinematic constraints, please refer to the description in step S110 of Embodiment 1 of a joint space trajectory planning method for a multi-axis device.
S220:根据路径节点的位姿规划多轴设备末端在笛卡尔空间的轨迹,并通过运动学逆解获得多轴设备的关节节点在关节空间中的坐标。S220: Plan the trajectory of the end of the multi-axis device in Cartesian space based on the pose of the path node, and obtain the coordinates of the joint nodes of the multi-axis device in the joint space through the inverse kinematic solution.
其中,根据多轴设备末端的路径节点的位姿规划多轴设备末端在笛卡尔空间的轨迹,在一些实施例中通过笛卡尔空间的路径规划加轨迹规划两步实现,在另一些实施例中通过笛卡尔空间的轨迹规划一步实现,本实施例中不受限。Among them, the trajectory of the end of the multi-axis equipment in Cartesian space is planned according to the pose of the path node at the end of the multi-axis equipment. In some embodiments, it is implemented through two steps of path planning and trajectory planning in Cartesian space. In other embodiments, It is realized in one step through trajectory planning in Cartesian space, which is not limited in this embodiment.
其中,关节空间的关节节点对应笛卡尔空间轨迹上的轨迹节点,轨迹节点为笛卡尔空间轨迹上的关键点,其确定笛卡尔空间轨迹的趋势。Among them, the joint nodes in the joint space correspond to the trajectory nodes on the Cartesian space trajectory, and the trajectory nodes are key points on the Cartesian space trajectory, which determine the trend of the Cartesian space trajectory.
其中,通过运动学逆解获得各关节节点在关节空间的坐标,运动学逆解方法包括解析法、迭代法和几何法,在本实施例中不受限。Among them, the coordinates of each joint node in the joint space are obtained through the inverse kinematics solution. The inverse kinematics solution methods include analytical methods, iterative methods and geometric methods, which are not limited in this embodiment.
其中,此时获得的各关节节点在关节空间的坐标可以为一种多轴设备的关节空间轨迹的规划方法实施例一的步骤S110所获取。The coordinates of each joint node in the joint space obtained at this time may be obtained in step S110 of the first embodiment of a joint space trajectory planning method for a multi-axis device.
S230:在多轴设备的每个轴的运动学约束条件下,根据各关节节点的坐标对每个 轴分别进行第一次轨迹规划,获得所述每个轴到达各关节节点的规划时间,并据此确定每个关节节点的同步时间。S230: Under the kinematic constraints of each axis of the multi-axis device, calculate each joint node based on the coordinates of each joint node. The axes perform first trajectory planning respectively, and the planning time for each axis to reach each joint node is obtained, and the synchronization time of each joint node is determined accordingly.
其中,本步骤在一种多轴设备的关节空间轨迹的规划方法实施例一的步骤S120的基础上,通过保持各个轴拐点速度为0进行分段规划提高每个轴的规划精度,同时速度规划器根据S形曲线即S形加减速对速度进行规划,且利用时间的余弦函数为基的表达式描述速度与时间的关系,进一步提高规划精度。Among them, this step is based on step S120 of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device, and performs segment planning by keeping the inflection point speed of each axis at 0 to improve the planning accuracy of each axis, while speed planning The device plans the speed based on the S-shaped curve, that is, S-shaped acceleration and deceleration, and uses an expression based on the cosine function of time to describe the relationship between speed and time to further improve the planning accuracy.
其中,本步骤的详细方法请参照一种多轴设备的关节空间轨迹的规划方法实施例二的同步时间确定方法,这里不再详述。For the detailed method of this step, please refer to the synchronization time determination method in Embodiment 2 of a joint space trajectory planning method for a multi-axis device, which will not be described in detail here.
S240:在多轴设备的每个轴的运动学约束条件下,根据各关节节点的坐标和同步时间对每个轴分别进行第二次轨迹规划,获得每个轴在关节空间的轨迹。S240: Under the kinematic constraints of each axis of the multi-axis device, perform a second trajectory planning for each axis based on the coordinates and synchronization time of each joint node to obtain the trajectory of each axis in the joint space.
其中,本步骤在一种多轴设备的关节空间轨迹的规划方法实施例一的步骤S120的基础上,还通过滤波提高每个轴在各关节节点的速度、加速度和加加速度的连续,且同利用时间的余弦函数为基的表达式描述速度与时间的关系。Among them, this step is based on step S120 of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device, and also improves the continuity of the speed, acceleration and jerk of each axis at each joint node through filtering, and at the same time Use the expression based on the cosine function of time to describe the relationship between speed and time.
其中,本步骤的详细方法请参照一种多轴设备的关节空间轨迹的规划方法实施例二的速度匹配方法,这里不再详述。For the detailed method of this step, please refer to the speed matching method in Embodiment 2 of a joint space trajectory planning method for a multi-axis device, which will not be described in detail here.
图3示出了一种多轴设备的关节空间轨迹的规划方法实施例二的同步时间确定方法流程,即步骤230包括步骤S2310至S2350。Figure 3 shows the flow of the synchronization time determination method in Embodiment 2 of a planning method for a joint space trajectory of a multi-axis device, that is, step 230 includes steps S2310 to S2350.
S2310:根据各关节节点的坐标,获得每个轴的拐点。S2310: Obtain the inflection point of each axis based on the coordinates of each joint node.
其中,一个轴的拐点为该轴在关节空间速度中为零的点,是该轴正向运行和反向运动的转折点,也称为锚点。通过分析每个轴的各关节节点之间的坐标变化可以获得该轴的拐点,获得的方法包括微分法、对比法等。Among them, the inflection point of an axis is the point where the axis's velocity in the joint space is zero. It is the turning point of the forward and reverse motion of the axis, also called the anchor point. By analyzing the coordinate changes between the joint nodes of each axis, the inflection point of the axis can be obtained. The methods used include differential method, contrast method, etc.
其中,一个轴的拐点也包括该轴的第一个和最后一个关节节点,在这两个关节节点,关节空间的速度也为0。Among them, the inflection point of an axis also includes the first and last joint nodes of the axis. At these two joint nodes, the speed of the joint space is also 0.
S2320:在运动学约束条件下利用速度规划器对每个轴的每两个相邻拐点之间的关节空间轨迹进行第一次轨迹规划,获得每个轴到达每个关节节点的规划时间。S2320: Use the speed planner to perform the first trajectory planning of the joint space trajectory between every two adjacent inflection points of each axis under kinematic constraints, and obtain the planning time for each axis to reach each joint node.
其中,在第一次轨迹规划过程中每个轴的规划分别进行,且通过速率规划器对每个轴的每两个相邻拐点之间的速度进行规划,从而获得每个轴的每两个相邻拐点之间的轨迹。在按拐点分段规划时,保持每个轴在每个拐点的速度为0。Among them, in the first trajectory planning process, the planning of each axis is carried out separately, and the speed between every two adjacent inflection points of each axis is planned through the rate planner, so as to obtain every two The trajectory between adjacent inflection points. When planning by inflection points, keep the speed of each axis at each inflection point at 0.
其中,在速度规划的过程中,在运动学约束条件下利用S形曲线进行规划,且速度与时间的关系用为时间余弦为基函数的表达式来表达,该表达式可以是时间余弦为基函数的多项式,也可以是其他形式。Among them, in the process of speed planning, an S-shaped curve is used for planning under kinematic constraints, and the relationship between speed and time is expressed by an expression with time cosine as the basis function. This expression can be time cosine as the basis function. The polynomial of the function can also be in other forms.
由上,采用为时间余弦为基函数的表达式的速度规划器自动按照S形曲线进行规划,不需要人为预先设置S形曲线基于时间的分段,例如,不需要人工设置增大加速度、匀加速、减小加速度、匀速、加增大减速度,均减速、减小减速度等各时间段的时间,规划轨迹更加准确,各轴的运动性能在运动学约束下达到最佳。From the above, the speed planner using the expression of time cosine as the basis function automatically plans according to the S-shaped curve. There is no need to manually set the time-based segmentation of the S-shaped curve. For example, there is no need to manually set increasing acceleration, uniformity, etc. Accelerate, reduce acceleration, constant speed, increase and increase deceleration, uniform deceleration, decrease deceleration and other time periods, the planning trajectory is more accurate, and the motion performance of each axis is optimal under kinematic constraints.
S2330:根据每个轴到达每个关节节点的规划时间,获得每个轴在每两个相邻关节节点之间的运行时长。S2330: According to the planning time for each axis to reach each joint node, obtain the running time of each axis between every two adjacent joint nodes.
其中,在一次轨迹规划时各轴的运动性能在运动学约束下达到最佳,根据每个轴 到达每个关节节点的时间确定的每个轴在每两个相邻关节节点之间的运行时长也是每个轴能的最佳运行时间。Among them, the motion performance of each axis in a trajectory planning is optimal under kinematic constraints. According to each axis The running time of each axis between each two adjacent joint nodes determined by the time to reach each joint node is also the optimal running time of each axis.
S2340:对于任意两个相邻关节节点,对比每个轴的在该两个相邻关节节点之间的运行时长,选择最长的运行时长为该两个相邻关节节点之间的同步时长。S2340: For any two adjacent joint nodes, compare the running time of each axis between the two adjacent joint nodes, and select the longest running time as the synchronization time between the two adjacent joint nodes.
由上,通过上述方法确定的任意两个相邻关节节点之间的同步时长,使至少存在一个轴在该两个相邻关节节点之间性能达到最佳,从而使在运动学约束条件下整个多轴设备在该两个相邻关节节点之间性能达到最佳,因为此时再缩短整个多轴设备在该两个相邻关节节点之间的运行时长时,都会使其中一个轴超过了其运动学约束条件。From the above, the synchronization duration between any two adjacent joint nodes is determined by the above method, so that at least one axis has the best performance between the two adjacent joint nodes, so that the entire system can be operated under kinematic constraints. The multi-axis device performs best between the two adjacent joint nodes, because at this time, shortening the running time of the entire multi-axis device between the two adjacent joint nodes will cause one of the axes to exceed its Kinematic constraints.
S2350:根据所确定的同步时长依次获得每个关节节点的同步时间。S2350: Obtain the synchronization time of each joint node in sequence according to the determined synchronization duration.
其中,一个关节节点的同步时间为在该关节节点的上个相邻关节节点的同步时间上叠加在这两个相邻关节节点之间的同步时长。Among them, the synchronization time of a joint node is the synchronization time between the two adjacent joint nodes superimposed on the synchronization time of the previous adjacent joint node of the joint node.
示意地,设第一关节节点即起始点的时间为t,因为各轴的起始时间相同,t也可以认为是第一关节节点的同步时间,后续在t的基础上依次叠加与下一关节节点之间的同步时长,从而依次获得每个关节节点的同步时间。Schematically, let the time of the first joint node, which is the starting point, be t. Since the starting time of each axis is the same, t can also be considered as the synchronization time of the first joint node. Subsequently, it will be superimposed with the next joint on the basis of t. The synchronization time between nodes, so as to obtain the synchronization time of each joint node in turn.
由上,根据所确定的同步时间,多轴设备的各个轴同时到达指定位置(关节节点),且遵从运动学约束条件,同时运行性能达到最优。From the above, according to the determined synchronization time, each axis of the multi-axis device reaches the designated position (joint node) at the same time, and obeys the kinematic constraints, and at the same time, the operating performance reaches the optimal level.
图4示出了一种多轴设备的关节空间轨迹的规划方法实施例二的速度匹配方法的流程,即步骤240包括步骤S2410至S2440。Figure 4 shows the flow of the speed matching method in Embodiment 2 of a joint space trajectory planning method for a multi-axis device, that is, step 240 includes steps S2410 to S2440.
其中,多轴设备的每个轴分别运行本实施例各步骤进行规划,为了描述方便,把当前正在进行规划的轴称为规划轴。Among them, each axis of the multi-axis device runs each step of this embodiment for planning. For the convenience of description, the axis currently undergoing planning is called the planning axis.
S2410:在运动学约束条件下,根据每个关节节点的坐标和同步时间,利用速度规划器对规划轴的每两个相邻拐点之间的关节空间轨迹进行第二次轨迹规划,获得规划轴在每个关节节点的速度、加速度和加加速度。S2410: Under kinematic constraints, according to the coordinates and synchronization time of each joint node, use the speed planner to perform a second trajectory planning on the joint space trajectory between each two adjacent inflection points of the planning axis, and obtain the planning axis Velocity, acceleration and jerk at each joint node.
其中,在第二次轨迹规划中规划轴到达任一个关节节点的时间为该关节节点的同步时间,实现多轴设备各个轴的速度之间匹配,即根据各个轴匹配后的速度(也就是第二次轨迹规划后的速度)各轴同步到达每个关节节点,更加详细的描述为各轴同步到达每个关节节点中各个轴各自维度对应的坐标处。且在第二次轨迹规划中以规划轴在每个关节节点在关节空间的速度、加速度或加加速度连续为规划收敛条件。Among them, in the second trajectory planning, the time when the planned axis reaches any joint node is the synchronization time of the joint node, so as to realize the matching of the speed of each axis of the multi-axis equipment, that is, according to the matched speed of each axis (that is, the first The speed after quadratic trajectory planning) each axis reaches each joint node synchronously. A more detailed description is that each axis synchronously reaches the coordinates corresponding to the respective dimensions of each axis in each joint node. And in the second trajectory planning, the velocity, acceleration or jerk of the planning axis at each joint node in the joint space is continuous as the planning convergence condition.
其中,在规划过程中同样保持规划轴拐点在关节空间的速度为0,在运动学约束条件下利用S形曲线进行规划。Among them, during the planning process, the speed of the planning axis inflection point in the joint space is also kept as 0, and the S-shaped curve is used for planning under kinematic constraints.
其中,规划时速度与时间的关系用为时间余弦为基函数的表达式来表达,该表达式可以是时间余弦为基函数的多项式,也可以是其他形式。Among them, the relationship between speed and time during planning is expressed by an expression with time cosine as the basis function. This expression can be a polynomial with time cosine as the basis function, or it can be in other forms.
由上,采用为时间余弦为基函数的表达式的速度规划器自动按照S形曲线进行规划,不需要人为预先设置S形曲线基于时间的分段,提高了第二次轨迹规划的准确性。From the above, the speed planner that uses the expression of time cosine as the basis function automatically plans according to the S-shaped curve. It does not need to manually set the time-based segmentation of the S-shaped curve in advance, which improves the accuracy of the second trajectory planning.
又由上,现对于现有技术只实现速度和加速度连续,本实施例又增加了加加速度连续,抑制了各个轴的振动问题。Based on the above, the existing technology only realizes the continuity of velocity and acceleration. This embodiment adds the continuity of acceleration and acceleration, thus suppressing the vibration problem of each axis.
S2420:经过设定的二次轨迹规划时间后判断规划轴是否存在跳变关节节点。S2420: After the set secondary trajectory planning time, determine whether there is a jump joint node on the planning axis.
其中,如果存在,则运行步骤S2430,否则运行步骤S2440。 If it exists, step S2430 is executed; otherwise, step S2440 is executed.
其中,一个轴的跳变关节节点为该轴在该关节节点的速度或加速度或加加速度不连续。Among them, the jump joint node of an axis is the velocity or acceleration or jerk discontinuity of the axis at the joint node.
其中,第二次轨迹规划包括多轮前瞻速度规划,每轮前瞻速度规划通过选择多个前向插补点利用前向和/或反向搜索的方法进行复杂的速度规划计算,计算量大,为了保住运行的时效,需要对第二次轨迹规划设定时长。Among them, the second trajectory planning includes multiple rounds of forward speed planning. Each round of forward speed planning selects multiple forward interpolation points and uses forward and/or reverse search methods to perform complex speed planning calculations, which requires a large amount of calculation. In order to maintain the timeliness of the operation, it is necessary to set the duration of the second trajectory planning.
S2430:通过滤波使规划轴的跳变关节节点的速度、加速度和加加速度的连续。S2430: Make the speed, acceleration and jerk of the jumping joint node of the planning axis continuous through filtering.
其中,滤波的方法包括多项式滤波或者平均值滤波等。Among them, filtering methods include polynomial filtering or average filtering.
由上,通过增加滤波的方法控制了第二次轨迹规划的时长,满足实际场景的时效需求,又提高每个轴在关节节点的速度、加速度和加加速度的连续性。From the above, the duration of the second trajectory planning is controlled by adding filtering to meet the timeliness requirements of the actual scene and improve the continuity of the speed, acceleration and jerk of each axis at the joint nodes.
S2440:输出当前规划的轨迹作为多轴设备的规划轴的关节空间轨迹。S2440: Output the currently planned trajectory as the joint space trajectory of the planned axis of the multi-axis device.
其中,完成多轴设备当前的规划轴的关节空间轨迹规划后,又选择下一个未规划的轴作为规划轴继续规划。Among them, after completing the joint space trajectory planning of the current planning axis of the multi-axis device, the next unplanned axis is selected as the planning axis to continue planning.
综上,一种多轴设备的关节空间轨迹的规划方法实施例二在一种多轴设备的关节空间轨迹的规划方法实施例一的基础上,第一次轨迹规划时通过在每两个相邻节点之间选择运行时长最长的轴的运行时间为同步时间使至少一个轴的运动性能最佳,在第二次轨迹规划时通过设定时长的第二次轨迹规划加滤波的方法不仅实现各个轴到达每个关节节点的速度、加速度或加加速度连续,而且规划效率高,且在两次轨迹规划过程中均选择以时间余弦为基函数的表达式描述速度,进一步提高了规划的精度。To sum up, Embodiment 2 of a planning method for a joint space trajectory of a multi-axis device is based on Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device. The first trajectory planning is performed in every two phases. The running time of the axis with the longest running time between adjacent nodes is selected as the synchronization time so that at least one axis has the best motion performance. In the second trajectory planning, the method of setting the duration of the second trajectory planning and filtering is not only achieved The speed, acceleration or jerk of each axis reaching each joint node is continuous, and the planning efficiency is high. In the two trajectory planning processes, expressions based on time cosine are chosen to describe the speed, which further improves the accuracy of planning.
下面结合附图5和图6介绍本申请的一种多轴设备的关节空间轨迹的规划装置实施例。An embodiment of a planning device for a joint space trajectory of a multi-axis device according to the present application will be introduced below with reference to FIGS. 5 and 6 .
一种多轴设备的关节空间轨迹的规划装置实施例一执行一种多轴设备的关节空间轨迹的规划方法实施例一的方法,具有其一切优点。Embodiment 1 of a planning device for a joint space trajectory of a multi-axis device executes the method of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device, and has all its advantages.
图5示出了一种多轴设备的关节空间轨迹的规划装置实施例一的结构,包括:获取模块510、时间同步模块520和速度匹配模块530。Figure 5 shows the structure of Embodiment 1 of a planning device for joint space trajectories of multi-axis equipment, including: an acquisition module 510, a time synchronization module 520 and a speed matching module 530.
获取模块510用于获取的各个关节节点在关节空间的坐标,多轴设备的每个轴为所述关节空间的一个维度。其方法和优点请参照一种多轴设备的关节空间轨迹的规划方法实施例一的步骤S110。The acquisition module 510 is used to acquire the coordinates of each joint node in the joint space. Each axis of the multi-axis device is one dimension of the joint space. For its method and advantages, please refer to step S110 of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device.
时间同步模块520用于在多轴设备的每个轴的运动学约束条件下,根据各关节节点的坐标对每个轴分别进行第一次轨迹规划,获得所述每个轴到达各关节节点的规划时间,并据此确定每个关节节点的同步时间。其方法和优点请参照一种多轴设备的关节空间轨迹的规划方法实施例一的步骤S120。The time synchronization module 520 is used to perform the first trajectory planning for each axis according to the coordinates of each joint node under the kinematic constraints of each axis of the multi-axis device, and obtain the time when each axis reaches each joint node. Plan the time and determine the synchronization time of each joint node accordingly. For its method and advantages, please refer to step S120 of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device.
速度匹配模块530用于在多轴设备的每个轴的运动学约束条件下,根据各关节节点的坐标和同步时间对每个轴分别进行第二次轨迹规划,获得每个轴在关节空间的轨迹。其方法和优点请参照一种多轴设备的关节空间轨迹的规划方法实施例一的步骤S130。The speed matching module 530 is used to perform a second trajectory planning for each axis according to the coordinates and synchronization time of each joint node under the kinematic constraints of each axis of the multi-axis device, and obtain the position of each axis in the joint space. trajectory. For its method and advantages, please refer to step S130 of Embodiment 1 of a planning method for a joint space trajectory of a multi-axis device.
一种多轴设备的关节空间轨迹的规划装置实施例二执行一种多轴设备的关节空间轨迹的规划方法实施例二的方法,具有其一切优点。 Embodiment 2 of a planning device for joint space trajectories of multi-axis equipment executes the method of Embodiment 2 of a planning method for joint space trajectories of multi-axis equipment, and has all its advantages.
图6示出了一种多轴设备的关节空间轨迹的规划装置实施例二的结构,包括:获取模块610、末端轨迹规划模块620、时间同步模块630和速度匹配模块640。Figure 6 shows the structure of Embodiment 2 of a joint space trajectory planning device for multi-axis equipment, including: an acquisition module 610, an end trajectory planning module 620, a time synchronization module 630 and a speed matching module 640.
获取模块610用于S210:获取多轴设备末端的路径节点的位姿、运动学约束条件和计算时间颗粒度。其方法和优点请参照一种多轴设备的关节空间轨迹的规划方法实施例二的步骤S210。The acquisition module 610 is used for S210: acquiring the pose, kinematic constraints and calculation time granularity of the path node at the end of the multi-axis device. For its method and advantages, please refer to step S210 in Embodiment 2 of a joint space trajectory planning method for a multi-axis device.
末端轨迹规划模块620用于根据路径节点的位姿规划多轴设备末端在笛卡尔空间的轨迹,并通过运动学逆解获得多轴设备的关节节点在关节空间中的坐标。其方法和优点请参照一种多轴设备的关节空间轨迹的规划方法实施例二的步骤S220。The end trajectory planning module 620 is used to plan the trajectory of the end of the multi-axis device in Cartesian space according to the pose of the path node, and obtain the coordinates of the joint nodes of the multi-axis device in the joint space through the inverse kinematic solution. For its method and advantages, please refer to step S220 in Embodiment 2 of a joint space trajectory planning method for a multi-axis device.
时间同步模块630用于在多轴设备的每个轴的运动学约束条件下,根据各关节节点的坐标对每个轴分别进行第一次轨迹规划,获得所述每个轴到达各关节节点的规划时间,并据此确定每个关节节点的同步时间。其方法和优点请参照一种多轴设备的关节空间轨迹的规划方法实施例二的步骤S230。The time synchronization module 630 is used to perform the first trajectory planning for each axis according to the coordinates of each joint node under the kinematic constraints of each axis of the multi-axis device, and obtain the time when each axis reaches each joint node. Plan the time and determine the synchronization time of each joint node accordingly. For its method and advantages, please refer to step S230 of Embodiment 2 of a joint space trajectory planning method for a multi-axis device.
速度匹配模块640用于在多轴设备的每个轴的运动学约束条件下,根据各关节节点的坐标和同步时间对每个轴分别进行第二次轨迹规划,获得每个轴在关节空间的轨迹。其方法和优点请参照一种多轴设备的关节空间轨迹的规划方法实施例二的步骤S240。The speed matching module 640 is used to perform a second trajectory planning for each axis according to the coordinates and synchronization time of each joint node under the kinematic constraints of each axis of the multi-axis device, and obtain the position of each axis in the joint space. trajectory. For its method and advantages, please refer to step S240 in Embodiment 2 of a joint space trajectory planning method for a multi-axis device.
本申请实施例还提供了一种计算设备,下面结合图7详细介绍。An embodiment of the present application also provides a computing device, which will be described in detail below in conjunction with Figure 7 .
该计算设备700包括,处理器710、存储器720、通信接口730、总线740。The computing device 700 includes a processor 710, a memory 720, a communication interface 730, and a bus 740.
应理解,该图所示的计算设备700中的通信接口730可以用于与其他设备之间进行通信。It should be understood that the communication interface 730 in the computing device 700 shown in this figure can be used to communicate with other devices.
其中,该处理器710可以与存储器720连接。该存储器720可以用于存储该程序代码和数据。因此,该存储器720可以是处理器710内部的存储单元,也可以是与处理器710独立的外部存储单元,还可以是包括处理器710内部的存储单元和与处理器710独立的外部存储单元的部件。The processor 710 can be connected to the memory 720 . The memory 720 can be used to store the program code and data. Therefore, the memory 720 may be a storage unit internal to the processor 710 , or may be an external storage unit independent of the processor 710 , or may include a storage unit internal to the processor 710 and an external storage unit independent of the processor 710 . part.
可选的,计算设备700还可以包括总线740。其中,存储器720、通信接口730可以通过总线740与处理器710连接。总线740可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(EFStended Industry Standard Architecture,EISA)总线等。所述总线740可以分为地址总线、数据总线、控制总线等。为便于表示,该图中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。Optionally, computing device 700 may also include bus 740. Among them, the memory 720 and the communication interface 730 can be connected to the processor 710 through the bus 740. The bus 740 may be a Peripheral Component Interconnect (PCI) bus or an Extended Industrial Standard Architecture (EFStended Industry Standard Architecture, EISA) bus, etc. The bus 740 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.
应理解,在本申请实施例中,该处理器710可以采用中央处理单元(central processing unit,CPU)。该处理器还可以是其它通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。或者该处理器710采用一个或多个集成电路,用于执行相关程序,以实现本申请实施例所提供的技术方案。It should be understood that in this embodiment of the present application, the processor 710 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 710 uses one or more integrated circuits to execute relevant programs to implement the technical solutions provided by the embodiments of the present application.
该存储器720可以包括只读存储器和随机存取存储器,并向处理器710提供指令 和数据。处理器710的一部分还可以包括非易失性随机存取存储器。例如,处理器710还可以存储设备类型的信息。The memory 720 may include read-only memory and random access memory and provide instructions to the processor 710 and data. A portion of processor 710 may also include non-volatile random access memory. For example, processor 710 may also store device type information.
在计算设备700运行时,所述处理器710执行所述存储器720中的计算机执行指令执行各方法实施例的操作步骤。When the computing device 700 is running, the processor 710 executes the computer execution instructions in the memory 720 to perform the operation steps of each method embodiment.
应理解,根据本申请实施例的计算设备700可以对应于执行根据本申请各实施例的方法中的相应主体,并且计算设备700中的各个模块的上述和其它操作和/或功能分别为了实现本方法实施例各方法的相应流程,为了简洁,在此不再赘述。It should be understood that the computing device 700 according to the embodiments of the present application may correspond to the corresponding subject in performing the methods according to the various embodiments of the present application, and the above and other operations and/or functions of the various modules in the computing device 700 are respectively intended to implement the present application. For the sake of brevity, the corresponding processes of each method in the method embodiments 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. computer The readable storage medium may be, for example, but not limited to, an electrical, 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. As used herein, a computer-readable storage medium may be any tangible medium that contains or stores a program for use by or in connection 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 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)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202211035176.1 | 2022-08-26 | ||
| CN202211035176.1A CN115179299B (en) | 2022-08-26 | 2022-08-26 | A method and device for planning joint space trajectory of multi-axis equipment |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2024041646A1 true WO2024041646A1 (en) | 2024-02-29 |
Family
ID=83522512
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2023/115044 Ceased WO2024041646A1 (en) | 2022-08-26 | 2023-08-25 | Trajectory planning method and apparatus for joint space of multi-shaft device |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN115179299B (en) |
| WO (1) | WO2024041646A1 (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115179299B (en) * | 2022-08-26 | 2024-11-29 | 北京东土科技股份有限公司 | A method and device for planning joint space trajectory of multi-axis equipment |
| CN115838119B (en) * | 2022-12-23 | 2024-11-29 | 北京东土科技股份有限公司 | On-site safety control method, controller and computing equipment for tower crane |
| CN118721218B (en) * | 2024-09-04 | 2024-11-22 | 真健康(广东横琴)医疗科技有限公司 | Multi-joint synchronous S-shaped speed curve track planning method and equipment |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103853043A (en) * | 2012-11-30 | 2014-06-11 | 北京配天大富精密机械有限公司 | Method for realizing synchronous PTP motion in robots and device thereof |
| CN107186713A (en) * | 2017-05-23 | 2017-09-22 | 江苏安格尔机器人有限公司 | A kind of mechanical arm multiaxial motion plan optimization method for crossing path point |
| CN107263484A (en) * | 2017-08-10 | 2017-10-20 | 南京埃斯顿机器人工程有限公司 | The method for planning track of robotic joint space point-to-point motion |
| US20190275675A1 (en) * | 2018-03-09 | 2019-09-12 | Hitachi, Ltd. | Trajectory planning apparatus, trajectory planning method, and production system |
| CN115179299A (en) * | 2022-08-26 | 2022-10-14 | 北京东土科技股份有限公司 | Planning method and device for joint space trajectory of multi-axis equipment |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3955217B2 (en) * | 2002-02-15 | 2007-08-08 | 株式会社不二越 | Industrial robot control method and control apparatus |
| CN105500354B (en) * | 2016-02-02 | 2017-05-17 | 南京埃斯顿机器人工程有限公司 | Transition track planning method applied to industrial robot |
| CN106695787B (en) * | 2016-12-17 | 2019-02-12 | 上海新时达电气股份有限公司 | A kind of speed planning method |
| CN108890644B (en) * | 2018-06-27 | 2020-06-30 | 清华大学 | Multi-axis synchronous trajectory planning method and system and computer readable storage medium |
-
2022
- 2022-08-26 CN CN202211035176.1A patent/CN115179299B/en active Active
-
2023
- 2023-08-25 WO PCT/CN2023/115044 patent/WO2024041646A1/en not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103853043A (en) * | 2012-11-30 | 2014-06-11 | 北京配天大富精密机械有限公司 | Method for realizing synchronous PTP motion in robots and device thereof |
| CN107186713A (en) * | 2017-05-23 | 2017-09-22 | 江苏安格尔机器人有限公司 | A kind of mechanical arm multiaxial motion plan optimization method for crossing path point |
| CN107263484A (en) * | 2017-08-10 | 2017-10-20 | 南京埃斯顿机器人工程有限公司 | The method for planning track of robotic joint space point-to-point motion |
| US20190275675A1 (en) * | 2018-03-09 | 2019-09-12 | Hitachi, Ltd. | Trajectory planning apparatus, trajectory planning method, and production system |
| CN115179299A (en) * | 2022-08-26 | 2022-10-14 | 北京东土科技股份有限公司 | Planning method and device for joint space trajectory of multi-axis equipment |
Also Published As
| Publication number | Publication date |
|---|---|
| CN115179299A (en) | 2022-10-14 |
| CN115179299B (en) | 2024-11-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2024041646A1 (en) | Trajectory planning method and apparatus for joint space of multi-shaft device | |
| CN115179298B (en) | A Cartesian space trajectory planning method and device | |
| WO2024041648A1 (en) | Trajectory planning method and apparatus for robot end | |
| US10732601B2 (en) | Integrated controller for motion control and motor control | |
| CN107980108B (en) | Robot motion trajectory planning method and related device | |
| CN107980109B (en) | Robot motion trajectory planning method and related device | |
| CN110471409B (en) | Robot inspection method and device, computer readable storage medium and robot | |
| CN113119116A (en) | Mechanical arm motion planning method and device, readable storage medium and mechanical arm | |
| WO2022198993A1 (en) | Method and apparatus for manipulator motion planning, readable storage medium, and manipulator | |
| WO2020135608A1 (en) | Industrial robot demonstration track recurrence method and system and robot | |
| CN109144065A (en) | Robot preventing collision method and device | |
| CN103092128B (en) | Multi-axis motion controller | |
| CN113119104A (en) | Mechanical arm control method, mechanical arm control device, computing equipment and system | |
| WO2022193668A1 (en) | Inverse solution method and apparatus for arm angle interval of mechanical arm, and terminal device | |
| CN109773780A (en) | The pose synchronous method and device of the migration path of mechanical arm | |
| WO2025025836A1 (en) | Method for planning tail-end trajectory of series robot on basis of bidirectional greedy search algorithm | |
| CN113001537A (en) | Mechanical arm control method, mechanical arm control device and terminal equipment | |
| CN113084792A (en) | Method for determining joint singular area, robot and storage device | |
| CN115922704A (en) | Linkage cooperative control method, device and storage medium of robot and external axis | |
| CN117084788A (en) | Method, device and storage medium for determining target attitude of robotic arm | |
| CN113084791A (en) | Mechanical arm control method, mechanical arm control device and terminal equipment | |
| CN113093715A (en) | Motion control method, device, equipment and storage medium for unmanned equipment | |
| CN115319752A (en) | Path instruction superposition planning method | |
| CN114851190B (en) | Low-frequency drive and control integrated-oriented mechanical arm track planning method and system | |
| CN117506915A (en) | A planning method and device for arc trajectory in equipment space |
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: 23856731 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: 23856731 Country of ref document: EP Kind code of ref document: A1 |