An external shaft acceleration smoothing method, device, equipment and medium
By discretizing the external axis trajectory curve and performing fifth-order polynomial programming, the problems of slow response and low accuracy of the external axis were solved, achieving high response speed and smooth motion of the external axis, thereby improving the trajectory tracking accuracy and mechanical life of the robot end effector.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHENGDU AIRCRAFT INDUSTRY GROUP
- Filing Date
- 2026-03-19
- Publication Date
- 2026-07-14
AI Technical Summary
In existing technologies, external axes suffer from slow response, low accuracy, and uneven operation. Traditional smoothing methods do not fully consider the load characteristics and response delay of external axes in redundant degree-of-freedom systems, leading to problems such as trajectory distortion, motion coordination deviation, and reduced mechanical life.
An external axis acceleration smoothing method is adopted. Discrete trajectory points are obtained by discretizing the trajectory curve. The trajectory is planned using a fifth-order polynomial and smoothing constraints. After ensuring that the external axis acceleration difference meets the requirements, the inverse motion solution is calculated to avoid mechanical wear and response lag caused by excessive acceleration.
It improves the response speed and motion smoothness of the external axis, enhances the trajectory tracking accuracy of the robot's end effector, extends the mechanical life, and avoids motion shock and vibration problems caused by sudden acceleration changes in the external axis.
Smart Images

Figure CN121870786B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robot motion inverse kinematics technology, and provides an external axis acceleration smoothing method, apparatus, equipment and medium. Background Technology
[0002] Currently, in order to meet the needs of automated operation on complex curved surfaces, the industry generally adopts the method of adding external axes such as linear guide axes and rotary table axes to the basis of ordinary 6-axis robots to form a robot system with redundant degrees of freedom. Through multi-axis cooperative motion, this type of system can flexibly adjust the posture and position of the robot's end effector, effectively breaking through the working space limitations of traditional 6-axis robots and adapting to the processing needs of complex workpieces such as aerospace parts and large molds.
[0003] However, while adding external axes improves the system's operational flexibility, it requires strict coordination between the external axes and the robot's body axes in terms of motion trajectory. In existing technologies, robot trajectory processing solutions are mostly applicable to non-redundant degree-of-freedom systems. Their core logic involves first discretely sampling the trajectory, dividing it into key time intervals such as the first and second time intervals, and then smoothing the trajectory using traditional smoothing algorithms such as polynomial interpolation and B-spline fitting to ensure the stability of the robot's end effector.
[0004] However, the following limitations exist in this traditional smoothing method: (1) Its smoothing process only optimizes the overall smoothness of the robot end trajectory, without fully considering the load characteristics and response delay of the external axis in the redundant degree of freedom system. As a result, although the smoothed trajectory can meet the end stability requirements, the external axis needs to frequently follow the end trajectory to adjust acceleration and deceleration. The slow response characteristics of the external axis will prevent it from tracking the preset trajectory in time, which will not only cause the motion coordination deviation between the external axis and the body axis, but may also cause trajectory distortion and affect the accuracy of operation; (2) Its time interval division and sampling strategy are fixed, which is difficult to adapt to the dynamic response characteristics of the external axis. It is easy to cause problems such as excessive impact of external axis motion and increased vibration. Long-term operation may also reduce the mechanical life of the external axis and even cause operational safety hazards. Summary of the Invention
[0005] This application provides an external shaft acceleration smoothing method, apparatus, device, and medium to solve the technical problems of slow external shaft response, low accuracy, and uneven operation in the prior art.
[0006] On the one hand, an external shaft acceleration smoothing method is provided, the method comprising:
[0007] Discretize the trajectory curve of the external axis to obtain multiple discrete trajectory points;
[0008] For any discrete trajectory point, a fixed deviation distance is used to determine the position value of the discrete trajectory point;
[0009] Determine the acceleration difference of any discrete trajectory point based on its position value.
[0010] The trajectory curve is planned using a fifth-order polynomial and smoothing constraints to obtain the trajectory polynomial;
[0011] Based on the trajectory polynomial, determine whether the external axis acceleration difference of any discrete trajectory point meets the acceleration requirements;
[0012] If the external axis acceleration difference of any discrete trajectory point is determined to meet the acceleration requirement, then the inverse motion solution of the robot is calculated.
[0013] Optionally, the step of determining the position value of any discrete trajectory point using a fixed deviation distance includes:
[0014] The position value of any discrete trajectory point is obtained by subtracting its X-axis coordinate value from the fixed deviation distance.
[0015] Optionally, the step of determining the acceleration difference of any discrete trajectory point based on the position value of any discrete trajectory point includes:
[0016] Determine the velocity difference corresponding to any discrete trajectory point based on the position value of any discrete trajectory point;
[0017] Determine the acceleration difference of any discrete trajectory point based on the velocity difference of any discrete trajectory point.
[0018] Optionally, the step of determining whether the external axis acceleration difference of any discrete trajectory point satisfies the acceleration requirement based on the trajectory polynomial includes:
[0019] Taking the second derivative of the trajectory polynomial yields the acceleration polynomial;
[0020] Based on the acceleration polynomial, determine whether the external axis acceleration difference of any discrete trajectory point meets the acceleration requirements.
[0021] Optionally, the step of calculating the inverse motion solution of the robot if the difference in external axis acceleration at any discrete trajectory point satisfies the acceleration requirement includes:
[0022] If the external axis acceleration difference of any discrete trajectory point is determined to meet the acceleration requirement, then the improved DH modeling method is used to determine the DH parameters of the redundant degree-of-freedom structure.
[0023] Based on the DH parameters, determine the transformation matrix for each link;
[0024] Based on the transformation matrices of each link, the inverse motion solution of the robot is calculated, and the calculation results are obtained.
[0025] Based on the calculation results, determine whether the robot has an inverse kinematic solution;
[0026] If it is determined that the robot has an inverse motion solution, then the inverse motion solution is output.
[0027] Optionally, after determining whether the robot has an inverse kinematic solution based on the calculation results, the method further includes:
[0028] If it is determined that the robot does not have an inverse kinematic solution, the fixed deviation distance is modified to obtain the modified fixed deviation distance;
[0029] The position value of any discrete trajectory point is modified based on the modified fixed deviation distance.
[0030] Optionally, after determining whether the external axis acceleration difference at any discrete trajectory point meets the acceleration requirement, the method further includes:
[0031] If it is determined that the external axis acceleration difference of any discrete trajectory point does not meet the acceleration requirements, the fixed deviation distance is modified to obtain the modified fixed deviation distance;
[0032] The position value of any discrete trajectory point is modified based on the modified fixed deviation distance.
[0033] On the one hand, an external shaft acceleration smoothing device is provided, the device comprising:
[0034] Curve discretization unit is used to discretize the trajectory curve of the external axis to obtain multiple discrete trajectory points;
[0035] The position value determination unit is used to determine the position value of any discrete trajectory point using a fixed deviation distance.
[0036] The differential determination unit is used to determine the acceleration difference of any discrete trajectory point based on the position value of any discrete trajectory point.
[0037] The polynomial acquisition unit is used to plan the trajectory curve using a fifth-order polynomial and smoothing constraints to obtain the trajectory polynomial.
[0038] An acceleration verification unit is used to determine, based on the trajectory polynomial, whether the external axis acceleration difference of any discrete trajectory point meets the acceleration requirements.
[0039] The inverse kinematics calculation unit is used to calculate the inverse kinematics of the robot if the difference in external axis acceleration at any discrete trajectory point satisfies the acceleration requirement.
[0040] On one hand, an electronic device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement any of the methods described above.
[0041] On the one hand, a storage medium is provided that stores computer program instructions thereon, which, when executed by a processor, implement any of the methods described above.
[0042] Compared with the prior art, the beneficial effects of this application are as follows:
[0043] In this application, when smoothing the external axis velocity, firstly, the trajectory curve of the external axis can be discretized to obtain multiple discrete trajectory points; then, for any discrete trajectory point, a fixed deviation distance can be used to determine the position value of the discrete trajectory point; next, based on the position value of the discrete trajectory point, the acceleration difference of the discrete trajectory point can be determined; then, a fifth-order polynomial and smoothing constraints can be used to plan the trajectory curve to obtain a trajectory polynomial; next, for any discrete trajectory point, based on the trajectory polynomial, it can be determined whether the external axis acceleration difference of the discrete trajectory point meets the acceleration requirements; finally, if it is determined that the external axis acceleration difference of the discrete trajectory point meets the acceleration requirements, the inverse kinematics of the robot is calculated.
[0044] Based on this, in this application, since the smoothing process is performed by checking whether the external axis acceleration difference meets the acceleration requirements, compared with traditional smoothing algorithms such as polynomial interpolation and B-spline fitting, this application can not only extend the mechanical life of the external axis and the robot body by avoiding mechanical wear, motor overload, or even structural damage caused by excessive acceleration, but also improve the response speed of the external axis and ensure smooth external axis motion by directly smoothing the acceleration. Furthermore, since "external axis acceleration smoothing" is a prerequisite, smoothing is only performed if the external axis acceleration difference meets the acceleration requirements. Only after this is the inverse solution calculation of redundant degrees of freedom performed. Therefore, this application avoids the coordination deviation caused by the traditional method of "first calculating the trajectory and then processing the axis motion", which greatly improves the trajectory tracking accuracy of the robot end effector in complex curved surface operations. Furthermore, since a fifth-order polynomial is used to plan the trajectory curve of the external axis, compared with the traditional cubic polynomial or linear interpolation, this application can ensure the continuity of position, velocity and acceleration without abrupt changes, so as to fully match the motion requirements of the external axis for "gradual acceleration and deceleration and low impact", and further solve the problem of response lag and trajectory tracking deviation caused by abrupt acceleration of the external axis. Attached Figure Description
[0045] To more clearly illustrate the technical solutions in the embodiments of this application or related technologies, the drawings used in the description of the embodiments or related technologies will be briefly introduced below. Obviously, the drawings described below are only embodiments of this application. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.
[0046] Figure 1 This is a schematic diagram of an application scenario provided by an embodiment of this application;
[0047] Figure 2 A schematic diagram of an external shaft acceleration smoothing method provided in an embodiment of this application;
[0048] Figure 3 A schematic diagram of the velocity differential provided in an embodiment of this application;
[0049] Figure 4 A schematic diagram of acceleration differential provided in an embodiment of this application;
[0050] Figure 5 This is a schematic diagram of an external shaft acceleration smoothing device provided in an embodiment of this application.
[0051] The diagram is labeled as follows: 10-External shaft acceleration smoothing device, 101-Processor, 102-Memory, 103-I / O interface, 104-Database, 50-External shaft acceleration smoothing device, 501-Curve discretization unit, 502-Position value determination unit, 503-Difference determination unit, 504-Polynomial acquisition unit, 505-Acceleration verification unit, 506-Inverse solution calculation unit. Detailed Implementation
[0052] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application. Unless otherwise specified, the embodiments and features in the embodiments of this application can be arbitrarily combined with each other. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than that shown here.
[0053] Currently, in order to meet the needs of automated operation on complex curved surfaces, the industry generally adopts the method of adding external axes such as linear guide axes and rotary table axes to the basis of ordinary 6-axis robots to form a robot system with redundant degrees of freedom. Through multi-axis cooperative motion, this type of system can flexibly adjust the posture and position of the robot's end effector, effectively breaking through the working space limitations of traditional 6-axis robots and adapting to the processing needs of complex workpieces such as aerospace parts and large molds.
[0054] However, while adding external axes improves the system's operational flexibility, it requires strict coordination between the external axes and the robot's body axes in terms of motion trajectory. In existing technologies, robot trajectory processing solutions are mostly applicable to non-redundant degree-of-freedom systems. Their core logic involves first discretely sampling the trajectory, dividing it into key time intervals such as the first and second time intervals, and then smoothing the trajectory using traditional smoothing algorithms such as polynomial interpolation and B-spline fitting to ensure the stability of the robot's end effector.
[0055] However, the following limitations exist in this traditional smoothing method: (1) Its smoothing process only optimizes the overall smoothness of the robot end trajectory, without fully considering the load characteristics and response delay of the external axis in the redundant degree of freedom system. As a result, although the smoothed trajectory can meet the end stability requirements, the external axis needs to frequently follow the end trajectory to adjust acceleration and deceleration. The slow response characteristics of the external axis will prevent it from tracking the preset trajectory in time, which will not only cause the motion coordination deviation between the external axis and the body axis, but may also cause trajectory distortion and affect the accuracy of operation; (2) Its time interval division and sampling strategy are fixed, which is difficult to adapt to the dynamic response characteristics of the external axis. It is easy to cause problems such as excessive impact of external axis motion and increased vibration. Long-term operation may also reduce the mechanical life of the external axis and even cause operational safety hazards.
[0056] Based on this, this application provides an external axis acceleration smoothing method. In this method, firstly, the trajectory curve of the external axis can be discretized to obtain multiple discrete trajectory points; then, for any discrete trajectory point, a fixed deviation distance can be used to determine the position value of the discrete trajectory point; next, based on the position value of the discrete trajectory point, the acceleration difference of the discrete trajectory point can be determined; then, a fifth-order polynomial and smoothing constraints can be used to plan the trajectory curve to obtain a trajectory polynomial; next, for any discrete trajectory point, based on the trajectory polynomial, it can be determined whether the external axis acceleration difference of the discrete trajectory point meets the acceleration requirements; finally, if it is determined that the external axis acceleration difference of the discrete trajectory point meets the acceleration requirements, the inverse kinematics of the robot is calculated. Based on this, in this application, since the smoothing process is performed by checking whether the external axis acceleration difference meets the acceleration requirements, compared with traditional smoothing algorithms such as polynomial interpolation and B-spline fitting, this application can not only extend the mechanical life of the external axis and the robot body by avoiding mechanical wear, motor overload, or even structural damage caused by excessive acceleration, but also improve the response speed of the external axis and ensure smooth external axis motion by directly smoothing the acceleration. Furthermore, since "external axis acceleration smoothing" is a prerequisite, smoothing is only performed if the external axis acceleration difference meets the acceleration requirements. Only after this is the inverse solution calculation of redundant degrees of freedom performed. Therefore, this application avoids the coordination deviation caused by the traditional method of "first calculating the trajectory and then processing the axis motion", which greatly improves the trajectory tracking accuracy of the robot end effector in complex curved surface operations. Furthermore, since a fifth-order polynomial is used to plan the trajectory curve of the external axis, compared with the traditional cubic polynomial or linear interpolation, this application can ensure the continuity of position, velocity and acceleration without abrupt changes, so as to fully match the motion requirements of the external axis for "gradual acceleration and deceleration and low impact", and further solve the problem of response lag and trajectory tracking deviation caused by abrupt acceleration of the external axis.
[0057] After introducing the design concept of the embodiments of this application, the following is a brief introduction to the application scenarios to which the technical solutions of the embodiments of this application can be applied. It should be noted that the application scenarios described below are only for illustrating the embodiments of this application and are not intended to limit the scope. In specific implementation, the technical solutions provided by the embodiments of this application can be flexibly applied according to actual needs.
[0058] like Figure 1 The diagram shown is an application scenario provided by an embodiment of this application. This application scenario may include an external shaft acceleration smoothing device 10.
[0059] The external axis acceleration smoothing device 10 can be used to smooth the external axis acceleration, and can be, for example, a personal computer (PC), server, or laptop. The external axis acceleration smoothing device 10 may include one or more processors 101, memory 102, I / O interfaces 103, and databases 104. Specifically, the processor 101 may be a central processing unit (CPU) or a digital processing unit, etc. The memory 102 may be volatile memory, such as random-access memory (RAM); the memory 102 may also be non-volatile memory, such as read-only memory, flash memory, hard disk drive (HDD), or solid-state drive (SSD); or the memory 102 may be any other medium capable of carrying or storing desired program code in the form of instructions or data structures that can be accessed by a computer, but is not limited thereto. The memory 102 may be a combination of the above-mentioned memories. The memory 102 can store some program instructions of the external axis acceleration smoothing method provided in the embodiments of this application. When these program instructions are executed by the processor 101, they can be used to implement the steps of the external axis acceleration smoothing method provided in the embodiments of this application, so as to solve the technical problems of slow external axis response, low accuracy and unsmooth operation in the prior art. The database 104 can be used to store data such as the trajectory curve, trajectory polynomial, inverse motion solution, position coordinates and attitude angles of each discrete trajectory point of the external axis involved in the solution provided in the embodiments of this application.
[0060] In this embodiment, the external axis acceleration smoothing device 10 can obtain geometric modeling instructions through the I / O interface 103. Then, the processor 101 of the external axis acceleration smoothing device 10 will solve the technical problems of slow external axis response, low accuracy, and uneven operation in the prior art according to the program instructions of the external axis acceleration smoothing method provided in this embodiment in the memory 102. In addition, the trajectory curve, trajectory polynomial, inverse motion solution, position coordinates and attitude angles of each discrete trajectory point of the external axis can be stored in the database 104.
[0061] Of course, the methods provided in the embodiments of this application are not limited to... Figure 1 The application scenarios shown can also be used in other possible scenarios, and this application embodiment does not impose any limitations. Figure 1The functions that the various devices in the application scenarios shown can achieve will be described in subsequent method embodiments, and will not be elaborated on here. Below, the methods of the embodiments of this application will be described in conjunction with the accompanying drawings.
[0062] like Figure 2 The diagram shown is a flowchart of an external shaft acceleration smoothing method provided in an embodiment of this application. This method can... Figure 1 The external shaft acceleration smoothing device 10 is used to perform the process. Specifically, the process flow is described below.
[0063] Step 201: Discretize the trajectory curve of the external axis to obtain multiple discrete trajectory points.
[0064] Specifically, assuming the trajectory curve of the outer axis is ,in, This represents a discrete trajectory point on the trajectory curve, specifically the i-th discrete trajectory point. for , Let be the position coordinates of the i-th discrete trajectory point, respectively. Let be the attitude angle of the i-th discrete trajectory point.
[0065] Based on this, the i-th discrete trajectory point With the (i+1)th discrete trajectory point The distance between them is:
[0066]
[0067] Furthermore, discrete trajectory points With discrete trajectory points End run time between for:
[0068]
[0069] in, Let be the final running speed of the i-th discrete trajectory point.
[0070] Step 202: For any discrete trajectory point, use a fixed deviation distance to determine the position value of the discrete trajectory point.
[0071] Specifically, for any discrete trajectory point, the X-axis coordinate value of any discrete trajectory point is... The position value of any discrete trajectory point is obtained by subtracting the fixed deviation distance D from the position value. That is, the position value of any discrete trajectory point can be calculated using the following formula. :
[0072]
[0073] Step 203: Determine the acceleration difference of any discrete trajectory point based on the position value of any discrete trajectory point.
[0074] In this application, firstly, the velocity difference corresponding to any discrete trajectory point can be determined based on the position value of any discrete trajectory point, such as... Figure 3 The diagram shown is a schematic representation of a velocity differential mechanism provided in an embodiment of this application.
[0075] Specifically, assume that the velocity difference of each discrete trajectory point on the outer axis is divided into... Then, the i-th discrete trajectory point velocity difference The following formula can be used for calculation:
[0076]
[0077] Based on this, since, except for the first and last two discrete trajectory points on the outer axis, the remaining discrete trajectory points have two segments of velocity difference. and Therefore, in this application, the velocity difference between the first and last discrete trajectory points can be directly obtained using velocity difference. The remaining discrete trajectory points are represented. The velocity difference is expressed as a mean velocity difference. To express.
[0078] Then, based on the velocity difference of any discrete trajectory point, the acceleration difference of any discrete trajectory point can be determined, such as... Figure 4 The diagram shown is a schematic representation of an acceleration differential provided in an embodiment of this application.
[0079] Specifically, assume that the acceleration difference of each discrete trajectory point on the outer axis is divided into... Then, the i-th discrete trajectory point acceleration difference The following formula can be used for calculation:
[0080]
[0081] Based on this, since, except for the first and last two discrete trajectory points on the outer axis, the other discrete trajectory points have acceleration differences between the preceding and following segments. and Therefore, in this application, the acceleration difference between the first and last discrete trajectory points can be directly adopted as the acceleration difference. The remaining discrete trajectory points are represented. The velocity difference is expressed as a mean acceleration difference. To express.
[0082] Step 204: Using a fifth-order polynomial and smooth constraints, plan the trajectory curve to obtain the trajectory polynomial.
[0083] In this application, the trajectory curve can be represented by the following fifth-order polynomial:
[0084]
[0085] in, These are polynomial parameters, and these polynomial parameters can be obtained from the starting position value of the i-th segment of the trajectory curve on the outer axis. End position value Initial velocity difference End velocity difference Initial acceleration difference and the final acceleration difference The smoothness constraint can be obtained from known values. Therefore, in this application, the following smoothness constraint conditions can be set:
[0086]
[0087] in, .
[0088] Based on this, the above smoothing constraints can be transformed into the following matrix:
[0089]
[0090] Then, the transformed matrix can be processed to obtain the following polynomial parameters. :
[0091]
[0092] Step 205: Based on the trajectory polynomial, determine whether the external axis acceleration difference of any discrete trajectory point meets the acceleration requirements.
[0093] Specifically, firstly, the acceleration polynomial can be obtained by taking the second derivative of the trajectory polynomial. Therefore, the acceleration polynomial can be expressed by the following formula:
[0094]
[0095] Then, based on the acceleration polynomial, it can be determined whether the external axis acceleration difference at any discrete trajectory point meets the acceleration requirements. That is, the end-point travel time of any discrete trajectory point can be determined. Substituting into the above acceleration polynomial In this process, the external axis acceleration of any discrete trajectory point is obtained, thereby determining whether the difference in external axis acceleration of any discrete trajectory point meets the acceleration requirement, for example, whether the difference in external axis acceleration of any discrete trajectory point is less than 400m. 2 / s.
[0096] Step 206: If the external axis acceleration difference of any discrete trajectory point is determined to meet the acceleration requirement, then the inverse motion solution of the robot is calculated.
[0097] Specifically, if it is determined that the external axis acceleration difference of any discrete trajectory point meets the acceleration requirement, the improved (Denavit-Hartenberg, DH) modeling method is used to determine the DH parameters of the redundant degree-of-freedom structure. Then, based on the DH parameters, the transformation matrix of each link can be determined. Next, based on the transformation matrix of each link, the inverse kinematics of the robot can be calculated to obtain the calculation results. Then, based on the calculation results, it is determined whether the robot has an inverse kinematics solution. Finally, if it is determined that the robot has an inverse kinematics solution, the inverse kinematics solution is output.
[0098] Conversely, if it is determined that the robot does not have an inverse motion solution, the fixed deviation distance is modified to obtain the modified fixed deviation distance; then, the position value of any discrete trajectory point can be modified according to the modified fixed deviation distance; next, steps 202-206 are repeated.
[0099] Step 207: If the external axis acceleration difference of any discrete trajectory point is determined to meet the acceleration requirement, then the fixed deviation distance is modified.
[0100] Specifically, if it is determined that the external axis acceleration difference of any discrete trajectory point does not meet the acceleration requirements, the fixed deviation distance is modified to obtain the modified fixed deviation distance; then, the position value of any discrete trajectory point can be modified according to the modified fixed deviation distance; next, steps 202-206 are repeated.
[0101] In summary, this application has the following advantages:
[0102] (1) Since the external axis acceleration difference is used to perform smoothing, compared with traditional smoothing algorithms such as polynomial interpolation and B-spline fitting, this application can not only extend the mechanical life of the external axis and the robot body by avoiding mechanical wear, motor overload or even structural damage caused by excessive acceleration, but also improve the response speed of the external axis and ensure smooth movement of the external axis by directly smoothing the acceleration.
[0103] (2) Since “external axis acceleration smoothing” is taken as a prerequisite, the inverse solution calculation of redundant degrees of freedom is only performed when the external axis acceleration difference meets the acceleration requirements. Therefore, this application avoids the coordination deviation caused by the traditional method of “first solving the trajectory and then processing the axis motion”, and greatly improves the trajectory tracking accuracy of the robot end in complex curved surface operations.
[0104] (3) Since the fifth-order polynomial is used to plan the trajectory curve of the external axis, compared with the traditional cubic polynomial or linear interpolation, this application can ensure the continuity of position, velocity, acceleration and even jerk (jump) without sudden changes, so as to fully match the motion requirements of the external axis for "gradual acceleration and deceleration, low impact", and further solve the problem of response lag and trajectory tracking deviation caused by sudden acceleration of the external axis.
[0105] (4) Since the motion change rate of the external axis at each discrete trajectory point is accurately quantified by the hierarchical calculation of “position value → velocity difference → acceleration difference”, rather than focusing only on the overall smoothness of the end trajectory in the traditional method, this application can adapt to the characteristics of the external axis of “large load, large inertia and slow response” through this refined analysis, identify acceleration change points in advance, avoid motion impact and vibration problems caused by frequent acceleration and deceleration of the external axis from the root, and thus ensure the smooth operation of the external axis.
[0106] (5) Since acceleration compliance is checked for each discrete trajectory point, if the acceleration requirement is not met, the position value of the discrete trajectory point is modified in real time to form a closed-loop control of "planning-checking-correction". Therefore, this application can avoid the problem of external axis over-acceleration caused by the traditional trajectory planning of "generating trajectory at one time without dynamic check". Thus, it can ensure that the external axis motion does not exceed the mechanical performance limit (e.g., motor torque, guide rail load, etc.) and adapt to the high-precision trajectory requirements of complex curved surface operations.
[0107] Based on the same inventive concept, embodiments of this application provide an external shaft acceleration smoothing device 50, such as... Figure 5 As shown, the external shaft acceleration smoothing device 50 includes:
[0108] The curve discretization unit 501 is used to discretize the trajectory curve of the external axis to obtain multiple discrete trajectory points.
[0109] The position value determination unit 502 is used to determine the position value of any discrete trajectory point by using a fixed deviation distance.
[0110] The differential determination unit 503 is used to determine the acceleration difference of any discrete trajectory point based on the position value of any discrete trajectory point.
[0111] Polynomial acquisition unit 504 is used to plan the trajectory curve using a fifth-order polynomial and smooth constraints to obtain the trajectory polynomial;
[0112] The acceleration verification unit 505 is used to determine, based on the trajectory polynomial, whether the external axis acceleration difference of any discrete trajectory point meets the acceleration requirements.
[0113] The inverse kinematics calculation unit 506 is used to calculate the inverse kinematics of the robot if the difference in external axis acceleration of any discrete trajectory point meets the acceleration requirements.
[0114] Optionally, the position value determination unit 502 is also used for:
[0115] The position value of any discrete trajectory point is obtained by subtracting its X-axis coordinate value from the fixed deviation distance.
[0116] Optionally, the difference determination unit 503 is also used for:
[0117] Determine the velocity difference corresponding to any discrete trajectory point based on the position value of any discrete trajectory point;
[0118] Determine the acceleration difference of any discrete trajectory point based on the velocity difference of any discrete trajectory point.
[0119] Optionally, the acceleration verification unit 505 is also used for:
[0120] By taking the second derivative of the trajectory polynomial, the acceleration polynomial is obtained.
[0121] Based on the acceleration polynomial, determine whether the external axis acceleration difference of any discrete trajectory point meets the acceleration requirements.
[0122] Optionally, the inverse calculation unit 506 is also used for:
[0123] If the external axis acceleration difference of any discrete trajectory point is determined to meet the acceleration requirement, then the improved DH modeling method is used to determine the DH parameters of the redundant degree-of-freedom structure.
[0124] Determine the transformation matrix for each link based on the DH parameters;
[0125] Based on the transformation matrices of each link, the inverse motion solution of the robot is calculated, and the calculation results are obtained.
[0126] Based on the calculation results, determine whether the robot has an inverse kinematic solution;
[0127] If it is determined that the robot has an inverse motion solution, then output the inverse motion solution.
[0128] Optionally, the inverse calculation unit 506 is also used for:
[0129] If it is determined that the robot does not have an inverse kinematic solution, the fixed deviation distance is modified to obtain the modified fixed deviation distance;
[0130] The position value of any discrete trajectory point is modified based on the modified fixed deviation distance.
[0131] Optionally, the inverse calculation unit 506 is also used for:
[0132] If it is determined that the external axis acceleration difference of any discrete trajectory point does not meet the acceleration requirements, the fixed deviation distance is modified to obtain the modified fixed deviation distance;
[0133] The position value of any discrete trajectory point is modified based on the modified fixed deviation distance.
[0134] The external shaft acceleration smoothing device 50 can be used to perform... Figure 2 The method performed by the external shaft acceleration smoothing device in the illustrated embodiment is described above. Therefore, the functions that each functional module of the external shaft acceleration smoothing device 50 can achieve can be found by referring to [the relevant documentation / reference]. Figure 2 The embodiments shown are described in detail below.
[0135] In some possible implementations, any aspect of the method provided in this application can also be implemented as a program product comprising program code that, when run on a computer device, causes the computer device to perform the steps of the methods according to the various exemplary embodiments of this application described above. For example, the computer device may perform actions such as... Figure 2 The method performed by the external shaft acceleration smoothing device in the illustrated embodiment.
[0136] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks. Alternatively, if the integrated units of this application are implemented as software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiments of this application, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the method described in any embodiment of this application. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks.
[0137] Although preferred embodiments of this application have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments as well as all changes and modifications falling within the scope of this application.
[0138] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the spirit and scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.
Claims
1. An external shaft acceleration smoothing method, characterized in that, The method includes: Discretize the trajectory curve of the external axis to obtain multiple discrete trajectory points; For any discrete trajectory point, a fixed deviation distance is used to determine the position value of the discrete trajectory point; Based on the position value of any discrete trajectory point, determine the acceleration difference of any discrete trajectory point; wherein, the step of determining the acceleration difference of any discrete trajectory point based on the position value of any discrete trajectory point includes: determining the velocity difference corresponding to any discrete trajectory point based on the position value of any discrete trajectory point; determining the acceleration difference of any discrete trajectory point based on the velocity difference of any discrete trajectory point; the velocity difference between the first and last discrete trajectory points is determined using velocity difference. Represent the remaining discrete trajectory points. The velocity difference uses the average velocity difference. The acceleration difference between the first and last discrete trajectory points is represented using acceleration difference. Represent the remaining discrete trajectory points. The velocity difference uses the mean acceleration difference. To represent; The trajectory curve is planned using a fifth-order polynomial and smoothing constraints to obtain the trajectory polynomial; Based on the trajectory polynomial, determine whether the external axis acceleration difference of any discrete trajectory point meets the acceleration requirement; wherein, the step of determining whether the external axis acceleration difference of any discrete trajectory point meets the acceleration requirement based on the trajectory polynomial includes: taking the second derivative of the trajectory polynomial to obtain the acceleration polynomial; and determining whether the external axis acceleration difference of any discrete trajectory point meets the acceleration requirement based on the acceleration polynomial. If the external axis acceleration difference of any discrete trajectory point is determined to meet the acceleration requirement, then the inverse kinematics of the robot is calculated. The step of calculating the inverse kinematics of the robot if the external axis acceleration difference of any discrete trajectory point meets the acceleration requirement includes: if the external axis acceleration difference of any discrete trajectory point meets the acceleration requirement, then using an improved DH modeling method to determine the DH parameters of the redundant degree-of-freedom structure; determining the transformation matrix of each link based on the DH parameters; calculating the inverse kinematics of the robot based on the transformation matrix of each link, and obtaining the calculation result; determining whether the robot has an inverse kinematics based on the calculation result; if the robot has an inverse kinematics, then outputting the inverse kinematics; if the robot does not have an inverse kinematics, then modifying the fixed deviation distance to obtain the modified fixed deviation distance; and modifying the position value of the discrete trajectory point based on the modified fixed deviation distance.
2. The method as described in claim 1, characterized in that, The step of determining the position value of any discrete trajectory point using a fixed deviation distance includes: The position value of any discrete trajectory point is obtained by subtracting its X-axis coordinate value from the fixed deviation distance.
3. The method as described in claim 1, characterized in that, After determining whether the external axis acceleration difference at any discrete trajectory point meets the acceleration requirement, the method further includes: If it is determined that the external axis acceleration difference of any discrete trajectory point does not meet the acceleration requirements, the fixed deviation distance is modified to obtain the modified fixed deviation distance; The position value of any discrete trajectory point is modified based on the modified fixed deviation distance.
4. An external shaft acceleration smoothing device, characterized in that, The device includes: Curve discretization unit is used to discretize the trajectory curve of the external axis to obtain multiple discrete trajectory points; The position value determination unit is used to determine the position value of any discrete trajectory point using a fixed deviation distance. The differential determination unit is used to determine the acceleration difference of any discrete trajectory point based on the position value of any discrete trajectory point; wherein, the step of determining the acceleration difference of any discrete trajectory point based on the position value of any discrete trajectory point includes: determining the velocity difference corresponding to any discrete trajectory point based on the position value of any discrete trajectory point; determining the acceleration difference of any discrete trajectory point based on the velocity difference of any discrete trajectory point; the velocity difference between the first and last discrete trajectory points is determined by velocity differential. Represent the remaining discrete trajectory points. The velocity difference uses the average velocity difference. The acceleration difference between the first and last discrete trajectory points is represented using acceleration difference. Represent the remaining discrete trajectory points. The velocity difference uses the mean acceleration difference. To represent; The polynomial acquisition unit is used to plan the trajectory curve using a fifth-order polynomial and smoothing constraints to obtain the trajectory polynomial. An acceleration verification unit is used to determine, based on the trajectory polynomial, whether the external axis acceleration difference of any discrete trajectory point meets the acceleration requirements; wherein, the step of determining whether the external axis acceleration difference of any discrete trajectory point meets the acceleration requirements based on the trajectory polynomial includes: taking the second derivative of the trajectory polynomial to obtain an acceleration polynomial; and determining whether the external axis acceleration difference of any discrete trajectory point meets the acceleration requirements based on the acceleration polynomial. The inverse kinematics calculation unit is used to calculate the inverse kinematics of the robot if the external axis acceleration difference of any discrete trajectory point satisfies the acceleration requirement. The step of calculating the inverse kinematics of the robot if the external axis acceleration difference of any discrete trajectory point satisfies the acceleration requirement includes: if the external axis acceleration difference of any discrete trajectory point satisfies the acceleration requirement, using an improved DH modeling method to determine the DH parameters of the redundant degree-of-freedom structure; determining the transformation matrix of each link based on the DH parameters; calculating the inverse kinematics of the robot based on the transformation matrix of each link to obtain the calculation result; determining whether the robot has an inverse kinematics based on the calculation result; if the robot has an inverse kinematics, outputting the inverse kinematics; if the robot does not have an inverse kinematics, modifying the fixed deviation distance to obtain the modified fixed deviation distance; and modifying the position value of the discrete trajectory point based on the modified fixed deviation distance.
5. An electronic device, characterized in that, The device includes: Memory, used to store program instructions; A processor is configured to invoke program instructions stored in the memory and execute the method described in any one of claims 1-3 according to the obtained program instructions.
6. A storage medium, characterized in that, The storage medium stores computer-executable instructions for causing a computer to perform the method described in any one of claims 1-3.